@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.
- package/CHANGELOG.md +23 -0
- package/cjs/components/flex/Container.js +4 -4
- package/cjs/components/flex/Container.js.map +1 -1
- package/cjs/components/grid/Container.d.ts +2 -2
- package/cjs/components/grid/Container.js.map +1 -1
- package/cjs/components/grid/ContainerDocs.d.ts +2 -0
- package/cjs/components/grid/ContainerDocs.js +30 -0
- package/cjs/components/grid/ContainerDocs.js.map +1 -0
- package/cjs/components/grid/style/dnb-grid.css +6 -0
- package/cjs/components/grid/style/dnb-grid.min.css +1 -1
- package/cjs/components/grid/style/grid-container.scss +6 -0
- package/cjs/components/slider/SliderDocs.d.ts +3 -0
- package/cjs/components/slider/SliderDocs.js +158 -0
- package/cjs/components/slider/SliderDocs.js.map +1 -0
- package/cjs/extensions/forms/DataContext/Context.d.ts +7 -5
- package/cjs/extensions/forms/DataContext/Context.js +0 -1
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +13 -3
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Field/Composition/Composition.d.ts +2 -2
- package/cjs/extensions/forms/Field/Composition/Composition.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/Number.js +3 -3
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.js +3 -3
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/Slider/Slider.d.ts +34 -0
- package/cjs/extensions/forms/Field/Slider/Slider.js +115 -0
- package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -0
- package/cjs/extensions/forms/Field/Slider/SliderDocs.d.ts +3 -0
- package/cjs/extensions/forms/Field/Slider/SliderDocs.js +34 -0
- package/cjs/extensions/forms/Field/Slider/SliderDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/Slider/index.d.ts +2 -0
- package/cjs/extensions/forms/Field/Slider/index.js +27 -0
- package/cjs/extensions/forms/Field/Slider/index.js.map +1 -0
- package/cjs/extensions/forms/Field/String/String.js +2 -2
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +7 -7
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/Field/index.d.ts +1 -0
- package/cjs/extensions/forms/Field/index.js +7 -0
- package/cjs/extensions/forms/Field/index.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +0 -1
- package/cjs/extensions/forms/Form/FieldProps/FieldProps.d.ts +19 -5
- package/cjs/extensions/forms/Form/FieldProps/FieldProps.js +52 -21
- package/cjs/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +1 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -1
- package/cjs/extensions/forms/Form/Section/Section.d.ts +44 -0
- package/cjs/extensions/forms/Form/Section/Section.js +67 -0
- package/cjs/extensions/forms/Form/Section/Section.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/SectionContext.d.ts +11 -0
- package/cjs/extensions/forms/Form/Section/SectionContext.js +12 -0
- package/cjs/extensions/forms/Form/Section/SectionContext.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/SectionDocs.d.ts +3 -0
- package/cjs/extensions/forms/Form/Section/SectionDocs.js +43 -0
- package/cjs/extensions/forms/Form/Section/SectionDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/index.d.ts +2 -0
- package/cjs/extensions/forms/Form/Section/index.js +27 -0
- package/cjs/extensions/forms/Form/Section/index.js.map +1 -0
- package/cjs/extensions/forms/Form/Visibility/Visibility.js +15 -9
- package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/cjs/extensions/forms/Form/data-context/useData.js +6 -2
- package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
- package/cjs/extensions/forms/Form/index.d.ts +1 -1
- package/cjs/extensions/forms/Form/index.js +7 -5
- package/cjs/extensions/forms/Form/index.js.map +1 -1
- package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +2 -2
- package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
- package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
- package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -2
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/cjs/extensions/forms/Tools/GenerateSchema.d.ts +19 -0
- package/cjs/extensions/forms/Tools/GenerateSchema.js +143 -0
- package/cjs/extensions/forms/Tools/GenerateSchema.js.map +1 -0
- package/cjs/extensions/forms/Tools/ListAllProps.d.ts +15 -0
- package/cjs/extensions/forms/Tools/ListAllProps.js +73 -0
- package/cjs/extensions/forms/Tools/ListAllProps.js.map +1 -0
- package/{es/extensions/forms/Form → cjs/extensions/forms}/Tools/index.d.ts +1 -0
- package/cjs/extensions/forms/{Form/Tools → Tools}/index.js +7 -0
- package/cjs/extensions/forms/Tools/index.js.map +1 -0
- package/cjs/extensions/forms/Value/Number/Number.js +4 -2
- package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/cjs/extensions/forms/blocks/Category/FirstBlock/FirstBlock.d.ts +2 -0
- package/cjs/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js +46 -0
- package/cjs/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js.map +1 -0
- package/cjs/extensions/forms/blocks/Category/FirstBlock/index.d.ts +2 -0
- package/cjs/extensions/forms/blocks/Category/FirstBlock/index.js +27 -0
- package/cjs/extensions/forms/blocks/Category/FirstBlock/index.js.map +1 -0
- package/cjs/extensions/forms/blocks/Category/index.d.ts +1 -0
- package/cjs/extensions/forms/blocks/Category/index.js +14 -0
- package/cjs/extensions/forms/blocks/Category/index.js.map +1 -0
- package/cjs/extensions/forms/blocks/index.d.ts +1 -0
- package/cjs/extensions/forms/blocks/index.js +11 -0
- package/cjs/extensions/forms/blocks/index.js.map +1 -0
- package/cjs/extensions/forms/hooks/index.d.ts +2 -5
- package/cjs/extensions/forms/hooks/index.js +12 -4
- package/cjs/extensions/forms/hooks/index.js.map +1 -1
- package/cjs/extensions/forms/hooks/useDataValue.d.ts +9 -0
- package/cjs/extensions/forms/hooks/useDataValue.js +39 -0
- package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -0
- package/cjs/extensions/forms/hooks/useExternalValue.d.ts +12 -0
- package/cjs/extensions/forms/hooks/useExternalValue.js +47 -0
- package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -0
- package/cjs/extensions/forms/hooks/useFieldProps.d.ts +1 -10
- package/cjs/extensions/forms/hooks/useFieldProps.js +60 -81
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/forms/hooks/usePath.d.ts +14 -0
- package/cjs/extensions/forms/hooks/usePath.js +72 -0
- package/cjs/extensions/forms/hooks/usePath.js.map +1 -0
- package/cjs/extensions/forms/hooks/useValueProps.js +17 -4
- package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/cjs/extensions/forms/index.d.ts +2 -0
- package/cjs/extensions/forms/index.js +4 -1
- package/cjs/extensions/forms/index.js.map +1 -1
- package/cjs/extensions/forms/style/dnb-forms.css +0 -1
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +6 -3
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListHelpers.js +3 -2
- package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/cjs/shared/Context.d.ts +3 -3
- package/cjs/shared/Context.js +8 -8
- package/cjs/shared/Context.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/style/core/scopes.scss +1 -1
- package/cjs/style/dnb-ui-basis.css +1 -1
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -1
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-components.css +6 -1
- package/cjs/style/dnb-ui-components.min.css +2 -2
- package/cjs/style/dnb-ui-core.css +1 -1
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +0 -1
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +0 -1
- package/cjs/style/dnb-ui-forms.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +6 -2
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +0 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +0 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +6 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +0 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +0 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +6 -2
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +0 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +0 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/components/flex/Container.js +4 -4
- package/components/flex/Container.js.map +1 -1
- package/components/grid/Container.d.ts +2 -2
- package/components/grid/Container.js.map +1 -1
- package/components/grid/ContainerDocs.d.ts +2 -0
- package/components/grid/ContainerDocs.js +23 -0
- package/components/grid/ContainerDocs.js.map +1 -0
- package/components/grid/style/dnb-grid.css +6 -0
- package/components/grid/style/dnb-grid.min.css +1 -1
- package/components/grid/style/grid-container.scss +6 -0
- package/components/slider/SliderDocs.d.ts +3 -0
- package/components/slider/SliderDocs.js +150 -0
- package/components/slider/SliderDocs.js.map +1 -0
- package/es/components/flex/Container.js +4 -4
- package/es/components/flex/Container.js.map +1 -1
- package/es/components/grid/Container.d.ts +2 -2
- package/es/components/grid/Container.js.map +1 -1
- package/es/components/grid/ContainerDocs.d.ts +2 -0
- package/es/components/grid/ContainerDocs.js +23 -0
- package/es/components/grid/ContainerDocs.js.map +1 -0
- package/es/components/grid/style/dnb-grid.css +6 -0
- package/es/components/grid/style/dnb-grid.min.css +1 -1
- package/es/components/grid/style/grid-container.scss +6 -0
- package/es/components/slider/SliderDocs.d.ts +3 -0
- package/es/components/slider/SliderDocs.js +150 -0
- package/es/components/slider/SliderDocs.js.map +1 -0
- package/es/extensions/forms/DataContext/Context.d.ts +7 -5
- package/es/extensions/forms/DataContext/Context.js +0 -1
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +14 -4
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/Composition/Composition.d.ts +2 -2
- package/es/extensions/forms/Field/Composition/Composition.js.map +1 -1
- package/es/extensions/forms/Field/Number/Number.js +3 -3
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.js +3 -3
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/Slider/Slider.d.ts +34 -0
- package/es/extensions/forms/Field/Slider/Slider.js +103 -0
- package/es/extensions/forms/Field/Slider/Slider.js.map +1 -0
- package/es/extensions/forms/Field/Slider/SliderDocs.d.ts +3 -0
- package/es/extensions/forms/Field/Slider/SliderDocs.js +26 -0
- package/es/extensions/forms/Field/Slider/SliderDocs.js.map +1 -0
- package/es/extensions/forms/Field/Slider/index.d.ts +2 -0
- package/es/extensions/forms/Field/Slider/index.js +3 -0
- package/es/extensions/forms/Field/Slider/index.js.map +1 -0
- package/es/extensions/forms/Field/String/String.js +2 -2
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +7 -7
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/Field/index.d.ts +1 -0
- package/es/extensions/forms/Field/index.js +1 -0
- package/es/extensions/forms/Field/index.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +0 -1
- package/es/extensions/forms/Form/FieldProps/FieldProps.d.ts +19 -5
- package/es/extensions/forms/Form/FieldProps/FieldProps.js +49 -21
- package/es/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
- package/es/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +1 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -1
- package/es/extensions/forms/Form/Section/Section.d.ts +44 -0
- package/es/extensions/forms/Form/Section/Section.js +56 -0
- package/es/extensions/forms/Form/Section/Section.js.map +1 -0
- package/es/extensions/forms/Form/Section/SectionContext.d.ts +11 -0
- package/es/extensions/forms/Form/Section/SectionContext.js +4 -0
- package/es/extensions/forms/Form/Section/SectionContext.js.map +1 -0
- package/es/extensions/forms/Form/Section/SectionDocs.d.ts +3 -0
- package/es/extensions/forms/Form/Section/SectionDocs.js +35 -0
- package/es/extensions/forms/Form/Section/SectionDocs.js.map +1 -0
- package/es/extensions/forms/Form/Section/index.d.ts +2 -0
- package/es/extensions/forms/Form/Section/index.js +3 -0
- package/es/extensions/forms/Form/Section/index.js.map +1 -0
- package/es/extensions/forms/Form/Visibility/Visibility.js +16 -10
- package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/es/extensions/forms/Form/data-context/useData.js +6 -2
- package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
- package/es/extensions/forms/Form/index.d.ts +1 -1
- package/es/extensions/forms/Form/index.js +1 -1
- package/es/extensions/forms/Form/index.js.map +1 -1
- package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +2 -2
- package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
- package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
- package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -2
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/es/extensions/forms/Tools/GenerateSchema.d.ts +19 -0
- package/es/extensions/forms/Tools/GenerateSchema.js +130 -0
- package/es/extensions/forms/Tools/GenerateSchema.js.map +1 -0
- package/es/extensions/forms/Tools/ListAllProps.d.ts +15 -0
- package/es/extensions/forms/Tools/ListAllProps.js +65 -0
- package/es/extensions/forms/Tools/ListAllProps.js.map +1 -0
- package/{extensions/forms/Form → es/extensions/forms}/Tools/index.d.ts +1 -0
- package/es/extensions/forms/Tools/index.js +3 -0
- package/es/extensions/forms/Tools/index.js.map +1 -0
- package/es/extensions/forms/Value/Number/Number.js +4 -2
- package/es/extensions/forms/Value/Number/Number.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
- package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/es/extensions/forms/blocks/Category/FirstBlock/FirstBlock.d.ts +2 -0
- package/es/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js +39 -0
- package/es/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js.map +1 -0
- package/es/extensions/forms/blocks/Category/FirstBlock/index.d.ts +2 -0
- package/es/extensions/forms/blocks/Category/FirstBlock/index.js +3 -0
- package/es/extensions/forms/blocks/Category/FirstBlock/index.js.map +1 -0
- package/es/extensions/forms/blocks/Category/index.d.ts +1 -0
- package/es/extensions/forms/blocks/Category/index.js +1 -0
- package/es/extensions/forms/blocks/Category/index.js.map +1 -0
- package/es/extensions/forms/blocks/index.d.ts +1 -0
- package/es/extensions/forms/blocks/index.js +1 -0
- package/es/extensions/forms/blocks/index.js.map +1 -0
- package/es/extensions/forms/hooks/index.d.ts +2 -5
- package/es/extensions/forms/hooks/index.js +2 -1
- package/es/extensions/forms/hooks/index.js.map +1 -1
- package/es/extensions/forms/hooks/useDataValue.d.ts +9 -0
- package/es/extensions/forms/hooks/useDataValue.js +32 -0
- package/es/extensions/forms/hooks/useDataValue.js.map +1 -0
- package/es/extensions/forms/hooks/useExternalValue.d.ts +12 -0
- package/es/extensions/forms/hooks/useExternalValue.js +41 -0
- package/es/extensions/forms/hooks/useExternalValue.js.map +1 -0
- package/es/extensions/forms/hooks/useFieldProps.d.ts +1 -10
- package/es/extensions/forms/hooks/useFieldProps.js +59 -78
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/forms/hooks/usePath.d.ts +14 -0
- package/es/extensions/forms/hooks/usePath.js +64 -0
- package/es/extensions/forms/hooks/usePath.js.map +1 -0
- package/es/extensions/forms/hooks/useValueProps.js +16 -4
- package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/es/extensions/forms/index.d.ts +2 -0
- package/es/extensions/forms/index.js +1 -0
- package/es/extensions/forms/index.js.map +1 -1
- package/es/extensions/forms/style/dnb-forms.css +0 -1
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +6 -3
- package/es/extensions/forms/types.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListHelpers.js +3 -2
- package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/es/shared/Context.d.ts +3 -3
- package/es/shared/Context.js +8 -8
- package/es/shared/Context.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/style/core/scopes.scss +1 -1
- package/es/style/dnb-ui-basis.css +1 -1
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -1
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-components.css +6 -1
- package/es/style/dnb-ui-components.min.css +2 -2
- package/es/style/dnb-ui-core.css +1 -1
- package/es/style/dnb-ui-core.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +0 -1
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +0 -1
- package/es/style/dnb-ui-forms.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +6 -2
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +0 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +0 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +6 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +0 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +0 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +6 -2
- package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/es/style/themes/theme-ui/ui-theme-extensions.css +0 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +0 -1
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +3 -3
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/Context.d.ts +7 -5
- package/extensions/forms/DataContext/Context.js +0 -1
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.js +14 -4
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
- package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/Composition/Composition.d.ts +2 -2
- package/extensions/forms/Field/Composition/Composition.js.map +1 -1
- package/extensions/forms/Field/Number/Number.js +3 -3
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +2 -2
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +2 -2
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.js +3 -3
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/Slider/Slider.d.ts +34 -0
- package/extensions/forms/Field/Slider/Slider.js +104 -0
- package/extensions/forms/Field/Slider/Slider.js.map +1 -0
- package/extensions/forms/Field/Slider/SliderDocs.d.ts +3 -0
- package/extensions/forms/Field/Slider/SliderDocs.js +26 -0
- package/extensions/forms/Field/Slider/SliderDocs.js.map +1 -0
- package/extensions/forms/Field/Slider/index.d.ts +2 -0
- package/extensions/forms/Field/Slider/index.js +3 -0
- package/extensions/forms/Field/Slider/index.js.map +1 -0
- package/extensions/forms/Field/String/String.js +2 -2
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +7 -7
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/Field/index.d.ts +1 -0
- package/extensions/forms/Field/index.js +1 -0
- package/extensions/forms/Field/index.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.d.ts +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.css +0 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.scss +0 -1
- package/extensions/forms/Form/FieldProps/FieldProps.d.ts +19 -5
- package/extensions/forms/Form/FieldProps/FieldProps.js +50 -21
- package/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -1
- package/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +1 -0
- package/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -1
- package/extensions/forms/Form/Section/Section.d.ts +44 -0
- package/extensions/forms/Form/Section/Section.js +56 -0
- package/extensions/forms/Form/Section/Section.js.map +1 -0
- package/extensions/forms/Form/Section/SectionContext.d.ts +11 -0
- package/extensions/forms/Form/Section/SectionContext.js +4 -0
- package/extensions/forms/Form/Section/SectionContext.js.map +1 -0
- package/extensions/forms/Form/Section/SectionDocs.d.ts +3 -0
- package/extensions/forms/Form/Section/SectionDocs.js +35 -0
- package/extensions/forms/Form/Section/SectionDocs.js.map +1 -0
- package/extensions/forms/Form/Section/index.d.ts +2 -0
- package/extensions/forms/Form/Section/index.js +3 -0
- package/extensions/forms/Form/Section/index.js.map +1 -0
- package/extensions/forms/Form/Visibility/Visibility.js +16 -10
- package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/extensions/forms/Form/data-context/useData.js +6 -2
- package/extensions/forms/Form/data-context/useData.js.map +1 -1
- package/extensions/forms/Form/index.d.ts +1 -1
- package/extensions/forms/Form/index.js +1 -2
- package/extensions/forms/Form/index.js.map +1 -1
- package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +2 -2
- package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
- package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
- package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
- package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -2
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/extensions/forms/Tools/GenerateSchema.d.ts +19 -0
- package/extensions/forms/Tools/GenerateSchema.js +133 -0
- package/extensions/forms/Tools/GenerateSchema.js.map +1 -0
- package/extensions/forms/Tools/ListAllProps.d.ts +15 -0
- package/extensions/forms/Tools/ListAllProps.js +67 -0
- package/extensions/forms/Tools/ListAllProps.js.map +1 -0
- package/{cjs/extensions/forms/Form → extensions/forms}/Tools/index.d.ts +1 -0
- package/extensions/forms/Tools/index.js +3 -0
- package/extensions/forms/Tools/index.js.map +1 -0
- package/extensions/forms/Value/Number/Number.js +4 -2
- package/extensions/forms/Value/Number/Number.js.map +1 -1
- package/extensions/forms/Wizard/Container/WizardContainer.js +2 -2
- package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/extensions/forms/blocks/Category/FirstBlock/FirstBlock.d.ts +2 -0
- package/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js +39 -0
- package/extensions/forms/blocks/Category/FirstBlock/FirstBlock.js.map +1 -0
- package/extensions/forms/blocks/Category/FirstBlock/index.d.ts +2 -0
- package/extensions/forms/blocks/Category/FirstBlock/index.js +3 -0
- package/extensions/forms/blocks/Category/FirstBlock/index.js.map +1 -0
- package/extensions/forms/blocks/Category/index.d.ts +1 -0
- package/extensions/forms/blocks/Category/index.js +1 -0
- package/extensions/forms/blocks/Category/index.js.map +1 -0
- package/extensions/forms/blocks/index.d.ts +1 -0
- package/extensions/forms/blocks/index.js +3 -0
- package/extensions/forms/blocks/index.js.map +1 -0
- package/extensions/forms/hooks/index.d.ts +2 -5
- package/extensions/forms/hooks/index.js +2 -1
- package/extensions/forms/hooks/index.js.map +1 -1
- package/extensions/forms/hooks/useDataValue.d.ts +9 -0
- package/extensions/forms/hooks/useDataValue.js +33 -0
- package/extensions/forms/hooks/useDataValue.js.map +1 -0
- package/extensions/forms/hooks/useExternalValue.d.ts +12 -0
- package/extensions/forms/hooks/useExternalValue.js +41 -0
- package/extensions/forms/hooks/useExternalValue.js.map +1 -0
- package/extensions/forms/hooks/useFieldProps.d.ts +1 -10
- package/extensions/forms/hooks/useFieldProps.js +59 -79
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/forms/hooks/usePath.d.ts +14 -0
- package/extensions/forms/hooks/usePath.js +66 -0
- package/extensions/forms/hooks/usePath.js.map +1 -0
- package/extensions/forms/hooks/useValueProps.js +16 -4
- package/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/extensions/forms/index.d.ts +2 -0
- package/extensions/forms/index.js +2 -0
- package/extensions/forms/index.js.map +1 -1
- package/extensions/forms/style/dnb-forms.css +0 -1
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +6 -3
- package/extensions/forms/types.js.map +1 -1
- package/fragments/drawer-list/DrawerListHelpers.js +3 -2
- package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/package.json +1 -1
- package/shared/Context.d.ts +3 -3
- package/shared/Context.js +8 -8
- package/shared/Context.js.map +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/style/core/scopes.scss +1 -1
- package/style/dnb-ui-basis.css +1 -1
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -1
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-components.css +6 -1
- package/style/dnb-ui-components.min.css +2 -2
- package/style/dnb-ui-core.css +1 -1
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-extensions.css +0 -1
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +0 -1
- package/style/dnb-ui-forms.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +6 -2
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +0 -1
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +0 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +6 -2
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +0 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +0 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +6 -2
- package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/style/themes/theme-ui/ui-theme-extensions.css +0 -1
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +0 -1
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +3 -3
- package/umd/dnb-ui-lib.min.js +1 -1
- package/cjs/extensions/forms/Form/Tools/GenerateSchema.d.ts +0 -8
- package/cjs/extensions/forms/Form/Tools/GenerateSchema.js +0 -100
- package/cjs/extensions/forms/Form/Tools/GenerateSchema.js.map +0 -1
- package/cjs/extensions/forms/Form/Tools/index.js.map +0 -1
- package/es/extensions/forms/Form/Tools/GenerateSchema.d.ts +0 -8
- package/es/extensions/forms/Form/Tools/GenerateSchema.js +0 -89
- package/es/extensions/forms/Form/Tools/GenerateSchema.js.map +0 -1
- package/es/extensions/forms/Form/Tools/index.js +0 -1
- package/es/extensions/forms/Form/Tools/index.js.map +0 -1
- package/extensions/forms/Form/Tools/GenerateSchema.d.ts +0 -8
- package/extensions/forms/Form/Tools/GenerateSchema.js +0 -90
- package/extensions/forms/Form/Tools/GenerateSchema.js.map +0 -1
- package/extensions/forms/Form/Tools/index.js +0 -1
- package/extensions/forms/Form/Tools/index.js.map +0 -1
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
export const SliderProperties = {
|
|
2
|
+
value: {
|
|
3
|
+
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).',
|
|
4
|
+
type: ['number', 'Array<number>'],
|
|
5
|
+
status: 'required'
|
|
6
|
+
},
|
|
7
|
+
min: {
|
|
8
|
+
doc: 'The minimum value. Can be a negative number as well. Defaults to `0`.',
|
|
9
|
+
type: 'number',
|
|
10
|
+
status: 'optional'
|
|
11
|
+
},
|
|
12
|
+
max: {
|
|
13
|
+
doc: 'The maximum value. Defaults to `100`.',
|
|
14
|
+
type: 'number',
|
|
15
|
+
status: 'optional'
|
|
16
|
+
},
|
|
17
|
+
step: {
|
|
18
|
+
doc: 'The steps the slider takes on changing the value. Defaults to `null`.',
|
|
19
|
+
type: 'number',
|
|
20
|
+
status: 'optional'
|
|
21
|
+
},
|
|
22
|
+
vertical: {
|
|
23
|
+
doc: 'Show the slider vertically. Defaults to `false`.',
|
|
24
|
+
type: 'boolean',
|
|
25
|
+
status: 'optional'
|
|
26
|
+
},
|
|
27
|
+
reverse: {
|
|
28
|
+
doc: 'Show the slider reversed. Defaults to `false`.',
|
|
29
|
+
type: 'boolean',
|
|
30
|
+
status: 'optional'
|
|
31
|
+
},
|
|
32
|
+
stretch: {
|
|
33
|
+
doc: 'If set to `true`, then the slider will be 100% in `width`.',
|
|
34
|
+
type: 'boolean',
|
|
35
|
+
status: 'optional'
|
|
36
|
+
},
|
|
37
|
+
hideButtons: {
|
|
38
|
+
doc: 'Removes the helper buttons. Defaults to `false`.',
|
|
39
|
+
type: 'boolean',
|
|
40
|
+
status: 'optional'
|
|
41
|
+
},
|
|
42
|
+
multiThumbBehavior: {
|
|
43
|
+
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`.',
|
|
44
|
+
type: 'string',
|
|
45
|
+
status: 'optional'
|
|
46
|
+
},
|
|
47
|
+
thumbTitle: {
|
|
48
|
+
doc: 'Give the slider thumb button a title for accessibility reasons. Defaults to `null`.',
|
|
49
|
+
type: 'string',
|
|
50
|
+
status: 'optional'
|
|
51
|
+
},
|
|
52
|
+
subtractTitle: {
|
|
53
|
+
doc: 'Give the subtract button a title for accessibility reasons. Defaults to `−`.',
|
|
54
|
+
type: 'string',
|
|
55
|
+
status: 'optional'
|
|
56
|
+
},
|
|
57
|
+
addTitle: {
|
|
58
|
+
doc: 'Give the add button a title for accessibility reasons. Defaults to `+`.',
|
|
59
|
+
type: 'string',
|
|
60
|
+
status: 'optional'
|
|
61
|
+
},
|
|
62
|
+
numberFormat: {
|
|
63
|
+
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 }}`',
|
|
64
|
+
type: 'object',
|
|
65
|
+
status: 'optional'
|
|
66
|
+
},
|
|
67
|
+
tooltip: {
|
|
68
|
+
doc: 'Use `true` to show a tooltip on `mouseOver`, `touchStart` and `focus`, showing the current number (if `numberFormat` is given) or the raw value.',
|
|
69
|
+
type: 'boolean',
|
|
70
|
+
status: 'optional'
|
|
71
|
+
},
|
|
72
|
+
alwaysShowTooltip: {
|
|
73
|
+
doc: 'Use `true` to always show the tooltip, in addition to the `tooltip` property.',
|
|
74
|
+
type: 'boolean',
|
|
75
|
+
status: 'optional'
|
|
76
|
+
},
|
|
77
|
+
label: {
|
|
78
|
+
doc: 'Prepends the Form Label component. If no ID is provided, a random ID is created.',
|
|
79
|
+
type: 'string',
|
|
80
|
+
status: 'optional'
|
|
81
|
+
},
|
|
82
|
+
labelDirection: {
|
|
83
|
+
doc: 'Use `labelDirection="vertical"` to change the label layout direction. Defaults to `horizontal`.',
|
|
84
|
+
type: 'string',
|
|
85
|
+
status: 'optional'
|
|
86
|
+
},
|
|
87
|
+
labelSrOnly: {
|
|
88
|
+
doc: 'Use `true` to make the label only readable by screen readers.',
|
|
89
|
+
type: 'boolean',
|
|
90
|
+
status: 'optional'
|
|
91
|
+
},
|
|
92
|
+
status: {
|
|
93
|
+
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.',
|
|
94
|
+
type: 'string',
|
|
95
|
+
status: 'optional'
|
|
96
|
+
},
|
|
97
|
+
statusState: {
|
|
98
|
+
doc: 'Defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`.',
|
|
99
|
+
type: 'string',
|
|
100
|
+
status: 'optional'
|
|
101
|
+
},
|
|
102
|
+
statusProps: {
|
|
103
|
+
doc: 'Use an object to define additional FormStatus properties.',
|
|
104
|
+
type: 'object',
|
|
105
|
+
status: 'optional'
|
|
106
|
+
},
|
|
107
|
+
globalStatusId: {
|
|
108
|
+
doc: 'The `status_id` used for the target [GlobalStatus](/uilib/components/global-status).',
|
|
109
|
+
type: 'string',
|
|
110
|
+
status: 'optional'
|
|
111
|
+
},
|
|
112
|
+
suffix: {
|
|
113
|
+
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.',
|
|
114
|
+
type: 'string',
|
|
115
|
+
status: 'optional'
|
|
116
|
+
},
|
|
117
|
+
skeleton: {
|
|
118
|
+
doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',
|
|
119
|
+
type: 'boolean',
|
|
120
|
+
status: 'optional'
|
|
121
|
+
},
|
|
122
|
+
extensions: {
|
|
123
|
+
doc: 'Makes it possible to display overlays with other functionality such as a marker on the slider marking a given value.',
|
|
124
|
+
type: 'object',
|
|
125
|
+
status: 'optional'
|
|
126
|
+
},
|
|
127
|
+
'[Space](/uilib/layout/space/properties)': {
|
|
128
|
+
doc: 'Spacing properties like `top` or `bottom` are supported.',
|
|
129
|
+
type: ['string', 'object'],
|
|
130
|
+
status: 'optional'
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
export const SliderEvents = {
|
|
134
|
+
onChange: {
|
|
135
|
+
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 }`.',
|
|
136
|
+
type: 'function',
|
|
137
|
+
status: 'optional'
|
|
138
|
+
},
|
|
139
|
+
onDragStart: {
|
|
140
|
+
doc: 'will be called once the user stops dragging. Returns `{ event }`.',
|
|
141
|
+
type: 'function',
|
|
142
|
+
status: 'optional'
|
|
143
|
+
},
|
|
144
|
+
onDragEnd: {
|
|
145
|
+
doc: 'will be called once the user starts dragging. Returns `{ event }`.',
|
|
146
|
+
type: 'function',
|
|
147
|
+
status: 'optional'
|
|
148
|
+
}
|
|
149
|
+
};
|
|
150
|
+
//# 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","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":"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"}
|
|
@@ -65,9 +65,9 @@ function FlexContainer(props) {
|
|
|
65
65
|
const endSpacing = 0;
|
|
66
66
|
let startSpacing = null;
|
|
67
67
|
if (!isHeading && (divider === 'line' && !isFirst || divider === 'line-framed')) {
|
|
68
|
-
var _getSpaceValue,
|
|
68
|
+
var _getSpaceValue, _getSpaceValue2;
|
|
69
69
|
const spaceAboveLine = (_getSpaceValue = getSpaceValue(end, previousChild)) !== null && _getSpaceValue !== void 0 ? _getSpaceValue : spacing;
|
|
70
|
-
startSpacing = (
|
|
70
|
+
startSpacing = (_getSpaceValue2 = getSpaceValue(start, child)) !== null && _getSpaceValue2 !== void 0 ? _getSpaceValue2 : spacing;
|
|
71
71
|
return React.createElement(React.Fragment, {
|
|
72
72
|
key: `element-${i}`
|
|
73
73
|
}, React.createElement(Hr, {
|
|
@@ -88,8 +88,8 @@ function FlexContainer(props) {
|
|
|
88
88
|
if (isFirst && direction !== 'horizontal') {
|
|
89
89
|
startSpacing = 0;
|
|
90
90
|
} else {
|
|
91
|
-
var
|
|
92
|
-
startSpacing = (
|
|
91
|
+
var _ref2, _getSpaceValue3;
|
|
92
|
+
startSpacing = (_ref2 = (_getSpaceValue3 = getSpaceValue(start, child)) !== null && _getSpaceValue3 !== void 0 ? _getSpaceValue3 : getSpaceValue(end, previousChild)) !== null && _ref2 !== void 0 ? _ref2 : spacing;
|
|
93
93
|
}
|
|
94
94
|
if (React.isValidElement(previousChild) && (previousChild === null || previousChild === void 0 ? void 0 : (_previousChild$type = previousChild.type) === null || _previousChild$type === void 0 ? void 0 : _previousChild$type['_supportsSpacingProps']) === false) {
|
|
95
95
|
startSpacing = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Container.js","names":["React","useCallback","classnames","Space","Hr","useMedia","getSpaceValue","isHeadingElement","renderWithSpacing","propNames","pickFlexContainerProps","props","defaults","skip","_objectSpread","Object","fromEntries","entries","filter","key","includes","FlexContainer","_ref","className","style","children","element","direction","wrap","sizeCount","rowGap","justify","align","alignSelf","divider","gap","spacing","spacingProp","breakpoints","queries","rest","_objectWithoutProperties","_excluded","childrenArray","wrapChildren","hasHeading","some","child","i","previousChild","hasSizeProp","_child$props","size","mediaKey","disabled","content","map","_previousChild$type","isFirst","isLast","length","isHeading","start","end","endSpacing","startSpacing","_getSpaceValue","_ref2","_getSpaceValue2","spaceAboveLine","createElement","Fragment","top","space","_ref3","_ref4","_getSpaceValue3","isValidElement","type","n","getRowGapClass","cn","_extends","Children","toArray","cloneElement","_supportsSpacingProps"],"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","useCallback","classnames","Space","Hr","useMedia","getSpaceValue","isHeadingElement","renderWithSpacing","propNames","pickFlexContainerProps","props","defaults","skip","_objectSpread","Object","fromEntries","entries","filter","key","includes","FlexContainer","_ref","className","style","children","element","direction","wrap","sizeCount","rowGap","justify","align","alignSelf","divider","gap","spacing","spacingProp","breakpoints","queries","rest","_objectWithoutProperties","_excluded","childrenArray","wrapChildren","hasHeading","some","child","i","previousChild","hasSizeProp","_child$props","size","mediaKey","disabled","content","map","_previousChild$type","isFirst","isLast","length","isHeading","start","end","endSpacing","startSpacing","_getSpaceValue","_getSpaceValue2","spaceAboveLine","createElement","Fragment","top","space","_ref2","_getSpaceValue3","isValidElement","type","n","getRowGapClass","cn","_extends","Children","toArray","cloneElement","_supportsSpacingProps"],"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","classnames","Space","GridContainer","props","columns","rowGap","columnGap","style","className","children","element","rest","_objectWithoutProperties","_excluded","styleObj","_objectSpread","compute","n","unsetClasses","prop","disableClass","replace","push","cn","createElement","_extends","_supportsSpacingProps","result","small","medium","large","media","_columns","value"],"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":";;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,MAAyB,gBAAgB;AAkBrD,SAASC,aAAaA,CAACC,KAAe,EAAE;EACtC,MAAM;MACJC,OAAO;MACPC,MAAM;MACNC,SAAS;MACTC,KAAK;MACLC,SAAS;MACTC,QAAQ;MACRC,OAAO,GAAG;IAEZ,CAAC,GAAGP,KAAK;IADJQ,IAAI,GAAAC,wBAAA,CACLT,KAAK,EAAAU,SAAA;EAET,MAAMC,QAAQ,GAAAC,aAAA,CAAAA,aAAA,KACTC,OAAO,CAACZ,OAAO,CAAC,GAChBG,KAAK,CACT;EAED,MAAMU,CAAC,GAAG,oBAAoB;EAE9B,MAAMC,YAAY,GAAG,EAAE;EACvB,KAAK,MAAMC,IAAI,IAAIL,QAAQ,EAAE;IAC3B,IAAIA,QAAQ,CAACK,IAAI,CAAC,KAAK,OAAO,EAAE;MAC9B,MAAMC,YAAY,GAAI,GAAEH,CAAE,eAAcE,IAAI,CAACE,OAAO,CAClD,eAAe,EACf,IACF,CAAE,EAAC;MACHH,YAAY,CAACI,IAAI,CAACF,YAAY,CAAC;IACjC;EACF;EAEA,MAAMG,EAAE,GAAGvB,UAAU,CACnBiB,CAAC,EACDT,SAAS,EAITU,YAAY,EAHZZ,SAAS,IACN,GAAEW,CAAE,gBAAeX,SAAS,KAAK,IAAI,GAAG,OAAO,GAAGA,SAAU,EAAC,EAChED,MAAM,IAAK,GAAEY,CAAE,aAAYZ,MAAM,KAAK,IAAI,GAAG,OAAO,GAAGA,MAAO,EAEhE,CAAC;EAED,OACEN,KAAA,CAAAyB,aAAA,CAACvB,KAAK,EAAAwB,QAAA;IAACf,OAAO,EAAEA,OAAQ;IAACF,SAAS,EAAEe,EAAG;IAAChB,KAAK,EAAEO;EAAS,GAAKH,IAAI,GAC9DF,QACI,CAAC;AAEZ;AAEAP,aAAa,CAACwB,qBAAqB,GAAG,IAAI;AAE1C,eAAexB,aAAa;AAE5B,SAASc,OAAOA,CAACZ,OAAO,EAAE;EACxB,IAAI,CAACA,OAAO,EAAE;IACZ,OAAO,IAAI;EACb;EAEA,MAAMuB,MAAM,GAAG,CAAC,CAAC;EAEjB,IAAI,OAAOvB,OAAO,KAAK,QAAQ,EAAE;IAC/BA,OAAO,GAAG;MACRwB,KAAK,EAAExB,OAAO;MACdyB,MAAM,EAAEzB,OAAO;MACf0B,KAAK,EAAE1B;IACT,CAAC;EACH;EAEA,KAAK,MAAM2B,KAAK,IAAI3B,OAAO,EAAE;IAAA,IAAA4B,QAAA;IAC3B,MAAMC,KAAK,IAAAD,QAAA,GAAG5B,OAAO,cAAA4B,QAAA,uBAAPA,QAAA,CAAUD,KAAK,CAAC;IAC9BJ,MAAM,CAAE,KAAII,KAAM,UAAS,CAAC,GAAGE,KAAK,IAAI,OAAO;EACjD;EAEA,OAAON,MAAM;AACf"}
|
|
1
|
+
{"version":3,"file":"Container.js","names":["React","classnames","Space","GridContainer","props","columns","rowGap","columnGap","style","className","children","element","rest","_objectWithoutProperties","_excluded","styleObj","_objectSpread","compute","n","unsetClasses","prop","disableClass","replace","push","cn","createElement","_extends","_supportsSpacingProps","result","small","medium","large","media","_columns","value"],"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":";;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,MAAyB,gBAAgB;AAkBrD,SAASC,aAAaA,CAACC,KAAe,EAAE;EACtC,MAAM;MACJC,OAAO;MACPC,MAAM;MACNC,SAAS;MACTC,KAAK;MACLC,SAAS;MACTC,QAAQ;MACRC,OAAO,GAAG;IAEZ,CAAC,GAAGP,KAAK;IADJQ,IAAI,GAAAC,wBAAA,CACLT,KAAK,EAAAU,SAAA;EAET,MAAMC,QAAQ,GAAAC,aAAA,CAAAA,aAAA,KACTC,OAAO,CAACZ,OAAO,CAAC,GAChBG,KAAK,CACT;EAED,MAAMU,CAAC,GAAG,oBAAoB;EAE9B,MAAMC,YAAY,GAAG,EAAE;EACvB,KAAK,MAAMC,IAAI,IAAIL,QAAQ,EAAE;IAC3B,IAAIA,QAAQ,CAACK,IAAI,CAAC,KAAK,OAAO,EAAE;MAC9B,MAAMC,YAAY,GAAI,GAAEH,CAAE,eAAcE,IAAI,CAACE,OAAO,CAClD,eAAe,EACf,IACF,CAAE,EAAC;MACHH,YAAY,CAACI,IAAI,CAACF,YAAY,CAAC;IACjC;EACF;EAEA,MAAMG,EAAE,GAAGvB,UAAU,CACnBiB,CAAC,EACDT,SAAS,EAITU,YAAY,EAHZZ,SAAS,IACN,GAAEW,CAAE,gBAAeX,SAAS,KAAK,IAAI,GAAG,OAAO,GAAGA,SAAU,EAAC,EAChED,MAAM,IAAK,GAAEY,CAAE,aAAYZ,MAAM,KAAK,IAAI,GAAG,OAAO,GAAGA,MAAO,EAEhE,CAAC;EAED,OACEN,KAAA,CAAAyB,aAAA,CAACvB,KAAK,EAAAwB,QAAA;IAACf,OAAO,EAAEA,OAAQ;IAACF,SAAS,EAAEe,EAAG;IAAChB,KAAK,EAAEO;EAAS,GAAKH,IAAI,GAC9DF,QACI,CAAC;AAEZ;AAEAP,aAAa,CAACwB,qBAAqB,GAAG,IAAI;AAE1C,eAAexB,aAAa;AAE5B,SAASc,OAAOA,CAACZ,OAAO,EAAE;EACxB,IAAI,CAACA,OAAO,EAAE;IACZ,OAAO,IAAI;EACb;EAEA,MAAMuB,MAAM,GAAG,CAAC,CAAC;EAEjB,IAAI,OAAOvB,OAAO,KAAK,QAAQ,EAAE;IAC/BA,OAAO,GAAG;MACRwB,KAAK,EAAExB,OAAO;MACdyB,MAAM,EAAEzB,OAAO;MACf0B,KAAK,EAAE1B;IACT,CAAC;EACH;EAEA,KAAK,MAAM2B,KAAK,IAAI3B,OAAO,EAAE;IAAA,IAAA4B,QAAA;IAC3B,MAAMC,KAAK,IAAAD,QAAA,GAAG5B,OAAO,cAAA4B,QAAA,uBAAPA,QAAA,CAAUD,KAAK,CAAC;IAC9BJ,MAAM,CAAE,KAAII,KAAM,UAAS,CAAC,GAAGE,KAAK,IAAI,OAAO;EACjD;EAEA,OAAON,MAAM;AACf"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export const GridContainerProperties = {
|
|
2
|
+
columns: {
|
|
3
|
+
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 }}`.',
|
|
4
|
+
type: ['number', 'object'],
|
|
5
|
+
status: 'optional'
|
|
6
|
+
},
|
|
7
|
+
rowGap: {
|
|
8
|
+
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`.',
|
|
9
|
+
type: ['string', 'false'],
|
|
10
|
+
status: 'optional'
|
|
11
|
+
},
|
|
12
|
+
columnsGap: {
|
|
13
|
+
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`.',
|
|
14
|
+
type: ['string', 'false'],
|
|
15
|
+
status: 'optional'
|
|
16
|
+
},
|
|
17
|
+
element: {
|
|
18
|
+
doc: 'Define the type of element. Defaults to `div`.',
|
|
19
|
+
type: ['string', 'React.Element'],
|
|
20
|
+
status: 'optional'
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=ContainerDocs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContainerDocs.js","names":["GridContainerProperties","columns","doc","type","status","rowGap","columnsGap","element"],"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":"AAEA,OAAO,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"}
|
|
@@ -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,150 @@
|
|
|
1
|
+
export const SliderProperties = {
|
|
2
|
+
value: {
|
|
3
|
+
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).',
|
|
4
|
+
type: ['number', 'Array<number>'],
|
|
5
|
+
status: 'required'
|
|
6
|
+
},
|
|
7
|
+
min: {
|
|
8
|
+
doc: 'The minimum value. Can be a negative number as well. Defaults to `0`.',
|
|
9
|
+
type: 'number',
|
|
10
|
+
status: 'optional'
|
|
11
|
+
},
|
|
12
|
+
max: {
|
|
13
|
+
doc: 'The maximum value. Defaults to `100`.',
|
|
14
|
+
type: 'number',
|
|
15
|
+
status: 'optional'
|
|
16
|
+
},
|
|
17
|
+
step: {
|
|
18
|
+
doc: 'The steps the slider takes on changing the value. Defaults to `null`.',
|
|
19
|
+
type: 'number',
|
|
20
|
+
status: 'optional'
|
|
21
|
+
},
|
|
22
|
+
vertical: {
|
|
23
|
+
doc: 'Show the slider vertically. Defaults to `false`.',
|
|
24
|
+
type: 'boolean',
|
|
25
|
+
status: 'optional'
|
|
26
|
+
},
|
|
27
|
+
reverse: {
|
|
28
|
+
doc: 'Show the slider reversed. Defaults to `false`.',
|
|
29
|
+
type: 'boolean',
|
|
30
|
+
status: 'optional'
|
|
31
|
+
},
|
|
32
|
+
stretch: {
|
|
33
|
+
doc: 'If set to `true`, then the slider will be 100% in `width`.',
|
|
34
|
+
type: 'boolean',
|
|
35
|
+
status: 'optional'
|
|
36
|
+
},
|
|
37
|
+
hideButtons: {
|
|
38
|
+
doc: 'Removes the helper buttons. Defaults to `false`.',
|
|
39
|
+
type: 'boolean',
|
|
40
|
+
status: 'optional'
|
|
41
|
+
},
|
|
42
|
+
multiThumbBehavior: {
|
|
43
|
+
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`.',
|
|
44
|
+
type: 'string',
|
|
45
|
+
status: 'optional'
|
|
46
|
+
},
|
|
47
|
+
thumbTitle: {
|
|
48
|
+
doc: 'Give the slider thumb button a title for accessibility reasons. Defaults to `null`.',
|
|
49
|
+
type: 'string',
|
|
50
|
+
status: 'optional'
|
|
51
|
+
},
|
|
52
|
+
subtractTitle: {
|
|
53
|
+
doc: 'Give the subtract button a title for accessibility reasons. Defaults to `−`.',
|
|
54
|
+
type: 'string',
|
|
55
|
+
status: 'optional'
|
|
56
|
+
},
|
|
57
|
+
addTitle: {
|
|
58
|
+
doc: 'Give the add button a title for accessibility reasons. Defaults to `+`.',
|
|
59
|
+
type: 'string',
|
|
60
|
+
status: 'optional'
|
|
61
|
+
},
|
|
62
|
+
numberFormat: {
|
|
63
|
+
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 }}`',
|
|
64
|
+
type: 'object',
|
|
65
|
+
status: 'optional'
|
|
66
|
+
},
|
|
67
|
+
tooltip: {
|
|
68
|
+
doc: 'Use `true` to show a tooltip on `mouseOver`, `touchStart` and `focus`, showing the current number (if `numberFormat` is given) or the raw value.',
|
|
69
|
+
type: 'boolean',
|
|
70
|
+
status: 'optional'
|
|
71
|
+
},
|
|
72
|
+
alwaysShowTooltip: {
|
|
73
|
+
doc: 'Use `true` to always show the tooltip, in addition to the `tooltip` property.',
|
|
74
|
+
type: 'boolean',
|
|
75
|
+
status: 'optional'
|
|
76
|
+
},
|
|
77
|
+
label: {
|
|
78
|
+
doc: 'Prepends the Form Label component. If no ID is provided, a random ID is created.',
|
|
79
|
+
type: 'string',
|
|
80
|
+
status: 'optional'
|
|
81
|
+
},
|
|
82
|
+
labelDirection: {
|
|
83
|
+
doc: 'Use `labelDirection="vertical"` to change the label layout direction. Defaults to `horizontal`.',
|
|
84
|
+
type: 'string',
|
|
85
|
+
status: 'optional'
|
|
86
|
+
},
|
|
87
|
+
labelSrOnly: {
|
|
88
|
+
doc: 'Use `true` to make the label only readable by screen readers.',
|
|
89
|
+
type: 'boolean',
|
|
90
|
+
status: 'optional'
|
|
91
|
+
},
|
|
92
|
+
status: {
|
|
93
|
+
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.',
|
|
94
|
+
type: 'string',
|
|
95
|
+
status: 'optional'
|
|
96
|
+
},
|
|
97
|
+
statusState: {
|
|
98
|
+
doc: 'Defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`.',
|
|
99
|
+
type: 'string',
|
|
100
|
+
status: 'optional'
|
|
101
|
+
},
|
|
102
|
+
statusProps: {
|
|
103
|
+
doc: 'Use an object to define additional FormStatus properties.',
|
|
104
|
+
type: 'object',
|
|
105
|
+
status: 'optional'
|
|
106
|
+
},
|
|
107
|
+
globalStatusId: {
|
|
108
|
+
doc: 'The `status_id` used for the target [GlobalStatus](/uilib/components/global-status).',
|
|
109
|
+
type: 'string',
|
|
110
|
+
status: 'optional'
|
|
111
|
+
},
|
|
112
|
+
suffix: {
|
|
113
|
+
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.',
|
|
114
|
+
type: 'string',
|
|
115
|
+
status: 'optional'
|
|
116
|
+
},
|
|
117
|
+
skeleton: {
|
|
118
|
+
doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',
|
|
119
|
+
type: 'boolean',
|
|
120
|
+
status: 'optional'
|
|
121
|
+
},
|
|
122
|
+
extensions: {
|
|
123
|
+
doc: 'Makes it possible to display overlays with other functionality such as a marker on the slider marking a given value.',
|
|
124
|
+
type: 'object',
|
|
125
|
+
status: 'optional'
|
|
126
|
+
},
|
|
127
|
+
'[Space](/uilib/layout/space/properties)': {
|
|
128
|
+
doc: 'Spacing properties like `top` or `bottom` are supported.',
|
|
129
|
+
type: ['string', 'object'],
|
|
130
|
+
status: 'optional'
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
export const SliderEvents = {
|
|
134
|
+
onChange: {
|
|
135
|
+
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 }`.',
|
|
136
|
+
type: 'function',
|
|
137
|
+
status: 'optional'
|
|
138
|
+
},
|
|
139
|
+
onDragStart: {
|
|
140
|
+
doc: 'will be called once the user stops dragging. Returns `{ event }`.',
|
|
141
|
+
type: 'function',
|
|
142
|
+
status: 'optional'
|
|
143
|
+
},
|
|
144
|
+
onDragEnd: {
|
|
145
|
+
doc: 'will be called once the user starts dragging. Returns `{ event }`.',
|
|
146
|
+
type: 'function',
|
|
147
|
+
status: 'optional'
|
|
148
|
+
}
|
|
149
|
+
};
|
|
150
|
+
//# 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","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":"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"}
|
|
@@ -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
|
-
|
|
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;
|