Game specialisation & delta versions (#323)

* feat: game specialisation, auto-guess extensions

* fix: enforce specialisation specific schema at API level

* fix: lint

* feat: partial work on depot endpoints

* feat: bump torrential

* feat: dummy version creation for depot uploads

* fix: lint

* fix: types

* fix: lint

* feat: depot version import

* fix: lint

* fix: remove any type

* fix: lint

* fix: push update interval

* fix: cpu usage calculation

* feat: delta version support

* feat: style tweaks for selectlaunch.vue

* fix: lint
This commit is contained in:
DecDuck
2026-01-23 05:04:38 +00:00
committed by GitHub
parent d8db5b5b85
commit 00adab21c2
46 changed files with 1164 additions and 347 deletions
+32 -107
View File
@@ -29,6 +29,9 @@ importers:
'@nuxt/image':
specifier: ^1.10.0
version: 1.10.0(@netlify/blobs@9.1.2)(db0@0.3.4)(ioredis@5.8.2)(magicast@0.5.1)
'@nuxt/kit':
specifier: 3.20.1
version: 3.20.1(magicast@0.5.1)
'@nuxtjs/i18n':
specifier: ^9.5.5
version: 9.5.6(@vue/compiler-dom@3.5.27)(eslint@9.31.0(jiti@2.6.1))(magicast@0.5.1)(rollup@4.53.3)(vue@3.5.27(typescript@5.8.3))
@@ -1370,18 +1373,10 @@ packages:
resolution: {integrity: sha512-/B58GeEmme7bkmQUrXzEw8P9sJb9BkMaYZqLDtq8ZdDLEddE3P4nVya8RQPB+p4b7EdqWajpPqdy1A2ZPLev/A==}
engines: {node: '>=18.20.6'}
'@nuxt/kit@3.18.0':
resolution: {integrity: sha512-svS1CBEx7gMgEIaNYrQt26J/t5bDSUdIf7GQWr5M6yszOzLw+IVzyfH7TBmuxZEbjovhLaJEG379mgKp82H/lA==}
engines: {node: '>=18.12.0'}
'@nuxt/kit@3.20.1':
resolution: {integrity: sha512-TIslaylfI5kd3AxX5qts0qyrIQ9Uq3HAA1bgIIJ+c+zpDfK338YS+YrCWxBBzDMECRCbAS58mqAd2MtJfG1ENA==}
engines: {node: '>=18.12.0'}
'@nuxt/kit@4.0.2':
resolution: {integrity: sha512-OtLkVYHpfrm1FzGSGxl0H3QXLgO41yxOgni5S6zzLG4gblG71Fy82B2QTdqJLzTLKWObiILKDhrysBtmDkp3LA==}
engines: {node: '>=18.12.0'}
'@nuxt/kit@4.2.1':
resolution: {integrity: sha512-lLt8KLHyl7IClc3RqRpRikz15eCfTRlAWL9leVzPyg5N87FfKE/7EWgWvpiL/z4Tf3dQCIqQb88TmHE0JTIDvA==}
engines: {node: '>=18.12.0'}
@@ -7537,10 +7532,10 @@ snapshots:
find-up: 7.0.0
get-port-please: 3.2.0
h3: 1.15.5
mlly: 1.7.4
mlly: 1.8.0
mrmime: 2.0.1
open: 10.2.0
tinyglobby: 0.2.14
tinyglobby: 0.2.15
ws: 8.18.3
transitivePeerDependencies:
- bufferutil
@@ -7613,7 +7608,7 @@ snapshots:
escodegen: 2.1.0
estree-walker: 2.0.2
jsonc-eslint-parser: 2.4.0
mlly: 1.7.4
mlly: 1.8.0
source-map-js: 1.2.1
yaml-eslint-parser: 1.3.0
optionalDependencies:
@@ -7960,7 +7955,7 @@ snapshots:
'@nuxt/devtools-kit@2.6.2(magicast@0.5.1)(vite@7.2.2(@types/node@22.16.5)(jiti@2.6.1)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@nuxt/kit': 3.18.0(magicast@0.5.1)
'@nuxt/kit': 3.20.1(magicast@0.5.1)
execa: 8.0.1
vite: 7.2.2(@types/node@22.16.5)(jiti@2.6.1)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.1)
transitivePeerDependencies:
@@ -8072,7 +8067,7 @@ snapshots:
'@nuxt/devtools-kit': 2.6.2(magicast@0.5.1)(vite@7.2.2(@types/node@22.16.5)(jiti@2.6.1)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.1))
'@nuxt/eslint-config': 1.7.1(@typescript-eslint/utils@8.50.0(eslint@9.31.0(jiti@2.6.1))(typescript@5.8.3))(@vue/compiler-sfc@3.5.27)(eslint@9.31.0(jiti@2.6.1))(typescript@5.8.3)
'@nuxt/eslint-plugin': 1.7.1(eslint@9.31.0(jiti@2.6.1))(typescript@5.8.3)
'@nuxt/kit': 4.0.2(magicast@0.5.1)
'@nuxt/kit': 4.2.1(magicast@0.5.1)
chokidar: 4.0.3
eslint: 9.31.0(jiti@2.6.1)
eslint-flat-config-utils: 2.1.1
@@ -8097,7 +8092,7 @@ snapshots:
'@nuxt/fonts@0.11.4(@netlify/blobs@9.1.2)(db0@0.3.4)(ioredis@5.8.2)(magicast@0.5.1)(vite@7.2.2(@types/node@22.16.5)(jiti@2.6.1)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@nuxt/devtools-kit': 2.6.2(magicast@0.5.1)(vite@7.2.2(@types/node@22.16.5)(jiti@2.6.1)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.1))
'@nuxt/kit': 3.18.0(magicast@0.5.1)
'@nuxt/kit': 3.20.1(magicast@0.5.1)
consola: 3.4.2
css-tree: 3.1.0
defu: 6.1.4
@@ -8141,7 +8136,7 @@ snapshots:
'@nuxt/image@1.10.0(@netlify/blobs@9.1.2)(db0@0.3.4)(ioredis@5.8.2)(magicast@0.5.1)':
dependencies:
'@nuxt/kit': 3.18.0(magicast@0.5.1)
'@nuxt/kit': 3.20.1(magicast@0.5.1)
consola: 3.4.2
defu: 6.1.4
h3: 1.15.5
@@ -8175,33 +8170,6 @@ snapshots:
- magicast
- uploadthing
'@nuxt/kit@3.18.0(magicast@0.5.1)':
dependencies:
c12: 3.2.0(magicast@0.5.1)
consola: 3.4.2
defu: 6.1.4
destr: 2.0.5
errx: 0.1.0
exsolve: 1.0.7
ignore: 7.0.5
jiti: 2.5.1
klona: 2.0.6
knitwork: 1.2.0
mlly: 1.7.4
ohash: 2.0.11
pathe: 2.0.3
pkg-types: 2.2.0
scule: 1.3.0
semver: 7.7.2
std-env: 3.9.0
tinyglobby: 0.2.14
ufo: 1.6.3
unctx: 2.4.1
unimport: 5.2.0
untyped: 2.0.0
transitivePeerDependencies:
- magicast
'@nuxt/kit@3.20.1(magicast@0.5.1)':
dependencies:
c12: 3.3.2(magicast@0.5.1)
@@ -8228,32 +8196,6 @@ snapshots:
transitivePeerDependencies:
- magicast
'@nuxt/kit@4.0.2(magicast@0.5.1)':
dependencies:
c12: 3.2.0(magicast@0.5.1)
consola: 3.4.2
defu: 6.1.4
destr: 2.0.5
errx: 0.1.0
exsolve: 1.0.7
ignore: 7.0.5
jiti: 2.5.1
klona: 2.0.6
mlly: 1.7.4
ohash: 2.0.11
pathe: 2.0.3
pkg-types: 2.2.0
scule: 1.3.0
semver: 7.7.2
std-env: 3.9.0
tinyglobby: 0.2.14
ufo: 1.6.3
unctx: 2.4.1
unimport: 5.2.0
untyped: 2.0.0
transitivePeerDependencies:
- magicast
'@nuxt/kit@4.2.1(magicast@0.5.1)':
dependencies:
c12: 3.3.2(magicast@0.5.1)
@@ -8436,7 +8378,7 @@ snapshots:
'@intlify/unplugin-vue-i18n': 6.0.8(@vue/compiler-dom@3.5.27)(eslint@9.31.0(jiti@2.6.1))(rollup@4.53.3)(typescript@5.8.3)(vue-i18n@10.0.8(vue@3.5.27(typescript@5.8.3)))(vue@3.5.27(typescript@5.8.3))
'@intlify/utils': 0.13.0
'@miyaneee/rollup-plugin-json5': 1.2.0(rollup@4.53.3)
'@nuxt/kit': 3.18.0(magicast@0.5.1)
'@nuxt/kit': 3.20.1(magicast@0.5.1)
'@oxc-parser/wasm': 0.60.0
'@rollup/plugin-yaml': 4.1.2(rollup@4.53.3)
'@vue/compiler-sfc': 3.5.18
@@ -9427,7 +9369,7 @@ snapshots:
fast-glob: 3.3.3
is-glob: 4.0.3
minimatch: 9.0.5
semver: 7.7.2
semver: 7.7.3
ts-api-utils: 2.1.0(typescript@5.8.3)
typescript: 5.8.3
transitivePeerDependencies:
@@ -9826,7 +9768,7 @@ snapshots:
'@vueuse/nuxt@13.6.0(magicast@0.5.1)(nuxt@3.20.1(@netlify/blobs@9.1.2)(@parcel/watcher@2.5.1)(@types/node@22.16.5)(@vue/compiler-sfc@3.5.27)(db0@0.3.4)(eslint@9.31.0(jiti@2.6.1))(ioredis@5.8.2)(lightningcss@1.30.1)(magicast@0.5.1)(ms@2.1.3)(optionator@0.9.4)(rollup@4.53.3)(sass@1.89.2)(terser@5.43.1)(typescript@5.8.3)(vite@7.2.2(@types/node@22.16.5)(jiti@2.6.1)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.1))(vue-tsc@3.0.4(typescript@5.8.3))(yaml@2.8.1))(vue@3.5.27(typescript@5.8.3))':
dependencies:
'@nuxt/kit': 4.0.2(magicast@0.5.1)
'@nuxt/kit': 4.2.1(magicast@0.5.1)
'@vueuse/core': 13.6.0(vue@3.5.27(typescript@5.8.3))
'@vueuse/metadata': 13.6.0
local-pkg: 1.1.1
@@ -10129,23 +10071,6 @@ snapshots:
optionalDependencies:
magicast: 0.3.5
c12@3.2.0(magicast@0.5.1):
dependencies:
chokidar: 4.0.3
confbox: 0.2.2
defu: 6.1.4
dotenv: 17.2.3
exsolve: 1.0.7
giget: 2.0.0
jiti: 2.5.1
ohash: 2.0.11
pathe: 2.0.3
perfect-debounce: 1.0.0
pkg-types: 2.2.0
rc9: 2.1.2
optionalDependencies:
magicast: 0.5.1
c12@3.3.2(magicast@0.5.1):
dependencies:
chokidar: 4.0.3
@@ -10844,7 +10769,7 @@ snapshots:
eslint-import-context: 0.1.9(unrs-resolver@1.11.1)
is-glob: 4.0.3
minimatch: 10.0.3
semver: 7.7.2
semver: 7.7.3
stable-hash-x: 0.2.0
unrs-resolver: 1.11.1
optionalDependencies:
@@ -10863,7 +10788,7 @@ snapshots:
espree: 10.4.0
esquery: 1.6.0
parse-imports-exports: 0.2.4
semver: 7.7.2
semver: 7.7.3
spdx-expression-parse: 4.0.0
transitivePeerDependencies:
- supports-color
@@ -10898,7 +10823,7 @@ snapshots:
pluralize: 8.0.0
regexp-tree: 0.1.27
regjsparser: 0.12.0
semver: 7.7.2
semver: 7.7.3
strip-indent: 4.0.0
eslint-plugin-vue@10.4.0(@typescript-eslint/parser@8.38.0(eslint@9.31.0(jiti@2.6.1))(typescript@5.8.3))(eslint@9.31.0(jiti@2.6.1))(vue-eslint-parser@10.2.0(eslint@9.31.0(jiti@2.6.1))):
@@ -10908,7 +10833,7 @@ snapshots:
natural-compare: 1.4.0
nth-check: 2.1.1
postcss-selector-parser: 6.1.2
semver: 7.7.2
semver: 7.7.3
vue-eslint-parser: 10.2.0(eslint@9.31.0(jiti@2.6.1))
xml-name-validator: 4.0.0
optionalDependencies:
@@ -11636,7 +11561,7 @@ snapshots:
acorn: 8.15.0
eslint-visitor-keys: 3.4.3
espree: 9.6.1
semver: 7.7.2
semver: 7.7.3
jsonfile@4.0.0:
optionalDependencies:
@@ -11760,8 +11685,8 @@ snapshots:
local-pkg@1.1.1:
dependencies:
mlly: 1.7.4
pkg-types: 2.2.0
mlly: 1.8.0
pkg-types: 2.3.0
quansync: 0.2.10
local-pkg@1.1.2:
@@ -11819,7 +11744,7 @@ snapshots:
dependencies:
estree-walker: 3.0.3
magic-string: 0.30.17
mlly: 1.7.4
mlly: 1.8.0
regexp-tree: 0.1.27
type-level-regexp: 0.1.17
ufo: 1.6.3
@@ -12312,7 +12237,7 @@ snapshots:
node-abi@3.75.0:
dependencies:
semver: 7.7.2
semver: 7.7.3
optional: true
node-addon-api@6.1.0:
@@ -12363,7 +12288,7 @@ snapshots:
normalize-package-data@6.0.2:
dependencies:
hosted-git-info: 7.0.2
semver: 7.7.2
semver: 7.7.3
validate-npm-package-license: 3.0.4
normalize-path@2.1.1:
@@ -12391,7 +12316,7 @@ snapshots:
nuxt-csurf@1.6.5(magicast@0.5.1):
dependencies:
'@nuxt/kit': 3.18.0(magicast@0.5.1)
'@nuxt/kit': 3.20.1(magicast@0.5.1)
defu: 6.1.4
uncsrf: 1.2.0
transitivePeerDependencies:
@@ -12399,7 +12324,7 @@ snapshots:
nuxt-security@2.2.0(magicast@0.5.1)(rollup@4.53.3):
dependencies:
'@nuxt/kit': 3.18.0(magicast@0.5.1)
'@nuxt/kit': 3.20.1(magicast@0.5.1)
basic-auth: 2.0.1
defu: 6.1.4
nuxt-csurf: 1.6.5(magicast@0.5.1)
@@ -13424,7 +13349,7 @@ snapshots:
detect-libc: 2.0.4
node-addon-api: 6.1.0
prebuild-install: 7.1.3
semver: 7.7.2
semver: 7.7.3
simple-get: 4.0.1
tar-fs: 3.1.1
tunnel-agent: 0.6.0
@@ -13902,13 +13827,13 @@ snapshots:
estree-walker: 3.0.3
local-pkg: 1.1.1
magic-string: 0.30.17
mlly: 1.7.4
mlly: 1.8.0
pathe: 2.0.3
picomatch: 4.0.3
pkg-types: 2.2.0
pkg-types: 2.3.0
scule: 1.3.0
strip-literal: 3.0.0
tinyglobby: 0.2.14
tinyglobby: 0.2.15
unplugin: 2.3.5
unplugin-utils: 0.2.4
@@ -13969,7 +13894,7 @@ snapshots:
local-pkg: 1.1.1
magic-string: 0.30.17
micromatch: 4.0.8
mlly: 1.7.4
mlly: 1.8.0
pathe: 2.0.3
scule: 1.3.0
unplugin: 2.3.5
@@ -14266,7 +14191,7 @@ snapshots:
eslint-visitor-keys: 4.2.1
espree: 10.4.0
esquery: 1.6.0
semver: 7.7.2
semver: 7.7.3
transitivePeerDependencies:
- supports-color
@@ -14290,7 +14215,7 @@ snapshots:
vue3-carousel-nuxt@1.1.6(magicast@0.5.1)(vue@3.5.27(typescript@5.8.3)):
dependencies:
'@nuxt/kit': 3.18.0(magicast@0.5.1)
'@nuxt/kit': 3.20.1(magicast@0.5.1)
vue3-carousel: 0.15.1(vue@3.5.27(typescript@5.8.3))
transitivePeerDependencies:
- magicast