Compare commits

...

32 Commits

Author SHA1 Message Date
6e5024742a Merge pull request #382 from Mastermindzh/snyk-upgrade-e8583a1804fc58a60a199bdcdfddb237
[Snyk] Upgrade sass from 1.71.1 to 1.72.0
2024-04-18 12:34:41 +02:00
417afaab85 Merge pull request #381 from Mastermindzh/snyk-upgrade-eddeada86cf707578042602e7a9acfd4
[Snyk] Upgrade electron-store from 8.1.0 to 8.2.0
2024-04-18 12:34:27 +02:00
d225c0056b Merge pull request #380 from Mastermindzh/snyk-upgrade-636acae2850bc80d0d46d524748be780
[Snyk] Upgrade axios from 1.6.5 to 1.6.8
2024-04-18 12:34:18 +02:00
snyk-bot
a75b0336db fix: upgrade sass from 1.71.1 to 1.72.0
Snyk has created this PR to upgrade sass from 1.71.1 to 1.72.0.

See this package in npm:
https://www.npmjs.com/package/sass

See this project in Snyk:
https://app.snyk.io/org/mastermindzh/project/dade8f03-2064-49a3-8957-edbacec3887c?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-04-16 20:25:03 +00:00
snyk-bot
29465ce13a fix: upgrade electron-store from 8.1.0 to 8.2.0
Snyk has created this PR to upgrade electron-store from 8.1.0 to 8.2.0.

See this package in npm:
https://www.npmjs.com/package/electron-store

See this project in Snyk:
https://app.snyk.io/org/mastermindzh/project/dade8f03-2064-49a3-8957-edbacec3887c?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-04-16 20:25:00 +00:00
snyk-bot
d333047269 fix: upgrade axios from 1.6.5 to 1.6.8
Snyk has created this PR to upgrade axios from 1.6.5 to 1.6.8.

See this package in npm:
https://www.npmjs.com/package/axios

See this project in Snyk:
https://app.snyk.io/org/mastermindzh/project/dade8f03-2064-49a3-8957-edbacec3887c?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-04-16 20:24:56 +00:00
a6c1d35a60 Merge pull request #375 from Mastermindzh/snyk-fix-a6b2d7614f87b9d818d7aaf7e6d7650d
[Snyk] Security upgrade express from 4.18.3 to 4.19.2
2024-03-28 14:09:29 +01:00
snyk-bot
c09a4bc4a8 fix: package.json & package-lock.json to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-EXPRESS-6474509
2024-03-26 21:37:31 +00:00
2e31b5d913 Merge pull request #373 from Mastermindzh/develop
5.10.0
2024-03-24 21:11:58 +01:00
2fd29c1b83 added rel='noopener' to external links 2024-03-24 21:00:49 +01:00
b2f27a2afe Enabled wayland platform flags by default when launching through .desktop file fixes #273 #347 2024-03-24 20:54:46 +01:00
8e11fd7f09 Reverted to using old icon syntax with icons in the build directory. fixes #350 2024-03-24 16:17:46 +01:00
17b2818b70 Refactored nowPlaying code to always display the current state, even when the built-in UI is updated. fixes #351 #356 #370 2024-03-24 16:13:21 +01:00
4ef76c262e Links in the about window now open in the user's default browser. fixes #360 2024-03-24 15:55:33 +01:00
fd0dae2762 fix: rewrote docs to fix #365 2024-03-24 15:42:50 +01:00
aa59bdc6dd Merge branch 'master' of github.com:Mastermindzh/tidal-hifi into develop 2024-03-24 15:34:18 +01:00
5b5b6ecb38 Merge pull request #364 from lennart-k/master
feature: Track current notification to replace it on track change
2024-03-24 15:34:00 +01:00
5983145857 Merge pull request #369 from Mastermindzh/dependabot/npm_and_yarn/follow-redirects-1.15.6
chore(deps): bump follow-redirects from 1.15.4 to 1.15.6
2024-03-24 15:32:14 +01:00
0c7d579951 Merge pull request #371 from Mastermindzh/snyk-upgrade-30d8b55c8b39463bad9d0408a76bfa86
[Snyk] Upgrade express from 4.18.2 to 4.18.3
2024-03-24 15:32:02 +01:00
snyk-bot
235d916749 fix: upgrade express from 4.18.2 to 4.18.3
Snyk has created this PR to upgrade express from 4.18.2 to 4.18.3.

