From aaf8c90cab492b2ef8c450603f87e5a8fa088732 Mon Sep 17 00:00:00 2001
From: crypblizz <45455218+crypblizz8@users.noreply.github.com>
Date: Wed, 30 Oct 2024 14:10:29 +0000
Subject: [PATCH] feat: latest (#8)
* feat: latest
* chore: remove unnecessary comments
* chore: add lightmode / remove log
---
.gitignore | 101 ++-
examples/nextjs/.gitignore | 3 +
.../nextjs/app/components/WelcomeContent.tsx | 13 +-
examples/nextjs/public/dark_logo.svg | 10 +
package-lock.json | 820 +-----------------
package.json | 28 +-
src/functions/createNextJsProject.ts | 50 +-
src/functions/installNilup.ts | 35 +-
src/functions/isNilupInstalled.ts | 9 +-
src/functions/setupNadaFolder.ts | 2 +
src/index.ts | 54 +-
src/utils/register.js | 5 +
12 files changed, 263 insertions(+), 867 deletions(-)
create mode 100644 examples/nextjs/public/dark_logo.svg
create mode 100644 src/utils/register.js
diff --git a/.gitignore b/.gitignore
index 288453d..643e37e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,100 @@
-npm-debug.log
-.DS_Store
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# Runtime data
+pids
+*.pid
+*.seed
+*.pid.lock
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# nyc test coverage
+.nyc_output
+
+# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Bower dependency directory (https://bower.io/)
+bower_components
+
+# node-waf configuration
+.lock-wscript
-dist
+# Compiled binary addons (https://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directories
node_modules/
+jspm_packages/
+
+# TypeScript v1 declaration files
+typings/
+
+# Optional npm cache directory
+.npm
+
+# Optional eslint cache
+.eslintcache
+
+# Optional REPL history
+.node_repl_history
+
+# Output of 'npm pack'
+*.tgz
+
+# Yarn Integrity file
+.yarn-integrity
+
+# dotenv environment variables file
+.env
+.env.test
+
+# parcel-bundler cache (https://parceljs.org/)
+.cache
+
+# next.js build output
+.next
+
+# nuxt.js build output
+.nuxt
+
+# vuepress build output
+.vuepress/dist
+
+# Serverless directories
+.serverless/
+
+# FuseBox cache
+.fusebox/
+
+# DynamoDB Local files
+.dynamodb/
+
+# macOS
+.DS_Store
+
+# Windows
+Thumbs.db
+
+# IDE specific files
+.vscode/
+.idea/
+*.swp
+*.swo
+
+# Build output
+dist/
+build/
+
+# Temporary files
+temp/
+tmp/
\ No newline at end of file
diff --git a/examples/nextjs/.gitignore b/examples/nextjs/.gitignore
index fd3dbb5..3e88441 100644
--- a/examples/nextjs/.gitignore
+++ b/examples/nextjs/.gitignore
@@ -34,3 +34,6 @@ yarn-error.log*
# typescript
*.tsbuildinfo
next-env.d.ts
+
+# nada venv
+nada/.venv/
diff --git a/examples/nextjs/app/components/WelcomeContent.tsx b/examples/nextjs/app/components/WelcomeContent.tsx
index b07228c..1c9d2ba 100644
--- a/examples/nextjs/app/components/WelcomeContent.tsx
+++ b/examples/nextjs/app/components/WelcomeContent.tsx
@@ -3,12 +3,21 @@ import Image from "next/image";
export const WelcomeContent = () => {
return (
<>
-
+
nillion-devnet
in a separate terminal.
diff --git a/examples/nextjs/public/dark_logo.svg b/examples/nextjs/public/dark_logo.svg
new file mode 100644
index 0000000..43c38c8
--- /dev/null
+++ b/examples/nextjs/public/dark_logo.svg
@@ -0,0 +1,10 @@
+
+
diff --git a/package-lock.json b/package-lock.json
index 46fdc54..83d4ea0 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,20 +1,20 @@
{
"name": "@nillion/create-nillion-app",
- "version": "1.0.0",
+ "version": "0.1.0-rc.13",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@nillion/create-nillion-app",
- "version": "1.0.0",
+ "version": "0.1.0-rc.13",
"license": "MIT",
"dependencies": {
- "@nillion/client-core": "0.1.0-rc.16",
- "@nillion/client-react-hooks": "0.1.0-rc.16",
- "@nillion/client-vms": "0.1.0-rc.16"
+ "chalk": "^5.3.0",
+ "open": "^10.1.0",
+ "prompts": "^2.4.2"
},
"bin": {
- "create-nillion-app": "dist/index.js"
+ "create-nillion-app": "dist/src/index.js"
},
"devDependencies": {
"@commitlint/cli": "^19.5.0",
@@ -669,12 +669,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@bufbuild/protobuf": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-2.1.0.tgz",
- "integrity": "sha512-+2Mx67Y3skJ4NCD/qNSdBJNWtu6x6Qr53jeNg+QcwiL6mt0wK+3jwHH2x1p7xaYH6Ve2JKOVn0OxU35WsmqI9A==",
- "license": "(Apache-2.0 AND BSD-3-Clause)"
- },
"node_modules/@commitlint/cli": {
"version": "19.5.0",
"resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-19.5.0.tgz",
@@ -932,150 +926,6 @@
"node": ">=v18"
}
},
- "node_modules/@confio/ics23": {
- "version": "0.6.8",
- "resolved": "https://registry.npmjs.org/@confio/ics23/-/ics23-0.6.8.tgz",
- "integrity": "sha512-wB6uo+3A50m0sW/EWcU64xpV/8wShZ6bMTa7pF8eYsTrSkQA7oLUIJcs/wb8g4y2Oyq701BaGiO6n/ak5WXO1w==",
- "license": "Apache-2.0",
- "dependencies": {
- "@noble/hashes": "^1.0.0",
- "protobufjs": "^6.8.8"
- }
- },
- "node_modules/@cosmjs/amino": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/amino/-/amino-0.32.4.tgz",
- "integrity": "sha512-zKYOt6hPy8obIFtLie/xtygCkH9ZROiQ12UHfKsOkWaZfPQUvVbtgmu6R4Kn1tFLI/SRkw7eqhaogmW/3NYu/Q==",
- "license": "Apache-2.0",
- "dependencies": {
- "@cosmjs/crypto": "^0.32.4",
- "@cosmjs/encoding": "^0.32.4",
- "@cosmjs/math": "^0.32.4",
- "@cosmjs/utils": "^0.32.4"
- }
- },
- "node_modules/@cosmjs/crypto": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/crypto/-/crypto-0.32.4.tgz",
- "integrity": "sha512-zicjGU051LF1V9v7bp8p7ovq+VyC91xlaHdsFOTo2oVry3KQikp8L/81RkXmUIT8FxMwdx1T7DmFwVQikcSDIw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@cosmjs/encoding": "^0.32.4",
- "@cosmjs/math": "^0.32.4",
- "@cosmjs/utils": "^0.32.4",
- "@noble/hashes": "^1",
- "bn.js": "^5.2.0",
- "elliptic": "^6.5.4",
- "libsodium-wrappers-sumo": "^0.7.11"
- }
- },
- "node_modules/@cosmjs/encoding": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/encoding/-/encoding-0.32.4.tgz",
- "integrity": "sha512-tjvaEy6ZGxJchiizzTn7HVRiyTg1i4CObRRaTRPknm5EalE13SV+TCHq38gIDfyUeden4fCuaBVEdBR5+ti7Hw==",
- "license": "Apache-2.0",
- "dependencies": {
- "base64-js": "^1.3.0",
- "bech32": "^1.1.4",
- "readonly-date": "^1.0.0"
- }
- },
- "node_modules/@cosmjs/json-rpc": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/json-rpc/-/json-rpc-0.32.4.tgz",
- "integrity": "sha512-/jt4mBl7nYzfJ2J/VJ+r19c92mUKF0Lt0JxM3MXEJl7wlwW5haHAWtzRujHkyYMXOwIR+gBqT2S0vntXVBRyhQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@cosmjs/stream": "^0.32.4",
- "xstream": "^11.14.0"
- }
- },
- "node_modules/@cosmjs/math": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/math/-/math-0.32.4.tgz",
- "integrity": "sha512-++dqq2TJkoB8zsPVYCvrt88oJWsy1vMOuSOKcdlnXuOA/ASheTJuYy4+oZlTQ3Fr8eALDLGGPhJI02W2HyAQaw==",
- "license": "Apache-2.0",
- "dependencies": {
- "bn.js": "^5.2.0"
- }
- },
- "node_modules/@cosmjs/proto-signing": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/proto-signing/-/proto-signing-0.32.4.tgz",
- "integrity": "sha512-QdyQDbezvdRI4xxSlyM1rSVBO2st5sqtbEIl3IX03uJ7YiZIQHyv6vaHVf1V4mapusCqguiHJzm4N4gsFdLBbQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@cosmjs/amino": "^0.32.4",
- "@cosmjs/crypto": "^0.32.4",
- "@cosmjs/encoding": "^0.32.4",
- "@cosmjs/math": "^0.32.4",
- "@cosmjs/utils": "^0.32.4",
- "cosmjs-types": "^0.9.0"
- }
- },
- "node_modules/@cosmjs/socket": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/socket/-/socket-0.32.4.tgz",
- "integrity": "sha512-davcyYziBhkzfXQTu1l5NrpDYv0K9GekZCC9apBRvL1dvMc9F/ygM7iemHjUA+z8tJkxKxrt/YPjJ6XNHzLrkw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@cosmjs/stream": "^0.32.4",
- "isomorphic-ws": "^4.0.1",
- "ws": "^7",
- "xstream": "^11.14.0"
- }
- },
- "node_modules/@cosmjs/stargate": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/stargate/-/stargate-0.32.4.tgz",
- "integrity": "sha512-usj08LxBSsPRq9sbpCeVdyLx2guEcOHfJS9mHGCLCXpdAPEIEQEtWLDpEUc0LEhWOx6+k/ChXTc5NpFkdrtGUQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@confio/ics23": "^0.6.8",
- "@cosmjs/amino": "^0.32.4",
- "@cosmjs/encoding": "^0.32.4",
- "@cosmjs/math": "^0.32.4",
- "@cosmjs/proto-signing": "^0.32.4",
- "@cosmjs/stream": "^0.32.4",
- "@cosmjs/tendermint-rpc": "^0.32.4",
- "@cosmjs/utils": "^0.32.4",
- "cosmjs-types": "^0.9.0",
- "xstream": "^11.14.0"
- }
- },
- "node_modules/@cosmjs/stream": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/stream/-/stream-0.32.4.tgz",
- "integrity": "sha512-Gih++NYHEiP+oyD4jNEUxU9antoC0pFSg+33Hpp0JlHwH0wXhtD3OOKnzSfDB7OIoEbrzLJUpEjOgpCp5Z+W3A==",
- "license": "Apache-2.0",
- "dependencies": {
- "xstream": "^11.14.0"
- }
- },
- "node_modules/@cosmjs/tendermint-rpc": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/tendermint-rpc/-/tendermint-rpc-0.32.4.tgz",
- "integrity": "sha512-MWvUUno+4bCb/LmlMIErLypXxy7ckUuzEmpufYYYd9wgbdCXaTaO08SZzyFM5PI8UJ/0S2AmUrgWhldlbxO8mw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@cosmjs/crypto": "^0.32.4",
- "@cosmjs/encoding": "^0.32.4",
- "@cosmjs/json-rpc": "^0.32.4",
- "@cosmjs/math": "^0.32.4",
- "@cosmjs/socket": "^0.32.4",
- "@cosmjs/stream": "^0.32.4",
- "@cosmjs/utils": "^0.32.4",
- "axios": "^1.6.0",
- "readonly-date": "^1.0.0",
- "xstream": "^11.14.0"
- }
- },
- "node_modules/@cosmjs/utils": {
- "version": "0.32.4",
- "resolved": "https://registry.npmjs.org/@cosmjs/utils/-/utils-0.32.4.tgz",
- "integrity": "sha512-D1Yc+Zy8oL/hkUkFUL/bwxvuDBzRGpc4cF7/SkdhxX4iHpSLgdOuTt1mhCh9+kl6NQREy9t7SYZ6xeW5gFe60w==",
- "license": "Apache-2.0"
- },
"node_modules/@cspotcode/source-map-support": {
"version": "0.8.1",
"resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
@@ -2048,75 +1898,6 @@
"@jridgewell/sourcemap-codec": "^1.4.14"
}
},
- "node_modules/@nillion/client-core": {
- "version": "0.1.0-rc.16",
- "resolved": "https://registry.npmjs.org/@nillion/client-core/-/client-core-0.1.0-rc.16.tgz",
- "integrity": "sha512-7tF84BS3R8H2eNSLFVlrhhp6t74ZEQokJkn261AkMmpb40GCb8Y6GlYBSXByq68T1XsbHd/ya7hJhb40kOXhog==",
- "license": "MIT",
- "dependencies": {
- "@nillion/client-wasm": "0.1.0-rc.16",
- "debug": "^4.3.6",
- "effect": "3.6.5",
- "zod": "^3.23.8"
- }
- },
- "node_modules/@nillion/client-payments": {
- "version": "0.1.0-rc.16",
- "resolved": "https://registry.npmjs.org/@nillion/client-payments/-/client-payments-0.1.0-rc.16.tgz",
- "integrity": "sha512-CR/ELQiyfRpW18ajNZmNwssAomAhNUrrh97lgAd9E6jVgV23ioKkzTtzZPdgsplQCU08GVttcCnhLoAnPeXn7w==",
- "license": "MIT",
- "dependencies": {
- "@bufbuild/protobuf": "^2.0.0",
- "@cosmjs/proto-signing": "^0.32.4",
- "@cosmjs/stargate": "^0.32.4",
- "@nillion/client-core": "0.1.0-rc.16",
- "debug": "^4.3.6",
- "effect": "3.6.5",
- "zod": "^3.23.8"
- }
- },
- "node_modules/@nillion/client-react-hooks": {
- "version": "0.1.0-rc.16",
- "resolved": "https://registry.npmjs.org/@nillion/client-react-hooks/-/client-react-hooks-0.1.0-rc.16.tgz",
- "integrity": "sha512-BNK41duETfGZUIA+L/9fKVCqVd3ZC//Nj3KbaNMQWQUaas55zMAy6WxIKJQqIzKkYOq/Muy5uLcr2o6sLKGKQw==",
- "license": "MIT",
- "dependencies": {
- "@nillion/client-vms": "0.1.0-rc.16",
- "@tanstack/react-query": "^5.52.0",
- "debug": "^4.3.6",
- "react": "^18.3.1"
- }
- },
- "node_modules/@nillion/client-vms": {
- "version": "0.1.0-rc.16",
- "resolved": "https://registry.npmjs.org/@nillion/client-vms/-/client-vms-0.1.0-rc.16.tgz",
- "integrity": "sha512-2iFhA+c007USCiNVj6wQ7zNYwJueCSEQlzAducciEQr24aiVgZOdGOx+ErzVC/RvNaE6oMx2ECLkGKFgR32tEg==",
- "license": "MIT",
- "dependencies": {
- "@nillion/client-core": "0.1.0-rc.16",
- "@nillion/client-payments": "0.1.0-rc.16",
- "debug": "^4.3.6",
- "zod": "^3.23.8"
- }
- },
- "node_modules/@nillion/client-wasm": {
- "version": "0.1.0-rc.16",
- "resolved": "https://registry.npmjs.org/@nillion/client-wasm/-/client-wasm-0.1.0-rc.16.tgz",
- "integrity": "sha512-I8dozsdbZRNa9q/5Z6W1DocSgH3toaUFBzWjD/HkJF8kqJJeKd3YK0rhiOMHDsohED+Pq3wNkOjoaPHifd3Btg==",
- "license": "Apache-2.0"
- },
- "node_modules/@noble/hashes": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.5.0.tgz",
- "integrity": "sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==",
- "license": "MIT",
- "engines": {
- "node": "^14.21.3 || >=16"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- }
- },
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -2168,70 +1949,6 @@
"url": "https://opencollective.com/unts"
}
},
- "node_modules/@protobufjs/aspromise": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
- "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==",
- "license": "BSD-3-Clause"
- },
- "node_modules/@protobufjs/base64": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
- "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==",
- "license": "BSD-3-Clause"
- },
- "node_modules/@protobufjs/codegen": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz",
- "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==",
- "license": "BSD-3-Clause"
- },
- "node_modules/@protobufjs/eventemitter": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz",
- "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==",
- "license": "BSD-3-Clause"
- },
- "node_modules/@protobufjs/fetch": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz",
- "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==",
- "license": "BSD-3-Clause",
- "dependencies": {
- "@protobufjs/aspromise": "^1.1.1",
- "@protobufjs/inquire": "^1.1.0"
- }
- },
- "node_modules/@protobufjs/float": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
- "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==",
- "license": "BSD-3-Clause"
- },
- "node_modules/@protobufjs/inquire": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz",
- "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==",
- "license": "BSD-3-Clause"
- },
- "node_modules/@protobufjs/path": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
- "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==",
- "license": "BSD-3-Clause"
- },
- "node_modules/@protobufjs/pool": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
- "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==",
- "license": "BSD-3-Clause"
- },
- "node_modules/@protobufjs/utf8": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
- "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==",
- "license": "BSD-3-Clause"
- },
"node_modules/@sinclair/typebox": {
"version": "0.27.8",
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz",
@@ -2259,32 +1976,6 @@
"@sinonjs/commons": "^3.0.0"
}
},
- "node_modules/@tanstack/query-core": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.59.0.tgz",
- "integrity": "sha512-WGD8uIhX6/deH/tkZqPNcRyAhDUqs729bWKoByYHSogcshXfFbppOdTER5+qY7mFvu8KEFJwT0nxr8RfPTVh0Q==",
- "license": "MIT",
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/tannerlinsley"
- }
- },
- "node_modules/@tanstack/react-query": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.59.0.tgz",
- "integrity": "sha512-YDXp3OORbYR+8HNQx+lf4F73NoiCmCcSvZvgxE29OifmQFk0sBlO26NWLHpcNERo92tVk3w+JQ53/vkcRUY1hA==",
- "license": "MIT",
- "dependencies": {
- "@tanstack/query-core": "5.59.0"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/tannerlinsley"
- },
- "peerDependencies": {
- "react": "^18 || ^19"
- }
- },
"node_modules/@tsconfig/node10": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz",
@@ -2437,16 +2128,11 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@types/long": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz",
- "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==",
- "license": "MIT"
- },
"node_modules/@types/node": {
"version": "22.7.4",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.4.tgz",
"integrity": "sha512-y+NPi1rFzDs1NdQHHToqeiX2TIS79SWEAw9GYhkkx8bD0ChpfqC+n2j5OXOCpzfojBEBt6DnEnnG9MY0zk1XLg==",
+ "dev": true,
"license": "MIT",
"dependencies": {
"undici-types": "~6.19.2"
@@ -2811,23 +2497,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
- "license": "MIT"
- },
- "node_modules/axios": {
- "version": "1.7.7",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz",
- "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==",
- "license": "MIT",
- "dependencies": {
- "follow-redirects": "^1.15.6",
- "form-data": "^4.0.0",
- "proxy-from-env": "^1.1.0"
- }
- },
"node_modules/babel-jest": {
"version": "29.7.0",
"resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz",
@@ -3014,38 +2683,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/base64-js": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
- "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT"
- },
- "node_modules/bech32": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz",
- "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==",
- "license": "MIT"
- },
- "node_modules/bn.js": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz",
- "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==",
- "license": "MIT"
- },
"node_modules/brace-expansion": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
@@ -3069,12 +2706,6 @@
"node": ">=8"
}
},
- "node_modules/brorand": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
- "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==",
- "license": "MIT"
- },
"node_modules/browserslist": {
"version": "4.24.0",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz",
@@ -3417,18 +3048,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
- "license": "MIT",
- "dependencies": {
- "delayed-stream": "~1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
"node_modules/commander": {
"version": "12.1.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz",
@@ -3554,12 +3173,6 @@
"typescript": ">=4"
}
},
- "node_modules/cosmjs-types": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/cosmjs-types/-/cosmjs-types-0.9.0.tgz",
- "integrity": "sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ==",
- "license": "Apache-2.0"
- },
"node_modules/create-jest": {
"version": "29.7.0",
"resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz",
@@ -3674,6 +3287,7 @@
"version": "4.3.7",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
"integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dev": true,
"license": "MIT",
"dependencies": {
"ms": "^2.1.3"
@@ -3749,23 +3363,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/define-data-property": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
- "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
- "license": "MIT",
- "dependencies": {
- "es-define-property": "^1.0.0",
- "es-errors": "^1.3.0",
- "gopd": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/define-lazy-prop": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz",
@@ -3779,32 +3376,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/define-properties": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
- "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
- "license": "MIT",
- "dependencies": {
- "define-data-property": "^1.0.1",
- "has-property-descriptors": "^1.0.0",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
- "license": "MIT",
- "engines": {
- "node": ">=0.4.0"
- }
- },
"node_modules/detect-newline": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
@@ -3848,12 +3419,6 @@
"node": ">=8"
}
},
- "node_modules/effect": {
- "version": "3.6.5",
- "resolved": "https://registry.npmjs.org/effect/-/effect-3.6.5.tgz",
- "integrity": "sha512-NhopZTAKljaAlR0CEroOAJJngdqg7bzlnWcDrCwh4d2WNVohVbBtUS4SGqLt8tUy7IFsTWATYiUtmhDG+YELjA==",
- "license": "MIT"
- },
"node_modules/ejs": {
"version": "3.1.10",
"resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz",
@@ -3877,27 +3442,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/elliptic": {
- "version": "6.5.7",
- "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz",
- "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==",
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.11.9",
- "brorand": "^1.1.0",
- "hash.js": "^1.0.0",
- "hmac-drbg": "^1.0.1",
- "inherits": "^2.0.4",
- "minimalistic-assert": "^1.0.1",
- "minimalistic-crypto-utils": "^1.0.1"
- }
- },
- "node_modules/elliptic/node_modules/bn.js": {
- "version": "4.12.0",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
- "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
- "license": "MIT"
- },
"node_modules/emittery": {
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz",
@@ -3951,27 +3495,6 @@
"is-arrayish": "^0.2.1"
}
},
- "node_modules/es-define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
- "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
- "license": "MIT",
- "dependencies": {
- "get-intrinsic": "^1.2.4"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-errors": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
- "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
"node_modules/escalade": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
@@ -4652,40 +4175,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/follow-redirects": {
- "version": "1.15.9",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz",
- "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==",
- "funding": [
- {
- "type": "individual",
- "url": "https://github.com/sponsors/RubenVerborgh"
- }
- ],
- "license": "MIT",
- "engines": {
- "node": ">=4.0"
- },
- "peerDependenciesMeta": {
- "debug": {
- "optional": true
- }
- }
- },
- "node_modules/form-data": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
- "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
- "license": "MIT",
- "dependencies": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.8",
- "mime-types": "^2.1.12"
- },
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
@@ -4712,6 +4201,7 @@
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
"integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+ "dev": true,
"license": "MIT",
"funding": {
"url": "https://github.com/sponsors/ljharb"
@@ -4750,25 +4240,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/get-intrinsic": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
- "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "function-bind": "^1.1.2",
- "has-proto": "^1.0.1",
- "has-symbols": "^1.0.3",
- "hasown": "^2.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/get-package-type": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
@@ -4898,34 +4369,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/globalthis": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz",
- "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==",
- "license": "MIT",
- "dependencies": {
- "define-properties": "^1.2.1",
- "gopd": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/gopd": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
- "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
- "license": "MIT",
- "dependencies": {
- "get-intrinsic": "^1.1.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/graceful-fs": {
"version": "4.2.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
@@ -4950,56 +4393,11 @@
"node": ">=8"
}
},
- "node_modules/has-property-descriptors": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
- "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
- "license": "MIT",
- "dependencies": {
- "es-define-property": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-proto": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz",
- "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-symbols": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/hash.js": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
- "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "minimalistic-assert": "^1.0.1"
- }
- },
"node_modules/hasown": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
"integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
+ "dev": true,
"license": "MIT",
"dependencies": {
"function-bind": "^1.1.2"
@@ -5008,17 +4406,6 @@
"node": ">= 0.4"
}
},
- "node_modules/hmac-drbg": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
- "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==",
- "license": "MIT",
- "dependencies": {
- "hash.js": "^1.0.3",
- "minimalistic-assert": "^1.0.0",
- "minimalistic-crypto-utils": "^1.0.1"
- }
- },
"node_modules/html-escaper": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
@@ -5146,6 +4533,7 @@
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true,
"license": "ISC"
},
"node_modules/ini": {
@@ -5341,15 +4729,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/isomorphic-ws": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz",
- "integrity": "sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==",
- "license": "MIT",
- "peerDependencies": {
- "ws": "*"
- }
- },
"node_modules/istanbul-lib-coverage": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz",
@@ -6856,6 +6235,7 @@
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
+ "dev": true,
"license": "MIT"
},
"node_modules/js-yaml": {
@@ -6996,21 +6376,6 @@
"node": ">= 0.8.0"
}
},
- "node_modules/libsodium-sumo": {
- "version": "0.7.15",
- "resolved": "https://registry.npmjs.org/libsodium-sumo/-/libsodium-sumo-0.7.15.tgz",
- "integrity": "sha512-5tPmqPmq8T8Nikpm1Nqj0hBHvsLFCXvdhBFV7SGOitQPZAA6jso8XoL0r4L7vmfKXr486fiQInvErHtEvizFMw==",
- "license": "ISC"
- },
- "node_modules/libsodium-wrappers-sumo": {
- "version": "0.7.15",
- "resolved": "https://registry.npmjs.org/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.15.tgz",
- "integrity": "sha512-aSWY8wKDZh5TC7rMvEdTHoyppVq/1dTSAeAR7H6pzd6QRT3vQWcT5pGwCotLcpPEOLXX6VvqihSPkpEhYAjANA==",
- "license": "ISC",
- "dependencies": {
- "libsodium-sumo": "^0.7.15"
- }
- },
"node_modules/lilconfig": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz",
@@ -7418,24 +6783,6 @@
"url": "https://github.com/chalk/strip-ansi?sponsor=1"
}
},
- "node_modules/long": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz",
- "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==",
- "license": "Apache-2.0"
- },
- "node_modules/loose-envify": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
- "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
- "license": "MIT",
- "dependencies": {
- "js-tokens": "^3.0.0 || ^4.0.0"
- },
- "bin": {
- "loose-envify": "cli.js"
- }
- },
"node_modules/lru-cache": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
@@ -7523,27 +6870,6 @@
"node": ">=8.6"
}
},
- "node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/mimic-fn": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
@@ -7567,18 +6893,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/minimalistic-assert": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
- "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
- "license": "ISC"
- },
- "node_modules/minimalistic-crypto-utils": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
- "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==",
- "license": "MIT"
- },
"node_modules/minimatch": {
"version": "9.0.5",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
@@ -7609,6 +6923,7 @@
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "dev": true,
"license": "MIT"
},
"node_modules/natural-compare": {
@@ -7655,15 +6970,6 @@
"node": ">=8"
}
},
- "node_modules/object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
"node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
@@ -8057,38 +7363,6 @@
"node": ">= 6"
}
},
- "node_modules/protobufjs": {
- "version": "6.11.4",
- "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.4.tgz",
- "integrity": "sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==",
- "hasInstallScript": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "@protobufjs/aspromise": "^1.1.2",
- "@protobufjs/base64": "^1.1.2",
- "@protobufjs/codegen": "^2.0.4",
- "@protobufjs/eventemitter": "^1.1.0",
- "@protobufjs/fetch": "^1.1.0",
- "@protobufjs/float": "^1.0.2",
- "@protobufjs/inquire": "^1.1.0",
- "@protobufjs/path": "^1.1.2",
- "@protobufjs/pool": "^1.1.0",
- "@protobufjs/utf8": "^1.1.0",
- "@types/long": "^4.0.1",
- "@types/node": ">=13.7.0",
- "long": "^4.0.0"
- },
- "bin": {
- "pbjs": "bin/pbjs",
- "pbts": "bin/pbts"
- }
- },
- "node_modules/proxy-from-env": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
- "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
- "license": "MIT"
- },
"node_modules/punycode": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
@@ -8137,18 +7411,6 @@
],
"license": "MIT"
},
- "node_modules/react": {
- "version": "18.3.1",
- "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz",
- "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==",
- "license": "MIT",
- "dependencies": {
- "loose-envify": "^1.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/react-is": {
"version": "18.3.1",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz",
@@ -8156,12 +7418,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/readonly-date": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/readonly-date/-/readonly-date-1.0.0.tgz",
- "integrity": "sha512-tMKIV7hlk0h4mO3JTmmVuIlJVXjKk3Sep9Bf5OH0O+758ruuVkUy2J9SttDLm91IEX/WHlXPSpxMGjPj4beMIQ==",
- "license": "Apache-2.0"
- },
"node_modules/require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
@@ -8628,15 +7884,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/symbol-observable": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-2.0.3.tgz",
- "integrity": "sha512-sQV7phh2WCYAn81oAkakC5qjq2Ml0g8ozqz03wOGnx9dDlG1de6yrF+0RAzSJD8fPUow3PTSMf2SAbOGxb93BA==",
- "license": "MIT",
- "engines": {
- "node": ">=0.10"
- }
- },
"node_modules/synckit": {
"version": "0.9.1",
"resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz",
@@ -8955,6 +8202,7 @@
"version": "6.19.8",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz",
"integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==",
+ "dev": true,
"license": "MIT"
},
"node_modules/unicorn-magic": {
@@ -9150,37 +8398,6 @@
"node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
- "node_modules/ws": {
- "version": "7.5.10",
- "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz",
- "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==",
- "license": "MIT",
- "engines": {
- "node": ">=8.3.0"
- },
- "peerDependencies": {
- "bufferutil": "^4.0.1",
- "utf-8-validate": "^5.0.2"
- },
- "peerDependenciesMeta": {
- "bufferutil": {
- "optional": true
- },
- "utf-8-validate": {
- "optional": true
- }
- }
- },
- "node_modules/xstream": {
- "version": "11.14.0",
- "resolved": "https://registry.npmjs.org/xstream/-/xstream-11.14.0.tgz",
- "integrity": "sha512-1bLb+kKKtKPbgTK6i/BaoAn03g47PpFstlbe1BA+y3pNS/LfvcaghS5BFf9+EE1J+KwSQsEpfJvFN5GqFtiNmw==",
- "license": "MIT",
- "dependencies": {
- "globalthis": "^1.0.1",
- "symbol-observable": "^2.0.3"
- }
- },
"node_modules/y18n": {
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
@@ -9294,15 +8511,6 @@
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
- },
- "node_modules/zod": {
- "version": "3.23.8",
- "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz",
- "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==",
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/colinhacks"
- }
}
}
}
diff --git a/package.json b/package.json
index cc72823..7680612 100644
--- a/package.json
+++ b/package.json
@@ -1,13 +1,12 @@
{
"name": "@nillion/create-nillion-app",
- "version": "1.0.0",
- "main": "dist/index.js",
- "types": "dist/index.d.ts",
+ "version": "0.1.0-rc.16",
+ "main": "dist/src/index.js",
+ "types": "dist/src/index.d.ts",
"type": "module",
"scripts": {
- "dev": "node --loader ts-node/esm src/index.ts",
- "build": "rm -rf dist && tsc",
- "publish": "npm run build && npm publish --access=public",
+ "dev": "node --import=./src/utils/register.js src/index.ts",
+ "build": "rm -rf dist && tsc && cp -r examples dist/",
"test": "jest",
"format": "prettier --write \"**/*.{js,ts,json,md}\"",
"prepare": "husky",
@@ -36,7 +35,17 @@
"license": "MIT",
"description": "Quickstart a new Nillion app",
"bin": {
- "create-nillion-app": "./dist/index.js"
+ "create-nillion-app": "./dist/src/index.js"
+ },
+ "files": [
+ "dist",
+ "examples",
+ "README.md"
+ ],
+ "dependencies": {
+ "chalk": "^5.3.0",
+ "open": "^10.1.0",
+ "prompts": "^2.4.2"
},
"devDependencies": {
"@commitlint/cli": "^19.5.0",
@@ -65,10 +74,5 @@
"ts-node": "^10.9.2",
"typescript": "^5.6.2",
"typescript-eslint": "^8.6.0"
- },
- "dependencies": {
- "@nillion/client-core": "0.1.0-rc.16",
- "@nillion/client-react-hooks": "0.1.0-rc.16",
- "@nillion/client-vms": "0.1.0-rc.16"
}
}
diff --git a/src/functions/createNextJsProject.ts b/src/functions/createNextJsProject.ts
index 4f2142a..66dd30c 100644
--- a/src/functions/createNextJsProject.ts
+++ b/src/functions/createNextJsProject.ts
@@ -7,11 +7,10 @@ export function createNextJsProject(rootDir: string): void {
console.log("--------------------");
console.log("Creating Next.js project... ");
console.log("This should take ~ 1 minute. Feel free to go stretch you legs / grab a coffee ☕️");
- const nextAppPath: string = path.join(rootDir);
- const currentFilePath = fileURLToPath(import.meta.url);
- const currentDir = path.dirname(currentFilePath);
- const examplesPath = path.join(currentDir, "..", "..", "examples", "nextjs");
+ const nextAppPath: string = path.join(rootDir);
+ const pkgRoot = path.resolve(fileURLToPath(import.meta.url), "..", "..", "..");
+ const examplesPath = path.join(pkgRoot, "examples", "nextjs");
if (!fs.existsSync(examplesPath)) {
throw new Error(`Next.js example not found at ${examplesPath}`);
@@ -19,8 +18,49 @@ export function createNextJsProject(rootDir: string): void {
fs.cpSync(examplesPath, nextAppPath, { recursive: true });
+ const gitignorePath = path.join(nextAppPath, ".gitignore");
+ const gitignoreContent = `# Dependencies
+ /node_modules
+ /.pnp
+ .pnp.js
+ .yarn/install-state.gz
+
+ # Testing
+ /coverage
+
+ # Next.js
+ /.next/
+ /out/
+
+ # Production
+ /build
+
+ # Misc
+ .DS_Store
+ *.pem
+
+ # Debug
+ npm-debug.log*
+ yarn-debug.log*
+ yarn-error.log*
+
+ # Local env files
+ .env*.local
+
+ # Vercel
+ .vercel
+
+ # TypeScript
+ *.tsbuildinfo
+ next-env.d.ts
+
+ # Nada venv
+ nada/.venv/
+ `;
+ fs.writeFileSync(gitignorePath, gitignoreContent);
+
setupNadaFolder(process.cwd());
- console.log(`Next.js project created successfully at ${nextAppPath}!`);
+ console.log(`Next.js project created successfully at ${"\x1b[34m" + nextAppPath + "\x1b[0m"}!`);
console.log("--------------------");
}
diff --git a/src/functions/installNilup.ts b/src/functions/installNilup.ts
index 56579fb..2c93496 100644
--- a/src/functions/installNilup.ts
+++ b/src/functions/installNilup.ts
@@ -1,12 +1,31 @@
-import { execSync } from "child_process";
+import { exec, ExecException } from "child_process";
+import { promisify } from "util";
+const execAsync = promisify(exec);
-export function installNilup(): void {
+interface ExecError extends ExecException {
+ stdout?: string;
+ stderr?: string;
+}
+
+export async function installNilup() {
console.log("--------------------");
console.log("Installing nilup... This may take a few minutes.🙏 ");
- execSync("curl -fsSL https://nilup.nilogy.xyz/install.sh | sh", {
- stdio: "inherit",
- });
- execSync("nilup install latest", { stdio: "inherit" });
- execSync("nilup use latest", { stdio: "inherit" });
- execSync("nilup init", { stdio: "inherit" });
+
+ try {
+ await execAsync("curl https://nilup.nilogy.xyz/install.sh | sh", {
+ shell: process.env.SHELL || "/bin/sh",
+ env: { ...process.env, FORCE_COLOR: "1" },
+ });
+ } catch (error: unknown) {
+ const execError = error as ExecError;
+ // Strange here: errors even on successful installation so extra catch.
+ if (execError.stderr && execError.stderr.includes("You may begin using nilup now!")) {
+ console.log("Nilup installed or updated successfully!");
+ } else {
+ console.error("Failed to install Nilup. Error details:", execError.message);
+ if (execError.stdout) console.error("stdout:", execError.stdout);
+ if (execError.stderr) console.error("stderr:", execError.stderr);
+ throw error;
+ }
+ }
}
diff --git a/src/functions/isNilupInstalled.ts b/src/functions/isNilupInstalled.ts
index be0486b..f477496 100644
--- a/src/functions/isNilupInstalled.ts
+++ b/src/functions/isNilupInstalled.ts
@@ -1,11 +1,14 @@
import { execSync } from "child_process";
+import { installNilup } from "./installNilup.js";
-export function isNilupInstalled(): boolean {
+export async function isNilupInstalled() {
try {
const output = execSync("nilup -V", { stdio: "pipe" }).toString().trim();
console.log(`Nilup is already installed. Version: ${output}`);
- return true;
} catch (error: unknown) {
- return error instanceof Error;
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ const _ = error; // Explicitly declare unused variable
+ // console.log("Nilup is not installed.", error);
+ await installNilup();
}
}
diff --git a/src/functions/setupNadaFolder.ts b/src/functions/setupNadaFolder.ts
index 07c6ae3..6ca3058 100644
--- a/src/functions/setupNadaFolder.ts
+++ b/src/functions/setupNadaFolder.ts
@@ -6,6 +6,8 @@ export function setupNadaFolder(rootDir: string): void {
execSync("nada init nada", { stdio: "inherit" });
execSync("cd nada && python3 -m venv .venv", { stdio: "inherit" });
+
console.log("Python venv created");
+
process.chdir(rootDir);
}
diff --git a/src/index.ts b/src/index.ts
index 5030381..ac61c25 100755
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,48 +1,46 @@
#!/usr/bin/env node
-
import fs from "fs";
import { displayLogo } from "./functions/displayLogo.js";
import { displayWelcomeMessage } from "./functions/displayWelcomeMessage.js";
-import { isNilupInstalled } from "./functions/isNilupInstalled.js";
-import { installNilup } from "./functions/installNilup.js";
import { createNextJsProject } from "./functions/createNextJsProject.js";
import { promptForProjectName } from "./functions/nameRepo.js";
import { installDependencies } from "./functions/installRepoPackage.js";
import open from "open";
+import { isNilupInstalled } from "./functions/isNilupInstalled.js";
async function main() {
displayLogo();
displayWelcomeMessage();
-
const projectName = await promptForProjectName();
console.log("--------------------");
- console.log(`Creating project: ${projectName}`);
+ console.log(`Creating project: ${"\x1b[34m" + projectName + "\x1b[0m"}`);
console.log("--------------------");
- console.log("Checking if Nilup is installed...");
-
- if (!isNilupInstalled()) {
- installNilup();
+ try {
+ console.log("Checking if Nilup is installed...");
+ await isNilupInstalled();
+
+ fs.mkdirSync(projectName, { recursive: true });
+ process.chdir(projectName);
+
+ createNextJsProject(process.cwd());
+ await installDependencies();
+
+ console.log("--------------------");
+ console.log(`Nillion quickstart has been created successfully! 🚀`);
+ console.log(
+ `Cd into your repo + run "npm run dev" and open localhost:3000 in your browser to see your new project.`,
+ );
+ console.log("--------------------");
+
+ console.log(`Follow the rest of the Quickstart Guide to get started!`);
+ console.log("Opening the Nillion Quickstart Guide in your browser...");
+ open("https://github.com/NillionNetwork/awesome-nillion/issues/2");
+ console.log("--------------------");
+ } catch (error) {
+ console.error("An error occurred during the setup process:", error);
+ process.exit(1);
}
-
- fs.mkdirSync(projectName, { recursive: true });
- process.chdir(projectName);
-
- createNextJsProject(process.cwd());
-
- await installDependencies();
-
- console.log("--------------------");
- console.log(`Nillion quickstart has been created successfully! 🚀`);
- console.log(
- `Cd into your repo + run "npm run dev" and open localhost:3000 in your browser to see your new project.`,
- );
- console.log("--------------------");
- console.log(`Follow the rest of the Quickstart Guide to get started!`);
- console.log("Opening the Nillion Quickstart Guide in your browser...");
- open("https://github.com/NillionNetwork/awesome-nillion/issues/2");
- console.log("--------------------");
}
-
main().catch((err) => {
console.error("Unexpected error. Please report it as a bug:");
console.error(err);
diff --git a/src/utils/register.js b/src/utils/register.js
new file mode 100644
index 0000000..bc9dac7
--- /dev/null
+++ b/src/utils/register.js
@@ -0,0 +1,5 @@
+// From https://github.com/nodejs/node/issues/51196#issuecomment-1998216742
+import { register } from "node:module";
+import { pathToFileURL } from "node:url";
+
+register("ts-node/esm", pathToFileURL("./"));