@cartridge/controller 0.1.74 → 0.2.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/device.d.ts +4 -1
- package/lib/device.js +1 -1
- package/lib/device.js.map +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.js +4 -3
- package/lib/index.js.map +1 -1
- package/lib/inject.d.ts +69 -0
- package/lib/inject.js +81 -0
- package/lib/inject.js.map +1 -0
- package/lib/signer.d.ts +2 -17
- package/lib/signer.js +0 -31
- package/lib/signer.js.map +1 -1
- package/lib/types.d.ts +15 -7
- package/package.json +1 -1
package/lib/device.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Account, DeployContractPayload, Abi, Call, EstimateFeeDetails, DeployContractResponse as StarknetDeployContractResponse, InvocationsDetails, Signature, typedData, InvokeFunctionResponse, EstimateFee, DeclareContractPayload } from "starknet";
|
|
2
2
|
import { Keychain } from "./types";
|
|
3
3
|
import { AsyncMethodReturns } from "@cartridge/penpal";
|
|
4
|
+
import { StarknetChainId } from "starknet/dist/constants";
|
|
4
5
|
declare class DeviceAccount extends Account {
|
|
5
6
|
address: string;
|
|
6
7
|
private keychain;
|
|
@@ -44,7 +45,9 @@ declare class DeviceAccount extends Account {
|
|
|
44
45
|
*
|
|
45
46
|
* @returns response from addTransaction
|
|
46
47
|
*/
|
|
47
|
-
execute(calls: Call | Call[], abis?: Abi[], transactionsDetail?: InvocationsDetails
|
|
48
|
+
execute(calls: Call | Call[], abis?: Abi[], transactionsDetail?: InvocationsDetails & {
|
|
49
|
+
chainId?: StarknetChainId;
|
|
50
|
+
}): Promise<InvokeFunctionResponse>;
|
|
48
51
|
/**
|
|
49
52
|
* Sign an JSON object for off-chain usage with the starknet private key and return the signature
|
|
50
53
|
* This adds a message prefix so it cant be interchanged with transactions
|
package/lib/device.js
CHANGED
|
@@ -109,7 +109,7 @@ class DeviceAccount extends starknet_1.Account {
|
|
|
109
109
|
nonce: transactionsDetail.nonce,
|
|
110
110
|
version: transactionsDetail.version,
|
|
111
111
|
maxFee: transactionsDetail.maxFee,
|
|
112
|
-
chainId: constants_1.StarknetChainId.TESTNET,
|
|
112
|
+
chainId: transactionsDetail.chainId ? transactionsDetail.chainId : constants_1.StarknetChainId.TESTNET,
|
|
113
113
|
})}`, "_blank", "height=650,width=400");
|
|
114
114
|
return this.keychain.execute(calls, abis, transactionsDetail, true);
|
|
115
115
|
});
|
package/lib/device.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uCAckB;AAClB,gEAA8B;AAK9B,qCAAkC;AAElC,uDAA0D;AAE1D,MAAM,aAAc,SAAQ,kBAAO;IAKjC,YACE,OAAe,EACf,QAAsC,EACtC,OAEC;QAED,KAAK,CAAC,0BAAe,EAAE,OAAO,EAAE,IAAI,eAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QATzD,QAAG,GAAW,wBAAwB,CAAC;QAU7C,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;;;;;;;;;OASG;IACG,cAAc,CAClB,OAA8B,EAC9B,GAAS;;YAET,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QACnC,CAAC;KAAA;IAED;;;;;;;;;;SAUK;IACC,iBAAiB,CAAC,KAAoB,EAAE,OAA4B;;YACxE,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QACxD,CAAC;KAAA;IAEK,kBAAkB,CAAC,OAA+B,EAAE,OAA4B;;YACpF,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC3D,CAAC;KAAA;IAED;;;;;;;;;;;OAWG;IACG,OAAO,CACX,KAAoB,EACpB,IAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ declare class Controller {
|
|
|
9
9
|
keychain?: AsyncMethodReturns<Keychain>;
|
|
10
10
|
private policies;
|
|
11
11
|
private url;
|
|
12
|
-
|
|
12
|
+
account: AccountInterface | undefined;
|
|
13
13
|
constructor(policies?: Policy[], options?: {
|
|
14
14
|
url?: string;
|
|
15
15
|
origin?: string;
|
|
@@ -43,4 +43,5 @@ export declare function split(n: BigNumberish): {
|
|
|
43
43
|
};
|
|
44
44
|
export * from "./types";
|
|
45
45
|
export * from "./errors";
|
|
46
|
+
export { injectController } from "./inject";
|
|
46
47
|
export default Controller;
|
package/lib/index.js
CHANGED
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.split = void 0;
|
|
29
|
+
exports.injectController = exports.split = void 0;
|
|
30
30
|
const query_string_1 = __importDefault(require("query-string"));
|
|
31
31
|
const starknet_1 = require("starknet");
|
|
32
32
|
const penpal_1 = require("@cartridge/penpal");
|
|
@@ -54,7 +54,7 @@ class Controller {
|
|
|
54
54
|
iframe.style.width = "0";
|
|
55
55
|
iframe.sandbox.add("allow-scripts");
|
|
56
56
|
iframe.sandbox.add("allow-same-origin");
|
|
57
|
-
iframe.
|
|
57
|
+
iframe.allow = "publickey-credentials-get *";
|
|
58
58
|
if (!!document.hasStorageAccess) {
|
|
59
59
|
iframe.sandbox.add("allow-storage-access-by-user-activation");
|
|
60
60
|
}
|
|
@@ -69,7 +69,6 @@ class Controller {
|
|
|
69
69
|
}
|
|
70
70
|
this.connection = (0, penpal_1.connectToChild)({
|
|
71
71
|
iframe,
|
|
72
|
-
debug: true,
|
|
73
72
|
});
|
|
74
73
|
this.connection.promise.then((keychain) => this.keychain = keychain).then(() => this.probe());
|
|
75
74
|
}
|
|
@@ -193,5 +192,7 @@ function split(n) {
|
|
|
193
192
|
exports.split = split;
|
|
194
193
|
__exportStar(require("./types"), exports);
|
|
195
194
|
__exportStar(require("./errors"), exports);
|
|
195
|
+
var inject_1 = require("./inject");
|
|
196
|
+
Object.defineProperty(exports, "injectController", { enumerable: true, get: function () { return inject_1.injectController; } });
|
|
196
197
|
exports.default = Controller;
|
|
197
198
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAA8B;AAC9B,uCAAoD;AACpD,8CAAmF;AAEnF,sDAAqC;AAErC,uDAAgE;AAEhE,MAAM,UAAU;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/inject.d.ts
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { AccountInterface, ProviderInterface } from "starknet";
|
|
2
|
+
export declare type EventType = "accountsChanged" | "networkChanged";
|
|
3
|
+
export declare type EventHandler = (data: any) => void;
|
|
4
|
+
interface WatchAssetParameters {
|
|
5
|
+
type: string;
|
|
6
|
+
options: {
|
|
7
|
+
address: string;
|
|
8
|
+
symbol?: string;
|
|
9
|
+
decimals?: number;
|
|
10
|
+
image?: string;
|
|
11
|
+
name?: string;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export declare type RpcMessage = {
|
|
15
|
+
type: "wallet_watchAsset";
|
|
16
|
+
params: WatchAssetParameters;
|
|
17
|
+
result: boolean;
|
|
18
|
+
} | {
|
|
19
|
+
type: string;
|
|
20
|
+
params: unknown;
|
|
21
|
+
result: never;
|
|
22
|
+
};
|
|
23
|
+
export declare type AccountChangeEventHandler = (accounts: string[]) => void;
|
|
24
|
+
export declare type NetworkChangeEventHandler = (network?: string) => void;
|
|
25
|
+
export declare type WalletEventHandlers = AccountChangeEventHandler | NetworkChangeEventHandler;
|
|
26
|
+
export declare type WalletEvents = {
|
|
27
|
+
type: "accountsChanged";
|
|
28
|
+
handler: AccountChangeEventHandler;
|
|
29
|
+
} | {
|
|
30
|
+
type: "networkChanged";
|
|
31
|
+
handler: NetworkChangeEventHandler;
|
|
32
|
+
};
|
|
33
|
+
export interface IStarknetWindowObject {
|
|
34
|
+
request: <T extends RpcMessage>(call: Omit<T, "result">) => Promise<T["result"]>;
|
|
35
|
+
enable: (options?: {
|
|
36
|
+
showModal?: boolean;
|
|
37
|
+
}) => Promise<string[]>;
|
|
38
|
+
isPreauthorized: () => Promise<boolean>;
|
|
39
|
+
on: (event: EventType, handleEvent: EventHandler) => void;
|
|
40
|
+
off: (event: EventType, handleEvent: EventHandler) => void;
|
|
41
|
+
id: string;
|
|
42
|
+
name: string;
|
|
43
|
+
version: string;
|
|
44
|
+
icon: string;
|
|
45
|
+
provider: ProviderInterface;
|
|
46
|
+
isConnected: boolean;
|
|
47
|
+
account?: AccountInterface;
|
|
48
|
+
selectedAddress?: string;
|
|
49
|
+
}
|
|
50
|
+
export declare class InjectedController implements IStarknetWindowObject {
|
|
51
|
+
id: string;
|
|
52
|
+
name: string;
|
|
53
|
+
version: string;
|
|
54
|
+
icon: string;
|
|
55
|
+
provider: import("starknet").Provider;
|
|
56
|
+
isConnected: boolean;
|
|
57
|
+
account?: AccountInterface;
|
|
58
|
+
selectedAddress?: string;
|
|
59
|
+
subscriptions: WalletEvents[];
|
|
60
|
+
private controller;
|
|
61
|
+
constructor();
|
|
62
|
+
request: (call: Omit<RpcMessage, "result">) => Promise<RpcMessage["result"]>;
|
|
63
|
+
enable: () => Promise<string[]>;
|
|
64
|
+
isPreauthorized: () => Promise<boolean>;
|
|
65
|
+
on: (type: EventType, handler: EventHandler) => void;
|
|
66
|
+
off: (type: EventType, handler: EventHandler) => void;
|
|
67
|
+
}
|
|
68
|
+
declare function injectController(): void;
|
|
69
|
+
export { injectController };
|
package/lib/inject.js
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.injectController = exports.InjectedController = void 0;
|
|
16
|
+
const starknet_1 = require("starknet");
|
|
17
|
+
const _1 = __importDefault(require("."));
|
|
18
|
+
class InjectedController {
|
|
19
|
+
constructor() {
|
|
20
|
+
this.id = "Cartridge";
|
|
21
|
+
this.name = "Cartridge";
|
|
22
|
+
this.version = "0.0.1";
|
|
23
|
+
this.icon = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTIiIGhlaWdodD0iNDQiIHZpZXdCb3g9IjAgMCA1MiA0NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE4LjE2MzIgMTguNTcxMUgzMy42NzM0VjE0LjY1MzFIMTguMTY3MUMxOC4xNjcxIDE1LjA1MzQgMTguMTYzMiAxOC42MDggMTguMTYzMiAxOC41NzExWiIgZmlsbD0iIzBGMTQxMCIvPgo8cGF0aCBkPSJNNDQuNDIwMyAxMC41TDM0Ljk0MjkgNi41QzM0LjMyIDYuMTk1NzQgMzMuNjQwNCA2LjAyNTQzIDMyLjk0OCA2SDE5LjA1MTlDMTguMzU5IDYuMDI1NDggMTcuNjc5IDYuMTk1NzkgMTcuMDU1NiA2LjVMNy41Nzk1MyAxMC41QzcuMTIxMDggMTAuNzMzOCA2LjczNzUzIDExLjA5MjMgNi40NzI3MSAxMS41MzQ0QzYuMjA3OSAxMS45NzY1IDYuMDcyNSAxMi40ODQzIDYuMDgyMDEgMTIuOTk5OVYyOS4wMDI0QzYuMDgyMDEgMjkuNTAyNCA2LjA4MjAxIDMwLjAwMjQgNi41ODA3NSAzMC41MDI0TDkuNTc0NDkgMzMuNTAyM0MxMC4wNzMyIDM0LjAwMjMgMTAuNDQ3NiAzNC4wMDIzIDExLjA3MDcgMzQuMDAyM0gxNy45MjYxQzE3LjkyNjEgMzQuNDMyMiAxNy45MjYxIDM4LjAzODYgMTcuOTI2MSAzNy45OTk3SDM0LjEzMlYzMy45OTcxSDE3LjkzOTFWMzAuMDAyNEgxMC41NzJDMTAuMDczMiAzMC4wMDI0IDEwLjA3MzIgMjkuNTAyNCAxMC4wNzMyIDI5LjUwMjRWMTAuNUMxMC4wNzMyIDEwLjUgMTAuMDczMiA5Ljk5OTk2IDEwLjU3MiA5Ljk5OTk2SDQxLjQyOTJDNDEuOTI3OSA5Ljk5OTk2IDQxLjkyNzkgMTAuNSA0MS45Mjc5IDEwLjVWMjkuNTAyNEM0MS45Mjc5IDI5LjUwMjQgNDEuOTI3OSAzMC4wMDI0IDQxLjQyOTIgMzAuMDAyNEgzNC4xMzU5VjM0LjAwMjNINDAuOTMwNEM0MS41NTM1IDM0LjAwMjMgNDEuOTI3OSAzNC4wMDIzIDQyLjQyNjYgMzMuNTAyM0w0NS40MTkxIDMwLjUwMjRDNDUuOTE3OCAzMC4wMDI0IDQ1LjkxNzggMjkuNTAyNCA0NS45MTc4IDI5LjAwMjRWMTIuOTk5OUM0NS45MjcyIDEyLjQ4NDQgNDUuNzkxNyAxMS45NzY2IDQ1LjUyNjkgMTEuNTM0NUM0NS4yNjIxIDExLjA5MjQgNDQuODc4NyAxMC43MzM5IDQ0LjQyMDMgMTAuNVoiIGZpbGw9IiMwRjE0MTAiLz4KPC9zdmc+Cg==";
|
|
24
|
+
this.provider = starknet_1.defaultProvider;
|
|
25
|
+
this.isConnected = false;
|
|
26
|
+
this.subscriptions = [];
|
|
27
|
+
this.request = (call) => {
|
|
28
|
+
throw Error("Not implemented");
|
|
29
|
+
};
|
|
30
|
+
this.enable = () => __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
const account = yield this.controller.connect();
|
|
32
|
+
if (!account) {
|
|
33
|
+
return [];
|
|
34
|
+
}
|
|
35
|
+
return [account.address];
|
|
36
|
+
});
|
|
37
|
+
this.isPreauthorized = () => __awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
return this.controller.ready().then(this.controller.probe).then(connected => !!connected);
|
|
39
|
+
});
|
|
40
|
+
this.on = (type, handler) => {
|
|
41
|
+
if (type === "accountsChanged") {
|
|
42
|
+
this.subscriptions.push({
|
|
43
|
+
type,
|
|
44
|
+
handler,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
else if (type === "networkChanged") {
|
|
48
|
+
this.subscriptions.push({
|
|
49
|
+
type,
|
|
50
|
+
handler,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
throw new Error(`Unknwown event: ${type}`);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
this.off = (type, handler) => {
|
|
58
|
+
if (type !== "accountsChanged" && type !== "networkChanged") {
|
|
59
|
+
throw new Error(`Unknwown event: ${type}`);
|
|
60
|
+
}
|
|
61
|
+
const idx = this.subscriptions.findIndex((userEvent) => userEvent.type === type && userEvent.handler === handler);
|
|
62
|
+
if (idx >= 0) {
|
|
63
|
+
this.subscriptions.splice(idx, 1);
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
this.controller = new _1.default();
|
|
67
|
+
this.controller.ready().then(isConnected => {
|
|
68
|
+
this.isConnected = !!isConnected;
|
|
69
|
+
if (this.controller.account) {
|
|
70
|
+
this.account = this.controller.account;
|
|
71
|
+
this.selectedAddress = this.account.address;
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.InjectedController = InjectedController;
|
|
77
|
+
function injectController() {
|
|
78
|
+
window.starknet_cartridge = new InjectedController();
|
|
79
|
+
}
|
|
80
|
+
exports.injectController = injectController;
|
|
81
|
+
//# sourceMappingURL=inject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inject.js","sourceRoot":"","sources":["../src/inject.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uCAAgF;AAChF,yCAA2B;AAmE3B,MAAa,kBAAkB;IAc3B;QAbO,OAAE,GAAG,WAAW,CAAC;QACjB,SAAI,GAAG,WAAW,CAAC;QACnB,YAAO,GAAG,OAAO,CAAA;QACjB,SAAI,GAAG,w/CAAw/C,CAAC;QAChgD,aAAQ,GAAG,0BAAe,CAAA;QAC1B,gBAAW,GAAY,KAAK,CAAC;QAI7B,kBAAa,GAAmB,EAAE,CAAA;QAezC,YAAO,GAAG,CAAC,IAAgC,EAAiC,EAAE;YAC1E,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAClC,CAAC,CAAA;QAED,WAAM,GAAG,GAA4B,EAAE;YACnC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAA;YAC/C,IAAI,CAAC,OAAO,EAAE;gBACV,OAAO,EAAE,CAAC;aACb;YAED,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC,CAAA,CAAC;QAEF,oBAAe,GAAG,GAA2B,EAAE;YAC3C,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC9F,CAAC,CAAA,CAAA;QAED,OAAE,GAAG,CAAC,IAAe,EAAE,OAAqB,EAAQ,EAAE;YAClD,IAAI,IAAI,KAAK,iBAAiB,EAAE;gBAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;oBACpB,IAAI;oBACJ,OAAO;iBACV,CAAC,CAAC;aACN;iBAAM,IAAI,IAAI,KAAK,gBAAgB,EAAE;gBAClC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;oBACpB,IAAI;oBACJ,OAAO;iBACV,CAAC,CAAC;aACN;iBAAM;gBACH,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;aAC9C;QACL,CAAC,CAAA;QAED,QAAG,GAAG,CAAC,IAAe,EAAE,OAAqB,EAAQ,EAAE;YACnD,IAAI,IAAI,KAAK,iBAAiB,IAAI,IAAI,KAAK,gBAAgB,EAAE;gBACzD,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;aAC9C;YAED,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CACpC,CAAC,SAAS,EAAE,EAAE,CACV,SAAS,CAAC,IAAI,KAAK,IAAI,IAAI,SAAS,CAAC,OAAO,KAAK,OAAO,CAC/D,CAAC;YAEF,IAAI,GAAG,IAAI,CAAC,EAAE;gBACV,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;aACrC;QACL,CAAC,CAAA;QAxDG,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YACvC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC;YACjC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;gBACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;gBACvC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;aAC/C;QACL,CAAC,CAAC,CAAA;IACN,CAAC;CAiDJ;AAxED,gDAwEC;AAED,SAAS,gBAAgB;IACpB,MAAc,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC;AAClE,CAAC;AAEQ,4CAAgB"}
|
package/lib/signer.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Signature, typedData } from "starknet";
|
|
2
2
|
import { Keychain } from "./types";
|
|
3
3
|
import { AsyncMethodReturns } from "@cartridge/penpal";
|
|
4
|
-
export declare class Signer
|
|
4
|
+
export declare class Signer {
|
|
5
5
|
private keychain;
|
|
6
6
|
private url;
|
|
7
7
|
constructor(keychain: AsyncMethodReturns<Keychain>, options?: {
|
|
@@ -23,19 +23,4 @@ export declare class Signer implements SignerInterface {
|
|
|
23
23
|
* @throws {Error} if the JSON object is not a valid JSON
|
|
24
24
|
*/
|
|
25
25
|
signMessage(typedData: typedData.TypedData, account: string): Promise<Signature>;
|
|
26
|
-
/**
|
|
27
|
-
* Signs a transaction with the starknet private key and returns the signature
|
|
28
|
-
*
|
|
29
|
-
* @param invocation the invocation object containing:
|
|
30
|
-
* - contractAddress - the address of the contract
|
|
31
|
-
* - entrypoint - the entrypoint of the contract
|
|
32
|
-
* - calldata - (defaults to []) the calldata
|
|
33
|
-
* - signature - (defaults to []) the signature
|
|
34
|
-
* @param abi (optional) the abi of the contract for better displaying
|
|
35
|
-
*
|
|
36
|
-
* @returns signature
|
|
37
|
-
*/
|
|
38
|
-
signTransaction(calls: Call[], transactionsDetail: InvocationsSignerDetails, abis?: Abi[]): Promise<Signature>;
|
|
39
|
-
signDeclareTransaction(details: DeclareSignerDetails): Promise<Signature>;
|
|
40
|
-
signDeployAccountTransaction(transaction: DeployAccountSignerDetails): Promise<Signature>;
|
|
41
26
|
}
|
package/lib/signer.js
CHANGED
|
@@ -48,37 +48,6 @@ class Signer {
|
|
|
48
48
|
return this.keychain.signMessage(typedData, account);
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
|
-
/**
|
|
52
|
-
* Signs a transaction with the starknet private key and returns the signature
|
|
53
|
-
*
|
|
54
|
-
* @param invocation the invocation object containing:
|
|
55
|
-
* - contractAddress - the address of the contract
|
|
56
|
-
* - entrypoint - the entrypoint of the contract
|
|
57
|
-
* - calldata - (defaults to []) the calldata
|
|
58
|
-
* - signature - (defaults to []) the signature
|
|
59
|
-
* @param abi (optional) the abi of the contract for better displaying
|
|
60
|
-
*
|
|
61
|
-
* @returns signature
|
|
62
|
-
*/
|
|
63
|
-
signTransaction(calls, transactionsDetail, abis) {
|
|
64
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
-
window.open(`${this.url}/sign?${query_string_1.default.stringify({
|
|
66
|
-
origin: window.origin,
|
|
67
|
-
calls: JSON.stringify(calls),
|
|
68
|
-
})}`, "_blank", "height=650,width=400");
|
|
69
|
-
return this.keychain.signTransaction(calls, transactionsDetail, abis);
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
signDeclareTransaction(details) {
|
|
73
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
74
|
-
return this.keychain.signDeclareTransaction(details);
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
signDeployAccountTransaction(transaction) {
|
|
78
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
-
return this.keychain.signDeployAccountTransaction(transaction);
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
51
|
}
|
|
83
52
|
exports.Signer = Signer;
|
|
84
53
|
//# sourceMappingURL=signer.js.map
|
package/lib/signer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAIA,gEAA8B;AAK9B,MAAa,MAAM;IAIf,YAAY,QAAsC,EAAE,OAEnD;QAJO,QAAG,GAAW,sBAAsB,CAAC;QAKzC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,EAAE;YACd,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;SAC1B;IACL,CAAC;IAED;;;;OAIG;IACI,SAAS;QACZ,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC9B,CAAC;IAED;;;;;;;;OAQG;IACU,WAAW,CAAC,SAA8B,EAAE,OAAe;;YACpE,MAAM,CAAC,IAAI,CACP,GAAG,IAAI,CAAC,GAAG,SAAS,sBAAE,CAAC,SAAS,CAAC;gBAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC;aAC7C,CAAC,EAAE,EACJ,QAAQ,EACR,sBAAsB,CACzB,CAAC;YAEF,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;KAAA;CACJ;AA5CD,wBA4CC"}
|
package/lib/types.d.ts
CHANGED
|
@@ -1,8 +1,17 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { Abi, Call, InvocationsDetails, typedData, InvokeFunctionResponse, Signature,
|
|
2
|
+
import { Abi, Call, InvocationsDetails, typedData, InvokeFunctionResponse, Signature, EstimateFeeDetails, EstimateFee, DeclareContractPayload } from "starknet";
|
|
3
|
+
import { StarknetChainId } from "starknet/dist/constants";
|
|
3
4
|
import { BigNumberish } from "starknet/dist/utils/number";
|
|
4
|
-
export declare type Assertion =
|
|
5
|
-
|
|
5
|
+
export declare type Assertion = {
|
|
6
|
+
id: string;
|
|
7
|
+
type: string;
|
|
8
|
+
rawId: string;
|
|
9
|
+
clientExtensionResults: AuthenticationExtensionsClientOutputs;
|
|
10
|
+
response: {
|
|
11
|
+
authenticatorData: string;
|
|
12
|
+
clientDataJSON: string;
|
|
13
|
+
signature: string;
|
|
14
|
+
};
|
|
6
15
|
};
|
|
7
16
|
export declare type Session = {
|
|
8
17
|
policies: Policy[];
|
|
@@ -26,7 +35,9 @@ export interface Keychain {
|
|
|
26
35
|
approvals(origin: string): Promise<Session | undefined>;
|
|
27
36
|
estimateDeclareFee(payload: DeclareContractPayload, details?: EstimateFeeDetails): Promise<EstimateFee>;
|
|
28
37
|
estimateInvokeFee(calls: Call | Call[], estimateFeeDetails?: EstimateFeeDetails): Promise<EstimateFee>;
|
|
29
|
-
execute(calls: Call | Call[], abis?: Abi[], transactionsDetail?: InvocationsDetails
|
|
38
|
+
execute(calls: Call | Call[], abis?: Abi[], transactionsDetail?: InvocationsDetails & {
|
|
39
|
+
chainId?: StarknetChainId;
|
|
40
|
+
}, sync?: boolean): Promise<InvokeFunctionResponse>;
|
|
30
41
|
provision(address: string): Promise<string>;
|
|
31
42
|
register(username: string, credential: {
|
|
32
43
|
x: string;
|
|
@@ -48,7 +59,4 @@ export interface Keychain {
|
|
|
48
59
|
[key: string]: Session;
|
|
49
60
|
}>;
|
|
50
61
|
signMessage(typedData: typedData.TypedData, account: string): Promise<Signature>;
|
|
51
|
-
signTransaction(transactions: Call[], transactionsDetail: InvocationsSignerDetails, abis?: Abi[]): Promise<Signature>;
|
|
52
|
-
signDeclareTransaction(details: DeclareSignerDetails): Promise<Signature>;
|
|
53
|
-
signDeployAccountTransaction(transaction: DeployAccountSignerDetails): Promise<Signature>;
|
|
54
62
|
}
|