@signal-visualization/react 1.0.0 → 1.2.0
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/README.md +1 -1
- package/dist/SignalChart.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/signal-visualization-react.js +45 -32
- package/dist/signal-visualization-react.js.map +1 -1
- package/dist/types.d.ts +14 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -16,4 +16,4 @@ The adapter creates Core only after the container commits, maps `option` and `da
|
|
|
16
16
|
|
|
17
17
|
`option.type` is required and selects the corresponding `data` type. Changing it calls Core `setOption()` and hot-switches the renderer while preserving the React component, Core facade, container, and Canvas.
|
|
18
18
|
|
|
19
|
-
React
|
|
19
|
+
React `1.2.0` re-exports `SignalChartLinkGroup`. Join Core instances from `onReady` or through `SignalChartHandle.link()`; Core synchronizes frequency View/Crosshair/Selection state without routing pointer updates through React state. The handle also exposes peak search, selected-band measurement, and Waterfall freeze/cursor/history commands.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignalChart.d.ts","sourceRoot":"","sources":["../src/SignalChart.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAYlE,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"SignalChart.d.ts","sourceRoot":"","sources":["../src/SignalChart.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAYlE,eAAO,MAAM,WAAW,gHAoEvB,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,5 +3,5 @@ export { useSignalChart } from './useSignalChart';
|
|
|
3
3
|
export { SignalChartLinkGroup } from '@signal-visualization/core';
|
|
4
4
|
export type { ConstellationChartOption, ConstellationChartData, ConstellationChartProps, SignalChartCommonProps, SignalChartHandle, SignalChartOptionFor, SignalChartProps, SignalChartType, SpectrumChartOption, SpectrumChartData, SpectrumChartProps, WaterfallChartOption, WaterfallChartData, WaterfallChartProps, WaveformChartOption, WaveformChartData, WaveformChartProps, } from './types';
|
|
5
5
|
export type { UseSignalChartResult } from './useSignalChart';
|
|
6
|
-
export type { AxisOption, ConstellationData, ConstellationMode, ConstellationStyleOption, GpuResourceStats, InteractionOption, SignalChartOption, SignalData, SignalPerformanceStats, SignalChartLinkOptions, LinkedViewState, SpectrumData, SpectrumStyleOption, WaterfallColorMap, WaterfallDirection, WaterfallFrame, WaterfallStyleOption, WaveformData, WaveformStyleOption, } from '@signal-visualization/core';
|
|
6
|
+
export type { AxisOption, ConstellationData, ConstellationGridType, ConstellationMode, ConstellationStyleOption, GpuResourceStats, InteractionOption, SignalChartOption, SignalData, SignalPerformanceStats, SignalChartLinkOptions, LinkedViewState, FrequencySelection, FrequencySelectionModifier, FrequencySelectionStyleOption, SpectrumMarkerMeasurement, SpectrumMarkerMode, SpectrumMarkerOption, SpectrumMeasurementOption, SpectrumPeakMeasurement, SpectrumPeakSearchOption, SpectrumSelectionMeasurement, SpectrumThresholdOption, SpectrumTraceMode, SpectrumTraceOption, WaterfallTimeMode, WaterfallCursorMeasurement, WaterfallHistoryFrame, SpectrumData, SpectrumStyleOption, WaterfallColorMap, WaterfallDirection, WaterfallFrame, WaterfallStyleOption, WaveformData, WaveformStyleOption, } from '@signal-visualization/core';
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,YAAY,EACV,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,YAAY,EACZ,mBAAmB,GACpB,MAAM,4BAA4B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,YAAY,EACV,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,kBAAkB,EAClB,0BAA0B,EAC1B,6BAA6B,EAC7B,yBAAyB,EACzB,kBAAkB,EAClB,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,0BAA0B,EAC1B,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,YAAY,EACZ,mBAAmB,GACpB,MAAM,4BAA4B,CAAA"}
|
|
@@ -1,63 +1,76 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
import { SignalChart as
|
|
4
|
-
import { SignalChartLinkGroup as
|
|
5
|
-
function
|
|
6
|
-
return
|
|
1
|
+
import { jsx as W } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as d, useRef as u, useImperativeHandle as k, useEffect as i, useCallback as z, useMemo as R } from "react";
|
|
3
|
+
import { SignalChart as w } from "@signal-visualization/core";
|
|
4
|
+
import { SignalChartLinkGroup as x } from "@signal-visualization/core";
|
|
5
|
+
function F(t) {
|
|
6
|
+
return t instanceof Error ? t : new Error(String(t));
|
|
7
7
|
}
|
|
8
|
-
function
|
|
9
|
-
const c =
|
|
10
|
-
if (
|
|
8
|
+
function l(t, n) {
|
|
9
|
+
const c = F(t);
|
|
10
|
+
if (n) n(c);
|
|
11
11
|
else throw c;
|
|
12
12
|
}
|
|
13
|
-
const
|
|
14
|
-
function({ option:
|
|
15
|
-
const p = u(null), r = u(null),
|
|
16
|
-
return
|
|
13
|
+
const D = d(
|
|
14
|
+
function({ option: n, data: c, className: S, style: g, onReady: o, onError: f }, h) {
|
|
15
|
+
const p = u(null), r = u(null), m = u(o), s = u(f);
|
|
16
|
+
return m.current = o, s.current = f, k(h, () => ({
|
|
17
17
|
getInstance: () => r.current,
|
|
18
18
|
appendData: (e) => r.current?.appendData(e),
|
|
19
19
|
resize: () => r.current?.resize(),
|
|
20
20
|
clear: () => r.current?.clear(),
|
|
21
21
|
resetView: () => r.current?.resetView(),
|
|
22
22
|
link: (e) => r.current?.link(e),
|
|
23
|
-
unlink: () => r.current?.unlink()
|
|
24
|
-
|
|
23
|
+
unlink: () => r.current?.unlink(),
|
|
24
|
+
setSelection: (e) => r.current?.setSelection(e),
|
|
25
|
+
getSelection: () => r.current?.getSelection(),
|
|
26
|
+
getSpectrumMarkers: () => r.current?.getSpectrumMarkers() ?? [],
|
|
27
|
+
findSpectrumPeaks: (e) => r.current?.findSpectrumPeaks(e) ?? [],
|
|
28
|
+
getSpectrumSelectionMeasurement: () => r.current?.getSpectrumSelectionMeasurement(),
|
|
29
|
+
resetSpectrumTraces: () => r.current?.resetSpectrumTraces(),
|
|
30
|
+
setSpectrumTraceVisible: (e, a) => r.current?.setSpectrumTraceVisible(e, a),
|
|
31
|
+
getSpectrumTraceVisibility: () => r.current?.getSpectrumTraceVisibility() ?? {},
|
|
32
|
+
setWaterfallFrozen: (e) => r.current?.setWaterfallFrozen(e),
|
|
33
|
+
isWaterfallFrozen: () => r.current?.isWaterfallFrozen() ?? !1,
|
|
34
|
+
setWaterfallCursor: (e) => r.current?.setWaterfallCursor(e),
|
|
35
|
+
getWaterfallCursor: () => r.current?.getWaterfallCursor(),
|
|
36
|
+
getWaterfallFrame: (e) => r.current?.getWaterfallFrame(e)
|
|
37
|
+
}), []), i(() => {
|
|
25
38
|
const e = p.current;
|
|
26
39
|
if (!e) return;
|
|
27
|
-
let
|
|
40
|
+
let a;
|
|
28
41
|
try {
|
|
29
|
-
|
|
42
|
+
a = new w(e, n);
|
|
30
43
|
} catch (C) {
|
|
31
|
-
|
|
44
|
+
l(C, s.current);
|
|
32
45
|
return;
|
|
33
46
|
}
|
|
34
|
-
return r.current =
|
|
47
|
+
return r.current = a, m.current?.(a), () => {
|
|
35
48
|
r.current?.dispose(), r.current = null;
|
|
36
49
|
};
|
|
37
|
-
}, []),
|
|
50
|
+
}, []), i(() => {
|
|
38
51
|
try {
|
|
39
|
-
r.current?.setOption(
|
|
52
|
+
r.current?.setOption(n);
|
|
40
53
|
} catch (e) {
|
|
41
|
-
|
|
54
|
+
l(e, s.current);
|
|
42
55
|
}
|
|
43
|
-
}, [
|
|
56
|
+
}, [n]), i(() => {
|
|
44
57
|
try {
|
|
45
58
|
c && r.current?.setData(c);
|
|
46
59
|
} catch (e) {
|
|
47
|
-
|
|
60
|
+
l(e, s.current);
|
|
48
61
|
}
|
|
49
|
-
}, [c]), /* @__PURE__ */
|
|
62
|
+
}, [c]), /* @__PURE__ */ W("div", { ref: p, className: S, style: g });
|
|
50
63
|
}
|
|
51
64
|
);
|
|
52
|
-
function
|
|
53
|
-
const
|
|
54
|
-
|
|
65
|
+
function E() {
|
|
66
|
+
const t = u(null), n = z((c) => {
|
|
67
|
+
t.current?.appendData(c);
|
|
55
68
|
}, []);
|
|
56
|
-
return
|
|
69
|
+
return R(() => ({ chartRef: t, appendData: n }), [n]);
|
|
57
70
|
}
|
|
58
71
|
export {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
72
|
+
D as SignalChart,
|
|
73
|
+
x as SignalChartLinkGroup,
|
|
74
|
+
E as useSignalChart
|
|
62
75
|
};
|
|
63
76
|
//# sourceMappingURL=signal-visualization-react.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signal-visualization-react.js","sources":["../src/SignalChart.tsx","../src/useSignalChart.ts"],"sourcesContent":["import {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n type ReactElement,\n} from 'react'\nimport { SignalChart as CoreSignalChart } from '@signal-visualization/core'\n\nimport type { SignalChartHandle, SignalChartProps } from './types'\n\nfunction normalizeError(error: unknown): Error {\n return error instanceof Error ? error : new Error(String(error))\n}\n\nfunction reportError(error: unknown, callback: ((error: Error) => void) | undefined): void {\n const normalized = normalizeError(error)\n if (callback) callback(normalized)\n else throw normalized\n}\n\nexport const SignalChart = forwardRef<SignalChartHandle, SignalChartProps>(\n function SignalChart({ option, data, className, style, onReady, onError }, ref): ReactElement {\n const containerRef = useRef<HTMLDivElement>(null)\n const instanceRef = useRef<CoreSignalChart | null>(null)\n const onReadyRef = useRef(onReady)\n const onErrorRef = useRef(onError)\n onReadyRef.current = onReady\n onErrorRef.current = onError\n\n useImperativeHandle(ref, () => ({\n getInstance: () => instanceRef.current,\n appendData: (data) => instanceRef.current?.appendData(data),\n resize: () => instanceRef.current?.resize(),\n clear: () => instanceRef.current?.clear(),\n resetView: () => instanceRef.current?.resetView(),\n link: (group) => instanceRef.current?.link(group),\n unlink: () => instanceRef.current?.unlink(),\n }), [])\n\n useEffect(() => {\n const container = containerRef.current\n if (!container) return\n let instance: CoreSignalChart\n try {\n instance = new CoreSignalChart(container, option)\n } catch (error) {\n reportError(error, onErrorRef.current)\n return\n }\n instanceRef.current = instance\n onReadyRef.current?.(instance)\n return () => {\n instanceRef.current?.dispose()\n instanceRef.current = null\n }\n }, [])\n\n useEffect(() => {\n try {\n instanceRef.current?.setOption(option)\n } catch (error) {\n reportError(error, onErrorRef.current)\n }\n }, [option])\n\n useEffect(() => {\n try {\n if (data) instanceRef.current?.setData(data)\n } catch (error) {\n reportError(error, onErrorRef.current)\n }\n }, [data])\n\n return <div ref={containerRef} className={className} style={style} />\n },\n)\n","import { useCallback, useMemo, useRef, type RefObject } from 'react'\nimport type { SignalData } from '@signal-visualization/core'\n\nimport type { SignalChartHandle } from './types'\n\nexport interface UseSignalChartResult {\n readonly chartRef: RefObject<SignalChartHandle | null>\n readonly appendData: (data: SignalData) => void\n}\n\nexport function useSignalChart(): UseSignalChartResult {\n const chartRef = useRef<SignalChartHandle>(null)\n const appendData = useCallback((data: SignalData): void => {\n chartRef.current?.appendData(data)\n }, [])\n\n return useMemo(() => ({ chartRef, appendData }), [appendData])\n}\n"],"names":["normalizeError","error","reportError","callback","normalized","SignalChart","forwardRef","option","data","className","style","onReady","onError","ref","containerRef","useRef","instanceRef","onReadyRef","onErrorRef","useImperativeHandle","group","useEffect","container","instance","CoreSignalChart","jsx","useSignalChart","chartRef","appendData","useCallback","useMemo"],"mappings":";;;;AAWA,SAASA,EAAeC,GAAuB;AAC7C,SAAOA,aAAiB,QAAQA,IAAQ,IAAI,MAAM,OAAOA,CAAK,CAAC;AACjE;AAEA,SAASC,EAAYD,GAAgBE,GAAsD;AACzF,QAAMC,IAAaJ,EAAeC,CAAK;AACvC,MAAIE,KAAmBC,CAAU;AAAA,MAC5B,OAAMA;AACb;AAEO,MAAMC,IAAcC;AAAA,EACzB,SAAqB,EAAE,QAAAC,GAAQ,MAAAC,GAAM,WAAAC,GAAW,OAAAC,GAAO,SAAAC,GAAS,SAAAC,EAAA,GAAWC,GAAmB;AAC5F,UAAMC,IAAeC,EAAuB,IAAI,GAC1CC,IAAcD,EAA+B,IAAI,GACjDE,IAAaF,EAAOJ,CAAO,GAC3BO,IAAaH,EAAOH,CAAO;AACjC,WAAAK,EAAW,UAAUN,GACrBO,EAAW,UAAUN,GAErBO,EAAoBN,GAAK,OAAO;AAAA,MAC9B,aAAa,MAAMG,EAAY;AAAA,MAC/B,YAAY,CAACR,MAASQ,EAAY,SAAS,WAAWR,CAAI;AAAA,MAC1D,QAAQ,MAAMQ,EAAY,SAAS,OAAA;AAAA,MACnC,OAAO,MAAMA,EAAY,SAAS,MAAA;AAAA,MAClC,WAAW,MAAMA,EAAY,SAAS,UAAA;AAAA,MACtC,MAAM,CAACI,MAAUJ,EAAY,SAAS,KAAKI,CAAK;AAAA,MAChD,QAAQ,MAAMJ,EAAY,SAAS,OAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"signal-visualization-react.js","sources":["../src/SignalChart.tsx","../src/useSignalChart.ts"],"sourcesContent":["import {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n type ReactElement,\n} from 'react'\nimport { SignalChart as CoreSignalChart } from '@signal-visualization/core'\n\nimport type { SignalChartHandle, SignalChartProps } from './types'\n\nfunction normalizeError(error: unknown): Error {\n return error instanceof Error ? error : new Error(String(error))\n}\n\nfunction reportError(error: unknown, callback: ((error: Error) => void) | undefined): void {\n const normalized = normalizeError(error)\n if (callback) callback(normalized)\n else throw normalized\n}\n\nexport const SignalChart = forwardRef<SignalChartHandle, SignalChartProps>(\n function SignalChart({ option, data, className, style, onReady, onError }, ref): ReactElement {\n const containerRef = useRef<HTMLDivElement>(null)\n const instanceRef = useRef<CoreSignalChart | null>(null)\n const onReadyRef = useRef(onReady)\n const onErrorRef = useRef(onError)\n onReadyRef.current = onReady\n onErrorRef.current = onError\n\n useImperativeHandle(ref, () => ({\n getInstance: () => instanceRef.current,\n appendData: (data) => instanceRef.current?.appendData(data),\n resize: () => instanceRef.current?.resize(),\n clear: () => instanceRef.current?.clear(),\n resetView: () => instanceRef.current?.resetView(),\n link: (group) => instanceRef.current?.link(group),\n unlink: () => instanceRef.current?.unlink(),\n setSelection: (selection) => instanceRef.current?.setSelection(selection),\n getSelection: () => instanceRef.current?.getSelection(),\n getSpectrumMarkers: () => instanceRef.current?.getSpectrumMarkers() ?? [],\n findSpectrumPeaks: (options) => instanceRef.current?.findSpectrumPeaks(options) ?? [],\n getSpectrumSelectionMeasurement: () => instanceRef.current?.getSpectrumSelectionMeasurement(),\n resetSpectrumTraces: () => instanceRef.current?.resetSpectrumTraces(),\n setSpectrumTraceVisible: (traceId, visible) => instanceRef.current?.setSpectrumTraceVisible(traceId, visible),\n getSpectrumTraceVisibility: () => instanceRef.current?.getSpectrumTraceVisibility() ?? {},\n setWaterfallFrozen: (frozen) => instanceRef.current?.setWaterfallFrozen(frozen),\n isWaterfallFrozen: () => instanceRef.current?.isWaterfallFrozen() ?? false,\n setWaterfallCursor: (age) => instanceRef.current?.setWaterfallCursor(age),\n getWaterfallCursor: () => instanceRef.current?.getWaterfallCursor(),\n getWaterfallFrame: (age) => instanceRef.current?.getWaterfallFrame(age),\n }), [])\n\n useEffect(() => {\n const container = containerRef.current\n if (!container) return\n let instance: CoreSignalChart\n try {\n instance = new CoreSignalChart(container, option)\n } catch (error) {\n reportError(error, onErrorRef.current)\n return\n }\n instanceRef.current = instance\n onReadyRef.current?.(instance)\n return () => {\n instanceRef.current?.dispose()\n instanceRef.current = null\n }\n }, [])\n\n useEffect(() => {\n try {\n instanceRef.current?.setOption(option)\n } catch (error) {\n reportError(error, onErrorRef.current)\n }\n }, [option])\n\n useEffect(() => {\n try {\n if (data) instanceRef.current?.setData(data)\n } catch (error) {\n reportError(error, onErrorRef.current)\n }\n }, [data])\n\n return <div ref={containerRef} className={className} style={style} />\n },\n)\n","import { useCallback, useMemo, useRef, type RefObject } from 'react'\nimport type { SignalData } from '@signal-visualization/core'\n\nimport type { SignalChartHandle } from './types'\n\nexport interface UseSignalChartResult {\n readonly chartRef: RefObject<SignalChartHandle | null>\n readonly appendData: (data: SignalData) => void\n}\n\nexport function useSignalChart(): UseSignalChartResult {\n const chartRef = useRef<SignalChartHandle>(null)\n const appendData = useCallback((data: SignalData): void => {\n chartRef.current?.appendData(data)\n }, [])\n\n return useMemo(() => ({ chartRef, appendData }), [appendData])\n}\n"],"names":["normalizeError","error","reportError","callback","normalized","SignalChart","forwardRef","option","data","className","style","onReady","onError","ref","containerRef","useRef","instanceRef","onReadyRef","onErrorRef","useImperativeHandle","group","selection","options","traceId","visible","frozen","age","useEffect","container","instance","CoreSignalChart","jsx","useSignalChart","chartRef","appendData","useCallback","useMemo"],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CSSProperties } from 'react';
|
|
2
|
-
import type { ConstellationData, SignalChart as CoreSignalChart, SignalChartLinkGroup, SignalChartOption, SignalData, SpectrumData, WaterfallFrame, WaveformData } from '@signal-visualization/core';
|
|
2
|
+
import type { ConstellationData, SignalChart as CoreSignalChart, SignalChartLinkGroup, SignalChartOption, SignalData, FrequencySelection, SpectrumMarkerMeasurement, SpectrumPeakMeasurement, SpectrumPeakSearchOption, SpectrumSelectionMeasurement, SpectrumData, WaterfallFrame, WaterfallCursorMeasurement, WaterfallHistoryFrame, WaveformData } from '@signal-visualization/core';
|
|
3
3
|
export interface SignalChartHandle {
|
|
4
4
|
getInstance(): CoreSignalChart | null;
|
|
5
5
|
appendData(data: SignalData): void;
|
|
@@ -8,6 +8,19 @@ export interface SignalChartHandle {
|
|
|
8
8
|
resetView(): void;
|
|
9
9
|
link(group: SignalChartLinkGroup): void;
|
|
10
10
|
unlink(): void;
|
|
11
|
+
setSelection(selection: FrequencySelection | undefined): void;
|
|
12
|
+
getSelection(): FrequencySelection | undefined;
|
|
13
|
+
getSpectrumMarkers(): readonly SpectrumMarkerMeasurement[];
|
|
14
|
+
findSpectrumPeaks(options?: SpectrumPeakSearchOption): readonly SpectrumPeakMeasurement[];
|
|
15
|
+
getSpectrumSelectionMeasurement(): SpectrumSelectionMeasurement | undefined;
|
|
16
|
+
resetSpectrumTraces(): void;
|
|
17
|
+
setSpectrumTraceVisible(traceId: string, visible: boolean): void;
|
|
18
|
+
getSpectrumTraceVisibility(): Readonly<Record<string, boolean>>;
|
|
19
|
+
setWaterfallFrozen(frozen: boolean): void;
|
|
20
|
+
isWaterfallFrozen(): boolean;
|
|
21
|
+
setWaterfallCursor(age: number | undefined): void;
|
|
22
|
+
getWaterfallCursor(): WaterfallCursorMeasurement | undefined;
|
|
23
|
+
getWaterfallFrame(age?: number): WaterfallHistoryFrame | undefined;
|
|
11
24
|
}
|
|
12
25
|
export type SignalChartType = NonNullable<SignalChartOption['type']>;
|
|
13
26
|
export type SignalChartOptionFor<TType extends SignalChartType> = Omit<SignalChartOption, 'type'> & {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EACV,iBAAiB,EACjB,WAAW,IAAI,eAAe,EAC9B,oBAAoB,EACpB,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,cAAc,EACd,YAAY,EACb,MAAM,4BAA4B,CAAA;AAEnC,MAAM,WAAW,iBAAiB;IAChC,WAAW,IAAI,eAAe,GAAG,IAAI,CAAA;IACrC,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAA;IAClC,MAAM,IAAI,IAAI,CAAA;IACd,KAAK,IAAI,IAAI,CAAA;IACb,SAAS,IAAI,IAAI,CAAA;IACjB,IAAI,CAAC,KAAK,EAAE,oBAAoB,GAAG,IAAI,CAAA;IACvC,MAAM,IAAI,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@signal-visualization/react",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "React adapter for @signal-visualization/core",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/signal-visualization-react.js",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"jsdom": "^30.0.1",
|
|
28
28
|
"react": "^19.2.8",
|
|
29
29
|
"react-dom": "^19.2.8",
|
|
30
|
-
"@signal-visualization/core": "^1.
|
|
30
|
+
"@signal-visualization/core": "^1.2.0"
|
|
31
31
|
},
|
|
32
32
|
"scripts": {
|
|
33
33
|
"build": "vite build && tsc -p tsconfig.build.json",
|