@mocanetwork/airkit-connector 1.7.0 → 1.8.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/airkitConnector.cjs.js +78 -30
- package/dist/airkitConnector.esm.js +78 -30
- package/dist/airkitConnector.umd.js +78 -30
- package/dist/types/common/src/types.d.ts +22 -0
- package/package.json +2 -2
- /package/dist/types/{index.d.ts → airkit-connector/src/index.d.ts} +0 -0
- /package/dist/types/{lib → airkit-connector/src/lib}/connector.d.ts +0 -0
- /package/dist/types/{lib → airkit-connector/src/lib}/interfaces.d.ts +0 -0
|
@@ -94,7 +94,7 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
|
|
|
94
94
|
var e = new Error(message);
|
|
95
95
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
96
96
|
};
|
|
97
|
-
var version$2 = "1.
|
|
97
|
+
var version$2 = "1.8.0-beta.2";
|
|
98
98
|
var airkitPackage = {
|
|
99
99
|
version: version$2
|
|
100
100
|
};
|
|
@@ -590,6 +590,12 @@ const BUILD_ENV = {
|
|
|
590
590
|
const IFRAME_NAME_PREFIX_SET = ["air-wallet", "air-credential", "air-auth", "air-recovery"]; // order defines the z-index from highest to lowest
|
|
591
591
|
|
|
592
592
|
const FONT_CDNS = ["https://fonts.googleapis.com", "https://fonts.gstatic.com"];
|
|
593
|
+
const SANDBOX_TESTNET_URLS = {
|
|
594
|
+
authUrl: "https://account.sandbox-testnet.air3.com/auth/",
|
|
595
|
+
walletUrl: "https://account.sandbox-testnet.air3.com/wallet/",
|
|
596
|
+
recoveryUrl: "https://account.sandbox-testnet.air3.com/recovery/",
|
|
597
|
+
credentialUrl: "https://account.sandbox-testnet.air3.com/credential/"
|
|
598
|
+
};
|
|
593
599
|
const AIR_URLS = {
|
|
594
600
|
[BUILD_ENV.DEVELOPMENT]: {
|
|
595
601
|
authUrl: "https://localhost:8200/auth/",
|
|
@@ -622,6 +628,12 @@ const AIR_URLS = {
|
|
|
622
628
|
credentialUrl: "https://account.air3.com/credential/"
|
|
623
629
|
}
|
|
624
630
|
};
|
|
631
|
+
const getAirUrls = (buildEnv, credentialNetwork) => {
|
|
632
|
+
if (buildEnv === BUILD_ENV.SANDBOX && credentialNetwork === "testnet") {
|
|
633
|
+
return SANDBOX_TESTNET_URLS;
|
|
634
|
+
}
|
|
635
|
+
return AIR_URLS[buildEnv];
|
|
636
|
+
};
|
|
625
637
|
/**
|
|
626
638
|
* Injects dns-prefetch, preconnect, and prefetch link tags
|
|
627
639
|
* for a given resource or page URL.
|
|
@@ -642,7 +654,7 @@ const addResourceHints = (url, options) => {
|
|
|
642
654
|
const link = document.createElement("link");
|
|
643
655
|
link.rel = rel;
|
|
644
656
|
link.href = href;
|
|
645
|
-
if (as)
|
|
657
|
+
if (as) ;
|
|
646
658
|
if (crossOrigin) link.crossOrigin = "anonymous";
|
|
647
659
|
head.appendChild(link);
|
|
648
660
|
};
|
|
@@ -652,8 +664,27 @@ const addResourceHints = (url, options) => {
|
|
|
652
664
|
// Preconnect (TCP + TLS warm-up)
|
|
653
665
|
addLink("preconnect", parsed.origin, undefined, isCrossOrigin);
|
|
654
666
|
// Prefetch (optional — caches the resource or HTML document)
|
|
655
|
-
if (options?.prefetch !== false) {
|
|
656
|
-
|
|
667
|
+
if (options?.prefetch !== false && HTMLScriptElement.supports && HTMLScriptElement.supports("speculationrules")) {
|
|
668
|
+
const scriptId = `speculation-${btoa(parsed.href).replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, "")}`;
|
|
669
|
+
if (!document.getElementById(scriptId)) {
|
|
670
|
+
const script = document.createElement("script");
|
|
671
|
+
script.id = scriptId;
|
|
672
|
+
script.type = "speculationrules";
|
|
673
|
+
const sources = [{
|
|
674
|
+
source: "list",
|
|
675
|
+
urls: [parsed.href],
|
|
676
|
+
eagerness: "immediate"
|
|
677
|
+
}];
|
|
678
|
+
const rules = {
|
|
679
|
+
...((options?.as ?? "document") === "document" ? {
|
|
680
|
+
prerender: sources
|
|
681
|
+
} : {
|
|
682
|
+
prefetch: sources
|
|
683
|
+
})
|
|
684
|
+
};
|
|
685
|
+
script.textContent = JSON.stringify(rules);
|
|
686
|
+
document.body.appendChild(script);
|
|
687
|
+
}
|
|
657
688
|
}
|
|
658
689
|
} catch (err) {
|
|
659
690
|
log$1.warn("[addResourceHints] Invalid URL:", url, err);
|
|
@@ -2129,7 +2160,7 @@ class IframeController {
|
|
|
2129
2160
|
if (this._iframeElement) return this._iframeElement;
|
|
2130
2161
|
const iframe = document.createElement("iframe");
|
|
2131
2162
|
iframe.id = this.iframeId;
|
|
2132
|
-
iframe.allow = "publickey-credentials-get
|
|
2163
|
+
iframe.allow = ["publickey-credentials-get *", "publickey-credentials-create *", "ch-ua-model", "ch-ua-platform-version"].join("; ");
|
|
2133
2164
|
iframe.src = this.iframeUrl;
|
|
2134
2165
|
iframe.style.position = "fixed";
|
|
2135
2166
|
iframe.style.zIndex = `${this.getZIndex()}`;
|
|
@@ -2351,7 +2382,12 @@ class WalletMessageService extends MessageServiceBase {
|
|
|
2351
2382
|
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.SHOW_SWAP_UI_RESPONSE)));
|
|
2352
2383
|
await this.sendMessage({
|
|
2353
2384
|
type: AirWalletMessageTypes.SHOW_SWAP_UI_REQUEST,
|
|
2354
|
-
payload
|
|
2385
|
+
payload: {
|
|
2386
|
+
initialFromToken: payload?.initialFromToken,
|
|
2387
|
+
fallbackFromToken: payload?.fallbackFromToken,
|
|
2388
|
+
initialToToken: payload?.initialToToken,
|
|
2389
|
+
defaultSlippage: payload?.defaultSlippage?.toString() // TODO refactor to all be numbers
|
|
2390
|
+
}
|
|
2355
2391
|
});
|
|
2356
2392
|
return response;
|
|
2357
2393
|
}
|
|
@@ -2574,7 +2610,7 @@ class WindowService {
|
|
|
2574
2610
|
}
|
|
2575
2611
|
}
|
|
2576
2612
|
var WindowService$1 = WindowService.instance;
|
|
2577
|
-
var _AirService_instances, _AirService_loginResult, _AirService_buildEnv, _AirService_enableLogging, _AirService_partnerId, _AirService_sessionId, _AirService_sessionConfig, _AirService_authMessagingService, _AirService_authIframeController, _AirService_isAuthInitialized, _AirService_airEventListener, _AirService_walletMessagingService, _AirService_walletIframeController, _AirService_walletInitialization, _AirService_walletLoggedInResult, _AirService_airWalletProvider, _AirService_recoveryInitialization, _AirService_recoveryMessagingService, _AirService_recoveryIframeController, _AirService_credentialsInitialization, _AirService_credentialMessagingService, _AirService_credentialIframeController, _AirService_assertInitialized, _AirService_assertLoggedIn, _AirService_ensureCredential, _AirService_initializeCredentials, _AirService_subscribeToCredentialEvents, _AirService_cleanUpCredential, _AirService_ensureWallet, _AirService_initializeWallet, _AirService_subscribeToWalletEvents, _AirService_triggerEventListeners, _AirService_triggerAirAuthInitialized, _AirService_triggerAirAuthLoggedIn, _AirService_triggerAirAuthLoggedOut, _AirService_triggerWalletInitialized, _AirService_createLoginResult, _AirService_createWalletInitializedResult, _AirService_cleanUpAuth, _AirService_cleanUpWallet, _AirService_ensureRecovery, _AirService_initializeRecovery, _AirService_subscribeToRecoveryEvents, _AirService_cleanUpRecovery;
|
|
2613
|
+
var _AirService_instances, _AirService_loginResult, _AirService_buildEnv, _AirService_enableLogging, _AirService_partnerId, _AirService_sessionId, _AirService_sessionConfig, _AirService_authMessagingService, _AirService_authIframeController, _AirService_isAuthInitialized, _AirService_airEventListener, _AirService_walletMessagingService, _AirService_walletIframeController, _AirService_walletInitialization, _AirService_walletLoggedInResult, _AirService_airWalletProvider, _AirService_recoveryInitialization, _AirService_recoveryMessagingService, _AirService_recoveryIframeController, _AirService_credentialsInitialization, _AirService_credentialMessagingService, _AirService_credentialIframeController, _AirService_credentialNetwork, _AirService_assertInitialized, _AirService_assertLoggedIn, _AirService_ensureCredential, _AirService_initializeCredentials, _AirService_subscribeToCredentialEvents, _AirService_cleanUpCredential, _AirService_ensureWallet, _AirService_initializeWallet, _AirService_subscribeToWalletEvents, _AirService_triggerEventListeners, _AirService_triggerAirAuthInitialized, _AirService_triggerAirAuthLoggedIn, _AirService_triggerAirAuthLoggedOut, _AirService_triggerWalletInitialized, _AirService_createLoginResult, _AirService_createWalletInitializedResult, _AirService_cleanUpAuth, _AirService_cleanUpWallet, _AirService_ensureRecovery, _AirService_initializeRecovery, _AirService_subscribeToRecoveryEvents, _AirService_cleanUpRecovery;
|
|
2578
2614
|
const airKitVersion = airkitPackage.version;
|
|
2579
2615
|
class AirService {
|
|
2580
2616
|
constructor({
|
|
@@ -2603,6 +2639,7 @@ class AirService {
|
|
|
2603
2639
|
_AirService_credentialsInitialization.set(this, void 0);
|
|
2604
2640
|
_AirService_credentialMessagingService.set(this, void 0);
|
|
2605
2641
|
_AirService_credentialIframeController.set(this, void 0);
|
|
2642
|
+
_AirService_credentialNetwork.set(this, void 0);
|
|
2606
2643
|
__classPrivateFieldSet(this, _AirService_partnerId, partnerId);
|
|
2607
2644
|
__classPrivateFieldSet(this, _AirService_authMessagingService, AuthMessageService.create());
|
|
2608
2645
|
__classPrivateFieldSet(this, _AirService_walletMessagingService, WalletMessageService.create());
|
|
@@ -2643,22 +2680,25 @@ class AirService {
|
|
|
2643
2680
|
shouldEnableAutomation() {
|
|
2644
2681
|
return localStorage.getItem("automation") === "true" && __classPrivateFieldGet$1(this, _AirService_buildEnv, "f") !== BUILD_ENV.PRODUCTION;
|
|
2645
2682
|
}
|
|
2646
|
-
async init({
|
|
2647
|
-
|
|
2648
|
-
|
|
2649
|
-
|
|
2650
|
-
|
|
2651
|
-
|
|
2652
|
-
|
|
2653
|
-
|
|
2683
|
+
async init(config) {
|
|
2684
|
+
const {
|
|
2685
|
+
buildEnv = BUILD_ENV.PRODUCTION,
|
|
2686
|
+
enableLogging = false,
|
|
2687
|
+
skipRehydration = false,
|
|
2688
|
+
sessionConfig = undefined,
|
|
2689
|
+
preloadWallet = false,
|
|
2690
|
+
preloadCredential = false,
|
|
2691
|
+
credentialNetwork = "testnet"
|
|
2692
|
+
} = config;
|
|
2654
2693
|
if (!__classPrivateFieldGet$1(this, _AirService_partnerId, "f")) throw new AirServiceError("CLIENT_ERROR", "Partner ID is required to initialize the service");
|
|
2655
2694
|
if (__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) return __classPrivateFieldGet$1(this, _AirService_loginResult, "f") ?? null;
|
|
2695
|
+
__classPrivateFieldSet(this, _AirService_credentialNetwork, buildEnv === BUILD_ENV.SANDBOX ? credentialNetwork : undefined);
|
|
2656
2696
|
configureLogLevel(buildEnv, enableLogging);
|
|
2657
2697
|
const {
|
|
2658
2698
|
authUrl,
|
|
2659
2699
|
walletUrl,
|
|
2660
2700
|
credentialUrl
|
|
2661
|
-
} =
|
|
2701
|
+
} = getAirUrls(buildEnv, __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
2662
2702
|
addResourceHints(authUrl);
|
|
2663
2703
|
if (preloadWallet) {
|
|
2664
2704
|
addResourceHints(walletUrl);
|
|
@@ -2848,9 +2888,7 @@ class AirService {
|
|
|
2848
2888
|
if (result.payload.success === false) {
|
|
2849
2889
|
throw new AirServiceError(result.payload.errorName, result.payload.errorMessage);
|
|
2850
2890
|
}
|
|
2851
|
-
return
|
|
2852
|
-
txHash: result.payload.txHash
|
|
2853
|
-
};
|
|
2891
|
+
return result.payload;
|
|
2854
2892
|
}
|
|
2855
2893
|
/**
|
|
2856
2894
|
* @experimental This feature has not been officially released and might change in the future.
|
|
@@ -2900,7 +2938,8 @@ class AirService {
|
|
|
2900
2938
|
}
|
|
2901
2939
|
}
|
|
2902
2940
|
const sessionConfig = {
|
|
2903
|
-
locale: results[0].payload.locale
|
|
2941
|
+
locale: results[0].payload.locale,
|
|
2942
|
+
currency: results[0].payload.currency
|
|
2904
2943
|
};
|
|
2905
2944
|
__classPrivateFieldSet(this, _AirService_sessionConfig, sessionConfig);
|
|
2906
2945
|
return sessionConfig;
|
|
@@ -2964,23 +3003,29 @@ class AirService {
|
|
|
2964
3003
|
authToken,
|
|
2965
3004
|
issuerDid,
|
|
2966
3005
|
credentialId,
|
|
2967
|
-
credentialSubject
|
|
3006
|
+
credentialSubject,
|
|
3007
|
+
curve
|
|
2968
3008
|
}) {
|
|
2969
3009
|
await __classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
2970
|
-
const {
|
|
2971
|
-
payload
|
|
2972
|
-
} = await __classPrivateFieldGet$1(this, _AirService_credentialMessagingService, "f").sendIssueCredentialRequest({
|
|
3010
|
+
const response = await __classPrivateFieldGet$1(this, _AirService_credentialMessagingService, "f").sendIssueCredentialRequest({
|
|
2973
3011
|
partnerToken: authToken,
|
|
2974
3012
|
issuerDid,
|
|
2975
3013
|
credentialId,
|
|
2976
|
-
credentialSubject
|
|
3014
|
+
credentialSubject,
|
|
3015
|
+
curve
|
|
2977
3016
|
});
|
|
3017
|
+
const {
|
|
3018
|
+
payload
|
|
3019
|
+
} = response;
|
|
2978
3020
|
if (payload.closeDApp) {
|
|
2979
3021
|
window.close();
|
|
2980
3022
|
}
|
|
2981
3023
|
if (payload.success === false) {
|
|
2982
3024
|
throw new AirServiceError(payload.errorName, payload.errorMessage);
|
|
2983
3025
|
}
|
|
3026
|
+
return {
|
|
3027
|
+
cakPublicKey: payload.cakPublicKey
|
|
3028
|
+
};
|
|
2984
3029
|
}
|
|
2985
3030
|
async verifyCredential({
|
|
2986
3031
|
authToken,
|
|
@@ -3001,7 +3046,7 @@ class AirService {
|
|
|
3001
3046
|
return payload.verificationResult;
|
|
3002
3047
|
}
|
|
3003
3048
|
}
|
|
3004
|
-
_AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _AirService_enableLogging = new WeakMap(), _AirService_partnerId = new WeakMap(), _AirService_sessionId = new WeakMap(), _AirService_sessionConfig = new WeakMap(), _AirService_authMessagingService = new WeakMap(), _AirService_authIframeController = new WeakMap(), _AirService_isAuthInitialized = new WeakMap(), _AirService_airEventListener = new WeakMap(), _AirService_walletMessagingService = new WeakMap(), _AirService_walletIframeController = new WeakMap(), _AirService_walletInitialization = new WeakMap(), _AirService_walletLoggedInResult = new WeakMap(), _AirService_airWalletProvider = new WeakMap(), _AirService_recoveryInitialization = new WeakMap(), _AirService_recoveryMessagingService = new WeakMap(), _AirService_recoveryIframeController = new WeakMap(), _AirService_credentialsInitialization = new WeakMap(), _AirService_credentialMessagingService = new WeakMap(), _AirService_credentialIframeController = new WeakMap(), _AirService_instances = new WeakSet(), _AirService_assertInitialized = function _AirService_assertInitialized() {
|
|
3049
|
+
_AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _AirService_enableLogging = new WeakMap(), _AirService_partnerId = new WeakMap(), _AirService_sessionId = new WeakMap(), _AirService_sessionConfig = new WeakMap(), _AirService_authMessagingService = new WeakMap(), _AirService_authIframeController = new WeakMap(), _AirService_isAuthInitialized = new WeakMap(), _AirService_airEventListener = new WeakMap(), _AirService_walletMessagingService = new WeakMap(), _AirService_walletIframeController = new WeakMap(), _AirService_walletInitialization = new WeakMap(), _AirService_walletLoggedInResult = new WeakMap(), _AirService_airWalletProvider = new WeakMap(), _AirService_recoveryInitialization = new WeakMap(), _AirService_recoveryMessagingService = new WeakMap(), _AirService_recoveryIframeController = new WeakMap(), _AirService_credentialsInitialization = new WeakMap(), _AirService_credentialMessagingService = new WeakMap(), _AirService_credentialIframeController = new WeakMap(), _AirService_credentialNetwork = new WeakMap(), _AirService_instances = new WeakSet(), _AirService_assertInitialized = function _AirService_assertInitialized() {
|
|
3005
3050
|
if (!__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) throw new AirServiceError("NOT_INITIALIZED", "Service is not initialized");
|
|
3006
3051
|
}, _AirService_assertLoggedIn = function _AirService_assertLoggedIn() {
|
|
3007
3052
|
__classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_assertInitialized).call(this);
|
|
@@ -3023,7 +3068,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3023
3068
|
}
|
|
3024
3069
|
const {
|
|
3025
3070
|
credentialUrl
|
|
3026
|
-
} =
|
|
3071
|
+
} = getAirUrls(__classPrivateFieldGet$1(this, _AirService_buildEnv, "f"), __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
3027
3072
|
const credentialIframeOrigin = new URL(credentialUrl).origin;
|
|
3028
3073
|
let closeDApp = false;
|
|
3029
3074
|
try {
|
|
@@ -3041,7 +3086,10 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3041
3086
|
sdkVersion: airKitVersion,
|
|
3042
3087
|
partnerDAppUrl: window.location.href,
|
|
3043
3088
|
enableAutomation: this.shouldEnableAutomation(),
|
|
3044
|
-
sessionConfig: __classPrivateFieldGet$1(this, _AirService_sessionConfig, "f")
|
|
3089
|
+
sessionConfig: __classPrivateFieldGet$1(this, _AirService_sessionConfig, "f"),
|
|
3090
|
+
...(__classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f") && {
|
|
3091
|
+
credentialNetwork: __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f")
|
|
3092
|
+
})
|
|
3045
3093
|
});
|
|
3046
3094
|
if (payload.success === true) {
|
|
3047
3095
|
resolve();
|
|
@@ -3117,7 +3165,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3117
3165
|
if (__classPrivateFieldGet$1(this, _AirService_walletInitialization, "f")) throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3118
3166
|
const {
|
|
3119
3167
|
walletUrl
|
|
3120
|
-
} =
|
|
3168
|
+
} = getAirUrls(__classPrivateFieldGet$1(this, _AirService_buildEnv, "f"), __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
3121
3169
|
const walletIframeOrigin = new URL(walletUrl).origin;
|
|
3122
3170
|
try {
|
|
3123
3171
|
const walletInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -3304,7 +3352,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3304
3352
|
if (__classPrivateFieldGet$1(this, _AirService_recoveryInitialization, "f")) throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3305
3353
|
const {
|
|
3306
3354
|
recoveryUrl
|
|
3307
|
-
} =
|
|
3355
|
+
} = getAirUrls(__classPrivateFieldGet$1(this, _AirService_buildEnv, "f"), __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
3308
3356
|
const recoveryIframeOrigin = new URL(recoveryUrl).origin;
|
|
3309
3357
|
try {
|
|
3310
3358
|
const recoveryInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -92,7 +92,7 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
|
|
|
92
92
|
var e = new Error(message);
|
|
93
93
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
94
94
|
};
|
|
95
|
-
var version$2 = "1.
|
|
95
|
+
var version$2 = "1.8.0-beta.2";
|
|
96
96
|
var airkitPackage = {
|
|
97
97
|
version: version$2
|
|
98
98
|
};
|
|
@@ -588,6 +588,12 @@ const BUILD_ENV = {
|
|
|
588
588
|
const IFRAME_NAME_PREFIX_SET = ["air-wallet", "air-credential", "air-auth", "air-recovery"]; // order defines the z-index from highest to lowest
|
|
589
589
|
|
|
590
590
|
const FONT_CDNS = ["https://fonts.googleapis.com", "https://fonts.gstatic.com"];
|
|
591
|
+
const SANDBOX_TESTNET_URLS = {
|
|
592
|
+
authUrl: "https://account.sandbox-testnet.air3.com/auth/",
|
|
593
|
+
walletUrl: "https://account.sandbox-testnet.air3.com/wallet/",
|
|
594
|
+
recoveryUrl: "https://account.sandbox-testnet.air3.com/recovery/",
|
|
595
|
+
credentialUrl: "https://account.sandbox-testnet.air3.com/credential/"
|
|
596
|
+
};
|
|
591
597
|
const AIR_URLS = {
|
|
592
598
|
[BUILD_ENV.DEVELOPMENT]: {
|
|
593
599
|
authUrl: "https://localhost:8200/auth/",
|
|
@@ -620,6 +626,12 @@ const AIR_URLS = {
|
|
|
620
626
|
credentialUrl: "https://account.air3.com/credential/"
|
|
621
627
|
}
|
|
622
628
|
};
|
|
629
|
+
const getAirUrls = (buildEnv, credentialNetwork) => {
|
|
630
|
+
if (buildEnv === BUILD_ENV.SANDBOX && credentialNetwork === "testnet") {
|
|
631
|
+
return SANDBOX_TESTNET_URLS;
|
|
632
|
+
}
|
|
633
|
+
return AIR_URLS[buildEnv];
|
|
634
|
+
};
|
|
623
635
|
/**
|
|
624
636
|
* Injects dns-prefetch, preconnect, and prefetch link tags
|
|
625
637
|
* for a given resource or page URL.
|
|
@@ -640,7 +652,7 @@ const addResourceHints = (url, options) => {
|
|
|
640
652
|
const link = document.createElement("link");
|
|
641
653
|
link.rel = rel;
|
|
642
654
|
link.href = href;
|
|
643
|
-
if (as)
|
|
655
|
+
if (as) ;
|
|
644
656
|
if (crossOrigin) link.crossOrigin = "anonymous";
|
|
645
657
|
head.appendChild(link);
|
|
646
658
|
};
|
|
@@ -650,8 +662,27 @@ const addResourceHints = (url, options) => {
|
|
|
650
662
|
// Preconnect (TCP + TLS warm-up)
|
|
651
663
|
addLink("preconnect", parsed.origin, undefined, isCrossOrigin);
|
|
652
664
|
// Prefetch (optional — caches the resource or HTML document)
|
|
653
|
-
if (options?.prefetch !== false) {
|
|
654
|
-
|
|
665
|
+
if (options?.prefetch !== false && HTMLScriptElement.supports && HTMLScriptElement.supports("speculationrules")) {
|
|
666
|
+
const scriptId = `speculation-${btoa(parsed.href).replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, "")}`;
|
|
667
|
+
if (!document.getElementById(scriptId)) {
|
|
668
|
+
const script = document.createElement("script");
|
|
669
|
+
script.id = scriptId;
|
|
670
|
+
script.type = "speculationrules";
|
|
671
|
+
const sources = [{
|
|
672
|
+
source: "list",
|
|
673
|
+
urls: [parsed.href],
|
|
674
|
+
eagerness: "immediate"
|
|
675
|
+
}];
|
|
676
|
+
const rules = {
|
|
677
|
+
...((options?.as ?? "document") === "document" ? {
|
|
678
|
+
prerender: sources
|
|
679
|
+
} : {
|
|
680
|
+
prefetch: sources
|
|
681
|
+
})
|
|
682
|
+
};
|
|
683
|
+
script.textContent = JSON.stringify(rules);
|
|
684
|
+
document.body.appendChild(script);
|
|
685
|
+
}
|
|
655
686
|
}
|
|
656
687
|
} catch (err) {
|
|
657
688
|
log$1.warn("[addResourceHints] Invalid URL:", url, err);
|
|
@@ -2127,7 +2158,7 @@ class IframeController {
|
|
|
2127
2158
|
if (this._iframeElement) return this._iframeElement;
|
|
2128
2159
|
const iframe = document.createElement("iframe");
|
|
2129
2160
|
iframe.id = this.iframeId;
|
|
2130
|
-
iframe.allow = "publickey-credentials-get
|
|
2161
|
+
iframe.allow = ["publickey-credentials-get *", "publickey-credentials-create *", "ch-ua-model", "ch-ua-platform-version"].join("; ");
|
|
2131
2162
|
iframe.src = this.iframeUrl;
|
|
2132
2163
|
iframe.style.position = "fixed";
|
|
2133
2164
|
iframe.style.zIndex = `${this.getZIndex()}`;
|
|
@@ -2349,7 +2380,12 @@ class WalletMessageService extends MessageServiceBase {
|
|
|
2349
2380
|
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.SHOW_SWAP_UI_RESPONSE)));
|
|
2350
2381
|
await this.sendMessage({
|
|
2351
2382
|
type: AirWalletMessageTypes.SHOW_SWAP_UI_REQUEST,
|
|
2352
|
-
payload
|
|
2383
|
+
payload: {
|
|
2384
|
+
initialFromToken: payload?.initialFromToken,
|
|
2385
|
+
fallbackFromToken: payload?.fallbackFromToken,
|
|
2386
|
+
initialToToken: payload?.initialToToken,
|
|
2387
|
+
defaultSlippage: payload?.defaultSlippage?.toString() // TODO refactor to all be numbers
|
|
2388
|
+
}
|
|
2353
2389
|
});
|
|
2354
2390
|
return response;
|
|
2355
2391
|
}
|
|
@@ -2572,7 +2608,7 @@ class WindowService {
|
|
|
2572
2608
|
}
|
|
2573
2609
|
}
|
|
2574
2610
|
var WindowService$1 = WindowService.instance;
|
|
2575
|
-
var _AirService_instances, _AirService_loginResult, _AirService_buildEnv, _AirService_enableLogging, _AirService_partnerId, _AirService_sessionId, _AirService_sessionConfig, _AirService_authMessagingService, _AirService_authIframeController, _AirService_isAuthInitialized, _AirService_airEventListener, _AirService_walletMessagingService, _AirService_walletIframeController, _AirService_walletInitialization, _AirService_walletLoggedInResult, _AirService_airWalletProvider, _AirService_recoveryInitialization, _AirService_recoveryMessagingService, _AirService_recoveryIframeController, _AirService_credentialsInitialization, _AirService_credentialMessagingService, _AirService_credentialIframeController, _AirService_assertInitialized, _AirService_assertLoggedIn, _AirService_ensureCredential, _AirService_initializeCredentials, _AirService_subscribeToCredentialEvents, _AirService_cleanUpCredential, _AirService_ensureWallet, _AirService_initializeWallet, _AirService_subscribeToWalletEvents, _AirService_triggerEventListeners, _AirService_triggerAirAuthInitialized, _AirService_triggerAirAuthLoggedIn, _AirService_triggerAirAuthLoggedOut, _AirService_triggerWalletInitialized, _AirService_createLoginResult, _AirService_createWalletInitializedResult, _AirService_cleanUpAuth, _AirService_cleanUpWallet, _AirService_ensureRecovery, _AirService_initializeRecovery, _AirService_subscribeToRecoveryEvents, _AirService_cleanUpRecovery;
|
|
2611
|
+
var _AirService_instances, _AirService_loginResult, _AirService_buildEnv, _AirService_enableLogging, _AirService_partnerId, _AirService_sessionId, _AirService_sessionConfig, _AirService_authMessagingService, _AirService_authIframeController, _AirService_isAuthInitialized, _AirService_airEventListener, _AirService_walletMessagingService, _AirService_walletIframeController, _AirService_walletInitialization, _AirService_walletLoggedInResult, _AirService_airWalletProvider, _AirService_recoveryInitialization, _AirService_recoveryMessagingService, _AirService_recoveryIframeController, _AirService_credentialsInitialization, _AirService_credentialMessagingService, _AirService_credentialIframeController, _AirService_credentialNetwork, _AirService_assertInitialized, _AirService_assertLoggedIn, _AirService_ensureCredential, _AirService_initializeCredentials, _AirService_subscribeToCredentialEvents, _AirService_cleanUpCredential, _AirService_ensureWallet, _AirService_initializeWallet, _AirService_subscribeToWalletEvents, _AirService_triggerEventListeners, _AirService_triggerAirAuthInitialized, _AirService_triggerAirAuthLoggedIn, _AirService_triggerAirAuthLoggedOut, _AirService_triggerWalletInitialized, _AirService_createLoginResult, _AirService_createWalletInitializedResult, _AirService_cleanUpAuth, _AirService_cleanUpWallet, _AirService_ensureRecovery, _AirService_initializeRecovery, _AirService_subscribeToRecoveryEvents, _AirService_cleanUpRecovery;
|
|
2576
2612
|
const airKitVersion = airkitPackage.version;
|
|
2577
2613
|
class AirService {
|
|
2578
2614
|
constructor({
|
|
@@ -2601,6 +2637,7 @@ class AirService {
|
|
|
2601
2637
|
_AirService_credentialsInitialization.set(this, void 0);
|
|
2602
2638
|
_AirService_credentialMessagingService.set(this, void 0);
|
|
2603
2639
|
_AirService_credentialIframeController.set(this, void 0);
|
|
2640
|
+
_AirService_credentialNetwork.set(this, void 0);
|
|
2604
2641
|
__classPrivateFieldSet(this, _AirService_partnerId, partnerId);
|
|
2605
2642
|
__classPrivateFieldSet(this, _AirService_authMessagingService, AuthMessageService.create());
|
|
2606
2643
|
__classPrivateFieldSet(this, _AirService_walletMessagingService, WalletMessageService.create());
|
|
@@ -2641,22 +2678,25 @@ class AirService {
|
|
|
2641
2678
|
shouldEnableAutomation() {
|
|
2642
2679
|
return localStorage.getItem("automation") === "true" && __classPrivateFieldGet$1(this, _AirService_buildEnv, "f") !== BUILD_ENV.PRODUCTION;
|
|
2643
2680
|
}
|
|
2644
|
-
async init({
|
|
2645
|
-
|
|
2646
|
-
|
|
2647
|
-
|
|
2648
|
-
|
|
2649
|
-
|
|
2650
|
-
|
|
2651
|
-
|
|
2681
|
+
async init(config) {
|
|
2682
|
+
const {
|
|
2683
|
+
buildEnv = BUILD_ENV.PRODUCTION,
|
|
2684
|
+
enableLogging = false,
|
|
2685
|
+
skipRehydration = false,
|
|
2686
|
+
sessionConfig = undefined,
|
|
2687
|
+
preloadWallet = false,
|
|
2688
|
+
preloadCredential = false,
|
|
2689
|
+
credentialNetwork = "testnet"
|
|
2690
|
+
} = config;
|
|
2652
2691
|
if (!__classPrivateFieldGet$1(this, _AirService_partnerId, "f")) throw new AirServiceError("CLIENT_ERROR", "Partner ID is required to initialize the service");
|
|
2653
2692
|
if (__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) return __classPrivateFieldGet$1(this, _AirService_loginResult, "f") ?? null;
|
|
2693
|
+
__classPrivateFieldSet(this, _AirService_credentialNetwork, buildEnv === BUILD_ENV.SANDBOX ? credentialNetwork : undefined);
|
|
2654
2694
|
configureLogLevel(buildEnv, enableLogging);
|
|
2655
2695
|
const {
|
|
2656
2696
|
authUrl,
|
|
2657
2697
|
walletUrl,
|
|
2658
2698
|
credentialUrl
|
|
2659
|
-
} =
|
|
2699
|
+
} = getAirUrls(buildEnv, __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
2660
2700
|
addResourceHints(authUrl);
|
|
2661
2701
|
if (preloadWallet) {
|
|
2662
2702
|
addResourceHints(walletUrl);
|
|
@@ -2846,9 +2886,7 @@ class AirService {
|
|
|
2846
2886
|
if (result.payload.success === false) {
|
|
2847
2887
|
throw new AirServiceError(result.payload.errorName, result.payload.errorMessage);
|
|
2848
2888
|
}
|
|
2849
|
-
return
|
|
2850
|
-
txHash: result.payload.txHash
|
|
2851
|
-
};
|
|
2889
|
+
return result.payload;
|
|
2852
2890
|
}
|
|
2853
2891
|
/**
|
|
2854
2892
|
* @experimental This feature has not been officially released and might change in the future.
|
|
@@ -2898,7 +2936,8 @@ class AirService {
|
|
|
2898
2936
|
}
|
|
2899
2937
|
}
|
|
2900
2938
|
const sessionConfig = {
|
|
2901
|
-
locale: results[0].payload.locale
|
|
2939
|
+
locale: results[0].payload.locale,
|
|
2940
|
+
currency: results[0].payload.currency
|
|
2902
2941
|
};
|
|
2903
2942
|
__classPrivateFieldSet(this, _AirService_sessionConfig, sessionConfig);
|
|
2904
2943
|
return sessionConfig;
|
|
@@ -2962,23 +3001,29 @@ class AirService {
|
|
|
2962
3001
|
authToken,
|
|
2963
3002
|
issuerDid,
|
|
2964
3003
|
credentialId,
|
|
2965
|
-
credentialSubject
|
|
3004
|
+
credentialSubject,
|
|
3005
|
+
curve
|
|
2966
3006
|
}) {
|
|
2967
3007
|
await __classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
2968
|
-
const {
|
|
2969
|
-
payload
|
|
2970
|
-
} = await __classPrivateFieldGet$1(this, _AirService_credentialMessagingService, "f").sendIssueCredentialRequest({
|
|
3008
|
+
const response = await __classPrivateFieldGet$1(this, _AirService_credentialMessagingService, "f").sendIssueCredentialRequest({
|
|
2971
3009
|
partnerToken: authToken,
|
|
2972
3010
|
issuerDid,
|
|
2973
3011
|
credentialId,
|
|
2974
|
-
credentialSubject
|
|
3012
|
+
credentialSubject,
|
|
3013
|
+
curve
|
|
2975
3014
|
});
|
|
3015
|
+
const {
|
|
3016
|
+
payload
|
|
3017
|
+
} = response;
|
|
2976
3018
|
if (payload.closeDApp) {
|
|
2977
3019
|
window.close();
|
|
2978
3020
|
}
|
|
2979
3021
|
if (payload.success === false) {
|
|
2980
3022
|
throw new AirServiceError(payload.errorName, payload.errorMessage);
|
|
2981
3023
|
}
|
|
3024
|
+
return {
|
|
3025
|
+
cakPublicKey: payload.cakPublicKey
|
|
3026
|
+
};
|
|
2982
3027
|
}
|
|
2983
3028
|
async verifyCredential({
|
|
2984
3029
|
authToken,
|
|
@@ -2999,7 +3044,7 @@ class AirService {
|
|
|
2999
3044
|
return payload.verificationResult;
|
|
3000
3045
|
}
|
|
3001
3046
|
}
|
|
3002
|
-
_AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _AirService_enableLogging = new WeakMap(), _AirService_partnerId = new WeakMap(), _AirService_sessionId = new WeakMap(), _AirService_sessionConfig = new WeakMap(), _AirService_authMessagingService = new WeakMap(), _AirService_authIframeController = new WeakMap(), _AirService_isAuthInitialized = new WeakMap(), _AirService_airEventListener = new WeakMap(), _AirService_walletMessagingService = new WeakMap(), _AirService_walletIframeController = new WeakMap(), _AirService_walletInitialization = new WeakMap(), _AirService_walletLoggedInResult = new WeakMap(), _AirService_airWalletProvider = new WeakMap(), _AirService_recoveryInitialization = new WeakMap(), _AirService_recoveryMessagingService = new WeakMap(), _AirService_recoveryIframeController = new WeakMap(), _AirService_credentialsInitialization = new WeakMap(), _AirService_credentialMessagingService = new WeakMap(), _AirService_credentialIframeController = new WeakMap(), _AirService_instances = new WeakSet(), _AirService_assertInitialized = function _AirService_assertInitialized() {
|
|
3047
|
+
_AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _AirService_enableLogging = new WeakMap(), _AirService_partnerId = new WeakMap(), _AirService_sessionId = new WeakMap(), _AirService_sessionConfig = new WeakMap(), _AirService_authMessagingService = new WeakMap(), _AirService_authIframeController = new WeakMap(), _AirService_isAuthInitialized = new WeakMap(), _AirService_airEventListener = new WeakMap(), _AirService_walletMessagingService = new WeakMap(), _AirService_walletIframeController = new WeakMap(), _AirService_walletInitialization = new WeakMap(), _AirService_walletLoggedInResult = new WeakMap(), _AirService_airWalletProvider = new WeakMap(), _AirService_recoveryInitialization = new WeakMap(), _AirService_recoveryMessagingService = new WeakMap(), _AirService_recoveryIframeController = new WeakMap(), _AirService_credentialsInitialization = new WeakMap(), _AirService_credentialMessagingService = new WeakMap(), _AirService_credentialIframeController = new WeakMap(), _AirService_credentialNetwork = new WeakMap(), _AirService_instances = new WeakSet(), _AirService_assertInitialized = function _AirService_assertInitialized() {
|
|
3003
3048
|
if (!__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) throw new AirServiceError("NOT_INITIALIZED", "Service is not initialized");
|
|
3004
3049
|
}, _AirService_assertLoggedIn = function _AirService_assertLoggedIn() {
|
|
3005
3050
|
__classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_assertInitialized).call(this);
|
|
@@ -3021,7 +3066,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3021
3066
|
}
|
|
3022
3067
|
const {
|
|
3023
3068
|
credentialUrl
|
|
3024
|
-
} =
|
|
3069
|
+
} = getAirUrls(__classPrivateFieldGet$1(this, _AirService_buildEnv, "f"), __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
3025
3070
|
const credentialIframeOrigin = new URL(credentialUrl).origin;
|
|
3026
3071
|
let closeDApp = false;
|
|
3027
3072
|
try {
|
|
@@ -3039,7 +3084,10 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3039
3084
|
sdkVersion: airKitVersion,
|
|
3040
3085
|
partnerDAppUrl: window.location.href,
|
|
3041
3086
|
enableAutomation: this.shouldEnableAutomation(),
|
|
3042
|
-
sessionConfig: __classPrivateFieldGet$1(this, _AirService_sessionConfig, "f")
|
|
3087
|
+
sessionConfig: __classPrivateFieldGet$1(this, _AirService_sessionConfig, "f"),
|
|
3088
|
+
...(__classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f") && {
|
|
3089
|
+
credentialNetwork: __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f")
|
|
3090
|
+
})
|
|
3043
3091
|
});
|
|
3044
3092
|
if (payload.success === true) {
|
|
3045
3093
|
resolve();
|
|
@@ -3115,7 +3163,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3115
3163
|
if (__classPrivateFieldGet$1(this, _AirService_walletInitialization, "f")) throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3116
3164
|
const {
|
|
3117
3165
|
walletUrl
|
|
3118
|
-
} =
|
|
3166
|
+
} = getAirUrls(__classPrivateFieldGet$1(this, _AirService_buildEnv, "f"), __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
3119
3167
|
const walletIframeOrigin = new URL(walletUrl).origin;
|
|
3120
3168
|
try {
|
|
3121
3169
|
const walletInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -3302,7 +3350,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3302
3350
|
if (__classPrivateFieldGet$1(this, _AirService_recoveryInitialization, "f")) throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3303
3351
|
const {
|
|
3304
3352
|
recoveryUrl
|
|
3305
|
-
} =
|
|
3353
|
+
} = getAirUrls(__classPrivateFieldGet$1(this, _AirService_buildEnv, "f"), __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
3306
3354
|
const recoveryIframeOrigin = new URL(recoveryUrl).origin;
|
|
3307
3355
|
try {
|
|
3308
3356
|
const recoveryInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
var e = new Error(message);
|
|
99
99
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
100
100
|
};
|
|
101
|
-
var version$2 = "1.
|
|
101
|
+
var version$2 = "1.8.0-beta.2";
|
|
102
102
|
var airkitPackage = {
|
|
103
103
|
version: version$2
|
|
104
104
|
};
|
|
@@ -594,6 +594,12 @@
|
|
|
594
594
|
const IFRAME_NAME_PREFIX_SET = ["air-wallet", "air-credential", "air-auth", "air-recovery"]; // order defines the z-index from highest to lowest
|
|
595
595
|
|
|
596
596
|
const FONT_CDNS = ["https://fonts.googleapis.com", "https://fonts.gstatic.com"];
|
|
597
|
+
const SANDBOX_TESTNET_URLS = {
|
|
598
|
+
authUrl: "https://account.sandbox-testnet.air3.com/auth/",
|
|
599
|
+
walletUrl: "https://account.sandbox-testnet.air3.com/wallet/",
|
|
600
|
+
recoveryUrl: "https://account.sandbox-testnet.air3.com/recovery/",
|
|
601
|
+
credentialUrl: "https://account.sandbox-testnet.air3.com/credential/"
|
|
602
|
+
};
|
|
597
603
|
const AIR_URLS = {
|
|
598
604
|
[BUILD_ENV.DEVELOPMENT]: {
|
|
599
605
|
authUrl: "https://localhost:8200/auth/",
|
|
@@ -626,6 +632,12 @@
|
|
|
626
632
|
credentialUrl: "https://account.air3.com/credential/"
|
|
627
633
|
}
|
|
628
634
|
};
|
|
635
|
+
const getAirUrls = (buildEnv, credentialNetwork) => {
|
|
636
|
+
if (buildEnv === BUILD_ENV.SANDBOX && credentialNetwork === "testnet") {
|
|
637
|
+
return SANDBOX_TESTNET_URLS;
|
|
638
|
+
}
|
|
639
|
+
return AIR_URLS[buildEnv];
|
|
640
|
+
};
|
|
629
641
|
/**
|
|
630
642
|
* Injects dns-prefetch, preconnect, and prefetch link tags
|
|
631
643
|
* for a given resource or page URL.
|
|
@@ -646,7 +658,7 @@
|
|
|
646
658
|
const link = document.createElement("link");
|
|
647
659
|
link.rel = rel;
|
|
648
660
|
link.href = href;
|
|
649
|
-
if (as)
|
|
661
|
+
if (as) ;
|
|
650
662
|
if (crossOrigin) link.crossOrigin = "anonymous";
|
|
651
663
|
head.appendChild(link);
|
|
652
664
|
};
|
|
@@ -656,8 +668,27 @@
|
|
|
656
668
|
// Preconnect (TCP + TLS warm-up)
|
|
657
669
|
addLink("preconnect", parsed.origin, undefined, isCrossOrigin);
|
|
658
670
|
// Prefetch (optional — caches the resource or HTML document)
|
|
659
|
-
if (options?.prefetch !== false) {
|
|
660
|
-
|
|
671
|
+
if (options?.prefetch !== false && HTMLScriptElement.supports && HTMLScriptElement.supports("speculationrules")) {
|
|
672
|
+
const scriptId = `speculation-${btoa(parsed.href).replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, "")}`;
|
|
673
|
+
if (!document.getElementById(scriptId)) {
|
|
674
|
+
const script = document.createElement("script");
|
|
675
|
+
script.id = scriptId;
|
|
676
|
+
script.type = "speculationrules";
|
|
677
|
+
const sources = [{
|
|
678
|
+
source: "list",
|
|
679
|
+
urls: [parsed.href],
|
|
680
|
+
eagerness: "immediate"
|
|
681
|
+
}];
|
|
682
|
+
const rules = {
|
|
683
|
+
...((options?.as ?? "document") === "document" ? {
|
|
684
|
+
prerender: sources
|
|
685
|
+
} : {
|
|
686
|
+
prefetch: sources
|
|
687
|
+
})
|
|
688
|
+
};
|
|
689
|
+
script.textContent = JSON.stringify(rules);
|
|
690
|
+
document.body.appendChild(script);
|
|
691
|
+
}
|
|
661
692
|
}
|
|
662
693
|
} catch (err) {
|
|
663
694
|
log$1.warn("[addResourceHints] Invalid URL:", url, err);
|
|
@@ -2133,7 +2164,7 @@
|
|
|
2133
2164
|
if (this._iframeElement) return this._iframeElement;
|
|
2134
2165
|
const iframe = document.createElement("iframe");
|
|
2135
2166
|
iframe.id = this.iframeId;
|
|
2136
|
-
iframe.allow = "publickey-credentials-get
|
|
2167
|
+
iframe.allow = ["publickey-credentials-get *", "publickey-credentials-create *", "ch-ua-model", "ch-ua-platform-version"].join("; ");
|
|
2137
2168
|
iframe.src = this.iframeUrl;
|
|
2138
2169
|
iframe.style.position = "fixed";
|
|
2139
2170
|
iframe.style.zIndex = `${this.getZIndex()}`;
|
|
@@ -2355,7 +2386,12 @@
|
|
|
2355
2386
|
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.SHOW_SWAP_UI_RESPONSE)));
|
|
2356
2387
|
await this.sendMessage({
|
|
2357
2388
|
type: AirWalletMessageTypes.SHOW_SWAP_UI_REQUEST,
|
|
2358
|
-
payload
|
|
2389
|
+
payload: {
|
|
2390
|
+
initialFromToken: payload?.initialFromToken,
|
|
2391
|
+
fallbackFromToken: payload?.fallbackFromToken,
|
|
2392
|
+
initialToToken: payload?.initialToToken,
|
|
2393
|
+
defaultSlippage: payload?.defaultSlippage?.toString() // TODO refactor to all be numbers
|
|
2394
|
+
}
|
|
2359
2395
|
});
|
|
2360
2396
|
return response;
|
|
2361
2397
|
}
|
|
@@ -2578,7 +2614,7 @@
|
|
|
2578
2614
|
}
|
|
2579
2615
|
}
|
|
2580
2616
|
var WindowService$1 = WindowService.instance;
|
|
2581
|
-
var _AirService_instances, _AirService_loginResult, _AirService_buildEnv, _AirService_enableLogging, _AirService_partnerId, _AirService_sessionId, _AirService_sessionConfig, _AirService_authMessagingService, _AirService_authIframeController, _AirService_isAuthInitialized, _AirService_airEventListener, _AirService_walletMessagingService, _AirService_walletIframeController, _AirService_walletInitialization, _AirService_walletLoggedInResult, _AirService_airWalletProvider, _AirService_recoveryInitialization, _AirService_recoveryMessagingService, _AirService_recoveryIframeController, _AirService_credentialsInitialization, _AirService_credentialMessagingService, _AirService_credentialIframeController, _AirService_assertInitialized, _AirService_assertLoggedIn, _AirService_ensureCredential, _AirService_initializeCredentials, _AirService_subscribeToCredentialEvents, _AirService_cleanUpCredential, _AirService_ensureWallet, _AirService_initializeWallet, _AirService_subscribeToWalletEvents, _AirService_triggerEventListeners, _AirService_triggerAirAuthInitialized, _AirService_triggerAirAuthLoggedIn, _AirService_triggerAirAuthLoggedOut, _AirService_triggerWalletInitialized, _AirService_createLoginResult, _AirService_createWalletInitializedResult, _AirService_cleanUpAuth, _AirService_cleanUpWallet, _AirService_ensureRecovery, _AirService_initializeRecovery, _AirService_subscribeToRecoveryEvents, _AirService_cleanUpRecovery;
|
|
2617
|
+
var _AirService_instances, _AirService_loginResult, _AirService_buildEnv, _AirService_enableLogging, _AirService_partnerId, _AirService_sessionId, _AirService_sessionConfig, _AirService_authMessagingService, _AirService_authIframeController, _AirService_isAuthInitialized, _AirService_airEventListener, _AirService_walletMessagingService, _AirService_walletIframeController, _AirService_walletInitialization, _AirService_walletLoggedInResult, _AirService_airWalletProvider, _AirService_recoveryInitialization, _AirService_recoveryMessagingService, _AirService_recoveryIframeController, _AirService_credentialsInitialization, _AirService_credentialMessagingService, _AirService_credentialIframeController, _AirService_credentialNetwork, _AirService_assertInitialized, _AirService_assertLoggedIn, _AirService_ensureCredential, _AirService_initializeCredentials, _AirService_subscribeToCredentialEvents, _AirService_cleanUpCredential, _AirService_ensureWallet, _AirService_initializeWallet, _AirService_subscribeToWalletEvents, _AirService_triggerEventListeners, _AirService_triggerAirAuthInitialized, _AirService_triggerAirAuthLoggedIn, _AirService_triggerAirAuthLoggedOut, _AirService_triggerWalletInitialized, _AirService_createLoginResult, _AirService_createWalletInitializedResult, _AirService_cleanUpAuth, _AirService_cleanUpWallet, _AirService_ensureRecovery, _AirService_initializeRecovery, _AirService_subscribeToRecoveryEvents, _AirService_cleanUpRecovery;
|
|
2582
2618
|
const airKitVersion = airkitPackage.version;
|
|
2583
2619
|
class AirService {
|
|
2584
2620
|
constructor({
|
|
@@ -2607,6 +2643,7 @@
|
|
|
2607
2643
|
_AirService_credentialsInitialization.set(this, void 0);
|
|
2608
2644
|
_AirService_credentialMessagingService.set(this, void 0);
|
|
2609
2645
|
_AirService_credentialIframeController.set(this, void 0);
|
|
2646
|
+
_AirService_credentialNetwork.set(this, void 0);
|
|
2610
2647
|
__classPrivateFieldSet(this, _AirService_partnerId, partnerId);
|
|
2611
2648
|
__classPrivateFieldSet(this, _AirService_authMessagingService, AuthMessageService.create());
|
|
2612
2649
|
__classPrivateFieldSet(this, _AirService_walletMessagingService, WalletMessageService.create());
|
|
@@ -2647,22 +2684,25 @@
|
|
|
2647
2684
|
shouldEnableAutomation() {
|
|
2648
2685
|
return localStorage.getItem("automation") === "true" && __classPrivateFieldGet$1(this, _AirService_buildEnv, "f") !== BUILD_ENV.PRODUCTION;
|
|
2649
2686
|
}
|
|
2650
|
-
async init({
|
|
2651
|
-
|
|
2652
|
-
|
|
2653
|
-
|
|
2654
|
-
|
|
2655
|
-
|
|
2656
|
-
|
|
2657
|
-
|
|
2687
|
+
async init(config) {
|
|
2688
|
+
const {
|
|
2689
|
+
buildEnv = BUILD_ENV.PRODUCTION,
|
|
2690
|
+
enableLogging = false,
|
|
2691
|
+
skipRehydration = false,
|
|
2692
|
+
sessionConfig = undefined,
|
|
2693
|
+
preloadWallet = false,
|
|
2694
|
+
preloadCredential = false,
|
|
2695
|
+
credentialNetwork = "testnet"
|
|
2696
|
+
} = config;
|
|
2658
2697
|
if (!__classPrivateFieldGet$1(this, _AirService_partnerId, "f")) throw new AirServiceError("CLIENT_ERROR", "Partner ID is required to initialize the service");
|
|
2659
2698
|
if (__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) return __classPrivateFieldGet$1(this, _AirService_loginResult, "f") ?? null;
|
|
2699
|
+
__classPrivateFieldSet(this, _AirService_credentialNetwork, buildEnv === BUILD_ENV.SANDBOX ? credentialNetwork : undefined);
|
|
2660
2700
|
configureLogLevel(buildEnv, enableLogging);
|
|
2661
2701
|
const {
|
|
2662
2702
|
authUrl,
|
|
2663
2703
|
walletUrl,
|
|
2664
2704
|
credentialUrl
|
|
2665
|
-
} =
|
|
2705
|
+
} = getAirUrls(buildEnv, __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
2666
2706
|
addResourceHints(authUrl);
|
|
2667
2707
|
if (preloadWallet) {
|
|
2668
2708
|
addResourceHints(walletUrl);
|
|
@@ -2852,9 +2892,7 @@
|
|
|
2852
2892
|
if (result.payload.success === false) {
|
|
2853
2893
|
throw new AirServiceError(result.payload.errorName, result.payload.errorMessage);
|
|
2854
2894
|
}
|
|
2855
|
-
return
|
|
2856
|
-
txHash: result.payload.txHash
|
|
2857
|
-
};
|
|
2895
|
+
return result.payload;
|
|
2858
2896
|
}
|
|
2859
2897
|
/**
|
|
2860
2898
|
* @experimental This feature has not been officially released and might change in the future.
|
|
@@ -2904,7 +2942,8 @@
|
|
|
2904
2942
|
}
|
|
2905
2943
|
}
|
|
2906
2944
|
const sessionConfig = {
|
|
2907
|
-
locale: results[0].payload.locale
|
|
2945
|
+
locale: results[0].payload.locale,
|
|
2946
|
+
currency: results[0].payload.currency
|
|
2908
2947
|
};
|
|
2909
2948
|
__classPrivateFieldSet(this, _AirService_sessionConfig, sessionConfig);
|
|
2910
2949
|
return sessionConfig;
|
|
@@ -2968,23 +3007,29 @@
|
|
|
2968
3007
|
authToken,
|
|
2969
3008
|
issuerDid,
|
|
2970
3009
|
credentialId,
|
|
2971
|
-
credentialSubject
|
|
3010
|
+
credentialSubject,
|
|
3011
|
+
curve
|
|
2972
3012
|
}) {
|
|
2973
3013
|
await __classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
2974
|
-
const {
|
|
2975
|
-
payload
|
|
2976
|
-
} = await __classPrivateFieldGet$1(this, _AirService_credentialMessagingService, "f").sendIssueCredentialRequest({
|
|
3014
|
+
const response = await __classPrivateFieldGet$1(this, _AirService_credentialMessagingService, "f").sendIssueCredentialRequest({
|
|
2977
3015
|
partnerToken: authToken,
|
|
2978
3016
|
issuerDid,
|
|
2979
3017
|
credentialId,
|
|
2980
|
-
credentialSubject
|
|
3018
|
+
credentialSubject,
|
|
3019
|
+
curve
|
|
2981
3020
|
});
|
|
3021
|
+
const {
|
|
3022
|
+
payload
|
|
3023
|
+
} = response;
|
|
2982
3024
|
if (payload.closeDApp) {
|
|
2983
3025
|
window.close();
|
|
2984
3026
|
}
|
|
2985
3027
|
if (payload.success === false) {
|
|
2986
3028
|
throw new AirServiceError(payload.errorName, payload.errorMessage);
|
|
2987
3029
|
}
|
|
3030
|
+
return {
|
|
3031
|
+
cakPublicKey: payload.cakPublicKey
|
|
3032
|
+
};
|
|
2988
3033
|
}
|
|
2989
3034
|
async verifyCredential({
|
|
2990
3035
|
authToken,
|
|
@@ -3005,7 +3050,7 @@
|
|
|
3005
3050
|
return payload.verificationResult;
|
|
3006
3051
|
}
|
|
3007
3052
|
}
|
|
3008
|
-
_AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _AirService_enableLogging = new WeakMap(), _AirService_partnerId = new WeakMap(), _AirService_sessionId = new WeakMap(), _AirService_sessionConfig = new WeakMap(), _AirService_authMessagingService = new WeakMap(), _AirService_authIframeController = new WeakMap(), _AirService_isAuthInitialized = new WeakMap(), _AirService_airEventListener = new WeakMap(), _AirService_walletMessagingService = new WeakMap(), _AirService_walletIframeController = new WeakMap(), _AirService_walletInitialization = new WeakMap(), _AirService_walletLoggedInResult = new WeakMap(), _AirService_airWalletProvider = new WeakMap(), _AirService_recoveryInitialization = new WeakMap(), _AirService_recoveryMessagingService = new WeakMap(), _AirService_recoveryIframeController = new WeakMap(), _AirService_credentialsInitialization = new WeakMap(), _AirService_credentialMessagingService = new WeakMap(), _AirService_credentialIframeController = new WeakMap(), _AirService_instances = new WeakSet(), _AirService_assertInitialized = function _AirService_assertInitialized() {
|
|
3053
|
+
_AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _AirService_enableLogging = new WeakMap(), _AirService_partnerId = new WeakMap(), _AirService_sessionId = new WeakMap(), _AirService_sessionConfig = new WeakMap(), _AirService_authMessagingService = new WeakMap(), _AirService_authIframeController = new WeakMap(), _AirService_isAuthInitialized = new WeakMap(), _AirService_airEventListener = new WeakMap(), _AirService_walletMessagingService = new WeakMap(), _AirService_walletIframeController = new WeakMap(), _AirService_walletInitialization = new WeakMap(), _AirService_walletLoggedInResult = new WeakMap(), _AirService_airWalletProvider = new WeakMap(), _AirService_recoveryInitialization = new WeakMap(), _AirService_recoveryMessagingService = new WeakMap(), _AirService_recoveryIframeController = new WeakMap(), _AirService_credentialsInitialization = new WeakMap(), _AirService_credentialMessagingService = new WeakMap(), _AirService_credentialIframeController = new WeakMap(), _AirService_credentialNetwork = new WeakMap(), _AirService_instances = new WeakSet(), _AirService_assertInitialized = function _AirService_assertInitialized() {
|
|
3009
3054
|
if (!__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) throw new AirServiceError("NOT_INITIALIZED", "Service is not initialized");
|
|
3010
3055
|
}, _AirService_assertLoggedIn = function _AirService_assertLoggedIn() {
|
|
3011
3056
|
__classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_assertInitialized).call(this);
|
|
@@ -3027,7 +3072,7 @@
|
|
|
3027
3072
|
}
|
|
3028
3073
|
const {
|
|
3029
3074
|
credentialUrl
|
|
3030
|
-
} =
|
|
3075
|
+
} = getAirUrls(__classPrivateFieldGet$1(this, _AirService_buildEnv, "f"), __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
3031
3076
|
const credentialIframeOrigin = new URL(credentialUrl).origin;
|
|
3032
3077
|
let closeDApp = false;
|
|
3033
3078
|
try {
|
|
@@ -3045,7 +3090,10 @@
|
|
|
3045
3090
|
sdkVersion: airKitVersion,
|
|
3046
3091
|
partnerDAppUrl: window.location.href,
|
|
3047
3092
|
enableAutomation: this.shouldEnableAutomation(),
|
|
3048
|
-
sessionConfig: __classPrivateFieldGet$1(this, _AirService_sessionConfig, "f")
|
|
3093
|
+
sessionConfig: __classPrivateFieldGet$1(this, _AirService_sessionConfig, "f"),
|
|
3094
|
+
...(__classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f") && {
|
|
3095
|
+
credentialNetwork: __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f")
|
|
3096
|
+
})
|
|
3049
3097
|
});
|
|
3050
3098
|
if (payload.success === true) {
|
|
3051
3099
|
resolve();
|
|
@@ -3121,7 +3169,7 @@
|
|
|
3121
3169
|
if (__classPrivateFieldGet$1(this, _AirService_walletInitialization, "f")) throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3122
3170
|
const {
|
|
3123
3171
|
walletUrl
|
|
3124
|
-
} =
|
|
3172
|
+
} = getAirUrls(__classPrivateFieldGet$1(this, _AirService_buildEnv, "f"), __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
3125
3173
|
const walletIframeOrigin = new URL(walletUrl).origin;
|
|
3126
3174
|
try {
|
|
3127
3175
|
const walletInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -3308,7 +3356,7 @@
|
|
|
3308
3356
|
if (__classPrivateFieldGet$1(this, _AirService_recoveryInitialization, "f")) throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3309
3357
|
const {
|
|
3310
3358
|
recoveryUrl
|
|
3311
|
-
} =
|
|
3359
|
+
} = getAirUrls(__classPrivateFieldGet$1(this, _AirService_buildEnv, "f"), __classPrivateFieldGet$1(this, _AirService_credentialNetwork, "f"));
|
|
3312
3360
|
const recoveryIframeOrigin = new URL(recoveryUrl).origin;
|
|
3313
3361
|
try {
|
|
3314
3362
|
const recoveryInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export type Environment = "development" | "staging" | "uat" | "sandbox" | "production";
|
|
2
|
+
export type Hex = `0x${string}`;
|
|
3
|
+
export type Jsonable = string | number | boolean | null | undefined | readonly Jsonable[] | {
|
|
4
|
+
readonly [key: string]: Jsonable;
|
|
5
|
+
} | {
|
|
6
|
+
toJSON(): Jsonable;
|
|
7
|
+
};
|
|
8
|
+
export type Optional<T, K extends keyof T> = Omit<T, K> & {
|
|
9
|
+
[P in keyof T]?: T[P] | undefined;
|
|
10
|
+
};
|
|
11
|
+
export type IntersectionToUnion<T> = {
|
|
12
|
+
[K in keyof T]: (x: T[K]) => void;
|
|
13
|
+
}[keyof T] extends (x: infer U) => void ? U : never;
|
|
14
|
+
export type FixedArray<T, N extends number, Acc extends T[] = []> = Acc["length"] extends N ? Acc : FixedArray<T, N, [...Acc, T]>;
|
|
15
|
+
export type TokenSymbol = {
|
|
16
|
+
symbol: string;
|
|
17
|
+
chainId: number;
|
|
18
|
+
};
|
|
19
|
+
export type Token = TokenSymbol & {
|
|
20
|
+
decimals: number;
|
|
21
|
+
address: `0x${string}`;
|
|
22
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mocanetwork/airkit-connector",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.8.0-beta.2",
|
|
4
4
|
"description": "AirKit wagmi connector to connect with the AirService",
|
|
5
5
|
"main": "dist/airkitConnector.cjs.js",
|
|
6
6
|
"unpkg": "dist/airkitConnector.umd.min.js",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"check-circular": "madge -c --ts-config=tsconfig.json --extensions ts ./src"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@mocanetwork/airkit": "^1.
|
|
27
|
+
"@mocanetwork/airkit": "^1.8.0-beta.2",
|
|
28
28
|
"@wagmi/core": "^2.x",
|
|
29
29
|
"loglevel": "^1.8.1",
|
|
30
30
|
"viem": "^2.x"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|