Quellcode durchsuchen

fix(xc-admin-crank-pythnet-relayer): fixed build

benduran vor 3 Wochen
Ursprung
Commit
3594fa03b7

+ 12 - 4
governance/xc_admin/packages/crank_pythnet_relayer/package.json

@@ -6,7 +6,7 @@
   "author": "",
   "homepage": "https://github.com/pyth-network/pyth-crosschain",
   "license": "ISC",
-  "main": "src/index.ts",
+  "main": "./dist/index.js",
   "repository": {
     "type": "git",
     "url": "git+https://github.com/pyth-network/pyth-crosschain.git"
@@ -15,8 +15,8 @@
     "url": "https://github.com/pyth-network/pyth-crosschain/issues"
   },
   "scripts": {
-    "build": "ts-duality",
-    "start": "node lib/index.js",
+    "build": "ts-duality --noEsm",
+    "start": "node dist/index.js",
     "fix:format": "prettier --write \"src/**/*.ts\"",
     "test:format": "prettier --check \"src/**/*.ts\"",
     "clean": "rm -rf ./dist"
@@ -37,5 +37,13 @@
     "pnpm": ">=10.19.0"
   },
   "packageManager": "pnpm@10.19.0",
-  "type": "module"
+  "type": "module",
+  "exports": {
+    ".": {
+      "default": "./dist/index.js",
+      "types": "./dist/index.d.ts"
+    },
+    "./package.json": "./package.json"
+  },
+  "types": "./dist/index.d.ts"
 }

+ 10 - 10
governance/xc_admin/packages/crank_pythnet_relayer/src/index.ts

@@ -6,11 +6,11 @@ import NodeWallet from "@coral-xyz/anchor/dist/cjs/nodewallet";
 import { AccountType, parseProductData } from "@pythnetwork/client";
 import {
   getPythClusterApiUrl,
-  PythCluster,
+  type PythCluster,
 } from "@pythnetwork/client/lib/cluster";
 import {
-  AccountMeta,
-  Commitment,
+  type AccountMeta,
+  type Commitment,
   ComputeBudgetProgram,
   Connection,
   Keypair,
@@ -67,7 +67,7 @@ async function run() {
   )[0];
   const executorKey: PublicKey = mapKey(EMITTER);
   const claimRecord =
-    await remoteExecutor.account.claimRecord.fetchNullable(claimRecordAddress);
+    await remoteExecutor.account.claimRecord?.fetchNullable(claimRecordAddress);
   let lastSequenceNumber: number = claimRecord
     ? (claimRecord.sequence as BN).toNumber()
     : -1;
@@ -78,13 +78,13 @@ async function run() {
     lastSequenceNumber += 1;
     console.log(`Trying sequence number : ${lastSequenceNumber}`);
 
-    const response = await (
+    const response = (await (
       await fetch(
         `${wormholeApi}/v1/signed_vaa/1/${EMITTER.toBuffer().toString(
           "hex",
         )}/${lastSequenceNumber}`,
       )
-    ).json();
+    ).json()) as Partial<{ code: number; vaaBytes: string }>;
 
     if (response.vaaBytes) {
       const vaa = parseVaa(Buffer.from(response.vaaBytes, "base64"));
@@ -144,19 +144,19 @@ async function run() {
               ),
             );
             productAccountToSymbol[
-              parsedInstruction.accounts.named.productAccount.pubkey.toBase58()
+              parsedInstruction.accounts.named.productAccount!.pubkey.toBase58()
             ] = parsedInstruction.args.symbol;
           } else if (
             parsedInstruction instanceof PythMultisigInstruction &&
             parsedInstruction.name == "addPrice"
           ) {
             const productAccount = await provider.connection.getAccountInfo(
-              parsedInstruction.accounts.named.productAccount.pubkey,
+              parsedInstruction.accounts.named.productAccount!.pubkey,
             );
             const productSymbol = productAccount
               ? parseProductData(productAccount.data).product.symbol
               : productAccountToSymbol[
-                  parsedInstruction.accounts.named.productAccount.pubkey.toBase58()
+                  parsedInstruction.accounts.named.productAccount!.pubkey.toBase58()
                 ];
             if (productSymbol) {
               preInstructions.push(
@@ -187,7 +187,7 @@ async function run() {
 
         try {
           await remoteExecutor.methods
-            .executePostedVaa()
+            .executePostedVaa?.()
             .accounts({
               claimRecord: claimRecordAddress,
               postedVaa: derivePostedVaaKey(

+ 2 - 1
governance/xc_admin/packages/crank_pythnet_relayer/tsconfig.build.json

@@ -3,7 +3,8 @@
   "compilerOptions": {
     "noEmit": false,
     "incremental": false,
-    "declaration": true
+    "declaration": true,
+    "isolatedModules": false
   },
   "exclude": [
     "node_modules",

+ 4 - 0
governance/xc_admin/packages/crank_pythnet_relayer/tsconfig.json

@@ -1,5 +1,9 @@
 {
   "extends": "@cprussin/tsconfig/base.json",
   "include": ["src"],
+  "compilerOptions": {
+    "module": "preserve",
+    "moduleResolution": "node"
+  },
   "exclude": ["dist", "node_modules", "**/__tests__/*"]
 }