@dnb/eufemia 10.10.0 → 10.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (722) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/cjs/components/accordion/Accordion.d.ts +2 -3
  3. package/cjs/components/anchor/Anchor.d.ts +2 -1
  4. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +16 -16
  5. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  6. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +9 -9
  7. package/cjs/components/avatar/Avatar.d.ts +2 -1
  8. package/cjs/components/breadcrumb/BreadcrumbItem.js +3 -3
  9. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  10. package/cjs/components/button/Button.d.ts +1 -0
  11. package/cjs/components/date-picker/style/dnb-date-picker.css +0 -1
  12. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  13. package/cjs/components/dialog/parts/DialogBody.js +1 -1
  14. package/cjs/components/dialog/parts/DialogBody.js.map +1 -1
  15. package/cjs/components/drawer/parts/DrawerBody.js +1 -1
  16. package/cjs/components/drawer/parts/DrawerBody.js.map +1 -1
  17. package/cjs/components/dropdown/style/dnb-dropdown.css +39 -1
  18. package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
  19. package/cjs/components/dropdown/style/dnb-dropdown.scss +38 -1
  20. package/cjs/components/dropdown/style/themes/dnb-dropdown-theme-sbanken.css +95 -0
  21. package/cjs/components/dropdown/style/themes/dnb-dropdown-theme-sbanken.min.css +1 -0
  22. package/cjs/components/dropdown/style/themes/dnb-dropdown-theme-sbanken.scss +87 -0
  23. package/cjs/components/dropdown/style/themes/dnb-dropdown-theme-ui.css +11 -35
  24. package/cjs/components/dropdown/style/themes/dnb-dropdown-theme-ui.min.css +1 -1
  25. package/cjs/components/dropdown/style/themes/dnb-dropdown-theme-ui.scss +10 -32
  26. package/cjs/components/flex/Flex.d.ts +2 -1
  27. package/cjs/components/flex/Flex.js.map +1 -1
  28. package/cjs/components/flex/utils.d.ts +1 -1
  29. package/cjs/components/flex/utils.js +2 -14
  30. package/cjs/components/flex/utils.js.map +1 -1
  31. package/cjs/components/form-label/FormLabel.d.ts +31 -58
  32. package/cjs/components/form-label/FormLabel.js +33 -83
  33. package/cjs/components/form-label/FormLabel.js.map +1 -1
  34. package/cjs/components/form-row/style/dnb-form-row.css +0 -1
  35. package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
  36. package/cjs/components/global-status/GlobalStatus.js +3 -2
  37. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  38. package/cjs/components/global-status/style/dnb-global-status.css +2 -4
  39. package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
  40. package/cjs/components/global-status/style/dnb-global-status.scss +9 -10
  41. package/cjs/components/grid/Grid.d.ts +2 -1
  42. package/cjs/components/grid/Grid.js.map +1 -1
  43. package/cjs/components/input/style/dnb-input.css +4 -2
  44. package/cjs/components/input/style/dnb-input.min.css +1 -1
  45. package/cjs/components/input/style/dnb-input.scss +9 -2
  46. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.css +1 -1
  47. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -1
  48. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.scss +1 -1
  49. package/cjs/components/input/style/themes/dnb-input-theme-ui.css +15 -8
  50. package/cjs/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  51. package/cjs/components/input/style/themes/dnb-input-theme-ui.scss +24 -6
  52. package/cjs/components/input-masked/InputMaskedHooks.js +4 -4
  53. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  54. package/cjs/components/lib.d.ts +12 -6
  55. package/cjs/components/modal/parts/ModalInner.d.ts +1 -6
  56. package/cjs/components/modal/parts/ModalInner.js +6 -6
  57. package/cjs/components/modal/parts/ModalInner.js.map +1 -1
  58. package/cjs/components/number-format/NumberUtils.js +15 -5
  59. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  60. package/cjs/components/radio/style/dnb-radio.css +0 -1
  61. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  62. package/cjs/components/section/Section.d.ts +43 -17
  63. package/cjs/components/section/Section.js +47 -12
  64. package/cjs/components/section/Section.js.map +1 -1
  65. package/cjs/components/section/style/dnb-section.css +76 -14
  66. package/cjs/components/section/style/dnb-section.min.css +7 -1
  67. package/cjs/components/section/style/dnb-section.scss +78 -26
  68. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.css +21 -26
  69. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.min.css +3 -1
  70. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.scss +19 -33
  71. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +44 -57
  72. package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +3 -1
  73. package/cjs/components/section/style/themes/dnb-section-theme-ui.scss +48 -80
  74. package/cjs/components/space/Space.js +10 -11
  75. package/cjs/components/space/Space.js.map +1 -1
  76. package/cjs/components/space/SpacingHelper.d.ts +1 -3
  77. package/cjs/components/space/SpacingHelper.js +6 -0
  78. package/cjs/components/space/SpacingHelper.js.map +1 -1
  79. package/cjs/components/space/SpacingUtils.d.ts +9 -2
  80. package/cjs/components/space/SpacingUtils.js +73 -10
  81. package/cjs/components/space/SpacingUtils.js.map +1 -1
  82. package/cjs/components/space/style/dnb-space.css +36 -0
  83. package/cjs/components/space/style/dnb-space.min.css +1 -1
  84. package/cjs/components/space/style/dnb-space.scss +33 -0
  85. package/cjs/components/space/types.d.ts +8 -1
  86. package/cjs/components/space/types.js.map +1 -1
  87. package/cjs/components/tabs/Tabs.d.ts +4 -1
  88. package/cjs/components/tabs/TabsContentWrapper.js +7 -3
  89. package/cjs/components/tabs/TabsContentWrapper.js.map +1 -1
  90. package/cjs/components/tag/Tag.d.ts +2 -1
  91. package/cjs/components/textarea/style/dnb-textarea.css +4 -0
  92. package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
  93. package/cjs/components/textarea/style/dnb-textarea.scss +9 -0
  94. package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +2 -1
  95. package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -1
  96. package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +2 -1
  97. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.css +1 -1
  98. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  99. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.scss +1 -1
  100. package/cjs/components/toggle-button/ToggleButton.d.ts +1 -1
  101. package/cjs/components/toggle-button/style/dnb-toggle-button.css +0 -1
  102. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  103. package/cjs/components/upload/Upload.js +14 -3
  104. package/cjs/components/upload/Upload.js.map +1 -1
  105. package/cjs/elements/Element.d.ts +2 -1
  106. package/cjs/elements/Link.d.ts +2 -1
  107. package/cjs/elements/blockquote/Blockquote.d.ts +2 -1
  108. package/cjs/elements/code/Code.d.ts +2 -1
  109. package/cjs/elements/div/Div.d.ts +2 -1
  110. package/cjs/elements/hr/style/dnb-hr.scss +1 -1
  111. package/cjs/elements/img/Img.js.map +1 -1
  112. package/cjs/elements/lib.d.ts +26 -10
  113. package/cjs/elements/lists/Dd.d.ts +2 -1
  114. package/cjs/elements/lists/Dt.d.ts +2 -1
  115. package/cjs/elements/span/Span.d.ts +2 -1
  116. package/cjs/elements/typography/H.d.ts +2 -1
  117. package/cjs/elements/typography/H.js.map +1 -1
  118. package/cjs/extensions/forms/DataContext/Context.d.ts +2 -0
  119. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  120. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +1 -1
  121. package/cjs/extensions/forms/DataContext/Provider/Provider.js +35 -20
  122. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  123. package/cjs/extensions/forms/Field/Number/Number.js +5 -1
  124. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  125. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +10 -11
  126. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  127. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -3
  128. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  129. package/cjs/extensions/forms/Field/Selection/Selection.js +10 -7
  130. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  131. package/cjs/extensions/forms/Field/String/String.d.ts +1 -0
  132. package/cjs/extensions/forms/Field/String/String.js +27 -50
  133. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  134. package/cjs/extensions/forms/Field/Toggle/Toggle.js +24 -26
  135. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  136. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -0
  137. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +4 -3
  138. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  139. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -1
  140. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  141. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +7 -2
  142. package/cjs/extensions/forms/Form/Handler/Handler.js +5 -3
  143. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  144. package/cjs/extensions/forms/constants/countries.d.ts +11 -2
  145. package/cjs/extensions/forms/constants/countries.js +1943 -959
  146. package/cjs/extensions/forms/constants/countries.js.map +1 -1
  147. package/cjs/extensions/forms/hooks/useDataValue.js +3 -0
  148. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  149. package/cjs/extensions/forms/style/dnb-forms.css +0 -1
  150. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  151. package/cjs/extensions/forms/types.d.ts +2 -0
  152. package/cjs/extensions/forms/types.js.map +1 -1
  153. package/cjs/extensions/payment-card/PaymentCard.d.ts +6 -3
  154. package/cjs/extensions/payment-card/PaymentCard.js +53 -36
  155. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  156. package/cjs/extensions/payment-card/icons/index.js +11 -7
  157. package/cjs/extensions/payment-card/icons/index.js.map +1 -1
  158. package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +6 -3
  159. package/cjs/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +179 -0
  160. package/cjs/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -5
  161. package/cjs/fragments/lib.d.ts +2 -1
  162. package/cjs/fragments/scroll-view/ScrollView.d.ts +2 -1
  163. package/cjs/shared/Context.d.ts +2 -0
  164. package/cjs/shared/Context.js.map +1 -1
  165. package/cjs/shared/Eufemia.d.ts +1 -1
  166. package/cjs/shared/Eufemia.js +2 -2
  167. package/cjs/shared/Eufemia.js.map +1 -1
  168. package/cjs/shared/component-helper.d.ts +1 -1
  169. package/cjs/shared/component-helper.js +10 -25
  170. package/cjs/shared/component-helper.js.map +1 -1
  171. package/cjs/shared/helpers/InteractionInvalidation.d.ts +1 -1
  172. package/cjs/shared/helpers/InteractionInvalidation.js +2 -2
  173. package/cjs/shared/helpers/InteractionInvalidation.js.map +1 -1
  174. package/cjs/shared/helpers/filterProps.d.ts +14 -0
  175. package/cjs/shared/helpers/filterProps.js +39 -0
  176. package/cjs/shared/helpers/filterProps.js.map +1 -0
  177. package/cjs/shared/locales/en-GB.d.ts +6 -0
  178. package/cjs/shared/locales/en-GB.js +8 -2
  179. package/cjs/shared/locales/en-GB.js.map +1 -1
  180. package/cjs/shared/locales/en-US.d.ts +6 -0
  181. package/cjs/shared/locales/index.d.ts +12 -0
  182. package/cjs/shared/locales/nb-NO.d.ts +6 -0
  183. package/cjs/shared/locales/nb-NO.js +8 -2
  184. package/cjs/shared/locales/nb-NO.js.map +1 -1
  185. package/cjs/shared/types.d.ts +7 -1
  186. package/cjs/shared/types.js.map +1 -1
  187. package/cjs/shared/useMedia.d.ts +5 -0
  188. package/cjs/shared/useMedia.js +16 -9
  189. package/cjs/shared/useMedia.js.map +1 -1
  190. package/cjs/style/core/helper-classes/skip-link.scss +13 -7
  191. package/cjs/style/core/reset.scss +1 -1
  192. package/cjs/style/core/utilities.scss +16 -5
  193. package/cjs/style/dnb-ui-basis.css +14 -9
  194. package/cjs/style/dnb-ui-basis.min.css +1 -1
  195. package/cjs/style/dnb-ui-basis.scss +1 -1
  196. package/cjs/style/dnb-ui-body.css +1 -1
  197. package/cjs/style/dnb-ui-components.css +167 -28
  198. package/cjs/style/dnb-ui-components.min.css +7 -1
  199. package/cjs/style/dnb-ui-core.css +14 -9
  200. package/cjs/style/dnb-ui-core.min.css +1 -1
  201. package/cjs/style/dnb-ui-elements.css +1 -1
  202. package/cjs/style/dnb-ui-extensions.css +0 -1
  203. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  204. package/cjs/style/dnb-ui-fragments.css +6 -3
  205. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  206. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +7 -1
  207. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  208. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +240 -133
  209. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +11 -3
  210. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  211. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +0 -1
  212. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  213. package/cjs/style/themes/theme-sbanken/fonts.scss +10 -0
  214. package/cjs/style/themes/theme-sbanken/globals.scss +8 -0
  215. package/cjs/style/themes/theme-sbanken/properties.scss +1 -1
  216. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +14 -1
  217. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  218. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +462 -332
  219. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +12 -4
  220. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  221. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  222. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +0 -1
  223. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  224. package/cjs/style/themes/theme-ui/globals.scss +8 -0
  225. package/cjs/style/themes/theme-ui/ui-theme-basis.css +7 -1
  226. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  227. package/cjs/style/themes/theme-ui/ui-theme-components.css +240 -133
  228. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +11 -3
  229. package/cjs/style/themes/theme-ui/ui-theme-elements.css +1 -1
  230. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +0 -1
  231. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  232. package/components/accordion/Accordion.d.ts +2 -3
  233. package/components/anchor/Anchor.d.ts +2 -1
  234. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +16 -16
  235. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  236. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +9 -9
  237. package/components/avatar/Avatar.d.ts +2 -1
  238. package/components/breadcrumb/BreadcrumbItem.js +4 -4
  239. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  240. package/components/button/Button.d.ts +1 -0
  241. package/components/date-picker/style/dnb-date-picker.css +0 -1
  242. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  243. package/components/dialog/parts/DialogBody.js +1 -1
  244. package/components/dialog/parts/DialogBody.js.map +1 -1
  245. package/components/drawer/parts/DrawerBody.js +1 -1
  246. package/components/drawer/parts/DrawerBody.js.map +1 -1
  247. package/components/dropdown/style/dnb-dropdown.css +39 -1
  248. package/components/dropdown/style/dnb-dropdown.min.css +1 -1
  249. package/components/dropdown/style/dnb-dropdown.scss +38 -1
  250. package/components/dropdown/style/themes/dnb-dropdown-theme-sbanken.css +95 -0
  251. package/components/dropdown/style/themes/dnb-dropdown-theme-sbanken.min.css +1 -0
  252. package/components/dropdown/style/themes/dnb-dropdown-theme-sbanken.scss +87 -0
  253. package/components/dropdown/style/themes/dnb-dropdown-theme-ui.css +11 -35
  254. package/components/dropdown/style/themes/dnb-dropdown-theme-ui.min.css +1 -1
  255. package/components/dropdown/style/themes/dnb-dropdown-theme-ui.scss +10 -32
  256. package/components/flex/Flex.d.ts +2 -1
  257. package/components/flex/Flex.js.map +1 -1
  258. package/components/flex/utils.d.ts +1 -1
  259. package/components/flex/utils.js +2 -13
  260. package/components/flex/utils.js.map +1 -1
  261. package/components/form-label/FormLabel.d.ts +31 -58
  262. package/components/form-label/FormLabel.js +33 -82
  263. package/components/form-label/FormLabel.js.map +1 -1
  264. package/components/form-row/style/dnb-form-row.css +0 -1
  265. package/components/form-row/style/dnb-form-row.min.css +1 -1
  266. package/components/global-status/GlobalStatus.js +3 -2
  267. package/components/global-status/GlobalStatus.js.map +1 -1
  268. package/components/global-status/style/dnb-global-status.css +2 -4
  269. package/components/global-status/style/dnb-global-status.min.css +1 -1
  270. package/components/global-status/style/dnb-global-status.scss +9 -10
  271. package/components/grid/Grid.d.ts +2 -1
  272. package/components/grid/Grid.js.map +1 -1
  273. package/components/input/style/dnb-input.css +4 -2
  274. package/components/input/style/dnb-input.min.css +1 -1
  275. package/components/input/style/dnb-input.scss +9 -2
  276. package/components/input/style/themes/dnb-input-theme-sbanken.css +1 -1
  277. package/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -1
  278. package/components/input/style/themes/dnb-input-theme-sbanken.scss +1 -1
  279. package/components/input/style/themes/dnb-input-theme-ui.css +15 -8
  280. package/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  281. package/components/input/style/themes/dnb-input-theme-ui.scss +24 -6
  282. package/components/input-masked/InputMaskedHooks.js +5 -5
  283. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  284. package/components/lib.d.ts +12 -6
  285. package/components/modal/parts/ModalInner.d.ts +1 -6
  286. package/components/modal/parts/ModalInner.js +6 -6
  287. package/components/modal/parts/ModalInner.js.map +1 -1
  288. package/components/number-format/NumberUtils.js +15 -5
  289. package/components/number-format/NumberUtils.js.map +1 -1
  290. package/components/radio/style/dnb-radio.css +0 -1
  291. package/components/radio/style/dnb-radio.min.css +1 -1
  292. package/components/section/Section.d.ts +43 -17
  293. package/components/section/Section.js +48 -13
  294. package/components/section/Section.js.map +1 -1
  295. package/components/section/style/dnb-section.css +76 -14
  296. package/components/section/style/dnb-section.min.css +7 -1
  297. package/components/section/style/dnb-section.scss +78 -26
  298. package/components/section/style/themes/dnb-section-theme-sbanken.css +21 -26
  299. package/components/section/style/themes/dnb-section-theme-sbanken.min.css +3 -1
  300. package/components/section/style/themes/dnb-section-theme-sbanken.scss +19 -33
  301. package/components/section/style/themes/dnb-section-theme-ui.css +44 -57
  302. package/components/section/style/themes/dnb-section-theme-ui.min.css +3 -1
  303. package/components/section/style/themes/dnb-section-theme-ui.scss +48 -80
  304. package/components/space/Space.js +11 -12
  305. package/components/space/Space.js.map +1 -1
  306. package/components/space/SpacingHelper.d.ts +1 -3
  307. package/components/space/SpacingHelper.js +1 -2
  308. package/components/space/SpacingHelper.js.map +1 -1
  309. package/components/space/SpacingUtils.d.ts +9 -2
  310. package/components/space/SpacingUtils.js +70 -9
  311. package/components/space/SpacingUtils.js.map +1 -1
  312. package/components/space/style/dnb-space.css +36 -0
  313. package/components/space/style/dnb-space.min.css +1 -1
  314. package/components/space/style/dnb-space.scss +33 -0
  315. package/components/space/types.d.ts +8 -1
  316. package/components/space/types.js.map +1 -1
  317. package/components/tabs/Tabs.d.ts +4 -1
  318. package/components/tabs/TabsContentWrapper.js +7 -3
  319. package/components/tabs/TabsContentWrapper.js.map +1 -1
  320. package/components/tag/Tag.d.ts +2 -1
  321. package/components/textarea/style/dnb-textarea.css +4 -0
  322. package/components/textarea/style/dnb-textarea.min.css +1 -1
  323. package/components/textarea/style/dnb-textarea.scss +9 -0
  324. package/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +2 -1
  325. package/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -1
  326. package/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +2 -1
  327. package/components/textarea/style/themes/dnb-textarea-theme-ui.css +1 -1
  328. package/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  329. package/components/textarea/style/themes/dnb-textarea-theme-ui.scss +1 -1
  330. package/components/toggle-button/ToggleButton.d.ts +1 -1
  331. package/components/toggle-button/style/dnb-toggle-button.css +0 -1
  332. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  333. package/components/upload/Upload.js +14 -3
  334. package/components/upload/Upload.js.map +1 -1
  335. package/elements/Element.d.ts +2 -1
  336. package/elements/Link.d.ts +2 -1
  337. package/elements/blockquote/Blockquote.d.ts +2 -1
  338. package/elements/code/Code.d.ts +2 -1
  339. package/elements/div/Div.d.ts +2 -1
  340. package/elements/hr/style/dnb-hr.scss +1 -1
  341. package/elements/img/Img.js.map +1 -1
  342. package/elements/lib.d.ts +26 -10
  343. package/elements/lists/Dd.d.ts +2 -1
  344. package/elements/lists/Dt.d.ts +2 -1
  345. package/elements/span/Span.d.ts +2 -1
  346. package/elements/typography/H.d.ts +2 -1
  347. package/elements/typography/H.js.map +1 -1
  348. package/es/components/accordion/Accordion.d.ts +2 -3
  349. package/es/components/anchor/Anchor.d.ts +2 -1
  350. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +16 -16
  351. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  352. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +9 -9
  353. package/es/components/avatar/Avatar.d.ts +2 -1
  354. package/es/components/breadcrumb/BreadcrumbItem.js +4 -4
  355. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  356. package/es/components/button/Button.d.ts +1 -0
  357. package/es/components/date-picker/style/dnb-date-picker.css +0 -1
  358. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  359. package/es/components/dialog/parts/DialogBody.js +1 -1
  360. package/es/components/dialog/parts/DialogBody.js.map +1 -1
  361. package/es/components/drawer/parts/DrawerBody.js +1 -1
  362. package/es/components/drawer/parts/DrawerBody.js.map +1 -1
  363. package/es/components/dropdown/style/dnb-dropdown.css +39 -1
  364. package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
  365. package/es/components/dropdown/style/dnb-dropdown.scss +38 -1
  366. package/es/components/dropdown/style/themes/dnb-dropdown-theme-sbanken.css +95 -0
  367. package/es/components/dropdown/style/themes/dnb-dropdown-theme-sbanken.min.css +1 -0
  368. package/es/components/dropdown/style/themes/dnb-dropdown-theme-sbanken.scss +87 -0
  369. package/es/components/dropdown/style/themes/dnb-dropdown-theme-ui.css +11 -35
  370. package/es/components/dropdown/style/themes/dnb-dropdown-theme-ui.min.css +1 -1
  371. package/es/components/dropdown/style/themes/dnb-dropdown-theme-ui.scss +10 -32
  372. package/es/components/flex/Flex.d.ts +2 -1
  373. package/es/components/flex/Flex.js +3 -1
  374. package/es/components/flex/Flex.js.map +1 -1
  375. package/es/components/flex/utils.d.ts +1 -1
  376. package/es/components/flex/utils.js +2 -13
  377. package/es/components/flex/utils.js.map +1 -1
  378. package/es/components/form-label/FormLabel.d.ts +31 -58
  379. package/es/components/form-label/FormLabel.js +33 -82
  380. package/es/components/form-label/FormLabel.js.map +1 -1
  381. package/es/components/form-row/style/dnb-form-row.css +0 -1
  382. package/es/components/form-row/style/dnb-form-row.min.css +1 -1
  383. package/es/components/global-status/GlobalStatus.js +3 -2
  384. package/es/components/global-status/GlobalStatus.js.map +1 -1
  385. package/es/components/global-status/style/dnb-global-status.css +2 -4
  386. package/es/components/global-status/style/dnb-global-status.min.css +1 -1
  387. package/es/components/global-status/style/dnb-global-status.scss +9 -10
  388. package/es/components/grid/Grid.d.ts +2 -1
  389. package/es/components/grid/Grid.js +3 -1
  390. package/es/components/grid/Grid.js.map +1 -1
  391. package/es/components/input/style/dnb-input.css +4 -2
  392. package/es/components/input/style/dnb-input.min.css +1 -1
  393. package/es/components/input/style/dnb-input.scss +9 -2
  394. package/es/components/input/style/themes/dnb-input-theme-sbanken.css +1 -1
  395. package/es/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -1
  396. package/es/components/input/style/themes/dnb-input-theme-sbanken.scss +1 -1
  397. package/es/components/input/style/themes/dnb-input-theme-ui.css +15 -8
  398. package/es/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  399. package/es/components/input/style/themes/dnb-input-theme-ui.scss +24 -6
  400. package/es/components/input-masked/InputMaskedHooks.js +5 -5
  401. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  402. package/es/components/lib.d.ts +12 -6
  403. package/es/components/modal/parts/ModalInner.d.ts +1 -6
  404. package/es/components/modal/parts/ModalInner.js +6 -6
  405. package/es/components/modal/parts/ModalInner.js.map +1 -1
  406. package/es/components/number-format/NumberUtils.js +15 -5
  407. package/es/components/number-format/NumberUtils.js.map +1 -1
  408. package/es/components/radio/style/dnb-radio.css +0 -1
  409. package/es/components/radio/style/dnb-radio.min.css +1 -1
  410. package/es/components/section/Section.d.ts +43 -17
  411. package/es/components/section/Section.js +48 -13
  412. package/es/components/section/Section.js.map +1 -1
  413. package/es/components/section/style/dnb-section.css +76 -14
  414. package/es/components/section/style/dnb-section.min.css +7 -1
  415. package/es/components/section/style/dnb-section.scss +78 -26
  416. package/es/components/section/style/themes/dnb-section-theme-sbanken.css +21 -26
  417. package/es/components/section/style/themes/dnb-section-theme-sbanken.min.css +3 -1
  418. package/es/components/section/style/themes/dnb-section-theme-sbanken.scss +19 -33
  419. package/es/components/section/style/themes/dnb-section-theme-ui.css +44 -57
  420. package/es/components/section/style/themes/dnb-section-theme-ui.min.css +3 -1
  421. package/es/components/section/style/themes/dnb-section-theme-ui.scss +48 -80
  422. package/es/components/space/Space.js +11 -12
  423. package/es/components/space/Space.js.map +1 -1
  424. package/es/components/space/SpacingHelper.d.ts +1 -3
  425. package/es/components/space/SpacingHelper.js +1 -2
  426. package/es/components/space/SpacingHelper.js.map +1 -1
  427. package/es/components/space/SpacingUtils.d.ts +9 -2
  428. package/es/components/space/SpacingUtils.js +70 -9
  429. package/es/components/space/SpacingUtils.js.map +1 -1
  430. package/es/components/space/style/dnb-space.css +36 -0
  431. package/es/components/space/style/dnb-space.min.css +1 -1
  432. package/es/components/space/style/dnb-space.scss +33 -0
  433. package/es/components/space/types.d.ts +8 -1
  434. package/es/components/space/types.js.map +1 -1
  435. package/es/components/tabs/Tabs.d.ts +4 -1
  436. package/es/components/tabs/TabsContentWrapper.js +7 -3
  437. package/es/components/tabs/TabsContentWrapper.js.map +1 -1
  438. package/es/components/tag/Tag.d.ts +2 -1
  439. package/es/components/textarea/style/dnb-textarea.css +4 -0
  440. package/es/components/textarea/style/dnb-textarea.min.css +1 -1
  441. package/es/components/textarea/style/dnb-textarea.scss +9 -0
  442. package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +2 -1
  443. package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -1
  444. package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +2 -1
  445. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.css +1 -1
  446. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  447. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.scss +1 -1
  448. package/es/components/toggle-button/ToggleButton.d.ts +1 -1
  449. package/es/components/toggle-button/style/dnb-toggle-button.css +0 -1
  450. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  451. package/es/components/upload/Upload.js +14 -3
  452. package/es/components/upload/Upload.js.map +1 -1
  453. package/es/elements/Element.d.ts +2 -1
  454. package/es/elements/Link.d.ts +2 -1
  455. package/es/elements/blockquote/Blockquote.d.ts +2 -1
  456. package/es/elements/code/Code.d.ts +2 -1
  457. package/es/elements/div/Div.d.ts +2 -1
  458. package/es/elements/hr/style/dnb-hr.scss +1 -1
  459. package/es/elements/img/Img.js.map +1 -1
  460. package/es/elements/lib.d.ts +26 -10
  461. package/es/elements/lists/Dd.d.ts +2 -1
  462. package/es/elements/lists/Dt.d.ts +2 -1
  463. package/es/elements/span/Span.d.ts +2 -1
  464. package/es/elements/typography/H.d.ts +2 -1
  465. package/es/elements/typography/H.js.map +1 -1
  466. package/es/extensions/forms/DataContext/Context.d.ts +2 -0
  467. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  468. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +1 -1
  469. package/es/extensions/forms/DataContext/Provider/Provider.js +34 -21
  470. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  471. package/es/extensions/forms/Field/Number/Number.js +5 -1
  472. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  473. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +10 -11
  474. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  475. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +7 -4
  476. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  477. package/es/extensions/forms/Field/Selection/Selection.js +11 -8
  478. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  479. package/es/extensions/forms/Field/String/String.d.ts +1 -0
  480. package/es/extensions/forms/Field/String/String.js +27 -50
  481. package/es/extensions/forms/Field/String/String.js.map +1 -1
  482. package/es/extensions/forms/Field/Toggle/Toggle.js +24 -27
  483. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  484. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -0
  485. package/es/extensions/forms/FieldBlock/FieldBlock.js +4 -3
  486. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  487. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -1
  488. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  489. package/es/extensions/forms/Form/Handler/Handler.d.ts +7 -2
  490. package/es/extensions/forms/Form/Handler/Handler.js +5 -3
  491. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  492. package/es/extensions/forms/constants/countries.d.ts +11 -2
  493. package/es/extensions/forms/constants/countries.js +1943 -959
  494. package/es/extensions/forms/constants/countries.js.map +1 -1
  495. package/es/extensions/forms/hooks/useDataValue.js +3 -0
  496. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  497. package/es/extensions/forms/style/dnb-forms.css +0 -1
  498. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  499. package/es/extensions/forms/types.d.ts +2 -0
  500. package/es/extensions/forms/types.js.map +1 -1
  501. package/es/extensions/payment-card/PaymentCard.d.ts +6 -3
  502. package/es/extensions/payment-card/PaymentCard.js +47 -31
  503. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  504. package/es/extensions/payment-card/icons/index.js +9 -5
  505. package/es/extensions/payment-card/icons/index.js.map +1 -1
  506. package/es/fragments/drawer-list/style/dnb-drawer-list.scss +6 -3
  507. package/es/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +179 -0
  508. package/es/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -5
  509. package/es/fragments/lib.d.ts +2 -1
  510. package/es/fragments/scroll-view/ScrollView.d.ts +2 -1
  511. package/es/shared/Context.d.ts +2 -0
  512. package/es/shared/Context.js.map +1 -1
  513. package/es/shared/Eufemia.d.ts +1 -1
  514. package/es/shared/Eufemia.js +2 -2
  515. package/es/shared/Eufemia.js.map +1 -1
  516. package/es/shared/component-helper.d.ts +1 -1
  517. package/es/shared/component-helper.js +4 -20
  518. package/es/shared/component-helper.js.map +1 -1
  519. package/es/shared/helpers/InteractionInvalidation.d.ts +1 -1
  520. package/es/shared/helpers/InteractionInvalidation.js +2 -2
  521. package/es/shared/helpers/InteractionInvalidation.js.map +1 -1
  522. package/es/shared/helpers/filterProps.d.ts +14 -0
  523. package/es/shared/helpers/filterProps.js +30 -0
  524. package/es/shared/helpers/filterProps.js.map +1 -0
  525. package/es/shared/locales/en-GB.d.ts +6 -0
  526. package/es/shared/locales/en-GB.js +8 -2
  527. package/es/shared/locales/en-GB.js.map +1 -1
  528. package/es/shared/locales/en-US.d.ts +6 -0
  529. package/es/shared/locales/index.d.ts +12 -0
  530. package/es/shared/locales/nb-NO.d.ts +6 -0
  531. package/es/shared/locales/nb-NO.js +8 -2
  532. package/es/shared/locales/nb-NO.js.map +1 -1
  533. package/es/shared/types.d.ts +7 -1
  534. package/es/shared/types.js.map +1 -1
  535. package/es/shared/useMedia.d.ts +5 -0
  536. package/es/shared/useMedia.js +16 -9
  537. package/es/shared/useMedia.js.map +1 -1
  538. package/es/style/core/helper-classes/skip-link.scss +13 -7
  539. package/es/style/core/reset.scss +1 -1
  540. package/es/style/core/utilities.scss +16 -5
  541. package/es/style/dnb-ui-basis.css +14 -9
  542. package/es/style/dnb-ui-basis.min.css +1 -1
  543. package/es/style/dnb-ui-basis.scss +1 -1
  544. package/es/style/dnb-ui-body.css +1 -1
  545. package/es/style/dnb-ui-components.css +167 -28
  546. package/es/style/dnb-ui-components.min.css +7 -1
  547. package/es/style/dnb-ui-core.css +14 -9
  548. package/es/style/dnb-ui-core.min.css +1 -1
  549. package/es/style/dnb-ui-elements.css +1 -1
  550. package/es/style/dnb-ui-extensions.css +0 -1
  551. package/es/style/dnb-ui-extensions.min.css +1 -1
  552. package/es/style/dnb-ui-fragments.css +6 -3
  553. package/es/style/dnb-ui-fragments.min.css +1 -1
  554. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +7 -1
  555. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  556. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +240 -133
  557. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +11 -3
  558. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  559. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +0 -1
  560. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  561. package/es/style/themes/theme-sbanken/fonts.scss +10 -0
  562. package/es/style/themes/theme-sbanken/globals.scss +8 -0
  563. package/es/style/themes/theme-sbanken/properties.scss +1 -1
  564. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +14 -1
  565. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  566. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +462 -332
  567. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +12 -4
  568. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  569. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  570. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +0 -1
  571. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  572. package/es/style/themes/theme-ui/globals.scss +8 -0
  573. package/es/style/themes/theme-ui/ui-theme-basis.css +7 -1
  574. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  575. package/es/style/themes/theme-ui/ui-theme-components.css +240 -133
  576. package/es/style/themes/theme-ui/ui-theme-components.min.css +11 -3
  577. package/es/style/themes/theme-ui/ui-theme-elements.css +1 -1
  578. package/es/style/themes/theme-ui/ui-theme-extensions.css +0 -1
  579. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  580. package/esm/dnb-ui-basis.min.mjs +1 -1
  581. package/esm/dnb-ui-components.min.mjs +1 -1
  582. package/esm/dnb-ui-elements.min.mjs +1 -1
  583. package/esm/dnb-ui-extensions.min.mjs +3 -3
  584. package/esm/dnb-ui-lib.min.mjs +1 -1
  585. package/extensions/forms/DataContext/Context.d.ts +2 -0
  586. package/extensions/forms/DataContext/Context.js.map +1 -1
  587. package/extensions/forms/DataContext/Provider/Provider.d.ts +1 -1
  588. package/extensions/forms/DataContext/Provider/Provider.js +32 -20
  589. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  590. package/extensions/forms/Field/Number/Number.js +5 -1
  591. package/extensions/forms/Field/Number/Number.js.map +1 -1
  592. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +10 -11
  593. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  594. package/extensions/forms/Field/SelectCountry/SelectCountry.js +7 -4
  595. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  596. package/extensions/forms/Field/Selection/Selection.js +11 -8
  597. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  598. package/extensions/forms/Field/String/String.d.ts +1 -0
  599. package/extensions/forms/Field/String/String.js +27 -50
  600. package/extensions/forms/Field/String/String.js.map +1 -1
  601. package/extensions/forms/Field/Toggle/Toggle.js +25 -27
  602. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  603. package/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -0
  604. package/extensions/forms/FieldBlock/FieldBlock.js +4 -3
  605. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  606. package/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -1
  607. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  608. package/extensions/forms/Form/Handler/Handler.d.ts +7 -2
  609. package/extensions/forms/Form/Handler/Handler.js +5 -3
  610. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  611. package/extensions/forms/constants/countries.d.ts +11 -2
  612. package/extensions/forms/constants/countries.js +1943 -959
  613. package/extensions/forms/constants/countries.js.map +1 -1
  614. package/extensions/forms/hooks/useDataValue.js +3 -0
  615. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  616. package/extensions/forms/style/dnb-forms.css +0 -1
  617. package/extensions/forms/style/dnb-forms.min.css +1 -1
  618. package/extensions/forms/types.d.ts +2 -0
  619. package/extensions/forms/types.js.map +1 -1
  620. package/extensions/payment-card/PaymentCard.d.ts +6 -3
  621. package/extensions/payment-card/PaymentCard.js +53 -36
  622. package/extensions/payment-card/PaymentCard.js.map +1 -1
  623. package/extensions/payment-card/icons/index.js +9 -5
  624. package/extensions/payment-card/icons/index.js.map +1 -1
  625. package/fragments/drawer-list/style/dnb-drawer-list.scss +6 -3
  626. package/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +179 -0
  627. package/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -5
  628. package/fragments/lib.d.ts +2 -1
  629. package/fragments/scroll-view/ScrollView.d.ts +2 -1
  630. package/package.json +1 -1
  631. package/shared/Context.d.ts +2 -0
  632. package/shared/Context.js.map +1 -1
  633. package/shared/Eufemia.d.ts +1 -1
  634. package/shared/Eufemia.js +2 -2
  635. package/shared/Eufemia.js.map +1 -1
  636. package/shared/component-helper.d.ts +1 -1
  637. package/shared/component-helper.js +4 -23
  638. package/shared/component-helper.js.map +1 -1
  639. package/shared/helpers/InteractionInvalidation.d.ts +1 -1
  640. package/shared/helpers/InteractionInvalidation.js +2 -2
  641. package/shared/helpers/InteractionInvalidation.js.map +1 -1
  642. package/shared/helpers/filterProps.d.ts +14 -0
  643. package/shared/helpers/filterProps.js +33 -0
  644. package/shared/helpers/filterProps.js.map +1 -0
  645. package/shared/locales/en-GB.d.ts +6 -0
  646. package/shared/locales/en-GB.js +8 -2
  647. package/shared/locales/en-GB.js.map +1 -1
  648. package/shared/locales/en-US.d.ts +6 -0
  649. package/shared/locales/index.d.ts +12 -0
  650. package/shared/locales/nb-NO.d.ts +6 -0
  651. package/shared/locales/nb-NO.js +8 -2
  652. package/shared/locales/nb-NO.js.map +1 -1
  653. package/shared/types.d.ts +7 -1
  654. package/shared/types.js.map +1 -1
  655. package/shared/useMedia.d.ts +5 -0
  656. package/shared/useMedia.js +16 -9
  657. package/shared/useMedia.js.map +1 -1
  658. package/style/core/helper-classes/skip-link.scss +13 -7
  659. package/style/core/reset.scss +1 -1
  660. package/style/core/utilities.scss +16 -5
  661. package/style/dnb-ui-basis.css +14 -9
  662. package/style/dnb-ui-basis.min.css +1 -1
  663. package/style/dnb-ui-basis.scss +1 -1
  664. package/style/dnb-ui-body.css +1 -1
  665. package/style/dnb-ui-components.css +167 -28
  666. package/style/dnb-ui-components.min.css +7 -1
  667. package/style/dnb-ui-core.css +14 -9
  668. package/style/dnb-ui-core.min.css +1 -1
  669. package/style/dnb-ui-elements.css +1 -1
  670. package/style/dnb-ui-extensions.css +0 -1
  671. package/style/dnb-ui-extensions.min.css +1 -1
  672. package/style/dnb-ui-fragments.css +6 -3
  673. package/style/dnb-ui-fragments.min.css +1 -1
  674. package/style/themes/theme-eiendom/eiendom-theme-basis.css +7 -1
  675. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  676. package/style/themes/theme-eiendom/eiendom-theme-components.css +240 -133
  677. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +11 -3
  678. package/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  679. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +0 -1
  680. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  681. package/style/themes/theme-sbanken/fonts.scss +10 -0
  682. package/style/themes/theme-sbanken/globals.scss +8 -0
  683. package/style/themes/theme-sbanken/properties.scss +1 -1
  684. package/style/themes/theme-sbanken/sbanken-theme-basis.css +14 -1
  685. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  686. package/style/themes/theme-sbanken/sbanken-theme-components.css +462 -332
  687. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +12 -4
  688. package/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  689. package/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  690. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +0 -1
  691. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  692. package/style/themes/theme-ui/globals.scss +8 -0
  693. package/style/themes/theme-ui/ui-theme-basis.css +7 -1
  694. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  695. package/style/themes/theme-ui/ui-theme-components.css +240 -133
  696. package/style/themes/theme-ui/ui-theme-components.min.css +11 -3
  697. package/style/themes/theme-ui/ui-theme-elements.css +1 -1
  698. package/style/themes/theme-ui/ui-theme-extensions.css +0 -1
  699. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  700. package/umd/dnb-ui-basis.min.js +1 -1
  701. package/umd/dnb-ui-components.min.js +1 -1
  702. package/umd/dnb-ui-elements.min.js +1 -1
  703. package/umd/dnb-ui-extensions.min.js +3 -3
  704. package/umd/dnb-ui-lib.min.js +1 -1
  705. package/cjs/extensions/payment-card/icons/CardIn.d.ts +0 -2
  706. package/cjs/extensions/payment-card/icons/CardIn.js +0 -26
  707. package/cjs/extensions/payment-card/icons/CardIn.js.map +0 -1
  708. package/cjs/extensions/payment-card/icons/Padlock.d.ts +0 -3
  709. package/cjs/extensions/payment-card/icons/Padlock.js +0 -26
  710. package/cjs/extensions/payment-card/icons/Padlock.js.map +0 -1
  711. package/es/extensions/payment-card/icons/CardIn.d.ts +0 -2
  712. package/es/extensions/payment-card/icons/CardIn.js +0 -18
  713. package/es/extensions/payment-card/icons/CardIn.js.map +0 -1
  714. package/es/extensions/payment-card/icons/Padlock.d.ts +0 -3
  715. package/es/extensions/payment-card/icons/Padlock.js +0 -18
  716. package/es/extensions/payment-card/icons/Padlock.js.map +0 -1
  717. package/extensions/payment-card/icons/CardIn.d.ts +0 -2
  718. package/extensions/payment-card/icons/CardIn.js +0 -18
  719. package/extensions/payment-card/icons/CardIn.js.map +0 -1
  720. package/extensions/payment-card/icons/Padlock.d.ts +0 -3
  721. package/extensions/payment-card/icons/Padlock.js +0 -18
  722. package/extensions/payment-card/icons/Padlock.js.map +0 -1
