@dnb/eufemia 10.14.0 → 10.15.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 (846) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/cjs/components/accordion/AccordionHeader.d.ts +2 -1
  3. package/cjs/components/accordion/AccordionHeader.js +3 -2
  4. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  5. package/cjs/components/accordion/style/dnb-accordion.css +13 -5
  6. package/cjs/components/accordion/style/dnb-accordion.min.css +3 -1
  7. package/cjs/components/accordion/style/dnb-accordion.scss +16 -5
  8. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -32
  9. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  10. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
  11. package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.css +149 -101
  12. package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
  13. package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
  14. package/cjs/components/anchor/Anchor.d.ts +1 -0
  15. package/cjs/components/anchor/Anchor.js +7 -5
  16. package/cjs/components/anchor/Anchor.js.map +1 -1
  17. package/cjs/components/autocomplete/Autocomplete.d.ts +4 -0
  18. package/cjs/components/autocomplete/Autocomplete.js +98 -80
  19. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  20. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +4 -4
  21. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  22. package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
  23. package/cjs/components/button/Button.d.ts +1 -1
  24. package/cjs/components/button/Button.js +9 -5
  25. package/cjs/components/button/Button.js.map +1 -1
  26. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
  27. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  28. package/cjs/components/card/style/dnb-card.css +10 -0
  29. package/cjs/components/card/style/dnb-card.min.css +1 -1
  30. package/cjs/components/card/style/dnb-card.scss +8 -0
  31. package/cjs/components/checkbox/Checkbox.js +9 -3
  32. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  33. package/cjs/components/checkbox/style/dnb-checkbox.css +129 -0
  34. package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
  35. package/cjs/components/checkbox/style/dnb-checkbox.scss +199 -0
  36. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
  37. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
  38. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
  39. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
  40. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
  41. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
  42. package/cjs/components/date-picker/DatePicker.d.ts +1 -1
  43. package/cjs/components/date-picker/DatePicker.js +4 -1
  44. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  45. package/cjs/components/date-picker/DatePickerInput.d.ts +1 -1
  46. package/cjs/components/dropdown/Dropdown.js +2 -2
  47. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  48. package/cjs/components/flex/Container.js +2 -1
  49. package/cjs/components/flex/Container.js.map +1 -1
  50. package/cjs/components/flex/style/dnb-flex.css +1 -1
  51. package/cjs/components/flex/style/dnb-flex.min.css +1 -1
  52. package/cjs/components/flex/style/flex-container.scss +1 -1
  53. package/cjs/components/form-label/FormLabel.d.ts +8 -3
  54. package/cjs/components/form-label/FormLabel.js +14 -11
  55. package/cjs/components/form-label/FormLabel.js.map +1 -1
  56. package/cjs/components/form-label/style/dnb-form-label.css +0 -1
  57. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  58. package/cjs/components/form-label/style/dnb-form-label.scss +0 -5
  59. package/cjs/components/global-status/GlobalStatus.d.ts +1 -1
  60. package/cjs/components/global-status/GlobalStatus.js +3 -1
  61. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  62. package/cjs/components/global-status/style/dnb-global-status.css +0 -7
  63. package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
  64. package/cjs/components/global-status/style/dnb-global-status.scss +0 -11
  65. package/cjs/components/input/style/dnb-input.css +7 -3
  66. package/cjs/components/input/style/dnb-input.min.css +1 -1
  67. package/cjs/components/input/style/dnb-input.scss +14 -8
  68. package/cjs/components/input-masked/MultiInputMask.d.ts +6 -2
  69. package/cjs/components/input-masked/MultiInputMask.js +21 -17
  70. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  71. package/cjs/components/input-masked/style/dnb-input-masked.css +3 -3
  72. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  73. package/cjs/components/input-masked/style/dnb-input-masked.scss +1 -1
  74. package/cjs/components/number-format/NumberUtils.d.ts +1 -1
  75. package/cjs/components/radio/Radio.js +13 -7
  76. package/cjs/components/radio/Radio.js.map +1 -1
  77. package/cjs/components/radio/RadioGroup.js +3 -2
  78. package/cjs/components/radio/RadioGroup.js.map +1 -1
  79. package/cjs/components/radio/style/dnb-radio.css +33 -8
  80. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  81. package/cjs/components/radio/style/dnb-radio.scss +59 -9
  82. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.css +17 -8
  83. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -1
  84. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.scss +17 -8
  85. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.css +6 -1
  86. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  87. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +6 -1
  88. package/cjs/components/section/Section.d.ts +5 -0
  89. package/cjs/components/section/Section.js +3 -2
  90. package/cjs/components/section/Section.js.map +1 -1
  91. package/cjs/components/section/style/dnb-section.css +12 -0
  92. package/cjs/components/section/style/dnb-section.min.css +3 -3
  93. package/cjs/components/section/style/dnb-section.scss +10 -0
  94. package/cjs/components/switch/Switch.js +9 -3
  95. package/cjs/components/switch/Switch.js.map +1 -1
  96. package/cjs/components/switch/style/dnb-switch.css +43 -9
  97. package/cjs/components/switch/style/dnb-switch.min.css +1 -1
  98. package/cjs/components/switch/style/dnb-switch.scss +49 -22
  99. package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
  100. package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
  101. package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
  102. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
  103. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  104. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
  105. package/cjs/components/textarea/Textarea.js +4 -1
  106. package/cjs/components/textarea/Textarea.js.map +1 -1
  107. package/cjs/components/toggle-button/ToggleButtonGroup.js +3 -2
  108. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  109. package/cjs/components/toggle-button/style/dnb-toggle-button.css +3 -7
  110. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  111. package/cjs/components/toggle-button/style/dnb-toggle-button.scss +4 -14
  112. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
  113. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
  114. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
  115. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
  116. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
  117. package/cjs/elements/hr/style/dnb-hr.scss +16 -30
  118. package/cjs/elements/hr/style/hr-mixins.scss +5 -7
  119. package/cjs/extensions/forms/DataContext/Context.d.ts +1 -1
  120. package/cjs/extensions/forms/DataContext/Context.js +1 -1
  121. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  122. package/cjs/extensions/forms/DataContext/Provider/Provider.js +9 -5
  123. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  124. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -6
  125. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  126. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
  127. package/cjs/extensions/forms/Field/Currency/Currency.d.ts +3 -1
  128. package/cjs/extensions/forms/Field/Currency/Currency.js +7 -2
  129. package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
  130. package/cjs/extensions/forms/Field/Expiry/Expiry.js +6 -4
  131. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  132. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.css +2 -8
  133. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -1
  134. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.scss +5 -5
  135. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
  136. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  137. package/cjs/extensions/forms/Field/Number/Number.js +11 -12
  138. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  139. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
  140. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +134 -70
  141. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  142. package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
  143. package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
  144. package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
  145. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
  146. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
  147. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  148. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -15
  149. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  150. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -14
  151. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
  152. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +189 -17
  153. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  154. package/cjs/extensions/forms/Field/Selection/Selection.js +1 -0
  155. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  156. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
  157. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  158. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
  159. package/cjs/extensions/forms/Field/String/String.js +8 -9
  160. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  161. package/cjs/extensions/forms/Field/Toggle/Toggle.js +4 -2
  162. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  163. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  164. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +16 -19
  165. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  166. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  167. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  168. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
  169. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  170. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
  171. package/cjs/extensions/forms/constants/countries.d.ts +9 -6
  172. package/cjs/extensions/forms/constants/countries.js +15 -7
  173. package/cjs/extensions/forms/constants/countries.js.map +1 -1
  174. package/cjs/extensions/forms/hooks/useDataValue.d.ts +2 -0
  175. package/cjs/extensions/forms/hooks/useDataValue.js +31 -21
  176. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  177. package/cjs/extensions/forms/index.d.ts +1 -1
  178. package/cjs/extensions/forms/index.js +12 -0
  179. package/cjs/extensions/forms/index.js.map +1 -1
  180. package/cjs/extensions/forms/style/dnb-forms.css +101 -129
  181. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  182. package/cjs/extensions/forms/style/dnb-forms.scss +1 -6
  183. package/cjs/extensions/forms/types.d.ts +5 -4
  184. package/cjs/extensions/forms/types.js.map +1 -1
  185. package/cjs/extensions/payment-card/PaymentCard.d.ts +3 -2
  186. package/cjs/extensions/payment-card/PaymentCard.js +16 -37
  187. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  188. package/cjs/extensions/payment-card/icons/index.js +3 -1
  189. package/cjs/extensions/payment-card/icons/index.js.map +1 -1
  190. package/cjs/extensions/style/index.d.ts +5 -1
  191. package/cjs/extensions/style/index.js +2 -0
  192. package/cjs/extensions/style/index.js.map +1 -1
  193. package/cjs/icons/dnb/icons-meta.json +2 -2
  194. package/cjs/icons/icons-meta.json +2 -2
  195. package/cjs/shared/Eufemia.d.ts +1 -1
  196. package/cjs/shared/Eufemia.js +2 -2
  197. package/cjs/shared/Eufemia.js.map +1 -1
  198. package/cjs/shared/helpers/filterValidProps.d.ts +3 -7
  199. package/cjs/shared/helpers/filterValidProps.js +8 -4
  200. package/cjs/shared/helpers/filterValidProps.js.map +1 -1
  201. package/cjs/shared/helpers/withCamelCaseProps.d.ts +1 -0
  202. package/cjs/shared/helpers/withCamelCaseProps.js +6 -4
  203. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  204. package/cjs/shared/helpers/withSnakeCaseProps.js +5 -4
  205. package/cjs/shared/helpers/withSnakeCaseProps.js.map +1 -1
  206. package/cjs/shared/locales/en-GB.d.ts +1 -1
  207. package/cjs/shared/locales/en-GB.js +4 -4
  208. package/cjs/shared/locales/en-GB.js.map +1 -1
  209. package/cjs/shared/locales/en-US.d.ts +1 -1
  210. package/cjs/shared/locales/index.d.ts +2 -2
  211. package/cjs/shared/locales/nb-NO.d.ts +1 -1
  212. package/cjs/shared/locales/nb-NO.js +4 -4
  213. package/cjs/shared/locales/nb-NO.js.map +1 -1
  214. package/cjs/style/core/utilities.scss +1 -1
  215. package/cjs/style/dnb-ui-components.css +567 -113
  216. package/cjs/style/dnb-ui-components.min.css +6 -4
  217. package/cjs/style/dnb-ui-components.scss +2 -1
  218. package/cjs/style/dnb-ui-elements.css +19 -26
  219. package/cjs/style/dnb-ui-elements.min.css +1 -1
  220. package/cjs/style/dnb-ui-extensions.css +101 -129
  221. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  222. package/cjs/style/dnb-ui-forms.css +243 -0
  223. package/cjs/style/dnb-ui-forms.min.css +1 -0
  224. package/cjs/style/dnb-ui-forms.scss +19 -0
  225. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -26
  226. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  227. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +1033 -359
  228. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
  229. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  230. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +19 -26
  231. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  232. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +101 -129
  233. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  234. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +252 -0
  235. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
  236. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
  237. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +19 -26
  238. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  239. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +1211 -595
  240. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +16 -8
  241. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
  242. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +19 -26
  243. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  244. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +101 -129
  245. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  246. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +252 -0
  247. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
  248. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
  249. package/cjs/style/themes/theme-ui/ui-theme-basis.css +19 -26
  250. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  251. package/cjs/style/themes/theme-ui/ui-theme-components.css +1033 -359
  252. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +35 -7
  253. package/cjs/style/themes/theme-ui/ui-theme-components.scss +1 -0
  254. package/cjs/style/themes/theme-ui/ui-theme-elements.css +19 -26
  255. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  256. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +101 -129
  257. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  258. package/cjs/style/themes/theme-ui/ui-theme-forms.css +252 -0
  259. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
  260. package/cjs/style/themes/theme-ui/ui-theme-forms.scss +15 -0
  261. package/cjs/style/themes/theme-ui/ui-theme-tags.css +8 -7
  262. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  263. package/components/accordion/AccordionHeader.d.ts +2 -1
  264. package/components/accordion/AccordionHeader.js +3 -2
  265. package/components/accordion/AccordionHeader.js.map +1 -1
  266. package/components/accordion/style/dnb-accordion.css +13 -5
  267. package/components/accordion/style/dnb-accordion.min.css +3 -1
  268. package/components/accordion/style/dnb-accordion.scss +16 -5
  269. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -32
  270. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  271. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
  272. package/components/accordion/style/themes/dnb-accordion-theme-ui.css +149 -101
  273. package/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
  274. package/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
  275. package/components/anchor/Anchor.d.ts +1 -0
  276. package/components/anchor/Anchor.js +5 -4
  277. package/components/anchor/Anchor.js.map +1 -1
  278. package/components/autocomplete/Autocomplete.d.ts +4 -0
  279. package/components/autocomplete/Autocomplete.js +98 -80
  280. package/components/autocomplete/Autocomplete.js.map +1 -1
  281. package/components/breadcrumb/style/dnb-breadcrumb.css +4 -4
  282. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  283. package/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
  284. package/components/button/Button.d.ts +1 -1
  285. package/components/button/Button.js +10 -6
  286. package/components/button/Button.js.map +1 -1
  287. package/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
  288. package/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  289. package/components/card/style/dnb-card.css +10 -0
  290. package/components/card/style/dnb-card.min.css +1 -1
  291. package/components/card/style/dnb-card.scss +8 -0
  292. package/components/checkbox/Checkbox.js +9 -3
  293. package/components/checkbox/Checkbox.js.map +1 -1
  294. package/components/checkbox/style/dnb-checkbox.css +129 -0
  295. package/components/checkbox/style/dnb-checkbox.min.css +1 -1
  296. package/components/checkbox/style/dnb-checkbox.scss +199 -0
  297. package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
  298. package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
  299. package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
  300. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
  301. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
  302. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
  303. package/components/date-picker/DatePicker.d.ts +1 -1
  304. package/components/date-picker/DatePicker.js +4 -1
  305. package/components/date-picker/DatePicker.js.map +1 -1
  306. package/components/date-picker/DatePickerInput.d.ts +1 -1
  307. package/components/dropdown/Dropdown.js +2 -2
  308. package/components/dropdown/Dropdown.js.map +1 -1
  309. package/components/flex/Container.js +2 -1
  310. package/components/flex/Container.js.map +1 -1
  311. package/components/flex/style/dnb-flex.css +1 -1
  312. package/components/flex/style/dnb-flex.min.css +1 -1
  313. package/components/flex/style/flex-container.scss +1 -1
  314. package/components/form-label/FormLabel.d.ts +8 -3
  315. package/components/form-label/FormLabel.js +14 -11
  316. package/components/form-label/FormLabel.js.map +1 -1
  317. package/components/form-label/style/dnb-form-label.css +0 -1
  318. package/components/form-label/style/dnb-form-label.min.css +1 -1
  319. package/components/form-label/style/dnb-form-label.scss +0 -5
  320. package/components/global-status/GlobalStatus.d.ts +1 -1
  321. package/components/global-status/GlobalStatus.js +3 -1
  322. package/components/global-status/GlobalStatus.js.map +1 -1
  323. package/components/global-status/style/dnb-global-status.css +0 -7
  324. package/components/global-status/style/dnb-global-status.min.css +1 -1
  325. package/components/global-status/style/dnb-global-status.scss +0 -11
  326. package/components/input/style/dnb-input.css +7 -3
  327. package/components/input/style/dnb-input.min.css +1 -1
  328. package/components/input/style/dnb-input.scss +14 -8
  329. package/components/input-masked/MultiInputMask.d.ts +6 -2
  330. package/components/input-masked/MultiInputMask.js +22 -18
  331. package/components/input-masked/MultiInputMask.js.map +1 -1
  332. package/components/input-masked/style/dnb-input-masked.css +3 -3
  333. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  334. package/components/input-masked/style/dnb-input-masked.scss +1 -1
  335. package/components/number-format/NumberUtils.d.ts +1 -1
  336. package/components/radio/Radio.js +13 -7
  337. package/components/radio/Radio.js.map +1 -1
  338. package/components/radio/RadioGroup.js +3 -2
  339. package/components/radio/RadioGroup.js.map +1 -1
  340. package/components/radio/style/dnb-radio.css +33 -8
  341. package/components/radio/style/dnb-radio.min.css +1 -1
  342. package/components/radio/style/dnb-radio.scss +59 -9
  343. package/components/radio/style/themes/dnb-radio-theme-sbanken.css +17 -8
  344. package/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -1
  345. package/components/radio/style/themes/dnb-radio-theme-sbanken.scss +17 -8
  346. package/components/radio/style/themes/dnb-radio-theme-ui.css +6 -1
  347. package/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  348. package/components/radio/style/themes/dnb-radio-theme-ui.scss +6 -1
  349. package/components/section/Section.d.ts +5 -0
  350. package/components/section/Section.js +3 -2
  351. package/components/section/Section.js.map +1 -1
  352. package/components/section/style/dnb-section.css +12 -0
  353. package/components/section/style/dnb-section.min.css +3 -3
  354. package/components/section/style/dnb-section.scss +10 -0
  355. package/components/switch/Switch.js +9 -3
  356. package/components/switch/Switch.js.map +1 -1
  357. package/components/switch/style/dnb-switch.css +43 -9
  358. package/components/switch/style/dnb-switch.min.css +1 -1
  359. package/components/switch/style/dnb-switch.scss +49 -22
  360. package/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
  361. package/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
  362. package/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
  363. package/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
  364. package/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  365. package/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
  366. package/components/textarea/Textarea.js +4 -1
  367. package/components/textarea/Textarea.js.map +1 -1
  368. package/components/toggle-button/ToggleButtonGroup.js +3 -2
  369. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  370. package/components/toggle-button/style/dnb-toggle-button.css +3 -7
  371. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  372. package/components/toggle-button/style/dnb-toggle-button.scss +4 -14
  373. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
  374. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
  375. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
  376. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
  377. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
  378. package/elements/hr/style/dnb-hr.scss +16 -30
  379. package/elements/hr/style/hr-mixins.scss +5 -7
  380. package/es/components/accordion/AccordionHeader.d.ts +2 -1
  381. package/es/components/accordion/AccordionHeader.js +3 -2
  382. package/es/components/accordion/AccordionHeader.js.map +1 -1
  383. package/es/components/accordion/style/dnb-accordion.css +13 -5
  384. package/es/components/accordion/style/dnb-accordion.min.css +3 -1
  385. package/es/components/accordion/style/dnb-accordion.scss +16 -5
  386. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -32
  387. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  388. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
  389. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.css +149 -101
  390. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
  391. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
  392. package/es/components/anchor/Anchor.d.ts +1 -0
  393. package/es/components/anchor/Anchor.js +5 -4
  394. package/es/components/anchor/Anchor.js.map +1 -1
  395. package/es/components/autocomplete/Autocomplete.d.ts +4 -0
  396. package/es/components/autocomplete/Autocomplete.js +94 -75
  397. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  398. package/es/components/breadcrumb/style/dnb-breadcrumb.css +4 -4
  399. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  400. package/es/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
  401. package/es/components/button/Button.d.ts +1 -1
  402. package/es/components/button/Button.js +10 -6
  403. package/es/components/button/Button.js.map +1 -1
  404. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
  405. package/es/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  406. package/es/components/card/style/dnb-card.css +10 -0
  407. package/es/components/card/style/dnb-card.min.css +1 -1
  408. package/es/components/card/style/dnb-card.scss +8 -0
  409. package/es/components/checkbox/Checkbox.js +9 -3
  410. package/es/components/checkbox/Checkbox.js.map +1 -1
  411. package/es/components/checkbox/style/dnb-checkbox.css +129 -0
  412. package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
  413. package/es/components/checkbox/style/dnb-checkbox.scss +199 -0
  414. package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
  415. package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
  416. package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
  417. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
  418. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
  419. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
  420. package/es/components/date-picker/DatePicker.d.ts +1 -1
  421. package/es/components/date-picker/DatePicker.js +4 -1
  422. package/es/components/date-picker/DatePicker.js.map +1 -1
  423. package/es/components/date-picker/DatePickerInput.d.ts +1 -1
  424. package/es/components/dropdown/Dropdown.js +2 -2
  425. package/es/components/dropdown/Dropdown.js.map +1 -1
  426. package/es/components/flex/Container.js +2 -1
  427. package/es/components/flex/Container.js.map +1 -1
  428. package/es/components/flex/style/dnb-flex.css +1 -1
  429. package/es/components/flex/style/dnb-flex.min.css +1 -1
  430. package/es/components/flex/style/flex-container.scss +1 -1
  431. package/es/components/form-label/FormLabel.d.ts +8 -3
  432. package/es/components/form-label/FormLabel.js +14 -11
  433. package/es/components/form-label/FormLabel.js.map +1 -1
  434. package/es/components/form-label/style/dnb-form-label.css +0 -1
  435. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  436. package/es/components/form-label/style/dnb-form-label.scss +0 -5
  437. package/es/components/global-status/GlobalStatus.d.ts +1 -1
  438. package/es/components/global-status/GlobalStatus.js +3 -1
  439. package/es/components/global-status/GlobalStatus.js.map +1 -1
  440. package/es/components/global-status/style/dnb-global-status.css +0 -7
  441. package/es/components/global-status/style/dnb-global-status.min.css +1 -1
  442. package/es/components/global-status/style/dnb-global-status.scss +0 -11
  443. package/es/components/input/style/dnb-input.css +7 -3
  444. package/es/components/input/style/dnb-input.min.css +1 -1
  445. package/es/components/input/style/dnb-input.scss +14 -8
  446. package/es/components/input-masked/MultiInputMask.d.ts +6 -2
  447. package/es/components/input-masked/MultiInputMask.js +24 -19
  448. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  449. package/es/components/input-masked/style/dnb-input-masked.css +3 -3
  450. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  451. package/es/components/input-masked/style/dnb-input-masked.scss +1 -1
  452. package/es/components/number-format/NumberUtils.d.ts +1 -1
  453. package/es/components/radio/Radio.js +13 -7
  454. package/es/components/radio/Radio.js.map +1 -1
  455. package/es/components/radio/RadioGroup.js +3 -2
  456. package/es/components/radio/RadioGroup.js.map +1 -1
  457. package/es/components/radio/style/dnb-radio.css +33 -8
  458. package/es/components/radio/style/dnb-radio.min.css +1 -1
  459. package/es/components/radio/style/dnb-radio.scss +59 -9
  460. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.css +17 -8
  461. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -1
  462. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.scss +17 -8
  463. package/es/components/radio/style/themes/dnb-radio-theme-ui.css +6 -1
  464. package/es/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  465. package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +6 -1
  466. package/es/components/section/Section.d.ts +5 -0
  467. package/es/components/section/Section.js +3 -2
  468. package/es/components/section/Section.js.map +1 -1
  469. package/es/components/section/style/dnb-section.css +12 -0
  470. package/es/components/section/style/dnb-section.min.css +3 -3
  471. package/es/components/section/style/dnb-section.scss +10 -0
  472. package/es/components/switch/Switch.js +9 -3
  473. package/es/components/switch/Switch.js.map +1 -1
  474. package/es/components/switch/style/dnb-switch.css +43 -9
  475. package/es/components/switch/style/dnb-switch.min.css +1 -1
  476. package/es/components/switch/style/dnb-switch.scss +49 -22
  477. package/es/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
  478. package/es/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
  479. package/es/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
  480. package/es/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
  481. package/es/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  482. package/es/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
  483. package/es/components/textarea/Textarea.js +4 -1
  484. package/es/components/textarea/Textarea.js.map +1 -1
  485. package/es/components/toggle-button/ToggleButtonGroup.js +3 -2
  486. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  487. package/es/components/toggle-button/style/dnb-toggle-button.css +3 -7
  488. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  489. package/es/components/toggle-button/style/dnb-toggle-button.scss +4 -14
  490. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
  491. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
  492. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
  493. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
  494. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
  495. package/es/elements/hr/style/dnb-hr.scss +16 -30
  496. package/es/elements/hr/style/hr-mixins.scss +5 -7
  497. package/es/extensions/forms/DataContext/Context.d.ts +1 -1
  498. package/es/extensions/forms/DataContext/Context.js +1 -1
  499. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  500. package/es/extensions/forms/DataContext/Provider/Provider.js +9 -5
  501. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  502. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -6
  503. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  504. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
  505. package/es/extensions/forms/Field/Currency/Currency.d.ts +3 -1
  506. package/es/extensions/forms/Field/Currency/Currency.js +8 -2
  507. package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
  508. package/es/extensions/forms/Field/Expiry/Expiry.js +6 -4
  509. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  510. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.css +2 -8
  511. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -1
  512. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.scss +5 -5
  513. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
  514. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  515. package/es/extensions/forms/Field/Number/Number.js +11 -12
  516. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  517. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
  518. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +128 -61
  519. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  520. package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
  521. package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
  522. package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
  523. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
  524. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
  525. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  526. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -15
  527. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  528. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -14
  529. package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
  530. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +176 -18
  531. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  532. package/es/extensions/forms/Field/Selection/Selection.js +1 -0
  533. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  534. package/es/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
  535. package/es/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  536. package/es/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
  537. package/es/extensions/forms/Field/String/String.js +8 -9
  538. package/es/extensions/forms/Field/String/String.js.map +1 -1
  539. package/es/extensions/forms/Field/Toggle/Toggle.js +4 -2
  540. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  541. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  542. package/es/extensions/forms/FieldBlock/FieldBlock.js +16 -19
  543. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  544. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  545. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  546. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
  547. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  548. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
  549. package/es/extensions/forms/constants/countries.d.ts +9 -6
  550. package/es/extensions/forms/constants/countries.js +13 -6
  551. package/es/extensions/forms/constants/countries.js.map +1 -1
  552. package/es/extensions/forms/hooks/useDataValue.d.ts +2 -0
  553. package/es/extensions/forms/hooks/useDataValue.js +26 -20
  554. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  555. package/es/extensions/forms/index.d.ts +1 -1
  556. package/es/extensions/forms/index.js +1 -0
  557. package/es/extensions/forms/index.js.map +1 -1
  558. package/es/extensions/forms/style/dnb-forms.css +101 -129
  559. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  560. package/es/extensions/forms/style/dnb-forms.scss +1 -6
  561. package/es/extensions/forms/types.d.ts +5 -4
  562. package/es/extensions/forms/types.js.map +1 -1
  563. package/es/extensions/payment-card/PaymentCard.d.ts +3 -2
  564. package/es/extensions/payment-card/PaymentCard.js +16 -37
  565. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  566. package/es/extensions/payment-card/icons/index.js +4 -2
  567. package/es/extensions/payment-card/icons/index.js.map +1 -1
  568. package/es/extensions/style/index.d.ts +5 -1
  569. package/es/extensions/style/index.js +4 -1
  570. package/es/extensions/style/index.js.map +1 -1
  571. package/es/icons/dnb/icons-meta.json +2 -2
  572. package/es/icons/icons-meta.json +2 -2
  573. package/es/shared/Eufemia.d.ts +1 -1
  574. package/es/shared/Eufemia.js +2 -2
  575. package/es/shared/Eufemia.js.map +1 -1
  576. package/es/shared/helpers/filterValidProps.d.ts +3 -7
  577. package/es/shared/helpers/filterValidProps.js +9 -3
  578. package/es/shared/helpers/filterValidProps.js.map +1 -1
  579. package/es/shared/helpers/withCamelCaseProps.d.ts +1 -0
  580. package/es/shared/helpers/withCamelCaseProps.js +6 -5
  581. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  582. package/es/shared/helpers/withSnakeCaseProps.js +5 -4
  583. package/es/shared/helpers/withSnakeCaseProps.js.map +1 -1
  584. package/es/shared/locales/en-GB.d.ts +1 -1
  585. package/es/shared/locales/en-GB.js +4 -4
  586. package/es/shared/locales/en-GB.js.map +1 -1
  587. package/es/shared/locales/en-US.d.ts +1 -1
  588. package/es/shared/locales/index.d.ts +2 -2
  589. package/es/shared/locales/nb-NO.d.ts +1 -1
  590. package/es/shared/locales/nb-NO.js +4 -4
  591. package/es/shared/locales/nb-NO.js.map +1 -1
  592. package/es/style/core/utilities.scss +1 -1
  593. package/es/style/dnb-ui-components.css +567 -113
  594. package/es/style/dnb-ui-components.min.css +6 -4
  595. package/es/style/dnb-ui-components.scss +2 -1
  596. package/es/style/dnb-ui-elements.css +19 -26
  597. package/es/style/dnb-ui-elements.min.css +1 -1
  598. package/es/style/dnb-ui-extensions.css +101 -129
  599. package/es/style/dnb-ui-extensions.min.css +1 -1
  600. package/es/style/dnb-ui-forms.css +243 -0
  601. package/es/style/dnb-ui-forms.min.css +1 -0
  602. package/es/style/dnb-ui-forms.scss +19 -0
  603. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -26
  604. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  605. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +1033 -359
  606. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
  607. package/es/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  608. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +19 -26
  609. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  610. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +101 -129
  611. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  612. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +252 -0
  613. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
  614. package/es/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
  615. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +19 -26
  616. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  617. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +1211 -595
  618. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +16 -8
  619. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
  620. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +19 -26
  621. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  622. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +101 -129
  623. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  624. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +252 -0
  625. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
  626. package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
  627. package/es/style/themes/theme-ui/ui-theme-basis.css +19 -26
  628. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  629. package/es/style/themes/theme-ui/ui-theme-components.css +1033 -359
  630. package/es/style/themes/theme-ui/ui-theme-components.min.css +35 -7
  631. package/es/style/themes/theme-ui/ui-theme-components.scss +1 -0
  632. package/es/style/themes/theme-ui/ui-theme-elements.css +19 -26
  633. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  634. package/es/style/themes/theme-ui/ui-theme-extensions.css +101 -129
  635. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  636. package/es/style/themes/theme-ui/ui-theme-forms.css +252 -0
  637. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
  638. package/es/style/themes/theme-ui/ui-theme-forms.scss +15 -0
  639. package/es/style/themes/theme-ui/ui-theme-tags.css +8 -7
  640. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  641. package/esm/dnb-ui-basis.min.mjs +1 -1
  642. package/esm/dnb-ui-components.min.mjs +1 -1
  643. package/esm/dnb-ui-elements.min.mjs +1 -1
  644. package/esm/dnb-ui-extensions.min.mjs +3 -3
  645. package/esm/dnb-ui-lib.min.mjs +1 -1
  646. package/extensions/forms/DataContext/Context.d.ts +1 -1
  647. package/extensions/forms/DataContext/Context.js +1 -1
  648. package/extensions/forms/DataContext/Context.js.map +1 -1
  649. package/extensions/forms/DataContext/Provider/Provider.js +9 -5
  650. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  651. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -6
  652. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  653. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
  654. package/extensions/forms/Field/Currency/Currency.d.ts +3 -1
  655. package/extensions/forms/Field/Currency/Currency.js +8 -2
  656. package/extensions/forms/Field/Currency/Currency.js.map +1 -1
  657. package/extensions/forms/Field/Expiry/Expiry.js +6 -4
  658. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  659. package/extensions/forms/Field/Expiry/style/dnb-expiry.css +2 -8
  660. package/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -1
  661. package/extensions/forms/Field/Expiry/style/dnb-expiry.scss +5 -5
  662. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
  663. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  664. package/extensions/forms/Field/Number/Number.js +11 -12
  665. package/extensions/forms/Field/Number/Number.js.map +1 -1
  666. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
  667. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +135 -71
  668. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  669. package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
  670. package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
  671. package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
  672. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
  673. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
  674. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  675. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -15
  676. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  677. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -14
  678. package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
  679. package/extensions/forms/Field/SelectCountry/SelectCountry.js +188 -18
  680. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  681. package/extensions/forms/Field/Selection/Selection.js +1 -0
  682. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  683. package/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
  684. package/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  685. package/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
  686. package/extensions/forms/Field/String/String.js +8 -9
  687. package/extensions/forms/Field/String/String.js.map +1 -1
  688. package/extensions/forms/Field/Toggle/Toggle.js +4 -2
  689. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  690. package/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  691. package/extensions/forms/FieldBlock/FieldBlock.js +17 -20
  692. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  693. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  694. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  695. package/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
  696. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  697. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
  698. package/extensions/forms/constants/countries.d.ts +9 -6
  699. package/extensions/forms/constants/countries.js +13 -6
  700. package/extensions/forms/constants/countries.js.map +1 -1
  701. package/extensions/forms/hooks/useDataValue.d.ts +2 -0
  702. package/extensions/forms/hooks/useDataValue.js +31 -21
  703. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  704. package/extensions/forms/index.d.ts +1 -1
  705. package/extensions/forms/index.js +1 -0
  706. package/extensions/forms/index.js.map +1 -1
  707. package/extensions/forms/style/dnb-forms.css +101 -129
  708. package/extensions/forms/style/dnb-forms.min.css +1 -1
  709. package/extensions/forms/style/dnb-forms.scss +1 -6
  710. package/extensions/forms/types.d.ts +5 -4
  711. package/extensions/forms/types.js.map +1 -1
  712. package/extensions/payment-card/PaymentCard.d.ts +3 -2
  713. package/extensions/payment-card/PaymentCard.js +16 -37
  714. package/extensions/payment-card/PaymentCard.js.map +1 -1
  715. package/extensions/payment-card/icons/index.js +4 -2
  716. package/extensions/payment-card/icons/index.js.map +1 -1
  717. package/extensions/style/index.d.ts +5 -1
  718. package/extensions/style/index.js +4 -1
  719. package/extensions/style/index.js.map +1 -1
  720. package/icons/dnb/icons-meta.json +2 -2
  721. package/icons/icons-meta.json +2 -2
  722. package/package.json +1 -1
  723. package/shared/Eufemia.d.ts +1 -1
  724. package/shared/Eufemia.js +2 -2
  725. package/shared/Eufemia.js.map +1 -1
  726. package/shared/helpers/filterValidProps.d.ts +3 -7
  727. package/shared/helpers/filterValidProps.js +9 -3
  728. package/shared/helpers/filterValidProps.js.map +1 -1
  729. package/shared/helpers/withCamelCaseProps.d.ts +1 -0
  730. package/shared/helpers/withCamelCaseProps.js +6 -5
  731. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  732. package/shared/helpers/withSnakeCaseProps.js +5 -4
  733. package/shared/helpers/withSnakeCaseProps.js.map +1 -1
  734. package/shared/locales/en-GB.d.ts +1 -1
  735. package/shared/locales/en-GB.js +4 -4
  736. package/shared/locales/en-GB.js.map +1 -1
  737. package/shared/locales/en-US.d.ts +1 -1
  738. package/shared/locales/index.d.ts +2 -2
  739. package/shared/locales/nb-NO.d.ts +1 -1
  740. package/shared/locales/nb-NO.js +4 -4
  741. package/shared/locales/nb-NO.js.map +1 -1
  742. package/style/core/utilities.scss +1 -1
  743. package/style/dnb-ui-components.css +567 -113
  744. package/style/dnb-ui-components.min.css +6 -4
  745. package/style/dnb-ui-components.scss +2 -1
  746. package/style/dnb-ui-elements.css +19 -26
  747. package/style/dnb-ui-elements.min.css +1 -1
  748. package/style/dnb-ui-extensions.css +101 -129
  749. package/style/dnb-ui-extensions.min.css +1 -1
  750. package/style/dnb-ui-forms.css +243 -0
  751. package/style/dnb-ui-forms.min.css +1 -0
  752. package/style/dnb-ui-forms.scss +19 -0
  753. package/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -26
  754. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  755. package/style/themes/theme-eiendom/eiendom-theme-components.css +1033 -359
  756. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
  757. package/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  758. package/style/themes/theme-eiendom/eiendom-theme-elements.css +19 -26
  759. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  760. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +101 -129
  761. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  762. package/style/themes/theme-eiendom/eiendom-theme-forms.css +252 -0
  763. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
  764. package/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
  765. package/style/themes/theme-sbanken/sbanken-theme-basis.css +19 -26
  766. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  767. package/style/themes/theme-sbanken/sbanken-theme-components.css +1211 -595
  768. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +16 -8
  769. package/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
  770. package/style/themes/theme-sbanken/sbanken-theme-elements.css +19 -26
  771. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  772. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +101 -129
  773. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  774. package/style/themes/theme-sbanken/sbanken-theme-forms.css +252 -0
  775. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
  776. package/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
  777. package/style/themes/theme-ui/ui-theme-basis.css +19 -26
  778. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  779. package/style/themes/theme-ui/ui-theme-components.css +1033 -359
  780. package/style/themes/theme-ui/ui-theme-components.min.css +35 -7
  781. package/style/themes/theme-ui/ui-theme-components.scss +1 -0
  782. package/style/themes/theme-ui/ui-theme-elements.css +19 -26
  783. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  784. package/style/themes/theme-ui/ui-theme-extensions.css +101 -129
  785. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  786. package/style/themes/theme-ui/ui-theme-forms.css +252 -0
  787. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
  788. package/style/themes/theme-ui/ui-theme-forms.scss +15 -0
  789. package/style/themes/theme-ui/ui-theme-tags.css +8 -7
  790. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  791. package/umd/dnb-ui-basis.min.js +1 -1
  792. package/umd/dnb-ui-components.min.js +1 -1
  793. package/umd/dnb-ui-elements.min.js +1 -1
  794. package/umd/dnb-ui-extensions.min.js +3 -3
  795. package/umd/dnb-ui-lib.min.js +1 -1
  796. package/cjs/components/button/style/dnb-button--tertiary.css +0 -216
  797. package/cjs/components/button/style/dnb-button--tertiary.min.css +0 -5
  798. package/cjs/extensions/forms/Field/style/dnb-forms-field.css +0 -93
  799. package/cjs/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
  800. package/cjs/extensions/forms/Field/style/dnb-forms-field.scss +0 -5
  801. package/cjs/extensions/forms/Form/style/dnb-forms-form.css +0 -33
  802. package/cjs/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
  803. package/cjs/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
  804. package/cjs/extensions/forms/Form/style/index.d.ts +0 -5
  805. package/cjs/extensions/forms/Form/style/index.js +0 -4
  806. package/cjs/extensions/forms/Form/style/index.js.map +0 -1
  807. package/cjs/extensions/forms/StepsLayout/style/index.scss +0 -1
  808. package/cjs/extensions/forms/ValueBlock/style/index.scss +0 -1
  809. package/cjs/extensions/forms/style/index.d.ts +0 -1
  810. package/cjs/extensions/forms/style/index.js +0 -4
  811. package/cjs/extensions/forms/style/index.js.map +0 -1
  812. package/components/button/style/dnb-button--tertiary.css +0 -216
  813. package/components/button/style/dnb-button--tertiary.min.css +0 -5
  814. package/es/components/button/style/dnb-button--tertiary.css +0 -216
  815. package/es/components/button/style/dnb-button--tertiary.min.css +0 -5
  816. package/es/extensions/forms/Field/style/dnb-forms-field.css +0 -93
  817. package/es/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
  818. package/es/extensions/forms/Field/style/dnb-forms-field.scss +0 -5
  819. package/es/extensions/forms/Form/style/dnb-forms-form.css +0 -33
  820. package/es/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
  821. package/es/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
  822. package/es/extensions/forms/Form/style/index.d.ts +0 -5
  823. package/es/extensions/forms/Form/style/index.js +0 -1
  824. package/es/extensions/forms/Form/style/index.js.map +0 -1
  825. package/es/extensions/forms/StepsLayout/style/index.scss +0 -1
  826. package/es/extensions/forms/ValueBlock/style/index.scss +0 -1
  827. package/es/extensions/forms/style/index.d.ts +0 -1
  828. package/es/extensions/forms/style/index.js +0 -1
  829. package/es/extensions/forms/style/index.js.map +0 -1
  830. package/extensions/forms/Field/style/dnb-forms-field.css +0 -93
  831. package/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
  832. package/extensions/forms/Field/style/dnb-forms-field.scss +0 -5
  833. package/extensions/forms/Form/style/dnb-forms-form.css +0 -33
  834. package/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
  835. package/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
  836. package/extensions/forms/Form/style/index.d.ts +0 -5
  837. package/extensions/forms/Form/style/index.js +0 -1
  838. package/extensions/forms/Form/style/index.js.map +0 -1
  839. package/extensions/forms/StepsLayout/style/index.scss +0 -1
  840. package/extensions/forms/ValueBlock/style/index.scss +0 -1
  841. package/extensions/forms/style/index.d.ts +0 -1
  842. package/extensions/forms/style/index.js +0 -1
  843. package/extensions/forms/style/index.js.map +0 -1
  844. /package/cjs/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
  845. /package/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
  846. /package/es/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","names":["React","PropTypes","classnames","keycode","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","getStatusState","combineDescribedBy","combineLabelledBy","dispatchCustomElementEvent","AlignmentHelper","spacingPropTypes","createSpacingClasses","pickFormElementProps","Suffix","Icon","FormLabel","FormStatus","Button","buttonVariantPropType","DrawerList","DrawerListContext","DrawerListProvider","drawerListPropTypes","drawerListProviderPropTypes","parseContentTitle","getCurrentData","Dropdown","PureComponent","render","id","props","more_menu","action_menu","prevent_selection","children","data","createElement","_extends","opened","tagName","ignore_events","DropdownInstance","_defineProperty","title","variant","icon","icon_size","icon_position","triangle_position","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","innerRef","buttonRef","suffix","scrollable","focusable","max_height","direction","skip_portal","portal_class","no_animation","no_scroll_animation","independent_width","size","align_dropdown","trigger_element","default_value","value","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","class","className","on_show","on_hide","on_change","on_select","on_state_update","process","env","NODE_ENV","propTypes","_objectSpread","string","oneOfType","node","func","oneOf","bool","object","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","content","array","constructor","_this","this","context","drawerList","setWrapperElement","_refWrapper","current","setVisible","setHidden","arguments","hidden","isOpen","e","preventDefault","args","length","undefined","attributes","res","setFocus","clearTimeout","_focusTimeout","setTimeout","element","_refButton","focus","preventHideFocus","preventScroll","parseFloat","active_item","_id","state","_ref","createRef","componentDidMount","componentWillUnmount","getTitle","currentOptionData","selected_item","_this$context","_this$context2","_this$context3","defaultProps","getTranslation","FormRow","formElement","fixed_position","enable_body_lock","CustomTrigger","_className","_title","_icon","_align_dropdown","_icon_position","_data","_children","_direction","_opened","_value","_objectWithoutProperties","_excluded","handleAsMenu","isPopupMenu","showStatus","Object","assign","mainParams","triggerParams","onFocus","onFocusHandler","onBlur","onBlurHandler","onClick","onClickHandler","onKeyDown","onTriggerKeyDownHandler","ref","for_id","text","sr_only","_AlignmentHelper","show","text_id","custom_content","Fragment","role","list_class","is_popup","align_drawer","onChangeHandler","onSelectHandler","onHideHandler","HorizontalItem","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/dropdown/Dropdown.js"],"sourcesContent":["/**\n * Web Dropdown Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nimport Suffix from '../../shared/helpers/Suffix'\nimport Icon from '../icon-primary/IconPrimary'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport Button, { buttonVariantPropType } from '../button/Button'\nimport DrawerList from '../../fragments/drawer-list/DrawerList'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n drawerListProviderPropTypes,\n parseContentTitle,\n getCurrentData,\n} from '../../fragments/drawer-list/DrawerListHelpers'\n\nexport default class Dropdown extends React.PureComponent {\n static propTypes = {\n ...spacingPropTypes,\n ...drawerListPropTypes,\n ...drawerListProviderPropTypes,\n\n id: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n variant: buttonVariantPropType.variant,\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.string,\n icon_position: PropTypes.oneOf(['left', 'right']),\n triangle_position: PropTypes.oneOf(['left', 'right']),\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 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 innerRef: PropTypes.object,\n buttonRef: PropTypes.object,\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 scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n max_height: PropTypes.number,\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n more_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n action_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n independent_width: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n align_dropdown: PropTypes.oneOf(['left', 'right']),\n trigger_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n default_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n open_on_focus: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_close: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_open: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n opened: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n class: PropTypes.string,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_hide: PropTypes.func,\n on_change: PropTypes.func,\n on_select: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n title: 'Option Menu',\n variant: 'secondary',\n icon: null,\n icon_size: null,\n icon_position: null,\n triangle_position: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n innerRef: null,\n buttonRef: null,\n suffix: null,\n scrollable: true,\n focusable: false,\n max_height: null,\n direction: 'auto',\n skip_portal: null,\n portal_class: null,\n no_animation: false,\n no_scroll_animation: false,\n prevent_selection: false,\n more_menu: false,\n action_menu: false,\n independent_width: false,\n size: 'default',\n align_dropdown: null,\n trigger_element: null,\n data: null,\n default_value: null,\n value: 'initval',\n open_on_focus: false,\n prevent_close: false,\n keep_open: false,\n opened: false,\n disabled: null,\n stretch: null,\n skeleton: null,\n class: null,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n\n on_change: null,\n on_select: null,\n on_state_update: null,\n }\n\n render() {\n // generate ID here, so we can send it along the provider\n const id = this.props.id || makeUniqueId()\n const { more_menu, action_menu, prevent_selection, children, data } =\n this.props\n\n return (\n <DrawerListProvider\n {...this.props}\n id={id}\n data={data || children}\n opened={null}\n tagName=\"dnb-dropdown\"\n ignore_events={false}\n prevent_selection={\n isTrue(more_menu) ||\n isTrue(action_menu) ||\n isTrue(prevent_selection)\n }\n >\n <DropdownInstance {...this.props} id={id} />\n </DrawerListProvider>\n )\n }\n}\n\nclass DropdownInstance extends React.PureComponent {\n static propTypes = Dropdown.propTypes\n static defaultProps = Dropdown.defaultProps\n static contextType = DrawerListContext\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n\n this.attributes = {}\n this.state = this.state || {}\n\n this._ref = props.innerRef || React.createRef()\n this._refWrapper = React.createRef()\n this._refButton = props.buttonRef || React.createRef()\n }\n\n componentDidMount() {\n if (isTrue(this.props.opened)) {\n this.setVisible()\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._focusTimeout)\n }\n\n setVisible = () => {\n this.context.drawerList\n .setWrapperElement(this._refWrapper.current)\n .setVisible()\n }\n\n setHidden = (...args) => {\n this.context.drawerList.setHidden(...args)\n }\n\n onFocusHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setVisible()\n }\n }\n\n onBlurHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setHidden()\n }\n }\n\n onClickHandler = () => {\n if (isTrue(this.props.disabled)) {\n return // stop here\n }\n if (\n !this.context.drawerList.hidden &&\n this.context.drawerList.isOpen\n ) {\n this.setHidden()\n } else {\n this.setVisible()\n }\n }\n\n onTriggerKeyDownHandler = (e) => {\n switch (keycode(e)) {\n case 'enter':\n case 'space':\n e.preventDefault()\n this.setVisible()\n break\n\n case 'up':\n case 'down':\n e.preventDefault()\n this.setVisible()\n\n break\n\n case 'esc':\n this.setHidden()\n break\n\n case 'home':\n case 'end':\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n onHideHandler = (args = {}) => {\n const attributes = this.attributes || {}\n const res = dispatchCustomElementEvent(this, 'on_hide', {\n ...args,\n attributes,\n })\n\n if (res !== false) {\n this.setFocus(args)\n }\n\n return res\n }\n\n setFocus = (args) => {\n clearTimeout(this._focusTimeout)\n this._focusTimeout = setTimeout(() => {\n try {\n const element = this._refButton.current\n if (element && typeof element.focus === 'function') {\n if (args.preventHideFocus !== true) {\n element.focus({ preventScroll: true })\n }\n dispatchCustomElementEvent(this, 'on_hide_focus', { element })\n }\n } catch (e) {\n // do noting\n }\n }, 1) // NVDA / Firefox needs a delay to set this focus\n }\n\n onSelectHandler = (args) => {\n if (parseFloat(args.active_item) > -1) {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_select', {\n ...args,\n attributes,\n })\n }\n }\n\n onChangeHandler = (args) => {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_change', {\n ...args,\n attributes,\n })\n }\n\n getTitle(title = null) {\n const { data } = this.context.drawerList\n if (data && data.length > 0) {\n const currentOptionData = getCurrentData(\n this.context.drawerList.selected_item,\n data\n )\n if (currentOptionData) {\n title =\n currentOptionData.selected_value ||\n parseContentTitle(currentOptionData)\n }\n }\n return title\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Dropdown.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Dropdown,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Dropdown\n )\n\n const {\n label,\n label_direction,\n label_sr_only,\n icon_size,\n size,\n fixed_position,\n enable_body_lock,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n scrollable,\n focusable,\n keep_open,\n prevent_close,\n no_animation,\n no_scroll_animation,\n triangle_position,\n skip_portal,\n portal_class,\n trigger_element: CustomTrigger,\n more_menu,\n action_menu,\n independent_width,\n prevent_selection,\n max_height,\n default_value,\n className,\n class: _className,\n disabled,\n stretch,\n skeleton,\n variant,\n\n title: _title,\n icon: _icon, // eslint-disable-line\n align_dropdown: _align_dropdown, // eslint-disable-line\n icon_position: _icon_position, // eslint-disable-line\n data: _data, // eslint-disable-line\n children: _children, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n id: _id, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n buttonRef, // eslint-disable-line\n innerRef, // eslint-disable-line\n\n ...attributes\n } = props\n\n let { icon, icon_position, align_dropdown } = props\n const id = this._id\n\n const handleAsMenu =\n isTrue(action_menu) || isTrue(more_menu) || isTrue(prevent_selection)\n const isPopupMenu = isTrue(more_menu) || !(_title && _title.length > 0)\n if (isPopupMenu) {\n icon = icon || (isTrue(more_menu) ? 'more' : 'chevron_down')\n }\n if (isPopupMenu || isTrue(action_menu)) {\n if (icon_position !== 'right' && align_dropdown !== 'right') {\n icon_position = 'left'\n align_dropdown = 'left'\n }\n }\n\n const { selected_item, direction, opened } = this.context.drawerList\n const showStatus = getStatusState(status)\n const title = this.getTitle(_title)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const mainParams = {\n className: classnames(\n 'dnb-dropdown',\n `dnb-dropdown--${direction}`,\n opened && 'dnb-dropdown--opened',\n label_direction && `dnb-dropdown--${label_direction}`,\n `dnb-dropdown--icon-position-${icon_position || 'right'}`,\n isPopupMenu && 'dnb-dropdown--is-popup',\n isTrue(action_menu) && `dnb-dropdown--action-menu`,\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-dropdown--independent-width',\n size && `dnb-dropdown--${size}`,\n isTrue(stretch) && `dnb-dropdown--stretch`,\n `dnb-dropdown--${align_dropdown || 'right'}`,\n status && `dnb-dropdown__status--${status_state}`,\n showStatus && 'dnb-dropdown__form-status',\n 'dnb-form-component',\n createSpacingClasses(props),\n _className,\n className\n ),\n }\n\n const triggerParams = {\n className: classnames(\n 'dnb-dropdown__trigger',\n opened && 'dnb-button--active'\n ),\n id,\n disabled,\n 'aria-haspopup': handleAsMenu ? true : 'listbox',\n 'aria-expanded': opened,\n // 'aria-controls': `${id}-drawer-list`,\n ...attributes,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n onClick: this.onClickHandler,\n onKeyDown: this.onTriggerKeyDownHandler,\n }\n\n if (opened) {\n triggerParams['aria-controls'] = `${id}-drawer-list`\n }\n\n if (showStatus || suffix) {\n triggerParams['aria-describedby'] = combineDescribedBy(\n triggerParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n if (label) {\n triggerParams['aria-labelledby'] = combineLabelledBy(\n triggerParams,\n id + '-label',\n id // used to read the current value\n )\n }\n\n // also used for code markup simulation\n validateDOMAttributes(null, mainParams)\n validateDOMAttributes(this.props, triggerParams)\n\n // make it possible to grab the rest attributes and return it with all events\n this.attributes = validateDOMAttributes(null, attributes)\n\n return (\n <span ref={this._ref} {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n onClick={this.onClickHandler}\n />\n )}\n\n <span className=\"dnb-dropdown__inner\" ref={this._refWrapper}>\n <AlignmentHelper />\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 className=\"dnb-dropdown__row\">\n <span className=\"dnb-dropdown__shell\">\n {CustomTrigger ? (\n <CustomTrigger {...triggerParams} />\n ) : (\n <Button\n variant={variant}\n icon={false} // only to suppress the warning about the icon when tertiary variant is used\n size={size === 'default' ? 'medium' : size}\n innerRef={this._refButton}\n custom_content={\n <>\n {!isPopupMenu && (\n <span className=\"dnb-dropdown__text dnb-button__text\">\n <span className=\"dnb-dropdown__text__inner\">\n {title}\n </span>\n </span>\n )}\n <span\n aria-hidden\n className={classnames(\n 'dnb-dropdown__icon',\n parseFloat(selected_item) === 0 &&\n 'dnb-dropdown__icon--first'\n )}\n >\n {icon !== false && (\n <Icon\n icon={icon || 'chevron_down'}\n size={\n icon_size ||\n (size === 'large' ? 'medium' : 'default')\n }\n />\n )}\n </span>\n </>\n }\n {...triggerParams}\n />\n )}\n\n <DrawerList\n id={id}\n role={handleAsMenu ? 'menu' : 'listbox'}\n portal_class={portal_class}\n list_class=\"dnb-dropdown__list\"\n value={selected_item}\n default_value={default_value}\n scrollable={scrollable}\n focusable={focusable}\n no_animation={no_animation}\n no_scroll_animation={no_scroll_animation}\n skip_portal={skip_portal}\n prevent_selection={handleAsMenu}\n action_menu={action_menu}\n triangle_position={\n triangle_position || icon_position || 'right'\n }\n keep_open={keep_open}\n prevent_close={prevent_close}\n independent_width={\n isTrue(independent_width) || isPopupMenu || action_menu\n }\n is_popup={isPopupMenu || action_menu}\n align_drawer={align_dropdown || 'left'}\n fixed_position={fixed_position}\n enable_body_lock={enable_body_lock}\n disabled={disabled}\n max_height={max_height}\n direction={direction}\n size={size}\n on_change={this.onChangeHandler}\n on_select={this.onSelectHandler}\n on_hide={this.onHideHandler}\n />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-dropdown__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n\nDropdown.HorizontalItem = DrawerList.HorizontalItem\nDropdown._formElement = true\nDropdown._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown.js","names":["React","PropTypes","classnames","keycode","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","getStatusState","combineDescribedBy","combineLabelledBy","dispatchCustomElementEvent","AlignmentHelper","spacingPropTypes","createSpacingClasses","pickFormElementProps","Suffix","Icon","FormLabel","FormStatus","Button","buttonVariantPropType","DrawerList","DrawerListContext","DrawerListProvider","drawerListPropTypes","drawerListProviderPropTypes","parseContentTitle","getCurrentData","Dropdown","PureComponent","render","id","props","more_menu","action_menu","prevent_selection","children","data","createElement","_extends","opened","tagName","ignore_events","DropdownInstance","_defineProperty","title","variant","icon","icon_size","icon_position","triangle_position","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","innerRef","buttonRef","suffix","scrollable","focusable","max_height","direction","skip_portal","portal_class","no_animation","no_scroll_animation","independent_width","size","align_dropdown","trigger_element","default_value","value","open_on_focus","prevent_close","keep_open","disabled","stretch","skeleton","class","className","on_show","on_hide","on_change","on_select","on_state_update","process","env","NODE_ENV","propTypes","_objectSpread","string","oneOfType","node","func","oneOf","bool","object","shape","message","number","arrayOf","selectedKey","selected_key","selected_value","content","array","constructor","_this","this","context","drawerList","setWrapperElement","_refWrapper","current","setVisible","setHidden","arguments","hidden","isOpen","e","preventDefault","args","length","undefined","attributes","res","setFocus","clearTimeout","_focusTimeout","setTimeout","element","_refButton","focus","preventHideFocus","preventScroll","parseFloat","active_item","_id","state","_ref","createRef","componentDidMount","componentWillUnmount","getTitle","currentOptionData","selected_item","_this$context","_this$context2","_this$context3","defaultProps","getTranslation","FormRow","formElement","fixed_position","enable_body_lock","CustomTrigger","_className","_title","_icon","_align_dropdown","_icon_position","_data","_children","_direction","_opened","_value","_objectWithoutProperties","_excluded","handleAsMenu","isPopupMenu","showStatus","Object","assign","mainParams","triggerParams","onFocus","onFocusHandler","onBlur","onBlurHandler","onClick","onClickHandler","onKeyDown","onTriggerKeyDownHandler","ref","for_id","text","sr_only","_AlignmentHelper","show","text_id","custom_content","Fragment","role","list_class","is_popup","align_drawer","onChangeHandler","onSelectHandler","onHideHandler","HorizontalItem","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/dropdown/Dropdown.js"],"sourcesContent":["/**\n * Web Dropdown Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nimport Suffix from '../../shared/helpers/Suffix'\nimport Icon from '../icon-primary/IconPrimary'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport Button, { buttonVariantPropType } from '../button/Button'\nimport DrawerList from '../../fragments/drawer-list/DrawerList'\nimport DrawerListContext from '../../fragments/drawer-list/DrawerListContext'\nimport DrawerListProvider from '../../fragments/drawer-list/DrawerListProvider'\nimport {\n drawerListPropTypes,\n drawerListProviderPropTypes,\n parseContentTitle,\n getCurrentData,\n} from '../../fragments/drawer-list/DrawerListHelpers'\n\nexport default class Dropdown extends React.PureComponent {\n static propTypes = {\n ...spacingPropTypes,\n ...drawerListPropTypes,\n ...drawerListProviderPropTypes,\n\n id: PropTypes.string,\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n variant: buttonVariantPropType.variant,\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.string,\n icon_position: PropTypes.oneOf(['left', 'right']),\n triangle_position: PropTypes.oneOf(['left', 'right']),\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 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 innerRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n buttonRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\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 scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n max_height: PropTypes.number,\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n more_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n action_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n independent_width: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n align_dropdown: PropTypes.oneOf(['left', 'right']),\n trigger_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n default_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n open_on_focus: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_close: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_open: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n opened: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n class: PropTypes.string,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_hide: PropTypes.func,\n on_change: PropTypes.func,\n on_select: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n title: 'Option Menu',\n variant: 'secondary',\n icon: null,\n icon_size: null,\n icon_position: null,\n triangle_position: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n innerRef: null,\n buttonRef: null,\n suffix: null,\n scrollable: true,\n focusable: false,\n max_height: null,\n direction: 'auto',\n skip_portal: null,\n portal_class: null,\n no_animation: false,\n no_scroll_animation: false,\n prevent_selection: false,\n more_menu: false,\n action_menu: false,\n independent_width: false,\n size: 'default',\n align_dropdown: null,\n trigger_element: null,\n data: null,\n default_value: null,\n value: 'initval',\n open_on_focus: false,\n prevent_close: false,\n keep_open: false,\n opened: false,\n disabled: null,\n stretch: null,\n skeleton: null,\n class: null,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n\n on_change: null,\n on_select: null,\n on_state_update: null,\n }\n\n render() {\n // generate ID here, so we can send it along the provider\n const id = this.props.id || makeUniqueId()\n const { more_menu, action_menu, prevent_selection, children, data } =\n this.props\n\n return (\n <DrawerListProvider\n {...this.props}\n id={id}\n data={data || children}\n opened={null}\n tagName=\"dnb-dropdown\"\n ignore_events={false}\n prevent_selection={\n isTrue(more_menu) ||\n isTrue(action_menu) ||\n isTrue(prevent_selection)\n }\n >\n <DropdownInstance {...this.props} id={id} />\n </DrawerListProvider>\n )\n }\n}\n\nclass DropdownInstance extends React.PureComponent {\n static propTypes = Dropdown.propTypes\n static defaultProps = Dropdown.defaultProps\n static contextType = DrawerListContext\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n\n this.attributes = {}\n this.state = this.state || {}\n\n this._ref = props.innerRef || React.createRef()\n this._refWrapper = React.createRef()\n this._refButton = props.buttonRef || React.createRef()\n }\n\n componentDidMount() {\n if (isTrue(this.props.opened)) {\n this.setVisible()\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._focusTimeout)\n }\n\n setVisible = () => {\n this.context.drawerList\n .setWrapperElement(this._refWrapper.current)\n .setVisible()\n }\n\n setHidden = (...args) => {\n this.context.drawerList.setHidden(...args)\n }\n\n onFocusHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setVisible()\n }\n }\n\n onBlurHandler = () => {\n if (isTrue(this.props.open_on_focus)) {\n this.setHidden()\n }\n }\n\n onClickHandler = () => {\n if (isTrue(this.props.disabled)) {\n return // stop here\n }\n if (\n !this.context.drawerList.hidden &&\n this.context.drawerList.isOpen\n ) {\n this.setHidden()\n } else {\n this.setVisible()\n }\n }\n\n onTriggerKeyDownHandler = (e) => {\n switch (keycode(e)) {\n case 'enter':\n case 'space':\n e.preventDefault()\n this.setVisible()\n break\n\n case 'up':\n case 'down':\n e.preventDefault()\n this.setVisible()\n\n break\n\n case 'esc':\n this.setHidden()\n break\n\n case 'home':\n case 'end':\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n onHideHandler = (args = {}) => {\n const attributes = this.attributes || {}\n const res = dispatchCustomElementEvent(this, 'on_hide', {\n ...args,\n attributes,\n })\n\n if (res !== false) {\n this.setFocus(args)\n }\n\n return res\n }\n\n setFocus = (args) => {\n clearTimeout(this._focusTimeout)\n this._focusTimeout = setTimeout(() => {\n try {\n const element = this._refButton.current\n if (element && typeof element.focus === 'function') {\n if (args.preventHideFocus !== true) {\n element.focus({ preventScroll: true })\n }\n dispatchCustomElementEvent(this, 'on_hide_focus', { element })\n }\n } catch (e) {\n // do noting\n }\n }, 1) // NVDA / Firefox needs a delay to set this focus\n }\n\n onSelectHandler = (args) => {\n if (parseFloat(args.active_item) > -1) {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_select', {\n ...args,\n attributes,\n })\n }\n }\n\n onChangeHandler = (args) => {\n const attributes = this.attributes || {}\n dispatchCustomElementEvent(this, 'on_change', {\n ...args,\n attributes,\n })\n }\n\n getTitle(title = null) {\n const { data } = this.context.drawerList\n if (data && data.length > 0) {\n const currentOptionData = getCurrentData(\n this.context.drawerList.selected_item,\n data\n )\n if (currentOptionData) {\n title =\n currentOptionData.selected_value ||\n parseContentTitle(currentOptionData)\n }\n }\n return title\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Dropdown.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Dropdown,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Dropdown\n )\n\n const {\n label,\n label_direction,\n label_sr_only,\n icon_size,\n size,\n fixed_position,\n enable_body_lock,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n scrollable,\n focusable,\n keep_open,\n prevent_close,\n no_animation,\n no_scroll_animation,\n triangle_position,\n skip_portal,\n portal_class,\n trigger_element: CustomTrigger,\n more_menu,\n action_menu,\n independent_width,\n prevent_selection,\n max_height,\n default_value,\n className,\n class: _className,\n disabled,\n stretch,\n skeleton,\n variant,\n\n title: _title,\n icon: _icon, // eslint-disable-line\n align_dropdown: _align_dropdown, // eslint-disable-line\n icon_position: _icon_position, // eslint-disable-line\n data: _data, // eslint-disable-line\n children: _children, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n id: _id, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n buttonRef, // eslint-disable-line\n innerRef, // eslint-disable-line\n\n ...attributes\n } = props\n\n let { icon, icon_position, align_dropdown } = props\n const id = this._id\n\n const handleAsMenu =\n isTrue(action_menu) || isTrue(more_menu) || isTrue(prevent_selection)\n const isPopupMenu = isTrue(more_menu) || !(_title && _title.length > 0)\n if (isPopupMenu) {\n icon = icon || (isTrue(more_menu) ? 'more' : 'chevron_down')\n }\n if (isPopupMenu || isTrue(action_menu)) {\n if (icon_position !== 'right' && align_dropdown !== 'right') {\n icon_position = 'left'\n align_dropdown = 'left'\n }\n }\n\n const { selected_item, direction, opened } = this.context.drawerList\n const showStatus = getStatusState(status)\n const title = this.getTitle(_title)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const mainParams = {\n className: classnames(\n 'dnb-dropdown',\n `dnb-dropdown--${direction}`,\n opened && 'dnb-dropdown--opened',\n label_direction && `dnb-dropdown--${label_direction}`,\n `dnb-dropdown--icon-position-${icon_position || 'right'}`,\n isPopupMenu && 'dnb-dropdown--is-popup',\n isTrue(action_menu) && `dnb-dropdown--action-menu`,\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-dropdown--independent-width',\n size && `dnb-dropdown--${size}`,\n isTrue(stretch) && `dnb-dropdown--stretch`,\n `dnb-dropdown--${align_dropdown || 'right'}`,\n status && `dnb-dropdown__status--${status_state}`,\n showStatus && 'dnb-dropdown__form-status',\n 'dnb-form-component',\n createSpacingClasses(props),\n _className,\n className\n ),\n }\n\n const triggerParams = {\n className: classnames(\n 'dnb-dropdown__trigger',\n opened && 'dnb-button--active'\n ),\n id,\n disabled,\n 'aria-haspopup': handleAsMenu ? true : 'listbox',\n 'aria-expanded': opened,\n // 'aria-controls': `${id}-drawer-list`,\n ...attributes,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n onClick: this.onClickHandler,\n onKeyDown: this.onTriggerKeyDownHandler,\n }\n\n if (opened) {\n triggerParams['aria-controls'] = `${id}-drawer-list`\n }\n\n if (showStatus || suffix) {\n triggerParams['aria-describedby'] = combineDescribedBy(\n triggerParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n if (label) {\n triggerParams['aria-labelledby'] = combineLabelledBy(\n triggerParams,\n id + '-label',\n id // used to read the current value\n )\n }\n\n // also used for code markup simulation\n validateDOMAttributes(null, mainParams)\n validateDOMAttributes(this.props, triggerParams)\n\n // make it possible to grab the rest attributes and return it with all events\n this.attributes = validateDOMAttributes(null, attributes)\n\n return (\n <span ref={this._ref} {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n onClick={this.onClickHandler}\n />\n )}\n\n <span className=\"dnb-dropdown__inner\" ref={this._refWrapper}>\n <AlignmentHelper />\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 className=\"dnb-dropdown__row\">\n <span className=\"dnb-dropdown__shell\">\n {CustomTrigger ? (\n <CustomTrigger {...triggerParams} />\n ) : (\n <Button\n variant={variant}\n icon={false} // only to suppress the warning about the icon when tertiary variant is used\n size={size === 'default' ? 'medium' : size}\n innerRef={this._refButton}\n custom_content={\n <>\n {!isPopupMenu && (\n <span className=\"dnb-dropdown__text dnb-button__text\">\n <span className=\"dnb-dropdown__text__inner\">\n {title}\n </span>\n </span>\n )}\n <span\n aria-hidden\n className={classnames(\n 'dnb-dropdown__icon',\n parseFloat(selected_item) === 0 &&\n 'dnb-dropdown__icon--first'\n )}\n >\n {icon !== false && (\n <Icon\n icon={icon || 'chevron_down'}\n size={\n icon_size ||\n (size === 'large' ? 'medium' : 'default')\n }\n />\n )}\n </span>\n </>\n }\n {...triggerParams}\n />\n )}\n\n <DrawerList\n id={id}\n role={handleAsMenu ? 'menu' : 'listbox'}\n portal_class={portal_class}\n list_class=\"dnb-dropdown__list\"\n value={selected_item}\n default_value={default_value}\n scrollable={scrollable}\n focusable={focusable}\n no_animation={no_animation}\n no_scroll_animation={no_scroll_animation}\n skip_portal={skip_portal}\n prevent_selection={handleAsMenu}\n action_menu={action_menu}\n triangle_position={\n triangle_position || icon_position || 'right'\n }\n keep_open={keep_open}\n prevent_close={prevent_close}\n independent_width={\n isTrue(independent_width) || isPopupMenu || action_menu\n }\n is_popup={isPopupMenu || action_menu}\n align_drawer={align_dropdown || 'left'}\n fixed_position={fixed_position}\n enable_body_lock={enable_body_lock}\n disabled={disabled}\n max_height={max_height}\n direction={direction}\n size={size}\n on_change={this.onChangeHandler}\n on_select={this.onSelectHandler}\n on_hide={this.onHideHandler}\n />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-dropdown__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n\nDropdown.HorizontalItem = DrawerList.HorizontalItem\nDropdown._formElement = true\nDropdown._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -73,7 +73,8 @@ function FlexContainer(props) {
73
73
  }, React.createElement(Space, {
74
74
  top: spaceAboveLine
75
75
  }), _Hr || (_Hr = React.createElement(Hr, {
76
- space: 0
76
+ space: 0,
77
+ className: "dnb-flex-container__hr"
77
78
  })), renderWithSpacing(child, {
78
79
  space: {
79
80
  [start]: startSpacing,
@@ -1 +1 @@
1
- {"version":3,"file":"Container.js","names":["React","classnames","Space","Hr","useMedia","getSpaceValue","isHeadingElement","renderWithSpacing","propNames","pickFlexContainerProps","props","defaults","arguments","length","undefined","skip","_objectSpread","Object","fromEntries","entries","filter","_ref","key","includes","FlexContainer","className","style","children","element","direction","wrap","sizeCount","rowGap","justify","align","alignSelf","divider","spacing","breakpoints","queries","rest","_objectWithoutProperties","_excluded","childrenArray","Children","toArray","hasHeading","some","child","i","previousChild","hasSizeProp","_child$props","size","mediaKey","disabled","content","map","isFirst","start","end","endSpacing","startSpacing","_getSpaceValue","_getSpaceValue2","spaceAboveLine","createElement","Fragment","top","_Hr","space","_ref2","_getSpaceValue3","n","cn","_extends","_supportsSpacingProps"],"sources":["../../../../src/components/flex/Container.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Space from '../space/Space'\nimport { Hr } from '../../elements'\nimport useMedia from '../../shared/useMedia'\nimport {\n getSpaceValue,\n isHeadingElement,\n renderWithSpacing,\n} from './utils'\n\nimport type { MediaQueryBreakpoints } from '../../shared/MediaQueryUtils'\nimport type { DynamicElement } from '../../shared/types'\nimport type { SpaceType, SpacingProps } from '../space/types'\nimport type { UseMediaQueries } from '../../shared/useMedia'\nimport type { End, Start } from './types'\n\nexport type BasicProps = {\n direction?: 'horizontal' | 'vertical'\n wrap?: boolean\n rowGap?: 'small' | 'medium' | 'large' | true\n sizeCount?: number\n justify?:\n | 'flex-start'\n | 'flex-end'\n | 'center'\n | 'space-between'\n | 'space-around'\n | 'space-evenly'\n align?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'\n // For when used as a flex item in an outer container in addition to being a container:\n alignSelf?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch'\n divider?: 'space' | 'line'\n /** Spacing between items inside */\n spacing?:\n | false\n | 'xx-small'\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n element?: DynamicElement\n breakpoints?: MediaQueryBreakpoints\n queries?: UseMediaQueries\n}\n\nexport type Props = BasicProps &\n SpacingProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref' | 'wrap'>\n\nconst propNames: Array<keyof Props> = [\n 'direction',\n 'wrap',\n 'justify',\n 'align',\n 'divider',\n 'spacing',\n]\n\nexport function pickFlexContainerProps<T extends Props>(\n props: T,\n defaults: Partial<Props> = {},\n skip: Array<keyof Props> = []\n): Omit<Props, 'children'> {\n return {\n ...defaults,\n ...Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n propNames.includes(key as keyof Props) &&\n !skip.includes(key as keyof Props)\n )\n ),\n }\n}\n\nfunction FlexContainer(props: Props) {\n const {\n className,\n style,\n children,\n element = 'div',\n direction = 'horizontal',\n wrap = true,\n sizeCount = 12,\n rowGap,\n justify = 'flex-start',\n align = 'flex-start',\n alignSelf,\n divider = 'space',\n spacing = 'small',\n breakpoints,\n queries,\n ...rest\n } = props\n\n const childrenArray = React.Children.toArray(children)\n const hasHeading = childrenArray.some((child, i) => {\n const previousChild = childrenArray?.[i - 1]\n return (\n isHeadingElement(child) || (i > 0 && isHeadingElement(previousChild))\n )\n })\n const hasSizeProp =\n !hasHeading &&\n direction === 'horizontal' &&\n childrenArray.some((child) => child['props']?.size)\n\n const { key: mediaKey } = useMedia({\n disabled: !hasSizeProp,\n breakpoints,\n queries,\n })\n\n const content = childrenArray.map((child, i) => {\n // Set spacing on child components by props (instead of CSS) to be able to dynamically override by props on each child. The default\n // is the spacing-props that controls space between children. Then override with props sent to the children, including both top\n // and bottom when th\n const isFirst = i === 0\n const previousChild = childrenArray?.[i - 1]\n\n // Always set spacing between elements in the vertical layout on the top props, and 0 on bottom, to avoid\n // having to divide spacing between both with smaller values.\n const start: Start = direction === 'horizontal' ? 'left' : 'top'\n const end: End = direction === 'horizontal' ? 'right' : 'bottom'\n // const start: Start | End = direction === 'horizontal' ? 'right' : 'top'\n // const end: Start | End = direction === 'horizontal' ? 'left' : 'bottom'\n const endSpacing = 0\n let startSpacing = null\n\n if (\n divider === 'line' &&\n // No line above first element\n !isFirst &&\n // No line above/below headings\n !hasHeading\n ) {\n const spaceAboveLine = getSpaceValue(end, previousChild) ?? spacing\n startSpacing = (getSpaceValue(start, child) ?? spacing) as SpaceType\n\n return (\n <React.Fragment key={`element-${i}`}>\n <Space top={spaceAboveLine} />\n <Hr space={0} />\n {renderWithSpacing(child, {\n space: { [start]: startSpacing, [end]: endSpacing },\n })}\n </React.Fragment>\n )\n }\n\n // No space above first element.\n if (isFirst && direction !== 'horizontal') {\n startSpacing = 0\n } else {\n // Since top space of current and bottom space of previous component is the same\n startSpacing =\n getSpaceValue(start, child) ??\n getSpaceValue(end, previousChild) ??\n spacing\n }\n\n const space =\n direction === 'horizontal'\n ? { [start]: endSpacing, [end]: startSpacing }\n : { [start]: startSpacing, [end]: endSpacing }\n\n return renderWithSpacing(child, {\n key: `element-${i}`,\n space,\n })\n })\n\n const n = 'dnb-flex-container'\n const cn = classnames(\n 'dnb-flex-container',\n direction && `${n}--direction-${direction}`,\n justify && `${n}--justify-${justify}`,\n align && `${n}--align-${align}`,\n alignSelf && `${n}--align-self-${alignSelf}`,\n spacing && `${n}--spacing-${spacing}`,\n wrap && `${n}--wrap`,\n rowGap && `${n}--row-gap-${rowGap === true ? 'small' : rowGap}`,\n hasSizeProp && `${n}--has-size`,\n divider && `${n}--divider-${divider}`,\n className\n )\n\n return (\n <Space\n element={element}\n className={cn}\n data-media-key={mediaKey}\n style={\n hasSizeProp\n ? ({ '--sizeCount': sizeCount, ...style } as React.CSSProperties)\n : style\n }\n {...rest}\n >\n {content}\n </Space>\n )\n}\n\nFlexContainer._supportsSpacingProps = true\n\nexport default FlexContainer\n"],"mappings":"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"}
1
+ {"version":3,"file":"Container.js","names":["React","classnames","Space","Hr","useMedia","getSpaceValue","isHeadingElement","renderWithSpacing","propNames","pickFlexContainerProps","props","defaults","arguments","length","undefined","skip","_objectSpread","Object","fromEntries","entries","filter","_ref","key","includes","FlexContainer","className","style","children","element","direction","wrap","sizeCount","rowGap","justify","align","alignSelf","divider","spacing","breakpoints","queries","rest","_objectWithoutProperties","_excluded","childrenArray","Children","toArray","hasHeading","some","child","i","previousChild","hasSizeProp","_child$props","size","mediaKey","disabled","content","map","isFirst","start","end","endSpacing","startSpacing","_getSpaceValue","_getSpaceValue2","spaceAboveLine","createElement","Fragment","top","_Hr","space","_ref2","_getSpaceValue3","n","cn","_extends","_supportsSpacingProps"],"sources":["../../../../src/components/flex/Container.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Space from '../space/Space'\nimport { Hr } from '../../elements'\nimport useMedia from '../../shared/useMedia'\nimport {\n getSpaceValue,\n isHeadingElement,\n renderWithSpacing,\n} from './utils'\n\nimport type { MediaQueryBreakpoints } from '../../shared/MediaQueryUtils'\nimport type { DynamicElement } from '../../shared/types'\nimport type { SpaceType, SpacingProps } from '../space/types'\nimport type { UseMediaQueries } from '../../shared/useMedia'\nimport type { End, Start } from './types'\n\nexport type BasicProps = {\n direction?: 'horizontal' | 'vertical'\n wrap?: boolean\n rowGap?: 'small' | 'medium' | 'large' | true\n sizeCount?: number\n justify?:\n | 'flex-start'\n | 'flex-end'\n | 'center'\n | 'space-between'\n | 'space-around'\n | 'space-evenly'\n align?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'\n // For when used as a flex item in an outer container in addition to being a container:\n alignSelf?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch'\n divider?: 'space' | 'line'\n /** Spacing between items inside */\n spacing?:\n | false\n | 'xx-small'\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n element?: DynamicElement\n breakpoints?: MediaQueryBreakpoints\n queries?: UseMediaQueries\n}\n\nexport type Props = BasicProps &\n SpacingProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref' | 'wrap'>\n\nconst propNames: Array<keyof Props> = [\n 'direction',\n 'wrap',\n 'justify',\n 'align',\n 'divider',\n 'spacing',\n]\n\nexport function pickFlexContainerProps<T extends Props>(\n props: T,\n defaults: Partial<Props> = {},\n skip: Array<keyof Props> = []\n): Omit<Props, 'children'> {\n return {\n ...defaults,\n ...Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n propNames.includes(key as keyof Props) &&\n !skip.includes(key as keyof Props)\n )\n ),\n }\n}\n\nfunction FlexContainer(props: Props) {\n const {\n className,\n style,\n children,\n element = 'div',\n direction = 'horizontal',\n wrap = true,\n sizeCount = 12,\n rowGap,\n justify = 'flex-start',\n align = 'flex-start',\n alignSelf,\n divider = 'space',\n spacing = 'small',\n breakpoints,\n queries,\n ...rest\n } = props\n\n const childrenArray = React.Children.toArray(children)\n const hasHeading = childrenArray.some((child, i) => {\n const previousChild = childrenArray?.[i - 1]\n return (\n isHeadingElement(child) || (i > 0 && isHeadingElement(previousChild))\n )\n })\n const hasSizeProp =\n !hasHeading &&\n direction === 'horizontal' &&\n childrenArray.some((child) => child['props']?.size)\n\n const { key: mediaKey } = useMedia({\n disabled: !hasSizeProp,\n breakpoints,\n queries,\n })\n\n const content = childrenArray.map((child, i) => {\n // Set spacing on child components by props (instead of CSS) to be able to dynamically override by props on each child. The default\n // is the spacing-props that controls space between children. Then override with props sent to the children, including both top\n // and bottom when th\n const isFirst = i === 0\n const previousChild = childrenArray?.[i - 1]\n\n // Always set spacing between elements in the vertical layout on the top props, and 0 on bottom, to avoid\n // having to divide spacing between both with smaller values.\n const start: Start = direction === 'horizontal' ? 'left' : 'top'\n const end: End = direction === 'horizontal' ? 'right' : 'bottom'\n // const start: Start | End = direction === 'horizontal' ? 'right' : 'top'\n // const end: Start | End = direction === 'horizontal' ? 'left' : 'bottom'\n const endSpacing = 0\n let startSpacing = null\n\n if (\n divider === 'line' &&\n // No line above first element\n !isFirst &&\n // No line above/below headings\n !hasHeading\n ) {\n const spaceAboveLine = getSpaceValue(end, previousChild) ?? spacing\n startSpacing = (getSpaceValue(start, child) ?? spacing) as SpaceType\n\n return (\n <React.Fragment key={`element-${i}`}>\n <Space top={spaceAboveLine} />\n <Hr space={0} className=\"dnb-flex-container__hr\" />\n {renderWithSpacing(child, {\n space: { [start]: startSpacing, [end]: endSpacing },\n })}\n </React.Fragment>\n )\n }\n\n // No space above first element.\n if (isFirst && direction !== 'horizontal') {\n startSpacing = 0\n } else {\n // Since top space of current and bottom space of previous component is the same\n startSpacing =\n getSpaceValue(start, child) ??\n getSpaceValue(end, previousChild) ??\n spacing\n }\n\n const space =\n direction === 'horizontal'\n ? { [start]: endSpacing, [end]: startSpacing }\n : { [start]: startSpacing, [end]: endSpacing }\n\n return renderWithSpacing(child, {\n key: `element-${i}`,\n space,\n })\n })\n\n const n = 'dnb-flex-container'\n const cn = classnames(\n 'dnb-flex-container',\n direction && `${n}--direction-${direction}`,\n justify && `${n}--justify-${justify}`,\n align && `${n}--align-${align}`,\n alignSelf && `${n}--align-self-${alignSelf}`,\n spacing && `${n}--spacing-${spacing}`,\n wrap && `${n}--wrap`,\n rowGap && `${n}--row-gap-${rowGap === true ? 'small' : rowGap}`,\n hasSizeProp && `${n}--has-size`,\n divider && `${n}--divider-${divider}`,\n className\n )\n\n return (\n <Space\n element={element}\n className={cn}\n data-media-key={mediaKey}\n style={\n hasSizeProp\n ? ({ '--sizeCount': sizeCount, ...style } as React.CSSProperties)\n : style\n }\n {...rest}\n >\n {content}\n </Space>\n )\n}\n\nFlexContainer._supportsSpacingProps = true\n\nexport default FlexContainer\n"],"mappings":"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"}
@@ -70,7 +70,7 @@
70
70
  .dnb-flex-container--row-gap-large, .dnb-flex-container--has-size.dnb-flex-container--spacing-large {
71
71
  --gap: var(--spacing-large);
72
72
  }
