@pushchain/core 0.1.19 → 0.1.21

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pushchain/core",
3
- "version": "0.1.19",
3
+ "version": "0.1.21",
4
4
  "dependencies": {
5
5
  "@bufbuild/protobuf": "^2.0.0",
6
6
  "@coral-xyz/anchor": "^0.31.0",
@@ -10,6 +10,7 @@ export declare const CONSTANTS: {
10
10
  readonly url: "https://explorer.testnet.push.org/";
11
11
  };
12
12
  };
13
+ blockTime?: number | undefined;
13
14
  contracts?: import("viem").Prettify<{
14
15
  [key: string]: import("viem").ChainContract | {
15
16
  [sourceId: number]: import("viem").ChainContract | undefined;
@@ -6,6 +6,7 @@ export declare const VIEM_PUSH_TESTNET_DONUT: {
6
6
  readonly url: "https://explorer.testnet.push.org/";
7
7
  };
8
8
  };
9
+ blockTime?: number | undefined;
9
10
  contracts?: viem.Prettify<{
10
11
  [key: string]: viem.ChainContract | {
11
12
  [sourceId: number]: viem.ChainContract | undefined;
@@ -12,6 +12,7 @@ import { TypedData, TypedDataDomain } from 'viem';
12
12
  export declare class PushChain {
13
13
  private orchestrator;
14
14
  private universalSigner;
15
+ private blockExplorers;
15
16
  /**
16
17
  * @static
17
18
  * Constants for the PushChain SDK.
@@ -26,6 +27,7 @@ export declare class PushChain {
26
27
  readonly url: "https://explorer.testnet.push.org/";
27
28
  };
28
29
  };
30
+ blockTime?: number | undefined;
29
31
  contracts?: import("viem").Prettify<{
30
32
  [key: string]: import("viem").ChainContract | {
31
33
  [sourceId: number]: import("viem").ChainContract | undefined;
@@ -34,9 +36,7 @@ export declare class PushChain {
34
36
  ensRegistry?: import("viem").ChainContract | undefined;
35
37
  ensUniversalResolver?: import("viem").ChainContract | undefined;
36
38
  multicall3?: import("viem").ChainContract | undefined;
37
- universalSignatureVerifier? /**
38
- * Signs an arbitrary message
39
- */: import("viem").ChainContract | undefined;
39
+ universalSignatureVerifier?: import("viem").ChainContract | undefined;
40
40
  }> | undefined;
41
41
  ensTlds?: readonly string[] | undefined;
42
42
  id: number;
@@ -89,6 +89,9 @@ export declare class PushChain {
89
89
  message: Record<string, any>;
90
90
  }) => Promise<string>;
91
91
  };
92
+ explorer: {
93
+ getTransactionUrl: (txHash: string) => string;
94
+ };
92
95
  private constructor();
93
96
  /**
94
97
  * @method initialize
@@ -18,9 +18,10 @@ const viem_1 = require("viem");
18
18
  * Provides access to cross-chain execution, utilities, and signer abstraction.
19
19
  */
20
20
  class PushChain {
21
- constructor(orchestrator, universalSigner) {
21
+ constructor(orchestrator, universalSigner, blockExplorers) {
22
22
  this.orchestrator = orchestrator;
23
23
  this.universalSigner = universalSigner;
24
+ this.blockExplorers = blockExplorers;
24
25
  this.orchestrator = orchestrator;
25
26
  this.universal = {
26
27
  get origin() {
@@ -49,6 +50,11 @@ class PushChain {
49
50
  return (0, viem_1.bytesToHex)(signBytes);
50
51
  }),
51
52
  };
53
+ this.explorer = {
54
+ getTransactionUrl: (txHash) => {
55
+ return `https://donut.push.network/tx/${txHash}`;
56
+ },
57
+ };
52
58
  }
53
59
  }
54
60
  exports.PushChain = PushChain;
@@ -76,13 +82,18 @@ PushChain.utils = utils_1.Utils;
76
82
  * @returns An initialized instance of PushChain.
77
83
  */
78
84
  PushChain.initialize = (universalSigner, options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
79
- var _b, _c, _d;
85
+ var _b, _c, _d, _e;
80
86
  const validatedUniversalSigner = (0, signer_1.createUniversalSigner)(universalSigner);
87
+ const blockExplorers = (_b = options === null || options === void 0 ? void 0 : options.blockExplorers) !== null && _b !== void 0 ? _b : {
88
+ [enums_1.CHAIN.PUSH_TESTNET_DONUT]: {
89
+ default: 'https://donut.push.network',
90
+ },
91
+ };
81
92
  const orchestrator = new orchestrator_1.Orchestrator(
82
93
  /**
83
94
  * Ensures the signer conforms to the UniversalSigner interface.
84
95
  */
85
- validatedUniversalSigner, (_b = options === null || options === void 0 ? void 0 : options.network) !== null && _b !== void 0 ? _b : enums_1.PUSH_NETWORK.TESTNET_DONUT, (_c = options === null || options === void 0 ? void 0 : options.rpcUrls) !== null && _c !== void 0 ? _c : {}, (_d = options === null || options === void 0 ? void 0 : options.printTraces) !== null && _d !== void 0 ? _d : false);
86
- return new _a(orchestrator, validatedUniversalSigner);
96
+ validatedUniversalSigner, (_c = options === null || options === void 0 ? void 0 : options.network) !== null && _c !== void 0 ? _c : enums_1.PUSH_NETWORK.TESTNET_DONUT, (_d = options === null || options === void 0 ? void 0 : options.rpcUrls) !== null && _d !== void 0 ? _d : {}, (_e = options === null || options === void 0 ? void 0 : options.printTraces) !== null && _e !== void 0 ? _e : false);
97
+ return new _a(orchestrator, validatedUniversalSigner, blockExplorers);
87
98
  });