@@ -18,8 +18,7 @@
18
18
  --input-height--small: 1.5rem;
19
19
  --input-height--medium: 2.5rem;
20
20
  --input-height--large: 3rem;
21
- --input-border-width: 0.0625rem;
22
- --input-border-radius: 0.25rem;
21
+ --input-background-color: var(--color-white);
23
22
 
24
23
  display: inline-flex;
25
24
  align-items: center;
@@ -119,6 +118,14 @@
119
118
  display: none;
120
119
  }
121
120
 
121
+ // change the autocomplete appearance once filled out
122
+ &__input:autofill {
123
+ // set the border and the background
124
+ box-shadow:
125
+ 0 0 0 var(--input-border-width) var(--input-border-color),
126
+ 0 0 0 10em var(--input-background-color) inset;
127
+ }
128
+
122
129
  // change file type appearance on type="file"
123
130
  ::-webkit-file-upload-button {
124
131
  cursor: pointer;
@@ -20,7 +20,7 @@
20
20
  --input-border-color--focus: var(--focus-ring-color);
21
21
  }
22
22
  .dnb-input__shell {
23
- background-color: var(--color-white);
23
+ background-color: var(--input-background-color);
24
24
  transition: border-radius 0.25s ease-out;
25
25
  border: none;
26
26
  color: var(--input-color);
@@ -1 +1 @@
1
- .dnb-input{--input-height:2.5rem;--input-button-border-color:var(--input-border-color);--input-button-border-width:var(--input-border-width);--input-border-radius:0.5rem;--input-border-width:0.0625rem;--input-color:var(--input-color--default);--input-color--default:var(--sb-color-text);--input-color--active:var(--sb-color-text);--input-border-color:var(--sb-color-gray-dark-2);--input-border-color--hover:var(--sb-color-violet);--input-border-color--active:var(--sb-color-violet);--input-border-color--focus:var(--focus-ring-color)}.dnb-input__shell{--border-color:var(--input-border-color);--border-width:var(--input-border-width);background-color:var(--color-white);border:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color);color:var(--input-color);transition:border-radius .25s ease-out}.dnb-input__submit-button__button{--button-secondary-color:var(--sb-color-violet);--button-secondary-color--active:var(--sb-color-violet)}.dnb-input__placeholder{color:var(--sb-color-gray-dark-3)}.dnb-input[data-input-state=disabled]{--input-border-color:var(--sb-color-gray)}.dnb-input[data-input-state=disabled] .dnb-input__shell{-webkit-text-fill-color:currentcolor;background-color:var(--sb-color-gray-light)}.dnb-input[data-input-state=disabled] .dnb-input__shell,.dnb-input[data-input-state=disabled] .dnb-input__shell .dnb-icon,.dnb-input[data-input-state=disabled] .dnb-input__shell .dnb-input__placeholder{color:var(--sb-color-gray-dark-2)}.dnb-input:not([data-input-state=disabled])[data-input-state=focus]{--input-color:var(--input-color--active);--input-border-radius:1.5rem;--input-border-color:var(--input-border-color--active)}html[data-whatinput=keyboard] .dnb-input:not([data-input-state=disabled])[data-input-state=focus]{--input-button-border-color:var(--input-border-color--focus);--input-button-border-width:var(--focus-ring-width)}.dnb-input:not([data-input-state=disabled])[data-input-state=focus] .dnb-input__shell{outline:none}html[data-whatinput=keyboard] .dnb-input:not([data-input-state=disabled])[data-input-state=focus] .dnb-input__shell{--border-color:var(--input-border-color--focus);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color)}.dnb-input:not([data-input-state=disabled]) .dnb-form-label:hover+.dnb-input__inner .dnb-input__shell,.dnb-input:not([data-input-state=disabled]) .dnb-input__shell:hover{--input-border-color:var(--input-border-color--hover);--input-border-width:0.125rem}.dnb-input:not([data-input-state=disabled]).dnb-input__status--error{--input-border-color:var(--sb-color-red);--input-color--default:var(--sb-color-red);--input-color--active:var(--sb-color-text);--input-border-color--hover:var(--sb-color-red);--input-border-color--active:var(--sb-color-red);--input-border-color--focus:var(--sb-color-red)}.dnb-input:not([data-input-state=disabled]).dnb-input__status--error .dnb-input__submit-button__button{--button-secondary-background--hover:var(--sb-color-red);--button-secondary-color--hover:var(--sb-color-white);--button-secondary-color--active:var(--sb-color-red)}.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(.focus-visible){background-color:transparent;box-shadow:none}.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(:focus-visible){background-color:transparent;box-shadow:none}.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(.focus-visible):active,.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(.focus-visible):hover{border:var(--input-button-border-width) solid var(--input-button-border-color);border-left:none;padding-left:var(--input-button-border-width)}.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(:focus-visible):active,.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(:focus-visible):hover{border:var(--input-button-border-width) solid var(--input-button-border-color);border-left:none;padding-left:var(--input-button-border-width)}
1
+ .dnb-input{--input-height:2.5rem;--input-button-border-color:var(--input-border-color);--input-button-border-width:var(--input-border-width);--input-border-radius:0.5rem;--input-border-width:0.0625rem;--input-color:var(--input-color--default);--input-color--default:var(--sb-color-text);--input-color--active:var(--sb-color-text);--input-border-color:var(--sb-color-gray-dark-2);--input-border-color--hover:var(--sb-color-violet);--input-border-color--active:var(--sb-color-violet);--input-border-color--focus:var(--focus-ring-color)}.dnb-input__shell{--border-color:var(--input-border-color);--border-width:var(--input-border-width);background-color:var(--input-background-color);border:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color);color:var(--input-color);transition:border-radius .25s ease-out}.dnb-input__submit-button__button{--button-secondary-color:var(--sb-color-violet);--button-secondary-color--active:var(--sb-color-violet)}.dnb-input__placeholder{color:var(--sb-color-gray-dark-3)}.dnb-input[data-input-state=disabled]{--input-border-color:var(--sb-color-gray)}.dnb-input[data-input-state=disabled] .dnb-input__shell{-webkit-text-fill-color:currentcolor;background-color:var(--sb-color-gray-light)}.dnb-input[data-input-state=disabled] .dnb-input__shell,.dnb-input[data-input-state=disabled] .dnb-input__shell .dnb-icon,.dnb-input[data-input-state=disabled] .dnb-input__shell .dnb-input__placeholder{color:var(--sb-color-gray-dark-2)}.dnb-input:not([data-input-state=disabled])[data-input-state=focus]{--input-color:var(--input-color--active);--input-border-radius:1.5rem;--input-border-color:var(--input-border-color--active)}html[data-whatinput=keyboard] .dnb-input:not([data-input-state=disabled])[data-input-state=focus]{--input-button-border-color:var(--input-border-color--focus);--input-button-border-width:var(--focus-ring-width)}.dnb-input:not([data-input-state=disabled])[data-input-state=focus] .dnb-input__shell{outline:none}html[data-whatinput=keyboard] .dnb-input:not([data-input-state=disabled])[data-input-state=focus] .dnb-input__shell{--border-color:var(--input-border-color--focus);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color)}.dnb-input:not([data-input-state=disabled]) .dnb-form-label:hover+.dnb-input__inner .dnb-input__shell,.dnb-input:not([data-input-state=disabled]) .dnb-input__shell:hover{--input-border-color:var(--input-border-color--hover);--input-border-width:0.125rem}.dnb-input:not([data-input-state=disabled]).dnb-input__status--error{--input-border-color:var(--sb-color-red);--input-color--default:var(--sb-color-red);--input-color--active:var(--sb-color-text);--input-border-color--hover:var(--sb-color-red);--input-border-color--active:var(--sb-color-red);--input-border-color--focus:var(--sb-color-red)}.dnb-input:not([data-input-state=disabled]).dnb-input__status--error .dnb-input__submit-button__button{--button-secondary-background--hover:var(--sb-color-red);--button-secondary-color--hover:var(--sb-color-white);--button-secondary-color--active:var(--sb-color-red)}.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(.focus-visible){background-color:transparent;box-shadow:none}.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(:focus-visible){background-color:transparent;box-shadow:none}.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(.focus-visible):active,.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(.focus-visible):hover{border:var(--input-button-border-width) solid var(--input-button-border-color);border-left:none;padding-left:var(--input-button-border-width)}.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(:focus-visible):active,.dnb-input:not([data-input-state=disabled]) .dnb-input__submit-button__button:not(:focus-visible):hover{border:var(--input-button-border-width) solid var(--input-button-border-color);border-left:none;padding-left:var(--input-button-border-width)}
@@ -24,7 +24,7 @@
24
24
  --input-border-color--focus: var(--focus-ring-color);
