Compare commits

...

2 Commits

Author SHA1 Message Date
c669d66969 fix: just dev-all support windows 2025-06-05 02:44:23 +08:00
082e08e7f4 fcwd: add tui temp 2025-06-04 01:09:18 +08:00
10 changed files with 206 additions and 124 deletions

89
.vscode/settings.json vendored
View File

@ -1,46 +1,45 @@
{ {
"npm.packageManager": "pnpm", "npm.packageManager": "pnpm",
"rust-analyzer.showUnlinkedFileNotification": false, "[javascript]": {
"[javascript]": { "editor.defaultFormatter": "vscode.typescript-language-features",
"editor.defaultFormatter": "vscode.typescript-language-features", "editor.formatOnSave": true
"editor.formatOnSave": true },
}, "[json]": {
"[json]": { "editor.defaultFormatter": "biomejs.biome",
"editor.defaultFormatter": "biomejs.biome", "editor.formatOnSave": true
"editor.formatOnSave": true },
}, "[jsonc]": {
"[jsonc]": { "editor.defaultFormatter": "biomejs.biome",
"editor.defaultFormatter": "biomejs.biome", "editor.formatOnSave": true
"editor.formatOnSave": true },
}, "[typescript]": {
"[typescript]": { "editor.defaultFormatter": "biomejs.biome",
"editor.defaultFormatter": "biomejs.biome", "editor.formatOnSave": true
"editor.formatOnSave": true },
}, "[typescriptreact]": {
"[typescriptreact]": { "editor.defaultFormatter": "biomejs.biome",
"editor.defaultFormatter": "biomejs.biome", "editor.formatOnSave": true
"editor.formatOnSave": true },
}, "editor.codeActionsOnSave": {
"editor.codeActionsOnSave": { "quickfix.biome": "explicit",
"quickfix.biome": "explicit", "source.organizeImports.biome": "explicit"
"source.organizeImports.biome": "explicit" },
}, "emmet.showExpandedAbbreviation": "never",
"emmet.showExpandedAbbreviation": "never", "prettier.enable": false,
"prettier.enable": false, "typescript.tsdk": "node_modules/typescript/lib",
"typescript.tsdk": "node_modules/typescript/lib", "rust-analyzer.showUnlinkedFileNotification": false,
"rust-analyzer.cargo.features": [ "sqltools.connections": [
"testcontainers", {
"playground" "previewLimit": 50,
], "server": "localhost",
"sqltools.connections": [ "port": 5432,
{ "driver": "PostgreSQL",
"previewLimit": 50, "name": "konobangu-dev",
"server": "localhost", "database": "konobangu",
"port": 5432, "username": "konobangu"
"driver": "PostgreSQL", }
"name": "konobangu-dev", ],
"database": "konobangu", "rust-analyzer.cargo.extraArgs": [
"username": "konobangu" "--all-features"
} ]
] }
}

54
Cargo.lock generated
View File

