perf: eliminate global JS bloat and defer autoPlay video
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 8s
Build & Deploy / 🧪 QA (push) Successful in 1m29s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled

- Dynamically imported ToolCoordinator dependencies
- Removes ~400KB from global layout (html2canvas, framer-motion)
- Implemented IntersectionObserver in VideoSection
- Prevents 1.8MB .webm autoPlay blocking initial network
- Restored SSR hydration visibility for LCP elements in Hero
This commit is contained in:
2026-02-20 00:34:08 +01:00
parent 474fa4f3df
commit 7542f42568
6 changed files with 154 additions and 23 deletions

View File

@@ -2,8 +2,17 @@
import React, { useState, useEffect } from 'react';
import { useRecordMode } from './RecordModeContext';
import { FeedbackOverlay } from '@mintel/next-feedback/FeedbackOverlay';
import { RecordModeOverlay } from './RecordModeOverlay';
import dynamic from 'next/dynamic';
const FeedbackOverlay = dynamic(
() => import('@mintel/next-feedback/FeedbackOverlay').then((mod) => mod.FeedbackOverlay),
{ ssr: false },
);
const RecordModeOverlay = dynamic(
() => import('./RecordModeOverlay').then((mod) => mod.RecordModeOverlay),
{ ssr: false },
);
import { PickingHelper } from './PickingHelper';
interface ToolCoordinatorProps {