{"version":3,"file":"letterSpacingClassMapper.cjs","sources":["../../../../../../src/components/ui/theme/typography/letterSpacingClassMapper.ts"],"sourcesContent":["import { BaseClassMapper } from \"../common/BaseClassMapper\";\nimport type { CategoryProps, LetterSpacingKey } from \"../../props\";\n\n/**\n * LetterSpacingClassMapper handles letter-spacing/tracking for typography\n * components. Mirrors LineHeightClassMapper: emits the consumer class\n * `tracking-(--ls)` by default, where --ls is set per-component in rules.css.\n * When inheritSize is active (and not overridden by responsive), emits\n * `tracking-[inherit]` so letter-spacing cascades from the parent.\n */\nexport class LetterSpacingClassMapper extends BaseClassMapper implements Record<LetterSpacingKey, string> {\n  /** Tighter letter spacing (-0.05em) */\n  trackingTighter: string = \"tracking-tighter\";\n  /** Tight letter spacing (-0.025em) */\n  trackingTight: string = \"tracking-tight\";\n  /** Normal letter spacing (0) */\n  trackingNormal: string = \"tracking-normal\";\n  /** Wide letter spacing (0.025em) */\n  trackingWide: string = \"tracking-wide\";\n  /** Wider letter spacing (0.05em) */\n  trackingWider: string = \"tracking-wider\";\n  /** Widest letter spacing (0.1em) */\n  trackingWidest: string = \"tracking-widest\";\n\n  /** Default consumer class — reads --ls set by component CSS rules. */\n  defaultLetterSpacing: string = \"tracking-(--ls)\";\n  /** Cascade letter-spacing from nearest typography ancestor. */\n  inherit: string = \"tracking-[inherit]\";\n\n  getClasses(extractedKeys: CategoryProps): string[] {\n    const letterSpacingValue = extractedKeys?.letterSpacing;\n\n    if (letterSpacingValue && letterSpacingValue in this) {\n      return [this[letterSpacingValue as LetterSpacingKey]];\n    }\n\n    if (extractedKeys?.inheritSize === 'inheritSize' && extractedKeys?.responsiveSizing !== 'responsiveSizing') {\n      return [this.inherit];\n    }\n\n    return [this.defaultLetterSpacing];\n  }\n}\n"],"names":["BaseClassMapper"],"mappings":";;;;AAUO,MAAM,iCAAiCA,+BAAA,CAA4D;AAAA,EAAnG,WAAA,GAAA;AAAA,IAAA,KAAA,CAAA,GAAA,SAAA,CAAA;AAEL;AAAA,IAAA,IAAA,CAAA,eAAA,GAA0B,kBAAA;AAE1B;AAAA,IAAA,IAAA,CAAA,aAAA,GAAwB,gBAAA;AAExB;AAAA,IAAA,IAAA,CAAA,cAAA,GAAyB,iBAAA;AAEzB;AAAA,IAAA,IAAA,CAAA,YAAA,GAAuB,eAAA;AAEvB;AAAA,IAAA,IAAA,CAAA,aAAA,GAAwB,gBAAA;AAExB;AAAA,IAAA,IAAA,CAAA,cAAA,GAAyB,iBAAA;AAGzB;AAAA,IAAA,IAAA,CAAA,oBAAA,GAA+B,iBAAA;AAE/B;AAAA,IAAA,IAAA,CAAA,OAAA,GAAkB,oBAAA;AAAA,EAAA;AAAA,EAElB,WAAW,aAAA,EAAwC;AACjD,IAAA,MAAM,qBAAqB,aAAA,EAAe,aAAA;AAE1C,IAAA,IAAI,kBAAA,IAAsB,sBAAsB,IAAA,EAAM;AACpD,MAAA,OAAO,CAAC,IAAA,CAAK,kBAAsC,CAAC,CAAA;AAAA,IACtD;AAEA,IAAA,IAAI,aAAA,EAAe,WAAA,KAAgB,aAAA,IAAiB,aAAA,EAAe,qBAAqB,kBAAA,EAAoB;AAC1G,MAAA,OAAO,CAAC,KAAK,OAAO,CAAA;AAAA,IACtB;AAEA,IAAA,OAAO,CAAC,KAAK,oBAAoB,CAAA;AAAA,EACnC;AACF;;;;"}