From 3340fb93df9e56caf8f7e93e57c531bcfdc5bfbb Mon Sep 17 00:00:00 2001 From: booploops <49113086+booploops@users.noreply.github.com> Date: Mon, 7 Feb 2022 10:04:41 -0800 Subject: [PATCH 1/3] removed some comments, fixed app not loading in yarn start. --- src/renderer/index.js | 82 ------------------- .../ameframework.less} | 0 src/renderer/style.less | 2 +- src/renderer/views/app/chrome-top.ejs | 2 +- 4 files changed, 2 insertions(+), 84 deletions(-) rename src/renderer/{ameframework.css => less/ameframework.less} (100%) diff --git a/src/renderer/index.js b/src/renderer/index.js index e5dba229..7000a24b 100644 --- a/src/renderer/index.js +++ b/src/renderer/index.js @@ -3073,23 +3073,6 @@ const app = new Vue({ }) self.$store.commit("setLCDArtwork", img) }) - - // Vibrant.from(this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"].replace('{w}', size).replace('{h}', size)).getPalette().then(palette=>{ - // let angle = "140deg" - // let gradient = "" - // let colors = Object.values(palette).filter(color=>color!=null) - // if(colors.length > 0){ - // let stops = [] - // colors.forEach(color=>{ - // stops.push(`${self._rgbToRgb(color._rgb)} 0%`) - // }) - // stops.push(`${self._rgbToRgb(colors[0]._rgb)} 100%`) - // gradient = `linear-gradient(${angle}, ${stops.join(", ")}` - // } - // - // document.querySelector("#app").style.setProperty("--bgColor", gradient) - // }).setQuantizer(Vibrant.Quantizer.WebWorker) - try { clearInterval(bginterval); } catch (err) { @@ -3114,47 +3097,6 @@ const app = new Vue({ } }, 200) }, - - // getNowPlayingArtwork(size = 600) { - // if (typeof this.mk.nowPlayingItem === "undefined") return; - // let interval = setInterval(() => { - - // try { - // if (this.mk.nowPlayingItem && this.mk.nowPlayingItem["id"] != this.currentTrackIDBG && document.querySelector('.app-playback-controls .artwork')) { - // this.currentTrackIDBG = this.mk.nowPlayingItem["id"]; - // if (document.querySelector('.app-playback-controls .artwork') != null) { - // clearInterval(interval); - // } - // if (app.mk.nowPlayingItem.attributes.artwork != null && app.mk.nowPlayingItem.attributes.artwork.url != null && app.mk.nowPlayingItem.attributes.artwork.url!= '' ) { - // document.querySelector('.app-playback-controls .artwork').style.setProperty('--artwork', `url("${decodeURI((this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"])).replace('{w}', size).replace('{h}', size)}")`); - // try { - // clearInterval(interval); - // } catch (err) { - // } - // } else { - // this.setLibraryArt() - // } - // } else if (this.mk.nowPlayingItem["id"] == this.currentTrackID) { - // try { - // clearInterval(interval); - // } catch (err) { - // } - // } - // } catch (e) { - // if (this.mk.nowPlayingItem && this.mk.nowPlayingItem["id"] && document.querySelector('.app-playback-controls .artwork')) { - // this.setLibraryArt() - // try { - // clearInterval(interval); - // } catch (err) { - // } - - // } - - // } - // }, 200) - - - // }, async getCurrentArtURL() { try { this.currentArtUrl = ''; @@ -3169,11 +3111,6 @@ const app = new Vue({ data = data.data.data[0]; if (data != null && data !== "" && data.attributes != null && data.attributes.artwork != null) { this.currentArtUrl = (data["attributes"]["artwork"]["url"] ?? '').replace('{w}', 50).replace('{h}', 50); - // if (this.currentArtUrl != ""){ - // let attr = MusicKitInterop.getAttributes(); - // attr.artwork.url = this.currentArtUrl; - // ipcRenderer.send('forceUpdateRPC',attr) - // } try { document.querySelector('.app-playback-controls .artwork').style.setProperty('--artwork', `url("${this.currentArtUrl}")`); } catch (e) { @@ -3398,18 +3335,11 @@ const app = new Vue({ } }, async nowPlayingContextMenu(event) { - // function revisedRandId() { - // return Math.random().toString(36).replace(/[^a-z]+/g, '').substr(2, 10); - // } let self = this let data_type = this.mk.nowPlayingItem.playParams.kind let item_id = this.mk.nowPlayingItem.attributes.playParams.id ?? this.mk.nowPlayingItem.id let isLibrary = this.mk.nowPlayingItem.attributes.playParams.isLibrary ?? false let params = {"fields[songs]": "inLibrary", "fields[albums]": "inLibrary", "relate": "library", "t": "1"} - // let res = await app.mkapi(data_type, isLibrary , item_id, params); - // if (res && res.relationships && res.relationships.library && res.relationships.library.data && res.relationships.library.data.length > 0) { - // item_id = res.relationships.library.data[0].id - // } app.selectedMediaItems = [] app.select_selectMediaItem(item_id, data_type, 0, '12344', isLibrary) let useMenu = "normal" @@ -3473,7 +3403,6 @@ const app = new Vue({ "disabled": false, "action": function () { app.addToLibrary(app.mk.nowPlayingItem.id); - // if (!isLibrary) {app.addToLibrary(item_id); this.mk.nowPlayingItem.attributes.playParams["isLibrary"] = true} else { app.removeFromLibrary(data_type,item_id); this.mk.nowPlayingItem.attributes.playParams["isLibrary"] = false}; } }, { @@ -3499,21 +3428,10 @@ const app = new Vue({ } } if (this.contextExt) { - // if this.context-ext.normal is true append all options to the 'normal' menu which is a kvp of arrays if (this.contextExt.normal) { menus.normal.items = menus.normal.items.concat(this.contextExt.normal) } } - - // isLibrary = await app.inLibrary([this.mk.nowPlayingItem]) - // console.warn(isLibrary) - // if(isLibrary.length != 0) { - // if (isLibrary[0].attributes.inLibrary) { - // menus.normal.items.find(x => x.id == "addToLibrary").disabled = true - // } - // }else{ - // menus.normal.items.find(x => x.id == "addToLibrary").disabled = true - // } this.showMenuPanel(menus[useMenu], event) try { diff --git a/src/renderer/ameframework.css b/src/renderer/less/ameframework.less similarity index 100% rename from src/renderer/ameframework.css rename to src/renderer/less/ameframework.less diff --git a/src/renderer/style.less b/src/renderer/style.less index c7903888..4b88be9c 100644 --- a/src/renderer/style.less +++ b/src/renderer/style.less @@ -1,10 +1,10 @@ -@import url("ameframework.css"); @import url("assets/fonts/Inter/inter.css"); @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap'); @import url("https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100;300;400;500;700;900&display=swap"); @import url("https://fonts.googleapis.com/css2?family=Noto+Sans+HK:wght@100;300;400;500;700;900&display=swap"); @import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&display=swap"); @import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap"); +@import url("less/ameframework.less"); @import url("less/bootstrap.less"); @import url("less/notyf.less"); diff --git a/src/renderer/views/app/chrome-top.ejs b/src/renderer/views/app/chrome-top.ejs index 15fa6f2f..8f2d2207 100644 --- a/src/renderer/views/app/chrome-top.ejs +++ b/src/renderer/views/app/chrome-top.ejs @@ -57,7 +57,7 @@ v-if="mk.nowPlayingItem['attributes']['contentRating'] == 'explicit'" style="display: inline-block"> -
+
Date: Mon, 7 Feb 2022 10:32:37 -0800 Subject: [PATCH 2/3] removed CiderContextMenu, cleaned out some unused files --- src/main/base/browserwindow.ts | 2 - src/renderer/index.js | 73 ----- .../components/mediaitem-square-large.ejs | 244 --------------- .../views/components/mediaitem-square-sp.ejs | 293 ------------------ src/renderer/views/components/queue-item.ejs | 65 ---- 5 files changed, 677 deletions(-) delete mode 100644 src/renderer/views/components/mediaitem-square-large.ejs delete mode 100644 src/renderer/views/components/mediaitem-square-sp.ejs delete mode 100644 src/renderer/views/components/queue-item.ejs diff --git a/src/main/base/browserwindow.ts b/src/main/base/browserwindow.ts index 9c701a04..1082f59a 100644 --- a/src/main/base/browserwindow.ts +++ b/src/main/base/browserwindow.ts @@ -54,7 +54,6 @@ export class BrowserWindow { "components/equalizer", "components/add-to-playlist", "components/queue", - "components/queue-item", "components/mediaitem-scroller-horizontal", "components/mediaitem-scroller-horizontal-large", "components/mediaitem-scroller-horizontal-sp", @@ -62,7 +61,6 @@ export class BrowserWindow { "components/mediaitem-list-item", "components/mediaitem-hrect", "components/mediaitem-square", - "components/mediaitem-square-sp", "components/mediaitem-mvview", "components/libraryartist-item", "components/listennow-child", diff --git a/src/renderer/index.js b/src/renderer/index.js index 7000a24b..8e24659f 100644 --- a/src/renderer/index.js +++ b/src/renderer/index.js @@ -1,78 +1,5 @@ Vue.use(VueObserveVisibility); var notyf = new Notyf(); -// This is going to suck to code -var CiderContextMenu = { - Menu: function (event) { - this.items = [] - }, - async Create(event, menudata) { - var menuBackground = document.createElement("div"); - var menu = document.createElement("div"); - menu.classList.add("context-menu-body"); - menu.classList.add("context-menu-open"); - menuBackground.classList.add("context-menu"); - menu.style.left = 0 + "px"; - menu.style.top = 0 + "px"; - menu.style.position = "absolute"; - menu.style.zIndex = "99909"; - menu.addEventListener("animationend", function () { - menu.classList.remove("context-menu-open"); - }, {once: true}); - - function close() { - menuBackground.style.pointerEvents = "none"; - menu.classList.add("context-menu-close"); - menu.addEventListener("animationend", function () { - menuBackground.remove(); - menu.remove(); - }, {once: true}); - } - - // when menubackground is clicked, remove it - menuBackground.addEventListener("click", close); - menuBackground.addEventListener("contextmenu", close); - - // add menu to menuBackground - menuBackground.appendChild(menu); - - document.body.appendChild(menuBackground); - - if (typeof menudata.items == "object") { - menudata.items = Object.values(menudata.items); - } - - console.log(menudata); - - // for each item in menudata create a menu item - for (var i = 0; i < menudata.items.length; i++) { - let item = document.createElement("button") - - if (menudata.items[i]["disabled"] === true) { - continue - } - item.tabIndex = 0 - item.classList.add("context-menu-item") - if (menudata.items[i]["icon"]) { - item.innerHTML += `` - } - item.innerHTML += menudata.items[i].name - item.onclick = menudata.items[i].action - menu.appendChild(item) - } - menu.style.width = (menu.offsetWidth + 10) + "px"; - menu.style.left = event.clientX + "px"; - menu.style.top = event.clientY + "px"; - // if menu would be off the screen, move it into view, but preserve the width - if (menu.offsetLeft + menu.offsetWidth > window.innerWidth) { - menu.style.left = (window.innerWidth - menu.offsetWidth) + "px"; - } - if (menu.offsetTop + menu.offsetHeight > window.innerHeight) { - menu.style.top = (window.innerHeight - menu.offsetHeight) + "px"; - } - - return menuBackground; - } -} const MusicKitObjects = { LibraryPlaylist: function () { diff --git a/src/renderer/views/components/mediaitem-square-large.ejs b/src/renderer/views/components/mediaitem-square-large.ejs deleted file mode 100644 index a969e10b..00000000 --- a/src/renderer/views/components/mediaitem-square-large.ejs +++ /dev/null @@ -1,244 +0,0 @@ - - - \ No newline at end of file diff --git a/src/renderer/views/components/mediaitem-square-sp.ejs b/src/renderer/views/components/mediaitem-square-sp.ejs deleted file mode 100644 index 89859695..00000000 --- a/src/renderer/views/components/mediaitem-square-sp.ejs +++ /dev/null @@ -1,293 +0,0 @@ - - - \ No newline at end of file diff --git a/src/renderer/views/components/queue-item.ejs b/src/renderer/views/components/queue-item.ejs deleted file mode 100644 index 0dd56c64..00000000 --- a/src/renderer/views/components/queue-item.ejs +++ /dev/null @@ -1,65 +0,0 @@ - - - \ No newline at end of file From 21026816fe8a917bfe4c785c59532e4c324816b7 Mon Sep 17 00:00:00 2001 From: Core <64542347+coredev-uk@users.noreply.github.com> Date: Mon, 7 Feb 2022 19:23:22 +0000 Subject: [PATCH 3/3] Renamed and changed convertToMins function to work with larger values --- src/renderer/index.js | 22 ++++++++++++++++---- src/renderer/views/app/chrome-top.ejs | 4 ++-- src/renderer/views/components/fullscreen.ejs | 4 ++-- src/renderer/views/components/miniplayer.ejs | 4 ++-- 4 files changed, 24 insertions(+), 10 deletions(-) diff --git a/src/renderer/index.js b/src/renderer/index.js index 7000a24b..69b0b739 100644 --- a/src/renderer/index.js +++ b/src/renderer/index.js @@ -1242,10 +1242,24 @@ const app = new Vue({ return this.playerLCD.playbackDuration } }, - convertToMins(time) { - let mins = Math.floor(time / 60) - let seconds = (Math.floor(time % 60) / 100).toFixed(2) - return `${mins}:${seconds.replace("0.", "")}` + convertTime(time) { + if (typeof time !== "number") { + time = parseInt(time) + } + + const timeGates = { + 600: 15, + 3600: 14, + 36000: 12, + } + + for (let key in timeGates) { + if (time < key) { + return new Date(time * 1000).toISOString().substring(timeGates[key], 19) + } + } + + return new Date(time * 1000).toISOString().substring(11, 19) }, hashCode(str) { let hash = 0, diff --git a/src/renderer/views/app/chrome-top.ejs b/src/renderer/views/app/chrome-top.ejs index 8f2d2207..e38ee43e 100644 --- a/src/renderer/views/app/chrome-top.ejs +++ b/src/renderer/views/app/chrome-top.ejs @@ -80,8 +80,8 @@
-

{{ convertToMins(getSongProgress()) }}

-

{{ convertToMins(mk.currentPlaybackDuration) }} +

{{ convertTime(getSongProgress()) }}

+

{{ convertTime(mk.currentPlaybackDuration) }}

diff --git a/src/renderer/views/components/fullscreen.ejs b/src/renderer/views/components/fullscreen.ejs index 76551f09..51093c60 100644 --- a/src/renderer/views/components/fullscreen.ejs +++ b/src/renderer/views/components/fullscreen.ejs @@ -41,8 +41,8 @@
-

{{ app.convertToMins(app.getSongProgress()) }}

-

{{ app.convertToMins(app.mk.currentPlaybackDuration) }}

+

{{ app.convertTime(app.getSongProgress()) }}

+

{{ app.convertTime(app.mk.currentPlaybackDuration) }}

-

{{ app.convertToMins(app.getSongProgress()) }}

-

{{ app.convertToMins(app.mk.currentPlaybackDuration) }}

+

{{ app.convertTime(app.getSongProgress()) }}

+

{{ app.convertTime(app.mk.currentPlaybackDuration) }}