Compare commits

..

15 Commits

Author SHA1 Message Date
350b4434be Merge pull request #633 from Mastermindzh/next
Next
2025-07-10 14:57:19 +02:00
702a16357f chore: copilot review changes 2025-07-10 11:18:46 +02:00
c6619be068 chore: update version numbers 2025-07-10 11:11:57 +02:00
bf7cd70f20 updated some dev deps 2025-07-10 11:10:43 +02:00
03cb14e31e added nvmrc 2025-07-10 11:05:26 +02:00
697298da38 fix: updated Electron to 37, fixes #580 2025-07-10 10:56:58 +02:00
5f5b3b11a8 pulled in edocli PR and updated dependencies 2025-07-10 10:44:57 +02:00
d474b7b78f Merge pull request #632 from Mastermindzh/renovate/hotkeys-js-3.x-lockfile
fix(deps): update hotkeys-js to 3.13.15
2025-07-10 10:31:59 +02:00
ef374ea283 Merge pull request #631 from Mastermindzh/renovate/node-22.x-lockfile
chore(deps): update @types/node to 22.16.2
2025-07-10 10:31:44 +02:00
Renovate Bot
96ff46737b fix(deps): update hotkeys-js to 3.13.15 2025-07-09 11:52:31 +02:00
Renovate Bot
dee0044876 chore(deps): update @types/node to 22.16.2 2025-07-09 02:28:17 +02:00
3b1f456d4c Merge pull request #630 from Mastermindzh/renovate/node-22.x-lockfile
chore(deps): update @types/node to 22.16.1
2025-07-08 20:24:05 +02:00
Renovate Bot
f380839631 chore(deps): update @types/node to 22.16.1 2025-07-08 19:21:47 +02:00
fca5194873 Merge pull request #628 from Mastermindzh/renovate/electron-remote-2.x-lockfile
fix(deps): update @electron/remote to 2.1.3
2025-07-07 23:24:38 +02:00
Renovate Bot
92d1fc159d fix(deps): update @electron/remote to 2.1.3 2025-07-07 20:31:42 +02:00
10 changed files with 226 additions and 214 deletions

View File

@@ -21,7 +21,7 @@ jobs:
- uses: actions/checkout@master
- uses: actions/setup-node@master
with:
node-version: 22.4
node-version: 22.12.0
- run: npm install
- run: npm run build
# - uses: actions/upload-artifact@master

View File

@@ -21,7 +21,7 @@ jobs:
- uses: actions/checkout@master
- uses: actions/setup-node@master
with:
node-version: 22.4
node-version: 22.12.0
- run: npm install
- run: npm run build
- uses: actions/upload-artifact@master

2
.nvmrc
View File

@@ -1 +1 @@
22.17.0
v22.12.0

View File

