@manahippo/aptos-wallet-adapter 1.0.8 → 1.0.10

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.
@@ -0,0 +1,64 @@
1
+ import { MaybeHexString, Types } from 'aptos';
2
+ import { AccountKeys, BaseWalletAdapter, NetworkInfo, SignMessagePayload, SignMessageResponse, WalletAdapterNetwork, WalletName, WalletReadyState } from './BaseAdapter';
3
+ import { MSafeWallet } from 'msafe-wallet';
4
+ export declare const MSafeWalletName: WalletName<"MSafe">;
5
+ interface MSafeAccount {
6
+ address: MaybeHexString;
7
+ publicKey: MaybeHexString[];
8
+ authKey: MaybeHexString;
9
+ minKeysRequired: number;
10
+ isConnected: boolean;
11
+ }
12
+ export declare class MSafeWalletAdapter extends BaseWalletAdapter {
13
+ name: WalletName<"MSafe">;
14
+ icon: string;
15
+ protected _provider: MSafeWallet | undefined;
16
+ protected _network: WalletAdapterNetwork;
17
+ protected _chainId: string;
18
+ protected _readyState: WalletReadyState;
19
+ protected _connecting: boolean;
20
+ protected _wallet: MSafeAccount | null;
21
+ private _origin?;
22
+ /**
23
+ * @description create a MSafeWalletAdapter
24
+ * @param origin allowlist of msafe website url, omit means accpets all msafe websites. you can pass a single url or an array of urls.
25
+ * @example
26
+ * // 1. Initialize MSafeWalletAdapter with default allowlist:
27
+ * new MSafeWalletAdapter();
28
+ * // 2. Initialize MSafeWalletAdapter with a single MSafe url:
29
+ * new MSafeWalletAdapter('https://app.m-safe.io');
30
+ * // 3. Initialize MSafeWalletAdapter with an array of MSafe urls:
31
+ * new MSafeWalletAdapter(['https://app.m-safe.io', 'https://testnet.m-safe.io', 'https://partner.m-safe.io']);
32
+ * // 4. Initialize MSafeWalletAdapter with a single network type:
33
+ * new MSafeWalletAdapter('Mainnet');
34
+ * // 5. Initialize MSafeWalletAdapter with an array of network types:
35
+ * new MSafeWalletAdapter(['Mainnet', 'Testnet', 'Partner']);
36
+ */
37
+ constructor(origin?: string | string[]);
38
+ get url(): string;
39
+ get publicAccount(): AccountKeys;
40
+ get network(): NetworkInfo;
41
+ get connecting(): boolean;
42
+ get connected(): boolean;
43
+ get readyState(): WalletReadyState;
44
+ connect(): Promise<void>;
45
+ disconnect(): Promise<void>;
46
+ signTransaction(transactionPyld: Types.TransactionPayload, options?: any): Promise<Uint8Array>;
47
+ signAndSubmitTransaction(transactionPyld: Types.TransactionPayload, options?: any): Promise<{
48
+ hash: Types.HexEncodedBytes;
49
+ }>;
50
+ signMessage(msgPayload: SignMessagePayload): Promise<SignMessageResponse>;
51
+ onAccountChange(): Promise<void>;
52
+ onNetworkChange(): Promise<void>;
53
+ }
54
+ /**
55
+ * @deprecated Use `MSafeWalletName` instead.
56
+ */
57
+ export declare const MsafeWalletName: WalletName<"MSafe">;
58
+ /**
59
+ * @deprecated Use `MSafeWalletAdapter` instead.
60
+ */
61
+ export declare class MsafeWalletAdapter extends MSafeWalletAdapter {
62
+ }
63
+ export {};
64
+ //# sourceMappingURL=MSafeWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MSafeWallet.d.ts","sourceRoot":"","sources":["../../src/WalletAdapters/MSafeWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,cAAc,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAYzD,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAW,WAAW,EAAE,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,eAAe,qBAAiC,CAAC;AAE9D,UAAU,YAAY;IACpB,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,OAAO,EAAE,cAAc,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,qBAAa,kBAAmB,SAAQ,iBAAiB;IACvD,IAAI,sBAAmB;IAEvB,IAAI,SAA4F;IAEhG,SAAS,CAAC,SAAS,EAAE,WAAW,GAAG,SAAS,CAAC;IAE7C,SAAS,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IAEzC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAG3B,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAEN;IAEjC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC;IAE/B,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAEvC,OAAO,CAAC,OAAO,CAAC,CAAoB;IAEpC;;;;;;;;;;;;;;OAcG;gBACS,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAqBtC,IAAI,GAAG,WAEN;IAED,IAAI,aAAa,IAAI,WAAW,CAO/B;IAED,IAAI,OAAO,IAAI,WAAW,CAKzB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,UAAU,IAAI,gBAAgB,CAEjC;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B,eAAe,CACnB,eAAe,EAAE,KAAK,CAAC,kBAAkB,EACzC,OAAO,CAAC,EAAE,GAAG,GACZ,OAAO,CAAC,UAAU,CAAC;IAiBhB,wBAAwB,CAC5B,eAAe,EAAE,KAAK,CAAC,kBAAkB,EACzC,OAAO,CAAC,EAAE,GAAG,GACZ,OAAO,CAAC;QAAE,IAAI,EAAE,KAAK,CAAC,eAAe,CAAA;KAAE,CAAC;IAiBrC,WAAW,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAkBzE,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBhC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;CAiBvC;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,qBAAkB,CAAC;AAC/C;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,kBAAkB;CAAG"}
@@ -9,42 +9,64 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.MsafeWalletAdapter = exports.MsafeWalletName = void 0;
12
+ exports.MsafeWalletAdapter = exports.MsafeWalletName = exports.MSafeWalletAdapter = exports.MSafeWalletName = void 0;
13
13
  const aptos_1 = require("aptos");
