Skip to content

Commit

Permalink
support multiple shadows
Browse files Browse the repository at this point in the history
  • Loading branch information
douglaszaltron authored Mar 20, 2024
1 parent f94e015 commit 0f270ba
Showing 1 changed file with 18 additions and 5 deletions.
23 changes: 18 additions & 5 deletions src/transformer/shadow-css.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,27 @@ type TokenShadow = {
spread: string
}


const formatShadow = ({
offsetX = '0',
offsetY = '0',
blur = '0',
spread = '0',
color,
}: TokenShadow ): string => `${offsetX} ${offsetY} ${blur} ${spread} ${color}`;

export const shadowCss: StyleDictionary.Transform = {
type: `value`,
transitive: true,
matcher: isShadow,
transformer: ({ value }: { value: string | TokenShadow }) =>
typeof value === 'string'
? value
: `${value.offsetX || 0} ${value.offsetY || 0} ${value.blur || 0} ${value.spread || 0} ${value.color}`,
transformer: ({ value }: { value: string | TokenShadow }) => {
if (Array.isArray(value)) {
return value.map(formatShadow).join(', ');
}

if (typeof value === 'string') {
return value;
}

return formatShadow(value);
},
}

0 comments on commit 0f270ba

Please sign in to comment.