mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
* Update table data structure schema. * Update table panel configuration options for new structure * Fix TS errors from refactor * Separate background and gauge display modes * Remove the now used Bar Gauge display from the mud * Fix types up * Reorganize data structures * Fix type issues. * Start stubbing necessary code. * Continue implementing option refactor * Change category for cell type selection. * Consolidate cell options * Fix various typing issues * Clean up dead code * Stub handling display mode changes * Make subOption editor dynamic * Setup interface for sub-option editor props * Remove unused imports * Remove console.log call * Persist display mode changes, stub sub options change, update comments. * Make sure updates from cells are persisted * Persist sub-option changes * Update BarGaugeCell to take into account new settings. * Add deprecated field back * Remove unecessary options in configuration * Update default cell to accept new settings * Make sure color text display works * Add deprecated property notice * Use constant as opposed to string * Make sure we name globally namespaced things uniquely * Update to use unique name * Use union type with discriminator. * Simplify types and operation * Update type definitons * Update types * Update property names in cells * Remove React.FC usage * Update option editor signature * Update options structure * Change variable name * Fix "Color Text" display * Remove debug statement * Make sure we remain backwards compatible with display mode. * Add migration for configuration. * Export BarGaugeDisplayMode from grafana-ui * Update import * Fix bar gauge and dashboard migrator tests * Fix potential undefined references causing test failures * Fix another potential reference error in DefaultCell * Try to fix breaking change detection. * Cache setting changes * Make sure we return with onChange invocation * Fixed migrating overrides * Fix a number of review comments * Simplify option editors * Fix unused imports * Fill out comments for types * Actually use defaultPanelConfig for editor default * Move TableCellEditorProps alongside TableCellOptionEditor * Update docs for table panel * Also make sure we remove TableCellEditorProps from model file * Stub migration tests * Add tests for default config migration * Add basic overrides test * Flesh out tests a bit more * Add inspect to same category as cell editor Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
41 lines
1.3 KiB
TypeScript
41 lines
1.3 KiB
TypeScript
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// NOTE: This file will be auto generated from models.cue
|
|
// It is currenty hand written but will serve as the target for cuetsy
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
import { TableCellDisplayMode, TableSortByFieldState, TableFooterCalc } from '@grafana/ui';
|
|
import { TableFieldOptions } from '@grafana/schema';
|
|
|
|
// Only the latest schema version is translated to TypeScript, on the premise
|
|
// that either the dashboard loading process, or (eventually) CUE-defined
|
|
// migrations ensure that bulk of the frontend application only ever
|
|
// need directly consider the most recent version of the schema.
|
|
export const modelVersion = Object.freeze([1, 0]);
|
|
|
|
export interface PanelOptions {
|
|
frameIndex: number;
|
|
showHeader: boolean;
|
|
showTypeIcons?: boolean;
|
|
sortBy?: TableSortByFieldState[];
|
|
footer?: TableFooterCalc; // TODO: should be array (options builder is limited)
|
|
}
|
|
|
|
export const defaultPanelOptions: PanelOptions = {
|
|
frameIndex: 0,
|
|
showHeader: true,
|
|
showTypeIcons: false,
|
|
footer: {
|
|
show: false,
|
|
reducer: [],
|
|
countRows: false,
|
|
},
|
|
};
|
|
|
|
export const defaultPanelFieldConfig: TableFieldOptions = {
|
|
align: 'auto',
|
|
cellOptions: {
|
|
type: TableCellDisplayMode.Auto,
|
|
},
|
|
inspect: false,
|
|
};
|