{"version":3,"file":"StepCounter.cjs","sources":["../../../src/components/Stepper/StepCounter.tsx"],"sourcesContent":["import { type FC, useMemo } from 'react'\nimport { tv } from 'tailwind-variants'\n\nimport { StepStatusIcon } from './StepStatusIcon'\n\nimport type { Step } from './types'\n\nconst classNameGenerator = tv({\n  slots: {\n    // StatusIcon の位置基準となる wrapper\n    wrapper: 'shr-relative shr-inline-block',\n    counter:\n      'shr-border-shorthand shr-inline-flex shr-h-[2em] shr-w-[2em] shr-items-center shr-justify-center shr-rounded-full shr-bg-white shr-tabular-nums',\n    statusIcon: 'shr-absolute -shr-left-[0.625em] -shr-top-[0.75em]',\n  },\n  variants: {\n    status: {\n      completed: { counter: 'shr-border-main' },\n      closed: { counter: 'shr-border-grey' },\n    },\n    current: {\n      true: {\n        counter: [\n          'shr-border-main shr-bg-main shr-font-bold shr-text-white',\n          'forced-colors:shr-border-[Mark] forced-colors:shr-bg-[Mark]',\n        ],\n      },\n      false: {},\n    },\n  },\n})\n\ntype Props = Pick<Step, 'status'> & {\n  stepNumber?: number\n  current: boolean\n}\n\nexport const StepCounter: FC<Props> = ({ status, current, stepNumber }) => {\n  const classNames = useMemo(() => {\n    const { wrapper, counter, statusIcon } = classNameGenerator({\n      status: typeof status === 'object' ? status.type : status,\n      current,\n    })\n\n    return {\n      wrapper: wrapper(),\n      counter: counter(),\n      statusIcon: statusIcon(),\n    }\n  }, [status, current])\n\n  return (\n    <span className={classNames.wrapper}>\n      <span className={classNames.counter} aria-hidden>\n        {stepNumber}\n      </span>\n      <StepStatusIcon status={status} className={classNames.statusIcon} />\n    </span>\n  )\n}\n"],"names":["tv","useMemo","_jsxs","_jsx","StepStatusIcon"],"mappings":";;;;;;;AAOA,MAAM,kBAAkB,GAAGA,QAAE,CAAC;AAC5B,IAAA,KAAK,EAAE;;AAEL,QAAA,OAAO,EAAE,+BAA+B;AACxC,QAAA,OAAO,EACL,iJAAiJ;AACnJ,QAAA,UAAU,EAAE,oDAAoD;AACjE,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,MAAM,EAAE;AACN,YAAA,SAAS,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE;AACzC,YAAA,MAAM,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE;AACvC,SAAA;AACD,QAAA,OAAO,EAAE;AACP,YAAA,IAAI,EAAE;AACJ,gBAAA,OAAO,EAAE;oBACP,0DAA0D;oBAC1D,6DAA6D;AAC9D,iBAAA;AACF,aAAA;AACD,YAAA,KAAK,EAAE,EAAE;AACV,SAAA;AACF,KAAA;AACF,CAAA,CAAC;AAOK,MAAM,WAAW,GAAc,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAI;AACxE,IAAA,MAAM,UAAU,GAAGC,aAAO,CAAC,MAAK;QAC9B,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC;AAC1D,YAAA,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ,GAAG,MAAM,CAAC,IAAI,GAAG,MAAM;YACzD,OAAO;AACR,SAAA,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,OAAO,EAAE;YAClB,OAAO,EAAE,OAAO,EAAE;YAClB,UAAU,EAAE,UAAU,EAAE;SACzB;AACH,IAAA,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAErB,IAAA,QACEC,eAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,UAAU,CAAC,OAAO,EAAA,QAAA,EAAA,CACjCC,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,UAAU,CAAC,OAAO,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAChC,UAAU,EAAA,CACN,EACPA,cAAA,CAACC,gDAAc,EAAA,EAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,UAAU,EAAA,CAAI,CAAA,EAAA,CAC/D;AAEX;;;;"}