From 389a2b1a3a2af7c0515b0d913771c4df4bc5ca3e Mon Sep 17 00:00:00 2001 From: Michael Kochell <6913320+mickmister@users.noreply.github.com> Date: Fri, 20 Jun 2025 03:42:33 -0400 Subject: [PATCH 1/7] initial create-springboard-app --- .gitignore | 2 + .npmrc | 1 + package.json | 123 ++++ pnpm-lock.yaml | 1526 ++++++++++++++++++++++++++++++++++++++++++++++++ src/index.tsx | 14 + 5 files changed, 1666 insertions(+) create mode 100644 .gitignore create mode 100644 .npmrc create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 src/index.tsx diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..76add87 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +node_modules +dist \ No newline at end of file diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..cc8df9d --- /dev/null +++ b/.npmrc @@ -0,0 +1 @@ +node-linker=hoisted \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..25ceaa3 --- /dev/null +++ b/package.json @@ -0,0 +1,123 @@ +{ + "name": "handraiser-svelte", + "version": "1.0.0", + "description": "Raise your hands", + "main": "index.js", + "dependencies": { + "@jamtools/core": "0.16.0-svelte-dev2", + "adsr": "^1.0.1", + "ansi-regex": "^5.0.1", + "ansi-styles": "^4.3.0", + "array-flatten": "^3.0.0", + "audio-loader": "^0.5.0", + "base64-js": "^1.5.1", + "better-sqlite3": "^11.10.0", + "bindings": "^1.5.0", + "bl": "^4.1.0", + "buffer": "^5.7.1", + "chalk": "^4.1.2", + "chownr": "^1.1.4", + "cliui": "^8.0.1", + "color-convert": "^2.0.1", + "color-name": "^1.1.4", + "commander": "^12.1.0", + "concurrently": "^9.1.2", + "csstype": "^3.1.3", + "decompress-response": "^6.0.0", + "deep-extend": "^0.6.0", + "detect-libc": "^2.0.4", + "dexie": "^4.0.11", + "djipevents": "^2.0.7", + "easymidi": "^3.1.0", + "emoji-regex": "^8.0.0", + "end-of-stream": "^1.4.5", + "esbuild": "^0.25.5", + "escalade": "^3.2.0", + "expand-template": "^2.0.3", + "file-uri-to-path": "^1.0.0", + "fs-constants": "^1.0.0", + "get-caller-file": "^2.0.5", + "github-from-package": "^0.0.0", + "has-flag": "^4.0.0", + "hono": "^4.8.1", + "ieee754": "^1.2.1", + "immer": "^10.1.1", + "inherits": "^2.0.4", + "ini": "^1.3.8", + "is-fullwidth-code-point": "^3.0.0", + "isomorphic-ws": "^4.0.1", + "jazz-midi": "^1.7.9", + "json-rpc-2.0": "^1.7.0", + "jzz": "^1.9.3", + "kysely": "^0.28.2", + "lodash": "^4.17.21", + "midi-file": "^1.2.4", + "midimessage": "^1.0.5", + "mimic-response": "^3.1.0", + "minimist": "^1.2.8", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^2.0.0", + "node-abi": "^3.75.0", + "node-addon-api": "^6.1.0", + "note-parser": "^1.1.0", + "once": "^1.4.0", + "pkg-prebuilds": "^1.0.0", + "prebuild-install": "^7.1.3", + "pump": "^3.0.3", + "rc": "^1.2.8", + "react": "^19.1.0", + "react-dom": "^19.1.0", + "react-router": "^6.30.1", + "react-router-dom": "^6.30.1", + "readable-stream": "^3.6.2", + "reconnecting-websocket": "^4.4.0", + "require-directory": "^2.1.1", + "rxjs": "^7.8.2", + "safe-buffer": "^5.2.1", + "sample-player": "^0.5.5", + "scheduler": "^0.26.0", + "semver": "^7.7.2", + "shell-quote": "^1.8.3", + "simple-concat": "^1.0.1", + "simple-get": "^4.0.1", + "soundfont-player": "^0.12.0", + "springboard": "0.16.0-svelte-dev2", + "springboard-cli": "0.16.0-svelte-dev2", + "springboard-server": "^0.16.0-svelte-dev2", + "string-width": "^4.2.3", + "string_decoder": "^1.3.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^2.0.1", + "supports-color": "^7.2.0", + "tar-fs": "^2.1.3", + "tar-stream": "^2.2.0", + "tree-kill": "^1.2.2", + "tslib": "^2.8.1", + "tunnel-agent": "^0.6.0", + "undici-types": "^7.8.0", + "util-deprecate": "^1.0.2", + "webmidi": "^3.1.12", + "wrap-ansi": "^7.0.0", + "wrappy": "^1.0.2", + "ws": "^8.18.2", + "y18n": "^5.0.8", + "yargs": "^17.7.2", + "yargs-parser": "^21.1.1", + "zod": "^3.25.67" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "dev": "sb dev src/index.tsx", + "build": "sb build src/index.tsx", + "start": "sb start" + }, + "keywords": [], + "author": "", + "license": "ISC", + "devDependencies": { + "@types/node": "^24.0.3", + "@types/react": "^19.1.8", + "@types/react-dom": "^19.1.6", + "typescript": "^5.8.3" + } +} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..4d8f8b6 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,1526 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@jamtools/core': + specifier: 0.16.0-svelte-dev2 + version: 0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + adsr: + specifier: ^1.0.1 + version: 1.0.1 + ansi-regex: + specifier: ^5.0.1 + version: 5.0.1 + ansi-styles: + specifier: ^4.3.0 + version: 4.3.0 + array-flatten: + specifier: ^3.0.0 + version: 3.0.0 + audio-loader: + specifier: ^0.5.0 + version: 0.5.0 + base64-js: + specifier: ^1.5.1 + version: 1.5.1 + better-sqlite3: + specifier: ^11.10.0 + version: 11.10.0 + bindings: + specifier: ^1.5.0 + version: 1.5.0 + bl: + specifier: ^4.1.0 + version: 4.1.0 + buffer: + specifier: ^5.7.1 + version: 5.7.1 + chalk: + specifier: ^4.1.2 + version: 4.1.2 + chownr: + specifier: ^1.1.4 + version: 1.1.4 + cliui: + specifier: ^8.0.1 + version: 8.0.1 + color-convert: + specifier: ^2.0.1 + version: 2.0.1 + color-name: + specifier: ^1.1.4 + version: 1.1.4 + commander: + specifier: ^12.1.0 + version: 12.1.0 + concurrently: + specifier: ^9.1.2 + version: 9.1.2 + csstype: + specifier: ^3.1.3 + version: 3.1.3 + decompress-response: + specifier: ^6.0.0 + version: 6.0.0 + deep-extend: + specifier: ^0.6.0 + version: 0.6.0 + detect-libc: + specifier: ^2.0.4 + version: 2.0.4 + dexie: + specifier: ^4.0.11 + version: 4.0.11 + djipevents: + specifier: ^2.0.7 + version: 2.0.7 + easymidi: + specifier: ^3.1.0 + version: 3.1.0 + emoji-regex: + specifier: ^8.0.0 + version: 8.0.0 + end-of-stream: + specifier: ^1.4.5 + version: 1.4.5 + esbuild: + specifier: ^0.25.5 + version: 0.25.5 + escalade: + specifier: ^3.2.0 + version: 3.2.0 + expand-template: + specifier: ^2.0.3 + version: 2.0.3 + file-uri-to-path: + specifier: ^1.0.0 + version: 1.0.0 + fs-constants: + specifier: ^1.0.0 + version: 1.0.0 + get-caller-file: + specifier: ^2.0.5 + version: 2.0.5 + github-from-package: + specifier: ^0.0.0 + version: 0.0.0 + has-flag: + specifier: ^4.0.0 + version: 4.0.0 + hono: + specifier: ^4.8.1 + version: 4.8.1 + ieee754: + specifier: ^1.2.1 + version: 1.2.1 + immer: + specifier: ^10.1.1 + version: 10.1.1 + inherits: + specifier: ^2.0.4 + version: 2.0.4 + ini: + specifier: ^1.3.8 + version: 1.3.8 + is-fullwidth-code-point: + specifier: ^3.0.0 + version: 3.0.0 + isomorphic-ws: + specifier: ^4.0.1 + version: 4.0.1(ws@8.18.2) + jazz-midi: + specifier: ^1.7.9 + version: 1.7.9 + json-rpc-2.0: + specifier: ^1.7.0 + version: 1.7.0 + jzz: + specifier: ^1.9.3 + version: 1.9.3 + kysely: + specifier: ^0.28.2 + version: 0.28.2 + lodash: + specifier: ^4.17.21 + version: 4.17.21 + midi-file: + specifier: ^1.2.4 + version: 1.2.4 + midimessage: + specifier: ^1.0.5 + version: 1.0.5 + mimic-response: + specifier: ^3.1.0 + version: 3.1.0 + minimist: + specifier: ^1.2.8 + version: 1.2.8 + mkdirp-classic: + specifier: ^0.5.3 + version: 0.5.3 + napi-build-utils: + specifier: ^2.0.0 + version: 2.0.0 + node-abi: + specifier: ^3.75.0 + version: 3.75.0 + node-addon-api: + specifier: ^6.1.0 + version: 6.1.0 + note-parser: + specifier: ^1.1.0 + version: 1.1.0 + once: + specifier: ^1.4.0 + version: 1.4.0 + pkg-prebuilds: + specifier: ^1.0.0 + version: 1.0.0 + prebuild-install: + specifier: ^7.1.3 + version: 7.1.3 + pump: + specifier: ^3.0.3 + version: 3.0.3 + rc: + specifier: ^1.2.8 + version: 1.2.8 + react: + specifier: ^19.1.0 + version: 19.1.0 + react-dom: + specifier: ^19.1.0 + version: 19.1.0(react@19.1.0) + react-router: + specifier: ^6.30.1 + version: 6.30.1(react@19.1.0) + react-router-dom: + specifier: ^6.30.1 + version: 6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + readable-stream: + specifier: ^3.6.2 + version: 3.6.2 + reconnecting-websocket: + specifier: ^4.4.0 + version: 4.4.0 + require-directory: + specifier: ^2.1.1 + version: 2.1.1 + rxjs: + specifier: ^7.8.2 + version: 7.8.2 + safe-buffer: + specifier: ^5.2.1 + version: 5.2.1 + sample-player: + specifier: ^0.5.5 + version: 0.5.5 + scheduler: + specifier: ^0.26.0 + version: 0.26.0 + semver: + specifier: ^7.7.2 + version: 7.7.2 + shell-quote: + specifier: ^1.8.3 + version: 1.8.3 + simple-concat: + specifier: ^1.0.1 + version: 1.0.1 + simple-get: + specifier: ^4.0.1 + version: 4.0.1 + soundfont-player: + specifier: ^0.12.0 + version: 0.12.0 + springboard: + specifier: 0.16.0-svelte-dev2 + version: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard-cli: + specifier: 0.16.0-svelte-dev2 + version: 0.16.0-svelte-dev2(pihxslhu436hefdtx2zo42poua) + springboard-server: + specifier: ^0.16.0-svelte-dev2 + version: 0.16.0-svelte-dev2(@springboardjs/data-storage@0.16.0-svelte-dev2(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + string-width: + specifier: ^4.2.3 + version: 4.2.3 + string_decoder: + specifier: ^1.3.0 + version: 1.3.0 + strip-ansi: + specifier: ^6.0.1 + version: 6.0.1 + strip-json-comments: + specifier: ^2.0.1 + version: 2.0.1 + supports-color: + specifier: ^7.2.0 + version: 7.2.0 + tar-fs: + specifier: ^2.1.3 + version: 2.1.3 + tar-stream: + specifier: ^2.2.0 + version: 2.2.0 + tree-kill: + specifier: ^1.2.2 + version: 1.2.2 + tslib: + specifier: ^2.8.1 + version: 2.8.1 + tunnel-agent: + specifier: ^0.6.0 + version: 0.6.0 + undici-types: + specifier: ^7.8.0 + version: 7.8.0 + util-deprecate: + specifier: ^1.0.2 + version: 1.0.2 + webmidi: + specifier: ^3.1.12 + version: 3.1.12 + wrap-ansi: + specifier: ^7.0.0 + version: 7.0.0 + wrappy: + specifier: ^1.0.2 + version: 1.0.2 + ws: + specifier: ^8.18.2 + version: 8.18.2 + y18n: + specifier: ^5.0.8 + version: 5.0.8 + yargs: + specifier: ^17.7.2 + version: 17.7.2 + yargs-parser: + specifier: ^21.1.1 + version: 21.1.1 + zod: + specifier: ^3.25.67 + version: 3.25.67 + devDependencies: + '@types/node': + specifier: ^24.0.3 + version: 24.0.3 + '@types/react': + specifier: ^19.1.8 + version: 19.1.8 + '@types/react-dom': + specifier: ^19.1.6 + version: 19.1.6(@types/react@19.1.8) + typescript: + specifier: ^5.8.3 + version: 5.8.3 + +packages: + + '@babel/runtime@7.27.6': + resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} + engines: {node: '>=6.9.0'} + + '@esbuild/aix-ppc64@0.25.5': + resolution: {integrity: sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.25.5': + resolution: {integrity: sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.25.5': + resolution: {integrity: sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.25.5': + resolution: {integrity: sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.25.5': + resolution: {integrity: sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.25.5': + resolution: {integrity: sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.25.5': + resolution: {integrity: sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.25.5': + resolution: {integrity: sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.25.5': + resolution: {integrity: sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.25.5': + resolution: {integrity: sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.25.5': + resolution: {integrity: sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.25.5': + resolution: {integrity: sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.25.5': + resolution: {integrity: sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.25.5': + resolution: {integrity: sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.25.5': + resolution: {integrity: sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.25.5': + resolution: {integrity: sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.25.5': + resolution: {integrity: sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.25.5': + resolution: {integrity: sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.25.5': + resolution: {integrity: sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.25.5': + resolution: {integrity: sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.25.5': + resolution: {integrity: sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/sunos-x64@0.25.5': + resolution: {integrity: sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.25.5': + resolution: {integrity: sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.25.5': + resolution: {integrity: sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.25.5': + resolution: {integrity: sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + + '@hono/node-server@1.14.4': + resolution: {integrity: sha512-DnxpshhYewr2q9ZN8ez/M5mmc3sucr8CT1sIgIy1bkeUXut9XWDkqHoFHRhWIQgkYnKpVRxunyhK7WzpJeJ6qQ==} + engines: {node: '>=18.14.1'} + peerDependencies: + hono: ^4 + + '@hono/node-ws@1.1.7': + resolution: {integrity: sha512-O+sJXeruHlAAdSHUoyol8s2kTVqixdGIfKqakyN6z2RKR2O8LDOFr1CpTye7xfwmUsBe6uoXKSLmGvLbCfPFgw==} + engines: {node: '>=18.14.1'} + peerDependencies: + '@hono/node-server': ^1.11.1 + hono: ^4.6.0 + + '@hono/trpc-server@0.3.4': + resolution: {integrity: sha512-xFOPjUPnII70FgicDzOJy1ufIoBTu8eF578zGiDOrYOrYN8CJe140s9buzuPkX+SwJRYK8LjEBHywqZtxdm8aA==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@trpc/server': ^10.10.0 || >11.0.0-rc + hono: '>=4.*' + + '@jamtools/core@0.16.0-svelte-dev2': + resolution: {integrity: sha512-DvVluak3wv/HkW9OLqXn+Qfufm15VdtN0u5+AKxeJ7LVhKsDebyoMCmskSeUdd34sAYlGz93usuykf9YqkGYnQ==} + peerDependencies: + '@springboardjs/platforms-browser': 0.16.0-svelte-dev2 + '@tonejs/midi': ^2.0.0 + springboard: 0.16.0-svelte-dev2 + svelte: '>= 5' + peerDependenciesMeta: + svelte: + optional: true + + '@julusian/midi@3.6.1': + resolution: {integrity: sha512-sC6tTMAMZsHOQILAv/R0On5tKKhzBQUjdyYWzh9l0UQeNry12CFIyRWK1Mep5xCHWCTUB0w4gxngpciA5PgN/Q==} + engines: {node: '>=14.15'} + + '@remix-run/router@1.23.0': + resolution: {integrity: sha512-O3rHJzAQKamUz1fvE0Qaw0xSFqsA/yafi2iqeE0pvdFtCO1viYx8QL6f3Ln/aCCTLxs68SLf0KPM9eSeM8yBnA==} + engines: {node: '>=14.0.0'} + + '@springboardjs/data-storage@0.16.0-svelte-dev2': + resolution: {integrity: sha512-t1Pew5acTIjAIAbQtaa5T+T9x2UwWaqlqxsgTfCI0zbgiDkAvK/KdQGSASEL9dPSwhvMHzz9Zu98eZR5kkFfPw==} + peerDependencies: + kysely: '>= 0.24.0' + + '@springboardjs/platforms-browser@0.16.0-svelte-dev2': + resolution: {integrity: sha512-Dxx9Du5N3sxQLZv0G1HkkiZPSY7hn65UHTBLTOZhF0sGIg/cS2wXTTaI/B+3XprYXlI56oZN9T9QhxY2DkAU0Q==} + peerDependencies: + react-router-dom: ^6 + springboard: 0.16.0-svelte-dev2 + + '@springboardjs/platforms-node@0.16.0-svelte-dev2': + resolution: {integrity: sha512-DEEznVvAHL9WhhKe4LN1XCDU06qd2q4OresJ2UsggyqlieH4Iv3fYKU5Xknk0uJuhuL1xw1xPFnB60wzzIqP2g==} + peerDependencies: + isomorphic-ws: ^4.0.1 + springboard: 0.16.0-svelte-dev2 + ws: ^8.18.0 + + '@tonejs/midi@2.0.28': + resolution: {integrity: sha512-RII6YpInPsOZ5t3Si/20QKpNqB1lZ2OCFJSOzJxz38YdY/3zqDr3uaml4JuCWkdixuPqP1/TBnXzhQ39csyoVg==} + + '@trpc/client@10.45.2': + resolution: {integrity: sha512-ykALM5kYWTLn1zYuUOZ2cPWlVfrXhc18HzBDyRhoPYN0jey4iQHEFSEowfnhg1RvYnrAVjNBgHNeSAXjrDbGwg==} + peerDependencies: + '@trpc/server': 10.45.2 + + '@trpc/server@10.45.2': + resolution: {integrity: sha512-wOrSThNNE4HUnuhJG6PfDRp4L2009KDVxsd+2VYH8ro6o/7/jwYZ8Uu5j+VaW+mOmc8EHerHzGcdbGNQSAUPgg==} + + '@types/node@24.0.3': + resolution: {integrity: sha512-R4I/kzCYAdRLzfiCabn9hxWfbuHS573x+r0dJMkkzThEa7pbrcDWK+9zu3e7aBOouf+rQAciqPFMnxwr0aWgKg==} + + '@types/react-dom@19.1.6': + resolution: {integrity: sha512-4hOiT/dwO8Ko0gV1m/TJZYk3y0KBnY9vzDh7W+DH17b2HFSOGgdj33dhihPeuy3l0q23+4e+hoXHV6hCC4dCXw==} + peerDependencies: + '@types/react': ^19.0.0 + + '@types/react@19.1.8': + resolution: {integrity: sha512-AwAfQ2Wa5bCx9WP8nZL2uMZWod7J7/JSplxbTmBQ5ms6QpqNYm672H0Vu9ZVKVngQ+ii4R/byguVEUZQyeg44g==} + + '@types/webmidi@2.1.0': + resolution: {integrity: sha512-k898MjEUSHB+6rSeCPQk/kLgie0wgWZ2t78GlWj86HbTQ+XmtbBafYg5LNjn8bVHfItEhPGZPf579Xfc6keV6w==} + + adsr@1.0.1: + resolution: {integrity: sha512-thr9LK4jxApOzBA33IWOA83bXJFbyfbeozpHXyrMQOIhUni198uRxXqDhobW0S/51iokqty2Yz2WbLZbE6tntQ==} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + array-flatten@3.0.0: + resolution: {integrity: sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==} + + audio-loader@0.5.0: + resolution: {integrity: sha512-mEoYRjZhqkBSen/X9i2PNosqvafEsur8bI5MNoPr0wsJu9Nzlul3Yv1elYeMPsXxTxYhXLY8AZlScBvaK4mydg==} + + base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + + better-sqlite3@11.10.0: + resolution: {integrity: sha512-EwhOpyXiOEL/lKzHz9AW1msWFNzGc/z+LzeB3/jnFJpxu+th2yqvzsSWas1v9jgs9+xiXJcD5A8CJxAG2TaghQ==} + + bindings@1.5.0: + resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} + + bl@4.1.0: + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + + buffer@5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chownr@1.1.4: + resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + commander@12.1.0: + resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} + engines: {node: '>=18'} + + concurrently@9.1.2: + resolution: {integrity: sha512-H9MWcoPsYddwbOGM6difjVwVZHl63nwMEwDJG/L7VGtuaJhb12h2caPG2tVPWs7emuYix252iGfqOyrz1GczTQ==} + engines: {node: '>=18'} + hasBin: true + + csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + + decompress-response@6.0.0: + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} + engines: {node: '>=10'} + + deep-extend@0.6.0: + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} + engines: {node: '>=4.0.0'} + + detect-libc@2.0.4: + resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} + engines: {node: '>=8'} + + dexie@4.0.11: + resolution: {integrity: sha512-SOKO002EqlvBYYKQSew3iymBoN2EQ4BDw/3yprjh7kAfFzjBYkaMNa/pZvcA7HSWlcKSQb9XhPe3wKyQ0x4A8A==} + + djipevents@2.0.7: + resolution: {integrity: sha512-KNFYaU85imxOCKOUsIR70Iz9E19r96/X7LSH+u0tSoZdpWcBdzoqtTsU+wuLhc6GMpSFob+KInkZAbfKi01Bjg==} + + easymidi@3.1.0: + resolution: {integrity: sha512-bxEwfPysM1L+SO/qwHaYu9dvTxw2QHFjGV9EMzqGQJbhEP2MupKpg6eJMkj+uoXN0Ep1JhVPLbNLPmt3UkZRTw==} + engines: {node: '>=14.15'} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + end-of-stream@1.4.5: + resolution: {integrity: sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==} + + esbuild@0.25.5: + resolution: {integrity: sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==} + engines: {node: '>=18'} + hasBin: true + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + expand-template@2.0.3: + resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} + engines: {node: '>=6'} + + file-uri-to-path@1.0.0: + resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} + + fs-constants@1.0.0: + resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + github-from-package@0.0.0: + resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + hono@4.8.1: + resolution: {integrity: sha512-ErA2ifywnSmcnB5XDuFqGDfXJ9xuAJR2C/8cZAk6vDaOCzofB8eNlha/wZWIiamREzWk94S9Z7wHsnKQHn7Niw==} + engines: {node: '>=16.9.0'} + + ieee754@1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + + immer@10.1.1: + resolution: {integrity: sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==} + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + isomorphic-ws@4.0.1: + resolution: {integrity: sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==} + peerDependencies: + ws: '*' + + jazz-midi@1.7.9: + resolution: {integrity: sha512-c8c4BBgwxdsIr1iVm53nadCrtH7BUlnX3V95ciK/gbvXN/ndE5+POskBalXgqlc/r9p2XUbdLTrgrC6fou5p9w==} + engines: {node: '>=10.0.0'} + + json-rpc-2.0@1.7.0: + resolution: {integrity: sha512-asnLgC1qD5ytP+fvBP8uL0rvj+l8P6iYICbzZ8dVxCpESffVjzA7KkYkbKCIbavs7cllwH1ZUaNtJwphdeRqpg==} + + jzz@1.9.3: + resolution: {integrity: sha512-DXQ7xXuJzC4YxNbQZy9pfHC/DOXM6IHgceTXnkhk1/+lU/qDk8W9xUaNpgCH6t1QDQ9roz7FSVtFc0/JhYQFxg==} + + kysely@0.28.2: + resolution: {integrity: sha512-4YAVLoF0Sf0UTqlhgQMFU9iQECdah7n+13ANkiuVfRvlK+uI0Etbgd7bVP36dKlG+NXWbhGua8vnGt+sdhvT7A==} + engines: {node: '>=18.0.0'} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + midi-file@1.2.4: + resolution: {integrity: sha512-B5SnBC6i2bwJIXTY9MElIydJwAmnKx+r5eJ1jknTLetzLflEl0GWveuBB6ACrQpecSRkOB6fhTx1PwXk2BVxnA==} + + midimessage@1.0.5: + resolution: {integrity: sha512-MPJ2tDupFOfZB5/PLp8fri1IS4fd9hPj0Bio//FBhWRQ+TsJA7/49CF1aJyraDxa0Jq8zMHAwrwXl2GINvLvgw==} + + mimic-response@3.1.0: + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} + engines: {node: '>=10'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + mkdirp-classic@0.5.3: + resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} + + napi-build-utils@2.0.0: + resolution: {integrity: sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==} + + node-abi@3.75.0: + resolution: {integrity: sha512-OhYaY5sDsIka7H7AtijtI9jwGYLyl29eQn/W623DiN/MIv5sUqc4g7BIDThX+gb7di9f6xK02nkp8sdfFWZLTg==} + engines: {node: '>=10'} + + node-addon-api@6.1.0: + resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} + + note-parser@1.1.0: + resolution: {integrity: sha512-YTqWQBsRp40EFrEznnkGtmx68gcgOQ8CdoBspqGBA3G1/4mJwIYbDe/vuNpX3oGX2DhP7b1dBgTmj7p3Zr0P1Q==} + + note-parser@2.0.1: + resolution: {integrity: sha512-w9o6Fv46y3NsFxeezTZSmftBtUM/ypme6iZWVrTJvvsD5RN+w0XNDePWtfreNrZFL3jSjBFhadPoXb+pJO4UdA==} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + pkg-prebuilds@1.0.0: + resolution: {integrity: sha512-D9wlkXZCmjxj2kBHTw3fGSyjoahr33breGBoJcoezpi7ouYS59DJVOHMZ+dgqacSrZiJo4qtkXxLQTE+BqXJmQ==} + engines: {node: '>= 14.15.0'} + hasBin: true + + prebuild-install@7.1.3: + resolution: {integrity: sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==} + engines: {node: '>=10'} + hasBin: true + + pump@3.0.3: + resolution: {integrity: sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==} + + rc@1.2.8: + resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} + hasBin: true + + react-dom@19.1.0: + resolution: {integrity: sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==} + peerDependencies: + react: ^19.1.0 + + react-router-dom@6.30.1: + resolution: {integrity: sha512-llKsgOkZdbPU1Eg3zK8lCn+sjD9wMRZZPuzmdWWX5SUs8OFkN5HnFVC0u5KMeMaC9aoancFI/KoLuKPqN+hxHw==} + engines: {node: '>=14.0.0'} + peerDependencies: + react: '>=16.8' + react-dom: '>=16.8' + + react-router@6.30.1: + resolution: {integrity: sha512-X1m21aEmxGXqENEPG3T6u0Th7g0aS4ZmoNynhbs+Cn+q+QGTLt+d5IQ2bHAXKzKcxGJjxACpVbnYQSCRcfxHlQ==} + engines: {node: '>=14.0.0'} + peerDependencies: + react: '>=16.8' + + react@19.1.0: + resolution: {integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==} + engines: {node: '>=0.10.0'} + + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + + reconnecting-websocket@4.4.0: + resolution: {integrity: sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + rxjs@7.8.2: + resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + sample-player@0.5.5: + resolution: {integrity: sha512-VQ9pXPJ1m/eTH8QK6OQ8Dn/HSVToNyY9w9vnv+y/yjkJeRm87tJ/gBEm66jItfSLhKe6VG1DfX8+oT+Mg7QUpg==} + + scheduler@0.26.0: + resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==} + + semver@7.7.2: + resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + engines: {node: '>=10'} + hasBin: true + + shell-quote@1.8.3: + resolution: {integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==} + engines: {node: '>= 0.4'} + + simple-concat@1.0.1: + resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} + + simple-get@4.0.1: + resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} + + soundfont-player@0.12.0: + resolution: {integrity: sha512-8BJIsAt7h1PK3thSZDgF6zecgGhYkK74JnZO8WRZi3h34qG6H/DYlnv7cpRvL7Q9C8N6qld4Qwj7nJsX1gYjEA==} + + springboard-cli@0.16.0-svelte-dev2: + resolution: {integrity: sha512-7vOeF9UBYlSepHVaZvjIP9vVoYMyLjacjqibEifUZQNEtzxTtamjjSsjYs0H+QXfOBWw6pMzd/5SYB1XZW52ng==} + hasBin: true + peerDependencies: + '@springboardjs/platforms-browser': 0.16.0-svelte-dev2 + '@springboardjs/platforms-node': 0.16.0-svelte-dev2 + springboard: 0.16.0-svelte-dev2 + springboard-server: 0.16.0-svelte-dev2 + + springboard-server@0.16.0-svelte-dev2: + resolution: {integrity: sha512-UPw7vZESCdWyV18RCR3eNiQrOrxoNzKMZy4QFTmS+O0J8sxASZvLJgwyXY6I5zl1uyvXWc1TKMh9yjcOWUc7Xw==} + peerDependencies: + '@springboardjs/data-storage': 0.16.0-svelte-dev2 + '@springboardjs/platforms-node': 0.16.0-svelte-dev2 + hono: ^4.6.7 + springboard: 0.16.0-svelte-dev2 + + springboard@0.16.0-svelte-dev2: + resolution: {integrity: sha512-FZoSByxlwfxig7ivwbUXGMqmanttgLkUlN6EV4/UUa89JzfxaQQagvznZHNuOrGgwObH0JMdzIe2Q0sEA7Wcbw==} + peerDependencies: + '@trpc/client': ^10.45.2 + immer: ^10.1.1 + json-rpc-2.0: ^1.7.0 + react: ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + rxjs: ^7.0.0 + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-json-comments@2.0.1: + resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} + engines: {node: '>=0.10.0'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + + tar-fs@2.1.3: + resolution: {integrity: sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg==} + + tar-stream@2.2.0: + resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} + engines: {node: '>=6'} + + tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + tunnel-agent@0.6.0: + resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} + + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + engines: {node: '>=14.17'} + hasBin: true + + undici-types@7.8.0: + resolution: {integrity: sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + webmidi@3.1.12: + resolution: {integrity: sha512-X1lACggXm2BxuAPdx5wleh8S2kygduHbtR2ti5sGhivLkX6Muv/sLAYmPuIaNLOUddyxr71+3tsq8m5dKXoT4A==} + engines: {node: '>=8.5'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + ws@8.18.2: + resolution: {integrity: sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + zod@3.25.67: + resolution: {integrity: sha512-idA2YXwpCdqUSKRCACDE6ItZD9TZzy3OZMtpfLoh6oPR47lipysRrJfjzMqFxQ3uJuUPyUeWe1r9vLH33xO/Qw==} + +snapshots: + + '@babel/runtime@7.27.6': {} + + '@esbuild/aix-ppc64@0.25.5': + optional: true + + '@esbuild/android-arm64@0.25.5': + optional: true + + '@esbuild/android-arm@0.25.5': + optional: true + + '@esbuild/android-x64@0.25.5': + optional: true + + '@esbuild/darwin-arm64@0.25.5': + optional: true + + '@esbuild/darwin-x64@0.25.5': + optional: true + + '@esbuild/freebsd-arm64@0.25.5': + optional: true + + '@esbuild/freebsd-x64@0.25.5': + optional: true + + '@esbuild/linux-arm64@0.25.5': + optional: true + + '@esbuild/linux-arm@0.25.5': + optional: true + + '@esbuild/linux-ia32@0.25.5': + optional: true + + '@esbuild/linux-loong64@0.25.5': + optional: true + + '@esbuild/linux-mips64el@0.25.5': + optional: true + + '@esbuild/linux-ppc64@0.25.5': + optional: true + + '@esbuild/linux-riscv64@0.25.5': + optional: true + + '@esbuild/linux-s390x@0.25.5': + optional: true + + '@esbuild/linux-x64@0.25.5': + optional: true + + '@esbuild/netbsd-arm64@0.25.5': + optional: true + + '@esbuild/netbsd-x64@0.25.5': + optional: true + + '@esbuild/openbsd-arm64@0.25.5': + optional: true + + '@esbuild/openbsd-x64@0.25.5': + optional: true + + '@esbuild/sunos-x64@0.25.5': + optional: true + + '@esbuild/win32-arm64@0.25.5': + optional: true + + '@esbuild/win32-ia32@0.25.5': + optional: true + + '@esbuild/win32-x64@0.25.5': + optional: true + + '@hono/node-server@1.14.4(hono@4.8.1)': + dependencies: + hono: 4.8.1 + + '@hono/node-ws@1.1.7(@hono/node-server@1.14.4(hono@4.8.1))(hono@4.8.1)': + dependencies: + '@hono/node-server': 1.14.4(hono@4.8.1) + hono: 4.8.1 + ws: 8.18.2 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + '@hono/trpc-server@0.3.4(@trpc/server@10.45.2)(hono@4.8.1)': + dependencies: + '@trpc/server': 10.45.2 + hono: 4.8.1 + + '@jamtools/core@0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))': + dependencies: + '@springboardjs/platforms-browser': 0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + '@tonejs/midi': 2.0.28 + easymidi: 3.1.0 + immer: 10.1.1 + midi-file: 1.2.4 + soundfont-player: 0.12.0 + springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + webmidi: 3.1.12 + + '@julusian/midi@3.6.1': + dependencies: + node-addon-api: 6.1.0 + pkg-prebuilds: 1.0.0 + + '@remix-run/router@1.23.0': {} + + '@springboardjs/data-storage@0.16.0-svelte-dev2(kysely@0.28.2)': + dependencies: + '@trpc/client': 10.45.2(@trpc/server@10.45.2) + '@trpc/server': 10.45.2 + better-sqlite3: 11.10.0 + kysely: 0.28.2 + zod: 3.25.67 + + '@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))': + dependencies: + json-rpc-2.0: 1.7.0 + react-router-dom: 6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + reconnecting-websocket: 4.4.0 + springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + + '@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2)': + dependencies: + isomorphic-ws: 4.0.1(ws@8.18.2) + json-rpc-2.0: 1.7.0 + reconnecting-websocket: 4.4.0 + springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + ws: 8.18.2 + + '@tonejs/midi@2.0.28': + dependencies: + array-flatten: 3.0.0 + midi-file: 1.2.4 + + '@trpc/client@10.45.2(@trpc/server@10.45.2)': + dependencies: + '@trpc/server': 10.45.2 + + '@trpc/server@10.45.2': {} + + '@types/node@24.0.3': + dependencies: + undici-types: 7.8.0 + + '@types/react-dom@19.1.6(@types/react@19.1.8)': + dependencies: + '@types/react': 19.1.8 + + '@types/react@19.1.8': + dependencies: + csstype: 3.1.3 + + '@types/webmidi@2.1.0': {} + + adsr@1.0.1: {} + + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + array-flatten@3.0.0: {} + + audio-loader@0.5.0: {} + + base64-js@1.5.1: {} + + better-sqlite3@11.10.0: + dependencies: + bindings: 1.5.0 + prebuild-install: 7.1.3 + + bindings@1.5.0: + dependencies: + file-uri-to-path: 1.0.0 + + bl@4.1.0: + dependencies: + buffer: 5.7.1 + inherits: 2.0.4 + readable-stream: 3.6.2 + + buffer@5.7.1: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chownr@1.1.4: {} + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + commander@12.1.0: {} + + concurrently@9.1.2: + dependencies: + chalk: 4.1.2 + lodash: 4.17.21 + rxjs: 7.8.2 + shell-quote: 1.8.3 + supports-color: 8.1.1 + tree-kill: 1.2.2 + yargs: 17.7.2 + + csstype@3.1.3: {} + + decompress-response@6.0.0: + dependencies: + mimic-response: 3.1.0 + + deep-extend@0.6.0: {} + + detect-libc@2.0.4: {} + + dexie@4.0.11: {} + + djipevents@2.0.7: + dependencies: + '@babel/runtime': 7.27.6 + + easymidi@3.1.0: + dependencies: + '@julusian/midi': 3.6.1 + + emoji-regex@8.0.0: {} + + end-of-stream@1.4.5: + dependencies: + once: 1.4.0 + + esbuild@0.25.5: + optionalDependencies: + '@esbuild/aix-ppc64': 0.25.5 + '@esbuild/android-arm': 0.25.5 + '@esbuild/android-arm64': 0.25.5 + '@esbuild/android-x64': 0.25.5 + '@esbuild/darwin-arm64': 0.25.5 + '@esbuild/darwin-x64': 0.25.5 + '@esbuild/freebsd-arm64': 0.25.5 + '@esbuild/freebsd-x64': 0.25.5 + '@esbuild/linux-arm': 0.25.5 + '@esbuild/linux-arm64': 0.25.5 + '@esbuild/linux-ia32': 0.25.5 + '@esbuild/linux-loong64': 0.25.5 + '@esbuild/linux-mips64el': 0.25.5 + '@esbuild/linux-ppc64': 0.25.5 + '@esbuild/linux-riscv64': 0.25.5 + '@esbuild/linux-s390x': 0.25.5 + '@esbuild/linux-x64': 0.25.5 + '@esbuild/netbsd-arm64': 0.25.5 + '@esbuild/netbsd-x64': 0.25.5 + '@esbuild/openbsd-arm64': 0.25.5 + '@esbuild/openbsd-x64': 0.25.5 + '@esbuild/sunos-x64': 0.25.5 + '@esbuild/win32-arm64': 0.25.5 + '@esbuild/win32-ia32': 0.25.5 + '@esbuild/win32-x64': 0.25.5 + + escalade@3.2.0: {} + + expand-template@2.0.3: {} + + file-uri-to-path@1.0.0: {} + + fs-constants@1.0.0: {} + + get-caller-file@2.0.5: {} + + github-from-package@0.0.0: {} + + has-flag@4.0.0: {} + + hono@4.8.1: {} + + ieee754@1.2.1: {} + + immer@10.1.1: {} + + inherits@2.0.4: {} + + ini@1.3.8: {} + + is-fullwidth-code-point@3.0.0: {} + + isomorphic-ws@4.0.1(ws@8.18.2): + dependencies: + ws: 8.18.2 + + jazz-midi@1.7.9: {} + + json-rpc-2.0@1.7.0: {} + + jzz@1.9.3: + dependencies: + '@types/webmidi': 2.1.0 + jazz-midi: 1.7.9 + + kysely@0.28.2: {} + + lodash@4.17.21: {} + + midi-file@1.2.4: {} + + midimessage@1.0.5: {} + + mimic-response@3.1.0: {} + + minimist@1.2.8: {} + + mkdirp-classic@0.5.3: {} + + napi-build-utils@2.0.0: {} + + node-abi@3.75.0: + dependencies: + semver: 7.7.2 + + node-addon-api@6.1.0: {} + + note-parser@1.1.0: {} + + note-parser@2.0.1: {} + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + pkg-prebuilds@1.0.0: + dependencies: + yargs: 17.7.2 + + prebuild-install@7.1.3: + dependencies: + detect-libc: 2.0.4 + expand-template: 2.0.3 + github-from-package: 0.0.0 + minimist: 1.2.8 + mkdirp-classic: 0.5.3 + napi-build-utils: 2.0.0 + node-abi: 3.75.0 + pump: 3.0.3 + rc: 1.2.8 + simple-get: 4.0.1 + tar-fs: 2.1.3 + tunnel-agent: 0.6.0 + + pump@3.0.3: + dependencies: + end-of-stream: 1.4.5 + once: 1.4.0 + + rc@1.2.8: + dependencies: + deep-extend: 0.6.0 + ini: 1.3.8 + minimist: 1.2.8 + strip-json-comments: 2.0.1 + + react-dom@19.1.0(react@19.1.0): + dependencies: + react: 19.1.0 + scheduler: 0.26.0 + + react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0): + dependencies: + '@remix-run/router': 1.23.0 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + react-router: 6.30.1(react@19.1.0) + + react-router@6.30.1(react@19.1.0): + dependencies: + '@remix-run/router': 1.23.0 + react: 19.1.0 + + react@19.1.0: {} + + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + + reconnecting-websocket@4.4.0: {} + + require-directory@2.1.1: {} + + rxjs@7.8.2: + dependencies: + tslib: 2.8.1 + + safe-buffer@5.2.1: {} + + sample-player@0.5.5: + dependencies: + adsr: 1.0.1 + midimessage: 1.0.5 + note-parser: 1.1.0 + + scheduler@0.26.0: {} + + semver@7.7.2: {} + + shell-quote@1.8.3: {} + + simple-concat@1.0.1: {} + + simple-get@4.0.1: + dependencies: + decompress-response: 6.0.0 + once: 1.4.0 + simple-concat: 1.0.1 + + soundfont-player@0.12.0: + dependencies: + audio-loader: 0.5.0 + note-parser: 2.0.1 + sample-player: 0.5.5 + + springboard-cli@0.16.0-svelte-dev2(pihxslhu436hefdtx2zo42poua): + dependencies: + '@springboardjs/platforms-browser': 0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + '@springboardjs/platforms-node': 0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) + commander: 12.1.0 + concurrently: 9.1.2 + esbuild: 0.25.5 + springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard-server: 0.16.0-svelte-dev2(@springboardjs/data-storage@0.16.0-svelte-dev2(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + tslib: 2.8.1 + typescript: 5.8.3 + + springboard-server@0.16.0-svelte-dev2(@springboardjs/data-storage@0.16.0-svelte-dev2(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)): + dependencies: + '@hono/node-server': 1.14.4(hono@4.8.1) + '@hono/node-ws': 1.1.7(@hono/node-server@1.14.4(hono@4.8.1))(hono@4.8.1) + '@hono/trpc-server': 0.3.4(@trpc/server@10.45.2)(hono@4.8.1) + '@springboardjs/data-storage': 0.16.0-svelte-dev2(kysely@0.28.2) + '@springboardjs/platforms-node': 0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) + hono: 4.8.1 + json-rpc-2.0: 1.7.0 + springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + transitivePeerDependencies: + - '@trpc/server' + - bufferutil + - utf-8-validate + + springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2): + dependencies: + '@springboardjs/data-storage': 0.16.0-svelte-dev2(kysely@0.28.2) + '@trpc/client': 10.45.2(@trpc/server@10.45.2) + dexie: 4.0.11 + immer: 10.1.1 + json-rpc-2.0: 1.7.0 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + reconnecting-websocket: 4.4.0 + rxjs: 7.8.2 + ws: 8.18.2 + transitivePeerDependencies: + - bufferutil + - kysely + - utf-8-validate + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string_decoder@1.3.0: + dependencies: + safe-buffer: 5.2.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-json-comments@2.0.1: {} + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + tar-fs@2.1.3: + dependencies: + chownr: 1.1.4 + mkdirp-classic: 0.5.3 + pump: 3.0.3 + tar-stream: 2.2.0 + + tar-stream@2.2.0: + dependencies: + bl: 4.1.0 + end-of-stream: 1.4.5 + fs-constants: 1.0.0 + inherits: 2.0.4 + readable-stream: 3.6.2 + + tree-kill@1.2.2: {} + + tslib@2.8.1: {} + + tunnel-agent@0.6.0: + dependencies: + safe-buffer: 5.2.1 + + typescript@5.8.3: {} + + undici-types@7.8.0: {} + + util-deprecate@1.0.2: {} + + webmidi@3.1.12: + dependencies: + djipevents: 2.0.7 + optionalDependencies: + jzz: 1.9.3 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrappy@1.0.2: {} + + ws@8.18.2: {} + + y18n@5.0.8: {} + + yargs-parser@21.1.1: {} + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + zod@3.25.67: {} diff --git a/src/index.tsx b/src/index.tsx new file mode 100644 index 0000000..bcbdba7 --- /dev/null +++ b/src/index.tsx @@ -0,0 +1,14 @@ + +import React from 'react'; + +import springboard from 'springboard'; + +springboard.registerModule('example', {}, async (app) => { + app.registerRoute('/', {}, () => { + return

Example

; + }); + + return { + + }; +}) From 39c8616fcc507ff29bd2d34f1f8d3c6d599e7b9b Mon Sep 17 00:00:00 2001 From: Michael Kochell <6913320+mickmister@users.noreply.github.com> Date: Fri, 20 Jun 2025 04:07:30 -0400 Subject: [PATCH 2/7] working svelte app with jamtools and midi --- build_with_svelte_plugin.mjs | 32 +++++ package.json | 9 +- pnpm-lock.yaml | 237 ++++++++++++++++++++++++++++++++++- src/import_self.ts | 3 + src/index.svelte | 96 ++++++++++++++ src/index.tsx | 14 --- tsconfig.json | 14 +++ 7 files changed, 385 insertions(+), 20 deletions(-) create mode 100644 build_with_svelte_plugin.mjs create mode 100644 src/import_self.ts create mode 100644 src/index.svelte delete mode 100644 src/index.tsx create mode 100644 tsconfig.json diff --git a/build_with_svelte_plugin.mjs b/build_with_svelte_plugin.mjs new file mode 100644 index 0000000..fbcab20 --- /dev/null +++ b/build_with_svelte_plugin.mjs @@ -0,0 +1,32 @@ +import {buildApplication, platformBrowserBuildConfig, platformNodeBuildConfig, buildServer } from 'springboard-cli/src/build'; + +import sveltePlugin from '@springboardjs/plugin-svelte/plugin'; + +const watch = process.argv.includes('--watch'); + +setTimeout(async () => { + await buildApplication(platformBrowserBuildConfig, { + applicationEntrypoint: `${process.cwd()}/src/index.svelte`, + nodeModulesParentFolder: process.cwd(), + watch, + plugins: [ + sveltePlugin.default, + ], + }); + + await buildApplication(platformNodeBuildConfig, { + watch, + applicationEntrypoint: `${process.cwd()}/src/index.svelte`, + nodeModulesParentFolder: process.cwd(), + plugins: [ + sveltePlugin.default, + ], + }); + + await buildServer({ + watch, + plugins: [ + sveltePlugin.default, + ], + }); +}); diff --git a/package.json b/package.json index 25ceaa3..7e04ef2 100644 --- a/package.json +++ b/package.json @@ -5,6 +5,7 @@ "main": "index.js", "dependencies": { "@jamtools/core": "0.16.0-svelte-dev2", + "@springboardjs/plugin-svelte": "0.16.0-svelte-dev2", "adsr": "^1.0.1", "ansi-regex": "^5.0.1", "ansi-styles": "^4.3.0", @@ -89,6 +90,7 @@ "strip-ansi": "^6.0.1", "strip-json-comments": "^2.0.1", "supports-color": "^7.2.0", + "svelte": "^5.34.7", "tar-fs": "^2.1.3", "tar-stream": "^2.2.0", "tree-kill": "^1.2.2", @@ -106,9 +108,8 @@ "zod": "^3.25.67" }, "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", - "dev": "sb dev src/index.tsx", - "build": "sb build src/index.tsx", + "dev": "npm run build -- --watch", + "build": "tsx build_with_svelte_plugin.mjs", "start": "sb start" }, "keywords": [], @@ -120,4 +121,4 @@ "@types/react-dom": "^19.1.6", "typescript": "^5.8.3" } -} \ No newline at end of file +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4d8f8b6..a191108 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,7 +10,10 @@ importers: dependencies: '@jamtools/core': specifier: 0.16.0-svelte-dev2 - version: 0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + version: 0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7) + '@springboardjs/plugin-svelte': + specifier: 0.16.0-svelte-dev2 + version: 0.16.0-svelte-dev2(@jamtools/core@0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7))(esbuild@0.25.5)(react@19.1.0)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3) adsr: specifier: ^1.0.1 version: 1.0.1 @@ -263,6 +266,9 @@ importers: supports-color: specifier: ^7.2.0 version: 7.2.0 + svelte: + specifier: ^5.34.7 + version: 5.34.7 tar-fs: specifier: ^2.1.3 version: 2.1.3 @@ -324,6 +330,10 @@ importers: packages: + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + '@babel/runtime@7.27.6': resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} engines: {node: '>=6.9.0'} @@ -509,6 +519,24 @@ packages: svelte: optional: true + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.0': + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + '@julusian/midi@3.6.1': resolution: {integrity: sha512-sC6tTMAMZsHOQILAv/R0On5tKKhzBQUjdyYWzh9l0UQeNry12CFIyRWK1Mep5xCHWCTUB0w4gxngpciA5PgN/Q==} engines: {node: '>=14.15'} @@ -535,6 +563,19 @@ packages: springboard: 0.16.0-svelte-dev2 ws: ^8.18.0 + '@springboardjs/plugin-svelte@0.16.0-svelte-dev2': + resolution: {integrity: sha512-BMnJJ6bYxukuNpyI1HA5P2x7vopdbs1xAPD6Tf9WJ1N6nDg3P/hOofyS4aq70Gy0CMbXGcHiPWqiFmpvkblFsQ==} + peerDependencies: + '@jamtools/core': 0.16.0-svelte-dev2 + react: '*' + springboard: 0.16.0-svelte-dev2 + svelte: '>= 5' + + '@sveltejs/acorn-typescript@1.0.5': + resolution: {integrity: sha512-IwQk4yfwLdibDlrXVE04jTZYlLnwsTT2PIOQQGNLWfjavGifnk1JD1LcZjZaBTRcxZu2FfPfNLOE04DSu9lqtQ==} + peerDependencies: + acorn: ^8.9.0 + '@tonejs/midi@2.0.28': resolution: {integrity: sha512-RII6YpInPsOZ5t3Si/20QKpNqB1lZ2OCFJSOzJxz38YdY/3zqDr3uaml4JuCWkdixuPqP1/TBnXzhQ39csyoVg==} @@ -546,6 +587,9 @@ packages: '@trpc/server@10.45.2': resolution: {integrity: sha512-wOrSThNNE4HUnuhJG6PfDRp4L2009KDVxsd+2VYH8ro6o/7/jwYZ8Uu5j+VaW+mOmc8EHerHzGcdbGNQSAUPgg==} + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + '@types/node@24.0.3': resolution: {integrity: sha512-R4I/kzCYAdRLzfiCabn9hxWfbuHS573x+r0dJMkkzThEa7pbrcDWK+9zu3e7aBOouf+rQAciqPFMnxwr0aWgKg==} @@ -560,6 +604,11 @@ packages: '@types/webmidi@2.1.0': resolution: {integrity: sha512-k898MjEUSHB+6rSeCPQk/kLgie0wgWZ2t78GlWj86HbTQ+XmtbBafYg5LNjn8bVHfItEhPGZPf579Xfc6keV6w==} + acorn@8.15.0: + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} + engines: {node: '>=0.4.0'} + hasBin: true + adsr@1.0.1: resolution: {integrity: sha512-thr9LK4jxApOzBA33IWOA83bXJFbyfbeozpHXyrMQOIhUni198uRxXqDhobW0S/51iokqty2Yz2WbLZbE6tntQ==} @@ -571,12 +620,20 @@ packages: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} + aria-query@5.3.2: + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} + array-flatten@3.0.0: resolution: {integrity: sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==} audio-loader@0.5.0: resolution: {integrity: sha512-mEoYRjZhqkBSen/X9i2PNosqvafEsur8bI5MNoPr0wsJu9Nzlul3Yv1elYeMPsXxTxYhXLY8AZlScBvaK4mydg==} + axobject-query@4.1.0: + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} + base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -603,6 +660,10 @@ packages: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} @@ -650,6 +711,13 @@ packages: end-of-stream@1.4.5: resolution: {integrity: sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==} + esbuild-svelte@0.9.3: + resolution: {integrity: sha512-CgEcGY1r/d16+aggec3czoFBEBaYIrFOnMxpsO6fWNaNEqHregPN5DLAPZDqrL7rXDNplW+WMu8s3GMq9FqgJA==} + engines: {node: '>=18'} + peerDependencies: + esbuild: '>=0.17.0' + svelte: '>=4.2.1 <6' + esbuild@0.25.5: resolution: {integrity: sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==} engines: {node: '>=18'} @@ -659,6 +727,12 @@ packages: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} + esm-env@1.2.2: + resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} + + esrap@1.4.9: + resolution: {integrity: sha512-3OMlcd0a03UGuZpPeUC1HxR3nA23l+HEyCiZw3b3FumJIN9KphoGzDJKMXI1S72jVS1dsenDyQC0kJlO1U9E1g==} + expand-template@2.0.3: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} @@ -700,6 +774,9 @@ packages: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} + is-reference@3.0.3: + resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} + isomorphic-ws@4.0.1: resolution: {integrity: sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==} peerDependencies: @@ -719,9 +796,15 @@ packages: resolution: {integrity: sha512-4YAVLoF0Sf0UTqlhgQMFU9iQECdah7n+13ANkiuVfRvlK+uI0Etbgd7bVP36dKlG+NXWbhGua8vnGt+sdhvT7A==} engines: {node: '>=18.0.0'} + locate-character@3.0.0: + resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} + lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + magic-string@0.30.17: + resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} + midi-file@1.2.4: resolution: {integrity: sha512-B5SnBC6i2bwJIXTY9MElIydJwAmnKx+r5eJ1jknTLetzLflEl0GWveuBB6ACrQpecSRkOB6fhTx1PwXk2BVxnA==} @@ -887,6 +970,47 @@ packages: resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} engines: {node: '>=10'} + svelte-preprocess@6.0.3: + resolution: {integrity: sha512-PLG2k05qHdhmRG7zR/dyo5qKvakhm8IJ+hD2eFRQmMLHp7X3eJnjeupUtvuRpbNiF31RjVw45W+abDwHEmP5OA==} + engines: {node: '>= 18.0.0'} + peerDependencies: + '@babel/core': ^7.10.2 + coffeescript: ^2.5.1 + less: ^3.11.3 || ^4.0.0 + postcss: ^7 || ^8 + postcss-load-config: '>=3' + pug: ^3.0.0 + sass: ^1.26.8 + stylus: '>=0.55' + sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 + svelte: ^4.0.0 || ^5.0.0-next.100 || ^5.0.0 + typescript: ^5.0.0 + peerDependenciesMeta: + '@babel/core': + optional: true + coffeescript: + optional: true + less: + optional: true + postcss: + optional: true + postcss-load-config: + optional: true + pug: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + typescript: + optional: true + + svelte@5.34.7: + resolution: {integrity: sha512-5PEg+QQKce4t1qiOtVUhUS3AQRTtxJyGBTpxLcNWnr0Ve8q4r06bMo0Gv8uhtCPWlztZHoi3Ye7elLhu+PCTMg==} + engines: {node: '>=18'} + tar-fs@2.1.3: resolution: {integrity: sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg==} @@ -950,11 +1074,19 @@ packages: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} + zimmerframe@1.1.2: + resolution: {integrity: sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w==} + zod@3.25.67: resolution: {integrity: sha512-idA2YXwpCdqUSKRCACDE6ItZD9TZzy3OZMtpfLoh6oPR47lipysRrJfjzMqFxQ3uJuUPyUeWe1r9vLH33xO/Qw==} snapshots: + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + '@babel/runtime@7.27.6': {} '@esbuild/aix-ppc64@0.25.5': @@ -1050,7 +1182,7 @@ snapshots: '@trpc/server': 10.45.2 hono: 4.8.1 - '@jamtools/core@0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))': + '@jamtools/core@0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)': dependencies: '@springboardjs/platforms-browser': 0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) '@tonejs/midi': 2.0.28 @@ -1060,6 +1192,25 @@ snapshots: soundfont-player: 0.12.0 springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) webmidi: 3.1.12 + optionalDependencies: + svelte: 5.34.7 + + '@jridgewell/gen-mapping@0.3.8': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.2.1': {} + + '@jridgewell/sourcemap-codec@1.5.0': {} + + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 '@julusian/midi@3.6.1': dependencies: @@ -1091,6 +1242,31 @@ snapshots: springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) ws: 8.18.2 + '@springboardjs/plugin-svelte@0.16.0-svelte-dev2(@jamtools/core@0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7))(esbuild@0.25.5)(react@19.1.0)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3)': + dependencies: + '@jamtools/core': 0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7) + esbuild-svelte: 0.9.3(esbuild@0.25.5)(svelte@5.34.7) + react: 19.1.0 + springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + svelte: 5.34.7 + svelte-preprocess: 6.0.3(svelte@5.34.7)(typescript@5.8.3) + transitivePeerDependencies: + - '@babel/core' + - coffeescript + - esbuild + - less + - postcss + - postcss-load-config + - pug + - sass + - stylus + - sugarss + - typescript + + '@sveltejs/acorn-typescript@1.0.5(acorn@8.15.0)': + dependencies: + acorn: 8.15.0 + '@tonejs/midi@2.0.28': dependencies: array-flatten: 3.0.0 @@ -1102,6 +1278,8 @@ snapshots: '@trpc/server@10.45.2': {} + '@types/estree@1.0.8': {} + '@types/node@24.0.3': dependencies: undici-types: 7.8.0 @@ -1116,6 +1294,8 @@ snapshots: '@types/webmidi@2.1.0': {} + acorn@8.15.0: {} + adsr@1.0.1: {} ansi-regex@5.0.1: {} @@ -1124,10 +1304,14 @@ snapshots: dependencies: color-convert: 2.0.1 + aria-query@5.3.2: {} + array-flatten@3.0.0: {} audio-loader@0.5.0: {} + axobject-query@4.1.0: {} + base64-js@1.5.1: {} better-sqlite3@11.10.0: @@ -1163,6 +1347,8 @@ snapshots: strip-ansi: 6.0.1 wrap-ansi: 7.0.0 + clsx@2.1.1: {} + color-convert@2.0.1: dependencies: color-name: 1.1.4 @@ -1207,6 +1393,12 @@ snapshots: dependencies: once: 1.4.0 + esbuild-svelte@0.9.3(esbuild@0.25.5)(svelte@5.34.7): + dependencies: + '@jridgewell/trace-mapping': 0.3.25 + esbuild: 0.25.5 + svelte: 5.34.7 + esbuild@0.25.5: optionalDependencies: '@esbuild/aix-ppc64': 0.25.5 @@ -1237,6 +1429,12 @@ snapshots: escalade@3.2.0: {} + esm-env@1.2.2: {} + + esrap@1.4.9: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + expand-template@2.0.3: {} file-uri-to-path@1.0.0: {} @@ -1261,6 +1459,10 @@ snapshots: is-fullwidth-code-point@3.0.0: {} + is-reference@3.0.3: + dependencies: + '@types/estree': 1.0.8 + isomorphic-ws@4.0.1(ws@8.18.2): dependencies: ws: 8.18.2 @@ -1276,8 +1478,14 @@ snapshots: kysely@0.28.2: {} + locate-character@3.0.0: {} + lodash@4.17.21: {} + magic-string@0.30.17: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + midi-file@1.2.4: {} midimessage@1.0.5: {} @@ -1464,6 +1672,29 @@ snapshots: dependencies: has-flag: 4.0.0 + svelte-preprocess@6.0.3(svelte@5.34.7)(typescript@5.8.3): + dependencies: + svelte: 5.34.7 + optionalDependencies: + typescript: 5.8.3 + + svelte@5.34.7: + dependencies: + '@ampproject/remapping': 2.3.0 + '@jridgewell/sourcemap-codec': 1.5.0 + '@sveltejs/acorn-typescript': 1.0.5(acorn@8.15.0) + '@types/estree': 1.0.8 + acorn: 8.15.0 + aria-query: 5.3.2 + axobject-query: 4.1.0 + clsx: 2.1.1 + esm-env: 1.2.2 + esrap: 1.4.9 + is-reference: 3.0.3 + locate-character: 3.0.0 + magic-string: 0.30.17 + zimmerframe: 1.1.2 + tar-fs@2.1.3: dependencies: chownr: 1.1.4 @@ -1523,4 +1754,6 @@ snapshots: y18n: 5.0.8 yargs-parser: 21.1.1 + zimmerframe@1.1.2: {} + zod@3.25.67: {} diff --git a/src/import_self.ts b/src/import_self.ts new file mode 100644 index 0000000..e14c6c3 --- /dev/null +++ b/src/import_self.ts @@ -0,0 +1,3 @@ +import Component from './index.svelte'; + +export const getSelf = () => Component; diff --git a/src/index.svelte b/src/index.svelte new file mode 100644 index 0000000..dfcf9ae --- /dev/null +++ b/src/index.svelte @@ -0,0 +1,96 @@ + + + + +

