@id-wispera/core 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +268 -0
- package/dist/audit.d.ts +68 -0
- package/dist/audit.d.ts.map +1 -0
- package/dist/audit.js +252 -0
- package/dist/audit.js.map +1 -0
- package/dist/auth/index.d.ts +8 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +8 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/keychainProvider.d.ts +40 -0
- package/dist/auth/keychainProvider.d.ts.map +1 -0
- package/dist/auth/keychainProvider.js +98 -0
- package/dist/auth/keychainProvider.js.map +1 -0
- package/dist/auth/passphraseProvider.d.ts +80 -0
- package/dist/auth/passphraseProvider.d.ts.map +1 -0
- package/dist/auth/passphraseProvider.js +188 -0
- package/dist/auth/passphraseProvider.js.map +1 -0
- package/dist/auth/sessionTokenManager.d.ts +106 -0
- package/dist/auth/sessionTokenManager.d.ts.map +1 -0
- package/dist/auth/sessionTokenManager.js +263 -0
- package/dist/auth/sessionTokenManager.js.map +1 -0
- package/dist/delegation.d.ts +81 -0
- package/dist/delegation.d.ts.map +1 -0
- package/dist/delegation.js +299 -0
- package/dist/delegation.js.map +1 -0
- package/dist/detection.d.ts +35 -0
- package/dist/detection.d.ts.map +1 -0
- package/dist/detection.js +474 -0
- package/dist/detection.js.map +1 -0
- package/dist/exec/execManager.d.ts +60 -0
- package/dist/exec/execManager.d.ts.map +1 -0
- package/dist/exec/execManager.js +226 -0
- package/dist/exec/execManager.js.map +1 -0
- package/dist/exec/index.d.ts +6 -0
- package/dist/exec/index.d.ts.map +1 -0
- package/dist/exec/index.js +5 -0
- package/dist/exec/index.js.map +1 -0
- package/dist/index.d.ts +35 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +98 -0
- package/dist/index.js.map +1 -0
- package/dist/integrations/base.d.ts +64 -0
- package/dist/integrations/base.d.ts.map +1 -0
- package/dist/integrations/base.js +173 -0
- package/dist/integrations/base.js.map +1 -0
- package/dist/integrations/envMapping.d.ts +47 -0
- package/dist/integrations/envMapping.d.ts.map +1 -0
- package/dist/integrations/envMapping.js +174 -0
- package/dist/integrations/envMapping.js.map +1 -0
- package/dist/integrations/google-a2a.d.ts +48 -0
- package/dist/integrations/google-a2a.d.ts.map +1 -0
- package/dist/integrations/google-a2a.js +108 -0
- package/dist/integrations/google-a2a.js.map +1 -0
- package/dist/integrations/index.d.ts +14 -0
- package/dist/integrations/index.d.ts.map +1 -0
- package/dist/integrations/index.js +14 -0
- package/dist/integrations/index.js.map +1 -0
- package/dist/integrations/langchain.d.ts +38 -0
- package/dist/integrations/langchain.d.ts.map +1 -0
- package/dist/integrations/langchain.js +45 -0
- package/dist/integrations/langchain.js.map +1 -0
- package/dist/integrations/openai-agents.d.ts +76 -0
- package/dist/integrations/openai-agents.d.ts.map +1 -0
- package/dist/integrations/openai-agents.js +95 -0
- package/dist/integrations/openai-agents.js.map +1 -0
- package/dist/integrations/slack.d.ts +59 -0
- package/dist/integrations/slack.d.ts.map +1 -0
- package/dist/integrations/slack.js +113 -0
- package/dist/integrations/slack.js.map +1 -0
- package/dist/integrations/types.d.ts +107 -0
- package/dist/integrations/types.d.ts.map +1 -0
- package/dist/integrations/types.js +6 -0
- package/dist/integrations/types.js.map +1 -0
- package/dist/locations.d.ts +157 -0
- package/dist/locations.d.ts.map +1 -0
- package/dist/locations.js +733 -0
- package/dist/locations.js.map +1 -0
- package/dist/passport.d.ts +70 -0
- package/dist/passport.d.ts.map +1 -0
- package/dist/passport.js +429 -0
- package/dist/passport.js.map +1 -0
- package/dist/policy.d.ts +80 -0
- package/dist/policy.d.ts.map +1 -0
- package/dist/policy.js +392 -0
- package/dist/policy.js.map +1 -0
- package/dist/providers/openclaw.d.ts +80 -0
- package/dist/providers/openclaw.d.ts.map +1 -0
- package/dist/providers/openclaw.js +712 -0
- package/dist/providers/openclaw.js.map +1 -0
- package/dist/provisioning/adminPassport.d.ts +51 -0
- package/dist/provisioning/adminPassport.d.ts.map +1 -0
- package/dist/provisioning/adminPassport.js +101 -0
- package/dist/provisioning/adminPassport.js.map +1 -0
- package/dist/provisioning/index.d.ts +81 -0
- package/dist/provisioning/index.d.ts.map +1 -0
- package/dist/provisioning/index.js +141 -0
- package/dist/provisioning/index.js.map +1 -0
- package/dist/provisioning/provider.d.ts +59 -0
- package/dist/provisioning/provider.d.ts.map +1 -0
- package/dist/provisioning/provider.js +52 -0
- package/dist/provisioning/provider.js.map +1 -0
- package/dist/provisioning/providers/anthropic.d.ts +32 -0
- package/dist/provisioning/providers/anthropic.d.ts.map +1 -0
- package/dist/provisioning/providers/anthropic.js +116 -0
- package/dist/provisioning/providers/anthropic.js.map +1 -0
- package/dist/provisioning/providers/aws.d.ts +29 -0
- package/dist/provisioning/providers/aws.d.ts.map +1 -0
- package/dist/provisioning/providers/aws.js +455 -0
- package/dist/provisioning/providers/aws.js.map +1 -0
- package/dist/provisioning/providers/azure-entra.d.ts +32 -0
- package/dist/provisioning/providers/azure-entra.d.ts.map +1 -0
- package/dist/provisioning/providers/azure-entra.js +312 -0
- package/dist/provisioning/providers/azure-entra.js.map +1 -0
- package/dist/provisioning/providers/github.d.ts +24 -0
- package/dist/provisioning/providers/github.d.ts.map +1 -0
- package/dist/provisioning/providers/github.js +219 -0
- package/dist/provisioning/providers/github.js.map +1 -0
- package/dist/provisioning/providers/google-cloud.d.ts +34 -0
- package/dist/provisioning/providers/google-cloud.d.ts.map +1 -0
- package/dist/provisioning/providers/google-cloud.js +366 -0
- package/dist/provisioning/providers/google-cloud.js.map +1 -0
- package/dist/provisioning/providers/openai.d.ts +29 -0
- package/dist/provisioning/providers/openai.d.ts.map +1 -0
- package/dist/provisioning/providers/openai.js +263 -0
- package/dist/provisioning/providers/openai.js.map +1 -0
- package/dist/provisioning/providers/sendgrid.d.ts +27 -0
- package/dist/provisioning/providers/sendgrid.d.ts.map +1 -0
- package/dist/provisioning/providers/sendgrid.js +186 -0
- package/dist/provisioning/providers/sendgrid.js.map +1 -0
- package/dist/provisioning/providers/twilio.d.ts +27 -0
- package/dist/provisioning/providers/twilio.d.ts.map +1 -0
- package/dist/provisioning/providers/twilio.js +194 -0
- package/dist/provisioning/providers/twilio.js.map +1 -0
- package/dist/provisioning/types.d.ts +274 -0
- package/dist/provisioning/types.d.ts.map +1 -0
- package/dist/provisioning/types.js +6 -0
- package/dist/provisioning/types.js.map +1 -0
- package/dist/sharing.d.ts +60 -0
- package/dist/sharing.d.ts.map +1 -0
- package/dist/sharing.js +305 -0
- package/dist/sharing.js.map +1 -0
- package/dist/types.d.ts +396 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +88 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +45 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +110 -0
- package/dist/utils.js.map +1 -0
- package/dist/vault.d.ts +151 -0
- package/dist/vault.d.ts.map +1 -0
- package/dist/vault.js +499 -0
- package/dist/vault.js.map +1 -0
- package/package.json +117 -0
package/dist/sharing.js
ADDED
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ID Wispera Secure Sharing
|
|
3
|
+
* Zero-knowledge credential sharing primitives
|
|
4
|
+
*/
|
|
5
|
+
/// <reference lib="dom" />
|
|
6
|
+
import { WisperaError, } from './types.js';
|
|
7
|
+
import { getRandomBytes, getCryptoSubtle, toBufferSource } from './utils.js';
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// Crypto Utilities for Sharing
|
|
10
|
+
// ============================================================================
|
|
11
|
+
/**
|
|
12
|
+
* Generate a random encryption key for sharing
|
|
13
|
+
*/
|
|
14
|
+
function generateShareKey() {
|
|
15
|
+
const bytes = getRandomBytes(32);
|
|
16
|
+
return bytesToBase64Url(bytes);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Convert bytes to base64url string
|
|
20
|
+
*/
|
|
21
|
+
function bytesToBase64Url(bytes) {
|
|
22
|
+
const base64 = Buffer.from(bytes).toString('base64');
|
|
23
|
+
return base64.replace(/\+/g, '-').replace(/\//g, '_').replace(/=/g, '');
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Convert base64url string to bytes
|
|
27
|
+
*/
|
|
28
|
+
function base64UrlToBytes(str) {
|
|
29
|
+
const base64 = str.replace(/-/g, '+').replace(/_/g, '/');
|
|
30
|
+
const padding = '='.repeat((4 - (base64.length % 4)) % 4);
|
|
31
|
+
return new Uint8Array(Buffer.from(base64 + padding, 'base64'));
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Derive encryption key from share key string
|
|
35
|
+
*/
|
|
36
|
+
async function deriveShareKey(shareKey) {
|
|
37
|
+
const crypto = await getCryptoSubtle();
|
|
38
|
+
const keyBytes = base64UrlToBytes(shareKey);
|
|
39
|
+
return crypto.importKey('raw', toBufferSource(keyBytes), { name: 'AES-GCM', length: 256 }, false, ['encrypt', 'decrypt']);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Encrypt data for sharing
|
|
43
|
+
*/
|
|
44
|
+
async function encryptForSharing(data, key) {
|
|
45
|
+
const crypto = await getCryptoSubtle();
|
|
46
|
+
const iv = getRandomBytes(12);
|
|
47
|
+
const encoded = new TextEncoder().encode(data);
|
|
48
|
+
const encrypted = await crypto.encrypt({ name: 'AES-GCM', iv: toBufferSource(iv) }, key, encoded);
|
|
49
|
+
return {
|
|
50
|
+
encrypted: bytesToBase64Url(new Uint8Array(encrypted)),
|
|
51
|
+
iv: bytesToBase64Url(iv),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Decrypt shared data
|
|
56
|
+
*/
|
|
57
|
+
async function decryptShared(encrypted, iv, key) {
|
|
58
|
+
const crypto = await getCryptoSubtle();
|
|
59
|
+
const decrypted = await crypto.decrypt({ name: 'AES-GCM', iv: toBufferSource(base64UrlToBytes(iv)) }, key, toBufferSource(base64UrlToBytes(encrypted)));
|
|
60
|
+
return new TextDecoder().decode(decrypted);
|
|
61
|
+
}
|
|
62
|
+
// ============================================================================
|
|
63
|
+
// Share Payload Encoding
|
|
64
|
+
// ============================================================================
|
|
65
|
+
const SHARE_FORMAT_VERSION = 1;
|
|
66
|
+
/**
|
|
67
|
+
* Encode share payload to a shareable string
|
|
68
|
+
*/
|
|
69
|
+
function encodePayload(payload) {
|
|
70
|
+
const json = JSON.stringify(payload);
|
|
71
|
+
return bytesToBase64Url(new TextEncoder().encode(json));
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Decode share payload from string
|
|
75
|
+
*/
|
|
76
|
+
function decodePayload(encoded) {
|
|
77
|
+
const json = new TextDecoder().decode(base64UrlToBytes(encoded));
|
|
78
|
+
return JSON.parse(json);
|
|
79
|
+
}
|
|
80
|
+
// ============================================================================
|
|
81
|
+
// Share Operations
|
|
82
|
+
// ============================================================================
|
|
83
|
+
/**
|
|
84
|
+
* Filter passport data based on share scope
|
|
85
|
+
*/
|
|
86
|
+
function filterPassportByScope(passport, scope) {
|
|
87
|
+
switch (scope) {
|
|
88
|
+
case 'metadata-only':
|
|
89
|
+
return {
|
|
90
|
+
id: passport.id,
|
|
91
|
+
version: passport.version,
|
|
92
|
+
name: passport.name,
|
|
93
|
+
agentId: passport.agentId,
|
|
94
|
+
credentialType: passport.credentialType,
|
|
95
|
+
// No credentialValue!
|
|
96
|
+
visaType: passport.visaType,
|
|
97
|
+
issuingAuthority: passport.issuingAuthority,
|
|
98
|
+
scope: passport.scope,
|
|
99
|
+
platforms: passport.platforms,
|
|
100
|
+
status: passport.status,
|
|
101
|
+
issuedAt: passport.issuedAt,
|
|
102
|
+
validFrom: passport.validFrom,
|
|
103
|
+
validUntil: passport.validUntil,
|
|
104
|
+
delegationChain: passport.delegationChain,
|
|
105
|
+
humanOwner: passport.humanOwner,
|
|
106
|
+
tags: passport.tags,
|
|
107
|
+
notes: passport.notes,
|
|
108
|
+
createdAt: passport.createdAt,
|
|
109
|
+
updatedAt: passport.updatedAt,
|
|
110
|
+
};
|
|
111
|
+
case 'read-only':
|
|
112
|
+
// Include everything but mark it as read-only via a flag
|
|
113
|
+
return {
|
|
114
|
+
...passport,
|
|
115
|
+
// The recipient should treat this as immutable
|
|
116
|
+
};
|
|
117
|
+
case 'full':
|
|
118
|
+
default:
|
|
119
|
+
return passport;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Create a share link for a passport
|
|
124
|
+
* Returns the encrypted payload and the decryption key separately
|
|
125
|
+
*/
|
|
126
|
+
export async function createShareLink(passport, options) {
|
|
127
|
+
// Validate options
|
|
128
|
+
if (options.expiresAt) {
|
|
129
|
+
const expiresAt = new Date(options.expiresAt);
|
|
130
|
+
if (expiresAt <= new Date()) {
|
|
131
|
+
throw new WisperaError('Share expiration must be in the future', 'INVALID_SHARE_OPTIONS');
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
// Filter passport data based on scope
|
|
135
|
+
const filteredPassport = filterPassportByScope(passport, options.scope);
|
|
136
|
+
// Generate encryption key
|
|
137
|
+
const shareKey = generateShareKey();
|
|
138
|
+
const cryptoKey = await deriveShareKey(shareKey);
|
|
139
|
+
// Encrypt the passport data
|
|
140
|
+
const dataToEncrypt = JSON.stringify(filteredPassport);
|
|
141
|
+
const { encrypted, iv } = await encryptForSharing(dataToEncrypt, cryptoKey);
|
|
142
|
+
// Create payload
|
|
143
|
+
const sharePayload = {
|
|
144
|
+
version: SHARE_FORMAT_VERSION,
|
|
145
|
+
encrypted: `${iv}.${encrypted}`, // Combine IV and ciphertext
|
|
146
|
+
options: {
|
|
147
|
+
scope: options.scope,
|
|
148
|
+
expiresAt: options.expiresAt,
|
|
149
|
+
maxViews: options.maxViews,
|
|
150
|
+
requireVerification: options.requireVerification,
|
|
151
|
+
},
|
|
152
|
+
createdAt: new Date().toISOString(),
|
|
153
|
+
passportId: passport.id,
|
|
154
|
+
viewCount: 0,
|
|
155
|
+
};
|
|
156
|
+
return {
|
|
157
|
+
payload: encodePayload(sharePayload),
|
|
158
|
+
key: shareKey,
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Resolve (decrypt) a shared passport
|
|
163
|
+
*/
|
|
164
|
+
export async function resolveShareLink(payload, key) {
|
|
165
|
+
// Decode payload
|
|
166
|
+
let sharePayload;
|
|
167
|
+
try {
|
|
168
|
+
sharePayload = decodePayload(payload);
|
|
169
|
+
}
|
|
170
|
+
catch {
|
|
171
|
+
throw new WisperaError('Invalid share payload format', 'INVALID_SHARE_PAYLOAD');
|
|
172
|
+
}
|
|
173
|
+
// Check version
|
|
174
|
+
if (sharePayload.version !== SHARE_FORMAT_VERSION) {
|
|
175
|
+
throw new WisperaError(`Unsupported share format version: ${sharePayload.version}`, 'UNSUPPORTED_SHARE_VERSION');
|
|
176
|
+
}
|
|
177
|
+
// Check expiration
|
|
178
|
+
if (sharePayload.options.expiresAt) {
|
|
179
|
+
const expiresAt = new Date(sharePayload.options.expiresAt);
|
|
180
|
+
if (new Date() > expiresAt) {
|
|
181
|
+
throw new WisperaError('Share link has expired', 'SHARE_EXPIRED');
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
// Check view count
|
|
185
|
+
if (sharePayload.options.maxViews !== undefined &&
|
|
186
|
+
sharePayload.viewCount !== undefined &&
|
|
187
|
+
sharePayload.viewCount >= sharePayload.options.maxViews) {
|
|
188
|
+
throw new WisperaError('Share link has reached maximum views', 'SHARE_MAX_VIEWS');
|
|
189
|
+
}
|
|
190
|
+
// Decrypt
|
|
191
|
+
try {
|
|
192
|
+
const cryptoKey = await deriveShareKey(key);
|
|
193
|
+
const [iv, encrypted] = sharePayload.encrypted.split('.');
|
|
194
|
+
if (!iv || !encrypted) {
|
|
195
|
+
throw new Error('Invalid encrypted data format');
|
|
196
|
+
}
|
|
197
|
+
const decrypted = await decryptShared(encrypted, iv, cryptoKey);
|
|
198
|
+
return JSON.parse(decrypted);
|
|
199
|
+
}
|
|
200
|
+
catch (err) {
|
|
201
|
+
if (err instanceof WisperaError)
|
|
202
|
+
throw err;
|
|
203
|
+
throw new WisperaError('Failed to decrypt share - invalid key or corrupted data', 'DECRYPT_FAILED');
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Get share payload info without decrypting
|
|
208
|
+
*/
|
|
209
|
+
export function getShareInfo(payload) {
|
|
210
|
+
try {
|
|
211
|
+
const sharePayload = decodePayload(payload);
|
|
212
|
+
return {
|
|
213
|
+
version: sharePayload.version,
|
|
214
|
+
options: sharePayload.options,
|
|
215
|
+
createdAt: sharePayload.createdAt,
|
|
216
|
+
passportId: sharePayload.passportId,
|
|
217
|
+
viewCount: sharePayload.viewCount,
|
|
218
|
+
hasCredential: sharePayload.options.scope !== 'metadata-only',
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
catch {
|
|
222
|
+
throw new WisperaError('Invalid share payload format', 'INVALID_SHARE_PAYLOAD');
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* Check if a share link is still valid (not expired, not maxed out)
|
|
227
|
+
*/
|
|
228
|
+
export function isShareValid(payload) {
|
|
229
|
+
try {
|
|
230
|
+
const sharePayload = decodePayload(payload);
|
|
231
|
+
// Check expiration
|
|
232
|
+
if (sharePayload.options.expiresAt) {
|
|
233
|
+
const expiresAt = new Date(sharePayload.options.expiresAt);
|
|
234
|
+
if (new Date() > expiresAt) {
|
|
235
|
+
return { valid: false, reason: 'Share link has expired' };
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
// Check view count
|
|
239
|
+
if (sharePayload.options.maxViews !== undefined &&
|
|
240
|
+
sharePayload.viewCount !== undefined &&
|
|
241
|
+
sharePayload.viewCount >= sharePayload.options.maxViews) {
|
|
242
|
+
return { valid: false, reason: 'Share link has reached maximum views' };
|
|
243
|
+
}
|
|
244
|
+
return { valid: true };
|
|
245
|
+
}
|
|
246
|
+
catch {
|
|
247
|
+
return { valid: false, reason: 'Invalid share payload format' };
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
// ============================================================================
|
|
251
|
+
// Share URL Helpers
|
|
252
|
+
// ============================================================================
|
|
253
|
+
/**
|
|
254
|
+
* Create a full share URL (for web-based sharing)
|
|
255
|
+
* The key is passed as a URL fragment (not sent to server)
|
|
256
|
+
*/
|
|
257
|
+
export function createShareUrl(baseUrl, payload, key) {
|
|
258
|
+
return `${baseUrl}/share/${payload}#${key}`;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Parse a share URL back into payload and key
|
|
262
|
+
*/
|
|
263
|
+
export function parseShareUrl(url) {
|
|
264
|
+
try {
|
|
265
|
+
const parsed = new URL(url);
|
|
266
|
+
const pathParts = parsed.pathname.split('/');
|
|
267
|
+
const shareIndex = pathParts.indexOf('share');
|
|
268
|
+
if (shareIndex === -1 || shareIndex === pathParts.length - 1) {
|
|
269
|
+
return null;
|
|
270
|
+
}
|
|
271
|
+
const payload = pathParts[shareIndex + 1];
|
|
272
|
+
const key = parsed.hash.slice(1); // Remove leading #
|
|
273
|
+
if (!payload || !key) {
|
|
274
|
+
return null;
|
|
275
|
+
}
|
|
276
|
+
return { payload, key };
|
|
277
|
+
}
|
|
278
|
+
catch {
|
|
279
|
+
return null;
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
// ============================================================================
|
|
283
|
+
// One-Time Sharing
|
|
284
|
+
// ============================================================================
|
|
285
|
+
/**
|
|
286
|
+
* Create a one-time share (single use, auto-expires)
|
|
287
|
+
*/
|
|
288
|
+
export async function createOneTimeShare(passport, expiresInMinutes = 60) {
|
|
289
|
+
const expiresAt = new Date(Date.now() + expiresInMinutes * 60 * 1000).toISOString();
|
|
290
|
+
return createShareLink(passport, {
|
|
291
|
+
scope: 'full',
|
|
292
|
+
expiresAt,
|
|
293
|
+
maxViews: 1,
|
|
294
|
+
});
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Create a metadata-only share (no credential exposed)
|
|
298
|
+
*/
|
|
299
|
+
export async function createMetadataShare(passport, options) {
|
|
300
|
+
return createShareLink(passport, {
|
|
301
|
+
scope: 'metadata-only',
|
|
302
|
+
...options,
|
|
303
|
+
});
|
|
304
|
+
}
|
|
305
|
+
//# sourceMappingURL=sharing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sharing.js","sourceRoot":"","sources":["../src/sharing.ts"],"names":[],"mappings":"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"}
|