@cartridge/controller 0.2.17 → 0.2.18

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/device.d.ts CHANGED
@@ -1,24 +1,26 @@
1
1
  import { constants, Account, Abi, Call, EstimateFeeDetails, InvocationsDetails, Signature, typedData, InvokeFunctionResponse, EstimateFee, DeclareContractPayload, RpcProvider } from "starknet";
2
2
  import { Keychain } from "./types";
3
3
  import { AsyncMethodReturns } from "@cartridge/penpal";
4
+ import { Modal } from "./modal";
4
5
  declare class DeviceAccount extends Account {
5
6
  address: string;
6
7
  private keychain;
7
8
  private url;
8
- constructor(provider: RpcProvider, address: string, keychain: AsyncMethodReturns<Keychain>, options?: {
9
+ private modal?;
10
+ constructor(provider: RpcProvider, address: string, keychain: AsyncMethodReturns<Keychain>, modal?: Modal, options?: {
9
11
  url?: string;
10
12
  });
11
13
  /**
12
- * Estimate Fee for a method on starknet
13
- *
14
- * @param calls the invocation object containing:
15
- * - contractAddress - the address of the contract
16
- * - entrypoint - the entrypoint of the contract
17
- * - calldata - (defaults to []) the calldata
18
- * - signature - (defaults to []) the signature
19
- *
20
- * @returns response from addTransaction
21
- */
14
+ * Estimate Fee for a method on starknet
15
+ *
16
+ * @param calls the invocation object containing:
17
+ * - contractAddress - the address of the contract
18
+ * - entrypoint - the entrypoint of the contract
19
+ * - calldata - (defaults to []) the calldata
20
+ * - signature - (defaults to []) the signature
21
+ *
22
+ * @returns response from addTransaction
23
+ */
22
24
  estimateInvokeFee(calls: Call | Call[], details?: EstimateFeeDetails): Promise<EstimateFee>;
23
25
  estimateDeclareFee(payload: DeclareContractPayload, details?: EstimateFeeDetails): Promise<EstimateFee>;
24
26
  /**
package/lib/device.js CHANGED
@@ -16,26 +16,27 @@ const starknet_1 = require("starknet");
16
16
  const query_string_1 = __importDefault(require("query-string"));
17
17
  const signer_1 = require("./signer");
18
18
  class DeviceAccount extends starknet_1.Account {
19
- constructor(provider, address, keychain, options) {
19
+ constructor(provider, address, keychain, modal, options) {
20
20
  super(provider, address, new signer_1.Signer(keychain, options));
21
21
  this.url = "https://x.cartridge.gg";
22
22
  this.address = address;
23
23
  this.keychain = keychain;
24
+ this.modal = modal;
24
25
  if (options === null || options === void 0 ? void 0 : options.url) {
25
26
  this.url = options.url;
26
27
  }
27
28
  }
28
29
  /**
29
- * Estimate Fee for a method on starknet
30
- *
31
- * @param calls the invocation object containing:
32
- * - contractAddress - the address of the contract
33
- * - entrypoint - the entrypoint of the contract
34
- * - calldata - (defaults to []) the calldata
35
- * - signature - (defaults to []) the signature
36
- *
37
- * @returns response from addTransaction
38
- */
30
+ * Estimate Fee for a method on starknet
31
+ *
32
+ * @param calls the invocation object containing:
33
+ * - contractAddress - the address of the contract
34
+ * - entrypoint - the entrypoint of the contract
35
+ * - calldata - (defaults to []) the calldata
36
+ * - signature - (defaults to []) the signature
37
+ *
38
+ * @returns response from addTransaction
39
+ */
39
40
  estimateInvokeFee(calls, details) {
40
41
  return __awaiter(this, void 0, void 0, function* () {
41
42
  return this.keychain.estimateInvokeFee(calls, Object.assign(Object.assign({}, details), { chainId: this.chainId }));
@@ -59,6 +60,7 @@ class DeviceAccount extends starknet_1.Account {
59
60
  * @returns response from addTransaction
60
61
  */
61
62
  execute(calls, abis, transactionsDetail) {
63
+ var _a;
62
64
  return __awaiter(this, void 0, void 0, function* () {
63
65
  if (!transactionsDetail) {
64
66
  transactionsDetail = {};
@@ -68,12 +70,13 @@ class DeviceAccount extends starknet_1.Account {
68
70
  }
69
71
  catch (e) {
70
72
  console.log(e.message);
71
- if (e.message !== "missing policies" && e.message !== "not registered") {
73
+ if (e.message !== "missing policies" &&
74
+ e.message !== "not registered") {
72
75
  console.error(e);
73
76
  throw e;
74
77
  }
75
78
  }
76
- window.open(`${this.url}/execute?${query_string_1.default.stringify(Object.assign(Object.assign({}, transactionsDetail), { origin: window.origin, calls: JSON.stringify(calls) }))}`, "_blank", "height=650,width=450");
79
+ (_a = this.modal) === null || _a === void 0 ? void 0 : _a.open(`${this.url}/execute?${query_string_1.default.stringify(Object.assign(Object.assign({}, transactionsDetail), { origin: window.origin, calls: JSON.stringify(calls) }))}`);
77
80
  return this.keychain.execute(calls, abis, transactionsDetail, true);
78
81
  });
79
82
  }
@@ -86,10 +89,11 @@ class DeviceAccount extends starknet_1.Account {
86
89
  * @throws {Error} if the JSON object is not a valid JSON
87
90
  */
88
91
  signMessage(typedData) {
92
+ var _a;
89
93
  return __awaiter(this, void 0, void 0, function* () {
90
- window.open(`${this.url}/sign?${query_string_1.default.stringify({
94
+ (_a = this.modal) === null || _a === void 0 ? void 0 : _a.open(`${this.url}/sign?${query_string_1.default.stringify({
91
95
  typedData: JSON.stringify(typedData),
92
- })}`, "_blank", "height=650,width=450");
96
+ })}`);
93
97
  return this.keychain.signMessage(typedData, this.address);
94
98
  });
95
99
  }
package/lib/device.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uCAakB;AAClB,gEAA8B;AAK9B,qCAAkC;AAGlC,MAAM,aAAc,SAAQ,kBAAO;IAKjC,YACE,QAAqB,EACrB,OAAe,EACf,QAAsC,EACtC,OAEC;QAED,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,eAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAVlD,QAAG,GAAW,wBAAwB,CAAC;QAW7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,EAAE;YAChB,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;SACxB;IACH,CAAC;IAED;;;;;;;;;;SAUK;IACC,iBAAiB,CAAC,KAAoB,EAAE,OAA4B;;YACxE,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,kCAAO,OAAO,KAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAG,CAAA;QACtF,CAAC;KAAA;IAEK,kBAAkB,CAAC,OAA+B,EAAE,OAA4B;;YACpF,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,OAAO,kCAAO,OAAO,KAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAG,CAAA;QACzF,CAAC;KAAA;IAED;;;;;;;;;;;OAWG;IACG,OAAO,CACX,KAAoB,EACpB,IAAY,EACZ,kBAEC;;YAED,IAAI,CAAC,kBAAkB,EAAE;gBACvB,kBAAkB,GAAG,EAAE,CAAA;aACxB;YAED,IAAI;gBACF,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAA;aACpE;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,GAAG,CAAE,CAAW,CAAC,OAAO,CAAC,CAAA;gBACjC,IAAK,CAAW,CAAC,OAAO,KAAK,kBAAkB,IAAK,CAAW,CAAC,OAAO,KAAK,gBAAgB,EAAE;oBAC5F,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;oBAChB,MAAM,CAAC,CAAA;iBACR;aACF;YAED,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,CAAC,GAAG,YAAY,sBAAE,CAAC,SAAS,iCAC9B,kBAAkB,KACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAC5B,EAAE,EACJ,QAAQ,EACR,sBAAsB,CACvB,CAAC;YAEF,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;QACtE,CAAC;KAAA;IAED;;;;;;;OAOG;IACG,WAAW,CAAC,SAA8B;;YAC9C,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,CAAC,GAAG,SAAS,sBAAE,CAAC,SAAS,CAAC;gBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;aACrC,CAAC,EAAE,EACJ,QAAQ,EACR,sBAAsB,CACvB,CAAC;YAEF,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5D,CAAC;KAAA;CACF;AAED,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uCAakB;AAClB,gEAA8B;AAG9B,qCAAkC;AAIlC,MAAM,aAAc,SAAQ,kBAAO;IAMjC,YACE,QAAqB,EACrB,OAAe,EACf,QAAsC,EACtC,KAAa,EACb,OAEC;QAED,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,eAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAZlD,QAAG,GAAW,wBAAwB,CAAC;QAa7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,EAAE;YAChB,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;SACxB;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACG,iBAAiB,CACrB,KAAoB,EACpB,OAA4B;;YAE5B,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,kCACvC,OAAO,KACV,OAAO,EAAE,IAAI,CAAC,OAAO,IACrB,CAAC;QACL,CAAC;KAAA;IAEK,kBAAkB,CACtB,OAA+B,EAC/B,OAA4B;;YAE5B,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,OAAO,kCAC1C,OAAO,KACV,OAAO,EAAE,IAAI,CAAC,OAAO,IACrB,CAAC;QACL,CAAC;KAAA;IAED;;;;;;;;;;;OAWG;IACG,OAAO,CACX,KAAoB,EACpB,IAAY,EACZ,kBAEC;;;YAED,IAAI,CAAC,kBAAkB,EAAE;gBACvB,kBAAkB,GAAG,EAAE,CAAC;aACzB;YAED,IAAI;gBACF,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;aACrE;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,GAAG,CAAE,CAAW,CAAC,OAAO,CAAC,CAAC;gBAClC,IACG,CAAW,CAAC,OAAO,KAAK,kBAAkB;oBAC1C,CAAW,CAAC,OAAO,KAAK,gBAAgB,EACzC;oBACA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACjB,MAAM,CAAC,CAAC;iBACT;aACF;YAED,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,CACd,GAAG,IAAI,CAAC,GAAG,YAAY,sBAAE,CAAC,SAAS,iCAC9B,kBAAkB,KACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAC5B,EAAE,CACL,CAAC;YAEF,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;;KACrE;IAED;;;;;;;OAOG;IACG,WAAW,CAAC,SAA8B;;;YAC9C,MAAA,IAAI,CAAC,KAAK,0CAAE,IAAI,CACd,GAAG,IAAI,CAAC,GAAG,SAAS,sBAAE,CAAC,SAAS,CAAC;gBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;aACrC,CAAC,EAAE,CACL,CAAC;YAEF,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;;KAC3D;CACF;AAED,kBAAe,aAAa,CAAC"}
package/lib/index.d.ts CHANGED
@@ -17,6 +17,7 @@ declare class Controller {
17
17
  accounts?: {
18
18
  [key in constants.StarknetChainId]: AccountInterface;
19
19
  };
20
+ private modal?;
20
21
  constructor(policies?: Policy[], options?: {
21
22
  url?: string;
22
23
  origin?: string;
package/lib/index.js CHANGED
@@ -31,6 +31,7 @@ const query_string_1 = __importDefault(require("query-string"));
31
31
  const starknet_1 = require("starknet");
32
32
  const penpal_1 = require("@cartridge/penpal");
33
33
  const device_1 = __importDefault(require("./device"));
34
+ const modal_1 = require("./modal");
34
35
  exports.providers = {
35
36
  [starknet_1.constants.StarknetChainId.TESTNET]: new starknet_1.RpcProvider({
36
37
  nodeUrl: "https://starknet-goerli.cartridge.gg/rpc/v0.2",
@@ -84,6 +85,7 @@ class Controller {
84
85
  this.connection.promise
85
86
  .then((keychain) => (this.keychain = keychain))
86
87
  .then(() => this.probe());
88
+ this.modal = (0, modal_1.createModal)();
87
89
  }
88
90
  get account() {
89
91
  if (!this.accounts) {
@@ -106,13 +108,13 @@ class Controller {
106
108
  try {
107
109
  const { address } = yield this.keychain.probe();
108
110
  this.accounts = {
109
- [starknet_1.constants.StarknetChainId.MAINNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.MAINNET], address, this.keychain, {
111
+ [starknet_1.constants.StarknetChainId.MAINNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.MAINNET], address, this.keychain, this.modal, {
110
112
  url: this.url,
111
113
  }),
112
- [starknet_1.constants.StarknetChainId.TESTNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET], address, this.keychain, {
114
+ [starknet_1.constants.StarknetChainId.TESTNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET], address, this.keychain, this.modal, {
113
115
  url: this.url,
114
116
  }),
115
- [starknet_1.constants.StarknetChainId.TESTNET2]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET2], address, this.keychain, {
117
+ [starknet_1.constants.StarknetChainId.TESTNET2]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET2], address, this.keychain, this.modal, {
116
118
  url: this.url,
117
119
  }),
118
120
  };
@@ -168,6 +170,7 @@ class Controller {
168
170
  });
169
171
  }
170
172
  connect() {
173
+ var _a;
171
174
  return __awaiter(this, void 0, void 0, function* () {
172
175
  if (this.accounts) {
173
176
  return this.accounts[this.chainId];
@@ -182,19 +185,19 @@ class Controller {
182
185
  yield document.requestStorageAccess();
183
186
  }
184
187
  }
185
- window.open(`${this.url}/connect?${query_string_1.default.stringify({
188
+ (_a = this.modal) === null || _a === void 0 ? void 0 : _a.open(`${this.url}/connect?${query_string_1.default.stringify({
186
189
  origin: window.origin,
187
190
  policies: JSON.stringify(this.policies),
188
- })}`, "_blank", "height=650,width=450");
191
+ })}`);
189
192
  const response = yield this.keychain.connect(this.policies);
190
193
  this.accounts = {
191
- [starknet_1.constants.StarknetChainId.MAINNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.MAINNET], response.address, this.keychain, {
194
+ [starknet_1.constants.StarknetChainId.MAINNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.MAINNET], response.address, this.keychain, this.modal, {
192
195
  url: this.url,
193
196
  }),
194
- [starknet_1.constants.StarknetChainId.TESTNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET], response.address, this.keychain, {
197
+ [starknet_1.constants.StarknetChainId.TESTNET]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET], response.address, this.keychain, this.modal, {
195
198
  url: this.url,
196
199
  }),
197
- [starknet_1.constants.StarknetChainId.TESTNET2]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET2], response.address, this.keychain, {
200
+ [starknet_1.constants.StarknetChainId.TESTNET2]: new device_1.default(exports.providers[starknet_1.constants.StarknetChainId.TESTNET2], response.address, this.keychain, this.modal, {
198
201
  url: this.url,
199
202
  }),
200
203
  };
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/modal.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ export interface Modal {
2
+ open: (src: string) => void;
3
+ close: () => void;
4
+ }
5
+ export declare const createModal: () => {
6
+ open: (src: string) => void;
7
+ close: () => void;
8
+ };
package/lib/modal.js ADDED
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createModal = void 0;
4
+ const penpal_1 = require("@cartridge/penpal");
5
+ const createModal = () => {
6
+ const iframe = document.createElement("iframe");
7
+ iframe.id = "cartridge-modal";
8
+ iframe.style.minHeight = "600px";
9
+ iframe.style.minWidth = "400px";
10
+ iframe.style.border = "none";
11
+ iframe.style.borderRadius = "8px";
12
+ iframe.sandbox.add("allow-forms");
13
+ iframe.sandbox.add("allow-popups");
14
+ iframe.sandbox.add("allow-scripts");
15
+ iframe.sandbox.add("allow-same-origin");
16
+ iframe.allow = "publickey-credentials-get *";
17
+ if (!!document.hasStorageAccess) {
18
+ iframe.sandbox.add("allow-storage-access-by-user-activation");
19
+ }
20
+ const container = document.createElement("div");
21
+ container.style.position = "fixed";
22
+ container.style.height = "100%";
23
+ container.style.width = "100%";
24
+ container.style.top = "0";
25
+ container.style.left = "0";
26
+ container.style.zIndex = "10000";
27
+ container.style.backgroundColor = "rgba(0,0,0,0.5)";
28
+ container.style.display = "flex";
29
+ container.style.alignItems = "center";
30
+ container.style.justifyContent = "center";
31
+ container.style.display = "none";
32
+ container.appendChild(iframe);
33
+ document.body.appendChild(container);
34
+ function open(src) {
35
+ iframe.src = src;
36
+ (0, penpal_1.connectToChild)({
37
+ iframe,
38
+ methods: {
39
+ onCancel: () => {
40
+ close();
41
+ },
42
+ onConfirm: () => {
43
+ close();
44
+ },
45
+ },
46
+ });
47
+ container.style.display = "flex";
48
+ }
49
+ function close() {
50
+ iframe.src = "about:blank";
51
+ container.style.display = "none";
52
+ }
53
+ return {
54
+ open,
55
+ close,
56
+ };
57
+ };
58
+ exports.createModal = createModal;
59
+ //# sourceMappingURL=modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal.js","sourceRoot":"","sources":["../src/modal.ts"],"names":[],"mappings":";;;AAAA,8CAAmD;AAQ5C,MAAM,WAAW,GAAG,GAAG,EAAE;IAC9B,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,GAAG,iBAAiB,CAAC;IAC9B,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC;IACjC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;IAChC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAC7B,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC;IAClC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAClC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACpC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,GAAG,6BAA6B,CAAC;IAC7C,IAAI,CAAC,CAAC,QAAQ,CAAC,gBAAgB,EAAE;QAC/B,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;KAC/D;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAChD,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;IACnC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAChC,SAAS,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IAC/B,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;IAC1B,SAAS,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC;IAC3B,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC;IACjC,SAAS,CAAC,KAAK,CAAC,eAAe,GAAG,iBAAiB,CAAC;IACpD,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IACjC,SAAS,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;IACtC,SAAS,CAAC,KAAK,CAAC,cAAc,GAAG,QAAQ,CAAC;IAC1C,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IACjC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAErC,SAAS,IAAI,CAAC,GAAW;QACvB,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;QACjB,IAAA,uBAAc,EAAgB;YAC5B,MAAM;YACN,OAAO,EAAE;gBACP,QAAQ,EAAE,GAAG,EAAE;oBACb,KAAK,EAAE,CAAC;gBACV,CAAC;gBACD,SAAS,EAAE,GAAG,EAAE;oBACd,KAAK,EAAE,CAAC;gBACV,CAAC;aACF;SACF,CAAC,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IACnC,CAAC;IAED,SAAS,KAAK;QACZ,MAAM,CAAC,GAAG,GAAG,aAAa,CAAC;QAC3B,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IACnC,CAAC;IAED,OAAO;QACL,IAAI;QACJ,KAAK;KACN,CAAC;AACJ,CAAC,CAAC;AAxDW,QAAA,WAAW,eAwDtB"}
package/lib/types.d.ts CHANGED
@@ -63,3 +63,7 @@ export interface Keychain {
63
63
  }>;
64
64
  signMessage(typedData: typedData.TypedData, account: string): Promise<Signature>;
65
65
  }
66
+ export interface ModalResponse {
67
+ onConfirm(): void;
68
+ onCancel(): void;
69
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cartridge/controller",
3
- "version": "0.2.17",
3
+ "version": "0.2.18",
4
4
  "description": "Cartridge Controller",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",