@emeryld/rrroutes-openapi 2.5.20 → 2.5.21

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.
Files changed (62) hide show
  1. package/dist/index.cjs +4 -1
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.mjs +4 -1
  4. package/dist/index.mjs.map +1 -1
  5. package/dist/public/assets/docs.js +101 -120
  6. package/dist/web/v2/components/cache/CacheGroupModal.d.ts +6 -0
  7. package/dist/web/v2/components/cache/CacheGroupsSection.d.ts +1 -0
  8. package/dist/web/v2/components/cache/CacheGroupsTable.d.ts +7 -0
  9. package/dist/web/v2/components/cache/CacheKeyDetailModal.d.ts +6 -0
  10. package/dist/web/v2/components/cache/CacheKeyTimelineChart.d.ts +6 -0
  11. package/dist/web/v2/components/cache/CacheKeysChart.d.ts +4 -4
  12. package/dist/web/v2/components/cache/CacheLink.d.ts +8 -0
  13. package/dist/web/v2/components/cache/CacheTraceDetailModal.d.ts +6 -0
  14. package/dist/web/v2/components/cache/cacheInsightsUtils.d.ts +54 -0
  15. package/dist/web/v2/components/cache/cacheStateUtils.d.ts +9 -0
  16. package/dist/web/v2/components/cache/cacheUtils.d.ts +27 -4
  17. package/dist/web/v2/components/endpoints/EndpointDetailPanel.d.ts +3 -5
  18. package/dist/web/v2/components/feedback/EmptyState.d.ts +1 -2
  19. package/dist/web/v2/components/feedback/ErrorState.d.ts +1 -2
  20. package/dist/web/v2/components/feedback/LoadingState.d.ts +1 -2
  21. package/dist/web/v2/components/feedback/StateHandler.d.ts +13 -0
  22. package/dist/web/v2/components/feeds/FeedPagination.d.ts +4 -6
  23. package/dist/web/v2/components/feeds/FeedSortableTable.d.ts +30 -0
  24. package/dist/web/v2/components/feeds/tableColumns.d.ts +12 -0
  25. package/dist/web/v2/components/filters/BaseFilterBar.d.ts +4 -4
  26. package/dist/web/v2/components/filters/OptionPicker.d.ts +9 -0
  27. package/dist/web/v2/components/history/BucketRequestsModal.d.ts +6 -0
  28. package/dist/web/v2/components/history/RequestDetailContent.d.ts +1 -7
  29. package/dist/web/v2/components/history/RequestDetailModal.d.ts +2 -6
  30. package/dist/web/v2/components/layout/CardSection.d.ts +3 -2
  31. package/dist/web/v2/components/layout/TabbedPage.d.ts +8 -0
  32. package/dist/web/v2/components/logs/LogGroupDetailModal.d.ts +3 -6
  33. package/dist/web/v2/components/primitives/SortableTable.d.ts +14 -20
  34. package/dist/web/v2/components/primitives/TableCells.d.ts +10 -0
  35. package/dist/web/v2/components/registries/RegistryListEditor.d.ts +21 -0
  36. package/dist/web/v2/components/requests/timeline/RequestTimeline.d.ts +2 -10
  37. package/dist/web/v2/components/requests/timeline/RequestTimelineFilters.d.ts +9 -3
  38. package/dist/web/v2/components/requests/timeline/RequestTimelineRow.d.ts +1 -8
  39. package/dist/web/v2/components/schema/SchemaTreeView.d.ts +1 -1
  40. package/dist/web/v2/components/sockets/SocketEventDetailModal.d.ts +1 -4
  41. package/dist/web/v2/components/stats/ChartRow.d.ts +12 -0
  42. package/dist/web/v2/components/stats/SummaryStats.d.ts +10 -0
  43. package/dist/web/v2/components/tags/CacheStateChip.d.ts +7 -0
  44. package/dist/web/v2/components/tags/LogLevelChip.d.ts +2 -1
  45. package/dist/web/v2/hooks/useInfiniteItems.d.ts +16 -0
  46. package/dist/web/v2/hooks/useOptions.d.ts +6 -0
  47. package/dist/web/v2/hooks/useQueryState.d.ts +1 -7
  48. package/dist/web/v2/pages/SettingsPage.d.ts +1 -0
  49. package/dist/web/v2/registries/genericRegistry.d.ts +14 -0
  50. package/dist/web/v2/registries/optionRegistries.d.ts +12 -0
  51. package/dist/web/v2/stores/modalStore.d.ts +41 -0
  52. package/dist/web/v2/types/types.requestLog.d.ts +22 -0
  53. package/dist/web/v2/utils/dates.d.ts +1 -0
  54. package/package.json +5 -7
  55. package/dist/web/v2/components/cache/CacheTraceChart.d.ts +0 -6
  56. package/dist/web/v2/components/cache/cacheChartRegistry.d.ts +0 -1
  57. package/dist/web/v2/components/endpoints/EndpointVolumeChart.d.ts +0 -8
  58. package/dist/web/v2/components/history/RequestTable.d.ts +0 -11
  59. package/dist/web/v2/components/logs/LogsTable.d.ts +0 -11
  60. package/dist/web/v2/components/requests/timeline/RequestTimelineEventMiniCard.d.ts +0 -13
  61. package/dist/web/v2/components/sockets/SocketEventsTable.d.ts +0 -12
  62. package/dist/web/v2/registries/logLevelRegistry.d.ts +0 -27