73
- .dnb-flex-container .dnb-hr {
73
+ .dnb-flex-container__hr.dnb-hr {
74
74
  width: 100%;
75
75
  color: var(--color-black-8);
76
76
  }
@@ -1 +1 @@
1
- .dnb-flex-container{grid-row-gap:var(--gap,0);display:flex;row-gap:var(--gap,0)}.dnb-flex-container--direction-horizontal{flex-direction:row;margin-right:calc(var(--gap)*-1)}.dnb-flex-container--direction-vertical{flex-direction:column}.dnb-flex-container--justify-flex-start{justify-content:flex-start}.dnb-flex-container--justify-flex-end{justify-content:flex-end}.dnb-flex-container--justify-center{justify-content:center}.dnb-flex-container--justify-space-between{justify-content:space-between}.dnb-flex-container--justify-space-around{justify-content:space-around}.dnb-flex-container--justify-space-evenly{justify-content:space-evenly}.dnb-flex-container--align-flex-start{align-items:flex-start}.dnb-flex-container--align-flex-end{align-items:flex-end}.dnb-flex-container--align-center{align-items:center}.dnb-flex-container--align-stretch{align-items:stretch}.dnb-flex-container--align-baseline{align-items:baseline}.dnb-flex-container--align-self-flex-start{align-self:flex-start}.dnb-flex-container--align-self-flex-end{align-self:flex-end}.dnb-flex-container--align-self-center{align-self:center}.dnb-flex-container--align-self-baseline{align-self:baseline}.dnb-flex-container--align-self-stretch{align-self:stretch}.dnb-flex-container--wrap{flex-wrap:wrap}.dnb-flex-container--has-size.dnb-flex-container--spacing-small,.dnb-flex-container--row-gap-small,.dnb-flex-container--wrap.dnb-flex-container--direction-horizontal{--gap:var(--spacing-small)}.dnb-flex-container--has-size.dnb-flex-container--spacing-medium,.dnb-flex-container--row-gap-medium{--gap:var(--spacing-medium)}.dnb-flex-container--has-size.dnb-flex-container--spacing-large,.dnb-flex-container--row-gap-large{--gap:var(--spacing-large)}.dnb-flex-container .dnb-hr{color:var(--color-black-8);width:100%}.dnb-flex-item--grow{flex-grow:1}.dnb-flex-item--shrink{flex-shrink:1}.dnb-flex-item--align-self-flex-start{align-self:flex-start}.dnb-flex-item--align-self-flex-end{align-self:flex-end}.dnb-flex-item--align-self-center{align-self:center}.dnb-flex-item--align-self-baseline{align-self:baseline}.dnb-flex-item--align-self-stretch{align-self:stretch}.dnb-flex-item--responsive{--sizeCount--default:12;--size--default:var(--small);--flex-basis:calc(100%/var(--sizeCount, var(--sizeCount--default))*var(--size, var(--size--default)));flex-basis:var(--flex-basis);flex-grow:0;max-width:var(--flex-basis)}.dnb-flex-container[data-media-key=small] .dnb-flex-item--responsive{--size:var(--small,var(--medium))}.dnb-flex-container[data-media-key=medium] .dnb-flex-item--responsive{--size:var(--medium,var(--large))}.dnb-flex-container[data-media-key=large] .dnb-flex-item--responsive{--size:var(--large,var(--medium))}.dnb-flex-stack+.dnb-flex-stack{margin-top:var(--spacing-large)}
1
+ .dnb-flex-container{grid-row-gap:var(--gap,0);display:flex;row-gap:var(--gap,0)}.dnb-flex-container--direction-horizontal{flex-direction:row;margin-right:calc(var(--gap)*-1)}.dnb-flex-container--direction-vertical{flex-direction:column}.dnb-flex-container--justify-flex-start{justify-content:flex-start}.dnb-flex-container--justify-flex-end{justify-content:flex-end}.dnb-flex-container--justify-center{justify-content:center}.dnb-flex-container--justify-space-between{justify-content:space-between}.dnb-flex-container--justify-space-around{justify-content:space-around}.dnb-flex-container--justify-space-evenly{justify-content:space-evenly}.dnb-flex-container--align-flex-start{align-items:flex-start}.dnb-flex-container--align-flex-end{align-items:flex-end}.dnb-flex-container--align-center{align-items:center}.dnb-flex-container--align-stretch{align-items:stretch}.dnb-flex-container--align-baseline{align-items:baseline}.dnb-flex-container--align-self-flex-start{align-self:flex-start}.dnb-flex-container--align-self-flex-end{align-self:flex-end}.dnb-flex-container--align-self-center{align-self:center}.dnb-flex-container--align-self-baseline{align-self:baseline}.dnb-flex-container--align-self-stretch{align-self:stretch}.dnb-flex-container--wrap{flex-wrap:wrap}.dnb-flex-container--has-size.dnb-flex-container--spacing-small,.dnb-flex-container--row-gap-small,.dnb-flex-container--wrap.dnb-flex-container--direction-horizontal{--gap:var(--spacing-small)}.dnb-flex-container--has-size.dnb-flex-container--spacing-medium,.dnb-flex-container--row-gap-medium{--gap:var(--spacing-medium)}.dnb-flex-container--has-size.dnb-flex-container--spacing-large,.dnb-flex-container--row-gap-large{--gap:var(--spacing-large)}.dnb-flex-container__hr.dnb-hr{color:var(--color-black-8);width:100%}.dnb-flex-item--grow{flex-grow:1}.dnb-flex-item--shrink{flex-shrink:1}.dnb-flex-item--align-self-flex-start{align-self:flex-start}.dnb-flex-item--align-self-flex-end{align-self:flex-end}.dnb-flex-item--align-self-center{align-self:center}.dnb-flex-item--align-self-baseline{align-self:baseline}.dnb-flex-item--align-self-stretch{align-self:stretch}.dnb-flex-item--responsive{--sizeCount--default:12;--size--default:var(--small);--flex-basis:calc(100%/var(--sizeCount, var(--sizeCount--default))*var(--size, var(--size--default)));flex-basis:var(--flex-basis);flex-grow:0;max-width:var(--flex-basis)}.dnb-flex-container[data-media-key=small] .dnb-flex-item--responsive{--size:var(--small,var(--medium))}.dnb-flex-container[data-media-key=medium] .dnb-flex-item--responsive{--size:var(--medium,var(--large))}.dnb-flex-container[data-media-key=large] .dnb-flex-item--responsive{--size:var(--large,var(--medium))}.dnb-flex-stack+.dnb-flex-stack{margin-top:var(--spacing-large)}
@@ -102,7 +102,7 @@
102
102
  --gap: var(--spacing-large);
103
103
  }
