@sendmux/cli 1.0.0 → 1.0.1
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/LICENSE +21 -0
- package/README.md +72 -5
- package/dist/base-command.d.ts +2 -0
- package/dist/base-command.d.ts.map +1 -1
- package/dist/base-command.js +27 -0
- package/dist/commands/mailbox/batch-delete-messages.d.ts +26 -0
- package/dist/commands/mailbox/batch-delete-messages.d.ts.map +1 -0
- package/dist/commands/mailbox/batch-delete-messages.js +7 -0
- package/dist/commands/mailbox/batch-get-messages.d.ts +26 -0
- package/dist/commands/mailbox/batch-get-messages.d.ts.map +1 -0
- package/dist/commands/mailbox/batch-get-messages.js +7 -0
- package/dist/commands/mailbox/batch-update-messages.d.ts +26 -0
- package/dist/commands/mailbox/batch-update-messages.d.ts.map +1 -0
- package/dist/commands/mailbox/batch-update-messages.js +7 -0
- package/dist/commands/mailbox/count-messages.d.ts +142 -0
- package/dist/commands/mailbox/count-messages.d.ts.map +1 -0
- package/dist/commands/mailbox/count-messages.js +7 -0
- package/dist/commands/mailbox/create-folder.d.ts +26 -0
- package/dist/commands/mailbox/create-folder.d.ts.map +1 -0
- package/dist/commands/mailbox/create-folder.js +7 -0
- package/dist/commands/mailbox/delete-folder.d.ts +38 -0
- package/dist/commands/mailbox/delete-folder.d.ts.map +1 -0
- package/dist/commands/mailbox/delete-folder.js +7 -0
- package/dist/commands/mailbox/delete-message.d.ts +44 -0
- package/dist/commands/mailbox/delete-message.d.ts.map +1 -0
- package/dist/commands/mailbox/delete-message.js +7 -0
- package/dist/commands/mailbox/folders/list.d.ts +17 -1
- package/dist/commands/mailbox/folders/list.d.ts.map +1 -1
- package/dist/commands/mailbox/folders/list.js +5 -4
- package/dist/commands/mailbox/get-changes.d.ts +82 -0
- package/dist/commands/mailbox/get-changes.d.ts.map +1 -0
- package/dist/commands/mailbox/get-changes.js +7 -0
- package/dist/commands/mailbox/get-folder-changes.d.ts +40 -0
- package/dist/commands/mailbox/get-folder-changes.d.ts.map +1 -0
- package/dist/commands/mailbox/get-folder-changes.js +7 -0
- package/dist/commands/mailbox/get-folder.d.ts +38 -0
- package/dist/commands/mailbox/get-folder.d.ts.map +1 -0
- package/dist/commands/mailbox/get-folder.js +7 -0
- package/dist/commands/mailbox/get-identity.d.ts +26 -0
- package/dist/commands/mailbox/get-identity.d.ts.map +1 -0
- package/dist/commands/mailbox/get-identity.js +7 -0
- package/dist/commands/mailbox/get-message-attachment.d.ts +44 -0
- package/dist/commands/mailbox/get-message-attachment.d.ts.map +1 -0
- package/dist/commands/mailbox/get-message-attachment.js +7 -0
- package/dist/commands/mailbox/get-quota-changes.d.ts +40 -0
- package/dist/commands/mailbox/get-quota-changes.d.ts.map +1 -0
- package/dist/commands/mailbox/get-quota-changes.js +7 -0
- package/dist/commands/mailbox/get-session.d.ts +32 -0
- package/dist/commands/mailbox/get-session.d.ts.map +1 -0
- package/dist/commands/mailbox/get-session.js +7 -0
- package/dist/commands/mailbox/get-submission-changes.d.ts +40 -0
- package/dist/commands/mailbox/get-submission-changes.d.ts.map +1 -0
- package/dist/commands/mailbox/get-submission-changes.js +7 -0
- package/dist/commands/mailbox/get-submission.d.ts +38 -0
- package/dist/commands/mailbox/get-submission.d.ts.map +1 -0
- package/dist/commands/mailbox/get-submission.js +7 -0
- package/dist/commands/mailbox/get-thread-content.d.ts +112 -0
- package/dist/commands/mailbox/get-thread-content.d.ts.map +1 -0
- package/dist/commands/mailbox/get-thread-content.js +7 -0
- package/dist/commands/mailbox/get-thread.d.ts +38 -0
- package/dist/commands/mailbox/get-thread.d.ts.map +1 -0
- package/dist/commands/mailbox/get-thread.js +7 -0
- package/dist/commands/mailbox/list-body.d.ts +53 -0
- package/dist/commands/mailbox/list-body.d.ts.map +1 -0
- package/dist/commands/mailbox/list-body.js +7 -0
- package/dist/commands/mailbox/list-content.d.ts +91 -0
- package/dist/commands/mailbox/list-content.d.ts.map +1 -0
- package/dist/commands/mailbox/list-content.js +7 -0
- package/dist/commands/mailbox/list-granted-mailboxes.d.ts +40 -0
- package/dist/commands/mailbox/list-granted-mailboxes.d.ts.map +1 -0
- package/dist/commands/mailbox/list-granted-mailboxes.js +7 -0
- package/dist/commands/mailbox/list-identities.d.ts +40 -0
- package/dist/commands/mailbox/list-identities.d.ts.map +1 -0
- package/dist/commands/mailbox/list-identities.js +7 -0
- package/dist/commands/mailbox/list-quotas.d.ts +80 -0
- package/dist/commands/mailbox/list-quotas.d.ts.map +1 -0
- package/dist/commands/mailbox/list-quotas.js +7 -0
- package/dist/commands/mailbox/list-submissions.d.ts +91 -0
- package/dist/commands/mailbox/list-submissions.d.ts.map +1 -0
- package/dist/commands/mailbox/list-submissions.js +7 -0
- package/dist/commands/mailbox/list-thread-messages.d.ts +53 -0
- package/dist/commands/mailbox/list-thread-messages.d.ts.map +1 -0
- package/dist/commands/mailbox/list-thread-messages.js +7 -0
- package/dist/commands/mailbox/list-threads.d.ts +89 -0
- package/dist/commands/mailbox/list-threads.d.ts.map +1 -0
- package/dist/commands/mailbox/list-threads.js +7 -0
- package/dist/commands/mailbox/list-usage.d.ts +32 -0
- package/dist/commands/mailbox/list-usage.d.ts.map +1 -0
- package/dist/commands/mailbox/list-usage.js +7 -0
- package/dist/commands/mailbox/me/get.d.ts +13 -2
- package/dist/commands/mailbox/me/get.d.ts.map +1 -1
- package/dist/commands/mailbox/me/get.js +5 -4
- package/dist/commands/mailbox/messages/get.d.ts +16 -2
- package/dist/commands/mailbox/messages/get.d.ts.map +1 -1
- package/dist/commands/mailbox/messages/get.js +5 -4
- package/dist/commands/mailbox/messages/list.d.ts +84 -1
- package/dist/commands/mailbox/messages/list.d.ts.map +1 -1
- package/dist/commands/mailbox/messages/list.js +5 -4
- package/dist/commands/mailbox/query-folder-changes.d.ts +40 -0
- package/dist/commands/mailbox/query-folder-changes.d.ts.map +1 -0
- package/dist/commands/mailbox/query-folder-changes.js +7 -0
- package/dist/commands/mailbox/query-message-changes.d.ts +176 -0
- package/dist/commands/mailbox/query-message-changes.d.ts.map +1 -0
- package/dist/commands/mailbox/query-message-changes.js +7 -0
- package/dist/commands/mailbox/search-message-snippets.d.ts +150 -0
- package/dist/commands/mailbox/search-message-snippets.d.ts.map +1 -0
- package/dist/commands/mailbox/search-message-snippets.js +7 -0
- package/dist/commands/mailbox/send-message.d.ts +33 -0
- package/dist/commands/mailbox/send-message.d.ts.map +1 -0
- package/dist/commands/mailbox/send-message.js +7 -0
- package/dist/commands/mailbox/stream-events.d.ts +60 -0
- package/dist/commands/mailbox/stream-events.d.ts.map +1 -0
- package/dist/commands/mailbox/stream-events.js +7 -0
- package/dist/commands/mailbox/update-folder.d.ts +38 -0
- package/dist/commands/mailbox/update-folder.d.ts.map +1 -0
- package/dist/commands/mailbox/update-folder.js +7 -0
- package/dist/commands/mailbox/update-identity.d.ts +26 -0
- package/dist/commands/mailbox/update-identity.d.ts.map +1 -0
- package/dist/commands/mailbox/update-identity.js +7 -0
- package/dist/commands/mailbox/update-message.d.ts +38 -0
- package/dist/commands/mailbox/update-message.d.ts.map +1 -0
- package/dist/commands/mailbox/update-message.js +7 -0
- package/dist/commands/mailbox/upload-attachment.d.ts +32 -0
- package/dist/commands/mailbox/upload-attachment.d.ts.map +1 -0
- package/dist/commands/mailbox/upload-attachment.js +7 -0
- package/dist/commands/management/activate-provider.d.ts +33 -0
- package/dist/commands/management/activate-provider.d.ts.map +1 -0
- package/dist/commands/management/activate-provider.js +7 -0
- package/dist/commands/management/cancel-shared-amazon-ses-limit-request.d.ts +26 -0
- package/dist/commands/management/cancel-shared-amazon-ses-limit-request.d.ts.map +1 -0
- package/dist/commands/management/cancel-shared-amazon-ses-limit-request.js +7 -0
- package/dist/commands/management/create-domain.d.ts +27 -0
- package/dist/commands/management/create-domain.d.ts.map +1 -0
- package/dist/commands/management/create-domain.js +7 -0
- package/dist/commands/management/create-mailbox-key.d.ts +33 -0
- package/dist/commands/management/create-mailbox-key.d.ts.map +1 -0
- package/dist/commands/management/create-mailbox-key.js +7 -0
- package/dist/commands/management/create-mailbox.d.ts +27 -0
- package/dist/commands/management/create-mailbox.d.ts.map +1 -0
- package/dist/commands/management/create-mailbox.js +7 -0
- package/dist/commands/management/create-provider.d.ts +27 -0
- package/dist/commands/management/create-provider.d.ts.map +1 -0
- package/dist/commands/management/create-provider.js +7 -0
- package/dist/commands/management/create-shared-amazon-ses-limit-request.d.ts +27 -0
- package/dist/commands/management/create-shared-amazon-ses-limit-request.d.ts.map +1 -0
- package/dist/commands/management/create-shared-amazon-ses-limit-request.js +7 -0
- package/dist/commands/management/create-webhook.d.ts +27 -0
- package/dist/commands/management/create-webhook.d.ts.map +1 -0
- package/dist/commands/management/create-webhook.js +7 -0
- package/dist/commands/management/deactivate-provider.d.ts +33 -0
- package/dist/commands/management/deactivate-provider.d.ts.map +1 -0
- package/dist/commands/management/deactivate-provider.js +7 -0
- package/dist/commands/management/delete-domain.d.ts +26 -0
- package/dist/commands/management/delete-domain.d.ts.map +1 -0
- package/dist/commands/management/delete-domain.js +7 -0
- package/dist/commands/management/delete-mailbox-key.d.ts +32 -0
- package/dist/commands/management/delete-mailbox-key.d.ts.map +1 -0
- package/dist/commands/management/delete-mailbox-key.js +7 -0
- package/dist/commands/management/delete-mailbox.d.ts +26 -0
- package/dist/commands/management/delete-mailbox.d.ts.map +1 -0
- package/dist/commands/management/delete-mailbox.js +7 -0
- package/dist/commands/management/delete-provider.d.ts +26 -0
- package/dist/commands/management/delete-provider.d.ts.map +1 -0
- package/dist/commands/management/delete-provider.js +7 -0
- package/dist/commands/management/delete-webhook.d.ts +26 -0
- package/dist/commands/management/delete-webhook.d.ts.map +1 -0
- package/dist/commands/management/delete-webhook.js +7 -0
- package/dist/commands/management/domains/get.d.ts +9 -1
- package/dist/commands/management/domains/get.d.ts.map +1 -1
- package/dist/commands/management/domains/get.js +5 -4
- package/dist/commands/management/domains/list.d.ts +11 -1
- package/dist/commands/management/domains/list.d.ts.map +1 -1
- package/dist/commands/management/domains/list.js +5 -4
- package/dist/commands/management/get-delivery-payload.d.ts +32 -0
- package/dist/commands/management/get-delivery-payload.d.ts.map +1 -0
- package/dist/commands/management/get-delivery-payload.js +7 -0
- package/dist/commands/management/get-domain-filters.d.ts +32 -0
- package/dist/commands/management/get-domain-filters.d.ts.map +1 -0
- package/dist/commands/management/get-domain-filters.js +7 -0
- package/dist/commands/management/get-domain-zone-file.d.ts +26 -0
- package/dist/commands/management/get-domain-zone-file.d.ts.map +1 -0
- package/dist/commands/management/get-domain-zone-file.js +7 -0
- package/dist/commands/management/get-email-log.d.ts +32 -0
- package/dist/commands/management/get-email-log.d.ts.map +1 -0
- package/dist/commands/management/get-email-log.js +7 -0
- package/dist/commands/management/get-email-metrics.d.ts +52 -0
- package/dist/commands/management/get-email-metrics.d.ts.map +1 -0
- package/dist/commands/management/get-email-metrics.js +7 -0
- package/dist/commands/management/get-inbox-log.d.ts +26 -0
- package/dist/commands/management/get-inbox-log.d.ts.map +1 -0
- package/dist/commands/management/get-inbox-log.js +7 -0
- package/dist/commands/management/get-mailbox-filters.d.ts +32 -0
- package/dist/commands/management/get-mailbox-filters.d.ts.map +1 -0
- package/dist/commands/management/get-mailbox-filters.js +7 -0
- package/dist/commands/management/get-mailbox.d.ts +32 -0
- package/dist/commands/management/get-mailbox.d.ts.map +1 -0
- package/dist/commands/management/get-mailbox.js +7 -0
- package/dist/commands/management/get-provider-limits.d.ts +20 -0
- package/dist/commands/management/get-provider-limits.d.ts.map +1 -0
- package/dist/commands/management/get-provider-limits.js +7 -0
- package/dist/commands/management/get-provider-stats.d.ts +20 -0
- package/dist/commands/management/get-provider-stats.d.ts.map +1 -0
- package/dist/commands/management/get-provider-stats.js +7 -0
- package/dist/commands/management/get-provider-usage.d.ts +20 -0
- package/dist/commands/management/get-provider-usage.d.ts.map +1 -0
- package/dist/commands/management/get-provider-usage.js +7 -0
- package/dist/commands/management/get-provider.d.ts +32 -0
- package/dist/commands/management/get-provider.d.ts.map +1 -0
- package/dist/commands/management/get-provider.js +7 -0
- package/dist/commands/management/get-shared-amazon-ses-limit-request.d.ts +20 -0
- package/dist/commands/management/get-shared-amazon-ses-limit-request.d.ts.map +1 -0
- package/dist/commands/management/get-shared-amazon-ses-limit-request.js +7 -0
- package/dist/commands/management/get-spend-summary.d.ts +27 -0
- package/dist/commands/management/get-spend-summary.d.ts.map +1 -0
- package/dist/commands/management/get-spend-summary.js +7 -0
- package/dist/commands/management/get-webhook.d.ts +32 -0
- package/dist/commands/management/get-webhook.d.ts.map +1 -0
- package/dist/commands/management/get-webhook.js +7 -0
- package/dist/commands/management/list-balance.d.ts +20 -0
- package/dist/commands/management/list-balance.d.ts.map +1 -0
- package/dist/commands/management/list-balance.js +7 -0
- package/dist/commands/management/list-delivery.d.ts +54 -0
- package/dist/commands/management/list-delivery.d.ts.map +1 -0
- package/dist/commands/management/list-delivery.js +7 -0
- package/dist/commands/management/list-email-logs.d.ts +65 -0
- package/dist/commands/management/list-email-logs.d.ts.map +1 -0
- package/dist/commands/management/list-email-logs.js +7 -0
- package/dist/commands/management/list-inbox-logs.d.ts +65 -0
- package/dist/commands/management/list-inbox-logs.d.ts.map +1 -0
- package/dist/commands/management/list-inbox-logs.js +7 -0
- package/dist/commands/management/list-transactions.d.ts +41 -0
- package/dist/commands/management/list-transactions.d.ts.map +1 -0
- package/dist/commands/management/list-transactions.js +7 -0
- package/dist/commands/management/list-webhooks.d.ts +34 -0
- package/dist/commands/management/list-webhooks.d.ts.map +1 -0
- package/dist/commands/management/list-webhooks.js +7 -0
- package/dist/commands/management/mailboxes/list.d.ts +15 -1
- package/dist/commands/management/mailboxes/list.d.ts.map +1 -1
- package/dist/commands/management/mailboxes/list.js +5 -4
- package/dist/commands/management/providers/list.d.ts +19 -1
- package/dist/commands/management/providers/list.d.ts.map +1 -1
- package/dist/commands/management/providers/list.js +5 -4
- package/dist/commands/management/request-sending-account-limit-increase.d.ts +27 -0
- package/dist/commands/management/request-sending-account-limit-increase.d.ts.map +1 -0
- package/dist/commands/management/request-sending-account-limit-increase.js +7 -0
- package/dist/commands/management/resume-mailbox.d.ts +33 -0
- package/dist/commands/management/resume-mailbox.d.ts.map +1 -0
- package/dist/commands/management/resume-mailbox.js +7 -0
- package/dist/commands/management/rotate-webhook-secret.d.ts +33 -0
- package/dist/commands/management/rotate-webhook-secret.d.ts.map +1 -0
- package/dist/commands/management/rotate-webhook-secret.js +7 -0
- package/dist/commands/management/set-domain-filters.d.ts +32 -0
- package/dist/commands/management/set-domain-filters.d.ts.map +1 -0
- package/dist/commands/management/set-domain-filters.js +7 -0
- package/dist/commands/management/set-mailbox-filters.d.ts +32 -0
- package/dist/commands/management/set-mailbox-filters.d.ts.map +1 -0
- package/dist/commands/management/set-mailbox-filters.js +7 -0
- package/dist/commands/management/suspend-mailbox.d.ts +33 -0
- package/dist/commands/management/suspend-mailbox.d.ts.map +1 -0
- package/dist/commands/management/suspend-mailbox.js +7 -0
- package/dist/commands/management/test-provider.d.ts +33 -0
- package/dist/commands/management/test-provider.d.ts.map +1 -0
- package/dist/commands/management/test-provider.js +7 -0
- package/dist/commands/management/test-webhook.d.ts +33 -0
- package/dist/commands/management/test-webhook.d.ts.map +1 -0
- package/dist/commands/management/test-webhook.js +7 -0
- package/dist/commands/management/update-domain.d.ts +32 -0
- package/dist/commands/management/update-domain.d.ts.map +1 -0
- package/dist/commands/management/update-domain.js +7 -0
- package/dist/commands/management/update-mailbox.d.ts +32 -0
- package/dist/commands/management/update-mailbox.d.ts.map +1 -0
- package/dist/commands/management/update-mailbox.js +7 -0
- package/dist/commands/management/update-provider.d.ts +32 -0
- package/dist/commands/management/update-provider.d.ts.map +1 -0
- package/dist/commands/management/update-provider.js +7 -0
- package/dist/commands/management/update-webhook.d.ts +32 -0
- package/dist/commands/management/update-webhook.d.ts.map +1 -0
- package/dist/commands/management/update-webhook.js +7 -0
- package/dist/commands/management/verify-domain.d.ts +26 -0
- package/dist/commands/management/verify-domain.d.ts.map +1 -0
- package/dist/commands/management/verify-domain.js +7 -0
- package/dist/commands/sending/get-open-api-spec.d.ts +26 -0
- package/dist/commands/sending/get-open-api-spec.d.ts.map +1 -0
- package/dist/commands/sending/get-open-api-spec.js +7 -0
- package/dist/commands/sending/send/batch.d.ts +8 -2
- package/dist/commands/sending/send/batch.d.ts.map +1 -1
- package/dist/commands/sending/send/batch.js +5 -4
- package/dist/commands/sending/send.d.ts +8 -2
- package/dist/commands/sending/send.d.ts.map +1 -1
- package/dist/commands/sending/send.js +5 -4
- package/dist/generated/operations.d.ts +1710 -25
- package/dist/generated/operations.d.ts.map +1 -1
- package/dist/generated/operations.js +2012 -316
- package/dist/operation-flags.d.ts +3 -3
- package/dist/operation-flags.d.ts.map +1 -1
- package/dist/operation-flags.js +132 -21
- package/dist/operation-runner.d.ts.map +1 -1
- package/dist/operation-runner.js +65 -7
- package/dist/operation-types.d.ts +19 -0
- package/dist/operation-types.d.ts.map +1 -1
- package/oclif.manifest.json +13474 -238
- package/package.json +2 -1
|
@@ -12,9 +12,9 @@ export interface OperationFlags extends AuthFlags {
|
|
|
12
12
|
}
|
|
13
13
|
export interface ParsedOperationOptions {
|
|
14
14
|
body?: unknown;
|
|
15
|
-
headers?: Record<string,
|
|
16
|
-
path?: Record<string,
|
|
17
|
-
query?: Record<string,
|
|
15
|
+
headers?: Record<string, unknown>;
|
|
16
|
+
path?: Record<string, unknown>;
|
|
17
|
+
query?: Record<string, unknown>;
|
|
18
18
|
}
|
|
19
19
|
export declare const operationFlags: {
|
|
20
20
|
body: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-flags.d.ts","sourceRoot":"","sources":["../src/operation-flags.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"operation-flags.d.ts","sourceRoot":"","sources":["../src/operation-flags.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,mBAAmB,EAGpB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;CA6B1B,CAAC;AAEF,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,mBAAmB,EAC9B,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,sBAAsB,CAAC,CAwBjC"}
|
package/dist/operation-flags.js
CHANGED
|
@@ -4,10 +4,10 @@ import { authFlags, } from "./base-command.js";
|
|
|
4
4
|
export const operationFlags = {
|
|
5
5
|
...authFlags,
|
|
6
6
|
body: Flags.string({
|
|
7
|
-
description: "JSON request body
|
|
7
|
+
description: "JSON request body, or UTF-8 bytes for binary operations.",
|
|
8
8
|
}),
|
|
9
9
|
"body-file": Flags.string({
|
|
10
|
-
description: "Path to a JSON request body file.",
|
|
10
|
+
description: "Path to a JSON request body file, or a binary file for binary operations.",
|
|
11
11
|
}),
|
|
12
12
|
header: Flags.string({
|
|
13
13
|
description: "Header as name=value. Repeat for multiple headers.",
|
|
@@ -32,24 +32,17 @@ export const operationFlags = {
|
|
|
32
32
|
}),
|
|
33
33
|
};
|
|
34
34
|
export async function parseOperationOptions(command, operation, flags) {
|
|
35
|
-
const path =
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
command.error(`Missing path parameter "${parameter.name}". Pass --path ${parameter.name}=<value>.`, {
|
|
39
|
-
exit: 2,
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
const query = parsePairs(flags.query ?? [], "--query");
|
|
44
|
-
const headers = parsePairs(flags.header ?? [], "--header");
|
|
35
|
+
const path = parseParameterPairs(command, operation.pathParams, flags.path ?? [], "--path");
|
|
36
|
+
const query = parseParameterPairs(command, operation.queryParams, flags.query ?? [], "--query");
|
|
37
|
+
const headers = parseParameterPairs(command, operation.headerParams, flags.header ?? [], "--header");
|
|
45
38
|
if (flags["idempotency-key"]) {
|
|
46
|
-
headers
|
|
39
|
+
addHeaderFlag(command, operation, headers, "Idempotency-Key", flags["idempotency-key"]);
|
|
47
40
|
}
|
|
48
41
|
if (flags["if-match"]) {
|
|
49
|
-
headers
|
|
42
|
+
addHeaderFlag(command, operation, headers, "If-Match", flags["if-match"]);
|
|
50
43
|
}
|
|
51
44
|
if (flags["if-none-match"]) {
|
|
52
|
-
headers
|
|
45
|
+
addHeaderFlag(command, operation, headers, "If-None-Match", flags["if-none-match"]);
|
|
53
46
|
}
|
|
54
47
|
const body = await parseBody(command, operation, flags);
|
|
55
48
|
return dropEmpty({
|
|
@@ -59,14 +52,51 @@ export async function parseOperationOptions(command, operation, flags) {
|
|
|
59
52
|
query,
|
|
60
53
|
});
|
|
61
54
|
}
|
|
62
|
-
function
|
|
55
|
+
function parseParameterPairs(command, parameters, values, flagName) {
|
|
56
|
+
const parameterMap = new Map(parameters.map((parameter) => [keyForParameter(flagName, parameter.name), parameter]));
|
|
63
57
|
const pairs = {};
|
|
64
58
|
for (const value of values) {
|
|
65
59
|
const separator = value.indexOf("=");
|
|
66
60
|
if (separator <= 0) {
|
|
67
|
-
|
|
61
|
+
command.error(`${flagName} values must use name=value syntax`, { exit: 2 });
|
|
62
|
+
}
|
|
63
|
+
const name = value.slice(0, separator);
|
|
64
|
+
const parameter = parameterMap.get(keyForParameter(flagName, name));
|
|
65
|
+
if (!parameter) {
|
|
66
|
+
const allowed = parameters.map((item) => item.name).join(", ") || "none";
|
|
67
|
+
command.error(`Unknown ${labelForFlag(flagName)} parameter "${name}". Supported parameters: ${allowed}.`, {
|
|
68
|
+
exit: 2,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
const parsedValue = parseParameterValue(command, parameter, value.slice(separator + 1), flagName);
|
|
72
|
+
if (parameter.schema.type === "array") {
|
|
73
|
+
const existing = pairs[parameter.name];
|
|
74
|
+
const nextValue = Array.isArray(existing) ? [...existing, parsedValue] : [parsedValue];
|
|
75
|
+
if (parameter.schema.maxItems !== undefined && nextValue.length > parameter.schema.maxItems) {
|
|
76
|
+
command.error(`${labelForFlag(flagName)} parameter "${parameter.name}" accepts at most ${parameter.schema.maxItems} values.`, {
|
|
77
|
+
exit: 2,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
pairs[parameter.name] = nextValue;
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
pairs[parameter.name] = parsedValue;
|
|
84
|
+
}
|
|
85
|
+
for (const parameter of parameters) {
|
|
86
|
+
if (parameter.required && pairs[parameter.name] === undefined) {
|
|
87
|
+
command.error(`Missing ${labelForFlag(flagName)} parameter "${parameter.name}". Pass ${flagName} ${parameter.name}=<value>.`, {
|
|
88
|
+
exit: 2,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
const parsed = pairs[parameter.name];
|
|
92
|
+
if (parameter.schema.type === "array" &&
|
|
93
|
+
parameter.schema.minItems !== undefined &&
|
|
94
|
+
Array.isArray(parsed) &&
|
|
95
|
+
parsed.length < parameter.schema.minItems) {
|
|
96
|
+
command.error(`${labelForFlag(flagName)} parameter "${parameter.name}" requires at least ${parameter.schema.minItems} values.`, {
|
|
97
|
+
exit: 2,
|
|
98
|
+
});
|
|
68
99
|
}
|
|
69
|
-
pairs[value.slice(0, separator)] = value.slice(separator + 1);
|
|
70
100
|
}
|
|
71
101
|
return pairs;
|
|
72
102
|
}
|
|
@@ -74,11 +104,30 @@ async function parseBody(command, operation, flags) {
|
|
|
74
104
|
if (flags.body && flags["body-file"]) {
|
|
75
105
|
command.error("Pass only one of --body or --body-file.", { exit: 2 });
|
|
76
106
|
}
|
|
77
|
-
|
|
78
|
-
|
|
107
|
+
if (operation.bodyKind === "none") {
|
|
108
|
+
if (flags.body || flags["body-file"]) {
|
|
109
|
+
command.error("This command does not accept a request body.", { exit: 2 });
|
|
110
|
+
}
|
|
111
|
+
return undefined;
|
|
112
|
+
}
|
|
113
|
+
const hasBodyInput = flags.body !== undefined || flags["body-file"] !== undefined;
|
|
114
|
+
if (!hasBodyInput) {
|
|
79
115
|
if (operation.requestBodyRequired) {
|
|
80
|
-
|
|
116
|
+
const label = operation.bodyKind === "binary" ? "request body file" : "JSON body";
|
|
117
|
+
command.error(`This command requires a ${label}. Pass --body${operation.bodyKind === "binary" ? "-file" : " or --body-file"}.`, {
|
|
118
|
+
exit: 2,
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
return undefined;
|
|
122
|
+
}
|
|
123
|
+
if (operation.bodyKind === "binary") {
|
|
124
|
+
if (flags.body !== undefined) {
|
|
125
|
+
return Buffer.from(flags.body, "utf8");
|
|
81
126
|
}
|
|
127
|
+
return readFile(flags["body-file"]);
|
|
128
|
+
}
|
|
129
|
+
const raw = flags["body-file"] ? await readFile(flags["body-file"], "utf8") : flags.body;
|
|
130
|
+
if (raw === undefined) {
|
|
82
131
|
return undefined;
|
|
83
132
|
}
|
|
84
133
|
try {
|
|
@@ -88,6 +137,68 @@ async function parseBody(command, operation, flags) {
|
|
|
88
137
|
command.error("Request body must be valid JSON.", { exit: 2 });
|
|
89
138
|
}
|
|
90
139
|
}
|
|
140
|
+
function addHeaderFlag(command, operation, headers, name, value) {
|
|
141
|
+
const parameter = operation.headerParams.find((item) => item.name.toLowerCase() === name.toLowerCase());
|
|
142
|
+
if (!parameter) {
|
|
143
|
+
command.error(`This command does not support the ${name} header.`, { exit: 2 });
|
|
144
|
+
}
|
|
145
|
+
headers[parameter.name] = parseParameterValue(command, parameter, value, "--header");
|
|
146
|
+
}
|
|
147
|
+
function parseParameterValue(command, parameter, raw, flagName) {
|
|
148
|
+
const label = `${labelForFlag(flagName)} parameter "${parameter.name}"`;
|
|
149
|
+
const schema = scalarSchemaForParameter(parameter);
|
|
150
|
+
let value = raw;
|
|
151
|
+
if (schema.type === "integer" || schema.type === "number") {
|
|
152
|
+
const parsed = Number(raw);
|
|
153
|
+
if (!Number.isFinite(parsed) || (schema.type === "integer" && !Number.isInteger(parsed))) {
|
|
154
|
+
command.error(`${label} must be ${articleForType(schema.type)}.`, { exit: 2 });
|
|
155
|
+
}
|
|
156
|
+
value = parsed;
|
|
157
|
+
}
|
|
158
|
+
if (schema.type === "boolean") {
|
|
159
|
+
if (raw !== "true" && raw !== "false") {
|
|
160
|
+
command.error(`${label} must be true or false.`, { exit: 2 });
|
|
161
|
+
}
|
|
162
|
+
value = raw === "true";
|
|
163
|
+
}
|
|
164
|
+
if (typeof value === "number") {
|
|
165
|
+
if (schema.minimum !== undefined && value < schema.minimum) {
|
|
166
|
+
command.error(`${label} must be at least ${schema.minimum}.`, { exit: 2 });
|
|
167
|
+
}
|
|
168
|
+
if (schema.maximum !== undefined && value > schema.maximum) {
|
|
169
|
+
command.error(`${label} must be at most ${schema.maximum}.`, { exit: 2 });
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
if (typeof value === "string") {
|
|
173
|
+
if (schema.minLength !== undefined && value.length < schema.minLength) {
|
|
174
|
+
command.error(`${label} must be at least ${schema.minLength} characters.`, { exit: 2 });
|
|
175
|
+
}
|
|
176
|
+
if (schema.maxLength !== undefined && value.length > schema.maxLength) {
|
|
177
|
+
command.error(`${label} must be at most ${schema.maxLength} characters.`, { exit: 2 });
|
|
178
|
+
}
|
|
179
|
+
if (schema.pattern && !new RegExp(schema.pattern).test(value)) {
|
|
180
|
+
command.error(`${label} does not match the required format.`, { exit: 2 });
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
if (schema.enum &&
|
|
184
|
+
(typeof value === "string" || typeof value === "number") &&
|
|
185
|
+
!schema.enum.includes(value)) {
|
|
186
|
+
command.error(`${label} must be one of: ${schema.enum.join(", ")}.`, { exit: 2 });
|
|
187
|
+
}
|
|
188
|
+
return value;
|
|
189
|
+
}
|
|
190
|
+
function scalarSchemaForParameter(parameter) {
|
|
191
|
+
return parameter.schema.type === "array" ? parameter.schema.items : parameter.schema;
|
|
192
|
+
}
|
|
193
|
+
function keyForParameter(flagName, name) {
|
|
194
|
+
return flagName === "--header" ? name.toLowerCase() : name;
|
|
195
|
+
}
|
|
196
|
+
function labelForFlag(flagName) {
|
|
197
|
+
return flagName.replace(/^--/, "");
|
|
198
|
+
}
|
|
199
|
+
function articleForType(type) {
|
|
200
|
+
return type === "integer" ? "an integer" : "a number";
|
|
201
|
+
}
|
|
91
202
|
function dropEmpty(options) {
|
|
92
203
|
const next = {};
|
|
93
204
|
for (const [key, value] of Object.entries(options)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-runner.d.ts","sourceRoot":"","sources":["../src/operation-runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAoBhE,wBAAsB,eAAe,CACnC,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,mBAAmB,EAC9B,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"operation-runner.d.ts","sourceRoot":"","sources":["../src/operation-runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAoBhE,wBAAsB,eAAe,CACnC,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,mBAAmB,EAC9B,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,OAAO,CAAC,CA4ClB"}
|
package/dist/operation-runner.js
CHANGED
|
@@ -19,11 +19,73 @@ export async function runSdkOperation(command, operation, flags) {
|
|
|
19
19
|
const client = clientFactories[operation.surface](clientConfig);
|
|
20
20
|
const operationOptions = await parseOperationOptions(command, operation, flags);
|
|
21
21
|
const sdkOperation = operationFor(operation);
|
|
22
|
+
if (operation.operationId === "mailboxStreamEvents") {
|
|
23
|
+
const controller = new AbortController();
|
|
24
|
+
const response = await sdkOperation({
|
|
25
|
+
client,
|
|
26
|
+
...operationOptions,
|
|
27
|
+
signal: controller.signal,
|
|
28
|
+
});
|
|
29
|
+
return command.renderResult(await firstStreamEvent(response, controller));
|
|
30
|
+
}
|
|
31
|
+
if (operation.operationId === "mailboxGetMessageAttachment") {
|
|
32
|
+
const response = await sdkOperation({
|
|
33
|
+
client,
|
|
34
|
+
...operationOptions,
|
|
35
|
+
parseAs: "arrayBuffer",
|
|
36
|
+
});
|
|
37
|
+
const data = rawResponseData(response);
|
|
38
|
+
if (typeof data === "string" || data instanceof ArrayBuffer || ArrayBuffer.isView(data)) {
|
|
39
|
+
return command.renderBinaryResult(data);
|
|
40
|
+
}
|
|
41
|
+
throw new Error("SDK operation mailboxGetMessageAttachment did not return binary content");
|
|
42
|
+
}
|
|
22
43
|
const response = await sdkOperation({
|
|
23
44
|
client,
|
|
24
45
|
...operationOptions,
|
|
25
46
|
});
|
|
26
|
-
|
|
47
|
+
const data = rawResponseData(response);
|
|
48
|
+
if (operation.responseKind === "text" && typeof data === "string") {
|
|
49
|
+
return command.renderTextResult(data);
|
|
50
|
+
}
|
|
51
|
+
return command.renderResult(data);
|
|
52
|
+
}
|
|
53
|
+
async function firstStreamEvent(value, controller) {
|
|
54
|
+
const stream = value?.stream;
|
|
55
|
+
if (!stream || typeof stream[Symbol.asyncIterator] !== "function") {
|
|
56
|
+
throw new Error("SDK operation mailboxStreamEvents did not return an async stream");
|
|
57
|
+
}
|
|
58
|
+
const iterator = stream[Symbol.asyncIterator]();
|
|
59
|
+
let timer;
|
|
60
|
+
const timeout = new Promise((_, reject) => {
|
|
61
|
+
timer = setTimeout(() => reject(new Error("Timed out waiting for mailbox stream event")), 20_000);
|
|
62
|
+
});
|
|
63
|
+
try {
|
|
64
|
+
const next = await Promise.race([iterator.next(), timeout]);
|
|
65
|
+
if (next.done) {
|
|
66
|
+
throw new Error("Mailbox stream ended before yielding an event");
|
|
67
|
+
}
|
|
68
|
+
return next.value;
|
|
69
|
+
}
|
|
70
|
+
finally {
|
|
71
|
+
if (timer) {
|
|
72
|
+
clearTimeout(timer);
|
|
73
|
+
}
|
|
74
|
+
controller.abort();
|
|
75
|
+
await closeAsyncIterator(iterator);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
async function closeAsyncIterator(iterator) {
|
|
79
|
+
if (typeof iterator.return !== "function") {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
await Promise.race([iterator.return(), sleep(1_000)]).catch(() => undefined);
|
|
83
|
+
}
|
|
84
|
+
function sleep(ms) {
|
|
85
|
+
return new Promise((resolve) => {
|
|
86
|
+
const timeout = setTimeout(resolve, ms);
|
|
87
|
+
timeout.unref?.();
|
|
88
|
+
});
|
|
27
89
|
}
|
|
28
90
|
function operationFor(operation) {
|
|
29
91
|
const module = surfaceModules[operation.surface];
|
|
@@ -33,13 +95,9 @@ function operationFor(operation) {
|
|
|
33
95
|
}
|
|
34
96
|
return sdkOperation;
|
|
35
97
|
}
|
|
36
|
-
function
|
|
98
|
+
function rawResponseData(value) {
|
|
37
99
|
if (!value || typeof value !== "object" || !("data" in value)) {
|
|
38
100
|
return value;
|
|
39
101
|
}
|
|
40
|
-
|
|
41
|
-
if (!data || typeof data !== "object" || !("ok" in data)) {
|
|
42
|
-
return value;
|
|
43
|
-
}
|
|
44
|
-
return data;
|
|
102
|
+
return value.data;
|
|
45
103
|
}
|
|
@@ -2,8 +2,26 @@ import type { ApiKeyKind } from "./key-kind.js";
|
|
|
2
2
|
export interface OperationParameter {
|
|
3
3
|
name: string;
|
|
4
4
|
required: boolean;
|
|
5
|
+
schema: OperationParameterSchema;
|
|
6
|
+
}
|
|
7
|
+
export type OperationParameterSchema = OperationParameterArraySchema | OperationParameterScalarSchema;
|
|
8
|
+
export interface OperationParameterArraySchema {
|
|
9
|
+
items: OperationParameterScalarSchema;
|
|
10
|
+
maxItems?: number;
|
|
11
|
+
minItems?: number;
|
|
12
|
+
type: "array";
|
|
13
|
+
}
|
|
14
|
+
export interface OperationParameterScalarSchema {
|
|
15
|
+
enum?: readonly (number | string)[];
|
|
16
|
+
maximum?: number;
|
|
17
|
+
maxLength?: number;
|
|
18
|
+
minimum?: number;
|
|
19
|
+
minLength?: number;
|
|
20
|
+
pattern?: string;
|
|
21
|
+
type: "boolean" | "integer" | "number" | "string";
|
|
5
22
|
}
|
|
6
23
|
export interface OperationDefinition {
|
|
24
|
+
bodyKind: "binary" | "json" | "none";
|
|
7
25
|
command: string;
|
|
8
26
|
description: string;
|
|
9
27
|
headerParams: readonly OperationParameter[];
|
|
@@ -12,6 +30,7 @@ export interface OperationDefinition {
|
|
|
12
30
|
path: string;
|
|
13
31
|
pathParams: readonly OperationParameter[];
|
|
14
32
|
queryParams: readonly OperationParameter[];
|
|
33
|
+
responseKind: "binary" | "json" | "text";
|
|
15
34
|
requestBodyRequired: boolean;
|
|
16
35
|
requiredKeyKind: ApiKeyKind;
|
|
17
36
|
surface: "mailbox" | "management" | "sending";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-types.d.ts","sourceRoot":"","sources":["../src/operation-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"operation-types.d.ts","sourceRoot":"","sources":["../src/operation-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,wBAAwB,CAAC;CAClC;AAED,MAAM,MAAM,wBAAwB,GAAG,6BAA6B,GAAG,8BAA8B,CAAC;AAEtG,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,8BAA8B,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;CACnD;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC1C,WAAW,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC3C,YAAY,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IACzC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,eAAe,EAAE,UAAU,CAAC;IAC5B,OAAO,EAAE,SAAS,GAAG,YAAY,GAAG,SAAS,CAAC;CAC/C"}
|