Kaizen
Browse modulesInsightsinsights/sharedSchemas and constants

Variable: chartSpecSchema

const chartSpecSchema: ZodDiscriminatedUnion<[ZodObject<{
  format: ZodOptional<ZodObject<{
     compact: ZodOptional<ZodBoolean>;
     dateStyle: ZodOptional<ZodEnum<{
        long: "long";
        medium: "medium";
        short: "short";
     }>>;
     maximumFractionDigits: ZodOptional<ZodNumber>;
     wholeNumberTicks: ZodOptional<ZodBoolean>;
  }, $strip>>;
  grid: ZodOptional<ZodBoolean>;
  kind: ZodLiteral<"metric">;
  legend: ZodOptional<ZodBoolean>;
  summary: ZodOptional<ZodObject<{
     field: ZodString;
     fn: ZodEnum<{
        avg: "avg";
        count: "count";
        last: "last";
        max: "max";
        min: "min";
        sum: "sum";
     }>;
     label: ZodOptional<ZodString>;
  }, $strip>>;
  ticker: ZodOptional<ZodObject<{
     colorCoded: ZodOptional<ZodBoolean>;
     invertColors: ZodOptional<ZodBoolean>;
     label: ZodOptional<ZodString>;
     value: ZodString;
  }, $strip>>;
  tickers: ZodOptional<ZodArray<ZodObject<{
     colorCoded: ZodOptional<ZodBoolean>;
     invertColors: ZodOptional<ZodBoolean>;
     label: ZodOptional<ZodString>;
     value: ZodString;
  }, $strip>>>;
  value: ZodString;
}, $strip>, ZodObject<{
  area: ZodOptional<ZodBoolean>;
  compact: ZodOptional<ZodBoolean>;
  curve: ZodOptional<ZodEnum<{
     linear: "linear";
     monotone: "monotone";
  }>>;
  facet: ZodOptional<ZodObject<{
     field: ZodString;
     scales: ZodOptional<ZodEnum<{
        independent: "independent";
        shared: "shared";
     }>>;
  }, $strip>>;
  format: ZodOptional<ZodObject<{
     compact: ZodOptional<ZodBoolean>;
     dateStyle: ZodOptional<ZodEnum<{
        long: "long";
        medium: "medium";
        short: "short";
     }>>;
     maximumFractionDigits: ZodOptional<ZodNumber>;
     wholeNumberTicks: ZodOptional<ZodBoolean>;
  }, $strip>>;
  grid: ZodOptional<ZodBoolean>;
  kind: ZodLiteral<"line">;
  legend: ZodOptional<ZodBoolean>;
  points: ZodOptional<ZodBoolean>;
  series: ZodArray<ZodObject<{
     colorSlot: ZodOptional<ZodNumber>;
     field: ZodString;
     label: ZodOptional<ZodString>;
  }, $strip>>;
  stack: ZodOptional<ZodEnum<{
     absolute: "absolute";
     none: "none";
     percent: "percent";
  }>>;
  summary: ZodOptional<ZodObject<{
     field: ZodString;
     fn: ZodEnum<{
        avg: "avg";
        count: "count";
        last: "last";
        max: "max";
        min: "min";
        sum: "sum";
     }>;
     label: ZodOptional<ZodString>;
  }, $strip>>;
  x: ZodString;
}, $strip>, ZodObject<{
  category: ZodString;
  facet: ZodOptional<ZodObject<{
     field: ZodString;
     scales: ZodOptional<ZodEnum<{
        independent: "independent";
        shared: "shared";
     }>>;
  }, $strip>>;
  format: ZodOptional<ZodObject<{
     compact: ZodOptional<ZodBoolean>;
     dateStyle: ZodOptional<ZodEnum<{
        long: "long";
        medium: "medium";
        short: "short";
     }>>;
     maximumFractionDigits: ZodOptional<ZodNumber>;
     wholeNumberTicks: ZodOptional<ZodBoolean>;
  }, $strip>>;
  grid: ZodOptional<ZodBoolean>;
  kind: ZodLiteral<"bar">;
  legend: ZodOptional<ZodBoolean>;
  mode: ZodOptional<ZodEnum<{
     diverging: "diverging";
     grouped: "grouped";
     percent: "percent";
     stacked: "stacked";
  }>>;
  orientation: ZodOptional<ZodEnum<{
     horizontal: "horizontal";
     vertical: "vertical";
  }>>;
  series: ZodArray<ZodObject<{
     colorSlot: ZodOptional<ZodNumber>;
     field: ZodString;
     label: ZodOptional<ZodString>;
  }, $strip>>;
  summary: ZodOptional<ZodObject<{
     field: ZodString;
     fn: ZodEnum<{
        avg: "avg";
        count: "count";
        last: "last";
        max: "max";
        min: "min";
        sum: "sum";
     }>;
     label: ZodOptional<ZodString>;
  }, $strip>>;
}, $strip>], "kind">;

Defined in: shared/insights/types/chart.ts:340