See this package in npm:
https://www.npmjs.com/package/express

See this project in Snyk:
https://app.snyk.io/org/mastermindzh/project/dade8f03-2064-49a3-8957-edbacec3887c?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-03-21 17:32:39 +00:00
dependabot[bot]
2d9f268866 chore(deps): bump follow-redirects from 1.15.4 to 1.15.6
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-16 22:30:30 +00:00
ae65e57e32 Merge pull request #367 from Mastermindzh/snyk-upgrade-0829d5b61286f530a986191886019e0f
[Snyk] Upgrade sass from 1.71.0 to 1.71.1
2024-03-14 16:08:02 +01:00
snyk-bot
3f2d69f2f4 fix: upgrade sass from 1.71.0 to 1.71.1
Snyk has created this PR to upgrade sass from 1.71.0 to 1.71.1.

See this package in npm:
https://www.npmjs.com/package/sass

See this project in Snyk:
https://app.snyk.io/org/mastermindzh/project/dade8f03-2064-49a3-8957-edbacec3887c?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-03-14 01:58:53 +00:00
5ff2cc68d3 Merge pull request #359 from Mastermindzh/snyk-upgrade-f5ef319e06f8e24c1358e777b2415e49
[Snyk] Upgrade hotkeys-js from 3.13.6 to 3.13.7
2024-03-12 09:21:24 +01:00
daabe5bdbb Merge pull request #363 from Mastermindzh/snyk-upgrade-63565ec96f33448467289d767c1fb965
[Snyk] Upgrade sass from 1.70.0 to 1.71.0
2024-03-12 09:20:35 +01:00
Lennart
456727c0e0 feature: Track current notification to replace it on track change 2024-03-09 17:49:18 +01:00
snyk-bot
ba50e0c095 fix: upgrade sass from 1.70.0 to 1.71.0
Snyk has created this PR to upgrade sass from 1.70.0 to 1.71.0.

See this package in npm:
https://www.npmjs.com/package/sass

See this project in Snyk:
https://app.snyk.io/org/mastermindzh/project/dade8f03-2064-49a3-8957-edbacec3887c?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-03-08 19:44:36 +00:00
snyk-bot
312e90e8cb fix: upgrade hotkeys-js from 3.13.6 to 3.13.7
Snyk has created this PR to upgrade hotkeys-js from 3.13.6 to 3.13.7.

See this package in npm:
https://www.npmjs.com/package/hotkeys-js

See this project in Snyk:
https://app.snyk.io/org/mastermindzh/project/dade8f03-2064-49a3-8957-edbacec3887c?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-03-01 19:11:09 +00:00
76769dfab3 Merge pull request #354 from Mastermindzh/snyk-upgrade-d64f8964b9d005d97354597114dfafa3
[Snyk] Upgrade hotkeys-js from 3.13.5 to 3.13.6
2024-02-29 09:11:22 +01:00
snyk-bot
565d32ae3d fix: upgrade hotkeys-js from 3.13.5 to 3.13.6
Snyk has created this PR to upgrade hotkeys-js from 3.13.5 to 3.13.6.

See this package in npm:
https://www.npmjs.com/package/hotkeys-js

See this project in Snyk:
https://app.snyk.io/org/mastermindzh/project/dade8f03-2064-49a3-8957-edbacec3887c?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-02-24 02:43:08 +00:00
7be6f79040 Merge pull request #349 from Mastermindzh/snyk-upgrade-f0f8b19cd2b7f7662ced7cf1b914e52a
[Snyk] Upgrade @electron/remote from 2.1.1 to 2.1.2
2024-02-16 13:36:45 +01:00
snyk-bot
f894c82b12 fix: upgrade @electron/remote from 2.1.1 to 2.1.2
Snyk has created this PR to upgrade @electron/remote from 2.1.1 to 2.1.2.