25
25
 
26
26
  &__shell {
27
- background-color: var(--color-white);
27
+ background-color: var(--input-background-color);
28
28
  transition: border-radius 0.25s ease-out;
29
29
  border: none;
30
30
  color: var(--input-color);
@@ -6,6 +6,13 @@
6
6
  * Utilities
7
7
  */
8
8
  .dnb-input {
9
+ --input-border-color: var(--color-sea-green);
10
+ --input-border-color--hover: var(--color-sea-green);
11
+ --input-border-color--focus: var(--color-emerald-green);
12
+ --input-border-color--disabled: var(--color-black-55);
13
+ --input-border-radius: 0.25rem;
14
+ --input-border-width: 0.0625rem;
15
+ --input-border-width--focus: 0.125rem;
9
16
  color: var(--color-black);
10
17
  }
11
18
  .dnb-input__inner {
@@ -13,9 +20,9 @@
13
20
  }
14
21
  .dnb-input__shell {
15
22
  color: inherit;
16
- background-color: var(--color-white);
23
+ background-color: var(--input-background-color);
17
24
  border: none;
18
- --border-color: var(--color-sea-green);
25
+ --border-color: var(--input-border-color);
19
26
  --border-width: var(--input-border-width);
20
27
  box-shadow: inset 0 0 0 var(--border-width) var(--border-color);
21
28
  border-color: transparent;
@@ -25,7 +32,7 @@
25
32
  }
26
33
  .dnb-input[data-input-state=disabled] .dnb-input__shell {
27
34
  -webkit-text-fill-color: currentcolor;
28
- --border-color: var(--color-black-55);
35
+ --border-color: var(--input-border-color--disabled);
29
36
  --border-width: var(--input-border-width);
30
37
  box-shadow: inset 0 0 0 var(--border-width) var(--border-color);
31
38
  border-color: transparent;
@@ -36,14 +43,14 @@
36
43
  color: var(--color-black-55);
37
44
  }
38
45
  .dnb-input:not([data-input-state=disabled]) .dnb-input__shell:hover, .dnb-input:not([data-input-state=disabled]):hover .dnb-input__shell {
39
- --border-color: var(--color-sea-green);
40
- --border-width: 0.125rem;
46
+ --border-color: var(--input-border-color--hover);
47
+ --border-width: var(--input-border-width--focus);
41
48
  box-shadow: 0 0 0 var(--border-width) var(--border-color);
42
49
  border-color: transparent;
43
50
  }
44
51
  .dnb-input[data-input-state=focus]:not([data-input-state=disabled]) .dnb-input__shell {
45
- --border-color: var(--color-emerald-green);
46
- --border-width: 0.125rem;
52
+ --border-color: var(--input-border-color--focus);
53
+ --border-width: var(--input-border-width--focus);
47
54
  box-shadow: 0 0 0 var(--border-width) var(--border-color);
48
55
  border-color: transparent;
49
56
  }
@@ -58,7 +65,7 @@
58
65
  }
