@noresponse/node 2.0.28 → 2.0.30
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/CHANGELOG.md +9 -0
- package/README.md +1 -1
- package/dist/commonjs/client.d.ts +29 -3
- package/dist/commonjs/client.d.ts.map +1 -1
- package/dist/commonjs/client.js +47 -3
- package/dist/commonjs/client.js.map +1 -1
- package/dist/commonjs/funcs/webhook-endpoints-list-deliveries.d.ts +21 -0
- package/dist/commonjs/funcs/webhook-endpoints-list-deliveries.d.ts.map +1 -0
- package/dist/commonjs/funcs/webhook-endpoints-list-deliveries.js +182 -0
- package/dist/commonjs/funcs/webhook-endpoints-list-deliveries.js.map +1 -0
- package/dist/commonjs/funcs/webhook-endpoints-replay-delivery.d.ts +18 -0
- package/dist/commonjs/funcs/webhook-endpoints-replay-delivery.d.ts.map +1 -0
- package/dist/commonjs/funcs/webhook-endpoints-replay-delivery.js +146 -0
- package/dist/commonjs/funcs/webhook-endpoints-replay-delivery.js.map +1 -0
- package/dist/commonjs/index.d.ts +1 -1
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/lib/config.d.ts +2 -2
- package/dist/commonjs/lib/config.js +2 -2
- package/dist/commonjs/models/event-type.d.ts +9 -0
- package/dist/commonjs/models/event-type.d.ts.map +1 -0
- package/dist/commonjs/models/event-type.js +43 -0
- package/dist/commonjs/models/event-type.js.map +1 -0
- package/dist/commonjs/models/failure.d.ts +21 -0
- package/dist/commonjs/models/failure.d.ts.map +1 -0
- package/dist/commonjs/models/failure.js +53 -0
- package/dist/commonjs/models/failure.js.map +1 -0
- package/dist/commonjs/models/index.d.ts +7 -0
- package/dist/commonjs/models/index.d.ts.map +1 -1
- package/dist/commonjs/models/index.js +7 -0
- package/dist/commonjs/models/index.js.map +1 -1
- package/dist/commonjs/models/operations/index.d.ts +2 -0
- package/dist/commonjs/models/operations/index.d.ts.map +1 -1
- package/dist/commonjs/models/operations/index.js +2 -0
- package/dist/commonjs/models/operations/index.js.map +1 -1
- package/dist/commonjs/models/operations/list-webhook-deliveries.d.ts +37 -0
- package/dist/commonjs/models/operations/list-webhook-deliveries.d.ts.map +1 -0
- package/dist/commonjs/models/operations/list-webhook-deliveries.js +69 -0
- package/dist/commonjs/models/operations/list-webhook-deliveries.js.map +1 -0
- package/dist/commonjs/models/operations/replay-webhook-delivery.d.ts +34 -0
- package/dist/commonjs/models/operations/replay-webhook-delivery.d.ts.map +1 -0
- package/dist/commonjs/models/operations/replay-webhook-delivery.js +70 -0
- package/dist/commonjs/models/operations/replay-webhook-delivery.js.map +1 -0
- package/dist/commonjs/models/webhook-delivery-attempt-status.d.ts +16 -0
- package/dist/commonjs/models/webhook-delivery-attempt-status.d.ts.map +1 -0
- package/dist/commonjs/models/webhook-delivery-attempt-status.js +47 -0
- package/dist/commonjs/models/webhook-delivery-attempt-status.js.map +1 -0
- package/dist/commonjs/models/webhook-delivery-attempt.d.ts +45 -0
- package/dist/commonjs/models/webhook-delivery-attempt.d.ts.map +1 -0
- package/dist/commonjs/models/webhook-delivery-attempt.js +68 -0
- package/dist/commonjs/models/webhook-delivery-attempt.js.map +1 -0
- package/dist/commonjs/models/webhook-delivery-list.d.ts +22 -0
- package/dist/commonjs/models/webhook-delivery-list.d.ts.map +1 -0
- package/dist/commonjs/models/webhook-delivery-list.js +57 -0
- package/dist/commonjs/models/webhook-delivery-list.js.map +1 -0
- package/dist/commonjs/models/webhook-replay-request.d.ts +11 -0
- package/dist/commonjs/models/webhook-replay-request.d.ts.map +1 -0
- package/dist/commonjs/models/webhook-replay-request.js +44 -0
- package/dist/commonjs/models/webhook-replay-request.js.map +1 -0
- package/dist/commonjs/models/webhook-replay.d.ts +22 -0
- package/dist/commonjs/models/webhook-replay.d.ts.map +1 -0
- package/dist/commonjs/models/webhook-replay.js +58 -0
- package/dist/commonjs/models/webhook-replay.js.map +1 -0
- package/dist/commonjs/sdk/webhook-endpoints.d.ts +17 -0
- package/dist/commonjs/sdk/webhook-endpoints.d.ts.map +1 -1
- package/dist/commonjs/sdk/webhook-endpoints.js +21 -0
- package/dist/commonjs/sdk/webhook-endpoints.js.map +1 -1
- package/dist/commonjs/wait.d.ts +9 -3
- package/dist/commonjs/wait.d.ts.map +1 -1
- package/dist/commonjs/wait.js +27 -11
- package/dist/commonjs/wait.js.map +1 -1
- package/dist/esm/client.d.ts +29 -3
- package/dist/esm/client.d.ts.map +1 -1
- package/dist/esm/client.js +47 -3
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/funcs/webhook-endpoints-list-deliveries.d.ts +21 -0
- package/dist/esm/funcs/webhook-endpoints-list-deliveries.d.ts.map +1 -0
- package/dist/esm/funcs/webhook-endpoints-list-deliveries.js +146 -0
- package/dist/esm/funcs/webhook-endpoints-list-deliveries.js.map +1 -0
- package/dist/esm/funcs/webhook-endpoints-replay-delivery.d.ts +18 -0
- package/dist/esm/funcs/webhook-endpoints-replay-delivery.d.ts.map +1 -0
- package/dist/esm/funcs/webhook-endpoints-replay-delivery.js +110 -0
- package/dist/esm/funcs/webhook-endpoints-replay-delivery.js.map +1 -0
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/config.d.ts +2 -2
- package/dist/esm/lib/config.js +2 -2
- package/dist/esm/models/event-type.d.ts +9 -0
- package/dist/esm/models/event-type.d.ts.map +1 -0
- package/dist/esm/models/event-type.js +7 -0
- package/dist/esm/models/event-type.js.map +1 -0
- package/dist/esm/models/failure.d.ts +21 -0
- package/dist/esm/models/failure.d.ts.map +1 -0
- package/dist/esm/models/failure.js +17 -0
- package/dist/esm/models/failure.js.map +1 -0
- package/dist/esm/models/index.d.ts +7 -0
- package/dist/esm/models/index.d.ts.map +1 -1
- package/dist/esm/models/index.js +7 -0
- package/dist/esm/models/index.js.map +1 -1
- package/dist/esm/models/operations/index.d.ts +2 -0
- package/dist/esm/models/operations/index.d.ts.map +1 -1
- package/dist/esm/models/operations/index.js +2 -0
- package/dist/esm/models/operations/index.js.map +1 -1
- package/dist/esm/models/operations/list-webhook-deliveries.d.ts +37 -0
- package/dist/esm/models/operations/list-webhook-deliveries.d.ts.map +1 -0
- package/dist/esm/models/operations/list-webhook-deliveries.js +31 -0
- package/dist/esm/models/operations/list-webhook-deliveries.js.map +1 -0
- package/dist/esm/models/operations/replay-webhook-delivery.d.ts +34 -0
- package/dist/esm/models/operations/replay-webhook-delivery.d.ts.map +1 -0
- package/dist/esm/models/operations/replay-webhook-delivery.js +32 -0
- package/dist/esm/models/operations/replay-webhook-delivery.js.map +1 -0
- package/dist/esm/models/webhook-delivery-attempt-status.d.ts +16 -0
- package/dist/esm/models/webhook-delivery-attempt-status.d.ts.map +1 -0
- package/dist/esm/models/webhook-delivery-attempt-status.js +11 -0
- package/dist/esm/models/webhook-delivery-attempt-status.js.map +1 -0
- package/dist/esm/models/webhook-delivery-attempt.d.ts +45 -0
- package/dist/esm/models/webhook-delivery-attempt.d.ts.map +1 -0
- package/dist/esm/models/webhook-delivery-attempt.js +31 -0
- package/dist/esm/models/webhook-delivery-attempt.js.map +1 -0
- package/dist/esm/models/webhook-delivery-list.d.ts +22 -0
- package/dist/esm/models/webhook-delivery-list.d.ts.map +1 -0
- package/dist/esm/models/webhook-delivery-list.js +20 -0
- package/dist/esm/models/webhook-delivery-list.js.map +1 -0
- package/dist/esm/models/webhook-replay-request.d.ts +11 -0
- package/dist/esm/models/webhook-replay-request.d.ts.map +1 -0
- package/dist/esm/models/webhook-replay-request.js +7 -0
- package/dist/esm/models/webhook-replay-request.js.map +1 -0
- package/dist/esm/models/webhook-replay.d.ts +22 -0
- package/dist/esm/models/webhook-replay.d.ts.map +1 -0
- package/dist/esm/models/webhook-replay.js +21 -0
- package/dist/esm/models/webhook-replay.js.map +1 -0
- package/dist/esm/sdk/webhook-endpoints.d.ts +17 -0
- package/dist/esm/sdk/webhook-endpoints.d.ts.map +1 -1
- package/dist/esm/sdk/webhook-endpoints.js +21 -0
- package/dist/esm/sdk/webhook-endpoints.js.map +1 -1
- package/dist/esm/wait.d.ts +9 -3
- package/dist/esm/wait.d.ts.map +1 -1
- package/dist/esm/wait.js +27 -11
- package/dist/esm/wait.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ClientSDK, RequestOptions } from "../lib/sdks.js";
|
|
2
2
|
import * as models from "../models/index.js";
|
|
3
3
|
import * as operations from "../models/operations/index.js";
|
|
4
|
+
import { PageIterator } from "../types/operations.js";
|
|
4
5
|
export declare class WebhookEndpoints extends ClientSDK {
|
|
5
6
|
/**
|
|
6
7
|
* List the tenant's webhook endpoints.
|
|
@@ -37,5 +38,21 @@ export declare class WebhookEndpoints extends ClientSDK {
|
|
|
37
38
|
* endpoint.verification sends a signed challenge now and answers whether the endpoint echoed it within 5 seconds; an echo verifies the endpoint, including a disabled one. assessment.updated queues one signed event with test: true and a fixed example assessment in the endpoint's response mode, delivered and retried like any other event; the endpoint must be verified. Both use the endpoint's current signing key. Requires the webhooks scope.
|
|
38
39
|
*/
|
|
39
40
|
sendTestEvent(request: operations.SendWebhookTestEventRequest, options?: RequestOptions): Promise<operations.SendWebhookTestEventResponse>;
|
|
41
|
+
/**
|
|
42
|
+
* List an endpoint's delivery attempts.
|
|
43
|
+
*
|
|
44
|
+
* @remarks
|
|
45
|
+
* Every POST the endpoint received, newest first: the event id and type, which attempt it was, whether it was a replay, delivered or failed, the response code, why it failed and how long it took. Attempts are kept for 30 days, or your retention_days when that is shorter, and are deleted with the assessment they carried. Requires the webhooks scope. Read-only and safe to retry. The cursor is opaque and bound to your tenant and the endpoint; a tampered or expired cursor answers 400 invalid_cursor.
|
|
46
|
+
*/
|
|
47
|
+
listDeliveries(request: operations.ListWebhookDeliveriesRequest, options?: RequestOptions): Promise<PageIterator<operations.ListWebhookDeliveriesResponse, {
|
|
48
|
+
cursor: string;
|
|
49
|
+
}>>;
|
|
50
|
+
/**
|
|
51
|
+
* Send one delivery again.
|
|
52
|
+
*
|
|
53
|
+
* @remarks
|
|
54
|
+
* Queues the event for the endpoint again: the same event id and body it received, with a new NR-Webhook-Timestamp and a signature from the endpoint's current signing key, retried like any other delivery and listed with replay: true. Your receiver deduplicates on the event id. The endpoint must be verified. Requires the webhooks scope. Not idempotent: each call, a retry included, sends the event again.
|
|
55
|
+
*/
|
|
56
|
+
replayDelivery(request: operations.ReplayWebhookDeliveryRequest, options?: RequestOptions): Promise<operations.ReplayWebhookDeliveryResponse>;
|
|
40
57
|
}
|
|
41
58
|
//# sourceMappingURL=webhook-endpoints.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook-endpoints.d.ts","sourceRoot":"","sources":["../../../src/sdk/webhook-endpoints.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"webhook-endpoints.d.ts","sourceRoot":"","sources":["../../../src/sdk/webhook-endpoints.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAwB,MAAM,wBAAwB,CAAC;AAE5E,qBAAa,gBAAiB,SAAQ,SAAS;IAC7C;;;;;OAKG;IACG,IAAI,CACR,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,4BAA4B,CAAC,CAKlD;IAED;;;;;OAKG;IACG,MAAM,CACV,OAAO,EAAE,MAAM,CAAC,sBAAsB,EACtC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,6BAA6B,CAAC,CAMnD;IAED;;;;;OAKG;IACG,MAAM,CACV,OAAO,EAAE,UAAU,CAAC,4BAA4B,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,6BAA6B,GAAG,SAAS,CAAC,CAM/D;IAED;;;;;OAKG;IACG,gBAAgB,CACpB,OAAO,EAAE,UAAU,CAAC,8BAA8B,EAClD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,+BAA+B,CAAC,CAMrD;IAED;;;;;OAKG;IACG,aAAa,CACjB,OAAO,EAAE,UAAU,CAAC,2BAA2B,EAC/C,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,4BAA4B,CAAC,CAMlD;IAED;;;;;OAKG;IACG,cAAc,CAClB,OAAO,EAAE,UAAU,CAAC,4BAA4B,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CACR,YAAY,CAAC,UAAU,CAAC,6BAA6B,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAC3E,CAMA;IAED;;;;;OAKG;IACG,cAAc,CAClB,OAAO,EAAE,UAAU,CAAC,4BAA4B,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,UAAU,CAAC,6BAA6B,CAAC,CAMnD;CACF"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { webhookEndpointsCreate } from "../funcs/webhook-endpoints-create.js";
|
|
2
2
|
import { webhookEndpointsDelete } from "../funcs/webhook-endpoints-delete.js";
|
|
3
|
+
import { webhookEndpointsListDeliveries } from "../funcs/webhook-endpoints-list-deliveries.js";
|
|
3
4
|
import { webhookEndpointsList } from "../funcs/webhook-endpoints-list.js";
|
|
5
|
+
import { webhookEndpointsReplayDelivery } from "../funcs/webhook-endpoints-replay-delivery.js";
|
|
4
6
|
import { webhookEndpointsRotateSigningKey } from "../funcs/webhook-endpoints-rotate-signing-key.js";
|
|
5
7
|
import { webhookEndpointsSendTestEvent } from "../funcs/webhook-endpoints-send-test-event.js";
|
|
6
8
|
import { ClientSDK } from "../lib/sdks.js";
|
|
7
9
|
import { unwrapAsync } from "../types/fp.js";
|
|
10
|
+
import { unwrapResultIterator } from "../types/operations.js";
|
|
8
11
|
export class WebhookEndpoints extends ClientSDK {
|
|
9
12
|
/**
|
|
10
13
|
* List the tenant's webhook endpoints.
|
|
@@ -51,5 +54,23 @@ export class WebhookEndpoints extends ClientSDK {
|
|
|
51
54
|
async sendTestEvent(request, options) {
|
|
52
55
|
return unwrapAsync(webhookEndpointsSendTestEvent(this, request, options));
|
|
53
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* List an endpoint's delivery attempts.
|
|
59
|
+
*
|
|
60
|
+
* @remarks
|
|
61
|
+
* Every POST the endpoint received, newest first: the event id and type, which attempt it was, whether it was a replay, delivered or failed, the response code, why it failed and how long it took. Attempts are kept for 30 days, or your retention_days when that is shorter, and are deleted with the assessment they carried. Requires the webhooks scope. Read-only and safe to retry. The cursor is opaque and bound to your tenant and the endpoint; a tampered or expired cursor answers 400 invalid_cursor.
|
|
62
|
+
*/
|
|
63
|
+
async listDeliveries(request, options) {
|
|
64
|
+
return unwrapResultIterator(webhookEndpointsListDeliveries(this, request, options));
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Send one delivery again.
|
|
68
|
+
*
|
|
69
|
+
* @remarks
|
|
70
|
+
* Queues the event for the endpoint again: the same event id and body it received, with a new NR-Webhook-Timestamp and a signature from the endpoint's current signing key, retried like any other delivery and listed with replay: true. Your receiver deduplicates on the event id. The endpoint must be verified. Requires the webhooks scope. Not idempotent: each call, a retry included, sends the event again.
|
|
71
|
+
*/
|
|
72
|
+
async replayDelivery(request, options) {
|
|
73
|
+
return unwrapAsync(webhookEndpointsReplayDelivery(this, request, options));
|
|
74
|
+
}
|
|
54
75
|
}
|
|
55
76
|
//# sourceMappingURL=webhook-endpoints.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook-endpoints.js","sourceRoot":"","sources":["../../../src/sdk/webhook-endpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,gCAAgC,EAAE,MAAM,kDAAkD,CAAC;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAG3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"webhook-endpoints.js","sourceRoot":"","sources":["../../../src/sdk/webhook-endpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,+CAA+C,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,8BAA8B,EAAE,MAAM,+CAA+C,CAAC;AAC/F,OAAO,EAAE,gCAAgC,EAAE,MAAM,kDAAkD,CAAC;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAG3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAgB,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE5E,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CACR,OAAwB,EAC0B;QAClD,OAAO,WAAW,CAAC,oBAAoB,CACrC,IAAI,EACJ,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,OAAsC,EACtC,OAAwB,EAC2B;QACnD,OAAO,WAAW,CAAC,sBAAsB,CACvC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,OAAgD,EAChD,OAAwB,EACuC;QAC/D,OAAO,WAAW,CAAC,sBAAsB,CACvC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,gBAAgB,CACpB,OAAkD,EAClD,OAAwB,EAC6B;QACrD,OAAO,WAAW,CAAC,gCAAgC,CACjD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CACjB,OAA+C,EAC/C,OAAwB,EAC0B;QAClD,OAAO,WAAW,CAAC,6BAA6B,CAC9C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAClB,OAAgD,EAChD,OAAwB,EAGxB;QACA,OAAO,oBAAoB,CAAC,8BAA8B,CACxD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAClB,OAAgD,EAChD,OAAwB,EAC2B;QACnD,OAAO,WAAW,CAAC,8BAA8B,CAC/C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IAAA,CACJ;CACF"}
|
package/dist/esm/wait.d.ts
CHANGED
|
@@ -5,7 +5,11 @@ export declare const DEFAULT_WAIT_TIMEOUT_MS = 30000;
|
|
|
5
5
|
/** The shortest interval between polls when the server sends no Retry-After. */
|
|
6
6
|
export declare const MIN_POLL_INTERVAL_MS = 1000;
|
|
7
7
|
export type WaitOptions = {
|
|
8
|
-
/**
|
|
8
|
+
/**
|
|
9
|
+
* Stop polling after this long. Default 30 000 ms. If the latest answer is
|
|
10
|
+
* partial by then, wait returns it (its status stays "partial"); if it is
|
|
11
|
+
* still pending, wait throws an APITimeoutError.
|
|
12
|
+
*/
|
|
9
13
|
timeoutMs?: number;
|
|
10
14
|
responseMode?: ResponseMode;
|
|
11
15
|
/** Abort the wait early. */
|
|
@@ -17,9 +21,11 @@ export type Getter = (assessmentId: string, options: {
|
|
|
17
21
|
timeoutMs?: number;
|
|
18
22
|
}) => Promise<WithMeta<Assessment>>;
|
|
19
23
|
/**
|
|
20
|
-
* Poll `get` until the assessment is
|
|
24
|
+
* Poll `get` until the assessment's status is "complete". Each poll waits the
|
|
21
25
|
* server's Retry-After, with a 1 second floor, and the whole wait is bounded
|
|
22
|
-
* by `timeoutMs` (default 30 s),
|
|
26
|
+
* by `timeoutMs` (default 30 s). When the time runs out, a partial answer is
|
|
27
|
+
* returned as it stands, with status "partial", and a pending one throws an
|
|
28
|
+
* APITimeoutError, because a pending assessment has no recommendation yet.
|
|
23
29
|
*/
|
|
24
30
|
export declare function waitForAssessment(get: Getter, assessmentId: string, options?: WaitOptions): Promise<WithMeta<Assessment>>;
|
|
25
31
|
//# sourceMappingURL=wait.d.ts.map
|
package/dist/esm/wait.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wait.d.ts","sourceRoot":"","sources":["../../src/wait.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAC9C,gFAAgF;AAChF,eAAO,MAAM,oBAAoB,OAAQ,CAAC;AAE1C,MAAM,MAAM,WAAW,GAAG;IACxB
|
|
1
|
+
{"version":3,"file":"wait.d.ts","sourceRoot":"","sources":["../../src/wait.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAC9C,gFAAgF;AAChF,eAAO,MAAM,oBAAoB,OAAQ,CAAC;AAE1C,MAAM,MAAM,WAAW,GAAG;IACxB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,CACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE;IAAE,YAAY,CAAC,EAAE,YAAY,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,KAC/E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;AAoBnC;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAkC/B"}
|
package/dist/esm/wait.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Poll an assessment until it is
|
|
2
|
+
* Poll an assessment until it is complete. Hand-written; not generated.
|
|
3
3
|
*/
|
|
4
4
|
import { RequestTimeoutError } from "./models/errors/http-client-errors.js";
|
|
5
5
|
export const DEFAULT_WAIT_TIMEOUT_MS = 30000;
|
|
@@ -23,9 +23,11 @@ function sleep(ms, signal) {
|
|
|
23
23
|
});
|
|
24
24
|
}
|
|
25
25
|
/**
|
|
26
|
-
* Poll `get` until the assessment is
|
|
26
|
+
* Poll `get` until the assessment's status is "complete". Each poll waits the
|
|
27
27
|
* server's Retry-After, with a 1 second floor, and the whole wait is bounded
|
|
28
|
-
* by `timeoutMs` (default 30 s),
|
|
28
|
+
* by `timeoutMs` (default 30 s). When the time runs out, a partial answer is
|
|
29
|
+
* returned as it stands, with status "partial", and a pending one throws an
|
|
30
|
+
* APITimeoutError, because a pending assessment has no recommendation yet.
|
|
29
31
|
*/
|
|
30
32
|
export async function waitForAssessment(get, assessmentId, options = {}) {
|
|
31
33
|
const timeoutMs = options.timeoutMs ?? DEFAULT_WAIT_TIMEOUT_MS;
|
|
@@ -33,6 +35,12 @@ export async function waitForAssessment(get, assessmentId, options = {}) {
|
|
|
33
35
|
throw new TypeError("timeoutMs must be a positive integer");
|
|
34
36
|
}
|
|
35
37
|
const deadline = Date.now() + timeoutMs;
|
|
38
|
+
let last;
|
|
39
|
+
const timedOut = () => {
|
|
40
|
+
if (last?.status === "partial")
|
|
41
|
+
return last;
|
|
42
|
+
throw new RequestTimeoutError(`Timed out after ${timeoutMs} ms waiting for assessment ${assessmentId}`);
|
|
43
|
+
};
|
|
36
44
|
const getOptions = {};
|
|
37
45
|
if (options.responseMode !== undefined)
|
|
38
46
|
getOptions.responseMode = options.responseMode;
|
|
@@ -40,17 +48,25 @@ export async function waitForAssessment(get, assessmentId, options = {}) {
|
|
|
40
48
|
getOptions.signal = options.signal;
|
|
41
49
|
for (;;) {
|
|
42
50
|
const requestRemaining = deadline - Date.now();
|
|
43
|
-
if (requestRemaining <= 0)
|
|
44
|
-
|
|
45
|
-
}
|
|
51
|
+
if (requestRemaining <= 0)
|
|
52
|
+
return timedOut();
|
|
46
53
|
getOptions.timeoutMs = requestRemaining;
|
|
47
|
-
|
|
48
|
-
|
|
54
|
+
let assessment;
|
|
55
|
+
try {
|
|
56
|
+
assessment = await get(assessmentId, getOptions);
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
// The last poll ran into the deadline: a partial answer still stands.
|
|
60
|
+
if (error instanceof RequestTimeoutError && !options.signal?.aborted && last?.status === "partial")
|
|
61
|
+
return last;
|
|
62
|
+
throw error;
|
|
63
|
+
}
|
|
64
|
+
if (assessment.status === "complete")
|
|
49
65
|
return assessment;
|
|
66
|
+
last = assessment;
|
|
50
67
|
const remaining = deadline - Date.now();
|
|
51
|
-
if (remaining <= 0)
|
|
52
|
-
|
|
53
|
-
}
|
|
68
|
+
if (remaining <= 0)
|
|
69
|
+
return timedOut();
|
|
54
70
|
const retryAfter = assessment.meta.retryAfter;
|
|
55
71
|
const delay = Math.max(MIN_POLL_INTERVAL_MS, (retryAfter ?? 0) * 1000);
|
|
56
72
|
await sleep(Math.min(delay, remaining), options.signal);
|
package/dist/esm/wait.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wait.js","sourceRoot":"","sources":["../../src/wait.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAK5E,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAM,CAAC;AAC9C,gFAAgF;AAChF,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"wait.js","sourceRoot":"","sources":["../../src/wait.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@noresponse/node",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.30",
|
|
4
4
|
"author": "NoResponse",
|
|
5
5
|
"bugs": {
|
|
6
6
|
"url": "https://github.com/noresponsehq/node/issues"
|
|
@@ -52,8 +52,8 @@
|
|
|
52
52
|
"lint": "oxlint --max-warnings=0 --deny-warnings --no-error-on-unmatched-pattern src",
|
|
53
53
|
"build": "tshy",
|
|
54
54
|
"prepublishOnly": "npm run build",
|
|
55
|
-
"
|
|
56
|
-
"
|
|
55
|
+
"test": "npm run build && tsc -p tests/tsconfig.json && node --test tests/*.test.mjs",
|
|
56
|
+
"typecheck": "tsc --noEmit"
|
|
57
57
|
},
|
|
58
58
|
"peerDependencies": {},
|
|
59
59
|
"devDependencies": {
|