diff --git a/package-lock.json b/package-lock.json index 740d9cc..55ac518 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,6 +16,7 @@ "@easyops-cn/docusaurus-search-local": "^0.52.1", "@giscus/react": "^3.1.0", "@mdx-js/react": "^3.1.1", + "@vercel/analytics": "^1.6.1", "clsx": "^2.1.1", "prism-react-renderer": "^2.4.1", "react": "^19.2.0", @@ -5708,6 +5709,44 @@ "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", "license": "ISC" }, + "node_modules/@vercel/analytics": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@vercel/analytics/-/analytics-1.6.1.tgz", + "integrity": "sha512-oH9He/bEM+6oKlv3chWuOOcp8Y6fo6/PSro8hEkgCW3pu9/OiCXiUpRUogDh3Fs3LH2sosDrx8CxeOLBEE+afg==", + "license": "MPL-2.0", + "peerDependencies": { + "@remix-run/react": "^2", + "@sveltejs/kit": "^1 || ^2", + "next": ">= 13", + "react": "^18 || ^19 || ^19.0.0-rc", + "svelte": ">= 4", + "vue": "^3", + "vue-router": "^4" + }, + "peerDependenciesMeta": { + "@remix-run/react": { + "optional": true + }, + "@sveltejs/kit": { + "optional": true + }, + "next": { + "optional": true + }, + "react": { + "optional": true + }, + "svelte": { + "optional": true + }, + "vue": { + "optional": true + }, + "vue-router": { + "optional": true + } + } + }, "node_modules/@webassemblyjs/ast": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", diff --git a/package.json b/package.json index de24457..118a823 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "@easyops-cn/docusaurus-search-local": "^0.52.1", "@giscus/react": "^3.1.0", "@mdx-js/react": "^3.1.1", + "@vercel/analytics": "^1.6.1", "clsx": "^2.1.1", "prism-react-renderer": "^2.4.1", "react": "^19.2.0", diff --git a/src/pages/index.js b/src/pages/index.js index 7082990..1e35c8e 100644 --- a/src/pages/index.js +++ b/src/pages/index.js @@ -3,6 +3,8 @@ import Link from '@docusaurus/Link'; import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; import Layout from '@theme/Layout'; import HomepageFeatures from '@site/src/components/HomepageFeatures'; +import { useEffect } from 'react'; +import { inject } from '@vercel/analytics'; import Heading from '@theme/Heading'; import styles from './index.module.css'; @@ -30,6 +32,11 @@ function HomepageHeader() { export default function Home() { const {siteConfig} = useDocusaurusContext(); + + useEffect(() => { + inject(); + }, []); + return (