88
99
  //# sourceMappingURL=pushChain.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pushChain.js","sourceRoot":"","sources":["../../../../../packages/core/src/lib/pushChain.ts"],"names":[],"mappings":";;;;;AAAA,2CAAwC;AACxC,6CAA4D;AAC5D,6CAA+C;AAC/C,8DAA2D;AAC3D,+CAA2D;AAE3D,mCAAgC;AAChC,wDAAwB;AACxB,+BAA8D;AAE9D;;;;;GAKG;AACH,MAAa,SAAS;IA6CpB,YACU,YAA0B,EAC1B,eAAgC;QADhC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,oBAAe,GAAf,eAAe,CAAiB;QAExC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QAEjC,IAAI,CAAC,SAAS,GAAG;YACf,IAAI,MAAM;gBACR,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC;YAC/B,CAAC;YACD,IAAI,OAAO;gBACT,OAAO,YAAY,CAAC,kBAAkB,EAAE,CAAC;YAC3C,CAAC;YACD,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;YACxD,WAAW,EAAE,CAAO,IAAgB,EAAE,EAAE;gBACtC,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACzD,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC5C,IAAI,kBAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,UAAE,CAAC,GAAG,EAAE,CAAC;oBACpC,OAAO,IAAA,iBAAU,EAAC,QAAQ,CAAC,CAAC;gBAC9B,CAAC;qBAAM,IAAI,kBAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,UAAE,CAAC,GAAG,EAAE,CAAC;oBAC3C,OAAO,cAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;gBACD,OAAO,IAAA,iBAAU,EAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC,CAAA;YACD,aAAa,EAAE,CAAO,GAAG,IAAI,EAAE,EAAE;gBAC/B,IAAI,OAAO,eAAe,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;oBACxD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACtD,CAAC;gBACD,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC/D,OAAO,IAAA,iBAAU,EAAC,SAAS,CAAC,CAAC;YAC/B,CAAC,CAAA;SACF,CAAC;IACJ,CAAC;;AA7EH,8BAiHC;;AAhHC;;;GAGG;AACW,mBAAS,GAAG,qBAAS,AAAZ,CAAa;AAEpC;;;GAGG;AACW,eAAK,GAAG,aAAK,AAAR,CAAS;AAoE5B;;;;;;;;;;;GAWG;AACI,oBAAU,GAAG,CAClB,eAAgC,EAChC,OAMC,EACmB,EAAE;;IACtB,MAAM,wBAAwB,GAAG,IAAA,8BAAqB,EAAC,eAAe,CAAC,CAAC;IACxE,MAAM,YAAY,GAAG,IAAI,2BAAY;IACnC;;OAEG;IACH,wBAAwB,EACxB,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,oBAAY,CAAC,aAAa,EAC9C,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,EAAE,EACtB,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,mCAAI,KAAK,CAC9B,CAAC;IACF,OAAO,IAAI,EAAS,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAAC;AAC/D,CAAC,CAAA,AArBgB,CAqBf"}