14
14
  const errors_1 = require("../WalletProviders/errors");
15
15
  const BaseAdapter_1 = require("./BaseAdapter");
16
16
  const msafe_wallet_1 = require("msafe-wallet");
17
- exports.MsafeWalletName = 'Msafe';
18
- class MsafeWalletAdapter extends BaseAdapter_1.BaseWalletAdapter {
19
- constructor(origin = 'Mainnet') {
17
+ exports.MSafeWalletName = 'MSafe';
18
+ class MSafeWalletAdapter extends BaseAdapter_1.BaseWalletAdapter {
19
+ /**
20
+ * @description create a MSafeWalletAdapter
21
+ * @param origin allowlist of msafe website url, omit means accpets all msafe websites. you can pass a single url or an array of urls.
22
+ * @example
23
+ * // 1. Initialize MSafeWalletAdapter with default allowlist:
24
+ * new MSafeWalletAdapter();
25
+ * // 2. Initialize MSafeWalletAdapter with a single MSafe url:
26
+ * new MSafeWalletAdapter('https://app.m-safe.io');
27
+ * // 3. Initialize MSafeWalletAdapter with an array of MSafe urls:
28
+ * new MSafeWalletAdapter(['https://app.m-safe.io', 'https://testnet.m-safe.io', 'https://partner.m-safe.io']);
29
+ * // 4. Initialize MSafeWalletAdapter with a single network type:
30
+ * new MSafeWalletAdapter('Mainnet');
31
+ * // 5. Initialize MSafeWalletAdapter with an array of network types:
32
+ * new MSafeWalletAdapter(['Mainnet', 'Testnet', 'Partner']);
33
+ */
34
+ constructor(origin) {
20
35
  super();
21
- this.name = exports.MsafeWalletName;
22
- this.url = msafe_wallet_1.MsafeWallet.getOrigin();
36
+ this.name = exports.MSafeWalletName;
23
37
  this.icon = 'https://raw.githubusercontent.com/hippospace/aptos-wallet-adapter/main/logos/msafe.png';
24
- // MsafeWallet only works in msafe appstore iframe
25
- this._readyState = msafe_wallet_1.MsafeWallet.inMsafeWallet()
38
+ // MSafeWallet only works in msafe appstore iframe
39
+ this._readyState = msafe_wallet_1.MSafeWallet.inMSafeWallet()
26
40
  ? BaseAdapter_1.WalletReadyState.NotDetected
27
41
  : BaseAdapter_1.WalletReadyState.Unsupported;
28
42
  this._network = undefined;
29
43
  this._connecting = false;
30
- const msafeOrigin = msafe_wallet_1.MsafeWallet.getOrigin(origin);
31
- this.url = msafe_wallet_1.MsafeWallet.getAppUrl(origin);
44
+ this._origin = origin;
32
45
  if (this._readyState === BaseAdapter_1.WalletReadyState.NotDetected) {
33
- msafe_wallet_1.MsafeWallet.new(msafeOrigin)
46
+ msafe_wallet_1.MSafeWallet.new(origin)
34
47
  .then((msafe) => {
35
48
  this._provider = msafe;
36
49
  this._readyState = BaseAdapter_1.WalletReadyState.Installed;
37
50
  this.emit('readyStateChange', this._readyState);
38
51
  })
39
- .catch((e) => console.log(e));
52
+ .catch((e) => {
53
+ this._readyState = BaseAdapter_1.WalletReadyState.Unsupported;
54
+ this.emit('readyStateChange', this._readyState);
55
+ console.error('MSafe connect error:', e);
56
+ });
40
57
  }
41
58
  }
59
+ /// fix issue of next.js: access url via getter to avoid access window object in constructor
60
+ get url() {
61
+ return msafe_wallet_1.MSafeWallet.getAppUrl(this._origin instanceof Array ? this._origin[0] : this._origin);
62
+ }
42
63
  get publicAccount() {
43
- var _a, _b, _c;
64
+ var _a, _b, _c, _d;
44
65
  return {
45
- publicKey: ((_a = this._wallet) === null || _a === void 0 ? void 0 : _a.publicKey) || null,
46
- address: ((_b = this._wallet) === null || _b === void 0 ? void 0 : _b.address) || null,
47
- authKey: ((_c = this._wallet) === null || _c === void 0 ? void 0 : _c.authKey) || null
66
+ publicKey: (_a = this._wallet) === null || _a === void 0 ? void 0 : _a.publicKey,
67
+ address: (_b = this._wallet) === null || _b === void 0 ? void 0 : _b.address,
68
+ authKey: (_c = this._wallet) === null || _c === void 0 ? void 0 : _c.authKey,
69
+ minKeysRequired: (_d = this._wallet) === null || _d === void 0 ? void 0 : _d.minKeysRequired
48
70
  };
49
71
  }
50
72
  get network() {
@@ -226,5 +248,15 @@ class MsafeWalletAdapter extends BaseAdapter_1.BaseWalletAdapter {
226
248
  });
227
249
  }
228
250
  }
251
+ exports.MSafeWalletAdapter = MSafeWalletAdapter;
252
+ /**
253
+ * @deprecated Use `MSafeWalletName` instead.
254
+ */
255
+ exports.MsafeWalletName = exports.MSafeWalletName;
256
+ /**
257
+ * @deprecated Use `MSafeWalletAdapter` instead.
258
+ */
259
+ class MsafeWalletAdapter extends MSafeWalletAdapter {
260
+ }
229
261
  exports.MsafeWalletAdapter = MsafeWalletAdapter;
230
- //# sourceMappingURL=MsafeWallet.js.map
262
+ //# sourceMappingURL=MSafeWallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MSafeWallet.js","sourceRoot":"","sources":["../../src/WalletAdapters/MSafeWallet.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iCAAyD;AACzD,sDAUmC;AACnC,+CASuB;AACvB,+CAAoD;AAEvC,QAAA,eAAe,GAAG,OAA8B,CAAC;AAU9D,MAAa,kBAAmB,SAAQ,+BAAiB;IAsBvD;;;;;;;;;;;;;;OAcG;IACH,YAAY,MAA0B;QACpC,KAAK,EAAE,CAAC;QArCV,SAAI,GAAG,uBAAe,CAAC;QAEvB,SAAI,GAAG,wFAAwF,CAAC;QAQhG,kDAAkD;QACxC,gBAAW,GAAqB,0BAAW,CAAC,aAAa,EAAE;YACnE,CAAC,CAAC,8BAAgB,CAAC,WAAW;YAC9B,CAAC,CAAC,8BAAgB,CAAC,WAAW,CAAC;QAyB/B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,IAAI,CAAC,WAAW,KAAK,8BAAgB,CAAC,WAAW,EAAE;YACrD,0BAAW,CAAC,GAAG,CAAC,MAAM,CAAC;iBACpB,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;gBACd,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,IAAI,CAAC,WAAW,GAAG,8BAAgB,CAAC,SAAS,CAAC;gBAC9C,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAClD,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,WAAW,GAAG,8BAAgB,CAAC,WAAW,CAAC;gBAChD,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;gBAChD,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;SACN;IACH,CAAC;IAED,4FAA4F;IAC5F,IAAI,GAAG;QACL,OAAO,0BAAW,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/F,CAAC;IAED,IAAI,aAAa;;QACf,OAAO;YACL,SAAS,EAAE,MAAA,IAAI,CAAC,OAAO,0CAAE,SAAS;YAClC,OAAO,EAAE,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO;YAC9B,OAAO,EAAE,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO;YAC9B,eAAe,EAAE,MAAA,IAAI,CAAC,OAAO,0CAAE,eAAe;SAC/C,CAAC;IACJ,CAAC;IAED,IAAI,OAAO;QACT,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,QAAQ;YACnB,OAAO,EAAE,IAAI,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS;;QACX,OAAO,CAAC,CAAC,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,WAAW,CAAA,CAAC;IACrC,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEK,OAAO;;;YACX,IAAI;gBACF,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU;oBAAE,OAAO;gBAC9C,IACE,CAAC,CACC,IAAI,CAAC,WAAW,KAAK,8BAAgB,CAAC,QAAQ;oBAC9C,IAAI,CAAC,WAAW,KAAK,8BAAgB,CAAC,SAAS,CAChD;oBAED,MAAM,IAAI,4BAAmB,EAAE,CAAC;gBAClC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBAExB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,MAAM,WAAW,GAAG,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,EAAE,CAAA,CAAC;gBAClD,IAAI,WAAW,EAAE;oBACf,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,EAAE,CAAA,CAAC;iBAC9B;gBACD,MAAM,QAAQ,GAAG,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,EAAE,CAAA,CAAC;gBAE3C,IAAI,CAAC,QAAQ,EAAE;oBACb,MAAM,IAAI,gCAAuB,CAAC,qBAAqB,CAAC,CAAC;iBAC1D;gBAED,MAAM,aAAa,GAAG,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,EAAE,CAAA,CAAC;gBAChD,IAAI,aAAa,EAAE;oBACjB,IAAI,CAAC,OAAO,GAAG,gCACV,aAAa,KAChB,WAAW,EAAE,IAAI,GACX,CAAC;oBAET,IAAI;wBACF,MAAM,IAAI,GAAG,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,EAAE,CAAA,CAAC;wBACvC,MAAM,OAAO,GAAG,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,EAAE,CAAA,CAAC;wBAE1C,IAAI,CAAC,QAAQ,GAAG,IAA4B,CAAC;wBAC7C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;qBACpC;oBAAC,OAAO,KAAU,EAAE;wBACnB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC;wBAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,8BAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;wBACtD,MAAM,KAAK,CAAC;qBACb;iBACF;gBACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,KAAI,EAAE,CAAC,CAAC;aACnD;YAAC,OAAO,KAAU,EAAE;gBACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBACrC,MAAM,KAAK,CAAC;aACb;oBAAS;gBACR,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;aAC1B;;KACF;IAEK,UAAU;;YACd,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBAEpB,IAAI;oBACF,MAAM,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,EAAE,CAAA,CAAC;iBAC9B;gBAAC,OAAO,KAAU,EAAE;oBACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,iCAAwB,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;iBACzE;aACF;YAED,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1B,CAAC;KAAA;IAEK,eAAe,CACnB,eAAyC,EACzC,OAAa;;YAEb,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,gCAAuB,EAAE,CAAC;gBAC9D,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,eAAsB,EAAE,OAAO,CAAC,CAAC;gBAEjF,IAAI,CAAC,QAAQ,EAAE;oBACb,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;iBAChC;gBACD,OAAO,QAAQ,CAAC;aACjB;YAAC,OAAO,KAAU,EAAE;gBACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,mCAA0B,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC1D,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;IAEK,wBAAwB,CAC5B,eAAyC,EACzC,OAAa;;YAEb,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,gCAAuB,EAAE,CAAC;gBAC9D,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,eAAsB,EAAE,OAAO,CAAC,CAAC;gBAE/E,IAAI,CAAC,QAAQ,EAAE;oBACb,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;iBAChC;gBACD,OAAO,EAAE,IAAI,EAAE,iBAAS,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;aAC3D;YAAC,OAAO,KAAU,EAAE;gBACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,wCAA+B,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC/D,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;IAEK,WAAW,CAAC,UAA8B;;YAC9C,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,gCAAuB,EAAE,CAAC;gBAC9D,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,UAAiB,CAAC,CAAC;gBAC/D,IAAI,QAAQ,EAAE;oBACZ,OAAO,QAAe,CAAC;iBACxB;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;iBACxC;aACF;YAAC,OAAO,KAAU,EAAE;gBACnB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,+BAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;gBACvD,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;IAEK,eAAe;;YACnB,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,gCAAuB,EAAE,CAAC;gBAC9D,MAAM,mBAAmB,GAAG,CAAO,UAAmB,EAAE,EAAE;oBACxD,IAAI,CAAC,OAAO,mCACP,IAAI,CAAC,OAAO,GACZ,UAAU,CACd,CAAC;oBACF,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;gBACjD,CAAC,CAAA,CAAC;gBACF,QAAQ,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;aAC/C;YAAC,OAAO,KAAU,EAAE;gBACnB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,iCAAwB,CAAC,MAAM,CAAC,CAAC,CAAC;gBACzD,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;IAEK,eAAe;;YACnB,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,gCAAuB,EAAE,CAAC;gBAC9D,MAAM,mBAAmB,GAAG,CAAO,UAAgC,EAAE,EAAE;oBACrE,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;oBAC3B,IAAI,CAAC,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;oBAC5D,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5C,CAAC,CAAA,CAAC;gBACF,QAAQ,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;aAC/C;YAAC,OAAO,KAAU,EAAE;gBACnB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,iCAAwB,CAAC,MAAM,CAAC,CAAC,CAAC;gBACzD,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;CACF;AA5PD,gDA4PC;AAED;;GAEG;AACU,QAAA,eAAe,GAAG,uBAAe,CAAC;AAC/C;;GAEG;AACH,MAAa,kBAAmB,SAAQ,kBAAkB;CAAG;AAA7D,gDAA6D"}
@@ -18,7 +18,7 @@ export * from './BloctoWallet';
18
18
  export * from './Coin98Wallet';
19
19
  export * from './SafePalWallet';
20
20
  export * from './FoxWallet';
21
- export * from './MsafeWallet';
21
+ export * from './MSafeWallet';
22
22
  export * from './OpenBlockWallet';
23
23
  export * from './CloverWallet';
24
24
  export * from './SpacecyWallet';
@@ -34,7 +34,7 @@ __exportStar(require("./BloctoWallet"), exports);
34
34
  __exportStar(require("./Coin98Wallet"), exports);
35
35
  __exportStar(require("./SafePalWallet"), exports);
36
36
  __exportStar(require("./FoxWallet"), exports);
37
- __exportStar(require("./MsafeWallet"), exports);
37
+ __exportStar(require("./MSafeWallet"), exports);
38
38
  __exportStar(require("./OpenBlockWallet"), exports);
39
39
  __exportStar(require("./CloverWallet"), exports);
40
40
  __exportStar(require("./SpacecyWallet"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@manahippo/aptos-wallet-adapter",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
6
6
  "files": [
@@ -34,6 +34,6 @@
34
34
  "@openblockhq/dappsdk": "^5.0.2",
35
35
  "eventemitter3": "^4.0.7",
36
36
  "js-sha3": "^0.8.0",
37
- "msafe-wallet": "^1.1.9"
37
+ "msafe-wallet": "~2.1.3"
38
38
  }
39
39
  }
@@ -20,61 +20,86 @@ import {
20
20
  WalletName,
21
21
  WalletReadyState
22
22
  } from './BaseAdapter';
23
- import { Account, MsafeWallet } from 'msafe-wallet';
23
+ import { Account, MSafeWallet } from 'msafe-wallet';
24
24
 
25
- export const MsafeWalletName = 'Msafe' as WalletName<'Msafe'>;
25
+ export const MSafeWalletName = 'MSafe' as WalletName<'MSafe'>;
26
26
 
27
- interface MsafeAccount {
27
+ interface MSafeAccount {
28
28
  address: MaybeHexString;
29
- publicKey: MaybeHexString;
29
+ publicKey: MaybeHexString[];
30
30
  authKey: MaybeHexString;
31
+ minKeysRequired: number;
31
32
  isConnected: boolean;
32
33
  }
33
34
 
34
- export class MsafeWalletAdapter extends BaseWalletAdapter {
35
- name = MsafeWalletName;
36
-
37
- url = MsafeWallet.getOrigin();
35
+ export class MSafeWalletAdapter extends BaseWalletAdapter {
36
+ name = MSafeWalletName;
38
37
 
39
38
  icon = 'https://raw.githubusercontent.com/hippospace/aptos-wallet-adapter/main/logos/msafe.png';
40
39
 
41
- protected _provider: MsafeWallet | undefined;
40
+ protected _provider: MSafeWallet | undefined;
42
41
 
43
42
  protected _network: WalletAdapterNetwork;
44
43
 
45
44
  protected _chainId: string;
46
45
 
47
- // MsafeWallet only works in msafe appstore iframe
48
- protected _readyState: WalletReadyState = MsafeWallet.inMsafeWallet()
46
+ // MSafeWallet only works in msafe appstore iframe
47
+ protected _readyState: WalletReadyState = MSafeWallet.inMSafeWallet()
49
48
  ? WalletReadyState.NotDetected
50
49
  : WalletReadyState.Unsupported;
51
50
 
52
51
  protected _connecting: boolean;
53
52
 
54
- protected _wallet: MsafeAccount | null;
55
-
56
- constructor(origin: 'Mainnet' | 'Testnet' | string = 'Mainnet') {
53
+ protected _wallet: MSafeAccount | null;
54
+
55
+ private _origin?: string | string[];
56
+
57
+ /**
58
+ * @description create a MSafeWalletAdapter
59
+ * @param origin allowlist of msafe website url, omit means accpets all msafe websites. you can pass a single url or an array of urls.
60
+ * @example
61
+ * // 1. Initialize MSafeWalletAdapter with default allowlist:
62
+ * new MSafeWalletAdapter();
63
+ * // 2. Initialize MSafeWalletAdapter with a single MSafe url:
64
+ * new MSafeWalletAdapter('https://app.m-safe.io');
65
+ * // 3. Initialize MSafeWalletAdapter with an array of MSafe urls:
66
+ * new MSafeWalletAdapter(['https://app.m-safe.io', 'https://testnet.m-safe.io', 'https://partner.m-safe.io']);
67
+ * // 4. Initialize MSafeWalletAdapter with a single network type:
68
+ * new MSafeWalletAdapter('Mainnet');
69
+ * // 5. Initialize MSafeWalletAdapter with an array of network types:
70
+ * new MSafeWalletAdapter(['Mainnet', 'Testnet', 'Partner']);
71
+ */
72
+ constructor(origin?: string | string[]) {
57
73
  super();
58
74
  this._network = undefined;
59
75
  this._connecting = false;
60
- const msafeOrigin = MsafeWallet.getOrigin(origin);
61
- this.url = MsafeWallet.getAppUrl(origin);
76
+ this._origin = origin;
62
77
  if (this._readyState === WalletReadyState.NotDetected) {
63
- MsafeWallet.new(msafeOrigin)
78
+ MSafeWallet.new(origin)
64
79
  .then((msafe) => {
65
80
  this._provider = msafe;
66
81
  this._readyState = WalletReadyState.Installed;
67
82
  this.emit('readyStateChange', this._readyState);
68
83
  })
69
- .catch((e) => console.log(e));
84
+ .catch((e) => {
85
+ this._readyState = WalletReadyState.Unsupported;
86
+ this.emit('readyStateChange', this._readyState);
87
+ console.error('MSafe connect error:', e);
88
+ });
70
89
  }
71
90
  }
72
91
 
92
+ /// fix issue of next.js: access url via getter to avoid access window object in constructor
93
+ get url() {
94
+ return MSafeWallet.getAppUrl(this._origin instanceof Array ? this._origin[0] : this._origin);
95
+ }
96
+
73
97
  get publicAccount(): AccountKeys {
74
98
  return {
75
- publicKey: this._wallet?.publicKey || null,
76
- address: this._wallet?.address || null,
77
- authKey: this._wallet?.authKey || null
99
+ publicKey: this._wallet?.publicKey,
100
+ address: this._wallet?.address,
101
+ authKey: this._wallet?.authKey,
102
+ minKeysRequired: this._wallet?.minKeysRequired
78
103
  };
79
104
  }
80
105
 
@@ -260,3 +285,12 @@ export class MsafeWalletAdapter extends BaseWalletAdapter {
260
285
  }
261
286
  }
262
287
  }
288
+
289
+ /**
290
+ * @deprecated Use `MSafeWalletName` instead.
291
+ */
292
+ export const MsafeWalletName = MSafeWalletName;
293
+ /**
294
+ * @deprecated Use `MSafeWalletAdapter` instead.
295
+ */
296
+ export class MsafeWalletAdapter extends MSafeWalletAdapter {}
@@ -18,7 +18,7 @@ export * from './BloctoWallet';
18
18
  export * from './Coin98Wallet';
19
19
  export * from './SafePalWallet';
20
20
  export * from './FoxWallet';
21
- export * from './MsafeWallet';
21
+ export * from './MSafeWallet';
22
22
  export * from './OpenBlockWallet';
23
23
  export * from './CloverWallet';
24
24
  export * from './SpacecyWallet';
@@ -1,38 +0,0 @@
1
- import { MaybeHexString, Types } from 'aptos';
2
- import { AccountKeys, BaseWalletAdapter, NetworkInfo, SignMessagePayload, SignMessageResponse, WalletAdapterNetwork, WalletName, WalletReadyState } from './BaseAdapter';
3
- import { MsafeWallet } from 'msafe-wallet';
4
- export declare const MsafeWalletName: WalletName<"Msafe">;
5
- interface MsafeAccount {
6
- address: MaybeHexString;
7
- publicKey: MaybeHexString;
8
- authKey: MaybeHexString;
9
- isConnected: boolean;
10
- }
11
- export declare class MsafeWalletAdapter extends BaseWalletAdapter {
12
- name: WalletName<"Msafe">;
13
- url: string;
14
- icon: string;
15
- protected _provider: MsafeWallet | undefined;
16
- protected _network: WalletAdapterNetwork;
17
- protected _chainId: string;
18
- protected _readyState: WalletReadyState;
19
- protected _connecting: boolean;
20
- protected _wallet: MsafeAccount | null;
21
- constructor(origin?: 'Mainnet' | 'Testnet' | string);
22
- get publicAccount(): AccountKeys;
23
- get network(): NetworkInfo;
24
- get connecting(): boolean;
25
- get connected(): boolean;
26
- get readyState(): WalletReadyState;
27
- connect(): Promise<void>;
28
- disconnect(): Promise<void>;
29
- signTransaction(transactionPyld: Types.TransactionPayload, options?: any): Promise<Uint8Array>;
30
- signAndSubmitTransaction(transactionPyld: Types.TransactionPayload, options?: any): Promise<{
31
- hash: Types.HexEncodedBytes;
32
- }>;
33
- signMessage(msgPayload: SignMessagePayload): Promise<SignMessageResponse>;
34
- onAccountChange(): Promise<void>;
35
- onNetworkChange(): Promise<void>;
36
- }
37
- export {};
38
- //# sourceMappingURL=MsafeWallet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MsafeWallet.d.ts","sourceRoot":"","sources":["../../src/WalletAdapters/MsafeWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,cAAc,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAYzD,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAW,WAAW,EAAE,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,eAAe,qBAAiC,CAAC;AAE9D,UAAU,YAAY;IACpB,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,qBAAa,kBAAmB,SAAQ,iBAAiB;IACvD,IAAI,sBAAmB;IAEvB,GAAG,SAA2B;IAE9B,IAAI,SAA4F;IAEhG,SAAS,CAAC,SAAS,EAAE,WAAW,GAAG,SAAS,CAAC;IAE7C,SAAS,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IAEzC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAG3B,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAEN;IAEjC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC;IAE/B,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;gBAE3B,MAAM,GAAE,SAAS,GAAG,SAAS,GAAG,MAAkB;IAiB9D,IAAI,aAAa,IAAI,WAAW,CAM/B;IAED,IAAI,OAAO,IAAI,WAAW,CAKzB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,UAAU,IAAI,gBAAgB,CAEjC;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B,eAAe,CACnB,eAAe,EAAE,KAAK,CAAC,kBAAkB,EACzC,OAAO,CAAC,EAAE,GAAG,GACZ,OAAO,CAAC,UAAU,CAAC;IAiBhB,wBAAwB,CAC5B,eAAe,EAAE,KAAK,CAAC,kBAAkB,EACzC,OAAO,CAAC,EAAE,GAAG,GACZ,OAAO,CAAC;QAAE,IAAI,EAAE,KAAK,CAAC,eAAe,CAAA;KAAE,CAAC;IAiBrC,WAAW,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAkBzE,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBhC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;CAiBvC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"MsafeWallet.js","sourceRoot":"","sources":["../../src/WalletAdapters/MsafeWallet.ts"],"names":[],"mappings":"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"}