Merge pull request #633 from Mastermindzh/next

Next
This commit is contained in:
Rick van Lieshout 2025-07-10 14:57:19 +02:00 committed by GitHub
commit 350b4434be
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 71 additions and 108 deletions

View File

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

View File

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

2
.nvmrc
View File

@ -1 +1 @@
22.17.0 v22.12.0

View File

@ -17,7 +17,9 @@
"trackid", "trackid",
"tracklist", "tracklist",
"widevine", "widevine",
"xesam" "wvcus",
"xesam",
"xhayper"
], ],
"sonarlint.connectedMode.project": { "sonarlint.connectedMode.project": {
"connectionId": "public-sonarcloud", "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/), 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). 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] ## [5.19.0]
- Fixed the issue where media updates would cease to work after album names can't be found - Fixed the issue where media updates would cease to work after album names can't be found

24
package-lock.json generated
View File

@ -1,22 +1,22 @@
{ {
"name": "tidal-hifi", "name": "tidal-hifi",
"version": "5.19.0", "version": "5.20.0",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "tidal-hifi", "name": "tidal-hifi",
"version": "5.19.0", "version": "5.20.0",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@electron/remote": "^2.1.2", "@electron/remote": "^2.1.3",
"@types/swagger-jsdoc": "^6.0.4", "@types/swagger-jsdoc": "^6.0.4",
"@xhayper/discord-rpc": "^1.2.1", "@xhayper/discord-rpc": "1.2.1",
"axios": "^1.9.0", "axios": "^1.10.0",
"cors": "^2.8.5", "cors": "^2.8.5",
"electron-store": "^8.2.0", "electron-store": "^8.2.0",
"express": "^5.1.0", "express": "^5.1.0",
"hotkeys-js": "^3.13.11", "hotkeys-js": "^3.13.15",
"mpris-service": "^2.1.2", "mpris-service": "^2.1.2",
"request": "^2.88.2", "request": "^2.88.2",
"sass": "1.89.2", "sass": "1.89.2",
@ -24,15 +24,15 @@
}, },
"devDependencies": { "devDependencies": {
"@mastermindzh/prettier-config": "^1.0.0", "@mastermindzh/prettier-config": "^1.0.0",
"@types/cors": "^2.8.17", "@types/cors": "^2.8.19",
"@types/express": "^5.0.1", "@types/express": "^5.0.3",
"@types/node": "^22.0.0", "@types/node": "^22.0.0",
"@types/request": "^2.48.12", "@types/request": "^2.48.12",
"@types/swagger-ui-express": "^4.1.8", "@types/swagger-ui-express": "^4.1.8",
"@typescript-eslint/eslint-plugin": "^8.0.0", "@typescript-eslint/eslint-plugin": "^8.36.0",
"@typescript-eslint/parser": "^8.0.0", "@typescript-eslint/parser": "^8.36.0",
"copyfiles": "^2.4.1", "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", "electron-builder": "~26.0.12",
"eslint": "^9.0.0", "eslint": "^9.0.0",
"js-yaml": "^4.1.0", "js-yaml": "^4.1.0",
@ -45,7 +45,7 @@
"stylelint-prettier": "^5.0.3", "stylelint-prettier": "^5.0.3",
"swagger-jsdoc": "^6.2.8", "swagger-jsdoc": "^6.2.8",
"ts-node": "^10.9.2", "ts-node": "^10.9.2",
"tsc-watch": "^7.0.0", "tsc-watch": "^7.1.1",
"typescript": "^5.8.3" "typescript": "^5.8.3"
} }
}, },

View File

