diegohaz/styled-tools

unable to interpolate ${prop('__')}

Tycholiz opened this issue · 1 comments

Trying to make an Icon component a little more modular by allowing a prop for palette level to be passed. Here is the original:

  color: ${ifProp('palette', palette({ grayscale: 0 }, 3), 'currentcolor')};

and here is what I am trying to change it to:

  color: ${ifProp('palette', palette({ grayscale: 0 }, **prop('paletteLevel')**), 'currentcolor')};

however this doesn't work for me. Should the function prop('paletteLevel') not evaluate to the prop I pass in (2 in this case)?

Hi @Tycholiz! Palette currently doesn't support passion tone/defaultValue as functions (the function returned by prop for example). But I'd accept a PR adding that.

Just make sure you're using styled-tools (your code example seems to use styled-theme, and the API is slightly different).