@dnb/eufemia 10.20.0 → 10.22.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 (1062) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/cjs/components/aria-live/useAriaLive.d.ts +1 -1
  3. package/cjs/components/breadcrumb/Breadcrumb.d.ts +2 -2
  4. package/cjs/components/breadcrumb/Breadcrumb.js +3 -3
  5. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  6. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +7 -2
  7. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  8. package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +10 -2
  9. package/cjs/components/button/Button.js +2 -2
  10. package/cjs/components/button/Button.js.map +1 -1
  11. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +23 -11
  12. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -3
  13. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +30 -14
  14. package/cjs/components/card/style/dnb-card.css +11 -2
  15. package/cjs/components/card/style/dnb-card.min.css +1 -1
  16. package/cjs/components/card/style/dnb-card.scss +12 -2
  17. package/cjs/components/date-picker/DatePicker.d.ts +10 -1
  18. package/cjs/components/date-picker/DatePicker.js +5 -2
  19. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  20. package/cjs/components/form-label/style/dnb-form-label.css +4 -8
  21. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  22. package/cjs/components/form-label/style/dnb-form-label.scss +5 -8
  23. package/cjs/components/form-status/style/dnb-form-status.css +11 -0
  24. package/cjs/components/form-status/style/dnb-form-status.min.css +1 -1
  25. package/cjs/components/form-status/style/dnb-form-status.scss +11 -0
  26. package/cjs/components/global-status/GlobalStatus.d.ts +1 -1
  27. package/cjs/components/global-status/GlobalStatusProvider.d.ts +1 -1
  28. package/cjs/components/height-animation/HeightAnimationInstance.d.ts +5 -6
  29. package/cjs/components/height-animation/HeightAnimationInstance.js +12 -12
  30. package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
  31. package/cjs/components/height-animation/useHeightAnimation.js +11 -10
  32. package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
  33. package/cjs/components/info-card/InfoCard.d.ts +6 -0
  34. package/cjs/components/info-card/InfoCard.js +4 -2
  35. package/cjs/components/info-card/InfoCard.js.map +1 -1
  36. package/cjs/components/info-card/style/dnb-info-card.css +3 -1
  37. package/cjs/components/info-card/style/dnb-info-card.min.css +1 -1
  38. package/cjs/components/info-card/style/dnb-info-card.scss +4 -2
  39. package/cjs/components/input/Input.d.ts +9 -9
  40. package/cjs/components/input/InputDocs.d.ts +2 -0
  41. package/cjs/components/input/InputDocs.js +165 -0
  42. package/cjs/components/input/InputDocs.js.map +1 -0
  43. package/cjs/components/input/InputPassword.d.ts +6 -17
  44. package/cjs/components/input/InputPassword.js +4 -85
  45. package/cjs/components/input/InputPassword.js.map +1 -1
  46. package/cjs/components/input-masked/InputMasked.d.ts +6 -93
  47. package/cjs/components/input-masked/InputMasked.js +3 -1
  48. package/cjs/components/input-masked/InputMasked.js.map +1 -1
  49. package/cjs/components/input-masked/InputMaskedDocs.d.ts +2 -0
  50. package/cjs/components/input-masked/InputMaskedDocs.js +85 -0
  51. package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -0
  52. package/cjs/components/input-masked/InputMaskedHooks.js +7 -4
  53. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  54. package/cjs/components/input-masked/MultiInputMask.js +2 -6
  55. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  56. package/cjs/components/input-masked/style/dnb-input-masked.css +3 -0
  57. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  58. package/cjs/components/input-masked/style/dnb-input-masked.scss +5 -0
  59. package/cjs/components/number-format/NumberFormat.d.ts +1 -1
  60. package/cjs/components/number-format/NumberUtils.js +22 -14
  61. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  62. package/cjs/components/pagination/InfinityScroller.d.ts +1 -1
  63. package/cjs/components/progress-indicator/ProgressIndicator.js +5 -7
  64. package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
  65. package/cjs/components/progress-indicator/ProgressIndicatorCircular.js +1 -1
  66. package/cjs/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
  67. package/cjs/components/progress-indicator/ProgressIndicatorLinear.js +4 -4
  68. package/cjs/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
  69. package/cjs/components/progress-indicator/style/dnb-progress-indicator.css +5 -2
  70. package/cjs/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  71. package/cjs/components/progress-indicator/style/dnb-progress-indicator.scss +5 -2
  72. package/cjs/components/slider/Slider.d.ts +1 -0
  73. package/cjs/components/slider/Slider.js +10 -1
  74. package/cjs/components/slider/Slider.js.map +1 -1
  75. package/cjs/components/slider/SliderInstance.js +20 -6
  76. package/cjs/components/slider/SliderInstance.js.map +1 -1
  77. package/cjs/components/slider/SliderMarker.d.ts +7 -0
  78. package/cjs/components/slider/SliderMarker.js +62 -0
  79. package/cjs/components/slider/SliderMarker.js.map +1 -0
  80. package/cjs/components/slider/SliderProvider.js +2 -1
  81. package/cjs/components/slider/SliderProvider.js.map +1 -1
  82. package/cjs/components/slider/style/dnb-slider.css +43 -2
  83. package/cjs/components/slider/style/dnb-slider.min.css +1 -1
  84. package/cjs/components/slider/style/dnb-slider.scss +44 -1
  85. package/cjs/components/slider/style/themes/dnb-slider-theme-sbanken.css +3 -0
  86. package/cjs/components/slider/style/themes/dnb-slider-theme-sbanken.min.css +1 -1
  87. package/cjs/components/slider/style/themes/dnb-slider-theme-sbanken.scss +4 -0
  88. package/cjs/components/slider/style/themes/dnb-slider-theme-ui.css +3 -0
  89. package/cjs/components/slider/style/themes/dnb-slider-theme-ui.min.css +1 -1
  90. package/cjs/components/slider/style/themes/dnb-slider-theme-ui.scss +5 -0
  91. package/cjs/components/slider/types.d.ts +6 -0
  92. package/cjs/components/slider/types.js.map +1 -1
  93. package/cjs/components/space/SpacingHelper.d.ts +5 -5
  94. package/cjs/components/table/Table.js +2 -2
  95. package/cjs/components/table/Table.js.map +1 -1
  96. package/cjs/components/table/TableAccordion.js +42 -58
  97. package/cjs/components/table/TableAccordion.js.map +1 -1
  98. package/cjs/components/table/TableAccordionTd.d.ts +9 -0
  99. package/cjs/components/table/{TableAccordionContent.js → TableAccordionTd.js} +18 -56
  100. package/cjs/components/table/TableAccordionTd.js.map +1 -0
  101. package/cjs/components/table/TableAccordionTr.d.ts +13 -0
  102. package/cjs/components/table/TableAccordionTr.js +61 -0
  103. package/cjs/components/table/TableAccordionTr.js.map +1 -0
  104. package/cjs/components/table/TableContext.d.ts +2 -2
  105. package/cjs/components/table/TableContext.js +4 -3
  106. package/cjs/components/table/TableContext.js.map +1 -1
  107. package/cjs/components/table/TableTd.d.ts +2 -2
  108. package/cjs/components/table/TableTd.js +2 -2
  109. package/cjs/components/table/TableTd.js.map +1 -1
  110. package/cjs/components/table/TableTr.d.ts +6 -1
  111. package/cjs/components/table/TableTr.js +10 -5
  112. package/cjs/components/table/TableTr.js.map +1 -1
  113. package/cjs/components/table/style/dnb-table.css +226 -139
  114. package/cjs/components/table/style/dnb-table.min.css +1 -1
  115. package/cjs/components/table/style/dnb-table.scss +60 -4
  116. package/cjs/components/table/style/table-accordion.scss +83 -98
  117. package/cjs/components/table/style/table-container.scss +9 -9
  118. package/cjs/components/table/style/table-mixins.scss +19 -2
  119. package/cjs/components/table/style/table-td.scss +82 -60
  120. package/cjs/components/table/style/table-th.scss +5 -30
  121. package/cjs/components/table/style/table-tr.scss +0 -20
  122. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.css +34 -7
  123. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.min.css +3 -1
  124. package/cjs/components/table/style/themes/dnb-table-theme-sbanken.scss +29 -10
  125. package/cjs/components/table/style/themes/dnb-table-theme-ui.css +14 -9
  126. package/cjs/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
  127. package/cjs/components/table/style/themes/dnb-table-theme-ui.scss +12 -22
  128. package/cjs/components/table/useTableAnimationHandler.d.ts +20 -0
  129. package/cjs/components/table/useTableAnimationHandler.js +73 -0
  130. package/cjs/components/table/useTableAnimationHandler.js.map +1 -0
  131. package/cjs/components/textarea/Textarea.d.ts +4 -10
  132. package/cjs/components/textarea/TextareaDocs.d.ts +2 -0
  133. package/cjs/components/textarea/TextareaDocs.js +105 -0
  134. package/cjs/components/textarea/TextareaDocs.js.map +1 -0
  135. package/cjs/components/textarea/style/dnb-textarea.css +1 -0
  136. package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
  137. package/cjs/components/textarea/style/dnb-textarea.scss +3 -0
  138. package/cjs/components/upload/UploadInfo.js +1 -1
  139. package/cjs/components/upload/UploadInfo.js.map +1 -1
  140. package/cjs/core/jest/jestSetupScreenshots.css +7 -0
  141. package/cjs/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +1 -0
  142. package/cjs/elements/lib.d.ts +1 -1
  143. package/cjs/elements/lists/Dl.d.ts +5 -1
  144. package/cjs/elements/lists/Dl.js +5 -4
  145. package/cjs/elements/lists/Dl.js.map +1 -1
  146. package/cjs/elements/lists/style/lists-mixins.scss +24 -1
  147. package/cjs/extensions/forms/DataContext/Context.d.ts +1 -2
  148. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  149. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +1 -2
  150. package/cjs/extensions/forms/DataContext/Provider/Provider.js +54 -40
  151. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  152. package/cjs/extensions/forms/Field/Currency/Currency.js +1 -1
  153. package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
  154. package/cjs/extensions/forms/Field/Expiry/Expiry.js +1 -0
  155. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  156. package/cjs/extensions/forms/Field/FieldDocs.d.ts +3 -0
  157. package/cjs/extensions/forms/Field/FieldDocs.js +18 -0
  158. package/cjs/extensions/forms/Field/FieldDocs.js.map +1 -0
  159. package/cjs/extensions/forms/Field/Number/Number.d.ts +1 -0
  160. package/cjs/extensions/forms/Field/Number/Number.js +13 -7
  161. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  162. package/cjs/extensions/forms/Field/Number/NumberDocs.d.ts +2 -0
  163. package/cjs/extensions/forms/Field/Number/NumberDocs.js +92 -0
  164. package/cjs/extensions/forms/Field/Number/NumberDocs.js.map +1 -0
  165. package/cjs/extensions/forms/Field/Number/style/dnb-number.css +3 -1
  166. package/cjs/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
  167. package/cjs/extensions/forms/Field/Number/style/dnb-number.scss +4 -1
  168. package/cjs/extensions/forms/Field/Password/Password.d.ts +45 -0
  169. package/cjs/extensions/forms/Field/Password/Password.js +111 -0
  170. package/cjs/extensions/forms/Field/Password/Password.js.map +1 -0
  171. package/cjs/extensions/forms/Field/Password/index.d.ts +2 -0
  172. package/cjs/extensions/forms/Field/Password/index.js +27 -0
  173. package/cjs/extensions/forms/Field/Password/index.js.map +1 -0
  174. package/cjs/extensions/forms/Field/Password/style/dnb-password.css +6 -0
  175. package/cjs/extensions/forms/Field/Password/style/dnb-password.min.css +1 -0
  176. package/cjs/extensions/forms/Field/Password/style/dnb-password.scss +10 -0
  177. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +4 -5
  178. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  179. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -12
  180. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  181. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -11
  182. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +0 -1
  183. package/cjs/extensions/forms/Field/Selection/Selection.js +1 -9
  184. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  185. package/cjs/extensions/forms/Field/String/String.d.ts +20 -9
  186. package/cjs/extensions/forms/Field/String/String.js +52 -31
  187. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  188. package/cjs/extensions/forms/Field/String/StringDocs.d.ts +2 -0
  189. package/cjs/extensions/forms/Field/String/StringDocs.js +106 -0
  190. package/cjs/extensions/forms/Field/String/StringDocs.js.map +1 -0
  191. package/cjs/extensions/forms/Field/Toggle/Toggle.js +1 -1
  192. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  193. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  194. package/cjs/extensions/forms/Field/index.js +7 -0
  195. package/cjs/extensions/forms/Field/index.js.map +1 -1
  196. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +8 -3
  197. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +204 -62
  198. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  199. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +39 -6
  200. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  201. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.d.ts +2 -0
  202. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +60 -0
  203. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -0
  204. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +29 -2
  205. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  206. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +28 -0
  207. package/cjs/extensions/forms/Form/Appearance/Appearance.d.ts +7 -0
  208. package/cjs/extensions/forms/Form/Appearance/Appearance.js +38 -0
  209. package/cjs/extensions/forms/Form/Appearance/Appearance.js.map +1 -0
  210. package/cjs/extensions/forms/Form/Appearance/AppearanceDocs.d.ts +2 -0
  211. package/cjs/extensions/forms/Form/Appearance/AppearanceDocs.js +15 -0
  212. package/cjs/extensions/forms/Form/Appearance/AppearanceDocs.js.map +1 -0
  213. package/cjs/extensions/forms/Form/Appearance/index.d.ts +2 -0
  214. package/cjs/extensions/forms/Form/Appearance/index.js +27 -0
  215. package/cjs/extensions/forms/Form/Appearance/index.js.map +1 -0
  216. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +6 -0
  217. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  218. package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.scss +10 -2
  219. package/cjs/extensions/forms/Form/data-context/useData.d.ts +1 -1
  220. package/cjs/extensions/forms/Form/data-context/useData.js +2 -18
  221. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  222. package/cjs/extensions/forms/Form/data-context/useError.d.ts +2 -1
  223. package/cjs/extensions/forms/Form/data-context/useError.js +4 -2
  224. package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -1
  225. package/cjs/extensions/forms/Form/index.d.ts +1 -0
  226. package/cjs/extensions/forms/Form/index.js +7 -0
  227. package/cjs/extensions/forms/Form/index.js.map +1 -1
  228. package/cjs/extensions/forms/Value/Currency/Currency.js +2 -2
  229. package/cjs/extensions/forms/Value/Currency/Currency.js.map +1 -1
  230. package/cjs/extensions/forms/Value/Number/Number.d.ts +2 -2
  231. package/cjs/extensions/forms/Value/Number/Number.js +1 -1
  232. package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
  233. package/cjs/extensions/forms/Value/SummaryList/SummaryList.d.ts +7 -0
  234. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js +35 -0
  235. package/cjs/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -0
  236. package/cjs/extensions/forms/Value/SummaryList/SummaryListContext.d.ts +7 -0
  237. package/cjs/extensions/forms/Value/SummaryList/SummaryListContext.js +12 -0
  238. package/cjs/extensions/forms/Value/SummaryList/SummaryListContext.js.map +1 -0
  239. package/cjs/extensions/forms/Value/SummaryList/index.d.ts +2 -0
  240. package/cjs/extensions/forms/Value/SummaryList/index.js +27 -0
  241. package/cjs/extensions/forms/Value/SummaryList/index.js.map +1 -0
  242. package/cjs/extensions/forms/Value/ValueDocs.d.ts +2 -0
  243. package/cjs/extensions/forms/Value/ValueDocs.js +40 -0
  244. package/cjs/extensions/forms/Value/ValueDocs.js.map +1 -0
  245. package/cjs/extensions/forms/Value/index.d.ts +1 -0
  246. package/cjs/extensions/forms/Value/index.js +7 -0
  247. package/cjs/extensions/forms/Value/index.js.map +1 -1
  248. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +13 -3
  249. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  250. package/cjs/extensions/forms/hooks/DataValueDocs.d.ts +3 -0
  251. package/cjs/extensions/forms/hooks/DataValueDocs.js +118 -0
  252. package/cjs/extensions/forms/hooks/DataValueDocs.js.map +1 -0
  253. package/cjs/extensions/forms/hooks/useDataValue.d.ts +6 -14
  254. package/cjs/extensions/forms/hooks/useDataValue.js +90 -21
  255. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  256. package/cjs/extensions/forms/hooks/useId.js +1 -1
  257. package/cjs/extensions/forms/hooks/useId.js.map +1 -1
  258. package/cjs/extensions/forms/hooks/useMountEffect.js +1 -1
  259. package/cjs/extensions/forms/hooks/useMountEffect.js.map +1 -1
  260. package/cjs/extensions/forms/hooks/useMounted.d.ts +2 -0
  261. package/cjs/extensions/forms/hooks/useMounted.js +19 -0
  262. package/cjs/extensions/forms/hooks/useMounted.js.map +1 -0
  263. package/cjs/extensions/forms/hooks/useUnmountEffect.d.ts +4 -0
  264. package/cjs/extensions/forms/hooks/useUnmountEffect.js +14 -0
  265. package/cjs/extensions/forms/hooks/useUnmountEffect.js.map +1 -0
  266. package/cjs/extensions/forms/style/dnb-forms.css +45 -15
  267. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  268. package/cjs/extensions/forms/types.d.ts +6 -4
  269. package/cjs/extensions/forms/types.js.map +1 -1
  270. package/cjs/extensions/payment-card/utils/CardDesigns.d.ts +96 -96
  271. package/cjs/fragments/drawer-list/DrawerListHelpers.d.ts +52 -52
  272. package/cjs/shared/Context.d.ts +2 -0
  273. package/cjs/shared/Context.js.map +1 -1
  274. package/cjs/shared/Eufemia.d.ts +1 -1
  275. package/cjs/shared/Eufemia.js +2 -2
  276. package/cjs/shared/Eufemia.js.map +1 -1
  277. package/cjs/shared/Theme.d.ts +7 -1
  278. package/cjs/shared/Theme.js +20 -7
  279. package/cjs/shared/Theme.js.map +1 -1
  280. package/cjs/shared/component-helper.d.ts +1 -0
  281. package/cjs/shared/component-helper.js +10 -0
  282. package/cjs/shared/component-helper.js.map +1 -1
  283. package/cjs/shared/helpers/debounce.d.ts +37 -0
  284. package/cjs/shared/helpers/debounce.js +92 -0
  285. package/cjs/shared/helpers/debounce.js.map +1 -0
  286. package/cjs/shared/helpers/filterValidProps.d.ts +2 -2
  287. package/cjs/shared/helpers/filterValidProps.js +2 -2
  288. package/cjs/shared/helpers/filterValidProps.js.map +1 -1
  289. package/cjs/shared/helpers/useSharedState.d.ts +1 -0
  290. package/cjs/shared/helpers/useSharedState.js +52 -20
  291. package/cjs/shared/helpers/useSharedState.js.map +1 -1
  292. package/cjs/shared/helpers/withCamelCaseProps.d.ts +14 -1
  293. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  294. package/cjs/shared/helpers.d.ts +1 -25
  295. package/cjs/shared/helpers.js +15 -37
  296. package/cjs/shared/helpers.js.map +1 -1
  297. package/cjs/shared/locales/en-GB.d.ts +5 -3
  298. package/cjs/shared/locales/en-GB.js +7 -5
  299. package/cjs/shared/locales/en-GB.js.map +1 -1
  300. package/cjs/shared/locales/en-US.d.ts +5 -3
  301. package/cjs/shared/locales/index.d.ts +10 -6
  302. package/cjs/shared/locales/nb-NO.d.ts +5 -3
  303. package/cjs/shared/locales/nb-NO.js +7 -5
  304. package/cjs/shared/locales/nb-NO.js.map +1 -1
  305. package/cjs/shared/types.d.ts +5 -0
  306. package/cjs/shared/types.js.map +1 -1
  307. package/cjs/shared/useTheme.d.ts +1 -0
  308. package/cjs/style/dnb-ui-components.css +359 -171
  309. package/cjs/style/dnb-ui-components.min.css +3 -3
  310. package/cjs/style/dnb-ui-elements.css +25 -5
  311. package/cjs/style/dnb-ui-elements.min.css +1 -1
  312. package/cjs/style/dnb-ui-extensions.css +45 -15
  313. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  314. package/cjs/style/dnb-ui-forms.css +45 -15
  315. package/cjs/style/dnb-ui-forms.min.css +1 -1
  316. package/cjs/style/dnb-ui-forms.scss +1 -0
  317. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +25 -5
  318. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  319. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +421 -195
  320. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  321. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +25 -5
  322. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  323. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +45 -15
  324. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  325. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +45 -15
  326. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  327. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +26 -5
  328. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  329. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +464 -204
  330. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +8 -6
  331. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +26 -5
  332. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  333. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +45 -15
  334. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  335. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +45 -15
  336. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  337. package/cjs/style/themes/theme-ui/prism/dnb-prism-theme.d.ts +3 -3
  338. package/cjs/style/themes/theme-ui/ui-theme-basis.css +25 -5
  339. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  340. package/cjs/style/themes/theme-ui/ui-theme-components.css +421 -195
  341. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  342. package/cjs/style/themes/theme-ui/ui-theme-elements.css +25 -5
  343. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  344. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +45 -15
  345. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  346. package/cjs/style/themes/theme-ui/ui-theme-forms.css +45 -15
  347. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  348. package/cjs/style/themes/theme-ui/ui-theme-tags.css +25 -5
  349. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  350. package/components/aria-live/useAriaLive.d.ts +1 -1
  351. package/components/breadcrumb/Breadcrumb.d.ts +2 -2
  352. package/components/breadcrumb/Breadcrumb.js +3 -3
  353. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  354. package/components/breadcrumb/style/dnb-breadcrumb.css +7 -2
  355. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  356. package/components/breadcrumb/style/dnb-breadcrumb.scss +10 -2
  357. package/components/button/Button.js +2 -2
  358. package/components/button/Button.js.map +1 -1
  359. package/components/button/style/themes/dnb-button-theme-sbanken.css +23 -11
  360. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -3
  361. package/components/button/style/themes/dnb-button-theme-sbanken.scss +30 -14
  362. package/components/card/style/dnb-card.css +11 -2
  363. package/components/card/style/dnb-card.min.css +1 -1
  364. package/components/card/style/dnb-card.scss +12 -2
  365. package/components/date-picker/DatePicker.d.ts +10 -1
  366. package/components/date-picker/DatePicker.js +5 -2
  367. package/components/date-picker/DatePicker.js.map +1 -1
  368. package/components/form-label/style/dnb-form-label.css +4 -8
  369. package/components/form-label/style/dnb-form-label.min.css +1 -1
  370. package/components/form-label/style/dnb-form-label.scss +5 -8
  371. package/components/form-status/style/dnb-form-status.css +11 -0
  372. package/components/form-status/style/dnb-form-status.min.css +1 -1
  373. package/components/form-status/style/dnb-form-status.scss +11 -0
  374. package/components/global-status/GlobalStatus.d.ts +1 -1
  375. package/components/global-status/GlobalStatusProvider.d.ts +1 -1
  376. package/components/height-animation/HeightAnimationInstance.d.ts +5 -6
  377. package/components/height-animation/HeightAnimationInstance.js +12 -12
  378. package/components/height-animation/HeightAnimationInstance.js.map +1 -1
  379. package/components/height-animation/useHeightAnimation.js +11 -10
  380. package/components/height-animation/useHeightAnimation.js.map +1 -1
  381. package/components/info-card/InfoCard.d.ts +6 -0
  382. package/components/info-card/InfoCard.js +4 -2
  383. package/components/info-card/InfoCard.js.map +1 -1
  384. package/components/info-card/style/dnb-info-card.css +3 -1
  385. package/components/info-card/style/dnb-info-card.min.css +1 -1
  386. package/components/info-card/style/dnb-info-card.scss +4 -2
  387. package/components/input/Input.d.ts +9 -9
  388. package/components/input/InputDocs.d.ts +2 -0
  389. package/components/input/InputDocs.js +158 -0
  390. package/components/input/InputDocs.js.map +1 -0
  391. package/components/input/InputPassword.d.ts +6 -17
  392. package/components/input/InputPassword.js +3 -81
  393. package/components/input/InputPassword.js.map +1 -1
  394. package/components/input-masked/InputMasked.d.ts +6 -93
  395. package/components/input-masked/InputMasked.js +3 -1
  396. package/components/input-masked/InputMasked.js.map +1 -1
  397. package/components/input-masked/InputMaskedDocs.d.ts +2 -0
  398. package/components/input-masked/InputMaskedDocs.js +78 -0
  399. package/components/input-masked/InputMaskedDocs.js.map +1 -0
  400. package/components/input-masked/InputMaskedHooks.js +7 -4
  401. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  402. package/components/input-masked/MultiInputMask.js +2 -6
  403. package/components/input-masked/MultiInputMask.js.map +1 -1
  404. package/components/input-masked/style/dnb-input-masked.css +3 -0
  405. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  406. package/components/input-masked/style/dnb-input-masked.scss +5 -0
  407. package/components/number-format/NumberFormat.d.ts +1 -1
  408. package/components/number-format/NumberUtils.js +22 -14
  409. package/components/number-format/NumberUtils.js.map +1 -1
  410. package/components/pagination/InfinityScroller.d.ts +1 -1
  411. package/components/progress-indicator/ProgressIndicator.js +5 -7
  412. package/components/progress-indicator/ProgressIndicator.js.map +1 -1
  413. package/components/progress-indicator/ProgressIndicatorCircular.js +1 -1
  414. package/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
  415. package/components/progress-indicator/ProgressIndicatorLinear.js +4 -4
  416. package/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
  417. package/components/progress-indicator/style/dnb-progress-indicator.css +5 -2
  418. package/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  419. package/components/progress-indicator/style/dnb-progress-indicator.scss +5 -2
  420. package/components/slider/Slider.d.ts +1 -0
  421. package/components/slider/Slider.js +1 -0
  422. package/components/slider/Slider.js.map +1 -1
  423. package/components/slider/SliderInstance.js +18 -5
  424. package/components/slider/SliderInstance.js.map +1 -1
  425. package/components/slider/SliderMarker.d.ts +7 -0
  426. package/components/slider/SliderMarker.js +53 -0
  427. package/components/slider/SliderMarker.js.map +1 -0
  428. package/components/slider/SliderProvider.js +2 -1
  429. package/components/slider/SliderProvider.js.map +1 -1
  430. package/components/slider/style/dnb-slider.css +43 -2
  431. package/components/slider/style/dnb-slider.min.css +1 -1
  432. package/components/slider/style/dnb-slider.scss +44 -1
  433. package/components/slider/style/themes/dnb-slider-theme-sbanken.css +3 -0
  434. package/components/slider/style/themes/dnb-slider-theme-sbanken.min.css +1 -1
  435. package/components/slider/style/themes/dnb-slider-theme-sbanken.scss +4 -0
  436. package/components/slider/style/themes/dnb-slider-theme-ui.css +3 -0
  437. package/components/slider/style/themes/dnb-slider-theme-ui.min.css +1 -1
  438. package/components/slider/style/themes/dnb-slider-theme-ui.scss +5 -0
  439. package/components/slider/types.d.ts +6 -0
  440. package/components/slider/types.js.map +1 -1
  441. package/components/space/SpacingHelper.d.ts +5 -5
  442. package/components/table/Table.js +1 -1
  443. package/components/table/Table.js.map +1 -1
  444. package/components/table/TableAccordion.js +40 -54
  445. package/components/table/TableAccordion.js.map +1 -1
  446. package/components/table/TableAccordionTd.d.ts +9 -0
  447. package/{es/components/table/TableAccordionContent.js → components/table/TableAccordionTd.js} +16 -50
  448. package/components/table/TableAccordionTd.js.map +1 -0
  449. package/components/table/TableAccordionTr.d.ts +13 -0
  450. package/components/table/TableAccordionTr.js +51 -0
  451. package/components/table/TableAccordionTr.js.map +1 -0
  452. package/components/table/TableContext.d.ts +2 -2
  453. package/components/table/TableContext.js +2 -2
  454. package/components/table/TableContext.js.map +1 -1
  455. package/components/table/TableTd.d.ts +2 -2
  456. package/components/table/TableTd.js +2 -2
  457. package/components/table/TableTd.js.map +1 -1
  458. package/components/table/TableTr.d.ts +6 -1
  459. package/components/table/TableTr.js +9 -4
  460. package/components/table/TableTr.js.map +1 -1
  461. package/components/table/style/dnb-table.css +226 -139
  462. package/components/table/style/dnb-table.min.css +1 -1
  463. package/components/table/style/dnb-table.scss +60 -4
  464. package/components/table/style/table-accordion.scss +83 -98
  465. package/components/table/style/table-container.scss +9 -9
  466. package/components/table/style/table-mixins.scss +19 -2
  467. package/components/table/style/table-td.scss +82 -60
  468. package/components/table/style/table-th.scss +5 -30
  469. package/components/table/style/table-tr.scss +0 -20
  470. package/components/table/style/themes/dnb-table-theme-sbanken.css +34 -7
  471. package/components/table/style/themes/dnb-table-theme-sbanken.min.css +3 -1
  472. package/components/table/style/themes/dnb-table-theme-sbanken.scss +29 -10
  473. package/components/table/style/themes/dnb-table-theme-ui.css +14 -9
  474. package/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
  475. package/components/table/style/themes/dnb-table-theme-ui.scss +12 -22
  476. package/components/table/useTableAnimationHandler.d.ts +20 -0
  477. package/components/table/useTableAnimationHandler.js +63 -0
  478. package/components/table/useTableAnimationHandler.js.map +1 -0
  479. package/components/textarea/Textarea.d.ts +4 -10
  480. package/components/textarea/TextareaDocs.d.ts +2 -0
  481. package/components/textarea/TextareaDocs.js +98 -0
  482. package/components/textarea/TextareaDocs.js.map +1 -0
  483. package/components/textarea/style/dnb-textarea.css +1 -0
  484. package/components/textarea/style/dnb-textarea.min.css +1 -1
  485. package/components/textarea/style/dnb-textarea.scss +3 -0
  486. package/components/upload/UploadInfo.js +1 -1
  487. package/components/upload/UploadInfo.js.map +1 -1
  488. package/core/jest/jestSetupScreenshots.css +7 -0
  489. package/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +1 -0
  490. package/elements/lib.d.ts +1 -1
  491. package/elements/lists/Dl.d.ts +5 -1
  492. package/elements/lists/Dl.js +5 -4
  493. package/elements/lists/Dl.js.map +1 -1
  494. package/elements/lists/style/lists-mixins.scss +24 -1
  495. package/es/components/aria-live/useAriaLive.d.ts +1 -1
  496. package/es/components/breadcrumb/Breadcrumb.d.ts +2 -2
  497. package/es/components/breadcrumb/Breadcrumb.js +3 -3
  498. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  499. package/es/components/breadcrumb/style/dnb-breadcrumb.css +7 -2
  500. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  501. package/es/components/breadcrumb/style/dnb-breadcrumb.scss +10 -2
  502. package/es/components/button/Button.js +2 -2
  503. package/es/components/button/Button.js.map +1 -1
  504. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +23 -11
  505. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -3
  506. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +30 -14
  507. package/es/components/card/style/dnb-card.css +11 -2
  508. package/es/components/card/style/dnb-card.min.css +1 -1
  509. package/es/components/card/style/dnb-card.scss +12 -2
  510. package/es/components/date-picker/DatePicker.d.ts +10 -1
  511. package/es/components/date-picker/DatePicker.js +5 -2
  512. package/es/components/date-picker/DatePicker.js.map +1 -1
  513. package/es/components/form-label/style/dnb-form-label.css +4 -8
  514. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  515. package/es/components/form-label/style/dnb-form-label.scss +5 -8
  516. package/es/components/form-status/style/dnb-form-status.css +11 -0
  517. package/es/components/form-status/style/dnb-form-status.min.css +1 -1
  518. package/es/components/form-status/style/dnb-form-status.scss +11 -0
  519. package/es/components/global-status/GlobalStatus.d.ts +1 -1
  520. package/es/components/global-status/GlobalStatusProvider.d.ts +1 -1
  521. package/es/components/height-animation/HeightAnimationInstance.d.ts +5 -6
  522. package/es/components/height-animation/HeightAnimationInstance.js +12 -12
  523. package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
  524. package/es/components/height-animation/useHeightAnimation.js +11 -10
  525. package/es/components/height-animation/useHeightAnimation.js.map +1 -1
  526. package/es/components/info-card/InfoCard.d.ts +6 -0
  527. package/es/components/info-card/InfoCard.js +4 -2
  528. package/es/components/info-card/InfoCard.js.map +1 -1
  529. package/es/components/info-card/style/dnb-info-card.css +3 -1
  530. package/es/components/info-card/style/dnb-info-card.min.css +1 -1
  531. package/es/components/info-card/style/dnb-info-card.scss +4 -2
  532. package/es/components/input/Input.d.ts +9 -9
  533. package/es/components/input/InputDocs.d.ts +2 -0
  534. package/es/components/input/InputDocs.js +158 -0
  535. package/es/components/input/InputDocs.js.map +1 -0
  536. package/es/components/input/InputPassword.d.ts +6 -17
  537. package/es/components/input/InputPassword.js +3 -81
  538. package/es/components/input/InputPassword.js.map +1 -1
  539. package/es/components/input-masked/InputMasked.d.ts +6 -93
  540. package/es/components/input-masked/InputMasked.js +3 -1
  541. package/es/components/input-masked/InputMasked.js.map +1 -1
  542. package/es/components/input-masked/InputMaskedDocs.d.ts +2 -0
  543. package/es/components/input-masked/InputMaskedDocs.js +78 -0
  544. package/es/components/input-masked/InputMaskedDocs.js.map +1 -0
  545. package/es/components/input-masked/InputMaskedHooks.js +7 -4
  546. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  547. package/es/components/input-masked/MultiInputMask.js +2 -6
  548. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  549. package/es/components/input-masked/style/dnb-input-masked.css +3 -0
  550. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  551. package/es/components/input-masked/style/dnb-input-masked.scss +5 -0
  552. package/es/components/number-format/NumberFormat.d.ts +1 -1
  553. package/es/components/number-format/NumberUtils.js +23 -14
  554. package/es/components/number-format/NumberUtils.js.map +1 -1
  555. package/es/components/pagination/InfinityScroller.d.ts +1 -1
  556. package/es/components/progress-indicator/ProgressIndicator.js +5 -7
  557. package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
  558. package/es/components/progress-indicator/ProgressIndicatorCircular.js +1 -1
  559. package/es/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
  560. package/es/components/progress-indicator/ProgressIndicatorLinear.js +4 -4
  561. package/es/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
  562. package/es/components/progress-indicator/style/dnb-progress-indicator.css +5 -2
  563. package/es/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  564. package/es/components/progress-indicator/style/dnb-progress-indicator.scss +5 -2
  565. package/es/components/slider/Slider.d.ts +1 -0
  566. package/es/components/slider/Slider.js +1 -0
  567. package/es/components/slider/Slider.js.map +1 -1
  568. package/es/components/slider/SliderInstance.js +17 -5
  569. package/es/components/slider/SliderInstance.js.map +1 -1
  570. package/es/components/slider/SliderMarker.d.ts +7 -0
  571. package/es/components/slider/SliderMarker.js +52 -0
  572. package/es/components/slider/SliderMarker.js.map +1 -0
  573. package/es/components/slider/SliderProvider.js +2 -1
  574. package/es/components/slider/SliderProvider.js.map +1 -1
  575. package/es/components/slider/style/dnb-slider.css +43 -2
  576. package/es/components/slider/style/dnb-slider.min.css +1 -1
  577. package/es/components/slider/style/dnb-slider.scss +44 -1
  578. package/es/components/slider/style/themes/dnb-slider-theme-sbanken.css +3 -0
  579. package/es/components/slider/style/themes/dnb-slider-theme-sbanken.min.css +1 -1
  580. package/es/components/slider/style/themes/dnb-slider-theme-sbanken.scss +4 -0
  581. package/es/components/slider/style/themes/dnb-slider-theme-ui.css +3 -0
  582. package/es/components/slider/style/themes/dnb-slider-theme-ui.min.css +1 -1
  583. package/es/components/slider/style/themes/dnb-slider-theme-ui.scss +5 -0
  584. package/es/components/slider/types.d.ts +6 -0
  585. package/es/components/slider/types.js.map +1 -1
  586. package/es/components/space/SpacingHelper.d.ts +5 -5
  587. package/es/components/table/Table.js +1 -1
  588. package/es/components/table/Table.js.map +1 -1
  589. package/es/components/table/TableAccordion.js +40 -55
  590. package/es/components/table/TableAccordion.js.map +1 -1
  591. package/es/components/table/TableAccordionTd.d.ts +9 -0
  592. package/{components/table/TableAccordionContent.js → es/components/table/TableAccordionTd.js} +16 -51
  593. package/es/components/table/TableAccordionTd.js.map +1 -0
  594. package/es/components/table/TableAccordionTr.d.ts +13 -0
  595. package/es/components/table/TableAccordionTr.js +51 -0
  596. package/es/components/table/TableAccordionTr.js.map +1 -0
  597. package/es/components/table/TableContext.d.ts +2 -2
  598. package/es/components/table/TableContext.js +2 -2
  599. package/es/components/table/TableContext.js.map +1 -1
  600. package/es/components/table/TableTd.d.ts +2 -2
  601. package/es/components/table/TableTd.js +2 -2
  602. package/es/components/table/TableTd.js.map +1 -1
  603. package/es/components/table/TableTr.d.ts +6 -1
  604. package/es/components/table/TableTr.js +9 -4
  605. package/es/components/table/TableTr.js.map +1 -1
  606. package/es/components/table/style/dnb-table.css +226 -139
  607. package/es/components/table/style/dnb-table.min.css +1 -1
  608. package/es/components/table/style/dnb-table.scss +60 -4
  609. package/es/components/table/style/table-accordion.scss +83 -98
  610. package/es/components/table/style/table-container.scss +9 -9
  611. package/es/components/table/style/table-mixins.scss +19 -2
  612. package/es/components/table/style/table-td.scss +82 -60
  613. package/es/components/table/style/table-th.scss +5 -30
  614. package/es/components/table/style/table-tr.scss +0 -20
  615. package/es/components/table/style/themes/dnb-table-theme-sbanken.css +34 -7
  616. package/es/components/table/style/themes/dnb-table-theme-sbanken.min.css +3 -1
  617. package/es/components/table/style/themes/dnb-table-theme-sbanken.scss +29 -10
  618. package/es/components/table/style/themes/dnb-table-theme-ui.css +14 -9
  619. package/es/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
  620. package/es/components/table/style/themes/dnb-table-theme-ui.scss +12 -22
  621. package/es/components/table/useTableAnimationHandler.d.ts +20 -0
  622. package/es/components/table/useTableAnimationHandler.js +62 -0
  623. package/es/components/table/useTableAnimationHandler.js.map +1 -0
  624. package/es/components/textarea/Textarea.d.ts +4 -10
  625. package/es/components/textarea/TextareaDocs.d.ts +2 -0
  626. package/es/components/textarea/TextareaDocs.js +98 -0
  627. package/es/components/textarea/TextareaDocs.js.map +1 -0
  628. package/es/components/textarea/style/dnb-textarea.css +1 -0
  629. package/es/components/textarea/style/dnb-textarea.min.css +1 -1
  630. package/es/components/textarea/style/dnb-textarea.scss +3 -0
  631. package/es/components/upload/UploadInfo.js +1 -1
  632. package/es/components/upload/UploadInfo.js.map +1 -1
  633. package/es/core/jest/jestSetupScreenshots.css +7 -0
  634. package/es/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +1 -0
  635. package/es/elements/lib.d.ts +1 -1
  636. package/es/elements/lists/Dl.d.ts +5 -1
  637. package/es/elements/lists/Dl.js +5 -4
  638. package/es/elements/lists/Dl.js.map +1 -1
  639. package/es/elements/lists/style/lists-mixins.scss +24 -1
  640. package/es/extensions/forms/DataContext/Context.d.ts +1 -2
  641. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  642. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +1 -2
  643. package/es/extensions/forms/DataContext/Provider/Provider.js +54 -40
  644. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  645. package/es/extensions/forms/Field/Currency/Currency.js +1 -1
  646. package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
  647. package/es/extensions/forms/Field/Expiry/Expiry.js +1 -0
  648. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  649. package/es/extensions/forms/Field/FieldDocs.d.ts +3 -0
  650. package/es/extensions/forms/Field/FieldDocs.js +8 -0
  651. package/es/extensions/forms/Field/FieldDocs.js.map +1 -0
  652. package/es/extensions/forms/Field/Number/Number.d.ts +1 -0
  653. package/es/extensions/forms/Field/Number/Number.js +13 -7
  654. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  655. package/es/extensions/forms/Field/Number/NumberDocs.d.ts +2 -0
  656. package/es/extensions/forms/Field/Number/NumberDocs.js +85 -0
  657. package/es/extensions/forms/Field/Number/NumberDocs.js.map +1 -0
  658. package/es/extensions/forms/Field/Number/style/dnb-number.css +3 -1
  659. package/es/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
  660. package/es/extensions/forms/Field/Number/style/dnb-number.scss +4 -1
  661. package/es/extensions/forms/Field/Password/Password.d.ts +45 -0
  662. package/es/extensions/forms/Field/Password/Password.js +99 -0
  663. package/es/extensions/forms/Field/Password/Password.js.map +1 -0
  664. package/es/extensions/forms/Field/Password/index.d.ts +2 -0
  665. package/es/extensions/forms/Field/Password/index.js +3 -0
  666. package/es/extensions/forms/Field/Password/index.js.map +1 -0
  667. package/es/extensions/forms/Field/Password/style/dnb-password.css +6 -0
  668. package/es/extensions/forms/Field/Password/style/dnb-password.min.css +1 -0
  669. package/es/extensions/forms/Field/Password/style/dnb-password.scss +10 -0
  670. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +4 -5
  671. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  672. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -12
  673. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  674. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -11
  675. package/es/extensions/forms/Field/Selection/Selection.d.ts +0 -1
  676. package/es/extensions/forms/Field/Selection/Selection.js +2 -11
  677. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  678. package/es/extensions/forms/Field/String/String.d.ts +20 -9
  679. package/es/extensions/forms/Field/String/String.js +52 -31
  680. package/es/extensions/forms/Field/String/String.js.map +1 -1
  681. package/es/extensions/forms/Field/String/StringDocs.d.ts +2 -0
  682. package/es/extensions/forms/Field/String/StringDocs.js +99 -0
  683. package/es/extensions/forms/Field/String/StringDocs.js.map +1 -0
  684. package/es/extensions/forms/Field/Toggle/Toggle.js +1 -1
  685. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  686. package/es/extensions/forms/Field/index.d.ts +1 -0
  687. package/es/extensions/forms/Field/index.js +1 -0
  688. package/es/extensions/forms/Field/index.js.map +1 -1
  689. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +8 -3
  690. package/es/extensions/forms/FieldBlock/FieldBlock.js +195 -58
  691. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  692. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +39 -6
  693. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  694. package/es/extensions/forms/FieldBlock/FieldBlockDocs.d.ts +2 -0
  695. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +53 -0
  696. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -0
  697. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +29 -2
  698. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  699. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +28 -0
  700. package/es/extensions/forms/Form/Appearance/Appearance.d.ts +7 -0
  701. package/es/extensions/forms/Form/Appearance/Appearance.js +30 -0
  702. package/es/extensions/forms/Form/Appearance/Appearance.js.map +1 -0
  703. package/es/extensions/forms/Form/Appearance/AppearanceDocs.d.ts +2 -0
  704. package/es/extensions/forms/Form/Appearance/AppearanceDocs.js +8 -0
  705. package/es/extensions/forms/Form/Appearance/AppearanceDocs.js.map +1 -0
  706. package/es/extensions/forms/Form/Appearance/index.d.ts +2 -0
  707. package/es/extensions/forms/Form/Appearance/index.js +3 -0
  708. package/es/extensions/forms/Form/Appearance/index.js.map +1 -0
  709. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +6 -0
  710. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  711. package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.scss +10 -2
  712. package/es/extensions/forms/Form/data-context/useData.d.ts +1 -1
  713. package/es/extensions/forms/Form/data-context/useData.js +3 -19
  714. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  715. package/es/extensions/forms/Form/data-context/useError.d.ts +2 -1
  716. package/es/extensions/forms/Form/data-context/useError.js +4 -2
  717. package/es/extensions/forms/Form/data-context/useError.js.map +1 -1
  718. package/es/extensions/forms/Form/index.d.ts +1 -0
  719. package/es/extensions/forms/Form/index.js +1 -0
  720. package/es/extensions/forms/Form/index.js.map +1 -1
  721. package/es/extensions/forms/Value/Currency/Currency.js +2 -2
  722. package/es/extensions/forms/Value/Currency/Currency.js.map +1 -1
  723. package/es/extensions/forms/Value/Number/Number.d.ts +2 -2
  724. package/es/extensions/forms/Value/Number/Number.js +1 -1
  725. package/es/extensions/forms/Value/Number/Number.js.map +1 -1
  726. package/es/extensions/forms/Value/SummaryList/SummaryList.d.ts +7 -0
  727. package/es/extensions/forms/Value/SummaryList/SummaryList.js +26 -0
  728. package/es/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -0
  729. package/es/extensions/forms/Value/SummaryList/SummaryListContext.d.ts +7 -0
  730. package/es/extensions/forms/Value/SummaryList/SummaryListContext.js +4 -0
  731. package/es/extensions/forms/Value/SummaryList/SummaryListContext.js.map +1 -0
  732. package/es/extensions/forms/Value/SummaryList/index.d.ts +2 -0
  733. package/es/extensions/forms/Value/SummaryList/index.js +3 -0
  734. package/es/extensions/forms/Value/SummaryList/index.js.map +1 -0
  735. package/es/extensions/forms/Value/ValueDocs.d.ts +2 -0
  736. package/es/extensions/forms/Value/ValueDocs.js +33 -0
  737. package/es/extensions/forms/Value/ValueDocs.js.map +1 -0
  738. package/es/extensions/forms/Value/index.d.ts +1 -0
  739. package/es/extensions/forms/Value/index.js +1 -0
  740. package/es/extensions/forms/Value/index.js.map +1 -1
  741. package/es/extensions/forms/ValueBlock/ValueBlock.js +12 -4
  742. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  743. package/es/extensions/forms/hooks/DataValueDocs.d.ts +3 -0
  744. package/es/extensions/forms/hooks/DataValueDocs.js +110 -0
  745. package/es/extensions/forms/hooks/DataValueDocs.js.map +1 -0
  746. package/es/extensions/forms/hooks/useDataValue.d.ts +6 -14
  747. package/es/extensions/forms/hooks/useDataValue.js +92 -23
  748. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  749. package/es/extensions/forms/hooks/useId.js +1 -1
  750. package/es/extensions/forms/hooks/useId.js.map +1 -1
  751. package/es/extensions/forms/hooks/useMountEffect.js +1 -1
  752. package/es/extensions/forms/hooks/useMountEffect.js.map +1 -1
  753. package/es/extensions/forms/hooks/useMounted.d.ts +2 -0
  754. package/es/extensions/forms/hooks/useMounted.js +14 -0
  755. package/es/extensions/forms/hooks/useMounted.js.map +1 -0
  756. package/es/extensions/forms/hooks/useUnmountEffect.d.ts +4 -0
  757. package/es/extensions/forms/hooks/useUnmountEffect.js +9 -0
  758. package/es/extensions/forms/hooks/useUnmountEffect.js.map +1 -0
  759. package/es/extensions/forms/style/dnb-forms.css +45 -15
  760. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  761. package/es/extensions/forms/types.d.ts +6 -4
  762. package/es/extensions/forms/types.js.map +1 -1
  763. package/es/extensions/payment-card/utils/CardDesigns.d.ts +96 -96
  764. package/es/fragments/drawer-list/DrawerListHelpers.d.ts +52 -52
  765. package/es/shared/Context.d.ts +2 -0
  766. package/es/shared/Context.js.map +1 -1
  767. package/es/shared/Eufemia.d.ts +1 -1
  768. package/es/shared/Eufemia.js +2 -2
  769. package/es/shared/Eufemia.js.map +1 -1
  770. package/es/shared/Theme.d.ts +7 -1
  771. package/es/shared/Theme.js +20 -7
  772. package/es/shared/Theme.js.map +1 -1
  773. package/es/shared/component-helper.d.ts +1 -0
  774. package/es/shared/component-helper.js +6 -0
  775. package/es/shared/component-helper.js.map +1 -1
  776. package/es/shared/helpers/debounce.d.ts +37 -0
  777. package/es/shared/helpers/debounce.js +76 -0
  778. package/es/shared/helpers/debounce.js.map +1 -0
  779. package/es/shared/helpers/filterValidProps.d.ts +2 -2
  780. package/es/shared/helpers/filterValidProps.js +2 -2
  781. package/es/shared/helpers/filterValidProps.js.map +1 -1
  782. package/es/shared/helpers/useSharedState.d.ts +1 -0
  783. package/es/shared/helpers/useSharedState.js +49 -20
  784. package/es/shared/helpers/useSharedState.js.map +1 -1
  785. package/es/shared/helpers/withCamelCaseProps.d.ts +14 -1
  786. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  787. package/es/shared/helpers.d.ts +1 -25
  788. package/es/shared/helpers.js +1 -29
  789. package/es/shared/helpers.js.map +1 -1
  790. package/es/shared/locales/en-GB.d.ts +5 -3
  791. package/es/shared/locales/en-GB.js +7 -5
  792. package/es/shared/locales/en-GB.js.map +1 -1
  793. package/es/shared/locales/en-US.d.ts +5 -3
  794. package/es/shared/locales/index.d.ts +10 -6
  795. package/es/shared/locales/nb-NO.d.ts +5 -3
  796. package/es/shared/locales/nb-NO.js +7 -5
  797. package/es/shared/locales/nb-NO.js.map +1 -1
  798. package/es/shared/types.d.ts +5 -0
  799. package/es/shared/types.js.map +1 -1
  800. package/es/shared/useTheme.d.ts +1 -0
  801. package/es/style/dnb-ui-components.css +359 -171
  802. package/es/style/dnb-ui-components.min.css +3 -3
  803. package/es/style/dnb-ui-elements.css +25 -5
  804. package/es/style/dnb-ui-elements.min.css +1 -1
  805. package/es/style/dnb-ui-extensions.css +45 -15
  806. package/es/style/dnb-ui-extensions.min.css +1 -1
  807. package/es/style/dnb-ui-forms.css +45 -15
  808. package/es/style/dnb-ui-forms.min.css +1 -1
  809. package/es/style/dnb-ui-forms.scss +1 -0
  810. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +25 -5
  811. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  812. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +421 -195
  813. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  814. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +25 -5
  815. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  816. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +45 -15
  817. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  818. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +45 -15
  819. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  820. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +26 -5
  821. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  822. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +464 -204
  823. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +8 -6
  824. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +26 -5
  825. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  826. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +45 -15
  827. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  828. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +45 -15
  829. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  830. package/es/style/themes/theme-ui/prism/dnb-prism-theme.d.ts +3 -3
  831. package/es/style/themes/theme-ui/ui-theme-basis.css +25 -5
  832. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  833. package/es/style/themes/theme-ui/ui-theme-components.css +421 -195
  834. package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  835. package/es/style/themes/theme-ui/ui-theme-elements.css +25 -5
  836. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  837. package/es/style/themes/theme-ui/ui-theme-extensions.css +45 -15
  838. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  839. package/es/style/themes/theme-ui/ui-theme-forms.css +45 -15
  840. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  841. package/es/style/themes/theme-ui/ui-theme-tags.css +25 -5
  842. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  843. package/esm/dnb-ui-basis.min.mjs +1 -1
  844. package/esm/dnb-ui-components.min.mjs +1 -1
  845. package/esm/dnb-ui-elements.min.mjs +1 -1
  846. package/esm/dnb-ui-extensions.min.mjs +3 -3
  847. package/esm/dnb-ui-lib.min.mjs +1 -1
  848. package/extensions/forms/DataContext/Context.d.ts +1 -2
  849. package/extensions/forms/DataContext/Context.js.map +1 -1
  850. package/extensions/forms/DataContext/Provider/Provider.d.ts +1 -2
  851. package/extensions/forms/DataContext/Provider/Provider.js +54 -40
  852. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  853. package/extensions/forms/Field/Currency/Currency.js +1 -1
  854. package/extensions/forms/Field/Currency/Currency.js.map +1 -1
  855. package/extensions/forms/Field/Expiry/Expiry.js +1 -0
  856. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  857. package/extensions/forms/Field/FieldDocs.d.ts +3 -0
  858. package/extensions/forms/Field/FieldDocs.js +8 -0
  859. package/extensions/forms/Field/FieldDocs.js.map +1 -0
  860. package/extensions/forms/Field/Number/Number.d.ts +1 -0
  861. package/extensions/forms/Field/Number/Number.js +13 -7
  862. package/extensions/forms/Field/Number/Number.js.map +1 -1
  863. package/extensions/forms/Field/Number/NumberDocs.d.ts +2 -0
  864. package/extensions/forms/Field/Number/NumberDocs.js +85 -0
  865. package/extensions/forms/Field/Number/NumberDocs.js.map +1 -0
  866. package/extensions/forms/Field/Number/style/dnb-number.css +3 -1
  867. package/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
  868. package/extensions/forms/Field/Number/style/dnb-number.scss +4 -1
  869. package/extensions/forms/Field/Password/Password.d.ts +45 -0
  870. package/extensions/forms/Field/Password/Password.js +99 -0
  871. package/extensions/forms/Field/Password/Password.js.map +1 -0
  872. package/extensions/forms/Field/Password/index.d.ts +2 -0
  873. package/extensions/forms/Field/Password/index.js +3 -0
  874. package/extensions/forms/Field/Password/index.js.map +1 -0
  875. package/extensions/forms/Field/Password/style/dnb-password.css +6 -0
  876. package/extensions/forms/Field/Password/style/dnb-password.min.css +1 -0
  877. package/extensions/forms/Field/Password/style/dnb-password.scss +10 -0
  878. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +4 -5
  879. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  880. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -12
  881. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  882. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +0 -11
  883. package/extensions/forms/Field/Selection/Selection.d.ts +0 -1
  884. package/extensions/forms/Field/Selection/Selection.js +2 -11
  885. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  886. package/extensions/forms/Field/String/String.d.ts +20 -9
  887. package/extensions/forms/Field/String/String.js +52 -31
  888. package/extensions/forms/Field/String/String.js.map +1 -1
  889. package/extensions/forms/Field/String/StringDocs.d.ts +2 -0
  890. package/extensions/forms/Field/String/StringDocs.js +99 -0
  891. package/extensions/forms/Field/String/StringDocs.js.map +1 -0
  892. package/extensions/forms/Field/Toggle/Toggle.js +1 -1
  893. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  894. package/extensions/forms/Field/index.d.ts +1 -0
  895. package/extensions/forms/Field/index.js +1 -0
  896. package/extensions/forms/Field/index.js.map +1 -1
  897. package/extensions/forms/FieldBlock/FieldBlock.d.ts +8 -3
  898. package/extensions/forms/FieldBlock/FieldBlock.js +203 -64
  899. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  900. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +39 -6
  901. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  902. package/extensions/forms/FieldBlock/FieldBlockDocs.d.ts +2 -0
  903. package/extensions/forms/FieldBlock/FieldBlockDocs.js +53 -0
  904. package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -0
  905. package/extensions/forms/FieldBlock/style/dnb-field-block.css +29 -2
  906. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  907. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +28 -0
  908. package/extensions/forms/Form/Appearance/Appearance.d.ts +7 -0
  909. package/extensions/forms/Form/Appearance/Appearance.js +30 -0
  910. package/extensions/forms/Form/Appearance/Appearance.js.map +1 -0
  911. package/extensions/forms/Form/Appearance/AppearanceDocs.d.ts +2 -0
  912. package/extensions/forms/Form/Appearance/AppearanceDocs.js +8 -0
  913. package/extensions/forms/Form/Appearance/AppearanceDocs.js.map +1 -0
  914. package/extensions/forms/Form/Appearance/index.d.ts +2 -0
  915. package/extensions/forms/Form/Appearance/index.js +3 -0
  916. package/extensions/forms/Form/Appearance/index.js.map +1 -0
  917. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +6 -0
  918. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
  919. package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.scss +10 -2
  920. package/extensions/forms/Form/data-context/useData.d.ts +1 -1
  921. package/extensions/forms/Form/data-context/useData.js +3 -19
  922. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  923. package/extensions/forms/Form/data-context/useError.d.ts +2 -1
  924. package/extensions/forms/Form/data-context/useError.js +4 -2
  925. package/extensions/forms/Form/data-context/useError.js.map +1 -1
  926. package/extensions/forms/Form/index.d.ts +1 -0
  927. package/extensions/forms/Form/index.js +1 -0
  928. package/extensions/forms/Form/index.js.map +1 -1
  929. package/extensions/forms/Value/Currency/Currency.js +2 -2
  930. package/extensions/forms/Value/Currency/Currency.js.map +1 -1
  931. package/extensions/forms/Value/Number/Number.d.ts +2 -2
  932. package/extensions/forms/Value/Number/Number.js +1 -1
  933. package/extensions/forms/Value/Number/Number.js.map +1 -1
  934. package/extensions/forms/Value/SummaryList/SummaryList.d.ts +7 -0
  935. package/extensions/forms/Value/SummaryList/SummaryList.js +26 -0
  936. package/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -0
  937. package/extensions/forms/Value/SummaryList/SummaryListContext.d.ts +7 -0
  938. package/extensions/forms/Value/SummaryList/SummaryListContext.js +4 -0
  939. package/extensions/forms/Value/SummaryList/SummaryListContext.js.map +1 -0
  940. package/extensions/forms/Value/SummaryList/index.d.ts +2 -0
  941. package/extensions/forms/Value/SummaryList/index.js +3 -0
  942. package/extensions/forms/Value/SummaryList/index.js.map +1 -0
  943. package/extensions/forms/Value/ValueDocs.d.ts +2 -0
  944. package/extensions/forms/Value/ValueDocs.js +33 -0
  945. package/extensions/forms/Value/ValueDocs.js.map +1 -0
  946. package/extensions/forms/Value/index.d.ts +1 -0
  947. package/extensions/forms/Value/index.js +1 -0
  948. package/extensions/forms/Value/index.js.map +1 -1
  949. package/extensions/forms/ValueBlock/ValueBlock.js +12 -4
  950. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  951. package/extensions/forms/hooks/DataValueDocs.d.ts +3 -0
  952. package/extensions/forms/hooks/DataValueDocs.js +110 -0
  953. package/extensions/forms/hooks/DataValueDocs.js.map +1 -0
  954. package/extensions/forms/hooks/useDataValue.d.ts +6 -14
  955. package/extensions/forms/hooks/useDataValue.js +92 -23
  956. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  957. package/extensions/forms/hooks/useId.js +1 -1
  958. package/extensions/forms/hooks/useId.js.map +1 -1
  959. package/extensions/forms/hooks/useMountEffect.js +1 -1
  960. package/extensions/forms/hooks/useMountEffect.js.map +1 -1
  961. package/extensions/forms/hooks/useMounted.d.ts +2 -0
  962. package/extensions/forms/hooks/useMounted.js +14 -0
  963. package/extensions/forms/hooks/useMounted.js.map +1 -0
  964. package/extensions/forms/hooks/useUnmountEffect.d.ts +4 -0
  965. package/extensions/forms/hooks/useUnmountEffect.js +9 -0
  966. package/extensions/forms/hooks/useUnmountEffect.js.map +1 -0
  967. package/extensions/forms/style/dnb-forms.css +45 -15
  968. package/extensions/forms/style/dnb-forms.min.css +1 -1
  969. package/extensions/forms/types.d.ts +6 -4
  970. package/extensions/forms/types.js.map +1 -1
  971. package/extensions/payment-card/utils/CardDesigns.d.ts +96 -96
  972. package/fragments/drawer-list/DrawerListHelpers.d.ts +52 -52
  973. package/package.json +1 -1
  974. package/shared/Context.d.ts +2 -0
  975. package/shared/Context.js.map +1 -1
  976. package/shared/Eufemia.d.ts +1 -1
  977. package/shared/Eufemia.js +2 -2
  978. package/shared/Eufemia.js.map +1 -1
  979. package/shared/Theme.d.ts +7 -1
  980. package/shared/Theme.js +20 -7
  981. package/shared/Theme.js.map +1 -1
  982. package/shared/component-helper.d.ts +1 -0
  983. package/shared/component-helper.js +9 -0
  984. package/shared/component-helper.js.map +1 -1
  985. package/shared/helpers/debounce.d.ts +37 -0
  986. package/shared/helpers/debounce.js +83 -0
  987. package/shared/helpers/debounce.js.map +1 -0
  988. package/shared/helpers/filterValidProps.d.ts +2 -2
  989. package/shared/helpers/filterValidProps.js +2 -2
  990. package/shared/helpers/filterValidProps.js.map +1 -1
  991. package/shared/helpers/useSharedState.d.ts +1 -0
  992. package/shared/helpers/useSharedState.js +49 -20
  993. package/shared/helpers/useSharedState.js.map +1 -1
  994. package/shared/helpers/withCamelCaseProps.d.ts +14 -1
  995. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  996. package/shared/helpers.d.ts +1 -25
  997. package/shared/helpers.js +3 -36
  998. package/shared/helpers.js.map +1 -1
  999. package/shared/locales/en-GB.d.ts +5 -3
  1000. package/shared/locales/en-GB.js +7 -5
  1001. package/shared/locales/en-GB.js.map +1 -1
  1002. package/shared/locales/en-US.d.ts +5 -3
  1003. package/shared/locales/index.d.ts +10 -6
  1004. package/shared/locales/nb-NO.d.ts +5 -3
  1005. package/shared/locales/nb-NO.js +7 -5
  1006. package/shared/locales/nb-NO.js.map +1 -1
  1007. package/shared/types.d.ts +5 -0
  1008. package/shared/types.js.map +1 -1
  1009. package/shared/useTheme.d.ts +1 -0
  1010. package/style/dnb-ui-components.css +359 -171
  1011. package/style/dnb-ui-components.min.css +3 -3
  1012. package/style/dnb-ui-elements.css +25 -5
  1013. package/style/dnb-ui-elements.min.css +1 -1
  1014. package/style/dnb-ui-extensions.css +45 -15
  1015. package/style/dnb-ui-extensions.min.css +1 -1
  1016. package/style/dnb-ui-forms.css +45 -15
  1017. package/style/dnb-ui-forms.min.css +1 -1
  1018. package/style/dnb-ui-forms.scss +1 -0
  1019. package/style/themes/theme-eiendom/eiendom-theme-basis.css +25 -5
  1020. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1021. package/style/themes/theme-eiendom/eiendom-theme-components.css +421 -195
  1022. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  1023. package/style/themes/theme-eiendom/eiendom-theme-elements.css +25 -5
  1024. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  1025. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +45 -15
  1026. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1027. package/style/themes/theme-eiendom/eiendom-theme-forms.css +45 -15
  1028. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  1029. package/style/themes/theme-sbanken/sbanken-theme-basis.css +26 -5
  1030. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1031. package/style/themes/theme-sbanken/sbanken-theme-components.css +464 -204
  1032. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +8 -6
  1033. package/style/themes/theme-sbanken/sbanken-theme-elements.css +26 -5
  1034. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  1035. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +45 -15
  1036. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1037. package/style/themes/theme-sbanken/sbanken-theme-forms.css +45 -15
  1038. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  1039. package/style/themes/theme-ui/prism/dnb-prism-theme.d.ts +3 -3
  1040. package/style/themes/theme-ui/ui-theme-basis.css +25 -5
  1041. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1042. package/style/themes/theme-ui/ui-theme-components.css +421 -195
  1043. package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  1044. package/style/themes/theme-ui/ui-theme-elements.css +25 -5
  1045. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1046. package/style/themes/theme-ui/ui-theme-extensions.css +45 -15
  1047. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1048. package/style/themes/theme-ui/ui-theme-forms.css +45 -15
  1049. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  1050. package/style/themes/theme-ui/ui-theme-tags.css +25 -5
  1051. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1052. package/umd/dnb-ui-basis.min.js +1 -1
  1053. package/umd/dnb-ui-components.min.js +1 -1
  1054. package/umd/dnb-ui-elements.min.js +1 -1
  1055. package/umd/dnb-ui-extensions.min.js +3 -3
  1056. package/umd/dnb-ui-lib.min.js +1 -1
  1057. package/cjs/components/table/TableAccordionContent.d.ts +0 -18
  1058. package/cjs/components/table/TableAccordionContent.js.map +0 -1
  1059. package/components/table/TableAccordionContent.d.ts +0 -18
  1060. package/components/table/TableAccordionContent.js.map +0 -1
  1061. package/es/components/table/TableAccordionContent.d.ts +0 -18
  1062. package/es/components/table/TableAccordionContent.js.map +0 -1
