{"version":3,"file":"gapClassMapper.mjs","sources":["../../../../../../src/components/ui/theme/size/gapClassMapper.ts"],"sourcesContent":["import { BaseClassMapper } from \"../common/BaseClassMapper\";\nimport type { CategoryProps, ResponsiveBreakpointClassKey } from \"../../props\";\n\n/**\n * Gap theme - applies gap using CSS variables.\n * Uses breakpoint-specific variables when responsive=true, otherwise uses simple --gap variable.\n */\nexport class GapClassMapper extends BaseClassMapper implements Record<ResponsiveBreakpointClassKey, string> {\n  /** Base: apply gap using --gap (non-responsive) */\n  base: string = \"gap-(--gap)\";\n  /** Desktop: apply gap using --gap-desktop */\n  desktop: string = \"gap-(--gap-desktop)\";\n  /** Tablet: apply gap using --gap-tablet */\n  tablet: string = \"max-tablet:gap-(--gap-tablet)\";\n  /** Mobile: apply gap using --gap-mobile */\n  mobile: string = \"max-mobile:gap-(--gap-mobile)\";\n\n  getClasses(extractedKeys: CategoryProps): string[] {\n    if (extractedKeys?.gap === 'gap') {\n      // Use breakpoint-specific classes if responsive=true\n      if (extractedKeys?.responsiveSizing === 'responsiveSizing') {\n        return [this.desktop, this.tablet, this.mobile];\n      }\n      // Otherwise use simple --gap variable\n      return [this.base];\n    }\n    return [];\n  }\n}\n"],"names":[],"mappings":";;AAOO,MAAM,uBAAuB,eAAA,CAAwE;AAAA,EAArG,WAAA,GAAA;AAAA,IAAA,KAAA,CAAA,GAAA,SAAA,CAAA;AAEL;AAAA,IAAA,IAAA,CAAA,IAAA,GAAe,aAAA;AAEf;AAAA,IAAA,IAAA,CAAA,OAAA,GAAkB,qBAAA;AAElB;AAAA,IAAA,IAAA,CAAA,MAAA,GAAiB,+BAAA;AAEjB;AAAA,IAAA,IAAA,CAAA,MAAA,GAAiB,+BAAA;AAAA,EAAA;AAAA,EAEjB,WAAW,aAAA,EAAwC;AACjD,IAAA,IAAI,aAAA,EAAe,QAAQ,KAAA,EAAO;AAEhC,MAAA,IAAI,aAAA,EAAe,qBAAqB,kBAAA,EAAoB;AAC1D,QAAA,OAAO,CAAC,IAAA,CAAK,OAAA,EAAS,IAAA,CAAK,MAAA,EAAQ,KAAK,MAAM,CAAA;AAAA,MAChD;AAEA,MAAA,OAAO,CAAC,KAAK,IAAI,CAAA;AAAA,IACnB;AACA,IAAA,OAAO,EAAC;AAAA,EACV;AACF;;;;"}