@kubit-ui-web/react-components
Version:
Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience
29 lines • 970 B
JavaScript
import { useTheme } from 'styled-components';
import { mergeObjects } from '../../utils/mergeObjects/mergeObjects';
import { structuredClone } from '../../utils/structuredClone/structuredClone';
/**
* @version This hook has a upper version, please use useStylesV2
*/
export const useStyles = (styleName, typeName, customTokens) => {
const theme = useTheme();
const style = theme[styleName];
let styles = style;
if (!style) {
throw Error(`styles ${styleName} does not exist`);
}
if (styleName !== undefined && typeName !== undefined) {
if (style?.[typeName]) {
if (customTokens) {
styles = mergeObjects(structuredClone(style[typeName]), customTokens);
}
else {
styles = style[typeName];
}
}
else {
throw Error(`type ${typeName} does not exist`);
}
}
return styles;
};
//# sourceMappingURL=useStyles.js.map