import { DEFAULT_FONT_SIZE, DEFAULT_FONT_WEIGHT, DEFAULT_LETTER_SPACING, DEFAULT_LINE_HEIGHT, FONT_SIZE_STEP, FONT_WEIGHT_STEP, LETTER_SPACING_STEP, LINE_HEIGHT_STEP, MAX_FONT_SIZE, MAX_FONT_WEIGHT, MAX_LETTER_SPACING, MAX_LINE_HEIGHT, MIN_FONT_SIZE, MIN_FONT_WEIGHT, MIN_LETTER_SPACING, MIN_LINE_HEIGHT, } from '$entities/Font'; import type { ControlId, ControlModel, } from '../types/typography'; /** * Responsive font-size scaling factors applied by typographySettingsStore. */ export const MULTIPLIER_S = 0.5; export const MULTIPLIER_M = 0.75; export const MULTIPLIER_L = 1; /** * Default control definitions seeding the typography settings store. * Composed from the font-render ranges/defaults owned by the Font entity. */ export const DEFAULT_TYPOGRAPHY_CONTROLS_DATA: ControlModel[] = [ { id: 'font_size', value: DEFAULT_FONT_SIZE, max: MAX_FONT_SIZE, min: MIN_FONT_SIZE, step: FONT_SIZE_STEP, increaseLabel: 'Increase Font Size', decreaseLabel: 'Decrease Font Size', controlLabel: 'Size', }, { id: 'font_weight', value: DEFAULT_FONT_WEIGHT, max: MAX_FONT_WEIGHT, min: MIN_FONT_WEIGHT, step: FONT_WEIGHT_STEP, increaseLabel: 'Increase Font Weight', decreaseLabel: 'Decrease Font Weight', controlLabel: 'Weight', }, { id: 'line_height', value: DEFAULT_LINE_HEIGHT, max: MAX_LINE_HEIGHT, min: MIN_LINE_HEIGHT, step: LINE_HEIGHT_STEP, increaseLabel: 'Increase Line Height', decreaseLabel: 'Decrease Line Height', controlLabel: 'Leading', }, { id: 'letter_spacing', value: DEFAULT_LETTER_SPACING, max: MAX_LETTER_SPACING, min: MIN_LETTER_SPACING, step: LETTER_SPACING_STEP, increaseLabel: 'Increase Letter Spacing', decreaseLabel: 'Decrease Letter Spacing', controlLabel: 'Tracking', }, ];