@hashgraph/hedera-wallet-connect 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- package/.editorconfig +19 -0
- package/.github/workflows/npm-publish.yml +18 -0
- package/LICENSE +21 -0
- package/README.md +119 -0
- package/lib/esm/Connector.js +81 -0
- package/lib/esm/Connector.js.map +1 -0
- package/lib/esm/DAppConnector.js +118 -0
- package/lib/esm/DAppConnector.js.map +1 -0
- package/lib/esm/ErrorHelper.js +97 -0
- package/lib/esm/ErrorHelper.js.map +1 -0
- package/lib/esm/Utils.js +99 -0
- package/lib/esm/Utils.js.map +1 -0
- package/lib/esm/WCSigner.js +241 -0
- package/lib/esm/WCSigner.js.map +1 -0
- package/lib/esm/WalletConnector.js +203 -0
- package/lib/esm/WalletConnector.js.map +1 -0
- package/lib/esm/index.js +4 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/types/Connector.d.ts +18 -0
- package/lib/esm/types/Connector.d.ts.map +1 -0
- package/lib/esm/types/DAppConnector.d.ts +27 -0
- package/lib/esm/types/DAppConnector.d.ts.map +1 -0
- package/lib/esm/types/ErrorHelper.d.ts +15 -0
- package/lib/esm/types/ErrorHelper.d.ts.map +1 -0
- package/lib/esm/types/Utils.d.ts +39 -0
- package/lib/esm/types/Utils.d.ts.map +1 -0
- package/lib/esm/types/WCSigner.d.ts +33 -0
- package/lib/esm/types/WCSigner.d.ts.map +1 -0
- package/lib/esm/types/WalletConnector.d.ts +21 -0
- package/lib/esm/types/WalletConnector.d.ts.map +1 -0
- package/lib/esm/types/index.d.ts +4 -0
- package/lib/esm/types/index.d.ts.map +1 -0
- package/package.json +41 -0
@@ -0,0 +1,33 @@
|
|
1
|
+
import type { Signer } from '@hashgraph/sdk';
|
2
|
+
import { AccountBalance, AccountId, AccountInfo, Executable, Key, LedgerId, SignerSignature, Transaction, TransactionRecord } from "@hashgraph/sdk";
|
3
|
+
import { ISignClient } from "@walletconnect/types";
|
4
|
+
/**
|
5
|
+
* Implements Hedera Signer interface.
|
6
|
+
* https://hips.hedera.com/hip/hip-338
|
7
|
+
*/
|
8
|
+
export declare class WCSigner implements Signer {
|
9
|
+
private readonly accountId;
|
10
|
+
private readonly client;
|
11
|
+
private readonly topic;
|
12
|
+
private readonly ledgerId;
|
13
|
+
private extensionMethods;
|
14
|
+
constructor(accountId: AccountId, client: ISignClient, topic: string, ledgerId?: LedgerId, extensionMethods?: string[]);
|
15
|
+
private wrappedRequest;
|
16
|
+
getAccountId(): AccountId;
|
17
|
+
getAccountKey(): Promise<Key>;
|
18
|
+
getLedgerId(): LedgerId;
|
19
|
+
getNetwork(): Promise<{
|
20
|
+
[key: string]: (string | AccountId);
|
21
|
+
}>;
|
22
|
+
getMirrorNetwork(): Promise<string[]>;
|
23
|
+
sign(messages: Uint8Array[], signOptions?: Record<string, any>): Promise<SignerSignature[]>;
|
24
|
+
private extensionMethodCall;
|
25
|
+
getAccountBalance(): Promise<AccountBalance>;
|
26
|
+
getAccountInfo(): Promise<AccountInfo>;
|
27
|
+
getAccountRecords(): Promise<TransactionRecord[]>;
|
28
|
+
signTransaction<T extends Transaction>(transaction: T): Promise<T>;
|
29
|
+
checkTransaction<T extends Transaction>(transaction: T): Promise<T>;
|
30
|
+
populateTransaction<T extends Transaction>(transaction: T): Promise<T>;
|
31
|
+
call<RequestT, ResponseT, OutputT>(request: Executable<RequestT, ResponseT, OutputT>): Promise<OutputT>;
|
32
|
+
}
|
33
|
+
//# sourceMappingURL=WCSigner.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"WCSigner.d.ts","sourceRoot":"","sources":["../../../src/WCSigner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EACL,cAAc,EACd,SAAS,EACT,WAAW,EACX,UAAU,EACV,GAAG,EACH,QAAQ,EACR,eAAe,EACf,WAAW,EAEX,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAyCjD;;;GAGG;AACH,qBACa,QAAS,YAAW,MAAM;IAEjC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,gBAAgB;gBAJP,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,QAA2B,EAC9C,gBAAgB,GAAE,MAAM,EAAO;IAS3C,OAAO,CAAC,cAAc;IAiBtB,YAAY,IAAI,SAAS;IAInB,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC;IAanC,WAAW,IAAI,QAAQ;IAIjB,UAAU,IAAI,OAAO,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;KAAC,CAAC;IAa5D,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAarC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAiBnF,mBAAmB;IAejC,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC;IAa5C,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAatC,iBAAiB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAa3C,eAAe,CAAC,CAAC,SAAS,WAAW,EAAE,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAgBlE,gBAAgB,CAAC,CAAC,SAAS,WAAW,EAAE,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAiCnE,mBAAmB,CAAC,CAAC,SAAS,WAAW,EAAE,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAYtE,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CAgC9G"}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { Signer } from "@hashgraph/sdk";
|
2
|
+
import { EngineTypes, PairingTypes, SessionTypes, SignClientTypes } from "@walletconnect/types";
|
3
|
+
import { Connector } from "./Connector.js";
|
4
|
+
import ApproveParams = EngineTypes.ApproveParams;
|
5
|
+
import RejectParams = EngineTypes.RejectParams;
|
6
|
+
type ProposalCallback = (proposal: SignClientTypes.EventArguments["session_proposal"]) => Promise<void>;
|
7
|
+
export declare class WalletConnector extends Connector {
|
8
|
+
onProposalReceive: ProposalCallback;
|
9
|
+
constructor(metadata?: SignClientTypes.Metadata);
|
10
|
+
init(onProposalReceive: ProposalCallback): Promise<void>;
|
11
|
+
pair(uri: string): Promise<PairingTypes.Struct>;
|
12
|
+
private subscribeToEvents;
|
13
|
+
private destroySession;
|
14
|
+
private onSessionRequest;
|
15
|
+
private onSessionProposal;
|
16
|
+
approveSessionProposal<T extends Signer>(data: ApproveParams, signers: T[]): Promise<SessionTypes.Struct>;
|
17
|
+
rejectSessionProposal(data: RejectParams): Promise<void>;
|
18
|
+
sendEvent(name: string, data: any): Promise<void>;
|
19
|
+
}
|
20
|
+
export {};
|
21
|
+
//# sourceMappingURL=WalletConnector.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"WalletConnector.d.ts","sourceRoot":"","sources":["../../../src/WalletConnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,MAAM,EAA+B,MAAM,gBAAgB,CAAC;AAG3E,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAE9F,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACzC,OAAO,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;AACjD,OAAO,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;AAG/C,KAAK,gBAAgB,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,cAAc,CAAC,kBAAkB,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAExG,qBAAa,eAAgB,SAAQ,SAAS;IACrC,iBAAiB,EAAE,gBAAgB,CAAC;gBAE/B,QAAQ,CAAC,EAAE,eAAe,CAAC,QAAQ;IAIlC,IAAI,CAAC,iBAAiB,EAAE,gBAAgB;IAgBxC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC;IAQ5D,OAAO,CAAC,iBAAiB;YAUX,cAAc;YAId,gBAAgB;YA2HhB,iBAAiB;IAIlB,sBAAsB,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC;IAkBzG,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAa/D"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAA"}
|
package/package.json
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
{
|
2
|
+
"name": "@hashgraph/hedera-wallet-connect",
|
3
|
+
"version": "0.1.0",
|
4
|
+
"type": "module",
|
5
|
+
"exports": {
|
6
|
+
".": {
|
7
|
+
"types": "./lib/esm/types/index.d.ts",
|
8
|
+
"import": "./lib/esm/index.js"
|
9
|
+
}
|
10
|
+
},
|
11
|
+
"types": "./lib/esm/types/index.d.ts",
|
12
|
+
"main": "./lib/esm/index.js",
|
13
|
+
"author": "Blade Labs",
|
14
|
+
"license": "MIT",
|
15
|
+
"repository": {
|
16
|
+
"type": "git",
|
17
|
+
"url": "https://github.com/hashgraph/hedera-wallet-connect"
|
18
|
+
},
|
19
|
+
"scripts": {
|
20
|
+
"clean": "rimraf lib",
|
21
|
+
"build": "npm run clean && npm run build:esm",
|
22
|
+
"build:esm": "tsc",
|
23
|
+
"prepack": "npm run build"
|
24
|
+
},
|
25
|
+
"dependencies": {
|
26
|
+
"@json-rpc-tools/utils": "^2.0.0-beta.12",
|
27
|
+
"@hashgraph/sdk": "^2.19.1",
|
28
|
+
"@walletconnect/core": "^2.1.3",
|
29
|
+
"@walletconnect/types": "^2.1.3",
|
30
|
+
"@walletconnect/sign-client": "^2.1.3",
|
31
|
+
"@walletconnect/qrcode-modal": "^2.0.0-alpha.20",
|
32
|
+
"buffer": "^6.0.3",
|
33
|
+
"events": "^3.3.0",
|
34
|
+
"rxjs": "^7.5.7"
|
35
|
+
},
|
36
|
+
"devDependencies": {
|
37
|
+
"rimraf": "^3.0.2",
|
38
|
+
"typescript": "^4.9.3",
|
39
|
+
"tslint": "^6.1.3"
|
40
|
+
}
|
41
|
+
}
|