{"version":3,"sources":["../../registry/new-york/ui/breadcrumb.tsx","../../../../node_modules/.pnpm/@radix-ui+react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/src/ChevronRightIcon.tsx","../../../../node_modules/.pnpm/@radix-ui+react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/src/DotsHorizontalIcon.tsx","../../../../node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/extends.js","../../../../node_modules/.pnpm/@radix-ui+react-compose-refs@1.0.1_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-compose-refs/dist/packages/react/compose-refs/src/composeRefs.tsx","../../../../node_modules/.pnpm/@radix-ui+react-slot@1.0.2_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-slot/dist/packages/react/slot/src/Slot.tsx","../../lib/utils.ts"],"names":["breadcrumb_exports","__export","Breadcrumb","BreadcrumbEllipsis","BreadcrumbItem","BreadcrumbLink","BreadcrumbList","BreadcrumbPage","BreadcrumbSeparator","__toCommonJS","React","ChevronRightIcon","_ref","forwardedRef","color","_ref$color","props","width","height","viewBox","fill","xmlns","ref","d","fillRule","clipRule","DotsHorizontalIcon","_extends","target","i","source","key","setRef","value","current","composeRefs","refs","node","forEach","Slot","children","slotProps","childrenArray","toArray","slottable","find","isSlottable","newElement","newChildren","map","child","count","only","$9IrjX$createElement","$5e63c961fc1ce211$var$SlotClone","undefined","displayName","SlotClone","mergeProps","Slottable","$9IrjX$Fragment","type","childProps","overrideProps","propName","slotPropValue","childPropValue","test","args","filter","Boolean","join","import_clsx","import_tailwind_merge","cn","inputs","import_jsx_runtime","className","asChild","$5e63c961fc1ce211$export$8c6ed5c666ac1360"],"mappings":"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","sourcesContent":["import * as React from \"react\"\nimport { ChevronRightIcon, DotsHorizontalIcon } from \"@radix-ui/react-icons\"\nimport { Slot } from \"@radix-ui/react-slot\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst Breadcrumb = React.forwardRef<\n  HTMLElement,\n  React.ComponentPropsWithoutRef<\"nav\"> & {\n    separator?: React.ReactNode\n  }\n>(({ ...props }, ref) => <nav ref={ref} aria-label=\"breadcrumb\" {...props} />)\nBreadcrumb.displayName = \"Breadcrumb\"\n\nconst BreadcrumbList = React.forwardRef<\n  HTMLOListElement,\n  React.ComponentPropsWithoutRef<\"ol\">\n>(({ className, ...props }, ref) => (\n  <ol\n    ref={ref}\n    className={cn(\n      \"flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5\",\n      className\n    )}\n    {...props}\n  />\n))\nBreadcrumbList.displayName = \"BreadcrumbList\"\n\nconst BreadcrumbItem = React.forwardRef<\n  HTMLLIElement,\n  React.ComponentPropsWithoutRef<\"li\">\n>(({ className, ...props }, ref) => (\n  <li\n    ref={ref}\n    className={cn(\"inline-flex items-center gap-1.5\", className)}\n    {...props}\n  />\n))\nBreadcrumbItem.displayName = \"BreadcrumbItem\"\n\nconst BreadcrumbLink = React.forwardRef<\n  HTMLAnchorElement,\n  React.ComponentPropsWithoutRef<\"a\"> & {\n    asChild?: boolean\n  }\n>(({ asChild, className, ...props }, ref) => {\n  const Comp = asChild ? Slot : \"a\"\n\n  return (\n    <Comp\n      ref={ref}\n      className={cn(\"transition-colors hover:text-foreground\", className)}\n      {...props}\n    />\n  )\n})\nBreadcrumbLink.displayName = \"BreadcrumbLink\"\n\nconst BreadcrumbPage = React.forwardRef<\n  HTMLSpanElement,\n  React.ComponentPropsWithoutRef<\"span\">\n>(({ className, ...props }, ref) => (\n  <span\n    ref={ref}\n    role=\"link\"\n    aria-disabled=\"true\"\n    aria-current=\"page\"\n    className={cn(\"font-normal text-foreground\", className)}\n    {...props}\n  />\n))\nBreadcrumbPage.displayName = \"BreadcrumbPage\"\n\nconst BreadcrumbSeparator = ({\n  children,\n  className,\n  ...props\n}: React.ComponentProps<\"li\">) => (\n  <li\n    role=\"presentation\"\n    aria-hidden=\"true\"\n    className={cn(\"[&>svg]:size-3.5\", className)}\n    {...props}\n  >\n    {children ?? <ChevronRightIcon />}\n  </li>\n)\nBreadcrumbSeparator.displayName = \"BreadcrumbSeparator\"\n\nconst BreadcrumbEllipsis = ({\n  className,\n  ...props\n}: React.ComponentProps<\"span\">) => (\n  <span\n    role=\"presentation\"\n    aria-hidden=\"true\"\n    className={cn(\"flex h-9 w-9 items-center justify-center\", className)}\n    {...props}\n  >\n    <DotsHorizontalIcon className=\"h-4 w-4\" />\n    <span className=\"sr-only\">More</span>\n  </span>\n)\nBreadcrumbEllipsis.displayName = \"BreadcrumbElipssis\"\n\nexport {\n  Breadcrumb,\n  BreadcrumbList,\n  BreadcrumbItem,\n  BreadcrumbLink,\n  BreadcrumbPage,\n  BreadcrumbSeparator,\n  BreadcrumbEllipsis,\n}\n","import * as React from 'react';\nimport { IconProps } from './types';\n\nexport const ChevronRightIcon = React.forwardRef<SVGSVGElement, IconProps>(\n  ({ color = 'currentColor', ...props }, forwardedRef) => {\n    return (\n      <svg\n        width=\"15\"\n        height=\"15\"\n        viewBox=\"0 0 15 15\"\n        fill=\"none\"\n        xmlns=\"http://www.w3.org/2000/svg\"\n        {...props}\n        ref={forwardedRef}\n      >\n        <path\n          d=\"M6.1584 3.13508C6.35985 2.94621 6.67627 2.95642 6.86514 3.15788L10.6151 7.15788C10.7954 7.3502 10.7954 7.64949 10.6151 7.84182L6.86514 11.8418C6.67627 12.0433 6.35985 12.0535 6.1584 11.8646C5.95694 11.6757 5.94673 11.3593 6.1356 11.1579L9.565 7.49985L6.1356 3.84182C5.94673 3.64036 5.95694 3.32394 6.1584 3.13508Z\"\n          fill={color}\n          fillRule=\"evenodd\"\n          clipRule=\"evenodd\"\n        />\n      </svg>\n    );\n  }\n);\n\nexport default ChevronRightIcon;\n","import * as React from 'react';\nimport { IconProps } from './types';\n\nexport const DotsHorizontalIcon = React.forwardRef<SVGSVGElement, IconProps>(\n  ({ color = 'currentColor', ...props }, forwardedRef) => {\n    return (\n      <svg\n        width=\"15\"\n        height=\"15\"\n        viewBox=\"0 0 15 15\"\n        fill=\"none\"\n        xmlns=\"http://www.w3.org/2000/svg\"\n        {...props}\n        ref={forwardedRef}\n      >\n        <path\n          d=\"M3.625 7.5C3.625 8.12132 3.12132 8.625 2.5 8.625C1.87868 8.625 1.375 8.12132 1.375 7.5C1.375 6.87868 1.87868 6.375 2.5 6.375C3.12132 6.375 3.625 6.87868 3.625 7.5ZM8.625 7.5C8.625 8.12132 8.12132 8.625 7.5 8.625C6.87868 8.625 6.375 8.12132 6.375 7.5C6.375 6.87868 6.87868 6.375 7.5 6.375C8.12132 6.375 8.625 6.87868 8.625 7.5ZM12.5 8.625C13.1213 8.625 13.625 8.12132 13.625 7.5C13.625 6.87868 13.1213 6.375 12.5 6.375C11.8787 6.375 11.375 6.87868 11.375 7.5C11.375 8.12132 11.8787 8.625 12.5 8.625Z\"\n          fill={color}\n          fillRule=\"evenodd\"\n          clipRule=\"evenodd\"\n        />\n      </svg>\n    );\n  }\n);\n\nexport default DotsHorizontalIcon;\n","export default function _extends() {\n  _extends = Object.assign ? Object.assign.bind() : function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n    return target;\n  };\n  return _extends.apply(this, arguments);\n}","import * as React from 'react';\n\ntype PossibleRef<T> = React.Ref<T> | undefined;\n\n/**\n * Set a given ref to a given value\n * This utility takes care of different types of refs: callback refs and RefObject(s)\n */\nfunction setRef<T>(ref: PossibleRef<T>, value: T) {\n  if (typeof ref === 'function') {\n    ref(value);\n  } else if (ref !== null && ref !== undefined) {\n    (ref as React.MutableRefObject<T>).current = value;\n  }\n}\n\n/**\n * A utility to compose multiple refs together\n * Accepts callback refs and RefObject(s)\n */\nfunction composeRefs<T>(...refs: PossibleRef<T>[]) {\n  return (node: T) => refs.forEach((ref) => setRef(ref, node));\n}\n\n/**\n * A custom hook that composes multiple refs\n * Accepts callback refs and RefObject(s)\n */\nfunction useComposedRefs<T>(...refs: PossibleRef<T>[]) {\n  // eslint-disable-next-line react-hooks/exhaustive-deps\n  return React.useCallback(composeRefs(...refs), refs);\n}\n\nexport { composeRefs, useComposedRefs };\n","import * as React from 'react';\nimport { composeRefs } from '@radix-ui/react-compose-refs';\n\n/* -------------------------------------------------------------------------------------------------\n * Slot\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SlotProps extends React.HTMLAttributes<HTMLElement> {\n  children?: React.ReactNode;\n}\n\nconst Slot = React.forwardRef<HTMLElement, SlotProps>((props, forwardedRef) => {\n  const { children, ...slotProps } = props;\n  const childrenArray = React.Children.toArray(children);\n  const slottable = childrenArray.find(isSlottable);\n\n  if (slottable) {\n    // the new element to render is the one passed as a child of `Slottable`\n    const newElement = slottable.props.children as React.ReactNode;\n\n    const newChildren = childrenArray.map((child) => {\n      if (child === slottable) {\n        // because the new element will be the one rendered, we are only interested\n        // in grabbing its children (`newElement.props.children`)\n        if (React.Children.count(newElement) > 1) return React.Children.only(null);\n        return React.isValidElement(newElement)\n          ? (newElement.props.children as React.ReactNode)\n          : null;\n      } else {\n        return child;\n      }\n    });\n\n    return (\n      <SlotClone {...slotProps} ref={forwardedRef}>\n        {React.isValidElement(newElement)\n          ? React.cloneElement(newElement, undefined, newChildren)\n          : null}\n      </SlotClone>\n    );\n  }\n\n  return (\n    <SlotClone {...slotProps} ref={forwardedRef}>\n      {children}\n    </SlotClone>\n  );\n});\n\nSlot.displayName = 'Slot';\n\n/* -------------------------------------------------------------------------------------------------\n * SlotClone\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SlotCloneProps {\n  children: React.ReactNode;\n}\n\nconst SlotClone = React.forwardRef<any, SlotCloneProps>((props, forwardedRef) => {\n  const { children, ...slotProps } = props;\n\n  if (React.isValidElement(children)) {\n    return React.cloneElement(children, {\n      ...mergeProps(slotProps, children.props),\n      ref: forwardedRef ? composeRefs(forwardedRef, (children as any).ref) : (children as any).ref,\n    });\n  }\n\n  return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n});\n\nSlotClone.displayName = 'SlotClone';\n\n/* -------------------------------------------------------------------------------------------------\n * Slottable\n * -----------------------------------------------------------------------------------------------*/\n\nconst Slottable = ({ children }: { children: React.ReactNode }) => {\n  return <>{children}</>;\n};\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype AnyProps = Record<string, any>;\n\nfunction isSlottable(child: React.ReactNode): child is React.ReactElement {\n  return React.isValidElement(child) && child.type === Slottable;\n}\n\nfunction mergeProps(slotProps: AnyProps, childProps: AnyProps) {\n  // all child props should override\n  const overrideProps = { ...childProps };\n\n  for (const propName in childProps) {\n    const slotPropValue = slotProps[propName];\n    const childPropValue = childProps[propName];\n\n    const isHandler = /^on[A-Z]/.test(propName);\n    if (isHandler) {\n      // if the handler exists on both, we compose them\n      if (slotPropValue && childPropValue) {\n        overrideProps[propName] = (...args: unknown[]) => {\n          childPropValue(...args);\n          slotPropValue(...args);\n        };\n      }\n      // but if it exists only on the slot, we use only this one\n      else if (slotPropValue) {\n        overrideProps[propName] = slotPropValue;\n      }\n    }\n    // if it's `style`, we merge them\n    else if (propName === 'style') {\n      overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n    } else if (propName === 'className') {\n      overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(' ');\n    }\n  }\n\n  return { ...slotProps, ...overrideProps };\n}\n\nconst Root = Slot;\n\nexport {\n  Slot,\n  Slottable,\n  //\n  Root,\n};\nexport type { SlotProps };\n","import * as React from \"react\"\nimport { clsx, type ClassValue } from \"clsx\"\nimport { twMerge } from \"tailwind-merge\"\n\nexport function cn(...inputs: ClassValue[]) {\n  return twMerge(clsx(inputs))\n}\n\nexport function formatDate(input: string | number): string {\n  const date = new Date(input)\n  return date.toLocaleDateString(\"en-US\", {\n    month: \"long\",\n    day: \"numeric\",\n    year: \"numeric\",\n  })\n}\n\nexport function absoluteUrl(path: string) {\n  return `${process.env.NEXT_PUBLIC_APP_URL}${path}`\n}\n"]}