{"version":3,"sources":["../src/components/BreadcrumbMenu/BreadcrumbMenu.tsx"],"sourcesContent":["import { Menu, MenuContent, MenuItem } from '../Menu/Menu';\nimport { useNavigate } from 'react-router-dom';\nimport { type BreadcrumbItem } from './breadcrumbStore';\n\n/**\n * Props do componente BreadcrumbMenu\n */\nexport interface BreadcrumbMenuProps {\n  /** Lista de breadcrumbs a serem exibidos */\n  breadcrumbs: BreadcrumbItem[];\n  /** Callback quando um breadcrumb é clicado */\n  onBreadcrumbClick?: (breadcrumb: BreadcrumbItem, index: number) => void;\n  /** Classes CSS adicionais */\n  className?: string;\n}\n\n/**\n * Componente reutilizável para renderizar um menu de breadcrumbs\n *\n * @example\n * ```tsx\n * <BreadcrumbMenu\n *   breadcrumbs={breadcrumbs}\n *   onBreadcrumbClick={(breadcrumb, index) => {\n *     console.log('Clicked:', breadcrumb, 'at index:', index);\n *   }}\n * />\n * ```\n */\nexport const BreadcrumbMenu = ({\n  breadcrumbs,\n  onBreadcrumbClick,\n  className = '!px-0 py-4 flex-wrap w-full',\n}: BreadcrumbMenuProps) => {\n  const navigate = useNavigate();\n\n  const handleClick = (breadcrumb: BreadcrumbItem, index: number) => {\n    if (onBreadcrumbClick) {\n      onBreadcrumbClick(breadcrumb, index);\n    }\n    navigate(breadcrumb.url);\n  };\n\n  return (\n    <Menu\n      value={`breadcrumb-${breadcrumbs.length - 1}`}\n      defaultValue=\"breadcrumb-0\"\n      variant=\"breadcrumb\"\n      className={className}\n    >\n      <MenuContent className=\"w-full flex flex-row flex-wrap gap-2 !px-0\">\n        {breadcrumbs.map((breadcrumb, index) => {\n          const isLast = index === breadcrumbs.length - 1;\n          const hasSeparator = !isLast;\n\n          return (\n            <MenuItem\n              key={breadcrumb.id}\n              variant=\"breadcrumb\"\n              value={`breadcrumb-${index}`}\n              className=\"!p-0 whitespace-nowrap\"\n              onClick={() => handleClick(breadcrumb, index)}\n              separator={hasSeparator}\n            >\n              {breadcrumb.name}\n            </MenuItem>\n          );\n        })}\n      </MenuContent>\n    </Menu>\n  );\n};\n"],"mappings":";;;;;;;AACA,SAAS,mBAAmB;AAuDhB;AA3BL,IAAM,iBAAiB,CAAC;AAAA,EAC7B;AAAA,EACA;AAAA,EACA,YAAY;AACd,MAA2B;AACzB,QAAM,WAAW,YAAY;AAE7B,QAAM,cAAc,CAAC,YAA4B,UAAkB;AACjE,QAAI,mBAAmB;AACrB,wBAAkB,YAAY,KAAK;AAAA,IACrC;AACA,aAAS,WAAW,GAAG;AAAA,EACzB;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAO,cAAc,YAAY,SAAS,CAAC;AAAA,MAC3C,cAAa;AAAA,MACb,SAAQ;AAAA,MACR;AAAA,MAEA,8BAAC,eAAY,WAAU,8CACpB,sBAAY,IAAI,CAAC,YAAY,UAAU;AACtC,cAAM,SAAS,UAAU,YAAY,SAAS;AAC9C,cAAM,eAAe,CAAC;AAEtB,eACE;AAAA,UAAC;AAAA;AAAA,YAEC,SAAQ;AAAA,YACR,OAAO,cAAc,KAAK;AAAA,YAC1B,WAAU;AAAA,YACV,SAAS,MAAM,YAAY,YAAY,KAAK;AAAA,YAC5C,WAAW;AAAA,YAEV,qBAAW;AAAA;AAAA,UAPP,WAAW;AAAA,QAQlB;AAAA,MAEJ,CAAC,GACH;AAAA;AAAA,EACF;AAEJ;","names":[]}