{"version":3,"file":"index.mjs","sources":[""],"sourcesContent":["import \"./style.pcss\";\r\nimport type {\r\n  ReactElement,\r\n  FC,\r\n} from \"react\";\r\nimport {\r\n  useMemo,\r\n} from \"react\";\r\nimport type { IBreadcrumbs } from \"./config/types\";\r\nimport { BreadcrumbsContext } from \"./context\";\r\nimport { BreadcrumbsItem } from \"./ui/BreadcrumbsItem\";\r\nimport type { IComponentBaseProps } from \"../../types/components\";\r\nimport { useCN } from \"../../utils/react/useCN\";\r\n\r\n/**\r\n * Компонент хлебных крошек\r\n * @returns {ReactElement}\r\n */\r\nconst Breadcrumbs: FC<IBreadcrumbs & IComponentBaseProps> = ({\r\n  baseClass = \"breadcrumbs\",\r\n  extraClasses = {},\r\n  extraAttrs = {},\r\n  utilClasses = [],\r\n  items = [],\r\n}): ReactElement => {\r\n  const { getCN } = useCN(baseClass);\r\n  const ctxValue = useMemo(() => ({\n    getCN,\n  }), [ getCN ]);\n\r\n  return (\r\n    <BreadcrumbsContext value={ctxValue}>\r\n      <nav\r\n        className={getCN(\"\", extraClasses, utilClasses)}\r\n        {...extraAttrs}\r\n        aria-label={\"Breadcrumb\"}>\r\n        <ul\r\n          className={getCN(\"list\")}\r\n          itemScope\r\n          itemType={\"https://schema.org/BreadcrumbList\"}\r\n        >\r\n          {items.map((props, i) => {\r\n            return (\r\n              <BreadcrumbsItem\r\n                key={props.href}\r\n                position={i + 1}\r\n                isCurrent={items.length === i + 1}\r\n                {...props}\r\n              />\r\n            );\r\n          })}\r\n        </ul>\r\n      </nav>\r\n    </BreadcrumbsContext>\r\n  );\r\n};\r\n\r\nexport type {\r\n  IBreadcrumbs,\r\n};\r\n\r\nexport {\r\n  Breadcrumbs,\r\n};\r\n\r\n"],"names":["Breadcrumbs","baseClass","extraClasses","extraAttrs","utilClasses","items","getCN","useCN","ctxValue","useMemo","_jsx","BreadcrumbsContext","value","children","className","itemScope","itemType","map","props","i","BreadcrumbsItem","position","isCurrent","length","href"],"mappings":"uNAkBA,MAAMA,YAAsD,EAC1DC,oBAAY,cACZC,0BAAe,CAAA,EACfC,sBAAa,CAAA,EACbC,wBAAc,GACdC,YAAQ,OAER,MAAMC,MAAEA,OAAUC,MAAMN,WACxB,MAAMO,SAAWC,QAAQ,KAAA,CACvBH,cACE,CAAEA;AAEN,OACEI,IAACC,mBAAkB,CAACC,MAAOJ,SAASK,SAClCH,IAAA,MAAA,CACEI,UAAWR,MAAM,GAAIJ,aAAcE,gBAC/BD,WACJ,aAAY,aAAaU,SACzBH,IAAA,KAAA,CACEI,UAAWR,MAAM,QACjBS,UAAS,KACTC,SAAU,oCAAoCH,SAE7CR,MAAMY,IAAI,CAACC,MAAOC,IAEfT,IAACU,gBAAe,CAEdC,SAAUF,EAAI,EACdG,UAAWjB,MAAMkB,SAAWJ,EAAI,KAC5BD,OAHCA,MAAMM"}