Skip to content

Commit 955a1a1

Browse files
committed
documentation tweaks
1 parent 8e35506 commit 955a1a1

File tree

4 files changed

+36
-0
lines changed

4 files changed

+36
-0
lines changed

docs/package-lock.json

+7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
"@tailwindcss/forms": "^0.5.9",
1717
"@tailwindcss/typography": "^0.5.15",
1818
"@types/mdx": "^2.0.13",
19+
"@types/umami": "^2.10.0",
1920
"classnames": "^2.5.1",
2021
"flowbite-react": "^0.10.2",
2122
"next": "14.2.13",

docs/src/app/layout.tsx

+3
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import logoIcon from '../../public/Logo Icon.png';
33
import ogImage from '../../public/OG image.png';
44
import './globals.css';
55
import './markdown.css';
6+
import { Tracking } from './tracking';
67

78
export default function RootLayout({
89
children,
@@ -22,8 +23,10 @@ export default function RootLayout({
2223
© 2024 Stu Kabakoff
2324
</div>
2425
</body>
26+
<Tracking />
2527
<script
2628
defer
29+
async
2730
src="https://umami.stutrek.com/script.js"
2831
data-website-id="3af56b1c-38b6-421c-b59c-64fe9fb50784"
2932
/>

docs/src/app/tracking.tsx

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
'use client';
2+
import { useEffect } from 'react';
3+
4+
export const Tracking = () => {
5+
useEffect(() => {
6+
const listener = (event: PointerEvent) => {
7+
if (
8+
window.umami &&
9+
(event.target instanceof HTMLAnchorElement ||
10+
event.target instanceof HTMLButtonElement)
11+
) {
12+
const text = event.target.innerText;
13+
umami.track('click', {
14+
text,
15+
});
16+
}
17+
};
18+
document.body.addEventListener('pointerdown', listener);
19+
return () => {
20+
document.body.removeEventListener('pointerdown', listener);
21+
};
22+
}, []);
23+
24+
return null;
25+
};

0 commit comments

Comments
 (0)