@undefineds.co/xpod 0.4.3 → 0.4.5
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/config/cloud.json +1 -1
- package/config/main.json +36 -2
- package/dist/api/ai-gateway/auth/GatewayApiKeyAuthenticator.d.ts +3 -0
- package/dist/api/ai-gateway/auth/GatewayApiKeyAuthenticator.js +1 -1
- package/dist/api/ai-gateway/auth/PodGatewayAccessKeyRepository.d.ts +2 -1
- package/dist/api/ai-gateway/auth/PodGatewayAccessKeyRepository.js +101 -32
- package/dist/api/ai-gateway/connect/DeviceCodeProtocol.d.ts +80 -0
- package/dist/api/ai-gateway/connect/DeviceCodeProtocol.js +3 -0
- package/dist/api/ai-gateway/connect/FileSessionImportAdapter.d.ts +38 -0
- package/dist/api/ai-gateway/connect/FileSessionImportAdapter.js +63 -0
- package/dist/api/ai-gateway/connect/LoopbackAuthorizationCallbackReceiver.d.ts +24 -0
- package/dist/api/ai-gateway/connect/LoopbackAuthorizationCallbackReceiver.js +136 -0
- package/dist/api/ai-gateway/connect/OAuthConnectAdapter.d.ts +2 -0
- package/dist/api/ai-gateway/connect/OAuthConnectAdapter.js +2 -1
- package/dist/api/ai-gateway/connect/OAuthIntegrationRegistry.d.ts +17 -13
- package/dist/api/ai-gateway/connect/OAuthIntegrationRegistry.js +52 -19
- package/dist/api/ai-gateway/connect/OpenAiSubscriptionSessionImportAdapter.d.ts +4 -28
- package/dist/api/ai-gateway/connect/OpenAiSubscriptionSessionImportAdapter.js +7 -58
- package/dist/api/ai-gateway/connect/ProviderAuthorizationProfiles.d.ts +4 -0
- package/dist/api/ai-gateway/connect/ProviderAuthorizationProfiles.js +116 -0
- package/dist/api/ai-gateway/connect/SessionImportProfiles.d.ts +10 -0
- package/dist/api/ai-gateway/connect/SessionImportProfiles.js +112 -0
- package/dist/api/ai-gateway/connect/index.d.ts +125 -23
- package/dist/api/ai-gateway/connect/index.js +1277 -260
- package/dist/api/ai-gateway/models/PodModelSelectionRepository.d.ts +4 -1
- package/dist/api/ai-gateway/models/PodModelSelectionRepository.js +154 -19
- package/dist/api/ai-gateway/providers/DeepSeekRuntimeAdapter.js +10 -6
- package/dist/api/ai-gateway/providers/ModelsDevCatalog.d.ts +7 -0
- package/dist/api/ai-gateway/providers/ModelsDevCatalog.js +25 -1
- package/dist/api/ai-gateway/providers/OfferingAuthorization.d.ts +24 -0
- package/dist/api/ai-gateway/providers/OfferingAuthorization.js +37 -0
- package/dist/api/ai-gateway/providers/OpenAiRuntimeAdapter.d.ts +1 -1
- package/dist/api/ai-gateway/providers/OpenAiRuntimeAdapter.js +5 -3
- package/dist/api/ai-gateway/providers/ProviderRegistry.d.ts +6 -3
- package/dist/api/ai-gateway/providers/ProviderRegistry.js +55 -16
- package/dist/api/ai-gateway/providers/ProviderRuntimeAdapter.d.ts +2 -0
- package/dist/api/ai-gateway/providers/ProviderRuntimeAdapter.js +37 -4
- package/dist/api/ai-gateway/providers/ProviderRuntimeRegistry.js +7 -0
- package/dist/api/ai-gateway/quota/SubscriptionQuotaAdapters.js +2 -1
- package/dist/api/ai-gateway/routing/ModelRouter.js +3 -1
- package/dist/api/container/common.js +30 -40
- package/dist/api/container/index.js +6 -2
- package/dist/api/container/routes.js +5 -22
- package/dist/api/handlers/AiClientConfigurationHandler.js +39 -1
- package/dist/api/handlers/AiGatewayManagementHandler.d.ts +3 -0
- package/dist/api/handlers/AiGatewayManagementHandler.js +173 -58
- package/dist/api/service/AiClientConfigurationService.d.ts +4 -15
- package/dist/api/service/AiClientConfigurationService.js +17 -64
- package/dist/cli/commands/start.js +2 -0
- package/dist/components/components.jsonld +1 -0
- package/dist/components/context.jsonld +80 -0
- package/dist/http/InternalPodDataHttpHandler.d.ts +3 -0
- package/dist/http/InternalPodDataHttpHandler.js +13 -2
- package/dist/http/InternalPodDataHttpHandler.jsonld +12 -0
- package/dist/identity/oidc/RememberedClientPromptFactory.d.ts +1 -1
- package/dist/identity/oidc/RememberedClientPromptFactory.js +5 -2
- package/dist/identity/oidc/RememberedConsentHandler.js +1 -1
- package/dist/identity/oidc/ScopedPickWebIdHandler.d.ts +1 -0
- package/dist/identity/oidc/ScopedPickWebIdHandler.js +26 -0
- package/dist/identity/oidc/ScopedPickWebIdHandler.jsonld +4 -0
- package/dist/identity/oidc/SessionBoundIdentityProviderFactory.d.ts +10 -0
- package/dist/identity/oidc/SessionBoundIdentityProviderFactory.js +21 -0
- package/dist/identity/oidc/SessionBoundIdentityProviderFactory.jsonld +172 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +4 -2
- package/dist/runtime/component-parameter-keys.js +18 -2
- package/dist/storage/accessors/MixDataAccessor.js +6 -2
- package/dist/storage/rdf/PostgresRdfEngine.js +10 -2
- package/dist/storage/rdf/RdfContentTypes.js +4 -0
- package/node_modules/@undefineds.co/ai-connections/dist/AiClientConfigurationSection.d.ts +3 -0
- package/node_modules/@undefineds.co/ai-connections/dist/AiClientConfigurationSection.js +13 -16
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsList.js +1 -3
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsMain.d.ts +2 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsMain.js +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsPanel.d.ts +4 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsPanel.js +127 -57
- package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialPoolSection.d.ts +6 -4
- package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialPoolSection.js +436 -83
- package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeysSection.d.ts +3 -2
- package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeysSection.js +212 -76
- package/node_modules/@undefineds.co/ai-connections/dist/AiProviderCard.d.ts +6 -4
- package/node_modules/@undefineds.co/ai-connections/dist/AiProviderCard.js +58 -41
- package/node_modules/@undefineds.co/ai-connections/dist/AiQuotaCard.d.ts +4 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiQuotaCard.js +63 -4
- package/node_modules/@undefineds.co/ai-connections/dist/ai-connections-client.d.ts +46 -6
- package/node_modules/@undefineds.co/ai-connections/dist/ai-connections-client.js +143 -14
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/base-adapter.d.ts +19 -3
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/base-adapter.js +45 -7
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/codex.d.ts +7 -1
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/codex.js +305 -40
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/index.cjs +383 -50
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/json-env-adapter.js +3 -2
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/pi.js +12 -3
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/transaction.d.ts +2 -0
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/transaction.js +39 -4
- package/node_modules/@undefineds.co/ai-connections/dist/client-config/types.d.ts +8 -1
- package/node_modules/@undefineds.co/ai-connections/dist/client-visuals.d.ts +2 -0
- package/node_modules/@undefineds.co/ai-connections/dist/client-visuals.js +14 -0
- package/node_modules/@undefineds.co/ai-connections/dist/controller.d.ts +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/controller.js +216 -57
- package/node_modules/@undefineds.co/ai-connections/dist/index.d.ts +3 -1
- package/node_modules/@undefineds.co/ai-connections/dist/index.js +16 -2
- package/node_modules/@undefineds.co/ai-connections/dist/provider-visuals.js +6 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-executor.js +27 -6
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-database.js +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.js +2 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/sparql/builder/update-builder.js +12 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/triple/builder.js +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/triple/handlers/array.js +8 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/triple/handlers/default.js +9 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/triple/handlers/inline.js +3 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.js +27 -6
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-database.js +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.js +2 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/update-builder.js +12 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/builder.js +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/array.js +8 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/default.js +9 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/inline.js +3 -3
- package/node_modules/@undefineds.co/extension-sdk/dist/web.d.ts +31 -0
- package/package.json +2 -2
- package/static/app/assets/{index-BikOyGPu.js → index-BCZVzMpj.js} +44 -44
- package/static/app/assets/inrupt-smoke.js +2 -2
- package/static/app/assets/main.css +1 -1
- package/static/app/assets/main.js +10 -10
- package/static/auth-callback/assets/{AiConfigContext-DrCH6ckh.js → AiConfigContext-DVkh8Kg2.js} +1 -1
- package/static/auth-callback/assets/{AiConfigPage-DVrlSSdA.js → AiConfigPage-HWVWpe-P.js} +1 -1
- package/static/auth-callback/assets/{DocumentProcessingPanel-_Md-v2R2.js → DocumentProcessingPanel-DDq-mH17.js} +1 -1
- package/static/auth-callback/assets/{IndexLifecyclePanel-BbWwe23H.js → IndexLifecyclePanel-Cx4cjrdP.js} +1 -1
- package/static/auth-callback/assets/{IndexSubjectPanel-upH9MjU-.js → IndexSubjectPanel-DzSw8M9j.js} +1 -1
- package/static/auth-callback/assets/{ModelAssignmentsPanel-CVGH4t4g.js → ModelAssignmentsPanel-BsRxGc2p.js} +1 -1
- package/static/auth-callback/assets/ModelsPage-DEe1lo6Q.js +10 -0
- package/static/auth-callback/assets/{NetworkPage-Dcbrb1fd.js → NetworkPage-DBiEh1Oz.js} +1 -1
- package/static/auth-callback/assets/{PaneListHeader-DrY-1wBq.js → PaneListHeader-lEEgjyN9.js} +1 -1
- package/static/auth-callback/assets/{SearchIndexingPanel-Dw25y53v.js → SearchIndexingPanel-CZCUUGt6.js} +1 -1
- package/static/auth-callback/assets/{StatusSubjectPanel-BHlz9rNF.js → StatusSubjectPanel-21qdueMr.js} +1 -1
- package/static/auth-callback/assets/{StatusWorkspace-BH7exQP5.js → StatusWorkspace-R8RKsqVz.js} +1 -1
- package/static/auth-callback/assets/{SystemSettingsPage-BYLKnM9f.js → SystemSettingsPage-BQ4e-4Wy.js} +1 -1
- package/static/auth-callback/assets/{SystemSettingsSubjectPanel-DT34LKku.js → SystemSettingsSubjectPanel-BopXD7SE.js} +1 -1
- package/static/auth-callback/assets/{activity-DdULRcSI.js → activity-DSfmTGfY.js} +1 -1
- package/static/auth-callback/assets/ai-connections-C03UWyPh.js +1 -0
- package/static/auth-callback/assets/{auth-callback-D7l2P25I.js → auth-callback-DleaitAS.js} +91 -91
- package/static/auth-callback/assets/auth-callback-vPSC2d2F.css +1 -0
- package/static/auth-callback/assets/{badge-j4zjFnmg.js → badge-B0aLu1sl.js} +1 -1
- package/static/auth-callback/assets/{download-DGXoks01.js → download-D_bFwdYJ.js} +1 -1
- package/static/auth-callback/assets/{external-link-CvbgXXaI.js → external-link-DRfjTaQu.js} +1 -1
- package/static/auth-callback/assets/{index-LRWvKJ2i.js → index-CG23cLYQ.js} +1 -1
- package/static/auth-callback/assets/{index-BOK3j1dz.js → index-CyV9ejwx.js} +1 -1
- package/static/auth-callback/assets/{index-browser-C1Qpe0g4.js → index-browser-D70paxIg.js} +1 -1
- package/static/auth-callback/assets/{key-round-CmgS5UdQ.js → key-round-BjV_mVYH.js} +1 -1
- package/static/auth-callback/assets/{rotate-ccw-c4CSG6Rq.js → rotate-ccw-CKoOAfse.js} +1 -1
- package/static/auth-callback/assets/{skeleton-ZPMTiRSM.js → skeleton-BZNjZaHx.js} +1 -1
- package/static/auth-callback/assets/{waypoints-xjyBflU5.js → waypoints-DoaJVzZv.js} +1 -1
- package/static/auth-callback/assets/{workspace-layout-B9nj6F5J.js → workspace-layout-CaP46_ZR.js} +1 -1
- package/static/auth-callback/auth-callback.html +2 -2
- package/static/dashboard/assets/{AiConfigContext-BWOOSYNr.js → AiConfigContext-BSrR27yD.js} +1 -1
- package/static/dashboard/assets/{AiConfigPage-CG2kQ9Wy.js → AiConfigPage-D65Z2LET.js} +1 -1
- package/static/dashboard/assets/{DocumentProcessingPanel-B4VXajfj.js → DocumentProcessingPanel-DyTe7Nei.js} +1 -1
- package/static/dashboard/assets/{IndexLifecyclePanel-CWCy0CC8.js → IndexLifecyclePanel-fK8ZGlrL.js} +1 -1
- package/static/dashboard/assets/{IndexSubjectPanel-CSgyQnG_.js → IndexSubjectPanel-CZPGor7v.js} +1 -1
- package/static/dashboard/assets/{ModelAssignmentsPanel-CdGIGidT.js → ModelAssignmentsPanel-CfYn5LMQ.js} +1 -1
- package/static/dashboard/assets/ModelsPage-djlJsghe.js +25 -0
- package/static/dashboard/assets/{NetworkPage-COia9NCH.js → NetworkPage-Coj6GnPl.js} +1 -1
- package/static/dashboard/assets/{PaneListHeader-SZWyr602.js → PaneListHeader-CUuFNSsZ.js} +1 -1
- package/static/dashboard/assets/{SearchIndexingPanel-D6PZtG6k.js → SearchIndexingPanel-CyJLioXS.js} +1 -1
- package/static/dashboard/assets/{StatusSubjectPanel-CxRD4kv0.js → StatusSubjectPanel-Cv26GSVC.js} +1 -1
- package/static/dashboard/assets/{StatusWorkspace-D3PfmY9-.js → StatusWorkspace-CDjFrsmB.js} +1 -1
- package/static/dashboard/assets/{SystemSettingsPage-COg1MmMj.js → SystemSettingsPage-BuNOyNoa.js} +1 -1
- package/static/dashboard/assets/{SystemSettingsSubjectPanel-BSVVB9Ol.js → SystemSettingsSubjectPanel-B2dasdez.js} +1 -1
- package/static/dashboard/assets/{activity-BJJx5cN-.js → activity-D1d2j_4Z.js} +1 -1
- package/static/dashboard/assets/ai-connections-C03UWyPh.js +1 -0
- package/static/dashboard/assets/{badge-elmrFSCj.js → badge-BeAAv6sp.js} +1 -1
- package/static/dashboard/assets/{dashboard-IvQrNmru.js → dashboard-BnGrUGv8.js} +68 -68
- package/static/dashboard/assets/dashboard-vPSC2d2F.css +1 -0
- package/static/dashboard/assets/{download-C3FH2KzG.js → download-DfFGiZRn.js} +1 -1
- package/static/dashboard/assets/{external-link-Bx7F0uKb.js → external-link-IsjU_LC9.js} +1 -1
- package/static/dashboard/assets/{index-liRoRIP1.js → index-BWQTucPe.js} +1 -1
- package/static/dashboard/assets/{index-M4-kWiGz.js → index-Dj75OjnW.js} +1 -1
- package/static/dashboard/assets/{key-round-CXg0bKAj.js → key-round-BJ_9wmQ_.js} +1 -1
- package/static/dashboard/assets/{rotate-ccw-yxJKOBrX.js → rotate-ccw-D3JGiFbR.js} +1 -1
- package/static/dashboard/assets/{skeleton-x9jNGrQT.js → skeleton-CC4nc-z-.js} +1 -1
- package/static/dashboard/assets/{waypoints-CTKeRsGp.js → waypoints-h7sqFqiG.js} +1 -1
- package/static/dashboard/assets/{workspace-layout--YkgkS38.js → workspace-layout-ZAPTOHhs.js} +1 -1
- package/static/dashboard/dashboard.html +2 -2
- package/static/settings/assets/{AiConfigContext-CelxXFcQ.js → AiConfigContext-lGkWpvKP.js} +1 -1
- package/static/settings/assets/{AiConfigPage-BaP-EovM.js → AiConfigPage-BbZWIBZq.js} +1 -1
- package/static/settings/assets/{DocumentProcessingPanel-DzLZluFv.js → DocumentProcessingPanel-DvYdjT-V.js} +1 -1
- package/static/settings/assets/{IndexLifecyclePanel-Bzj1-_oI.js → IndexLifecyclePanel-W5OGQZj7.js} +1 -1
- package/static/settings/assets/{IndexSubjectPanel-B263QLUh.js → IndexSubjectPanel-g_Aa5soq.js} +1 -1
- package/static/settings/assets/{ModelAssignmentsPanel-BAdT4UR0.js → ModelAssignmentsPanel-COlMBKXj.js} +1 -1
- package/static/settings/assets/ModelsPage-mApKi-aw.js +10 -0
- package/static/settings/assets/{NetworkPage-BK6a7l4g.js → NetworkPage-BDT05JUq.js} +1 -1
- package/static/settings/assets/{PaneListHeader-BAS2ICPq.js → PaneListHeader-CByhNpMG.js} +1 -1
- package/static/settings/assets/{SearchIndexingPanel-Cb_p-NgW.js → SearchIndexingPanel-BFAyzXls.js} +1 -1
- package/static/settings/assets/{StatusSubjectPanel-CcjqUua6.js → StatusSubjectPanel-Bz_XZ3VU.js} +1 -1
- package/static/settings/assets/{StatusWorkspace-7Ibty3_k.js → StatusWorkspace-CeVypHcW.js} +1 -1
- package/static/settings/assets/{SystemSettingsPage-DPSz4dg4.js → SystemSettingsPage-Dh7cQIfx.js} +1 -1
- package/static/settings/assets/{SystemSettingsSubjectPanel-Cb4HkKT5.js → SystemSettingsSubjectPanel-CSnpciO0.js} +1 -1
- package/static/settings/assets/{activity-Qhsr5Pxu.js → activity-DXz3EfFN.js} +1 -1
- package/static/settings/assets/ai-connections-C03UWyPh.js +1 -0
- package/static/settings/assets/{badge-B1vf2qCl.js → badge-1ZA144i4.js} +1 -1
- package/static/settings/assets/{download-CYNt0aZ-.js → download-CUHimlYa.js} +1 -1
- package/static/settings/assets/{external-link-ClKb39NT.js → external-link-BYHSVj2Z.js} +1 -1
- package/static/settings/assets/{index-y8ew3MLM.js → index-DKPDMdW5.js} +1 -1
- package/static/settings/assets/{index-browser-DJhvgpNI.js → index-browser-BaEFz0e0.js} +1 -1
- package/static/settings/assets/{index-BgiIDSch.js → index-viSgSvbO.js} +1 -1
- package/static/settings/assets/{key-round-5d-DrJz-.js → key-round-COByPOg8.js} +1 -1
- package/static/settings/assets/{rotate-ccw-CHZY7kS5.js → rotate-ccw-BC2EN6cE.js} +1 -1
- package/static/settings/assets/{settings-D5VRWyx6.js → settings-DLH9XUoT.js} +86 -86
- package/static/settings/assets/settings-vPSC2d2F.css +1 -0
- package/static/settings/assets/{skeleton-FNabNxNE.js → skeleton-B0-FOhKL.js} +1 -1
- package/static/settings/assets/{waypoints-BnL_8ljo.js → waypoints-DGMsvqWo.js} +1 -1
- package/static/settings/assets/{workspace-layout-D5q3F59S.js → workspace-layout-B0SVrJIu.js} +1 -1
- package/static/settings/settings.html +2 -2
- package/static/auth-callback/assets/ModelsPage-BpkVFKbf.js +0 -10
- package/static/auth-callback/assets/ai-connections-Bm52UO7Y.js +0 -1
- package/static/auth-callback/assets/auth-callback-01yz-UDU.css +0 -1
- package/static/dashboard/assets/ModelsPage-Chd5UK0D.js +0 -25
- package/static/dashboard/assets/ai-connections-Bm52UO7Y.js +0 -1
- package/static/dashboard/assets/dashboard-01yz-UDU.css +0 -1
- package/static/settings/assets/ModelsPage-C0NFa1zq.js +0 -10
- package/static/settings/assets/ai-connections-Bm52UO7Y.js +0 -1
- package/static/settings/assets/settings-01yz-UDU.css +0 -1
|
@@ -2,21 +2,26 @@ import { aiModelResource, aiProviderResource, credentialResource } from '@undefi
|
|
|
2
2
|
import type { EncryptedCredentialSecret } from '../credentials/KeyWrapper';
|
|
3
3
|
import type { CredentialVault, ProviderSecret } from '../credentials/CredentialVault';
|
|
4
4
|
import type { GatewayDeployment } from '../auth/InvocationTokenCodec';
|
|
5
|
-
import { type ProviderRegistry } from '../providers/ProviderRegistry';
|
|
5
|
+
import { type ProviderOfferingEndpointDescriptor, type ProviderRegistry } from '../providers/ProviderRegistry';
|
|
6
|
+
import type { OfferingAuthorizationMethod } from '../providers/OfferingAuthorization';
|
|
6
7
|
import type { AuthContext } from '../../auth/AuthContext';
|
|
7
8
|
import type { InternalPodAccessTokenProvider } from '../pod/HostedPodDataAccess';
|
|
8
9
|
import { type PodBaseUrlResolver } from '../pod/PodBaseUrlResolver';
|
|
9
|
-
import type {
|
|
10
|
+
import type { AuthorizationCodeCallbackReceiver } from './LoopbackAuthorizationCallbackReceiver';
|
|
11
|
+
import type { AuthorizationCodeOAuthIntegration, DeviceCodeOAuthIntegration, OAuthConnectMode } from './DeviceCodeProtocol';
|
|
10
12
|
import type { LocalSessionImportAdapter } from './OpenAiSubscriptionSessionImportAdapter';
|
|
11
13
|
export { OAuthConnectCredentialStore } from './OAuthConnectAdapter';
|
|
12
|
-
export { OAuthIntegrationRegistry,
|
|
14
|
+
export { OAuthIntegrationRegistry, requireTrustedOAuthIntegration, type AuthorizationCodeOAuthIntegration, type DeviceCodeOAuthIntegration, type DeviceCodeProtocolDescriptor, type OAuthConnectMode, type OAuthIntegration, } from './OAuthIntegrationRegistry';
|
|
13
15
|
export { OpenAiSubscriptionSessionImportAdapter, type LocalSessionImportAdapter, type LocalSessionImportResult, } from './OpenAiSubscriptionSessionImportAdapter';
|
|
14
|
-
export
|
|
15
|
-
export type
|
|
16
|
+
export { LoopbackAuthorizationCallbackReceiver, type AuthorizationCodeCallbackReceiver, } from './LoopbackAuthorizationCallbackReceiver';
|
|
17
|
+
export type ConnectMode = 'browserAssistedApiKey' | OAuthConnectMode | 'connectUnsupported';
|
|
18
|
+
export type ConnectAttemptStatus = 'pending' | 'authorization_pending' | 'slow_down' | 'completed' | 'expired' | 'denied' | 'cancelled' | 'unsupported';
|
|
16
19
|
export interface ConnectBeginInput {
|
|
17
20
|
webId: string;
|
|
18
21
|
deployment: GatewayDeployment;
|
|
19
22
|
provider: string;
|
|
23
|
+
offeringId?: string;
|
|
24
|
+
authorizationMethodId?: string;
|
|
20
25
|
requestedMode: ConnectMode;
|
|
21
26
|
expectedCredentialVersion?: number;
|
|
22
27
|
auth?: AuthContext;
|
|
@@ -25,6 +30,7 @@ export interface ConnectBeginResult {
|
|
|
25
30
|
mode: ConnectMode;
|
|
26
31
|
status: ConnectAttemptStatus;
|
|
27
32
|
provider: string;
|
|
33
|
+
offeringId?: string;
|
|
28
34
|
deployment: GatewayDeployment;
|
|
29
35
|
attemptId?: string;
|
|
30
36
|
state?: string;
|
|
@@ -49,12 +55,17 @@ export interface OneTimeOAuthCredential {
|
|
|
49
55
|
scope?: string;
|
|
50
56
|
idToken?: string;
|
|
51
57
|
accountSubject?: string;
|
|
58
|
+
accountLabel?: string;
|
|
59
|
+
accountId?: string;
|
|
60
|
+
offeringId?: string;
|
|
61
|
+
authorizationMethodId?: string;
|
|
52
62
|
expectedVersion?: number;
|
|
53
63
|
}
|
|
54
64
|
export interface CompleteApiKeyInput {
|
|
55
65
|
webId: string;
|
|
56
66
|
deployment: GatewayDeployment;
|
|
57
67
|
provider: string;
|
|
68
|
+
offeringId?: string;
|
|
58
69
|
attemptId: string;
|
|
59
70
|
state: string;
|
|
60
71
|
signature: string;
|
|
@@ -67,6 +78,8 @@ export interface PollDeviceInput {
|
|
|
67
78
|
webId: string;
|
|
68
79
|
deployment: GatewayDeployment;
|
|
69
80
|
provider: string;
|
|
81
|
+
offeringId?: string;
|
|
82
|
+
mode?: OAuthConnectMode;
|
|
70
83
|
attemptId: string;
|
|
71
84
|
state: string;
|
|
72
85
|
signature: string;
|
|
@@ -76,6 +89,8 @@ export interface RefreshInput {
|
|
|
76
89
|
webId: string;
|
|
77
90
|
deployment: GatewayDeployment;
|
|
78
91
|
provider: string;
|
|
92
|
+
offeringId?: string;
|
|
93
|
+
mode?: OAuthConnectMode;
|
|
79
94
|
credentialId?: string;
|
|
80
95
|
auth?: AuthContext;
|
|
81
96
|
}
|
|
@@ -83,11 +98,13 @@ export interface CallerOwnedOAuthRefreshInput extends RefreshInput {
|
|
|
83
98
|
credentialId: string;
|
|
84
99
|
refreshToken: string;
|
|
85
100
|
expectedVersion: number;
|
|
101
|
+
authorizationMethodId?: string;
|
|
86
102
|
}
|
|
87
103
|
export interface DisconnectInput {
|
|
88
104
|
webId: string;
|
|
89
105
|
deployment: GatewayDeployment;
|
|
90
106
|
provider: string;
|
|
107
|
+
offeringId?: string;
|
|
91
108
|
credentialId?: string;
|
|
92
109
|
auth?: AuthContext;
|
|
93
110
|
}
|
|
@@ -312,6 +329,9 @@ export declare class PodConnectedCredentialRepository implements PodCredentialRe
|
|
|
312
329
|
}
|
|
313
330
|
export interface ProviderConnectAdapter {
|
|
314
331
|
readonly provider: string;
|
|
332
|
+
readonly offeringId?: string;
|
|
333
|
+
readonly mode?: ConnectMode;
|
|
334
|
+
readonly authorizationMethodId?: string;
|
|
315
335
|
begin(input: ConnectBeginInput): Promise<ConnectBeginResult>;
|
|
316
336
|
status?(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
317
337
|
completeApiKey?(input: CompleteApiKeyInput): Promise<ConnectBeginResult>;
|
|
@@ -319,6 +339,7 @@ export interface ProviderConnectAdapter {
|
|
|
319
339
|
refresh?(input: RefreshInput, current: ConnectCredentialRecord, secret: ProviderSecret): Promise<ConnectCredentialRecord | undefined>;
|
|
320
340
|
refreshCallerOwned?(input: CallerOwnedOAuthRefreshInput): Promise<ConnectBeginResult>;
|
|
321
341
|
disconnect?(input: DisconnectInput): Promise<ConnectCredentialRecord | undefined>;
|
|
342
|
+
cancel?(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
322
343
|
}
|
|
323
344
|
interface ConnectAttempt {
|
|
324
345
|
id: string;
|
|
@@ -326,6 +347,8 @@ interface ConnectAttempt {
|
|
|
326
347
|
deployment: GatewayDeployment;
|
|
327
348
|
webId: string;
|
|
328
349
|
mode: ConnectMode;
|
|
350
|
+
offeringId?: string;
|
|
351
|
+
authorizationMethodId?: string;
|
|
329
352
|
state: string;
|
|
330
353
|
signature: string;
|
|
331
354
|
expiresAt: Date;
|
|
@@ -333,11 +356,13 @@ interface ConnectAttempt {
|
|
|
333
356
|
expectedCredentialVersion?: number;
|
|
334
357
|
codeVerifier?: string;
|
|
335
358
|
deviceCode?: string;
|
|
359
|
+
userCode?: string;
|
|
336
360
|
intervalSeconds?: number;
|
|
337
361
|
currentPollIntervalSeconds?: number;
|
|
338
362
|
nextPollAt?: Date;
|
|
339
363
|
pollClaimedAt?: Date;
|
|
340
364
|
lastPollStatus?: ConnectAttemptStatus;
|
|
365
|
+
terminalStatus?: Extract<ConnectAttemptStatus, 'denied' | 'cancelled' | 'expired'>;
|
|
341
366
|
}
|
|
342
367
|
interface PollClaimResult {
|
|
343
368
|
attempt: ConnectAttempt;
|
|
@@ -348,7 +373,7 @@ export declare class InMemoryConnectAttemptStore {
|
|
|
348
373
|
private readonly maxAttempts;
|
|
349
374
|
create(attempt: ConnectAttempt): Promise<ConnectAttempt>;
|
|
350
375
|
get(id: string, now?: Date): Promise<ConnectAttempt | undefined>;
|
|
351
|
-
consume(id: string, now: Date): Promise<ConnectAttempt>;
|
|
376
|
+
consume(id: string, now: Date, terminalStatus?: Extract<ConnectAttemptStatus, 'denied' | 'cancelled' | 'expired'>): Promise<ConnectAttempt>;
|
|
352
377
|
claimPoll(id: string, now: Date): Promise<PollClaimResult>;
|
|
353
378
|
updatePollSchedule(id: string, patch: {
|
|
354
379
|
intervalSeconds: number;
|
|
@@ -359,9 +384,8 @@ export declare class InMemoryConnectAttemptStore {
|
|
|
359
384
|
private pruneExpired;
|
|
360
385
|
private pruneBounded;
|
|
361
386
|
}
|
|
362
|
-
export interface
|
|
387
|
+
export interface SignedConnectAttemptAdapterOptions {
|
|
363
388
|
provider: string;
|
|
364
|
-
consoleUrl: string;
|
|
365
389
|
attempts: InMemoryConnectAttemptStore;
|
|
366
390
|
credentialRepository: PodCredentialRepository;
|
|
367
391
|
vault: CredentialVault;
|
|
@@ -370,9 +394,8 @@ export interface BrowserAssistedApiKeyConnectAdapterOptions {
|
|
|
370
394
|
randomBytes?: (bytes: number) => Buffer;
|
|
371
395
|
signingSecret: string;
|
|
372
396
|
}
|
|
373
|
-
|
|
397
|
+
declare abstract class SignedConnectAttemptAdapterBase {
|
|
374
398
|
readonly provider: string;
|
|
375
|
-
private readonly consoleUrl;
|
|
376
399
|
protected readonly attempts: InMemoryConnectAttemptStore;
|
|
377
400
|
protected readonly credentialRepository: PodCredentialRepository;
|
|
378
401
|
protected readonly vault: CredentialVault;
|
|
@@ -380,39 +403,97 @@ export declare class BrowserAssistedApiKeyConnectAdapter implements ProviderConn
|
|
|
380
403
|
protected readonly now: () => Date;
|
|
381
404
|
protected readonly randomBytes: (bytes: number) => Buffer;
|
|
382
405
|
private readonly signingSecret;
|
|
383
|
-
constructor(options:
|
|
384
|
-
begin(input: ConnectBeginInput): Promise<ConnectBeginResult>;
|
|
385
|
-
completeApiKey(input: CompleteApiKeyInput): Promise<ConnectBeginResult>;
|
|
386
|
-
status(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
387
|
-
disconnect(input: DisconnectInput): Promise<ConnectCredentialRecord | undefined>;
|
|
406
|
+
protected constructor(options: SignedConnectAttemptAdapterOptions);
|
|
388
407
|
protected createAttempt(input: ConnectBeginInput, expiresAt: Date, extra?: Partial<ConnectAttempt>): Promise<ConnectAttempt>;
|
|
389
408
|
protected loadAttemptForStatus(input: PollDeviceInput, mode: ConnectMode): Promise<ConnectAttempt>;
|
|
390
409
|
protected loadConsumableAttempt(input: PollDeviceInput, mode: ConnectMode): Promise<ConnectAttempt>;
|
|
391
410
|
protected statusForAttempt(attempt: ConnectAttempt): ConnectAttemptStatus;
|
|
392
411
|
protected assertInput(input: ConnectBeginInput, mode: ConnectMode): void;
|
|
393
412
|
}
|
|
394
|
-
export interface
|
|
413
|
+
export interface BrowserAssistedApiKeyConnectAdapterOptions extends SignedConnectAttemptAdapterOptions {
|
|
414
|
+
consoleUrl: string;
|
|
415
|
+
}
|
|
416
|
+
export declare class BrowserAssistedApiKeyConnectAdapter extends SignedConnectAttemptAdapterBase implements ProviderConnectAdapter {
|
|
417
|
+
readonly mode: ConnectMode;
|
|
418
|
+
private readonly consoleUrl;
|
|
419
|
+
constructor(options: BrowserAssistedApiKeyConnectAdapterOptions);
|
|
420
|
+
begin(input: ConnectBeginInput): Promise<ConnectBeginResult>;
|
|
421
|
+
completeApiKey(input: CompleteApiKeyInput): Promise<ConnectBeginResult>;
|
|
422
|
+
status(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
423
|
+
disconnect(input: DisconnectInput): Promise<ConnectCredentialRecord | undefined>;
|
|
424
|
+
}
|
|
425
|
+
export interface DeviceCodeConnectAdapterOptions extends Omit<SignedConnectAttemptAdapterOptions, 'provider'> {
|
|
395
426
|
fetch?: typeof fetch;
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
tokenEndpoint?: string;
|
|
427
|
+
integration: DeviceCodeOAuthIntegration;
|
|
428
|
+
requestTimeoutMs?: number;
|
|
399
429
|
}
|
|
400
|
-
export declare class
|
|
430
|
+
export declare class DeviceCodeConnectAdapter extends SignedConnectAttemptAdapterBase {
|
|
431
|
+
readonly offeringId: string;
|
|
432
|
+
readonly mode: ConnectMode;
|
|
433
|
+
readonly authorizationMethodId = "device-code";
|
|
401
434
|
private readonly fetchImpl;
|
|
435
|
+
private readonly integration;
|
|
402
436
|
private readonly clientId;
|
|
403
|
-
private readonly
|
|
404
|
-
private readonly tokenEndpoint;
|
|
437
|
+
private readonly protocol;
|
|
405
438
|
private readonly oauthCredentials;
|
|
406
|
-
|
|
439
|
+
private readonly requestTimeoutMs;
|
|
440
|
+
constructor(options: DeviceCodeConnectAdapterOptions);
|
|
407
441
|
begin(input: ConnectBeginInput): Promise<ConnectBeginResult>;
|
|
408
442
|
pollDevice(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
443
|
+
private pendingPollStatus;
|
|
409
444
|
status(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
445
|
+
cancel(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
410
446
|
refresh(input: RefreshInput, current: ConnectCredentialRecord, secret: ProviderSecret): Promise<ConnectCredentialRecord | undefined>;
|
|
411
447
|
refreshCallerOwned(input: CallerOwnedOAuthRefreshInput): Promise<ConnectBeginResult>;
|
|
412
448
|
disconnect(input: DisconnectInput): Promise<ConnectCredentialRecord | undefined>;
|
|
413
449
|
private nowForConsume;
|
|
414
450
|
private updateOAuthCredential;
|
|
415
451
|
private findOAuthCredential;
|
|
452
|
+
private resolveTokenBody;
|
|
453
|
+
private providerRequest;
|
|
454
|
+
private assertOfferingInput;
|
|
455
|
+
private assertAuthorizationMethodInput;
|
|
456
|
+
private assertAttemptOffering;
|
|
457
|
+
private assertStoredOffering;
|
|
458
|
+
private isProviderOAuthCredential;
|
|
459
|
+
}
|
|
460
|
+
export interface AuthorizationCodeConnectAdapterOptions extends Omit<SignedConnectAttemptAdapterOptions, 'provider'> {
|
|
461
|
+
fetch?: typeof fetch;
|
|
462
|
+
integration: AuthorizationCodeOAuthIntegration;
|
|
463
|
+
callbackReceiver: AuthorizationCodeCallbackReceiver;
|
|
464
|
+
requestTimeoutMs?: number;
|
|
465
|
+
}
|
|
466
|
+
export declare class AuthorizationCodeConnectAdapter extends SignedConnectAttemptAdapterBase {
|
|
467
|
+
readonly offeringId: string;
|
|
468
|
+
readonly mode: ConnectMode;
|
|
469
|
+
readonly authorizationMethodId = "browser-oauth";
|
|
470
|
+
private readonly fetchImpl;
|
|
471
|
+
private readonly integration;
|
|
472
|
+
private readonly clientId;
|
|
473
|
+
private readonly callbackReceiver;
|
|
474
|
+
private readonly oauthCredentials;
|
|
475
|
+
private readonly requestTimeoutMs;
|
|
476
|
+
private readonly callbacks;
|
|
477
|
+
constructor(options: AuthorizationCodeConnectAdapterOptions);
|
|
478
|
+
begin(input: ConnectBeginInput): Promise<ConnectBeginResult>;
|
|
479
|
+
pollDevice(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
480
|
+
status(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
481
|
+
cancel(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
482
|
+
refreshCallerOwned(input: CallerOwnedOAuthRefreshInput): Promise<ConnectBeginResult>;
|
|
483
|
+
refresh(input: RefreshInput, current: ConnectCredentialRecord, secret: ProviderSecret): Promise<ConnectCredentialRecord | undefined>;
|
|
484
|
+
disconnect(input: DisconnectInput): Promise<ConnectCredentialRecord | undefined>;
|
|
485
|
+
private authorizationUrl;
|
|
486
|
+
private exchangeAuthorizationCode;
|
|
487
|
+
private updateOAuthCredential;
|
|
488
|
+
private findOAuthCredential;
|
|
489
|
+
private providerRequest;
|
|
490
|
+
private assertOfferingInput;
|
|
491
|
+
private assertAuthorizationMethodInput;
|
|
492
|
+
private assertAttemptOffering;
|
|
493
|
+
private assertStoredOffering;
|
|
494
|
+
private isProviderOAuthCredential;
|
|
495
|
+
private loadAuthorizationAttempt;
|
|
496
|
+
private closeCallback;
|
|
416
497
|
}
|
|
417
498
|
export declare class DeepSeekConnectAdapter implements ProviderConnectAdapter {
|
|
418
499
|
readonly provider = "deepseek";
|
|
@@ -479,6 +560,7 @@ export interface AiProviderPoolSummary {
|
|
|
479
560
|
kind?: string;
|
|
480
561
|
lifecycle: 'active' | 'legacy' | 'unavailable';
|
|
481
562
|
authModes?: string[];
|
|
563
|
+
authorizationMethods?: OfferingAuthorizationMethod[];
|
|
482
564
|
runtimeProviderIds?: string[];
|
|
483
565
|
productLabel: string;
|
|
484
566
|
credentialPrefixHints: string[];
|
|
@@ -504,6 +586,12 @@ export interface AiProviderPoolSummary {
|
|
|
504
586
|
credentials: AiProviderCredentialSummary[];
|
|
505
587
|
selectedModels: AiGatewayModelSummary[];
|
|
506
588
|
}
|
|
589
|
+
export interface ProviderOfferingAuthorizationMethodsSummary {
|
|
590
|
+
provider: string;
|
|
591
|
+
offeringId: string;
|
|
592
|
+
authorizationMethods: OfferingAuthorizationMethod[];
|
|
593
|
+
endpoints?: ProviderOfferingEndpointDescriptor[];
|
|
594
|
+
}
|
|
507
595
|
export interface ProviderCredentialTestModelsService {
|
|
508
596
|
list(input: {
|
|
509
597
|
webId: string;
|
|
@@ -520,6 +608,7 @@ export interface ProviderCredentialTestModelsService {
|
|
|
520
608
|
}>;
|
|
521
609
|
}
|
|
522
610
|
export declare class ProviderConnectService {
|
|
611
|
+
private static readonly localImportLocks;
|
|
523
612
|
private readonly registry;
|
|
524
613
|
private readonly credentialRepository?;
|
|
525
614
|
private readonly vault?;
|
|
@@ -527,6 +616,7 @@ export declare class ProviderConnectService {
|
|
|
527
616
|
private readonly localSessionImporters;
|
|
528
617
|
constructor(options: ProviderConnectServiceOptions);
|
|
529
618
|
begin(input: ConnectBeginInput): Promise<ConnectBeginResult>;
|
|
619
|
+
getAuthorizationMethods(): ProviderOfferingAuthorizationMethodsSummary[];
|
|
530
620
|
listProviders(input: {
|
|
531
621
|
webId: string;
|
|
532
622
|
deployment: GatewayDeployment;
|
|
@@ -559,6 +649,8 @@ export declare class ProviderConnectService {
|
|
|
559
649
|
priority?: number;
|
|
560
650
|
auth?: AuthContext;
|
|
561
651
|
}): Promise<AiProviderCredentialSummary>;
|
|
652
|
+
private importLocalCredential;
|
|
653
|
+
private refreshImportedSecret;
|
|
562
654
|
updateCredential(input: ProviderCredentialQuery & {
|
|
563
655
|
credentialId: string;
|
|
564
656
|
expectedVersion: number;
|
|
@@ -595,8 +687,18 @@ export declare class ProviderConnectService {
|
|
|
595
687
|
refreshCallerOwned(input: CallerOwnedOAuthRefreshInput): Promise<ConnectBeginResult>;
|
|
596
688
|
private refreshWithRetry;
|
|
597
689
|
disconnect(input: DisconnectInput): Promise<ConnectCredentialRecord | undefined>;
|
|
690
|
+
cancel(input: PollDeviceInput): Promise<ConnectBeginResult>;
|
|
691
|
+
private runAttemptOperation;
|
|
692
|
+
private requireOAuthRefreshAdapter;
|
|
598
693
|
private getRefreshCredential;
|
|
599
694
|
private requireAdapter;
|
|
695
|
+
private requireAdapterForAttemptStatus;
|
|
696
|
+
private requireAdapterForDisconnect;
|
|
697
|
+
private findAdapter;
|
|
698
|
+
private findAdapterCandidates;
|
|
699
|
+
private requireConnectOffering;
|
|
700
|
+
private offeringSupportsConnectMode;
|
|
701
|
+
private authorizationMethodUnavailableReason;
|
|
600
702
|
}
|
|
601
703
|
export interface CustomProviderModel {
|
|
602
704
|
id: string;
|