@dnb/eufemia 10.14.0 → 10.15.1

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 (1059) hide show
  1. package/CHANGELOG.md +67 -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 -49
  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 +134 -102
  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/anchor/style/dnb-anchor.css +17 -52
  18. package/cjs/components/anchor/style/dnb-anchor.min.css +1 -1
  19. package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +0 -6
  20. package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  21. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +8 -52
  22. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  23. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.css +0 -6
  24. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  25. package/cjs/components/autocomplete/Autocomplete.d.ts +4 -0
  26. package/cjs/components/autocomplete/Autocomplete.js +98 -80
  27. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  28. package/cjs/components/autocomplete/style/dnb-autocomplete.css +1 -0
  29. package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  30. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +2 -4
  31. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  32. package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
  33. package/cjs/components/button/Button.d.ts +1 -1
  34. package/cjs/components/button/Button.js +9 -5
  35. package/cjs/components/button/Button.js.map +1 -1
  36. package/cjs/components/button/style/dnb-button.css +1 -0
  37. package/cjs/components/button/style/dnb-button.min.css +1 -1
  38. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.css +0 -25
  39. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.min.css +1 -1
  40. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +0 -72
  41. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -3
  42. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
  43. package/cjs/components/button/style/themes/dnb-button-theme-ui.css +0 -25
  44. package/cjs/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  45. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  46. package/cjs/components/card/style/dnb-card.css +10 -0
  47. package/cjs/components/card/style/dnb-card.min.css +1 -1
  48. package/cjs/components/card/style/dnb-card.scss +8 -0
  49. package/cjs/components/checkbox/Checkbox.js +9 -3
  50. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  51. package/cjs/components/checkbox/style/dnb-checkbox.css +129 -0
  52. package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
  53. package/cjs/components/checkbox/style/dnb-checkbox.scss +199 -0
  54. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
  55. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
  56. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
  57. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
  58. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
  59. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
  60. package/cjs/components/date-picker/DatePicker.d.ts +1 -1
  61. package/cjs/components/date-picker/DatePicker.js +4 -1
  62. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  63. package/cjs/components/date-picker/DatePickerInput.d.ts +1 -1
  64. package/cjs/components/date-picker/style/dnb-date-picker.css +0 -1
  65. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  66. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +1 -0
  67. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  68. package/cjs/components/dialog/style/dnb-dialog.css +0 -1
  69. package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
  70. package/cjs/components/dropdown/Dropdown.js +2 -2
  71. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  72. package/cjs/components/flex/Container.js +2 -1
  73. package/cjs/components/flex/Container.js.map +1 -1
  74. package/cjs/components/flex/style/dnb-flex.css +1 -2
  75. package/cjs/components/flex/style/dnb-flex.min.css +1 -1
  76. package/cjs/components/flex/style/flex-container.scss +1 -1
  77. package/cjs/components/form-label/FormLabel.d.ts +8 -3
  78. package/cjs/components/form-label/FormLabel.js +14 -11
  79. package/cjs/components/form-label/FormLabel.js.map +1 -1
  80. package/cjs/components/form-label/style/dnb-form-label.css +0 -1
  81. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  82. package/cjs/components/form-label/style/dnb-form-label.scss +0 -5
  83. package/cjs/components/global-error/style/dnb-global-error.css +0 -4
  84. package/cjs/components/global-error/style/dnb-global-error.min.css +1 -1
  85. package/cjs/components/global-status/GlobalStatus.d.ts +1 -1
  86. package/cjs/components/global-status/GlobalStatus.js +3 -1
  87. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  88. package/cjs/components/global-status/style/dnb-global-status.css +0 -7
  89. package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
  90. package/cjs/components/global-status/style/dnb-global-status.scss +0 -11
  91. package/cjs/components/grid/style/dnb-grid.css +0 -2
  92. package/cjs/components/grid/style/dnb-grid.min.css +1 -1
  93. package/cjs/components/info-card/style/dnb-info-card.css +1 -4
  94. package/cjs/components/info-card/style/dnb-info-card.min.css +1 -1
  95. package/cjs/components/input/style/dnb-input.css +13 -3
  96. package/cjs/components/input/style/dnb-input.min.css +1 -1
  97. package/cjs/components/input/style/dnb-input.scss +14 -8
  98. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.css +0 -9
  99. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -1
  100. package/cjs/components/input-masked/MultiInputMask.d.ts +6 -2
  101. package/cjs/components/input-masked/MultiInputMask.js +21 -17
  102. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  103. package/cjs/components/input-masked/style/dnb-input-masked.css +3 -4
  104. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  105. package/cjs/components/input-masked/style/dnb-input-masked.scss +1 -1
  106. package/cjs/components/number-format/NumberUtils.d.ts +1 -1
  107. package/cjs/components/pagination/style/dnb-pagination.css +0 -1
  108. package/cjs/components/pagination/style/dnb-pagination.min.css +1 -1
  109. package/cjs/components/progress-indicator/style/dnb-progress-indicator.css +1 -4
  110. package/cjs/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  111. package/cjs/components/radio/Radio.js +13 -7
  112. package/cjs/components/radio/Radio.js.map +1 -1
  113. package/cjs/components/radio/RadioGroup.js +3 -2
  114. package/cjs/components/radio/RadioGroup.js.map +1 -1
  115. package/cjs/components/radio/style/dnb-radio.css +33 -8
  116. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  117. package/cjs/components/radio/style/dnb-radio.scss +59 -9
  118. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.css +17 -8
  119. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -1
  120. package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.scss +17 -8
  121. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.css +6 -1
  122. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  123. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +6 -1
  124. package/cjs/components/section/Section.d.ts +5 -0
  125. package/cjs/components/section/Section.js +3 -2
  126. package/cjs/components/section/Section.js.map +1 -1
  127. package/cjs/components/section/style/dnb-section.css +10 -0
  128. package/cjs/components/section/style/dnb-section.min.css +3 -3
  129. package/cjs/components/section/style/dnb-section.scss +11 -0
  130. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +0 -9
  131. package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  132. package/cjs/components/skeleton/style/dnb-skeleton.css +0 -2
  133. package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
  134. package/cjs/components/skip-content/style/dnb-skip-content.css +1 -4
  135. package/cjs/components/skip-content/style/dnb-skip-content.min.css +1 -1
  136. package/cjs/components/switch/Switch.js +9 -3
  137. package/cjs/components/switch/Switch.js.map +1 -1
  138. package/cjs/components/switch/style/dnb-switch.css +43 -9
  139. package/cjs/components/switch/style/dnb-switch.min.css +1 -1
  140. package/cjs/components/switch/style/dnb-switch.scss +49 -22
  141. package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
  142. package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
  143. package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
  144. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
  145. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  146. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
  147. package/cjs/components/table/style/dnb-table.css +1 -4
  148. package/cjs/components/table/style/dnb-table.min.css +1 -1
  149. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.css +0 -3
  150. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  151. package/cjs/components/tabs/style/dnb-tabs.css +1 -0
  152. package/cjs/components/tabs/style/dnb-tabs.min.css +1 -1
  153. package/cjs/components/tag/style/dnb-tag.css +0 -1
  154. package/cjs/components/tag/style/dnb-tag.min.css +1 -1
  155. package/cjs/components/textarea/Textarea.js +4 -1
  156. package/cjs/components/textarea/Textarea.js.map +1 -1
  157. package/cjs/components/textarea/style/dnb-textarea.css +5 -2
  158. package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
  159. package/cjs/components/textarea/style/dnb-textarea.scss +2 -2
  160. package/cjs/components/toggle-button/ToggleButtonGroup.js +3 -2
  161. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  162. package/cjs/components/toggle-button/style/dnb-toggle-button.css +3 -7
  163. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  164. package/cjs/components/toggle-button/style/dnb-toggle-button.scss +4 -14
  165. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
  166. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
  167. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
  168. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
  169. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
  170. package/cjs/components/upload/style/dnb-upload.css +3 -12
  171. package/cjs/components/upload/style/dnb-upload.min.css +1 -1
  172. package/cjs/elements/hr/style/dnb-hr.scss +16 -30
  173. package/cjs/elements/hr/style/hr-mixins.scss +5 -7
  174. package/cjs/extensions/forms/DataContext/Context.d.ts +1 -1
  175. package/cjs/extensions/forms/DataContext/Context.js +1 -1
  176. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  177. package/cjs/extensions/forms/DataContext/Provider/Provider.js +9 -5
  178. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  179. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -8
  180. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  181. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
  182. package/cjs/extensions/forms/Field/Currency/Currency.d.ts +3 -1
  183. package/cjs/extensions/forms/Field/Currency/Currency.js +7 -2
  184. package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
  185. package/cjs/extensions/forms/Field/Expiry/Expiry.js +6 -4
  186. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  187. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.css +2 -8
  188. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -1
  189. package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.scss +5 -5
  190. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
  191. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  192. package/cjs/extensions/forms/Field/Number/Number.js +11 -12
  193. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  194. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
  195. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +134 -70
  196. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  197. package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
  198. package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
  199. package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
  200. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
  201. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
  202. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  203. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -16
  204. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  205. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -14
  206. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
  207. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +189 -17
  208. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  209. package/cjs/extensions/forms/Field/Selection/Selection.js +1 -0
  210. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  211. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
  212. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  213. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
  214. package/cjs/extensions/forms/Field/String/String.js +8 -9
  215. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  216. package/cjs/extensions/forms/Field/Toggle/Toggle.js +4 -2
  217. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  218. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  219. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +16 -19
  220. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  221. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  222. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  223. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
  224. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  225. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
  226. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +0 -1
  227. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  228. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +0 -6
  229. package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  230. package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +0 -3
  231. package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
  232. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +0 -1
  233. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  234. package/cjs/extensions/forms/constants/countries.d.ts +9 -6
  235. package/cjs/extensions/forms/constants/countries.js +19 -9
  236. package/cjs/extensions/forms/constants/countries.js.map +1 -1
  237. package/cjs/extensions/forms/hooks/useDataValue.d.ts +2 -0
  238. package/cjs/extensions/forms/hooks/useDataValue.js +31 -21
  239. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  240. package/cjs/extensions/forms/index.d.ts +1 -1
  241. package/cjs/extensions/forms/index.js +12 -0
  242. package/cjs/extensions/forms/index.js.map +1 -1
  243. package/cjs/extensions/forms/style/dnb-forms.css +89 -131
  244. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  245. package/cjs/extensions/forms/style/dnb-forms.scss +1 -6
  246. package/cjs/extensions/forms/types.d.ts +5 -4
  247. package/cjs/extensions/forms/types.js.map +1 -1
  248. package/cjs/extensions/payment-card/PaymentCard.d.ts +3 -2
  249. package/cjs/extensions/payment-card/PaymentCard.js +16 -37
  250. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  251. package/cjs/extensions/payment-card/icons/index.js +3 -1
  252. package/cjs/extensions/payment-card/icons/index.js.map +1 -1
  253. package/cjs/extensions/payment-card/style/dnb-payment-card.css +0 -2
  254. package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  255. package/cjs/extensions/style/index.d.ts +5 -1
  256. package/cjs/extensions/style/index.js +2 -0
  257. package/cjs/extensions/style/index.js.map +1 -1
  258. package/cjs/icons/dnb/icons-meta.json +2 -2
  259. package/cjs/icons/icons-meta.json +2 -2
  260. package/cjs/shared/Eufemia.d.ts +1 -1
  261. package/cjs/shared/Eufemia.js +2 -2
  262. package/cjs/shared/Eufemia.js.map +1 -1
  263. package/cjs/shared/helpers/filterValidProps.d.ts +3 -7
  264. package/cjs/shared/helpers/filterValidProps.js +8 -4
  265. package/cjs/shared/helpers/filterValidProps.js.map +1 -1
  266. package/cjs/shared/helpers/withCamelCaseProps.d.ts +1 -0
  267. package/cjs/shared/helpers/withCamelCaseProps.js +6 -4
  268. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  269. package/cjs/shared/helpers/withSnakeCaseProps.js +5 -4
  270. package/cjs/shared/helpers/withSnakeCaseProps.js.map +1 -1
  271. package/cjs/shared/locales/en-GB.d.ts +1 -1
  272. package/cjs/shared/locales/en-GB.js +4 -4
  273. package/cjs/shared/locales/en-GB.js.map +1 -1
  274. package/cjs/shared/locales/en-US.d.ts +1 -1
  275. package/cjs/shared/locales/index.d.ts +2 -2
  276. package/cjs/shared/locales/nb-NO.d.ts +1 -1
  277. package/cjs/shared/locales/nb-NO.js +4 -4
  278. package/cjs/shared/locales/nb-NO.js.map +1 -1
  279. package/cjs/style/core/utilities.scss +1 -1
  280. package/cjs/style/dnb-ui-basis.css +3 -0
  281. package/cjs/style/dnb-ui-basis.min.css +1 -1
  282. package/cjs/style/dnb-ui-body.css +3 -1
  283. package/cjs/style/dnb-ui-body.min.css +1 -1
  284. package/cjs/style/dnb-ui-components.css +586 -208
  285. package/cjs/style/dnb-ui-components.min.css +6 -4
  286. package/cjs/style/dnb-ui-components.scss +2 -1
  287. package/cjs/style/dnb-ui-core.css +4 -1
  288. package/cjs/style/dnb-ui-core.min.css +1 -1
  289. package/cjs/style/dnb-ui-elements.css +17 -26
  290. package/cjs/style/dnb-ui-elements.min.css +1 -1
  291. package/cjs/style/dnb-ui-extensions.css +89 -133
  292. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  293. package/cjs/style/dnb-ui-forms.css +229 -0
  294. package/cjs/style/dnb-ui-forms.min.css +1 -0
  295. package/cjs/style/dnb-ui-forms.scss +19 -0
  296. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -36
  297. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  298. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +997 -469
  299. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
  300. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  301. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +17 -36
  302. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  303. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +89 -133
  304. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  305. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +238 -0
  306. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
  307. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
  308. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +17 -26
  309. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  310. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +1186 -823
  311. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +17 -9
  312. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
  313. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +17 -26
  314. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  315. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +89 -133
  316. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  317. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +238 -0
  318. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
  319. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
  320. package/cjs/style/themes/theme-ui/ui-theme-basis.css +17 -36
  321. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  322. package/cjs/style/themes/theme-ui/ui-theme-components.css +997 -468
  323. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +35 -7
  324. package/cjs/style/themes/theme-ui/ui-theme-components.scss +1 -0
  325. package/cjs/style/themes/theme-ui/ui-theme-elements.css +17 -36
  326. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  327. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +89 -133
  328. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  329. package/cjs/style/themes/theme-ui/ui-theme-forms.css +238 -0
  330. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
  331. package/cjs/style/themes/theme-ui/ui-theme-forms.scss +15 -0
  332. package/cjs/style/themes/theme-ui/ui-theme-tags.css +12 -25
  333. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  334. package/components/accordion/AccordionHeader.d.ts +2 -1
  335. package/components/accordion/AccordionHeader.js +3 -2
  336. package/components/accordion/AccordionHeader.js.map +1 -1
  337. package/components/accordion/style/dnb-accordion.css +13 -5
  338. package/components/accordion/style/dnb-accordion.min.css +3 -1
  339. package/components/accordion/style/dnb-accordion.scss +16 -5
  340. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -49
  341. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  342. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
  343. package/components/accordion/style/themes/dnb-accordion-theme-ui.css +134 -102
  344. package/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
  345. package/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
  346. package/components/anchor/Anchor.d.ts +1 -0
  347. package/components/anchor/Anchor.js +5 -4
  348. package/components/anchor/Anchor.js.map +1 -1
  349. package/components/anchor/style/dnb-anchor.css +17 -52
  350. package/components/anchor/style/dnb-anchor.min.css +1 -1
  351. package/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +0 -6
  352. package/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  353. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +8 -52
  354. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  355. package/components/anchor/style/themes/dnb-anchor-theme-ui.css +0 -6
  356. package/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  357. package/components/autocomplete/Autocomplete.d.ts +4 -0
  358. package/components/autocomplete/Autocomplete.js +98 -80
  359. package/components/autocomplete/Autocomplete.js.map +1 -1
  360. package/components/autocomplete/style/dnb-autocomplete.css +1 -0
  361. package/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  362. package/components/breadcrumb/style/dnb-breadcrumb.css +2 -4
  363. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  364. package/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
  365. package/components/button/Button.d.ts +1 -1
  366. package/components/button/Button.js +10 -6
  367. package/components/button/Button.js.map +1 -1
  368. package/components/button/style/dnb-button.css +1 -0
  369. package/components/button/style/dnb-button.min.css +1 -1
  370. package/components/button/style/themes/dnb-button-theme-eiendom.css +0 -25
  371. package/components/button/style/themes/dnb-button-theme-eiendom.min.css +1 -1
  372. package/components/button/style/themes/dnb-button-theme-sbanken.css +0 -72
  373. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -3
  374. package/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
  375. package/components/button/style/themes/dnb-button-theme-ui.css +0 -25
  376. package/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  377. package/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  378. package/components/card/style/dnb-card.css +10 -0
  379. package/components/card/style/dnb-card.min.css +1 -1
  380. package/components/card/style/dnb-card.scss +8 -0
  381. package/components/checkbox/Checkbox.js +9 -3
  382. package/components/checkbox/Checkbox.js.map +1 -1
  383. package/components/checkbox/style/dnb-checkbox.css +129 -0
  384. package/components/checkbox/style/dnb-checkbox.min.css +1 -1
  385. package/components/checkbox/style/dnb-checkbox.scss +199 -0
  386. package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
  387. package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
  388. package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
  389. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
  390. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
  391. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
  392. package/components/date-picker/DatePicker.d.ts +1 -1
  393. package/components/date-picker/DatePicker.js +4 -1
  394. package/components/date-picker/DatePicker.js.map +1 -1
  395. package/components/date-picker/DatePickerInput.d.ts +1 -1
  396. package/components/date-picker/style/dnb-date-picker.css +0 -1
  397. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  398. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +1 -0
  399. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  400. package/components/dialog/style/dnb-dialog.css +0 -1
  401. package/components/dialog/style/dnb-dialog.min.css +1 -1
  402. package/components/dropdown/Dropdown.js +2 -2
  403. package/components/dropdown/Dropdown.js.map +1 -1
  404. package/components/flex/Container.js +2 -1
  405. package/components/flex/Container.js.map +1 -1
  406. package/components/flex/style/dnb-flex.css +1 -2
  407. package/components/flex/style/dnb-flex.min.css +1 -1
  408. package/components/flex/style/flex-container.scss +1 -1
  409. package/components/form-label/FormLabel.d.ts +8 -3
  410. package/components/form-label/FormLabel.js +14 -11
  411. package/components/form-label/FormLabel.js.map +1 -1
  412. package/components/form-label/style/dnb-form-label.css +0 -1
  413. package/components/form-label/style/dnb-form-label.min.css +1 -1
  414. package/components/form-label/style/dnb-form-label.scss +0 -5
  415. package/components/global-error/style/dnb-global-error.css +0 -4
  416. package/components/global-error/style/dnb-global-error.min.css +1 -1
  417. package/components/global-status/GlobalStatus.d.ts +1 -1
  418. package/components/global-status/GlobalStatus.js +3 -1
  419. package/components/global-status/GlobalStatus.js.map +1 -1
  420. package/components/global-status/style/dnb-global-status.css +0 -7
  421. package/components/global-status/style/dnb-global-status.min.css +1 -1
  422. package/components/global-status/style/dnb-global-status.scss +0 -11
  423. package/components/grid/style/dnb-grid.css +0 -2
  424. package/components/grid/style/dnb-grid.min.css +1 -1
  425. package/components/info-card/style/dnb-info-card.css +1 -4
  426. package/components/info-card/style/dnb-info-card.min.css +1 -1
  427. package/components/input/style/dnb-input.css +13 -3
  428. package/components/input/style/dnb-input.min.css +1 -1
  429. package/components/input/style/dnb-input.scss +14 -8
  430. package/components/input/style/themes/dnb-input-theme-sbanken.css +0 -9
  431. package/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -1
  432. package/components/input-masked/MultiInputMask.d.ts +6 -2
  433. package/components/input-masked/MultiInputMask.js +22 -18
  434. package/components/input-masked/MultiInputMask.js.map +1 -1
  435. package/components/input-masked/style/dnb-input-masked.css +3 -4
  436. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  437. package/components/input-masked/style/dnb-input-masked.scss +1 -1
  438. package/components/number-format/NumberUtils.d.ts +1 -1
  439. package/components/pagination/style/dnb-pagination.css +0 -1
  440. package/components/pagination/style/dnb-pagination.min.css +1 -1
  441. package/components/progress-indicator/style/dnb-progress-indicator.css +1 -4
  442. package/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  443. package/components/radio/Radio.js +13 -7
  444. package/components/radio/Radio.js.map +1 -1
  445. package/components/radio/RadioGroup.js +3 -2
  446. package/components/radio/RadioGroup.js.map +1 -1
  447. package/components/radio/style/dnb-radio.css +33 -8
  448. package/components/radio/style/dnb-radio.min.css +1 -1
  449. package/components/radio/style/dnb-radio.scss +59 -9
  450. package/components/radio/style/themes/dnb-radio-theme-sbanken.css +17 -8
  451. package/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -1
  452. package/components/radio/style/themes/dnb-radio-theme-sbanken.scss +17 -8
  453. package/components/radio/style/themes/dnb-radio-theme-ui.css +6 -1
  454. package/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  455. package/components/radio/style/themes/dnb-radio-theme-ui.scss +6 -1
  456. package/components/section/Section.d.ts +5 -0
  457. package/components/section/Section.js +3 -2
  458. package/components/section/Section.js.map +1 -1
  459. package/components/section/style/dnb-section.css +10 -0
  460. package/components/section/style/dnb-section.min.css +3 -3
  461. package/components/section/style/dnb-section.scss +11 -0
  462. package/components/section/style/themes/dnb-section-theme-ui.css +0 -9
  463. package/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  464. package/components/skeleton/style/dnb-skeleton.css +0 -2
  465. package/components/skeleton/style/dnb-skeleton.min.css +1 -1
  466. package/components/skip-content/style/dnb-skip-content.css +1 -4
  467. package/components/skip-content/style/dnb-skip-content.min.css +1 -1
  468. package/components/switch/Switch.js +9 -3
  469. package/components/switch/Switch.js.map +1 -1
  470. package/components/switch/style/dnb-switch.css +43 -9
  471. package/components/switch/style/dnb-switch.min.css +1 -1
  472. package/components/switch/style/dnb-switch.scss +49 -22
  473. package/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
  474. package/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
  475. package/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
  476. package/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
  477. package/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  478. package/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
  479. package/components/table/style/dnb-table.css +1 -4
  480. package/components/table/style/dnb-table.min.css +1 -1
  481. package/components/table/style/themes/dnb-table-theme-sbanken.css +0 -3
  482. package/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  483. package/components/tabs/style/dnb-tabs.css +1 -0
  484. package/components/tabs/style/dnb-tabs.min.css +1 -1
  485. package/components/tag/style/dnb-tag.css +0 -1
  486. package/components/tag/style/dnb-tag.min.css +1 -1
  487. package/components/textarea/Textarea.js +4 -1
  488. package/components/textarea/Textarea.js.map +1 -1
  489. package/components/textarea/style/dnb-textarea.css +5 -2
  490. package/components/textarea/style/dnb-textarea.min.css +1 -1
  491. package/components/textarea/style/dnb-textarea.scss +2 -2
  492. package/components/toggle-button/ToggleButtonGroup.js +3 -2
  493. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  494. package/components/toggle-button/style/dnb-toggle-button.css +3 -7
  495. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  496. package/components/toggle-button/style/dnb-toggle-button.scss +4 -14
  497. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
  498. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
  499. package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
  500. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
  501. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
  502. package/components/upload/style/dnb-upload.css +3 -12
  503. package/components/upload/style/dnb-upload.min.css +1 -1
  504. package/elements/hr/style/dnb-hr.scss +16 -30
  505. package/elements/hr/style/hr-mixins.scss +5 -7
  506. package/es/components/accordion/AccordionHeader.d.ts +2 -1
  507. package/es/components/accordion/AccordionHeader.js +3 -2
  508. package/es/components/accordion/AccordionHeader.js.map +1 -1
  509. package/es/components/accordion/style/dnb-accordion.css +13 -5
  510. package/es/components/accordion/style/dnb-accordion.min.css +3 -1
  511. package/es/components/accordion/style/dnb-accordion.scss +16 -5
  512. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -49
  513. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
  514. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
  515. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.css +134 -102
  516. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
  517. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
  518. package/es/components/anchor/Anchor.d.ts +1 -0
  519. package/es/components/anchor/Anchor.js +5 -4
  520. package/es/components/anchor/Anchor.js.map +1 -1
  521. package/es/components/anchor/style/dnb-anchor.css +17 -52
  522. package/es/components/anchor/style/dnb-anchor.min.css +1 -1
  523. package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +0 -6
  524. package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  525. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +8 -52
  526. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  527. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.css +0 -6
  528. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  529. package/es/components/autocomplete/Autocomplete.d.ts +4 -0
  530. package/es/components/autocomplete/Autocomplete.js +94 -75
  531. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  532. package/es/components/autocomplete/style/dnb-autocomplete.css +1 -0
  533. package/es/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
  534. package/es/components/breadcrumb/style/dnb-breadcrumb.css +2 -4
  535. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  536. package/es/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
  537. package/es/components/button/Button.d.ts +1 -1
  538. package/es/components/button/Button.js +10 -6
  539. package/es/components/button/Button.js.map +1 -1
  540. package/es/components/button/style/dnb-button.css +1 -0
  541. package/es/components/button/style/dnb-button.min.css +1 -1
  542. package/es/components/button/style/themes/dnb-button-theme-eiendom.css +0 -25
  543. package/es/components/button/style/themes/dnb-button-theme-eiendom.min.css +1 -1
  544. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +0 -72
  545. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -3
  546. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
  547. package/es/components/button/style/themes/dnb-button-theme-ui.css +0 -25
  548. package/es/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
  549. package/es/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  550. package/es/components/card/style/dnb-card.css +10 -0
  551. package/es/components/card/style/dnb-card.min.css +1 -1
  552. package/es/components/card/style/dnb-card.scss +8 -0
  553. package/es/components/checkbox/Checkbox.js +9 -3
  554. package/es/components/checkbox/Checkbox.js.map +1 -1
  555. package/es/components/checkbox/style/dnb-checkbox.css +129 -0
  556. package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
  557. package/es/components/checkbox/style/dnb-checkbox.scss +199 -0
  558. package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
  559. package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
  560. package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
  561. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
  562. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
  563. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
  564. package/es/components/date-picker/DatePicker.d.ts +1 -1
  565. package/es/components/date-picker/DatePicker.js +4 -1
  566. package/es/components/date-picker/DatePicker.js.map +1 -1
  567. package/es/components/date-picker/DatePickerInput.d.ts +1 -1
  568. package/es/components/date-picker/style/dnb-date-picker.css +0 -1
  569. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  570. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +1 -0
  571. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  572. package/es/components/dialog/style/dnb-dialog.css +0 -1
  573. package/es/components/dialog/style/dnb-dialog.min.css +1 -1
  574. package/es/components/dropdown/Dropdown.js +2 -2
  575. package/es/components/dropdown/Dropdown.js.map +1 -1
  576. package/es/components/flex/Container.js +2 -1
  577. package/es/components/flex/Container.js.map +1 -1
  578. package/es/components/flex/style/dnb-flex.css +1 -2
  579. package/es/components/flex/style/dnb-flex.min.css +1 -1
  580. package/es/components/flex/style/flex-container.scss +1 -1
  581. package/es/components/form-label/FormLabel.d.ts +8 -3
  582. package/es/components/form-label/FormLabel.js +14 -11
  583. package/es/components/form-label/FormLabel.js.map +1 -1
  584. package/es/components/form-label/style/dnb-form-label.css +0 -1
  585. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  586. package/es/components/form-label/style/dnb-form-label.scss +0 -5
  587. package/es/components/global-error/style/dnb-global-error.css +0 -4
  588. package/es/components/global-error/style/dnb-global-error.min.css +1 -1
  589. package/es/components/global-status/GlobalStatus.d.ts +1 -1
  590. package/es/components/global-status/GlobalStatus.js +3 -1
  591. package/es/components/global-status/GlobalStatus.js.map +1 -1
  592. package/es/components/global-status/style/dnb-global-status.css +0 -7
  593. package/es/components/global-status/style/dnb-global-status.min.css +1 -1
  594. package/es/components/global-status/style/dnb-global-status.scss +0 -11
  595. package/es/components/grid/style/dnb-grid.css +0 -2
  596. package/es/components/grid/style/dnb-grid.min.css +1 -1
  597. package/es/components/info-card/style/dnb-info-card.css +1 -4
  598. package/es/components/info-card/style/dnb-info-card.min.css +1 -1
  599. package/es/components/input/style/dnb-input.css +13 -3
  600. package/es/components/input/style/dnb-input.min.css +1 -1
  601. package/es/components/input/style/dnb-input.scss +14 -8
  602. package/es/components/input/style/themes/dnb-input-theme-sbanken.css +0 -9
  603. package/es/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -1
  604. package/es/components/input-masked/MultiInputMask.d.ts +6 -2
  605. package/es/components/input-masked/MultiInputMask.js +24 -19
  606. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  607. package/es/components/input-masked/style/dnb-input-masked.css +3 -4
  608. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  609. package/es/components/input-masked/style/dnb-input-masked.scss +1 -1
  610. package/es/components/number-format/NumberUtils.d.ts +1 -1
  611. package/es/components/pagination/style/dnb-pagination.css +0 -1
  612. package/es/components/pagination/style/dnb-pagination.min.css +1 -1
  613. package/es/components/progress-indicator/style/dnb-progress-indicator.css +1 -4
  614. package/es/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  615. package/es/components/radio/Radio.js +13 -7
  616. package/es/components/radio/Radio.js.map +1 -1
  617. package/es/components/radio/RadioGroup.js +3 -2
  618. package/es/components/radio/RadioGroup.js.map +1 -1
  619. package/es/components/radio/style/dnb-radio.css +33 -8
  620. package/es/components/radio/style/dnb-radio.min.css +1 -1
  621. package/es/components/radio/style/dnb-radio.scss +59 -9
  622. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.css +17 -8
  623. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -1
  624. package/es/components/radio/style/themes/dnb-radio-theme-sbanken.scss +17 -8
  625. package/es/components/radio/style/themes/dnb-radio-theme-ui.css +6 -1
  626. package/es/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
  627. package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +6 -1
  628. package/es/components/section/Section.d.ts +5 -0
  629. package/es/components/section/Section.js +3 -2
  630. package/es/components/section/Section.js.map +1 -1
  631. package/es/components/section/style/dnb-section.css +10 -0
  632. package/es/components/section/style/dnb-section.min.css +3 -3
  633. package/es/components/section/style/dnb-section.scss +11 -0
  634. package/es/components/section/style/themes/dnb-section-theme-ui.css +0 -9
  635. package/es/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  636. package/es/components/skeleton/style/dnb-skeleton.css +0 -2
  637. package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
  638. package/es/components/skip-content/style/dnb-skip-content.css +1 -4
  639. package/es/components/skip-content/style/dnb-skip-content.min.css +1 -1
  640. package/es/components/switch/Switch.js +9 -3
  641. package/es/components/switch/Switch.js.map +1 -1
  642. package/es/components/switch/style/dnb-switch.css +43 -9
  643. package/es/components/switch/style/dnb-switch.min.css +1 -1
  644. package/es/components/switch/style/dnb-switch.scss +49 -22
  645. package/es/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
  646. package/es/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
  647. package/es/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
  648. package/es/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
  649. package/es/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  650. package/es/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
  651. package/es/components/table/style/dnb-table.css +1 -4
  652. package/es/components/table/style/dnb-table.min.css +1 -1
  653. package/es/components/table/style/themes/dnb-table-theme-sbanken.css +0 -3
  654. package/es/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
  655. package/es/components/tabs/style/dnb-tabs.css +1 -0
  656. package/es/components/tabs/style/dnb-tabs.min.css +1 -1
  657. package/es/components/tag/style/dnb-tag.css +0 -1
  658. package/es/components/tag/style/dnb-tag.min.css +1 -1
  659. package/es/components/textarea/Textarea.js +4 -1
  660. package/es/components/textarea/Textarea.js.map +1 -1
  661. package/es/components/textarea/style/dnb-textarea.css +5 -2
  662. package/es/components/textarea/style/dnb-textarea.min.css +1 -1
  663. package/es/components/textarea/style/dnb-textarea.scss +2 -2
  664. package/es/components/toggle-button/ToggleButtonGroup.js +3 -2
  665. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  666. package/es/components/toggle-button/style/dnb-toggle-button.css +3 -7
  667. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  668. package/es/components/toggle-button/style/dnb-toggle-button.scss +4 -14
  669. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
  670. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
  671. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
  672. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
  673. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
  674. package/es/components/upload/style/dnb-upload.css +3 -12
  675. package/es/components/upload/style/dnb-upload.min.css +1 -1
  676. package/es/elements/hr/style/dnb-hr.scss +16 -30
  677. package/es/elements/hr/style/hr-mixins.scss +5 -7
  678. package/es/extensions/forms/DataContext/Context.d.ts +1 -1
  679. package/es/extensions/forms/DataContext/Context.js +1 -1
  680. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  681. package/es/extensions/forms/DataContext/Provider/Provider.js +9 -5
  682. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  683. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -8
  684. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  685. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
  686. package/es/extensions/forms/Field/Currency/Currency.d.ts +3 -1
  687. package/es/extensions/forms/Field/Currency/Currency.js +8 -2
  688. package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
  689. package/es/extensions/forms/Field/Expiry/Expiry.js +6 -4
  690. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  691. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.css +2 -8
  692. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -1
  693. package/es/extensions/forms/Field/Expiry/style/dnb-expiry.scss +5 -5
  694. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
  695. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  696. package/es/extensions/forms/Field/Number/Number.js +11 -12
  697. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  698. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
  699. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +128 -61
  700. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  701. package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
  702. package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
  703. package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
  704. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
  705. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
  706. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  707. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -16
  708. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  709. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -14
  710. package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
  711. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +176 -18
  712. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  713. package/es/extensions/forms/Field/Selection/Selection.js +1 -0
  714. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  715. package/es/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
  716. package/es/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  717. package/es/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
  718. package/es/extensions/forms/Field/String/String.js +8 -9
  719. package/es/extensions/forms/Field/String/String.js.map +1 -1
  720. package/es/extensions/forms/Field/Toggle/Toggle.js +4 -2
  721. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  722. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  723. package/es/extensions/forms/FieldBlock/FieldBlock.js +16 -19
  724. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  725. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  726. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  727. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
  728. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  729. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
  730. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +0 -1
  731. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  732. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +0 -6
  733. package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  734. package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +0 -3
  735. package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
  736. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +0 -1
  737. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  738. package/es/extensions/forms/constants/countries.d.ts +9 -6
  739. package/es/extensions/forms/constants/countries.js +17 -8
  740. package/es/extensions/forms/constants/countries.js.map +1 -1
  741. package/es/extensions/forms/hooks/useDataValue.d.ts +2 -0
  742. package/es/extensions/forms/hooks/useDataValue.js +26 -20
  743. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  744. package/es/extensions/forms/index.d.ts +1 -1
  745. package/es/extensions/forms/index.js +1 -0
  746. package/es/extensions/forms/index.js.map +1 -1
  747. package/es/extensions/forms/style/dnb-forms.css +89 -131
  748. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  749. package/es/extensions/forms/style/dnb-forms.scss +1 -6
  750. package/es/extensions/forms/types.d.ts +5 -4
  751. package/es/extensions/forms/types.js.map +1 -1
  752. package/es/extensions/payment-card/PaymentCard.d.ts +3 -2
  753. package/es/extensions/payment-card/PaymentCard.js +16 -37
  754. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  755. package/es/extensions/payment-card/icons/index.js +4 -2
  756. package/es/extensions/payment-card/icons/index.js.map +1 -1
  757. package/es/extensions/payment-card/style/dnb-payment-card.css +0 -2
  758. package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  759. package/es/extensions/style/index.d.ts +5 -1
  760. package/es/extensions/style/index.js +4 -1
  761. package/es/extensions/style/index.js.map +1 -1
  762. package/es/icons/dnb/icons-meta.json +2 -2
  763. package/es/icons/icons-meta.json +2 -2
  764. package/es/shared/Eufemia.d.ts +1 -1
  765. package/es/shared/Eufemia.js +2 -2
  766. package/es/shared/Eufemia.js.map +1 -1
  767. package/es/shared/helpers/filterValidProps.d.ts +3 -7
  768. package/es/shared/helpers/filterValidProps.js +9 -3
  769. package/es/shared/helpers/filterValidProps.js.map +1 -1
  770. package/es/shared/helpers/withCamelCaseProps.d.ts +1 -0
  771. package/es/shared/helpers/withCamelCaseProps.js +6 -5
  772. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  773. package/es/shared/helpers/withSnakeCaseProps.js +5 -4
  774. package/es/shared/helpers/withSnakeCaseProps.js.map +1 -1
  775. package/es/shared/locales/en-GB.d.ts +1 -1
  776. package/es/shared/locales/en-GB.js +4 -4
  777. package/es/shared/locales/en-GB.js.map +1 -1
  778. package/es/shared/locales/en-US.d.ts +1 -1
  779. package/es/shared/locales/index.d.ts +2 -2
  780. package/es/shared/locales/nb-NO.d.ts +1 -1
  781. package/es/shared/locales/nb-NO.js +4 -4
  782. package/es/shared/locales/nb-NO.js.map +1 -1
  783. package/es/style/core/utilities.scss +1 -1
  784. package/es/style/dnb-ui-basis.css +3 -0
  785. package/es/style/dnb-ui-basis.min.css +1 -1
  786. package/es/style/dnb-ui-body.css +3 -1
  787. package/es/style/dnb-ui-body.min.css +1 -1
  788. package/es/style/dnb-ui-components.css +586 -208
  789. package/es/style/dnb-ui-components.min.css +6 -4
  790. package/es/style/dnb-ui-components.scss +2 -1
  791. package/es/style/dnb-ui-core.css +4 -1
  792. package/es/style/dnb-ui-core.min.css +1 -1
  793. package/es/style/dnb-ui-elements.css +17 -26
  794. package/es/style/dnb-ui-elements.min.css +1 -1
  795. package/es/style/dnb-ui-extensions.css +89 -133
  796. package/es/style/dnb-ui-extensions.min.css +1 -1
  797. package/es/style/dnb-ui-forms.css +229 -0
  798. package/es/style/dnb-ui-forms.min.css +1 -0
  799. package/es/style/dnb-ui-forms.scss +19 -0
  800. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -36
  801. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  802. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +997 -469
  803. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
  804. package/es/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  805. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +17 -36
  806. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  807. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +89 -133
  808. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  809. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +238 -0
  810. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
  811. package/es/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
  812. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +17 -26
  813. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  814. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +1186 -823
  815. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +17 -9
  816. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
  817. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +17 -26
  818. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  819. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +89 -133
  820. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  821. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +238 -0
  822. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
  823. package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
  824. package/es/style/themes/theme-ui/ui-theme-basis.css +17 -36
  825. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  826. package/es/style/themes/theme-ui/ui-theme-components.css +997 -468
  827. package/es/style/themes/theme-ui/ui-theme-components.min.css +35 -7
  828. package/es/style/themes/theme-ui/ui-theme-components.scss +1 -0
  829. package/es/style/themes/theme-ui/ui-theme-elements.css +17 -36
  830. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  831. package/es/style/themes/theme-ui/ui-theme-extensions.css +89 -133
  832. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  833. package/es/style/themes/theme-ui/ui-theme-forms.css +238 -0
  834. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
  835. package/es/style/themes/theme-ui/ui-theme-forms.scss +15 -0
  836. package/es/style/themes/theme-ui/ui-theme-tags.css +12 -25
  837. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  838. package/esm/dnb-ui-basis.min.mjs +1 -1
  839. package/esm/dnb-ui-components.min.mjs +1 -1
  840. package/esm/dnb-ui-elements.min.mjs +1 -1
  841. package/esm/dnb-ui-extensions.min.mjs +3 -3
  842. package/esm/dnb-ui-lib.min.mjs +1 -1
  843. package/extensions/forms/DataContext/Context.d.ts +1 -1
  844. package/extensions/forms/DataContext/Context.js +1 -1
  845. package/extensions/forms/DataContext/Context.js.map +1 -1
  846. package/extensions/forms/DataContext/Provider/Provider.js +9 -5
  847. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  848. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -8
  849. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  850. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
  851. package/extensions/forms/Field/Currency/Currency.d.ts +3 -1
  852. package/extensions/forms/Field/Currency/Currency.js +8 -2
  853. package/extensions/forms/Field/Currency/Currency.js.map +1 -1
  854. package/extensions/forms/Field/Expiry/Expiry.js +6 -4
  855. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  856. package/extensions/forms/Field/Expiry/style/dnb-expiry.css +2 -8
  857. package/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -1
  858. package/extensions/forms/Field/Expiry/style/dnb-expiry.scss +5 -5
  859. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
  860. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  861. package/extensions/forms/Field/Number/Number.js +11 -12
  862. package/extensions/forms/Field/Number/Number.js.map +1 -1
  863. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
  864. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +135 -71
  865. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  866. package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
  867. package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
  868. package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
  869. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
  870. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
  871. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  872. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -16
  873. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  874. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -14
  875. package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
  876. package/extensions/forms/Field/SelectCountry/SelectCountry.js +188 -18
  877. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  878. package/extensions/forms/Field/Selection/Selection.js +1 -0
  879. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  880. package/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
  881. package/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  882. package/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
  883. package/extensions/forms/Field/String/String.js +8 -9
  884. package/extensions/forms/Field/String/String.js.map +1 -1
  885. package/extensions/forms/Field/Toggle/Toggle.js +4 -2
  886. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  887. package/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
  888. package/extensions/forms/FieldBlock/FieldBlock.js +17 -20
  889. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  890. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  891. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  892. package/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
  893. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  894. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
  895. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +0 -1
  896. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  897. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +0 -6
  898. package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
  899. package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +0 -3
  900. package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
  901. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +0 -1
  902. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  903. package/extensions/forms/constants/countries.d.ts +9 -6
  904. package/extensions/forms/constants/countries.js +17 -8
  905. package/extensions/forms/constants/countries.js.map +1 -1
  906. package/extensions/forms/hooks/useDataValue.d.ts +2 -0
  907. package/extensions/forms/hooks/useDataValue.js +31 -21
  908. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  909. package/extensions/forms/index.d.ts +1 -1
  910. package/extensions/forms/index.js +1 -0
  911. package/extensions/forms/index.js.map +1 -1
  912. package/extensions/forms/style/dnb-forms.css +89 -131
  913. package/extensions/forms/style/dnb-forms.min.css +1 -1
  914. package/extensions/forms/style/dnb-forms.scss +1 -6
  915. package/extensions/forms/types.d.ts +5 -4
  916. package/extensions/forms/types.js.map +1 -1
  917. package/extensions/payment-card/PaymentCard.d.ts +3 -2
  918. package/extensions/payment-card/PaymentCard.js +16 -37
  919. package/extensions/payment-card/PaymentCard.js.map +1 -1
  920. package/extensions/payment-card/icons/index.js +4 -2
  921. package/extensions/payment-card/icons/index.js.map +1 -1
  922. package/extensions/payment-card/style/dnb-payment-card.css +0 -2
  923. package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  924. package/extensions/style/index.d.ts +5 -1
  925. package/extensions/style/index.js +4 -1
  926. package/extensions/style/index.js.map +1 -1
  927. package/icons/dnb/icons-meta.json +2 -2
  928. package/icons/icons-meta.json +2 -2
  929. package/package.json +1 -1
  930. package/shared/Eufemia.d.ts +1 -1
  931. package/shared/Eufemia.js +2 -2
  932. package/shared/Eufemia.js.map +1 -1
  933. package/shared/helpers/filterValidProps.d.ts +3 -7
  934. package/shared/helpers/filterValidProps.js +9 -3
  935. package/shared/helpers/filterValidProps.js.map +1 -1
  936. package/shared/helpers/withCamelCaseProps.d.ts +1 -0
  937. package/shared/helpers/withCamelCaseProps.js +6 -5
  938. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  939. package/shared/helpers/withSnakeCaseProps.js +5 -4
  940. package/shared/helpers/withSnakeCaseProps.js.map +1 -1
  941. package/shared/locales/en-GB.d.ts +1 -1
  942. package/shared/locales/en-GB.js +4 -4
  943. package/shared/locales/en-GB.js.map +1 -1
  944. package/shared/locales/en-US.d.ts +1 -1
  945. package/shared/locales/index.d.ts +2 -2
  946. package/shared/locales/nb-NO.d.ts +1 -1
  947. package/shared/locales/nb-NO.js +4 -4
  948. package/shared/locales/nb-NO.js.map +1 -1
  949. package/style/core/utilities.scss +1 -1
  950. package/style/dnb-ui-basis.css +3 -0
  951. package/style/dnb-ui-basis.min.css +1 -1
  952. package/style/dnb-ui-body.css +3 -1
  953. package/style/dnb-ui-body.min.css +1 -1
  954. package/style/dnb-ui-components.css +586 -208
  955. package/style/dnb-ui-components.min.css +6 -4
  956. package/style/dnb-ui-components.scss +2 -1
  957. package/style/dnb-ui-core.css +4 -1
  958. package/style/dnb-ui-core.min.css +1 -1
  959. package/style/dnb-ui-elements.css +17 -26
  960. package/style/dnb-ui-elements.min.css +1 -1
  961. package/style/dnb-ui-extensions.css +89 -133
  962. package/style/dnb-ui-extensions.min.css +1 -1
  963. package/style/dnb-ui-forms.css +229 -0
  964. package/style/dnb-ui-forms.min.css +1 -0
  965. package/style/dnb-ui-forms.scss +19 -0
  966. package/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -36
  967. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  968. package/style/themes/theme-eiendom/eiendom-theme-components.css +997 -469
  969. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
  970. package/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
  971. package/style/themes/theme-eiendom/eiendom-theme-elements.css +17 -36
  972. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  973. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +89 -133
  974. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  975. package/style/themes/theme-eiendom/eiendom-theme-forms.css +238 -0
  976. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
  977. package/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
  978. package/style/themes/theme-sbanken/sbanken-theme-basis.css +17 -26
  979. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  980. package/style/themes/theme-sbanken/sbanken-theme-components.css +1186 -823
  981. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +17 -9
  982. package/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
  983. package/style/themes/theme-sbanken/sbanken-theme-elements.css +17 -26
  984. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  985. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +89 -133
  986. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  987. package/style/themes/theme-sbanken/sbanken-theme-forms.css +238 -0
  988. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
  989. package/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
  990. package/style/themes/theme-ui/ui-theme-basis.css +17 -36
  991. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  992. package/style/themes/theme-ui/ui-theme-components.css +997 -468
  993. package/style/themes/theme-ui/ui-theme-components.min.css +35 -7
  994. package/style/themes/theme-ui/ui-theme-components.scss +1 -0
  995. package/style/themes/theme-ui/ui-theme-elements.css +17 -36
  996. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  997. package/style/themes/theme-ui/ui-theme-extensions.css +89 -133
  998. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  999. package/style/themes/theme-ui/ui-theme-forms.css +238 -0
  1000. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
  1001. package/style/themes/theme-ui/ui-theme-forms.scss +15 -0
  1002. package/style/themes/theme-ui/ui-theme-tags.css +12 -25
  1003. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1004. package/umd/dnb-ui-basis.min.js +1 -1
  1005. package/umd/dnb-ui-components.min.js +1 -1
  1006. package/umd/dnb-ui-elements.min.js +1 -1
  1007. package/umd/dnb-ui-extensions.min.js +3 -3
  1008. package/umd/dnb-ui-lib.min.js +1 -1
  1009. package/cjs/components/button/style/dnb-button--tertiary.css +0 -216
  1010. package/cjs/components/button/style/dnb-button--tertiary.min.css +0 -5
  1011. package/cjs/extensions/forms/Field/style/dnb-forms-field.css +0 -93
  1012. package/cjs/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
  1013. package/cjs/extensions/forms/Field/style/dnb-forms-field.scss +0 -5
  1014. package/cjs/extensions/forms/Form/style/dnb-forms-form.css +0 -33
  1015. package/cjs/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
  1016. package/cjs/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
  1017. package/cjs/extensions/forms/Form/style/index.d.ts +0 -5
  1018. package/cjs/extensions/forms/Form/style/index.js +0 -4
  1019. package/cjs/extensions/forms/Form/style/index.js.map +0 -1
  1020. package/cjs/extensions/forms/StepsLayout/style/index.scss +0 -1
  1021. package/cjs/extensions/forms/ValueBlock/style/index.scss +0 -1
  1022. package/cjs/extensions/forms/style/index.d.ts +0 -1
  1023. package/cjs/extensions/forms/style/index.js +0 -4
  1024. package/cjs/extensions/forms/style/index.js.map +0 -1
  1025. package/components/button/style/dnb-button--tertiary.css +0 -216
  1026. package/components/button/style/dnb-button--tertiary.min.css +0 -5
  1027. package/es/components/button/style/dnb-button--tertiary.css +0 -216
  1028. package/es/components/button/style/dnb-button--tertiary.min.css +0 -5
  1029. package/es/extensions/forms/Field/style/dnb-forms-field.css +0 -93
  1030. package/es/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
  1031. package/es/extensions/forms/Field/style/dnb-forms-field.scss +0 -5
  1032. package/es/extensions/forms/Form/style/dnb-forms-form.css +0 -33
  1033. package/es/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
  1034. package/es/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
  1035. package/es/extensions/forms/Form/style/index.d.ts +0 -5
  1036. package/es/extensions/forms/Form/style/index.js +0 -1
  1037. package/es/extensions/forms/Form/style/index.js.map +0 -1
  1038. package/es/extensions/forms/StepsLayout/style/index.scss +0 -1
  1039. package/es/extensions/forms/ValueBlock/style/index.scss +0 -1
  1040. package/es/extensions/forms/style/index.d.ts +0 -1
  1041. package/es/extensions/forms/style/index.js +0 -1
  1042. package/es/extensions/forms/style/index.js.map +0 -1
  1043. package/extensions/forms/Field/style/dnb-forms-field.css +0 -93
  1044. package/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
  1045. package/extensions/forms/Field/style/dnb-forms-field.scss +0 -5
  1046. package/extensions/forms/Form/style/dnb-forms-form.css +0 -33
  1047. package/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
  1048. package/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
  1049. package/extensions/forms/Form/style/index.d.ts +0 -5
  1050. package/extensions/forms/Form/style/index.js +0 -1
  1051. package/extensions/forms/Form/style/index.js.map +0 -1
  1052. package/extensions/forms/StepsLayout/style/index.scss +0 -1
  1053. package/extensions/forms/ValueBlock/style/index.scss +0 -1
  1054. package/extensions/forms/style/index.d.ts +0 -1
  1055. package/extensions/forms/style/index.js +0 -1
  1056. package/extensions/forms/style/index.js.map +0 -1
  1057. /package/cjs/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
  1058. /package/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
  1059. /package/es/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
