@deepgram/sdk 5.0.0-beta.3 → 5.0.0
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/README.md +234 -1472
- package/dist/browser/index.global.js +288 -192
- package/dist/cjs/BaseClient.js +3 -3
- package/dist/cjs/CustomClient.js +90 -107
- package/dist/cjs/api/resources/agent/exports.d.ts +3 -0
- package/dist/cjs/api/resources/agent/exports.js +22 -0
- package/dist/cjs/api/resources/agent/resources/v1/client/Client.d.ts +6 -0
- package/dist/cjs/api/resources/agent/resources/v1/client/Client.js +8 -3
- package/dist/cjs/api/resources/agent/resources/v1/client/Socket.d.ts +3 -2
- package/dist/cjs/api/resources/agent/resources/v1/client/Socket.js +4 -0
- package/dist/cjs/api/resources/agent/resources/v1/exports.d.ts +3 -0
- package/dist/cjs/api/resources/agent/resources/v1/exports.js +22 -0
- package/dist/cjs/api/resources/agent/resources/v1/resources/settings/exports.d.ts +3 -0
- package/dist/cjs/api/resources/agent/resources/v1/resources/settings/exports.js +22 -0
- package/dist/cjs/api/resources/agent/resources/v1/resources/settings/resources/think/exports.d.ts +3 -0
- package/dist/cjs/api/resources/agent/resources/v1/resources/settings/resources/think/exports.js +22 -0
- package/dist/cjs/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/exports.d.ts +2 -0
- package/dist/cjs/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/exports.js +21 -0
- package/dist/cjs/api/resources/agent/resources/v1/types/AgentV1ReceiveFunctionCallResponse.d.ts +1 -1
- package/dist/cjs/api/resources/agent/resources/v1/types/AgentV1SendFunctionCallResponse.d.ts +1 -1
- package/dist/cjs/api/resources/agent/resources/v1/types/AgentV1Settings.d.ts +21 -51
- package/dist/cjs/api/resources/agent/resources/v1/types/AgentV1SettingsAgentListenProvider.d.ts +5 -5
- package/dist/cjs/api/resources/agent/resources/v1/types/AgentV1ThinkUpdated.d.ts +4 -0
- package/dist/cjs/api/resources/agent/resources/v1/types/AgentV1ThinkUpdated.js +3 -0
- package/dist/cjs/api/resources/agent/resources/v1/types/AgentV1UpdateSpeak.d.ts +2 -11
- package/dist/cjs/api/resources/agent/resources/v1/types/AgentV1UpdateThink.d.ts +9 -0
- package/dist/cjs/api/resources/agent/resources/v1/types/AgentV1UpdateThink.js +3 -0
- package/dist/cjs/api/resources/agent/resources/v1/types/index.d.ts +2 -0
- package/dist/cjs/api/resources/agent/resources/v1/types/index.js +2 -0
- package/dist/cjs/api/resources/auth/exports.d.ts +3 -0
- package/dist/cjs/api/resources/auth/exports.js +22 -0
- package/dist/cjs/api/resources/auth/resources/v1/exports.d.ts +3 -0
- package/dist/cjs/api/resources/auth/resources/v1/exports.js +22 -0
- package/dist/cjs/api/resources/auth/resources/v1/resources/tokens/exports.d.ts +2 -0
- package/dist/cjs/api/resources/auth/resources/v1/resources/tokens/exports.js +21 -0
- package/dist/cjs/api/resources/listen/exports.d.ts +3 -0
- package/dist/cjs/api/resources/listen/exports.js +22 -0
- package/dist/cjs/api/resources/listen/resources/v1/client/Client.d.ts +35 -28
- package/dist/cjs/api/resources/listen/resources/v1/client/Client.js +40 -30
- package/dist/cjs/api/resources/listen/resources/v1/exports.d.ts +3 -0
- package/dist/cjs/api/resources/listen/resources/v1/exports.js +22 -0
- package/dist/cjs/api/resources/listen/resources/v1/resources/media/client/requests/MediaTranscribeRequestOctetStream.d.ts +0 -3
- package/dist/cjs/api/resources/listen/resources/v1/resources/media/exports.d.ts +2 -0
- package/dist/cjs/api/resources/listen/resources/v1/resources/media/exports.js +21 -0
- package/dist/cjs/api/resources/listen/resources/v1/types/ListenV1Results.d.ts +8 -8
- package/dist/cjs/api/resources/listen/resources/v2/client/Client.d.ts +16 -9
- package/dist/cjs/api/resources/listen/resources/v2/client/Client.js +29 -11
- package/dist/cjs/api/resources/listen/resources/v2/client/Socket.d.ts +3 -2
- package/dist/cjs/api/resources/listen/resources/v2/client/Socket.js +4 -0
- package/dist/cjs/api/resources/listen/resources/v2/exports.d.ts +2 -0
- package/dist/cjs/api/resources/listen/resources/v2/exports.js +21 -0
- package/dist/cjs/api/resources/listen/resources/v2/types/ListenV2Configure.d.ts +22 -0
- package/dist/cjs/api/resources/listen/resources/v2/types/ListenV2Configure.js +3 -0
- package/dist/cjs/api/resources/listen/resources/v2/types/ListenV2ConfigureFailure.d.ts +12 -0
- package/dist/cjs/api/resources/listen/resources/v2/types/ListenV2ConfigureFailure.js +3 -0
- package/dist/cjs/api/resources/listen/resources/v2/types/ListenV2ConfigureSuccess.d.ts +30 -0
- package/dist/cjs/api/resources/listen/resources/v2/types/ListenV2ConfigureSuccess.js +3 -0
- package/dist/cjs/api/resources/listen/resources/v2/types/index.d.ts +3 -0
- package/dist/cjs/api/resources/listen/resources/v2/types/index.js +3 -0
- package/dist/cjs/api/resources/manage/exports.d.ts +3 -0
- package/dist/cjs/api/resources/manage/exports.js +22 -0
- package/dist/cjs/api/resources/manage/resources/v1/exports.d.ts +3 -0
- package/dist/cjs/api/resources/manage/resources/v1/exports.js +22 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/models/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/models/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/exports.d.ts +3 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/exports.js +22 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/exports.d.ts +3 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/exports.js +22 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/keys/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/keys/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/members/exports.d.ts +3 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/members/exports.js +22 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/models/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/models/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/requests/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/requests/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/usage/client/Client.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/usage/client/Client.js +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/usage/exports.d.ts +3 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/usage/exports.js +22 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/exports.js +21 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/exports.d.ts +2 -0
- package/dist/cjs/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/exports.js +21 -0
- package/dist/cjs/api/resources/read/exports.d.ts +3 -0
- package/dist/cjs/api/resources/read/exports.js +22 -0
- package/dist/cjs/api/resources/read/resources/v1/exports.d.ts +3 -0
- package/dist/cjs/api/resources/read/resources/v1/exports.js +22 -0
- package/dist/cjs/api/resources/read/resources/v1/resources/text/exports.d.ts +2 -0
- package/dist/cjs/api/resources/read/resources/v1/resources/text/exports.js +21 -0
- package/dist/cjs/api/resources/selfHosted/exports.d.ts +3 -0
- package/dist/cjs/api/resources/selfHosted/exports.js +22 -0
- package/dist/cjs/api/resources/selfHosted/resources/v1/exports.d.ts +3 -0
- package/dist/cjs/api/resources/selfHosted/resources/v1/exports.js +22 -0
- package/dist/cjs/api/resources/selfHosted/resources/v1/resources/distributionCredentials/exports.d.ts +2 -0
- package/dist/cjs/api/resources/selfHosted/resources/v1/resources/distributionCredentials/exports.js +21 -0
- package/dist/cjs/api/resources/speak/exports.d.ts +3 -0
- package/dist/cjs/api/resources/speak/exports.js +22 -0
- package/dist/cjs/api/resources/speak/resources/v1/client/Client.d.ts +11 -4
- package/dist/cjs/api/resources/speak/resources/v1/client/Client.js +13 -7
- package/dist/cjs/api/resources/speak/resources/v1/exports.d.ts +3 -0
- package/dist/cjs/api/resources/speak/resources/v1/exports.js +22 -0
- package/dist/cjs/api/resources/speak/resources/v1/resources/audio/client/Client.d.ts +1 -0
- package/dist/cjs/api/resources/speak/resources/v1/resources/audio/client/Client.js +1 -0
- package/dist/cjs/api/resources/speak/resources/v1/resources/audio/exports.d.ts +2 -0
- package/dist/cjs/api/resources/speak/resources/v1/resources/audio/exports.js +21 -0
- package/dist/cjs/api/resources/speak/resources/v1/types/SpeakV1Metadata.d.ts +4 -2
- package/dist/cjs/api/types/Anthropic.d.ts +2 -2
- package/dist/cjs/api/types/AwsBedrockThinkProvider.d.ts +7 -7
- package/dist/cjs/api/types/AwsPollySpeakProvider.d.ts +2 -2
- package/dist/cjs/api/types/BillingBreakdownV1Response.d.ts +6 -6
- package/dist/cjs/api/types/Cartesia.d.ts +2 -2
- package/dist/cjs/api/types/CreateKeyV1Response.d.ts +6 -6
- package/dist/cjs/api/types/CreateProjectDistributionCredentialsV1Response.d.ts +1 -1
- package/dist/cjs/api/types/CreateProjectInviteV1Response.d.ts +1 -1
- package/dist/cjs/api/types/Deepgram.d.ts +1 -1
- package/dist/cjs/api/types/DeleteProjectInviteV1Response.d.ts +1 -1
- package/dist/cjs/api/types/DeleteProjectKeyV1Response.d.ts +1 -1
- package/dist/cjs/api/types/DeleteProjectMemberV1Response.d.ts +1 -1
- package/dist/cjs/api/types/DeleteProjectV1Response.d.ts +1 -1
- package/dist/cjs/api/types/ElevenLabsSpeakProvider.d.ts +3 -3
- package/dist/cjs/api/types/ErrorResponseLegacyError.d.ts +3 -3
- package/dist/cjs/api/types/ErrorResponseModernError.d.ts +4 -4
- package/dist/cjs/api/types/GetProjectBalanceV1Response.d.ts +4 -4
- package/dist/cjs/api/types/GetProjectDistributionCredentialsV1Response.d.ts +1 -1
- package/dist/cjs/api/types/GetProjectKeyV1Response.d.ts +13 -13
- package/dist/cjs/api/types/GetProjectRequestV1Response.d.ts +1 -1
- package/dist/cjs/api/types/GetProjectV1Response.d.ts +3 -3
- package/dist/cjs/api/types/Google.d.ts +2 -2
- package/dist/cjs/api/types/GrantV1Response.d.ts +1 -1
- package/dist/cjs/api/types/Groq.d.ts +2 -2
- package/dist/cjs/api/types/LeaveProjectV1Response.d.ts +1 -1
- package/dist/cjs/api/types/ListBillingFieldsV1Response.d.ts +4 -4
- package/dist/cjs/api/types/ListModelsV1Response.d.ts +2 -2
- package/dist/cjs/api/types/ListModelsV1ResponseSttModels.d.ts +9 -9
- package/dist/cjs/api/types/ListModelsV1ResponseTtsModels.d.ts +14 -14
- package/dist/cjs/api/types/ListProjectBalancesV1Response.d.ts +5 -5
- package/dist/cjs/api/types/ListProjectDistributionCredentialsV1Response.d.ts +2 -2
- package/dist/cjs/api/types/ListProjectInvitesV1Response.d.ts +3 -3
- package/dist/cjs/api/types/ListProjectKeysV1Response.d.ts +9 -9
- package/dist/cjs/api/types/ListProjectMemberScopesV1Response.d.ts +1 -1
- package/dist/cjs/api/types/ListProjectMembersV1Response.d.ts +3 -3
- package/dist/cjs/api/types/ListProjectPurchasesV1Response.d.ts +7 -7
- package/dist/cjs/api/types/ListProjectRequestsV1Response.d.ts +3 -3
- package/dist/cjs/api/types/ListProjectsV1Response.d.ts +3 -3
- package/dist/cjs/api/types/ListenV1ResponseMetadata.d.ts +18 -18
- package/dist/cjs/api/types/ListenV1ResponseResults.d.ts +5 -5
- package/dist/cjs/api/types/ListenV1ResponseResultsChannelsItem.d.ts +43 -43
- package/dist/cjs/api/types/ListenV1ResponseResultsSummary.d.ts +2 -2
- package/dist/cjs/api/types/ListenV1ResponseResultsUtterancesItem.d.ts +15 -15
- package/dist/cjs/api/types/OpenAiSpeakProvider.d.ts +27 -0
- package/dist/cjs/api/types/OpenAiSpeakProvider.js +21 -0
- package/dist/cjs/api/types/OpenAiThinkProvider.d.ts +23 -0
- package/dist/cjs/api/types/OpenAiThinkProvider.js +18 -0
- package/dist/cjs/api/types/ProjectRequestResponse.d.ts +9 -9
- package/dist/cjs/api/types/ReadV1ResponseMetadata.d.ts +20 -20
- package/dist/cjs/api/types/ReadV1ResponseResults.d.ts +4 -4
- package/dist/cjs/api/types/ReadV1ResponseResultsSummary.d.ts +3 -3
- package/dist/cjs/api/types/SharedIntents.d.ts +9 -9
- package/dist/cjs/api/types/SharedSentiments.d.ts +9 -9
- package/dist/cjs/api/types/SharedTopics.d.ts +9 -9
- package/dist/cjs/api/types/SpeakSettingsV1.d.ts +3 -3
- package/dist/cjs/api/types/SpeakSettingsV1Provider.d.ts +1 -1
- package/dist/cjs/api/types/ThinkSettingsV1.d.ts +15 -15
- package/dist/cjs/api/types/ThinkSettingsV1Provider.d.ts +19 -0
- package/dist/cjs/api/types/ThinkSettingsV1Provider.js +3 -0
- package/dist/cjs/api/types/UpdateProjectMemberScopesV1Response.d.ts +1 -1
- package/dist/cjs/api/types/UpdateProjectV1Response.d.ts +1 -1
- package/dist/cjs/api/types/UsageBreakdownV1Response.d.ts +9 -9
- package/dist/cjs/api/types/UsageFieldsV1Response.d.ts +8 -8
- package/dist/cjs/api/types/UsageV1Response.d.ts +5 -5
- package/dist/cjs/api/types/index.d.ts +3 -1
- package/dist/cjs/api/types/index.js +3 -1
- package/dist/cjs/core/fetcher/Fetcher.js +8 -2
- package/dist/cjs/core/fetcher/makeRequest.d.ts +6 -1
- package/dist/cjs/core/fetcher/makeRequest.js +30 -9
- package/dist/cjs/core/runtime/runtime.js +8 -7
- package/dist/cjs/core/websocket/ws.d.ts +4 -1
- package/dist/cjs/core/websocket/ws.js +32 -2
- package/dist/cjs/environments.d.ts +3 -3
- package/dist/cjs/environments.js +2 -2
- package/dist/cjs/index.d.ts +2 -0
- package/dist/cjs/index.js +6 -0
- package/dist/cjs/middleware/adapters/express.d.ts +103 -0
- package/dist/cjs/middleware/adapters/express.js +141 -0
- package/dist/cjs/middleware/adapters/fastify.d.ts +32 -0
- package/dist/cjs/middleware/adapters/fastify.js +194 -0
- package/dist/cjs/middleware/adapters/http.d.ts +153 -0
- package/dist/cjs/middleware/adapters/http.js +192 -0
- package/dist/cjs/middleware/core/ProxyHandler.d.ts +35 -0
- package/dist/cjs/middleware/core/ProxyHandler.js +225 -0
- package/dist/cjs/middleware/core/TokenManager.d.ts +29 -0
- package/dist/cjs/middleware/core/TokenManager.js +110 -0
- package/dist/cjs/middleware/core/WebSocketProxy.d.ts +32 -0
- package/dist/cjs/middleware/core/WebSocketProxy.js +169 -0
- package/dist/cjs/middleware/core/jwt.d.ts +71 -0
- package/dist/cjs/middleware/core/jwt.js +136 -0
- package/dist/cjs/middleware/core/types.d.ts +37 -0
- package/dist/cjs/middleware/core/types.js +2 -0
- package/dist/cjs/middleware/index.d.ts +55 -0
- package/dist/cjs/middleware/index.js +75 -0
- package/dist/cjs/tests/manual/test-custom-baseurl.js +124 -0
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/BaseClient.mjs +3 -3
- package/dist/esm/CustomClient.mjs +90 -107
- package/dist/esm/api/resources/agent/exports.d.mts +3 -0
- package/dist/esm/api/resources/agent/exports.mjs +4 -0
- package/dist/esm/api/resources/agent/resources/v1/client/Client.d.mts +6 -0
- package/dist/esm/api/resources/agent/resources/v1/client/Client.mjs +8 -3
- package/dist/esm/api/resources/agent/resources/v1/client/Socket.d.mts +3 -2
- package/dist/esm/api/resources/agent/resources/v1/client/Socket.mjs +4 -0
- package/dist/esm/api/resources/agent/resources/v1/exports.d.mts +3 -0
- package/dist/esm/api/resources/agent/resources/v1/exports.mjs +4 -0
- package/dist/esm/api/resources/agent/resources/v1/resources/settings/exports.d.mts +3 -0
- package/dist/esm/api/resources/agent/resources/v1/resources/settings/exports.mjs +4 -0
- package/dist/esm/api/resources/agent/resources/v1/resources/settings/resources/think/exports.d.mts +3 -0
- package/dist/esm/api/resources/agent/resources/v1/resources/settings/resources/think/exports.mjs +4 -0
- package/dist/esm/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/exports.d.mts +2 -0
- package/dist/esm/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/exports.mjs +3 -0
- package/dist/esm/api/resources/agent/resources/v1/types/AgentV1ReceiveFunctionCallResponse.d.mts +1 -1
- package/dist/esm/api/resources/agent/resources/v1/types/AgentV1SendFunctionCallResponse.d.mts +1 -1
- package/dist/esm/api/resources/agent/resources/v1/types/AgentV1Settings.d.mts +21 -51
- package/dist/esm/api/resources/agent/resources/v1/types/AgentV1SettingsAgentListenProvider.d.mts +5 -5
- package/dist/esm/api/resources/agent/resources/v1/types/AgentV1ThinkUpdated.d.mts +4 -0
- package/dist/esm/api/resources/agent/resources/v1/types/AgentV1ThinkUpdated.mjs +2 -0
- package/dist/esm/api/resources/agent/resources/v1/types/AgentV1UpdateSpeak.d.mts +2 -11
- package/dist/esm/api/resources/agent/resources/v1/types/AgentV1UpdateThink.d.mts +9 -0
- package/dist/esm/api/resources/agent/resources/v1/types/AgentV1UpdateThink.mjs +2 -0
- package/dist/esm/api/resources/agent/resources/v1/types/index.d.mts +2 -0
- package/dist/esm/api/resources/agent/resources/v1/types/index.mjs +2 -0
- package/dist/esm/api/resources/auth/exports.d.mts +3 -0
- package/dist/esm/api/resources/auth/exports.mjs +4 -0
- package/dist/esm/api/resources/auth/resources/v1/exports.d.mts +3 -0
- package/dist/esm/api/resources/auth/resources/v1/exports.mjs +4 -0
- package/dist/esm/api/resources/auth/resources/v1/resources/tokens/exports.d.mts +2 -0
- package/dist/esm/api/resources/auth/resources/v1/resources/tokens/exports.mjs +3 -0
- package/dist/esm/api/resources/listen/exports.d.mts +3 -0
- package/dist/esm/api/resources/listen/exports.mjs +4 -0
- package/dist/esm/api/resources/listen/resources/v1/client/Client.d.mts +35 -28
- package/dist/esm/api/resources/listen/resources/v1/client/Client.mjs +40 -30
- package/dist/esm/api/resources/listen/resources/v1/exports.d.mts +3 -0
- package/dist/esm/api/resources/listen/resources/v1/exports.mjs +4 -0
- package/dist/esm/api/resources/listen/resources/v1/resources/media/client/requests/MediaTranscribeRequestOctetStream.d.mts +0 -3
- package/dist/esm/api/resources/listen/resources/v1/resources/media/exports.d.mts +2 -0
- package/dist/esm/api/resources/listen/resources/v1/resources/media/exports.mjs +3 -0
- package/dist/esm/api/resources/listen/resources/v1/types/ListenV1Results.d.mts +8 -8
- package/dist/esm/api/resources/listen/resources/v2/client/Client.d.mts +16 -9
- package/dist/esm/api/resources/listen/resources/v2/client/Client.mjs +29 -11
- package/dist/esm/api/resources/listen/resources/v2/client/Socket.d.mts +3 -2
- package/dist/esm/api/resources/listen/resources/v2/client/Socket.mjs +4 -0
- package/dist/esm/api/resources/listen/resources/v2/exports.d.mts +2 -0
- package/dist/esm/api/resources/listen/resources/v2/exports.mjs +3 -0
- package/dist/esm/api/resources/listen/resources/v2/types/ListenV2Configure.d.mts +22 -0
- package/dist/esm/api/resources/listen/resources/v2/types/ListenV2Configure.mjs +2 -0
- package/dist/esm/api/resources/listen/resources/v2/types/ListenV2ConfigureFailure.d.mts +12 -0
- package/dist/esm/api/resources/listen/resources/v2/types/ListenV2ConfigureFailure.mjs +2 -0
- package/dist/esm/api/resources/listen/resources/v2/types/ListenV2ConfigureSuccess.d.mts +30 -0
- package/dist/esm/api/resources/listen/resources/v2/types/ListenV2ConfigureSuccess.mjs +2 -0
- package/dist/esm/api/resources/listen/resources/v2/types/index.d.mts +3 -0
- package/dist/esm/api/resources/listen/resources/v2/types/index.mjs +3 -0
- package/dist/esm/api/resources/manage/exports.d.mts +3 -0
- package/dist/esm/api/resources/manage/exports.mjs +4 -0
- package/dist/esm/api/resources/manage/resources/v1/exports.d.mts +3 -0
- package/dist/esm/api/resources/manage/resources/v1/exports.mjs +4 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/models/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/models/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/exports.d.mts +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/exports.mjs +4 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/exports.d.mts +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/exports.mjs +4 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/keys/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/keys/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/members/exports.d.mts +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/members/exports.mjs +4 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/models/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/models/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/requests/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/requests/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/usage/client/Client.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/usage/client/Client.mjs +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/usage/exports.d.mts +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/usage/exports.mjs +4 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/exports.mjs +3 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/exports.d.mts +2 -0
- package/dist/esm/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/exports.mjs +3 -0
- package/dist/esm/api/resources/read/exports.d.mts +3 -0
- package/dist/esm/api/resources/read/exports.mjs +4 -0
- package/dist/esm/api/resources/read/resources/v1/exports.d.mts +3 -0
- package/dist/esm/api/resources/read/resources/v1/exports.mjs +4 -0
- package/dist/esm/api/resources/read/resources/v1/resources/text/exports.d.mts +2 -0
- package/dist/esm/api/resources/read/resources/v1/resources/text/exports.mjs +3 -0
- package/dist/esm/api/resources/selfHosted/exports.d.mts +3 -0
- package/dist/esm/api/resources/selfHosted/exports.mjs +4 -0
- package/dist/esm/api/resources/selfHosted/resources/v1/exports.d.mts +3 -0
- package/dist/esm/api/resources/selfHosted/resources/v1/exports.mjs +4 -0
- package/dist/esm/api/resources/selfHosted/resources/v1/resources/distributionCredentials/exports.d.mts +2 -0
- package/dist/esm/api/resources/selfHosted/resources/v1/resources/distributionCredentials/exports.mjs +3 -0
- package/dist/esm/api/resources/speak/exports.d.mts +3 -0
- package/dist/esm/api/resources/speak/exports.mjs +4 -0
- package/dist/esm/api/resources/speak/resources/v1/client/Client.d.mts +11 -4
- package/dist/esm/api/resources/speak/resources/v1/client/Client.mjs +13 -7
- package/dist/esm/api/resources/speak/resources/v1/exports.d.mts +3 -0
- package/dist/esm/api/resources/speak/resources/v1/exports.mjs +4 -0
- package/dist/esm/api/resources/speak/resources/v1/resources/audio/client/Client.d.mts +1 -0
- package/dist/esm/api/resources/speak/resources/v1/resources/audio/client/Client.mjs +1 -0
- package/dist/esm/api/resources/speak/resources/v1/resources/audio/exports.d.mts +2 -0
- package/dist/esm/api/resources/speak/resources/v1/resources/audio/exports.mjs +3 -0
- package/dist/esm/api/resources/speak/resources/v1/types/SpeakV1Metadata.d.mts +4 -2
- package/dist/esm/api/types/Anthropic.d.mts +2 -2
- package/dist/esm/api/types/AwsBedrockThinkProvider.d.mts +7 -7
- package/dist/esm/api/types/AwsPollySpeakProvider.d.mts +2 -2
- package/dist/esm/api/types/BillingBreakdownV1Response.d.mts +6 -6
- package/dist/esm/api/types/Cartesia.d.mts +2 -2
- package/dist/esm/api/types/CreateKeyV1Response.d.mts +6 -6
- package/dist/esm/api/types/CreateProjectDistributionCredentialsV1Response.d.mts +1 -1
- package/dist/esm/api/types/CreateProjectInviteV1Response.d.mts +1 -1
- package/dist/esm/api/types/Deepgram.d.mts +1 -1
- package/dist/esm/api/types/DeleteProjectInviteV1Response.d.mts +1 -1
- package/dist/esm/api/types/DeleteProjectKeyV1Response.d.mts +1 -1
- package/dist/esm/api/types/DeleteProjectMemberV1Response.d.mts +1 -1
- package/dist/esm/api/types/DeleteProjectV1Response.d.mts +1 -1
- package/dist/esm/api/types/ElevenLabsSpeakProvider.d.mts +3 -3
- package/dist/esm/api/types/ErrorResponseLegacyError.d.mts +3 -3
- package/dist/esm/api/types/ErrorResponseModernError.d.mts +4 -4
- package/dist/esm/api/types/GetProjectBalanceV1Response.d.mts +4 -4
- package/dist/esm/api/types/GetProjectDistributionCredentialsV1Response.d.mts +1 -1
- package/dist/esm/api/types/GetProjectKeyV1Response.d.mts +13 -13
- package/dist/esm/api/types/GetProjectRequestV1Response.d.mts +1 -1
- package/dist/esm/api/types/GetProjectV1Response.d.mts +3 -3
- package/dist/esm/api/types/Google.d.mts +2 -2
- package/dist/esm/api/types/GrantV1Response.d.mts +1 -1
- package/dist/esm/api/types/Groq.d.mts +2 -2
- package/dist/esm/api/types/LeaveProjectV1Response.d.mts +1 -1
- package/dist/esm/api/types/ListBillingFieldsV1Response.d.mts +4 -4
- package/dist/esm/api/types/ListModelsV1Response.d.mts +2 -2
- package/dist/esm/api/types/ListModelsV1ResponseSttModels.d.mts +9 -9
- package/dist/esm/api/types/ListModelsV1ResponseTtsModels.d.mts +14 -14
- package/dist/esm/api/types/ListProjectBalancesV1Response.d.mts +5 -5
- package/dist/esm/api/types/ListProjectDistributionCredentialsV1Response.d.mts +2 -2
- package/dist/esm/api/types/ListProjectInvitesV1Response.d.mts +3 -3
- package/dist/esm/api/types/ListProjectKeysV1Response.d.mts +9 -9
- package/dist/esm/api/types/ListProjectMemberScopesV1Response.d.mts +1 -1
- package/dist/esm/api/types/ListProjectMembersV1Response.d.mts +3 -3
- package/dist/esm/api/types/ListProjectPurchasesV1Response.d.mts +7 -7
- package/dist/esm/api/types/ListProjectRequestsV1Response.d.mts +3 -3
- package/dist/esm/api/types/ListProjectsV1Response.d.mts +3 -3
- package/dist/esm/api/types/ListenV1ResponseMetadata.d.mts +18 -18
- package/dist/esm/api/types/ListenV1ResponseResults.d.mts +5 -5
- package/dist/esm/api/types/ListenV1ResponseResultsChannelsItem.d.mts +43 -43
- package/dist/esm/api/types/ListenV1ResponseResultsSummary.d.mts +2 -2
- package/dist/esm/api/types/ListenV1ResponseResultsUtterancesItem.d.mts +15 -15
- package/dist/esm/api/types/OpenAiSpeakProvider.d.mts +27 -0
- package/dist/esm/api/types/OpenAiSpeakProvider.mjs +18 -0
- package/dist/esm/api/types/OpenAiThinkProvider.d.mts +23 -0
- package/dist/esm/api/types/OpenAiThinkProvider.mjs +15 -0
- package/dist/esm/api/types/ProjectRequestResponse.d.mts +9 -9
- package/dist/esm/api/types/ReadV1ResponseMetadata.d.mts +20 -20
- package/dist/esm/api/types/ReadV1ResponseResults.d.mts +4 -4
- package/dist/esm/api/types/ReadV1ResponseResultsSummary.d.mts +3 -3
- package/dist/esm/api/types/SharedIntents.d.mts +9 -9
- package/dist/esm/api/types/SharedSentiments.d.mts +9 -9
- package/dist/esm/api/types/SharedTopics.d.mts +9 -9
- package/dist/esm/api/types/SpeakSettingsV1.d.mts +3 -3
- package/dist/esm/api/types/SpeakSettingsV1Provider.d.mts +1 -1
- package/dist/esm/api/types/ThinkSettingsV1.d.mts +15 -15
- package/dist/esm/api/types/ThinkSettingsV1Provider.d.mts +19 -0
- package/dist/esm/api/types/ThinkSettingsV1Provider.mjs +2 -0
- package/dist/esm/api/types/UpdateProjectMemberScopesV1Response.d.mts +1 -1
- package/dist/esm/api/types/UpdateProjectV1Response.d.mts +1 -1
- package/dist/esm/api/types/UsageBreakdownV1Response.d.mts +9 -9
- package/dist/esm/api/types/UsageFieldsV1Response.d.mts +8 -8
- package/dist/esm/api/types/UsageV1Response.d.mts +5 -5
- package/dist/esm/api/types/index.d.mts +3 -1
- package/dist/esm/api/types/index.mjs +3 -1
- package/dist/esm/core/fetcher/Fetcher.mjs +8 -2
- package/dist/esm/core/fetcher/makeRequest.d.mts +6 -1
- package/dist/esm/core/fetcher/makeRequest.mjs +28 -9
- package/dist/esm/core/runtime/runtime.mjs +8 -7
- package/dist/esm/core/websocket/ws.d.mts +4 -1
- package/dist/esm/core/websocket/ws.mjs +32 -2
- package/dist/esm/environments.d.mts +3 -3
- package/dist/esm/environments.mjs +2 -2
- package/dist/esm/index.d.mts +2 -0
- package/dist/esm/index.mjs +6 -0
- package/dist/esm/middleware/adapters/express.d.mts +103 -0
- package/dist/esm/middleware/adapters/express.mjs +136 -0
- package/dist/esm/middleware/adapters/fastify.d.mts +32 -0
- package/dist/esm/middleware/adapters/fastify.mjs +157 -0
- package/dist/esm/middleware/adapters/http.d.mts +153 -0
- package/dist/esm/middleware/adapters/http.mjs +187 -0
- package/dist/esm/middleware/core/ProxyHandler.d.mts +35 -0
- package/dist/esm/middleware/core/ProxyHandler.mjs +218 -0
- package/dist/esm/middleware/core/TokenManager.d.mts +29 -0
- package/dist/esm/middleware/core/TokenManager.mjs +106 -0
- package/dist/esm/middleware/core/WebSocketProxy.d.mts +32 -0
- package/dist/esm/middleware/core/WebSocketProxy.mjs +162 -0
- package/dist/esm/middleware/core/jwt.d.mts +71 -0
- package/dist/esm/middleware/core/jwt.mjs +99 -0
- package/dist/esm/middleware/core/types.d.mts +37 -0
- package/dist/esm/middleware/core/types.mjs +1 -0
- package/dist/esm/middleware/index.d.mts +55 -0
- package/dist/esm/middleware/index.mjs +59 -0
- package/dist/esm/version.d.mts +1 -1
- package/dist/esm/version.mjs +1 -1
- package/package.json +433 -4
- package/reference.md +1 -0
|
@@ -35,23 +35,23 @@ export declare namespace UsageBreakdownV1Response {
|
|
|
35
35
|
namespace Item {
|
|
36
36
|
interface Grouping {
|
|
37
37
|
/** Start date for this group */
|
|
38
|
-
start?: string;
|
|
38
|
+
start?: string | undefined;
|
|
39
39
|
/** End date for this group */
|
|
40
|
-
end?: string;
|
|
40
|
+
end?: string | undefined;
|
|
41
41
|
/** Optional accessor identifier */
|
|
42
|
-
accessor?: string;
|
|
42
|
+
accessor?: string | undefined;
|
|
43
43
|
/** Optional endpoint identifier */
|
|
44
|
-
endpoint?: string;
|
|
44
|
+
endpoint?: string | undefined;
|
|
45
45
|
/** Optional feature set identifier */
|
|
46
|
-
feature_set?: string;
|
|
46
|
+
feature_set?: string | undefined;
|
|
47
47
|
/** Optional models identifier */
|
|
48
|
-
models?: string;
|
|
48
|
+
models?: string | undefined;
|
|
49
49
|
/** Optional method identifier */
|
|
50
|
-
method?: string;
|
|
50
|
+
method?: string | undefined;
|
|
51
51
|
/** Optional tags */
|
|
52
|
-
tags?: string;
|
|
52
|
+
tags?: string | undefined;
|
|
53
53
|
/** Optional deployment identifier */
|
|
54
|
-
deployment?: string;
|
|
54
|
+
deployment?: string | undefined;
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
export interface UsageFieldsV1Response {
|
|
2
2
|
/** List of tags associated with the project */
|
|
3
|
-
tags?: string[];
|
|
3
|
+
tags?: string[] | undefined;
|
|
4
4
|
/** List of models available for the project. */
|
|
5
|
-
models?: UsageFieldsV1Response.Models.Item[];
|
|
5
|
+
models?: UsageFieldsV1Response.Models.Item[] | undefined;
|
|
6
6
|
/** Processing methods supported by the API */
|
|
7
|
-
processing_methods?: string[];
|
|
7
|
+
processing_methods?: string[] | undefined;
|
|
8
8
|
/** API features available to the project */
|
|
9
|
-
features?: string[];
|
|
9
|
+
features?: string[] | undefined;
|
|
10
10
|
}
|
|
11
11
|
export declare namespace UsageFieldsV1Response {
|
|
12
12
|
type Models = Models.Item[];
|
|
13
13
|
namespace Models {
|
|
14
14
|
interface Item {
|
|
15
15
|
/** Name of the model. */
|
|
16
|
-
name?: string;
|
|
16
|
+
name?: string | undefined;
|
|
17
17
|
/** The language supported by the model (IETF language tag). */
|
|
18
|
-
language?: string;
|
|
18
|
+
language?: string | undefined;
|
|
19
19
|
/** Version identifier of the model, typically with a date and a revision number. */
|
|
20
|
-
version?: string;
|
|
20
|
+
version?: string | undefined;
|
|
21
21
|
/** Unique identifier for the model. */
|
|
22
|
-
model_id?: string;
|
|
22
|
+
model_id?: string | undefined;
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export interface UsageV1Response {
|
|
2
|
-
start?: string;
|
|
3
|
-
end?: string;
|
|
4
|
-
resolution?: UsageV1Response.Resolution;
|
|
2
|
+
start?: string | undefined;
|
|
3
|
+
end?: string | undefined;
|
|
4
|
+
resolution?: UsageV1Response.Resolution | undefined;
|
|
5
5
|
}
|
|
6
6
|
export declare namespace UsageV1Response {
|
|
7
7
|
interface Resolution {
|
|
8
|
-
units?: string;
|
|
9
|
-
amount?: number;
|
|
8
|
+
units?: string | undefined;
|
|
9
|
+
amount?: number | undefined;
|
|
10
10
|
}
|
|
11
11
|
}
|
|
@@ -88,7 +88,8 @@ export * from "./ListProjectMembersV1Response.js";
|
|
|
88
88
|
export * from "./ListProjectPurchasesV1Response.js";
|
|
89
89
|
export * from "./ListProjectRequestsV1Response.js";
|
|
90
90
|
export * from "./ListProjectsV1Response.js";
|
|
91
|
-
export * from "./
|
|
91
|
+
export * from "./OpenAiSpeakProvider.js";
|
|
92
|
+
export * from "./OpenAiThinkProvider.js";
|
|
92
93
|
export * from "./ProjectRequestResponse.js";
|
|
93
94
|
export * from "./ReadV1Request.js";
|
|
94
95
|
export * from "./ReadV1RequestText.js";
|
|
@@ -108,6 +109,7 @@ export * from "./SpeakV1Model.js";
|
|
|
108
109
|
export * from "./SpeakV1Response.js";
|
|
109
110
|
export * from "./SpeakV1SampleRate.js";
|
|
110
111
|
export * from "./ThinkSettingsV1.js";
|
|
112
|
+
export * from "./ThinkSettingsV1Provider.js";
|
|
111
113
|
export * from "./UpdateProjectMemberScopesV1Response.js";
|
|
112
114
|
export * from "./UpdateProjectV1Response.js";
|
|
113
115
|
export * from "./UsageBreakdownV1Response.js";
|
|
@@ -104,7 +104,8 @@ __exportStar(require("./ListProjectMembersV1Response.js"), exports);
|
|
|
104
104
|
__exportStar(require("./ListProjectPurchasesV1Response.js"), exports);
|
|
105
105
|
__exportStar(require("./ListProjectRequestsV1Response.js"), exports);
|
|
106
106
|
__exportStar(require("./ListProjectsV1Response.js"), exports);
|
|
107
|
-
__exportStar(require("./
|
|
107
|
+
__exportStar(require("./OpenAiSpeakProvider.js"), exports);
|
|
108
|
+
__exportStar(require("./OpenAiThinkProvider.js"), exports);
|
|
108
109
|
__exportStar(require("./ProjectRequestResponse.js"), exports);
|
|
109
110
|
__exportStar(require("./ReadV1Request.js"), exports);
|
|
110
111
|
__exportStar(require("./ReadV1RequestText.js"), exports);
|
|
@@ -124,6 +125,7 @@ __exportStar(require("./SpeakV1Model.js"), exports);
|
|
|
124
125
|
__exportStar(require("./SpeakV1Response.js"), exports);
|
|
125
126
|
__exportStar(require("./SpeakV1SampleRate.js"), exports);
|
|
126
127
|
__exportStar(require("./ThinkSettingsV1.js"), exports);
|
|
128
|
+
__exportStar(require("./ThinkSettingsV1Provider.js"), exports);
|
|
127
129
|
__exportStar(require("./UpdateProjectMemberScopesV1Response.js"), exports);
|
|
128
130
|
__exportStar(require("./UpdateProjectV1Response.js"), exports);
|
|
129
131
|
__exportStar(require("./UsageBreakdownV1Response.js"), exports);
|
|
@@ -156,7 +156,13 @@ function getHeaders(args) {
|
|
|
156
156
|
return __awaiter(this, void 0, void 0, function* () {
|
|
157
157
|
var _a;
|
|
158
158
|
const newHeaders = new Headers_js_1.Headers();
|
|
159
|
-
newHeaders.set("Accept", args.responseType === "json"
|
|
159
|
+
newHeaders.set("Accept", args.responseType === "json"
|
|
160
|
+
? "application/json"
|
|
161
|
+
: args.responseType === "text"
|
|
162
|
+
? "text/plain"
|
|
163
|
+
: args.responseType === "sse"
|
|
164
|
+
? "text/event-stream"
|
|
165
|
+
: "*/*");
|
|
160
166
|
if (args.body !== undefined && args.contentType != null) {
|
|
161
167
|
newHeaders.set("Content-Type", args.contentType);
|
|
162
168
|
}
|
|
@@ -200,7 +206,7 @@ function fetcherImpl(args) {
|
|
|
200
206
|
}
|
|
201
207
|
try {
|
|
202
208
|
const response = yield (0, requestWithRetries_js_1.requestWithRetries)(() => __awaiter(this, void 0, void 0, function* () {
|
|
203
|
-
return (0, makeRequest_js_1.makeRequest)(fetchFn, url, args.method, headers, requestBody, args.timeoutMs, args.abortSignal, args.withCredentials, args.duplex);
|
|
209
|
+
return (0, makeRequest_js_1.makeRequest)(fetchFn, url, args.method, headers, requestBody, args.timeoutMs, args.abortSignal, args.withCredentials, args.duplex, args.responseType === "streaming" || args.responseType === "sse");
|
|
204
210
|
}), args.maxRetries);
|
|
205
211
|
if (response.status >= 200 && response.status < 400) {
|
|
206
212
|
if (logger.isDebug()) {
|
|
@@ -1 +1,6 @@
|
|
|
1
|
-
export declare
|
|
1
|
+
export declare function isCacheNoStoreSupported(): boolean;
|
|
2
|
+
/**
|
|
3
|
+
* Reset the cached result of `isCacheNoStoreSupported`. Exposed for testing only.
|
|
4
|
+
*/
|
|
5
|
+
export declare function resetCacheNoStoreSupported(): void;
|
|
6
|
+
export declare const makeRequest: (fetchFn: (url: string, init: RequestInit) => Promise<Response>, url: string, method: string, headers: Headers | Record<string, string>, requestBody: BodyInit | undefined, timeoutMs?: number, abortSignal?: AbortSignal, withCredentials?: boolean, duplex?: "half", disableCache?: boolean) => Promise<Response>;
|
|
@@ -10,8 +10,35 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.makeRequest = void 0;
|
|
13
|
+
exports.isCacheNoStoreSupported = isCacheNoStoreSupported;
|
|
14
|
+
exports.resetCacheNoStoreSupported = resetCacheNoStoreSupported;
|
|
13
15
|
const signals_js_1 = require("./signals.js");
|
|
14
|
-
|
|
16
|
+
/**
|
|
17
|
+
* Cached result of checking whether the current runtime supports
|
|
18
|
+
* the `cache` option in `Request`. Some runtimes (e.g. Cloudflare Workers)
|
|
19
|
+
* throw a TypeError when this option is used.
|
|
20
|
+
*/
|
|
21
|
+
let _cacheNoStoreSupported;
|
|
22
|
+
function isCacheNoStoreSupported() {
|
|
23
|
+
if (_cacheNoStoreSupported != null) {
|
|
24
|
+
return _cacheNoStoreSupported;
|
|
25
|
+
}
|
|
26
|
+
try {
|
|
27
|
+
new Request("http://localhost", { cache: "no-store" });
|
|
28
|
+
_cacheNoStoreSupported = true;
|
|
29
|
+
}
|
|
30
|
+
catch (_a) {
|
|
31
|
+
_cacheNoStoreSupported = false;
|
|
32
|
+
}
|
|
33
|
+
return _cacheNoStoreSupported;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Reset the cached result of `isCacheNoStoreSupported`. Exposed for testing only.
|
|
37
|
+
*/
|
|
38
|
+
function resetCacheNoStoreSupported() {
|
|
39
|
+
_cacheNoStoreSupported = undefined;
|
|
40
|
+
}
|
|
41
|
+
const makeRequest = (fetchFn, url, method, headers, requestBody, timeoutMs, abortSignal, withCredentials, duplex, disableCache) => __awaiter(void 0, void 0, void 0, function* () {
|
|
15
42
|
const signals = [];
|
|
16
43
|
let timeoutAbortId;
|
|
17
44
|
if (timeoutMs != null) {
|
|
@@ -23,15 +50,9 @@ const makeRequest = (fetchFn, url, method, headers, requestBody, timeoutMs, abor
|
|
|
23
50
|
signals.push(abortSignal);
|
|
24
51
|
}
|
|
25
52
|
const newSignals = (0, signals_js_1.anySignal)(signals);
|
|
26
|
-
const response = yield fetchFn(url, {
|
|
27
|
-
method: method,
|
|
28
|
-
headers,
|
|
29
|
-
body: requestBody,
|
|
30
|
-
signal: newSignals,
|
|
31
|
-
credentials: withCredentials ? "include" : undefined,
|
|
53
|
+
const response = yield fetchFn(url, Object.assign({ method: method, headers, body: requestBody, signal: newSignals, credentials: withCredentials ? "include" : undefined,
|
|
32
54
|
// @ts-ignore
|
|
33
|
-
duplex,
|
|
34
|
-
});
|
|
55
|
+
duplex }, (disableCache && isCacheNoStoreSupported() ? { cache: "no-store" } : {})));
|
|
35
56
|
if (timeoutAbortId != null) {
|
|
36
57
|
clearTimeout(timeoutAbortId);
|
|
37
58
|
}
|
|
@@ -84,17 +84,18 @@ function evaluateRuntime() {
|
|
|
84
84
|
}
|
|
85
85
|
/**
|
|
86
86
|
* A constant that indicates whether the environment the code is running is Node.JS.
|
|
87
|
+
*
|
|
88
|
+
* We assign `process` to a local variable first to avoid being flagged by
|
|
89
|
+
* bundlers that perform static analysis on `process.versions` (e.g. Next.js
|
|
90
|
+
* Edge Runtime warns about Node.js APIs even when they are guarded).
|
|
87
91
|
*/
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
!!process.version &&
|
|
91
|
-
"versions" in process &&
|
|
92
|
-
!!((_e = process.versions) === null || _e === void 0 ? void 0 : _e.node);
|
|
92
|
+
const _process = typeof process !== "undefined" ? process : undefined;
|
|
93
|
+
const isNode = typeof _process !== "undefined" && typeof ((_e = _process.versions) === null || _e === void 0 ? void 0 : _e.node) === "string";
|
|
93
94
|
if (isNode) {
|
|
94
95
|
return {
|
|
95
96
|
type: "node",
|
|
96
|
-
version:
|
|
97
|
-
parsedVersion: Number(
|
|
97
|
+
version: _process.versions.node,
|
|
98
|
+
parsedVersion: Number(_process.versions.node.split(".")[0]),
|
|
98
99
|
};
|
|
99
100
|
}
|
|
100
101
|
return {
|
|
@@ -9,6 +9,7 @@ export declare namespace ReconnectingWebSocket {
|
|
|
9
9
|
options?: ReconnectingWebSocket.Options;
|
|
10
10
|
headers?: Record<string, unknown>;
|
|
11
11
|
queryParameters?: Record<string, unknown>;
|
|
12
|
+
abortSignal?: AbortSignal;
|
|
12
13
|
}
|
|
13
14
|
type Options = {
|
|
14
15
|
WebSocket?: any;
|
|
@@ -47,7 +48,8 @@ export declare class ReconnectingWebSocket {
|
|
|
47
48
|
private readonly _options;
|
|
48
49
|
private readonly _headers?;
|
|
49
50
|
private readonly _queryParameters?;
|
|
50
|
-
|
|
51
|
+
private readonly _abortSignal?;
|
|
52
|
+
constructor({ url, protocols, options, headers, queryParameters, abortSignal }: ReconnectingWebSocket.Args);
|
|
51
53
|
static readonly CONNECTING = 0;
|
|
52
54
|
static readonly OPEN = 1;
|
|
53
55
|
static readonly CLOSING = 2;
|
|
@@ -133,6 +135,7 @@ export declare class ReconnectingWebSocket {
|
|
|
133
135
|
private _wait;
|
|
134
136
|
private _getNextUrl;
|
|
135
137
|
private _connect;
|
|
138
|
+
private _handleAbort;
|
|
136
139
|
private _handleTimeout;
|
|
137
140
|
private _disconnect;
|
|
138
141
|
private _acceptOpen;
|
|
@@ -64,7 +64,7 @@ const DEFAULT_OPTIONS = {
|
|
|
64
64
|
debug: false,
|
|
65
65
|
};
|
|
66
66
|
class ReconnectingWebSocket {
|
|
67
|
-
constructor({ url, protocols, options, headers, queryParameters }) {
|
|
67
|
+
constructor({ url, protocols, options, headers, queryParameters, abortSignal }) {
|
|
68
68
|
this._listeners = {
|
|
69
69
|
error: [],
|
|
70
70
|
message: [],
|
|
@@ -98,6 +98,25 @@ class ReconnectingWebSocket {
|
|
|
98
98
|
* this indicates that the connection is ready to send and receive data
|
|
99
99
|
*/
|
|
100
100
|
this.onopen = null;
|
|
101
|
+
this._handleAbort = () => {
|
|
102
|
+
if (this._closeCalled) {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
this._debug("abort signal fired");
|
|
106
|
+
this._shouldReconnect = false;
|
|
107
|
+
this._closeCalled = true;
|
|
108
|
+
this._clearTimeouts();
|
|
109
|
+
if (this._ws) {
|
|
110
|
+
this._removeListeners();
|
|
111
|
+
try {
|
|
112
|
+
this._ws.close(1000, "aborted");
|
|
113
|
+
this._handleClose(new Events.CloseEvent(1000, "aborted", this));
|
|
114
|
+
}
|
|
115
|
+
catch (_error) {
|
|
116
|
+
// ignore
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
};
|
|
101
120
|
this._handleOpen = (event) => {
|
|
102
121
|
this._debug("open event");
|
|
103
122
|
const { minUptime = DEFAULT_OPTIONS.minUptime } = this._options;
|
|
@@ -148,6 +167,10 @@ class ReconnectingWebSocket {
|
|
|
148
167
|
this._options = options !== null && options !== void 0 ? options : DEFAULT_OPTIONS;
|
|
149
168
|
this._headers = headers;
|
|
150
169
|
this._queryParameters = queryParameters;
|
|
170
|
+
this._abortSignal = abortSignal;
|
|
171
|
+
if (this._abortSignal) {
|
|
172
|
+
this._abortSignal.addEventListener("abort", this._handleAbort, { once: true });
|
|
173
|
+
}
|
|
151
174
|
if (this._options.startClosed) {
|
|
152
175
|
this._shouldReconnect = false;
|
|
153
176
|
}
|
|
@@ -340,9 +363,14 @@ class ReconnectingWebSocket {
|
|
|
340
363
|
throw Error("Invalid URL");
|
|
341
364
|
}
|
|
342
365
|
_connect() {
|
|
366
|
+
var _a;
|
|
343
367
|
if (this._connectLock || !this._shouldReconnect) {
|
|
344
368
|
return;
|
|
345
369
|
}
|
|
370
|
+
if ((_a = this._abortSignal) === null || _a === void 0 ? void 0 : _a.aborted) {
|
|
371
|
+
this._debug("connect aborted");
|
|
372
|
+
return;
|
|
373
|
+
}
|
|
346
374
|
this._connectLock = true;
|
|
347
375
|
const { maxRetries = DEFAULT_OPTIONS.maxRetries, connectionTimeout = DEFAULT_OPTIONS.connectionTimeout, WebSocket = getGlobalWebSocket(), } = this._options;
|
|
348
376
|
if (this._retryCount >= maxRetries) {
|
|
@@ -358,7 +386,9 @@ class ReconnectingWebSocket {
|
|
|
358
386
|
this._wait()
|
|
359
387
|
.then(() => this._getNextUrl(this._url))
|
|
360
388
|
.then((url) => {
|
|
361
|
-
|
|
389
|
+
var _a;
|
|
390
|
+
if (this._closeCalled || ((_a = this._abortSignal) === null || _a === void 0 ? void 0 : _a.aborted)) {
|
|
391
|
+
this._connectLock = false;
|
|
362
392
|
return;
|
|
363
393
|
}
|
|
364
394
|
const options = {};
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
export interface DeepgramEnvironmentUrls {
|
|
2
2
|
base: string;
|
|
3
|
-
production: string;
|
|
4
3
|
agent: string;
|
|
4
|
+
production: string;
|
|
5
5
|
}
|
|
6
6
|
export declare const DeepgramEnvironment: {
|
|
7
7
|
readonly Production: {
|
|
8
8
|
readonly base: "https://api.deepgram.com";
|
|
9
|
-
readonly production: "wss://api.deepgram.com";
|
|
10
9
|
readonly agent: "wss://agent.deepgram.com";
|
|
10
|
+
readonly production: "wss://api.deepgram.com";
|
|
11
11
|
};
|
|
12
12
|
readonly Agent: {
|
|
13
13
|
readonly base: "https://agent.deepgram.com";
|
|
14
|
-
readonly production: "wss://api.deepgram.com";
|
|
15
14
|
readonly agent: "wss://agent.deepgram.com";
|
|
15
|
+
readonly production: "wss://api.deepgram.com";
|
|
16
16
|
};
|
|
17
17
|
};
|
|
18
18
|
export type DeepgramEnvironment = typeof DeepgramEnvironment.Production | typeof DeepgramEnvironment.Agent;
|
package/dist/cjs/environments.js
CHANGED
|
@@ -5,12 +5,12 @@ exports.DeepgramEnvironment = void 0;
|
|
|
5
5
|
exports.DeepgramEnvironment = {
|
|
6
6
|
Production: {
|
|
7
7
|
base: "https://api.deepgram.com",
|
|
8
|
-
production: "wss://api.deepgram.com",
|
|
9
8
|
agent: "wss://agent.deepgram.com",
|
|
9
|
+
production: "wss://api.deepgram.com",
|
|
10
10
|
},
|
|
11
11
|
Agent: {
|
|
12
12
|
base: "https://agent.deepgram.com",
|
|
13
|
-
production: "wss://api.deepgram.com",
|
|
14
13
|
agent: "wss://agent.deepgram.com",
|
|
14
|
+
production: "wss://api.deepgram.com",
|
|
15
15
|
},
|
|
16
16
|
};
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export * as Deepgram from "./api/index.js";
|
|
2
|
+
export * from "./api/types/index.js";
|
|
3
|
+
export * from "./api/resources/index.js";
|
|
2
4
|
export type { BaseClientOptions, BaseRequestOptions } from "./BaseClient.js";
|
|
3
5
|
export { DeepgramClient as DefaultDeepgramClient } from "./Client.js";
|
|
4
6
|
export { CustomDeepgramClient as DeepgramClient } from "./CustomClient.js";
|
package/dist/cjs/index.js
CHANGED
|
@@ -37,7 +37,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.DeepgramTimeoutError = exports.DeepgramError = exports.DeepgramEnvironment = exports.DeepgramClient = exports.DefaultDeepgramClient = exports.Deepgram = void 0;
|
|
40
|
+
// Export everything under Deepgram namespace for backwards compatibility
|
|
40
41
|
exports.Deepgram = __importStar(require("./api/index.js"));
|
|
42
|
+
// ALSO export all types directly for better discoverability and IDE autocomplete
|
|
43
|
+
// This allows: import { ListenV1Response } from "@deepgram/sdk"
|
|
44
|
+
// While still supporting: import { Deepgram } from "@deepgram/sdk"; type Response = Deepgram.ListenV1Response;
|
|
45
|
+
__exportStar(require("./api/types/index.js"), exports);
|
|
46
|
+
__exportStar(require("./api/resources/index.js"), exports);
|
|
41
47
|
var Client_js_1 = require("./Client.js");
|
|
42
48
|
Object.defineProperty(exports, "DefaultDeepgramClient", { enumerable: true, get: function () { return Client_js_1.DeepgramClient; } });
|
|
43
49
|
var CustomClient_js_1 = require("./CustomClient.js");
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Express middleware for proxying Deepgram API requests.
|
|
3
|
+
*
|
|
4
|
+
* @packageDocumentation
|
|
5
|
+
*
|
|
6
|
+
* **Peer Dependencies Required:**
|
|
7
|
+
* ```bash
|
|
8
|
+
* npm install express
|
|
9
|
+
* # or
|
|
10
|
+
* pnpm add express
|
|
11
|
+
* ```
|
|
12
|
+
*
|
|
13
|
+
* This module provides Express-compatible middleware for proxying requests to the
|
|
14
|
+
* Deepgram API, including REST endpoints and WebSocket connections.
|
|
15
|
+
*/
|
|
16
|
+
import type { IncomingMessage, Server, ServerResponse } from "node:http";
|
|
17
|
+
import type { Duplex } from "node:stream";
|
|
18
|
+
import type { MiddlewareOptions } from "../core/types.js";
|
|
19
|
+
/**
|
|
20
|
+
* Express middleware type
|
|
21
|
+
*/
|
|
22
|
+
export type ExpressMiddleware = (req: IncomingMessage, res: ServerResponse, next: (error?: Error) => void) => void | Promise<void>;
|
|
23
|
+
/**
|
|
24
|
+
* WebSocket upgrade handler type
|
|
25
|
+
*/
|
|
26
|
+
export type UpgradeHandler = (req: IncomingMessage, socket: Duplex, head: Buffer) => void;
|
|
27
|
+
/**
|
|
28
|
+
* Create Express middleware for proxying Deepgram API requests
|
|
29
|
+
*
|
|
30
|
+
* @param options - Middleware configuration options
|
|
31
|
+
* @returns Express middleware function
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* import express from 'express';
|
|
36
|
+
* import { createDeepgramProxy, createWebSocketHandler } from '@deepgram/sdk';
|
|
37
|
+
*
|
|
38
|
+
* const app = express();
|
|
39
|
+
* const proxyOptions = {
|
|
40
|
+
* apiKey: process.env.DEEPGRAM_API_KEY!,
|
|
41
|
+
* enableTokenAuth: true
|
|
42
|
+
* };
|
|
43
|
+
*
|
|
44
|
+
* // REST API proxy
|
|
45
|
+
* app.use('/api/deepgram', createDeepgramProxy(proxyOptions));
|
|
46
|
+
*
|
|
47
|
+
* // WebSocket upgrade handler
|
|
48
|
+
* const server = app.listen(3000);
|
|
49
|
+
* server.on('upgrade', createWebSocketHandler(proxyOptions));
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export declare function createDeepgramProxy(options: MiddlewareOptions): ExpressMiddleware;
|
|
53
|
+
/**
|
|
54
|
+
* Create WebSocket upgrade handler for Express
|
|
55
|
+
*
|
|
56
|
+
* This must be registered on the HTTP server, not the Express app.
|
|
57
|
+
*
|
|
58
|
+
* @param options - Middleware configuration options
|
|
59
|
+
* @returns Upgrade handler function
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* import express from 'express';
|
|
64
|
+
* import { createWebSocketHandler } from '@deepgram/sdk';
|
|
65
|
+
*
|
|
66
|
+
* const app = express();
|
|
67
|
+
* const server = app.listen(3000);
|
|
68
|
+
*
|
|
69
|
+
* // Register WebSocket handler on the server
|
|
70
|
+
* server.on('upgrade', createWebSocketHandler({
|
|
71
|
+
* apiKey: process.env.DEEPGRAM_API_KEY!
|
|
72
|
+
* }));
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export declare function createWebSocketHandler(options: MiddlewareOptions): UpgradeHandler;
|
|
76
|
+
/**
|
|
77
|
+
* Combined helper that returns both middleware and upgrade handler
|
|
78
|
+
*
|
|
79
|
+
* @param options - Middleware configuration options
|
|
80
|
+
* @returns Object with middleware and upgrade handler
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```typescript
|
|
84
|
+
* import express from 'express';
|
|
85
|
+
* import { createDeepgramMiddleware } from '@deepgram/sdk';
|
|
86
|
+
*
|
|
87
|
+
* const app = express();
|
|
88
|
+
* const { middleware, upgradeHandler } = createDeepgramMiddleware({
|
|
89
|
+
* apiKey: process.env.DEEPGRAM_API_KEY!,
|
|
90
|
+
* enableTokenAuth: true
|
|
91
|
+
* });
|
|
92
|
+
*
|
|
93
|
+
* app.use('/api/deepgram', middleware);
|
|
94
|
+
*
|
|
95
|
+
* const server = app.listen(3000);
|
|
96
|
+
* server.on('upgrade', upgradeHandler);
|
|
97
|
+
* ```
|
|
98
|
+
*/
|
|
99
|
+
export declare function createDeepgramMiddleware(options: MiddlewareOptions): {
|
|
100
|
+
middleware: ExpressMiddleware;
|
|
101
|
+
upgradeHandler: UpgradeHandler;
|
|
102
|
+
server: (httpServer: Server) => void;
|
|
103
|
+
};
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Express middleware for proxying Deepgram API requests.
|
|
4
|
+
*
|
|
5
|
+
* @packageDocumentation
|
|
6
|
+
*
|
|
7
|
+
* **Peer Dependencies Required:**
|
|
8
|
+
* ```bash
|
|
9
|
+
* npm install express
|
|
10
|
+
* # or
|
|
11
|
+
* pnpm add express
|
|
12
|
+
* ```
|
|
13
|
+
*
|
|
14
|
+
* This module provides Express-compatible middleware for proxying requests to the
|
|
15
|
+
* Deepgram API, including REST endpoints and WebSocket connections.
|
|
16
|
+
*/
|
|
17
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
20
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
21
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
22
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
23
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.createDeepgramProxy = createDeepgramProxy;
|
|
28
|
+
exports.createWebSocketHandler = createWebSocketHandler;
|
|
29
|
+
exports.createDeepgramMiddleware = createDeepgramMiddleware;
|
|
30
|
+
const ProxyHandler_js_1 = require("../core/ProxyHandler.js");
|
|
31
|
+
const TokenManager_js_1 = require("../core/TokenManager.js");
|
|
32
|
+
const WebSocketProxy_js_1 = require("../core/WebSocketProxy.js");
|
|
33
|
+
/**
|
|
34
|
+
* Create Express middleware for proxying Deepgram API requests
|
|
35
|
+
*
|
|
36
|
+
* @param options - Middleware configuration options
|
|
37
|
+
* @returns Express middleware function
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```typescript
|
|
41
|
+
* import express from 'express';
|
|
42
|
+
* import { createDeepgramProxy, createWebSocketHandler } from '@deepgram/sdk';
|
|
43
|
+
*
|
|
44
|
+
* const app = express();
|
|
45
|
+
* const proxyOptions = {
|
|
46
|
+
* apiKey: process.env.DEEPGRAM_API_KEY!,
|
|
47
|
+
* enableTokenAuth: true
|
|
48
|
+
* };
|
|
49
|
+
*
|
|
50
|
+
* // REST API proxy
|
|
51
|
+
* app.use('/api/deepgram', createDeepgramProxy(proxyOptions));
|
|
52
|
+
*
|
|
53
|
+
* // WebSocket upgrade handler
|
|
54
|
+
* const server = app.listen(3000);
|
|
55
|
+
* server.on('upgrade', createWebSocketHandler(proxyOptions));
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
function createDeepgramProxy(options) {
|
|
59
|
+
const proxyHandler = new ProxyHandler_js_1.ProxyHandler(options);
|
|
60
|
+
const tokenManager = options.enableTokenAuth
|
|
61
|
+
? new TokenManager_js_1.TokenManager(options)
|
|
62
|
+
: null;
|
|
63
|
+
return (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
try {
|
|
65
|
+
// Handle token generation requests
|
|
66
|
+
if (options.enableTokenAuth &&
|
|
67
|
+
req.url === "/token" &&
|
|
68
|
+
req.method === "GET") {
|
|
69
|
+
yield tokenManager.handleTokenRequest(req, res);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
// Handle all other requests (proxy to Deepgram)
|
|
73
|
+
yield proxyHandler.handleRequest(req, res);
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
next(error instanceof Error ? error : new Error(String(error)));
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Create WebSocket upgrade handler for Express
|
|
82
|
+
*
|
|
83
|
+
* This must be registered on the HTTP server, not the Express app.
|
|
84
|
+
*
|
|
85
|
+
* @param options - Middleware configuration options
|
|
86
|
+
* @returns Upgrade handler function
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```typescript
|
|
90
|
+
* import express from 'express';
|
|
91
|
+
* import { createWebSocketHandler } from '@deepgram/sdk';
|
|
92
|
+
*
|
|
93
|
+
* const app = express();
|
|
94
|
+
* const server = app.listen(3000);
|
|
95
|
+
*
|
|
96
|
+
* // Register WebSocket handler on the server
|
|
97
|
+
* server.on('upgrade', createWebSocketHandler({
|
|
98
|
+
* apiKey: process.env.DEEPGRAM_API_KEY!
|
|
99
|
+
* }));
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
function createWebSocketHandler(options) {
|
|
103
|
+
const wsProxy = new WebSocketProxy_js_1.WebSocketProxy(options);
|
|
104
|
+
return (req, socket, head) => {
|
|
105
|
+
wsProxy.handleUpgrade(req, socket, head);
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Combined helper that returns both middleware and upgrade handler
|
|
110
|
+
*
|
|
111
|
+
* @param options - Middleware configuration options
|
|
112
|
+
* @returns Object with middleware and upgrade handler
|
|
113
|
+
*
|
|
114
|
+
* @example
|
|
115
|
+
* ```typescript
|
|
116
|
+
* import express from 'express';
|
|
117
|
+
* import { createDeepgramMiddleware } from '@deepgram/sdk';
|
|
118
|
+
*
|
|
119
|
+
* const app = express();
|
|
120
|
+
* const { middleware, upgradeHandler } = createDeepgramMiddleware({
|
|
121
|
+
* apiKey: process.env.DEEPGRAM_API_KEY!,
|
|
122
|
+
* enableTokenAuth: true
|
|
123
|
+
* });
|
|
124
|
+
*
|
|
125
|
+
* app.use('/api/deepgram', middleware);
|
|
126
|
+
*
|
|
127
|
+
* const server = app.listen(3000);
|
|
128
|
+
* server.on('upgrade', upgradeHandler);
|
|
129
|
+
* ```
|
|
130
|
+
*/
|
|
131
|
+
function createDeepgramMiddleware(options) {
|
|
132
|
+
const middleware = createDeepgramProxy(options);
|
|
133
|
+
const upgradeHandler = createWebSocketHandler(options);
|
|
134
|
+
return {
|
|
135
|
+
middleware,
|
|
136
|
+
upgradeHandler,
|
|
137
|
+
server: (httpServer) => {
|
|
138
|
+
httpServer.on("upgrade", upgradeHandler);
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
}
|