@tinycloud/sdk-core 2.2.0-beta.9 → 2.2.1-beta.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/dist/index.cjs +274 -57
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +98 -34
- package/dist/index.d.ts +98 -34
- package/dist/index.js +243 -31
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -728,6 +728,23 @@ function validateServerSpaceInfoResponse(data) {
|
|
|
728
728
|
return { ok: true, data: result.data };
|
|
729
729
|
}
|
|
730
730
|
|
|
731
|
+
// src/expiry.ts
|
|
732
|
+
var EPHEMERAL_MS = 60 * 60 * 1e3;
|
|
733
|
+
var SIGNED_READ_URL_MS = 5 * 60 * 1e3;
|
|
734
|
+
var SESSION_MS = 7 * 24 * 60 * 60 * 1e3;
|
|
735
|
+
var SHARE_MS = 7 * 24 * 60 * 60 * 1e3;
|
|
736
|
+
var APP_MS = 30 * 24 * 60 * 60 * 1e3;
|
|
737
|
+
var MAX_MS = 10 * 365 * 24 * 60 * 60 * 1e3;
|
|
738
|
+
var EXPIRY = {
|
|
739
|
+
EPHEMERAL_MS,
|
|
740
|
+
SIGNED_READ_URL_MS,
|
|
741
|
+
SESSION_MS,
|
|
742
|
+
SHARE_MS,
|
|
743
|
+
APP_MS,
|
|
744
|
+
MAX_MS
|
|
745
|
+
};
|
|
746
|
+
var DEFAULT_SIGNED_READ_URL_EXPIRY_MS = EXPIRY.SIGNED_READ_URL_MS;
|
|
747
|
+
|
|
731
748
|
// src/spaces/SpaceService.ts
|
|
732
749
|
var SERVICE_NAME = "space";
|
|
733
750
|
var SpaceErrorCodes = {
|
|
@@ -804,7 +821,7 @@ function transformServerDelegations(validatedData, defaultSpaceId) {
|
|
|
804
821
|
spaceId,
|
|
805
822
|
path,
|
|
806
823
|
actions,
|
|
807
|
-
expiry: info.expiry ? new Date(info.expiry) : new Date(Date.now() +
|
|
824
|
+
expiry: info.expiry ? new Date(info.expiry) : new Date(Date.now() + EXPIRY.SHARE_MS),
|
|
808
825
|
isRevoked: false,
|
|
809
826
|
createdAt: info.issued_at ? new Date(info.issued_at) : void 0,
|
|
810
827
|
parentCid: firstStringParent
|
|
@@ -1664,6 +1681,22 @@ var TinyCloud = class _TinyCloud {
|
|
|
1664
1681
|
}
|
|
1665
1682
|
return service;
|
|
1666
1683
|
}
|
|
1684
|
+
/**
|
|
1685
|
+
* Get the Encryption service.
|
|
1686
|
+
* @throws Error if services are not initialized or encryption service is not registered
|
|
1687
|
+
*/
|
|
1688
|
+
get encryption() {
|
|
1689
|
+
if (!this._servicesInitialized) {
|
|
1690
|
+
throw new Error(
|
|
1691
|
+
"Services not initialized. Call initializeServices() first, or use TinyCloudWeb/TinyCloudNode which handles this automatically."
|
|
1692
|
+
);
|
|
1693
|
+
}
|
|
1694
|
+
const service = this._services.get("encryption");
|
|
1695
|
+
if (!service) {
|
|
1696
|
+
throw new Error("Encryption service is not registered.");
|
|
1697
|
+
}
|
|
1698
|
+
return service;
|
|
1699
|
+
}
|
|
1667
1700
|
/**
|
|
1668
1701
|
* Notify services of session change.
|
|
1669
1702
|
* Called internally after sign-in and sign-out.
|
|
@@ -2019,7 +2052,51 @@ import {
|
|
|
2019
2052
|
VaultHeaders,
|
|
2020
2053
|
VaultPublicSpaceKVActions,
|
|
2021
2054
|
createVaultCrypto,
|
|
2022
|
-
SecretsService
|
|
2055
|
+
SecretsService,
|
|
2056
|
+
SECRET_NAME_RE as SECRET_NAME_RE2,
|
|
2057
|
+
canonicalizeSecretScope,
|
|
2058
|
+
resolveSecretListPrefix,
|
|
2059
|
+
resolveSecretPath as resolveSecretPath2,
|
|
2060
|
+
EncryptionService,
|
|
2061
|
+
parseNetworkId,
|
|
2062
|
+
buildNetworkId,
|
|
2063
|
+
isNetworkId,
|
|
2064
|
+
networkDiscoveryKey,
|
|
2065
|
+
NetworkIdError,
|
|
2066
|
+
ENCRYPTION_NETWORK_URN_PREFIX,
|
|
2067
|
+
NETWORK_NAME_PATTERN,
|
|
2068
|
+
canonicalizeEncryptionJson,
|
|
2069
|
+
canonicalHashHex,
|
|
2070
|
+
hexEncode,
|
|
2071
|
+
hexDecode,
|
|
2072
|
+
base64Encode,
|
|
2073
|
+
base64Decode,
|
|
2074
|
+
utf8Encode,
|
|
2075
|
+
utf8Decode,
|
|
2076
|
+
encryptToNetwork,
|
|
2077
|
+
decryptEnvelopeWithKey,
|
|
2078
|
+
validateEnvelope,
|
|
2079
|
+
generateRandomReceiverKey,
|
|
2080
|
+
deriveSignedReceiverKey,
|
|
2081
|
+
buildCanonicalDecryptRequest,
|
|
2082
|
+
buildDecryptFacts,
|
|
2083
|
+
buildDecryptAttenuation,
|
|
2084
|
+
buildDecryptInvocation,
|
|
2085
|
+
checkDecryptInvocationInput,
|
|
2086
|
+
verifyDecryptResponse,
|
|
2087
|
+
canonicalSignedResponse,
|
|
2088
|
+
openWrappedKey,
|
|
2089
|
+
discoverNetwork,
|
|
2090
|
+
ensureNetworkUsableForDecrypt,
|
|
2091
|
+
DEFAULT_ENCRYPTION_ALG,
|
|
2092
|
+
ENVELOPE_VERSION,
|
|
2093
|
+
DEFAULT_KEY_VERSION,
|
|
2094
|
+
DECRYPT_FACT_TYPE,
|
|
2095
|
+
DECRYPT_RESULT_TYPE,
|
|
2096
|
+
DECRYPT_ACTION,
|
|
2097
|
+
ENCRYPTION_SERVICE,
|
|
2098
|
+
ENCRYPTION_SERVICE_SHORT,
|
|
2099
|
+
encryptionError
|
|
2023
2100
|
} from "@tinycloud/sdk-services";
|
|
2024
2101
|
|
|
2025
2102
|
// src/space.ts
|
|
@@ -2209,7 +2286,7 @@ var DelegationManager = class {
|
|
|
2209
2286
|
spaceId: this.session.spaceId,
|
|
2210
2287
|
path: params.path,
|
|
2211
2288
|
actions: params.actions,
|
|
2212
|
-
expiry: params.expiry ?? new Date(Date.now() +
|
|
2289
|
+
expiry: params.expiry ?? new Date(Date.now() + EXPIRY.SHARE_MS),
|
|
2213
2290
|
isRevoked: false,
|
|
2214
2291
|
allowSubDelegation: !(params.disableSubDelegation ?? false),
|
|
2215
2292
|
createdAt: /* @__PURE__ */ new Date()
|
|
@@ -2688,6 +2765,7 @@ function validateEncodedShareData(data) {
|
|
|
2688
2765
|
|
|
2689
2766
|
// src/manifest.ts
|
|
2690
2767
|
import ms from "ms";
|
|
2768
|
+
import { resolveSecretPath, SECRET_NAME_RE } from "@tinycloud/sdk-services";
|
|
2691
2769
|
var ManifestValidationError = class extends Error {
|
|
2692
2770
|
constructor(message) {
|
|
2693
2771
|
super(`Manifest validation failed: ${message}`);
|
|
@@ -2701,15 +2779,17 @@ var DEFAULT_MANIFEST_SPACE = "applications";
|
|
|
2701
2779
|
var ACCOUNT_REGISTRY_SPACE = "account";
|
|
2702
2780
|
var ACCOUNT_REGISTRY_PATH = "applications/";
|
|
2703
2781
|
var SECRETS_SPACE = "secrets";
|
|
2704
|
-
var SECRET_NAME_RE = /^[A-Z][A-Z0-9_]*$/;
|
|
2705
2782
|
var VAULT_PERMISSION_SERVICE = "tinycloud.vault";
|
|
2706
2783
|
var SERVICE_SHORT_TO_LONG = Object.freeze({
|
|
2707
2784
|
kv: "tinycloud.kv",
|
|
2708
2785
|
sql: "tinycloud.sql",
|
|
2709
2786
|
duckdb: "tinycloud.duckdb",
|
|
2710
2787
|
capabilities: "tinycloud.capabilities",
|
|
2711
|
-
hooks: "tinycloud.hooks"
|
|
2788
|
+
hooks: "tinycloud.hooks",
|
|
2789
|
+
encryption: "tinycloud.encryption"
|
|
2712
2790
|
});
|
|
2791
|
+
var ENCRYPTION_PERMISSION_SERVICE = "tinycloud.encryption";
|
|
2792
|
+
var ENCRYPTION_MANIFEST_SPACE = "encryption";
|
|
2713
2793
|
var SERVICE_LONG_TO_SHORT = Object.freeze(
|
|
2714
2794
|
Object.fromEntries(
|
|
2715
2795
|
Object.entries(SERVICE_SHORT_TO_LONG).map(([s, l]) => [l, s])
|
|
@@ -2786,6 +2866,9 @@ function expandActionShortNames(service, actions) {
|
|
|
2786
2866
|
});
|
|
2787
2867
|
}
|
|
2788
2868
|
function expandPermissionEntry(entry) {
|
|
2869
|
+
if (entry.service === ENCRYPTION_PERMISSION_SERVICE) {
|
|
2870
|
+
return expandEncryptionPermissionEntry(entry);
|
|
2871
|
+
}
|
|
2789
2872
|
if (entry.service !== VAULT_PERMISSION_SERVICE) {
|
|
2790
2873
|
return [
|
|
2791
2874
|
{
|
|
@@ -2796,6 +2879,55 @@ function expandPermissionEntry(entry) {
|
|
|
2796
2879
|
}
|
|
2797
2880
|
return expandVaultPermissionEntry(entry);
|
|
2798
2881
|
}
|
|
2882
|
+
function expandEncryptionPermissionEntry(entry) {
|
|
2883
|
+
if (typeof entry.path !== "string" || !entry.path.startsWith("urn:tinycloud:encryption:")) {
|
|
2884
|
+
throw new ManifestValidationError(
|
|
2885
|
+
`tinycloud.encryption entries require path to be a networkId URN (got ${JSON.stringify(entry.path)})`
|
|
2886
|
+
);
|
|
2887
|
+
}
|
|
2888
|
+
const normalizedActions = [];
|
|
2889
|
+
for (const action of entry.actions) {
|
|
2890
|
+
if (action === "decrypt" || action === "tinycloud.encryption/decrypt") {
|
|
2891
|
+
normalizedActions.push("tinycloud.encryption/decrypt");
|
|
2892
|
+
continue;
|
|
2893
|
+
}
|
|
2894
|
+
if (action === "network.create" || action === "tinycloud.encryption/network.create") {
|
|
2895
|
+
normalizedActions.push("tinycloud.encryption/network.create");
|
|
2896
|
+
continue;
|
|
2897
|
+
}
|
|
2898
|
+
if (action === "network.revoke" || action === "tinycloud.encryption/network.revoke") {
|
|
2899
|
+
normalizedActions.push("tinycloud.encryption/network.revoke");
|
|
2900
|
+
continue;
|
|
2901
|
+
}
|
|
2902
|
+
if (action.includes("/")) {
|
|
2903
|
+
throw new ManifestValidationError(
|
|
2904
|
+
`unknown encryption action ${JSON.stringify(action)}; expected decrypt, network.create, or network.revoke`
|
|
2905
|
+
);
|
|
2906
|
+
}
|
|
2907
|
+
throw new ManifestValidationError(
|
|
2908
|
+
`unknown encryption action ${JSON.stringify(action)}; expected decrypt, network.create, or network.revoke`
|
|
2909
|
+
);
|
|
2910
|
+
}
|
|
2911
|
+
const dedupedActions = [];
|
|
2912
|
+
const seen = /* @__PURE__ */ new Set();
|
|
2913
|
+
for (const a of normalizedActions) {
|
|
2914
|
+
if (!seen.has(a)) {
|
|
2915
|
+
dedupedActions.push(a);
|
|
2916
|
+
seen.add(a);
|
|
2917
|
+
}
|
|
2918
|
+
}
|
|
2919
|
+
return [
|
|
2920
|
+
{
|
|
2921
|
+
service: ENCRYPTION_PERMISSION_SERVICE,
|
|
2922
|
+
space: ENCRYPTION_MANIFEST_SPACE,
|
|
2923
|
+
path: entry.path,
|
|
2924
|
+
actions: dedupedActions,
|
|
2925
|
+
skipPrefix: true,
|
|
2926
|
+
...entry.expiry !== void 0 ? { expiry: entry.expiry } : {},
|
|
2927
|
+
...entry.description !== void 0 ? { description: entry.description } : {}
|
|
2928
|
+
}
|
|
2929
|
+
];
|
|
2930
|
+
}
|
|
2799
2931
|
function expandPermissionEntries(entries) {
|
|
2800
2932
|
return entries.flatMap(expandPermissionEntry);
|
|
2801
2933
|
}
|
|
@@ -2885,6 +3017,16 @@ function validateManifestSecrets(secrets) {
|
|
|
2885
3017
|
`manifest.secrets.${name} must match ${SECRET_NAME_RE.source}`
|
|
2886
3018
|
);
|
|
2887
3019
|
}
|
|
3020
|
+
try {
|
|
3021
|
+
resolveSecretPath(
|
|
3022
|
+
secretNameFromSpec(name, spec),
|
|
3023
|
+
{ scope: secretScopeFromSpec(spec) }
|
|
3024
|
+
);
|
|
3025
|
+
} catch (error) {
|
|
3026
|
+
throw new ManifestValidationError(
|
|
3027
|
+
`manifest.secrets.${name}: ${error instanceof Error ? error.message : String(error)}`
|
|
3028
|
+
);
|
|
3029
|
+
}
|
|
2888
3030
|
const actions = secretActionsFromSpec(name, spec);
|
|
2889
3031
|
if (actions.length === 0) {
|
|
2890
3032
|
throw new ManifestValidationError(
|
|
@@ -3041,6 +3183,18 @@ function normalizeSecretActions(actions) {
|
|
|
3041
3183
|
}
|
|
3042
3184
|
return out;
|
|
3043
3185
|
}
|
|
3186
|
+
function secretNameFromSpec(fallbackName, spec) {
|
|
3187
|
+
if (spec !== null && typeof spec === "object" && !Array.isArray(spec)) {
|
|
3188
|
+
return spec.name ?? fallbackName;
|
|
3189
|
+
}
|
|
3190
|
+
return fallbackName;
|
|
3191
|
+
}
|
|
3192
|
+
function secretScopeFromSpec(spec) {
|
|
3193
|
+
if (spec !== null && typeof spec === "object" && !Array.isArray(spec)) {
|
|
3194
|
+
return spec.scope;
|
|
3195
|
+
}
|
|
3196
|
+
return void 0;
|
|
3197
|
+
}
|
|
3044
3198
|
function secretActionsFromSpec(name, spec) {
|
|
3045
3199
|
if (spec === true) {
|
|
3046
3200
|
return ["read"];
|
|
@@ -3076,27 +3230,26 @@ function secretEntriesForManifest(secrets) {
|
|
|
3076
3230
|
const entries = [];
|
|
3077
3231
|
for (const [name, spec] of Object.entries(secrets)) {
|
|
3078
3232
|
const actions = secretActionsFromSpec(name, spec);
|
|
3233
|
+
const secretPath = resolveSecretPath(
|
|
3234
|
+
secretNameFromSpec(name, spec),
|
|
3235
|
+
{ scope: secretScopeFromSpec(spec) }
|
|
3236
|
+
);
|
|
3079
3237
|
const extra = spec !== true && typeof spec === "object" && !Array.isArray(spec) ? spec : {};
|
|
3080
|
-
|
|
3081
|
-
|
|
3082
|
-
|
|
3083
|
-
|
|
3084
|
-
|
|
3085
|
-
|
|
3086
|
-
|
|
3087
|
-
|
|
3088
|
-
|
|
3089
|
-
});
|
|
3090
|
-
}
|
|
3238
|
+
entries.push({
|
|
3239
|
+
service: VAULT_PERMISSION_SERVICE,
|
|
3240
|
+
space: SECRETS_SPACE,
|
|
3241
|
+
path: secretPath.vaultKey,
|
|
3242
|
+
actions: normalizeSecretActions(actions),
|
|
3243
|
+
skipPrefix: true,
|
|
3244
|
+
...extra.expiry !== void 0 ? { expiry: extra.expiry } : {},
|
|
3245
|
+
...extra.description !== void 0 ? { description: extra.description } : {}
|
|
3246
|
+
});
|
|
3091
3247
|
}
|
|
3092
3248
|
return entries;
|
|
3093
3249
|
}
|
|
3094
3250
|
function resolveEntry(entry, prefix, _inheritedExpiryMs, inheritedSpace) {
|
|
3095
|
-
const
|
|
3096
|
-
|
|
3097
|
-
entry.path,
|
|
3098
|
-
entry.skipPrefix === true
|
|
3099
|
-
);
|
|
3251
|
+
const skipPrefixForEntry = entry.skipPrefix === true || entry.service === ENCRYPTION_PERMISSION_SERVICE;
|
|
3252
|
+
const resolvedPath = applyPrefix(prefix, entry.path, skipPrefixForEntry);
|
|
3100
3253
|
const entryExpiryMs = entry.expiry !== void 0 ? parseExpiry(entry.expiry) : void 0;
|
|
3101
3254
|
return expandPermissionEntry({
|
|
3102
3255
|
...entry,
|
|
@@ -3138,13 +3291,13 @@ function expandVaultPermissionEntry(entry) {
|
|
|
3138
3291
|
function vaultActionExpansion(action) {
|
|
3139
3292
|
const normalized = normalizeVaultAction(action);
|
|
3140
3293
|
if (normalized === "read" || normalized === "get") {
|
|
3141
|
-
return { bases: ["
|
|
3294
|
+
return { bases: ["vault"], action: "tinycloud.kv/get" };
|
|
3142
3295
|
}
|
|
3143
3296
|
if (normalized === "write" || normalized === "put") {
|
|
3144
|
-
return { bases: ["
|
|
3297
|
+
return { bases: ["vault"], action: "tinycloud.kv/put" };
|
|
3145
3298
|
}
|
|
3146
3299
|
if (normalized === "delete" || normalized === "del") {
|
|
3147
|
-
return { bases: ["
|
|
3300
|
+
return { bases: ["vault"], action: "tinycloud.kv/del" };
|
|
3148
3301
|
}
|
|
3149
3302
|
if (normalized === "list") {
|
|
3150
3303
|
return { bases: ["vault"], action: "tinycloud.kv/list" };
|
|
@@ -3232,7 +3385,9 @@ function withCapabilitiesReadForSpaces(resources) {
|
|
|
3232
3385
|
if (resources.length === 0) {
|
|
3233
3386
|
return [];
|
|
3234
3387
|
}
|
|
3235
|
-
const spaces = new Set(
|
|
3388
|
+
const spaces = new Set(
|
|
3389
|
+
resources.filter((resource) => resource.service !== ENCRYPTION_PERMISSION_SERVICE).map((resource) => resource.space)
|
|
3390
|
+
);
|
|
3236
3391
|
return dedupeResources([
|
|
3237
3392
|
...resources,
|
|
3238
3393
|
...[...spaces].map(capabilitiesReadPermission)
|
|
@@ -3364,7 +3519,7 @@ function inferShortServiceFromActionUrns(actions) {
|
|
|
3364
3519
|
return short;
|
|
3365
3520
|
}
|
|
3366
3521
|
var DEFAULT_READ_ACTIONS = ["tinycloud.kv/get", "tinycloud.kv/metadata"];
|
|
3367
|
-
var DEFAULT_EXPIRY_MS =
|
|
3522
|
+
var DEFAULT_EXPIRY_MS = EXPIRY.SHARE_MS;
|
|
3368
3523
|
var BASE64_PREFIX = "tc1:";
|
|
3369
3524
|
function createError2(code, message, cause, meta) {
|
|
3370
3525
|
return {
|
|
@@ -4493,6 +4648,7 @@ async function checkNodeInfo(host, sdkProtocol, fetchFn = globalThis.fetch.bind(
|
|
|
4493
4648
|
}
|
|
4494
4649
|
return {
|
|
4495
4650
|
features: data.features ?? [],
|
|
4651
|
+
nodeId: data.nodeId,
|
|
4496
4652
|
quotaUrl: data.quota_url
|
|
4497
4653
|
};
|
|
4498
4654
|
}
|
|
@@ -4829,6 +4985,10 @@ function verifyDidKeySignature(did, payload, signature) {
|
|
|
4829
4985
|
publicKey
|
|
4830
4986
|
);
|
|
4831
4987
|
}
|
|
4988
|
+
function verifyDidKeyEd25519Signature(did, payload, signature) {
|
|
4989
|
+
const publicKey = ed25519PublicKeyFromDidKey(did);
|
|
4990
|
+
return ed25519.verify(signature, payload, publicKey);
|
|
4991
|
+
}
|
|
4832
4992
|
function ed25519PublicKeyFromDidKey(did) {
|
|
4833
4993
|
const identifier = did.slice("did:key:".length);
|
|
4834
4994
|
if (!identifier.startsWith("z")) {
|
|
@@ -4837,12 +4997,15 @@ function ed25519PublicKeyFromDidKey(did) {
|
|
|
4837
4997
|
);
|
|
4838
4998
|
}
|
|
4839
4999
|
const bytes = bases.base58btc.decode(identifier);
|
|
4840
|
-
if (bytes.length
|
|
4841
|
-
|
|
4842
|
-
|
|
4843
|
-
|
|
5000
|
+
if (bytes.length === 34 && bytes[0] === 237 && bytes[1] === 1) {
|
|
5001
|
+
return bytes.slice(2);
|
|
5002
|
+
}
|
|
5003
|
+
if (bytes.length === 33 && bytes[0] === 237) {
|
|
5004
|
+
return bytes.slice(1);
|
|
4844
5005
|
}
|
|
4845
|
-
|
|
5006
|
+
throw new LocationRecordValidationError(
|
|
5007
|
+
"did:key must be an Ed25519 public key"
|
|
5008
|
+
);
|
|
4846
5009
|
}
|
|
4847
5010
|
function base64UrlEncode2(bytes) {
|
|
4848
5011
|
const alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";
|
|
@@ -5006,10 +5169,16 @@ export {
|
|
|
5006
5169
|
CapabilityKeyRegistryErrorCodes,
|
|
5007
5170
|
ClientSessionSchema,
|
|
5008
5171
|
CloudLocationResolutionError,
|
|
5172
|
+
DECRYPT_ACTION,
|
|
5173
|
+
DECRYPT_FACT_TYPE,
|
|
5174
|
+
DECRYPT_RESULT_TYPE,
|
|
5009
5175
|
DEFAULT_DEFAULTS,
|
|
5176
|
+
DEFAULT_ENCRYPTION_ALG,
|
|
5010
5177
|
DEFAULT_EXPIRY,
|
|
5178
|
+
DEFAULT_KEY_VERSION,
|
|
5011
5179
|
DEFAULT_MANIFEST_SPACE,
|
|
5012
5180
|
DEFAULT_MANIFEST_VERSION,
|
|
5181
|
+
DEFAULT_SIGNED_READ_URL_EXPIRY_MS,
|
|
5013
5182
|
DEFAULT_TINYCLOUD_FALLBACK_HOST,
|
|
5014
5183
|
DEFAULT_TINYCLOUD_LOCATION_REGISTRY_URL,
|
|
5015
5184
|
DataVaultService,
|
|
@@ -5019,15 +5188,26 @@ export {
|
|
|
5019
5188
|
DuckDbAction,
|
|
5020
5189
|
DuckDbDatabaseHandle,
|
|
5021
5190
|
DuckDbService2 as DuckDbService,
|
|
5191
|
+
ENCRYPTION_MANIFEST_SPACE,
|
|
5192
|
+
ENCRYPTION_NETWORK_URN_PREFIX,
|
|
5193
|
+
ENCRYPTION_PERMISSION_SERVICE,
|
|
5194
|
+
ENCRYPTION_SERVICE,
|
|
5195
|
+
ENCRYPTION_SERVICE_SHORT,
|
|
5196
|
+
ENVELOPE_VERSION,
|
|
5197
|
+
EXPIRY,
|
|
5198
|
+
EncryptionService,
|
|
5022
5199
|
EnsDataSchema,
|
|
5023
5200
|
ErrorCodes2 as ErrorCodes,
|
|
5024
5201
|
HooksService2 as HooksService,
|
|
5025
5202
|
KVService2 as KVService,
|
|
5026
5203
|
LocationRecordValidationError,
|
|
5027
5204
|
ManifestValidationError,
|
|
5205
|
+
NETWORK_NAME_PATTERN,
|
|
5206
|
+
NetworkIdError,
|
|
5028
5207
|
PermissionNotInManifestError,
|
|
5029
5208
|
PrefixedKVService,
|
|
5030
5209
|
ProtocolMismatchError,
|
|
5210
|
+
SECRET_NAME_RE2 as SECRET_NAME_RE,
|
|
5031
5211
|
SERVICE_LONG_TO_SHORT,
|
|
5032
5212
|
SERVICE_SHORT_TO_LONG,
|
|
5033
5213
|
SQLAction,
|
|
@@ -5050,37 +5230,66 @@ export {
|
|
|
5050
5230
|
VersionCheckError,
|
|
5051
5231
|
activateSessionWithHost,
|
|
5052
5232
|
applyPrefix,
|
|
5233
|
+
buildCanonicalDecryptRequest,
|
|
5234
|
+
buildDecryptAttenuation,
|
|
5235
|
+
buildDecryptFacts,
|
|
5236
|
+
buildDecryptInvocation,
|
|
5237
|
+
buildNetworkId,
|
|
5053
5238
|
buildSpaceUri,
|
|
5239
|
+
canonicalHashHex,
|
|
5054
5240
|
canonicalLocationPayload,
|
|
5241
|
+
canonicalSignedResponse,
|
|
5242
|
+
canonicalizeEncryptionJson,
|
|
5243
|
+
canonicalizeSecretScope,
|
|
5244
|
+
checkDecryptInvocationInput,
|
|
5055
5245
|
checkNodeInfo,
|
|
5056
5246
|
composeManifestRequest,
|
|
5057
5247
|
createCapabilityKeyRegistry,
|
|
5058
5248
|
createSharingService,
|
|
5059
5249
|
createSpaceService,
|
|
5060
5250
|
createVaultCrypto,
|
|
5251
|
+
decryptEnvelopeWithKey,
|
|
5061
5252
|
defaultRetryPolicy2 as defaultRetryPolicy,
|
|
5062
5253
|
defaultSignStrategy,
|
|
5063
5254
|
defaultSpaceCreationHandler,
|
|
5255
|
+
deriveSignedReceiverKey,
|
|
5256
|
+
discoverNetwork,
|
|
5257
|
+
encryptToNetwork,
|
|
5258
|
+
base64Decode as encryptionBase64Decode,
|
|
5259
|
+
base64Encode as encryptionBase64Encode,
|
|
5260
|
+
encryptionError,
|
|
5261
|
+
utf8Decode as encryptionUtf8Decode,
|
|
5262
|
+
utf8Encode as encryptionUtf8Encode,
|
|
5263
|
+
ensureNetworkUsableForDecrypt,
|
|
5064
5264
|
err4 as err,
|
|
5065
5265
|
expandActionShortNames,
|
|
5066
5266
|
expandPermissionEntries,
|
|
5067
5267
|
expandPermissionEntry,
|
|
5068
5268
|
fetchLocationRecord,
|
|
5069
5269
|
fetchPeerId,
|
|
5270
|
+
generateRandomReceiverKey,
|
|
5271
|
+
hexDecode,
|
|
5272
|
+
hexEncode,
|
|
5070
5273
|
httpUrlToMultiaddr,
|
|
5071
5274
|
isCapabilitySubset,
|
|
5275
|
+
isNetworkId,
|
|
5072
5276
|
loadManifest,
|
|
5073
5277
|
locationPayloadForRecord,
|
|
5074
5278
|
makePublicSpaceId,
|
|
5075
5279
|
manifestAbilitiesUnion,
|
|
5076
5280
|
multiaddrToHttpUrl,
|
|
5281
|
+
networkDiscoveryKey,
|
|
5077
5282
|
normalizeDefaults,
|
|
5078
5283
|
ok4 as ok,
|
|
5284
|
+
openWrappedKey,
|
|
5079
5285
|
parseExpiry,
|
|
5286
|
+
parseNetworkId,
|
|
5080
5287
|
parseRecapCapabilities,
|
|
5081
5288
|
parseSpaceUri,
|
|
5082
5289
|
resolveCloudLocation,
|
|
5083
5290
|
resolveManifest,
|
|
5291
|
+
resolveSecretListPrefix,
|
|
5292
|
+
resolveSecretPath2 as resolveSecretPath,
|
|
5084
5293
|
resolveTinyCloudHosts,
|
|
5085
5294
|
resourceCapabilitiesToAbilitiesMap,
|
|
5086
5295
|
resourceCapabilitiesToSpaceAbilitiesMap,
|
|
@@ -5088,10 +5297,13 @@ export {
|
|
|
5088
5297
|
signLocationRecord,
|
|
5089
5298
|
submitHostDelegation,
|
|
5090
5299
|
validateClientSession,
|
|
5300
|
+
validateEnvelope,
|
|
5091
5301
|
validateLocationRecord,
|
|
5092
5302
|
validateLocationRecordPayload,
|
|
5093
5303
|
validateManifest,
|
|
5094
5304
|
validatePersistedSessionData,
|
|
5305
|
+
verifyDecryptResponse,
|
|
5306
|
+
verifyDidKeyEd25519Signature,
|
|
5095
5307
|
verifyLocationRecord
|
|
5096
5308
|
};
|
|
5097
5309
|
//# sourceMappingURL=index.js.map
|