@@ -12,14 +12,16 @@ var _utils = require("../utils");
12
12
  var _ajv = require("../utils/ajv");
13
13
  var _types = require("../types");
14
14
  var _DataContext = require("../DataContext");
15
+ var _componentHelper = require("../../../shared/component-helper");
15
16
  var _Context = _interopRequireDefault(require("../../../shared/Context"));
16
17
  var _FieldBlockContext = _interopRequireDefault(require("../FieldBlock/FieldBlockContext"));
17
18
  var _IterateElementContext = _interopRequireDefault(require("../Iterate/IterateElementContext"));
18
19
  var _useMountEffect = _interopRequireDefault(require("./useMountEffect"));
20
+ var _useUnmountEffect = _interopRequireDefault(require("./useUnmountEffect"));
19
21
  var _useUpdateEffect = _interopRequireDefault(require("./useUpdateEffect"));
20
22
  var _useProcessManager = _interopRequireDefault(require("./useProcessManager"));
21
23
  var _useId = _interopRequireDefault(require("./useId"));
22
- const _excluded = ["name", "error", "hasError", "isChanged", "autoComplete", "ariaAttributes", "dataContext", "setHasFocus", "handleFocus", "handleBlur", "handleChange", "updateValue", "forceUpdate"];
24
+ const _excluded = ["name", "error", "warning", "info", "hasError", "isChanged", "autoComplete", "ariaAttributes", "dataContext", "setHasFocus", "handleFocus", "handleBlur", "handleChange", "updateValue", "forceUpdate"];
23
25
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
26
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
25
27
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -40,6 +42,8 @@ function useDataValue(props) {
40
42
  itemPath,
41
43
  emptyValue,
42
44
  required,
45
+ info,
46
+ warning,
43
47
  error: errorProp,
44
48
  errorMessages,
45
49
  onFocus,
@@ -97,8 +101,8 @@ function useDataValue(props) {
97
101
  const dataContextError = path ? dataContextErrors === null || dataContextErrors === void 0 ? void 0 : dataContextErrors[path] : undefined;
98
102
  const inFieldBlock = Boolean(fieldBlockContext);
99
103
  const {
100
- setError: setFieldBlockError,
101
- setShowError: setShowFieldBlockError
104
+ setFieldState: setFieldBlockState,
105
+ showFieldError: showFieldBlockError
102
106
  } = fieldBlockContext !== null && fieldBlockContext !== void 0 ? fieldBlockContext : {};
103
107
  const inIterate = Boolean(iterateElementContext);
104
108
  const {
@@ -151,12 +155,12 @@ function useDataValue(props) {
151
155
  const schemaValidatorRef = (0, _react.useRef)(schema ? (_dataContext$ajvInsta = dataContext.ajvInstance) === null || _dataContext$ajvInsta === void 0 ? void 0 : _dataContext$ajvInsta.compile(schema) : undefined);
152
156
  const showError = (0, _react.useCallback)(() => {
153
157
  showErrorRef.current = true;
154
- setShowFieldBlockError === null || setShowFieldBlockError === void 0 ? void 0 : setShowFieldBlockError(path !== null && path !== void 0 ? path : id, true);
155
- }, [path, id, setShowFieldBlockError]);
158
+ showFieldBlockError === null || showFieldBlockError === void 0 ? void 0 : showFieldBlockError(identifier, true);
159
+ }, [showFieldBlockError, identifier]);
156
160
  const hideError = (0, _react.useCallback)(() => {
157
161
  showErrorRef.current = false;
158
- setShowFieldBlockError === null || setShowFieldBlockError === void 0 ? void 0 : setShowFieldBlockError(path !== null && path !== void 0 ? path : id, false);
159
- }, [path, id, setShowFieldBlockError]);
162
+ showFieldBlockError === null || showFieldBlockError === void 0 ? void 0 : showFieldBlockError(identifier, false);
163
+ }, [showFieldBlockError, identifier]);
160
164
  const errorMessagesRef = (0, _react.useRef)(null);
