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 @@
+
+
+
+
+

+
+
+
+
{
+ 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