@absolutejs/voice 0.0.22-beta.397 → 0.0.22-beta.399

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.
@@ -442,9 +442,146 @@ VoiceProofTrendsService = __decorateElement(_init, 0, "VoiceProofTrendsService",
442
442
  __runInitializers(_init, 1, VoiceProofTrendsService);
443
443
  __decoratorMetadata(_init, VoiceProofTrendsService);
444
444
  let _VoiceProofTrendsService = VoiceProofTrendsService;
445
- // src/angular/voice-profile-comparison.service.ts
445
+ // src/angular/voice-session-snapshot.service.ts
446
446
  import { computed as computed4, Injectable as Injectable4, signal as signal4 } from "@angular/core";
447
447
 
448
+ // src/client/sessionSnapshot.ts
449
+ var withTurnId = (path, turnId) => {
450
+ if (!turnId) {
451
+ return path;
452
+ }
453
+ const url = new URL(path, "http://absolutejs.local");
454
+ url.searchParams.set("turnId", turnId);
455
+ return `${url.pathname}${url.search}`;
456
+ };
457
+ var fetchVoiceSessionSnapshot = async (path, options = {}) => {
458
+ const fetchImpl = options.fetch ?? globalThis.fetch;
459
+ const response = await fetchImpl(withTurnId(path, options.turnId));
460
+ if (!response.ok) {
461
+ throw new Error(`Voice session snapshot failed: HTTP ${response.status}`);
462
+ }
463
+ return await response.json();
464
+ };
465
+ var createVoiceSessionSnapshotStore = (path, options = {}) => {
466
+ const listeners = new Set;
467
+ let closed = false;
468
+ let timer;
469
+ let snapshot = {
470
+ error: null,
471
+ isLoading: false
472
+ };
473
+ const emit = () => {
474
+ for (const listener of listeners) {
475
+ listener();
476
+ }
477
+ };
478
+ const refresh = async () => {
479
+ if (closed) {
480
+ return snapshot.snapshot;
481
+ }
482
+ snapshot = { ...snapshot, error: null, isLoading: true };
483
+ emit();
484
+ try {
485
+ const next = await fetchVoiceSessionSnapshot(path, options);
486
+ snapshot = {
487
+ error: null,
488
+ isLoading: false,
489
+ snapshot: next,
490
+ updatedAt: Date.now()
491
+ };
492
+ emit();
493
+ return next;
494
+ } catch (error) {
495
+ snapshot = {
496
+ ...snapshot,
497
+ error: error instanceof Error ? error.message : String(error),
498
+ isLoading: false
499
+ };
500
+ emit();
501
+ throw error;
502
+ }
503
+ };
504
+ const download = () => {
505
+ const current = snapshot.snapshot;
506
+ if (current === undefined) {
507
+ throw new Error("Voice session snapshot has not been loaded.");
508
+ }
509
+ return new Blob([JSON.stringify(current, null, 2)], {
510
+ type: "application/json"
511
+ });
512
+ };
513
+ const close = () => {
514
+ closed = true;
515
+ if (timer) {
516
+ clearInterval(timer);
517
+ timer = undefined;
518
+ }
519
+ listeners.clear();
520
+ };
521
+ if (options.intervalMs && options.intervalMs > 0) {
522
+ timer = setInterval(() => {
523
+ refresh().catch(() => {});
524
+ }, options.intervalMs);
525
+ }
526
+ return {
527
+ close,
528
+ download,
529
+ getServerSnapshot: () => snapshot,
530
+ getSnapshot: () => snapshot,
531
+ refresh,
532
+ subscribe: (listener) => {
533
+ listeners.add(listener);
534
+ return () => {
535
+ listeners.delete(listener);
536
+ };
537
+ }
538
+ };
539
+ };
540
+
541
+ // src/angular/voice-session-snapshot.service.ts
542
+ var _dec = [
543
+ Injectable4({ providedIn: "root" })
544
+ ];
545
+ var _init = __decoratorStart(undefined);
546
+
547
+ class VoiceSessionSnapshotService {
548
+ connect(path, options = {}) {
549
+ const store = createVoiceSessionSnapshotStore(path, options);
550
+ const errorSignal = signal4(null);
551
+ const isLoadingSignal = signal4(false);
552
+ const snapshotSignal = signal4(undefined);
553
+ const updatedAtSignal = signal4(undefined);
554
+ const sync = () => {
555
+ const state = store.getSnapshot();
556
+ errorSignal.set(state.error);
557
+ isLoadingSignal.set(state.isLoading);
558
+ snapshotSignal.set(state.snapshot);
559
+ updatedAtSignal.set(state.updatedAt);
560
+ };
561
+ const unsubscribe = store.subscribe(sync);
562
+ sync();
563
+ store.refresh().catch(() => {});
564
+ return {
565
+ close: () => {
566
+ unsubscribe();
567
+ store.close();
568
+ },
569
+ download: store.download,
570
+ error: computed4(() => errorSignal()),
571
+ isLoading: computed4(() => isLoadingSignal()),
572
+ refresh: store.refresh,
573
+ snapshot: computed4(() => snapshotSignal()),
574
+ updatedAt: computed4(() => updatedAtSignal())
575
+ };
576
+ }
577
+ }
578
+ VoiceSessionSnapshotService = __decorateElement(_init, 0, "VoiceSessionSnapshotService", _dec, VoiceSessionSnapshotService);
579
+ __runInitializers(_init, 1, VoiceSessionSnapshotService);
580
+ __decoratorMetadata(_init, VoiceSessionSnapshotService);
581
+ let _VoiceSessionSnapshotService = VoiceSessionSnapshotService;
582
+ // src/angular/voice-profile-comparison.service.ts
583
+ import { computed as computed5, Injectable as Injectable5, signal as signal5 } from "@angular/core";
584
+
448
585
  // src/client/profileComparison.ts
449
586
  var fetchVoiceProfileComparison = async (path = "/api/voice/real-call-profile-history", options = {}) => {
450
587
  const fetchImpl = options.fetch ?? globalThis.fetch;
@@ -522,17 +659,17 @@ var createVoiceProfileComparisonStore = (path = "/api/voice/real-call-profile-hi
522
659
 
523
660
  // src/angular/voice-profile-comparison.service.ts
524
661
  var _dec = [
525
- Injectable4({ providedIn: "root" })
662
+ Injectable5({ providedIn: "root" })
526
663
  ];
527
664
  var _init = __decoratorStart(undefined);
528
665
 
529
666
  class VoiceProfileComparisonService {
530
667
  connect(path = "/api/voice/real-call-profile-history", options = {}) {
531
668
  const store = createVoiceProfileComparisonStore(path, options);
532
- const errorSignal = signal4(null);
533
- const isLoadingSignal = signal4(false);
534
- const reportSignal = signal4(undefined);
535
- const updatedAtSignal = signal4(undefined);
669
+ const errorSignal = signal5(null);
670
+ const isLoadingSignal = signal5(false);
671
+ const reportSignal = signal5(undefined);
672
+ const updatedAtSignal = signal5(undefined);
536
673
  const sync = () => {
537
674
  const snapshot = store.getSnapshot();
538
675
  errorSignal.set(snapshot.error);
@@ -550,11 +687,11 @@ class VoiceProfileComparisonService {
550
687
  unsubscribe();
551
688
  store.close();
552
689
  },
553
- error: computed4(() => errorSignal()),
554
- isLoading: computed4(() => isLoadingSignal()),
690
+ error: computed5(() => errorSignal()),
691
+ isLoading: computed5(() => isLoadingSignal()),
555
692
  refresh: store.refresh,
556
- report: computed4(() => reportSignal()),
557
- updatedAt: computed4(() => updatedAtSignal())
693
+ report: computed5(() => reportSignal()),
694
+ updatedAt: computed5(() => updatedAtSignal())
558
695
  };
559
696
  }
560
697
  }
@@ -563,7 +700,7 @@ __runInitializers(_init, 1, VoiceProfileComparisonService);
563
700
  __decoratorMetadata(_init, VoiceProfileComparisonService);
564
701
  let _VoiceProfileComparisonService = VoiceProfileComparisonService;
565
702
  // src/angular/voice-readiness-failures.service.ts
566
- import { computed as computed5, Injectable as Injectable5, signal as signal5 } from "@angular/core";
703
+ import { computed as computed6, Injectable as Injectable6, signal as signal6 } from "@angular/core";
567
704
 
568
705
  // src/client/readinessFailures.ts
569
706
  var fetchVoiceReadinessFailures = async (path = "/api/production-readiness", options = {}) => {
@@ -642,17 +779,17 @@ var createVoiceReadinessFailuresStore = (path = "/api/production-readiness", opt
642
779
 
643
780
  // src/angular/voice-readiness-failures.service.ts
644
781
  var _dec = [
645
- Injectable5({ providedIn: "root" })
782
+ Injectable6({ providedIn: "root" })
646
783
  ];
647
784
  var _init = __decoratorStart(undefined);
648
785
 
649
786
  class VoiceReadinessFailuresService {
650
787
  connect(path = "/api/production-readiness", options = {}) {
651
788
  const store = createVoiceReadinessFailuresStore(path, options);
652
- const errorSignal = signal5(null);
653
- const isLoadingSignal = signal5(false);
654
- const reportSignal = signal5(undefined);
655
- const updatedAtSignal = signal5(undefined);
789
+ const errorSignal = signal6(null);
790
+ const isLoadingSignal = signal6(false);
791
+ const reportSignal = signal6(undefined);
792
+ const updatedAtSignal = signal6(undefined);
656
793
  const sync = () => {
657
794
  const snapshot = store.getSnapshot();
658
795
  errorSignal.set(snapshot.error);
@@ -670,12 +807,12 @@ class VoiceReadinessFailuresService {
670
807
  unsubscribe();
671
808
  store.close();
672
809
  },
673
- error: computed5(() => errorSignal()),
674
- explanations: computed5(() => reportSignal()?.checks.filter((check) => check.status !== "pass" && !!check.gateExplanation) ?? []),
675
- isLoading: computed5(() => isLoadingSignal()),
810
+ error: computed6(() => errorSignal()),
811
+ explanations: computed6(() => reportSignal()?.checks.filter((check) => check.status !== "pass" && !!check.gateExplanation) ?? []),
812
+ isLoading: computed6(() => isLoadingSignal()),
676
813
  refresh: store.refresh,
677
- report: computed5(() => reportSignal()),
678
- updatedAt: computed5(() => updatedAtSignal())
814
+ report: computed6(() => reportSignal()),
815
+ updatedAt: computed6(() => updatedAtSignal())
679
816
  };
680
817
  }
681
818
  }
@@ -684,7 +821,7 @@ __runInitializers(_init, 1, VoiceReadinessFailuresService);
684
821
  __decoratorMetadata(_init, VoiceReadinessFailuresService);
685
822
  let _VoiceReadinessFailuresService = VoiceReadinessFailuresService;
686
823
  // src/angular/voice-ops-action-center.service.ts
687
- import { computed as computed6, Injectable as Injectable6, signal as signal6 } from "@angular/core";
824
+ import { computed as computed7, Injectable as Injectable7, signal as signal7 } from "@angular/core";
688
825
 
689
826
  // src/client/opsActionCenter.ts
690
827
  var recordVoiceOpsActionResult = async (result, options = {}) => {
@@ -879,18 +1016,18 @@ var createVoiceOpsActionCenterStore = (options = {}) => {
879
1016
 
880
1017
  // src/angular/voice-ops-action-center.service.ts
881
1018
  var _dec = [
882
- Injectable6({ providedIn: "root" })
1019
+ Injectable7({ providedIn: "root" })
883
1020
  ];
884
1021
  var _init = __decoratorStart(undefined);
885
1022
 
886
1023
  class VoiceOpsActionCenterService {
887
1024
  connect(options = {}) {
888
1025
  const store = createVoiceOpsActionCenterStore(options);
889
- const actionsSignal = signal6([]);
890
- const errorSignal = signal6(null);
891
- const isRunningSignal = signal6(false);
892
- const lastResultSignal = signal6(undefined);
893
- const runningActionIdSignal = signal6(undefined);
1026
+ const actionsSignal = signal7([]);
1027
+ const errorSignal = signal7(null);
1028
+ const isRunningSignal = signal7(false);
1029
+ const lastResultSignal = signal7(undefined);
1030
+ const runningActionIdSignal = signal7(undefined);
894
1031
  const sync = () => {
895
1032
  const snapshot = store.getSnapshot();
896
1033
  actionsSignal.set(snapshot.actions);
@@ -902,16 +1039,16 @@ class VoiceOpsActionCenterService {
902
1039
  const unsubscribe = store.subscribe(sync);
903
1040
  sync();
904
1041
  return {
905
- actions: computed6(() => actionsSignal()),
1042
+ actions: computed7(() => actionsSignal()),
906
1043
  close: () => {
907
1044
  unsubscribe();
908
1045
  store.close();
909
1046
  },
910
- error: computed6(() => errorSignal()),
911
- isRunning: computed6(() => isRunningSignal()),
912
- lastResult: computed6(() => lastResultSignal()),
1047
+ error: computed7(() => errorSignal()),
1048
+ isRunning: computed7(() => isRunningSignal()),
1049
+ lastResult: computed7(() => lastResultSignal()),
913
1050
  run: store.run,
914
- runningActionId: computed6(() => runningActionIdSignal()),
1051
+ runningActionId: computed7(() => runningActionIdSignal()),
915
1052
  setActions: store.setActions
916
1053
  };
917
1054
  }
@@ -921,7 +1058,7 @@ __runInitializers(_init, 1, VoiceOpsActionCenterService);
921
1058
  __decoratorMetadata(_init, VoiceOpsActionCenterService);
922
1059
  let _VoiceOpsActionCenterService = VoiceOpsActionCenterService;
923
1060
  // src/angular/voice-live-ops.service.ts
924
- import { computed as computed7, Injectable as Injectable7, signal as signal7 } from "@angular/core";
1061
+ import { computed as computed8, Injectable as Injectable8, signal as signal8 } from "@angular/core";
925
1062
 
926
1063
  // src/client/liveOps.ts
927
1064
  var postVoiceLiveOpsAction = async (input, options = {}) => {
@@ -1011,17 +1148,17 @@ var createVoiceLiveOpsStore = (options = {}) => {
1011
1148
 
1012
1149
  // src/angular/voice-live-ops.service.ts
1013
1150
  var _dec = [
1014
- Injectable7({ providedIn: "root" })
1151
+ Injectable8({ providedIn: "root" })
1015
1152
  ];
1016
1153
  var _init = __decoratorStart(undefined);
1017
1154
 
1018
1155
  class VoiceLiveOpsService {
1019
1156
  connect(options = {}) {
1020
1157
  const store = createVoiceLiveOpsStore(options);
1021
- const errorSignal = signal7(null);
1022
- const isRunningSignal = signal7(false);
1023
- const lastResultSignal = signal7(undefined);
1024
- const runningActionSignal = signal7(undefined);
1158
+ const errorSignal = signal8(null);
1159
+ const isRunningSignal = signal8(false);
1160
+ const lastResultSignal = signal8(undefined);
1161
+ const runningActionSignal = signal8(undefined);
1025
1162
  const sync = () => {
1026
1163
  const snapshot = store.getSnapshot();
1027
1164
  errorSignal.set(snapshot.error);
@@ -1036,11 +1173,11 @@ class VoiceLiveOpsService {
1036
1173
  unsubscribe();
1037
1174
  store.close();
1038
1175
  },
1039
- error: computed7(() => errorSignal()),
1040
- isRunning: computed7(() => isRunningSignal()),
1041
- lastResult: computed7(() => lastResultSignal()),
1176
+ error: computed8(() => errorSignal()),
1177
+ isRunning: computed8(() => isRunningSignal()),
1178
+ lastResult: computed8(() => lastResultSignal()),
1042
1179
  run: store.run,
1043
- runningAction: computed7(() => runningActionSignal())
1180
+ runningAction: computed8(() => runningActionSignal())
1044
1181
  };
1045
1182
  }
1046
1183
  }
@@ -1049,7 +1186,7 @@ __runInitializers(_init, 1, VoiceLiveOpsService);
1049
1186
  __decoratorMetadata(_init, VoiceLiveOpsService);
1050
1187
  let _VoiceLiveOpsService = VoiceLiveOpsService;
1051
1188
  // src/angular/voice-delivery-runtime.service.ts
1052
- import { computed as computed8, Injectable as Injectable8, signal as signal8 } from "@angular/core";
1189
+ import { computed as computed9, Injectable as Injectable9, signal as signal9 } from "@angular/core";
1053
1190
 
1054
1191
  // src/client/deliveryRuntime.ts
1055
1192
  var getDefaultActionPath = (path, action, options) => {
@@ -1190,19 +1327,19 @@ var createVoiceDeliveryRuntimeStore = (path = "/api/voice-delivery-runtime", opt
1190
1327
 
1191
1328
  // src/angular/voice-delivery-runtime.service.ts
1192
1329
  var _dec = [
1193
- Injectable8({ providedIn: "root" })
1330
+ Injectable9({ providedIn: "root" })
1194
1331
  ];
1195
1332
  var _init = __decoratorStart(undefined);
1196
1333
 
1197
1334
  class VoiceDeliveryRuntimeService {
1198
1335
  connect(path = "/api/voice-delivery-runtime", options = {}) {
1199
1336
  const store = createVoiceDeliveryRuntimeStore(path, options);
1200
- const actionErrorSignal = signal8(null);
1201
- const actionStatusSignal = signal8("idle");
1202
- const errorSignal = signal8(null);
1203
- const isLoadingSignal = signal8(false);
1204
- const reportSignal = signal8(undefined);
1205
- const updatedAtSignal = signal8(undefined);
1337
+ const actionErrorSignal = signal9(null);
1338
+ const actionStatusSignal = signal9("idle");
1339
+ const errorSignal = signal9(null);
1340
+ const isLoadingSignal = signal9(false);
1341
+ const reportSignal = signal9(undefined);
1342
+ const updatedAtSignal = signal9(undefined);
1206
1343
  const sync = () => {
1207
1344
  const snapshot = store.getSnapshot();
1208
1345
  actionErrorSignal.set(snapshot.actionError);
@@ -1222,15 +1359,15 @@ class VoiceDeliveryRuntimeService {
1222
1359
  unsubscribe();
1223
1360
  store.close();
1224
1361
  },
1225
- error: computed8(() => errorSignal()),
1226
- actionError: computed8(() => actionErrorSignal()),
1227
- actionStatus: computed8(() => actionStatusSignal()),
1228
- isLoading: computed8(() => isLoadingSignal()),
1362
+ error: computed9(() => errorSignal()),
1363
+ actionError: computed9(() => actionErrorSignal()),
1364
+ actionStatus: computed9(() => actionStatusSignal()),
1365
+ isLoading: computed9(() => isLoadingSignal()),
1229
1366
  requeueDeadLetters: store.requeueDeadLetters,
1230
1367
  refresh: store.refresh,
1231
- report: computed8(() => reportSignal()),
1368
+ report: computed9(() => reportSignal()),
1232
1369
  tick: store.tick,
1233
- updatedAt: computed8(() => updatedAtSignal())
1370
+ updatedAt: computed9(() => updatedAtSignal())
1234
1371
  };
1235
1372
  }
1236
1373
  }
@@ -1239,7 +1376,7 @@ __runInitializers(_init, 1, VoiceDeliveryRuntimeService);
1239
1376
  __decoratorMetadata(_init, VoiceDeliveryRuntimeService);
1240
1377
  let _VoiceDeliveryRuntimeService = VoiceDeliveryRuntimeService;
1241
1378
  // src/angular/voice-campaign-dialer-proof.service.ts
1242
- import { computed as computed9, Injectable as Injectable9, signal as signal9 } from "@angular/core";
1379
+ import { computed as computed10, Injectable as Injectable10, signal as signal10 } from "@angular/core";
1243
1380
 
1244
1381
  // src/client/campaignDialerProof.ts
1245
1382
  var fetchVoiceCampaignDialerProofStatus = async (path = "/api/voice/campaigns/dialer-proof", options = {}) => {
@@ -1361,18 +1498,18 @@ var createVoiceCampaignDialerProofStore = (path = "/api/voice/campaigns/dialer-p
1361
1498
 
1362
1499
  // src/angular/voice-campaign-dialer-proof.service.ts
1363
1500
  var _dec = [
1364
- Injectable9({ providedIn: "root" })
1501
+ Injectable10({ providedIn: "root" })
1365
1502
  ];
1366
1503
  var _init = __decoratorStart(undefined);
1367
1504
 
1368
1505
  class VoiceCampaignDialerProofService {
1369
1506
  connect(path = "/api/voice/campaigns/dialer-proof", options = {}) {
1370
1507
  const store = createVoiceCampaignDialerProofStore(path, options);
1371
- const errorSignal = signal9(null);
1372
- const isLoadingSignal = signal9(false);
1373
- const reportSignal = signal9(undefined);
1374
- const statusSignal = signal9(undefined);
1375
- const updatedAtSignal = signal9(undefined);
1508
+ const errorSignal = signal10(null);
1509
+ const isLoadingSignal = signal10(false);
1510
+ const reportSignal = signal10(undefined);
1511
+ const statusSignal = signal10(undefined);
1512
+ const updatedAtSignal = signal10(undefined);
1376
1513
  const sync = () => {
1377
1514
  const snapshot = store.getSnapshot();
1378
1515
  errorSignal.set(snapshot.error);
@@ -1389,13 +1526,13 @@ class VoiceCampaignDialerProofService {
1389
1526
  unsubscribe();
1390
1527
  store.close();
1391
1528
  },
1392
- error: computed9(() => errorSignal()),
1393
- isLoading: computed9(() => isLoadingSignal()),
1529
+ error: computed10(() => errorSignal()),
1530
+ isLoading: computed10(() => isLoadingSignal()),
1394
1531
  refresh: store.refresh,
1395
- report: computed9(() => reportSignal()),
1532
+ report: computed10(() => reportSignal()),
1396
1533
  runProof: store.runProof,
1397
- status: computed9(() => statusSignal()),
1398
- updatedAt: computed9(() => updatedAtSignal())
1534
+ status: computed10(() => statusSignal()),
1535
+ updatedAt: computed10(() => updatedAtSignal())
1399
1536
  };
1400
1537
  }
1401
1538
  }
@@ -1404,7 +1541,7 @@ __runInitializers(_init, 1, VoiceCampaignDialerProofService);
1404
1541
  __decoratorMetadata(_init, VoiceCampaignDialerProofService);
1405
1542
  let _VoiceCampaignDialerProofService = VoiceCampaignDialerProofService;
1406
1543
  // src/angular/voice-stream.service.ts
1407
- import { computed as computed10, Injectable as Injectable10, signal as signal10 } from "@angular/core";
1544
+ import { computed as computed11, Injectable as Injectable11, signal as signal11 } from "@angular/core";
1408
1545
 
1409
1546
  // src/client/actions.ts
1410
1547
  var normalizeErrorMessage = (value) => {
@@ -2798,24 +2935,24 @@ var createVoiceStream = (path, options = {}) => {
2798
2935
 
2799
2936
  // src/angular/voice-stream.service.ts
2800
2937
  var _dec = [
2801
- Injectable10({ providedIn: "root" })
2938
+ Injectable11({ providedIn: "root" })
2802
2939
  ];
2803
2940
  var _init = __decoratorStart(undefined);
2804
2941
 
2805
2942
  class VoiceStreamService {
2806
2943
  connect(path, options = {}) {
2807
2944
  const stream = createVoiceStream(path, options);
2808
- const assistantAudioSignal = signal10([]);
2809
- const assistantTextsSignal = signal10([]);
2810
- const callSignal = signal10(null);
2811
- const errorSignal = signal10(null);
2812
- const isConnectedSignal = signal10(false);
2813
- const partialSignal = signal10("");
2814
- const reconnectSignal = signal10(stream.reconnect);
2815
- const sessionIdSignal = signal10(stream.sessionId);
2816
- const sessionMetadataSignal = signal10(stream.sessionMetadata);
2817
- const statusSignal = signal10(stream.status);
2818
- const turnsSignal = signal10([]);
2945
+ const assistantAudioSignal = signal11([]);
2946
+ const assistantTextsSignal = signal11([]);
2947
+ const callSignal = signal11(null);
2948
+ const errorSignal = signal11(null);
2949
+ const isConnectedSignal = signal11(false);
2950
+ const partialSignal = signal11("");
2951
+ const reconnectSignal = signal11(stream.reconnect);
2952
+ const sessionIdSignal = signal11(stream.sessionId);
2953
+ const sessionMetadataSignal = signal11(stream.sessionMetadata);
2954
+ const statusSignal = signal11(stream.status);
2955
+ const turnsSignal = signal11([]);
2819
2956
  const sync = () => {
2820
2957
  assistantAudioSignal.set([...stream.assistantAudio]);
2821
2958
  assistantTextsSignal.set([...stream.assistantTexts]);
@@ -2832,24 +2969,24 @@ class VoiceStreamService {
2832
2969
  const unsubscribe = stream.subscribe(sync);
2833
2970
  sync();
2834
2971
  return {
2835
- assistantAudio: computed10(() => assistantAudioSignal()),
2836
- assistantTexts: computed10(() => assistantTextsSignal()),
2837
- call: computed10(() => callSignal()),
2972
+ assistantAudio: computed11(() => assistantAudioSignal()),
2973
+ assistantTexts: computed11(() => assistantTextsSignal()),
2974
+ call: computed11(() => callSignal()),
2838
2975
  callControl: (message) => stream.callControl(message),
2839
2976
  close: () => {
2840
2977
  unsubscribe();
2841
2978
  stream.close();
2842
2979
  },
2843
2980
  endTurn: () => stream.endTurn(),
2844
- error: computed10(() => errorSignal()),
2845
- isConnected: computed10(() => isConnectedSignal()),
2846
- partial: computed10(() => partialSignal()),
2847
- reconnect: computed10(() => reconnectSignal()),
2981
+ error: computed11(() => errorSignal()),
2982
+ isConnected: computed11(() => isConnectedSignal()),
2983
+ partial: computed11(() => partialSignal()),
2984
+ reconnect: computed11(() => reconnectSignal()),
2848
2985
  sendAudio: (audio) => stream.sendAudio(audio),
2849
- sessionId: computed10(() => sessionIdSignal()),
2850
- sessionMetadata: computed10(() => sessionMetadataSignal()),
2851
- status: computed10(() => statusSignal()),
2852
- turns: computed10(() => turnsSignal())
2986
+ sessionId: computed11(() => sessionIdSignal()),
2987
+ sessionMetadata: computed11(() => sessionMetadataSignal()),
2988
+ status: computed11(() => statusSignal()),
2989
+ turns: computed11(() => turnsSignal())
2853
2990
  };
2854
2991
  }
2855
2992
  }
@@ -2858,7 +2995,7 @@ __runInitializers(_init, 1, VoiceStreamService);
2858
2995
  __decoratorMetadata(_init, VoiceStreamService);
2859
2996
  let _VoiceStreamService = VoiceStreamService;
2860
2997
  // src/angular/voice-controller.service.ts
2861
- import { computed as computed11, Injectable as Injectable11, signal as signal11 } from "@angular/core";
2998
+ import { computed as computed12, Injectable as Injectable12, signal as signal12 } from "@angular/core";
2862
2999
 
2863
3000
  // src/client/htmx.ts
2864
3001
  var DEFAULT_EVENT_NAME = "voice-refresh";
@@ -3508,24 +3645,24 @@ var createVoiceController = (path, options = {}) => {
3508
3645
 
3509
3646
  // src/angular/voice-controller.service.ts
3510
3647
  var _dec = [
3511
- Injectable11({ providedIn: "root" })
3648
+ Injectable12({ providedIn: "root" })
3512
3649
  ];
3513
3650
  var _init = __decoratorStart(undefined);
3514
3651
 
3515
3652
  class VoiceControllerService {
3516
3653
  connect(path, options = {}) {
3517
3654
  const controller = createVoiceController(path, options);
3518
- const assistantAudioSignal = signal11([]);
3519
- const assistantTextsSignal = signal11([]);
3520
- const errorSignal = signal11(null);
3521
- const isConnectedSignal = signal11(false);
3522
- const isRecordingSignal = signal11(false);
3523
- const partialSignal = signal11("");
3524
- const reconnectSignal = signal11(controller.reconnect);
3525
- const recordingErrorSignal = signal11(null);
3526
- const sessionIdSignal = signal11(controller.sessionId);
3527
- const statusSignal = signal11(controller.status);
3528
- const turnsSignal = signal11([]);
3655
+ const assistantAudioSignal = signal12([]);
3656
+ const assistantTextsSignal = signal12([]);
3657
+ const errorSignal = signal12(null);
3658
+ const isConnectedSignal = signal12(false);
3659
+ const isRecordingSignal = signal12(false);
3660
+ const partialSignal = signal12("");
3661
+ const reconnectSignal = signal12(controller.reconnect);
3662
+ const recordingErrorSignal = signal12(null);
3663
+ const sessionIdSignal = signal12(controller.sessionId);
3664
+ const statusSignal = signal12(controller.status);
3665
+ const turnsSignal = signal12([]);
3529
3666
  const sync = () => {
3530
3667
  assistantAudioSignal.set([...controller.assistantAudio]);
3531
3668
  assistantTextsSignal.set([...controller.assistantTexts]);
@@ -3542,27 +3679,27 @@ class VoiceControllerService {
3542
3679
  const unsubscribe = controller.subscribe(sync);
3543
3680
  sync();
3544
3681
  return {
3545
- assistantAudio: computed11(() => assistantAudioSignal()),
3546
- assistantTexts: computed11(() => assistantTextsSignal()),
3682
+ assistantAudio: computed12(() => assistantAudioSignal()),
3683
+ assistantTexts: computed12(() => assistantTextsSignal()),
3547
3684
  bindHTMX: controller.bindHTMX,
3548
3685
  close: () => {
3549
3686
  unsubscribe();
3550
3687
  controller.close();
3551
3688
  },
3552
3689
  endTurn: () => controller.endTurn(),
3553
- error: computed11(() => errorSignal()),
3554
- isConnected: computed11(() => isConnectedSignal()),
3555
- isRecording: computed11(() => isRecordingSignal()),
3556
- partial: computed11(() => partialSignal()),
3557
- reconnect: computed11(() => reconnectSignal()),
3558
- recordingError: computed11(() => recordingErrorSignal()),
3690
+ error: computed12(() => errorSignal()),
3691
+ isConnected: computed12(() => isConnectedSignal()),
3692
+ isRecording: computed12(() => isRecordingSignal()),
3693
+ partial: computed12(() => partialSignal()),
3694
+ reconnect: computed12(() => reconnectSignal()),
3695
+ recordingError: computed12(() => recordingErrorSignal()),
3559
3696
  sendAudio: (audio) => controller.sendAudio(audio),
3560
- sessionId: computed11(() => sessionIdSignal()),
3697
+ sessionId: computed12(() => sessionIdSignal()),
3561
3698
  startRecording: () => controller.startRecording(),
3562
- status: computed11(() => statusSignal()),
3699
+ status: computed12(() => statusSignal()),
3563
3700
  stopRecording: () => controller.stopRecording(),
3564
3701
  toggleRecording: () => controller.toggleRecording(),
3565
- turns: computed11(() => turnsSignal())
3702
+ turns: computed12(() => turnsSignal())
3566
3703
  };
3567
3704
  }
3568
3705
  }
@@ -3571,7 +3708,7 @@ __runInitializers(_init, 1, VoiceControllerService);
3571
3708
  __decoratorMetadata(_init, VoiceControllerService);
3572
3709
  let _VoiceControllerService = VoiceControllerService;
3573
3710
  // src/angular/voice-provider-capabilities.service.ts
3574
- import { computed as computed12, Injectable as Injectable12, signal as signal12 } from "@angular/core";
3711
+ import { computed as computed13, Injectable as Injectable13, signal as signal13 } from "@angular/core";
3575
3712
 
3576
3713
  // src/client/providerCapabilities.ts
3577
3714
  var fetchVoiceProviderCapabilities = async (path = "/api/provider-capabilities", options = {}) => {
@@ -3654,17 +3791,17 @@ var createVoiceProviderCapabilitiesStore = (path = "/api/provider-capabilities",
3654
3791
 
3655
3792
  // src/angular/voice-provider-capabilities.service.ts
3656
3793
  var _dec = [
3657
- Injectable12({ providedIn: "root" })
3794
+ Injectable13({ providedIn: "root" })
3658
3795
  ];
3659
3796
  var _init = __decoratorStart(undefined);
3660
3797
 
3661
3798
  class VoiceProviderCapabilitiesService {
3662
3799
  connect(path = "/api/provider-capabilities", options = {}) {
3663
3800
  const store = createVoiceProviderCapabilitiesStore(path, options);
3664
- const errorSignal = signal12(null);
3665
- const isLoadingSignal = signal12(false);
3666
- const reportSignal = signal12(undefined);
3667
- const updatedAtSignal = signal12(undefined);
3801
+ const errorSignal = signal13(null);
3802
+ const isLoadingSignal = signal13(false);
3803
+ const reportSignal = signal13(undefined);
3804
+ const updatedAtSignal = signal13(undefined);
3668
3805
  const sync = () => {
3669
3806
  const snapshot = store.getSnapshot();
3670
3807
  errorSignal.set(snapshot.error);
@@ -3680,11 +3817,11 @@ class VoiceProviderCapabilitiesService {
3680
3817
  unsubscribe();
3681
3818
  store.close();
3682
3819
  },
3683
- error: computed12(() => errorSignal()),
3684
- isLoading: computed12(() => isLoadingSignal()),
3820
+ error: computed13(() => errorSignal()),
3821
+ isLoading: computed13(() => isLoadingSignal()),
3685
3822
  refresh: store.refresh,
3686
- report: computed12(() => reportSignal()),
3687
- updatedAt: computed12(() => updatedAtSignal())
3823
+ report: computed13(() => reportSignal()),
3824
+ updatedAt: computed13(() => updatedAtSignal())
3688
3825
  };
3689
3826
  }
3690
3827
  }
@@ -3693,7 +3830,7 @@ __runInitializers(_init, 1, VoiceProviderCapabilitiesService);
3693
3830
  __decoratorMetadata(_init, VoiceProviderCapabilitiesService);
3694
3831
  let _VoiceProviderCapabilitiesService = VoiceProviderCapabilitiesService;
3695
3832
  // src/angular/voice-provider-contracts.service.ts
3696
- import { computed as computed13, Injectable as Injectable13, signal as signal13 } from "@angular/core";
3833
+ import { computed as computed14, Injectable as Injectable14, signal as signal14 } from "@angular/core";
3697
3834
 
3698
3835
  // src/client/providerContracts.ts
3699
3836
  var fetchVoiceProviderContracts = async (path = "/api/provider-contracts", options = {}) => {
@@ -3772,17 +3909,17 @@ var createVoiceProviderContractsStore = (path = "/api/provider-contracts", optio
3772
3909
 
3773
3910
  // src/angular/voice-provider-contracts.service.ts
3774
3911
  var _dec = [
3775
- Injectable13({ providedIn: "root" })
3912
+ Injectable14({ providedIn: "root" })
3776
3913
  ];
3777
3914
  var _init = __decoratorStart(undefined);
3778
3915
 
3779
3916
  class VoiceProviderContractsService {
3780
3917
  connect(path = "/api/provider-contracts", options = {}) {
3781
3918
  const store = createVoiceProviderContractsStore(path, options);
3782
- const errorSignal = signal13(null);
3783
- const isLoadingSignal = signal13(false);
3784
- const reportSignal = signal13(undefined);
3785
- const updatedAtSignal = signal13(undefined);
3919
+ const errorSignal = signal14(null);
3920
+ const isLoadingSignal = signal14(false);
3921
+ const reportSignal = signal14(undefined);
3922
+ const updatedAtSignal = signal14(undefined);
3786
3923
  const sync = () => {
3787
3924
  const snapshot = store.getSnapshot();
3788
3925
  errorSignal.set(snapshot.error);
@@ -3798,11 +3935,11 @@ class VoiceProviderContractsService {
3798
3935
  unsubscribe();
3799
3936
  store.close();
3800
3937
  },
3801
- error: computed13(() => errorSignal()),
3802
- isLoading: computed13(() => isLoadingSignal()),
3938
+ error: computed14(() => errorSignal()),
3939
+ isLoading: computed14(() => isLoadingSignal()),
3803
3940
  refresh: store.refresh,
3804
- report: computed13(() => reportSignal()),
3805
- updatedAt: computed13(() => updatedAtSignal())
3941
+ report: computed14(() => reportSignal()),
3942
+ updatedAt: computed14(() => updatedAtSignal())
3806
3943
  };
3807
3944
  }
3808
3945
  }
@@ -3811,7 +3948,7 @@ __runInitializers(_init, 1, VoiceProviderContractsService);
3811
3948
  __decoratorMetadata(_init, VoiceProviderContractsService);
3812
3949
  let _VoiceProviderContractsService = VoiceProviderContractsService;
3813
3950
  // src/angular/voice-provider-status.service.ts
3814
- import { computed as computed14, Injectable as Injectable14, signal as signal14 } from "@angular/core";
3951
+ import { computed as computed15, Injectable as Injectable15, signal as signal15 } from "@angular/core";
3815
3952
 
3816
3953
  // src/client/providerStatus.ts
3817
3954
  var fetchVoiceProviderStatus = async (path = "/api/provider-status", options = {}) => {
@@ -3895,17 +4032,17 @@ var createVoiceProviderStatusStore = (path = "/api/provider-status", options = {
3895
4032
 
3896
4033
  // src/angular/voice-provider-status.service.ts
3897
4034
  var _dec = [
3898
- Injectable14({ providedIn: "root" })
4035
+ Injectable15({ providedIn: "root" })
3899
4036
  ];
3900
4037
  var _init = __decoratorStart(undefined);
3901
4038
 
3902
4039
  class VoiceProviderStatusService {
3903
4040
  connect(path = "/api/provider-status", options = {}) {
3904
4041
  const store = createVoiceProviderStatusStore(path, options);
3905
- const errorSignal = signal14(null);
3906
- const isLoadingSignal = signal14(false);
3907
- const providersSignal = signal14([]);
3908
- const updatedAtSignal = signal14(undefined);
4042
+ const errorSignal = signal15(null);
4043
+ const isLoadingSignal = signal15(false);
4044
+ const providersSignal = signal15([]);
4045
+ const updatedAtSignal = signal15(undefined);
3909
4046
  const sync = () => {
3910
4047
  const snapshot = store.getSnapshot();
3911
4048
  errorSignal.set(snapshot.error);
@@ -3921,11 +4058,11 @@ class VoiceProviderStatusService {
3921
4058
  unsubscribe();
3922
4059
  store.close();
3923
4060
  },
3924
- error: computed14(() => errorSignal()),
3925
- isLoading: computed14(() => isLoadingSignal()),
3926
- providers: computed14(() => providersSignal()),
4061
+ error: computed15(() => errorSignal()),
4062
+ isLoading: computed15(() => isLoadingSignal()),
4063
+ providers: computed15(() => providersSignal()),
3927
4064
  refresh: store.refresh,
3928
- updatedAt: computed14(() => updatedAtSignal())
4065
+ updatedAt: computed15(() => updatedAtSignal())
3929
4066
  };
3930
4067
  }
3931
4068
  }
@@ -3934,7 +4071,7 @@ __runInitializers(_init, 1, VoiceProviderStatusService);
3934
4071
  __decoratorMetadata(_init, VoiceProviderStatusService);
3935
4072
  let _VoiceProviderStatusService = VoiceProviderStatusService;
3936
4073
  // src/angular/voice-routing-status.service.ts
3937
- import { Injectable as Injectable15, signal as signal15 } from "@angular/core";
4074
+ import { Injectable as Injectable16, signal as signal16 } from "@angular/core";
3938
4075
 
3939
4076
  // src/client/routingStatus.ts
3940
4077
  var fetchVoiceRoutingStatus = async (path = "/api/routing/latest", options = {}) => {
@@ -4018,17 +4155,17 @@ var createVoiceRoutingStatusStore = (path = "/api/routing/latest", options = {})
4018
4155
 
4019
4156
  // src/angular/voice-routing-status.service.ts
4020
4157
  var _dec = [
4021
- Injectable15({ providedIn: "root" })
4158
+ Injectable16({ providedIn: "root" })
4022
4159
  ];
4023
4160
  var _init = __decoratorStart(undefined);
4024
4161
 
4025
4162
  class VoiceRoutingStatusService {
4026
4163
  connect(path = "/api/routing/latest", options = {}) {
4027
4164
  const store = createVoiceRoutingStatusStore(path, options);
4028
- const decisionSignal = signal15(null);
4029
- const errorSignal = signal15(null);
4030
- const isLoadingSignal = signal15(false);
4031
- const updatedAtSignal = signal15(undefined);
4165
+ const decisionSignal = signal16(null);
4166
+ const errorSignal = signal16(null);
4167
+ const isLoadingSignal = signal16(false);
4168
+ const updatedAtSignal = signal16(undefined);
4032
4169
  const sync = () => {
4033
4170
  const snapshot = store.getSnapshot();
4034
4171
  decisionSignal.set(snapshot.decision);
@@ -4057,7 +4194,7 @@ __runInitializers(_init, 1, VoiceRoutingStatusService);
4057
4194
  __decoratorMetadata(_init, VoiceRoutingStatusService);
4058
4195
  let _VoiceRoutingStatusService = VoiceRoutingStatusService;
4059
4196
  // src/angular/voice-trace-timeline.service.ts
4060
- import { computed as computed15, Injectable as Injectable16, signal as signal16 } from "@angular/core";
4197
+ import { computed as computed16, Injectable as Injectable17, signal as signal17 } from "@angular/core";
4061
4198
 
4062
4199
  // src/client/traceTimeline.ts
4063
4200
  var fetchVoiceTraceTimeline = async (path = "/api/voice-traces", options = {}) => {
@@ -4141,17 +4278,17 @@ var createVoiceTraceTimelineStore = (path = "/api/voice-traces", options = {}) =
4141
4278
 
4142
4279
  // src/angular/voice-trace-timeline.service.ts
4143
4280
  var _dec = [
4144
- Injectable16({ providedIn: "root" })
4281
+ Injectable17({ providedIn: "root" })
4145
4282
  ];
4146
4283
  var _init = __decoratorStart(undefined);
4147
4284
 
4148
4285
  class VoiceTraceTimelineService {
4149
4286
  connect(path = "/api/voice-traces", options = {}) {
4150
4287
  const store = createVoiceTraceTimelineStore(path, options);
4151
- const errorSignal = signal16(null);
4152
- const isLoadingSignal = signal16(false);
4153
- const reportSignal = signal16(null);
4154
- const updatedAtSignal = signal16(undefined);
4288
+ const errorSignal = signal17(null);
4289
+ const isLoadingSignal = signal17(false);
4290
+ const reportSignal = signal17(null);
4291
+ const updatedAtSignal = signal17(undefined);
4155
4292
  const sync = () => {
4156
4293
  const snapshot = store.getSnapshot();
4157
4294
  errorSignal.set(snapshot.error);
@@ -4167,11 +4304,11 @@ class VoiceTraceTimelineService {
4167
4304
  unsubscribe();
4168
4305
  store.close();
4169
4306
  },
4170
- error: computed15(() => errorSignal()),
4171
- isLoading: computed15(() => isLoadingSignal()),
4307
+ error: computed16(() => errorSignal()),
4308
+ isLoading: computed16(() => isLoadingSignal()),
4172
4309
  refresh: store.refresh,
4173
- report: computed15(() => reportSignal()),
4174
- updatedAt: computed15(() => updatedAtSignal())
4310
+ report: computed16(() => reportSignal()),
4311
+ updatedAt: computed16(() => updatedAtSignal())
4175
4312
  };
4176
4313
  }
4177
4314
  }
@@ -4180,7 +4317,7 @@ __runInitializers(_init, 1, VoiceTraceTimelineService);
4180
4317
  __decoratorMetadata(_init, VoiceTraceTimelineService);
4181
4318
  let _VoiceTraceTimelineService = VoiceTraceTimelineService;
4182
4319
  // src/angular/voice-agent-squad-status.service.ts
4183
- import { computed as computed16, Injectable as Injectable17, signal as signal17 } from "@angular/core";
4320
+ import { computed as computed17, Injectable as Injectable18, signal as signal18 } from "@angular/core";
4184
4321
 
4185
4322
  // src/client/agentSquadStatus.ts
4186
4323
  var getString = (value) => typeof value === "string" && value.trim() ? value.trim() : undefined;
@@ -4258,17 +4395,17 @@ var createVoiceAgentSquadStatusStore = (path = "/api/voice-traces", options = {}
4258
4395
 
4259
4396
  // src/angular/voice-agent-squad-status.service.ts
4260
4397
  var _dec = [
4261
- Injectable17({ providedIn: "root" })
4398
+ Injectable18({ providedIn: "root" })
4262
4399
  ];
4263
4400
  var _init = __decoratorStart(undefined);
4264
4401
 
4265
4402
  class VoiceAgentSquadStatusService {
4266
4403
  connect(path = "/api/voice-traces", options = {}) {
4267
4404
  const store = createVoiceAgentSquadStatusStore(path, options);
4268
- const errorSignal = signal17(null);
4269
- const isLoadingSignal = signal17(false);
4270
- const reportSignal = signal17(undefined);
4271
- const updatedAtSignal = signal17(undefined);
4405
+ const errorSignal = signal18(null);
4406
+ const isLoadingSignal = signal18(false);
4407
+ const reportSignal = signal18(undefined);
4408
+ const updatedAtSignal = signal18(undefined);
4272
4409
  const sync = () => {
4273
4410
  const snapshot = store.getSnapshot();
4274
4411
  errorSignal.set(snapshot.error);
@@ -4284,12 +4421,12 @@ class VoiceAgentSquadStatusService {
4284
4421
  unsubscribe();
4285
4422
  store.close();
4286
4423
  },
4287
- current: computed16(() => reportSignal()?.current),
4288
- error: computed16(() => errorSignal()),
4289
- isLoading: computed16(() => isLoadingSignal()),
4424
+ current: computed17(() => reportSignal()?.current),
4425
+ error: computed17(() => errorSignal()),
4426
+ isLoading: computed17(() => isLoadingSignal()),
4290
4427
  refresh: store.refresh,
4291
- report: computed16(() => reportSignal()),
4292
- updatedAt: computed16(() => updatedAtSignal())
4428
+ report: computed17(() => reportSignal()),
4429
+ updatedAt: computed17(() => updatedAtSignal())
4293
4430
  };
4294
4431
  }
4295
4432
  }
@@ -4298,7 +4435,7 @@ __runInitializers(_init, 1, VoiceAgentSquadStatusService);
4298
4435
  __decoratorMetadata(_init, VoiceAgentSquadStatusService);
4299
4436
  let _VoiceAgentSquadStatusService = VoiceAgentSquadStatusService;
4300
4437
  // src/angular/voice-turn-latency.service.ts
4301
- import { computed as computed17, Injectable as Injectable18, signal as signal18 } from "@angular/core";
4438
+ import { computed as computed18, Injectable as Injectable19, signal as signal19 } from "@angular/core";
4302
4439
 
4303
4440
  // src/client/turnLatency.ts
4304
4441
  var fetchVoiceTurnLatency = async (path = "/api/turn-latency", options = {}) => {
@@ -4405,17 +4542,17 @@ var createVoiceTurnLatencyStore = (path = "/api/turn-latency", options = {}) =>
4405
4542
 
4406
4543
  // src/angular/voice-turn-latency.service.ts
4407
4544
  var _dec = [
4408
- Injectable18({ providedIn: "root" })
4545
+ Injectable19({ providedIn: "root" })
4409
4546
  ];
4410
4547
  var _init = __decoratorStart(undefined);
4411
4548
 
4412
4549
  class VoiceTurnLatencyService {
4413
4550
  connect(path = "/api/turn-latency", options = {}) {
4414
4551
  const store = createVoiceTurnLatencyStore(path, options);
4415
- const errorSignal = signal18(null);
4416
- const isLoadingSignal = signal18(false);
4417
- const reportSignal = signal18(undefined);
4418
- const updatedAtSignal = signal18(undefined);
4552
+ const errorSignal = signal19(null);
4553
+ const isLoadingSignal = signal19(false);
4554
+ const reportSignal = signal19(undefined);
4555
+ const updatedAtSignal = signal19(undefined);
4419
4556
  const sync = () => {
4420
4557
  const snapshot = store.getSnapshot();
4421
4558
  errorSignal.set(snapshot.error);
@@ -4431,12 +4568,12 @@ class VoiceTurnLatencyService {
4431
4568
  unsubscribe();
4432
4569
  store.close();
4433
4570
  },
4434
- error: computed17(() => errorSignal()),
4435
- isLoading: computed17(() => isLoadingSignal()),
4571
+ error: computed18(() => errorSignal()),
4572
+ isLoading: computed18(() => isLoadingSignal()),
4436
4573
  refresh: store.refresh,
4437
- report: computed17(() => reportSignal()),
4574
+ report: computed18(() => reportSignal()),
4438
4575
  runProof: store.runProof,
4439
- updatedAt: computed17(() => updatedAtSignal())
4576
+ updatedAt: computed18(() => updatedAtSignal())
4440
4577
  };
4441
4578
  }
4442
4579
  }
@@ -4445,7 +4582,7 @@ __runInitializers(_init, 1, VoiceTurnLatencyService);
4445
4582
  __decoratorMetadata(_init, VoiceTurnLatencyService);
4446
4583
  let _VoiceTurnLatencyService = VoiceTurnLatencyService;
4447
4584
  // src/angular/voice-turn-quality.service.ts
4448
- import { computed as computed18, Injectable as Injectable19, signal as signal19 } from "@angular/core";
4585
+ import { computed as computed19, Injectable as Injectable20, signal as signal20 } from "@angular/core";
4449
4586
 
4450
4587
  // src/client/turnQuality.ts
4451
4588
  var fetchVoiceTurnQuality = async (path = "/api/turn-quality", options = {}) => {
@@ -4528,17 +4665,17 @@ var createVoiceTurnQualityStore = (path = "/api/turn-quality", options = {}) =>
4528
4665
 
4529
4666
  // src/angular/voice-turn-quality.service.ts
4530
4667
  var _dec = [
4531
- Injectable19({ providedIn: "root" })
4668
+ Injectable20({ providedIn: "root" })
4532
4669
  ];
4533
4670
  var _init = __decoratorStart(undefined);
4534
4671
 
4535
4672
  class VoiceTurnQualityService {
4536
4673
  connect(path = "/api/turn-quality", options = {}) {
4537
4674
  const store = createVoiceTurnQualityStore(path, options);
4538
- const errorSignal = signal19(null);
4539
- const isLoadingSignal = signal19(false);
4540
- const reportSignal = signal19(undefined);
4541
- const updatedAtSignal = signal19(undefined);
4675
+ const errorSignal = signal20(null);
4676
+ const isLoadingSignal = signal20(false);
4677
+ const reportSignal = signal20(undefined);
4678
+ const updatedAtSignal = signal20(undefined);
4542
4679
  const sync = () => {
4543
4680
  const snapshot = store.getSnapshot();
4544
4681
  errorSignal.set(snapshot.error);
@@ -4554,11 +4691,11 @@ class VoiceTurnQualityService {
4554
4691
  unsubscribe();
4555
4692
  store.close();
4556
4693
  },
4557
- error: computed18(() => errorSignal()),
4558
- isLoading: computed18(() => isLoadingSignal()),
4694
+ error: computed19(() => errorSignal()),
4695
+ isLoading: computed19(() => isLoadingSignal()),
4559
4696
  refresh: store.refresh,
4560
- report: computed18(() => reportSignal()),
4561
- updatedAt: computed18(() => updatedAtSignal())
4697
+ report: computed19(() => reportSignal()),
4698
+ updatedAt: computed19(() => updatedAtSignal())
4562
4699
  };
4563
4700
  }
4564
4701
  }
@@ -4567,7 +4704,7 @@ __runInitializers(_init, 1, VoiceTurnQualityService);
4567
4704
  __decoratorMetadata(_init, VoiceTurnQualityService);
4568
4705
  let _VoiceTurnQualityService = VoiceTurnQualityService;
4569
4706
  // src/angular/voice-workflow-status.service.ts
4570
- import { computed as computed19, Injectable as Injectable20, signal as signal20 } from "@angular/core";
4707
+ import { computed as computed20, Injectable as Injectable21, signal as signal21 } from "@angular/core";
4571
4708
 
4572
4709
  // src/client/workflowStatus.ts
4573
4710
  var fetchVoiceWorkflowStatus = async (path = "/evals/scenarios/json", options = {}) => {
@@ -4650,17 +4787,17 @@ var createVoiceWorkflowStatusStore = (path = "/evals/scenarios/json", options =
4650
4787
 
4651
4788
  // src/angular/voice-workflow-status.service.ts
4652
4789
  var _dec = [
4653
- Injectable20({ providedIn: "root" })
4790
+ Injectable21({ providedIn: "root" })
4654
4791
  ];
4655
4792
  var _init = __decoratorStart(undefined);
4656
4793
 
4657
4794
  class VoiceWorkflowStatusService {
4658
4795
  connect(path = "/evals/scenarios/json", options = {}) {
4659
4796
  const store = createVoiceWorkflowStatusStore(path, options);
4660
- const errorSignal = signal20(null);
4661
- const isLoadingSignal = signal20(false);
4662
- const reportSignal = signal20(undefined);
4663
- const updatedAtSignal = signal20(undefined);
4797
+ const errorSignal = signal21(null);
4798
+ const isLoadingSignal = signal21(false);
4799
+ const reportSignal = signal21(undefined);
4800
+ const updatedAtSignal = signal21(undefined);
4664
4801
  const sync = () => {
4665
4802
  const snapshot = store.getSnapshot();
4666
4803
  errorSignal.set(snapshot.error);
@@ -4678,11 +4815,11 @@ class VoiceWorkflowStatusService {
4678
4815
  unsubscribe();
4679
4816
  store.close();
4680
4817
  },
4681
- error: computed19(() => errorSignal()),
4682
- isLoading: computed19(() => isLoadingSignal()),
4818
+ error: computed20(() => errorSignal()),
4819
+ isLoading: computed20(() => isLoadingSignal()),
4683
4820
  refresh: store.refresh,
4684
- report: computed19(() => reportSignal()),
4685
- updatedAt: computed19(() => updatedAtSignal())
4821
+ report: computed20(() => reportSignal()),
4822
+ updatedAt: computed20(() => updatedAtSignal())
4686
4823
  };
4687
4824
  }
4688
4825
  }
@@ -4696,6 +4833,7 @@ export {
4696
4833
  VoiceTurnLatencyService,
4697
4834
  VoiceTraceTimelineService,
4698
4835
  VoiceStreamService,
4836
+ VoiceSessionSnapshotService,
4699
4837
  VoiceRoutingStatusService,
4700
4838
  VoiceReadinessFailuresService,
4701
4839
  VoiceProviderStatusService,