@luxonis/depthai-viewer-common 3.8.2 → 3.8.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/README.md +104 -11
- package/dist/components/CTASubLabel.d.ts +10 -2
- package/dist/components/CTASubLabel.d.ts.map +1 -1
- package/dist/components/CTASubLabel.js +3 -0
- package/dist/components/CTASubLabel.js.map +1 -1
- package/dist/components/DepthAIContext.d.ts +25 -2
- package/dist/components/DepthAIContext.d.ts.map +1 -1
- package/dist/components/DepthAIContext.js +3 -0
- package/dist/components/DepthAIContext.js.map +1 -1
- package/dist/components/Pipeline.d.ts +19 -2
- package/dist/components/Pipeline.d.ts.map +1 -1
- package/dist/components/Pipeline.js +12 -0
- package/dist/components/Pipeline.js.map +1 -1
- package/dist/components/Resizable.d.ts +20 -0
- package/dist/components/Resizable.d.ts.map +1 -1
- package/dist/components/Resizable.js +8 -0
- package/dist/components/Resizable.js.map +1 -1
- package/dist/components/Streams.d.ts +98 -4
- package/dist/components/Streams.d.ts.map +1 -1
- package/dist/components/Streams.js +8 -0
- package/dist/components/Streams.js.map +1 -1
- package/dist/components/ThemeToggle.d.ts +8 -0
- package/dist/components/ThemeToggle.d.ts.map +1 -1
- package/dist/components/ThemeToggle.js +8 -0
- package/dist/components/ThemeToggle.js.map +1 -1
- package/dist/constants/connection.d.ts +27 -0
- package/dist/constants/connection.d.ts.map +1 -1
- package/dist/constants/connection.js +12 -0
- package/dist/constants/connection.js.map +1 -1
- package/dist/constants/streams.d.ts +9 -0
- package/dist/constants/streams.d.ts.map +1 -1
- package/dist/constants/streams.js +6 -0
- package/dist/constants/streams.js.map +1 -1
- package/dist/constants/url.d.ts +12 -0
- package/dist/constants/url.d.ts.map +1 -1
- package/dist/constants/url.js +12 -0
- package/dist/constants/url.js.map +1 -1
- package/dist/dai-connection/connection.d.ts +189 -2
- package/dist/dai-connection/connection.d.ts.map +1 -1
- package/dist/dai-connection/connection.js +121 -5
- package/dist/dai-connection/connection.js.map +1 -1
- package/dist/dai-connection/decoder.worker.d.ts +21 -0
- package/dist/dai-connection/decoder.worker.d.ts.map +1 -1
- package/dist/dai-connection/decoder.worker.js +6 -0
- package/dist/dai-connection/decoder.worker.js.map +1 -1
- package/dist/hooks/connection.d.ts +206 -0
- package/dist/hooks/connection.d.ts.map +1 -1
- package/dist/hooks/connection.js +22 -0
- package/dist/hooks/connection.js.map +1 -1
- package/dist/hooks/navigation.d.ts +5 -0
- package/dist/hooks/navigation.d.ts.map +1 -1
- package/dist/hooks/navigation.js +5 -0
- package/dist/hooks/navigation.js.map +1 -1
- package/dist/hooks/search.d.ts +12 -0
- package/dist/hooks/search.d.ts.map +1 -1
- package/dist/hooks/search.js +3 -0
- package/dist/hooks/search.js.map +1 -1
- package/dist/hooks/useFullScreen.d.ts +8 -0
- package/dist/hooks/useFullScreen.d.ts.map +1 -1
- package/dist/hooks/useFullScreen.js +8 -0
- package/dist/hooks/useFullScreen.js.map +1 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/models/device-configuration.d.ts +69 -0
- package/dist/models/device-configuration.d.ts.map +1 -1
- package/dist/models/device-configuration.js +21 -0
- package/dist/models/device-configuration.js.map +1 -1
- package/dist/providers/ConnectionProvider.d.ts +56 -2
- package/dist/providers/ConnectionProvider.d.ts.map +1 -1
- package/dist/providers/ConnectionProvider.js +26 -0
- package/dist/providers/ConnectionProvider.js.map +1 -1
- package/dist/providers/DataProvider.d.ts +129 -0
- package/dist/providers/DataProvider.d.ts.map +1 -1
- package/dist/providers/DataProvider.js +21 -0
- package/dist/providers/DataProvider.js.map +1 -1
- package/dist/providers/ThemeProvider.d.ts +67 -7
- package/dist/providers/ThemeProvider.d.ts.map +1 -1
- package/dist/providers/ThemeProvider.js +39 -2
- package/dist/providers/ThemeProvider.js.map +1 -1
- package/dist/providers/VisualizerRuntimeConfigProvider.d.ts +43 -3
- package/dist/providers/VisualizerRuntimeConfigProvider.d.ts.map +1 -1
- package/dist/providers/VisualizerRuntimeConfigProvider.js +20 -3
- package/dist/providers/VisualizerRuntimeConfigProvider.js.map +1 -1
- package/dist/utils/arrays.d.ts +7 -0
- package/dist/utils/arrays.d.ts.map +1 -1
- package/dist/utils/arrays.js +7 -0
- package/dist/utils/arrays.js.map +1 -1
- package/dist/utils/functions.d.ts +3 -0
- package/dist/utils/functions.d.ts.map +1 -1
- package/dist/utils/functions.js +3 -0
- package/dist/utils/functions.js.map +1 -1
- package/dist/utils/local-storage.d.ts +20 -0
- package/dist/utils/local-storage.d.ts.map +1 -1
- package/dist/utils/local-storage.js +17 -0
- package/dist/utils/local-storage.js.map +1 -1
- package/dist/utils/logger.d.ts +31 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +36 -7
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/sorting.d.ts +6 -0
- package/dist/utils/sorting.d.ts.map +1 -1
- package/dist/utils/sorting.js +6 -0
- package/dist/utils/sorting.js.map +1 -1
- package/dist/utils/topic.d.ts +6 -0
- package/dist/utils/topic.d.ts.map +1 -1
- package/dist/utils/topic.js +3 -0
- package/dist/utils/topic.js.map +1 -1
- package/dist/utils/units.d.ts +24 -0
- package/dist/utils/units.d.ts.map +1 -1
- package/dist/utils/units.js +24 -0
- package/dist/utils/units.js.map +1 -1
- package/dist/utils/url.d.ts +9 -0
- package/dist/utils/url.d.ts.map +1 -1
- package/dist/utils/url.js +10 -1
- package/dist/utils/url.js.map +1 -1
- package/dist/utils/vite-dev-fix.d.ts +13 -0
- package/dist/utils/vite-dev-fix.d.ts.map +1 -1
- package/dist/utils/vite-dev-fix.js +13 -0
- package/dist/utils/vite-dev-fix.js.map +1 -1
- package/package.json +2 -2
- package/protobuf-gen.sh +60 -3
|
@@ -1,43 +1,249 @@
|
|
|
1
1
|
import type { Pipeline, PipelineState } from '@luxonis/depthai-pipeline-lib';
|
|
2
2
|
import { DAIConnection, type DAIService, type MessageHandlerVersion } from '../dai-connection/connection.js';
|
|
3
3
|
import type { VisualizerConnection } from '../visualizer/index.js';
|
|
4
|
+
/**
|
|
5
|
+
* Token refresh behavior used by WebRTC connections.
|
|
6
|
+
*
|
|
7
|
+
* @remarks
|
|
8
|
+
* Pass `true` to write refreshed tokens back to the URL, pass a callback to handle them in the
|
|
9
|
+
* host application, or pass `false` to disable automatic propagation.
|
|
10
|
+
*/
|
|
4
11
|
export type TokenRefreshHandler = ((newToken: string) => void) | boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Stream topic advertised by a DepthAI pipeline and shown in stream controls.
|
|
14
|
+
*/
|
|
5
15
|
export type Topic = {
|
|
16
|
+
/**
|
|
17
|
+
* Backend topic name used for subscribe/unsubscribe calls.
|
|
18
|
+
*/
|
|
6
19
|
name: string;
|
|
20
|
+
/**
|
|
21
|
+
* Whether the stream is currently subscribed in the active connection.
|
|
22
|
+
*
|
|
23
|
+
* @remarks
|
|
24
|
+
* Fake topics update this flag locally; backend topics are toggled through the connection.
|
|
25
|
+
*/
|
|
7
26
|
enabled: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Stream payload kind used by the visualizer renderer.
|
|
29
|
+
*/
|
|
8
30
|
kind: 'pointCloud' | 'image' | 'imu' | 'rgbd';
|
|
31
|
+
/**
|
|
32
|
+
* Annotation topics rendered together with this topic.
|
|
33
|
+
*
|
|
34
|
+
* @defaultValue `[]`
|
|
35
|
+
*/
|
|
9
36
|
annotations: string[];
|
|
37
|
+
/**
|
|
38
|
+
* Annotation topics from sibling groups that can be attached to this topic.
|
|
39
|
+
*
|
|
40
|
+
* @defaultValue `[]`
|
|
41
|
+
*/
|
|
10
42
|
extraAnnotations: string[];
|
|
43
|
+
/**
|
|
44
|
+
* Parent topic used when this synthetic topic is derived from another stream.
|
|
45
|
+
*
|
|
46
|
+
* @remarks
|
|
47
|
+
* `undefined` means the topic is a backend topic or a standalone fake topic.
|
|
48
|
+
*/
|
|
11
49
|
parent?: string;
|
|
12
50
|
};
|
|
51
|
+
/**
|
|
52
|
+
* State and actions exposed by the DepthAI connection hook and provider.
|
|
53
|
+
*/
|
|
13
54
|
export type ConnectionData = {
|
|
55
|
+
/**
|
|
56
|
+
* Whether the underlying DepthAI connection is currently open.
|
|
57
|
+
*
|
|
58
|
+
* @remarks
|
|
59
|
+
* This becomes `false` during reconnect, close, or disconnect handling before
|
|
60
|
+
* derived state such as topics and pipeline data is requested again.
|
|
61
|
+
*/
|
|
14
62
|
connected: boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Active DepthAI connection instance, or `null` before connection or after cleanup.
|
|
65
|
+
*/
|
|
15
66
|
daiConnection: DAIConnection | null;
|
|
67
|
+
/**
|
|
68
|
+
* Visualizer connections consumed by Foxglove-derived panels.
|
|
69
|
+
*
|
|
70
|
+
* @remarks
|
|
71
|
+
* The array is empty until the underlying connection exposes a visualizer connection.
|
|
72
|
+
*/
|
|
16
73
|
connections: VisualizerConnection[];
|
|
74
|
+
/**
|
|
75
|
+
* Parsed default pipeline graph.
|
|
76
|
+
*
|
|
77
|
+
* @remarks
|
|
78
|
+
* `undefined` means the pipeline has not been requested or was reset during reconnect.
|
|
79
|
+
* `null` means the backend returned no default pipeline.
|
|
80
|
+
*/
|
|
17
81
|
pipeline: Pipeline | null | undefined;
|
|
82
|
+
/**
|
|
83
|
+
* Parsed full pipeline graph.
|
|
84
|
+
*
|
|
85
|
+
* @remarks
|
|
86
|
+
* `undefined` means the full pipeline has not been requested or was reset during
|
|
87
|
+
* reconnect. `null` means the backend returned no full pipeline.
|
|
88
|
+
*/
|
|
18
89
|
fullPipeline: Pipeline | null | undefined;
|
|
90
|
+
/**
|
|
91
|
+
* Live pipeline node state.
|
|
92
|
+
*
|
|
93
|
+
* @remarks
|
|
94
|
+
* `undefined` is the initial provider placeholder value. The hook resets this to
|
|
95
|
+
* `null` during reconnect, close, and disconnect, and later replaces it when live
|
|
96
|
+
* state arrives from the backend.
|
|
97
|
+
*/
|
|
19
98
|
pipelineState: PipelineState[] | null | undefined;
|
|
99
|
+
/**
|
|
100
|
+
* Whether pipeline data is currently loading.
|
|
101
|
+
*/
|
|
20
102
|
isPipelineLoading: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Updates the pipeline loading state.
|
|
105
|
+
*/
|
|
21
106
|
setIsPipelineLoading: (isLoading: boolean) => void;
|
|
107
|
+
/**
|
|
108
|
+
* Stream topics currently reported by the backend plus any configured fake topics.
|
|
109
|
+
*
|
|
110
|
+
* @remarks
|
|
111
|
+
* The list is cleared when the connection reconnects, closes, or disconnects.
|
|
112
|
+
*/
|
|
22
113
|
topics: Topic[];
|
|
114
|
+
/**
|
|
115
|
+
* Whether stream topics are currently loading.
|
|
116
|
+
*/
|
|
23
117
|
topicsLoading: boolean;
|
|
118
|
+
/**
|
|
119
|
+
* Topic names that the visualizer cannot render.
|
|
120
|
+
*
|
|
121
|
+
* @remarks
|
|
122
|
+
* Values are appended after deserialization reports unsupported encoded streams.
|
|
123
|
+
*/
|
|
24
124
|
unsupportedTopics: string[];
|
|
125
|
+
/**
|
|
126
|
+
* Toggles subscription for a stream topic.
|
|
127
|
+
*
|
|
128
|
+
* @remarks
|
|
129
|
+
* Fake topics are toggled locally. Point cloud topics also toggle the shared point
|
|
130
|
+
* cloud color topic so image data is available for coloring.
|
|
131
|
+
*/
|
|
25
132
|
toggleTopic: (topic: string) => void;
|
|
133
|
+
/**
|
|
134
|
+
* Whether the connection failed in a Viewer-specific flow.
|
|
135
|
+
*/
|
|
26
136
|
isConnectionError: boolean;
|
|
27
137
|
};
|
|
138
|
+
/**
|
|
139
|
+
* Arguments for creating and maintaining a DepthAI connection from React state.
|
|
140
|
+
*/
|
|
28
141
|
export type UseCreateConnectionArgs = {
|
|
142
|
+
/**
|
|
143
|
+
* Connection transport used by the DepthAI backend.
|
|
144
|
+
*/
|
|
29
145
|
type: 'webrtc' | 'ws';
|
|
146
|
+
/**
|
|
147
|
+
* WebSocket URL or signaling endpoint used by the connection.
|
|
148
|
+
*
|
|
149
|
+
* @remarks
|
|
150
|
+
* For `ws`, this is the backend WebSocket URL. For `webrtc`, it is passed to the
|
|
151
|
+
* connection initializer together with `token` and `clientId`.
|
|
152
|
+
*/
|
|
30
153
|
connectionUrl: string;
|
|
154
|
+
/**
|
|
155
|
+
* WebRTC auth token.
|
|
156
|
+
*
|
|
157
|
+
* @remarks
|
|
158
|
+
* Use an empty string for WebSocket connections.
|
|
159
|
+
*/
|
|
31
160
|
token: string;
|
|
161
|
+
/**
|
|
162
|
+
* WebRTC client id.
|
|
163
|
+
*
|
|
164
|
+
* @remarks
|
|
165
|
+
* Use an empty string for WebSocket connections.
|
|
166
|
+
*/
|
|
32
167
|
clientId: string;
|
|
168
|
+
/**
|
|
169
|
+
* DepthAI service names to poll while connected.
|
|
170
|
+
*
|
|
171
|
+
* @defaultValue `[]`
|
|
172
|
+
*/
|
|
33
173
|
activeServices: DAIService[];
|
|
174
|
+
/**
|
|
175
|
+
* Called after a new `DAIConnection` instance is created and before it is initialized.
|
|
176
|
+
*
|
|
177
|
+
* @remarks
|
|
178
|
+
* The callback can attach host-specific listeners. It may run more than once when
|
|
179
|
+
* connection parameters change or the hook reconnects.
|
|
180
|
+
*/
|
|
34
181
|
onNewConnection?: (connection: DAIConnection) => void;
|
|
182
|
+
/**
|
|
183
|
+
* Enables verbose connection logging.
|
|
184
|
+
*
|
|
185
|
+
* @defaultValue `false`
|
|
186
|
+
*/
|
|
35
187
|
withDebugLogs?: boolean;
|
|
188
|
+
/**
|
|
189
|
+
* Backend message handling protocol expected by the visualizer connection.
|
|
190
|
+
*/
|
|
36
191
|
messageHandlerVersion?: MessageHandlerVersion;
|
|
192
|
+
/**
|
|
193
|
+
* Stream topics opened automatically after connection.
|
|
194
|
+
*
|
|
195
|
+
* @remarks
|
|
196
|
+
* `undefined` leaves topic selection to the backend/default connection behavior.
|
|
197
|
+
*/
|
|
37
198
|
defaultTopics?: string[];
|
|
199
|
+
/**
|
|
200
|
+
* Enables Viewer-specific error handling and default stream behavior.
|
|
201
|
+
*
|
|
202
|
+
* @remarks
|
|
203
|
+
* When enabled, disconnects show the Viewer-specific toast and set
|
|
204
|
+
* `isConnectionError` to `true`.
|
|
205
|
+
*
|
|
206
|
+
* @defaultValue `false`
|
|
207
|
+
*/
|
|
38
208
|
isViewer?: boolean;
|
|
209
|
+
/**
|
|
210
|
+
* Synthetic topics merged into the backend topic list.
|
|
211
|
+
*
|
|
212
|
+
* @remarks
|
|
213
|
+
* Fake topics are useful when the host wants to expose derived views that are not
|
|
214
|
+
* directly advertised by the backend.
|
|
215
|
+
*
|
|
216
|
+
* @defaultValue `[]`
|
|
217
|
+
*/
|
|
39
218
|
fakeTopics?: Topic[];
|
|
219
|
+
/**
|
|
220
|
+
* Controls WebRTC token refresh propagation.
|
|
221
|
+
*
|
|
222
|
+
* @defaultValue `false`
|
|
223
|
+
*/
|
|
40
224
|
tokenRefresh?: TokenRefreshHandler;
|
|
41
225
|
};
|
|
226
|
+
/**
|
|
227
|
+
* Creates a managed DepthAI connection and exposes connection state for React components.
|
|
228
|
+
*
|
|
229
|
+
* @remarks
|
|
230
|
+
* The hook creates and initializes `DAIConnection`, subscribes to connection events,
|
|
231
|
+
* resets topics/pipeline state during reconnect or disconnect, updates active service
|
|
232
|
+
* polling when `activeServices` changes, and forwards key presses to the active
|
|
233
|
+
* connection while connected. Viewer WebRTC connections also receive session recovery
|
|
234
|
+
* settings backed by the latest refreshed token. It also clears pending reconnect
|
|
235
|
+
* timers on unmount.
|
|
236
|
+
*
|
|
237
|
+
* @example
|
|
238
|
+
* ```ts
|
|
239
|
+
* const connection = useCreateConnection({
|
|
240
|
+
* type: 'ws',
|
|
241
|
+
* connectionUrl: 'ws://localhost:8765',
|
|
242
|
+
* token: '',
|
|
243
|
+
* clientId: '',
|
|
244
|
+
* activeServices: [],
|
|
245
|
+
* });
|
|
246
|
+
* ```
|
|
247
|
+
*/
|
|
42
248
|
export declare function useCreateConnection({ type, activeServices, onNewConnection, isViewer, fakeTopics, tokenRefresh, ...params }: UseCreateConnectionArgs): ConnectionData;
|
|
43
249
|
//# sourceMappingURL=connection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/hooks/connection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAM7E,OAAO,EACN,aAAa,EACb,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAUnE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC;AAEzE,MAAM,MAAM,KAAK,GAAG;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,YAAY,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;IAC9C,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,oBAAoB,EAAE,CAAC;IACpC,QAAQ,EAAE,QAAQ,GAAG,IAAI,GAAG,SAAS,CAAC;IACtC,YAAY,EAAE,QAAQ,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,aAAa,EAAE,aAAa,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IAClD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,oBAAoB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACnD,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,iBAAiB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACrC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,UAAU,EAAE,CAAC;IAC7B,eAAe,CAAC,EAAE,CAAC,UAAU,EAAE,aAAa,KAAK,IAAI,CAAC;IACtD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACnC,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,EACnC,IAAI,EACJ,cAAc,EACd,eAAe,EACf,QAAgB,EAChB,UAAe,EACf,YAAoB,EACpB,GAAG,MAAM,EACT,EAAE,uBAAuB,GAAG,cAAc,CA0P1C"}
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/hooks/connection.ts"],"names":[],"mappings":"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"}
|
package/dist/hooks/connection.js
CHANGED
|
@@ -10,6 +10,28 @@ const logger = Logger.getLogger();
|
|
|
10
10
|
const VISUALIZER_RECONNECT_DELAY_MS = 1_000;
|
|
11
11
|
const BENCHMARK_RECONNECT_DELAY_MS = 5_000;
|
|
12
12
|
const BENCHMARK_MODE_ENABLED = import.meta.env?.BENCHMARK === 'true';
|
|
13
|
+
/**
|
|
14
|
+
* Creates a managed DepthAI connection and exposes connection state for React components.
|
|
15
|
+
*
|
|
16
|
+
* @remarks
|
|
17
|
+
* The hook creates and initializes `DAIConnection`, subscribes to connection events,
|
|
18
|
+
* resets topics/pipeline state during reconnect or disconnect, updates active service
|
|
19
|
+
* polling when `activeServices` changes, and forwards key presses to the active
|
|
20
|
+
* connection while connected. Viewer WebRTC connections also receive session recovery
|
|
21
|
+
* settings backed by the latest refreshed token. It also clears pending reconnect
|
|
22
|
+
* timers on unmount.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```ts
|
|
26
|
+
* const connection = useCreateConnection({
|
|
27
|
+
* type: 'ws',
|
|
28
|
+
* connectionUrl: 'ws://localhost:8765',
|
|
29
|
+
* token: '',
|
|
30
|
+
* clientId: '',
|
|
31
|
+
* activeServices: [],
|
|
32
|
+
* });
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
13
35
|
export function useCreateConnection({ type, activeServices, onNewConnection, isViewer = false, fakeTopics = [], tokenRefresh = false, ...params }) {
|
|
14
36
|
const { updateSearch, search } = useFlatSearch({
|
|
15
37
|
defaultInit: { cid: '', t: '', preset: '' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/hooks/connection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EACN,aAAa,GAGb,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;AAClC,MAAM,6BAA6B,GAAG,KAAK,CAAC;AAC5C,MAAM,4BAA4B,GAAG,KAAK,CAAC;AAC3C,MAAM,sBAAsB,GAC1B,MAAM,CAAC,IAAsD,CAAC,GAAG,EAAE,SAAS,KAAK,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/hooks/connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolves the current viewer page and builds navigation paths that preserve search params.
|
|
3
|
+
*
|
|
4
|
+
* @param parseUrl - Optional custom parser for host applications with different routing.
|
|
5
|
+
*/
|
|
1
6
|
export declare function useNavigation(parseUrl?: (pathname: string) => {
|
|
2
7
|
basePath: string;
|
|
3
8
|
page: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/hooks/navigation.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;;;qBAGxE,MAAM,YAAW;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;EAQlF"}
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/hooks/navigation.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;;;qBAGxE,MAAM,YAAW;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;EAQlF"}
|
package/dist/hooks/navigation.js
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { parseUrl as defaultParseUrl } from '../utils/url.js';
|
|
2
|
+
/**
|
|
3
|
+
* Resolves the current viewer page and builds navigation paths that preserve search params.
|
|
4
|
+
*
|
|
5
|
+
* @param parseUrl - Optional custom parser for host applications with different routing.
|
|
6
|
+
*/
|
|
2
7
|
export function useNavigation(parseUrl) {
|
|
3
8
|
const { page, basePath } = (parseUrl ?? defaultParseUrl)(location.pathname);
|
|
4
9
|
const makePath = (page, options = {}) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/hooks/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE9D,MAAM,UAAU,aAAa,CAAC,QAAmE;IAChG,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,eAAe,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE5E,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,UAAqD,EAAE,EAAE,EAAE;QAC1F,MAAM,EAAE,QAAQ,GAAG,KAAK,EAAE,QAAQ,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAE7C,OAAO,IAAI,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IACxF,CAAC,CAAC;IAEF,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACrC,CAAC"}
|
|
1
|
+
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/hooks/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE9D;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,QAAmE;IAChG,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,eAAe,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE5E,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,UAAqD,EAAE,EAAE,EAAE;QAC1F,MAAM,EAAE,QAAQ,GAAG,KAAK,EAAE,QAAQ,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAE7C,OAAO,IAAI,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IACxF,CAAC,CAAC;IAEF,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACrC,CAAC"}
|
package/dist/hooks/search.d.ts
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Options for reading and mutating flat URL search parameters.
|
|
3
|
+
*/
|
|
1
4
|
export type UseFlatSearchArgs = {
|
|
5
|
+
/**
|
|
6
|
+
* Default search values returned when the URL does not contain a key.
|
|
7
|
+
*/
|
|
2
8
|
defaultInit?: Record<string, string | string[]>;
|
|
9
|
+
/**
|
|
10
|
+
* Search keys that should be parsed as comma-separated arrays.
|
|
11
|
+
*/
|
|
3
12
|
arrayFields?: string[];
|
|
4
13
|
};
|
|
14
|
+
/**
|
|
15
|
+
* Reads URL search params into a flat object and exposes a helper for updating one key at a time.
|
|
16
|
+
*/
|
|
5
17
|
export declare function useFlatSearch({ defaultInit, arrayFields }: UseFlatSearchArgs): {
|
|
6
18
|
search: {
|
|
7
19
|
[x: string]: string | string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/hooks/search.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,iBAAiB,GAAG;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAcF,wBAAgB,aAAa,CAAC,EAAE,WAAgB,EAAE,WAAW,EAAE,EAAE,iBAAiB;;;;wBAwB1E,MAAM,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI;EAqBlE"}
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/hooks/search.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC/B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAChD;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAcF;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,WAAgB,EAAE,WAAW,EAAE,EAAE,iBAAiB;;;;wBAwB1E,MAAM,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI;EAqBlE"}
|
package/dist/hooks/search.js
CHANGED
|
@@ -7,6 +7,9 @@ function setSearchParams(params) {
|
|
|
7
7
|
const newUrl = window.location.pathname + (newSearch ? `?${newSearch}` : '') + window.location.hash;
|
|
8
8
|
window.history.pushState(null, '', newUrl);
|
|
9
9
|
}
|
|
10
|
+
/**
|
|
11
|
+
* Reads URL search params into a flat object and exposes a helper for updating one key at a time.
|
|
12
|
+
*/
|
|
10
13
|
export function useFlatSearch({ defaultInit = {}, arrayFields }) {
|
|
11
14
|
const [version, setVersion] = React.useState(0);
|
|
12
15
|
React.useEffect(() => {
|
package/dist/hooks/search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/hooks/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/hooks/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAgB1B,SAAS,eAAe;IACvB,OAAO,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,eAAe,CAAC,MAAuB;IAC/C,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IACpC,MAAM,MAAM,GACX,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;IAEtF,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,EAAE,WAAW,GAAG,EAAE,EAAE,WAAW,EAAqB;IACjF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEhD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAChD,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACjE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACrC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QAEjC,OAAO;YACN,GAAG,WAAW;YACd,GAAG,MAAM,CAAC,WAAW,CACpB,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;gBAC3C,GAAG;gBACH,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK;aACjF,CAAC,CACF;SACD,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAExC,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CACrC,CAAC,GAAW,EAAE,KAAmD,EAAE,EAAE;QACpE,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;QAElC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACnC,CAAC;aAAM,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QAED,eAAe,CAAC,OAAO,CAAC,CAAC;QACzB,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,CAAC,EACD,EAAE,CACF,CAAC;IAEF,OAAO;QACN,MAAM,EAAE,UAAU;QAClB,YAAY;KACZ,CAAC;AACH,CAAC"}
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import React, { type MutableRefObject } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Tracks and controls fullscreen state for a fixed element ref.
|
|
4
|
+
*
|
|
5
|
+
* @param ref - Element ref that should enter fullscreen mode.
|
|
6
|
+
*/
|
|
2
7
|
export declare function useFullscreen(ref: React.MutableRefObject<HTMLElement | undefined | null>): {
|
|
3
8
|
expanded: boolean;
|
|
4
9
|
setExpanded: (newExpanded: boolean) => void;
|
|
5
10
|
};
|
|
11
|
+
/**
|
|
12
|
+
* Returns a fullscreen toggle helper for refs that are chosen at call time.
|
|
13
|
+
*/
|
|
6
14
|
export declare function useFullscreenDynamic(): {
|
|
7
15
|
toggleFullscreen: (ref: MutableRefObject<HTMLElement>) => void;
|
|
8
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFullScreen.d.ts","sourceRoot":"","sources":["../../src/hooks/useFullScreen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAErD,wBAAgB,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,SAAS,GAAG,IAAI,CAAC;;+BAczE,OAAO;EAetB;AAED,wBAAgB,oBAAoB;4BAcJ,gBAAgB,CAAC,WAAW,CAAC;EAe5D"}
|
|
1
|
+
{"version":3,"file":"useFullScreen.d.ts","sourceRoot":"","sources":["../../src/hooks/useFullScreen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAErD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,gBAAgB,CAAC,WAAW,GAAG,SAAS,GAAG,IAAI,CAAC;;+BAczE,OAAO;EAetB;AAED;;GAEG;AACH,wBAAgB,oBAAoB;4BAcJ,gBAAgB,CAAC,WAAW,CAAC;EAe5D"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Tracks and controls fullscreen state for a fixed element ref.
|
|
4
|
+
*
|
|
5
|
+
* @param ref - Element ref that should enter fullscreen mode.
|
|
6
|
+
*/
|
|
2
7
|
export function useFullscreen(ref) {
|
|
3
8
|
const [expanded, setExpanded] = React.useState(false);
|
|
4
9
|
React.useEffect(() => {
|
|
@@ -23,6 +28,9 @@ export function useFullscreen(ref) {
|
|
|
23
28
|
}, [ref]);
|
|
24
29
|
return { expanded, setExpanded: setFullscreen };
|
|
25
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Returns a fullscreen toggle helper for refs that are chosen at call time.
|
|
33
|
+
*/
|
|
26
34
|
export function useFullscreenDynamic() {
|
|
27
35
|
const [expanded, setExpanded] = React.useState(false);
|
|
28
36
|
React.useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFullScreen.js","sourceRoot":"","sources":["../../src/hooks/useFullScreen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAErD,MAAM,UAAU,aAAa,CAAC,GAA2D;IACxF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,MAAM,cAAc,GAAG,GAAG,EAAE;YAC3B,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gBAC7C,WAAW,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACF,CAAC,CAAC;QACF,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;QAC9D,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;IAC/E,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACtC,CAAC,WAAoB,EAAE,EAAE;QACxB,WAAW,CAAC,WAAW,CAAC,CAAC;QAEzB,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,WAAW,EAAE,CAAC;gBACjB,KAAK,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACP,KAAK,QAAQ,CAAC,cAAc,EAAE,CAAC;YAChC,CAAC;QACF,CAAC;IACF,CAAC,EACD,CAAC,GAAG,CAAC,CACL,CAAC;IAEF,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,oBAAoB;IACnC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,MAAM,cAAc,GAAG,GAAG,EAAE;YAC3B,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gBAC7C,WAAW,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACF,CAAC,CAAC;QACF,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;QAE9D,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;IAC/E,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,gBAAgB,GAAG,CAAC,GAAkC,EAAE,EAAE;QAC/D,MAAM,WAAW,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAEhD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,WAAW,EAAE,CAAC;gBACjB,KAAK,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBACrC,WAAW,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACP,KAAK,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC/B,WAAW,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACF,CAAC;IACF,CAAC,CAAC;IAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC7B,CAAC"}
|
|
1
|
+
{"version":3,"file":"useFullScreen.js","sourceRoot":"","sources":["../../src/hooks/useFullScreen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAErD;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,GAA2D;IACxF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,MAAM,cAAc,GAAG,GAAG,EAAE;YAC3B,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gBAC7C,WAAW,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACF,CAAC,CAAC;QACF,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;QAC9D,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;IAC/E,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACtC,CAAC,WAAoB,EAAE,EAAE;QACxB,WAAW,CAAC,WAAW,CAAC,CAAC;QAEzB,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,WAAW,EAAE,CAAC;gBACjB,KAAK,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACP,KAAK,QAAQ,CAAC,cAAc,EAAE,CAAC;YAChC,CAAC;QACF,CAAC;IACF,CAAC,EACD,CAAC,GAAG,CAAC,CACL,CAAC;IAEF,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IACnC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,MAAM,cAAc,GAAG,GAAG,EAAE;YAC3B,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gBAC7C,WAAW,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACF,CAAC,CAAC;QACF,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;QAE9D,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;IAC/E,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,gBAAgB,GAAG,CAAC,GAAkC,EAAE,EAAE;QAC/D,MAAM,WAAW,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAEhD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,WAAW,EAAE,CAAC;gBACjB,KAAK,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBACrC,WAAW,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACP,KAAK,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC/B,WAAW,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACF,CAAC;IACF,CAAC,CAAC;IAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC7B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared React building blocks and connection utilities for Luxonis DepthAI frontend applications.
|
|
3
|
+
*
|
|
4
|
+
* @packageDocumentation
|
|
5
|
+
*/
|
|
1
6
|
export * from './components/CTASubLabel.js';
|
|
2
7
|
export * from './components/DepthAIContext.js';
|
|
3
8
|
export * from './components/Pipeline.js';
|
|
4
9
|
export * from './components/Resizable.js';
|
|
5
|
-
export * from './components/Resizable.js';
|
|
6
10
|
export * from './components/Streams.js';
|
|
7
11
|
export * from './components/ThemeToggle.js';
|
|
8
12
|
export * from './constants/connection.js';
|
|
@@ -20,7 +24,6 @@ export * from './providers/DataProvider.js';
|
|
|
20
24
|
export * from './providers/ThemeProvider.js';
|
|
21
25
|
export * from './providers/VisualizerRuntimeConfigProvider.js';
|
|
22
26
|
export * from './utils/functions.js';
|
|
23
|
-
export * from './utils/functions.js';
|
|
24
27
|
export * from './utils/local-storage.js';
|
|
25
28
|
export * from './utils/logger.js';
|
|
26
29
|
export * from './utils/sorting.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AAEnD,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared React building blocks and connection utilities for Luxonis DepthAI frontend applications.
|
|
3
|
+
*
|
|
4
|
+
* @packageDocumentation
|
|
5
|
+
*/
|
|
1
6
|
export * from './components/CTASubLabel.js';
|
|
2
7
|
export * from './components/DepthAIContext.js';
|
|
3
8
|
export * from './components/Pipeline.js';
|
|
4
9
|
export * from './components/Resizable.js';
|
|
5
|
-
export * from './components/Resizable.js';
|
|
6
10
|
export * from './components/Streams.js';
|
|
7
11
|
export * from './components/ThemeToggle.js';
|
|
8
12
|
export * from './constants/connection.js';
|
|
@@ -20,7 +24,6 @@ export * from './providers/DataProvider.js';
|
|
|
20
24
|
export * from './providers/ThemeProvider.js';
|
|
21
25
|
export * from './providers/VisualizerRuntimeConfigProvider.js';
|
|
22
26
|
export * from './utils/functions.js';
|
|
23
|
-
export * from './utils/functions.js';
|
|
24
27
|
export * from './utils/local-storage.js';
|
|
25
28
|
export * from './utils/logger.js';
|
|
26
29
|
export * from './utils/sorting.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AAEnD,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { DeviceListSchema } from '@luxonis/ui-components';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
+
/**
|
|
4
|
+
* Runtime validation schema for camera sensor metadata reported by a DepthAI device.
|
|
5
|
+
*/
|
|
3
6
|
export declare const SensorSchema: z.ZodObject<{
|
|
4
7
|
boardSocket: z.ZodString;
|
|
5
8
|
maxFps: z.ZodNumber;
|
|
@@ -10,46 +13,112 @@ export declare const SensorSchema: z.ZodObject<{
|
|
|
10
13
|
height: z.ZodNumber;
|
|
11
14
|
}, z.core.$strip>>;
|
|
12
15
|
}, z.core.$strip>;
|
|
16
|
+
/**
|
|
17
|
+
* Camera sensor metadata reported by a DepthAI device.
|
|
18
|
+
*/
|
|
13
19
|
export type Sensor = z.infer<typeof SensorSchema>;
|
|
20
|
+
/**
|
|
21
|
+
* Runtime validation schema for infrared emitter availability.
|
|
22
|
+
*/
|
|
14
23
|
export declare const IrSchema: z.ZodObject<{
|
|
15
24
|
floodLight: z.ZodBoolean;
|
|
16
25
|
dotProjector: z.ZodBoolean;
|
|
17
26
|
}, z.core.$strip>;
|
|
27
|
+
/**
|
|
28
|
+
* Infrared emitter capabilities reported by a DepthAI device.
|
|
29
|
+
*/
|
|
18
30
|
export type Ir = z.infer<typeof IrSchema>;
|
|
31
|
+
/**
|
|
32
|
+
* Runtime validation schema for supported DepthAI platform identifiers.
|
|
33
|
+
*/
|
|
19
34
|
export declare const PlatformSchema: z.ZodEnum<{
|
|
20
35
|
UNKNOWN: "UNKNOWN";
|
|
21
36
|
RVC2: "RVC2";
|
|
22
37
|
RVC4: "RVC4";
|
|
23
38
|
}>;
|
|
39
|
+
/**
|
|
40
|
+
* Supported DepthAI platform identifier.
|
|
41
|
+
*/
|
|
24
42
|
export type Platform = z.infer<typeof PlatformSchema>;
|
|
43
|
+
/**
|
|
44
|
+
* Human-readable labels for DepthAI platform identifiers.
|
|
45
|
+
*/
|
|
25
46
|
export declare const PLATFORM_NAMES: {
|
|
26
47
|
RVC2: string;
|
|
27
48
|
RVC4: string;
|
|
28
49
|
UNKNOWN: string;
|
|
29
50
|
};
|
|
51
|
+
/**
|
|
52
|
+
* UI color intents associated with DepthAI platform identifiers.
|
|
53
|
+
*/
|
|
30
54
|
export declare const PLATFORM_COLORS: {
|
|
31
55
|
RVC2: string;
|
|
32
56
|
RVC4: string;
|
|
33
57
|
UNKNOWN: string;
|
|
34
58
|
};
|
|
59
|
+
/**
|
|
60
|
+
* Runtime validation schema for device connection transport identifiers.
|
|
61
|
+
*/
|
|
35
62
|
export declare const ConnectionTypeSchema: z.ZodEnum<{
|
|
36
63
|
UNKNOWN: "UNKNOWN";
|
|
37
64
|
USB: "USB";
|
|
38
65
|
ETH: "ETH";
|
|
39
66
|
}>;
|
|
67
|
+
/**
|
|
68
|
+
* Device connection transport identifier.
|
|
69
|
+
*/
|
|
40
70
|
export type ConnectionType = z.infer<typeof ConnectionTypeSchema>;
|
|
71
|
+
/**
|
|
72
|
+
* Normalized device capability and compatibility data used by Viewer UI surfaces.
|
|
73
|
+
*/
|
|
41
74
|
export type DeviceConfiguration = {
|
|
75
|
+
/**
|
|
76
|
+
* Camera sensors present on the device.
|
|
77
|
+
*/
|
|
42
78
|
cameraSensors: Sensor[];
|
|
79
|
+
/**
|
|
80
|
+
* Infrared emitter capabilities.
|
|
81
|
+
*/
|
|
43
82
|
ir: Ir;
|
|
83
|
+
/**
|
|
84
|
+
* Whether the device has stereo depth support.
|
|
85
|
+
*/
|
|
44
86
|
stereo: boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Whether the device has thermal sensing support.
|
|
89
|
+
*/
|
|
45
90
|
thermal: boolean;
|
|
91
|
+
/**
|
|
92
|
+
* Product identifier recognized by the shared UI device list schema.
|
|
93
|
+
*/
|
|
46
94
|
productName: z.infer<typeof DeviceListSchema>;
|
|
95
|
+
/**
|
|
96
|
+
* DepthAI processing platform.
|
|
97
|
+
*/
|
|
47
98
|
platform: Platform;
|
|
99
|
+
/**
|
|
100
|
+
* Whether the device exposes an IMU.
|
|
101
|
+
*/
|
|
48
102
|
imu: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Whether the device calibration is available and valid.
|
|
105
|
+
*/
|
|
49
106
|
calibrated: boolean;
|
|
107
|
+
/**
|
|
108
|
+
* Whether dynamic calibration is supported.
|
|
109
|
+
*/
|
|
50
110
|
dynamicCalibration: boolean;
|
|
111
|
+
/**
|
|
112
|
+
* Whether the device is fully compatible with the current application.
|
|
113
|
+
*/
|
|
51
114
|
fullyCompatible: boolean;
|
|
115
|
+
/**
|
|
116
|
+
* Whether the device is connected over an older USB generation.
|
|
117
|
+
*/
|
|
52
118
|
oldUsbGeneration: boolean;
|
|
53
119
|
};
|
|
120
|
+
/**
|
|
121
|
+
* Runtime validation schema for normalized DepthAI device configuration.
|
|
122
|
+
*/
|
|
54
123
|
export declare const DeviceConfigurationSchema: z.ZodType<DeviceConfiguration>;
|
|
55
124
|
//# sourceMappingURL=device-configuration.d.ts.map
|