@tinycloud/node-sdk 2.2.0-beta.10 → 2.2.0-beta.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{core-DcJ27GsA.d.cts → core-M5RMfMIi.d.cts} +56 -0
- package/dist/{core-DcJ27GsA.d.ts → core-M5RMfMIi.d.ts} +56 -0
- package/dist/core.cjs +87 -11
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.cts +2 -2
- package/dist/core.d.ts +2 -2
- package/dist/core.js +97 -15
- package/dist/core.js.map +1 -1
- package/dist/index.cjs +87 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +97 -15
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/core.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ACCOUNT_REGISTRY_PATH, ACCOUNT_REGISTRY_SPACE, AutoApproveSpaceCreationHandler, AutoRejectStrategy, AutoSignStrategy, BatchOptions, BatchResponse, CallbackStrategy, CapabilityEntry, CapabilityKeyRegistry, CapabilityKeyRegistryErrorCode, CapabilityKeyRegistryErrorCodes, ClientSession, ColumnInfo, ComposeManifestOptions, ComposedManifestRequest, CreateDelegationParams, DEFAULT_MANIFEST_SPACE, DEFAULT_MANIFEST_VERSION, DataVaultConfig, DataVaultService, DatabaseHandle, Delegation, DelegationChain, DelegationChainV2, DelegationDirection, DelegationError, DelegationErrorCode, DelegationErrorCodes, DelegationFilters, DelegationManager, DelegationManagerConfig, DelegationRecord, DelegationResult, DuckDbAction, DuckDbActionType, DuckDbBatchOptions, DuckDbBatchResponse, DuckDbDatabaseHandle, DuckDbExecuteOptions, DuckDbExecuteResponse, DuckDbOptions, DuckDbQueryOptions, DuckDbQueryResponse, DuckDbService, DuckDbServiceConfig, DuckDbStatement, DuckDbValue, EncodedShareData, ExecuteOptions, ExecuteResponse, Extension, FetchFunction, GenerateShareParams, ICapabilityKeyRegistry, IDataVaultService, IDatabaseHandle, IDuckDbDatabaseHandle, IDuckDbService, IENSResolver, IKVService, INotificationHandler, IPrefixedKVService, ISQLService, ISecretsService, ISessionManager, ISessionStorage, ISharingService, ISigner, ISpace, ISpaceCreationHandler, ISpaceScopedDelegations, ISpaceScopedSharing, ISpaceService, IUserAuthorization, IWasmBindings, IngestOptions, InvokeFunction, JWK, KVResponse, KVService, KVServiceConfig, KeyInfo, KeyProvider, KeyType, Manifest, ManifestDefaults, ManifestRegistryRecord, ManifestSecretActions, ManifestValidationError, PermissionEntry, PermissionNotInManifestError, PersistedSessionData, PrefixedKVService, ProtocolMismatchError, QueryOptions, QueryResponse, ReceiveOptions, ResolvedCapabilities, ResolvedDelegate, ResolvedSecretPath, ResourceCapability, SECRET_NAME_RE, SQLAction, SQLActionType, SQLService, SQLServiceConfig, SchemaInfo, SecretPayload, SecretScopeOptions, SecretsError, SecretsService, ServiceContext, ServiceContextConfig, ServiceSession, SessionExpiredError, ShareAccess, ShareLink, ShareLinkData, ShareSchema, SharingService, SharingServiceConfig, SignCallback, SignInOptions, SignRequest, SignResponse, SilentNotificationHandler, Space, SpaceAbilitiesMap, SpaceConfig, SpaceCreationContext, SpaceErrorCode, SpaceErrorCodes, SpaceInfo, SpaceOwnership, SpaceService, SpaceServiceConfig, SqlStatement, SqlValue, StoredDelegationChain, TableInfo, TinyCloud, TinyCloudConfig, TinyCloudSession, UnsupportedFeatureError, VAULT_PERMISSION_SERVICE, VaultCrypto, VaultEntry, VaultError, VaultGetOptions, VaultGrantOptions, VaultHeaders, VaultListOptions, VaultPublicSpaceKVActions, VaultPutOptions, VersionCheckError, ViewInfo, WasmVaultFunctions, buildSpaceUri, canonicalizeSecretScope, checkNodeInfo, composeManifestRequest, createCapabilityKeyRegistry, createSharingService, createSpaceService, createVaultCrypto, defaultSpaceCreationHandler, expandActionShortNames, expandPermissionEntries, expandPermissionEntry, isCapabilitySubset, loadManifest, makePublicSpaceId, parseExpiry, parseSpaceUri, resolveManifest, resolveSecretPath, resourceCapabilitiesToSpaceAbilitiesMap, validateManifest } from '@tinycloud/sdk-core';
|
|
2
|
-
export { D as DelegateToOptions, a as DelegateToResult, b as DelegatedAccess, F as FileSessionStorage, M as MemorySessionStorage, N as NodeEventEmitterStrategy, c as NodeUserAuthorization, d as NodeUserAuthorizationConfig, P as PortableDelegation, e as RuntimePermissionGrantOptions, S as SignStrategy, T as TinyCloudNode, f as TinyCloudNodeConfig, W as WasmKeyProvider, g as WasmKeyProviderConfig, h as createWasmKeyProvider, i as defaultSignStrategy, j as deserializeDelegation, s as serializeDelegation } from './core-
|
|
1
|
+
export { ACCOUNT_REGISTRY_PATH, ACCOUNT_REGISTRY_SPACE, AutoApproveSpaceCreationHandler, AutoRejectStrategy, AutoSignStrategy, BatchOptions, BatchResponse, CallbackStrategy, CapabilityEntry, CapabilityKeyRegistry, CapabilityKeyRegistryErrorCode, CapabilityKeyRegistryErrorCodes, ClientSession, ColumnInfo, ComposeManifestOptions, ComposedManifestRequest, CreateDelegationParams, DEFAULT_MANIFEST_SPACE, DEFAULT_MANIFEST_VERSION, DEFAULT_SIGNED_READ_URL_EXPIRY_MS, DataVaultConfig, DataVaultService, DatabaseHandle, Delegation, DelegationChain, DelegationChainV2, DelegationDirection, DelegationError, DelegationErrorCode, DelegationErrorCodes, DelegationFilters, DelegationManager, DelegationManagerConfig, DelegationRecord, DelegationResult, DuckDbAction, DuckDbActionType, DuckDbBatchOptions, DuckDbBatchResponse, DuckDbDatabaseHandle, DuckDbExecuteOptions, DuckDbExecuteResponse, DuckDbOptions, DuckDbQueryOptions, DuckDbQueryResponse, DuckDbService, DuckDbServiceConfig, DuckDbStatement, DuckDbValue, EncodedShareData, ExecuteOptions, ExecuteResponse, Extension, FetchFunction, GenerateShareParams, ICapabilityKeyRegistry, IDataVaultService, IDatabaseHandle, IDuckDbDatabaseHandle, IDuckDbService, IENSResolver, IKVService, INotificationHandler, IPrefixedKVService, ISQLService, ISecretsService, ISessionManager, ISessionStorage, ISharingService, ISigner, ISpace, ISpaceCreationHandler, ISpaceScopedDelegations, ISpaceScopedSharing, ISpaceService, IUserAuthorization, IWasmBindings, IngestOptions, InvokeFunction, JWK, KVCreateSignedReadUrlOptions, KVResponse, KVService, KVServiceConfig, KVSignedReadUrlResponse, KeyInfo, KeyProvider, KeyType, Manifest, ManifestDefaults, ManifestRegistryRecord, ManifestSecretActions, ManifestValidationError, PermissionEntry, PermissionNotInManifestError, PersistedSessionData, PrefixedKVService, ProtocolMismatchError, QueryOptions, QueryResponse, ReceiveOptions, ResolvedCapabilities, ResolvedDelegate, ResolvedSecretPath, ResourceCapability, SECRET_NAME_RE, SQLAction, SQLActionType, SQLService, SQLServiceConfig, SchemaInfo, SecretPayload, SecretScopeOptions, SecretsError, SecretsService, ServiceContext, ServiceContextConfig, ServiceSession, SessionExpiredError, ShareAccess, ShareLink, ShareLinkData, ShareSchema, SharingService, SharingServiceConfig, SignCallback, SignInOptions, SignRequest, SignResponse, SilentNotificationHandler, Space, SpaceAbilitiesMap, SpaceConfig, SpaceCreationContext, SpaceErrorCode, SpaceErrorCodes, SpaceInfo, SpaceOwnership, SpaceService, SpaceServiceConfig, SqlStatement, SqlValue, StoredDelegationChain, TableInfo, TinyCloud, TinyCloudConfig, TinyCloudSession, UnsupportedFeatureError, VAULT_PERMISSION_SERVICE, VaultCrypto, VaultEntry, VaultError, VaultGetOptions, VaultGrantOptions, VaultHeaders, VaultListOptions, VaultPublicSpaceKVActions, VaultPutOptions, VersionCheckError, ViewInfo, WasmVaultFunctions, buildSpaceUri, canonicalizeSecretScope, checkNodeInfo, composeManifestRequest, createCapabilityKeyRegistry, createSharingService, createSpaceService, createVaultCrypto, defaultSpaceCreationHandler, expandActionShortNames, expandPermissionEntries, expandPermissionEntry, isCapabilitySubset, loadManifest, makePublicSpaceId, parseExpiry, parseSpaceUri, resolveManifest, resolveSecretPath, resourceCapabilitiesToSpaceAbilitiesMap, validateManifest } from '@tinycloud/sdk-core';
|
|
2
|
+
export { D as DelegateToOptions, a as DelegateToResult, b as DelegatedAccess, F as FileSessionStorage, M as MemorySessionStorage, N as NodeEventEmitterStrategy, c as NodeUserAuthorization, d as NodeUserAuthorizationConfig, P as PortableDelegation, e as RuntimePermissionGrantOptions, S as SignStrategy, T as TinyCloudNode, f as TinyCloudNodeConfig, W as WasmKeyProvider, g as WasmKeyProviderConfig, h as createWasmKeyProvider, i as defaultSignStrategy, j as deserializeDelegation, s as serializeDelegation } from './core-M5RMfMIi.cjs';
|
|
3
3
|
import 'events';
|
|
4
4
|
import '@tinycloud/sdk-services';
|
package/dist/core.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ACCOUNT_REGISTRY_PATH, ACCOUNT_REGISTRY_SPACE, AutoApproveSpaceCreationHandler, AutoRejectStrategy, AutoSignStrategy, BatchOptions, BatchResponse, CallbackStrategy, CapabilityEntry, CapabilityKeyRegistry, CapabilityKeyRegistryErrorCode, CapabilityKeyRegistryErrorCodes, ClientSession, ColumnInfo, ComposeManifestOptions, ComposedManifestRequest, CreateDelegationParams, DEFAULT_MANIFEST_SPACE, DEFAULT_MANIFEST_VERSION, DataVaultConfig, DataVaultService, DatabaseHandle, Delegation, DelegationChain, DelegationChainV2, DelegationDirection, DelegationError, DelegationErrorCode, DelegationErrorCodes, DelegationFilters, DelegationManager, DelegationManagerConfig, DelegationRecord, DelegationResult, DuckDbAction, DuckDbActionType, DuckDbBatchOptions, DuckDbBatchResponse, DuckDbDatabaseHandle, DuckDbExecuteOptions, DuckDbExecuteResponse, DuckDbOptions, DuckDbQueryOptions, DuckDbQueryResponse, DuckDbService, DuckDbServiceConfig, DuckDbStatement, DuckDbValue, EncodedShareData, ExecuteOptions, ExecuteResponse, Extension, FetchFunction, GenerateShareParams, ICapabilityKeyRegistry, IDataVaultService, IDatabaseHandle, IDuckDbDatabaseHandle, IDuckDbService, IENSResolver, IKVService, INotificationHandler, IPrefixedKVService, ISQLService, ISecretsService, ISessionManager, ISessionStorage, ISharingService, ISigner, ISpace, ISpaceCreationHandler, ISpaceScopedDelegations, ISpaceScopedSharing, ISpaceService, IUserAuthorization, IWasmBindings, IngestOptions, InvokeFunction, JWK, KVResponse, KVService, KVServiceConfig, KeyInfo, KeyProvider, KeyType, Manifest, ManifestDefaults, ManifestRegistryRecord, ManifestSecretActions, ManifestValidationError, PermissionEntry, PermissionNotInManifestError, PersistedSessionData, PrefixedKVService, ProtocolMismatchError, QueryOptions, QueryResponse, ReceiveOptions, ResolvedCapabilities, ResolvedDelegate, ResolvedSecretPath, ResourceCapability, SECRET_NAME_RE, SQLAction, SQLActionType, SQLService, SQLServiceConfig, SchemaInfo, SecretPayload, SecretScopeOptions, SecretsError, SecretsService, ServiceContext, ServiceContextConfig, ServiceSession, SessionExpiredError, ShareAccess, ShareLink, ShareLinkData, ShareSchema, SharingService, SharingServiceConfig, SignCallback, SignInOptions, SignRequest, SignResponse, SilentNotificationHandler, Space, SpaceAbilitiesMap, SpaceConfig, SpaceCreationContext, SpaceErrorCode, SpaceErrorCodes, SpaceInfo, SpaceOwnership, SpaceService, SpaceServiceConfig, SqlStatement, SqlValue, StoredDelegationChain, TableInfo, TinyCloud, TinyCloudConfig, TinyCloudSession, UnsupportedFeatureError, VAULT_PERMISSION_SERVICE, VaultCrypto, VaultEntry, VaultError, VaultGetOptions, VaultGrantOptions, VaultHeaders, VaultListOptions, VaultPublicSpaceKVActions, VaultPutOptions, VersionCheckError, ViewInfo, WasmVaultFunctions, buildSpaceUri, canonicalizeSecretScope, checkNodeInfo, composeManifestRequest, createCapabilityKeyRegistry, createSharingService, createSpaceService, createVaultCrypto, defaultSpaceCreationHandler, expandActionShortNames, expandPermissionEntries, expandPermissionEntry, isCapabilitySubset, loadManifest, makePublicSpaceId, parseExpiry, parseSpaceUri, resolveManifest, resolveSecretPath, resourceCapabilitiesToSpaceAbilitiesMap, validateManifest } from '@tinycloud/sdk-core';
|
|
2
|
-
export { D as DelegateToOptions, a as DelegateToResult, b as DelegatedAccess, F as FileSessionStorage, M as MemorySessionStorage, N as NodeEventEmitterStrategy, c as NodeUserAuthorization, d as NodeUserAuthorizationConfig, P as PortableDelegation, e as RuntimePermissionGrantOptions, S as SignStrategy, T as TinyCloudNode, f as TinyCloudNodeConfig, W as WasmKeyProvider, g as WasmKeyProviderConfig, h as createWasmKeyProvider, i as defaultSignStrategy, j as deserializeDelegation, s as serializeDelegation } from './core-
|
|
1
|
+
export { ACCOUNT_REGISTRY_PATH, ACCOUNT_REGISTRY_SPACE, AutoApproveSpaceCreationHandler, AutoRejectStrategy, AutoSignStrategy, BatchOptions, BatchResponse, CallbackStrategy, CapabilityEntry, CapabilityKeyRegistry, CapabilityKeyRegistryErrorCode, CapabilityKeyRegistryErrorCodes, ClientSession, ColumnInfo, ComposeManifestOptions, ComposedManifestRequest, CreateDelegationParams, DEFAULT_MANIFEST_SPACE, DEFAULT_MANIFEST_VERSION, DEFAULT_SIGNED_READ_URL_EXPIRY_MS, DataVaultConfig, DataVaultService, DatabaseHandle, Delegation, DelegationChain, DelegationChainV2, DelegationDirection, DelegationError, DelegationErrorCode, DelegationErrorCodes, DelegationFilters, DelegationManager, DelegationManagerConfig, DelegationRecord, DelegationResult, DuckDbAction, DuckDbActionType, DuckDbBatchOptions, DuckDbBatchResponse, DuckDbDatabaseHandle, DuckDbExecuteOptions, DuckDbExecuteResponse, DuckDbOptions, DuckDbQueryOptions, DuckDbQueryResponse, DuckDbService, DuckDbServiceConfig, DuckDbStatement, DuckDbValue, EncodedShareData, ExecuteOptions, ExecuteResponse, Extension, FetchFunction, GenerateShareParams, ICapabilityKeyRegistry, IDataVaultService, IDatabaseHandle, IDuckDbDatabaseHandle, IDuckDbService, IENSResolver, IKVService, INotificationHandler, IPrefixedKVService, ISQLService, ISecretsService, ISessionManager, ISessionStorage, ISharingService, ISigner, ISpace, ISpaceCreationHandler, ISpaceScopedDelegations, ISpaceScopedSharing, ISpaceService, IUserAuthorization, IWasmBindings, IngestOptions, InvokeFunction, JWK, KVCreateSignedReadUrlOptions, KVResponse, KVService, KVServiceConfig, KVSignedReadUrlResponse, KeyInfo, KeyProvider, KeyType, Manifest, ManifestDefaults, ManifestRegistryRecord, ManifestSecretActions, ManifestValidationError, PermissionEntry, PermissionNotInManifestError, PersistedSessionData, PrefixedKVService, ProtocolMismatchError, QueryOptions, QueryResponse, ReceiveOptions, ResolvedCapabilities, ResolvedDelegate, ResolvedSecretPath, ResourceCapability, SECRET_NAME_RE, SQLAction, SQLActionType, SQLService, SQLServiceConfig, SchemaInfo, SecretPayload, SecretScopeOptions, SecretsError, SecretsService, ServiceContext, ServiceContextConfig, ServiceSession, SessionExpiredError, ShareAccess, ShareLink, ShareLinkData, ShareSchema, SharingService, SharingServiceConfig, SignCallback, SignInOptions, SignRequest, SignResponse, SilentNotificationHandler, Space, SpaceAbilitiesMap, SpaceConfig, SpaceCreationContext, SpaceErrorCode, SpaceErrorCodes, SpaceInfo, SpaceOwnership, SpaceService, SpaceServiceConfig, SqlStatement, SqlValue, StoredDelegationChain, TableInfo, TinyCloud, TinyCloudConfig, TinyCloudSession, UnsupportedFeatureError, VAULT_PERMISSION_SERVICE, VaultCrypto, VaultEntry, VaultError, VaultGetOptions, VaultGrantOptions, VaultHeaders, VaultListOptions, VaultPublicSpaceKVActions, VaultPutOptions, VersionCheckError, ViewInfo, WasmVaultFunctions, buildSpaceUri, canonicalizeSecretScope, checkNodeInfo, composeManifestRequest, createCapabilityKeyRegistry, createSharingService, createSpaceService, createVaultCrypto, defaultSpaceCreationHandler, expandActionShortNames, expandPermissionEntries, expandPermissionEntry, isCapabilitySubset, loadManifest, makePublicSpaceId, parseExpiry, parseSpaceUri, resolveManifest, resolveSecretPath, resourceCapabilitiesToSpaceAbilitiesMap, validateManifest } from '@tinycloud/sdk-core';
|
|
2
|
+
export { D as DelegateToOptions, a as DelegateToResult, b as DelegatedAccess, F as FileSessionStorage, M as MemorySessionStorage, N as NodeEventEmitterStrategy, c as NodeUserAuthorization, d as NodeUserAuthorizationConfig, P as PortableDelegation, e as RuntimePermissionGrantOptions, S as SignStrategy, T as TinyCloudNode, f as TinyCloudNodeConfig, W as WasmKeyProvider, g as WasmKeyProviderConfig, h as createWasmKeyProvider, i as defaultSignStrategy, j as deserializeDelegation, s as serializeDelegation } from './core-M5RMfMIi.js';
|
|
3
3
|
import 'events';
|
|
4
4
|
import '@tinycloud/sdk-services';
|
package/dist/core.js
CHANGED
|
@@ -208,7 +208,8 @@ import {
|
|
|
208
208
|
composeManifestRequest,
|
|
209
209
|
resourceCapabilitiesToAbilitiesMap,
|
|
210
210
|
resourceCapabilitiesToSpaceAbilitiesMap,
|
|
211
|
-
resolveTinyCloudHosts
|
|
211
|
+
resolveTinyCloudHosts,
|
|
212
|
+
EXPIRY
|
|
212
213
|
} from "@tinycloud/sdk-core";
|
|
213
214
|
|
|
214
215
|
// src/authorization/strategies.ts
|
|
@@ -268,7 +269,7 @@ var NodeUserAuthorization = class {
|
|
|
268
269
|
]
|
|
269
270
|
}
|
|
270
271
|
};
|
|
271
|
-
this.sessionExpirationMs = config.sessionExpirationMs ??
|
|
272
|
+
this.sessionExpirationMs = config.sessionExpirationMs ?? EXPIRY.SESSION_MS;
|
|
272
273
|
this.autoCreateSpace = config.autoCreateSpace ?? false;
|
|
273
274
|
this.spaceCreationHandler = config.spaceCreationHandler;
|
|
274
275
|
this.tinycloudHosts = config.tinycloudHosts;
|
|
@@ -321,6 +322,23 @@ var NodeUserAuthorization = class {
|
|
|
321
322
|
get tinyCloudSession() {
|
|
322
323
|
return this._tinyCloudSession;
|
|
323
324
|
}
|
|
325
|
+
/**
|
|
326
|
+
* Rehydrate the auth-layer session from previously-persisted delegation
|
|
327
|
+
* data. Used by {@link TinyCloudNode.restoreSession} so that downstream
|
|
328
|
+
* surfaces that read from `tinyCloudSession` (notably
|
|
329
|
+
* `grantRuntimePermissions`, which extracts the SIWE expiry from it) work
|
|
330
|
+
* without re-running the full sign-in flow.
|
|
331
|
+
*
|
|
332
|
+
* Caller must supply the same fields that `signIn` would have written —
|
|
333
|
+
* `siwe` is the load-bearing one because `extractSiweExpiration` returns
|
|
334
|
+
* undefined for missing SIWEs and the SDK then treats the session as
|
|
335
|
+
* expired-at-epoch-zero.
|
|
336
|
+
*/
|
|
337
|
+
setRestoredTinyCloudSession(session) {
|
|
338
|
+
this._tinyCloudSession = session;
|
|
339
|
+
this._address = session.address;
|
|
340
|
+
this._chainId = session.chainId;
|
|
341
|
+
}
|
|
324
342
|
async resolveTinyCloudHostsForSignIn(address, chainId) {
|
|
325
343
|
if (this.tinycloudHosts && this.tinycloudHosts.length > 0) {
|
|
326
344
|
return;
|
|
@@ -975,7 +993,8 @@ import {
|
|
|
975
993
|
expandPermissionEntries as expandPermissionEntriesCore,
|
|
976
994
|
isCapabilitySubset,
|
|
977
995
|
parseRecapCapabilities,
|
|
978
|
-
SERVICE_LONG_TO_SHORT
|
|
996
|
+
SERVICE_LONG_TO_SHORT,
|
|
997
|
+
EXPIRY as EXPIRY3
|
|
979
998
|
} from "@tinycloud/sdk-core";
|
|
980
999
|
|
|
981
1000
|
// src/DelegatedAccess.ts
|
|
@@ -1158,7 +1177,8 @@ function createWasmKeyProvider(sessionManager) {
|
|
|
1158
1177
|
// src/delegateToHelpers.ts
|
|
1159
1178
|
import {
|
|
1160
1179
|
parseExpiry,
|
|
1161
|
-
SiweMessage
|
|
1180
|
+
SiweMessage,
|
|
1181
|
+
EXPIRY as EXPIRY2
|
|
1162
1182
|
} from "@tinycloud/sdk-core";
|
|
1163
1183
|
function legacyParamsToPermissionEntries(actions, path, spaceIdOverride) {
|
|
1164
1184
|
const byService = /* @__PURE__ */ new Map();
|
|
@@ -1190,9 +1210,10 @@ function legacyParamsToPermissionEntries(actions, path, spaceIdOverride) {
|
|
|
1190
1210
|
}
|
|
1191
1211
|
return entries;
|
|
1192
1212
|
}
|
|
1213
|
+
var DEFAULT_DELEGATION_EXPIRY_MS = EXPIRY2.SESSION_MS;
|
|
1193
1214
|
function resolveExpiryMs(expiry) {
|
|
1194
1215
|
if (expiry === void 0) {
|
|
1195
|
-
return
|
|
1216
|
+
return DEFAULT_DELEGATION_EXPIRY_MS;
|
|
1196
1217
|
}
|
|
1197
1218
|
if (typeof expiry === "number") {
|
|
1198
1219
|
if (!Number.isFinite(expiry) || expiry <= 0) {
|
|
@@ -1366,6 +1387,7 @@ var NodeSecretsService = class {
|
|
|
1366
1387
|
|
|
1367
1388
|
// src/TinyCloudNode.ts
|
|
1368
1389
|
var DEFAULT_HOST = "https://node.tinycloud.xyz";
|
|
1390
|
+
var DEFAULT_SESSION_EXPIRATION_MS = EXPIRY3.SESSION_MS;
|
|
1369
1391
|
var _TinyCloudNode = class _TinyCloudNode {
|
|
1370
1392
|
/**
|
|
1371
1393
|
* Create a new TinyCloudNode instance.
|
|
@@ -1508,7 +1530,7 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
1508
1530
|
sessionStorage: config.sessionStorage ?? new MemorySessionStorage(),
|
|
1509
1531
|
domain: this.siweDomain,
|
|
1510
1532
|
spacePrefix: config.prefix,
|
|
1511
|
-
sessionExpirationMs: config.sessionExpirationMs ??
|
|
1533
|
+
sessionExpirationMs: config.sessionExpirationMs ?? DEFAULT_SESSION_EXPIRATION_MS,
|
|
1512
1534
|
tinycloudHosts: this.explicitHost ? [this.explicitHost] : void 0,
|
|
1513
1535
|
tinycloudRegistryUrl: config.tinycloudRegistryUrl,
|
|
1514
1536
|
tinycloudFallbackHosts: config.tinycloudFallbackHosts,
|
|
@@ -1774,6 +1796,33 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
1774
1796
|
this._vault.initialize(this._serviceContext);
|
|
1775
1797
|
this._serviceContext.registerService("vault", this._vault);
|
|
1776
1798
|
this.initializeV2Services(serviceSession);
|
|
1799
|
+
if (sessionData.siwe && sessionData.address && sessionData.chainId) {
|
|
1800
|
+
const tcSession = {
|
|
1801
|
+
address: sessionData.address,
|
|
1802
|
+
chainId: sessionData.chainId,
|
|
1803
|
+
sessionKey: JSON.stringify(sessionData.jwk),
|
|
1804
|
+
spaceId: sessionData.spaceId,
|
|
1805
|
+
delegationCid: sessionData.delegationCid,
|
|
1806
|
+
delegationHeader: sessionData.delegationHeader,
|
|
1807
|
+
verificationMethod: sessionData.verificationMethod,
|
|
1808
|
+
jwk: sessionData.jwk,
|
|
1809
|
+
siwe: sessionData.siwe,
|
|
1810
|
+
signature: sessionData.signature ?? ""
|
|
1811
|
+
};
|
|
1812
|
+
if (this.auth) {
|
|
1813
|
+
this.auth.setRestoredTinyCloudSession(tcSession);
|
|
1814
|
+
} else {
|
|
1815
|
+
this._restoredTcSession = tcSession;
|
|
1816
|
+
}
|
|
1817
|
+
}
|
|
1818
|
+
}
|
|
1819
|
+
/**
|
|
1820
|
+
* Resolve the currently-active TinyCloudSession, preferring the auth
|
|
1821
|
+
* layer's value (wallet mode) and falling back to the node-level
|
|
1822
|
+
* rehydration set by {@link restoreSession} (session-only mode).
|
|
1823
|
+
*/
|
|
1824
|
+
currentTinyCloudSession() {
|
|
1825
|
+
return this.auth?.tinyCloudSession ?? this._restoredTcSession;
|
|
1777
1826
|
}
|
|
1778
1827
|
/**
|
|
1779
1828
|
* Connect a wallet to upgrade from session-only mode to wallet mode.
|
|
@@ -1818,7 +1867,7 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
1818
1867
|
sessionStorage: options?.sessionStorage ?? this.config.sessionStorage ?? new MemorySessionStorage(),
|
|
1819
1868
|
domain: this.siweDomain,
|
|
1820
1869
|
spacePrefix: prefix,
|
|
1821
|
-
sessionExpirationMs: this.config.sessionExpirationMs ??
|
|
1870
|
+
sessionExpirationMs: this.config.sessionExpirationMs ?? DEFAULT_SESSION_EXPIRATION_MS,
|
|
1822
1871
|
tinycloudHosts: this.explicitHost ? [this.explicitHost] : void 0,
|
|
1823
1872
|
tinycloudRegistryUrl: this.config.tinycloudRegistryUrl,
|
|
1824
1873
|
tinycloudFallbackHosts: this.config.tinycloudFallbackHosts,
|
|
@@ -1862,7 +1911,7 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
1862
1911
|
sessionStorage: options?.sessionStorage ?? this.config.sessionStorage ?? new MemorySessionStorage(),
|
|
1863
1912
|
domain: this.siweDomain,
|
|
1864
1913
|
spacePrefix: prefix,
|
|
1865
|
-
sessionExpirationMs: this.config.sessionExpirationMs ??
|
|
1914
|
+
sessionExpirationMs: this.config.sessionExpirationMs ?? DEFAULT_SESSION_EXPIRATION_MS,
|
|
1866
1915
|
tinycloudHosts: this.explicitHost ? [this.explicitHost] : void 0,
|
|
1867
1916
|
tinycloudRegistryUrl: this.config.tinycloudRegistryUrl,
|
|
1868
1917
|
tinycloudFallbackHosts: this.config.tinycloudFallbackHosts,
|
|
@@ -2138,7 +2187,7 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
2138
2187
|
* @internal
|
|
2139
2188
|
*/
|
|
2140
2189
|
getSessionExpiry() {
|
|
2141
|
-
const expirationMs = this.config.sessionExpirationMs ??
|
|
2190
|
+
const expirationMs = this.config.sessionExpirationMs ?? DEFAULT_SESSION_EXPIRATION_MS;
|
|
2142
2191
|
return new Date(Date.now() + expirationMs);
|
|
2143
2192
|
}
|
|
2144
2193
|
/**
|
|
@@ -2295,6 +2344,34 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
2295
2344
|
}
|
|
2296
2345
|
return this._sql;
|
|
2297
2346
|
}
|
|
2347
|
+
/**
|
|
2348
|
+
* Get an SQL service scoped to a specific space.
|
|
2349
|
+
*
|
|
2350
|
+
* Mirrors {@link SpaceService}'s per-space KV factory: clones the active
|
|
2351
|
+
* service context and overrides its session's spaceId so that subsequent
|
|
2352
|
+
* `sql/<dbName>/<action>` invocations route to that space. Useful when
|
|
2353
|
+
* the caller already holds a delegation covering the target space (e.g.
|
|
2354
|
+
* via {@link grantRuntimePermissions} or {@link useRuntimeDelegation})
|
|
2355
|
+
* but the SDK's per-space SQL surface isn't otherwise exposed.
|
|
2356
|
+
*
|
|
2357
|
+
* Does NOT auto-create the space.
|
|
2358
|
+
*
|
|
2359
|
+
* @param spaceId - Full space URI (`tinycloud:pkh:eip155:<chain>:<addr>:<name>`).
|
|
2360
|
+
*/
|
|
2361
|
+
sqlForSpace(spaceId) {
|
|
2362
|
+
if (!this._serviceContext || !this._serviceContext.session) {
|
|
2363
|
+
throw new Error("Not signed in. Call signIn() first.");
|
|
2364
|
+
}
|
|
2365
|
+
const sql = new SQLService2({});
|
|
2366
|
+
const spaceScopedContext = new ServiceContext2({
|
|
2367
|
+
invoke: this._serviceContext.invoke,
|
|
2368
|
+
fetch: this._serviceContext.fetch,
|
|
2369
|
+
hosts: this._serviceContext.hosts
|
|
2370
|
+
});
|
|
2371
|
+
spaceScopedContext.setSession({ ...this._serviceContext.session, spaceId });
|
|
2372
|
+
sql.initialize(spaceScopedContext);
|
|
2373
|
+
return sql;
|
|
2374
|
+
}
|
|
2298
2375
|
/**
|
|
2299
2376
|
* DuckDB database operations on this user's space.
|
|
2300
2377
|
*/
|
|
@@ -2420,7 +2497,7 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
2420
2497
|
* every requested permission.
|
|
2421
2498
|
*/
|
|
2422
2499
|
hasRuntimePermissions(permissions) {
|
|
2423
|
-
const session = this.
|
|
2500
|
+
const session = this.currentTinyCloudSession();
|
|
2424
2501
|
if (!session || !Array.isArray(permissions) || permissions.length === 0) {
|
|
2425
2502
|
return false;
|
|
2426
2503
|
}
|
|
@@ -2440,7 +2517,7 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
2440
2517
|
if (permissions === void 0) {
|
|
2441
2518
|
return this.runtimePermissionGrants.map((grant) => grant.delegation);
|
|
2442
2519
|
}
|
|
2443
|
-
const session = this.
|
|
2520
|
+
const session = this.currentTinyCloudSession();
|
|
2444
2521
|
if (!session || !Array.isArray(permissions) || permissions.length === 0) {
|
|
2445
2522
|
return [];
|
|
2446
2523
|
}
|
|
@@ -2454,7 +2531,7 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
2454
2531
|
* matching service calls and downstream `delegateTo()` calls can use it.
|
|
2455
2532
|
*/
|
|
2456
2533
|
async useRuntimeDelegation(delegation) {
|
|
2457
|
-
const session = this.
|
|
2534
|
+
const session = this.currentTinyCloudSession();
|
|
2458
2535
|
if (!session) {
|
|
2459
2536
|
throw new SessionExpiredError(/* @__PURE__ */ new Date(0));
|
|
2460
2537
|
}
|
|
@@ -2493,7 +2570,7 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
2493
2570
|
if (!Array.isArray(permissions) || permissions.length === 0) {
|
|
2494
2571
|
throw new Error("grantRuntimePermissions requires a non-empty permissions array");
|
|
2495
2572
|
}
|
|
2496
|
-
const session = this.
|
|
2573
|
+
const session = this.currentTinyCloudSession();
|
|
2497
2574
|
if (!session) {
|
|
2498
2575
|
throw new SessionExpiredError(/* @__PURE__ */ new Date(0));
|
|
2499
2576
|
}
|
|
@@ -2721,7 +2798,7 @@ var _TinyCloudNode = class _TinyCloudNode {
|
|
|
2721
2798
|
];
|
|
2722
2799
|
const abilities = { kv: { "": kvActions } };
|
|
2723
2800
|
const now = /* @__PURE__ */ new Date();
|
|
2724
|
-
const expiryMs =
|
|
2801
|
+
const expiryMs = EXPIRY3.EPHEMERAL_MS;
|
|
2725
2802
|
const expirationTime = new Date(now.getTime() + expiryMs);
|
|
2726
2803
|
const prepared = this.wasmBindings.prepareSession({
|
|
2727
2804
|
abilities,
|
|
@@ -3781,7 +3858,11 @@ function deserializeDelegation(data) {
|
|
|
3781
3858
|
}
|
|
3782
3859
|
|
|
3783
3860
|
// src/core.ts
|
|
3784
|
-
import {
|
|
3861
|
+
import {
|
|
3862
|
+
DEFAULT_SIGNED_READ_URL_EXPIRY_MS,
|
|
3863
|
+
KVService as KVService3,
|
|
3864
|
+
PrefixedKVService
|
|
3865
|
+
} from "@tinycloud/sdk-core";
|
|
3785
3866
|
import { SQLService as SQLService3, SQLAction, DatabaseHandle } from "@tinycloud/sdk-core";
|
|
3786
3867
|
import { DuckDbService as DuckDbService3, DuckDbDatabaseHandle, DuckDbAction } from "@tinycloud/sdk-core";
|
|
3787
3868
|
import {
|
|
@@ -3829,6 +3910,7 @@ export {
|
|
|
3829
3910
|
CapabilityKeyRegistryErrorCodes,
|
|
3830
3911
|
DEFAULT_MANIFEST_SPACE2 as DEFAULT_MANIFEST_SPACE,
|
|
3831
3912
|
DEFAULT_MANIFEST_VERSION,
|
|
3913
|
+
DEFAULT_SIGNED_READ_URL_EXPIRY_MS,
|
|
3832
3914
|
DataVaultService2 as DataVaultService,
|
|
3833
3915
|
DatabaseHandle,
|
|
3834
3916
|
DelegatedAccess,
|