@mocanetwork/airkit-connector 1.2.0 → 1.3.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/airkitConnector.cjs.js +148 -310
- package/dist/airkitConnector.esm.js +148 -310
- package/dist/airkitConnector.umd.js +148 -310
- package/package.json +2 -2
- package/src/lib/connector.ts +2 -2
|
@@ -41,7 +41,7 @@ function __values(o) {
|
|
|
41
41
|
if (m) return m.call(o);
|
|
42
42
|
if (o && typeof o.length === "number") return {
|
|
43
43
|
next: function () {
|
|
44
|
-
if (o && i >= o.length) o =
|
|
44
|
+
if (o && i >= o.length) o = void 0;
|
|
45
45
|
return {
|
|
46
46
|
value: o && o[i++],
|
|
47
47
|
done: !o
|
|
@@ -119,6 +119,8 @@ const AirAuthMessageTypes = {
|
|
|
119
119
|
CROSS_PARTNER_TOKEN_RESPONSE: "air_auth_cross_partner_token_response",
|
|
120
120
|
PARTNER_ACCESS_TOKEN_REQUEST: "air_auth_partner_access_token_request",
|
|
121
121
|
PARTNER_ACCESS_TOKEN_RESPONSE: "air_auth_partner_access_token_response",
|
|
122
|
+
CREDENTIAL_SALT_REQUEST: "air_auth_credential_salt_request",
|
|
123
|
+
CREDENTIAL_SALT_RESPONSE: "air_auth_credential_salt_response",
|
|
122
124
|
LOGOUT_REQUEST: "air_auth_logout_request",
|
|
123
125
|
LOGOUT_RESPONSE: "air_auth_logout_response",
|
|
124
126
|
RESET_WALLET_COMMUNICATION: "air_auth_reset_wallet_communication"
|
|
@@ -137,14 +139,6 @@ const AirWalletMessageTypes = {
|
|
|
137
139
|
CLAIM_ID_RESPONSE: "air_claim_id_response",
|
|
138
140
|
DEPLOY_SMART_ACCOUNT_REQUEST: "air_deploy_smart_account_request",
|
|
139
141
|
DEPLOY_SMART_ACCOUNT_RESPONSE: "air_deploy_smart_account_response",
|
|
140
|
-
GRANT_PERMISSIONS_REQUEST: "air_grant_permissions_request",
|
|
141
|
-
GRANT_PERMISSIONS_RESPONSE: "air_grant_permissions_response",
|
|
142
|
-
EXECUTE_ACTION_REQUEST: "air_execute_action_request",
|
|
143
|
-
EXECUTE_ACTION_RESPONSE: "air_execute_action_response",
|
|
144
|
-
REVOKE_PERMISSIONS_REQUEST: "air_revoke_permissions_request",
|
|
145
|
-
REVOKE_PERMISSIONS_RESPONSE: "air_revoke_permissions_response",
|
|
146
|
-
LIST_ALL_SESSION_KEY_SCOPES_REQUEST: "air_list_all_session_key_scopes_request",
|
|
147
|
-
LIST_ALL_SESSION_KEY_SCOPES_RESPONSE: "air_list_all_session_key_scopes_response",
|
|
148
142
|
WALLET_IFRAME_VISIBILITY_REQUEST: "air_wallet_iframe_visibility_request",
|
|
149
143
|
OPEN_WINDOW_REQUEST: "air_open_window_request",
|
|
150
144
|
OPEN_WINDOW_RESPONSE: "air_open_window_response",
|
|
@@ -195,20 +189,20 @@ const BUILD_ENV = {
|
|
|
195
189
|
};
|
|
196
190
|
const AIR_URLS = {
|
|
197
191
|
[BUILD_ENV.DEVELOPMENT]: {
|
|
198
|
-
authUrl: "http://localhost:
|
|
199
|
-
walletUrl: "http://localhost:8200"
|
|
192
|
+
authUrl: "http://localhost:8200/auth/",
|
|
193
|
+
walletUrl: "http://localhost:8200/wallet/"
|
|
200
194
|
},
|
|
201
195
|
[BUILD_ENV.UAT]: {
|
|
202
|
-
authUrl: "https://
|
|
203
|
-
walletUrl: "https://account.uat.air3.com"
|
|
196
|
+
authUrl: "https://account.uat.air3.com/auth/",
|
|
197
|
+
walletUrl: "https://account.uat.air3.com/wallet/"
|
|
204
198
|
},
|
|
205
199
|
[BUILD_ENV.STAGING]: {
|
|
206
|
-
authUrl: "https://
|
|
207
|
-
walletUrl: "https://account.staging.air3.com"
|
|
200
|
+
authUrl: "https://account.staging.air3.com/auth/",
|
|
201
|
+
walletUrl: "https://account.staging.air3.com/wallet/"
|
|
208
202
|
},
|
|
209
203
|
[BUILD_ENV.PRODUCTION]: {
|
|
210
|
-
authUrl: "https://
|
|
211
|
-
walletUrl: "https://account.air3.com"
|
|
204
|
+
authUrl: "https://account.air3.com/auth/",
|
|
205
|
+
walletUrl: "https://account.air3.com/wallet/"
|
|
212
206
|
}
|
|
213
207
|
};
|
|
214
208
|
const isElement = element => element instanceof Element || element instanceof Document;
|
|
@@ -807,7 +801,7 @@ var Subscription = function () {
|
|
|
807
801
|
}
|
|
808
802
|
teardown._addParent(this);
|
|
809
803
|
}
|
|
810
|
-
(this._finalizers = (_a = this._finalizers) !== null && _a !==
|
|
804
|
+
(this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);
|
|
811
805
|
}
|
|
812
806
|
}
|
|
813
807
|
};
|
|
@@ -853,11 +847,7 @@ function execFinalizer(finalizer) {
|
|
|
853
847
|
}
|
|
854
848
|
}
|
|
855
849
|
var config = {
|
|
856
|
-
|
|
857
|
-
onStoppedNotification: null,
|
|
858
|
-
Promise: undefined,
|
|
859
|
-
useDeprecatedSynchronousErrorHandling: false,
|
|
860
|
-
useDeprecatedNextContext: false
|
|
850
|
+
Promise: undefined
|
|
861
851
|
};
|
|
862
852
|
var timeoutProvider = {
|
|
863
853
|
setTimeout: function (handler, timeout) {
|
|
@@ -865,7 +855,7 @@ var timeoutProvider = {
|
|
|
865
855
|
for (var _i = 2; _i < arguments.length; _i++) {
|
|
866
856
|
args[_i - 2] = arguments[_i];
|
|
867
857
|
}
|
|
868
|
-
return setTimeout.apply(
|
|
858
|
+
return setTimeout.apply(void 0, __spreadArray([handler, timeout], __read(args)));
|
|
869
859
|
},
|
|
870
860
|
clearTimeout: function (handle) {
|
|
871
861
|
return clearTimeout(handle);
|
|
@@ -991,9 +981,9 @@ var SafeSubscriber = function (_super) {
|
|
|
991
981
|
var partialObserver;
|
|
992
982
|
if (isFunction(observerOrNext) || !observerOrNext) {
|
|
993
983
|
partialObserver = {
|
|
994
|
-
next: observerOrNext !== null && observerOrNext !==
|
|
995
|
-
error: error !== null && error !==
|
|
996
|
-
complete: complete !== null && complete !==
|
|
984
|
+
next: observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined,
|
|
985
|
+
error: error !== null && error !== void 0 ? error : undefined,
|
|
986
|
+
complete: complete !== null && complete !== void 0 ? complete : undefined
|
|
997
987
|
};
|
|
998
988
|
} else {
|
|
999
989
|
{
|
|
@@ -1089,7 +1079,7 @@ var Observable = function () {
|
|
|
1089
1079
|
};
|
|
1090
1080
|
Observable.prototype._subscribe = function (subscriber) {
|
|
1091
1081
|
var _a;
|
|
1092
|
-
return (_a = this.source) === null || _a ===
|
|
1082
|
+
return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);
|
|
1093
1083
|
};
|
|
1094
1084
|
Observable.prototype[observable] = function () {
|
|
1095
1085
|
return this;
|
|
@@ -1122,7 +1112,7 @@ var Observable = function () {
|
|
|
1122
1112
|
}();
|
|
1123
1113
|
function getPromiseCtor(promiseCtor) {
|
|
1124
1114
|
var _a;
|
|
1125
|
-
return (_a = promiseCtor !== null && promiseCtor !==
|
|
1115
|
+
return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config.Promise) !== null && _a !== void 0 ? _a : Promise;
|
|
1126
1116
|
}
|
|
1127
1117
|
function isObserver(value) {
|
|
1128
1118
|
return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);
|
|
@@ -1131,7 +1121,7 @@ function isSubscriber(value) {
|
|
|
1131
1121
|
return value && value instanceof Subscriber || isObserver(value) && isSubscription(value);
|
|
1132
1122
|
}
|
|
1133
1123
|
function hasLift(source) {
|
|
1134
|
-
return isFunction(source === null || source ===
|
|
1124
|
+
return isFunction(source === null || source === void 0 ? void 0 : source.lift);
|
|
1135
1125
|
}
|
|
1136
1126
|
function operate(init) {
|
|
1137
1127
|
return function (source) {
|
|
@@ -1188,7 +1178,7 @@ var OperatorSubscriber = function (_super) {
|
|
|
1188
1178
|
if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {
|
|
1189
1179
|
var closed_1 = this.closed;
|
|
1190
1180
|
_super.prototype.unsubscribe.call(this);
|
|
1191
|
-
!closed_1 && ((_a = this.onFinalize) === null || _a ===
|
|
1181
|
+
!closed_1 && ((_a = this.onFinalize) === null || _a === void 0 ? void 0 : _a.call(this));
|
|
1192
1182
|
}
|
|
1193
1183
|
};
|
|
1194
1184
|
return OperatorSubscriber;
|
|
@@ -1284,7 +1274,7 @@ var Subject = function (_super) {
|
|
|
1284
1274
|
Object.defineProperty(Subject.prototype, "observed", {
|
|
1285
1275
|
get: function () {
|
|
1286
1276
|
var _a;
|
|
1287
|
-
return ((_a = this.observers) === null || _a ===
|
|
1277
|
+
return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0;
|
|
1288
1278
|
},
|
|
1289
1279
|
enumerable: false,
|
|
1290
1280
|
configurable: true
|
|
@@ -1345,19 +1335,19 @@ var AnonymousSubject = function (_super) {
|
|
|
1345
1335
|
}
|
|
1346
1336
|
AnonymousSubject.prototype.next = function (value) {
|
|
1347
1337
|
var _a, _b;
|
|
1348
|
-
(_b = (_a = this.destination) === null || _a ===
|
|
1338
|
+
(_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value);
|
|
1349
1339
|
};
|
|
1350
1340
|
AnonymousSubject.prototype.error = function (err) {
|
|
1351
1341
|
var _a, _b;
|
|
1352
|
-
(_b = (_a = this.destination) === null || _a ===
|
|
1342
|
+
(_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err);
|
|
1353
1343
|
};
|
|
1354
1344
|
AnonymousSubject.prototype.complete = function () {
|
|
1355
1345
|
var _a, _b;
|
|
1356
|
-
(_b = (_a = this.destination) === null || _a ===
|
|
1346
|
+
(_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
1357
1347
|
};
|
|
1358
1348
|
AnonymousSubject.prototype._subscribe = function (subscriber) {
|
|
1359
1349
|
var _a, _b;
|
|
1360
|
-
return (_b = (_a = this.source) === null || _a ===
|
|
1350
|
+
return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : EMPTY_SUBSCRIPTION;
|
|
1361
1351
|
};
|
|
1362
1352
|
return AnonymousSubject;
|
|
1363
1353
|
}(Subject);
|
|
@@ -1401,6 +1391,27 @@ function filter(predicate, thisArg) {
|
|
|
1401
1391
|
}));
|
|
1402
1392
|
});
|
|
1403
1393
|
}
|
|
1394
|
+
const bigIntReplacer = (_key, value) => {
|
|
1395
|
+
return typeof value === "bigint" ? value.toString() : value;
|
|
1396
|
+
};
|
|
1397
|
+
/**
|
|
1398
|
+
* Creates a window features string for `window.open`, based on the current screen size.
|
|
1399
|
+
* It tries to center the window and limits the size to the given max width and height.
|
|
1400
|
+
* Slightly reduces the size to avoid browser auto-resizing.
|
|
1401
|
+
*/
|
|
1402
|
+
const getWindowFeatures = (maxWidth, maxHeight) => {
|
|
1403
|
+
const dualScreenLeft = window.screenLeft !== undefined ? window.screenLeft : window.screenX;
|
|
1404
|
+
const dualScreenTop = window.screenTop !== undefined ? window.screenTop : window.screenY;
|
|
1405
|
+
const w = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : window.screen.width;
|
|
1406
|
+
const h = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : window.screen.height;
|
|
1407
|
+
// 95% adjustment for mobile devices, some browser might resize the window
|
|
1408
|
+
const finalWidth = Math.min(w, maxWidth) * 0.95;
|
|
1409
|
+
const finalHeight = Math.min(h, maxHeight) * 0.95;
|
|
1410
|
+
const systemZoom = 1; // No reliable estimate
|
|
1411
|
+
const left = Math.abs((w - finalWidth) / 2 / systemZoom + dualScreenLeft);
|
|
1412
|
+
const top = Math.abs((h - finalHeight) / 2 / systemZoom + dualScreenTop);
|
|
1413
|
+
return `titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=${finalHeight / systemZoom},width=${finalWidth / systemZoom},top=${top},left=${left}`;
|
|
1414
|
+
};
|
|
1404
1415
|
|
|
1405
1416
|
// refer to realm-network-api/src/common/enums/error-codes.enum.ts
|
|
1406
1417
|
/*** Authentication Errors ***/
|
|
@@ -1565,7 +1576,15 @@ class MessageServiceBase {
|
|
|
1565
1576
|
this.messagePort = target;
|
|
1566
1577
|
target.onmessage = handleMessage;
|
|
1567
1578
|
this.closeListener = async () => {
|
|
1568
|
-
|
|
1579
|
+
this.messagePort?.close();
|
|
1580
|
+
this.messagePort = undefined;
|
|
1581
|
+
};
|
|
1582
|
+
} else if (target instanceof BroadcastChannel) {
|
|
1583
|
+
this.messageChannel = target;
|
|
1584
|
+
target.onmessage = handleMessage;
|
|
1585
|
+
this.closeListener = async () => {
|
|
1586
|
+
this.messageChannel?.close();
|
|
1587
|
+
this.messageChannel = undefined;
|
|
1569
1588
|
};
|
|
1570
1589
|
} else {
|
|
1571
1590
|
this.targetWindow = target.window;
|
|
@@ -1607,23 +1626,22 @@ class MessageServiceBase {
|
|
|
1607
1626
|
const clonedMessage = this.deepClone(message);
|
|
1608
1627
|
if (this.messagePort) {
|
|
1609
1628
|
this.messagePort.postMessage(clonedMessage);
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
origin: window.origin
|
|
1613
|
-
}));
|
|
1629
|
+
} else if (this.messageChannel) {
|
|
1630
|
+
this.messageChannel.postMessage(clonedMessage);
|
|
1614
1631
|
} else if (this.targetWindow && this.targetOrigin) {
|
|
1615
1632
|
this.targetWindow.postMessage(clonedMessage, this.targetOrigin, transfer);
|
|
1616
|
-
this.eventSubject.next(new MessageEvent("message", {
|
|
1617
|
-
data: clonedMessage,
|
|
1618
|
-
origin: window.origin
|
|
1619
|
-
}));
|
|
1620
1633
|
} else {
|
|
1621
1634
|
log$1.debug(`[${this.name}] Not opened yet`);
|
|
1635
|
+
return;
|
|
1622
1636
|
}
|
|
1637
|
+
this.eventSubject.next(new MessageEvent("message", {
|
|
1638
|
+
data: clonedMessage,
|
|
1639
|
+
origin: window.origin
|
|
1640
|
+
}));
|
|
1623
1641
|
}
|
|
1624
1642
|
deepClone(message) {
|
|
1625
1643
|
try {
|
|
1626
|
-
return JSON.parse(JSON.stringify(message));
|
|
1644
|
+
return JSON.parse(JSON.stringify(message, bigIntReplacer));
|
|
1627
1645
|
} catch (e) {
|
|
1628
1646
|
log$1.warn("Error generating cloneable message", e);
|
|
1629
1647
|
return message;
|
|
@@ -1663,7 +1681,7 @@ class ProviderMessageService extends MessageServiceBase {
|
|
|
1663
1681
|
}
|
|
1664
1682
|
_a$2 = ProviderMessageService;
|
|
1665
1683
|
_ProviderMessageService_instance = {
|
|
1666
|
-
value:
|
|
1684
|
+
value: void 0
|
|
1667
1685
|
};
|
|
1668
1686
|
var _AirWalletProvider_instances, _AirWalletProvider_providerMessageService, _AirWalletProvider_isLoggedIn, _AirWalletProvider_ensureWallet, _AirWalletProvider_eventListeners, _AirWalletProvider_emit;
|
|
1669
1687
|
class AirWalletProvider {
|
|
@@ -1672,10 +1690,10 @@ class AirWalletProvider {
|
|
|
1672
1690
|
ensureWallet
|
|
1673
1691
|
}) {
|
|
1674
1692
|
_AirWalletProvider_instances.add(this);
|
|
1675
|
-
_AirWalletProvider_providerMessageService.set(this,
|
|
1676
|
-
_AirWalletProvider_isLoggedIn.set(this,
|
|
1677
|
-
_AirWalletProvider_ensureWallet.set(this,
|
|
1678
|
-
_AirWalletProvider_eventListeners.set(this,
|
|
1693
|
+
_AirWalletProvider_providerMessageService.set(this, void 0);
|
|
1694
|
+
_AirWalletProvider_isLoggedIn.set(this, void 0);
|
|
1695
|
+
_AirWalletProvider_ensureWallet.set(this, void 0);
|
|
1696
|
+
_AirWalletProvider_eventListeners.set(this, void 0);
|
|
1679
1697
|
this.startEventMessageListening = async walletIframe => {
|
|
1680
1698
|
await __classPrivateFieldGet$1(this, _AirWalletProvider_providerMessageService, "f").open(walletIframe);
|
|
1681
1699
|
__classPrivateFieldGet$1(this, _AirWalletProvider_providerMessageService, "f").messages$.pipe(filter(msg => msg.type === AirWalletProviderMessageTypes.EVENT)).subscribe(message => {
|
|
@@ -1714,8 +1732,15 @@ class AirWalletProvider {
|
|
|
1714
1732
|
if (!__classPrivateFieldGet$1(this, _AirWalletProvider_isLoggedIn, "f").call(this)) {
|
|
1715
1733
|
throw new UnauthorizedProviderError("User is not logged in");
|
|
1716
1734
|
}
|
|
1735
|
+
const skipWalletLoginMethods = ['eth_chainId'];
|
|
1717
1736
|
try {
|
|
1718
|
-
|
|
1737
|
+
if (skipWalletLoginMethods.includes(method)) {
|
|
1738
|
+
await __classPrivateFieldGet$1(this, _AirWalletProvider_ensureWallet, "f").call(this, {
|
|
1739
|
+
skipWalletLogin: true
|
|
1740
|
+
});
|
|
1741
|
+
} else {
|
|
1742
|
+
await __classPrivateFieldGet$1(this, _AirWalletProvider_ensureWallet, "f").call(this);
|
|
1743
|
+
}
|
|
1719
1744
|
} catch (error) {
|
|
1720
1745
|
throw ensureProviderRpcError(error);
|
|
1721
1746
|
}
|
|
@@ -1821,25 +1846,6 @@ class IframeController {
|
|
|
1821
1846
|
IframeController.defaultState = {
|
|
1822
1847
|
isVisible: false
|
|
1823
1848
|
};
|
|
1824
|
-
|
|
1825
|
-
/**
|
|
1826
|
-
* Creates a window features string for `window.open`, based on the current screen size.
|
|
1827
|
-
* It tries to center the window and limits the size to the given max width and height.
|
|
1828
|
-
* Slightly reduces the size to avoid browser auto-resizing.
|
|
1829
|
-
*/
|
|
1830
|
-
const getWindowFeatures = (maxWidth, maxHeight) => {
|
|
1831
|
-
const dualScreenLeft = window.screenLeft !== undefined ? window.screenLeft : window.screenX;
|
|
1832
|
-
const dualScreenTop = window.screenTop !== undefined ? window.screenTop : window.screenY;
|
|
1833
|
-
const w = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : window.screen.width;
|
|
1834
|
-
const h = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : window.screen.height;
|
|
1835
|
-
// 95% adjustment for mobile devices, some browser might resize the window
|
|
1836
|
-
const finalWidth = Math.min(w, maxWidth) * 0.95;
|
|
1837
|
-
const finalHeight = Math.min(h, maxHeight) * 0.95;
|
|
1838
|
-
const systemZoom = 1; // No reliable estimate
|
|
1839
|
-
const left = Math.abs((w - finalWidth) / 2 / systemZoom + dualScreenLeft);
|
|
1840
|
-
const top = Math.abs((h - finalHeight) / 2 / systemZoom + dualScreenTop);
|
|
1841
|
-
return `titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=${finalHeight / systemZoom},width=${finalWidth / systemZoom},top=${top},left=${left}`;
|
|
1842
|
-
};
|
|
1843
1849
|
class WindowController {
|
|
1844
1850
|
get messages$() {
|
|
1845
1851
|
return this._messages$.asObservable();
|
|
@@ -1982,7 +1988,8 @@ class WindowService {
|
|
|
1982
1988
|
partnerId,
|
|
1983
1989
|
enableLogging,
|
|
1984
1990
|
onRetry,
|
|
1985
|
-
sdkVersion
|
|
1991
|
+
sdkVersion,
|
|
1992
|
+
enableAutomation
|
|
1986
1993
|
}) {
|
|
1987
1994
|
if (this.windowControllers.has(windowId)) {
|
|
1988
1995
|
throw new Error("Window controller already exists");
|
|
@@ -2007,7 +2014,8 @@ class WindowService {
|
|
|
2007
2014
|
} = await this.sendWindowInitializationRequest(windowId, {
|
|
2008
2015
|
partnerId,
|
|
2009
2016
|
enableLogging,
|
|
2010
|
-
sdkVersion
|
|
2017
|
+
sdkVersion,
|
|
2018
|
+
enableAutomation
|
|
2011
2019
|
}, channel.port1);
|
|
2012
2020
|
if (payload.success === false) {
|
|
2013
2021
|
reject(new AirServiceError(payload.errorName, payload.errorMessage));
|
|
@@ -2043,7 +2051,7 @@ class WindowService {
|
|
|
2043
2051
|
}
|
|
2044
2052
|
var WindowService$1 = WindowService.instance;
|
|
2045
2053
|
var _a$1, _AuthMessageService_instance;
|
|
2046
|
-
const ALLOWED_AUTH_MESSAGES = [AirAuthMessageTypes.INITIALIZATION_RESPONSE, AirAuthMessageTypes.LOGIN_RESPONSE, AirAuthMessageTypes.SETUP_WALLET_REQUEST, AirAuthMessageTypes.LOGOUT_RESPONSE, AirAuthMessageTypes.PARTNER_USER_INFO_RESPONSE, AirAuthMessageTypes.CROSS_PARTNER_TOKEN_RESPONSE, AirAuthMessageTypes.PARTNER_ACCESS_TOKEN_RESPONSE, AirAuthMessageTypes.IFRAME_VISIBILITY_REQUEST];
|
|
2054
|
+
const ALLOWED_AUTH_MESSAGES = [AirAuthMessageTypes.INITIALIZATION_RESPONSE, AirAuthMessageTypes.LOGIN_RESPONSE, AirAuthMessageTypes.SETUP_WALLET_REQUEST, AirAuthMessageTypes.LOGOUT_RESPONSE, AirAuthMessageTypes.PARTNER_USER_INFO_RESPONSE, AirAuthMessageTypes.CROSS_PARTNER_TOKEN_RESPONSE, AirAuthMessageTypes.PARTNER_ACCESS_TOKEN_RESPONSE, AirAuthMessageTypes.IFRAME_VISIBILITY_REQUEST, AirAuthMessageTypes.CREDENTIAL_SALT_RESPONSE];
|
|
2047
2055
|
class AuthMessageService extends MessageServiceBase {
|
|
2048
2056
|
static create() {
|
|
2049
2057
|
if (__classPrivateFieldGet$1(this, _a$1, "f", _AuthMessageService_instance)) throw new Error("AuthMessageService already created");
|
|
@@ -2058,10 +2066,10 @@ class AuthMessageService extends MessageServiceBase {
|
|
|
2058
2066
|
origin
|
|
2059
2067
|
});
|
|
2060
2068
|
}
|
|
2061
|
-
async initWalletCommunication(
|
|
2069
|
+
async initWalletCommunication() {
|
|
2062
2070
|
await this.sendMessage({
|
|
2063
2071
|
type: AirAuthMessageTypes.INIT_WALLET_COMMUNICATION
|
|
2064
|
-
}
|
|
2072
|
+
});
|
|
2065
2073
|
}
|
|
2066
2074
|
async sendPartnerUserInfoRequest() {
|
|
2067
2075
|
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirAuthMessageTypes.PARTNER_USER_INFO_RESPONSE)));
|
|
@@ -2129,13 +2137,20 @@ class AuthMessageService extends MessageServiceBase {
|
|
|
2129
2137
|
});
|
|
2130
2138
|
return response;
|
|
2131
2139
|
}
|
|
2140
|
+
async sendCredentialSaltRequest() {
|
|
2141
|
+
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirAuthMessageTypes.CREDENTIAL_SALT_RESPONSE)));
|
|
2142
|
+
await this.sendMessage({
|
|
2143
|
+
type: AirAuthMessageTypes.CREDENTIAL_SALT_REQUEST
|
|
2144
|
+
});
|
|
2145
|
+
return response;
|
|
2146
|
+
}
|
|
2132
2147
|
}
|
|
2133
2148
|
_a$1 = AuthMessageService;
|
|
2134
2149
|
_AuthMessageService_instance = {
|
|
2135
|
-
value:
|
|
2150
|
+
value: void 0
|
|
2136
2151
|
};
|
|
2137
2152
|
var _a, _WalletMessageService_instance;
|
|
2138
|
-
const ALLOWED_WALLET_MESSAGES = [AirWalletMessageTypes.INITIALIZATION_RESPONSE, AirWalletMessageTypes.WALLET_INITIALIZED, AirWalletMessageTypes.WALLET_LOGIN_RESPONSE, AirWalletMessageTypes.SETUP_OR_UPDATE_MFA_RESPONSE, AirWalletMessageTypes.CLAIM_ID_RESPONSE, AirWalletMessageTypes.IS_SMART_ACCOUNT_DEPLOYED_RESPONSE, AirWalletMessageTypes.DEPLOY_SMART_ACCOUNT_RESPONSE, AirWalletMessageTypes.
|
|
2153
|
+
const ALLOWED_WALLET_MESSAGES = [AirWalletMessageTypes.INITIALIZATION_RESPONSE, AirWalletMessageTypes.WALLET_INITIALIZED, AirWalletMessageTypes.WALLET_LOGIN_RESPONSE, AirWalletMessageTypes.SETUP_OR_UPDATE_MFA_RESPONSE, AirWalletMessageTypes.CLAIM_ID_RESPONSE, AirWalletMessageTypes.IS_SMART_ACCOUNT_DEPLOYED_RESPONSE, AirWalletMessageTypes.DEPLOY_SMART_ACCOUNT_RESPONSE, AirWalletMessageTypes.WALLET_INITIALIZED, AirWalletMessageTypes.WALLET_IFRAME_VISIBILITY_REQUEST, AirWalletMessageTypes.LOGOUT_RESPONSE, AirWalletMessageTypes.OPEN_WINDOW_REQUEST, AirWalletMessageTypes.OPEN_WINDOW_RETRY_RESPONSE];
|
|
2139
2154
|
class WalletMessageService extends MessageServiceBase {
|
|
2140
2155
|
static create() {
|
|
2141
2156
|
if (__classPrivateFieldGet$1(this, _a, "f", _WalletMessageService_instance)) throw new Error("WalletMessageService already created");
|
|
@@ -2150,61 +2165,13 @@ class WalletMessageService extends MessageServiceBase {
|
|
|
2150
2165
|
origin
|
|
2151
2166
|
});
|
|
2152
2167
|
}
|
|
2153
|
-
async initAuthCommunication(skipWalletLogin
|
|
2168
|
+
async initAuthCommunication(skipWalletLogin) {
|
|
2154
2169
|
await this.sendMessage({
|
|
2155
2170
|
type: AirWalletMessageTypes.INIT_AUTH_COMMUNICATION,
|
|
2156
2171
|
payload: {
|
|
2157
2172
|
skipWalletLogin
|
|
2158
2173
|
}
|
|
2159
|
-
}, [port]);
|
|
2160
|
-
}
|
|
2161
|
-
async sendGrantPermissionRequest(policies) {
|
|
2162
|
-
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.GRANT_PERMISSIONS_RESPONSE)));
|
|
2163
|
-
await this.sendMessage({
|
|
2164
|
-
type: AirWalletMessageTypes.GRANT_PERMISSIONS_REQUEST,
|
|
2165
|
-
payload: {
|
|
2166
|
-
policies
|
|
2167
|
-
}
|
|
2168
2174
|
});
|
|
2169
|
-
const result = await response;
|
|
2170
|
-
if (result.payload.success === false) {
|
|
2171
|
-
throw new AirServiceError(result.payload.errorName, result.payload.errorMessage);
|
|
2172
|
-
}
|
|
2173
|
-
return result.payload.sessionData;
|
|
2174
|
-
}
|
|
2175
|
-
async sendExecuteActionRequest(params) {
|
|
2176
|
-
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.EXECUTE_ACTION_RESPONSE)));
|
|
2177
|
-
await this.sendMessage({
|
|
2178
|
-
type: AirWalletMessageTypes.EXECUTE_ACTION_REQUEST,
|
|
2179
|
-
payload: {
|
|
2180
|
-
sessionData: params.sessionData,
|
|
2181
|
-
call: {
|
|
2182
|
-
to: params.call.to,
|
|
2183
|
-
value: params.call.value,
|
|
2184
|
-
data: params.call.data
|
|
2185
|
-
},
|
|
2186
|
-
sessionOwnerPrivateKey: params.sessionOwnerPrivateKey
|
|
2187
|
-
}
|
|
2188
|
-
});
|
|
2189
|
-
const result = await response;
|
|
2190
|
-
if (result.payload.success === false) {
|
|
2191
|
-
throw new AirServiceError(result.payload.errorName, result.payload.errorMessage);
|
|
2192
|
-
}
|
|
2193
|
-
return result.payload.txHash;
|
|
2194
|
-
}
|
|
2195
|
-
async sendRevokePermissionsRequest(permissionId) {
|
|
2196
|
-
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.REVOKE_PERMISSIONS_RESPONSE)));
|
|
2197
|
-
await this.sendMessage({
|
|
2198
|
-
type: AirWalletMessageTypes.REVOKE_PERMISSIONS_REQUEST,
|
|
2199
|
-
payload: {
|
|
2200
|
-
permissionId
|
|
2201
|
-
}
|
|
2202
|
-
});
|
|
2203
|
-
const result = await response;
|
|
2204
|
-
if (result.payload.success === false) {
|
|
2205
|
-
throw new AirServiceError(result.payload.errorName, result.payload.errorMessage);
|
|
2206
|
-
}
|
|
2207
|
-
return result.payload.txHash;
|
|
2208
2175
|
}
|
|
2209
2176
|
async sendDeploySmartAccountRequest() {
|
|
2210
2177
|
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.DEPLOY_SMART_ACCOUNT_RESPONSE)));
|
|
@@ -2235,21 +2202,6 @@ class WalletMessageService extends MessageServiceBase {
|
|
|
2235
2202
|
});
|
|
2236
2203
|
return response;
|
|
2237
2204
|
}
|
|
2238
|
-
async sendGrantPermissionsRequest(payload) {
|
|
2239
|
-
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.GRANT_PERMISSIONS_RESPONSE)));
|
|
2240
|
-
await this.sendMessage({
|
|
2241
|
-
type: AirWalletMessageTypes.GRANT_PERMISSIONS_REQUEST,
|
|
2242
|
-
payload
|
|
2243
|
-
});
|
|
2244
|
-
return response;
|
|
2245
|
-
}
|
|
2246
|
-
async sendListAllSessionKeyScopesRequest() {
|
|
2247
|
-
const response = firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.LIST_ALL_SESSION_KEY_SCOPES_RESPONSE)));
|
|
2248
|
-
await this.sendMessage({
|
|
2249
|
-
type: AirWalletMessageTypes.LIST_ALL_SESSION_KEY_SCOPES_REQUEST
|
|
2250
|
-
});
|
|
2251
|
-
return response;
|
|
2252
|
-
}
|
|
2253
2205
|
onInitialized() {
|
|
2254
2206
|
return firstValueFrom(this.messages$.pipe(filter(msg => msg.type === AirWalletMessageTypes.WALLET_INITIALIZED)));
|
|
2255
2207
|
}
|
|
@@ -2315,7 +2267,7 @@ class WalletMessageService extends MessageServiceBase {
|
|
|
2315
2267
|
}
|
|
2316
2268
|
_a = WalletMessageService;
|
|
2317
2269
|
_WalletMessageService_instance = {
|
|
2318
|
-
value:
|
|
2270
|
+
value: void 0
|
|
2319
2271
|
};
|
|
2320
2272
|
const getLevelName = levelNum => {
|
|
2321
2273
|
const levelNames = Object.keys(log$1.levels);
|
|
@@ -2337,78 +2289,11 @@ const configureLogLevel = (environment, enableLogging) => {
|
|
|
2337
2289
|
level = enableLogging ? log$1.levels.WARN : log$1.levels.ERROR;
|
|
2338
2290
|
}
|
|
2339
2291
|
log$1.setLevel(level);
|
|
2340
|
-
log$1.info(`[${window?.location?.
|
|
2341
|
-
};
|
|
2342
|
-
var name = "@mocanetwork/airkit";
|
|
2343
|
-
var version$2 = "1.2.0";
|
|
2344
|
-
var description = "Air kit to interact with the Moca Network";
|
|
2345
|
-
var main = "dist/airkit.cjs.js";
|
|
2346
|
-
var module$1 = "dist/airkit.esm.js";
|
|
2347
|
-
var unpkg = "dist/airkit.umd.min.js";
|
|
2348
|
-
var jsdelivr = "dist/airkit.umd.min.js";
|
|
2349
|
-
var types = "dist/types/index.d.ts";
|
|
2350
|
-
var files = ["dist"];
|
|
2351
|
-
var scripts = {
|
|
2352
|
-
build: "rollup --config",
|
|
2353
|
-
prepack: "npm run build && npm run postbuild",
|
|
2354
|
-
lint: "eslint --fix 'src/**/*.ts'",
|
|
2355
|
-
format: "prettier --write 'src/**/*.ts'",
|
|
2356
|
-
postbuild: "node scripts/copyAndAdjustDtsFiles.js '../common/src' 'common'"
|
|
2357
|
-
};
|
|
2358
|
-
var dependencies = {
|
|
2359
|
-
"@mocanetwork/airkit-connector": "^1.2.0",
|
|
2360
|
-
"fast-deep-equal": "^3.1.3",
|
|
2361
|
-
loglevel: "^1.9.2",
|
|
2362
|
-
pump: "^3.0.0",
|
|
2363
|
-
"readable-stream": "^4.5.2",
|
|
2364
|
-
rxjs: "^7.8.1"
|
|
2365
|
-
};
|
|
2366
|
-
var devDependencies = {
|
|
2367
|
-
"@babel/runtime": "^7.25.6",
|
|
2368
|
-
"@rushstack/eslint-patch": "^1.10.2",
|
|
2369
|
-
"@types/pump": "^1.1.3",
|
|
2370
|
-
"@types/readable-stream": "^4.0.15",
|
|
2371
|
-
"fs-extra": "^11.2.0",
|
|
2372
|
-
glob: "^11.0.0",
|
|
2373
|
-
process: "^0.11.10",
|
|
2374
|
-
"typescript-eslint": "^8.21.0"
|
|
2375
|
-
};
|
|
2376
|
-
var mocha = {
|
|
2377
|
-
timeout: 0
|
|
2378
|
-
};
|
|
2379
|
-
var keywords = ["airkit", "mocaverse", "wallet", "embed", "login", "OAuth", "crypto"];
|
|
2380
|
-
var author = "Mocaverse";
|
|
2381
|
-
var license = "ISC";
|
|
2382
|
-
var engines = {
|
|
2383
|
-
node: ">=18.x",
|
|
2384
|
-
npm: ">=9.x"
|
|
2385
|
-
};
|
|
2386
|
-
var publishConfig = {
|
|
2387
|
-
access: "restricted"
|
|
2292
|
+
log$1.info(`[${window?.location?.href}] LogLevel: ${getLevelName(log$1.getLevel())}`);
|
|
2388
2293
|
};
|
|
2294
|
+
var version$2 = "1.3.0";
|
|
2389
2295
|
var airkitPackage = {
|
|
2390
|
-
|
|
2391
|
-
version: version$2,
|
|
2392
|
-
description: description,
|
|
2393
|
-
main: main,
|
|
2394
|
-
module: module$1,
|
|
2395
|
-
unpkg: unpkg,
|
|
2396
|
-
jsdelivr: jsdelivr,
|
|
2397
|
-
types: types,
|
|
2398
|
-
files: files,
|
|
2399
|
-
scripts: scripts,
|
|
2400
|
-
dependencies: dependencies,
|
|
2401
|
-
devDependencies: devDependencies,
|
|
2402
|
-
mocha: mocha,
|
|
2403
|
-
keywords: keywords,
|
|
2404
|
-
author: author,
|
|
2405
|
-
license: license,
|
|
2406
|
-
"lint-staged": {
|
|
2407
|
-
"!(*d).{js,ts}": ["eslint --cache --fix", "prettier --write"],
|
|
2408
|
-
"*.{json, md}": ["prettier --write"]
|
|
2409
|
-
},
|
|
2410
|
-
engines: engines,
|
|
2411
|
-
publishConfig: publishConfig
|
|
2296
|
+
version: version$2
|
|
2412
2297
|
};
|
|
2413
2298
|
var _AirService_instances, _AirService_loginResult, _AirService_buildEnv, _AirService_enableLogging, _AirService_partnerId, _AirService_authMessagingService, _AirService_authIframeController, _AirService_isAuthInitialized, _AirService_airAuthListener, _AirService_walletMessagingService, _AirService_walletIframeController, _AirService_walletInitialization, _AirService_walletLoggedInResult, _AirService_airWalletProvider, _AirService_ensureWallet, _AirService_initializeWallet, _AirService_subscribeToWalletEvents, _AirService_triggerEventListeners, _AirService_triggerAirAuthInitialized, _AirService_triggerAirAuthLoggedIn, _AirService_triggerAirAuthLoggedOut, _AirService_triggerWalletInitialized, _AirService_createLoginResult, _AirService_createWalletInitializedResult, _AirService_cleanUpAuth, _AirService_cleanUpWallet;
|
|
2414
2299
|
const airKitVersion = airkitPackage.version;
|
|
@@ -2417,20 +2302,20 @@ class AirService {
|
|
|
2417
2302
|
partnerId
|
|
2418
2303
|
}) {
|
|
2419
2304
|
_AirService_instances.add(this);
|
|
2420
|
-
_AirService_loginResult.set(this,
|
|
2421
|
-
_AirService_buildEnv.set(this,
|
|
2305
|
+
_AirService_loginResult.set(this, void 0);
|
|
2306
|
+
_AirService_buildEnv.set(this, void 0);
|
|
2422
2307
|
_AirService_enableLogging.set(this, false);
|
|
2423
|
-
_AirService_partnerId.set(this,
|
|
2308
|
+
_AirService_partnerId.set(this, void 0);
|
|
2424
2309
|
//#modalZIndex: number; TODO implement z index overwrite
|
|
2425
|
-
_AirService_authMessagingService.set(this,
|
|
2426
|
-
_AirService_authIframeController.set(this,
|
|
2310
|
+
_AirService_authMessagingService.set(this, void 0);
|
|
2311
|
+
_AirService_authIframeController.set(this, void 0);
|
|
2427
2312
|
_AirService_isAuthInitialized.set(this, false);
|
|
2428
2313
|
_AirService_airAuthListener.set(this, []);
|
|
2429
|
-
_AirService_walletMessagingService.set(this,
|
|
2430
|
-
_AirService_walletIframeController.set(this,
|
|
2431
|
-
_AirService_walletInitialization.set(this,
|
|
2432
|
-
_AirService_walletLoggedInResult.set(this,
|
|
2433
|
-
_AirService_airWalletProvider.set(this,
|
|
2314
|
+
_AirService_walletMessagingService.set(this, void 0);
|
|
2315
|
+
_AirService_walletIframeController.set(this, void 0);
|
|
2316
|
+
_AirService_walletInitialization.set(this, void 0);
|
|
2317
|
+
_AirService_walletLoggedInResult.set(this, void 0);
|
|
2318
|
+
_AirService_airWalletProvider.set(this, void 0);
|
|
2434
2319
|
__classPrivateFieldSet(this, _AirService_partnerId, partnerId);
|
|
2435
2320
|
__classPrivateFieldSet(this, _AirService_authMessagingService, AuthMessageService.create());
|
|
2436
2321
|
__classPrivateFieldSet(this, _AirService_walletMessagingService, WalletMessageService.create());
|
|
@@ -2460,6 +2345,9 @@ class AirService {
|
|
|
2460
2345
|
removeListener: provider.removeListener.bind(provider)
|
|
2461
2346
|
};
|
|
2462
2347
|
}
|
|
2348
|
+
shouldEnableAutomation() {
|
|
2349
|
+
return localStorage.getItem("automation") === "true" && __classPrivateFieldGet$1(this, _AirService_buildEnv, "f") !== "production";
|
|
2350
|
+
}
|
|
2463
2351
|
async init({
|
|
2464
2352
|
buildEnv = BUILD_ENV.PRODUCTION,
|
|
2465
2353
|
enableLogging = false,
|
|
@@ -2477,6 +2365,7 @@ class AirService {
|
|
|
2477
2365
|
__classPrivateFieldSet(this, _AirService_authIframeController, new IframeController(authUrl, `air-auth-${randomId()}`));
|
|
2478
2366
|
try {
|
|
2479
2367
|
__classPrivateFieldGet$1(this, _AirService_authIframeController, "f").createIframe();
|
|
2368
|
+
log$1.info(authUrl, "url loaded");
|
|
2480
2369
|
await __classPrivateFieldGet$1(this, _AirService_authMessagingService, "f").open(__classPrivateFieldGet$1(this, _AirService_authIframeController, "f").iframeElement);
|
|
2481
2370
|
__classPrivateFieldGet$1(this, _AirService_authMessagingService, "f").messages$.subscribe(async msg => {
|
|
2482
2371
|
switch (msg.type) {
|
|
@@ -2514,7 +2403,8 @@ class AirService {
|
|
|
2514
2403
|
skipRehydration,
|
|
2515
2404
|
partnerDAppUrl: window.location.href,
|
|
2516
2405
|
sdkVersion: airKitVersion,
|
|
2517
|
-
enableLogging: __classPrivateFieldGet$1(this, _AirService_enableLogging, "f")
|
|
2406
|
+
enableLogging: __classPrivateFieldGet$1(this, _AirService_enableLogging, "f"),
|
|
2407
|
+
enableAutomation: this.shouldEnableAutomation()
|
|
2518
2408
|
});
|
|
2519
2409
|
if (payload.success === true) {
|
|
2520
2410
|
resolve(payload);
|
|
@@ -2581,66 +2471,17 @@ class AirService {
|
|
|
2581
2471
|
/**
|
|
2582
2472
|
* @experimental This method is experimental and will change in the future.
|
|
2583
2473
|
*/
|
|
2584
|
-
async
|
|
2585
|
-
if (!__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) throw new Error("AirAuth is not initialized");
|
|
2586
|
-
await __classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_ensureWallet).call(this);
|
|
2587
|
-
try {
|
|
2588
|
-
log$1.info("grantPermission", policies);
|
|
2589
|
-
const {
|
|
2590
|
-
payload
|
|
2591
|
-
} = await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").sendGrantPermissionsRequest({
|
|
2592
|
-
policies
|
|
2593
|
-
});
|
|
2594
|
-
if (payload.success === false) {
|
|
2595
|
-
throw new AirServiceError(payload.errorName, payload.errorMessage);
|
|
2596
|
-
}
|
|
2597
|
-
return payload.sessionData;
|
|
2598
|
-
} catch (error) {
|
|
2599
|
-
throw AirServiceError.from(error);
|
|
2600
|
-
}
|
|
2601
|
-
}
|
|
2602
|
-
/**
|
|
2603
|
-
* @experimental This method is experimental and will change in the future.
|
|
2604
|
-
*/
|
|
2605
|
-
async listAllSessionKeyScopes() {
|
|
2474
|
+
async isSmartAccountDeployed() {
|
|
2606
2475
|
if (!__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) throw new Error("Service is not initialized");
|
|
2607
2476
|
await __classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_ensureWallet).call(this);
|
|
2608
2477
|
try {
|
|
2609
2478
|
const {
|
|
2610
2479
|
payload
|
|
2611
|
-
} = await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").
|
|
2480
|
+
} = await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").sendIsSmartAccountDeployedRequest();
|
|
2612
2481
|
if (payload.success === false) {
|
|
2613
2482
|
throw new AirServiceError(payload.errorName, payload.errorMessage);
|
|
2614
2483
|
}
|
|
2615
|
-
return payload.
|
|
2616
|
-
} catch (error) {
|
|
2617
|
-
throw AirServiceError.from(error);
|
|
2618
|
-
}
|
|
2619
|
-
}
|
|
2620
|
-
/**
|
|
2621
|
-
* @experimental This method is experimental and will change in the future.
|
|
2622
|
-
*/
|
|
2623
|
-
async executeAction(params) {
|
|
2624
|
-
if (!__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) throw new Error("Service is not initialized");
|
|
2625
|
-
await __classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_ensureWallet).call(this);
|
|
2626
|
-
try {
|
|
2627
|
-
log$1.info("executeAction", params);
|
|
2628
|
-
const txHash = await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").sendExecuteActionRequest(params);
|
|
2629
|
-
return txHash;
|
|
2630
|
-
} catch (error) {
|
|
2631
|
-
throw AirServiceError.from(error);
|
|
2632
|
-
}
|
|
2633
|
-
}
|
|
2634
|
-
/**
|
|
2635
|
-
* @experimental This method is experimental and will change in the future.
|
|
2636
|
-
*/
|
|
2637
|
-
async revokePermission(permissionId) {
|
|
2638
|
-
if (!__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) throw new Error("Service is not initialized");
|
|
2639
|
-
await __classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_ensureWallet).call(this);
|
|
2640
|
-
try {
|
|
2641
|
-
log$1.info("revokePermission", permissionId);
|
|
2642
|
-
const txHash = await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").sendRevokePermissionsRequest(permissionId);
|
|
2643
|
-
return txHash;
|
|
2484
|
+
return payload.isDeployed;
|
|
2644
2485
|
} catch (error) {
|
|
2645
2486
|
throw AirServiceError.from(error);
|
|
2646
2487
|
}
|
|
@@ -2648,20 +2489,16 @@ class AirService {
|
|
|
2648
2489
|
/**
|
|
2649
2490
|
* @experimental This method is experimental and will change in the future.
|
|
2650
2491
|
*/
|
|
2651
|
-
async
|
|
2492
|
+
async getCredentialSalt() {
|
|
2652
2493
|
if (!__classPrivateFieldGet$1(this, _AirService_isAuthInitialized, "f")) throw new Error("Service is not initialized");
|
|
2653
|
-
|
|
2654
|
-
|
|
2655
|
-
|
|
2656
|
-
|
|
2657
|
-
} = await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").sendIsSmartAccountDeployedRequest();
|
|
2658
|
-
if (payload.success === false) {
|
|
2659
|
-
throw new AirServiceError(payload.errorName, payload.errorMessage);
|
|
2660
|
-
}
|
|
2661
|
-
return payload.isDeployed;
|
|
2662
|
-
} catch (error) {
|
|
2663
|
-
throw AirServiceError.from(error);
|
|
2494
|
+
if (!this.isLoggedIn) throw new Error("No active session to get partner access token");
|
|
2495
|
+
const result = await __classPrivateFieldGet$1(this, _AirService_authMessagingService, "f").sendCredentialSaltRequest();
|
|
2496
|
+
if (result.payload.success === false) {
|
|
2497
|
+
throw new AirServiceError(result.payload.errorName, result.payload.errorMessage);
|
|
2664
2498
|
}
|
|
2499
|
+
return {
|
|
2500
|
+
credentialSalt: result.payload.credentialSalt
|
|
2501
|
+
};
|
|
2665
2502
|
}
|
|
2666
2503
|
getProvider() {
|
|
2667
2504
|
return this.provider;
|
|
@@ -2787,7 +2624,6 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
2787
2624
|
const {
|
|
2788
2625
|
walletUrl
|
|
2789
2626
|
} = AIR_URLS[__classPrivateFieldGet$1(this, _AirService_buildEnv, "f")];
|
|
2790
|
-
log$1.info(walletUrl, "url loaded");
|
|
2791
2627
|
const walletIframeOrigin = new URL(walletUrl).origin;
|
|
2792
2628
|
try {
|
|
2793
2629
|
const walletInitRequestPromise = new Promise((resolve, reject) => {
|
|
@@ -2800,7 +2636,8 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
2800
2636
|
} = await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").sendInitializationRequest({
|
|
2801
2637
|
partnerId: __classPrivateFieldGet$1(this, _AirService_partnerId, "f"),
|
|
2802
2638
|
enableLogging: __classPrivateFieldGet$1(this, _AirService_enableLogging, "f"),
|
|
2803
|
-
sdkVersion: airKitVersion
|
|
2639
|
+
sdkVersion: airKitVersion,
|
|
2640
|
+
enableAutomation: this.shouldEnableAutomation()
|
|
2804
2641
|
});
|
|
2805
2642
|
if (payload.success === true) {
|
|
2806
2643
|
resolve();
|
|
@@ -2813,14 +2650,14 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
2813
2650
|
});
|
|
2814
2651
|
__classPrivateFieldSet(this, _AirService_walletIframeController, new IframeController(walletUrl, `air-wallet-${randomId()}`), "f");
|
|
2815
2652
|
__classPrivateFieldGet$1(this, _AirService_walletIframeController, "f").createIframe();
|
|
2653
|
+
log$1.info(walletUrl, "url loaded");
|
|
2816
2654
|
await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").open(__classPrivateFieldGet$1(this, _AirService_walletIframeController, "f").iframeElement);
|
|
2817
2655
|
__classPrivateFieldGet$1(this, _AirService_instances, "m", _AirService_subscribeToWalletEvents).call(this);
|
|
2818
2656
|
await __classPrivateFieldGet$1(this, _AirService_airWalletProvider, "f").startEventMessageListening(__classPrivateFieldGet$1(this, _AirService_walletIframeController, "f").iframeElement);
|
|
2819
2657
|
const walletInitPromise = __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").onInitialized();
|
|
2820
2658
|
await walletInitRequestPromise;
|
|
2821
|
-
|
|
2822
|
-
await __classPrivateFieldGet$1(this,
|
|
2823
|
-
await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").initAuthCommunication(option?.skipWalletLogin ?? false, channel.port2);
|
|
2659
|
+
await __classPrivateFieldGet$1(this, _AirService_authMessagingService, "f").initWalletCommunication();
|
|
2660
|
+
await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").initAuthCommunication(option?.skipWalletLogin ?? false);
|
|
2824
2661
|
const walletInitResult = await walletInitPromise;
|
|
2825
2662
|
if (walletInitResult.payload.success !== true) {
|
|
2826
2663
|
throw new AirServiceError(walletInitResult.payload.errorName, walletInitResult.payload.errorMessage);
|
|
@@ -2873,6 +2710,7 @@ _AirService_loginResult = new WeakMap(), _AirService_buildEnv = new WeakMap(), _
|
|
|
2873
2710
|
partnerId: __classPrivateFieldGet$1(this, _AirService_partnerId, "f"),
|
|
2874
2711
|
enableLogging: __classPrivateFieldGet$1(this, _AirService_enableLogging, "f"),
|
|
2875
2712
|
sdkVersion: airKitVersion,
|
|
2713
|
+
enableAutomation: this.shouldEnableAutomation(),
|
|
2876
2714
|
onRetry
|
|
2877
2715
|
});
|
|
2878
2716
|
windowController.onClose(async () => await __classPrivateFieldGet$1(this, _AirService_walletMessagingService, "f").sendWindowClosed(msg.payload.windowId));
|
|
@@ -2991,31 +2829,31 @@ let BaseError$1 = class BaseError extends Error {
|
|
|
2991
2829
|
enumerable: true,
|
|
2992
2830
|
configurable: true,
|
|
2993
2831
|
writable: true,
|
|
2994
|
-
value:
|
|
2832
|
+
value: void 0
|
|
2995
2833
|
});
|
|
2996
2834
|
Object.defineProperty(this, "docsPath", {
|
|
2997
2835
|
enumerable: true,
|
|
2998
2836
|
configurable: true,
|
|
2999
2837
|
writable: true,
|
|
3000
|
-
value:
|
|
2838
|
+
value: void 0
|
|
3001
2839
|
});
|
|
3002
2840
|
Object.defineProperty(this, "metaMessages", {
|
|
3003
2841
|
enumerable: true,
|
|
3004
2842
|
configurable: true,
|
|
3005
2843
|
writable: true,
|
|
3006
|
-
value:
|
|
2844
|
+
value: void 0
|
|
3007
2845
|
});
|
|
3008
2846
|
Object.defineProperty(this, "shortMessage", {
|
|
3009
2847
|
enumerable: true,
|
|
3010
2848
|
configurable: true,
|
|
3011
2849
|
writable: true,
|
|
3012
|
-
value:
|
|
2850
|
+
value: void 0
|
|
3013
2851
|
});
|
|
3014
2852
|
Object.defineProperty(this, "version", {
|
|
3015
2853
|
enumerable: true,
|
|
3016
2854
|
configurable: true,
|
|
3017
2855
|
writable: true,
|
|
3018
|
-
value:
|
|
2856
|
+
value: void 0
|
|
3019
2857
|
});
|
|
3020
2858
|
Object.defineProperty(this, "name", {
|
|
3021
2859
|
enumerable: true,
|
|
@@ -3401,7 +3239,7 @@ class LruMap extends Map {
|
|
|
3401
3239
|
enumerable: true,
|
|
3402
3240
|
configurable: true,
|
|
3403
3241
|
writable: true,
|
|
3404
|
-
value:
|
|
3242
|
+
value: void 0
|
|
3405
3243
|
});
|
|
3406
3244
|
this.maxSize = size;
|
|
3407
3245
|
}
|
|
@@ -3820,7 +3658,7 @@ const isAddressCache = /*#__PURE__*/new LruMap(8192);
|
|
|
3820
3658
|
function isAddress(address, options) {
|
|
3821
3659
|
const {
|
|
3822
3660
|
strict = true
|
|
3823
|
-
} = options;
|
|
3661
|
+
} = options ?? {};
|
|
3824
3662
|
const cacheKey = `${address}.${strict}`;
|
|
3825
3663
|
if (isAddressCache.has(cacheKey)) return isAddressCache.get(cacheKey);
|
|
3826
3664
|
const result = (() => {
|
|
@@ -3856,13 +3694,13 @@ class RpcRequestError extends BaseError$1 {
|
|
|
3856
3694
|
enumerable: true,
|
|
3857
3695
|
configurable: true,
|
|
3858
3696
|
writable: true,
|
|
3859
|
-
value:
|
|
3697
|
+
value: void 0
|
|
3860
3698
|
});
|
|
3861
3699
|
Object.defineProperty(this, "data", {
|
|
3862
3700
|
enumerable: true,
|
|
3863
3701
|
configurable: true,
|
|
3864
3702
|
writable: true,
|
|
3865
|
-
value:
|
|
3703
|
+
value: void 0
|
|
3866
3704
|
});
|
|
3867
3705
|
this.code = error.code;
|
|
3868
3706
|
this.data = error.data;
|
|
@@ -3888,7 +3726,7 @@ class RpcError extends BaseError$1 {
|
|
|
3888
3726
|
enumerable: true,
|
|
3889
3727
|
configurable: true,
|
|
3890
3728
|
writable: true,
|
|
3891
|
-
value:
|
|
3729
|
+
value: void 0
|
|
3892
3730
|
});
|
|
3893
3731
|
this.name = name || cause.name;
|
|
3894
3732
|
this.code = cause instanceof RpcRequestError ? cause.code : code ?? unknownErrorCode;
|
|
@@ -3901,7 +3739,7 @@ class ProviderRpcError extends RpcError {
|
|
|
3901
3739
|
enumerable: true,
|
|
3902
3740
|
configurable: true,
|
|
3903
3741
|
writable: true,
|
|
3904
|
-
value:
|
|
3742
|
+
value: void 0
|
|
3905
3743
|
});
|
|
3906
3744
|
this.data = options.data;
|
|
3907
3745
|
}
|
|
@@ -3961,25 +3799,25 @@ class BaseError extends Error {
|
|
|
3961
3799
|
enumerable: true,
|
|
3962
3800
|
configurable: true,
|
|
3963
3801
|
writable: true,
|
|
3964
|
-
value:
|
|
3802
|
+
value: void 0
|
|
3965
3803
|
});
|
|
3966
3804
|
Object.defineProperty(this, "docsPath", {
|
|
3967
3805
|
enumerable: true,
|
|
3968
3806
|
configurable: true,
|
|
3969
3807
|
writable: true,
|
|
3970
|
-
value:
|
|
3808
|
+
value: void 0
|
|
3971
3809
|
});
|
|
3972
3810
|
Object.defineProperty(this, "metaMessages", {
|
|
3973
3811
|
enumerable: true,
|
|
3974
3812
|
configurable: true,
|
|
3975
3813
|
writable: true,
|
|
3976
|
-
value:
|
|
3814
|
+
value: void 0
|
|
3977
3815
|
});
|
|
3978
3816
|
Object.defineProperty(this, "shortMessage", {
|
|
3979
3817
|
enumerable: true,
|
|
3980
3818
|
configurable: true,
|
|
3981
3819
|
writable: true,
|
|
3982
|
-
value:
|
|
3820
|
+
value: void 0
|
|
3983
3821
|
});
|
|
3984
3822
|
Object.defineProperty(this, "name", {
|
|
3985
3823
|
enumerable: true,
|
|
@@ -4371,7 +4209,7 @@ function airConnector(parameters) {
|
|
|
4371
4209
|
isRainbowKitConnector: true,
|
|
4372
4210
|
airService: service,
|
|
4373
4211
|
getLoginResult: () => loginResult,
|
|
4374
|
-
async connect({ chainId } = {}) {
|
|
4212
|
+
async connect({ chainId, authToken } = {}) {
|
|
4375
4213
|
try {
|
|
4376
4214
|
config.emitter.emit("message", { type: "connecting" });
|
|
4377
4215
|
const provider = await this.getProvider();
|
|
@@ -4379,7 +4217,7 @@ function airConnector(parameters) {
|
|
|
4379
4217
|
provider.on("chainChanged", this.onChainChanged);
|
|
4380
4218
|
provider.on("disconnect", this.onDisconnect.bind(this));
|
|
4381
4219
|
loginResult = await service.login({
|
|
4382
|
-
authToken: parameters.loginOptions?.authToken,
|
|
4220
|
+
authToken: authToken ?? parameters.loginOptions?.authToken,
|
|
4383
4221
|
});
|
|
4384
4222
|
let currentChainId = await this.getChainId();
|
|
4385
4223
|
if (chainId && currentChainId !== chainId) {
|