UNPKG

drizzle-cube

Version:

Drizzle ORM-first semantic layer with Cube.js compatibility. Type-safe analytics and dashboards with SQL injection protection.

64 lines (63 loc) 2.17 kB
import { default as React, HTMLAttributes, ReactNode, CSSProperties, ComponentType } from 'react'; import { DashboardFilter, PortletConfig } from '../types'; import { ColorPalette } from '../utils/colorPalettes'; interface DashboardPortletCardProps { portlet: PortletConfig; editable: boolean; isEditMode: boolean; selectedFilterId: string | null; debugData?: { chartConfig: any; displayConfig: any; queryObject: any; data: any[]; chartType: string; }; dashboardFilters?: DashboardFilter[]; configEagerLoad?: boolean; loadingComponent?: ReactNode; colorPalette?: ColorPalette; containerProps?: HTMLAttributes<HTMLDivElement>; headerProps?: HTMLAttributes<HTMLDivElement>; onToggleFilter: (portletId: string, filterId: string) => void; onRefresh: (portletId: string) => void; onDuplicate: (portletId: string) => void; onEdit: (portlet: PortletConfig) => void; onDelete: (portletId: string) => void; onOpenFilterConfig: (portlet: PortletConfig) => void; onDebugDataReady: (portletId: string, data: { chartConfig: any; displayConfig: any; queryObject: any; data: any[]; chartType: string; }) => void; setPortletRef: (portletId: string, element: HTMLDivElement | null) => void; setPortletComponentRef: (portletId: string, element: { refresh: () => void; } | null) => void; icons: { RefreshIcon: ComponentType<{ className?: string; style?: CSSProperties; }>; EditIcon: ComponentType<{ className?: string; style?: CSSProperties; }>; DeleteIcon: ComponentType<{ className?: string; style?: CSSProperties; }>; CopyIcon: ComponentType<{ className?: string; style?: CSSProperties; }>; FilterIcon: ComponentType<{ className?: string; style?: CSSProperties; }>; }; } declare const DashboardPortletCard: React.NamedExoticComponent<DashboardPortletCardProps>; export default DashboardPortletCard;