{"version":3,"file":"AppNaviCustomTag.cjs","sources":["../../../src/components/AppNavi/AppNaviCustomTag.tsx"],"sourcesContent":["import { type ComponentType, type FC, type PropsWithChildren, useMemo } from 'react'\nimport { tv } from 'tailwind-variants'\n\nimport { itemClassNameGenerator } from './itemClassNameGenerator'\n\nimport type { ComponentProps as IconProps } from '../Icon'\n\nexport type AppNaviCustomTagProps = PropsWithChildren<{\n  /** このボタンのカスタムタグ */\n  tag: ComponentType<any>\n  /** 表示するアイコンタイプ */\n  icon?: ComponentType<IconProps>\n  /** アクティブ状態であるかどうか */\n  current?: boolean\n}> & { [key: string]: any }\n\nconst classNameGenerator = tv({\n  extend: itemClassNameGenerator,\n  slots: {\n    wrapper: 'smarthr-ui-AppNavi-customTag',\n  },\n})\n\nexport const AppNaviCustomTag: FC<AppNaviCustomTagProps> = ({\n  children,\n  tag: Tag,\n  icon: Icon,\n  current,\n  ...rest\n}) => {\n  const classNames = useMemo(() => {\n    const { wrapper, icon } = classNameGenerator({ active: current })\n\n    return {\n      wrapper: wrapper(),\n      icon: icon(),\n    }\n  }, [current])\n\n  return (\n    <Tag {...rest} aria-current={current ? 'page' : undefined} className={classNames.wrapper}>\n      {Icon && <Icon className={classNames.icon} />}\n      {children}\n    </Tag>\n  )\n}\n"],"names":["tv","itemClassNameGenerator","useMemo","_jsxs","_jsx"],"mappings":";;;;;;;AAgBA,MAAM,kBAAkB,GAAGA,QAAE,CAAC;AAC5B,IAAA,MAAM,EAAEC,gEAAsB;AAC9B,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,8BAA8B;AACxC,KAAA;AACF,CAAA,CAAC;MAEW,gBAAgB,GAA8B,CAAC,EAC1D,QAAQ,EACR,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,OAAO,EACP,GAAG,IAAI,EACR,KAAI;AACH,IAAA,MAAM,UAAU,GAAGC,aAAO,CAAC,MAAK;AAC9B,QAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,kBAAkB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QAEjE,OAAO;YACL,OAAO,EAAE,OAAO,EAAE;YAClB,IAAI,EAAE,IAAI,EAAE;SACb;AACH,IAAA,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAEb,IAAA,QACEC,eAAA,CAAC,GAAG,EAAA,EAAA,GAAK,IAAI,kBAAgB,OAAO,GAAG,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,OAAO,EAAA,QAAA,EAAA,CACrF,IAAI,IAAIC,cAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAE,UAAU,CAAC,IAAI,EAAA,CAAI,EAC5C,QAAQ,CAAA,EAAA,CACL;AAEV;;;;"}