@dnb/eufemia 10.22.0 → 10.23.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 (1077) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/cjs/components/accordion/Accordion.js +1 -1
  3. package/cjs/components/accordion/Accordion.js.map +1 -1
  4. package/cjs/components/accordion/AccordionContext.d.ts +1 -1
  5. package/cjs/components/accordion/AccordionGroup.js +1 -1
  6. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  7. package/cjs/components/anchor/Anchor.d.ts +2 -3
  8. package/cjs/components/anchor/Anchor.js +14 -23
  9. package/cjs/components/anchor/Anchor.js.map +1 -1
  10. package/cjs/components/anchor/style/anchor-mixins.scss +16 -10
  11. package/cjs/components/anchor/style/dnb-anchor.css +6 -12
  12. package/cjs/components/anchor/style/dnb-anchor.min.css +1 -1
  13. package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +8 -16
  14. package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  15. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +126 -78
  16. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  17. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +55 -52
  18. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.css +8 -16
  19. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  20. package/cjs/components/aria-live/useAriaLive.d.ts +1 -1
  21. package/cjs/components/breadcrumb/Breadcrumb.js +26 -17
  22. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  23. package/cjs/components/breadcrumb/BreadcrumbItem.d.ts +6 -4
  24. package/cjs/components/breadcrumb/BreadcrumbItem.js +17 -9
  25. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  26. package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +29 -4
  27. package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  28. package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +32 -4
  29. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +9 -0
  30. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -1
  31. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +7 -0
  32. package/cjs/components/button/style/button--tertiary.scss +30 -75
  33. package/cjs/components/button/style/dnb-button.css +43 -49
  34. package/cjs/components/button/style/dnb-button.min.css +1 -1
  35. package/cjs/components/button/style/dnb-button.scss +46 -59
  36. package/cjs/components/button/style/themes/button-mixins.scss +26 -5
  37. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.css +29 -60
  38. package/cjs/components/button/style/themes/dnb-button-theme-eiendom.min.css +12 -2
  39. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +44 -72
  40. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +16 -4
  41. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +14 -16
  42. package/cjs/components/button/style/themes/dnb-button-theme-ui.css +29 -60
  43. package/cjs/components/button/style/themes/dnb-button-theme-ui.min.css +12 -2
  44. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  45. package/cjs/components/card/Card.d.ts +15 -2
  46. package/cjs/components/card/Card.js +19 -7
  47. package/cjs/components/card/Card.js.map +1 -1
  48. package/cjs/components/card/CardDocs.d.ts +2 -0
  49. package/cjs/components/card/CardDocs.js +65 -0
  50. package/cjs/components/card/CardDocs.js.map +1 -0
  51. package/cjs/components/card/style/dnb-card.css +24 -5
  52. package/cjs/components/card/style/dnb-card.min.css +1 -1
  53. package/cjs/components/card/style/dnb-card.scss +47 -16
  54. package/cjs/components/checkbox/style/dnb-checkbox.css +3 -0
  55. package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
  56. package/cjs/components/checkbox/style/dnb-checkbox.scss +7 -0
  57. package/cjs/components/date-picker/DatePicker.d.ts +2 -0
  58. package/cjs/components/date-picker/DatePicker.js +2 -1
  59. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  60. package/cjs/components/date-picker/DatePickerInput.js +19 -3
  61. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  62. package/cjs/components/date-picker/DatePickerProvider.js +8 -3
  63. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  64. package/cjs/components/dropdown/style/dnb-dropdown.css +3 -0
  65. package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
  66. package/cjs/components/dropdown/style/dnb-dropdown.scss +4 -0
  67. package/cjs/components/form-label/FormLabel.js +1 -1
  68. package/cjs/components/form-label/FormLabel.js.map +1 -1
  69. package/cjs/components/form-label/style/dnb-form-label.css +3 -0
  70. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  71. package/cjs/components/form-label/style/dnb-form-label.scss +4 -0
  72. package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +0 -3
  73. package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -1
  74. package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +0 -8
  75. package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.css +0 -6
  76. package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
  77. package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.scss +0 -8
  78. package/cjs/components/heading/HeadingContext.d.ts +1 -1
  79. package/cjs/components/height-animation/style/dnb-height-animation.css +2 -2
  80. package/cjs/components/height-animation/style/dnb-height-animation.min.css +1 -1
  81. package/cjs/components/height-animation/style/dnb-height-animation.scss +3 -2
  82. package/cjs/components/number-format/NumberUtils.d.ts +1 -1
  83. package/cjs/components/radio/style/dnb-radio.css +4 -0
  84. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  85. package/cjs/components/radio/style/dnb-radio.scss +9 -0
  86. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +3 -6
  87. package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  88. package/cjs/components/skeleton/SkeletonHelper.d.ts +6 -6
  89. package/cjs/components/skeleton/style/dnb-skeleton.css +1 -0
  90. package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
  91. package/cjs/components/skeleton/style/dnb-skeleton.scss +1 -0
  92. package/cjs/components/slider/SliderInstance.js +1 -0
  93. package/cjs/components/slider/SliderInstance.js.map +1 -1
  94. package/cjs/components/slider/SliderThumb.js +4 -2
  95. package/cjs/components/slider/SliderThumb.js.map +1 -1
  96. package/cjs/components/step-indicator/StepIndicator.js +11 -5
  97. package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
  98. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.css +1 -1
  99. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.min.css +1 -1
  100. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.scss +1 -1
  101. package/cjs/components/table/TableScrollView.d.ts +5 -1
  102. package/cjs/components/table/TableScrollView.js +1 -0
  103. package/cjs/components/table/TableScrollView.js.map +1 -1
  104. package/cjs/components/table/TableTr.d.ts +1 -2
  105. package/cjs/components/table/TableTr.js.map +1 -1
  106. package/cjs/components/table/style/dnb-table.css +8 -1
  107. package/cjs/components/table/style/dnb-table.min.css +1 -1
  108. package/cjs/components/table/style/dnb-table.scss +7 -1
  109. package/cjs/components/table/style/table-header-buttons.scss +4 -1
  110. package/cjs/components/table/useTableAnimationHandler.d.ts +1 -1
  111. package/cjs/components/table/useTableAnimationHandler.js +3 -3
  112. package/cjs/components/table/useTableAnimationHandler.js.map +1 -1
  113. package/cjs/components/tag/Tag.d.ts +11 -0
  114. package/cjs/components/tag/Tag.js +55 -40
  115. package/cjs/components/tag/Tag.js.map +1 -1
  116. package/cjs/components/tag/style/dnb-tag.css +50 -86
  117. package/cjs/components/tag/style/dnb-tag.min.css +1 -1
  118. package/cjs/components/tag/style/dnb-tag.scss +37 -45
  119. package/cjs/components/tag/style/themes/tag-mixins.scss +24 -6
  120. package/cjs/components/tooltip/Tooltip.js +1 -1
  121. package/cjs/components/tooltip/Tooltip.js.map +1 -1
  122. package/cjs/elements/Element.d.ts +3 -4
  123. package/cjs/elements/Element.js.map +1 -1
  124. package/cjs/elements/code/style/themes/dnb-code-theme-sbanken.scss +5 -3
  125. package/cjs/extensions/forms/DataContext/At/At.js.map +1 -1
  126. package/cjs/extensions/forms/DataContext/Context.d.ts +31 -8
  127. package/cjs/extensions/forms/DataContext/Context.js +14 -3
  128. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  129. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +29 -16
  130. package/cjs/extensions/forms/DataContext/Provider/Provider.js +324 -77
  131. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  132. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.d.ts +3 -0
  133. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +93 -0
  134. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -0
  135. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
  136. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  137. package/cjs/extensions/forms/Field/Date/Date.js +3 -3
  138. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  139. package/cjs/extensions/forms/Field/Expiry/Expiry.js +4 -4
  140. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  141. package/cjs/extensions/forms/Field/Number/Number.js +3 -3
  142. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  143. package/cjs/extensions/forms/Field/Password/Password.d.ts +1 -1
  144. package/cjs/extensions/forms/Field/Password/Password.js.map +1 -1
  145. package/cjs/extensions/forms/Field/Password/style/dnb-password.scss +1 -1
  146. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +4 -4
  147. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  148. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -1
  149. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  150. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +3 -3
  151. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  152. package/cjs/extensions/forms/Field/Selection/Selection.js +5 -5
  153. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  154. package/cjs/extensions/forms/Field/String/String.js +3 -3
  155. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  156. package/cjs/extensions/forms/Field/String/StringDocs.js +9 -4
  157. package/cjs/extensions/forms/Field/String/StringDocs.js.map +1 -1
  158. package/cjs/extensions/forms/Field/Toggle/Toggle.js +7 -7
  159. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  160. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -1
  161. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +41 -19
  162. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  163. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  164. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  165. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  166. package/cjs/extensions/forms/Form/Handler/Handler.js +50 -8
  167. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  168. package/cjs/extensions/forms/Form/Handler/HandlerDocs.d.ts +3 -0
  169. package/cjs/extensions/forms/Form/Handler/HandlerDocs.js +49 -0
  170. package/cjs/extensions/forms/Form/Handler/HandlerDocs.js.map +1 -0
  171. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.d.ts +6 -1
  172. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +19 -10
  173. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  174. package/cjs/extensions/forms/Form/SubmitButton/SubmitButtonDocs.d.ts +2 -0
  175. package/cjs/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js +30 -0
  176. package/cjs/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js.map +1 -0
  177. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.d.ts +14 -0
  178. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +81 -0
  179. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -0
  180. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.d.ts +2 -0
  181. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js +25 -0
  182. package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js.map +1 -0
  183. package/cjs/extensions/forms/Form/SubmitIndicator/index.d.ts +2 -0
  184. package/cjs/extensions/forms/Form/SubmitIndicator/index.js +27 -0
  185. package/cjs/extensions/forms/Form/SubmitIndicator/index.js.map +1 -0
  186. package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +99 -0
  187. package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -0
  188. package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +117 -0
  189. package/cjs/extensions/forms/Form/SubmitIndicator/style/index.d.ts +5 -0
  190. package/cjs/extensions/forms/Form/SubmitIndicator/style/index.js +4 -0
  191. package/cjs/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -0
  192. package/cjs/extensions/forms/Form/data-context/getData.d.ts +1 -1
  193. package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -1
  194. package/cjs/extensions/forms/Form/data-context/useData.d.ts +3 -3
  195. package/cjs/extensions/forms/Form/data-context/useData.js +32 -12
  196. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  197. package/cjs/extensions/forms/Form/data-context/useError.d.ts +3 -2
  198. package/cjs/extensions/forms/Form/data-context/useError.js +8 -5
  199. package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -1
  200. package/cjs/extensions/forms/Form/index.d.ts +1 -0
  201. package/cjs/extensions/forms/Form/index.js +7 -0
  202. package/cjs/extensions/forms/Form/index.js.map +1 -1
  203. package/cjs/extensions/forms/Iterate/Array/Array.js +1 -1
  204. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  205. package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +1 -1
  206. package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  207. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +1 -1
  208. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  209. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.d.ts +1 -3
  210. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js +4 -3
  211. package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  212. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.d.ts +1 -3
  213. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +6 -2
  214. package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  215. package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +2 -2
  216. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +54 -25
  217. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  218. package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +3 -0
  219. package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.js +58 -0
  220. package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +1 -0
  221. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -1
  222. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  223. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +11 -1
  224. package/cjs/extensions/forms/Value/Boolean/Boolean.js +1 -1
  225. package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  226. package/cjs/extensions/forms/Value/Number/Number.js +5 -5
  227. package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
  228. package/cjs/extensions/forms/Value/String/String.js +1 -1
  229. package/cjs/extensions/forms/Value/String/String.js.map +1 -1
  230. package/cjs/extensions/forms/hooks/DataValueDocs.js +3 -3
  231. package/cjs/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  232. package/cjs/extensions/forms/hooks/index.d.ts +6 -3
  233. package/cjs/extensions/forms/hooks/index.js +4 -12
  234. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  235. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +23 -0
  236. package/cjs/extensions/forms/hooks/useFieldProps.js +774 -0
  237. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -0
  238. package/cjs/extensions/forms/style/dnb-forms.css +105 -1
  239. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  240. package/cjs/extensions/forms/types.d.ts +67 -4
  241. package/cjs/extensions/forms/types.js +3 -2
  242. package/cjs/extensions/forms/types.js.map +1 -1
  243. package/cjs/extensions/forms/utils/ajv.d.ts +9 -7
  244. package/cjs/extensions/forms/utils/ajv.js +29 -16
  245. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  246. package/cjs/fragments/scroll-view/ScrollView.d.ts +2 -2
  247. package/cjs/fragments/scroll-view/ScrollView.js +4 -1
  248. package/cjs/fragments/scroll-view/ScrollView.js.map +1 -1
  249. package/cjs/shared/Context.d.ts +20 -11
  250. package/cjs/shared/Context.js.map +1 -1
  251. package/cjs/shared/Eufemia.d.ts +2 -2
  252. package/cjs/shared/Eufemia.js +2 -2
  253. package/cjs/shared/Eufemia.js.map +1 -1
  254. package/cjs/shared/Provider.js.map +1 -1
  255. package/cjs/shared/defaults.d.ts +3 -3
  256. package/cjs/shared/defaults.js.map +1 -1
  257. package/cjs/shared/helpers/debounce.d.ts +21 -30
  258. package/cjs/shared/helpers/debounce.js +23 -11
  259. package/cjs/shared/helpers/debounce.js.map +1 -1
  260. package/cjs/shared/helpers/isAsync.d.ts +7 -0
  261. package/cjs/shared/helpers/isAsync.js +20 -0
  262. package/cjs/shared/helpers/isAsync.js.map +1 -0
  263. package/cjs/shared/helpers/runCssVersionMismatchWarning.d.ts +8 -0
  264. package/cjs/shared/helpers/runCssVersionMismatchWarning.js +31 -0
  265. package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -0
  266. package/cjs/{extensions/forms/hooks → shared/helpers}/useId.js +1 -1
  267. package/cjs/shared/helpers/useId.js.map +1 -0
  268. package/cjs/shared/helpers/useMountEffect.js.map +1 -0
  269. package/cjs/shared/helpers/useMounted.js.map +1 -0
  270. package/cjs/shared/helpers/useSharedState.js +15 -9
  271. package/cjs/shared/helpers/useSharedState.js.map +1 -1
  272. package/cjs/shared/helpers/useUnmountEffect.js.map +1 -0
  273. package/cjs/shared/helpers/useUpdateEffect.js.map +1 -0
  274. package/cjs/shared/helpers.js +2 -0
  275. package/cjs/shared/helpers.js.map +1 -1
  276. package/cjs/shared/index.d.ts +10 -10
  277. package/cjs/shared/index.js +7 -1
  278. package/cjs/shared/index.js.map +1 -1
  279. package/cjs/shared/locales/en-GB.d.ts +1 -0
  280. package/cjs/shared/locales/en-GB.js +2 -1
  281. package/cjs/shared/locales/en-GB.js.map +1 -1
  282. package/cjs/shared/locales/en-US.d.ts +1 -0
  283. package/cjs/shared/locales/index.d.ts +4 -2
  284. package/cjs/shared/locales/index.js +2 -1
  285. package/cjs/shared/locales/index.js.map +1 -1
  286. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  287. package/cjs/shared/locales/nb-NO.js +2 -1
  288. package/cjs/shared/locales/nb-NO.js.map +1 -1
  289. package/cjs/shared/types.d.ts +4 -1
  290. package/cjs/shared/types.js.map +1 -1
  291. package/cjs/shared/useLocale.d.ts +2 -0
  292. package/cjs/shared/useLocale.js +37 -0
  293. package/cjs/shared/useLocale.js.map +1 -0
  294. package/cjs/style/core/scopes.scss +3 -0
  295. package/cjs/style/dnb-ui-basis.css +1 -0
  296. package/cjs/style/dnb-ui-basis.min.css +1 -1
  297. package/cjs/style/dnb-ui-body.css +1 -0
  298. package/cjs/style/dnb-ui-body.min.css +1 -1
  299. package/cjs/style/dnb-ui-components.css +281 -160
  300. package/cjs/style/dnb-ui-components.min.css +3 -3
  301. package/cjs/style/dnb-ui-core.css +1 -0
  302. package/cjs/style/dnb-ui-core.min.css +1 -1
  303. package/cjs/style/dnb-ui-extensions.css +105 -1
  304. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  305. package/cjs/style/dnb-ui-forms.css +105 -1
  306. package/cjs/style/dnb-ui-forms.min.css +1 -1
  307. package/cjs/style/dnb-ui-forms.scss +1 -0
  308. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +3 -6
  309. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  310. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +427 -250
  311. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +16 -6
  312. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +3 -6
  313. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  314. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +105 -1
  315. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  316. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +105 -1
  317. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  318. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +5 -2
  319. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  320. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +566 -315
  321. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +20 -8
  322. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +5 -2
  323. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  324. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +105 -1
  325. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  326. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +105 -1
  327. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  328. package/cjs/style/themes/theme-ui/ui-theme-basis.css +3 -6
  329. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  330. package/cjs/style/themes/theme-ui/ui-theme-components.css +427 -250
  331. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +16 -6
  332. package/cjs/style/themes/theme-ui/ui-theme-elements.css +3 -6
  333. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  334. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +105 -1
  335. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  336. package/cjs/style/themes/theme-ui/ui-theme-forms.css +105 -1
  337. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  338. package/cjs/style/themes/theme-ui/ui-theme-tags.css +3 -6
  339. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  340. package/components/accordion/Accordion.js +1 -1
  341. package/components/accordion/Accordion.js.map +1 -1
  342. package/components/accordion/AccordionContext.d.ts +1 -1
  343. package/components/accordion/AccordionGroup.js +1 -1
  344. package/components/accordion/AccordionGroup.js.map +1 -1
  345. package/components/anchor/Anchor.d.ts +2 -3
  346. package/components/anchor/Anchor.js +14 -23
  347. package/components/anchor/Anchor.js.map +1 -1
  348. package/components/anchor/style/anchor-mixins.scss +16 -10
  349. package/components/anchor/style/dnb-anchor.css +6 -12
  350. package/components/anchor/style/dnb-anchor.min.css +1 -1
  351. package/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +8 -16
  352. package/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  353. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +126 -78
  354. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  355. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +55 -52
  356. package/components/anchor/style/themes/dnb-anchor-theme-ui.css +8 -16
  357. package/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  358. package/components/aria-live/useAriaLive.d.ts +1 -1
  359. package/components/breadcrumb/Breadcrumb.js +27 -18
  360. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  361. package/components/breadcrumb/BreadcrumbItem.d.ts +6 -4
  362. package/components/breadcrumb/BreadcrumbItem.js +18 -10
  363. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  364. package/components/breadcrumb/style/dnb-breadcrumb.css +29 -4
  365. package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  366. package/components/breadcrumb/style/dnb-breadcrumb.scss +32 -4
  367. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +9 -0
  368. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -1
  369. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +7 -0
  370. package/components/button/style/button--tertiary.scss +30 -75
  371. package/components/button/style/dnb-button.css +43 -49
  372. package/components/button/style/dnb-button.min.css +1 -1
  373. package/components/button/style/dnb-button.scss +46 -59
  374. package/components/button/style/themes/button-mixins.scss +26 -5
  375. package/components/button/style/themes/dnb-button-theme-eiendom.css +29 -60
  376. package/components/button/style/themes/dnb-button-theme-eiendom.min.css +12 -2
  377. package/components/button/style/themes/dnb-button-theme-sbanken.css +44 -72
  378. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +16 -4
  379. package/components/button/style/themes/dnb-button-theme-sbanken.scss +14 -16
  380. package/components/button/style/themes/dnb-button-theme-ui.css +29 -60
  381. package/components/button/style/themes/dnb-button-theme-ui.min.css +12 -2
  382. package/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  383. package/components/card/Card.d.ts +15 -2
  384. package/components/card/Card.js +19 -7
  385. package/components/card/Card.js.map +1 -1
  386. package/components/card/CardDocs.d.ts +2 -0
  387. package/components/card/CardDocs.js +58 -0
  388. package/components/card/CardDocs.js.map +1 -0
  389. package/components/card/style/dnb-card.css +24 -5
  390. package/components/card/style/dnb-card.min.css +1 -1
  391. package/components/card/style/dnb-card.scss +47 -16
  392. package/components/checkbox/style/dnb-checkbox.css +3 -0
  393. package/components/checkbox/style/dnb-checkbox.min.css +1 -1
  394. package/components/checkbox/style/dnb-checkbox.scss +7 -0
  395. package/components/date-picker/DatePicker.d.ts +2 -0
  396. package/components/date-picker/DatePicker.js +2 -1
  397. package/components/date-picker/DatePicker.js.map +1 -1
  398. package/components/date-picker/DatePickerInput.js +19 -3
  399. package/components/date-picker/DatePickerInput.js.map +1 -1
  400. package/components/date-picker/DatePickerProvider.js +8 -3
  401. package/components/date-picker/DatePickerProvider.js.map +1 -1
  402. package/components/dropdown/style/dnb-dropdown.css +3 -0
  403. package/components/dropdown/style/dnb-dropdown.min.css +1 -1
  404. package/components/dropdown/style/dnb-dropdown.scss +4 -0
  405. package/components/form-label/FormLabel.js +1 -1
  406. package/components/form-label/FormLabel.js.map +1 -1
  407. package/components/form-label/style/dnb-form-label.css +3 -0
  408. package/components/form-label/style/dnb-form-label.min.css +1 -1
  409. package/components/form-label/style/dnb-form-label.scss +4 -0
  410. package/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +0 -3
  411. package/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -1
  412. package/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +0 -8
  413. package/components/form-label/style/themes/dnb-form-label-theme-ui.css +0 -6
  414. package/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
  415. package/components/form-label/style/themes/dnb-form-label-theme-ui.scss +0 -8
  416. package/components/heading/HeadingContext.d.ts +1 -1
  417. package/components/height-animation/style/dnb-height-animation.css +2 -2
  418. package/components/height-animation/style/dnb-height-animation.min.css +1 -1
  419. package/components/height-animation/style/dnb-height-animation.scss +3 -2
  420. package/components/number-format/NumberUtils.d.ts +1 -1
  421. package/components/radio/style/dnb-radio.css +4 -0
  422. package/components/radio/style/dnb-radio.min.css +1 -1
  423. package/components/radio/style/dnb-radio.scss +9 -0
  424. package/components/section/style/themes/dnb-section-theme-ui.css +3 -6
  425. package/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  426. package/components/skeleton/SkeletonHelper.d.ts +6 -6
  427. package/components/skeleton/style/dnb-skeleton.css +1 -0
  428. package/components/skeleton/style/dnb-skeleton.min.css +1 -1
  429. package/components/skeleton/style/dnb-skeleton.scss +1 -0
  430. package/components/slider/SliderInstance.js +1 -0
  431. package/components/slider/SliderInstance.js.map +1 -1
  432. package/components/slider/SliderThumb.js +4 -2
  433. package/components/slider/SliderThumb.js.map +1 -1
  434. package/components/step-indicator/StepIndicator.js +11 -6
  435. package/components/step-indicator/StepIndicator.js.map +1 -1
  436. package/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.css +1 -1
  437. package/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.min.css +1 -1
  438. package/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.scss +1 -1
  439. package/components/table/TableScrollView.d.ts +5 -1
  440. package/components/table/TableScrollView.js +1 -0
  441. package/components/table/TableScrollView.js.map +1 -1
  442. package/components/table/TableTr.d.ts +1 -2
  443. package/components/table/TableTr.js.map +1 -1
  444. package/components/table/style/dnb-table.css +8 -1
  445. package/components/table/style/dnb-table.min.css +1 -1
  446. package/components/table/style/dnb-table.scss +7 -1
  447. package/components/table/style/table-header-buttons.scss +4 -1
  448. package/components/table/useTableAnimationHandler.d.ts +1 -1
  449. package/components/table/useTableAnimationHandler.js +3 -3
  450. package/components/table/useTableAnimationHandler.js.map +1 -1
  451. package/components/tag/Tag.d.ts +11 -0
  452. package/components/tag/Tag.js +54 -39
  453. package/components/tag/Tag.js.map +1 -1
  454. package/components/tag/style/dnb-tag.css +50 -86
  455. package/components/tag/style/dnb-tag.min.css +1 -1
  456. package/components/tag/style/dnb-tag.scss +37 -45
  457. package/components/tag/style/themes/tag-mixins.scss +24 -6
  458. package/components/tooltip/Tooltip.js +1 -1
  459. package/components/tooltip/Tooltip.js.map +1 -1
  460. package/elements/Element.d.ts +3 -4
  461. package/elements/Element.js.map +1 -1
  462. package/elements/code/style/themes/dnb-code-theme-sbanken.scss +5 -3
  463. package/es/components/accordion/Accordion.js +1 -1
  464. package/es/components/accordion/Accordion.js.map +1 -1
  465. package/es/components/accordion/AccordionContext.d.ts +1 -1
  466. package/es/components/accordion/AccordionGroup.js +1 -1
  467. package/es/components/accordion/AccordionGroup.js.map +1 -1
  468. package/es/components/anchor/Anchor.d.ts +2 -3
  469. package/es/components/anchor/Anchor.js +14 -23
  470. package/es/components/anchor/Anchor.js.map +1 -1
  471. package/es/components/anchor/style/anchor-mixins.scss +16 -10
  472. package/es/components/anchor/style/dnb-anchor.css +6 -12
  473. package/es/components/anchor/style/dnb-anchor.min.css +1 -1
  474. package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +8 -16
  475. package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
  476. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +126 -78
  477. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  478. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +55 -52
  479. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.css +8 -16
  480. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  481. package/es/components/aria-live/useAriaLive.d.ts +1 -1
  482. package/es/components/breadcrumb/Breadcrumb.js +27 -18
  483. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  484. package/es/components/breadcrumb/BreadcrumbItem.d.ts +6 -4
  485. package/es/components/breadcrumb/BreadcrumbItem.js +18 -10
  486. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  487. package/es/components/breadcrumb/style/dnb-breadcrumb.css +29 -4
  488. package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
  489. package/es/components/breadcrumb/style/dnb-breadcrumb.scss +32 -4
  490. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +9 -0
  491. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -1
  492. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +7 -0
  493. package/es/components/button/style/button--tertiary.scss +30 -75
  494. package/es/components/button/style/dnb-button.css +43 -49
  495. package/es/components/button/style/dnb-button.min.css +1 -1
  496. package/es/components/button/style/dnb-button.scss +46 -59
  497. package/es/components/button/style/themes/button-mixins.scss +26 -5
  498. package/es/components/button/style/themes/dnb-button-theme-eiendom.css +29 -60
  499. package/es/components/button/style/themes/dnb-button-theme-eiendom.min.css +12 -2
  500. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +44 -72
  501. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +16 -4
  502. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +14 -16
  503. package/es/components/button/style/themes/dnb-button-theme-ui.css +29 -60
  504. package/es/components/button/style/themes/dnb-button-theme-ui.min.css +12 -2
  505. package/es/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
  506. package/es/components/card/Card.d.ts +15 -2
  507. package/es/components/card/Card.js +19 -7
  508. package/es/components/card/Card.js.map +1 -1
  509. package/es/components/card/CardDocs.d.ts +2 -0
  510. package/es/components/card/CardDocs.js +58 -0
  511. package/es/components/card/CardDocs.js.map +1 -0
  512. package/es/components/card/style/dnb-card.css +24 -5
  513. package/es/components/card/style/dnb-card.min.css +1 -1
  514. package/es/components/card/style/dnb-card.scss +47 -16
  515. package/es/components/checkbox/style/dnb-checkbox.css +3 -0
  516. package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
  517. package/es/components/checkbox/style/dnb-checkbox.scss +7 -0
  518. package/es/components/date-picker/DatePicker.d.ts +2 -0
  519. package/es/components/date-picker/DatePicker.js +2 -1
  520. package/es/components/date-picker/DatePicker.js.map +1 -1
  521. package/es/components/date-picker/DatePickerInput.js +19 -3
  522. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  523. package/es/components/date-picker/DatePickerProvider.js +8 -3
  524. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  525. package/es/components/dropdown/style/dnb-dropdown.css +3 -0
  526. package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
  527. package/es/components/dropdown/style/dnb-dropdown.scss +4 -0
  528. package/es/components/form-label/FormLabel.js +1 -1
  529. package/es/components/form-label/FormLabel.js.map +1 -1
  530. package/es/components/form-label/style/dnb-form-label.css +3 -0
  531. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  532. package/es/components/form-label/style/dnb-form-label.scss +4 -0
  533. package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +0 -3
  534. package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -1
  535. package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +0 -8
  536. package/es/components/form-label/style/themes/dnb-form-label-theme-ui.css +0 -6
  537. package/es/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
  538. package/es/components/form-label/style/themes/dnb-form-label-theme-ui.scss +0 -8
  539. package/es/components/heading/HeadingContext.d.ts +1 -1
  540. package/es/components/height-animation/style/dnb-height-animation.css +2 -2
  541. package/es/components/height-animation/style/dnb-height-animation.min.css +1 -1
  542. package/es/components/height-animation/style/dnb-height-animation.scss +3 -2
  543. package/es/components/number-format/NumberUtils.d.ts +1 -1
  544. package/es/components/radio/style/dnb-radio.css +4 -0
  545. package/es/components/radio/style/dnb-radio.min.css +1 -1
  546. package/es/components/radio/style/dnb-radio.scss +9 -0
  547. package/es/components/section/style/themes/dnb-section-theme-ui.css +3 -6
  548. package/es/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  549. package/es/components/skeleton/SkeletonHelper.d.ts +6 -6
  550. package/es/components/skeleton/style/dnb-skeleton.css +1 -0
  551. package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
  552. package/es/components/skeleton/style/dnb-skeleton.scss +1 -0
  553. package/es/components/slider/SliderInstance.js +1 -0
  554. package/es/components/slider/SliderInstance.js.map +1 -1
  555. package/es/components/slider/SliderThumb.js +4 -2
  556. package/es/components/slider/SliderThumb.js.map +1 -1
  557. package/es/components/step-indicator/StepIndicator.js +11 -6
  558. package/es/components/step-indicator/StepIndicator.js.map +1 -1
  559. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.css +1 -1
  560. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.min.css +1 -1
  561. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.scss +1 -1
  562. package/es/components/table/TableScrollView.d.ts +5 -1
  563. package/es/components/table/TableScrollView.js +1 -0
  564. package/es/components/table/TableScrollView.js.map +1 -1
  565. package/es/components/table/TableTr.d.ts +1 -2
  566. package/es/components/table/TableTr.js.map +1 -1
  567. package/es/components/table/style/dnb-table.css +8 -1
  568. package/es/components/table/style/dnb-table.min.css +1 -1
  569. package/es/components/table/style/dnb-table.scss +7 -1
  570. package/es/components/table/style/table-header-buttons.scss +4 -1
  571. package/es/components/table/useTableAnimationHandler.d.ts +1 -1
  572. package/es/components/table/useTableAnimationHandler.js +3 -3
  573. package/es/components/table/useTableAnimationHandler.js.map +1 -1
  574. package/es/components/tag/Tag.d.ts +11 -0
  575. package/es/components/tag/Tag.js +54 -39
  576. package/es/components/tag/Tag.js.map +1 -1
  577. package/es/components/tag/style/dnb-tag.css +50 -86
  578. package/es/components/tag/style/dnb-tag.min.css +1 -1
  579. package/es/components/tag/style/dnb-tag.scss +37 -45
  580. package/es/components/tag/style/themes/tag-mixins.scss +24 -6
  581. package/es/components/tooltip/Tooltip.js +1 -1
  582. package/es/components/tooltip/Tooltip.js.map +1 -1
  583. package/es/elements/Element.d.ts +3 -4
  584. package/es/elements/Element.js.map +1 -1
  585. package/es/elements/code/style/themes/dnb-code-theme-sbanken.scss +5 -3
  586. package/es/extensions/forms/DataContext/At/At.js.map +1 -1
  587. package/es/extensions/forms/DataContext/Context.d.ts +31 -8
  588. package/es/extensions/forms/DataContext/Context.js +14 -3
  589. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  590. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +29 -16
  591. package/es/extensions/forms/DataContext/Provider/Provider.js +321 -75
  592. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  593. package/es/extensions/forms/DataContext/Provider/ProviderDocs.d.ts +3 -0
  594. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +85 -0
  595. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -0
  596. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +2 -2
  597. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  598. package/es/extensions/forms/Field/Date/Date.js +4 -4
  599. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  600. package/es/extensions/forms/Field/Expiry/Expiry.js +5 -5
  601. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  602. package/es/extensions/forms/Field/Number/Number.js +4 -4
  603. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  604. package/es/extensions/forms/Field/Password/Password.d.ts +1 -1
  605. package/es/extensions/forms/Field/Password/Password.js.map +1 -1
  606. package/es/extensions/forms/Field/Password/style/dnb-password.scss +1 -1
  607. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +5 -5
  608. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  609. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -1
  610. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  611. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  612. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  613. package/es/extensions/forms/Field/Selection/Selection.js +6 -6
  614. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  615. package/es/extensions/forms/Field/String/String.js +4 -4
  616. package/es/extensions/forms/Field/String/String.js.map +1 -1
  617. package/es/extensions/forms/Field/String/StringDocs.js +9 -4
  618. package/es/extensions/forms/Field/String/StringDocs.js.map +1 -1
  619. package/es/extensions/forms/Field/Toggle/Toggle.js +8 -8
  620. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  621. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -1
  622. package/es/extensions/forms/FieldBlock/FieldBlock.js +41 -20
  623. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  624. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  625. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  626. package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  627. package/es/extensions/forms/Form/Handler/Handler.js +45 -9
  628. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  629. package/es/extensions/forms/Form/Handler/HandlerDocs.d.ts +3 -0
  630. package/es/extensions/forms/Form/Handler/HandlerDocs.js +39 -0
  631. package/es/extensions/forms/Form/Handler/HandlerDocs.js.map +1 -0
  632. package/es/extensions/forms/Form/SubmitButton/SubmitButton.d.ts +6 -1
  633. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +21 -12
  634. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  635. package/es/extensions/forms/Form/SubmitButton/SubmitButtonDocs.d.ts +2 -0
  636. package/es/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js +23 -0
  637. package/es/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js.map +1 -0
  638. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.d.ts +14 -0
  639. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +69 -0
  640. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -0
  641. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.d.ts +2 -0
  642. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js +18 -0
  643. package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js.map +1 -0
  644. package/es/extensions/forms/Form/SubmitIndicator/index.d.ts +2 -0
  645. package/es/extensions/forms/Form/SubmitIndicator/index.js +3 -0
  646. package/es/extensions/forms/Form/SubmitIndicator/index.js.map +1 -0
  647. package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +99 -0
  648. package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -0
  649. package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +117 -0
  650. package/es/extensions/forms/Form/SubmitIndicator/style/index.d.ts +5 -0
  651. package/es/extensions/forms/Form/SubmitIndicator/style/index.js +1 -0
  652. package/es/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -0
  653. package/es/extensions/forms/Form/data-context/getData.d.ts +1 -1
  654. package/es/extensions/forms/Form/data-context/getData.js.map +1 -1
  655. package/es/extensions/forms/Form/data-context/useData.d.ts +3 -3
  656. package/es/extensions/forms/Form/data-context/useData.js +30 -12
  657. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  658. package/es/extensions/forms/Form/data-context/useError.d.ts +3 -2
  659. package/es/extensions/forms/Form/data-context/useError.js +7 -6
  660. package/es/extensions/forms/Form/data-context/useError.js.map +1 -1
  661. package/es/extensions/forms/Form/index.d.ts +1 -0
  662. package/es/extensions/forms/Form/index.js +1 -0
  663. package/es/extensions/forms/Form/index.js.map +1 -1
  664. package/es/extensions/forms/Iterate/Array/Array.js +2 -2
  665. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  666. package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +2 -2
  667. package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  668. package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +2 -2
  669. package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  670. package/es/extensions/forms/StepsLayout/NextButton/NextButton.d.ts +1 -3
  671. package/es/extensions/forms/StepsLayout/NextButton/NextButton.js +4 -3
  672. package/es/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  673. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.d.ts +1 -3
  674. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +6 -2
  675. package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  676. package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +2 -2
  677. package/es/extensions/forms/StepsLayout/StepsLayout.js +55 -26
  678. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  679. package/es/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +3 -0
  680. package/es/extensions/forms/StepsLayout/StepsLayoutDocs.js +50 -0
  681. package/es/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +1 -0
  682. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -1
  683. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  684. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +11 -1
  685. package/es/extensions/forms/Value/Boolean/Boolean.js +2 -2
  686. package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  687. package/es/extensions/forms/Value/Number/Number.js +5 -5
  688. package/es/extensions/forms/Value/Number/Number.js.map +1 -1
  689. package/es/extensions/forms/Value/String/String.js +2 -2
  690. package/es/extensions/forms/Value/String/String.js.map +1 -1
  691. package/es/extensions/forms/hooks/DataValueDocs.js +3 -3
  692. package/es/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  693. package/es/extensions/forms/hooks/index.d.ts +6 -3
  694. package/es/extensions/forms/hooks/index.js +2 -3
  695. package/es/extensions/forms/hooks/index.js.map +1 -1
  696. package/es/extensions/forms/hooks/useFieldProps.d.ts +23 -0
  697. package/es/extensions/forms/hooks/useFieldProps.js +749 -0
  698. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -0
  699. package/es/extensions/forms/style/dnb-forms.css +105 -1
  700. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  701. package/es/extensions/forms/types.d.ts +67 -4
  702. package/es/extensions/forms/types.js +3 -2
  703. package/es/extensions/forms/types.js.map +1 -1
  704. package/es/extensions/forms/utils/ajv.d.ts +9 -7
  705. package/es/extensions/forms/utils/ajv.js +29 -14
  706. package/es/extensions/forms/utils/ajv.js.map +1 -1
  707. package/es/fragments/scroll-view/ScrollView.d.ts +2 -2
  708. package/es/fragments/scroll-view/ScrollView.js +4 -1
  709. package/es/fragments/scroll-view/ScrollView.js.map +1 -1
  710. package/es/shared/Context.d.ts +20 -11
  711. package/es/shared/Context.js.map +1 -1
  712. package/es/shared/Eufemia.d.ts +2 -2
  713. package/es/shared/Eufemia.js +2 -2
  714. package/es/shared/Eufemia.js.map +1 -1
  715. package/es/shared/Provider.js.map +1 -1
  716. package/es/shared/defaults.d.ts +3 -3
  717. package/es/shared/defaults.js.map +1 -1
  718. package/es/shared/helpers/debounce.d.ts +21 -30
  719. package/es/shared/helpers/debounce.js +21 -9
  720. package/es/shared/helpers/debounce.js.map +1 -1
  721. package/es/shared/helpers/isAsync.d.ts +7 -0
  722. package/es/shared/helpers/isAsync.js +14 -0
  723. package/es/shared/helpers/isAsync.js.map +1 -0
  724. package/es/shared/helpers/runCssVersionMismatchWarning.d.ts +8 -0
  725. package/es/shared/helpers/runCssVersionMismatchWarning.js +25 -0
  726. package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -0
  727. package/es/{extensions/forms/hooks → shared/helpers}/useId.js +1 -1
  728. package/es/shared/helpers/useId.js.map +1 -0
  729. package/es/shared/helpers/useMountEffect.js.map +1 -0
  730. package/es/shared/helpers/useMounted.js.map +1 -0
  731. package/es/shared/helpers/useSharedState.js +15 -9
  732. package/es/shared/helpers/useSharedState.js.map +1 -1
  733. package/es/shared/helpers/useUnmountEffect.js.map +1 -0
  734. package/es/shared/helpers/useUpdateEffect.js.map +1 -0
  735. package/es/shared/helpers.js +2 -0
  736. package/es/shared/helpers.js.map +1 -1
  737. package/es/shared/index.d.ts +10 -10
  738. package/es/shared/index.js +9 -11
  739. package/es/shared/index.js.map +1 -1
  740. package/es/shared/locales/en-GB.d.ts +1 -0
  741. package/es/shared/locales/en-GB.js +2 -1
  742. package/es/shared/locales/en-GB.js.map +1 -1
  743. package/es/shared/locales/en-US.d.ts +1 -0
  744. package/es/shared/locales/index.d.ts +4 -2
  745. package/es/shared/locales/index.js +2 -1
  746. package/es/shared/locales/index.js.map +1 -1
  747. package/es/shared/locales/nb-NO.d.ts +1 -0
  748. package/es/shared/locales/nb-NO.js +2 -1
  749. package/es/shared/locales/nb-NO.js.map +1 -1
  750. package/es/shared/types.d.ts +4 -1
  751. package/es/shared/types.js.map +1 -1
  752. package/es/shared/useLocale.d.ts +2 -0
  753. package/es/shared/useLocale.js +29 -0
  754. package/es/shared/useLocale.js.map +1 -0
  755. package/es/style/core/scopes.scss +3 -0
  756. package/es/style/dnb-ui-basis.css +1 -0
  757. package/es/style/dnb-ui-basis.min.css +1 -1
  758. package/es/style/dnb-ui-body.css +1 -0
  759. package/es/style/dnb-ui-body.min.css +1 -1
  760. package/es/style/dnb-ui-components.css +281 -160
  761. package/es/style/dnb-ui-components.min.css +3 -3
  762. package/es/style/dnb-ui-core.css +1 -0
  763. package/es/style/dnb-ui-core.min.css +1 -1
  764. package/es/style/dnb-ui-extensions.css +105 -1
  765. package/es/style/dnb-ui-extensions.min.css +1 -1
  766. package/es/style/dnb-ui-forms.css +105 -1
  767. package/es/style/dnb-ui-forms.min.css +1 -1
  768. package/es/style/dnb-ui-forms.scss +1 -0
  769. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +3 -6
  770. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  771. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +427 -250
  772. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +16 -6
  773. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +3 -6
  774. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  775. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +105 -1
  776. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  777. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +105 -1
  778. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  779. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +5 -2
  780. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  781. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +566 -315
  782. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +20 -8
  783. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +5 -2
  784. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  785. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +105 -1
  786. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  787. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +105 -1
  788. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  789. package/es/style/themes/theme-ui/ui-theme-basis.css +3 -6
  790. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  791. package/es/style/themes/theme-ui/ui-theme-components.css +427 -250
  792. package/es/style/themes/theme-ui/ui-theme-components.min.css +16 -6
  793. package/es/style/themes/theme-ui/ui-theme-elements.css +3 -6
  794. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  795. package/es/style/themes/theme-ui/ui-theme-extensions.css +105 -1
  796. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  797. package/es/style/themes/theme-ui/ui-theme-forms.css +105 -1
  798. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  799. package/es/style/themes/theme-ui/ui-theme-tags.css +3 -6
  800. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  801. package/esm/dnb-ui-basis.min.mjs +1 -1
  802. package/esm/dnb-ui-components.min.mjs +1 -1
  803. package/esm/dnb-ui-elements.min.mjs +1 -1
  804. package/esm/dnb-ui-extensions.min.mjs +3 -3
  805. package/esm/dnb-ui-lib.min.mjs +1 -1
  806. package/extensions/forms/DataContext/At/At.js.map +1 -1
  807. package/extensions/forms/DataContext/Context.d.ts +31 -8
  808. package/extensions/forms/DataContext/Context.js +14 -3
  809. package/extensions/forms/DataContext/Context.js.map +1 -1
  810. package/extensions/forms/DataContext/Provider/Provider.d.ts +29 -16
  811. package/extensions/forms/DataContext/Provider/Provider.js +325 -78
  812. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  813. package/extensions/forms/DataContext/Provider/ProviderDocs.d.ts +3 -0
  814. package/extensions/forms/DataContext/Provider/ProviderDocs.js +85 -0
  815. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -0
  816. package/extensions/forms/Field/ArraySelection/ArraySelection.js +2 -2
  817. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  818. package/extensions/forms/Field/Date/Date.js +4 -4
  819. package/extensions/forms/Field/Date/Date.js.map +1 -1
  820. package/extensions/forms/Field/Expiry/Expiry.js +5 -5
  821. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  822. package/extensions/forms/Field/Number/Number.js +4 -4
  823. package/extensions/forms/Field/Number/Number.js.map +1 -1
  824. package/extensions/forms/Field/Password/Password.d.ts +1 -1
  825. package/extensions/forms/Field/Password/Password.js.map +1 -1
  826. package/extensions/forms/Field/Password/style/dnb-password.scss +1 -1
  827. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +5 -5
  828. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  829. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -1
  830. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  831. package/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  832. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  833. package/extensions/forms/Field/Selection/Selection.js +6 -6
  834. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  835. package/extensions/forms/Field/String/String.js +4 -4
  836. package/extensions/forms/Field/String/String.js.map +1 -1
  837. package/extensions/forms/Field/String/StringDocs.js +9 -4
  838. package/extensions/forms/Field/String/StringDocs.js.map +1 -1
  839. package/extensions/forms/Field/Toggle/Toggle.js +8 -8
  840. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  841. package/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -1
  842. package/extensions/forms/FieldBlock/FieldBlock.js +42 -20
  843. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  844. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
  845. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  846. package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  847. package/extensions/forms/Form/Handler/Handler.js +49 -9
  848. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  849. package/extensions/forms/Form/Handler/HandlerDocs.d.ts +3 -0
  850. package/extensions/forms/Form/Handler/HandlerDocs.js +39 -0
  851. package/extensions/forms/Form/Handler/HandlerDocs.js.map +1 -0
  852. package/extensions/forms/Form/SubmitButton/SubmitButton.d.ts +6 -1
  853. package/extensions/forms/Form/SubmitButton/SubmitButton.js +21 -12
  854. package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  855. package/extensions/forms/Form/SubmitButton/SubmitButtonDocs.d.ts +2 -0
  856. package/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js +23 -0
  857. package/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js.map +1 -0
  858. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.d.ts +14 -0
  859. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +69 -0
  860. package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -0
  861. package/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.d.ts +2 -0
  862. package/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js +18 -0
  863. package/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js.map +1 -0
  864. package/extensions/forms/Form/SubmitIndicator/index.d.ts +2 -0
  865. package/extensions/forms/Form/SubmitIndicator/index.js +3 -0
  866. package/extensions/forms/Form/SubmitIndicator/index.js.map +1 -0
  867. package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +99 -0
  868. package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -0
  869. package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +117 -0
  870. package/extensions/forms/Form/SubmitIndicator/style/index.d.ts +5 -0
  871. package/extensions/forms/Form/SubmitIndicator/style/index.js +1 -0
  872. package/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -0
  873. package/extensions/forms/Form/data-context/getData.d.ts +1 -1
  874. package/extensions/forms/Form/data-context/getData.js.map +1 -1
  875. package/extensions/forms/Form/data-context/useData.d.ts +3 -3
  876. package/extensions/forms/Form/data-context/useData.js +32 -12
  877. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  878. package/extensions/forms/Form/data-context/useError.d.ts +3 -2
  879. package/extensions/forms/Form/data-context/useError.js +8 -6
  880. package/extensions/forms/Form/data-context/useError.js.map +1 -1
  881. package/extensions/forms/Form/index.d.ts +1 -0
  882. package/extensions/forms/Form/index.js +1 -0
  883. package/extensions/forms/Form/index.js.map +1 -1
  884. package/extensions/forms/Iterate/Array/Array.js +2 -2
  885. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  886. package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +2 -2
  887. package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
  888. package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +2 -2
  889. package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
  890. package/extensions/forms/StepsLayout/NextButton/NextButton.d.ts +1 -3
  891. package/extensions/forms/StepsLayout/NextButton/NextButton.js +4 -3
  892. package/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
  893. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.d.ts +1 -3
  894. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +6 -2
  895. package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
  896. package/extensions/forms/StepsLayout/StepsLayout.d.ts +2 -2
  897. package/extensions/forms/StepsLayout/StepsLayout.js +55 -26
  898. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  899. package/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +3 -0
  900. package/extensions/forms/StepsLayout/StepsLayoutDocs.js +50 -0
  901. package/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +1 -0
  902. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -1
  903. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  904. package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +11 -1
  905. package/extensions/forms/Value/Boolean/Boolean.js +2 -2
  906. package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
  907. package/extensions/forms/Value/Number/Number.js +5 -5
  908. package/extensions/forms/Value/Number/Number.js.map +1 -1
  909. package/extensions/forms/Value/String/String.js +2 -2
  910. package/extensions/forms/Value/String/String.js.map +1 -1
  911. package/extensions/forms/hooks/DataValueDocs.js +3 -3
  912. package/extensions/forms/hooks/DataValueDocs.js.map +1 -1
  913. package/extensions/forms/hooks/index.d.ts +6 -3
  914. package/extensions/forms/hooks/index.js +2 -3
  915. package/extensions/forms/hooks/index.js.map +1 -1
  916. package/extensions/forms/hooks/useFieldProps.d.ts +23 -0
  917. package/extensions/forms/hooks/useFieldProps.js +764 -0
  918. package/extensions/forms/hooks/useFieldProps.js.map +1 -0
  919. package/extensions/forms/style/dnb-forms.css +105 -1
  920. package/extensions/forms/style/dnb-forms.min.css +1 -1
  921. package/extensions/forms/types.d.ts +67 -4
  922. package/extensions/forms/types.js +3 -2
  923. package/extensions/forms/types.js.map +1 -1
  924. package/extensions/forms/utils/ajv.d.ts +9 -7
  925. package/extensions/forms/utils/ajv.js +29 -14
  926. package/extensions/forms/utils/ajv.js.map +1 -1
  927. package/fragments/scroll-view/ScrollView.d.ts +2 -2
  928. package/fragments/scroll-view/ScrollView.js +4 -1
  929. package/fragments/scroll-view/ScrollView.js.map +1 -1
  930. package/package.json +1 -1
  931. package/shared/Context.d.ts +20 -11
  932. package/shared/Context.js.map +1 -1
  933. package/shared/Eufemia.d.ts +2 -2
  934. package/shared/Eufemia.js +2 -2
  935. package/shared/Eufemia.js.map +1 -1
  936. package/shared/Provider.js.map +1 -1
  937. package/shared/defaults.d.ts +3 -3
  938. package/shared/defaults.js.map +1 -1
  939. package/shared/helpers/debounce.d.ts +21 -30
  940. package/shared/helpers/debounce.js +23 -11
  941. package/shared/helpers/debounce.js.map +1 -1
  942. package/shared/helpers/isAsync.d.ts +7 -0
  943. package/shared/helpers/isAsync.js +14 -0
  944. package/shared/helpers/isAsync.js.map +1 -0
  945. package/shared/helpers/runCssVersionMismatchWarning.d.ts +8 -0
  946. package/shared/helpers/runCssVersionMismatchWarning.js +25 -0
  947. package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -0
  948. package/{extensions/forms/hooks → shared/helpers}/useId.js +1 -1
  949. package/shared/helpers/useId.js.map +1 -0
  950. package/shared/helpers/useMountEffect.js.map +1 -0
  951. package/shared/helpers/useMounted.js.map +1 -0
  952. package/shared/helpers/useSharedState.js +15 -9
  953. package/shared/helpers/useSharedState.js.map +1 -1
  954. package/shared/helpers/useUnmountEffect.js.map +1 -0
  955. package/shared/helpers/useUpdateEffect.js.map +1 -0
  956. package/shared/helpers.js +2 -0
  957. package/shared/helpers.js.map +1 -1
  958. package/shared/index.d.ts +10 -10
  959. package/shared/index.js +9 -11
  960. package/shared/index.js.map +1 -1
  961. package/shared/locales/en-GB.d.ts +1 -0
  962. package/shared/locales/en-GB.js +2 -1
  963. package/shared/locales/en-GB.js.map +1 -1
  964. package/shared/locales/en-US.d.ts +1 -0
  965. package/shared/locales/index.d.ts +4 -2
  966. package/shared/locales/index.js +2 -1
  967. package/shared/locales/index.js.map +1 -1
  968. package/shared/locales/nb-NO.d.ts +1 -0
  969. package/shared/locales/nb-NO.js +2 -1
  970. package/shared/locales/nb-NO.js.map +1 -1
  971. package/shared/types.d.ts +4 -1
  972. package/shared/types.js.map +1 -1
  973. package/shared/useLocale.d.ts +2 -0
  974. package/shared/useLocale.js +29 -0
  975. package/shared/useLocale.js.map +1 -0
  976. package/style/core/scopes.scss +3 -0
  977. package/style/dnb-ui-basis.css +1 -0
  978. package/style/dnb-ui-basis.min.css +1 -1
  979. package/style/dnb-ui-body.css +1 -0
  980. package/style/dnb-ui-body.min.css +1 -1
  981. package/style/dnb-ui-components.css +281 -160
  982. package/style/dnb-ui-components.min.css +3 -3
  983. package/style/dnb-ui-core.css +1 -0
  984. package/style/dnb-ui-core.min.css +1 -1
  985. package/style/dnb-ui-extensions.css +105 -1
  986. package/style/dnb-ui-extensions.min.css +1 -1
  987. package/style/dnb-ui-forms.css +105 -1
  988. package/style/dnb-ui-forms.min.css +1 -1
  989. package/style/dnb-ui-forms.scss +1 -0
  990. package/style/themes/theme-eiendom/eiendom-theme-basis.css +3 -6
  991. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  992. package/style/themes/theme-eiendom/eiendom-theme-components.css +427 -250
  993. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +16 -6
  994. package/style/themes/theme-eiendom/eiendom-theme-elements.css +3 -6
  995. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  996. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +105 -1
  997. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  998. package/style/themes/theme-eiendom/eiendom-theme-forms.css +105 -1
  999. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  1000. package/style/themes/theme-sbanken/sbanken-theme-basis.css +5 -2
  1001. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1002. package/style/themes/theme-sbanken/sbanken-theme-components.css +566 -315
  1003. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +20 -8
  1004. package/style/themes/theme-sbanken/sbanken-theme-elements.css +5 -2
  1005. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  1006. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +105 -1
  1007. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1008. package/style/themes/theme-sbanken/sbanken-theme-forms.css +105 -1
  1009. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  1010. package/style/themes/theme-ui/ui-theme-basis.css +3 -6
  1011. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1012. package/style/themes/theme-ui/ui-theme-components.css +427 -250
  1013. package/style/themes/theme-ui/ui-theme-components.min.css +16 -6
  1014. package/style/themes/theme-ui/ui-theme-elements.css +3 -6
  1015. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1016. package/style/themes/theme-ui/ui-theme-extensions.css +105 -1
  1017. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1018. package/style/themes/theme-ui/ui-theme-forms.css +105 -1
  1019. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  1020. package/style/themes/theme-ui/ui-theme-tags.css +3 -6
  1021. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1022. package/umd/dnb-ui-basis.min.js +1 -1
  1023. package/umd/dnb-ui-components.min.js +1 -1
  1024. package/umd/dnb-ui-elements.min.js +1 -1
  1025. package/umd/dnb-ui-extensions.min.js +3 -3
  1026. package/umd/dnb-ui-lib.min.js +1 -1
  1027. package/cjs/extensions/forms/hooks/useDataValue.d.ts +0 -18
  1028. package/cjs/extensions/forms/hooks/useDataValue.js +0 -461
  1029. package/cjs/extensions/forms/hooks/useDataValue.js.map +0 -1
  1030. package/cjs/extensions/forms/hooks/useId.js.map +0 -1
  1031. package/cjs/extensions/forms/hooks/useMountEffect.js.map +0 -1
  1032. package/cjs/extensions/forms/hooks/useMounted.js.map +0 -1
  1033. package/cjs/extensions/forms/hooks/useUnmountEffect.js.map +0 -1
  1034. package/cjs/extensions/forms/hooks/useUpdateEffect.js.map +0 -1
  1035. package/es/extensions/forms/hooks/useDataValue.d.ts +0 -18
  1036. package/es/extensions/forms/hooks/useDataValue.js +0 -443
  1037. package/es/extensions/forms/hooks/useDataValue.js.map +0 -1
  1038. package/es/extensions/forms/hooks/useId.js.map +0 -1
  1039. package/es/extensions/forms/hooks/useMountEffect.js.map +0 -1
  1040. package/es/extensions/forms/hooks/useMounted.js.map +0 -1
  1041. package/es/extensions/forms/hooks/useUnmountEffect.js.map +0 -1
  1042. package/es/extensions/forms/hooks/useUpdateEffect.js.map +0 -1
  1043. package/extensions/forms/hooks/useDataValue.d.ts +0 -18
  1044. package/extensions/forms/hooks/useDataValue.js +0 -451
  1045. package/extensions/forms/hooks/useDataValue.js.map +0 -1
  1046. package/extensions/forms/hooks/useId.js.map +0 -1
  1047. package/extensions/forms/hooks/useMountEffect.js.map +0 -1
  1048. package/extensions/forms/hooks/useMounted.js.map +0 -1
  1049. package/extensions/forms/hooks/useUnmountEffect.js.map +0 -1
  1050. package/extensions/forms/hooks/useUpdateEffect.js.map +0 -1
  1051. /package/cjs/{extensions/forms/hooks → shared/helpers}/useId.d.ts +0 -0
  1052. /package/cjs/{extensions/forms/hooks → shared/helpers}/useMountEffect.d.ts +0 -0
  1053. /package/cjs/{extensions/forms/hooks → shared/helpers}/useMountEffect.js +0 -0
  1054. /package/cjs/{extensions/forms/hooks → shared/helpers}/useMounted.d.ts +0 -0
  1055. /package/cjs/{extensions/forms/hooks → shared/helpers}/useMounted.js +0 -0
  1056. /package/cjs/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.d.ts +0 -0
  1057. /package/cjs/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.js +0 -0
  1058. /package/cjs/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.d.ts +0 -0
  1059. /package/cjs/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.js +0 -0
  1060. /package/es/{extensions/forms/hooks → shared/helpers}/useId.d.ts +0 -0
  1061. /package/es/{extensions/forms/hooks → shared/helpers}/useMountEffect.d.ts +0 -0
  1062. /package/es/{extensions/forms/hooks → shared/helpers}/useMountEffect.js +0 -0
  1063. /package/es/{extensions/forms/hooks → shared/helpers}/useMounted.d.ts +0 -0
  1064. /package/es/{extensions/forms/hooks → shared/helpers}/useMounted.js +0 -0
  1065. /package/es/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.d.ts +0 -0
  1066. /package/es/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.js +0 -0
  1067. /package/es/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.d.ts +0 -0
  1068. /package/es/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.js +0 -0
  1069. /package/{extensions/forms/hooks → shared/helpers}/useId.d.ts +0 -0
  1070. /package/{extensions/forms/hooks → shared/helpers}/useMountEffect.d.ts +0 -0
  1071. /package/{extensions/forms/hooks → shared/helpers}/useMountEffect.js +0 -0
  1072. /package/{extensions/forms/hooks → shared/helpers}/useMounted.d.ts +0 -0
  1073. /package/{extensions/forms/hooks → shared/helpers}/useMounted.js +0 -0
  1074. /package/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.d.ts +0 -0
  1075. /package/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.js +0 -0
  1076. /package/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.d.ts +0 -0
  1077. /package/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.js +0 -0