@@ -17,7 +17,9 @@
"trackid",
"tracklist",
"widevine",
"xesam"
"wvcus",
"xesam",
"xhayper"
],
"sonarlint.connectedMode.project": {
"connectionId": "public-sonarcloud",

View File

@@ -4,6 +4,13 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [5.20.0]
- Removes the `--enable-features=UseOzonePlatform` flag, as the Ozone platform has been the default on Linux since Electron 28 and this flag is no longer necessary.
- Adds the `--enable-wayland-ime` flag to enable Input Method Editor (IME) support in Wayland environments, improving the input experience for CJK and other users.
- Updated various dependencies
- Updated Electron to 37, potentially fixing [#580](https://github.com/Mastermindzh/tidal-hifi/issues/580)
## [5.19.0]
- Fixed the issue where media updates would cease to work after album names can't be found

283
package-lock.json generated
View File

@@ -1,22 +1,22 @@
{
"name": "tidal-hifi",
"version": "5.19.0",
"version": "5.20.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "tidal-hifi",
"version": "5.19.0",
"version": "5.20.0",
"license": "MIT",
"dependencies": {
"@electron/remote": "^2.1.2",
"@electron/remote": "^2.1.3",
"@types/swagger-jsdoc": "^6.0.4",
"@xhayper/discord-rpc": "^1.2.1",
"axios": "^1.9.0",
"@xhayper/discord-rpc": "1.2.1",
"axios": "^1.10.0",
"cors": "^2.8.5",
"electron-store": "^10.0.0",
"electron-store": "^8.2.0",
"express": "^5.1.0",
"hotkeys-js": "^3.13.11",
"hotkeys-js": "^3.13.15",
"mpris-service": "^2.1.2",
"request": "^2.88.2",
"sass": "1.89.2",
@@ -24,15 +24,15 @@
},
"devDependencies": {
"@mastermindzh/prettier-config": "^1.0.0",
"@types/cors": "^2.8.17",
"@types/express": "^5.0.1",
"@types/cors": "^2.8.19",
"@types/express": "^5.0.3",
"@types/node": "^22.0.0",
"@types/request": "^2.48.12",
"@types/swagger-ui-express": "^4.1.8",
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"@typescript-eslint/eslint-plugin": "^8.36.0",
"@typescript-eslint/parser": "^8.36.0",
"copyfiles": "^2.4.1",
"electron": "github:castlabs/electron-releases#v35.7.0+wvcus",
"electron": "github:castlabs/electron-releases#v37.2.0+wvcus",
"electron-builder": "~26.0.12",
"eslint": "^9.0.0",
"js-yaml": "^4.1.0",
@@ -45,7 +45,7 @@
"stylelint-prettier": "^5.0.3",
"swagger-jsdoc": "^6.2.8",
"ts-node": "^10.9.2",
"tsc-watch": "^7.0.0",
"tsc-watch": "^7.1.1",
"typescript": "^5.8.3"
}
},
@@ -725,9 +725,9 @@
}
},
"node_modules/@electron/remote": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@electron/remote/-/remote-2.1.2.tgz",
"integrity": "sha512-EPwNx+nhdrTBxyCqXt/pftoQg/ybtWDW3DUWHafejvnB1ZGGfMpv6e15D8KeempocjXe78T7WreyGGb3mlZxdA==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@electron/remote/-/remote-2.1.3.tgz",
"integrity": "sha512-XlpxC8S4ttj/v2d+PKp9na/3Ev8bV7YWNL7Cw5b9MAWgTphEml7iYgbc7V0r9D6yDOfOkj06bchZgOZdlWJGNA==",
"license": "MIT",
"peerDependencies": {
"electron": ">= 13.0.0"
@@ -2014,9 +2014,9 @@
"license": "MIT"
},
"node_modules/@types/node": {
"version": "22.16.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.16.0.tgz",
"integrity": "sha512-B2egV9wALML1JCpv3VQoQ+yesQKAmNMBIAY7OteVrikcOcAkWm+dGL6qpeCktPjAv6N1JLnhbNiqS35UpFyBsQ==",
"version": "22.16.2",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.16.2.tgz",
"integrity": "sha512-Cdqa/eJTvt4fC4wmq1Mcc0CPUjp/Qy2FGqLza3z3pKymsI969TcZ54diNJv8UYUgeWxyb8FSbCkhdR6WqmUFhA==",
"license": "MIT",
"dependencies": {
"undici-types": "~6.21.0"
@@ -2580,9 +2580,9 @@
}
},
"node_modules/ajv-formats": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz",
"integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==",
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz",
"integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==",
"license": "MIT",
"dependencies": {
"ajv": "^8.0.0"
@@ -2887,12 +2887,12 @@
}
},
"node_modules/atomically": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/atomically/-/atomically-2.0.3.tgz",
"integrity": "sha512-kU6FmrwZ3Lx7/7y3hPS5QnbJfaohcIul5fGqf7ok+4KklIEk9tJ0C2IQPdacSbVUWv6zVHXEBWoWd6NrVMT7Cw==",
"dependencies": {
"stubborn-fs": "^1.2.5",
"when-exit": "^2.1.1"
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/atomically/-/atomically-1.7.0.tgz",
"integrity": "sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w==",
"license": "MIT",
"engines": {
"node": ">=10.12.0"
}
},
"node_modules/autolinker": {
@@ -3701,23 +3701,24 @@
}
},
"node_modules/conf": {
"version": "14.0.0",
"resolved": "https://registry.npmjs.org/conf/-/conf-14.0.0.tgz",
"integrity": "sha512-L6BuueHTRuJHQvQVc6YXYZRtN5vJUtOdCTLn0tRYYV5azfbAFcPghB5zEE40mVrV6w7slMTqUfkDomutIK14fw==",
"version": "10.2.0",
"resolved": "https://registry.npmjs.org/conf/-/conf-10.2.0.tgz",
"integrity": "sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg==",
"license": "MIT",
"dependencies": {
"ajv": "^8.17.1",
"ajv-formats": "^3.0.1",
"atomically": "^2.0.3",
"debounce-fn": "^6.0.0",
"dot-prop": "^9.0.0",
"env-paths": "^3.0.0",
"json-schema-typed": "^8.0.1",
"semver": "^7.7.2",
"uint8array-extras": "^1.4.0"
"ajv": "^8.6.3",
"ajv-formats": "^2.1.1",
"atomically": "^1.7.0",
"debounce-fn": "^4.0.0",
"dot-prop": "^6.0.1",
"env-paths": "^2.2.1",
"json-schema-typed": "^7.0.3",
"onetime": "^5.1.2",
"pkg-up": "^3.1.0",
"semver": "^7.3.5"
},
"engines": {
"node": ">=20"
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -3739,18 +3740,6 @@
"url": "https://github.com/sponsors/epoberezkin"
}
},
"node_modules/conf/node_modules/env-paths": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/env-paths/-/env-paths-3.0.0.tgz",
"integrity": "sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/conf/node_modules/json-schema-traverse": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
@@ -4039,15 +4028,15 @@
}
},
"node_modules/debounce-fn": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/debounce-fn/-/debounce-fn-6.0.0.tgz",
"integrity": "sha512-rBMW+F2TXryBwB54Q0d8drNEI+TfoS9JpNTAoVpukbWEhjXQq4rySFYLaqXMFXwdv61Zb2OHtj5bviSoimqxRQ==",
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/debounce-fn/-/debounce-fn-4.0.0.tgz",
"integrity": "sha512-8pYCQiL9Xdcg0UPSD3d+0KMlOjp+KGU5EPwYddgzQ7DATsg4fuUDjQtsYLmWjnk2obnNHgV3vE2Y4jejSOJVBQ==",
"license": "MIT",
"dependencies": {
"mimic-function": "^5.0.0"
"mimic-fn": "^3.0.0"
},
"engines": {
"node": ">=18"
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -4386,15 +4375,15 @@
}
},
"node_modules/dot-prop": {
"version": "9.0.0",
"resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-9.0.0.tgz",
"integrity": "sha512-1gxPBJpI/pcjQhKgIU91II6Wkay+dLcN3M6rf2uwP8hRur3HtQXjVrdAK3sjC0piaEuxzMwjXChcETiJl47lAQ==",
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz",
"integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==",
"license": "MIT",
"dependencies": {
"type-fest": "^4.18.2"
"is-obj": "^2.0.0"
},
"engines": {
"node": ">=18"
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -4704,16 +4693,13 @@
}
},
"node_modules/electron-store": {
"version": "10.1.0",
"resolved": "https://registry.npmjs.org/electron-store/-/electron-store-10.1.0.tgz",
"integrity": "sha512-oL8bRy7pVCLpwhmXy05Rh/L6O93+k9t6dqSw0+MckIc3OmCTZm6Mp04Q4f/J0rtu84Ky6ywkR8ivtGOmrq+16w==",
"version": "8.2.0",
"resolved": "https://registry.npmjs.org/electron-store/-/electron-store-8.2.0.tgz",
"integrity": "sha512-ukLL5Bevdil6oieAOXz3CMy+OgaItMiVBg701MNlG6W5RaC0AHN7rvlqTCmeb6O7jP0Qa1KKYTE0xV0xbhF4Hw==",
"license": "MIT",
"dependencies": {
"conf": "^14.0.0",
"type-fest": "^4.41.0"
},
"engines": {
"node": ">=20"
"conf": "^10.2.0",
"type-fest": "^2.17.0"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -6149,9 +6135,9 @@
}
},
"node_modules/hotkeys-js": {
"version": "3.13.14",
"resolved": "https://registry.npmjs.org/hotkeys-js/-/hotkeys-js-3.13.14.tgz",
"integrity": "sha512-jmWwEP3twlpPV2/WpzuQzJTg/0MRjWlvKJScEREueIuzoMJ6gmqNrv6sm1WIpW+3g0TzDmQpj2pX8HvYPx90hw==",
"version": "3.13.15",
"resolved": "https://registry.npmjs.org/hotkeys-js/-/hotkeys-js-3.13.15.tgz",
"integrity": "sha512-gHh8a/cPTCpanraePpjRxyIlxDFrIhYqjuh01UHWEwDpglJKCnvLW8kqSx5gQtOuSsJogNZXLhOdbSExpgUiqg==",
"license": "MIT",
"funding": {
"url": "https://jaywcjlove.github.io/#/sponsor"
@@ -6569,6 +6555,15 @@
"node": ">=0.10.0"
}
},
"node_modules/is-obj": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
"integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
"license": "MIT",
"engines": {
"node": ">=8"
}
},
"node_modules/is-plain-object": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
@@ -6785,9 +6780,9 @@
"license": "MIT"
},
"node_modules/json-schema-typed": {
"version": "8.0.1",
"resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.1.tgz",
"integrity": "sha512-XQmWYj2Sm4kn4WeTYvmpKEbyPsL7nBsb647c7pMe6l02/yx2+Jfc4dT6UZkEXnIUb5LhD55r2HPsJ1milQ4rDg==",
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz",
"integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==",
"license": "BSD-2-Clause"
},
"node_modules/json-stable-stringify-without-jsonify": {
@@ -7354,16 +7349,13 @@
"node": ">= 0.6"
}
},
"node_modules/mimic-function": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz",
"integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==",
"node_modules/mimic-fn": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz",
"integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==",
"license": "MIT",
"engines": {
"node": ">=18"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
"node": ">=8"
}
},
"node_modules/mimic-response": {
@@ -7914,7 +7906,6 @@
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
"integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
"dev": true,
"license": "MIT",
"dependencies": {
"mimic-fn": "^2.1.0"
@@ -7930,7 +7921,6 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
"integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=6"
@@ -8043,6 +8033,15 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/p-try": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
"license": "MIT",
"engines": {
"node": ">=6"
}
},
"node_modules/package-json-from-dist": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz",
@@ -8233,6 +8232,79 @@
"url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/pkg-up": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz",
"integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==",
"license": "MIT",
"dependencies": {
"find-up": "^3.0.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/pkg-up/node_modules/find-up": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
"integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
"license": "MIT",
"dependencies": {
"locate-path": "^3.0.0"
},
"engines": {
"node": ">=6"
}
},
"node_modules/pkg-up/node_modules/locate-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
"integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
"license": "MIT",
"dependencies": {
"p-locate": "^3.0.0",
"path-exists": "^3.0.0"
},
"engines": {
"node": ">=6"
}
},
"node_modules/pkg-up/node_modules/p-limit": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
"integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
"license": "MIT",
"dependencies": {
"p-try": "^2.0.0"
},
"engines": {
"node": ">=6"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/pkg-up/node_modules/p-locate": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
"integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
"license": "MIT",
"dependencies": {
"p-limit": "^2.0.0"
},
"engines": {
"node": ">=6"
}
},
"node_modules/pkg-up/node_modules/path-exists": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
"integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
"license": "MIT",
"engines": {
"node": ">=4"
}
},
"node_modules/plist": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz",
@@ -9106,9 +9178,9 @@
"license": "ISC"
},
"node_modules/semver": {
"version": "7.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz",
"integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==",
"version": "7.7.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
"integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
"license": "ISC",
"bin": {
"semver": "bin/semver.js"
@@ -9684,11 +9756,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/stubborn-fs": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/stubborn-fs/-/stubborn-fs-1.2.5.tgz",
"integrity": "sha512-H2N9c26eXjzL/S/K+i/RHHcFanE74dptvvjM8iwzwbVcWY/zjBbgRqF3K0DY4+OD+uTTASTBvDoxPDaPN02D7g=="
},
"node_modules/stylelint": {
"version": "16.21.1",
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.21.1.tgz",
@@ -10552,12 +10619,12 @@
}
},
"node_modules/type-fest": {
"version": "4.41.0",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz",
"integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==",
"version": "2.19.0",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz",
"integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==",
"license": "(MIT OR CC0-1.0)",
"engines": {
"node": ">=16"
"node": ">=12.20"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -10619,18 +10686,6 @@
"node": ">=14.17"
}
},
"node_modules/uint8array-extras": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/uint8array-extras/-/uint8array-extras-1.4.0.tgz",
"integrity": "sha512-ZPtzy0hu4cZjv3z5NW9gfKnNLjoz4y6uv4HlelAjDK7sY/xOkKZv9xK/WQpcsBB3jEybChz9DPC2U/+cusjJVQ==",
"license": "MIT",
"engines": {
"node": ">=18"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/undefsafe": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz",
@@ -10800,12 +10855,6 @@
"defaults": "^1.0.3"
}
},
"node_modules/when-exit": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/when-exit/-/when-exit-2.1.4.tgz",
"integrity": "sha512-4rnvd3A1t16PWzrBUcSDZqcAmsUIy4minDXT/CZ8F2mVDgd65i4Aalimgz1aQkRGU0iH5eT5+6Rx2TK8o443Pg==",
"license": "MIT"
},
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",