See this package in npm:
https://www.npmjs.com/package/@electron/remote

See this project in Snyk:
https://app.snyk.io/org/mastermindzh/project/dade8f03-2064-49a3-8957-edbacec3887c?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-02-16 02:47:27 +00:00
18 changed files with 603 additions and 162 deletions

View File

@@ -4,6 +4,20 @@ 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.10.0]
- TIDAL will now close the previous notification if a new one is sent whilst the old is still visible. [#364](https://github.com/Mastermindzh/tidal-hifi/pull/364)
- Updated developer documentation to get started in README [#365](https://github.com/Mastermindzh/tidal-hifi/pull/365)
- Links in the about window now open in the user's default browser. fixes [#360](https://github.com/Mastermindzh/tidal-hifi/issues/360)
- Refactored "nowPlaying" code to always display the current state, even when the built-in UI is updated.
- fixes [#351](https://github.com/Mastermindzh/tidal-hifi/issues/351)
- fixes [#356](https://github.com/Mastermindzh/tidal-hifi/issues/356)
- fixes [#370](https://github.com/Mastermindzh/tidal-hifi/issues/370)
- Reverted to using old icon syntax with icons in the build directory. fixes [#350](https://github.com/Mastermindzh/tidal-hifi/issues/350)
- Enabled wayland platform flags by default when launching through .desktop file
- fixes [#273](https://github.com/Mastermindzh/tidal-hifi/issues/273)
- fixes [#347](https://github.com/Mastermindzh/tidal-hifi/issues/347)
## [5.9.0]
- More Discord options:

View File

@@ -130,10 +130,13 @@ nix-env -iA nixpkgs.tidal-hifi
To install and work with the code on this project follow these steps:
- git clone [https://github.com/Mastermindzh/tidal-hifi.git](https://github.com/Mastermindzh/tidal-hifi.git)
- cd TIDAL Hi-Fi
- npm install
- npm start
- `git clone [https://github.com/Mastermindzh/tidal-hifi.git](https://github.com/Mastermindzh/tidal-hifi.git)`
- `cd tidal-hifi`
- `npm install`
- `npm run watch` to watch for auto-reload of Typescript/SCSS changes.
- `npm run compile` can be used to trigger it once
- `npm watchStart` to auto watch for any updates files and reload Tidal Hi-Fi
- `npm start` can be used to run Tidal Hi-Fi manually once
## Integrations

View File

@@ -11,10 +11,16 @@ extraResources:
- "themes/**"
linux:
category: AudioVideo
icon: build/icons/256x256.png
icon: build/icons
target:
- dir
executableName: tidal-hifi
executableArgs:
[
"--enable-features=UseOzonePlatform",
"--ozone-platform-hint=auto",
"--enable-features=WaylandWindowDecorations",
]
desktop:
Encoding: UTF-8
Name: TIDAL Hi-Fi

BIN
build/icons/128x128.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
build/icons/16x16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
build/icons/22x22.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
build/icons/24x24.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

BIN
build/icons/32x32.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
build/icons/384x384.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
build/icons/48x48.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

BIN
build/icons/64x64.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

676
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{
"name": "tidal-hifi",
"version": "5.9.0",
"version": "5.10.0",
"description": "Tidal on Electron with widevine(hifi) support",
"main": "ts-dist/main.js",
"scripts": {
@@ -39,15 +39,15 @@
"homepage": "https://github.com/Mastermindzh/tidal-hifi",
"license": "MIT",
"dependencies": {
"@electron/remote": "^2.1.1",
"axios": "^1.6.5",
"@electron/remote": "^2.1.2",
"axios": "^1.6.8",
"discord-rpc": "^4.0.1",
"electron-store": "^8.1.0",
"express": "^4.18.2",
"hotkeys-js": "^3.13.5",
"electron-store": "^8.2.0",
"express": "^4.19.2",
"hotkeys-js": "^3.13.7",
"mpris-service": "^2.1.2",
"request": "^2.88.2",
"sass": "^1.70.0"
"sass": "^1.72.0"
},
"devDependencies": {
"@mastermindzh/prettier-config": "^1.0.0",

View File

@@ -432,14 +432,16 @@
<img alt="tidal icon" class="about-section__icon" src="./icon.png" />
<h4>TIDAL Hi-Fi</h4>
<div class="about-section__version">
<a href="https://github.com/Mastermindzh/tidal-hifi/releases/tag/5.9.0">5.9.0</a>
<a target="_blank" rel="noopener"
href="https://github.com/Mastermindzh/tidal-hifi/releases/tag/5.10.0">5.10.0</a>
</div>
<div class="about-section__links">
<a href="https://github.com/mastermindzh/tidal-hifi/" class="about-section__button">Github <i
class="fa fa-external-link"></i></a>
<a href="https://github.com/Mastermindzh/tidal-hifi/issues" class="about-section__button">Report an issue <i
class="fa fa-external-link"></i></a>
<a href="https://github.com/Mastermindzh/tidal-hifi/graphs/contributors"
<a target="_blank" rel="noopener" href="https://github.com/mastermindzh/tidal-hifi/"
class="about-section__button">Github
<i class="fa fa-external-link"></i></a>
<a target="_blank" rel="noopener" href="https://github.com/Mastermindzh/tidal-hifi/issues"
class="about-section__button">Report an issue <i class="fa fa-external-link"></i></a>
<a target="_blank" rel="noopener" href="https://github.com/Mastermindzh/tidal-hifi/graphs/contributors"
class="about-section__button">Contributors <i class="fa fa-external-link"></i></a>
</div>
</section>

View File

@@ -415,7 +415,6 @@ html {
}
// file upload
.file-drop-area {
position: relative;
display: flex;

View File

@@ -26,8 +26,10 @@ let player: Player;
let currentPlayStatus = MediaStatus.paused;
let currentListenBrainzDelayId: ReturnType<typeof setTimeout>;
let scrobbleWaitingForDelay = false;
let wasJustPausedOrResumed = false;
let currentlyPlaying = MediaStatus.paused;
let currentMediaInfo: Options;
let currentNotification: Electron.Notification;
const elements = {
play: '*[data-test="play"]',
@@ -184,7 +186,6 @@ function getUpdateFrequency() {
* Play or pause the current song
*/
function playPause() {
wasJustPausedOrResumed = true;
const play = elements.get("play");
if (play) {
@@ -359,7 +360,13 @@ function updateMediaInfo(options: Options, notify: boolean) {
currentMediaInfo = options;
ipcRenderer.send(globalEvents.updateInfo, options);
if (settingsStore.get(settings.notifications) && notify) {
new Notification({ title: options.title, body: options.artists, icon: options.icon }).show();
if (currentNotification) currentNotification.close();
currentNotification = new Notification({
title: options.title,
body: options.artists,
icon: options.icon,
});
currentNotification.show();
}
updateMpris(options);
updateListenBrainz(options);
@@ -515,10 +522,12 @@ setInterval(function () {
const current = elements.getText("current");
const currentStatus = getCurrentlyPlayingStatus();
const playStateChanged = currentStatus != currentlyPlaying;
// update info if song changed or was just paused/resumed
if (titleOrArtistsChanged || wasJustPausedOrResumed) {
if (wasJustPausedOrResumed) {
wasJustPausedOrResumed = false;
if (titleOrArtistsChanged || playStateChanged) {
if (playStateChanged) {
currentlyPlaying = currentStatus;
}
skipArtistsIfFoundInSkippedArtistsList(artistsArray);

View File

@@ -1,6 +1,6 @@
import Store from "electron-store";
import { BrowserWindow } from "electron";
import { BrowserWindow, shell } from "electron";
import path from "path";
import { settings } from "../constants/settings";
@@ -134,6 +134,10 @@ export const createSettingsWindow = function () {
settingsWindow.loadURL(`file://${__dirname}/../pages/settings/settings.html`);
settingsWindow.webContents.setWindowOpenHandler(({ url }) => {
shell.openExternal(url);
return { action: "deny" };
});
settingsModule.settingsWindow = settingsWindow;
};