@tx5dr/contracts 1.7.12 → 2.5.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/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/schema/__tests__/android-operator-audio.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/android-operator-audio.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/android-operator-audio.schema.test.js +27 -0
- package/dist/schema/__tests__/android-operator-audio.schema.test.js.map +1 -0
- package/dist/schema/__tests__/assisted-queue.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/assisted-queue.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/assisted-queue.schema.test.js +114 -0
- package/dist/schema/__tests__/assisted-queue.schema.test.js.map +1 -0
- package/dist/schema/__tests__/audio-sidecar.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/audio-sidecar.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/audio-sidecar.schema.test.js +42 -0
- package/dist/schema/__tests__/audio-sidecar.schema.test.js.map +1 -0
- package/dist/schema/__tests__/audio.schema.test.js +92 -1
- package/dist/schema/__tests__/audio.schema.test.js.map +1 -1
- package/dist/schema/__tests__/diagnostics.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/diagnostics.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/diagnostics.schema.test.js +31 -0
- package/dist/schema/__tests__/diagnostics.schema.test.js.map +1 -0
- package/dist/schema/__tests__/logbook-health.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/logbook-health.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/logbook-health.schema.test.js +104 -0
- package/dist/schema/__tests__/logbook-health.schema.test.js.map +1 -0
- package/dist/schema/__tests__/meter.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/meter.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/meter.schema.test.js +27 -0
- package/dist/schema/__tests__/meter.schema.test.js.map +1 -0
- package/dist/schema/__tests__/observability.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/observability.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/observability.schema.test.js +12 -0
- package/dist/schema/__tests__/observability.schema.test.js.map +1 -0
- package/dist/schema/__tests__/operator-context-report.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/operator-context-report.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/operator-context-report.schema.test.js +70 -0
- package/dist/schema/__tests__/operator-context-report.schema.test.js.map +1 -0
- package/dist/schema/__tests__/operator.schema.test.js +9 -3
- package/dist/schema/__tests__/operator.schema.test.js.map +1 -1
- package/dist/schema/__tests__/plugin-market.schema.test.js +149 -3
- package/dist/schema/__tests__/plugin-market.schema.test.js.map +1 -1
- package/dist/schema/__tests__/qso.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/qso.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/qso.schema.test.js +70 -0
- package/dist/schema/__tests__/qso.schema.test.js.map +1 -0
- package/dist/schema/__tests__/radio-power-support.test.js +15 -0
- package/dist/schema/__tests__/radio-power-support.test.js.map +1 -1
- package/dist/schema/__tests__/radio-profile.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/radio-profile.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/radio-profile.schema.test.js +36 -0
- package/dist/schema/__tests__/radio-profile.schema.test.js.map +1 -0
- package/dist/schema/__tests__/radio.schema.test.js +92 -1
- package/dist/schema/__tests__/radio.schema.test.js.map +1 -1
- package/dist/schema/__tests__/realtime-settings.schema.test.js +2 -1
- package/dist/schema/__tests__/realtime-settings.schema.test.js.map +1 -1
- package/dist/schema/__tests__/remote-access.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/remote-access.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/remote-access.schema.test.js +18 -0
- package/dist/schema/__tests__/remote-access.schema.test.js.map +1 -0
- package/dist/schema/__tests__/spectrum.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/spectrum.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/spectrum.schema.test.js +107 -0
- package/dist/schema/__tests__/spectrum.schema.test.js.map +1 -0
- package/dist/schema/__tests__/strategy-transmission.schema.test.d.ts +2 -0
- package/dist/schema/__tests__/strategy-transmission.schema.test.d.ts.map +1 -0
- package/dist/schema/__tests__/strategy-transmission.schema.test.js +95 -0
- package/dist/schema/__tests__/strategy-transmission.schema.test.js.map +1 -0
- package/dist/schema/android-operator-audio.schema.d.ts +174 -0
- package/dist/schema/android-operator-audio.schema.d.ts.map +1 -0
- package/dist/schema/android-operator-audio.schema.js +38 -0
- package/dist/schema/android-operator-audio.schema.js.map +1 -0
- package/dist/schema/api-response.schema.d.ts +503 -44
- package/dist/schema/api-response.schema.d.ts.map +1 -1
- package/dist/schema/api-response.schema.js +9 -0
- package/dist/schema/api-response.schema.js.map +1 -1
- package/dist/schema/audio-sidecar.schema.d.ts +75 -0
- package/dist/schema/audio-sidecar.schema.d.ts.map +1 -1
- package/dist/schema/audio-sidecar.schema.js +32 -0
- package/dist/schema/audio-sidecar.schema.js.map +1 -1
- package/dist/schema/audio.schema.d.ts +4749 -3
- package/dist/schema/audio.schema.d.ts.map +1 -1
- package/dist/schema/audio.schema.js +101 -2
- package/dist/schema/audio.schema.js.map +1 -1
- package/dist/schema/auth.schema.d.ts +173 -14
- package/dist/schema/auth.schema.d.ts.map +1 -1
- package/dist/schema/auth.schema.js +65 -1
- package/dist/schema/auth.schema.js.map +1 -1
- package/dist/schema/cpu-profile.schema.d.ts +2 -2
- package/dist/schema/cw-decoder.schema.d.ts +74 -74
- package/dist/schema/cw-keyer.schema.d.ts +20 -14
- package/dist/schema/cw-keyer.schema.d.ts.map +1 -1
- package/dist/schema/cw-keyer.schema.js +3 -0
- package/dist/schema/cw-keyer.schema.js.map +1 -1
- package/dist/schema/desktop-https.schema.d.ts +6 -6
- package/dist/schema/device-ui.schema.d.ts +16 -16
- package/dist/schema/diagnostics.schema.d.ts +163 -0
- package/dist/schema/diagnostics.schema.d.ts.map +1 -0
- package/dist/schema/diagnostics.schema.js +46 -0
- package/dist/schema/diagnostics.schema.js.map +1 -0
- package/dist/schema/ft8.schema.d.ts +12 -2
- package/dist/schema/ft8.schema.d.ts.map +1 -1
- package/dist/schema/ft8.schema.js +8 -0
- package/dist/schema/ft8.schema.js.map +1 -1
- package/dist/schema/image-radio.schema.d.ts +2597 -0
- package/dist/schema/image-radio.schema.d.ts.map +1 -0
- package/dist/schema/image-radio.schema.js +283 -0
- package/dist/schema/image-radio.schema.js.map +1 -0
- package/dist/schema/logbook.schema.d.ts +2128 -18
- package/dist/schema/logbook.schema.d.ts.map +1 -1
- package/dist/schema/logbook.schema.js +159 -1
- package/dist/schema/logbook.schema.js.map +1 -1
- package/dist/schema/mode.schema.d.ts +4 -6
- package/dist/schema/mode.schema.d.ts.map +1 -1
- package/dist/schema/mode.schema.js +18 -6
- package/dist/schema/mode.schema.js.map +1 -1
- package/dist/schema/observability.schema.d.ts +66 -0
- package/dist/schema/observability.schema.d.ts.map +1 -0
- package/dist/schema/observability.schema.js +20 -0
- package/dist/schema/observability.schema.js.map +1 -0
- package/dist/schema/openwebrx.schema.d.ts +2 -2
- package/dist/schema/operator.schema.d.ts +2682 -6
- package/dist/schema/operator.schema.d.ts.map +1 -1
- package/dist/schema/operator.schema.js +10 -20
- package/dist/schema/operator.schema.js.map +1 -1
- package/dist/schema/plugin.schema.d.ts +1977 -492
- package/dist/schema/plugin.schema.d.ts.map +1 -1
- package/dist/schema/plugin.schema.js +165 -14
- package/dist/schema/plugin.schema.js.map +1 -1
- package/dist/schema/process-monitor.schema.d.ts +132 -132
- package/dist/schema/pskreporter.schema.d.ts +1 -3
- package/dist/schema/pskreporter.schema.d.ts.map +1 -1
- package/dist/schema/pskreporter.schema.js +1 -3
- package/dist/schema/pskreporter.schema.js.map +1 -1
- package/dist/schema/qso.schema.d.ts +246 -1
- package/dist/schema/qso.schema.d.ts.map +1 -1
- package/dist/schema/qso.schema.js +68 -0
- package/dist/schema/qso.schema.js.map +1 -1
- package/dist/schema/radio-capability.schema.d.ts +31 -40
- package/dist/schema/radio-capability.schema.d.ts.map +1 -1
- package/dist/schema/radio-capability.schema.js +8 -15
- package/dist/schema/radio-capability.schema.js.map +1 -1
- package/dist/schema/radio-power-support.d.ts.map +1 -1
- package/dist/schema/radio-power-support.js +3 -0
- package/dist/schema/radio-power-support.js.map +1 -1
- package/dist/schema/radio-power.schema.d.ts +102 -13
- package/dist/schema/radio-power.schema.d.ts.map +1 -1
- package/dist/schema/radio-power.schema.js +15 -8
- package/dist/schema/radio-power.schema.js.map +1 -1
- package/dist/schema/radio-profile.schema.d.ts +1491 -97
- package/dist/schema/radio-profile.schema.d.ts.map +1 -1
- package/dist/schema/radio-profile.schema.js +7 -0
- package/dist/schema/radio-profile.schema.js.map +1 -1
- package/dist/schema/radio.schema.d.ts +442 -48
- package/dist/schema/radio.schema.d.ts.map +1 -1
- package/dist/schema/radio.schema.js +75 -7
- package/dist/schema/radio.schema.js.map +1 -1
- package/dist/schema/realtime.schema.d.ts +60 -52
- package/dist/schema/realtime.schema.d.ts.map +1 -1
- package/dist/schema/realtime.schema.js +9 -1
- package/dist/schema/realtime.schema.js.map +1 -1
- package/dist/schema/rigctld.schema.d.ts +6 -6
- package/dist/schema/slot-info.schema.d.ts +28 -9
- package/dist/schema/slot-info.schema.d.ts.map +1 -1
- package/dist/schema/slot-info.schema.js +17 -10
- package/dist/schema/slot-info.schema.js.map +1 -1
- package/dist/schema/spectrum-config.schema.d.ts +638 -0
- package/dist/schema/spectrum-config.schema.d.ts.map +1 -0
- package/dist/schema/spectrum-config.schema.js +129 -0
- package/dist/schema/spectrum-config.schema.js.map +1 -0
- package/dist/schema/spectrum.schema.d.ts +1323 -30
- package/dist/schema/spectrum.schema.d.ts.map +1 -1
- package/dist/schema/spectrum.schema.js +72 -0
- package/dist/schema/spectrum.schema.js.map +1 -1
- package/dist/schema/station-info.schema.d.ts +5 -0
- package/dist/schema/station-info.schema.d.ts.map +1 -1
- package/dist/schema/station-info.schema.js +5 -0
- package/dist/schema/station-info.schema.js.map +1 -1
- package/dist/schema/system.schema.d.ts +56 -6
- package/dist/schema/system.schema.d.ts.map +1 -1
- package/dist/schema/system.schema.js +22 -0
- package/dist/schema/system.schema.js.map +1 -1
- package/dist/schema/transmission.schema.d.ts +8 -7
- package/dist/schema/transmission.schema.d.ts.map +1 -1
- package/dist/schema/transmission.schema.js +2 -7
- package/dist/schema/transmission.schema.js.map +1 -1
- package/dist/schema/tx-audio-input.schema.d.ts +8 -0
- package/dist/schema/tx-audio-input.schema.d.ts.map +1 -0
- package/dist/schema/tx-audio-input.schema.js +19 -0
- package/dist/schema/tx-audio-input.schema.js.map +1 -0
- package/dist/schema/voice-keyer.schema.d.ts +16 -16
- package/dist/schema/voice.schema.d.ts +1 -1
- package/dist/schema/voice.schema.d.ts.map +1 -1
- package/dist/schema/voice.schema.js +1 -1
- package/dist/schema/voice.schema.js.map +1 -1
- package/dist/schema/websocket.schema.d.ts +35811 -7829
- package/dist/schema/websocket.schema.d.ts.map +1 -1
- package/dist/schema/websocket.schema.js +453 -9
- package/dist/schema/websocket.schema.js.map +1 -1
- package/package.json +6 -1
- package/src/index.ts +7 -0
- package/src/schema/__tests__/android-operator-audio.schema.test.ts +31 -0
- package/src/schema/__tests__/assisted-queue.schema.test.ts +122 -0
- package/src/schema/__tests__/audio-sidecar.schema.test.ts +48 -0
- package/src/schema/__tests__/audio.schema.test.ts +102 -0
- package/src/schema/__tests__/diagnostics.schema.test.ts +32 -0
- package/src/schema/__tests__/logbook-health.schema.test.ts +117 -0
- package/src/schema/__tests__/meter.schema.test.ts +28 -0
- package/src/schema/__tests__/observability.schema.test.ts +15 -0
- package/src/schema/__tests__/operator-context-report.schema.test.ts +77 -0
- package/src/schema/__tests__/operator.schema.test.ts +11 -3
- package/src/schema/__tests__/plugin-market.schema.test.ts +165 -2
- package/src/schema/__tests__/qso.schema.test.ts +91 -0
- package/src/schema/__tests__/radio-power-support.test.ts +17 -0
- package/src/schema/__tests__/radio-profile.schema.test.ts +44 -0
- package/src/schema/__tests__/radio.schema.test.ts +108 -1
- package/src/schema/__tests__/realtime-settings.schema.test.ts +2 -1
- package/src/schema/__tests__/remote-access.schema.test.ts +22 -0
- package/src/schema/__tests__/spectrum.schema.test.ts +119 -0
- package/src/schema/__tests__/strategy-transmission.schema.test.ts +106 -0
- package/src/schema/android-operator-audio.schema.ts +49 -0
- package/src/schema/api-response.schema.ts +11 -0
- package/src/schema/audio-sidecar.schema.ts +35 -0
- package/src/schema/audio.schema.ts +115 -2
- package/src/schema/auth.schema.ts +79 -1
- package/src/schema/cw-keyer.schema.ts +5 -0
- package/src/schema/diagnostics.schema.ts +55 -0
- package/src/schema/ft8.schema.ts +8 -0
- package/src/schema/image-radio.schema.ts +342 -0
- package/src/schema/logbook.schema.ts +205 -1
- package/src/schema/mode.schema.ts +18 -6
- package/src/schema/observability.schema.ts +26 -0
- package/src/schema/operator.schema.ts +11 -20
- package/src/schema/plugin.schema.ts +186 -15
- package/src/schema/pskreporter.schema.ts +1 -3
- package/src/schema/qso.schema.ts +78 -0
- package/src/schema/radio-capability.schema.ts +8 -15
- package/src/schema/radio-power-support.ts +3 -0
- package/src/schema/radio-power.schema.ts +15 -8
- package/src/schema/radio-profile.schema.ts +7 -0
- package/src/schema/radio.schema.ts +90 -7
- package/src/schema/realtime.schema.ts +9 -1
- package/src/schema/slot-info.schema.ts +18 -11
- package/src/schema/spectrum-config.schema.ts +156 -0
- package/src/schema/spectrum.schema.ts +89 -0
- package/src/schema/station-info.schema.ts +5 -0
- package/src/schema/system.schema.ts +29 -0
- package/src/schema/transmission.schema.ts +2 -7
- package/src/schema/tx-audio-input.schema.ts +22 -0
- package/src/schema/voice.schema.ts +1 -1
- package/src/schema/websocket.schema.ts +601 -13
- package/test/image-radio-schema.test.ts +107 -0
- package/test/plugin-slot-schema.test.ts +31 -0
- package/test/radio-capability-schema.test.ts +44 -0
- package/CLAUDE.md +0 -41
package/dist/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export * from './schema/hello.schema.js';
|
|
|
3
3
|
export * from './schema/audio.schema.js';
|
|
4
4
|
export * from './schema/ft8.schema.js';
|
|
5
5
|
export * from './schema/spectrum.schema.js';
|
|
6
|
+
export * from './schema/spectrum-config.schema.js';
|
|
6
7
|
export * from './schema/websocket.schema.js';
|
|
7
8
|
export * from './schema/mode.schema.js';
|
|
8
9
|
export * from './schema/qso.schema.js';
|
|
@@ -11,7 +12,7 @@ export { SlotPackSchema, FrameMessageSchema, DecodeRequestSchema, DecodeResultSc
|
|
|
11
12
|
export type { SlotPack, FrameMessage, DecodeRequest, DecodeResult, SlotInfo } from './schema/slot-info.schema.js';
|
|
12
13
|
export type { ModeDescriptor } from './schema/mode.schema.js';
|
|
13
14
|
export { WSMessageType } from './schema/websocket.schema.js';
|
|
14
|
-
export type { OperatorStatus, WSGetOperatorsMessage, WSOperatorsListMessage, WSOperatorStatusUpdateMessage, WSSetOperatorContextMessage, WSSetOperatorRuntimeStateMessage, WSSetOperatorRuntimeSlotContentMessage, WSSetOperatorTransmitCyclesMessage, } from './schema/websocket.schema.js';
|
|
15
|
+
export type { OperatorStatus, WSGetOperatorsMessage, WSOperatorsListMessage, WSOperatorStatusUpdateMessage, WSSetOperatorContextMessage, WSSetOperatorRuntimeStateMessage, WSSetOperatorStreamStateMessage, WSSetOperatorRuntimeSlotContentMessage, WSSetOperatorTransmitCyclesMessage, } from './schema/websocket.schema.js';
|
|
15
16
|
export * from './schema/ft8.schema.js';
|
|
16
17
|
export * from './schema/spectrum.schema.js';
|
|
17
18
|
export * from './schema/qso.schema.js';
|
|
@@ -36,6 +37,7 @@ export * from './schema/api-response.schema.js';
|
|
|
36
37
|
export * from './schema/transmission.schema.js';
|
|
37
38
|
export * from './schema/pskreporter.schema.js';
|
|
38
39
|
export * from './schema/radio-profile.schema.js';
|
|
40
|
+
export * from './schema/tx-audio-input.schema.js';
|
|
39
41
|
export * from './schema/ability.js';
|
|
40
42
|
export * from './schema/auth.schema.js';
|
|
41
43
|
export * from './schema/system.schema.js';
|
|
@@ -54,10 +56,14 @@ export * from './schema/radio-capability.schema.js';
|
|
|
54
56
|
export * from './schema/radio-power.schema.js';
|
|
55
57
|
export * from './schema/radio-power-support.js';
|
|
56
58
|
export * from './schema/audio-sidecar.schema.js';
|
|
59
|
+
export * from './schema/image-radio.schema.js';
|
|
57
60
|
export * from './schema/rigctld.schema.js';
|
|
58
61
|
export * from './schema/realtime.schema.js';
|
|
62
|
+
export * from './schema/android-operator-audio.schema.js';
|
|
59
63
|
export * from './schema/desktop-https.schema.js';
|
|
60
64
|
export * from './schema/device-ui.schema.js';
|
|
61
65
|
export * from './schema/plugin.schema.js';
|
|
62
66
|
export * from './schema/update.schema.js';
|
|
67
|
+
export * from './schema/observability.schema.js';
|
|
68
|
+
export * from './schema/diagnostics.schema.js';
|
|
63
69
|
//# 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;
|
|
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,oCAAoC,CAAC;AACnD,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,+BAA+B,EAC/B,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;AACjD,cAAc,mCAAmC,CAAC;AAGlD,cAAc,qBAAqB,CAAC;AAGpC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAG/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAG9C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AAGpC,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;AACjD,cAAc,gCAAgC,CAAC;AAG/C,cAAc,4BAA4B,CAAC;AAG3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2CAA2C,CAAC;AAG1D,cAAc,kCAAkC,CAAC;AAGjD,cAAc,8BAA8B,CAAC;AAG7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -4,6 +4,7 @@ export * from './schema/hello.schema.js';
|
|
|
4
4
|
export * from './schema/audio.schema.js';
|
|
5
5
|
export * from './schema/ft8.schema.js';
|
|
6
6
|
export * from './schema/spectrum.schema.js';
|
|
7
|
+
export * from './schema/spectrum-config.schema.js';
|
|
7
8
|
export * from './schema/websocket.schema.js';
|
|
8
9
|
export * from './schema/mode.schema.js';
|
|
9
10
|
export * from './schema/qso.schema.js';
|
|
@@ -52,6 +53,7 @@ export * from './schema/transmission.schema.js';
|
|
|
52
53
|
export * from './schema/pskreporter.schema.js';
|
|
53
54
|
// Radio Profile Schema
|
|
54
55
|
export * from './schema/radio-profile.schema.js';
|
|
56
|
+
export * from './schema/tx-audio-input.schema.js';
|
|
55
57
|
// Ability Schema (must be before auth.schema which imports from it)
|
|
56
58
|
export * from './schema/ability.js';
|
|
57
59
|
// Auth Schema
|
|
@@ -83,10 +85,12 @@ export * from './schema/radio-power.schema.js';
|
|
|
83
85
|
export * from './schema/radio-power-support.js';
|
|
84
86
|
// Audio Sidecar Schema
|
|
85
87
|
export * from './schema/audio-sidecar.schema.js';
|
|
88
|
+
export * from './schema/image-radio.schema.js';
|
|
86
89
|
// rigctld bridge schema
|
|
87
90
|
export * from './schema/rigctld.schema.js';
|
|
88
91
|
// Realtime Schema
|
|
89
92
|
export * from './schema/realtime.schema.js';
|
|
93
|
+
export * from './schema/android-operator-audio.schema.js';
|
|
90
94
|
// Desktop HTTPS Schema
|
|
91
95
|
export * from './schema/desktop-https.schema.js';
|
|
92
96
|
// Device UI Schema
|
|
@@ -94,4 +98,6 @@ export * from './schema/device-ui.schema.js';
|
|
|
94
98
|
// Plugin Schema
|
|
95
99
|
export * from './schema/plugin.schema.js';
|
|
96
100
|
export * from './schema/update.schema.js';
|
|
101
|
+
export * from './schema/observability.schema.js';
|
|
102
|
+
export * from './schema/diagnostics.schema.js';
|
|
97
103
|
//# 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;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"android-operator-audio.schema.test.d.ts","sourceRoot":"","sources":["../../../src/schema/__tests__/android-operator-audio.schema.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { AndroidOperatorAudioMonitorGainUpdateSchema, AndroidOperatorAudioStatusSchema, } from '../android-operator-audio.schema.js';
|
|
3
|
+
describe('Android operator audio schemas', () => {
|
|
4
|
+
it('accepts native monitor gain telemetry and updates', () => {
|
|
5
|
+
const status = AndroidOperatorAudioStatusSchema.parse({
|
|
6
|
+
available: true,
|
|
7
|
+
captureState: 'idle',
|
|
8
|
+
monitorState: 'playing',
|
|
9
|
+
participantIdentity: 'android-native:operator',
|
|
10
|
+
inputLevel: 0,
|
|
11
|
+
inputPeak: 0,
|
|
12
|
+
inputSilenced: false,
|
|
13
|
+
micGainDb: 18,
|
|
14
|
+
micGainMinDb: -12,
|
|
15
|
+
micGainMaxDb: 24,
|
|
16
|
+
monitorGainDb: -6,
|
|
17
|
+
monitorGainMinDb: -60,
|
|
18
|
+
monitorGainMaxDb: 20,
|
|
19
|
+
micDevice: null,
|
|
20
|
+
speakerDevice: null,
|
|
21
|
+
lastError: null,
|
|
22
|
+
});
|
|
23
|
+
expect(status.monitorGainDb).toBe(-6);
|
|
24
|
+
expect(AndroidOperatorAudioMonitorGainUpdateSchema.parse({ monitorGainDb: 3 }).monitorGainDb).toBe(3);
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
//# sourceMappingURL=android-operator-audio.schema.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"android-operator-audio.schema.test.js","sourceRoot":"","sources":["../../../src/schema/__tests__/android-operator-audio.schema.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,2CAA2C,EAC3C,gCAAgC,GACjC,MAAM,qCAAqC,CAAC;AAE7C,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,MAAM,GAAG,gCAAgC,CAAC,KAAK,CAAC;YACpD,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,MAAM;YACpB,YAAY,EAAE,SAAS;YACvB,mBAAmB,EAAE,yBAAyB;YAC9C,UAAU,EAAE,CAAC;YACb,SAAS,EAAE,CAAC;YACZ,aAAa,EAAE,KAAK;YACpB,SAAS,EAAE,EAAE;YACb,YAAY,EAAE,CAAC,EAAE;YACjB,YAAY,EAAE,EAAE;YAChB,aAAa,EAAE,CAAC,CAAC;YACjB,gBAAgB,EAAE,CAAC,EAAE;YACrB,gBAAgB,EAAE,EAAE;YACpB,SAAS,EAAE,IAAI;YACf,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,2CAA2C,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assisted-queue.schema.test.d.ts","sourceRoot":"","sources":["../../../src/schema/__tests__/assisted-queue.schema.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { AssistedQueueSnapshotSchema, PluginManifestSchema, WSMessageSchema, WSMessageType, } from '../../index.js';
|
|
3
|
+
describe('assisted queue contracts', () => {
|
|
4
|
+
it('accepts the compact UI projection and rejects internal queue details', () => {
|
|
5
|
+
const snapshot = {
|
|
6
|
+
version: 4,
|
|
7
|
+
activeEntryId: 'queue-1',
|
|
8
|
+
rows: [{
|
|
9
|
+
entryId: 'queue-1',
|
|
10
|
+
callsign: 'JA1AAA',
|
|
11
|
+
order: 0,
|
|
12
|
+
draggable: false,
|
|
13
|
+
displayState: 'engaged',
|
|
14
|
+
tone: 'success',
|
|
15
|
+
icon: 'check-circle',
|
|
16
|
+
}, {
|
|
17
|
+
entryId: 'queue-2',
|
|
18
|
+
callsign: 'JA2BBB',
|
|
19
|
+
order: 1,
|
|
20
|
+
draggable: true,
|
|
21
|
+
displayState: 'paused',
|
|
22
|
+
tone: 'neutral',
|
|
23
|
+
icon: 'pause',
|
|
24
|
+
pauseReason: 'stale',
|
|
25
|
+
targetGrid: 'PM95',
|
|
26
|
+
lastSnr: -12,
|
|
27
|
+
lastHeardCyclesAgo: 6,
|
|
28
|
+
lastHeardCycle: 1,
|
|
29
|
+
}],
|
|
30
|
+
};
|
|
31
|
+
expect(AssistedQueueSnapshotSchema.parse(snapshot)).toEqual(snapshot);
|
|
32
|
+
expect(AssistedQueueSnapshotSchema.strict().safeParse({
|
|
33
|
+
...snapshot,
|
|
34
|
+
evidence: { raw: 'BG5DRB JA1AAA -08' },
|
|
35
|
+
}).success).toBe(false);
|
|
36
|
+
});
|
|
37
|
+
it('carries the optional targetQueue strategy capability through manifests', () => {
|
|
38
|
+
expect(PluginManifestSchema.parse({
|
|
39
|
+
apiVersion: 2,
|
|
40
|
+
name: 'assisted-qso-queue',
|
|
41
|
+
version: '1.0.0',
|
|
42
|
+
type: 'strategy',
|
|
43
|
+
strategyFeatures: { targetQueue: 1 },
|
|
44
|
+
}).strategyFeatures).toEqual({ targetQueue: 1 });
|
|
45
|
+
});
|
|
46
|
+
it('validates enqueue, reorder, retry, remove, and clear WebSocket commands', () => {
|
|
47
|
+
const commands = [
|
|
48
|
+
{
|
|
49
|
+
type: WSMessageType.OPERATOR_QUEUE_ENQUEUE,
|
|
50
|
+
timestamp: new Date(0).toISOString(),
|
|
51
|
+
data: {
|
|
52
|
+
operatorId: 'operator-1',
|
|
53
|
+
callsign: 'JA1AAA',
|
|
54
|
+
startIfIdle: true,
|
|
55
|
+
selectedFrame: {
|
|
56
|
+
message: 'CQ JA1AAA PM95',
|
|
57
|
+
snr: -10,
|
|
58
|
+
dt: 0.1,
|
|
59
|
+
freq: 1500,
|
|
60
|
+
slotStartMs: 15_000,
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
type: WSMessageType.OPERATOR_QUEUE_REORDER,
|
|
66
|
+
timestamp: new Date(0).toISOString(),
|
|
67
|
+
data: {
|
|
68
|
+
operatorId: 'operator-1',
|
|
69
|
+
entryId: 'queue-2',
|
|
70
|
+
beforeEntryId: 'queue-1',
|
|
71
|
+
expectedVersion: 3,
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
type: WSMessageType.OPERATOR_QUEUE_RETRY,
|
|
76
|
+
timestamp: new Date(0).toISOString(),
|
|
77
|
+
data: {
|
|
78
|
+
operatorId: 'operator-1',
|
|
79
|
+
entryId: 'queue-2',
|
|
80
|
+
expectedVersion: 4,
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
type: WSMessageType.OPERATOR_QUEUE_REMOVE,
|
|
85
|
+
timestamp: new Date(0).toISOString(),
|
|
86
|
+
data: {
|
|
87
|
+
operatorId: 'operator-1',
|
|
88
|
+
entryId: 'queue-2',
|
|
89
|
+
expectedVersion: 5,
|
|
90
|
+
},
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
type: WSMessageType.OPERATOR_QUEUE_CLEAR,
|
|
94
|
+
timestamp: new Date(0).toISOString(),
|
|
95
|
+
data: {
|
|
96
|
+
operatorId: 'operator-1',
|
|
97
|
+
expectedVersion: 6,
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
];
|
|
101
|
+
for (const command of commands) {
|
|
102
|
+
expect(WSMessageSchema.safeParse(command).success).toBe(true);
|
|
103
|
+
}
|
|
104
|
+
expect(WSMessageSchema.safeParse({
|
|
105
|
+
...commands[1],
|
|
106
|
+
data: { ...commands[1].data, expectedVersion: -1 },
|
|
107
|
+
}).success).toBe(false);
|
|
108
|
+
expect(WSMessageSchema.safeParse({
|
|
109
|
+
...commands[0],
|
|
110
|
+
data: { ...commands[0].data, startIfIdle: 'yes' },
|
|
111
|
+
}).success).toBe(false);
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
//# sourceMappingURL=assisted-queue.schema.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assisted-queue.schema.test.js","sourceRoot":"","sources":["../../../src/schema/__tests__/assisted-queue.schema.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audio-sidecar.schema.test.d.ts","sourceRoot":"","sources":["../../../src/schema/__tests__/audio-sidecar.schema.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { AudioSidecarStatus, AudioSidecarStatusPayloadSchema, } from '../audio-sidecar.schema.js';
|
|
3
|
+
describe('AudioSidecarStatusPayloadSchema', () => {
|
|
4
|
+
it('accepts legacy status payloads without diagnostics fields', () => {
|
|
5
|
+
const parsed = AudioSidecarStatusPayloadSchema.parse({
|
|
6
|
+
status: AudioSidecarStatus.RETRYING,
|
|
7
|
+
isConnected: false,
|
|
8
|
+
retryAttempt: 2,
|
|
9
|
+
nextRetryMs: 4000,
|
|
10
|
+
longRunning: false,
|
|
11
|
+
lastError: { message: 'device unavailable' },
|
|
12
|
+
deviceName: 'USB Audio CODEC',
|
|
13
|
+
});
|
|
14
|
+
expect(parsed.classification).toBeUndefined();
|
|
15
|
+
});
|
|
16
|
+
it('accepts runtime diagnostics and fallback details', () => {
|
|
17
|
+
const parsed = AudioSidecarStatusPayloadSchema.parse({
|
|
18
|
+
status: AudioSidecarStatus.RETRYING,
|
|
19
|
+
isConnected: false,
|
|
20
|
+
retryAttempt: 1,
|
|
21
|
+
nextRetryMs: 2000,
|
|
22
|
+
longRunning: false,
|
|
23
|
+
lastError: { message: 'RtApiCore: the stream device was disconnected (and closed)!' },
|
|
24
|
+
deviceName: 'C-Media Electronics Inc.: USB Audio Device',
|
|
25
|
+
phase: 'runtime',
|
|
26
|
+
classification: 'sample-rate-fallback',
|
|
27
|
+
affectedDeviceName: 'C-Media Electronics Inc.: USB Audio Device',
|
|
28
|
+
sampleRate: 44100,
|
|
29
|
+
fallback: {
|
|
30
|
+
active: true,
|
|
31
|
+
fromSampleRate: 48000,
|
|
32
|
+
toSampleRate: 44100,
|
|
33
|
+
persisted: false,
|
|
34
|
+
reason: 'early-rtaudio-runtime-loss',
|
|
35
|
+
},
|
|
36
|
+
retryReason: 'retrying at 44.1 kHz',
|
|
37
|
+
});
|
|
38
|
+
expect(parsed.fallback?.toSampleRate).toBe(44100);
|
|
39
|
+
expect(parsed.classification).toBe('sample-rate-fallback');
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=audio-sidecar.schema.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audio-sidecar.schema.test.js","sourceRoot":"","sources":["../../../src/schema/__tests__/audio-sidecar.schema.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,kBAAkB,EAClB,+BAA+B,GAChC,MAAM,4BAA4B,CAAC;AAEpC,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,MAAM,GAAG,+BAA+B,CAAC,KAAK,CAAC;YACnD,MAAM,EAAE,kBAAkB,CAAC,QAAQ;YACnC,WAAW,EAAE,KAAK;YAClB,YAAY,EAAE,CAAC;YACf,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,KAAK;YAClB,SAAS,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;YAC5C,UAAU,EAAE,iBAAiB;SAC9B,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,aAAa,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,MAAM,GAAG,+BAA+B,CAAC,KAAK,CAAC;YACnD,MAAM,EAAE,kBAAkB,CAAC,QAAQ;YACnC,WAAW,EAAE,KAAK;YAClB,YAAY,EAAE,CAAC;YACf,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,KAAK;YAClB,SAAS,EAAE,EAAE,OAAO,EAAE,6DAA6D,EAAE;YACrF,UAAU,EAAE,4CAA4C;YACxD,KAAK,EAAE,SAAS;YAChB,cAAc,EAAE,sBAAsB;YACtC,kBAAkB,EAAE,4CAA4C;YAChE,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE;gBACR,MAAM,EAAE,IAAI;gBACZ,cAAc,EAAE,KAAK;gBACrB,YAAY,EAAE,KAAK;gBACnB,SAAS,EAAE,KAAK;gBAChB,MAAM,EAAE,4BAA4B;aACrC;YACD,WAAW,EAAE,sBAAsB;SACpC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { AudioDevicesResponseSchema, AudioDeviceResolutionSchema, AudioDeviceResolutionStatusSchema, AudioDeviceSettingsSchema, AudioDeviceSettingsResponseSchema, AudioOutputChannelModeSchema, AudioOutputSampleFormatSchema, AudioSettingsResolveResponseSchema, } from '../audio.schema.js';
|
|
2
|
+
import { AudioDevicesResponseSchema, AudioDeviceSchema, AudioDeviceResolutionSchema, AudioDeviceResolutionStatusSchema, AudioDeviceSettingsSchema, AudioDeviceSettingsResponseSchema, AudioOutputChannelModeSchema, AudioOutputSampleFormatSchema, AudioSettingsResolveRequestSchema, AudioSettingsResolveResponseSchema, } from '../audio.schema.js';
|
|
3
3
|
const device = {
|
|
4
4
|
id: 'input-1',
|
|
5
5
|
name: 'USB Audio',
|
|
@@ -13,6 +13,55 @@ const device = {
|
|
|
13
13
|
lastSeenAt: 1_700_000_000_000,
|
|
14
14
|
};
|
|
15
15
|
describe('audio device resolution schemas', () => {
|
|
16
|
+
it('accepts Android route identity, health, and fixed audio capabilities', () => {
|
|
17
|
+
const parsed = AudioDeviceSchema.parse({
|
|
18
|
+
...device,
|
|
19
|
+
backend: 'android',
|
|
20
|
+
kind: 'wired-headset',
|
|
21
|
+
routeKey: 'android:wired-headset:input',
|
|
22
|
+
transport: 'analog',
|
|
23
|
+
connector: '3.5mm',
|
|
24
|
+
clientConnected: true,
|
|
25
|
+
routeVerified: true,
|
|
26
|
+
routeState: 'verified',
|
|
27
|
+
capabilities: {
|
|
28
|
+
sampleRates: [48000],
|
|
29
|
+
bufferSizes: [960],
|
|
30
|
+
channelCounts: [1],
|
|
31
|
+
sampleFormats: ['int16'],
|
|
32
|
+
channelModes: ['mono'],
|
|
33
|
+
sampleRateConfigurable: false,
|
|
34
|
+
bufferSizeConfigurable: false,
|
|
35
|
+
sampleFormatConfigurable: false,
|
|
36
|
+
channelModeConfigurable: false,
|
|
37
|
+
outputRouteAck: true,
|
|
38
|
+
fixedSampleRate: 48000,
|
|
39
|
+
fixedBufferSize: 960,
|
|
40
|
+
fixedChannelCount: 1,
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
expect(parsed.routeKey).toBe('android:wired-headset:input');
|
|
44
|
+
expect(parsed.capabilities?.fixedChannelCount).toBe(1);
|
|
45
|
+
expect(parsed.capabilities?.outputRouteAck).toBe(true);
|
|
46
|
+
});
|
|
47
|
+
it('accepts route loss diagnostics without treating routeVerified as required', () => {
|
|
48
|
+
expect(AudioDeviceSchema.parse({
|
|
49
|
+
...device,
|
|
50
|
+
backend: 'android',
|
|
51
|
+
routeState: 'lost',
|
|
52
|
+
routeVerified: false,
|
|
53
|
+
failureReason: 'The headset was unplugged',
|
|
54
|
+
})).toMatchObject({
|
|
55
|
+
routeState: 'lost',
|
|
56
|
+
routeVerified: false,
|
|
57
|
+
});
|
|
58
|
+
expect(AudioDeviceSchema.parse({
|
|
59
|
+
...device,
|
|
60
|
+
backend: 'android',
|
|
61
|
+
routeState: 'idle',
|
|
62
|
+
routeVerified: false,
|
|
63
|
+
}).failureReason).toBeUndefined();
|
|
64
|
+
});
|
|
16
65
|
it('accepts every resolution status', () => {
|
|
17
66
|
for (const status of ['selected', 'default', 'virtual-selected', 'missing']) {
|
|
18
67
|
expect(AudioDeviceResolutionStatusSchema.parse(status)).toBe(status);
|
|
@@ -105,6 +154,25 @@ describe('audio device resolution schemas', () => {
|
|
|
105
154
|
},
|
|
106
155
|
}).currentSettings.outputBufferSize).toBe(1024);
|
|
107
156
|
});
|
|
157
|
+
it('keeps stable route keys alongside legacy display names', () => {
|
|
158
|
+
const parsed = AudioDeviceSettingsSchema.parse({
|
|
159
|
+
inputDeviceName: 'Headset microphone',
|
|
160
|
+
inputRouteKey: 'android:wired-headset:input',
|
|
161
|
+
outputDeviceName: 'Headset headphones',
|
|
162
|
+
outputRouteKey: 'android:wired-headset:output',
|
|
163
|
+
});
|
|
164
|
+
expect(parsed).toMatchObject({
|
|
165
|
+
inputDeviceName: 'Headset microphone',
|
|
166
|
+
inputRouteKey: 'android:wired-headset:input',
|
|
167
|
+
outputDeviceName: 'Headset headphones',
|
|
168
|
+
outputRouteKey: 'android:wired-headset:output',
|
|
169
|
+
});
|
|
170
|
+
expect(AudioDeviceSettingsSchema.parse({ inputDeviceName: 'Legacy USB Audio' })).toEqual({
|
|
171
|
+
inputDeviceName: 'Legacy USB Audio',
|
|
172
|
+
});
|
|
173
|
+
expect(AudioDeviceSettingsSchema.parse({ inputRouteKey: null })).toEqual({ inputRouteKey: null });
|
|
174
|
+
expect(() => AudioDeviceSettingsSchema.parse({ inputRouteKey: '' })).toThrow();
|
|
175
|
+
});
|
|
108
176
|
it('accepts and validates output diagnostic audio settings', () => {
|
|
109
177
|
expect(AudioOutputSampleFormatSchema.parse('int16')).toBe('int16');
|
|
110
178
|
expect(AudioOutputChannelModeSchema.parse('both')).toBe('both');
|
|
@@ -118,6 +186,19 @@ describe('audio device resolution schemas', () => {
|
|
|
118
186
|
expect(() => AudioDeviceSettingsSchema.parse({ outputSampleFormat: 'int24' })).toThrow();
|
|
119
187
|
expect(() => AudioDeviceSettingsSchema.parse({ outputChannelMode: 'stereo' })).toThrow();
|
|
120
188
|
});
|
|
189
|
+
it('accepts Icom USB IF input signal type and center frequency', () => {
|
|
190
|
+
expect(AudioDeviceSettingsSchema.parse({
|
|
191
|
+
inputSignalType: 'icom-12k-if',
|
|
192
|
+
ifCenterHz: 12000,
|
|
193
|
+
})).toMatchObject({
|
|
194
|
+
inputSignalType: 'icom-12k-if',
|
|
195
|
+
ifCenterHz: 12000,
|
|
196
|
+
});
|
|
197
|
+
expect(AudioDeviceSettingsSchema.parse({ inputSignalType: 'af' }).inputSignalType).toBe('af');
|
|
198
|
+
expect(() => AudioDeviceSettingsSchema.parse({ inputSignalType: 'wlan-if' })).toThrow();
|
|
199
|
+
expect(() => AudioDeviceSettingsSchema.parse({ ifCenterHz: 0 })).toThrow();
|
|
200
|
+
expect(() => AudioDeviceSettingsSchema.parse({ ifCenterHz: 25000 })).toThrow();
|
|
201
|
+
});
|
|
121
202
|
it('accepts resolve responses with every supported status', () => {
|
|
122
203
|
for (const status of ['selected', 'default', 'virtual-selected', 'missing']) {
|
|
123
204
|
expect(AudioSettingsResolveResponseSchema.parse({
|
|
@@ -139,5 +220,15 @@ describe('audio device resolution schemas', () => {
|
|
|
139
220
|
}).deviceResolution.input.status).toBe(status);
|
|
140
221
|
}
|
|
141
222
|
});
|
|
223
|
+
it('accepts TCI as a radio-audio resolution request context', () => {
|
|
224
|
+
const parsed = AudioSettingsResolveRequestSchema.parse({
|
|
225
|
+
radioType: 'tci',
|
|
226
|
+
audio: {
|
|
227
|
+
inputDeviceName: 'TCI Audio',
|
|
228
|
+
outputDeviceName: 'TCI Audio',
|
|
229
|
+
},
|
|
230
|
+
});
|
|
231
|
+
expect(parsed.radioType).toBe('tci');
|
|
232
|
+
});
|
|
142
233
|
});
|
|
143
234
|
//# sourceMappingURL=audio.schema.test.js.map
|
|
@@ -1 +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
|
+
{"version":3,"file":"audio.schema.test.js","sourceRoot":"","sources":["../../../src/schema/__tests__/audio.schema.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diagnostics.schema.test.d.ts","sourceRoot":"","sources":["../../../src/schema/__tests__/diagnostics.schema.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { CreateDiagnosticUploadRequestSchema } from '../diagnostics.schema.js';
|
|
3
|
+
describe('diagnostic upload request schema', () => {
|
|
4
|
+
it('accepts one supported source and a bounded range', () => {
|
|
5
|
+
expect(CreateDiagnosticUploadRequestSchema.parse({
|
|
6
|
+
sourceId: 'server',
|
|
7
|
+
fromMs: 1_777_000_000_000,
|
|
8
|
+
toMs: 1_777_003_600_000,
|
|
9
|
+
feedback: ' Radio stopped ',
|
|
10
|
+
})).toMatchObject({ sourceId: 'server', feedback: 'Radio stopped' });
|
|
11
|
+
});
|
|
12
|
+
it('rejects arbitrary sources, oversized feedback, and ranges over seven days', () => {
|
|
13
|
+
expect(() => CreateDiagnosticUploadRequestSchema.parse({
|
|
14
|
+
sourceId: '/tmp/arbitrary.log',
|
|
15
|
+
fromMs: 1_777_000_000_000,
|
|
16
|
+
toMs: 1_777_003_600_000,
|
|
17
|
+
})).toThrow();
|
|
18
|
+
expect(() => CreateDiagnosticUploadRequestSchema.parse({
|
|
19
|
+
sourceId: 'server',
|
|
20
|
+
fromMs: 1_777_000_000_000,
|
|
21
|
+
toMs: 1_777_000_000_000 + (8 * 24 * 60 * 60 * 1000),
|
|
22
|
+
})).toThrow();
|
|
23
|
+
expect(() => CreateDiagnosticUploadRequestSchema.parse({
|
|
24
|
+
sourceId: 'server',
|
|
25
|
+
fromMs: 1_777_000_000_000,
|
|
26
|
+
toMs: 1_777_003_600_000,
|
|
27
|
+
feedback: 'x'.repeat(2001),
|
|
28
|
+
})).toThrow();
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
//# sourceMappingURL=diagnostics.schema.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diagnostics.schema.test.js","sourceRoot":"","sources":["../../../src/schema/__tests__/diagnostics.schema.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mCAAmC,EAAE,MAAM,0BAA0B,CAAC;AAE/E,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,mCAAmC,CAAC,KAAK,CAAC;YAC/C,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,iBAAiB;YACzB,IAAI,EAAE,iBAAiB;YACvB,QAAQ,EAAE,mBAAmB;SAC9B,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2EAA2E,EAAE,GAAG,EAAE;QACnF,MAAM,CAAC,GAAG,EAAE,CAAC,mCAAmC,CAAC,KAAK,CAAC;YACrD,QAAQ,EAAE,oBAAoB;YAC9B,MAAM,EAAE,iBAAiB;YACzB,IAAI,EAAE,iBAAiB;SACxB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACd,MAAM,CAAC,GAAG,EAAE,CAAC,mCAAmC,CAAC,KAAK,CAAC;YACrD,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,iBAAiB;YACzB,IAAI,EAAE,iBAAiB,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;SACpD,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACd,MAAM,CAAC,GAAG,EAAE,CAAC,mCAAmC,CAAC,KAAK,CAAC;YACrD,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,iBAAiB;YACzB,IAAI,EAAE,iBAAiB;YACvB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logbook-health.schema.test.d.ts","sourceRoot":"","sources":["../../../src/schema/__tests__/logbook-health.schema.test.ts"],"names":[],"mappings":""}
|