Add board component selector with live preview

Allows users to select and inject analytics components into board cells.
Includes component registry, renderer, selector modal with category
menu, config fields for MetricsTable, and live preview. Also scopes
website select to team websites when editing a team board.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Mike CaoandClaude Opus 4.6 committed 2026-02-09 00:52:46 -08:00
1 parent 28246b8c52
commit 87bde9da1f
10 files changed
+498 -113

No files matched your search

+3 -5
View File
@@ -1,5 +1,4 @@
import type { UseQueryOptions } from '@tanstack/react-query';
import type { ReactElement } from 'react';
import type { Board as PrismaBoard } from '@/generated/prisma/client';
import type { DATA_TYPE, OPERATORS, ROLES } from './constants';
import type { TIME_UNIT } from './date';
@@ -145,15 +144,14 @@ export interface ApiError extends Error {
message: string;
}
export interface BoardComponent {
id: string;
export interface BoardComponentConfig {
type: string;
value: string;
props?: Record<string, any>;
}
export interface BoardColumn {
id: string;
component?: ReactElement;
component?: BoardComponentConfig;
size?: number;
}