@absolutejs/voice 0.0.22-beta.126 → 0.0.22-beta.128

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/README.md +255 -26
  2. package/dist/agent.d.ts +5 -0
  3. package/dist/angular/index.d.ts +1 -1
  4. package/dist/angular/index.js +16 -16
  5. package/dist/angular/voice-ops-status.service.d.ts +12 -0
  6. package/dist/audit.d.ts +128 -0
  7. package/dist/auditDeliveryRoutes.d.ts +85 -0
  8. package/dist/auditExport.d.ts +34 -0
  9. package/dist/auditRoutes.d.ts +66 -0
  10. package/dist/auditSinks.d.ts +133 -0
  11. package/dist/client/index.d.ts +2 -2
  12. package/dist/client/index.js +11 -11
  13. package/dist/client/opsStatus.d.ts +19 -0
  14. package/dist/client/opsStatusWidget.d.ts +7 -7
  15. package/dist/dataControl.d.ts +47 -0
  16. package/dist/demoReadyRoutes.d.ts +98 -0
  17. package/dist/fileStore.d.ts +8 -2
  18. package/dist/index.d.ts +27 -6
  19. package/dist/index.js +15193 -12626
  20. package/dist/openaiRealtime.d.ts +27 -0
  21. package/dist/opsStatus.d.ts +65 -0
  22. package/dist/opsStatusRoutes.d.ts +33 -0
  23. package/dist/phoneAgent.d.ts +4 -0
  24. package/dist/phoneAgentProductionSmoke.d.ts +115 -0
  25. package/dist/postgresStore.d.ts +8 -2
  26. package/dist/productionReadiness.d.ts +82 -0
  27. package/dist/react/index.d.ts +1 -1
  28. package/dist/react/index.js +16 -16
  29. package/dist/react/useVoiceOpsStatus.d.ts +8 -0
  30. package/dist/sqliteStore.d.ts +8 -2
  31. package/dist/svelte/createVoiceOpsStatus.d.ts +2 -2
  32. package/dist/svelte/index.d.ts +0 -1
  33. package/dist/svelte/index.js +72 -75
  34. package/dist/telephony/twilio.d.ts +3 -2
  35. package/dist/testing/index.js +74 -21
  36. package/dist/traceDeliveryRoutes.d.ts +86 -0
  37. package/dist/types.d.ts +6 -2
  38. package/dist/vue/index.d.ts +1 -1
  39. package/dist/vue/index.js +15 -15
  40. package/dist/vue/useVoiceOpsStatus.d.ts +9 -0
  41. package/package.json +1 -1
  42. package/dist/angular/voice-app-kit-status.service.d.ts +0 -12
  43. package/dist/appKit.d.ts +0 -100
  44. package/dist/client/appKitStatus.d.ts +0 -19
  45. package/dist/react/useVoiceAppKitStatus.d.ts +0 -8
  46. package/dist/svelte/createVoiceAppKitStatus.d.ts +0 -8
  47. package/dist/vue/useVoiceAppKitStatus.d.ts +0 -9
