@cartridge/controller 0.3.0 → 0.3.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/lib/index.js CHANGED
@@ -22,28 +22,61 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
22
22
  step((generator = generator.apply(thisArg, _arguments || [])).next());
23
23
  });
24
24
  };
25
+ var __generator = (this && this.__generator) || function (thisArg, body) {
26
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
27
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
28
+ function verb(n) { return function (v) { return step([n, v]); }; }
29
+ function step(op) {
30
+ if (f) throw new TypeError("Generator is already executing.");
31
+ while (_) try {
32
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
33
+ if (y = 0, t) op = [op[0] & 2, t.value];
34
+ switch (op[0]) {
35
+ case 0: case 1: t = op; break;
36
+ case 4: _.label++; return { value: op[1], done: false };
37
+ case 5: _.label++; y = op[1]; op = [0]; continue;
38
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
39
+ default:
40
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
41
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
42
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
43
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
44
+ if (t[2]) _.ops.pop();
45
+ _.trys.pop(); continue;
46
+ }
47
+ op = body.call(thisArg, _);
48
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
49
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
50
+ }
51
+ };
25
52
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
53
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
54
  };
55
+ var _a;
28
56
  Object.defineProperty(exports, "__esModule", { value: true });
29
57
  exports.injectController = exports.split = exports.providers = void 0;
