{"version":3,"file":"fontSizeClassMapper.mjs","sources":["../../../../../../src/components/ui/theme/size/fontSizeClassMapper.ts"],"sourcesContent":["import { BaseClassMapper } from \"../common/BaseClassMapper\";\nimport type { CategoryProps, ResponsiveBreakpointClassKey } from \"../../props\";\n\n/* Font size via CSS vars (--fs, or breakpoint vars when responsive); inheritSize scales via --fs-em (--fs-ratio × 1em) relative to the typography ancestor — Code/Kbd override --fs-ratio to render smaller. */\nexport class FontSizeClassMapper extends BaseClassMapper implements Record<ResponsiveBreakpointClassKey, string> {\n  /** Base: apply font size using --fs (non-responsive) */\n  base: string = \"text-(length:--fs)\";\n  /** Desktop: apply font size using --fs-desktop */\n  desktop: string = \"text-(length:--fs-desktop)\";\n  /** Tablet: apply font size using --fs-tablet */\n  tablet: string = \"max-tablet:text-(length:--fs-tablet)\";\n  /** Mobile: apply font size using --fs-mobile */\n  mobile: string = \"max-mobile:text-(length:--fs-mobile)\";\n  /** Inherit: scale font-size relative to parent via --fs-ratio (default 1 = same as parent). */\n  inherit: string = \"text-(length:--fs-em)\";\n\n  getClasses(extractedKeys: CategoryProps): string[] {\n    // Responsive overrides inheritSize: responsive components have deliberate\n    // viewport-scaled size intent that should not be collapsed to inherited size.\n    if (extractedKeys?.responsiveSizing === 'responsiveSizing') {\n      return [this.desktop, this.tablet, this.mobile];\n    }\n    // inheritSize flag: cascade font-size from parent (decoupled from appearance)\n    if (extractedKeys?.inheritSize === 'inheritSize') {\n      return [this.inherit];\n    }\n    // Otherwise use simple --fs variable\n    return [this.base];\n  }\n}\n"],"names":[],"mappings":";;AAIO,MAAM,4BAA4B,eAAA,CAAwE;AAAA,EAA1G,WAAA,GAAA;AAAA,IAAA,KAAA,CAAA,GAAA,SAAA,CAAA;AAEL;AAAA,IAAA,IAAA,CAAA,IAAA,GAAe,oBAAA;AAEf;AAAA,IAAA,IAAA,CAAA,OAAA,GAAkB,4BAAA;AAElB;AAAA,IAAA,IAAA,CAAA,MAAA,GAAiB,sCAAA;AAEjB;AAAA,IAAA,IAAA,CAAA,MAAA,GAAiB,sCAAA;AAEjB;AAAA,IAAA,IAAA,CAAA,OAAA,GAAkB,uBAAA;AAAA,EAAA;AAAA,EAElB,WAAW,aAAA,EAAwC;AAGjD,IAAA,IAAI,aAAA,EAAe,qBAAqB,kBAAA,EAAoB;AAC1D,MAAA,OAAO,CAAC,IAAA,CAAK,OAAA,EAAS,IAAA,CAAK,MAAA,EAAQ,KAAK,MAAM,CAAA;AAAA,IAChD;AAEA,IAAA,IAAI,aAAA,EAAe,gBAAgB,aAAA,EAAe;AAChD,MAAA,OAAO,CAAC,KAAK,OAAO,CAAA;AAAA,IACtB;AAEA,IAAA,OAAO,CAAC,KAAK,IAAI,CAAA;AAAA,EACnB;AACF;;;;"}