agentmail 0.0.58 → 0.0.66
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/dist/cjs/Client.d.ts +2 -2
- package/dist/cjs/Client.js +2 -2
- package/dist/cjs/api/resources/domains/client/Client.d.ts +7 -7
- package/dist/cjs/api/resources/domains/client/Client.js +69 -58
- package/dist/cjs/api/resources/drafts/client/Client.d.ts +3 -4
- package/dist/cjs/api/resources/drafts/client/Client.js +84 -71
- package/dist/cjs/api/resources/inboxes/client/Client.d.ts +14 -4
- package/dist/cjs/api/resources/inboxes/client/Client.js +127 -54
- package/dist/cjs/api/resources/inboxes/resources/drafts/client/Client.d.ts +3 -4
- package/dist/cjs/api/resources/inboxes/resources/drafts/client/Client.js +87 -74
- package/dist/cjs/api/resources/inboxes/resources/messages/client/Client.d.ts +3 -4
- package/dist/cjs/api/resources/inboxes/resources/messages/client/Client.js +89 -76
- package/dist/cjs/api/resources/inboxes/resources/metrics/client/Client.d.ts +2 -2
- package/dist/cjs/api/resources/inboxes/resources/metrics/client/Client.js +1 -1
- package/dist/cjs/api/resources/inboxes/resources/threads/client/Client.d.ts +15 -4
- package/dist/cjs/api/resources/inboxes/resources/threads/client/Client.js +138 -61
- package/dist/cjs/api/resources/messages/types/Message.d.ts +5 -8
- package/dist/cjs/api/resources/messages/types/MessageCreatedAt.d.ts +7 -0
- package/dist/cjs/api/resources/messages/types/MessageCreatedAt.js +5 -0
- package/dist/cjs/api/resources/messages/types/MessageInReplyTo.d.ts +7 -0
- package/dist/cjs/api/resources/messages/types/MessageInReplyTo.js +5 -0
- package/dist/cjs/api/resources/messages/types/MessageItem.d.ts +5 -0
- package/dist/cjs/api/resources/messages/types/MessageReferences.d.ts +7 -0
- package/dist/cjs/api/resources/messages/types/MessageReferences.js +5 -0
- package/dist/cjs/api/resources/messages/types/MessageReplyTo.d.ts +7 -0
- package/dist/cjs/api/resources/messages/types/MessageReplyTo.js +5 -0
- package/dist/cjs/api/resources/messages/types/MessageSize.d.ts +7 -0
- package/dist/cjs/api/resources/messages/types/MessageSize.js +5 -0
- package/dist/cjs/api/resources/messages/types/MessageUpdatedAt.d.ts +7 -0
- package/dist/cjs/api/resources/messages/types/MessageUpdatedAt.js +5 -0
- package/dist/cjs/api/resources/messages/types/index.d.ts +6 -0
- package/dist/cjs/api/resources/messages/types/index.js +6 -0
- package/dist/cjs/api/resources/metrics/client/Client.d.ts +2 -2
- package/dist/cjs/api/resources/metrics/client/Client.js +1 -1
- package/dist/cjs/api/resources/threads/client/Client.d.ts +14 -4
- package/dist/cjs/api/resources/threads/client/Client.js +136 -60
- package/dist/cjs/api/resources/threads/types/Thread.d.ts +6 -4
- package/dist/cjs/api/resources/threads/types/ThreadCreatedAt.d.ts +7 -0
- package/dist/cjs/api/resources/threads/types/ThreadCreatedAt.js +5 -0
- package/dist/cjs/api/resources/threads/types/ThreadItem.d.ts +6 -0
- package/dist/cjs/api/resources/threads/types/ThreadLastMessageId.d.ts +7 -0
- package/dist/cjs/api/resources/threads/types/ThreadLastMessageId.js +5 -0
- package/dist/cjs/api/resources/threads/types/ThreadReceivedTimestamp.d.ts +7 -0
- package/dist/cjs/api/resources/threads/types/ThreadReceivedTimestamp.js +5 -0
- package/dist/cjs/api/resources/threads/types/ThreadSentTimestamp.d.ts +7 -0
- package/dist/cjs/api/resources/threads/types/ThreadSentTimestamp.js +5 -0
- package/dist/cjs/api/resources/threads/types/ThreadSize.d.ts +7 -0
- package/dist/cjs/api/resources/threads/types/ThreadSize.js +5 -0
- package/dist/cjs/api/resources/threads/types/ThreadTimestamp.d.ts +1 -1
- package/dist/cjs/api/resources/threads/types/ThreadUpdatedAt.d.ts +7 -0
- package/dist/cjs/api/resources/threads/types/ThreadUpdatedAt.js +5 -0
- package/dist/cjs/api/resources/threads/types/index.d.ts +6 -0
- package/dist/cjs/api/resources/threads/types/index.js +6 -0
- package/dist/cjs/api/resources/webhooks/client/Client.d.ts +3 -4
- package/dist/cjs/api/resources/webhooks/client/Client.js +65 -55
- package/dist/cjs/api/resources/websockets/client/Client.d.ts +1 -1
- package/dist/cjs/api/resources/websockets/client/Client.js +2 -1
- package/dist/cjs/core/fetcher/Fetcher.d.ts +1 -1
- package/dist/cjs/core/fetcher/requestWithRetries.js +44 -8
- package/dist/cjs/core/headers.d.ts +2 -2
- package/dist/cjs/core/index.d.ts +2 -0
- package/dist/cjs/core/index.js +2 -0
- package/dist/cjs/core/pagination/Page.d.ts +32 -0
- package/dist/cjs/core/pagination/Page.js +100 -0
- package/dist/cjs/core/pagination/Pageable.d.ts +14 -0
- package/dist/cjs/core/pagination/Pageable.js +10 -0
- package/dist/cjs/core/pagination/index.d.ts +2 -0
- package/dist/cjs/core/pagination/index.js +7 -0
- package/dist/cjs/core/utils/index.d.ts +1 -0
- package/dist/cjs/core/utils/index.js +5 -0
- package/dist/cjs/core/utils/setObjectProperty.d.ts +11 -0
- package/dist/cjs/core/utils/setObjectProperty.js +42 -0
- package/dist/cjs/core/websocket/ws.d.ts +1 -1
- package/dist/cjs/serialization/resources/messages/types/Message.d.ts +10 -4
- package/dist/cjs/serialization/resources/messages/types/Message.js +10 -4
- package/dist/cjs/serialization/resources/messages/types/MessageCreatedAt.d.ts +10 -0
- package/dist/cjs/serialization/resources/messages/types/MessageCreatedAt.js +41 -0
- package/dist/cjs/serialization/resources/messages/types/MessageInReplyTo.d.ts +10 -0
- package/dist/cjs/serialization/resources/messages/types/MessageInReplyTo.js +41 -0
- package/dist/cjs/serialization/resources/messages/types/MessageItem.d.ts +10 -0
- package/dist/cjs/serialization/resources/messages/types/MessageItem.js +10 -0
- package/dist/cjs/serialization/resources/messages/types/MessageReferences.d.ts +10 -0
- package/dist/cjs/serialization/resources/messages/types/MessageReferences.js +41 -0
- package/dist/cjs/serialization/resources/messages/types/MessageReplyTo.d.ts +10 -0
- package/dist/cjs/serialization/resources/messages/types/MessageReplyTo.js +41 -0
- package/dist/cjs/serialization/resources/messages/types/MessageSize.d.ts +10 -0
- package/dist/cjs/serialization/resources/messages/types/MessageSize.js +41 -0
- package/dist/cjs/serialization/resources/messages/types/MessageUpdatedAt.d.ts +10 -0
- package/dist/cjs/serialization/resources/messages/types/MessageUpdatedAt.js +41 -0
- package/dist/cjs/serialization/resources/messages/types/index.d.ts +6 -0
- package/dist/cjs/serialization/resources/messages/types/index.js +6 -0
- package/dist/cjs/serialization/resources/threads/types/Thread.d.ts +12 -2
- package/dist/cjs/serialization/resources/threads/types/Thread.js +12 -2
- package/dist/cjs/serialization/resources/threads/types/ThreadCreatedAt.d.ts +10 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadCreatedAt.js +41 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadItem.d.ts +12 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadItem.js +12 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadLastMessageId.d.ts +10 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadLastMessageId.js +41 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadReceivedTimestamp.d.ts +10 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadReceivedTimestamp.js +41 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadSentTimestamp.d.ts +10 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadSentTimestamp.js +41 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadSize.d.ts +10 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadSize.js +41 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadUpdatedAt.d.ts +10 -0
- package/dist/cjs/serialization/resources/threads/types/ThreadUpdatedAt.js +41 -0
- package/dist/cjs/serialization/resources/threads/types/index.d.ts +6 -0
- package/dist/cjs/serialization/resources/threads/types/index.js +6 -0
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/Client.d.mts +2 -2
- package/dist/esm/Client.mjs +2 -2
- package/dist/esm/api/resources/domains/client/Client.d.mts +7 -7
- package/dist/esm/api/resources/domains/client/Client.mjs +69 -58
- package/dist/esm/api/resources/drafts/client/Client.d.mts +3 -4
- package/dist/esm/api/resources/drafts/client/Client.mjs +84 -71
- package/dist/esm/api/resources/inboxes/client/Client.d.mts +14 -4
- package/dist/esm/api/resources/inboxes/client/Client.mjs +127 -54
- package/dist/esm/api/resources/inboxes/resources/drafts/client/Client.d.mts +3 -4
- package/dist/esm/api/resources/inboxes/resources/drafts/client/Client.mjs +87 -74
- package/dist/esm/api/resources/inboxes/resources/messages/client/Client.d.mts +3 -4
- package/dist/esm/api/resources/inboxes/resources/messages/client/Client.mjs +89 -76
- package/dist/esm/api/resources/inboxes/resources/metrics/client/Client.d.mts +2 -2
- package/dist/esm/api/resources/inboxes/resources/metrics/client/Client.mjs +1 -1
- package/dist/esm/api/resources/inboxes/resources/threads/client/Client.d.mts +15 -4
- package/dist/esm/api/resources/inboxes/resources/threads/client/Client.mjs +138 -61
- package/dist/esm/api/resources/messages/types/Message.d.mts +5 -8
- package/dist/esm/api/resources/messages/types/MessageCreatedAt.d.mts +7 -0
- package/dist/esm/api/resources/messages/types/MessageCreatedAt.mjs +4 -0
- package/dist/esm/api/resources/messages/types/MessageInReplyTo.d.mts +7 -0
- package/dist/esm/api/resources/messages/types/MessageInReplyTo.mjs +4 -0
- package/dist/esm/api/resources/messages/types/MessageItem.d.mts +5 -0
- package/dist/esm/api/resources/messages/types/MessageReferences.d.mts +7 -0
- package/dist/esm/api/resources/messages/types/MessageReferences.mjs +4 -0
- package/dist/esm/api/resources/messages/types/MessageReplyTo.d.mts +7 -0
- package/dist/esm/api/resources/messages/types/MessageReplyTo.mjs +4 -0
- package/dist/esm/api/resources/messages/types/MessageSize.d.mts +7 -0
- package/dist/esm/api/resources/messages/types/MessageSize.mjs +4 -0
- package/dist/esm/api/resources/messages/types/MessageUpdatedAt.d.mts +7 -0
- package/dist/esm/api/resources/messages/types/MessageUpdatedAt.mjs +4 -0
- package/dist/esm/api/resources/messages/types/index.d.mts +6 -0
- package/dist/esm/api/resources/messages/types/index.mjs +6 -0
- package/dist/esm/api/resources/metrics/client/Client.d.mts +2 -2
- package/dist/esm/api/resources/metrics/client/Client.mjs +1 -1
- package/dist/esm/api/resources/threads/client/Client.d.mts +14 -4
- package/dist/esm/api/resources/threads/client/Client.mjs +136 -60
- package/dist/esm/api/resources/threads/types/Thread.d.mts +6 -4
- package/dist/esm/api/resources/threads/types/ThreadCreatedAt.d.mts +7 -0
- package/dist/esm/api/resources/threads/types/ThreadCreatedAt.mjs +4 -0
- package/dist/esm/api/resources/threads/types/ThreadItem.d.mts +6 -0
- package/dist/esm/api/resources/threads/types/ThreadLastMessageId.d.mts +7 -0
- package/dist/esm/api/resources/threads/types/ThreadLastMessageId.mjs +4 -0
- package/dist/esm/api/resources/threads/types/ThreadReceivedTimestamp.d.mts +7 -0
- package/dist/esm/api/resources/threads/types/ThreadReceivedTimestamp.mjs +4 -0
- package/dist/esm/api/resources/threads/types/ThreadSentTimestamp.d.mts +7 -0
- package/dist/esm/api/resources/threads/types/ThreadSentTimestamp.mjs +4 -0
- package/dist/esm/api/resources/threads/types/ThreadSize.d.mts +7 -0
- package/dist/esm/api/resources/threads/types/ThreadSize.mjs +4 -0
- package/dist/esm/api/resources/threads/types/ThreadTimestamp.d.mts +1 -1
- package/dist/esm/api/resources/threads/types/ThreadUpdatedAt.d.mts +7 -0
- package/dist/esm/api/resources/threads/types/ThreadUpdatedAt.mjs +4 -0
- package/dist/esm/api/resources/threads/types/index.d.mts +6 -0
- package/dist/esm/api/resources/threads/types/index.mjs +6 -0
- package/dist/esm/api/resources/webhooks/client/Client.d.mts +3 -4
- package/dist/esm/api/resources/webhooks/client/Client.mjs +65 -55
- package/dist/esm/api/resources/websockets/client/Client.d.mts +1 -1
- package/dist/esm/api/resources/websockets/client/Client.mjs +2 -1
- package/dist/esm/core/fetcher/Fetcher.d.mts +1 -1
- package/dist/esm/core/fetcher/requestWithRetries.mjs +44 -8
- package/dist/esm/core/headers.d.mts +2 -2
- package/dist/esm/core/index.d.mts +2 -0
- package/dist/esm/core/index.mjs +2 -0
- package/dist/esm/core/pagination/Page.d.mts +32 -0
- package/dist/esm/core/pagination/Page.mjs +96 -0
- package/dist/esm/core/pagination/Pageable.d.mts +14 -0
- package/dist/esm/core/pagination/Pageable.mjs +6 -0
- package/dist/esm/core/pagination/index.d.mts +2 -0
- package/dist/esm/core/pagination/index.mjs +2 -0
- package/dist/esm/core/utils/index.d.mts +1 -0
- package/dist/esm/core/utils/index.mjs +1 -0
- package/dist/esm/core/utils/setObjectProperty.d.mts +11 -0
- package/dist/esm/core/utils/setObjectProperty.mjs +39 -0
- package/dist/esm/core/websocket/ws.d.mts +1 -1
- package/dist/esm/serialization/resources/messages/types/Message.d.mts +10 -4
- package/dist/esm/serialization/resources/messages/types/Message.mjs +10 -4
- package/dist/esm/serialization/resources/messages/types/MessageCreatedAt.d.mts +10 -0
- package/dist/esm/serialization/resources/messages/types/MessageCreatedAt.mjs +5 -0
- package/dist/esm/serialization/resources/messages/types/MessageInReplyTo.d.mts +10 -0
- package/dist/esm/serialization/resources/messages/types/MessageInReplyTo.mjs +5 -0
- package/dist/esm/serialization/resources/messages/types/MessageItem.d.mts +10 -0
- package/dist/esm/serialization/resources/messages/types/MessageItem.mjs +10 -0
- package/dist/esm/serialization/resources/messages/types/MessageReferences.d.mts +10 -0
- package/dist/esm/serialization/resources/messages/types/MessageReferences.mjs +5 -0
- package/dist/esm/serialization/resources/messages/types/MessageReplyTo.d.mts +10 -0
- package/dist/esm/serialization/resources/messages/types/MessageReplyTo.mjs +5 -0
- package/dist/esm/serialization/resources/messages/types/MessageSize.d.mts +10 -0
- package/dist/esm/serialization/resources/messages/types/MessageSize.mjs +5 -0
- package/dist/esm/serialization/resources/messages/types/MessageUpdatedAt.d.mts +10 -0
- package/dist/esm/serialization/resources/messages/types/MessageUpdatedAt.mjs +5 -0
- package/dist/esm/serialization/resources/messages/types/index.d.mts +6 -0
- package/dist/esm/serialization/resources/messages/types/index.mjs +6 -0
- package/dist/esm/serialization/resources/threads/types/Thread.d.mts +12 -2
- package/dist/esm/serialization/resources/threads/types/Thread.mjs +12 -2
- package/dist/esm/serialization/resources/threads/types/ThreadCreatedAt.d.mts +10 -0
- package/dist/esm/serialization/resources/threads/types/ThreadCreatedAt.mjs +5 -0
- package/dist/esm/serialization/resources/threads/types/ThreadItem.d.mts +12 -0
- package/dist/esm/serialization/resources/threads/types/ThreadItem.mjs +12 -0
- package/dist/esm/serialization/resources/threads/types/ThreadLastMessageId.d.mts +10 -0
- package/dist/esm/serialization/resources/threads/types/ThreadLastMessageId.mjs +5 -0
- package/dist/esm/serialization/resources/threads/types/ThreadReceivedTimestamp.d.mts +10 -0
- package/dist/esm/serialization/resources/threads/types/ThreadReceivedTimestamp.mjs +5 -0
- package/dist/esm/serialization/resources/threads/types/ThreadSentTimestamp.d.mts +10 -0
- package/dist/esm/serialization/resources/threads/types/ThreadSentTimestamp.mjs +5 -0
- package/dist/esm/serialization/resources/threads/types/ThreadSize.d.mts +10 -0
- package/dist/esm/serialization/resources/threads/types/ThreadSize.mjs +5 -0
- package/dist/esm/serialization/resources/threads/types/ThreadUpdatedAt.d.mts +10 -0
- package/dist/esm/serialization/resources/threads/types/ThreadUpdatedAt.mjs +5 -0
- package/dist/esm/serialization/resources/threads/types/index.d.mts +6 -0
- package/dist/esm/serialization/resources/threads/types/index.mjs +6 -0
- package/dist/esm/version.d.mts +1 -1
- package/dist/esm/version.mjs +1 -1
- package/package.json +1 -1
- package/reference.md +404 -11
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
export * from "./ThreadId.js";
|
|
2
2
|
export * from "./ThreadLabels.js";
|
|
3
3
|
export * from "./ThreadTimestamp.js";
|
|
4
|
+
export * from "./ThreadReceivedTimestamp.js";
|
|
5
|
+
export * from "./ThreadSentTimestamp.js";
|
|
4
6
|
export * from "./ThreadSenders.js";
|
|
5
7
|
export * from "./ThreadRecipients.js";
|
|
6
8
|
export * from "./ThreadSubject.js";
|
|
7
9
|
export * from "./ThreadPreview.js";
|
|
8
10
|
export * from "./ThreadAttachments.js";
|
|
11
|
+
export * from "./ThreadLastMessageId.js";
|
|
9
12
|
export * from "./ThreadMessageCount.js";
|
|
13
|
+
export * from "./ThreadSize.js";
|
|
14
|
+
export * from "./ThreadUpdatedAt.js";
|
|
15
|
+
export * from "./ThreadCreatedAt.js";
|
|
10
16
|
export * from "./ThreadItem.js";
|
|
11
17
|
export * from "./Thread.js";
|
|
12
18
|
export * from "./ListThreadsResponse.js";
|
|
@@ -17,12 +17,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
__exportStar(require("./ThreadId.js"), exports);
|
|
18
18
|
__exportStar(require("./ThreadLabels.js"), exports);
|
|
19
19
|
__exportStar(require("./ThreadTimestamp.js"), exports);
|
|
20
|
+
__exportStar(require("./ThreadReceivedTimestamp.js"), exports);
|
|
21
|
+
__exportStar(require("./ThreadSentTimestamp.js"), exports);
|
|
20
22
|
__exportStar(require("./ThreadSenders.js"), exports);
|
|
21
23
|
__exportStar(require("./ThreadRecipients.js"), exports);
|
|
22
24
|
__exportStar(require("./ThreadSubject.js"), exports);
|
|
23
25
|
__exportStar(require("./ThreadPreview.js"), exports);
|
|
24
26
|
__exportStar(require("./ThreadAttachments.js"), exports);
|
|
27
|
+
__exportStar(require("./ThreadLastMessageId.js"), exports);
|
|
25
28
|
__exportStar(require("./ThreadMessageCount.js"), exports);
|
|
29
|
+
__exportStar(require("./ThreadSize.js"), exports);
|
|
30
|
+
__exportStar(require("./ThreadUpdatedAt.js"), exports);
|
|
31
|
+
__exportStar(require("./ThreadCreatedAt.js"), exports);
|
|
26
32
|
__exportStar(require("./ThreadItem.js"), exports);
|
|
27
33
|
__exportStar(require("./Thread.js"), exports);
|
|
28
34
|
__exportStar(require("./ListThreadsResponse.js"), exports);
|
|
@@ -11,7 +11,7 @@ export declare namespace Webhooks {
|
|
|
11
11
|
baseUrl?: core.Supplier<string>;
|
|
12
12
|
apiKey?: core.Supplier<core.BearerToken | undefined>;
|
|
13
13
|
/** Additional headers to include in requests. */
|
|
14
|
-
headers?: Record<string, string | core.Supplier<string | undefined> | undefined>;
|
|
14
|
+
headers?: Record<string, string | core.Supplier<string | null | undefined> | null | undefined>;
|
|
15
15
|
}
|
|
16
16
|
interface RequestOptions {
|
|
17
17
|
/** The maximum time to wait for a response in seconds. */
|
|
@@ -23,7 +23,7 @@ export declare namespace Webhooks {
|
|
|
23
23
|
/** Additional query string parameters to include in the request. */
|
|
24
24
|
queryParams?: Record<string, unknown>;
|
|
25
25
|
/** Additional headers to include in the request. */
|
|
26
|
-
headers?: Record<string, string | core.Supplier<string | undefined> | undefined>;
|
|
26
|
+
headers?: Record<string, string | core.Supplier<string | null | undefined> | null | undefined>;
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
export declare class Webhooks {
|
|
@@ -36,8 +36,7 @@ export declare class Webhooks {
|
|
|
36
36
|
* @example
|
|
37
37
|
* await client.webhooks.list()
|
|
38
38
|
*/
|
|
39
|
-
list(request?: AgentMail.webhooks.ListWebhooksRequest, requestOptions?: Webhooks.RequestOptions): core.
|
|
40
|
-
private __list;
|
|
39
|
+
list(request?: AgentMail.webhooks.ListWebhooksRequest, requestOptions?: Webhooks.RequestOptions): Promise<core.Page<AgentMail.webhooks.Webhook>>;
|
|
41
40
|
/**
|
|
42
41
|
* @param {AgentMail.webhooks.WebhookId} webhookId
|
|
43
42
|
* @param {Webhooks.RequestOptions} requestOptions - Request-specific configuration.
|
|
@@ -63,64 +63,74 @@ class Webhooks {
|
|
|
63
63
|
* @example
|
|
64
64
|
* await client.webhooks.list()
|
|
65
65
|
*/
|
|
66
|
-
list(
|
|
67
|
-
return core.HttpResponsePromise.fromPromise(this.__list(request, requestOptions));
|
|
68
|
-
}
|
|
69
|
-
__list() {
|
|
66
|
+
list() {
|
|
70
67
|
return __awaiter(this, arguments, void 0, function* (request = {}, requestOptions) {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
if (_response.ok) {
|
|
91
|
-
return {
|
|
92
|
-
data: serializers.webhooks.ListWebhooksResponse.parseOrThrow(_response.body, {
|
|
93
|
-
unrecognizedObjectKeys: "passthrough",
|
|
94
|
-
allowUnrecognizedUnionMembers: true,
|
|
95
|
-
allowUnrecognizedEnumValues: true,
|
|
96
|
-
skipValidation: true,
|
|
97
|
-
breadcrumbsPrefix: ["response"],
|
|
98
|
-
}),
|
|
99
|
-
rawResponse: _response.rawResponse,
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
if (_response.error.reason === "status-code") {
|
|
103
|
-
throw new errors.AgentMailError({
|
|
104
|
-
statusCode: _response.error.statusCode,
|
|
105
|
-
body: _response.error.body,
|
|
106
|
-
rawResponse: _response.rawResponse,
|
|
68
|
+
const list = core.HttpResponsePromise.interceptFunction((request) => __awaiter(this, void 0, void 0, function* () {
|
|
69
|
+
var _a, _b, _c;
|
|
70
|
+
const { limit, pageToken } = request;
|
|
71
|
+
const _queryParams = {};
|
|
72
|
+
if (limit != null) {
|
|
73
|
+
_queryParams["limit"] = limit.toString();
|
|
74
|
+
}
|
|
75
|
+
if (pageToken != null) {
|
|
76
|
+
_queryParams["page_token"] = pageToken;
|
|
77
|
+
}
|
|
78
|
+
let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
79
|
+
const _response = yield core.fetcher({
|
|
80
|
+
url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, "/v0/webhooks"),
|
|
81
|
+
method: "GET",
|
|
82
|
+
headers: _headers,
|
|
83
|
+
queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
|
|
84
|
+
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
85
|
+
maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
|
|
86
|
+
abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
|
|
107
87
|
});
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
88
|
+
if (_response.ok) {
|
|
89
|
+
return {
|
|
90
|
+
data: serializers.webhooks.ListWebhooksResponse.parseOrThrow(_response.body, {
|
|
91
|
+
unrecognizedObjectKeys: "passthrough",
|
|
92
|
+
allowUnrecognizedUnionMembers: true,
|
|
93
|
+
allowUnrecognizedEnumValues: true,
|
|
94
|
+
skipValidation: true,
|
|
95
|
+
breadcrumbsPrefix: ["response"],
|
|
96
|
+
}),
|
|
114
97
|
rawResponse: _response.rawResponse,
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
case "unknown":
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
if (_response.error.reason === "status-code") {
|
|
119
101
|
throw new errors.AgentMailError({
|
|
120
|
-
|
|
102
|
+
statusCode: _response.error.statusCode,
|
|
103
|
+
body: _response.error.body,
|
|
121
104
|
rawResponse: _response.rawResponse,
|
|
122
105
|
});
|
|
123
|
-
|
|
106
|
+
}
|
|
107
|
+
switch (_response.error.reason) {
|
|
108
|
+
case "non-json":
|
|
109
|
+
throw new errors.AgentMailError({
|
|
110
|
+
statusCode: _response.error.statusCode,
|
|
111
|
+
body: _response.error.rawBody,
|
|
112
|
+
rawResponse: _response.rawResponse,
|
|
113
|
+
});
|
|
114
|
+
case "timeout":
|
|
115
|
+
throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/webhooks.");
|
|
116
|
+
case "unknown":
|
|
117
|
+
throw new errors.AgentMailError({
|
|
118
|
+
message: _response.error.errorMessage,
|
|
119
|
+
rawResponse: _response.rawResponse,
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
}));
|
|
123
|
+
const dataWithRawResponse = yield list(request).withRawResponse();
|
|
124
|
+
return new core.Pageable({
|
|
125
|
+
response: dataWithRawResponse.data,
|
|
126
|
+
rawResponse: dataWithRawResponse.rawResponse,
|
|
127
|
+
hasNextPage: (response) => (response === null || response === void 0 ? void 0 : response.nextPageToken) != null &&
|
|
128
|
+
!(typeof (response === null || response === void 0 ? void 0 : response.nextPageToken) === "string" && (response === null || response === void 0 ? void 0 : response.nextPageToken) === ""),
|
|
129
|
+
getItems: (response) => { var _a; return (_a = response === null || response === void 0 ? void 0 : response.webhooks) !== null && _a !== void 0 ? _a : []; },
|
|
130
|
+
loadPage: (response) => {
|
|
131
|
+
return list(core.setObjectProperty(request, "pageToken", response === null || response === void 0 ? void 0 : response.nextPageToken));
|
|
132
|
+
},
|
|
133
|
+
});
|
|
124
134
|
});
|
|
125
135
|
}
|
|
126
136
|
/**
|
|
@@ -138,7 +148,7 @@ class Webhooks {
|
|
|
138
148
|
__get(webhookId, requestOptions) {
|
|
139
149
|
return __awaiter(this, void 0, void 0, function* () {
|
|
140
150
|
var _a, _b, _c;
|
|
141
|
-
|
|
151
|
+
let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
142
152
|
const _response = yield core.fetcher({
|
|
143
153
|
url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, `/v0/webhooks/${encodeURIComponent(serializers.webhooks.WebhookId.jsonOrThrow(webhookId, { omitUndefined: true }))}`),
|
|
144
154
|
method: "GET",
|
|
@@ -215,7 +225,7 @@ class Webhooks {
|
|
|
215
225
|
__create(request, requestOptions) {
|
|
216
226
|
return __awaiter(this, void 0, void 0, function* () {
|
|
217
227
|
var _a, _b, _c;
|
|
218
|
-
|
|
228
|
+
let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
219
229
|
const _response = yield core.fetcher({
|
|
220
230
|
url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, "/v0/webhooks"),
|
|
221
231
|
method: "POST",
|
|
@@ -293,7 +303,7 @@ class Webhooks {
|
|
|
293
303
|
__delete(webhookId, requestOptions) {
|
|
294
304
|
return __awaiter(this, void 0, void 0, function* () {
|
|
295
305
|
var _a, _b, _c;
|
|
296
|
-
|
|
306
|
+
let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
297
307
|
const _response = yield core.fetcher({
|
|
298
308
|
url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, `/v0/webhooks/${encodeURIComponent(serializers.webhooks.WebhookId.jsonOrThrow(webhookId, { omitUndefined: true }))}`),
|
|
299
309
|
method: "DELETE",
|
|
@@ -11,7 +11,7 @@ export declare namespace Websockets {
|
|
|
11
11
|
baseUrl?: core.Supplier<string>;
|
|
12
12
|
apiKey?: core.Supplier<core.BearerToken | undefined>;
|
|
13
13
|
/** Additional headers to include in requests. */
|
|
14
|
-
headers?: Record<string, string | core.Supplier<string | undefined> | undefined>;
|
|
14
|
+
headers?: Record<string, string | core.Supplier<string | null | undefined> | null | undefined>;
|
|
15
15
|
}
|
|
16
16
|
interface ConnectArgs {
|
|
17
17
|
authToken?: string | undefined;
|
|
@@ -48,6 +48,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
48
48
|
exports.Websockets = void 0;
|
|
49
49
|
const environments = __importStar(require("../../../../environments.js"));
|
|
50
50
|
const core = __importStar(require("../../../../core/index.js"));
|
|
51
|
+
const headers_js_1 = require("../../../../core/headers.js");
|
|
51
52
|
const Socket_js_1 = require("./Socket.js");
|
|
52
53
|
const errors = __importStar(require("../../../../errors/index.js"));
|
|
53
54
|
class Websockets {
|
|
@@ -62,7 +63,7 @@ class Websockets {
|
|
|
62
63
|
if (authToken != null) {
|
|
63
64
|
_queryParams["auth_token"] = authToken;
|
|
64
65
|
}
|
|
65
|
-
let _headers =
|
|
66
|
+
let _headers = (0, headers_js_1.mergeHeaders)((0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), headers);
|
|
66
67
|
const socket = new core.ReconnectingWebSocket({
|
|
67
68
|
url: core.url.join((_a = (yield core.Supplier.get(this._options["baseUrl"]))) !== null && _a !== void 0 ? _a : ((_b = (yield core.Supplier.get(this._options["environment"]))) !== null && _b !== void 0 ? _b : environments.AgentMailEnvironment.Production).websockets, "/v0"),
|
|
68
69
|
protocols: [],
|
|
@@ -6,7 +6,7 @@ export declare namespace Fetcher {
|
|
|
6
6
|
url: string;
|
|
7
7
|
method: string;
|
|
8
8
|
contentType?: string;
|
|
9
|
-
headers?: Record<string, string | Supplier<string | undefined> | undefined>;
|
|
9
|
+
headers?: Record<string, string | Supplier<string | null | undefined> | null | undefined>;
|
|
10
10
|
queryParameters?: Record<string, unknown>;
|
|
11
11
|
body?: unknown;
|
|
12
12
|
timeoutMs?: number;
|
|
@@ -14,21 +14,57 @@ const INITIAL_RETRY_DELAY = 1000; // in milliseconds
|
|
|
14
14
|
const MAX_RETRY_DELAY = 60000; // in milliseconds
|
|
15
15
|
const DEFAULT_MAX_RETRIES = 2;
|
|
16
16
|
const JITTER_FACTOR = 0.2; // 20% random jitter
|
|
17
|
-
function
|
|
18
|
-
// Generate a random value between
|
|
19
|
-
const jitterMultiplier = 1 +
|
|
17
|
+
function addPositiveJitter(delay) {
|
|
18
|
+
// Generate a random value between 0 and +JITTER_FACTOR
|
|
19
|
+
const jitterMultiplier = 1 + Math.random() * JITTER_FACTOR;
|
|
20
20
|
return delay * jitterMultiplier;
|
|
21
21
|
}
|
|
22
|
+
function addSymmetricJitter(delay) {
|
|
23
|
+
// Generate a random value in a JITTER_FACTOR-sized percentage range around delay
|
|
24
|
+
const jitterMultiplier = 1 + (Math.random() - 0.5) * JITTER_FACTOR;
|
|
25
|
+
return delay * jitterMultiplier;
|
|
26
|
+
}
|
|
27
|
+
function getRetryDelayFromHeaders(response, retryAttempt) {
|
|
28
|
+
// Check for Retry-After header first (RFC 7231), with no jitter
|
|
29
|
+
const retryAfter = response.headers.get("Retry-After");
|
|
30
|
+
if (retryAfter) {
|
|
31
|
+
// Parse as number of seconds...
|
|
32
|
+
const retryAfterSeconds = parseInt(retryAfter, 10);
|
|
33
|
+
if (!isNaN(retryAfterSeconds) && retryAfterSeconds > 0) {
|
|
34
|
+
return Math.min(retryAfterSeconds * 1000, MAX_RETRY_DELAY);
|
|
35
|
+
}
|
|
36
|
+
// ...or as an HTTP date; both are valid
|
|
37
|
+
const retryAfterDate = new Date(retryAfter);
|
|
38
|
+
if (!isNaN(retryAfterDate.getTime())) {
|
|
39
|
+
const delay = retryAfterDate.getTime() - Date.now();
|
|
40
|
+
if (delay > 0) {
|
|
41
|
+
return Math.min(Math.max(delay, 0), MAX_RETRY_DELAY);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
// Then check for industry-standard X-RateLimit-Reset header, with positive jitter
|
|
46
|
+
const rateLimitReset = response.headers.get("X-RateLimit-Reset");
|
|
47
|
+
if (rateLimitReset) {
|
|
48
|
+
const resetTime = parseInt(rateLimitReset, 10);
|
|
49
|
+
if (!isNaN(resetTime)) {
|
|
50
|
+
// Assume Unix timestamp in epoch seconds
|
|
51
|
+
const delay = resetTime * 1000 - Date.now();
|
|
52
|
+
if (delay > 0) {
|
|
53
|
+
return addPositiveJitter(Math.min(delay, MAX_RETRY_DELAY));
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
// Fall back to exponential backoff, with symmetric jitter
|
|
58
|
+
return addSymmetricJitter(Math.min(INITIAL_RETRY_DELAY * Math.pow(2, retryAttempt), MAX_RETRY_DELAY));
|
|
59
|
+
}
|
|
22
60
|
function requestWithRetries(requestFn_1) {
|
|
23
61
|
return __awaiter(this, arguments, void 0, function* (requestFn, maxRetries = DEFAULT_MAX_RETRIES) {
|
|
24
62
|
let response = yield requestFn();
|
|
25
63
|
for (let i = 0; i < maxRetries; ++i) {
|
|
26
64
|
if ([408, 429].includes(response.status) || response.status >= 500) {
|
|
27
|
-
//
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
const delayWithJitter = addJitter(baseDelay);
|
|
31
|
-
yield new Promise((resolve) => setTimeout(resolve, delayWithJitter));
|
|
65
|
+
// Get delay with appropriate jitter applied
|
|
66
|
+
const delay = getRetryDelayFromHeaders(response, i);
|
|
67
|
+
yield new Promise((resolve) => setTimeout(resolve, delay));
|
|
32
68
|
response = yield requestFn();
|
|
33
69
|
}
|
|
34
70
|
else {
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import * as core from "./index.js";
|
|
2
|
-
export declare function mergeHeaders(...headersArray: (Record<string, string | core.Supplier<string | undefined> | undefined> | undefined)[]): Record<string, string | core.Supplier<string | undefined>>;
|
|
3
|
-
export declare function mergeOnlyDefinedHeaders(...headersArray: (Record<string, string | core.Supplier<string | undefined> | undefined> | undefined)[]): Record<string, string | core.Supplier<string | undefined>>;
|
|
2
|
+
export declare function mergeHeaders(...headersArray: (Record<string, string | core.Supplier<string | null | undefined> | null | undefined> | null | undefined)[]): Record<string, string | core.Supplier<string | null | undefined>>;
|
|
3
|
+
export declare function mergeOnlyDefinedHeaders(...headersArray: (Record<string, string | core.Supplier<string | null | undefined> | null | undefined> | null | undefined)[]): Record<string, string | core.Supplier<string | null | undefined>>;
|
package/dist/cjs/core/index.d.ts
CHANGED
package/dist/cjs/core/index.js
CHANGED
|
@@ -44,3 +44,5 @@ exports.serialization = __importStar(require("./schemas/index.js"));
|
|
|
44
44
|
__exportStar(require("./websocket/index.js"), exports);
|
|
45
45
|
__exportStar(require("./auth/index.js"), exports);
|
|
46
46
|
__exportStar(require("./base64.js"), exports);
|
|
47
|
+
__exportStar(require("./utils/index.js"), exports);
|
|
48
|
+
__exportStar(require("./pagination/index.js"), exports);
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { HttpResponsePromise, RawResponse } from "../fetcher/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* A page of results from a paginated API.
|
|
4
|
+
*
|
|
5
|
+
* @template T The type of the items in the page.
|
|
6
|
+
*/
|
|
7
|
+
export declare class Page<T> implements AsyncIterable<T> {
|
|
8
|
+
data: T[];
|
|
9
|
+
rawResponse: RawResponse;
|
|
10
|
+
private response;
|
|
11
|
+
private _hasNextPage;
|
|
12
|
+
private getItems;
|
|
13
|
+
private loadNextPage;
|
|
14
|
+
constructor({ response, rawResponse, hasNextPage, getItems, loadPage, }: {
|
|
15
|
+
response: unknown;
|
|
16
|
+
rawResponse: RawResponse;
|
|
17
|
+
hasNextPage: (response: unknown) => boolean;
|
|
18
|
+
getItems: (response: unknown) => T[];
|
|
19
|
+
loadPage: (response: unknown) => HttpResponsePromise<any>;
|
|
20
|
+
});
|
|
21
|
+
/**
|
|
22
|
+
* Retrieves the next page
|
|
23
|
+
* @returns this
|
|
24
|
+
*/
|
|
25
|
+
getNextPage(): Promise<this>;
|
|
26
|
+
/**
|
|
27
|
+
* @returns whether there is a next page to load
|
|
28
|
+
*/
|
|
29
|
+
hasNextPage(): boolean;
|
|
30
|
+
private iterMessages;
|
|
31
|
+
[Symbol.asyncIterator](): AsyncIterator<T, void, any>;
|
|
32
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
12
|
+
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
13
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
14
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
15
|
+
return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
16
|
+
function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
|
|
17
|
+
function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
|
|
18
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
19
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
20
|
+
function fulfill(value) { resume("next", value); }
|
|
21
|
+
function reject(value) { resume("throw", value); }
|
|
22
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
23
|
+
};
|
|
24
|
+
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
25
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
26
|
+
var m = o[Symbol.asyncIterator], i;
|
|
27
|
+
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
28
|
+
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
29
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
30
|
+
};
|
|
31
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
+
exports.Page = void 0;
|
|
33
|
+
/**
|
|
34
|
+
* A page of results from a paginated API.
|
|
35
|
+
*
|
|
36
|
+
* @template T The type of the items in the page.
|
|
37
|
+
*/
|
|
38
|
+
class Page {
|
|
39
|
+
constructor({ response, rawResponse, hasNextPage, getItems, loadPage, }) {
|
|
40
|
+
this.response = response;
|
|
41
|
+
this.rawResponse = rawResponse;
|
|
42
|
+
this.data = getItems(response);
|
|
43
|
+
this._hasNextPage = hasNextPage;
|
|
44
|
+
this.getItems = getItems;
|
|
45
|
+
this.loadNextPage = loadPage;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Retrieves the next page
|
|
49
|
+
* @returns this
|
|
50
|
+
*/
|
|
51
|
+
getNextPage() {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
const { data, rawResponse } = yield this.loadNextPage(this.response).withRawResponse();
|
|
54
|
+
this.response = data;
|
|
55
|
+
this.rawResponse = rawResponse;
|
|
56
|
+
this.data = this.getItems(this.response);
|
|
57
|
+
return this;
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* @returns whether there is a next page to load
|
|
62
|
+
*/
|
|
63
|
+
hasNextPage() {
|
|
64
|
+
return this._hasNextPage(this.response);
|
|
65
|
+
}
|
|
66
|
+
iterMessages() {
|
|
67
|
+
return __asyncGenerator(this, arguments, function* iterMessages_1() {
|
|
68
|
+
for (const item of this.data) {
|
|
69
|
+
yield yield __await(item);
|
|
70
|
+
}
|
|
71
|
+
while (this.hasNextPage()) {
|
|
72
|
+
yield __await(this.getNextPage());
|
|
73
|
+
for (const item of this.data) {
|
|
74
|
+
yield yield __await(item);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
[Symbol.asyncIterator]() {
|
|
80
|
+
return __asyncGenerator(this, arguments, function* _a() {
|
|
81
|
+
var _b, e_1, _c, _d;
|
|
82
|
+
try {
|
|
83
|
+
for (var _e = true, _f = __asyncValues(this.iterMessages()), _g; _g = yield __await(_f.next()), _b = _g.done, !_b; _e = true) {
|
|
84
|
+
_d = _g.value;
|
|
85
|
+
_e = false;
|
|
86
|
+
const message = _d;
|
|
87
|
+
yield yield __await(message);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
91
|
+
finally {
|
|
92
|
+
try {
|
|
93
|
+
if (!_e && !_b && (_c = _f.return)) yield __await(_c.call(_f));
|
|
94
|
+
}
|
|
95
|
+
finally { if (e_1) throw e_1.error; }
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
exports.Page = Page;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RawResponse } from "../fetcher/index.js";
|
|
2
|
+
import { Page } from "./Page.js";
|
|
3
|
+
export declare namespace Pageable {
|
|
4
|
+
interface Args<Response, Item> {
|
|
5
|
+
response: Response;
|
|
6
|
+
rawResponse: RawResponse;
|
|
7
|
+
hasNextPage: (response: Response) => boolean;
|
|
8
|
+
getItems: (response: Response) => Item[];
|
|
9
|
+
loadPage: (response: Response) => Promise<Response>;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export declare class Pageable<R, T> extends Page<T> {
|
|
13
|
+
constructor(args: Pageable.Args<R, T>);
|
|
14
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Pageable = void 0;
|
|
4
|
+
const Page_js_1 = require("./Page.js");
|
|
5
|
+
class Pageable extends Page_js_1.Page {
|
|
6
|
+
constructor(args) {
|
|
7
|
+
super(args);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.Pageable = Pageable;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Pageable = exports.Page = void 0;
|
|
4
|
+
var Page_js_1 = require("./Page.js");
|
|
5
|
+
Object.defineProperty(exports, "Page", { enumerable: true, get: function () { return Page_js_1.Page; } });
|
|
6
|
+
var Pageable_js_1 = require("./Pageable.js");
|
|
7
|
+
Object.defineProperty(exports, "Pageable", { enumerable: true, get: function () { return Pageable_js_1.Pageable; } });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { setObjectProperty } from "./setObjectProperty.js";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setObjectProperty = void 0;
|
|
4
|
+
var setObjectProperty_js_1 = require("./setObjectProperty.js");
|
|
5
|
+
Object.defineProperty(exports, "setObjectProperty", { enumerable: true, get: function () { return setObjectProperty_js_1.setObjectProperty; } });
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sets the value at path of object. If a portion of path doesn’t exist it’s created. This is
|
|
3
|
+
* inspired by Lodash's set function, but is simplified to accommodate our use case.
|
|
4
|
+
* For more details, see https://lodash.com/docs/4.17.15#set.
|
|
5
|
+
*
|
|
6
|
+
* @param object The object to modify.
|
|
7
|
+
* @param path The path of the property to set.
|
|
8
|
+
* @param value The value to set.
|
|
9
|
+
* @return Returns object.
|
|
10
|
+
*/
|
|
11
|
+
export declare function setObjectProperty<T extends object>(object: T, path: string, value: any): T;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setObjectProperty = setObjectProperty;
|
|
4
|
+
/**
|
|
5
|
+
* Sets the value at path of object. If a portion of path doesn’t exist it’s created. This is
|
|
6
|
+
* inspired by Lodash's set function, but is simplified to accommodate our use case.
|
|
7
|
+
* For more details, see https://lodash.com/docs/4.17.15#set.
|
|
8
|
+
*
|
|
9
|
+
* @param object The object to modify.
|
|
10
|
+
* @param path The path of the property to set.
|
|
11
|
+
* @param value The value to set.
|
|
12
|
+
* @return Returns object.
|
|
13
|
+
*/
|
|
14
|
+
function setObjectProperty(object, path, value) {
|
|
15
|
+
if (object == null) {
|
|
16
|
+
return object;
|
|
17
|
+
}
|
|
18
|
+
const keys = path.split(".");
|
|
19
|
+
if (keys.length === 0) {
|
|
20
|
+
// Invalid path; do nothing.
|
|
21
|
+
return object;
|
|
22
|
+
}
|
|
23
|
+
let current = object;
|
|
24
|
+
for (let i = 0; i < keys.length - 1; i++) {
|
|
25
|
+
const key = keys[i];
|
|
26
|
+
if (key == null) {
|
|
27
|
+
// Unreachable.
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
if (!current[key] || typeof current[key] !== "object") {
|
|
31
|
+
current[key] = {};
|
|
32
|
+
}
|
|
33
|
+
current = current[key];
|
|
34
|
+
}
|
|
35
|
+
const lastKey = keys[keys.length - 1];
|
|
36
|
+
if (lastKey == null) {
|
|
37
|
+
// Unreachable.
|
|
38
|
+
return object;
|
|
39
|
+
}
|
|
40
|
+
current[lastKey] = value;
|
|
41
|
+
return object;
|
|
42
|
+
}
|
|
@@ -7,7 +7,7 @@ export declare namespace ReconnectingWebSocket {
|
|
|
7
7
|
url: string;
|
|
8
8
|
protocols?: string | string[];
|
|
9
9
|
options?: ReconnectingWebSocket.Options;
|
|
10
|
-
headers?: Record<string,
|
|
10
|
+
headers?: Record<string, unknown>;
|
|
11
11
|
queryParameters?: Record<string, string | string[] | object | object[] | null | undefined>;
|
|
12
12
|
}
|
|
13
13
|
type Options = {
|
|
@@ -18,6 +18,11 @@ import { MessagePreview } from "./MessagePreview.js";
|
|
|
18
18
|
import { MessageText } from "./MessageText.js";
|
|
19
19
|
import { MessageHtml } from "./MessageHtml.js";
|
|
20
20
|
import { MessageAttachments } from "./MessageAttachments.js";
|
|
21
|
+
import { MessageInReplyTo } from "./MessageInReplyTo.js";
|
|
22
|
+
import { MessageReferences } from "./MessageReferences.js";
|
|
23
|
+
import { MessageSize } from "./MessageSize.js";
|
|
24
|
+
import { MessageUpdatedAt } from "./MessageUpdatedAt.js";
|
|
25
|
+
import { MessageCreatedAt } from "./MessageCreatedAt.js";
|
|
21
26
|
export declare const Message: core.serialization.ObjectSchema<serializers.Message.Raw, AgentMail.Message>;
|
|
22
27
|
export declare namespace Message {
|
|
23
28
|
interface Raw {
|
|
@@ -36,9 +41,10 @@ export declare namespace Message {
|
|
|
36
41
|
text?: MessageText.Raw | null;
|
|
37
42
|
html?: MessageHtml.Raw | null;
|
|
38
43
|
attachments?: MessageAttachments.Raw | null;
|
|
39
|
-
in_reply_to?:
|
|
40
|
-
references?:
|
|
41
|
-
|
|
42
|
-
|
|
44
|
+
in_reply_to?: MessageInReplyTo.Raw | null;
|
|
45
|
+
references?: MessageReferences.Raw | null;
|
|
46
|
+
size: MessageSize.Raw;
|
|
47
|
+
updated_at: MessageUpdatedAt.Raw;
|
|
48
|
+
created_at: MessageCreatedAt.Raw;
|
|
43
49
|
}
|
|
44
50
|
}
|