unwallet-client-sdk 0.8.0 → 0.9.1
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/.github/workflows/publish.yml +1 -1
- package/.husky/commit-msg +1 -4
- package/dist/unwallet.d.ts +1 -5
- package/dist/unwallet.d.ts.map +1 -1
- package/dist/unwallet.js +50 -59
- package/package.json +6 -6
- package/src/unwallet.ts +58 -68
package/.husky/commit-msg
CHANGED
package/dist/unwallet.d.ts
CHANGED
|
@@ -14,7 +14,7 @@ export declare class UnWallet {
|
|
|
14
14
|
redirectURL: string;
|
|
15
15
|
nonce?: string;
|
|
16
16
|
isVirtual?: boolean;
|
|
17
|
-
|
|
17
|
+
chainID?: number;
|
|
18
18
|
}): void;
|
|
19
19
|
sign(args: {
|
|
20
20
|
message: string;
|
|
@@ -29,10 +29,6 @@ export declare class UnWallet {
|
|
|
29
29
|
to: string;
|
|
30
30
|
amount: number;
|
|
31
31
|
}): Promise<MetaTransaction>;
|
|
32
|
-
createPresentation(args: {
|
|
33
|
-
credential: string;
|
|
34
|
-
challenge: string;
|
|
35
|
-
}): Promise<string>;
|
|
36
32
|
private getConnectionID;
|
|
37
33
|
private sendWSMessage;
|
|
38
34
|
private handleWSMessage;
|
package/dist/unwallet.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unwallet.d.ts","sourceRoot":"","sources":["../src/unwallet.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,OAAO,CAAwC;IACvD,OAAO,CAAC,MAAM,CAAwC;gBAE1C,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,EAAE,EAAE,SAAS;IAUzE,OAAO,CAAC,eAAe;WAKT,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"unwallet.d.ts","sourceRoot":"","sources":["../src/unwallet.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,OAAO,CAAwC;IACvD,OAAO,CAAC,MAAM,CAAwC;gBAE1C,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,EAAE,EAAE,SAAS;IAUzE,OAAO,CAAC,eAAe;WAKT,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAsC9C,SAAS,CAAC,IAAI,EAAE;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,IAAI;IA2BD,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAsB5D,eAAe,CAAC,IAAI,EAAE;QAC3B,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,eAAe,CAAC;IAiBrB,iBAAiB,CAAC,IAAI,EAAE;QAC7B,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,eAAe,CAAC;IAkB5B,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,eAAe;IA4BvB,OAAO,CAAC,UAAU;CAYnB"}
|
package/dist/unwallet.js
CHANGED
|
@@ -27,21 +27,23 @@ class UnWallet {
|
|
|
27
27
|
}
|
|
28
28
|
const unWalletConfig = configs_1.unWalletConfigs[config.env];
|
|
29
29
|
const ws = new WebSocket(unWalletConfig.wsAPIURL);
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
30
|
+
{
|
|
31
|
+
ws.onerror = (event) => {
|
|
32
|
+
reject("websocket connection failed");
|
|
33
|
+
};
|
|
34
|
+
ws.onopen = (event) => {
|
|
35
|
+
unWallet.getConnectionID();
|
|
36
|
+
};
|
|
37
|
+
ws.onmessage = (event) => {
|
|
38
|
+
const msg = JSON.parse(event.data);
|
|
39
|
+
if (msg.type === "connectionID") {
|
|
40
|
+
unWallet.connectionID = msg.value;
|
|
41
|
+
resolve(unWallet);
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
unWallet.handleWSMessage(msg);
|
|
45
|
+
};
|
|
46
|
+
}
|
|
45
47
|
// should be run after ws setup
|
|
46
48
|
const unWallet = new UnWallet(config, unWalletConfig, ws);
|
|
47
49
|
});
|
|
@@ -50,23 +52,19 @@ class UnWallet {
|
|
|
50
52
|
if (!args.responseMode) {
|
|
51
53
|
args.responseMode = "fragment";
|
|
52
54
|
}
|
|
53
|
-
let url;
|
|
54
|
-
|
|
55
|
-
url
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
url
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
url.searchParams.set("nonce", args.nonce);
|
|
67
|
-
}
|
|
68
|
-
if (args.network !== undefined) {
|
|
69
|
-
url.searchParams.set("network", args.network);
|
|
55
|
+
let url = new URL(`${this.unWalletConfig.baseURL}/${args.isVirtual === false ? "" : "v"}authorize`);
|
|
56
|
+
{
|
|
57
|
+
url.searchParams.set("response_type", "id_token");
|
|
58
|
+
url.searchParams.set("response_mode", args.responseMode);
|
|
59
|
+
url.searchParams.set("client_id", this.config.clientID);
|
|
60
|
+
url.searchParams.set("scope", "openid");
|
|
61
|
+
url.searchParams.set("redirect_uri", args.redirectURL);
|
|
62
|
+
if (args.nonce !== undefined) {
|
|
63
|
+
url.searchParams.set("nonce", args.nonce);
|
|
64
|
+
}
|
|
65
|
+
if (args.chainID !== undefined) {
|
|
66
|
+
url.searchParams.set("chain_id", args.chainID.toString());
|
|
67
|
+
}
|
|
70
68
|
}
|
|
71
69
|
location.assign(url.toString());
|
|
72
70
|
}
|
|
@@ -80,45 +78,41 @@ class UnWallet {
|
|
|
80
78
|
};
|
|
81
79
|
this.reject = reject;
|
|
82
80
|
const url = new URL(`${this.unWalletConfig.baseURL}/x/sign`);
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
81
|
+
{
|
|
82
|
+
url.searchParams.set("connectionID", this.connectionID);
|
|
83
|
+
url.searchParams.set("clientID", this.config.clientID);
|
|
84
|
+
url.searchParams.set("message", args.message);
|
|
85
|
+
}
|
|
86
86
|
this.openWindow(url);
|
|
87
87
|
});
|
|
88
88
|
}
|
|
89
|
+
// DEPRECATED
|
|
89
90
|
signTransaction(args) {
|
|
90
91
|
return new Promise((resolve, reject) => {
|
|
91
92
|
this.resolve = resolve;
|
|
92
93
|
this.reject = reject;
|
|
93
94
|
const url = new URL(`${this.unWalletConfig.baseURL}/x/signTransaction`);
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
95
|
+
{
|
|
96
|
+
url.searchParams.set("connectionID", this.connectionID);
|
|
97
|
+
url.searchParams.set("clientID", this.config.clientID);
|
|
98
|
+
url.searchParams.set("transaction", JSON.stringify(args));
|
|
99
|
+
}
|
|
97
100
|
this.openWindow(url);
|
|
98
101
|
});
|
|
99
102
|
}
|
|
103
|
+
// DEPRECATED
|
|
100
104
|
signTokenTransfer(args) {
|
|
101
105
|
return new Promise((resolve, reject) => {
|
|
102
106
|
this.resolve = resolve;
|
|
103
107
|
this.reject = reject;
|
|
104
108
|
const url = new URL(`${this.unWalletConfig.baseURL}/x/signTokenTransfer`);
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
}
|
|
113
|
-
createPresentation(args) {
|
|
114
|
-
return new Promise((resolve, reject) => {
|
|
115
|
-
this.resolve = resolve;
|
|
116
|
-
this.reject = reject;
|
|
117
|
-
const url = new URL(`${this.unWalletConfig.baseURL}/x/createPresentation`);
|
|
118
|
-
url.searchParams.set("connectionID", this.connectionID);
|
|
119
|
-
url.searchParams.set("clientID", this.config.clientID);
|
|
120
|
-
url.searchParams.set("credential", args.credential);
|
|
121
|
-
url.searchParams.set("challenge", args.challenge);
|
|
109
|
+
{
|
|
110
|
+
url.searchParams.set("connectionID", this.connectionID);
|
|
111
|
+
url.searchParams.set("clientID", this.config.clientID);
|
|
112
|
+
url.searchParams.set("id", args.id.toString());
|
|
113
|
+
url.searchParams.set("to", args.to);
|
|
114
|
+
url.searchParams.set("amount", args.amount.toString());
|
|
115
|
+
}
|
|
122
116
|
this.openWindow(url);
|
|
123
117
|
});
|
|
124
118
|
}
|
|
@@ -138,9 +132,6 @@ class UnWallet {
|
|
|
138
132
|
case "metaTransaction":
|
|
139
133
|
this.resolve(msg.value);
|
|
140
134
|
break;
|
|
141
|
-
case "presentation":
|
|
142
|
-
this.resolve(msg.value);
|
|
143
|
-
break;
|
|
144
135
|
case "error":
|
|
145
136
|
switch (msg.value) {
|
|
146
137
|
case "rejected":
|
|
@@ -151,7 +142,7 @@ class UnWallet {
|
|
|
151
142
|
}
|
|
152
143
|
break;
|
|
153
144
|
default:
|
|
154
|
-
throw new Error(`
|
|
145
|
+
throw new Error(`unexpected message type: ${msg.type}`);
|
|
155
146
|
}
|
|
156
147
|
this.initPromiseArgs();
|
|
157
148
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "unwallet-client-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.1",
|
|
4
4
|
"description": "unWallet client-side SDK",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "SIVIRA",
|
|
@@ -15,15 +15,15 @@
|
|
|
15
15
|
}
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"ethers": "6.
|
|
18
|
+
"ethers": "6.12.0"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
|
-
"@commitlint/cli": "
|
|
22
|
-
"@commitlint/config-conventional": "
|
|
21
|
+
"@commitlint/cli": "19.3.0",
|
|
22
|
+
"@commitlint/config-conventional": "19.2.2",
|
|
23
23
|
"commitizen": "4.3.0",
|
|
24
24
|
"cz-conventional-changelog": "3.3.0",
|
|
25
|
-
"husky": "
|
|
26
|
-
"typescript": "5.
|
|
25
|
+
"husky": "9.0.11",
|
|
26
|
+
"typescript": "5.4.5"
|
|
27
27
|
},
|
|
28
28
|
"scripts": {
|
|
29
29
|
"build": "tsc",
|
package/src/unwallet.ts
CHANGED
|
@@ -45,21 +45,26 @@ export class UnWallet {
|
|
|
45
45
|
const unWalletConfig = unWalletConfigs[config.env];
|
|
46
46
|
|
|
47
47
|
const ws = new WebSocket(unWalletConfig.wsAPIURL);
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
48
|
+
{
|
|
49
|
+
ws.onerror = (event) => {
|
|
50
|
+
reject("websocket connection failed");
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
ws.onopen = (event) => {
|
|
54
|
+
unWallet.getConnectionID();
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
ws.onmessage = (event) => {
|
|
58
|
+
const msg = JSON.parse(event.data);
|
|
59
|
+
if (msg.type === "connectionID") {
|
|
60
|
+
unWallet.connectionID = msg.value;
|
|
61
|
+
resolve(unWallet);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
unWallet.handleWSMessage(msg);
|
|
66
|
+
};
|
|
67
|
+
}
|
|
63
68
|
|
|
64
69
|
// should be run after ws setup
|
|
65
70
|
const unWallet = new UnWallet(config, unWalletConfig, ws);
|
|
@@ -71,28 +76,29 @@ export class UnWallet {
|
|
|
71
76
|
redirectURL: string;
|
|
72
77
|
nonce?: string;
|
|
73
78
|
isVirtual?: boolean;
|
|
74
|
-
|
|
79
|
+
chainID?: number;
|
|
75
80
|
}): void {
|
|
76
81
|
if (!args.responseMode) {
|
|
77
82
|
args.responseMode = "fragment";
|
|
78
83
|
}
|
|
79
84
|
|
|
80
|
-
let url
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
85
|
+
let url = new URL(
|
|
86
|
+
`${this.unWalletConfig.baseURL}/${
|
|
87
|
+
args.isVirtual === false ? "" : "v"
|
|
88
|
+
}authorize`
|
|
89
|
+
);
|
|
90
|
+
{
|
|
91
|
+
url.searchParams.set("response_type", "id_token");
|
|
92
|
+
url.searchParams.set("response_mode", args.responseMode);
|
|
93
|
+
url.searchParams.set("client_id", this.config.clientID);
|
|
94
|
+
url.searchParams.set("scope", "openid");
|
|
95
|
+
url.searchParams.set("redirect_uri", args.redirectURL);
|
|
96
|
+
if (args.nonce !== undefined) {
|
|
97
|
+
url.searchParams.set("nonce", args.nonce);
|
|
98
|
+
}
|
|
99
|
+
if (args.chainID !== undefined) {
|
|
100
|
+
url.searchParams.set("chain_id", args.chainID.toString());
|
|
101
|
+
}
|
|
96
102
|
}
|
|
97
103
|
|
|
98
104
|
location.assign(url.toString());
|
|
@@ -109,14 +115,17 @@ export class UnWallet {
|
|
|
109
115
|
this.reject = reject;
|
|
110
116
|
|
|
111
117
|
const url = new URL(`${this.unWalletConfig.baseURL}/x/sign`);
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
118
|
+
{
|
|
119
|
+
url.searchParams.set("connectionID", this.connectionID);
|
|
120
|
+
url.searchParams.set("clientID", this.config.clientID);
|
|
121
|
+
url.searchParams.set("message", args.message);
|
|
122
|
+
}
|
|
115
123
|
|
|
116
124
|
this.openWindow(url);
|
|
117
125
|
});
|
|
118
126
|
}
|
|
119
127
|
|
|
128
|
+
// DEPRECATED
|
|
120
129
|
public signTransaction(args: {
|
|
121
130
|
to: string;
|
|
122
131
|
value?: string;
|
|
@@ -127,14 +136,17 @@ export class UnWallet {
|
|
|
127
136
|
this.reject = reject;
|
|
128
137
|
|
|
129
138
|
const url = new URL(`${this.unWalletConfig.baseURL}/x/signTransaction`);
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
139
|
+
{
|
|
140
|
+
url.searchParams.set("connectionID", this.connectionID);
|
|
141
|
+
url.searchParams.set("clientID", this.config.clientID);
|
|
142
|
+
url.searchParams.set("transaction", JSON.stringify(args));
|
|
143
|
+
}
|
|
133
144
|
|
|
134
145
|
this.openWindow(url);
|
|
135
146
|
});
|
|
136
147
|
}
|
|
137
148
|
|
|
149
|
+
// DEPRECATED
|
|
138
150
|
public signTokenTransfer(args: {
|
|
139
151
|
id: number;
|
|
140
152
|
to: string;
|
|
@@ -145,31 +157,13 @@ export class UnWallet {
|
|
|
145
157
|
this.reject = reject;
|
|
146
158
|
|
|
147
159
|
const url = new URL(`${this.unWalletConfig.baseURL}/x/signTokenTransfer`);
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
public createPresentation(args: {
|
|
159
|
-
credential: string;
|
|
160
|
-
challenge: string;
|
|
161
|
-
}): Promise<string> {
|
|
162
|
-
return new Promise((resolve, reject) => {
|
|
163
|
-
this.resolve = resolve;
|
|
164
|
-
this.reject = reject;
|
|
165
|
-
|
|
166
|
-
const url = new URL(
|
|
167
|
-
`${this.unWalletConfig.baseURL}/x/createPresentation`
|
|
168
|
-
);
|
|
169
|
-
url.searchParams.set("connectionID", this.connectionID);
|
|
170
|
-
url.searchParams.set("clientID", this.config.clientID);
|
|
171
|
-
url.searchParams.set("credential", args.credential);
|
|
172
|
-
url.searchParams.set("challenge", args.challenge);
|
|
160
|
+
{
|
|
161
|
+
url.searchParams.set("connectionID", this.connectionID);
|
|
162
|
+
url.searchParams.set("clientID", this.config.clientID);
|
|
163
|
+
url.searchParams.set("id", args.id.toString());
|
|
164
|
+
url.searchParams.set("to", args.to);
|
|
165
|
+
url.searchParams.set("amount", args.amount.toString());
|
|
166
|
+
}
|
|
173
167
|
|
|
174
168
|
this.openWindow(url);
|
|
175
169
|
});
|
|
@@ -195,10 +189,6 @@ export class UnWallet {
|
|
|
195
189
|
this.resolve!(msg.value);
|
|
196
190
|
break;
|
|
197
191
|
|
|
198
|
-
case "presentation":
|
|
199
|
-
this.resolve!(msg.value);
|
|
200
|
-
break;
|
|
201
|
-
|
|
202
192
|
case "error":
|
|
203
193
|
switch (msg.value) {
|
|
204
194
|
case "rejected":
|
|
@@ -211,7 +201,7 @@ export class UnWallet {
|
|
|
211
201
|
break;
|
|
212
202
|
|
|
213
203
|
default:
|
|
214
|
-
throw new Error(`
|
|
204
|
+
throw new Error(`unexpected message type: ${msg.type}`);
|
|
215
205
|
}
|
|
216
206
|
|
|
217
207
|
this.initPromiseArgs();
|