{$count}

+ + +

{$name}

+ + diff --git a/src/index.tsx b/src/index.tsx deleted file mode 100644 index bcbdba7..0000000 --- a/src/index.tsx +++ /dev/null @@ -1,14 +0,0 @@ - -import React from 'react'; - -import springboard from 'springboard'; - -springboard.registerModule('example', {}, async (app) => { - app.registerRoute('/', {}, () => { - return

Example

; - }); - - return { - - }; -}) diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..b11f6d8 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "verbatimModuleSyntax": true, + "jsx": "react", + "skipLibCheck": true, + "strict": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "module": "es2020", + "target": "es2016", + "moduleResolution": "bundler", + "baseUrl": ".", + }, +} From 390ab085de0cc5569fc8f82c7b5e1af8ca5bdf50 Mon Sep 17 00:00:00 2001 From: Michael Kochell <6913320+mickmister@users.noreply.github.com> Date: Fri, 20 Jun 2025 04:09:14 -0400 Subject: [PATCH 3/7] remove packages that were added to package.json at some point. a bunch of deps got hoisted into the file somehow --- package.json | 94 +--------------- pnpm-lock.yaml | 283 +------------------------------------------------ 2 files changed, 6 insertions(+), 371 deletions(-) diff --git a/package.json b/package.json index 7e04ef2..02c4a83 100644 --- a/package.json +++ b/package.json @@ -6,106 +6,14 @@ "dependencies": { "@jamtools/core": "0.16.0-svelte-dev2", "@springboardjs/plugin-svelte": "0.16.0-svelte-dev2", - "adsr": "^1.0.1", - "ansi-regex": "^5.0.1", - "ansi-styles": "^4.3.0", - "array-flatten": "^3.0.0", - "audio-loader": "^0.5.0", - "base64-js": "^1.5.1", - "better-sqlite3": "^11.10.0", - "bindings": "^1.5.0", - "bl": "^4.1.0", - "buffer": "^5.7.1", - "chalk": "^4.1.2", - "chownr": "^1.1.4", - "cliui": "^8.0.1", - "color-convert": "^2.0.1", - "color-name": "^1.1.4", - "commander": "^12.1.0", - "concurrently": "^9.1.2", - "csstype": "^3.1.3", - "decompress-response": "^6.0.0", - "deep-extend": "^0.6.0", - "detect-libc": "^2.0.4", - "dexie": "^4.0.11", - "djipevents": "^2.0.7", - "easymidi": "^3.1.0", - "emoji-regex": "^8.0.0", - "end-of-stream": "^1.4.5", - "esbuild": "^0.25.5", - "escalade": "^3.2.0", - "expand-template": "^2.0.3", - "file-uri-to-path": "^1.0.0", - "fs-constants": "^1.0.0", - "get-caller-file": "^2.0.5", - "github-from-package": "^0.0.0", - "has-flag": "^4.0.0", - "hono": "^4.8.1", - "ieee754": "^1.2.1", - "immer": "^10.1.1", - "inherits": "^2.0.4", - "ini": "^1.3.8", - "is-fullwidth-code-point": "^3.0.0", - "isomorphic-ws": "^4.0.1", - "jazz-midi": "^1.7.9", - "json-rpc-2.0": "^1.7.0", - "jzz": "^1.9.3", - "kysely": "^0.28.2", - "lodash": "^4.17.21", - "midi-file": "^1.2.4", - "midimessage": "^1.0.5", - "mimic-response": "^3.1.0", - "minimist": "^1.2.8", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^2.0.0", - "node-abi": "^3.75.0", - "node-addon-api": "^6.1.0", - "note-parser": "^1.1.0", - "once": "^1.4.0", - "pkg-prebuilds": "^1.0.0", - "prebuild-install": "^7.1.3", - "pump": "^3.0.3", - "rc": "^1.2.8", "react": "^19.1.0", "react-dom": "^19.1.0", "react-router": "^6.30.1", "react-router-dom": "^6.30.1", - "readable-stream": "^3.6.2", - "reconnecting-websocket": "^4.4.0", - "require-directory": "^2.1.1", - "rxjs": "^7.8.2", - "safe-buffer": "^5.2.1", - "sample-player": "^0.5.5", - "scheduler": "^0.26.0", - "semver": "^7.7.2", - "shell-quote": "^1.8.3", - "simple-concat": "^1.0.1", - "simple-get": "^4.0.1", - "soundfont-player": "^0.12.0", "springboard": "0.16.0-svelte-dev2", "springboard-cli": "0.16.0-svelte-dev2", "springboard-server": "^0.16.0-svelte-dev2", - "string-width": "^4.2.3", - "string_decoder": "^1.3.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^2.0.1", - "supports-color": "^7.2.0", - "svelte": "^5.34.7", - "tar-fs": "^2.1.3", - "tar-stream": "^2.2.0", - "tree-kill": "^1.2.2", - "tslib": "^2.8.1", - "tunnel-agent": "^0.6.0", - "undici-types": "^7.8.0", - "util-deprecate": "^1.0.2", - "webmidi": "^3.1.12", - "wrap-ansi": "^7.0.0", - "wrappy": "^1.0.2", - "ws": "^8.18.2", - "y18n": "^5.0.8", - "yargs": "^17.7.2", - "yargs-parser": "^21.1.1", - "zod": "^3.25.67" + "svelte": "^5.34.7" }, "scripts": { "dev": "npm run build -- --watch", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a191108..5c633ec 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -14,186 +14,6 @@ importers: '@springboardjs/plugin-svelte': specifier: 0.16.0-svelte-dev2 version: 0.16.0-svelte-dev2(@jamtools/core@0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7))(esbuild@0.25.5)(react@19.1.0)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3) - adsr: - specifier: ^1.0.1 - version: 1.0.1 - ansi-regex: - specifier: ^5.0.1 - version: 5.0.1 - ansi-styles: - specifier: ^4.3.0 - version: 4.3.0 - array-flatten: - specifier: ^3.0.0 - version: 3.0.0 - audio-loader: - specifier: ^0.5.0 - version: 0.5.0 - base64-js: - specifier: ^1.5.1 - version: 1.5.1 - better-sqlite3: - specifier: ^11.10.0 - version: 11.10.0 - bindings: - specifier: ^1.5.0 - version: 1.5.0 - bl: - specifier: ^4.1.0 - version: 4.1.0 - buffer: - specifier: ^5.7.1 - version: 5.7.1 - chalk: - specifier: ^4.1.2 - version: 4.1.2 - chownr: - specifier: ^1.1.4 - version: 1.1.4 - cliui: - specifier: ^8.0.1 - version: 8.0.1 - color-convert: - specifier: ^2.0.1 - version: 2.0.1 - color-name: - specifier: ^1.1.4 - version: 1.1.4 - commander: - specifier: ^12.1.0 - version: 12.1.0 - concurrently: - specifier: ^9.1.2 - version: 9.1.2 - csstype: - specifier: ^3.1.3 - version: 3.1.3 - decompress-response: - specifier: ^6.0.0 - version: 6.0.0 - deep-extend: - specifier: ^0.6.0 - version: 0.6.0 - detect-libc: - specifier: ^2.0.4 - version: 2.0.4 - dexie: - specifier: ^4.0.11 - version: 4.0.11 - djipevents: - specifier: ^2.0.7 - version: 2.0.7 - easymidi: - specifier: ^3.1.0 - version: 3.1.0 - emoji-regex: - specifier: ^8.0.0 - version: 8.0.0 - end-of-stream: - specifier: ^1.4.5 - version: 1.4.5 - esbuild: - specifier: ^0.25.5 - version: 0.25.5 - escalade: - specifier: ^3.2.0 - version: 3.2.0 - expand-template: - specifier: ^2.0.3 - version: 2.0.3 - file-uri-to-path: - specifier: ^1.0.0 - version: 1.0.0 - fs-constants: - specifier: ^1.0.0 - version: 1.0.0 - get-caller-file: - specifier: ^2.0.5 - version: 2.0.5 - github-from-package: - specifier: ^0.0.0 - version: 0.0.0 - has-flag: - specifier: ^4.0.0 - version: 4.0.0 - hono: - specifier: ^4.8.1 - version: 4.8.1 - ieee754: - specifier: ^1.2.1 - version: 1.2.1 - immer: - specifier: ^10.1.1 - version: 10.1.1 - inherits: - specifier: ^2.0.4 - version: 2.0.4 - ini: - specifier: ^1.3.8 - version: 1.3.8 - is-fullwidth-code-point: - specifier: ^3.0.0 - version: 3.0.0 - isomorphic-ws: - specifier: ^4.0.1 - version: 4.0.1(ws@8.18.2) - jazz-midi: - specifier: ^1.7.9 - version: 1.7.9 - json-rpc-2.0: - specifier: ^1.7.0 - version: 1.7.0 - jzz: - specifier: ^1.9.3 - version: 1.9.3 - kysely: - specifier: ^0.28.2 - version: 0.28.2 - lodash: - specifier: ^4.17.21 - version: 4.17.21 - midi-file: - specifier: ^1.2.4 - version: 1.2.4 - midimessage: - specifier: ^1.0.5 - version: 1.0.5 - mimic-response: - specifier: ^3.1.0 - version: 3.1.0 - minimist: - specifier: ^1.2.8 - version: 1.2.8 - mkdirp-classic: - specifier: ^0.5.3 - version: 0.5.3 - napi-build-utils: - specifier: ^2.0.0 - version: 2.0.0 - node-abi: - specifier: ^3.75.0 - version: 3.75.0 - node-addon-api: - specifier: ^6.1.0 - version: 6.1.0 - note-parser: - specifier: ^1.1.0 - version: 1.1.0 - once: - specifier: ^1.4.0 - version: 1.4.0 - pkg-prebuilds: - specifier: ^1.0.0 - version: 1.0.0 - prebuild-install: - specifier: ^7.1.3 - version: 7.1.3 - pump: - specifier: ^3.0.3 - version: 3.0.3 - rc: - specifier: ^1.2.8 - version: 1.2.8 react: specifier: ^19.1.0 version: 19.1.0 @@ -206,42 +26,6 @@ importers: react-router-dom: specifier: ^6.30.1 version: 6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - readable-stream: - specifier: ^3.6.2 - version: 3.6.2 - reconnecting-websocket: - specifier: ^4.4.0 - version: 4.4.0 - require-directory: - specifier: ^2.1.1 - version: 2.1.1 - rxjs: - specifier: ^7.8.2 - version: 7.8.2 - safe-buffer: - specifier: ^5.2.1 - version: 5.2.1 - sample-player: - specifier: ^0.5.5 - version: 0.5.5 - scheduler: - specifier: ^0.26.0 - version: 0.26.0 - semver: - specifier: ^7.7.2 - version: 7.7.2 - shell-quote: - specifier: ^1.8.3 - version: 1.8.3 - simple-concat: - specifier: ^1.0.1 - version: 1.0.1 - simple-get: - specifier: ^4.0.1 - version: 4.0.1 - soundfont-player: - specifier: ^0.12.0 - version: 0.12.0 springboard: specifier: 0.16.0-svelte-dev2 version: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) @@ -251,69 +35,9 @@ importers: springboard-server: specifier: ^0.16.0-svelte-dev2 version: 0.16.0-svelte-dev2(@springboardjs/data-storage@0.16.0-svelte-dev2(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) - string-width: - specifier: ^4.2.3 - version: 4.2.3 - string_decoder: - specifier: ^1.3.0 - version: 1.3.0 - strip-ansi: - specifier: ^6.0.1 - version: 6.0.1 - strip-json-comments: - specifier: ^2.0.1 - version: 2.0.1 - supports-color: - specifier: ^7.2.0 - version: 7.2.0 svelte: specifier: ^5.34.7 version: 5.34.7 - tar-fs: - specifier: ^2.1.3 - version: 2.1.3 - tar-stream: - specifier: ^2.2.0 - version: 2.2.0 - tree-kill: - specifier: ^1.2.2 - version: 1.2.2 - tslib: - specifier: ^2.8.1 - version: 2.8.1 - tunnel-agent: - specifier: ^0.6.0 - version: 0.6.0 - undici-types: - specifier: ^7.8.0 - version: 7.8.0 - util-deprecate: - specifier: ^1.0.2 - version: 1.0.2 - webmidi: - specifier: ^3.1.12 - version: 3.1.12 - wrap-ansi: - specifier: ^7.0.0 - version: 7.0.0 - wrappy: - specifier: ^1.0.2 - version: 1.0.2 - ws: - specifier: ^8.18.2 - version: 8.18.2 - y18n: - specifier: ^5.0.8 - version: 5.0.8 - yargs: - specifier: ^17.7.2 - version: 17.7.2 - yargs-parser: - specifier: ^21.1.1 - version: 21.1.1 - zod: - specifier: ^3.25.67 - version: 3.25.67 devDependencies: '@types/node': specifier: ^24.0.3 @@ -1292,7 +1016,8 @@ snapshots: dependencies: csstype: 3.1.3 - '@types/webmidi@2.1.0': {} + '@types/webmidi@2.1.0': + optional: true acorn@8.15.0: {} @@ -1467,7 +1192,8 @@ snapshots: dependencies: ws: 8.18.2 - jazz-midi@1.7.9: {} + jazz-midi@1.7.9: + optional: true json-rpc-2.0@1.7.0: {} @@ -1475,6 +1201,7 @@ snapshots: dependencies: '@types/webmidi': 2.1.0 jazz-midi: 1.7.9 + optional: true kysely@0.28.2: {} From ba5b351d4a29be0c108398ef97251736604cd9b0 Mon Sep 17 00:00:00 2001 From: Michael Kochell <6913320+mickmister@users.noreply.github.com> Date: Wed, 2 Jul 2025 00:55:50 -0400 Subject: [PATCH 4/7] works with macro module set to local --- build_with_svelte_plugin.mjs | 19 +++++- package.json | 10 ++-- pnpm-lock.yaml | 110 +++++++++++++++++------------------ src/HandSlider.svelte | 29 +++++++++ src/index.css | 58 ++++++++++++++++++ src/index.svelte | 100 +++++++++++++++---------------- 6 files changed, 216 insertions(+), 110 deletions(-) create mode 100644 src/HandSlider.svelte create mode 100644 src/index.css diff --git a/build_with_svelte_plugin.mjs b/build_with_svelte_plugin.mjs index fbcab20..61af106 100644 --- a/build_with_svelte_plugin.mjs +++ b/build_with_svelte_plugin.mjs @@ -1,6 +1,8 @@ -import {buildApplication, platformBrowserBuildConfig, platformNodeBuildConfig, buildServer } from 'springboard-cli/src/build'; +import {buildApplication, platformBrowserBuildConfig, platformNodeBuildConfig, buildServer} from 'springboard-cli/src/build'; import sveltePlugin from '@springboardjs/plugin-svelte/plugin'; +import {spawn} from 'child_process'; +import fs from 'fs'; const watch = process.argv.includes('--watch'); @@ -29,4 +31,19 @@ setTimeout(async () => { sveltePlugin.default, ], }); + + const file = 'dist/server/dist/local-server.cjs'; + const args = [ + ...(watch ? ['--watch', '--watch-preserve-output'] : []), + file, + ]; + + if (!fs.existsSync(file)) { + fs.writeFileSync(file, '', {flag: 'wx'}); + } + + spawn('node', args, { + stdio: 'inherit', + env: process.env, + }); }); diff --git a/package.json b/package.json index 02c4a83..0248e1a 100644 --- a/package.json +++ b/package.json @@ -4,15 +4,15 @@ "description": "Raise your hands", "main": "index.js", "dependencies": { - "@jamtools/core": "0.16.0-svelte-dev2", - "@springboardjs/plugin-svelte": "0.16.0-svelte-dev2", + "@jamtools/core": "0.16.0-svelte-dev3", + "@springboardjs/plugin-svelte": "0.16.0-svelte-dev3", "react": "^19.1.0", "react-dom": "^19.1.0", "react-router": "^6.30.1", "react-router-dom": "^6.30.1", - "springboard": "0.16.0-svelte-dev2", - "springboard-cli": "0.16.0-svelte-dev2", - "springboard-server": "^0.16.0-svelte-dev2", + "springboard": "0.16.0-svelte-dev3", + "springboard-cli": "0.16.0-svelte-dev3", + "springboard-server": "^0.16.0-svelte-dev3", "svelte": "^5.34.7" }, "scripts": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5c633ec..9033498 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,11 +9,11 @@ importers: .: dependencies: '@jamtools/core': - specifier: 0.16.0-svelte-dev2 - version: 0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7) + specifier: 0.16.0-svelte-dev3 + version: 0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7) '@springboardjs/plugin-svelte': - specifier: 0.16.0-svelte-dev2 - version: 0.16.0-svelte-dev2(@jamtools/core@0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7))(esbuild@0.25.5)(react@19.1.0)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3) + specifier: 0.16.0-svelte-dev3 + version: 0.16.0-svelte-dev3(@jamtools/core@0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7))(esbuild@0.25.5)(react@19.1.0)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3) react: specifier: ^19.1.0 version: 19.1.0 @@ -27,14 +27,14 @@ importers: specifier: ^6.30.1 version: 6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) springboard: - specifier: 0.16.0-svelte-dev2 - version: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + specifier: 0.16.0-svelte-dev3 + version: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) springboard-cli: - specifier: 0.16.0-svelte-dev2 - version: 0.16.0-svelte-dev2(pihxslhu436hefdtx2zo42poua) + specifier: 0.16.0-svelte-dev3 + version: 0.16.0-svelte-dev3(ioowiynfnghsyik2qbvmjtathq) springboard-server: - specifier: ^0.16.0-svelte-dev2 - version: 0.16.0-svelte-dev2(@springboardjs/data-storage@0.16.0-svelte-dev2(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + specifier: ^0.16.0-svelte-dev3 + version: 0.16.0-svelte-dev3(@springboardjs/data-storage@0.16.0-svelte-dev3(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) svelte: specifier: ^5.34.7 version: 5.34.7 @@ -232,12 +232,12 @@ packages: '@trpc/server': ^10.10.0 || >11.0.0-rc hono: '>=4.*' - '@jamtools/core@0.16.0-svelte-dev2': - resolution: {integrity: sha512-DvVluak3wv/HkW9OLqXn+Qfufm15VdtN0u5+AKxeJ7LVhKsDebyoMCmskSeUdd34sAYlGz93usuykf9YqkGYnQ==} + '@jamtools/core@0.16.0-svelte-dev3': + resolution: {integrity: sha512-BiTrYV9NuTIt3sqfWWIUXhkD08ikG0Hnji82Eabfhr3Ai/cTrrNFi4dQ1CXQMdhQSXDEJScwFWrnmuMJWDoLVw==} peerDependencies: - '@springboardjs/platforms-browser': 0.16.0-svelte-dev2 + '@springboardjs/platforms-browser': 0.16.0-svelte-dev3 '@tonejs/midi': ^2.0.0 - springboard: 0.16.0-svelte-dev2 + springboard: 0.16.0-svelte-dev3 svelte: '>= 5' peerDependenciesMeta: svelte: @@ -269,8 +269,8 @@ packages: resolution: {integrity: sha512-O3rHJzAQKamUz1fvE0Qaw0xSFqsA/yafi2iqeE0pvdFtCO1viYx8QL6f3Ln/aCCTLxs68SLf0KPM9eSeM8yBnA==} engines: {node: '>=14.0.0'} - '@springboardjs/data-storage@0.16.0-svelte-dev2': - resolution: {integrity: sha512-t1Pew5acTIjAIAbQtaa5T+T9x2UwWaqlqxsgTfCI0zbgiDkAvK/KdQGSASEL9dPSwhvMHzz9Zu98eZR5kkFfPw==} + '@springboardjs/data-storage@0.16.0-svelte-dev3': + resolution: {integrity: sha512-VbJjlt+mwytgNtKFrcK5SRso8r5KCqLzbfTfS92SQuejG86W/vf66USJAC79TzxyQn8H00HzY3CLU6VCVYP7tw==} peerDependencies: kysely: '>= 0.24.0' @@ -287,12 +287,12 @@ packages: springboard: 0.16.0-svelte-dev2 ws: ^8.18.0 - '@springboardjs/plugin-svelte@0.16.0-svelte-dev2': - resolution: {integrity: sha512-BMnJJ6bYxukuNpyI1HA5P2x7vopdbs1xAPD6Tf9WJ1N6nDg3P/hOofyS4aq70Gy0CMbXGcHiPWqiFmpvkblFsQ==} + '@springboardjs/plugin-svelte@0.16.0-svelte-dev3': + resolution: {integrity: sha512-pGJZxQkvOsAN9zhQsRS4rqJlX69il7RVaHqaNDYeNFORisi6fQt1BYmOI40Z+kTIydxQBHRUGRdZO6zUTM/xpQ==} peerDependencies: - '@jamtools/core': 0.16.0-svelte-dev2 + '@jamtools/core': 0.16.0-svelte-dev3 react: '*' - springboard: 0.16.0-svelte-dev2 + springboard: 0.16.0-svelte-dev3 svelte: '>= 5' '@sveltejs/acorn-typescript@1.0.5': @@ -644,25 +644,25 @@ packages: soundfont-player@0.12.0: resolution: {integrity: sha512-8BJIsAt7h1PK3thSZDgF6zecgGhYkK74JnZO8WRZi3h34qG6H/DYlnv7cpRvL7Q9C8N6qld4Qwj7nJsX1gYjEA==} - springboard-cli@0.16.0-svelte-dev2: - resolution: {integrity: sha512-7vOeF9UBYlSepHVaZvjIP9vVoYMyLjacjqibEifUZQNEtzxTtamjjSsjYs0H+QXfOBWw6pMzd/5SYB1XZW52ng==} + springboard-cli@0.16.0-svelte-dev3: + resolution: {integrity: sha512-+SQ/neEk7QJ2fCULgCQ013+pgtOYqI4HQLPsisacEirAwpBT6mDJKFGqX1Y/SFBUNckhwwshATE7w4BGTKurxg==} hasBin: true peerDependencies: - '@springboardjs/platforms-browser': 0.16.0-svelte-dev2 - '@springboardjs/platforms-node': 0.16.0-svelte-dev2 - springboard: 0.16.0-svelte-dev2 - springboard-server: 0.16.0-svelte-dev2 + '@springboardjs/platforms-browser': 0.16.0-svelte-dev3 + '@springboardjs/platforms-node': 0.16.0-svelte-dev3 + springboard: 0.16.0-svelte-dev3 + springboard-server: 0.16.0-svelte-dev3 - springboard-server@0.16.0-svelte-dev2: - resolution: {integrity: sha512-UPw7vZESCdWyV18RCR3eNiQrOrxoNzKMZy4QFTmS+O0J8sxASZvLJgwyXY6I5zl1uyvXWc1TKMh9yjcOWUc7Xw==} + springboard-server@0.16.0-svelte-dev3: + resolution: {integrity: sha512-K7/LnZSfTu7rqpwmrONeGtB/j0LH+dxwKB3kenV6DkQ7N3THFyknmEymuw9upmetz54Zwu/MKTh+VslifBO0sA==} peerDependencies: - '@springboardjs/data-storage': 0.16.0-svelte-dev2 - '@springboardjs/platforms-node': 0.16.0-svelte-dev2 + '@springboardjs/data-storage': 0.16.0-svelte-dev3 + '@springboardjs/platforms-node': 0.16.0-svelte-dev3 hono: ^4.6.7 - springboard: 0.16.0-svelte-dev2 + springboard: 0.16.0-svelte-dev3 - springboard@0.16.0-svelte-dev2: - resolution: {integrity: sha512-FZoSByxlwfxig7ivwbUXGMqmanttgLkUlN6EV4/UUa89JzfxaQQagvznZHNuOrGgwObH0JMdzIe2Q0sEA7Wcbw==} + springboard@0.16.0-svelte-dev3: + resolution: {integrity: sha512-L9RUDwh+UnVUS08vkO/v73eOp6XwwJi5qUwx/esRGN2wX+G9b4k5Mqtx6EaJOJHSNSTzj9wPNVo/+EWIuxnDSw==} peerDependencies: '@trpc/client': ^10.45.2 immer: ^10.1.1 @@ -906,15 +906,15 @@ snapshots: '@trpc/server': 10.45.2 hono: 4.8.1 - '@jamtools/core@0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)': + '@jamtools/core@0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)': dependencies: - '@springboardjs/platforms-browser': 0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + '@springboardjs/platforms-browser': 0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) '@tonejs/midi': 2.0.28 easymidi: 3.1.0 immer: 10.1.1 midi-file: 1.2.4 soundfont-player: 0.12.0 - springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) webmidi: 3.1.12 optionalDependencies: svelte: 5.34.7 @@ -943,7 +943,7 @@ snapshots: '@remix-run/router@1.23.0': {} - '@springboardjs/data-storage@0.16.0-svelte-dev2(kysely@0.28.2)': + '@springboardjs/data-storage@0.16.0-svelte-dev3(kysely@0.28.2)': dependencies: '@trpc/client': 10.45.2(@trpc/server@10.45.2) '@trpc/server': 10.45.2 @@ -951,27 +951,27 @@ snapshots: kysely: 0.28.2 zod: 3.25.67 - '@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))': + '@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))': dependencies: json-rpc-2.0: 1.7.0 react-router-dom: 6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) reconnecting-websocket: 4.4.0 - springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) - '@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2)': + '@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2)': dependencies: isomorphic-ws: 4.0.1(ws@8.18.2) json-rpc-2.0: 1.7.0 reconnecting-websocket: 4.4.0 - springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) ws: 8.18.2 - '@springboardjs/plugin-svelte@0.16.0-svelte-dev2(@jamtools/core@0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7))(esbuild@0.25.5)(react@19.1.0)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3)': + '@springboardjs/plugin-svelte@0.16.0-svelte-dev3(@jamtools/core@0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7))(esbuild@0.25.5)(react@19.1.0)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3)': dependencies: - '@jamtools/core': 0.16.0-svelte-dev2(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7) + '@jamtools/core': 0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7) esbuild-svelte: 0.9.3(esbuild@0.25.5)(svelte@5.34.7) react: 19.1.0 - springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) svelte: 5.34.7 svelte-preprocess: 6.0.3(svelte@5.34.7)(typescript@5.8.3) transitivePeerDependencies: @@ -1331,36 +1331,36 @@ snapshots: note-parser: 2.0.1 sample-player: 0.5.5 - springboard-cli@0.16.0-svelte-dev2(pihxslhu436hefdtx2zo42poua): + springboard-cli@0.16.0-svelte-dev3(ioowiynfnghsyik2qbvmjtathq): dependencies: - '@springboardjs/platforms-browser': 0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) - '@springboardjs/platforms-node': 0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) + '@springboardjs/platforms-browser': 0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + '@springboardjs/platforms-node': 0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) commander: 12.1.0 concurrently: 9.1.2 esbuild: 0.25.5 - springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) - springboard-server: 0.16.0-svelte-dev2(@springboardjs/data-storage@0.16.0-svelte-dev2(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard-server: 0.16.0-svelte-dev3(@springboardjs/data-storage@0.16.0-svelte-dev3(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) tslib: 2.8.1 typescript: 5.8.3 - springboard-server@0.16.0-svelte-dev2(@springboardjs/data-storage@0.16.0-svelte-dev2(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)): + springboard-server@0.16.0-svelte-dev3(@springboardjs/data-storage@0.16.0-svelte-dev3(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)): dependencies: '@hono/node-server': 1.14.4(hono@4.8.1) '@hono/node-ws': 1.1.7(@hono/node-server@1.14.4(hono@4.8.1))(hono@4.8.1) '@hono/trpc-server': 0.3.4(@trpc/server@10.45.2)(hono@4.8.1) - '@springboardjs/data-storage': 0.16.0-svelte-dev2(kysely@0.28.2) - '@springboardjs/platforms-node': 0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) + '@springboardjs/data-storage': 0.16.0-svelte-dev3(kysely@0.28.2) + '@springboardjs/platforms-node': 0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) hono: 4.8.1 json-rpc-2.0: 1.7.0 - springboard: 0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) transitivePeerDependencies: - '@trpc/server' - bufferutil - utf-8-validate - springboard@0.16.0-svelte-dev2(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2): + springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2): dependencies: - '@springboardjs/data-storage': 0.16.0-svelte-dev2(kysely@0.28.2) + '@springboardjs/data-storage': 0.16.0-svelte-dev3(kysely@0.28.2) '@trpc/client': 10.45.2(@trpc/server@10.45.2) dexie: 4.0.11 immer: 10.1.1 diff --git a/src/HandSlider.svelte b/src/HandSlider.svelte new file mode 100644 index 0000000..2f75b83 --- /dev/null +++ b/src/HandSlider.svelte @@ -0,0 +1,29 @@ + + +
+
+ Hand +
+
+
+ { + onPositionChange(parseInt(e.target.value)) + }} + max={127} + /> +
{position}
+
+
+
diff --git a/src/index.css b/src/index.css new file mode 100644 index 0000000..d6e4016 --- /dev/null +++ b/src/index.css @@ -0,0 +1,58 @@ +.hand-raiser-main { + position: fixed; + bottom: 0; + left: 0; + right: 0; + padding: 20px; +} + +.hand-raiser-center { + display: flex; + gap: 10; + justify-content: center; + height: 100%; +} + +.hand-slider-container { + width: 200px; + position: relative; + height: 100%; + display: flex; + flex-direction: column; + align-items: center; + justify-content: flex-end; + padding: 0 20px; +} + +.hand-raiser-main .slider-container { + display: flex; + flex-direction: row; + gap: 10; + align-items: center; + z-index: 1; + margin-bottom: 20px; +} + +.hand { + pointer-events: none; + left: 50%; + transform: translateX(-50%); +} + +.hand img { + width: 200px; +} + +.hand-raiser-main .slider { + display: inline-block; + width: 60px; +} + +.hand-raiser-main .slider input { + writing-mode: vertical-rl; + direction: rtl; +} + +.hand-raiser-main .slider pre { + display: inline; +} diff --git a/src/index.svelte b/src/index.svelte index dfcf9ae..2baa35c 100644 --- a/src/index.svelte +++ b/src/index.svelte @@ -1,4 +1,6 @@ - - - -

