@tx5dr/contracts 1.7.0 → 1.7.1
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/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/schema/__tests__/audio.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/audio.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/audio.schema.test.js +126 -0
- package/dist/schema/__tests__/audio.schema.test.js.map +1 -0
- package/dist/schema/api-response.schema.d.ts +30 -30
- package/dist/schema/audio.schema.d.ts +1292 -0
- package/dist/schema/audio.schema.d.ts.map +1 -1
- package/dist/schema/audio.schema.js +33 -0
- package/dist/schema/audio.schema.js.map +1 -1
- package/dist/schema/cpu-profile.schema.d.ts +4 -4
- package/dist/schema/ft8.schema.d.ts +4 -4
- package/dist/schema/logbook.schema.d.ts +22 -0
- package/dist/schema/logbook.schema.d.ts.map +1 -1
- package/dist/schema/logbook.schema.js +8 -0
- package/dist/schema/logbook.schema.js.map +1 -1
- package/dist/schema/plugin.schema.d.ts +16 -16
- package/dist/schema/qso.schema.d.ts +2 -2
- package/dist/schema/radio-power.schema.d.ts +6 -6
- package/dist/schema/radio-profile.schema.d.ts +280 -108
- package/dist/schema/radio-profile.schema.d.ts.map +1 -1
- package/dist/schema/radio.schema.d.ts +18 -18
- package/dist/schema/realtime.schema.d.ts +22 -22
- package/dist/schema/slot-info.schema.d.ts +18 -18
- package/dist/schema/spectrum.schema.d.ts +6 -6
- package/dist/schema/system.schema.d.ts +11 -0
- package/dist/schema/system.schema.d.ts.map +1 -1
- package/dist/schema/system.schema.js +4 -0
- package/dist/schema/system.schema.js.map +1 -1
- package/dist/schema/transmission.schema.d.ts +8 -8
- package/dist/schema/update.schema.d.ts +62 -0
- package/dist/schema/update.schema.d.ts.map +1 -0
- package/dist/schema/update.schema.js +28 -0
- package/dist/schema/update.schema.js.map +1 -0
- package/dist/schema/websocket.schema.d.ts +364 -128
- package/dist/schema/websocket.schema.d.ts.map +1 -1
- package/dist/schema/websocket.schema.js +38 -0
- package/dist/schema/websocket.schema.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +1 -0
- package/src/schema/__tests__/audio.schema.test.ts +142 -0
- package/src/schema/audio.schema.ts +44 -1
- package/src/schema/logbook.schema.ts +8 -0
- package/src/schema/system.schema.ts +6 -0
- package/src/schema/update.schema.ts +33 -0
- package/src/schema/websocket.schema.ts +52 -0
package/dist/index.d.ts
CHANGED
|
@@ -54,4 +54,5 @@ export * from './schema/rigctld.schema.js';
|
|
|
54
54
|
export * from './schema/realtime.schema.js';
|
|
55
55
|
export * from './schema/desktop-https.schema.js';
|
|
56
56
|
export * from './schema/plugin.schema.js';
|
|
57
|
+
export * from './schema/update.schema.js';
|
|
57
58
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AAGzC,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACf,MAAM,8BAA8B,CAAC;AAGtC,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,cAAc,EACf,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,aAAa,EACd,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,6BAA6B,EAC7B,2BAA2B,EAC3B,gCAAgC,EAChC,sCAAsC,EACtC,kCAAkC,GAEnC,MAAM,8BAA8B,CAAC;AAGtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,6BAA6B,CAAC;AAG5C,cAAc,wBAAwB,CAAC;AAGvC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AAGzC,cAAc,iCAAiC,CAAC;AAGhD,cAAc,iCAAiC,CAAC;AAGhD,cAAc,gCAAgC,CAAC;AAG/C,cAAc,kCAAkC,CAAC;AAGjD,cAAc,qBAAqB,CAAC;AAGpC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAG/C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,iBAAiB,CAAC;AAGhC,cAAc,oCAAoC,CAAC;AAGnD,cAAc,gCAAgC,CAAC;AAG/C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,qCAAqC,CAAC;AAGpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,kCAAkC,CAAC;AAGjD,cAAc,4BAA4B,CAAC;AAG3C,cAAc,6BAA6B,CAAC;AAG5C,cAAc,kCAAkC,CAAC;AAGjD,cAAc,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AAGzC,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACf,MAAM,8BAA8B,CAAC;AAGtC,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,cAAc,EACf,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,aAAa,EACd,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,6BAA6B,EAC7B,2BAA2B,EAC3B,gCAAgC,EAChC,sCAAsC,EACtC,kCAAkC,GAEnC,MAAM,8BAA8B,CAAC;AAGtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,6BAA6B,CAAC;AAG5C,cAAc,wBAAwB,CAAC;AAGvC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AAGzC,cAAc,iCAAiC,CAAC;AAGhD,cAAc,iCAAiC,CAAC;AAGhD,cAAc,gCAAgC,CAAC;AAG/C,cAAc,kCAAkC,CAAC;AAGjD,cAAc,qBAAqB,CAAC;AAGpC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAG/C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,iBAAiB,CAAC;AAGhC,cAAc,oCAAoC,CAAC;AAGnD,cAAc,gCAAgC,CAAC;AAG/C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,qCAAqC,CAAC;AAGpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,kCAAkC,CAAC;AAGjD,cAAc,4BAA4B,CAAC;AAG3C,cAAc,6BAA6B,CAAC;AAG5C,cAAc,kCAAkC,CAAC;AAGjD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AAEzC,oDAAoD;AACpD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACf,MAAM,8BAA8B,CAAC;AAetC,OAAO,EACL,aAAa,EACd,MAAM,8BAA8B,CAAC;AActC,mBAAmB;AACnB,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AAEzC,WAAW;AACX,cAAc,0BAA0B,CAAC;AAEzC,YAAY;AACZ,cAAc,yBAAyB,CAAC;AAExC,eAAe;AACf,cAAc,0BAA0B,CAAC;AAEzC,eAAe;AACf,cAAc,0BAA0B,CAAC;AAEzC,aAAa;AACb,cAAc,wBAAwB,CAAC;AAEvC,eAAe;AACf,cAAc,0BAA0B,CAAC;AAEzC,cAAc;AACd,cAAc,yBAAyB,CAAC;AAExC,kBAAkB;AAClB,cAAc,6BAA6B,CAAC;AAE5C,eAAe;AACf,cAAc,wBAAwB,CAAC;AAEvC,mBAAmB;AACnB,cAAc,8BAA8B,CAAC;AAE7C,mBAAmB;AACnB,cAAc,8BAA8B,CAAC;AAE7C,iBAAiB;AACjB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AAEzC,sBAAsB;AACtB,cAAc,iCAAiC,CAAC;AAEhD,+BAA+B;AAC/B,cAAc,iCAAiC,CAAC;AAEhD,qBAAqB;AACrB,cAAc,gCAAgC,CAAC;AAE/C,uBAAuB;AACvB,cAAc,kCAAkC,CAAC;AAEjD,oEAAoE;AACpE,cAAc,qBAAqB,CAAC;AAEpC,cAAc;AACd,cAAc,yBAAyB,CAAC;AAExC,gBAAgB;AAChB,cAAc,2BAA2B,CAAC;AAE1C,eAAe;AACf,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAE/C,sBAAsB;AACtB,cAAc,iCAAiC,CAAC;AAEhD,aAAa;AACb,cAAc,iBAAiB,CAAC;AAEhC,yBAAyB;AACzB,cAAc,oCAAoC,CAAC;AAEnD,qBAAqB;AACrB,cAAc,gCAAgC,CAAC;AAE/C,mBAAmB;AACnB,cAAc,8BAA8B,CAAC;AAE7C,0BAA0B;AAC1B,cAAc,qCAAqC,CAAC;AAEpD,qBAAqB;AACrB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAEhD,uBAAuB;AACvB,cAAc,kCAAkC,CAAC;AAEjD,wBAAwB;AACxB,cAAc,4BAA4B,CAAC;AAE3C,kBAAkB;AAClB,cAAc,6BAA6B,CAAC;AAE5C,uBAAuB;AACvB,cAAc,kCAAkC,CAAC;AAEjD,gBAAgB;AAChB,cAAc,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AAEzC,oDAAoD;AACpD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACf,MAAM,8BAA8B,CAAC;AAetC,OAAO,EACL,aAAa,EACd,MAAM,8BAA8B,CAAC;AActC,mBAAmB;AACnB,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AAEzC,WAAW;AACX,cAAc,0BAA0B,CAAC;AAEzC,YAAY;AACZ,cAAc,yBAAyB,CAAC;AAExC,eAAe;AACf,cAAc,0BAA0B,CAAC;AAEzC,eAAe;AACf,cAAc,0BAA0B,CAAC;AAEzC,aAAa;AACb,cAAc,wBAAwB,CAAC;AAEvC,eAAe;AACf,cAAc,0BAA0B,CAAC;AAEzC,cAAc;AACd,cAAc,yBAAyB,CAAC;AAExC,kBAAkB;AAClB,cAAc,6BAA6B,CAAC;AAE5C,eAAe;AACf,cAAc,wBAAwB,CAAC;AAEvC,mBAAmB;AACnB,cAAc,8BAA8B,CAAC;AAE7C,mBAAmB;AACnB,cAAc,8BAA8B,CAAC;AAE7C,iBAAiB;AACjB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AAEzC,sBAAsB;AACtB,cAAc,iCAAiC,CAAC;AAEhD,+BAA+B;AAC/B,cAAc,iCAAiC,CAAC;AAEhD,qBAAqB;AACrB,cAAc,gCAAgC,CAAC;AAE/C,uBAAuB;AACvB,cAAc,kCAAkC,CAAC;AAEjD,oEAAoE;AACpE,cAAc,qBAAqB,CAAC;AAEpC,cAAc;AACd,cAAc,yBAAyB,CAAC;AAExC,gBAAgB;AAChB,cAAc,2BAA2B,CAAC;AAE1C,eAAe;AACf,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAE/C,sBAAsB;AACtB,cAAc,iCAAiC,CAAC;AAEhD,aAAa;AACb,cAAc,iBAAiB,CAAC;AAEhC,yBAAyB;AACzB,cAAc,oCAAoC,CAAC;AAEnD,qBAAqB;AACrB,cAAc,gCAAgC,CAAC;AAE/C,mBAAmB;AACnB,cAAc,8BAA8B,CAAC;AAE7C,0BAA0B;AAC1B,cAAc,qCAAqC,CAAC;AAEpD,qBAAqB;AACrB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAEhD,uBAAuB;AACvB,cAAc,kCAAkC,CAAC;AAEjD,wBAAwB;AACxB,cAAc,4BAA4B,CAAC;AAE3C,kBAAkB;AAClB,cAAc,6BAA6B,CAAC;AAE5C,uBAAuB;AACvB,cAAc,kCAAkC,CAAC;AAEjD,gBAAgB;AAChB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audio.schema.test.d.ts","sourceRoot":"","sources":["../../../src/schema/__tests__/audio.schema.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { AudioDevicesResponseSchema, AudioDeviceResolutionSchema, AudioDeviceResolutionStatusSchema, AudioDeviceSettingsResponseSchema, AudioSettingsResolveResponseSchema, } from '../audio.schema.js';
|
|
3
|
+
const device = {
|
|
4
|
+
id: 'input-1',
|
|
5
|
+
name: 'USB Audio',
|
|
6
|
+
isDefault: true,
|
|
7
|
+
channels: 2,
|
|
8
|
+
sampleRate: 48000,
|
|
9
|
+
sampleRates: [44100, 48000],
|
|
10
|
+
type: 'input',
|
|
11
|
+
};
|
|
12
|
+
describe('audio device resolution schemas', () => {
|
|
13
|
+
it('accepts every resolution status', () => {
|
|
14
|
+
for (const status of ['selected', 'default', 'virtual-selected', 'missing']) {
|
|
15
|
+
expect(AudioDeviceResolutionStatusSchema.parse(status)).toBe(status);
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
it('rejects removed fallback-default resolution status', () => {
|
|
19
|
+
expect(() => AudioDeviceResolutionStatusSchema.parse('fallback-default')).toThrow();
|
|
20
|
+
});
|
|
21
|
+
it('describes configured and effective devices', () => {
|
|
22
|
+
expect(AudioDeviceResolutionSchema.parse({
|
|
23
|
+
configuredDeviceName: 'USB Audio',
|
|
24
|
+
configuredDevice: device,
|
|
25
|
+
effectiveDevice: device,
|
|
26
|
+
status: 'selected',
|
|
27
|
+
reason: null,
|
|
28
|
+
}).effectiveDevice?.name).toBe('USB Audio');
|
|
29
|
+
});
|
|
30
|
+
it('requires resolution details on settings responses', () => {
|
|
31
|
+
const parsed = AudioDeviceSettingsResponseSchema.parse({
|
|
32
|
+
success: true,
|
|
33
|
+
currentSettings: { inputDeviceName: 'USB Audio', inputSampleRate: 48000 },
|
|
34
|
+
deviceResolution: {
|
|
35
|
+
input: {
|
|
36
|
+
configuredDeviceName: 'USB Audio',
|
|
37
|
+
configuredDevice: device,
|
|
38
|
+
effectiveDevice: device,
|
|
39
|
+
status: 'selected',
|
|
40
|
+
},
|
|
41
|
+
output: {
|
|
42
|
+
configuredDeviceName: null,
|
|
43
|
+
configuredDevice: null,
|
|
44
|
+
effectiveDevice: null,
|
|
45
|
+
status: 'default',
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
expect(parsed.deviceResolution.input.status).toBe('selected');
|
|
50
|
+
});
|
|
51
|
+
it('accepts device responses with backend-provided options', () => {
|
|
52
|
+
const parsed = AudioDevicesResponseSchema.parse({
|
|
53
|
+
inputDevices: [device],
|
|
54
|
+
outputDevices: [{ ...device, id: 'output-1', type: 'output' }],
|
|
55
|
+
inputBufferSizes: [128, 256, 512, 768, 1024],
|
|
56
|
+
outputBufferSizes: [128, 256, 512, 768, 1024],
|
|
57
|
+
});
|
|
58
|
+
expect(parsed.inputDevices[0]?.sampleRates).toEqual([44100, 48000]);
|
|
59
|
+
expect(parsed.inputBufferSizes).toContain(768);
|
|
60
|
+
});
|
|
61
|
+
it('accepts legacy and split audio settings', () => {
|
|
62
|
+
expect(AudioDeviceSettingsResponseSchema.parse({
|
|
63
|
+
success: true,
|
|
64
|
+
currentSettings: { sampleRate: 48000, bufferSize: 1024 },
|
|
65
|
+
deviceResolution: {
|
|
66
|
+
input: {
|
|
67
|
+
configuredDeviceName: null,
|
|
68
|
+
configuredDevice: null,
|
|
69
|
+
effectiveDevice: device,
|
|
70
|
+
status: 'default',
|
|
71
|
+
},
|
|
72
|
+
output: {
|
|
73
|
+
configuredDeviceName: null,
|
|
74
|
+
configuredDevice: null,
|
|
75
|
+
effectiveDevice: device,
|
|
76
|
+
status: 'default',
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
}).currentSettings.sampleRate).toBe(48000);
|
|
80
|
+
expect(AudioDeviceSettingsResponseSchema.parse({
|
|
81
|
+
success: true,
|
|
82
|
+
currentSettings: {
|
|
83
|
+
inputSampleRate: 16000,
|
|
84
|
+
outputSampleRate: 48000,
|
|
85
|
+
inputBufferSize: 256,
|
|
86
|
+
outputBufferSize: 1024,
|
|
87
|
+
},
|
|
88
|
+
deviceResolution: {
|
|
89
|
+
input: {
|
|
90
|
+
configuredDeviceName: null,
|
|
91
|
+
configuredDevice: null,
|
|
92
|
+
effectiveDevice: device,
|
|
93
|
+
status: 'default',
|
|
94
|
+
},
|
|
95
|
+
output: {
|
|
96
|
+
configuredDeviceName: null,
|
|
97
|
+
configuredDevice: null,
|
|
98
|
+
effectiveDevice: device,
|
|
99
|
+
status: 'default',
|
|
100
|
+
},
|
|
101
|
+
},
|
|
102
|
+
}).currentSettings.outputBufferSize).toBe(1024);
|
|
103
|
+
});
|
|
104
|
+
it('accepts resolve responses with every supported status', () => {
|
|
105
|
+
for (const status of ['selected', 'default', 'virtual-selected', 'missing']) {
|
|
106
|
+
expect(AudioSettingsResolveResponseSchema.parse({
|
|
107
|
+
success: true,
|
|
108
|
+
deviceResolution: {
|
|
109
|
+
input: {
|
|
110
|
+
configuredDeviceName: status === 'default' ? null : 'USB Audio',
|
|
111
|
+
configuredDevice: status === 'selected' ? device : null,
|
|
112
|
+
effectiveDevice: status === 'missing' ? null : device,
|
|
113
|
+
status,
|
|
114
|
+
},
|
|
115
|
+
output: {
|
|
116
|
+
configuredDeviceName: null,
|
|
117
|
+
configuredDevice: null,
|
|
118
|
+
effectiveDevice: device,
|
|
119
|
+
status: 'default',
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
}).deviceResolution.input.status).toBe(status);
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
//# sourceMappingURL=audio.schema.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audio.schema.test.js","sourceRoot":"","sources":["../../../src/schema/__tests__/audio.schema.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -172,9 +172,6 @@ export declare const UpdateRadioConfigResponseSchema: z.ZodObject<{
|
|
|
172
172
|
pttPort: z.ZodOptional<z.ZodString>;
|
|
173
173
|
}, "strip", z.ZodTypeAny, {
|
|
174
174
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
175
|
-
spectrum?: {
|
|
176
|
-
speed?: number | undefined;
|
|
177
|
-
} | undefined;
|
|
178
175
|
network?: {
|
|
179
176
|
host: string;
|
|
180
177
|
port: number;
|
|
@@ -197,6 +194,9 @@ export declare const UpdateRadioConfigResponseSchema: z.ZodObject<{
|
|
|
197
194
|
} | undefined;
|
|
198
195
|
backendConfig?: Record<string, string> | undefined;
|
|
199
196
|
} | undefined;
|
|
197
|
+
spectrum?: {
|
|
198
|
+
speed?: number | undefined;
|
|
199
|
+
} | undefined;
|
|
200
200
|
icomWlan?: {
|
|
201
201
|
ip: string;
|
|
202
202
|
port: number;
|
|
@@ -209,9 +209,6 @@ export declare const UpdateRadioConfigResponseSchema: z.ZodObject<{
|
|
|
209
209
|
pttPort?: string | undefined;
|
|
210
210
|
}, {
|
|
211
211
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
212
|
-
spectrum?: {
|
|
213
|
-
speed?: number | undefined;
|
|
214
|
-
} | undefined;
|
|
215
212
|
network?: {
|
|
216
213
|
host: string;
|
|
217
214
|
port: number;
|
|
@@ -234,6 +231,9 @@ export declare const UpdateRadioConfigResponseSchema: z.ZodObject<{
|
|
|
234
231
|
} | undefined;
|
|
235
232
|
backendConfig?: Record<string, string> | undefined;
|
|
236
233
|
} | undefined;
|
|
234
|
+
spectrum?: {
|
|
235
|
+
speed?: number | undefined;
|
|
236
|
+
} | undefined;
|
|
237
237
|
icomWlan?: {
|
|
238
238
|
ip: string;
|
|
239
239
|
port: number;
|
|
@@ -250,9 +250,6 @@ export declare const UpdateRadioConfigResponseSchema: z.ZodObject<{
|
|
|
250
250
|
success: boolean;
|
|
251
251
|
config: {
|
|
252
252
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
253
|
-
spectrum?: {
|
|
254
|
-
speed?: number | undefined;
|
|
255
|
-
} | undefined;
|
|
256
253
|
network?: {
|
|
257
254
|
host: string;
|
|
258
255
|
port: number;
|
|
@@ -275,6 +272,9 @@ export declare const UpdateRadioConfigResponseSchema: z.ZodObject<{
|
|
|
275
272
|
} | undefined;
|
|
276
273
|
backendConfig?: Record<string, string> | undefined;
|
|
277
274
|
} | undefined;
|
|
275
|
+
spectrum?: {
|
|
276
|
+
speed?: number | undefined;
|
|
277
|
+
} | undefined;
|
|
278
278
|
icomWlan?: {
|
|
279
279
|
ip: string;
|
|
280
280
|
port: number;
|
|
@@ -291,9 +291,6 @@ export declare const UpdateRadioConfigResponseSchema: z.ZodObject<{
|
|
|
291
291
|
success: boolean;
|
|
292
292
|
config: {
|
|
293
293
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
294
|
-
spectrum?: {
|
|
295
|
-
speed?: number | undefined;
|
|
296
|
-
} | undefined;
|
|
297
294
|
network?: {
|
|
298
295
|
host: string;
|
|
299
296
|
port: number;
|
|
@@ -316,6 +313,9 @@ export declare const UpdateRadioConfigResponseSchema: z.ZodObject<{
|
|
|
316
313
|
} | undefined;
|
|
317
314
|
backendConfig?: Record<string, string> | undefined;
|
|
318
315
|
} | undefined;
|
|
316
|
+
spectrum?: {
|
|
317
|
+
speed?: number | undefined;
|
|
318
|
+
} | undefined;
|
|
319
319
|
icomWlan?: {
|
|
320
320
|
ip: string;
|
|
321
321
|
port: number;
|
|
@@ -490,9 +490,6 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
490
490
|
pttPort: z.ZodOptional<z.ZodString>;
|
|
491
491
|
}, "strip", z.ZodTypeAny, {
|
|
492
492
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
493
|
-
spectrum?: {
|
|
494
|
-
speed?: number | undefined;
|
|
495
|
-
} | undefined;
|
|
496
493
|
network?: {
|
|
497
494
|
host: string;
|
|
498
495
|
port: number;
|
|
@@ -515,6 +512,9 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
515
512
|
} | undefined;
|
|
516
513
|
backendConfig?: Record<string, string> | undefined;
|
|
517
514
|
} | undefined;
|
|
515
|
+
spectrum?: {
|
|
516
|
+
speed?: number | undefined;
|
|
517
|
+
} | undefined;
|
|
518
518
|
icomWlan?: {
|
|
519
519
|
ip: string;
|
|
520
520
|
port: number;
|
|
@@ -527,9 +527,6 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
527
527
|
pttPort?: string | undefined;
|
|
528
528
|
}, {
|
|
529
529
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
530
|
-
spectrum?: {
|
|
531
|
-
speed?: number | undefined;
|
|
532
|
-
} | undefined;
|
|
533
530
|
network?: {
|
|
534
531
|
host: string;
|
|
535
532
|
port: number;
|
|
@@ -552,6 +549,9 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
552
549
|
} | undefined;
|
|
553
550
|
backendConfig?: Record<string, string> | undefined;
|
|
554
551
|
} | undefined;
|
|
552
|
+
spectrum?: {
|
|
553
|
+
speed?: number | undefined;
|
|
554
|
+
} | undefined;
|
|
555
555
|
icomWlan?: {
|
|
556
556
|
ip: string;
|
|
557
557
|
port: number;
|
|
@@ -582,9 +582,6 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
582
582
|
} | null;
|
|
583
583
|
radioConfig?: {
|
|
584
584
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
585
|
-
spectrum?: {
|
|
586
|
-
speed?: number | undefined;
|
|
587
|
-
} | undefined;
|
|
588
585
|
network?: {
|
|
589
586
|
host: string;
|
|
590
587
|
port: number;
|
|
@@ -607,6 +604,9 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
607
604
|
} | undefined;
|
|
608
605
|
backendConfig?: Record<string, string> | undefined;
|
|
609
606
|
} | undefined;
|
|
607
|
+
spectrum?: {
|
|
608
|
+
speed?: number | undefined;
|
|
609
|
+
} | undefined;
|
|
610
610
|
icomWlan?: {
|
|
611
611
|
ip: string;
|
|
612
612
|
port: number;
|
|
@@ -634,9 +634,6 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
634
634
|
} | null;
|
|
635
635
|
radioConfig?: {
|
|
636
636
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
637
|
-
spectrum?: {
|
|
638
|
-
speed?: number | undefined;
|
|
639
|
-
} | undefined;
|
|
640
637
|
network?: {
|
|
641
638
|
host: string;
|
|
642
639
|
port: number;
|
|
@@ -659,6 +656,9 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
659
656
|
} | undefined;
|
|
660
657
|
backendConfig?: Record<string, string> | undefined;
|
|
661
658
|
} | undefined;
|
|
659
|
+
spectrum?: {
|
|
660
|
+
speed?: number | undefined;
|
|
661
|
+
} | undefined;
|
|
662
662
|
icomWlan?: {
|
|
663
663
|
ip: string;
|
|
664
664
|
port: number;
|
|
@@ -688,9 +688,6 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
688
688
|
} | null;
|
|
689
689
|
radioConfig?: {
|
|
690
690
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
691
|
-
spectrum?: {
|
|
692
|
-
speed?: number | undefined;
|
|
693
|
-
} | undefined;
|
|
694
691
|
network?: {
|
|
695
692
|
host: string;
|
|
696
693
|
port: number;
|
|
@@ -713,6 +710,9 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
713
710
|
} | undefined;
|
|
714
711
|
backendConfig?: Record<string, string> | undefined;
|
|
715
712
|
} | undefined;
|
|
713
|
+
spectrum?: {
|
|
714
|
+
speed?: number | undefined;
|
|
715
|
+
} | undefined;
|
|
716
716
|
icomWlan?: {
|
|
717
717
|
ip: string;
|
|
718
718
|
port: number;
|
|
@@ -743,9 +743,6 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
743
743
|
} | null;
|
|
744
744
|
radioConfig?: {
|
|
745
745
|
type: "none" | "network" | "serial" | "icom-wlan";
|
|
746
|
-
spectrum?: {
|
|
747
|
-
speed?: number | undefined;
|
|
748
|
-
} | undefined;
|
|
749
746
|
network?: {
|
|
750
747
|
host: string;
|
|
751
748
|
port: number;
|
|
@@ -768,6 +765,9 @@ export declare const RadioStatusResponseSchema: z.ZodObject<{
|
|
|
768
765
|
} | undefined;
|
|
769
766
|
backendConfig?: Record<string, string> | undefined;
|
|
770
767
|
} | undefined;
|
|
768
|
+
spectrum?: {
|
|
769
|
+
speed?: number | undefined;
|
|
770
|
+
} | undefined;
|
|
771
771
|
icomWlan?: {
|
|
772
772
|
ip: string;
|
|
773
773
|
port: number;
|