@dnb/eufemia 10.32.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 (551) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/cjs/components/flex/Container.js +4 -4
  3. package/cjs/components/flex/Container.js.map +1 -1
  4. package/cjs/components/grid/Container.d.ts +2 -2
  5. package/cjs/components/grid/Container.js.map +1 -1
  6. package/cjs/components/grid/ContainerDocs.d.ts +2 -0
  7. package/cjs/components/grid/ContainerDocs.js +30 -0
  8. package/cjs/components/grid/ContainerDocs.js.map +1 -0
  9. package/cjs/components/grid/style/dnb-grid.css +6 -0
  10. package/cjs/components/grid/style/dnb-grid.min.css +1 -1
  11. package/cjs/components/grid/style/grid-container.scss +6 -0
  12. package/cjs/components/slider/SliderDocs.d.ts +3 -0
  13. package/cjs/components/slider/SliderDocs.js +158 -0
  14. package/cjs/components/slider/SliderDocs.js.map +1 -0
  15. package/cjs/extensions/forms/DataContext/Context.d.ts +7 -5
  16. package/cjs/extensions/forms/DataContext/Context.js +0 -1
  17. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  18. package/cjs/extensions/forms/DataContext/Provider/Provider.js +13 -3
  19. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  20. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +1 -1
  21. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
  22. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  23. package/cjs/extensions/forms/Field/Composition/Composition.d.ts +2 -2
  24. package/cjs/extensions/forms/Field/Composition/Composition.js.map +1 -1
  25. package/cjs/extensions/forms/Field/Number/Number.js +3 -3
  26. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  27. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
  28. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
  29. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  30. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  31. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  32. package/cjs/extensions/forms/Field/Selection/Selection.js +3 -3
  33. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  34. package/cjs/extensions/forms/Field/Slider/Slider.d.ts +34 -0
  35. package/cjs/extensions/forms/Field/Slider/Slider.js +115 -0
  36. package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -0
  37. package/cjs/extensions/forms/Field/Slider/SliderDocs.d.ts +3 -0
  38. package/cjs/extensions/forms/Field/Slider/SliderDocs.js +34 -0
  39. package/cjs/extensions/forms/Field/Slider/SliderDocs.js.map +1 -0
  40. package/cjs/extensions/forms/Field/Slider/index.d.ts +2 -0
  41. package/cjs/extensions/forms/Field/Slider/index.js +27 -0
  42. package/cjs/extensions/forms/Field/Slider/index.js.map +1 -0
  43. package/cjs/extensions/forms/Field/String/String.js +2 -2
  44. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  45. package/cjs/extensions/forms/Field/Toggle/Toggle.js +7 -7
  46. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  47. package/cjs/extensions/forms/Field/index.d.ts +1 -0
  48. package/cjs/extensions/forms/Field/index.js +7 -0
  49. package/cjs/extensions/forms/Field/index.js.map +1 -1
  50. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  51. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  52. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -1
  53. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  54. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +0 -1
  55. package/cjs/extensions/forms/Form/FieldProps/FieldProps.d.ts +19 -5
  56. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js +52 -21
  57. package/cjs/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
  58. package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +1 -0
  59. package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -1
  60. package/cjs/extensions/forms/Form/Section/Section.d.ts +44 -0
  61. package/cjs/extensions/forms/Form/Section/Section.js +67 -0
  62. package/cjs/extensions/forms/Form/Section/Section.js.map +1 -0
  63. package/cjs/extensions/forms/Form/Section/SectionContext.d.ts +11 -0
  64. package/cjs/extensions/forms/Form/Section/SectionContext.js +12 -0
  65. package/cjs/extensions/forms/Form/Section/SectionContext.js.map +1 -0
  66. package/cjs/extensions/forms/Form/Section/SectionDocs.d.ts +3 -0
  67. package/cjs/extensions/forms/Form/Section/SectionDocs.js +43 -0
  68. package/cjs/extensions/forms/Form/Section/SectionDocs.js.map +1 -0
  69. package/cjs/extensions/forms/Form/Section/index.d.ts +2 -0
  70. package/cjs/extensions/forms/Form/Section/index.js +27 -0
  71. package/cjs/extensions/forms/Form/Section/index.js.map +1 -0
  72. package/cjs/extensions/forms/Form/Visibility/Visibility.js +15 -9
  73. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  74. package/cjs/extensions/forms/Form/data-context/useData.js +6 -2
  75. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  76. package/cjs/extensions/forms/Form/index.d.ts +1 -1
  77. package/cjs/extensions/forms/Form/index.js +7 -5
  78. package/cjs/extensions/forms/Form/index.js.map +1 -1
  79. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +2 -2
  80. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  81. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
  82. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  83. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
  84. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  85. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  86. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  87. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -2
  88. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  89. package/cjs/extensions/forms/Tools/GenerateSchema.d.ts +19 -0
  90. package/cjs/extensions/forms/Tools/GenerateSchema.js +143 -0
  91. package/cjs/extensions/forms/Tools/GenerateSchema.js.map +1 -0
  92. package/cjs/extensions/forms/Tools/ListAllProps.d.ts +15 -0
  93. package/cjs/extensions/forms/Tools/ListAllProps.js +73 -0
  94. package/cjs/extensions/forms/Tools/ListAllProps.js.map +1 -0
  95. package/{es/extensions/forms/Form → cjs/extensions/forms}/Tools/index.d.ts +1 -0
  96. package/cjs/extensions/forms/{Form/Tools → Tools}/index.js +7 -0
  97. package/cjs/extensions/forms/Tools/index.js.map +1 -0
  98. package/cjs/extensions/forms/Value/Number/Number.js +4 -2
  99. package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
  100. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
  101. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  102. package/cjs/extensions/forms/blocks/Category/FirstBlock/FirstBlock.d.ts +2 -0
  103. package/cjs/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js +46 -0
  104. package/cjs/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js.map +1 -0
  105. package/cjs/extensions/forms/blocks/Category/FirstBlock/index.d.ts +2 -0
  106. package/cjs/extensions/forms/blocks/Category/FirstBlock/index.js +27 -0
  107. package/cjs/extensions/forms/blocks/Category/FirstBlock/index.js.map +1 -0
  108. package/cjs/extensions/forms/blocks/Category/index.d.ts +1 -0
  109. package/cjs/extensions/forms/blocks/Category/index.js +14 -0
  110. package/cjs/extensions/forms/blocks/Category/index.js.map +1 -0
  111. package/cjs/extensions/forms/blocks/index.d.ts +1 -0
  112. package/cjs/extensions/forms/blocks/index.js +11 -0
  113. package/cjs/extensions/forms/blocks/index.js.map +1 -0
  114. package/cjs/extensions/forms/hooks/index.d.ts +2 -5
  115. package/cjs/extensions/forms/hooks/index.js +12 -4
  116. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  117. package/cjs/extensions/forms/hooks/useDataValue.d.ts +9 -0
  118. package/cjs/extensions/forms/hooks/useDataValue.js +39 -0
  119. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -0
  120. package/cjs/extensions/forms/hooks/useExternalValue.d.ts +12 -0
  121. package/cjs/extensions/forms/hooks/useExternalValue.js +47 -0
  122. package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -0
  123. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +1 -10
  124. package/cjs/extensions/forms/hooks/useFieldProps.js +60 -81
  125. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  126. package/cjs/extensions/forms/hooks/usePath.d.ts +14 -0
  127. package/cjs/extensions/forms/hooks/usePath.js +72 -0
  128. package/cjs/extensions/forms/hooks/usePath.js.map +1 -0
  129. package/cjs/extensions/forms/hooks/useValueProps.js +17 -4
  130. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  131. package/cjs/extensions/forms/index.d.ts +2 -0
  132. package/cjs/extensions/forms/index.js +4 -1
  133. package/cjs/extensions/forms/index.js.map +1 -1
  134. package/cjs/extensions/forms/style/dnb-forms.css +0 -1
  135. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  136. package/cjs/extensions/forms/types.d.ts +6 -3
  137. package/cjs/extensions/forms/types.js.map +1 -1
  138. package/cjs/fragments/drawer-list/DrawerListHelpers.js +3 -2
  139. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  140. package/cjs/shared/Context.d.ts +3 -3
  141. package/cjs/shared/Context.js +8 -8
  142. package/cjs/shared/Context.js.map +1 -1
  143. package/cjs/shared/Eufemia.d.ts +1 -1
  144. package/cjs/shared/Eufemia.js +2 -2
  145. package/cjs/shared/Eufemia.js.map +1 -1
  146. package/cjs/style/core/scopes.scss +1 -1
  147. package/cjs/style/dnb-ui-basis.css +1 -1
  148. package/cjs/style/dnb-ui-basis.min.css +1 -1
  149. package/cjs/style/dnb-ui-body.css +1 -1
  150. package/cjs/style/dnb-ui-body.min.css +1 -1
  151. package/cjs/style/dnb-ui-components.css +6 -1
  152. package/cjs/style/dnb-ui-components.min.css +2 -2
  153. package/cjs/style/dnb-ui-core.css +1 -1
  154. package/cjs/style/dnb-ui-core.min.css +1 -1
  155. package/cjs/style/dnb-ui-extensions.css +0 -1
  156. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  157. package/cjs/style/dnb-ui-forms.css +0 -1
  158. package/cjs/style/dnb-ui-forms.min.css +1 -1
  159. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +6 -2
  160. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  161. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +0 -1
  162. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  163. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +0 -1
  164. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  165. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +6 -2
  166. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  167. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +0 -1
  168. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  169. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +0 -1
  170. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  171. package/cjs/style/themes/theme-ui/ui-theme-components.css +6 -2
  172. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  173. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +0 -1
  174. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  175. package/cjs/style/themes/theme-ui/ui-theme-forms.css +0 -1
  176. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  177. package/components/flex/Container.js +4 -4
  178. package/components/flex/Container.js.map +1 -1
  179. package/components/grid/Container.d.ts +2 -2
  180. package/components/grid/Container.js.map +1 -1
  181. package/components/grid/ContainerDocs.d.ts +2 -0
  182. package/components/grid/ContainerDocs.js +23 -0
  183. package/components/grid/ContainerDocs.js.map +1 -0
  184. package/components/grid/style/dnb-grid.css +6 -0
  185. package/components/grid/style/dnb-grid.min.css +1 -1
  186. package/components/grid/style/grid-container.scss +6 -0
  187. package/components/slider/SliderDocs.d.ts +3 -0
  188. package/components/slider/SliderDocs.js +150 -0
  189. package/components/slider/SliderDocs.js.map +1 -0
  190. package/es/components/flex/Container.js +4 -4
  191. package/es/components/flex/Container.js.map +1 -1
  192. package/es/components/grid/Container.d.ts +2 -2
  193. package/es/components/grid/Container.js.map +1 -1
  194. package/es/components/grid/ContainerDocs.d.ts +2 -0
  195. package/es/components/grid/ContainerDocs.js +23 -0
  196. package/es/components/grid/ContainerDocs.js.map +1 -0
  197. package/es/components/grid/style/dnb-grid.css +6 -0
  198. package/es/components/grid/style/dnb-grid.min.css +1 -1
  199. package/es/components/grid/style/grid-container.scss +6 -0
  200. package/es/components/slider/SliderDocs.d.ts +3 -0
  201. package/es/components/slider/SliderDocs.js +150 -0
  202. package/es/components/slider/SliderDocs.js.map +1 -0
  203. package/es/extensions/forms/DataContext/Context.d.ts +7 -5
  204. package/es/extensions/forms/DataContext/Context.js +0 -1
  205. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  206. package/es/extensions/forms/DataContext/Provider/Provider.js +14 -4
  207. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  208. package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +1 -1
  209. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
  210. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  211. package/es/extensions/forms/Field/Composition/Composition.d.ts +2 -2
  212. package/es/extensions/forms/Field/Composition/Composition.js.map +1 -1
  213. package/es/extensions/forms/Field/Number/Number.js +3 -3
  214. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  215. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
  216. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
  217. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  218. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  219. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  220. package/es/extensions/forms/Field/Selection/Selection.js +3 -3
  221. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  222. package/es/extensions/forms/Field/Slider/Slider.d.ts +34 -0
  223. package/es/extensions/forms/Field/Slider/Slider.js +103 -0
  224. package/es/extensions/forms/Field/Slider/Slider.js.map +1 -0
  225. package/es/extensions/forms/Field/Slider/SliderDocs.d.ts +3 -0
  226. package/es/extensions/forms/Field/Slider/SliderDocs.js +26 -0
  227. package/es/extensions/forms/Field/Slider/SliderDocs.js.map +1 -0
  228. package/es/extensions/forms/Field/Slider/index.d.ts +2 -0
  229. package/es/extensions/forms/Field/Slider/index.js +3 -0
  230. package/es/extensions/forms/Field/Slider/index.js.map +1 -0
  231. package/es/extensions/forms/Field/String/String.js +2 -2
  232. package/es/extensions/forms/Field/String/String.js.map +1 -1
  233. package/es/extensions/forms/Field/Toggle/Toggle.js +7 -7
  234. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  235. package/es/extensions/forms/Field/index.d.ts +1 -0
  236. package/es/extensions/forms/Field/index.js +1 -0
  237. package/es/extensions/forms/Field/index.js.map +1 -1
  238. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  239. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  240. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -1
  241. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  242. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +0 -1
  243. package/es/extensions/forms/Form/FieldProps/FieldProps.d.ts +19 -5
  244. package/es/extensions/forms/Form/FieldProps/FieldProps.js +49 -21
  245. package/es/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
  246. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +1 -0
  247. package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -1
  248. package/es/extensions/forms/Form/Section/Section.d.ts +44 -0
  249. package/es/extensions/forms/Form/Section/Section.js +56 -0
  250. package/es/extensions/forms/Form/Section/Section.js.map +1 -0
  251. package/es/extensions/forms/Form/Section/SectionContext.d.ts +11 -0
  252. package/es/extensions/forms/Form/Section/SectionContext.js +4 -0
  253. package/es/extensions/forms/Form/Section/SectionContext.js.map +1 -0
  254. package/es/extensions/forms/Form/Section/SectionDocs.d.ts +3 -0
  255. package/es/extensions/forms/Form/Section/SectionDocs.js +35 -0
  256. package/es/extensions/forms/Form/Section/SectionDocs.js.map +1 -0
  257. package/es/extensions/forms/Form/Section/index.d.ts +2 -0
  258. package/es/extensions/forms/Form/Section/index.js +3 -0
  259. package/es/extensions/forms/Form/Section/index.js.map +1 -0
  260. package/es/extensions/forms/Form/Visibility/Visibility.js +16 -10
  261. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  262. package/es/extensions/forms/Form/data-context/useData.js +6 -2
  263. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  264. package/es/extensions/forms/Form/index.d.ts +1 -1
  265. package/es/extensions/forms/Form/index.js +1 -1
  266. package/es/extensions/forms/Form/index.js.map +1 -1
  267. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +2 -2
  268. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  269. package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
  270. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  271. package/es/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
  272. package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  273. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  274. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  275. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -2
  276. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  277. package/es/extensions/forms/Tools/GenerateSchema.d.ts +19 -0
  278. package/es/extensions/forms/Tools/GenerateSchema.js +130 -0
  279. package/es/extensions/forms/Tools/GenerateSchema.js.map +1 -0
  280. package/es/extensions/forms/Tools/ListAllProps.d.ts +15 -0
  281. package/es/extensions/forms/Tools/ListAllProps.js +65 -0
  282. package/es/extensions/forms/Tools/ListAllProps.js.map +1 -0
  283. package/{extensions/forms/Form → es/extensions/forms}/Tools/index.d.ts +1 -0
  284. package/es/extensions/forms/Tools/index.js +3 -0
  285. package/es/extensions/forms/Tools/index.js.map +1 -0
  286. package/es/extensions/forms/Value/Number/Number.js +4 -2
  287. package/es/extensions/forms/Value/Number/Number.js.map +1 -1
  288. package/es/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
  289. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  290. package/es/extensions/forms/blocks/Category/FirstBlock/FirstBlock.d.ts +2 -0
  291. package/es/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js +39 -0
  292. package/es/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js.map +1 -0
  293. package/es/extensions/forms/blocks/Category/FirstBlock/index.d.ts +2 -0
  294. package/es/extensions/forms/blocks/Category/FirstBlock/index.js +3 -0
  295. package/es/extensions/forms/blocks/Category/FirstBlock/index.js.map +1 -0
  296. package/es/extensions/forms/blocks/Category/index.d.ts +1 -0
  297. package/es/extensions/forms/blocks/Category/index.js +1 -0
  298. package/es/extensions/forms/blocks/Category/index.js.map +1 -0
  299. package/es/extensions/forms/blocks/index.d.ts +1 -0
  300. package/es/extensions/forms/blocks/index.js +1 -0
  301. package/es/extensions/forms/blocks/index.js.map +1 -0
  302. package/es/extensions/forms/hooks/index.d.ts +2 -5
  303. package/es/extensions/forms/hooks/index.js +2 -1
  304. package/es/extensions/forms/hooks/index.js.map +1 -1
  305. package/es/extensions/forms/hooks/useDataValue.d.ts +9 -0
  306. package/es/extensions/forms/hooks/useDataValue.js +32 -0
  307. package/es/extensions/forms/hooks/useDataValue.js.map +1 -0
  308. package/es/extensions/forms/hooks/useExternalValue.d.ts +12 -0
  309. package/es/extensions/forms/hooks/useExternalValue.js +41 -0
  310. package/es/extensions/forms/hooks/useExternalValue.js.map +1 -0
  311. package/es/extensions/forms/hooks/useFieldProps.d.ts +1 -10
  312. package/es/extensions/forms/hooks/useFieldProps.js +59 -78
  313. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  314. package/es/extensions/forms/hooks/usePath.d.ts +14 -0
  315. package/es/extensions/forms/hooks/usePath.js +64 -0
  316. package/es/extensions/forms/hooks/usePath.js.map +1 -0
  317. package/es/extensions/forms/hooks/useValueProps.js +16 -4
  318. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  319. package/es/extensions/forms/index.d.ts +2 -0
  320. package/es/extensions/forms/index.js +1 -0
  321. package/es/extensions/forms/index.js.map +1 -1
  322. package/es/extensions/forms/style/dnb-forms.css +0 -1
  323. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  324. package/es/extensions/forms/types.d.ts +6 -3
  325. package/es/extensions/forms/types.js.map +1 -1
  326. package/es/fragments/drawer-list/DrawerListHelpers.js +3 -2
  327. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  328. package/es/shared/Context.d.ts +3 -3
  329. package/es/shared/Context.js +8 -8
  330. package/es/shared/Context.js.map +1 -1
  331. package/es/shared/Eufemia.d.ts +1 -1
  332. package/es/shared/Eufemia.js +2 -2
  333. package/es/shared/Eufemia.js.map +1 -1
  334. package/es/style/core/scopes.scss +1 -1
  335. package/es/style/dnb-ui-basis.css +1 -1
  336. package/es/style/dnb-ui-basis.min.css +1 -1
  337. package/es/style/dnb-ui-body.css +1 -1
  338. package/es/style/dnb-ui-body.min.css +1 -1
  339. package/es/style/dnb-ui-components.css +6 -1
  340. package/es/style/dnb-ui-components.min.css +2 -2
  341. package/es/style/dnb-ui-core.css +1 -1
  342. package/es/style/dnb-ui-core.min.css +1 -1
  343. package/es/style/dnb-ui-extensions.css +0 -1
  344. package/es/style/dnb-ui-extensions.min.css +1 -1
  345. package/es/style/dnb-ui-forms.css +0 -1
  346. package/es/style/dnb-ui-forms.min.css +1 -1
  347. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +6 -2
  348. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  349. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +0 -1
  350. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  351. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +0 -1
  352. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  353. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +6 -2
  354. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  355. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +0 -1
  356. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  357. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +0 -1
  358. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  359. package/es/style/themes/theme-ui/ui-theme-components.css +6 -2
  360. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  361. package/es/style/themes/theme-ui/ui-theme-extensions.css +0 -1
  362. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  363. package/es/style/themes/theme-ui/ui-theme-forms.css +0 -1
  364. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  365. package/esm/dnb-ui-basis.min.mjs +1 -1
  366. package/esm/dnb-ui-components.min.mjs +1 -1
  367. package/esm/dnb-ui-elements.min.mjs +1 -1
  368. package/esm/dnb-ui-extensions.min.mjs +3 -3
  369. package/esm/dnb-ui-lib.min.mjs +1 -1
  370. package/extensions/forms/DataContext/Context.d.ts +7 -5
  371. package/extensions/forms/DataContext/Context.js +0 -1
  372. package/extensions/forms/DataContext/Context.js.map +1 -1
  373. package/extensions/forms/DataContext/Provider/Provider.js +14 -4
  374. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  375. package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +1 -1
  376. package/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
  377. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  378. package/extensions/forms/Field/Composition/Composition.d.ts +2 -2
  379. package/extensions/forms/Field/Composition/Composition.js.map +1 -1
  380. package/extensions/forms/Field/Number/Number.js +3 -3
  381. package/extensions/forms/Field/Number/Number.js.map +1 -1
  382. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
  383. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
  384. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
  385. package/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
  386. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  387. package/extensions/forms/Field/Selection/Selection.js +3 -3
  388. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  389. package/extensions/forms/Field/Slider/Slider.d.ts +34 -0
  390. package/extensions/forms/Field/Slider/Slider.js +104 -0
  391. package/extensions/forms/Field/Slider/Slider.js.map +1 -0
  392. package/extensions/forms/Field/Slider/SliderDocs.d.ts +3 -0
  393. package/extensions/forms/Field/Slider/SliderDocs.js +26 -0
  394. package/extensions/forms/Field/Slider/SliderDocs.js.map +1 -0
  395. package/extensions/forms/Field/Slider/index.d.ts +2 -0
  396. package/extensions/forms/Field/Slider/index.js +3 -0
  397. package/extensions/forms/Field/Slider/index.js.map +1 -0
  398. package/extensions/forms/Field/String/String.js +2 -2
  399. package/extensions/forms/Field/String/String.js.map +1 -1
  400. package/extensions/forms/Field/Toggle/Toggle.js +7 -7
  401. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  402. package/extensions/forms/Field/index.d.ts +1 -0
  403. package/extensions/forms/Field/index.js +1 -0
  404. package/extensions/forms/Field/index.js.map +1 -1
  405. package/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
  406. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  407. package/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -1
  408. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  409. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +0 -1
  410. package/extensions/forms/Form/FieldProps/FieldProps.d.ts +19 -5
  411. package/extensions/forms/Form/FieldProps/FieldProps.js +50 -21
  412. package/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
  413. package/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +1 -0
  414. package/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -1
  415. package/extensions/forms/Form/Section/Section.d.ts +44 -0
  416. package/extensions/forms/Form/Section/Section.js +56 -0
  417. package/extensions/forms/Form/Section/Section.js.map +1 -0
  418. package/extensions/forms/Form/Section/SectionContext.d.ts +11 -0
  419. package/extensions/forms/Form/Section/SectionContext.js +4 -0
  420. package/extensions/forms/Form/Section/SectionContext.js.map +1 -0
  421. package/extensions/forms/Form/Section/SectionDocs.d.ts +3 -0
  422. package/extensions/forms/Form/Section/SectionDocs.js +35 -0
  423. package/extensions/forms/Form/Section/SectionDocs.js.map +1 -0
  424. package/extensions/forms/Form/Section/index.d.ts +2 -0
  425. package/extensions/forms/Form/Section/index.js +3 -0
  426. package/extensions/forms/Form/Section/index.js.map +1 -0
  427. package/extensions/forms/Form/Visibility/Visibility.js +16 -10
  428. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  429. package/extensions/forms/Form/data-context/useData.js +6 -2
  430. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  431. package/extensions/forms/Form/index.d.ts +1 -1
  432. package/extensions/forms/Form/index.js +1 -2
  433. package/extensions/forms/Form/index.js.map +1 -1
  434. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +2 -2
  435. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  436. package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
  437. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  438. package/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
  439. package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  440. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
  441. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  442. package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -2
  443. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  444. package/extensions/forms/Tools/GenerateSchema.d.ts +19 -0
  445. package/extensions/forms/Tools/GenerateSchema.js +133 -0
  446. package/extensions/forms/Tools/GenerateSchema.js.map +1 -0
  447. package/extensions/forms/Tools/ListAllProps.d.ts +15 -0
  448. package/extensions/forms/Tools/ListAllProps.js +67 -0
  449. package/extensions/forms/Tools/ListAllProps.js.map +1 -0
  450. package/{cjs/extensions/forms/Form → extensions/forms}/Tools/index.d.ts +1 -0
  451. package/extensions/forms/Tools/index.js +3 -0
  452. package/extensions/forms/Tools/index.js.map +1 -0
  453. package/extensions/forms/Value/Number/Number.js +4 -2
  454. package/extensions/forms/Value/Number/Number.js.map +1 -1
  455. package/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
  456. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  457. package/extensions/forms/blocks/Category/FirstBlock/FirstBlock.d.ts +2 -0
  458. package/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js +39 -0
  459. package/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js.map +1 -0
  460. package/extensions/forms/blocks/Category/FirstBlock/index.d.ts +2 -0
  461. package/extensions/forms/blocks/Category/FirstBlock/index.js +3 -0
  462. package/extensions/forms/blocks/Category/FirstBlock/index.js.map +1 -0
  463. package/extensions/forms/blocks/Category/index.d.ts +1 -0
  464. package/extensions/forms/blocks/Category/index.js +1 -0
  465. package/extensions/forms/blocks/Category/index.js.map +1 -0
  466. package/extensions/forms/blocks/index.d.ts +1 -0
  467. package/extensions/forms/blocks/index.js +3 -0
  468. package/extensions/forms/blocks/index.js.map +1 -0
  469. package/extensions/forms/hooks/index.d.ts +2 -5
  470. package/extensions/forms/hooks/index.js +2 -1
  471. package/extensions/forms/hooks/index.js.map +1 -1
  472. package/extensions/forms/hooks/useDataValue.d.ts +9 -0
  473. package/extensions/forms/hooks/useDataValue.js +33 -0
  474. package/extensions/forms/hooks/useDataValue.js.map +1 -0
  475. package/extensions/forms/hooks/useExternalValue.d.ts +12 -0
  476. package/extensions/forms/hooks/useExternalValue.js +41 -0
  477. package/extensions/forms/hooks/useExternalValue.js.map +1 -0
  478. package/extensions/forms/hooks/useFieldProps.d.ts +1 -10
  479. package/extensions/forms/hooks/useFieldProps.js +59 -79
  480. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  481. package/extensions/forms/hooks/usePath.d.ts +14 -0
  482. package/extensions/forms/hooks/usePath.js +66 -0
  483. package/extensions/forms/hooks/usePath.js.map +1 -0
  484. package/extensions/forms/hooks/useValueProps.js +16 -4
  485. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  486. package/extensions/forms/index.d.ts +2 -0
  487. package/extensions/forms/index.js +2 -0
  488. package/extensions/forms/index.js.map +1 -1
  489. package/extensions/forms/style/dnb-forms.css +0 -1
  490. package/extensions/forms/style/dnb-forms.min.css +1 -1
  491. package/extensions/forms/types.d.ts +6 -3
  492. package/extensions/forms/types.js.map +1 -1
  493. package/fragments/drawer-list/DrawerListHelpers.js +3 -2
  494. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  495. package/package.json +1 -1
  496. package/shared/Context.d.ts +3 -3
  497. package/shared/Context.js +8 -8
  498. package/shared/Context.js.map +1 -1
  499. package/shared/Eufemia.d.ts +1 -1
  500. package/shared/Eufemia.js +2 -2
  501. package/shared/Eufemia.js.map +1 -1
  502. package/style/core/scopes.scss +1 -1
  503. package/style/dnb-ui-basis.css +1 -1
  504. package/style/dnb-ui-basis.min.css +1 -1
  505. package/style/dnb-ui-body.css +1 -1
  506. package/style/dnb-ui-body.min.css +1 -1
  507. package/style/dnb-ui-components.css +6 -1
  508. package/style/dnb-ui-components.min.css +2 -2
  509. package/style/dnb-ui-core.css +1 -1
  510. package/style/dnb-ui-core.min.css +1 -1
  511. package/style/dnb-ui-extensions.css +0 -1
  512. package/style/dnb-ui-extensions.min.css +1 -1
  513. package/style/dnb-ui-forms.css +0 -1
  514. package/style/dnb-ui-forms.min.css +1 -1
  515. package/style/themes/theme-eiendom/eiendom-theme-components.css +6 -2
  516. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  517. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +0 -1
  518. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  519. package/style/themes/theme-eiendom/eiendom-theme-forms.css +0 -1
  520. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  521. package/style/themes/theme-sbanken/sbanken-theme-components.css +6 -2
  522. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  523. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +0 -1
  524. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  525. package/style/themes/theme-sbanken/sbanken-theme-forms.css +0 -1
  526. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  527. package/style/themes/theme-ui/ui-theme-components.css +6 -2
  528. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  529. package/style/themes/theme-ui/ui-theme-extensions.css +0 -1
  530. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  531. package/style/themes/theme-ui/ui-theme-forms.css +0 -1
  532. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  533. package/umd/dnb-ui-basis.min.js +1 -1
  534. package/umd/dnb-ui-components.min.js +1 -1
  535. package/umd/dnb-ui-elements.min.js +1 -1
  536. package/umd/dnb-ui-extensions.min.js +3 -3
  537. package/umd/dnb-ui-lib.min.js +1 -1
  538. package/cjs/extensions/forms/Form/Tools/GenerateSchema.d.ts +0 -8
  539. package/cjs/extensions/forms/Form/Tools/GenerateSchema.js +0 -100
  540. package/cjs/extensions/forms/Form/Tools/GenerateSchema.js.map +0 -1
  541. package/cjs/extensions/forms/Form/Tools/index.js.map +0 -1
  542. package/es/extensions/forms/Form/Tools/GenerateSchema.d.ts +0 -8
  543. package/es/extensions/forms/Form/Tools/GenerateSchema.js +0 -89
  544. package/es/extensions/forms/Form/Tools/GenerateSchema.js.map +0 -1
  545. package/es/extensions/forms/Form/Tools/index.js +0 -1
  546. package/es/extensions/forms/Form/Tools/index.js.map +0 -1
  547. package/extensions/forms/Form/Tools/GenerateSchema.d.ts +0 -8
  548. package/extensions/forms/Form/Tools/GenerateSchema.js +0 -90
  549. package/extensions/forms/Form/Tools/GenerateSchema.js.map +0 -1
  550. package/extensions/forms/Form/Tools/index.js +0 -1
  551. package/extensions/forms/Form/Tools/index.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,29 @@
