@industry-theme/principal-view-panels 0.9.1 → 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/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/panels.bundle.js +89 -0
- package/dist/panels.bundle.js.map +1 -1
- package/package.json +7 -1
- package/dist/components/TraceDetails.stories.d.ts +0 -38
- package/dist/components/TraceDetails.stories.d.ts.map +0 -1
- package/dist/components/TraceList.stories.d.ts +0 -63
- package/dist/components/TraceList.stories.d.ts.map +0 -1
- package/dist/demo/DemoApp.stories.d.ts +0 -71
- package/dist/demo/DemoApp.stories.d.ts.map +0 -1
- package/dist/panels/AgentMonitoringGapExplainerPanel.stories.d.ts +0 -12
- package/dist/panels/AgentMonitoringGapExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/BookAnalogyExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/BookAnalogyExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/CanvasEditorPanel.stories.d.ts +0 -32
- package/dist/panels/CanvasEditorPanel.stories.d.ts.map +0 -1
- package/dist/panels/CanvasTypesExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/CanvasTypesExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/ChangeImpactAnalysisExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/ChangeImpactAnalysisExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/ControlTowerIntegration.stories.d.ts +0 -12
- package/dist/panels/ControlTowerIntegration.stories.d.ts.map +0 -1
- package/dist/panels/EventControllerPanel.stories.d.ts +0 -53
- package/dist/panels/EventControllerPanel.stories.d.ts.map +0 -1
- package/dist/panels/EventRecorderPanel.stories.d.ts +0 -12
- package/dist/panels/EventRecorderPanel.stories.d.ts.map +0 -1
- package/dist/panels/EventRecordingIntegration.stories.d.ts +0 -21
- package/dist/panels/EventRecordingIntegration.stories.d.ts.map +0 -1
- package/dist/panels/HierarchicalCanvasCompositionExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/HierarchicalCanvasCompositionExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/LibraryAnchoringExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/LibraryAnchoringExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/MonorepoComposabilityExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/MonorepoComposabilityExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/MultipleCanvasViewsExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/MultipleCanvasViewsExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/ProductionDebuggingExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/ProductionDebuggingExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/RuntimeValidationExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/RuntimeValidationExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/ScenarioEnumerationExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/ScenarioEnumerationExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/StoryboardListPanel.stories.d.ts +0 -103
- package/dist/panels/StoryboardListPanel.stories.d.ts.map +0 -1
- package/dist/panels/SystemStoriesSolutionExplainerPanel.stories.d.ts +0 -12
- package/dist/panels/SystemStoriesSolutionExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/TelemetryCoverageExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/TelemetryCoverageExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/TestVsProductionExplainerPanel.stories.d.ts +0 -33
- package/dist/panels/TestVsProductionExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/TraceDetailsPanel.stories.d.ts +0 -36
- package/dist/panels/TraceDetailsPanel.stories.d.ts.map +0 -1
- package/dist/panels/TraceListPanel.stories.d.ts +0 -27
- package/dist/panels/TraceListPanel.stories.d.ts.map +0 -1
- package/dist/panels/TraceViewerIntegration.stories.d.ts +0 -28
- package/dist/panels/TraceViewerIntegration.stories.d.ts.map +0 -1
- package/dist/panels/WhyNowAgentRevolutionExplainerPanel.stories.d.ts +0 -12
- package/dist/panels/WhyNowAgentRevolutionExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/WorkflowExplainerPanel.stories.d.ts +0 -23
- package/dist/panels/WorkflowExplainerPanel.stories.d.ts.map +0 -1
- package/dist/panels/WorkflowScenariosPanel.stories.d.ts +0 -119
- package/dist/panels/WorkflowScenariosPanel.stories.d.ts.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -42,6 +42,8 @@ export { WhyNowAgentRevolutionExplainerPanel } from './panels/WhyNowAgentRevolut
|
|
|
42
42
|
export type { WhyNowAgentRevolutionExplainerPanelProps } from './panels/WhyNowAgentRevolutionExplainerPanel';
|
|
43
43
|
export { PanelFileSystemAdapter } from './adapters/PanelFileSystemAdapter';
|
|
44
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';
|
|
45
47
|
/**
|
|
46
48
|
* Export array of panel definitions.
|
|
47
49
|
* This is the required export for panel extensions.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
package/dist/panels.bundle.js
CHANGED
|
@@ -56365,11 +56365,93 @@ const EventControllerPanel = ({
|
|
|
56365
56365
|
] });
|
|
56366
56366
|
};
|
|
56367
56367
|
EventControllerPanel.displayName = "EventControllerPanel";
|
|
56368
|
+
function getAttributeStringValue(attr) {
|
|
56369
|
+
return attr.value.stringValue;
|
|
56370
|
+
}
|
|
56371
|
+
function getAttributeValue(attributes, key) {
|
|
56372
|
+
const attr = attributes == null ? void 0 : attributes.find((a) => a.key === key);
|
|
56373
|
+
if (!attr) return void 0;
|
|
56374
|
+
return attr.value.stringValue ?? attr.value.intValue ?? attr.value.doubleValue ?? attr.value.boolValue;
|
|
56375
|
+
}
|
|
56376
|
+
function flattenResourceAttributes(resource) {
|
|
56377
|
+
const result = {};
|
|
56378
|
+
for (const attr of resource.attributes) {
|
|
56379
|
+
const value = getAttributeStringValue(attr);
|
|
56380
|
+
if (value !== void 0) {
|
|
56381
|
+
result[attr.key] = value;
|
|
56382
|
+
}
|
|
56383
|
+
}
|
|
56384
|
+
return result;
|
|
56385
|
+
}
|
|
56386
|
+
function parseNanoTime(nanos) {
|
|
56387
|
+
return parseInt(nanos, 10) / 1e6;
|
|
56388
|
+
}
|
|
56368
56389
|
function getSpanDuration(span) {
|
|
56369
56390
|
const start2 = parseInt(span.startTimeUnixNano, 10);
|
|
56370
56391
|
const end = parseInt(span.endTimeUnixNano, 10);
|
|
56371
56392
|
return (end - start2) / 1e6;
|
|
56372
56393
|
}
|
|
56394
|
+
function getServiceName(resource) {
|
|
56395
|
+
const attr = resource.attributes.find((a) => a.key === "service.name");
|
|
56396
|
+
return attr == null ? void 0 : attr.value.stringValue;
|
|
56397
|
+
}
|
|
56398
|
+
function groupSpansByTrace(resourceSpans) {
|
|
56399
|
+
const traceMap = /* @__PURE__ */ new Map();
|
|
56400
|
+
for (const resourceSpan of resourceSpans.resourceSpans) {
|
|
56401
|
+
for (const scopeSpan of resourceSpan.scopeSpans) {
|
|
56402
|
+
for (const span of scopeSpan.spans) {
|
|
56403
|
+
if (!traceMap.has(span.traceId)) {
|
|
56404
|
+
traceMap.set(span.traceId, {
|
|
56405
|
+
spans: [],
|
|
56406
|
+
resource: resourceSpan.resource
|
|
56407
|
+
});
|
|
56408
|
+
}
|
|
56409
|
+
traceMap.get(span.traceId).spans.push(span);
|
|
56410
|
+
}
|
|
56411
|
+
}
|
|
56412
|
+
}
|
|
56413
|
+
const traces = [];
|
|
56414
|
+
for (const [traceId, { spans, resource }] of traceMap) {
|
|
56415
|
+
const rootSpan = spans.find((s) => !s.parentSpanId || s.parentSpanId === "");
|
|
56416
|
+
const startTime = Math.min(...spans.map((s) => parseNanoTime(s.startTimeUnixNano)));
|
|
56417
|
+
const endTime = Math.max(...spans.map((s) => parseNanoTime(s.endTimeUnixNano)));
|
|
56418
|
+
const hasErrors = spans.some(
|
|
56419
|
+
(s) => {
|
|
56420
|
+
var _a, _b;
|
|
56421
|
+
return ((_a = s.status) == null ? void 0 : _a.code) === "STATUS_CODE_ERROR" || ((_b = s.events) == null ? void 0 : _b.some((e) => e.name === "exception"));
|
|
56422
|
+
}
|
|
56423
|
+
);
|
|
56424
|
+
const storyboardId = getAttributeValue(resource.attributes, "pv.storyboard.id");
|
|
56425
|
+
const storyboardName = getAttributeValue(resource.attributes, "pv.storyboard.name");
|
|
56426
|
+
const workflowId = getAttributeValue(resource.attributes, "pv.workflow.id");
|
|
56427
|
+
const workflowName = getAttributeValue(resource.attributes, "pv.workflow.name");
|
|
56428
|
+
const scenarioId = getAttributeValue(resource.attributes, "pv.scenario.id");
|
|
56429
|
+
const scenarioName = getAttributeValue(resource.attributes, "pv.scenario.name");
|
|
56430
|
+
const matchedWorkflow = storyboardId && storyboardName ? {
|
|
56431
|
+
storyboardId,
|
|
56432
|
+
storyboardName,
|
|
56433
|
+
workflowId,
|
|
56434
|
+
workflowName,
|
|
56435
|
+
scenarioId,
|
|
56436
|
+
scenarioName
|
|
56437
|
+
} : void 0;
|
|
56438
|
+
traces.push({
|
|
56439
|
+
traceId,
|
|
56440
|
+
spans,
|
|
56441
|
+
rootSpan,
|
|
56442
|
+
serviceName: getServiceName(resource),
|
|
56443
|
+
startTime,
|
|
56444
|
+
endTime,
|
|
56445
|
+
duration: endTime - startTime,
|
|
56446
|
+
spanCount: spans.length,
|
|
56447
|
+
hasErrors,
|
|
56448
|
+
resource,
|
|
56449
|
+
matchedWorkflow
|
|
56450
|
+
});
|
|
56451
|
+
}
|
|
56452
|
+
traces.sort((a, b) => b.startTime - a.startTime);
|
|
56453
|
+
return traces;
|
|
56454
|
+
}
|
|
56373
56455
|
const TraceDetails = ({ spans, theme }) => {
|
|
56374
56456
|
const [expandedSpans, setExpandedSpans] = useState(() => {
|
|
56375
56457
|
return new Set(spans.map((span) => span.spanId));
|
|
@@ -64623,10 +64705,17 @@ export {
|
|
|
64623
64705
|
WhyNowAgentRevolutionExplainerPanel,
|
|
64624
64706
|
WorkflowExplainerPanel,
|
|
64625
64707
|
WorkflowScenariosPanel,
|
|
64708
|
+
flattenResourceAttributes,
|
|
64626
64709
|
focusNodeTool,
|
|
64710
|
+
getAttributeStringValue,
|
|
64711
|
+
getAttributeValue,
|
|
64712
|
+
getServiceName,
|
|
64713
|
+
getSpanDuration,
|
|
64714
|
+
groupSpansByTrace,
|
|
64627
64715
|
onPackageLoad,
|
|
64628
64716
|
onPackageUnload,
|
|
64629
64717
|
panels,
|
|
64718
|
+
parseNanoTime,
|
|
64630
64719
|
principalViewPanelTools,
|
|
64631
64720
|
principalViewPanelToolsMetadata,
|
|
64632
64721
|
resetViewTool,
|