@groovenet/contracts 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.d.ts CHANGED
@@ -5,4 +5,5 @@ export * from "./albums.js";
5
5
  export * from "./friends.js";
6
6
  export * from "./recordCare.js";
7
7
  export * from "./spins.js";
8
+ export * from "./players.js";
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
package/build/index.js CHANGED
@@ -5,4 +5,5 @@ export * from "./albums.js";
5
5
  export * from "./friends.js";
6
6
  export * from "./recordCare.js";
7
7
  export * from "./spins.js";
8
+ export * from "./players.js";
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
@@ -0,0 +1,741 @@
1
+ import { z } from "zod";
2
+ export declare const playerIdSchema: z.ZodString;
3
+ export declare const playerTrackRefSchema: z.ZodObject<{
4
+ track_id: z.ZodString;
5
+ friend_id: z.ZodNumber;
6
+ }, z.core.$strict>;
7
+ export declare const serverQueueEntrySchema: z.ZodObject<{
8
+ track_id: z.ZodString;
9
+ friend_id: z.ZodNumber;
10
+ id: z.ZodUUID;
11
+ title: z.ZodString;
12
+ artist: z.ZodString;
13
+ }, z.core.$strict>;
14
+ export declare const serverPlayerStateSchema: z.ZodObject<{
15
+ queue: z.ZodArray<z.ZodObject<{
16
+ track_id: z.ZodString;
17
+ friend_id: z.ZodNumber;
18
+ id: z.ZodUUID;
19
+ title: z.ZodString;
20
+ artist: z.ZodString;
21
+ }, z.core.$strict>>;
22
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
23
+ status: z.ZodEnum<{
24
+ ended: "ended";
25
+ error: "error";
26
+ loading: "loading";
27
+ paused: "paused";
28
+ playing: "playing";
29
+ stopped: "stopped";
30
+ }>;
31
+ position: z.ZodNumber;
32
+ duration: z.ZodNullable<z.ZodNumber>;
33
+ volume: z.ZodNumber;
34
+ desired_output: z.ZodNullable<z.ZodString>;
35
+ checkpoint: z.ZodBoolean;
36
+ error: z.ZodNullable<z.ZodObject<{
37
+ code: z.ZodString;
38
+ message: z.ZodString;
39
+ }, z.core.$strip>>;
40
+ }, z.core.$strict>;
41
+ export declare const serverPlayerSchema: z.ZodObject<{
42
+ id: z.ZodString;
43
+ name: z.ZodString;
44
+ engine_id: z.ZodString;
45
+ revision: z.ZodNumber;
46
+ assigned_output: z.ZodNullable<z.ZodString>;
47
+ state: z.ZodObject<{
48
+ queue: z.ZodArray<z.ZodObject<{
49
+ track_id: z.ZodString;
50
+ friend_id: z.ZodNumber;
51
+ id: z.ZodUUID;
52
+ title: z.ZodString;
53
+ artist: z.ZodString;
54
+ }, z.core.$strict>>;
55
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
56
+ status: z.ZodEnum<{
57
+ ended: "ended";
58
+ error: "error";
59
+ loading: "loading";
60
+ paused: "paused";
61
+ playing: "playing";
62
+ stopped: "stopped";
63
+ }>;
64
+ position: z.ZodNumber;
65
+ duration: z.ZodNullable<z.ZodNumber>;
66
+ volume: z.ZodNumber;
67
+ desired_output: z.ZodNullable<z.ZodString>;
68
+ checkpoint: z.ZodBoolean;
69
+ error: z.ZodNullable<z.ZodObject<{
70
+ code: z.ZodString;
71
+ message: z.ZodString;
72
+ }, z.core.$strip>>;
73
+ }, z.core.$strict>;
74
+ }, z.core.$strict>;
75
+ export declare const createServerPlayerSchema: z.ZodObject<{
76
+ id: z.ZodString;
77
+ name: z.ZodString;
78
+ engine_id: z.ZodString;
79
+ }, z.core.$strict>;
80
+ export declare const serverPlayerCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
81
+ expected_revision: z.ZodNumber;
82
+ type: z.ZodLiteral<"rename">;
83
+ name: z.ZodString;
84
+ }, z.core.$strict>, z.ZodObject<{
85
+ expected_revision: z.ZodNumber;
86
+ type: z.ZodLiteral<"queue.add">;
87
+ tracks: z.ZodArray<z.ZodObject<{
88
+ track_id: z.ZodString;
89
+ friend_id: z.ZodNumber;
90
+ }, z.core.$strict>>;
91
+ at: z.ZodOptional<z.ZodNumber>;
92
+ }, z.core.$strict>, z.ZodObject<{
93
+ expected_revision: z.ZodNumber;
94
+ type: z.ZodLiteral<"queue.remove">;
95
+ entry_id: z.ZodUUID;
96
+ }, z.core.$strict>, z.ZodObject<{
97
+ expected_revision: z.ZodNumber;
98
+ type: z.ZodLiteral<"queue.move">;
99
+ entry_id: z.ZodUUID;
100
+ to: z.ZodNumber;
101
+ }, z.core.$strict>, z.ZodObject<{
102
+ expected_revision: z.ZodNumber;
103
+ type: z.ZodLiteral<"queue.clear">;
104
+ }, z.core.$strict>, z.ZodObject<{
105
+ expected_revision: z.ZodNumber;
106
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
107
+ takeover: z.ZodDefault<z.ZodBoolean>;
108
+ type: z.ZodLiteral<"play">;
109
+ entry_id: z.ZodOptional<z.ZodUUID>;
110
+ }, z.core.$strict>, z.ZodObject<{
111
+ expected_revision: z.ZodNumber;
112
+ type: z.ZodLiteral<"pause">;
113
+ }, z.core.$strict>, z.ZodObject<{
114
+ expected_revision: z.ZodNumber;
115
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
116
+ takeover: z.ZodDefault<z.ZodBoolean>;
117
+ type: z.ZodLiteral<"resume">;
118
+ }, z.core.$strict>, z.ZodObject<{
119
+ expected_revision: z.ZodNumber;
120
+ type: z.ZodLiteral<"stop">;
121
+ }, z.core.$strict>, z.ZodObject<{
122
+ expected_revision: z.ZodNumber;
123
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
124
+ takeover: z.ZodDefault<z.ZodBoolean>;
125
+ type: z.ZodLiteral<"next">;
126
+ }, z.core.$strict>, z.ZodObject<{
127
+ expected_revision: z.ZodNumber;
128
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
129
+ takeover: z.ZodDefault<z.ZodBoolean>;
130
+ type: z.ZodLiteral<"previous">;
131
+ }, z.core.$strict>, z.ZodObject<{
132
+ expected_revision: z.ZodNumber;
133
+ type: z.ZodLiteral<"seek">;
134
+ seconds: z.ZodNumber;
135
+ }, z.core.$strict>, z.ZodObject<{
136
+ expected_revision: z.ZodNumber;
137
+ type: z.ZodLiteral<"volume">;
138
+ volume: z.ZodNumber;
139
+ }, z.core.$strict>, z.ZodObject<{
140
+ expected_revision: z.ZodNumber;
141
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
142
+ takeover: z.ZodDefault<z.ZodBoolean>;
143
+ type: z.ZodLiteral<"output.select">;
144
+ output_id: z.ZodString;
145
+ }, z.core.$strict>, z.ZodObject<{
146
+ expected_revision: z.ZodNumber;
147
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
148
+ takeover: z.ZodDefault<z.ZodBoolean>;
149
+ type: z.ZodLiteral<"output.transfer">;
150
+ from_player_id: z.ZodString;
151
+ from_revision: z.ZodNumber;
152
+ output_id: z.ZodString;
153
+ play: z.ZodDefault<z.ZodBoolean>;
154
+ }, z.core.$strict>], "type">;
155
+ export declare const speakerObservationSchema: z.ZodObject<{
156
+ availability: z.ZodEnum<{
157
+ idle: "idle";
158
+ occupied: "occupied";
159
+ unknown: "unknown";
160
+ }>;
161
+ observed_at: z.ZodNullable<z.ZodString>;
162
+ source: z.ZodEnum<{
163
+ home_assistant: "home_assistant";
164
+ unconfigured: "unconfigured";
165
+ }>;
166
+ sender_identity: z.ZodLiteral<"unknown">;
167
+ }, z.core.$strip>;
168
+ export declare const serverPlayerDeviceSchema: z.ZodObject<{
169
+ id: z.ZodString;
170
+ name: z.ZodString;
171
+ description: z.ZodOptional<z.ZodString>;
172
+ assigned_player_id: z.ZodNullable<z.ZodString>;
173
+ desired_by: z.ZodArray<z.ZodString>;
174
+ observed: z.ZodObject<{
175
+ availability: z.ZodEnum<{
176
+ idle: "idle";
177
+ occupied: "occupied";
178
+ unknown: "unknown";
179
+ }>;
180
+ observed_at: z.ZodNullable<z.ZodString>;
181
+ source: z.ZodEnum<{
182
+ home_assistant: "home_assistant";
183
+ unconfigured: "unconfigured";
184
+ }>;
185
+ sender_identity: z.ZodLiteral<"unknown">;
186
+ }, z.core.$strip>;
187
+ }, z.core.$strip>;
188
+ export declare const serverPlayerCommandResultSchema: z.ZodObject<{
189
+ player: z.ZodObject<{
190
+ id: z.ZodString;
191
+ name: z.ZodString;
192
+ engine_id: z.ZodString;
193
+ revision: z.ZodNumber;
194
+ assigned_output: z.ZodNullable<z.ZodString>;
195
+ state: z.ZodObject<{
196
+ queue: z.ZodArray<z.ZodObject<{
197
+ track_id: z.ZodString;
198
+ friend_id: z.ZodNumber;
199
+ id: z.ZodUUID;
200
+ title: z.ZodString;
201
+ artist: z.ZodString;
202
+ }, z.core.$strict>>;
203
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
204
+ status: z.ZodEnum<{
205
+ ended: "ended";
206
+ error: "error";
207
+ loading: "loading";
208
+ paused: "paused";
209
+ playing: "playing";
210
+ stopped: "stopped";
211
+ }>;
212
+ position: z.ZodNumber;
213
+ duration: z.ZodNullable<z.ZodNumber>;
214
+ volume: z.ZodNumber;
215
+ desired_output: z.ZodNullable<z.ZodString>;
216
+ checkpoint: z.ZodBoolean;
217
+ error: z.ZodNullable<z.ZodObject<{
218
+ code: z.ZodString;
219
+ message: z.ZodString;
220
+ }, z.core.$strip>>;
221
+ }, z.core.$strict>;
222
+ }, z.core.$strict>;
223
+ transfer: z.ZodOptional<z.ZodObject<{
224
+ from_player: z.ZodObject<{
225
+ id: z.ZodString;
226
+ name: z.ZodString;
227
+ engine_id: z.ZodString;
228
+ revision: z.ZodNumber;
229
+ assigned_output: z.ZodNullable<z.ZodString>;
230
+ state: z.ZodObject<{
231
+ queue: z.ZodArray<z.ZodObject<{
232
+ track_id: z.ZodString;
233
+ friend_id: z.ZodNumber;
234
+ id: z.ZodUUID;
235
+ title: z.ZodString;
236
+ artist: z.ZodString;
237
+ }, z.core.$strict>>;
238
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
239
+ status: z.ZodEnum<{
240
+ ended: "ended";
241
+ error: "error";
242
+ loading: "loading";
243
+ paused: "paused";
244
+ playing: "playing";
245
+ stopped: "stopped";
246
+ }>;
247
+ position: z.ZodNumber;
248
+ duration: z.ZodNullable<z.ZodNumber>;
249
+ volume: z.ZodNumber;
250
+ desired_output: z.ZodNullable<z.ZodString>;
251
+ checkpoint: z.ZodBoolean;
252
+ error: z.ZodNullable<z.ZodObject<{
253
+ code: z.ZodString;
254
+ message: z.ZodString;
255
+ }, z.core.$strip>>;
256
+ }, z.core.$strict>;
257
+ }, z.core.$strict>;
258
+ detached: z.ZodBoolean;
259
+ attached: z.ZodBoolean;
260
+ error: z.ZodNullable<z.ZodObject<{
261
+ code: z.ZodString;
262
+ message: z.ZodString;
263
+ }, z.core.$strip>>;
264
+ }, z.core.$strip>>;
265
+ }, z.core.$strip>;
266
+ export type ServerPlayer = z.infer<typeof serverPlayerSchema>;
267
+ export type ServerPlayerState = z.infer<typeof serverPlayerStateSchema>;
268
+ export type ServerQueueEntry = z.infer<typeof serverQueueEntrySchema>;
269
+ export type CreateServerPlayer = z.infer<typeof createServerPlayerSchema>;
270
+ export type ServerPlayerCommand = z.infer<typeof serverPlayerCommandSchema>;
271
+ export type ServerPlayerCommandInput = z.input<typeof serverPlayerCommandSchema>;
272
+ export type ServerPlayerCommandResult = z.infer<typeof serverPlayerCommandResultSchema>;
273
+ export type SpeakerObservation = z.infer<typeof speakerObservationSchema>;
274
+ export type ServerPlayerDevice = z.infer<typeof serverPlayerDeviceSchema>;
275
+ export type PlayerTrackRef = z.infer<typeof playerTrackRefSchema>;
276
+ export declare const serverPlayerListSchema: z.ZodObject<{
277
+ players: z.ZodArray<z.ZodObject<{
278
+ id: z.ZodString;
279
+ name: z.ZodString;
280
+ engine_id: z.ZodString;
281
+ revision: z.ZodNumber;
282
+ assigned_output: z.ZodNullable<z.ZodString>;
283
+ state: z.ZodObject<{
284
+ queue: z.ZodArray<z.ZodObject<{
285
+ track_id: z.ZodString;
286
+ friend_id: z.ZodNumber;
287
+ id: z.ZodUUID;
288
+ title: z.ZodString;
289
+ artist: z.ZodString;
290
+ }, z.core.$strict>>;
291
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
292
+ status: z.ZodEnum<{
293
+ ended: "ended";
294
+ error: "error";
295
+ loading: "loading";
296
+ paused: "paused";
297
+ playing: "playing";
298
+ stopped: "stopped";
299
+ }>;
300
+ position: z.ZodNumber;
301
+ duration: z.ZodNullable<z.ZodNumber>;
302
+ volume: z.ZodNumber;
303
+ desired_output: z.ZodNullable<z.ZodString>;
304
+ checkpoint: z.ZodBoolean;
305
+ error: z.ZodNullable<z.ZodObject<{
306
+ code: z.ZodString;
307
+ message: z.ZodString;
308
+ }, z.core.$strip>>;
309
+ }, z.core.$strict>;
310
+ }, z.core.$strict>>;
311
+ }, z.core.$strip>;
312
+ export declare const serverPlayerDeviceListSchema: z.ZodObject<{
313
+ devices: z.ZodArray<z.ZodObject<{
314
+ id: z.ZodString;
315
+ name: z.ZodString;
316
+ description: z.ZodOptional<z.ZodString>;
317
+ assigned_player_id: z.ZodNullable<z.ZodString>;
318
+ desired_by: z.ZodArray<z.ZodString>;
319
+ observed: z.ZodObject<{
320
+ availability: z.ZodEnum<{
321
+ idle: "idle";
322
+ occupied: "occupied";
323
+ unknown: "unknown";
324
+ }>;
325
+ observed_at: z.ZodNullable<z.ZodString>;
326
+ source: z.ZodEnum<{
327
+ home_assistant: "home_assistant";
328
+ unconfigured: "unconfigured";
329
+ }>;
330
+ sender_identity: z.ZodLiteral<"unknown">;
331
+ }, z.core.$strip>;
332
+ }, z.core.$strip>>;
333
+ }, z.core.$strip>;
334
+ export declare const playerEngineListSchema: z.ZodObject<{
335
+ engines: z.ZodArray<z.ZodString>;
336
+ }, z.core.$strip>;
337
+ export declare const serverPlayerEventSchema: z.ZodObject<{
338
+ type: z.ZodLiteral<"snapshot">;
339
+ player: z.ZodObject<{
340
+ id: z.ZodString;
341
+ name: z.ZodString;
342
+ engine_id: z.ZodString;
343
+ revision: z.ZodNumber;
344
+ assigned_output: z.ZodNullable<z.ZodString>;
345
+ state: z.ZodObject<{
346
+ queue: z.ZodArray<z.ZodObject<{
347
+ track_id: z.ZodString;
348
+ friend_id: z.ZodNumber;
349
+ id: z.ZodUUID;
350
+ title: z.ZodString;
351
+ artist: z.ZodString;
352
+ }, z.core.$strict>>;
353
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
354
+ status: z.ZodEnum<{
355
+ ended: "ended";
356
+ error: "error";
357
+ loading: "loading";
358
+ paused: "paused";
359
+ playing: "playing";
360
+ stopped: "stopped";
361
+ }>;
362
+ position: z.ZodNumber;
363
+ duration: z.ZodNullable<z.ZodNumber>;
364
+ volume: z.ZodNumber;
365
+ desired_output: z.ZodNullable<z.ZodString>;
366
+ checkpoint: z.ZodBoolean;
367
+ error: z.ZodNullable<z.ZodObject<{
368
+ code: z.ZodString;
369
+ message: z.ZodString;
370
+ }, z.core.$strip>>;
371
+ }, z.core.$strict>;
372
+ }, z.core.$strict>;
373
+ worker_instance: z.ZodUUID;
374
+ sequence: z.ZodNumber;
375
+ }, z.core.$strip>;
376
+ export declare const serverPlayerPositionSchema: z.ZodObject<{
377
+ type: z.ZodLiteral<"position">;
378
+ player_id: z.ZodString;
379
+ revision: z.ZodNumber;
380
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
381
+ position: z.ZodNumber;
382
+ duration: z.ZodNullable<z.ZodNumber>;
383
+ observed_at: z.ZodString;
384
+ worker_instance: z.ZodUUID;
385
+ sequence: z.ZodNumber;
386
+ }, z.core.$strip>;
387
+ export declare const serverPlayerStreamEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
388
+ type: z.ZodLiteral<"snapshot">;
389
+ player: z.ZodObject<{
390
+ id: z.ZodString;
391
+ name: z.ZodString;
392
+ engine_id: z.ZodString;
393
+ revision: z.ZodNumber;
394
+ assigned_output: z.ZodNullable<z.ZodString>;
395
+ state: z.ZodObject<{
396
+ queue: z.ZodArray<z.ZodObject<{
397
+ track_id: z.ZodString;
398
+ friend_id: z.ZodNumber;
399
+ id: z.ZodUUID;
400
+ title: z.ZodString;
401
+ artist: z.ZodString;
402
+ }, z.core.$strict>>;
403
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
404
+ status: z.ZodEnum<{
405
+ ended: "ended";
406
+ error: "error";
407
+ loading: "loading";
408
+ paused: "paused";
409
+ playing: "playing";
410
+ stopped: "stopped";
411
+ }>;
412
+ position: z.ZodNumber;
413
+ duration: z.ZodNullable<z.ZodNumber>;
414
+ volume: z.ZodNumber;
415
+ desired_output: z.ZodNullable<z.ZodString>;
416
+ checkpoint: z.ZodBoolean;
417
+ error: z.ZodNullable<z.ZodObject<{
418
+ code: z.ZodString;
419
+ message: z.ZodString;
420
+ }, z.core.$strip>>;
421
+ }, z.core.$strict>;
422
+ }, z.core.$strict>;
423
+ worker_instance: z.ZodUUID;
424
+ sequence: z.ZodNumber;
425
+ }, z.core.$strip>, z.ZodObject<{
426
+ type: z.ZodLiteral<"position">;
427
+ player_id: z.ZodString;
428
+ revision: z.ZodNumber;
429
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
430
+ position: z.ZodNumber;
431
+ duration: z.ZodNullable<z.ZodNumber>;
432
+ observed_at: z.ZodString;
433
+ worker_instance: z.ZodUUID;
434
+ sequence: z.ZodNumber;
435
+ }, z.core.$strip>], "type">;
436
+ export declare const playerJsonSchemas: {
437
+ ServerPlayer: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
438
+ id: z.ZodString;
439
+ name: z.ZodString;
440
+ engine_id: z.ZodString;
441
+ revision: z.ZodNumber;
442
+ assigned_output: z.ZodNullable<z.ZodString>;
443
+ state: z.ZodObject<{
444
+ queue: z.ZodArray<z.ZodObject<{
445
+ track_id: z.ZodString;
446
+ friend_id: z.ZodNumber;
447
+ id: z.ZodUUID;
448
+ title: z.ZodString;
449
+ artist: z.ZodString;
450
+ }, z.core.$strict>>;
451
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
452
+ status: z.ZodEnum<{
453
+ ended: "ended";
454
+ error: "error";
455
+ loading: "loading";
456
+ paused: "paused";
457
+ playing: "playing";
458
+ stopped: "stopped";
459
+ }>;
460
+ position: z.ZodNumber;
461
+ duration: z.ZodNullable<z.ZodNumber>;
462
+ volume: z.ZodNumber;
463
+ desired_output: z.ZodNullable<z.ZodString>;
464
+ checkpoint: z.ZodBoolean;
465
+ error: z.ZodNullable<z.ZodObject<{
466
+ code: z.ZodString;
467
+ message: z.ZodString;
468
+ }, z.core.$strip>>;
469
+ }, z.core.$strict>;
470
+ }, z.core.$strict>>;
471
+ CreateServerPlayer: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
472
+ id: z.ZodString;
473
+ name: z.ZodString;
474
+ engine_id: z.ZodString;
475
+ }, z.core.$strict>>;
476
+ ServerPlayerCommand: z.core.ZodStandardJSONSchemaPayload<z.ZodDiscriminatedUnion<[z.ZodObject<{
477
+ expected_revision: z.ZodNumber;
478
+ type: z.ZodLiteral<"rename">;
479
+ name: z.ZodString;
480
+ }, z.core.$strict>, z.ZodObject<{
481
+ expected_revision: z.ZodNumber;
482
+ type: z.ZodLiteral<"queue.add">;
483
+ tracks: z.ZodArray<z.ZodObject<{
484
+ track_id: z.ZodString;
485
+ friend_id: z.ZodNumber;
486
+ }, z.core.$strict>>;
487
+ at: z.ZodOptional<z.ZodNumber>;
488
+ }, z.core.$strict>, z.ZodObject<{
489
+ expected_revision: z.ZodNumber;
490
+ type: z.ZodLiteral<"queue.remove">;
491
+ entry_id: z.ZodUUID;
492
+ }, z.core.$strict>, z.ZodObject<{
493
+ expected_revision: z.ZodNumber;
494
+ type: z.ZodLiteral<"queue.move">;
495
+ entry_id: z.ZodUUID;
496
+ to: z.ZodNumber;
497
+ }, z.core.$strict>, z.ZodObject<{
498
+ expected_revision: z.ZodNumber;
499
+ type: z.ZodLiteral<"queue.clear">;
500
+ }, z.core.$strict>, z.ZodObject<{
501
+ expected_revision: z.ZodNumber;
502
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
503
+ takeover: z.ZodDefault<z.ZodBoolean>;
504
+ type: z.ZodLiteral<"play">;
505
+ entry_id: z.ZodOptional<z.ZodUUID>;
506
+ }, z.core.$strict>, z.ZodObject<{
507
+ expected_revision: z.ZodNumber;
508
+ type: z.ZodLiteral<"pause">;
509
+ }, z.core.$strict>, z.ZodObject<{
510
+ expected_revision: z.ZodNumber;
511
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
512
+ takeover: z.ZodDefault<z.ZodBoolean>;
513
+ type: z.ZodLiteral<"resume">;
514
+ }, z.core.$strict>, z.ZodObject<{
515
+ expected_revision: z.ZodNumber;
516
+ type: z.ZodLiteral<"stop">;
517
+ }, z.core.$strict>, z.ZodObject<{
518
+ expected_revision: z.ZodNumber;
519
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
520
+ takeover: z.ZodDefault<z.ZodBoolean>;
521
+ type: z.ZodLiteral<"next">;
522
+ }, z.core.$strict>, z.ZodObject<{
523
+ expected_revision: z.ZodNumber;
524
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
525
+ takeover: z.ZodDefault<z.ZodBoolean>;
526
+ type: z.ZodLiteral<"previous">;
527
+ }, z.core.$strict>, z.ZodObject<{
528
+ expected_revision: z.ZodNumber;
529
+ type: z.ZodLiteral<"seek">;
530
+ seconds: z.ZodNumber;
531
+ }, z.core.$strict>, z.ZodObject<{
532
+ expected_revision: z.ZodNumber;
533
+ type: z.ZodLiteral<"volume">;
534
+ volume: z.ZodNumber;
535
+ }, z.core.$strict>, z.ZodObject<{
536
+ expected_revision: z.ZodNumber;
537
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
538
+ takeover: z.ZodDefault<z.ZodBoolean>;
539
+ type: z.ZodLiteral<"output.select">;
540
+ output_id: z.ZodString;
541
+ }, z.core.$strict>, z.ZodObject<{
542
+ expected_revision: z.ZodNumber;
543
+ allow_unknown: z.ZodDefault<z.ZodBoolean>;
544
+ takeover: z.ZodDefault<z.ZodBoolean>;
545
+ type: z.ZodLiteral<"output.transfer">;
546
+ from_player_id: z.ZodString;
547
+ from_revision: z.ZodNumber;
548
+ output_id: z.ZodString;
549
+ play: z.ZodDefault<z.ZodBoolean>;
550
+ }, z.core.$strict>], "type">>;
551
+ ServerPlayerCommandResult: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
552
+ player: z.ZodObject<{
553
+ id: z.ZodString;
554
+ name: z.ZodString;
555
+ engine_id: z.ZodString;
556
+ revision: z.ZodNumber;
557
+ assigned_output: z.ZodNullable<z.ZodString>;
558
+ state: z.ZodObject<{
559
+ queue: z.ZodArray<z.ZodObject<{
560
+ track_id: z.ZodString;
561
+ friend_id: z.ZodNumber;
562
+ id: z.ZodUUID;
563
+ title: z.ZodString;
564
+ artist: z.ZodString;
565
+ }, z.core.$strict>>;
566
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
567
+ status: z.ZodEnum<{
568
+ ended: "ended";
569
+ error: "error";
570
+ loading: "loading";
571
+ paused: "paused";
572
+ playing: "playing";
573
+ stopped: "stopped";
574
+ }>;
575
+ position: z.ZodNumber;
576
+ duration: z.ZodNullable<z.ZodNumber>;
577
+ volume: z.ZodNumber;
578
+ desired_output: z.ZodNullable<z.ZodString>;
579
+ checkpoint: z.ZodBoolean;
580
+ error: z.ZodNullable<z.ZodObject<{
581
+ code: z.ZodString;
582
+ message: z.ZodString;
583
+ }, z.core.$strip>>;
584
+ }, z.core.$strict>;
585
+ }, z.core.$strict>;
586
+ transfer: z.ZodOptional<z.ZodObject<{
587
+ from_player: z.ZodObject<{
588
+ id: z.ZodString;
589
+ name: z.ZodString;
590
+ engine_id: z.ZodString;
591
+ revision: z.ZodNumber;
592
+ assigned_output: z.ZodNullable<z.ZodString>;
593
+ state: z.ZodObject<{
594
+ queue: z.ZodArray<z.ZodObject<{
595
+ track_id: z.ZodString;
596
+ friend_id: z.ZodNumber;
597
+ id: z.ZodUUID;
598
+ title: z.ZodString;
599
+ artist: z.ZodString;
600
+ }, z.core.$strict>>;
601
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
602
+ status: z.ZodEnum<{
603
+ ended: "ended";
604
+ error: "error";
605
+ loading: "loading";
606
+ paused: "paused";
607
+ playing: "playing";
608
+ stopped: "stopped";
609
+ }>;
610
+ position: z.ZodNumber;
611
+ duration: z.ZodNullable<z.ZodNumber>;
612
+ volume: z.ZodNumber;
613
+ desired_output: z.ZodNullable<z.ZodString>;
614
+ checkpoint: z.ZodBoolean;
615
+ error: z.ZodNullable<z.ZodObject<{
616
+ code: z.ZodString;
617
+ message: z.ZodString;
618
+ }, z.core.$strip>>;
619
+ }, z.core.$strict>;
620
+ }, z.core.$strict>;
621
+ detached: z.ZodBoolean;
622
+ attached: z.ZodBoolean;
623
+ error: z.ZodNullable<z.ZodObject<{
624
+ code: z.ZodString;
625
+ message: z.ZodString;
626
+ }, z.core.$strip>>;
627
+ }, z.core.$strip>>;
628
+ }, z.core.$strip>>;
629
+ ServerPlayerList: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
630
+ players: z.ZodArray<z.ZodObject<{
631
+ id: z.ZodString;
632
+ name: z.ZodString;
633
+ engine_id: z.ZodString;
634
+ revision: z.ZodNumber;
635
+ assigned_output: z.ZodNullable<z.ZodString>;
636
+ state: z.ZodObject<{
637
+ queue: z.ZodArray<z.ZodObject<{
638
+ track_id: z.ZodString;
639
+ friend_id: z.ZodNumber;
640
+ id: z.ZodUUID;
641
+ title: z.ZodString;
642
+ artist: z.ZodString;
643
+ }, z.core.$strict>>;
644
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
645
+ status: z.ZodEnum<{
646
+ ended: "ended";
647
+ error: "error";
648
+ loading: "loading";
649
+ paused: "paused";
650
+ playing: "playing";
651
+ stopped: "stopped";
652
+ }>;
653
+ position: z.ZodNumber;
654
+ duration: z.ZodNullable<z.ZodNumber>;
655
+ volume: z.ZodNumber;
656
+ desired_output: z.ZodNullable<z.ZodString>;
657
+ checkpoint: z.ZodBoolean;
658
+ error: z.ZodNullable<z.ZodObject<{
659
+ code: z.ZodString;
660
+ message: z.ZodString;
661
+ }, z.core.$strip>>;
662
+ }, z.core.$strict>;
663
+ }, z.core.$strict>>;
664
+ }, z.core.$strip>>;
665
+ ServerPlayerDeviceList: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
666
+ devices: z.ZodArray<z.ZodObject<{
667
+ id: z.ZodString;
668
+ name: z.ZodString;
669
+ description: z.ZodOptional<z.ZodString>;
670
+ assigned_player_id: z.ZodNullable<z.ZodString>;
671
+ desired_by: z.ZodArray<z.ZodString>;
672
+ observed: z.ZodObject<{
673
+ availability: z.ZodEnum<{
674
+ idle: "idle";
675
+ occupied: "occupied";
676
+ unknown: "unknown";
677
+ }>;
678
+ observed_at: z.ZodNullable<z.ZodString>;
679
+ source: z.ZodEnum<{
680
+ home_assistant: "home_assistant";
681
+ unconfigured: "unconfigured";
682
+ }>;
683
+ sender_identity: z.ZodLiteral<"unknown">;
684
+ }, z.core.$strip>;
685
+ }, z.core.$strip>>;
686
+ }, z.core.$strip>>;
687
+ PlayerEngineList: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
688
+ engines: z.ZodArray<z.ZodString>;
689
+ }, z.core.$strip>>;
690
+ ServerPlayerEvent: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
691
+ type: z.ZodLiteral<"snapshot">;
692
+ player: z.ZodObject<{
693
+ id: z.ZodString;
694
+ name: z.ZodString;
695
+ engine_id: z.ZodString;
696
+ revision: z.ZodNumber;
697
+ assigned_output: z.ZodNullable<z.ZodString>;
698
+ state: z.ZodObject<{
699
+ queue: z.ZodArray<z.ZodObject<{
700
+ track_id: z.ZodString;
701
+ friend_id: z.ZodNumber;
702
+ id: z.ZodUUID;
703
+ title: z.ZodString;
704
+ artist: z.ZodString;
705
+ }, z.core.$strict>>;
706
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
707
+ status: z.ZodEnum<{
708
+ ended: "ended";
709
+ error: "error";
710
+ loading: "loading";
711
+ paused: "paused";
712
+ playing: "playing";
713
+ stopped: "stopped";
714
+ }>;
715
+ position: z.ZodNumber;
716
+ duration: z.ZodNullable<z.ZodNumber>;
717
+ volume: z.ZodNumber;
718
+ desired_output: z.ZodNullable<z.ZodString>;
719
+ checkpoint: z.ZodBoolean;
720
+ error: z.ZodNullable<z.ZodObject<{
721
+ code: z.ZodString;
722
+ message: z.ZodString;
723
+ }, z.core.$strip>>;
724
+ }, z.core.$strict>;
725
+ }, z.core.$strict>;
726
+ worker_instance: z.ZodUUID;
727
+ sequence: z.ZodNumber;
728
+ }, z.core.$strip>>;
729
+ ServerPlayerPosition: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
730
+ type: z.ZodLiteral<"position">;
731
+ player_id: z.ZodString;
732
+ revision: z.ZodNumber;
733
+ current_entry_id: z.ZodNullable<z.ZodUUID>;
734
+ position: z.ZodNumber;
735
+ duration: z.ZodNullable<z.ZodNumber>;
736
+ observed_at: z.ZodString;
737
+ worker_instance: z.ZodUUID;
738
+ sequence: z.ZodNumber;
739
+ }, z.core.$strip>>;
740
+ };
741
+ //# sourceMappingURL=players.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"players.d.ts","sourceRoot":"","sources":["../src/players.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ import { z } from "zod";
2
+ export const playerIdSchema = z.string().regex(/^[a-z0-9][a-z0-9-]{0,62}$/);
3
+ const revision = z.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER);
4
+ export const playerTrackRefSchema = z.object({ track_id: z.string().min(1).max(255), friend_id: z.number().int().positive() }).strict();
5
+ export const serverQueueEntrySchema = playerTrackRefSchema.extend({
6
+ id: z.uuid(), title: z.string(), artist: z.string(),
7
+ }).strict();
8
+ export const serverPlayerStateSchema = z.object({
9
+ queue: z.array(serverQueueEntrySchema).max(10000),
10
+ current_entry_id: z.uuid().nullable(),
11
+ status: z.enum(["stopped", "loading", "playing", "paused", "ended", "error"]),
12
+ position: z.number().finite().nonnegative(),
13
+ duration: z.number().finite().nonnegative().nullable(),
14
+ volume: z.number().finite().min(0).max(100),
15
+ desired_output: z.string().min(1).max(255).nullable(),
16
+ checkpoint: z.boolean(),
17
+ error: z.object({ code: z.string(), message: z.string() }).nullable(),
18
+ }).strict();
19
+ export const serverPlayerSchema = z.object({
20
+ id: playerIdSchema,
21
+ name: z.string().trim().min(1).max(120),
22
+ engine_id: playerIdSchema,
23
+ revision,
24
+ assigned_output: z.string().nullable(),
25
+ state: serverPlayerStateSchema,
26
+ }).strict();
27
+ export const createServerPlayerSchema = serverPlayerSchema.pick({ id: true, name: true, engine_id: true }).strict();
28
+ const edit = { expected_revision: revision };
29
+ const connect = { allow_unknown: z.boolean().default(false), takeover: z.boolean().default(false) };
30
+ export const serverPlayerCommandSchema = z.discriminatedUnion("type", [
31
+ z.object({ type: z.literal("rename"), ...edit, name: z.string().trim().min(1).max(120) }).strict(),
32
+ z.object({ type: z.literal("queue.add"), ...edit, tracks: z.array(playerTrackRefSchema).min(1).max(1000), at: z.number().int().nonnegative().optional() }).strict(),
33
+ z.object({ type: z.literal("queue.remove"), ...edit, entry_id: z.uuid() }).strict(),
34
+ z.object({ type: z.literal("queue.move"), ...edit, entry_id: z.uuid(), to: z.number().int().nonnegative() }).strict(),
35
+ z.object({ type: z.literal("queue.clear"), ...edit }).strict(),
36
+ z.object({ type: z.literal("play"), ...edit, ...connect, entry_id: z.uuid().optional() }).strict(),
37
+ z.object({ type: z.literal("pause"), ...edit }).strict(),
38
+ z.object({ type: z.literal("resume"), ...edit, ...connect }).strict(),
39
+ z.object({ type: z.literal("stop"), ...edit }).strict(),
40
+ z.object({ type: z.literal("next"), ...edit, ...connect }).strict(),
41
+ z.object({ type: z.literal("previous"), ...edit, ...connect }).strict(),
42
+ z.object({ type: z.literal("seek"), ...edit, seconds: z.number().finite().nonnegative() }).strict(),
43
+ z.object({ type: z.literal("volume"), ...edit, volume: z.number().finite().min(0).max(100) }).strict(),
44
+ z.object({ type: z.literal("output.select"), ...edit, ...connect, output_id: z.string().min(1).max(255) }).strict(),
45
+ z.object({ type: z.literal("output.transfer"), ...edit, ...connect, from_player_id: playerIdSchema, from_revision: revision, output_id: z.string().min(1).max(255), play: z.boolean().default(false) }).strict(),
46
+ ]);
47
+ export const speakerObservationSchema = z.object({
48
+ availability: z.enum(["idle", "occupied", "unknown"]),
49
+ observed_at: z.string().nullable(),
50
+ source: z.enum(["home_assistant", "unconfigured"]),
51
+ // HA does not establish which application owns an AirPlay session.
52
+ sender_identity: z.literal("unknown"),
53
+ });
54
+ export const serverPlayerDeviceSchema = z.object({
55
+ id: z.string(), name: z.string(), description: z.string().optional(),
56
+ assigned_player_id: playerIdSchema.nullable(),
57
+ desired_by: z.array(playerIdSchema),
58
+ observed: speakerObservationSchema,
59
+ });
60
+ export const serverPlayerCommandResultSchema = z.object({
61
+ player: serverPlayerSchema,
62
+ transfer: z.object({
63
+ from_player: serverPlayerSchema,
64
+ detached: z.boolean(), attached: z.boolean(),
65
+ error: z.object({ code: z.string(), message: z.string() }).nullable(),
66
+ }).optional(),
67
+ });
68
+ export const serverPlayerListSchema = z.object({ players: z.array(serverPlayerSchema) });
69
+ export const serverPlayerDeviceListSchema = z.object({ devices: z.array(serverPlayerDeviceSchema) });
70
+ export const playerEngineListSchema = z.object({ engines: z.array(playerIdSchema) });
71
+ export const serverPlayerEventSchema = z.object({ type: z.literal("snapshot"), player: serverPlayerSchema, worker_instance: z.uuid(), sequence: revision });
72
+ export const serverPlayerPositionSchema = z.object({ type: z.literal("position"), player_id: playerIdSchema, revision, current_entry_id: z.uuid().nullable(), position: z.number().finite().nonnegative(), duration: z.number().finite().nonnegative().nullable(), observed_at: z.string(), worker_instance: z.uuid(), sequence: revision });
73
+ export const serverPlayerStreamEventSchema = z.discriminatedUnion("type", [serverPlayerEventSchema, serverPlayerPositionSchema]);
74
+ export const playerJsonSchemas = {
75
+ ServerPlayer: z.toJSONSchema(serverPlayerSchema),
76
+ CreateServerPlayer: z.toJSONSchema(createServerPlayerSchema),
77
+ ServerPlayerCommand: z.toJSONSchema(serverPlayerCommandSchema, { io: "input" }),
78
+ ServerPlayerCommandResult: z.toJSONSchema(serverPlayerCommandResultSchema),
79
+ ServerPlayerList: z.toJSONSchema(serverPlayerListSchema),
80
+ ServerPlayerDeviceList: z.toJSONSchema(serverPlayerDeviceListSchema),
81
+ PlayerEngineList: z.toJSONSchema(playerEngineListSchema),
82
+ ServerPlayerEvent: z.toJSONSchema(serverPlayerEventSchema),
83
+ ServerPlayerPosition: z.toJSONSchema(serverPlayerPositionSchema),
84
+ };
85
+ //# sourceMappingURL=players.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"players.js","sourceRoot":"","sources":["../src/players.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@groovenet/contracts",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "Shared runtime schemas and inferred types for the Groovenet API",
5
5
  "type": "module",
6
6
  "main": "build/index.js",
@@ -15,7 +15,7 @@
15
15
  "build": "tsc",
16
16
  "lint": "eslint .",
17
17
  "test": "vitest run",
18
- "test:coverage": "vitest run --coverage --coverage.include=src/liveSets.ts --coverage.include=src/playlists.ts --coverage.include=src/tracks.ts --coverage.include=src/albums.ts --coverage.include=src/friends.ts --coverage.include=src/recordCare.ts --coverage.include=src/spins.ts --coverage.reporter=lcov"
18
+ "test:coverage": "vitest run --coverage --coverage.include=src/liveSets.ts --coverage.include=src/playlists.ts --coverage.include=src/tracks.ts --coverage.include=src/albums.ts --coverage.include=src/friends.ts --coverage.include=src/recordCare.ts --coverage.include=src/spins.ts --coverage.include=src/players.ts --coverage.reporter=lcov"
19
19
  },
20
20
  "files": [
21
21
  "build/"
@@ -24,7 +24,7 @@
24
24
  "access": "public"
25
25
  },
26
26
  "dependencies": {
27
- "zod": "^4.6.5"
27
+ "zod": "^4.6.7"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@vitest/coverage-v8": "^5.0.3",