@dynamic-labs-wallet/browser-wallet-client 0.0.323 → 0.0.325
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/index.cjs.js +50 -16
- package/index.esm.js +50 -16
- package/package.json +2 -2
- package/src/client/client.d.ts +88 -0
- package/src/client/client.d.ts.map +1 -0
- package/src/client/iframeManager/IframeManager.d.ts +137 -0
- package/src/client/iframeManager/IframeManager.d.ts.map +1 -0
- package/src/client/iframeManager/index.d.ts +2 -0
- package/src/client/iframeManager/index.d.ts.map +1 -0
- package/src/client/index.d.ts +3 -0
- package/src/client/index.d.ts.map +1 -0
- package/src/index.d.ts +4 -0
- package/src/index.d.ts.map +1 -0
- package/src/services/iframeMessageHandler.d.ts +39 -0
- package/src/services/iframeMessageHandler.d.ts.map +1 -0
- package/src/services/logger.d.ts +3 -0
- package/src/services/logger.d.ts.map +1 -0
- package/src/services/messageTransportBridge.d.ts +3 -0
- package/src/services/messageTransportBridge.d.ts.map +1 -0
package/index.cjs.js
CHANGED
|
@@ -218,6 +218,7 @@ const setupMessageTransportBridge = (messageTransport$1, iframe, iframeOrigin)=>
|
|
|
218
218
|
*/ window.addEventListener('message', handleIncomingMessage);
|
|
219
219
|
};
|
|
220
220
|
|
|
221
|
+
const FRAME_ANCESTORS_QUERY_PARAM = 'frameAncestors';
|
|
221
222
|
class IframeManager {
|
|
222
223
|
// Simply load the iframe from localhost
|
|
223
224
|
async initialize() {
|
|
@@ -492,7 +493,7 @@ class IframeManager {
|
|
|
492
493
|
iframe.style.border = 'none';
|
|
493
494
|
iframe.style.pointerEvents = 'none';
|
|
494
495
|
}
|
|
495
|
-
|
|
496
|
+
buildIframeUrlSearchParams() {
|
|
496
497
|
var _this_instanceId, _this_sdkVersion, _this_baseClientKeysharesRelayApiUrl;
|
|
497
498
|
const params = new URLSearchParams({
|
|
498
499
|
instanceId: (_this_instanceId = this.instanceId) != null ? _this_instanceId : '',
|
|
@@ -505,6 +506,44 @@ class IframeManager {
|
|
|
505
506
|
baseClientKeysharesRelayApiUrl: (_this_baseClientKeysharesRelayApiUrl = this.baseClientKeysharesRelayApiUrl) != null ? _this_baseClientKeysharesRelayApiUrl : '',
|
|
506
507
|
secureStorage: this.secureStorage ? 'true' : ''
|
|
507
508
|
});
|
|
509
|
+
const seenAdditional = new Set();
|
|
510
|
+
for (const raw of this.additionalTrustedOrigins){
|
|
511
|
+
const trimmed = raw.trim();
|
|
512
|
+
if (!trimmed) {
|
|
513
|
+
continue;
|
|
514
|
+
}
|
|
515
|
+
if (trimmed.length > IframeManager.maxTrustedOriginStringLength) {
|
|
516
|
+
this.logger.warn('Skipping additionalTrustedOrigin (exceeds max length)');
|
|
517
|
+
continue;
|
|
518
|
+
}
|
|
519
|
+
try {
|
|
520
|
+
const u = new URL(trimmed);
|
|
521
|
+
if (u.protocol !== 'http:' && u.protocol !== 'https:') {
|
|
522
|
+
this.logger.warn('Skipping additionalTrustedOrigin (unsupported scheme)', {
|
|
523
|
+
trimmed
|
|
524
|
+
});
|
|
525
|
+
continue;
|
|
526
|
+
}
|
|
527
|
+
const origin = u.origin;
|
|
528
|
+
if (seenAdditional.has(origin)) {
|
|
529
|
+
continue;
|
|
530
|
+
}
|
|
531
|
+
if (seenAdditional.size >= IframeManager.maxAdditionalTrustedOrigins) {
|
|
532
|
+
this.logger.warn('additionalTrustedOrigin limit reached, extra entries ignored');
|
|
533
|
+
break;
|
|
534
|
+
}
|
|
535
|
+
seenAdditional.add(origin);
|
|
536
|
+
params.append(FRAME_ANCESTORS_QUERY_PARAM, origin);
|
|
537
|
+
} catch (e) {
|
|
538
|
+
this.logger.warn('Skipping invalid additionalTrustedOrigin', {
|
|
539
|
+
trimmed
|
|
540
|
+
});
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
return params;
|
|
544
|
+
}
|
|
545
|
+
setIframeSource(iframe) {
|
|
546
|
+
const params = this.buildIframeUrlSearchParams();
|
|
508
547
|
iframe.src = `${this.iframeDomain}/waas-v1/${this.environmentId}?${params.toString()}`;
|
|
509
548
|
}
|
|
510
549
|
/**
|
|
@@ -538,18 +577,7 @@ class IframeManager {
|
|
|
538
577
|
iframe.setAttribute('title', 'Dynamic Wallet Storage');
|
|
539
578
|
iframe.setAttribute('sandbox', 'allow-scripts allow-same-origin');
|
|
540
579
|
iframe.setAttribute('referrerpolicy', 'origin');
|
|
541
|
-
|
|
542
|
-
const params = new URLSearchParams({
|
|
543
|
-
instanceId: (_this_instanceId = this.instanceId) != null ? _this_instanceId : '',
|
|
544
|
-
hostOrigin: window.location.origin,
|
|
545
|
-
environmentId: this.environmentId,
|
|
546
|
-
baseApiUrl: this.baseApiUrl,
|
|
547
|
-
baseMPCRelayApiUrl: this.baseMPCRelayApiUrl,
|
|
548
|
-
sdkVersion: (_this_sdkVersion1 = this.sdkVersion) != null ? _this_sdkVersion1 : '',
|
|
549
|
-
debug: String(this.debug),
|
|
550
|
-
baseClientKeysharesRelayApiUrl: (_this_baseClientKeysharesRelayApiUrl = this.baseClientKeysharesRelayApiUrl) != null ? _this_baseClientKeysharesRelayApiUrl : '',
|
|
551
|
-
secureStorage: this.secureStorage ? 'true' : ''
|
|
552
|
-
});
|
|
580
|
+
const params = this.buildIframeUrlSearchParams();
|
|
553
581
|
iframe.src = `${this.iframeDomain}/waas-v1/${this.environmentId}?${params.toString()}`;
|
|
554
582
|
this.logger.debug('Creating iframe with src:', iframe.src);
|
|
555
583
|
// Add iframe to the provided container
|
|
@@ -644,7 +672,7 @@ class IframeManager {
|
|
|
644
672
|
this.iframe = null;
|
|
645
673
|
}
|
|
646
674
|
}
|
|
647
|
-
constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, chainName, sdkVersion, authMode = core.AuthMode.HEADER, authToken, debug, baseClientKeysharesRelayApiUrl }, internalOptions){
|
|
675
|
+
constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, chainName, sdkVersion, authMode = core.AuthMode.HEADER, authToken, debug, baseClientKeysharesRelayApiUrl, additionalTrustedOrigins }, internalOptions){
|
|
648
676
|
this.logger = logger;
|
|
649
677
|
this.instanceId = null;
|
|
650
678
|
this.iframeDomain = null;
|
|
@@ -659,6 +687,9 @@ class IframeManager {
|
|
|
659
687
|
this.chainName = chainName;
|
|
660
688
|
this.sdkVersion = sdkVersion;
|
|
661
689
|
this.baseClientKeysharesRelayApiUrl = baseClientKeysharesRelayApiUrl;
|
|
690
|
+
this.additionalTrustedOrigins = additionalTrustedOrigins ? [
|
|
691
|
+
...additionalTrustedOrigins
|
|
692
|
+
] : [];
|
|
662
693
|
// Set secure storage adapter if provided (internal use only)
|
|
663
694
|
if (internalOptions == null ? void 0 : internalOptions.secureStorage) {
|
|
664
695
|
this.secureStorage = internalOptions.secureStorage;
|
|
@@ -684,6 +715,8 @@ IframeManager.iframeLoadAttempts = 0;
|
|
|
684
715
|
IframeManager.maxRetryAttempts = 1;
|
|
685
716
|
IframeManager.sharedIframe = null;
|
|
686
717
|
IframeManager.iframeInstanceCount = 0;
|
|
718
|
+
IframeManager.maxAdditionalTrustedOrigins = 32;
|
|
719
|
+
IframeManager.maxTrustedOriginStringLength = 200;
|
|
687
720
|
|
|
688
721
|
class DynamicWalletClient extends IframeManager {
|
|
689
722
|
async withHandler(operation) {
|
|
@@ -1014,7 +1047,7 @@ class DynamicWalletClient extends IframeManager {
|
|
|
1014
1047
|
traceContext
|
|
1015
1048
|
}));
|
|
1016
1049
|
}
|
|
1017
|
-
constructor({ environmentId, authToken, baseApiUrl, baseMPCRelayApiUrl, baseClientKeysharesRelayApiUrl, chainName, sdkVersion, debug, authMode = core.AuthMode.HEADER }, internalOptions){
|
|
1050
|
+
constructor({ environmentId, authToken, baseApiUrl, baseMPCRelayApiUrl, baseClientKeysharesRelayApiUrl, chainName, sdkVersion, debug, authMode = core.AuthMode.HEADER, additionalTrustedOrigins }, internalOptions){
|
|
1018
1051
|
super({
|
|
1019
1052
|
environmentId,
|
|
1020
1053
|
authToken,
|
|
@@ -1024,7 +1057,8 @@ class DynamicWalletClient extends IframeManager {
|
|
|
1024
1057
|
chainName,
|
|
1025
1058
|
sdkVersion,
|
|
1026
1059
|
debug,
|
|
1027
|
-
authMode
|
|
1060
|
+
authMode,
|
|
1061
|
+
additionalTrustedOrigins
|
|
1028
1062
|
}, internalOptions);
|
|
1029
1063
|
// Note: secureStorage and getSignedSessionId are already set by IframeManager constructor
|
|
1030
1064
|
}
|
package/index.esm.js
CHANGED
|
@@ -217,6 +217,7 @@ const setupMessageTransportBridge = (messageTransport, iframe, iframeOrigin)=>{
|
|
|
217
217
|
*/ window.addEventListener('message', handleIncomingMessage);
|
|
218
218
|
};
|
|
219
219
|
|
|
220
|
+
const FRAME_ANCESTORS_QUERY_PARAM = 'frameAncestors';
|
|
220
221
|
class IframeManager {
|
|
221
222
|
// Simply load the iframe from localhost
|
|
222
223
|
async initialize() {
|
|
@@ -491,7 +492,7 @@ class IframeManager {
|
|
|
491
492
|
iframe.style.border = 'none';
|
|
492
493
|
iframe.style.pointerEvents = 'none';
|
|
493
494
|
}
|
|
494
|
-
|
|
495
|
+
buildIframeUrlSearchParams() {
|
|
495
496
|
var _this_instanceId, _this_sdkVersion, _this_baseClientKeysharesRelayApiUrl;
|
|
496
497
|
const params = new URLSearchParams({
|
|
497
498
|
instanceId: (_this_instanceId = this.instanceId) != null ? _this_instanceId : '',
|
|
@@ -504,6 +505,44 @@ class IframeManager {
|
|
|
504
505
|
baseClientKeysharesRelayApiUrl: (_this_baseClientKeysharesRelayApiUrl = this.baseClientKeysharesRelayApiUrl) != null ? _this_baseClientKeysharesRelayApiUrl : '',
|
|
505
506
|
secureStorage: this.secureStorage ? 'true' : ''
|
|
506
507
|
});
|
|
508
|
+
const seenAdditional = new Set();
|
|
509
|
+
for (const raw of this.additionalTrustedOrigins){
|
|
510
|
+
const trimmed = raw.trim();
|
|
511
|
+
if (!trimmed) {
|
|
512
|
+
continue;
|
|
513
|
+
}
|
|
514
|
+
if (trimmed.length > IframeManager.maxTrustedOriginStringLength) {
|
|
515
|
+
this.logger.warn('Skipping additionalTrustedOrigin (exceeds max length)');
|
|
516
|
+
continue;
|
|
517
|
+
}
|
|
518
|
+
try {
|
|
519
|
+
const u = new URL(trimmed);
|
|
520
|
+
if (u.protocol !== 'http:' && u.protocol !== 'https:') {
|
|
521
|
+
this.logger.warn('Skipping additionalTrustedOrigin (unsupported scheme)', {
|
|
522
|
+
trimmed
|
|
523
|
+
});
|
|
524
|
+
continue;
|
|
525
|
+
}
|
|
526
|
+
const origin = u.origin;
|
|
527
|
+
if (seenAdditional.has(origin)) {
|
|
528
|
+
continue;
|
|
529
|
+
}
|
|
530
|
+
if (seenAdditional.size >= IframeManager.maxAdditionalTrustedOrigins) {
|
|
531
|
+
this.logger.warn('additionalTrustedOrigin limit reached, extra entries ignored');
|
|
532
|
+
break;
|
|
533
|
+
}
|
|
534
|
+
seenAdditional.add(origin);
|
|
535
|
+
params.append(FRAME_ANCESTORS_QUERY_PARAM, origin);
|
|
536
|
+
} catch (e) {
|
|
537
|
+
this.logger.warn('Skipping invalid additionalTrustedOrigin', {
|
|
538
|
+
trimmed
|
|
539
|
+
});
|
|
540
|
+
}
|
|
541
|
+
}
|
|
542
|
+
return params;
|
|
543
|
+
}
|
|
544
|
+
setIframeSource(iframe) {
|
|
545
|
+
const params = this.buildIframeUrlSearchParams();
|
|
507
546
|
iframe.src = `${this.iframeDomain}/waas-v1/${this.environmentId}?${params.toString()}`;
|
|
508
547
|
}
|
|
509
548
|
/**
|
|
@@ -537,18 +576,7 @@ class IframeManager {
|
|
|
537
576
|
iframe.setAttribute('title', 'Dynamic Wallet Storage');
|
|
538
577
|
iframe.setAttribute('sandbox', 'allow-scripts allow-same-origin');
|
|
539
578
|
iframe.setAttribute('referrerpolicy', 'origin');
|
|
540
|
-
|
|
541
|
-
const params = new URLSearchParams({
|
|
542
|
-
instanceId: (_this_instanceId = this.instanceId) != null ? _this_instanceId : '',
|
|
543
|
-
hostOrigin: window.location.origin,
|
|
544
|
-
environmentId: this.environmentId,
|
|
545
|
-
baseApiUrl: this.baseApiUrl,
|
|
546
|
-
baseMPCRelayApiUrl: this.baseMPCRelayApiUrl,
|
|
547
|
-
sdkVersion: (_this_sdkVersion1 = this.sdkVersion) != null ? _this_sdkVersion1 : '',
|
|
548
|
-
debug: String(this.debug),
|
|
549
|
-
baseClientKeysharesRelayApiUrl: (_this_baseClientKeysharesRelayApiUrl = this.baseClientKeysharesRelayApiUrl) != null ? _this_baseClientKeysharesRelayApiUrl : '',
|
|
550
|
-
secureStorage: this.secureStorage ? 'true' : ''
|
|
551
|
-
});
|
|
579
|
+
const params = this.buildIframeUrlSearchParams();
|
|
552
580
|
iframe.src = `${this.iframeDomain}/waas-v1/${this.environmentId}?${params.toString()}`;
|
|
553
581
|
this.logger.debug('Creating iframe with src:', iframe.src);
|
|
554
582
|
// Add iframe to the provided container
|
|
@@ -643,7 +671,7 @@ class IframeManager {
|
|
|
643
671
|
this.iframe = null;
|
|
644
672
|
}
|
|
645
673
|
}
|
|
646
|
-
constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, chainName, sdkVersion, authMode = AuthMode.HEADER, authToken, debug, baseClientKeysharesRelayApiUrl }, internalOptions){
|
|
674
|
+
constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, chainName, sdkVersion, authMode = AuthMode.HEADER, authToken, debug, baseClientKeysharesRelayApiUrl, additionalTrustedOrigins }, internalOptions){
|
|
647
675
|
this.logger = logger;
|
|
648
676
|
this.instanceId = null;
|
|
649
677
|
this.iframeDomain = null;
|
|
@@ -658,6 +686,9 @@ class IframeManager {
|
|
|
658
686
|
this.chainName = chainName;
|
|
659
687
|
this.sdkVersion = sdkVersion;
|
|
660
688
|
this.baseClientKeysharesRelayApiUrl = baseClientKeysharesRelayApiUrl;
|
|
689
|
+
this.additionalTrustedOrigins = additionalTrustedOrigins ? [
|
|
690
|
+
...additionalTrustedOrigins
|
|
691
|
+
] : [];
|
|
661
692
|
// Set secure storage adapter if provided (internal use only)
|
|
662
693
|
if (internalOptions == null ? void 0 : internalOptions.secureStorage) {
|
|
663
694
|
this.secureStorage = internalOptions.secureStorage;
|
|
@@ -683,6 +714,8 @@ IframeManager.iframeLoadAttempts = 0;
|
|
|
683
714
|
IframeManager.maxRetryAttempts = 1;
|
|
684
715
|
IframeManager.sharedIframe = null;
|
|
685
716
|
IframeManager.iframeInstanceCount = 0;
|
|
717
|
+
IframeManager.maxAdditionalTrustedOrigins = 32;
|
|
718
|
+
IframeManager.maxTrustedOriginStringLength = 200;
|
|
686
719
|
|
|
687
720
|
class DynamicWalletClient extends IframeManager {
|
|
688
721
|
async withHandler(operation) {
|
|
@@ -1013,7 +1046,7 @@ class DynamicWalletClient extends IframeManager {
|
|
|
1013
1046
|
traceContext
|
|
1014
1047
|
}));
|
|
1015
1048
|
}
|
|
1016
|
-
constructor({ environmentId, authToken, baseApiUrl, baseMPCRelayApiUrl, baseClientKeysharesRelayApiUrl, chainName, sdkVersion, debug, authMode = AuthMode.HEADER }, internalOptions){
|
|
1049
|
+
constructor({ environmentId, authToken, baseApiUrl, baseMPCRelayApiUrl, baseClientKeysharesRelayApiUrl, chainName, sdkVersion, debug, authMode = AuthMode.HEADER, additionalTrustedOrigins }, internalOptions){
|
|
1017
1050
|
super({
|
|
1018
1051
|
environmentId,
|
|
1019
1052
|
authToken,
|
|
@@ -1023,7 +1056,8 @@ class DynamicWalletClient extends IframeManager {
|
|
|
1023
1056
|
chainName,
|
|
1024
1057
|
sdkVersion,
|
|
1025
1058
|
debug,
|
|
1026
|
-
authMode
|
|
1059
|
+
authMode,
|
|
1060
|
+
additionalTrustedOrigins
|
|
1027
1061
|
}, internalOptions);
|
|
1028
1062
|
// Note: secureStorage and getSignedSessionId are already set by IframeManager constructor
|
|
1029
1063
|
}
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs-wallet/browser-wallet-client",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.325",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@dynamic-labs-wallet/core": "0.0.
|
|
7
|
+
"@dynamic-labs-wallet/core": "0.0.325",
|
|
8
8
|
"@dynamic-labs/logger": "^4.45.2",
|
|
9
9
|
"@dynamic-labs/message-transport": "^4.45.2"
|
|
10
10
|
},
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import type { BackupKeySharesToGoogleDriveRequest, BackupKeySharesToICloudRequest, BitcoinConfig, CreateWalletAccountRequest, CreateWalletAccountResponse, DelegateKeySharesRequest, ExportClientKeysharesRequest, GetWalletRecoveryStateRequest, GetWalletResponse, ImportPrivateKeyRequest, IsPasswordEncryptedRequest, OfflineExportPrivateKeyResponse, RefreshWalletAccountSharesRequest, RequestWithElevatedAccessToken, RequestWithTraceContext, RequiresPasswordForOperationRequest, ReshareRequest, RevokeDelegationRequest, SecureStorageAdapter, SetPasswordRequest, SignMessageRequestBrowser, SignRawMessageRequest, SignTransactionRequest, SignTypedDataRequest, UnlockWalletRequest, UpdatePasswordRequest, VerifyPasswordRequest, WalletRecoveryState } from '@dynamic-labs-wallet/core';
|
|
2
|
+
import { AuthMode, WalletOperation } from '@dynamic-labs-wallet/core';
|
|
3
|
+
import { IframeManager } from './iframeManager/index.js';
|
|
4
|
+
export declare class DynamicWalletClient extends IframeManager {
|
|
5
|
+
constructor({ environmentId, authToken, baseApiUrl, baseMPCRelayApiUrl, baseClientKeysharesRelayApiUrl, chainName, sdkVersion, debug, authMode, additionalTrustedOrigins, }: {
|
|
6
|
+
environmentId: string;
|
|
7
|
+
authToken: string;
|
|
8
|
+
baseApiUrl: string;
|
|
9
|
+
baseMPCRelayApiUrl: string;
|
|
10
|
+
chainName: string;
|
|
11
|
+
sdkVersion?: string;
|
|
12
|
+
debug?: boolean;
|
|
13
|
+
authMode?: AuthMode;
|
|
14
|
+
baseClientKeysharesRelayApiUrl?: string;
|
|
15
|
+
additionalTrustedOrigins?: readonly string[];
|
|
16
|
+
}, internalOptions?: {
|
|
17
|
+
secureStorage?: SecureStorageAdapter;
|
|
18
|
+
getSignedSessionId?: () => Promise<string>;
|
|
19
|
+
});
|
|
20
|
+
private withHandler;
|
|
21
|
+
getWallets(): Promise<GetWalletResponse[]>;
|
|
22
|
+
getAllWallets(): Promise<GetWalletResponse[]>;
|
|
23
|
+
getWallet({ accountAddress, walletOperation, signedSessionId, authToken, }: {
|
|
24
|
+
accountAddress: string;
|
|
25
|
+
walletOperation?: WalletOperation;
|
|
26
|
+
signedSessionId: string;
|
|
27
|
+
authToken?: string;
|
|
28
|
+
}): Promise<GetWalletResponse>;
|
|
29
|
+
getWalletRecoveryState({ accountAddress, authToken, signedSessionId, password, traceContext, }: RequestWithTraceContext<Omit<GetWalletRecoveryStateRequest, 'chainName'>>): Promise<WalletRecoveryState>;
|
|
30
|
+
unlockWallet({ accountAddress, password, signedSessionId, authToken, traceContext, }: RequestWithTraceContext<Omit<UnlockWalletRequest, 'chainName'>>): Promise<GetWalletResponse>;
|
|
31
|
+
createWalletAccount({ thresholdSignatureScheme, password, signedSessionId, authToken, traceContext, bitcoinConfig, }: RequestWithTraceContext<Omit<CreateWalletAccountRequest, 'chainName'>>): Promise<CreateWalletAccountResponse>;
|
|
32
|
+
requiresPasswordForOperation({ accountAddress, walletOperation, authToken, }: Omit<RequiresPasswordForOperationRequest, 'chainName'>): Promise<boolean>;
|
|
33
|
+
isPasswordEncrypted({ accountAddress, authToken, }: Omit<IsPasswordEncryptedRequest, 'chainName'>): Promise<boolean>;
|
|
34
|
+
signMessage({ message, accountAddress, password, signedSessionId, authToken, mfaToken, elevatedAccessToken, context, traceContext, bitcoinConfig, }: RequestWithTraceContext<RequestWithElevatedAccessToken<Omit<SignMessageRequestBrowser, 'chainName'>>>): Promise<string>;
|
|
35
|
+
signRawMessage({ message, accountAddress, password, signedSessionId, authToken, mfaToken, elevatedAccessToken, context, traceContext, bitcoinConfig, }: RequestWithTraceContext<RequestWithElevatedAccessToken<Omit<SignRawMessageRequest, 'chainName'>>>): Promise<string>;
|
|
36
|
+
/**
|
|
37
|
+
* Signs a transaction and returns the signature, @transaction is a string of the serialized transaction
|
|
38
|
+
* EVM:
|
|
39
|
+
* transaction = serializeTransaction()
|
|
40
|
+
* SOL:
|
|
41
|
+
* const messageBytes = transaction.serializeMessage();
|
|
42
|
+
* const messageToSign = Buffer.from(messageBytes).toString("hex");
|
|
43
|
+
* SUI:
|
|
44
|
+
* const txBytes = await txb.build({ client });
|
|
45
|
+
* const txString = Buffer.from(txBytes).toString("hex");
|
|
46
|
+
*/
|
|
47
|
+
signTransaction({ senderAddress, transaction, password, signedSessionId, authToken, mfaToken, elevatedAccessToken, chainId, traceContext, bitcoinConfig, }: RequestWithTraceContext<RequestWithElevatedAccessToken<Omit<SignTransactionRequest, 'chainName'>>>): Promise<string>;
|
|
48
|
+
signTypedData({ accountAddress, typedData, password, signedSessionId, authToken, mfaToken, elevatedAccessToken, traceContext, }: RequestWithTraceContext<RequestWithElevatedAccessToken<Omit<SignTypedDataRequest, 'chainName'>>>): Promise<string>;
|
|
49
|
+
backupKeySharesToGoogleDrive({ accountAddress, password, signedSessionId, authToken, traceContext, }: RequestWithTraceContext<Omit<BackupKeySharesToGoogleDriveRequest, 'chainName'>>): Promise<void>;
|
|
50
|
+
backupKeySharesToICloud({ accountAddress, password, signedSessionId, authToken, traceContext, }: RequestWithTraceContext<Omit<BackupKeySharesToICloudRequest, 'chainName'>>): Promise<void>;
|
|
51
|
+
displayICloudSignIn({ displayContainer }: {
|
|
52
|
+
displayContainer: HTMLElement;
|
|
53
|
+
}): Promise<void>;
|
|
54
|
+
hideICloudSignIn(): Promise<void>;
|
|
55
|
+
isICloudAuthenticated(): Promise<boolean>;
|
|
56
|
+
delegateKeyShares({ accountAddress, password, signedSessionId, authToken, mfaToken, traceContext, }: RequestWithTraceContext<Omit<DelegateKeySharesRequest, 'chainName'>>): Promise<void>;
|
|
57
|
+
revokeDelegation({ accountAddress, password, signedSessionId, authToken, mfaToken, traceContext, }: RequestWithTraceContext<Omit<RevokeDelegationRequest, 'chainName'>>): Promise<void>;
|
|
58
|
+
exportClientKeysharesFromGoogleDrive({ accountAddress, password, signedSessionId, authToken, traceContext, }: RequestWithTraceContext<{
|
|
59
|
+
accountAddress: string;
|
|
60
|
+
password?: string;
|
|
61
|
+
signedSessionId: string;
|
|
62
|
+
authToken?: string;
|
|
63
|
+
}>): Promise<void>;
|
|
64
|
+
refreshWalletAccountShares({ accountAddress, password, signedSessionId, authToken, mfaToken, elevatedAccessToken, traceContext, }: RequestWithTraceContext<RequestWithElevatedAccessToken<Omit<RefreshWalletAccountSharesRequest, 'chainName'>>>): Promise<void>;
|
|
65
|
+
reshare({ accountAddress, oldThresholdSignatureScheme, newThresholdSignatureScheme, password, signedSessionId, authToken, mfaToken, elevatedAccessToken, traceContext, }: RequestWithTraceContext<RequestWithElevatedAccessToken<Omit<ReshareRequest, 'chainName'>>>): Promise<void>;
|
|
66
|
+
exportPrivateKey({ accountAddress, elevatedAccessToken, displayContainer, password, signedSessionId, authToken, mfaToken, traceContext, bitcoinConfig, }: RequestWithTraceContext<RequestWithElevatedAccessToken<{
|
|
67
|
+
accountAddress: string;
|
|
68
|
+
displayContainer: HTMLElement;
|
|
69
|
+
password?: string;
|
|
70
|
+
signedSessionId: string;
|
|
71
|
+
authToken?: string;
|
|
72
|
+
mfaToken?: string;
|
|
73
|
+
bitcoinConfig?: BitcoinConfig;
|
|
74
|
+
}>>): Promise<void>;
|
|
75
|
+
verifyPassword({ accountAddress, password, walletOperation, signedSessionId, authToken, traceContext, }: RequestWithTraceContext<Omit<VerifyPasswordRequest, 'chainName'>>): Promise<void>;
|
|
76
|
+
updatePassword({ accountAddress, existingPassword, newPassword, signedSessionId, authToken, passwordUpdateBatchId, traceContext, }: RequestWithTraceContext<Omit<UpdatePasswordRequest, 'chainName'>>): Promise<void>;
|
|
77
|
+
setPassword({ accountAddress, newPassword, signedSessionId, authToken, passwordUpdateBatchId, traceContext, }: RequestWithTraceContext<Omit<SetPasswordRequest, 'chainName'>>): Promise<void>;
|
|
78
|
+
importPrivateKey({ privateKey, thresholdSignatureScheme, password, signedSessionId, authToken, publicAddressCheck, addressType, traceContext, legacyWalletId, }: RequestWithTraceContext<Omit<ImportPrivateKeyRequest, 'chainName'>>): Promise<CreateWalletAccountResponse>;
|
|
79
|
+
exportClientKeyshares({ accountAddress, password, signedSessionId, authToken, traceContext, }: RequestWithTraceContext<Omit<ExportClientKeysharesRequest, 'chainName'>>): Promise<void>;
|
|
80
|
+
/**
|
|
81
|
+
* keyShares is stringified list of EcdsaKeygenResult[] and Ed25519KeygenResult[]
|
|
82
|
+
*/
|
|
83
|
+
offlineExportPrivateKey({ keyShares, derivationPath, traceContext, }: RequestWithTraceContext<{
|
|
84
|
+
keyShares: string[];
|
|
85
|
+
derivationPath?: string;
|
|
86
|
+
}>): Promise<OfflineExportPrivateKeyResponse>;
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { AuthMode, type IframeRequestMessages, type SecureStorageAdapter } from '@dynamic-labs-wallet/core';
|
|
2
|
+
import { type MessageTransportWithDefaultOrigin, type RequestChannel } from '@dynamic-labs/message-transport';
|
|
3
|
+
import { iframeMessageHandler } from '../../services/iframeMessageHandler.js';
|
|
4
|
+
export declare class IframeManager {
|
|
5
|
+
protected chainName: string;
|
|
6
|
+
protected logger: import("@dynamic-labs/logger").Logger;
|
|
7
|
+
instanceId: string | null;
|
|
8
|
+
iframeDomain: string | null;
|
|
9
|
+
environmentId: string;
|
|
10
|
+
private readonly authToken;
|
|
11
|
+
private readonly authMode;
|
|
12
|
+
baseApiUrl: string;
|
|
13
|
+
baseMPCRelayApiUrl: string;
|
|
14
|
+
protected messageTransport: MessageTransportWithDefaultOrigin | null;
|
|
15
|
+
protected iframeMessageHandler: iframeMessageHandler | null;
|
|
16
|
+
private static iframeLoadPromise;
|
|
17
|
+
protected iframe: HTMLIFrameElement | null;
|
|
18
|
+
private readonly debug;
|
|
19
|
+
static iframeLoadTimeout: number;
|
|
20
|
+
private static iframeLoadAttempts;
|
|
21
|
+
private static readonly maxRetryAttempts;
|
|
22
|
+
baseClientKeysharesRelayApiUrl: string | undefined;
|
|
23
|
+
private static sharedIframe;
|
|
24
|
+
private static iframeInstanceCount;
|
|
25
|
+
sdkVersion: string | undefined;
|
|
26
|
+
/**
|
|
27
|
+
* Internal secure storage adapter for mobile TEE-backed storage.
|
|
28
|
+
* When set, key shares are stored in secure storage instead of localStorage.
|
|
29
|
+
* This is NOT part of the public API.
|
|
30
|
+
*/
|
|
31
|
+
protected secureStorage?: SecureStorageAdapter;
|
|
32
|
+
/**
|
|
33
|
+
* Callback to retrieve a signed session ID lazily.
|
|
34
|
+
* Used as a reverse-channel handler: the iframe requests this value from the host.
|
|
35
|
+
* This is NOT part of the public API.
|
|
36
|
+
*/
|
|
37
|
+
protected getSignedSessionIdCallback?: () => Promise<string>;
|
|
38
|
+
/**
|
|
39
|
+
* Request channel for handling messages from iframe (iframe → host)
|
|
40
|
+
* Used for secureStorage operations and signed session ID retrieval
|
|
41
|
+
*/
|
|
42
|
+
protected iframeRequestChannel?: RequestChannel<Pick<IframeRequestMessages, 'getClientKeyShare' | 'setClientKeyShare' | 'getSignedSessionId'>>;
|
|
43
|
+
private static readonly maxAdditionalTrustedOrigins;
|
|
44
|
+
private static readonly maxTrustedOriginStringLength;
|
|
45
|
+
private readonly additionalTrustedOrigins;
|
|
46
|
+
constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, chainName, sdkVersion, authMode, authToken, debug, baseClientKeysharesRelayApiUrl, additionalTrustedOrigins, }: {
|
|
47
|
+
environmentId: string;
|
|
48
|
+
authMode: AuthMode;
|
|
49
|
+
authToken?: string;
|
|
50
|
+
baseApiUrl: string;
|
|
51
|
+
baseMPCRelayApiUrl: string;
|
|
52
|
+
chainName: string;
|
|
53
|
+
sdkVersion?: string;
|
|
54
|
+
debug?: boolean;
|
|
55
|
+
baseClientKeysharesRelayApiUrl?: string;
|
|
56
|
+
additionalTrustedOrigins?: readonly string[];
|
|
57
|
+
}, internalOptions?: {
|
|
58
|
+
secureStorage?: SecureStorageAdapter;
|
|
59
|
+
getSignedSessionId?: () => Promise<string>;
|
|
60
|
+
});
|
|
61
|
+
initialize(): Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* this is called on class construction time
|
|
64
|
+
* @returns {Promise<void>} that resolves when the iframe is loaded and the message transport and iframe storage are initialized
|
|
65
|
+
*/
|
|
66
|
+
initializeIframeCommunication(): Promise<void>;
|
|
67
|
+
/**
|
|
68
|
+
* initialize the iframe communication by awaiting the iframe load promise
|
|
69
|
+
* and initializing the message transport and iframe storage after iframe is successfully loaded
|
|
70
|
+
*/
|
|
71
|
+
private doInitializeIframeCommunication;
|
|
72
|
+
/**
|
|
73
|
+
* initialize the message transport after iframe is successfully loaded
|
|
74
|
+
*/
|
|
75
|
+
protected initializeMessageTransport(): Promise<void>;
|
|
76
|
+
/**
|
|
77
|
+
* Sets up message handlers for iframe → host requests (secureStorage and getSignedSessionId)
|
|
78
|
+
*/
|
|
79
|
+
private setupIframeRequestHandlers;
|
|
80
|
+
/**
|
|
81
|
+
* Handler for getClientKeyShare requests from iframe
|
|
82
|
+
*/
|
|
83
|
+
private handleGetClientKeyShare;
|
|
84
|
+
/**
|
|
85
|
+
* Handler for setClientKeyShare requests from iframe
|
|
86
|
+
*/
|
|
87
|
+
private handleSetClientKeyShare;
|
|
88
|
+
/**
|
|
89
|
+
* Handler for removeClientKeyShare requests from iframe
|
|
90
|
+
*/
|
|
91
|
+
private handleRemoveClientKeyShare;
|
|
92
|
+
/**
|
|
93
|
+
* Handler for getSignedSessionId requests from iframe
|
|
94
|
+
*/
|
|
95
|
+
private handleGetSignedSessionId;
|
|
96
|
+
/**
|
|
97
|
+
* securely exchange the auth token with iframe securely
|
|
98
|
+
*/
|
|
99
|
+
private initAuthToken;
|
|
100
|
+
/**
|
|
101
|
+
* Reset the shared iframe and iframe load promise, and iframe instance count
|
|
102
|
+
*/
|
|
103
|
+
private resetSharedIframe;
|
|
104
|
+
private loadIframe;
|
|
105
|
+
private assignExistingIframe;
|
|
106
|
+
private createIframeLoadPromise;
|
|
107
|
+
private setupIframeEventHandlersWithRetry;
|
|
108
|
+
private getIframeContext;
|
|
109
|
+
private createMessageListener;
|
|
110
|
+
private configureIframe;
|
|
111
|
+
private buildIframeUrlSearchParams;
|
|
112
|
+
private setIframeSource;
|
|
113
|
+
/**
|
|
114
|
+
* Load an iframe for a specific container
|
|
115
|
+
* @param {HTMLElement} container - The container to which the iframe will be attached
|
|
116
|
+
* @returns {Promise<HTMLIFrameElement>} that resolves when the iframe is loaded
|
|
117
|
+
*/
|
|
118
|
+
private loadIframeForContainer;
|
|
119
|
+
/**
|
|
120
|
+
* Initializes the iframe display for a specific container.
|
|
121
|
+
*
|
|
122
|
+
* @param {HTMLElement} container - The container to which the iframe will be attached.
|
|
123
|
+
* @returns:
|
|
124
|
+
* iframe: HTMLIFrameElement;
|
|
125
|
+
* iframeDisplay: IframeDisplayChannelAdapter;
|
|
126
|
+
* cleanup: () => void;
|
|
127
|
+
*/
|
|
128
|
+
initializeIframeDisplayForContainer({ container }: {
|
|
129
|
+
container: HTMLElement;
|
|
130
|
+
}): Promise<{
|
|
131
|
+
iframe: HTMLIFrameElement;
|
|
132
|
+
iframeDisplay: iframeMessageHandler;
|
|
133
|
+
cleanup: () => void;
|
|
134
|
+
}>;
|
|
135
|
+
cleanup(): Promise<void>;
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=IframeManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IframeManager.d.ts","sourceRoot":"","sources":["../../../src/client/iframeManager/IframeManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/iframeManager/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC"}
|
package/src/index.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { MPC_RELAY_PREPROD_API_URL, MPC_RELAY_PROD_API_URL, ThresholdSignatureScheme, WalletOperation, } from '@dynamic-labs-wallet/core';
|
|
2
|
+
export type { BitcoinAddressType, BitcoinConfig, BitcoinNetwork, GetWalletResponse, WalletRecoveryState, } from '@dynamic-labs-wallet/core';
|
|
3
|
+
export * from './client/index.js';
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EACxB,eAAe,GAChB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { AuthMode, BackupKeySharesToGoogleDriveRequest, BackupKeySharesToICloudRequest, CreateWalletAccountRequest, CreateWalletAccountResponse, DelegateKeySharesRequest, ExportClientKeysharesFromGoogleDriveRequest, ExportClientKeysharesRequest, ExportPrivateKeyRequest, GetWalletRecoveryStateRequest, GetWalletRequest, GetAllWalletsRequest, GetWalletResponse, GetWalletsRequest, IframeRequestMessages, ImportPrivateKeyRequest, IsPasswordEncryptedRequest, MessageTransportErrorResponse, OfflineExportPrivateKeyRequest, OfflineExportPrivateKeyResponse, RefreshWalletAccountSharesRequest, RequestWithElevatedAccessToken, RequestWithTraceContext, RequiresPasswordForOperationRequest, ReshareRequest, RevokeDelegationRequest, SetPasswordRequest, SignMessageRequest, SignRawMessageRequest, SignTransactionRequest, SignTypedDataRequest, TraceContext, UnlockWalletRequest, UpdatePasswordRequest, VerifyPasswordRequest, WalletRecoveryState } from '@dynamic-labs-wallet/core';
|
|
2
|
+
import { type MessageTransportWithDefaultOrigin, type RequestChannel } from '@dynamic-labs/message-transport';
|
|
3
|
+
export declare class iframeMessageHandler {
|
|
4
|
+
requestChannel: RequestChannel<IframeRequestMessages>;
|
|
5
|
+
constructor(messageTransport: MessageTransportWithDefaultOrigin);
|
|
6
|
+
private handleIframeMessageResponseError;
|
|
7
|
+
getWallets(request: RequestWithTraceContext<GetWalletsRequest>): Promise<GetWalletResponse[]>;
|
|
8
|
+
getAllWallets(request: RequestWithTraceContext<GetAllWalletsRequest>): Promise<GetWalletResponse[]>;
|
|
9
|
+
getWallet(request: RequestWithTraceContext<GetWalletRequest>): Promise<GetWalletResponse>;
|
|
10
|
+
createWalletAccount(request: RequestWithTraceContext<CreateWalletAccountRequest>): Promise<CreateWalletAccountResponse>;
|
|
11
|
+
requiresPasswordForOperation(request: RequestWithTraceContext<RequiresPasswordForOperationRequest>): Promise<boolean>;
|
|
12
|
+
signMessage(request: RequestWithTraceContext<RequestWithElevatedAccessToken<SignMessageRequest>>): Promise<string>;
|
|
13
|
+
signRawMessage(request: RequestWithTraceContext<RequestWithElevatedAccessToken<SignRawMessageRequest>>): Promise<string>;
|
|
14
|
+
signTransaction(request: RequestWithTraceContext<RequestWithElevatedAccessToken<SignTransactionRequest>>): Promise<string>;
|
|
15
|
+
isPasswordEncrypted(request: RequestWithTraceContext<IsPasswordEncryptedRequest>): Promise<boolean>;
|
|
16
|
+
backupKeySharesToGoogleDrive(request: RequestWithTraceContext<BackupKeySharesToGoogleDriveRequest>): Promise<void>;
|
|
17
|
+
backupKeySharesToICloud(request: RequestWithTraceContext<BackupKeySharesToICloudRequest>): Promise<void>;
|
|
18
|
+
displayICloudSignIn(chainName: string): Promise<void>;
|
|
19
|
+
hideICloudSignIn(): Promise<void>;
|
|
20
|
+
isICloudAuthenticated(chainName: string): Promise<boolean>;
|
|
21
|
+
delegateKeyShares(request: RequestWithTraceContext<DelegateKeySharesRequest>): Promise<void>;
|
|
22
|
+
revokeDelegation(request: RequestWithTraceContext<RevokeDelegationRequest>): Promise<void>;
|
|
23
|
+
exportClientKeysharesFromGoogleDrive(request: RequestWithTraceContext<ExportClientKeysharesFromGoogleDriveRequest>): Promise<void>;
|
|
24
|
+
refreshWalletAccountShares(request: RequestWithTraceContext<RequestWithElevatedAccessToken<RefreshWalletAccountSharesRequest>>): Promise<void>;
|
|
25
|
+
reshare(request: RequestWithTraceContext<RequestWithElevatedAccessToken<ReshareRequest>>): Promise<void>;
|
|
26
|
+
exportPrivateKey(request: RequestWithTraceContext<RequestWithElevatedAccessToken<ExportPrivateKeyRequest>>): Promise<void>;
|
|
27
|
+
verifyPassword(request: RequestWithTraceContext<VerifyPasswordRequest>): Promise<void>;
|
|
28
|
+
updatePassword(request: RequestWithTraceContext<UpdatePasswordRequest>): Promise<void>;
|
|
29
|
+
setPassword(request: RequestWithTraceContext<SetPasswordRequest>): Promise<void>;
|
|
30
|
+
importPrivateKey(request: RequestWithTraceContext<ImportPrivateKeyRequest>): Promise<CreateWalletAccountResponse>;
|
|
31
|
+
sendAuthToken(token?: string, authMode?: AuthMode, traceContext?: TraceContext): Promise<void>;
|
|
32
|
+
exportClientKeyshares(request: RequestWithTraceContext<ExportClientKeysharesRequest>): Promise<void>;
|
|
33
|
+
offlineExportPrivateKey(request: RequestWithTraceContext<OfflineExportPrivateKeyRequest>): Promise<OfflineExportPrivateKeyResponse>;
|
|
34
|
+
signTypedData(request: RequestWithTraceContext<RequestWithElevatedAccessToken<SignTypedDataRequest>>): Promise<string>;
|
|
35
|
+
cleanup(): Promise<void | MessageTransportErrorResponse>;
|
|
36
|
+
getWalletRecoveryState(request: RequestWithTraceContext<GetWalletRecoveryStateRequest>): Promise<WalletRecoveryState>;
|
|
37
|
+
unlockWallet(request: RequestWithTraceContext<UnlockWalletRequest>): Promise<GetWalletResponse>;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=iframeMessageHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iframeMessageHandler.d.ts","sourceRoot":"","sources":["../../src/services/iframeMessageHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/services/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,eAAO,MAAM,MAAM,QAAwC,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { type MessageTransportWithDefaultOrigin } from '@dynamic-labs/message-transport';
|
|
2
|
+
export declare const setupMessageTransportBridge: (messageTransport: MessageTransportWithDefaultOrigin, iframe: HTMLIFrameElement, iframeOrigin: string) => void;
|
|
3
|
+
//# sourceMappingURL=messageTransportBridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messageTransportBridge.d.ts","sourceRoot":"","sources":["../../src/services/messageTransportBridge.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iCAAiC,EAGvC,MAAM,iCAAiC,CAAC;AAGzC,eAAO,MAAM,2BAA2B,qBACpB,iCAAiC,UAC3C,iBAAiB,gBACX,MAAM,SA4DrB,CAAC"}
|