@coveord/plasma-mantine
Version:
A Plasma flavoured Mantine theme
79 lines (78 loc) • 3.19 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { ActionIcon as MantineActionIcon, polymorphicFactory } from '@mantine/core';
import { useClickWithLoading } from '../../hooks/useClickWithLoading.js';
import { ButtonWithDisabledTooltip } from '../Button/ButtonWithDisabledTooltip.js';
export const ActionIcon = polymorphicFactory(({ disabledTooltip, disabled, disabledTooltipProps, loading, onClick, ...others }, ref)=>{
const { isLoading, handleClick } = useClickWithLoading(onClick);
return /*#__PURE__*/ _jsx(ButtonWithDisabledTooltip, {
disabled: disabled,
disabledTooltip: disabledTooltip,
disabledTooltipProps: disabledTooltipProps,
fullWidth: others.fullWidth,
children: /*#__PURE__*/ _jsx(MantineActionIcon, {
loaderProps: {
type: 'oval'
},
ref: ref,
loading: isLoading || loading,
onClick: handleClick,
disabled: disabled,
...others
})
});
});
const ActionIconPrimary = ActionIcon.withProps({
variant: 'filled'
});
const ActionIconSecondary = ActionIcon.withProps({
variant: 'light',
color: 'var(--coveo-color-text-primary)'
});
const ActionIconTertiary = ActionIcon.withProps({
variant: 'default',
color: 'var(--coveo-color-text-primary)'
});
const ActionIconQuaternary = ActionIcon.withProps({
variant: 'subtle',
color: 'var(--coveo-color-text-primary)'
});
const ActionIconDestructive = ActionIcon.withProps({
variant: 'filled',
color: 'var(--mantine-color-error)'
});
const ActionIconDestructiveSecondary = ActionIcon.withProps({
variant: 'light',
color: 'var(--mantine-color-error)'
});
const ActionIconDestructiveTertiary = ActionIcon.withProps({
variant: 'default',
vars: ()=>({
root: {
'--ai-color': 'var(--mantine-color-error)'
}
})
});
const ActionIconDestructiveQuaternary = ActionIcon.withProps({
variant: 'subtle',
color: 'var(--mantine-color-error)'
});
ActionIcon.Group = MantineActionIcon.Group;
ActionIcon.Primary = ActionIconPrimary;
ActionIcon.Secondary = ActionIconSecondary;
ActionIcon.Tertiary = ActionIconTertiary;
ActionIcon.Quaternary = ActionIconQuaternary;
ActionIcon.DestructivePrimary = ActionIconDestructive;
ActionIcon.DestructiveSecondary = ActionIconDestructiveSecondary;
ActionIcon.DestructiveTertiary = ActionIconDestructiveTertiary;
ActionIcon.DestructiveQuaternary = ActionIconDestructiveQuaternary;
ActionIcon.displayName = 'ActionIcon';
ActionIcon.Group.displayName = 'ActionIcon.Group';
ActionIconPrimary.displayName = 'ActionIcon.Primary';
ActionIconSecondary.displayName = 'ActionIcon.Secondary';
ActionIconTertiary.displayName = 'ActionIcon.Tertiary';
ActionIconQuaternary.displayName = 'ActionIcon.Quaternary';
ActionIconDestructive.displayName = 'ActionIcon.DestructivePrimary';
ActionIconDestructiveSecondary.displayName = 'ActionIcon.DestructiveSecondary';
ActionIconDestructiveTertiary.displayName = 'ActionIcon.DestructiveTertiary';
ActionIconDestructiveQuaternary.displayName = 'ActionIcon.DestructiveQuaternary';
//# sourceMappingURL=ActionIcon.js.map