@@ -1,7 +1,39 @@
1
- import { Props as SelectionProps } from '../Selection';
2
- export type Props = SelectionProps;
1
+ import { CountryType } from '../../constants/countries';
2
+ import { FieldHelpProps, FieldProps } from '../../types';
3
+ export type CountryFilterSet = 'Scandinavia' | 'Nordic' | 'Europe' | 'Prioritized';
4
+ export type Props = FieldHelpProps & FieldProps<string, undefined | string> & {
5
+ countries?: CountryFilterSet;
6
+ width?: false | 'small' | 'medium' | 'large' | 'stretch';
7
+ /**
8
+ * For internal use only.
9
+ *
10
+ * @param country
11
+ * @returns boolean
12
+ */
13
+ filterCountries?: (country: CountryType) => boolean;
14
+ /**
15
+ * For internal testing purposes
16
+ */
17
+ noAnimation?: boolean;
18
+ };
3
19
  declare function SelectCountry(props: Props): import("react/jsx-runtime").JSX.Element;
4
20
  declare namespace SelectCountry {
5
21
  var _supportsSpacingProps: boolean;
6
22
  }
23
+ type GetCountryData = {
24
+ lang?: string;
25
+ filter?: Props['filterCountries'];
26
+ sort?: Extract<CountryFilterSet, 'Prioritized'>;
27
+ makeObject?: (country: CountryType, lang: string) => {
28
+ selectedKey: string;
29
+ selected_value?: string;
30
+ content: string;
31
+ };
32
+ };
33
+ export declare function getCountryData({ lang, filter, sort, makeObject, }?: GetCountryData): {
34
+ selectedKey: string;
35
+ selected_value?: string;
36
+ content: string;
37
+ }[];
38
+ export declare function makeCountryFilterSet(ccFilter: CountryFilterSet): (country: CountryType) => boolean;
7
39
  export default SelectCountry;
