mirror of
https://github.com/th-ch/youtube-music.git
synced 2026-01-27 10:02:06 +00:00
Compare commits
1 Commits
8d9a819346
...
7027b027e2
| Author | SHA1 | Date | |
|---|---|---|---|
| 7027b027e2 |
@ -45,7 +45,7 @@
|
||||
},
|
||||
"pnpm": {
|
||||
"overrides": {
|
||||
"vite": "npm:rolldown-vite@7.2.9",
|
||||
"vite": "npm:rolldown-vite@7.2.8",
|
||||
"node-gyp": "11.4.2",
|
||||
"xml2js": "0.6.2",
|
||||
"node-fetch": "3.3.2",
|
||||
@ -134,7 +134,7 @@
|
||||
"virtua": "0.42.3",
|
||||
"vudio": "2.1.1",
|
||||
"x11": "2.3.0",
|
||||
"youtubei.js": "^16.0.1",
|
||||
"youtubei.js": "15.0.1",
|
||||
"zod": "4.1.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
@ -173,7 +173,7 @@
|
||||
"typescript": "5.9.2",
|
||||
"typescript-eslint": "8.43.0",
|
||||
"utf-8-validate": "6.0.5",
|
||||
"vite": "npm:rolldown-vite@7.2.9",
|
||||
"vite": "npm:rolldown-vite@7.2.8",
|
||||
"vite-plugin-inspect": "11.3.3",
|
||||
"vite-plugin-resolve": "2.5.2",
|
||||
"vite-plugin-solid": "2.11.8",
|
||||
|
||||
92
pnpm-lock.yaml
generated
92
pnpm-lock.yaml
generated
@ -5,7 +5,7 @@ settings:
|
||||
excludeLinksFromLockfile: false
|
||||
|
||||
overrides:
|
||||
vite: npm:rolldown-vite@7.2.9
|
||||
vite: npm:rolldown-vite@7.2.8
|
||||
node-gyp: 11.4.2
|
||||
xml2js: 0.6.2
|
||||
node-fetch: 3.3.2
|
||||
@ -250,8 +250,8 @@ importers:
|
||||
specifier: 2.3.0
|
||||
version: 2.3.0
|
||||
youtubei.js:
|
||||
specifier: ^16.0.1
|
||||
version: 16.0.1
|
||||
specifier: 15.0.1
|
||||
version: 15.0.1
|
||||
zod:
|
||||
specifier: 4.1.5
|
||||
version: 4.1.5
|
||||
@ -315,7 +315,7 @@ importers:
|
||||
version: 4.0.0
|
||||
electron-vite:
|
||||
specifier: 4.0.0
|
||||
version: 4.0.0(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
version: 4.0.0(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
eslint:
|
||||
specifier: 9.35.0
|
||||
version: 9.35.0
|
||||
@ -359,17 +359,17 @@ importers:
|
||||
specifier: 6.0.5
|
||||
version: 6.0.5
|
||||
vite:
|
||||
specifier: npm:rolldown-vite@7.2.9
|
||||
version: rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
specifier: npm:rolldown-vite@7.2.8
|
||||
version: rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vite-plugin-inspect:
|
||||
specifier: 11.3.3
|
||||
version: 11.3.3(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
version: 11.3.3(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
vite-plugin-resolve:
|
||||
specifier: 2.5.2
|
||||
version: 2.5.2
|
||||
vite-plugin-solid:
|
||||
specifier: 2.11.8
|
||||
version: 2.11.8(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))(solid-js@1.9.9)
|
||||
version: 2.11.8(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))(solid-js@1.9.9)
|
||||
ws:
|
||||
specifier: 8.18.3
|
||||
version: 8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5)
|
||||
@ -482,8 +482,8 @@ packages:
|
||||
resolution: {integrity: sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
|
||||
'@bufbuild/protobuf@2.10.0':
|
||||
resolution: {integrity: sha512-fdRs9PSrBF7QUntpZpq6BTw58fhgGJojgg39m9oFOJGZT+nip9b0so5cYY1oWl5pvemDLr0cPPsH46vwThEbpQ==}
|
||||
'@bufbuild/protobuf@2.6.3':
|
||||
resolution: {integrity: sha512-w/gJKME9mYN7ZoUAmSMAWXk4hkVpxRKvEJCb3dV5g9wwWdxTJJ0ayOJAVcNxtdqaxDyFuC0uz4RSGVacJ030PQ==}
|
||||
|
||||
'@dehoist/romanize-thai@1.0.0':
|
||||
resolution: {integrity: sha512-6SqD4vyZ48otnypLXMh901CeQetoP5ptYOaIr58N6zDqjjoN0bHszMb5d/6AXJJQf8kIvbmSWBeuDrbAWLajPQ==}
|
||||
@ -2531,8 +2531,8 @@ packages:
|
||||
exif-parser@0.1.12:
|
||||
resolution: {integrity: sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==}
|
||||
|
||||
exponential-backoff@3.1.3:
|
||||
resolution: {integrity: sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==}
|
||||
exponential-backoff@3.1.2:
|
||||
resolution: {integrity: sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==}
|
||||
|
||||
extract-zip@2.0.1:
|
||||
resolution: {integrity: sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==}
|
||||
@ -3177,6 +3177,9 @@ packages:
|
||||
resolution: {integrity: sha512-YcwCHw1kiqEeI5xRpDlPPBGL2EOpBKLwO4yIBJcXWHPj5PnA5urGq0jbyhM5KoNpypQ6VboSoxc9D8HyfvngSg==}
|
||||
engines: {node: '>=18'}
|
||||
|
||||
jintr@3.3.1:
|
||||
resolution: {integrity: sha512-nnOzyhf0SLpbWuZ270Omwbj5LcXUkTcZkVnK8/veJXtSZOiATM5gMZMdmzN75FmTyj+NVgrGaPdH12zIJ24oIA==}
|
||||
|
||||
jpeg-js@0.4.4:
|
||||
resolution: {integrity: sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==}
|
||||
|
||||
@ -3446,10 +3449,6 @@ packages:
|
||||
resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
|
||||
engines: {node: '>= 8'}
|
||||
|
||||
meriyah@6.1.4:
|
||||
resolution: {integrity: sha512-Sz8FzjzI0kN13GK/6MVEsVzMZEPvOhnmmI1lU5+/1cGOiK3QUahntrNNtdVeihrO7t9JpoH75iMNXg6R6uWflQ==}
|
||||
engines: {node: '>=18.0.0'}
|
||||
|
||||
micromatch@4.0.8:
|
||||
resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
|
||||
engines: {node: '>=8.6'}
|
||||
@ -4062,8 +4061,8 @@ packages:
|
||||
resolution: {integrity: sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==}
|
||||
engines: {node: '>=8.0'}
|
||||
|
||||
rolldown-vite@7.2.9:
|
||||
resolution: {integrity: sha512-Y+Q1FpIgAkK2RiAdeS1SxcvDsJaru1JUANFo1aiFFtuGCckhltIowoC/JMU740tFZDTJA5vg5CAl1RzHExNR/w==}
|
||||
rolldown-vite@7.2.8:
|
||||
resolution: {integrity: sha512-8wKihlF6EDF8grimwd7GPOhLkQkSIgj6Hlcp0CXhtO3HAXeUUqhgZmJmn07OF8e4PbTusMX6Yxmy1BptVRZsdw==}
|
||||
engines: {node: ^20.19.0 || >=22.12.0}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
@ -4841,8 +4840,8 @@ packages:
|
||||
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
|
||||
engines: {node: '>=10'}
|
||||
|
||||
youtubei.js@16.0.1:
|
||||
resolution: {integrity: sha512-3802bCAGkBc2/G5WUTc0l/bO5mPYJbQAHL04d9hE9PnrDHoBUT8MN721Yqt4RCNncAXdHcfee9VdJy3Fhq1r5g==}
|
||||
youtubei.js@15.0.1:
|
||||
resolution: {integrity: sha512-2slapqJS5NuXKHvcACEknyVz0AjH/TrXaOhDM0q2twQKa54kCmfj+7B/2nGfd20uzAe29zW1ejk2qOc4ABuGkg==}
|
||||
|
||||
zlibjs@0.3.1:
|
||||
resolution: {integrity: sha512-+J9RrgTKOmlxFSDHo0pI1xM6BLVUv+o0ZT9ANtCxGkjIVCCUdx9alUF8Gm+dGLKbkkkidWIHFDZHDMpfITt4+w==}
|
||||
@ -4987,7 +4986,7 @@ snapshots:
|
||||
'@babel/helper-string-parser': 7.27.1
|
||||
'@babel/helper-validator-identifier': 7.27.1
|
||||
|
||||
'@bufbuild/protobuf@2.10.0': {}
|
||||
'@bufbuild/protobuf@2.6.3': {}
|
||||
|
||||
'@dehoist/romanize-thai@1.0.0': {}
|
||||
|
||||
@ -5057,7 +5056,7 @@ snapshots:
|
||||
'@electron/node-gyp@https://codeload.github.com/electron/node-gyp/tar.gz/06b29aafb7708acef8b3669835c8a7857ebc92d2':
|
||||
dependencies:
|
||||
env-paths: 2.2.1
|
||||
exponential-backoff: 3.1.3
|
||||
exponential-backoff: 3.1.2
|
||||
glob: 8.1.0
|
||||
graceful-fs: 4.2.11
|
||||
make-fetch-happen: 10.2.1
|
||||
@ -7025,7 +7024,7 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
electron-vite@4.0.0(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
electron-vite@4.0.0(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
dependencies:
|
||||
'@babel/core': 7.28.3
|
||||
'@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.28.3)
|
||||
@ -7033,7 +7032,7 @@ snapshots:
|
||||
esbuild: 0.25.9
|
||||
magic-string: 0.30.17
|
||||
picocolors: 1.1.1
|
||||
vite: rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vite: rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
@ -7417,7 +7416,7 @@ snapshots:
|
||||
|
||||
exif-parser@0.1.12: {}
|
||||
|
||||
exponential-backoff@3.1.3: {}
|
||||
exponential-backoff@3.1.2: {}
|
||||
|
||||
extract-zip@2.0.1:
|
||||
dependencies:
|
||||
@ -8114,6 +8113,10 @@ snapshots:
|
||||
'@jimp/types': 1.6.0
|
||||
'@jimp/utils': 1.6.0
|
||||
|
||||
jintr@3.3.1:
|
||||
dependencies:
|
||||
acorn: 8.15.0
|
||||
|
||||
jpeg-js@0.4.4: {}
|
||||
|
||||
js-tokens@4.0.0: {}
|
||||
@ -8384,8 +8387,6 @@ snapshots:
|
||||
|
||||
merge2@1.4.1: {}
|
||||
|
||||
meriyah@6.1.4: {}
|
||||
|
||||
micromatch@4.0.8:
|
||||
dependencies:
|
||||
braces: 3.0.3
|
||||
@ -8536,7 +8537,7 @@ snapshots:
|
||||
node-gyp@11.4.2:
|
||||
dependencies:
|
||||
env-paths: 2.2.1
|
||||
exponential-backoff: 3.1.3
|
||||
exponential-backoff: 3.1.2
|
||||
graceful-fs: 4.2.11
|
||||
make-fetch-happen: 14.0.3
|
||||
nopt: 8.1.0
|
||||
@ -8966,7 +8967,7 @@ snapshots:
|
||||
sprintf-js: 1.1.3
|
||||
optional: true
|
||||
|
||||
rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1):
|
||||
rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1):
|
||||
dependencies:
|
||||
'@oxc-project/runtime': 0.99.0
|
||||
fdir: 6.5.0(picomatch@4.0.3)
|
||||
@ -9628,17 +9629,17 @@ snapshots:
|
||||
optionalDependencies:
|
||||
solid-js: 1.9.9
|
||||
|
||||
vite-dev-rpc@1.1.0(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
vite-dev-rpc@1.1.0(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
dependencies:
|
||||
birpc: 2.5.0
|
||||
vite: rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vite-hot-client: 2.1.0(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
vite: rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vite-hot-client: 2.1.0(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
|
||||
vite-hot-client@2.1.0(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
vite-hot-client@2.1.0(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
dependencies:
|
||||
vite: rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vite: rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
|
||||
vite-plugin-inspect@11.3.3(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
vite-plugin-inspect@11.3.3(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
dependencies:
|
||||
ansis: 4.1.0
|
||||
debug: 4.4.1
|
||||
@ -9648,8 +9649,8 @@ snapshots:
|
||||
perfect-debounce: 2.0.0
|
||||
sirv: 3.0.1
|
||||
unplugin-utils: 0.3.0
|
||||
vite: rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vite-dev-rpc: 1.1.0(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
vite: rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vite-dev-rpc: 1.1.0(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
@ -9657,7 +9658,7 @@ snapshots:
|
||||
dependencies:
|
||||
lib-esm: 0.4.2
|
||||
|
||||
vite-plugin-solid@2.11.8(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))(solid-js@1.9.9):
|
||||
vite-plugin-solid@2.11.8(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))(solid-js@1.9.9):
|
||||
dependencies:
|
||||
'@babel/core': 7.28.3
|
||||
'@types/babel__core': 7.20.5
|
||||
@ -9665,14 +9666,14 @@ snapshots:
|
||||
merge-anything: 5.1.7
|
||||
solid-js: 1.9.9
|
||||
solid-refresh: 0.6.3(solid-js@1.9.9)
|
||||
vite: rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vitefu: 1.1.1(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
vite: rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vitefu: 1.1.1(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1))
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
vitefu@1.1.1(rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
vitefu@1.1.1(rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)):
|
||||
optionalDependencies:
|
||||
vite: rolldown-vite@7.2.9(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
vite: rolldown-vite@7.2.8(@types/node@24.3.0)(esbuild@0.25.9)(yaml@2.8.1)
|
||||
|
||||
vudio@2.1.1(patch_hash=0e06c2ed11c02bdc490c209fa80070e98517c2735c641f5738b6e15d7dc1959d): {}
|
||||
|
||||
@ -9814,10 +9815,11 @@ snapshots:
|
||||
|
||||
yocto-queue@0.1.0: {}
|
||||
|
||||
youtubei.js@16.0.1:
|
||||
youtubei.js@15.0.1:
|
||||
dependencies:
|
||||
'@bufbuild/protobuf': 2.10.0
|
||||
meriyah: 6.1.4
|
||||
'@bufbuild/protobuf': 2.6.3
|
||||
jintr: 3.3.1
|
||||
undici: 6.21.3
|
||||
|
||||
zlibjs@0.3.1: {}
|
||||
|
||||
|
||||
@ -237,8 +237,7 @@
|
||||
"submenu": {
|
||||
"percent": "{{ratio}}%"
|
||||
}
|
||||
},
|
||||
"enable-seekbar": "Enable seekbar theming"
|
||||
}
|
||||
},
|
||||
"name": "Album Color Theme"
|
||||
},
|
||||
|
||||
@ -150,11 +150,6 @@
|
||||
"visual-tweaks": {
|
||||
"label": "תיקונים חזותיים",
|
||||
"submenu": {
|
||||
"custom-window-title": {
|
||||
"prompt": {
|
||||
"placeholder": "לדוגמה: שולחן כתיבה אגסי"
|
||||
}
|
||||
},
|
||||
"like-buttons": {
|
||||
"default": "ברירת מחדל",
|
||||
"force-show": "הפעל בכוח",
|
||||
@ -206,8 +201,8 @@
|
||||
"restart": "הפעל מחדש",
|
||||
"show": "הראה חלון",
|
||||
"tooltip": {
|
||||
"default": "שולחן כתיבה אגסי",
|
||||
"with-song-info": "שולחן כתיב אגסי: {{יוצר}} - {{כותרת}}"
|
||||
"default": "יוטיוב מיוזיק",
|
||||
"with-song-info": "יוטיוב מיוזיק: {{artist}} - {{title}}"
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -217,7 +212,7 @@
|
||||
"name": "הגבר מהירות פרסומת"
|
||||
},
|
||||
"adblocker": {
|
||||
"description": "חסום את כל המודעות והמעקבים",
|
||||
"description": "חסום את כל המודעות והמעקב מחוץ לקופסה",
|
||||
"menu": {
|
||||
"blocker": "חוסם"
|
||||
},
|
||||
@ -249,7 +244,6 @@
|
||||
}
|
||||
},
|
||||
"buffer": {
|
||||
"label": "חוצץ",
|
||||
"submenu": {
|
||||
"buffer": "{{buffer}}"
|
||||
}
|
||||
@ -386,11 +380,6 @@
|
||||
},
|
||||
"templates": {
|
||||
"title": "פתח בחירת כתוביות"
|
||||
},
|
||||
"toast": {
|
||||
"caption-changed": "תרגום שונה ל {{שפה}}",
|
||||
"caption-disabled": "תרגום בוטל",
|
||||
"no-captions": "אין תרגום זמין לשיר הזה"
|
||||
}
|
||||
},
|
||||
"compact-sidebar": {
|
||||
@ -402,11 +391,9 @@
|
||||
"menu": {
|
||||
"advanced": "מתקדם"
|
||||
},
|
||||
"name": "התפיידות צלב[בית]",
|
||||
"prompt": {
|
||||
"options": {
|
||||
"multi-input": {
|
||||
"fade-in-duration": "תתפייד בזמן[מילישניות]",
|
||||
"fade-scaling": {
|
||||
"linear": "לינארי",
|
||||
"logarithmic": "לוגריתמי"
|
||||
|
||||
@ -237,8 +237,7 @@
|
||||
"submenu": {
|
||||
"percent": "{{ratio}}%"
|
||||
}
|
||||
},
|
||||
"enable-seekbar": "재생바 색조 변경 활성화"
|
||||
}
|
||||
},
|
||||
"name": "앨범 컬러 기반 테마"
|
||||
},
|
||||
|
||||
@ -462,7 +462,7 @@
|
||||
"label": "Text stavu",
|
||||
"submenu": {
|
||||
"artist": "Aktuálne si prehráva {artist}",
|
||||
"pear-desktop": "Počúva Pear Desktop",
|
||||
"pear-desktop": "Aktuálne prehráva Pear Desktop",
|
||||
"title": "Aktuálne si prehráva {song title}"
|
||||
}
|
||||
}
|
||||
|
||||
@ -151,9 +151,7 @@
|
||||
"label": "بصری تبدیلیاں",
|
||||
"submenu": {
|
||||
"custom-window-title": {
|
||||
"label": "اپنی مرضی کا ونڈو عنوان",
|
||||
"prompt": {
|
||||
"label": "اپنی مرضی کا ونڈو عنوان درج کریں: (بند کرنے کے لیے خالی چھوڑ دیں)",
|
||||
"placeholder": "مثال: پیئر ڈیسک ٹاپ"
|
||||
}
|
||||
},
|
||||
@ -221,8 +219,7 @@
|
||||
"description": "شروغ سے تمام اشتہارات اور ٹریکنگ بلاک کردیں",
|
||||
"menu": {
|
||||
"blocker": "بلاکر"
|
||||
},
|
||||
"name": "ایڈ بلاکر"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -10,32 +10,41 @@ const COLOR_KEY = '--ytmusic-album-color';
|
||||
const DARK_COLOR_KEY = '--ytmusic-album-color-dark';
|
||||
const RATIO_KEY = '--ytmusic-album-color-ratio';
|
||||
|
||||
type Config = {
|
||||
enabled: boolean;
|
||||
ratio: number;
|
||||
enableSeekbar: boolean;
|
||||
};
|
||||
export default createPlugin<
|
||||
unknown,
|
||||
unknown,
|
||||
{
|
||||
color?: ColorInstance;
|
||||
darkColor?: ColorInstance;
|
||||
|
||||
type Renderer = {
|
||||
getMixedColor(
|
||||
color: string,
|
||||
key: string,
|
||||
alpha?: number,
|
||||
ratioMultiply?: number,
|
||||
): string;
|
||||
updateColor(alpha: number): void;
|
||||
onConfigChange(newConfig: Config): void;
|
||||
};
|
||||
playerPage: HTMLElement | null;
|
||||
navBarBackground: HTMLElement | null;
|
||||
ytmusicPlayerBar: HTMLElement | null;
|
||||
playerBarBackground: HTMLElement | null;
|
||||
sidebarBig: HTMLElement | null;
|
||||
sidebarSmall: HTMLElement | null;
|
||||
ytmusicAppLayout: HTMLElement | null;
|
||||
|
||||
export default createPlugin({
|
||||
getMixedColor(
|
||||
color: string,
|
||||
key: string,
|
||||
alpha?: number,
|
||||
ratioMultiply?: number,
|
||||
): string;
|
||||
updateColor(alpha: number): void;
|
||||
},
|
||||
{
|
||||
enabled: boolean;
|
||||
ratio: number;
|
||||
}
|
||||
>({
|
||||
name: () => t('plugins.album-color-theme.name'),
|
||||
description: () => t('plugins.album-color-theme.description'),
|
||||
restartNeeded: false,
|
||||
config: {
|
||||
enabled: false,
|
||||
ratio: 0.5,
|
||||
enableSeekbar: true,
|
||||
} satisfies Config as Config,
|
||||
},
|
||||
stylesheets: [style],
|
||||
menu: async ({ getConfig, setConfig }) => {
|
||||
const ratioList = [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1];
|
||||
@ -59,28 +68,18 @@ export default createPlugin({
|
||||
},
|
||||
})),
|
||||
},
|
||||
{
|
||||
label: t('plugins.album-color-theme.menu.enable-seekbar'),
|
||||
type: 'checkbox',
|
||||
checked: config.enableSeekbar,
|
||||
click(item) {
|
||||
setConfig({ enableSeekbar: item.checked });
|
||||
},
|
||||
},
|
||||
];
|
||||
},
|
||||
renderer: {
|
||||
playerPage: null as HTMLElement | null,
|
||||
navBarBackground: null as HTMLElement | null,
|
||||
ytmusicPlayerBar: null as HTMLElement | null,
|
||||
playerBarBackground: null as HTMLElement | null,
|
||||
sidebarBig: null as HTMLElement | null,
|
||||
sidebarSmall: null as HTMLElement | null,
|
||||
ytmusicAppLayout: null as HTMLElement | null,
|
||||
color: null as ColorInstance | null,
|
||||
darkColor: null as ColorInstance | null,
|
||||
playerPage: null,
|
||||
navBarBackground: null,
|
||||
ytmusicPlayerBar: null,
|
||||
playerBarBackground: null,
|
||||
sidebarBig: null,
|
||||
sidebarSmall: null,
|
||||
ytmusicAppLayout: null,
|
||||
|
||||
start() {
|
||||
async start({ getConfig }) {
|
||||
this.playerPage = document.querySelector<HTMLElement>('#player-page');
|
||||
this.navBarBackground = document.querySelector<HTMLElement>(
|
||||
'#nav-bar-background',
|
||||
@ -95,11 +94,14 @@ export default createPlugin({
|
||||
'#mini-guide-background',
|
||||
);
|
||||
this.ytmusicAppLayout = document.querySelector<HTMLElement>('#layout');
|
||||
},
|
||||
async onPlayerApiReady(playerApi, { getConfig }) {
|
||||
const config = await getConfig();
|
||||
(this as Renderer).onConfigChange(config);
|
||||
|
||||
const config = await getConfig();
|
||||
document.documentElement.style.setProperty(
|
||||
RATIO_KEY,
|
||||
`${~~(config.ratio * 100)}%`,
|
||||
);
|
||||
},
|
||||
onPlayerApiReady(playerApi) {
|
||||
const fastAverageColor = new FastAverageColor();
|
||||
|
||||
document.addEventListener('videodatachange', async (event) => {
|
||||
@ -150,7 +152,7 @@ export default createPlugin({
|
||||
alpha = value;
|
||||
}
|
||||
}
|
||||
(this as Renderer).updateColor(alpha ?? 1);
|
||||
this.updateColor(alpha ?? 1);
|
||||
});
|
||||
},
|
||||
onConfigChange(config) {
|
||||
@ -158,15 +160,8 @@ export default createPlugin({
|
||||
RATIO_KEY,
|
||||
`${~~(config.ratio * 100)}%`,
|
||||
);
|
||||
if (config.enableSeekbar) document.body.classList.add('seekbar-theme');
|
||||
else document.body.classList.remove('seekbar-theme');
|
||||
},
|
||||
getMixedColor(
|
||||
color: string,
|
||||
key: string,
|
||||
alpha = 1,
|
||||
ratioMultiply?: number,
|
||||
) {
|
||||
getMixedColor(color: string, key: string, alpha = 1, ratioMultiply) {
|
||||
const keyColor = `rgba(var(${key}), ${alpha})`;
|
||||
|
||||
let colorRatio = `var(${RATIO_KEY}, 50%)`;
|
||||
@ -212,39 +207,26 @@ export default createPlugin({
|
||||
'--yt-spec-black-pure-alpha-80': 'rgba(0,0,0,0.8)',
|
||||
'--yt-spec-black-1-alpha-98': 'rgba(40,40,40,0.98)',
|
||||
'--yt-spec-black-1-alpha-95': 'rgba(40,40,40,0.95)',
|
||||
'--paper-toast-background-color': '#323232',
|
||||
'--ytmusic-search-background': '#030303',
|
||||
'--paper-slider-knob-color': '#f03',
|
||||
'--paper-dialog-background-color': '#212121',
|
||||
'--paper-progress-active-color-1': '#f03',
|
||||
'--paper-progress-active-color-2': '#ff2791',
|
||||
'--yt-spec-inverted-background': '#f3f3f3',
|
||||
'background': 'rgba(3, 3, 3)',
|
||||
'--ytmusic-background': 'rgba(3, 3, 3)',
|
||||
};
|
||||
|
||||
const colorKeyMap: Record<string, string> = {
|
||||
'background': DARK_COLOR_KEY,
|
||||
'--ytmusic-background': DARK_COLOR_KEY,
|
||||
};
|
||||
|
||||
const ratioMap: Record<string, number> = {
|
||||
'--paper-progress-active-color-1': 1.75,
|
||||
'--paper-progress-active-color-2': 1.75,
|
||||
'--yt-spec-inverted-background': 1.75,
|
||||
};
|
||||
|
||||
const getMixedColor = (this as Renderer).getMixedColor.bind(this);
|
||||
Object.entries(variableMap).map(([variable, color]) => {
|
||||
const key = colorKeyMap[variable] ?? COLOR_KEY;
|
||||
const ratio = ratioMap[variable] ?? undefined;
|
||||
|
||||
document.documentElement.style.setProperty(
|
||||
variable,
|
||||
getMixedColor(color, key, alpha, ratio),
|
||||
this.getMixedColor(color, COLOR_KEY, alpha),
|
||||
'important',
|
||||
);
|
||||
});
|
||||
|
||||
document.body.style.setProperty(
|
||||
'background',
|
||||
this.getMixedColor('rgba(3, 3, 3)', DARK_COLOR_KEY, alpha),
|
||||
'important',
|
||||
);
|
||||
document.documentElement.style.setProperty(
|
||||
'--ytmusic-background',
|
||||
// #030303
|
||||
this.getMixedColor('rgba(3, 3, 3)', DARK_COLOR_KEY, alpha),
|
||||
'important',
|
||||
);
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
@ -81,14 +81,3 @@ ytmusic-browse-response[has-background]:not([disable-gradient]) .background-grad
|
||||
#background.immersive-background.style-scope.ytmusic-browse-response {
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
ytmusic-search-box[is-bauhaus-sidenav-enabled] {
|
||||
--ytmusic-search-background: var(--ytmusic-color-black3) !important;
|
||||
}
|
||||
|
||||
.seekbar-theme #progress-bar.ytmusic-player-bar {
|
||||
--paper-slider-active-color: linear-gradient(to right, var(--paper-progress-active-color-1) 80%, var(--paper-progress-active-color-2) 100%) !important;
|
||||
--paper-slider-knob-color: var(--paper-progress-active-color-1) !important;
|
||||
--paper-slider-knob-start-color: var(--paper-progress-active-color-2) !important;
|
||||
}
|
||||
|
||||
|
||||
@ -8,7 +8,6 @@ import {
|
||||
UniversalCache,
|
||||
Utils,
|
||||
YTNodes,
|
||||
Platform,
|
||||
} from '\u0079\u006f\u0075\u0074\u0075\u0062\u0065i.js';
|
||||
import is from 'electron-is';
|
||||
import filenamify from 'filenamify';
|
||||
@ -58,22 +57,6 @@ const ffmpeg = lazy(async () =>
|
||||
);
|
||||
const ffmpegMutex = new Mutex();
|
||||
|
||||
Platform.shim.eval = async (data: Types.BuildScriptResult, env: Record<string, Types.VMPrimative>) => {
|
||||
const properties = [];
|
||||
|
||||
if(env.n) {
|
||||
properties.push(`n: exportedVars.nFunction("${env.n}")`)
|
||||
}
|
||||
|
||||
if (env.sig) {
|
||||
properties.push(`sig: exportedVars.sigFunction("${env.sig}")`)
|
||||
}
|
||||
|
||||
const code = `${data.output}\nreturn { ${properties.join(', ')} }`;
|
||||
|
||||
return new Function(code)();
|
||||
}
|
||||
|
||||
let yt: Innertube;
|
||||
let win: BrowserWindow;
|
||||
let playingUrl: string;
|
||||
@ -148,6 +131,7 @@ export const onMainLoad = async ({
|
||||
|
||||
yt = await Innertube.create({
|
||||
cache: new UniversalCache(false),
|
||||
player_id: '0004de42',
|
||||
cookie: await getCookieFromWindow(win),
|
||||
generate_session_locally: true,
|
||||
fetch: getNetFetchAsFetch(),
|
||||
|
||||
Reference in New Issue
Block a user