Compare commits

...

13 Commits

Author SHA1 Message Date
63d123f96a Merge pull request #241 from Mastermindzh/release/5.3.0
Release/5.3.0
2023-06-24 13:05:52 +02:00
f038412c50 release 5.3.0 2023-06-24 12:41:41 +02:00
ff02287df7 Merge pull request #240 from SPKChaosPhoenix/patch-1
Update Tokyo Night.scss
2023-06-23 15:19:31 +02:00
Marces
f221ded108 Update Tokyo Night.scss
Updatet Tokyo Night to work with the newest version of Tidal.
2023-06-22 16:12:41 +02:00
1440f70100 Merge pull request #237 from Mastermindzh/release/5.2.0
Release/5.2.0
2023-06-18 21:39:30 +02:00
439333e15a Merge pull request #236 from Mastermindzh/feature/drone
added drone builds
2023-06-18 20:25:55 +02:00
b9854e0595 Merge pull request #200 from drom98/fix-album-not-updating
Fix album not updating on playlists
2023-06-18 19:45:45 +02:00
8b56c28d75 Merge branch 'release/5.2.0' of github.com:Mastermindzh/tidal-hifi into fix-album-not-updating 2023-06-18 15:45:01 +02:00
700a14fe88 Merge pull request #227 from Mastermindzh/feature/theming
Feature/theming
2023-06-18 15:42:59 +02:00
3c835077d5 added drone builds 2023-06-18 15:39:14 +02:00
194de286c8 fix: customCSS default value was still a string, causing new users to have settings issues 2023-05-18 17:56:45 +02:00
a7dee5c2c9 fix: settings window was unresponsive on first start because of fs.mkdir that wasn't awaited 2023-05-16 23:41:00 +02:00
Diogo Oliveira
0120391418 Fix album not updating on playlists 2023-01-30 17:49:04 +00:00
10 changed files with 60 additions and 34 deletions

16
.drone.yml Normal file
View File

@@ -0,0 +1,16 @@
kind: pipeline
type: docker
name: default
steps:
- name: install
image: node:19.4.0
commands:
- npm install
- name: build_with_linux
image: node:19.4.0
commands:
- apt-get update && apt-get upgrade -y
- apt-get install -y libarchive-tools rpm
- npm run build

View File

@@ -4,12 +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.3.0
- SPKChaosPhoenix updated the beautiful Tokyo Night theme:
![](./docs/images/tokyo-night.png)
## 5.2.0
- moved from Javascript to Typescript for all files
- use `npm run watch` to watch for changes & recompile typescript and sass files
- Added support for theming the application
- Added drone build file use `drone exec` or drone.ci to build it
## 5.1.0

View File