{$count}

- -

{$name}

+ const handPositions = stateSupervisorToStore(main.states.handPositions); + - + + + +
+
+ {#each $handPositions as position, index} + actions.changeHandPosition({ index, value })} + /> + {/each} +
+
From f7467dea2a8095caf03991d95960a7dadc0346d6 Mon Sep 17 00:00:00 2001 From: Michael Kochell <6913320+mickmister@users.noreply.github.com> Date: Wed, 27 Aug 2025 03:55:10 -0400 Subject: [PATCH 5/7] upgrade springboard to 0.16.0. svelte plugin works from cli now --- .gitignore | 3 +- ...svelte_plugin.mjs => build_with_script.mjs | 6 +- package.json | 27 +-- pnpm-lock.yaml | 165 ++++++++---------- src/index.svelte | 40 +++-- 5 files changed, 117 insertions(+), 124 deletions(-) rename build_with_svelte_plugin.mjs => build_with_script.mjs (91%) diff --git a/.gitignore b/.gitignore index 76add87..20172f5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ node_modules -dist \ No newline at end of file +dist +data diff --git a/build_with_svelte_plugin.mjs b/build_with_script.mjs similarity index 91% rename from build_with_svelte_plugin.mjs rename to build_with_script.mjs index 61af106..d4978b6 100644 --- a/build_with_svelte_plugin.mjs +++ b/build_with_script.mjs @@ -12,7 +12,7 @@ setTimeout(async () => { nodeModulesParentFolder: process.cwd(), watch, plugins: [ - sveltePlugin.default, + sveltePlugin.default(), ], }); @@ -21,14 +21,14 @@ setTimeout(async () => { applicationEntrypoint: `${process.cwd()}/src/index.svelte`, nodeModulesParentFolder: process.cwd(), plugins: [ - sveltePlugin.default, + sveltePlugin.default(), ], }); await buildServer({ watch, plugins: [ - sveltePlugin.default, + sveltePlugin.default(), ], }); diff --git a/package.json b/package.json index 0248e1a..4f0adca 100644 --- a/package.json +++ b/package.json @@ -3,23 +3,27 @@ "version": "1.0.0", "description": "Raise your hands", "main": "index.js", + "scripts": { + "dev": "sb dev src/index.svelte --plugins svelte", + "build": "sb build src/index.svelte --plugins svelte", + "start": "sb start", + "build-with-script": "node build_with_script.mjs" + }, "dependencies": { - "@jamtools/core": "0.16.0-svelte-dev3", - "@springboardjs/plugin-svelte": "0.16.0-svelte-dev3", + "@jamtools/core": "0.16.0", + "@springboardjs/platforms-browser": "0.16.0", + "@springboardjs/data-storage": "0.16.0", + "@springboardjs/platforms-node": "0.16.0", + "@springboardjs/plugin-svelte": "0.16.0", "react": "^19.1.0", "react-dom": "^19.1.0", "react-router": "^6.30.1", "react-router-dom": "^6.30.1", - "springboard": "0.16.0-svelte-dev3", - "springboard-cli": "0.16.0-svelte-dev3", - "springboard-server": "^0.16.0-svelte-dev3", + "springboard": "0.16.0", + "springboard-cli": "0.16.0", + "springboard-server": "0.16.0", "svelte": "^5.34.7" }, - "scripts": { - "dev": "npm run build -- --watch", - "build": "tsx build_with_svelte_plugin.mjs", - "start": "sb start" - }, "keywords": [], "author": "", "license": "ISC", @@ -28,5 +32,8 @@ "@types/react": "^19.1.8", "@types/react-dom": "^19.1.6", "typescript": "^5.8.3" + }, + "pnpm": { + "onlyBuiltDependencies": ["better-sqlite3"] } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9033498..9a8c488 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,11 +9,20 @@ importers: .: dependencies: '@jamtools/core': - specifier: 0.16.0-svelte-dev3 - version: 0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7) + specifier: 0.16.0 + version: 0.16.0(@springboardjs/platforms-browser@0.16.0(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7) + '@springboardjs/data-storage': + specifier: 0.16.0 + version: 0.16.0(kysely@0.28.2) + '@springboardjs/platforms-browser': + specifier: 0.16.0 + version: 0.16.0(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + '@springboardjs/platforms-node': + specifier: 0.16.0 + version: 0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) '@springboardjs/plugin-svelte': - specifier: 0.16.0-svelte-dev3 - version: 0.16.0-svelte-dev3(@jamtools/core@0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7))(esbuild@0.25.5)(react@19.1.0)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3) + specifier: 0.16.0 + version: 0.16.0(esbuild@0.25.5)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3) react: specifier: ^19.1.0 version: 19.1.0 @@ -27,14 +36,14 @@ importers: specifier: ^6.30.1 version: 6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) springboard: - specifier: 0.16.0-svelte-dev3 - version: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + specifier: 0.16.0 + version: 0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) springboard-cli: - specifier: 0.16.0-svelte-dev3 - version: 0.16.0-svelte-dev3(ioowiynfnghsyik2qbvmjtathq) + specifier: 0.16.0 + version: 0.16.0(@springboardjs/platforms-browser@0.16.0(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@springboardjs/platforms-node@0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(springboard-server@0.16.0(@springboardjs/data-storage@0.16.0(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(hono@4.8.1)(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) springboard-server: - specifier: ^0.16.0-svelte-dev3 - version: 0.16.0-svelte-dev3(@springboardjs/data-storage@0.16.0-svelte-dev3(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + specifier: 0.16.0 + version: 0.16.0(@springboardjs/data-storage@0.16.0(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(hono@4.8.1)(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) svelte: specifier: ^5.34.7 version: 5.34.7 @@ -225,19 +234,12 @@ packages: '@hono/node-server': ^1.11.1 hono: ^4.6.0 - '@hono/trpc-server@0.3.4': - resolution: {integrity: sha512-xFOPjUPnII70FgicDzOJy1ufIoBTu8eF578zGiDOrYOrYN8CJe140s9buzuPkX+SwJRYK8LjEBHywqZtxdm8aA==} - engines: {node: '>=16.0.0'} + '@jamtools/core@0.16.0': + resolution: {integrity: sha512-LfQ7EcYly7m1B2UUwoLp/xkhWiJ/ID1KXw7XV/8HYEuatJ7SvbFGAy7MzOhzJPzWi9HZpyj4RcGID6akz9/nZQ==} peerDependencies: - '@trpc/server': ^10.10.0 || >11.0.0-rc - hono: '>=4.*' - - '@jamtools/core@0.16.0-svelte-dev3': - resolution: {integrity: sha512-BiTrYV9NuTIt3sqfWWIUXhkD08ikG0Hnji82Eabfhr3Ai/cTrrNFi4dQ1CXQMdhQSXDEJScwFWrnmuMJWDoLVw==} - peerDependencies: - '@springboardjs/platforms-browser': 0.16.0-svelte-dev3 + '@springboardjs/platforms-browser': 0.16.0 '@tonejs/midi': ^2.0.0 - springboard: 0.16.0-svelte-dev3 + springboard: 0.16.0 svelte: '>= 5' peerDependenciesMeta: svelte: @@ -269,30 +271,31 @@ packages: resolution: {integrity: sha512-O3rHJzAQKamUz1fvE0Qaw0xSFqsA/yafi2iqeE0pvdFtCO1viYx8QL6f3Ln/aCCTLxs68SLf0KPM9eSeM8yBnA==} engines: {node: '>=14.0.0'} - '@springboardjs/data-storage@0.16.0-svelte-dev3': - resolution: {integrity: sha512-VbJjlt+mwytgNtKFrcK5SRso8r5KCqLzbfTfS92SQuejG86W/vf66USJAC79TzxyQn8H00HzY3CLU6VCVYP7tw==} + '@springboardjs/data-storage@0.16.0': + resolution: {integrity: sha512-g1KLUtq6kw5BAfuxFjhAzIVR9eLQXwzMNLCRgPU/9KW5NHfL8DUVSUha7Nb7tt+1jPwtH4AIfraDIrSbrbSsBQ==} peerDependencies: kysely: '>= 0.24.0' - '@springboardjs/platforms-browser@0.16.0-svelte-dev2': - resolution: {integrity: sha512-Dxx9Du5N3sxQLZv0G1HkkiZPSY7hn65UHTBLTOZhF0sGIg/cS2wXTTaI/B+3XprYXlI56oZN9T9QhxY2DkAU0Q==} + '@springboardjs/platforms-browser@0.16.0': + resolution: {integrity: sha512-1XgKgdOtUX3skK6cOy30B2dG7XBDH+yBHmEhIXXc2VJ7L7f9CjuJvTatwApNdV9N1tFe3AQYX5VOpGRmVuhQZQ==} peerDependencies: react-router-dom: ^6 - springboard: 0.16.0-svelte-dev2 + springboard: 0.16.0 - '@springboardjs/platforms-node@0.16.0-svelte-dev2': - resolution: {integrity: sha512-DEEznVvAHL9WhhKe4LN1XCDU06qd2q4OresJ2UsggyqlieH4Iv3fYKU5Xknk0uJuhuL1xw1xPFnB60wzzIqP2g==} + '@springboardjs/platforms-node@0.16.0': + resolution: {integrity: sha512-MZvBU0ugpW+NeR5dH93PkGKyDuJd8G2LEg4ysFug6Tgt0HKJ9DqV0AoYy2fKIwsJ+v46BhkO+YlXQlTg8criiA==} peerDependencies: isomorphic-ws: ^4.0.1 - springboard: 0.16.0-svelte-dev2 + springboard: 0.16.0 ws: ^8.18.0 - '@springboardjs/plugin-svelte@0.16.0-svelte-dev3': - resolution: {integrity: sha512-pGJZxQkvOsAN9zhQsRS4rqJlX69il7RVaHqaNDYeNFORisi6fQt1BYmOI40Z+kTIydxQBHRUGRdZO6zUTM/xpQ==} + '@springboardjs/plugin-svelte@0.16.0': + resolution: {integrity: sha512-qZ5s/qcRpJsCCTfWHHAlFT2fkjRU83yVZckPQUZn3LF5lMwXvKB5E4dLZoFDFwb10/YqC2ubqPGrda8v+ys2kQ==} peerDependencies: - '@jamtools/core': 0.16.0-svelte-dev3 react: '*' - springboard: 0.16.0-svelte-dev3 + react-dom: '*' + rxjs: '*' + springboard: 0.16.0 svelte: '>= 5' '@sveltejs/acorn-typescript@1.0.5': @@ -303,14 +306,6 @@ packages: '@tonejs/midi@2.0.28': resolution: {integrity: sha512-RII6YpInPsOZ5t3Si/20QKpNqB1lZ2OCFJSOzJxz38YdY/3zqDr3uaml4JuCWkdixuPqP1/TBnXzhQ39csyoVg==} - '@trpc/client@10.45.2': - resolution: {integrity: sha512-ykALM5kYWTLn1zYuUOZ2cPWlVfrXhc18HzBDyRhoPYN0jey4iQHEFSEowfnhg1RvYnrAVjNBgHNeSAXjrDbGwg==} - peerDependencies: - '@trpc/server': 10.45.2 - - '@trpc/server@10.45.2': - resolution: {integrity: sha512-wOrSThNNE4HUnuhJG6PfDRp4L2009KDVxsd+2VYH8ro6o/7/jwYZ8Uu5j+VaW+mOmc8EHerHzGcdbGNQSAUPgg==} - '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} @@ -644,27 +639,26 @@ packages: soundfont-player@0.12.0: resolution: {integrity: sha512-8BJIsAt7h1PK3thSZDgF6zecgGhYkK74JnZO8WRZi3h34qG6H/DYlnv7cpRvL7Q9C8N6qld4Qwj7nJsX1gYjEA==} - springboard-cli@0.16.0-svelte-dev3: - resolution: {integrity: sha512-+SQ/neEk7QJ2fCULgCQ013+pgtOYqI4HQLPsisacEirAwpBT6mDJKFGqX1Y/SFBUNckhwwshATE7w4BGTKurxg==} + springboard-cli@0.16.0: + resolution: {integrity: sha512-WggFT3NWiReHlDJ/WbjCrXgneCPRqakma960F2UtwxKMwxqahSOHajKU2rTmMMR389FJ5X0IHzJZfqT/kl3S5Q==} hasBin: true peerDependencies: - '@springboardjs/platforms-browser': 0.16.0-svelte-dev3 - '@springboardjs/platforms-node': 0.16.0-svelte-dev3 - springboard: 0.16.0-svelte-dev3 - springboard-server: 0.16.0-svelte-dev3 + '@springboardjs/platforms-browser': 0.16.0 + '@springboardjs/platforms-node': 0.16.0 + springboard: 0.16.0 + springboard-server: 0.16.0 - springboard-server@0.16.0-svelte-dev3: - resolution: {integrity: sha512-K7/LnZSfTu7rqpwmrONeGtB/j0LH+dxwKB3kenV6DkQ7N3THFyknmEymuw9upmetz54Zwu/MKTh+VslifBO0sA==} + springboard-server@0.16.0: + resolution: {integrity: sha512-E2XkkZqsuD9Eih36LNRzjSQt2+q/xYR3G5ZHUf/XgjvfhOU2yIb6NoN/IkC2N7rD+B0LfssVpM04K5uCX0JIiQ==} peerDependencies: - '@springboardjs/data-storage': 0.16.0-svelte-dev3 - '@springboardjs/platforms-node': 0.16.0-svelte-dev3 + '@springboardjs/data-storage': 0.16.0 + '@springboardjs/platforms-node': 0.16.0 hono: ^4.6.7 - springboard: 0.16.0-svelte-dev3 + springboard: 0.16.0 - springboard@0.16.0-svelte-dev3: - resolution: {integrity: sha512-L9RUDwh+UnVUS08vkO/v73eOp6XwwJi5qUwx/esRGN2wX+G9b4k5Mqtx6EaJOJHSNSTzj9wPNVo/+EWIuxnDSw==} + springboard@0.16.0: + resolution: {integrity: sha512-W+3Pkum1dw/RCh+q5LmhPFvUGFY9mfnFlU43JiJ+AX9IFuKG5iPG0oH8dYh0XJVZ1BxTmNnAr2r0m5a8qJeqUA==} peerDependencies: - '@trpc/client': ^10.45.2 immer: ^10.1.1 json-rpc-2.0: ^1.7.0 react: ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -901,20 +895,15 @@ snapshots: - bufferutil - utf-8-validate - '@hono/trpc-server@0.3.4(@trpc/server@10.45.2)(hono@4.8.1)': + '@jamtools/core@0.16.0(@springboardjs/platforms-browser@0.16.0(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)': dependencies: - '@trpc/server': 10.45.2 - hono: 4.8.1 - - '@jamtools/core@0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)': - dependencies: - '@springboardjs/platforms-browser': 0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + '@springboardjs/platforms-browser': 0.16.0(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) '@tonejs/midi': 2.0.28 easymidi: 3.1.0 immer: 10.1.1 midi-file: 1.2.4 soundfont-player: 0.12.0 - springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard: 0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) webmidi: 3.1.12 optionalDependencies: svelte: 5.34.7 @@ -943,35 +932,34 @@ snapshots: '@remix-run/router@1.23.0': {} - '@springboardjs/data-storage@0.16.0-svelte-dev3(kysely@0.28.2)': + '@springboardjs/data-storage@0.16.0(kysely@0.28.2)': dependencies: - '@trpc/client': 10.45.2(@trpc/server@10.45.2) - '@trpc/server': 10.45.2 better-sqlite3: 11.10.0 kysely: 0.28.2 zod: 3.25.67 - '@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))': + '@springboardjs/platforms-browser@0.16.0(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))': dependencies: json-rpc-2.0: 1.7.0 react-router-dom: 6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0) reconnecting-websocket: 4.4.0 - springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard: 0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) - '@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2)': + '@springboardjs/platforms-node@0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2)': dependencies: isomorphic-ws: 4.0.1(ws@8.18.2) json-rpc-2.0: 1.7.0 reconnecting-websocket: 4.4.0 - springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard: 0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) ws: 8.18.2 - '@springboardjs/plugin-svelte@0.16.0-svelte-dev3(@jamtools/core@0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7))(esbuild@0.25.5)(react@19.1.0)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3)': + '@springboardjs/plugin-svelte@0.16.0(esbuild@0.25.5)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7)(typescript@5.8.3)': dependencies: - '@jamtools/core': 0.16.0-svelte-dev3(@springboardjs/platforms-browser@0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@tonejs/midi@2.0.28)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(svelte@5.34.7) esbuild-svelte: 0.9.3(esbuild@0.25.5)(svelte@5.34.7) react: 19.1.0 - springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + react-dom: 19.1.0(react@19.1.0) + rxjs: 7.8.2 + springboard: 0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) svelte: 5.34.7 svelte-preprocess: 6.0.3(svelte@5.34.7)(typescript@5.8.3) transitivePeerDependencies: @@ -996,12 +984,6 @@ snapshots: array-flatten: 3.0.0 midi-file: 1.2.4 - '@trpc/client@10.45.2(@trpc/server@10.45.2)': - dependencies: - '@trpc/server': 10.45.2 - - '@trpc/server@10.45.2': {} - '@types/estree@1.0.8': {} '@types/node@24.0.3': @@ -1331,37 +1313,33 @@ snapshots: note-parser: 2.0.1 sample-player: 0.5.5 - springboard-cli@0.16.0-svelte-dev3(ioowiynfnghsyik2qbvmjtathq): + springboard-cli@0.16.0(@springboardjs/platforms-browser@0.16.0(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(@springboardjs/platforms-node@0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(springboard-server@0.16.0(@springboardjs/data-storage@0.16.0(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(hono@4.8.1)(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)): dependencies: - '@springboardjs/platforms-browser': 0.16.0-svelte-dev2(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) - '@springboardjs/platforms-node': 0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) + '@springboardjs/platforms-browser': 0.16.0(react-router-dom@6.30.1(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + '@springboardjs/platforms-node': 0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) commander: 12.1.0 concurrently: 9.1.2 esbuild: 0.25.5 - springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) - springboard-server: 0.16.0-svelte-dev3(@springboardjs/data-storage@0.16.0-svelte-dev3(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) + springboard: 0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard-server: 0.16.0(@springboardjs/data-storage@0.16.0(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(hono@4.8.1)(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)) tslib: 2.8.1 typescript: 5.8.3 - springboard-server@0.16.0-svelte-dev3(@springboardjs/data-storage@0.16.0-svelte-dev3(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(@trpc/server@10.45.2)(hono@4.8.1)(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)): + springboard-server@0.16.0(@springboardjs/data-storage@0.16.0(kysely@0.28.2))(@springboardjs/platforms-node@0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2))(hono@4.8.1)(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2)): dependencies: '@hono/node-server': 1.14.4(hono@4.8.1) '@hono/node-ws': 1.1.7(@hono/node-server@1.14.4(hono@4.8.1))(hono@4.8.1) - '@hono/trpc-server': 0.3.4(@trpc/server@10.45.2)(hono@4.8.1) - '@springboardjs/data-storage': 0.16.0-svelte-dev3(kysely@0.28.2) - '@springboardjs/platforms-node': 0.16.0-svelte-dev2(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) + '@springboardjs/data-storage': 0.16.0(kysely@0.28.2) + '@springboardjs/platforms-node': 0.16.0(isomorphic-ws@4.0.1(ws@8.18.2))(springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2))(ws@8.18.2) hono: 4.8.1 json-rpc-2.0: 1.7.0 - springboard: 0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) + springboard: 0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2) transitivePeerDependencies: - - '@trpc/server' - bufferutil - utf-8-validate - springboard@0.16.0-svelte-dev3(@trpc/client@10.45.2(@trpc/server@10.45.2))(immer@10.1.1)(json-rpc-2.0@1.7.0)(kysely@0.28.2)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2): + springboard@0.16.0(immer@10.1.1)(json-rpc-2.0@1.7.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(rxjs@7.8.2): dependencies: - '@springboardjs/data-storage': 0.16.0-svelte-dev3(kysely@0.28.2) - '@trpc/client': 10.45.2(@trpc/server@10.45.2) dexie: 4.0.11 immer: 10.1.1 json-rpc-2.0: 1.7.0 @@ -1372,7 +1350,6 @@ snapshots: ws: 8.18.2 transitivePeerDependencies: - bufferutil - - kysely - utf-8-validate string-width@4.2.3: diff --git a/src/index.svelte b/src/index.svelte index 2baa35c..b1f68f1 100644 --- a/src/index.svelte +++ b/src/index.svelte @@ -44,18 +44,16 @@ }, }); - const macros = await moduleAPI - .getModule('macro') - .createMacros(moduleAPI, { - slider1: { - type: 'midi_control_change_input', - config: {}, - }, - slider2: { - type: 'midi_control_change_input', - config: {}, - }, - }); + const macros = await moduleAPI.getModule('macro').createMacros(moduleAPI, { + slider1: { + type: 'midi_control_change_input', + config: {}, + }, + slider2: { + type: 'midi_control_change_input', + config: {}, + }, + }); return { states, @@ -66,10 +64,10 @@ - - + + + + + +
From de023ac3dbd5f47d8db25bf205d99a80bfbf84b8 Mon Sep 17 00:00:00 2001 From: Michael Kochell <6913320+mickmister@users.noreply.github.com> Date: Wed, 27 Aug 2025 04:02:45 -0400 Subject: [PATCH 6/7] add ci jobs --- .github/workflows/ci.yml | 75 ++++++++++++++++++++++++++++++++++++++++ package.json | 3 +- src/svelte.d.ts | 5 +++ 3 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/ci.yml create mode 100644 src/svelte.d.ts diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..b3c4a7a --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,75 @@ +name: CI + +on: + pull_request: + push: + branches: + - 'main' + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 10.15.0 + + - name: Install Node.js + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: 'pnpm' + + - name: Install modules + run: pnpm i + + - name: Build app + run: SPRINGBOARD_PLATFORM_VARIANT=all pnpm run build + + - name: Find and upload npm logs + if: failure() + run: | + mkdir -p artifacts/npm-logs + find ~/.npm/_logs -type f -name "*.log" -exec cp {} artifacts/npm-logs/ \; + shell: bash + + - name: Upload npm logs artifact + if: failure() + uses: actions/upload-artifact@v4 + with: + name: npm-logs + path: artifacts/npm-logs/ + + types: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 10.15.0 + + - name: Install Node.js + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: 'pnpm' + + - name: Install modules + run: pnpm i + + - name: Install modules for e2e tests + run: cd tests-e2e && npm i + + - name: Check Types + run: pnpm run check-types + + - name: Check Types for Tests + run: cd tests-e2e && npm run check-types diff --git a/package.json b/package.json index 4f0adca..f27b6b2 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,8 @@ "dev": "sb dev src/index.svelte --plugins svelte", "build": "sb build src/index.svelte --plugins svelte", "start": "sb start", - "build-with-script": "node build_with_script.mjs" + "build-with-script": "node build_with_script.mjs", + "check-types": "tsc --noEmit" }, "dependencies": { "@jamtools/core": "0.16.0", diff --git a/src/svelte.d.ts b/src/svelte.d.ts new file mode 100644 index 0000000..393ff5e --- /dev/null +++ b/src/svelte.d.ts @@ -0,0 +1,5 @@ +declare module '*.svelte' { + import type { ComponentType } from 'svelte'; + const component: ComponentType; + export default component; +} From 2bdb38479d399b884d79bb78d6d8eb041c368da7 Mon Sep 17 00:00:00 2001 From: Michael Kochell <6913320+mickmister@users.noreply.github.com> Date: Wed, 27 Aug 2025 04:04:00 -0400 Subject: [PATCH 7/7] fix workflow --- .github/workflows/ci.yml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b3c4a7a..12e91a9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,7 +29,7 @@ jobs: run: pnpm i - name: Build app - run: SPRINGBOARD_PLATFORM_VARIANT=all pnpm run build + run: SPRINGBOARD_PLATFORM_VARIANT=main pnpm run build - name: Find and upload npm logs if: failure() @@ -65,11 +65,5 @@ jobs: - name: Install modules run: pnpm i - - name: Install modules for e2e tests - run: cd tests-e2e && npm i - - name: Check Types run: pnpm run check-types - - - name: Check Types for Tests - run: cd tests-e2e && npm run check-types