@primer/primitives
Version:
Typography, spacing, and color primitives for Primer design system
6 lines (5 loc) • 404 B
JavaScript
import { z } from 'zod';
import { schemaErrorMessage } from '../utilities/index.js';
export const tokenName = z.string().refine(name => /(^[a-z0-9][A-Za-z0-9-]*$|^@$)/.test(name), name => ({
message: schemaErrorMessage(`Invalid token name: "${name}"`, 'Token name must be kebab-case or camelCase, and start with a lowercase letter or number and consist only of letters, numbers, and hyphens.'),
}));