@vaneui/ui 1.4.2-alpha.20260930164814.ca070f5 → 1.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +0 -91
- package/dist/cjs/components/ui/alert/AlertCategories.cjs +0 -1
- package/dist/cjs/components/ui/alert/AlertCategories.cjs.map +1 -1
- package/dist/cjs/components/ui/alert/alertDefaults.cjs +1 -2
- package/dist/cjs/components/ui/alert/alertDefaults.cjs.map +1 -1
- package/dist/cjs/components/ui/alert/defaultAlertTheme.cjs +1 -3
- package/dist/cjs/components/ui/alert/defaultAlertTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/button/Button.cjs +1 -1
- package/dist/cjs/components/ui/button/Button.cjs.map +1 -1
- package/dist/cjs/components/ui/card/Card.cjs +2 -14
- package/dist/cjs/components/ui/card/Card.cjs.map +1 -1
- package/dist/cjs/components/ui/card/defaultCardTheme.cjs +1 -6
- package/dist/cjs/components/ui/card/defaultCardTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/checkbox/Checkbox.cjs +2 -9
- package/dist/cjs/components/ui/checkbox/Checkbox.cjs.map +1 -1
- package/dist/cjs/components/ui/checkbox/CheckboxCategories.cjs +1 -2
- package/dist/cjs/components/ui/checkbox/CheckboxCategories.cjs.map +1 -1
- package/dist/cjs/components/ui/checkbox/defaultCheckboxWrapperTheme.cjs +0 -3
- package/dist/cjs/components/ui/checkbox/defaultCheckboxWrapperTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/chip/Chip.cjs +1 -2
- package/dist/cjs/components/ui/chip/Chip.cjs.map +1 -1
- package/dist/cjs/components/ui/classes/appearanceClasses.cjs +0 -2
- package/dist/cjs/components/ui/classes/appearanceClasses.cjs.map +1 -1
- package/dist/cjs/components/ui/field/Field.cjs +3 -42
- package/dist/cjs/components/ui/field/Field.cjs.map +1 -1
- package/dist/cjs/components/ui/field/FieldContext.cjs +1 -4
- package/dist/cjs/components/ui/field/FieldContext.cjs.map +1 -1
- package/dist/cjs/components/ui/iconButton/IconButton.cjs +1 -1
- package/dist/cjs/components/ui/iconButton/IconButton.cjs.map +1 -1
- package/dist/cjs/components/ui/input/defaultInputTheme.cjs +1 -1
- package/dist/cjs/components/ui/input/defaultInputTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/label/defaultLabelTheme.cjs +1 -1
- package/dist/cjs/components/ui/label/defaultLabelTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/menu/Menu.cjs +8 -18
- package/dist/cjs/components/ui/menu/Menu.cjs.map +1 -1
- package/dist/cjs/components/ui/menu/MenuContext.cjs.map +1 -1
- package/dist/cjs/components/ui/menu/MenuItem.cjs +9 -2
- package/dist/cjs/components/ui/menu/MenuItem.cjs.map +1 -1
- package/dist/cjs/components/ui/menu/menuPopupDefaults.cjs +0 -1
- package/dist/cjs/components/ui/menu/menuPopupDefaults.cjs.map +1 -1
- package/dist/cjs/components/ui/modal/Modal.cjs +2 -3
- package/dist/cjs/components/ui/modal/Modal.cjs.map +1 -1
- package/dist/cjs/components/ui/modal/modalCloseButtonDefaults.cjs +0 -3
- package/dist/cjs/components/ui/modal/modalCloseButtonDefaults.cjs.map +1 -1
- package/dist/cjs/components/ui/navLink/NavLinkLabelCategories.cjs +1 -1
- package/dist/cjs/components/ui/navLink/NavLinkLabelCategories.cjs.map +1 -1
- package/dist/cjs/components/ui/navLink/defaultNavLinkLabelTheme.cjs +1 -3
- package/dist/cjs/components/ui/navLink/defaultNavLinkLabelTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/navLink/navLinkLabelDefaults.cjs +1 -3
- package/dist/cjs/components/ui/navLink/navLinkLabelDefaults.cjs.map +1 -1
- package/dist/cjs/components/ui/popup/Popup.cjs +9 -9
- package/dist/cjs/components/ui/popup/Popup.cjs.map +1 -1
- package/dist/cjs/components/ui/popup/popupDefaults.cjs +0 -1
- package/dist/cjs/components/ui/popup/popupDefaults.cjs.map +1 -1
- package/dist/cjs/components/ui/props/categoryBuilders.cjs +0 -2
- package/dist/cjs/components/ui/props/categoryBuilders.cjs.map +1 -1
- package/dist/cjs/components/ui/radio/Radio.cjs +3 -4
- package/dist/cjs/components/ui/radio/Radio.cjs.map +1 -1
- package/dist/cjs/components/ui/radio/RadioGroup.cjs +2 -3
- package/dist/cjs/components/ui/radio/RadioGroup.cjs.map +1 -1
- package/dist/cjs/components/ui/radio/RadioGroupContext.cjs.map +1 -1
- package/dist/cjs/components/ui/radio/defaultRadioTheme.cjs +2 -1
- package/dist/cjs/components/ui/radio/defaultRadioTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/radio/defaultRadioWrapperTheme.cjs +0 -3
- package/dist/cjs/components/ui/radio/defaultRadioWrapperTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/select/Select.cjs +1 -15
- package/dist/cjs/components/ui/select/Select.cjs.map +1 -1
- package/dist/cjs/components/ui/select/SelectWrapperCategories.cjs +1 -1
- package/dist/cjs/components/ui/select/SelectWrapperCategories.cjs.map +1 -1
- package/dist/cjs/components/ui/select/defaultSelectTheme.cjs +1 -1
- package/dist/cjs/components/ui/select/defaultSelectTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/select/defaultSelectWrapperTheme.cjs +1 -3
- package/dist/cjs/components/ui/select/defaultSelectWrapperTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/switch/Switch.cjs +3 -12
- package/dist/cjs/components/ui/switch/Switch.cjs.map +1 -1
- package/dist/cjs/components/ui/switch/defaultSwitchWrapperTheme.cjs +0 -3
- package/dist/cjs/components/ui/switch/defaultSwitchWrapperTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/table/TableCategories.cjs +0 -1
- package/dist/cjs/components/ui/table/TableCategories.cjs.map +1 -1
- package/dist/cjs/components/ui/table/defaultTableTheme.cjs +1 -3
- package/dist/cjs/components/ui/table/defaultTableTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/table/tableDefaults.cjs +1 -2
- package/dist/cjs/components/ui/table/tableDefaults.cjs.map +1 -1
- package/dist/cjs/components/ui/textarea/defaultTextareaTheme.cjs +1 -1
- package/dist/cjs/components/ui/textarea/defaultTextareaTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/theme/appearance/disabledClassMapper.cjs +1 -8
- package/dist/cjs/components/ui/theme/appearance/disabledClassMapper.cjs.map +1 -1
- package/dist/cjs/components/ui/theme/appearance/disabledOpacityClassMapper.cjs +1 -1
- package/dist/cjs/components/ui/theme/appearance/disabledOpacityClassMapper.cjs.map +1 -1
- package/dist/cjs/components/ui/theme/appearance/readOnlyClassMapper.cjs.map +1 -1
- package/dist/cjs/components/ui/theme/appearance/statusClassMapper.cjs +2 -2
- package/dist/cjs/components/ui/theme/appearance/statusClassMapper.cjs.map +1 -1
- package/dist/cjs/components/ui/theme/common/ComponentTheme.cjs +2 -3
- package/dist/cjs/components/ui/theme/common/ComponentTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/theme/common/appearanceClassMappers.cjs +0 -2
- package/dist/cjs/components/ui/theme/common/appearanceClassMappers.cjs.map +1 -1
- package/dist/cjs/components/ui/theme/defaults.cjs +5 -21
- package/dist/cjs/components/ui/theme/defaults.cjs.map +1 -1
- package/dist/cjs/components/ui/theme/layout/transitionClassMapper.cjs +2 -2
- package/dist/cjs/components/ui/theme/layout/transitionClassMapper.cjs.map +1 -1
- package/dist/cjs/components/ui/tooltip/tooltipDefaults.cjs +0 -1
- package/dist/cjs/components/ui/tooltip/tooltipDefaults.cjs.map +1 -1
- package/dist/cjs/components/ui/typography/index.cjs +0 -1
- package/dist/cjs/components/ui/typography/index.cjs.map +1 -1
- package/dist/cjs/components/ui/typography/link/Link.cjs +1 -4
- package/dist/cjs/components/ui/typography/link/Link.cjs.map +1 -1
- package/dist/cjs/components/ui/typography/link/LinkCategories.cjs +1 -1
- package/dist/cjs/components/ui/typography/link/LinkCategories.cjs.map +1 -1
- package/dist/cjs/components/ui/typography/link/defaultLinkTheme.cjs +2 -8
- package/dist/cjs/components/ui/typography/link/defaultLinkTheme.cjs.map +1 -1
- package/dist/cjs/components/ui/typography/listItem/ListItem.cjs +2 -0
- package/dist/cjs/components/ui/typography/listItem/ListItem.cjs.map +1 -1
- package/dist/cjs/index.cjs +20 -26
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/components/ui/alert/AlertCategories.mjs +1 -2
- package/dist/esm/components/ui/alert/AlertCategories.mjs.map +1 -1
- package/dist/esm/components/ui/alert/alertDefaults.mjs +1 -2
- package/dist/esm/components/ui/alert/alertDefaults.mjs.map +1 -1
- package/dist/esm/components/ui/alert/defaultAlertTheme.mjs +1 -3
- package/dist/esm/components/ui/alert/defaultAlertTheme.mjs.map +1 -1
- package/dist/esm/components/ui/button/Button.mjs +1 -1
- package/dist/esm/components/ui/button/Button.mjs.map +1 -1
- package/dist/esm/components/ui/card/Card.mjs +3 -15
- package/dist/esm/components/ui/card/Card.mjs.map +1 -1
- package/dist/esm/components/ui/card/defaultCardTheme.mjs +1 -6
- package/dist/esm/components/ui/card/defaultCardTheme.mjs.map +1 -1
- package/dist/esm/components/ui/checkbox/Checkbox.mjs +3 -10
- package/dist/esm/components/ui/checkbox/Checkbox.mjs.map +1 -1
- package/dist/esm/components/ui/checkbox/CheckboxCategories.mjs +2 -3
- package/dist/esm/components/ui/checkbox/CheckboxCategories.mjs.map +1 -1
- package/dist/esm/components/ui/checkbox/defaultCheckboxWrapperTheme.mjs +0 -3
- package/dist/esm/components/ui/checkbox/defaultCheckboxWrapperTheme.mjs.map +1 -1
- package/dist/esm/components/ui/chip/Chip.mjs +1 -2
- package/dist/esm/components/ui/chip/Chip.mjs.map +1 -1
- package/dist/esm/components/ui/classes/appearanceClasses.mjs +1 -2
- package/dist/esm/components/ui/classes/appearanceClasses.mjs.map +1 -1
- package/dist/esm/components/ui/field/Field.mjs +3 -42
- package/dist/esm/components/ui/field/Field.mjs.map +1 -1
- package/dist/esm/components/ui/field/FieldContext.mjs +1 -4
- package/dist/esm/components/ui/field/FieldContext.mjs.map +1 -1
- package/dist/esm/components/ui/iconButton/IconButton.mjs +1 -1
- package/dist/esm/components/ui/iconButton/IconButton.mjs.map +1 -1
- package/dist/esm/components/ui/input/defaultInputTheme.mjs +2 -2
- package/dist/esm/components/ui/input/defaultInputTheme.mjs.map +1 -1
- package/dist/esm/components/ui/label/defaultLabelTheme.mjs +1 -1
- package/dist/esm/components/ui/label/defaultLabelTheme.mjs.map +1 -1
- package/dist/esm/components/ui/menu/Menu.mjs +8 -18
- package/dist/esm/components/ui/menu/Menu.mjs.map +1 -1
- package/dist/esm/components/ui/menu/MenuContext.mjs.map +1 -1
- package/dist/esm/components/ui/menu/MenuItem.mjs +9 -2
- package/dist/esm/components/ui/menu/MenuItem.mjs.map +1 -1
- package/dist/esm/components/ui/menu/menuPopupDefaults.mjs +0 -1
- package/dist/esm/components/ui/menu/menuPopupDefaults.mjs.map +1 -1
- package/dist/esm/components/ui/modal/Modal.mjs +2 -3
- package/dist/esm/components/ui/modal/Modal.mjs.map +1 -1
- package/dist/esm/components/ui/modal/modalCloseButtonDefaults.mjs +0 -3
- package/dist/esm/components/ui/modal/modalCloseButtonDefaults.mjs.map +1 -1
- package/dist/esm/components/ui/navLink/NavLinkLabelCategories.mjs +1 -1
- package/dist/esm/components/ui/navLink/NavLinkLabelCategories.mjs.map +1 -1
- package/dist/esm/components/ui/navLink/defaultNavLinkLabelTheme.mjs +1 -3
- package/dist/esm/components/ui/navLink/defaultNavLinkLabelTheme.mjs.map +1 -1
- package/dist/esm/components/ui/navLink/navLinkLabelDefaults.mjs +1 -3
- package/dist/esm/components/ui/navLink/navLinkLabelDefaults.mjs.map +1 -1
- package/dist/esm/components/ui/popup/Popup.mjs +9 -9
- package/dist/esm/components/ui/popup/Popup.mjs.map +1 -1
- package/dist/esm/components/ui/popup/popupDefaults.mjs +0 -1
- package/dist/esm/components/ui/popup/popupDefaults.mjs.map +1 -1
- package/dist/esm/components/ui/props/categoryBuilders.mjs +1 -2
- package/dist/esm/components/ui/props/categoryBuilders.mjs.map +1 -1
- package/dist/esm/components/ui/radio/Radio.mjs +3 -4
- package/dist/esm/components/ui/radio/Radio.mjs.map +1 -1
- package/dist/esm/components/ui/radio/RadioGroup.mjs +3 -4
- package/dist/esm/components/ui/radio/RadioGroup.mjs.map +1 -1
- package/dist/esm/components/ui/radio/RadioGroupContext.mjs.map +1 -1
- package/dist/esm/components/ui/radio/defaultRadioTheme.mjs +3 -2
- package/dist/esm/components/ui/radio/defaultRadioTheme.mjs.map +1 -1
- package/dist/esm/components/ui/radio/defaultRadioWrapperTheme.mjs +0 -3
- package/dist/esm/components/ui/radio/defaultRadioWrapperTheme.mjs.map +1 -1
- package/dist/esm/components/ui/select/Select.mjs +2 -16
- package/dist/esm/components/ui/select/Select.mjs.map +1 -1
- package/dist/esm/components/ui/select/SelectWrapperCategories.mjs +1 -1
- package/dist/esm/components/ui/select/SelectWrapperCategories.mjs.map +1 -1
- package/dist/esm/components/ui/select/defaultSelectTheme.mjs +2 -2
- package/dist/esm/components/ui/select/defaultSelectTheme.mjs.map +1 -1
- package/dist/esm/components/ui/select/defaultSelectWrapperTheme.mjs +1 -3
- package/dist/esm/components/ui/select/defaultSelectWrapperTheme.mjs.map +1 -1
- package/dist/esm/components/ui/switch/Switch.mjs +3 -12
- package/dist/esm/components/ui/switch/Switch.mjs.map +1 -1
- package/dist/esm/components/ui/switch/defaultSwitchWrapperTheme.mjs +0 -3
- package/dist/esm/components/ui/switch/defaultSwitchWrapperTheme.mjs.map +1 -1
- package/dist/esm/components/ui/table/TableCategories.mjs +1 -2
- package/dist/esm/components/ui/table/TableCategories.mjs.map +1 -1
- package/dist/esm/components/ui/table/defaultTableTheme.mjs +1 -3
- package/dist/esm/components/ui/table/defaultTableTheme.mjs.map +1 -1
- package/dist/esm/components/ui/table/tableDefaults.mjs +1 -2
- package/dist/esm/components/ui/table/tableDefaults.mjs.map +1 -1
- package/dist/esm/components/ui/textarea/defaultTextareaTheme.mjs +2 -2
- package/dist/esm/components/ui/textarea/defaultTextareaTheme.mjs.map +1 -1
- package/dist/esm/components/ui/theme/appearance/disabledClassMapper.mjs +2 -8
- package/dist/esm/components/ui/theme/appearance/disabledClassMapper.mjs.map +1 -1
- package/dist/esm/components/ui/theme/appearance/disabledOpacityClassMapper.mjs +1 -1
- package/dist/esm/components/ui/theme/appearance/disabledOpacityClassMapper.mjs.map +1 -1
- package/dist/esm/components/ui/theme/appearance/readOnlyClassMapper.mjs.map +1 -1
- package/dist/esm/components/ui/theme/appearance/statusClassMapper.mjs +2 -2
- package/dist/esm/components/ui/theme/appearance/statusClassMapper.mjs.map +1 -1
- package/dist/esm/components/ui/theme/common/ComponentTheme.mjs +2 -3
- package/dist/esm/components/ui/theme/common/ComponentTheme.mjs.map +1 -1
- package/dist/esm/components/ui/theme/common/appearanceClassMappers.mjs +2 -3
- package/dist/esm/components/ui/theme/common/appearanceClassMappers.mjs.map +1 -1
- package/dist/esm/components/ui/theme/defaults.mjs +5 -21
- package/dist/esm/components/ui/theme/defaults.mjs.map +1 -1
- package/dist/esm/components/ui/theme/layout/transitionClassMapper.mjs +2 -2
- package/dist/esm/components/ui/theme/layout/transitionClassMapper.mjs.map +1 -1
- package/dist/esm/components/ui/tooltip/tooltipDefaults.mjs +0 -1
- package/dist/esm/components/ui/tooltip/tooltipDefaults.mjs.map +1 -1
- package/dist/esm/components/ui/typography/index.mjs +0 -1
- package/dist/esm/components/ui/typography/index.mjs.map +1 -1
- package/dist/esm/components/ui/typography/link/Link.mjs +1 -4
- package/dist/esm/components/ui/typography/link/Link.mjs.map +1 -1
- package/dist/esm/components/ui/typography/link/LinkCategories.mjs +1 -1
- package/dist/esm/components/ui/typography/link/LinkCategories.mjs.map +1 -1
- package/dist/esm/components/ui/typography/link/defaultLinkTheme.mjs +2 -8
- package/dist/esm/components/ui/typography/link/defaultLinkTheme.mjs.map +1 -1
- package/dist/esm/components/ui/typography/listItem/ListItem.mjs +2 -0
- package/dist/esm/components/ui/typography/listItem/ListItem.mjs.map +1 -1
- package/dist/esm/index.mjs +10 -16
- package/dist/esm/index.mjs.map +1 -1
- package/dist/types/components/ui/alert/Alert.d.cts +1 -1
- package/dist/types/components/ui/alert/Alert.d.mts +1 -1
- package/dist/types/components/ui/alert/Alert.d.ts +1 -1
- package/dist/types/components/ui/alert/AlertCategories.d.cts +1 -1
- package/dist/types/components/ui/alert/AlertCategories.d.mts +1 -1
- package/dist/types/components/ui/alert/AlertCategories.d.ts +1 -1
- package/dist/types/components/ui/alert/AlertProps.d.cts +2 -2
- package/dist/types/components/ui/alert/AlertProps.d.mts +2 -2
- package/dist/types/components/ui/alert/AlertProps.d.ts +2 -2
- package/dist/types/components/ui/alert/AlertTheme.d.cts +1 -2
- package/dist/types/components/ui/alert/AlertTheme.d.mts +1 -2
- package/dist/types/components/ui/alert/AlertTheme.d.ts +1 -2
- package/dist/types/components/ui/card/CardTheme.d.cts +0 -1
- package/dist/types/components/ui/card/CardTheme.d.mts +0 -1
- package/dist/types/components/ui/card/CardTheme.d.ts +0 -1
- package/dist/types/components/ui/checkbox/CheckboxCategories.d.cts +1 -1
- package/dist/types/components/ui/checkbox/CheckboxCategories.d.mts +1 -1
- package/dist/types/components/ui/checkbox/CheckboxCategories.d.ts +1 -1
- package/dist/types/components/ui/checkbox/CheckboxWrapperTheme.d.cts +1 -2
- package/dist/types/components/ui/checkbox/CheckboxWrapperTheme.d.mts +1 -2
- package/dist/types/components/ui/checkbox/CheckboxWrapperTheme.d.ts +1 -2
- package/dist/types/components/ui/classes/appearanceClasses.d.cts +0 -2
- package/dist/types/components/ui/classes/appearanceClasses.d.mts +0 -2
- package/dist/types/components/ui/classes/appearanceClasses.d.ts +0 -2
- package/dist/types/components/ui/field/FieldContext.d.cts +0 -7
- package/dist/types/components/ui/field/FieldContext.d.mts +0 -7
- package/dist/types/components/ui/field/FieldContext.d.ts +0 -7
- package/dist/types/components/ui/menu/MenuContext.d.cts +0 -4
- package/dist/types/components/ui/menu/MenuContext.d.mts +0 -4
- package/dist/types/components/ui/menu/MenuContext.d.ts +0 -4
- package/dist/types/components/ui/navLink/NavLinkLabelCategories.d.cts +2 -2
- package/dist/types/components/ui/navLink/NavLinkLabelCategories.d.mts +2 -2
- package/dist/types/components/ui/navLink/NavLinkLabelCategories.d.ts +2 -2
- package/dist/types/components/ui/navLink/NavLinkLabelProps.d.cts +2 -2
- package/dist/types/components/ui/navLink/NavLinkLabelProps.d.mts +2 -2
- package/dist/types/components/ui/navLink/NavLinkLabelProps.d.ts +2 -2
- package/dist/types/components/ui/navLink/NavLinkLabelTheme.d.cts +0 -2
- package/dist/types/components/ui/navLink/NavLinkLabelTheme.d.mts +0 -2
- package/dist/types/components/ui/navLink/NavLinkLabelTheme.d.ts +0 -2
- package/dist/types/components/ui/props/categoryBuilders.d.cts +0 -1
- package/dist/types/components/ui/props/categoryBuilders.d.mts +0 -1
- package/dist/types/components/ui/props/categoryBuilders.d.ts +0 -1
- package/dist/types/components/ui/radio/RadioCategories.d.cts +1 -1
- package/dist/types/components/ui/radio/RadioCategories.d.mts +1 -1
- package/dist/types/components/ui/radio/RadioCategories.d.ts +1 -1
- package/dist/types/components/ui/radio/RadioGroupContext.d.cts +0 -3
- package/dist/types/components/ui/radio/RadioGroupContext.d.mts +0 -3
- package/dist/types/components/ui/radio/RadioGroupContext.d.ts +0 -3
- package/dist/types/components/ui/radio/RadioWrapperTheme.d.cts +1 -2
- package/dist/types/components/ui/radio/RadioWrapperTheme.d.mts +1 -2
- package/dist/types/components/ui/radio/RadioWrapperTheme.d.ts +1 -2
- package/dist/types/components/ui/select/SelectWrapperCategories.d.cts +2 -2
- package/dist/types/components/ui/select/SelectWrapperCategories.d.mts +2 -2
- package/dist/types/components/ui/select/SelectWrapperCategories.d.ts +2 -2
- package/dist/types/components/ui/select/SelectWrapperProps.d.cts +2 -2
- package/dist/types/components/ui/select/SelectWrapperProps.d.mts +2 -2
- package/dist/types/components/ui/select/SelectWrapperProps.d.ts +2 -2
- package/dist/types/components/ui/select/SelectWrapperTheme.d.cts +1 -2
- package/dist/types/components/ui/select/SelectWrapperTheme.d.mts +1 -2
- package/dist/types/components/ui/select/SelectWrapperTheme.d.ts +1 -2
- package/dist/types/components/ui/switch/SwitchCategories.d.cts +1 -1
- package/dist/types/components/ui/switch/SwitchCategories.d.mts +1 -1
- package/dist/types/components/ui/switch/SwitchCategories.d.ts +1 -1
- package/dist/types/components/ui/switch/SwitchWrapperTheme.d.cts +1 -2
- package/dist/types/components/ui/switch/SwitchWrapperTheme.d.mts +1 -2
- package/dist/types/components/ui/switch/SwitchWrapperTheme.d.ts +1 -2
- package/dist/types/components/ui/table/Table.d.cts +1 -1
- package/dist/types/components/ui/table/Table.d.mts +1 -1
- package/dist/types/components/ui/table/Table.d.ts +1 -1
- package/dist/types/components/ui/table/TableCategories.d.cts +1 -1
- package/dist/types/components/ui/table/TableCategories.d.mts +1 -1
- package/dist/types/components/ui/table/TableCategories.d.ts +1 -1
- package/dist/types/components/ui/table/TableProps.d.cts +2 -2
- package/dist/types/components/ui/table/TableProps.d.mts +2 -2
- package/dist/types/components/ui/table/TableProps.d.ts +2 -2
- package/dist/types/components/ui/table/TableTheme.d.cts +1 -2
- package/dist/types/components/ui/table/TableTheme.d.mts +1 -2
- package/dist/types/components/ui/table/TableTheme.d.ts +1 -2
- package/dist/types/components/ui/theme/appearance/disabledClassMapper.d.cts +0 -4
- package/dist/types/components/ui/theme/appearance/disabledClassMapper.d.mts +0 -4
- package/dist/types/components/ui/theme/appearance/disabledClassMapper.d.ts +0 -4
- package/dist/types/components/ui/theme/appearance/index.d.cts +1 -1
- package/dist/types/components/ui/theme/appearance/index.d.mts +1 -1
- package/dist/types/components/ui/theme/appearance/index.d.ts +1 -1
- package/dist/types/components/ui/theme/appearance/readOnlyClassMapper.d.cts +1 -1
- package/dist/types/components/ui/theme/appearance/readOnlyClassMapper.d.mts +1 -1
- package/dist/types/components/ui/theme/appearance/readOnlyClassMapper.d.ts +1 -1
- package/dist/types/components/ui/theme/appearance/statusClassMapper.d.cts +1 -1
- package/dist/types/components/ui/theme/appearance/statusClassMapper.d.mts +1 -1
- package/dist/types/components/ui/theme/appearance/statusClassMapper.d.ts +1 -1
- package/dist/types/components/ui/theme/common/appearanceClassMappers.d.cts +0 -2
- package/dist/types/components/ui/theme/common/appearanceClassMappers.d.mts +0 -2
- package/dist/types/components/ui/theme/common/appearanceClassMappers.d.ts +0 -2
- package/dist/types/components/ui/theme/common/index.d.cts +1 -1
- package/dist/types/components/ui/theme/common/index.d.mts +1 -1
- package/dist/types/components/ui/theme/common/index.d.ts +1 -1
- package/dist/types/components/ui/theme/layout/transitionClassMapper.d.cts +1 -1
- package/dist/types/components/ui/theme/layout/transitionClassMapper.d.mts +1 -1
- package/dist/types/components/ui/theme/layout/transitionClassMapper.d.ts +1 -1
- package/dist/types/components/ui/typography/link/LinkCategories.d.cts +3 -3
- package/dist/types/components/ui/typography/link/LinkCategories.d.mts +3 -3
- package/dist/types/components/ui/typography/link/LinkCategories.d.ts +3 -3
- package/dist/types/components/ui/typography/link/LinkTheme.d.cts +0 -4
- package/dist/types/components/ui/typography/link/LinkTheme.d.mts +0 -4
- package/dist/types/components/ui/typography/link/LinkTheme.d.ts +0 -4
- package/dist/ui.css +1 -1
- package/dist/vars.css +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.mjs","sources":["../../../../../src/components/ui/modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useEffect, useId, useState, useMemo, useCallback } from 'react';\nimport { createPortal } from 'react-dom';\nimport type { ModalProps } from './ModalProps';\nimport { useTheme } from '../../themeContext';\nimport { ThemedComponent } from '../../themedComponent';\nimport { defaultModalContentTheme } from './defaultModalContentTheme';\nimport { defaultModalOverlayTheme } from './defaultModalOverlayTheme';\nimport { useScrollLock } from '../../utils/scrollLock';\nimport { useFocusTrap } from '../../utils/focusTrap';\nimport { useInertBackground } from '../../utils/inertBackground';\nimport { registerOverlay } from '../../utils/overlayStack';\nimport { useControllableState } from '../../utils/controllableState';\nimport { useTransition } from '../../utils/transition';\nimport { useStackingContext } from '../../utils/stackingContext';\nimport { useMergedRef } from '../../utils/mergedRef';\nimport { useHydrated } from '../../utils/useHydrated';\nimport { pushEscapeHandler } from '../../utils/escapeStack';\nimport { composeEventHandlers } from '../../utils/composeEventHandlers';\nimport { ModalContext } from './ModalContext';\nimport { ModalHeader } from './ModalHeader';\nimport { ModalBody } from './ModalBody';\nimport { ModalFooter } from './ModalFooter';\nimport { ModalCloseButton } from './ModalCloseButton';\nimport { Row } from '../row/Row';\nimport { Title } from '../typography/title/Title';\nimport { getModalPart } from './modalParts';\n\n// Any ModalHeader/ModalBody/ModalFooter among the children switches Modal\n// from convenience mode (auto ModalBody wrapping) to compound mode (children\n// rendered as-is). Children.toArray does not flatten Fragments, so the scan\n// recurses through them; sub-components are identified by their static\n// modal-part marker (survives memo()-style wrappers) instead of reference\n// equality. A consumer component that merely renders a ModalHeader cannot be\n// detected without rendering it — it falls back to convenience mode.\nconst containsModalSection = (nodes: React.ReactNode): boolean =>\n React.Children.toArray(nodes).some(child => {\n if (!React.isValidElement(child)) return false;\n if (child.type === React.Fragment) {\n return containsModalSection((child.props as { children?: React.ReactNode }).children);\n }\n const part = getModalPart(child.type);\n return part === 'header' || part === 'body' || part === 'footer';\n });\n\n// A dialog's accessible name comes (in compound mode) from a ModalHeader that\n// carries real title content — anything other than a close button. Mirror\n// ModalHeader's own title/close split so the dev no-name warning agrees with\n// how aria-labelledby is actually wired (a header with only a close button\n// names nothing).\nconst compoundHeaderHasTitle = (nodes: React.ReactNode): boolean =>\n React.Children.toArray(nodes).some(child => {\n if (!React.isValidElement(child)) return false;\n if (child.type === React.Fragment) {\n return compoundHeaderHasTitle((child.props as { children?: React.ReactNode }).children);\n }\n if (getModalPart(child.type) !== 'header') return false;\n return React.Children.toArray((child.props as { children?: React.ReactNode }).children)\n .some(c => !(React.isValidElement(c) && getModalPart(c.type) === 'closeButton'));\n });\n\nexport const Modal = forwardRef<HTMLDivElement, ModalProps>(\n function Modal(\n {\n open: openProp,\n onClose: onCloseProp,\n defaultOpen = false,\n onOpenChange,\n closeOnOverlayClick = true,\n closeOnEscape = true,\n scrollLock = true,\n focusTrap = true,\n returnFocus = true,\n initialFocus,\n overlayProps,\n keepMounted = false,\n noAnimation = false,\n transitionDuration = 200,\n fullScreen = false,\n portal = true,\n onEnterComplete,\n onExitComplete,\n title,\n footer,\n withCloseButton,\n children,\n ...props\n },\n ref\n ) {\n const theme = useTheme();\n const contentRef = useRef<HTMLDivElement>(null);\n const overlayRef = useRef<HTMLDivElement>(null);\n const [open, setOpen] = useControllableState({\n value: openProp,\n defaultValue: defaultOpen,\n onChange: onOpenChange,\n hasExternalHandler: !!onCloseProp,\n });\n\n const onClose = useCallback(() => {\n onCloseProp?.();\n setOpen(false);\n }, [onCloseProp, setOpen]);\n\n const uniqueId = useId();\n const titleId = `modal-title-${uniqueId.replace(/:/g, '-')}`;\n const bodyId = `modal-body-${uniqueId.replace(/:/g, '-')}`;\n const [titleMounted, setTitleMounted] = useState(false);\n const [bodyMounted, setBodyMounted] = useState(false);\n\n // only the portal path lacks server markup, so only it waits for hydration\n const hydrated = useHydrated();\n const effectiveOpen = open && (!portal || hydrated);\n\n const overlayTransition = useTransition(effectiveOpen, transitionDuration, noAnimation, { onEnterComplete, onExitComplete });\n const contentTransition = useTransition(effectiveOpen, transitionDuration, noAnimation);\n const zIndex = useStackingContext(effectiveOpen, 'modal', overlayRef);\n\n const mergedRef = useMergedRef(ref, contentRef);\n\n useScrollLock(effectiveOpen && scrollLock);\n\n const focusTrapOptions = useMemo(\n () => ({ returnFocus, initialFocus }),\n [returnFocus, initialFocus]\n );\n // neutralize the page behind the dialog for AT/focus (the focus trap only\n // guards the Tab boundary); skips the dialog's own portal and any overlay\n // portaled out of it (e.g. an in-modal menu).\n // Declared before useFocusTrap: cleanups run in order, and inert must lift before focus returns.\n useInertBackground(effectiveOpen, overlayRef);\n useFocusTrap(contentRef, effectiveOpen && focusTrap, focusTrapOptions);\n\n // join the shared overlay stack while open, so any OTHER open dialog's\n // background-inert pass spares this modal's portal (without this, two\n // simultaneously-open modals would inert each other's dialog)\n useEffect(() => {\n if (!effectiveOpen) return;\n const el = overlayRef.current;\n if (!el) return;\n return registerOverlay(el, null);\n }, [effectiveOpen]);\n\n // only the topmost floating element closes on Escape\n useEffect(() => {\n if (!effectiveOpen || !closeOnEscape) return;\n return pushEscapeHandler(onClose, overlayRef.current);\n }, [effectiveOpen, closeOnEscape, onClose]);\n\n const handleOverlayClick = (event: React.MouseEvent) => {\n // defaultPrevented lets a composed consumer onClick veto the close\n if (closeOnOverlayClick && !event.defaultPrevented && event.target === event.currentTarget) {\n onClose();\n }\n };\n\n // must run unconditionally before early return\n const contextValue = useMemo(\n () => ({ onClose, titleId, bodyId, setTitleMounted, setBodyMounted }),\n [onClose, titleId, bodyId]\n );\n\n const isCompoundMode = containsModalSection(children);\n // a dismissible dialog always offers a close affordance (decoupled from\n // `title`); opt out with withCloseButton={false}. With a title it sits in\n // the header; without one it floats in the dialog's top-right corner so\n // there's no empty header.\n const showCloseButton = withCloseButton ?? true;\n\n // dev-only: a dialog with no accessible name is an ARIA violation\n // (mirrors IconButton). Computed synchronously so it never false-fires —\n // an explicit aria-label/aria-labelledby, the convenience `title`, or a\n // compound ModalHeader carrying title content.\n const hasAccessibleName =\n title !== undefined\n || Boolean((props as Record<string, unknown>)['aria-label'])\n || Boolean((props as Record<string, unknown>)['aria-labelledby'])\n || (isCompoundMode && compoundHeaderHasTitle(children));\n useEffect(() => {\n if (process.env.NODE_ENV !== 'production' && open && !hasAccessibleName) {\n console.warn(\n 'VaneUI: Modal has no accessible name — pass a `title`, render a ModalHeader, or set aria-label/aria-labelledby so screen readers can announce the dialog.'\n );\n }\n }, [open, hasAccessibleName]);\n\n const shouldMount = overlayTransition.mounted || keepMounted;\n if (!shouldMount) return null;\n\n const isHidden = !overlayTransition.mounted && keepMounted;\n\n // consumer onClick/style/className must COMPOSE with the internal\n // handlers and CSS variables, never replace them (a consumer onClick\n // would otherwise kill click-to-close; a consumer style would wipe\n // --z-index)\n const {\n onClick: overlayOnClick,\n style: overlayStyle,\n className: overlayClassName,\n ...restOverlayProps\n } = {\n ...overlayProps,\n ...(fullScreen ? { transparent: true } : {}),\n };\n\n const {\n onClick: contentOnClick,\n style: contentStyle,\n ...restProps\n } = props;\n\n const cssVars = {\n '--z-index': zIndex,\n ...(transitionDuration !== 200 ? { '--transition-duration': `${transitionDuration}ms` } : undefined),\n } as React.CSSProperties;\n\n const contentDurationStyle = transitionDuration !== 200\n ? { '--transition-duration': `${transitionDuration}ms` } as React.CSSProperties\n : undefined;\n\n const content = (\n <ThemedComponent\n ref={overlayRef}\n theme={theme?.modal.overlay ?? defaultModalOverlayTheme}\n data-state={isHidden ? undefined : overlayTransition.state}\n aria-hidden={isHidden || undefined}\n {...{\n ...restOverlayProps,\n className: [isHidden ? 'hidden' : undefined, overlayClassName].filter(Boolean).join(' ') || undefined,\n onClick: composeEventHandlers(overlayOnClick, handleOverlayClick),\n style: { ...cssVars, ...overlayStyle },\n }}\n >\n <ThemedComponent\n ref={mergedRef}\n theme={theme?.modal.content ?? defaultModalContentTheme}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={titleMounted ? titleId : undefined}\n aria-describedby={bodyMounted ? bodyId : undefined}\n data-state={isHidden ? undefined : contentTransition.state}\n {...{\n ...restProps,\n ...(fullScreen ? { sharp: true, wScreen: true, hScreen: true } : {}),\n onClick: composeEventHandlers(contentOnClick, (e: React.MouseEvent) => e.stopPropagation()),\n style: { ...contentDurationStyle, ...contentStyle },\n }}\n >\n <ModalContext.Provider value={contextValue}>\n {isCompoundMode ? (\n children\n ) : (\n <>\n {title !== undefined && (\n <ModalHeader>\n {/* plain text gets the heading's font, size and weight */}\n {typeof title === 'string' || typeof title === 'number' ? <Title>{title}</Title> : title}\n {showCloseButton && <ModalCloseButton />}\n </ModalHeader>\n )}\n {title === undefined && showCloseButton && (\n <Row justifyEnd>\n <ModalCloseButton />\n </Row>\n )}\n <ModalBody>{children}</ModalBody>\n {footer !== undefined && (\n <ModalFooter>{footer}</ModalFooter>\n )}\n </>\n )}\n </ModalContext.Provider>\n </ThemedComponent>\n </ThemedComponent>\n );\n\n if (portal) {\n // SSR: the portal target can't exist server-side, and rendering the\n // content inline would hydrate differently than the client (which\n // portals to document.body) - render nothing; portaled content\n // appears after hydration\n // false on the server and on the hydrating render; also covers keepMounted content\n if (!hydrated) {\n return null;\n }\n return createPortal(content, document.body);\n }\n\n return content;\n }\n);\n\nModal.displayName = 'Modal';\n"],"names":["Modal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Modal.mjs","sources":["../../../../../src/components/ui/modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useEffect, useId, useState, useMemo, useCallback } from 'react';\nimport { createPortal } from 'react-dom';\nimport type { ModalProps } from './ModalProps';\nimport { useTheme } from '../../themeContext';\nimport { ThemedComponent } from '../../themedComponent';\nimport { defaultModalContentTheme } from './defaultModalContentTheme';\nimport { defaultModalOverlayTheme } from './defaultModalOverlayTheme';\nimport { useScrollLock } from '../../utils/scrollLock';\nimport { useFocusTrap } from '../../utils/focusTrap';\nimport { useInertBackground } from '../../utils/inertBackground';\nimport { registerOverlay } from '../../utils/overlayStack';\nimport { useControllableState } from '../../utils/controllableState';\nimport { useTransition } from '../../utils/transition';\nimport { useStackingContext } from '../../utils/stackingContext';\nimport { useMergedRef } from '../../utils/mergedRef';\nimport { useHydrated } from '../../utils/useHydrated';\nimport { pushEscapeHandler } from '../../utils/escapeStack';\nimport { composeEventHandlers } from '../../utils/composeEventHandlers';\nimport { ModalContext } from './ModalContext';\nimport { ModalHeader } from './ModalHeader';\nimport { ModalBody } from './ModalBody';\nimport { ModalFooter } from './ModalFooter';\nimport { ModalCloseButton } from './ModalCloseButton';\nimport { Row } from '../row/Row';\nimport { getModalPart } from './modalParts';\n\n// Any ModalHeader/ModalBody/ModalFooter among the children switches Modal\n// from convenience mode (auto ModalBody wrapping) to compound mode (children\n// rendered as-is). Children.toArray does not flatten Fragments, so the scan\n// recurses through them; sub-components are identified by their static\n// modal-part marker (survives memo()-style wrappers) instead of reference\n// equality. A consumer component that merely renders a ModalHeader cannot be\n// detected without rendering it — it falls back to convenience mode.\nconst containsModalSection = (nodes: React.ReactNode): boolean =>\n React.Children.toArray(nodes).some(child => {\n if (!React.isValidElement(child)) return false;\n if (child.type === React.Fragment) {\n return containsModalSection((child.props as { children?: React.ReactNode }).children);\n }\n const part = getModalPart(child.type);\n return part === 'header' || part === 'body' || part === 'footer';\n });\n\n// A dialog's accessible name comes (in compound mode) from a ModalHeader that\n// carries real title content — anything other than a close button. Mirror\n// ModalHeader's own title/close split so the dev no-name warning agrees with\n// how aria-labelledby is actually wired (a header with only a close button\n// names nothing).\nconst compoundHeaderHasTitle = (nodes: React.ReactNode): boolean =>\n React.Children.toArray(nodes).some(child => {\n if (!React.isValidElement(child)) return false;\n if (child.type === React.Fragment) {\n return compoundHeaderHasTitle((child.props as { children?: React.ReactNode }).children);\n }\n if (getModalPart(child.type) !== 'header') return false;\n return React.Children.toArray((child.props as { children?: React.ReactNode }).children)\n .some(c => !(React.isValidElement(c) && getModalPart(c.type) === 'closeButton'));\n });\n\nexport const Modal = forwardRef<HTMLDivElement, ModalProps>(\n function Modal(\n {\n open: openProp,\n onClose: onCloseProp,\n defaultOpen = false,\n onOpenChange,\n closeOnOverlayClick = true,\n closeOnEscape = true,\n scrollLock = true,\n focusTrap = true,\n returnFocus = true,\n initialFocus,\n overlayProps,\n keepMounted = false,\n noAnimation = false,\n transitionDuration = 200,\n fullScreen = false,\n portal = true,\n onEnterComplete,\n onExitComplete,\n title,\n footer,\n withCloseButton,\n children,\n ...props\n },\n ref\n ) {\n const theme = useTheme();\n const contentRef = useRef<HTMLDivElement>(null);\n const overlayRef = useRef<HTMLDivElement>(null);\n const [open, setOpen] = useControllableState({\n value: openProp,\n defaultValue: defaultOpen,\n onChange: onOpenChange,\n hasExternalHandler: !!onCloseProp,\n });\n\n const onClose = useCallback(() => {\n onCloseProp?.();\n setOpen(false);\n }, [onCloseProp, setOpen]);\n\n const uniqueId = useId();\n const titleId = `modal-title-${uniqueId.replace(/:/g, '-')}`;\n const bodyId = `modal-body-${uniqueId.replace(/:/g, '-')}`;\n const [titleMounted, setTitleMounted] = useState(false);\n const [bodyMounted, setBodyMounted] = useState(false);\n\n // only the portal path lacks server markup, so only it waits for hydration\n const hydrated = useHydrated();\n const effectiveOpen = open && (!portal || hydrated);\n\n const overlayTransition = useTransition(effectiveOpen, transitionDuration, noAnimation, { onEnterComplete, onExitComplete });\n const contentTransition = useTransition(effectiveOpen, transitionDuration, noAnimation);\n const zIndex = useStackingContext(effectiveOpen, 'modal', overlayRef);\n\n const mergedRef = useMergedRef(ref, contentRef);\n\n useScrollLock(effectiveOpen && scrollLock);\n\n const focusTrapOptions = useMemo(\n () => ({ returnFocus, initialFocus }),\n [returnFocus, initialFocus]\n );\n useFocusTrap(contentRef, effectiveOpen && focusTrap, focusTrapOptions);\n\n // neutralize the page behind the dialog for AT/focus (the focus trap only\n // guards the Tab boundary); skips the dialog's own portal and any overlay\n // portaled out of it (e.g. an in-modal menu).\n useInertBackground(effectiveOpen, overlayRef);\n\n // join the shared overlay stack while open, so any OTHER open dialog's\n // background-inert pass spares this modal's portal (without this, two\n // simultaneously-open modals would inert each other's dialog)\n useEffect(() => {\n if (!effectiveOpen) return;\n const el = overlayRef.current;\n if (!el) return;\n return registerOverlay(el, null);\n }, [effectiveOpen]);\n\n // only the topmost floating element closes on Escape\n useEffect(() => {\n if (!effectiveOpen || !closeOnEscape) return;\n return pushEscapeHandler(onClose, overlayRef.current);\n }, [effectiveOpen, closeOnEscape, onClose]);\n\n const handleOverlayClick = (event: React.MouseEvent) => {\n // defaultPrevented lets a composed consumer onClick veto the close\n if (closeOnOverlayClick && !event.defaultPrevented && event.target === event.currentTarget) {\n onClose();\n }\n };\n\n // must run unconditionally before early return\n const contextValue = useMemo(\n () => ({ onClose, titleId, bodyId, setTitleMounted, setBodyMounted }),\n [onClose, titleId, bodyId]\n );\n\n const isCompoundMode = containsModalSection(children);\n // a dismissible dialog always offers a close affordance (decoupled from\n // `title`); opt out with withCloseButton={false}. With a title it sits in\n // the header; without one it floats in the dialog's top-right corner so\n // there's no empty header.\n const showCloseButton = withCloseButton ?? true;\n\n // dev-only: a dialog with no accessible name is an ARIA violation\n // (mirrors IconButton). Computed synchronously so it never false-fires —\n // an explicit aria-label/aria-labelledby, the convenience `title`, or a\n // compound ModalHeader carrying title content.\n const hasAccessibleName =\n title !== undefined\n || Boolean((props as Record<string, unknown>)['aria-label'])\n || Boolean((props as Record<string, unknown>)['aria-labelledby'])\n || (isCompoundMode && compoundHeaderHasTitle(children));\n useEffect(() => {\n if (process.env.NODE_ENV !== 'production' && open && !hasAccessibleName) {\n console.warn(\n 'VaneUI: Modal has no accessible name — pass a `title`, render a ModalHeader, or set aria-label/aria-labelledby so screen readers can announce the dialog.'\n );\n }\n }, [open, hasAccessibleName]);\n\n const shouldMount = overlayTransition.mounted || keepMounted;\n if (!shouldMount) return null;\n\n const isHidden = !overlayTransition.mounted && keepMounted;\n\n // consumer onClick/style/className must COMPOSE with the internal\n // handlers and CSS variables, never replace them (a consumer onClick\n // would otherwise kill click-to-close; a consumer style would wipe\n // --z-index)\n const {\n onClick: overlayOnClick,\n style: overlayStyle,\n className: overlayClassName,\n ...restOverlayProps\n } = {\n ...overlayProps,\n ...(fullScreen ? { transparent: true } : {}),\n };\n\n const {\n onClick: contentOnClick,\n style: contentStyle,\n ...restProps\n } = props;\n\n const cssVars = {\n '--z-index': zIndex,\n ...(transitionDuration !== 200 ? { '--transition-duration': `${transitionDuration}ms` } : undefined),\n } as React.CSSProperties;\n\n const contentDurationStyle = transitionDuration !== 200\n ? { '--transition-duration': `${transitionDuration}ms` } as React.CSSProperties\n : undefined;\n\n const content = (\n <ThemedComponent\n ref={overlayRef}\n theme={theme?.modal.overlay ?? defaultModalOverlayTheme}\n data-state={isHidden ? undefined : overlayTransition.state}\n aria-hidden={isHidden || undefined}\n {...{\n ...restOverlayProps,\n className: [isHidden ? 'hidden' : undefined, overlayClassName].filter(Boolean).join(' ') || undefined,\n onClick: composeEventHandlers(overlayOnClick, handleOverlayClick),\n style: { ...cssVars, ...overlayStyle },\n }}\n >\n <ThemedComponent\n ref={mergedRef}\n theme={theme?.modal.content ?? defaultModalContentTheme}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={titleMounted ? titleId : undefined}\n aria-describedby={bodyMounted ? bodyId : undefined}\n data-state={isHidden ? undefined : contentTransition.state}\n {...{\n ...restProps,\n ...(fullScreen ? { sharp: true, wScreen: true, hScreen: true } : {}),\n onClick: composeEventHandlers(contentOnClick, (e: React.MouseEvent) => e.stopPropagation()),\n style: { ...contentDurationStyle, ...contentStyle },\n }}\n >\n <ModalContext.Provider value={contextValue}>\n {isCompoundMode ? (\n children\n ) : (\n <>\n {title !== undefined && (\n <ModalHeader>\n {title}\n {showCloseButton && <ModalCloseButton />}\n </ModalHeader>\n )}\n {title === undefined && showCloseButton && (\n <Row justifyEnd>\n <ModalCloseButton />\n </Row>\n )}\n <ModalBody>{children}</ModalBody>\n {footer !== undefined && (\n <ModalFooter>{footer}</ModalFooter>\n )}\n </>\n )}\n </ModalContext.Provider>\n </ThemedComponent>\n </ThemedComponent>\n );\n\n if (portal) {\n // SSR: the portal target can't exist server-side, and rendering the\n // content inline would hydrate differently than the client (which\n // portals to document.body) - render nothing; portaled content\n // appears after hydration\n // false on the server and on the hydrating render; also covers keepMounted content\n if (!hydrated) {\n return null;\n }\n return createPortal(content, document.body);\n }\n\n return content;\n }\n);\n\nModal.displayName = 'Modal';\n"],"names":["Modal"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modalCloseButtonDefaults.mjs","sources":["../../../../../src/components/ui/modal/modalCloseButtonDefaults.ts"],"sourcesContent":["import type { ModalCloseButtonProps } from \"./ModalCloseButtonProps\";\n\n/** Modal close-button defaults (renders through theme.button.main; customizable via ThemeProvider modal.closeButton). */\nexport const modalCloseButtonDefaults: Partial<ModalCloseButtonProps> = {\n
|
|
1
|
+
{"version":3,"file":"modalCloseButtonDefaults.mjs","sources":["../../../../../src/components/ui/modal/modalCloseButtonDefaults.ts"],"sourcesContent":["import type { ModalCloseButtonProps } from \"./ModalCloseButtonProps\";\n\n/** Modal close-button defaults (renders through theme.button.main; customizable via ThemeProvider modal.closeButton). */\nexport const modalCloseButtonDefaults: Partial<ModalCloseButtonProps> = {\n secondary: true,\n transparent: true,\n noShadow: true,\n noInsetRing: true,\n};\n"],"names":[],"mappings":"AAGO,MAAM,wBAAA,GAA2D;AAAA,EACtE,SAAA,EAAW,IAAA;AAAA,EACX,WAAA,EAAa,IAAA;AAAA,EACb,QAAA,EAAU,IAAA;AAAA,EACV,WAAA,EAAa;AACf;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { TRUNCATE } from '../props/categoryBuilders.mjs';
|
|
2
2
|
|
|
3
|
-
const NAV_LINK_LABEL_CATEGORIES = [...TRUNCATE, "overflow", "whitespace", "width"
|
|
3
|
+
const NAV_LINK_LABEL_CATEGORIES = [...TRUNCATE, "overflow", "whitespace", "width"];
|
|
4
4
|
|
|
5
5
|
export { NAV_LINK_LABEL_CATEGORIES };
|
|
6
6
|
//# sourceMappingURL=NavLinkLabelCategories.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavLinkLabelCategories.mjs","sources":["../../../../../src/components/ui/navLink/NavLinkLabelCategories.ts"],"sourcesContent":["import { TRUNCATE } from \"../props/categoryBuilders\";\n\n/** Categories for NavLink label sub-theme — truncation, overflow, whitespace, width
|
|
1
|
+
{"version":3,"file":"NavLinkLabelCategories.mjs","sources":["../../../../../src/components/ui/navLink/NavLinkLabelCategories.ts"],"sourcesContent":["import { TRUNCATE } from \"../props/categoryBuilders\";\n\n/** Categories for NavLink label sub-theme — truncation, overflow, whitespace, width */\nexport const NAV_LINK_LABEL_CATEGORIES = [...TRUNCATE, 'overflow', 'whitespace', 'width'] as const;\n"],"names":[],"mappings":";;AAGO,MAAM,4BAA4B,CAAC,GAAG,QAAA,EAAU,UAAA,EAAY,cAAc,OAAO;;;;"}
|
|
@@ -8,7 +8,6 @@ import { navLinkLabelDefaults } from './navLinkLabelDefaults.mjs';
|
|
|
8
8
|
import { WidthClassMapper } from '../theme/layout/widthClassMapper.mjs';
|
|
9
9
|
import { OverflowClassMapper } from '../theme/layout/overflowClassMapper.mjs';
|
|
10
10
|
import { WhitespaceClassMapper } from '../theme/layout/whitespaceClassMapper.mjs';
|
|
11
|
-
import { FlexClassMapper } from '../theme/layout/flexClassMapper.mjs';
|
|
12
11
|
|
|
13
12
|
const defaultNavLinkLabelTheme = new ComponentTheme(
|
|
14
13
|
"span",
|
|
@@ -17,8 +16,7 @@ const defaultNavLinkLabelTheme = new ComponentTheme(
|
|
|
17
16
|
layout: {
|
|
18
17
|
overflow: new OverflowClassMapper(),
|
|
19
18
|
whitespace: new WhitespaceClassMapper(),
|
|
20
|
-
width: new WidthClassMapper()
|
|
21
|
-
flex: new FlexClassMapper()
|
|
19
|
+
width: new WidthClassMapper()
|
|
22
20
|
},
|
|
23
21
|
typography: {
|
|
24
22
|
truncate: defaultTypographyClassMappers.truncate
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultNavLinkLabelTheme.mjs","sources":["../../../../../src/components/ui/navLink/defaultNavLinkLabelTheme.ts"],"sourcesContent":["import { ComponentTheme, defaultTypographyClassMappers } from \"../theme/common\";\nimport type { NavLinkLabelProps } from \"./NavLinkLabelProps\";\nimport type { NavLinkLabelTheme } from \"./NavLinkLabelTheme\";\nimport { NAV_LINK_LABEL_CATEGORIES } from \"./NavLinkLabelCategories\";\nimport { navLinkLabelDefaults } from \"./navLinkLabelDefaults\";\nimport { WidthClassMapper } from \"../theme/layout/widthClassMapper\";\nimport { OverflowClassMapper } from \"../theme/layout/overflowClassMapper\";\nimport { WhitespaceClassMapper } from \"../theme/layout/whitespaceClassMapper\";\
|
|
1
|
+
{"version":3,"file":"defaultNavLinkLabelTheme.mjs","sources":["../../../../../src/components/ui/navLink/defaultNavLinkLabelTheme.ts"],"sourcesContent":["import { ComponentTheme, defaultTypographyClassMappers } from \"../theme/common\";\nimport type { NavLinkLabelProps } from \"./NavLinkLabelProps\";\nimport type { NavLinkLabelTheme } from \"./NavLinkLabelTheme\";\nimport { NAV_LINK_LABEL_CATEGORIES } from \"./NavLinkLabelCategories\";\nimport { navLinkLabelDefaults } from \"./navLinkLabelDefaults\";\nimport { WidthClassMapper } from \"../theme/layout/widthClassMapper\";\nimport { OverflowClassMapper } from \"../theme/layout/overflowClassMapper\";\nimport { WhitespaceClassMapper } from \"../theme/layout/whitespaceClassMapper\";\n\nexport const defaultNavLinkLabelTheme = new ComponentTheme<NavLinkLabelProps, NavLinkLabelTheme>(\n \"span\",\n \"vane-nav-link-label min-w-0\",\n {\n layout: {\n overflow: new OverflowClassMapper(),\n whitespace: new WhitespaceClassMapper(),\n width: new WidthClassMapper(),\n },\n typography: {\n truncate: defaultTypographyClassMappers.truncate,\n },\n },\n navLinkLabelDefaults,\n NAV_LINK_LABEL_CATEGORIES,\n undefined,\n 'ui'\n);\n"],"names":[],"mappings":";;;;;;;;;;;AASO,MAAM,2BAA2B,IAAI,cAAA;AAAA,EAC1C,MAAA;AAAA,EACA,6BAAA;AAAA,EACA;AAAA,IACE,MAAA,EAAQ;AAAA,MACN,QAAA,EAAU,IAAI,mBAAA,EAAoB;AAAA,MAClC,UAAA,EAAY,IAAI,qBAAA,EAAsB;AAAA,MACtC,KAAA,EAAO,IAAI,gBAAA;AAAiB,KAC9B;AAAA,IACA,UAAA,EAAY;AAAA,MACV,UAAU,6BAAA,CAA8B;AAAA;AAC1C,GACF;AAAA,EACA,oBAAA;AAAA,EACA,yBAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navLinkLabelDefaults.mjs","sources":["../../../../../src/components/ui/navLink/navLinkLabelDefaults.ts"],"sourcesContent":["import type { NavLinkLabelProps } from \"./NavLinkLabelProps\";\n\n/** Default props for NavLink label sub-theme */\nexport const navLinkLabelDefaults: Partial<NavLinkLabelProps> = {\n truncate: true,\n
|
|
1
|
+
{"version":3,"file":"navLinkLabelDefaults.mjs","sources":["../../../../../src/components/ui/navLink/navLinkLabelDefaults.ts"],"sourcesContent":["import type { NavLinkLabelProps } from \"./NavLinkLabelProps\";\n\n/** Default props for NavLink label sub-theme */\nexport const navLinkLabelDefaults: Partial<NavLinkLabelProps> = {\n truncate: true,\n};\n"],"names":[],"mappings":"AAGO,MAAM,oBAAA,GAAmD;AAAA,EAC9D,QAAA,EAAU;AACZ;;;;"}
|
|
@@ -18,16 +18,16 @@ import { registerOverlay, isInOverlayFamily } from '../../utils/overlayStack.mjs
|
|
|
18
18
|
|
|
19
19
|
function getAnchorStyles(placement) {
|
|
20
20
|
const map = {
|
|
21
|
-
"top": { positionArea: "top
|
|
22
|
-
"bottom": { positionArea: "bottom
|
|
23
|
-
"left": { positionArea: "center left" },
|
|
21
|
+
"top": { positionArea: "top center" },
|
|
22
|
+
"bottom": { positionArea: "bottom center" },
|
|
23
|
+
"left": { positionArea: "center left", justifySelf: "end" },
|
|
24
24
|
"right": { positionArea: "center right" },
|
|
25
25
|
"top-start": { positionArea: "top span-right" },
|
|
26
|
-
"top-end": { positionArea: "top span-left" },
|
|
26
|
+
"top-end": { positionArea: "top span-left", justifySelf: "end" },
|
|
27
27
|
"bottom-start": { positionArea: "bottom span-right" },
|
|
28
|
-
"bottom-end": { positionArea: "bottom span-left" },
|
|
29
|
-
"left-start": { positionArea: "left span-bottom" },
|
|
30
|
-
"left-end": { positionArea: "left span-top", alignSelf: "end" },
|
|
28
|
+
"bottom-end": { positionArea: "bottom span-left", justifySelf: "end" },
|
|
29
|
+
"left-start": { positionArea: "left span-bottom", justifySelf: "end" },
|
|
30
|
+
"left-end": { positionArea: "left span-top", justifySelf: "end", alignSelf: "end" },
|
|
31
31
|
"right-start": { positionArea: "right span-bottom" },
|
|
32
32
|
"right-end": { positionArea: "right span-top", alignSelf: "end" }
|
|
33
33
|
};
|
|
@@ -224,7 +224,7 @@ const Popup = forwardRef(
|
|
|
224
224
|
const raf = requestAnimationFrame(() => {
|
|
225
225
|
const popup = popupRef.current;
|
|
226
226
|
if (!popup || popup.contains(document.activeElement)) return;
|
|
227
|
-
const focusable = getFocusableElements(popup)
|
|
227
|
+
const focusable = getFocusableElements(popup);
|
|
228
228
|
if (focusable.length > 0) {
|
|
229
229
|
focusable[0].focus();
|
|
230
230
|
} else {
|
|
@@ -357,7 +357,7 @@ const Popup = forwardRef(
|
|
|
357
357
|
const popupId = props.id || `popup-${anchorName}`;
|
|
358
358
|
const mergedProps = { ...props, id: popupId, role, ...modal ? { "aria-modal": true } : {}, ...anchorSelfProps(placement), ...isDetached ? { pointerEventsNone: true } : {} };
|
|
359
359
|
const compositeRoles = ["menu", "menubar", "listbox", "tree", "treegrid", "grid", "tablist", "radiogroup"];
|
|
360
|
-
const scrollTabIndex = role &&
|
|
360
|
+
const scrollTabIndex = role && compositeRoles.includes(role) ? void 0 : 0;
|
|
361
361
|
const content = /* @__PURE__ */ jsxs(
|
|
362
362
|
ThemedComponent,
|
|
363
363
|
{
|