package/dist/vue/index.js CHANGED
@@ -72,16 +72,16 @@ var __decorateElement = (array, flags, name, decorators, target, extra) => {
72
72
  // src/vue/VoiceOpsStatus.ts
73
73
  import { defineComponent, h } from "vue";
74
74
 
75
- // src/client/appKitStatus.ts
76
- var fetchVoiceAppKitStatus = async (path = "/app-kit/status", options = {}) => {
75
+ // src/client/opsStatus.ts
76
+ var fetchVoiceOpsStatus = async (path = "/api/voice/ops-status", options = {}) => {
77
77
  const fetchImpl = options.fetch ?? globalThis.fetch;
78
78
  const response = await fetchImpl(path);
79
79
  if (!response.ok) {
80
- throw new Error(`Voice app kit status failed: HTTP ${response.status}`);
80
+ throw new Error(`Voice ops status failed: HTTP ${response.status}`);
81
81
  }
82
82
  return await response.json();
83
83
  };
84
- var createVoiceAppKitStatusStore = (path = "/app-kit/status", options = {}) => {
84
+ var createVoiceOpsStatusStore = (path = "/api/voice/ops-status", options = {}) => {
85
85
  const listeners = new Set;
86
86
  let closed = false;
87
87
  let timer;
@@ -105,7 +105,7 @@ var createVoiceAppKitStatusStore = (path = "/app-kit/status", options = {}) => {
105
105
  };
106
106
  emit();
107
107
  try {
108
- const report = await fetchVoiceAppKitStatus(path, options);
108
+ const report = await fetchVoiceOpsStatus(path, options);
109
109
  snapshot = {
110
110
  error: null,
111
111
  isLoading: false,
@@ -153,7 +153,7 @@ var createVoiceAppKitStatusStore = (path = "/app-kit/status", options = {}) => {
153
153
 
154
154
  // src/client/opsStatusWidget.ts
155
155
  var DEFAULT_TITLE = "Voice Ops Status";
156
- var DEFAULT_DESCRIPTION = "Certified workflow, provider, and handoff readiness from the AbsoluteJS voice app kit.";
156
+ var DEFAULT_DESCRIPTION = "Certified workflow, provider, and handoff readiness from your AbsoluteJS voice app.";
157
157
  var SURFACE_LABELS = {
158
158
  handoffs: "Handoffs",
159
159
  providers: "Providers",
@@ -238,8 +238,8 @@ var renderVoiceOpsStatusHTML = (snapshot, options = {}) => {
238
238
  </section>`;
239
239
  };
240
240
  var getVoiceOpsStatusCSS = () => `.absolute-voice-ops-status{border:1px solid #d8d2c4;border-radius:20px;background:#fffaf0;color:#16130d;padding:18px;box-shadow:0 18px 40px rgba(47,37,18,.12);font-family:inherit}.absolute-voice-ops-status--fail,.absolute-voice-ops-status--error{border-color:#f2a7a7;background:#fff5f3}.absolute-voice-ops-status__header{align-items:start;display:flex;gap:12px;justify-content:space-between}.absolute-voice-ops-status__eyebrow{color:#73664f;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.absolute-voice-ops-status__label{font-size:28px;line-height:1}.absolute-voice-ops-status__description{color:#514733;margin:12px 0 0}.absolute-voice-ops-status__summary,.absolute-voice-ops-status__links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.absolute-voice-ops-status__summary span,.absolute-voice-ops-status__links a{border:1px solid #e6ddca;border-radius:999px;color:inherit;padding:6px 10px;text-decoration:none}.absolute-voice-ops-status__surfaces{display:grid;gap:8px;list-style:none;margin:16px 0 0;padding:0}.absolute-voice-ops-status__surface{align-items:center;background:#fff;border:1px solid #eee4d2;border-radius:14px;display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.absolute-voice-ops-status__surface--fail{border-color:#f2a7a7}.absolute-voice-ops-status__surface span{color:#655944}.absolute-voice-ops-status__error{color:#9f1239;font-weight:700}`;
241
- var mountVoiceOpsStatus = (element, path = "/app-kit/status", options = {}) => {
242
- const store = createVoiceAppKitStatusStore(path, options);
241
+ var mountVoiceOpsStatus = (element, path = "/api/voice/ops-status", options = {}) => {
242
+ const store = createVoiceOpsStatusStore(path, options);
243
243
  const render = () => {
244
244
  element.innerHTML = renderVoiceOpsStatusHTML(store.getSnapshot(), options);
245
245
  };
@@ -262,7 +262,7 @@ var defineVoiceOpsStatusElement = (tagName = "absolute-voice-ops-status") => {
262
262
  mounted;
263
263
  connectedCallback() {
264
264
  const intervalMs = Number(this.getAttribute("interval-ms") ?? 5000);
265
- this.mounted = mountVoiceOpsStatus(this, this.getAttribute("path") ?? "/app-kit/status", {
265
+ this.mounted = mountVoiceOpsStatus(this, this.getAttribute("path") ?? "/api/voice/ops-status", {
266
266
  description: this.getAttribute("description") ?? undefined,
267
267
  includeLinks: this.getAttribute("include-links") !== "false",
268
268
  intervalMs: Number.isFinite(intervalMs) ? intervalMs : 5000,
@@ -276,10 +276,10 @@ var defineVoiceOpsStatusElement = (tagName = "absolute-voice-ops-status") => {
276
276
  });
277
277
  };
278
278
 
279
- // src/vue/useVoiceAppKitStatus.ts
279
+ // src/vue/useVoiceOpsStatus.ts
280
280
  import { onUnmounted, ref, shallowRef } from "vue";
281
- function useVoiceAppKitStatus(path = "/app-kit/status", options = {}) {
282
- const store = createVoiceAppKitStatusStore(path, options);
281
+ function useVoiceOpsStatus(path = "/api/voice/ops-status", options = {}) {
282
+ const store = createVoiceOpsStatusStore(path, options);
283
283
  const error = ref(null);
284
284
  const isLoading = ref(false);
285
285
  const report = shallowRef(undefined);
@@ -320,7 +320,7 @@ var VoiceOpsStatus = defineComponent({
320
320
  },
321
321
  intervalMs: Number,
322
322
  path: {
323
- default: "/app-kit/status",
323
+ default: "/api/voice/ops-status",
324
324
  type: String
325
325
  },
326
326
  title: String
@@ -332,7 +332,7 @@ var VoiceOpsStatus = defineComponent({
332
332
  intervalMs: props.intervalMs,
333
333
  title: props.title
334
334
  };
335
- const status = useVoiceAppKitStatus(props.path, options);
335
+ const status = useVoiceOpsStatus(props.path, options);
336
336
  return () => {
337
337
  const model = createVoiceOpsStatusViewModel({
338
338
  error: status.error.value,
@@ -3754,9 +3754,9 @@ export {
3754
3754
  useVoiceProviderStatus,
3755
3755
  useVoiceProviderSimulationControls,
3756
3756
  useVoiceProviderCapabilities,
3757
+ useVoiceOpsStatus,
3757
3758
  useVoiceController,
3758
3759
  useVoiceCampaignDialerProof,
3759
- useVoiceAppKitStatus,
3760
3760
  VoiceTurnQuality,
3761
3761
  VoiceTurnLatency,
3762
3762
  VoiceRoutingStatus,
@@ -0,0 +1,9 @@
1
+ import { type VoiceOpsStatusClientOptions } from '../client/opsStatus';
2
+ import type { VoiceOpsStatusReport } from '../opsStatus';
3
+ export declare function useVoiceOpsStatus(path?: string, options?: VoiceOpsStatusClientOptions): {
4
+ error: import("vue").Ref<string | null, string | null>;
5
+ isLoading: import("vue").Ref<boolean, boolean>;
6
+ refresh: () => Promise<VoiceOpsStatusReport | undefined>;
7
+ report: import("vue").ShallowRef<VoiceOpsStatusReport | undefined, VoiceOpsStatusReport | undefined>;
8
+ updatedAt: import("vue").Ref<number | undefined, number | undefined>;
9
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@absolutejs/voice",
3
- "version": "0.0.22-beta.126",
3
+ "version": "0.0.22-beta.128",
4
4
  "description": "Voice primitives and Elysia plugin for AbsoluteJS",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,12 +0,0 @@
1
- import { type VoiceAppKitStatusClientOptions } from '../client/appKitStatus';
2
- import type { VoiceAppKitStatusReport } from '../appKit';
3
- export declare class VoiceAppKitStatusService {
4
- connect(path?: string, options?: VoiceAppKitStatusClientOptions): {
5
- close: () => void;
6
- error: import("@angular/core").Signal<string | null>;
7
- isLoading: import("@angular/core").Signal<boolean>;
8
- refresh: () => Promise<VoiceAppKitStatusReport | undefined>;
9
- report: import("@angular/core").Signal<VoiceAppKitStatusReport | undefined>;
10
- updatedAt: import("@angular/core").Signal<number | undefined>;
11
- };
12
- }
package/dist/appKit.d.ts DELETED
@@ -1,100 +0,0 @@
1
- import { Elysia } from 'elysia';
2
- import { type VoiceAssistantHealthRoutesOptions } from './assistantHealth';
3
- import { type VoiceBargeInRoutesOptions } from './bargeInRoutes';
4
- import { type VoiceDiagnosticsRoutesOptions } from './diagnosticsRoutes';
5
- import { type VoiceEvalRoutesOptions, type VoiceEvalLink } from './evalRoutes';
6
- import { type VoiceHandoffHealthRoutesOptions } from './handoffHealth';
7
- import { type VoiceOpsConsoleRoutesOptions } from './opsConsoleRoutes';
8
- import { type VoiceProviderHealthRoutesOptions } from './providerHealth';
9
- import { type VoiceProviderCapabilityRoutesOptions } from './providerCapabilities';
10
- import { type VoiceProductionReadinessRoutesOptions } from './productionReadiness';
11
- import { type VoiceQualityRoutesOptions } from './qualityRoutes';
12
- import { type VoiceResilienceRoutesOptions } from './resilienceRoutes';
13
- import { type VoiceSessionListRoutesOptions, type VoiceSessionReplayRoutesOptions } from './sessionReplay';
14
- import { type VoiceTraceEventStore } from './trace';
15
- import { type VoiceTraceTimelineRoutesOptions } from './traceTimeline';
16
- export type VoiceAppKitSurface = 'assistantHealth' | 'bargeIn' | 'diagnostics' | 'evals' | 'handoffs' | 'opsConsole' | 'providerCapabilities' | 'providerHealth' | 'productionReadiness' | 'quality' | 'resilience' | 'sessionReplay' | 'sessions' | 'traceTimeline';
17
- export type VoiceAppKitLink = VoiceEvalLink & {
18
- description?: string;
19
- statusHref?: string;
20
- };
21
- export type VoiceAppKitRoutesOptions<TProvider extends string = string> = {
22
- appStatus?: false | VoiceAppKitStatusOptions;
23
- assistantHealth?: false | Partial<VoiceAssistantHealthRoutesOptions<TProvider>>;
24
- bargeIn?: false | Partial<VoiceBargeInRoutesOptions>;
25
- diagnostics?: false | Partial<Omit<VoiceDiagnosticsRoutesOptions, 'store'>>;
26
- evals?: false | Partial<VoiceEvalRoutesOptions>;
27
- handoffs?: false | Partial<VoiceHandoffHealthRoutesOptions>;
28
- headers?: HeadersInit;
29
- links?: VoiceAppKitLink[];
30
- llmProviders?: readonly TProvider[];
31
- name?: string;
32
- opsConsole?: false | Partial<VoiceOpsConsoleRoutesOptions>;
33
- providerCapabilities?: false | Partial<VoiceProviderCapabilityRoutesOptions<TProvider>>;
34
- providerHealth?: false | Partial<VoiceProviderHealthRoutesOptions<TProvider>>;
35
- productionReadiness?: false | Partial<VoiceProductionReadinessRoutesOptions>;
36
- quality?: false | Partial<VoiceQualityRoutesOptions>;
37
- resilience?: false | Partial<VoiceResilienceRoutesOptions>;
38
- sessionReplay?: false | Partial<VoiceSessionReplayRoutesOptions>;
39
- sessions?: false | Partial<VoiceSessionListRoutesOptions>;
40
- store: VoiceTraceEventStore;
41
- sttProviders?: readonly string[];
42
- title?: string;
43
- traceTimeline?: false | Partial<VoiceTraceTimelineRoutesOptions>;
44
- ttsProviders?: readonly string[];
45
- };
46
- export type VoiceAppKitStatus = 'pass' | 'fail';
47
- export type VoiceAppKitStatusOptions = {
48
- include?: {
49
- handoffs?: boolean;
50
- providers?: boolean;
51
- quality?: boolean;
52
- sessions?: boolean;
53
- workflows?: boolean;
54
- };
55
- path?: string;
56
- preferFixtureWorkflows?: boolean;
57
- };
58
- export type VoiceAppKitStatusReport = {
59
- checkedAt: number;
60
- failed: number;
61
- links: VoiceAppKitLink[];
62
- passed: number;
63
- status: VoiceAppKitStatus;
64
- surfaces: {
65
- handoffs?: {
66
- failed: number;
67
- status: VoiceAppKitStatus;
68
- total: number;
69
- };
70
- providers?: {
71
- degraded: number;
72
- status: VoiceAppKitStatus;
73
- total: number;
74
- };
75
- quality?: {
76
- status: VoiceAppKitStatus;
77
- };
78
- sessions?: {
79
- failed: number;
80
- status: VoiceAppKitStatus;
81
- total: number;
82
- };
83
- workflows?: {
84
- failed: number;
85
- source: 'fixtures' | 'live';
86
- status: VoiceAppKitStatus;
87
- total: number;
88
- };
89
- };
90
- total: number;
91
- };
92
- export type VoiceAppKitRoutes<TProvider extends string = string> = {
93
- links: VoiceAppKitLink[];
94
- routes: Elysia;
95
- surfaces: VoiceAppKitSurface[];
96
- use: Elysia['use'];
97
- };
98
- export declare const summarizeVoiceAppKitStatus: <TProvider extends string = string>(options: VoiceAppKitRoutesOptions<TProvider>) => Promise<VoiceAppKitStatusReport>;
99
- export declare const createVoiceAppKitRoutes: <TProvider extends string = string>(options: VoiceAppKitRoutesOptions<TProvider>) => VoiceAppKitRoutes<TProvider>;
100
- export declare const createVoiceAppKit: <TProvider extends string = string>(options: VoiceAppKitRoutesOptions<TProvider>) => VoiceAppKitRoutes<TProvider>;
@@ -1,19 +0,0 @@
1
- import type { VoiceAppKitStatusReport } from '../appKit';
2
- export type VoiceAppKitStatusClientOptions = {
3
- fetch?: typeof fetch;
4
- intervalMs?: number;
5
- };
6
- export type VoiceAppKitStatusSnapshot = {
7
- error: string | null;
8
- isLoading: boolean;
9
- report?: VoiceAppKitStatusReport;
10
- updatedAt?: number;
11
- };
12
- export declare const fetchVoiceAppKitStatus: (path?: string, options?: Pick<VoiceAppKitStatusClientOptions, "fetch">) => Promise<VoiceAppKitStatusReport>;
13
- export declare const createVoiceAppKitStatusStore: (path?: string, options?: VoiceAppKitStatusClientOptions) => {
14
- close: () => void;
15
- getServerSnapshot: () => VoiceAppKitStatusSnapshot;
16
- getSnapshot: () => VoiceAppKitStatusSnapshot;
17
- refresh: () => Promise<VoiceAppKitStatusReport | undefined>;
18
- subscribe: (listener: () => void) => () => void;
19
- };
@@ -1,8 +0,0 @@
1
- import { type VoiceAppKitStatusClientOptions } from '../client/appKitStatus';
2
- export declare const useVoiceAppKitStatus: (path?: string, options?: VoiceAppKitStatusClientOptions) => {
3
- refresh: () => Promise<import("..").VoiceAppKitStatusReport | undefined>;
4
- error: string | null;
5
- isLoading: boolean;
6
- report?: import("..").VoiceAppKitStatusReport;
7
- updatedAt?: number;
8
- };
@@ -1,8 +0,0 @@
1
- import type { VoiceAppKitStatusClientOptions } from '../client/appKitStatus';
2
- export declare const createVoiceAppKitStatus: (path?: string, options?: VoiceAppKitStatusClientOptions) => {
3
- close: () => void;
4
- getServerSnapshot: () => import("../client").VoiceAppKitStatusSnapshot;
5
- getSnapshot: () => import("../client").VoiceAppKitStatusSnapshot;
6
- refresh: () => Promise<import("..").VoiceAppKitStatusReport | undefined>;
7
- subscribe: (listener: () => void) => () => void;
8
- };
@@ -1,9 +0,0 @@
1
- import { type VoiceAppKitStatusClientOptions } from '../client/appKitStatus';
2
- import type { VoiceAppKitStatusReport } from '../appKit';
3
- export declare function useVoiceAppKitStatus(path?: string, options?: VoiceAppKitStatusClientOptions): {
4
- error: import("vue").Ref<string | null, string | null>;
5
- isLoading: import("vue").Ref<boolean, boolean>;
6
- refresh: () => Promise<VoiceAppKitStatusReport | undefined>;
7
- report: import("vue").ShallowRef<VoiceAppKitStatusReport | undefined, VoiceAppKitStatusReport | undefined>;
8
- updatedAt: import("vue").Ref<number | undefined, number | undefined>;
9
- };