@welshman/signer 0.0.11 → 0.0.12
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.
|
@@ -10,7 +10,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
11
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
12
|
};
|
|
13
|
-
var _Nip46Broker_signer, _Nip46Broker_handler, _Nip46Broker_algorithm, _Nip46Broker_closed, _Nip46Broker_processing,
|
|
13
|
+
var _Nip46Broker_signer, _Nip46Broker_handler, _Nip46Broker_algorithm, _Nip46Broker_closed, _Nip46Broker_processing, _Nip46Broker_connectResponse, _Nip46Broker_queue, _Nip46Broker_sub, _Nip46Broker_subscribe, _Nip46Broker_processQueue, _Nip46Broker_getResult, _Nip46Signer_pubkey;
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.Nip46Signer = exports.Nip46Broker = void 0;
|
|
16
16
|
const lib_1 = require("@welshman/lib");
|
|
@@ -20,6 +20,46 @@ const util_2 = require("../util.cjs");
|
|
|
20
20
|
const nip01_1 = require("./nip01.cjs");
|
|
21
21
|
let singleton;
|
|
22
22
|
class Nip46Broker extends lib_1.Emitter {
|
|
23
|
+
static initiate({ url, name, image, perms, relays, abortController }) {
|
|
24
|
+
const secret = Math.random().toString(36).substring(7);
|
|
25
|
+
const clientSecret = (0, util_2.makeSecret)();
|
|
26
|
+
const clientPubkey = (0, util_2.getPubkey)(clientSecret);
|
|
27
|
+
const clientSigner = new nip01_1.Nip01Signer(clientSecret);
|
|
28
|
+
const params = new URLSearchParams({ secret, url, name, image, perms });
|
|
29
|
+
for (const relay of relays) {
|
|
30
|
+
params.append('relay', relay);
|
|
31
|
+
}
|
|
32
|
+
const result = new Promise(resolve => {
|
|
33
|
+
const complete = (pubkey) => {
|
|
34
|
+
sub.close();
|
|
35
|
+
resolve(pubkey);
|
|
36
|
+
};
|
|
37
|
+
const sub = (0, net_1.subscribe)({
|
|
38
|
+
relays,
|
|
39
|
+
filters: [{ kinds: [util_1.NOSTR_CONNECT], "#p": [clientPubkey] }],
|
|
40
|
+
onEvent: async ({ pubkey, content }) => {
|
|
41
|
+
const response = await (0, lib_1.tryCatch)(async () => JSON.parse(await (0, util_2.decrypt)(clientSigner, pubkey, content)));
|
|
42
|
+
if ((response === null || response === void 0 ? void 0 : response.result) === secret) {
|
|
43
|
+
complete(pubkey);
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
abortController === null || abortController === void 0 ? void 0 : abortController.signal.addEventListener('abort', () => complete());
|
|
48
|
+
});
|
|
49
|
+
return {
|
|
50
|
+
result,
|
|
51
|
+
params,
|
|
52
|
+
clientSecret,
|
|
53
|
+
clientPubkey,
|
|
54
|
+
getLink: (template) => {
|
|
55
|
+
const temp = (0, lib_1.normalizeUrl)(template);
|
|
56
|
+
const uri = `nostrconnect://${clientPubkey}?${params.toString()}`;
|
|
57
|
+
return temp.includes('<nostrconnect>')
|
|
58
|
+
? temp.replace('<nostrconnect>', uri)
|
|
59
|
+
: new URL(temp).origin + '/' + uri;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
}
|
|
23
63
|
static parseBunkerLink(link) {
|
|
24
64
|
let token = "";
|
|
25
65
|
let pubkey = "";
|
|
@@ -50,7 +90,7 @@ class Nip46Broker extends lib_1.Emitter {
|
|
|
50
90
|
_Nip46Broker_algorithm.set(this, void 0);
|
|
51
91
|
_Nip46Broker_closed.set(this, false);
|
|
52
92
|
_Nip46Broker_processing.set(this, false);
|
|
53
|
-
|
|
93
|
+
_Nip46Broker_connectResponse.set(this, void 0);
|
|
54
94
|
_Nip46Broker_queue.set(this, []);
|
|
55
95
|
_Nip46Broker_sub.set(this, void 0);
|
|
56
96
|
_Nip46Broker_subscribe.set(this, async () => {
|
|
@@ -61,21 +101,21 @@ class Nip46Broker extends lib_1.Emitter {
|
|
|
61
101
|
}
|
|
62
102
|
__classPrivateFieldSet(this, _Nip46Broker_sub, (0, net_1.subscribe)({
|
|
63
103
|
relays: __classPrivateFieldGet(this, _Nip46Broker_handler, "f").relays,
|
|
64
|
-
filters: [{
|
|
104
|
+
filters: [{ kinds: [util_1.NOSTR_CONNECT], "#p": [pubkey] }],
|
|
65
105
|
}), "f");
|
|
66
|
-
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on(
|
|
67
|
-
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on(
|
|
68
|
-
const json = await (0, util_2.decrypt)(__classPrivateFieldGet(this, _Nip46Broker_signer, "f"),
|
|
69
|
-
const
|
|
70
|
-
if (!
|
|
106
|
+
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on(net_1.SubscriptionEvent.Send, resolve);
|
|
107
|
+
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on(net_1.SubscriptionEvent.Event, async (url, event) => {
|
|
108
|
+
const json = await (0, util_2.decrypt)(__classPrivateFieldGet(this, _Nip46Broker_signer, "f"), event.pubkey, event.content);
|
|
109
|
+
const response = (0, lib_1.tryCatch)(() => JSON.parse(json));
|
|
110
|
+
if (!response.id) {
|
|
71
111
|
console.error(`Invalid nostr-connect response: ${json}`);
|
|
72
112
|
}
|
|
73
|
-
console.log('nip46 response:',
|
|
74
|
-
if (
|
|
75
|
-
this.emit(`auth-${
|
|
113
|
+
console.log('nip46 response:', response);
|
|
114
|
+
if (response.result === "auth_url") {
|
|
115
|
+
this.emit(`auth-${response.id}`, { ...response, url, event });
|
|
76
116
|
}
|
|
77
117
|
else {
|
|
78
|
-
this.emit(`res-${
|
|
118
|
+
this.emit(`res-${response.id}`, { ...response, url, event });
|
|
79
119
|
}
|
|
80
120
|
});
|
|
81
121
|
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on("complete", () => {
|
|
@@ -91,20 +131,19 @@ class Nip46Broker extends lib_1.Emitter {
|
|
|
91
131
|
try {
|
|
92
132
|
while (__classPrivateFieldGet(this, _Nip46Broker_queue, "f").length > 0) {
|
|
93
133
|
const [{ method, params, resolve }] = __classPrivateFieldGet(this, _Nip46Broker_queue, "f").splice(0, 1);
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
// important user actions
|
|
98
|
-
await Promise.race([
|
|
99
|
-
this.request(method, params).then(resolve),
|
|
100
|
-
(0, lib_1.sleep)(15),
|
|
101
|
-
]);
|
|
134
|
+
this.request(method, params).then(resolve, error => {
|
|
135
|
+
console.error(`Failed to send nip46 request`, { method, params, error });
|
|
136
|
+
});
|
|
102
137
|
}
|
|
103
138
|
}
|
|
104
139
|
finally {
|
|
105
140
|
__classPrivateFieldSet(this, _Nip46Broker_processing, false, "f");
|
|
106
141
|
}
|
|
107
142
|
});
|
|
143
|
+
_Nip46Broker_getResult.set(this, async (promise) => {
|
|
144
|
+
const { result } = await promise;
|
|
145
|
+
return result;
|
|
146
|
+
});
|
|
108
147
|
this.request = async (method, params) => {
|
|
109
148
|
if (__classPrivateFieldGet(this, _Nip46Broker_closed, "f")) {
|
|
110
149
|
throw new Error("Attempted to make a nip46 request with a closed broker");
|
|
@@ -122,16 +161,16 @@ class Nip46Broker extends lib_1.Emitter {
|
|
|
122
161
|
relays: __classPrivateFieldGet(this, _Nip46Broker_handler, "f").relays,
|
|
123
162
|
event: await __classPrivateFieldGet(this, _Nip46Broker_signer, "f").sign(template),
|
|
124
163
|
});
|
|
125
|
-
this.once(`auth-${id}`,
|
|
126
|
-
window.open(
|
|
164
|
+
this.once(`auth-${id}`, response => {
|
|
165
|
+
window.open(response.error, "", "width=600,height=800,popup=yes");
|
|
127
166
|
});
|
|
128
167
|
return new Promise((resolve, reject) => {
|
|
129
|
-
this.once(`res-${id}`, (
|
|
130
|
-
if (error) {
|
|
131
|
-
reject(
|
|
168
|
+
this.once(`res-${id}`, (response) => {
|
|
169
|
+
if (response.error) {
|
|
170
|
+
reject(response);
|
|
132
171
|
}
|
|
133
172
|
else {
|
|
134
|
-
resolve(
|
|
173
|
+
resolve(response);
|
|
135
174
|
}
|
|
136
175
|
});
|
|
137
176
|
});
|
|
@@ -144,31 +183,21 @@ class Nip46Broker extends lib_1.Emitter {
|
|
|
144
183
|
if (!__classPrivateFieldGet(this, _Nip46Broker_handler, "f").domain) {
|
|
145
184
|
throw new Error("Unable to create an account without a handler domain");
|
|
146
185
|
}
|
|
147
|
-
return this.enqueue("create_account", [username, __classPrivateFieldGet(this, _Nip46Broker_handler, "f").domain, "", perms]);
|
|
186
|
+
return __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("create_account", [username, __classPrivateFieldGet(this, _Nip46Broker_handler, "f").domain, "", perms]));
|
|
148
187
|
};
|
|
149
|
-
this.connect = async (token = "", perms = "") => {
|
|
150
|
-
if (!__classPrivateFieldGet(this,
|
|
188
|
+
this.connect = async (token = "", perms = "", secret = "") => {
|
|
189
|
+
if (!__classPrivateFieldGet(this, _Nip46Broker_connectResponse, "f")) {
|
|
151
190
|
const params = ["", token, perms];
|
|
152
|
-
__classPrivateFieldSet(this,
|
|
191
|
+
__classPrivateFieldSet(this, _Nip46Broker_connectResponse, await this.enqueue("connect", params), "f");
|
|
153
192
|
}
|
|
154
|
-
return __classPrivateFieldGet(this,
|
|
155
|
-
};
|
|
156
|
-
this.getPublicKey = () => this.enqueue("get_public_key", []);
|
|
157
|
-
this.signEvent = async (event) => {
|
|
158
|
-
return JSON.parse(await this.enqueue("sign_event", [JSON.stringify(event)]));
|
|
159
|
-
};
|
|
160
|
-
this.nip04Encrypt = (pk, message) => {
|
|
161
|
-
return this.enqueue("nip04_encrypt", [pk, message]);
|
|
162
|
-
};
|
|
163
|
-
this.nip04Decrypt = (pk, message) => {
|
|
164
|
-
return this.enqueue("nip04_decrypt", [pk, message]);
|
|
165
|
-
};
|
|
166
|
-
this.nip44Encrypt = (pk, message) => {
|
|
167
|
-
return this.enqueue("nip44_encrypt", [pk, message]);
|
|
168
|
-
};
|
|
169
|
-
this.nip44Decrypt = (pk, message) => {
|
|
170
|
-
return this.enqueue("nip44_decrypt", [pk, message]);
|
|
193
|
+
return __classPrivateFieldGet(this, _Nip46Broker_connectResponse, "f").result === 'ack';
|
|
171
194
|
};
|
|
195
|
+
this.getPublicKey = () => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("get_public_key", []));
|
|
196
|
+
this.signEvent = async (event) => JSON.parse(await __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("sign_event", [JSON.stringify(event)])));
|
|
197
|
+
this.nip04Encrypt = (pk, message) => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("nip04_encrypt", [pk, message]));
|
|
198
|
+
this.nip04Decrypt = (pk, message) => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("nip04_decrypt", [pk, message]));
|
|
199
|
+
this.nip44Encrypt = (pk, message) => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("nip44_encrypt", [pk, message]));
|
|
200
|
+
this.nip44Decrypt = (pk, message) => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("nip44_decrypt", [pk, message]));
|
|
172
201
|
this.teardown = () => {
|
|
173
202
|
var _a;
|
|
174
203
|
__classPrivateFieldSet(this, _Nip46Broker_closed, true, "f");
|
|
@@ -183,7 +212,7 @@ class Nip46Broker extends lib_1.Emitter {
|
|
|
183
212
|
}
|
|
184
213
|
}
|
|
185
214
|
exports.Nip46Broker = Nip46Broker;
|
|
186
|
-
_Nip46Broker_signer = new WeakMap(), _Nip46Broker_handler = new WeakMap(), _Nip46Broker_algorithm = new WeakMap(), _Nip46Broker_closed = new WeakMap(), _Nip46Broker_processing = new WeakMap(),
|
|
215
|
+
_Nip46Broker_signer = new WeakMap(), _Nip46Broker_handler = new WeakMap(), _Nip46Broker_algorithm = new WeakMap(), _Nip46Broker_closed = new WeakMap(), _Nip46Broker_processing = new WeakMap(), _Nip46Broker_connectResponse = new WeakMap(), _Nip46Broker_queue = new WeakMap(), _Nip46Broker_sub = new WeakMap(), _Nip46Broker_subscribe = new WeakMap(), _Nip46Broker_processQueue = new WeakMap(), _Nip46Broker_getResult = new WeakMap();
|
|
187
216
|
class Nip46Signer {
|
|
188
217
|
constructor(broker) {
|
|
189
218
|
this.broker = broker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nip46.cjs","sourceRoot":"","sources":["../../../src/signers/nip46.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"nip46.cjs","sourceRoot":"","sources":["../../../src/signers/nip46.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Emitter } from "@welshman/lib";
|
|
2
|
-
import { StampedEvent } from "@welshman/util";
|
|
2
|
+
import { TrustedEvent, StampedEvent } from "@welshman/util";
|
|
3
3
|
import { ISigner } from '../util';
|
|
4
4
|
export type Nip46Algorithm = "nip04" | "nip44";
|
|
5
5
|
export type Nip46Handler = {
|
|
@@ -7,19 +7,53 @@ export type Nip46Handler = {
|
|
|
7
7
|
pubkey: string;
|
|
8
8
|
domain?: string;
|
|
9
9
|
};
|
|
10
|
+
export type Nip46InitiateParams = {
|
|
11
|
+
url: string;
|
|
12
|
+
name: string;
|
|
13
|
+
image: string;
|
|
14
|
+
perms: string;
|
|
15
|
+
relays: string[];
|
|
16
|
+
abortController?: AbortController;
|
|
17
|
+
};
|
|
10
18
|
export type Nip46BrokerParams = {
|
|
11
19
|
secret: string;
|
|
12
20
|
handler: Nip46Handler;
|
|
13
21
|
algorithm?: Nip46Algorithm;
|
|
14
22
|
};
|
|
23
|
+
export type Nip46Request = {
|
|
24
|
+
method: string;
|
|
25
|
+
params: string[];
|
|
26
|
+
resolve: (result: Nip46ResponseWithResult) => void;
|
|
27
|
+
};
|
|
15
28
|
export type Nip46Response = {
|
|
16
29
|
id: string;
|
|
30
|
+
url: string;
|
|
31
|
+
event: TrustedEvent;
|
|
17
32
|
error?: string;
|
|
18
33
|
result?: string;
|
|
19
34
|
};
|
|
35
|
+
export type Nip46ResponseWithResult = {
|
|
36
|
+
id: string;
|
|
37
|
+
url: string;
|
|
38
|
+
event: TrustedEvent;
|
|
39
|
+
result: string;
|
|
40
|
+
};
|
|
41
|
+
export type Nip46ResponseWithError = {
|
|
42
|
+
id: string;
|
|
43
|
+
url: string;
|
|
44
|
+
event: TrustedEvent;
|
|
45
|
+
error: string;
|
|
46
|
+
};
|
|
20
47
|
export declare class Nip46Broker extends Emitter {
|
|
21
48
|
#private;
|
|
22
49
|
private params;
|
|
50
|
+
static initiate({ url, name, image, perms, relays, abortController }: Nip46InitiateParams): {
|
|
51
|
+
result: Promise<string | undefined>;
|
|
52
|
+
params: URLSearchParams;
|
|
53
|
+
clientSecret: string;
|
|
54
|
+
clientPubkey: string;
|
|
55
|
+
getLink: (template: string) => string;
|
|
56
|
+
};
|
|
23
57
|
static parseBunkerLink(link: string): {
|
|
24
58
|
token: string;
|
|
25
59
|
pubkey: string;
|
|
@@ -28,10 +62,10 @@ export declare class Nip46Broker extends Emitter {
|
|
|
28
62
|
static get(params: Nip46BrokerParams): Nip46Broker;
|
|
29
63
|
constructor(params: Nip46BrokerParams);
|
|
30
64
|
hasParams(params: Nip46BrokerParams): boolean;
|
|
31
|
-
request: (method: string, params: string[]) => Promise<
|
|
32
|
-
enqueue: (method: string, params: string[]) => Promise<
|
|
65
|
+
request: (method: string, params: string[]) => Promise<Nip46ResponseWithResult>;
|
|
66
|
+
enqueue: (method: string, params: string[]) => Promise<Nip46ResponseWithResult>;
|
|
33
67
|
createAccount: (username: string, perms?: string) => Promise<string>;
|
|
34
|
-
connect: (token?: string, perms?: string) => Promise<boolean>;
|
|
68
|
+
connect: (token?: string, perms?: string, secret?: string) => Promise<boolean>;
|
|
35
69
|
getPublicKey: () => Promise<string>;
|
|
36
70
|
signEvent: (event: StampedEvent) => Promise<any>;
|
|
37
71
|
nip04Encrypt: (pk: string, message: string) => Promise<string>;
|
|
@@ -9,14 +9,54 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
9
9
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
|
-
var _Nip46Broker_signer, _Nip46Broker_handler, _Nip46Broker_algorithm, _Nip46Broker_closed, _Nip46Broker_processing,
|
|
13
|
-
import { Emitter,
|
|
12
|
+
var _Nip46Broker_signer, _Nip46Broker_handler, _Nip46Broker_algorithm, _Nip46Broker_closed, _Nip46Broker_processing, _Nip46Broker_connectResponse, _Nip46Broker_queue, _Nip46Broker_sub, _Nip46Broker_subscribe, _Nip46Broker_processQueue, _Nip46Broker_getResult, _Nip46Signer_pubkey;
|
|
13
|
+
import { Emitter, normalizeUrl, tryCatch, randomId, equals } from "@welshman/lib";
|
|
14
14
|
import { createEvent, NOSTR_CONNECT } from "@welshman/util";
|
|
15
|
-
import { subscribe, publish } from "@welshman/net";
|
|
16
|
-
import { decrypt, hash, own } from "../util.mjs";
|
|
15
|
+
import { subscribe, publish, SubscriptionEvent } from "@welshman/net";
|
|
16
|
+
import { decrypt, hash, own, makeSecret, getPubkey } from "../util.mjs";
|
|
17
17
|
import { Nip01Signer } from "./nip01.mjs";
|
|
18
18
|
let singleton;
|
|
19
19
|
export class Nip46Broker extends Emitter {
|
|
20
|
+
static initiate({ url, name, image, perms, relays, abortController }) {
|
|
21
|
+
const secret = Math.random().toString(36).substring(7);
|
|
22
|
+
const clientSecret = makeSecret();
|
|
23
|
+
const clientPubkey = getPubkey(clientSecret);
|
|
24
|
+
const clientSigner = new Nip01Signer(clientSecret);
|
|
25
|
+
const params = new URLSearchParams({ secret, url, name, image, perms });
|
|
26
|
+
for (const relay of relays) {
|
|
27
|
+
params.append('relay', relay);
|
|
28
|
+
}
|
|
29
|
+
const result = new Promise(resolve => {
|
|
30
|
+
const complete = (pubkey) => {
|
|
31
|
+
sub.close();
|
|
32
|
+
resolve(pubkey);
|
|
33
|
+
};
|
|
34
|
+
const sub = subscribe({
|
|
35
|
+
relays,
|
|
36
|
+
filters: [{ kinds: [NOSTR_CONNECT], "#p": [clientPubkey] }],
|
|
37
|
+
onEvent: async ({ pubkey, content }) => {
|
|
38
|
+
const response = await tryCatch(async () => JSON.parse(await decrypt(clientSigner, pubkey, content)));
|
|
39
|
+
if ((response === null || response === void 0 ? void 0 : response.result) === secret) {
|
|
40
|
+
complete(pubkey);
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
abortController === null || abortController === void 0 ? void 0 : abortController.signal.addEventListener('abort', () => complete());
|
|
45
|
+
});
|
|
46
|
+
return {
|
|
47
|
+
result,
|
|
48
|
+
params,
|
|
49
|
+
clientSecret,
|
|
50
|
+
clientPubkey,
|
|
51
|
+
getLink: (template) => {
|
|
52
|
+
const temp = normalizeUrl(template);
|
|
53
|
+
const uri = `nostrconnect://${clientPubkey}?${params.toString()}`;
|
|
54
|
+
return temp.includes('<nostrconnect>')
|
|
55
|
+
? temp.replace('<nostrconnect>', uri)
|
|
56
|
+
: new URL(temp).origin + '/' + uri;
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
}
|
|
20
60
|
static parseBunkerLink(link) {
|
|
21
61
|
let token = "";
|
|
22
62
|
let pubkey = "";
|
|
@@ -47,7 +87,7 @@ export class Nip46Broker extends Emitter {
|
|
|
47
87
|
_Nip46Broker_algorithm.set(this, void 0);
|
|
48
88
|
_Nip46Broker_closed.set(this, false);
|
|
49
89
|
_Nip46Broker_processing.set(this, false);
|
|
50
|
-
|
|
90
|
+
_Nip46Broker_connectResponse.set(this, void 0);
|
|
51
91
|
_Nip46Broker_queue.set(this, []);
|
|
52
92
|
_Nip46Broker_sub.set(this, void 0);
|
|
53
93
|
_Nip46Broker_subscribe.set(this, async () => {
|
|
@@ -58,21 +98,21 @@ export class Nip46Broker extends Emitter {
|
|
|
58
98
|
}
|
|
59
99
|
__classPrivateFieldSet(this, _Nip46Broker_sub, subscribe({
|
|
60
100
|
relays: __classPrivateFieldGet(this, _Nip46Broker_handler, "f").relays,
|
|
61
|
-
filters: [{
|
|
101
|
+
filters: [{ kinds: [NOSTR_CONNECT], "#p": [pubkey] }],
|
|
62
102
|
}), "f");
|
|
63
|
-
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on(
|
|
64
|
-
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on(
|
|
65
|
-
const json = await decrypt(__classPrivateFieldGet(this, _Nip46Broker_signer, "f"),
|
|
66
|
-
const
|
|
67
|
-
if (!
|
|
103
|
+
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on(SubscriptionEvent.Send, resolve);
|
|
104
|
+
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on(SubscriptionEvent.Event, async (url, event) => {
|
|
105
|
+
const json = await decrypt(__classPrivateFieldGet(this, _Nip46Broker_signer, "f"), event.pubkey, event.content);
|
|
106
|
+
const response = tryCatch(() => JSON.parse(json));
|
|
107
|
+
if (!response.id) {
|
|
68
108
|
console.error(`Invalid nostr-connect response: ${json}`);
|
|
69
109
|
}
|
|
70
|
-
console.log('nip46 response:',
|
|
71
|
-
if (
|
|
72
|
-
this.emit(`auth-${
|
|
110
|
+
console.log('nip46 response:', response);
|
|
111
|
+
if (response.result === "auth_url") {
|
|
112
|
+
this.emit(`auth-${response.id}`, { ...response, url, event });
|
|
73
113
|
}
|
|
74
114
|
else {
|
|
75
|
-
this.emit(`res-${
|
|
115
|
+
this.emit(`res-${response.id}`, { ...response, url, event });
|
|
76
116
|
}
|
|
77
117
|
});
|
|
78
118
|
__classPrivateFieldGet(this, _Nip46Broker_sub, "f").emitter.on("complete", () => {
|
|
@@ -88,20 +128,19 @@ export class Nip46Broker extends Emitter {
|
|
|
88
128
|
try {
|
|
89
129
|
while (__classPrivateFieldGet(this, _Nip46Broker_queue, "f").length > 0) {
|
|
90
130
|
const [{ method, params, resolve }] = __classPrivateFieldGet(this, _Nip46Broker_queue, "f").splice(0, 1);
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
// important user actions
|
|
95
|
-
await Promise.race([
|
|
96
|
-
this.request(method, params).then(resolve),
|
|
97
|
-
sleep(15),
|
|
98
|
-
]);
|
|
131
|
+
this.request(method, params).then(resolve, error => {
|
|
132
|
+
console.error(`Failed to send nip46 request`, { method, params, error });
|
|
133
|
+
});
|
|
99
134
|
}
|
|
100
135
|
}
|
|
101
136
|
finally {
|
|
102
137
|
__classPrivateFieldSet(this, _Nip46Broker_processing, false, "f");
|
|
103
138
|
}
|
|
104
139
|
});
|
|
140
|
+
_Nip46Broker_getResult.set(this, async (promise) => {
|
|
141
|
+
const { result } = await promise;
|
|
142
|
+
return result;
|
|
143
|
+
});
|
|
105
144
|
this.request = async (method, params) => {
|
|
106
145
|
if (__classPrivateFieldGet(this, _Nip46Broker_closed, "f")) {
|
|
107
146
|
throw new Error("Attempted to make a nip46 request with a closed broker");
|
|
@@ -119,16 +158,16 @@ export class Nip46Broker extends Emitter {
|
|
|
119
158
|
relays: __classPrivateFieldGet(this, _Nip46Broker_handler, "f").relays,
|
|
120
159
|
event: await __classPrivateFieldGet(this, _Nip46Broker_signer, "f").sign(template),
|
|
121
160
|
});
|
|
122
|
-
this.once(`auth-${id}`,
|
|
123
|
-
window.open(
|
|
161
|
+
this.once(`auth-${id}`, response => {
|
|
162
|
+
window.open(response.error, "", "width=600,height=800,popup=yes");
|
|
124
163
|
});
|
|
125
164
|
return new Promise((resolve, reject) => {
|
|
126
|
-
this.once(`res-${id}`, (
|
|
127
|
-
if (error) {
|
|
128
|
-
reject(
|
|
165
|
+
this.once(`res-${id}`, (response) => {
|
|
166
|
+
if (response.error) {
|
|
167
|
+
reject(response);
|
|
129
168
|
}
|
|
130
169
|
else {
|
|
131
|
-
resolve(
|
|
170
|
+
resolve(response);
|
|
132
171
|
}
|
|
133
172
|
});
|
|
134
173
|
});
|
|
@@ -141,31 +180,21 @@ export class Nip46Broker extends Emitter {
|
|
|
141
180
|
if (!__classPrivateFieldGet(this, _Nip46Broker_handler, "f").domain) {
|
|
142
181
|
throw new Error("Unable to create an account without a handler domain");
|
|
143
182
|
}
|
|
144
|
-
return this.enqueue("create_account", [username, __classPrivateFieldGet(this, _Nip46Broker_handler, "f").domain, "", perms]);
|
|
183
|
+
return __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("create_account", [username, __classPrivateFieldGet(this, _Nip46Broker_handler, "f").domain, "", perms]));
|
|
145
184
|
};
|
|
146
|
-
this.connect = async (token = "", perms = "") => {
|
|
147
|
-
if (!__classPrivateFieldGet(this,
|
|
185
|
+
this.connect = async (token = "", perms = "", secret = "") => {
|
|
186
|
+
if (!__classPrivateFieldGet(this, _Nip46Broker_connectResponse, "f")) {
|
|
148
187
|
const params = ["", token, perms];
|
|
149
|
-
__classPrivateFieldSet(this,
|
|
188
|
+
__classPrivateFieldSet(this, _Nip46Broker_connectResponse, await this.enqueue("connect", params), "f");
|
|
150
189
|
}
|
|
151
|
-
return __classPrivateFieldGet(this,
|
|
152
|
-
};
|
|
153
|
-
this.getPublicKey = () => this.enqueue("get_public_key", []);
|
|
154
|
-
this.signEvent = async (event) => {
|
|
155
|
-
return JSON.parse(await this.enqueue("sign_event", [JSON.stringify(event)]));
|
|
156
|
-
};
|
|
157
|
-
this.nip04Encrypt = (pk, message) => {
|
|
158
|
-
return this.enqueue("nip04_encrypt", [pk, message]);
|
|
159
|
-
};
|
|
160
|
-
this.nip04Decrypt = (pk, message) => {
|
|
161
|
-
return this.enqueue("nip04_decrypt", [pk, message]);
|
|
162
|
-
};
|
|
163
|
-
this.nip44Encrypt = (pk, message) => {
|
|
164
|
-
return this.enqueue("nip44_encrypt", [pk, message]);
|
|
165
|
-
};
|
|
166
|
-
this.nip44Decrypt = (pk, message) => {
|
|
167
|
-
return this.enqueue("nip44_decrypt", [pk, message]);
|
|
190
|
+
return __classPrivateFieldGet(this, _Nip46Broker_connectResponse, "f").result === 'ack';
|
|
168
191
|
};
|
|
192
|
+
this.getPublicKey = () => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("get_public_key", []));
|
|
193
|
+
this.signEvent = async (event) => JSON.parse(await __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("sign_event", [JSON.stringify(event)])));
|
|
194
|
+
this.nip04Encrypt = (pk, message) => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("nip04_encrypt", [pk, message]));
|
|
195
|
+
this.nip04Decrypt = (pk, message) => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("nip04_decrypt", [pk, message]));
|
|
196
|
+
this.nip44Encrypt = (pk, message) => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("nip44_encrypt", [pk, message]));
|
|
197
|
+
this.nip44Decrypt = (pk, message) => __classPrivateFieldGet(this, _Nip46Broker_getResult, "f").call(this, this.enqueue("nip44_decrypt", [pk, message]));
|
|
169
198
|
this.teardown = () => {
|
|
170
199
|
var _a;
|
|
171
200
|
__classPrivateFieldSet(this, _Nip46Broker_closed, true, "f");
|
|
@@ -179,7 +208,7 @@ export class Nip46Broker extends Emitter {
|
|
|
179
208
|
return equals(this.params, params);
|
|
180
209
|
}
|
|
181
210
|
}
|
|
182
|
-
_Nip46Broker_signer = new WeakMap(), _Nip46Broker_handler = new WeakMap(), _Nip46Broker_algorithm = new WeakMap(), _Nip46Broker_closed = new WeakMap(), _Nip46Broker_processing = new WeakMap(),
|
|
211
|
+
_Nip46Broker_signer = new WeakMap(), _Nip46Broker_handler = new WeakMap(), _Nip46Broker_algorithm = new WeakMap(), _Nip46Broker_closed = new WeakMap(), _Nip46Broker_processing = new WeakMap(), _Nip46Broker_connectResponse = new WeakMap(), _Nip46Broker_queue = new WeakMap(), _Nip46Broker_sub = new WeakMap(), _Nip46Broker_subscribe = new WeakMap(), _Nip46Broker_processQueue = new WeakMap(), _Nip46Broker_getResult = new WeakMap();
|
|
183
212
|
export class Nip46Signer {
|
|
184
213
|
constructor(broker) {
|
|
185
214
|
this.broker = broker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nip46.mjs","sourceRoot":"","sources":["../../../src/signers/nip46.ts"],"names":[],"mappings":";;;;;;;;;;;;OAAO,EAAC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"nip46.mjs","sourceRoot":"","sources":["../../../src/signers/nip46.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@welshman/signer",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.12",
|
|
4
4
|
"author": "hodlbod",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "A nostr signer implemenation supporting several login methods.",
|
|
@@ -31,9 +31,9 @@
|
|
|
31
31
|
"typescript": "~5.1.6"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@welshman/lib": "~0.0.
|
|
35
|
-
"@welshman/net": "~0.0.
|
|
36
|
-
"@welshman/util": "~0.0.
|
|
34
|
+
"@welshman/lib": "~0.0.24",
|
|
35
|
+
"@welshman/net": "~0.0.34",
|
|
36
|
+
"@welshman/util": "~0.0.45",
|
|
37
37
|
"nostr-tools": "^2.7.2"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|