Skip to content

Commit d30e56e

Browse files
authored
Merge pull request #57 from ProjectLighthouseCAU/move-metrics-types
Move LaserMetrics types to LUNA
2 parents 55ddf0e + 41a67e0 commit d30e56e

File tree

3 files changed

+56
-2
lines changed

3 files changed

+56
-2
lines changed

src/contexts/api/model/ModelContext.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { AuthContext } from '@luna/contexts/api/auth/AuthContext';
2-
import { UserModel } from '@luna/contexts/api/model/types';
2+
import { LaserMetrics, UserModel } from '@luna/contexts/api/model/types';
33
import { useAsyncIterable } from '@luna/hooks/useAsyncIterable';
44
import { mergeAsyncIterables } from '@luna/utils/async';
55
import { errorResult, getOrThrow, okResult, Result } from '@luna/utils/result';
@@ -12,7 +12,6 @@ import {
1212
LIGHTHOUSE_FRAME_BYTES,
1313
LogLevel,
1414
} from 'nighthouse/browser';
15-
import { LaserMetrics } from 'nighthouse/out/common/protocol/metrics';
1615
import {
1716
createContext,
1817
ReactNode,
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
export interface LaserMetrics {
2+
rooms: RoomMetrics[];
3+
}
4+
5+
export interface RoomV1Metrics {
6+
api_version: 1;
7+
controller_metrics: BoardV1Metrics;
8+
lamp_metrics: Map<number, BoardV1Metrics>;
9+
}
10+
11+
export interface BoardV1Metrics {
12+
id: number;
13+
version: number;
14+
uptime: number;
15+
temperature: number;
16+
init_temperature: number;
17+
settings: string;
18+
timeout: number;
19+
frames?: number;
20+
is_responding?: boolean;
21+
}
22+
23+
export interface RoomV2Metrics {
24+
api_version: 2;
25+
controller_metrics: ControllerV2Metrics;
26+
lamp_metrics: LampV2Metrics[];
27+
}
28+
29+
export interface ControllerV2Metrics {
30+
responding: boolean;
31+
ping_latency_ms: number;
32+
firmware_version: number;
33+
uptime: number;
34+
frames: number;
35+
fps: number;
36+
core_temperature: number;
37+
board_temperature: number;
38+
shunt_voltage: number;
39+
voltage: number;
40+
power: number;
41+
current: number;
42+
}
43+
44+
export interface LampV2Metrics {
45+
responding: boolean;
46+
firmware_version: number;
47+
uptime: number;
48+
timeout: number;
49+
temperature: number;
50+
fuse_tripped: boolean;
51+
flashing_status: string;
52+
}
53+
54+
export type RoomMetrics = RoomV1Metrics | RoomV2Metrics;
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
export * from './UserModel';
2+
export * from './LaserMetrics';

0 commit comments

Comments
 (0)