104
104
 
105
- .dnb-hr {
105
+ &__hr.dnb-hr {
106
106
  width: 100%;
107
107
  color: var(--color-black-8);
108
108
  }
@@ -3,7 +3,8 @@
3
3
  *
4
4
  */
5
5
  import React from 'react';
6
- import { DynamicElement, SpacingProps } from '../../shared/types';
6
+ import { FormElementProps } from '../../shared/helpers/filterValidProps';
7
+ import type { DynamicElement, SpacingProps } from '../../shared/types';
7
8
  export type FormLabelProps = {
8
9
  forId?: string;
9
10
  element?: DynamicElement<HTMLLabelElement>;
@@ -17,12 +18,16 @@ export type FormLabelProps = {
17
18
  innerRef?: React.RefObject<HTMLElement>;
18
19
  /** Is not a part of HTMLLabelElement and not documented as of now */
19
20
  disabled?: boolean;
21
+ /**
22
+ * For internal use only
23
+ */
24
+ labelDirection?: FormElementProps['labelDirection'];
20
25
  /** @deprecated use forId instead */
21
26
  for_id?: string;
22
27
  /** @deprecated use srOnly instead */
23
28
  sr_only?: boolean;
24
- /** @deprecated use labelDirection instead (was not documented before) */
25
- label_direction?: 'vertical' | 'horizontal';
29
+ /** @deprecated use "vertical" (or "labelDirection" for internal use) instead (was not documented before) */
30
+ label_direction?: FormElementProps['label_direction'];
26
31
  };
27
32
  export type FormLabelAllProps = FormLabelProps & React.HTMLAttributes<HTMLLabelElement> & SpacingProps;
28
33
  declare function FormLabel(localProps: FormLabelAllProps): import("react/jsx-runtime").JSX.Element;
@@ -2,7 +2,7 @@
2
2
 
3
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
- const _excluded = ["forId", "text", "srOnly", "vertical", "size", "skeleton", "element", "innerRef", "className", "children", "for_id", "sr_only", "label_direction"];
5
+ const _excluded = ["forId", "text", "srOnly", "vertical", "labelDirection", "size", "skeleton", "element", "innerRef", "className", "children"];
6
6
  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; }
7
7
  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; }
