@opengeni/sdk 3.1.2 → 3.2.2

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.
Files changed (38) hide show
  1. package/dist/artifacts.js +3 -3
  2. package/dist/browser.js +1 -1
  3. package/dist/chat/index.js +4 -4
  4. package/dist/{chunk-NEM5N6C6.js → chunk-JKG75TTU.js} +35 -1
  5. package/dist/chunk-JKG75TTU.js.map +1 -0
  6. package/dist/{chunk-YDVPI7WT.js → chunk-JP62FZSI.js} +2 -2
  7. package/dist/chunk-KGEABAID.js +71 -0
  8. package/dist/chunk-KGEABAID.js.map +1 -0
  9. package/dist/{chunk-S3D75WSQ.js → chunk-N2I422X4.js} +2 -2
  10. package/dist/{chunk-JXXCTW5W.js → chunk-PBVUAXSU.js} +2 -2
  11. package/dist/{chunk-OAKHWFSV.js → chunk-PDU6EU2M.js} +2 -2
  12. package/dist/{chunk-RJHCBZF7.js → chunk-VT4YM4XQ.js} +8 -68
  13. package/dist/{chunk-RJHCBZF7.js.map → chunk-VT4YM4XQ.js.map} +1 -1
  14. package/dist/core.js +2 -2
  15. package/dist/document-authority.js +2 -2
  16. package/dist/external-vault-receiver.d.ts +203 -0
  17. package/dist/external-vault-receiver.js +564 -0
  18. package/dist/external-vault-receiver.js.map +1 -0
  19. package/dist/index.js +13 -11
  20. package/dist/index.js.map +1 -1
  21. package/dist/site-bridge-host.js +2 -2
  22. package/dist/site-browser-runtime.gen.d.ts +1 -1
  23. package/dist/site-document.js +1 -1
  24. package/dist/site-document.js.map +1 -1
  25. package/dist/site.js +2 -2
  26. package/dist/vault-types.d.ts +91 -3
  27. package/dist/vaults-api.d.ts +9 -1
  28. package/dist/workspace-integrations.js +11 -9
  29. package/package.json +7 -3
  30. package/src/external-vault-receiver.ts +914 -0
  31. package/src/site-browser-runtime.gen.ts +1 -1
  32. package/src/vault-types.ts +88 -2
  33. package/src/vaults-api.ts +51 -0
  34. package/dist/chunk-NEM5N6C6.js.map +0 -1
  35. /package/dist/{chunk-YDVPI7WT.js.map → chunk-JP62FZSI.js.map} +0 -0
  36. /package/dist/{chunk-S3D75WSQ.js.map → chunk-N2I422X4.js.map} +0 -0
  37. /package/dist/{chunk-JXXCTW5W.js.map → chunk-PBVUAXSU.js.map} +0 -0
  38. /package/dist/{chunk-OAKHWFSV.js.map → chunk-PDU6EU2M.js.map} +0 -0
package/dist/site.js CHANGED
@@ -24,9 +24,9 @@ import {
24
24
  sanitizeOpenGeniSiteToolInvokeRequest,
25
25
  serveSiteHttp,
26
26
  siteSessionPath
27
- } from "./chunk-JXXCTW5W.js";
27
+ } from "./chunk-PBVUAXSU.js";
28
28
  import "./chunk-P7UWKORG.js";
29
- import "./chunk-NEM5N6C6.js";
29
+ import "./chunk-JKG75TTU.js";
30
30
  import "./chunk-VPVMLM7Q.js";
31
31
  import "./chunk-4AHR4KGA.js";
32
32
  import "./chunk-KADZ5PGG.js";
@@ -1,11 +1,34 @@
1
1
  import type { VaultPolicy } from "./types.js";
2
2
  export type { VaultPolicy };
3
3
  export type VaultOwnerKind = "user" | "workspace" | "organization" | "task";
4
- export type VaultSource = "opengeni" | "onepassword" | "host";
4
+ export type VaultSource = "opengeni" | "onepassword" | "host" | "external" | "protonpass" | "keeper" | "bitwarden";
5
5
  export type VaultMode = "read_write" | "read_only";
6
6
  export type VaultSyncStatus = "ok" | "syncing" | "error" | "auth_expired" | "rate_limited";
7
7
  export type VaultItemType = "login" | "api_key" | "note" | "file" | "passkey";
8
8
  export type VaultFieldKind = "text" | "concealed" | "totp" | "file";
