@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
33 lines • 1.19 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useStyles = void 0;
const styled_components_1 = require("styled-components");
const mergeObjects_1 = require("../../utils/mergeObjects/mergeObjects");
const structuredClone_1 = require("../../utils/structuredClone/structuredClone");
/**
* @version This hook has a upper version, please use useStylesV2
*/
const useStyles = (styleName, typeName, customTokens) => {
const theme = (0, styled_components_1.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 = (0, mergeObjects_1.mergeObjects)((0, structuredClone_1.structuredClone)(style[typeName]), customTokens);
}
else {
styles = style[typeName];
}
}
else {
throw Error(`type ${typeName} does not exist`);
}
}
return styles;
};
exports.useStyles = useStyles;
//# sourceMappingURL=useStyles.js.map