@schematichq/schematic-icons
Version:
React component library for Schematic's icon system with TypeScript support
27 lines (23 loc) • 854 B
JavaScript
export function generateTypeDefinitions(codepoints) {
const iconNames = Object.keys(codepoints);
const unionType = iconNames.map((name) => `'${name}'`).join(" | ");
const iconMapEntries = Object.entries(codepoints)
.map(([name, code]) => ` '${name}': ${code}`)
.join(",\n");
return `// This file is auto-generated. Do not edit manually.
export type IconNames = ${unionType};
export const iconsList = {
${iconMapEntries}
} as const;
export const FONT_FACE_RULE = \`@font-face {
font-family: "schematic-icons";
src: url(data:font/truetype;charset=utf-8;base64,{{assets.ttf}}) format("truetype");
}\`;
`;
}
export function generateFontFaceRule(base64FontData) {
return `@font-face {
font-family: "schematic-icons";
src: url(data:font/truetype;charset=utf-8;base64,${base64FontData}) format("truetype");
}`;
}