@ledgerhq/device-mockserver-client 1.1.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/lib/cjs/package.json +34 -24
- package/lib/cjs/src/DmkNetworkClient.stub.js +2 -0
- package/lib/cjs/src/DmkNetworkClient.stub.js.map +7 -0
- package/lib/cjs/src/MockClient.js +1 -1
- package/lib/cjs/src/MockClient.js.map +3 -3
- package/lib/cjs/src/MockClient.test.js +2 -0
- package/lib/cjs/src/MockClient.test.js.map +7 -0
- package/lib/cjs/src/index.js +1 -1
- package/lib/cjs/src/index.js.map +3 -3
- package/lib/cjs/src/model/Auth.js +2 -0
- package/lib/cjs/src/model/Auth.js.map +7 -0
- package/lib/cjs/src/model/CommandResponse.js +1 -1
- package/lib/cjs/src/model/CommandResponse.js.map +3 -3
- package/lib/cjs/src/model/Device.js +1 -1
- package/lib/cjs/src/model/Device.js.map +3 -3
- package/lib/cjs/src/model/Mock.js +1 -1
- package/lib/cjs/src/model/Mock.js.map +3 -3
- package/lib/cjs/src/model/Session.js +1 -1
- package/lib/cjs/src/model/Session.js.map +3 -3
- package/lib/cjs/src/model/SessionExport.js +2 -0
- package/lib/cjs/src/model/SessionExport.js.map +7 -0
- package/lib/cjs/src/model/Speculos.js +2 -0
- package/lib/cjs/src/model/Speculos.js.map +7 -0
- package/lib/esm/package.json +34 -24
- package/lib/esm/src/DmkNetworkClient.stub.js +2 -0
- package/lib/esm/src/DmkNetworkClient.stub.js.map +7 -0
- package/lib/esm/src/MockClient.js +1 -1
- package/lib/esm/src/MockClient.js.map +3 -3
- package/lib/esm/src/MockClient.test.js +2 -0
- package/lib/esm/src/MockClient.test.js.map +7 -0
- package/lib/esm/src/index.js +1 -1
- package/lib/esm/src/index.js.map +3 -3
- package/lib/esm/src/model/Auth.js +2 -0
- package/lib/esm/src/model/Auth.js.map +7 -0
- package/lib/esm/src/model/CommandResponse.js +1 -1
- package/lib/esm/src/model/CommandResponse.js.map +3 -3
- package/lib/esm/src/model/Device.js +1 -1
- package/lib/esm/src/model/Device.js.map +3 -3
- package/lib/esm/src/model/Mock.js +1 -1
- package/lib/esm/src/model/Mock.js.map +3 -3
- package/lib/esm/src/model/Session.js +1 -1
- package/lib/esm/src/model/Session.js.map +3 -3
- package/lib/esm/src/model/SessionExport.js +2 -0
- package/lib/esm/src/model/SessionExport.js.map +7 -0
- package/lib/esm/src/model/Speculos.js +2 -0
- package/lib/esm/src/model/Speculos.js.map +7 -0
- package/lib/types/src/DmkNetworkClient.stub.d.ts +18 -0
- package/lib/types/src/DmkNetworkClient.stub.d.ts.map +1 -0
- package/lib/types/src/MockClient.d.ts +64 -21
- package/lib/types/src/MockClient.d.ts.map +1 -1
- package/lib/types/src/MockClient.test.d.ts +2 -0
- package/lib/types/src/MockClient.test.d.ts.map +1 -0
- package/lib/types/src/index.d.ts +8 -4
- package/lib/types/src/index.d.ts.map +1 -1
- package/lib/types/src/model/Auth.d.ts +39 -0
- package/lib/types/src/model/Auth.d.ts.map +1 -0
- package/lib/types/src/model/CommandResponse.d.ts +11 -5
- package/lib/types/src/model/CommandResponse.d.ts.map +1 -1
- package/lib/types/src/model/Device.d.ts +91 -7
- package/lib/types/src/model/Device.d.ts.map +1 -1
- package/lib/types/src/model/Mock.d.ts +32 -6
- package/lib/types/src/model/Mock.d.ts.map +1 -1
- package/lib/types/src/model/Session.d.ts +28 -10
- package/lib/types/src/model/Session.d.ts.map +1 -1
- package/lib/types/src/model/SessionExport.d.ts +38 -0
- package/lib/types/src/model/SessionExport.d.ts.map +1 -0
- package/lib/types/src/model/Speculos.d.ts +20 -0
- package/lib/types/src/model/Speculos.d.ts.map +1 -0
- package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
- package/package.json +33 -23
- package/lib/cjs/src/DefaultHttpClient.js +0 -2
- package/lib/cjs/src/DefaultHttpClient.js.map +0 -7
- package/lib/cjs/src/DefaultHttpClient.stub.js +0 -2
- package/lib/cjs/src/DefaultHttpClient.stub.js.map +0 -7
- package/lib/cjs/src/HttpClient.js +0 -2
- package/lib/cjs/src/HttpClient.js.map +0 -7
- package/lib/cjs/src/model/ComandResponse.test.js +0 -2
- package/lib/cjs/src/model/ComandResponse.test.js.map +0 -7
- package/lib/cjs/src/model/CommandResponse.stub.js +0 -2
- package/lib/cjs/src/model/CommandResponse.stub.js.map +0 -7
- package/lib/cjs/src/model/Device.stub.js +0 -2
- package/lib/cjs/src/model/Device.stub.js.map +0 -7
- package/lib/cjs/src/model/Mock.stub.js +0 -2
- package/lib/cjs/src/model/Mock.stub.js.map +0 -7
- package/lib/cjs/src/model/Session.stub.js +0 -2
- package/lib/cjs/src/model/Session.stub.js.map +0 -7
- package/lib/cjs/src/service/ConnectivityService.js +0 -2
- package/lib/cjs/src/service/ConnectivityService.js.map +0 -7
- package/lib/cjs/src/service/ConnectivityService.test.js +0 -2
- package/lib/cjs/src/service/ConnectivityService.test.js.map +0 -7
- package/lib/cjs/src/service/DiscoveryService.js +0 -2
- package/lib/cjs/src/service/DiscoveryService.js.map +0 -7
- package/lib/cjs/src/service/DiscoveryService.test.js +0 -2
- package/lib/cjs/src/service/DiscoveryService.test.js.map +0 -7
- package/lib/cjs/src/service/MockService.js +0 -2
- package/lib/cjs/src/service/MockService.js.map +0 -7
- package/lib/cjs/src/service/SendService.js +0 -2
- package/lib/cjs/src/service/SendService.js.map +0 -7
- package/lib/esm/src/DefaultHttpClient.js +0 -2
- package/lib/esm/src/DefaultHttpClient.js.map +0 -7
- package/lib/esm/src/DefaultHttpClient.stub.js +0 -2
- package/lib/esm/src/DefaultHttpClient.stub.js.map +0 -7
- package/lib/esm/src/HttpClient.js +0 -1
- package/lib/esm/src/HttpClient.js.map +0 -7
- package/lib/esm/src/model/ComandResponse.test.js +0 -2
- package/lib/esm/src/model/ComandResponse.test.js.map +0 -7
- package/lib/esm/src/model/CommandResponse.stub.js +0 -2
- package/lib/esm/src/model/CommandResponse.stub.js.map +0 -7
- package/lib/esm/src/model/Device.stub.js +0 -2
- package/lib/esm/src/model/Device.stub.js.map +0 -7
- package/lib/esm/src/model/Mock.stub.js +0 -2
- package/lib/esm/src/model/Mock.stub.js.map +0 -7
- package/lib/esm/src/model/Session.stub.js +0 -2
- package/lib/esm/src/model/Session.stub.js.map +0 -7
- package/lib/esm/src/service/ConnectivityService.js +0 -2
- package/lib/esm/src/service/ConnectivityService.js.map +0 -7
- package/lib/esm/src/service/ConnectivityService.test.js +0 -2
- package/lib/esm/src/service/ConnectivityService.test.js.map +0 -7
- package/lib/esm/src/service/DiscoveryService.js +0 -2
- package/lib/esm/src/service/DiscoveryService.js.map +0 -7
- package/lib/esm/src/service/DiscoveryService.test.js +0 -2
- package/lib/esm/src/service/DiscoveryService.test.js.map +0 -7
- package/lib/esm/src/service/MockService.js +0 -2
- package/lib/esm/src/service/MockService.js.map +0 -7
- package/lib/esm/src/service/SendService.js +0 -2
- package/lib/esm/src/service/SendService.js.map +0 -7
- package/lib/types/src/DefaultHttpClient.d.ts +0 -14
- package/lib/types/src/DefaultHttpClient.d.ts.map +0 -1
- package/lib/types/src/DefaultHttpClient.stub.d.ts +0 -16
- package/lib/types/src/DefaultHttpClient.stub.d.ts.map +0 -1
- package/lib/types/src/HttpClient.d.ts +0 -6
- package/lib/types/src/HttpClient.d.ts.map +0 -1
- package/lib/types/src/model/ComandResponse.test.d.ts +0 -2
- package/lib/types/src/model/ComandResponse.test.d.ts.map +0 -1
- package/lib/types/src/model/CommandResponse.stub.d.ts +0 -3
- package/lib/types/src/model/CommandResponse.stub.d.ts.map +0 -1
- package/lib/types/src/model/Device.stub.d.ts +0 -3
- package/lib/types/src/model/Device.stub.d.ts.map +0 -1
- package/lib/types/src/model/Mock.stub.d.ts +0 -3
- package/lib/types/src/model/Mock.stub.d.ts.map +0 -1
- package/lib/types/src/model/Session.stub.d.ts +0 -3
- package/lib/types/src/model/Session.stub.d.ts.map +0 -1
- package/lib/types/src/service/ConnectivityService.d.ts +0 -15
- package/lib/types/src/service/ConnectivityService.d.ts.map +0 -1
- package/lib/types/src/service/ConnectivityService.test.d.ts +0 -2
- package/lib/types/src/service/ConnectivityService.test.d.ts.map +0 -1
- package/lib/types/src/service/DiscoveryService.d.ts +0 -11
- package/lib/types/src/service/DiscoveryService.d.ts.map +0 -1
- package/lib/types/src/service/DiscoveryService.test.d.ts +0 -2
- package/lib/types/src/service/DiscoveryService.test.d.ts.map +0 -1
- package/lib/types/src/service/MockService.d.ts +0 -10
- package/lib/types/src/service/MockService.d.ts.map +0 -1
- package/lib/types/src/service/SendService.d.ts +0 -8
- package/lib/types/src/service/SendService.d.ts.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Auth.d.ts","sourceRoot":"","sources":["../../../../src/model/Auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,EAAkB,MAAM,WAAW,CAAC;AAE3D,OAAO,EAAE,KAAK,MAAM,EAAe,MAAM,UAAU,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,eAAO,MAAM,iBAAiB;;;EAG5B,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;EAG/B,CAAC"}
|
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
import { Codec } from "purify-ts";
|
|
2
|
+
/**
|
|
3
|
+
* The result of simulating an APDU exchange (POST /devices/:id/apdu).
|
|
4
|
+
*
|
|
5
|
+
* {@link CommandResponse.response} is the full response hex, data followed by the
|
|
6
|
+
* two-byte status word.
|
|
7
|
+
*/
|
|
8
|
+
export interface CommandResponse {
|
|
2
9
|
readonly response: string;
|
|
3
|
-
};
|
|
4
|
-
export declare class CommandResponse {
|
|
5
|
-
readonly response: string;
|
|
6
|
-
constructor({ response }: CommandResponseArgs);
|
|
7
10
|
}
|
|
11
|
+
export declare const commandResponseCodec: Codec<{
|
|
12
|
+
response: string;
|
|
13
|
+
}>;
|
|
8
14
|
//# sourceMappingURL=CommandResponse.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandResponse.d.ts","sourceRoot":"","sources":["../../../../src/model/CommandResponse.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"CommandResponse.d.ts","sourceRoot":"","sources":["../../../../src/model/CommandResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAU,MAAM,WAAW,CAAC;AAE1C;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,oBAAoB;;EAE/B,CAAC"}
|
|
@@ -1,14 +1,98 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { Codec } from "purify-ts";
|
|
2
|
+
import { type MockConfig } from "./Mock";
|
|
3
|
+
export type DeviceConnectivityType = "USB" | "BLE";
|
|
4
|
+
export interface DeviceApp {
|
|
3
5
|
readonly name: string;
|
|
4
|
-
readonly
|
|
5
|
-
readonly
|
|
6
|
-
}
|
|
7
|
-
export declare
|
|
6
|
+
readonly version: string;
|
|
7
|
+
readonly hash?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const deviceAppCodec: Codec<{
|
|
10
|
+
name: string;
|
|
11
|
+
version: string;
|
|
12
|
+
hash: string | undefined;
|
|
13
|
+
}>;
|
|
14
|
+
/**
|
|
15
|
+
* An installable app known to the mock "app store", keyed by its install
|
|
16
|
+
* `hash`. The secure-channel install flow resolves the hash sent by DMK to one
|
|
17
|
+
* of these entries to learn which app is being installed.
|
|
18
|
+
*/
|
|
19
|
+
export interface CatalogApp {
|
|
20
|
+
readonly hash: string;
|
|
21
|
+
readonly name: string;
|
|
22
|
+
readonly version: string;
|
|
23
|
+
}
|
|
24
|
+
export declare const catalogAppCodec: Codec<{
|
|
25
|
+
hash: string;
|
|
26
|
+
name: string;
|
|
27
|
+
version: string;
|
|
28
|
+
}>;
|
|
29
|
+
/**
|
|
30
|
+
* A mocked device attached to a session.
|
|
31
|
+
*
|
|
32
|
+
* The device exposes rich metadata (firmware
|
|
33
|
+
* version, installed applications, memory masks) so DMK can build a realistic
|
|
34
|
+
* device session.
|
|
35
|
+
*/
|
|
36
|
+
export interface Device {
|
|
8
37
|
readonly id: string;
|
|
9
38
|
readonly name: string;
|
|
39
|
+
/** DeviceModelId enum value, e.g. "nanoX", "stax", "flex". */
|
|
10
40
|
readonly device_type: string;
|
|
11
41
|
readonly connectivity_type: string;
|
|
12
|
-
|
|
42
|
+
readonly firmware_version?: string;
|
|
43
|
+
readonly apps?: DeviceApp[];
|
|
44
|
+
readonly masks?: number[];
|
|
45
|
+
readonly connected?: boolean;
|
|
46
|
+
}
|
|
47
|
+
export declare const deviceCodec: Codec<{
|
|
48
|
+
id: string;
|
|
49
|
+
name: string;
|
|
50
|
+
device_type: string;
|
|
51
|
+
connectivity_type: string;
|
|
52
|
+
firmware_version: string | undefined;
|
|
53
|
+
apps: {
|
|
54
|
+
name: string;
|
|
55
|
+
version: string;
|
|
56
|
+
hash: string | undefined;
|
|
57
|
+
}[] | undefined;
|
|
58
|
+
masks: number[] | undefined;
|
|
59
|
+
connected: boolean | undefined;
|
|
60
|
+
}>;
|
|
61
|
+
/**
|
|
62
|
+
* Payload used to attach (POST /devices) or edit (PATCH /devices/:id) a device.
|
|
63
|
+
*/
|
|
64
|
+
export interface DeviceConfig {
|
|
65
|
+
readonly name?: string;
|
|
66
|
+
readonly device_type?: string;
|
|
67
|
+
readonly connectivity_type?: string;
|
|
68
|
+
readonly firmware_version?: string;
|
|
69
|
+
readonly apps?: DeviceApp[];
|
|
70
|
+
readonly masks?: number[];
|
|
71
|
+
/** Device-scoped APDU mocks, used when attaching (POST) or importing a device. */
|
|
72
|
+
readonly mocks?: MockConfig[];
|
|
73
|
+
/** Installable apps the mock "app store" can resolve from an install hash. */
|
|
74
|
+
readonly catalog?: CatalogApp[];
|
|
13
75
|
}
|
|
76
|
+
export declare const deviceConfigCodec: Codec<{
|
|
77
|
+
name: string | undefined;
|
|
78
|
+
device_type: string | undefined;
|
|
79
|
+
connectivity_type: string | undefined;
|
|
80
|
+
firmware_version: string | undefined;
|
|
81
|
+
apps: {
|
|
82
|
+
name: string;
|
|
83
|
+
version: string;
|
|
84
|
+
hash: string | undefined;
|
|
85
|
+
}[] | undefined;
|
|
86
|
+
masks: number[] | undefined;
|
|
87
|
+
mocks: {
|
|
88
|
+
prefix: string;
|
|
89
|
+
response: string | undefined;
|
|
90
|
+
responses: string[] | undefined;
|
|
91
|
+
}[] | undefined;
|
|
92
|
+
catalog: {
|
|
93
|
+
hash: string;
|
|
94
|
+
name: string;
|
|
95
|
+
version: string;
|
|
96
|
+
}[] | undefined;
|
|
97
|
+
}>;
|
|
14
98
|
//# sourceMappingURL=Device.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../../../../src/model/Device.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../../../../src/model/Device.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,EAA4B,MAAM,WAAW,CAAC;AAE5E,OAAO,EAAE,KAAK,UAAU,EAAmB,MAAM,QAAQ,CAAC;AAE1D,MAAM,MAAM,sBAAsB,GAAG,KAAK,GAAG,KAAK,CAAC;AAEnD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,cAAc;;;;EAIzB,CAAC;AAEH;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,eAAe;;;;EAI1B,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,eAAO,MAAM,WAAW;;;;;;;;;;;;;EAStB,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,kFAAkF;IAClF,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IAC9B,8EAA8E;IAC9E,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;CACjC;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAS5B,CAAC"}
|
|
@@ -1,10 +1,36 @@
|
|
|
1
|
-
|
|
1
|
+
import { Codec } from "purify-ts";
|
|
2
|
+
/**
|
|
3
|
+
* A canned APDU response registered against a device.
|
|
4
|
+
*
|
|
5
|
+
* Whenever an incoming APDU starts with {@link Mock.prefix} (hex), the mock
|
|
6
|
+
* server returns the next entry of {@link Mock.responses}, advancing one entry
|
|
7
|
+
* per matching APDU and looping back to the start once the list is exhausted.
|
|
8
|
+
* Mocks are device-scoped: each device owns its own independent mock table.
|
|
9
|
+
*/
|
|
10
|
+
export interface Mock {
|
|
11
|
+
readonly id: string;
|
|
2
12
|
readonly prefix: string;
|
|
3
|
-
readonly
|
|
4
|
-
}
|
|
5
|
-
export declare
|
|
13
|
+
readonly responses: string[];
|
|
14
|
+
}
|
|
15
|
+
export declare const mockCodec: Codec<{
|
|
16
|
+
id: string;
|
|
17
|
+
prefix: string;
|
|
18
|
+
responses: string[];
|
|
19
|
+
}>;
|
|
20
|
+
/**
|
|
21
|
+
* Payload used to create (POST /mocks) or edit (PATCH /mocks/:id) a mock.
|
|
22
|
+
*
|
|
23
|
+
* Provide either an ordered {@link MockConfig.responses} list or a single
|
|
24
|
+
* {@link MockConfig.response} (shorthand for `responses: [response]`).
|
|
25
|
+
*/
|
|
26
|
+
export interface MockConfig {
|
|
6
27
|
readonly prefix: string;
|
|
7
|
-
readonly response
|
|
8
|
-
|
|
28
|
+
readonly response?: string;
|
|
29
|
+
readonly responses?: string[];
|
|
9
30
|
}
|
|
31
|
+
export declare const mockConfigCodec: Codec<{
|
|
32
|
+
prefix: string;
|
|
33
|
+
response: string | undefined;
|
|
34
|
+
responses: string[] | undefined;
|
|
35
|
+
}>;
|
|
10
36
|
//# sourceMappingURL=Mock.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mock.d.ts","sourceRoot":"","sources":["../../../../src/model/Mock.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"Mock.d.ts","sourceRoot":"","sources":["../../../../src/model/Mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,EAAoB,MAAM,WAAW,CAAC;AAE3D;;;;;;;GAOG;AACH,MAAM,WAAW,IAAI;IACnB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,eAAO,MAAM,SAAS;;;;EAIpB,CAAC;AAEH;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,eAAO,MAAM,eAAe;;;;EAI1B,CAAC"}
|
|
@@ -1,15 +1,33 @@
|
|
|
1
|
+
import { Codec } from "purify-ts";
|
|
1
2
|
import { type Device } from "./Device";
|
|
2
|
-
|
|
3
|
+
/**
|
|
4
|
+
* A mock server session, resolved from a bearer token.
|
|
5
|
+
*
|
|
6
|
+
* All devices and mocks are scoped to the session that owns the token.
|
|
7
|
+
*/
|
|
8
|
+
export interface Session {
|
|
3
9
|
readonly id: string;
|
|
4
|
-
readonly device: Device;
|
|
5
|
-
readonly current_app: string;
|
|
6
10
|
readonly created_at: number;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
readonly id: string;
|
|
10
|
-
readonly device: Device;
|
|
11
|
-
readonly currentApp: string;
|
|
12
|
-
readonly created_at: number;
|
|
13
|
-
constructor({ id, device, current_app, created_at }: SessionArgs);
|
|
11
|
+
readonly expires_at: number;
|
|
12
|
+
readonly devices: Device[];
|
|
14
13
|
}
|
|
14
|
+
export declare const sessionCodec: Codec<{
|
|
15
|
+
id: string;
|
|
16
|
+
created_at: number;
|
|
17
|
+
expires_at: number;
|
|
18
|
+
devices: {
|
|
19
|
+
id: string;
|
|
20
|
+
name: string;
|
|
21
|
+
device_type: string;
|
|
22
|
+
connectivity_type: string;
|
|
23
|
+
firmware_version: string | undefined;
|
|
24
|
+
apps: {
|
|
25
|
+
name: string;
|
|
26
|
+
version: string;
|
|
27
|
+
hash: string | undefined;
|
|
28
|
+
}[] | undefined;
|
|
29
|
+
masks: number[] | undefined;
|
|
30
|
+
connected: boolean | undefined;
|
|
31
|
+
}[];
|
|
32
|
+
}>;
|
|
15
33
|
//# sourceMappingURL=Session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../../src/model/Session.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../../src/model/Session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,EAAkB,MAAM,WAAW,CAAC;AAEzD,OAAO,EAAE,KAAK,MAAM,EAAe,MAAM,UAAU,CAAC;AAEpD;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;EAKvB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Codec } from "purify-ts";
|
|
2
|
+
import { type DeviceConfig } from "./Device";
|
|
3
|
+
/**
|
|
4
|
+
* A portable snapshot of a session's devices (and their mocks).
|
|
5
|
+
*
|
|
6
|
+
* Produced by `GET /export` and consumed by `POST /import` to save and restore
|
|
7
|
+
* complex scenarios. Only configuration is captured (no ids, connection state
|
|
8
|
+
* or response cursors), so importing recreates a fresh, deterministic session
|
|
9
|
+
* state. Mocks are nested under each device (`DeviceConfig.mocks`).
|
|
10
|
+
*/
|
|
11
|
+
export interface SessionExport {
|
|
12
|
+
readonly devices: DeviceConfig[];
|
|
13
|
+
}
|
|
14
|
+
export declare const sessionExportCodec: Codec<{
|
|
15
|
+
devices: {
|
|
16
|
+
name: string | undefined;
|
|
17
|
+
device_type: string | undefined;
|
|
18
|
+
connectivity_type: string | undefined;
|
|
19
|
+
firmware_version: string | undefined;
|
|
20
|
+
apps: {
|
|
21
|
+
name: string;
|
|
22
|
+
version: string;
|
|
23
|
+
hash: string | undefined;
|
|
24
|
+
}[] | undefined;
|
|
25
|
+
masks: number[] | undefined;
|
|
26
|
+
mocks: {
|
|
27
|
+
prefix: string;
|
|
28
|
+
response: string | undefined;
|
|
29
|
+
responses: string[] | undefined;
|
|
30
|
+
}[] | undefined;
|
|
31
|
+
catalog: {
|
|
32
|
+
hash: string;
|
|
33
|
+
name: string;
|
|
34
|
+
version: string;
|
|
35
|
+
}[] | undefined;
|
|
36
|
+
}[];
|
|
37
|
+
}>;
|
|
38
|
+
//# sourceMappingURL=SessionExport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionExport.d.ts","sourceRoot":"","sources":["../../../../src/model/SessionExport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,UAAU,CAAC;AAEhE;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;CAClC;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;EAE7B,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Codec } from "purify-ts";
|
|
2
|
+
/**
|
|
3
|
+
* The live Speculos emulator instance backing a device, returned by
|
|
4
|
+
* `GET /devices/:id/speculos`. Control calls are proxied through
|
|
5
|
+
* `/devices/:id/speculos/*`.
|
|
6
|
+
*/
|
|
7
|
+
export interface SpeculosInstance {
|
|
8
|
+
/** Speculinho run id owning the emulator pod. */
|
|
9
|
+
readonly run_id: string;
|
|
10
|
+
/** Per-pod emulator URL (reachable from the mock server). */
|
|
11
|
+
readonly speculos_url: string;
|
|
12
|
+
/** Device model (e.g. "nanoX", "stax", "flex"). */
|
|
13
|
+
readonly model: string;
|
|
14
|
+
}
|
|
15
|
+
export declare const speculosInstanceCodec: Codec<{
|
|
16
|
+
run_id: string;
|
|
17
|
+
speculos_url: string;
|
|
18
|
+
model: string;
|
|
19
|
+
}>;
|
|
20
|
+
//# sourceMappingURL=Speculos.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Speculos.d.ts","sourceRoot":"","sources":["../../../../src/model/Speculos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAU,MAAM,WAAW,CAAC;AAE1C;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,6DAA6D;IAC7D,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,mDAAmD;IACnD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,qBAAqB;;;;EAIhC,CAAC"}
|