8
8
  import React from 'react';
@@ -11,37 +11,40 @@ import { extendPropsWithContext, isTrue, validateDOMAttributes } from '../../sha
11
11
  import { createSpacingClasses } from '../space/SpacingHelper';
12
12
  import { createSkeletonClass, skeletonDOMAttributes } from '../skeleton/SkeletonHelper';
13
13
  import { pickFormElementProps } from '../../shared/helpers/filterValidProps';
14
+ import { convertSnakeCaseProps } from '../../shared/helpers/withSnakeCaseProps';
15
+ import { omitSpacingProps } from '../flex/utils';
14
16
  import Context from '../../shared/Context';
15
17
  export default function FormLabel(localProps) {
16
18
  const context = React.useContext(Context);
17
- const props = extendPropsWithContext(localProps, null, {
19
+ const props = convertSnakeCaseProps(extendPropsWithContext(localProps, null, {
18
20
  skeleton: context === null || context === void 0 ? void 0 : context.skeleton
19
- }, pickFormElementProps(context === null || context === void 0 ? void 0 : context.FormRow), pickFormElementProps(context === null || context === void 0 ? void 0 : context.formElement), context === null || context === void 0 ? void 0 : context.FormLabel);
21
+ }, pickFormElementProps(context === null || context === void 0 ? void 0 : context.FormRow), pickFormElementProps(context === null || context === void 0 ? void 0 : context.formElement), context === null || context === void 0 ? void 0 : context.FormLabel));
20
22
  const {
21
23
  forId,
22
24
  text,
23
25
  srOnly,
24
26
  vertical,
27
+ labelDirection,
25
28
  size,
26
29
  skeleton,
27
30
  element: Element = 'label',
28
31
  innerRef,
29
32
  className,
30
- children,
31
- for_id,
32
- sr_only,
33
- label_direction
33
+ children
34
34
  } = props,
35
35
  attributes = _objectWithoutProperties(props, _excluded);
36
- const isInteractive = !props.disabled && !srOnly && (typeof props.onClick === 'function' || forId || for_id);
36
+ const content = text || children;
37
+ const isInteractive = !props.disabled && !srOnly && (typeof props.onClick === 'function' || forId);
37
38
  const params = _objectSpread({
38
- className: classnames('dnb-form-label', (isTrue(vertical) || label_direction === 'vertical') && `dnb-form-label--vertical`, (srOnly || isTrue(sr_only)) && 'dnb-sr-only', createSkeletonClass('font', skeleton, context), createSpacingClasses(props), className, size && `dnb-h--${size}`, isInteractive && 'dnb-form-label--interactive'),
39
- htmlFor: forId || for_id
39
+ className: classnames('dnb-form-label', (isTrue(vertical) || labelDirection === 'vertical') && `dnb-form-label--vertical`, createSkeletonClass('font', skeleton, context), createSpacingClasses(content ? _objectSpread({
40
+ right: 'small'
41
+ }, props) : omitSpacingProps(props)), className, srOnly && 'dnb-sr-only', size && `dnb-h--${size}`, isInteractive && 'dnb-form-label--interactive'),
42
+ htmlFor: forId
40
43
  }, attributes);
41
44
  params['ref'] = innerRef;
42
45
  skeletonDOMAttributes(params, skeleton, context);
43
46
  validateDOMAttributes(localProps, params);
44
- return React.createElement(Element, params, text || children);
47
+ return React.createElement(Element, params, content);
45
48
  }
