@tx5dr/contracts 1.6.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.
Files changed (65) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/schema/__tests__/audio.schema.test.d.ts +2 -0
  6. package/dist/schema/__tests__/audio.schema.test.d.ts.map +1 -0
  7. package/dist/schema/__tests__/audio.schema.test.js +126 -0
  8. package/dist/schema/__tests__/audio.schema.test.js.map +1 -0
  9. package/dist/schema/__tests__/plugin-market.schema.test.js +5 -1
  10. package/dist/schema/__tests__/plugin-market.schema.test.js.map +1 -1
  11. package/dist/schema/api-response.schema.d.ts +30 -30
  12. package/dist/schema/audio.schema.d.ts +1292 -0
  13. package/dist/schema/audio.schema.d.ts.map +1 -1
  14. package/dist/schema/audio.schema.js +33 -0
  15. package/dist/schema/audio.schema.js.map +1 -1
  16. package/dist/schema/cpu-profile.schema.d.ts +4 -4
  17. package/dist/schema/ft8.schema.d.ts +4 -4
  18. package/dist/schema/logbook.schema.d.ts +22 -0
  19. package/dist/schema/logbook.schema.d.ts.map +1 -1
  20. package/dist/schema/logbook.schema.js +8 -0
  21. package/dist/schema/logbook.schema.js.map +1 -1
  22. package/dist/schema/plugin.schema.d.ts +48 -48
  23. package/dist/schema/plugin.schema.d.ts.map +1 -1
  24. package/dist/schema/plugin.schema.js +13 -1
  25. package/dist/schema/plugin.schema.js.map +1 -1
  26. package/dist/schema/qso.schema.d.ts +2 -2
  27. package/dist/schema/radio-power.schema.d.ts +6 -6
  28. package/dist/schema/radio-profile.schema.d.ts +280 -108
  29. package/dist/schema/radio-profile.schema.d.ts.map +1 -1
  30. package/dist/schema/radio.schema.d.ts +18 -18
  31. package/dist/schema/realtime.schema.d.ts +22 -22
  32. package/dist/schema/server-message-keys.d.ts +3 -1
  33. package/dist/schema/server-message-keys.d.ts.map +1 -1
  34. package/dist/schema/server-message-keys.js +2 -0
  35. package/dist/schema/server-message-keys.js.map +1 -1
  36. package/dist/schema/slot-info.schema.d.ts +22 -18
  37. package/dist/schema/slot-info.schema.d.ts.map +1 -1
  38. package/dist/schema/slot-info.schema.js +2 -0
  39. package/dist/schema/slot-info.schema.js.map +1 -1
  40. package/dist/schema/spectrum.schema.d.ts +6 -6
  41. package/dist/schema/system.schema.d.ts +11 -0
  42. package/dist/schema/system.schema.d.ts.map +1 -1
  43. package/dist/schema/system.schema.js +4 -0
  44. package/dist/schema/system.schema.js.map +1 -1
  45. package/dist/schema/transmission.schema.d.ts +8 -8
  46. package/dist/schema/update.schema.d.ts +62 -0
  47. package/dist/schema/update.schema.d.ts.map +1 -0
  48. package/dist/schema/update.schema.js +28 -0
  49. package/dist/schema/update.schema.js.map +1 -0
  50. package/dist/schema/websocket.schema.d.ts +392 -156
  51. package/dist/schema/websocket.schema.d.ts.map +1 -1
  52. package/dist/schema/websocket.schema.js +38 -0
  53. package/dist/schema/websocket.schema.js.map +1 -1
  54. package/package.json +1 -1
  55. package/src/index.ts +1 -0
  56. package/src/schema/__tests__/audio.schema.test.ts +142 -0
  57. package/src/schema/__tests__/plugin-market.schema.test.ts +6 -0
  58. package/src/schema/audio.schema.ts +44 -1
  59. package/src/schema/logbook.schema.ts +8 -0
  60. package/src/schema/plugin.schema.ts +13 -1
  61. package/src/schema/server-message-keys.ts +3 -0
  62. package/src/schema/slot-info.schema.ts +2 -0
  63. package/src/schema/system.schema.ts +6 -0
  64. package/src/schema/update.schema.ts +33 -0
  65. 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
@@ -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
@@ -86,4 +86,5 @@ export * from './schema/realtime.schema.js';
86
86
  export * from './schema/desktop-https.schema.js';
87
87
  // Plugin Schema
88
88
  export * from './schema/plugin.schema.js';
89
+ export * from './schema/update.schema.js';
89
90
  //# sourceMappingURL=index.js.map
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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=audio.schema.test.d.ts.map
@@ -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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"}
@@ -1,5 +1,5 @@
1
1
  import { describe, expect, it } from 'vitest';
2
- import { PluginMarketCatalogResponseSchema, PluginMarketCatalogSchema, PluginMarketChannelSchema, PluginSourceSchema, } from '../../index.js';
2
+ import { PluginMarketCatalogResponseSchema, PluginMarketCatalogSchema, PluginMarketChannelSchema, PluginPermissionSchema, PluginSourceSchema, } from '../../index.js';
3
3
  describe('plugin market schema', () => {
4
4
  it('accepts a valid stable catalog', () => {
5
5
  const catalog = PluginMarketCatalogSchema.parse({
@@ -49,6 +49,10 @@ describe('plugin market schema', () => {
49
49
  it('rejects unsupported channels', () => {
50
50
  expect(() => PluginMarketChannelSchema.parse('beta')).toThrow();
51
51
  });
52
+ it('accepts host settings permissions', () => {
53
+ expect(PluginPermissionSchema.parse('settings:ft8')).toBe('settings:ft8');
54
+ expect(PluginPermissionSchema.parse('settings:ntp')).toBe('settings:ntp');
55
+ });
52
56
  it('accepts the route response envelope', () => {
53
57
  const response = PluginMarketCatalogResponseSchema.parse({
54
58
  sourceUrl: 'https://tx5dr.oss-cn-hangzhou.aliyuncs.com/tx-5dr/plugins/market/stable/index.json',
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-market.schema.test.js","sourceRoot":"","sources":["../../../src/schema/__tests__/plugin-market.schema.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-market.schema.test.js","sourceRoot":"","sources":["../../../src/schema/__tests__/plugin-market.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;