161
165
  errorMessagesRef.current = (0, _react.useMemo)(() => {
162
166
  return _objectSpread({
@@ -188,6 +192,7 @@ function useDataValue(props) {
188
192
  }
189
193
  return error;
190
194
  }, []);
195
+ const stateId = (0, _useId.default)();
191
196
  const persistErrorState = (0, _react.useCallback)(errorArg => {
192
197
  const error = prepareError(errorArg);
193
198
  if (!(0, _utils.errorChanged)(error, localErrorRef.current)) {
@@ -195,9 +200,15 @@ function useDataValue(props) {
195
200
  }
196
201
  localErrorRef.current = error;
197
202
  dataContextSetValueWithError === null || dataContextSetValueWithError === void 0 ? void 0 : dataContextSetValueWithError(identifier, Boolean(error));
198
- setFieldBlockError === null || setFieldBlockError === void 0 ? void 0 : setFieldBlockError(path !== null && path !== void 0 ? path : id, error);
203
+ setFieldBlockState === null || setFieldBlockState === void 0 ? void 0 : setFieldBlockState({
204
+ stateId,
205
+ identifier,
206
+ type: 'error',
207
+ state: error,
208
+ showInitially: Boolean(inFieldBlock && validateInitially)
209
+ });
199
210
  forceUpdate();
200
- }, [path, identifier, id, prepareError, dataContextSetValueWithError, setFieldBlockError, forceUpdate]);
211
+ }, [stateId, prepareError, dataContextSetValueWithError, identifier, setFieldBlockState, inFieldBlock, validateInitially]);
201
212
  const clearErrorState = (0, _react.useCallback)(() => persistErrorState(undefined), [persistErrorState]);
202
213
  const validateValue = (0, _react.useCallback)(async () => {
203
214
  const isProcessActive = startProcess();
@@ -336,30 +347,86 @@ function useDataValue(props) {
336
347
  (0, _useMountEffect.default)(() => {
337
348
  dataContext === null || dataContext === void 0 ? void 0 : dataContext.handleMountField(identifier);
338
349
  validateValue();
339
- if (showErrorInitially) {
340
- showError();
350
+ });
351
+ (0, _useUnmountEffect.default)(() => {
352
+ dataContext === null || dataContext === void 0 ? void 0 : dataContext.handleUnMountField(identifier);
353
+ });
354
+ (0, _useMountEffect.default)(() => {
355
+ if (inFieldBlock) {
356
+ if (errorProp) {
357
+ setFieldBlockState === null || setFieldBlockState === void 0 ? void 0 : setFieldBlockState({
358
+ identifier,
359
+ type: 'error',
360
+ state: errorProp,
361
+ showInitially: true,
362
+ show: true
363
+ });
364
+ }
365
+ if (warning) {
366
+ setFieldBlockState === null || setFieldBlockState === void 0 ? void 0 : setFieldBlockState({
367
+ identifier,
368
+ type: 'warning',
369
+ state: warning,
370
+ showInitially: true,
371
+ show: true
372
+ });
373
+ }
374
+ if (info) {
375
+ setFieldBlockState === null || setFieldBlockState === void 0 ? void 0 : setFieldBlockState({
376
+ identifier,
377
+ type: 'info',
378
+ state: info,
379
+ showInitially: true,
380
+ show: true
381
+ });
382
+ }
383
+ return () => {
384
+ if (fieldBlockContext.mountedFieldsRef) {
385
+ fieldBlockContext.mountedFieldsRef.current[identifier] = true;
386
+ }
387
+ };
341
388
  }
342
- return () => {
343
- dataContext === null || dataContext === void 0 ? void 0 : dataContext.handleUnMountField(identifier);
344
- };
345
389
  });
346
390
  const error = showErrorRef.current ? (_ref3 = errorProp !== null && errorProp !== void 0 ? errorProp : localErrorRef.current) !== null && _ref3 !== void 0 ? _ref3 : contextErrorRef.current : undefined;
347
- const ariaAttributes = {};
391
+ const hasError = Boolean(error) || inFieldBlock && fieldBlockContext.hasErrorProp;
392
+ const ariaAttributes = (0, _react.useMemo)(() => {
393
+ return Object.keys(props).reduce((acc, cur) => {
394
+ if (!cur.startsWith('aria-')) {
395
+ return acc;
396
+ }
397
+ acc[cur] = props[cur];
398
+ return acc;
399
+ }, {});
400
+ }, [props]);
348
401
  if (error) {
349
- ariaAttributes['aria-invalid'] = String(Boolean(error));
402
+ ariaAttributes['aria-invalid'] = error ? 'true' : 'false';
350
403
  }
351
404
  if (required) {
352
- ariaAttributes['aria-required'] = String(required);
405
+ ariaAttributes['aria-required'] = required ? 'true' : 'false';
406
+ }
407
+ if (inFieldBlock) {
408
+ var _fieldBlockContext$fi;
409
+ if (fieldBlockContext.mountedFieldsRef) {
410
+ fieldBlockContext.mountedFieldsRef.current[identifier] = true;
411
+ }
412
+ const stateIds = (_fieldBlockContext$fi = fieldBlockContext.fieldStateIdsRef) === null || _fieldBlockContext$fi === void 0 ? void 0 : _fieldBlockContext$fi.current;
413
+ if (stateIds) {
414
+ ariaAttributes['aria-describedby'] = (0, _componentHelper.combineDescribedBy)(props, [error && stateIds.error, warning && stateIds.warning, info && stateIds.info].filter(Boolean));
415
+ }
416
+ } else {
417
+ ariaAttributes['aria-describedby'] = (0, _componentHelper.combineDescribedBy)(props, [(error || errorProp) && `${id}-form-status--error`, warning && `${id}-form-status--warning`, info && `${id}-form-status--info`].filter(Boolean));
353
418
  }
354
419
  return _objectSpread(_objectSpread({}, props), {}, {
355
420
  id,
356
421
  name: props.name || ((_props$path = props.path) === null || _props$path === void 0 ? void 0 : _props$path.replace('/', '')) || id,
357
422
  value: transformers.current.toInput(valueRef.current),
423
+ info: !inFieldBlock ? info : undefined,
424
+ warning: !inFieldBlock ? warning : undefined,
358
425
  error: !inFieldBlock ? error : undefined,
359
- hasError: Boolean(error),
360
- isChanged: changedRef.current,
361
- autoComplete: (_props$autoComplete = props.autoComplete) !== null && _props$autoComplete !== void 0 ? _props$autoComplete : dataContext.autoComplete === true ? 'on' : 'off',
426
+ hasError,
362
427
  disabled,
428
+ autoComplete: (_props$autoComplete = props.autoComplete) !== null && _props$autoComplete !== void 0 ? _props$autoComplete : dataContext.autoComplete === true ? 'on' : 'off',
429
+ isChanged: changedRef.current,
363
430
  ariaAttributes,
364
431
  dataContext,
365
432
  setHasFocus,
@@ -374,6 +441,8 @@ function omitDataValueProps(props) {
374
441
  const {
375
442
  name,
376
443
  error,
444
+ warning,
445
+ info,
377
446
  hasError,
378
447
  isChanged,
379
448
  autoComplete,
@@ -387,6 +456,6 @@ function omitDataValueProps(props) {
387
456
  forceUpdate
388
457
  } = props,
389
458
  restProps = _objectWithoutProperties(props, _excluded);
390
- return Object.freeze(restProps);
459
+ return restProps;
391
460
  }
392
461
  //# sourceMappingURL=useDataValue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDataValue.js","names":["_react","require","_jsonPointer","_interopRequireDefault","_utils","_ajv","_types","_DataContext","_Context","_FieldBlockContext","_IterateElementContext","_useMountEffect","_useUpdateEffect","_useProcessManager","_useId","_excluded","obj","__esModule","default","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","useDataValue","props","_props$disabled","_dataContext$ajvInsta","_this","_ref3","_props$path","_props$autoComplete","path","itemPath","emptyValue","required","error","errorProp","errorMessages","onFocus","onBlur","onChange","onBlurValidator","validator","schema","validateInitially","validateUnchanged","continuousValidation","toInput","fromInput","toEvent","transformValue","fromExternal","validateRequired","_ref","disabled","readOnly","forceUpdate","useReducer","startProcess","useProcessManager","id","useId","dataContext","useContext","Context","fieldBlockContext","FieldBlockContext","iterateElementContext","IterateElementContext","sharedContext","SharedContext","tr","translation","Forms","transformers","useRef","handlePathChange","dataContextHandlePathChange","updateDataValue","dataContextUpdateDataValue","validateData","dataContextValidateData","setValueWithError","dataContextSetValueWithError","setProps","dataContextSetProps","errors","dataContextErrors","contextErrorMessages","dataContextError","inFieldBlock","Boolean","setError","setFieldBlockError","setShowError","setShowFieldBlockError","inIterate","index","iterateElementIndex","iterateElementValue","handleChange","handleIterateElementChange","substring","Error","identifier","useMemo","externalValue","current","pointer","has","get","data","valueRef","changedRef","hasFocusRef","showErrorInitially","localErrorRef","contextErrorRef","showErrorRef","validatorRef","useUpdateEffect","schemaValidatorRef","ajvInstance","compile","showError","useCallback","hideError","errorMessagesRef","fieldErrorRequired","prepareError","FormError","_error$messageValues","message","validationRule","_errorMessagesRef$cur","fieldMessage","messageWithValues","entries","messageValues","reduce","_ref2","replace","persistErrorState","errorArg","errorChanged","clearErrorState","validateValue","isProcessActive","requiredError","isChanged","ajvErrorsToOneFormError","_validatorRef$current","_dataContext$ajvInsta2","useEffect","showAllErrors","hasValue","existingValue","handleError","setHasFocus","hasFocus","valueOverride","Promise","resolve","then","updateValue","newValue","argFromInput","additionalArgs","currentValue","iterateValuePath","handleFocus","handleBlur","useMountEffect","handleMountField","handleUnMountField","ariaAttributes","name","hasError","autoComplete","omitDataValueProps","restProps","freeze"],"sources":["../../../../../src/extensions/forms/hooks/useDataValue.ts"],"sourcesContent":["import {\n useRef,\n useEffect,\n useContext,\n useCallback,\n useMemo,\n useReducer,\n} from 'react'\nimport pointer from 'json-pointer'\nimport { ValidateFunction } from 'ajv/dist/2020'\nimport { errorChanged } from '../utils'\nimport { ajvErrorsToOneFormError } from '../utils/ajv'\nimport { FormError, FieldProps, AdditionalEventArgs } from '../types'\nimport { Context, ContextState } from '../DataContext'\nimport SharedContext from '../../../shared/Context'\nimport FieldBlockContext from '../FieldBlock/FieldBlockContext'\nimport IterateElementContext from '../Iterate/IterateElementContext'\nimport useMountEffect from './useMountEffect'\nimport useUpdateEffect from './useUpdateEffect'\nimport useProcessManager from './useProcessManager'\nimport useId from './useId'\n\nexport default function useDataValue<\n Value = unknown,\n Props extends FieldProps<Value> = FieldProps<Value>,\n>(props: Props): Props & ReturnAdditional<Value> {\n const {\n path,\n itemPath,\n emptyValue,\n required,\n error: errorProp,\n errorMessages,\n onFocus,\n onBlur,\n onChange,\n onBlurValidator,\n validator,\n schema,\n validateInitially,\n validateUnchanged,\n continuousValidation,\n toInput = (value: Value) => value,\n fromInput = (value: Value) => value,\n toEvent = (value: Value) => value,\n transformValue = (value: Value) => value,\n fromExternal = (value: Value) => value,\n validateRequired = (value: Value, { emptyValue, required, error }) => {\n const res =\n required &&\n (value === emptyValue ||\n (typeof emptyValue === 'undefined' && value === ''))\n ? error\n : undefined\n return res\n },\n } = props\n\n const disabled = props.disabled ?? props.readOnly\n\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { startProcess } = useProcessManager()\n const id = useId(props.id)\n const dataContext = useContext(Context)\n const fieldBlockContext = useContext(FieldBlockContext)\n const iterateElementContext = useContext(IterateElementContext)\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const transformers = useRef({\n toInput,\n fromInput,\n toEvent,\n fromExternal,\n transformValue,\n validateRequired,\n })\n\n const {\n handlePathChange: dataContextHandlePathChange,\n updateDataValue: dataContextUpdateDataValue,\n validateData: dataContextValidateData,\n setValueWithError: dataContextSetValueWithError,\n setProps: dataContextSetProps,\n errors: dataContextErrors,\n contextErrorMessages,\n } = dataContext ?? {}\n\n const dataContextError = path ? dataContextErrors?.[path] : undefined\n const inFieldBlock = Boolean(fieldBlockContext)\n const {\n setError: setFieldBlockError,\n setShowError: setShowFieldBlockError,\n } = fieldBlockContext ?? {}\n const inIterate = Boolean(iterateElementContext)\n const {\n index: iterateElementIndex,\n value: iterateElementValue,\n handleChange: handleIterateElementChange,\n } = iterateElementContext ?? {}\n\n if (path && path.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid path. Data value path JSON Pointers must be from root (starting with a /).'\n )\n }\n if (itemPath && itemPath.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid itemPath. Item pathJSON Pointers must be from root of iterate element (starting with a /).'\n )\n }\n if (itemPath && !iterateElementContext) {\n throw new Error(\n 'itemPath cannot be used when not inside an iterate element context. Wrap the component in an Iterate.Loop.'\n )\n }\n\n const identifier = useMemo(() => {\n // Identifier is used is registries of multiple fields, like in the DataContext keeping track of errors\n return path ?? id\n }, [path, id])\n\n const externalValue = useMemo(() => {\n if (props.value !== undefined) {\n // Value-prop sent directly to the field has highest priority, overriding any surrounding source\n return transformers.current.fromExternal(props.value)\n }\n\n if (inIterate && itemPath) {\n // This field is inside an iterate, and has a pointer from the base of the element being iterated\n if (itemPath === '/') {\n return iterateElementValue\n }\n\n return pointer.has(iterateElementValue, itemPath)\n ? pointer.get(iterateElementValue, itemPath)\n : undefined\n }\n\n if (dataContext.data && path) {\n // There is a surrounding data context and a path for where in the source to find the data\n if (path === '/') {\n return dataContext.data\n }\n\n return pointer.has(dataContext.data, path)\n ? pointer.get(dataContext.data, path)\n : undefined\n }\n return undefined\n }, [\n props.value,\n inIterate,\n itemPath,\n dataContext.data,\n path,\n iterateElementValue,\n ])\n\n // Many variables are kept in refs to avoid triggering unnecessary update loops because updates using\n // useEffect depend on them (like the external `value`)\n\n // Hold an internal copy of the input value in case the input component is used uncontrolled,\n // and to handle errors in Eufemia on components that does not take updated callback functions into account.\n const valueRef = useRef<Value>(externalValue)\n const changedRef = useRef<boolean>(false)\n const hasFocusRef = useRef<boolean>(false)\n\n // Error handling\n // - Should errors received through validation be shown initially. Assume that providing a direct prop to\n // the component means it is supposed to be shown initially.\n const showErrorInitially = validateInitially || errorProp\n // - Local errors are errors based on validation instructions received by\n const localErrorRef = useRef<Error | FormError | undefined>()\n // - Context errors are from outer contexts, like validation for this field as part of the whole data set\n const contextErrorRef = useRef<Error | FormError | undefined>(\n dataContextError\n )\n\n // Put props into the surrounding data context\n dataContextSetProps?.(identifier, props)\n\n const showErrorRef = useRef<boolean>(Boolean(showErrorInitially))\n const validatorRef = useRef(validator)\n useUpdateEffect(() => {\n validatorRef.current = validator\n }, [validator])\n\n const schemaValidatorRef = useRef<ValidateFunction>(\n schema ? dataContext.ajvInstance?.compile(schema) : undefined\n )\n\n const showError = useCallback(() => {\n showErrorRef.current = true\n setShowFieldBlockError?.(path ?? id, true)\n }, [path, id, setShowFieldBlockError])\n\n const hideError = useCallback(() => {\n showErrorRef.current = false\n setShowFieldBlockError?.(path ?? id, false)\n }, [path, id, setShowFieldBlockError])\n\n const errorMessagesRef = useRef(null)\n errorMessagesRef.current = useMemo(() => {\n return {\n required: tr.fieldErrorRequired,\n ...errorMessages,\n }\n }, [errorMessages, tr.fieldErrorRequired])\n\n /**\n * Prepare error from validation logic with correct error messages based on props\n */\n const prepareError = useCallback(\n (error: Error | FormError | undefined): FormError | undefined => {\n if (error === undefined) {\n return\n }\n\n if (error instanceof FormError) {\n let message = error.message\n\n const { validationRule } = error\n if (typeof validationRule === 'string') {\n const fieldMessage = errorMessagesRef.current?.[validationRule]\n if (fieldMessage) {\n message = fieldMessage\n }\n }\n\n const messageWithValues = Object.entries(\n error.messageValues ?? {}\n ).reduce((message, [key, value]) => {\n return message.replace(`{${key}}`, value)\n }, message)\n\n return new FormError(messageWithValues)\n }\n\n return error\n },\n []\n )\n\n /**\n * Based on validation, update error state, locally and relevant surrounding contexts\n */\n const persistErrorState = useCallback(\n (errorArg: FormError | undefined) => {\n const error = prepareError(errorArg)\n\n if (!errorChanged(error, localErrorRef.current)) {\n // In case different triggers lead to validation with no changes in the result (like still no error, or the same error),\n // avoid unnecessary re-renders by letting the old error object stay in the state and skip re-rendering.\n return\n }\n\n localErrorRef.current = error\n\n // Tell the data context about the error, so it can stop the user from submitting the form until the error has been fixed\n dataContextSetValueWithError?.(identifier, Boolean(error))\n\n setFieldBlockError?.(path ?? id, error)\n forceUpdate()\n },\n [\n path,\n identifier,\n id,\n prepareError,\n dataContextSetValueWithError,\n setFieldBlockError,\n forceUpdate,\n ]\n )\n\n const clearErrorState = useCallback(\n () => persistErrorState(undefined),\n [persistErrorState]\n )\n\n /**\n * Validate the current state value by provided validator instructions\n */\n const validateValue = useCallback(async () => {\n const isProcessActive = startProcess()\n\n if (disabled) {\n if (isProcessActive()) {\n clearErrorState()\n }\n hideError()\n return\n }\n\n try {\n // Validate required\n const requiredError = transformers.current.validateRequired(\n valueRef.current,\n {\n emptyValue,\n required,\n isChanged: changedRef.current,\n error: new FormError('The value is required', {\n validationRule: 'required',\n }),\n }\n )\n if (requiredError instanceof Error) {\n throw requiredError\n }\n\n // Validate by provided JSON Schema for this value\n if (\n schemaValidatorRef.current &&\n valueRef.current !== undefined &&\n !schemaValidatorRef.current(valueRef.current)\n ) {\n const error = ajvErrorsToOneFormError(\n schemaValidatorRef.current.errors\n )\n throw error\n }\n\n // Validate by provided derivative validator\n if (validatorRef.current) {\n const res = await validatorRef.current?.(valueRef.current, {\n ...contextErrorMessages,\n ...errorMessagesRef.current,\n })\n if (res instanceof Error) {\n throw res\n }\n }\n\n if (isProcessActive()) {\n clearErrorState()\n }\n } catch (error: unknown) {\n if (isProcessActive()) {\n persistErrorState(error as Error)\n }\n }\n }, [\n startProcess,\n disabled,\n hideError,\n clearErrorState,\n emptyValue,\n required,\n contextErrorMessages,\n persistErrorState,\n ])\n\n useUpdateEffect(() => {\n schemaValidatorRef.current = schema\n ? dataContext.ajvInstance?.compile(schema)\n : undefined\n validateValue()\n }, [schema, validateValue])\n\n useUpdateEffect(() => {\n // Error or removed error for this field from the surrounding data context (by path)\n valueRef.current = externalValue\n validateValue()\n forceUpdate()\n }, [externalValue, validateValue])\n\n useEffect(() => {\n const error = prepareError(dataContextError)\n if (errorChanged(error, contextErrorRef.current)) {\n contextErrorRef.current = error\n forceUpdate()\n }\n }, [dataContextError, prepareError])\n\n useEffect(() => {\n if (dataContext.showAllErrors) {\n // If showError on a surrounding data context was changed and set to true, it is because the user clicked next, submit or\n // something else that should lead to showing the user all errors.\n showError()\n forceUpdate()\n }\n }, [dataContext.showAllErrors, showError])\n\n useEffect(() => {\n if (path) {\n const hasValue = pointer.has(dataContext.data, path)\n const existingValue = hasValue\n ? pointer.get(dataContext.data, path)\n : undefined\n\n if (\n !hasValue ||\n (props.value !== existingValue &&\n // Prevents an infinite loop by skipping the update if the value hasn't changed\n valueRef.current !== existingValue)\n ) {\n // Update the data context when a pointer not exists,\n // but was given initially.\n dataContextUpdateDataValue?.(path, props.value, { disabled })\n dataContextValidateData?.()\n }\n }\n }, [\n dataContext.data,\n dataContextUpdateDataValue,\n dataContextValidateData,\n disabled,\n path,\n props.value,\n ])\n\n const handleError = useCallback(() => {\n if (\n continuousValidation ||\n (continuousValidation !== false && !hasFocusRef.current)\n ) {\n // When there is a change to the value without there having been any focus callback beforehand, it is likely\n // to believe that the blur callback will not be called either, which would trigger the display of the error.\n // The error is therefore displayed immediately (unless instructed not to with continuousValidation set to false).\n showError()\n } else {\n // When changing the value, hide errors to avoid annoying the user before they are finished filling in that value\n hideError()\n }\n }, [continuousValidation, hideError, showError])\n\n const setHasFocus = useCallback(\n (hasFocus: boolean, valueOverride?: Value) => {\n if (hasFocus) {\n // Field was put in focus (like when clicking in a text field or opening a dropdown menu)\n hasFocusRef.current = true\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onFocus'\n )\n onFocus?.(value)\n } else {\n // Field was removed from focus (like when tabbing out of a text field or closing a dropdown menu)\n hasFocusRef.current = false\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlur'\n )\n onBlur?.(value)\n\n if (!changedRef.current && !validateUnchanged) {\n // Avoid showing errors when blurring without having changed the value, so tabbing through several\n // fields does not make errors pop up all over the place\n return\n }\n\n // External blur validators makes it possible to validate values but not on every character change in case of\n // expensive validation calling external services etc.\n if (typeof onBlurValidator === 'function') {\n // Since the validator can return either a synchronous result or an asynchronous\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlurValidator'\n )\n Promise.resolve(onBlurValidator(value)).then(persistErrorState)\n }\n\n // Since the user left the field, show error (if any)\n showError()\n forceUpdate()\n }\n },\n [\n onBlur,\n onBlurValidator,\n onFocus,\n persistErrorState,\n showError,\n validateUnchanged,\n ]\n )\n\n const updateValue = useCallback(\n (newValue: Value) => {\n if (newValue === valueRef.current) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n valueRef.current = newValue\n\n // Always validate the value immediately when it is changed\n validateValue()\n\n handleError()\n\n if (path) {\n // setTimeout(() => {\n dataContextHandlePathChange?.(path, newValue)\n // forceUpdate()\n // }, 1e3)\n }\n\n forceUpdate()\n },\n [dataContextHandlePathChange, handleError, path, validateValue]\n )\n\n const handleChange = useCallback(\n (\n argFromInput: Value,\n additionalArgs: AdditionalEventArgs = undefined\n ) => {\n const currentValue = valueRef.current\n let newValue = transformers.current.fromInput(argFromInput)\n\n if (newValue === currentValue) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n newValue = transformers.current.transformValue(\n newValue,\n currentValue\n )\n\n updateValue(newValue)\n\n changedRef.current = true\n\n const value = transformers.current.toEvent(newValue, 'onChange')\n onChange?.apply(\n this,\n typeof additionalArgs !== 'undefined'\n ? [value, additionalArgs]\n : [value]\n )\n\n if (itemPath) {\n const iterateValuePath = `/${iterateElementIndex}${\n itemPath && itemPath !== '/' ? itemPath : ''\n }`\n handleIterateElementChange?.(iterateValuePath, newValue)\n }\n },\n [\n updateValue,\n onChange,\n itemPath,\n iterateElementIndex,\n handleIterateElementChange,\n ]\n )\n\n const handleFocus = useCallback(() => setHasFocus(true), [setHasFocus])\n\n const handleBlur = useCallback(() => setHasFocus(false), [setHasFocus])\n\n useMountEffect(() => {\n dataContext?.handleMountField(identifier)\n\n validateValue()\n\n if (showErrorInitially) {\n showError()\n }\n\n return () => {\n // Unmount procedure\n dataContext?.handleUnMountField(identifier)\n }\n })\n\n const error = showErrorRef.current\n ? errorProp ?? localErrorRef.current ?? contextErrorRef.current\n : undefined\n\n const ariaAttributes = {}\n if (error) {\n ariaAttributes['aria-invalid'] = String(Boolean(error))\n }\n if (required) {\n ariaAttributes['aria-required'] = String(required)\n }\n\n return {\n ...props,\n id,\n name: props.name || props.path?.replace('/', '') || id,\n value: transformers.current.toInput(valueRef.current),\n error: !inFieldBlock ? error : undefined,\n hasError: Boolean(error),\n isChanged: changedRef.current,\n autoComplete:\n props.autoComplete ??\n (dataContext.autoComplete === true ? 'on' : 'off'),\n disabled,\n ariaAttributes,\n dataContext,\n setHasFocus,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n forceUpdate,\n }\n}\n\ninterface ReturnAdditional<Value> {\n id: string\n name: string\n value: Value\n error: Error | FormError | undefined\n autoComplete: HTMLInputElement['autocomplete']\n disabled: boolean\n hasError: boolean\n isChanged: boolean\n dataContext: ContextState\n ariaAttributes: {\n 'aria-invalid'?: 'true' | 'false'\n 'aria-required'?: 'true' | 'false'\n }\n setHasFocus: (hasFocus: boolean, valueOverride?: unknown) => void\n handleFocus: () => void\n handleBlur: () => void\n handleChange: FieldProps<unknown>['onChange']\n updateValue: (value: Value) => void\n forceUpdate: () => void\n}\n\nexport function omitDataValueProps<\n OmittedProps extends ReturnAdditional<unknown>,\n>(props: OmittedProps) {\n // Do not include typical HTML attributes\n const {\n name,\n error,\n hasError,\n isChanged,\n autoComplete,\n ariaAttributes,\n dataContext,\n setHasFocus,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n forceUpdate,\n ...restProps\n } = props\n return Object.freeze(restProps) as Omit<\n OmittedProps,\n keyof ReturnAdditional<unknown>\n >\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useDataValue.js","names":["_react","require","_jsonPointer","_interopRequireDefault","_utils","_ajv","_types","_DataContext","_componentHelper","_Context","_FieldBlockContext","_IterateElementContext","_useMountEffect","_useUnmountEffect","_useUpdateEffect","_useProcessManager","_useId","_excluded","obj","__esModule","default","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","useDataValue","props","_props$disabled","_dataContext$ajvInsta","_this","_ref3","_props$path","_props$autoComplete","path","itemPath","emptyValue","required","info","warning","error","errorProp","errorMessages","onFocus","onBlur","onChange","onBlurValidator","validator","schema","validateInitially","validateUnchanged","continuousValidation","toInput","fromInput","toEvent","transformValue","fromExternal","validateRequired","_ref","disabled","readOnly","forceUpdate","useReducer","startProcess","useProcessManager","id","useId","dataContext","useContext","DataContext","fieldBlockContext","FieldBlockContext","iterateElementContext","IterateElementContext","sharedContext","SharedContext","tr","translation","Forms","transformers","useRef","handlePathChange","dataContextHandlePathChange","updateDataValue","dataContextUpdateDataValue","validateData","dataContextValidateData","setValueWithError","dataContextSetValueWithError","setProps","dataContextSetProps","errors","dataContextErrors","contextErrorMessages","dataContextError","inFieldBlock","Boolean","setFieldState","setFieldBlockState","showFieldError","showFieldBlockError","inIterate","index","iterateElementIndex","iterateElementValue","handleChange","handleIterateElementChange","substring","Error","identifier","useMemo","externalValue","current","pointer","has","get","data","valueRef","changedRef","hasFocusRef","showErrorInitially","localErrorRef","contextErrorRef","showErrorRef","validatorRef","useUpdateEffect","schemaValidatorRef","ajvInstance","compile","showError","useCallback","hideError","errorMessagesRef","fieldErrorRequired","prepareError","FormError","_error$messageValues","message","validationRule","_errorMessagesRef$cur","fieldMessage","messageWithValues","entries","messageValues","reduce","_ref2","replace","stateId","persistErrorState","errorArg","errorChanged","type","state","showInitially","clearErrorState","validateValue","isProcessActive","requiredError","isChanged","ajvErrorsToOneFormError","_validatorRef$current","_dataContext$ajvInsta2","useEffect","showAllErrors","hasValue","existingValue","handleError","setHasFocus","hasFocus","valueOverride","Promise","resolve","then","updateValue","newValue","argFromInput","additionalArgs","currentValue","iterateValuePath","handleFocus","handleBlur","useMountEffect","handleMountField","useUnmountEffect","handleUnMountField","show","mountedFieldsRef","hasError","hasErrorProp","ariaAttributes","acc","cur","startsWith","_fieldBlockContext$fi","stateIds","fieldStateIdsRef","combineDescribedBy","name","autoComplete","omitDataValueProps","restProps"],"sources":["../../../../../src/extensions/forms/hooks/useDataValue.ts"],"sourcesContent":["import {\n useRef,\n useEffect,\n useContext,\n useCallback,\n useMemo,\n useReducer,\n AriaAttributes,\n} from 'react'\nimport pointer from 'json-pointer'\nimport { ValidateFunction } from 'ajv/dist/2020'\nimport { errorChanged } from '../utils'\nimport { ajvErrorsToOneFormError } from '../utils/ajv'\nimport { FormError, FieldProps, AdditionalEventArgs } from '../types'\nimport { Context as DataContext, ContextState } from '../DataContext'\nimport { combineDescribedBy } from '../../../shared/component-helper'\nimport SharedContext from '../../../shared/Context'\nimport FieldBlockContext from '../FieldBlock/FieldBlockContext'\nimport IterateElementContext from '../Iterate/IterateElementContext'\nimport useMountEffect from './useMountEffect'\nimport useUnmountEffect from './useUnmountEffect'\nimport useUpdateEffect from './useUpdateEffect'\nimport useProcessManager from './useProcessManager'\nimport useId from './useId'\n\nexport default function useDataValue<\n Value = unknown,\n Props extends FieldProps<Value> = FieldProps<Value>,\n>(props: Props): Props & FieldProps<Value> & ReturnAdditional<Value> {\n const {\n path,\n itemPath,\n emptyValue,\n required,\n info,\n warning,\n error: errorProp,\n errorMessages,\n onFocus,\n onBlur,\n onChange,\n onBlurValidator,\n validator,\n schema,\n validateInitially,\n validateUnchanged,\n continuousValidation,\n toInput = (value: Value) => value,\n fromInput = (value: Value) => value,\n toEvent = (value: Value) => value,\n transformValue = (value: Value) => value,\n fromExternal = (value: Value) => value,\n validateRequired = (value: Value, { emptyValue, required, error }) => {\n const res =\n required &&\n (value === emptyValue ||\n (typeof emptyValue === 'undefined' && value === ''))\n ? error\n : undefined\n return res\n },\n } = props\n\n const disabled = props.disabled ?? props.readOnly\n\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { startProcess } = useProcessManager()\n const id = useId(props.id)\n const dataContext = useContext(DataContext)\n const fieldBlockContext = useContext(FieldBlockContext)\n const iterateElementContext = useContext(IterateElementContext)\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const transformers = useRef({\n toInput,\n fromInput,\n toEvent,\n fromExternal,\n transformValue,\n validateRequired,\n })\n\n const {\n handlePathChange: dataContextHandlePathChange,\n updateDataValue: dataContextUpdateDataValue,\n validateData: dataContextValidateData,\n setValueWithError: dataContextSetValueWithError,\n setProps: dataContextSetProps,\n errors: dataContextErrors,\n contextErrorMessages,\n } = dataContext ?? {}\n\n const dataContextError = path ? dataContextErrors?.[path] : undefined\n const inFieldBlock = Boolean(fieldBlockContext)\n const {\n setFieldState: setFieldBlockState,\n showFieldError: showFieldBlockError,\n } = fieldBlockContext ?? {}\n const inIterate = Boolean(iterateElementContext)\n const {\n index: iterateElementIndex,\n value: iterateElementValue,\n handleChange: handleIterateElementChange,\n } = iterateElementContext ?? {}\n\n if (path && path.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid path. Data value path JSON Pointers must be from root (starting with a /).'\n )\n }\n if (itemPath && itemPath.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid itemPath. Item pathJSON Pointers must be from root of iterate element (starting with a /).'\n )\n }\n if (itemPath && !iterateElementContext) {\n throw new Error(\n 'itemPath cannot be used when not inside an iterate element context. Wrap the component in an Iterate.Loop.'\n )\n }\n\n const identifier = useMemo(() => {\n // Identifier is used is registries of multiple fields, like in the DataContext keeping track of errors\n return path ?? id\n }, [path, id])\n\n const externalValue = useMemo(() => {\n if (props.value !== undefined) {\n // Value-prop sent directly to the field has highest priority, overriding any surrounding source\n return transformers.current.fromExternal(props.value)\n }\n\n if (inIterate && itemPath) {\n // This field is inside an iterate, and has a pointer from the base of the element being iterated\n if (itemPath === '/') {\n return iterateElementValue\n }\n\n return pointer.has(iterateElementValue, itemPath)\n ? pointer.get(iterateElementValue, itemPath)\n : undefined\n }\n\n if (dataContext.data && path) {\n // There is a surrounding data context and a path for where in the source to find the data\n if (path === '/') {\n return dataContext.data\n }\n\n return pointer.has(dataContext.data, path)\n ? pointer.get(dataContext.data, path)\n : undefined\n }\n return undefined\n }, [\n props.value,\n inIterate,\n itemPath,\n dataContext.data,\n path,\n iterateElementValue,\n ])\n\n // Many variables are kept in refs to avoid triggering unnecessary update loops because updates using\n // useEffect depend on them (like the external `value`)\n\n // Hold an internal copy of the input value in case the input component is used uncontrolled,\n // and to handle errors in Eufemia on components that does not take updated callback functions into account.\n const valueRef = useRef<Value>(externalValue)\n const changedRef = useRef<boolean>(false)\n const hasFocusRef = useRef<boolean>(false)\n\n // Error handling\n // - Should errors received through validation be shown initially. Assume that providing a direct prop to\n // the component means it is supposed to be shown initially.\n const showErrorInitially = validateInitially || errorProp\n // - Local errors are errors based on validation instructions received by\n const localErrorRef = useRef<Error | FormError | undefined>()\n // - Context errors are from outer contexts, like validation for this field as part of the whole data set\n const contextErrorRef = useRef<Error | FormError | undefined>(\n dataContextError\n )\n\n // Put props into the surrounding data context\n dataContextSetProps?.(identifier, props)\n\n const showErrorRef = useRef<boolean>(Boolean(showErrorInitially))\n const validatorRef = useRef(validator)\n useUpdateEffect(() => {\n validatorRef.current = validator\n }, [validator])\n\n const schemaValidatorRef = useRef<ValidateFunction>(\n schema ? dataContext.ajvInstance?.compile(schema) : undefined\n )\n\n const showError = useCallback(() => {\n showErrorRef.current = true\n showFieldBlockError?.(identifier, true)\n }, [showFieldBlockError, identifier])\n\n const hideError = useCallback(() => {\n showErrorRef.current = false\n showFieldBlockError?.(identifier, false)\n }, [showFieldBlockError, identifier])\n\n const errorMessagesRef = useRef(null)\n errorMessagesRef.current = useMemo(() => {\n return {\n required: tr.fieldErrorRequired,\n ...errorMessages,\n }\n }, [errorMessages, tr.fieldErrorRequired])\n\n /**\n * Prepare error from validation logic with correct error messages based on props\n */\n const prepareError = useCallback(\n (error: Error | FormError | undefined): FormError | undefined => {\n if (error === undefined) {\n return\n }\n\n if (error instanceof FormError) {\n let message = error.message\n\n const { validationRule } = error\n if (typeof validationRule === 'string') {\n const fieldMessage = errorMessagesRef.current?.[validationRule]\n if (fieldMessage) {\n message = fieldMessage\n }\n }\n\n const messageWithValues = Object.entries(\n error.messageValues ?? {}\n ).reduce((message, [key, value]) => {\n return message.replace(`{${key}}`, value)\n }, message)\n\n return new FormError(messageWithValues)\n }\n\n return error\n },\n []\n )\n\n /**\n * Based on validation, update error state, locally and relevant surrounding contexts\n */\n const stateId = useId()\n const persistErrorState = useCallback(\n (errorArg: FormError | undefined) => {\n const error = prepareError(errorArg)\n\n if (!errorChanged(error, localErrorRef.current)) {\n // In case different triggers lead to validation with no changes in the result (like still no error, or the same error),\n // avoid unnecessary re-renders by letting the old error object stay in the state and skip re-rendering.\n return\n }\n\n localErrorRef.current = error\n\n // Tell the data context about the error, so it can stop the user from submitting the form until the error has been fixed\n dataContextSetValueWithError?.(identifier, Boolean(error))\n\n setFieldBlockState?.({\n stateId,\n identifier,\n type: 'error',\n state: error,\n showInitially: Boolean(inFieldBlock && validateInitially),\n })\n\n forceUpdate()\n },\n [\n stateId,\n prepareError,\n dataContextSetValueWithError,\n identifier,\n setFieldBlockState,\n inFieldBlock,\n validateInitially,\n ]\n )\n\n const clearErrorState = useCallback(\n () => persistErrorState(undefined),\n [persistErrorState]\n )\n\n /**\n * Validate the current state value by provided validator instructions\n */\n const validateValue = useCallback(async () => {\n const isProcessActive = startProcess()\n\n if (disabled) {\n if (isProcessActive()) {\n clearErrorState()\n }\n hideError()\n return\n }\n\n try {\n // Validate required\n const requiredError = transformers.current.validateRequired(\n valueRef.current,\n {\n emptyValue,\n required,\n isChanged: changedRef.current,\n error: new FormError('The value is required', {\n validationRule: 'required',\n }),\n }\n )\n if (requiredError instanceof Error) {\n throw requiredError\n }\n\n // Validate by provided JSON Schema for this value\n if (\n schemaValidatorRef.current &&\n valueRef.current !== undefined &&\n !schemaValidatorRef.current(valueRef.current)\n ) {\n const error = ajvErrorsToOneFormError(\n schemaValidatorRef.current.errors\n )\n throw error\n }\n\n // Validate by provided derivative validator\n if (validatorRef.current) {\n const res = await validatorRef.current?.(valueRef.current, {\n ...contextErrorMessages,\n ...errorMessagesRef.current,\n })\n if (res instanceof Error) {\n throw res\n }\n }\n\n if (isProcessActive()) {\n clearErrorState()\n }\n } catch (error: unknown) {\n if (isProcessActive()) {\n persistErrorState(error as Error)\n }\n }\n }, [\n startProcess,\n disabled,\n hideError,\n clearErrorState,\n emptyValue,\n required,\n contextErrorMessages,\n persistErrorState,\n ])\n\n useUpdateEffect(() => {\n schemaValidatorRef.current = schema\n ? dataContext.ajvInstance?.compile(schema)\n : undefined\n validateValue()\n }, [schema, validateValue])\n\n useUpdateEffect(() => {\n // Error or removed error for this field from the surrounding data context (by path)\n valueRef.current = externalValue\n validateValue()\n forceUpdate()\n }, [externalValue, validateValue])\n\n useEffect(() => {\n const error = prepareError(dataContextError)\n if (errorChanged(error, contextErrorRef.current)) {\n contextErrorRef.current = error\n forceUpdate()\n }\n }, [dataContextError, prepareError])\n\n useEffect(() => {\n if (dataContext.showAllErrors) {\n // If showError on a surrounding data context was changed and set to true, it is because the user clicked next, submit or\n // something else that should lead to showing the user all errors.\n showError()\n forceUpdate()\n }\n }, [dataContext.showAllErrors, showError])\n\n useEffect(() => {\n if (path) {\n const hasValue = pointer.has(dataContext.data, path)\n const existingValue = hasValue\n ? pointer.get(dataContext.data, path)\n : undefined\n\n if (\n !hasValue ||\n (props.value !== existingValue &&\n // Prevents an infinite loop by skipping the update if the value hasn't changed\n valueRef.current !== existingValue)\n ) {\n // Update the data context when a pointer not exists,\n // but was given initially.\n dataContextUpdateDataValue?.(path, props.value, { disabled })\n dataContextValidateData?.()\n }\n }\n }, [\n dataContext.data,\n dataContextUpdateDataValue,\n dataContextValidateData,\n disabled,\n path,\n props.value,\n ])\n\n const handleError = useCallback(() => {\n if (\n continuousValidation ||\n (continuousValidation !== false && !hasFocusRef.current)\n ) {\n // When there is a change to the value without there having been any focus callback beforehand, it is likely\n // to believe that the blur callback will not be called either, which would trigger the display of the error.\n // The error is therefore displayed immediately (unless instructed not to with continuousValidation set to false).\n showError()\n } else {\n // When changing the value, hide errors to avoid annoying the user before they are finished filling in that value\n hideError()\n }\n }, [continuousValidation, hideError, showError])\n\n const setHasFocus = useCallback(\n (hasFocus: boolean, valueOverride?: Value) => {\n if (hasFocus) {\n // Field was put in focus (like when clicking in a text field or opening a dropdown menu)\n hasFocusRef.current = true\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onFocus'\n )\n onFocus?.(value)\n } else {\n // Field was removed from focus (like when tabbing out of a text field or closing a dropdown menu)\n hasFocusRef.current = false\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlur'\n )\n onBlur?.(value)\n\n if (!changedRef.current && !validateUnchanged) {\n // Avoid showing errors when blurring without having changed the value, so tabbing through several\n // fields does not make errors pop up all over the place\n return\n }\n\n // External blur validators makes it possible to validate values but not on every character change in case of\n // expensive validation calling external services etc.\n if (typeof onBlurValidator === 'function') {\n // Since the validator can return either a synchronous result or an asynchronous\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlurValidator'\n )\n Promise.resolve(onBlurValidator(value)).then(persistErrorState)\n }\n\n // Since the user left the field, show error (if any)\n showError()\n forceUpdate()\n }\n },\n [\n onBlur,\n onBlurValidator,\n onFocus,\n persistErrorState,\n showError,\n validateUnchanged,\n ]\n )\n\n const updateValue = useCallback(\n (newValue: Value) => {\n if (newValue === valueRef.current) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n valueRef.current = newValue\n\n // Always validate the value immediately when it is changed\n validateValue()\n\n handleError()\n\n if (path) {\n dataContextHandlePathChange?.(path, newValue)\n }\n\n forceUpdate()\n },\n [dataContextHandlePathChange, handleError, path, validateValue]\n )\n\n const handleChange = useCallback(\n (\n argFromInput: Value,\n additionalArgs: AdditionalEventArgs = undefined\n ) => {\n const currentValue = valueRef.current\n let newValue = transformers.current.fromInput(argFromInput)\n\n if (newValue === currentValue) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n newValue = transformers.current.transformValue(\n newValue,\n currentValue\n )\n\n updateValue(newValue)\n\n changedRef.current = true\n\n const value = transformers.current.toEvent(newValue, 'onChange')\n onChange?.apply(\n this,\n typeof additionalArgs !== 'undefined'\n ? [value, additionalArgs]\n : [value]\n )\n\n if (itemPath) {\n const iterateValuePath = `/${iterateElementIndex}${\n itemPath && itemPath !== '/' ? itemPath : ''\n }`\n handleIterateElementChange?.(iterateValuePath, newValue)\n }\n },\n [\n updateValue,\n onChange,\n itemPath,\n iterateElementIndex,\n handleIterateElementChange,\n ]\n )\n\n const handleFocus = useCallback(() => setHasFocus(true), [setHasFocus])\n const handleBlur = useCallback(() => setHasFocus(false), [setHasFocus])\n\n useMountEffect(() => {\n dataContext?.handleMountField(identifier)\n\n validateValue()\n })\n useUnmountEffect(() => {\n dataContext?.handleUnMountField(identifier)\n })\n\n // Set the error in the field block context if this field is inside a field block\n useMountEffect(() => {\n if (inFieldBlock) {\n if (errorProp) {\n setFieldBlockState?.({\n identifier,\n type: 'error',\n state: errorProp,\n showInitially: true,\n show: true,\n })\n }\n if (warning) {\n setFieldBlockState?.({\n identifier,\n type: 'warning',\n state: warning,\n showInitially: true,\n show: true,\n })\n }\n if (info) {\n setFieldBlockState?.({\n identifier,\n type: 'info',\n state: info,\n showInitially: true,\n show: true,\n })\n }\n\n return () => {\n // Unmount procedure\n if (fieldBlockContext.mountedFieldsRef) {\n fieldBlockContext.mountedFieldsRef.current[identifier] = true\n }\n }\n }\n })\n\n const error = showErrorRef.current\n ? errorProp ?? localErrorRef.current ?? contextErrorRef.current\n : undefined\n\n const hasError =\n Boolean(error) || (inFieldBlock && fieldBlockContext.hasErrorProp)\n\n // - Handle ariaAttributes\n const ariaAttributes = useMemo(() => {\n return Object.keys(props).reduce<AriaAttributes>((acc, cur) => {\n if (!cur.startsWith('aria-')) {\n return acc\n }\n acc[cur] = props[cur]\n return acc\n }, {})\n }, [props])\n if (error) {\n ariaAttributes['aria-invalid'] = error ? 'true' : 'false'\n }\n if (required) {\n ariaAttributes['aria-required'] = required ? 'true' : 'false'\n }\n if (inFieldBlock) {\n // Mount the field in the field block context\n if (fieldBlockContext.mountedFieldsRef) {\n fieldBlockContext.mountedFieldsRef.current[identifier] = true\n }\n\n // Check if there are any state IDs to be added to the aria-describedby attribute\n const stateIds = fieldBlockContext.fieldStateIdsRef?.current\n\n if (stateIds) {\n ariaAttributes['aria-describedby'] = combineDescribedBy(\n props,\n [\n error && stateIds.error,\n warning && stateIds.warning,\n info && stateIds.info,\n ].filter(Boolean)\n )\n }\n } else {\n ariaAttributes['aria-describedby'] = combineDescribedBy(\n props,\n [\n (error || errorProp) && `${id}-form-status--error`,\n warning && `${id}-form-status--warning`,\n info && `${id}-form-status--info`,\n ].filter(Boolean)\n )\n }\n\n return {\n ...props,\n id,\n name: props.name || props.path?.replace('/', '') || id,\n value: transformers.current.toInput(valueRef.current),\n info: !inFieldBlock ? info : undefined,\n warning: !inFieldBlock ? warning : undefined,\n error: !inFieldBlock ? error : undefined,\n hasError,\n disabled,\n autoComplete:\n props.autoComplete ??\n (dataContext.autoComplete === true ? 'on' : 'off'),\n\n // Return additional hook related props (ReturnAdditional)\n isChanged: changedRef.current,\n ariaAttributes,\n dataContext,\n setHasFocus,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n forceUpdate,\n }\n}\n\ninterface ReturnAdditional<Value> {\n value: Value\n isChanged: boolean\n ariaAttributes: AriaAttributes\n dataContext: ContextState\n setHasFocus: (hasFocus: boolean, valueOverride?: unknown) => void\n handleFocus: () => void\n handleBlur: () => void\n handleChange: FieldProps<Value>['onChange']\n updateValue: (value: Value) => void\n forceUpdate: () => void\n}\n\nexport function omitDataValueProps<\n Props extends FieldProps<unknown> & ReturnAdditional<unknown>,\n>(props: Props) {\n // Do not include typical HTML attributes\n const {\n name, // eslint-disable-line\n error, // eslint-disable-line\n warning, // eslint-disable-line\n info, // eslint-disable-line\n hasError, // eslint-disable-line\n isChanged, // eslint-disable-line\n autoComplete, // eslint-disable-line\n ariaAttributes, // eslint-disable-line\n dataContext, // eslint-disable-line\n setHasFocus, // eslint-disable-line\n handleFocus, // eslint-disable-line\n handleBlur, // eslint-disable-line\n handleChange, // eslint-disable-line\n updateValue, // eslint-disable-line\n forceUpdate, // eslint-disable-line\n ...restProps\n } = props\n\n return restProps\n}\n"],"mappings":"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"}
@@ -12,7 +12,7 @@ function useId(customId) {
12
12
  const id = _react.default === null || _react.default === void 0 ? void 0 : (_React$useId = _react.default.useId) === null || _React$useId === void 0 ? void 0 : _React$useId.call(_react.default);
13
13
  return _react.default.useMemo(() => {
14
14
  var _ref;
15
- return (_ref = customId !== null && customId !== void 0 ? customId : id) !== null && _ref !== void 0 ? _ref : (0, _componentHelper.makeUniqueId)();
15
+ return (_ref = customId !== null && customId !== void 0 ? customId : id === null || id === void 0 ? void 0 : id.replace(/:/, 'id-').replace(/:/, '')) !== null && _ref !== void 0 ? _ref : (0, _componentHelper.makeUniqueId)();
16
16
  }, [customId, id]);
17
17
  }
18
18
  //# sourceMappingURL=useId.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useId.js","names":["_react","_interopRequireDefault","require","_componentHelper","obj","__esModule","default","useId","customId","_React$useId","id","React","call","useMemo","_ref","makeUniqueId"],"sources":["../../../../../src/extensions/forms/hooks/useId.ts"],"sourcesContent":["import React from 'react'\nimport { makeUniqueId } from '../../../shared/component-helper'\n\nexport default function useId(customId?: string) {\n const id = React?.useId?.()\n return React.useMemo(\n () => customId ?? id ?? makeUniqueId(),\n [customId, id]\n )\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AAA+D,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEhD,SAASG,KAAKA,CAACC,QAAiB,EAAE;EAAA,IAAAC,YAAA;EAC/C,MAAMC,EAAE,GAAGC,cAAK,aAALA,cAAK,wBAAAF,YAAA,GAALE,cAAK,CAAEJ,KAAK,cAAAE,YAAA,uBAAZA,YAAA,CAAAG,IAAA,CAAAD,cAAe,CAAC;EAC3B,OAAOA,cAAK,CAACE,OAAO,CAClB;IAAA,IAAAC,IAAA;IAAA,QAAAA,IAAA,GAAMN,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAIE,EAAE,cAAAI,IAAA,cAAAA,IAAA,GAAI,IAAAC,6BAAY,EAAC,CAAC;EAAA,GACtC,CAACP,QAAQ,EAAEE,EAAE,CACf,CAAC;AACH"}
1
+ {"version":3,"file":"useId.js","names":["_react","_interopRequireDefault","require","_componentHelper","obj","__esModule","default","useId","customId","_React$useId","id","React","call","useMemo","_ref","replace","makeUniqueId"],"sources":["../../../../../src/extensions/forms/hooks/useId.ts"],"sourcesContent":["import React from 'react'\nimport { makeUniqueId } from '../../../shared/component-helper'\n\nexport default function useId(customId?: string) {\n const id = React?.useId?.()\n return React.useMemo(\n () =>\n customId ??\n id?.replace(/:/, 'id-').replace(/:/, '') ??\n makeUniqueId(),\n [customId, id]\n )\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AAA+D,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEhD,SAASG,KAAKA,CAACC,QAAiB,EAAE;EAAA,IAAAC,YAAA;EAC/C,MAAMC,EAAE,GAAGC,cAAK,aAALA,cAAK,wBAAAF,YAAA,GAALE,cAAK,CAAEJ,KAAK,cAAAE,YAAA,uBAAZA,YAAA,CAAAG,IAAA,CAAAD,cAAe,CAAC;EAC3B,OAAOA,cAAK,CAACE,OAAO,CAClB;IAAA,IAAAC,IAAA;IAAA,QAAAA,IAAA,GACEN,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GACRE,EAAE,aAAFA,EAAE,uBAAFA,EAAE,CAAEK,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAACA,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,cAAAD,IAAA,cAAAA,IAAA,GACxC,IAAAE,6BAAY,EAAC,CAAC;EAAA,GAChB,CAACR,QAAQ,EAAEE,EAAE,CACf,CAAC;AACH"}
@@ -8,7 +8,7 @@ exports.default = useMountEffect;
8
8
  var _react = require("react");
9
9
  function useMountEffect(callback) {
10
10
  (0, _react.useEffect)(function () {
11
- callback(...arguments);
11
+ return callback(...arguments);
12
12
  }, []);
13
13
  }
14
14
  //# sourceMappingURL=useMountEffect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMountEffect.js","names":["_react","require","useMountEffect","callback","useEffect","arguments"],"sources":["../../../../../src/extensions/forms/hooks/useMountEffect.ts"],"sourcesContent":["import { useEffect, EffectCallback } from 'react'\n\n/**\n * UseEffect that only run on the initial mount\n */\nexport default function useMountEffect(callback: EffectCallback) {\n useEffect((...args) => {\n callback(...args)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAKe,SAASC,cAAcA,CAACC,QAAwB,EAAE;EAC/D,IAAAC,gBAAS,EAAC,YAAa;IACrBD,QAAQ,CAAC,GAAAE,SAAO,CAAC;EAEnB,CAAC,EAAE,EAAE,CAAC;AACR"}
1
+ {"version":3,"file":"useMountEffect.js","names":["_react","require","useMountEffect","callback","useEffect","arguments"],"sources":["../../../../../src/extensions/forms/hooks/useMountEffect.ts"],"sourcesContent":["import { useEffect, EffectCallback } from 'react'\n\n/**\n * UseEffect that only run on the initial mount\n */\nexport default function useMountEffect(callback: EffectCallback) {\n useEffect((...args) => {\n return callback(...args)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAKe,SAASC,cAAcA,CAACC,QAAwB,EAAE;EAC/D,IAAAC,gBAAS,EAAC,YAAa;IACrB,OAAOD,QAAQ,CAAC,GAAAE,SAAO,CAAC;EAE1B,CAAC,EAAE,EAAE,CAAC;AACR"}
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export default function useMounted(): import("react").MutableRefObject<boolean>;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ "use client";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = useMounted;
8
+ var _react = require("react");
9
+ function useMounted() {
10
+ const mounted = (0, _react.useRef)(false);
11
+ (0, _react.useEffect)(() => {
12
+ mounted.current = true;
13
+ return () => {
14
+ mounted.current = false;
15
+ };
16
+ }, []);
17
+ return mounted;
18
+ }
19
+ //# sourceMappingURL=useMounted.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMounted.js","names":["_react","require","useMounted","mounted","useRef","useEffect","current"],"sources":["../../../../../src/extensions/forms/hooks/useMounted.ts"],"sourcesContent":["import { useEffect, useRef } from 'react'\n\nexport default function useMounted() {\n const mounted = useRef(false)\n\n useEffect(() => {\n mounted.current = true\n return () => {\n mounted.current = false\n }\n }, [])\n\n return mounted\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEe,SAASC,UAAUA,CAAA,EAAG;EACnC,MAAMC,OAAO,GAAG,IAAAC,aAAM,EAAC,KAAK,CAAC;EAE7B,IAAAC,gBAAS,EAAC,MAAM;IACdF,OAAO,CAACG,OAAO,GAAG,IAAI;IACtB,OAAO,MAAM;MACXH,OAAO,CAACG,OAAO,GAAG,KAAK;IACzB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,OAAOH,OAAO;AAChB"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * UseEffect that only run on the initial mount
3
+ */
4
+ export default function useUnmountEffect(callback: () => void): void;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ "use client";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = useUnmountEffect;
8
+ var _react = require("react");
9
+ function useUnmountEffect(callback) {
10
+ (0, _react.useEffect)(() => {
11
+ return callback;
12
+ }, []);
13
+ }
14
+ //# sourceMappingURL=useUnmountEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUnmountEffect.js","names":["_react","require","useUnmountEffect","callback","useEffect"],"sources":["../../../../../src/extensions/forms/hooks/useUnmountEffect.ts"],"sourcesContent":["import { useEffect } from 'react'\n\n/**\n * UseEffect that only run on the initial mount\n */\nexport default function useUnmountEffect(callback: () => void) {\n useEffect(() => {\n return callback\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAKe,SAASC,gBAAgBA,CAACC,QAAoB,EAAE;EAC7D,IAAAC,gBAAS,EAAC,MAAM;IACd,OAAOD,QAAQ;EAEjB,CAAC,EAAE,EAAE,CAAC;AACR"}
@@ -64,7 +64,6 @@
64
64
  }
65
65
  .dnb-forms-field-number__contents {
66
66
  display: flex;
67
- align-items: center;
68
67
  }
69
68
  .dnb-forms-field-number__contents--has-controls {
70
69
  border-radius: 0.25rem;
@@ -88,6 +87,9 @@ html[data-whatinput=keyboard] .dnb-forms-field-number__contents--has-controls:fo
88
87
  box-shadow: 0 0 0 var(--border-width) var(--border-color);
89
88
  border-color: transparent;
90
89
  }
90
+ .dnb-forms-field-number__contents--has-controls .dnb-input__input {
91
+ align-items: center;
92
+ }
91
93
  .dnb-forms-field-number__contents--has-controls .dnb-input__shell {
92
94
  border-radius: 0;
93
95
  box-shadow: none;
@@ -222,6 +224,13 @@ html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-control
222
224
  width: var(--number-control-button-width--large);
223
225
  }
224
226
 
227
+ .dnb-forms-field-password .dnb-input__status--error .dnb-input__submit-button__button {
228
+ color: var(--color-fire-red);
229
+ }
230
+ .dnb-forms-field-password .dnb-input__status--error .dnb-input__submit-button__button:hover {
231
+ color: var(--color-white);
232
+ }
233
+
225
234
  .dnb-forms-field-phone-number__country-code {
226
235
  width: calc(var(--forms-field-width--medium) - 2rem);
227
236
  }
@@ -238,18 +247,6 @@ html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-control
238
247
  /*
239
248
  * Utilities
240
249
  */
241
- .dnb-forms-field-postal-code-and-city__fields {
242
- display: flex;
243
- flex-flow: row;
244
- -moz-column-gap: var(--spacing-small);
245
- column-gap: var(--spacing-small);
246
- }
247
- @media screen and (max-width: 25em) {
248
- .dnb-forms-field-postal-code-and-city__fields {
249
- row-gap: var(--spacing-x-small);
250
- flex-flow: column;
251
- }
252
- }
253
250
  .dnb-forms-field-postal-code-and-city__postal-code {
254
251
  flex: 0 5rem;
255
252
  }
@@ -307,10 +304,10 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
307
304
  display: grid;
308
305
  }
309
306
  @media screen and (max-width: 40em) {
310
- .dnb-forms-field-block__grid {
307
+ .dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid {
311
308
  flex-wrap: wrap;
312
309
  }
313
- .dnb-forms-field-block__grid > .dnb-form-label {
310
+ .dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid > .dnb-form-label {
314
311
  margin-bottom: 0.5rem;
315
312
  margin-top: 0.5rem;
316
313
  }
@@ -353,6 +350,11 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
353
350
  .dnb-forms-field-block__status .dnb-form-status__shell {
354
351
  margin-top: 0.5rem;
355
352
  }
353
+ @media screen and (max-width: 15em) {
354
+ .dnb-forms-field-block__status {
355
+ width: 90%;
356
+ }
357
+ }
356
358
  .dnb-forms-field-block__contents {
357
359
  grid-area: contents;
358
360
  width: 100%;
@@ -371,6 +373,28 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
371
373
  width: var(--forms-field-width--large);
372
374
  }
373
375
  }
376
+ .dnb-forms-field-block__contents__composition--vertical {
377
+ display: flex;
378
+ flex-flow: column;
379
+ row-gap: var(--spacing-small);
380
+ }
381
+ .dnb-forms-field-block__contents__composition--horizontal {
382
+ display: flex;
383
+ flex-flow: row;
384
+ -moz-column-gap: var(--spacing-small);
385
+ column-gap: var(--spacing-small);
386
+ }
387
+ @media screen and (min-width: 25em) {
388
+ .dnb-forms-field-block__contents__composition--horizontal {
389
+ align-items: flex-end;
390
+ }
391
+ }
392
+ @media screen and (max-width: 25em) {
393
+ .dnb-forms-field-block__contents__composition--horizontal {
394
+ row-gap: var(--spacing-x-small);
395
+ flex-flow: column;
396
+ }
397
+ }
374
398
 
375
399
  /*
376
400
  * Utilities
@@ -381,6 +405,12 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
381
405
  -moz-column-gap: var(--spacing-small);
382
406
  column-gap: var(--spacing-small);
383
407
  }
408
+ .dnb-card + .dnb-forms-button-row:not([class*=space__top]) {
409
+ margin-top: var(--spacing-small);
410
+ }
411
+ .dnb-card + .dnb-forms-button-row:not([class*=space__top]) .dnb-button[class*=space__top] {
412
+ margin-top: 0;
413
+ }
384
414
  @media screen and (min-width: 40em) {
385
415
  .dnb-card + .dnb-forms-button-row:not([class*=space__left]) {
386
416
  margin-left: var(--spacing-medium);