46
49
  FormLabel._formElement = true;
47
50
  FormLabel._supportsSpacingProps = true;
@@ -1 +1 @@
1
- {"version":3,"file":"FormLabel.js","names":["React","classnames","extendPropsWithContext","isTrue","validateDOMAttributes","createSpacingClasses","createSkeletonClass","skeletonDOMAttributes","pickFormElementProps","Context","FormLabel","localProps","context","useContext","props","skeleton","FormRow","formElement","forId","text","srOnly","vertical","size","element","Element","innerRef","className","children","for_id","sr_only","label_direction","attributes","_objectWithoutProperties","_excluded","isInteractive","disabled","onClick","params","_objectSpread","htmlFor","createElement","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/form-label/FormLabel.tsx"],"sourcesContent":["/**\n * Web FormLabel Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport {\n extendPropsWithContext,\n isTrue,\n validateDOMAttributes,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport {\n createSkeletonClass,\n skeletonDOMAttributes,\n} from '../skeleton/SkeletonHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport Context from '../../shared/Context'\nimport {\n DynamicElement,\n DynamicElementParams,\n SpacingProps,\n} from '../../shared/types'\n\nexport type FormLabelProps = {\n forId?: string\n element?: DynamicElement<HTMLLabelElement>\n text?: React.ReactNode\n size?: 'basis' | 'medium' | 'large'\n id?: string\n skeleton?: boolean\n label?: React.ReactNode\n vertical?: boolean\n srOnly?: boolean\n innerRef?: React.RefObject<HTMLElement>\n\n /** Is not a part of HTMLLabelElement and not documented as of now */\n disabled?: boolean\n\n /** @deprecated use forId instead */\n for_id?: string\n /** @deprecated use srOnly instead */\n sr_only?: boolean\n /** @deprecated use labelDirection instead (was not documented before) */\n label_direction?: 'vertical' | 'horizontal'\n}\n\nexport type FormLabelAllProps = FormLabelProps &\n React.HTMLAttributes<HTMLLabelElement> &\n SpacingProps\n\nexport default function FormLabel(localProps: FormLabelAllProps) {\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 null,\n { skeleton: context?.skeleton },\n pickFormElementProps(context?.FormRow), // Deprecated – can be removed in v11\n pickFormElementProps(context?.formElement),\n context?.FormLabel\n )\n\n const {\n forId,\n text,\n srOnly,\n vertical,\n size,\n skeleton,\n element: Element = 'label',\n innerRef,\n className,\n children,\n\n /** @deprecated can be removed in v11 */\n for_id,\n sr_only,\n label_direction,\n\n ...attributes\n } = props\n\n const isInteractive =\n !props.disabled &&\n !srOnly &&\n (typeof props.onClick === 'function' || forId || for_id)\n\n const params = {\n className: classnames(\n 'dnb-form-label',\n (isTrue(vertical) || label_direction === 'vertical') &&\n `dnb-form-label--vertical`,\n (srOnly || isTrue(sr_only)) && 'dnb-sr-only',\n size && `dnb-h--${size}`,\n isInteractive && 'dnb-form-label--interactive',\n createSkeletonClass('font', skeleton, context),\n createSpacingClasses(props),\n className\n ),\n htmlFor: forId || for_id,\n ...(attributes as DynamicElementParams),\n }\n\n params['ref'] = innerRef\n\n skeletonDOMAttributes(params, skeleton, context)\n validateDOMAttributes(localProps, params)\n\n return <Element {...params}>{text || children}</Element>\n}\n\nFormLabel._formElement = true\nFormLabel._supportsSpacingProps = true\n"],"mappings":";;;;;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,sBAAsB,EACtBC,MAAM,EACNC,qBAAqB,QAChB,+BAA+B;AACtC,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SACEC,mBAAmB,EACnBC,qBAAqB,QAChB,4BAA4B;AACnC,SAASC,oBAAoB,QAAQ,uCAAuC;AAC5E,OAAOC,OAAO,MAAM,sBAAsB;AAkC1C,eAAe,SAASC,SAASA,CAACC,UAA6B,EAAE;EAC/D,MAAMC,OAAO,GAAGZ,KAAK,CAACa,UAAU,CAACJ,OAAO,CAAC;EAGzC,MAAMK,KAAK,GAAGZ,sBAAsB,CAClCS,UAAU,EACV,IAAI,EACJ;IAAEI,QAAQ,EAAEH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG;EAAS,CAAC,EAC/BP,oBAAoB,CAACI,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEI,OAAO,CAAC,EACtCR,oBAAoB,CAACI,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEK,WAAW,CAAC,EAC1CL,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEF,SACX,CAAC;EAED,MAAM;MACJQ,KAAK;MACLC,IAAI;MACJC,MAAM;MACNC,QAAQ;MACRC,IAAI;MACJP,QAAQ;MACRQ,OAAO,EAAEC,OAAO,GAAG,OAAO;MAC1BC,QAAQ;MACRC,SAAS;MACTC,QAAQ;MAGRC,MAAM;MACNC,OAAO;MACPC;IAGF,CAAC,GAAGhB,KAAK;IADJiB,UAAU,GAAAC,wBAAA,CACXlB,KAAK,EAAAmB,SAAA;EAET,MAAMC,aAAa,GACjB,CAACpB,KAAK,CAACqB,QAAQ,IACf,CAACf,MAAM,KACN,OAAON,KAAK,CAACsB,OAAO,KAAK,UAAU,IAAIlB,KAAK,IAAIU,MAAM,CAAC;EAE1D,MAAMS,MAAM,GAAAC,aAAA;IACVZ,SAAS,EAAEzB,UAAU,CACnB,gBAAgB,EAChB,CAACE,MAAM,CAACkB,QAAQ,CAAC,IAAIS,eAAe,KAAK,UAAU,KAChD,0BAAyB,EAC5B,CAACV,MAAM,IAAIjB,MAAM,CAAC0B,OAAO,CAAC,KAAK,aAAa,EAG5CvB,mBAAmB,CAAC,MAAM,EAAES,QAAQ,EAAEH,OAAO,CAAC,EAC9CP,oBAAoB,CAACS,KAAK,CAAC,EAC3BY,SAAS,EAJTJ,IAAI,IAAK,UAASA,IAAK,EAAC,EACxBY,aAAa,IAAI,6BAInB,CAAC;IACDK,OAAO,EAAErB,KAAK,IAAIU;EAAM,GACpBG,UAAU,CACf;EAEDM,MAAM,CAAC,KAAK,CAAC,GAAGZ,QAAQ;EAExBlB,qBAAqB,CAAC8B,MAAM,EAAEtB,QAAQ,EAAEH,OAAO,CAAC;EAChDR,qBAAqB,CAACO,UAAU,EAAE0B,MAAM,CAAC;EAEzC,OAAOrC,KAAA,CAAAwC,aAAA,CAAChB,OAAO,EAAKa,MAAM,EAAGlB,IAAI,IAAIQ,QAAkB,CAAC;AAC1D;AAEAjB,SAAS,CAAC+B,YAAY,GAAG,IAAI;AAC7B/B,SAAS,CAACgC,qBAAqB,GAAG,IAAI"}
1
+ {"version":3,"file":"FormLabel.js","names":["React","classnames","extendPropsWithContext","isTrue","validateDOMAttributes","createSpacingClasses","createSkeletonClass","skeletonDOMAttributes","pickFormElementProps","convertSnakeCaseProps","omitSpacingProps","Context","FormLabel","localProps","context","useContext","props","skeleton","FormRow","formElement","forId","text","srOnly","vertical","labelDirection","size","element","Element","innerRef","className","children","attributes","_objectWithoutProperties","_excluded","content","isInteractive","disabled","onClick","params","_objectSpread","right","htmlFor","createElement","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/form-label/FormLabel.tsx"],"sourcesContent":["/**\n * Web FormLabel Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport {\n extendPropsWithContext,\n isTrue,\n validateDOMAttributes,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport {\n createSkeletonClass,\n skeletonDOMAttributes,\n} from '../skeleton/SkeletonHelper'\nimport {\n FormElementProps,\n pickFormElementProps,\n} from '../../shared/helpers/filterValidProps'\nimport { convertSnakeCaseProps } from '../../shared/helpers/withSnakeCaseProps'\nimport { omitSpacingProps } from '../flex/utils'\nimport Context from '../../shared/Context'\nimport type {\n DynamicElement,\n DynamicElementParams,\n SpacingProps,\n} from '../../shared/types'\n\nexport type FormLabelProps = {\n forId?: string\n element?: DynamicElement<HTMLLabelElement>\n text?: React.ReactNode\n size?: 'basis' | 'medium' | 'large'\n id?: string\n skeleton?: boolean\n label?: React.ReactNode\n vertical?: boolean\n srOnly?: boolean\n innerRef?: React.RefObject<HTMLElement>\n\n /** Is not a part of HTMLLabelElement and not documented as of now */\n disabled?: boolean\n\n /**\n * For internal use only\n */\n labelDirection?: FormElementProps['labelDirection']\n\n /** @deprecated use forId instead */\n for_id?: string\n /** @deprecated use srOnly instead */\n sr_only?: boolean\n /** @deprecated use \"vertical\" (or \"labelDirection\" for internal use) instead (was not documented before) */\n label_direction?: FormElementProps['label_direction']\n}\n\nexport type FormLabelAllProps = FormLabelProps &\n React.HTMLAttributes<HTMLLabelElement> &\n SpacingProps\n\nexport default function FormLabel(localProps: FormLabelAllProps) {\n const context = React.useContext(Context)\n\n // use only the props from context, who are available here anyway\n const props = convertSnakeCaseProps(\n extendPropsWithContext(\n localProps,\n null,\n { skeleton: context?.skeleton },\n pickFormElementProps(context?.FormRow), // Deprecated – can be removed in v11\n pickFormElementProps(context?.formElement),\n context?.FormLabel\n )\n )\n\n const {\n forId,\n text,\n srOnly,\n vertical,\n labelDirection,\n size,\n skeleton,\n element: Element = 'label',\n innerRef,\n className,\n children,\n ...attributes\n } = props\n\n const content = text || children\n\n const isInteractive =\n !props.disabled &&\n !srOnly &&\n (typeof props.onClick === 'function' || forId)\n\n const params = {\n className: classnames(\n 'dnb-form-label',\n (isTrue(vertical) || labelDirection === 'vertical') &&\n `dnb-form-label--vertical`,\n srOnly && 'dnb-sr-only',\n size && `dnb-h--${size}`,\n isInteractive && 'dnb-form-label--interactive',\n createSkeletonClass('font', skeleton, context),\n createSpacingClasses(\n content ? { right: 'small', ...props } : omitSpacingProps(props)\n ),\n className\n ),\n htmlFor: forId,\n ...(attributes as DynamicElementParams),\n }\n\n params['ref'] = innerRef\n\n skeletonDOMAttributes(params, skeleton, context)\n validateDOMAttributes(localProps, params)\n\n return <Element {...params}>{content}</Element>\n}\n\nFormLabel._formElement = true\nFormLabel._supportsSpacingProps = true\n"],"mappings":";;;;;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,sBAAsB,EACtBC,MAAM,EACNC,qBAAqB,QAChB,+BAA+B;AACtC,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SACEC,mBAAmB,EACnBC,qBAAqB,QAChB,4BAA4B;AACnC,SAEEC,oBAAoB,QACf,uCAAuC;AAC9C,SAASC,qBAAqB,QAAQ,yCAAyC;AAC/E,SAASC,gBAAgB,QAAQ,eAAe;AAChD,OAAOC,OAAO,MAAM,sBAAsB;AAuC1C,eAAe,SAASC,SAASA,CAACC,UAA6B,EAAE;EAC/D,MAAMC,OAAO,GAAGd,KAAK,CAACe,UAAU,CAACJ,OAAO,CAAC;EAGzC,MAAMK,KAAK,GAAGP,qBAAqB,CACjCP,sBAAsB,CACpBW,UAAU,EACV,IAAI,EACJ;IAAEI,QAAQ,EAAEH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG;EAAS,CAAC,EAC/BT,oBAAoB,CAACM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEI,OAAO,CAAC,EACtCV,oBAAoB,CAACM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEK,WAAW,CAAC,EAC1CL,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEF,SACX,CACF,CAAC;EAED,MAAM;MACJQ,KAAK;MACLC,IAAI;MACJC,MAAM;MACNC,QAAQ;MACRC,cAAc;MACdC,IAAI;MACJR,QAAQ;MACRS,OAAO,EAAEC,OAAO,GAAG,OAAO;MAC1BC,QAAQ;MACRC,SAAS;MACTC;IAEF,CAAC,GAAGd,KAAK;IADJe,UAAU,GAAAC,wBAAA,CACXhB,KAAK,EAAAiB,SAAA;EAET,MAAMC,OAAO,GAAGb,IAAI,IAAIS,QAAQ;EAEhC,MAAMK,aAAa,GACjB,CAACnB,KAAK,CAACoB,QAAQ,IACf,CAACd,MAAM,KACN,OAAON,KAAK,CAACqB,OAAO,KAAK,UAAU,IAAIjB,KAAK,CAAC;EAEhD,MAAMkB,MAAM,GAAAC,aAAA;IACVV,SAAS,EAAE5B,UAAU,CACnB,gBAAgB,EAChB,CAACE,MAAM,CAACoB,QAAQ,CAAC,IAAIC,cAAc,KAAK,UAAU,KAC/C,0BAAyB,EAI5BlB,mBAAmB,CAAC,MAAM,EAAEW,QAAQ,EAAEH,OAAO,CAAC,EAC9CT,oBAAoB,CAClB6B,OAAO,GAAAK,aAAA;MAAKC,KAAK,EAAE;IAAO,GAAKxB,KAAK,IAAKN,gBAAgB,CAACM,KAAK,CACjE,CAAC,EACDa,SAAS,EAPTP,MAAM,IAAI,aAAa,EACvBG,IAAI,IAAK,UAASA,IAAK,EAAC,EACxBU,aAAa,IAAI,6BAMnB,CAAC;IACDM,OAAO,EAAErB;EAAK,GACVW,UAAU,CACf;EAEDO,MAAM,CAAC,KAAK,CAAC,GAAGV,QAAQ;EAExBrB,qBAAqB,CAAC+B,MAAM,EAAErB,QAAQ,EAAEH,OAAO,CAAC;EAChDV,qBAAqB,CAACS,UAAU,EAAEyB,MAAM,CAAC;EAEzC,OAAOtC,KAAA,CAAA0C,aAAA,CAACf,OAAO,EAAKW,MAAM,EAAGJ,OAAiB,CAAC;AACjD;AAEAtB,SAAS,CAAC+B,YAAY,GAAG,IAAI;AAC7B/B,SAAS,CAACgC,qBAAqB,GAAG,IAAI"}
@@ -9,7 +9,6 @@
9
9
  display: inline-block;