9
+ export type VaultProviderOperations = {
10
+ createItemTypes: VaultItemType[];
11
+ updateItem: boolean;
12
+ removeField: boolean;
13
+ archiveItem: boolean;
14
+ archiveKind: "archive" | "trash" | "none";
15
+ deleteItem: false;
16
+ restoreItem: boolean;
17
+ readFiles: boolean;
18
+ writeFiles: boolean;
19
+ createTotp: boolean;
20
+ updateTotp: boolean;
21
+ createVault: boolean;
22
+ restoreFieldHistory: boolean;
23
+ };
24
+ export type VaultProviderFreshness = {
25
+ state: "current" | "stale" | "refreshing" | "unavailable";
26
+ lastCheckedAt: string | null;
27
+ sourceSyncedAt: string | null;
28
+ source: "live" | "cache" | "unknown";
29
+ errorCode: string | null;
30
+ retryAt: string | null;
31
+ };
9
32
  export type VaultAvailability = {
10
33
  /** null = every workspace in the organization. */
11
34
  allowedWorkspaceIds: string[] | null;
@@ -27,6 +50,8 @@ export type VaultSummary = {
27
50
  lastSyncedAt: string | null;
28
51
  rateLimitedUntil: string | null;
29
52
  providerConnectionId: string | null;
53
+ providerOperations?: VaultProviderOperations | undefined;
54
+ freshness?: VaultProviderFreshness | undefined;
30
55
  availability: VaultAvailability | null;
31
56
  isDefault: boolean;
32
57
  itemCount: number;
@@ -188,6 +213,8 @@ export type ProviderVaultMeta = {
188
213
  name: string;
189
214
  itemCount: number | null;
190
215
  linkedVaultId: string | null;
216
+ writeAccess?: "read_only" | "read_write" | "unknown" | undefined;
217
+ operations?: VaultProviderOperations | undefined;
191
218
  };
192
219
  export type InstallOnePasswordResponse = {
193
220
  connectionId: string;
@@ -220,7 +247,7 @@ export type DisconnectOnePasswordResponse = {
220
247
  unlinkedVaultIds: string[];
221
248
  };
222
249
  export type LinkProviderVaultRequest = {
223
- provider: "onepassword" | "host";
250
+ provider: Exclude<VaultSource, "opengeni">;
224
251
  connectionId?: string | undefined;
225
252
  externalVaultId: string;
226
253
  ownerKind: "user" | "workspace" | "organization";
@@ -233,4 +260,65 @@ export type CreateManagedProviderVaultRequest = {
233
260
  ownerKind: "user" | "workspace" | "organization";
234
261
  groupId?: string | undefined;
235
262
  };
236
- export type VaultErrorCode = "vault_not_found" | "vault_item_not_found" | "vault_field_not_found" | "vault_name_conflict" | "vault_item_name_conflict" | "vault_limit_reached" | "vault_read_only" | "vault_generation_conflict" | "vault_permission_denied" | "vault_reveal_requires_human" | "vault_policy_outside_parent" | "encryption_key_missing" | "provider_auth_invalid" | "provider_auth_expired" | "provider_rate_limited" | "provider_unavailable" | "provider_conflict" | "variable_sets_removed" | "secret_save_forbidden" | "invalid_secret_name" | "secret_value_too_large" | "human_auth_required" | "secret_search_cursor_invalid";
263
+ export type VaultErrorCode = "vault_not_found" | "vault_item_not_found" | "vault_field_not_found" | "vault_name_conflict" | "vault_item_name_conflict" | "vault_limit_reached" | "vault_read_only" | "vault_generation_conflict" | "vault_permission_denied" | "vault_reveal_requires_human" | "vault_policy_outside_parent" | "encryption_key_missing" | "provider_auth_invalid" | "provider_auth_expired" | "provider_rate_limited" | "provider_unavailable" | "provider_conflict" | "provider_locked" | "provider_inventory_incomplete" | "provider_outcome_unknown" | "variable_sets_removed" | "secret_save_forbidden" | "invalid_secret_name" | "secret_value_too_large" | "human_auth_required" | "secret_search_cursor_invalid";
264
+ export type ExternalVaultProviderKind = "external" | "protonpass" | "keeper" | "bitwarden";
265
+ export type VaultProviderCredentials = {
266
+ provider: "external";
267
+ endpoint: string;
268
+ signingSecret: string;
269
+ } | {
270
+ provider: "bitwarden";
271
+ endpoint: string;
272
+ signingSecret: string;
273
+ } | {
274
+ provider: "protonpass";
275
+ token: string;
276
+ } | {
277
+ provider: "keeper";
278
+ oneTimeToken: string;
279
+ hostname?: string | undefined;
280
+ };
281
+ export type InstallVaultProviderRequest = {
282
+ credentials: VaultProviderCredentials;
283
+ ownership: "user" | "workspace" | "organization";
284
+ label?: string | undefined;
285
+ };
286
+ export type ReplaceVaultProviderCredentialsRequest = {
287
+ credentials: VaultProviderCredentials;
288
+ };
289
+ export type VaultProviderConnectionSummary = {
290
+ id: string;
291
+ provider: "onepassword" | ExternalVaultProviderKind;
292
+ ownership: "user" | "workspace" | "organization";
293
+ accountName: string | null;
294
+ label: string | null;
295
+ verifiedAt: string;
296
+ createdAt: string;
297
+ createdBySubjectId: string | null;
298
+ canManage: boolean;
299
+ operations: VaultProviderOperations;
300
+ planTier?: OnePasswordPlanTier | undefined;
301
+ available: boolean;
302
+ verificationStatus?: "ready" | "pending" | undefined;
303
+ };
304
+ export type ListVaultProviderConnectionsResponse = {
305
+ connections: VaultProviderConnectionSummary[];
306
+ providers?: VaultProviderAvailability[] | undefined;
307
+ };
308
+ export type VaultProviderAvailability = {
309
+ provider: VaultProviderConnectionSummary["provider"];
310
+ available: boolean;
311
+ reason: "not_enabled" | null;
312
+ };
313
+ export type InstallVaultProviderResponse = {
314
+ connectionId: string;
315
+ accountName: string | null;
316
+ provider: ExternalVaultProviderKind;
317
+ operations: VaultProviderOperations;
318
+ vaults: ProviderVaultMeta[];
319
+ discoveryPending?: boolean | undefined;
320
+ errorCode?: string | undefined;
321
+ };
322
+ export type DisconnectVaultProviderResponse = {
323
+ unlinkedVaultIds: string[];
324
+ };
@@ -1,6 +1,6 @@
1
1
  import type { OpenGeniClient } from "./client.js";
2
2
  import type { VaultPolicy } from "./types.js";
3
- import type { CreateManagedProviderVaultRequest, CreateVaultItemRequest, CreateVaultRequest, DisconnectOnePasswordResponse, InstallOnePasswordRequest, InstallOnePasswordResponse, LinkProviderVaultRequest, ListVaultItemsQuery, MoveVaultItemRequest, OnePasswordConnectionSummary, ProviderVaultMeta, ReplaceOnePasswordTokenRequest, RevealVaultFieldResponse, SessionSecretsView, UpdateVaultItemRequest, UpdateVaultRequest, VaultErrorCode, VaultFieldVersionMeta, VaultItem, VaultItemSummary, VaultSummary } from "./vault-types.js";
3
+ import type { CreateManagedProviderVaultRequest, CreateVaultItemRequest, CreateVaultRequest, DisconnectOnePasswordResponse, InstallOnePasswordRequest, InstallOnePasswordResponse, LinkProviderVaultRequest, ListVaultItemsQuery, MoveVaultItemRequest, OnePasswordConnectionSummary, ProviderVaultMeta, ReplaceOnePasswordTokenRequest, RevealVaultFieldResponse, SessionSecretsView, UpdateVaultItemRequest, UpdateVaultRequest, VaultErrorCode, VaultFieldVersionMeta, VaultItem, VaultItemSummary, VaultSummary, InstallVaultProviderRequest, InstallVaultProviderResponse, ReplaceVaultProviderCredentialsRequest, VaultProviderConnectionSummary, ListVaultProviderConnectionsResponse, DisconnectVaultProviderResponse } from "./vault-types.js";
4
4
  /**
5
5
  * Vault REST routes over the client's JSON transport. Responses carry metadata
6
6
  * only; plaintext comes back only from `revealField`, and callers keep it in
@@ -44,6 +44,14 @@ export declare function vaultsApi(client: VaultClientLike, workspaceId: string):
44
44
  /** Unlinks the connection's vaults (nothing is deleted in 1Password) and removes its token. */
45
45
  disconnectOnePassword: (connectionId: string) => Promise<DisconnectOnePasswordResponse>;
46
46
  listProviderVaults: (connectionId: string, signal?: AbortSignal) => Promise<ProviderVaultMeta[]>;
47
+ installVaultProvider: (request: InstallVaultProviderRequest) => Promise<InstallVaultProviderResponse>;
48
+ /** Connections plus configured providers, even before the first connection. */
49
+ getVaultProviderCatalog: (signal?: AbortSignal) => Promise<ListVaultProviderConnectionsResponse>;
50
+ listVaultProviderConnections: (signal?: AbortSignal) => Promise<VaultProviderConnectionSummary[]>;
51
+ replaceVaultProviderCredentials: (connectionId: string, request: ReplaceVaultProviderCredentialsRequest) => Promise<InstallVaultProviderResponse>;
52
+ disconnectVaultProvider: (connectionId: string) => Promise<DisconnectVaultProviderResponse>;
53
+ /** Continue verification using the saved credentials, without replaying setup tokens. */
54
+ verifyVaultProviderConnection: (connectionId: string) => Promise<InstallVaultProviderResponse>;
47
55
  linkProviderVault: (request: LinkProviderVaultRequest) => Promise<VaultSummary>;
48
56
  createManagedProviderVault: (connectionId: string, request: CreateManagedProviderVaultRequest) => Promise<VaultSummary>;
49
57
  };
@@ -1,12 +1,6 @@
1
1
  import {
2
- OPENGENI_DELIVERY_ID_HEADER,
3
- OPENGENI_EVENT_ID_HEADER,
4
- OPENGENI_SIGNATURE_HEADER,
5
- OPENGENI_TEST_REQUEST_NIL_ID,
6
2
  OPENGENI_WEBHOOK_HEADERS,
7
- OPENGENI_WEBHOOK_TEST_EVENT_TYPE,
8
3
  OpenGeniSignatureError,
9
- WORKSPACE_WEBHOOK_EVENT_TYPES,
10
4
  createOrganizationWebhook,
11
5
  deleteOrganizationCredentialProvider,
12
6
  deleteOrganizationWebhook,
@@ -22,14 +16,22 @@ import {
22
16
  rotateOrganizationWebhookSecret,
23
17
  rotateWorkspaceCredentialProviderSecret,
24
18
  rotateWorkspaceWebhookSecret,
25
- signOpenGeniPayload,
26
19
  testWorkspaceCredentialProvider,
27
20
  testWorkspaceWebhook,
28
21
  updateOrganizationWebhook,
29
22
  verifyCredentialProviderRequest,
30
- verifyOpenGeniSignature,
31
23
  verifyWebhookEvent
32
- } from "./chunk-RJHCBZF7.js";
24
+ } from "./chunk-VT4YM4XQ.js";
25
+ import {
26
+ OPENGENI_DELIVERY_ID_HEADER,
27
+ OPENGENI_EVENT_ID_HEADER,
28
+ OPENGENI_SIGNATURE_HEADER,
29
+ OPENGENI_TEST_REQUEST_NIL_ID,
30
+ OPENGENI_WEBHOOK_TEST_EVENT_TYPE,
31
+ WORKSPACE_WEBHOOK_EVENT_TYPES,
32
+ signOpenGeniPayload,
33
+ verifyOpenGeniSignature
34
+ } from "./chunk-KGEABAID.js";
33
35
  export {
34
36
  OPENGENI_DELIVERY_ID_HEADER,
35
37
  OPENGENI_EVENT_ID_HEADER,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeni/sdk",
3
- "version": "3.1.2",
3
+ "version": "3.2.2",
4
4
  "description": "Framework-agnostic TypeScript SDK for the Opengeni API: typed client, session lifecycle, SSE event streaming with reconnect + replay-by-sequence, and proxy re-streaming helpers.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -78,6 +78,10 @@
78
78
  "types": "./dist/workspace-integrations.d.ts",
79
79
  "import": "./dist/workspace-integrations.js"
80
80
  },
81
+ "./external-vault-receiver": {
82
+ "types": "./dist/external-vault-receiver.d.ts",
83
+ "import": "./dist/external-vault-receiver.js"
84
+ },
81
85
  "./session-history-import": {
82
86
  "types": "./dist/session-history-import.d.ts",
83
87
  "import": "./dist/session-history-import.js"
@@ -194,8 +198,8 @@
194
198
  "prepublishOnly": "bash ../../scripts/prepublish-guard"
195
199
  },
196
200
  "dependencies": {
197
- "@opengeni/connect": "3.1.2",
198
- "@opengeni/contracts": "3.1.2"
201
+ "@opengeni/connect": "3.2.2",
202
+ "@opengeni/contracts": "3.2.2"
199
203
  },
200
204
  "engines": {
201
205
  "node": ">=18"