3
3
  All notable changes to @dnb/eufemia will be documented in this file. See
4
4
  [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [10.33.0](https://github.com/dnbexperience/eufemia/compare/v10.32.0...v10.33.0) (2024-05-27)
7
+
8
+
9
+ ### :memo: Documentation
10
+
11
+ * add Accordion in Grid columns example ([#3601](https://github.com/dnbexperience/eufemia/issues/3601)) ([8e695ff](https://github.com/dnbexperience/eufemia/commit/8e695ff252f85a4629107b4d9722c3219b718fe8))
12
+
13
+
14
+ ### :sparkles: Features
15
+
16
+ * **forms:** add `Composite.Block` to compose reusable blocks of fields and values ([#3594](https://github.com/dnbexperience/eufemia/issues/3594)) ([67d1538](https://github.com/dnbexperience/eufemia/commit/67d1538a7480e72444a644e3e747d6eb193af0d0))
17
+ * **forms:** add `Form.Section` to compose reusable blocks of fields and values ([#3609](https://github.com/dnbexperience/eufemia/issues/3609)) ([32848e2](https://github.com/dnbexperience/eufemia/commit/32848e2b2080c8eadf24caee4f65fe95ebfa3133)), closes [#3594](https://github.com/dnbexperience/eufemia/issues/3594)
18
+ * **forms:** add Field.Slider ([#3597](https://github.com/dnbexperience/eufemia/issues/3597)) ([d94f691](https://github.com/dnbexperience/eufemia/commit/d94f691d26c1559ec24451684d46254a16fa3a6e))
19
+
20
+
21
+ ### :bug: Bug Fixes
22
+
23
+ * **ArraySelection:** make explicit type of value can be undefined ([#3610](https://github.com/dnbexperience/eufemia/issues/3610)) ([cd4add9](https://github.com/dnbexperience/eufemia/commit/cd4add9f7c7f749951e561aec18919325aee6946))
24
+ * **DrawerList:** check if string converted jsx is of type function ([#3606](https://github.com/dnbexperience/eufemia/issues/3606)) ([6a59d6c](https://github.com/dnbexperience/eufemia/commit/6a59d6c8ed4b15e727ea89312b3d51ba2ff9b0b8))
25
+ * **FieldBlock:** make it possible to be used in horizontal flex layout when width="stretch" is used ([#3596](https://github.com/dnbexperience/eufemia/issues/3596)) ([fde04b5](https://github.com/dnbexperience/eufemia/commit/fde04b5e7b3dccb76cd9b1f86bd4879df89f58a5))
26
+ * **forms:** add support for `trueText` and `falseText` to Boolean checkbox variant ([#3607](https://github.com/dnbexperience/eufemia/issues/3607)) ([198164a](https://github.com/dnbexperience/eufemia/commit/198164a2137d55f912d5d18827787fad5228aca4))
27
+ * **SelectCountry:** use given path value ([#3598](https://github.com/dnbexperience/eufemia/issues/3598)) ([9ca7953](https://github.com/dnbexperience/eufemia/commit/9ca7953cb4dee7c7f9c482d1e184e0f9dce859ae))
28
+
6
29
  ## [10.32.0](https://github.com/dnbexperience/eufemia/compare/v10.31.0...v10.32.0) (2024-05-23)
7
30
 
8
31
 
@@ -82,9 +82,9 @@ function FlexContainer(props) {
82
82
  const endSpacing = 0;
83
83
  let startSpacing = null;
84
84
  if (!isHeading && (divider === 'line' && !isFirst || divider === 'line-framed')) {
85
- var _getSpaceValue, _ref3, _getSpaceValue2;
85
+ var _getSpaceValue, _getSpaceValue2;
86
86
  const spaceAboveLine = (_getSpaceValue = (0, _utils.getSpaceValue)(end, previousChild)) !== null && _getSpaceValue !== void 0 ? _getSpaceValue : spacing;
87
- startSpacing = (_ref3 = (_getSpaceValue2 = (0, _utils.getSpaceValue)(start, child)) !== null && _getSpaceValue2 !== void 0 ? _getSpaceValue2 : gap) !== null && _ref3 !== void 0 ? _ref3 : spacing;
87
+ startSpacing = (_getSpaceValue2 = (0, _utils.getSpaceValue)(start, child)) !== null && _getSpaceValue2 !== void 0 ? _getSpaceValue2 : spacing;
88
88
  return _react.default.createElement(_react.default.Fragment, {
89
89
  key: `element-${i}`
90
90
  }, _react.default.createElement(_elements.Hr, {
@@ -105,8 +105,8 @@ function FlexContainer(props) {
105
105
  if (isFirst && direction !== 'horizontal') {
106
106
  startSpacing = 0;
107
107
  } else {
108
- var _ref4, _ref5, _getSpaceValue3;
109
- startSpacing = (_ref4 = (_ref5 = (_getSpaceValue3 = (0, _utils.getSpaceValue)(start, child)) !== null && _getSpaceValue3 !== void 0 ? _getSpaceValue3 : (0, _utils.getSpaceValue)(end, previousChild)) !== null && _ref5 !== void 0 ? _ref5 : gap) !== null && _ref4 !== void 0 ? _ref4 : spacing;
108
+ var _ref3, _getSpaceValue3;
109
+ startSpacing = (_ref3 = (_getSpaceValue3 = (0, _utils.getSpaceValue)(start, child)) !== null && _getSpaceValue3 !== void 0 ? _getSpaceValue3 : (0, _utils.getSpaceValue)(end, previousChild)) !== null && _ref3 !== void 0 ? _ref3 : spacing;
110
110
  }
111
111
  if (_react.default.isValidElement(previousChild) && (previousChild === null || previousChild === void 0 ? void 0 : (_previousChild$type = previousChild.type) === null || _previousChild$type === void 0 ? void 0 : _previousChild$type['_supportsSpacingProps']) === false) {
112
112
  startSpacing = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"Container.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Space","_elements","_useMedia","_utils","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","propNames","pickFlexContainerProps","props","defaults","skip","fromEntries","entries","_ref","includes","FlexContainer","_ref2","className","style","children","element","direction","wrap","sizeCount","rowGap","justify","align","alignSelf","divider","gap","spacing","spacingProp","breakpoints","queries","rest","childrenArray","wrapChildren","hasHeading","some","child","previousChild","isHeadingElement","hasSizeProp","_child$props","size","mediaKey","useMedia","disabled","content","map","_previousChild$type","isFirst","isLast","isHeading","start","end","endSpacing","startSpacing","_getSpaceValue","_ref3","_getSpaceValue2","spaceAboveLine","getSpaceValue","createElement","Fragment","Hr","top","space","renderWithSpacing","_ref4","_ref5","_getSpaceValue3","React","isValidElement","type","n","getRowGapClass","useCallback","cn","classnames","Children","toArray","cloneElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/flex/Container.tsx"],"sourcesContent":["import React, { useCallback } from 'react'\nimport classnames from 'classnames'\nimport Space, { SpaceProps } from '../space/Space'\nimport { Hr } from '../../elements'\nimport useMedia from '../../shared/useMedia'\nimport {\n getSpaceValue,\n isHeadingElement,\n renderWithSpacing,\n} from './utils'\n\nimport type { MediaQueryBreakpoints } from '../../shared/MediaQueryUtils'\nimport type { SpaceType } from '../space/types'\nimport type { UseMediaQueries } from '../../shared/useMedia'\nimport type { End, Start } from './types'\n\ntype Gap =\n | false\n | 'xx-small'\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n\nexport type BasicProps = {\n direction?: 'horizontal' | 'vertical'\n wrap?: boolean\n rowGap?: 'small' | 'medium' | 'large' | boolean\n sizeCount?: number\n justify?:\n | 'flex-start'\n | 'flex-end'\n | 'center'\n | 'space-between'\n | 'space-around'\n | 'space-evenly'\n align?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'\n /** For when used as a flex item in an outer container in addition to being a container: */\n alignSelf?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch'\n /** When \"line-framed\" is used, a line will be shown between items and above the first and below the last item */\n divider?: 'space' | 'line' | 'line-framed'\n /** Spacing between items inside */\n gap?: Gap\n /** @deprecated Use `gap` instead */\n spacing?: Gap\n breakpoints?: MediaQueryBreakpoints\n queries?: UseMediaQueries\n}\n\nexport type Props = BasicProps &\n SpaceProps &\n Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'ref' | 'wrap' | 'value' | 'label' | 'title' | 'placeholder'\n >\n\nconst propNames: Array<keyof Props> = [\n 'direction',\n 'wrap',\n 'justify',\n 'align',\n 'divider',\n 'spacing',\n 'gap',\n]\n\nexport function pickFlexContainerProps<T extends Props>(\n props: T,\n defaults: Partial<Props> = {},\n skip: Array<keyof Props> = []\n): Omit<Props, 'children'> {\n return {\n ...defaults,\n ...Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n propNames.includes(key as keyof Props) &&\n !skip.includes(key as keyof Props)\n )\n ),\n }\n}\n\nfunction FlexContainer(props: Props) {\n const {\n className,\n style,\n children,\n element = 'div',\n direction = 'horizontal',\n wrap = true,\n sizeCount = 12,\n rowGap,\n justify = 'flex-start',\n align = 'flex-start',\n alignSelf,\n divider = 'space',\n gap,\n spacing: spacingProp,\n breakpoints,\n queries,\n ...rest\n } = props\n\n const spacing = spacingProp ?? gap ?? 'small'\n\n const childrenArray = wrapChildren(props, children)\n const hasHeading = childrenArray.some((child, i) => {\n const previousChild = childrenArray?.[i - 1]\n return (\n isHeadingElement(child) || (i > 0 && isHeadingElement(previousChild))\n )\n })\n const hasSizeProp =\n !hasHeading &&\n direction === 'horizontal' &&\n childrenArray.some((child) => child['props']?.size)\n\n const { key: mediaKey } = useMedia({\n disabled: !hasSizeProp,\n breakpoints,\n queries,\n })\n\n const content = childrenArray.map((child, i) => {\n // Set spacing on child components by props (instead of CSS) to be able to dynamically override by props on each child. The default\n // is the spacing-props that controls space between children. Then override with props sent to the children, including both top\n // and bottom when th\n const isFirst = i === 0\n const isLast = i >= childrenArray.length - 1\n const previousChild = childrenArray?.[i - 1]\n const isHeading = hasHeading && isHeadingElement(previousChild)\n\n // Always set spacing between elements in the vertical layout on the top props, and 0 on bottom, to avoid\n // having to divide spacing between both with smaller values.\n const start: Start = direction === 'horizontal' ? 'left' : 'top'\n const end: End = direction === 'horizontal' ? 'right' : 'bottom'\n // const start: Start | End = direction === 'horizontal' ? 'right' : 'top'\n // const end: Start | End = direction === 'horizontal' ? 'left' : 'bottom'\n const endSpacing = 0\n let startSpacing = null\n\n if (\n // No line above heading\n !isHeading &&\n ((divider === 'line' && !isFirst) || divider === 'line-framed')\n ) {\n const spaceAboveLine = getSpaceValue(end, previousChild) ?? spacing\n startSpacing = (getSpaceValue(start, child) ??\n gap ??\n spacing) as SpaceType\n\n return (\n <React.Fragment key={`element-${i}`}>\n <Hr\n top={!isFirst ? spaceAboveLine : 0}\n space={0}\n className=\"dnb-flex-container__hr\"\n />\n\n {renderWithSpacing(child, {\n space: { [start]: startSpacing, [end]: endSpacing },\n })}\n\n {divider === 'line-framed' && isLast && (\n <Hr\n top={spaceAboveLine}\n space={0}\n className=\"dnb-flex-container__hr\"\n />\n )}\n </React.Fragment>\n )\n }\n\n // No space above first element.\n if (isFirst && direction !== 'horizontal') {\n startSpacing = 0\n } else {\n // Since top space of current and bottom space of previous component is the same\n startSpacing =\n getSpaceValue(start, child) ??\n getSpaceValue(end, previousChild) ??\n gap ??\n spacing\n }\n\n if (\n React.isValidElement(previousChild) &&\n previousChild?.type?.['_supportsSpacingProps'] === false\n ) {\n startSpacing = 0\n }\n\n const space =\n direction === 'horizontal'\n ? { [start]: endSpacing, [end]: startSpacing }\n : { [start]: startSpacing, [end]: endSpacing }\n\n return renderWithSpacing(child, {\n key: child?.['key'] || `element-${i}`,\n space,\n })\n })\n\n const n = 'dnb-flex-container'\n const getRowGapClass = useCallback(() => {\n if (rowGap === false) {\n return `${n}--row-gap-off`\n }\n\n if (\n rowGap === true ||\n (!rowGap && wrap && direction === 'horizontal')\n ) {\n return `${n}--row-gap-small`\n }\n\n if (hasSizeProp && spacing) {\n return `${n}--row-gap-${spacing}`\n }\n\n if (rowGap) {\n return `${n}--row-gap-${rowGap}`\n }\n }, [direction, hasSizeProp, rowGap, spacing, wrap])\n\n const cn = classnames(\n 'dnb-flex-container',\n direction && `${n}--direction-${direction}`,\n justify && `${n}--justify-${justify}`,\n align && `${n}--align-${align}`,\n alignSelf && `${n}--align-self-${alignSelf}`,\n spacing && `${n}--spacing-${spacing}`,\n wrap && `${n}--wrap`,\n getRowGapClass(),\n hasSizeProp && `${n}--has-size`,\n divider && `${n}--divider-${divider}`,\n className\n )\n\n return (\n <Space\n element={element}\n className={cn}\n data-media-key={mediaKey}\n style={\n hasSizeProp\n ? ({ '--sizeCount': sizeCount, ...style } as React.CSSProperties)\n : style\n }\n {...rest}\n >\n {content}\n </Space>\n )\n}\n\nfunction wrapChildren(props: Props, children: React.ReactNode) {\n return React.Children.toArray(children).map((child) => {\n if (\n React.isValidElement(child) &&\n child.type['_supportsSpacingProps'] === 'children'\n ) {\n return React.cloneElement(\n child,\n child.props,\n <FlexContainer {...props}>{child.props.children}</FlexContainer>\n )\n }\n\n return child\n })\n}\n\nFlexContainer._supportsSpacingProps = true\n\nexport default FlexContainer\n"],"mappings":"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"}
1
+ {"version":3,"file":"Container.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Space","_elements","_useMedia","_utils","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","propNames","pickFlexContainerProps","props","defaults","skip","fromEntries","entries","_ref","includes","FlexContainer","_ref2","className","style","children","element","direction","wrap","sizeCount","rowGap","justify","align","alignSelf","divider","gap","spacing","spacingProp","breakpoints","queries","rest","childrenArray","wrapChildren","hasHeading","some","child","previousChild","isHeadingElement","hasSizeProp","_child$props","size","mediaKey","useMedia","disabled","content","map","_previousChild$type","isFirst","isLast","isHeading","start","end","endSpacing","startSpacing","_getSpaceValue","_getSpaceValue2","spaceAboveLine","getSpaceValue","createElement","Fragment","Hr","top","space","renderWithSpacing","_ref3","_getSpaceValue3","React","isValidElement","type","n","getRowGapClass","useCallback","cn","classnames","Children","toArray","cloneElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/flex/Container.tsx"],"sourcesContent":["import React, { useCallback } from 'react'\nimport classnames from 'classnames'\nimport Space, { SpaceProps } from '../space/Space'\nimport { Hr } from '../../elements'\nimport useMedia from '../../shared/useMedia'\nimport {\n getSpaceValue,\n isHeadingElement,\n renderWithSpacing,\n} from './utils'\n\nimport type { MediaQueryBreakpoints } from '../../shared/MediaQueryUtils'\nimport type { SpaceType } from '../space/types'\nimport type { UseMediaQueries } from '../../shared/useMedia'\nimport type { End, Start } from './types'\n\ntype Gap =\n | false\n | 'xx-small'\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n\nexport type BasicProps = {\n direction?: 'horizontal' | 'vertical'\n wrap?: boolean\n rowGap?: 'small' | 'medium' | 'large' | boolean\n sizeCount?: number\n justify?:\n | 'flex-start'\n | 'flex-end'\n | 'center'\n | 'space-between'\n | 'space-around'\n | 'space-evenly'\n align?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'\n /** For when used as a flex item in an outer container in addition to being a container: */\n alignSelf?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch'\n /** When \"line-framed\" is used, a line will be shown between items and above the first and below the last item */\n divider?: 'space' | 'line' | 'line-framed'\n /** Spacing between items inside */\n gap?: Gap\n /** @deprecated Use `gap` instead */\n spacing?: Gap\n breakpoints?: MediaQueryBreakpoints\n queries?: UseMediaQueries\n}\n\nexport type Props = BasicProps &\n SpaceProps &\n Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'ref' | 'wrap' | 'value' | 'label' | 'title' | 'placeholder'\n >\n\nconst propNames: Array<keyof Props> = [\n 'direction',\n 'wrap',\n 'justify',\n 'align',\n 'divider',\n 'spacing',\n 'gap',\n]\n\nexport function pickFlexContainerProps<T extends Props>(\n props: T,\n defaults: Partial<Props> = {},\n skip: Array<keyof Props> = []\n): Omit<Props, 'children'> {\n return {\n ...defaults,\n ...Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n propNames.includes(key as keyof Props) &&\n !skip.includes(key as keyof Props)\n )\n ),\n }\n}\n\nfunction FlexContainer(props: Props) {\n const {\n className,\n style,\n children,\n element = 'div',\n direction = 'horizontal',\n wrap = true,\n sizeCount = 12,\n rowGap,\n justify = 'flex-start',\n align = 'flex-start',\n alignSelf,\n divider = 'space',\n gap,\n spacing: spacingProp,\n breakpoints,\n queries,\n ...rest\n } = props\n\n const spacing = spacingProp ?? gap ?? 'small'\n\n const childrenArray = wrapChildren(props, children)\n const hasHeading = childrenArray.some((child, i) => {\n const previousChild = childrenArray?.[i - 1]\n return (\n isHeadingElement(child) || (i > 0 && isHeadingElement(previousChild))\n )\n })\n const hasSizeProp =\n !hasHeading &&\n direction === 'horizontal' &&\n childrenArray.some((child) => child['props']?.size)\n\n const { key: mediaKey } = useMedia({\n disabled: !hasSizeProp,\n breakpoints,\n queries,\n })\n\n const content = childrenArray.map((child, i) => {\n // Set spacing on child components by props (instead of CSS) to be able to dynamically override by props on each child. The default\n // is the spacing-props that controls space between children. Then override with props sent to the children, including both top\n // and bottom when th\n const isFirst = i === 0\n const isLast = i >= childrenArray.length - 1\n const previousChild = childrenArray?.[i - 1]\n const isHeading = hasHeading && isHeadingElement(previousChild)\n\n // Always set spacing between elements in the vertical layout on the top props, and 0 on bottom, to avoid\n // having to divide spacing between both with smaller values.\n const start: Start = direction === 'horizontal' ? 'left' : 'top'\n const end: End = direction === 'horizontal' ? 'right' : 'bottom'\n // const start: Start | End = direction === 'horizontal' ? 'right' : 'top'\n // const end: Start | End = direction === 'horizontal' ? 'left' : 'bottom'\n const endSpacing = 0\n let startSpacing = null\n\n if (\n // No line above heading\n !isHeading &&\n ((divider === 'line' && !isFirst) || divider === 'line-framed')\n ) {\n const spaceAboveLine = getSpaceValue(end, previousChild) ?? spacing\n startSpacing = (getSpaceValue(start, child) ?? spacing) as SpaceType\n\n return (\n <React.Fragment key={`element-${i}`}>\n <Hr\n top={!isFirst ? spaceAboveLine : 0}\n space={0}\n className=\"dnb-flex-container__hr\"\n />\n\n {renderWithSpacing(child, {\n space: { [start]: startSpacing, [end]: endSpacing },\n })}\n\n {divider === 'line-framed' && isLast && (\n <Hr\n top={spaceAboveLine}\n space={0}\n className=\"dnb-flex-container__hr\"\n />\n )}\n </React.Fragment>\n )\n }\n\n // No space above first element.\n if (isFirst && direction !== 'horizontal') {\n startSpacing = 0\n } else {\n // Since top space of current and bottom space of previous component is the same\n startSpacing =\n getSpaceValue(start, child) ??\n getSpaceValue(end, previousChild) ??\n spacing\n }\n\n if (\n React.isValidElement(previousChild) &&\n previousChild?.type?.['_supportsSpacingProps'] === false\n ) {\n startSpacing = 0\n }\n\n const space =\n direction === 'horizontal'\n ? { [start]: endSpacing, [end]: startSpacing }\n : { [start]: startSpacing, [end]: endSpacing }\n\n return renderWithSpacing(child, {\n key: child?.['key'] || `element-${i}`,\n space,\n })\n })\n\n const n = 'dnb-flex-container'\n const getRowGapClass = useCallback(() => {\n if (rowGap === false) {\n return `${n}--row-gap-off`\n }\n\n if (\n rowGap === true ||\n (!rowGap && wrap && direction === 'horizontal')\n ) {\n return `${n}--row-gap-small`\n }\n\n if (hasSizeProp && spacing) {\n return `${n}--row-gap-${spacing}`\n }\n\n if (rowGap) {\n return `${n}--row-gap-${rowGap}`\n }\n }, [direction, hasSizeProp, rowGap, spacing, wrap])\n\n const cn = classnames(\n 'dnb-flex-container',\n direction && `${n}--direction-${direction}`,\n justify && `${n}--justify-${justify}`,\n align && `${n}--align-${align}`,\n alignSelf && `${n}--align-self-${alignSelf}`,\n spacing && `${n}--spacing-${spacing}`,\n wrap && `${n}--wrap`,\n getRowGapClass(),\n hasSizeProp && `${n}--has-size`,\n divider && `${n}--divider-${divider}`,\n className\n )\n\n return (\n <Space\n element={element}\n className={cn}\n data-media-key={mediaKey}\n style={\n hasSizeProp\n ? ({ '--sizeCount': sizeCount, ...style } as React.CSSProperties)\n : style\n }\n {...rest}\n >\n {content}\n </Space>\n )\n}\n\nfunction wrapChildren(props: Props, children: React.ReactNode) {\n return React.Children.toArray(children).map((child) => {\n if (\n React.isValidElement(child) &&\n child.type['_supportsSpacingProps'] === 'children'\n ) {\n return React.cloneElement(\n child,\n child.props,\n <FlexContainer {...props}>{child.props.children}</FlexContainer>\n )\n }\n\n return child\n })\n}\n\nFlexContainer._supportsSpacingProps = true\n\nexport default FlexContainer\n"],"mappings":"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"}
@@ -7,8 +7,8 @@ export type Media = {
7
7
  };
8
8
  export type BasicProps = {
9
9
  columns?: Media | Columns;
10
- rowGap?: 'small' | 'medium' | 'large' | boolean;
11
- columnGap?: 'small' | 'medium' | 'large' | boolean;
10
+ rowGap?: 'x-small' | 'small' | 'medium' | 'large' | boolean;
11
+ columnGap?: 'x-small' | 'small' | 'medium' | 'large' | boolean;
12
12
  };
13
13
  export type AllProps = BasicProps & SpaceAllProps;
14
14
  declare function GridContainer(props: AllProps): import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Container.js","names":["_react","_interopRequireDefault","require","_classnames","_Space","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","GridContainer","props","columns","rowGap","columnGap","style","className","children","element","rest","styleObj","compute","n","unsetClasses","prop","disableClass","replace","cn","classnames","createElement","_supportsSpacingProps","_default","exports","result","small","medium","large","media","_columns"],"sources":["../../../../src/components/grid/Container.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Space, { SpaceAllProps } from '../space/Space'\n\nexport type Columns = number\n\nexport type Media = {\n small?: Columns | false\n medium?: Columns | false\n large?: Columns | false\n}\n\nexport type BasicProps = {\n columns?: Media | Columns\n rowGap?: 'small' | 'medium' | 'large' | boolean\n columnGap?: 'small' | 'medium' | 'large' | boolean\n}\n\nexport type AllProps = BasicProps & SpaceAllProps\n\nfunction GridContainer(props: AllProps) {\n const {\n columns,\n rowGap,\n columnGap,\n style,\n className,\n children,\n element = 'div',\n ...rest\n } = props\n\n const styleObj = {\n ...compute(columns),\n ...style,\n }\n\n const n = 'dnb-grid-container'\n\n const unsetClasses = []\n for (const prop in styleObj) {\n if (styleObj[prop] === 'unset') {\n const disableClass = `${n}__disabled--${prop.replace(\n /--([a-z]+)-.*/,\n '$1'\n )}`\n unsetClasses.push(disableClass)\n }\n }\n\n const cn = classnames(\n n,\n className,\n columnGap &&\n `${n}--column-gap-${columnGap === true ? 'small' : columnGap}`,\n rowGap && `${n}--row-gap-${rowGap === true ? 'small' : rowGap}`,\n unsetClasses\n )\n\n return (\n <Space element={element} className={cn} style={styleObj} {...rest}>\n {children}\n </Space>\n )\n}\n\nGridContainer._supportsSpacingProps = true\n\nexport default GridContainer\n\nfunction compute(columns) {\n if (!columns) {\n return null\n }\n\n const result = {}\n\n if (typeof columns === 'number') {\n columns = {\n small: columns,\n medium: columns,\n large: columns,\n }\n }\n\n for (const media in columns) {\n const value = columns?.[media]\n result[`--${media}-columns`] = value || 'unset'\n }\n\n return result\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Container.js","names":["_react","_interopRequireDefault","require","_classnames","_Space","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","GridContainer","props","columns","rowGap","columnGap","style","className","children","element","rest","styleObj","compute","n","unsetClasses","prop","disableClass","replace","cn","classnames","createElement","_supportsSpacingProps","_default","exports","result","small","medium","large","media","_columns"],"sources":["../../../../src/components/grid/Container.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Space, { SpaceAllProps } from '../space/Space'\n\nexport type Columns = number\n\nexport type Media = {\n small?: Columns | false\n medium?: Columns | false\n large?: Columns | false\n}\n\nexport type BasicProps = {\n columns?: Media | Columns\n rowGap?: 'x-small' | 'small' | 'medium' | 'large' | boolean\n columnGap?: 'x-small' | 'small' | 'medium' | 'large' | boolean\n}\n\nexport type AllProps = BasicProps & SpaceAllProps\n\nfunction GridContainer(props: AllProps) {\n const {\n columns,\n rowGap,\n columnGap,\n style,\n className,\n children,\n element = 'div',\n ...rest\n } = props\n\n const styleObj = {\n ...compute(columns),\n ...style,\n }\n\n const n = 'dnb-grid-container'\n\n const unsetClasses = []\n for (const prop in styleObj) {\n if (styleObj[prop] === 'unset') {\n const disableClass = `${n}__disabled--${prop.replace(\n /--([a-z]+)-.*/,\n '$1'\n )}`\n unsetClasses.push(disableClass)\n }\n }\n\n const cn = classnames(\n n,\n className,\n columnGap &&\n `${n}--column-gap-${columnGap === true ? 'small' : columnGap}`,\n rowGap && `${n}--row-gap-${rowGap === true ? 'small' : rowGap}`,\n unsetClasses\n )\n\n return (\n <Space element={element} className={cn} style={styleObj} {...rest}>\n {children}\n </Space>\n )\n}\n\nGridContainer._supportsSpacingProps = true\n\nexport default GridContainer\n\nfunction compute(columns) {\n if (!columns) {\n return null\n }\n\n const result = {}\n\n if (typeof columns === 'number') {\n columns = {\n small: columns,\n medium: columns,\n large: columns,\n }\n }\n\n for (const media in columns) {\n const value = columns?.[media]\n result[`--${media}-columns`] = value || 'unset'\n }\n\n return result\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { PropertiesTableProps } from '../../shared/types';
2
+ export declare const GridContainerProperties: PropertiesTableProps;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.GridContainerProperties = void 0;
7
+ const GridContainerProperties = {
8
+ columns: {
9
+ doc: 'Define how many columns your layout should be divided in. Can be just a number `columns={12}` or an object with media query sizes like `columns={{ small: 4, medium: 6, large: 12 }}` (default values). You can also disabled CSS Grid by providing `false` for one size, like so `columns={{ small: 4, medium: false, large: 12 }}`.',
10
+ type: ['number', 'object'],
11
+ status: 'optional'
12
+ },
13
+ rowGap: {
14
+ doc: 'Defines how much the gap between rows should be. Can be `large`, `medium`, `small`, `x-small` or `false` for no gap. Defaults to `false`.',
15
+ type: ['string', 'false'],
16
+ status: 'optional'
17
+ },
18
+ columnsGap: {
19
+ doc: 'Defines how much the gap between columns should be. Can be `large`, `medium`, `small`, `x-small` or `false` for no gap. Defaults to `false`.',
20
+ type: ['string', 'false'],
21
+ status: 'optional'
22
+ },
23
+ element: {
24
+ doc: 'Define the type of element. Defaults to `div`.',
25
+ type: ['string', 'React.Element'],
26
+ status: 'optional'
27
+ }
28
+ };
29
+ exports.GridContainerProperties = GridContainerProperties;
30
+ //# sourceMappingURL=ContainerDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContainerDocs.js","names":["GridContainerProperties","columns","doc","type","status","rowGap","columnsGap","element","exports"],"sources":["../../../../src/components/grid/ContainerDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const GridContainerProperties: PropertiesTableProps = {\n columns: {\n doc: 'Define how many columns your layout should be divided in. Can be just a number `columns={12}` or an object with media query sizes like `columns={{ small: 4, medium: 6, large: 12 }}` (default values). You can also disabled CSS Grid by providing `false` for one size, like so `columns={{ small: 4, medium: false, large: 12 }}`.',\n type: ['number', 'object'],\n status: 'optional',\n },\n rowGap: {\n doc: 'Defines how much the gap between rows should be. Can be `large`, `medium`, `small`, `x-small` or `false` for no gap. Defaults to `false`.',\n type: ['string', 'false'],\n status: 'optional',\n },\n columnsGap: {\n doc: 'Defines how much the gap between columns should be. Can be `large`, `medium`, `small`, `x-small` or `false` for no gap. Defaults to `false`.',\n type: ['string', 'false'],\n status: 'optional',\n },\n element: {\n doc: 'Define the type of element. Defaults to `div`.',\n type: ['string', 'React.Element'],\n status: 'optional',\n },\n}\n"],"mappings":";;;;;;AAEO,MAAMA,uBAA6C,GAAG;EAC3DC,OAAO,EAAE;IACPC,GAAG,EAAE,uUAAuU;IAC5UC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV,CAAC;EACDC,MAAM,EAAE;IACNH,GAAG,EAAE,2IAA2I;IAChJC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDE,UAAU,EAAE;IACVJ,GAAG,EAAE,8IAA8I;IACnJC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDG,OAAO,EAAE;IACPL,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC;IACjCC,MAAM,EAAE;EACV;AACF,CAAC;AAAAI,OAAA,CAAAR,uBAAA,GAAAA,uBAAA"}
@@ -10,6 +10,9 @@
10
10
  column-gap: var(--column-gap, 0);
11
11
  --grid-columns: var(--small-columns, 4);
12
12
  }
13
+ .dnb-grid-container--row-gap-x-small {
14
+ --row-gap: var(--spacing-x-small);
15
+ }
13
16
  .dnb-grid-container--row-gap-small {
14
17
  --row-gap: var(--spacing-small);
15
18
  }
@@ -19,6 +22,9 @@
19
22
  .dnb-grid-container--row-gap-large {
20
23
  --row-gap: var(--spacing-large);
21
24
  }
25
+ .dnb-grid-container--column-gap-x-small {
26
+ --column-gap: var(--spacing-x-small);
27
+ }
22
28
  .dnb-grid-container--column-gap-small {
23
29
  --column-gap: var(--spacing-small);
24
30
  }
@@ -1 +1 @@
1
- .dnb-grid-container{--grid-columns:var(--small-columns,4);-moz-column-gap:var(--column-gap,0);column-gap:var(--column-gap,0);display:grid;grid-auto-flow:dense;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));row-gap:var(--row-gap,0)}.dnb-grid-container--row-gap-small{--row-gap:var(--spacing-small)}.dnb-grid-container--row-gap-medium{--row-gap:var(--spacing-medium)}.dnb-grid-container--row-gap-large{--row-gap:var(--spacing-large)}.dnb-grid-container--column-gap-small{--column-gap:var(--spacing-small)}.dnb-grid-container--column-gap-medium{--column-gap:var(--spacing-medium)}.dnb-grid-container--column-gap-large{--column-gap:var(--spacing-large)}@media screen and (min-width:40em){.dnb-grid-container{--grid-columns:var(--medium-columns,6)}}@media screen and (min-width:60em){.dnb-grid-container{--grid-columns:var(--large-columns,12)}}@media screen and (max-width:60em){.dnb-grid-container__disabled--small{display:unset}}@media screen and (min-width:40em) and (max-width:60em){.dnb-grid-container__disabled--medium{display:unset}}@media screen and (min-width:72em){.dnb-grid-container{--grid-columns:var(--large-columns,12)}.dnb-grid-container__disabled--large{display:unset}}.dnb-grid-item{--start-c:var(--small-c-s,1);--end-c:var(--small-c-e,calc(var(--grid-columns) + 1));grid-column:var(--start-c)/var(--end-c)}@media screen and (min-width:40em){.dnb-grid-item{--start-c:var(--medium-c-s,1);--end-c:var(--medium-c-e,calc(var(--grid-columns) + 1))}}@media screen and (min-width:60em){.dnb-grid-item{--start-c:var(--large-c-s,1);--end-c:var(--large-c-e,calc(var(--grid-columns) + 1))}}.dnb-grid-item--full-width{--start-c:0;--end-c:var(--grid-columns)}
1
+ .dnb-grid-container{--grid-columns:var(--small-columns,4);-moz-column-gap:var(--column-gap,0);column-gap:var(--column-gap,0);display:grid;grid-auto-flow:dense;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));row-gap:var(--row-gap,0)}.dnb-grid-container--row-gap-x-small{--row-gap:var(--spacing-x-small)}.dnb-grid-container--row-gap-small{--row-gap:var(--spacing-small)}.dnb-grid-container--row-gap-medium{--row-gap:var(--spacing-medium)}.dnb-grid-container--row-gap-large{--row-gap:var(--spacing-large)}.dnb-grid-container--column-gap-x-small{--column-gap:var(--spacing-x-small)}.dnb-grid-container--column-gap-small{--column-gap:var(--spacing-small)}.dnb-grid-container--column-gap-medium{--column-gap:var(--spacing-medium)}.dnb-grid-container--column-gap-large{--column-gap:var(--spacing-large)}@media screen and (min-width:40em){.dnb-grid-container{--grid-columns:var(--medium-columns,6)}}@media screen and (min-width:60em){.dnb-grid-container{--grid-columns:var(--large-columns,12)}}@media screen and (max-width:60em){.dnb-grid-container__disabled--small{display:unset}}@media screen and (min-width:40em) and (max-width:60em){.dnb-grid-container__disabled--medium{display:unset}}@media screen and (min-width:72em){.dnb-grid-container{--grid-columns:var(--large-columns,12)}.dnb-grid-container__disabled--large{display:unset}}.dnb-grid-item{--start-c:var(--small-c-s,1);--end-c:var(--small-c-e,calc(var(--grid-columns) + 1));grid-column:var(--start-c)/var(--end-c)}@media screen and (min-width:40em){.dnb-grid-item{--start-c:var(--medium-c-s,1);--end-c:var(--medium-c-e,calc(var(--grid-columns) + 1))}}@media screen and (min-width:60em){.dnb-grid-item{--start-c:var(--large-c-s,1);--end-c:var(--large-c-e,calc(var(--grid-columns) + 1))}}.dnb-grid-item--full-width{--start-c:0;--end-c:var(--grid-columns)}
@@ -7,6 +7,9 @@
7
7
  row-gap: var(--row-gap, 0);
8
8
  column-gap: var(--column-gap, 0);
9
9
 
10
+ &--row-gap-x-small {
11
+ --row-gap: var(--spacing-x-small);
12
+ }
10
13
  &--row-gap-small {
11
14
  --row-gap: var(--spacing-small);
12
15
  }
@@ -17,6 +20,9 @@
17
20
  --row-gap: var(--spacing-large);
18
21
  }
19
22
 
23
+ &--column-gap-x-small {
24
+ --column-gap: var(--spacing-x-small);
25
+ }
20
26
  &--column-gap-small {
21
27
  --column-gap: var(--spacing-small);
22
28
  }
@@ -0,0 +1,3 @@
1
+ import { PropertiesTableProps } from '../../shared/types';
2
+ export declare const SliderProperties: PropertiesTableProps;
3
+ export declare const SliderEvents: PropertiesTableProps;
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SliderProperties = exports.SliderEvents = void 0;
7
+ const SliderProperties = {
8
+ value: {
9
+ doc: 'The `value` of the slider as a number or an array. If an array with numbers is provided, each number will represent a thumb button (the `+` and `-` button will be hidden on multiple thumbs).',
10
+ type: ['number', 'Array<number>'],
11
+ status: 'required'
12
+ },
13
+ min: {
14
+ doc: 'The minimum value. Can be a negative number as well. Defaults to `0`.',
15
+ type: 'number',
16
+ status: 'optional'
17
+ },
18
+ max: {
19
+ doc: 'The maximum value. Defaults to `100`.',
20
+ type: 'number',
21
+ status: 'optional'
22
+ },
23
+ step: {
24
+ doc: 'The steps the slider takes on changing the value. Defaults to `null`.',
25
+ type: 'number',
26
+ status: 'optional'
27
+ },
28
+ vertical: {
29
+ doc: 'Show the slider vertically. Defaults to `false`.',
30
+ type: 'boolean',
31
+ status: 'optional'
32
+ },
33
+ reverse: {
34
+ doc: 'Show the slider reversed. Defaults to `false`.',
35
+ type: 'boolean',
36
+ status: 'optional'
37
+ },
38
+ stretch: {
39
+ doc: 'If set to `true`, then the slider will be 100% in `width`.',
40
+ type: 'boolean',
41
+ status: 'optional'
42
+ },
43
+ hideButtons: {
44
+ doc: 'Removes the helper buttons. Defaults to `false`.',
45
+ type: 'boolean',
46
+ status: 'optional'
47
+ },
48
+ multiThumbBehavior: {
49
+ doc: 'Use either `omit`, `push` or `swap`. This property only works for two (range) or more thumb buttons, while `omit` will stop the thumb from swapping, `push` will push its nearest thumb along. Defaults to `swap`.',
50
+ type: 'string',
51
+ status: 'optional'
52
+ },
53
+ thumbTitle: {
54
+ doc: 'Give the slider thumb button a title for accessibility reasons. Defaults to `null`.',
55
+ type: 'string',
56
+ status: 'optional'
57
+ },
58
+ subtractTitle: {
59
+ doc: 'Give the subtract button a title for accessibility reasons. Defaults to `−`.',
60
+ type: 'string',
61
+ status: 'optional'
62
+ },
63
+ addTitle: {
64
+ doc: 'Give the add button a title for accessibility reasons. Defaults to `+`.',
65
+ type: 'string',
66
+ status: 'optional'
67
+ },
68
+ numberFormat: {
69
+ doc: 'Will extend the return object with a `number` property (from `onChange` event). You can use all the options from the [NumberFormat](/uilib/components/number-format/properties) component. It also will use that formatted number in the increase/decrease buttons. If it has to represent a currency, then use e.g. `numberFormat={{ currency: true, decimals: 0 }}`',
70
+ type: 'object',
71
+ status: 'optional'
72
+ },
73
+ tooltip: {
74
+ doc: 'Use `true` to show a tooltip on `mouseOver`, `touchStart` and `focus`, showing the current number (if `numberFormat` is given) or the raw value.',
75
+ type: 'boolean',
76
+ status: 'optional'
77
+ },
78
+ alwaysShowTooltip: {
79
+ doc: 'Use `true` to always show the tooltip, in addition to the `tooltip` property.',
80
+ type: 'boolean',
81
+ status: 'optional'
82
+ },
83
+ label: {
84
+ doc: 'Prepends the Form Label component. If no ID is provided, a random ID is created.',
85
+ type: 'string',
86
+ status: 'optional'
87
+ },
88
+ labelDirection: {
89
+ doc: 'Use `labelDirection="vertical"` to change the label layout direction. Defaults to `horizontal`.',
90
+ type: 'string',
91
+ status: 'optional'
92
+ },
93
+ labelSrOnly: {
94
+ doc: 'Use `true` to make the label only readable by screen readers.',
95
+ type: 'boolean',
96
+ status: 'optional'
97
+ },
98
+ status: {
99
+ doc: 'Text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.',
100
+ type: 'string',
101
+ status: 'optional'
102
+ },
103
+ statusState: {
104
+ doc: 'Defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`.',
105
+ type: 'string',
106
+ status: 'optional'
107
+ },
108
+ statusProps: {
109
+ doc: 'Use an object to define additional FormStatus properties.',
110
+ type: 'object',
111
+ status: 'optional'
112
+ },
113
+ globalStatusId: {
114
+ doc: 'The `status_id` used for the target [GlobalStatus](/uilib/components/global-status).',
115
+ type: 'string',
116
+ status: 'optional'
117
+ },
118
+ suffix: {
119
+ doc: 'Text describing the content of the Slider more than the label. You can also send in a React component, so it gets wrapped inside the Slider component.',
120
+ type: 'string',
121
+ status: 'optional'
122
+ },
123
+ skeleton: {
124
+ doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',
125
+ type: 'boolean',
126
+ status: 'optional'
127
+ },
128
+ extensions: {
129
+ doc: 'Makes it possible to display overlays with other functionality such as a marker on the slider marking a given value.',
130
+ type: 'object',
131
+ status: 'optional'
132
+ },
133
+ '[Space](/uilib/layout/space/properties)': {
134
+ doc: 'Spacing properties like `top` or `bottom` are supported.',
135
+ type: ['string', 'object'],
136
+ status: 'optional'
137
+ }
138
+ };
139
+ exports.SliderProperties = SliderProperties;
140
+ const SliderEvents = {
141
+ onChange: {
142
+ doc: 'will be called on state changes made by the user. The callback `value` and `rawValue` is a number `{ value, rawValue, event }`. But if the prop `numberFormat` is given, then it will return an additional `number` with the given format `{ value, number, rawValue, event }`.',
143
+ type: 'function',
144
+ status: 'optional'
145
+ },
146
+ onDragStart: {
147
+ doc: 'will be called once the user stops dragging. Returns `{ event }`.',
148
+ type: 'function',
149
+ status: 'optional'
150
+ },
151
+ onDragEnd: {
152
+ doc: 'will be called once the user starts dragging. Returns `{ event }`.',
153
+ type: 'function',
154
+ status: 'optional'
155
+ }
156
+ };
157
+ exports.SliderEvents = SliderEvents;
158
+ //# sourceMappingURL=SliderDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SliderDocs.js","names":["SliderProperties","value","doc","type","status","min","max","step","vertical","reverse","stretch","hideButtons","multiThumbBehavior","thumbTitle","subtractTitle","addTitle","numberFormat","tooltip","alwaysShowTooltip","label","labelDirection","labelSrOnly","statusState","statusProps","globalStatusId","suffix","skeleton","extensions","exports","SliderEvents","onChange","onDragStart","onDragEnd"],"sources":["../../../../src/components/slider/SliderDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const SliderProperties: PropertiesTableProps = {\n value: {\n doc: 'The `value` of the slider as a number or an array. If an array with numbers is provided, each number will represent a thumb button (the `+` and `-` button will be hidden on multiple thumbs).',\n type: ['number', 'Array<number>'],\n status: 'required',\n },\n min: {\n doc: 'The minimum value. Can be a negative number as well. Defaults to `0`.',\n type: 'number',\n status: 'optional',\n },\n max: {\n doc: 'The maximum value. Defaults to `100`.',\n type: 'number',\n status: 'optional',\n },\n step: {\n doc: 'The steps the slider takes on changing the value. Defaults to `null`.',\n type: 'number',\n status: 'optional',\n },\n vertical: {\n doc: 'Show the slider vertically. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n reverse: {\n doc: 'Show the slider reversed. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n stretch: {\n doc: 'If set to `true`, then the slider will be 100% in `width`.',\n type: 'boolean',\n status: 'optional',\n },\n hideButtons: {\n doc: 'Removes the helper buttons. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n multiThumbBehavior: {\n doc: 'Use either `omit`, `push` or `swap`. This property only works for two (range) or more thumb buttons, while `omit` will stop the thumb from swapping, `push` will push its nearest thumb along. Defaults to `swap`.',\n type: 'string',\n status: 'optional',\n },\n thumbTitle: {\n doc: 'Give the slider thumb button a title for accessibility reasons. Defaults to `null`.',\n type: 'string',\n status: 'optional',\n },\n subtractTitle: {\n doc: 'Give the subtract button a title for accessibility reasons. Defaults to `−`.',\n type: 'string',\n status: 'optional',\n },\n addTitle: {\n doc: 'Give the add button a title for accessibility reasons. Defaults to `+`.',\n type: 'string',\n status: 'optional',\n },\n numberFormat: {\n doc: 'Will extend the return object with a `number` property (from `onChange` event). You can use all the options from the [NumberFormat](/uilib/components/number-format/properties) component. It also will use that formatted number in the increase/decrease buttons. If it has to represent a currency, then use e.g. `numberFormat={{ currency: true, decimals: 0 }}`',\n type: 'object',\n status: 'optional',\n },\n tooltip: {\n doc: 'Use `true` to show a tooltip on `mouseOver`, `touchStart` and `focus`, showing the current number (if `numberFormat` is given) or the raw value.',\n type: 'boolean',\n status: 'optional',\n },\n alwaysShowTooltip: {\n doc: 'Use `true` to always show the tooltip, in addition to the `tooltip` property.',\n type: 'boolean',\n status: 'optional',\n },\n label: {\n doc: 'Prepends the Form Label component. If no ID is provided, a random ID is created.',\n type: 'string',\n status: 'optional',\n },\n labelDirection: {\n doc: 'Use `labelDirection=\"vertical\"` to change the label layout direction. Defaults to `horizontal`.',\n type: 'string',\n status: 'optional',\n },\n labelSrOnly: {\n doc: 'Use `true` to make the label only readable by screen readers.',\n type: 'boolean',\n status: 'optional',\n },\n status: {\n doc: 'Text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.',\n type: 'string',\n status: 'optional',\n },\n statusState: {\n doc: 'Defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`.',\n type: 'string',\n status: 'optional',\n },\n statusProps: {\n doc: 'Use an object to define additional FormStatus properties.',\n type: 'object',\n status: 'optional',\n },\n globalStatusId: {\n doc: 'The `status_id` used for the target [GlobalStatus](/uilib/components/global-status).',\n type: 'string',\n status: 'optional',\n },\n suffix: {\n doc: 'Text describing the content of the Slider more than the label. You can also send in a React component, so it gets wrapped inside the Slider component.',\n type: 'string',\n status: 'optional',\n },\n skeleton: {\n doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',\n type: 'boolean',\n status: 'optional',\n },\n extensions: {\n doc: 'Makes it possible to display overlays with other functionality such as a marker on the slider marking a given value.',\n type: 'object',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const SliderEvents: PropertiesTableProps = {\n onChange: {\n doc: 'will be called on state changes made by the user. The callback `value` and `rawValue` is a number `{ value, rawValue, event }`. But if the prop `numberFormat` is given, then it will return an additional `number` with the given format `{ value, number, rawValue, event }`.',\n type: 'function',\n status: 'optional',\n },\n onDragStart: {\n doc: 'will be called once the user stops dragging. Returns `{ event }`.',\n type: 'function',\n status: 'optional',\n },\n onDragEnd: {\n doc: 'will be called once the user starts dragging. Returns `{ event }`.',\n type: 'function',\n status: 'optional',\n },\n}\n"],"mappings":";;;;;;AAEO,MAAMA,gBAAsC,GAAG;EACpDC,KAAK,EAAE;IACLC,GAAG,EAAE,gMAAgM;IACrMC,IAAI,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC;IACjCC,MAAM,EAAE;EACV,CAAC;EACDC,GAAG,EAAE;IACHH,GAAG,EAAE,uEAAuE;IAC5EC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,GAAG,EAAE;IACHJ,GAAG,EAAE,uCAAuC;IAC5CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,IAAI,EAAE;IACJL,GAAG,EAAE,uEAAuE;IAC5EC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDI,QAAQ,EAAE;IACRN,GAAG,EAAE,kDAAkD;IACvDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDK,OAAO,EAAE;IACPP,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDM,OAAO,EAAE;IACPR,GAAG,EAAE,4DAA4D;IACjEC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDO,WAAW,EAAE;IACXT,GAAG,EAAE,kDAAkD;IACvDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDQ,kBAAkB,EAAE;IAClBV,GAAG,EAAE,oNAAoN;IACzNC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDS,UAAU,EAAE;IACVX,GAAG,EAAE,qFAAqF;IAC1FC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDU,aAAa,EAAE;IACbZ,GAAG,EAAE,8EAA8E;IACnFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDW,QAAQ,EAAE;IACRb,GAAG,EAAE,yEAAyE;IAC9EC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDY,YAAY,EAAE;IACZd,GAAG,EAAE,uWAAuW;IAC5WC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDa,OAAO,EAAE;IACPf,GAAG,EAAE,kJAAkJ;IACvJC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDc,iBAAiB,EAAE;IACjBhB,GAAG,EAAE,+EAA+E;IACpFC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDe,KAAK,EAAE;IACLjB,GAAG,EAAE,kFAAkF;IACvFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDgB,cAAc,EAAE;IACdlB,GAAG,EAAE,iGAAiG;IACtGC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDiB,WAAW,EAAE;IACXnB,GAAG,EAAE,+DAA+D;IACpEC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDA,MAAM,EAAE;IACNF,GAAG,EAAE,yIAAyI;IAC9IC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDkB,WAAW,EAAE;IACXpB,GAAG,EAAE,0GAA0G;IAC/GC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDmB,WAAW,EAAE;IACXrB,GAAG,EAAE,2DAA2D;IAChEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDoB,cAAc,EAAE;IACdtB,GAAG,EAAE,sFAAsF;IAC3FC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDqB,MAAM,EAAE;IACNvB,GAAG,EAAE,wJAAwJ;IAC7JC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDsB,QAAQ,EAAE;IACRxB,GAAG,EAAE,wEAAwE;IAC7EC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDuB,UAAU,EAAE;IACVzB,GAAG,EAAE,sHAAsH;IAC3HC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC;AAAAwB,OAAA,CAAA5B,gBAAA,GAAAA,gBAAA;AAEM,MAAM6B,YAAkC,GAAG;EAChDC,QAAQ,EAAE;IACR5B,GAAG,EAAE,iRAAiR;IACtRC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACD2B,WAAW,EAAE;IACX7B,GAAG,EAAE,mEAAmE;IACxEC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACD4B,SAAS,EAAE;IACT9B,GAAG,EAAE,oEAAoE;IACzEC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV;AACF,CAAC;AAAAwB,OAAA,CAAAC,YAAA,GAAAA,YAAA"}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { Ajv } from '../utils/ajv';
3
- import { AllJSONSchemaVersions, CustomErrorMessagesWithPaths, SubmitState, Path, EventStateObject, EventReturnWithStateObject, Identifier, FieldProps, FormError } from '../types';
3
+ import { AllJSONSchemaVersions, CustomErrorMessagesWithPaths, SubmitState, Path, EventStateObject, EventReturnWithStateObject, Identifier, FieldProps, FormError, ValueProps } from '../types';
4
4
  import { Props as ProviderProps } from './Provider';
5
5
  type HandleSubmitProps = {
6
6
  formElement?: HTMLFormElement;
@@ -45,17 +45,14 @@ export interface ContextState {
45
45
  validateData: () => void;
46
46
  handleSubmit: (props?: HandleSubmitProps) => any;
47
47
  scrollToTop: () => void;
48
- showAllErrors: boolean;
49
48
  setShowAllErrors: (showAllErrors: boolean) => void;
50
49
  hasErrors: () => boolean;
51
50
  hasFieldState: (state: SubmitState) => boolean;
52
51
  hasFieldError: (path: Path) => boolean;
53
52
  setFieldState: (path: Path, fieldState: SubmitState) => void;
54
53
  setFieldError: (path: Path, error: Error | FormError) => void;
55
- fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>;
56
54
  handleMountField: (path: Path) => void;
57
55
  handleUnMountField: (path: Path) => void;
58
- formState: SubmitState;
59
56
  setFormState?: (state: SubmitState) => void;
60
57
  setSubmitState?: (state: EventStateObject) => void;
61
58
  handleSubmitCall: ({ onSubmit, enableAsyncBehaviour, skipFieldValidation, skipErrorCheck, }: {
@@ -65,7 +62,12 @@ export interface ContextState {
65
62
  skipErrorCheck?: boolean;
66
63
  }) => void;
67
64
  setFieldEventListener: (path: EventListenerCall['path'], type: EventListenerCall['type'], callback: EventListenerCall['callback']) => void;
68
- setProps: (path: Path, props: any) => void;
65
+ setFieldProps?: (path: Path, props: any) => void;
66
+ setValueProps?: (path: Path, props: any) => void;
67
+ fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>;
68
+ valuePropsRef?: React.MutableRefObject<Record<string, ValueProps>>;
69
+ showAllErrors: boolean;
70
+ formState: SubmitState;
69
71
  ajvInstance: Ajv;
70
72
  contextErrorMessages: CustomErrorMessagesWithPaths;
71
73
  schema: AllJSONSchemaVersions;
@@ -33,7 +33,6 @@ const defaultContextState = {
33
33
  hasFieldError: () => false,
34
34
  setFieldState: () => null,
35
35
  setFieldError: () => null,
36
- setProps: () => null,
37
36
  ajvInstance: (0, _ajv.makeAjvInstance)(),
38
37
  contextErrorMessages: undefined,
39
38
  isInsideFormElement: false,
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","names":["_react","_interopRequireDefault","require","_ajv","obj","__esModule","default","defaultContextState","hasContext","data","undefined","schema","submitState","handlePathChange","handlePathChangeUnvalidated","updateDataValue","setData","validateData","handleSubmit","scrollToTop","showAllErrors","formState","setFormState","setSubmitState","setFieldEventListener","handleSubmitCall","setShowAllErrors","handleMountField","handleUnMountField","hasErrors","hasFieldState","hasFieldError","setFieldState","setFieldError","setProps","ajvInstance","makeAjvInstance","contextErrorMessages","isInsideFormElement","props","exports","Context","React","createContext","_default"],"sources":["../../../../../src/extensions/forms/DataContext/Context.ts"],"sourcesContent":["import React from 'react'\nimport { Ajv, makeAjvInstance } from '../utils/ajv'\nimport {\n AllJSONSchemaVersions,\n CustomErrorMessagesWithPaths,\n SubmitState,\n Path,\n EventStateObject,\n EventReturnWithStateObject,\n Identifier,\n FieldProps,\n FormError,\n} from '../types'\nimport { Props as ProviderProps } from './Provider'\n\ntype HandleSubmitProps = {\n formElement?: HTMLFormElement\n}\n\nexport type EventListenerCall = {\n path: Path\n type: 'onSubmit'\n callback: () => any\n}\n\nexport type FilterDataHandler<Data> = (\n data: Data,\n filter: FilterData\n) => Partial<Data>\nexport type FilterDataHandlerCallback<R> = (\n parameters: FilterDataHandlerParameters\n) => R\nexport type FilterDataHandlerParameters =\n FilterDataPathConditionParameters & {\n path: Path\n }\nexport type FilterDataPathCondition<Data = unknown> = (\n parameters: FilterDataPathConditionParameters<Data>\n) => boolean | undefined\nexport type FilterDataPathConditionParameters<Data = unknown> = {\n value: unknown\n props: FieldProps\n data: Data\n internal: {\n error: Error | undefined\n }\n}\nexport type FilterDataPathObject<Data> = Record<\n Path,\n FilterDataPathCondition<Data> | boolean | undefined\n>\nexport type FilterData<Data = unknown> =\n | FilterDataPathObject<Data>\n | FilterDataHandlerCallback<boolean | undefined>\nexport type TransformData = FilterDataHandlerCallback<unknown>\n\nexport interface ContextState {\n id?: Identifier\n hasContext: boolean\n /** The dataset for the form / form wizard */\n data: any\n /** Should the form validate data before submitting? */\n errors?: Record<string, Error>\n /** Will set autoComplete=\"on\" on each nested Field.String and Field.Number */\n autoComplete?: boolean\n handlePathChange: (\n path: Path,\n value?: any\n ) =>\n | EventReturnWithStateObject\n | unknown\n | Promise<EventReturnWithStateObject | unknown>\n handlePathChangeUnvalidated: (path: Path, value: any) => void\n updateDataValue: (path: Path, value: any) => void\n setData: (data: any) => void\n mutateDataHandler?: (data: any, mutate: TransformData) => any\n filterDataHandler?: (data: any, filter: FilterData) => any\n validateData: () => void\n handleSubmit: (props?: HandleSubmitProps) => any\n scrollToTop: () => void\n // Error status\n showAllErrors: boolean\n setShowAllErrors: (showAllErrors: boolean) => void\n hasErrors: () => boolean\n hasFieldState: (state: SubmitState) => boolean\n hasFieldError: (path: Path) => boolean\n setFieldState: (path: Path, fieldState: SubmitState) => void\n setFieldError: (path: Path, error: Error | FormError) => void\n fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>\n handleMountField: (path: Path) => void\n handleUnMountField: (path: Path) => void\n formState: SubmitState\n setFormState?: (state: SubmitState) => void\n setSubmitState?: (state: EventStateObject) => void\n handleSubmitCall: ({\n onSubmit,\n enableAsyncBehaviour,\n skipFieldValidation,\n skipErrorCheck,\n }: {\n onSubmit: () =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n enableAsyncBehaviour: boolean\n skipFieldValidation?: boolean\n skipErrorCheck?: boolean\n }) => void\n setFieldEventListener: (\n path: EventListenerCall['path'],\n type: EventListenerCall['type'],\n callback: EventListenerCall['callback']\n ) => void\n setProps: (path: Path, props: any) => void\n ajvInstance: Ajv\n contextErrorMessages: CustomErrorMessagesWithPaths\n schema: AllJSONSchemaVersions\n disabled?: boolean\n required?: boolean\n submitState: Partial<EventStateObject>\n isInsideFormElement?: boolean\n prerenderFieldProps?: boolean\n props: ProviderProps<unknown>\n}\n\nexport const defaultContextState: ContextState = {\n hasContext: false,\n data: undefined,\n schema: undefined,\n submitState: undefined,\n handlePathChange: () => null,\n handlePathChangeUnvalidated: () => null,\n updateDataValue: () => null,\n setData: () => null,\n validateData: () => null,\n handleSubmit: () => null,\n scrollToTop: () => null,\n showAllErrors: false,\n formState: undefined,\n setFormState: () => null,\n setSubmitState: () => null,\n setFieldEventListener: () => null,\n handleSubmitCall: () => null,\n setShowAllErrors: () => null,\n handleMountField: () => null,\n handleUnMountField: () => null,\n hasErrors: () => false,\n hasFieldState: () => false,\n hasFieldError: () => false,\n setFieldState: () => null,\n setFieldError: () => null,\n setProps: () => null,\n ajvInstance: makeAjvInstance(),\n contextErrorMessages: undefined,\n isInsideFormElement: false,\n props: null,\n}\n\nconst Context = React.createContext<ContextState>(defaultContextState)\n\nexport default Context\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAAmD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AA4H5C,MAAMG,mBAAiC,GAAG;EAC/CC,UAAU,EAAE,KAAK;EACjBC,IAAI,EAAEC,SAAS;EACfC,MAAM,EAAED,SAAS;EACjBE,WAAW,EAAEF,SAAS;EACtBG,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,2BAA2B,EAAEA,CAAA,KAAM,IAAI;EACvCC,eAAe,EAAEA,CAAA,KAAM,IAAI;EAC3BC,OAAO,EAAEA,CAAA,KAAM,IAAI;EACnBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,WAAW,EAAEA,CAAA,KAAM,IAAI;EACvBC,aAAa,EAAE,KAAK;EACpBC,SAAS,EAAEX,SAAS;EACpBY,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,cAAc,EAAEA,CAAA,KAAM,IAAI;EAC1BC,qBAAqB,EAAEA,CAAA,KAAM,IAAI;EACjCC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,kBAAkB,EAAEA,CAAA,KAAM,IAAI;EAC9BC,SAAS,EAAEA,CAAA,KAAM,KAAK;EACtBC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,QAAQ,EAAEA,CAAA,KAAM,IAAI;EACpBC,WAAW,EAAE,IAAAC,oBAAe,EAAC,CAAC;EAC9BC,oBAAoB,EAAE3B,SAAS;EAC/B4B,mBAAmB,EAAE,KAAK;EAC1BC,KAAK,EAAE;AACT,CAAC;AAAAC,OAAA,CAAAjC,mBAAA,GAAAA,mBAAA;AAED,MAAMkC,OAAO,GAAGC,cAAK,CAACC,aAAa,CAAepC,mBAAmB,CAAC;AAAA,IAAAqC,QAAA,GAEvDH,OAAO;AAAAD,OAAA,CAAAlC,OAAA,GAAAsC,QAAA"}
1
+ {"version":3,"file":"Context.js","names":["_react","_interopRequireDefault","require","_ajv","obj","__esModule","default","defaultContextState","hasContext","data","undefined","schema","submitState","handlePathChange","handlePathChangeUnvalidated","updateDataValue","setData","validateData","handleSubmit","scrollToTop","showAllErrors","formState","setFormState","setSubmitState","setFieldEventListener","handleSubmitCall","setShowAllErrors","handleMountField","handleUnMountField","hasErrors","hasFieldState","hasFieldError","setFieldState","setFieldError","ajvInstance","makeAjvInstance","contextErrorMessages","isInsideFormElement","props","exports","Context","React","createContext","_default"],"sources":["../../../../../src/extensions/forms/DataContext/Context.ts"],"sourcesContent":["import React from 'react'\nimport { Ajv, makeAjvInstance } from '../utils/ajv'\nimport {\n AllJSONSchemaVersions,\n CustomErrorMessagesWithPaths,\n SubmitState,\n Path,\n EventStateObject,\n EventReturnWithStateObject,\n Identifier,\n FieldProps,\n FormError,\n ValueProps,\n} from '../types'\nimport { Props as ProviderProps } from './Provider'\n\ntype HandleSubmitProps = {\n formElement?: HTMLFormElement\n}\n\nexport type EventListenerCall = {\n path: Path\n type: 'onSubmit'\n callback: () => any\n}\n\nexport type FilterDataHandler<Data> = (\n data: Data,\n filter: FilterData\n) => Partial<Data>\nexport type FilterDataHandlerCallback<R> = (\n parameters: FilterDataHandlerParameters\n) => R\nexport type FilterDataHandlerParameters =\n FilterDataPathConditionParameters & {\n path: Path\n }\nexport type FilterDataPathCondition<Data = unknown> = (\n parameters: FilterDataPathConditionParameters<Data>\n) => boolean | undefined\nexport type FilterDataPathConditionParameters<Data = unknown> = {\n value: unknown\n props: FieldProps\n data: Data\n internal: {\n error: Error | undefined\n }\n}\nexport type FilterDataPathObject<Data> = Record<\n Path,\n FilterDataPathCondition<Data> | boolean | undefined\n>\nexport type FilterData<Data = unknown> =\n | FilterDataPathObject<Data>\n | FilterDataHandlerCallback<boolean | undefined>\nexport type TransformData = FilterDataHandlerCallback<unknown>\n\nexport interface ContextState {\n id?: Identifier\n hasContext: boolean\n /** The dataset for the form / form wizard */\n data: any\n /** Should the form validate data before submitting? */\n errors?: Record<string, Error>\n /** Will set autoComplete=\"on\" on each nested Field.String and Field.Number */\n autoComplete?: boolean\n handlePathChange: (\n path: Path,\n value?: any\n ) =>\n | EventReturnWithStateObject\n | unknown\n | Promise<EventReturnWithStateObject | unknown>\n handlePathChangeUnvalidated: (path: Path, value: any) => void\n updateDataValue: (path: Path, value: any) => void\n setData: (data: any) => void\n mutateDataHandler?: (data: any, mutate: TransformData) => any\n filterDataHandler?: (data: any, filter: FilterData) => any\n validateData: () => void\n handleSubmit: (props?: HandleSubmitProps) => any\n scrollToTop: () => void\n setShowAllErrors: (showAllErrors: boolean) => void\n hasErrors: () => boolean\n hasFieldState: (state: SubmitState) => boolean\n hasFieldError: (path: Path) => boolean\n setFieldState: (path: Path, fieldState: SubmitState) => void\n setFieldError: (path: Path, error: Error | FormError) => void\n handleMountField: (path: Path) => void\n handleUnMountField: (path: Path) => void\n setFormState?: (state: SubmitState) => void\n setSubmitState?: (state: EventStateObject) => void\n handleSubmitCall: ({\n onSubmit,\n enableAsyncBehaviour,\n skipFieldValidation,\n skipErrorCheck,\n }: {\n onSubmit: () =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n enableAsyncBehaviour: boolean\n skipFieldValidation?: boolean\n skipErrorCheck?: boolean\n }) => void\n setFieldEventListener: (\n path: EventListenerCall['path'],\n type: EventListenerCall['type'],\n callback: EventListenerCall['callback']\n ) => void\n setFieldProps?: (path: Path, props: any) => void\n setValueProps?: (path: Path, props: any) => void\n fieldPropsRef?: React.MutableRefObject<Record<string, FieldProps>>\n valuePropsRef?: React.MutableRefObject<Record<string, ValueProps>>\n showAllErrors: boolean\n formState: SubmitState\n ajvInstance: Ajv\n contextErrorMessages: CustomErrorMessagesWithPaths\n schema: AllJSONSchemaVersions\n disabled?: boolean\n required?: boolean\n submitState: Partial<EventStateObject>\n isInsideFormElement?: boolean\n prerenderFieldProps?: boolean\n props: ProviderProps<unknown>\n}\n\nexport const defaultContextState: ContextState = {\n hasContext: false,\n data: undefined,\n schema: undefined,\n submitState: undefined,\n handlePathChange: () => null,\n handlePathChangeUnvalidated: () => null,\n updateDataValue: () => null,\n setData: () => null,\n validateData: () => null,\n handleSubmit: () => null,\n scrollToTop: () => null,\n showAllErrors: false,\n formState: undefined,\n setFormState: () => null,\n setSubmitState: () => null,\n setFieldEventListener: () => null,\n handleSubmitCall: () => null,\n setShowAllErrors: () => null,\n handleMountField: () => null,\n handleUnMountField: () => null,\n hasErrors: () => false,\n hasFieldState: () => false,\n hasFieldError: () => false,\n setFieldState: () => null,\n setFieldError: () => null,\n ajvInstance: makeAjvInstance(),\n contextErrorMessages: undefined,\n isInsideFormElement: false,\n props: null,\n}\n\nconst Context = React.createContext<ContextState>(defaultContextState)\n\nexport default Context\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAAmD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AA8H5C,MAAMG,mBAAiC,GAAG;EAC/CC,UAAU,EAAE,KAAK;EACjBC,IAAI,EAAEC,SAAS;EACfC,MAAM,EAAED,SAAS;EACjBE,WAAW,EAAEF,SAAS;EACtBG,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,2BAA2B,EAAEA,CAAA,KAAM,IAAI;EACvCC,eAAe,EAAEA,CAAA,KAAM,IAAI;EAC3BC,OAAO,EAAEA,CAAA,KAAM,IAAI;EACnBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,WAAW,EAAEA,CAAA,KAAM,IAAI;EACvBC,aAAa,EAAE,KAAK;EACpBC,SAAS,EAAEX,SAAS;EACpBY,YAAY,EAAEA,CAAA,KAAM,IAAI;EACxBC,cAAc,EAAEA,CAAA,KAAM,IAAI;EAC1BC,qBAAqB,EAAEA,CAAA,KAAM,IAAI;EACjCC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,gBAAgB,EAAEA,CAAA,KAAM,IAAI;EAC5BC,kBAAkB,EAAEA,CAAA,KAAM,IAAI;EAC9BC,SAAS,EAAEA,CAAA,KAAM,KAAK;EACtBC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,KAAK;EAC1BC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,aAAa,EAAEA,CAAA,KAAM,IAAI;EACzBC,WAAW,EAAE,IAAAC,oBAAe,EAAC,CAAC;EAC9BC,oBAAoB,EAAE1B,SAAS;EAC/B2B,mBAAmB,EAAE,KAAK;EAC1BC,KAAK,EAAE;AACT,CAAC;AAAAC,OAAA,CAAAhC,mBAAA,GAAAA,mBAAA;AAED,MAAMiC,OAAO,GAAGC,cAAK,CAACC,aAAa,CAAenC,mBAAmB,CAAC;AAAA,IAAAoC,QAAA,GAEvDH,OAAO;AAAAD,OAAA,CAAAjC,OAAA,GAAAqC,QAAA"}