59
66
  .dnb-input__status--error.dnb-input[data-input-state=focus] .dnb-input__shell, .dnb-input__status--error.dnb-input:not([data-input-state=disabled]) .dnb-input__shell:hover, .dnb-input__status--error.dnb-input:not([data-input-state=disabled]):hover .dnb-input__shell {
60
67
  --border-color: var(--color-fire-red);
61
- --border-width: 0.125rem;
68
+ --border-width: var(--input-border-width--focus);
62
69
  box-shadow: 0 0 0 var(--border-width) var(--border-color);
63
70
  border-color: transparent;
64
71
  }
@@ -1 +1 @@
1
- .dnb-input{color:var(--color-black)}.dnb-input__inner{color:inherit}.dnb-input__shell{--border-color:var(--color-sea-green);--border-width:var(--input-border-width);background-color:var(--color-white);border:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color);color:inherit}.dnb-input__icon{color:var(--color-sea-green)}.dnb-input[data-input-state=disabled] .dnb-input__shell{-webkit-text-fill-color:currentcolor;--border-color:var(--color-black-55);--border-width:var(--input-border-width);background-color:var(--color-black-3);border-color:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color)}.dnb-input[data-input-state=disabled] .dnb-input__shell,.dnb-input[data-input-state=disabled] .dnb-input__shell .dnb-icon{color:var(--color-black-55)}.dnb-input:not([data-input-state=disabled]) .dnb-input__shell:hover,.dnb-input:not([data-input-state=disabled]):hover .dnb-input__shell{--border-color:var(--color-sea-green);--border-width:0.125rem;border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-input[data-input-state=focus]:not([data-input-state=disabled]) .dnb-input__shell{--border-color:var(--color-emerald-green);--border-width:0.125rem;border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-input__status--error.dnb-input:not([data-input-state=focus]) .dnb-input__shell{color:var(--color-fire-red)}.dnb-input__status--error.dnb-input:not([data-input-state=focus]):not(:hover) .dnb-input__shell{--border-color:var(--color-fire-red);--border-width:0.0625rem;border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-input__status--error.dnb-input:not([data-input-state=disabled]) .dnb-input__shell:hover,.dnb-input__status--error.dnb-input:not([data-input-state=disabled]):hover .dnb-input__shell,.dnb-input__status--error.dnb-input[data-input-state=focus] .dnb-input__shell{--border-color:var(--color-fire-red);--border-width:0.125rem;border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):focus,html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):focus:after,html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):hover,html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):hover:after{background-color:var(--color-fire-red)}html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):focus:active,html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):hover:active{color:var(--color-white)}.dnb-input__status--error .dnb-input__icon{color:var(--color-fire-red)}.dnb-input__input::selection{background-color:var(--color-mint-green);color:var(--color-black);text-shadow:none}.dnb-input__placeholder{color:var(--color-black-55)}.dnb-input[data-input-state=focus] .dnb-input__placeholder{display:none}.dnb-input--keep-placeholder[data-input-state=focus] .dnb-input__placeholder{color:var(--color-black-20);display:block}
1
+ .dnb-input{--input-border-color:var(--color-sea-green);--input-border-color--hover:var(--color-sea-green);--input-border-color--focus:var(--color-emerald-green);--input-border-color--disabled:var(--color-black-55);--input-border-radius:0.25rem;--input-border-width:0.0625rem;--input-border-width--focus:0.125rem;color:var(--color-black)}.dnb-input__inner{color:inherit}.dnb-input__shell{--border-color:var(--input-border-color);--border-width:var(--input-border-width);background-color:var(--input-background-color);border:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color);color:inherit}.dnb-input__icon{color:var(--color-sea-green)}.dnb-input[data-input-state=disabled] .dnb-input__shell{-webkit-text-fill-color:currentcolor;--border-color:var(--input-border-color--disabled);--border-width:var(--input-border-width);background-color:var(--color-black-3);border-color:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color)}.dnb-input[data-input-state=disabled] .dnb-input__shell,.dnb-input[data-input-state=disabled] .dnb-input__shell .dnb-icon{color:var(--color-black-55)}.dnb-input:not([data-input-state=disabled]) .dnb-input__shell:hover,.dnb-input:not([data-input-state=disabled]):hover .dnb-input__shell{--border-color:var(--input-border-color--hover);--border-width:var(--input-border-width--focus);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-input[data-input-state=focus]:not([data-input-state=disabled]) .dnb-input__shell{--border-color:var(--input-border-color--focus);--border-width:var(--input-border-width--focus);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-input__status--error.dnb-input:not([data-input-state=focus]) .dnb-input__shell{color:var(--color-fire-red)}.dnb-input__status--error.dnb-input:not([data-input-state=focus]):not(:hover) .dnb-input__shell{--border-color:var(--color-fire-red);--border-width:0.0625rem;border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-input__status--error.dnb-input:not([data-input-state=disabled]) .dnb-input__shell:hover,.dnb-input__status--error.dnb-input:not([data-input-state=disabled]):hover .dnb-input__shell,.dnb-input__status--error.dnb-input[data-input-state=focus] .dnb-input__shell{--border-color:var(--color-fire-red);--border-width:var(--input-border-width--focus);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):focus,html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):focus:after,html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):hover,html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):hover:after{background-color:var(--color-fire-red)}html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):focus:active,html:not([data-whatintent=touch]) .dnb-input__status--error .dnb-input__submit-button__button.dnb-button--secondary:not(.dnb-input__status--error .dnb-input__submit-button__button--has-text):not([disabled]):hover:active{color:var(--color-white)}.dnb-input__status--error .dnb-input__icon{color:var(--color-fire-red)}.dnb-input__input::selection{background-color:var(--color-mint-green);color:var(--color-black);text-shadow:none}.dnb-input__placeholder{color:var(--color-black-55)}.dnb-input[data-input-state=focus] .dnb-input__placeholder{display:none}.dnb-input--keep-placeholder[data-input-state=focus] .dnb-input__placeholder{color:var(--color-black-20);display:block}
@@ -6,6 +6,15 @@
6
6
  @import '../../../../style/core/utilities.scss';
