@workflow/web-shared 5.0.0-beta.2 → 5.0.0-beta.20
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/components/error-boundary.js +1 -1
- package/dist/components/event-list-view.d.ts +16 -1
- package/dist/components/event-list-view.d.ts.map +1 -1
- package/dist/components/event-list-view.js +196 -85
- package/dist/components/hook-actions.js +1 -1
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +5 -1
- package/dist/components/new-trace-viewer/components/copy-button.d.ts +9 -0
- package/dist/components/new-trace-viewer/components/copy-button.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/copy-button.js +27 -0
- package/dist/components/new-trace-viewer/components/event-list.d.ts +10 -0
- package/dist/components/new-trace-viewer/components/event-list.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/event-list.js +46 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/copy-selection.d.ts +18 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/copy-selection.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/copy-selection.js +54 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/middle-truncate.d.ts +20 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/middle-truncate.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/middle-truncate.js +81 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/truncate.d.ts +25 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/truncate.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/truncate.js +101 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/use-middle-truncate.d.ts +20 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/use-middle-truncate.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/middle-truncate/use-middle-truncate.js +114 -0
- package/dist/components/new-trace-viewer/components/span-markers.d.ts +46 -0
- package/dist/components/new-trace-viewer/components/span-markers.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/span-markers.js +85 -0
- package/dist/components/new-trace-viewer/components/split-pane.d.ts +15 -0
- package/dist/components/new-trace-viewer/components/split-pane.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/split-pane.js +105 -0
- package/dist/components/new-trace-viewer/components/timeline.d.ts +36 -0
- package/dist/components/new-trace-viewer/components/timeline.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/timeline.js +254 -0
- package/dist/components/new-trace-viewer/components/timeline.module.css +46 -0
- package/dist/components/new-trace-viewer/components/trace-viewer-skeleton.d.ts +2 -0
- package/dist/components/new-trace-viewer/components/trace-viewer-skeleton.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/trace-viewer-skeleton.js +19 -0
- package/dist/components/new-trace-viewer/components/use-row-window.d.ts +34 -0
- package/dist/components/new-trace-viewer/components/use-row-window.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/components/use-row-window.js +107 -0
- package/dist/components/new-trace-viewer/context.d.ts +15 -0
- package/dist/components/new-trace-viewer/context.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/context.js +47 -0
- package/dist/components/new-trace-viewer/icons.d.ts +6 -0
- package/dist/components/new-trace-viewer/icons.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/icons.js +15 -0
- package/dist/components/new-trace-viewer/search.d.ts +19 -0
- package/dist/components/new-trace-viewer/search.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/search.js +134 -0
- package/dist/components/new-trace-viewer/trace-viewer.d.ts +11 -0
- package/dist/components/new-trace-viewer/trace-viewer.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/trace-viewer.js +462 -0
- package/dist/components/new-trace-viewer/types.d.ts +3 -0
- package/dist/components/new-trace-viewer/types.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/types.js +2 -0
- package/dist/components/new-trace-viewer/utils.d.ts +61 -0
- package/dist/components/new-trace-viewer/utils.d.ts.map +1 -0
- package/dist/components/new-trace-viewer/utils.js +345 -0
- package/dist/components/run-trace-view.js +1 -1
- package/dist/components/sidebar/attribute-panel.d.ts.map +1 -1
- package/dist/components/sidebar/attribute-panel.js +129 -102
- package/dist/components/sidebar/attributes-block.d.ts +28 -0
- package/dist/components/sidebar/attributes-block.d.ts.map +1 -0
- package/dist/components/sidebar/attributes-block.js +81 -0
- package/dist/components/sidebar/conversation-view.js +1 -1
- package/dist/components/sidebar/copyable-data-block.d.ts +1 -0
- package/dist/components/sidebar/copyable-data-block.d.ts.map +1 -1
- package/dist/components/sidebar/copyable-data-block.js +16 -15
- package/dist/components/sidebar/detail-card.d.ts +5 -6
- package/dist/components/sidebar/detail-card.d.ts.map +1 -1
- package/dist/components/sidebar/detail-card.js +32 -16
- package/dist/components/sidebar/entity-detail-panel.d.ts +1 -3
- package/dist/components/sidebar/entity-detail-panel.d.ts.map +1 -1
- package/dist/components/sidebar/entity-detail-panel.js +17 -35
- package/dist/components/sidebar/events-list.d.ts +3 -1
- package/dist/components/sidebar/events-list.d.ts.map +1 -1
- package/dist/components/sidebar/events-list.js +36 -22
- package/dist/components/sidebar/resolve-hook-modal.js +1 -1
- package/dist/components/sidebar/sidebar-data-context.d.ts +29 -0
- package/dist/components/sidebar/sidebar-data-context.d.ts.map +1 -0
- package/dist/components/sidebar/sidebar-data-context.js +19 -0
- package/dist/components/sidebar/span-detail-merge.d.ts +16 -0
- package/dist/components/sidebar/span-detail-merge.d.ts.map +1 -0
- package/dist/components/sidebar/span-detail-merge.js +53 -0
- package/dist/components/stream-viewer.d.ts +1 -1
- package/dist/components/stream-viewer.d.ts.map +1 -1
- package/dist/components/stream-viewer.js +3 -27
- package/dist/components/trace-viewer/components/map.js +1 -1
- package/dist/components/trace-viewer/components/markers.js +1 -1
- package/dist/components/trace-viewer/components/node.d.ts.map +1 -1
- package/dist/components/trace-viewer/components/node.js +2 -1
- package/dist/components/trace-viewer/components/search-input.js +1 -1
- package/dist/components/trace-viewer/components/search.js +1 -1
- package/dist/components/trace-viewer/components/span-content.js +1 -1
- package/dist/components/trace-viewer/components/span-detail-panel.js +1 -1
- package/dist/components/trace-viewer/components/span-segments.js +1 -1
- package/dist/components/trace-viewer/components/span-strategies.js +1 -1
- package/dist/components/trace-viewer/components/ui.js +1 -1
- package/dist/components/trace-viewer/components/zoom-button.js +1 -1
- package/dist/components/trace-viewer/components/zoom-icons.js +1 -1
- package/dist/components/trace-viewer/context.js +1 -1
- package/dist/components/trace-viewer/index.js +1 -1
- package/dist/components/trace-viewer/trace-viewer.js +1 -1
- package/dist/components/trace-viewer/trace-viewer.module.css +4 -4
- package/dist/components/trace-viewer/types.js +1 -1
- package/dist/components/trace-viewer/util/constants.js +1 -1
- package/dist/components/trace-viewer/util/scrollbar-width.js +1 -1
- package/dist/components/trace-viewer/util/timing.d.ts +3 -3
- package/dist/components/trace-viewer/util/timing.d.ts.map +1 -1
- package/dist/components/trace-viewer/util/timing.js +8 -11
- package/dist/components/trace-viewer/util/tree.js +1 -1
- package/dist/components/trace-viewer/util/use-immediate-style.js +1 -1
- package/dist/components/trace-viewer/util/use-streaming-spans.js +1 -1
- package/dist/components/trace-viewer/util/use-trackpad-zoom.js +1 -1
- package/dist/components/trace-viewer/worker.js +1 -1
- package/dist/components/trace-viewer-new.d.ts +14 -0
- package/dist/components/trace-viewer-new.d.ts.map +1 -0
- package/dist/components/trace-viewer-new.js +21 -0
- package/dist/components/ui/alert.js +1 -1
- package/dist/components/ui/button.d.ts +10 -0
- package/dist/components/ui/button.d.ts.map +1 -0
- package/dist/components/ui/button.js +46 -0
- package/dist/components/ui/card.js +1 -1
- package/dist/components/ui/context-card.d.ts +47 -0
- package/dist/components/ui/context-card.d.ts.map +1 -0
- package/dist/components/ui/context-card.js +471 -0
- package/dist/components/ui/data-inspector.d.ts +22 -0
- package/dist/components/ui/data-inspector.d.ts.map +1 -1
- package/dist/components/ui/data-inspector.js +103 -13
- package/dist/components/ui/decrypt-button.js +1 -1
- package/dist/components/ui/error-card.js +1 -1
- package/dist/components/ui/error-stack-block.d.ts +17 -10
- package/dist/components/ui/error-stack-block.d.ts.map +1 -1
- package/dist/components/ui/error-stack-block.js +49 -30
- package/dist/components/ui/icon-button.d.ts +19 -0
- package/dist/components/ui/icon-button.d.ts.map +1 -0
- package/dist/components/ui/icon-button.js +29 -0
- package/dist/components/ui/inspector-theme.d.ts +9 -10
- package/dist/components/ui/inspector-theme.d.ts.map +1 -1
- package/dist/components/ui/inspector-theme.js +39 -72
- package/dist/components/ui/kbd.d.ts +6 -0
- package/dist/components/ui/kbd.d.ts.map +1 -0
- package/dist/components/ui/kbd.js +6 -0
- package/dist/components/ui/load-more-button.js +1 -1
- package/dist/components/ui/menu-dropdown.js +1 -1
- package/dist/components/ui/skeleton.js +1 -1
- package/dist/components/ui/spinner.js +1 -1
- package/dist/components/ui/timestamp-tooltip.d.ts +34 -1
- package/dist/components/ui/timestamp-tooltip.d.ts.map +1 -1
- package/dist/components/ui/timestamp-tooltip.js +80 -132
- package/dist/components/ui/tooltip.d.ts +10 -0
- package/dist/components/ui/tooltip.d.ts.map +1 -0
- package/dist/components/ui/tooltip.js +12 -0
- package/dist/components/workflow-trace-view.d.ts +1 -3
- package/dist/components/workflow-trace-view.d.ts.map +1 -1
- package/dist/components/workflow-trace-view.js +11 -13
- package/dist/components/workflow-traces/event-colors.d.ts +1 -0
- package/dist/components/workflow-traces/event-colors.d.ts.map +1 -1
- package/dist/components/workflow-traces/event-colors.js +12 -1
- package/dist/components/workflow-traces/trace-colors.js +1 -1
- package/dist/components/workflow-traces/trace-span-construction.d.ts +2 -2
- package/dist/components/workflow-traces/trace-span-construction.d.ts.map +1 -1
- package/dist/components/workflow-traces/trace-span-construction.js +19 -5
- package/dist/components/workflow-traces/trace-time-utils.js +1 -1
- package/dist/hooks/use-dark-mode.js +1 -1
- package/dist/hooks/use-intersection-observer.d.ts +17 -0
- package/dist/hooks/use-intersection-observer.d.ts.map +1 -0
- package/dist/hooks/use-intersection-observer.js +29 -0
- package/dist/hooks/use-load-more-on-scroll.d.ts +21 -0
- package/dist/hooks/use-load-more-on-scroll.d.ts.map +1 -0
- package/dist/hooks/use-load-more-on-scroll.js +28 -0
- package/dist/hooks/use-reduced-motion.d.ts +10 -0
- package/dist/hooks/use-reduced-motion.d.ts.map +1 -0
- package/dist/hooks/use-reduced-motion.js +29 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/lib/event-analysis.js +1 -1
- package/dist/lib/event-materialization.js +1 -1
- package/dist/lib/exact-event-search-id.d.ts +25 -0
- package/dist/lib/exact-event-search-id.d.ts.map +1 -0
- package/dist/lib/exact-event-search-id.js +39 -0
- package/dist/lib/hydration.d.ts +6 -0
- package/dist/lib/hydration.d.ts.map +1 -1
- package/dist/lib/hydration.js +154 -2
- package/dist/lib/stream-display.d.ts +18 -0
- package/dist/lib/stream-display.d.ts.map +1 -0
- package/dist/lib/stream-display.js +30 -0
- package/dist/lib/toast.js +1 -1
- package/dist/lib/trace-builder.d.ts +15 -0
- package/dist/lib/trace-builder.d.ts.map +1 -1
- package/dist/lib/trace-builder.js +29 -3
- package/dist/lib/utils.d.ts +20 -9
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +74 -31
- package/dist/lib/zstd-browser-decoder.d.ts +7 -0
- package/dist/lib/zstd-browser-decoder.d.ts.map +1 -0
- package/dist/lib/zstd-browser-decoder.js +41 -0
- package/dist/styles.css +484 -1
- package/package.json +10 -5
- package/src/components/event-list-view.tsx +279 -104
- package/src/components/index.ts +7 -0
- package/src/components/new-trace-viewer/components/copy-button.tsx +68 -0
- package/src/components/new-trace-viewer/components/event-list.tsx +136 -0
- package/src/components/new-trace-viewer/components/middle-truncate/copy-selection.ts +114 -0
- package/src/components/new-trace-viewer/components/middle-truncate/middle-truncate.tsx +157 -0
- package/src/components/new-trace-viewer/components/middle-truncate/truncate.ts +132 -0
- package/src/components/new-trace-viewer/components/middle-truncate/use-middle-truncate.ts +167 -0
- package/src/components/new-trace-viewer/components/span-markers.tsx +173 -0
- package/src/components/new-trace-viewer/components/split-pane.tsx +198 -0
- package/src/components/new-trace-viewer/components/timeline.module.css +46 -0
- package/src/components/new-trace-viewer/components/timeline.tsx +744 -0
- package/src/components/new-trace-viewer/components/trace-viewer-skeleton.tsx +94 -0
- package/src/components/new-trace-viewer/components/use-row-window.ts +140 -0
- package/src/components/new-trace-viewer/context.tsx +90 -0
- package/src/components/new-trace-viewer/icons.tsx +79 -0
- package/src/components/new-trace-viewer/search.ts +178 -0
- package/src/components/new-trace-viewer/trace-viewer.tsx +843 -0
- package/src/components/new-trace-viewer/types.ts +2 -0
- package/src/components/new-trace-viewer/utils.test.ts +182 -0
- package/src/components/new-trace-viewer/utils.ts +519 -0
- package/src/components/sidebar/attribute-panel.tsx +194 -240
- package/src/components/sidebar/attributes-block.tsx +173 -0
- package/src/components/sidebar/copyable-data-block.tsx +49 -27
- package/src/components/sidebar/detail-card.tsx +119 -59
- package/src/components/sidebar/entity-detail-panel.tsx +55 -111
- package/src/components/sidebar/events-list.tsx +85 -96
- package/src/components/sidebar/sidebar-data-context.tsx +62 -0
- package/src/components/sidebar/span-detail-merge.ts +65 -0
- package/src/components/stream-viewer.tsx +18 -40
- package/src/components/trace-viewer/components/node.tsx +3 -2
- package/src/components/trace-viewer/trace-viewer.module.css +4 -4
- package/src/components/trace-viewer/util/timing.ts +7 -11
- package/src/components/trace-viewer-new.tsx +55 -0
- package/src/components/ui/button.tsx +68 -0
- package/src/components/ui/context-card.tsx +784 -0
- package/src/components/ui/data-inspector.tsx +244 -22
- package/src/components/ui/error-stack-block.tsx +84 -55
- package/src/components/ui/icon-button.tsx +53 -0
- package/src/components/ui/inspector-theme.ts +39 -81
- package/src/components/ui/kbd.tsx +21 -0
- package/src/components/ui/timestamp-tooltip.tsx +132 -194
- package/src/components/ui/tooltip.tsx +47 -0
- package/src/components/workflow-trace-view.tsx +19 -15
- package/src/components/workflow-traces/event-colors.ts +12 -0
- package/src/components/workflow-traces/trace-span-construction.ts +24 -5
- package/src/hooks/use-intersection-observer.ts +57 -0
- package/src/hooks/use-load-more-on-scroll.ts +49 -0
- package/src/hooks/use-reduced-motion.ts +34 -0
- package/src/index.ts +9 -0
- package/src/lib/exact-event-search-id.ts +67 -0
- package/src/lib/hydration.ts +166 -1
- package/src/lib/stream-display.ts +48 -0
- package/src/lib/trace-builder.ts +34 -2
- package/src/lib/utils.ts +83 -31
- package/src/lib/zstd-browser-decoder.ts +42 -0
- package/src/styles.css +484 -1
- package/dist/components/error-boundary.js.map +0 -1
- package/dist/components/event-list-view.js.map +0 -1
- package/dist/components/hook-actions.js.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/run-trace-view.js.map +0 -1
- package/dist/components/sidebar/attribute-panel.js.map +0 -1
- package/dist/components/sidebar/conversation-view.js.map +0 -1
- package/dist/components/sidebar/copyable-data-block.js.map +0 -1
- package/dist/components/sidebar/detail-card.js.map +0 -1
- package/dist/components/sidebar/entity-detail-panel.js.map +0 -1
- package/dist/components/sidebar/events-list.js.map +0 -1
- package/dist/components/sidebar/resolve-hook-modal.js.map +0 -1
- package/dist/components/stream-viewer.js.map +0 -1
- package/dist/components/trace-viewer/components/map.js.map +0 -1
- package/dist/components/trace-viewer/components/markers.js.map +0 -1
- package/dist/components/trace-viewer/components/node.js.map +0 -1
- package/dist/components/trace-viewer/components/search-input.js.map +0 -1
- package/dist/components/trace-viewer/components/search.js.map +0 -1
- package/dist/components/trace-viewer/components/span-content.js.map +0 -1
- package/dist/components/trace-viewer/components/span-detail-panel.js.map +0 -1
- package/dist/components/trace-viewer/components/span-segments.js.map +0 -1
- package/dist/components/trace-viewer/components/span-strategies.js.map +0 -1
- package/dist/components/trace-viewer/components/ui.js.map +0 -1
- package/dist/components/trace-viewer/components/zoom-button.js.map +0 -1
- package/dist/components/trace-viewer/components/zoom-icons.js.map +0 -1
- package/dist/components/trace-viewer/context.js.map +0 -1
- package/dist/components/trace-viewer/index.js.map +0 -1
- package/dist/components/trace-viewer/trace-viewer.js.map +0 -1
- package/dist/components/trace-viewer/types.js.map +0 -1
- package/dist/components/trace-viewer/util/constants.js.map +0 -1
- package/dist/components/trace-viewer/util/scrollbar-width.js.map +0 -1
- package/dist/components/trace-viewer/util/timing.js.map +0 -1
- package/dist/components/trace-viewer/util/tree.js.map +0 -1
- package/dist/components/trace-viewer/util/use-immediate-style.js.map +0 -1
- package/dist/components/trace-viewer/util/use-streaming-spans.js.map +0 -1
- package/dist/components/trace-viewer/util/use-trackpad-zoom.js.map +0 -1
- package/dist/components/trace-viewer/worker.js.map +0 -1
- package/dist/components/ui/alert.js.map +0 -1
- package/dist/components/ui/card.js.map +0 -1
- package/dist/components/ui/data-inspector.js.map +0 -1
- package/dist/components/ui/decrypt-button.js.map +0 -1
- package/dist/components/ui/error-card.js.map +0 -1
- package/dist/components/ui/error-stack-block.js.map +0 -1
- package/dist/components/ui/inspector-theme.js.map +0 -1
- package/dist/components/ui/load-more-button.js.map +0 -1
- package/dist/components/ui/menu-dropdown.js.map +0 -1
- package/dist/components/ui/skeleton.js.map +0 -1
- package/dist/components/ui/spinner.js.map +0 -1
- package/dist/components/ui/timestamp-tooltip.js.map +0 -1
- package/dist/components/workflow-trace-view.js.map +0 -1
- package/dist/components/workflow-traces/event-colors.js.map +0 -1
- package/dist/components/workflow-traces/trace-colors.js.map +0 -1
- package/dist/components/workflow-traces/trace-span-construction.js.map +0 -1
- package/dist/components/workflow-traces/trace-time-utils.js.map +0 -1
- package/dist/hooks/use-dark-mode.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/lib/event-analysis.js.map +0 -1
- package/dist/lib/event-materialization.js.map +0 -1
- package/dist/lib/hydration.js.map +0 -1
- package/dist/lib/toast.js.map +0 -1
- package/dist/lib/trace-builder.js.map +0 -1
- package/dist/lib/utils.js.map +0 -1
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { Span } from './types';
|
|
3
|
+
interface ActiveSpanContextValue {
|
|
4
|
+
activeSpanId: string | null;
|
|
5
|
+
activeSpan: Span | null;
|
|
6
|
+
setActiveSpan: (spanId: string) => void;
|
|
7
|
+
clearActiveSpan: () => void;
|
|
8
|
+
}
|
|
9
|
+
export declare function ActiveSpanProvider({ spans, children, }: {
|
|
10
|
+
spans: Span[];
|
|
11
|
+
children: ReactNode;
|
|
12
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export declare const useActiveSpan: () => ActiveSpanContextValue;
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/components/new-trace-viewer/context.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAEpC,UAAU,sBAAsB;IAC9B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;AAKD,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;CACrB,2CAmDA;AAED,eAAO,MAAM,aAAa,QAAO,sBAOhC,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { createContext, useCallback, useContext, useEffect, useMemo, useState, } from 'react';
|
|
4
|
+
const ActiveSpanContext = createContext(null);
|
|
5
|
+
ActiveSpanContext.displayName = 'ActiveSpanContext';
|
|
6
|
+
export function ActiveSpanProvider({ spans, children, }) {
|
|
7
|
+
const [activeSpanId, setActiveSpanId] = useState(null);
|
|
8
|
+
useEffect(() => {
|
|
9
|
+
setActiveSpanId((currentSpanId) => {
|
|
10
|
+
if (!currentSpanId) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const hasCurrentSpan = spans.some((span) => span.spanId === currentSpanId);
|
|
14
|
+
if (hasCurrentSpan) {
|
|
15
|
+
return currentSpanId;
|
|
16
|
+
}
|
|
17
|
+
return null;
|
|
18
|
+
});
|
|
19
|
+
}, [spans]);
|
|
20
|
+
const activeSpan = useMemo(() => {
|
|
21
|
+
if (!activeSpanId) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
return spans.find((span) => span.spanId === activeSpanId) ?? null;
|
|
25
|
+
}, [activeSpanId, spans]);
|
|
26
|
+
const setActiveSpan = useCallback((spanId) => {
|
|
27
|
+
setActiveSpanId(spanId);
|
|
28
|
+
}, []);
|
|
29
|
+
const clearActiveSpan = useCallback(() => {
|
|
30
|
+
setActiveSpanId(null);
|
|
31
|
+
}, []);
|
|
32
|
+
const value = useMemo(() => ({
|
|
33
|
+
activeSpanId,
|
|
34
|
+
activeSpan,
|
|
35
|
+
setActiveSpan,
|
|
36
|
+
clearActiveSpan,
|
|
37
|
+
}), [activeSpanId, activeSpan, setActiveSpan, clearActiveSpan]);
|
|
38
|
+
return (_jsx(ActiveSpanContext.Provider, { value: value, children: children }));
|
|
39
|
+
}
|
|
40
|
+
export const useActiveSpan = () => {
|
|
41
|
+
const context = useContext(ActiveSpanContext);
|
|
42
|
+
if (!context) {
|
|
43
|
+
throw new Error('useActiveSpan must be used within ActiveSpanProvider');
|
|
44
|
+
}
|
|
45
|
+
return context;
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL25ldy10cmFjZS12aWV3ZXIvY29udGV4dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOztBQUViLE9BQU8sRUFDTCxhQUFhLEVBRWIsV0FBVyxFQUNYLFVBQVUsRUFDVixTQUFTLEVBQ1QsT0FBTyxFQUNQLFFBQVEsR0FDVCxNQUFNLE9BQU8sQ0FBQztBQVVmLE1BQU0saUJBQWlCLEdBQUcsYUFBYSxDQUFnQyxJQUFJLENBQUMsQ0FBQztBQUM3RSxpQkFBaUIsQ0FBQyxXQUFXLEdBQUcsbUJBQW1CLENBQUM7QUFFcEQsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEVBQ2pDLEtBQUssRUFDTCxRQUFRLEdBSVQ7SUFDQyxNQUFNLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxHQUFHLFFBQVEsQ0FBZ0IsSUFBSSxDQUFDLENBQUM7SUFFdEUsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUNiLGVBQWUsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1lBRUQsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FDL0IsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssYUFBYSxDQUN4QyxDQUFDO1lBQ0YsSUFBSSxjQUFjLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxhQUFhLENBQUM7WUFDdkIsQ0FBQztZQUVELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBRVosTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUM5QixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbEIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLFlBQVksQ0FBQyxJQUFJLElBQUksQ0FBQztJQUNwRSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUUxQixNQUFNLGFBQWEsR0FBRyxXQUFXLENBQUMsQ0FBQyxNQUFjLEVBQUUsRUFBRTtRQUNuRCxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDMUIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRVAsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRTtRQUN2QyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRVAsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUNuQixHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ0wsWUFBWTtRQUNaLFVBQVU7UUFDVixhQUFhO1FBQ2IsZUFBZTtLQUNoQixDQUFDLEVBQ0YsQ0FBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUMsQ0FDM0QsQ0FBQztJQUVGLE9BQU8sQ0FDTCxLQUFDLGlCQUFpQixDQUFDLFFBQVEsSUFBQyxLQUFLLEVBQUUsS0FBSyxZQUNyQyxRQUFRLEdBQ2tCLENBQzlCLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEdBQTJCLEVBQUU7SUFDeEQsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDOUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCc7XG5cbmltcG9ydCB7XG4gIGNyZWF0ZUNvbnRleHQsXG4gIHR5cGUgUmVhY3ROb2RlLFxuICB1c2VDYWxsYmFjayxcbiAgdXNlQ29udGV4dCxcbiAgdXNlRWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUgeyBTcGFuIH0gZnJvbSAnLi90eXBlcyc7XG5cbmludGVyZmFjZSBBY3RpdmVTcGFuQ29udGV4dFZhbHVlIHtcbiAgYWN0aXZlU3BhbklkOiBzdHJpbmcgfCBudWxsO1xuICBhY3RpdmVTcGFuOiBTcGFuIHwgbnVsbDtcbiAgc2V0QWN0aXZlU3BhbjogKHNwYW5JZDogc3RyaW5nKSA9PiB2b2lkO1xuICBjbGVhckFjdGl2ZVNwYW46ICgpID0+IHZvaWQ7XG59XG5cbmNvbnN0IEFjdGl2ZVNwYW5Db250ZXh0ID0gY3JlYXRlQ29udGV4dDxBY3RpdmVTcGFuQ29udGV4dFZhbHVlIHwgbnVsbD4obnVsbCk7XG5BY3RpdmVTcGFuQ29udGV4dC5kaXNwbGF5TmFtZSA9ICdBY3RpdmVTcGFuQ29udGV4dCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBBY3RpdmVTcGFuUHJvdmlkZXIoe1xuICBzcGFucyxcbiAgY2hpbGRyZW4sXG59OiB7XG4gIHNwYW5zOiBTcGFuW107XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59KSB7XG4gIGNvbnN0IFthY3RpdmVTcGFuSWQsIHNldEFjdGl2ZVNwYW5JZF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldEFjdGl2ZVNwYW5JZCgoY3VycmVudFNwYW5JZCkgPT4ge1xuICAgICAgaWYgKCFjdXJyZW50U3BhbklkKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBoYXNDdXJyZW50U3BhbiA9IHNwYW5zLnNvbWUoXG4gICAgICAgIChzcGFuKSA9PiBzcGFuLnNwYW5JZCA9PT0gY3VycmVudFNwYW5JZFxuICAgICAgKTtcbiAgICAgIGlmIChoYXNDdXJyZW50U3Bhbikge1xuICAgICAgICByZXR1cm4gY3VycmVudFNwYW5JZDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSk7XG4gIH0sIFtzcGFuc10pO1xuXG4gIGNvbnN0IGFjdGl2ZVNwYW4gPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIWFjdGl2ZVNwYW5JZCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNwYW5zLmZpbmQoKHNwYW4pID0+IHNwYW4uc3BhbklkID09PSBhY3RpdmVTcGFuSWQpID8/IG51bGw7XG4gIH0sIFthY3RpdmVTcGFuSWQsIHNwYW5zXSk7XG5cbiAgY29uc3Qgc2V0QWN0aXZlU3BhbiA9IHVzZUNhbGxiYWNrKChzcGFuSWQ6IHN0cmluZykgPT4ge1xuICAgIHNldEFjdGl2ZVNwYW5JZChzcGFuSWQpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgY2xlYXJBY3RpdmVTcGFuID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHNldEFjdGl2ZVNwYW5JZChudWxsKTtcbiAgfSwgW10pO1xuXG4gIGNvbnN0IHZhbHVlID0gdXNlTWVtbzxBY3RpdmVTcGFuQ29udGV4dFZhbHVlPihcbiAgICAoKSA9PiAoe1xuICAgICAgYWN0aXZlU3BhbklkLFxuICAgICAgYWN0aXZlU3BhbixcbiAgICAgIHNldEFjdGl2ZVNwYW4sXG4gICAgICBjbGVhckFjdGl2ZVNwYW4sXG4gICAgfSksXG4gICAgW2FjdGl2ZVNwYW5JZCwgYWN0aXZlU3Bhbiwgc2V0QWN0aXZlU3BhbiwgY2xlYXJBY3RpdmVTcGFuXVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPEFjdGl2ZVNwYW5Db250ZXh0LlByb3ZpZGVyIHZhbHVlPXt2YWx1ZX0+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9BY3RpdmVTcGFuQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcbn1cblxuZXhwb3J0IGNvbnN0IHVzZUFjdGl2ZVNwYW4gPSAoKTogQWN0aXZlU3BhbkNvbnRleHRWYWx1ZSA9PiB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KEFjdGl2ZVNwYW5Db250ZXh0KTtcbiAgaWYgKCFjb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCd1c2VBY3RpdmVTcGFuIG11c3QgYmUgdXNlZCB3aXRoaW4gQWN0aXZlU3BhblByb3ZpZGVyJyk7XG4gIH1cblxuICByZXR1cm4gY29udGV4dDtcbn07XG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
declare const WorkflowIcon: () => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const WebhookIcon: () => import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
declare const SleepIcon: () => import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare const StepForwardIcon: () => import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
export { WorkflowIcon, WebhookIcon, SleepIcon, StepForwardIcon };
|
|
6
|
+
//# sourceMappingURL=icons.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../src/components/new-trace-viewer/icons.tsx"],"names":[],"mappings":"AAAA,QAAA,MAAM,YAAY,+CAgBjB,CAAC;AAEF,QAAA,MAAM,WAAW,+CAkBhB,CAAC;AAEF,QAAA,MAAM,SAAS,+CAkBd,CAAC;AAEF,QAAA,MAAM,eAAe,+CAkBpB,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
const WorkflowIcon = () => {
|
|
3
|
+
return (_jsx("svg", { "data-testid": "geist-icon", height: "16", strokeLinejoin: "round", style: { color: 'currentColor' }, viewBox: "0 0 16 16", width: "16", children: _jsx("path", { d: "M5.75 7L6.4209 7.33594L4.85254 10.4717C5.38789 10.771 5.75 11.3431 5.75 12V14C5.75 14.9665 4.96648 15.75 4 15.75H2C1.03352 15.75 0.25 14.9665 0.25 14V12C0.25 11.0335 1.03352 10.25 2 10.25H3.28711L5.0791 6.66504L5.75 7ZM14 10.25C14.9665 10.25 15.75 11.0335 15.75 12V14C15.75 14.9665 14.9665 15.75 14 15.75H12C11.1185 15.75 10.3909 15.098 10.2695 14.25H7V12.75H10.25V12C10.25 11.0335 11.0335 10.25 12 10.25H14ZM2 11.75C1.86192 11.75 1.75 11.8619 1.75 12V14C1.75 14.1381 1.86192 14.25 2 14.25H4C4.13808 14.25 4.25 14.1381 4.25 14V12C4.25 11.8619 4.13808 11.75 4 11.75H2ZM12 11.75C11.8619 11.75 11.75 11.8619 11.75 12V14C11.75 14.1381 11.8619 14.25 12 14.25H14C14.1381 14.25 14.25 14.1381 14.25 14V12C14.25 11.8619 14.1381 11.75 14 11.75H12ZM9 0.25C9.96649 0.25 10.75 1.03351 10.75 2V4C10.75 4.44642 10.5808 4.85197 10.3057 5.16113L12.2041 8.6416L10.8877 9.36035L8.91895 5.75H7C6.03351 5.75 5.25 4.96649 5.25 4V2C5.25 1.03351 6.03351 0.25 7 0.25H9ZM7 1.75C6.86193 1.75 6.75 1.86193 6.75 2V4C6.75 4.13807 6.86193 4.25 7 4.25H9C9.13807 4.25 9.25 4.13807 9.25 4V2C9.25 1.86193 9.13807 1.75 9 1.75H7Z", fill: "currentColor" }) }));
|
|
4
|
+
};
|
|
5
|
+
const WebhookIcon = () => {
|
|
6
|
+
return (_jsx("svg", { "data-testid": "geist-icon", height: "16", strokeLinejoin: "round", viewBox: "0 0 16 16", width: "16", style: { color: 'currentColor' }, children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M5.8349 3.24994C5.14454 4.44567 5.55423 5.97464 6.74996 6.665L7.39465 7.03721L7.02726 7.68466L5.14599 11C5.21289 11.1531 5.25 11.3222 5.25 11.5C5.25 12.1904 4.69036 12.75 4 12.75C3.30964 12.75 2.75 12.1904 2.75 11.5C2.75 10.8634 3.22584 10.338 3.84123 10.26L5.38944 7.5316C3.95909 6.30274 3.55857 4.19264 4.53586 2.49994C5.64043 0.586765 8.08679 -0.0687357 9.99996 1.03583C11.836 2.09584 12.5137 4.39156 11.5892 6.26591L10.4949 4.33754C10.4418 3.53274 10.0009 2.76843 9.24996 2.33487C8.05423 1.64452 6.52525 2.0542 5.8349 3.24994ZM9.146 4.99996C9.21289 4.84686 9.25 4.67776 9.25 4.5C9.25 3.80964 8.69036 3.25 8 3.25C7.30964 3.25 6.75 3.80964 6.75 4.5C6.75 5.13659 7.22586 5.66203 7.84127 5.74002L9.72266 9.05556L10.0956 9.71274L10.75 9.33493C11.9457 8.64458 13.4747 9.05427 14.165 10.25C14.8554 11.4457 14.4457 12.9747 13.25 13.6651C12.5047 14.0953 11.63 14.0983 10.9096 13.75H8.69252C9.85895 15.4685 12.1727 16.0191 14 14.9641C15.9131 13.8595 16.5686 11.4132 15.4641 9.5C14.4886 7.81038 12.4665 7.10169 10.6895 7.71998L9.146 4.99996ZM13.25 11.5C13.25 12.1904 12.6904 12.75 12 12.75C11.591 12.75 11.228 12.5536 10.9999 12.25H7.9298C7.57875 14.1006 5.95279 15.5 4 15.5C1.79086 15.5 0 13.7091 0 11.5C0 9.40018 1.61801 7.67826 3.67529 7.51299L2.58098 9.44147C1.92792 9.89251 1.5 10.6463 1.5 11.5C1.5 12.8807 2.61929 14 4 14C5.38071 14 6.5 12.8807 6.5 11.5V10.75H7.25H10.9999C11.228 10.4464 11.591 10.25 12 10.25C12.6904 10.25 13.25 10.8096 13.25 11.5Z", fill: "currentColor" }) }));
|
|
7
|
+
};
|
|
8
|
+
const SleepIcon = () => {
|
|
9
|
+
return (_jsx("svg", { "data-testid": "geist-icon", height: "16", strokeLinejoin: "round", viewBox: "0 0 16 16", width: "16", style: { color: 'currentColor' }, children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M7.25 1.25V2.03971C5.87928 2.18571 4.62678 2.72736 3.6089 3.54824L3.03033 2.96967L2.5 2.43934L1.43934 3.5L1.96967 4.03033L2.54824 4.6089C1.57979 5.80976 1 7.33717 1 9C1 12.866 4.13401 16 8 16C11.866 16 15 12.866 15 9C15 7.33717 14.4202 5.80976 13.4518 4.6089L14.0303 4.03033L14.5607 3.5L13.5 2.43934L12.9697 2.96967L12.3911 3.54824C11.3732 2.72736 10.1207 2.18571 8.75 2.03971V1.25H9.25H10V-0.25H9.25H8.75H7.25H6.75H6V1.25H6.75H7.25ZM2.5 9C2.5 5.96243 4.96243 3.5 8 3.5C11.0376 3.5 13.5 5.96243 13.5 9C13.5 12.0376 11.0376 14.5 8 14.5C4.96243 14.5 2.5 12.0376 2.5 9ZM8.75 6.75V6H7.25V6.75V9V9.75H8.75V9V6.75Z", fill: "currentColor" }) }));
|
|
10
|
+
};
|
|
11
|
+
const StepForwardIcon = () => {
|
|
12
|
+
return (_jsx("svg", { "data-testid": "geist-icon", height: "16", strokeLinejoin: "round", viewBox: "0 0 16 16", width: "16", style: { color: 'currentColor' }, children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4.21969 12.5303L4.75002 13.0607L5.81068 12L5.28035 11.4697L1.81068 7.99999L5.28035 4.53032L5.81068 3.99999L4.75002 2.93933L4.21969 3.46966L0.39647 7.29289C0.00594562 7.68341 0.00594562 8.31658 0.39647 8.7071L4.21969 12.5303ZM11.7804 12.5303L11.25 13.0607L10.1894 12L10.7197 11.4697L14.1894 7.99999L10.7197 4.53032L10.1894 3.99999L11.25 2.93933L11.7804 3.46966L15.6036 7.29289C15.9941 7.68341 15.9941 8.31658 15.6036 8.7071L11.7804 12.5303Z", fill: "currentColor" }) }));
|
|
13
|
+
};
|
|
14
|
+
export { WorkflowIcon, WebhookIcon, SleepIcon, StepForwardIcon };
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9uZXctdHJhY2Utdmlld2VyL2ljb25zLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsTUFBTSxZQUFZLEdBQUcsR0FBRyxFQUFFO0lBQ3hCLE9BQU8sQ0FDTCw2QkFDYyxZQUFZLEVBQ3hCLE1BQU0sRUFBQyxJQUFJLEVBQ1gsY0FBYyxFQUFDLE9BQU8sRUFDdEIsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxFQUNoQyxPQUFPLEVBQUMsV0FBVyxFQUNuQixLQUFLLEVBQUMsSUFBSSxZQUVWLGVBQ0UsQ0FBQyxFQUFDLHNrQ0FBc2tDLEVBQ3hrQyxJQUFJLEVBQUMsY0FBYyxHQUNiLEdBQ0osQ0FDUCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQUcsR0FBRyxFQUFFO0lBQ3ZCLE9BQU8sQ0FDTCw2QkFDYyxZQUFZLEVBQ3hCLE1BQU0sRUFBQyxJQUFJLEVBQ1gsY0FBYyxFQUFDLE9BQU8sRUFDdEIsT0FBTyxFQUFDLFdBQVcsRUFDbkIsS0FBSyxFQUFDLElBQUksRUFDVixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLFlBRWhDLGVBQ0UsUUFBUSxFQUFDLFNBQVMsRUFDbEIsUUFBUSxFQUFDLFNBQVMsRUFDbEIsQ0FBQyxFQUFDLDA2Q0FBMDZDLEVBQzU2QyxJQUFJLEVBQUMsY0FBYyxHQUNiLEdBQ0osQ0FDUCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxTQUFTLEdBQUcsR0FBRyxFQUFFO0lBQ3JCLE9BQU8sQ0FDTCw2QkFDYyxZQUFZLEVBQ3hCLE1BQU0sRUFBQyxJQUFJLEVBQ1gsY0FBYyxFQUFDLE9BQU8sRUFDdEIsT0FBTyxFQUFDLFdBQVcsRUFDbkIsS0FBSyxFQUFDLElBQUksRUFDVixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLFlBRWhDLGVBQ0UsUUFBUSxFQUFDLFNBQVMsRUFDbEIsUUFBUSxFQUFDLFNBQVMsRUFDbEIsQ0FBQyxFQUFDLGttQkFBa21CLEVBQ3BtQixJQUFJLEVBQUMsY0FBYyxHQUNiLEdBQ0osQ0FDUCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUcsR0FBRyxFQUFFO0lBQzNCLE9BQU8sQ0FDTCw2QkFDYyxZQUFZLEVBQ3hCLE1BQU0sRUFBQyxJQUFJLEVBQ1gsY0FBYyxFQUFDLE9BQU8sRUFDdEIsT0FBTyxFQUFDLFdBQVcsRUFDbkIsS0FBSyxFQUFDLElBQUksRUFDVixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLFlBRWhDLGVBQ0UsUUFBUSxFQUFDLFNBQVMsRUFDbEIsUUFBUSxFQUFDLFNBQVMsRUFDbEIsQ0FBQyxFQUFDLDBiQUEwYixFQUM1YixJQUFJLEVBQUMsY0FBYyxHQUNiLEdBQ0osQ0FDUCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgV29ya2Zsb3dJY29uID0gKCkgPT4ge1xuICByZXR1cm4gKFxuICAgIDxzdmdcbiAgICAgIGRhdGEtdGVzdGlkPVwiZ2Vpc3QtaWNvblwiXG4gICAgICBoZWlnaHQ9XCIxNlwiXG4gICAgICBzdHJva2VMaW5lam9pbj1cInJvdW5kXCJcbiAgICAgIHN0eWxlPXt7IGNvbG9yOiAnY3VycmVudENvbG9yJyB9fVxuICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiXG4gICAgICB3aWR0aD1cIjE2XCJcbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTUuNzUgN0w2LjQyMDkgNy4zMzU5NEw0Ljg1MjU0IDEwLjQ3MTdDNS4zODc4OSAxMC43NzEgNS43NSAxMS4zNDMxIDUuNzUgMTJWMTRDNS43NSAxNC45NjY1IDQuOTY2NDggMTUuNzUgNCAxNS43NUgyQzEuMDMzNTIgMTUuNzUgMC4yNSAxNC45NjY1IDAuMjUgMTRWMTJDMC4yNSAxMS4wMzM1IDEuMDMzNTIgMTAuMjUgMiAxMC4yNUgzLjI4NzExTDUuMDc5MSA2LjY2NTA0TDUuNzUgN1pNMTQgMTAuMjVDMTQuOTY2NSAxMC4yNSAxNS43NSAxMS4wMzM1IDE1Ljc1IDEyVjE0QzE1Ljc1IDE0Ljk2NjUgMTQuOTY2NSAxNS43NSAxNCAxNS43NUgxMkMxMS4xMTg1IDE1Ljc1IDEwLjM5MDkgMTUuMDk4IDEwLjI2OTUgMTQuMjVIN1YxMi43NUgxMC4yNVYxMkMxMC4yNSAxMS4wMzM1IDExLjAzMzUgMTAuMjUgMTIgMTAuMjVIMTRaTTIgMTEuNzVDMS44NjE5MiAxMS43NSAxLjc1IDExLjg2MTkgMS43NSAxMlYxNEMxLjc1IDE0LjEzODEgMS44NjE5MiAxNC4yNSAyIDE0LjI1SDRDNC4xMzgwOCAxNC4yNSA0LjI1IDE0LjEzODEgNC4yNSAxNFYxMkM0LjI1IDExLjg2MTkgNC4xMzgwOCAxMS43NSA0IDExLjc1SDJaTTEyIDExLjc1QzExLjg2MTkgMTEuNzUgMTEuNzUgMTEuODYxOSAxMS43NSAxMlYxNEMxMS43NSAxNC4xMzgxIDExLjg2MTkgMTQuMjUgMTIgMTQuMjVIMTRDMTQuMTM4MSAxNC4yNSAxNC4yNSAxNC4xMzgxIDE0LjI1IDE0VjEyQzE0LjI1IDExLjg2MTkgMTQuMTM4MSAxMS43NSAxNCAxMS43NUgxMlpNOSAwLjI1QzkuOTY2NDkgMC4yNSAxMC43NSAxLjAzMzUxIDEwLjc1IDJWNEMxMC43NSA0LjQ0NjQyIDEwLjU4MDggNC44NTE5NyAxMC4zMDU3IDUuMTYxMTNMMTIuMjA0MSA4LjY0MTZMMTAuODg3NyA5LjM2MDM1TDguOTE4OTUgNS43NUg3QzYuMDMzNTEgNS43NSA1LjI1IDQuOTY2NDkgNS4yNSA0VjJDNS4yNSAxLjAzMzUxIDYuMDMzNTEgMC4yNSA3IDAuMjVIOVpNNyAxLjc1QzYuODYxOTMgMS43NSA2Ljc1IDEuODYxOTMgNi43NSAyVjRDNi43NSA0LjEzODA3IDYuODYxOTMgNC4yNSA3IDQuMjVIOUM5LjEzODA3IDQuMjUgOS4yNSA0LjEzODA3IDkuMjUgNFYyQzkuMjUgMS44NjE5MyA5LjEzODA3IDEuNzUgOSAxLjc1SDdaXCJcbiAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiXG4gICAgICA+PC9wYXRoPlxuICAgIDwvc3ZnPlxuICApO1xufTtcblxuY29uc3QgV2ViaG9va0ljb24gPSAoKSA9PiB7XG4gIHJldHVybiAoXG4gICAgPHN2Z1xuICAgICAgZGF0YS10ZXN0aWQ9XCJnZWlzdC1pY29uXCJcbiAgICAgIGhlaWdodD1cIjE2XCJcbiAgICAgIHN0cm9rZUxpbmVqb2luPVwicm91bmRcIlxuICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiXG4gICAgICB3aWR0aD1cIjE2XCJcbiAgICAgIHN0eWxlPXt7IGNvbG9yOiAnY3VycmVudENvbG9yJyB9fVxuICAgID5cbiAgICAgIDxwYXRoXG4gICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgIGNsaXBSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgIGQ9XCJNNS44MzQ5IDMuMjQ5OTRDNS4xNDQ1NCA0LjQ0NTY3IDUuNTU0MjMgNS45NzQ2NCA2Ljc0OTk2IDYuNjY1TDcuMzk0NjUgNy4wMzcyMUw3LjAyNzI2IDcuNjg0NjZMNS4xNDU5OSAxMUM1LjIxMjg5IDExLjE1MzEgNS4yNSAxMS4zMjIyIDUuMjUgMTEuNUM1LjI1IDEyLjE5MDQgNC42OTAzNiAxMi43NSA0IDEyLjc1QzMuMzA5NjQgMTIuNzUgMi43NSAxMi4xOTA0IDIuNzUgMTEuNUMyLjc1IDEwLjg2MzQgMy4yMjU4NCAxMC4zMzggMy44NDEyMyAxMC4yNkw1LjM4OTQ0IDcuNTMxNkMzLjk1OTA5IDYuMzAyNzQgMy41NTg1NyA0LjE5MjY0IDQuNTM1ODYgMi40OTk5NEM1LjY0MDQzIDAuNTg2NzY1IDguMDg2NzkgLTAuMDY4NzM1NyA5Ljk5OTk2IDEuMDM1ODNDMTEuODM2IDIuMDk1ODQgMTIuNTEzNyA0LjM5MTU2IDExLjU4OTIgNi4yNjU5MUwxMC40OTQ5IDQuMzM3NTRDMTAuNDQxOCAzLjUzMjc0IDEwLjAwMDkgMi43Njg0MyA5LjI0OTk2IDIuMzM0ODdDOC4wNTQyMyAxLjY0NDUyIDYuNTI1MjUgMi4wNTQyIDUuODM0OSAzLjI0OTk0Wk05LjE0NiA0Ljk5OTk2QzkuMjEyODkgNC44NDY4NiA5LjI1IDQuNjc3NzYgOS4yNSA0LjVDOS4yNSAzLjgwOTY0IDguNjkwMzYgMy4yNSA4IDMuMjVDNy4zMDk2NCAzLjI1IDYuNzUgMy44MDk2NCA2Ljc1IDQuNUM2Ljc1IDUuMTM2NTkgNy4yMjU4NiA1LjY2MjAzIDcuODQxMjcgNS43NDAwMkw5LjcyMjY2IDkuMDU1NTZMMTAuMDk1NiA5LjcxMjc0TDEwLjc1IDkuMzM0OTNDMTEuOTQ1NyA4LjY0NDU4IDEzLjQ3NDcgOS4wNTQyNyAxNC4xNjUgMTAuMjVDMTQuODU1NCAxMS40NDU3IDE0LjQ0NTcgMTIuOTc0NyAxMy4yNSAxMy42NjUxQzEyLjUwNDcgMTQuMDk1MyAxMS42MyAxNC4wOTgzIDEwLjkwOTYgMTMuNzVIOC42OTI1MkM5Ljg1ODk1IDE1LjQ2ODUgMTIuMTcyNyAxNi4wMTkxIDE0IDE0Ljk2NDFDMTUuOTEzMSAxMy44NTk1IDE2LjU2ODYgMTEuNDEzMiAxNS40NjQxIDkuNUMxNC40ODg2IDcuODEwMzggMTIuNDY2NSA3LjEwMTY5IDEwLjY4OTUgNy43MTk5OEw5LjE0NiA0Ljk5OTk2Wk0xMy4yNSAxMS41QzEzLjI1IDEyLjE5MDQgMTIuNjkwNCAxMi43NSAxMiAxMi43NUMxMS41OTEgMTIuNzUgMTEuMjI4IDEyLjU1MzYgMTAuOTk5OSAxMi4yNUg3LjkyOThDNy41Nzg3NSAxNC4xMDA2IDUuOTUyNzkgMTUuNSA0IDE1LjVDMS43OTA4NiAxNS41IDAgMTMuNzA5MSAwIDExLjVDMCA5LjQwMDE4IDEuNjE4MDEgNy42NzgyNiAzLjY3NTI5IDcuNTEyOTlMMi41ODA5OCA5LjQ0MTQ3QzEuOTI3OTIgOS44OTI1MSAxLjUgMTAuNjQ2MyAxLjUgMTEuNUMxLjUgMTIuODgwNyAyLjYxOTI5IDE0IDQgMTRDNS4zODA3MSAxNCA2LjUgMTIuODgwNyA2LjUgMTEuNVYxMC43NUg3LjI1SDEwLjk5OTlDMTEuMjI4IDEwLjQ0NjQgMTEuNTkxIDEwLjI1IDEyIDEwLjI1QzEyLjY5MDQgMTAuMjUgMTMuMjUgMTAuODA5NiAxMy4yNSAxMS41WlwiXG4gICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgPjwvcGF0aD5cbiAgICA8L3N2Zz5cbiAgKTtcbn07XG5cbmNvbnN0IFNsZWVwSWNvbiA9ICgpID0+IHtcbiAgcmV0dXJuIChcbiAgICA8c3ZnXG4gICAgICBkYXRhLXRlc3RpZD1cImdlaXN0LWljb25cIlxuICAgICAgaGVpZ2h0PVwiMTZcIlxuICAgICAgc3Ryb2tlTGluZWpvaW49XCJyb3VuZFwiXG4gICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCJcbiAgICAgIHdpZHRoPVwiMTZcIlxuICAgICAgc3R5bGU9e3sgY29sb3I6ICdjdXJyZW50Q29sb3InIH19XG4gICAgPlxuICAgICAgPHBhdGhcbiAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgY2xpcFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgZD1cIk03LjI1IDEuMjVWMi4wMzk3MUM1Ljg3OTI4IDIuMTg1NzEgNC42MjY3OCAyLjcyNzM2IDMuNjA4OSAzLjU0ODI0TDMuMDMwMzMgMi45Njk2N0wyLjUgMi40MzkzNEwxLjQzOTM0IDMuNUwxLjk2OTY3IDQuMDMwMzNMMi41NDgyNCA0LjYwODlDMS41Nzk3OSA1LjgwOTc2IDEgNy4zMzcxNyAxIDlDMSAxMi44NjYgNC4xMzQwMSAxNiA4IDE2QzExLjg2NiAxNiAxNSAxMi44NjYgMTUgOUMxNSA3LjMzNzE3IDE0LjQyMDIgNS44MDk3NiAxMy40NTE4IDQuNjA4OUwxNC4wMzAzIDQuMDMwMzNMMTQuNTYwNyAzLjVMMTMuNSAyLjQzOTM0TDEyLjk2OTcgMi45Njk2N0wxMi4zOTExIDMuNTQ4MjRDMTEuMzczMiAyLjcyNzM2IDEwLjEyMDcgMi4xODU3MSA4Ljc1IDIuMDM5NzFWMS4yNUg5LjI1SDEwVi0wLjI1SDkuMjVIOC43NUg3LjI1SDYuNzVINlYxLjI1SDYuNzVINy4yNVpNMi41IDlDMi41IDUuOTYyNDMgNC45NjI0MyAzLjUgOCAzLjVDMTEuMDM3NiAzLjUgMTMuNSA1Ljk2MjQzIDEzLjUgOUMxMy41IDEyLjAzNzYgMTEuMDM3NiAxNC41IDggMTQuNUM0Ljk2MjQzIDE0LjUgMi41IDEyLjAzNzYgMi41IDlaTTguNzUgNi43NVY2SDcuMjVWNi43NVY5VjkuNzVIOC43NVY5VjYuNzVaXCJcbiAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiXG4gICAgICA+PC9wYXRoPlxuICAgIDwvc3ZnPlxuICApO1xufTtcblxuY29uc3QgU3RlcEZvcndhcmRJY29uID0gKCkgPT4ge1xuICByZXR1cm4gKFxuICAgIDxzdmdcbiAgICAgIGRhdGEtdGVzdGlkPVwiZ2Vpc3QtaWNvblwiXG4gICAgICBoZWlnaHQ9XCIxNlwiXG4gICAgICBzdHJva2VMaW5lam9pbj1cInJvdW5kXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMTYgMTZcIlxuICAgICAgd2lkdGg9XCIxNlwiXG4gICAgICBzdHlsZT17eyBjb2xvcjogJ2N1cnJlbnRDb2xvcicgfX1cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICBjbGlwUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICBkPVwiTTQuMjE5NjkgMTIuNTMwM0w0Ljc1MDAyIDEzLjA2MDdMNS44MTA2OCAxMkw1LjI4MDM1IDExLjQ2OTdMMS44MTA2OCA3Ljk5OTk5TDUuMjgwMzUgNC41MzAzMkw1LjgxMDY4IDMuOTk5OTlMNC43NTAwMiAyLjkzOTMzTDQuMjE5NjkgMy40Njk2NkwwLjM5NjQ3IDcuMjkyODlDMC4wMDU5NDU2MiA3LjY4MzQxIDAuMDA1OTQ1NjIgOC4zMTY1OCAwLjM5NjQ3IDguNzA3MUw0LjIxOTY5IDEyLjUzMDNaTTExLjc4MDQgMTIuNTMwM0wxMS4yNSAxMy4wNjA3TDEwLjE4OTQgMTJMMTAuNzE5NyAxMS40Njk3TDE0LjE4OTQgNy45OTk5OUwxMC43MTk3IDQuNTMwMzJMMTAuMTg5NCAzLjk5OTk5TDExLjI1IDIuOTM5MzNMMTEuNzgwNCAzLjQ2OTY2TDE1LjYwMzYgNy4yOTI4OUMxNS45OTQxIDcuNjgzNDEgMTUuOTk0MSA4LjMxNjU4IDE1LjYwMzYgOC43MDcxTDExLjc4MDQgMTIuNTMwM1pcIlxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgID48L3BhdGg+XG4gICAgPC9zdmc+XG4gICk7XG59O1xuXG5leHBvcnQgeyBXb3JrZmxvd0ljb24sIFdlYmhvb2tJY29uLCBTbGVlcEljb24sIFN0ZXBGb3J3YXJkSWNvbiB9O1xuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Span } from './types';
|
|
2
|
+
export interface SpanAttributeFilter {
|
|
3
|
+
key: string;
|
|
4
|
+
value: string;
|
|
5
|
+
}
|
|
6
|
+
export interface ParsedSpanSearchQuery {
|
|
7
|
+
text: string;
|
|
8
|
+
attributes: SpanAttributeFilter[];
|
|
9
|
+
}
|
|
10
|
+
export interface SpanSearchResult {
|
|
11
|
+
isActive: boolean;
|
|
12
|
+
matchedSpanIds: Set<string>;
|
|
13
|
+
matchingSpans: Span[];
|
|
14
|
+
query: ParsedSpanSearchQuery;
|
|
15
|
+
}
|
|
16
|
+
export declare function parseSpanSearchQuery(rawQuery: string): ParsedSpanSearchQuery;
|
|
17
|
+
export declare function isSpanDimmedBySearch(spanId: string, result: SpanSearchResult): boolean;
|
|
18
|
+
export declare function searchSpans(spans: Span[], rawQuery: string): SpanSearchResult;
|
|
19
|
+
//# sourceMappingURL=search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/components/new-trace-viewer/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAIpC,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,mBAAmB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,aAAa,EAAE,IAAI,EAAE,CAAC;IACtB,KAAK,EAAE,qBAAqB,CAAC;CAC9B;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,CAkB5E;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAET;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAa7E"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
const ATTR_FILTER_REGEX = /(?:^|\s)(?<pair>(?<key>[\w.]+):(?<value>\S*))/g;
|
|
2
|
+
export function parseSpanSearchQuery(rawQuery) {
|
|
3
|
+
const attributes = [];
|
|
4
|
+
for (const match of rawQuery.matchAll(ATTR_FILTER_REGEX)) {
|
|
5
|
+
const key = match.groups?.key?.trim();
|
|
6
|
+
if (!key)
|
|
7
|
+
continue;
|
|
8
|
+
attributes.push({
|
|
9
|
+
key,
|
|
10
|
+
value: (match.groups?.value ?? '').toLocaleLowerCase(),
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
const text = rawQuery
|
|
14
|
+
.replace(ATTR_FILTER_REGEX, ' ')
|
|
15
|
+
.replace(/\s{2,}/g, ' ')
|
|
16
|
+
.trim()
|
|
17
|
+
.toLocaleLowerCase();
|
|
18
|
+
return { text, attributes };
|
|
19
|
+
}
|
|
20
|
+
export function isSpanDimmedBySearch(spanId, result) {
|
|
21
|
+
return result.isActive && !result.matchedSpanIds.has(spanId);
|
|
22
|
+
}
|
|
23
|
+
export function searchSpans(spans, rawQuery) {
|
|
24
|
+
const query = parseSpanSearchQuery(rawQuery);
|
|
25
|
+
const isActive = Boolean(query.text || query.attributes.length);
|
|
26
|
+
const matchingSpans = isActive
|
|
27
|
+
? spans.filter((span) => spanMatchesQuery(span, query))
|
|
28
|
+
: spans;
|
|
29
|
+
return {
|
|
30
|
+
isActive,
|
|
31
|
+
matchedSpanIds: new Set(matchingSpans.map((span) => span.spanId)),
|
|
32
|
+
matchingSpans,
|
|
33
|
+
query,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function spanMatchesQuery(span, query) {
|
|
37
|
+
if (query.text && !spanMatchesText(span, query.text)) {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
return query.attributes.every(({ key, value }) => spanMatchesAttribute(span, key, value));
|
|
41
|
+
}
|
|
42
|
+
function spanMatchesText(span, text) {
|
|
43
|
+
return [
|
|
44
|
+
span.name,
|
|
45
|
+
span.spanId,
|
|
46
|
+
span.resource,
|
|
47
|
+
span.library.name,
|
|
48
|
+
span.library.version,
|
|
49
|
+
]
|
|
50
|
+
.filter((value) => typeof value === 'string')
|
|
51
|
+
.some((value) => value.toLocaleLowerCase().includes(text));
|
|
52
|
+
}
|
|
53
|
+
function spanMatchesAttribute(span, key, expectedValue) {
|
|
54
|
+
const candidates = getSearchValues(span, key);
|
|
55
|
+
if (!candidates.length)
|
|
56
|
+
return false;
|
|
57
|
+
if (!expectedValue) {
|
|
58
|
+
return candidates.some((value) => value != null);
|
|
59
|
+
}
|
|
60
|
+
return candidates.some((value) => valueToSearchString(value).toLocaleLowerCase().includes(expectedValue));
|
|
61
|
+
}
|
|
62
|
+
function getSearchValues(span, key) {
|
|
63
|
+
const candidates = [];
|
|
64
|
+
const normalizedKey = key.toLocaleLowerCase();
|
|
65
|
+
switch (normalizedKey) {
|
|
66
|
+
case 'id':
|
|
67
|
+
case 'spanid':
|
|
68
|
+
case 'span.id':
|
|
69
|
+
candidates.push(span.spanId);
|
|
70
|
+
break;
|
|
71
|
+
case 'name':
|
|
72
|
+
candidates.push(span.name);
|
|
73
|
+
break;
|
|
74
|
+
case 'resource':
|
|
75
|
+
candidates.push(span.resource);
|
|
76
|
+
break;
|
|
77
|
+
case 'library':
|
|
78
|
+
case 'library.name':
|
|
79
|
+
candidates.push(span.library.name);
|
|
80
|
+
break;
|
|
81
|
+
case 'library.version':
|
|
82
|
+
candidates.push(span.library.version);
|
|
83
|
+
break;
|
|
84
|
+
case 'status':
|
|
85
|
+
case 'status.code':
|
|
86
|
+
candidates.push(span.status.code);
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
candidates.push(getOwnProperty(span.attributes, key));
|
|
90
|
+
candidates.push(getPathValue(span.attributes, key));
|
|
91
|
+
if (!normalizedKey.startsWith('data.')) {
|
|
92
|
+
candidates.push(getPathValue(span.attributes.data, key));
|
|
93
|
+
}
|
|
94
|
+
return candidates.filter((value) => value !== undefined);
|
|
95
|
+
}
|
|
96
|
+
function getOwnProperty(source, key) {
|
|
97
|
+
if (!source || typeof source !== 'object')
|
|
98
|
+
return undefined;
|
|
99
|
+
if (!Object.hasOwn(source, key))
|
|
100
|
+
return undefined;
|
|
101
|
+
return source[key];
|
|
102
|
+
}
|
|
103
|
+
function getPathValue(source, path) {
|
|
104
|
+
if (!source || typeof source !== 'object')
|
|
105
|
+
return undefined;
|
|
106
|
+
let current = source;
|
|
107
|
+
for (const segment of path.split('.')) {
|
|
108
|
+
if (!segment)
|
|
109
|
+
return undefined;
|
|
110
|
+
current = getOwnProperty(current, segment);
|
|
111
|
+
if (current === undefined)
|
|
112
|
+
return undefined;
|
|
113
|
+
}
|
|
114
|
+
return current;
|
|
115
|
+
}
|
|
116
|
+
function valueToSearchString(value) {
|
|
117
|
+
if (value instanceof Date)
|
|
118
|
+
return value.toISOString();
|
|
119
|
+
if (typeof value === 'string')
|
|
120
|
+
return value;
|
|
121
|
+
if (value == null ||
|
|
122
|
+
typeof value === 'number' ||
|
|
123
|
+
typeof value === 'boolean' ||
|
|
124
|
+
typeof value === 'bigint') {
|
|
125
|
+
return String(value);
|
|
126
|
+
}
|
|
127
|
+
try {
|
|
128
|
+
return JSON.stringify(value);
|
|
129
|
+
}
|
|
130
|
+
catch {
|
|
131
|
+
return String(value);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbmV3LXRyYWNlLXZpZXdlci9zZWFyY2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxpQkFBaUIsR0FBRyxnREFBZ0QsQ0FBQztBQW1CM0UsTUFBTSxVQUFVLG9CQUFvQixDQUFDLFFBQWdCO0lBQ25ELE1BQU0sVUFBVSxHQUEwQixFQUFFLENBQUM7SUFDN0MsS0FBSyxNQUFNLEtBQUssSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztRQUN6RCxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsR0FBRztZQUFFLFNBQVM7UUFDbkIsVUFBVSxDQUFDLElBQUksQ0FBQztZQUNkLEdBQUc7WUFDSCxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxpQkFBaUIsRUFBRTtTQUN2RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxJQUFJLEdBQUcsUUFBUTtTQUNsQixPQUFPLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxDQUFDO1NBQy9CLE9BQU8sQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDO1NBQ3ZCLElBQUksRUFBRTtTQUNOLGlCQUFpQixFQUFFLENBQUM7SUFFdkIsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQztBQUM5QixDQUFDO0FBRUQsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxNQUFjLEVBQ2QsTUFBd0I7SUFFeEIsT0FBTyxNQUFNLENBQUMsUUFBUSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDL0QsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBYSxFQUFF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QUM7SUFDL0IsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTcGFuIH0gZnJvbSAnLi90eXBlcyc7XG5cbmNvbnN0IEFUVFJfRklMVEVSX1JFR0VYID0gLyg/Ol58XFxzKSg/PHBhaXI+KD88a2V5PltcXHcuXSspOig/PHZhbHVlPlxcUyopKS9nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNwYW5BdHRyaWJ1dGVGaWx0ZXIge1xuICBrZXk6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXJzZWRTcGFuU2VhcmNoUXVlcnkge1xuICB0ZXh0OiBzdHJpbmc7XG4gIGF0dHJpYnV0ZXM6IFNwYW5BdHRyaWJ1dGVGaWx0ZXJbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTcGFuU2VhcmNoUmVzdWx0IHtcbiAgaXNBY3RpdmU6IGJvb2xlYW47XG4gIG1hdGNoZWRTcGFuSWRzOiBTZXQ8c3RyaW5nPjtcbiAgbWF0Y2hpbmdTcGFuczogU3BhbltdO1xuICBxdWVyeTogUGFyc2VkU3BhblNlYXJjaFF1ZXJ5O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VTcGFuU2VhcmNoUXVlcnkocmF3UXVlcnk6IHN0cmluZyk6IFBhcnNlZFNwYW5TZWFyY2hRdWVyeSB7XG4gIGNvbnN0IGF0dHJpYnV0ZXM6IFNwYW5BdHRyaWJ1dGVGaWx0ZXJbXSA9IFtdO1xuICBmb3IgKGNvbnN0IG1hdGNoIG9mIHJhd1F1ZXJ5Lm1hdGNoQWxsKEFUVFJfRklMVEVSX1JFR0VYKSkge1xuICAgIGNvbnN0IGtleSA9IG1hdGNoLmdyb3Vwcz8ua2V5Py50cmltKCk7XG4gICAgaWYgKCFrZXkpIGNvbnRpbnVlO1xuICAgIGF0dHJpYnV0ZXMucHVzaCh7XG4gICAgICBrZXksXG4gICAgICB2YWx1ZTogKG1hdGNoLmdyb3Vwcz8udmFsdWUgPz8gJycpLnRvTG9jYWxlTG93ZXJDYXNlKCksXG4gICAgfSk7XG4gIH1cblxuICBjb25zdCB0ZXh0ID0gcmF3UXVlcnlcbiAgICAucmVwbGFjZShBVFRSX0ZJTFRFUl9SRUdFWCwgJyAnKVxuICAgIC5yZXBsYWNlKC9cXHN7Mix9L2csICcgJylcbiAgICAudHJpbSgpXG4gICAgLnRvTG9jYWxlTG93ZXJDYXNlKCk7XG5cbiAgcmV0dXJuIHsgdGV4dCwgYXR0cmlidXRlcyB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNTcGFuRGltbWVkQnlTZWFyY2goXG4gIHNwYW5JZDogc3RyaW5nLFxuICByZXN1bHQ6IFNwYW5TZWFyY2hSZXN1bHRcbik6IGJvb2xlYW4ge1xuICByZXR1cm4gcmVzdWx0LmlzQWN0aXZlICYmICFyZXN1bHQubWF0Y2hlZFNwYW5JZHMuaGFzKHNwYW5JZCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZWFyY2hTcGFucyhzcGFuczogU3BhbltdLCByYXdRdWVyeTogc3RyaW5nKTogU3BhblNlYXJjaFJlc3VsdCB7XG4gIGNvbnN0IHF1ZXJ5ID0gcGFyc2VTcGFuU2VhcmNoUXVlcnkocmF3UXVlcnkpO1xuICBjb25zdCBpc0FjdGl2ZSA9IEJvb2xlYW4ocXVlcnkudGV4dCB8fCBxdWVyeS5hdHRyaWJ1dGVzLmxlbmd0aCk7XG4gIGNvbnN0IG1hdGNoaW5nU3BhbnMgPSBpc0FjdGl2ZVxuICAgID8gc3BhbnMuZmlsdGVyKChzcGFuKSA9PiBzcGFuTWF0Y2hlc1F1ZXJ5KHNwYW4sIHF1ZXJ5KSlcbiAgICA6IHNwYW5zO1xuXG4gIHJldHVybiB7XG4gICAgaXNBY3RpdmUsXG4gICAgbWF0Y2hlZFNwYW5JZHM6IG5ldyBTZXQobWF0Y2hpbmdTcGFucy5tYXAoKHNwYW4pID0+IHNwYW4uc3BhbklkKSksXG4gICAgbWF0Y2hpbmdTcGFucyxcbiAgICBxdWVyeSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gc3Bhbk1hdGNoZXNRdWVyeShzcGFuOiBTcGFuLCBxdWVyeTogUGFyc2VkU3BhblNlYXJjaFF1ZXJ5KTogYm9vbGVhbiB7XG4gIGlmIChxdWVyeS50ZXh0ICYmICFzcGFuTWF0Y2hlc1RleHQoc3BhbiwgcXVlcnkudGV4dCkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gcXVlcnkuYXR0cmlidXRlcy5ldmVyeSgoeyBrZXksIHZhbHVlIH0pID0+XG4gICAgc3Bhbk1hdGNoZXNBdHRyaWJ1dGUoc3Bhbiwga2V5LCB2YWx1ZSlcbiAgKTtcbn1cblxuZnVuY3Rpb24gc3Bhbk1hdGNoZXNUZXh0KHNwYW46IFNwYW4sIHRleHQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gW1xuICAgIHNwYW4ubmFtZSxcbiAgICBzcGFuLnNwYW5JZCxcbiAgICBzcGFuLnJlc291cmNlLFxuICAgIHNwYW4ubGlicmFyeS5uYW1lLFxuICAgIHNwYW4ubGlicmFyeS52ZXJzaW9uLFxuICBdXG4gICAgLmZpbHRlcigodmFsdWUpOiB2YWx1ZSBpcyBzdHJpbmcgPT4gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJylcbiAgICAuc29tZSgodmFsdWUpID0+IHZhbHVlLnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5jbHVkZXModGV4dCkpO1xufVxuXG5mdW5jdGlvbiBzcGFuTWF0Y2hlc0F0dHJpYnV0ZShcbiAgc3BhbjogU3BhbixcbiAga2V5OiBzdHJpbmcsXG4gIGV4cGVjdGVkVmFsdWU6IHN0cmluZ1xuKTogYm9vbGVhbiB7XG4gIGNvbnN0IGNhbmRpZGF0ZXMgPSBnZXRTZWFyY2hWYWx1ZXMoc3Bhbiwga2V5KTtcbiAgaWYgKCFjYW5kaWRhdGVzLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuXG4gIGlmICghZXhwZWN0ZWRWYWx1ZSkge1xuICAgIHJldHVybiBjYW5kaWRhdGVzLnNvbWUoKHZhbHVlKSA9PiB2YWx1ZSAhPSBudWxsKTtcbiAgfVxuXG4gIHJldHVybiBjYW5kaWRhdGVzLnNvbWUoKHZhbHVlKSA9PlxuICAgIHZhbHVlVG9TZWFyY2hTdHJpbmcodmFsdWUpLnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5jbHVkZXMoZXhwZWN0ZWRWYWx1ZSlcbiAgKTtcbn1cblxuZnVuY3Rpb24gZ2V0U2VhcmNoVmFsdWVzKHNwYW46IFNwYW4sIGtleTogc3RyaW5nKTogdW5rbm93bltdIHtcbiAgY29uc3QgY2FuZGlkYXRlczogdW5rbm93bltdID0gW107XG4gIGNvbnN0IG5vcm1hbGl6ZWRLZXkgPSBrZXkudG9Mb2NhbGVMb3dlckNhc2UoKTtcblxuICBzd2l0Y2ggKG5vcm1hbGl6ZWRLZXkpIHtcbiAgICBjYXNlICdpZCc6XG4gICAgY2FzZSAnc3BhbmlkJzpcbiAgICBjYXNlICdzcGFuLmlkJzpcbiAgICAgIGNhbmRpZGF0ZXMucHVzaChzcGFuLnNwYW5JZCk7XG4gICAgICBicmVhaztcbiAgICBjYXNlICduYW1lJzpcbiAgICAgIGNhbmRpZGF0ZXMucHVzaChzcGFuLm5hbWUpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAncmVzb3VyY2UnOlxuICAgICAgY2FuZGlkYXRlcy5wdXNoKHNwYW4ucmVzb3VyY2UpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnbGlicmFyeSc6XG4gICAgY2FzZSAnbGlicmFyeS5uYW1lJzpcbiAgICAgIGNhbmRpZGF0ZXMucHVzaChzcGFuLmxpYnJhcnkubmFtZSk7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdsaWJyYXJ5LnZlcnNpb24nOlxuICAgICAgY2FuZGlkYXRlcy5wdXNoKHNwYW4ubGlicmFyeS52ZXJzaW9uKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ3N0YXR1cyc6XG4gICAgY2FzZSAnc3RhdHVzLmNvZGUnOlxuICAgICAgY2FuZGlkYXRlcy5wdXNoKHNwYW4uc3RhdHVzLmNvZGUpO1xuICAgICAgYnJlYWs7XG4gIH1cblxuICBjYW5kaWRhdGVzLnB1c2goZ2V0T3duUHJvcGVydHkoc3Bhbi5hdHRyaWJ1dGVzLCBrZXkpKTtcbiAgY2FuZGlkYXRlcy5wdXNoKGdldFBhdGhWYWx1ZShzcGFuLmF0dHJpYnV0ZXMsIGtleSkpO1xuXG4gIGlmICghbm9ybWFsaXplZEtleS5zdGFydHNXaXRoKCdkYXRhLicpKSB7XG4gICAgY2FuZGlkYXRlcy5wdXNoKGdldFBhdGhWYWx1ZShzcGFuLmF0dHJpYnV0ZXMuZGF0YSwga2V5KSk7XG4gIH1cblxuICByZXR1cm4gY2FuZGlkYXRlcy5maWx0ZXIoKHZhbHVlKSA9PiB2YWx1ZSAhPT0gdW5kZWZpbmVkKTtcbn1cblxuZnVuY3Rpb24gZ2V0T3duUHJvcGVydHkoc291cmNlOiB1bmtub3duLCBrZXk6IHN0cmluZyk6IHVua25vd24ge1xuICBpZiAoIXNvdXJjZSB8fCB0eXBlb2Ygc291cmNlICE9PSAnb2JqZWN0JykgcmV0dXJuIHVuZGVmaW5lZDtcbiAgaWYgKCFPYmplY3QuaGFzT3duKHNvdXJjZSwga2V5KSkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgcmV0dXJuIChzb3VyY2UgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pW2tleV07XG59XG5cbmZ1bmN0aW9uIGdldFBhdGhWYWx1ZShzb3VyY2U6IHVua25vd24sIHBhdGg6IHN0cmluZyk6IHVua25vd24ge1xuICBpZiAoIXNvdXJjZSB8fCB0eXBlb2Ygc291cmNlICE9PSAnb2JqZWN0JykgcmV0dXJuIHVuZGVmaW5lZDtcblxuICBsZXQgY3VycmVudDogdW5rbm93biA9IHNvdXJjZTtcbiAgZm9yIChjb25zdCBzZWdtZW50IG9mIHBhdGguc3BsaXQoJy4nKSkge1xuICAgIGlmICghc2VnbWVudCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBjdXJyZW50ID0gZ2V0T3duUHJvcGVydHkoY3VycmVudCwgc2VnbWVudCk7XG4gICAgaWYgKGN1cnJlbnQgPT09IHVuZGVmaW5lZCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJldHVybiBjdXJyZW50O1xufVxuXG5mdW5jdGlvbiB2YWx1ZVRvU2VhcmNoU3RyaW5nKHZhbHVlOiB1bmtub3duKTogc3RyaW5nIHtcbiAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkgcmV0dXJuIHZhbHVlLnRvSVNPU3RyaW5nKCk7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSByZXR1cm4gdmFsdWU7XG4gIGlmIChcbiAgICB2YWx1ZSA9PSBudWxsIHx8XG4gICAgdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyB8fFxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ2Jvb2xlYW4nIHx8XG4gICAgdHlwZW9mIHZhbHVlID09PSAnYmlnaW50J1xuICApIHtcbiAgICByZXR1cm4gU3RyaW5nKHZhbHVlKTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { TraceWithMeta } from './types';
|
|
3
|
+
interface NewTraceViewerProps {
|
|
4
|
+
trace: TraceWithMeta;
|
|
5
|
+
onLoadMore?: () => void | Promise<void>;
|
|
6
|
+
hasMore?: boolean;
|
|
7
|
+
isLoadingMore?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare function NewTraceViewer({ trace, onLoadMore, hasMore, isLoadingMore, }: NewTraceViewerProps): ReactNode;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=trace-viewer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace-viewer.d.ts","sourceRoot":"","sources":["../../../src/components/new-trace-viewer/trace-viewer.tsx"],"names":[],"mappings":"AAYA,OAAO,EACL,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AA8Bf,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,UAAU,mBAAmB;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAiHD,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,UAAU,EACV,OAAO,EACP,aAAa,GACd,EAAE,mBAAmB,GAAG,SAAS,CAajC"}
|