@dnb/eufemia 10.8.0 → 10.9.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 (832) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/cjs/components/breadcrumb/BreadcrumbItem.js +1 -1
  3. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  4. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  5. package/cjs/components/input-masked/InputMaskedHooks.js +1 -1
  6. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  7. package/cjs/components/modal/ModalContent.js +3 -1
  8. package/cjs/components/modal/ModalContent.js.map +1 -1
  9. package/cjs/components/progress-indicator/style/dnb-progress-indicator.css +59 -2
  10. package/cjs/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  11. package/cjs/components/progress-indicator/style/dnb-progress-indicator.scss +70 -2
  12. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.css +18 -0
  13. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.min.css +9 -0
  14. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.scss +19 -0
  15. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.css +5 -64
  16. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.min.css +1 -1
  17. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.scss +4 -86
  18. package/cjs/components/section/Section.js +1 -1
  19. package/cjs/components/section/Section.js.map +1 -1
  20. package/cjs/components/skeleton/style/dnb-skeleton.css +50 -0
  21. package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
  22. package/cjs/components/skeleton/style/dnb-skeleton.scss +66 -0
  23. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +7 -0
  24. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +0 -0
  25. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +7 -0
  26. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +5 -60
  27. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +0 -1
  28. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +4 -86
  29. package/cjs/components/tooltip/style/dnb-tooltip.css +10 -0
  30. package/cjs/components/tooltip/style/dnb-tooltip.min.css +1 -1
  31. package/cjs/components/tooltip/style/dnb-tooltip.scss +14 -0
  32. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.css +9 -0
  33. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.min.css +1 -0
  34. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.scss +10 -0
  35. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-ui.css +3 -11
  36. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-ui.min.css +1 -1
  37. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-ui.scss +3 -15
  38. package/cjs/elements/blockquote/style/blockquote-mixins.scss +22 -11
  39. package/cjs/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +20 -11
  40. package/cjs/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +1 -0
  41. package/cjs/extensions/forms/DataContext/At.d.ts +1 -1
  42. package/cjs/extensions/forms/DataContext/At.js.map +1 -1
  43. package/cjs/extensions/forms/DataContext/Context.d.ts +1 -0
  44. package/cjs/extensions/forms/DataContext/Context.js +2 -1
  45. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  46. package/cjs/extensions/forms/DataContext/Provider.js +7 -3
  47. package/cjs/extensions/forms/DataContext/Provider.js.map +1 -1
  48. package/cjs/extensions/forms/DataContext/index.d.ts +0 -2
  49. package/cjs/extensions/forms/DataContext/index.js +0 -2
  50. package/cjs/extensions/forms/DataContext/index.js.map +1 -1
  51. package/cjs/extensions/forms/Field/ArraySelection.d.ts +2 -3
  52. package/cjs/extensions/forms/Field/ArraySelection.js +4 -4
  53. package/cjs/extensions/forms/Field/ArraySelection.js.map +1 -1
  54. package/cjs/extensions/forms/Field/CountryCode.d.ts +2 -3
  55. package/cjs/extensions/forms/Field/CountryCode.js +3 -4
  56. package/cjs/extensions/forms/Field/CountryCode.js.map +1 -1
  57. package/cjs/extensions/forms/Field/Currency.d.ts +2 -3
  58. package/cjs/extensions/forms/Field/Currency.js.map +1 -1
  59. package/cjs/extensions/forms/Field/Date.d.ts +2 -3
  60. package/cjs/extensions/forms/Field/Date.js +4 -4
  61. package/cjs/extensions/forms/Field/Date.js.map +1 -1
  62. package/cjs/extensions/forms/Field/Number.d.ts +2 -3
  63. package/cjs/extensions/forms/Field/Number.js +4 -4
  64. package/cjs/extensions/forms/Field/Number.js.map +1 -1
  65. package/cjs/extensions/forms/Field/Option.d.ts +2 -3
  66. package/cjs/extensions/forms/Field/Option.js.map +1 -1
  67. package/cjs/extensions/forms/Field/PhoneNumber.d.ts +2 -3
  68. package/cjs/extensions/forms/Field/PhoneNumber.js +4 -4
  69. package/cjs/extensions/forms/Field/PhoneNumber.js.map +1 -1
  70. package/cjs/extensions/forms/Field/PostalCodeAndCity.d.ts +2 -2
  71. package/cjs/extensions/forms/Field/PostalCodeAndCity.js +4 -4
  72. package/cjs/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  73. package/cjs/extensions/forms/Field/Selection.d.ts +2 -3
  74. package/cjs/extensions/forms/Field/Selection.js +5 -6
  75. package/cjs/extensions/forms/Field/Selection.js.map +1 -1
  76. package/cjs/extensions/forms/Field/String.d.ts +2 -3
  77. package/cjs/extensions/forms/Field/String.js +5 -7
  78. package/cjs/extensions/forms/Field/String.js.map +1 -1
  79. package/cjs/extensions/forms/Field/Toggle.d.ts +2 -3
  80. package/cjs/extensions/forms/Field/Toggle.js +5 -5
  81. package/cjs/extensions/forms/Field/Toggle.js.map +1 -1
  82. package/cjs/extensions/forms/Field/index.d.ts +0 -4
  83. package/cjs/extensions/forms/Field/index.js +0 -4
  84. package/cjs/extensions/forms/Field/index.js.map +1 -1
  85. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -3
  86. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +76 -8
  87. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  88. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +8 -0
  89. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js +12 -0
  90. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -0
  91. package/cjs/extensions/forms/FieldBlock/index.d.ts +1 -0
  92. package/cjs/extensions/forms/FieldBlock/index.js +15 -2
  93. package/cjs/extensions/forms/FieldBlock/index.js.map +1 -1
  94. package/cjs/extensions/forms/Form/FormElement.d.ts +4 -0
  95. package/cjs/extensions/forms/Form/FormElement.js +39 -0
  96. package/cjs/extensions/forms/Form/FormElement.js.map +1 -0
  97. package/cjs/extensions/forms/Form/FormHandler.d.ts +6 -0
  98. package/cjs/extensions/forms/Form/FormHandler.js +41 -0
  99. package/cjs/extensions/forms/Form/FormHandler.js.map +1 -0
  100. package/cjs/extensions/forms/{DataContext → Form}/SubmitButton.d.ts +3 -4
  101. package/cjs/extensions/forms/Form/SubmitButton.js +36 -0
  102. package/cjs/extensions/forms/Form/SubmitButton.js.map +1 -0
  103. package/cjs/extensions/forms/Form/index.d.ts +9 -0
  104. package/cjs/extensions/forms/Form/index.js +18 -0
  105. package/cjs/extensions/forms/Form/index.js.map +1 -0
  106. package/cjs/extensions/forms/Iterate/Array.d.ts +17 -0
  107. package/cjs/extensions/forms/Iterate/Array.js +91 -0
  108. package/cjs/extensions/forms/Iterate/Array.js.map +1 -0
  109. package/cjs/extensions/forms/Iterate/ArrayPushButton.d.ts +10 -0
  110. package/cjs/extensions/forms/Iterate/ArrayPushButton.js +53 -0
  111. package/cjs/extensions/forms/Iterate/ArrayPushButton.js.map +1 -0
  112. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton.d.ts +8 -0
  113. package/cjs/extensions/forms/{DataContext/SubmitButton.js → Iterate/ArrayRemoveElementButton.js} +25 -15
  114. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton.js.map +1 -0
  115. package/cjs/extensions/forms/Iterate/IterateElementContext.d.ts +11 -0
  116. package/cjs/extensions/forms/Iterate/IterateElementContext.js +12 -0
  117. package/cjs/extensions/forms/Iterate/IterateElementContext.js.map +1 -0
  118. package/cjs/extensions/forms/Iterate/index.d.ts +11 -0
  119. package/cjs/extensions/forms/Iterate/index.js +25 -0
  120. package/cjs/extensions/forms/Iterate/index.js.map +1 -0
  121. package/cjs/extensions/forms/Layout/ButtonRow.d.ts +1 -1
  122. package/cjs/extensions/forms/Layout/ButtonRow.js +2 -2
  123. package/cjs/extensions/forms/Layout/ButtonRow.js.map +1 -1
  124. package/cjs/extensions/forms/Layout/Card.d.ts +1 -1
  125. package/cjs/extensions/forms/Layout/Card.js +4 -4
  126. package/cjs/extensions/forms/Layout/Card.js.map +1 -1
  127. package/cjs/extensions/forms/Layout/FlexContainer.d.ts +1 -1
  128. package/cjs/extensions/forms/Layout/FlexContainer.js +3 -3
  129. package/cjs/extensions/forms/Layout/FlexContainer.js.map +1 -1
  130. package/cjs/extensions/forms/Layout/FlexItem.d.ts +1 -1
  131. package/cjs/extensions/forms/Layout/FlexItem.js +2 -2
  132. package/cjs/extensions/forms/Layout/FlexItem.js.map +1 -1
  133. package/cjs/extensions/forms/Layout/MainHeading.d.ts +4 -2
  134. package/cjs/extensions/forms/Layout/MainHeading.js +11 -4
  135. package/cjs/extensions/forms/Layout/MainHeading.js.map +1 -1
  136. package/cjs/extensions/forms/Layout/Section.d.ts +1 -1
  137. package/cjs/extensions/forms/Layout/Section.js +2 -2
  138. package/cjs/extensions/forms/Layout/Section.js.map +1 -1
  139. package/cjs/extensions/forms/Layout/SubHeading.d.ts +4 -2
  140. package/cjs/extensions/forms/Layout/SubHeading.js +11 -4
  141. package/cjs/extensions/forms/Layout/SubHeading.js.map +1 -1
  142. package/cjs/extensions/forms/Layout/index.d.ts +0 -2
  143. package/cjs/extensions/forms/Layout/index.js +1 -3
  144. package/cjs/extensions/forms/Layout/index.js.map +1 -1
  145. package/cjs/extensions/forms/StepsLayout/Buttons.d.ts +1 -1
  146. package/cjs/extensions/forms/StepsLayout/Buttons.js +2 -2
  147. package/cjs/extensions/forms/StepsLayout/Buttons.js.map +1 -1
  148. package/cjs/extensions/forms/StepsLayout/NextButton.d.ts +1 -1
  149. package/cjs/extensions/forms/StepsLayout/NextButton.js.map +1 -1
  150. package/cjs/extensions/forms/StepsLayout/PreviousButton.d.ts +1 -1
  151. package/cjs/extensions/forms/StepsLayout/PreviousButton.js.map +1 -1
  152. package/cjs/extensions/forms/StepsLayout/Step.d.ts +1 -1
  153. package/cjs/extensions/forms/StepsLayout/Step.js +2 -2
  154. package/cjs/extensions/forms/StepsLayout/Step.js.map +1 -1
  155. package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +1 -1
  156. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +2 -2
  157. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  158. package/cjs/extensions/forms/Value/Boolean.d.ts +2 -3
  159. package/cjs/extensions/forms/Value/Boolean.js +4 -4
  160. package/cjs/extensions/forms/Value/Boolean.js.map +1 -1
  161. package/cjs/extensions/forms/Value/Number.d.ts +2 -3
  162. package/cjs/extensions/forms/Value/Number.js +4 -3
  163. package/cjs/extensions/forms/Value/Number.js.map +1 -1
  164. package/cjs/extensions/forms/Value/String.d.ts +2 -3
  165. package/cjs/extensions/forms/Value/String.js +4 -4
  166. package/cjs/extensions/forms/Value/String.js.map +1 -1
  167. package/cjs/extensions/forms/Value/index.d.ts +0 -4
  168. package/cjs/extensions/forms/Value/index.js +0 -4
  169. package/cjs/extensions/forms/Value/index.js.map +1 -1
  170. package/cjs/extensions/forms/ValueBlock/ValueBlock.d.ts +2 -3
  171. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +2 -2
  172. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  173. package/cjs/extensions/forms/hooks/index.d.ts +1 -0
  174. package/cjs/extensions/forms/{Field/hooks → hooks}/index.js +3 -3
  175. package/cjs/extensions/forms/hooks/index.js.map +1 -0
  176. package/cjs/extensions/forms/hooks/useDataValue.d.ts +12 -0
  177. package/cjs/extensions/forms/{Field/hooks/useField.js → hooks/useDataValue.js} +60 -26
  178. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -0
  179. package/cjs/extensions/forms/index.d.ts +4 -4
  180. package/cjs/extensions/forms/index.js +20 -12
  181. package/cjs/extensions/forms/index.js.map +1 -1
  182. package/cjs/extensions/forms/types.d.ts +95 -2
  183. package/cjs/extensions/forms/types.js +71 -0
  184. package/cjs/extensions/forms/types.js.map +1 -1
  185. package/cjs/extensions/forms/utils/index.d.ts +0 -1
  186. package/cjs/extensions/forms/utils/index.js +0 -12
  187. package/cjs/extensions/forms/utils/index.js.map +1 -1
  188. package/cjs/extensions/lib.d.ts +0 -2
  189. package/cjs/extensions/payment-card/style/dnb-payment-card.css +7 -7
  190. package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  191. package/cjs/extensions/payment-card/style/dnb-payment-card.scss +7 -7
  192. package/cjs/shared/Eufemia.d.ts +1 -1
  193. package/cjs/shared/Eufemia.js +2 -2
  194. package/cjs/shared/Eufemia.js.map +1 -1
  195. package/cjs/shared/useMedia.js +33 -23
  196. package/cjs/shared/useMedia.js.map +1 -1
  197. package/cjs/style/dnb-ui-components.css +119 -2
  198. package/cjs/style/dnb-ui-components.min.css +1 -1
  199. package/cjs/style/dnb-ui-elements.css +17 -11
  200. package/cjs/style/dnb-ui-elements.min.css +1 -1
  201. package/cjs/style/dnb-ui-extensions.css +7 -7
  202. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  203. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -11
  204. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  205. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +131 -136
  206. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  207. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -7
  208. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  209. package/cjs/style/themes/theme-sbanken/customisations.scss +4 -0
  210. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +40 -21
  211. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  212. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +155 -152
  213. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +11 -3
  214. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +3 -3
  215. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +38 -21
  216. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  217. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +7 -7
  218. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  219. package/cjs/style/themes/theme-ui/ui-theme-basis.css +19 -11
  220. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  221. package/cjs/style/themes/theme-ui/ui-theme-basis.scss +4 -0
  222. package/cjs/style/themes/theme-ui/ui-theme-components.css +131 -136
  223. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  224. package/cjs/style/themes/theme-ui/ui-theme-elements.css +17 -11
  225. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  226. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +7 -7
  227. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  228. package/cjs/style/themes/theme-ui/ui-theme-tags.css +17 -11
  229. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  230. package/components/breadcrumb/BreadcrumbItem.js +1 -1
  231. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  232. package/components/date-picker/DatePickerInput.js.map +1 -1
  233. package/components/input-masked/InputMaskedHooks.js +1 -1
  234. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  235. package/components/modal/ModalContent.js +3 -1
  236. package/components/modal/ModalContent.js.map +1 -1
  237. package/components/progress-indicator/style/dnb-progress-indicator.css +59 -2
  238. package/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  239. package/components/progress-indicator/style/dnb-progress-indicator.scss +70 -2
  240. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.css +18 -0
  241. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.min.css +9 -0
  242. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.scss +19 -0
  243. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.css +5 -64
  244. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.min.css +1 -1
  245. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.scss +4 -86
  246. package/components/section/Section.js +1 -1
  247. package/components/section/Section.js.map +1 -1
  248. package/components/skeleton/style/dnb-skeleton.css +50 -0
  249. package/components/skeleton/style/dnb-skeleton.min.css +1 -1
  250. package/components/skeleton/style/dnb-skeleton.scss +66 -0
  251. package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +7 -0
  252. package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +0 -0
  253. package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +7 -0
  254. package/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +5 -60
  255. package/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +0 -1
  256. package/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +4 -86
  257. package/components/tooltip/style/dnb-tooltip.css +10 -0
  258. package/components/tooltip/style/dnb-tooltip.min.css +1 -1
  259. package/components/tooltip/style/dnb-tooltip.scss +14 -0
  260. package/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.css +9 -0
  261. package/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.min.css +1 -0
  262. package/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.scss +10 -0
  263. package/components/tooltip/style/themes/dnb-tooltip-theme-ui.css +3 -11
  264. package/components/tooltip/style/themes/dnb-tooltip-theme-ui.min.css +1 -1
  265. package/components/tooltip/style/themes/dnb-tooltip-theme-ui.scss +3 -15
  266. package/elements/blockquote/style/blockquote-mixins.scss +22 -11
  267. package/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +20 -11
  268. package/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +1 -0
  269. package/es/components/breadcrumb/BreadcrumbItem.js +1 -1
  270. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  271. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  272. package/es/components/input-masked/InputMaskedHooks.js +1 -1
  273. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  274. package/es/components/modal/ModalContent.js +3 -1
  275. package/es/components/modal/ModalContent.js.map +1 -1
  276. package/es/components/progress-indicator/style/dnb-progress-indicator.css +59 -2
  277. package/es/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  278. package/es/components/progress-indicator/style/dnb-progress-indicator.scss +70 -2
  279. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.css +18 -0
  280. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.min.css +9 -0
  281. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.scss +19 -0
  282. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.css +5 -64
  283. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.min.css +1 -1
  284. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.scss +4 -86
  285. package/es/components/section/Section.js +1 -1
  286. package/es/components/section/Section.js.map +1 -1
  287. package/es/components/skeleton/style/dnb-skeleton.css +50 -0
  288. package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
  289. package/es/components/skeleton/style/dnb-skeleton.scss +66 -0
  290. package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +7 -0
  291. package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +0 -0
  292. package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +7 -0
  293. package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +5 -60
  294. package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +0 -1
  295. package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +4 -86
  296. package/es/components/tooltip/style/dnb-tooltip.css +10 -0
  297. package/es/components/tooltip/style/dnb-tooltip.min.css +1 -1
  298. package/es/components/tooltip/style/dnb-tooltip.scss +14 -0
  299. package/es/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.css +9 -0
  300. package/es/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.min.css +1 -0
  301. package/es/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.scss +10 -0
  302. package/es/components/tooltip/style/themes/dnb-tooltip-theme-ui.css +3 -11
  303. package/es/components/tooltip/style/themes/dnb-tooltip-theme-ui.min.css +1 -1
  304. package/es/components/tooltip/style/themes/dnb-tooltip-theme-ui.scss +3 -15
  305. package/es/elements/blockquote/style/blockquote-mixins.scss +22 -11
  306. package/es/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +20 -11
  307. package/es/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +1 -0
  308. package/es/extensions/forms/DataContext/At.d.ts +1 -1
  309. package/es/extensions/forms/DataContext/At.js.map +1 -1
  310. package/es/extensions/forms/DataContext/Context.d.ts +1 -0
  311. package/es/extensions/forms/DataContext/Context.js +2 -1
  312. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  313. package/es/extensions/forms/DataContext/Provider.js +7 -3
  314. package/es/extensions/forms/DataContext/Provider.js.map +1 -1
  315. package/es/extensions/forms/DataContext/index.d.ts +0 -2
  316. package/es/extensions/forms/DataContext/index.js +0 -2
  317. package/es/extensions/forms/DataContext/index.js.map +1 -1
  318. package/es/extensions/forms/Field/ArraySelection.d.ts +2 -3
  319. package/es/extensions/forms/Field/ArraySelection.js +4 -4
  320. package/es/extensions/forms/Field/ArraySelection.js.map +1 -1
  321. package/es/extensions/forms/Field/CountryCode.d.ts +2 -3
  322. package/es/extensions/forms/Field/CountryCode.js +4 -5
  323. package/es/extensions/forms/Field/CountryCode.js.map +1 -1
  324. package/es/extensions/forms/Field/Currency.d.ts +2 -3
  325. package/es/extensions/forms/Field/Currency.js.map +1 -1
  326. package/es/extensions/forms/Field/Date.d.ts +2 -3
  327. package/es/extensions/forms/Field/Date.js +4 -4
  328. package/es/extensions/forms/Field/Date.js.map +1 -1
  329. package/es/extensions/forms/Field/Number.d.ts +2 -3
  330. package/es/extensions/forms/Field/Number.js +4 -4
  331. package/es/extensions/forms/Field/Number.js.map +1 -1
  332. package/es/extensions/forms/Field/Option.d.ts +2 -3
  333. package/es/extensions/forms/Field/Option.js.map +1 -1
  334. package/es/extensions/forms/Field/PhoneNumber.d.ts +2 -3
  335. package/es/extensions/forms/Field/PhoneNumber.js +4 -4
  336. package/es/extensions/forms/Field/PhoneNumber.js.map +1 -1
  337. package/es/extensions/forms/Field/PostalCodeAndCity.d.ts +2 -2
  338. package/es/extensions/forms/Field/PostalCodeAndCity.js +4 -4
  339. package/es/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  340. package/es/extensions/forms/Field/Selection.d.ts +2 -3
  341. package/es/extensions/forms/Field/Selection.js +6 -7
  342. package/es/extensions/forms/Field/Selection.js.map +1 -1
  343. package/es/extensions/forms/Field/String.d.ts +2 -3
  344. package/es/extensions/forms/Field/String.js +5 -7
  345. package/es/extensions/forms/Field/String.js.map +1 -1
  346. package/es/extensions/forms/Field/Toggle.d.ts +2 -3
  347. package/es/extensions/forms/Field/Toggle.js +5 -5
  348. package/es/extensions/forms/Field/Toggle.js.map +1 -1
  349. package/es/extensions/forms/Field/index.d.ts +0 -4
  350. package/es/extensions/forms/Field/index.js +0 -4
  351. package/es/extensions/forms/Field/index.js.map +1 -1
  352. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -3
  353. package/es/extensions/forms/FieldBlock/FieldBlock.js +68 -9
  354. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  355. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +8 -0
  356. package/es/extensions/forms/FieldBlock/FieldBlockContext.js +4 -0
  357. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -0
  358. package/es/extensions/forms/FieldBlock/index.d.ts +1 -0
  359. package/es/extensions/forms/FieldBlock/index.js +3 -1
  360. package/es/extensions/forms/FieldBlock/index.js.map +1 -1
  361. package/es/extensions/forms/Form/FormElement.d.ts +4 -0
  362. package/es/extensions/forms/Form/FormElement.js +31 -0
  363. package/es/extensions/forms/Form/FormElement.js.map +1 -0
  364. package/es/extensions/forms/Form/FormHandler.d.ts +6 -0
  365. package/es/extensions/forms/Form/FormHandler.js +33 -0
  366. package/es/extensions/forms/Form/FormHandler.js.map +1 -0
  367. package/es/extensions/forms/{DataContext → Form}/SubmitButton.d.ts +3 -4
  368. package/es/extensions/forms/Form/SubmitButton.js +25 -0
  369. package/es/extensions/forms/Form/SubmitButton.js.map +1 -0
  370. package/es/extensions/forms/Form/index.d.ts +9 -0
  371. package/es/extensions/forms/Form/index.js +10 -0
  372. package/es/extensions/forms/Form/index.js.map +1 -0
  373. package/es/extensions/forms/Iterate/Array.d.ts +17 -0
  374. package/es/extensions/forms/Iterate/Array.js +80 -0
  375. package/es/extensions/forms/Iterate/Array.js.map +1 -0
  376. package/es/extensions/forms/Iterate/ArrayPushButton.d.ts +10 -0
  377. package/es/extensions/forms/Iterate/ArrayPushButton.js +42 -0
  378. package/es/extensions/forms/Iterate/ArrayPushButton.js.map +1 -0
  379. package/es/extensions/forms/Iterate/ArrayRemoveElementButton.d.ts +8 -0
  380. package/es/extensions/forms/Iterate/ArrayRemoveElementButton.js +30 -0
  381. package/es/extensions/forms/Iterate/ArrayRemoveElementButton.js.map +1 -0
  382. package/es/extensions/forms/Iterate/IterateElementContext.d.ts +11 -0
  383. package/es/extensions/forms/Iterate/IterateElementContext.js +4 -0
  384. package/es/extensions/forms/Iterate/IterateElementContext.js.map +1 -0
  385. package/es/extensions/forms/Iterate/index.d.ts +11 -0
  386. package/es/extensions/forms/Iterate/index.js +12 -0
  387. package/es/extensions/forms/Iterate/index.js.map +1 -0
  388. package/es/extensions/forms/Layout/ButtonRow.d.ts +1 -1
  389. package/es/extensions/forms/Layout/ButtonRow.js +2 -2
  390. package/es/extensions/forms/Layout/ButtonRow.js.map +1 -1
  391. package/es/extensions/forms/Layout/Card.d.ts +1 -1
  392. package/es/extensions/forms/Layout/Card.js +4 -4
  393. package/es/extensions/forms/Layout/Card.js.map +1 -1
  394. package/es/extensions/forms/Layout/FlexContainer.d.ts +1 -1
  395. package/es/extensions/forms/Layout/FlexContainer.js +3 -3
  396. package/es/extensions/forms/Layout/FlexContainer.js.map +1 -1
  397. package/es/extensions/forms/Layout/FlexItem.d.ts +1 -1
  398. package/es/extensions/forms/Layout/FlexItem.js +2 -2
  399. package/es/extensions/forms/Layout/FlexItem.js.map +1 -1
  400. package/es/extensions/forms/Layout/MainHeading.d.ts +4 -2
  401. package/es/extensions/forms/Layout/MainHeading.js +10 -4
  402. package/es/extensions/forms/Layout/MainHeading.js.map +1 -1
  403. package/es/extensions/forms/Layout/Section.d.ts +1 -1
  404. package/es/extensions/forms/Layout/Section.js +2 -2
  405. package/es/extensions/forms/Layout/Section.js.map +1 -1
  406. package/es/extensions/forms/Layout/SubHeading.d.ts +4 -2
  407. package/es/extensions/forms/Layout/SubHeading.js +10 -4
  408. package/es/extensions/forms/Layout/SubHeading.js.map +1 -1
  409. package/es/extensions/forms/Layout/index.d.ts +0 -2
  410. package/es/extensions/forms/Layout/index.js +1 -3
  411. package/es/extensions/forms/Layout/index.js.map +1 -1
  412. package/es/extensions/forms/StepsLayout/Buttons.d.ts +1 -1
  413. package/es/extensions/forms/StepsLayout/Buttons.js +2 -2
  414. package/es/extensions/forms/StepsLayout/Buttons.js.map +1 -1
  415. package/es/extensions/forms/StepsLayout/NextButton.d.ts +1 -1
  416. package/es/extensions/forms/StepsLayout/NextButton.js.map +1 -1
  417. package/es/extensions/forms/StepsLayout/PreviousButton.d.ts +1 -1
  418. package/es/extensions/forms/StepsLayout/PreviousButton.js.map +1 -1
  419. package/es/extensions/forms/StepsLayout/Step.d.ts +1 -1
  420. package/es/extensions/forms/StepsLayout/Step.js +2 -2
  421. package/es/extensions/forms/StepsLayout/Step.js.map +1 -1
  422. package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +1 -1
  423. package/es/extensions/forms/StepsLayout/StepsLayout.js +2 -2
  424. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  425. package/es/extensions/forms/Value/Boolean.d.ts +2 -3
  426. package/es/extensions/forms/Value/Boolean.js +4 -4
  427. package/es/extensions/forms/Value/Boolean.js.map +1 -1
  428. package/es/extensions/forms/Value/Number.d.ts +2 -3
  429. package/es/extensions/forms/Value/Number.js +5 -4
  430. package/es/extensions/forms/Value/Number.js.map +1 -1
  431. package/es/extensions/forms/Value/String.d.ts +2 -3
  432. package/es/extensions/forms/Value/String.js +4 -4
  433. package/es/extensions/forms/Value/String.js.map +1 -1
  434. package/es/extensions/forms/Value/index.d.ts +0 -4
  435. package/es/extensions/forms/Value/index.js +0 -4
  436. package/es/extensions/forms/Value/index.js.map +1 -1
  437. package/es/extensions/forms/ValueBlock/ValueBlock.d.ts +2 -3
  438. package/es/extensions/forms/ValueBlock/ValueBlock.js +2 -2
  439. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  440. package/es/extensions/forms/hooks/index.d.ts +1 -0
  441. package/es/extensions/forms/hooks/index.js +1 -0
  442. package/es/extensions/forms/hooks/index.js.map +1 -0
  443. package/es/extensions/forms/hooks/useDataValue.d.ts +12 -0
  444. package/{extensions/forms/Field/hooks/useField.js → es/extensions/forms/hooks/useDataValue.js} +59 -25
  445. package/es/extensions/forms/hooks/useDataValue.js.map +1 -0
  446. package/es/extensions/forms/index.d.ts +4 -4
  447. package/es/extensions/forms/index.js +3 -2
  448. package/es/extensions/forms/index.js.map +1 -1
  449. package/es/extensions/forms/types.d.ts +95 -2
  450. package/es/extensions/forms/types.js +42 -0
  451. package/es/extensions/forms/types.js.map +1 -1
  452. package/es/extensions/forms/utils/index.d.ts +0 -1
  453. package/es/extensions/forms/utils/index.js +0 -1
  454. package/es/extensions/forms/utils/index.js.map +1 -1
  455. package/es/extensions/lib.d.ts +0 -2
  456. package/es/extensions/payment-card/style/dnb-payment-card.css +7 -7
  457. package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  458. package/es/extensions/payment-card/style/dnb-payment-card.scss +7 -7
  459. package/es/shared/Eufemia.d.ts +1 -1
  460. package/es/shared/Eufemia.js +2 -2
  461. package/es/shared/Eufemia.js.map +1 -1
  462. package/es/shared/useMedia.js +30 -21
  463. package/es/shared/useMedia.js.map +1 -1
  464. package/es/style/dnb-ui-components.css +119 -2
  465. package/es/style/dnb-ui-components.min.css +1 -1
  466. package/es/style/dnb-ui-elements.css +17 -11
  467. package/es/style/dnb-ui-elements.min.css +1 -1
  468. package/es/style/dnb-ui-extensions.css +7 -7
  469. package/es/style/dnb-ui-extensions.min.css +1 -1
  470. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -11
  471. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  472. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +131 -136
  473. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  474. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -7
  475. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  476. package/es/style/themes/theme-sbanken/customisations.scss +4 -0
  477. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +40 -21
  478. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  479. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +155 -152
  480. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +11 -3
  481. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +3 -3
  482. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +38 -21
  483. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  484. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +7 -7
  485. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  486. package/es/style/themes/theme-ui/ui-theme-basis.css +19 -11
  487. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  488. package/es/style/themes/theme-ui/ui-theme-basis.scss +4 -0
  489. package/es/style/themes/theme-ui/ui-theme-components.css +131 -136
  490. package/es/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  491. package/es/style/themes/theme-ui/ui-theme-elements.css +17 -11
  492. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  493. package/es/style/themes/theme-ui/ui-theme-extensions.css +7 -7
  494. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  495. package/es/style/themes/theme-ui/ui-theme-tags.css +17 -11
  496. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  497. package/esm/dnb-ui-basis.min.mjs +1 -1
  498. package/esm/dnb-ui-components.min.mjs +1 -1
  499. package/esm/dnb-ui-elements.min.mjs +1 -1
  500. package/esm/dnb-ui-extensions.min.mjs +3 -3
  501. package/esm/dnb-ui-lib.min.mjs +1 -1
  502. package/extensions/forms/DataContext/At.d.ts +1 -1
  503. package/extensions/forms/DataContext/At.js.map +1 -1
  504. package/extensions/forms/DataContext/Context.d.ts +1 -0
  505. package/extensions/forms/DataContext/Context.js +2 -1
  506. package/extensions/forms/DataContext/Context.js.map +1 -1
  507. package/extensions/forms/DataContext/Provider.js +7 -3
  508. package/extensions/forms/DataContext/Provider.js.map +1 -1
  509. package/extensions/forms/DataContext/index.d.ts +0 -2
  510. package/extensions/forms/DataContext/index.js +0 -2
  511. package/extensions/forms/DataContext/index.js.map +1 -1
  512. package/extensions/forms/Field/ArraySelection.d.ts +2 -3
  513. package/extensions/forms/Field/ArraySelection.js +4 -4
  514. package/extensions/forms/Field/ArraySelection.js.map +1 -1
  515. package/extensions/forms/Field/CountryCode.d.ts +2 -3
  516. package/extensions/forms/Field/CountryCode.js +4 -5
  517. package/extensions/forms/Field/CountryCode.js.map +1 -1
  518. package/extensions/forms/Field/Currency.d.ts +2 -3
  519. package/extensions/forms/Field/Currency.js.map +1 -1
  520. package/extensions/forms/Field/Date.d.ts +2 -3
  521. package/extensions/forms/Field/Date.js +4 -4
  522. package/extensions/forms/Field/Date.js.map +1 -1
  523. package/extensions/forms/Field/Number.d.ts +2 -3
  524. package/extensions/forms/Field/Number.js +4 -4
  525. package/extensions/forms/Field/Number.js.map +1 -1
  526. package/extensions/forms/Field/Option.d.ts +2 -3
  527. package/extensions/forms/Field/Option.js.map +1 -1
  528. package/extensions/forms/Field/PhoneNumber.d.ts +2 -3
  529. package/extensions/forms/Field/PhoneNumber.js +4 -4
  530. package/extensions/forms/Field/PhoneNumber.js.map +1 -1
  531. package/extensions/forms/Field/PostalCodeAndCity.d.ts +2 -2
  532. package/extensions/forms/Field/PostalCodeAndCity.js +4 -4
  533. package/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  534. package/extensions/forms/Field/Selection.d.ts +2 -3
  535. package/extensions/forms/Field/Selection.js +6 -7
  536. package/extensions/forms/Field/Selection.js.map +1 -1
  537. package/extensions/forms/Field/String.d.ts +2 -3
  538. package/extensions/forms/Field/String.js +5 -7
  539. package/extensions/forms/Field/String.js.map +1 -1
  540. package/extensions/forms/Field/Toggle.d.ts +2 -3
  541. package/extensions/forms/Field/Toggle.js +5 -5
  542. package/extensions/forms/Field/Toggle.js.map +1 -1
  543. package/extensions/forms/Field/index.d.ts +0 -4
  544. package/extensions/forms/Field/index.js +0 -4
  545. package/extensions/forms/Field/index.js.map +1 -1
  546. package/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -3
  547. package/extensions/forms/FieldBlock/FieldBlock.js +74 -9
  548. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  549. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +8 -0
  550. package/extensions/forms/FieldBlock/FieldBlockContext.js +4 -0
  551. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -0
  552. package/extensions/forms/FieldBlock/index.d.ts +1 -0
  553. package/extensions/forms/FieldBlock/index.js +3 -1
  554. package/extensions/forms/FieldBlock/index.js.map +1 -1
  555. package/extensions/forms/Form/FormElement.d.ts +4 -0
  556. package/extensions/forms/Form/FormElement.js +31 -0
  557. package/extensions/forms/Form/FormElement.js.map +1 -0
  558. package/extensions/forms/Form/FormHandler.d.ts +6 -0
  559. package/extensions/forms/Form/FormHandler.js +33 -0
  560. package/extensions/forms/Form/FormHandler.js.map +1 -0
  561. package/extensions/forms/{DataContext → Form}/SubmitButton.d.ts +3 -4
  562. package/extensions/forms/Form/SubmitButton.js +25 -0
  563. package/extensions/forms/Form/SubmitButton.js.map +1 -0
  564. package/extensions/forms/Form/index.d.ts +9 -0
  565. package/extensions/forms/Form/index.js +10 -0
  566. package/extensions/forms/Form/index.js.map +1 -0
  567. package/extensions/forms/Iterate/Array.d.ts +17 -0
  568. package/extensions/forms/Iterate/Array.js +81 -0
  569. package/extensions/forms/Iterate/Array.js.map +1 -0
  570. package/extensions/forms/Iterate/ArrayPushButton.d.ts +10 -0
  571. package/extensions/forms/Iterate/ArrayPushButton.js +42 -0
  572. package/extensions/forms/Iterate/ArrayPushButton.js.map +1 -0
  573. package/extensions/forms/Iterate/ArrayRemoveElementButton.d.ts +8 -0
  574. package/extensions/forms/Iterate/ArrayRemoveElementButton.js +30 -0
  575. package/extensions/forms/Iterate/ArrayRemoveElementButton.js.map +1 -0
  576. package/extensions/forms/Iterate/IterateElementContext.d.ts +11 -0
  577. package/extensions/forms/Iterate/IterateElementContext.js +4 -0
  578. package/extensions/forms/Iterate/IterateElementContext.js.map +1 -0
  579. package/extensions/forms/Iterate/index.d.ts +11 -0
  580. package/extensions/forms/Iterate/index.js +12 -0
  581. package/extensions/forms/Iterate/index.js.map +1 -0
  582. package/extensions/forms/Layout/ButtonRow.d.ts +1 -1
  583. package/extensions/forms/Layout/ButtonRow.js +2 -2
  584. package/extensions/forms/Layout/ButtonRow.js.map +1 -1
  585. package/extensions/forms/Layout/Card.d.ts +1 -1
  586. package/extensions/forms/Layout/Card.js +4 -4
  587. package/extensions/forms/Layout/Card.js.map +1 -1
  588. package/extensions/forms/Layout/FlexContainer.d.ts +1 -1
  589. package/extensions/forms/Layout/FlexContainer.js +3 -3
  590. package/extensions/forms/Layout/FlexContainer.js.map +1 -1
  591. package/extensions/forms/Layout/FlexItem.d.ts +1 -1
  592. package/extensions/forms/Layout/FlexItem.js +2 -2
  593. package/extensions/forms/Layout/FlexItem.js.map +1 -1
  594. package/extensions/forms/Layout/MainHeading.d.ts +4 -2
  595. package/extensions/forms/Layout/MainHeading.js +10 -4
  596. package/extensions/forms/Layout/MainHeading.js.map +1 -1
  597. package/extensions/forms/Layout/Section.d.ts +1 -1
  598. package/extensions/forms/Layout/Section.js +2 -2
  599. package/extensions/forms/Layout/Section.js.map +1 -1
  600. package/extensions/forms/Layout/SubHeading.d.ts +4 -2
  601. package/extensions/forms/Layout/SubHeading.js +10 -4
  602. package/extensions/forms/Layout/SubHeading.js.map +1 -1
  603. package/extensions/forms/Layout/index.d.ts +0 -2
  604. package/extensions/forms/Layout/index.js +1 -3
  605. package/extensions/forms/Layout/index.js.map +1 -1
  606. package/extensions/forms/StepsLayout/Buttons.d.ts +1 -1
  607. package/extensions/forms/StepsLayout/Buttons.js +2 -2
  608. package/extensions/forms/StepsLayout/Buttons.js.map +1 -1
  609. package/extensions/forms/StepsLayout/NextButton.d.ts +1 -1
  610. package/extensions/forms/StepsLayout/NextButton.js.map +1 -1
  611. package/extensions/forms/StepsLayout/PreviousButton.d.ts +1 -1
  612. package/extensions/forms/StepsLayout/PreviousButton.js.map +1 -1
  613. package/extensions/forms/StepsLayout/Step.d.ts +1 -1
  614. package/extensions/forms/StepsLayout/Step.js +2 -2
  615. package/extensions/forms/StepsLayout/Step.js.map +1 -1
  616. package/extensions/forms/StepsLayout/StepsLayout.d.ts +1 -1
  617. package/extensions/forms/StepsLayout/StepsLayout.js +2 -2
  618. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  619. package/extensions/forms/Value/Boolean.d.ts +2 -3
  620. package/extensions/forms/Value/Boolean.js +4 -4
  621. package/extensions/forms/Value/Boolean.js.map +1 -1
  622. package/extensions/forms/Value/Number.d.ts +2 -3
  623. package/extensions/forms/Value/Number.js +5 -4
  624. package/extensions/forms/Value/Number.js.map +1 -1
  625. package/extensions/forms/Value/String.d.ts +2 -3
  626. package/extensions/forms/Value/String.js +4 -4
  627. package/extensions/forms/Value/String.js.map +1 -1
  628. package/extensions/forms/Value/index.d.ts +0 -4
  629. package/extensions/forms/Value/index.js +0 -4
  630. package/extensions/forms/Value/index.js.map +1 -1
  631. package/extensions/forms/ValueBlock/ValueBlock.d.ts +2 -3
  632. package/extensions/forms/ValueBlock/ValueBlock.js +2 -2
  633. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  634. package/extensions/forms/hooks/index.d.ts +1 -0
  635. package/extensions/forms/hooks/index.js +1 -0
  636. package/extensions/forms/hooks/index.js.map +1 -0
  637. package/extensions/forms/hooks/useDataValue.d.ts +12 -0
  638. package/{es/extensions/forms/Field/hooks/useField.js → extensions/forms/hooks/useDataValue.js} +59 -25
  639. package/extensions/forms/hooks/useDataValue.js.map +1 -0
  640. package/extensions/forms/index.d.ts +4 -4
  641. package/extensions/forms/index.js +3 -2
  642. package/extensions/forms/index.js.map +1 -1
  643. package/extensions/forms/types.d.ts +95 -2
  644. package/extensions/forms/types.js +60 -0
  645. package/extensions/forms/types.js.map +1 -1
  646. package/extensions/forms/utils/index.d.ts +0 -1
  647. package/extensions/forms/utils/index.js +0 -1
  648. package/extensions/forms/utils/index.js.map +1 -1
  649. package/extensions/lib.d.ts +0 -2
  650. package/extensions/payment-card/style/dnb-payment-card.css +7 -7
  651. package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  652. package/extensions/payment-card/style/dnb-payment-card.scss +7 -7
  653. package/package.json +2 -1
  654. package/shared/Eufemia.d.ts +1 -1
  655. package/shared/Eufemia.js +2 -2
  656. package/shared/Eufemia.js.map +1 -1
  657. package/shared/useMedia.js +33 -23
  658. package/shared/useMedia.js.map +1 -1
  659. package/style/dnb-ui-components.css +119 -2
  660. package/style/dnb-ui-components.min.css +1 -1
  661. package/style/dnb-ui-elements.css +17 -11
  662. package/style/dnb-ui-elements.min.css +1 -1
  663. package/style/dnb-ui-extensions.css +7 -7
  664. package/style/dnb-ui-extensions.min.css +1 -1
  665. package/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -11
  666. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  667. package/style/themes/theme-eiendom/eiendom-theme-components.css +131 -136
  668. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  669. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -7
  670. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  671. package/style/themes/theme-sbanken/customisations.scss +4 -0
  672. package/style/themes/theme-sbanken/sbanken-theme-basis.css +40 -21
  673. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  674. package/style/themes/theme-sbanken/sbanken-theme-components.css +155 -152
  675. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +11 -3
  676. package/style/themes/theme-sbanken/sbanken-theme-components.scss +3 -3
  677. package/style/themes/theme-sbanken/sbanken-theme-elements.css +38 -21
  678. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  679. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +7 -7
  680. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  681. package/style/themes/theme-ui/ui-theme-basis.css +19 -11
  682. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  683. package/style/themes/theme-ui/ui-theme-basis.scss +4 -0
  684. package/style/themes/theme-ui/ui-theme-components.css +131 -136
  685. package/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  686. package/style/themes/theme-ui/ui-theme-elements.css +17 -11
  687. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  688. package/style/themes/theme-ui/ui-theme-extensions.css +7 -7
  689. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  690. package/style/themes/theme-ui/ui-theme-tags.css +17 -11
  691. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  692. package/umd/dnb-ui-basis.min.js +1 -1
  693. package/umd/dnb-ui-components.min.js +1 -1
  694. package/umd/dnb-ui-elements.min.js +1 -1
  695. package/umd/dnb-ui-extensions.min.js +3 -3
  696. package/umd/dnb-ui-lib.min.js +1 -1
  697. package/cjs/extensions/forms/DataContext/SubmitButton.js.map +0 -1
  698. package/cjs/extensions/forms/Field/FirstName.d.ts +0 -7
  699. package/cjs/extensions/forms/Field/FirstName.js +0 -31
  700. package/cjs/extensions/forms/Field/FirstName.js.map +0 -1
  701. package/cjs/extensions/forms/Field/LastName.d.ts +0 -7
  702. package/cjs/extensions/forms/Field/LastName.js +0 -31
  703. package/cjs/extensions/forms/Field/LastName.js.map +0 -1
  704. package/cjs/extensions/forms/Field/hooks/index.d.ts +0 -1
  705. package/cjs/extensions/forms/Field/hooks/index.js.map +0 -1
  706. package/cjs/extensions/forms/Field/hooks/useField.d.ts +0 -9
  707. package/cjs/extensions/forms/Field/hooks/useField.js.map +0 -1
  708. package/cjs/extensions/forms/FieldGroup/FieldGroup.d.ts +0 -17
  709. package/cjs/extensions/forms/FieldGroup/FieldGroup.js +0 -95
  710. package/cjs/extensions/forms/FieldGroup/FieldGroup.js.map +0 -1
  711. package/cjs/extensions/forms/FieldGroup/index.d.ts +0 -2
  712. package/cjs/extensions/forms/FieldGroup/index.js +0 -27
  713. package/cjs/extensions/forms/FieldGroup/index.js.map +0 -1
  714. package/cjs/extensions/forms/Layout/InfoCardSection.d.ts +0 -8
  715. package/cjs/extensions/forms/Layout/InfoCardSection.js +0 -25
  716. package/cjs/extensions/forms/Layout/InfoCardSection.js.map +0 -1
  717. package/cjs/extensions/forms/Value/FirstName.d.ts +0 -7
  718. package/cjs/extensions/forms/Value/FirstName.js +0 -28
  719. package/cjs/extensions/forms/Value/FirstName.js.map +0 -1
  720. package/cjs/extensions/forms/Value/LastName.d.ts +0 -7
  721. package/cjs/extensions/forms/Value/LastName.js +0 -28
  722. package/cjs/extensions/forms/Value/LastName.js.map +0 -1
  723. package/cjs/extensions/forms/Value/hooks/index.d.ts +0 -1
  724. package/cjs/extensions/forms/Value/hooks/index.js +0 -14
  725. package/cjs/extensions/forms/Value/hooks/index.js.map +0 -1
  726. package/cjs/extensions/forms/Value/hooks/useValue.d.ts +0 -2
  727. package/cjs/extensions/forms/Value/hooks/useValue.js +0 -31
  728. package/cjs/extensions/forms/Value/hooks/useValue.js.map +0 -1
  729. package/cjs/extensions/forms/component-types.d.ts +0 -4
  730. package/cjs/extensions/forms/component-types.js +0 -1
  731. package/cjs/extensions/forms/component-types.js.map +0 -1
  732. package/cjs/extensions/forms/field-types.d.ts +0 -58
  733. package/cjs/extensions/forms/field-types.js +0 -1
  734. package/cjs/extensions/forms/field-types.js.map +0 -1
  735. package/cjs/extensions/forms/utils/components.d.ts +0 -3
  736. package/cjs/extensions/forms/utils/components.js +0 -32
  737. package/cjs/extensions/forms/utils/components.js.map +0 -1
  738. package/cjs/extensions/forms/value-types.d.ts +0 -15
  739. package/cjs/extensions/forms/value-types.js +0 -1
  740. package/cjs/extensions/forms/value-types.js.map +0 -1
  741. package/es/extensions/forms/DataContext/SubmitButton.js +0 -20
  742. package/es/extensions/forms/DataContext/SubmitButton.js.map +0 -1
  743. package/es/extensions/forms/Field/FirstName.d.ts +0 -7
  744. package/es/extensions/forms/Field/FirstName.js +0 -19
  745. package/es/extensions/forms/Field/FirstName.js.map +0 -1
  746. package/es/extensions/forms/Field/LastName.d.ts +0 -7
  747. package/es/extensions/forms/Field/LastName.js +0 -19
  748. package/es/extensions/forms/Field/LastName.js.map +0 -1
  749. package/es/extensions/forms/Field/hooks/index.d.ts +0 -1
  750. package/es/extensions/forms/Field/hooks/index.js +0 -1
  751. package/es/extensions/forms/Field/hooks/index.js.map +0 -1
  752. package/es/extensions/forms/Field/hooks/useField.d.ts +0 -9
  753. package/es/extensions/forms/Field/hooks/useField.js.map +0 -1
  754. package/es/extensions/forms/FieldGroup/FieldGroup.d.ts +0 -17
  755. package/es/extensions/forms/FieldGroup/FieldGroup.js +0 -77
  756. package/es/extensions/forms/FieldGroup/FieldGroup.js.map +0 -1
  757. package/es/extensions/forms/FieldGroup/index.d.ts +0 -2
  758. package/es/extensions/forms/FieldGroup/index.js +0 -3
  759. package/es/extensions/forms/FieldGroup/index.js.map +0 -1
  760. package/es/extensions/forms/Layout/InfoCardSection.d.ts +0 -8
  761. package/es/extensions/forms/Layout/InfoCardSection.js +0 -17
  762. package/es/extensions/forms/Layout/InfoCardSection.js.map +0 -1
  763. package/es/extensions/forms/Value/FirstName.d.ts +0 -7
  764. package/es/extensions/forms/Value/FirstName.js +0 -16
  765. package/es/extensions/forms/Value/FirstName.js.map +0 -1
  766. package/es/extensions/forms/Value/LastName.d.ts +0 -7
  767. package/es/extensions/forms/Value/LastName.js +0 -16
  768. package/es/extensions/forms/Value/LastName.js.map +0 -1
  769. package/es/extensions/forms/Value/hooks/index.d.ts +0 -1
  770. package/es/extensions/forms/Value/hooks/index.js +0 -1
  771. package/es/extensions/forms/Value/hooks/index.js.map +0 -1
  772. package/es/extensions/forms/Value/hooks/useValue.d.ts +0 -2
  773. package/es/extensions/forms/Value/hooks/useValue.js +0 -22
  774. package/es/extensions/forms/Value/hooks/useValue.js.map +0 -1
  775. package/es/extensions/forms/component-types.d.ts +0 -4
  776. package/es/extensions/forms/component-types.js +0 -1
  777. package/es/extensions/forms/component-types.js.map +0 -1
  778. package/es/extensions/forms/field-types.d.ts +0 -58
  779. package/es/extensions/forms/field-types.js +0 -1
  780. package/es/extensions/forms/field-types.js.map +0 -1
  781. package/es/extensions/forms/utils/components.d.ts +0 -3
  782. package/es/extensions/forms/utils/components.js +0 -23
  783. package/es/extensions/forms/utils/components.js.map +0 -1
  784. package/es/extensions/forms/value-types.d.ts +0 -15
  785. package/es/extensions/forms/value-types.js +0 -1
  786. package/es/extensions/forms/value-types.js.map +0 -1
  787. package/extensions/forms/DataContext/SubmitButton.js +0 -20
  788. package/extensions/forms/DataContext/SubmitButton.js.map +0 -1
  789. package/extensions/forms/Field/FirstName.d.ts +0 -7
  790. package/extensions/forms/Field/FirstName.js +0 -19
  791. package/extensions/forms/Field/FirstName.js.map +0 -1
  792. package/extensions/forms/Field/LastName.d.ts +0 -7
  793. package/extensions/forms/Field/LastName.js +0 -19
  794. package/extensions/forms/Field/LastName.js.map +0 -1
  795. package/extensions/forms/Field/hooks/index.d.ts +0 -1
  796. package/extensions/forms/Field/hooks/index.js +0 -1
  797. package/extensions/forms/Field/hooks/index.js.map +0 -1
  798. package/extensions/forms/Field/hooks/useField.d.ts +0 -9
  799. package/extensions/forms/Field/hooks/useField.js.map +0 -1
  800. package/extensions/forms/FieldGroup/FieldGroup.d.ts +0 -17
  801. package/extensions/forms/FieldGroup/FieldGroup.js +0 -83
  802. package/extensions/forms/FieldGroup/FieldGroup.js.map +0 -1
  803. package/extensions/forms/FieldGroup/index.d.ts +0 -2
  804. package/extensions/forms/FieldGroup/index.js +0 -3
  805. package/extensions/forms/FieldGroup/index.js.map +0 -1
  806. package/extensions/forms/Layout/InfoCardSection.d.ts +0 -8
  807. package/extensions/forms/Layout/InfoCardSection.js +0 -17
  808. package/extensions/forms/Layout/InfoCardSection.js.map +0 -1
  809. package/extensions/forms/Value/FirstName.d.ts +0 -7
  810. package/extensions/forms/Value/FirstName.js +0 -16
  811. package/extensions/forms/Value/FirstName.js.map +0 -1
  812. package/extensions/forms/Value/LastName.d.ts +0 -7
  813. package/extensions/forms/Value/LastName.js +0 -16
  814. package/extensions/forms/Value/LastName.js.map +0 -1
  815. package/extensions/forms/Value/hooks/index.d.ts +0 -1
  816. package/extensions/forms/Value/hooks/index.js +0 -1
  817. package/extensions/forms/Value/hooks/index.js.map +0 -1
  818. package/extensions/forms/Value/hooks/useValue.d.ts +0 -2
  819. package/extensions/forms/Value/hooks/useValue.js +0 -22
  820. package/extensions/forms/Value/hooks/useValue.js.map +0 -1
  821. package/extensions/forms/component-types.d.ts +0 -4
  822. package/extensions/forms/component-types.js +0 -1
  823. package/extensions/forms/component-types.js.map +0 -1
  824. package/extensions/forms/field-types.d.ts +0 -58
  825. package/extensions/forms/field-types.js +0 -1
  826. package/extensions/forms/field-types.js.map +0 -1
  827. package/extensions/forms/utils/components.d.ts +0 -3
  828. package/extensions/forms/utils/components.js +0 -23
  829. package/extensions/forms/utils/components.js.map +0 -1
  830. package/extensions/forms/value-types.d.ts +0 -15
  831. package/extensions/forms/value-types.js +0 -1
  832. package/extensions/forms/value-types.js.map +0 -1
