@mocanetwork/airkit 1.7.0 → 1.8.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/airkit.cjs.js +70 -18
- package/dist/airkit.esm.js +70 -18
- package/dist/airkit.umd.js +70 -18
- package/dist/types/airService.d.ts +15 -7
- package/dist/types/common/air/messaging/credential.d.ts +4 -0
- package/dist/types/common/const.d.ts +4 -2
- package/dist/types/common/provider/types.d.ts +12 -1
- package/dist/types/common/realm/user/types.d.ts +1 -0
- package/dist/types/interfaces.d.ts +1 -0
- package/dist/types/utils.d.ts +3 -4
- package/package.json +2 -2
package/dist/airkit.cjs.js
CHANGED
|
@@ -97,7 +97,7 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
|
|
|
97
97
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
98
98
|
};
|
|
99
99
|
|
|
100
|
-
var version = "1.
|
|
100
|
+
var version = "1.8.0-beta.0";
|
|
101
101
|
var airkitPackage = {
|
|
102
102
|
version: version};
|
|
103
103
|
|
|
@@ -618,7 +618,8 @@ const mocaDevnet = {
|
|
|
618
618
|
address: "0xcA11bde05977b3631167028862bE2a173976CA11",
|
|
619
619
|
blockCreated: 3837540
|
|
620
620
|
}
|
|
621
|
-
}
|
|
621
|
+
},
|
|
622
|
+
testnet: true
|
|
622
623
|
};
|
|
623
624
|
const mocaTestnet = {
|
|
624
625
|
id: 222888,
|
|
@@ -630,8 +631,8 @@ const mocaTestnet = {
|
|
|
630
631
|
},
|
|
631
632
|
rpcUrls: {
|
|
632
633
|
default: {
|
|
633
|
-
http: ["https://
|
|
634
|
-
webSocket: ["wss://
|
|
634
|
+
http: ["https://rpc.testnet.mocachain.dev"],
|
|
635
|
+
webSocket: ["wss://rpc.testnet.mocachain.dev"]
|
|
635
636
|
}
|
|
636
637
|
},
|
|
637
638
|
blockExplorers: {
|
|
@@ -645,7 +646,8 @@ const mocaTestnet = {
|
|
|
645
646
|
address: "0xcA11bde05977b3631167028862bE2a173976CA11",
|
|
646
647
|
blockCreated: 1330259
|
|
647
648
|
}
|
|
648
|
-
}
|
|
649
|
+
},
|
|
650
|
+
testnet: true
|
|
649
651
|
};
|
|
650
652
|
|
|
651
653
|
const BUILD_ENV = {
|
|
@@ -663,6 +665,12 @@ const IFRAME_NAME_PREFIX_SET = [
|
|
|
663
665
|
]; // order defines the z-index from highest to lowest
|
|
664
666
|
|
|
665
667
|
const FONT_CDNS = ["https://fonts.googleapis.com", "https://fonts.gstatic.com"];
|
|
668
|
+
const SANDBOX_TESTNET_URLS = {
|
|
669
|
+
authUrl: "https://account.sandbox-testnet.air3.com/auth/",
|
|
670
|
+
walletUrl: "https://account.sandbox-testnet.air3.com/wallet/",
|
|
671
|
+
recoveryUrl: "https://account.sandbox-testnet.air3.com/recovery/",
|
|
672
|
+
credentialUrl: "https://account.sandbox-testnet.air3.com/credential/",
|
|
673
|
+
};
|
|
666
674
|
const AIR_URLS = {
|
|
667
675
|
[BUILD_ENV.DEVELOPMENT]: {
|
|
668
676
|
authUrl: "https://localhost:8200/auth/",
|
|
@@ -695,6 +703,12 @@ const AIR_URLS = {
|
|
|
695
703
|
credentialUrl: "https://account.air3.com/credential/",
|
|
696
704
|
},
|
|
697
705
|
};
|
|
706
|
+
const getAirUrls = (buildEnv, credentialNetwork) => {
|
|
707
|
+
if (buildEnv === BUILD_ENV.SANDBOX && credentialNetwork === "testnet") {
|
|
708
|
+
return SANDBOX_TESTNET_URLS;
|
|
709
|
+
}
|
|
710
|
+
return AIR_URLS[buildEnv];
|
|
711
|
+
};
|
|
698
712
|
/**
|
|
699
713
|
* Injects dns-prefetch, preconnect, and prefetch link tags
|
|
700
714
|
* for a given resource or page URL.
|
|
@@ -717,7 +731,7 @@ const addResourceHints = (url, options) => {
|
|
|
717
731
|
link.rel = rel;
|
|
718
732
|
link.href = href;
|
|
719
733
|
if (as)
|
|
720
|
-
|
|
734
|
+
;
|
|
721
735
|
if (crossOrigin)
|
|
722
736
|
link.crossOrigin = "anonymous";
|
|
723
737
|
head.appendChild(link);
|
|
@@ -728,8 +742,32 @@ const addResourceHints = (url, options) => {
|
|
|
728
742
|
// Preconnect (TCP + TLS warm-up)
|
|
729
743
|
addLink("preconnect", parsed.origin, undefined, isCrossOrigin);
|
|
730
744
|
// Prefetch (optional — caches the resource or HTML document)
|
|
731
|
-
if (options?.prefetch !== false
|
|
732
|
-
|
|
745
|
+
if (options?.prefetch !== false &&
|
|
746
|
+
HTMLScriptElement.supports &&
|
|
747
|
+
HTMLScriptElement.supports("speculationrules")) {
|
|
748
|
+
const scriptId = `speculation-${btoa(parsed.href)
|
|
749
|
+
.replace(/\+/g, "-")
|
|
750
|
+
.replace(/\//g, "_")
|
|
751
|
+
.replace(/=/g, "")}`;
|
|
752
|
+
if (!document.getElementById(scriptId)) {
|
|
753
|
+
const script = document.createElement("script");
|
|
754
|
+
script.id = scriptId;
|
|
755
|
+
script.type = "speculationrules";
|
|
756
|
+
const sources = [
|
|
757
|
+
{
|
|
758
|
+
source: "list",
|
|
759
|
+
urls: [parsed.href],
|
|
760
|
+
eagerness: "immediate",
|
|
761
|
+
},
|
|
762
|
+
];
|
|
763
|
+
const rules = {
|
|
764
|
+
...((options?.as ?? "document") === "document"
|
|
765
|
+
? { prerender: sources }
|
|
766
|
+
: { prefetch: sources }),
|
|
767
|
+
};
|
|
768
|
+
script.textContent = JSON.stringify(rules);
|
|
769
|
+
document.body.appendChild(script);
|
|
770
|
+
}
|
|
733
771
|
}
|
|
734
772
|
}
|
|
735
773
|
catch (err) {
|
|
@@ -2237,7 +2275,12 @@ class IframeController {
|
|
|
2237
2275
|
return this._iframeElement;
|
|
2238
2276
|
const iframe = document.createElement("iframe");
|
|
2239
2277
|
iframe.id = this.iframeId;
|
|
2240
|
-
iframe.allow =
|
|
2278
|
+
iframe.allow = [
|
|
2279
|
+
"publickey-credentials-get *",
|
|
2280
|
+
"publickey-credentials-create *",
|
|
2281
|
+
"ch-ua-model",
|
|
2282
|
+
"ch-ua-platform-version",
|
|
2283
|
+
].join("; ");
|
|
2241
2284
|
iframe.src = this.iframeUrl;
|
|
2242
2285
|
iframe.style.position = "fixed";
|
|
2243
2286
|
iframe.style.zIndex = `${this.getZIndex()}`;
|
|
@@ -2665,7 +2708,7 @@ class WindowService {
|
|
|
2665
2708
|
}
|
|
2666
2709
|
var WindowService$1 = WindowService.instance;
|
|
2667
2710
|
|
|
2668
|
-
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;
|
|
2711
|
+
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;
|
|
2669
2712
|
const airKitVersion = airkitPackage.version;
|
|
2670
2713
|
class AirService {
|
|
2671
2714
|
constructor({ partnerId }) {
|
|
@@ -2692,6 +2735,7 @@ class AirService {
|
|
|
2692
2735
|
_AirService_credentialsInitialization.set(this, void 0);
|
|
2693
2736
|
_AirService_credentialMessagingService.set(this, void 0);
|
|
2694
2737
|
_AirService_credentialIframeController.set(this, void 0);
|
|
2738
|
+
_AirService_credentialNetwork.set(this, void 0);
|
|
2695
2739
|
__classPrivateFieldSet(this, _AirService_partnerId, partnerId, "f");
|
|
2696
2740
|
__classPrivateFieldSet(this, _AirService_authMessagingService, AuthMessageService.create(), "f");
|
|
2697
2741
|
__classPrivateFieldSet(this, _AirService_walletMessagingService, WalletMessageService.create(), "f");
|
|
@@ -2730,13 +2774,15 @@ class AirService {
|
|
|
2730
2774
|
shouldEnableAutomation() {
|
|
2731
2775
|
return localStorage.getItem("automation") === "true" && __classPrivateFieldGet(this, _AirService_buildEnv, "f") !== BUILD_ENV.PRODUCTION;
|
|
2732
2776
|
}
|
|
2733
|
-
async init(
|
|
2777
|
+
async init(config) {
|
|
2778
|
+
const { buildEnv = BUILD_ENV.PRODUCTION, enableLogging = false, skipRehydration = false, sessionConfig = undefined, preloadWallet = false, preloadCredential = false, credentialNetwork = "testnet", } = config;
|
|
2734
2779
|
if (!__classPrivateFieldGet(this, _AirService_partnerId, "f"))
|
|
2735
2780
|
throw new AirServiceError("CLIENT_ERROR", "Partner ID is required to initialize the service");
|
|
2736
2781
|
if (__classPrivateFieldGet(this, _AirService_isAuthInitialized, "f"))
|
|
2737
2782
|
return __classPrivateFieldGet(this, _AirService_loginResult, "f") ?? null;
|
|
2783
|
+
__classPrivateFieldSet(this, _AirService_credentialNetwork, buildEnv === BUILD_ENV.SANDBOX ? credentialNetwork : undefined, "f");
|
|
2738
2784
|
configureLogLevel(buildEnv, enableLogging);
|
|
2739
|
-
const { authUrl, walletUrl, credentialUrl } =
|
|
2785
|
+
const { authUrl, walletUrl, credentialUrl } = getAirUrls(buildEnv, __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
2740
2786
|
addResourceHints(authUrl);
|
|
2741
2787
|
if (preloadWallet) {
|
|
2742
2788
|
addResourceHints(walletUrl);
|
|
@@ -3028,20 +3074,25 @@ class AirService {
|
|
|
3028
3074
|
async preloadCredential() {
|
|
3029
3075
|
await __classPrivateFieldGet(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
3030
3076
|
}
|
|
3031
|
-
async issueCredential({ authToken, issuerDid, credentialId, credentialSubject, }) {
|
|
3077
|
+
async issueCredential({ authToken, issuerDid, credentialId, credentialSubject, curve, }) {
|
|
3032
3078
|
await __classPrivateFieldGet(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
3033
|
-
const
|
|
3079
|
+
const response = await __classPrivateFieldGet(this, _AirService_credentialMessagingService, "f").sendIssueCredentialRequest({
|
|
3034
3080
|
partnerToken: authToken,
|
|
3035
3081
|
issuerDid,
|
|
3036
3082
|
credentialId,
|
|
3037
3083
|
credentialSubject,
|
|
3084
|
+
curve,
|
|
3038
3085
|
});
|
|
3086
|
+
const { payload } = response;
|
|
3039
3087
|
if (payload.closeDApp) {
|
|
3040
3088
|
window.close();
|
|
3041
3089
|
}
|
|
3042
3090
|
if (payload.success === false) {
|
|
3043
3091
|
throw new AirServiceError(payload.errorName, payload.errorMessage);
|
|
3044
3092
|
}
|
|
3093
|
+
return {
|
|
3094
|
+
cakPublicKey: payload.cakPublicKey,
|
|
3095
|
+
};
|
|
3045
3096
|
}
|
|
3046
3097
|
async verifyCredential({ authToken, programId, redirectUrl, }) {
|
|
3047
3098
|
await __classPrivateFieldGet(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
@@ -3056,7 +3107,7 @@ class AirService {
|
|
|
3056
3107
|
return payload.verificationResult;
|
|
3057
3108
|
}
|
|
3058
3109
|
}
|
|
3059
|
-
_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() {
|
|
3110
|
+
_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() {
|
|
3060
3111
|
if (!__classPrivateFieldGet(this, _AirService_isAuthInitialized, "f"))
|
|
3061
3112
|
throw new AirServiceError("NOT_INITIALIZED", "Service is not initialized");
|
|
3062
3113
|
}, _AirService_assertLoggedIn = function _AirService_assertLoggedIn() {
|
|
@@ -3080,7 +3131,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3080
3131
|
if (__classPrivateFieldGet(this, _AirService_credentialsInitialization, "f")) {
|
|
3081
3132
|
throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing credentials");
|
|
3082
3133
|
}
|
|
3083
|
-
const { credentialUrl } =
|
|
3134
|
+
const { credentialUrl } = getAirUrls(__classPrivateFieldGet(this, _AirService_buildEnv, "f"), __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
3084
3135
|
const credentialIframeOrigin = new URL(credentialUrl).origin;
|
|
3085
3136
|
let closeDApp = false;
|
|
3086
3137
|
try {
|
|
@@ -3098,6 +3149,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3098
3149
|
partnerDAppUrl: window.location.href,
|
|
3099
3150
|
enableAutomation: this.shouldEnableAutomation(),
|
|
3100
3151
|
sessionConfig: __classPrivateFieldGet(this, _AirService_sessionConfig, "f"),
|
|
3152
|
+
...(__classPrivateFieldGet(this, _AirService_credentialNetwork, "f") && { credentialNetwork: __classPrivateFieldGet(this, _AirService_credentialNetwork, "f") }),
|
|
3101
3153
|
});
|
|
3102
3154
|
if (payload.success === true) {
|
|
3103
3155
|
resolve();
|
|
@@ -3177,7 +3229,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3177
3229
|
}, _AirService_initializeWallet = async function _AirService_initializeWallet(option) {
|
|
3178
3230
|
if (__classPrivateFieldGet(this, _AirService_walletInitialization, "f"))
|
|
3179
3231
|
throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3180
|
-
const { walletUrl } =
|
|
3232
|
+
const { walletUrl } = getAirUrls(__classPrivateFieldGet(this, _AirService_buildEnv, "f"), __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
3181
3233
|
const walletIframeOrigin = new URL(walletUrl).origin;
|
|
3182
3234
|
try {
|
|
3183
3235
|
const walletInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -3354,7 +3406,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3354
3406
|
}, _AirService_initializeRecovery = async function _AirService_initializeRecovery() {
|
|
3355
3407
|
if (__classPrivateFieldGet(this, _AirService_recoveryInitialization, "f"))
|
|
3356
3408
|
throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3357
|
-
const { recoveryUrl } =
|
|
3409
|
+
const { recoveryUrl } = getAirUrls(__classPrivateFieldGet(this, _AirService_buildEnv, "f"), __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
3358
3410
|
const recoveryIframeOrigin = new URL(recoveryUrl).origin;
|
|
3359
3411
|
try {
|
|
3360
3412
|
const recoveryInitRequestPromise = new Promise((resolve, reject) => {
|
package/dist/airkit.esm.js
CHANGED
|
@@ -95,7 +95,7 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
|
|
|
95
95
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
96
96
|
};
|
|
97
97
|
|
|
98
|
-
var version = "1.
|
|
98
|
+
var version = "1.8.0-beta.0";
|
|
99
99
|
var airkitPackage = {
|
|
100
100
|
version: version};
|
|
101
101
|
|
|
@@ -616,7 +616,8 @@ const mocaDevnet = {
|
|
|
616
616
|
address: "0xcA11bde05977b3631167028862bE2a173976CA11",
|
|
617
617
|
blockCreated: 3837540
|
|
618
618
|
}
|
|
619
|
-
}
|
|
619
|
+
},
|
|
620
|
+
testnet: true
|
|
620
621
|
};
|
|
621
622
|
const mocaTestnet = {
|
|
622
623
|
id: 222888,
|
|
@@ -628,8 +629,8 @@ const mocaTestnet = {
|
|
|
628
629
|
},
|
|
629
630
|
rpcUrls: {
|
|
630
631
|
default: {
|
|
631
|
-
http: ["https://
|
|
632
|
-
webSocket: ["wss://
|
|
632
|
+
http: ["https://rpc.testnet.mocachain.dev"],
|
|
633
|
+
webSocket: ["wss://rpc.testnet.mocachain.dev"]
|
|
633
634
|
}
|
|
634
635
|
},
|
|
635
636
|
blockExplorers: {
|
|
@@ -643,7 +644,8 @@ const mocaTestnet = {
|
|
|
643
644
|
address: "0xcA11bde05977b3631167028862bE2a173976CA11",
|
|
644
645
|
blockCreated: 1330259
|
|
645
646
|
}
|
|
646
|
-
}
|
|
647
|
+
},
|
|
648
|
+
testnet: true
|
|
647
649
|
};
|
|
648
650
|
|
|
649
651
|
const BUILD_ENV = {
|
|
@@ -661,6 +663,12 @@ const IFRAME_NAME_PREFIX_SET = [
|
|
|
661
663
|
]; // order defines the z-index from highest to lowest
|
|
662
664
|
|
|
663
665
|
const FONT_CDNS = ["https://fonts.googleapis.com", "https://fonts.gstatic.com"];
|
|
666
|
+
const SANDBOX_TESTNET_URLS = {
|
|
667
|
+
authUrl: "https://account.sandbox-testnet.air3.com/auth/",
|
|
668
|
+
walletUrl: "https://account.sandbox-testnet.air3.com/wallet/",
|
|
669
|
+
recoveryUrl: "https://account.sandbox-testnet.air3.com/recovery/",
|
|
670
|
+
credentialUrl: "https://account.sandbox-testnet.air3.com/credential/",
|
|
671
|
+
};
|
|
664
672
|
const AIR_URLS = {
|
|
665
673
|
[BUILD_ENV.DEVELOPMENT]: {
|
|
666
674
|
authUrl: "https://localhost:8200/auth/",
|
|
@@ -693,6 +701,12 @@ const AIR_URLS = {
|
|
|
693
701
|
credentialUrl: "https://account.air3.com/credential/",
|
|
694
702
|
},
|
|
695
703
|
};
|
|
704
|
+
const getAirUrls = (buildEnv, credentialNetwork) => {
|
|
705
|
+
if (buildEnv === BUILD_ENV.SANDBOX && credentialNetwork === "testnet") {
|
|
706
|
+
return SANDBOX_TESTNET_URLS;
|
|
707
|
+
}
|
|
708
|
+
return AIR_URLS[buildEnv];
|
|
709
|
+
};
|
|
696
710
|
/**
|
|
697
711
|
* Injects dns-prefetch, preconnect, and prefetch link tags
|
|
698
712
|
* for a given resource or page URL.
|
|
@@ -715,7 +729,7 @@ const addResourceHints = (url, options) => {
|
|
|
715
729
|
link.rel = rel;
|
|
716
730
|
link.href = href;
|
|
717
731
|
if (as)
|
|
718
|
-
|
|
732
|
+
;
|
|
719
733
|
if (crossOrigin)
|
|
720
734
|
link.crossOrigin = "anonymous";
|
|
721
735
|
head.appendChild(link);
|
|
@@ -726,8 +740,32 @@ const addResourceHints = (url, options) => {
|
|
|
726
740
|
// Preconnect (TCP + TLS warm-up)
|
|
727
741
|
addLink("preconnect", parsed.origin, undefined, isCrossOrigin);
|
|
728
742
|
// Prefetch (optional — caches the resource or HTML document)
|
|
729
|
-
if (options?.prefetch !== false
|
|
730
|
-
|
|
743
|
+
if (options?.prefetch !== false &&
|
|
744
|
+
HTMLScriptElement.supports &&
|
|
745
|
+
HTMLScriptElement.supports("speculationrules")) {
|
|
746
|
+
const scriptId = `speculation-${btoa(parsed.href)
|
|
747
|
+
.replace(/\+/g, "-")
|
|
748
|
+
.replace(/\//g, "_")
|
|
749
|
+
.replace(/=/g, "")}`;
|
|
750
|
+
if (!document.getElementById(scriptId)) {
|
|
751
|
+
const script = document.createElement("script");
|
|
752
|
+
script.id = scriptId;
|
|
753
|
+
script.type = "speculationrules";
|
|
754
|
+
const sources = [
|
|
755
|
+
{
|
|
756
|
+
source: "list",
|
|
757
|
+
urls: [parsed.href],
|
|
758
|
+
eagerness: "immediate",
|
|
759
|
+
},
|
|
760
|
+
];
|
|
761
|
+
const rules = {
|
|
762
|
+
...((options?.as ?? "document") === "document"
|
|
763
|
+
? { prerender: sources }
|
|
764
|
+
: { prefetch: sources }),
|
|
765
|
+
};
|
|
766
|
+
script.textContent = JSON.stringify(rules);
|
|
767
|
+
document.body.appendChild(script);
|
|
768
|
+
}
|
|
731
769
|
}
|
|
732
770
|
}
|
|
733
771
|
catch (err) {
|
|
@@ -2235,7 +2273,12 @@ class IframeController {
|
|
|
2235
2273
|
return this._iframeElement;
|
|
2236
2274
|
const iframe = document.createElement("iframe");
|
|
2237
2275
|
iframe.id = this.iframeId;
|
|
2238
|
-
iframe.allow =
|
|
2276
|
+
iframe.allow = [
|
|
2277
|
+
"publickey-credentials-get *",
|
|
2278
|
+
"publickey-credentials-create *",
|
|
2279
|
+
"ch-ua-model",
|
|
2280
|
+
"ch-ua-platform-version",
|
|
2281
|
+
].join("; ");
|
|
2239
2282
|
iframe.src = this.iframeUrl;
|
|
2240
2283
|
iframe.style.position = "fixed";
|
|
2241
2284
|
iframe.style.zIndex = `${this.getZIndex()}`;
|
|
@@ -2663,7 +2706,7 @@ class WindowService {
|
|
|
2663
2706
|
}
|
|
2664
2707
|
var WindowService$1 = WindowService.instance;
|
|
2665
2708
|
|
|
2666
|
-
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;
|
|
2709
|
+
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;
|
|
2667
2710
|
const airKitVersion = airkitPackage.version;
|
|
2668
2711
|
class AirService {
|
|
2669
2712
|
constructor({ partnerId }) {
|
|
@@ -2690,6 +2733,7 @@ class AirService {
|
|
|
2690
2733
|
_AirService_credentialsInitialization.set(this, void 0);
|
|
2691
2734
|
_AirService_credentialMessagingService.set(this, void 0);
|
|
2692
2735
|
_AirService_credentialIframeController.set(this, void 0);
|
|
2736
|
+
_AirService_credentialNetwork.set(this, void 0);
|
|
2693
2737
|
__classPrivateFieldSet(this, _AirService_partnerId, partnerId, "f");
|
|
2694
2738
|
__classPrivateFieldSet(this, _AirService_authMessagingService, AuthMessageService.create(), "f");
|
|
2695
2739
|
__classPrivateFieldSet(this, _AirService_walletMessagingService, WalletMessageService.create(), "f");
|
|
@@ -2728,13 +2772,15 @@ class AirService {
|
|
|
2728
2772
|
shouldEnableAutomation() {
|
|
2729
2773
|
return localStorage.getItem("automation") === "true" && __classPrivateFieldGet(this, _AirService_buildEnv, "f") !== BUILD_ENV.PRODUCTION;
|
|
2730
2774
|
}
|
|
2731
|
-
async init(
|
|
2775
|
+
async init(config) {
|
|
2776
|
+
const { buildEnv = BUILD_ENV.PRODUCTION, enableLogging = false, skipRehydration = false, sessionConfig = undefined, preloadWallet = false, preloadCredential = false, credentialNetwork = "testnet", } = config;
|
|
2732
2777
|
if (!__classPrivateFieldGet(this, _AirService_partnerId, "f"))
|
|
2733
2778
|
throw new AirServiceError("CLIENT_ERROR", "Partner ID is required to initialize the service");
|
|
2734
2779
|
if (__classPrivateFieldGet(this, _AirService_isAuthInitialized, "f"))
|
|
2735
2780
|
return __classPrivateFieldGet(this, _AirService_loginResult, "f") ?? null;
|
|
2781
|
+
__classPrivateFieldSet(this, _AirService_credentialNetwork, buildEnv === BUILD_ENV.SANDBOX ? credentialNetwork : undefined, "f");
|
|
2736
2782
|
configureLogLevel(buildEnv, enableLogging);
|
|
2737
|
-
const { authUrl, walletUrl, credentialUrl } =
|
|
2783
|
+
const { authUrl, walletUrl, credentialUrl } = getAirUrls(buildEnv, __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
2738
2784
|
addResourceHints(authUrl);
|
|
2739
2785
|
if (preloadWallet) {
|
|
2740
2786
|
addResourceHints(walletUrl);
|
|
@@ -3026,20 +3072,25 @@ class AirService {
|
|
|
3026
3072
|
async preloadCredential() {
|
|
3027
3073
|
await __classPrivateFieldGet(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
3028
3074
|
}
|
|
3029
|
-
async issueCredential({ authToken, issuerDid, credentialId, credentialSubject, }) {
|
|
3075
|
+
async issueCredential({ authToken, issuerDid, credentialId, credentialSubject, curve, }) {
|
|
3030
3076
|
await __classPrivateFieldGet(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
3031
|
-
const
|
|
3077
|
+
const response = await __classPrivateFieldGet(this, _AirService_credentialMessagingService, "f").sendIssueCredentialRequest({
|
|
3032
3078
|
partnerToken: authToken,
|
|
3033
3079
|
issuerDid,
|
|
3034
3080
|
credentialId,
|
|
3035
3081
|
credentialSubject,
|
|
3082
|
+
curve,
|
|
3036
3083
|
});
|
|
3084
|
+
const { payload } = response;
|
|
3037
3085
|
if (payload.closeDApp) {
|
|
3038
3086
|
window.close();
|
|
3039
3087
|
}
|
|
3040
3088
|
if (payload.success === false) {
|
|
3041
3089
|
throw new AirServiceError(payload.errorName, payload.errorMessage);
|
|
3042
3090
|
}
|
|
3091
|
+
return {
|
|
3092
|
+
cakPublicKey: payload.cakPublicKey,
|
|
3093
|
+
};
|
|
3043
3094
|
}
|
|
3044
3095
|
async verifyCredential({ authToken, programId, redirectUrl, }) {
|
|
3045
3096
|
await __classPrivateFieldGet(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
@@ -3054,7 +3105,7 @@ class AirService {
|
|
|
3054
3105
|
return payload.verificationResult;
|
|
3055
3106
|
}
|
|
3056
3107
|
}
|
|
3057
|
-
_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() {
|
|
3108
|
+
_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() {
|
|
3058
3109
|
if (!__classPrivateFieldGet(this, _AirService_isAuthInitialized, "f"))
|
|
3059
3110
|
throw new AirServiceError("NOT_INITIALIZED", "Service is not initialized");
|
|
3060
3111
|
}, _AirService_assertLoggedIn = function _AirService_assertLoggedIn() {
|
|
@@ -3078,7 +3129,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3078
3129
|
if (__classPrivateFieldGet(this, _AirService_credentialsInitialization, "f")) {
|
|
3079
3130
|
throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing credentials");
|
|
3080
3131
|
}
|
|
3081
|
-
const { credentialUrl } =
|
|
3132
|
+
const { credentialUrl } = getAirUrls(__classPrivateFieldGet(this, _AirService_buildEnv, "f"), __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
3082
3133
|
const credentialIframeOrigin = new URL(credentialUrl).origin;
|
|
3083
3134
|
let closeDApp = false;
|
|
3084
3135
|
try {
|
|
@@ -3096,6 +3147,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3096
3147
|
partnerDAppUrl: window.location.href,
|
|
3097
3148
|
enableAutomation: this.shouldEnableAutomation(),
|
|
3098
3149
|
sessionConfig: __classPrivateFieldGet(this, _AirService_sessionConfig, "f"),
|
|
3150
|
+
...(__classPrivateFieldGet(this, _AirService_credentialNetwork, "f") && { credentialNetwork: __classPrivateFieldGet(this, _AirService_credentialNetwork, "f") }),
|
|
3099
3151
|
});
|
|
3100
3152
|
if (payload.success === true) {
|
|
3101
3153
|
resolve();
|
|
@@ -3175,7 +3227,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3175
3227
|
}, _AirService_initializeWallet = async function _AirService_initializeWallet(option) {
|
|
3176
3228
|
if (__classPrivateFieldGet(this, _AirService_walletInitialization, "f"))
|
|
3177
3229
|
throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3178
|
-
const { walletUrl } =
|
|
3230
|
+
const { walletUrl } = getAirUrls(__classPrivateFieldGet(this, _AirService_buildEnv, "f"), __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
3179
3231
|
const walletIframeOrigin = new URL(walletUrl).origin;
|
|
3180
3232
|
try {
|
|
3181
3233
|
const walletInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -3352,7 +3404,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
3352
3404
|
}, _AirService_initializeRecovery = async function _AirService_initializeRecovery() {
|
|
3353
3405
|
if (__classPrivateFieldGet(this, _AirService_recoveryInitialization, "f"))
|
|
3354
3406
|
throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3355
|
-
const { recoveryUrl } =
|
|
3407
|
+
const { recoveryUrl } = getAirUrls(__classPrivateFieldGet(this, _AirService_buildEnv, "f"), __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
3356
3408
|
const recoveryIframeOrigin = new URL(recoveryUrl).origin;
|
|
3357
3409
|
try {
|
|
3358
3410
|
const recoveryInitRequestPromise = new Promise((resolve, reject) => {
|
package/dist/airkit.umd.js
CHANGED
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
102
102
|
};
|
|
103
103
|
|
|
104
|
-
var version = "1.
|
|
104
|
+
var version = "1.8.0-beta.0";
|
|
105
105
|
var airkitPackage = {
|
|
106
106
|
version: version};
|
|
107
107
|
|
|
@@ -622,7 +622,8 @@
|
|
|
622
622
|
address: "0xcA11bde05977b3631167028862bE2a173976CA11",
|
|
623
623
|
blockCreated: 3837540
|
|
624
624
|
}
|
|
625
|
-
}
|
|
625
|
+
},
|
|
626
|
+
testnet: true
|
|
626
627
|
};
|
|
627
628
|
const mocaTestnet = {
|
|
628
629
|
id: 222888,
|
|
@@ -634,8 +635,8 @@
|
|
|
634
635
|
},
|
|
635
636
|
rpcUrls: {
|
|
636
637
|
default: {
|
|
637
|
-
http: ["https://
|
|
638
|
-
webSocket: ["wss://
|
|
638
|
+
http: ["https://rpc.testnet.mocachain.dev"],
|
|
639
|
+
webSocket: ["wss://rpc.testnet.mocachain.dev"]
|
|
639
640
|
}
|
|
640
641
|
},
|
|
641
642
|
blockExplorers: {
|
|
@@ -649,7 +650,8 @@
|
|
|
649
650
|
address: "0xcA11bde05977b3631167028862bE2a173976CA11",
|
|
650
651
|
blockCreated: 1330259
|
|
651
652
|
}
|
|
652
|
-
}
|
|
653
|
+
},
|
|
654
|
+
testnet: true
|
|
653
655
|
};
|
|
654
656
|
|
|
655
657
|
const BUILD_ENV = {
|
|
@@ -667,6 +669,12 @@
|
|
|
667
669
|
]; // order defines the z-index from highest to lowest
|
|
668
670
|
|
|
669
671
|
const FONT_CDNS = ["https://fonts.googleapis.com", "https://fonts.gstatic.com"];
|
|
672
|
+
const SANDBOX_TESTNET_URLS = {
|
|
673
|
+
authUrl: "https://account.sandbox-testnet.air3.com/auth/",
|
|
674
|
+
walletUrl: "https://account.sandbox-testnet.air3.com/wallet/",
|
|
675
|
+
recoveryUrl: "https://account.sandbox-testnet.air3.com/recovery/",
|
|
676
|
+
credentialUrl: "https://account.sandbox-testnet.air3.com/credential/",
|
|
677
|
+
};
|
|
670
678
|
const AIR_URLS = {
|
|
671
679
|
[BUILD_ENV.DEVELOPMENT]: {
|
|
672
680
|
authUrl: "https://localhost:8200/auth/",
|
|
@@ -699,6 +707,12 @@
|
|
|
699
707
|
credentialUrl: "https://account.air3.com/credential/",
|
|
700
708
|
},
|
|
701
709
|
};
|
|
710
|
+
const getAirUrls = (buildEnv, credentialNetwork) => {
|
|
711
|
+
if (buildEnv === BUILD_ENV.SANDBOX && credentialNetwork === "testnet") {
|
|
712
|
+
return SANDBOX_TESTNET_URLS;
|
|
713
|
+
}
|
|
714
|
+
return AIR_URLS[buildEnv];
|
|
715
|
+
};
|
|
702
716
|
/**
|
|
703
717
|
* Injects dns-prefetch, preconnect, and prefetch link tags
|
|
704
718
|
* for a given resource or page URL.
|
|
@@ -721,7 +735,7 @@
|
|
|
721
735
|
link.rel = rel;
|
|
722
736
|
link.href = href;
|
|
723
737
|
if (as)
|
|
724
|
-
|
|
738
|
+
;
|
|
725
739
|
if (crossOrigin)
|
|
726
740
|
link.crossOrigin = "anonymous";
|
|
727
741
|
head.appendChild(link);
|
|
@@ -732,8 +746,32 @@
|
|
|
732
746
|
// Preconnect (TCP + TLS warm-up)
|
|
733
747
|
addLink("preconnect", parsed.origin, undefined, isCrossOrigin);
|
|
734
748
|
// Prefetch (optional — caches the resource or HTML document)
|
|
735
|
-
if (options?.prefetch !== false
|
|
736
|
-
|
|
749
|
+
if (options?.prefetch !== false &&
|
|
750
|
+
HTMLScriptElement.supports &&
|
|
751
|
+
HTMLScriptElement.supports("speculationrules")) {
|
|
752
|
+
const scriptId = `speculation-${btoa(parsed.href)
|
|
753
|
+
.replace(/\+/g, "-")
|
|
754
|
+
.replace(/\//g, "_")
|
|
755
|
+
.replace(/=/g, "")}`;
|
|
756
|
+
if (!document.getElementById(scriptId)) {
|
|
757
|
+
const script = document.createElement("script");
|
|
758
|
+
script.id = scriptId;
|
|
759
|
+
script.type = "speculationrules";
|
|
760
|
+
const sources = [
|
|
761
|
+
{
|
|
762
|
+
source: "list",
|
|
763
|
+
urls: [parsed.href],
|
|
764
|
+
eagerness: "immediate",
|
|
765
|
+
},
|
|
766
|
+
];
|
|
767
|
+
const rules = {
|
|
768
|
+
...((options?.as ?? "document") === "document"
|
|
769
|
+
? { prerender: sources }
|
|
770
|
+
: { prefetch: sources }),
|
|
771
|
+
};
|
|
772
|
+
script.textContent = JSON.stringify(rules);
|
|
773
|
+
document.body.appendChild(script);
|
|
774
|
+
}
|
|
737
775
|
}
|
|
738
776
|
}
|
|
739
777
|
catch (err) {
|
|
@@ -2241,7 +2279,12 @@
|
|
|
2241
2279
|
return this._iframeElement;
|
|
2242
2280
|
const iframe = document.createElement("iframe");
|
|
2243
2281
|
iframe.id = this.iframeId;
|
|
2244
|
-
iframe.allow =
|
|
2282
|
+
iframe.allow = [
|
|
2283
|
+
"publickey-credentials-get *",
|
|
2284
|
+
"publickey-credentials-create *",
|
|
2285
|
+
"ch-ua-model",
|
|
2286
|
+
"ch-ua-platform-version",
|
|
2287
|
+
].join("; ");
|
|
2245
2288
|
iframe.src = this.iframeUrl;
|
|
2246
2289
|
iframe.style.position = "fixed";
|
|
2247
2290
|
iframe.style.zIndex = `${this.getZIndex()}`;
|
|
@@ -2669,7 +2712,7 @@
|
|
|
2669
2712
|
}
|
|
2670
2713
|
var WindowService$1 = WindowService.instance;
|
|
2671
2714
|
|
|
2672
|
-
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;
|
|
2715
|
+
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;
|
|
2673
2716
|
const airKitVersion = airkitPackage.version;
|
|
2674
2717
|
class AirService {
|
|
2675
2718
|
constructor({ partnerId }) {
|
|
@@ -2696,6 +2739,7 @@
|
|
|
2696
2739
|
_AirService_credentialsInitialization.set(this, void 0);
|
|
2697
2740
|
_AirService_credentialMessagingService.set(this, void 0);
|
|
2698
2741
|
_AirService_credentialIframeController.set(this, void 0);
|
|
2742
|
+
_AirService_credentialNetwork.set(this, void 0);
|
|
2699
2743
|
__classPrivateFieldSet(this, _AirService_partnerId, partnerId, "f");
|
|
2700
2744
|
__classPrivateFieldSet(this, _AirService_authMessagingService, AuthMessageService.create(), "f");
|
|
2701
2745
|
__classPrivateFieldSet(this, _AirService_walletMessagingService, WalletMessageService.create(), "f");
|
|
@@ -2734,13 +2778,15 @@
|
|
|
2734
2778
|
shouldEnableAutomation() {
|
|
2735
2779
|
return localStorage.getItem("automation") === "true" && __classPrivateFieldGet(this, _AirService_buildEnv, "f") !== BUILD_ENV.PRODUCTION;
|
|
2736
2780
|
}
|
|
2737
|
-
async init(
|
|
2781
|
+
async init(config) {
|
|
2782
|
+
const { buildEnv = BUILD_ENV.PRODUCTION, enableLogging = false, skipRehydration = false, sessionConfig = undefined, preloadWallet = false, preloadCredential = false, credentialNetwork = "testnet", } = config;
|
|
2738
2783
|
if (!__classPrivateFieldGet(this, _AirService_partnerId, "f"))
|
|
2739
2784
|
throw new AirServiceError("CLIENT_ERROR", "Partner ID is required to initialize the service");
|
|
2740
2785
|
if (__classPrivateFieldGet(this, _AirService_isAuthInitialized, "f"))
|
|
2741
2786
|
return __classPrivateFieldGet(this, _AirService_loginResult, "f") ?? null;
|
|
2787
|
+
__classPrivateFieldSet(this, _AirService_credentialNetwork, buildEnv === BUILD_ENV.SANDBOX ? credentialNetwork : undefined, "f");
|
|
2742
2788
|
configureLogLevel(buildEnv, enableLogging);
|
|
2743
|
-
const { authUrl, walletUrl, credentialUrl } =
|
|
2789
|
+
const { authUrl, walletUrl, credentialUrl } = getAirUrls(buildEnv, __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
2744
2790
|
addResourceHints(authUrl);
|
|
2745
2791
|
if (preloadWallet) {
|
|
2746
2792
|
addResourceHints(walletUrl);
|
|
@@ -3032,20 +3078,25 @@
|
|
|
3032
3078
|
async preloadCredential() {
|
|
3033
3079
|
await __classPrivateFieldGet(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
3034
3080
|
}
|
|
3035
|
-
async issueCredential({ authToken, issuerDid, credentialId, credentialSubject, }) {
|
|
3081
|
+
async issueCredential({ authToken, issuerDid, credentialId, credentialSubject, curve, }) {
|
|
3036
3082
|
await __classPrivateFieldGet(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
3037
|
-
const
|
|
3083
|
+
const response = await __classPrivateFieldGet(this, _AirService_credentialMessagingService, "f").sendIssueCredentialRequest({
|
|
3038
3084
|
partnerToken: authToken,
|
|
3039
3085
|
issuerDid,
|
|
3040
3086
|
credentialId,
|
|
3041
3087
|
credentialSubject,
|
|
3088
|
+
curve,
|
|
3042
3089
|
});
|
|
3090
|
+
const { payload } = response;
|
|
3043
3091
|
if (payload.closeDApp) {
|
|
3044
3092
|
window.close();
|
|
3045
3093
|
}
|
|
3046
3094
|
if (payload.success === false) {
|
|
3047
3095
|
throw new AirServiceError(payload.errorName, payload.errorMessage);
|
|
3048
3096
|
}
|
|
3097
|
+
return {
|
|
3098
|
+
cakPublicKey: payload.cakPublicKey,
|
|
3099
|
+
};
|
|
3049
3100
|
}
|
|
3050
3101
|
async verifyCredential({ authToken, programId, redirectUrl, }) {
|
|
3051
3102
|
await __classPrivateFieldGet(this, _AirService_instances, "m", _AirService_ensureCredential).call(this);
|
|
@@ -3060,7 +3111,7 @@
|
|
|
3060
3111
|
return payload.verificationResult;
|
|
3061
3112
|
}
|
|
3062
3113
|
}
|
|
3063
|
-
_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() {
|
|
3114
|
+
_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() {
|
|
3064
3115
|
if (!__classPrivateFieldGet(this, _AirService_isAuthInitialized, "f"))
|
|
3065
3116
|
throw new AirServiceError("NOT_INITIALIZED", "Service is not initialized");
|
|
3066
3117
|
}, _AirService_assertLoggedIn = function _AirService_assertLoggedIn() {
|
|
@@ -3084,7 +3135,7 @@
|
|
|
3084
3135
|
if (__classPrivateFieldGet(this, _AirService_credentialsInitialization, "f")) {
|
|
3085
3136
|
throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing credentials");
|
|
3086
3137
|
}
|
|
3087
|
-
const { credentialUrl } =
|
|
3138
|
+
const { credentialUrl } = getAirUrls(__classPrivateFieldGet(this, _AirService_buildEnv, "f"), __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
3088
3139
|
const credentialIframeOrigin = new URL(credentialUrl).origin;
|
|
3089
3140
|
let closeDApp = false;
|
|
3090
3141
|
try {
|
|
@@ -3102,6 +3153,7 @@
|
|
|
3102
3153
|
partnerDAppUrl: window.location.href,
|
|
3103
3154
|
enableAutomation: this.shouldEnableAutomation(),
|
|
3104
3155
|
sessionConfig: __classPrivateFieldGet(this, _AirService_sessionConfig, "f"),
|
|
3156
|
+
...(__classPrivateFieldGet(this, _AirService_credentialNetwork, "f") && { credentialNetwork: __classPrivateFieldGet(this, _AirService_credentialNetwork, "f") }),
|
|
3105
3157
|
});
|
|
3106
3158
|
if (payload.success === true) {
|
|
3107
3159
|
resolve();
|
|
@@ -3181,7 +3233,7 @@
|
|
|
3181
3233
|
}, _AirService_initializeWallet = async function _AirService_initializeWallet(option) {
|
|
3182
3234
|
if (__classPrivateFieldGet(this, _AirService_walletInitialization, "f"))
|
|
3183
3235
|
throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3184
|
-
const { walletUrl } =
|
|
3236
|
+
const { walletUrl } = getAirUrls(__classPrivateFieldGet(this, _AirService_buildEnv, "f"), __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
3185
3237
|
const walletIframeOrigin = new URL(walletUrl).origin;
|
|
3186
3238
|
try {
|
|
3187
3239
|
const walletInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -3358,7 +3410,7 @@
|
|
|
3358
3410
|
}, _AirService_initializeRecovery = async function _AirService_initializeRecovery() {
|
|
3359
3411
|
if (__classPrivateFieldGet(this, _AirService_recoveryInitialization, "f"))
|
|
3360
3412
|
throw new AirServiceError("ALREADY_INITIALIZING", "Already initializing");
|
|
3361
|
-
const { recoveryUrl } =
|
|
3413
|
+
const { recoveryUrl } = getAirUrls(__classPrivateFieldGet(this, _AirService_buildEnv, "f"), __classPrivateFieldGet(this, _AirService_credentialNetwork, "f"));
|
|
3362
3414
|
const recoveryIframeOrigin = new URL(recoveryUrl).origin;
|
|
3363
3415
|
try {
|
|
3364
3416
|
const recoveryInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AirAuthStartRecoveryRequestPayload } from "@mocanetwork/common/src/air/messaging/auth";
|
|
2
|
-
import { AirEventListener, AirLoginResult, AirSessionConfig, AirUserDetails, BUILD_ENV_TYPE, ClaimAirIdOptions, ClaimAirIdResult, CredentialVerificationResult, EIP1193Provider } from "./interfaces";
|
|
2
|
+
import { AirEventListener, AirLoginResult, AirSessionConfig, AirUserDetails, BUILD_ENV, BUILD_ENV_TYPE, ClaimAirIdOptions, ClaimAirIdResult, CredentialNetwork, CredentialVerificationResult, EIP1193Provider } from "./interfaces";
|
|
3
3
|
declare class AirService {
|
|
4
4
|
#private;
|
|
5
5
|
constructor({ partnerId }: {
|
|
@@ -12,10 +12,15 @@ declare class AirService {
|
|
|
12
12
|
get isWalletInitialized(): boolean;
|
|
13
13
|
get provider(): EIP1193Provider;
|
|
14
14
|
private shouldEnableAutomation;
|
|
15
|
-
init(
|
|
16
|
-
buildEnv
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
init(config: ({
|
|
16
|
+
buildEnv?: Exclude<BUILD_ENV_TYPE, typeof BUILD_ENV.SANDBOX>;
|
|
17
|
+
credentialNetwork?: never;
|
|
18
|
+
} | {
|
|
19
|
+
buildEnv?: typeof BUILD_ENV.SANDBOX;
|
|
20
|
+
credentialNetwork?: CredentialNetwork;
|
|
21
|
+
}) & {
|
|
22
|
+
enableLogging?: boolean;
|
|
23
|
+
skipRehydration?: boolean;
|
|
19
24
|
preloadWallet?: boolean;
|
|
20
25
|
preloadCredential?: boolean;
|
|
21
26
|
sessionConfig?: Partial<AirSessionConfig>;
|
|
@@ -71,12 +76,15 @@ declare class AirService {
|
|
|
71
76
|
on(listener: AirEventListener): void;
|
|
72
77
|
off(listener: AirEventListener): void;
|
|
73
78
|
preloadCredential(): Promise<void>;
|
|
74
|
-
issueCredential({ authToken, issuerDid, credentialId, credentialSubject, }: {
|
|
79
|
+
issueCredential({ authToken, issuerDid, credentialId, credentialSubject, curve, }: {
|
|
75
80
|
authToken: string;
|
|
76
81
|
issuerDid: string;
|
|
77
82
|
credentialId: string;
|
|
78
83
|
credentialSubject: Record<string, unknown>;
|
|
79
|
-
|
|
84
|
+
curve?: "secp256r1" | "secp256k1";
|
|
85
|
+
}): Promise<{
|
|
86
|
+
cakPublicKey?: string;
|
|
87
|
+
}>;
|
|
80
88
|
verifyCredential({ authToken, programId, redirectUrl, }: {
|
|
81
89
|
authToken: string;
|
|
82
90
|
programId: string;
|
|
@@ -24,6 +24,7 @@ export type AirInitializationRequestMessage = AirCredentialMessageBase<"air_cred
|
|
|
24
24
|
partnerDAppUrl: string;
|
|
25
25
|
enableAutomation: boolean;
|
|
26
26
|
sessionConfig?: Partial<SessionConfig>;
|
|
27
|
+
credentialNetwork?: "devnet" | "testnet";
|
|
27
28
|
}>;
|
|
28
29
|
type AirInitializationSuccessResponseMessage = AirCredentialMessageBase<"air_credential_initialization_response", AirMessageSuccessPayload>;
|
|
29
30
|
export type AirInitializationErrorResponseMessage = AirCredentialMessageBase<"air_credential_initialization_response", AirMessageErrorPayload & {
|
|
@@ -42,6 +43,7 @@ export type AirIssueCredentialRequestMessage = AirCredentialMessageBase<"air_cre
|
|
|
42
43
|
issuerDid: string;
|
|
43
44
|
credentialId: string;
|
|
44
45
|
credentialSubject: Record<string, unknown>;
|
|
46
|
+
curve?: "secp256r1" | "secp256k1";
|
|
45
47
|
}>;
|
|
46
48
|
export type AirVerifyCredentialRequestMessage = AirCredentialMessageBase<"air_credential_verify_request", {
|
|
47
49
|
partnerToken: string;
|
|
@@ -50,6 +52,7 @@ export type AirVerifyCredentialRequestMessage = AirCredentialMessageBase<"air_cr
|
|
|
50
52
|
}>;
|
|
51
53
|
export type AirIssueCredentialResponseMessage = AirCredentialMessageBase<"air_credential_issue_response", ((AirMessageSuccessPayload & {
|
|
52
54
|
result: Record<string, unknown>;
|
|
55
|
+
cakPublicKey?: string;
|
|
53
56
|
}) | AirMessageErrorPayload) & {
|
|
54
57
|
closeDApp?: boolean;
|
|
55
58
|
}>;
|
|
@@ -60,6 +63,7 @@ export type AirVerifyCredentialSuccessResponsePayload = {
|
|
|
60
63
|
status: "Compliant";
|
|
61
64
|
zkProofs: Record<string, string>;
|
|
62
65
|
transactionHash: string;
|
|
66
|
+
cakPrivateKey?: string;
|
|
63
67
|
};
|
|
64
68
|
} & AirMessageSuccessPayload;
|
|
65
69
|
export type AirVerifyCredentialResponseMessage = AirCredentialMessageBase<"air_credential_verify_response", AirVerifyCredentialSuccessResponsePayload | AirMessageErrorPayload>;
|
|
@@ -24,6 +24,7 @@ export declare const mocaDevnet: {
|
|
|
24
24
|
readonly blockCreated: 3837540;
|
|
25
25
|
};
|
|
26
26
|
};
|
|
27
|
+
readonly testnet: true;
|
|
27
28
|
};
|
|
28
29
|
export declare const mocaTestnet: {
|
|
29
30
|
readonly id: 222888;
|
|
@@ -35,8 +36,8 @@ export declare const mocaTestnet: {
|
|
|
35
36
|
};
|
|
36
37
|
readonly rpcUrls: {
|
|
37
38
|
readonly default: {
|
|
38
|
-
readonly http: readonly ["https://
|
|
39
|
-
readonly webSocket: readonly ["wss://
|
|
39
|
+
readonly http: readonly ["https://rpc.testnet.mocachain.dev"];
|
|
40
|
+
readonly webSocket: readonly ["wss://rpc.testnet.mocachain.dev"];
|
|
40
41
|
};
|
|
41
42
|
};
|
|
42
43
|
readonly blockExplorers: {
|
|
@@ -51,4 +52,5 @@ export declare const mocaTestnet: {
|
|
|
51
52
|
readonly blockCreated: 1330259;
|
|
52
53
|
};
|
|
53
54
|
};
|
|
55
|
+
readonly testnet: true;
|
|
54
56
|
};
|
|
@@ -34,6 +34,15 @@ export type EIP1193Event = keyof EIP1193EventMap;
|
|
|
34
34
|
* Custom RPC schema for Air-specific provider methods
|
|
35
35
|
*/
|
|
36
36
|
export type AirCustomRpcSchema = [
|
|
37
|
+
{
|
|
38
|
+
Method: "air_accounts";
|
|
39
|
+
Parameters: [includeTestnets?: boolean];
|
|
40
|
+
ReturnType: {
|
|
41
|
+
chainId: number;
|
|
42
|
+
isDeployed: boolean;
|
|
43
|
+
address: Address;
|
|
44
|
+
}[];
|
|
45
|
+
},
|
|
37
46
|
{
|
|
38
47
|
Method: "air_listSessionKeyScopes";
|
|
39
48
|
Parameters: [chainId?: number];
|
|
@@ -102,10 +111,12 @@ export type StandardRpcSchema = [
|
|
|
102
111
|
RpcMethod<"eth_sendTransaction", unknown[], string>,
|
|
103
112
|
RpcMethod<"eth_sign", unknown[], string>,
|
|
104
113
|
RpcMethod<"personal_sign", unknown[], string>,
|
|
114
|
+
RpcMethod<"eth_signTypedData_v4", unknown[], string>,
|
|
105
115
|
RpcMethod<"wallet_switchEthereumChain", [{
|
|
106
116
|
chainId: `0x${string}`;
|
|
107
117
|
}], null>,
|
|
108
|
-
RpcMethod<"wallet_addEthereumChain", unknown[], null
|
|
118
|
+
RpcMethod<"wallet_addEthereumChain", unknown[], null>,
|
|
119
|
+
RpcMethod<"wallet_sendCalls", unknown[], string>
|
|
109
120
|
];
|
|
110
121
|
/**
|
|
111
122
|
* Combined schema including Air custom methods and standard methods
|
package/dist/types/utils.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { AirUrlConfig, BUILD_ENV_TYPE } from "./interfaces";
|
|
1
|
+
import { AirUrlConfig, BUILD_ENV_TYPE, CredentialNetwork } from "./interfaces";
|
|
2
2
|
export declare const FONT_CDNS: string[];
|
|
3
3
|
export declare const AIR_URLS: Record<BUILD_ENV_TYPE, AirUrlConfig>;
|
|
4
|
+
export declare const getAirUrls: (buildEnv: BUILD_ENV_TYPE, credentialNetwork?: CredentialNetwork) => AirUrlConfig;
|
|
4
5
|
/**
|
|
5
6
|
* Injects dns-prefetch, preconnect, and prefetch link tags
|
|
6
7
|
* for a given resource or page URL.
|
|
@@ -14,8 +15,6 @@ export declare const addResourceHints: (url: string, options?: {
|
|
|
14
15
|
prefetch?: boolean;
|
|
15
16
|
as?: string;
|
|
16
17
|
}) => void;
|
|
17
|
-
export declare const
|
|
18
|
-
export declare const htmlToElement: <T extends Element>(html: string) => T;
|
|
19
|
-
export declare const isElement: (element: unknown) => element is Element | Document;
|
|
18
|
+
export declare const isElement: (element: unknown) => element is Document | Element;
|
|
20
19
|
export declare const randomId: () => string;
|
|
21
20
|
export declare const extractErrorHash: (message: string) => string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mocanetwork/airkit",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.8.0-beta.0",
|
|
4
4
|
"description": "Air kit to interact with the Moca Network",
|
|
5
5
|
"main": "dist/airkit.cjs.js",
|
|
6
6
|
"module": "dist/airkit.esm.js",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"@types/pump": "^1.1.3",
|
|
34
34
|
"@types/readable-stream": "^4.0.15",
|
|
35
35
|
"fs-extra": "^11.2.0",
|
|
36
|
-
"glob": "^11.
|
|
36
|
+
"glob": "^11.1.0",
|
|
37
37
|
"process": "^0.11.10",
|
|
38
38
|
"typescript-eslint": "^8.21.0"
|
|
39
39
|
},
|