@bota.dev/react-native-app-sdk 2.0.0-beta.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/BotaDeviceSDK.podspec +55 -0
- package/LICENSE +21 -0
- package/README.md +101 -0
- package/android/build.gradle +76 -0
- package/android/src/main/AndroidManifest.xml +1 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidDevices.kt +172 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidLifecycle.kt +100 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidLogs.kt +82 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidModels.kt +476 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidOTA.kt +58 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidRecordingUploads.kt +180 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidRecordings.kt +751 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidSecurity.kt +509 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidWiFi.kt +125 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKEncryptedUploadV2Materials.kt +46 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKModule.kt +723 -0
- package/android/src/main/java/dev/bota/sdk/reactnative/BotaDeviceSDKPackage.kt +33 -0
- package/android/src/test/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidDevicesTest.kt +211 -0
- package/android/src/test/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidLifecycleTest.kt +132 -0
- package/android/src/test/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidLogsTest.kt +57 -0
- package/android/src/test/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidOTATest.kt +75 -0
- package/android/src/test/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidRecordingUploadsTest.kt +147 -0
- package/android/src/test/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidRecordingsTest.kt +355 -0
- package/android/src/test/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidSecurityTest.kt +523 -0
- package/android/src/test/java/dev/bota/sdk/reactnative/BotaDeviceSDKAndroidWiFiTest.kt +100 -0
- package/generated/codegen-contract.json +3593 -0
- package/ios/BotaDeviceSDK.mm +1300 -0
- package/ios/BotaDeviceSDKAppleBridge.swift +2260 -0
- package/ios/BotaDeviceSDKAppleDevices.swift +191 -0
- package/ios/BotaDeviceSDKAppleLifecycle.swift +167 -0
- package/ios/BotaDeviceSDKAppleLogs.swift +79 -0
- package/ios/BotaDeviceSDKAppleOTA.swift +73 -0
- package/ios/BotaDeviceSDKAppleRecordingUploads.swift +178 -0
- package/ios/BotaDeviceSDKAppleRecordings.swift +670 -0
- package/ios/BotaDeviceSDKAppleSecurity.swift +586 -0
- package/ios/BotaDeviceSDKAppleWiFi.swift +128 -0
- package/ios/BotaDeviceSDKEncryptedUploadV2Materials.swift +99 -0
- package/lib/commonjs/BotaClient.js +194 -0
- package/lib/commonjs/BotaClient.js.map +1 -0
- package/lib/commonjs/ble/constants.js +10 -0
- package/lib/commonjs/ble/constants.js.map +1 -0
- package/lib/commonjs/ble/deviceLogs.js +50 -0
- package/lib/commonjs/ble/deviceLogs.js.map +1 -0
- package/lib/commonjs/cache/DeviceStateCache.js +6 -0
- package/lib/commonjs/cache/DeviceStateCache.js.map +1 -0
- package/lib/commonjs/client.js +746 -0
- package/lib/commonjs/client.js.map +1 -0
- package/lib/commonjs/compatibility/runtime.js +44 -0
- package/lib/commonjs/compatibility/runtime.js.map +1 -0
- package/lib/commonjs/index.js +123 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/managers/DeviceManager.js +647 -0
- package/lib/commonjs/managers/DeviceManager.js.map +1 -0
- package/lib/commonjs/managers/OTAManager.js +140 -0
- package/lib/commonjs/managers/OTAManager.js.map +1 -0
- package/lib/commonjs/managers/RecordingManager.js +444 -0
- package/lib/commonjs/managers/RecordingManager.js.map +1 -0
- package/lib/commonjs/managers/StreamingSession.js +175 -0
- package/lib/commonjs/managers/StreamingSession.js.map +1 -0
- package/lib/commonjs/managers/types.js +6 -0
- package/lib/commonjs/managers/types.js.map +1 -0
- package/lib/commonjs/models/Device.js +2 -0
- package/lib/commonjs/models/Device.js.map +1 -0
- package/lib/commonjs/models/Recording.js +2 -0
- package/lib/commonjs/models/Recording.js.map +1 -0
- package/lib/commonjs/models/Status.js +6 -0
- package/lib/commonjs/models/Status.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/specs/NativeBotaDeviceSDK.js +9 -0
- package/lib/commonjs/specs/NativeBotaDeviceSDK.js.map +1 -0
- package/lib/commonjs/sync/syncStatus.js +178 -0
- package/lib/commonjs/sync/syncStatus.js.map +1 -0
- package/lib/commonjs/utils/errors.js +194 -0
- package/lib/commonjs/utils/errors.js.map +1 -0
- package/lib/commonjs/utils/logger.js +84 -0
- package/lib/commonjs/utils/logger.js.map +1 -0
- package/lib/module/BotaClient.js +189 -0
- package/lib/module/BotaClient.js.map +1 -0
- package/lib/module/ble/constants.js +6 -0
- package/lib/module/ble/constants.js.map +1 -0
- package/lib/module/ble/deviceLogs.js +45 -0
- package/lib/module/ble/deviceLogs.js.map +1 -0
- package/lib/module/cache/DeviceStateCache.js +4 -0
- package/lib/module/cache/DeviceStateCache.js.map +1 -0
- package/lib/module/client.js +740 -0
- package/lib/module/client.js.map +1 -0
- package/lib/module/compatibility/runtime.js +35 -0
- package/lib/module/compatibility/runtime.js.map +1 -0
- package/lib/module/index.js +17 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/managers/DeviceManager.js +641 -0
- package/lib/module/managers/DeviceManager.js.map +1 -0
- package/lib/module/managers/OTAManager.js +134 -0
- package/lib/module/managers/OTAManager.js.map +1 -0
- package/lib/module/managers/RecordingManager.js +438 -0
- package/lib/module/managers/RecordingManager.js.map +1 -0
- package/lib/module/managers/StreamingSession.js +168 -0
- package/lib/module/managers/StreamingSession.js.map +1 -0
- package/lib/module/managers/types.js +4 -0
- package/lib/module/managers/types.js.map +1 -0
- package/lib/module/models/Device.js +2 -0
- package/lib/module/models/Device.js.map +1 -0
- package/lib/module/models/Recording.js +2 -0
- package/lib/module/models/Recording.js.map +1 -0
- package/lib/module/models/Status.js +4 -0
- package/lib/module/models/Status.js.map +1 -0
- package/lib/module/specs/NativeBotaDeviceSDK.js +5 -0
- package/lib/module/specs/NativeBotaDeviceSDK.js.map +1 -0
- package/lib/module/sync/syncStatus.js +174 -0
- package/lib/module/sync/syncStatus.js.map +1 -0
- package/lib/module/utils/errors.js +183 -0
- package/lib/module/utils/errors.js.map +1 -0
- package/lib/module/utils/logger.js +80 -0
- package/lib/module/utils/logger.js.map +1 -0
- package/lib/typescript/BotaClient.d.ts +40 -0
- package/lib/typescript/BotaClient.d.ts.map +1 -0
- package/lib/typescript/ble/constants.d.ts +4 -0
- package/lib/typescript/ble/constants.d.ts.map +1 -0
- package/lib/typescript/ble/deviceLogs.d.ts +10 -0
- package/lib/typescript/ble/deviceLogs.d.ts.map +1 -0
- package/lib/typescript/cache/DeviceStateCache.d.ts +14 -0
- package/lib/typescript/cache/DeviceStateCache.d.ts.map +1 -0
- package/lib/typescript/client.d.ts +208 -0
- package/lib/typescript/client.d.ts.map +1 -0
- package/lib/typescript/compatibility/runtime.d.ts +11 -0
- package/lib/typescript/compatibility/runtime.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +19 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/managers/DeviceManager.d.ts +117 -0
- package/lib/typescript/managers/DeviceManager.d.ts.map +1 -0
- package/lib/typescript/managers/OTAManager.d.ts +25 -0
- package/lib/typescript/managers/OTAManager.d.ts.map +1 -0
- package/lib/typescript/managers/RecordingManager.d.ts +54 -0
- package/lib/typescript/managers/RecordingManager.d.ts.map +1 -0
- package/lib/typescript/managers/StreamingSession.d.ts +35 -0
- package/lib/typescript/managers/StreamingSession.d.ts.map +1 -0
- package/lib/typescript/managers/types.d.ts +19 -0
- package/lib/typescript/managers/types.d.ts.map +1 -0
- package/lib/typescript/models/Device.d.ts +392 -0
- package/lib/typescript/models/Device.d.ts.map +1 -0
- package/lib/typescript/models/Recording.d.ts +259 -0
- package/lib/typescript/models/Recording.d.ts.map +1 -0
- package/lib/typescript/models/Status.d.ts +106 -0
- package/lib/typescript/models/Status.d.ts.map +1 -0
- package/lib/typescript/specs/NativeBotaDeviceSDK.d.ts +393 -0
- package/lib/typescript/specs/NativeBotaDeviceSDK.d.ts.map +1 -0
- package/lib/typescript/sync/syncStatus.d.ts +123 -0
- package/lib/typescript/sync/syncStatus.d.ts.map +1 -0
- package/lib/typescript/utils/errors.d.ts +83 -0
- package/lib/typescript/utils/errors.d.ts.map +1 -0
- package/lib/typescript/utils/logger.d.ts +36 -0
- package/lib/typescript/utils/logger.d.ts.map +1 -0
- package/package.json +100 -0
- package/scripts/bota_device_sdk_spm_workaround.rb +53 -0
- package/src/BotaClient.ts +231 -0
- package/src/ble/constants.ts +3 -0
- package/src/ble/deviceLogs.ts +61 -0
- package/src/cache/DeviceStateCache.ts +20 -0
- package/src/client.ts +1410 -0
- package/src/compatibility/runtime.ts +55 -0
- package/src/index.ts +146 -0
- package/src/managers/DeviceManager.ts +927 -0
- package/src/managers/OTAManager.ts +195 -0
- package/src/managers/RecordingManager.ts +578 -0
- package/src/managers/StreamingSession.ts +212 -0
- package/src/managers/types.ts +36 -0
- package/src/models/Device.ts +484 -0
- package/src/models/Recording.ts +281 -0
- package/src/models/Status.ts +128 -0
- package/src/specs/NativeBotaDeviceSDK.ts +542 -0
- package/src/sync/syncStatus.ts +243 -0
- package/src/utils/errors.ts +327 -0
- package/src/utils/logger.ts +122 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import EventEmitter from 'eventemitter3';
|
|
2
|
+
import type { ConnectedDevice, StorageInfo } from '../models/Device';
|
|
3
|
+
import type { DeviceRecording, SyncProgress, StreamingSyncOptions, StreamingUploadProvider, UploadInfo, UploadTask } from '../models/Recording';
|
|
4
|
+
import type { RecordingManagerEvents } from '../models/Status';
|
|
5
|
+
import type { UploadInfoProvider } from './types';
|
|
6
|
+
import { StreamingSession } from './StreamingSession';
|
|
7
|
+
type DeviceUploadMonitorOutcome = 'completed' | 'failed' | 'detached';
|
|
8
|
+
interface TriggerDeviceUploadResponse {
|
|
9
|
+
accepted: boolean;
|
|
10
|
+
errorCode?: number;
|
|
11
|
+
}
|
|
12
|
+
export declare class RecordingManager extends EventEmitter<RecordingManagerEvents> {
|
|
13
|
+
private readonly client;
|
|
14
|
+
private tasks;
|
|
15
|
+
private initialized;
|
|
16
|
+
private paused;
|
|
17
|
+
private destroyed;
|
|
18
|
+
private activeStreamingSession;
|
|
19
|
+
constructor();
|
|
20
|
+
initialize(): Promise<void>;
|
|
21
|
+
getStorageInfo(device: ConnectedDevice): Promise<StorageInfo>;
|
|
22
|
+
listRecordings(device: ConnectedDevice): Promise<DeviceRecording[]>;
|
|
23
|
+
syncRecording(device: ConnectedDevice, recording: DeviceRecording, uploadInfo: UploadInfo): AsyncGenerator<SyncProgress>;
|
|
24
|
+
triggerDeviceUpload(device: ConnectedDevice): Promise<TriggerDeviceUploadResponse | null>;
|
|
25
|
+
monitorDeviceUpload(device: ConnectedDevice, initialPendingCount: number): AsyncGenerator<SyncProgress & {
|
|
26
|
+
recordingIndex?: number;
|
|
27
|
+
totalRecordings?: number;
|
|
28
|
+
}, DeviceUploadMonitorOutcome>;
|
|
29
|
+
syncAllRecordings(device: ConnectedDevice, uploadInfoProvider: UploadInfoProvider): AsyncGenerator<SyncProgress & {
|
|
30
|
+
recordingIndex?: number;
|
|
31
|
+
totalRecordings?: number;
|
|
32
|
+
}>;
|
|
33
|
+
getPendingUploads(): UploadTask[];
|
|
34
|
+
getAllUploads(): UploadTask[];
|
|
35
|
+
startStreamingSync(device: ConnectedDevice, recordingUuid: string, uploadInfoProvider: StreamingUploadProvider, options?: StreamingSyncOptions): StreamingSession;
|
|
36
|
+
getActiveStreamingSession(): StreamingSession | null;
|
|
37
|
+
cancelUpload(taskId: string): Promise<void>;
|
|
38
|
+
retryFailedUploads(): Promise<void>;
|
|
39
|
+
clearCompletedUploads(): Promise<void>;
|
|
40
|
+
clearAllUploads(): Promise<void>;
|
|
41
|
+
pauseUploads(): void;
|
|
42
|
+
resumeUploads(): void;
|
|
43
|
+
destroy(): void;
|
|
44
|
+
private runUpload;
|
|
45
|
+
private emitSyncProgress;
|
|
46
|
+
private requireTask;
|
|
47
|
+
private updateTask;
|
|
48
|
+
private persistTasks;
|
|
49
|
+
private emitQueueUpdated;
|
|
50
|
+
private assertReady;
|
|
51
|
+
private assertAlive;
|
|
52
|
+
}
|
|
53
|
+
export {};
|
|
54
|
+
//# sourceMappingURL=RecordingManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecordingManager.d.ts","sourceRoot":"","sources":["../../../src/managers/RecordingManager.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AAQzC,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,uBAAuB,EACvB,UAAU,EACV,UAAU,EACX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EACL,gBAAgB,EAEjB,MAAM,oBAAoB,CAAC;AAE5B,KAAK,0BAA0B,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEtE,UAAU,2BAA2B;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAwDD,qBAAa,gBAAiB,SAAQ,YAAY,CAAC,sBAAsB,CAAC;IACxE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,sBAAsB,CAAiC;;IAOzD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3B,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAc7D,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAKlE,aAAa,CAClB,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,UAAU,GACrB,cAAc,CAAC,YAAY,CAAC;IA4HzB,mBAAmB,CACvB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,2BAA2B,GAAG,IAAI,CAAC;IAYvC,mBAAmB,CACxB,MAAM,EAAE,eAAe,EACvB,mBAAmB,EAAE,MAAM,GAC1B,cAAc,CACf,YAAY,GAAG;QAAE,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,EACpE,0BAA0B,CAC3B;IA6BM,iBAAiB,CACtB,MAAM,EAAE,eAAe,EACvB,kBAAkB,EAAE,kBAAkB,GACrC,cAAc,CACf,YAAY,GAAG;QAAE,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,CACrE;IAkFD,iBAAiB,IAAI,UAAU,EAAE;IAMjC,aAAa,IAAI,UAAU,EAAE;IAI7B,kBAAkB,CAChB,MAAM,EAAE,eAAe,EACvB,aAAa,EAAE,MAAM,EACrB,kBAAkB,EAAE,uBAAuB,EAC3C,OAAO,GAAE,oBAAyB,GACjC,gBAAgB;IAwBnB,yBAAyB,IAAI,gBAAgB,GAAG,IAAI;IAI9C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3C,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBnC,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYtC,YAAY,IAAI,IAAI;IAIpB,aAAa,IAAI,IAAI;IAKrB,OAAO,IAAI,IAAI;YAUD,SAAS;IAiCvB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,WAAW;YAML,UAAU;YAeV,YAAY;IAI1B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,WAAW;CAGpB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import EventEmitter from 'eventemitter3';
|
|
2
|
+
import type { ConnectedDevice } from '../models/Device';
|
|
3
|
+
import type { StreamingSessionEvents, StreamingState, StreamingUploadProvider } from '../models/Recording';
|
|
4
|
+
type ProtocolHandler = unknown;
|
|
5
|
+
type StorageManager = unknown;
|
|
6
|
+
export declare const setStreamingSessionTerminalHandler: (session: StreamingSession, handler: () => void) => void;
|
|
7
|
+
export declare class StreamingSession extends EventEmitter<StreamingSessionEvents> {
|
|
8
|
+
private readonly device;
|
|
9
|
+
private readonly recordingUuid;
|
|
10
|
+
private readonly uploadProvider;
|
|
11
|
+
private readonly chunkSizeKb;
|
|
12
|
+
private readonly flushIntervalMs;
|
|
13
|
+
private readonly client;
|
|
14
|
+
private readonly sessionId;
|
|
15
|
+
private currentState;
|
|
16
|
+
private receivedBytes;
|
|
17
|
+
private uploadedChunks;
|
|
18
|
+
private backendRecordingId?;
|
|
19
|
+
private relay?;
|
|
20
|
+
private started;
|
|
21
|
+
private terminal;
|
|
22
|
+
constructor(protocolHandler: ProtocolHandler, _storageManager: StorageManager, device: ConnectedDevice, recordingUuid: string, uploadProvider: StreamingUploadProvider, chunkSizeKb?: number, flushIntervalMs?: number);
|
|
23
|
+
get state(): StreamingState;
|
|
24
|
+
get bytesReceived(): number;
|
|
25
|
+
get chunksUploaded(): number;
|
|
26
|
+
get recordingId(): string | undefined;
|
|
27
|
+
get isActive(): boolean;
|
|
28
|
+
start(): Promise<void>;
|
|
29
|
+
abort(): void;
|
|
30
|
+
private handleProgress;
|
|
31
|
+
private finalize;
|
|
32
|
+
private releaseTerminal;
|
|
33
|
+
}
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=StreamingSession.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StreamingSession.d.ts","sourceRoot":"","sources":["../../../src/managers/StreamingSession.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AAOzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EACV,sBAAsB,EACtB,cAAc,EACd,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAE7B,KAAK,eAAe,GAAG,OAAO,CAAC;AAC/B,KAAK,cAAc,GAAG,OAAO,CAAC;AAI9B,eAAO,MAAM,kCAAkC,GAC7C,SAAS,gBAAgB,EACzB,SAAS,MAAM,IAAI,KAClB,IAEF,CAAC;AASF,qBAAa,gBAAiB,SAAQ,YAAY,CAAC,sBAAsB,CAAC;IAgBtE,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAnBlC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,KAAK,CAAC,CAEH;IACX,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAS;gBAGvB,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,cAAc,EACd,MAAM,EAAE,eAAe,EACvB,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,uBAAuB,EACvC,WAAW,SAAM,EACjB,eAAe,SAAS;IAM3C,IAAI,KAAK,IAAI,cAAc,CAE1B;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAEpC;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsE5B,KAAK,IAAI,IAAI;IAQb,OAAO,CAAC,cAAc;YAmBR,QAAQ;IA8BtB,OAAO,CAAC,eAAe;CAKxB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { DeviceRecording, UploadInfo } from '../models/Recording';
|
|
2
|
+
export type UploadInfoProvider = (recording: DeviceRecording) => Promise<UploadInfo>;
|
|
3
|
+
export interface FirmwareInfo {
|
|
4
|
+
version: string;
|
|
5
|
+
url: string;
|
|
6
|
+
checksum: string;
|
|
7
|
+
releaseNotes?: string;
|
|
8
|
+
size: number;
|
|
9
|
+
}
|
|
10
|
+
export type OtaStage = 'checking' | 'downloading' | 'preparing' | 'updating' | 'verifying' | 'restarting' | 'completed' | 'failed';
|
|
11
|
+
export interface OtaProgress {
|
|
12
|
+
stage: OtaStage;
|
|
13
|
+
progress: number;
|
|
14
|
+
bytesTransferred?: number;
|
|
15
|
+
totalBytes?: number;
|
|
16
|
+
error?: string;
|
|
17
|
+
}
|
|
18
|
+
export type FirmwareDownloadProgressCallback = (bytesDownloaded: number, totalBytes: number) => void;
|
|
19
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/managers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEvE,MAAM,MAAM,kBAAkB,GAAG,CAC/B,SAAS,EAAE,eAAe,KACvB,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,QAAQ,GAChB,UAAU,GACV,aAAa,GACb,WAAW,GACX,UAAU,GACV,WAAW,GACX,YAAY,GACZ,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,QAAQ,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,gCAAgC,GAAG,CAC7C,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,KACf,IAAI,CAAC"}
|
|
@@ -0,0 +1,392 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Device-related type definitions
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Device type identifier
|
|
6
|
+
*/
|
|
7
|
+
export type DeviceType = 'bota_pin' | 'bota_pin_4g' | 'bota_note';
|
|
8
|
+
/**
|
|
9
|
+
* Pairing state of a device
|
|
10
|
+
*/
|
|
11
|
+
export type PairingState = 'unpaired' | 'pairing' | 'paired' | 'error';
|
|
12
|
+
/**
|
|
13
|
+
* Connection state of a device
|
|
14
|
+
*/
|
|
15
|
+
export type ConnectionState = 'disconnected' | 'connecting' | 'bonding' | 'discovering' | 'connected' | 'disconnecting';
|
|
16
|
+
/**
|
|
17
|
+
* Device operational state
|
|
18
|
+
*/
|
|
19
|
+
export type DeviceState = 'idle' | 'recording' | 'syncing' | 'uploading' | 'charging' | 'lowBattery' | 'storageFull' | 'error';
|
|
20
|
+
/**
|
|
21
|
+
* Device status flags (1-byte bitmask)
|
|
22
|
+
* See: FIRMWARE_INTEGRATION_GUIDE_ZH.md section 3.1 — DeviceFlags enum
|
|
23
|
+
*/
|
|
24
|
+
export interface DeviceFlags {
|
|
25
|
+
charging: boolean;
|
|
26
|
+
lowBattery: boolean;
|
|
27
|
+
storageFull: boolean;
|
|
28
|
+
wifiConnected: boolean;
|
|
29
|
+
lteConnected: boolean;
|
|
30
|
+
syncActive: boolean;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* LTE/4G modem status
|
|
34
|
+
*/
|
|
35
|
+
export type LteStatus = 'off' | 'searching' | 'registered' | 'connected' | 'denied' | 'noSim' | 'error' | 'lowVoltage' | 'disabled';
|
|
36
|
+
/**
|
|
37
|
+
* WiFi radio status
|
|
38
|
+
*/
|
|
39
|
+
export type WifiStatus = 'off' | 'scanning' | 'connecting' | 'connected' | 'connectFailed' | 'noCredentials' | 'disabled' | 'error';
|
|
40
|
+
/**
|
|
41
|
+
* Device discovered during Bluetooth scan (not yet connected)
|
|
42
|
+
*/
|
|
43
|
+
export interface DiscoveredDevice {
|
|
44
|
+
/** Bluetooth device identifier (platform-specific UUID) */
|
|
45
|
+
id: string;
|
|
46
|
+
/** Device name from advertisement (e.g., "Bota-Pin-A1B2C3") */
|
|
47
|
+
name: string;
|
|
48
|
+
/** Device type parsed from advertisement */
|
|
49
|
+
deviceType: DeviceType;
|
|
50
|
+
/** Firmware version from manufacturer data */
|
|
51
|
+
firmwareVersion: string;
|
|
52
|
+
/** MAC address parsed from manufacturer data (null if firmware doesn't include it) */
|
|
53
|
+
macAddress: string | null;
|
|
54
|
+
/** Pairing state from manufacturer data */
|
|
55
|
+
pairingState: PairingState;
|
|
56
|
+
/** Signal strength (RSSI) */
|
|
57
|
+
rssi: number;
|
|
58
|
+
/** Raw manufacturer data bytes */
|
|
59
|
+
manufacturerData?: Uint8Array;
|
|
60
|
+
/** Timestamp when discovered */
|
|
61
|
+
discoveredAt: Date;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Device capabilities (bitmask)
|
|
65
|
+
*/
|
|
66
|
+
export interface DeviceCapabilities {
|
|
67
|
+
/** Supports Bluetooth Sync (BLE transfer) */
|
|
68
|
+
bleSync: boolean;
|
|
69
|
+
/** Supports WiFi Upload */
|
|
70
|
+
wifiUpload: boolean;
|
|
71
|
+
/** Supports Cellular Upload (4G/LTE) */
|
|
72
|
+
lteUpload: boolean;
|
|
73
|
+
/** Supports Remote Recording Control */
|
|
74
|
+
remoteRecord: boolean;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Device after successful Bluetooth connection
|
|
78
|
+
*/
|
|
79
|
+
export interface ConnectedDevice {
|
|
80
|
+
/** Bluetooth device identifier */
|
|
81
|
+
id: string;
|
|
82
|
+
/** Device serial number (read from Device Info service) */
|
|
83
|
+
serialNumber: string;
|
|
84
|
+
/** Device type */
|
|
85
|
+
deviceType: DeviceType;
|
|
86
|
+
/** Firmware version */
|
|
87
|
+
firmwareVersion: string;
|
|
88
|
+
/** Hardware revision (if available) */
|
|
89
|
+
hardwareRevision?: string;
|
|
90
|
+
/** Whether device has been provisioned with a token */
|
|
91
|
+
isProvisioned: boolean;
|
|
92
|
+
/** Current connection state */
|
|
93
|
+
connectionState: ConnectionState;
|
|
94
|
+
/** Negotiated MTU size */
|
|
95
|
+
mtu: number;
|
|
96
|
+
/** Device capabilities */
|
|
97
|
+
capabilities?: DeviceCapabilities;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* 4G modem debug information (parsed from extended device status)
|
|
101
|
+
*/
|
|
102
|
+
export interface ModemInfo {
|
|
103
|
+
imei?: string;
|
|
104
|
+
iccid?: string;
|
|
105
|
+
operator?: string;
|
|
106
|
+
rat?: string;
|
|
107
|
+
band?: string;
|
|
108
|
+
apn?: string;
|
|
109
|
+
simStatus?: string;
|
|
110
|
+
csq?: number;
|
|
111
|
+
ipAddress?: string;
|
|
112
|
+
modemVoltage?: number;
|
|
113
|
+
modemFirmware?: string;
|
|
114
|
+
roaming?: boolean;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Device status information
|
|
118
|
+
*/
|
|
119
|
+
export interface DeviceStatus {
|
|
120
|
+
/** Battery level (0-100) */
|
|
121
|
+
batteryLevel: number;
|
|
122
|
+
/** Battery voltage in millivolts (e.g., 3700 = 3.7V) */
|
|
123
|
+
batteryMv?: number;
|
|
124
|
+
/** Total storage capacity in MB (uint16LE, max 65535) */
|
|
125
|
+
storageTotalMb: number;
|
|
126
|
+
/** Storage used in MB (uint16LE, max 65535) */
|
|
127
|
+
storageUsedMb: number;
|
|
128
|
+
/** Current operational state */
|
|
129
|
+
state: DeviceState;
|
|
130
|
+
/** Number of pending recordings to sync */
|
|
131
|
+
pendingRecordings: number;
|
|
132
|
+
/** Last clock-sync timestamp (when the device's RTC was last set
|
|
133
|
+
* from a time source — NTP, 4G QLTS/CCLK, or app Bluetooth time-sync).
|
|
134
|
+
* This is NOT the last recording-upload timestamp. */
|
|
135
|
+
lastTimeSyncAt: Date | null;
|
|
136
|
+
/** Signal strength (for 4G devices, 0-5) */
|
|
137
|
+
signalStrength?: number;
|
|
138
|
+
/** Status flags */
|
|
139
|
+
flags: DeviceFlags;
|
|
140
|
+
/** Raw timestamp from device */
|
|
141
|
+
timestamp: number;
|
|
142
|
+
/** LTE/4G modem status (for 4G devices) */
|
|
143
|
+
lteStatus?: LteStatus;
|
|
144
|
+
/** LTE signal quality — raw CSQ value 0-31 (99 = unknown) */
|
|
145
|
+
lteSignalQuality?: number;
|
|
146
|
+
/** WiFi radio status (for WiFi devices) */
|
|
147
|
+
wifiStatus?: WifiStatus;
|
|
148
|
+
/** 4G modem debug info (from extended device status read) */
|
|
149
|
+
modemInfo?: ModemInfo;
|
|
150
|
+
}
|
|
151
|
+
/** A decoded line from the device's debug BLE log stream. */
|
|
152
|
+
export interface DeviceLogEvent {
|
|
153
|
+
level: 'debug' | 'warn';
|
|
154
|
+
message: string;
|
|
155
|
+
isBacklog: boolean;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Storage information from device
|
|
159
|
+
*/
|
|
160
|
+
export interface StorageInfo {
|
|
161
|
+
/** Total storage in KB */
|
|
162
|
+
totalKb: number;
|
|
163
|
+
/** Used storage in KB */
|
|
164
|
+
usedKb: number;
|
|
165
|
+
/** Total recording count */
|
|
166
|
+
totalRecordings: number;
|
|
167
|
+
/** Pending sync count */
|
|
168
|
+
pendingSyncCount: number;
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Options for reconnecting to a previously paired device by serial number
|
|
172
|
+
*/
|
|
173
|
+
export interface ReconnectOptions {
|
|
174
|
+
/** Scan timeout in milliseconds (default: 10000) */
|
|
175
|
+
scanTimeout?: number;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Configuration for device scanning
|
|
179
|
+
*/
|
|
180
|
+
export interface ScanOptions {
|
|
181
|
+
/** Timeout in milliseconds (default: 30000) */
|
|
182
|
+
timeout?: number;
|
|
183
|
+
/** Filter by device types */
|
|
184
|
+
deviceTypes?: DeviceType[];
|
|
185
|
+
/** Filter by pairing state */
|
|
186
|
+
pairingState?: PairingState;
|
|
187
|
+
/** Minimum RSSI to include */
|
|
188
|
+
minRssi?: number;
|
|
189
|
+
/** Allow duplicates (same device reported multiple times) */
|
|
190
|
+
allowDuplicates?: boolean;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Environment for API endpoint configuration
|
|
194
|
+
*/
|
|
195
|
+
export type Environment = 'development' | 'gamma' | 'production';
|
|
196
|
+
/**
|
|
197
|
+
* Provisioning result
|
|
198
|
+
*/
|
|
199
|
+
export interface ProvisioningResult {
|
|
200
|
+
success: boolean;
|
|
201
|
+
error?: 'invalid_token' | 'storage_error' | 'chunk_error' | 'already_paired' | 'unknown';
|
|
202
|
+
/** Present on the three-byte authenticated factory-reset success result. */
|
|
203
|
+
localRecordingsDeleted?: number;
|
|
204
|
+
}
|
|
205
|
+
/** Result returned by the authenticated BLE factory-reset close-loop. */
|
|
206
|
+
export type BleFactoryResetResult = {
|
|
207
|
+
success: true;
|
|
208
|
+
localRecordingsDeleted: number;
|
|
209
|
+
} | {
|
|
210
|
+
success: false;
|
|
211
|
+
error: NonNullable<ProvisioningResult['error']>;
|
|
212
|
+
};
|
|
213
|
+
/**
|
|
214
|
+
* Called after firmware reports a successful wipe and before the SDK sends
|
|
215
|
+
* the explicit result receipt. Reject to leave firmware in its replayable
|
|
216
|
+
* WIPED phase.
|
|
217
|
+
*/
|
|
218
|
+
export type BleFactoryResetResultPersister = (result: Extract<BleFactoryResetResult, {
|
|
219
|
+
success: true;
|
|
220
|
+
}>) => Promise<void>;
|
|
221
|
+
/**
|
|
222
|
+
* Recording command type
|
|
223
|
+
*/
|
|
224
|
+
export type RecordingCommandType = 'start_recording' | 'stop_recording';
|
|
225
|
+
/**
|
|
226
|
+
* Recording command status
|
|
227
|
+
*/
|
|
228
|
+
export type RecordingCommandStatus = 'pending' | 'delivered' | 'executed' | 'failed' | 'expired' | 'cancelled';
|
|
229
|
+
/**
|
|
230
|
+
* Options for starting recording remotely
|
|
231
|
+
*/
|
|
232
|
+
export interface StartRecordingOptions {
|
|
233
|
+
/** Maximum recording duration in seconds (auto-stop) */
|
|
234
|
+
maxDurationSec?: number;
|
|
235
|
+
/** Metadata to attach to the recording */
|
|
236
|
+
metadata?: Record<string, unknown>;
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Options for stopping recording remotely
|
|
240
|
+
*/
|
|
241
|
+
export interface StopRecordingOptions {
|
|
242
|
+
/** Whether to trigger immediate upload after stopping */
|
|
243
|
+
uploadImmediately?: boolean;
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Recording command result
|
|
247
|
+
*/
|
|
248
|
+
export interface RecordingCommandResult {
|
|
249
|
+
/** Command ID from backend */
|
|
250
|
+
commandId: string;
|
|
251
|
+
/** Recording ID (for start_recording) */
|
|
252
|
+
recordingId?: string;
|
|
253
|
+
/** When recording started */
|
|
254
|
+
startedAt?: Date;
|
|
255
|
+
/** When recording stopped */
|
|
256
|
+
stoppedAt?: Date;
|
|
257
|
+
/** Recording duration in seconds */
|
|
258
|
+
durationSeconds?: number;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Recording command error
|
|
262
|
+
*/
|
|
263
|
+
export interface RecordingCommandError {
|
|
264
|
+
code: string;
|
|
265
|
+
message: string;
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Full recording command response
|
|
269
|
+
*/
|
|
270
|
+
export interface RecordingCommand {
|
|
271
|
+
id: string;
|
|
272
|
+
deviceId: string;
|
|
273
|
+
type: RecordingCommandType;
|
|
274
|
+
status: RecordingCommandStatus;
|
|
275
|
+
grantToken: string;
|
|
276
|
+
result?: RecordingCommandResult;
|
|
277
|
+
error?: RecordingCommandError;
|
|
278
|
+
expiresAt?: Date;
|
|
279
|
+
createdAt: Date;
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Current recording state of the device
|
|
283
|
+
*/
|
|
284
|
+
export interface RecordingState {
|
|
285
|
+
/** Whether device is currently recording */
|
|
286
|
+
active: boolean;
|
|
287
|
+
/** Current recording ID (if recording) */
|
|
288
|
+
recordingId?: string;
|
|
289
|
+
/** When recording started */
|
|
290
|
+
startedAt?: Date;
|
|
291
|
+
/** Duration in seconds (updated periodically) */
|
|
292
|
+
durationSeconds?: number;
|
|
293
|
+
/** Who initiated the recording */
|
|
294
|
+
initiatedBy?: 'local' | 'remote';
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Connection type for network preference ordering
|
|
298
|
+
*/
|
|
299
|
+
export type ConnectionType = 'wifi' | 'ble' | 'cellular';
|
|
300
|
+
/**
|
|
301
|
+
* Per-device connection settings read/written via Bluetooth DEVICE_SETTINGS characteristic
|
|
302
|
+
*/
|
|
303
|
+
export interface DeviceConnectionSettings {
|
|
304
|
+
enabled_connections: {
|
|
305
|
+
wifi: boolean;
|
|
306
|
+
cellular: boolean;
|
|
307
|
+
};
|
|
308
|
+
heartbeat_enabled_connections?: {
|
|
309
|
+
wifi: boolean;
|
|
310
|
+
cellular: boolean;
|
|
311
|
+
};
|
|
312
|
+
upload_network_preference: ConnectionType[];
|
|
313
|
+
power_management?: {
|
|
314
|
+
wifi_idle_timeout_seconds?: number | null;
|
|
315
|
+
cellular_idle_timeout_seconds?: number | null;
|
|
316
|
+
};
|
|
317
|
+
streaming_enabled?: boolean;
|
|
318
|
+
streaming_flush_interval_seconds?: number;
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* WiFi security type
|
|
322
|
+
*/
|
|
323
|
+
export type WiFiSecurityType = 'WPA2' | 'WPA3' | 'WEP' | 'OPEN';
|
|
324
|
+
/**
|
|
325
|
+
* WiFi connection status
|
|
326
|
+
*/
|
|
327
|
+
export type WiFiStatus = 'idle' | 'connecting' | 'connected' | 'failed' | 'disconnected';
|
|
328
|
+
/**
|
|
329
|
+
* WiFi configuration grant from backend
|
|
330
|
+
*/
|
|
331
|
+
export interface WiFiConfigGrant {
|
|
332
|
+
/** Grant blob (JWT token) */
|
|
333
|
+
grantBlob: string;
|
|
334
|
+
/** Expiration timestamp */
|
|
335
|
+
expiresAt: Date;
|
|
336
|
+
}
|
|
337
|
+
/**
|
|
338
|
+
* WiFi credentials to configure
|
|
339
|
+
*/
|
|
340
|
+
export interface WiFiCredentials {
|
|
341
|
+
/** WiFi network SSID */
|
|
342
|
+
ssid: string;
|
|
343
|
+
/** WiFi password */
|
|
344
|
+
password: string;
|
|
345
|
+
/** Security type (default: WPA2) */
|
|
346
|
+
securityType?: WiFiSecurityType;
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* WiFi configuration result from device
|
|
350
|
+
*/
|
|
351
|
+
export interface WiFiConfigResult {
|
|
352
|
+
/** Whether configuration was successful */
|
|
353
|
+
success: boolean;
|
|
354
|
+
/** Error code if failed */
|
|
355
|
+
error?: 'invalid_grant' | 'grant_expired' | 'decryption_error' | 'storage_error' | 'unknown';
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* WiFi status information from device
|
|
359
|
+
*/
|
|
360
|
+
export interface WiFiStatusInfo {
|
|
361
|
+
/** Current WiFi connection status */
|
|
362
|
+
status: WiFiStatus;
|
|
363
|
+
/** Connected SSID (if connected) */
|
|
364
|
+
ssid?: string;
|
|
365
|
+
/** Signal strength (0-100) */
|
|
366
|
+
signalStrength?: number;
|
|
367
|
+
/** Last connection error (if failed) */
|
|
368
|
+
lastError?: string;
|
|
369
|
+
}
|
|
370
|
+
/**
|
|
371
|
+
* A WiFi network discovered by the device's WiFi radio
|
|
372
|
+
*/
|
|
373
|
+
export interface WiFiScanNetwork {
|
|
374
|
+
/** Network SSID */
|
|
375
|
+
ssid: string;
|
|
376
|
+
/** Signal quality 0-100 */
|
|
377
|
+
quality: number;
|
|
378
|
+
/** Whether this is the currently connected network */
|
|
379
|
+
isCurrent: boolean;
|
|
380
|
+
/** Open network (no password required) */
|
|
381
|
+
isOpen?: boolean;
|
|
382
|
+
}
|
|
383
|
+
/**
|
|
384
|
+
* Result of a device-side WiFi scan
|
|
385
|
+
*/
|
|
386
|
+
export interface DeviceWiFiScanResult {
|
|
387
|
+
/** Discovered networks sorted by signal quality */
|
|
388
|
+
networks: WiFiScanNetwork[];
|
|
389
|
+
/** SSID of the currently connected network, if any */
|
|
390
|
+
currentSsid: string | null;
|
|
391
|
+
}
|
|
392
|
+
//# sourceMappingURL=Device.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../../../src/models/Device.ts"],"names":[],"mappings":"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"}
|