10
10
  width: auto;
11
11
  padding: 0;
12
- margin-right: 1rem;
13
12
  text-align: left;
14
13
  vertical-align: baseline;
15
14
  white-space: pre-wrap;
@@ -1 +1 @@
1
- .dnb-form-label{color:inherit;display:inline-block;font-size:var(--font-size-basis);margin-right:1rem;padding:0;text-align:left;vertical-align:baseline;white-space:pre-wrap;width:auto;word-break:normal}.dnb-form-label--vertical{display:block;margin-bottom:.5rem;margin-right:0}.dnb-form-label[for]:not([disabled]){-webkit-user-select:none;user-select:none}.dnb-form-label[disabled]{cursor:not-allowed}legend.dnb-form-label{display:inline-block}
1
+ .dnb-form-label{color:inherit;display:inline-block;font-size:var(--font-size-basis);padding:0;text-align:left;vertical-align:baseline;white-space:pre-wrap;width:auto;word-break:normal}.dnb-form-label--vertical{display:block;margin-bottom:.5rem;margin-right:0}.dnb-form-label[for]:not([disabled]){-webkit-user-select:none;user-select:none}.dnb-form-label[disabled]{cursor:not-allowed}legend.dnb-form-label{display:inline-block}
@@ -10,7 +10,6 @@
10
10
 