7
7
 
8
8
  .dnb-input {
9
+ // Border
10
+ --input-border-color: var(--color-sea-green);
11
+ --input-border-color--hover: var(--color-sea-green);
12
+ --input-border-color--focus: var(--color-emerald-green);
13
+ --input-border-color--disabled: var(--color-black-55);
14
+ --input-border-radius: 0.25rem;
15
+ --input-border-width: 0.0625rem;
16
+ --input-border-width--focus: 0.125rem;
17
+
9
18
  color: var(--color-black);
10
19
 
11
20
  &__inner {
@@ -14,11 +23,11 @@
14
23
 
15
24
  &__shell {
16
25
  color: inherit;
17
- background-color: var(--color-white);
26
+ background-color: var(--input-background-color);
18
27
  border: none;
19
28
 
20
29
  @include fakeBorder(
21
- var(--color-sea-green),
30
+ var(--input-border-color),
22
31
  var(--input-border-width),
23
32
  inset
24
33
  );
@@ -37,7 +46,7 @@
37
46
  -webkit-text-fill-color: currentcolor;
38
47
 
39
48
  @include fakeBorder(
40
- var(--color-black-55),
49
+ var(--input-border-color--disabled),
41
50
  var(--input-border-width),
42
51
  inset
43
52
  );
@@ -46,11 +55,17 @@
46
55
 
47
56
  &:not([data-input-state='disabled']) &__shell:hover,
48
57
  &:not([data-input-state='disabled']):hover &__shell {
49
- @include fakeBorder(var(--color-sea-green), 0.125rem);
58
+ @include fakeBorder(
59
+ var(--input-border-color--hover),
60
+ var(--input-border-width--focus)
61
+ );
50
62
  }
51
63
 
52
64
  &[data-input-state='focus']:not([data-input-state='disabled']) &__shell {
53
- @include fakeBorder(var(--color-emerald-green), 0.125rem);
65
+ @include fakeBorder(
66
+ var(--input-border-color--focus),
67
+ var(--input-border-width--focus)
68
+ );
54
69
  }
55
70
 
56
71
  // with status_state = "error"
@@ -64,7 +79,10 @@
64
79
  &__status--error#{&}[data-input-state='focus'] &__shell,
65
80
  &__status--error#{&}:not([data-input-state='disabled']) &__shell:hover,
66
81
  &__status--error#{&}:not([data-input-state='disabled']):hover &__shell {
67
- @include fakeBorder(var(--color-fire-red), 0.125rem);
82
+ @include fakeBorder(
83
+ var(--color-fire-red),
84
+ var(--input-border-width--focus)
85
+ );
68
86
  }
69
87
 
70
88
  &__status--error &__submit-button {
@@ -7,7 +7,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
7
7
  import React from 'react';
8
8
  import classnames from 'classnames';
9
9
  import { cleanNumber, getCurrencySymbol } from '../number-format/NumberUtils';
10
- import { isTrue, dispatchCustomElementEvent } from '../../shared/component-helper';
10
+ import { isTrue, dispatchCustomElementEvent, extendPropsWithContext } from '../../shared/component-helper';
11
11
  import { safeSetSelection } from './text-mask/createTextMaskInputElement';
12
12
  import TextMask from './TextMask';
13
13
  import createNumberMask from './addons/createNumberMask';
@@ -320,16 +320,16 @@ const useNumberMaskParams = () => {
320
320
  const thousandsSeparatorSymbol = handleThousandsSeparator(locale);
321
321
  const decimalSymbol = handleDecimalSeparator(locale);
322
322
  if (isTrue(as_number) || isTrue(as_percent)) {
323
- number_mask = _objectSpread({
323
+ number_mask = extendPropsWithContext(number_mask, null, {
324
324
  decimalSymbol,
325
325
  thousandsSeparatorSymbol
326
- }, number_mask);
326
+ });
327
327
  } else if (as_currency) {
328
- currency_mask = _objectSpread({
328
+ currency_mask = extendPropsWithContext(currency_mask, null, {
329
329
  decimalSymbol,
330
330
  thousandsSeparatorSymbol,
331
331
  currency: getCurrencySymbol(locale, typeof as_currency === 'string' ? as_currency : null)
332
- }, currency_mask);
332
+ });
333
333
  }
334
334
  }
335
335
  let maskParams = null;
@@ -1 +1 @@
1
- {"version":3,"file":"InputMaskedHooks.js","names":["React","classnames","cleanNumber","getCurrencySymbol","isTrue","dispatchCustomElementEvent","safeSetSelection","TextMask","createNumberMask","keycode","InputMaskedContext","isRequestingLocaleSupport","isRequestingNumberMask","correctNumberValue","handlePercentMask","handleCurrencyMask","handleNumberMask","correctCaretPosition","getInputModeFromMask","handleThousandsSeparator","handleDecimalSeparator","fromJSON","invisibleSpace","useFilteredProps","props","useContext","mask","number_mask","currency_mask","number_format","mask_options","as_currency","as_number","as_percent","locale","show_mask","show_guide","pipe","keep_char_positions","placeholder_char","attributes","_objectWithoutProperties","_excluded","htmlAttributes","Object","freeze","useLocale","context","useLocalValue","maskParams","useNumberMaskParams","localValue","setLocalValue","useState","useEffect","value","useNumberMask","useMask","numberMask","useMaskParams","placeholder","showMask","placeholderChar","showGuide","keepCharPositions","useInputElement","inner_ref","isFn","refHook","useRef","ref","useLayoutEffect","current","inputElementRef","createElement","InputElement","params","innerRef","inputMode","_extends","inputRef","inputElement","guide","className","useEventMapping","callEvent","useCallEvent","onBeforeInput","event","onFocus","onBlur","onMouseUp","onKeyDown","onSubmit","onChange","on_focus","undefined","on_blur","on_key_down","on_submit","on_change","isNumberMask","decimalSeparators","isUnidentified","name","target","selStart","selectionStart","keyCode","which","data","disallowLeadingZeroes","replace","test","testValue","slice","length","preventDefault","decimalSymbol","hasDecimalSymbol","includes","allowedDecimals","decimalLimit","allowDecimal","charAtSelection","index","indexOf","thousandsSeparatorSymbol","num","prefix","suffix","decimalSeparator","thousandsSeparator","numberValue","Number","cleanedValue","String","charAt","result","selectall","_currency_mask","_objectSpread","currency"],"sources":["../../../../src/components/input-masked/InputMaskedHooks.js"],"sourcesContent":["/**\n * Web InputMasked Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport {\n cleanNumber,\n getCurrencySymbol,\n} from '../number-format/NumberUtils'\nimport {\n isTrue,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { safeSetSelection } from './text-mask/createTextMaskInputElement'\n\nimport TextMask from './TextMask'\nimport createNumberMask from './addons/createNumberMask'\nimport keycode from 'keycode'\nimport InputMaskedContext from './InputMaskedContext'\n\nimport {\n isRequestingLocaleSupport,\n isRequestingNumberMask,\n correctNumberValue,\n handlePercentMask,\n handleCurrencyMask,\n handleNumberMask,\n correctCaretPosition,\n getInputModeFromMask,\n handleThousandsSeparator,\n handleDecimalSeparator,\n fromJSON,\n invisibleSpace,\n} from './InputMaskedUtils'\n\n/**\n * Takes all component properties and filters out all internal used properties\n *\n * @returns object {props, htmlAttributes}\n */\nexport const useFilteredProps = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const {\n mask, // eslint-disable-line\n number_mask, // eslint-disable-line\n currency_mask, // eslint-disable-line\n number_format, // eslint-disable-line\n mask_options, // eslint-disable-line\n as_currency, // eslint-disable-line\n as_number, // eslint-disable-line\n as_percent, // eslint-disable-line\n locale, // eslint-disable-line\n show_mask, // eslint-disable-line\n show_guide, // eslint-disable-line\n pipe, // eslint-disable-line\n keep_char_positions, // eslint-disable-line\n placeholder_char, // eslint-disable-line\n\n // Get get rest of possible attributes\n ...attributes\n } = props\n\n return { props, htmlAttributes: Object.freeze(attributes) }\n}\n\n/**\n * Returns locale from either component or context\n *\n * @returns string\n */\nexport const useLocale = () => {\n const { props, context } = React.useContext(InputMaskedContext)\n\n let { locale } = props\n if (!locale && context?.locale) {\n locale = context.locale\n }\n\n return locale\n}\n\n/**\n * Handle internal value state\n *\n * It handles both the value state given as a prop form outside,\n * along with the current written and internal value.\n *\n * @returns object with internal value state and state setter\n */\nexport const useLocalValue = () => {\n const { props, context } = React.useContext(InputMaskedContext)\n const maskParams = useNumberMaskParams() || {}\n const locale = useLocale()\n\n const [localValue, setLocalValue] = React.useState(() =>\n correctNumberValue({\n locale,\n props,\n maskParams,\n })\n )\n\n /**\n * Use an effect here, just;\n * because when a property gets changed from outside\n */\n React.useEffect(() => {\n const value = correctNumberValue({\n localValue,\n locale,\n props,\n maskParams,\n })\n\n setLocalValue(value)\n\n // Do not set \"localValue\" and \"maskParams\" here\n }, [props, context, locale]) // eslint-disable-line\n\n return { localValue, setLocalValue }\n}\n\n/**\n * Create createNumberMask if number mask parameters exists\n *\n * @returns mask function\n */\nexport const useNumberMask = () => {\n const maskParams = useNumberMaskParams()\n const { props } = React.useContext(InputMaskedContext)\n\n if (!maskParams || !isRequestingNumberMask(props)) {\n return null\n }\n\n const mask = createNumberMask(maskParams)\n\n mask.maskParams = maskParams\n\n return mask\n}\n\n/**\n * Returns either internal mask or given property mask\n *\n * @returns mask function\n */\nexport const useMask = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const numberMask = useNumberMask()\n if (numberMask) {\n return numberMask\n }\n\n return props.mask\n}\n\n/**\n * Returns the final mask params\n *\n * @returns mask params\n */\nexport const useMaskParams = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const {\n keep_char_positions,\n show_guide,\n show_mask,\n placeholder_char,\n placeholder,\n } = props\n\n const mask = useMask()\n const maskParams = useNumberMaskParams() || {}\n\n maskParams.showMask = !placeholder && isTrue(show_mask)\n\n // Revalidated placeholder char to a zero width space\n maskParams.placeholderChar = placeholder_char\n if (typeof mask?.placeholderChar !== 'undefined') {\n maskParams.placeholderChar = mask.placeholderChar\n }\n if (maskParams.placeholderChar === null) {\n maskParams.placeholderChar = invisibleSpace\n }\n\n if (typeof mask?.showMask !== 'undefined') {\n maskParams.showMask = mask.showMask\n }\n\n maskParams.showGuide = isTrue(show_guide)\n maskParams.keepCharPositions = isTrue(keep_char_positions)\n\n return maskParams\n}\n\n/**\n * Handle the TextMask dependency\n *\n * @returns React Element\n */\nexport const useInputElement = () => {\n const { props } = React.useContext(InputMaskedContext)\n const { pipe, inner_ref } = props\n\n const mask = useMask()\n const { showMask, showGuide, placeholderChar, keepCharPositions } =\n useMaskParams()\n\n const isFn = typeof inner_ref === 'function'\n const refHook = React.useRef()\n const ref = (!isFn && inner_ref) || refHook\n\n React.useLayoutEffect(() => {\n if (isFn) {\n inner_ref?.(ref.current)\n }\n }, [ref.current])\n\n // Create the actual input element\n const inputElementRef = React.useRef(<input ref={ref} />)\n\n const InputElement = (params, innerRef) => {\n // Set ref for Eufemia input\n innerRef.current = ref.current\n\n // Set \"inputMode\"\n if (!params.inputMode) {\n params.inputMode = getInputModeFromMask(mask)\n }\n\n return (\n <TextMask\n inputRef={ref}\n inputElement={inputElementRef.current}\n pipe={pipe}\n mask={mask || []}\n showMask={showMask}\n guide={showGuide}\n keepCharPositions={keepCharPositions}\n placeholderChar={placeholderChar}\n {...params}\n className={classnames(\n params.className,\n showMask &&\n showGuide &&\n placeholderChar &&\n placeholderChar !== invisibleSpace &&\n 'dnb-input-masked--guide' // will use --font-family-monospace\n )}\n />\n )\n }\n return InputElement\n}\n\n/**\n * Will map some events we need to map during typing\n *\n * @param {object} param0\n * @property {function} setLocalValue setState handler\n * @returns object of events to handle\n */\nexport const useEventMapping = ({ setLocalValue }) => {\n const callEvent = useCallEvent({ setLocalValue })\n\n return {\n onBeforeInput: (event) => callEvent({ event }, 'on_before_input'),\n onFocus: (params) => callEvent(params, 'on_focus'),\n onBlur: (params) => callEvent(params, 'on_blur'),\n onMouseUp: (event) => callEvent({ event }, 'on_mouse_up'),\n onKeyDown: (params) => callEvent(params, 'on_key_down'),\n onSubmit: (params) => callEvent(params, 'on_submit'),\n onChange: (params) => callEvent(params, 'on_change'),\n\n on_focus: undefined,\n on_blur: undefined,\n on_key_down: undefined,\n on_submit: undefined,\n on_change: undefined,\n }\n}\n\n/**\n * Will map some events we need to map during typing\n *\n * @param {object} param0\n * @property {function} setLocalValue setState handler\n * @returns event handler function\n */\nconst useCallEvent = ({ setLocalValue }) => {\n const { props } = React.useContext(InputMaskedContext)\n const maskParams = useMaskParams()\n const isNumberMask = useNumberMask()\n\n // Source: https://en.wikipedia.org/wiki/Decimal_separator\n const decimalSeparators = /[,.'·]/\n let isUnidentified = false\n\n const callEvent = ({ event, value }, name) => {\n value = value || event.target.value\n const selStart = event.target.selectionStart\n let keyCode = keycode(event)\n\n // Android issue: https://bugs.chromium.org/p/chromium/issues/detail?id=118639\n if (\n name === 'on_key_down' &&\n (event.which === 229 || keyCode === undefined)\n ) {\n isUnidentified = true\n }\n\n // Android issue: https://bugs.chromium.org/p/chromium/issues/detail?id=118639\n // so we use this solution instead\n if (\n isUnidentified &&\n name === 'on_before_input' &&\n typeof event?.data !== 'undefined'\n ) {\n name = 'on_key_down'\n keyCode = event.data\n isUnidentified = false\n }\n\n // Prevent entering a leading zero\n if (\n name === 'on_key_down' &&\n !isUnidentified &&\n maskParams?.disallowLeadingZeroes &&\n (keyCode === '0' ||\n keyCode === 'numpad 0' ||\n (value.replace(/[^\\d]/g, '') === '' &&\n decimalSeparators.test(keyCode)))\n ) {\n const testValue = (\n value.slice(0, selStart) +\n '0' +\n value.slice(selStart + 1, value.length)\n ).replace(/[^\\d]/g, '')\n\n if (/^0/.test(testValue)) {\n event.preventDefault()\n }\n }\n\n if (\n name === 'on_key_down' &&\n isNumberMask &&\n !isUnidentified &&\n maskParams?.decimalSymbol\n ) {\n const hasDecimalSymbol = value.includes(maskParams.decimalSymbol)\n const allowedDecimals =\n maskParams.decimalLimit > 0 || maskParams.allowDecimal !== false\n\n if (!allowedDecimals && decimalSeparators.test(keyCode)) {\n event.preventDefault()\n }\n\n const charAtSelection = value.slice(selStart, selStart + 1)\n\n if (allowedDecimals) {\n // if we have already a decimal ...\n if (hasDecimalSymbol && decimalSeparators.test(keyCode)) {\n // ... we set the cursor on after the decimalSeparators\n if (decimalSeparators.test(charAtSelection)) {\n const index = value.indexOf(maskParams.decimalSymbol)\n if (index > -1) {\n safeSetSelection(event.target, index + 1)\n }\n }\n\n // ... we do not allow to type another\n event.preventDefault()\n }\n\n // replace other decimal\n else if (\n !hasDecimalSymbol &&\n keyCode !== maskParams.decimalSymbol &&\n decimalSeparators.test(keyCode)\n ) {\n value = value.slice(0, selStart)\n setLocalValue(value + maskParams.decimalSymbol)\n event.target.value = value + maskParams.decimalSymbol\n event.preventDefault()\n }\n }\n\n // move cursor to right if key is delete and char at selection is thousand separator\n if (\n keyCode === 'delete' &&\n charAtSelection === (maskParams.thousandsSeparatorSymbol || ' ')\n ) {\n safeSetSelection(event.target, selStart + 1)\n event.preventDefault()\n }\n }\n\n let num = cleanNumber(value, {\n prefix: maskParams.prefix,\n suffix: maskParams.suffix,\n decimalSeparator: maskParams.decimalSymbol || ',',\n thousandsSeparator: maskParams.thousandsSeparatorSymbol || ' ',\n })\n\n // We don't want to return NaN, so we set it to 0\n if (num === '-') {\n num = -0\n }\n\n const numberValue = Number(num)\n\n // Return '' (empty string) when the user has entered something invalid\n const cleanedValue =\n numberValue === 0 && String(num).charAt(0) !== '0' ? '' : num\n\n if (name === 'on_change' && numberValue === 0) {\n correctCaretPosition(event.target, maskParams, props)\n }\n\n const result = dispatchCustomElementEvent(props, name, {\n event,\n value,\n numberValue,\n cleanedValue,\n })\n\n if (name === 'on_change') {\n setLocalValue(value)\n }\n\n if (\n (name === 'on_focus' || name === 'on_mouse_up') &&\n !props.selectall\n ) {\n // Also correct here, because of additional click inside the field\n correctCaretPosition(event.target, maskParams, props)\n }\n\n return result\n }\n\n return callEvent\n}\n\n/**\n * Returns number mask parameters if requested by the component properties\n *\n * @returns object of number mask parameter\n */\nconst useNumberMaskParams = () => {\n const { props } = React.useContext(InputMaskedContext)\n const locale = useLocale()\n\n if (!isRequestingNumberMask(props)) {\n return { ...fromJSON(props.mask_options) }\n }\n\n let { number_mask, currency_mask, mask_options } = props\n\n const { as_number, as_percent, as_currency } = props\n\n mask_options = fromJSON(mask_options)\n number_mask = isTrue(number_mask) ? {} : fromJSON(number_mask)\n currency_mask = isTrue(currency_mask)\n ? {}\n : fromJSON(currency_mask, {\n currency: currency_mask,\n })\n if (!currency_mask?.currency) {\n delete currency_mask.currency\n }\n\n if (isRequestingLocaleSupport(props)) {\n const thousandsSeparatorSymbol = handleThousandsSeparator(locale)\n const decimalSymbol = handleDecimalSeparator(locale)\n\n if (isTrue(as_number) || isTrue(as_percent)) {\n number_mask = {\n decimalSymbol,\n thousandsSeparatorSymbol,\n ...number_mask,\n }\n } else if (as_currency) {\n currency_mask = {\n decimalSymbol,\n thousandsSeparatorSymbol,\n currency: getCurrencySymbol(\n locale,\n typeof as_currency === 'string' ? as_currency : null\n ),\n ...currency_mask,\n }\n }\n }\n\n let maskParams = null\n\n if (number_mask) {\n maskParams = handleNumberMask({\n mask_options,\n number_mask,\n })\n\n if (isTrue(as_percent)) {\n maskParams = handlePercentMask({ props, locale, maskParams })\n }\n } else if (currency_mask) {\n maskParams = handleCurrencyMask({\n mask_options,\n currency_mask,\n })\n }\n\n return maskParams\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"InputMaskedHooks.js","names":["React","classnames","cleanNumber","getCurrencySymbol","isTrue","dispatchCustomElementEvent","extendPropsWithContext","safeSetSelection","TextMask","createNumberMask","keycode","InputMaskedContext","isRequestingLocaleSupport","isRequestingNumberMask","correctNumberValue","handlePercentMask","handleCurrencyMask","handleNumberMask","correctCaretPosition","getInputModeFromMask","handleThousandsSeparator","handleDecimalSeparator","fromJSON","invisibleSpace","useFilteredProps","props","useContext","mask","number_mask","currency_mask","number_format","mask_options","as_currency","as_number","as_percent","locale","show_mask","show_guide","pipe","keep_char_positions","placeholder_char","attributes","_objectWithoutProperties","_excluded","htmlAttributes","Object","freeze","useLocale","context","useLocalValue","maskParams","useNumberMaskParams","localValue","setLocalValue","useState","useEffect","value","useNumberMask","useMask","numberMask","useMaskParams","placeholder","showMask","placeholderChar","showGuide","keepCharPositions","useInputElement","inner_ref","isFn","refHook","useRef","ref","useLayoutEffect","current","inputElementRef","createElement","InputElement","params","innerRef","inputMode","_extends","inputRef","inputElement","guide","className","useEventMapping","callEvent","useCallEvent","onBeforeInput","event","onFocus","onBlur","onMouseUp","onKeyDown","onSubmit","onChange","on_focus","undefined","on_blur","on_key_down","on_submit","on_change","isNumberMask","decimalSeparators","isUnidentified","name","target","selStart","selectionStart","keyCode","which","data","disallowLeadingZeroes","replace","test","testValue","slice","length","preventDefault","decimalSymbol","hasDecimalSymbol","includes","allowedDecimals","decimalLimit","allowDecimal","charAtSelection","index","indexOf","thousandsSeparatorSymbol","num","prefix","suffix","decimalSeparator","thousandsSeparator","numberValue","Number","cleanedValue","String","charAt","result","selectall","_currency_mask","_objectSpread","currency"],"sources":["../../../../src/components/input-masked/InputMaskedHooks.js"],"sourcesContent":["/**\n * Web InputMasked Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport {\n cleanNumber,\n getCurrencySymbol,\n} from '../number-format/NumberUtils'\nimport {\n isTrue,\n dispatchCustomElementEvent,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport { safeSetSelection } from './text-mask/createTextMaskInputElement'\n\nimport TextMask from './TextMask'\nimport createNumberMask from './addons/createNumberMask'\nimport keycode from 'keycode'\nimport InputMaskedContext from './InputMaskedContext'\n\nimport {\n isRequestingLocaleSupport,\n isRequestingNumberMask,\n correctNumberValue,\n handlePercentMask,\n handleCurrencyMask,\n handleNumberMask,\n correctCaretPosition,\n getInputModeFromMask,\n handleThousandsSeparator,\n handleDecimalSeparator,\n fromJSON,\n invisibleSpace,\n} from './InputMaskedUtils'\n\n/**\n * Takes all component properties and filters out all internal used properties\n *\n * @returns object {props, htmlAttributes}\n */\nexport const useFilteredProps = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const {\n mask, // eslint-disable-line\n number_mask, // eslint-disable-line\n currency_mask, // eslint-disable-line\n number_format, // eslint-disable-line\n mask_options, // eslint-disable-line\n as_currency, // eslint-disable-line\n as_number, // eslint-disable-line\n as_percent, // eslint-disable-line\n locale, // eslint-disable-line\n show_mask, // eslint-disable-line\n show_guide, // eslint-disable-line\n pipe, // eslint-disable-line\n keep_char_positions, // eslint-disable-line\n placeholder_char, // eslint-disable-line\n\n // Get get rest of possible attributes\n ...attributes\n } = props\n\n return { props, htmlAttributes: Object.freeze(attributes) }\n}\n\n/**\n * Returns locale from either component or context\n *\n * @returns string\n */\nexport const useLocale = () => {\n const { props, context } = React.useContext(InputMaskedContext)\n\n let { locale } = props\n if (!locale && context?.locale) {\n locale = context.locale\n }\n\n return locale\n}\n\n/**\n * Handle internal value state\n *\n * It handles both the value state given as a prop form outside,\n * along with the current written and internal value.\n *\n * @returns object with internal value state and state setter\n */\nexport const useLocalValue = () => {\n const { props, context } = React.useContext(InputMaskedContext)\n const maskParams = useNumberMaskParams() || {}\n const locale = useLocale()\n\n const [localValue, setLocalValue] = React.useState(() =>\n correctNumberValue({\n locale,\n props,\n maskParams,\n })\n )\n\n /**\n * Use an effect here, just;\n * because when a property gets changed from outside\n */\n React.useEffect(() => {\n const value = correctNumberValue({\n localValue,\n locale,\n props,\n maskParams,\n })\n\n setLocalValue(value)\n\n // Do not set \"localValue\" and \"maskParams\" here\n }, [props, context, locale]) // eslint-disable-line\n\n return { localValue, setLocalValue }\n}\n\n/**\n * Create createNumberMask if number mask parameters exists\n *\n * @returns mask function\n */\nexport const useNumberMask = () => {\n const maskParams = useNumberMaskParams()\n const { props } = React.useContext(InputMaskedContext)\n\n if (!maskParams || !isRequestingNumberMask(props)) {\n return null\n }\n\n const mask = createNumberMask(maskParams)\n\n mask.maskParams = maskParams\n\n return mask\n}\n\n/**\n * Returns either internal mask or given property mask\n *\n * @returns mask function\n */\nexport const useMask = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const numberMask = useNumberMask()\n if (numberMask) {\n return numberMask\n }\n\n return props.mask\n}\n\n/**\n * Returns the final mask params\n *\n * @returns mask params\n */\nexport const useMaskParams = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const {\n keep_char_positions,\n show_guide,\n show_mask,\n placeholder_char,\n placeholder,\n } = props\n\n const mask = useMask()\n const maskParams = useNumberMaskParams() || {}\n\n maskParams.showMask = !placeholder && isTrue(show_mask)\n\n // Revalidated placeholder char to a zero width space\n maskParams.placeholderChar = placeholder_char\n if (typeof mask?.placeholderChar !== 'undefined') {\n maskParams.placeholderChar = mask.placeholderChar\n }\n if (maskParams.placeholderChar === null) {\n maskParams.placeholderChar = invisibleSpace\n }\n\n if (typeof mask?.showMask !== 'undefined') {\n maskParams.showMask = mask.showMask\n }\n\n maskParams.showGuide = isTrue(show_guide)\n maskParams.keepCharPositions = isTrue(keep_char_positions)\n\n return maskParams\n}\n\n/**\n * Handle the TextMask dependency\n *\n * @returns React Element\n */\nexport const useInputElement = () => {\n const { props } = React.useContext(InputMaskedContext)\n const { pipe, inner_ref } = props\n\n const mask = useMask()\n const { showMask, showGuide, placeholderChar, keepCharPositions } =\n useMaskParams()\n\n const isFn = typeof inner_ref === 'function'\n const refHook = React.useRef()\n const ref = (!isFn && inner_ref) || refHook\n\n React.useLayoutEffect(() => {\n if (isFn) {\n inner_ref?.(ref.current)\n }\n }, [ref.current])\n\n // Create the actual input element\n const inputElementRef = React.useRef(<input ref={ref} />)\n\n const InputElement = (params, innerRef) => {\n // Set ref for Eufemia input\n innerRef.current = ref.current\n\n // Set \"inputMode\"\n if (!params.inputMode) {\n params.inputMode = getInputModeFromMask(mask)\n }\n\n return (\n <TextMask\n inputRef={ref}\n inputElement={inputElementRef.current}\n pipe={pipe}\n mask={mask || []}\n showMask={showMask}\n guide={showGuide}\n keepCharPositions={keepCharPositions}\n placeholderChar={placeholderChar}\n {...params}\n className={classnames(\n params.className,\n showMask &&\n showGuide &&\n placeholderChar &&\n placeholderChar !== invisibleSpace &&\n 'dnb-input-masked--guide' // will use --font-family-monospace\n )}\n />\n )\n }\n return InputElement\n}\n\n/**\n * Will map some events we need to map during typing\n *\n * @param {object} param0\n * @property {function} setLocalValue setState handler\n * @returns object of events to handle\n */\nexport const useEventMapping = ({ setLocalValue }) => {\n const callEvent = useCallEvent({ setLocalValue })\n\n return {\n onBeforeInput: (event) => callEvent({ event }, 'on_before_input'),\n onFocus: (params) => callEvent(params, 'on_focus'),\n onBlur: (params) => callEvent(params, 'on_blur'),\n onMouseUp: (event) => callEvent({ event }, 'on_mouse_up'),\n onKeyDown: (params) => callEvent(params, 'on_key_down'),\n onSubmit: (params) => callEvent(params, 'on_submit'),\n onChange: (params) => callEvent(params, 'on_change'),\n\n on_focus: undefined,\n on_blur: undefined,\n on_key_down: undefined,\n on_submit: undefined,\n on_change: undefined,\n }\n}\n\n/**\n * Will map some events we need to map during typing\n *\n * @param {object} param0\n * @property {function} setLocalValue setState handler\n * @returns event handler function\n */\nconst useCallEvent = ({ setLocalValue }) => {\n const { props } = React.useContext(InputMaskedContext)\n const maskParams = useMaskParams()\n const isNumberMask = useNumberMask()\n\n // Source: https://en.wikipedia.org/wiki/Decimal_separator\n const decimalSeparators = /[,.'·]/\n let isUnidentified = false\n\n const callEvent = ({ event, value }, name) => {\n value = value || event.target.value\n const selStart = event.target.selectionStart\n let keyCode = keycode(event)\n\n // Android issue: https://bugs.chromium.org/p/chromium/issues/detail?id=118639\n if (\n name === 'on_key_down' &&\n (event.which === 229 || keyCode === undefined)\n ) {\n isUnidentified = true\n }\n\n // Android issue: https://bugs.chromium.org/p/chromium/issues/detail?id=118639\n // so we use this solution instead\n if (\n isUnidentified &&\n name === 'on_before_input' &&\n typeof event?.data !== 'undefined'\n ) {\n name = 'on_key_down'\n keyCode = event.data\n isUnidentified = false\n }\n\n // Prevent entering a leading zero\n if (\n name === 'on_key_down' &&\n !isUnidentified &&\n maskParams?.disallowLeadingZeroes &&\n (keyCode === '0' ||\n keyCode === 'numpad 0' ||\n (value.replace(/[^\\d]/g, '') === '' &&\n decimalSeparators.test(keyCode)))\n ) {\n const testValue = (\n value.slice(0, selStart) +\n '0' +\n value.slice(selStart + 1, value.length)\n ).replace(/[^\\d]/g, '')\n\n if (/^0/.test(testValue)) {\n event.preventDefault()\n }\n }\n\n if (\n name === 'on_key_down' &&\n isNumberMask &&\n !isUnidentified &&\n maskParams?.decimalSymbol\n ) {\n const hasDecimalSymbol = value.includes(maskParams.decimalSymbol)\n const allowedDecimals =\n maskParams.decimalLimit > 0 || maskParams.allowDecimal !== false\n\n if (!allowedDecimals && decimalSeparators.test(keyCode)) {\n event.preventDefault()\n }\n\n const charAtSelection = value.slice(selStart, selStart + 1)\n\n if (allowedDecimals) {\n // if we have already a decimal ...\n if (hasDecimalSymbol && decimalSeparators.test(keyCode)) {\n // ... we set the cursor on after the decimalSeparators\n if (decimalSeparators.test(charAtSelection)) {\n const index = value.indexOf(maskParams.decimalSymbol)\n if (index > -1) {\n safeSetSelection(event.target, index + 1)\n }\n }\n\n // ... we do not allow to type another\n event.preventDefault()\n }\n\n // replace other decimal\n else if (\n !hasDecimalSymbol &&\n keyCode !== maskParams.decimalSymbol &&\n decimalSeparators.test(keyCode)\n ) {\n value = value.slice(0, selStart)\n setLocalValue(value + maskParams.decimalSymbol)\n event.target.value = value + maskParams.decimalSymbol\n event.preventDefault()\n }\n }\n\n // move cursor to right if key is delete and char at selection is thousand separator\n if (\n keyCode === 'delete' &&\n charAtSelection === (maskParams.thousandsSeparatorSymbol || ' ')\n ) {\n safeSetSelection(event.target, selStart + 1)\n event.preventDefault()\n }\n }\n\n let num = cleanNumber(value, {\n prefix: maskParams.prefix,\n suffix: maskParams.suffix,\n decimalSeparator: maskParams.decimalSymbol || ',',\n thousandsSeparator: maskParams.thousandsSeparatorSymbol || ' ',\n })\n\n // We don't want to return NaN, so we set it to 0\n if (num === '-') {\n num = -0\n }\n\n const numberValue = Number(num)\n\n // Return '' (empty string) when the user has entered something invalid\n const cleanedValue =\n numberValue === 0 && String(num).charAt(0) !== '0' ? '' : num\n\n if (name === 'on_change' && numberValue === 0) {\n correctCaretPosition(event.target, maskParams, props)\n }\n\n const result = dispatchCustomElementEvent(props, name, {\n event,\n value,\n numberValue,\n cleanedValue,\n })\n\n if (name === 'on_change') {\n setLocalValue(value)\n }\n\n if (\n (name === 'on_focus' || name === 'on_mouse_up') &&\n !props.selectall\n ) {\n // Also correct here, because of additional click inside the field\n correctCaretPosition(event.target, maskParams, props)\n }\n\n return result\n }\n\n return callEvent\n}\n\n/**\n * Returns number mask parameters if requested by the component properties\n *\n * @returns object of number mask parameter\n */\nconst useNumberMaskParams = () => {\n const { props } = React.useContext(InputMaskedContext)\n const locale = useLocale()\n\n if (!isRequestingNumberMask(props)) {\n return { ...fromJSON(props.mask_options) }\n }\n\n let { number_mask, currency_mask, mask_options } = props\n\n const { as_number, as_percent, as_currency } = props\n\n mask_options = fromJSON(mask_options)\n number_mask = isTrue(number_mask) ? {} : fromJSON(number_mask)\n currency_mask = isTrue(currency_mask)\n ? {}\n : fromJSON(currency_mask, {\n currency: currency_mask,\n })\n if (!currency_mask?.currency) {\n delete currency_mask.currency\n }\n\n if (isRequestingLocaleSupport(props)) {\n const thousandsSeparatorSymbol = handleThousandsSeparator(locale)\n const decimalSymbol = handleDecimalSeparator(locale)\n\n if (isTrue(as_number) || isTrue(as_percent)) {\n number_mask = extendPropsWithContext(number_mask, null, {\n decimalSymbol,\n thousandsSeparatorSymbol,\n })\n } else if (as_currency) {\n currency_mask = extendPropsWithContext(currency_mask, null, {\n decimalSymbol,\n thousandsSeparatorSymbol,\n currency: getCurrencySymbol(\n locale,\n typeof as_currency === 'string' ? as_currency : null\n ),\n })\n }\n }\n\n let maskParams = null\n\n if (number_mask) {\n maskParams = handleNumberMask({\n mask_options,\n number_mask,\n })\n\n if (isTrue(as_percent)) {\n maskParams = handlePercentMask({ props, locale, maskParams })\n }\n } else if (currency_mask) {\n maskParams = handleCurrencyMask({\n mask_options,\n currency_mask,\n })\n }\n\n return maskParams\n}\n"],"mappings":"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"}
@@ -63,16 +63,19 @@ export { Accordion, Anchor, Autocomplete, Avatar, Badge, Breadcrumb, Button, Car
63
63
  export declare const getComponents: () => {
64
64
  Accordion: typeof Accordion;
65
65
  Anchor: import("react").ForwardRefExoticComponent<import("./anchor/Anchor").AnchorProps & Omit<import("react").HTMLProps<HTMLAnchorElement>, "ref"> & import("./space/types").SpacingElementProps & {
66
- space?: import("./space/types").SpaceType | import("./space/types").SpacingElementProps;
66
+ space?: import("./space/types").SpaceTypeAll;
67
+ innerSpace?: import("./space/types").SpaceTypeAll | import("./space/types").SpaceTypeMedia;
67
68
  } & import("react").RefAttributes<HTMLAnchorElement>>;
68
69
  Autocomplete: typeof Autocomplete;
69
70
  Avatar: {
70
71
  (localProps: import("./avatar/Avatar").AvatarProps & import("./space/types").SpacingElementProps & {
71
- space?: import("./space/types").SpaceType | import("./space/types").SpacingElementProps;
72
+ space?: import("./space/types").SpaceTypeAll;
73
+ innerSpace?: import("./space/types").SpaceTypeAll | import("./space/types").SpaceTypeMedia;
72
74
  }): import("react/jsx-runtime").JSX.Element;
73
75
  Group: {
74
76
  (localProps: import("./avatar/AvatarGroup").AvatarGroupProps & import("./space/types").SpacingElementProps & {
75
- space?: import("./space/types").SpaceType | import("./space/types").SpacingElementProps;
77
+ space?: import("./space/types").SpaceTypeAll;
78
+ innerSpace?: import("./space/types").SpaceTypeAll | import("./space/types").SpaceTypeMedia;
76
79
  }): import("react/jsx-runtime").JSX.Element;
77
80
  _supportsSpacingProps: boolean;
78
81
  };
@@ -81,7 +84,8 @@ export declare const getComponents: () => {
81
84
  Badge: typeof Badge;
82
85
  Breadcrumb: {
83
86
  (localProps: import("./breadcrumb/Breadcrumb").BreadcrumbProps & import("./space/types").SpacingElementProps & {
84
- space?: import("./space/types").SpaceType | import("./space/types").SpacingElementProps;
87
+ space?: import("./space/types").SpaceTypeAll;
88
+ innerSpace?: import("./space/types").SpaceTypeAll | import("./space/types").SpaceTypeMedia;
85
89
  }): import("react/jsx-runtime").JSX.Element;
86
90
  Item: {
87
91
  (localProps: import("./breadcrumb/BreadcrumbItem").BreadcrumbItemProps): import("react/jsx-runtime").JSX.Element;
@@ -140,11 +144,13 @@ export declare const getComponents: () => {
140
144
  Tabs: typeof Tabs;
141
145
  Tag: {
142
146
  (localProps: import("./tag/Tag").TagProps & import("./space/types").SpacingElementProps & {
143
- space?: import("./space/types").SpaceType | import("./space/types").SpacingElementProps;
147
+ space?: import("./space/types").SpaceTypeAll;
148
+ innerSpace?: import("./space/types").SpaceTypeAll | import("./space/types").SpaceTypeMedia;
144
149
  }): import("react/jsx-runtime").JSX.Element;
145
150
  Group: {
146
151
  (localProps: import("./tag/TagGroup").TagGroupProps & import("./space/types").SpacingElementProps & {
147
- space?: import("./space/types").SpaceType | import("./space/types").SpacingElementProps;
152
+ space?: import("./space/types").SpaceTypeAll;
153
+ innerSpace?: import("./space/types").SpaceTypeAll | import("./space/types").SpaceTypeMedia;
148
154
  }): import("react/jsx-runtime").JSX.Element;
149
155
  _supportsSpacingProps: boolean;
150
156
  };
@@ -5,12 +5,7 @@
5
5
  import React from 'react';
6
6
  import ModalContext from '../ModalContext';
7
7
  import { SectionProps } from '../../Section';
8
- export interface ModalInnerProps extends SectionProps {
9
- /**
10
- * Give the inner content wrapper a class name (maps to `dnb-modal__content__inner`).
11
- */
12
- className?: string;
13
- }
8
+ export type ModalInnerProps = SectionProps;
14
9
  export default class ModalInner extends React.PureComponent<ModalInnerProps & React.HTMLProps<HTMLElement>> {
15
10
  static contextType: React.Context<{
16
11
  preventClick: any;
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
- const _excluded = ["className", "style_type", "ref"];
4
+ const _excluded = ["className", "backgroundColor", "ref"];
5
5
  import React from 'react';
6
6
  import Section from '../../section/Section';
7
7
  import ModalContext from '../ModalContext';
@@ -13,22 +13,22 @@ export default class ModalInner extends React.PureComponent {
13
13
  }
14
14
  componentDidMount() {
15
15
  const {
16
- style_type = 'black-3'
16
+ backgroundColor = 'black-3'
17
17
  } = this.props;
18
- if (style_type) {
19
- this.context.setBackgroundColor(style_type);
18
+ if (backgroundColor) {
19
+ this.context.setBackgroundColor(backgroundColor);
20
20
  }
21
21
  }
22
22
  render() {
23
23
  const _this$props = this.props,
24
24
  {
25
25
  className = null,
26
- style_type = 'black-3',
26
+ backgroundColor = 'black-3',
27
27
  ref
28
28
  } = _this$props,
29
29
  props = _objectWithoutProperties(_this$props, _excluded);
30
30
  return React.createElement(Section, _extends({
31
- style_type: style_type,
31
+ backgroundColor: backgroundColor,
32
32
  className: classnames(className)
33
33
  }, props));
34
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ModalInner.js","names":["React","Section","ModalContext","classnames","ModalInner","PureComponent","constructor","args","_defineProperty","componentDidMount","style_type","props","context","setBackgroundColor","render","_this$props","className","ref","_objectWithoutProperties","_excluded","createElement","_extends"],"sources":["../../../../../src/components/modal/parts/ModalInner.tsx"],"sourcesContent":["/**\n * Web Modal Component\n *\n */\n\nimport React from 'react'\nimport Section from '../../section/Section'\nimport ModalContext from '../ModalContext'\nimport classnames from 'classnames'\nimport { SectionProps } from '../../Section'\n\nexport interface ModalInnerProps extends SectionProps {\n /**\n * Give the inner content wrapper a class name (maps to `dnb-modal__content__inner`).\n */\n className?: string\n}\n\nexport default class ModalInner extends React.PureComponent<\n ModalInnerProps & React.HTMLProps<HTMLElement>\n> {\n static contextType = ModalContext\n\n context!: React.ContextType<typeof ModalContext>\n\n componentDidMount() {\n const { style_type = 'black-3' } = this.props\n if (style_type) {\n this.context.setBackgroundColor(style_type)\n }\n }\n\n render() {\n const {\n className = null,\n style_type = 'black-3',\n ref, // eslint-disable-line\n ...props\n } = this.props\n\n return (\n <Section\n style_type={style_type}\n className={classnames(className)}\n {...props}\n />\n )\n }\n}\n"],"mappings":";;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,OAAO,MAAM,uBAAuB;AAC3C,OAAOC,YAAY,MAAM,iBAAiB;AAC1C,OAAOC,UAAU,MAAM,YAAY;AAUnC,eAAe,MAAMC,UAAU,SAASJ,KAAK,CAACK,aAAa,CAEzD;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;EAAA;EAKAC,iBAAiBA,CAAA,EAAG;IAClB,MAAM;MAAEC,UAAU,GAAG;IAAU,CAAC,GAAG,IAAI,CAACC,KAAK;IAC7C,IAAID,UAAU,EAAE;MACd,IAAI,CAACE,OAAO,CAACC,kBAAkB,CAACH,UAAU,CAAC;IAC7C;EACF;EAEAI,MAAMA,CAAA,EAAG;IACP,MAAAC,WAAA,GAKI,IAAI,CAACJ,KAAK;MALR;QACJK,SAAS,GAAG,IAAI;QAChBN,UAAU,GAAG,SAAS;QACtBO;MAEF,CAAC,GAAAF,WAAA;MADIJ,KAAK,GAAAO,wBAAA,CAAAH,WAAA,EAAAI,SAAA;IAGV,OACEnB,KAAA,CAAAoB,aAAA,CAACnB,OAAO,EAAAoB,QAAA;MACNX,UAAU,EAAEA,UAAW;MACvBM,SAAS,EAAEb,UAAU,CAACa,SAAS;IAAE,GAC7BL,KAAK,CACV,CAAC;EAEN;AACF;AAACH,eAAA,CA9BoBJ,UAAU,iBAGRF,YAAY"}
1
+ {"version":3,"file":"ModalInner.js","names":["React","Section","ModalContext","classnames","ModalInner","PureComponent","constructor","args","_defineProperty","componentDidMount","backgroundColor","props","context","setBackgroundColor","render","_this$props","className","ref","_objectWithoutProperties","_excluded","createElement","_extends"],"sources":["../../../../../src/components/modal/parts/ModalInner.tsx"],"sourcesContent":["/**\n * Web Modal Component\n *\n */\n\nimport React from 'react'\nimport Section from '../../section/Section'\nimport ModalContext from '../ModalContext'\nimport classnames from 'classnames'\nimport { SectionProps } from '../../Section'\n\nexport type ModalInnerProps = SectionProps\n\nexport default class ModalInner extends React.PureComponent<\n ModalInnerProps & React.HTMLProps<HTMLElement>\n> {\n static contextType = ModalContext\n\n context!: React.ContextType<typeof ModalContext>\n\n componentDidMount() {\n const { backgroundColor = 'black-3' } = this.props\n if (backgroundColor) {\n this.context.setBackgroundColor(backgroundColor)\n }\n }\n\n render() {\n const {\n className = null,\n backgroundColor = 'black-3',\n ref, // eslint-disable-line\n ...props\n } = this.props\n\n return (\n <Section\n backgroundColor={backgroundColor}\n className={classnames(className)}\n {...props}\n />\n )\n }\n}\n"],"mappings":";;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,OAAO,MAAM,uBAAuB;AAC3C,OAAOC,YAAY,MAAM,iBAAiB;AAC1C,OAAOC,UAAU,MAAM,YAAY;AAKnC,eAAe,MAAMC,UAAU,SAASJ,KAAK,CAACK,aAAa,CAEzD;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;EAAA;EAKAC,iBAAiBA,CAAA,EAAG;IAClB,MAAM;MAAEC,eAAe,GAAG;IAAU,CAAC,GAAG,IAAI,CAACC,KAAK;IAClD,IAAID,eAAe,EAAE;MACnB,IAAI,CAACE,OAAO,CAACC,kBAAkB,CAACH,eAAe,CAAC;IAClD;EACF;EAEAI,MAAMA,CAAA,EAAG;IACP,MAAAC,WAAA,GAKI,IAAI,CAACJ,KAAK;MALR;QACJK,SAAS,GAAG,IAAI;QAChBN,eAAe,GAAG,SAAS;QAC3BO;MAEF,CAAC,GAAAF,WAAA;MADIJ,KAAK,GAAAO,wBAAA,CAAAH,WAAA,EAAAI,SAAA;IAGV,OACEnB,KAAA,CAAAoB,aAAA,CAACnB,OAAO,EAAAoB,QAAA;MACNX,eAAe,EAAEA,eAAgB;MACjCM,SAAS,EAAEb,UAAU,CAACa,SAAS;IAAE,GAC7BL,KAAK,CACV,CAAC;EAEN;AACF;AAACH,eAAA,CA9BoBJ,UAAU,iBAGRF,YAAY"}
@@ -6,6 +6,7 @@ import Context from '../../shared/Context';
6
6
  import { LOCALE, CURRENCY, CURRENCY_DISPLAY } from '../../shared/defaults';
7
7
  import { warn, isTrue, slugify, escapeRegexChars } from '../../shared/component-helper';
8
8
  import { getOffsetTop, getOffsetLeft, getSelectedElement, copyToClipboard, IS_MAC, IS_WIN } from '../../shared/helpers';
9
+ import locales from '../../shared/locales';
9
10
  const NUMBER_CHARS = '\\-0-9,.';
10
11
  export const format = (value, {
11
12
  locale = null,
@@ -201,6 +202,9 @@ export const format = (value, {
201
202
  const thousandsSeparator = getThousandsSeparator(locale);
202
203
  cleanedValue = String(display).replace(new RegExp(`${thousandsSeparator}(?=\\d{3})`, 'g'), '');
203
204
  }
205
+ if (value === 'invalid') {
206
+ aria = locales[locale].NumberFormat.not_available || 'N/A';
207
+ }
204
208
  return {
205
209
  value,
206
210
  cleanedValue,
@@ -265,9 +269,12 @@ const prepareMinus = (display, locale) => {
265
269
  if (!(locale && /(no|nb|nn)$/i.test(locale))) {
266
270
  return display;
267
271
  }
268
- const reg = '^(-|−|‐|‒|–|—|―)';
269
272
  const first = display[0];
270
273
  const second = display[1];
274
+ if (first === '-' && second === '-') {
275
+ return display;
276
+ }
277
+ const reg = '^(-|−|‐|‒|–|—|―)';
271
278
  if (new RegExp(reg).test(first)) {
272
279
  if (parseFloat(second) > 0) {
273
280
  display = display.replace(new RegExp(reg + '(.*)'), '-$2');
@@ -294,21 +301,24 @@ export const formatNumber = (number, locale, options = {}, formatter = null) =>
294
301
  formatter = getGroupFormatter(locale, null, formatter);
295
302
  }
296
303
  if (formatter) {
297
- return formatToParts({
304
+ return replaceNaNWithDash(formatToParts({
298
305
  number,
299
306
  locale,
300
307
  options
301
308
  }).map(formatter).reduce((acc, {
302
309
  value
303
- }) => acc + value, '');
310
+ }) => acc + value, ''));
304
311
  } else if (typeof Number !== 'undefined' && typeof Number.toLocaleString === 'function') {
305
- return parseFloat(number).toLocaleString(locale, options);
312
+ return replaceNaNWithDash(parseFloat(number).toLocaleString(locale, options));
306
313
  }
307
314
  } catch (e) {
308
315
  warn(`Number could not be formatted: ${JSON.stringify([number, locale, options])}`, e);
309
316
  }
310
- return number;
317
+ return replaceNaNWithDash(number);
311
318
  };
319
+ function replaceNaNWithDash(number) {
320
+ return String(number).replace(/NaN/, '–');
321
+ }
312
322
  export const formatPhone = (number, locale = null) => {
313
323
  let display = number;
314
324
  let aria = null;