@ckb-ccc/utxo-global 1.0.33 → 1.1.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.
Files changed (72) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/advanced.d.mts +2 -0
  3. package/dist/advanced.mjs +1 -0
  4. package/dist/advancedBarrel-C6-MvbTQ.d.mts +28 -0
  5. package/dist/advancedBarrel-C6-MvbTQ.d.mts.map +1 -0
  6. package/dist/advancedBarrel.d.mts +2 -0
  7. package/dist/advancedBarrel.mjs +2 -0
  8. package/dist/advancedBarrel.mjs.map +1 -0
  9. package/dist/barrel-B9Y4t3uV.mjs +2 -0
  10. package/dist/barrel-B9Y4t3uV.mjs.map +1 -0
  11. package/dist/barrel.d.mts +81 -0
  12. package/dist/barrel.d.mts.map +1 -0
  13. package/dist/barrel.mjs +1 -0
  14. package/dist/index.d.mts +2 -0
  15. package/dist/index.mjs +1 -0
  16. package/dist/rolldown-runtime-DK3Fl9T5.mjs +1 -0
  17. package/dist.commonjs/advanced.d.ts +2 -2
  18. package/dist.commonjs/advanced.js +1 -37
  19. package/dist.commonjs/advancedBarrel-E-x_uQzK.d.ts +28 -0
  20. package/dist.commonjs/advancedBarrel-E-x_uQzK.d.ts.map +1 -0
  21. package/dist.commonjs/advancedBarrel.d.ts +2 -21
  22. package/dist.commonjs/advancedBarrel.js +2 -2
  23. package/dist.commonjs/advancedBarrel.js.map +1 -0
  24. package/dist.commonjs/barrel-6nvDT30n.js +2 -0
  25. package/dist.commonjs/barrel-6nvDT30n.js.map +1 -0
  26. package/dist.commonjs/barrel.d.ts +80 -3
  27. package/dist.commonjs/barrel.d.ts.map +1 -1
  28. package/dist.commonjs/barrel.js +1 -19
  29. package/dist.commonjs/index.d.ts +2 -2
  30. package/dist.commonjs/index.js +1 -37
  31. package/dist.commonjs/rolldown-runtime-BIInC43l.js +1 -0
  32. package/package.json +26 -29
  33. package/tsdown.config.mts +43 -0
  34. package/dist/advanced.d.ts +0 -2
  35. package/dist/advanced.d.ts.map +0 -1
  36. package/dist/advanced.js +0 -1
  37. package/dist/advancedBarrel.d.ts +0 -21
  38. package/dist/advancedBarrel.d.ts.map +0 -1
  39. package/dist/advancedBarrel.js +0 -1
  40. package/dist/barrel.d.ts +0 -4
  41. package/dist/barrel.d.ts.map +0 -1
  42. package/dist/barrel.js +0 -3
  43. package/dist/btc/index.d.ts +0 -39
  44. package/dist/btc/index.d.ts.map +0 -1
  45. package/dist/btc/index.js +0 -117
  46. package/dist/ckb/index.d.ts +0 -30
  47. package/dist/ckb/index.d.ts.map +0 -1
  48. package/dist/ckb/index.js +0 -92
  49. package/dist/doge/index.d.ts +0 -22
  50. package/dist/doge/index.d.ts.map +0 -1
  51. package/dist/doge/index.js +0 -84
  52. package/dist/index.d.ts +0 -2
  53. package/dist/index.d.ts.map +0 -1
  54. package/dist/index.js +0 -1
  55. package/dist/signersFactory.d.ts +0 -6
  56. package/dist/signersFactory.d.ts.map +0 -1
  57. package/dist/signersFactory.js +0 -26
  58. package/dist.commonjs/advanced.d.ts.map +0 -1
  59. package/dist.commonjs/advancedBarrel.d.ts.map +0 -1
  60. package/dist.commonjs/btc/index.d.ts +0 -39
  61. package/dist.commonjs/btc/index.d.ts.map +0 -1
  62. package/dist.commonjs/btc/index.js +0 -121
  63. package/dist.commonjs/ckb/index.d.ts +0 -30
  64. package/dist.commonjs/ckb/index.d.ts.map +0 -1
  65. package/dist.commonjs/ckb/index.js +0 -96
  66. package/dist.commonjs/doge/index.d.ts +0 -22
  67. package/dist.commonjs/doge/index.d.ts.map +0 -1
  68. package/dist.commonjs/doge/index.js +0 -88
  69. package/dist.commonjs/index.d.ts.map +0 -1
  70. package/dist.commonjs/signersFactory.d.ts +0 -6
  71. package/dist.commonjs/signersFactory.d.ts.map +0 -1
  72. package/dist.commonjs/signersFactory.js +0 -29
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ckb-ccc/utxo-global",
3
- "version": "1.0.33",
3
+ "version": "1.1.1",
4
4
  "description": "Common Chains Connector's support for UTXO Global",
