@industry-theme/principal-view-panels 0.9.2 → 0.9.3
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.
- package/dist/adapters/PanelFileSystemAdapter.d.ts +88 -0
- package/dist/adapters/PanelFileSystemAdapter.d.ts.map +1 -0
- package/dist/components/TraceDetails.d.ts +18 -0
- package/dist/components/TraceDetails.d.ts.map +1 -0
- package/dist/components/TraceList.d.ts +23 -0
- package/dist/components/TraceList.d.ts.map +1 -0
- package/dist/components/index.d.ts +5 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/demo/DemoApp.d.ts +13 -0
- package/dist/demo/DemoApp.d.ts.map +1 -0
- package/dist/demo/api/browser.d.ts +15 -0
- package/dist/demo/api/browser.d.ts.map +1 -0
- package/dist/demo/api/handlers.d.ts +8 -0
- package/dist/demo/api/handlers.d.ts.map +1 -0
- package/dist/demo/components/BookDetails/BookDetails.d.ts +16 -0
- package/dist/demo/components/BookDetails/BookDetails.d.ts.map +1 -0
- package/dist/demo/components/CardCatalog/CardCatalog.d.ts +16 -0
- package/dist/demo/components/CardCatalog/CardCatalog.d.ts.map +1 -0
- package/dist/demo/components/ReadingRoom/ReadingRoom.d.ts +17 -0
- package/dist/demo/components/ReadingRoom/ReadingRoom.d.ts.map +1 -0
- package/dist/demo/data/mockData.d.ts +33 -0
- package/dist/demo/data/mockData.d.ts.map +1 -0
- package/dist/demo/data/types.d.ts +166 -0
- package/dist/demo/data/types.d.ts.map +1 -0
- package/dist/index.d.ts +67 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/mocks/otelMocks.d.ts +76 -0
- package/dist/mocks/otelMocks.d.ts.map +1 -0
- package/dist/mocks/panelContext.d.ts +31 -0
- package/dist/mocks/panelContext.d.ts.map +1 -0
- package/dist/mocks/vvfConfigs.d.ts +32 -0
- package/dist/mocks/vvfConfigs.d.ts.map +1 -0
- package/dist/panels/AgentMonitoringGapExplainerPanel.d.ts +6 -0
- package/dist/panels/AgentMonitoringGapExplainerPanel.d.ts.map +1 -0
- package/dist/panels/BookAnalogyExplainerPanel.d.ts +7 -0
- package/dist/panels/BookAnalogyExplainerPanel.d.ts.map +1 -0
- package/dist/panels/CanvasEditorPanel.d.ts +29 -0
- package/dist/panels/CanvasEditorPanel.d.ts.map +1 -0
- package/dist/panels/CanvasTypesExplainerPanel.d.ts +7 -0
- package/dist/panels/CanvasTypesExplainerPanel.d.ts.map +1 -0
- package/dist/panels/ChangeImpactAnalysisExplainerPanel.d.ts +7 -0
- package/dist/panels/ChangeImpactAnalysisExplainerPanel.d.ts.map +1 -0
- package/dist/panels/EventControllerPanel.d.ts +32 -0
- package/dist/panels/EventControllerPanel.d.ts.map +1 -0
- package/dist/panels/EventRecorderPanel.d.ts +54 -0
- package/dist/panels/EventRecorderPanel.d.ts.map +1 -0
- package/dist/panels/HierarchicalCanvasCompositionExplainerPanel.d.ts +7 -0
- package/dist/panels/HierarchicalCanvasCompositionExplainerPanel.d.ts.map +1 -0
- package/dist/panels/LibraryAnchoringExplainerPanel.d.ts +7 -0
- package/dist/panels/LibraryAnchoringExplainerPanel.d.ts.map +1 -0
- package/dist/panels/MonorepoComposabilityExplainerPanel.d.ts +7 -0
- package/dist/panels/MonorepoComposabilityExplainerPanel.d.ts.map +1 -0
- package/dist/panels/MultipleCanvasViewsExplainerPanel.d.ts +7 -0
- package/dist/panels/MultipleCanvasViewsExplainerPanel.d.ts.map +1 -0
- package/dist/panels/ProductionDebuggingExplainerPanel.d.ts +7 -0
- package/dist/panels/ProductionDebuggingExplainerPanel.d.ts.map +1 -0
- package/dist/panels/RuntimeValidationExplainerPanel.d.ts +7 -0
- package/dist/panels/RuntimeValidationExplainerPanel.d.ts.map +1 -0
- package/dist/panels/ScenarioEnumerationExplainerPanel.d.ts +7 -0
- package/dist/panels/ScenarioEnumerationExplainerPanel.d.ts.map +1 -0
- package/dist/panels/StoryboardListPanel.d.ts +16 -0
- package/dist/panels/StoryboardListPanel.d.ts.map +1 -0
- package/dist/panels/SystemStoriesSolutionExplainerPanel.d.ts +6 -0
- package/dist/panels/SystemStoriesSolutionExplainerPanel.d.ts.map +1 -0
- package/dist/panels/TelemetryCoverageExplainerPanel.d.ts +7 -0
- package/dist/panels/TelemetryCoverageExplainerPanel.d.ts.map +1 -0
- package/dist/panels/TestVsProductionExplainerPanel.d.ts +7 -0
- package/dist/panels/TestVsProductionExplainerPanel.d.ts.map +1 -0
- package/dist/panels/TraceDetailsPanel.d.ts +25 -0
- package/dist/panels/TraceDetailsPanel.d.ts.map +1 -0
- package/dist/panels/TraceListPanel.d.ts +15 -0
- package/dist/panels/TraceListPanel.d.ts.map +1 -0
- package/dist/panels/WhyNowAgentRevolutionExplainerPanel.d.ts +6 -0
- package/dist/panels/WhyNowAgentRevolutionExplainerPanel.d.ts.map +1 -0
- package/dist/panels/WorkflowExplainerPanel.d.ts +7 -0
- package/dist/panels/WorkflowExplainerPanel.d.ts.map +1 -0
- package/dist/panels/WorkflowScenariosPanel.d.ts +52 -0
- package/dist/panels/WorkflowScenariosPanel.d.ts.map +1 -0
- package/dist/panels/canvas-list/components/CanvasCard.d.ts +13 -0
- package/dist/panels/canvas-list/components/CanvasCard.d.ts.map +1 -0
- package/dist/panels/canvas-list/hooks/useCanvasData.d.ts +21 -0
- package/dist/panels/canvas-list/hooks/useCanvasData.d.ts.map +1 -0
- package/dist/panels/canvas-list/hooks/useCanvasWorkflowData.d.ts +25 -0
- package/dist/panels/canvas-list/hooks/useCanvasWorkflowData.d.ts.map +1 -0
- package/dist/panels/execution-viewer/EventNodeMapper.d.ts +46 -0
- package/dist/panels/execution-viewer/EventNodeMapper.d.ts.map +1 -0
- package/dist/panels/execution-viewer/ExecutionStats.d.ts +11 -0
- package/dist/panels/execution-viewer/ExecutionStats.d.ts.map +1 -0
- package/dist/panels/execution-viewer/ScenarioDetailsPanel.d.ts +62 -0
- package/dist/panels/execution-viewer/ScenarioDetailsPanel.d.ts.map +1 -0
- package/dist/panels/execution-viewer/SourceFileList.d.ts +11 -0
- package/dist/panels/execution-viewer/SourceFileList.d.ts.map +1 -0
- package/dist/panels/execution-viewer/WorkflowRenderer.d.ts +29 -0
- package/dist/panels/execution-viewer/WorkflowRenderer.d.ts.map +1 -0
- package/dist/panels/execution-viewer/WorkflowTemplatePanel.d.ts +17 -0
- package/dist/panels/execution-viewer/WorkflowTemplatePanel.d.ts.map +1 -0
- package/dist/panels/execution-viewer/executionUtils.d.ts +47 -0
- package/dist/panels/execution-viewer/executionUtils.d.ts.map +1 -0
- package/dist/panels/execution-viewer/workflow-converter.d.ts +44 -0
- package/dist/panels/execution-viewer/workflow-converter.d.ts.map +1 -0
- package/dist/panels/principal-view/ConfigLoader.d.ts +43 -0
- package/dist/panels/principal-view/ConfigLoader.d.ts.map +1 -0
- package/dist/panels/principal-view/EmptyStateContent.d.ts +12 -0
- package/dist/panels/principal-view/EmptyStateContent.d.ts.map +1 -0
- package/dist/panels/principal-view/ErrorStateContent.d.ts +14 -0
- package/dist/panels/principal-view/ErrorStateContent.d.ts.map +1 -0
- package/dist/stubs/codebase-quality-lenses-stub.d.ts +26 -0
- package/dist/stubs/codebase-quality-lenses-stub.d.ts.map +1 -0
- package/dist/tools/index.d.ts +32 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/otel.d.ts +1 -0
- package/dist/types/otel.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/types/index.ts +0 -36
- package/dist/types/otel.js +0 -99
- package/dist/types/otel.ts +0 -218
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Panel FileSystem Adapter
|
|
3
|
+
*
|
|
4
|
+
* Implements FileSystemAdapter using the panel's fileTree slice for directory operations
|
|
5
|
+
* and a file content cache that can be populated via the panel's readFile action.
|
|
6
|
+
*
|
|
7
|
+
* This adapter bridges the synchronous FileSystemAdapter interface used by
|
|
8
|
+
* ConfigurationLoader and LibraryLoader with the async panel context.
|
|
9
|
+
*/
|
|
10
|
+
import type { FileSystemAdapter, FileStats } from '@principal-ai/repository-abstraction';
|
|
11
|
+
/**
|
|
12
|
+
* File entry from the fileTree slice
|
|
13
|
+
*/
|
|
14
|
+
export interface FileTreeEntry {
|
|
15
|
+
path?: string;
|
|
16
|
+
relativePath?: string;
|
|
17
|
+
name?: string;
|
|
18
|
+
type?: 'file' | 'directory';
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Options for creating the adapter
|
|
22
|
+
*/
|
|
23
|
+
export interface PanelFileSystemAdapterOptions {
|
|
24
|
+
/** Files from the fileTree slice */
|
|
25
|
+
fileTreeFiles: FileTreeEntry[];
|
|
26
|
+
/** Base path for the repository */
|
|
27
|
+
basePath: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* FileSystemAdapter implementation for panel context.
|
|
31
|
+
*
|
|
32
|
+
* Uses fileTree slice data for directory listing and existence checks.
|
|
33
|
+
* File content must be pre-loaded into the cache via `setFileContent()`.
|
|
34
|
+
*/
|
|
35
|
+
export declare class PanelFileSystemAdapter implements FileSystemAdapter {
|
|
36
|
+
private fileTreeFiles;
|
|
37
|
+
private basePath;
|
|
38
|
+
private fileContentCache;
|
|
39
|
+
constructor(options: PanelFileSystemAdapterOptions);
|
|
40
|
+
/**
|
|
41
|
+
* Set file content in the cache.
|
|
42
|
+
* Call this after loading file content via the panel's readFile action.
|
|
43
|
+
*/
|
|
44
|
+
setFileContent(path: string, content: string): void;
|
|
45
|
+
/**
|
|
46
|
+
* Check if file content is cached
|
|
47
|
+
*/
|
|
48
|
+
hasFileContent(path: string): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Clear the file content cache
|
|
51
|
+
*/
|
|
52
|
+
clearCache(): void;
|
|
53
|
+
exists(path: string): Promise<boolean>;
|
|
54
|
+
readFile(path: string): Promise<string>;
|
|
55
|
+
writeFile(_path: string, _content: string): Promise<void>;
|
|
56
|
+
deleteFile(_path: string): Promise<void>;
|
|
57
|
+
readBinaryFile(_path: string): Promise<Uint8Array>;
|
|
58
|
+
writeBinaryFile(_path: string, _content: Uint8Array): Promise<void>;
|
|
59
|
+
createDir(_path: string): Promise<void>;
|
|
60
|
+
readDir(path: string): Promise<string[]>;
|
|
61
|
+
deleteDir(_path: string): Promise<void>;
|
|
62
|
+
rename(_from: string, _to: string): Promise<void>;
|
|
63
|
+
stat(_path: string): Promise<FileStats>;
|
|
64
|
+
isDirectory(path: string): Promise<boolean>;
|
|
65
|
+
join(...paths: string[]): string;
|
|
66
|
+
relative(from: string, to: string): string;
|
|
67
|
+
dirname(path: string): string;
|
|
68
|
+
isAbsolute(path: string): boolean;
|
|
69
|
+
basename(path: string, ext?: string): string;
|
|
70
|
+
extname(path: string): string;
|
|
71
|
+
normalize(path: string): string;
|
|
72
|
+
homedir(): string;
|
|
73
|
+
normalizeRepositoryPath(_inputPath: string): string;
|
|
74
|
+
findProjectRoot(_inputPath: string): string;
|
|
75
|
+
getRepositoryName(repositoryPath: string): string;
|
|
76
|
+
private normalizePath;
|
|
77
|
+
private toRelativePath;
|
|
78
|
+
/**
|
|
79
|
+
* Get list of files that need to be loaded for a directory.
|
|
80
|
+
* Use this to pre-fetch file contents before using the loaders.
|
|
81
|
+
*/
|
|
82
|
+
getFilesInDirectory(dirPath: string): string[];
|
|
83
|
+
/**
|
|
84
|
+
* Get the full path for a relative path
|
|
85
|
+
*/
|
|
86
|
+
getFullPath(relativePath: string): string;
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=PanelFileSystemAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelFileSystemAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/PanelFileSystemAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { Theme } from '@principal-ade/industry-theme';
|
|
3
|
+
import type { OtelSpan } from '../types/otel';
|
|
4
|
+
export interface TraceDetailsProps {
|
|
5
|
+
spans: OtelSpan[];
|
|
6
|
+
theme: Theme;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* TraceDetails - Simple view of trace spans
|
|
10
|
+
*
|
|
11
|
+
* Shows spans in a tree structure with key information:
|
|
12
|
+
* - Span name
|
|
13
|
+
* - Duration
|
|
14
|
+
* - Status (success/error)
|
|
15
|
+
* - Attributes (expandable)
|
|
16
|
+
*/
|
|
17
|
+
export declare const TraceDetails: React.FC<TraceDetailsProps>;
|
|
18
|
+
//# sourceMappingURL=TraceDetails.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TraceDetails.d.ts","sourceRoot":"","sources":["../../src/components/TraceDetails.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAG9C,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;CACd;AAQD;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAwTpD,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { Theme } from '@principal-ade/industry-theme';
|
|
3
|
+
import type { TraceInfo } from '../types/otel';
|
|
4
|
+
export interface TraceListProps {
|
|
5
|
+
traces: TraceInfo[];
|
|
6
|
+
theme: Theme;
|
|
7
|
+
onTraceClick?: (trace: TraceInfo) => void;
|
|
8
|
+
selectedTraceId?: string;
|
|
9
|
+
showSearch?: boolean;
|
|
10
|
+
emptyMessage?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* TraceList - Displays a list of OpenTelemetry traces
|
|
14
|
+
*
|
|
15
|
+
* Features:
|
|
16
|
+
* - Displays trace metadata (ID, service, duration, span count, status)
|
|
17
|
+
* - Search/filter functionality
|
|
18
|
+
* - Click to select traces
|
|
19
|
+
* - Visual indicators for errors
|
|
20
|
+
* - Responsive layout
|
|
21
|
+
*/
|
|
22
|
+
export declare const TraceList: React.FC<TraceListProps>;
|
|
23
|
+
//# sourceMappingURL=TraceList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TraceList.d.ts","sourceRoot":"","sources":["../../src/components/TraceList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAEjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAqa9C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './styles/library-theme.css';
|
|
3
|
+
import './styles/demo-layout.css';
|
|
4
|
+
/**
|
|
5
|
+
* Main Demo Application Component
|
|
6
|
+
* Implements the three-panel library layout:
|
|
7
|
+
* 1. Card Catalog (left sidebar) - File tree navigation
|
|
8
|
+
* 2. Reading Room (center) - Main canvas view
|
|
9
|
+
* 3. Book Details (bottom) - Details panel with tabs
|
|
10
|
+
*/
|
|
11
|
+
export declare const DemoApp: React.FC;
|
|
12
|
+
export default DemoApp;
|
|
13
|
+
//# sourceMappingURL=DemoApp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DemoApp.d.ts","sourceRoot":"","sources":["../../src/demo/DemoApp.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,OAAO,4BAA4B,CAAC;AACpC,OAAO,0BAA0B,CAAC;AAGlC;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAoF3B,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MSW browser setup for the demo
|
|
3
|
+
*
|
|
4
|
+
* This worker is automatically initialized in .storybook/preview.ts for Storybook.
|
|
5
|
+
* For standalone usage:
|
|
6
|
+
* 1. Install: npm install msw --save-dev
|
|
7
|
+
* 2. Run: npx msw init public/ --save
|
|
8
|
+
* 3. Import worker and call: worker.start()
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Create the MSW worker with our handlers
|
|
12
|
+
* This is exported and started globally in Storybook's preview.ts
|
|
13
|
+
*/
|
|
14
|
+
export declare const worker: import("msw/browser").SetupWorker;
|
|
15
|
+
//# sourceMappingURL=browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../src/demo/api/browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH;;;GAGG;AACH,eAAO,MAAM,MAAM,mCAA2B,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MSW (Mock Service Worker) handlers for the demo API
|
|
3
|
+
*
|
|
4
|
+
* To use MSW, install it with: npm install msw --save-dev
|
|
5
|
+
* Then run: npx msw init public/ --save
|
|
6
|
+
*/
|
|
7
|
+
export declare const handlers: import("msw").HttpHandler[];
|
|
8
|
+
//# sourceMappingURL=handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/demo/api/handlers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH,eAAO,MAAM,QAAQ,6BA6KpB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { Canvas, OTELTrace } from '../../data/types';
|
|
3
|
+
import './BookDetails.css';
|
|
4
|
+
interface BookDetailsProps {
|
|
5
|
+
canvas: Canvas | null;
|
|
6
|
+
trace: OTELTrace | null;
|
|
7
|
+
traceId: string | null;
|
|
8
|
+
selectedNodeId: string | null;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Book Details Component
|
|
12
|
+
* Bottom panel with tabs for trace timeline, node details, events, and coverage
|
|
13
|
+
*/
|
|
14
|
+
export declare const BookDetails: React.FC<BookDetailsProps>;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=BookDetails.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BookDetails.d.ts","sourceRoot":"","sources":["../../../../src/demo/components/BookDetails/BookDetails.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAgB,MAAM,kBAAkB,CAAC;AACxE,OAAO,mBAAmB,CAAC;AAE3B,UAAU,gBAAgB;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAID;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA4QlD,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './CardCatalog.css';
|
|
3
|
+
interface CardCatalogProps {
|
|
4
|
+
onSelectCanvas: (canvasId: string) => void;
|
|
5
|
+
onSelectTrace: (traceId: string) => void;
|
|
6
|
+
selectedCanvasId: string | null;
|
|
7
|
+
selectedTraceId: string | null;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Card Catalog Component
|
|
11
|
+
* Left sidebar with file tree navigation for canvases and traces
|
|
12
|
+
* Styled like a wooden card catalog with drawer sections
|
|
13
|
+
*/
|
|
14
|
+
export declare const CardCatalog: React.FC<CardCatalogProps>;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=CardCatalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardCatalog.d.ts","sourceRoot":"","sources":["../../../../src/demo/components/CardCatalog/CardCatalog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,mBAAmB,CAAC;AAE3B,UAAU,gBAAgB;IACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA4IlD,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { Canvas, OTELTrace } from '../../data/types';
|
|
3
|
+
import './ReadingRoom.css';
|
|
4
|
+
interface ReadingRoomProps {
|
|
5
|
+
canvas: Canvas | null;
|
|
6
|
+
trace: OTELTrace | null;
|
|
7
|
+
onSelectNode: (nodeId: string) => void;
|
|
8
|
+
selectedNodeId: string | null;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Reading Room Component
|
|
12
|
+
* Main canvas view with aged paper background
|
|
13
|
+
* Displays canvas diagram with optional trace overlay
|
|
14
|
+
*/
|
|
15
|
+
export declare const ReadingRoom: React.FC<ReadingRoomProps>;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=ReadingRoom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadingRoom.d.ts","sourceRoot":"","sources":["../../../../src/demo/components/ReadingRoom/ReadingRoom.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,mBAAmB,CAAC;AAE3B,UAAU,gBAAgB;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAyMlD,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mock data for the demo UI
|
|
3
|
+
*/
|
|
4
|
+
import type { Canvas, CanvasMetadata, OTELTrace, TraceMetadata, CoverageData, ImpactAnalysis, FileTreeNode } from './types';
|
|
5
|
+
/**
|
|
6
|
+
* Canvas metadata list
|
|
7
|
+
*/
|
|
8
|
+
export declare const canvasMetadataList: CanvasMetadata[];
|
|
9
|
+
/**
|
|
10
|
+
* Canvases by ID
|
|
11
|
+
*/
|
|
12
|
+
export declare const canvases: Record<string, Canvas>;
|
|
13
|
+
/**
|
|
14
|
+
* Trace metadata list
|
|
15
|
+
*/
|
|
16
|
+
export declare const traceMetadataList: TraceMetadata[];
|
|
17
|
+
/**
|
|
18
|
+
* Traces by ID
|
|
19
|
+
*/
|
|
20
|
+
export declare const traces: Record<string, OTELTrace>;
|
|
21
|
+
/**
|
|
22
|
+
* Mock coverage data
|
|
23
|
+
*/
|
|
24
|
+
export declare const mockCoverageData: CoverageData;
|
|
25
|
+
/**
|
|
26
|
+
* Mock impact analysis data
|
|
27
|
+
*/
|
|
28
|
+
export declare const mockImpactAnalysis: Record<string, ImpactAnalysis>;
|
|
29
|
+
/**
|
|
30
|
+
* Mock file tree
|
|
31
|
+
*/
|
|
32
|
+
export declare const mockFileTree: FileTreeNode[];
|
|
33
|
+
//# sourceMappingURL=mockData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mockData.d.ts","sourceRoot":"","sources":["../../../src/demo/data/mockData.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,MAAM,EACN,cAAc,EACd,SAAS,EACT,aAAa,EACb,YAAY,EACZ,cAAc,EACd,YAAY,EACb,MAAM,SAAS,CAAC;AAMjB;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,cAAc,EAyB9C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAE3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,aAAa,EAmB5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAG5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,YA0C9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CA2C7D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,YAAY,EAqFtC,CAAC"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for the demo UI
|
|
3
|
+
*/
|
|
4
|
+
export interface OTELAttribute {
|
|
5
|
+
key: string;
|
|
6
|
+
value: {
|
|
7
|
+
stringValue?: string;
|
|
8
|
+
intValue?: string | number;
|
|
9
|
+
doubleValue?: number;
|
|
10
|
+
boolValue?: boolean;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export interface OTELEvent {
|
|
14
|
+
timeUnixNano: string;
|
|
15
|
+
name: string;
|
|
16
|
+
attributes: OTELAttribute[];
|
|
17
|
+
}
|
|
18
|
+
export interface OTELStatus {
|
|
19
|
+
code: 'STATUS_CODE_OK' | 'STATUS_CODE_ERROR' | 'STATUS_CODE_UNSET';
|
|
20
|
+
message?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface OTELSpan {
|
|
23
|
+
traceId: string;
|
|
24
|
+
spanId: string;
|
|
25
|
+
parentSpanId?: string;
|
|
26
|
+
name: string;
|
|
27
|
+
kind: string;
|
|
28
|
+
startTimeUnixNano: string;
|
|
29
|
+
endTimeUnixNano: string;
|
|
30
|
+
attributes: OTELAttribute[];
|
|
31
|
+
events?: OTELEvent[];
|
|
32
|
+
status: OTELStatus;
|
|
33
|
+
}
|
|
34
|
+
export interface OTELScopeSpan {
|
|
35
|
+
scope: {
|
|
36
|
+
name: string;
|
|
37
|
+
version: string;
|
|
38
|
+
};
|
|
39
|
+
spans: OTELSpan[];
|
|
40
|
+
}
|
|
41
|
+
export interface OTELResourceSpan {
|
|
42
|
+
resource: {
|
|
43
|
+
attributes: OTELAttribute[];
|
|
44
|
+
};
|
|
45
|
+
scopeSpans: OTELScopeSpan[];
|
|
46
|
+
}
|
|
47
|
+
export interface OTELTrace {
|
|
48
|
+
resourceSpans: OTELResourceSpan[];
|
|
49
|
+
}
|
|
50
|
+
export interface CanvasNode {
|
|
51
|
+
id: string;
|
|
52
|
+
nodeType: string;
|
|
53
|
+
label: string;
|
|
54
|
+
position: {
|
|
55
|
+
x: number;
|
|
56
|
+
y: number;
|
|
57
|
+
};
|
|
58
|
+
pv: {
|
|
59
|
+
eventRef?: string;
|
|
60
|
+
otel: {
|
|
61
|
+
resourceMatch: Record<string, string>;
|
|
62
|
+
spanMatch: Record<string, string>;
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
export interface CanvasEdge {
|
|
67
|
+
id: string;
|
|
68
|
+
from: string;
|
|
69
|
+
to: string;
|
|
70
|
+
label: string;
|
|
71
|
+
}
|
|
72
|
+
export interface Canvas {
|
|
73
|
+
pv: {
|
|
74
|
+
name: string;
|
|
75
|
+
version: string;
|
|
76
|
+
description: string;
|
|
77
|
+
};
|
|
78
|
+
nodes: CanvasNode[];
|
|
79
|
+
edges: CanvasEdge[];
|
|
80
|
+
}
|
|
81
|
+
export interface CanvasMetadata {
|
|
82
|
+
id: string;
|
|
83
|
+
path: string;
|
|
84
|
+
name: string;
|
|
85
|
+
type: 'otel.canvas' | 'canvas';
|
|
86
|
+
parent: string | null;
|
|
87
|
+
lastModified: string;
|
|
88
|
+
}
|
|
89
|
+
export interface TraceMetadata {
|
|
90
|
+
traceId: string;
|
|
91
|
+
timestamp: string;
|
|
92
|
+
duration: number;
|
|
93
|
+
status: 'success' | 'failed' | 'slow';
|
|
94
|
+
serviceName: string;
|
|
95
|
+
rootSpan: string;
|
|
96
|
+
spanCount: number;
|
|
97
|
+
}
|
|
98
|
+
export interface LibraryNodeComponent {
|
|
99
|
+
label: string;
|
|
100
|
+
description: string;
|
|
101
|
+
sources: string[];
|
|
102
|
+
visual: {
|
|
103
|
+
shape: string;
|
|
104
|
+
color: string;
|
|
105
|
+
icon: string;
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
export interface LibraryEdgeComponent {
|
|
109
|
+
label: string;
|
|
110
|
+
style: string;
|
|
111
|
+
color: string;
|
|
112
|
+
}
|
|
113
|
+
export interface Library {
|
|
114
|
+
version: string;
|
|
115
|
+
nodeComponents: Record<string, LibraryNodeComponent>;
|
|
116
|
+
edgeComponents: Record<string, LibraryEdgeComponent>;
|
|
117
|
+
}
|
|
118
|
+
export interface CoverageData {
|
|
119
|
+
overall: {
|
|
120
|
+
expected: number;
|
|
121
|
+
actual: number;
|
|
122
|
+
percentage: number;
|
|
123
|
+
};
|
|
124
|
+
byComponent: Array<{
|
|
125
|
+
type: string;
|
|
126
|
+
expected: number;
|
|
127
|
+
actual: number;
|
|
128
|
+
percentage: number;
|
|
129
|
+
missingFiles: string[];
|
|
130
|
+
}>;
|
|
131
|
+
}
|
|
132
|
+
export interface ImpactAnalysis {
|
|
133
|
+
nodeId: string;
|
|
134
|
+
canvasId: string;
|
|
135
|
+
analysis: {
|
|
136
|
+
downstream: Array<{
|
|
137
|
+
component: string;
|
|
138
|
+
traffic: string;
|
|
139
|
+
impact: 'low' | 'medium' | 'high';
|
|
140
|
+
userFacing: boolean;
|
|
141
|
+
}>;
|
|
142
|
+
upstream: Array<{
|
|
143
|
+
component: string;
|
|
144
|
+
required: 'always' | 'conditional' | 'optional';
|
|
145
|
+
failureRate: number;
|
|
146
|
+
}>;
|
|
147
|
+
criticalPath: {
|
|
148
|
+
isBottleneck: boolean;
|
|
149
|
+
percentageOfTotal: number;
|
|
150
|
+
avgDuration: number;
|
|
151
|
+
};
|
|
152
|
+
blastRadius: {
|
|
153
|
+
requestsPerMinute: number;
|
|
154
|
+
affectedWorkflows: number;
|
|
155
|
+
revenueAtRisk: number;
|
|
156
|
+
};
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
export interface FileTreeNode {
|
|
160
|
+
path: string;
|
|
161
|
+
type: 'directory' | 'file';
|
|
162
|
+
hasTelemetry?: boolean;
|
|
163
|
+
coveragePercentage?: number;
|
|
164
|
+
children?: FileTreeNode[];
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/demo/data/types.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { PanelDefinition } from './types';
|
|
2
|
+
export { EventControllerPanel } from './panels/EventControllerPanel';
|
|
3
|
+
export type { EventControllerPanelProps, PlaybackState, PlaybackStatus } from './panels/EventControllerPanel';
|
|
4
|
+
export { CanvasEditorPanel } from './panels/CanvasEditorPanel';
|
|
5
|
+
export type { CanvasEditorPanelProps } from './panels/CanvasEditorPanel';
|
|
6
|
+
export { WorkflowScenariosPanel } from './panels/WorkflowScenariosPanel';
|
|
7
|
+
export type { WorkflowScenariosPanelProps } from './panels/WorkflowScenariosPanel';
|
|
8
|
+
export { StoryboardListPanel } from './panels/StoryboardListPanel';
|
|
9
|
+
export { TraceListPanel } from './panels/TraceListPanel';
|
|
10
|
+
export { TraceDetailsPanel } from './panels/TraceDetailsPanel';
|
|
11
|
+
export { LibraryAnchoringExplainerPanel } from './panels/LibraryAnchoringExplainerPanel';
|
|
12
|
+
export type { LibraryAnchoringExplainerPanelProps } from './panels/LibraryAnchoringExplainerPanel';
|
|
13
|
+
export { WorkflowExplainerPanel } from './panels/WorkflowExplainerPanel';
|
|
14
|
+
export type { WorkflowExplainerPanelProps } from './panels/WorkflowExplainerPanel';
|
|
15
|
+
export { RuntimeValidationExplainerPanel } from './panels/RuntimeValidationExplainerPanel';
|
|
16
|
+
export type { RuntimeValidationExplainerPanelProps } from './panels/RuntimeValidationExplainerPanel';
|
|
17
|
+
export { TestVsProductionExplainerPanel } from './panels/TestVsProductionExplainerPanel';
|
|
18
|
+
export type { TestVsProductionExplainerPanelProps } from './panels/TestVsProductionExplainerPanel';
|
|
19
|
+
export { ScenarioEnumerationExplainerPanel } from './panels/ScenarioEnumerationExplainerPanel';
|
|
20
|
+
export type { ScenarioEnumerationExplainerPanelProps } from './panels/ScenarioEnumerationExplainerPanel';
|
|
21
|
+
export { CanvasTypesExplainerPanel } from './panels/CanvasTypesExplainerPanel';
|
|
22
|
+
export type { CanvasTypesExplainerPanelProps } from './panels/CanvasTypesExplainerPanel';
|
|
23
|
+
export { MonorepoComposabilityExplainerPanel } from './panels/MonorepoComposabilityExplainerPanel';
|
|
24
|
+
export type { MonorepoComposabilityExplainerPanelProps } from './panels/MonorepoComposabilityExplainerPanel';
|
|
25
|
+
export { HierarchicalCanvasCompositionExplainerPanel } from './panels/HierarchicalCanvasCompositionExplainerPanel';
|
|
26
|
+
export type { HierarchicalCanvasCompositionExplainerPanelProps } from './panels/HierarchicalCanvasCompositionExplainerPanel';
|
|
27
|
+
export { BookAnalogyExplainerPanel } from './panels/BookAnalogyExplainerPanel';
|
|
28
|
+
export type { BookAnalogyExplainerPanelProps } from './panels/BookAnalogyExplainerPanel';
|
|
29
|
+
export { ProductionDebuggingExplainerPanel } from './panels/ProductionDebuggingExplainerPanel';
|
|
30
|
+
export type { ProductionDebuggingExplainerPanelProps } from './panels/ProductionDebuggingExplainerPanel';
|
|
31
|
+
export { MultipleCanvasViewsExplainerPanel } from './panels/MultipleCanvasViewsExplainerPanel';
|
|
32
|
+
export type { MultipleCanvasViewsExplainerPanelProps } from './panels/MultipleCanvasViewsExplainerPanel';
|
|
33
|
+
export { TelemetryCoverageExplainerPanel } from './panels/TelemetryCoverageExplainerPanel';
|
|
34
|
+
export type { TelemetryCoverageExplainerPanelProps } from './panels/TelemetryCoverageExplainerPanel';
|
|
35
|
+
export { ChangeImpactAnalysisExplainerPanel } from './panels/ChangeImpactAnalysisExplainerPanel';
|
|
36
|
+
export type { ChangeImpactAnalysisExplainerPanelProps } from './panels/ChangeImpactAnalysisExplainerPanel';
|
|
37
|
+
export { AgentMonitoringGapExplainerPanel } from './panels/AgentMonitoringGapExplainerPanel';
|
|
38
|
+
export type { AgentMonitoringGapExplainerPanelProps } from './panels/AgentMonitoringGapExplainerPanel';
|
|
39
|
+
export { SystemStoriesSolutionExplainerPanel } from './panels/SystemStoriesSolutionExplainerPanel';
|
|
40
|
+
export type { SystemStoriesSolutionExplainerPanelProps } from './panels/SystemStoriesSolutionExplainerPanel';
|
|
41
|
+
export { WhyNowAgentRevolutionExplainerPanel } from './panels/WhyNowAgentRevolutionExplainerPanel';
|
|
42
|
+
export type { WhyNowAgentRevolutionExplainerPanelProps } from './panels/WhyNowAgentRevolutionExplainerPanel';
|
|
43
|
+
export { PanelFileSystemAdapter } from './adapters/PanelFileSystemAdapter';
|
|
44
|
+
export type { FileTreeEntry, PanelFileSystemAdapterOptions } from './adapters/PanelFileSystemAdapter';
|
|
45
|
+
export type { OtelResourceSpans, OtelResourceSpan, OtelResource, OtelScopeSpan, OtelSpan, OtelAttribute, OtelAttributeValue, OtelSpanEvent, OtelSpanKind, TraceInfo, } from './types/otel';
|
|
46
|
+
export { getAttributeStringValue, getAttributeValue, flattenResourceAttributes, parseNanoTime, getSpanDuration, getServiceName, groupSpansByTrace, } from './types/otel';
|
|
47
|
+
/**
|
|
48
|
+
* Export array of panel definitions.
|
|
49
|
+
* This is the required export for panel extensions.
|
|
50
|
+
*/
|
|
51
|
+
export declare const panels: PanelDefinition[];
|
|
52
|
+
/**
|
|
53
|
+
* Optional: Called once when the entire package is loaded.
|
|
54
|
+
* Use this for package-level initialization.
|
|
55
|
+
*/
|
|
56
|
+
export declare const onPackageLoad: () => Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* Optional: Called once when the package is unloaded.
|
|
59
|
+
* Use this for package-level cleanup.
|
|
60
|
+
*/
|
|
61
|
+
export declare const onPackageUnload: () => Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* Export tools for server-safe imports.
|
|
64
|
+
* Use '@industry-theme/principal-view-panels/tools' to import without React dependencies.
|
|
65
|
+
*/
|
|
66
|
+
export { principalViewPanelTools, principalViewPanelToolsMetadata, focusNodeTool, resetViewTool, triggerEventTool, } from './tools';
|
|
67
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import type { OtelResourceSpans, OtelResource, OtelSpan, OtelAttribute, OtelSpanKind } from '../types/otel';
|
|
2
|
+
/**
|
|
3
|
+
* Create an OTEL attribute
|
|
4
|
+
*/
|
|
5
|
+
export declare function createAttribute(key: string, value: string | number | boolean): OtelAttribute;
|
|
6
|
+
/**
|
|
7
|
+
* Create a mock resource
|
|
8
|
+
*/
|
|
9
|
+
export declare function createMockResource(serviceName: string, additionalAttrs?: Record<string, string>): OtelResource;
|
|
10
|
+
/**
|
|
11
|
+
* Generate a random trace ID (Base64)
|
|
12
|
+
*/
|
|
13
|
+
export declare function generateTraceId(): string;
|
|
14
|
+
/**
|
|
15
|
+
* Generate a random span ID (Base64)
|
|
16
|
+
*/
|
|
17
|
+
export declare function generateSpanId(): string;
|
|
18
|
+
/**
|
|
19
|
+
* Get current time in nanoseconds (as string)
|
|
20
|
+
*/
|
|
21
|
+
export declare function getCurrentNanoTime(): string;
|
|
22
|
+
/**
|
|
23
|
+
* Create a mock span
|
|
24
|
+
*/
|
|
25
|
+
export declare function createMockSpan(params: {
|
|
26
|
+
name: string;
|
|
27
|
+
kind?: OtelSpanKind;
|
|
28
|
+
attributes?: Record<string, string | number | boolean>;
|
|
29
|
+
durationMs?: number;
|
|
30
|
+
traceId?: string;
|
|
31
|
+
spanId?: string;
|
|
32
|
+
parentSpanId?: string;
|
|
33
|
+
hasError?: boolean;
|
|
34
|
+
}): OtelSpan;
|
|
35
|
+
/**
|
|
36
|
+
* Create a mock ResourceSpans structure
|
|
37
|
+
*/
|
|
38
|
+
export declare function createMockResourceSpans(serviceName: string, spans: OtelSpan[]): OtelResourceSpans;
|
|
39
|
+
/**
|
|
40
|
+
* Create a mock user interaction span (click)
|
|
41
|
+
*/
|
|
42
|
+
export declare function createMockClickSpan(targetElement?: string): OtelSpan;
|
|
43
|
+
/**
|
|
44
|
+
* Create a mock API request span
|
|
45
|
+
*/
|
|
46
|
+
export declare function createMockAPISpan(params: {
|
|
47
|
+
method: string;
|
|
48
|
+
route: string;
|
|
49
|
+
statusCode?: number;
|
|
50
|
+
durationMs?: number;
|
|
51
|
+
}): OtelSpan;
|
|
52
|
+
/**
|
|
53
|
+
* Create a mock database query span
|
|
54
|
+
*/
|
|
55
|
+
export declare function createMockDBSpan(params: {
|
|
56
|
+
operation: string;
|
|
57
|
+
table: string;
|
|
58
|
+
durationMs?: number;
|
|
59
|
+
}): OtelSpan;
|
|
60
|
+
/**
|
|
61
|
+
* Generate a realistic trace (API -> DB)
|
|
62
|
+
*/
|
|
63
|
+
export declare function generateCheckoutTrace(includeWorkflowMatch?: boolean): OtelResourceSpans;
|
|
64
|
+
/**
|
|
65
|
+
* Generate a realistic authentication trace (with error)
|
|
66
|
+
*/
|
|
67
|
+
export declare function generateAuthErrorTrace(includeWorkflowMatch?: boolean): OtelResourceSpans;
|
|
68
|
+
/**
|
|
69
|
+
* Generate a complex multi-service trace
|
|
70
|
+
*/
|
|
71
|
+
export declare function generateComplexTrace(includeWorkflowMatch?: boolean): OtelResourceSpans;
|
|
72
|
+
/**
|
|
73
|
+
* Generate multiple random traces for testing
|
|
74
|
+
*/
|
|
75
|
+
export declare function generateRandomTraces(count: number): OtelResourceSpans;
|
|
76
|
+
//# sourceMappingURL=otelMocks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"otelMocks.d.ts","sourceRoot":"","sources":["../../src/mocks/otelMocks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAEjB,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,YAAY,EACb,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAC/B,aAAa,CAQf;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAC3C,YAAY,CAUd;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAIxC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAIvC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,QAAQ,CA+CX;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,QAAQ,EAAE,GAChB,iBAAiB,CAiBnB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,GAAE,MAAiB,GAAG,QAAQ,CAW9E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,QAAQ,CAcX;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,QAAQ,CAcX;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,oBAAoB,GAAE,OAAe,GAAG,iBAAiB,CAgC9F;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,oBAAoB,GAAE,OAAe,GAAG,iBAAiB,CAwB/F;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,oBAAoB,GAAE,OAAe,GAAG,iBAAiB,CA2E7F;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAqDrE"}
|