@h-ear/core 1.0.16 → 1.0.18

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.
@@ -87,16 +87,25 @@ export declare class HearApiClient {
87
87
  */
88
88
  submitClassifyChunked(chunks: ChunkSource[], fileName: string, options?: ClassifyOptions, onProgress?: ProgressCallback): Promise<AsyncAccepted>;
89
89
  /**
90
- * Poll job status until complete or failed.
91
- * Returns full classification results.
90
+ * Poll job status until complete or failed. Returns the JobResult on completion.
91
+ *
92
+ * Per-event records are NOT in this response (ARCH-015) — call getJobEvents(jobId)
93
+ * after completion to retrieve the events.json blob via SAS URL.
92
94
  *
93
95
  * Resilience:
94
96
  * - Exponential backoff: 3s -> 5s (after 10 attempts) -> 10s (after 20 attempts)
95
97
  * - 429 (rate limited): respects Retry-After header, does not count toward timeout
96
98
  * - 401 (auth expired): throws AUTH_EXPIRED with actionable jobId for later retrieval
97
99
  * - 404 (eventual consistency): keeps polling silently
100
+ *
101
+ * @param options.maxWaitMs Override the default 5-minute poll budget. Used by MCP
102
+ * tool callers (waitForResult: true) to cap the synchronous wait window so the
103
+ * tool call exits within the MCP wall budget. On timeout throws HearApiError
104
+ * with code 'POLL_TIMEOUT' — caller should degrade to AsyncAccepted.
98
105
  */
99
- pollJob(jobId: string, onProgress?: ProgressCallback): Promise<ClassifyResult>;
106
+ pollJob(jobId: string, onProgress?: ProgressCallback, options?: {
107
+ maxWaitMs?: number;
108
+ }): Promise<ClassifyResult>;
100
109
  /**
101
110
  * Classify audio end-to-end: submit async -> poll -> return results.
102
111
  */
@@ -120,17 +129,18 @@ export declare class HearApiClient {
120
129
  }): Promise<JobsResult>;
121
130
  getJob(jobId: string): Promise<JobResult>;
122
131
  /**
123
- * Get filtered + paginated events for a completed job.
132
+ * Get filtered events for a completed job.
124
133
  *
125
- * ARCH-015 two-hop:
126
- * 1. GET /v1/jobs/{id}/events tiny envelope {summary, topSources, total, downloadUrl, sizeBytes}
127
- * 2. fetch(downloadUrl) → noiseEvents[] direct from Storage (bypasses Function memory)
134
+ * The HTTP endpoint pages server-side at 100 events per call (timeline order,
135
+ * no sort options). This SDK call walks all server pages by default and returns
136
+ * the concatenated result so existing callers keep "give me all matched events"
137
+ * semantics — for explicit page-at-a-time access, pass `{ offset, paged: true }`.
128
138
  *
129
- * Filtering, sorting and pagination happen in the caller's process after the
130
- * single blob fetch. The server cannot do this inline without violating
131
- * ARCH-015 (blob bytes must not traverse the Function runtime). If the blob
132
- * exceeds `options.maxInlineBytes` (default HEAR_API.EVENTS_INLINE_MAX_BYTES),
133
- * this throws {@link EventsBlobTooLargeError} carrying the downloadUrl.
139
+ * If the events.json blob is small (≤ `options.maxInlineBytes`, default
140
+ * HEAR_API.EVENTS_INLINE_MAX_BYTES) AND no filters are present AND the caller
141
+ * has not requested `paged` mode, the SDK takes a one-shot SAS blob fetch
142
+ * (single round-trip) instead of walking pages. For larger blobs or filtered
143
+ * queries it pages through the server response.
134
144
  */
