or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

docs

authorization.mdcharts.mdcompiler.mdconditional-formatting.mddashboards.mddbt.mdee-features.mdexplore-fields.mdfilters.mdformatting.mdindex.mdmetric-queries.mdparameters.mdpivot.mdprojects-spaces.mdsql-runner.mdtemplating.mdtypes.mdutilities.mdvisualizations.mdwarehouse.md
tile.json

dashboards.mddocs/

Dashboard Management

Creating, updating, and managing dashboards with tiles, filters, and tabs.

Dashboard Type

interface Dashboard {
  organizationUuid: string;
  projectUuid: string;
  uuid: string;
  name: string;
  description?: string;
  updatedAt: Date;
  tiles: DashboardTile[];
  filters: DashboardFilters;
  tabs?: DashboardTab[];
  spaceUuid: string;
  slug: string;
}

interface CreateDashboard {
  name: string;
  description?: string;
  tiles?: DashboardTileTypes[];
  filters?: DashboardFilters;
  spaceUuid?: string;
}

interface UpdateDashboard {
  name?: string;
  description?: string;
  tiles?: DashboardTile[];
  filters?: DashboardFilters;
  tabs?: DashboardTab[];
}

Dashboard Tiles

enum DashboardTileTypes {
  SAVED_CHART = 'saved_chart',
  MARKDOWN = 'markdown',
  LOOM = 'loom',
  SQL_CHART = 'sql_chart'
}

interface DashboardChartTile {
  uuid: string;
  type: DashboardTileTypes.SAVED_CHART;
  x: number; y: number; h: number; w: number;
  tabUuid?: string;
  properties: {
    savedChartUuid: string | null;
    title?: string;
    hideTitle?: boolean;
  };
}

type DashboardTile = DashboardChartTile | DashboardMarkdownTile | DashboardLoomTile | DashboardSqlChartTile;

function isDashboardChartTileType(tile: DashboardTile): tile is DashboardChartTile;
function hasChartsInDashboard(dashboard: Dashboard): boolean;
function getDefaultChartTileSize(chartKind: ChartKind | null | undefined): { h: number; w: number };

Dashboard Filters

type DashboardFilters = {
  dimensions: DashboardFilterRule[];
  metrics: DashboardFilterRule[];
  tableCalculations: DashboardFilterRule[];
};

// See filters.md for DashboardFilterRule details

Dashboard Tabs

interface DashboardTab {
  uuid: string;
  name: string;
  order: number;
}