UNPKG

style-dictionary-utils

Version:
25 lines (24 loc) 902 B
import { isFontFamilyFilter } from '../filter/isFontFamily.js'; import { getValue } from '../utilities/getValue.js'; const hasSpaceInName = (string) => /\s/g.test(string); export const fontFamilyValueTransformer = (value) => { // if the value is not an array, return it as is if (!Array.isArray(value)) return value; // if the value is an array, join it with commas return value.map((string) => (hasSpaceInName(string) ? `'${string}'` : string)).join(', '); }; /** * fontFamilyCss * @description if fontFamily is an array, join it with commas and wrap font names with spaces in quotes */ export const fontFamilyCss = { name: 'fontFamily/css', type: `value`, transitive: true, filter: (token) => isFontFamilyFilter(token), transform: (token) => { const tokenValue = getValue(token); return fontFamilyValueTransformer(tokenValue); }, };