@iress-oss/ids-components 6.0.0-alpha.3 → 6.0.0-alpha.30
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/.ai/components/alert.md +141 -0
- package/.ai/components/autocomplete-recipes.md +35 -0
- package/.ai/components/autocomplete.md +305 -0
- package/.ai/components/button-group.md +132 -0
- package/.ai/components/button.md +326 -0
- package/.ai/components/card.md +254 -0
- package/.ai/components/checkbox-group-recipes.md +20 -0
- package/.ai/components/checkbox-group.md +160 -0
- package/.ai/components/checkbox.md +153 -0
- package/.ai/components/col.md +285 -0
- package/.ai/components/container.md +62 -0
- package/.ai/components/divider.md +96 -0
- package/.ai/components/expander.md +84 -0
- package/.ai/components/field.md +445 -0
- package/.ai/components/icon.md +655 -0
- package/.ai/components/image.md +54 -0
- package/.ai/components/inline.md +144 -0
- package/.ai/components/input-currency-recipes.md +32 -0
- package/.ai/components/input-currency.md +93 -0
- package/.ai/components/input-recipes.md +32 -0
- package/.ai/components/input.md +274 -0
- package/.ai/components/label.md +81 -0
- package/.ai/components/link.md +95 -0
- package/.ai/components/menu-item.md +140 -0
- package/.ai/components/menu.md +285 -0
- package/.ai/components/modal.md +256 -0
- package/.ai/components/panel.md +49 -0
- package/.ai/components/pill.md +83 -0
- package/.ai/components/placeholder.md +36 -0
- package/.ai/components/popover-recipes.md +80 -0
- package/.ai/components/popover.md +216 -0
- package/.ai/components/progress.md +103 -0
- package/.ai/components/provider.md +46 -0
- package/.ai/components/radio-group.md +170 -0
- package/.ai/components/radio.md +78 -0
- package/.ai/components/readonly.md +51 -0
- package/.ai/components/row.md +126 -0
- package/.ai/components/skeleton-recipes.md +20 -0
- package/.ai/components/skeleton.md +103 -0
- package/.ai/components/skip-link.md +32 -0
- package/.ai/components/slideout.md +250 -0
- package/.ai/components/slider.md +126 -0
- package/.ai/components/spinner.md +68 -0
- package/.ai/components/stack.md +121 -0
- package/.ai/components/styled.md +214 -0
- package/.ai/components/tab-set.md +119 -0
- package/.ai/components/tab.md +71 -0
- package/.ai/components/table.md +356 -0
- package/.ai/components/tag.md +93 -0
- package/.ai/components/text.md +195 -0
- package/.ai/components/toaster.md +101 -0
- package/.ai/components/toggle.md +127 -0
- package/.ai/components/tooltip.md +190 -0
- package/.ai/components/validation-message.md +100 -0
- package/.ai/guides/foundations-accessibility.md +38 -0
- package/.ai/guides/foundations-consistency.md +45 -0
- package/.ai/guides/foundations-content.md +22 -0
- package/.ai/guides/foundations-iconography.md +107 -0
- package/.ai/guides/foundations-principles.md +61 -0
- package/.ai/guides/foundations-responsive.md +735 -0
- package/.ai/guides/foundations-user-experience.md +52 -0
- package/.ai/guides/foundations-visual-design.md +41 -0
- package/.ai/guides/foundations-zindex.md +22 -0
- package/.ai/guides/get-started-develop.md +47 -0
- package/.ai/guides/migration-guides-v5.md +247 -0
- package/.ai/guides/styling-props-accessibility.md +48 -0
- package/.ai/guides/styling-props-colour.md +139 -0
- package/.ai/guides/styling-props-layout.md +172 -0
- package/.ai/guides/styling-props-radius.md +39 -0
- package/.ai/guides/styling-props-reference.md +305 -0
- package/.ai/guides/styling-props-sizing.md +80 -0
- package/.ai/guides/styling-props-spacing.md +279 -0
- package/.ai/guides/styling-props-typography.md +153 -0
- package/.ai/index.json +598 -0
- package/.ai/patterns/breadcrumbs.md +164 -0
- package/.ai/patterns/contextual-menu.md +131 -0
- package/.ai/patterns/dropdown-menu.md +195 -0
- package/.ai/patterns/form-recipes.md +160 -0
- package/.ai/patterns/form.md +619 -0
- package/.ai/patterns/loading.md +315 -0
- package/.ai/patterns/shadow.md +37 -0
- package/.ai/patterns/side-nav.md +142 -0
- package/.ai/skills/figma-to-ids.md +252 -0
- package/.ai/skills/ui-doctor.md +733 -0
- package/.ai/skills/ui-translation.md +231 -0
- package/dist/Autocomplete-BRMDwwwT.js +402 -0
- package/dist/Button-C0p8bEXn.js +581 -0
- package/dist/Provider-uPW2d6U5.js +49 -0
- package/dist/TableProvider-CNduJwA4.js +82 -0
- package/dist/components/Alert/Alert.d.ts +71 -0
- package/dist/components/Alert/Alert.js +77 -68
- package/dist/components/Alert/Alert.styles.d.ts +238 -0
- package/dist/components/Alert/Alert.styles.js +202 -74
- package/dist/components/Autocomplete/Autocomplete.d.ts +52 -0
- package/dist/components/Autocomplete/Autocomplete.js +14 -22
- package/dist/components/Autocomplete/Autocomplete.styles.js +6 -2
- package/dist/components/Autocomplete/components/AutocompleteInstructions.d.ts +10 -0
- package/dist/components/Autocomplete/components/AutocompleteInstructions.js +6 -6
- package/dist/components/Autocomplete/hooks/useAutocompleteSearch.d.ts +83 -0
- package/dist/components/Autocomplete/hooks/useAutocompleteSearch.js +152 -133
- package/dist/components/Autocomplete/index.js +1 -1
- package/dist/components/Button/Button.d.ts +103 -0
- package/dist/components/Button/Button.js +15 -6
- package/dist/components/Button/CloseButton/CloseButton.js +18 -18
- package/dist/components/Button/index.js +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +38 -0
- package/dist/components/ButtonGroup/ButtonGroup.js +47 -36
- package/dist/components/ButtonGroup/ButtonGroup.styles.js +1 -1
- package/dist/components/Card/Card.d.ts +57 -0
- package/dist/components/Card/Card.js +78 -63
- package/dist/components/Card/Card.styles.d.ts +80 -0
- package/dist/components/Card/Card.styles.js +18 -13
- package/dist/components/Checkbox/Checkbox.d.ts +71 -0
- package/dist/components/Checkbox/Checkbox.js +97 -82
- package/dist/components/Checkbox/Checkbox.styles.d.ts +68 -0
- package/dist/components/Checkbox/Checkbox.styles.js +68 -58
- package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +56 -0
- package/dist/components/CheckboxGroup/CheckboxGroup.js +53 -54
- package/dist/components/CheckboxGroup/CheckboxGroup.styles.js +1 -1
- package/dist/components/CheckboxMark/CheckboxMark.d.ts +19 -0
- package/dist/components/CheckboxMark/CheckboxMark.js +22 -36
- package/dist/components/CheckboxMark/CheckboxMark.styles.js +13 -11
- package/dist/components/Col/Col.d.ts +27 -0
- package/dist/components/Col/Col.js +7 -6
- package/dist/components/Col/Col.styles.d.ts +1 -0
- package/dist/components/Col/Col.styles.js +4 -19
- package/dist/components/Container/Container.d.ts +16 -0
- package/dist/components/Container/Container.js +8 -7
- package/dist/components/Container/Container.styles.d.ts +39 -0
- package/dist/components/Container/Container.styles.js +15 -12
- package/dist/components/Divider/Divider.d.ts +11 -0
- package/dist/components/Divider/Divider.js +22 -17
- package/dist/components/Divider/Divider.styles.d.ts +23 -0
- package/dist/components/Divider/Divider.styles.js +18 -4
- package/dist/components/Expander/Expander.d.ts +34 -0
- package/dist/components/Expander/Expander.js +61 -47
- package/dist/components/Expander/Expander.styles.d.ts +60 -0
- package/dist/components/Expander/Expander.styles.js +47 -34
- package/dist/components/Field/Field.d.ts +60 -0
- package/dist/components/Field/Field.js +30 -29
- package/dist/components/Field/Field.styles.d.ts +88 -0
- package/dist/components/Field/Field.styles.js +13 -5
- package/dist/components/Field/FieldGroup/FieldGroup.d.ts +20 -0
- package/dist/components/Field/FieldGroup/FieldGroup.js +19 -18
- package/dist/components/Field/FieldGroup/FieldGroup.styles.d.ts +81 -0
- package/dist/components/Field/FieldGroup/FieldGroup.styles.js +13 -13
- package/dist/components/Field/components/FieldFooter.d.ts +25 -0
- package/dist/components/Field/components/FieldFooter.js +41 -31
- package/dist/components/Field/components/FieldHint.d.ts +30 -0
- package/dist/components/Field/components/FieldHint.js +15 -13
- package/dist/components/Hide/Hide.d.ts +30 -0
- package/dist/components/Hide/Hide.js +11 -16
- package/dist/components/Hide/helpers/normaliseHideValues.d.ts +4 -0
- package/dist/components/Hide/helpers/normaliseHideValues.js +6 -4
- package/dist/components/Icon/Icon.constants.d.ts +9 -0
- package/dist/components/Icon/Icon.constants.js +12 -0
- package/dist/components/Icon/Icon.d.ts +57 -0
- package/dist/components/Icon/Icon.js +70 -30
- package/dist/components/Icon/Icon.styles.d.ts +62 -0
- package/dist/components/Icon/Icon.styles.js +39 -4
- package/dist/components/Icon/IconProvider.d.ts +100 -0
- package/dist/components/Icon/IconProvider.js +66 -0
- package/dist/components/Icon/components/FontLoader.d.ts +31 -0
- package/dist/components/Icon/components/FontLoader.js +29 -0
- package/dist/components/Icon/helpers/getMaterialSymbolsList.d.ts +12 -0
- package/dist/components/Icon/helpers/getMaterialSymbolsList.js +12 -0
- package/dist/components/Icon/helpers/iconMapping.d.ts +78 -0
- package/dist/components/Icon/helpers/iconMapping.js +75 -0
- package/dist/components/Icon/hooks/useDynamicFontSubsetting.d.ts +45 -0
- package/dist/components/Icon/hooks/useDynamicFontSubsetting.js +78 -0
- package/dist/components/Icon/index.d.ts +4 -0
- package/dist/components/Icon/index.js +6 -2
- package/dist/components/Image/Image.d.ts +19 -0
- package/dist/components/Image/Image.js +18 -17
- package/dist/components/Image/Image.styles.js +1 -1
- package/dist/components/Inline/Inline.d.ts +34 -0
- package/dist/components/Inline/Inline.js +5 -4
- package/dist/components/Inline/Inline.styles.js +1 -1
- package/dist/components/Input/Input.d.ts +78 -0
- package/dist/components/Input/Input.js +140 -110
- package/dist/components/Input/Input.styles.d.ts +151 -0
- package/dist/components/Input/Input.styles.js +107 -34
- package/dist/components/Input/InputBase/InputBase.d.ts +41 -0
- package/dist/components/Input/InputBase/InputBase.js +16 -15
- package/dist/components/InputCurrency/InputCurrency.d.ts +30 -0
- package/dist/components/InputCurrency/InputCurrency.js +25 -24
- package/dist/components/Label/Label.d.ts +22 -0
- package/dist/components/Label/Label.js +4 -3
- package/dist/components/Label/Label.styles.js +5 -5
- package/dist/components/Label/LabelBase/LabelBase.d.ts +31 -0
- package/dist/components/Label/LabelBase/LabelBase.js +38 -32
- package/dist/components/Link/Link.d.ts +44 -0
- package/dist/components/Link/Link.js +45 -45
- package/dist/components/Link/Link.styles.d.ts +29 -0
- package/dist/components/Link/Link.styles.js +5 -11
- package/dist/components/Menu/Menu.d.ts +134 -0
- package/dist/components/Menu/Menu.js +91 -64
- package/dist/components/Menu/Menu.styles.d.ts +77 -0
- package/dist/components/Menu/Menu.styles.js +27 -159
- package/dist/components/Menu/MenuDivider/MenuDivider.d.ts +6 -0
- package/dist/components/Menu/MenuDivider/MenuDivider.js +13 -12
- package/dist/components/Menu/MenuGroup/MenuGroup.d.ts +59 -0
- package/dist/components/Menu/MenuGroup/MenuGroup.js +127 -0
- package/dist/components/Menu/MenuGroup/MenuGroup.styles.d.ts +39 -0
- package/dist/components/Menu/MenuGroup/MenuGroup.styles.js +94 -0
- package/dist/components/Menu/MenuItem/MenuItem.d.ts +111 -0
- package/dist/components/Menu/MenuItem/MenuItem.js +180 -119
- package/dist/components/Menu/MenuItem/MenuItem.styles.d.ts +170 -0
- package/dist/components/Menu/MenuItem/MenuItem.styles.js +286 -0
- package/dist/components/Menu/MenuItem/hooks/useMenuItemRole.js +10 -6
- package/dist/components/Menu/MenuText/MenuText.d.ts +25 -0
- package/dist/components/Menu/MenuText/MenuText.js +49 -46
- package/dist/components/Menu/index.d.ts +9 -0
- package/dist/components/Menu/index.js +15 -9
- package/dist/components/Modal/Modal.d.ts +84 -0
- package/dist/components/Modal/Modal.js +44 -42
- package/dist/components/Modal/Modal.styles.d.ts +110 -0
- package/dist/components/Modal/Modal.styles.js +38 -8
- package/dist/components/Modal/ModalProvider.d.ts +13 -0
- package/dist/components/Modal/ModalProvider.js +20 -19
- package/dist/components/Panel/Panel.d.ts +6 -0
- package/dist/components/Panel/Panel.js +12 -8
- package/dist/components/Panel/index.d.ts +1 -0
- package/dist/components/Panel/index.js +1 -3
- package/dist/components/Pill/Pill.d.ts +18 -0
- package/dist/components/Pill/Pill.js +29 -0
- package/dist/components/Pill/Pill.styles.d.ts +56 -0
- package/dist/components/Pill/Pill.styles.js +83 -0
- package/dist/components/Pill/index.d.ts +2 -0
- package/dist/components/Pill/index.js +6 -0
- package/dist/components/Placeholder/Placeholder.d.ts +28 -0
- package/dist/components/Placeholder/Placeholder.js +55 -26
- package/dist/components/Placeholder/Placeholder.styles.d.ts +1 -0
- package/dist/components/Placeholder/Placeholder.styles.js +13 -9
- package/dist/components/Popover/InputPopover/InputPopover.d.ts +21 -0
- package/dist/components/Popover/InputPopover/InputPopover.js +67 -67
- package/dist/components/Popover/InputPopover/InputPopoverActivator.d.ts +12 -0
- package/dist/components/Popover/InputPopover/InputPopoverActivator.js +23 -22
- package/dist/components/Popover/Popover.d.ts +100 -0
- package/dist/components/Popover/Popover.js +52 -48
- package/dist/components/Popover/Popover.styles.js +6 -4
- package/dist/components/Popover/components/PopoverActivator.d.ts +9 -0
- package/dist/components/Popover/components/PopoverActivator.js +23 -22
- package/dist/components/Popover/components/PopoverContent.d.ts +19 -0
- package/dist/components/Popover/components/PopoverContent.js +59 -47
- package/dist/components/Popover/helpers/composeFloatingProps.d.ts +16 -0
- package/dist/components/Popover/helpers/composeFloatingProps.js +15 -17
- package/dist/components/Popover/helpers/handlePopoverTabKey.d.ts +8 -0
- package/dist/components/Popover/helpers/handlePopoverTabKey.js +32 -21
- package/dist/components/Popover/hooks/useFloatingPopover.d.ts +192 -0
- package/dist/components/Popover/hooks/useFloatingPopover.js +145 -0
- package/dist/components/Popover/hooks/usePopover.d.ts +5 -0
- package/dist/components/Popover/hooks/usePopover.js +4 -141
- package/dist/components/Popover/hooks/usePopoverActivatorInteractions.d.ts +15 -0
- package/dist/components/Popover/hooks/usePopoverActivatorInteractions.js +12 -11
- package/dist/components/Popover/hooks/usePopoverImperativeHandle.d.ts +20 -0
- package/dist/components/Popover/hooks/usePopoverItem.d.ts +39 -0
- package/dist/components/Popover/hooks/usePopoverItem.js +4 -4
- package/dist/components/Popover/hooks/usePopoverNavigation.js +14 -13
- package/dist/components/Popover/index.d.ts +8 -0
- package/dist/components/Popover/index.js +4 -2
- package/dist/components/Progress/Progress.d.ts +52 -0
- package/dist/components/Progress/Progress.js +39 -36
- package/dist/components/Progress/Progress.styles.js +10 -2
- package/dist/components/Provider/Provider.d.ts +31 -0
- package/dist/components/Provider/Provider.js +9 -8
- package/dist/components/Provider/index.js +1 -1
- package/dist/components/Radio/Radio.d.ts +52 -0
- package/dist/components/Radio/Radio.js +87 -90
- package/dist/components/Radio/Radio.styles.d.ts +56 -0
- package/dist/components/Radio/Radio.styles.js +68 -153
- package/dist/components/RadioGroup/RadioGroup.d.ts +58 -0
- package/dist/components/RadioGroup/RadioGroup.js +65 -66
- package/dist/components/RadioGroup/RadioGroup.styles.d.ts +41 -0
- package/dist/components/RadioGroup/RadioGroup.styles.js +2 -11
- package/dist/components/RadioMark/RadioMark.d.ts +19 -0
- package/dist/components/RadioMark/RadioMark.js +31 -0
- package/dist/components/RadioMark/RadioMark.styles.d.ts +15 -0
- package/dist/components/RadioMark/RadioMark.styles.js +45 -0
- package/dist/components/RadioMark/index.d.ts +2 -0
- package/dist/components/RadioMark/index.js +6 -0
- package/dist/components/Readonly/Readonly.d.ts +16 -0
- package/dist/components/Readonly/Readonly.js +17 -16
- package/dist/components/Readonly/Readonly.styles.d.ts +106 -0
- package/dist/components/Readonly/Readonly.styles.js +12 -12
- package/dist/components/Row/Row.d.ts +31 -0
- package/dist/components/Row/Row.js +7 -6
- package/dist/components/Row/Row.styles.js +1 -1
- package/dist/components/Select/Select.d.ts +175 -0
- package/dist/components/Select/Select.js +22 -94
- package/dist/components/Select/Select.styles.d.ts +59 -0
- package/dist/components/Select/Select.styles.js +49 -74
- package/dist/components/Select/SelectBody/SelectBody.d.ts +16 -0
- package/dist/components/Select/SelectBody/SelectBody.js +30 -0
- package/dist/components/Select/SelectBody/SelectBody.styles.js +23 -0
- package/dist/components/Select/SelectCreate/SelectCreate.d.ts +32 -0
- package/dist/components/Select/SelectCreate/SelectCreate.js +43 -0
- package/dist/components/Select/SelectHeading/SelectHeading.d.ts +20 -0
- package/dist/components/Select/SelectHeading/SelectHeading.js +78 -0
- package/dist/components/Select/SelectLabel/SelectLabel.d.ts +7 -0
- package/dist/components/Select/SelectLabel/SelectLabel.js +51 -0
- package/dist/components/Select/SelectLabel/SelectLabel.styles.d.ts +15 -0
- package/dist/components/Select/SelectLabel/SelectLabel.styles.js +73 -0
- package/dist/components/Select/SelectMenu/SelectMenu.d.ts +55 -0
- package/dist/components/Select/SelectMenu/SelectMenu.js +195 -0
- package/dist/components/Select/SelectMenu/SelectMenu.styles.js +16 -0
- package/dist/components/Select/SelectMenu/SelectMenuItem.d.ts +5 -0
- package/dist/components/Select/SelectMenu/SelectMenuItem.js +67 -0
- package/dist/components/Select/SelectSearch/SelectSearch.d.ts +6 -0
- package/dist/components/Select/SelectSearch/SelectSearch.js +45 -0
- package/dist/components/Select/SelectSearch/SelectSearch.styles.js +28 -0
- package/dist/components/Select/SelectSearchInput/SelectSearchInput.js +47 -0
- package/dist/components/Select/SelectSearchInput/SelectSearchInput.styles.js +26 -0
- package/dist/components/Select/SelectTags/SelectTags.d.ts +35 -0
- package/dist/components/Select/SelectTags/SelectTags.js +174 -0
- package/dist/components/Select/SelectTags/SelectTags.styles.d.ts +16 -0
- package/dist/components/Select/SelectTags/SelectTags.styles.js +73 -0
- package/dist/components/Select/components/NativeSelect.d.ts +50 -0
- package/dist/components/Select/components/NativeSelect.js +89 -0
- package/dist/components/Select/components/NativeSelect.styles.d.ts +101 -0
- package/dist/components/Select/components/NativeSelect.styles.js +133 -0
- package/dist/components/Select/components/SelectActivator.d.ts +41 -0
- package/dist/components/Select/components/SelectActivator.js +69 -0
- package/dist/components/Select/components/SelectHiddenInput.d.ts +30 -0
- package/dist/components/Select/components/SelectHiddenInput.js +32 -0
- package/dist/components/Select/components/SelectOptions.d.ts +11 -0
- package/dist/components/Select/components/SelectOptions.js +219 -0
- package/dist/components/Select/hooks/useSelectState.d.ts +17 -0
- package/dist/components/Select/hooks/useSelectState.js +18 -0
- package/dist/components/Select/index.d.ts +11 -0
- package/dist/components/Select/index.js +22 -6
- package/dist/components/Skeleton/Skeleton.d.ts +28 -0
- package/dist/components/Skeleton/Skeleton.js +11 -10
- package/dist/components/Skeleton/Skeleton.styles.js +2 -2
- package/dist/components/SkipLink/SkipLink.d.ts +19 -0
- package/dist/components/SkipLink/SkipLink.js +13 -12
- package/dist/components/SkipLink/SkipLink.styles.js +1 -1
- package/dist/components/Slideout/Slideout.d.ts +85 -0
- package/dist/components/Slideout/Slideout.js +38 -37
- package/dist/components/Slideout/Slideout.styles.d.ts +64 -0
- package/dist/components/Slideout/Slideout.styles.js +15 -14
- package/dist/components/Slideout/SlideoutProvider.d.ts +13 -0
- package/dist/components/Slideout/SlideoutProvider.js +16 -15
- package/dist/components/Slideout/components/SlideoutInner.d.ts +13 -0
- package/dist/components/Slideout/components/SlideoutInner.js +24 -23
- package/dist/components/Slideout/hooks/usePushElement.js +1 -1
- package/dist/components/Slider/Slider.js +9 -8
- package/dist/components/Slider/Slider.styles.js +7 -13
- package/dist/components/Slider/components/SliderTicks.d.ts +61 -0
- package/dist/components/Slider/components/SliderTicks.js +33 -30
- package/dist/components/Spinner/Spinner.d.ts +31 -0
- package/dist/components/Spinner/Spinner.js +36 -18
- package/dist/components/Spinner/Spinner.styles.d.ts +2 -0
- package/dist/components/Spinner/Spinner.styles.js +32 -4
- package/dist/components/Spinner/index.js +3 -2
- package/dist/components/Stack/Stack.d.ts +30 -0
- package/dist/components/Stack/Stack.js +12 -11
- package/dist/components/Stack/Stack.styles.d.ts +33 -0
- package/dist/components/Stack/Stack.styles.js +23 -3
- package/dist/components/Styled/Styled.d.ts +19 -0
- package/dist/components/Styled/Styled.js +16 -0
- package/dist/components/Styled/index.d.ts +1 -0
- package/dist/components/Styled/index.js +4 -0
- package/dist/components/TabSet/Tab/Tab.d.ts +33 -0
- package/dist/components/TabSet/Tab/Tab.js +106 -89
- package/dist/components/TabSet/Tab/Tab.styles.d.ts +28 -0
- package/dist/components/TabSet/Tab/Tab.styles.js +21 -10
- package/dist/components/TabSet/TabSet.d.ts +48 -0
- package/dist/components/TabSet/TabSet.js +86 -65
- package/dist/components/TabSet/TabSet.styles.d.ts +64 -0
- package/dist/components/TabSet/TabSet.styles.js +103 -22
- package/dist/components/TabSet/TabSetProvider.d.ts +38 -0
- package/dist/components/TabSet/TabSetProvider.js +58 -52
- package/dist/components/Table/Table.d.ts +70 -0
- package/dist/components/Table/Table.js +19 -18
- package/dist/components/Table/Table.styles.js +13 -9
- package/dist/components/Table/TableBody/TableBody.d.ts +32 -0
- package/dist/components/Table/TableBody/TableBody.js +71 -66
- package/dist/components/Table/TableFormattedValue/TableFormattedValue.d.ts +28 -0
- package/dist/components/Table/TableFormattedValue/TableFormattedValue.js +10 -9
- package/dist/components/Table/TableProvider.d.ts +17 -0
- package/dist/components/Table/TableProvider.js +1 -1
- package/dist/components/Table/components/TableBodyCell.d.ts +15 -0
- package/dist/components/Table/components/TableBodyCell.js +17 -16
- package/dist/components/Table/components/TableEmpty.d.ts +5 -0
- package/dist/components/Table/components/TableEmpty.js +9 -8
- package/dist/components/Table/components/TableHeader.d.ts +11 -0
- package/dist/components/Table/components/TableHeader.js +13 -12
- package/dist/components/Table/components/TableHeaderCell.d.ts +12 -0
- package/dist/components/Table/components/TableHeaderCell.js +18 -17
- package/dist/components/Table/components/TableRows.d.ts +15 -0
- package/dist/components/Table/components/TableRows.js +27 -26
- package/dist/components/Table/components/TableSortButton.d.ts +12 -0
- package/dist/components/Table/components/TableSortButton.js +48 -21
- package/dist/components/Table/hooks/useTable.d.ts +5 -0
- package/dist/components/Table/hooks/useTable.js +6 -0
- package/dist/components/Table/hooks/useTableColumnSort.js +1 -1
- package/dist/components/Table/hooks/useTableColumnStyles.js +3 -3
- package/dist/components/Table/index.d.ts +6 -0
- package/dist/components/Table/index.js +3 -1
- package/dist/components/Tag/Tag.d.ts +58 -0
- package/dist/components/Tag/Tag.js +54 -33
- package/dist/components/Tag/Tag.styles.d.ts +120 -0
- package/dist/components/Tag/Tag.styles.js +107 -13
- package/dist/components/Tag/TagInput/TagInput.js +84 -79
- package/dist/components/Tag/TagInput/TagInput.styles.js +10 -13
- package/dist/components/Text/Text.d.ts +12 -0
- package/dist/components/Text/Text.js +17 -16
- package/dist/components/Text/Text.styles.js +5 -5
- package/dist/components/Toaster/Toaster.d.ts +28 -0
- package/dist/components/Toaster/Toaster.js +26 -25
- package/dist/components/Toaster/Toaster.styles.js +1 -1
- package/dist/components/Toaster/ToasterProvider.d.ts +13 -0
- package/dist/components/Toaster/ToasterProvider.js +32 -31
- package/dist/components/Toaster/components/Toast/Toast.d.ts +27 -0
- package/dist/components/Toaster/components/Toast/Toast.js +64 -93
- package/dist/components/Toaster/components/Toast/Toast.styles.d.ts +36 -0
- package/dist/components/Toaster/components/Toast/Toast.styles.js +27 -141
- package/dist/components/Toaster/hooks/useToaster.js +13 -13
- package/dist/components/Toaster/index.d.ts +6 -0
- package/dist/components/Toggle/Toggle.d.ts +40 -0
- package/dist/components/Toggle/Toggle.js +54 -48
- package/dist/components/Toggle/Toggle.styles.js +15 -7
- package/dist/components/Tooltip/Tooltip.d.ts +31 -0
- package/dist/components/Tooltip/Tooltip.js +16 -15
- package/dist/components/Tooltip/Tooltip.styles.js +7 -4
- package/dist/components/ValidationMessage/ValidationLink/ValidationLink.d.ts +22 -0
- package/dist/components/ValidationMessage/ValidationLink/ValidationLink.js +11 -10
- package/dist/components/ValidationMessage/ValidationMessage.d.ts +38 -0
- package/dist/components/ValidationMessage/ValidationMessage.js +30 -22
- package/dist/components/ValidationMessage/ValidationSummary/ValidationSummary.d.ts +34 -0
- package/dist/components/ValidationMessage/ValidationSummary/ValidationSummary.js +21 -20
- package/dist/constants.d.ts +144 -0
- package/dist/constants.js +52 -100
- package/dist/create-recipe-BDTG8O8S.js +50 -0
- package/dist/css-DVJ-ALYD.js +228 -0
- package/dist/cva-3iuaj0TL.js +63 -0
- package/dist/enums.d.ts +88 -0
- package/dist/enums.js +2 -20
- package/dist/factory-CcYfm2kB.js +58 -0
- package/dist/floating-ui.react-B0nDXRN6.js +3474 -0
- package/dist/helpers/dom/getActiveElement.js +4 -5
- package/dist/helpers/formatting/stringReplacer.d.ts +6 -0
- package/dist/helpers/label-value/getValueFromLabelValues.d.ts +5 -0
- package/dist/helpers/label-value/highlightQueryInLabel.js +3 -4
- package/dist/helpers/label-value/highlightQueryInLabelValue.js +4 -4
- package/dist/helpers/label-value/searchLabelValues.d.ts +2 -0
- package/dist/helpers/label-value/searchLabelValues.js +6 -5
- package/dist/helpers/styling/iressCss.d.ts +10 -0
- package/dist/helpers/styling/iressCss.js +3 -5
- package/dist/helpers/utility/idsLogger.d.ts +1 -0
- package/dist/highlightQueryInLabel-Cx7nIoII.js +399 -0
- package/dist/hooks/useBreakpoint.d.ts +19 -0
- package/dist/hooks/useBreakpoint.js +12 -11
- package/dist/hooks/useResponsiveProps.d.ts +25 -0
- package/dist/hooks/useResponsiveProps.js +18 -18
- package/dist/index-BPhnth66.js +784 -0
- package/dist/index.d-CZvOUeIl.js +3808 -0
- package/dist/interfaces.d.ts +436 -0
- package/dist/is-valid-prop-C5D641yn.js +7 -0
- package/dist/main.d.ts +65 -0
- package/dist/main.js +314 -313
- package/dist/patterns/Breadcrumbs/Breadcrumbs.d.ts +47 -0
- package/dist/patterns/Breadcrumbs/Breadcrumbs.js +130 -0
- package/dist/patterns/Breadcrumbs/Breadcrumbs.styles.d.ts +1 -0
- package/dist/patterns/Breadcrumbs/Breadcrumbs.styles.js +57 -0
- package/dist/patterns/Breadcrumbs/index.d.ts +2 -0
- package/dist/patterns/Breadcrumbs/index.js +6 -0
- package/dist/patterns/ContextualMenu/ContextualMenu.d.ts +50 -0
- package/dist/patterns/ContextualMenu/ContextualMenu.js +99 -0
- package/dist/patterns/ContextualMenu/ContextualMenu.styles.d.ts +59 -0
- package/dist/patterns/ContextualMenu/ContextualMenu.styles.js +100 -0
- package/dist/patterns/ContextualMenu/index.d.ts +2 -0
- package/dist/patterns/ContextualMenu/index.js +6 -0
- package/dist/patterns/DropdownMenu/DropdownMenu.d.ts +76 -0
- package/dist/patterns/DropdownMenu/DropdownMenu.js +221 -0
- package/dist/patterns/DropdownMenu/DropdownMenu.styles.d.ts +1 -0
- package/dist/patterns/DropdownMenu/DropdownMenu.styles.js +75 -0
- package/dist/patterns/DropdownMenu/hooks/useDropdownMenuFlags.d.ts +7 -0
- package/dist/patterns/DropdownMenu/hooks/useDropdownMenuFlags.js +25 -0
- package/dist/patterns/DropdownMenu/index.d.ts +2 -0
- package/dist/patterns/DropdownMenu/index.js +6 -0
- package/dist/patterns/Form/Form.d.ts +11 -0
- package/dist/patterns/Form/Form.js +7 -9
- package/dist/patterns/Form/Form.styles.d.ts +30 -0
- package/dist/patterns/Form/Form.styles.js +1 -1
- package/dist/patterns/Form/FormContext.js +3 -2
- package/dist/patterns/Form/FormField/FormField.d.ts +76 -0
- package/dist/patterns/Form/FormField/FormField.js +47 -38
- package/dist/patterns/Form/FormField/FormFieldset.d.ts +43 -0
- package/dist/patterns/Form/FormField/FormFieldset.js +26 -27
- package/dist/patterns/Form/FormField/hooks/useFieldRenderProps.d.ts +10 -0
- package/dist/patterns/Form/FormField/hooks/useFieldRenderProps.js +11 -29
- package/dist/patterns/Form/FormValidationSummary/FormValidationSummary.d.ts +18 -0
- package/dist/patterns/Form/FormValidationSummary/FormValidationSummary.js +26 -23
- package/dist/patterns/Form/HookForm/HookForm.d.ts +144 -0
- package/dist/patterns/Form/HookForm/HookForm.js +75 -75
- package/dist/patterns/Form/components/LongForm.d.ts +55 -0
- package/dist/patterns/Form/components/LongForm.js +15 -15
- package/dist/patterns/Form/components/ShortForm.d.ts +38 -0
- package/dist/patterns/Form/components/ShortForm.js +21 -20
- package/dist/patterns/Loading/Loading.d.ts +48 -0
- package/dist/patterns/Loading/Loading.js +7 -6
- package/dist/patterns/Loading/Loading.styles.d.ts +186 -0
- package/dist/patterns/Loading/Loading.styles.js +3 -3
- package/dist/patterns/Loading/LoadingSuspense.d.ts +74 -0
- package/dist/patterns/Loading/LoadingSuspense.js +22 -21
- package/dist/patterns/Loading/components/ComponentLoading.d.ts +56 -0
- package/dist/patterns/Loading/components/ComponentLoading.js +23 -22
- package/dist/patterns/Loading/components/DefaultLoading.d.ts +30 -0
- package/dist/patterns/Loading/components/DefaultLoading.js +14 -13
- package/dist/patterns/Loading/components/LongLoading.d.ts +63 -0
- package/dist/patterns/Loading/components/LongLoading.js +34 -34
- package/dist/patterns/Loading/components/PageLoading.d.ts +48 -0
- package/dist/patterns/Loading/components/PageLoading.js +36 -35
- package/dist/patterns/Loading/components/StartUpLoading.d.ts +75 -0
- package/dist/patterns/Loading/components/StartUpLoading.js +34 -33
- package/dist/patterns/Loading/components/ValidateLoading.d.ts +41 -0
- package/dist/patterns/Loading/components/ValidateLoading.js +27 -26
- package/dist/patterns/Loading/hooks/useEstimatedProgressValue.js +17 -22
- package/dist/patterns/Loading/hooks/useShouldRenderLoading.js +20 -14
- package/dist/patterns/Shadow/Shadow.d.ts +30 -0
- package/dist/patterns/Shadow/Shadow.js +4319 -7399
- package/dist/patterns/Shadow/meta/Thumbnail.d.ts +2 -0
- package/dist/patterns/Shadow/meta/index.d.ts +7 -0
- package/dist/patterns/SideNav/SideNav.d.ts +156 -0
- package/dist/patterns/SideNav/SideNav.helpers.d.ts +5 -0
- package/dist/patterns/SideNav/SideNav.helpers.js +4 -0
- package/dist/patterns/SideNav/SideNav.js +212 -0
- package/dist/patterns/SideNav/SideNav.styles.d.ts +14 -0
- package/dist/patterns/SideNav/SideNav.styles.js +87 -0
- package/dist/patterns/SideNav/hooks/useSideNavState.d.ts +47 -0
- package/dist/patterns/SideNav/hooks/useSideNavState.js +57 -0
- package/dist/patterns/SideNav/index.d.ts +2 -0
- package/dist/patterns/SideNav/index.js +6 -0
- package/dist/patterns/SideNav/meta/Thumbnail.d.ts +2 -0
- package/dist/patterns/SideNav/meta/index.d.ts +7 -0
- package/dist/style.css +1 -1
- package/dist/styled-system/patterns/divider.d.ts +22 -0
- package/dist/styled-system/patterns/float.d.ts +23 -0
- package/dist/styled-system/recipes/button.d.ts +41 -0
- package/dist/styled-system/recipes/table.d.ts +49 -0
- package/dist/styled-system/tokens/tokens.d.ts +30 -0
- package/dist/styled-system/types/composition.d.ts +227 -0
- package/dist/styled-system/types/conditions.d.ts +334 -0
- package/dist/styled-system/types/pattern.d.ts +78 -0
- package/dist/styled-system/types/prop-type.d.ts +243 -0
- package/dist/styled-system/types/style-props.d.ts +7519 -0
- package/dist/sva-CsHRIRDW.js +34 -0
- package/dist/types.d.ts +66 -0
- package/package.json +49 -32
- package/dist/Autocomplete-C5ubHBTi.js +0 -358
- package/dist/Button-mmhMLwp9.js +0 -359
- package/dist/Provider-8wS70V56.js +0 -64
- package/dist/TableProvider-bdUNuoG-.js +0 -81
- package/dist/components/Badge/Badge.js +0 -43
- package/dist/components/Badge/Badge.styles.js +0 -105
- package/dist/components/Badge/index.js +0 -6
- package/dist/components/Filter/Filter.js +0 -225
- package/dist/components/Filter/Filter.styles.js +0 -65
- package/dist/components/Filter/components/FilterLabel.js +0 -10
- package/dist/components/Filter/components/FilterResetButton.js +0 -27
- package/dist/components/Filter/components/FilterResultsDescriptor.js +0 -18
- package/dist/components/Filter/components/FilterSearch.js +0 -32
- package/dist/components/Filter/hooks/useFilterFlags.js +0 -25
- package/dist/components/Filter/index.js +0 -4
- package/dist/components/Panel/Panel.styles.js +0 -23
- package/dist/components/Popover/components/NestedPopoverActivator.js +0 -9
- package/dist/components/RichSelect/RichSelect.js +0 -40
- package/dist/components/RichSelect/RichSelect.styles.js +0 -96
- package/dist/components/RichSelect/SelectBody/SelectBody.js +0 -33
- package/dist/components/RichSelect/SelectBody/SelectBody.styles.js +0 -21
- package/dist/components/RichSelect/SelectCreate/SelectCreate.js +0 -37
- package/dist/components/RichSelect/SelectHeading/SelectHeading.js +0 -74
- package/dist/components/RichSelect/SelectLabel/SelectLabel.js +0 -50
- package/dist/components/RichSelect/SelectLabel/SelectLabel.styles.js +0 -91
- package/dist/components/RichSelect/SelectMenu/SelectMenu.js +0 -115
- package/dist/components/RichSelect/SelectMenu/SelectMenu.styles.js +0 -14
- package/dist/components/RichSelect/SelectMenu/SelectMenuItem.js +0 -64
- package/dist/components/RichSelect/SelectSearch/SelectSearch.js +0 -47
- package/dist/components/RichSelect/SelectSearch/SelectSearch.styles.js +0 -28
- package/dist/components/RichSelect/SelectSearchInput/SelectSearchInput.js +0 -46
- package/dist/components/RichSelect/SelectSearchInput/SelectSearchInput.styles.js +0 -32
- package/dist/components/RichSelect/SelectTags/SelectTags.js +0 -163
- package/dist/components/RichSelect/SelectTags/SelectTags.styles.js +0 -86
- package/dist/components/RichSelect/components/SelectActivator.js +0 -65
- package/dist/components/RichSelect/components/SelectHiddenInput.js +0 -29
- package/dist/components/RichSelect/components/SelectOptions.js +0 -208
- package/dist/components/RichSelect/hooks/useRichSelectState.js +0 -18
- package/dist/components/RichSelect/index.js +0 -22
- package/dist/components/Select/SelectOption/SelectOption.js +0 -10
- package/dist/components/Select/components/SelectControl.js +0 -41
- package/dist/components/Select/components/SelectReadonly.js +0 -39
- package/dist/components/Select/helpers/nodesToSelectOptions.js +0 -41
- package/dist/components/Toaster/components/Toast/ToastAnimated.js +0 -52
- package/dist/constants/index.css +0 -1
- package/dist/constants/index.scss +0 -2
- package/dist/create-recipe-C-ASk1Hy.js +0 -50
- package/dist/css-fGu_jDvv.js +0 -228
- package/dist/cva-JiDXAa83.js +0 -63
- package/dist/factory-oPXoMw9H.js +0 -58
- package/dist/floating-ui.react-BetVZ099.js +0 -3464
- package/dist/fuzzysort-DKAolWVP.js +0 -397
- package/dist/helpers/dom/domUtils.js +0 -12
- package/dist/helpers/dom/hasShadowDom.js +0 -4
- package/dist/helpers/form/isValidFormInputElement.js +0 -4
- package/dist/helpers/label-value/getQueryRangeExclusive.js +0 -14
- package/dist/helpers/responsive/getResponsiveLayoutModifiers.js +0 -11
- package/dist/helpers/responsive/getResponsivePaddingClasses.js +0 -11
- package/dist/helpers/styling/getVariablePadding.js +0 -38
- package/dist/helpers/styling/mapGutterToGap.js +0 -23
- package/dist/index-CZ9ot38T.js +0 -600
- package/dist/index.esm-B6vzbp0e.js +0 -1215
- package/dist/is-valid-prop-Ce0wiweq.js +0 -7
- package/dist/src/components/Alert/Alert.d.ts +0 -57
- package/dist/src/components/Alert/Alert.styles.d.ts +0 -128
- package/dist/src/components/Autocomplete/Autocomplete.d.ts +0 -52
- package/dist/src/components/Autocomplete/components/AutocompleteInstructions.d.ts +0 -7
- package/dist/src/components/Autocomplete/hooks/useAutocompleteSearch.d.ts +0 -73
- package/dist/src/components/Badge/Badge.d.ts +0 -21
- package/dist/src/components/Badge/Badge.styles.d.ts +0 -63
- package/dist/src/components/Badge/index.d.ts +0 -2
- package/dist/src/components/Button/Button.d.ts +0 -90
- package/dist/src/components/ButtonGroup/ButtonGroup.d.ts +0 -35
- package/dist/src/components/Card/Card.d.ts +0 -44
- package/dist/src/components/Card/Card.styles.d.ts +0 -76
- package/dist/src/components/Checkbox/Checkbox.d.ts +0 -66
- package/dist/src/components/Checkbox/Checkbox.styles.d.ts +0 -59
- package/dist/src/components/CheckboxGroup/CheckboxGroup.d.ts +0 -55
- package/dist/src/components/CheckboxMark/CheckboxMark.d.ts +0 -16
- package/dist/src/components/Col/Col.d.ts +0 -23
- package/dist/src/components/Col/Col.styles.d.ts +0 -16
- package/dist/src/components/Container/Container.d.ts +0 -13
- package/dist/src/components/Container/Container.styles.d.ts +0 -35
- package/dist/src/components/Divider/Divider.d.ts +0 -8
- package/dist/src/components/Divider/Divider.styles.d.ts +0 -18
- package/dist/src/components/Expander/Expander.d.ts +0 -31
- package/dist/src/components/Expander/Expander.styles.d.ts +0 -45
- package/dist/src/components/Field/Field.d.ts +0 -57
- package/dist/src/components/Field/Field.styles.d.ts +0 -88
- package/dist/src/components/Field/FieldGroup/FieldGroup.d.ts +0 -17
- package/dist/src/components/Field/FieldGroup/FieldGroup.styles.d.ts +0 -81
- package/dist/src/components/Field/components/FieldFooter.d.ts +0 -22
- package/dist/src/components/Field/components/FieldHint.d.ts +0 -27
- package/dist/src/components/Filter/Filter.d.ts +0 -75
- package/dist/src/components/Filter/Filter.styles.d.ts +0 -2
- package/dist/src/components/Filter/components/FilterLabel.d.ts +0 -3
- package/dist/src/components/Filter/components/FilterResetButton.d.ts +0 -1
- package/dist/src/components/Filter/components/FilterResultsDescriptor.d.ts +0 -15
- package/dist/src/components/Filter/components/FilterSearch.d.ts +0 -15
- package/dist/src/components/Filter/hooks/useFilterFlags.d.ts +0 -7
- package/dist/src/components/Filter/index.d.ts +0 -1
- package/dist/src/components/Hide/Hide.d.ts +0 -28
- package/dist/src/components/Hide/helpers/normaliseHideValues.d.ts +0 -2
- package/dist/src/components/Icon/Icon.d.ts +0 -36
- package/dist/src/components/Icon/Icon.styles.d.ts +0 -38
- package/dist/src/components/Icon/index.d.ts +0 -2
- package/dist/src/components/Image/Image.d.ts +0 -16
- package/dist/src/components/Inline/Inline.d.ts +0 -31
- package/dist/src/components/Input/Input.d.ts +0 -57
- package/dist/src/components/Input/Input.styles.d.ts +0 -121
- package/dist/src/components/Input/InputBase/InputBase.d.ts +0 -39
- package/dist/src/components/InputCurrency/InputCurrency.d.ts +0 -28
- package/dist/src/components/Label/Label.d.ts +0 -19
- package/dist/src/components/Label/LabelBase/LabelBase.d.ts +0 -28
- package/dist/src/components/Link/Link.d.ts +0 -42
- package/dist/src/components/Link/Link.styles.d.ts +0 -29
- package/dist/src/components/Menu/Menu.d.ts +0 -110
- package/dist/src/components/Menu/Menu.styles.d.ts +0 -121
- package/dist/src/components/Menu/MenuDivider/MenuDivider.d.ts +0 -3
- package/dist/src/components/Menu/MenuItem/MenuItem.d.ts +0 -99
- package/dist/src/components/Menu/MenuText/MenuText.d.ts +0 -19
- package/dist/src/components/Menu/index.d.ts +0 -6
- package/dist/src/components/Modal/Modal.d.ts +0 -74
- package/dist/src/components/Modal/Modal.styles.d.ts +0 -87
- package/dist/src/components/Modal/ModalProvider.d.ts +0 -10
- package/dist/src/components/Panel/Panel.d.ts +0 -15
- package/dist/src/components/Panel/Panel.styles.d.ts +0 -7
- package/dist/src/components/Panel/index.d.ts +0 -2
- package/dist/src/components/Placeholder/Placeholder.d.ts +0 -21
- package/dist/src/components/Placeholder/Placeholder.styles.d.ts +0 -1
- package/dist/src/components/Popover/InputPopover/InputPopover.d.ts +0 -21
- package/dist/src/components/Popover/InputPopover/InputPopoverActivator.d.ts +0 -9
- package/dist/src/components/Popover/Popover.d.ts +0 -91
- package/dist/src/components/Popover/components/NestedPopoverActivator.d.ts +0 -5
- package/dist/src/components/Popover/components/PopoverActivator.d.ts +0 -6
- package/dist/src/components/Popover/components/PopoverContent.d.ts +0 -7
- package/dist/src/components/Popover/helpers/composeFloatingProps.d.ts +0 -16
- package/dist/src/components/Popover/helpers/handlePopoverTabKey.d.ts +0 -8
- package/dist/src/components/Popover/hooks/usePopover.d.ts +0 -124
- package/dist/src/components/Popover/hooks/usePopoverActivatorInteractions.d.ts +0 -15
- package/dist/src/components/Popover/hooks/usePopoverImperativeHandle.d.ts +0 -8
- package/dist/src/components/Popover/hooks/usePopoverItem.d.ts +0 -39
- package/dist/src/components/Popover/index.d.ts +0 -5
- package/dist/src/components/Progress/Progress.d.ts +0 -44
- package/dist/src/components/Provider/Provider.d.ts +0 -24
- package/dist/src/components/Radio/Radio.d.ts +0 -47
- package/dist/src/components/Radio/Radio.styles.d.ts +0 -51
- package/dist/src/components/RadioGroup/RadioGroup.d.ts +0 -56
- package/dist/src/components/RadioGroup/RadioGroup.styles.d.ts +0 -50
- package/dist/src/components/Readonly/Readonly.d.ts +0 -14
- package/dist/src/components/Readonly/Readonly.styles.d.ts +0 -106
- package/dist/src/components/RichSelect/RichSelect.d.ts +0 -152
- package/dist/src/components/RichSelect/RichSelect.styles.d.ts +0 -59
- package/dist/src/components/RichSelect/SelectBody/SelectBody.d.ts +0 -13
- package/dist/src/components/RichSelect/SelectCreate/SelectCreate.d.ts +0 -29
- package/dist/src/components/RichSelect/SelectHeading/SelectHeading.d.ts +0 -17
- package/dist/src/components/RichSelect/SelectLabel/SelectLabel.d.ts +0 -4
- package/dist/src/components/RichSelect/SelectLabel/SelectLabel.styles.d.ts +0 -15
- package/dist/src/components/RichSelect/SelectMenu/SelectMenu.d.ts +0 -52
- package/dist/src/components/RichSelect/SelectMenu/SelectMenuItem.d.ts +0 -2
- package/dist/src/components/RichSelect/SelectSearch/SelectSearch.d.ts +0 -3
- package/dist/src/components/RichSelect/SelectTags/SelectTags.d.ts +0 -32
- package/dist/src/components/RichSelect/SelectTags/SelectTags.styles.d.ts +0 -16
- package/dist/src/components/RichSelect/components/SelectActivator.d.ts +0 -38
- package/dist/src/components/RichSelect/components/SelectHiddenInput.d.ts +0 -27
- package/dist/src/components/RichSelect/components/SelectOptions.d.ts +0 -8
- package/dist/src/components/RichSelect/hooks/useRichSelectState.d.ts +0 -17
- package/dist/src/components/RichSelect/index.d.ts +0 -10
- package/dist/src/components/Row/Row.d.ts +0 -28
- package/dist/src/components/Select/Select.d.ts +0 -47
- package/dist/src/components/Select/Select.styles.d.ts +0 -94
- package/dist/src/components/Select/SelectOption/SelectOption.d.ts +0 -9
- package/dist/src/components/Select/components/SelectControl.d.ts +0 -24
- package/dist/src/components/Select/components/SelectReadonly.d.ts +0 -16
- package/dist/src/components/Select/helpers/nodesToSelectOptions.d.ts +0 -16
- package/dist/src/components/Select/index.d.ts +0 -3
- package/dist/src/components/Skeleton/Skeleton.d.ts +0 -25
- package/dist/src/components/SkipLink/SkipLink.d.ts +0 -17
- package/dist/src/components/Slideout/Slideout.d.ts +0 -82
- package/dist/src/components/Slideout/Slideout.styles.d.ts +0 -66
- package/dist/src/components/Slideout/SlideoutProvider.d.ts +0 -10
- package/dist/src/components/Slideout/components/SlideoutInner.d.ts +0 -10
- package/dist/src/components/Slider/components/SliderTicks.d.ts +0 -58
- package/dist/src/components/Spinner/Spinner.d.ts +0 -9
- package/dist/src/components/Spinner/Spinner.styles.d.ts +0 -1
- package/dist/src/components/Stack/Stack.d.ts +0 -23
- package/dist/src/components/Stack/Stack.styles.d.ts +0 -13
- package/dist/src/components/TabSet/Tab/Tab.d.ts +0 -31
- package/dist/src/components/TabSet/Tab/Tab.styles.d.ts +0 -17
- package/dist/src/components/TabSet/TabSet.d.ts +0 -38
- package/dist/src/components/TabSet/TabSet.styles.d.ts +0 -25
- package/dist/src/components/TabSet/TabSetProvider.d.ts +0 -32
- package/dist/src/components/Table/Table.d.ts +0 -67
- package/dist/src/components/Table/TableBody/TableBody.d.ts +0 -29
- package/dist/src/components/Table/TableFormattedValue/TableFormattedValue.d.ts +0 -25
- package/dist/src/components/Table/TableProvider.d.ts +0 -14
- package/dist/src/components/Table/components/TableBodyCell.d.ts +0 -12
- package/dist/src/components/Table/components/TableEmpty.d.ts +0 -2
- package/dist/src/components/Table/components/TableHeader.d.ts +0 -8
- package/dist/src/components/Table/components/TableHeaderCell.d.ts +0 -9
- package/dist/src/components/Table/components/TableRows.d.ts +0 -12
- package/dist/src/components/Table/components/TableSortButton.d.ts +0 -9
- package/dist/src/components/Table/index.d.ts +0 -5
- package/dist/src/components/Tag/Tag.d.ts +0 -26
- package/dist/src/components/Tag/Tag.styles.d.ts +0 -31
- package/dist/src/components/Text/Text.d.ts +0 -9
- package/dist/src/components/Toaster/Toaster.d.ts +0 -25
- package/dist/src/components/Toaster/ToasterProvider.d.ts +0 -10
- package/dist/src/components/Toaster/components/Toast/Toast.d.ts +0 -32
- package/dist/src/components/Toaster/components/Toast/Toast.styles.d.ts +0 -90
- package/dist/src/components/Toaster/components/Toast/ToastAnimated.d.ts +0 -19
- package/dist/src/components/Toaster/index.d.ts +0 -7
- package/dist/src/components/Toggle/Toggle.d.ts +0 -33
- package/dist/src/components/Tooltip/Tooltip.d.ts +0 -28
- package/dist/src/components/ValidationMessage/ValidationLink/ValidationLink.d.ts +0 -19
- package/dist/src/components/ValidationMessage/ValidationMessage.d.ts +0 -35
- package/dist/src/components/ValidationMessage/ValidationSummary/ValidationSummary.d.ts +0 -31
- package/dist/src/constants.d.ts +0 -123
- package/dist/src/enums.d.ts +0 -281
- package/dist/src/helpers/dom/domUtils.d.ts +0 -5
- package/dist/src/helpers/dom/hasShadowDom.d.ts +0 -1
- package/dist/src/helpers/form/isValidFormInputElement.d.ts +0 -1
- package/dist/src/helpers/formatting/stringReplacer.d.ts +0 -2
- package/dist/src/helpers/label-value/getQueryRangeExclusive.d.ts +0 -8
- package/dist/src/helpers/label-value/getValueFromLabelValues.d.ts +0 -2
- package/dist/src/helpers/label-value/searchLabelValues.d.ts +0 -2
- package/dist/src/helpers/responsive/getResponsiveLayoutModifiers.d.ts +0 -2
- package/dist/src/helpers/responsive/getResponsivePaddingClasses.d.ts +0 -2
- package/dist/src/helpers/styling/getVariablePadding.d.ts +0 -6
- package/dist/src/helpers/styling/iressCss.d.ts +0 -22
- package/dist/src/helpers/styling/mapGutterToGap.d.ts +0 -3
- package/dist/src/helpers/utility/idsLogger.d.ts +0 -3
- package/dist/src/hooks/useBreakpoint.d.ts +0 -11
- package/dist/src/hooks/useResponsiveProps.d.ts +0 -12
- package/dist/src/interfaces.d.ts +0 -442
- package/dist/src/main.d.ts +0 -60
- package/dist/src/patterns/Form/Form.d.ts +0 -11
- package/dist/src/patterns/Form/Form.styles.d.ts +0 -30
- package/dist/src/patterns/Form/FormField/FormField.d.ts +0 -54
- package/dist/src/patterns/Form/FormField/FormFieldset.d.ts +0 -40
- package/dist/src/patterns/Form/FormField/hooks/useFieldRenderProps.d.ts +0 -17
- package/dist/src/patterns/Form/FormValidationSummary/FormValidationSummary.d.ts +0 -15
- package/dist/src/patterns/Form/HookForm/HookForm.d.ts +0 -174
- package/dist/src/patterns/Form/components/LongForm.d.ts +0 -53
- package/dist/src/patterns/Form/components/ShortForm.d.ts +0 -36
- package/dist/src/patterns/Loading/Loading.d.ts +0 -47
- package/dist/src/patterns/Loading/Loading.styles.d.ts +0 -186
- package/dist/src/patterns/Loading/LoadingSuspense.d.ts +0 -73
- package/dist/src/patterns/Loading/components/ComponentLoading.d.ts +0 -53
- package/dist/src/patterns/Loading/components/DefaultLoading.d.ts +0 -27
- package/dist/src/patterns/Loading/components/LongLoading.d.ts +0 -60
- package/dist/src/patterns/Loading/components/PageLoading.d.ts +0 -45
- package/dist/src/patterns/Loading/components/StartUpLoading.d.ts +0 -72
- package/dist/src/patterns/Loading/components/ValidateLoading.d.ts +0 -38
- package/dist/src/patterns/Shadow/Shadow.d.ts +0 -34
- package/dist/src/styled-system/patterns/divider.d.ts +0 -22
- package/dist/src/styled-system/patterns/float.d.ts +0 -23
- package/dist/src/styled-system/recipes/button.d.ts +0 -39
- package/dist/src/styled-system/recipes/table.d.ts +0 -49
- package/dist/src/styled-system/tokens/tokens.d.ts +0 -30
- package/dist/src/styled-system/types/composition.d.ts +0 -224
- package/dist/src/styled-system/types/conditions.d.ts +0 -338
- package/dist/src/styled-system/types/pattern.d.ts +0 -78
- package/dist/src/styled-system/types/prop-type.d.ts +0 -241
- package/dist/src/styled-system/types/style-props.d.ts +0 -7518
- package/dist/src/types.d.ts +0 -33
- package/dist/sva-OmxClA9g.js +0 -34
- /package/dist/{src/components → components}/Alert/index.d.ts +0 -0
- /package/dist/{src/components → components}/Alert/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components → components}/Alert/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Autocomplete/Autocomplete.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Autocomplete/index.d.ts +0 -0
- /package/dist/{src/components → components}/Autocomplete/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components → components}/Autocomplete/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Button/CloseButton/CloseButton.d.ts +0 -0
- /package/dist/{src/components → components}/Button/index.d.ts +0 -0
- /package/dist/{src/components/Badge → components/Button}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Badge → components/Button}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/ButtonGroup/ButtonGroup.styles.d.ts +0 -0
- /package/dist/{src/components → components}/ButtonGroup/ButtonGroupProvider.d.ts +0 -0
- /package/dist/{src/components → components}/ButtonGroup/hooks/useButtonGroupItem.d.ts +0 -0
- /package/dist/{src/components → components}/ButtonGroup/index.d.ts +0 -0
- /package/dist/{src/components/Button → components/ButtonGroup}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Button → components/ButtonGroup}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Card/index.d.ts +0 -0
- /package/dist/{src/components/ButtonGroup → components/Card}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/ButtonGroup → components/Card}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Checkbox/index.d.ts +0 -0
- /package/dist/{src/components/Card → components/Checkbox}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Card → components/Checkbox}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/CheckboxGroup/CheckboxGroup.styles.d.ts +0 -0
- /package/dist/{src/components → components}/CheckboxGroup/index.d.ts +0 -0
- /package/dist/{src/components/Checkbox → components/CheckboxGroup}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Checkbox → components/CheckboxGroup}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/CheckboxMark/CheckboxMark.styles.d.ts +0 -0
- /package/dist/{src/components → components}/CheckboxMark/index.d.ts +0 -0
- /package/dist/{src/components → components}/Col/index.d.ts +0 -0
- /package/dist/{src/components/CheckboxGroup → components/Col}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/CheckboxGroup → components/Col}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Container/index.d.ts +0 -0
- /package/dist/{src/components/Col → components/Container}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Col → components/Container}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Divider/index.d.ts +0 -0
- /package/dist/{src/components/Container → components/Divider}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Container → components/Divider}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Expander/index.d.ts +0 -0
- /package/dist/{src/components/Divider → components/Expander}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Divider → components/Expander}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Field/helpers/getUniqueItemsByKey.d.ts +0 -0
- /package/dist/{src/components → components}/Field/index.d.ts +0 -0
- /package/dist/{src/components/Expander → components/Field}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Expander → components/Field}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Hide/index.d.ts +0 -0
- /package/dist/{src/components/Field → components/Hide}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Field → components/Hide}/meta/index.d.ts +0 -0
- /package/dist/{src/components/Filter → components/Icon}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Filter → components/Icon}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Image/Image.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Image/index.d.ts +0 -0
- /package/dist/{src/components/Hide → components/Image}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Hide → components/Image}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Inline/Inline.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Inline/index.d.ts +0 -0
- /package/dist/{src/components/Icon → components/Inline}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Icon → components/Inline}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Input/index.d.ts +0 -0
- /package/dist/{src/components/Image → components/Input}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Image → components/Input}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/InputCurrency/index.d.ts +0 -0
- /package/dist/{src/components/Inline → components/InputCurrency}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Inline → components/InputCurrency}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Label/Label.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Label/index.d.ts +0 -0
- /package/dist/{src/components/Input → components/Label}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Input → components/Label}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Link/index.d.ts +0 -0
- /package/dist/{src/components/InputCurrency → components/Link}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/InputCurrency → components/Link}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Menu/MenuItem/hooks/useMenuItemRole.d.ts +0 -0
- /package/dist/{src/components/Label → components/Menu}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Label → components/Menu}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Modal/hooks/useModal.d.ts +0 -0
- /package/dist/{src/components → components}/Modal/hooks/useProviderModal.d.ts +0 -0
- /package/dist/{src/components → components}/Modal/index.d.ts +0 -0
- /package/dist/{src/components/Link → components/Modal}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Link → components/Modal}/meta/index.d.ts +0 -0
- /package/dist/{src/components/Menu → components/Panel}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Menu → components/Panel}/meta/index.d.ts +0 -0
- /package/dist/{src/components/Modal → components/Pill}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Modal → components/Pill}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Placeholder/index.d.ts +0 -0
- /package/dist/{src/components/Panel → components/Placeholder}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Panel → components/Placeholder}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Popover/Popover.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Popover/helpers/hasFocus.d.ts +0 -0
- /package/dist/{src/components → components}/Popover/helpers/waitUntilTrue.d.ts +0 -0
- /package/dist/{src/components → components}/Popover/hooks/usePopoverAria.d.ts +0 -0
- /package/dist/{src/components → components}/Popover/hooks/usePopoverNavigation.d.ts +0 -0
- /package/dist/{src/components/Placeholder → components/Popover}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Placeholder → components/Popover}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Progress/Progress.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Progress/index.d.ts +0 -0
- /package/dist/{src/components/Popover → components/Progress}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Popover → components/Progress}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Provider/index.d.ts +0 -0
- /package/dist/{src/components → components}/Radio/index.d.ts +0 -0
- /package/dist/{src/components/Progress → components/Radio}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Progress → components/Radio}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/RadioGroup/index.d.ts +0 -0
- /package/dist/{src/components/Radio → components/RadioGroup}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Radio → components/RadioGroup}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Readonly/index.d.ts +0 -0
- /package/dist/{src/components/RadioGroup → components/Readonly}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/RadioGroup → components/Readonly}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Row/Row.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Row/index.d.ts +0 -0
- /package/dist/{src/components/Readonly → components/Row}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Readonly → components/Row}/meta/index.d.ts +0 -0
- /package/dist/{src/components/RichSelect → components/Select}/SelectBody/SelectBody.styles.d.ts +0 -0
- /package/dist/{src/components/RichSelect → components/Select}/SelectMenu/SelectMenu.styles.d.ts +0 -0
- /package/dist/{src/components/RichSelect → components/Select}/SelectSearch/SelectSearch.styles.d.ts +0 -0
- /package/dist/{src/components/RichSelect → components/Select}/SelectSearchInput/SelectSearchInput.d.ts +0 -0
- /package/dist/{src/components/RichSelect → components/Select}/SelectSearchInput/SelectSearchInput.styles.d.ts +0 -0
- /package/dist/{src/components/RichSelect → components/Select}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/RichSelect → components/Select}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Skeleton/Skeleton.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Skeleton/index.d.ts +0 -0
- /package/dist/{src/components/Row → components/Skeleton}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Row → components/Skeleton}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/SkipLink/SkipLink.styles.d.ts +0 -0
- /package/dist/{src/components → components}/SkipLink/index.d.ts +0 -0
- /package/dist/{src/components/Select → components/SkipLink}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Select → components/SkipLink}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Slideout/hooks/useProviderSlideout.d.ts +0 -0
- /package/dist/{src/components → components}/Slideout/hooks/usePushElement.d.ts +0 -0
- /package/dist/{src/components → components}/Slideout/hooks/useSlideout.d.ts +0 -0
- /package/dist/{src/components → components}/Slideout/index.d.ts +0 -0
- /package/dist/{src/components/Skeleton → components/Slideout}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Skeleton → components/Slideout}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Slider/Slider.d.ts +0 -0
- /package/dist/{src/components → components}/Slider/Slider.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Slider/index.d.ts +0 -0
- /package/dist/{src/components/SkipLink → components/Slider}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/SkipLink → components/Slider}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Spinner/index.d.ts +0 -0
- /package/dist/{src/components/Slideout → components/Spinner}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Slideout → components/Spinner}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Stack/index.d.ts +0 -0
- /package/dist/{src/components/Slider → components/Stack}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Slider → components/Stack}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/TabSet/index.d.ts +0 -0
- /package/dist/{src/components/Spinner → components/TabSet}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Spinner → components/TabSet}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Table/Table.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Table/helpers/composeTableColumnDefs.d.ts +0 -0
- /package/dist/{src/components → components}/Table/helpers/composeTableInitialSorting.d.ts +0 -0
- /package/dist/{src/components → components}/Table/hooks/useTableColumnSort.d.ts +0 -0
- /package/dist/{src/components → components}/Table/hooks/useTableColumnStyles.d.ts +0 -0
- /package/dist/{src/components/Stack → components/Table}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Stack → components/Table}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Tag/TagInput/TagInput.d.ts +0 -0
- /package/dist/{src/components → components}/Tag/TagInput/TagInput.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Tag/index.d.ts +0 -0
- /package/dist/{src/components/TabSet → components/Tag}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/TabSet → components/Tag}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Text/Text.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Text/index.d.ts +0 -0
- /package/dist/{src/components/Table → components/Text}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Table → components/Text}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Toaster/Toaster.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Toaster/helpers/toasterRegister.d.ts +0 -0
- /package/dist/{src/components → components}/Toaster/hooks/useToaster.d.ts +0 -0
- /package/dist/{src/components/Tag → components/Toaster}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Tag → components/Toaster}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Toggle/Toggle.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Toggle/index.d.ts +0 -0
- /package/dist/{src/components/Text → components/Toggle}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Text → components/Toggle}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/Tooltip/Tooltip.styles.d.ts +0 -0
- /package/dist/{src/components → components}/Tooltip/index.d.ts +0 -0
- /package/dist/{src/components/Toaster → components/Tooltip}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Toaster → components/Tooltip}/meta/index.d.ts +0 -0
- /package/dist/{src/components → components}/ValidationMessage/index.d.ts +0 -0
- /package/dist/{src/components/Toggle → components/ValidationMessage}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Toggle → components/ValidationMessage}/meta/index.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/dom/closestCrossShadow.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/dom/focusableElements.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/dom/getActiveElement.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/form/getFormControlValueAsString.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/form/getFormControlValueAsStringIfDefined.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/form/getValueAsEvent.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/formatting/capitalizeFirstLetter.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/formatting/formatCurrency.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/formatting/formatDate.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/formatting/formatDateTime.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/formatting/formatObjectKey.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/formatting/formatPercentage.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/formatting/toArray.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/formatting/toCSSLengthValue.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/label-value/composeLabelValueDescriptor.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/label-value/highlightQueryInLabel.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/label-value/highlightQueryInLabelValue.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/transition/getTransitionDuration.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/transition/timeStringToNumber.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/utility/propagateTestid.d.ts +0 -0
- /package/dist/{src/helpers → helpers}/utility/spreadUnlessUndefined.d.ts +0 -0
- /package/dist/{src/hooks → hooks}/index.d.ts +0 -0
- /package/dist/{src/hooks → hooks}/useAriaRelationship.d.ts +0 -0
- /package/dist/{src/hooks → hooks}/useControlledState.d.ts +0 -0
- /package/dist/{src/hooks → hooks}/useIdIfNeeded.d.ts +0 -0
- /package/dist/{src/components/Tooltip → patterns/Breadcrumbs}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/Tooltip → patterns/Breadcrumbs}/meta/index.d.ts +0 -0
- /package/dist/{src/components/ValidationMessage → patterns/ContextualMenu}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/components/ValidationMessage → patterns/ContextualMenu}/meta/index.d.ts +0 -0
- /package/dist/{src/patterns/Form → patterns/DropdownMenu}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/patterns/Form → patterns/DropdownMenu}/meta/index.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Form/FormContext.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Form/FormField/helpers/getErrorTypeMessage.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Form/FormField/helpers/transformCustomRulesToValidateRule.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Form/hooks/useNoDefaultValueInForms.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Form/index.d.ts +0 -0
- /package/dist/{src/patterns/Loading → patterns/Form}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/patterns/Loading → patterns/Form}/meta/index.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Loading/hooks/useEstimatedProgressValue.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Loading/hooks/useShouldRenderLoading.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Loading/hooks/useShowIndicator.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Loading/hooks/useSuspenseResource.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Loading/index.d.ts +0 -0
- /package/dist/{src/patterns/Shadow → patterns/Loading}/meta/Thumbnail.d.ts +0 -0
- /package/dist/{src/patterns/Shadow → patterns/Loading}/meta/index.d.ts +0 -0
- /package/dist/{src/patterns → patterns}/Shadow/index.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/css/css.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/css/cva.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/css/cx.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/css/index.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/css/sva.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/aspect-ratio.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/bleed.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/box.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/center.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/circle.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/container.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/cq.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/create-style-context.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/divider.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/factory.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/flex.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/float.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/grid-item.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/grid.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/hstack.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/index.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/is-valid-prop.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/link-overlay.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/spacer.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/square.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/stack.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/visually-hidden.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/vstack.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/jsx/wrap.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/aspect-ratio.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/bleed.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/box.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/center.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/circle.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/container.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/cq.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/flex.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/grid-item.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/grid.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/hstack.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/index.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/link-overlay.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/spacer.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/square.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/stack.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/visually-hidden.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/vstack.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/patterns/wrap.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/recipes/index.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/recipes/text.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/tokens/index.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/types/csstype.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/types/global.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/types/index.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/types/jsx.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/types/parts.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/types/recipe.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/types/selectors.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/types/static-css.d.ts +0 -0
- /package/dist/{src/styled-system → styled-system}/types/system-types.d.ts +0 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
# Breadcrumbs
|
|
2
|
+
|
|
3
|
+
Breadcrumbs are a secondary navigation aid that helps users understand their current location within the site hierarchy and provides a simple way to navigate back to higher-level pages.
|
|
4
|
+
|
|
5
|
+
> **Pattern:** `import { IressBreadcrumbs } from '@iress-oss/ids-components'`
|
|
6
|
+
> **Storybook:** [Breadcrumbs in Storybook](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-breadcrumbs--docs)
|
|
7
|
+
|
|
8
|
+
## Quick Start
|
|
9
|
+
|
|
10
|
+
```tsx
|
|
11
|
+
import { IressBreadcrumbs } from '@iress-oss/ids-components';
|
|
12
|
+
|
|
13
|
+
<IressBreadcrumbs />
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
import {
|
|
17
|
+
ComponentOverview,
|
|
18
|
+
ComponentExample,
|
|
19
|
+
} from '@iress-oss/ids-storybook-config';
|
|
20
|
+
|
|
21
|
+
## Usage
|
|
22
|
+
|
|
23
|
+
### Items
|
|
24
|
+
|
|
25
|
+
This is the only required prop for the `IressBreadcrumbs` component, which defines the breadcrumb items to be displayed.
|
|
26
|
+
|
|
27
|
+
- **label**: The text displayed for the breadcrumb item
|
|
28
|
+
- **href**: The URL to navigate to when the item is clicked (optional for the current page)
|
|
29
|
+
- **element**: The component used for rendering links, allowing integration with routing libraries
|
|
30
|
+
|
|
31
|
+
[View "Default" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-breadcrumbs--default)
|
|
32
|
+
|
|
33
|
+
### When to Use
|
|
34
|
+
|
|
35
|
+
- **Site hierarchy navigation**: Help users understand where they are in a multi-level site structure
|
|
36
|
+
- **Secondary navigation**: Provide an alternative way to navigate back to parent pages
|
|
37
|
+
- **Context awareness**: Show the current page's relationship to parent sections
|
|
38
|
+
|
|
39
|
+
### When Not to Use
|
|
40
|
+
|
|
41
|
+
- **Single-level sites**: If your site has no hierarchy, breadcrumbs aren't necessary
|
|
42
|
+
- **Primary navigation**: Breadcrumbs are supplementary; don't rely on them as the only navigation
|
|
43
|
+
|
|
44
|
+
### Best Practices
|
|
45
|
+
|
|
46
|
+
1. **Keep labels concise**: Use short, descriptive labels that clearly identify each level
|
|
47
|
+
2. **Current page**: The last item should represent the current page and not be clickable
|
|
48
|
+
3. **Consistent placement**: Position breadcrumbs near the top of the page, below primary navigation and close to the current page title
|
|
49
|
+
4. **Mobile consideration**: On small screens, consider showing only the parent page link
|
|
50
|
+
|
|
51
|
+
## Behaviour
|
|
52
|
+
|
|
53
|
+
The Breadcrumb component follows WCAG 2.1 AA guidelines and includes:
|
|
54
|
+
|
|
55
|
+
- **Semantic HTML**: Uses `<nav>`, `<ol>`, and `<li>` elements for proper structure
|
|
56
|
+
- **ARIA labels**: `aria-label` identifies the navigation as breadcrumbs
|
|
57
|
+
- **Current page**: `aria-current="page"` marks the current page item
|
|
58
|
+
- **Keyboard navigation**: All links are keyboard accessible via Tab key
|
|
59
|
+
- **Screen readers**: Separators are hidden from screen readers with `aria-hidden="true"`
|
|
60
|
+
- **Focus indicators**: Visible focus rings for keyboard navigation
|
|
61
|
+
|
|
62
|
+
## Examples
|
|
63
|
+
|
|
64
|
+
This example demonstrates all supported breadcrumb configurations side by side.
|
|
65
|
+
|
|
66
|
+
```tsx
|
|
67
|
+
<IressPanel>
|
|
68
|
+
<IressStack gap="xl">
|
|
69
|
+
<IressStack>
|
|
70
|
+
<IressText element="h3">2 Breadcrumbs</IressText>
|
|
71
|
+
<IressBreadcrumbs items={[{ label: 'Home', href: '/' }, { label: 'Current' }]}
|
|
72
|
+
/>
|
|
73
|
+
</IressStack>
|
|
74
|
+
|
|
75
|
+
<IressStack>
|
|
76
|
+
<IressText element="h3">3 Breadcrumbs</IressText>
|
|
77
|
+
<IressBreadcrumbs items={[
|
|
78
|
+
{ label: 'Home', href: '/' },
|
|
79
|
+
{ label: 'Products', href: '/products' },
|
|
80
|
+
{ label: 'Details' },
|
|
81
|
+
]}
|
|
82
|
+
/>
|
|
83
|
+
</IressStack>
|
|
84
|
+
|
|
85
|
+
<IressStack>
|
|
86
|
+
<IressText element="h3">4 Breadcrumbs</IressText>
|
|
87
|
+
<IressBreadcrumbs items={[
|
|
88
|
+
{ label: 'Home', href: '/' },
|
|
89
|
+
{ label: 'Category', href: '/category' },
|
|
90
|
+
{ label: 'Subcategory', href: '/subcategory' },
|
|
91
|
+
{ label: 'Details' },
|
|
92
|
+
]}
|
|
93
|
+
/>
|
|
94
|
+
</IressStack>
|
|
95
|
+
|
|
96
|
+
<IressStack>
|
|
97
|
+
<IressText element="h3">
|
|
98
|
+
5+ Breadcrumbs (with default overflow)
|
|
99
|
+
</IressText>
|
|
100
|
+
<IressBreadcrumbs items={[
|
|
101
|
+
{ label: 'Home', href: '/' },
|
|
102
|
+
{ label: 'Level 1', href: '/l1' },
|
|
103
|
+
{ label: 'Level 2', href: '/l2' },
|
|
104
|
+
{ label: 'Level 3', href: '/l3' },
|
|
105
|
+
{ label: 'Level 4', href: '/l4' },
|
|
106
|
+
{ label: 'Current' },
|
|
107
|
+
]}
|
|
108
|
+
/>
|
|
109
|
+
</IressStack>
|
|
110
|
+
|
|
111
|
+
<IressStack>
|
|
112
|
+
<IressText element="h3">
|
|
113
|
+
5+ Breadcrumbs (with overflow disabled)
|
|
114
|
+
</IressText>
|
|
115
|
+
<IressBreadcrumbs items={[
|
|
116
|
+
{ label: 'Home', href: '/' },
|
|
117
|
+
{ label: 'Level 1', href: '/l1' },
|
|
118
|
+
{ label: 'Level 2', href: '/l2' },
|
|
119
|
+
{ label: 'Level 3', href: '/l3' },
|
|
120
|
+
{ label: 'Level 4', href: '/l4' },
|
|
121
|
+
{ label: 'Current' },
|
|
122
|
+
]}
|
|
123
|
+
limit={0}
|
|
124
|
+
/>
|
|
125
|
+
</IressStack>
|
|
126
|
+
</IressStack>
|
|
127
|
+
</IressPanel>
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
[View "AllConfigurations" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-breadcrumbs--all-configurations)
|
|
131
|
+
|
|
132
|
+
### Integration with Routing Libraries
|
|
133
|
+
|
|
134
|
+
The Breadcrumb component supports custom elements for integration with routing libraries:
|
|
135
|
+
|
|
136
|
+
#### React Router
|
|
137
|
+
|
|
138
|
+
```tsx
|
|
139
|
+
|
|
140
|
+
<IressBreadcrumb
|
|
141
|
+
items={[
|
|
142
|
+
{ label: 'Home', href: '/', element: RouterLink },
|
|
143
|
+
{ label: 'Products', href: '/products', element: RouterLink },
|
|
144
|
+
{ label: 'Details' },
|
|
145
|
+
]}
|
|
146
|
+
/>;
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
#### Next.js
|
|
150
|
+
|
|
151
|
+
```tsx
|
|
152
|
+
|
|
153
|
+
<IressBreadcrumb
|
|
154
|
+
items={[
|
|
155
|
+
{ label: 'Home', href: '/', element: Link },
|
|
156
|
+
{ label: 'Products', href: '/products', element: Link },
|
|
157
|
+
{ label: 'Details' },
|
|
158
|
+
]}
|
|
159
|
+
/>;
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
*View interactive examples: [https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-breadcrumbs--docs](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-breadcrumbs--docs)*
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
# Contextual Menu
|
|
2
|
+
|
|
3
|
+
A compact overflow action pattern that surfaces contextual actions in a popover menu. Use this pattern for row-level or card-level secondary actions where space is constrained.
|
|
4
|
+
|
|
5
|
+
> **Pattern:** `import { IressContextualMenu } from '@iress-oss/ids-components'`
|
|
6
|
+
> **Storybook:** [Contextual Menu in Storybook](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-contextual-menu--docs)
|
|
7
|
+
|
|
8
|
+
## Quick Start
|
|
9
|
+
|
|
10
|
+
```tsx
|
|
11
|
+
import { IressContextualMenu } from '@iress-oss/ids-components';
|
|
12
|
+
|
|
13
|
+
<IressContextualMenu />
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
import {
|
|
17
|
+
ComponentExample,
|
|
18
|
+
ComponentOverview,
|
|
19
|
+
} from '@iress-oss/ids-storybook-config';
|
|
20
|
+
|
|
21
|
+
## Usage
|
|
22
|
+
|
|
23
|
+
Use `IressContextualMenu` when actions are related to a specific item (such as a row, card or panel) and should not dominate the layout.
|
|
24
|
+
|
|
25
|
+
- Keep menus short and action-focused.
|
|
26
|
+
- Prefer verbs for labels (`Edit`, `Lock`, `Delete`).
|
|
27
|
+
- Place destructive actions at the end of the list.
|
|
28
|
+
|
|
29
|
+
### Items
|
|
30
|
+
|
|
31
|
+
Pass an array of items with `key`, `label`, optional `icon` and `onClick` handler.
|
|
32
|
+
|
|
33
|
+
[View "Default" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-contextual-menu--default)
|
|
34
|
+
|
|
35
|
+
## Examples
|
|
36
|
+
|
|
37
|
+
### Size
|
|
38
|
+
|
|
39
|
+
Use `size="small"` or `size="medium"` to match surrounding density.
|
|
40
|
+
|
|
41
|
+
```tsx
|
|
42
|
+
<IressStack gap="sm">
|
|
43
|
+
<IressContextualMenu size="small" />
|
|
44
|
+
<IressContextualMenu size="medium" />
|
|
45
|
+
</IressStack>
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
[View "Sizes" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-contextual-menu--sizes)
|
|
49
|
+
|
|
50
|
+
### Align
|
|
51
|
+
|
|
52
|
+
Use `align` to align the menu relative to the trigger. If there is not enough space in the preferred direction, it will flip to the opposite side.
|
|
53
|
+
|
|
54
|
+
```tsx
|
|
55
|
+
<IressStyled p="spacing.10">
|
|
56
|
+
<IressStack gap="md">
|
|
57
|
+
<IressInline horizontalAlign="center" gap="sm">
|
|
58
|
+
<IressContextualMenu align="top-start" />
|
|
59
|
+
<IressContextualMenu align="top" />
|
|
60
|
+
<IressContextualMenu align="top-end" />
|
|
61
|
+
</IressInline>
|
|
62
|
+
<IressInline horizontalAlign="between">
|
|
63
|
+
<IressStack gap="sm">
|
|
64
|
+
<IressInline horizontalAlign="left">
|
|
65
|
+
<IressContextualMenu align="left-start" />
|
|
66
|
+
</IressInline>
|
|
67
|
+
<IressInline horizontalAlign="left">
|
|
68
|
+
<IressContextualMenu align="left" />
|
|
69
|
+
</IressInline>
|
|
70
|
+
<IressInline horizontalAlign="left">
|
|
71
|
+
<IressContextualMenu align="left-end" />
|
|
72
|
+
</IressInline>
|
|
73
|
+
</IressStack>
|
|
74
|
+
<IressStack gap="sm">
|
|
75
|
+
<IressInline horizontalAlign="right">
|
|
76
|
+
<IressContextualMenu align="right-start" />
|
|
77
|
+
</IressInline>
|
|
78
|
+
<IressInline horizontalAlign="right">
|
|
79
|
+
<IressContextualMenu align="right" />
|
|
80
|
+
</IressInline>
|
|
81
|
+
<IressInline horizontalAlign="right">
|
|
82
|
+
<IressContextualMenu align="right-end" />
|
|
83
|
+
</IressInline>
|
|
84
|
+
</IressStack>
|
|
85
|
+
</IressInline>
|
|
86
|
+
<IressInline horizontalAlign="center" gap="sm">
|
|
87
|
+
<IressContextualMenu align="bottom-start" />
|
|
88
|
+
<IressContextualMenu align="bottom" />
|
|
89
|
+
<IressContextualMenu align="bottom-end" />
|
|
90
|
+
</IressInline>
|
|
91
|
+
</IressStack>
|
|
92
|
+
</IressStyled>
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
[View "Align" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-contextual-menu--align)
|
|
96
|
+
|
|
97
|
+
### Bordered Trigger
|
|
98
|
+
|
|
99
|
+
Use `bordered` when the trigger needs stronger visual affordance.
|
|
100
|
+
|
|
101
|
+
```tsx
|
|
102
|
+
<IressInline gap="sm">
|
|
103
|
+
<IressContextualMenu />
|
|
104
|
+
<IressContextualMenu bordered />
|
|
105
|
+
</IressInline>
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
[View "Bordered" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-contextual-menu--bordered)
|
|
109
|
+
|
|
110
|
+
### Themes
|
|
111
|
+
|
|
112
|
+
Use `theme="dark"` on panels using `colour.neutral.20` or darker backgrounds.
|
|
113
|
+
|
|
114
|
+
```tsx
|
|
115
|
+
<IressInline gap="sm" bg="alt" borderRadius="radius.system.layout" p="lg">
|
|
116
|
+
<IressContextualMenu />
|
|
117
|
+
<IressContextualMenu bordered />
|
|
118
|
+
</IressInline>
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
[View "Themes" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-contextual-menu--themes)
|
|
122
|
+
|
|
123
|
+
## Accessibility
|
|
124
|
+
|
|
125
|
+
- Provide a meaningful `ariaLabel` that describes the menu purpose in context. By default it is `More options...`.
|
|
126
|
+
- Ensure destructive labels are explicit (for example, `Delete account`).
|
|
127
|
+
- Keep item labels concise and unique within the menu.
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
*View interactive examples: [https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-contextual-menu--docs](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-contextual-menu--docs)*
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
# Dropdown Menu
|
|
2
|
+
|
|
3
|
+
A component designed to filter a section based on a list of options and quickly navigate to relevant content.
|
|
4
|
+
|
|
5
|
+
> **Pattern:** `import { IressDropdownMenu } from '@iress-oss/ids-components'`
|
|
6
|
+
> **Storybook:** [Dropdown Menu in Storybook](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-dropdown-menu--docs)
|
|
7
|
+
|
|
8
|
+
## Quick Start
|
|
9
|
+
|
|
10
|
+
```tsx
|
|
11
|
+
import { IressDropdownMenu } from '@iress-oss/ids-components';
|
|
12
|
+
|
|
13
|
+
<IressDropdownMenu label="Select an option" />
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
import {
|
|
17
|
+
ComponentExample,
|
|
18
|
+
ComponentOverview,
|
|
19
|
+
} from '@iress-oss/ids-storybook-config';
|
|
20
|
+
|
|
21
|
+
## Usage
|
|
22
|
+
|
|
23
|
+
The `IressDropdownMenu` component is a fully controlled component. It is designed to be used in situations where the selection of an option(s) should trigger an immediate update to the rendered data.
|
|
24
|
+
|
|
25
|
+
Some examples of usage include:
|
|
26
|
+
|
|
27
|
+
- Filtering a table based on a list of options
|
|
28
|
+
- Navigating to a different section based on a list of options
|
|
29
|
+
- Updating a chart based on a list of options
|
|
30
|
+
|
|
31
|
+
This component is **not** designed to be used within forms and should be used to provide instant updates to rendered data. Instead, in forms, you should use components like `IressSelect`, `IressRadioGroup` or `IressCheckboxGroup`.
|
|
32
|
+
|
|
33
|
+
Here is an example using multiple `IressDropdownMenu`s to filter an `IressTable`.
|
|
34
|
+
|
|
35
|
+
```tsx
|
|
36
|
+
<TableWithFilters />
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
[View "SearchTable" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--search-table)
|
|
40
|
+
|
|
41
|
+
### Controlled
|
|
42
|
+
|
|
43
|
+
The `value` prop can be used to completely control the state of the component. Use the `onChange` and `onReset` props to sync your state with the component.
|
|
44
|
+
|
|
45
|
+
**Note:** The `value` prop is not checked against the options provided, allowing it to work with asynchronous options.
|
|
46
|
+
|
|
47
|
+
```tsx
|
|
48
|
+
<ControlledDropdownMenu />
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
[View "Controlled" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--controlled)
|
|
52
|
+
|
|
53
|
+
### Multiple selection
|
|
54
|
+
|
|
55
|
+
Using the `multiSelect` prop, the `IressDropdownMenu` will allow the user to make multiple selections.
|
|
56
|
+
|
|
57
|
+
```tsx
|
|
58
|
+
<ControlledDropdownMenuMultiselect />
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
[View "MultiSelect" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--multi-select)
|
|
62
|
+
|
|
63
|
+
### Providing options
|
|
64
|
+
|
|
65
|
+
#### `options`
|
|
66
|
+
|
|
67
|
+
The `options` prop is required for the combobox. You can provide an array of `LabelValueMeta[]` objects to the `options` prop. Filtering is done based on the `label` property. Unique selected value(s) will be determined by the `value` property, falling back to `label` if `value` is not provided.
|
|
68
|
+
|
|
69
|
+
```tsx
|
|
70
|
+
<IressDropdownMenu label="Options" />
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
[View "Options" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--options)
|
|
74
|
+
|
|
75
|
+
#### Asynchronous `options`
|
|
76
|
+
|
|
77
|
+
If you would like to render suggestions from the server, you can pass a function to the `options` prop. It accepts a string parameter and returns a promise that resolves to an array of `LabelValueMeta[]` objects. No filtering is done for asynchronous options, you must filter the options yourself using the query.
|
|
78
|
+
|
|
79
|
+
**Note:** Asynchronous `options` will automatically set the `searchable` prop to true.
|
|
80
|
+
|
|
81
|
+
```tsx
|
|
82
|
+
<ControlledDropdownMenuAsync />
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
[View "AsyncOptions" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--async-options)
|
|
86
|
+
|
|
87
|
+
#### `initialOptions`
|
|
88
|
+
|
|
89
|
+
If you want to provide initial options to the user, you can use the `initialOptions` prop. This is useful when you want to provide a list of options to the user before they start typing (eg. recommended search terms).
|
|
90
|
+
|
|
91
|
+
**Note:** `initialOptions` only works if `searchable` is true.
|
|
92
|
+
|
|
93
|
+
```tsx
|
|
94
|
+
<IressDropdownMenu label="Select an option" searchable />
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
[View "InitialOptions" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--initial-options)
|
|
98
|
+
|
|
99
|
+
### Complex Options
|
|
100
|
+
|
|
101
|
+
The options prop also accepts further properties for each option. This is useful for displaying other data that compliments the main label.
|
|
102
|
+
|
|
103
|
+
- append: accepts a ReactNode to append to the end of the option, usually a badge.
|
|
104
|
+
- meta: accepts a ReactNode to display additional information about the option.
|
|
105
|
+
- prepend: accepts a ReactNode to add to the start of the option, usually an icon.
|
|
106
|
+
|
|
107
|
+
All `IressDropdownMenu`s accept meta as an attribute in the option array.
|
|
108
|
+
|
|
109
|
+
```tsx
|
|
110
|
+
<IressDropdownMenu label="Contact" />
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
[View "ComplexOptions" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--complex-options)
|
|
114
|
+
|
|
115
|
+
## Behaviour
|
|
116
|
+
|
|
117
|
+
- When the activator is tapped, the filter will open
|
|
118
|
+
- Up and Down Arrow keys are used to navigate the options
|
|
119
|
+
- When focus is on the search input:
|
|
120
|
+
- Pressing the down key will move focus to the first menu item
|
|
121
|
+
- If `visibleResetButton` is set to true, pressing the down key will focus the reset button instead
|
|
122
|
+
- When focus is on the reset button:
|
|
123
|
+
- Pressing the down key will move focus to the first menu item
|
|
124
|
+
- Pressing the Space or Enter keys when focussed on an option will select it
|
|
125
|
+
- Pressing the Escape key will close the filter and place focus back on to the activator button
|
|
126
|
+
|
|
127
|
+
## Examples
|
|
128
|
+
|
|
129
|
+
### Input props
|
|
130
|
+
|
|
131
|
+
You can customise some settings of the query input by setting the `inputProps`.
|
|
132
|
+
|
|
133
|
+
It does have some defaults to help with user experience. `prepend` automatically has a search icon, and `clearable` is set to true by default.
|
|
134
|
+
|
|
135
|
+
```tsx
|
|
136
|
+
<IressDropdownMenu searchable />
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
[View "InputProps" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--input-props)
|
|
140
|
+
|
|
141
|
+
### Searchable
|
|
142
|
+
|
|
143
|
+
When an `IressDropdownMenu` has 10 or more options, it is recommended that you enable the search functionality. This can be done by adding the `searchable` prop.
|
|
144
|
+
|
|
145
|
+
**Note:** When using asynchronous options, the `searchable` prop is automatically set to true.
|
|
146
|
+
|
|
147
|
+
```tsx
|
|
148
|
+
<IressDropdownMenu searchable />
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
[View "Searchable" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--searchable)
|
|
152
|
+
|
|
153
|
+
### Reset filters
|
|
154
|
+
|
|
155
|
+
Adding the `visibleResetButton` prop adds a way for the user a way to easily reset their choices. This works for single and multiple selection filters.
|
|
156
|
+
|
|
157
|
+
Below are examples of both single selects and multi selects with `visibleResetButton` enabled.
|
|
158
|
+
|
|
159
|
+
```tsx
|
|
160
|
+
<IressDropdownMenu visibleResetButton />
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
[View "ResetFilters" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--reset-filters)
|
|
164
|
+
|
|
165
|
+
### No results
|
|
166
|
+
|
|
167
|
+
If you would like to show a message when there are no results, you can use the `searchNoResultsText` prop. It accepts any React node.
|
|
168
|
+
|
|
169
|
+
```tsx
|
|
170
|
+
<IressDropdownMenu searchable />
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
[View "NoResultsText" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--no-results-text)
|
|
174
|
+
|
|
175
|
+
### Popover props
|
|
176
|
+
|
|
177
|
+
Under the hood, filter uses `IressPopover` to display the filter options. You can customise this with `popoverProps`. It accepts `align`, `className`, `container` and `displayMode`.
|
|
178
|
+
|
|
179
|
+
There are two additional props that filter accepts to customise the popover: `header` and `footer`. You can place additional content above or below the results using these props.
|
|
180
|
+
|
|
181
|
+
[View "PopoverProps" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--popover-props)
|
|
182
|
+
|
|
183
|
+
### Selected options text
|
|
184
|
+
|
|
185
|
+
In `multiSelect` mode, the selections options are displayed using the `selectedOptionsText` prop. You can customise this text to suit your needs. It will replace `{{numOptions}}` with the number of selected options.
|
|
186
|
+
|
|
187
|
+
```tsx
|
|
188
|
+
<IressDropdownMenu multiSelect selectedOptionsText=" - " />
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
[View "SelectedOptionsText" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-dropdown-menu--selected-options-text)
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
*View interactive examples: [https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-dropdown-menu--docs](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-dropdown-menu--docs)*
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
# Recipes
|
|
2
|
+
|
|
3
|
+
Form pattern documentation.
|
|
4
|
+
|
|
5
|
+
> **Pattern:** `@iress-oss/ids-components`
|
|
6
|
+
> **Storybook:** [Recipes in Storybook](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-form--docs)
|
|
7
|
+
|
|
8
|
+
## With readonly data
|
|
9
|
+
|
|
10
|
+
You can use `IressForm` with readonly data by setting the `readOnly` prop to `true` on controlled elements. This will disable those form controls, but will include the values in the form submission.
|
|
11
|
+
|
|
12
|
+
Please take note of the following when displaying read only data.
|
|
13
|
+
|
|
14
|
+
- It is best to keep readonly data in a separate section of the form, to further avoid confusion with editable fields.
|
|
15
|
+
|
|
16
|
+
```tsx
|
|
17
|
+
<WithReadonlyDataForm />
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
[View "WithReadonlyData" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--with-readonly-data)
|
|
21
|
+
|
|
22
|
+
## Switching between readonly and edit modes
|
|
23
|
+
|
|
24
|
+
It is recommended to use a button to toggle between read-only and editable input modes.
|
|
25
|
+
|
|
26
|
+
Please take note of the following when switching between modes:
|
|
27
|
+
|
|
28
|
+
- Switching is done on a per-section basis, not on a per-field basis.
|
|
29
|
+
- When the user saves the data, it should switch back to read-only mode to avoid any confusion about whether the changes have been saved.
|
|
30
|
+
|
|
31
|
+
```tsx
|
|
32
|
+
<SwitchEditReadonlyForm />
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
[View "SwitchEditReadonly" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--switch-edit-readonly)
|
|
36
|
+
|
|
37
|
+
## Alternative form validation
|
|
38
|
+
|
|
39
|
+
`IressForm` is always recommended for all validation, as it is the cleanest way (least code) to provide the best form user experience for your users. Please visit the [`IressForm` documentation](/docs/components-form--docs) for different validation examples.
|
|
40
|
+
|
|
41
|
+
However, if you have more complex requirements and you find `IressForm` too opinionated for your needs, you can always bring your own form validation using a native `form` element and the other IDS components such as `IressField`.
|
|
42
|
+
|
|
43
|
+
Here is an example showcasing a form using the native form constraints API to achieve validation using IDS components. There are other libraries such as: [Yup](https://github.com/jquense/yup), [Joi](https://github.com/hapijs/joi) or [Zod](https://zod.dev/)) which can improve scalability, with the downside being you will have to maintain all validation yourself.
|
|
44
|
+
|
|
45
|
+
```tsx
|
|
46
|
+
<NativeValidationForm />
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
[View "NativeValidation" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--native-validation)
|
|
50
|
+
|
|
51
|
+
## Nested forms
|
|
52
|
+
|
|
53
|
+
Unfortunately, it is [forbidden to nest form elements as per the HTML specifications](https://developer.mozilla.org/en-US/docs/Learn/Forms/How_to_structure_a_web_form).
|
|
54
|
+
|
|
55
|
+
To achieve a similar effect, you can use multiple `IressForm` components, and trigger validation in multiple ways:
|
|
56
|
+
|
|
57
|
+
1. You can trigger specific forms using the `form` attribute of `IressButton`. The [`form` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#form) allows you to specify the form ID to submit when the button is clicked, which can be any form on the page, and will take precedence over the parent form of a button.
|
|
58
|
+
2. If you need to trigger multiple forms, you can use the [`requestSubmit` method](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/requestSubmit) on the form element to trigger the validation of multiple forms.
|
|
59
|
+
3. If you only want to trigger validation and not trigger submission even if the validation passes, you can use the `ref` attribute of `IressForm` and trigger validation manually using `ref.current?.api.trigger()`, which is based on the [React Hook Form API](https://react-hook-form.com/docs/useform/trigger).
|
|
60
|
+
|
|
61
|
+
The example here showcases triggering validation using the `form` attribute of `IressButton` and the `requestSubmit` method on the form element.
|
|
62
|
+
|
|
63
|
+
```tsx
|
|
64
|
+
<NestedFormsExample />
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
[View "NestedForms" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--nested-forms)
|
|
68
|
+
|
|
69
|
+
## Form Groups
|
|
70
|
+
|
|
71
|
+
Powered by [React Hook Form](https://react-hook-form.com/docs/usefieldarray)'s `useFieldArray`, this example allows you add/edit/delete multiple children sections within ONE form (not nested form).
|
|
72
|
+
|
|
73
|
+
```tsx
|
|
74
|
+
<FormGroupsExample />
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
[View "FormGroups" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--form-groups)
|
|
78
|
+
|
|
79
|
+
## Forms in expanders (lazy loading)
|
|
80
|
+
|
|
81
|
+
If you are using forms in expanders, or in other scenarios when the loading of the form may be delayed, it is recommended to only load the form when it is required. This will improve performance of your application, and make it more predictable. It may also fix act warnings in tests if you are seeing some appearing due to conditionally loaded `IressForm` elements.
|
|
82
|
+
|
|
83
|
+
```tsx
|
|
84
|
+
<FormExpanders />
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
[View "FormsInExpanders" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--forms-in-expanders)
|
|
88
|
+
|
|
89
|
+
## Conditional fields (`useWatch`)
|
|
90
|
+
|
|
91
|
+
When you have fields that are conditionally shown, you can use the `useWatch` hook to watch the value of another field and conditionally render the field.
|
|
92
|
+
|
|
93
|
+
**Notes:**
|
|
94
|
+
|
|
95
|
+
- You can use the `api.watch` method on the `IressForm`'s ref to watch the value of a field, but it is recommended to use the hook for better performance by isolating re-rendering at the component level.
|
|
96
|
+
|
|
97
|
+
```tsx
|
|
98
|
+
<UseWatchForm />
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
[View "UseWatch" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--use-watch)
|
|
102
|
+
|
|
103
|
+
## Hidden inputs
|
|
104
|
+
|
|
105
|
+
You can use hidden inputs to store data that you do not want to display to the user, but still need to include in the form submission. This is useful for storing metadata or other information that is not editable by the user.
|
|
106
|
+
|
|
107
|
+
> [!WARNING]
|
|
108
|
+
> **Warning**
|
|
109
|
+
>
|
|
110
|
+
> This is not a recommended practice, as it can lead to security issues if
|
|
111
|
+
> sensitive data is stored in hidden inputs. It is better to use a variable to
|
|
112
|
+
> store your data, and include it in the form submission using the `onSubmit`
|
|
113
|
+
> handler.
|
|
114
|
+
|
|
115
|
+
```tsx
|
|
116
|
+
<HiddenInputsForm />
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
[View "HiddenInputs" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--hidden-inputs)
|
|
120
|
+
|
|
121
|
+
## Validation depend on other fields
|
|
122
|
+
|
|
123
|
+
This example shows how to validate one field based on another field's value.
|
|
124
|
+
|
|
125
|
+
The budget amount input validates against the selected budget range using the custom `validateBudgetInput` rules.
|
|
126
|
+
|
|
127
|
+
```tsx
|
|
128
|
+
<ValidationDependOnOtherFieldsExample />
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
[View "ValidationDependOnOtherFields" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--validation-depend-on-other-fields)
|
|
132
|
+
|
|
133
|
+
## Custom form field components
|
|
134
|
+
|
|
135
|
+
You can integrate custom components within `IressFormField` to create enhanced form experiences.
|
|
136
|
+
|
|
137
|
+
This demo showcases how to embed a custom `TranscriptTextBox` component into `IressFormField` while leveraging its built-in validation rules, error handling, and state management without additional implementation.
|
|
138
|
+
|
|
139
|
+
**Reminder:** When building custom form components, avoid managing error message state internally. This helps maintain the IressForm as the single source of truth and ensures consistent, predictable UI behavior.
|
|
140
|
+
|
|
141
|
+
Key features demonstrated:
|
|
142
|
+
|
|
143
|
+
- **Universal Integration Pattern**: Shows how any custom component can be embedded in IressFormField
|
|
144
|
+
- **Built-in Validation**: Leverages IressFormField's validation rules with custom validation logic
|
|
145
|
+
- **Multiple Error Messages**: Displays simultaneous validation errors (e.g., wrong file type AND too large)
|
|
146
|
+
- **Drag & Drop**: Files can be dragged and dropped directly onto the textarea
|
|
147
|
+
- **File Upload Button**: Traditional file selection via button click
|
|
148
|
+
- **Visual Feedback**: UI changes during drag operations with border and background updates
|
|
149
|
+
- **Form State Management**: Automatically integrates with form context using controlled props
|
|
150
|
+
- **File Management**: Display uploaded files with remove functionality using `IressPanel`
|
|
151
|
+
|
|
152
|
+
```tsx
|
|
153
|
+
<CustomFormFieldComponentsExample />
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
[View "CustomFormFieldComponents" example in Storybook →](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/story/components_patterns-form--custom-form-field-components)
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
*View interactive examples: [https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-form--docs](https://main--691abcc79dfa560a36d0a74f.chromatic.com/?path=/docs/components_patterns-form--docs)*
|