1
+ {"version":3,"file":"pushChain.js","sourceRoot":"","sources":["../../../../../packages/core/src/lib/pushChain.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export declare function createUniversalSigner({ account, signMessage, signAndSen
31
31
  * @param {CHAIN} chain - The chain the signer will operate on
32
32
  * @returns {Promise<UniversalSigner>} A signer object configured for the specified chain
33
33
  */
34
- export declare function toUniversalFromKeyPair(clientOrAccount: WalletClient | Keypair | ethers.Wallet | ethers.HDNodeWallet, { chain, library }: {
34
+ export declare function toUniversalFromKeypair(clientOrAccount: WalletClient | Keypair | ethers.Wallet | ethers.HDNodeWallet, { chain, library }: {
35
35
  chain: CHAIN;
36
36
  library: LIBRARY;
37
37
  }): Promise<UniversalSigner>;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createUniversalSigner = createUniversalSigner;
4
- exports.toUniversalFromKeyPair = toUniversalFromKeyPair;
4
+ exports.toUniversalFromKeypair = toUniversalFromKeypair;
5
5
  exports.construct = construct;
6
6
  exports.toUniversal = toUniversal;
7
7
  const tslib_1 = require("tslib");
@@ -46,7 +46,7 @@ function createUniversalSigner({ account, signMessage, signAndSendTransaction, s
46
46
  * @param {CHAIN} chain - The chain the signer will operate on
47
47
  * @returns {Promise<UniversalSigner>} A signer object configured for the specified chain
48
48
  */
49
- function toUniversalFromKeyPair(clientOrAccount_1, _a) {
49
+ function toUniversalFromKeypair(clientOrAccount_1, _a) {
50
50
  return tslib_1.__awaiter(this, arguments, void 0, function* (clientOrAccount, { chain, library }) {
51
51
  let address;
52
52
  let signMessage;
@@ -1,5 +1,5 @@
1
1
  import { convertOriginToExecutor, fromChainAgnostic, toChainAgnostic, toUniversal } from './universal/account';
2
- import { toUniversalFromKeyPair, construct, toUniversal as toUniversalSigner } from './universal/signer';
2
+ import { construct, toUniversal as toUniversalSigner, toUniversalFromKeypair } from './universal/signer';
3
3
  /**
4
4
  * @dev - THESE UTILS ARE EXPORTED TO SDK CONSUMER
5
5
  * @dev - Make sure each exported fn has good comments to help out sdk consumer
@@ -46,7 +46,7 @@ export declare class Utils {
46
46
  /**
47
47
  * Converts various signer types (viem, ethers v6, Solana) into a UniversalSigner.
48
48
  */
49
- toUniversalFromKeyPair: typeof toUniversalFromKeyPair;
49
+ toUniversalFromKeypair: typeof toUniversalFromKeypair;
50
50
  /**
51
51
  * Constructs a UniversalSignerSkeleton from raw signing functions.
52
52
  */
@@ -56,4 +56,7 @@ export declare class Utils {
56
56
  */
57
57
  toUniversal: typeof toUniversalSigner;
58
58
  };
59
+ static helpers: {
60
+ getChainName: (chainNamespace: string) => string;
61
+ };
59
62
  }
package/src/lib/utils.js CHANGED
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Utils = void 0;
4
4
  const account_1 = require("./universal/account");
5
5
  const signer_1 = require("./universal/signer");
6
+ const enums_1 = require("./constants/enums");
6
7
  /**
7
8
  * @dev - THESE UTILS ARE EXPORTED TO SDK CONSUMER
8
9
  * @dev - Make sure each exported fn has good comments to help out sdk consumer
@@ -51,7 +52,7 @@ Utils.signer = {
51
52
  /**
52
53
  * Converts various signer types (viem, ethers v6, Solana) into a UniversalSigner.
53
54
  */
54
- toUniversalFromKeyPair: signer_1.toUniversalFromKeyPair,
55
+ toUniversalFromKeypair: signer_1.toUniversalFromKeypair,
55
56
  /**
56
57
  * Constructs a UniversalSignerSkeleton from raw signing functions.
57
58
  */
@@ -61,4 +62,14 @@ Utils.signer = {
61
62
  */
62
63
  toUniversal: signer_1.toUniversal,
63
64
  };
65
+ Utils.helpers = {
66
+ getChainName: (chainNamespace) => {
67
+ const chainEntries = Object.entries(enums_1.CHAIN);
68
+ const foundEntry = chainEntries.find(([_, value]) => value === chainNamespace);
69
+ if (!foundEntry) {
70
+ throw new Error(`Chain value '${chainNamespace}' not found in CHAIN enum`);
71
+ }
72
+ return foundEntry[0];
73
+ },
74
+ };
64
75
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../packages/core/src/lib/utils.ts"],"names":[],"mappings":";;;AAAA,iDAK6B;AAC7B,+CAI4B;AAE5B;;;GAGG;AAEH;;;GAGG;AACH,MAAa,KAAK;;AAAlB,sBAoDC;AAnDQ,aAAO,GAAG;IACf;;;;;;;;;;;;;;;OAeG;IACH,eAAe,EAAf,yBAAe;IAEf,WAAW,EAAX,qBAAW;IAEX;;;;;;;;;;OAUG;IACH,iBAAiB,EAAjB,2BAAiB;IAEjB,uBAAuB,EAAvB,iCAAuB;CACxB,CAAC;AAEK,YAAM,GAAG;IACd;;OAEG;IACH,sBAAsB,EAAtB,+BAAsB;IACtB;;OAEG;IACH,SAAS,EAAT,kBAAS;IACT;;OAEG;IACH,WAAW,EAAE,oBAAiB;CAC/B,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../packages/core/src/lib/utils.ts"],"names":[],"mappings":";;;AAAA,iDAK6B;AAC7B,+CAI4B;AAC5B,6CAA0C;AAE1C;;;GAGG;AAEH;;;GAGG;AACH,MAAa,KAAK;;AAAlB,sBAqEC;AApEQ,aAAO,GAAG;IACf;;;;;;;;;;;;;;;OAeG;IACH,eAAe,EAAf,yBAAe;IAEf,WAAW,EAAX,qBAAW;IAEX;;;;;;;;;;OAUG;IACH,iBAAiB,EAAjB,2BAAiB;IAEjB,uBAAuB,EAAvB,iCAAuB;CACxB,CAAC;AAEK,YAAM,GAAG;IACd;;OAEG;IACH,sBAAsB,EAAtB,+BAAsB;IACtB;;OAEG;IACH,SAAS,EAAT,kBAAS;IACT;;OAEG;IACH,WAAW,EAAE,oBAAiB;CAC/B,CAAC;AAEK,aAAO,GAAG;IACf,YAAY,EAAE,CAAC,cAAsB,EAAE,EAAE;QACvC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,aAAK,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAClC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,cAAc,CACzC,CAAC;QAEF,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,gBAAgB,cAAc,2BAA2B,CAC1D,CAAC;QACJ,CAAC;QAED,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;CACF,CAAC"}
@@ -249,7 +249,7 @@ class EvmClient {
249
249
  * @param pollIntervalMs - How often to check (default: 4000ms)
250
250
  */
251
251
  waitForConfirmations(_a) {
252
- return tslib_1.__awaiter(this, arguments, void 0, function* ({ txHash, confirmations = 2, pollIntervalMs = 4000, }) {
252
+ return tslib_1.__awaiter(this, arguments, void 0, function* ({ txHash, confirmations = 0, pollIntervalMs = 4000, }) {
253
253
  const receipt = yield this.publicClient.waitForTransactionReceipt({
254
254
  hash: txHash,
255
255
  });
@@ -187,7 +187,7 @@ class SvmClient {
187
187
  * @param timeoutMs - Max wait time in milliseconds (default: 90_000)
188
188
  */
189
189
  waitForConfirmations(_a) {
190
- return tslib_1.__awaiter(this, arguments, void 0, function* ({ txSignature, confirmations = 2, timeoutMs = 90000, }) {
190
+ return tslib_1.__awaiter(this, arguments, void 0, function* ({ txSignature, confirmations = 0, timeoutMs = 90000, }) {
191
191
  return this.executeWithFallback((connection) => tslib_1.__awaiter(this, void 0, void 0, function* () {
192
192
  const start = Date.now();
193
193
  while (Date.now() - start < timeoutMs) {