11
11
  width: auto;
12
12
  padding: 0;
13
- margin-right: 1rem;
14
13
 
15
14
  text-align: left;
16
15
  vertical-align: baseline;
@@ -27,10 +26,6 @@
27
26
  margin-bottom: 0.5rem;
28
27
  }
29
28
 
30
- // Is not in use
31
- // &--vertical-label {
32
- // }
33
-
34
29
  &[for]:not([disabled]) {
35
30
  user-select: none; // Safari / Touch fix
36
31
  }
@@ -53,7 +53,7 @@ export interface GlobalStatusProps
53
53
  */
54
54
  icon_size?: IconSize;
55
55
  /**
56
- * Defines the visual appearance of the status. There are two main statuses `error` and `info`. The default status is `error`.
56
+ * Defines the visual appearance of the status. There are two main statuses `error`, `warning`, `info` and `success`. The default status is `error`.
57
57
  */
58
58
  state?: GlobalStatusState;
59
59
  /**
@@ -481,7 +481,9 @@ export default class GlobalStatus extends React.PureComponent {
481
481
  }, typeof contentToRender === 'string' ? React.createElement("p", {
482
482
  className: "dnb-p"
483
483
  }, contentToRender) : contentToRender, renderedItems)), _Hr || (_Hr = React.createElement(Hr, {
484
- fullscreen: true
484
+ fullscreen: true,
485
+ bottom: 0,
486
+ left: 1
485
487
  }))));
486
488
  return React.createElement("div", _extends({}, wrapperParams, {
487
489
  ref: this._wrapperRef