@subwallet/extension-base 0.3.6-0 → 0.3.6-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/{build/background → background}/KoniTypes.d.ts +0 -0
- package/{build/background → background}/KoniTypes.js +0 -0
- package/{build/background → background}/RequestBytesSign.d.ts +0 -0
- package/{build/background → background}/RequestBytesSign.js +0 -0
- package/{build/background → background}/RequestExtrinsicSign.d.ts +0 -0
- package/{build/background → background}/RequestExtrinsicSign.js +0 -0
- package/{build/background → background}/handlers/Extension.d.ts +0 -0
- package/{build/background → background}/handlers/Extension.js +0 -0
- package/{build/background → background}/handlers/State.d.ts +0 -0
- package/{build/background → background}/handlers/State.js +0 -0
- package/{build/background → background}/handlers/Tabs.d.ts +0 -0
- package/{build/background → background}/handlers/Tabs.js +0 -0
- package/{build/background → background}/handlers/helpers.d.ts +0 -0
- package/{build/background → background}/handlers/helpers.js +0 -0
- package/{build/background → background}/handlers/index.d.ts +0 -0
- package/{build/background → background}/handlers/index.js +0 -0
- package/{build/background → background}/handlers/subscriptions.d.ts +0 -0
- package/{build/background → background}/handlers/subscriptions.js +0 -0
- package/{build/background → background}/types.d.ts +0 -0
- package/{build/background → background}/types.js +0 -0
- package/{build/bundle.d.ts → bundle.d.ts} +0 -0
- package/{build/bundle.js → bundle.js} +0 -0
- package/{build-cjs → cjs}/background/KoniTypes.js +0 -0
- package/{build-cjs → cjs}/background/RequestBytesSign.js +0 -0
- package/{build-cjs → cjs}/background/RequestExtrinsicSign.js +0 -0
- package/{build-cjs → cjs}/background/handlers/Extension.js +0 -0
- package/{build-cjs → cjs}/background/handlers/State.js +0 -0
- package/{build-cjs → cjs}/background/handlers/Tabs.js +0 -0
- package/{build-cjs → cjs}/background/handlers/helpers.js +0 -0
- package/{build-cjs → cjs}/background/handlers/index.js +0 -0
- package/{build-cjs → cjs}/background/handlers/subscriptions.js +0 -0
- package/{build-cjs → cjs}/background/types.js +0 -0
- package/{build-cjs → cjs}/bundle.js +0 -0
- package/{build-cjs → cjs}/defaults.js +0 -0
- package/{build-cjs → cjs}/detectOther.js +0 -0
- package/{build-cjs → cjs}/detectPackage.js +0 -0
- package/{build-cjs → cjs}/index.js +0 -0
- package/{build/cjs → cjs}/package.json +0 -0
- package/{build-cjs → cjs}/packageInfo.js +0 -0
- package/{build-cjs → cjs}/page/Accounts.js +0 -0
- package/{build-cjs → cjs}/page/Injected.js +0 -0
- package/{build-cjs → cjs}/page/Metadata.js +0 -0
- package/{build-cjs → cjs}/page/PostMessageProvider.js +0 -0
- package/{build-cjs → cjs}/page/Signer.js +0 -0
- package/{build-cjs → cjs}/page/index.js +0 -0
- package/{build-cjs → cjs}/page/types.js +0 -0
- package/{build-cjs → cjs}/stores/Accounts.js +0 -0
- package/{build-cjs → cjs}/stores/Base.js +0 -0
- package/{build-cjs → cjs}/stores/Metadata.js +0 -0
- package/{build-cjs → cjs}/stores/index.js +0 -0
- package/{build-cjs → cjs}/types.js +0 -0
- package/{build-cjs → cjs}/utils/canDerive.js +0 -0
- package/{build-cjs → cjs}/utils/getId.js +0 -0
- package/{build-cjs → cjs}/utils/index.js +0 -0
- package/{build/defaults.d.ts → defaults.d.ts} +0 -0
- package/{build/defaults.js → defaults.js} +0 -0
- package/{build/detectOther.d.ts → detectOther.d.ts} +0 -0
- package/{build/detectOther.js → detectOther.js} +0 -0
- package/{build/detectPackage.d.ts → detectPackage.d.ts} +0 -0
- package/{build/detectPackage.js → detectPackage.js} +0 -0
- package/{build/index.d.ts → index.d.ts} +0 -0
- package/{build/index.js → index.js} +0 -0
- package/package.json +171 -7
- package/{build/packageInfo.d.ts → packageInfo.d.ts} +0 -0
- package/{build/packageInfo.js → packageInfo.js} +0 -0
- package/{build/page → page}/Accounts.d.ts +0 -0
- package/{build/page → page}/Accounts.js +0 -0
- package/{build/page → page}/Injected.d.ts +0 -0
- package/{build/page → page}/Injected.js +0 -0
- package/{build/page → page}/Metadata.d.ts +0 -0
- package/{build/page → page}/Metadata.js +0 -0
- package/{build/page → page}/PostMessageProvider.d.ts +0 -0
- package/{build/page → page}/PostMessageProvider.js +0 -0
- package/{build/page → page}/Signer.d.ts +0 -0
- package/{build/page → page}/Signer.js +0 -0
- package/{build/page → page}/index.d.ts +0 -0
- package/{build/page → page}/index.js +0 -0
- package/{build/page → page}/types.d.ts +0 -0
- package/{build/page → page}/types.js +0 -0
- package/{build/stores → stores}/Accounts.d.ts +0 -0
- package/{build/stores → stores}/Accounts.js +0 -0
- package/{build/stores → stores}/Base.d.ts +0 -0
- package/{build/stores → stores}/Base.js +0 -0
- package/{build/stores → stores}/Metadata.d.ts +0 -0
- package/{build/stores → stores}/Metadata.js +0 -0
- package/{build/stores → stores}/index.d.ts +0 -0
- package/{build/stores → stores}/index.js +0 -0
- package/{build/types.d.ts → types.d.ts} +0 -0
- package/{build/types.js → types.js} +0 -0
- package/{build/utils → utils}/canDerive.d.ts +0 -0
- package/{build/utils → utils}/canDerive.js +0 -0
- package/{build/utils → utils}/getId.d.ts +0 -0
- package/{build/utils → utils}/getId.js +0 -0
- package/{build/utils → utils}/index.d.ts +0 -0
- package/{build/utils → utils}/index.js +0 -0
- package/build/LICENSE +0 -201
- package/build/README.md +0 -10
- package/build/cjs/background/KoniTypes.js +0 -69
- package/build/cjs/background/RequestBytesSign.js +0 -27
- package/build/cjs/background/RequestExtrinsicSign.js +0 -23
- package/build/cjs/background/handlers/Extension.js +0 -764
- package/build/cjs/background/handlers/State.js +0 -472
- package/build/cjs/background/handlers/Tabs.js +0 -273
- package/build/cjs/background/handlers/helpers.js +0 -20
- package/build/cjs/background/handlers/index.js +0 -60
- package/build/cjs/background/handlers/subscriptions.js +0 -32
- package/build/cjs/background/types.js +0 -1
- package/build/cjs/bundle.js +0 -13
- package/build/cjs/defaults.js +0 -26
- package/build/cjs/detectOther.js +0 -17
- package/build/cjs/detectPackage.js +0 -14
- package/build/cjs/index.js +0 -18
- package/build/cjs/packageInfo.js +0 -16
- package/build/cjs/page/Accounts.js +0 -31
- package/build/cjs/page/Injected.js +0 -30
- package/build/cjs/page/Metadata.js +0 -27
- package/build/cjs/page/PostMessageProvider.js +0 -184
- package/build/cjs/page/Signer.js +0 -44
- package/build/cjs/page/index.js +0 -76
- package/build/cjs/page/types.js +0 -1
- package/build/cjs/stores/Accounts.js +0 -33
- package/build/cjs/stores/Base.js +0 -84
- package/build/cjs/stores/Metadata.js +0 -23
- package/build/cjs/stores/index.js +0 -23
- package/build/cjs/types.js +0 -1
- package/build/cjs/utils/canDerive.js +0 -12
- package/build/cjs/utils/getId.js +0 -16
- package/build/cjs/utils/index.js +0 -13
- package/build/package.json +0 -210
- package/src/background/KoniTypes.ts +0 -537
- package/src/background/RequestBytesSign.ts +0 -30
- package/src/background/RequestExtrinsicSign.ts +0 -23
- package/src/background/handlers/Extension.spec.ts +0 -456
- package/src/background/handlers/Extension.ts +0 -627
- package/src/background/handlers/State.ts +0 -513
- package/src/background/handlers/Tabs.ts +0 -223
- package/src/background/handlers/helpers.ts +0 -14
- package/src/background/handlers/index.ts +0 -49
- package/src/background/handlers/subscriptions.ts +0 -30
- package/src/background/types.ts +0 -437
- package/src/bundle.ts +0 -4
- package/src/defaults.ts +0 -24
- package/src/detectOther.ts +0 -8
- package/src/detectPackage.ts +0 -11
- package/src/index.ts +0 -7
- package/src/packageInfo.ts +0 -6
- package/src/page/Accounts.ts +0 -27
- package/src/page/Injected.ts +0 -27
- package/src/page/Metadata.ts +0 -22
- package/src/page/PostMessageProvider.ts +0 -178
- package/src/page/Signer.ts +0 -45
- package/src/page/index.ts +0 -87
- package/src/page/types.ts +0 -10
- package/src/stores/Accounts.ts +0 -24
- package/src/stores/Base.ts +0 -81
- package/src/stores/Metadata.ts +0 -13
- package/src/stores/index.ts +0 -5
- package/src/types.ts +0 -12
- package/src/utils/canDerive.ts +0 -8
- package/src/utils/getId.ts +0 -10
- package/src/utils/index.ts +0 -4
- package/tsconfig.build.json +0 -18
- package/tsconfig.build.tsbuildinfo +0 -1
- package/tsconfig.json +0 -14
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
|
|
10
|
-
var _eventemitter = _interopRequireDefault(require("eventemitter3"));
|
|
11
|
-
|
|
12
|
-
var _util = require("@polkadot/util");
|
|
13
|
-
|
|
14
|
-
// Copyright 2019-2022 @subwallet/extension-base authors & contributors
|
|
15
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
16
|
-
const l = (0, _util.logger)('PostMessageProvider');
|
|
17
|
-
// External to class, this.# is not private enough (yet)
|
|
18
|
-
let sendRequest;
|
|
19
|
-
/**
|
|
20
|
-
* @name PostMessageProvider
|
|
21
|
-
*
|
|
22
|
-
* @description Extension provider to be used by dapps
|
|
23
|
-
*/
|
|
24
|
-
|
|
25
|
-
class PostMessageProvider {
|
|
26
|
-
#eventemitter; // Whether or not the actual extension background provider is connected
|
|
27
|
-
|
|
28
|
-
#isConnected = false; // Subscription IDs are (historically) not guaranteed to be globally unique;
|
|
29
|
-
// only unique for a given subscription method; which is why we identify
|
|
30
|
-
// the subscriptions based on subscription id + type
|
|
31
|
-
|
|
32
|
-
#subscriptions = {}; // {[(type,subscriptionId)]: callback}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* @param {function} sendRequest The function to be called to send requests to the node
|
|
36
|
-
* @param {function} subscriptionNotificationHandler Channel for receiving subscription messages
|
|
37
|
-
*/
|
|
38
|
-
|
|
39
|
-
constructor(_sendRequest) {
|
|
40
|
-
this.#eventemitter = new _eventemitter.default();
|
|
41
|
-
sendRequest = _sendRequest;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* @description Returns a clone of the object
|
|
45
|
-
*/
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
clone() {
|
|
49
|
-
return new PostMessageProvider(sendRequest);
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* @description Manually disconnect from the connection, clearing autoconnect logic
|
|
53
|
-
*/
|
|
54
|
-
// eslint-disable-next-line @typescript-eslint/require-await
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
async connect() {
|
|
58
|
-
// FIXME This should see if the extension's state's provider can disconnect
|
|
59
|
-
console.error('PostMessageProvider.disconnect() is not implemented.');
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* @description Manually disconnect from the connection, clearing autoconnect logic
|
|
63
|
-
*/
|
|
64
|
-
// eslint-disable-next-line @typescript-eslint/require-await
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
async disconnect() {
|
|
68
|
-
// FIXME This should see if the extension's state's provider can disconnect
|
|
69
|
-
console.error('PostMessageProvider.disconnect() is not implemented.');
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* @summary `true` when this provider supports subscriptions
|
|
73
|
-
*/
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
get hasSubscriptions() {
|
|
77
|
-
// FIXME This should see if the extension's state's provider has subscriptions
|
|
78
|
-
return true;
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* @summary Whether the node is connected or not.
|
|
82
|
-
* @return {boolean} true if connected
|
|
83
|
-
*/
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
get isConnected() {
|
|
87
|
-
return this.#isConnected;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
listProviders() {
|
|
91
|
-
return sendRequest('pub(rpc.listProviders)', undefined);
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* @summary Listens on events after having subscribed using the [[subscribe]] function.
|
|
95
|
-
* @param {ProviderInterfaceEmitted} type Event
|
|
96
|
-
* @param {ProviderInterfaceEmitCb} sub Callback
|
|
97
|
-
* @return unsubscribe function
|
|
98
|
-
*/
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
on(type, sub) {
|
|
102
|
-
this.#eventemitter.on(type, sub);
|
|
103
|
-
return () => {
|
|
104
|
-
this.#eventemitter.removeListener(type, sub);
|
|
105
|
-
};
|
|
106
|
-
} // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
async send(method, params, _, subscription) {
|
|
110
|
-
if (subscription) {
|
|
111
|
-
const {
|
|
112
|
-
callback,
|
|
113
|
-
type
|
|
114
|
-
} = subscription;
|
|
115
|
-
const id = await sendRequest('pub(rpc.subscribe)', {
|
|
116
|
-
method,
|
|
117
|
-
params,
|
|
118
|
-
type
|
|
119
|
-
}, res => {
|
|
120
|
-
subscription.callback(null, res);
|
|
121
|
-
});
|
|
122
|
-
this.#subscriptions[`${type}::${id}`] = callback;
|
|
123
|
-
return id;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
return sendRequest('pub(rpc.send)', {
|
|
127
|
-
method,
|
|
128
|
-
params
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* @summary Spawn a provider on the extension background.
|
|
133
|
-
*/
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
async startProvider(key) {
|
|
137
|
-
// Disconnect from the previous provider
|
|
138
|
-
this.#isConnected = false;
|
|
139
|
-
this.#eventemitter.emit('disconnected');
|
|
140
|
-
const meta = await sendRequest('pub(rpc.startProvider)', key); // eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
141
|
-
|
|
142
|
-
sendRequest('pub(rpc.subscribeConnected)', null, connected => {
|
|
143
|
-
this.#isConnected = connected;
|
|
144
|
-
|
|
145
|
-
if (connected) {
|
|
146
|
-
this.#eventemitter.emit('connected');
|
|
147
|
-
} else {
|
|
148
|
-
this.#eventemitter.emit('disconnected');
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
return true;
|
|
152
|
-
});
|
|
153
|
-
return meta;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
subscribe(type, method, params, callback) {
|
|
157
|
-
return this.send(method, params, false, {
|
|
158
|
-
callback,
|
|
159
|
-
type
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* @summary Allows unsubscribing to subscriptions made with [[subscribe]].
|
|
164
|
-
*/
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
async unsubscribe(type, method, id) {
|
|
168
|
-
const subscription = `${type}::${id}`; // FIXME This now could happen with re-subscriptions. The issue is that with a re-sub
|
|
169
|
-
// the assigned id now does not match what the API user originally received. It has
|
|
170
|
-
// a slight complication in solving - since we cannot rely on the send id, but rather
|
|
171
|
-
// need to find the actual subscription id to map it
|
|
172
|
-
|
|
173
|
-
if ((0, _util.isUndefined)(this.#subscriptions[subscription])) {
|
|
174
|
-
l.debug(() => `Unable to find active subscription=${subscription}`);
|
|
175
|
-
return false;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
delete this.#subscriptions[subscription];
|
|
179
|
-
return this.send(method, [id]);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
exports.default = PostMessageProvider;
|
package/build/cjs/page/Signer.js
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
// Copyright 2019-2022 @subwallet/extension-base authors & contributors
|
|
8
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
9
|
-
// External to class, this.# is not private enough (yet)
|
|
10
|
-
let sendRequest;
|
|
11
|
-
let nextId = 0;
|
|
12
|
-
|
|
13
|
-
class Signer {
|
|
14
|
-
constructor(_sendRequest) {
|
|
15
|
-
sendRequest = _sendRequest;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
async signPayload(payload) {
|
|
19
|
-
const id = ++nextId;
|
|
20
|
-
const result = await sendRequest('pub(extrinsic.sign)', payload); // we add an internal id (number) - should have a mapping from the
|
|
21
|
-
// extension id (string) -> internal id (number) if we wish to provide
|
|
22
|
-
// updated via the update functionality (noop at this point)
|
|
23
|
-
|
|
24
|
-
return { ...result,
|
|
25
|
-
id
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
async signRaw(payload) {
|
|
30
|
-
const id = ++nextId;
|
|
31
|
-
const result = await sendRequest('pub(bytes.sign)', payload);
|
|
32
|
-
return { ...result,
|
|
33
|
-
id
|
|
34
|
-
};
|
|
35
|
-
} // NOTE We don't listen to updates at all, if we do we can interpret the
|
|
36
|
-
// resuklt as provided by the API here
|
|
37
|
-
// public update (id: number, status: Hash | SubmittableResult): void {
|
|
38
|
-
// // ignore
|
|
39
|
-
// }
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
exports.default = Signer;
|
package/build/cjs/page/index.js
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.enable = enable;
|
|
9
|
-
exports.handleResponse = handleResponse;
|
|
10
|
-
exports.redirectIfPhishing = redirectIfPhishing;
|
|
11
|
-
exports.sendMessage = sendMessage;
|
|
12
|
-
|
|
13
|
-
var _defaults = require("../defaults");
|
|
14
|
-
|
|
15
|
-
var _getId = require("../utils/getId");
|
|
16
|
-
|
|
17
|
-
var _Injected = _interopRequireDefault(require("./Injected"));
|
|
18
|
-
|
|
19
|
-
// Copyright 2019-2022 @subwallet/extension authors & contributors
|
|
20
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
21
|
-
const handlers = {}; // a generic message sender that creates an event, returning a promise that will
|
|
22
|
-
// resolve once the event is resolved (by the response listener just below this)
|
|
23
|
-
|
|
24
|
-
function sendMessage(message, request, subscriber) {
|
|
25
|
-
return new Promise((resolve, reject) => {
|
|
26
|
-
const id = (0, _getId.getId)();
|
|
27
|
-
handlers[id] = {
|
|
28
|
-
reject,
|
|
29
|
-
resolve,
|
|
30
|
-
subscriber
|
|
31
|
-
};
|
|
32
|
-
const transportRequestMessage = {
|
|
33
|
-
id,
|
|
34
|
-
message,
|
|
35
|
-
origin: _defaults.MESSAGE_ORIGIN_PAGE,
|
|
36
|
-
request: request || null
|
|
37
|
-
};
|
|
38
|
-
window.postMessage(transportRequestMessage, '*');
|
|
39
|
-
});
|
|
40
|
-
} // the enable function, called by the dapp to allow access
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
async function enable(origin) {
|
|
44
|
-
await sendMessage('pub(authorize.tabV2)', {
|
|
45
|
-
origin
|
|
46
|
-
});
|
|
47
|
-
return new _Injected.default(sendMessage);
|
|
48
|
-
} // redirect users if this page is considered as phishing, otherwise return false
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
async function redirectIfPhishing() {
|
|
52
|
-
const res = await sendMessage('pub(phishing.redirectIfDenied)');
|
|
53
|
-
return res;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
function handleResponse(data) {
|
|
57
|
-
const handler = handlers[data.id];
|
|
58
|
-
|
|
59
|
-
if (!handler) {
|
|
60
|
-
console.error(`Unknown response: ${JSON.stringify(data)}`);
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
if (!handler.subscriber) {
|
|
65
|
-
delete handlers[data.id];
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
if (data.subscription) {
|
|
69
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
70
|
-
handler.subscriber(data.subscription);
|
|
71
|
-
} else if (data.error) {
|
|
72
|
-
handler.reject(new Error(data.error));
|
|
73
|
-
} else {
|
|
74
|
-
handler.resolve(data.response);
|
|
75
|
-
}
|
|
76
|
-
}
|
package/build/cjs/page/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
|
|
10
|
-
var _defaults = require("../defaults");
|
|
11
|
-
|
|
12
|
-
var _Base = _interopRequireDefault(require("./Base"));
|
|
13
|
-
|
|
14
|
-
// Copyright 2019-2022 @subwallet/extension-base authors & contributors
|
|
15
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
16
|
-
class AccountsStore extends _Base.default {
|
|
17
|
-
constructor() {
|
|
18
|
-
super(_defaults.EXTENSION_PREFIX ? `${_defaults.EXTENSION_PREFIX}accounts` : null);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
set(key, value, update) {
|
|
22
|
-
// shortcut, don't save testing accounts in extension storage
|
|
23
|
-
if (key.startsWith('account:') && value.meta && value.meta.isTesting) {
|
|
24
|
-
update && update();
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
super.set(key, value, update);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
exports.default = AccountsStore;
|
package/build/cjs/stores/Base.js
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
// Copyright 2019-2022 @subwallet/extension-base authors & contributors
|
|
9
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
10
|
-
const lastError = type => {
|
|
11
|
-
const error = chrome.runtime.lastError;
|
|
12
|
-
|
|
13
|
-
if (error) {
|
|
14
|
-
console.error(`BaseStore.${type}:: runtime.lastError:`, error);
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
class BaseStore {
|
|
19
|
-
#prefix;
|
|
20
|
-
|
|
21
|
-
constructor(prefix) {
|
|
22
|
-
this.#prefix = prefix ? `${prefix}:` : '';
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
getPrefix() {
|
|
26
|
-
return this.#prefix;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
all(update) {
|
|
30
|
-
this.allMap(map => {
|
|
31
|
-
Object.entries(map).forEach(_ref => {
|
|
32
|
-
let [key, value] = _ref;
|
|
33
|
-
update(key, value);
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
allMap(update) {
|
|
39
|
-
chrome.storage.local.get(null, result => {
|
|
40
|
-
lastError('all');
|
|
41
|
-
const entries = Object.entries(result);
|
|
42
|
-
const map = {};
|
|
43
|
-
|
|
44
|
-
for (let i = 0; i < entries.length; i++) {
|
|
45
|
-
const [key, value] = entries[i];
|
|
46
|
-
|
|
47
|
-
if (key.startsWith(this.#prefix)) {
|
|
48
|
-
map[key.replace(this.#prefix, '')] = value;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
update(map);
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
get(_key, update) {
|
|
57
|
-
const key = `${this.#prefix}${_key}`;
|
|
58
|
-
chrome.storage.local.get([key], result => {
|
|
59
|
-
lastError('get');
|
|
60
|
-
update(result[key]);
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
remove(_key, update) {
|
|
65
|
-
const key = `${this.#prefix}${_key}`;
|
|
66
|
-
chrome.storage.local.remove(key, () => {
|
|
67
|
-
lastError('remove');
|
|
68
|
-
update && update();
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
set(_key, value, update) {
|
|
73
|
-
const key = `${this.#prefix}${_key}`;
|
|
74
|
-
chrome.storage.local.set({
|
|
75
|
-
[key]: value
|
|
76
|
-
}, () => {
|
|
77
|
-
lastError('set');
|
|
78
|
-
update && update();
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
exports.default = BaseStore;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
|
|
10
|
-
var _defaults = require("../defaults");
|
|
11
|
-
|
|
12
|
-
var _Base = _interopRequireDefault(require("./Base"));
|
|
13
|
-
|
|
14
|
-
// Copyright 2019-2022 @subwallet/extension-base authors & contributors
|
|
15
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
16
|
-
class MetadataStore extends _Base.default {
|
|
17
|
-
constructor() {
|
|
18
|
-
super(`${_defaults.EXTENSION_PREFIX}metadata`);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
exports.default = MetadataStore;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
Object.defineProperty(exports, "AccountsStore", {
|
|
9
|
-
enumerable: true,
|
|
10
|
-
get: function () {
|
|
11
|
-
return _Accounts.default;
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
Object.defineProperty(exports, "MetadataStore", {
|
|
15
|
-
enumerable: true,
|
|
16
|
-
get: function () {
|
|
17
|
-
return _Metadata.default;
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
var _Accounts = _interopRequireDefault(require("./Accounts"));
|
|
22
|
-
|
|
23
|
-
var _Metadata = _interopRequireDefault(require("./Metadata"));
|
package/build/cjs/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.canDerive = canDerive;
|
|
7
|
-
|
|
8
|
-
// Copyright 2019-2022 @subwallet/extension authors & contributors
|
|
9
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
10
|
-
function canDerive(type) {
|
|
11
|
-
return !!type && ['ed25519', 'sr25519', 'ecdsa', 'ethereum'].includes(type);
|
|
12
|
-
}
|
package/build/cjs/utils/getId.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getId = getId;
|
|
7
|
-
|
|
8
|
-
var _defaults = require("../defaults");
|
|
9
|
-
|
|
10
|
-
// Copyright 2019-2022 @subwallet/extension authors & contributors
|
|
11
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
12
|
-
let counter = 0;
|
|
13
|
-
|
|
14
|
-
function getId() {
|
|
15
|
-
return `${_defaults.EXTENSION_PREFIX}.${Date.now()}.${++counter}`;
|
|
16
|
-
}
|
package/build/cjs/utils/index.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "canDerive", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function () {
|
|
9
|
-
return _canDerive.canDerive;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
var _canDerive = require("./canDerive");
|