@yugabytedb/perf-advisor-ui 1.0.158 → 1.0.160

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,34 @@
1
1
  import { default as React } from 'react';
2
+ export declare const INLINE_CODE_TAG_SX: {
3
+ fontFamily: string;
4
+ fontWeight: number;
5
+ fontStyle: string;
6
+ fontSize: string;
7
+ lineHeight: number;
8
+ letterSpacing: number;
9
+ color: string;
10
+ backgroundColor: string;
11
+ borderRadius: string;
12
+ border: string;
13
+ height: string;
14
+ padding: string;
15
+ display: string;
16
+ alignItems: string;
17
+ justifyContent: string;
18
+ '& .MuiChip-label': {
19
+ padding: number;
20
+ display: string;
21
+ alignItems: string;
22
+ lineHeight: number;
23
+ };
24
+ };
25
+ export declare const InlineCodeChip: React.FC<{
26
+ children: React.ReactNode;
27
+ onClick?: (event: React.MouseEvent) => void;
28
+ }>;
29
+ export declare const CodeSegment: React.FC<{
30
+ text: string;
31
+ lang?: string;
32
+ indent?: boolean;
33
+ }>;
2
34
  export declare const renderRecommendation: (text: string) => React.ReactNode;
@@ -164,6 +164,8 @@ export declare const DB_TAG = "Database";
164
164
  export declare const USER_TAG = "User";
165
165
  export declare const TABLE_TAG = "TABLE";
166
166
  export declare const INDEX_TAG = "INDEX";
167
+ /** For a physical relation that could be either a table or an index, and is not resolved as either. */
168
+ export declare const RELATION_TAG = "RELATION";
167
169
  export declare const TABLET_TAG = "Tablet Id";
168
170
  export declare const TABLET_ID_TAG = "TABLET ID";
169
171
  export declare const ANOMALY_TAG = "ANOMALY";
@@ -1,5 +1,22 @@
1
1
  import { FC } from 'react';
2
2
  import { AppName } from './dtos';
3
+ /** Pad applied to each side of a clicked bar's range when drilling down. */
4
+ export declare const BAR_DRILLDOWN_BUFFER_MIN_MS: number;
5
+ /**
6
+ * Overwrite startTime/endTime/duration on `params` to scope a drilldown to a clicked
7
+ * Gantt bar:
8
+ *
9
+ * - Pads the bar by max(BAR_DRILLDOWN_BUFFER_MIN_MS, 10% of its duration).
10
+ * - Keeps the window within the page's [pageStartTime, pageEndTime]. The page end is
11
+ * "now" on every preset, so an unbounded pad would reach into the future.
12
+ * - Clamps the bar to that window before sizing the pad, so a long anomaly is padded by
13
+ * 10% of what is visible rather than 10% of its full duration.
14
+ * - Sets duration=CUSTOM to pin the drilldown to this exact window.
15
+ */
16
+ export declare const applyBarDrilldownRange: (params: URLSearchParams, item: {
17
+ start: Date;
18
+ end: Date;
19
+ }, pageStartTime?: Date | string | null, pageEndTime?: Date | string | null) => void;
3
20
  /**
4
21
  * Get the default timezone (UTC). Used when timezone prop is null.
5
22
  */
@@ -532,6 +532,24 @@ export interface TablePagedResponse {
532
532
  hasPrev: boolean;
533
533
  totalCount: number;
534
534
  }