@ -1,6 +1,6 @@
{ {
"name": "tidal-hifi", "name": "tidal-hifi",
"version": "5.19.0", "version": "5.20.0",
"description": "Tidal on Electron with widevine(hifi) support", "description": "Tidal on Electron with widevine(hifi) support",
"main": "ts-dist/main.js", "main": "ts-dist/main.js",
"scripts": { "scripts": {
@ -40,13 +40,13 @@
"homepage": "https://github.com/Mastermindzh/tidal-hifi", "homepage": "https://github.com/Mastermindzh/tidal-hifi",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@electron/remote": "^2.1.2", "@electron/remote": "^2.1.3",
"@types/swagger-jsdoc": "^6.0.4", "@types/swagger-jsdoc": "^6.0.4",
"@xhayper/discord-rpc": "^1.2.1", "@xhayper/discord-rpc": "1.2.1",
"axios": "^1.9.0", "axios": "^1.10.0",
"electron-store": "^8.2.0", "electron-store": "^8.2.0",
"express": "^5.1.0", "express": "^5.1.0",
"hotkeys-js": "^3.13.11", "hotkeys-js": "^3.13.15",
"mpris-service": "^2.1.2", "mpris-service": "^2.1.2",
"sass": "1.89.2", "sass": "1.89.2",
"swagger-ui-express": "^5.0.1", "swagger-ui-express": "^5.0.1",
@ -55,28 +55,28 @@
}, },
"devDependencies": { "devDependencies": {
"@mastermindzh/prettier-config": "^1.0.0", "@mastermindzh/prettier-config": "^1.0.0",
"@types/cors": "^2.8.17", "@types/cors": "^2.8.19",
"@types/express": "^5.0.1", "@types/express": "^5.0.3",
"@types/node": "^22.0.0", "@types/node": "^22.16.2",
"@types/request": "^2.48.12", "@types/request": "^2.48.12",
"@types/swagger-ui-express": "^4.1.8", "@types/swagger-ui-express": "^4.1.8",
"@typescript-eslint/eslint-plugin": "^8.0.0", "@typescript-eslint/eslint-plugin": "^8.36.0",
"@typescript-eslint/parser": "^8.0.0", "@typescript-eslint/parser": "^8.36.0",
"copyfiles": "^2.4.1", "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", "electron-builder": "~26.0.12",
"eslint": "^9.0.0", "eslint": "^9.30.1",
"js-yaml": "^4.1.0", "js-yaml": "^4.1.0",
"markdown-toc": "^1.2.0", "markdown-toc": "^1.2.0",
"nodemon": "^3.1.9", "nodemon": "^3.1.10",
"prettier": "^3.5.3", "prettier": "^3.6.2",
"stylelint": "^16.18.0", "stylelint": "^16.21.1",
"stylelint-config-standard": "^38.0.0", "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", "stylelint-prettier": "^5.0.3",
"swagger-jsdoc": "^6.2.8", "swagger-jsdoc": "^6.2.8",
"ts-node": "^10.9.2", "ts-node": "^10.9.2",
"tsc-watch": "^7.0.0", "tsc-watch": "^7.1.1",
"typescript": "^5.8.3" "typescript": "^5.8.3"
}, },
"prettier": "@mastermindzh/prettier-config" "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", "openapi": "3.1.0",
"info": { "info": {
"title": "TIDAL Hi-Fi API", "title": "TIDAL Hi-Fi API",
"version": "5.19.0", "version": "5.20.0",
"description": "", "description": "",
"license": { "license": {
"name": "MIT", "name": "MIT",
@ -21,9 +21,7 @@
"/current": { "/current": {
"get": { "get": {
"summary": "Get current media info", "summary": "Get current media info",
"tags": [ "tags": ["current"],
"current"
],
"responses": { "responses": {
"200": { "200": {
"description": "Current media info", "description": "Current media info",
@ -41,9 +39,7 @@
"/current/image": { "/current/image": {
"get": { "get": {
"summary": "Get current media image", "summary": "Get current media image",
"tags": [ "tags": ["current"],
"current"
],
"responses": { "responses": {
"200": { "200": {
"description": "Current media image", "description": "Current media image",
@ -65,9 +61,7 @@
"/player/play": { "/player/play": {
"post": { "post": {
"summary": "Play the current media", "summary": "Play the current media",
"tags": [ "tags": ["player"],
"player"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok", "description": "Ok",
@ -85,9 +79,7 @@
"/player/favorite/toggle": { "/player/favorite/toggle": {
"post": { "post": {
"summary": "Add the current media to your favorites, or remove it if its already added to your favorites", "summary": "Add the current media to your favorites, or remove it if its already added to your favorites",
"tags": [ "tags": ["player"],
"player"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok", "description": "Ok",
@ -105,9 +97,7 @@
"/player/pause": { "/player/pause": {
"post": { "post": {
"summary": "Pause the current media", "summary": "Pause the current media",
"tags": [ "tags": ["player"],
"player"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok", "description": "Ok",
@ -125,9 +115,7 @@
"/player/next": { "/player/next": {
"post": { "post": {
"summary": "Play the next song", "summary": "Play the next song",
"tags": [ "tags": ["player"],
"player"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok", "description": "Ok",
@ -145,9 +133,7 @@
"/player/previous": { "/player/previous": {
"post": { "post": {
"summary": "Play the previous song", "summary": "Play the previous song",
"tags": [ "tags": ["player"],
"player"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok", "description": "Ok",
@ -164,10 +150,8 @@
}, },
"/player/shuffle/toggle": { "/player/shuffle/toggle": {
"post": { "post": {
"summary": "Play the previous song", "summary": "Toggle shuffle mode",
"tags": [ "tags": ["player"],
"player"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok", "description": "Ok",
@ -185,9 +169,7 @@
"/player/repeat/toggle": { "/player/repeat/toggle": {
"post": { "post": {
"summary": "Toggle the repeat status, toggles between \"off\" , \"single\" and \"all\"", "summary": "Toggle the repeat status, toggles between \"off\" , \"single\" and \"all\"",
"tags": [ "tags": ["player"],
"player"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok", "description": "Ok",
@ -205,9 +187,7 @@
"/player/playpause": { "/player/playpause": {
"post": { "post": {
"summary": "Start playing the media if paused, or pause the media if playing", "summary": "Start playing the media if paused, or pause the media if playing",
"tags": [ "tags": ["player"],
"player"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok", "description": "Ok",
@ -225,9 +205,7 @@
"/settings/skipped-artists": { "/settings/skipped-artists": {
"get": { "get": {
"summary": "get a list of artists that TIDAL Hi-Fi will skip if skipping is enabled", "summary": "get a list of artists that TIDAL Hi-Fi will skip if skipping is enabled",
"tags": [ "tags": ["settings"],
"settings"
],
"responses": { "responses": {
"200": { "200": {
"description": "The list book.", "description": "The list book.",
@ -243,9 +221,7 @@
}, },
"post": { "post": {
"summary": "Add new artists to the list of skipped artists", "summary": "Add new artists to the list of skipped artists",
"tags": [ "tags": ["settings"],
"settings"
],
"requestBody": { "requestBody": {
"required": true, "required": true,
"content": { "content": {
@ -266,9 +242,7 @@
"/settings/skipped-artists/delete": { "/settings/skipped-artists/delete": {
"post": { "post": {
"summary": "Remove artists from the list of skipped artists", "summary": "Remove artists from the list of skipped artists",
"tags": [ "tags": ["settings"],
"settings"
],
"requestBody": { "requestBody": {
"required": true, "required": true,
"content": { "content": {
@ -289,9 +263,7 @@
"/settings/skipped-artists/current": { "/settings/skipped-artists/current": {
"post": { "post": {
"summary": "Add the current artist to the list of skipped artists", "summary": "Add the current artist to the list of skipped artists",
"tags": [ "tags": ["settings"],
"settings"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok" "description": "Ok"
@ -300,9 +272,7 @@
}, },
"delete": { "delete": {
"summary": "Remove the current artist from the list of skipped artists", "summary": "Remove the current artist from the list of skipped artists",
"tags": [ "tags": ["settings"],
"settings"
],
"responses": { "responses": {
"200": { "200": {
"description": "Ok" "description": "Ok"
@ -313,9 +283,7 @@
"/image": { "/image": {
"get": { "get": {
"summary": "Get current image", "summary": "Get current image",
"tags": [ "tags": ["legacy"],
"legacy"
],
"deprecated": true, "deprecated": true,
"responses": { "responses": {
"200": { "200": {
@ -338,9 +306,7 @@
"/play": { "/play": {
"get": { "get": {
"summary": "Play the current media", "summary": "Play the current media",
"tags": [ "tags": ["legacy"],
"legacy"
],
"deprecated": true, "deprecated": true,
"responses": { "responses": {
"200": { "200": {
@ -359,9 +325,7 @@
"/favorite/toggle": { "/favorite/toggle": {
"get": { "get": {
"summary": "Add the current media to your favorites, or remove it if its already added to your favorites", "summary": "Add the current media to your favorites, or remove it if its already added to your favorites",
"tags": [ "tags": ["legacy"],
"legacy"
],
"deprecated": true, "deprecated": true,
"responses": { "responses": {
"200": { "200": {
@ -380,9 +344,7 @@
"/pause": { "/pause": {
"get": { "get": {
"summary": "Pause the current media", "summary": "Pause the current media",
"tags": [ "tags": ["legacy"],
"legacy"
],
"deprecated": true, "deprecated": true,
"responses": { "responses": {
"200": { "200": {
@ -401,9 +363,7 @@
"/next": { "/next": {
"get": { "get": {
"summary": "Play the next song", "summary": "Play the next song",
"tags": [ "tags": ["legacy"],
"legacy"
],
"deprecated": true, "deprecated": true,
"responses": { "responses": {
"200": { "200": {
@ -422,9 +382,7 @@
"/previous": { "/previous": {
"get": { "get": {
"summary": "Play the previous song", "summary": "Play the previous song",
"tags": [ "tags": ["legacy"],
"legacy"
],
"deprecated": true, "deprecated": true,
"responses": { "responses": {
"200": { "200": {
@ -443,9 +401,7 @@
"/playpause": { "/playpause": {
"get": { "get": {
"summary": "Toggle play/pause", "summary": "Toggle play/pause",
"tags": [ "tags": ["legacy"],
"legacy"
],
"deprecated": true, "deprecated": true,
"responses": { "responses": {
"200": { "200": {
@ -558,10 +514,7 @@
"items": { "items": {
"type": "string" "type": "string"
}, },
"example": [ "example": ["Artist1", "Artist2"]
"Artist1",
"Artist2"
]
} }
} }
}, },

View File

@ -478,7 +478,7 @@
<h4>TIDAL Hi-Fi</h4> <h4>TIDAL Hi-Fi</h4>
<div class="about-section__version"> <div class="about-section__version">
<a target="_blank" rel="noopener" <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>
<div class="about-section__links"> <div class="about-section__links">
<a target="_blank" rel="noopener" href="https://github.com/mastermindzh/tidal-hifi/" <a target="_blank" rel="noopener" href="https://github.com/mastermindzh/tidal-hifi/"