135
145
  getJobEvents(jobId: string, params?: {
136
146
  taxonomy?: string;
@@ -141,13 +151,13 @@ export declare class HearApiClient {
141
151
  startTime?: number;
142
152
  endTime?: number;
143
153
  sourceId?: string;
144
- sort?: string;
145
- limit?: number;
146
154
  offset?: number;
155
+ /** When true, return only one server page (no walk). Pass `offset` to step. */
156
+ paged?: boolean;
147
157
  }, options?: {
148
158
  maxInlineBytes?: number;
149
159
  }): Promise<JobEventsResult>;
150
- private fetchJobEventsEnvelope;
160
+ private fetchJobEventsPage;
151
161
  getJobAudio(jobId: string): Promise<JobAudioResult>;
152
162
  getJobWaveform(jobId: string, params?: {
153
163
  zoom?: 256 | 1024 | 4096;
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
@@ -337,20 +337,28 @@ export class HearApiClient {
337
337
  return this.submitChunkUploadTail(headResult.uploadSessionId, chunks.slice(1), fileName, headResult.chunksReceived, totalSlices, onProgress);
338
338
  }
339
339
  /**
340
- * Poll job status until complete or failed.
341
- * Returns full classification results.
340
+ * Poll job status until complete or failed. Returns the JobResult on completion.
341
+ *
342
+ * Per-event records are NOT in this response (ARCH-015) — call getJobEvents(jobId)
343
+ * after completion to retrieve the events.json blob via SAS URL.
342
344
  *
343
345
  * Resilience:
344
346
  * - Exponential backoff: 3s -> 5s (after 10 attempts) -> 10s (after 20 attempts)
345
347
  * - 429 (rate limited): respects Retry-After header, does not count toward timeout
346
348
  * - 401 (auth expired): throws AUTH_EXPIRED with actionable jobId for later retrieval
347
349
  * - 404 (eventual consistency): keeps polling silently
350
+ *
351
+ * @param options.maxWaitMs Override the default 5-minute poll budget. Used by MCP
352
+ * tool callers (waitForResult: true) to cap the synchronous wait window so the
353
+ * tool call exits within the MCP wall budget. On timeout throws HearApiError
354
+ * with code 'POLL_TIMEOUT' — caller should degrade to AsyncAccepted.
348
355
  */
349
- async pollJob(jobId, onProgress) {
356
+ async pollJob(jobId, onProgress, options) {
350
357
  const startMs = Date.now();
351
358
  const pollUrl = apiUrl(this.config, `/v1/jobs/${jobId}`);
352
359
  let attempts = 0;
353
- while (Date.now() - startMs < HEAR_API.POLL_TIMEOUT_MS) {
360
+ const budgetMs = options?.maxWaitMs ?? HEAR_API.POLL_TIMEOUT_MS;
361
+ while (Date.now() - startMs < budgetMs) {
354
362
  // Exponential backoff based on attempt count
355
363
  const interval = attempts >= HEAR_API.POLL_BACKOFF_STEP_2
356
364
  ? HEAR_API.POLL_INTERVAL_STEP_2_MS
@@ -365,6 +373,8 @@ export class HearApiClient {
365
373
  const response = await fetch(pollUrl, {
366
374
  method: 'GET',
367
375
  headers: this.headers(true),
376
+ // Intentionally short (10s) — pollJob WANTS to retry transient
377
+ // slowness rather than block. See L490 below for the catch-and-continue.
368
378
  signal: AbortSignal.timeout(10000),
369
379
  });
370
380
  // 429 rate limited -- respect Retry-After and continue without counting toward timeout
@@ -382,7 +392,9 @@ export class HearApiClient {
382
392
  throw new HearApiError(401, 'AUTH_EXPIRED', `Auth expired during polling. Job ${jobId} is still processing server-side. Use getJob('${jobId}') to retrieve results when ready.`, jobId);
383
393
  }
384
394
  const result = await handleResponse(response);
385
- if (result.status === 'completed' || (result.classifications && result.classifications.length > 0)) {
395
+ // Authoritative completion signal handler maps Cosmos 'invoiced' 'completed'
396
+ // on the wire (see api/src/functions/get-job.ts), so 'completed' alone is sufficient.
397
+ if (result.status === 'completed') {
386
398
  onProgress?.(`Job ${jobId} completed in ${elapsedSec}s`);
387
399
  return result;
388
400
  }
@@ -409,7 +421,7 @@ export class HearApiClient {
409
421
  throw err;
410
422
  }
411
423
  }
412
- throw new HearApiError(408, 'POLL_TIMEOUT', `Job ${jobId} did not complete within ${HEAR_API.POLL_TIMEOUT_MS / 1000}s`, jobId);
424
+ throw new HearApiError(408, 'POLL_TIMEOUT', `Job ${jobId} did not complete within ${budgetMs / 1000}s`, jobId);
413
425
  }
414
426
  /**
415
427
  * Classify audio end-to-end: submit async -> poll -> return results.
@@ -447,7 +459,7 @@ export class HearApiClient {
447
459
  const response = await fetch(url, {
448
460
  method: 'GET',
449
461
  headers: this.headers(true),
450
- signal: AbortSignal.timeout(15000),
462
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
451
463
  });
452
464
  return handleResponse(response);
453
465
  }
@@ -457,7 +469,7 @@ export class HearApiClient {
457
469
  const response = await fetch(url, {
458
470
  method: 'GET',
459
471
  headers: { 'Content-Type': 'application/json' },
460
- signal: AbortSignal.timeout(10000),
472
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
461
473
  });
462
474
  return handleResponse(response);
463
475
  }
@@ -467,7 +479,7 @@ export class HearApiClient {
467
479
  const response = await fetch(url, {
468
480
  method: 'GET',
469
481
  headers: this.headers(true),
470
- signal: AbortSignal.timeout(10000),
482
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
471
483
  });
472
484
  return handleResponse(response);
473
485
  }
@@ -491,7 +503,7 @@ export class HearApiClient {
491
503
  const response = await fetch(url, {
492
504
  method: 'GET',
493
505
  headers: this.headers(true),
494
- signal: AbortSignal.timeout(15000),
506
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
495
507
  });
496
508
  return handleResponse(response);
497
509
  }
@@ -500,56 +512,142 @@ export class HearApiClient {
500
512
  const response = await fetch(url, {
501
513
  method: 'GET',
502
514
  headers: this.headers(true),
503
- signal: AbortSignal.timeout(10000),
515
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
504
516
  });
505
517
  return handleResponse(response);
506
518
  }
507
519
  /**
508
- * Get filtered + paginated events for a completed job.
520
+ * Get filtered events for a completed job.
509
521
  *
510
- * ARCH-015 two-hop:
511
- * 1. GET /v1/jobs/{id}/events tiny envelope {summary, topSources, total, downloadUrl, sizeBytes}
512
- * 2. fetch(downloadUrl) → noiseEvents[] direct from Storage (bypasses Function memory)
522
+ * The HTTP endpoint pages server-side at 100 events per call (timeline order,
523
+ * no sort options). This SDK call walks all server pages by default and returns
524
+ * the concatenated result so existing callers keep "give me all matched events"
525
+ * semantics — for explicit page-at-a-time access, pass `{ offset, paged: true }`.
513
526
  *
514
- * Filtering, sorting and pagination happen in the caller's process after the
515
- * single blob fetch. The server cannot do this inline without violating
516
- * ARCH-015 (blob bytes must not traverse the Function runtime). If the blob
517
- * exceeds `options.maxInlineBytes` (default HEAR_API.EVENTS_INLINE_MAX_BYTES),
518
- * this throws {@link EventsBlobTooLargeError} carrying the downloadUrl.
527
+ * If the events.json blob is small (≤ `options.maxInlineBytes`, default
528
+ * HEAR_API.EVENTS_INLINE_MAX_BYTES) AND no filters are present AND the caller
529
+ * has not requested `paged` mode, the SDK takes a one-shot SAS blob fetch
530
+ * (single round-trip) instead of walking pages. For larger blobs or filtered
531
+ * queries it pages through the server response.
519
532
  */
520
533
  async getJobEvents(jobId, params, options) {
521
- const envelope = await this.fetchJobEventsEnvelope(jobId);
534
+ const filterParams = {
535
+ taxonomy: params?.taxonomy,
536
+ minConfidence: params?.minConfidence,
537
+ category: params?.category,
538
+ tier2: params?.tier2,
539
+ tier3: params?.tier3,
540
+ startTime: params?.startTime,
541
+ endTime: params?.endTime,
542
+ sourceId: params?.sourceId,
543
+ };
544
+ const offset = params?.offset ?? 0;
545
+ const hasFilter = Object.values(filterParams).some(v => v !== undefined);
546
+ // Single-page mode: one server call, return as-is.
547
+ if (params?.paged) {
548
+ const page = await this.fetchJobEventsPage(jobId, offset, filterParams);
549
+ return {
550
+ jobId: page.jobId,
551
+ events: page.events,
552
+ total: page.matchedTotal,
553
+ matchedTotalExact: page.matchedTotalExact,
554
+ limit: page.pageSize,
555
+ offset: page.offset,
556
+ hasMore: page.hasMore,
557
+ summary: page.summary,
558
+ topSources: page.topSources,
559
+ sizeBytes: page.sizeBytes,
560
+ };
561
+ }
562
+ // First page: tells us blob size + whether one-shot SAS fetch is cheaper.
563
+ const firstPage = await this.fetchJobEventsPage(jobId, 0, filterParams);
522
564
  const maxInlineBytes = options?.maxInlineBytes ?? HEAR_API.EVENTS_INLINE_MAX_BYTES;
523
- if (envelope.sizeBytes > maxInlineBytes) {
524
- throw new EventsBlobTooLargeError(envelope.sizeBytes, maxInlineBytes, envelope.downloadUrl, envelope.total);
565
+ const oneShotEligible = !hasFilter
566
+ && offset === 0
567
+ && firstPage.sizeBytes <= maxInlineBytes
568
+ && firstPage.hasMore;
569
+ if (oneShotEligible) {
570
+ const blob = await fetchEventsBlob(firstPage.downloadUrl);
571
+ const all = Array.isArray(blob.noiseEvents) ? blob.noiseEvents : [];
572
+ return {
573
+ jobId: firstPage.jobId,
574
+ events: all,
575
+ total: all.length,
576
+ matchedTotalExact: true,
577
+ limit: all.length,
578
+ offset: 0,
579
+ hasMore: false,
580
+ summary: firstPage.summary,
581
+ topSources: firstPage.topSources,
582
+ sizeBytes: firstPage.sizeBytes,
583
+ };
525
584
  }
526
- const blob = await fetchEventsBlob(envelope.downloadUrl);
527
- const all = Array.isArray(blob.noiseEvents) ? blob.noiseEvents : [];
528
- const filtered = applyEventFilters(all, params);
529
- const sorted = applyEventSort(filtered, params?.sort);
530
- const offset = params?.offset ?? 0;
531
- const limit = params?.limit;
532
- const page = limit !== undefined ? sorted.slice(offset, offset + limit) : sorted.slice(offset);
533
- const effectiveLimit = limit ?? sorted.length;
534
- const hasMore = offset + page.length < sorted.length;
585
+ // For very large blobs without an SDK fast path, give the caller the SAS
586
+ // URL via EventsBlobTooLargeError so they can fetch + slice themselves.
587
+ if (!hasFilter && firstPage.sizeBytes > maxInlineBytes) {
588
+ throw new EventsBlobTooLargeError(firstPage.sizeBytes, maxInlineBytes, firstPage.downloadUrl, firstPage.matchedTotal);
589
+ }
590
+ // Walk pages until done. Skip the offset records the caller asked for.
591
+ const collected = [...firstPage.events];
592
+ let nextOffset = firstPage.offset + firstPage.events.length;
593
+ let hasMore = firstPage.hasMore;
594
+ while (hasMore && collected.length + firstPage.offset < offset + Number.MAX_SAFE_INTEGER) {
595
+ const next = await this.fetchJobEventsPage(jobId, nextOffset, filterParams);
596
+ collected.push(...next.events);
597
+ nextOffset = next.offset + next.events.length;
598
+ hasMore = next.hasMore;
599
+ }
600
+ // Apply caller's offset window after walking (offset semantics preserved
601
+ // for back-compat with pre-server-paging consumers).
602
+ const windowed = offset > 0 ? collected.slice(offset) : collected;
535
603
  return {
536
- jobId: envelope.jobId,
537
- events: page,
538
- total: sorted.length,
539
- limit: effectiveLimit,
604
+ jobId: firstPage.jobId,
605
+ events: windowed,
606
+ total: collected.length,
607
+ matchedTotalExact: true,
608
+ limit: windowed.length,
540
609
  offset,
541
- hasMore,
542
- summary: envelope.summary,
543
- topSources: envelope.topSources,
544
- sizeBytes: envelope.sizeBytes,
610
+ hasMore: false,
611
+ summary: firstPage.summary,
612
+ topSources: firstPage.topSources,
613
+ sizeBytes: firstPage.sizeBytes,
545
614
  };
546
615
  }
547
- async fetchJobEventsEnvelope(jobId) {
548
- const url = apiUrl(this.config, `/v1/jobs/${jobId}/events`);
616
+ async fetchJobEventsPage(jobId, offset, filter) {
617
+ const query = new URLSearchParams();
618
+ if (offset > 0) {
619
+ query.set('offset', String(offset));
620
+ }
621
+ if (filter.taxonomy) {
622
+ query.set('taxonomy', filter.taxonomy);
623
+ }
624
+ if (filter.minConfidence !== undefined) {
625
+ query.set('minConfidence', String(filter.minConfidence));
626
+ }
627
+ if (filter.category) {
628
+ query.set('category', filter.category);
629
+ }
630
+ if (filter.tier2) {
631
+ query.set('tier2', filter.tier2);
632
+ }
633
+ if (filter.tier3) {
634
+ query.set('tier3', filter.tier3);
635
+ }
636
+ if (filter.startTime !== undefined) {
637
+ query.set('startTime', String(filter.startTime));
638
+ }
639
+ if (filter.endTime !== undefined) {
640
+ query.set('endTime', String(filter.endTime));
641
+ }
642
+ if (filter.sourceId) {
643
+ query.set('sourceId', filter.sourceId);
644
+ }
645
+ const qs = query.toString();
646
+ const url = apiUrl(this.config, `/v1/jobs/${jobId}/events${qs ? `?${qs}` : ''}`);
549
647
  const response = await fetch(url, {
550
648
  method: 'GET',
551
649
  headers: this.headers(true),
552
- signal: AbortSignal.timeout(15000),
650
+ signal: AbortSignal.timeout(60000),
553
651
  });
554
652
  return handleResponse(response);
555
653
  }
@@ -558,7 +656,7 @@ export class HearApiClient {
558
656
  const response = await fetch(url, {
559
657
  method: 'GET',
560
658
  headers: this.headers(true),
561
- signal: AbortSignal.timeout(10000),
659
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
562
660
  });
563
661
  return handleResponse(response);
564
662
  }
@@ -568,7 +666,7 @@ export class HearApiClient {
568
666
  const response = await fetch(url, {
569
667
  method: 'GET',
570
668
  headers: this.headers(true),
571
- signal: AbortSignal.timeout(10000),
669
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
572
670
  });
573
671
  // 202 means waveform still generating — return the body rather than throwing
574
672
  if (response.status !== 200 && response.status !== 202) {
@@ -582,7 +680,7 @@ export class HearApiClient {
582
680
  const response = await fetch(url, {
583
681
  method: 'GET',
584
682
  headers: this.headers(true),
585
- signal: AbortSignal.timeout(10000),
683
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
586
684
  });
587
685
  return handleResponse(response);
588
686
  }
@@ -593,7 +691,7 @@ export class HearApiClient {
593
691
  method: 'POST',
594
692
  headers: this.headers(true),
595
693
  body: JSON.stringify(params),
596
- signal: AbortSignal.timeout(10000),
694
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
597
695
  });
598
696
  return handleResponse(response);
599
697
  }
@@ -602,7 +700,7 @@ export class HearApiClient {
602
700
  const response = await fetch(url, {
603
701
  method: 'DELETE',
604
702
  headers: this.headers(true),
605
- signal: AbortSignal.timeout(10000),
703
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
606
704
  });
607
705
  if (!response.ok) {
608
706
  const text = await response.text();
@@ -621,7 +719,7 @@ export class HearApiClient {
621
719
  method: 'POST',
622
720
  headers: this.headers(true),
623
721
  body: JSON.stringify(params),
624
- signal: AbortSignal.timeout(10000),
722
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
625
723
  });
626
724
  return handleResponse(response);
627
725
  }
@@ -630,7 +728,7 @@ export class HearApiClient {
630
728
  const response = await fetch(url, {
631
729
  method: 'GET',
632
730
  headers: this.headers(true),
633
- signal: AbortSignal.timeout(10000),
731
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
634
732
  });
635
733
  return handleResponse(response);
636
734
  }
@@ -639,7 +737,7 @@ export class HearApiClient {
639
737
  const response = await fetch(url, {
640
738
  method: 'GET',
641
739
  headers: this.headers(true),
642
- signal: AbortSignal.timeout(10000),
740
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
643
741
  });
644
742
  return handleResponse(response);
645
743
  }
@@ -649,7 +747,7 @@ export class HearApiClient {
649
747
  method: 'PATCH',
650
748
  headers: this.headers(true),
651
749
  body: JSON.stringify(params),
652
- signal: AbortSignal.timeout(10000),
750
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
653
751
  });
654
752
  return handleResponse(response);
655
753
  }
@@ -658,7 +756,7 @@ export class HearApiClient {
658
756
  const response = await fetch(url, {
659
757
  method: 'DELETE',
660
758
  headers: this.headers(true),
661
- signal: AbortSignal.timeout(10000),
759
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
662
760
  });
663
761
  if (!response.ok) {
664
762
  const text = await response.text();
@@ -688,7 +786,7 @@ export class HearApiClient {
688
786
  const response = await fetch(url, {
689
787
  method: 'GET',
690
788
  headers: this.headers(true),
691
- signal: AbortSignal.timeout(10000),
789
+ signal: AbortSignal.timeout(HEAR_API.READ_TIMEOUT_MS),
692
790
  });
693
791
  return handleResponse(response);
694
792
  }
@@ -700,45 +798,4 @@ async function fetchEventsBlob(downloadUrl) {
700
798
  }
701
799
  return await response.json();
702
800
  }
703
- function applyEventFilters(events, params) {
704
- if (!params)
705
- return events;
706
- return events.filter(e => {
707
- if (params.taxonomy && e.taxonomy !== params.taxonomy)
708
- return false;
709
- if (params.minConfidence !== undefined && e.confidence < params.minConfidence)
710
- return false;
711
- if (params.category && e.tier1 !== params.category)
712
- return false;
713
- if (params.tier2 && e.tier2 !== params.tier2)
714
- return false;
715
- if (params.tier3 && e.tier3 !== params.tier3)
716
- return false;
717
- if (params.sourceId && e.sourceId !== params.sourceId)
718
- return false;
719
- // startTime/endTime window: event must overlap [startTime, endTime]
720
- if (params.startTime !== undefined && e.endTime < params.startTime)
721
- return false;
722
- if (params.endTime !== undefined && e.startTime > params.endTime)
723
- return false;
724
- return true;
725
- });
726
- }
727
- function applyEventSort(events, sort) {
728
- if (!sort)
729
- return events;
730
- const [field, dirRaw] = sort.split(':');
731
- const dir = (dirRaw ?? 'asc').toLowerCase() === 'desc' ? -1 : 1;
732
- const allowed = new Set(['startTime', 'endTime', 'confidence', 'decibelLevel']);
733
- if (!allowed.has(field))
734
- return events;
735
- // Copy to avoid mutating the caller-visible array semantics.
736
- return [...events].sort((a, b) => {
737
- const av = a[field];
738
- const bv = b[field];
739
- if (typeof av === 'number' && typeof bv === 'number')
740
- return (av - bv) * dir;
741
- return 0;
742
- });
743
- }
744
801
  //# sourceMappingURL=api-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}