@@ -5,41 +5,213 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
+ exports.getCountryData = getCountryData;
9
+ exports.makeCountryFilterSet = makeCountryFilterSet;
8
10
  var _react = _interopRequireWildcard(require("react"));
9
- var _Selection = _interopRequireDefault(require("../Selection"));
10
- var _Option = _interopRequireDefault(require("../Option"));
11
- var _countries = _interopRequireDefault(require("../../constants/countries"));
11
+ var _classnames = _interopRequireDefault(require("classnames"));
12
12
  var _Context = _interopRequireDefault(require("../../../../shared/Context"));
13
+ var _components = require("../../../../components");
14
+ var _utils = require("../../../../components/flex/utils");
15
+ var _countries = _interopRequireWildcard(require("../../constants/countries"));
16
+ var _hooks = require("../../hooks");
17
+ var _FieldBlock = _interopRequireDefault(require("../../FieldBlock"));
13
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
19
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
20
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
16
22
  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; }
17
23
  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; }
18
24
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
25
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
20
26
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
21
27
  function SelectCountry(props) {
22
- var _props$placeholder, _props$label, _sharedContext$locale;
28
+ var _sharedContext$locale;
23
29
  const sharedContext = (0, _react.useContext)(_Context.default);
24
30
  const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
31
+ const lang = (_sharedContext$locale = sharedContext.locale) === null || _sharedContext$locale === void 0 ? void 0 : _sharedContext$locale.split('-')[0];
25
32
  const errorMessages = (0, _react.useMemo)(() => _objectSpread({
26
33
  required: tr.selectCountryErrorRequired
27
34
  }, props.errorMessages), [tr, props.errorMessages]);
28
- const selectComponentProps = _objectSpread(_objectSpread({}, props), {}, {
29
- placeholder: (_props$placeholder = props.placeholder) !== null && _props$placeholder !== void 0 ? _props$placeholder : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.selectCountryPlaceholder,
30
- label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.selectCountryLabel,
35
+ const defaultProps = {
31
36
  errorMessages
32
- });
33
- const lang = (_sharedContext$locale = sharedContext.locale) === null || _sharedContext$locale === void 0 ? void 0 : _sharedContext$locale.split('-')[0];
34
- const countryOptions = (0, _react.useMemo)(() => _countries.default.map(country => {
35
- var _country$i18n$lang;
36
- return _react.default.createElement(_Option.default, {
37
- key: country.iso,
38
- value: country.iso,
39
- title: (_country$i18n$lang = country.i18n[lang]) !== null && _country$i18n$lang !== void 0 ? _country$i18n$lang : country.i18n.en
37
+ };
38
+ const preparedProps = _objectSpread(_objectSpread({}, defaultProps), props);
39
+ const {
40
+ className,
41
+ placeholder = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.selectCountryPlaceholder,
42
+ label = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.selectCountryLabel,
43
+ countries: ccFilter = 'Prioritized',
44
+ info,
45
+ warning,
46
+ error,
47
+ disabled,
48
+ value,
49
+ width = 'large',
50
+ help,
51
+ handleFocus,
52
+ handleBlur,
53
+ handleChange,
54
+ updateValue,
55
+ forceUpdate,
56
+ filterCountries = ccFilter !== 'Prioritized' ? makeCountryFilterSet(ccFilter) : undefined
57
+ } = (0, _hooks.useDataValue)(preparedProps);
58
+ const dataRef = _react.default.useRef(null);
59
+ const langRef = _react.default.useRef(lang);
60
+ const wasFilled = _react.default.useRef(false);
61
+ (0, _react.useMemo)(() => {
62
+ const isLangChange = lang !== langRef.current;
63
+ if (isLangChange || !wasFilled.current) {
64
+ langRef.current = lang;
65
+ dataRef.current = getCountryData({
66
+ lang,
67
+ filter: !wasFilled.current ? country => country.iso === props.value : filterCountries,
68
+ sort: ccFilter
69
+ });
70
+ if (isLangChange && props.value && typeof window !== 'undefined') {
71
+ updateValue(null);
72
+ window.requestAnimationFrame(() => {
73
+ updateValue(props.value);
74
+ });
75
+ }
76
+ }
77
+ }, [lang, filterCountries, ccFilter, updateValue, props.value]);
78
+ const handleCountryChange = (0, _react.useCallback)(_ref => {
79
+ let {
80
+ data
81
+ } = _ref;
82
+ const newValue = data === null || data === void 0 ? void 0 : data.selectedKey;
83
+ const country = _countries.default.find(_ref2 => {
84
+ let {
85
+ iso
86
+ } = _ref2;
87
+ return newValue === iso;
40
88
  });
41
- }), [lang]);
42
- return _react.default.createElement(_Selection.default, selectComponentProps, countryOptions);
89
+ if (country !== null && country !== void 0 && country.iso) {
90
+ handleChange(country.iso, country);
91
+ }
92
+ }, [handleChange]);
93
+ const fillData = (0, _react.useCallback)(() => {
94
+ if (!wasFilled.current) {
95
+ wasFilled.current = true;
96
+ dataRef.current = getCountryData({
97
+ lang: langRef.current,
98
+ filter: filterCountries,
99
+ sort: ccFilter
100
+ });
101
+ forceUpdate();
102
+ }
103
+ }, [ccFilter, filterCountries, forceUpdate]);
104
+ const onFocusHandler = (0, _react.useCallback)(_ref3 => {
105
+ let {
106
+ updateData
107
+ } = _ref3;
108
+ fillData();
109
+ updateData(dataRef.current);
110
+ handleFocus();
111
+ }, [fillData, handleFocus]);
112
+ const onTypeHandler = (0, _react.useCallback)(_ref4 => {
113
+ var _event$nativeEvent;
114
+ let {
115
+ value: currentValue,
116
+ setHidden,
117
+ event
118
+ } = _ref4;
119
+ if (typeof (event === null || event === void 0 ? void 0 : (_event$nativeEvent = event.nativeEvent) === null || _event$nativeEvent === void 0 ? void 0 : _event$nativeEvent.data) === 'undefined') {
120
+ const search = currentValue.toLowerCase();
121
+ const country = _countries.default.find(_ref5 => {
122
+ let {
123
+ i18n
124
+ } = _ref5;
125
+ return Object.values(i18n).some(s => s.toLowerCase().includes(search));
126
+ });
127
+ if (country !== null && country !== void 0 && country.iso) {
128
+ setHidden();
129
+ handleChange(country.iso, country);
130
+ }
131
+ }
132
+ }, [handleChange]);
133
+ return _react.default.createElement(_FieldBlock.default, _extends({
134
+ className: (0, _classnames.default)('dnb-forms-field-select-country', className),
135
+ width: width,
136
+ info: info,
137
+ warning: warning,
138
+ error: error
139
+ }, (0, _utils.pickSpacingProps)(props)), _react.default.createElement(_components.Autocomplete, {
140
+ placeholder: placeholder,
141
+ label_direction: "vertical",
142
+ label: label,
143
+ input_icon: false,
144
+ data: dataRef.current,
145
+ value: value,
146
+ disabled: disabled,
147
+ on_show: fillData,
148
+ on_focus: onFocusHandler,
149
+ on_blur: handleBlur,
150
+ on_change: handleCountryChange,
151
+ on_type: onTypeHandler,
152
+ stretch: true,
153
+ show_submit_button: true,
154
+ suffix: help ? _react.default.createElement(_components.HelpButton, {
155
+ title: help.title
156
+ }, help.contents) : undefined,
157
+ autoComplete: "country-name",
158
+ no_animation: props.noAnimation
159
+ }));
160
+ }
161
+ function getCountryData() {
162
+ let {
163
+ lang = 'no',
164
+ filter = null,
165
+ sort = null,
166
+ makeObject = (country, lang) => {
167
+ var _country$i18n$lang;
168
+ const content = (_country$i18n$lang = country.i18n[lang]) !== null && _country$i18n$lang !== void 0 ? _country$i18n$lang : country.i18n.en;
169
+ return {
170
+ selectedKey: country.iso,
171
+ content
172
+ };
173
+ }
174
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
175
+ return _countries.default.filter(country => {
176
+ if (typeof filter === 'function') {
177
+ return filter(country);
178
+ }
179
+ return !filter;
180
+ }).sort((_ref6, _ref7) => {
181
+ let {
182
+ i18n: a
183
+ } = _ref6;
184
+ let {
185
+ i18n: b
186
+ } = _ref7;
187
+ if (sort === 'Prioritized') {
188
+ const indexA = _countries.prioritizedCountries.indexOf(a['en']);
189
+ const indexB = _countries.prioritizedCountries.indexOf(b['en']);
190
+ const priorityA = indexA !== -1;
191
+ const priorityB = indexB !== -1;
192
+ if (priorityA && priorityB) {
193
+ return indexA - indexB;
194
+ } else if (priorityA) {
195
+ return -1;
196
+ } else if (priorityB) {
197
+ return 1;
198
+ }
199
+ }
200
+ return a[lang].localeCompare(b[lang]);
201
+ }).map(country => makeObject(country, lang));
202
+ }
203
+ function makeCountryFilterSet(ccFilter) {
204
+ return country => {
205
+ var _country$regions;
206
+ switch (ccFilter) {
207
+ case 'Scandinavia':
208
+ case 'Nordic':
209
+ return (_country$regions = country.regions) === null || _country$regions === void 0 ? void 0 : _country$regions.includes(ccFilter);
210
+ case 'Europe':
211
+ return country.continent.includes(ccFilter);
212
+ }
213
+ return true;
214
+ };
43
215
  }
44
216
  SelectCountry._supportsSpacingProps = true;
45
217
  var _default = SelectCountry;
@@ -1 +1 @@
1
- {"version":3,"file":"SelectCountry.js","names":["_react","_interopRequireWildcard","require","_Selection","_interopRequireDefault","_Option","_countries","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SelectCountry","props","_props$placeholder","_props$label","_sharedContext$locale","sharedContext","useContext","SharedContext","tr","translation","Forms","errorMessages","useMemo","required","selectCountryErrorRequired","selectComponentProps","placeholder","selectCountryPlaceholder","label","selectCountryLabel","lang","locale","split","countryOptions","countries","map","country","_country$i18n$lang","createElement","iso","title","i18n","en","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/SelectCountry/SelectCountry.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport Selection, { Props as SelectionProps } from '../Selection'\nimport Option from '../Option'\nimport countries from '../../constants/countries'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = SelectionProps\n\nfunction SelectCountry(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useMemo(\n () => ({\n required: tr.selectCountryErrorRequired,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n\n const selectComponentProps: Props = {\n ...props,\n placeholder:\n props.placeholder ??\n sharedContext?.translation.Forms.selectCountryPlaceholder,\n label:\n props.label ?? sharedContext?.translation.Forms.selectCountryLabel,\n errorMessages,\n }\n\n const lang = sharedContext.locale?.split('-')[0]\n const countryOptions = useMemo(\n () =>\n countries.map((country) => (\n <Option\n key={country.iso}\n value={country.iso}\n title={country.i18n[lang] ?? country.i18n.en}\n />\n )),\n [lang]\n )\n\n return <Selection {...selectComponentProps}>{countryOptions}</Selection>\n}\n\nSelectCountry._supportsSpacingProps = true\nexport default SelectCountry\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectCountry.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_components","_utils","_countries","_hooks","_FieldBlock","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SelectCountry","props","_sharedContext$locale","sharedContext","useContext","SharedContext","tr","translation","Forms","lang","locale","split","errorMessages","useMemo","required","selectCountryErrorRequired","defaultProps","preparedProps","className","placeholder","selectCountryPlaceholder","label","selectCountryLabel","countries","ccFilter","info","warning","error","disabled","width","help","handleFocus","handleBlur","handleChange","updateValue","forceUpdate","filterCountries","makeCountryFilterSet","useDataValue","dataRef","React","useRef","langRef","wasFilled","isLangChange","current","getCountryData","country","iso","sort","window","requestAnimationFrame","handleCountryChange","useCallback","_ref","data","newValue","selectedKey","find","_ref2","fillData","onFocusHandler","_ref3","updateData","onTypeHandler","_ref4","_event$nativeEvent","currentValue","setHidden","event","nativeEvent","search","toLowerCase","_ref5","i18n","values","some","s","includes","createElement","classnames","pickSpacingProps","Autocomplete","label_direction","input_icon","on_show","on_focus","on_blur","on_change","on_type","stretch","show_submit_button","suffix","HelpButton","title","contents","autoComplete","no_animation","noAnimation","makeObject","_country$i18n$lang","content","en","_ref6","_ref7","a","b","indexA","prioritizedCountries","indexOf","indexB","priorityA","priorityB","localeCompare","map","_country$regions","regions","continent","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/SelectCountry/SelectCountry.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../../shared/Context'\nimport { Autocomplete, HelpButton } from '../../../../components'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport countries, {\n prioritizedCountries,\n CountryType,\n} from '../../constants/countries'\nimport { useDataValue } from '../../hooks'\nimport { FieldHelpProps, FieldProps } from '../../types'\nimport FieldBlock from '../../FieldBlock'\n\nexport type CountryFilterSet =\n | 'Scandinavia'\n | 'Nordic'\n | 'Europe'\n | 'Prioritized'\n\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined | string> & {\n countries?: CountryFilterSet\n\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n\n /**\n * For internal use only.\n *\n * @param country\n * @returns boolean\n */\n filterCountries?: (country: CountryType) => boolean\n\n /**\n * For internal testing purposes\n */\n noAnimation?: boolean\n }\n\nfunction SelectCountry(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n const lang = sharedContext.locale?.split('-')[0]\n\n const errorMessages = useMemo(\n () => ({\n required: tr.selectCountryErrorRequired,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n\n const defaultProps: Partial<Props> = {\n errorMessages,\n }\n const preparedProps: Props = {\n ...defaultProps,\n ...props,\n }\n\n const {\n className,\n placeholder = sharedContext?.translation.Forms\n .selectCountryPlaceholder,\n label = sharedContext?.translation.Forms.selectCountryLabel,\n countries: ccFilter = 'Prioritized',\n info,\n warning,\n error,\n disabled,\n value,\n width = 'large',\n help,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n forceUpdate,\n filterCountries = ccFilter !== 'Prioritized'\n ? makeCountryFilterSet(ccFilter)\n : undefined,\n } = useDataValue(preparedProps)\n\n const dataRef = React.useRef(null)\n const langRef = React.useRef(lang)\n const wasFilled = React.useRef(false)\n\n /**\n * We do not process the whole country list at the first render.\n * Only when the Autocomplete opens (focus).\n * To achieve this, we use memo instead of effect to update refs in sync.\n *\n * We set or update the data list depending on if the countrycode changes or lang changes.\n * We then update data set when value changes.\n */\n useMemo(() => {\n const isLangChange = lang !== langRef.current\n\n if (isLangChange || !wasFilled.current) {\n langRef.current = lang\n dataRef.current = getCountryData({\n lang,\n filter: !wasFilled.current\n ? (country) => country.iso === props.value\n : filterCountries,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n\n // To force Autocomplete to re-evaluate the internal data\n if (isLangChange && props.value && typeof window !== 'undefined') {\n updateValue(null)\n window.requestAnimationFrame(() => {\n updateValue(props.value)\n })\n }\n }\n }, [lang, filterCountries, ccFilter, updateValue, props.value])\n\n const handleCountryChange = useCallback(\n ({ data }: { data: { selectedKey: string } }) => {\n const newValue = data?.selectedKey\n const country = countries.find(({ iso }) => newValue === iso)\n if (country?.iso) {\n handleChange(country.iso, country)\n }\n },\n [handleChange]\n )\n\n const fillData = useCallback(() => {\n if (!wasFilled.current) {\n wasFilled.current = true\n dataRef.current = getCountryData({\n lang: langRef.current,\n filter: filterCountries,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n forceUpdate()\n }\n }, [ccFilter, filterCountries, forceUpdate])\n\n const onFocusHandler = useCallback(\n ({ updateData }) => {\n fillData()\n updateData(dataRef.current)\n handleFocus()\n },\n [fillData, handleFocus]\n )\n\n const onTypeHandler = useCallback(\n ({ value: currentValue, setHidden, event }) => {\n // Handle browser autofill/autocomplete\n if (typeof event?.nativeEvent?.data === 'undefined') {\n const search = currentValue.toLowerCase()\n const country = countries.find(({ i18n }) =>\n Object.values(i18n).some((s) => s.toLowerCase().includes(search))\n )\n if (country?.iso) {\n setHidden()\n handleChange(country.iso, country)\n }\n }\n },\n [handleChange]\n )\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-select-country', className)}\n width={width}\n info={info}\n warning={warning}\n error={error}\n {...pickSpacingProps(props)}\n >\n <Autocomplete\n placeholder={placeholder}\n label_direction=\"vertical\"\n label={label}\n input_icon={false}\n data={dataRef.current}\n value={value}\n disabled={disabled}\n on_show={fillData}\n on_focus={onFocusHandler}\n on_blur={handleBlur}\n on_change={handleCountryChange}\n on_type={onTypeHandler}\n stretch\n show_submit_button\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n autoComplete=\"country-name\"\n no_animation={props.noAnimation}\n />\n </FieldBlock>\n )\n}\n\ntype GetCountryData = {\n lang?: string\n filter?: Props['filterCountries']\n sort?: Extract<CountryFilterSet, 'Prioritized'>\n makeObject?: (\n country: CountryType,\n lang: string\n ) => {\n selectedKey: string\n selected_value?: string\n content: string\n }\n}\n\nexport function getCountryData({\n lang = 'no',\n filter = null,\n sort = null,\n makeObject = (country: CountryType, lang: string) => {\n const content = country.i18n[lang] ?? country.i18n.en\n return {\n selectedKey: country.iso,\n content,\n }\n },\n}: GetCountryData = {}) {\n return countries\n .filter((country) => {\n if (typeof filter === 'function') {\n return filter(country)\n }\n\n return !filter\n })\n .sort(({ i18n: a }, { i18n: b }) => {\n if (sort === 'Prioritized') {\n const indexA = prioritizedCountries.indexOf(a['en'])\n const indexB = prioritizedCountries.indexOf(b['en'])\n\n const priorityA = indexA !== -1\n const priorityB = indexB !== -1\n\n if (priorityA && priorityB) {\n return indexA - indexB\n } else if (priorityA) {\n return -1\n } else if (priorityB) {\n return 1\n }\n }\n\n return a[lang].localeCompare(b[lang])\n })\n .map((country) => makeObject(country, lang))\n}\n\nexport function makeCountryFilterSet(ccFilter: CountryFilterSet) {\n return (country: CountryType) => {\n switch (ccFilter) {\n case 'Scandinavia':\n case 'Nordic':\n return country.regions?.includes(ccFilter)\n case 'Europe':\n return country.continent.includes(ccFilter)\n }\n return true\n }\n}\n\nSelectCountry._supportsSpacingProps = true\nexport default SelectCountry\n"],"mappings":"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"}
@@ -127,6 +127,7 @@ function Selection(props) {
127
127
  disabled
128
128
  }
129
129
  }, options.map((option, i) => _react.default.createElement(_components.ToggleButton, {
130
+ id: options.length > 0 ? id : undefined,
130
131
  key: `option-${i}-${option.value}`,
131
132
  text: option.title,
132
133
  on_change: option.handleSelect,
@@ -1 +1 @@
1
- {"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_components","_ButtonRow","_interopRequireDefault","_FieldBlock","_classnames","_componentHelper","_Context","_Option","_hooks","_types","_utils","_ToggleButtonGroupContext","_em","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","sharedContext","useContext","SharedContext","clearValue","useMemo","makeUniqueId","id","className","variant","clear","label","labelDescription","labelSecondary","layout","optionsLayout","placeholder","info","warning","error","disabled","help","emptyValue","width","setHasFocus","handleChange","children","useDataValue","handleDropdownChange","useCallback","_ref","data","selectedKey","handleRadioChange","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","pickSpacingProps","options","React","Children","toArray","child","isValidElement","type","Option","map","option","_option$props$title","title","handleSelect","selected","createElement","Radio","Group","layout_direction","vertical","on_change","_option$value","Provider","status","ToggleButton","text","checked","_error$message","optionsData","_child$props$value","_ref5","_child$props$children","_child$props$children2","content","translation","Forms","selectionClearSelected","Boolean","Dropdown","list_class","portal_class","label_direction","message","Error","FormError","toString","suffix","HelpButton","contents","on_show","on_hide","stretch","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Selection/Selection.tsx"],"sourcesContent":["import React, { useMemo, useContext, useCallback } from 'react'\nimport {\n ToggleButton,\n Dropdown,\n Radio,\n HelpButton,\n} from '../../../../components'\nimport ButtonRow from '../../Form/ButtonRow'\nimport FieldBlock from '../../FieldBlock'\nimport classnames from 'classnames'\nimport { makeUniqueId } from '../../../../shared/component-helper'\nimport SharedContext from '../../../../shared/Context'\nimport Option from '../Option'\nimport { useDataValue } from '../../hooks'\nimport { FormError, FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport ToggleButtonGroupContext from '../../../../components/toggle-button/ToggleButtonGroupContext'\n\ninterface IOption {\n title: string | React.ReactNode\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<string | number> & {\n children?: React.ReactNode\n variant?: 'dropdown' | 'radio' | 'button'\n clear?: boolean\n optionsLayout?: 'horizontal' | 'vertical'\n width?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction Selection(props: Props) {\n const sharedContext = useContext(SharedContext)\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n clear,\n label,\n labelDescription,\n labelSecondary,\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n disabled,\n help,\n emptyValue,\n width = 'large',\n setHasFocus,\n handleChange,\n children,\n } = useDataValue(props)\n\n const handleDropdownChange = useCallback(\n ({ data: { selectedKey } }) => {\n handleChange?.(\n !selectedKey || selectedKey === clearValue\n ? emptyValue\n : selectedKey\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const handleRadioChange = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useDataValues handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const cn = classnames('dnb-forms-field-selection', className)\n\n const fieldBlockProps = {\n forId: id,\n className: cn,\n ...pickSpacingProps(props),\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n handleChange?.(selected === value ? emptyValue : selected)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'radio':\n return (\n <Radio.Group\n className={cn}\n label={label}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n vertical={layout === 'vertical'}\n on_change={handleRadioChange}\n value={String(value ?? '')}\n {...pickSpacingProps(props)}\n >\n {options.map((option, i) => (\n <Radio\n key={`option-${i}-${option.value}`}\n label={option.title}\n value={String(option.value ?? '')}\n />\n ))}\n </Radio.Group>\n )\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n <ToggleButtonGroupContext.Provider\n value={{\n status: error ? 'error' : undefined,\n disabled,\n }}\n >\n {options.map((option, i) => (\n <ToggleButton\n key={`option-${i}-${option.value}`}\n text={option.title}\n on_change={option.handleSelect}\n checked={option.value === value}\n />\n ))}\n </ToggleButtonGroupContext.Provider>\n </ButtonRow>\n </FieldBlock>\n )\n case 'dropdown': {\n const optionsData = React.Children.map(children, (child) => {\n if (React.isValidElement(child) && child.type === Option) {\n // Option components\n return child.props.text\n ? {\n selectedKey: String(child.props.value ?? ''),\n content: [\n child.props.children ?? child.props.title ?? (\n <em>Untitled</em>\n ),\n child.props.text,\n ],\n }\n : {\n selectedKey: child.props.value,\n content: child.props.children ?? child.props.title,\n }\n }\n\n // For other children, just show them as content\n return {\n content: child,\n }\n })\n const data = [\n clear\n ? {\n selectedKey: clearValue,\n content: (\n <em>\n {sharedContext?.translation.Forms.selectionClearSelected}\n </em>\n ),\n }\n : undefined,\n ...(optionsData ?? []),\n ].filter(Boolean)\n\n return (\n <Dropdown\n className={classnames(\n 'dnb-forms-field-selection',\n width !== 'stretch' &&\n `dnb-forms-field-selection--width-${width}`,\n className\n )}\n list_class=\"dnb-forms-field-selection__list\"\n portal_class=\"dnb-forms-field-selection__portal\"\n title={placeholder}\n value={String(value ?? '')}\n label={label}\n label_direction={layout}\n status={\n error?.message ??\n ((warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString() ||\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString())\n }\n disabled={disabled}\n data={data}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n on_change={handleDropdownChange}\n on_show={handleShow}\n on_hide={handleHide}\n {...pickSpacingProps(props)}\n stretch={width === 'stretch'}\n />\n )\n }\n }\n}\n\nSelection._supportsSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
1
+ {"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_components","_ButtonRow","_interopRequireDefault","_FieldBlock","_classnames","_componentHelper","_Context","_Option","_hooks","_types","_utils","_ToggleButtonGroupContext","_em","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","sharedContext","useContext","SharedContext","clearValue","useMemo","makeUniqueId","id","className","variant","clear","label","labelDescription","labelSecondary","layout","optionsLayout","placeholder","info","warning","error","disabled","help","emptyValue","width","setHasFocus","handleChange","children","useDataValue","handleDropdownChange","useCallback","_ref","data","selectedKey","handleRadioChange","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","pickSpacingProps","options","React","Children","toArray","child","isValidElement","type","Option","map","option","_option$props$title","title","handleSelect","selected","createElement","Radio","Group","layout_direction","vertical","on_change","_option$value","Provider","status","ToggleButton","text","checked","_error$message","optionsData","_child$props$value","_ref5","_child$props$children","_child$props$children2","content","translation","Forms","selectionClearSelected","Boolean","Dropdown","list_class","portal_class","label_direction","message","Error","FormError","toString","suffix","HelpButton","contents","on_show","on_hide","stretch","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Selection/Selection.tsx"],"sourcesContent":["import React, { useMemo, useContext, useCallback } from 'react'\nimport {\n ToggleButton,\n Dropdown,\n Radio,\n HelpButton,\n} from '../../../../components'\nimport ButtonRow from '../../Form/ButtonRow'\nimport FieldBlock from '../../FieldBlock'\nimport classnames from 'classnames'\nimport { makeUniqueId } from '../../../../shared/component-helper'\nimport SharedContext from '../../../../shared/Context'\nimport Option from '../Option'\nimport { useDataValue } from '../../hooks'\nimport { FormError, FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport ToggleButtonGroupContext from '../../../../components/toggle-button/ToggleButtonGroupContext'\n\ninterface IOption {\n title: string | React.ReactNode\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<string | number> & {\n children?: React.ReactNode\n variant?: 'dropdown' | 'radio' | 'button'\n clear?: boolean\n optionsLayout?: 'horizontal' | 'vertical'\n width?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction Selection(props: Props) {\n const sharedContext = useContext(SharedContext)\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n clear,\n label,\n labelDescription,\n labelSecondary,\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n disabled,\n help,\n emptyValue,\n width = 'large',\n setHasFocus,\n handleChange,\n children,\n } = useDataValue(props)\n\n const handleDropdownChange = useCallback(\n ({ data: { selectedKey } }) => {\n handleChange?.(\n !selectedKey || selectedKey === clearValue\n ? emptyValue\n : selectedKey\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const handleRadioChange = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useDataValues handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const cn = classnames('dnb-forms-field-selection', className)\n\n const fieldBlockProps = {\n forId: id,\n className: cn,\n ...pickSpacingProps(props),\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n handleChange?.(selected === value ? emptyValue : selected)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'radio':\n return (\n <Radio.Group\n className={cn}\n label={label}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n vertical={layout === 'vertical'}\n on_change={handleRadioChange}\n value={String(value ?? '')}\n {...pickSpacingProps(props)}\n >\n {options.map((option, i) => (\n <Radio\n key={`option-${i}-${option.value}`}\n label={option.title}\n value={String(option.value ?? '')}\n />\n ))}\n </Radio.Group>\n )\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n <ToggleButtonGroupContext.Provider\n value={{\n status: error ? 'error' : undefined,\n disabled,\n }}\n >\n {options.map((option, i) => (\n <ToggleButton\n id={options.length > 0 ? id : undefined}\n key={`option-${i}-${option.value}`}\n text={option.title}\n on_change={option.handleSelect}\n checked={option.value === value}\n />\n ))}\n </ToggleButtonGroupContext.Provider>\n </ButtonRow>\n </FieldBlock>\n )\n case 'dropdown': {\n const optionsData = React.Children.map(children, (child) => {\n if (React.isValidElement(child) && child.type === Option) {\n // Option components\n return child.props.text\n ? {\n selectedKey: String(child.props.value ?? ''),\n content: [\n child.props.children ?? child.props.title ?? (\n <em>Untitled</em>\n ),\n child.props.text,\n ],\n }\n : {\n selectedKey: child.props.value,\n content: child.props.children ?? child.props.title,\n }\n }\n\n // For other children, just show them as content\n return {\n content: child,\n }\n })\n const data = [\n clear\n ? {\n selectedKey: clearValue,\n content: (\n <em>\n {sharedContext?.translation.Forms.selectionClearSelected}\n </em>\n ),\n }\n : undefined,\n ...(optionsData ?? []),\n ].filter(Boolean)\n\n return (\n <Dropdown\n className={classnames(\n 'dnb-forms-field-selection',\n width !== 'stretch' &&\n `dnb-forms-field-selection--width-${width}`,\n className\n )}\n list_class=\"dnb-forms-field-selection__list\"\n portal_class=\"dnb-forms-field-selection__portal\"\n title={placeholder}\n value={String(value ?? '')}\n label={label}\n label_direction={layout}\n status={\n error?.message ??\n ((warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString() ||\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString())\n }\n disabled={disabled}\n data={data}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n on_change={handleDropdownChange}\n on_show={handleShow}\n on_hide={handleHide}\n {...pickSpacingProps(props)}\n stretch={width === 'stretch'}\n />\n )\n }\n }\n}\n\nSelection._supportsSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
@@ -1,9 +1,3 @@
1
- :root {
2
- --forms-field-width--small: 5rem;
3
- --forms-field-width--medium: 11rem;
4
- --forms-field-width--large: 21rem;
5
- }
6
-
7
1
  .dnb-forms-field-selection--width-large .dnb-dropdown__shell {
8
2
  width: var(--forms-field-width--large);
9
3
  }
@@ -1 +1 @@
1
- :root{--forms-field-width--small:5rem;--forms-field-width--medium:11rem;--forms-field-width--large:21rem}.dnb-forms-field-selection--width-large .dnb-dropdown__shell{width:var(--forms-field-width--large)}.dnb-forms-field-selection--width-medium .dnb-dropdown__shell{width:var(--forms-field-width--medium)}.dnb-forms-field-selection--width-small .dnb-dropdown__shell{width:var(--forms-field-width--small)}
1
+ .dnb-forms-field-selection--width-large .dnb-dropdown__shell{width:var(--forms-field-width--large)}.dnb-forms-field-selection--width-medium .dnb-dropdown__shell{width:var(--forms-field-width--medium)}.dnb-forms-field-selection--width-small .dnb-dropdown__shell{width:var(--forms-field-width--small)}
@@ -1,5 +1,3 @@
1
- @import '../../style/field-sizes.scss';
2
-
3
1
  .dnb-forms-field-selection {
4
2
  &--width {
5
3
  &-large {
@@ -26,15 +26,12 @@ function StringComponent(props) {
26
26
  var _props$width, _value$length, _value$length2, _value$toString;
27
27
  const sharedContext = (0, _react.useContext)(_Context.default);
28
28
  const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
29
- const errorMessages = (0, _react.useMemo)(() => {
30
- var _props$minLength, _props$maxLength;
31
- return _objectSpread({
32
- required: tr.inputErrorRequired,
33
- minLength: tr.stringInputErrorMinLength.replace('{minLength}', (_props$minLength = props.minLength) === null || _props$minLength === void 0 ? void 0 : _props$minLength.toString()),
34
- maxLength: tr.stringInputErrorMaxLength.replace('{maxLength}', (_props$maxLength = props.maxLength) === null || _props$maxLength === void 0 ? void 0 : _props$maxLength.toString()),
35
- pattern: tr.inputErrorPattern
36
- }, props.errorMessages);
37
- }, [tr, props.errorMessages, props.minLength, props.maxLength]);
29
+ const errorMessages = (0, _react.useMemo)(() => _objectSpread({
30
+ required: tr.inputErrorRequired,
31
+ minLength: tr.stringInputErrorMinLength,
32
+ maxLength: tr.stringInputErrorMaxLength,
33
+ pattern: tr.inputErrorPattern
34
+ }, props.errorMessages), [tr, props.errorMessages]);
38
35
  const schema = (0, _react.useMemo)(() => {
39
36
  var _props$schema;
40
37
  return (_props$schema = props.schema) !== null && _props$schema !== void 0 ? _props$schema : {
@@ -121,7 +118,9 @@ function StringComponent(props) {
121
118
  labelSecondary: labelSecondary !== null && labelSecondary !== void 0 ? labelSecondary : characterCounterElement,
122
119
  info: info,
123
120
  warning: warning,
121
+ disabled: disabled,
124
122
  error: error,
123
+ width: width === 'stretch' ? width : undefined,
125
124
  contentsWidth: width !== false ? width : undefined
126
125
  }, (0, _utils.pickSpacingProps)(props)), multiline ? _react.default.createElement(_components.Textarea, _extends({}, sharedProps, {
127
126
  autoresize: autoresize,
@@ -1 +1 @@
1
- {"version":3,"file":"String.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_InputMasked","_Context","_FieldBlock","_hooks","_utils","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","StringComponent","props","_props$width","_value$length","_value$length2","_value$toString","sharedContext","useContext","SharedContext","tr","translation","Forms","errorMessages","useMemo","_props$minLength","_props$maxLength","required","inputErrorRequired","minLength","stringInputErrorMinLength","replace","toString","maxLength","stringInputErrorMaxLength","pattern","inputErrorPattern","schema","_props$schema","type","fromInput","useCallback","_ref","cleanedValue","emptyValue","preparedProps","width","id","name","className","autoComplete","innerRef","inputClassName","layout","placeholder","label","labelDescription","labelSecondary","info","warning","error","disabled","help","multiline","leftIcon","rightIcon","clear","autoresize","autoresizeMaxRows","characterCounter","mask","handleFocus","handleBlur","handleChange","useDataValue","characterCounterElement","cn","classnames","sharedProps","suffix","createElement","HelpButton","title","contents","on_focus","on_blur","on_change","stretch","inner_ref","status","forId","contentsWidth","pickSpacingProps","Textarea","autoresize_max_rows","icon","icon_position","Input","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/String/String.tsx"],"sourcesContent":["import React, { useContext, useMemo, useCallback } from 'react'\nimport classnames from 'classnames'\nimport { JSONSchema7 } from 'json-schema'\nimport { HelpButton, Input, Textarea } from '../../../../components'\nimport { InputProps } from '../../../../components/input/Input'\nimport InputMasked, {\n InputMaskedProps,\n} from '../../../../components/InputMasked'\nimport SharedContext from '../../../../shared/Context'\nimport FieldBlock from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n minLength?: string\n maxLength?: string\n pattern?: string\n}\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined | string, ErrorMessages> & {\n type?: InputProps['type']\n multiline?: boolean\n leftIcon?: string\n rightIcon?: string\n inputClassName?: string\n innerRef?: React.RefObject<HTMLInputElement | HTMLTextAreaElement>\n clear?: boolean\n autoresize?: boolean\n autoComplete?: HTMLInputElement['autocomplete']\n autoresizeMaxRows?: number\n characterCounter?: boolean\n mask?: InputMaskedProps['mask']\n // Validation\n minLength?: number\n maxLength?: number\n pattern?: string\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction StringComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useMemo(\n () => ({\n required: tr.inputErrorRequired,\n minLength: tr.stringInputErrorMinLength.replace(\n '{minLength}',\n props.minLength?.toString()\n ),\n maxLength: tr.stringInputErrorMaxLength.replace(\n '{maxLength}',\n props.maxLength?.toString()\n ),\n pattern: tr.inputErrorPattern,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages, props.minLength, props.maxLength]\n )\n const schema = useMemo<JSONSchema7>(\n () =>\n props.schema ?? {\n type: 'string',\n minLength: props.minLength,\n maxLength: props.maxLength,\n pattern: props.pattern,\n },\n [props.schema, props.minLength, props.maxLength, props.pattern]\n )\n const fromInput = useCallback(\n ({ value, cleanedValue }: { value: string; cleanedValue: string }) => {\n if (value === '') {\n return props.emptyValue\n }\n // Cleaned value for masked\n return cleanedValue ?? value\n },\n [props.emptyValue]\n )\n\n const preparedProps: Props = {\n ...props,\n errorMessages,\n schema,\n fromInput,\n width: props.width ?? 'large',\n }\n\n const {\n id,\n name,\n className,\n autoComplete,\n innerRef,\n inputClassName,\n layout,\n type,\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n value,\n info,\n warning,\n error,\n disabled,\n help,\n multiline,\n leftIcon,\n rightIcon,\n clear,\n autoresize = true,\n autoresizeMaxRows = 6,\n characterCounter,\n mask,\n width,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n const characterCounterElement = characterCounter\n ? props.maxLength\n ? `${value?.length ?? '0'}/${props.maxLength}`\n : `${value?.length ?? '0'}`\n : undefined\n const cn = classnames('dnb-forms-field-string__input', inputClassName)\n\n const sharedProps = {\n id,\n name,\n autoComplete,\n className: cn,\n placeholder: placeholder,\n suffix: help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined,\n on_focus: handleFocus,\n on_blur: handleBlur,\n on_change: handleChange,\n disabled: disabled,\n stretch: width !== undefined,\n inner_ref: innerRef,\n status: error ? 'error' : undefined,\n value: value?.toString() ?? '',\n }\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-string', className)}\n forId={id}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n labelSecondary={labelSecondary ?? characterCounterElement}\n info={info}\n warning={warning}\n error={error}\n contentsWidth={width !== false ? width : undefined}\n {...pickSpacingProps(props)}\n >\n {multiline ? (\n <Textarea\n {...sharedProps}\n autoresize={autoresize}\n autoresize_max_rows={autoresizeMaxRows}\n />\n ) : mask ? (\n <InputMasked\n {...sharedProps}\n mask={mask}\n icon={leftIcon ?? rightIcon}\n icon_position={rightIcon && !leftIcon ? 'right' : undefined}\n />\n ) : (\n <Input\n {...sharedProps}\n type={type}\n icon={leftIcon ?? rightIcon}\n icon_position={rightIcon && !leftIcon ? 'right' : undefined}\n clear={clear}\n />\n )}\n </FieldBlock>\n )\n}\n\nStringComponent._supportsSpacingProps = true\nexport default StringComponent\n"],"mappings":"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"}
1
+ {"version":3,"file":"String.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_InputMasked","_Context","_FieldBlock","_hooks","_utils","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","StringComponent","props","_props$width","_value$length","_value$length2","_value$toString","sharedContext","useContext","SharedContext","tr","translation","Forms","errorMessages","useMemo","required","inputErrorRequired","minLength","stringInputErrorMinLength","maxLength","stringInputErrorMaxLength","pattern","inputErrorPattern","schema","_props$schema","type","fromInput","useCallback","_ref","cleanedValue","emptyValue","preparedProps","width","id","name","className","autoComplete","innerRef","inputClassName","layout","placeholder","label","labelDescription","labelSecondary","info","warning","error","disabled","help","multiline","leftIcon","rightIcon","clear","autoresize","autoresizeMaxRows","characterCounter","mask","handleFocus","handleBlur","handleChange","useDataValue","characterCounterElement","cn","classnames","sharedProps","suffix","createElement","HelpButton","title","contents","on_focus","on_blur","on_change","stretch","inner_ref","status","toString","forId","contentsWidth","pickSpacingProps","Textarea","autoresize_max_rows","icon","icon_position","Input","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/String/String.tsx"],"sourcesContent":["import React, { useContext, useMemo, useCallback } from 'react'\nimport classnames from 'classnames'\nimport { JSONSchema7 } from 'json-schema'\nimport { HelpButton, Input, Textarea } from '../../../../components'\nimport { InputProps } from '../../../../components/input/Input'\nimport InputMasked, {\n InputMaskedProps,\n} from '../../../../components/InputMasked'\nimport SharedContext from '../../../../shared/Context'\nimport FieldBlock from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport { FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n minLength?: string\n maxLength?: string\n pattern?: string\n}\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined | string, ErrorMessages> & {\n type?: InputProps['type']\n multiline?: boolean\n leftIcon?: string\n rightIcon?: string\n inputClassName?: string\n innerRef?: React.RefObject<HTMLInputElement | HTMLTextAreaElement>\n clear?: boolean\n autoresize?: boolean\n autoComplete?: HTMLInputElement['autocomplete']\n autoresizeMaxRows?: number\n characterCounter?: boolean\n mask?: InputMaskedProps['mask']\n // Validation\n minLength?: number\n maxLength?: number\n pattern?: string\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction StringComponent(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useMemo(\n () => ({\n required: tr.inputErrorRequired,\n minLength: tr.stringInputErrorMinLength,\n maxLength: tr.stringInputErrorMaxLength,\n pattern: tr.inputErrorPattern,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n const schema = useMemo<JSONSchema7>(\n () =>\n props.schema ?? {\n type: 'string',\n minLength: props.minLength,\n maxLength: props.maxLength,\n pattern: props.pattern,\n },\n [props.schema, props.minLength, props.maxLength, props.pattern]\n )\n const fromInput = useCallback(\n ({ value, cleanedValue }: { value: string; cleanedValue: string }) => {\n if (value === '') {\n return props.emptyValue\n }\n // Cleaned value for masked\n return cleanedValue ?? value\n },\n [props.emptyValue]\n )\n\n const preparedProps: Props = {\n ...props,\n errorMessages,\n schema,\n fromInput,\n width: props.width ?? 'large',\n }\n\n const {\n id,\n name,\n className,\n autoComplete,\n innerRef,\n inputClassName,\n layout,\n type,\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n value,\n info,\n warning,\n error,\n disabled,\n help,\n multiline,\n leftIcon,\n rightIcon,\n clear,\n autoresize = true,\n autoresizeMaxRows = 6,\n characterCounter,\n mask,\n width,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n const characterCounterElement = characterCounter\n ? props.maxLength\n ? `${value?.length ?? '0'}/${props.maxLength}`\n : `${value?.length ?? '0'}`\n : undefined\n const cn = classnames('dnb-forms-field-string__input', inputClassName)\n\n const sharedProps = {\n id,\n name,\n autoComplete,\n className: cn,\n placeholder: placeholder,\n suffix: help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined,\n on_focus: handleFocus,\n on_blur: handleBlur,\n on_change: handleChange,\n disabled: disabled,\n stretch: width !== undefined,\n inner_ref: innerRef,\n status: error ? 'error' : undefined,\n value: value?.toString() ?? '',\n }\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-string', className)}\n forId={id}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n labelSecondary={labelSecondary ?? characterCounterElement}\n info={info}\n warning={warning}\n disabled={disabled}\n error={error}\n width={width === 'stretch' ? width : undefined}\n contentsWidth={width !== false ? width : undefined}\n {...pickSpacingProps(props)}\n >\n {multiline ? (\n <Textarea\n {...sharedProps}\n autoresize={autoresize}\n autoresize_max_rows={autoresizeMaxRows}\n />\n ) : mask ? (\n <InputMasked\n {...sharedProps}\n mask={mask}\n icon={leftIcon ?? rightIcon}\n icon_position={rightIcon && !leftIcon ? 'right' : undefined}\n />\n ) : (\n <Input\n {...sharedProps}\n type={type}\n icon={leftIcon ?? rightIcon}\n icon_position={rightIcon && !leftIcon ? 'right' : undefined}\n clear={clear}\n />\n )}\n </FieldBlock>\n )\n}\n\nStringComponent._supportsSpacingProps = true\nexport default StringComponent\n"],"mappings":"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"}
@@ -63,13 +63,15 @@ function Toggle(props) {
63
63
  }, (0, _utils.pickSpacingProps)(props)), {}, {
64
64
  info,
65
65
  warning,
66
- error
66
+ error,
67
+ disabled
67
68
  });
68
69
  const fieldBlockProps = _objectSpread(_objectSpread({}, fieldBlockPropsWithoutLabel), {}, {
69
70
  layout,
70
71
  label,
71
72
  labelDescription,
72
- labelSecondary
73
+ labelSecondary,
74
+ disabled
73
75
  });
74
76
  const isOn = value === valueOn;
75
77
  const isOff = value === valueOff;