@dnb/eufemia 10.31.0 → 10.33.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 (846) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/cjs/components/anchor/Anchor.d.ts +8 -1
  3. package/cjs/components/anchor/Anchor.js.map +1 -1
  4. package/cjs/components/card/Card.js +3 -2
  5. package/cjs/components/card/Card.js.map +1 -1
  6. package/cjs/components/card/style/dnb-card.css +1 -2
  7. package/cjs/components/card/style/dnb-card.min.css +1 -1
  8. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.css +5 -0
  9. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -0
  10. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.scss +7 -0
  11. package/cjs/components/checkbox/style/dnb-checkbox.css +2 -2
  12. package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
  13. package/cjs/components/checkbox/style/dnb-checkbox.scss +2 -3
  14. package/cjs/components/flex/Container.d.ts +4 -1
  15. package/cjs/components/flex/Container.js +8 -5
  16. package/cjs/components/flex/Container.js.map +1 -1
  17. package/cjs/components/flex/Stack.js +3 -3
  18. package/cjs/components/flex/Stack.js.map +1 -1
  19. package/cjs/components/flex/utils.js +7 -7
  20. package/cjs/components/flex/utils.js.map +1 -1
  21. package/cjs/components/grid/Container.d.ts +2 -2
  22. package/cjs/components/grid/Container.js.map +1 -1
  23. package/cjs/components/grid/ContainerDocs.d.ts +2 -0
  24. package/cjs/components/grid/ContainerDocs.js +30 -0
  25. package/cjs/components/grid/ContainerDocs.js.map +1 -0
  26. package/cjs/components/grid/style/dnb-grid.css +6 -0
  27. package/cjs/components/grid/style/dnb-grid.min.css +1 -1
  28. package/cjs/components/grid/style/grid-container.scss +6 -0
  29. package/cjs/components/skeleton/style/dnb-skeleton.css +4 -8
  30. package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
  31. package/cjs/components/slider/SliderDocs.d.ts +3 -0
  32. package/cjs/components/slider/SliderDocs.js +158 -0
  33. package/cjs/components/slider/SliderDocs.js.map +1 -0
  34. package/cjs/components/space/SpacingUtils.d.ts +1 -1
  35. package/cjs/components/space/SpacingUtils.js +1 -1
  36. package/cjs/components/space/SpacingUtils.js.map +1 -1
  37. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.css +70 -0
  38. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.min.css +1 -0
  39. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.scss +97 -0
  40. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.css +1 -2
  41. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  42. package/cjs/components/table/style/dnb-table.css +5 -10
  43. package/cjs/components/table/style/dnb-table.min.css +1 -1
  44. package/cjs/components/visually-hidden/style/dnb-visually-hidden.css +1 -2
  45. package/cjs/components/visually-hidden/style/dnb-visually-hidden.min.css +1 -1
  46. package/cjs/extensions/forms/DataContext/Context.d.ts +26 -14
  47. package/cjs/extensions/forms/DataContext/Context.js +2 -3
  48. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  49. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +3 -3
  50. package/cjs/extensions/forms/DataContext/Provider/Provider.js +81 -35
  51. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  52. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +3 -3
  53. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  54. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +1 -1
  55. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
  56. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  57. package/cjs/extensions/forms/Field/Boolean/Boolean.js +2 -1
  58. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  59. package/cjs/extensions/forms/Field/Composition/Composition.d.ts +2 -2
  60. package/cjs/extensions/forms/Field/Composition/Composition.js.map +1 -1
  61. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
  62. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  63. package/cjs/extensions/forms/Field/Number/Number.js +6 -4
  64. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  65. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +1 -1
  66. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  67. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
  68. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
  69. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  70. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  71. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  72. package/cjs/extensions/forms/Field/Selection/Selection.js +3 -3
  73. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  74. package/cjs/extensions/forms/Field/Slider/Slider.d.ts +34 -0
  75. package/cjs/extensions/forms/Field/Slider/Slider.js +115 -0
  76. package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -0
  77. package/cjs/extensions/forms/Field/Slider/SliderDocs.d.ts +3 -0
  78. package/cjs/extensions/forms/Field/Slider/SliderDocs.js +34 -0
  79. package/cjs/extensions/forms/Field/Slider/SliderDocs.js.map +1 -0
  80. package/cjs/extensions/forms/Field/Slider/index.d.ts +2 -0
  81. package/cjs/extensions/forms/Field/Slider/index.js +27 -0
  82. package/cjs/extensions/forms/Field/Slider/index.js.map +1 -0
  83. package/cjs/extensions/forms/Field/String/String.js +2 -2
  84. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  85. package/cjs/extensions/forms/Field/Toggle/Toggle.js +7 -7
  86. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  87. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  88. package/cjs/extensions/forms/Field/index.js +7 -0
  89. package/cjs/extensions/forms/Field/index.js.map +1 -1
  90. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  91. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +5 -0
  92. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  93. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -3
  94. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  95. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +0 -2
  96. package/cjs/extensions/forms/Form/Element/Element.js +1 -1
  97. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  98. package/cjs/extensions/forms/Form/FieldProps/FieldProps.d.ts +19 -5
  99. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js +52 -21
  100. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
  101. package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +1 -0
  102. package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -1
  103. package/cjs/extensions/forms/Form/Section/Section.d.ts +44 -0
  104. package/cjs/extensions/forms/Form/Section/Section.js +67 -0
  105. package/cjs/extensions/forms/Form/Section/Section.js.map +1 -0
  106. package/cjs/extensions/forms/Form/Section/SectionContext.d.ts +11 -0
  107. package/cjs/extensions/forms/Form/Section/SectionContext.js +12 -0
  108. package/cjs/extensions/forms/Form/Section/SectionContext.js.map +1 -0
  109. package/cjs/extensions/forms/Form/Section/SectionDocs.d.ts +3 -0
  110. package/cjs/extensions/forms/Form/Section/SectionDocs.js +43 -0
  111. package/cjs/extensions/forms/Form/Section/SectionDocs.js.map +1 -0
  112. package/cjs/extensions/forms/Form/Section/index.d.ts +2 -0
  113. package/cjs/extensions/forms/Form/Section/index.js +27 -0
  114. package/cjs/extensions/forms/Form/Section/index.js.map +1 -0
  115. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  116. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  117. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +19 -5
  118. package/cjs/extensions/forms/Form/Visibility/Visibility.js +47 -10
  119. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  120. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +11 -6
  121. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  122. package/cjs/extensions/forms/Form/data-context/useData.d.ts +1 -1
  123. package/cjs/extensions/forms/Form/data-context/useData.js +8 -4
  124. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  125. package/cjs/extensions/forms/Form/data-context/useError.d.ts +1 -0
  126. package/cjs/extensions/forms/Form/data-context/useError.js +5 -3
  127. package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -1
  128. package/cjs/extensions/forms/Form/index.d.ts +1 -0
  129. package/cjs/extensions/forms/Form/index.js +7 -0
  130. package/cjs/extensions/forms/Form/index.js.map +1 -1
  131. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +8 -1
  132. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -3
  133. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  134. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -1
  135. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  136. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +5 -0
  137. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  138. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +1 -1
  139. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  140. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
  141. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  142. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  143. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  144. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
  145. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  146. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -1
  147. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  148. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  149. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  150. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +1 -1
  151. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  152. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.css +3 -1
  153. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
  154. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.scss +4 -1
  155. package/cjs/extensions/forms/Tools/GenerateSchema.d.ts +19 -0
  156. package/cjs/extensions/forms/Tools/GenerateSchema.js +143 -0
  157. package/cjs/extensions/forms/Tools/GenerateSchema.js.map +1 -0
  158. package/cjs/extensions/forms/Tools/ListAllProps.d.ts +15 -0
  159. package/cjs/extensions/forms/Tools/ListAllProps.js +73 -0
  160. package/cjs/extensions/forms/Tools/ListAllProps.js.map +1 -0
  161. package/cjs/extensions/forms/Tools/index.d.ts +2 -0
  162. package/cjs/extensions/forms/Tools/index.js +21 -0
  163. package/cjs/extensions/forms/Tools/index.js.map +1 -0
  164. package/cjs/extensions/forms/Value/Number/Number.js +4 -2
  165. package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
  166. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +4 -2
  167. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  168. package/cjs/extensions/forms/Wizard/Container/WizardContainer.d.ts +31 -2
  169. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +102 -32
  170. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  171. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  172. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  173. package/cjs/extensions/forms/Wizard/Step/Step.d.ts +6 -1
  174. package/cjs/extensions/forms/Wizard/Step/Step.js +9 -5
  175. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  176. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css +0 -1
  177. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  178. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -1
  179. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.css +1 -0
  180. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.min.css +0 -0
  181. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.scss +1 -0
  182. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.css +3 -0
  183. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.min.css +1 -0
  184. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.scss +7 -0
  185. package/cjs/extensions/forms/blocks/Category/FirstBlock/FirstBlock.d.ts +2 -0
  186. package/cjs/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js +46 -0
  187. package/cjs/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js.map +1 -0
  188. package/cjs/extensions/forms/blocks/Category/FirstBlock/index.d.ts +2 -0
  189. package/cjs/extensions/forms/blocks/Category/FirstBlock/index.js +27 -0
  190. package/cjs/extensions/forms/blocks/Category/FirstBlock/index.js.map +1 -0
  191. package/cjs/extensions/forms/blocks/Category/index.d.ts +1 -0
  192. package/cjs/extensions/forms/blocks/Category/index.js +14 -0
  193. package/cjs/extensions/forms/blocks/Category/index.js.map +1 -0
  194. package/cjs/extensions/forms/blocks/index.d.ts +1 -0
  195. package/cjs/extensions/forms/blocks/index.js +11 -0
  196. package/cjs/extensions/forms/blocks/index.js.map +1 -0
  197. package/cjs/extensions/forms/hooks/index.d.ts +2 -5
  198. package/cjs/extensions/forms/hooks/index.js +12 -4
  199. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  200. package/cjs/extensions/forms/hooks/useDataValue.d.ts +9 -0
  201. package/cjs/extensions/forms/hooks/useDataValue.js +39 -0
  202. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -0
  203. package/cjs/extensions/forms/hooks/useExternalValue.d.ts +12 -0
  204. package/cjs/extensions/forms/hooks/useExternalValue.js +47 -0
  205. package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -0
  206. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +1 -10
  207. package/cjs/extensions/forms/hooks/useFieldProps.js +126 -108
  208. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  209. package/cjs/extensions/forms/hooks/usePath.d.ts +14 -0
  210. package/cjs/extensions/forms/hooks/usePath.js +72 -0
  211. package/cjs/extensions/forms/hooks/usePath.js.map +1 -0
  212. package/cjs/extensions/forms/hooks/useValueProps.js +17 -4
  213. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  214. package/cjs/extensions/forms/index.d.ts +2 -0
  215. package/cjs/extensions/forms/index.js +4 -1
  216. package/cjs/extensions/forms/index.js.map +1 -1
  217. package/cjs/extensions/forms/style/dnb-forms.css +3 -5
  218. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  219. package/cjs/extensions/forms/types.d.ts +10 -3
  220. package/cjs/extensions/forms/types.js.map +1 -1
  221. package/cjs/fragments/drawer-list/DrawerListHelpers.js +6 -2
  222. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  223. package/cjs/shared/Context.d.ts +3 -3
  224. package/cjs/shared/Context.js +8 -8
  225. package/cjs/shared/Context.js.map +1 -1
  226. package/cjs/shared/Eufemia.d.ts +1 -1
  227. package/cjs/shared/Eufemia.js +2 -2
  228. package/cjs/shared/Eufemia.js.map +1 -1
  229. package/cjs/shared/MediaQuery.js +19 -1
  230. package/cjs/shared/MediaQuery.js.map +1 -1
  231. package/cjs/shared/MediaQueryUtils.d.ts +12 -34
  232. package/cjs/shared/MediaQueryUtils.js +22 -12
  233. package/cjs/shared/MediaQueryUtils.js.map +1 -1
  234. package/cjs/shared/component-helper.d.ts +1 -1
  235. package/cjs/shared/component-helper.js +5 -1
  236. package/cjs/shared/component-helper.js.map +1 -1
  237. package/cjs/shared/useMedia.d.ts +7 -2
  238. package/cjs/shared/useMedia.js +16 -11
  239. package/cjs/shared/useMedia.js.map +1 -1
  240. package/cjs/shared/useMediaQuery.js +30 -9
  241. package/cjs/shared/useMediaQuery.js.map +1 -1
  242. package/cjs/style/core/scopes.scss +1 -1
  243. package/cjs/style/dnb-ui-basis.css +2 -3
  244. package/cjs/style/dnb-ui-basis.min.css +1 -1
  245. package/cjs/style/dnb-ui-body.css +1 -1
  246. package/cjs/style/dnb-ui-body.min.css +1 -1
  247. package/cjs/style/dnb-ui-components.css +22 -29
  248. package/cjs/style/dnb-ui-components.min.css +3 -3
  249. package/cjs/style/dnb-ui-core.css +2 -3
  250. package/cjs/style/dnb-ui-core.min.css +1 -1
  251. package/cjs/style/dnb-ui-extensions.css +3 -5
  252. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  253. package/cjs/style/dnb-ui-forms.css +3 -5
  254. package/cjs/style/dnb-ui-forms.min.css +1 -1
  255. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +30 -36
  256. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +5 -5
  257. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -5
  258. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  259. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  260. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +7 -5
  261. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  262. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  263. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +103 -112
  264. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  265. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  266. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +4 -5
  267. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  268. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  269. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -5
  270. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  271. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  272. package/cjs/style/themes/theme-ui/ui-theme-components.css +30 -36
  273. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +5 -5
  274. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +7 -5
  275. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  276. package/cjs/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  277. package/cjs/style/themes/theme-ui/ui-theme-forms.css +7 -5
  278. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  279. package/cjs/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  280. package/components/anchor/Anchor.d.ts +8 -1
  281. package/components/anchor/Anchor.js.map +1 -1
  282. package/components/card/Card.js +3 -2
  283. package/components/card/Card.js.map +1 -1
  284. package/components/card/style/dnb-card.css +1 -2
  285. package/components/card/style/dnb-card.min.css +1 -1
  286. package/components/card/style/themes/dnb-card-theme-sbanken.css +5 -0
  287. package/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -0
  288. package/components/card/style/themes/dnb-card-theme-sbanken.scss +7 -0
  289. package/components/checkbox/style/dnb-checkbox.css +2 -2
  290. package/components/checkbox/style/dnb-checkbox.min.css +1 -1
  291. package/components/checkbox/style/dnb-checkbox.scss +2 -3
  292. package/components/flex/Container.d.ts +4 -1
  293. package/components/flex/Container.js +8 -5
  294. package/components/flex/Container.js.map +1 -1
  295. package/components/flex/Stack.js +3 -3
  296. package/components/flex/Stack.js.map +1 -1
  297. package/components/flex/utils.js +8 -8
  298. package/components/flex/utils.js.map +1 -1
  299. package/components/grid/Container.d.ts +2 -2
  300. package/components/grid/Container.js.map +1 -1
  301. package/components/grid/ContainerDocs.d.ts +2 -0
  302. package/components/grid/ContainerDocs.js +23 -0
  303. package/components/grid/ContainerDocs.js.map +1 -0
  304. package/components/grid/style/dnb-grid.css +6 -0
  305. package/components/grid/style/dnb-grid.min.css +1 -1
  306. package/components/grid/style/grid-container.scss +6 -0
  307. package/components/skeleton/style/dnb-skeleton.css +4 -8
  308. package/components/skeleton/style/dnb-skeleton.min.css +1 -1
  309. package/components/slider/SliderDocs.d.ts +3 -0
  310. package/components/slider/SliderDocs.js +150 -0
  311. package/components/slider/SliderDocs.js.map +1 -0
  312. package/components/space/SpacingUtils.d.ts +1 -1
  313. package/components/space/SpacingUtils.js +1 -1
  314. package/components/space/SpacingUtils.js.map +1 -1
  315. package/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.css +70 -0
  316. package/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.min.css +1 -0
  317. package/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.scss +97 -0
  318. package/components/switch/style/themes/dnb-switch-theme-ui.css +1 -2
  319. package/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  320. package/components/table/style/dnb-table.css +5 -10
  321. package/components/table/style/dnb-table.min.css +1 -1
  322. package/components/visually-hidden/style/dnb-visually-hidden.css +1 -2
  323. package/components/visually-hidden/style/dnb-visually-hidden.min.css +1 -1
  324. package/es/components/anchor/Anchor.d.ts +8 -1
  325. package/es/components/anchor/Anchor.js.map +1 -1
  326. package/es/components/card/Card.js +3 -2
  327. package/es/components/card/Card.js.map +1 -1
  328. package/es/components/card/style/dnb-card.css +1 -2
  329. package/es/components/card/style/dnb-card.min.css +1 -1
  330. package/es/components/card/style/themes/dnb-card-theme-sbanken.css +5 -0
  331. package/es/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -0
  332. package/es/components/card/style/themes/dnb-card-theme-sbanken.scss +7 -0
  333. package/es/components/checkbox/style/dnb-checkbox.css +2 -2
  334. package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
  335. package/es/components/checkbox/style/dnb-checkbox.scss +2 -3
  336. package/es/components/flex/Container.d.ts +4 -1
  337. package/es/components/flex/Container.js +8 -5
  338. package/es/components/flex/Container.js.map +1 -1
  339. package/es/components/flex/Stack.js +3 -3
  340. package/es/components/flex/Stack.js.map +1 -1
  341. package/es/components/flex/utils.js +8 -8
  342. package/es/components/flex/utils.js.map +1 -1
  343. package/es/components/grid/Container.d.ts +2 -2
  344. package/es/components/grid/Container.js.map +1 -1
  345. package/es/components/grid/ContainerDocs.d.ts +2 -0
  346. package/es/components/grid/ContainerDocs.js +23 -0
  347. package/es/components/grid/ContainerDocs.js.map +1 -0
  348. package/es/components/grid/style/dnb-grid.css +6 -0
  349. package/es/components/grid/style/dnb-grid.min.css +1 -1
  350. package/es/components/grid/style/grid-container.scss +6 -0
  351. package/es/components/skeleton/style/dnb-skeleton.css +4 -8
  352. package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
  353. package/es/components/slider/SliderDocs.d.ts +3 -0
  354. package/es/components/slider/SliderDocs.js +150 -0
  355. package/es/components/slider/SliderDocs.js.map +1 -0
  356. package/es/components/space/SpacingUtils.d.ts +1 -1
  357. package/es/components/space/SpacingUtils.js +1 -1
  358. package/es/components/space/SpacingUtils.js.map +1 -1
  359. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.css +70 -0
  360. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.min.css +1 -0
  361. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.scss +97 -0
  362. package/es/components/switch/style/themes/dnb-switch-theme-ui.css +1 -2
  363. package/es/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  364. package/es/components/table/style/dnb-table.css +5 -10
  365. package/es/components/table/style/dnb-table.min.css +1 -1
  366. package/es/components/visually-hidden/style/dnb-visually-hidden.css +1 -2
  367. package/es/components/visually-hidden/style/dnb-visually-hidden.min.css +1 -1
  368. package/es/extensions/forms/DataContext/Context.d.ts +26 -14
  369. package/es/extensions/forms/DataContext/Context.js +2 -3
  370. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  371. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +3 -3
  372. package/es/extensions/forms/DataContext/Provider/Provider.js +79 -34
  373. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  374. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +3 -3
  375. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  376. package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +1 -1
  377. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
  378. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  379. package/es/extensions/forms/Field/Boolean/Boolean.js +2 -1
  380. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  381. package/es/extensions/forms/Field/Composition/Composition.d.ts +2 -2
  382. package/es/extensions/forms/Field/Composition/Composition.js.map +1 -1
  383. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
  384. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  385. package/es/extensions/forms/Field/Number/Number.js +6 -4
  386. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  387. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +1 -1
  388. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  389. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
  390. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
  391. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  392. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  393. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  394. package/es/extensions/forms/Field/Selection/Selection.js +3 -3
  395. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  396. package/es/extensions/forms/Field/Slider/Slider.d.ts +34 -0
  397. package/es/extensions/forms/Field/Slider/Slider.js +103 -0
  398. package/es/extensions/forms/Field/Slider/Slider.js.map +1 -0
  399. package/es/extensions/forms/Field/Slider/SliderDocs.d.ts +3 -0
  400. package/es/extensions/forms/Field/Slider/SliderDocs.js +26 -0
  401. package/es/extensions/forms/Field/Slider/SliderDocs.js.map +1 -0
  402. package/es/extensions/forms/Field/Slider/index.d.ts +2 -0
  403. package/es/extensions/forms/Field/Slider/index.js +3 -0
  404. package/es/extensions/forms/Field/Slider/index.js.map +1 -0
  405. package/es/extensions/forms/Field/String/String.js +2 -2
  406. package/es/extensions/forms/Field/String/String.js.map +1 -1
  407. package/es/extensions/forms/Field/Toggle/Toggle.js +7 -7
  408. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  409. package/es/extensions/forms/Field/index.d.ts +1 -0
  410. package/es/extensions/forms/Field/index.js +1 -0
  411. package/es/extensions/forms/Field/index.js.map +1 -1
  412. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  413. package/es/extensions/forms/FieldBlock/FieldBlock.js +5 -0
  414. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  415. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -3
  416. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  417. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +0 -2
  418. package/es/extensions/forms/Form/Element/Element.js +1 -1
  419. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  420. package/es/extensions/forms/Form/FieldProps/FieldProps.d.ts +19 -5
  421. package/es/extensions/forms/Form/FieldProps/FieldProps.js +49 -21
  422. package/es/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
  423. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +1 -0
  424. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -1
  425. package/es/extensions/forms/Form/Section/Section.d.ts +44 -0
  426. package/es/extensions/forms/Form/Section/Section.js +56 -0
  427. package/es/extensions/forms/Form/Section/Section.js.map +1 -0
  428. package/es/extensions/forms/Form/Section/SectionContext.d.ts +11 -0
  429. package/es/extensions/forms/Form/Section/SectionContext.js +4 -0
  430. package/es/extensions/forms/Form/Section/SectionContext.js.map +1 -0
  431. package/es/extensions/forms/Form/Section/SectionDocs.d.ts +3 -0
  432. package/es/extensions/forms/Form/Section/SectionDocs.js +35 -0
  433. package/es/extensions/forms/Form/Section/SectionDocs.js.map +1 -0
  434. package/es/extensions/forms/Form/Section/index.d.ts +2 -0
  435. package/es/extensions/forms/Form/Section/index.js +3 -0
  436. package/es/extensions/forms/Form/Section/index.js.map +1 -0
  437. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  438. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  439. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +19 -5
  440. package/es/extensions/forms/Form/Visibility/Visibility.js +48 -11
  441. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  442. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +11 -6
  443. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  444. package/es/extensions/forms/Form/data-context/useData.d.ts +1 -1
  445. package/es/extensions/forms/Form/data-context/useData.js +7 -4
  446. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  447. package/es/extensions/forms/Form/data-context/useError.d.ts +1 -0
  448. package/es/extensions/forms/Form/data-context/useError.js +5 -3
  449. package/es/extensions/forms/Form/data-context/useError.js.map +1 -1
  450. package/es/extensions/forms/Form/index.d.ts +1 -0
  451. package/es/extensions/forms/Form/index.js +1 -0
  452. package/es/extensions/forms/Form/index.js.map +1 -1
  453. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +8 -1
  454. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -3
  455. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  456. package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -1
  457. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  458. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +5 -0
  459. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  460. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +1 -1
  461. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  462. package/es/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
  463. package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  464. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  465. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  466. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
  467. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  468. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -1
  469. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  470. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  471. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  472. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +1 -1
  473. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  474. package/es/extensions/forms/Iterate/style/dnb-form-iterate.css +3 -1
  475. package/es/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
  476. package/es/extensions/forms/Iterate/style/dnb-form-iterate.scss +4 -1
  477. package/es/extensions/forms/Tools/GenerateSchema.d.ts +19 -0
  478. package/es/extensions/forms/Tools/GenerateSchema.js +130 -0
  479. package/es/extensions/forms/Tools/GenerateSchema.js.map +1 -0
  480. package/es/extensions/forms/Tools/ListAllProps.d.ts +15 -0
  481. package/es/extensions/forms/Tools/ListAllProps.js +65 -0
  482. package/es/extensions/forms/Tools/ListAllProps.js.map +1 -0
  483. package/es/extensions/forms/Tools/index.d.ts +2 -0
  484. package/es/extensions/forms/Tools/index.js +3 -0
  485. package/es/extensions/forms/Tools/index.js.map +1 -0
  486. package/es/extensions/forms/Value/Number/Number.js +4 -2
  487. package/es/extensions/forms/Value/Number/Number.js.map +1 -1
  488. package/es/extensions/forms/ValueBlock/ValueBlock.js +4 -2
  489. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  490. package/es/extensions/forms/Wizard/Container/WizardContainer.d.ts +31 -2
  491. package/es/extensions/forms/Wizard/Container/WizardContainer.js +98 -32
  492. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  493. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  494. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  495. package/es/extensions/forms/Wizard/Step/Step.d.ts +6 -1
  496. package/es/extensions/forms/Wizard/Step/Step.js +9 -5
  497. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  498. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.css +0 -1
  499. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  500. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -1
  501. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.css +1 -0
  502. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.min.css +0 -0
  503. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.scss +1 -0
  504. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.css +3 -0
  505. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.min.css +1 -0
  506. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.scss +7 -0
  507. package/es/extensions/forms/blocks/Category/FirstBlock/FirstBlock.d.ts +2 -0
  508. package/es/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js +39 -0
  509. package/es/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js.map +1 -0
  510. package/es/extensions/forms/blocks/Category/FirstBlock/index.d.ts +2 -0
  511. package/es/extensions/forms/blocks/Category/FirstBlock/index.js +3 -0
  512. package/es/extensions/forms/blocks/Category/FirstBlock/index.js.map +1 -0
  513. package/es/extensions/forms/blocks/Category/index.d.ts +1 -0
  514. package/es/extensions/forms/blocks/Category/index.js +1 -0
  515. package/es/extensions/forms/blocks/Category/index.js.map +1 -0
  516. package/es/extensions/forms/blocks/index.d.ts +1 -0
  517. package/es/extensions/forms/blocks/index.js +1 -0
  518. package/es/extensions/forms/blocks/index.js.map +1 -0
  519. package/es/extensions/forms/hooks/index.d.ts +2 -5
  520. package/es/extensions/forms/hooks/index.js +2 -1
  521. package/es/extensions/forms/hooks/index.js.map +1 -1
  522. package/es/extensions/forms/hooks/useDataValue.d.ts +9 -0
  523. package/es/extensions/forms/hooks/useDataValue.js +32 -0
  524. package/es/extensions/forms/hooks/useDataValue.js.map +1 -0
  525. package/es/extensions/forms/hooks/useExternalValue.d.ts +12 -0
  526. package/es/extensions/forms/hooks/useExternalValue.js +41 -0
  527. package/es/extensions/forms/hooks/useExternalValue.js.map +1 -0
  528. package/es/extensions/forms/hooks/useFieldProps.d.ts +1 -10
  529. package/es/extensions/forms/hooks/useFieldProps.js +122 -102
  530. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  531. package/es/extensions/forms/hooks/usePath.d.ts +14 -0
  532. package/es/extensions/forms/hooks/usePath.js +64 -0
  533. package/es/extensions/forms/hooks/usePath.js.map +1 -0
  534. package/es/extensions/forms/hooks/useValueProps.js +16 -4
  535. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  536. package/es/extensions/forms/index.d.ts +2 -0
  537. package/es/extensions/forms/index.js +1 -0
  538. package/es/extensions/forms/index.js.map +1 -1
  539. package/es/extensions/forms/style/dnb-forms.css +3 -5
  540. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  541. package/es/extensions/forms/types.d.ts +10 -3
  542. package/es/extensions/forms/types.js.map +1 -1
  543. package/es/fragments/drawer-list/DrawerListHelpers.js +6 -2
  544. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  545. package/es/shared/Context.d.ts +3 -3
  546. package/es/shared/Context.js +8 -8
  547. package/es/shared/Context.js.map +1 -1
  548. package/es/shared/Eufemia.d.ts +1 -1
  549. package/es/shared/Eufemia.js +2 -2
  550. package/es/shared/Eufemia.js.map +1 -1
  551. package/es/shared/MediaQuery.js +19 -1
  552. package/es/shared/MediaQuery.js.map +1 -1
  553. package/es/shared/MediaQueryUtils.d.ts +12 -34
  554. package/es/shared/MediaQueryUtils.js +22 -17
  555. package/es/shared/MediaQueryUtils.js.map +1 -1
  556. package/es/shared/component-helper.d.ts +1 -1
  557. package/es/shared/component-helper.js +5 -2
  558. package/es/shared/component-helper.js.map +1 -1
  559. package/es/shared/useMedia.d.ts +7 -2
  560. package/es/shared/useMedia.js +14 -11
  561. package/es/shared/useMedia.js.map +1 -1
  562. package/es/shared/useMediaQuery.js +28 -9
  563. package/es/shared/useMediaQuery.js.map +1 -1
  564. package/es/style/core/scopes.scss +1 -1
  565. package/es/style/dnb-ui-basis.css +2 -3
  566. package/es/style/dnb-ui-basis.min.css +1 -1
  567. package/es/style/dnb-ui-body.css +1 -1
  568. package/es/style/dnb-ui-body.min.css +1 -1
  569. package/es/style/dnb-ui-components.css +22 -29
  570. package/es/style/dnb-ui-components.min.css +3 -3
  571. package/es/style/dnb-ui-core.css +2 -3
  572. package/es/style/dnb-ui-core.min.css +1 -1
  573. package/es/style/dnb-ui-extensions.css +3 -5
  574. package/es/style/dnb-ui-extensions.min.css +1 -1
  575. package/es/style/dnb-ui-forms.css +3 -5
  576. package/es/style/dnb-ui-forms.min.css +1 -1
  577. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +30 -36
  578. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +5 -5
  579. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -5
  580. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  581. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  582. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +7 -5
  583. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  584. package/es/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  585. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +103 -112
  586. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  587. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  588. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +4 -5
  589. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  590. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  591. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -5
  592. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  593. package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  594. package/es/style/themes/theme-ui/ui-theme-components.css +30 -36
  595. package/es/style/themes/theme-ui/ui-theme-components.min.css +5 -5
  596. package/es/style/themes/theme-ui/ui-theme-extensions.css +7 -5
  597. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  598. package/es/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  599. package/es/style/themes/theme-ui/ui-theme-forms.css +7 -5
  600. package/es/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  601. package/es/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  602. package/esm/dnb-ui-basis.min.mjs +1 -1
  603. package/esm/dnb-ui-components.min.mjs +1 -1
  604. package/esm/dnb-ui-elements.min.mjs +1 -1
  605. package/esm/dnb-ui-extensions.min.mjs +3 -3
  606. package/esm/dnb-ui-lib.min.mjs +1 -1
  607. package/extensions/forms/DataContext/Context.d.ts +26 -14
  608. package/extensions/forms/DataContext/Context.js +2 -3
  609. package/extensions/forms/DataContext/Context.js.map +1 -1
  610. package/extensions/forms/DataContext/Provider/Provider.d.ts +3 -3
  611. package/extensions/forms/DataContext/Provider/Provider.js +82 -36
  612. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  613. package/extensions/forms/DataContext/Provider/ProviderDocs.js +3 -3
  614. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  615. package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +1 -1
  616. package/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
  617. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  618. package/extensions/forms/Field/Boolean/Boolean.js +2 -1
  619. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  620. package/extensions/forms/Field/Composition/Composition.d.ts +2 -2
  621. package/extensions/forms/Field/Composition/Composition.js.map +1 -1
  622. package/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
  623. package/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  624. package/extensions/forms/Field/Number/Number.js +6 -4
  625. package/extensions/forms/Field/Number/Number.js.map +1 -1
  626. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +1 -1
  627. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  628. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
  629. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
  630. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  631. package/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  632. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  633. package/extensions/forms/Field/Selection/Selection.js +3 -3
  634. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  635. package/extensions/forms/Field/Slider/Slider.d.ts +34 -0
  636. package/extensions/forms/Field/Slider/Slider.js +104 -0
  637. package/extensions/forms/Field/Slider/Slider.js.map +1 -0
  638. package/extensions/forms/Field/Slider/SliderDocs.d.ts +3 -0
  639. package/extensions/forms/Field/Slider/SliderDocs.js +26 -0
  640. package/extensions/forms/Field/Slider/SliderDocs.js.map +1 -0
  641. package/extensions/forms/Field/Slider/index.d.ts +2 -0
  642. package/extensions/forms/Field/Slider/index.js +3 -0
  643. package/extensions/forms/Field/Slider/index.js.map +1 -0
  644. package/extensions/forms/Field/String/String.js +2 -2
  645. package/extensions/forms/Field/String/String.js.map +1 -1
  646. package/extensions/forms/Field/Toggle/Toggle.js +7 -7
  647. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  648. package/extensions/forms/Field/index.d.ts +1 -0
  649. package/extensions/forms/Field/index.js +1 -0
  650. package/extensions/forms/Field/index.js.map +1 -1
  651. package/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  652. package/extensions/forms/FieldBlock/FieldBlock.js +5 -0
  653. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  654. package/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -3
  655. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  656. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +0 -2
  657. package/extensions/forms/Form/Element/Element.js +1 -1
  658. package/extensions/forms/Form/Element/Element.js.map +1 -1
  659. package/extensions/forms/Form/FieldProps/FieldProps.d.ts +19 -5
  660. package/extensions/forms/Form/FieldProps/FieldProps.js +50 -21
  661. package/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
  662. package/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +1 -0
  663. package/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -1
  664. package/extensions/forms/Form/Section/Section.d.ts +44 -0
  665. package/extensions/forms/Form/Section/Section.js +56 -0
  666. package/extensions/forms/Form/Section/Section.js.map +1 -0
  667. package/extensions/forms/Form/Section/SectionContext.d.ts +11 -0
  668. package/extensions/forms/Form/Section/SectionContext.js +4 -0
  669. package/extensions/forms/Form/Section/SectionContext.js.map +1 -0
  670. package/extensions/forms/Form/Section/SectionDocs.d.ts +3 -0
  671. package/extensions/forms/Form/Section/SectionDocs.js +35 -0
  672. package/extensions/forms/Form/Section/SectionDocs.js.map +1 -0
  673. package/extensions/forms/Form/Section/index.d.ts +2 -0
  674. package/extensions/forms/Form/Section/index.js +3 -0
  675. package/extensions/forms/Form/Section/index.js.map +1 -0
  676. package/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  677. package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  678. package/extensions/forms/Form/Visibility/Visibility.d.ts +19 -5
  679. package/extensions/forms/Form/Visibility/Visibility.js +48 -11
  680. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  681. package/extensions/forms/Form/Visibility/VisibilityDocs.js +11 -6
  682. package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  683. package/extensions/forms/Form/data-context/useData.d.ts +1 -1
  684. package/extensions/forms/Form/data-context/useData.js +8 -4
  685. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  686. package/extensions/forms/Form/data-context/useError.d.ts +1 -0
  687. package/extensions/forms/Form/data-context/useError.js +5 -3
  688. package/extensions/forms/Form/data-context/useError.js.map +1 -1
  689. package/extensions/forms/Form/index.d.ts +1 -0
  690. package/extensions/forms/Form/index.js +1 -0
  691. package/extensions/forms/Form/index.js.map +1 -1
  692. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +8 -1
  693. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -3
  694. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  695. package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -1
  696. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  697. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +5 -0
  698. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  699. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +1 -1
  700. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  701. package/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
  702. package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  703. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  704. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  705. package/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
  706. package/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  707. package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -1
  708. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  709. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  710. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  711. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +1 -1
  712. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  713. package/extensions/forms/Iterate/style/dnb-form-iterate.css +3 -1
  714. package/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
  715. package/extensions/forms/Iterate/style/dnb-form-iterate.scss +4 -1
  716. package/extensions/forms/Tools/GenerateSchema.d.ts +19 -0
  717. package/extensions/forms/Tools/GenerateSchema.js +133 -0
  718. package/extensions/forms/Tools/GenerateSchema.js.map +1 -0
  719. package/extensions/forms/Tools/ListAllProps.d.ts +15 -0
  720. package/extensions/forms/Tools/ListAllProps.js +67 -0
  721. package/extensions/forms/Tools/ListAllProps.js.map +1 -0
  722. package/extensions/forms/Tools/index.d.ts +2 -0
  723. package/extensions/forms/Tools/index.js +3 -0
  724. package/extensions/forms/Tools/index.js.map +1 -0
  725. package/extensions/forms/Value/Number/Number.js +4 -2
  726. package/extensions/forms/Value/Number/Number.js.map +1 -1
  727. package/extensions/forms/ValueBlock/ValueBlock.js +4 -2
  728. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  729. package/extensions/forms/Wizard/Container/WizardContainer.d.ts +31 -2
  730. package/extensions/forms/Wizard/Container/WizardContainer.js +102 -32
  731. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  732. package/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  733. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  734. package/extensions/forms/Wizard/Step/Step.d.ts +6 -1
  735. package/extensions/forms/Wizard/Step/Step.js +9 -5
  736. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  737. package/extensions/forms/Wizard/style/dnb-wizard-layout.css +0 -1
  738. package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  739. package/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -1
  740. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.css +1 -0
  741. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.min.css +0 -0
  742. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.scss +1 -0
  743. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.css +3 -0
  744. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.min.css +1 -0
  745. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.scss +7 -0
  746. package/extensions/forms/blocks/Category/FirstBlock/FirstBlock.d.ts +2 -0
  747. package/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js +39 -0
  748. package/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js.map +1 -0
  749. package/extensions/forms/blocks/Category/FirstBlock/index.d.ts +2 -0
  750. package/extensions/forms/blocks/Category/FirstBlock/index.js +3 -0
  751. package/extensions/forms/blocks/Category/FirstBlock/index.js.map +1 -0
  752. package/extensions/forms/blocks/Category/index.d.ts +1 -0
  753. package/extensions/forms/blocks/Category/index.js +1 -0
  754. package/extensions/forms/blocks/Category/index.js.map +1 -0
  755. package/extensions/forms/blocks/index.d.ts +1 -0
  756. package/extensions/forms/blocks/index.js +3 -0
  757. package/extensions/forms/blocks/index.js.map +1 -0
  758. package/extensions/forms/hooks/index.d.ts +2 -5
  759. package/extensions/forms/hooks/index.js +2 -1
  760. package/extensions/forms/hooks/index.js.map +1 -1
  761. package/extensions/forms/hooks/useDataValue.d.ts +9 -0
  762. package/extensions/forms/hooks/useDataValue.js +33 -0
  763. package/extensions/forms/hooks/useDataValue.js.map +1 -0
  764. package/extensions/forms/hooks/useExternalValue.d.ts +12 -0
  765. package/extensions/forms/hooks/useExternalValue.js +41 -0
  766. package/extensions/forms/hooks/useExternalValue.js.map +1 -0
  767. package/extensions/forms/hooks/useFieldProps.d.ts +1 -10
  768. package/extensions/forms/hooks/useFieldProps.js +125 -106
  769. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  770. package/extensions/forms/hooks/usePath.d.ts +14 -0
  771. package/extensions/forms/hooks/usePath.js +66 -0
  772. package/extensions/forms/hooks/usePath.js.map +1 -0
  773. package/extensions/forms/hooks/useValueProps.js +16 -4
  774. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  775. package/extensions/forms/index.d.ts +2 -0
  776. package/extensions/forms/index.js +2 -0
  777. package/extensions/forms/index.js.map +1 -1
  778. package/extensions/forms/style/dnb-forms.css +3 -5
  779. package/extensions/forms/style/dnb-forms.min.css +1 -1
  780. package/extensions/forms/types.d.ts +10 -3
  781. package/extensions/forms/types.js.map +1 -1
  782. package/fragments/drawer-list/DrawerListHelpers.js +6 -2
  783. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  784. package/package.json +1 -1
  785. package/shared/Context.d.ts +3 -3
  786. package/shared/Context.js +8 -8
  787. package/shared/Context.js.map +1 -1
  788. package/shared/Eufemia.d.ts +1 -1
  789. package/shared/Eufemia.js +2 -2
  790. package/shared/Eufemia.js.map +1 -1
  791. package/shared/MediaQuery.js +19 -1
  792. package/shared/MediaQuery.js.map +1 -1
  793. package/shared/MediaQueryUtils.d.ts +12 -34
  794. package/shared/MediaQueryUtils.js +22 -12
  795. package/shared/MediaQueryUtils.js.map +1 -1
  796. package/shared/component-helper.d.ts +1 -1
  797. package/shared/component-helper.js +5 -1
  798. package/shared/component-helper.js.map +1 -1
  799. package/shared/useMedia.d.ts +7 -2
  800. package/shared/useMedia.js +14 -11
  801. package/shared/useMedia.js.map +1 -1
  802. package/shared/useMediaQuery.js +28 -9
  803. package/shared/useMediaQuery.js.map +1 -1
  804. package/style/core/scopes.scss +1 -1
  805. package/style/dnb-ui-basis.css +2 -3
  806. package/style/dnb-ui-basis.min.css +1 -1
  807. package/style/dnb-ui-body.css +1 -1
  808. package/style/dnb-ui-body.min.css +1 -1
  809. package/style/dnb-ui-components.css +22 -29
  810. package/style/dnb-ui-components.min.css +3 -3
  811. package/style/dnb-ui-core.css +2 -3
  812. package/style/dnb-ui-core.min.css +1 -1
  813. package/style/dnb-ui-extensions.css +3 -5
  814. package/style/dnb-ui-extensions.min.css +1 -1
  815. package/style/dnb-ui-forms.css +3 -5
  816. package/style/dnb-ui-forms.min.css +1 -1
  817. package/style/themes/theme-eiendom/eiendom-theme-components.css +30 -36
  818. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +5 -5
  819. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -5
  820. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  821. package/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  822. package/style/themes/theme-eiendom/eiendom-theme-forms.css +7 -5
  823. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  824. package/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  825. package/style/themes/theme-sbanken/sbanken-theme-components.css +103 -112
  826. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  827. package/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  828. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +4 -5
  829. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  830. package/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  831. package/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -5
  832. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  833. package/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  834. package/style/themes/theme-ui/ui-theme-components.css +30 -36
  835. package/style/themes/theme-ui/ui-theme-components.min.css +5 -5
  836. package/style/themes/theme-ui/ui-theme-extensions.css +7 -5
  837. package/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  838. package/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  839. package/style/themes/theme-ui/ui-theme-forms.css +7 -5
  840. package/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  841. package/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  842. package/umd/dnb-ui-basis.min.js +1 -1
  843. package/umd/dnb-ui-components.min.js +1 -1
  844. package/umd/dnb-ui-elements.min.js +1 -1
  845. package/umd/dnb-ui-extensions.min.js +3 -3
  846. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- :root{--forms-field-width--small:5rem;--forms-field-width--medium:11rem;--forms-field-width--large:21rem}@media screen and (max-width:15em){.dnb-forms-field-number .dnb-input__shell,.dnb-forms-field-string .dnb-input__shell{width:90%}}fieldset.dnb-forms-field-block{border:none;padding:0}fieldset.dnb-forms-field-block:not([class*=space__top]){margin-top:0}fieldset.dnb-forms-field-block:not([class*=space__right]){margin-right:0}fieldset.dnb-forms-field-block:not([class*=space__bottom]){margin-bottom:0}fieldset.dnb-forms-field-block:not([class*=space__left]){margin-left:0}.dnb-forms-field-block{width:100%}.dnb-forms-field-block__grid{display:grid}@media screen and (max-width:40em){.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid{flex-wrap:wrap}.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid>.dnb-form-label{margin-bottom:.5rem;margin-top:.5rem}}.dnb-forms-field-block--layout-vertical{grid-template-areas:"label" "contents" "status";grid-template-columns:auto}.dnb-forms-field-block--layout-horizontal{grid-template-areas:"label contents" "status status";grid-template-columns:fit-content(100%) auto}.dnb-forms-field-block--width-stretch{flex-grow:1}@media screen and (min-width:25em){.dnb-forms-field-block--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__label{align-items:center;display:flex;flex-flow:row;grid-area:label;justify-content:space-between}.dnb-forms-field-block__label-description{margin-left:.3em}.dnb-forms-field-block__status{grid-area:status}.dnb-forms-field-block__status .dnb-form-status__shell{margin-top:.5rem}@media screen and (max-width:15em){.dnb-forms-field-block__status{width:90%}}.dnb-forms-field-block__contents{grid-area:contents;width:100%}.dnb-forms-field-block__contents--width-stretch{width:100%}@media screen and (min-width:25em){.dnb-forms-field-block__contents--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block__contents--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block__contents--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__contents__composition--vertical{display:flex;flex-flow:column;row-gap:var(--spacing-small)}.dnb-forms-field-block__contents__composition--horizontal{-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small);display:flex;flex-flow:row}@media screen and (min-width:25em){.dnb-forms-field-block__contents__composition--horizontal{align-items:flex-end}}@media screen and (max-width:25em){.dnb-forms-field-block__contents__composition--horizontal{flex-flow:column;row-gap:var(--spacing-x-small)}}
1
+ :root{--forms-field-width--small:5rem;--forms-field-width--medium:11rem;--forms-field-width--large:21rem}@media screen and (max-width:15em){.dnb-forms-field-number .dnb-input__shell,.dnb-forms-field-string .dnb-input__shell{width:90%}}fieldset.dnb-forms-field-block{border:none;padding:0}fieldset.dnb-forms-field-block:not([class*=space__top]){margin-top:0}fieldset.dnb-forms-field-block:not([class*=space__right]){margin-right:0}fieldset.dnb-forms-field-block:not([class*=space__bottom]){margin-bottom:0}fieldset.dnb-forms-field-block:not([class*=space__left]){margin-left:0}.dnb-forms-field-block__grid{display:grid}@media screen and (max-width:40em){.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid{flex-wrap:wrap}.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid>.dnb-form-label{margin-bottom:.5rem;margin-top:.5rem}}.dnb-forms-field-block--layout-vertical{grid-template-areas:"label" "contents" "status";grid-template-columns:auto}.dnb-forms-field-block--layout-horizontal{grid-template-areas:"label contents" "status status";grid-template-columns:fit-content(100%) auto}.dnb-forms-field-block--width-stretch{flex-grow:1}@media screen and (min-width:25em){.dnb-forms-field-block--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__label{align-items:center;display:flex;flex-flow:row;grid-area:label;justify-content:space-between}.dnb-forms-field-block__label-description{margin-left:.3em}.dnb-forms-field-block__status{grid-area:status}.dnb-forms-field-block__status .dnb-form-status__shell{margin-top:.5rem}@media screen and (max-width:15em){.dnb-forms-field-block__status{width:90%}}.dnb-forms-field-block__contents{grid-area:contents;width:100%}.dnb-forms-field-block__contents--width-stretch{width:100%}@media screen and (min-width:25em){.dnb-forms-field-block__contents--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block__contents--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block__contents--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__contents__composition--vertical{display:flex;flex-flow:column;row-gap:var(--spacing-small)}.dnb-forms-field-block__contents__composition--horizontal{-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small);display:flex;flex-flow:row}@media screen and (min-width:25em){.dnb-forms-field-block__contents__composition--horizontal{align-items:flex-end}}@media screen and (max-width:25em){.dnb-forms-field-block__contents__composition--horizontal{flex-flow:column;row-gap:var(--spacing-x-small)}}
@@ -24,8 +24,6 @@ fieldset.dnb-forms-field-block {
24
24
  }
25
25
 
26
26
  .dnb-forms-field-block {
27
- width: 100%;
28
-
29
27
  &__grid {
30
28
  display: grid;
31
29
  }
@@ -15,7 +15,7 @@ export default function FormElement(_ref) {
15
15
  } = _ref,
16
16
  rest = _objectWithoutProperties(_ref, _excluded);
17
17
  const dataContext = React.useContext(Context);
18
- dataContext._isInsideFormElement = true;
18
+ dataContext.isInsideFormElement = true;
19
19
  return React.createElement(Space, _extends({
20
20
  element: "form",
21
21
  className: classnames('dnb-forms-form', className),
@@ -1 +1 @@
1
- {"version":3,"file":"Element.js","names":["React","Context","Space","classnames","FormElement","_ref","children","className","onSubmit","rest","_objectWithoutProperties","_excluded","dataContext","useContext","_isInsideFormElement","createElement","_extends","element","onSubmitHandler","event","_dataContext$handleSu","preventDefault","formElement","target","handleSubmit","call"],"sources":["../../../../../../src/extensions/forms/Form/Element/Element.tsx"],"sourcesContent":["import React from 'react'\nimport Context from '../../DataContext/Context'\nimport Space from '../../../../components/space/Space'\nimport classnames from 'classnames'\nimport type { SpacingProps } from '../../../../shared/types'\n\nexport type Props = React.HTMLAttributes<HTMLFormElement> & SpacingProps\n\nexport default function FormElement({\n children,\n className = null,\n onSubmit = null,\n ...rest\n}: Props) {\n const dataContext = React.useContext(Context)\n\n /**\n * Set to true,\n * this way we prevent \"handleSubmit\" to be called twice when the SubmitButton is pressed.\n */\n dataContext._isInsideFormElement = true\n\n return (\n <Space\n element=\"form\"\n className={classnames('dnb-forms-form', className)}\n onSubmit={onSubmitHandler}\n {...rest}\n >\n {children}\n </Space>\n )\n\n function onSubmitHandler(event: React.SyntheticEvent<HTMLFormElement>) {\n event?.preventDefault()\n\n const formElement = event.target as HTMLFormElement\n dataContext?.handleSubmit?.({ formElement })\n\n if (typeof onSubmit === 'function') {\n onSubmit(event)\n }\n }\n}\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,OAAO,MAAM,2BAA2B;AAC/C,OAAOC,KAAK,MAAM,oCAAoC;AACtD,OAAOC,UAAU,MAAM,YAAY;AAKnC,eAAe,SAASC,WAAWA,CAAAC,IAAA,EAKzB;EAAA,IAL0B;MAClCC,QAAQ;MACRC,SAAS,GAAG,IAAI;MAChBC,QAAQ,GAAG;IAEN,CAAC,GAAAH,IAAA;IADHI,IAAI,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA;EAEP,MAAMC,WAAW,GAAGZ,KAAK,CAACa,UAAU,CAACZ,OAAO,CAAC;EAM7CW,WAAW,CAACE,oBAAoB,GAAG,IAAI;EAEvC,OACEd,KAAA,CAAAe,aAAA,CAACb,KAAK,EAAAc,QAAA;IACJC,OAAO,EAAC,MAAM;IACdV,SAAS,EAAEJ,UAAU,CAAC,gBAAgB,EAAEI,SAAS,CAAE;IACnDC,QAAQ,EAAEU;EAAgB,GACtBT,IAAI,GAEPH,QACI,CAAC;EAGV,SAASY,eAAeA,CAACC,KAA4C,EAAE;IAAA,IAAAC,qBAAA;IACrED,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,cAAc,CAAC,CAAC;IAEvB,MAAMC,WAAW,GAAGH,KAAK,CAACI,MAAyB;IACnDX,WAAW,aAAXA,WAAW,wBAAAQ,qBAAA,GAAXR,WAAW,CAAEY,YAAY,cAAAJ,qBAAA,uBAAzBA,qBAAA,CAAAK,IAAA,CAAAb,WAAW,EAAiB;MAAEU;IAAY,CAAC,CAAC;IAE5C,IAAI,OAAOd,QAAQ,KAAK,UAAU,EAAE;MAClCA,QAAQ,CAACW,KAAK,CAAC;IACjB;EACF;AACF"}
1
+ {"version":3,"file":"Element.js","names":["React","Context","Space","classnames","FormElement","_ref","children","className","onSubmit","rest","_objectWithoutProperties","_excluded","dataContext","useContext","isInsideFormElement","createElement","_extends","element","onSubmitHandler","event","_dataContext$handleSu","preventDefault","formElement","target","handleSubmit","call"],"sources":["../../../../../../src/extensions/forms/Form/Element/Element.tsx"],"sourcesContent":["import React from 'react'\nimport Context from '../../DataContext/Context'\nimport Space from '../../../../components/space/Space'\nimport classnames from 'classnames'\nimport type { SpacingProps } from '../../../../shared/types'\n\nexport type Props = React.HTMLAttributes<HTMLFormElement> & SpacingProps\n\nexport default function FormElement({\n children,\n className = null,\n onSubmit = null,\n ...rest\n}: Props) {\n const dataContext = React.useContext(Context)\n\n /**\n * Set to true,\n * this way we prevent \"handleSubmit\" to be called twice when the SubmitButton is pressed.\n */\n dataContext.isInsideFormElement = true\n\n return (\n <Space\n element=\"form\"\n className={classnames('dnb-forms-form', className)}\n onSubmit={onSubmitHandler}\n {...rest}\n >\n {children}\n </Space>\n )\n\n function onSubmitHandler(event: React.SyntheticEvent<HTMLFormElement>) {\n event?.preventDefault()\n\n const formElement = event.target as HTMLFormElement\n dataContext?.handleSubmit?.({ formElement })\n\n if (typeof onSubmit === 'function') {\n onSubmit(event)\n }\n }\n}\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,OAAO,MAAM,2BAA2B;AAC/C,OAAOC,KAAK,MAAM,oCAAoC;AACtD,OAAOC,UAAU,MAAM,YAAY;AAKnC,eAAe,SAASC,WAAWA,CAAAC,IAAA,EAKzB;EAAA,IAL0B;MAClCC,QAAQ;MACRC,SAAS,GAAG,IAAI;MAChBC,QAAQ,GAAG;IAEN,CAAC,GAAAH,IAAA;IADHI,IAAI,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA;EAEP,MAAMC,WAAW,GAAGZ,KAAK,CAACa,UAAU,CAACZ,OAAO,CAAC;EAM7CW,WAAW,CAACE,mBAAmB,GAAG,IAAI;EAEtC,OACEd,KAAA,CAAAe,aAAA,CAACb,KAAK,EAAAc,QAAA;IACJC,OAAO,EAAC,MAAM;IACdV,SAAS,EAAEJ,UAAU,CAAC,gBAAgB,EAAEI,SAAS,CAAE;IACnDC,QAAQ,EAAEU;EAAgB,GACtBT,IAAI,GAEPH,QACI,CAAC;EAGV,SAASY,eAAeA,CAACC,KAA4C,EAAE;IAAA,IAAAC,qBAAA;IACrED,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,cAAc,CAAC,CAAC;IAEvB,MAAMC,WAAW,GAAGH,KAAK,CAACI,MAAyB;IACnDX,WAAW,aAAXA,WAAW,wBAAAQ,qBAAA,GAAXR,WAAW,CAAEY,YAAY,cAAAJ,qBAAA,uBAAzBA,qBAAA,CAAAK,IAAA,CAAAb,WAAW,EAAiB;MAAEU;IAAY,CAAC,CAAC;IAE5C,IAAI,OAAOd,QAAQ,KAAK,UAAU,EAAE;MAClCA,QAAQ,CAACW,KAAK,CAAC;IACjB;EACF;AACF"}
@@ -1,15 +1,29 @@
1
1
  import React from 'react';
2
2
  import { Props as DataContextProps } from '../../DataContext/Provider';
3
- import { UseFieldProps } from '../../types';
4
3
  import { FormStatusProps } from '../../../../components/FormStatus';
5
4
  import { ContextProps } from '../../../../shared/Context';
6
- export type FieldPropsProps = UseFieldProps & {
5
+ import type { FieldProps, Path } from '../../types';
6
+ export type FieldPropsProps = FieldProps & {
7
7
  children: React.ReactNode;
8
+ /**
9
+ * Locale to use for all nested Eufemia components
10
+ */
11
+ locale?: DataContextProps<unknown>['locale'];
12
+ /**
13
+ * Provide your own translations. Use the same format as defined in the translation files
14
+ */
15
+ translations?: DataContextProps<unknown>['translations'];
16
+ /** For internal use only */
17
+ overwriteProps?: {
18
+ [key: Path]: FieldProps;
19
+ };
20
+ /** For internal use only */
21
+ deep?: boolean;
22
+ /** For internal use only */
8
23
  formElement?: ContextProps['formElement'];
24
+ /** For internal use only */
9
25
  FormStatus?: {
10
26
  globalStatus: FormStatusProps;
11
27
  };
12
- locale?: DataContextProps<unknown>['locale'];
13
- translations?: DataContextProps<unknown>['translations'];
14
28
  };
15
- export default function FieldProps(props: FieldPropsProps): import("react/jsx-runtime").JSX.Element;
29
+ export default function FieldPropsProvider(props: FieldPropsProps): import("react/jsx-runtime").JSX.Element;
@@ -1,33 +1,40 @@
1
1
  "use client";
2
2
 
3
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- const _excluded = ["children", "formElement", "FormStatus"],
5
- _excluded2 = ["locale", "translations"];
6
- import React, { useContext, useRef } from 'react';
5
+ const _excluded = ["children", "formElement", "FormStatus", "overwriteProps", "deep"];
6
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
+ import React, { useCallback, useContext, useMemo, useRef } from 'react';
7
9
  import DataContext from '../../DataContext/Context';
8
10
  import { assignPropsWithContext } from '../../../../shared/component-helper';
9
11
  import FieldPropsContext from './FieldPropsContext';
10
12
  import SharedProvider from '../../../../shared/Provider';
11
- export default function FieldProps(props) {
13
+ export default function FieldPropsProvider(props) {
12
14
  const {
13
15
  children,
14
16
  formElement,
15
- FormStatus
17
+ FormStatus,
18
+ overwriteProps,
19
+ deep
16
20
  } = props,
17
- rest = _objectWithoutProperties(props, _excluded);
21
+ restProps = _objectWithoutProperties(props, _excluded);
18
22
  const nestedContext = useContext(FieldPropsContext);
19
23
  const dataContextRef = useRef();
20
24
  dataContextRef.current = useContext(DataContext);
21
25
  const sharedProviderProps = {};
22
- const _ref = Object.assign((nestedContext === null || nestedContext === void 0 ? void 0 : nestedContext.inheritedContext) || {}, rest),
23
- {
24
- locale,
25
- translations
26
- } = _ref,
27
- restOfRest = _objectWithoutProperties(_ref, _excluded2);
28
- if (typeof restOfRest.disabled === 'boolean') {
26
+ const {
27
+ locale,
28
+ translations
29
+ } = useMemo(() => {
30
+ return _objectSpread(_objectSpread({}, restProps), removeUndefined(nestedContext === null || nestedContext === void 0 ? void 0 : nestedContext.inheritedProps));
31
+ }, [nestedContext === null || nestedContext === void 0 ? void 0 : nestedContext.inheritedProps, restProps]);
32
+ const nestedFieldProps = useMemo(() => {
33
+ return Object.assign((nestedContext === null || nestedContext === void 0 ? void 0 : nestedContext.inheritedProps) || {}, restProps);
34
+ }, [nestedContext === null || nestedContext === void 0 ? void 0 : nestedContext.inheritedProps, restProps]);
35
+ if (typeof nestedFieldProps.disabled === 'boolean') {
29
36
  sharedProviderProps.formElement = {
30
- disabled: restOfRest.disabled
37
+ disabled: nestedFieldProps.disabled
31
38
  };
32
39
  }
33
40
  if (formElement) {
@@ -42,18 +49,30 @@ export default function FieldProps(props) {
42
49
  if (translations) {
43
50
  sharedProviderProps.translations = wrapFormsTranslations(translations);
44
51
  }
45
- function extend(fieldProps) {
52
+ const extend = useCallback(fieldProps => {
53
+ var _fieldProps$path, _fieldProps$path$spli, _nestedContext$inheri;
46
54
  const {
47
- required
55
+ required: requiredByContext
48
56
  } = dataContextRef.current;
49
- return nestedContext.extend(assignPropsWithContext(fieldProps, {
50
- required
51
- }, restOfRest));
52
- }
57
+ const key = fieldProps === null || fieldProps === void 0 ? void 0 : (_fieldProps$path = fieldProps.path) === null || _fieldProps$path === void 0 ? void 0 : (_fieldProps$path$spli = _fieldProps$path.split('/')) === null || _fieldProps$path$spli === void 0 ? void 0 : _fieldProps$path$spli.pop();
58
+ const overwrite = overwriteProps === null || overwriteProps === void 0 ? void 0 : overwriteProps[key];
59
+ if (overwrite && fieldProps !== null && fieldProps !== void 0 && fieldProps.schema) {
60
+ Object.keys(fieldProps.schema).forEach(key => {
61
+ if (overwrite !== null && overwrite !== void 0 && overwrite[key]) {
62
+ fieldProps.schema[key] = overwrite[key];
63
+ }
64
+ });
65
+ }
66
+ const value = assignPropsWithContext(overwrite ? _objectSpread(_objectSpread({}, fieldProps), overwrite) : fieldProps, {
67
+ required: requiredByContext !== null && requiredByContext !== void 0 ? requiredByContext : nestedContext === null || nestedContext === void 0 ? void 0 : (_nestedContext$inheri = nestedContext.inheritedContext) === null || _nestedContext$inheri === void 0 ? void 0 : _nestedContext$inheri.required
68
+ }, nestedFieldProps);
69
+ return deep ? nestedContext.extend(value) : value;
70
+ }, [deep, nestedContext, overwriteProps, nestedFieldProps]);
53
71
  return React.createElement(FieldPropsContext.Provider, {
54
72
  value: {
55
73
  extend,
56
- inheritedContext: rest
74
+ inheritedProps: restProps,
75
+ inheritedContext: nestedFieldProps
57
76
  }
58
77
  }, React.createElement(SharedProvider, sharedProviderProps, children));
59
78
  }
@@ -75,4 +94,13 @@ function wrapFormsTranslations(translations) {
75
94
  }
76
95
  return result;
77
96
  }
97
+ function removeUndefined(obj = {}) {
98
+ const result = {};
99
+ for (const key in obj) {
100
+ if (obj[key] !== undefined) {
101
+ result[key] = obj[key];
102
+ }
103
+ }
104
+ return result;
105
+ }
78
106
  //# sourceMappingURL=FieldProps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldProps.js","names":["React","useContext","useRef","DataContext","assignPropsWithContext","FieldPropsContext","SharedProvider","FieldProps","props","children","formElement","FormStatus","rest","_objectWithoutProperties","_excluded","nestedContext","dataContextRef","current","sharedProviderProps","_ref","Object","assign","inheritedContext","locale","translations","restOfRest","_excluded2","disabled","wrapFormsTranslations","extend","fieldProps","required","createElement","Provider","value","result","trObj","newObj","Forms","key","newKeyObj","subKey"],"sources":["../../../../../../src/extensions/forms/Form/FieldProps/FieldProps.tsx"],"sourcesContent":["import React, { useContext, useRef } from 'react'\nimport DataContext, { ContextState } from '../../DataContext/Context'\nimport { Props as DataContextProps } from '../../DataContext/Provider'\nimport { UseFieldProps } from '../../types'\nimport { FormStatusProps } from '../../../../components/FormStatus'\nimport { assignPropsWithContext } from '../../../../shared/component-helper'\nimport FieldPropsContext from './FieldPropsContext'\nimport SharedProvider from '../../../../shared/Provider'\nimport { ContextProps } from '../../../../shared/Context'\n\nexport type FieldPropsProps = UseFieldProps & {\n children: React.ReactNode\n formElement?: ContextProps['formElement']\n FormStatus?: { globalStatus: FormStatusProps }\n locale?: DataContextProps<unknown>['locale']\n translations?: DataContextProps<unknown>['translations']\n}\n\nexport default function FieldProps(props: FieldPropsProps) {\n const { children, formElement, FormStatus, ...rest } = props\n\n const nestedContext = useContext(FieldPropsContext)\n const dataContextRef = useRef<ContextState>()\n dataContextRef.current = useContext<ContextState>(DataContext)\n\n const sharedProviderProps: ContextProps = {}\n\n // Extract props to be used in the shared global context\n const { locale, translations, ...restOfRest } = Object.assign(\n nestedContext?.inheritedContext || {},\n rest\n ) as ContextProps & {\n disabled?: boolean\n }\n if (typeof restOfRest.disabled === 'boolean') {\n sharedProviderProps.formElement = { disabled: restOfRest.disabled }\n }\n if (formElement) {\n sharedProviderProps.formElement = formElement\n }\n if (FormStatus) {\n sharedProviderProps.FormStatus = FormStatus\n }\n if (locale) {\n sharedProviderProps.locale = locale\n }\n if (translations) {\n sharedProviderProps.translations = wrapFormsTranslations(translations)\n }\n\n function extend<T>(fieldProps: T) {\n // Extract props from data context to be used in fields\n const { required } = dataContextRef.current\n\n return nestedContext.extend(\n assignPropsWithContext(fieldProps, { required }, restOfRest)\n ) as T\n }\n\n return (\n <FieldPropsContext.Provider value={{ extend, inheritedContext: rest }}>\n <SharedProvider {...sharedProviderProps}>{children}</SharedProvider>\n </FieldPropsContext.Provider>\n )\n}\n\nfunction wrapFormsTranslations(\n translations: ContextProps['translations']\n) {\n const result = {}\n const trObj = translations as Record<\n ContextProps['locale'],\n Record<string, Record<string, string>>\n >\n\n for (const locale in trObj) {\n const newObj: Record<\n 'Forms',\n Record<string, Record<string, string>>\n > = {\n Forms: {},\n }\n\n for (const key in trObj[locale]) {\n const newKeyObj: Record<string, string> = {}\n\n for (const subKey in trObj[locale][key]) {\n newKeyObj[subKey] = trObj[locale][key][subKey]\n }\n\n newObj.Forms[key] = newKeyObj\n }\n\n result[locale] = newObj\n }\n\n return result\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"FieldProps.js","names":["React","useCallback","useContext","useMemo","useRef","DataContext","assignPropsWithContext","FieldPropsContext","SharedProvider","FieldPropsProvider","props","children","formElement","FormStatus","overwriteProps","deep","restProps","_objectWithoutProperties","_excluded","nestedContext","dataContextRef","current","sharedProviderProps","locale","translations","_objectSpread","removeUndefined","inheritedProps","nestedFieldProps","Object","assign","disabled","wrapFormsTranslations","extend","fieldProps","_fieldProps$path","_fieldProps$path$spli","_nestedContext$inheri","required","requiredByContext","key","path","split","pop","overwrite","schema","keys","forEach","value","inheritedContext","createElement","Provider","result","trObj","newObj","Forms","newKeyObj","subKey","obj","undefined"],"sources":["../../../../../../src/extensions/forms/Form/FieldProps/FieldProps.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo, useRef } from 'react'\nimport DataContext, { ContextState } from '../../DataContext/Context'\nimport { Props as DataContextProps } from '../../DataContext/Provider'\nimport { FormStatusProps } from '../../../../components/FormStatus'\nimport { assignPropsWithContext } from '../../../../shared/component-helper'\nimport FieldPropsContext from './FieldPropsContext'\nimport SharedProvider from '../../../../shared/Provider'\nimport { ContextProps } from '../../../../shared/Context'\nimport type { FieldProps, Path, UseFieldProps } from '../../types'\n\nexport type FieldPropsProps = FieldProps & {\n children: React.ReactNode\n\n /**\n * Locale to use for all nested Eufemia components\n */\n locale?: DataContextProps<unknown>['locale']\n\n /**\n * Provide your own translations. Use the same format as defined in the translation files\n */\n translations?: DataContextProps<unknown>['translations']\n\n /** For internal use only */\n overwriteProps?: {\n [key: Path]: FieldProps\n }\n\n /** For internal use only */\n deep?: boolean\n\n /** For internal use only */\n formElement?: ContextProps['formElement']\n\n /** For internal use only */\n FormStatus?: { globalStatus: FormStatusProps }\n}\n\nexport default function FieldPropsProvider(props: FieldPropsProps) {\n const {\n children,\n formElement,\n FormStatus,\n overwriteProps,\n deep,\n ...restProps\n } = props\n\n const nestedContext = useContext(FieldPropsContext)\n const dataContextRef = useRef<ContextState>()\n dataContextRef.current = useContext<ContextState>(DataContext)\n\n const sharedProviderProps: ContextProps = {}\n\n // Extract props to be used in the shared global context\n const { locale, translations } = useMemo(() => {\n return {\n ...restProps,\n ...removeUndefined(nestedContext?.inheritedProps),\n } as ContextProps\n }, [nestedContext?.inheritedProps, restProps])\n\n const nestedFieldProps = useMemo(() => {\n return Object.assign(\n nestedContext?.inheritedProps || {},\n restProps\n ) as UseFieldProps\n }, [nestedContext?.inheritedProps, restProps])\n\n if (typeof nestedFieldProps.disabled === 'boolean') {\n sharedProviderProps.formElement = {\n disabled: nestedFieldProps.disabled,\n }\n }\n if (formElement) {\n sharedProviderProps.formElement = formElement\n }\n if (FormStatus) {\n sharedProviderProps.FormStatus = FormStatus\n }\n if (locale) {\n sharedProviderProps.locale = locale\n }\n if (translations) {\n sharedProviderProps.translations = wrapFormsTranslations(translations)\n }\n\n const extend = useCallback(\n <T extends FieldProps>(fieldProps: T) => {\n // Extract props from data context to be used in fields\n const { required: requiredByContext } = dataContextRef.current\n\n // Extract props from overwriteProps to be used in fields\n const key = fieldProps?.path?.split('/')?.pop()\n const overwrite = overwriteProps?.[key]\n\n // Overwrite given schema props\n if (overwrite && fieldProps?.schema) {\n Object.keys(fieldProps.schema).forEach((key) => {\n if (overwrite?.[key]) {\n fieldProps.schema[key] = overwrite[key]\n }\n })\n }\n\n const value = assignPropsWithContext(\n overwrite ? { ...fieldProps, ...overwrite } : fieldProps,\n {\n required:\n requiredByContext ?? nestedContext?.inheritedContext?.required,\n },\n nestedFieldProps as Record<string, unknown>\n )\n\n return (deep ? nestedContext.extend(value) : value) as T\n },\n [deep, nestedContext, overwriteProps, nestedFieldProps]\n )\n\n return (\n <FieldPropsContext.Provider\n value={{\n extend,\n inheritedProps: restProps,\n inheritedContext: nestedFieldProps,\n }}\n >\n <SharedProvider {...sharedProviderProps}>{children}</SharedProvider>\n </FieldPropsContext.Provider>\n )\n}\n\nfunction wrapFormsTranslations(\n translations: ContextProps['translations']\n) {\n const result = {}\n const trObj = translations as Record<\n ContextProps['locale'],\n Record<string, Record<string, string>>\n >\n\n for (const locale in trObj) {\n const newObj: Record<\n 'Forms',\n Record<string, Record<string, string>>\n > = {\n Forms: {},\n }\n\n for (const key in trObj[locale]) {\n const newKeyObj: Record<string, string> = {}\n\n for (const subKey in trObj[locale][key]) {\n newKeyObj[subKey] = trObj[locale][key][subKey]\n }\n\n newObj.Forms[key] = newKeyObj\n }\n\n result[locale] = newObj\n }\n\n return result\n}\n\nfunction removeUndefined(obj = {}) {\n const result = {}\n for (const key in obj) {\n if (obj[key] !== undefined) {\n result[key] = obj[key]\n }\n }\n return result\n}\n"],"mappings":"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"}
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import { UseFieldProps } from '../../types';
3
3
  export type FieldPropsContextProps = {
4
4
  extend: <T = UseFieldProps>(props: T) => T;
5
+ inheritedProps?: UseFieldProps;
5
6
  inheritedContext?: UseFieldProps;
6
7
  };
7
8
  declare const FieldPropsContext: React.Context<FieldPropsContextProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"FieldPropsContext.js","names":["React","extend","props","FieldPropsContext","createContext"],"sources":["../../../../../../src/extensions/forms/Form/FieldProps/FieldPropsContext.ts"],"sourcesContent":["import React from 'react'\nimport { UseFieldProps } from '../../types'\n\nexport type FieldPropsContextProps = {\n extend: <T = UseFieldProps>(props: T) => T\n inheritedContext?: UseFieldProps\n}\n\nconst extend: FieldPropsContextProps['extend'] = (props) => props\nconst FieldPropsContext = React.createContext<FieldPropsContextProps>({\n extend,\n})\n\nexport default FieldPropsContext\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAQzB,MAAMC,MAAwC,GAAIC,KAAK,IAAKA,KAAK;AACjE,MAAMC,iBAAiB,GAAGH,KAAK,CAACI,aAAa,CAAyB;EACpEH;AACF,CAAC,CAAC;AAEF,eAAeE,iBAAiB"}
1
+ {"version":3,"file":"FieldPropsContext.js","names":["React","extend","props","FieldPropsContext","createContext"],"sources":["../../../../../../src/extensions/forms/Form/FieldProps/FieldPropsContext.ts"],"sourcesContent":["import React from 'react'\nimport { UseFieldProps } from '../../types'\n\nexport type FieldPropsContextProps = {\n extend: <T = UseFieldProps>(props: T) => T\n inheritedProps?: UseFieldProps\n inheritedContext?: UseFieldProps\n}\n\nconst extend: FieldPropsContextProps['extend'] = (props) => props\nconst FieldPropsContext = React.createContext<FieldPropsContextProps>({\n extend,\n})\n\nexport default FieldPropsContext\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AASzB,MAAMC,MAAwC,GAAIC,KAAK,IAAKA,KAAK;AACjE,MAAMC,iBAAiB,GAAGH,KAAK,CAACI,aAAa,CAAyB;EACpEH;AACF,CAAC,CAAC;AAEF,eAAeE,iBAAiB"}
@@ -0,0 +1,44 @@
1
+ import React from 'react';
2
+ import { SectionContextState } from './SectionContext';
3
+ import type { Props as DataContextProps } from '../../DataContext/Provider';
4
+ import type { FieldSectionProps, Path, FieldProps } from '../../types';
5
+ export type OverwritePropsDefaults = {
6
+ [key: Path]: (FieldProps & FieldSectionProps) | OverwritePropsDefaults;
7
+ };
8
+ export type SectionProps<overwriteProps = OverwritePropsDefaults> = {
9
+ /**
10
+ * Path to the section.
11
+ * When defined, fields inside the section will get this path as a prefix of their own path.
12
+ */
13
+ path?: Path;
14
+ /**
15
+ * Overwrite field props for the section.
16
+ */
17
+ overwriteProps?: overwriteProps | OverwritePropsDefaults;
18
+ /**
19
+ * Provide your own translations. Use the same format as defined in the translation files
20
+ */
21
+ translations?: DataContextProps<unknown>['translations'];
22
+ /**
23
+ * Makes all fields inside it required.
24
+ */
25
+ required?: boolean;
26
+ /**
27
+ * Callback when fields in the section are changed.
28
+ */
29
+ onChange?: (data: unknown) => void;
30
+ /**
31
+ * Only for internal use and undocumented for now.
32
+ * Prioritize error techniques for the section.
33
+ * Can be `fieldSchema`, `sectionSchema` or `contextSchema.
34
+ */
35
+ errorPrioritization?: SectionContextState['errorPrioritization'];
36
+ };
37
+ export type LocalProps = SectionProps & {
38
+ children: React.ReactNode;
39
+ };
40
+ declare function SectionComponent(props: LocalProps): import("react/jsx-runtime").JSX.Element;
41
+ declare namespace SectionComponent {
42
+ var _supportsSpacingProps: string;
43
+ }
44
+ export default SectionComponent;
@@ -0,0 +1,56 @@
1
+ "use client";
2
+
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
+ import React, { useCallback, useContext, useMemo, useRef } from 'react';
8
+ import pointer from 'json-pointer';
9
+ import SectionContext from './SectionContext';
10
+ import FieldPropsProvider from '../FieldProps';
11
+ function SectionComponent(props) {
12
+ var _nestedProps$overwrit;
13
+ const {
14
+ path,
15
+ overwriteProps,
16
+ translations,
17
+ required,
18
+ onChange,
19
+ errorPrioritization = ['contextSchema'],
20
+ children
21
+ } = props;
22
+ if (path && !path.startsWith('/')) {
23
+ throw new Error(`path="${path}" must start with a slash`);
24
+ }
25
+ const {
26
+ path: nestedPath,
27
+ handleChange: handleNestedChange,
28
+ props: nestedProps
29
+ } = useContext(SectionContext) || {};
30
+ const dataRef = useRef({});
31
+ const handleChange = useCallback((path, value) => {
32
+ pointer.set(dataRef.current, path, value);
33
+ onChange === null || onChange === void 0 ? void 0 : onChange(dataRef.current);
34
+ handleNestedChange === null || handleNestedChange === void 0 ? void 0 : handleNestedChange(path, value);
35
+ }, [handleNestedChange, onChange]);
36
+ const identifier = useMemo(() => {
37
+ return `${nestedPath && nestedPath !== '/' ? nestedPath : ''}${path || ''}`;
38
+ }, [path, nestedPath]);
39
+ const fieldProps = required ? {
40
+ required: true
41
+ } : undefined;
42
+ return React.createElement(SectionContext.Provider, {
43
+ value: {
44
+ path: identifier,
45
+ errorPrioritization,
46
+ handleChange,
47
+ props
48
+ }
49
+ }, React.createElement(FieldPropsProvider, _extends({
50
+ overwriteProps: _objectSpread(_objectSpread({}, overwriteProps), nestedProps === null || nestedProps === void 0 ? void 0 : (_nestedProps$overwrit = nestedProps.overwriteProps) === null || _nestedProps$overwrit === void 0 ? void 0 : _nestedProps$overwrit[path.substring(1)]),
51
+ translations: translations
52
+ }, fieldProps), children));
53
+ }
54
+ SectionComponent._supportsSpacingProps = 'children';
55
+ export default SectionComponent;
56
+ //# sourceMappingURL=Section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Section.js","names":["React","useCallback","useContext","useMemo","useRef","pointer","SectionContext","FieldPropsProvider","SectionComponent","props","_nestedProps$overwrit","path","overwriteProps","translations","required","onChange","errorPrioritization","children","startsWith","Error","nestedPath","handleChange","handleNestedChange","nestedProps","dataRef","value","set","current","identifier","fieldProps","undefined","createElement","Provider","_extends","_objectSpread","substring","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Form/Section/Section.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo, useRef } from 'react'\nimport pointer from 'json-pointer'\nimport SectionContext, { SectionContextState } from './SectionContext'\nimport FieldPropsProvider from '../FieldProps'\n\nimport type { Props as DataContextProps } from '../../DataContext/Provider'\nimport type { FieldSectionProps, Path, FieldProps } from '../../types'\n\nexport type OverwritePropsDefaults = {\n [key: Path]: (FieldProps & FieldSectionProps) | OverwritePropsDefaults\n}\nexport type SectionProps<overwriteProps = OverwritePropsDefaults> = {\n /**\n * Path to the section.\n * When defined, fields inside the section will get this path as a prefix of their own path.\n */\n path?: Path\n\n /**\n * Overwrite field props for the section.\n */\n overwriteProps?: overwriteProps | OverwritePropsDefaults\n\n /**\n * Provide your own translations. Use the same format as defined in the translation files\n */\n translations?: DataContextProps<unknown>['translations']\n\n /**\n * Makes all fields inside it required.\n */\n required?: boolean\n\n /**\n * Callback when fields in the section are changed.\n */\n onChange?: (data: unknown) => void\n\n /**\n * Only for internal use and undocumented for now.\n * Prioritize error techniques for the section.\n * Can be `fieldSchema`, `sectionSchema` or `contextSchema.\n */\n errorPrioritization?: SectionContextState['errorPrioritization']\n}\n\nexport type LocalProps = SectionProps & {\n children: React.ReactNode\n}\n\nfunction SectionComponent(props: LocalProps) {\n const {\n path,\n overwriteProps,\n translations,\n required,\n onChange,\n errorPrioritization = ['contextSchema'],\n children,\n } = props\n\n if (path && !path.startsWith('/')) {\n throw new Error(`path=\"${path}\" must start with a slash`)\n }\n\n const {\n path: nestedPath,\n handleChange: handleNestedChange,\n props: nestedProps,\n } = useContext(SectionContext) || {}\n\n const dataRef = useRef<unknown>({})\n const handleChange = useCallback(\n (path: Path, value: unknown) => {\n pointer.set(dataRef.current, path, value)\n onChange?.(dataRef.current)\n handleNestedChange?.(path, value)\n },\n [handleNestedChange, onChange]\n )\n\n const identifier = useMemo(() => {\n return `${nestedPath && nestedPath !== '/' ? nestedPath : ''}${\n path || ''\n }`\n }, [path, nestedPath])\n const fieldProps = required ? { required: true } : undefined\n\n return (\n <SectionContext.Provider\n value={{\n path: identifier,\n errorPrioritization,\n handleChange,\n props,\n }}\n >\n <FieldPropsProvider\n overwriteProps={{\n ...overwriteProps,\n ...(nestedProps?.overwriteProps?.[\n path.substring(1)\n ] as OverwritePropsDefaults),\n }}\n translations={translations}\n {...fieldProps}\n >\n {children}\n </FieldPropsProvider>\n </SectionContext.Provider>\n )\n}\n\nSectionComponent._supportsSpacingProps = 'children'\nexport default SectionComponent\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,EAAEC,OAAO,EAAEC,MAAM,QAAQ,OAAO;AACvE,OAAOC,OAAO,MAAM,cAAc;AAClC,OAAOC,cAAc,MAA+B,kBAAkB;AACtE,OAAOC,kBAAkB,MAAM,eAAe;AA+C9C,SAASC,gBAAgBA,CAACC,KAAiB,EAAE;EAAA,IAAAC,qBAAA;EAC3C,MAAM;IACJC,IAAI;IACJC,cAAc;IACdC,YAAY;IACZC,QAAQ;IACRC,QAAQ;IACRC,mBAAmB,GAAG,CAAC,eAAe,CAAC;IACvCC;EACF,CAAC,GAAGR,KAAK;EAET,IAAIE,IAAI,IAAI,CAACA,IAAI,CAACO,UAAU,CAAC,GAAG,CAAC,EAAE;IACjC,MAAM,IAAIC,KAAK,CAAE,SAAQR,IAAK,2BAA0B,CAAC;EAC3D;EAEA,MAAM;IACJA,IAAI,EAAES,UAAU;IAChBC,YAAY,EAAEC,kBAAkB;IAChCb,KAAK,EAAEc;EACT,CAAC,GAAGrB,UAAU,CAACI,cAAc,CAAC,IAAI,CAAC,CAAC;EAEpC,MAAMkB,OAAO,GAAGpB,MAAM,CAAU,CAAC,CAAC,CAAC;EACnC,MAAMiB,YAAY,GAAGpB,WAAW,CAC9B,CAACU,IAAU,EAAEc,KAAc,KAAK;IAC9BpB,OAAO,CAACqB,GAAG,CAACF,OAAO,CAACG,OAAO,EAAEhB,IAAI,EAAEc,KAAK,CAAC;IACzCV,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAGS,OAAO,CAACG,OAAO,CAAC;IAC3BL,kBAAkB,aAAlBA,kBAAkB,uBAAlBA,kBAAkB,CAAGX,IAAI,EAAEc,KAAK,CAAC;EACnC,CAAC,EACD,CAACH,kBAAkB,EAAEP,QAAQ,CAC/B,CAAC;EAED,MAAMa,UAAU,GAAGzB,OAAO,CAAC,MAAM;IAC/B,OAAQ,GAAEiB,UAAU,IAAIA,UAAU,KAAK,GAAG,GAAGA,UAAU,GAAG,EAAG,GAC3DT,IAAI,IAAI,EACT,EAAC;EACJ,CAAC,EAAE,CAACA,IAAI,EAAES,UAAU,CAAC,CAAC;EACtB,MAAMS,UAAU,GAAGf,QAAQ,GAAG;IAAEA,QAAQ,EAAE;EAAK,CAAC,GAAGgB,SAAS;EAE5D,OACE9B,KAAA,CAAA+B,aAAA,CAACzB,cAAc,CAAC0B,QAAQ;IACtBP,KAAK,EAAE;MACLd,IAAI,EAAEiB,UAAU;MAChBZ,mBAAmB;MACnBK,YAAY;MACZZ;IACF;EAAE,GAEFT,KAAA,CAAA+B,aAAA,CAACxB,kBAAkB,EAAA0B,QAAA;IACjBrB,cAAc,EAAAsB,aAAA,CAAAA,aAAA,KACTtB,cAAc,GACbW,WAAW,aAAXA,WAAW,wBAAAb,qBAAA,GAAXa,WAAW,CAAEX,cAAc,cAAAF,qBAAA,uBAA3BA,qBAAA,CACFC,IAAI,CAACwB,SAAS,CAAC,CAAC,CAAC,CAClB,CACD;IACFtB,YAAY,EAAEA;EAAa,GACvBgB,UAAU,GAEbZ,QACiB,CACG,CAAC;AAE9B;AAEAT,gBAAgB,CAAC4B,qBAAqB,GAAG,UAAU;AACnD,eAAe5B,gBAAgB"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { Path } from '../../types';
3
+ import { SectionProps } from '.';
4
+ export interface SectionContextState {
5
+ path?: Path;
6
+ errorPrioritization?: Array<'fieldSchema' | 'sectionSchema' | 'contextSchema'>;
7
+ handleChange?: (path: Path, data: unknown) => void;
8
+ props?: SectionProps;
9
+ }
10
+ declare const SectionContext: React.Context<SectionContextState>;
11
+ export default SectionContext;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ const SectionContext = React.createContext(undefined);
3
+ export default SectionContext;
4
+ //# sourceMappingURL=SectionContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SectionContext.js","names":["React","SectionContext","createContext","undefined"],"sources":["../../../../../../src/extensions/forms/Form/Section/SectionContext.tsx"],"sourcesContent":["import React from 'react'\nimport { Path } from '../../types'\nimport { SectionProps } from '.'\n\nexport interface SectionContextState {\n path?: Path\n errorPrioritization?: Array<\n 'fieldSchema' | 'sectionSchema' | 'contextSchema'\n >\n handleChange?: (path: Path, data: unknown) => void\n props?: SectionProps\n}\n\nconst SectionContext = React.createContext<\n SectionContextState | undefined\n>(undefined)\n\nexport default SectionContext\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAazB,MAAMC,cAAc,GAAGD,KAAK,CAACE,aAAa,CAExCC,SAAS,CAAC;AAEZ,eAAeF,cAAc"}
@@ -0,0 +1,3 @@
1
+ import { PropertiesTableProps } from '../../../../shared/types';
2
+ export declare const SectionProperties: PropertiesTableProps;
3
+ export declare const SectionEvents: PropertiesTableProps;
@@ -0,0 +1,35 @@
1
+ export const SectionProperties = {
2
+ path: {
3
+ doc: 'A path (JSON Pointer) to the array to iterate over.',
4
+ type: 'string',
5
+ status: 'optional'
6
+ },
7
+ overwriteProps: {
8
+ doc: 'Overwrite field props for the section.',
9
+ type: 'object',
10
+ status: 'optional'
11
+ },
12
+ translation: {
13
+ doc: "Provide a translation for the section (e.g. `{'nb-NO': { MySection: { MyField: { label: 'Custom' }}}}`).",
14
+ type: 'object',
15
+ status: 'optional'
16
+ },
17
+ required: {
18
+ doc: 'Makes all fields inside it required.',
19
+ type: 'boolean',
20
+ status: 'optional'
21
+ },
22
+ children: {
23
+ doc: 'All the fields and values inside the section.',
24
+ type: 'React.Node',
25
+ status: 'optional'
26
+ }
27
+ };
28
+ export const SectionEvents = {
29
+ onChange: {
30
+ doc: 'Will be called when a value of a field was changed by the user, with the data set (including the changed value) as argument.',
31
+ type: 'function',
32
+ status: 'optional'
33
+ }
34
+ };
35
+ //# sourceMappingURL=SectionDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SectionDocs.js","names":["SectionProperties","path","doc","type","status","overwriteProps","translation","required","children","SectionEvents","onChange"],"sources":["../../../../../../src/extensions/forms/Form/Section/SectionDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const SectionProperties: PropertiesTableProps = {\n path: {\n doc: 'A path (JSON Pointer) to the array to iterate over.',\n type: 'string',\n status: 'optional',\n },\n overwriteProps: {\n doc: 'Overwrite field props for the section.',\n type: 'object',\n status: 'optional',\n },\n translation: {\n doc: \"Provide a translation for the section (e.g. `{'nb-NO': { MySection: { MyField: { label: 'Custom' }}}}`).\",\n type: 'object',\n status: 'optional',\n },\n required: {\n doc: 'Makes all fields inside it required.',\n type: 'boolean',\n status: 'optional',\n },\n children: {\n doc: 'All the fields and values inside the section.',\n type: 'React.Node',\n status: 'optional',\n },\n}\n\nexport const SectionEvents: PropertiesTableProps = {\n onChange: {\n doc: 'Will be called when a value of a field was changed by the user, with the data set (including the changed value) as argument.',\n type: 'function',\n status: 'optional',\n },\n}\n"],"mappings":"AAEA,OAAO,MAAMA,iBAAuC,GAAG;EACrDC,IAAI,EAAE;IACJC,GAAG,EAAE,qDAAqD;IAC1DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,cAAc,EAAE;IACdH,GAAG,EAAE,wCAAwC;IAC7CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,WAAW,EAAE;IACXJ,GAAG,EAAE,0GAA0G;IAC/GC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,QAAQ,EAAE;IACRL,GAAG,EAAE,sCAAsC;IAC3CC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDI,QAAQ,EAAE;IACRN,GAAG,EAAE,+CAA+C;IACpDC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV;AACF,CAAC;AAED,OAAO,MAAMK,aAAmC,GAAG;EACjDC,QAAQ,EAAE;IACRR,GAAG,EAAE,8HAA8H;IACnIC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { default } from './Section';
2
+ export * from './Section';
@@ -0,0 +1,3 @@
1
+ export { default } from './Section';
2
+ export * from './Section';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default"],"sources":["../../../../../../src/extensions/forms/Form/Section/index.ts"],"sourcesContent":["export { default } from './Section'\nexport * from './Section'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,WAAW;AACnC,cAAc,WAAW"}
@@ -24,13 +24,13 @@ function SubmitButton(props) {
24
24
  const {
25
25
  formState,
26
26
  handleSubmit,
27
- _isInsideFormElement
27
+ isInsideFormElement
28
28
  } = useContext(DataContext) || {};
29
29
  const onClickHandler = useCallback(() => {
30
- if (!_isInsideFormElement) {
30
+ if (!isInsideFormElement) {
31
31
  handleSubmit === null || handleSubmit === void 0 ? void 0 : handleSubmit();
32
32
  }
33
- }, [_isInsideFormElement, handleSubmit]);
33
+ }, [isInsideFormElement, handleSubmit]);
34
34
  return React.createElement(Button, _extends({
35
35
  className: classnames('dnb-forms-submit-button', className),
36
36
  onClick: onClickHandler,
@@ -1 +1 @@
1
- {"version":3,"file":"SubmitButton.js","names":["React","useCallback","useContext","classnames","DataContext","Button","SubmitIndicator","useTranslation","send","SubmitButton","props","translations","variant","className","showIndicator","children","text","rest","_objectWithoutProperties","_excluded","content","sendText","formState","handleSubmit","_isInsideFormElement","onClickHandler","createElement","_extends","onClick","type","icon","state","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Form/SubmitButton/SubmitButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport type { ComponentProps } from '../../types'\nimport DataContext from '../../DataContext/Context'\nimport Button, { ButtonProps } from '../../../../components/button/Button'\nimport SubmitIndicator from '../SubmitIndicator'\nimport useTranslation from '../../hooks/useTranslation'\nimport { send } from '../../../../icons'\n\nexport type Props = {\n /**\n * Show the submit indicator\n */\n showIndicator?: boolean\n} & ComponentProps &\n Omit<ButtonProps, 'variant'> &\n Partial<React.HTMLAttributes<HTMLButtonElement | HTMLAnchorElement>> & {\n variant?: 'send'\n }\n\nfunction SubmitButton(props: Props) {\n const translations = useTranslation().SubmitButton\n\n const { variant, className, showIndicator, children, text, ...rest } =\n props\n\n const content =\n text ||\n children ||\n (variant === 'send' ? translations.sendText : translations.text)\n\n const { formState, handleSubmit, _isInsideFormElement } =\n useContext(DataContext) || {}\n\n const onClickHandler = useCallback(() => {\n if (!_isInsideFormElement) {\n handleSubmit?.()\n }\n }, [_isInsideFormElement, handleSubmit])\n\n return (\n <Button\n className={classnames('dnb-forms-submit-button', className)}\n onClick={onClickHandler}\n type=\"submit\"\n icon={variant === 'send' ? send : null}\n {...rest}\n >\n {content}\n\n <SubmitIndicator\n state={\n showIndicator ? 'pending' : formState // will be enabled in a follow-up PR\n }\n />\n </Button>\n )\n}\n\nSubmitButton._supportsSpacingProps = true\nexport default SubmitButton\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AAEnC,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,MAAM,MAAuB,sCAAsC;AAC1E,OAAOC,eAAe,MAAM,oBAAoB;AAChD,OAAOC,cAAc,MAAM,4BAA4B;AACvD,SAASC,IAAI,QAAQ,mBAAmB;AAaxC,SAASC,YAAYA,CAACC,KAAY,EAAE;EAClC,MAAMC,YAAY,GAAGJ,cAAc,CAAC,CAAC,CAACE,YAAY;EAElD,MAAM;MAAEG,OAAO;MAAEC,SAAS;MAAEC,aAAa;MAAEC,QAAQ;MAAEC;IAAc,CAAC,GAClEN,KAAK;IADuDO,IAAI,GAAAC,wBAAA,CAChER,KAAK,EAAAS,SAAA;EAEP,MAAMC,OAAO,GACXJ,IAAI,IACJD,QAAQ,KACPH,OAAO,KAAK,MAAM,GAAGD,YAAY,CAACU,QAAQ,GAAGV,YAAY,CAACK,IAAI,CAAC;EAElE,MAAM;IAAEM,SAAS;IAAEC,YAAY;IAAEC;EAAqB,CAAC,GACrDtB,UAAU,CAACE,WAAW,CAAC,IAAI,CAAC,CAAC;EAE/B,MAAMqB,cAAc,GAAGxB,WAAW,CAAC,MAAM;IACvC,IAAI,CAACuB,oBAAoB,EAAE;MACzBD,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAG,CAAC;IAClB;EACF,CAAC,EAAE,CAACC,oBAAoB,EAAED,YAAY,CAAC,CAAC;EAExC,OACEvB,KAAA,CAAA0B,aAAA,CAACrB,MAAM,EAAAsB,QAAA;IACLd,SAAS,EAAEV,UAAU,CAAC,yBAAyB,EAAEU,SAAS,CAAE;IAC5De,OAAO,EAAEH,cAAe;IACxBI,IAAI,EAAC,QAAQ;IACbC,IAAI,EAAElB,OAAO,KAAK,MAAM,GAAGJ,IAAI,GAAG;EAAK,GACnCS,IAAI,GAEPG,OAAO,EAERpB,KAAA,CAAA0B,aAAA,CAACpB,eAAe;IACdyB,KAAK,EACHjB,aAAa,GAAG,SAAS,GAAGQ;EAC7B,CACF,CACK,CAAC;AAEb;AAEAb,YAAY,CAACuB,qBAAqB,GAAG,IAAI;AACzC,eAAevB,YAAY"}
1
+ {"version":3,"file":"SubmitButton.js","names":["React","useCallback","useContext","classnames","DataContext","Button","SubmitIndicator","useTranslation","send","SubmitButton","props","translations","variant","className","showIndicator","children","text","rest","_objectWithoutProperties","_excluded","content","sendText","formState","handleSubmit","isInsideFormElement","onClickHandler","createElement","_extends","onClick","type","icon","state","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Form/SubmitButton/SubmitButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport type { ComponentProps } from '../../types'\nimport DataContext from '../../DataContext/Context'\nimport Button, { ButtonProps } from '../../../../components/button/Button'\nimport SubmitIndicator from '../SubmitIndicator'\nimport useTranslation from '../../hooks/useTranslation'\nimport { send } from '../../../../icons'\n\nexport type Props = {\n /**\n * Show the submit indicator\n */\n showIndicator?: boolean\n} & ComponentProps &\n Omit<ButtonProps, 'variant'> &\n Partial<React.HTMLAttributes<HTMLButtonElement | HTMLAnchorElement>> & {\n variant?: 'send'\n }\n\nfunction SubmitButton(props: Props) {\n const translations = useTranslation().SubmitButton\n\n const { variant, className, showIndicator, children, text, ...rest } =\n props\n\n const content =\n text ||\n children ||\n (variant === 'send' ? translations.sendText : translations.text)\n\n const { formState, handleSubmit, isInsideFormElement } =\n useContext(DataContext) || {}\n\n const onClickHandler = useCallback(() => {\n if (!isInsideFormElement) {\n handleSubmit?.()\n }\n }, [isInsideFormElement, handleSubmit])\n\n return (\n <Button\n className={classnames('dnb-forms-submit-button', className)}\n onClick={onClickHandler}\n type=\"submit\"\n icon={variant === 'send' ? send : null}\n {...rest}\n >\n {content}\n\n <SubmitIndicator\n state={\n showIndicator ? 'pending' : formState // will be enabled in a follow-up PR\n }\n />\n </Button>\n )\n}\n\nSubmitButton._supportsSpacingProps = true\nexport default SubmitButton\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AAEnC,OAAOC,WAAW,MAAM,2BAA2B;AACnD,OAAOC,MAAM,MAAuB,sCAAsC;AAC1E,OAAOC,eAAe,MAAM,oBAAoB;AAChD,OAAOC,cAAc,MAAM,4BAA4B;AACvD,SAASC,IAAI,QAAQ,mBAAmB;AAaxC,SAASC,YAAYA,CAACC,KAAY,EAAE;EAClC,MAAMC,YAAY,GAAGJ,cAAc,CAAC,CAAC,CAACE,YAAY;EAElD,MAAM;MAAEG,OAAO;MAAEC,SAAS;MAAEC,aAAa;MAAEC,QAAQ;MAAEC;IAAc,CAAC,GAClEN,KAAK;IADuDO,IAAI,GAAAC,wBAAA,CAChER,KAAK,EAAAS,SAAA;EAEP,MAAMC,OAAO,GACXJ,IAAI,IACJD,QAAQ,KACPH,OAAO,KAAK,MAAM,GAAGD,YAAY,CAACU,QAAQ,GAAGV,YAAY,CAACK,IAAI,CAAC;EAElE,MAAM;IAAEM,SAAS;IAAEC,YAAY;IAAEC;EAAoB,CAAC,GACpDtB,UAAU,CAACE,WAAW,CAAC,IAAI,CAAC,CAAC;EAE/B,MAAMqB,cAAc,GAAGxB,WAAW,CAAC,MAAM;IACvC,IAAI,CAACuB,mBAAmB,EAAE;MACxBD,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAG,CAAC;IAClB;EACF,CAAC,EAAE,CAACC,mBAAmB,EAAED,YAAY,CAAC,CAAC;EAEvC,OACEvB,KAAA,CAAA0B,aAAA,CAACrB,MAAM,EAAAsB,QAAA;IACLd,SAAS,EAAEV,UAAU,CAAC,yBAAyB,EAAEU,SAAS,CAAE;IAC5De,OAAO,EAAEH,cAAe;IACxBI,IAAI,EAAC,QAAQ;IACbC,IAAI,EAAElB,OAAO,KAAK,MAAM,GAAGJ,IAAI,GAAG;EAAK,GACnCS,IAAI,GAEPG,OAAO,EAERpB,KAAA,CAAA0B,aAAA,CAACpB,eAAe;IACdyB,KAAK,EACHjB,aAAa,GAAG,SAAS,GAAGQ;EAC7B,CACF,CACK,CAAC;AAEb;AAEAb,YAAY,CAACuB,qBAAqB,GAAG,IAAI;AACzC,eAAevB,YAAY"}
@@ -1,7 +1,15 @@
1
1
  import React, { AriaAttributes } from 'react';
2
2
  import { HeightAnimationProps } from '../../../../components/HeightAnimation';
3
+ import { FilterData } from '../../DataContext/Context';
3
4
  import type { UseFieldProps } from '../../types';
4
5
  import type { DataAttributes } from '../../hooks/useFieldProps';
6
+ type VisibleWhen = {
7
+ path: string;
8
+ hasValue: unknown;
9
+ } | {
10
+ path: string;
11
+ withValue: (value: unknown) => boolean;
12
+ };
5
13
  export type Props = {
6
14
  visible?: boolean;
7
15
  /** Given data context path must be defined to show children */
@@ -16,12 +24,14 @@ export type Props = {
16
24
  pathTrue?: string;
17
25
  /** Given data context path must be false to show children */
18
26
  pathFalse?: string;
19
- /** Given data context path must match, as well as the "whenValue" value */
20
- pathValue?: string;
21
- /** Given data context value must match this value to show children */
22
- whenValue?: unknown;
27
+ /** Provide a `path` and a `hasValue` property with the excepted value in order to show children. You can alternatively provide a `withValue` function that returns a boolean. The first parameter is the value of the path. */
28
+ visibleWhen?: VisibleWhen;
29
+ /** Same as `visibleWhen`, but with inverted logic. */
30
+ visibleWhenNot?: VisibleWhen;
23
31
  /** Infer visibility calling given derivative function with the whole data set. Should return true/false for visibility. */
24
32
  inferData?: (data: unknown) => boolean;
33
+ /** Filter data based on provided criteria. The first parameter is the path, the second is the value, and the third is the props, and the fourth is the internal. Return false to filter out the data. */
34
+ filterData?: FilterData;
25
35
  /** Animate the visibility change */
26
36
  animate?: boolean;
27
37
  /** Keep the content in the DOM, even if it's not visible */
@@ -30,8 +40,12 @@ export type Props = {
30
40
  fieldPropsWhenHidden?: UseFieldProps & DataAttributes & AriaAttributes;
31
41
  element?: HeightAnimationProps['element'];
32
42
  children: React.ReactNode;
43
+ /** @deprecated Use `visibleWhen` instead */
44
+ pathValue?: string;
45
+ /** @deprecated Use `visibleWhen` instead */
46
+ whenValue?: unknown;
33
47
  };
34
- declare function Visibility({ visible, pathDefined, pathUndefined, pathTruthy, pathFalsy, pathTrue, pathFalse, pathValue, whenValue, inferData, animate, keepInDOM, fieldPropsWhenHidden, children, ...rest }: Props): import("react/jsx-runtime").JSX.Element;
48
+ declare function Visibility({ visible, pathDefined, pathUndefined, pathTruthy, pathFalsy, pathTrue, pathFalse, pathValue, whenValue, visibleWhen, visibleWhenNot, inferData, filterData, animate, keepInDOM, fieldPropsWhenHidden, children, ...rest }: Props): import("react/jsx-runtime").JSX.Element;
35
49
  declare namespace Visibility {
36
50
  var _supportsSpacingProps: string;
37
51
  }