@ -858,9 +858,9 @@ dependencies = [
[[package]] [[package]]
name = "bumpalo" name = "bumpalo"
version = "3.17.0" version = "3.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" checksum = "793db76d6187cd04dff33004d8e6c9cc4e05cd330500379d2394209271b4aeee"
[[package]] [[package]]
name = "bytecheck" name = "bytecheck"
@ -934,9 +934,9 @@ dependencies = [
[[package]] [[package]]
name = "cc" name = "cc"
version = "1.2.25" version = "1.2.26"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d0fc897dc1e865cc67c0e05a836d9d3f1df3cbe442aa4a9473b18e12624a4951" checksum = "956a5e21988b87f372569b66183b78babf23ebc2e744b733e4350a752c4dafac"
dependencies = [ dependencies = [
"jobserver", "jobserver",
"libc", "libc",
@ -2062,7 +2062,7 @@ dependencies = [
"serde", "serde",
"serde_json", "serde_json",
"serde_yaml", "serde_yaml",
"toml 0.8.22", "toml 0.8.23",
"uncased", "uncased",
"version_check", "version_check",
] ]
@ -2081,9 +2081,9 @@ dependencies = [
[[package]] [[package]]
name = "flate2" name = "flate2"
version = "1.1.1" version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d"
dependencies = [ dependencies = [
"crc32fast", "crc32fast",
"miniz_oxide", "miniz_oxide",
@ -2778,9 +2778,9 @@ dependencies = [
[[package]] [[package]]
name = "hyper-rustls" name = "hyper-rustls"
version = "0.27.6" version = "0.27.7"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "03a01595e11bdcec50946522c32dde3fc6914743000a68b93000965f2f02406d" checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58"
dependencies = [ dependencies = [
"http", "http",
"hyper", "hyper",
@ -4832,9 +4832,9 @@ dependencies = [
[[package]] [[package]]
name = "portable-atomic" name = "portable-atomic"
version = "1.11.0" version = "1.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483"
[[package]] [[package]]
name = "potential_utf" name = "potential_utf"
@ -6144,9 +6144,9 @@ dependencies = [
[[package]] [[package]]
name = "serde_spanned" name = "serde_spanned"
version = "0.6.8" version = "0.6.9"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3"
dependencies = [ dependencies = [
"serde", "serde",
] ]
@ -6414,9 +6414,9 @@ dependencies = [
[[package]] [[package]]
name = "smallvec" name = "smallvec"
version = "1.15.0" version = "1.15.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03"
dependencies = [ dependencies = [
"serde", "serde",
] ]
@ -7231,9 +7231,9 @@ dependencies = [
[[package]] [[package]]
name = "toml" name = "toml"
version = "0.8.22" version = "0.8.23"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362"
dependencies = [ dependencies = [
"serde", "serde",
"serde_spanned", "serde_spanned",
@ -7243,18 +7243,18 @@ dependencies = [
[[package]] [[package]]
name = "toml_datetime" name = "toml_datetime"
version = "0.6.9" version = "0.6.11"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c"
dependencies = [ dependencies = [
"serde", "serde",
] ]
[[package]] [[package]]
name = "toml_edit" name = "toml_edit"
version = "0.22.26" version = "0.22.27"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a"
dependencies = [ dependencies = [
"indexmap 2.9.0", "indexmap 2.9.0",
"serde", "serde",
@ -7266,9 +7266,9 @@ dependencies = [
[[package]] [[package]]
name = "toml_write" name = "toml_write"
version = "0.1.1" version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801"
[[package]] [[package]]
name = "tower" name = "tower"
@ -7354,9 +7354,9 @@ dependencies = [
[[package]] [[package]]
name = "tracing-attributes" name = "tracing-attributes"
version = "0.1.28" version = "0.1.29"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" checksum = "1b1ffbcf9c6f6b99d386e7444eb608ba646ae452a36b39737deb9663b610f662"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -7365,9 +7365,9 @@ dependencies = [
[[package]] [[package]]
name = "tracing-core" name = "tracing-core"
version = "0.1.33" version = "0.1.34"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678"
dependencies = [ dependencies = [
"once_cell", "once_cell",
"valuable", "valuable",

View File

@ -60,7 +60,7 @@ tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
axum-extra = "0.10" axum-extra = "0.10"
mockito = { version = "1.6.1" } mockito = { version = "1.6.1" }
convert_case = "0.8" convert_case = "0.8"
color-eyre = "0.6.4" color-eyre = "0.6.5"
inquire = "0.7.5" inquire = "0.7.5"
[patch.crates-io] [patch.crates-io]

View File

@ -30,6 +30,7 @@ pub use web::{
extract_mikan_bangumi_index_meta_list_from_season_flow_fragment, extract_mikan_bangumi_index_meta_list_from_season_flow_fragment,
extract_mikan_bangumi_meta_from_expand_subscribed_fragment, extract_mikan_bangumi_meta_from_expand_subscribed_fragment,
extract_mikan_episode_meta_from_episode_homepage_html, extract_mikan_episode_meta_from_episode_homepage_html,
scrape_mikan_bangumi_index_meta_from_bangumi_homepage_url,
scrape_mikan_bangumi_meta_from_bangumi_homepage_url, scrape_mikan_bangumi_meta_from_bangumi_homepage_url,
scrape_mikan_bangumi_meta_list_from_season_flow_url, scrape_mikan_bangumi_meta_list_from_season_flow_url,
scrape_mikan_bangumi_meta_stream_from_season_flow_url, scrape_mikan_bangumi_meta_stream_from_season_flow_url,

12
dev.kdl
View File

@ -21,13 +21,13 @@ layout {
children children
} }
tab name="WebUI" { tab name="WebUI" {
pane command="pnpm" { pane command="just" {
args "run" "--filter=webui" "dev" args "dev-webui"
} }
} }
tab name="Proxy" { tab name="Proxy" {
pane command="pnpm" { pane command="just" {
args "run" "--filter=proxy" "dev" args "dev-proxy"
} }
} }
tab name="Recorder" { tab name="Recorder" {
@ -36,8 +36,8 @@ layout {
} }
} }
tab name="Deps" { tab name="Deps" {
pane command="docker" { pane command="just" {
args "compose" "-f" "devdeps.compose.yaml" "up" args "dev-deps"
} }
} }
tab name="Codegen" { tab name="Codegen" {

View File

@ -31,9 +31,14 @@ dev-deps-clean:
dev-codegen: dev-codegen:
pnpm run --filter=webui codegen pnpm run --filter=webui codegen
[unix]
dev-all: dev-all:
zellij --layout dev.kdl zellij --layout dev.kdl
[windows]
dev-all:
pnpm run dev-all
dev-codegen-wait: dev-codegen-wait:
@until nc -z localhost 5001; do echo "Waiting for Recorder..."; sleep 1; done @until nc -z localhost 5001; do echo "Waiting for Recorder..."; sleep 1; done
pnpm run --filter=webui codegen-watch pnpm run --filter=webui codegen-watch

View File

@ -3,15 +3,18 @@
"version": "0.0.0", "version": "0.0.0",
"description": "Kono bangumi?", "description": "Kono bangumi?",
"license": "MIT", "license": "MIT",
"workspaces": [ "workspaces": ["packages/*", "apps/*"],
"packages/*",
"apps/*"
],
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/dumtruck/konobangu.git" "url": "https://github.com/dumtruck/konobangu.git"
}, },
"scripts": { "scripts": {
"dev-webui": "just dev-webui",
"dev-proxy": "just dev-proxy",
"dev-recorder": "just dev-recorder",
"dev-deps": "just dev-deps",
"dev-codegen-wait": "just dev-codegen-wait",
"dev-all": "turbo run //#dev-recorder //#dev-proxy //#dev-webui //#dev-deps //#dev-codegen-wait",
"lint": "ultracite lint", "lint": "ultracite lint",
"format": "ultracite format", "format": "ultracite format",
"bump-deps": "npx --yes npm-check-updates --deep -u -x react-day-picker && pnpm install", "bump-deps": "npx --yes npm-check-updates --deep -u -x react-day-picker && pnpm install",
@ -27,6 +30,7 @@
"@biomejs/biome": "1.9.4", "@biomejs/biome": "1.9.4",
"@types/node": "^22.15.29", "@types/node": "^22.15.29",
"tsx": "^4.19.4", "tsx": "^4.19.4",
"turbo": "^2.5.4",
"typescript": "^5.8.3", "typescript": "^5.8.3",
"ultracite": "^4.2.8" "ultracite": "^4.2.8"
} }

117
pnpm-lock.yaml generated
View File

@ -23,6 +23,9 @@ importers:
tsx: tsx:
specifier: ^4.19.4 specifier: ^4.19.4
version: 4.19.4 version: 4.19.4
turbo:
specifier: ^2.5.4
version: 2.5.4
typescript: typescript:
specifier: ^5.8.3 specifier: ^5.8.3
version: 5.8.3 version: 5.8.3
@ -236,9 +239,6 @@ importers:
react-dom: react-dom:
specifier: ^19.1.0 specifier: ^19.1.0
version: 19.1.0(react@19.1.0) version: 19.1.0(react@19.1.0)
react-hook-form:
specifier: ^7.56.3
version: 7.57.0(react@19.1.0)
react-resizable-panels: react-resizable-panels:
specifier: ^3.0.1 specifier: ^3.0.1
version: 3.0.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) version: 3.0.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
@ -364,10 +364,10 @@ importers:
devDependencies: devDependencies:
'@vitejs/plugin-react': '@vitejs/plugin-react':
specifier: ^4.3.4 specifier: ^4.3.4
version: 4.5.1(vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0)) version: 4.5.1(vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0))
vitest: vitest:
specifier: ^2.1.8 specifier: ^2.1.8
version: 2.1.9(@types/node@22.15.29)(jsdom@25.0.1(bufferutil@4.0.9)(utf-8-validate@6.0.5))(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0) version: 2.1.9(@types/node@22.15.29)(jsdom@25.0.1(bufferutil@4.0.9)(utf-8-validate@6.0.5))(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0)
packages: packages:
@ -6698,11 +6698,6 @@ packages:
uglify-js: uglify-js:
optional: true optional: true
terser@5.39.0:
resolution: {integrity: sha512-LBAhFyLho16harJoWMg/nZsQYgTrg5jXOn2nCYjRUcZZEdE3qa2zb8QEDRUGVZBW4rlazf2fxkg8tztybTaqWw==}
engines: {node: '>=10'}
hasBin: true
terser@5.41.0: terser@5.41.0:
resolution: {integrity: sha512-H406eLPXpZbAX14+B8psIuvIr8+3c+2hkuYzpMkoE0ij+NdsVATbA78vb8neA/eqrj7rywa2pIkdmWRsXW6wmw==} resolution: {integrity: sha512-H406eLPXpZbAX14+B8psIuvIr8+3c+2hkuYzpMkoE0ij+NdsVATbA78vb8neA/eqrj7rywa2pIkdmWRsXW6wmw==}
engines: {node: '>=10'} engines: {node: '>=10'}
@ -6823,6 +6818,40 @@ packages:
engines: {node: '>=18.0.0'} engines: {node: '>=18.0.0'}
hasBin: true hasBin: true
turbo-darwin-64@2.5.4:
resolution: {integrity: sha512-ah6YnH2dErojhFooxEzmvsoZQTMImaruZhFPfMKPBq8sb+hALRdvBNLqfc8NWlZq576FkfRZ/MSi4SHvVFT9PQ==}
cpu: [x64]
os: [darwin]
turbo-darwin-arm64@2.5.4:
resolution: {integrity: sha512-2+Nx6LAyuXw2MdXb7pxqle3MYignLvS7OwtsP9SgtSBaMlnNlxl9BovzqdYAgkUW3AsYiQMJ/wBRb7d+xemM5A==}
cpu: [arm64]
os: [darwin]
turbo-linux-64@2.5.4:
resolution: {integrity: sha512-5May2kjWbc8w4XxswGAl74GZ5eM4Gr6IiroqdLhXeXyfvWEdm2mFYCSWOzz0/z5cAgqyGidF1jt1qzUR8hTmOA==}
cpu: [x64]
os: [linux]
turbo-linux-arm64@2.5.4:
resolution: {integrity: sha512-/2yqFaS3TbfxV3P5yG2JUI79P7OUQKOUvAnx4MV9Bdz6jqHsHwc9WZPpO4QseQm+NvmgY6ICORnoVPODxGUiJg==}
cpu: [arm64]
os: [linux]
turbo-windows-64@2.5.4:
resolution: {integrity: sha512-EQUO4SmaCDhO6zYohxIjJpOKRN3wlfU7jMAj3CgcyTPvQR/UFLEKAYHqJOnJtymbQmiiM/ihX6c6W6Uq0yC7mA==}
cpu: [x64]
os: [win32]
turbo-windows-arm64@2.5.4:
resolution: {integrity: sha512-oQ8RrK1VS8lrxkLriotFq+PiF7iiGgkZtfLKF4DDKsmdbPo0O9R2mQxm7jHLuXraRCuIQDWMIw6dpcr7Iykf4A==}
cpu: [arm64]
os: [win32]
turbo@2.5.4:
resolution: {integrity: sha512-kc8ZibdRcuWUG1pbYSBFWqmIjynlD8Lp7IB6U3vIzvOv9VG+6Sp8bzyeBWE3Oi8XV5KsQrznyRTBPvrf99E4mA==}
hasBin: true
tw-animate-css@1.3.4: tw-animate-css@1.3.4:
resolution: {integrity: sha512-dd1Ht6/YQHcNbq0znIT6dG8uhO7Ce+VIIhZUhjsryXsMPJQz3bZg7Q2eNzLwipb25bRZslGb2myio5mScd1TFg==} resolution: {integrity: sha512-dd1Ht6/YQHcNbq0znIT6dG8uhO7Ce+VIIhZUhjsryXsMPJQz3bZg7Q2eNzLwipb25bRZslGb2myio5mScd1TFg==}
@ -10684,7 +10713,7 @@ snapshots:
dependencies: dependencies:
'@types/node': 22.15.29 '@types/node': 22.15.29
'@vitejs/plugin-react@4.5.1(vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0))': '@vitejs/plugin-react@4.5.1(vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0))':
dependencies: dependencies:
'@babel/core': 7.27.1 '@babel/core': 7.27.1
'@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.27.1) '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.27.1)
@ -10692,7 +10721,7 @@ snapshots:
'@rolldown/pluginutils': 1.0.0-beta.9 '@rolldown/pluginutils': 1.0.0-beta.9
'@types/babel__core': 7.20.5 '@types/babel__core': 7.20.5
react-refresh: 0.17.0 react-refresh: 0.17.0
vite: 5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0) vite: 5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0)
transitivePeerDependencies: transitivePeerDependencies:
- supports-color - supports-color
@ -10703,13 +10732,13 @@ snapshots:
chai: 5.1.2 chai: 5.1.2
tinyrainbow: 1.2.0 tinyrainbow: 1.2.0
'@vitest/mocker@2.1.9(vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0))': '@vitest/mocker@2.1.9(vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0))':
dependencies: dependencies:
'@vitest/spy': 2.1.9 '@vitest/spy': 2.1.9
estree-walker: 3.0.3 estree-walker: 3.0.3
magic-string: 0.30.17 magic-string: 0.30.17
optionalDependencies: optionalDependencies:
vite: 5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0) vite: 5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0)
'@vitest/pretty-format@2.1.9': '@vitest/pretty-format@2.1.9':
dependencies: dependencies:
@ -14219,14 +14248,6 @@ snapshots:
webpack: 5.97.1 webpack: 5.97.1
optional: true optional: true
terser@5.39.0:
dependencies:
'@jridgewell/source-map': 0.3.6
acorn: 8.14.1
commander: 2.20.3
source-map-support: 0.5.21
optional: true
terser@5.41.0: terser@5.41.0:
dependencies: dependencies:
'@jridgewell/source-map': 0.3.6 '@jridgewell/source-map': 0.3.6
@ -14340,6 +14361,33 @@ snapshots:
optionalDependencies: optionalDependencies:
fsevents: 2.3.3 fsevents: 2.3.3
turbo-darwin-64@2.5.4:
optional: true
turbo-darwin-arm64@2.5.4:
optional: true
turbo-linux-64@2.5.4:
optional: true
turbo-linux-arm64@2.5.4:
optional: true
turbo-windows-64@2.5.4:
optional: true
turbo-windows-arm64@2.5.4:
optional: true
turbo@2.5.4:
optionalDependencies:
turbo-darwin-64: 2.5.4
turbo-darwin-arm64: 2.5.4
turbo-linux-64: 2.5.4
turbo-linux-arm64: 2.5.4
turbo-windows-64: 2.5.4
turbo-windows-arm64: 2.5.4
tw-animate-css@1.3.4: {} tw-animate-css@1.3.4: {}
type-fest@0.21.3: {} type-fest@0.21.3: {}
@ -14530,13 +14578,13 @@ snapshots:
d3-time: 3.1.0 d3-time: 3.1.0
d3-timer: 3.0.1 d3-timer: 3.0.1
vite-node@2.1.9(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0): vite-node@2.1.9(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0):
dependencies: dependencies:
cac: 6.7.14 cac: 6.7.14
debug: 4.4.0 debug: 4.4.0
es-module-lexer: 1.7.0 es-module-lexer: 1.7.0
pathe: 1.1.2 pathe: 1.1.2
vite: 5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0) vite: 5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0)
transitivePeerDependencies: transitivePeerDependencies:
- '@types/node' - '@types/node'
- less - less
@ -14548,18 +14596,6 @@ snapshots:
- supports-color - supports-color
- terser - terser
vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0):
dependencies:
esbuild: 0.21.5
postcss: 8.5.4
rollup: 4.29.1
optionalDependencies:
'@types/node': 22.15.29
fsevents: 2.3.3
lightningcss: 1.30.1
sass: 1.77.4
terser: 5.39.0
vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0): vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0):
dependencies: dependencies:
esbuild: 0.21.5 esbuild: 0.21.5
@ -14571,12 +14607,11 @@ snapshots:
lightningcss: 1.30.1 lightningcss: 1.30.1
sass: 1.77.4 sass: 1.77.4
terser: 5.41.0 terser: 5.41.0
optional: true
vitest@2.1.9(@types/node@22.15.29)(jsdom@25.0.1(bufferutil@4.0.9)(utf-8-validate@6.0.5))(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0): vitest@2.1.9(@types/node@22.15.29)(jsdom@25.0.1(bufferutil@4.0.9)(utf-8-validate@6.0.5))(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0):
dependencies: dependencies:
'@vitest/expect': 2.1.9 '@vitest/expect': 2.1.9
'@vitest/mocker': 2.1.9(vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0)) '@vitest/mocker': 2.1.9(vite@5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0))
'@vitest/pretty-format': 2.1.9 '@vitest/pretty-format': 2.1.9
'@vitest/runner': 2.1.9 '@vitest/runner': 2.1.9
'@vitest/snapshot': 2.1.9 '@vitest/snapshot': 2.1.9
@ -14592,8 +14627,8 @@ snapshots:
tinyexec: 0.3.2 tinyexec: 0.3.2
tinypool: 1.0.2 tinypool: 1.0.2
tinyrainbow: 1.2.0 tinyrainbow: 1.2.0
vite: 5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0) vite: 5.4.11(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0)
vite-node: 2.1.9(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.39.0) vite-node: 2.1.9(@types/node@22.15.29)(lightningcss@1.30.1)(sass@1.77.4)(terser@5.41.0)
why-is-node-running: 2.3.0 why-is-node-running: 2.3.0
optionalDependencies: optionalDependencies:
'@types/node': 22.15.29 '@types/node': 22.15.29

View File

@ -4,6 +4,8 @@ packages:
- '!packages/testing-torrents' - '!packages/testing-torrents'
onlyBuiltDependencies: onlyBuiltDependencies:
- '@biomejs/biome' - '@biomejs/biome'
- '@parcel/watcher'
- '@tailwindcss/oxide'
- bufferutil - bufferutil
- core-js - core-js
- esbuild - esbuild

36
turbo.json Normal file
View File

@ -0,0 +1,36 @@
{
"$schema": "https://turborepo.com/schema.json",
"ui": "tui",
"tasks": {
"//#dev-webui": {
"cache": false,
"persistent": true,
"interactive": true,
"interruptible": true
},
"//#dev-proxy": {
"cache": false,
"persistent": true,
"interactive": true,
"interruptible": true
},
"//#dev-recorder": {
"cache": false,
"persistent": true,
"interactive": true,
"interruptible": true
},
"//#dev-deps": {
"cache": false,
"persistent": true,
"interactive": true,
"interruptible": true
},
"//#dev-codegen-wait": {
"cache": false,
"persistent": true,
"interactive": true,
"interruptible": true
}
}
}