Selaa lähdekoodia

Update Kinobi and pnpm (#37)

Loris Leiva 1 vuosi sitten
vanhempi
sitoutus
5fb78a5ecf

+ 5 - 0
.changeset/eight-ants-camp.md

@@ -0,0 +1,5 @@
+---
+"create-solana-program": patch
+---
+
+Update Kinobi and pnpm

+ 1 - 0
.prettierignore

@@ -14,4 +14,5 @@ template/**/.gitignore
 
 .prettierrc
 package.json
+pnpm-lock.yaml
 README.md

+ 1 - 1
package.json

@@ -48,5 +48,5 @@
     "prompts": "^2.4.2",
     "zx": "^7.2.3"
   },
-  "packageManager": "pnpm@8.15.4"
+  "packageManager": "pnpm@9.1.0"
 }

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 1393 - 79
pnpm-lock.yaml


+ 1 - 1
template/base/package.json

@@ -14,5 +14,5 @@
     "typescript": "^5.4.2",
     "zx": "^7.2.3"
   },
-  "packageManager": "pnpm@8.9.0"
+  "packageManager": "pnpm@9.1.0"
 }

+ 2 - 1
template/clients/base/package.json

@@ -7,6 +7,7 @@
     "validator:stop": "zx ./scripts/stop-validator.mjs"
   },
   "devDependencies": {
-    "@metaplex-foundation/kinobi": "^0.19.0"
+    "kinobi": "^0.20.1",
+    "@kinobi-so/nodes-from-anchor": "^0.20.1"
   }
 }

+ 18 - 8
template/clients/base/scripts/generate-clients.mjs.njk

@@ -1,11 +1,18 @@
 #!/usr/bin/env zx
 import "zx/globals";
-import * as k from "@metaplex-foundation/kinobi";
+import * as k from "kinobi";
+import { rootNodeFromAnchor } from "@kinobi-so/nodes-from-anchor";
+{% if jsClient %}
+import { renderVisitor as renderJavaScriptVisitor } from "@kinobi-so/renderers-js";
+{% endif %}
+{% if rustClient %}
+import { renderVisitor as renderRustVisitor } from "@kinobi-so/renderers-rust";
+{% endif %}
 import { getAllProgramIdls } from "./utils.mjs";
 
 // Instanciate Kinobi.
-const [idl, ...additionalIdls] = getAllProgramIdls();
-const kinobi = k.createFromIdl(idl, additionalIdls);
+const [idl, ...additionalIdls] = getAllProgramIdls().map(idl => rootNodeFromAnchor(require(idl)))
+const kinobi = k.createFromRoot(idl, additionalIdls);
 
 // Update programs.
 kinobi.update(
@@ -59,20 +66,23 @@ kinobi.update(
   })
 );
 
+{% if jsClient %}
 // Render JavaScript.
 const jsClient = path.join(__dirname, "..", "clients", "js");
 kinobi.accept(
-  k.renderJavaScriptExperimentalVisitor(
-    path.join(jsClient, "src", "generated"),
-    { prettier: require(path.join(jsClient, ".prettierrc.json")) }
-  )
+  renderJavaScriptVisitor(path.join(jsClient, "src", "generated"), { 
+    prettier: require(path.join(jsClient, ".prettierrc.json"))
+  })
 );
+{% endif %}
 
+{% if rustClient %}
 // Render Rust.
 const rustClient = path.join(__dirname, "..", "clients", "rust");
 kinobi.accept(
-  k.renderRustVisitor(path.join(rustClient, "src", "generated"), {
+  renderRustVisitor(path.join(rustClient, "src", "generated"), {
     formatCode: true,
     crateFolder: rustClient,
   })
 );
+{% endif %}

+ 1 - 1
template/clients/js/clients/js/package.json.njk

@@ -63,5 +63,5 @@
       }
     }
   },
-  "packageManager": "pnpm@8.2.0"
+  "packageManager": "pnpm@9.1.0"
 }

+ 3 - 0
template/clients/js/package.json

@@ -1,5 +1,8 @@
 {
   "scripts": {
     "clients:js:test": "zx ./scripts/client/test-js.mjs"
+  },
+  "devDependencies": {
+    "@kinobi-so/renderers-js": "^0.20.2"
   }
 }

+ 3 - 0
template/clients/rust/package.json

@@ -1,5 +1,8 @@
 {
   "scripts": {
     "clients:rust:test": "zx ./scripts/client/test-rust.mjs"
+  },
+  "devDependencies": {
+    "@kinobi-so/renderers-rust": "^0.20.3"
   }
 }

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä