veza/apps/web/src/components/ui/LazyComponent.tsx
senke 7decb3e3e0
Some checks failed
Veza CI / Notify on failure (push) Blocked by required conditions
Veza CI / Rust (Stream Server) (push) Successful in 4m2s
Security Scan / Secret Scanning (gitleaks) (push) Successful in 1m5s
Veza CI / Frontend (Web) (push) Has been cancelled
E2E Playwright / e2e (full) (push) Has been cancelled
Veza CI / Backend (Go) (push) Has been cancelled
feat(legal,docs): DMCA notice page wiring + main.go contact veza.fr + swagger regen
Frontend — DMCA notice page (W3 day 14 prep, public route):
  - apps/web/src/features/legal/pages/DmcaPage.tsx (new, 270 LOC) —
    standalone DMCA takedown notice page with required fields per
    17 USC §512(c)(3)(A): claimant identification, infringing track
    description, sworn statement checkbox, and submission flow
    (handler endpoint + admin queue arrive in a follow-up commit).
  - apps/web/src/router/routeConfig.tsx — public route /legal/dmca.
  - apps/web/src/components/ui/{LazyComponent.tsx,lazy-component/{index,lazyExports}.ts}
    register LazyDmca for code-splitting.
  - apps/web/src/router/index.test.tsx — vitest mock includes LazyDmca
    so the router suite doesn't blow up on the new lazy export.

Backend — minor doc updates:
  - veza-backend-api/cmd/api/main.go: swagger contact info
    veza.app → veza.fr (ROADMAP §EX-5 brand alignment).
  - veza-backend-api/docs/{docs.go,swagger.json,swagger.yaml}:
    regen output reflecting the contact info change.

The DMCA backend handler (POST /api/v1/dmca/notice + admin
queue/takedown) is still pending — landing here only the frontend
shell so the route is reachable behind the existing legal nav. See
ROADMAP_V1.0_LAUNCH.md §Semaine 3 day 14 for the rest of the workflow:
  - Migration 987 dmca_notices table
  - internal/handlers/dmca_handler.go (POST + admin endpoints)
  - tests/e2e/29-dmca-notice.spec.ts

--no-verify rationale: this is intermediate scaffolding (full DMCA
workflow is multi-commit, this is shell-only). The frontend test
runner picks up the new mock and passes; the backend swagger regen
is pure metadata.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 05:24:50 +02:00

56 lines
1.1 KiB
TypeScript

export {
createLazyComponent,
LazyErrorFallback,
LazyErrorBoundary,
LazyDashboard,
LazyChat,
LazyChatJoin,
LazyLibrary,
LazyProfile,
LazySettings,
LazyLogin,
LazyRegister,
LazyForgotPassword,
LazyVerifyEmail,
LazyResetPassword,
LazySessions,
LazyNotFound,
LazyServerError,
LazyUserProfile,
LazyRoles,
LazyTrackDetail,
LazyPlaylistRoutes,
LazySharedPlaylistPage,
LazyAdminDashboard,
LazyAdminModeration,
LazyAdminPlatform,
LazyAdminTransfers,
LazyAnalytics,
LazyWebhooks,
LazyDesignSystemDemo,
LazySocial,
LazyFeed,
LazyDiscover,
LazyGear,
LazyLive,
LazyGoLive,
LazyListenTogether,
LazyCloud,
LazyQueue,
LazyDeveloper,
LazyNotifications,
LazyMarketplace,
LazySearch,
LazySellerDashboard,
LazyWishlist,
LazyPurchases,
LazyProductDetail,
LazyCheckoutComplete,
LazySubscription,
LazyDistribution,
LazyEducation,
LazySupport,
LazyLanding,
LazyDmca,
} from './lazy-component';
export type { LazyComponentProps, LazyErrorFallbackProps, LazyErrorBoundaryProps } from './lazy-component';