Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 0 additions & 28 deletions projects/fastgpt/app/layout.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import BaiDuAnalytics from '@/app/BaiDuAnalytics';
import ClarityAnalytics from '@/app/ClarityAnalytics';
import RybbitAnalytics from '@/app/RybbitAnalytics';
import GoogleAnalytics from '@/app/GoogleAnalytics';
// import { TailwindIndicator } from '@/components/TailwindIndicator';
import { ThemeProvider } from '@/components/ThemeProvider';
import { siteConfig } from '@/config/site';
Expand All @@ -13,7 +12,6 @@ import '@/styles/plyr.css';
import { Analytics } from '@vercel/analytics/react';
import { Viewport } from 'next';
import { Inter as FontSans } from 'next/font/google';
import Script from 'next/script';

const fontSans = FontSans({
subsets: ['latin'],
Expand Down Expand Up @@ -51,39 +49,13 @@ export default async function RootLayout({

return (
<html lang={(lang && lang[0]) || defaultLocale} suppressHydrationWarning>
<head>
{!isChineseDomain && (
<Script
id="gtm-script"
strategy="afterInteractive"
dangerouslySetInnerHTML={{
__html: `(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-W9HPZZ22');`
}}
/>
)}
</head>
<body className={cn('min-h-screen font-sans antialiased', fontSans.variable)}>
{!isChineseDomain && (
<noscript>
<iframe
src="https://www.googletagmanager.com/ns.html?id=GTM-W9HPZZ22"
height="0"
width="0"
style={{ display: 'none', visibility: 'hidden' }}
></iframe>
</noscript>
)}
<ThemeProvider attribute="class" defaultTheme={siteConfig.nextThemeColor} enableSystem={false} forcedTheme="dark">
{children}
{/* <Footer /> */}
<Analytics />
{/* <TailwindIndicator /> */}
</ThemeProvider>
<GoogleAnalytics />
<BaiDuAnalytics />
<ClarityAnalytics />
<RybbitAnalytics />
Expand Down
92 changes: 49 additions & 43 deletions projects/fastgpt/components/home/Video.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,51 +14,57 @@ const VideoPlayer = ({
const [open, setOpen] = useState(false)

useEffect(() => {
const Plyr = require("plyr");
const player = new Plyr("#player", {
i18n: {
speed: dict?.video.speed,
normal: dict?.video.normal,
},
controls: [
"play-large",
"restart",
"rewind",
"play",
"fast-forward",
"progress",
"current-time",
"duration",
"mute",
"volume",
"captions",
"settings",
"pip",
"airplay",
// 'download',
"fullscreen",
],
});
const show = () => {
player.toggleControls(true);
};
const hiden = () => {
player.toggleControls(false);
};
player.on("ready", (e: any) => {
player.toggleControls(false);
const playerContainer = document.getElementById("player-container");
if (!playerContainer) return;
playerContainer.addEventListener("mouseenter", show);
playerContainer.addEventListener("mouseleave", hiden);
});
// 动态导入Plyr以避免SSR问题
const loadPlyr = async () => {
const Plyr = (await import("plyr")).default;
const player = new Plyr("#player", {
i18n: {
speed: dict?.video.speed,
normal: dict?.video.normal,
},
controls: [
"play-large",
"restart",
"rewind",
"play",
"fast-forward",
"progress",
"current-time",
"duration",
"mute",
"volume",
"captions",
"settings",
"pip",
"airplay",
"fullscreen",
],
});

const show = () => {
player.toggleControls(true);
};
const hiden = () => {
player.toggleControls(false);
};

return () => {
const playerContainer = document.getElementById("player-container");
if (!playerContainer) return;
playerContainer.removeEventListener("mouseenter", show);
playerContainer.removeEventListener("mouseleave", hiden);
player.on("ready", (e: any) => {
player.toggleControls(false);
const playerContainer = document.getElementById("player-container");
if (!playerContainer) return;
playerContainer.addEventListener("mouseenter", show);
playerContainer.addEventListener("mouseleave", hiden);
});

return () => {
const playerContainer = document.getElementById("player-container");
if (!playerContainer) return;
playerContainer.removeEventListener("mouseenter", show);
playerContainer.removeEventListener("mouseleave", hiden);
};
};

loadPlyr();
}, [dict]);

return (
Expand Down