535
+ export interface MaterializedViewMetadataId {
536
+ universeId: string;
537
+ namespaceName: string;
538
+ schemaName: string;
539
+ materializedViewName: string;
540
+ }
541
+ export interface MaterializedViewResponseMetadata {
542
+ id: MaterializedViewMetadataId;
543
+ materializedViewId?: number;
544
+ definition?: string;
545
+ updated?: string;
546
+ }
547
+ export interface MaterializedViewPagedResponse {
548
+ entities: MaterializedViewResponseMetadata[];
549
+ hasNext: boolean;
550
+ hasPrev: boolean;
551
+ totalCount: number;
552
+ }
535
553
  export interface UniverseDatabaseStatsData {
536
554
  connections: number;
537
555
  cpuRatio: number;
@@ -551,6 +569,12 @@ export declare enum DatabaseType {
551
569
  CQL = "CQL",
552
570
  SYSTEM = "SYSTEM"
553
571
  }
572
+ export declare enum ResolvedRelationType {
573
+ TABLE = "TABLE",
574
+ INDEX = "INDEX",
575
+ MATERIALIZED_VIEW = "MATERIALIZED_VIEW",
576
+ UNKNOWN = "UNKNOWN"
577
+ }
554
578
  export interface RowItemClasses {
555
579
  rowTableCell: string;
556
580
  queryTableCell: string;
@@ -587,6 +611,18 @@ export declare enum RuntimeConfigType {
587
611
  BOOL = "BOOL",
588
612
  DURATION = "DURATION"
589
613
  }
614
+ export interface IndexAnomalyDetails {
615
+ indexName: string;
616
+ schemaName: string;
617
+ tableName: string;
618
+ databaseName: string;
619
+ indexDefinition: string;
620
+ otherIndexName?: string;
621
+ otherIndexDefinition?: string;
622
+ }
623
+ export interface AnomalyDetails {
624
+ indexDetails?: IndexAnomalyDetails;
625
+ }
590
626
  export interface AnomalyInstance {
591
627
  description?: string;
592
628
  detectionTime: string;
@@ -613,6 +649,7 @@ export interface AnomalyInstance {
613
649
  rcaGuidelines: RCAGuideline[];
614
650
  isResolved?: boolean;
615
651
  wastedAASRatio?: number;
652
+ anomalyDetails?: AnomalyDetails;
616
653
  }
617
654
  export interface Interval {
618
655
  startTime: string;
@@ -837,7 +874,11 @@ export interface TabletResponseMetadata {
837
874
  events: QueryEvents[];
838
875
  size: string;
839
876
  schemaName: string;
840
- tableName: string;
877
+ physicalRelationName: string;
878
+ tableName?: string;
879
+ indexName?: string;
880
+ materializedViewName?: string;
881
+ resolvedRelationType?: ResolvedRelationType;
841
882
  tabletId: string;
842
883
  universeId: string;
843
884
  totalEpsRatio: number;
@@ -853,7 +894,11 @@ export interface TransformedTabletsData {
853
894
  eps: number;
854
895
  events: QueryEvents[];
855
896
  schemaName: string;
856
- tableName: string;
897
+ physicalRelationName: string;
898
+ tableName?: string;
899
+ indexName?: string;
900
+ materializedViewName?: string;
901
+ resolvedRelationType?: ResolvedRelationType;
857
902
  tabletId: string;
858
903
  universeId: string;
859
904
  totalEpsRatio: number;
@@ -888,6 +933,7 @@ export interface AnomalyPossibleCauseData {
888
933
  summary: string;
889
934
  observation: string;
890
935
  possibleCauses: AnomalyPossibleCauseItem[];
936
+ anomalyDetails?: AnomalyDetails;
891
937
  }
892
938
  export interface AnomalyPossibleCauseItem {
893
939
  possibleCause: string;
@@ -267,6 +267,20 @@ export type ProcessedQueryPlan = QueryPlanEntry & {
267
267
  export declare function processQPMData(plans: QueryPlanEntry[]): ProcessedQueryPlan[];
268
268
  export declare const formatPlanDate: (iso: string, displayTimezone?: string) => string;
269
269
  export declare const formatNumberTo2Decimals: (value: unknown) => string;
270
+ /**
271
+ * Formats an EPS / AAS ("Avg Active Context") value for display. Small non-zero
272
+ * values that round to "0.00" at 2 decimal places,
273
+ * surface them as "<0.01" instead. Exact zero keeps "0.00".
274
+ */
275
+ export declare const formatEps: (value: unknown) => string;
276
+ export declare const formatCallsPerSec: (value: unknown) => string;
277
+ export declare const formatConnections: (value: unknown) => string;
278
+ /**
279
+ * Formats a load ratio (0-1) as a percentage. Small non-zero ratios that round
280
+ * to "0.00%" at 2 decimal places are surfaced as "<0.01%" instead. Exact zero
281
+ * keeps "0.00%".
282
+ */
283
+ export declare const formatLoadPercentFromRatio: (value: unknown) => string;
270
284
  export interface BuildQueryDrilldownUrlParams {
271
285
  basePath: string;
272
286
  baseSearch: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yugabytedb/perf-advisor-ui",
3
- "version": "1.0.158",
3
+ "version": "1.0.160",
4
4
  "type": "module",
5
5
  "main": "dist/esm/index.js",
6
6
  "module": "dist/esm/index.js",