View File

@@ -1,6 +1,6 @@
{
"name": "tidal-hifi",
"version": "5.19.0",
"version": "5.20.0",
"description": "Tidal on Electron with widevine(hifi) support",
"main": "ts-dist/main.js",
"scripts": {
@@ -40,13 +40,13 @@
"homepage": "https://github.com/Mastermindzh/tidal-hifi",
"license": "MIT",
"dependencies": {
"@electron/remote": "^2.1.2",
"@electron/remote": "^2.1.3",
"@types/swagger-jsdoc": "^6.0.4",
"@xhayper/discord-rpc": "^1.2.1",
"axios": "^1.9.0",
"electron-store": "^10.0.0",
"@xhayper/discord-rpc": "1.2.1",
"axios": "^1.10.0",
"electron-store": "^8.2.0",
"express": "^5.1.0",
"hotkeys-js": "^3.13.11",
"hotkeys-js": "^3.13.15",
"mpris-service": "^2.1.2",
"sass": "1.89.2",
"swagger-ui-express": "^5.0.1",
@@ -55,28 +55,28 @@
},
"devDependencies": {
"@mastermindzh/prettier-config": "^1.0.0",
"@types/cors": "^2.8.17",
"@types/express": "^5.0.1",
"@types/node": "^22.0.0",
"@types/cors": "^2.8.19",
"@types/express": "^5.0.3",
"@types/node": "^22.16.2",
"@types/request": "^2.48.12",
"@types/swagger-ui-express": "^4.1.8",
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"@typescript-eslint/eslint-plugin": "^8.36.0",
"@typescript-eslint/parser": "^8.36.0",
"copyfiles": "^2.4.1",
"electron": "github:castlabs/electron-releases#v35.7.0+wvcus",
"electron": "github:castlabs/electron-releases#v37.2.0+wvcus",
"electron-builder": "~26.0.12",
"eslint": "^9.0.0",
"eslint": "^9.30.1",
"js-yaml": "^4.1.0",
"markdown-toc": "^1.2.0",
"nodemon": "^3.1.9",
"prettier": "^3.5.3",
"stylelint": "^16.18.0",
"nodemon": "^3.1.10",
"prettier": "^3.6.2",
"stylelint": "^16.21.1",
"stylelint-config-standard": "^38.0.0",
"stylelint-config-standard-scss": "^15.0.0",
"stylelint-config-standard-scss": "^15.0.1",
"stylelint-prettier": "^5.0.3",
"swagger-jsdoc": "^6.2.8",
"ts-node": "^10.9.2",
"tsc-watch": "^7.0.0",
"tsc-watch": "^7.1.1",
"typescript": "^5.8.3"
},
"prettier": "@mastermindzh/prettier-config"

View File

@@ -1,3 +1,4 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json"
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"ignoreDeps": ["@types/node", "electron-store", "@xhayper/discord-rpc"]
}

View File

@@ -2,7 +2,7 @@
"openapi": "3.1.0",
"info": {
"title": "TIDAL Hi-Fi API",
"version": "5.19.0",
"version": "5.20.0",
"description": "",
"license": {
"name": "MIT",
@@ -21,9 +21,7 @@
"/current": {
"get": {
"summary": "Get current media info",
"tags": [
"current"
],
"tags": ["current"],
"responses": {
"200": {
"description": "Current media info",
@@ -41,9 +39,7 @@
"/current/image": {
"get": {
"summary": "Get current media image",
"tags": [
"current"
],
"tags": ["current"],
"responses": {
"200": {
"description": "Current media image",
@@ -65,9 +61,7 @@
"/player/play": {
"post": {
"summary": "Play the current media",
"tags": [
"player"
],
"tags": ["player"],
"responses": {
"200": {
"description": "Ok",
@@ -85,9 +79,7 @@
"/player/favorite/toggle": {
"post": {
"summary": "Add the current media to your favorites, or remove it if its already added to your favorites",
"tags": [
"player"
],
"tags": ["player"],
"responses": {
"200": {
"description": "Ok",
@@ -105,9 +97,7 @@
"/player/pause": {
"post": {
"summary": "Pause the current media",
"tags": [
"player"
],
"tags": ["player"],
"responses": {
"200": {
"description": "Ok",
@@ -125,9 +115,7 @@
"/player/next": {
"post": {
"summary": "Play the next song",
"tags": [
"player"
],
"tags": ["player"],
"responses": {
"200": {
"description": "Ok",
@@ -145,9 +133,7 @@
"/player/previous": {
"post": {
"summary": "Play the previous song",
"tags": [
"player"
],
"tags": ["player"],
"responses": {
"200": {
"description": "Ok",
@@ -164,10 +150,8 @@
},
"/player/shuffle/toggle": {
"post": {
"summary": "Play the previous song",
"tags": [
"player"
],
"summary": "Toggle shuffle mode",
"tags": ["player"],
"responses": {
"200": {
"description": "Ok",
@@ -185,9 +169,7 @@
"/player/repeat/toggle": {
"post": {
"summary": "Toggle the repeat status, toggles between \"off\" , \"single\" and \"all\"",
"tags": [
"player"
],
"tags": ["player"],
"responses": {
"200": {
"description": "Ok",
@@ -205,9 +187,7 @@
"/player/playpause": {
"post": {
"summary": "Start playing the media if paused, or pause the media if playing",
"tags": [
"player"
],
"tags": ["player"],
"responses": {
"200": {
"description": "Ok",
@@ -225,9 +205,7 @@
"/settings/skipped-artists": {
"get": {
"summary": "get a list of artists that TIDAL Hi-Fi will skip if skipping is enabled",
"tags": [
"settings"
],
"tags": ["settings"],
"responses": {
"200": {
"description": "The list book.",
@@ -243,9 +221,7 @@
},
"post": {
"summary": "Add new artists to the list of skipped artists",
"tags": [
"settings"
],
"tags": ["settings"],
"requestBody": {
"required": true,
"content": {
@@ -266,9 +242,7 @@
"/settings/skipped-artists/delete": {
"post": {
"summary": "Remove artists from the list of skipped artists",
"tags": [
"settings"
],
"tags": ["settings"],
"requestBody": {
"required": true,
"content": {
@@ -289,9 +263,7 @@
"/settings/skipped-artists/current": {
"post": {
"summary": "Add the current artist to the list of skipped artists",
"tags": [
"settings"
],
"tags": ["settings"],
"responses": {
"200": {
"description": "Ok"
@@ -300,9 +272,7 @@
},
"delete": {
"summary": "Remove the current artist from the list of skipped artists",
"tags": [
"settings"
],
"tags": ["settings"],
"responses": {
"200": {
"description": "Ok"
@@ -313,9 +283,7 @@
"/image": {
"get": {
"summary": "Get current image",
"tags": [
"legacy"
],
"tags": ["legacy"],
"deprecated": true,
"responses": {
"200": {
@@ -338,9 +306,7 @@
"/play": {
"get": {
"summary": "Play the current media",
"tags": [
"legacy"
],
"tags": ["legacy"],
"deprecated": true,
"responses": {
"200": {
@@ -359,9 +325,7 @@
"/favorite/toggle": {
"get": {
"summary": "Add the current media to your favorites, or remove it if its already added to your favorites",
"tags": [
"legacy"
],
"tags": ["legacy"],
"deprecated": true,
"responses": {
"200": {
@@ -380,9 +344,7 @@
"/pause": {
"get": {
"summary": "Pause the current media",
"tags": [
"legacy"
],
"tags": ["legacy"],
"deprecated": true,
"responses": {
"200": {
@@ -401,9 +363,7 @@
"/next": {
"get": {
"summary": "Play the next song",
"tags": [
"legacy"
],
"tags": ["legacy"],
"deprecated": true,
"responses": {
"200": {
@@ -422,9 +382,7 @@
"/previous": {
"get": {
"summary": "Play the previous song",
"tags": [
"legacy"
],
"tags": ["legacy"],
"deprecated": true,
"responses": {
"200": {
@@ -443,9 +401,7 @@
"/playpause": {
"get": {
"summary": "Toggle play/pause",
"tags": [
"legacy"
],
"tags": ["legacy"],
"deprecated": true,
"responses": {
"200": {
@@ -558,10 +514,7 @@
"items": {
"type": "string"
},
"example": [
"Artist1",
"Artist2"
]
"example": ["Artist1", "Artist2"]
}
}
},
@@ -579,4 +532,4 @@
"description": "The settings management API"
}
]
}
}

View File

@@ -478,7 +478,7 @@
<h4>TIDAL Hi-Fi</h4>
<div class="about-section__version">
<a target="_blank" rel="noopener"
href="https://github.com/Mastermindzh/tidal-hifi/releases/tag/5.19.0">5.19.0</a>
href="https://github.com/Mastermindzh/tidal-hifi/releases/tag/5.20.0">5.20.0</a>
</div>
<div class="about-section__links">
<a target="_blank" rel="noopener" href="https://github.com/mastermindzh/tidal-hifi/"