All files / Select cssHelpers.js

85.71% Statements 12/14
50% Branches 3/6
80% Functions 4/5
85.71% Lines 12/14
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 261x   1x 19x 99x 99x 99x             1x 1x 25x 25x 25x       1x        
import variables from './cssVariables';
 
export const autoCssGenerator = (prefix) => {
  return (property, pseudoClass) => {
    const suffix = pseudoClass ? `--${pseudoClass}` : '';
    const varname = `${prefix}__${property}${suffix}`;
    return `
      ${property}: ${variables[varname]};
      ${property}: var(--styled-${varname}, ${variables[varname]});
    `;
  };
}
 
export const cssVar = (prefix) => {
  return (property, pseudoClass) => {
    const suffix = pseudoClass ? `--${pseudoClass}` : '';
    const varname = `${prefix}__${property}${suffix}`;
    return variables[varname];
  };
}
 
export const globalCssVar = (property, pseudoClass) => {
  const suffix = pseudoClass ? `--${pseudoClass}` : '';
  return variables[`select__${property}${suffix}`];
}