5
5
  "author": "Trong Dinh <trong@nexm.io>",
6
6
  "license": "MIT",
@@ -11,50 +11,47 @@
11
11
  "url": "git://github.com/ckb-devrel/ccc.git"
12
12
  },
13
13
  "sideEffects": false,
14
- "main": "dist.commonjs/index.js",
15
- "module": "dist/index.js",
14
+ "main": "./dist.commonjs/index.js",
15
+ "module": "./dist/index.mjs",
16
16
  "exports": {
17
17
  ".": {
18
- "import": "./dist/index.js",
19
- "require": "./dist.commonjs/index.js",
20
- "default": "./dist.commonjs/index.js"
18
+ "import": "./dist/index.mjs",
19
+ "require": "./dist.commonjs/index.js"
21
20
  },
22
- "./barrel": {
23
- "import": "./dist/barrel.js",
24
- "require": "./dist.commonjs/barrel.js",
25
- "default": "./dist.commonjs/barrel.js"
21
+ "./advanced": {
22
+ "import": "./dist/advanced.mjs",
23
+ "require": "./dist.commonjs/advanced.js"
26
24
  },
27
25
  "./advancedBarrel": {
28
- "import": "./dist/advancedBarrel.js",
29
- "require": "./dist.commonjs/advancedBarrel.js",
30
- "default": "./dist.commonjs/advancedBarrel.js"
26
+ "import": "./dist/advancedBarrel.mjs",
27
+ "require": "./dist.commonjs/advancedBarrel.js"
31
28
  },
32
- "./advanced": {
33
- "import": "./dist/advanced.js",
34
- "require": "./dist.commonjs/advanced.js",
35
- "default": "./dist.commonjs/advanced.js"
36
- }
29
+ "./barrel": {
30
+ "import": "./dist/barrel.mjs",
31
+ "require": "./dist.commonjs/barrel.js"
32
+ },
33
+ "./package.json": "./package.json"
37
34
  },
38
35
  "devDependencies": {
39
- "@eslint/js": "^9.34.0",
40
- "copyfiles": "^2.4.1",
41
- "eslint": "^9.34.0",
36
+ "@eslint/js": "^10.0.1",
37
+ "eslint": "^10.5.0",
42
38
  "eslint-config-prettier": "^10.1.8",
43
- "eslint-plugin-prettier": "^5.5.4",
44
- "prettier": "^3.6.2",
45
- "prettier-plugin-organize-imports": "^4.2.0",
46
- "rimraf": "^6.0.1",
47
- "typescript": "^5.9.2",
48
- "typescript-eslint": "^8.41.0"
39
+ "eslint-plugin-prettier": "^5.5.6",
40
+ "prettier": "^3.8.4",
41
+ "prettier-plugin-organize-imports": "^4.3.0",
42
+ "typescript": "^6.0.3",
43
+ "typescript-eslint": "^8.61.1"
49
44
  },
50
45
  "publishConfig": {
51
46
  "access": "public"
52
47
  },
53
48
  "dependencies": {
54
- "@ckb-ccc/core": "1.13.0"
49
+ "tsdown": "^0.22.3",
50
+ "@ckb-ccc/core": "1.15.0"
55
51
  },
52
+ "types": "./dist.commonjs/index.d.ts",
56
53
  "scripts": {
57
- "build": "rimraf ./dist && rimraf ./dist.commonjs && tsc && tsc --project tsconfig.commonjs.json && copyfiles -u 2 misc/basedirs/**/* .",
54
+ "build": "tsdown",
58
55
  "lint": "eslint ./src",
59
56
  "format": "prettier --write . && eslint --fix ./src"
60
57
  }
@@ -0,0 +1,43 @@
1
+ import { defineConfig } from "tsdown";
2
+
3
+ const common = {
4
+ minify: true,
5
+ dts: true,
6
+ platform: "neutral" as const,
7
+ sourcemap: true,
8
+ exports: true,
9
+ };
10
+
11
+ const entry = {
12
+ index: "src/index.ts",
13
+ barrel: "src/barrel.ts",
14
+ advanced: "src/advanced.ts",
15
+ advancedBarrel: "src/advancedBarrel.ts",
16
+ } as const;
17
+
18
+ const bundleDeps: string[] = [];
19
+
20
+ export default defineConfig(
21
+ (
22
+ [
23
+ {
24
+ entry,
25
+ deps: {
26
+ onlyBundle: [] as string[],
27
+ },
28
+ format: "esm",
29
+ copy: "./misc/basedirs/dist/*",
30
+ },
31
+ {
32
+ entry,
33
+ deps: {
34
+ alwaysBundle: bundleDeps,
35
+ onlyBundle: bundleDeps,
36
+ },
37
+ format: "cjs",
38
+ outDir: "dist.commonjs",
39
+ copy: "./misc/basedirs/dist.commonjs/*",
40
+ },
41
+ ] as const
42
+ ).map((c) => ({ ...c, ...common })),
43
+ );
@@ -1,2 +0,0 @@
1
- export * as UtxoGlobalA from "./advancedBarrel.js";
2
- //# sourceMappingURL=advanced.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"advanced.d.ts","sourceRoot":"","sources":["../src/advanced.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,qBAAqB,CAAC"}
package/dist/advanced.js DELETED
@@ -1 +0,0 @@
1
- export * as UtxoGlobalA from "./advancedBarrel.js";
@@ -1,21 +0,0 @@
1
- import { ccc } from "@ckb-ccc/core";
2
- export interface Provider {
3
- requestAccounts(): Promise<string[]>;
4
- getAccount(): Promise<string[]>;
5
- getPublicKey(): Promise<{
6
- address: string;
7
- publicKey: string;
8
- }[]>;
9
- connect(): Promise<void>;
10
- isConnected(): Promise<boolean>;
11
- signMessage(msg: string, address: string): Promise<string>;
12
- signTransaction(tx: ccc.TransactionLike): Promise<ccc.TransactionLike>;
13
- getNetwork(): Promise<string>;
14
- switchNetwork(network: string): Promise<void>;
15
- on: OnMethod;
16
- removeListener(eventName: string, listener: (...args: unknown[]) => unknown): Provider;
17
- }
18
- export interface OnMethod {
19
- (eventName: string, listener: (...args: unknown[]) => unknown): Provider;
20
- }
21
- //# sourceMappingURL=advancedBarrel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"advancedBarrel.d.ts","sourceRoot":"","sources":["../src/advancedBarrel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC,MAAM,WAAW,QAAQ;IACvB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAChC,YAAY,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;IAClE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3D,eAAe,CAAC,EAAE,EAAE,GAAG,CAAC,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAEvE,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C,EAAE,EAAE,QAAQ,CAAC;IACb,cAAc,CACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GACxC,QAAQ,CAAC;CACb;AAED,MAAM,WAAW,QAAQ;IACvB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAAG,QAAQ,CAAC;CAC1E"}
@@ -1 +0,0 @@
1
- export {};
package/dist/barrel.d.ts DELETED
@@ -1,4 +0,0 @@
1
- export * from "./btc/index.js";
2
- export * from "./ckb/index.js";
3
- export * from "./signersFactory.js";
4
- //# sourceMappingURL=barrel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"barrel.d.ts","sourceRoot":"","sources":["../src/barrel.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC"}
package/dist/barrel.js DELETED
@@ -1,3 +0,0 @@
1
- export * from "./btc/index.js";
2
- export * from "./ckb/index.js";
3
- export * from "./signersFactory.js";
@@ -1,39 +0,0 @@
1
- import { ccc } from "@ckb-ccc/core";
2
- import { Provider } from "../advancedBarrel.js";
3
- /**
4
- * @public
5
- */
6
- export declare class SignerBtc extends ccc.SignerBtc {
7
- readonly provider: Provider;
8
- private readonly preferredNetworks;
9
- private accountCache;
10
- constructor(client: ccc.Client, provider: Provider, preferredNetworks?: ccc.NetworkPreference[]);
11
- getBtcAccount(): Promise<string>;
12
- getBtcPublicKey(): Promise<ccc.Hex>;
13
- /**
14
- * Ensure the BTC network is the same as CKB network.
15
- */
16
- ensureNetwork(): Promise<void>;
17
- _getNetworkToChange(): Promise<string | undefined>;
18
- onReplaced(listener: () => void): () => void;
19
- connect(): Promise<void>;
20
- isConnected(): Promise<boolean>;
21
- signMessageRaw(message: string | ccc.BytesLike): Promise<string>;
22
- /**
23
- * Signs a PSBT using UTXO Global wallet.
24
- *
25
- * @param psbtHex - The hex string of PSBT to sign.
26
- * @param options - Options for signing the PSBT
27
- * @returns A promise that resolves to the signed PSBT as a Hex string
28
- */
29
- signPsbt(_psbtHex: ccc.HexLike, _options?: ccc.SignPsbtOptionsLike): Promise<ccc.Hex>;
30
- /**
31
- * Broadcasts a signed PSBT to the Bitcoin network.
32
- *
33
- * @param psbtHex - The hex string of signed PSBT to broadcast.
34
- * @returns A promise that resolves to the transaction ID as a Hex string
35
- * @todo Implement PSBT broadcasting with UTXO Global
36
- */
37
- broadcastPsbt(_psbtHex: ccc.HexLike, _options?: ccc.SignPsbtOptionsLike): Promise<ccc.Hex>;
38
- }
39
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/btc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;GAEG;AACH,qBAAa,SAAU,SAAQ,GAAG,CAAC,SAAS;aAKxB,QAAQ,EAAE,QAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IALpC,OAAO,CAAC,YAAY,CAAqB;gBAGvC,MAAM,EAAE,GAAG,CAAC,MAAM,EACF,QAAQ,EAAE,QAAQ,EACjB,iBAAiB,GAAE,GAAG,CAAC,iBAAiB,EAWxD;IAKG,aAAa;IAMb,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;IAYzC;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAuB9B,mBAAmB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAmBxD,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAiBtC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAKxB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ/B,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAStE;;;;;;OAMG;IACG,QAAQ,CACZ,QAAQ,EAAE,GAAG,CAAC,OAAO,EACrB,QAAQ,CAAC,EAAE,GAAG,CAAC,mBAAmB,GACjC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;IAInB;;;;;;OAMG;IACG,aAAa,CACjB,QAAQ,EAAE,GAAG,CAAC,OAAO,EACrB,QAAQ,CAAC,EAAE,GAAG,CAAC,mBAAmB,GACjC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;CAGpB"}
package/dist/btc/index.js DELETED
@@ -1,117 +0,0 @@
1
- import { ccc } from "@ckb-ccc/core";
2
- /**
3
- * @public
4
- */
5
- export class SignerBtc extends ccc.SignerBtc {
6
- constructor(client, provider, preferredNetworks = [
7
- {
8
- addressPrefix: "ckb",
9
- signerType: ccc.SignerType.BTC,
10
- network: "btc",
11
- },
12
- {
13
- addressPrefix: "ckt",
14
- signerType: ccc.SignerType.BTC,
15
- network: "btcTestnet",
16
- },
17
- ]) {
18
- super(client);
19
- this.provider = provider;
20
- this.preferredNetworks = preferredNetworks;
21
- }
22
- async getBtcAccount() {
23
- const accounts = await this.provider.getAccount();
24
- this.accountCache = accounts[0];
25
- return this.accountCache;
26
- }
27
- async getBtcPublicKey() {
28
- const pubKeys = await this.provider.getPublicKey();
29
- const account = await this.getBtcAccount();
30
- const pubKey = pubKeys.find((p) => p.address === account);
31
- if (!pubKey) {
32
- throw new Error("pubKey not found");
33
- }
34
- return ccc.hexFrom(pubKey.publicKey);
35
- }
36
- /**
37
- * Ensure the BTC network is the same as CKB network.
38
- */
39
- async ensureNetwork() {
40
- const network = await this._getNetworkToChange();
41
- if (!network) {
42
- return;
43
- }
44
- const chain = {
45
- btc: "btc",
46
- btcTestnet: "btc_testnet",
47
- btcTestnet4: "btc_testnet_4",
48
- btcSignet: "btc_signet",
49
- }[network];
50
- if (chain) {
51
- await this.provider.switchNetwork(chain);
52
- return;
53
- }
54
- throw new Error(`UTXO Global wallet doesn't support the requested chain ${network}`);
55
- }
56
- async _getNetworkToChange() {
57
- const currentNetwork = {
58
- btc: "btc",
59
- btc_testnet: "btcTestnet",
60
- btc_testnet_4: "btcTestnet4",
61
- btc_signet: "btcSignet",
62
- }[await this.provider.getNetwork()];
63
- const { network } = this.matchNetworkPreference(this.preferredNetworks, currentNetwork) ?? { network: currentNetwork };
64
- if (network === currentNetwork) {
65
- return;
66
- }
67
- return network;
68
- }
69
- onReplaced(listener) {
70
- const stop = [];
71
- const replacer = async () => {
72
- listener();
73
- stop[0]?.();
74
- };
75
- stop.push(() => {
76
- this.provider.removeListener("accountsChanged", replacer);
77
- this.provider.removeListener("networkChanged", replacer);
78
- });
79
- this.provider.on("accountsChanged", replacer);
80
- this.provider.on("networkChanged", replacer);
81
- return stop[0];
82
- }
83
- async connect() {
84
- await this.provider.connect();
85
- await this.ensureNetwork();
86
- }
87
- async isConnected() {
88
- if ((await this._getNetworkToChange()) !== undefined) {
89
- return false;
90
- }
91
- return await this.provider.isConnected();
92
- }
93
- async signMessageRaw(message) {
94
- const challenge = typeof message === "string" ? message : ccc.hexFrom(message).slice(2);
95
- return this.provider.signMessage(challenge, this.accountCache ?? (await this.getBtcAccount()));
96
- }
97
- /**
98
- * Signs a PSBT using UTXO Global wallet.
99
- *
100
- * @param psbtHex - The hex string of PSBT to sign.
101
- * @param options - Options for signing the PSBT
102
- * @returns A promise that resolves to the signed PSBT as a Hex string
103
- */
104
- async signPsbt(_psbtHex, _options) {
105
- throw new Error("UTXO Global PSBT signing not implemented yet");
106
- }
107
- /**
108
- * Broadcasts a signed PSBT to the Bitcoin network.
109
- *
110
- * @param psbtHex - The hex string of signed PSBT to broadcast.
111
- * @returns A promise that resolves to the transaction ID as a Hex string
112
- * @todo Implement PSBT broadcasting with UTXO Global
113
- */
114
- async broadcastPsbt(_psbtHex, _options) {
115
- throw new Error("UTXO Global PSBT broadcasting not implemented yet");
116
- }
117
- }
@@ -1,30 +0,0 @@
1
- import { ccc } from "@ckb-ccc/core";
2
- import { Provider } from "../advancedBarrel.js";
3
- /**
4
- * @public
5
- */
6
- export declare class SignerCkb extends ccc.Signer {
7
- readonly provider: Provider;
8
- private accountCache;
9
- get type(): ccc.SignerType;
10
- /**
11
- * Gets the sign type.
12
- * @returns The sign type.
13
- */
14
- get signType(): ccc.SignerSignType;
15
- constructor(client: ccc.Client, provider: Provider);
16
- getInternalAddress(): Promise<string>;
17
- getIdentity(): Promise<string>;
18
- getAddressObj(): Promise<ccc.Address>;
19
- getAddressObjs(): Promise<ccc.Address[]>;
20
- getAccount(): Promise<string>;
21
- getPublicKey(): Promise<ccc.Hex>;
22
- get ckbNetwork(): string;
23
- connect(): Promise<void>;
24
- onReplaced(listener: () => void): () => void;
25
- isConnected(): Promise<boolean>;
26
- signMessageRaw(message: string | ccc.BytesLike): Promise<string>;
27
- signOnlyTransaction(txLike: ccc.TransactionLike): Promise<ccc.Transaction>;
28
- prepareTransaction(txLike: ccc.TransactionLike): Promise<ccc.Transaction>;
29
- }
30
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ckb/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;GAEG;AACH,qBAAa,SAAU,SAAQ,GAAG,CAAC,MAAM;aAgBrB,QAAQ,EAAE,QAAQ;IAfpC,OAAO,CAAC,YAAY,CAAqB;IACzC,IAAI,IAAI,IAAI,GAAG,CAAC,UAAU,CAEzB;IAED;;;OAGG;IACH,IAAI,QAAQ,IAAI,GAAG,CAAC,cAAc,CAEjC;gBAGC,MAAM,EAAE,GAAG,CAAC,MAAM,EACF,QAAQ,EAAE,QAAQ;IAKpC,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/B,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;IAKrC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IAIxC,UAAU;IAMV,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;IAYtC,IAAI,UAAU,IAAI,MAAM,CAEvB;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAiBtC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ/B,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAUhE,mBAAmB,CACvB,MAAM,EAAE,GAAG,CAAC,eAAe,GAC1B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAKrB,kBAAkB,CACtB,MAAM,EAAE,GAAG,CAAC,eAAe,GAC1B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;CAW5B"}
package/dist/ckb/index.js DELETED
@@ -1,92 +0,0 @@
1
- import { ccc } from "@ckb-ccc/core";
2
- /**
3
- * @public
4
- */
5
- export class SignerCkb extends ccc.Signer {
6
- get type() {
7
- return ccc.SignerType.CKB;
8
- }
9
- /**
10
- * Gets the sign type.
11
- * @returns The sign type.
12
- */
13
- get signType() {
14
- return ccc.SignerSignType.CkbSecp256k1;
15
- }
16
- constructor(client, provider) {
17
- super(client);
18
- this.provider = provider;
19
- }
20
- getInternalAddress() {
21
- return this.getAccount();
22
- }
23
- async getIdentity() {
24
- return this.getPublicKey();
25
- }
26
- async getAddressObj() {
27
- const address = await this.getInternalAddress();
28
- return ccc.Address.fromString(address, this.client);
29
- }
30
- async getAddressObjs() {
31
- return [await this.getAddressObj()];
32
- }
33
- async getAccount() {
34
- const accounts = await this.provider.getAccount();
35
- this.accountCache = accounts[0];
36
- return this.accountCache;
37
- }
38
- async getPublicKey() {
39
- const pubKeys = await this.provider.getPublicKey();
40
- const account = await this.getAccount();
41
- const pubKey = pubKeys.find((p) => p.address === account);
42
- if (!pubKey) {
43
- throw new Error("pubKey not found");
44
- }
45
- return ccc.hexFrom(pubKey.publicKey);
46
- }
47
- get ckbNetwork() {
48
- return this.client.addressPrefix === "ckb" ? "nervos" : "nervos_testnet";
49
- }
50
- async connect() {
51
- await this.provider.connect();
52
- if (this.ckbNetwork === (await this.provider.getNetwork())) {
53
- return;
54
- }
55
- await this.provider.switchNetwork(this.ckbNetwork);
56
- }
57
- onReplaced(listener) {
58
- const stop = [];
59
- const replacer = async () => {
60
- listener();
61
- stop[0]?.();
62
- };
63
- stop.push(() => {
64
- this.provider.removeListener("accountsChanged", replacer);
65
- this.provider.removeListener("networkChanged", replacer);
66
- });
67
- this.provider.on("accountsChanged", replacer);
68
- this.provider.on("networkChanged", replacer);
69
- return stop[0];
70
- }
71
- async isConnected() {
72
- if ((await this.provider.getNetwork()) !== this.ckbNetwork) {
73
- return false;
74
- }
75
- return await this.provider.isConnected();
76
- }
77
- async signMessageRaw(message) {
78
- const challenge = typeof message === "string" ? message : ccc.hexFrom(message).slice(2);
79
- return this.provider.signMessage(challenge, this.accountCache ?? (await this.getAccount()));
80
- }
81
- async signOnlyTransaction(txLike) {
82
- const txSigned = await this.provider.signTransaction(txLike);
83
- return ccc.Transaction.from(txSigned);
84
- }
85
- async prepareTransaction(txLike) {
86
- const tx = ccc.Transaction.from(txLike);
87
- const { script } = await this.getAddressObj();
88
- await tx.addCellDepsOfKnownScripts(this.client, ccc.KnownScript.Secp256k1Blake160);
89
- await tx.prepareSighashAllWitness(script, 65, this.client);
90
- return tx;
91
- }
92
- }
@@ -1,22 +0,0 @@
1
- import { ccc } from "@ckb-ccc/core";
2
- import { Provider } from "../advancedBarrel.js";
3
- /**
4
- * @public
5
- */
6
- export declare class SignerDoge extends ccc.SignerDoge {
7
- readonly provider: Provider;
8
- private readonly preferredNetworks;
9
- private accountCache;
10
- constructor(client: ccc.Client, provider: Provider, preferredNetworks?: ccc.NetworkPreference[]);
11
- getDogeAddress(): Promise<string>;
12
- /**
13
- * Ensure the BTC network is the same as CKB network.
14
- */
15
- ensureNetwork(): Promise<void>;
16
- _getNetworkToChange(): Promise<string | undefined>;
17
- onReplaced(listener: () => void): () => void;
18
- connect(): Promise<void>;
19
- isConnected(): Promise<boolean>;
20
- signMessageRaw(message: string | ccc.BytesLike): Promise<string>;
21
- }
22
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/doge/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;GAEG;AACH,qBAAa,UAAW,SAAQ,GAAG,CAAC,UAAU;aAK1B,QAAQ,EAAE,QAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IALpC,OAAO,CAAC,YAAY,CAAqB;gBAGvC,MAAM,EAAE,GAAG,CAAC,MAAM,EACF,QAAQ,EAAE,QAAQ,EACjB,iBAAiB,GAAE,GAAG,CAAC,iBAAiB,EAWxD;IAKG,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAMvC;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB9B,mBAAmB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAiBxD,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAiBtC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAKxB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ/B,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;CAQvE"}
@@ -1,84 +0,0 @@
1
- import { ccc } from "@ckb-ccc/core";
2
- /**
3
- * @public
4
- */
5
- export class SignerDoge extends ccc.SignerDoge {
6
- constructor(client, provider, preferredNetworks = [
7
- {
8
- addressPrefix: "ckb",
9
- signerType: ccc.SignerType.Doge,
10
- network: "doge",
11
- },
12
- {
13
- addressPrefix: "ckt",
14
- signerType: ccc.SignerType.Doge,
15
- network: "dogeTestnet",
16
- },
17
- ]) {
18
- super(client);
19
- this.provider = provider;
20
- this.preferredNetworks = preferredNetworks;
21
- }
22
- async getDogeAddress() {
23
- const accounts = await this.provider.getAccount();
24
- this.accountCache = accounts[0];
25
- return this.accountCache;
26
- }
27
- /**
28
- * Ensure the BTC network is the same as CKB network.
29
- */
30
- async ensureNetwork() {
31
- const network = await this._getNetworkToChange();
32
- if (!network) {
33
- return;
34
- }
35
- const chain = {
36
- doge: "dogecoin",
37
- dogeTestnet: "dogecoin_testnet",
38
- }[network];
39
- if (chain) {
40
- await this.provider.switchNetwork(chain);
41
- return;
42
- }
43
- throw new Error(`UTXO Global Doge wallet doesn't support the requested chain ${network}`);
44
- }
45
- async _getNetworkToChange() {
46
- const currentNetwork = {
47
- dogecoin: "doge",
48
- dogecoin_testnet: "dogeTestnet",
49
- }[await this.provider.getNetwork()];
50
- const { network } = this.matchNetworkPreference(this.preferredNetworks, currentNetwork) ?? { network: currentNetwork };
51
- if (network === currentNetwork) {
52
- return;
53
- }
54
- return network;
55
- }
56
- onReplaced(listener) {
57
- const stop = [];
58
- const replacer = async () => {
59
- listener();
60
- stop[0]?.();
61
- };
62
- stop.push(() => {
63
- this.provider.removeListener("accountsChanged", replacer);
64
- this.provider.removeListener("networkChanged", replacer);
65
- });
66
- this.provider.on("accountsChanged", replacer);
67
- this.provider.on("networkChanged", replacer);
68
- return stop[0];
69
- }
70
- async connect() {
71
- await this.provider.connect();
72
- await this.ensureNetwork();
73
- }
74
- async isConnected() {
75
- if ((await this._getNetworkToChange()) !== undefined) {
76
- return false;
77
- }
78
- return await this.provider.isConnected();
79
- }
80
- async signMessageRaw(message) {
81
- const challenge = typeof message === "string" ? message : ccc.hexFrom(message).slice(2);
82
- return this.provider.signMessage(challenge, this.accountCache ?? (await this.getDogeAddress()));
83
- }
84
- }
package/dist/index.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export * as UtxoGlobal from "./barrel.js";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,aAAa,CAAC"}
package/dist/index.js DELETED
@@ -1 +0,0 @@
1
- export * as UtxoGlobal from "./barrel.js";
@@ -1,6 +0,0 @@
1
- import { ccc } from "@ckb-ccc/core";
2
- /**
3
- * @public
4
- */
5
- export declare function getUtxoGlobalSigners(client: ccc.Client, preferredNetworks?: ccc.NetworkPreference[]): ccc.SignerInfo[];
6
- //# sourceMappingURL=signersFactory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signersFactory.d.ts","sourceRoot":"","sources":["../src/signersFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAMpC;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,GAAG,CAAC,MAAM,EAClB,iBAAiB,CAAC,EAAE,GAAG,CAAC,iBAAiB,EAAE,GAC1C,GAAG,CAAC,UAAU,EAAE,CAmClB"}
@@ -1,26 +0,0 @@
1
- import { SignerBtc } from "./btc/index.js";
2
- import { SignerCkb } from "./ckb/index.js";
3
- import { SignerDoge } from "./doge/index.js";
4
- /**
5
- * @public
6
- */
7
- export function getUtxoGlobalSigners(client, preferredNetworks) {
8
- const windowRef = window;
9
- if (typeof windowRef.utxoGlobal === "undefined") {
10
- return [];
11
- }
12
- return [
13
- {
14
- name: "CKB",
15
- signer: new SignerCkb(client, windowRef.utxoGlobal.ckbSigner),
16
- },
17
- {
18
- name: "BTC",
19
- signer: new SignerBtc(client, windowRef.utxoGlobal.bitcoinSigner, preferredNetworks),
20
- },
21
- {
22
- name: "DOGE",
23
- signer: new SignerDoge(client, windowRef.utxoGlobal.dogeSigner, preferredNetworks),
24
- },
25
- ];
26
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"advanced.d.ts","sourceRoot":"","sources":["../src/advanced.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,qBAAqB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"advancedBarrel.d.ts","sourceRoot":"","sources":["../src/advancedBarrel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC,MAAM,WAAW,QAAQ;IACvB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAChC,YAAY,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;IAClE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3D,eAAe,CAAC,EAAE,EAAE,GAAG,CAAC,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAEvE,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C,EAAE,EAAE,QAAQ,CAAC;IACb,cAAc,CACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GACxC,QAAQ,CAAC;CACb;AAED,MAAM,WAAW,QAAQ;IACvB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAAG,QAAQ,CAAC;CAC1E"}