@@ -0,0 +1,99 @@
1
+ /*
2
+ * Utilities
3
+ */
4
+ .dnb-form-submit-indicator {
5
+ display: inline;
6
+ --padding-left: 0.5em;
7
+ }
8
+ .dnb-form-submit-indicator__content {
9
+ font-size: 0;
10
+ line-height: 1em;
11
+ will-change: font-size;
12
+ transition: font-size 800ms var(--easing-default);
13
+ }
14
+ .dnb-form-submit-indicator__content b {
15
+ padding-left: 0.125em;
16
+ color: var(--dots-color, currentColor);
17
+ opacity: 0.2;
18
+ animation-name: submit-indicator-dot;
19
+ animation-iteration-count: infinite;
20
+ animation-duration: 1.3s;
21
+ animation-delay: 200ms;
22
+ }
23
+ .dnb-form-submit-indicator__content b:nth-of-type(1) {
24
+ padding-left: var(--padding-left);
25
+ animation-delay: 50ms;
26
+ }
27
+ .dnb-form-submit-indicator__content b:nth-of-type(2) {
28
+ animation-delay: 200ms;
29
+ }
30
+ .dnb-form-submit-indicator__content b:nth-of-type(3) {
31
+ animation-delay: 400ms;
32
+ }
33
+ html[data-visual-test] .dnb-form-submit-indicator__content b {
34
+ animation: none;
35
+ }
36
+ .dnb-form-submit-indicator--state-pending .dnb-form-submit-indicator__content {
37
+ font-size: 1em;
38
+ font-weight: var(--font-weight-bold);
39
+ }
40
+ .dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content {
41
+ font-size: 1em;
42
+ }
43
+ .dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content .dnb-icon {
44
+ padding-left: var(--padding-left);
45
+ color: var(--color-success-green);
46
+ }
47
+ .dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content .dnb-icon--default {
48
+ font-size: 1em;
49
+ }
50
+ .dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content__label {
51
+ font-size: var(--font-size-small);
52
+ padding-left: calc(var(--padding-left) * 2);
53
+ }
54
+ .dnb-form-submit-indicator--inline-wrap .dnb-form-submit-indicator__content {
55
+ display: flex;
56
+ --padding-left: 0.25em;
57
+ }
58
+
59
+ @keyframes submit-indicator-dot {
60
+ 0% {
61
+ opacity: 0.2;
62
+ }
63
+ 15% {
64
+ opacity: 1;
65
+ }
66
+ 50% {
67
+ opacity: 1;
68
+ }
69
+ 60% {
70
+ opacity: 0.3;
71
+ }
72
+ 100% {
73
+ opacity: 0.2;
74
+ }
75
+ }
76
+ @keyframes submit-indicator-success {
77
+ 0% {
78
+ opacity: 0.2;
79
+ font-size: 1em;
80
+ }
81
+ 20% {
82
+ opacity: 1;
83
+ font-size: 1em;
84
+ }
85
+ 80% {
86
+ opacity: 1;
87
+ }
88
+ 85% {
89
+ opacity: 0.3;
90
+ font-size: 1em;
91
+ }
92
+ 90% {
93
+ opacity: 0;
94
+ }
95
+ 100% {
96
+ opacity: 0;
97
+ font-size: 0;
98
+ }
99
+ }
@@ -0,0 +1 @@
1
+ .dnb-form-submit-indicator{--padding-left:0.5em;display:inline}.dnb-form-submit-indicator__content{font-size:0;line-height:1em;transition:font-size .8s var(--easing-default);will-change:font-size}.dnb-form-submit-indicator__content b{animation-delay:.2s;animation-duration:1.3s;animation-iteration-count:infinite;animation-name:submit-indicator-dot;color:var(--dots-color,currentColor);opacity:.2;padding-left:.125em}.dnb-form-submit-indicator__content b:first-of-type{animation-delay:50ms;padding-left:var(--padding-left)}.dnb-form-submit-indicator__content b:nth-of-type(2){animation-delay:.2s}.dnb-form-submit-indicator__content b:nth-of-type(3){animation-delay:.4s}html[data-visual-test] .dnb-form-submit-indicator__content b{animation:none}.dnb-form-submit-indicator--state-pending .dnb-form-submit-indicator__content{font-size:1em;font-weight:var(--font-weight-bold)}.dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content{font-size:1em}.dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content .dnb-icon{color:var(--color-success-green);padding-left:var(--padding-left)}.dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content .dnb-icon--default{font-size:1em}.dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content__label{font-size:var(--font-size-small);padding-left:calc(var(--padding-left)*2)}.dnb-form-submit-indicator--inline-wrap .dnb-form-submit-indicator__content{--padding-left:0.25em;display:flex}@keyframes submit-indicator-dot{0%{opacity:.2}15%{opacity:1}50%{opacity:1}60%{opacity:.3}to{opacity:.2}}@keyframes submit-indicator-success{0%{font-size:1em;opacity:.2}20%{font-size:1em;opacity:1}80%{opacity:1}85%{font-size:1em;opacity:.3}90%{opacity:0}to{font-size:0;opacity:0}}
@@ -0,0 +1,117 @@
1
+ @import '../../../../../style/core/utilities.scss';
2
+
3
+ .dnb-form-submit-indicator {
4
+ display: inline;
5
+
6
+ --padding-left: 0.5em;
7
+
8
+ &__content {
9
+ font-size: 0;
10
+ line-height: 1em;
11
+
12
+ will-change: font-size;
13
+ transition: font-size 800ms var(--easing-default);
14
+
15
+ b {
16
+ padding-left: 0.125em;
17
+ color: var(--dots-color, currentColor);
18
+
19
+ &:nth-of-type(1) {
20
+ padding-left: var(--padding-left);
21
+ animation-delay: 50ms;
22
+ }
23
+ &:nth-of-type(2) {
24
+ animation-delay: 200ms;
25
+ }
26
+ &:nth-of-type(3) {
27
+ animation-delay: 400ms;
28
+ }
29
+
30
+ opacity: 0.2;
31
+
32
+ animation-name: submit-indicator-dot;
33
+ animation-iteration-count: infinite;
34
+ animation-duration: 1.3s;
35
+ animation-delay: 200ms; // to get a nicer fade in
36
+
37
+ html[data-visual-test] & {
38
+ animation: none;
39
+ }
40
+ }
41
+ }
42
+
43
+ &--state-pending &__content {
44
+ font-size: 1em;
45
+ font-weight: var(--font-weight-bold);
46
+ }
47
+ &--state-success &__content {
48
+ font-size: 1em;
49
+ // opacity: 0;
50
+ // font-size: 0;
51
+ // white-space: nowrap;
52
+
53
+ // animation-name: submit-indicator-success;
54
+ // animation-duration: 5s;
55
+
56
+ .dnb-icon {
57
+ padding-left: var(--padding-left);
58
+ color: var(--color-success-green);
59
+ }
60
+ .dnb-icon--default {
61
+ font-size: 1em;
62
+ }
63
+
64
+ &__label {
65
+ font-size: var(--font-size-small);
66
+ padding-left: calc(var(--padding-left) * 2);
67
+ }
68
+ }
69
+ &--inline-wrap &__content {
70
+ display: flex;
71
+
72
+ --padding-left: 0.25em;
73
+ }
74
+ }
75
+
76
+ @keyframes submit-indicator-dot {
77
+ 0% {
78
+ opacity: 0.2;
79
+ }
80
+ 15% {
81
+ opacity: 1;
82
+ }
83
+ 50% {
84
+ opacity: 1;
85
+ }
86
+ 60% {
87
+ opacity: 0.3;
88
+ }
89
+ 100% {
90
+ opacity: 0.2;
91
+ }
92
+ }
93
+
94
+ @keyframes submit-indicator-success {
95
+ 0% {
96
+ opacity: 0.2;
97
+ font-size: 1em;
98
+ }
99
+ 20% {
100
+ opacity: 1;
101
+ font-size: 1em;
102
+ }
103
+ 80% {
104
+ opacity: 1;
105
+ }
106
+ 85% {
107
+ opacity: 0.3;
108
+ font-size: 1em;
109
+ }
110
+ 90% {
111
+ opacity: 0;
112
+ }
113
+ 100% {
114
+ opacity: 0;
115
+ font-size: 0;
116
+ }
117
+ }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Web Style Import
3
+ *
4
+ */
5
+ import './dnb-steps-layout.scss';
@@ -0,0 +1 @@
1
+ import "./dnb-steps-layout.min.css";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../../../src/extensions/forms/Form/SubmitIndicator/style/index.ts"],"sourcesContent":["/**\n * Web Style Import\n *\n */\n\nimport './dnb-steps-layout.scss'\n"],"mappings":"AAKA,OAAO,4BAAyB"}
@@ -1,5 +1,5 @@
1
1
  import { SharedStateId } from '../../../../shared/helpers/useSharedState';
