@manahippo/aptos-wallet-adapter 0.1.1 → 0.1.4
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/WalletAdatpers/AptosWallet.d.ts +39 -0
- package/dist/WalletAdatpers/AptosWallet.d.ts.map +1 -0
- package/dist/WalletAdatpers/AptosWallet.js +154 -0
- package/dist/WalletAdatpers/AptosWallet.js.map +1 -0
- package/dist/WalletAdatpers/BaseAdapter.d.ts +70 -0
- package/dist/WalletAdatpers/BaseAdapter.d.ts.map +1 -0
- package/dist/WalletAdatpers/BaseAdapter.js +71 -0
- package/dist/WalletAdatpers/BaseAdapter.js.map +1 -0
- package/dist/WalletAdatpers/HippoExtensionWallet.d.ts +38 -0
- package/dist/WalletAdatpers/HippoExtensionWallet.d.ts.map +1 -0
- package/dist/WalletAdatpers/HippoExtensionWallet.js +154 -0
- package/dist/WalletAdatpers/HippoExtensionWallet.js.map +1 -0
- package/dist/WalletAdatpers/HippoWallet.d.ts +37 -0
- package/dist/WalletAdatpers/HippoWallet.d.ts.map +1 -0
- package/dist/WalletAdatpers/HippoWallet.js +152 -0
- package/dist/WalletAdatpers/HippoWallet.js.map +1 -0
- package/dist/WalletAdatpers/MartianWallet.d.ts +35 -0
- package/dist/WalletAdatpers/MartianWallet.d.ts.map +1 -0
- package/dist/WalletAdatpers/MartianWallet.js +200 -0
- package/dist/WalletAdatpers/MartianWallet.js.map +1 -0
- package/dist/WalletAdatpers/MultiMaskWallet.d.ts +39 -0
- package/dist/WalletAdatpers/MultiMaskWallet.d.ts.map +1 -0
- package/dist/WalletAdatpers/MultiMaskWallet.js +194 -0
- package/dist/WalletAdatpers/MultiMaskWallet.js.map +1 -0
- package/dist/WalletAdatpers/index.d.ts +7 -0
- package/dist/WalletAdatpers/index.d.ts.map +1 -0
- package/dist/WalletAdatpers/index.js +23 -0
- package/dist/WalletAdatpers/index.js.map +1 -0
- package/dist/WalletProviders/WalletProvider.d.ts +12 -0
- package/dist/WalletProviders/WalletProvider.d.ts.map +1 -0
- package/dist/WalletProviders/WalletProvider.js +217 -0
- package/dist/WalletProviders/WalletProvider.js.map +1 -0
- package/dist/WalletProviders/errors.d.ts +59 -0
- package/dist/WalletProviders/errors.d.ts.map +1 -0
- package/dist/WalletProviders/errors.js +138 -0
- package/dist/WalletProviders/errors.js.map +1 -0
- package/dist/WalletProviders/index.d.ts +4 -0
- package/dist/WalletProviders/index.d.ts.map +1 -0
- package/dist/WalletProviders/index.js +20 -0
- package/dist/WalletProviders/index.js.map +1 -0
- package/dist/WalletProviders/useWallet.d.ts +24 -0
- package/dist/WalletProviders/useWallet.d.ts.map +1 -0
- package/dist/WalletProviders/useWallet.js +16 -0
- package/dist/WalletProviders/useWallet.js.map +1 -0
- package/dist/config/aptosConstants.d.ts +2 -0
- package/dist/config/aptosConstants.d.ts.map +1 -0
- package/dist/config/aptosConstants.js +5 -0
- package/dist/config/aptosConstants.js.map +1 -0
- package/dist/hooks/useLocalStorage.d.ts +4 -0
- package/dist/hooks/useLocalStorage.d.ts.map +1 -0
- package/dist/hooks/useLocalStorage.js +36 -0
- package/dist/hooks/useLocalStorage.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/package.json +7 -1
- package/src/WalletAdatpers/MartianWallet.ts +13 -13
- package/.eslintignore +0 -6
- package/.eslintrc.json +0 -52
- package/.prettierrc.json +0 -9
- package/tsconfig.json +0 -104
@@ -0,0 +1,152 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.HippoWalletAdapter = exports.HippoWalletName = void 0;
|
13
|
+
const aptosConstants_1 = require("../config/aptosConstants");
|
14
|
+
const errors_1 = require("../WalletProviders/errors");
|
15
|
+
const BaseAdapter_1 = require("./BaseAdapter");
|
16
|
+
exports.HippoWalletName = 'Hippo Wallet';
|
17
|
+
class HippoWalletAdapter extends BaseAdapter_1.BaseWalletAdapter {
|
18
|
+
constructor({
|
19
|
+
// provider = WEBWALLET_URL,
|
20
|
+
// network = WalletAdapterNetwork.Mainnet,
|
21
|
+
timeout = 10000 } = {}) {
|
22
|
+
super();
|
23
|
+
this.name = exports.HippoWalletName;
|
24
|
+
this.url = 'https://hippo-wallet-test.web.app';
|
25
|
+
this.icon = 'https://ui-test1-22e7c.web.app/static/media/hippo_logo.ecded6bf411652de9b7f.png';
|
26
|
+
this._readyState = BaseAdapter_1.WalletReadyState.Installed;
|
27
|
+
this.handleMessage = (e) => {
|
28
|
+
var _a;
|
29
|
+
if (e.origin === this._provider) {
|
30
|
+
if (e.data.method === 'account') {
|
31
|
+
this._wallet = {
|
32
|
+
connected: true,
|
33
|
+
publicKey: ((_a = e.data.address) === null || _a === void 0 ? void 0 : _a.hexString) || null
|
34
|
+
};
|
35
|
+
this.emit('connect', this._wallet.publicKey);
|
36
|
+
}
|
37
|
+
else if (e.data.method === 'success') {
|
38
|
+
this.emit('success', 'Transaction Success');
|
39
|
+
}
|
40
|
+
else if (e.data.method === 'fail') {
|
41
|
+
this.emit('error', new errors_1.WalletSignAndSubmitMessageError(e.data.error));
|
42
|
+
}
|
43
|
+
else if (e.data.method === 'disconnected') {
|
44
|
+
this.disconnect();
|
45
|
+
}
|
46
|
+
}
|
47
|
+
};
|
48
|
+
this._beforeUnload = () => {
|
49
|
+
void this.disconnect();
|
50
|
+
};
|
51
|
+
this._provider = aptosConstants_1.WEBWALLET_URL || 'https://hippo-wallet-test.web.app';
|
52
|
+
// this._network = network;
|
53
|
+
this._timeout = timeout;
|
54
|
+
this._connecting = false;
|
55
|
+
this._wallet = null;
|
56
|
+
this._readyState = BaseAdapter_1.WalletReadyState.Installed;
|
57
|
+
}
|
58
|
+
get publicKey() {
|
59
|
+
var _a;
|
60
|
+
return ((_a = this._wallet) === null || _a === void 0 ? void 0 : _a.publicKey) || null;
|
61
|
+
}
|
62
|
+
get connecting() {
|
63
|
+
return this._connecting;
|
64
|
+
}
|
65
|
+
get connected() {
|
66
|
+
var _a;
|
67
|
+
return !!((_a = this._wallet) === null || _a === void 0 ? void 0 : _a.connected);
|
68
|
+
}
|
69
|
+
get readyState() {
|
70
|
+
return this._readyState;
|
71
|
+
}
|
72
|
+
connect() {
|
73
|
+
return __awaiter(this, void 0, void 0, function* () {
|
74
|
+
try {
|
75
|
+
if (this.connected || this.connecting)
|
76
|
+
return;
|
77
|
+
if (!(this._readyState === BaseAdapter_1.WalletReadyState.Loadable ||
|
78
|
+
this._readyState === BaseAdapter_1.WalletReadyState.Installed))
|
79
|
+
throw new errors_1.WalletNotReadyError();
|
80
|
+
this._connecting = true;
|
81
|
+
window.addEventListener('message', this.handleMessage);
|
82
|
+
window.addEventListener('beforeunload', this._beforeUnload);
|
83
|
+
}
|
84
|
+
catch (error) {
|
85
|
+
this.emit('error', error);
|
86
|
+
throw error;
|
87
|
+
}
|
88
|
+
finally {
|
89
|
+
this._connecting = false;
|
90
|
+
}
|
91
|
+
});
|
92
|
+
}
|
93
|
+
disconnect() {
|
94
|
+
return __awaiter(this, void 0, void 0, function* () {
|
95
|
+
window.removeEventListener('message', this.handleMessage);
|
96
|
+
window.removeEventListener('beforeunload', this._beforeUnload);
|
97
|
+
this.emit('disconnect');
|
98
|
+
});
|
99
|
+
}
|
100
|
+
signTransaction(transaction) {
|
101
|
+
return __awaiter(this, void 0, void 0, function* () {
|
102
|
+
try {
|
103
|
+
const request = new URLSearchParams({
|
104
|
+
request: JSON.stringify({
|
105
|
+
method: 'signTransaction',
|
106
|
+
payload: transaction
|
107
|
+
}),
|
108
|
+
origin: window.location.origin
|
109
|
+
}).toString();
|
110
|
+
const popup = window.open(`${aptosConstants_1.WEBWALLET_URL}?${request}`, 'Transaction Confirmation', 'scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no,width=440,height=700');
|
111
|
+
if (!popup)
|
112
|
+
throw new errors_1.WalletNotConnectedError();
|
113
|
+
const promise = yield new Promise((resolve, reject) => {
|
114
|
+
this.once('success', resolve);
|
115
|
+
this.once('error', reject);
|
116
|
+
});
|
117
|
+
return promise;
|
118
|
+
}
|
119
|
+
catch (error) {
|
120
|
+
this.emit('error', error);
|
121
|
+
throw error;
|
122
|
+
}
|
123
|
+
});
|
124
|
+
}
|
125
|
+
signAndSubmitTransaction(transaction) {
|
126
|
+
return __awaiter(this, void 0, void 0, function* () {
|
127
|
+
try {
|
128
|
+
const request = new URLSearchParams({
|
129
|
+
request: JSON.stringify({
|
130
|
+
method: 'signAndSubmit',
|
131
|
+
payload: transaction
|
132
|
+
}),
|
133
|
+
origin: window.location.origin
|
134
|
+
}).toString();
|
135
|
+
const popup = window.open(`${aptosConstants_1.WEBWALLET_URL}?${request}`, 'Transaction Confirmation', 'scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no,width=440,height=700');
|
136
|
+
if (!popup)
|
137
|
+
throw new errors_1.WalletNotConnectedError();
|
138
|
+
const promise = yield new Promise((resolve, reject) => {
|
139
|
+
this.once('success', resolve);
|
140
|
+
this.once('error', reject);
|
141
|
+
});
|
142
|
+
return promise;
|
143
|
+
}
|
144
|
+
catch (error) {
|
145
|
+
this.emit('error', error);
|
146
|
+
throw error;
|
147
|
+
}
|
148
|
+
});
|
149
|
+
}
|
150
|
+
}
|
151
|
+
exports.HippoWalletAdapter = HippoWalletAdapter;
|
152
|
+
//# sourceMappingURL=HippoWallet.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"HippoWallet.js","sourceRoot":"","sources":["../../src/WalletAdatpers/HippoWallet.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
import { PendingTransaction, SubmitTransactionRequest, TransactionPayload } from 'aptos/dist/api/data-contracts';
|
2
|
+
import { BaseWalletAdapter, PublicKey, WalletName, WalletReadyState } from './BaseAdapter';
|
3
|
+
interface IMartianWallet {
|
4
|
+
connect: (params?: any) => Promise<any>;
|
5
|
+
address?: string;
|
6
|
+
isConnected?: boolean;
|
7
|
+
signGenericTransaction(transaction: any): Promise<void>;
|
8
|
+
disconnect(): Promise<void>;
|
9
|
+
}
|
10
|
+
export declare const MartianWalletName: WalletName<"MartianWallet">;
|
11
|
+
export interface MartianWalletAdapterConfig {
|
12
|
+
provider?: IMartianWallet;
|
13
|
+
timeout?: number;
|
14
|
+
}
|
15
|
+
export declare class MartianWalletAdapter extends BaseWalletAdapter {
|
16
|
+
name: WalletName<"MartianWallet">;
|
17
|
+
url: string;
|
18
|
+
icon: string;
|
19
|
+
protected _provider: IMartianWallet | undefined;
|
20
|
+
protected _timeout: number;
|
21
|
+
protected _readyState: WalletReadyState;
|
22
|
+
protected _connecting: boolean;
|
23
|
+
protected _wallet: any | null;
|
24
|
+
constructor({ timeout }?: MartianWalletAdapterConfig);
|
25
|
+
get publicKey(): PublicKey | null;
|
26
|
+
get connecting(): boolean;
|
27
|
+
get connected(): boolean;
|
28
|
+
get readyState(): WalletReadyState;
|
29
|
+
connect(): Promise<void>;
|
30
|
+
disconnect(): Promise<void>;
|
31
|
+
signTransaction(transaction: TransactionPayload): Promise<SubmitTransactionRequest>;
|
32
|
+
signAndSubmitTransaction(tempTransaction: TransactionPayload): Promise<PendingTransaction>;
|
33
|
+
}
|
34
|
+
export {};
|
35
|
+
//# sourceMappingURL=MartianWallet.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"MartianWallet.d.ts","sourceRoot":"","sources":["../../src/WalletAdatpers/MartianWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAElB,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,+BAA+B,CAAC;AAOvC,OAAO,EACL,iBAAiB,EACjB,SAAS,EAET,UAAU,EACV,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,UAAU,cAAc;IACtB,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sBAAsB,CAAC,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAQD,eAAO,MAAM,iBAAiB,6BAAiD,CAAC;AAEhF,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAE1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,IAAI,8BAAqB;IAEzB,GAAG,SAA+F;IAElG,IAAI,SAC4U;IAEhV,SAAS,CAAC,SAAS,EAAE,cAAc,GAAG,SAAS,CAAC;IAGhD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE3B,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAGJ;IAEnC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC;IAE/B,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC;gBAElB,EAGV,OAAe,EAChB,GAAE,0BAA+B;IAqBlC,IAAI,SAAS,IAAI,SAAS,GAAG,IAAI,CAEhC;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;IA+CxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B3B,eAAe,CAAC,WAAW,EAAE,kBAAkB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IA2BnF,wBAAwB,CAAC,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CA8BjG"}
|
@@ -0,0 +1,200 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.MartianWalletAdapter = exports.MartianWalletName = void 0;
|
13
|
+
const errors_1 = require("../WalletProviders/errors");
|
14
|
+
const BaseAdapter_1 = require("./BaseAdapter");
|
15
|
+
exports.MartianWalletName = 'MartianWallet';
|
16
|
+
class MartianWalletAdapter extends BaseAdapter_1.BaseWalletAdapter {
|
17
|
+
constructor({
|
18
|
+
// provider,
|
19
|
+
// network = WalletAdapterNetwork.Mainnet,
|
20
|
+
timeout = 10000 } = {}) {
|
21
|
+
super();
|
22
|
+
this.name = exports.MartianWalletName;
|
23
|
+
this.url = 'https://chrome.google.com/webstore/detail/martian-wallet/efbglgofoippbgcjepnhiblaibcnclgk';
|
24
|
+
this.icon = 'https://www.gitbook.com/cdn-cgi/image/width=40,height=40,fit=contain,dpr=2,format=auto/https%3A%2F%2F1159842905-files.gitbook.io%2F~%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FXillBNDwQOz0oPJ4OtRH%252Ficon%252FaBwgf6d32iEu3YE56Jvk%252Flogo128_squ.png%3Falt%3Dmedia%26token%3D0f5bef1f-a4bd-495e-a447-289c235bb76a';
|
25
|
+
this._readyState = typeof window === 'undefined' || typeof document === 'undefined'
|
26
|
+
? BaseAdapter_1.WalletReadyState.Unsupported
|
27
|
+
: BaseAdapter_1.WalletReadyState.NotDetected;
|
28
|
+
this._provider = window.martian;
|
29
|
+
// this._network = network;
|
30
|
+
this._timeout = timeout;
|
31
|
+
this._connecting = false;
|
32
|
+
this._wallet = null;
|
33
|
+
if (this._readyState !== BaseAdapter_1.WalletReadyState.Unsupported) {
|
34
|
+
(0, BaseAdapter_1.scopePollingDetectionStrategy)(() => {
|
35
|
+
if (window.martian) {
|
36
|
+
this._readyState = BaseAdapter_1.WalletReadyState.Installed;
|
37
|
+
this.emit('readyStateChange', this._readyState);
|
38
|
+
return true;
|
39
|
+
}
|
40
|
+
return false;
|
41
|
+
});
|
42
|
+
}
|
43
|
+
}
|
44
|
+
get publicKey() {
|
45
|
+
var _a;
|
46
|
+
return ((_a = this._wallet) === null || _a === void 0 ? void 0 : _a.address) || null;
|
47
|
+
}
|
48
|
+
get connecting() {
|
49
|
+
return this._connecting;
|
50
|
+
}
|
51
|
+
get connected() {
|
52
|
+
var _a;
|
53
|
+
return !!((_a = this._wallet) === null || _a === void 0 ? void 0 : _a.isConnected);
|
54
|
+
}
|
55
|
+
get readyState() {
|
56
|
+
return this._readyState;
|
57
|
+
}
|
58
|
+
connect() {
|
59
|
+
var _a;
|
60
|
+
return __awaiter(this, void 0, void 0, function* () {
|
61
|
+
try {
|
62
|
+
// console.log(1, window.martian);
|
63
|
+
if (this.connected || this.connecting)
|
64
|
+
return;
|
65
|
+
// console.log(2);
|
66
|
+
if (!(this._readyState === BaseAdapter_1.WalletReadyState.Loadable ||
|
67
|
+
this._readyState === BaseAdapter_1.WalletReadyState.Installed))
|
68
|
+
throw new errors_1.WalletNotReadyError();
|
69
|
+
// console.log(3);
|
70
|
+
this._connecting = true;
|
71
|
+
const provider = window.martian;
|
72
|
+
// console.log(4);
|
73
|
+
const loggedInAddress = yield new Promise((resolve, reject) => {
|
74
|
+
provider === null || provider === void 0 ? void 0 : provider.disconnect();
|
75
|
+
// console.log(5);
|
76
|
+
provider === null || provider === void 0 ? void 0 : provider.connect((respAddress) => {
|
77
|
+
// console.log(6);
|
78
|
+
try {
|
79
|
+
resolve(respAddress.address);
|
80
|
+
}
|
81
|
+
catch (err) {
|
82
|
+
reject(err);
|
83
|
+
}
|
84
|
+
// 0xc4265dc8a5d90715f8a60bebf16688819427bca928a537ad35f798d4d1267716
|
85
|
+
});
|
86
|
+
});
|
87
|
+
// console.log(7, loggedInAddress, window.martian?.address);
|
88
|
+
if (loggedInAddress === ((_a = window.martian) === null || _a === void 0 ? void 0 : _a.address)) {
|
89
|
+
// console.log(8);
|
90
|
+
this._wallet = window.martian;
|
91
|
+
}
|
92
|
+
// console.log(9);
|
93
|
+
this.emit('connect', this._wallet.address);
|
94
|
+
}
|
95
|
+
catch (error) {
|
96
|
+
// console.log(10, error);
|
97
|
+
this.emit('error', error);
|
98
|
+
throw error;
|
99
|
+
}
|
100
|
+
finally {
|
101
|
+
// console.log(11);
|
102
|
+
this._connecting = false;
|
103
|
+
}
|
104
|
+
});
|
105
|
+
}
|
106
|
+
disconnect() {
|
107
|
+
return __awaiter(this, void 0, void 0, function* () {
|
108
|
+
const wallet = this._wallet;
|
109
|
+
if (wallet) {
|
110
|
+
this._wallet = null;
|
111
|
+
try {
|
112
|
+
yield new Promise((resolve, reject) => {
|
113
|
+
const timeout = setTimeout(() => resolve(), 250);
|
114
|
+
try {
|
115
|
+
wallet.disconnect(() => {
|
116
|
+
clearTimeout(timeout);
|
117
|
+
resolve();
|
118
|
+
});
|
119
|
+
}
|
120
|
+
catch (err) {
|
121
|
+
reject(err);
|
122
|
+
}
|
123
|
+
});
|
124
|
+
}
|
125
|
+
catch (error) {
|
126
|
+
this.emit('error', new errors_1.WalletDisconnectionError(error === null || error === void 0 ? void 0 : error.message, error));
|
127
|
+
}
|
128
|
+
}
|
129
|
+
this.emit('disconnect');
|
130
|
+
});
|
131
|
+
}
|
132
|
+
signTransaction(transaction) {
|
133
|
+
return __awaiter(this, void 0, void 0, function* () {
|
134
|
+
try {
|
135
|
+
const wallet = this._wallet;
|
136
|
+
if (!wallet)
|
137
|
+
throw new errors_1.WalletNotConnectedError();
|
138
|
+
try {
|
139
|
+
const response = yield new Promise((resolve, reject) => {
|
140
|
+
wallet.signGenericTransaction(transaction, (resp) => {
|
141
|
+
// console.log('signTransaction', resp);
|
142
|
+
if (resp.status === 200) {
|
143
|
+
// console.log('Transaction is Signed successfully.');
|
144
|
+
resolve(resp);
|
145
|
+
}
|
146
|
+
else {
|
147
|
+
reject(resp.message);
|
148
|
+
}
|
149
|
+
});
|
150
|
+
});
|
151
|
+
return response;
|
152
|
+
}
|
153
|
+
catch (error) {
|
154
|
+
throw new errors_1.WalletSignTransactionError(error === null || error === void 0 ? void 0 : error.message, error);
|
155
|
+
}
|
156
|
+
}
|
157
|
+
catch (error) {
|
158
|
+
this.emit('error', error);
|
159
|
+
throw error;
|
160
|
+
}
|
161
|
+
});
|
162
|
+
}
|
163
|
+
signAndSubmitTransaction(tempTransaction) {
|
164
|
+
return __awaiter(this, void 0, void 0, function* () {
|
165
|
+
try {
|
166
|
+
const wallet = this._wallet;
|
167
|
+
if (!wallet)
|
168
|
+
throw new errors_1.WalletNotConnectedError();
|
169
|
+
const transaction = tempTransaction;
|
170
|
+
try {
|
171
|
+
// console.log('trans', 1);
|
172
|
+
const response = yield new Promise((resolve, reject) => {
|
173
|
+
// const args = [...transaction.type_arguments, transaction.arguments[0] / 1000];
|
174
|
+
// console.log('trans 2', wallet, transaction, args);
|
175
|
+
wallet.signGenericTransaction(transaction.type, transaction.arguments, (resp) => {
|
176
|
+
// console.log('signTransaction', resp);
|
177
|
+
if (resp.status === 200) {
|
178
|
+
// console.log('Transaction is Signed successfully.');
|
179
|
+
resolve(resp);
|
180
|
+
}
|
181
|
+
else {
|
182
|
+
reject(resp.message);
|
183
|
+
}
|
184
|
+
});
|
185
|
+
});
|
186
|
+
return response;
|
187
|
+
}
|
188
|
+
catch (error) {
|
189
|
+
throw new errors_1.WalletSignTransactionError(error);
|
190
|
+
}
|
191
|
+
}
|
192
|
+
catch (error) {
|
193
|
+
this.emit('error', error);
|
194
|
+
throw error;
|
195
|
+
}
|
196
|
+
});
|
197
|
+
}
|
198
|
+
}
|
199
|
+
exports.MartianWalletAdapter = MartianWalletAdapter;
|
200
|
+
//# sourceMappingURL=MartianWallet.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"MartianWallet.js","sourceRoot":"","sources":["../../src/WalletAdatpers/MartianWallet.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
import { PendingTransaction, SubmitTransactionRequest, TransactionPayload } from 'aptos/dist/api/data-contracts';
|
2
|
+
import { BaseWalletAdapter, PublicKey, WalletName, WalletReadyState } from './BaseAdapter';
|
3
|
+
interface IMultiMaskWallet {
|
4
|
+
currentProvider: {
|
5
|
+
enable: () => Promise<PublicKey[]>;
|
6
|
+
sendAsync(payload: any, callback: (error: Error | null, result?: any) => void): void;
|
7
|
+
};
|
8
|
+
request: (params?: any) => Promise<any>;
|
9
|
+
publicKey?: string;
|
10
|
+
isConnected?: boolean;
|
11
|
+
signGenericTransaction(transaction: any): Promise<void>;
|
12
|
+
disconnect(): Promise<void>;
|
13
|
+
}
|
14
|
+
export declare const MultiMaskWalletName: WalletName<"MultiMaskWallet">;
|
15
|
+
export interface MultiMaskWalletAdapterConfig {
|
16
|
+
provider?: IMultiMaskWallet;
|
17
|
+
timeout?: number;
|
18
|
+
}
|
19
|
+
export declare class MultiMaskWalletAdapter extends BaseWalletAdapter {
|
20
|
+
name: WalletName<"MultiMaskWallet">;
|
21
|
+
url: string;
|
22
|
+
icon: string;
|
23
|
+
protected _provider: IMultiMaskWallet | undefined;
|
24
|
+
protected _timeout: number;
|
25
|
+
protected _readyState: WalletReadyState;
|
26
|
+
protected _connecting: boolean;
|
27
|
+
protected _wallet: any | null;
|
28
|
+
constructor({ timeout }?: MultiMaskWalletAdapterConfig);
|
29
|
+
get publicKey(): PublicKey | null;
|
30
|
+
get connecting(): boolean;
|
31
|
+
get connected(): boolean;
|
32
|
+
get readyState(): WalletReadyState;
|
33
|
+
connect(): Promise<void>;
|
34
|
+
disconnect(): Promise<void>;
|
35
|
+
signTransaction(transaction: TransactionPayload): Promise<SubmitTransactionRequest>;
|
36
|
+
signAndSubmitTransaction(tempTransaction: TransactionPayload): Promise<PendingTransaction>;
|
37
|
+
}
|
38
|
+
export {};
|
39
|
+
//# sourceMappingURL=MultiMaskWallet.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"MultiMaskWallet.d.ts","sourceRoot":"","sources":["../../src/WalletAdatpers/MultiMaskWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAElB,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,+BAA+B,CAAC;AAOvC,OAAO,EACL,iBAAiB,EACjB,SAAS,EAET,UAAU,EACV,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,UAAU,gBAAgB;IACxB,eAAe,EAAE;QACf,MAAM,EAAE,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QACnC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;KACtF,CAAC;IACF,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sBAAsB,CAAC,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAQD,eAAO,MAAM,mBAAmB,+BAAqD,CAAC;AAEtF,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAE5B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,sBAAuB,SAAQ,iBAAiB;IAC3D,IAAI,gCAAuB;IAE3B,GAAG,SAAuE;IAE1E,IAAI,SAA6D;IAEjE,SAAS,CAAC,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAGlD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE3B,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAGJ;IAEnC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC;IAE/B,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC;gBAElB,EAGV,OAAe,EAChB,GAAE,4BAAiC;IAqBpC,IAAI,SAAS,IAAI,SAAS,GAAG,IAAI,CAEhC;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;IAqCxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B3B,eAAe,CAAC,WAAW,EAAE,kBAAkB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IA2BnF,wBAAwB,CAAC,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAwCjG"}
|
@@ -0,0 +1,194 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.MultiMaskWalletAdapter = exports.MultiMaskWalletName = void 0;
|
13
|
+
const errors_1 = require("../WalletProviders/errors");
|
14
|
+
const BaseAdapter_1 = require("./BaseAdapter");
|
15
|
+
exports.MultiMaskWalletName = 'MultiMaskWallet';
|
16
|
+
class MultiMaskWalletAdapter extends BaseAdapter_1.BaseWalletAdapter {
|
17
|
+
constructor({
|
18
|
+
// provider,
|
19
|
+
// network = WalletAdapterNetwork.Mainnet,
|
20
|
+
timeout = 10000 } = {}) {
|
21
|
+
super();
|
22
|
+
this.name = exports.MultiMaskWalletName;
|
23
|
+
this.url = 'https://github.com/pontem-network/aptos-chrome-extension/releases';
|
24
|
+
this.icon = 'https://liquidswap.pontem.network/img/logo.87454209.svg';
|
25
|
+
this._readyState = typeof window === 'undefined' || typeof document === 'undefined'
|
26
|
+
? BaseAdapter_1.WalletReadyState.Unsupported
|
27
|
+
: BaseAdapter_1.WalletReadyState.NotDetected;
|
28
|
+
this._provider = window.aptosWeb3;
|
29
|
+
// this._network = network;
|
30
|
+
this._timeout = timeout;
|
31
|
+
this._connecting = false;
|
32
|
+
this._wallet = null;
|
33
|
+
if (this._readyState !== BaseAdapter_1.WalletReadyState.Unsupported) {
|
34
|
+
(0, BaseAdapter_1.scopePollingDetectionStrategy)(() => {
|
35
|
+
if (this._provider) {
|
36
|
+
this._readyState = BaseAdapter_1.WalletReadyState.Installed;
|
37
|
+
this.emit('readyStateChange', this._readyState);
|
38
|
+
return true;
|
39
|
+
}
|
40
|
+
return false;
|
41
|
+
});
|
42
|
+
}
|
43
|
+
}
|
44
|
+
get publicKey() {
|
45
|
+
var _a;
|
46
|
+
return ((_a = this._wallet) === null || _a === void 0 ? void 0 : _a.publicKey) || null;
|
47
|
+
}
|
48
|
+
get connecting() {
|
49
|
+
return this._connecting;
|
50
|
+
}
|
51
|
+
get connected() {
|
52
|
+
var _a;
|
53
|
+
return !!((_a = this._wallet) === null || _a === void 0 ? void 0 : _a.isConnected);
|
54
|
+
}
|
55
|
+
get readyState() {
|
56
|
+
return this._readyState;
|
57
|
+
}
|
58
|
+
connect() {
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
60
|
+
try {
|
61
|
+
// console.log(1);
|
62
|
+
if (this.connected || this.connecting)
|
63
|
+
return;
|
64
|
+
// console.log(2);
|
65
|
+
if (!(this._readyState === BaseAdapter_1.WalletReadyState.Loadable ||
|
66
|
+
this._readyState === BaseAdapter_1.WalletReadyState.Installed))
|
67
|
+
throw new errors_1.WalletNotReadyError();
|
68
|
+
// console.log(3);
|
69
|
+
this._connecting = true;
|
70
|
+
const provider = this._provider;
|
71
|
+
// console.log(4);
|
72
|
+
const wallets = yield (provider === null || provider === void 0 ? void 0 : provider.currentProvider.enable());
|
73
|
+
if (wallets && wallets.length) {
|
74
|
+
this._wallet = {
|
75
|
+
publicKey: wallets[0],
|
76
|
+
isConnected: true
|
77
|
+
};
|
78
|
+
// console.log(9, this._wallet);
|
79
|
+
this.emit('connect', this._wallet);
|
80
|
+
}
|
81
|
+
}
|
82
|
+
catch (error) {
|
83
|
+
// console.log(10, error);
|
84
|
+
this.emit('error', error);
|
85
|
+
throw error;
|
86
|
+
}
|
87
|
+
finally {
|
88
|
+
// console.log(11);
|
89
|
+
this._connecting = false;
|
90
|
+
}
|
91
|
+
});
|
92
|
+
}
|
93
|
+
disconnect() {
|
94
|
+
return __awaiter(this, void 0, void 0, function* () {
|
95
|
+
const wallet = this._wallet;
|
96
|
+
if (wallet) {
|
97
|
+
this._wallet = null;
|
98
|
+
try {
|
99
|
+
yield new Promise((resolve, reject) => {
|
100
|
+
const timeout = setTimeout(() => resolve(), 250);
|
101
|
+
try {
|
102
|
+
wallet.disconnect(() => {
|
103
|
+
clearTimeout(timeout);
|
104
|
+
resolve();
|
105
|
+
});
|
106
|
+
}
|
107
|
+
catch (err) {
|
108
|
+
reject(err);
|
109
|
+
}
|
110
|
+
});
|
111
|
+
}
|
112
|
+
catch (error) {
|
113
|
+
this.emit('error', new errors_1.WalletDisconnectionError(error === null || error === void 0 ? void 0 : error.message, error));
|
114
|
+
}
|
115
|
+
}
|
116
|
+
this.emit('disconnect');
|
117
|
+
});
|
118
|
+
}
|
119
|
+
signTransaction(transaction) {
|
120
|
+
return __awaiter(this, void 0, void 0, function* () {
|
121
|
+
try {
|
122
|
+
const wallet = this._wallet;
|
123
|
+
if (!wallet)
|
124
|
+
throw new errors_1.WalletNotConnectedError();
|
125
|
+
try {
|
126
|
+
const response = yield new Promise((resolve, reject) => {
|
127
|
+
wallet.signGenericTransaction(transaction, (resp) => {
|
128
|
+
// console.log('signTransaction', resp);
|
129
|
+
if (resp.status === 200) {
|
130
|
+
// console.log('Transaction is Signed successfully.');
|
131
|
+
resolve(resp);
|
132
|
+
}
|
133
|
+
else {
|
134
|
+
reject(resp.message);
|
135
|
+
}
|
136
|
+
});
|
137
|
+
});
|
138
|
+
return response;
|
139
|
+
}
|
140
|
+
catch (error) {
|
141
|
+
throw new errors_1.WalletSignTransactionError(error === null || error === void 0 ? void 0 : error.message, error);
|
142
|
+
}
|
143
|
+
}
|
144
|
+
catch (error) {
|
145
|
+
this.emit('error', error);
|
146
|
+
throw error;
|
147
|
+
}
|
148
|
+
});
|
149
|
+
}
|
150
|
+
signAndSubmitTransaction(tempTransaction) {
|
151
|
+
return __awaiter(this, void 0, void 0, function* () {
|
152
|
+
try {
|
153
|
+
const wallet = this._provider;
|
154
|
+
if (!wallet)
|
155
|
+
throw new errors_1.WalletNotConnectedError();
|
156
|
+
const transaction = tempTransaction;
|
157
|
+
try {
|
158
|
+
// console.log('trans', 1);
|
159
|
+
const response = yield new Promise((resolve, reject) => {
|
160
|
+
// const args = [...transaction.type_arguments, transaction.arguments[0] / 1000];
|
161
|
+
// console.log('trans 2', transaction, transaction.function.split(':')[0]);
|
162
|
+
wallet.currentProvider.sendAsync({
|
163
|
+
method: 'eth_sendTransaction',
|
164
|
+
params: [{ from: transaction.function.split(':')[0] }]
|
165
|
+
}, (error, resp) => {
|
166
|
+
console.log('signTransaction', error, resp);
|
167
|
+
if (error) {
|
168
|
+
reject(error.message);
|
169
|
+
}
|
170
|
+
else {
|
171
|
+
resolve(resp);
|
172
|
+
}
|
173
|
+
// if (resp.status === 200) {
|
174
|
+
// // console.log('Transaction is Signed successfully.');
|
175
|
+
// } else {
|
176
|
+
// reject(resp.message);
|
177
|
+
// }
|
178
|
+
});
|
179
|
+
});
|
180
|
+
return response;
|
181
|
+
}
|
182
|
+
catch (error) {
|
183
|
+
throw new errors_1.WalletSignTransactionError(error);
|
184
|
+
}
|
185
|
+
}
|
186
|
+
catch (error) {
|
187
|
+
this.emit('error', error);
|
188
|
+
throw error;
|
189
|
+
}
|
190
|
+
});
|
191
|
+
}
|
192
|
+
}
|
193
|
+
exports.MultiMaskWalletAdapter = MultiMaskWalletAdapter;
|
194
|
+
//# sourceMappingURL=MultiMaskWallet.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"MultiMaskWallet.js","sourceRoot":"","sources":["../../src/WalletAdatpers/MultiMaskWallet.ts"],"names":[],"mappings":"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"}
|