30
- const starknet_1 = require("starknet");
31
- const penpal_1 = require("@cartridge/penpal");
32
- const device_1 = __importDefault(require("./device"));
33
- const types_1 = require("./types");
34
- exports.providers = {
35
- [starknet_1.constants.StarknetChainId.TESTNET]: new starknet_1.RpcProvider({
58
+ var starknet_1 = require("starknet");
59
+ var penpal_1 = require("@cartridge/penpal");
60
+ var device_1 = __importDefault(require("./device"));
61
+ var types_1 = require("./types");
62
+ var utils_1 = require("./utils");
63
+ var graphql_1 = require("./generated/graphql");
64
+ var cbor_x_1 = require("cbor-x");
65
+ var constants_1 = require("@cartridge/controller/src/constants");
66
+ exports.providers = (_a = {},
67
+ _a[starknet_1.constants.StarknetChainId.TESTNET] = new starknet_1.RpcProvider({
36
68
  nodeUrl: "https://starknet-goerli.cartridge.gg/rpc/v0.2",
37
69
  }),
38
- [starknet_1.constants.StarknetChainId.TESTNET2]: new starknet_1.RpcProvider({
70
+ _a[starknet_1.constants.StarknetChainId.TESTNET2] = new starknet_1.RpcProvider({
39
71
  nodeUrl: "https://starknet-goerli2.cartridge.gg/rpc/v0.2",
40
72
  }),
41
- [starknet_1.constants.StarknetChainId.MAINNET]: new starknet_1.RpcProvider({
73
+ _a[starknet_1.constants.StarknetChainId.MAINNET] = new starknet_1.RpcProvider({
42
74
  nodeUrl: "https://starknet.cartridge.gg/rpc/v0.2",
43
75
  }),
44
- };
45
- class Controller {
46
- constructor(policies, options) {
76
+ _a);
77
+ var Controller = /** @class */ (function () {
78
+ function Controller(policies, options) {
79
+ var _this = this;
47
80
  this.policies = [];
48
81
  this.url = "https://x.cartridge.gg";
49
82
  this.chainId = starknet_1.constants.StarknetChainId.TESTNET;
@@ -62,160 +95,275 @@ class Controller {
62
95
  document.body.appendChild(this.modal.element);
63
96
  }
64
97
  else {
65
- document.addEventListener("DOMContentLoaded", () => {
66
- document.body.appendChild(this.modal.element);
98
+ document.addEventListener("DOMContentLoaded", function () {
99
+ document.body.appendChild(_this.modal.element);
67
100
  });
68
101
  }
69
102
  this.connection = (0, penpal_1.connectToChild)({
70
103
  iframe: this.modal.element.children[0],
71
104
  });
72
105
  this.connection.promise
73
- .then((keychain) => (this.keychain = keychain))
74
- .then(() => this.probe());
106
+ .then(function (keychain) { return (_this.keychain = keychain); })
107
+ .then(function () { return _this.probe(); });
75
108
  }
76
- get account() {
77
- if (!this.accounts) {
78
- return;
79
- }
80
- return this.accounts[this.chainId];
81
- }
82
- ready() {
109
+ Object.defineProperty(Controller.prototype, "account", {
110
+ get: function () {
111
+ if (!this.accounts) {
112
+ return;
113
+ }
114
+ return this.accounts[this.chainId];
115
+ },
116
+ enumerable: false,
117
+ configurable: true
118
+ });
119
+ Controller.prototype.ready = function () {
83
120
  var _a;
84
- return __awaiter(this, void 0, void 0, function* () {
85
- return (_a = this.connection) === null || _a === void 0 ? void 0 : _a.promise.then(() => this.probe()).then((res) => !!res, () => false);
121
+ return __awaiter(this, void 0, void 0, function () {
122
+ var _this = this;
123
+ return __generator(this, function (_b) {
124
+ return [2 /*return*/, (_a = this.connection) === null || _a === void 0 ? void 0 : _a.promise.then(function () { return _this.probe(); }).then(function (res) { return !!res; }, function () { return false; })];
125
+ });
86
126
  });
87
- }
88
- probe() {
89
- return __awaiter(this, void 0, void 0, function* () {
90
- if (!this.keychain || !this.modal) {
91
- console.error("not ready for connect");
92
- return null;
93
- }
94
- try {
95
- const res = yield this.keychain.probe();
96
- if (res.code !== types_1.ResponseCodes.SUCCESS) {
97
- return;
127
+ };
128
+ Controller.prototype.probe = function () {
129
+ return __awaiter(this, void 0, void 0, function () {
130
+ var res, address, e_1;
131
+ var _a;
132
+ return __generator(this, function (_b) {
133
+ switch (_b.label) {
134
+ case 0:
135
+ if (!this.keychain || !this.modal) {
136
+ console.error("not ready for connect");
137
+ return [2 /*return*/, null];
138
+ }
139
+ _b.label = 1;
140
+ case 1:
141
+ _b.trys.push([1, 3, , 4]);
142
+ return [4 /*yield*/, this.keychain.probe()];
143
+ case 2:
144
+ res = _b.sent();
145
+ if (res.code !== types_1.ResponseCodes.SUCCESS) {
146
+ return [2 /*return*/];
147
+ }
148
+ address = res.address;
149
+ this.accounts = (_a = {},
150
+ _a[starknet_1.constants.StarknetChainId.MAINNET] = new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.MAINNET], address, this.keychain, this.modal),
151
+ _a[starknet_1.constants.StarknetChainId.TESTNET] = new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET], address, this.keychain, this.modal),
152
+ _a[starknet_1.constants.StarknetChainId.TESTNET2] = new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET2], address, this.keychain, this.modal),
153
+ _a);
154
+ return [3 /*break*/, 4];
155
+ case 3:
156
+ e_1 = _b.sent();
157
+ console.error(e_1);
158
+ return [2 /*return*/];
159
+ case 4: return [2 /*return*/, !!this.accounts[this.chainId]];
98
160
  }
99
- const { address } = res;
100
- this.accounts = {
101
- [starknet_1.constants.StarknetChainId.MAINNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.MAINNET], address, this.keychain, this.modal),
102
- [starknet_1.constants.StarknetChainId.TESTNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET], address, this.keychain, this.modal),
103
- [starknet_1.constants.StarknetChainId.TESTNET2]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET2], address, this.keychain, this.modal),
104
- };
105
- }
106
- catch (e) {
107
- console.error(e);
108
- return;
109
- }
110
- return !!this.accounts[this.chainId];
161
+ });
111
162
  });
112
- }
113
- switchChain(chainId) {
114
- return __awaiter(this, void 0, void 0, function* () {
115
- if (this.chainId === chainId) {
116
- return;
117
- }
118
- this.chainId = chainId;
163
+ };
164
+ Controller.prototype.switchChain = function (chainId) {
165
+ return __awaiter(this, void 0, void 0, function () {
166
+ return __generator(this, function (_a) {
167
+ if (this.chainId === chainId) {
168
+ return [2 /*return*/];
169
+ }
170
+ this.chainId = chainId;
171
+ return [2 /*return*/];
172
+ });
119
173
  });
120
- }
174
+ };
121
175
  // Register a new device key.
122
- register(username, credentialId, credential) {
123
- return __awaiter(this, void 0, void 0, function* () {
124
- if (!this.keychain) {
125
- console.error("not ready for connect");
126
- return null;
127
- }
128
- return yield this.keychain.register(username, credentialId, credential);
129
- });
130
- }
131
- login(address, credentialId, options) {
132
- return __awaiter(this, void 0, void 0, function* () {
133
- if (!this.keychain) {
134
- console.error("not ready for connect");
135
- return null;
136
- }
137
- return this.keychain.login(address, credentialId, options);
176
+ Controller.prototype.register = function (username, credentialId, credential) {
177
+ return __awaiter(this, void 0, void 0, function () {
178
+ return __generator(this, function (_a) {
179
+ switch (_a.label) {
180
+ case 0:
181
+ if (!this.keychain) {
182
+ console.error("not ready for connect");
183
+ return [2 /*return*/, null];
184
+ }
185
+ return [4 /*yield*/, this.keychain.register(username, credentialId, credential)];
186
+ case 1: return [2 /*return*/, _a.sent()];
187
+ }
188
+ });
138
189
  });
139
- }
140
- provision(address, credentialId) {
141
- return __awaiter(this, void 0, void 0, function* () {
142
- if (!this.keychain) {
143
- console.error("not ready for connect");
144
- return null;
145
- }
146
- return this.keychain.provision(address, credentialId);
190
+ };
191
+ Controller.prototype.login = function (address, credentialId, options) {
192
+ return __awaiter(this, void 0, void 0, function () {
193
+ return __generator(this, function (_a) {
194
+ if (!this.keychain) {
195
+ console.error("not ready for connect");
196
+ return [2 /*return*/, null];
197
+ }
198
+ return [2 /*return*/, this.keychain.login(address, credentialId, options)];
199
+ });
147
200
  });
148
- }
149
- connect() {
150
- return __awaiter(this, void 0, void 0, function* () {
151
- if (this.accounts) {
152
- return this.accounts[this.chainId];
153
- }
154
- if (!this.keychain || !this.modal) {
155
- console.error("not ready for connect");
156
- return;
157
- }
158
- if (!!document.hasStorageAccess) {
159
- const ok = yield document.hasStorageAccess();
160
- if (!ok) {
161
- yield document.requestStorageAccess();
201
+ };
202
+ Controller.prototype.provision = function (address, credentialId) {
203
+ return __awaiter(this, void 0, void 0, function () {
204
+ return __generator(this, function (_a) {
205
+ if (!this.keychain) {
206
+ console.error("not ready for connect");
207
+ return [2 /*return*/, null];
162
208
  }
163
- }
164
- this.modal.open();
165
- try {
166
- let response = yield this.keychain.connect(this.policies);
167
- if (response.code !== types_1.ResponseCodes.SUCCESS) {
168
- throw new Error(response.message);
209
+ return [2 /*return*/, this.keychain.provision(address, credentialId)];
210
+ });
211
+ });
212
+ };
213
+ Controller.prototype.connect = function () {
214
+ return __awaiter(this, void 0, void 0, function () {
215
+ var ok, response, e_2;
216
+ var _a;
217
+ return __generator(this, function (_b) {
218
+ switch (_b.label) {
219
+ case 0:
220
+ if (this.accounts) {
221
+ return [2 /*return*/, this.accounts[this.chainId]];
222
+ }
223
+ if (!this.keychain || !this.modal) {
224
+ console.error("not ready for connect");
225
+ return [2 /*return*/];
226
+ }
227
+ if (!!!document.hasStorageAccess) return [3 /*break*/, 3];
228
+ return [4 /*yield*/, document.hasStorageAccess()];
229
+ case 1:
230
+ ok = _b.sent();
231
+ if (!!ok) return [3 /*break*/, 3];
232
+ return [4 /*yield*/, document.requestStorageAccess()];
233
+ case 2:
234
+ _b.sent();
235
+ _b.label = 3;
236
+ case 3:
237
+ this.modal.open();
238
+ _b.label = 4;
239
+ case 4:
240
+ _b.trys.push([4, 6, 7, 8]);
241
+ return [4 /*yield*/, this.keychain.connect(this.policies)];
242
+ case 5:
243
+ response = _b.sent();
244
+ if (response.code !== types_1.ResponseCodes.SUCCESS) {
245
+ throw new Error(response.message);
246
+ }
247
+ response = response;
248
+ this.accounts = (_a = {},
249
+ _a[starknet_1.constants.StarknetChainId.MAINNET] = new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.MAINNET], response.address, this.keychain, this.modal),
250
+ _a[starknet_1.constants.StarknetChainId.TESTNET] = new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET], response.address, this.keychain, this.modal),
251
+ _a[starknet_1.constants.StarknetChainId.TESTNET2] = new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET2], response.address, this.keychain, this.modal),
252
+ _a);
253
+ return [2 /*return*/, this.accounts[this.chainId]];
254
+ case 6:
255
+ e_2 = _b.sent();
256
+ console.log(e_2);
257
+ return [3 /*break*/, 8];
258
+ case 7:
259
+ this.modal.close();
260
+ return [7 /*endfinally*/];
261
+ case 8: return [2 /*return*/];
169
262
  }
170
- response = response;
171
- this.accounts = {
172
- [starknet_1.constants.StarknetChainId.MAINNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.MAINNET], response.address, this.keychain, this.modal),
173
- [starknet_1.constants.StarknetChainId.TESTNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET], response.address, this.keychain, this.modal),
174
- [starknet_1.constants.StarknetChainId.TESTNET2]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET2], response.address, this.keychain, this.modal),
175
- };
176
- return this.accounts[this.chainId];
177
- }
178
- catch (e) {
179
- console.log(e);
180
- }
181
- finally {
182
- this.modal.close();
183
- }
263
+ });
184
264
  });
185
- }
186
- disconnect() {
187
- return __awaiter(this, void 0, void 0, function* () {
188
- if (!this.keychain) {
189
- console.error("not ready for disconnect");
190
- return null;
191
- }
192
- if (!!document.hasStorageAccess) {
193
- const ok = yield document.hasStorageAccess();
194
- if (!ok) {
195
- yield document.requestStorageAccess();
265
+ };
266
+ Controller.prototype.disconnect = function () {
267
+ return __awaiter(this, void 0, void 0, function () {
268
+ var ok;
269
+ return __generator(this, function (_a) {
270
+ switch (_a.label) {
271
+ case 0:
272
+ if (!this.keychain) {
273
+ console.error("not ready for disconnect");
274
+ return [2 /*return*/, null];
275
+ }
276
+ if (!!!document.hasStorageAccess) return [3 /*break*/, 3];
277
+ return [4 /*yield*/, document.hasStorageAccess()];
278
+ case 1:
279
+ ok = _a.sent();
280
+ if (!!ok) return [3 /*break*/, 3];
281
+ return [4 /*yield*/, document.requestStorageAccess()];
282
+ case 2:
283
+ _a.sent();
284
+ _a.label = 3;
285
+ case 3: return [4 /*yield*/, this.keychain.disconnect()];
286
+ case 4: return [2 /*return*/, _a.sent()];
196
287
  }
197
- }
198
- return yield this.keychain.disconnect();
288
+ });
199
289
  });
200
- }
201
- revoke(origin, policy) {
290
+ };
291
+ Controller.prototype.revoke = function (origin, policy) {
202
292
  if (!this.keychain) {
203
293
  console.error("not ready for disconnect");
204
294
  return null;
205
295
  }
206
296
  return this.keychain.revoke(origin);
207
- }
208
- approvals(origin) {
209
- return __awaiter(this, void 0, void 0, function* () {
210
- if (!this.keychain) {
211
- console.error("not ready for disconnect");
212
- return;
213
- }
214
- return this.keychain.approvals(origin);
297
+ };
298
+ Controller.prototype.approvals = function (origin) {
299
+ return __awaiter(this, void 0, void 0, function () {
300
+ return __generator(this, function (_a) {
301
+ if (!this.keychain) {
302
+ console.error("not ready for disconnect");
303
+ return [2 /*return*/];
304
+ }
305
+ return [2 /*return*/, this.keychain.approvals(origin)];
306
+ });
215
307
  });
216
- }
217
- createModal() {
218
- const iframe = document.createElement("iframe");
308
+ };
309
+ Controller.prototype.verifyMessageHash = function (messageHash, signature) {
310
+ var _a, _b, _c, _d, _e, _f, _g;
311
+ return __awaiter(this, void 0, void 0, function () {
312
+ var isDeployed, res, isRegistered, keyPair, res, account, pubKeyCbor, x, y, _h, x0, x1, x2, _j, y0, y1, y2, address, keyPair;
313
+ return __generator(this, function (_k) {
314
+ switch (_k.label) {
315
+ case 0:
316
+ isDeployed = !!((_a = this.account) === null || _a === void 0 ? void 0 : _a.getClassHashAt(this.account.address, "latest"));
317
+ if (!isDeployed) return [3 /*break*/, 2];
318
+ return [4 /*yield*/, ((_b = this.account) === null || _b === void 0 ? void 0 : _b.callContract({
319
+ contractAddress: this.account.address,
320
+ entrypoint: "executeOnPlugin",
321
+ calldata: [
322
+ constants_1.CLASS_HASHES["0.0.1"].controller,
323
+ starknet_1.hash.getSelector("is_public_key"),
324
+ "0x1",
325
+ signature[0],
326
+ ],
327
+ }))];
328
+ case 1:
329
+ res = _k.sent();
330
+ isRegistered = (res === null || res === void 0 ? void 0 : res.result[0]) === "0x1";
331
+ if (isRegistered) {
332
+ keyPair = starknet_1.ec.getKeyPairFromPublicKey(signature[0]);
333
+ return [2 /*return*/, starknet_1.ec.verify(keyPair, starknet_1.number.toBN(messageHash).toString(), signature)];
334
+ }
335
+ else {
336
+ // validate register txn and signature
337
+ }
338
+ return [3 /*break*/, 4];
339
+ case 2: return [4 /*yield*/, utils_1.client.request(graphql_1.AccountDocument, {
340
+ address: (_c = this.account) === null || _c === void 0 ? void 0 : _c.address,
341
+ })];
342
+ case 3:
343
+ res = _k.sent();
344
+ account = (_f = (_e = (_d = res === null || res === void 0 ? void 0 : res.accounts) === null || _d === void 0 ? void 0 : _d.edges) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.node;
345
+ if (!account) {
346
+ return [2 /*return*/, false];
347
+ }
348
+ pubKeyCbor = (0, cbor_x_1.decode)(starknet_1.number.toBN(account.credential.publicKey).toBuffer())[0];
349
+ x = starknet_1.number.toBN("0x" + pubKeyCbor[-2].toString("hex"));
350
+ y = starknet_1.number.toBN("0x" + pubKeyCbor[-3].toString("hex"));
351
+ _h = split(x), x0 = _h.x, x1 = _h.y, x2 = _h.z;
352
+ _j = split(y), y0 = _j.x, y1 = _j.y, y2 = _j.z;
353
+ address = (0, utils_1.computeAddress)(account.id, { x0: x0, x1: x1, x2: x2 }, { y0: y0, y1: y1, y2: y2 }, signature[0]);
354
+ if (address !== ((_g = this.account) === null || _g === void 0 ? void 0 : _g.address)) {
355
+ throw new Error("invalid public key");
356
+ }
357
+ keyPair = starknet_1.ec.getKeyPairFromPublicKey(signature[0]);
358
+ return [2 /*return*/, starknet_1.ec.verify(keyPair, starknet_1.number.toBN(messageHash).toString(), signature)];
359
+ case 4: return [2 /*return*/];
360
+ }
361
+ });
362
+ });
363
+ };
364
+ Controller.prototype.createModal = function () {
365
+ var _this = this;
366
+ var iframe = document.createElement("iframe");
219
367
  iframe.src = this.url;
220
368
  iframe.id = "cartridge-modal";
221
369
  iframe.style.minHeight = "600px";
@@ -230,7 +378,7 @@ class Controller {
230
378
  if (!!document.hasStorageAccess) {
231
379
  iframe.sandbox.add("allow-storage-access-by-user-activation");
232
380
  }
233
- const container = document.createElement("div");
381
+ var container = document.createElement("div");
234
382
  container.style.position = "fixed";
235
383
  container.style.height = "100%";
236
384
  container.style.width = "100%";
@@ -243,28 +391,29 @@ class Controller {
243
391
  container.style.justifyContent = "center";
244
392
  container.style.display = "none";
245
393
  container.appendChild(iframe);
246
- const open = () => {
394
+ var open = function () {
247
395
  container.style.display = "flex";
248
396
  };
249
- const close = () => {
397
+ var close = function () {
250
398
  var _a;
251
- (_a = this.keychain) === null || _a === void 0 ? void 0 : _a.reset();
399
+ (_a = _this.keychain) === null || _a === void 0 ? void 0 : _a.reset();
252
400
  container.style.display = "none";
253
401
  };
254
- container.onclick = () => close();
402
+ container.onclick = function () { return close(); };
255
403
  return {
256
404
  element: container,
257
- open,
258
- close,
405
+ open: open,
406
+ close: close,
259
407
  };
260
- }
261
- }
262
- const BASE = starknet_1.number.toBN(2).pow(starknet_1.number.toBN(86));
408
+ };
409
+ return Controller;
410
+ }());
411
+ var BASE = starknet_1.number.toBN(2).pow(starknet_1.number.toBN(86));
263
412
  function split(n) {
264
- const x = n.mod(BASE);
265
- const y = n.div(BASE).mod(BASE);
266
- const z = n.div(BASE).div(BASE);
267
- return { x, y, z };
413
+ var x = n.mod(BASE);
414
+ var y = n.div(BASE).mod(BASE);
415
+ var z = n.div(BASE).div(BASE);
416
+ return { x: x, y: y, z: z };
268
417
  }
269
418
  exports.split = split;
270
419
  __exportStar(require("./types"), exports);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/inject.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { AccountInterface, ProviderInterface } from "starknet";
2
+ import { Policy } from "./types";
2
3
  export declare type EventType = "accountsChanged" | "networkChanged";
3
4
  export declare type EventHandler = (data: any) => void;
4
5
  interface WatchAssetParameters {
@@ -58,12 +59,18 @@ export declare class InjectedController implements IStarknetWindowObject {
58
59
  selectedAddress?: string;
59
60
  subscriptions: WalletEvents[];
60
61
  private controller;
61
- constructor();
62
+ constructor(policies?: Policy[], options?: {
63
+ url?: string;
64
+ origin?: string;
65
+ });
62
66
  request: (call: Omit<RpcMessage, "result">) => Promise<RpcMessage["result"]>;
63
67
  enable: () => Promise<string[]>;
64
68
  isPreauthorized: () => Promise<boolean>;
65
69
  on: (type: EventType, handler: EventHandler) => void;
66
70
  off: (type: EventType, handler: EventHandler) => void;
67
71
  }
68
- declare function injectController(): void;
72
+ declare function injectController(policies?: Policy[], options?: {
73
+ url?: string;
74
+ origin?: string;
75
+ }): void;
69
76
  export { injectController };