2
- import type { FilterData } from '../../DataContext/Provider';
2
+ import type { FilterData } from '../../DataContext/Context';
3
3
  type SetDataReturn<Data> = {
4
4
  data: Data;
5
5
  filterData: (filterDataHandler: FilterData) => Partial<Data>;
@@ -1 +1 @@
1
- {"version":3,"file":"getData.js","names":["createSharedState","getData","id","sharedState","sharedAttachments","data","get","filterData","filter","_sharedAttachments$da","_sharedAttachments$da2","filterDataHandler","call"],"sources":["../../../../../../src/extensions/forms/Form/data-context/getData.tsx"],"sourcesContent":["import {\n SharedStateId,\n createSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport type {\n FilterData,\n FilterDataHandler,\n} from '../../DataContext/Provider'\n\ntype SharedAttachment<Data> = {\n filterDataHandler: FilterDataHandler<Data>\n}\n\ntype SetDataReturn<Data> = {\n data: Data\n filterData: (filterDataHandler: FilterData) => Partial<Data>\n}\n\nexport default function getData<Data>(\n id: SharedStateId\n): SetDataReturn<Data> {\n const sharedState = createSharedState(id)\n const sharedAttachments = createSharedState<SharedAttachment<Data>>(\n id + '-attachments'\n )\n\n const data = sharedState.get() as Data\n const filterData: SetDataReturn<Data>['filterData'] = (filter) =>\n sharedAttachments.data?.filterDataHandler?.(data, filter)\n\n return {\n data,\n filterData,\n }\n}\n"],"mappings":"AAAA,SAEEA,iBAAiB,QACZ,2CAA2C;AAelD,eAAe,SAASC,OAAOA,CAC7BC,EAAiB,EACI;EACrB,MAAMC,WAAW,GAAGH,iBAAiB,CAACE,EAAE,CAAC;EACzC,MAAME,iBAAiB,GAAGJ,iBAAiB,CACzCE,EAAE,GAAG,cACP,CAAC;EAED,MAAMG,IAAI,GAAGF,WAAW,CAACG,GAAG,CAAC,CAAS;EACtC,MAAMC,UAA6C,GAAIC,MAAM;IAAA,IAAAC,qBAAA,EAAAC,sBAAA;IAAA,QAAAD,qBAAA,GAC3DL,iBAAiB,CAACC,IAAI,cAAAI,qBAAA,wBAAAC,sBAAA,GAAtBD,qBAAA,CAAwBE,iBAAiB,cAAAD,sBAAA,uBAAzCA,sBAAA,CAAAE,IAAA,CAAAH,qBAAA,EAA4CJ,IAAI,EAAEG,MAAM,CAAC;EAAA;EAE3D,OAAO;IACLH,IAAI;IACJE;EACF,CAAC;AACH"}
1
+ {"version":3,"file":"getData.js","names":["createSharedState","getData","id","sharedState","sharedAttachments","data","get","filterData","filter","_sharedAttachments$da","_sharedAttachments$da2","filterDataHandler","call"],"sources":["../../../../../../src/extensions/forms/Form/data-context/getData.tsx"],"sourcesContent":["import {\n SharedStateId,\n createSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport type {\n FilterData,\n FilterDataHandler,\n} from '../../DataContext/Context'\n\ntype SharedAttachment<Data> = {\n filterDataHandler: FilterDataHandler<Data>\n}\n\ntype SetDataReturn<Data> = {\n data: Data\n filterData: (filterDataHandler: FilterData) => Partial<Data>\n}\n\nexport default function getData<Data>(\n id: SharedStateId\n): SetDataReturn<Data> {\n const sharedState = createSharedState(id)\n const sharedAttachments = createSharedState<SharedAttachment<Data>>(\n id + '-attachments'\n )\n\n const data = sharedState.get() as Data\n const filterData: SetDataReturn<Data>['filterData'] = (filter) =>\n sharedAttachments.data?.filterDataHandler?.(data, filter)\n\n return {\n data,\n filterData,\n }\n}\n"],"mappings":"AAAA,SAEEA,iBAAiB,QACZ,2CAA2C;AAelD,eAAe,SAASC,OAAOA,CAC7BC,EAAiB,EACI;EACrB,MAAMC,WAAW,GAAGH,iBAAiB,CAACE,EAAE,CAAC;EACzC,MAAME,iBAAiB,GAAGJ,iBAAiB,CACzCE,EAAE,GAAG,cACP,CAAC;EAED,MAAMG,IAAI,GAAGF,WAAW,CAACG,GAAG,CAAC,CAAS;EACtC,MAAMC,UAA6C,GAAIC,MAAM;IAAA,IAAAC,qBAAA,EAAAC,sBAAA;IAAA,QAAAD,qBAAA,GAC3DL,iBAAiB,CAACC,IAAI,cAAAI,qBAAA,wBAAAC,sBAAA,GAAtBD,qBAAA,CAAwBE,iBAAiB,cAAAD,sBAAA,uBAAzCA,sBAAA,CAAAE,IAAA,CAAAH,qBAAA,EAA4CJ,IAAI,EAAEG,MAAM,CAAC;EAAA;EAE3D,OAAO;IACLH,IAAI;IACJE;EACF,CAAC;AACH"}
@@ -1,9 +1,9 @@
1
1
  import { SharedStateId } from '../../../../shared/helpers/useSharedState';
2
2
  import type { Path } from '../../types';
3
- import type { FilterData } from '../../DataContext/Provider';
3
+ import { FilterData } from '../../DataContext/Context';
4
4
  type PathImpl<T, P extends string> = P extends `${infer Key}/${infer Rest}` ? Key extends keyof T ? Rest extends '' ? T[Key] : PathImpl<T[Key], Rest> : never : T[P & keyof T];
5
5
  type PathType<T, P extends string> = P extends `/${infer Rest}` ? PathImpl<T, Rest> : never;
6
- type UseDataReturnUpdate<Data> = <P extends Path>(path: P, fn: (value: PathType<Data, P>) => unknown) => void;
6
+ type UseDataReturnUpdate<Data> = <P extends Path>(path: P, value: ((value: PathType<Data, P>) => unknown) | unknown) => void;
7
7
  type UseDataReturn<Data> = {
8
8
  data: Data;
9
9
  update: UseDataReturnUpdate<Data>;
@@ -18,5 +18,5 @@ type UseDataReturn<Data> = {
18
18
  * @param {Data} initialData - The initial data value (optional).
19
19
  * @returns {UseDataReturn<Data>} An object containing the data and data management functions.
20
20
  */
21
- export default function useData<Data>(id: SharedStateId, initialData?: Data): UseDataReturn<Data>;
21
+ export default function useData<Data>(id?: SharedStateId, initialData?: Data): UseDataReturn<Data>;
22
22
  export {};
@@ -1,32 +1,50 @@
1
1
  "use client";
2
2
 
3
- import { useCallback, useReducer, useRef } from 'react';
3
+ import { useCallback, useContext, useReducer, useRef } from 'react';
4
4
  import pointer from 'json-pointer';
5
5
  import { useSharedState } from '../../../../shared/helpers/useSharedState';
6
- import { useMountEffect } from '../../hooks';
7
- export default function useData(id, initialData = undefined) {
6
+ import useMountEffect from '../../../../shared/helpers/useMountEffect';
7
+ import DataContext from '../../DataContext/Context';
8
+ export default function useData(id = undefined, initialData = undefined) {
8
9
  const sharedDataRef = useRef(null);
9
10
  const sharedAttachmentsRef = useRef(null);
10
11
  const [, forceUpdate] = useReducer(() => ({}), {});
11
12
  sharedDataRef.current = useSharedState(id, initialData, forceUpdate);
13
+ const context = useContext(DataContext);
14
+ if (!id && context !== null && context !== void 0 && context.data) {
15
+ sharedDataRef.current.data = context.data;
16
+ }
17
+ const updateDataValue = context === null || context === void 0 ? void 0 : context.updateDataValue;
18
+ const setData = context === null || context === void 0 ? void 0 : context.setData;
12
19
  sharedAttachmentsRef.current = useSharedState(id + '-attachments', {
13
20
  rerenderUseDataHook: forceUpdate
14
21
  });
15
22
  const setHandler = useCallback(newData => {
16
- sharedDataRef.current.update(newData);
17
- }, []);
18
- const updateHandler = useCallback((path, fn) => {
23
+ if (id) {
24
+ sharedDataRef.current.update(newData);
25
+ } else {
26
+ setData === null || setData === void 0 ? void 0 : setData(newData);
27
+ }
28
+ }, [id, setData]);
29
+ const updateHandler = useCallback((path, value = undefined) => {
19
30
  const existingData = sharedDataRef.current.data || {};
20
31
  const existingValue = pointer.has(existingData, path) ? pointer.get(existingData, path) : undefined;
21
- const newValue = fn(existingValue);
32
+ const newValue = typeof value === 'function' ? value(existingValue) : value;
22
33
  pointer.set(existingData, path, newValue);
23
- sharedDataRef.current.update(existingData);
24
- }, []);
34
+ if (id) {
35
+ sharedDataRef.current.extend(existingData);
36
+ } else {
37
+ updateDataValue(path, newValue);
38
+ }
39
+ }, [id, updateDataValue]);
25
40
  const filterData = useCallback(filter => {
26
- var _sharedAttachmentsRef, _sharedAttachmentsRef2;
27
41
  const data = sharedDataRef.current.data;
28
- return (_sharedAttachmentsRef = sharedAttachmentsRef.current.data) === null || _sharedAttachmentsRef === void 0 ? void 0 : (_sharedAttachmentsRef2 = _sharedAttachmentsRef.filterDataHandler) === null || _sharedAttachmentsRef2 === void 0 ? void 0 : _sharedAttachmentsRef2.call(_sharedAttachmentsRef, data, filter);
29
- }, []);
42
+ if (id) {
43
+ var _sharedAttachmentsRef, _sharedAttachmentsRef2;
44
+ return (_sharedAttachmentsRef = sharedAttachmentsRef.current.data) === null || _sharedAttachmentsRef === void 0 ? void 0 : (_sharedAttachmentsRef2 = _sharedAttachmentsRef.filterDataHandler) === null || _sharedAttachmentsRef2 === void 0 ? void 0 : _sharedAttachmentsRef2.call(_sharedAttachmentsRef, data, filter);
45
+ }
46
+ return context === null || context === void 0 ? void 0 : context.filterDataHandler(data, filter);
47
+ }, [context, id]);
30
48
  useMountEffect(() => {
31
49
  if (id && !sharedDataRef.current.hadInitialData && initialData) {
32
50
  sharedDataRef.current.extend(initialData);
@@ -1 +1 @@
1
- {"version":3,"file":"useData.js","names":["useCallback","useReducer","useRef","pointer","useSharedState","useMountEffect","useData","id","initialData","undefined","sharedDataRef","sharedAttachmentsRef","forceUpdate","current","rerenderUseDataHook","setHandler","newData","update","updateHandler","path","fn","existingData","data","existingValue","has","get","newValue","set","filterData","filter","_sharedAttachmentsRef","_sharedAttachmentsRef2","filterDataHandler","call","hadInitialData","extend"],"sources":["../../../../../../src/extensions/forms/Form/data-context/useData.tsx"],"sourcesContent":["import { useCallback, useReducer, useRef } from 'react'\nimport pointer from 'json-pointer'\nimport {\n SharedStateId,\n useSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport type { Path } from '../../types'\nimport type {\n FilterData,\n FilterDataHandler,\n} from '../../DataContext/Provider'\nimport { useMountEffect } from '../../hooks'\n\ntype PathImpl<T, P extends string> = P extends `${infer Key}/${infer Rest}`\n ? Key extends keyof T\n ? Rest extends ''\n ? T[Key]\n : PathImpl<T[Key], Rest>\n : never\n : T[P & keyof T]\n\ntype PathType<T, P extends string> = P extends `/${infer Rest}`\n ? PathImpl<T, Rest>\n : never\n\ntype UseDataReturnUpdate<Data> = <P extends Path>(\n path: P,\n fn: (value: PathType<Data, P>) => unknown\n) => void\n\ntype UseDataReturn<Data> = {\n data: Data\n update: UseDataReturnUpdate<Data>\n set: (newData: Data) => void\n filterData: (filterDataHandler: FilterData) => Partial<Data>\n}\n\ntype SharedAttachment<Data> = {\n rerenderUseDataHook: () => void\n filterDataHandler?: FilterDataHandler<Data>\n}\n\n/**\n * Custom hook that provides form data management functionality.\n *\n * @template Data - The type of data being managed.\n * @param {SharedStateId} id - The identifier for the data.\n * @param {Data} initialData - The initial data value (optional).\n * @returns {UseDataReturn<Data>} An object containing the data and data management functions.\n */\nexport default function useData<Data>(\n id: SharedStateId,\n initialData: Data = undefined\n): UseDataReturn<Data> {\n const sharedDataRef =\n useRef<ReturnType<typeof useSharedState<Data>>>(null)\n const sharedAttachmentsRef =\n useRef<ReturnType<typeof useSharedState<SharedAttachment<Data>>>>(null)\n const [, forceUpdate] = useReducer(() => ({}), {})\n\n sharedDataRef.current = useSharedState<Data>(\n id,\n initialData,\n forceUpdate\n )\n\n sharedAttachmentsRef.current = useSharedState<SharedAttachment<Data>>(\n id + '-attachments',\n { rerenderUseDataHook: forceUpdate }\n )\n\n const setHandler = useCallback((newData: Data) => {\n sharedDataRef.current.update(newData)\n }, [])\n\n const updateHandler = useCallback<UseDataReturnUpdate<Data>>(\n (path, fn) => {\n const existingData = sharedDataRef.current.data || ({} as Data)\n const existingValue = pointer.has(existingData, path)\n ? pointer.get(existingData, path)\n : undefined\n\n // get new value\n const newValue = fn(existingValue)\n\n // update existing data\n pointer.set(existingData, path, newValue)\n\n // update provider\n sharedDataRef.current.update(existingData)\n },\n []\n )\n\n const filterData = useCallback<UseDataReturn<Data>['filterData']>(\n (filter) => {\n const data = sharedDataRef.current.data\n return sharedAttachmentsRef.current.data?.filterDataHandler?.(\n data,\n filter\n )\n },\n []\n )\n\n useMountEffect(() => {\n if (id && !sharedDataRef.current.hadInitialData && initialData) {\n sharedDataRef.current.extend(initialData)\n }\n })\n\n return {\n data: sharedDataRef.current.data,\n update: updateHandler,\n set: setHandler,\n filterData,\n }\n}\n"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,UAAU,EAAEC,MAAM,QAAQ,OAAO;AACvD,OAAOC,OAAO,MAAM,cAAc;AAClC,SAEEC,cAAc,QACT,2CAA2C;AAMlD,SAASC,cAAc,QAAQ,aAAa;AAuC5C,eAAe,SAASC,OAAOA,CAC7BC,EAAiB,EACjBC,WAAiB,GAAGC,SAAS,EACR;EACrB,MAAMC,aAAa,GACjBR,MAAM,CAA0C,IAAI,CAAC;EACvD,MAAMS,oBAAoB,GACxBT,MAAM,CAA4D,IAAI,CAAC;EACzE,MAAM,GAAGU,WAAW,CAAC,GAAGX,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;EAElDS,aAAa,CAACG,OAAO,GAAGT,cAAc,CACpCG,EAAE,EACFC,WAAW,EACXI,WACF,CAAC;EAEDD,oBAAoB,CAACE,OAAO,GAAGT,cAAc,CAC3CG,EAAE,GAAG,cAAc,EACnB;IAAEO,mBAAmB,EAAEF;EAAY,CACrC,CAAC;EAED,MAAMG,UAAU,GAAGf,WAAW,CAAEgB,OAAa,IAAK;IAChDN,aAAa,CAACG,OAAO,CAACI,MAAM,CAACD,OAAO,CAAC;EACvC,CAAC,EAAE,EAAE,CAAC;EAEN,MAAME,aAAa,GAAGlB,WAAW,CAC/B,CAACmB,IAAI,EAAEC,EAAE,KAAK;IACZ,MAAMC,YAAY,GAAGX,aAAa,CAACG,OAAO,CAACS,IAAI,IAAK,CAAC,CAAU;IAC/D,MAAMC,aAAa,GAAGpB,OAAO,CAACqB,GAAG,CAACH,YAAY,EAAEF,IAAI,CAAC,GACjDhB,OAAO,CAACsB,GAAG,CAACJ,YAAY,EAAEF,IAAI,CAAC,GAC/BV,SAAS;IAGb,MAAMiB,QAAQ,GAAGN,EAAE,CAACG,aAAa,CAAC;IAGlCpB,OAAO,CAACwB,GAAG,CAACN,YAAY,EAAEF,IAAI,EAAEO,QAAQ,CAAC;IAGzChB,aAAa,CAACG,OAAO,CAACI,MAAM,CAACI,YAAY,CAAC;EAC5C,CAAC,EACD,EACF,CAAC;EAED,MAAMO,UAAU,GAAG5B,WAAW,CAC3B6B,MAAM,IAAK;IAAA,IAAAC,qBAAA,EAAAC,sBAAA;IACV,MAAMT,IAAI,GAAGZ,aAAa,CAACG,OAAO,CAACS,IAAI;IACvC,QAAAQ,qBAAA,GAAOnB,oBAAoB,CAACE,OAAO,CAACS,IAAI,cAAAQ,qBAAA,wBAAAC,sBAAA,GAAjCD,qBAAA,CAAmCE,iBAAiB,cAAAD,sBAAA,uBAApDA,sBAAA,CAAAE,IAAA,CAAAH,qBAAA,EACLR,IAAI,EACJO,MACF,CAAC;EACH,CAAC,EACD,EACF,CAAC;EAEDxB,cAAc,CAAC,MAAM;IACnB,IAAIE,EAAE,IAAI,CAACG,aAAa,CAACG,OAAO,CAACqB,cAAc,IAAI1B,WAAW,EAAE;MAC9DE,aAAa,CAACG,OAAO,CAACsB,MAAM,CAAC3B,WAAW,CAAC;IAC3C;EACF,CAAC,CAAC;EAEF,OAAO;IACLc,IAAI,EAAEZ,aAAa,CAACG,OAAO,CAACS,IAAI;IAChCL,MAAM,EAAEC,aAAa;IACrBS,GAAG,EAAEZ,UAAU;IACfa;EACF,CAAC;AACH"}
1
+ {"version":3,"file":"useData.js","names":["useCallback","useContext","useReducer","useRef","pointer","useSharedState","useMountEffect","DataContext","useData","id","undefined","initialData","sharedDataRef","sharedAttachmentsRef","forceUpdate","current","context","data","updateDataValue","setData","rerenderUseDataHook","setHandler","newData","update","updateHandler","path","value","existingData","existingValue","has","get","newValue","set","extend","filterData","filter","_sharedAttachmentsRef","_sharedAttachmentsRef2","filterDataHandler","call","hadInitialData"],"sources":["../../../../../../src/extensions/forms/Form/data-context/useData.tsx"],"sourcesContent":["import { useCallback, useContext, useReducer, useRef } from 'react'\nimport pointer from 'json-pointer'\nimport {\n SharedStateId,\n useSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport useMountEffect from '../../../../shared/helpers/useMountEffect'\nimport type { Path } from '../../types'\nimport DataContext, {\n FilterData,\n FilterDataHandler,\n} from '../../DataContext/Context'\n\ntype PathImpl<T, P extends string> = P extends `${infer Key}/${infer Rest}`\n ? Key extends keyof T\n ? Rest extends ''\n ? T[Key]\n : PathImpl<T[Key], Rest>\n : never\n : T[P & keyof T]\n\ntype PathType<T, P extends string> = P extends `/${infer Rest}`\n ? PathImpl<T, Rest>\n : never\n\ntype UseDataReturnUpdate<Data> = <P extends Path>(\n path: P,\n value: ((value: PathType<Data, P>) => unknown) | unknown\n) => void\n\ntype UseDataReturn<Data> = {\n data: Data\n update: UseDataReturnUpdate<Data>\n set: (newData: Data) => void\n filterData: (filterDataHandler: FilterData) => Partial<Data>\n}\n\ntype SharedAttachment<Data> = {\n rerenderUseDataHook: () => void\n filterDataHandler?: FilterDataHandler<Data>\n}\n\n/**\n * Custom hook that provides form data management functionality.\n *\n * @template Data - The type of data being managed.\n * @param {SharedStateId} id - The identifier for the data.\n * @param {Data} initialData - The initial data value (optional).\n * @returns {UseDataReturn<Data>} An object containing the data and data management functions.\n */\nexport default function useData<Data>(\n id: SharedStateId = undefined,\n initialData: Data = undefined\n): UseDataReturn<Data> {\n const sharedDataRef =\n useRef<ReturnType<typeof useSharedState<Data>>>(null)\n const sharedAttachmentsRef =\n useRef<ReturnType<typeof useSharedState<SharedAttachment<Data>>>>(null)\n const [, forceUpdate] = useReducer(() => ({}), {})\n\n sharedDataRef.current = useSharedState<Data>(\n id,\n initialData,\n forceUpdate\n )\n\n // If no id is provided, use the context data\n const context = useContext(DataContext)\n if (!id && context?.data) {\n sharedDataRef.current.data = context.data\n }\n const updateDataValue = context?.updateDataValue\n const setData = context?.setData\n\n sharedAttachmentsRef.current = useSharedState<SharedAttachment<Data>>(\n id + '-attachments',\n { rerenderUseDataHook: forceUpdate }\n )\n\n const setHandler = useCallback(\n (newData: Data) => {\n if (id) {\n sharedDataRef.current.update(newData)\n } else {\n setData?.(newData)\n }\n },\n [id, setData]\n )\n\n const updateHandler = useCallback<UseDataReturnUpdate<Data>>(\n (path, value = undefined) => {\n const existingData = sharedDataRef.current.data || ({} as Data)\n const existingValue = pointer.has(existingData, path)\n ? pointer.get(existingData, path)\n : undefined\n\n // get new value\n const newValue =\n typeof value === 'function' ? value(existingValue) : value\n\n // update existing data\n pointer.set(existingData, path, newValue)\n\n // update provider\n if (id) {\n sharedDataRef.current.extend(existingData)\n } else {\n updateDataValue(path, newValue)\n }\n },\n [id, updateDataValue]\n )\n\n const filterData = useCallback<UseDataReturn<Data>['filterData']>(\n (filter) => {\n const data = sharedDataRef.current.data\n\n if (id) {\n return sharedAttachmentsRef.current.data?.filterDataHandler?.(\n data,\n filter\n )\n }\n\n return context?.filterDataHandler(data, filter)\n },\n [context, id]\n )\n\n useMountEffect(() => {\n if (id && !sharedDataRef.current.hadInitialData && initialData) {\n sharedDataRef.current.extend(initialData)\n }\n })\n\n return {\n data: sharedDataRef.current.data,\n update: updateHandler,\n set: setHandler,\n filterData,\n }\n}\n"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- import type { ContextState } from '../../DataContext/Context';
1
+ import { SharedStateId } from '../../../../shared/helpers/useSharedState';
2
+ import { ContextState } from '../../DataContext/Context';
2
3
  type UseDataReturn = {
3
4
  hasErrors: ContextState['hasErrors'];
4
5
  };
5
- export default function useError(id: string): UseDataReturn;
6
+ export default function useError(id?: SharedStateId): UseDataReturn;
6
7
  export {};
@@ -1,15 +1,16 @@
1
1
  "use client";
2
2
 
3
- import { useRef } from 'react';
3
+ import { useContext, useRef } from 'react';
4
4
  import { useSharedState } from '../../../../shared/helpers/useSharedState';
5
- export default function useError(id) {
5
+ import DataContext from '../../DataContext/Context';
6
+ export default function useError(id = undefined) {
7
+ var _sharedAttachmentsRef, _sharedAttachmentsRef2;
6
8
  const sharedAttachmentsRef = useRef(null);
7
9
  sharedAttachmentsRef.current = useSharedState(id + '-attachments');
8
- const {
9
- data
10
- } = sharedAttachmentsRef.current;
10
+ const context = useContext(DataContext);
11
+ const hasErrors = ((_sharedAttachmentsRef = sharedAttachmentsRef.current) === null || _sharedAttachmentsRef === void 0 ? void 0 : (_sharedAttachmentsRef2 = _sharedAttachmentsRef.data) === null || _sharedAttachmentsRef2 === void 0 ? void 0 : _sharedAttachmentsRef2.hasErrors) || !id && (context === null || context === void 0 ? void 0 : context.hasErrors) || (() => false);
11
12
  return {
12
- hasErrors: (data === null || data === void 0 ? void 0 : data.hasErrors) || (() => false)
13
+ hasErrors
13
14
  };
14
15
  }
15
16
  //# sourceMappingURL=useError.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useError.js","names":["useRef","useSharedState","useError","id","sharedAttachmentsRef","current","data","hasErrors"],"sources":["../../../../../../src/extensions/forms/Form/data-context/useError.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { useSharedState } from '../../../../shared/helpers/useSharedState'\nimport type { ContextState } from '../../DataContext/Context'\n\ntype UseDataReturn = {\n hasErrors: ContextState['hasErrors']\n}\n\nexport default function useError(id: string): UseDataReturn {\n const sharedAttachmentsRef = useRef(null)\n sharedAttachmentsRef.current = useSharedState<UseDataReturn>(\n id + '-attachments'\n )\n\n const { data } = sharedAttachmentsRef.current\n\n return {\n hasErrors: data?.hasErrors || (() => false),\n }\n}\n"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,cAAc,QAAQ,2CAA2C;AAO1E,eAAe,SAASC,QAAQA,CAACC,EAAU,EAAiB;EAC1D,MAAMC,oBAAoB,GAAGJ,MAAM,CAAC,IAAI,CAAC;EACzCI,oBAAoB,CAACC,OAAO,GAAGJ,cAAc,CAC3CE,EAAE,GAAG,cACP,CAAC;EAED,MAAM;IAAEG;EAAK,CAAC,GAAGF,oBAAoB,CAACC,OAAO;EAE7C,OAAO;IACLE,SAAS,EAAE,CAAAD,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEC,SAAS,MAAK,MAAM,KAAK;EAC5C,CAAC;AACH"}
1
+ {"version":3,"file":"useError.js","names":["useContext","useRef","useSharedState","DataContext","useError","id","undefined","_sharedAttachmentsRef","_sharedAttachmentsRef2","sharedAttachmentsRef","current","context","hasErrors","data"],"sources":["../../../../../../src/extensions/forms/Form/data-context/useError.tsx"],"sourcesContent":["import { useContext, useRef } from 'react'\nimport {\n SharedStateId,\n useSharedState,\n} from '../../../../shared/helpers/useSharedState'\nimport DataContext, { ContextState } from '../../DataContext/Context'\n\ntype UseDataReturn = {\n hasErrors: ContextState['hasErrors']\n}\n\nexport default function useError(\n id: SharedStateId = undefined\n): UseDataReturn {\n const sharedAttachmentsRef = useRef(null)\n sharedAttachmentsRef.current = useSharedState<UseDataReturn>(\n id + '-attachments'\n )\n\n // If no id is provided, use the context version\n const context = useContext(DataContext)\n const hasErrors =\n sharedAttachmentsRef.current?.data?.hasErrors ||\n (!id && context?.hasErrors) ||\n (() => false)\n\n return { hasErrors }\n}\n"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,MAAM,QAAQ,OAAO;AAC1C,SAEEC,cAAc,QACT,2CAA2C;AAClD,OAAOC,WAAW,MAAwB,2BAA2B;AAMrE,eAAe,SAASC,QAAQA,CAC9BC,EAAiB,GAAGC,SAAS,EACd;EAAA,IAAAC,qBAAA,EAAAC,sBAAA;EACf,MAAMC,oBAAoB,GAAGR,MAAM,CAAC,IAAI,CAAC;EACzCQ,oBAAoB,CAACC,OAAO,GAAGR,cAAc,CAC3CG,EAAE,GAAG,cACP,CAAC;EAGD,MAAMM,OAAO,GAAGX,UAAU,CAACG,WAAW,CAAC;EACvC,MAAMS,SAAS,GACb,EAAAL,qBAAA,GAAAE,oBAAoB,CAACC,OAAO,cAAAH,qBAAA,wBAAAC,sBAAA,GAA5BD,qBAAA,CAA8BM,IAAI,cAAAL,sBAAA,uBAAlCA,sBAAA,CAAoCI,SAAS,KAC5C,CAACP,EAAE,KAAIM,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEC,SAAS,CAAC,KAC1B,MAAM,KAAK,CAAC;EAEf,OAAO;IAAEA;EAAU,CAAC;AACtB"}
@@ -2,6 +2,7 @@ export { default as Handler } from './Handler';
2
2
  export { default as Element } from './Element';
3
3
  export { default as Appearance } from './Appearance';
4
4
  export { default as SubmitButton } from './SubmitButton';
5
+ export { default as SubmitIndicator } from './SubmitIndicator';
5
6
  export { default as ButtonRow } from './ButtonRow';
6
7
  export { default as MainHeading } from './MainHeading';
7
8
  export { default as SubHeading } from './SubHeading';
@@ -2,6 +2,7 @@ export { default as Handler } from './Handler';
2
2
  export { default as Element } from './Element';
3
3
  export { default as Appearance } from './Appearance';
4
4
  export { default as SubmitButton } from './SubmitButton';
5
+ export { default as SubmitIndicator } from './SubmitIndicator';
5
6
  export { default as ButtonRow } from './ButtonRow';
6
7
  export { default as MainHeading } from './MainHeading';
7
8
  export { default as SubHeading } from './SubHeading';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","Handler","Element","Appearance","SubmitButton","ButtonRow","MainHeading","SubHeading","Visibility","useData","setData","getData","useError"],"sources":["../../../../../src/extensions/forms/Form/index.ts"],"sourcesContent":["export { default as Handler } from './Handler'\nexport { default as Element } from './Element'\nexport { default as Appearance } from './Appearance'\nexport { default as SubmitButton } from './SubmitButton'\nexport { default as ButtonRow } from './ButtonRow'\nexport { default as MainHeading } from './MainHeading'\nexport { default as SubHeading } from './SubHeading'\nexport { default as Visibility } from './Visibility'\nexport { default as useData } from './data-context/useData'\nexport { default as setData } from './data-context/setData'\nexport { default as getData } from './data-context/getData'\nexport { default as useError } from './data-context/useError'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,OAAO,QAAQ,WAAW;AAC9C,SAASD,OAAO,IAAIE,OAAO,QAAQ,WAAW;AAC9C,SAASF,OAAO,IAAIG,UAAU,QAAQ,cAAc;AACpD,SAASH,OAAO,IAAII,YAAY,QAAQ,gBAAgB;AACxD,SAASJ,OAAO,IAAIK,SAAS,QAAQ,aAAa;AAClD,SAASL,OAAO,IAAIM,WAAW,QAAQ,eAAe;AACtD,SAASN,OAAO,IAAIO,UAAU,QAAQ,cAAc;AACpD,SAASP,OAAO,IAAIQ,UAAU,QAAQ,cAAc;AACpD,SAASR,OAAO,IAAIS,OAAO,QAAQ,wBAAwB;AAC3D,SAAST,OAAO,IAAIU,OAAO,QAAQ,wBAAwB;AAC3D,SAASV,OAAO,IAAIW,OAAO,QAAQ,wBAAwB;AAC3D,SAASX,OAAO,IAAIY,QAAQ,QAAQ,yBAAyB"}
1
+ {"version":3,"file":"index.js","names":["default","Handler","Element","Appearance","SubmitButton","SubmitIndicator","ButtonRow","MainHeading","SubHeading","Visibility","useData","setData","getData","useError"],"sources":["../../../../../src/extensions/forms/Form/index.ts"],"sourcesContent":["export { default as Handler } from './Handler'\nexport { default as Element } from './Element'\nexport { default as Appearance } from './Appearance'\nexport { default as SubmitButton } from './SubmitButton'\nexport { default as SubmitIndicator } from './SubmitIndicator'\nexport { default as ButtonRow } from './ButtonRow'\nexport { default as MainHeading } from './MainHeading'\nexport { default as SubHeading } from './SubHeading'\nexport { default as Visibility } from './Visibility'\nexport { default as useData } from './data-context/useData'\nexport { default as setData } from './data-context/setData'\nexport { default as getData } from './data-context/getData'\nexport { default as useError } from './data-context/useError'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,OAAO,QAAQ,WAAW;AAC9C,SAASD,OAAO,IAAIE,OAAO,QAAQ,WAAW;AAC9C,SAASF,OAAO,IAAIG,UAAU,QAAQ,cAAc;AACpD,SAASH,OAAO,IAAII,YAAY,QAAQ,gBAAgB;AACxD,SAASJ,OAAO,IAAIK,eAAe,QAAQ,mBAAmB;AAC9D,SAASL,OAAO,IAAIM,SAAS,QAAQ,aAAa;AAClD,SAASN,OAAO,IAAIO,WAAW,QAAQ,eAAe;AACtD,SAASP,OAAO,IAAIQ,UAAU,QAAQ,cAAc;AACpD,SAASR,OAAO,IAAIS,UAAU,QAAQ,cAAc;AACpD,SAAST,OAAO,IAAIU,OAAO,QAAQ,wBAAwB;AAC3D,SAASV,OAAO,IAAIW,OAAO,QAAQ,wBAAwB;AAC3D,SAASX,OAAO,IAAIY,OAAO,QAAQ,wBAAwB;AAC3D,SAASZ,OAAO,IAAIa,QAAQ,QAAQ,yBAAyB"}
@@ -4,7 +4,7 @@ import classnames from 'classnames';
4
4
  import pointer from 'json-pointer';
5
5
  import IterateElementContext from '../IterateElementContext';
6
6
  import FieldBlock from '../../FieldBlock';
7
- import { useDataValue } from '../../hooks';
7
+ import { useFieldProps } from '../../hooks';
8
8
  import { pickSpacingProps } from '../../../../components/flex/utils';
9
9
  import { pickFlexContainerProps } from '../../../../components/flex/Container';
10
10
  import Flex from '../../../../components/flex/Flex';
@@ -24,7 +24,7 @@ function ArrayComponent(props) {
24
24
  width,
25
25
  handleChange,
26
26
  children
27
- } = useDataValue(props);
27
+ } = useFieldProps(props);
28
28
  const elementData = useMemo(() => {
29
29
  return (arrayValue !== null && arrayValue !== void 0 ? arrayValue : []).map((elementValue, elementIndex) => ({
30
30
  elementValue,
@@ -1 +1 @@
1
- {"version":3,"file":"Array.js","names":["React","useMemo","useCallback","classnames","pointer","IterateElementContext","FieldBlock","useDataValue","pickSpacingProps","pickFlexContainerProps","Flex","ArrayComponent","props","className","layout","placeholder","label","labelDescription","path","value","arrayValue","info","warning","error","emptyValue","width","handleChange","children","elementData","map","elementValue","elementIndex","handleElementChange","newArrayValue","structuredClone","set","handleRemoveElement","splice","handlePush","element","createElement","_extends","contentWidth","undefined","Container","spacing","Provider","key","index","handleRemove","Array","isArray","childElement","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/Array/Array.tsx"],"sourcesContent":["import React, { useMemo, useCallback } from 'react'\nimport classnames from 'classnames'\nimport pointer from 'json-pointer'\nimport IterateElementContext from '../IterateElementContext'\nimport FieldBlock, { Props as FieldBlockProps } from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport {\n FieldProps,\n FieldHelpProps,\n CustomErrorMessages,\n} from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport {\n BasicProps as FlexContainerProps,\n pickFlexContainerProps,\n} from '../../../../components/flex/Container'\nimport Flex from '../../../../components/flex/Flex'\n\ninterface ErrorMessages extends CustomErrorMessages {\n required?: string\n schema?: string\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<unknown[], undefined, ErrorMessages> &\n Omit<FieldBlockProps, 'children'> &\n Omit<FlexContainerProps, 'children' | 'width'> & {\n children:\n | React.ReactNode\n | ((value: any, index: number) => React.ReactNode)\n | Array<\n | React.ReactNode\n | ((value: any, index: number) => React.ReactNode)\n >\n }\n\nfunction ArrayComponent(props: Props) {\n const {\n className,\n layout = 'vertical',\n placeholder,\n label,\n labelDescription,\n path,\n value: arrayValue,\n info,\n warning,\n error,\n emptyValue,\n width,\n handleChange,\n children,\n } = useDataValue(props)\n\n const elementData: {\n elementValue: unknown\n handleElementChange: (path: string, value: unknown) => void\n handleRemoveElement: () => void\n }[] = useMemo(() => {\n return (arrayValue ?? []).map((elementValue, elementIndex) => ({\n elementValue,\n handleElementChange: (path, value) => {\n const newArrayValue = structuredClone(arrayValue)\n pointer.set(newArrayValue, path, value)\n handleChange?.(newArrayValue)\n },\n handleRemoveElement: () => {\n const newArrayValue = structuredClone(arrayValue)\n newArrayValue.splice(elementIndex, 1)\n handleChange?.(newArrayValue)\n },\n }))\n }, [arrayValue, handleChange])\n\n const handlePush = useCallback(\n (element: unknown) => {\n handleChange([...(arrayValue ?? []), element])\n },\n [arrayValue, handleChange]\n )\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-number', className)}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n info={info}\n warning={warning}\n error={error}\n width={width}\n contentWidth={width !== false ? width : undefined}\n {...pickSpacingProps(props)}\n >\n <Flex.Container\n {...pickFlexContainerProps(props as FlexContainerProps, {\n spacing: 'small',\n })}\n >\n {arrayValue === emptyValue ? (\n <em>{placeholder}</em>\n ) : (\n elementData.map(\n (\n { elementValue, handleElementChange, handleRemoveElement },\n elementIndex\n ) => {\n return (\n <IterateElementContext.Provider\n key={`element-${elementIndex}`}\n value={{\n index: elementIndex,\n value: elementValue,\n path,\n handleChange: handleElementChange,\n handleRemove: handleRemoveElement,\n handlePush,\n }}\n >\n {Array.isArray(children)\n ? children.map((childElement) =>\n typeof childElement === 'function'\n ? childElement(elementValue, elementIndex)\n : childElement\n )\n : typeof children === 'function'\n ? children(elementValue, elementIndex)\n : children}\n </IterateElementContext.Provider>\n )\n }\n )\n )}\n </Flex.Container>\n </FieldBlock>\n )\n}\n\nArrayComponent._supportsSpacingProps = true\nexport default ArrayComponent\n"],"mappings":"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"}
1
+ {"version":3,"file":"Array.js","names":["React","useMemo","useCallback","classnames","pointer","IterateElementContext","FieldBlock","useFieldProps","pickSpacingProps","pickFlexContainerProps","Flex","ArrayComponent","props","className","layout","placeholder","label","labelDescription","path","value","arrayValue","info","warning","error","emptyValue","width","handleChange","children","elementData","map","elementValue","elementIndex","handleElementChange","newArrayValue","structuredClone","set","handleRemoveElement","splice","handlePush","element","createElement","_extends","contentWidth","undefined","Container","spacing","Provider","key","index","handleRemove","Array","isArray","childElement","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/Array/Array.tsx"],"sourcesContent":["import React, { useMemo, useCallback } from 'react'\nimport classnames from 'classnames'\nimport pointer from 'json-pointer'\nimport IterateElementContext from '../IterateElementContext'\nimport FieldBlock, { Props as FieldBlockProps } from '../../FieldBlock'\nimport { useFieldProps } from '../../hooks'\nimport {\n FieldProps,\n FieldHelpProps,\n CustomErrorMessages,\n} from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport {\n BasicProps as FlexContainerProps,\n pickFlexContainerProps,\n} from '../../../../components/flex/Container'\nimport Flex from '../../../../components/flex/Flex'\n\ninterface ErrorMessages extends CustomErrorMessages {\n required?: string\n schema?: string\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<unknown[], undefined, ErrorMessages> &\n Omit<FieldBlockProps, 'children'> &\n Omit<FlexContainerProps, 'children' | 'width'> & {\n children:\n | React.ReactNode\n | ((value: any, index: number) => React.ReactNode)\n | Array<\n | React.ReactNode\n | ((value: any, index: number) => React.ReactNode)\n >\n }\n\nfunction ArrayComponent(props: Props) {\n const {\n className,\n layout = 'vertical',\n placeholder,\n label,\n labelDescription,\n path,\n value: arrayValue,\n info,\n warning,\n error,\n emptyValue,\n width,\n handleChange,\n children,\n } = useFieldProps(props)\n\n const elementData: {\n elementValue: unknown\n handleElementChange: (path: string, value: unknown) => void\n handleRemoveElement: () => void\n }[] = useMemo(() => {\n return (arrayValue ?? []).map((elementValue, elementIndex) => ({\n elementValue,\n handleElementChange: (path, value) => {\n const newArrayValue = structuredClone(arrayValue)\n pointer.set(newArrayValue, path, value)\n handleChange?.(newArrayValue)\n },\n handleRemoveElement: () => {\n const newArrayValue = structuredClone(arrayValue)\n newArrayValue.splice(elementIndex, 1)\n handleChange?.(newArrayValue)\n },\n }))\n }, [arrayValue, handleChange])\n\n const handlePush = useCallback(\n (element: unknown) => {\n handleChange([...(arrayValue ?? []), element])\n },\n [arrayValue, handleChange]\n )\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-number', className)}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n info={info}\n warning={warning}\n error={error}\n width={width}\n contentWidth={width !== false ? width : undefined}\n {...pickSpacingProps(props)}\n >\n <Flex.Container\n {...pickFlexContainerProps(props as FlexContainerProps, {\n spacing: 'small',\n })}\n >\n {arrayValue === emptyValue ? (\n <em>{placeholder}</em>\n ) : (\n elementData.map(\n (\n { elementValue, handleElementChange, handleRemoveElement },\n elementIndex\n ) => {\n return (\n <IterateElementContext.Provider\n key={`element-${elementIndex}`}\n value={{\n index: elementIndex,\n value: elementValue,\n path,\n handleChange: handleElementChange,\n handleRemove: handleRemoveElement,\n handlePush,\n }}\n >\n {Array.isArray(children)\n ? children.map((childElement) =>\n typeof childElement === 'function'\n ? childElement(elementValue, elementIndex)\n : childElement\n )\n : typeof children === 'function'\n ? children(elementValue, elementIndex)\n : children}\n </IterateElementContext.Provider>\n )\n }\n )\n )}\n </Flex.Container>\n </FieldBlock>\n )\n}\n\nArrayComponent._supportsSpacingProps = true\nexport default ArrayComponent\n"],"mappings":"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"}
@@ -7,7 +7,7 @@ import React, { useCallback, useContext } from 'react';
7
7
  import classnames from 'classnames';
8
8
  import { Button } from '../../../../components';
9
9
  import IterateElementContext from '../IterateElementContext';
10
- import { useDataValue } from '../../hooks';
10
+ import { useFieldProps } from '../../hooks';
11
11
  import { omitDataValueReadWriteProps } from '../../types';
12
12
  function ArrayPushButton(props) {
13
13
  const iterateElementContext = useContext(IterateElementContext);
@@ -23,7 +23,7 @@ function ArrayPushButton(props) {
23
23
  value,
24
24
  handleChange,
25
25
  children
26
- } = useDataValue(restProps);
26
+ } = useFieldProps(restProps);
27
27
  if (value !== undefined && !Array.isArray(value)) {
28
28
  throw new Error('ArrayPushButton received a non-array value.');
29
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ArrayPushButton.js","names":["React","useCallback","useContext","classnames","Button","IterateElementContext","useDataValue","omitDataValueReadWriteProps","ArrayPushButton","props","iterateElementContext","handlePush","pushValue","restProps","_objectWithoutProperties","_excluded","buttonProps","value","handleChange","children","undefined","Array","isArray","Error","handleClick","createElement","_extends","className","on_click","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button } from '../../../../components'\nimport { ButtonProps } from '../../../../components/Button'\nimport IterateElementContext from '../IterateElementContext'\nimport { useDataValue } from '../../hooks'\nimport {\n DataValueReadWriteComponentProps,\n omitDataValueReadWriteProps,\n} from '../../types'\n\nexport type Props = ButtonProps &\n DataValueReadWriteComponentProps<unknown[]> & {\n pushValue: unknown\n }\n\nfunction ArrayPushButton(props: Props) {\n const iterateElementContext = useContext(IterateElementContext)\n const { handlePush } = iterateElementContext ?? {}\n\n const { pushValue, ...restProps } = props\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { value, handleChange, children } = useDataValue(restProps)\n\n if (value !== undefined && !Array.isArray(value)) {\n throw new Error('ArrayPushButton received a non-array value.')\n }\n\n const handleClick = useCallback(() => {\n if (handlePush) {\n // Inside an Iterate element - make the change through the Iterate component\n handlePush(pushValue)\n return\n }\n\n // If not inside an iterate, it could still manipulate a source data set through useDataValue\n handleChange([...(value ?? []), pushValue])\n }, [value, pushValue, handlePush, handleChange])\n\n return (\n <Button\n className={classnames(\n 'dnb-forms-array-push-button',\n props.className\n )}\n on_click={handleClick}\n {...buttonProps}\n >\n {children}\n </Button>\n )\n}\n\nArrayPushButton._supportsSpacingProps = true\nexport default ArrayPushButton\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,MAAM,QAAQ,wBAAwB;AAE/C,OAAOC,qBAAqB,MAAM,0BAA0B;AAC5D,SAASC,YAAY,QAAQ,aAAa;AAC1C,SAEEC,2BAA2B,QACtB,aAAa;AAOpB,SAASC,eAAeA,CAACC,KAAY,EAAE;EACrC,MAAMC,qBAAqB,GAAGR,UAAU,CAACG,qBAAqB,CAAC;EAC/D,MAAM;IAAEM;EAAW,CAAC,GAAGD,qBAAqB,aAArBA,qBAAqB,cAArBA,qBAAqB,GAAI,CAAC,CAAC;EAElD,MAAM;MAAEE;IAAwB,CAAC,GAAGH,KAAK;IAAnBI,SAAS,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA;EACzC,MAAMC,WAAW,GAAGT,2BAA2B,CAACM,SAAS,CAAC;EAC1D,MAAM;IAAEI,KAAK;IAAEC,YAAY;IAAEC;EAAS,CAAC,GAAGb,YAAY,CAACO,SAAS,CAAC;EAEjE,IAAII,KAAK,KAAKG,SAAS,IAAI,CAACC,KAAK,CAACC,OAAO,CAACL,KAAK,CAAC,EAAE;IAChD,MAAM,IAAIM,KAAK,CAAC,6CAA6C,CAAC;EAChE;EAEA,MAAMC,WAAW,GAAGvB,WAAW,CAAC,MAAM;IACpC,IAAIU,UAAU,EAAE;MAEdA,UAAU,CAACC,SAAS,CAAC;MACrB;IACF;IAGAM,YAAY,CAAC,CAAC,IAAID,KAAK,aAALA,KAAK,cAALA,KAAK,GAAI,EAAE,CAAC,EAAEL,SAAS,CAAC,CAAC;EAC7C,CAAC,EAAE,CAACK,KAAK,EAAEL,SAAS,EAAED,UAAU,EAAEO,YAAY,CAAC,CAAC;EAEhD,OACElB,KAAA,CAAAyB,aAAA,CAACrB,MAAM,EAAAsB,QAAA;IACLC,SAAS,EAAExB,UAAU,CACnB,6BAA6B,EAC7BM,KAAK,CAACkB,SACR,CAAE;IACFC,QAAQ,EAAEJ;EAAY,GAClBR,WAAW,GAEdG,QACK,CAAC;AAEb;AAEAX,eAAe,CAACqB,qBAAqB,GAAG,IAAI;AAC5C,eAAerB,eAAe"}
1
+ {"version":3,"file":"ArrayPushButton.js","names":["React","useCallback","useContext","classnames","Button","IterateElementContext","useFieldProps","omitDataValueReadWriteProps","ArrayPushButton","props","iterateElementContext","handlePush","pushValue","restProps","_objectWithoutProperties","_excluded","buttonProps","value","handleChange","children","undefined","Array","isArray","Error","handleClick","createElement","_extends","className","on_click","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button } from '../../../../components'\nimport { ButtonProps } from '../../../../components/Button'\nimport IterateElementContext from '../IterateElementContext'\nimport { useFieldProps } from '../../hooks'\nimport {\n DataValueReadWriteComponentProps,\n omitDataValueReadWriteProps,\n} from '../../types'\n\nexport type Props = ButtonProps &\n DataValueReadWriteComponentProps<unknown[]> & {\n pushValue: unknown\n }\n\nfunction ArrayPushButton(props: Props) {\n const iterateElementContext = useContext(IterateElementContext)\n const { handlePush } = iterateElementContext ?? {}\n\n const { pushValue, ...restProps } = props\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { value, handleChange, children } = useFieldProps(restProps)\n\n if (value !== undefined && !Array.isArray(value)) {\n throw new Error('ArrayPushButton received a non-array value.')\n }\n\n const handleClick = useCallback(() => {\n if (handlePush) {\n // Inside an Iterate element - make the change through the Iterate component\n handlePush(pushValue)\n return\n }\n\n // If not inside an iterate, it could still manipulate a source data set through useFieldProps\n handleChange([...(value ?? []), pushValue])\n }, [value, pushValue, handlePush, handleChange])\n\n return (\n <Button\n className={classnames(\n 'dnb-forms-array-push-button',\n props.className\n )}\n on_click={handleClick}\n {...buttonProps}\n >\n {children}\n </Button>\n )\n}\n\nArrayPushButton._supportsSpacingProps = true\nexport default ArrayPushButton\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,MAAM,QAAQ,wBAAwB;AAE/C,OAAOC,qBAAqB,MAAM,0BAA0B;AAC5D,SAASC,aAAa,QAAQ,aAAa;AAC3C,SAEEC,2BAA2B,QACtB,aAAa;AAOpB,SAASC,eAAeA,CAACC,KAAY,EAAE;EACrC,MAAMC,qBAAqB,GAAGR,UAAU,CAACG,qBAAqB,CAAC;EAC/D,MAAM;IAAEM;EAAW,CAAC,GAAGD,qBAAqB,aAArBA,qBAAqB,cAArBA,qBAAqB,GAAI,CAAC,CAAC;EAElD,MAAM;MAAEE;IAAwB,CAAC,GAAGH,KAAK;IAAnBI,SAAS,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA;EACzC,MAAMC,WAAW,GAAGT,2BAA2B,CAACM,SAAS,CAAC;EAC1D,MAAM;IAAEI,KAAK;IAAEC,YAAY;IAAEC;EAAS,CAAC,GAAGb,aAAa,CAACO,SAAS,CAAC;EAElE,IAAII,KAAK,KAAKG,SAAS,IAAI,CAACC,KAAK,CAACC,OAAO,CAACL,KAAK,CAAC,EAAE;IAChD,MAAM,IAAIM,KAAK,CAAC,6CAA6C,CAAC;EAChE;EAEA,MAAMC,WAAW,GAAGvB,WAAW,CAAC,MAAM;IACpC,IAAIU,UAAU,EAAE;MAEdA,UAAU,CAACC,SAAS,CAAC;MACrB;IACF;IAGAM,YAAY,CAAC,CAAC,IAAID,KAAK,aAALA,KAAK,cAALA,KAAK,GAAI,EAAE,CAAC,EAAEL,SAAS,CAAC,CAAC;EAC7C,CAAC,EAAE,CAACK,KAAK,EAAEL,SAAS,EAAED,UAAU,EAAEO,YAAY,CAAC,CAAC;EAEhD,OACElB,KAAA,CAAAyB,aAAA,CAACrB,MAAM,EAAAsB,QAAA;IACLC,SAAS,EAAExB,UAAU,CACnB,6BAA6B,EAC7BM,KAAK,CAACkB,SACR,CAAE;IACFC,QAAQ,EAAEJ;EAAY,GAClBR,WAAW,GAEdG,QACK,CAAC;AAEb;AAEAX,eAAe,CAACqB,qBAAqB,GAAG,IAAI;AAC5C,eAAerB,eAAe"}
@@ -5,7 +5,7 @@ import React, { useCallback, useContext } from 'react';
5
5
  import classnames from 'classnames';
6
6
  import { Button } from '../../../../components';
7
7
  import IterateElementContext from '../IterateElementContext';
8
- import { useDataValue } from '../../hooks';
8
+ import { useFieldProps } from '../../hooks';
9
9
  import { omitDataValueReadWriteProps } from '../../types';
10
10
  function ArrayRemoveElementButton(props) {
11
11
  const iterateElementContext = useContext(IterateElementContext);
@@ -18,7 +18,7 @@ function ArrayRemoveElementButton(props) {
18
18
  const buttonProps = omitDataValueReadWriteProps(props);
19
19
  const {
20
20
  children
21
- } = useDataValue(props);
21
+ } = useFieldProps(props);
22
22
  const handleClick = useCallback(() => {
23
23
  handleRemove();
24
24
  }, [handleRemove]);
@@ -1 +1 @@
1
- {"version":3,"file":"ArrayRemoveElementButton.js","names":["React","useCallback","useContext","classnames","Button","IterateElementContext","useDataValue","omitDataValueReadWriteProps","ArrayRemoveElementButton","props","iterateElementContext","handleRemove","Error","buttonProps","children","handleClick","createElement","_extends","className","on_click","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button } from '../../../../components'\nimport { ButtonProps } from '../../../../components/Button'\nimport IterateElementContext from '../IterateElementContext'\nimport { useDataValue } from '../../hooks'\nimport {\n DataValueReadWriteComponentProps,\n omitDataValueReadWriteProps,\n} from '../../types'\n\nexport type Props = ButtonProps &\n DataValueReadWriteComponentProps<unknown[]>\n\nfunction ArrayRemoveElementButton(props: Props) {\n const iterateElementContext = useContext(IterateElementContext)\n const { handleRemove } = iterateElementContext ?? {}\n\n if (!iterateElementContext) {\n throw new Error(\n 'ArrayRemoveElementButton must be inside an Iterate.Array component.'\n )\n }\n\n const buttonProps = omitDataValueReadWriteProps(props)\n\n const { children } = useDataValue(props)\n\n const handleClick = useCallback(() => {\n handleRemove()\n }, [handleRemove])\n\n return (\n <Button\n className={classnames(\n 'dnb-forms-array-remove-element-button',\n props.className\n )}\n on_click={handleClick}\n {...buttonProps}\n >\n {children}\n </Button>\n )\n}\n\nArrayRemoveElementButton._supportsSpacingProps = true\nexport default ArrayRemoveElementButton\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,MAAM,QAAQ,wBAAwB;AAE/C,OAAOC,qBAAqB,MAAM,0BAA0B;AAC5D,SAASC,YAAY,QAAQ,aAAa;AAC1C,SAEEC,2BAA2B,QACtB,aAAa;AAKpB,SAASC,wBAAwBA,CAACC,KAAY,EAAE;EAC9C,MAAMC,qBAAqB,GAAGR,UAAU,CAACG,qBAAqB,CAAC;EAC/D,MAAM;IAAEM;EAAa,CAAC,GAAGD,qBAAqB,aAArBA,qBAAqB,cAArBA,qBAAqB,GAAI,CAAC,CAAC;EAEpD,IAAI,CAACA,qBAAqB,EAAE;IAC1B,MAAM,IAAIE,KAAK,CACb,qEACF,CAAC;EACH;EAEA,MAAMC,WAAW,GAAGN,2BAA2B,CAACE,KAAK,CAAC;EAEtD,MAAM;IAAEK;EAAS,CAAC,GAAGR,YAAY,CAACG,KAAK,CAAC;EAExC,MAAMM,WAAW,GAAGd,WAAW,CAAC,MAAM;IACpCU,YAAY,CAAC,CAAC;EAChB,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;EAElB,OACEX,KAAA,CAAAgB,aAAA,CAACZ,MAAM,EAAAa,QAAA;IACLC,SAAS,EAAEf,UAAU,CACnB,uCAAuC,EACvCM,KAAK,CAACS,SACR,CAAE;IACFC,QAAQ,EAAEJ;EAAY,GAClBF,WAAW,GAEdC,QACK,CAAC;AAEb;AAEAN,wBAAwB,CAACY,qBAAqB,GAAG,IAAI;AACrD,eAAeZ,wBAAwB"}
1
+ {"version":3,"file":"ArrayRemoveElementButton.js","names":["React","useCallback","useContext","classnames","Button","IterateElementContext","useFieldProps","omitDataValueReadWriteProps","ArrayRemoveElementButton","props","iterateElementContext","handleRemove","Error","buttonProps","children","handleClick","createElement","_extends","className","on_click","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button } from '../../../../components'\nimport { ButtonProps } from '../../../../components/Button'\nimport IterateElementContext from '../IterateElementContext'\nimport { useFieldProps } from '../../hooks'\nimport {\n DataValueReadWriteComponentProps,\n omitDataValueReadWriteProps,\n} from '../../types'\n\nexport type Props = ButtonProps &\n DataValueReadWriteComponentProps<unknown[]>\n\nfunction ArrayRemoveElementButton(props: Props) {\n const iterateElementContext = useContext(IterateElementContext)\n const { handleRemove } = iterateElementContext ?? {}\n\n if (!iterateElementContext) {\n throw new Error(\n 'ArrayRemoveElementButton must be inside an Iterate.Array component.'\n )\n }\n\n const buttonProps = omitDataValueReadWriteProps(props)\n\n const { children } = useFieldProps(props)\n\n const handleClick = useCallback(() => {\n handleRemove()\n }, [handleRemove])\n\n return (\n <Button\n className={classnames(\n 'dnb-forms-array-remove-element-button',\n props.className\n )}\n on_click={handleClick}\n {...buttonProps}\n >\n {children}\n </Button>\n )\n}\n\nArrayRemoveElementButton._supportsSpacingProps = true\nexport default ArrayRemoveElementButton\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,MAAM,QAAQ,wBAAwB;AAE/C,OAAOC,qBAAqB,MAAM,0BAA0B;AAC5D,SAASC,aAAa,QAAQ,aAAa;AAC3C,SAEEC,2BAA2B,QACtB,aAAa;AAKpB,SAASC,wBAAwBA,CAACC,KAAY,EAAE;EAC9C,MAAMC,qBAAqB,GAAGR,UAAU,CAACG,qBAAqB,CAAC;EAC/D,MAAM;IAAEM;EAAa,CAAC,GAAGD,qBAAqB,aAArBA,qBAAqB,cAArBA,qBAAqB,GAAI,CAAC,CAAC;EAEpD,IAAI,CAACA,qBAAqB,EAAE;IAC1B,MAAM,IAAIE,KAAK,CACb,qEACF,CAAC;EACH;EAEA,MAAMC,WAAW,GAAGN,2BAA2B,CAACE,KAAK,CAAC;EAEtD,MAAM;IAAEK;EAAS,CAAC,GAAGR,aAAa,CAACG,KAAK,CAAC;EAEzC,MAAMM,WAAW,GAAGd,WAAW,CAAC,MAAM;IACpCU,YAAY,CAAC,CAAC;EAChB,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;EAElB,OACEX,KAAA,CAAAgB,aAAA,CAACZ,MAAM,EAAAa,QAAA;IACLC,SAAS,EAAEf,UAAU,CACnB,uCAAuC,EACvCM,KAAK,CAACS,SACR,CAAE;IACFC,QAAQ,EAAEJ;EAAY,GAClBF,WAAW,GAEdC,QACK,CAAC;AAEb;AAEAN,wBAAwB,CAACY,qBAAqB,GAAG,IAAI;AACrD,eAAeZ,wBAAwB"}
@@ -1,8 +1,6 @@
1
1
  import type { ComponentProps } from '../../types';
2
2
  import { ButtonProps } from '../../../../components/button/Button';
3
- export type Props = ComponentProps & ButtonProps & {
4
- children?: string;
5
- };
3
+ export type Props = ComponentProps & ButtonProps;
6
4
  declare function NextButton(props: Props): import("react/jsx-runtime").JSX.Element;
7
5
  declare namespace NextButton {
8
6
  var _supportsSpacingProps: boolean;