Skip to content

Commit 84c7928

Browse files
authored
add rybbit nav content events (#171)
1 parent 5c32c5b commit 84c7928

2 files changed

Lines changed: 17 additions & 1 deletion

File tree

src/components/home/Navbar.tsx

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,18 @@ function isExternalHref(href: string) {
2424
return /^(https?:)?\/\//.test(href);
2525
}
2626

27+
function getNavLinkRybbitAttrs(link: NavLink) {
28+
if (link.href.includes('video.fastgpt.cn/videos')) {
29+
return rybbitClickAttrs(RYBBIT_EVENTS.learningCenterClick, 'home_nav_learning_center');
30+
}
31+
32+
if (link.href.includes('solutions.fastgpt.cn')) {
33+
return rybbitClickAttrs(RYBBIT_EVENTS.caseCenterClick, 'home_nav_case_center');
34+
}
35+
36+
return {};
37+
}
38+
2739
export default function Navbar({ links = [], t }: { links?: NavLink[]; t: NavCta }) {
2840
const [mobileOpen, setMobileOpen] = useState(false);
2941
const [showMobileCta, setShowMobileCta] = useState(true);
@@ -162,6 +174,7 @@ export default function Navbar({ links = [], t }: { links?: NavLink[]; t: NavCta
162174
href={getNavHref(link.href, lang)}
163175
target={isExternalHref(link.href) ? '_blank' : undefined}
164176
rel={isExternalHref(link.href) ? 'noopener noreferrer nofollow' : undefined}
177+
{...getNavLinkRybbitAttrs(link)}
165178
className="hover:text-ink transition-colors"
166179
>
167180
{link.label}
@@ -262,6 +275,7 @@ export default function Navbar({ links = [], t }: { links?: NavLink[]; t: NavCta
262275
href={getNavHref(link.href, lang)}
263276
target={isExternalHref(link.href) ? '_blank' : undefined}
264277
rel={isExternalHref(link.href) ? 'noopener noreferrer nofollow' : undefined}
278+
{...getNavLinkRybbitAttrs(link)}
265279
className="py-3 hover:text-ink transition-colors"
266280
onClick={() => setMobileOpen(false)}
267281
>

src/lib/rybbitEvents.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
export const RYBBIT_EVENTS = {
22
businessConsultClick: 'business_consult_click',
3-
cloudServiceClick: 'cloud_service_click'
3+
cloudServiceClick: 'cloud_service_click',
4+
caseCenterClick: 'case_center_click',
5+
learningCenterClick: 'learning_center_click'
46
} as const;
57

68
type RybbitEventName = (typeof RYBBIT_EVENTS)[keyof typeof RYBBIT_EVENTS];

0 commit comments

Comments
 (0)