diff --git a/src/components/RoadmapAIChat/RoadmapAIChat.tsx b/src/components/RoadmapAIChat/RoadmapAIChat.tsx index 6f8bb21ef..b33048db6 100644 --- a/src/components/RoadmapAIChat/RoadmapAIChat.tsx +++ b/src/components/RoadmapAIChat/RoadmapAIChat.tsx @@ -38,6 +38,7 @@ import { RoadmapAIChatCard } from './RoadmapAIChatCard'; import { UserProgressList } from './UserProgressList'; import { UserProgressActionList } from './UserProgressActionList'; import { RoadmapTopicList } from './RoadmapTopicList'; +import { ShareResourceLink } from './ShareResourceLink'; export type RoamdapAIChatHistoryType = { role: AllowedAIChatRole; @@ -153,6 +154,9 @@ export function RoadmapAIChat(props: RoadmapAIChatProps) { 'roadmap-topics': (options) => { return ; }, + 'resource-progress-link': () => { + return ; + }, }; }, [roadmapId]); diff --git a/src/components/RoadmapAIChat/ShareResourceLink.tsx b/src/components/RoadmapAIChat/ShareResourceLink.tsx new file mode 100644 index 000000000..51c46e0c5 --- /dev/null +++ b/src/components/RoadmapAIChat/ShareResourceLink.tsx @@ -0,0 +1,46 @@ +import { ShareIcon } from 'lucide-react'; +import { useAuth } from '../../hooks/use-auth'; +import { useCopyText } from '../../hooks/use-copy-text'; +import { CheckIcon } from '../ReactIcons/CheckIcon'; +import { cn } from '../../lib/classname'; + +type ShareResourceLinkProps = { + roadmapId: string; +}; + +export function ShareResourceLink(props: ShareResourceLinkProps) { + const { roadmapId } = props; + const user = useAuth(); + const { copyText, isCopied } = useCopyText(); + + const handleShareResourceLink = () => { + const url = `${import.meta.env.PUBLIC_APP_URL}/${roadmapId}?s=${user?.id}`; + copyText(url); + }; + + return ( +
+ +
+ ); +}