@@ -1,6 +1,6 @@
# Tidal-hifi<img src = "./build/icon.png" height="40" align="right"/>
![GitHub release](https://img.shields.io/github/release/Mastermindzh/tidal-hifi.svg) [![Discord logo](./docs/images/discord.png)](https://discord.gg/yhNwf4v4He)
![GitHub release](https://img.shields.io/github/release/Mastermindzh/tidal-hifi.svg) [![github builds](https://github.com/mastermindzh/tidal-hifi/actions/workflows/build.yml/badge.svg)](https://github.com/Mastermindzh/tidal-hifi/actions) [![Build Status](https://ci.mastermindzh.tech/api/badges/Mastermindzh/tidal-hifi/status.svg)](https://ci.mastermindzh.tech/Mastermindzh/tidal-hifi) [![Discord logo](./docs/images/discord.png)](https://discord.gg/yhNwf4v4He)
The web version of [listen.tidal.com](https://listen.tidal.com) running in electron with hifi support thanks to widevine.
@@ -86,15 +86,15 @@ To install with `snap` you need to download the pre-packaged snap-package from t
1. Download
```sh
wget <URI> #for instance: https://github.com/Mastermindzh/tidal-hifi/releases/download/1.0/tidal-hifi_1.0.0_amd64.snap
```
```sh
wget <URI> #for instance: https://github.com/Mastermindzh/tidal-hifi/releases/download/1.0/tidal-hifi_1.0.0_amd64.snap
```
2. Install
```sh
snap install --dangerous <path> #for instance: tidal-hifi_1.0.0_amd64.snap
```
```sh
snap install --dangerous <path> #for instance: tidal-hifi_1.0.0_amd64.snap
```
### Arch Linux

BIN
docs/images/tokyo-night.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 MiB

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "tidal-hifi",
"version": "5.2.0",
"version": "5.3.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "tidal-hifi",
"version": "5.2.0",
"version": "5.3.0",
"license": "MIT",
"dependencies": {
"@electron/remote": "^2.0.9",

View File

@@ -1,6 +1,6 @@
{
"name": "tidal-hifi",
"version": "5.2.0",
"version": "5.3.0",
"description": "Tidal on Electron with widevine(hifi) support",
"main": "ts-dist/main.js",
"scripts": {
@@ -66,4 +66,4 @@
"typescript": "^5.0.4"
},
"prettier": "@mastermindzh/prettier-config"
}
}

View File

@@ -31,12 +31,13 @@ export const getOptions = (array: string[]) => {
* @param directory to read from. Will be created if it doesn't exist
* @returns
*/
export const getThemeListFromDirectory = (directory: string) => {
export const getThemeListFromDirectory = (directory: string): string[] => {
try {
makeUserThemesDirectory(directory);
return fs.readdirSync(directory).filter(cssFilter).sort(sort);
} catch (err) {
console.error(err);
return [];
}
};
@@ -46,9 +47,7 @@ export const getThemeListFromDirectory = (directory: string) => {
*/
export const makeUserThemesDirectory = (directory: string) => {
try {
fs.mkdir(directory, { recursive: true }, (err) => {
if (err) throw err;
});
fs.mkdirSync(directory, { recursive: true });
} catch (err) {
console.error(err);
}

View File

@@ -40,7 +40,7 @@ const elements = {
bar: '*[data-test="progress-bar"]',
footer: "#footerPlayer",
album_header_title: '.header-details [data-test="title"]',
playing_title: 'span[data-test="table-cell-title"].css-geqnfr',
playing_title: 'span[data-test="table-cell-title"].css-1vjc1xk',
album_name_cell: '[data-test="table-cell-album"]',
tracklist_row: '[data-test="tracklist-row"]',
volume: '*[data-test="volume"]',

View File

@@ -13,7 +13,7 @@ export const settingsStore = new Store({
apiSettings: {
port: 47836,
},
customCSS: "",
customCSS: [],
disableBackgroundThrottle: true,
disableHardwareMediaKeys: false,
enableCustomHotkeys: false,

View File

@@ -17,37 +17,37 @@
--search-dialog-background: #24283b;
--right-queue-background: #24283b;
}
.player--fNPGt.notFullscreen--ugyc2 {
.player--gAOQG.notFullscreen--xbpBL {
background-color: var(--footer-player-background);
}
.sidebar--WvRg_ {
.sidebar--jVJai {
background-color: var(--sidebar-background);
contain: strict;
flex-grow: 1;
overflow-y: auto;
}
.item--VTpWS:hover {
.item--buEQw:hover {
background-color: var(--sidebar-hover-background);
}
.main--LUnJp {
.main--jxfcQ {
background-color: var(--main-background);
}
button.button--ncJwL {
button.button--yO9Cd {
background-color: var(--main-navigation-control-background);
}
.player--fNPGt.lossLess--g5Jss button.withBackground[aria-checked="true"] path {
.player--gAOQG.lossLess--ON3FI button.withBackground[aria-checked="true"] path {
fill: var(--player-control-active-button);
}
.player--fNPGt.lossLess--g5Jss button.withBackground[aria-checked="true"] {
.player--gAOQG.lossLess--ON3FI button.withBackground[aria-checked="true"] {
background-color: var(--player-control-background);
}
.activeItem--qV6eL .activeItem--qV6eL .playlistItem--YARJh .section--FI41E.playingItem--eWkYS {
.activeItem--kFIk0 .activeItem--kFIk0 .playlistItem--mQrxp .section--PSIay.playingItem--eWkYS {
color: #565f89;
}
.progressBarWrapper--WZfox {
.progressBarWrapper--IBBI9 {
color: var(--player-progress-bar);
}
.playbackControls--FLeZA button .tidal-ui__icon {
.playbackControls--FhKVf button .tidal-ui__icon {
transform: scale(1);
}
.css-11m9iw3 {
@@ -56,27 +56,30 @@ button.button--ncJwL {
.css-11m9iw3 span {
color: var(--indicator-hifi-span);
}
.activeItem--qV6eL {
.activeItem--kFIk0 {
color: var(--sidebar-menu-top-text);
}
.activeItem--qV6eL .playlistItem--YARJh {
.activeItem--kFIk0 .playlistItem--mQrxp {
color: var(--sidebar-menu-playlist-text);
}
button.feedBell--B8anb {
button.feedBell--kvAbD {
background-color: var(--main-feed-button-background);
}
.baseContainer--cbf17 {
.baseContainer--jxCbW {
background-color: var(--search-dialog-background);
}
.favoriteButton--TtBlM.is-favorite path {
.favoriteButton--Qladw.is-favorite path {
fill: var(--player-control-favorite);
}
.container--mkEWd {
.container--PFTHk {
background-color: var(--right-queue-background);
}
.container--vJVjO {
.container--cl4MJ{
background-color: var(--search-background);
}
.searchFieldHighlighted--Fitvs {
color: var(--snow-white);
}
.searchField--EGBSq {
background-color: var(--search-background);
}