@@ -0,0 +1,6 @@
1
+ type CacheGroupModalProps = {
2
+ open: boolean;
3
+ groupId: string | null;
4
+ };
5
+ export default function CacheGroupModal({ open, groupId, }: CacheGroupModalProps): import("react/jsx-runtime").JSX.Element | null;
6
+ export {};
@@ -0,0 +1 @@
1
+ export default function CacheGroupsSection(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import type { CacheGroupSummary } from './cacheUtils.js';
2
+ type Props = {
3
+ groups: CacheGroupSummary[];
4
+ onGroupSelect: (groupId: string | null) => void;
5
+ };
6
+ export default function CacheGroupsTable({ groups, onGroupSelect }: Props): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,6 @@
1
+ type CacheKeyDetailModalProps = {
2
+ open: boolean;
3
+ cacheKey: string | null;
4
+ };
5
+ export default function CacheKeyDetailModal({ open, cacheKey, }: CacheKeyDetailModalProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,6 @@
1
+ import type { CacheTraceType } from '../../types/types.cacheLog.js';
2
+ type CacheKeyTimelineChartProps = {
3
+ traces: CacheTraceType[];
4
+ };
5
+ export default function CacheKeyTimelineChart({ traces, }: CacheKeyTimelineChartProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -1,6 +1,6 @@
1
- import type { ChartData } from 'chart.js';
2
- import '../cache/cacheChartRegistry.js';
3
- export type CacheKeysChartProps = {
4
- data: ChartData<'line'> | null;
1
+ import type { CacheKeyTimelinePoint } from './cacheUtils.js';
2
+ type CacheKeysChartProps = {
3
+ data: CacheKeyTimelinePoint[] | null;
5
4
  };
6
5
  export default function CacheKeysChart({ data }: CacheKeysChartProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { ReactNode } from 'react';
2
+ type CacheLinkProps = {
3
+ children: ReactNode;
4
+ onClick: () => void;
5
+ color?: 'primary' | 'text.primary';
6
+ };
7
+ export default function CacheLink({ children, onClick, color, }: CacheLinkProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,6 @@
1
+ import type { CacheTraceType } from '../../types/types.cacheLog.js';
2
+ type CacheTraceDetailModalProps = {
3
+ trace: CacheTraceType | null;
4
+ };
5
+ export default function CacheTraceDetailModal({ trace, }: CacheTraceDetailModalProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,54 @@
1
+ import type { CacheLogType } from '../../types/types.cacheLog.js';
2
+ import { type CacheGroupSummary } from './cacheUtils.js';
3
+ import { type CacheEntryState } from './cacheStateUtils.js';
4
+ export type HistogramBucket = {
5
+ label: string;
6
+ count: number;
7
+ };
8
+ export type CacheEntriesInsights = {
9
+ groupSummaries: CacheGroupSummary[];
10
+ totalKeys: number;
11
+ totalSize: number;
12
+ ttlCount: number;
13
+ ttlSum: number;
14
+ expiredKeys: number;
15
+ expiredSize: number;
16
+ stateCounts: Record<CacheEntryState, number>;
17
+ topGroupsByKeyCount: Array<{
18
+ label: string;
19
+ count: number;
20
+ }>;
21
+ topGroupsBySize: Array<{
22
+ label: string;
23
+ size: number;
24
+ }>;
25
+ };
26
+ export declare function buildCacheInsights(entries: CacheLogType[], now?: number): {
27
+ groupSummaries: {
28
+ groupId: string | null;
29
+ count: number;
30
+ lastSeen: number;
31
+ sampleKey: string | undefined;
32
+ totalSize: number;
33
+ avgTtl: number | undefined;
34
+ expiredCount: number;
35
+ expiredRatio: number;
36
+ }[];
37
+ totalKeys: number;
38
+ totalSize: number;
39
+ ttlCount: number;
40
+ ttlSum: number;
41
+ expiredKeys: number;
42
+ expiredSize: number;
43
+ stateCounts: Record<CacheEntryState, number>;
44
+ topGroupsByKeyCount: {
45
+ label: string;
46
+ count: number;
47
+ }[];
48
+ topGroupsBySize: {
49
+ label: string;
50
+ size: number;
51
+ }[];
52
+ };
53
+ export declare function buildTtlHistogram(entries: CacheLogType[]): HistogramBucket[];
54
+ export declare function buildSizeHistogram(entries: CacheLogType[]): HistogramBucket[];
@@ -0,0 +1,9 @@
1
+ import type { CacheLogType } from '../../types/types.cacheLog.js';
2
+ export type CacheEntryState = 'warm' | 'expired' | 'cold';
3
+ type CacheEntryStateDetails = {
4
+ state: CacheEntryState;
5
+ expiresAt?: number;
6
+ };
7
+ export declare function getCacheEntryState(entry: Pick<CacheLogType, 'value' | 'ttlMs' | 'setAt' | 'updatedAt' | 'createdAt'>, now?: number): CacheEntryStateDetails;
8
+ export declare function getCacheEntryStateLabel(state: CacheEntryState): "Cold" | "Expired" | "Warm";
9
+ export {};
@@ -1,10 +1,33 @@
1
- import type { ChartData } from 'chart.js';
2
- import { CacheOperation, type CacheLogType, type CacheTraceType } from '../../types/types.cacheLog.js';
3
1
  import { type SelectionState } from '../../types/filterTypes.js';
2
+ import { CacheOperation, type CacheLogType, type CacheTraceType } from '../../types/types.cacheLog.js';
4
3
  export declare const CACHE_OPERATIONS: CacheOperation[];
5
4
  export type CacheOperationSelection = Record<CacheOperation, SelectionState>;
6
5
  export declare const DEFAULT_OPERATION_SELECTION: CacheOperationSelection;
7
6
  export declare function cycleSelectionState(prev: SelectionState): SelectionState;
8
7
  export declare function matchesOperationSelection(operation: CacheOperation | undefined, selection: CacheOperationSelection): boolean;
9
- export declare function buildCacheHitMissChartData(entries: CacheLogType[]): ChartData<'line'> | null;
10
- export declare function buildTraceTimelineChartData(traces: CacheTraceType[]): ChartData<'bar' | 'line'> | null;
8
+ export type CacheKeyTimelinePoint = {
9
+ label: string;
10
+ timestamp: number;
11
+ count: number;
12
+ };
13
+ export declare function buildCacheHitMissChartData(entries: CacheLogType[]): CacheKeyTimelinePoint[] | null;
14
+ export type CacheTraceTimelinePoint = {
15
+ label: string;
16
+ timestamp: number;
17
+ duration: number;
18
+ size: number;
19
+ operation: CacheOperation;
20
+ key?: string;
21
+ };
22
+ export declare function buildTraceTimelineChartData(traces: CacheTraceType[]): CacheTraceTimelinePoint[] | null;
23
+ export declare function deriveCacheGroupId(key?: string | null): string | null;
24
+ export type CacheGroupSummary = {
25
+ groupId: string | null;
26
+ count: number;
27
+ lastSeen: number;
28
+ sampleKey?: string;
29
+ totalSize?: number;
30
+ avgTtl?: number;
31
+ expiredCount?: number;
32
+ expiredRatio?: number;
33
+ };
@@ -1,8 +1,6 @@
1
- import { type EndpointTabKey } from '../../utils/endpoints.js';
2
1
  type EndpointDetailPanelProps = {
3
- endpointId?: string | null;
4
- activeTab?: EndpointTabKey;
5
- onTabChange?: (tab: EndpointTabKey) => void;
2
+ endpointId?: string;
3
+ showHeader?: boolean;
6
4
  };
7
- export default function EndpointDetailPanel({ endpointId, activeTab, onTabChange, }: EndpointDetailPanelProps): import("react/jsx-runtime").JSX.Element;
5
+ export default function EndpointDetailPanel({ endpointId, showHeader, }: EndpointDetailPanelProps): import("react/jsx-runtime").JSX.Element;
8
6
  export {};
@@ -1,8 +1,7 @@
1
1
  import { ReactNode } from 'react';
2
- type EmptyStateProps = {
2
+ export type EmptyStateProps = {
3
3
  title: string;
4
4
  description?: string;
5
5
  action?: ReactNode;
6
6
  };
7
7
  export default function EmptyState({ title, description, action, }: EmptyStateProps): import("react/jsx-runtime").JSX.Element;
8
- export {};
@@ -1,7 +1,6 @@
1
- type ErrorStateProps = {
1
+ export type ErrorStateProps = {
2
2
  message?: string;
3
3
  onRetry?: () => void;
4
4
  details?: string;
5
5
  };
6
6
  export default function ErrorState({ message, onRetry, details, }: ErrorStateProps): import("react/jsx-runtime").JSX.Element;
7
- export {};
@@ -1,5 +1,4 @@
1
- type LoadingStateProps = {
1
+ export type LoadingStateProps = {
2
2
  variant?: 'table' | 'inline' | 'full';
3
3
  };
4
4
  export default function LoadingState({ variant, }: LoadingStateProps): import("react/jsx-runtime").JSX.Element;
5
- export {};
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { EmptyStateProps } from './EmptyState';
3
+ import { ErrorStateProps } from './ErrorState';
4
+ import { LoadingStateProps } from './LoadingState';
5
+ export type StateHandlerProps<T> = {
6
+ loading?: LoadingStateProps;
7
+ isLoading?: boolean;
8
+ error?: ErrorStateProps | null;
9
+ emptyFallback: EmptyStateProps;
10
+ data?: T;
11
+ children?: (data: T) => React.ReactNode;
12
+ };
13
+ export default function StateHandler<T>({ isLoading, loading, error, children, emptyFallback, data, }: StateHandlerProps<T>): string | number | boolean | import("react/jsx-runtime").JSX.Element | Iterable<React.ReactNode> | null | undefined;
@@ -1,14 +1,12 @@
1
- import type { InfiniteData } from '@tanstack/react-query';
2
1
  import { ReactNode } from 'react';
2
+ import { StateHandlerProps } from '../feedback/StateHandler';
3
3
  export type FeedPaginationProps<TItem> = {
4
- data?: InfiniteData<any>;
5
4
  items?: TItem[];
6
- fetchNextPage: () => Promise<unknown>;
5
+ fetchNextPage?: () => Promise<unknown>;
7
6
  hasNextPage?: boolean;
8
7
  isFetchingNextPage?: boolean;
9
8
  pageSize?: number;
10
- isLoading: boolean;
11
- extractItems?: (page: any) => TItem[];
12
9
  children: (items: TItem[]) => ReactNode;
10
+ stateHandler?: Omit<StateHandlerProps<TItem[]>, 'children' | 'data'>;
13
11
  };
14
- export default function FeedPagination<TItem>({ data, items: providedItems, fetchNextPage, hasNextPage, isFetchingNextPage, pageSize, isLoading, extractItems, children, }: FeedPaginationProps<TItem>): import("react/jsx-runtime").JSX.Element;
12
+ export default function FeedPagination<TItem>({ items, fetchNextPage, hasNextPage, isFetchingNextPage, pageSize, children, stateHandler, }: FeedPaginationProps<TItem>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,30 @@
1
+ import type { InfiniteData } from '@tanstack/react-query';
2
+ import type { StateHandlerProps } from '../feedback/StateHandler.js';
3
+ import { TableColumnDefinitions } from '../primitives/SortableTable.js';
4
+ type SortQuery = {
5
+ orderBy?: string;
6
+ orderDirection?: 'asc' | 'desc';
7
+ pageSize?: number;
8
+ };
9
+ type EndpointPagination<TItem> = {
10
+ data?: InfiniteData<{
11
+ out?: TItem[];
12
+ }>;
13
+ fetchNextPage?: () => Promise<unknown>;
14
+ hasNextPage?: boolean;
15
+ isFetchingNextPage?: boolean;
16
+ };
17
+ export type FeedSortableTableProps<TItem extends Record<string, unknown>, Q extends SortQuery> = {
18
+ columns: TableColumnDefinitions<TItem>;
19
+ onRowClick?: (row: TItem, index: number) => void;
20
+ rowKey?: (row: TItem, index: number) => React.Key;
21
+ size?: 'small' | 'medium';
22
+ query: Q;
23
+ setQuery: (next: Q | ((prev: Q) => Q)) => void;
24
+ items?: TItem[];
25
+ endpoint?: EndpointPagination<TItem>;
26
+ reverse?: boolean;
27
+ stateHandler?: Omit<StateHandlerProps<TItem[]>, 'children' | 'data'>;
28
+ };
29
+ export default function FeedSortableTable<TItem extends Record<string, unknown>, Q extends SortQuery>({ columns, onRowClick, rowKey, size, query, setQuery, items: itemsProp, endpoint, reverse, stateHandler, }: FeedSortableTableProps<TItem, Q>): import("react/jsx-runtime").JSX.Element;
30
+ export {};
@@ -0,0 +1,12 @@
1
+ import type { CacheLogType, CacheTraceType } from '../../types/types.cacheLog';
2
+ import type { LogType } from '../../types/types.log';
3
+ import type { RequestLogType } from '../../types/types.requestLog';
4
+ import type { SocketEventType } from '../../types/types.socket';
5
+ import type { CacheGroupSummary } from '../cache/cacheUtils';
6
+ import type { TableColumnDefinitions } from '../primitives/SortableTable';
7
+ export declare const requestLogTableColumns: TableColumnDefinitions<RequestLogType>;
8
+ export declare const appLogTableColumns: TableColumnDefinitions<LogType>;
9
+ export declare const socketEventTableColumns: TableColumnDefinitions<SocketEventType>;
10
+ export declare const cacheLogTableColumns: TableColumnDefinitions<CacheLogType>;
11
+ export declare const cacheTraceTableColumns: TableColumnDefinitions<CacheTraceType>;
12
+ export declare const cacheGroupTableColumns: TableColumnDefinitions<CacheGroupSummary>;
@@ -1,15 +1,15 @@
1
- import { type ReactNode, type RefObject } from 'react';
1
+ import { SxProps } from '@mui/material/styles';
2
+ import { type ReactNode } from 'react';
2
3
  import type { BaseFilter, FilterMode } from '../../types/filterTypes.js';
3
4
  type BaseFilterBarProps = {
4
5
  value: BaseFilter;
5
6
  onChange: (next: BaseFilter) => void;
6
- children?: (mode: FilterMode) => ReactNode;
7
- searchInputRef?: RefObject<HTMLInputElement>;
7
+ children?: (mode: FilterMode, nonExcludableVisual: SxProps | undefined) => ReactNode;
8
8
  tagOptions?: string[];
9
9
  groupOptions?: string[];
10
10
  onRefresh?: () => void;
11
11
  refreshing?: boolean;
12
12
  searchOnly?: boolean;
13
13
  };
14
- export default function BaseFilterBar({ value, onChange, children, searchInputRef, tagOptions, groupOptions, onRefresh, refreshing, searchOnly, }: BaseFilterBarProps): import("react/jsx-runtime").JSX.Element;
14
+ export default function BaseFilterBar({ value, onChange, children, tagOptions, groupOptions, onRefresh, refreshing, searchOnly, }: BaseFilterBarProps): import("react/jsx-runtime").JSX.Element;
15
15
  export {};
@@ -0,0 +1,9 @@
1
+ type OptionPickerProps = {
2
+ options: string[];
3
+ selection: string[];
4
+ onChange: (next: string[]) => void;
5
+ label: string;
6
+ placeholder?: string;
7
+ };
8
+ declare function OptionPicker({ options, selection, onChange, placeholder, label, }: OptionPickerProps): import("react/jsx-runtime").JSX.Element;
9
+ export default OptionPicker;
@@ -0,0 +1,6 @@
1
+ import type { BucketRequestsPayload } from '../../stores/modalStore.js';
2
+ type BucketRequestsModalProps = {
3
+ bucket: BucketRequestsPayload | null;
4
+ };
5
+ export default function BucketRequestsModal({ bucket, }: BucketRequestsModalProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -1,13 +1,7 @@
1
- import type { CacheTraceType } from '../../types/types.cacheLog.js';
2
- import type { LogType } from '../../types/types.log.js';
3
1
  import type { RequestLogType } from '../../types/types.requestLog.js';
4
- import type { SocketEventType } from '../../types/types.socket.js';
5
2
  type RequestDetailContentProps = {
6
3
  request: RequestLogType;
7
- caches?: CacheTraceType[];
8
- logs?: LogType[];
9
- sockets?: SocketEventType[];
10
4
  onReplay?: (request: RequestLogType) => void;
11
5
  };
12
- export default function RequestDetailContent({ request, caches, logs, sockets, onReplay, }: RequestDetailContentProps): import("react/jsx-runtime").JSX.Element;
6
+ export default function RequestDetailContent({ request, onReplay, }: RequestDetailContentProps): import("react/jsx-runtime").JSX.Element;
13
7
  export {};
@@ -1,12 +1,8 @@
1
1
  import type { RequestLogType } from '../../types/types.requestLog.js';
2
2
  type RequestDetailModalProps = {
3
3
  open: boolean;
4
- request: RequestLogType | null;
5
- requestId?: string | null;
6
- onClose: () => void;
4
+ requestId?: string;
7
5
  onReplay?: (request: RequestLogType) => void;
8
- onPrev?: () => void;
9
- onNext?: () => void;
10
6
  };
11
- export default function RequestDetailModal({ open, request, requestId, onClose, onReplay, onPrev, onNext, }: RequestDetailModalProps): import("react/jsx-runtime").JSX.Element;
7
+ export default function RequestDetailModal({ open, requestId, onReplay, }: RequestDetailModalProps): import("react/jsx-runtime").JSX.Element;
12
8
  export {};
@@ -2,8 +2,9 @@ import { ReactNode } from 'react';
2
2
  type CardSectionProps = {
3
3
  title?: string;
4
4
  actions?: ReactNode;
5
- children: ReactNode;
5
+ children?: ReactNode;
6
6
  flex?: number;
7
+ bgcolor?: string;
7
8
  };
8
- export default function CardSection({ title, actions, children, flex, }: CardSectionProps): import("react/jsx-runtime").JSX.Element;
9
+ export default function CardSection({ title, actions, children, flex, bgcolor, }: CardSectionProps): import("react/jsx-runtime").JSX.Element;
9
10
  export {};
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ type TabbedPageProps<T extends string> = {
3
+ tabs: Record<T, React.ReactNode>;
4
+ initialTab: NoInfer<T>;
5
+ onTabChange?: (tab: T) => void;
6
+ };
7
+ declare function TabbedPage<T extends string>({ initialTab, tabs, onTabChange, }: TabbedPageProps<T>): import("react/jsx-runtime").JSX.Element;
8
+ export default TabbedPage;
@@ -1,13 +1,10 @@
1
1
  import type { LogType } from '../../types/types.log.js';
2
2
  type LogGroupDetailModalProps = {
3
3
  open: boolean;
4
- groupId?: string | null;
4
+ groupId?: string;
5
5
  baseQuery: Record<string, unknown>;
6
- triggerLog?: LogType | null;
7
- onClose: () => void;
8
- onPrev?: () => void;
9
- onNext?: () => void;
6
+ triggerLog?: LogType;
10
7
  };
11
- export default function LogGroupDetailModal({ open, groupId, baseQuery, triggerLog, onClose, onPrev, onNext, }: LogGroupDetailModalProps): import("react/jsx-runtime").JSX.Element;
8
+ export default function LogGroupDetailModal({ open, groupId, baseQuery, triggerLog, }: LogGroupDetailModalProps): import("react/jsx-runtime").JSX.Element;
12
9
  export declare function renderMessage(log: LogType): string;
13
10
  export {};
@@ -1,29 +1,23 @@
1
- import type { ReactNode } from 'react';
2
1
  import type { TableCellProps } from '@mui/material';
3
2
  export type SortDirection = 'asc' | 'desc' | 'none';
4
- type ColumnDefinition = {
5
- key: string;
3
+ export type TableColumnDefinition<T extends Record<string, unknown>, K extends keyof T & string> = {
4
+ key: K;
6
5
  label?: string;
7
6
  align?: TableCellProps['align'];
8
- width?: number | string;
7
+ width?: number;
8
+ render?: (value: T[K], entry: T) => React.ReactNode;
9
9
  };
10
- export type RawColumnDefinition = string | ColumnDefinition;
11
- type RowRendererParams<T> = {
12
- row: T;
13
- rowIndex: number;
14
- cells: ReactNode[];
15
- };
16
- type SortableTableProps<T extends Record<string, unknown>> = {
17
- data: T[];
18
- columns: RawColumnDefinition[];
19
- sortBy?: string | null;
10
+ export type TableColumnDefinitions<T extends Record<string, unknown>> = Partial<{
11
+ [K in keyof T & string]: TableColumnDefinition<T, K>;
12
+ }>;
13
+ export type SortableTableProps<T extends Record<string, unknown>> = {
14
+ items: T[];
15
+ columns: TableColumnDefinitions<T>;
16
+ sortBy?: string | undefined;
20
17
  sortDirection?: SortDirection;
21
- onSortChange?: (newSortBy: string | null, newSortDirection: SortDirection) => void;
22
- renderCell?: (row: T, columnKey: string) => ReactNode;
18
+ onSortChange?: (newSortBy: string | undefined, newSortDirection: SortDirection) => void;
23
19
  rowKey?: (row: T, index: number) => React.Key;
20
+ onRowClick?: (row: T, index: number) => void;
24
21
  size?: 'small' | 'medium';
25
- stickyHeader?: boolean;
26
- rowRenderer?: (params: RowRendererParams<T>) => ReactNode;
27
22
  };
28
- export default function SortableTable<T extends Record<string, unknown>>({ data, columns, sortBy, sortDirection, onSortChange, renderCell, rowRenderer, rowKey, size, stickyHeader, }: SortableTableProps<T>): import("react/jsx-runtime").JSX.Element;
29
- export {};
23
+ export default function SortableTable<T extends Record<string, unknown>>({ items, columns, sortBy, sortDirection, onSortChange, onRowClick, rowKey, size, }: SortableTableProps<T>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ import type { TypographyProps } from '@mui/material';
2
+ import type { ReactNode } from 'react';
3
+ type MonospaceCellProps = {
4
+ children: ReactNode;
5
+ color?: TypographyProps['color'];
6
+ noWrap?: boolean;
7
+ sx?: TypographyProps['sx'];
8
+ };
9
+ export declare function MonospaceCell({ children, color, noWrap, sx, }: MonospaceCellProps): import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,21 @@
1
+ import type { Registry } from '../../registries/genericRegistry.js';
2
+ export type ParseResult<T> = {
3
+ value: T;
4
+ error?: undefined;
5
+ } | {
6
+ value?: undefined;
7
+ error: string;
8
+ };
9
+ type RegistryListEditorProps<T> = {
10
+ registry: Registry<T[]>;
11
+ formatItem: (item: T) => string;
12
+ parseItem: (raw: string) => ParseResult<T>;
13
+ description?: string;
14
+ itemPlaceholder?: string;
15
+ addLabel?: string;
16
+ addPlaceholder?: string;
17
+ emptyMessage?: string;
18
+ getItemKey?: (item: T, index: number) => string;
19
+ };
20
+ export default function RegistryListEditor<T>({ registry, formatItem, parseItem, description, itemPlaceholder, addLabel, addPlaceholder, emptyMessage, getItemKey, }: RegistryListEditorProps<T>): import("react/jsx-runtime").JSX.Element;
21
+ export {};
@@ -1,13 +1,5 @@
1
- import type { CacheTraceType } from '../../../types/types.cacheLog.js';
2
- import type { LogType } from '../../../types/types.log.js';
3
- import type { SocketEventType } from '../../../types/types.socket.js';
4
- import type { RequestTimelineEvent } from './types.js';
5
1
  type RequestTimelineProps = {
6
- events: RequestTimelineEvent[];
7
- onSelectCache?: (cache: CacheTraceType) => void;
8
- onSelectLog?: (log: LogType) => void;
9
- onSelectSocket?: (socket: SocketEventType) => void;
10
- onSelectCacheKey?: (key: string) => void;
2
+ requestId: string;
11
3
  };
12
- export default function RequestTimeline({ events, onSelectCache, onSelectLog, onSelectSocket, onSelectCacheKey, }: RequestTimelineProps): import("react/jsx-runtime").JSX.Element;
4
+ export default function RequestTimeline({ requestId }: RequestTimelineProps): import("react/jsx-runtime").JSX.Element;
13
5
  export {};
@@ -2,19 +2,25 @@ import type { RequestTimelineEvent } from './types.js';
2
2
  export type TimelineFilterState = {
3
3
  kinds: Set<RequestTimelineEvent['kind']>;
4
4
  logLevels: Set<string>;
5
- cacheTypes: Set<string>;
5
+ cacheOperations: Set<string>;
6
6
  socketDirections: Set<string>;
7
7
  };
8
8
  export type TimelineFilterOptions = {
9
9
  kinds: RequestTimelineEvent['kind'][];
10
10
  logLevels: string[];
11
- cacheTypes: string[];
11
+ cacheOperations: string[];
12
12
  socketDirections: string[];
13
13
  };
14
+ export type TimelineFilterStats = {
15
+ logLevelCounts: Record<string, number>;
16
+ cacheOperationCounts: Record<string, number>;
17
+ socketDirectionCounts: Record<string, number>;
18
+ };
14
19
  type RequestTimelineFiltersProps = {
15
20
  available: TimelineFilterOptions;
16
21
  value: TimelineFilterState;
17
22
  onChange: (next: TimelineFilterState) => void;
23
+ stats: TimelineFilterStats;
18
24
  };
19
- export default function RequestTimelineFilters({ available, value, onChange, }: RequestTimelineFiltersProps): import("react/jsx-runtime").JSX.Element | null;
25
+ export default function RequestTimelineFilters({ available, value, onChange, stats, }: RequestTimelineFiltersProps): import("react/jsx-runtime").JSX.Element | null;
20
26
  export {};
@@ -1,15 +1,8 @@
1
- import type { CacheTraceType } from '../../../types/types.cacheLog.js';
2
- import type { LogType } from '../../../types/types.log.js';
3
- import type { SocketEventType } from '../../../types/types.socket.js';
4
1
  import type { RequestTimelineEvent } from './types.js';
5
2
  type RequestTimelineRowProps = {
6
3
  event: RequestTimelineEvent;
7
4
  deltaMs: number | null;
8
5
  maxDeltaMs: number;
9
- onSelectCache?: (cache: CacheTraceType) => void;
10
- onSelectLog?: (log: LogType) => void;
11
- onSelectSocket?: (socket: SocketEventType) => void;
12
- onSelectCacheKey?: (key: string) => void;
13
6
  };
14
- export default function RequestTimelineRow({ event, deltaMs, maxDeltaMs, onSelectCache, onSelectLog, onSelectSocket, onSelectCacheKey, }: RequestTimelineRowProps): import("react/jsx-runtime").JSX.Element;
7
+ export default function RequestTimelineRow({ event, deltaMs, maxDeltaMs, }: RequestTimelineRowProps): import("react/jsx-runtime").JSX.Element;
15
8
  export {};
@@ -3,5 +3,5 @@ type SchemaTreeViewProps = {
3
3
  schema?: SerializableSchema;
4
4
  title?: string;
5
5
  };
6
- export default function SchemaTreeView({ schema, title, }: SchemaTreeViewProps): import("react/jsx-runtime").JSX.Element;
6
+ export default function SchemaTreeView({ schema, title }: SchemaTreeViewProps): import("react/jsx-runtime").JSX.Element;
7
7
  export {};
@@ -1,9 +1,6 @@
1
1
  import type { SocketEventType } from '../../types/types.socket.js';
2
2
  type SocketEventDetailModalProps = {
3
- open: boolean;
4
3
  event: SocketEventType | null;
5
- onClose: () => void;
6
- onOpenGroup?: (groupId: string) => void;
7
4
  };
8
- export default function SocketEventDetailModal({ open, event, onClose, onOpenGroup, }: SocketEventDetailModalProps): import("react/jsx-runtime").JSX.Element;
5
+ export default function SocketEventDetailModal({ event, }: SocketEventDetailModalProps): import("react/jsx-runtime").JSX.Element;
9
6
  export {};
@@ -0,0 +1,12 @@
1
+ type ChartProps = {
2
+ title: string;
3
+ subText?: string;
4
+ chart: React.ReactNode;
5
+ actions?: React.ReactNode;
6
+ };
7
+ type ChartRowProps = {
8
+ charts: ChartProps[];
9
+ height?: number;
10
+ };
11
+ export declare function ChartRow({ charts, height }: ChartRowProps): import("react/jsx-runtime").JSX.Element;
12
+ export {};
@@ -0,0 +1,10 @@
1
+ export type Stat = {
2
+ label: string;
3
+ value: string | number;
4
+ detail?: string;
5
+ };
6
+ type SummaryStatsProps = {
7
+ stats: Stat[];
8
+ };
9
+ export declare const SummaryStats: ({ stats }: SummaryStatsProps) => import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { ChipProps } from '@mui/material';
2
+ import type { CacheEntryState } from '../../components/cache/cacheStateUtils.js';
3
+ type CacheStateChipProps = {
4
+ state: CacheEntryState;
5
+ } & Omit<ChipProps, 'label'>;
6
+ export default function CacheStateChip({ state, sx, ...rest }: CacheStateChipProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -1,9 +1,10 @@
1
1
  import { ChipSelectionState } from './chip.types';
2
2
  type LogLevelChipProps = {
3
3
  level: string;
4
+ color?: string;
4
5
  state?: ChipSelectionState;
5
6
  selected?: boolean;
6
7
  onClick?: () => void;
7
8
  };
8
- export default function LogLevelChip({ level, state, selected, onClick, }: LogLevelChipProps): import("react/jsx-runtime").JSX.Element;
9
+ export default function LogLevelChip({ level, color, state, selected, onClick, }: LogLevelChipProps): import("react/jsx-runtime").JSX.Element;
9
10
  export {};
@@ -0,0 +1,16 @@
1
+ import type { InfiniteData } from '@tanstack/react-query';
2
+ import { ErrorStateProps } from '../components/feedback/ErrorState';
3
+ export type UseInfiniteItemsOptions<TPage extends {
4
+ out?: any[];
5
+ }> = {
6
+ reverse?: boolean;
7
+ fallback?: TPage['out'];
8
+ };
9
+ export declare function useInfiniteItems<TPage extends {
10
+ out?: any[];
11
+ }>(data?: InfiniteData<TPage>, options?: UseInfiniteItemsOptions<TPage>): TPage['out'];
12
+ export declare function useExportRows<T, R>(items: T[], getRow: (item: T) => R): R[];
13
+ export declare function useErrorMessage(error: unknown, args: {
14
+ messageFallback: string;
15
+ refetch: () => void;
16
+ }): ErrorStateProps | null;