@@ -1,6 +1,5 @@
1
1
  import { InputMaskedProps } from '../../../components/InputMasked';
2
- import type { ComponentProps } from '../component-types';
3
- import type { FieldProps, FieldHelpProps } from '../field-types';
2
+ import { FieldProps, FieldHelpProps } from '../types';
4
3
  interface ErrorMessages {
5
4
  required?: string;
6
5
  schema?: string;
@@ -10,7 +9,7 @@ interface ErrorMessages {
10
9
  exclusiveMaximum?: string;
11
10
  multipleOf?: string;
12
11
  }
13
- export type Props = ComponentProps & FieldHelpProps & FieldProps<number, undefined, ErrorMessages> & {
12
+ export type Props = FieldHelpProps & FieldProps<number, undefined, ErrorMessages> & {
14
13
  inputClassName?: string;
15
14
  currency?: InputMaskedProps['as_currency'];
16
15
  percent?: InputMaskedProps['as_percent'];
@@ -7,9 +7,9 @@ exports.default = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _components = require("../../../components");
9
9
  var _classnames = _interopRequireDefault(require("classnames"));
10
- var _utils = require("../utils");
11
10
  var _FieldBlock = _interopRequireDefault(require("../FieldBlock"));
12
- var _hooks = require("./hooks");
11
+ var _hooks = require("../hooks");
12
+ var _types = require("../types");
13
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -102,7 +102,7 @@ function NumberComponent(props) {
102
102
  handleFocus,
103
103
  handleBlur,
104
104
  handleChange
105
- } = (0, _hooks.useField)(preparedProps);
105
+ } = (0, _hooks.useDataValue)(preparedProps);
106
106
  return _react.default.createElement(_FieldBlock.default, _extends({
107
107
  className: (0, _classnames.default)('dnb-forms-field-number', className),
108
108
  forId: id,
@@ -114,7 +114,7 @@ function NumberComponent(props) {
114
114
  warning: warning,
115
115
  error: error,
116
116
  contentsWidth: width !== false ? width : undefined
117
- }, (0, _utils.forwardSpaceProps)(props)), _react.default.createElement(_components.InputMasked, _extends({
117
+ }, (0, _types.pickSpacingProps)(props)), _react.default.createElement(_components.InputMasked, _extends({
118
118
  id: id,
119
119
  className: (0, _classnames.default)('dnb-forms-field-number__input', inputClassName),
120
120
  placeholder: placeholder,
@@ -1 +1 @@
1
- {"version":3,"file":"Number.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_utils","_FieldBlock","_hooks","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NumberComponent","props","currency","percent","mask","thousandSeparator","decimalSymbol","decimalLimit","prefix","suffix","rightAligned","maskProps","useMemo","as_currency","as_percent","as_number","number_mask","includeThousandsSeparator","thousandsSeparatorSymbol","preparedProps","schema","type","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","toInput","external","fromInput","_ref","numberValue","emptyValue","width","id","className","inputClassName","layout","placeholder","label","labelDescription","labelSecondary","disabled","info","warning","error","help","handleFocus","handleBlur","handleChange","useField","createElement","classnames","forId","contentsWidth","forwardSpaceProps","InputMasked","right","on_focus","on_blur","on_change","stretch","HelpButton","title","contents","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/Number.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { InputMasked, HelpButton } from '../../../components'\nimport { InputMaskedProps } from '../../../components/InputMasked'\nimport classnames from 'classnames'\nimport { forwardSpaceProps } from '../utils'\nimport FieldBlock from '../FieldBlock'\nimport { useField } from './hooks'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps, FieldHelpProps } from '../field-types'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n minimum?: string\n maximum?: string\n exclusiveMinimum?: string\n exclusiveMaximum?: string\n multipleOf?: string\n}\n\nexport type Props = ComponentProps &\n FieldHelpProps &\n FieldProps<number, undefined, ErrorMessages> & {\n inputClassName?: string\n currency?: InputMaskedProps['as_currency']\n percent?: InputMaskedProps['as_percent']\n mask?: InputMaskedProps['mask']\n // Formatting\n thousandSeparator?: string | true\n decimalSymbol?: string\n decimalLimit?: number\n prefix?: string\n suffix?: string\n // Validation\n minimum?: number // aka greater than or equal to\n maximum?: number // aka less than or equal to\n exclusiveMinimum?: number // aka greater than\n exclusiveMaximum?: number // aka less than\n multipleOf?: number\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n rightAligned?: boolean\n }\n\nfunction NumberComponent(props: Props) {\n const {\n currency,\n percent,\n mask,\n thousandSeparator,\n decimalSymbol = ',',\n decimalLimit = 12,\n prefix,\n suffix,\n rightAligned,\n } = props\n\n const maskProps: Partial<InputMaskedProps> = useMemo(() => {\n if (currency) {\n return {\n as_currency: currency,\n }\n }\n if (percent) {\n return {\n as_percent: percent,\n }\n }\n // Custom mask based on props\n return {\n as_number: true,\n mask,\n number_mask: {\n decimalLimit,\n decimalSymbol,\n includeThousandsSeparator: thousandSeparator !== undefined,\n thousandsSeparatorSymbol:\n thousandSeparator === true ? ' ' : thousandSeparator,\n prefix,\n suffix,\n },\n }\n }, [\n currency,\n percent,\n mask,\n decimalLimit,\n decimalSymbol,\n thousandSeparator,\n prefix,\n suffix,\n ])\n\n const preparedProps: Props = {\n ...props,\n schema: props.schema ?? {\n type: 'number',\n minimum: props.minimum,\n maximum: props.maximum,\n exclusiveMinimum: props.exclusiveMinimum,\n exclusiveMaximum: props.exclusiveMaximum,\n multipleOf: props.multipleOf,\n },\n toInput: (external: number | undefined) => {\n if (external === undefined) {\n return ''\n }\n return external\n },\n fromInput: ({\n value,\n numberValue,\n }: {\n value: string\n numberValue: number\n }) => {\n if (value === '') {\n return emptyValue\n }\n return numberValue\n },\n width: props.width ?? 'medium',\n }\n\n const {\n id,\n className,\n inputClassName,\n layout,\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n value,\n disabled,\n info,\n warning,\n error,\n help,\n emptyValue,\n width,\n handleFocus,\n handleBlur,\n handleChange,\n } = useField(preparedProps)\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-number', className)}\n forId={id}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n labelSecondary={labelSecondary}\n info={info}\n warning={warning}\n error={error}\n contentsWidth={width !== false ? width : undefined}\n {...forwardSpaceProps(props)}\n >\n <InputMasked\n id={id}\n className={classnames(\n 'dnb-forms-field-number__input',\n inputClassName\n )}\n placeholder={placeholder}\n value={value}\n {...maskProps}\n right={rightAligned}\n on_focus={handleFocus}\n on_blur={handleBlur}\n on_change={handleChange}\n disabled={disabled}\n stretch={width !== undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n />\n </FieldBlock>\n )\n}\n\nNumberComponent._supportsEufemiaSpacingProps = true\nexport default NumberComponent\n"],"mappings":"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"}
1
+ {"version":3,"file":"Number.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_FieldBlock","_hooks","_types","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NumberComponent","props","currency","percent","mask","thousandSeparator","decimalSymbol","decimalLimit","prefix","suffix","rightAligned","maskProps","useMemo","as_currency","as_percent","as_number","number_mask","includeThousandsSeparator","thousandsSeparatorSymbol","preparedProps","schema","type","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","toInput","external","fromInput","_ref","numberValue","emptyValue","width","id","className","inputClassName","layout","placeholder","label","labelDescription","labelSecondary","disabled","info","warning","error","help","handleFocus","handleBlur","handleChange","useDataValue","createElement","classnames","forId","contentsWidth","pickSpacingProps","InputMasked","right","on_focus","on_blur","on_change","stretch","HelpButton","title","contents","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/Number.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { InputMasked, HelpButton } from '../../../components'\nimport { InputMaskedProps } from '../../../components/InputMasked'\nimport classnames from 'classnames'\nimport FieldBlock from '../FieldBlock'\nimport { useDataValue } from '../hooks'\nimport { FieldProps, FieldHelpProps, pickSpacingProps } from '../types'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n minimum?: string\n maximum?: string\n exclusiveMinimum?: string\n exclusiveMaximum?: string\n multipleOf?: string\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<number, undefined, ErrorMessages> & {\n inputClassName?: string\n currency?: InputMaskedProps['as_currency']\n percent?: InputMaskedProps['as_percent']\n mask?: InputMaskedProps['mask']\n // Formatting\n thousandSeparator?: string | true\n decimalSymbol?: string\n decimalLimit?: number\n prefix?: string\n suffix?: string\n // Validation\n minimum?: number // aka greater than or equal to\n maximum?: number // aka less than or equal to\n exclusiveMinimum?: number // aka greater than\n exclusiveMaximum?: number // aka less than\n multipleOf?: number\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n rightAligned?: boolean\n }\n\nfunction NumberComponent(props: Props) {\n const {\n currency,\n percent,\n mask,\n thousandSeparator,\n decimalSymbol = ',',\n decimalLimit = 12,\n prefix,\n suffix,\n rightAligned,\n } = props\n\n const maskProps: Partial<InputMaskedProps> = useMemo(() => {\n if (currency) {\n return {\n as_currency: currency,\n }\n }\n if (percent) {\n return {\n as_percent: percent,\n }\n }\n // Custom mask based on props\n return {\n as_number: true,\n mask,\n number_mask: {\n decimalLimit,\n decimalSymbol,\n includeThousandsSeparator: thousandSeparator !== undefined,\n thousandsSeparatorSymbol:\n thousandSeparator === true ? ' ' : thousandSeparator,\n prefix,\n suffix,\n },\n }\n }, [\n currency,\n percent,\n mask,\n decimalLimit,\n decimalSymbol,\n thousandSeparator,\n prefix,\n suffix,\n ])\n\n const preparedProps: Props = {\n ...props,\n schema: props.schema ?? {\n type: 'number',\n minimum: props.minimum,\n maximum: props.maximum,\n exclusiveMinimum: props.exclusiveMinimum,\n exclusiveMaximum: props.exclusiveMaximum,\n multipleOf: props.multipleOf,\n },\n toInput: (external: number | undefined) => {\n if (external === undefined) {\n return ''\n }\n return external\n },\n fromInput: ({\n value,\n numberValue,\n }: {\n value: string\n numberValue: number\n }) => {\n if (value === '') {\n return emptyValue\n }\n return numberValue\n },\n width: props.width ?? 'medium',\n }\n\n const {\n id,\n className,\n inputClassName,\n layout,\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n value,\n disabled,\n info,\n warning,\n error,\n help,\n emptyValue,\n width,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-number', className)}\n forId={id}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n labelSecondary={labelSecondary}\n info={info}\n warning={warning}\n error={error}\n contentsWidth={width !== false ? width : undefined}\n {...pickSpacingProps(props)}\n >\n <InputMasked\n id={id}\n className={classnames(\n 'dnb-forms-field-number__input',\n inputClassName\n )}\n placeholder={placeholder}\n value={value}\n {...maskProps}\n right={rightAligned}\n on_focus={handleFocus}\n on_blur={handleBlur}\n on_change={handleChange}\n disabled={disabled}\n stretch={width !== undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n />\n </FieldBlock>\n )\n}\n\nNumberComponent._supportsEufemiaSpacingProps = true\nexport default NumberComponent\n"],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
- import type { ComponentProps } from '../component-types';
3
- import type { FieldProps } from '../field-types';
4
- export type Props = ComponentProps & FieldProps<number | string> & {
2
+ import type { FieldProps } from '../types';
3
+ export type Props = FieldProps<number | string> & {
5
4
  title?: string;
6
5
  text?: string;
7
6
  children?: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"Option.js","names":["_react","_interopRequireDefault","require","_classnames","obj","__esModule","default","Option","_ref","className","title","text","children","createElement","classnames","role"],"sources":["../../../../../src/extensions/forms/Field/Option.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps } from '../field-types'\n\nexport type Props = ComponentProps &\n FieldProps<number | string> & {\n title?: string\n text?: string\n children?: React.ReactNode\n }\n\nexport default function Option({\n className,\n title,\n text,\n children,\n}: Props) {\n return (\n <span\n className={classnames('dnb-forms-field-option', className)}\n // eslint-disable-next-line jsx-a11y/role-has-required-aria-props\n role=\"option\"\n >\n {children ?? title}\n {text}\n </span>\n )\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAAmC,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAWpB,SAASG,MAAMA,CAAAC,IAAA,EAKpB;EAAA,IALqB;IAC7BC,SAAS;IACTC,KAAK;IACLC,IAAI;IACJC;EACK,CAAC,GAAAJ,IAAA;EACN,OACER,MAAA,CAAAM,OAAA,CAAAO,aAAA;IACEJ,SAAS,EAAE,IAAAK,mBAAU,EAAC,wBAAwB,EAAEL,SAAS,CAAE;IAE3DM,IAAI,EAAC;EAAQ,GAEZH,QAAQ,IAAIF,KAAK,EACjBC,IACG,CAAC;AAEX"}
1
+ {"version":3,"file":"Option.js","names":["_react","_interopRequireDefault","require","_classnames","obj","__esModule","default","Option","_ref","className","title","text","children","createElement","classnames","role"],"sources":["../../../../../src/extensions/forms/Field/Option.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport type { FieldProps } from '../types'\n\nexport type Props = FieldProps<number | string> & {\n title?: string\n text?: string\n children?: React.ReactNode\n}\n\nexport default function Option({\n className,\n title,\n text,\n children,\n}: Props) {\n return (\n <span\n className={classnames('dnb-forms-field-option', className)}\n // eslint-disable-next-line jsx-a11y/role-has-required-aria-props\n role=\"option\"\n >\n {children ?? title}\n {text}\n </span>\n )\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAAmC,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AASpB,SAASG,MAAMA,CAAAC,IAAA,EAKpB;EAAA,IALqB;IAC7BC,SAAS;IACTC,KAAK;IACLC,IAAI;IACJC;EACK,CAAC,GAAAJ,IAAA;EACN,OACER,MAAA,CAAAM,OAAA,CAAAO,aAAA;IACEJ,SAAS,EAAE,IAAAK,mBAAU,EAAC,wBAAwB,EAAEL,SAAS,CAAE;IAE3DM,IAAI,EAAC;EAAQ,GAEZH,QAAQ,IAAIF,KAAK,EACjBC,IACG,CAAC;AAEX"}
@@ -1,7 +1,6 @@
1
1
  import { InputMaskedProps } from '../../../components/InputMasked';
2
- import type { ComponentProps } from '../component-types';
3
- import type { FieldProps } from '../field-types';
4
- export type Props = ComponentProps & FieldProps<string, undefined> & {
2
+ import { FieldProps } from '../types';
3
+ export type Props = FieldProps<string, undefined> & {
5
4
  countryCodeFieldClassName?: string;
6
5
  numberFieldClassName?: string;
7
6
  countryCodeLabel?: string;
@@ -9,8 +9,8 @@ var _elements = require("../../../elements");
9
9
  var _classnames = _interopRequireDefault(require("classnames"));
10
10
  var _CountryCode = _interopRequireDefault(require("./CountryCode"));
11
11
  var _String = _interopRequireDefault(require("./String"));
12
- var _utils = require("../utils");
13
- var _hooks = require("./hooks");
12
+ var _hooks = require("../hooks");
13
+ var _types = require("../types");
14
14
  var _Context = _interopRequireDefault(require("../../../shared/Context"));
15
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
16
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -49,7 +49,7 @@ function PhoneNumber(props) {
49
49
  handleChange,
50
50
  onCountryCodeChange,
51
51
  onNumberChange
52
- } = (0, _hooks.useField)(preparedProps);
52
+ } = (0, _hooks.useDataValue)(preparedProps);
53
53
  const [, countryCode, phoneNumber] = value !== undefined ? value.match(/^(\+[^ ]+)? ?(.*)$/) : [undefined, '', ''];
54
54
  const handleCountryCodeChange = (0, _react.useCallback)(countryCode => {
55
55
  if (!countryCode && !phoneNumber) {
@@ -71,7 +71,7 @@ function PhoneNumber(props) {
71
71
  }, [countryCode, emptyValue, handleChange, onNumberChange]);
72
72
  return _react.default.createElement(_elements.Div, _extends({
73
73
  className: (0, _classnames.default)('dnb-forms-field-phone-number', className, width !== undefined && `dnb-forms-field-phone-number--width-${width}`)
74
- }, (0, _utils.forwardSpaceProps)(preparedProps)), _react.default.createElement(_CountryCode.default, {
74
+ }, (0, _types.pickSpacingProps)(preparedProps)), _react.default.createElement(_CountryCode.default, {
75
75
  className: (0, _classnames.default)('dnb-forms-field-phone-number__country-code', countryCodeFieldClassName),
76
76
  label: countryCodeLabel,
77
77
  value: countryCode ?? '+47',
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneNumber.js","names":["_react","_interopRequireWildcard","require","_elements","_classnames","_interopRequireDefault","_CountryCode","_String","_utils","_hooks","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","PhoneNumber","props","sharedContext","useContext","SharedContext","preparedProps","errorMessages","required","translation","Forms","phoneNumberErrorRequired","className","countryCodeFieldClassName","numberFieldClassName","placeholder","countryCodeLabel","label","phoneNumberLabel","numberMask","emptyValue","info","warning","error","disabled","width","handleFocus","handleBlur","handleChange","onCountryCodeChange","onNumberChange","useField","countryCode","phoneNumber","match","handleCountryCodeChange","useCallback","Boolean","join","handleNumberChange","createElement","Div","classnames","forwardSpaceProps","onChange","type","layout","mask","onFocus","onBlur","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/PhoneNumber.tsx"],"sourcesContent":["import React, { useContext, useCallback } from 'react'\nimport { Div } from '../../../elements'\nimport { InputMaskedProps } from '../../../components/InputMasked'\nimport classnames from 'classnames'\nimport CountryCode from './CountryCode'\nimport StringComponent from './String'\nimport { forwardSpaceProps } from '../utils'\nimport { useField } from './hooks'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps } from '../field-types'\nimport SharedContext from '../../../shared/Context'\n\nexport type Props = ComponentProps &\n FieldProps<string, undefined> & {\n countryCodeFieldClassName?: string\n numberFieldClassName?: string\n countryCodeLabel?: string\n numberMask?: InputMaskedProps['mask']\n width?: 'large' | 'stretch'\n onCountryCodeChange?: (value: string | undefined) => void\n onNumberChange?: (value: string | undefined) => void\n }\n\nfunction PhoneNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const preparedProps: Props = {\n ...props,\n // Important for the default value to be defined here, and not after the useField call, to avoid the UI jumping\n // back to +47 once the user empty the field so handleChange send out undefined.\n value: '+47',\n errorMessages: {\n required: sharedContext?.translation.Forms.phoneNumberErrorRequired,\n ...props?.errorMessages,\n },\n }\n\n const {\n className,\n countryCodeFieldClassName,\n numberFieldClassName,\n placeholder,\n countryCodeLabel,\n label = sharedContext?.translation.Forms.phoneNumberLabel,\n value,\n numberMask,\n emptyValue,\n info,\n warning,\n error,\n disabled,\n width = 'large',\n handleFocus,\n handleBlur,\n handleChange,\n onCountryCodeChange,\n onNumberChange,\n } = useField(preparedProps)\n\n const [, countryCode, phoneNumber] =\n value !== undefined\n ? value.match(/^(\\+[^ ]+)? ?(.*)$/)\n : [undefined, '', '']\n\n const handleCountryCodeChange = useCallback(\n (countryCode: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onCountryCodeChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onCountryCodeChange?.(countryCode)\n },\n [phoneNumber, emptyValue, handleChange, onCountryCodeChange]\n )\n\n const handleNumberChange = useCallback(\n (phoneNumber: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onNumberChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onNumberChange?.(phoneNumber)\n },\n [countryCode, emptyValue, handleChange, onNumberChange]\n )\n\n return (\n <Div\n className={classnames(\n 'dnb-forms-field-phone-number',\n width !== undefined &&\n `dnb-forms-field-phone-number--width-${width}`,\n className\n )}\n {...forwardSpaceProps(preparedProps)}\n >\n <CountryCode\n className={classnames(\n 'dnb-forms-field-phone-number__country-code',\n countryCodeFieldClassName\n )}\n label={countryCodeLabel}\n value={countryCode ?? '+47'}\n disabled={disabled}\n onChange={handleCountryCodeChange}\n />\n\n <StringComponent\n className={classnames(\n 'dnb-forms-field-phone-number__number',\n numberFieldClassName\n )}\n type=\"tel\"\n emptyValue=\"\"\n layout=\"vertical\"\n label={label ?? ' '}\n placeholder={placeholder ?? '00 00 00 00'}\n mask={\n numberMask ?? [\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ]\n }\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleNumberChange}\n value={phoneNumber}\n info={info}\n warning={warning}\n error={error}\n disabled={disabled}\n width=\"stretch\"\n />\n </Div>\n )\n}\n\nPhoneNumber._supportsEufemiaSpacingProps = true\nexport default PhoneNumber\n"],"mappings":"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"}
1
+ {"version":3,"file":"PhoneNumber.js","names":["_react","_interopRequireWildcard","require","_elements","_classnames","_interopRequireDefault","_CountryCode","_String","_hooks","_types","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","PhoneNumber","props","sharedContext","useContext","SharedContext","preparedProps","errorMessages","required","translation","Forms","phoneNumberErrorRequired","className","countryCodeFieldClassName","numberFieldClassName","placeholder","countryCodeLabel","label","phoneNumberLabel","numberMask","emptyValue","info","warning","error","disabled","width","handleFocus","handleBlur","handleChange","onCountryCodeChange","onNumberChange","useDataValue","countryCode","phoneNumber","match","handleCountryCodeChange","useCallback","Boolean","join","handleNumberChange","createElement","Div","classnames","pickSpacingProps","onChange","type","layout","mask","onFocus","onBlur","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/PhoneNumber.tsx"],"sourcesContent":["import React, { useContext, useCallback } from 'react'\nimport { Div } from '../../../elements'\nimport { InputMaskedProps } from '../../../components/InputMasked'\nimport classnames from 'classnames'\nimport CountryCode from './CountryCode'\nimport StringComponent from './String'\nimport { useDataValue } from '../hooks'\nimport { FieldProps, pickSpacingProps } from '../types'\nimport SharedContext from '../../../shared/Context'\n\nexport type Props = FieldProps<string, undefined> & {\n countryCodeFieldClassName?: string\n numberFieldClassName?: string\n countryCodeLabel?: string\n numberMask?: InputMaskedProps['mask']\n width?: 'large' | 'stretch'\n onCountryCodeChange?: (value: string | undefined) => void\n onNumberChange?: (value: string | undefined) => void\n}\n\nfunction PhoneNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const preparedProps: Props = {\n ...props,\n // Important for the default value to be defined here, and not after the useDataValue call, to avoid the UI jumping\n // back to +47 once the user empty the field so handleChange send out undefined.\n value: '+47',\n errorMessages: {\n required: sharedContext?.translation.Forms.phoneNumberErrorRequired,\n ...props?.errorMessages,\n },\n }\n\n const {\n className,\n countryCodeFieldClassName,\n numberFieldClassName,\n placeholder,\n countryCodeLabel,\n label = sharedContext?.translation.Forms.phoneNumberLabel,\n value,\n numberMask,\n emptyValue,\n info,\n warning,\n error,\n disabled,\n width = 'large',\n handleFocus,\n handleBlur,\n handleChange,\n onCountryCodeChange,\n onNumberChange,\n } = useDataValue(preparedProps)\n\n const [, countryCode, phoneNumber] =\n value !== undefined\n ? value.match(/^(\\+[^ ]+)? ?(.*)$/)\n : [undefined, '', '']\n\n const handleCountryCodeChange = useCallback(\n (countryCode: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onCountryCodeChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onCountryCodeChange?.(countryCode)\n },\n [phoneNumber, emptyValue, handleChange, onCountryCodeChange]\n )\n\n const handleNumberChange = useCallback(\n (phoneNumber: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onNumberChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onNumberChange?.(phoneNumber)\n },\n [countryCode, emptyValue, handleChange, onNumberChange]\n )\n\n return (\n <Div\n className={classnames(\n 'dnb-forms-field-phone-number',\n width !== undefined &&\n `dnb-forms-field-phone-number--width-${width}`,\n className\n )}\n {...pickSpacingProps(preparedProps)}\n >\n <CountryCode\n className={classnames(\n 'dnb-forms-field-phone-number__country-code',\n countryCodeFieldClassName\n )}\n label={countryCodeLabel}\n value={countryCode ?? '+47'}\n disabled={disabled}\n onChange={handleCountryCodeChange}\n />\n\n <StringComponent\n className={classnames(\n 'dnb-forms-field-phone-number__number',\n numberFieldClassName\n )}\n type=\"tel\"\n emptyValue=\"\"\n layout=\"vertical\"\n label={label ?? ' '}\n placeholder={placeholder ?? '00 00 00 00'}\n mask={\n numberMask ?? [\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ]\n }\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleNumberChange}\n value={phoneNumber}\n info={info}\n warning={warning}\n error={error}\n disabled={disabled}\n width=\"stretch\"\n />\n </Div>\n )\n}\n\nPhoneNumber._supportsEufemiaSpacingProps = true\nexport default PhoneNumber\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { Props as FieldGroupProps } from '../FieldGroup';
1
+ import { Props as FieldBlockProps } from '../FieldBlock';
2
2
  import { Props as StringComponentProps } from './String';
3
- export type Props = Omit<FieldGroupProps, 'children'> & Record<'postalCode' | 'city', StringComponentProps> & {
3
+ export type Props = Omit<FieldBlockProps, 'children'> & Record<'postalCode' | 'city', StringComponentProps> & {
4
4
  width?: 'small' | 'medium' | 'large';
5
5
  };
6
6
  declare function PostalCodeAndCity(props: Props): import("react/jsx-runtime").JSX.Element;
@@ -7,7 +7,7 @@ exports.default = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _classnames = _interopRequireDefault(require("classnames"));
9
9
  var _Context = _interopRequireDefault(require("../../../shared/Context"));
10
- var _FieldGroup = _interopRequireDefault(require("../FieldGroup"));
10
+ var _FieldBlock = _interopRequireDefault(require("../FieldBlock"));
11
11
  var _String = _interopRequireDefault(require("./String"));
12
12
  const _excluded = ["postalCode", "city", "width"];
13
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -28,10 +28,10 @@ function PostalCodeAndCity(props) {
28
28
  city = {},
29
29
  width = 'large'
30
30
  } = props,
31
- fieldGroupProps = _objectWithoutProperties(props, _excluded);
32
- return _react.default.createElement(_FieldGroup.default, _extends({
31
+ fieldBlockProps = _objectWithoutProperties(props, _excluded);
32
+ return _react.default.createElement(_FieldBlock.default, _extends({
33
33
  className: (0, _classnames.default)('dnb-forms-field-postal-code-and-city', props.className)
34
- }, fieldGroupProps), _react.default.createElement("div", {
34
+ }, fieldBlockProps), _react.default.createElement("div", {
35
35
  className: 'dnb-forms-field-postal-code-and-city__fields' + (width !== undefined ? ` dnb-forms-field-postal-code-and-city--width-${width}` : "")
36
36
  }, _react.default.createElement(_String.default, _extends({}, postalCode, {
37
37
  pattern: postalCode.pattern ?? '^[0-9]{4}$',
@@ -1 +1 @@
1
- {"version":3,"file":"PostalCodeAndCity.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_FieldGroup","_String","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","PostalCodeAndCity","props","sharedContext","useContext","SharedContext","postalCode","city","width","fieldGroupProps","createElement","className","classnames","pattern","label","translation","Forms","postalCodeLabel","errorMessages","required","postalCodeErrorRequired","postalCodeErrorPattern","placeholder","inputClassName","cityLabel","cityErrorRequired","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/PostalCodeAndCity.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../shared/Context'\nimport FieldGroup, { Props as FieldGroupProps } from '../FieldGroup'\nimport StringComponent, { Props as StringComponentProps } from './String'\n\nexport type Props = Omit<FieldGroupProps, 'children'> &\n Record<'postalCode' | 'city', StringComponentProps> & {\n width?: 'small' | 'medium' | 'large'\n }\n\nfunction PostalCodeAndCity(props: Props) {\n const sharedContext = useContext(SharedContext)\n\n const {\n postalCode = {},\n city = {},\n width = 'large',\n ...fieldGroupProps\n } = props\n\n return (\n <FieldGroup\n className={classnames(\n 'dnb-forms-field-postal-code-and-city',\n props.className\n )}\n {...fieldGroupProps}\n >\n <div\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__fields',\n width !== undefined &&\n `dnb-forms-field-postal-code-and-city--width-${width}`\n )}\n >\n <StringComponent\n {...postalCode}\n pattern={postalCode.pattern ?? '^[0-9]{4}$'}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__postal-code',\n postalCode.className\n )}\n label={\n postalCode.label ??\n sharedContext?.translation.Forms.postalCodeLabel\n }\n errorMessages={{\n required:\n sharedContext?.translation.Forms.postalCodeErrorRequired,\n pattern:\n sharedContext?.translation.Forms.postalCodeErrorPattern,\n ...postalCode.errorMessages,\n }}\n placeholder={postalCode.placeholder ?? '0000'}\n width={false}\n inputClassName=\"dnb-forms-field-postal-code-and-city__postal-code-input\"\n />\n <StringComponent\n {...city}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__city',\n city.className\n )}\n label={city.label ?? sharedContext?.translation.Forms.cityLabel}\n errorMessages={{\n required: sharedContext?.translation.Forms.cityErrorRequired,\n ...city.errorMessages,\n }}\n width=\"stretch\"\n />\n </div>\n </FieldGroup>\n )\n}\n\nPostalCodeAndCity._supportsEufemiaSpacingProps = true\nexport default PostalCodeAndCity\n"],"mappings":"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"}
1
+ {"version":3,"file":"PostalCodeAndCity.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_FieldBlock","_String","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","PostalCodeAndCity","props","sharedContext","useContext","SharedContext","postalCode","city","width","fieldBlockProps","createElement","className","classnames","pattern","label","translation","Forms","postalCodeLabel","errorMessages","required","postalCodeErrorRequired","postalCodeErrorPattern","placeholder","inputClassName","cityLabel","cityErrorRequired","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/PostalCodeAndCity.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../shared/Context'\nimport FieldBlock, { Props as FieldBlockProps } from '../FieldBlock'\nimport StringComponent, { Props as StringComponentProps } from './String'\n\nexport type Props = Omit<FieldBlockProps, 'children'> &\n Record<'postalCode' | 'city', StringComponentProps> & {\n width?: 'small' | 'medium' | 'large'\n }\n\nfunction PostalCodeAndCity(props: Props) {\n const sharedContext = useContext(SharedContext)\n\n const {\n postalCode = {},\n city = {},\n width = 'large',\n ...fieldBlockProps\n } = props\n\n return (\n <FieldBlock\n className={classnames(\n 'dnb-forms-field-postal-code-and-city',\n props.className\n )}\n {...fieldBlockProps}\n >\n <div\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__fields',\n width !== undefined &&\n `dnb-forms-field-postal-code-and-city--width-${width}`\n )}\n >\n <StringComponent\n {...postalCode}\n pattern={postalCode.pattern ?? '^[0-9]{4}$'}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__postal-code',\n postalCode.className\n )}\n label={\n postalCode.label ??\n sharedContext?.translation.Forms.postalCodeLabel\n }\n errorMessages={{\n required:\n sharedContext?.translation.Forms.postalCodeErrorRequired,\n pattern:\n sharedContext?.translation.Forms.postalCodeErrorPattern,\n ...postalCode.errorMessages,\n }}\n placeholder={postalCode.placeholder ?? '0000'}\n width={false}\n inputClassName=\"dnb-forms-field-postal-code-and-city__postal-code-input\"\n />\n <StringComponent\n {...city}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__city',\n city.className\n )}\n label={city.label ?? sharedContext?.translation.Forms.cityLabel}\n errorMessages={{\n required: sharedContext?.translation.Forms.cityErrorRequired,\n ...city.errorMessages,\n }}\n width=\"stretch\"\n />\n </div>\n </FieldBlock>\n )\n}\n\nPostalCodeAndCity._supportsEufemiaSpacingProps = true\nexport default PostalCodeAndCity\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,WAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,OAAA,GAAAH,sBAAA,CAAAF,OAAA;AAAyE,MAAAM,SAAA;AAAA,SAAAJ,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAZ,wBAAAQ,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA;AAAA,SAAAI,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAArB,MAAA,CAAAqB,IAAA,CAAAF,MAAA,OAAAnB,MAAA,CAAAsB,qBAAA,QAAAC,OAAA,GAAAvB,MAAA,CAAAsB,qBAAA,CAAAH,MAAA,GAAAC,cAAA,KAAAG,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAzB,MAAA,CAAAE,wBAAA,CAAAiB,MAAA,EAAAM,GAAA,EAAAC,UAAA,OAAAL,IAAA,CAAAM,IAAA,CAAAV,KAAA,CAAAI,IAAA,EAAAE,OAAA,YAAAF,IAAA;AAAA,SAAAO,cAAAhB,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAK,OAAA,CAAAlB,MAAA,CAAAgB,MAAA,OAAAa,OAAA,WAAA1B,GAAA,IAAA2B,eAAA,CAAAlB,MAAA,EAAAT,GAAA,EAAAa,MAAA,CAAAb,GAAA,SAAAH,MAAA,CAAA+B,yBAAA,GAAA/B,MAAA,CAAAgC,gBAAA,CAAApB,MAAA,EAAAZ,MAAA,CAAA+B,yBAAA,CAAAf,MAAA,KAAAE,OAAA,CAAAlB,MAAA,CAAAgB,MAAA,GAAAa,OAAA,WAAA1B,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAAW,MAAA,EAAAT,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAAc,MAAA,EAAAb,GAAA,iBAAAS,MAAA;AAAA,SAAAkB,gBAAA3C,GAAA,EAAAgB,GAAA,EAAA8B,KAAA,IAAA9B,GAAA,GAAA+B,cAAA,CAAA/B,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAA8B,KAAA,EAAAA,KAAA,EAAAP,UAAA,QAAAS,YAAA,QAAAC,QAAA,oBAAAjD,GAAA,CAAAgB,GAAA,IAAA8B,KAAA,WAAA9C,GAAA;AAAA,SAAA+C,eAAAG,GAAA,QAAAlC,GAAA,GAAAmC,YAAA,CAAAD,GAAA,2BAAAlC,GAAA,gBAAAA,GAAA,GAAAoC,MAAA,CAAApC,GAAA;AAAA,SAAAmC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAApC,IAAA,CAAAkC,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAAA,SAAAS,yBAAAjC,MAAA,EAAAkC,QAAA,QAAAlC,MAAA,yBAAAJ,MAAA,GAAAuC,6BAAA,CAAAnC,MAAA,EAAAkC,QAAA,OAAA/C,GAAA,EAAAU,CAAA,MAAAb,MAAA,CAAAsB,qBAAA,QAAA8B,gBAAA,GAAApD,MAAA,CAAAsB,qBAAA,CAAAN,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAAuC,gBAAA,CAAArC,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAiD,gBAAA,CAAAvC,CAAA,OAAAqC,QAAA,CAAAG,OAAA,CAAAlD,GAAA,uBAAAH,MAAA,CAAAI,SAAA,CAAAkD,oBAAA,CAAAhD,IAAA,CAAAU,MAAA,EAAAb,GAAA,aAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,cAAAS,MAAA;AAAA,SAAAuC,8BAAAnC,MAAA,EAAAkC,QAAA,QAAAlC,MAAA,yBAAAJ,MAAA,WAAA2C,UAAA,GAAAvD,MAAA,CAAAqB,IAAA,CAAAL,MAAA,OAAAb,GAAA,EAAAU,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAA0C,UAAA,CAAAxC,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAoD,UAAA,CAAA1C,CAAA,OAAAqC,QAAA,CAAAG,OAAA,CAAAlD,GAAA,kBAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,YAAAS,MAAA;AAOzE,SAAS4C,iBAAiBA,CAACC,KAAY,EAAE;EACvC,MAAMC,aAAa,GAAG,IAAAC,iBAAU,EAACC,gBAAa,CAAC;EAE/C,MAAM;MACJC,UAAU,GAAG,CAAC,CAAC;MACfC,IAAI,GAAG,CAAC,CAAC;MACTC,KAAK,GAAG;IAEV,CAAC,GAAGN,KAAK;IADJO,eAAe,GAAAf,wBAAA,CAChBQ,KAAK,EAAAvE,SAAA;EAET,OACER,MAAA,CAAAW,OAAA,CAAA4E,aAAA,CAACjF,WAAA,CAAAK,OAAU,EAAAoB,QAAA;IACTyD,SAAS,EAAE,IAAAC,mBAAU,EACnB,sCAAsC,EACtCV,KAAK,CAACS,SACR;EAAE,GACEF,eAAe,GAEnBtF,MAAA,CAAAW,OAAA,CAAA4E,aAAA;IACEC,SAAS,EACP,8CAA8C,IAC9CH,KAAK,KAAKlB,SAAS,mDAC8BkB,KAAM;EACvD,GAEFrF,MAAA,CAAAW,OAAA,CAAA4E,aAAA,CAAChF,OAAA,CAAAI,OAAe,EAAAoB,QAAA,KACVoD,UAAU;IACdO,OAAO,EAAEP,UAAU,CAACO,OAAO,IAAI,YAAa;IAC5CF,SAAS,EAAE,IAAAC,mBAAU,EACnB,mDAAmD,EACnDN,UAAU,CAACK,SACb,CAAE;IACFG,KAAK,EACHR,UAAU,CAACQ,KAAK,KAChBX,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEY,WAAW,CAACC,KAAK,CAACC,eAAe,CACjD;IACDC,aAAa,EAAA7C,aAAA;MACX8C,QAAQ,EACNhB,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEY,WAAW,CAACC,KAAK,CAACI,uBAAuB;MAC1DP,OAAO,EACLV,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEY,WAAW,CAACC,KAAK,CAACK;IAAsB,GACtDf,UAAU,CAACY,aAAa,CAC3B;IACFI,WAAW,EAAEhB,UAAU,CAACgB,WAAW,IAAI,MAAO;IAC9Cd,KAAK,EAAE,KAAM;IACbe,cAAc,EAAC;EAAyD,EACzE,CAAC,EACFpG,MAAA,CAAAW,OAAA,CAAA4E,aAAA,CAAChF,OAAA,CAAAI,OAAe,EAAAoB,QAAA,KACVqD,IAAI;IACRI,SAAS,EAAE,IAAAC,mBAAU,EACnB,4CAA4C,EAC5CL,IAAI,CAACI,SACP,CAAE;IACFG,KAAK,EAAEP,IAAI,CAACO,KAAK,KAAIX,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEY,WAAW,CAACC,KAAK,CAACQ,SAAS,CAAC;IAChEN,aAAa,EAAA7C,aAAA;MACX8C,QAAQ,EAAEhB,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEY,WAAW,CAACC,KAAK,CAACS;IAAiB,GACzDlB,IAAI,CAACW,aAAa,CACrB;IACFV,KAAK,EAAC;EAAS,EAChB,CACE,CACK,CAAC;AAEjB;AAEAP,iBAAiB,CAACyB,4BAA4B,GAAG,IAAI;AAAA,IAAAC,QAAA,GACtC1B,iBAAiB;AAAA2B,OAAA,CAAA9F,OAAA,GAAA6F,QAAA"}
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
- import type { ComponentProps } from '../component-types';
3
- import type { FieldProps, FieldHelpProps } from '../field-types';
4
- export type Props = ComponentProps & FieldHelpProps & FieldProps<string | number> & {
2
+ import { FieldProps, FieldHelpProps } from '../types';
3
+ export type Props = FieldHelpProps & FieldProps<string | number> & {
5
4
  children?: React.ReactNode;
6
5
  variant?: 'dropdown' | 'radio' | 'button';
7
6
  clear?: boolean;
@@ -9,11 +9,10 @@ var _components = require("../../../components");
9
9
  var _ButtonRow = _interopRequireDefault(require("../Layout/ButtonRow"));
10
10
  var _FieldBlock = _interopRequireDefault(require("../FieldBlock"));
11
11
  var _classnames = _interopRequireDefault(require("classnames"));
12
- var _utils = require("../utils");
13
12
  var _componentHelper = require("../../../shared/component-helper");
14
13
  var _Context = _interopRequireDefault(require("../../../shared/Context"));
15
14
  var _Option = _interopRequireDefault(require("./Option"));
16
- var _hooks = require("./hooks");
15
+ var _hooks = require("../hooks");
17
16
  var _types = require("../types");
18
17
  var _em;
19
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -50,7 +49,7 @@ function Selection(props) {
50
49
  setHasFocus,
51
50
  handleChange,
52
51
  children
53
- } = (0, _hooks.useField)(props);
52
+ } = (0, _hooks.useDataValue)(props);
54
53
  const handleDropdownChange = (0, _react.useCallback)(_ref => {
55
54
  let {
56
55
  data: {
@@ -81,7 +80,7 @@ function Selection(props) {
81
80
  const fieldBlockProps = _objectSpread(_objectSpread({
82
81
  forId: id,
83
82
  className: cn
84
- }, (0, _utils.forwardSpaceProps)(props)), {}, {
83
+ }, (0, _types.pickSpacingProps)(props)), {}, {
85
84
  info,
86
85
  warning,
87
86
  error,
@@ -107,7 +106,7 @@ function Selection(props) {
107
106
  vertical: layout === 'vertical',
108
107
  on_change: handleRadioChange,
109
108
  value: String(value ?? '')
110
- }, (0, _utils.forwardSpaceProps)(props)), options.map((option, i) => _react.default.createElement(_components.Radio, {
109
+ }, (0, _types.pickSpacingProps)(props)), options.map((option, i) => _react.default.createElement(_components.Radio, {
111
110
  key: `option-${i}-${option.value}`,
112
111
  label: option.title,
113
112
  value: String(option.value ?? '')
@@ -159,7 +158,7 @@ function Selection(props) {
159
158
  on_change: handleDropdownChange,
160
159
  on_show: handleShow,
161
160
  on_hide: handleHide
162
- }, (0, _utils.forwardSpaceProps)(props), {
161
+ }, (0, _types.pickSpacingProps)(props), {
163
162
  stretch: width === 'stretch'
164
163
  }));
165
164
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_components","_ButtonRow","_interopRequireDefault","_FieldBlock","_classnames","_utils","_componentHelper","_Context","_Option","_hooks","_types","_em","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","sharedContext","useContext","SharedContext","clearValue","useMemo","makeUniqueId","id","className","variant","clear","label","labelDescription","labelSecondary","layout","optionsLayout","placeholder","info","warning","error","disabled","help","emptyValue","width","setHasFocus","handleChange","children","useField","handleDropdownChange","useCallback","_ref","data","selected_key","handleRadioChange","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","forwardSpaceProps","options","React","Children","toArray","child","isValidElement","type","Option","map","option","title","handleSelect","selected","createElement","Radio","Group","layout_direction","vertical","on_change","Button","text","on_click","status","optionsData","content","translation","Forms","selectionClearSelected","Boolean","Dropdown","list_class","portal_class","label_direction","message","Error","FormError","toString","suffix","HelpButton","contents","on_show","on_hide","stretch","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/Selection.tsx"],"sourcesContent":["import React, { useMemo, useContext, useCallback } from 'react'\nimport { Button, Dropdown, Radio, HelpButton } from '../../../components'\nimport ButtonRow from '../Layout/ButtonRow'\nimport FieldBlock from '../FieldBlock'\nimport classnames from 'classnames'\nimport { forwardSpaceProps } from '../utils'\nimport { makeUniqueId } from '../../../shared/component-helper'\nimport SharedContext from '../../../shared/Context'\nimport Option from './Option'\nimport { useField } from './hooks'\nimport { FormError } from '../types'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps, FieldHelpProps } from '../field-types'\n\ninterface IOption {\n title: string | React.ReactNode\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = ComponentProps &\n FieldHelpProps &\n FieldProps<string | number> & {\n children?: React.ReactNode\n variant?: 'dropdown' | 'radio' | 'button'\n clear?: boolean\n optionsLayout?: 'horizontal' | 'vertical'\n width?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction Selection(props: Props) {\n const sharedContext = useContext(SharedContext)\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n clear,\n label,\n labelDescription,\n labelSecondary,\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n disabled,\n help,\n emptyValue,\n width = 'large',\n setHasFocus,\n handleChange,\n children,\n } = useField(props)\n\n const handleDropdownChange = useCallback(\n ({ data: { selected_key } }) => {\n handleChange?.(\n !selected_key || selected_key === clearValue\n ? emptyValue\n : selected_key\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const handleRadioChange = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useFields handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selected_key)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selected_key)\n },\n [setHasFocus]\n )\n\n const cn = classnames('dnb-forms-field-selection', className)\n\n const fieldBlockProps = {\n forId: id,\n className: cn,\n ...forwardSpaceProps(props),\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n handleChange?.(selected === value ? emptyValue : selected)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'radio':\n return (\n <Radio.Group\n className={cn}\n label={label}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n vertical={layout === 'vertical'}\n on_change={handleRadioChange}\n value={String(value ?? '')}\n {...forwardSpaceProps(props)}\n >\n {options.map((option, i) => (\n <Radio\n key={`option-${i}-${option.value}`}\n label={option.title}\n value={String(option.value ?? '')}\n />\n ))}\n </Radio.Group>\n )\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n {options.map((option, i) => (\n <Button\n key={`option-${i}-${option.value}`}\n id={id}\n text={option.title}\n on_click={option.handleSelect}\n variant={option.value === value ? undefined : 'secondary'}\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n ))}\n </ButtonRow>\n </FieldBlock>\n )\n case 'dropdown': {\n const optionsData = React.Children.map(children, (child) => {\n if (React.isValidElement(child) && child.type === Option) {\n // Option components\n return child.props.text\n ? {\n selected_key: String(child.props.value ?? ''),\n content: [\n child.props.title ?? child.props.children ?? (\n <em>Untitled</em>\n ),\n child.props.text,\n ],\n }\n : {\n selected_key: child.props.value,\n content: child.props.title ?? child.props.children,\n }\n }\n\n // For other children, just show them as content\n return {\n content: child,\n }\n })\n const data = [\n clear\n ? {\n selected_key: clearValue,\n content: (\n <em>\n {sharedContext?.translation.Forms.selectionClearSelected}\n </em>\n ),\n }\n : undefined,\n ...(optionsData ?? []),\n ].filter(Boolean)\n\n return (\n <Dropdown\n className={classnames(\n 'dnb-forms-field-selection',\n width !== 'stretch' &&\n `dnb-forms-field-selection--width-${width}`,\n className\n )}\n list_class=\"dnb-forms-field-selection__list\"\n portal_class=\"dnb-forms-field-selection__portal\"\n title={placeholder}\n value={String(value ?? '')}\n label={label}\n label_direction={layout}\n status={\n error?.message ??\n ((warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString() ||\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString())\n }\n disabled={disabled}\n data={data}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n on_change={handleDropdownChange}\n on_show={handleShow}\n on_hide={handleHide}\n {...forwardSpaceProps(props)}\n stretch={width === 'stretch'}\n />\n )\n }\n }\n}\n\nSelection._supportsEufemiaSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
1
+ {"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_components","_ButtonRow","_interopRequireDefault","_FieldBlock","_classnames","_componentHelper","_Context","_Option","_hooks","_types","_em","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","sharedContext","useContext","SharedContext","clearValue","useMemo","makeUniqueId","id","className","variant","clear","label","labelDescription","labelSecondary","layout","optionsLayout","placeholder","info","warning","error","disabled","help","emptyValue","width","setHasFocus","handleChange","children","useDataValue","handleDropdownChange","useCallback","_ref","data","selected_key","handleRadioChange","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","pickSpacingProps","options","React","Children","toArray","child","isValidElement","type","Option","map","option","title","handleSelect","selected","createElement","Radio","Group","layout_direction","vertical","on_change","Button","text","on_click","status","optionsData","content","translation","Forms","selectionClearSelected","Boolean","Dropdown","list_class","portal_class","label_direction","message","Error","FormError","toString","suffix","HelpButton","contents","on_show","on_hide","stretch","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/Selection.tsx"],"sourcesContent":["import React, { useMemo, useContext, useCallback } from 'react'\nimport { Button, Dropdown, Radio, HelpButton } from '../../../components'\nimport ButtonRow from '../Layout/ButtonRow'\nimport FieldBlock from '../FieldBlock'\nimport classnames from 'classnames'\nimport { makeUniqueId } from '../../../shared/component-helper'\nimport SharedContext from '../../../shared/Context'\nimport Option from './Option'\nimport { useDataValue } from '../hooks'\nimport {\n FormError,\n FieldProps,\n FieldHelpProps,\n pickSpacingProps,\n} from '../types'\n\ninterface IOption {\n title: string | React.ReactNode\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<string | number> & {\n children?: React.ReactNode\n variant?: 'dropdown' | 'radio' | 'button'\n clear?: boolean\n optionsLayout?: 'horizontal' | 'vertical'\n width?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction Selection(props: Props) {\n const sharedContext = useContext(SharedContext)\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n clear,\n label,\n labelDescription,\n labelSecondary,\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n disabled,\n help,\n emptyValue,\n width = 'large',\n setHasFocus,\n handleChange,\n children,\n } = useDataValue(props)\n\n const handleDropdownChange = useCallback(\n ({ data: { selected_key } }) => {\n handleChange?.(\n !selected_key || selected_key === clearValue\n ? emptyValue\n : selected_key\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const handleRadioChange = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useDataValues handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selected_key)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selected_key)\n },\n [setHasFocus]\n )\n\n const cn = classnames('dnb-forms-field-selection', className)\n\n const fieldBlockProps = {\n forId: id,\n className: cn,\n ...pickSpacingProps(props),\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n handleChange?.(selected === value ? emptyValue : selected)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'radio':\n return (\n <Radio.Group\n className={cn}\n label={label}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n vertical={layout === 'vertical'}\n on_change={handleRadioChange}\n value={String(value ?? '')}\n {...pickSpacingProps(props)}\n >\n {options.map((option, i) => (\n <Radio\n key={`option-${i}-${option.value}`}\n label={option.title}\n value={String(option.value ?? '')}\n />\n ))}\n </Radio.Group>\n )\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n {options.map((option, i) => (\n <Button\n key={`option-${i}-${option.value}`}\n id={id}\n text={option.title}\n on_click={option.handleSelect}\n variant={option.value === value ? undefined : 'secondary'}\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n ))}\n </ButtonRow>\n </FieldBlock>\n )\n case 'dropdown': {\n const optionsData = React.Children.map(children, (child) => {\n if (React.isValidElement(child) && child.type === Option) {\n // Option components\n return child.props.text\n ? {\n selected_key: String(child.props.value ?? ''),\n content: [\n child.props.title ?? child.props.children ?? (\n <em>Untitled</em>\n ),\n child.props.text,\n ],\n }\n : {\n selected_key: child.props.value,\n content: child.props.title ?? child.props.children,\n }\n }\n\n // For other children, just show them as content\n return {\n content: child,\n }\n })\n const data = [\n clear\n ? {\n selected_key: clearValue,\n content: (\n <em>\n {sharedContext?.translation.Forms.selectionClearSelected}\n </em>\n ),\n }\n : undefined,\n ...(optionsData ?? []),\n ].filter(Boolean)\n\n return (\n <Dropdown\n className={classnames(\n 'dnb-forms-field-selection',\n width !== 'stretch' &&\n `dnb-forms-field-selection--width-${width}`,\n className\n )}\n list_class=\"dnb-forms-field-selection__list\"\n portal_class=\"dnb-forms-field-selection__portal\"\n title={placeholder}\n value={String(value ?? '')}\n label={label}\n label_direction={layout}\n status={\n error?.message ??\n ((warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString() ||\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString())\n }\n disabled={disabled}\n data={data}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n on_change={handleDropdownChange}\n on_show={handleShow}\n on_hide={handleHide}\n {...pickSpacingProps(props)}\n stretch={width === 'stretch'}\n />\n )\n }\n }\n}\n\nSelection._supportsEufemiaSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { InputProps } from '../../../components/input/Input';
2
2
  import { InputMaskedProps } from '../../../components/InputMasked';
3
- import type { ComponentProps } from '../component-types';
4
- import type { FieldProps, FieldHelpProps } from '../field-types';
3
+ import { FieldProps, FieldHelpProps } from '../types';
5
4
  interface ErrorMessages {
6
5
  required?: string;
7
6
  schema?: string;
@@ -9,7 +8,7 @@ interface ErrorMessages {
9
8
  maxLength?: string;
10
9
  pattern?: string;
11
10
  }
12
- export type Props = ComponentProps & FieldHelpProps & FieldProps<string, undefined | string, ErrorMessages> & {
11
+ export type Props = FieldHelpProps & FieldProps<string, undefined | string, ErrorMessages> & {
13
12
  inputClassName?: string;
14
13
  type?: InputProps['type'];
15
14
  multiline?: boolean;
@@ -8,10 +8,10 @@ var _react = _interopRequireWildcard(require("react"));
8
8
  var _classnames = _interopRequireDefault(require("classnames"));
9
9
  var _components = require("../../../components");
10
10
  var _InputMasked = _interopRequireDefault(require("../../../components/InputMasked"));
11
- var _utils = require("../utils");
12
11
  var _Context = _interopRequireDefault(require("../../../shared/Context"));
13
12
  var _FieldBlock = _interopRequireDefault(require("../FieldBlock"));
14
- var _hooks = require("./hooks");
13
+ var _hooks = require("../hooks");
14
+ var _types = require("../types");
15
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
16
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
17
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -45,9 +45,6 @@ function StringComponent(props) {
45
45
  if (value === '') {
46
46
  return props.emptyValue;
47
47
  }
48
- if (value.charAt(0) === '0' && cleanedValue === '') {
49
- return '0';
50
- }
51
48
  return cleanedValue ?? value;
52
49
  },
53
50
  width: props.width ?? 'large'
@@ -80,7 +77,7 @@ function StringComponent(props) {
80
77
  handleFocus,
81
78
  handleBlur,
82
79
  handleChange
83
- } = (0, _hooks.useField)(preparedProps);
80
+ } = (0, _hooks.useDataValue)(preparedProps);
84
81
  const characterCounterElement = characterCounter ? props.maxLength ? `${(value === null || value === void 0 ? void 0 : value.length) ?? '0'}/${props.maxLength}` : `${(value === null || value === void 0 ? void 0 : value.length) ?? '0'}` : undefined;
85
82
  const cn = (0, _classnames.default)('dnb-forms-field-string__input', inputClassName);
86
83
  return _react.default.createElement(_FieldBlock.default, _extends({
@@ -94,7 +91,7 @@ function StringComponent(props) {
94
91
  warning: warning,
95
92
  error: error,
96
93
  contentsWidth: width !== false ? width : undefined
97
- }, (0, _utils.forwardSpaceProps)(props)), multiline ? _react.default.createElement(_components.Textarea, {
94
+ }, (0, _types.pickSpacingProps)(props)), multiline ? _react.default.createElement(_components.Textarea, {
98
95
  id: id,
99
96
  className: cn,
100
97
  placeholder: placeholder,
@@ -111,6 +108,7 @@ function StringComponent(props) {
111
108
  disabled: disabled,
112
109
  stretch: width !== undefined
113
110
  }) : mask ? _react.default.createElement(_InputMasked.default, {
111
+ id: id,
114
112
  className: cn,
115
113
  mask: mask,
116
114
  placeholder: placeholder,