Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions knip.config.ts
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😢

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

True but that's c'est-la vie for ya

Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ const productionEntryPoints = [
'static/app/chartcuterie/**/*.{js,ts,tsx}',
// TODO: Remove when used
'static/app/views/seerExplorer/contexts/**/*.{js,ts,tsx}',
// TODO: Remove when integration into Explore has started
'static/app/views/dashboards/widgets/heatMapWidget/**/*.{ts,tsx}',
// TODO: Remove when used
'static/app/views/settings/organizationRepositories/connectProviderDropdown.tsx',
'static/app/views/settings/organizationRepositories/noIntegrationsEmptyState.tsx',
Expand Down
3 changes: 3 additions & 0 deletions static/app/components/charts/baseChart.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -357,6 +357,7 @@ export function BaseChart({
utc,
yAxes,
xAxes,
visualMap,

style,
ref,
Expand Down Expand Up @@ -573,6 +574,7 @@ export function BaseChart({
series: resolvedSeries,
toolbox: toolBox,
axisPointer,
visualMap,
Comment thread
cursor[bot] marked this conversation as resolved.
Outdated
dataZoom,
graphic,
aria,
Expand All @@ -596,6 +598,7 @@ export function BaseChart({
toolBox,
brush,
axisPointer,
visualMap,
dataZoom,
graphic,
isGroupedByDate,
Expand Down
131 changes: 131 additions & 0 deletions static/app/views/dashboards/widgets/common/types.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -211,3 +211,134 @@ export interface CategoricalSeries {
*/
groupBy?: CategoricalGroupBy[] | null;
}

/**
* The type of values in a heatmap series.
* This is the broadest set of types supported - any value type that can come
* from the API. The plottable layer constrains this to plottable types.
*/
type HeatMapValueType = AttributeValueType;
export type HeatMapValueUnit = AttributeValueUnit;

/**
* A single item in a heat map series.
*/
interface HeatMapItem {
/**
* The X-axis value
*/
xAxis: number;
/**
* The Y-axis value
*/
yAxis: number;
/**
* The Z-axis value. This can be null if the value is missing.
*/
zAxis: number | null;
}

/**
* Metadata for a heat map series X-axis. Right now this axis is always time.
*/
interface HeatMapSeriesXAxisMeta {
/**
* The total count of buckets on this axis. Matches what was requested, if were requested
*/
bucketCount: number;
/**
* The size of the buckets on this axis.
*/
bucketSize: number;
/**
* The largest value of data on the axis
*/
end: number;
/**
* The name of the series. Corresponds to what it's plotting. Could be `"time"` or something like `"count()"`
*/
name: string;
/**
* The smallest value of data on the axis
*/
start: number;
}

/**
* Metadata for a heat map series Y axis. Right now this is the only axis that is configurable by the user, so it returns the value type and unit.
*/
interface HeatMapSeriesYAxisMeta {
/**
* The total count of buckets on this axis. Matches what was requested, if were requested
*/
bucketCount: number;
/**
* The size of the buckets on this axis.
*/
bucketSize: number;
/**
* The largest value of data on the axis
*/
end: number;
/**
* The name of the series. Corresponds to what it's plotting. Could be `"time"` or something like `"count()"`
*/
name: string;
/**
* The smallest value of data on the axis
*/
start: number;
/**
* The type of the values (e.g., "duration", "number")
*/
valueType: HeatMapValueType;
/**
* The unit of the values, if applicable.
*/
valueUnit: DataUnit | null;
}

/**
* Metadata for a heat map series Z axis. Right now this is always a count.
*/
interface HeatMapSeriesZAxisMeta {
/**
* The largest value of data on the axis
*/
end: number;
/**
* The name of the series. Corresponds to what it's plotting. Could be `"time"` or something like `"count()"`
*/
name: string;
/**
* The smallest value of data on the axis
*/
start: number;
}

/**
* Metadata for a heat map series.
*/
interface HeatMapSeriesMeta {
xAxis: HeatMapSeriesXAxisMeta;
yAxis: HeatMapSeriesYAxisMeta;
zAxis: HeatMapSeriesZAxisMeta;
}

/**
* A heat map data series for heat map visualizations.
*/
export interface HeatMapSeries {
/**
* Metadata about the series.
*/
meta: HeatMapSeriesMeta;
/**
* The data points in this series.
*/
values: HeatMapItem[];
/**
* Represents the grouping information for the series, if applicable.
*/
groupBy?: CategoricalGroupBy[] | null;
}
Loading
Loading