Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
commit
d177a1ccc6
29 changed files with 1412 additions and 1128 deletions
|
@ -76,4 +76,4 @@ jobs:
|
||||||
- run:
|
- run:
|
||||||
name: Publish Release
|
name: Publish Release
|
||||||
command: |
|
command: |
|
||||||
gh release create "v${APP_VERSION}" --target ${CIRCLE_SHA1} --title "Cider Version ${APP_VERSION} - Build ${CIRCLE_BUILD_NUM} (${CIRCLE_BRANCH})" --generate-notes -R ciderapp/cider-releases ~/Cider/dist/artifacts/*.deb ~/Cider/dist/artifacts/*.AppImage ~/Cider/dist/artifacts/*.snap ~/Cider/dist/artifacts/*.exe ~/Cider/dist/artifacts/*.yml ~/Cider/dist/artifacts/*.blockmap
|
gh release create "v${APP_VERSION}.${CIRCLE_BUILD_NUM}" --title "Cider Version ${APP_VERSION} - Build ${CIRCLE_BUILD_NUM} (${CIRCLE_BRANCH})" --generate-notes -R ciderapp/cider-releases ~/Cider/dist/artifacts/*.deb ~/Cider/dist/artifacts/*.AppImage ~/Cider/dist/artifacts/*.snap ~/Cider/dist/artifacts/*.exe ~/Cider/dist/artifacts/*.yml ~/Cider/dist/artifacts/*.blockmap
|
||||||
|
|
2
.github/ISSUE_TEMPLATE/feature_request.yaml
vendored
2
.github/ISSUE_TEMPLATE/feature_request.yaml
vendored
|
@ -1,6 +1,6 @@
|
||||||
name: Feature Request
|
name: Feature Request
|
||||||
description: Suggest an idea to improve Cider.
|
description: Suggest an idea to improve Cider.
|
||||||
title: "[Enhancement]: "
|
title: "[Feature Request]: "
|
||||||
labels: ["enhancement", "triage"]
|
labels: ["enhancement", "triage"]
|
||||||
assignees: []
|
assignees: []
|
||||||
body:
|
body:
|
||||||
|
|
|
@ -29,7 +29,7 @@ if (process.env['CIRCLE_BRANCH'] === 'lts') {
|
||||||
// https://circleci.com/docs/2.0/env-vars/#built-in-environment-variables
|
// https://circleci.com/docs/2.0/env-vars/#built-in-environment-variables
|
||||||
var pvers = package.version.split('.')
|
var pvers = package.version.split('.')
|
||||||
package.version = `${pvers[0]}.${pvers[1]}.${pvers[2]}-${channel}.${process.env['CIRCLE_BUILD_NUM']}`
|
package.version = `${pvers[0]}.${pvers[1]}.${pvers[2]}-${channel}.${process.env['CIRCLE_BUILD_NUM']}`
|
||||||
package.build.channel = channel
|
// package.build.channel = channel
|
||||||
package.publish = {
|
package.publish = {
|
||||||
"provider": "github",
|
"provider": "github",
|
||||||
"repo": "cider-releases",
|
"repo": "cider-releases",
|
||||||
|
|
|
@ -174,6 +174,7 @@
|
||||||
"term.plays": "Pways",
|
"term.plays": "Pways",
|
||||||
"term.topGenres": "Top Genwes",
|
"term.topGenres": "Top Genwes",
|
||||||
"term.confirmLogout": "Awe you suwe you want to wogout?",
|
"term.confirmLogout": "Awe you suwe you want to wogout?",
|
||||||
|
"term.creditDesignedBy": "Designyed by ${authorUsername}",
|
||||||
"home.title": "Home",
|
"home.title": "Home",
|
||||||
"home.recentlyPlayed": "Wecentwy Pwayed",
|
"home.recentlyPlayed": "Wecentwy Pwayed",
|
||||||
"home.recentlyAdded": "Wecentwy Added",
|
"home.recentlyAdded": "Wecentwy Added",
|
||||||
|
@ -283,6 +284,7 @@
|
||||||
"settings.option.audio.seamlessTransition": "Seamwess Audio Twansition",
|
"settings.option.audio.seamlessTransition": "Seamwess Audio Twansition",
|
||||||
"settings.option.audio.enableAdvancedFunctionality": "Enyabwe Advanced Functionyawity",
|
"settings.option.audio.enableAdvancedFunctionality": "Enyabwe Advanced Functionyawity",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.description": "Enyabwing AudioContext functionyawity wiww awwow fow extended audio featuwes wike Audio Nyowmawization, Equawizews and Visuawizews - howevew on some systems this may cause stuttewing in audio twacks.",
|
"settings.option.audio.enableAdvancedFunctionality.description": "Enyabwing AudioContext functionyawity wiww awwow fow extended audio featuwes wike Audio Nyowmawization, Equawizews and Visuawizews - howevew on some systems this may cause stuttewing in audio twacks.",
|
||||||
|
"settings.warn.audio.enableAdvancedFunctionality.lowcores": "Cidew thinks youw PC cant handwe these featuwes. Awe you suwe you want to continyue?",
|
||||||
"settings.option.audio.audioLab": "Cidew Audio Wab",
|
"settings.option.audio.audioLab": "Cidew Audio Wab",
|
||||||
"settings.option.audio.audioLab.description": "An assowtment of in-house devewoped audio effects fow Cidew.",
|
"settings.option.audio.audioLab.description": "An assowtment of in-house devewoped audio effects fow Cidew.",
|
||||||
"settings.warn.audioLab.withoutAF": "AudioContext (Advanced Functionyawity) is wequiwed to enyabwe Cidew Audio Wabowatowy.",
|
"settings.warn.audioLab.withoutAF": "AudioContext (Advanced Functionyawity) is wequiwed to enyabwe Cidew Audio Wabowatowy.",
|
||||||
|
@ -301,6 +303,7 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Aggwessive",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Aggwessive",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Audio Nyowmawization",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Audio Nyowmawization",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Nyowmawizes peak vowume fow individuaw twacks to cweate a mowe unyifowm wistenying expewience.",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Nyowmawizes peak vowume fow individuaw twacks to cweate a mowe unyifowm wistenying expewience.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.disabled": "Manyaged by Audio Wab",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Audio Spatiawization",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Audio Spatiawization",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Spatiawize audio and make audio mowe 3-dimensionyaw (nyote: This is nyot Dowby Atmos)",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Spatiawize audio and make audio mowe 3-dimensionyaw (nyote: This is nyot Dowby Atmos)",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Cidew Tunyed Spatiawization",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Cidew Tunyed Spatiawization",
|
||||||
|
@ -378,6 +381,8 @@
|
||||||
"settings.option.debug.openAppData": "Open Cidew Fowdew",
|
"settings.option.debug.openAppData": "Open Cidew Fowdew",
|
||||||
"settings.header.experimental": "Expewimentaw",
|
"settings.header.experimental": "Expewimentaw",
|
||||||
"settings.header.experimental.description": "Adjust the expewimentaw settings fow Cidew.",
|
"settings.header.experimental.description": "Adjust the expewimentaw settings fow Cidew.",
|
||||||
|
"settings.option.experimental.reinstallwidevine": "Weinstaww WidevinyeCDM",
|
||||||
|
"settings.option.experimental.reinstallwidevine.confirm": "Awe you suwe you want to weinstaww Widevinye?",
|
||||||
"settings.option.experimental.unknownPlugin": "Unknyown Souwces",
|
"settings.option.experimental.unknownPlugin": "Unknyown Souwces",
|
||||||
"settings.option.experimental.unknownPlugin.description": "Awwow instawwation of pwugins fwom wepos othew than the Cidew Pwugin Wepositowy",
|
"settings.option.experimental.unknownPlugin.description": "Awwow instawwation of pwugins fwom wepos othew than the Cidew Pwugin Wepositowy",
|
||||||
"settings.option.experimental.compactUI": "Compact UI",
|
"settings.option.experimental.compactUI": "Compact UI",
|
||||||
|
@ -409,5 +414,15 @@
|
||||||
"settings.header.unfinished": "Unfinyished",
|
"settings.header.unfinished": "Unfinyished",
|
||||||
"remote.web.title": "Cidew Wemote",
|
"remote.web.title": "Cidew Wemote",
|
||||||
"remote.web.description": "Scan the QW code to paiw youw phonye up with this Cidew instance",
|
"remote.web.description": "Scan the QW code to paiw youw phonye up with this Cidew instance",
|
||||||
|
"share.platform.twitter.tweet": "Wisten to {{song}} on Appwe Music.\n\n{{song}}\n\n#AppweMusic #Cidew",
|
||||||
|
"share.platform.twitter": "Twittew",
|
||||||
|
"share.platform.facebook": "Facebook",
|
||||||
|
"share.platform.reddit": "Weddit",
|
||||||
|
"share.platform.telegram": "Tewegwam",
|
||||||
|
"share.platform.whatsapp": "WhatsApp",
|
||||||
|
"share.platform.messenger": "Messengew",
|
||||||
|
"share.platform.email": "Emaiw",
|
||||||
|
"share.platform.songLink": "Copy with song.wink",
|
||||||
|
"share.platform.clipboard": "Copy Wink",
|
||||||
"about.thanks": "Majow thanks to the Cidew Cowwective Team and aww of ouw contwibutows."
|
"about.thanks": "Majow thanks to the Cidew Cowwective Team and aww of ouw contwibutows."
|
||||||
}
|
}
|
|
@ -132,8 +132,8 @@
|
||||||
"term.reset": "Reset",
|
"term.reset": "Reset",
|
||||||
"term.tracks": "tracks",
|
"term.tracks": "tracks",
|
||||||
"term.track": {
|
"term.track": {
|
||||||
"one" : "track",
|
"one": "track",
|
||||||
"other" : "tracks"
|
"other": "tracks"
|
||||||
},
|
},
|
||||||
"term.videos": "Videos",
|
"term.videos": "Videos",
|
||||||
"term.menu": "Menu",
|
"term.menu": "Menu",
|
||||||
|
@ -284,6 +284,7 @@
|
||||||
"settings.option.audio.seamlessTransition": "Seamless Audio Transition",
|
"settings.option.audio.seamlessTransition": "Seamless Audio Transition",
|
||||||
"settings.option.audio.enableAdvancedFunctionality": "Enable Advanced Functionality",
|
"settings.option.audio.enableAdvancedFunctionality": "Enable Advanced Functionality",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.description": "Enabling AudioContext functionality will allow for extended audio features like Audio Normalization, Equalizers and Visualizers - however on some systems this may cause stuttering in audio tracks.",
|
"settings.option.audio.enableAdvancedFunctionality.description": "Enabling AudioContext functionality will allow for extended audio features like Audio Normalization, Equalizers and Visualizers - however on some systems this may cause stuttering in audio tracks.",
|
||||||
|
"settings.warn.audio.enableAdvancedFunctionality.lowcores": "Cider thinks your PC cant handle these features. Are you sure you want to continue?",
|
||||||
"settings.option.audio.audioLab": "Cider Audio Lab",
|
"settings.option.audio.audioLab": "Cider Audio Lab",
|
||||||
"settings.option.audio.audioLab.description": "An assortment of in-house developed audio effects for Cider.",
|
"settings.option.audio.audioLab.description": "An assortment of in-house developed audio effects for Cider.",
|
||||||
"settings.warn.audioLab.withoutAF": "AudioContext (Advanced Functionality) is required to enable Cider Audio Laboratory.",
|
"settings.warn.audioLab.withoutAF": "AudioContext (Advanced Functionality) is required to enable Cider Audio Laboratory.",
|
||||||
|
@ -302,6 +303,7 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Aggressive",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Aggressive",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Audio Normalization",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Audio Normalization",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Normalizes peak volume for individual tracks to create a more uniform listening experience.",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Normalizes peak volume for individual tracks to create a more uniform listening experience.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.disabled": "Managed by Audio Lab",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Audio Spatialization",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Audio Spatialization",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Spatialize audio and make audio more 3-dimensional (note: This is not Dolby Atmos)",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Spatialize audio and make audio more 3-dimensional (note: This is not Dolby Atmos)",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Cider Tuned Spatialization",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Cider Tuned Spatialization",
|
||||||
|
@ -379,6 +381,8 @@
|
||||||
"settings.option.debug.openAppData": "Open Cider Folder",
|
"settings.option.debug.openAppData": "Open Cider Folder",
|
||||||
"settings.header.experimental": "Experimental",
|
"settings.header.experimental": "Experimental",
|
||||||
"settings.header.experimental.description": "Adjust the experimental settings for Cider.",
|
"settings.header.experimental.description": "Adjust the experimental settings for Cider.",
|
||||||
|
"settings.option.experimental.reinstallwidevine": "Reinstall WidevineCDM",
|
||||||
|
"settings.option.experimental.reinstallwidevine.confirm": "Are you sure you want to reinstall Widevine?",
|
||||||
"settings.option.experimental.unknownPlugin": "Unknown Sources",
|
"settings.option.experimental.unknownPlugin": "Unknown Sources",
|
||||||
"settings.option.experimental.unknownPlugin.description": "Allow installation of plugins from repos other than the Cider Plugin Repository",
|
"settings.option.experimental.unknownPlugin.description": "Allow installation of plugins from repos other than the Cider Plugin Repository",
|
||||||
"settings.option.experimental.compactUI": "Compact UI",
|
"settings.option.experimental.compactUI": "Compact UI",
|
||||||
|
@ -388,6 +392,7 @@
|
||||||
"settings.option.advanced.playlistTrackMapping.description": "Enables deep scanning of playlists to determine which tracks are in which playlists. Playlist cache build times can increase significantly.",
|
"settings.option.advanced.playlistTrackMapping.description": "Enables deep scanning of playlists to determine which tracks are in which playlists. Playlist cache build times can increase significantly.",
|
||||||
"settings.option.visual.transparent": "Transparent frame",
|
"settings.option.visual.transparent": "Transparent frame",
|
||||||
"settings.option.visual.transparent.description": "Transparent frame (needs Theme Support , requires relaunch)",
|
"settings.option.visual.transparent.description": "Transparent frame (needs Theme Support , requires relaunch)",
|
||||||
|
"settings.header.advanced": "Advanced",
|
||||||
"spatial.notTurnedOn": "Audio Spatialization is disabled. To use, please enable it first.",
|
"spatial.notTurnedOn": "Audio Spatialization is disabled. To use, please enable it first.",
|
||||||
"spatial.spatialProperties": "Spatial Properties",
|
"spatial.spatialProperties": "Spatial Properties",
|
||||||
"spatial.width": "Width",
|
"spatial.width": "Width",
|
||||||
|
@ -410,5 +415,15 @@
|
||||||
"settings.header.unfinished": "Unfinished",
|
"settings.header.unfinished": "Unfinished",
|
||||||
"remote.web.title": "Cider Remote",
|
"remote.web.title": "Cider Remote",
|
||||||
"remote.web.description": "Scan the QR code to pair your phone up with this Cider instance",
|
"remote.web.description": "Scan the QR code to pair your phone up with this Cider instance",
|
||||||
|
"share.platform.twitter.tweet": "Listen to {{song}} on Apple Music.\n\n{{url}}\n\n#AppleMusic #Cider",
|
||||||
|
"share.platform.twitter": "Twitter",
|
||||||
|
"share.platform.facebook": "Facebook",
|
||||||
|
"share.platform.reddit": "Reddit",
|
||||||
|
"share.platform.telegram": "Telegram",
|
||||||
|
"share.platform.whatsapp": "WhatsApp",
|
||||||
|
"share.platform.messenger": "Messenger",
|
||||||
|
"share.platform.email": "Email",
|
||||||
|
"share.platform.songLink": "Copy with song.link",
|
||||||
|
"share.platform.clipboard": "Copy Link",
|
||||||
"about.thanks": "Major thanks to the Cider Collective Team and all of our contributors."
|
"about.thanks": "Major thanks to the Cider Collective Team and all of our contributors."
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,9 +2,9 @@
|
||||||
"i18n.languageName": "Magyar",
|
"i18n.languageName": "Magyar",
|
||||||
"i18n.languageNameEnglish": "Hungarian",
|
"i18n.languageNameEnglish": "Hungarian",
|
||||||
"i18n.category": "main",
|
"i18n.category": "main",
|
||||||
"i18n.authors": "@Greenoliv @Amaru @BenjaminStonawski",
|
"i18n.authors": "@Amaru",
|
||||||
"app.name": "Cider",
|
"app.name": "Cider",
|
||||||
"date.format": "${m} ${d}, ${y}",
|
"date.format": "${y} ${m} ${d}",
|
||||||
"dialog.cancel": "Mégsem",
|
"dialog.cancel": "Mégsem",
|
||||||
"dialog.ok": "OK",
|
"dialog.ok": "OK",
|
||||||
"notification.updatingLibrarySongs": "Zenekönyvtár frissítése...",
|
"notification.updatingLibrarySongs": "Zenekönyvtár frissítése...",
|
||||||
|
@ -12,7 +12,7 @@
|
||||||
"notification.updatingLibraryArtists": "Előadók frissítése...",
|
"notification.updatingLibraryArtists": "Előadók frissítése...",
|
||||||
"term.appleInc": "Apple Inc.",
|
"term.appleInc": "Apple Inc.",
|
||||||
"term.appleMusic": "Apple Music",
|
"term.appleMusic": "Apple Music",
|
||||||
"term.applePodcasts": "Apple Podcastok",
|
"term.applePodcasts": "Apple Podcasts",
|
||||||
"term.itunes": "iTunes",
|
"term.itunes": "iTunes",
|
||||||
"term.github": "GitHub",
|
"term.github": "GitHub",
|
||||||
"term.discord": "Discord",
|
"term.discord": "Discord",
|
||||||
|
@ -23,6 +23,8 @@
|
||||||
"term.about": "Névjegy",
|
"term.about": "Névjegy",
|
||||||
"term.privateSession": "Privát hallgatás",
|
"term.privateSession": "Privát hallgatás",
|
||||||
"term.queue": "Várólista",
|
"term.queue": "Várólista",
|
||||||
|
"term.lyrics": "Dalszöveg",
|
||||||
|
"term.miniplayer": "Kis lejátszó",
|
||||||
"term.history": "Előzmények",
|
"term.history": "Előzmények",
|
||||||
"term.search": "Keresés",
|
"term.search": "Keresés",
|
||||||
"term.library": "Könyvtár",
|
"term.library": "Könyvtár",
|
||||||
|
@ -76,10 +78,10 @@
|
||||||
"term.enabled": "Be",
|
"term.enabled": "Be",
|
||||||
"term.disabled": "Ki",
|
"term.disabled": "Ki",
|
||||||
"term.connect": "Csatlakoztatás",
|
"term.connect": "Csatlakoztatás",
|
||||||
"term.connecting": "Csatlakozás",
|
"term.connecting": "Jóváhagyás ?",
|
||||||
"term.disconnect": "Lecsatlakozatás",
|
"term.disconnect": "Több",
|
||||||
"term.authed": "Hitelesítve",
|
"term.authed": "Hitelesítve",
|
||||||
"term.confirm": "Jóváhagyja?",
|
"term.confirm": "Jóváhagyás ?",
|
||||||
"term.more": "Több",
|
"term.more": "Több",
|
||||||
"term.less": "Kevesebb",
|
"term.less": "Kevesebb",
|
||||||
"term.showMore": "Mutass többet",
|
"term.showMore": "Mutass többet",
|
||||||
|
@ -89,12 +91,26 @@
|
||||||
"term.time.added": "Hozzáadva",
|
"term.time.added": "Hozzáadva",
|
||||||
"term.time.released": "Kiadva",
|
"term.time.released": "Kiadva",
|
||||||
"term.time.updated": "Frissítve",
|
"term.time.updated": "Frissítve",
|
||||||
|
"term.time.days": "nap",
|
||||||
|
"term.time.day": {
|
||||||
|
"one": "nap",
|
||||||
|
"other": "nap"
|
||||||
|
},
|
||||||
"term.time.hours": "óra",
|
"term.time.hours": "óra",
|
||||||
"term.time.hour": "óra",
|
"term.time.hour": {
|
||||||
|
"one": "óra",
|
||||||
|
"other": "óra"
|
||||||
|
},
|
||||||
"term.time.minutes": "perc",
|
"term.time.minutes": "perc",
|
||||||
"term.time.minute": "perc",
|
"term.time.minute": {
|
||||||
|
"one": "perc",
|
||||||
|
"other": "perc"
|
||||||
|
},
|
||||||
"term.time.seconds": "másodperc",
|
"term.time.seconds": "másodperc",
|
||||||
"term.time.second": "másodperc",
|
"term.time.second": {
|
||||||
|
"one": "másodperc",
|
||||||
|
"other": "másodperc"
|
||||||
|
},
|
||||||
"term.fullscreenView": "Teljes képernyős mód",
|
"term.fullscreenView": "Teljes képernyős mód",
|
||||||
"term.defaultView": "Alapértelmezett nézet",
|
"term.defaultView": "Alapértelmezett nézet",
|
||||||
"term.audioSettings": "Hangbeállítások",
|
"term.audioSettings": "Hangbeállítások",
|
||||||
|
@ -103,7 +119,7 @@
|
||||||
"term.recentStations": "Nemrég játszott",
|
"term.recentStations": "Nemrég játszott",
|
||||||
"term.language": "Nyelv",
|
"term.language": "Nyelv",
|
||||||
"term.funLanguages": "Fantázianyelvek",
|
"term.funLanguages": "Fantázianyelvek",
|
||||||
"term.noLyrics": "Betöltés... / Dalszöveg nem található. / Instrumentális.",
|
"term.noLyrics": "Betöltés... / Dalszöveg nem található / Instrumentális",
|
||||||
"term.copyright": "Szerzői jog",
|
"term.copyright": "Szerzői jog",
|
||||||
"term.rightsReserved": "Minden jog fenntartva.",
|
"term.rightsReserved": "Minden jog fenntartva.",
|
||||||
"term.sponsor": "Támogasd a projektet",
|
"term.sponsor": "Támogasd a projektet",
|
||||||
|
@ -112,13 +128,17 @@
|
||||||
"term.socialTeam": "Közösségi csapat",
|
"term.socialTeam": "Közösségi csapat",
|
||||||
"term.socials": "Szociális",
|
"term.socials": "Szociális",
|
||||||
"term.contributors": "Hozzájárulók",
|
"term.contributors": "Hozzájárulók",
|
||||||
"term.equalizer": "Hangszínszabályozó",
|
"term.equalizer": "Hangszínszabályzó",
|
||||||
"term.reset": "Visszaállítás",
|
"term.reset": "Visszaállítás",
|
||||||
"term.tracks": "zeneszám",
|
"term.tracks": "zeneszám",
|
||||||
|
"term.track": {
|
||||||
|
"one" : "zeneszám",
|
||||||
|
"other" : "zeneszám"
|
||||||
|
},
|
||||||
"term.videos": "Videók",
|
"term.videos": "Videók",
|
||||||
"term.menu": "Menü",
|
"term.menu": "Menü",
|
||||||
"term.check": "Ellenőrzés",
|
"term.check": "Ellenőrzés",
|
||||||
"term.aboutArtist": "About {{artistName}}",
|
"term.aboutArtist": "{{artistName}}-ról/ről",
|
||||||
"term.topResult": "Legjobb találatok",
|
"term.topResult": "Legjobb találatok",
|
||||||
"term.sharedPlaylists": "Megosztott lejátszási listák",
|
"term.sharedPlaylists": "Megosztott lejátszási listák",
|
||||||
"term.people": "Profilok",
|
"term.people": "Profilok",
|
||||||
|
@ -135,24 +155,26 @@
|
||||||
"term.curators": "Kurátorok",
|
"term.curators": "Kurátorok",
|
||||||
"term.appleCurators": "Apple Kurátorok",
|
"term.appleCurators": "Apple Kurátorok",
|
||||||
"term.radioShows": "Rádióadások",
|
"term.radioShows": "Rádióadások",
|
||||||
"term.recordLabels": "Record Labels",
|
"term.recordLabels": "Lemezkiadók",
|
||||||
"term.videoExtras": "Videóextrák",
|
"term.videoExtras": "Videóextrák",
|
||||||
"term.top": "Top",
|
"term.top": "Top",
|
||||||
"term.version": "Verzió",
|
"term.version": "Verzió",
|
||||||
"term.noVideos": "Nincs találat.",
|
"term.noVideos": "Nincs találat",
|
||||||
"term.plugin": "Plug-in",
|
"term.plugin": "Plug-in",
|
||||||
"term.pluginMenu": "Plug-in Menü",
|
"term.pluginMenu": "Plug-in Menü",
|
||||||
|
"term.pluginMenu.none": "Nem találhatóak interaktív pluginok",
|
||||||
"term.replay": "Replay",
|
"term.replay": "Replay",
|
||||||
"term.uniqueAlbums": "Unique Albums",
|
"term.uniqueAlbums": "album",
|
||||||
"term.uniqueArtists": "Unique Artists",
|
"term.uniqueArtists": "előadó",
|
||||||
"term.uniqueSongs": "Unique Songs",
|
"term.uniqueSongs": "zeneszám",
|
||||||
"term.topArtists": "Top Artists",
|
"term.topArtists": "Leghallgatottabb előadói",
|
||||||
"term.listenedTo": "Listened to:",
|
"term.listenedTo": "Meghallgatta:",
|
||||||
"term.times": "alkalom",
|
"term.times": "alkalommal",
|
||||||
"term.topAlbums": "Top Albums",
|
"term.topAlbums": "Leghallgatottabb albumok",
|
||||||
"term.plays": "Plays",
|
"term.plays": "lejátszás",
|
||||||
"term.topGenres": "Top Genres",
|
"term.topGenres": "Leghallgatottabb műfajok",
|
||||||
"term.confirmLogout": "Biztosan ki szeretnél jelentkezni?",
|
"term.confirmLogout": "Biztosan ki szeretnél jelentkezni?",
|
||||||
|
"term.creditDesignedBy": "Készítette ${authorUsername}",
|
||||||
"home.title": "Kezdőlap",
|
"home.title": "Kezdőlap",
|
||||||
"home.recentlyPlayed": "Nemrég játszott",
|
"home.recentlyPlayed": "Nemrég játszott",
|
||||||
"home.recentlyAdded": "Nemrég hozzáadott",
|
"home.recentlyAdded": "Nemrég hozzáadott",
|
||||||
|
@ -176,7 +198,7 @@
|
||||||
"action.addToLibrary": "Hozzáadás a Könyvtárhoz",
|
"action.addToLibrary": "Hozzáadás a Könyvtárhoz",
|
||||||
"action.addToLibrary.success": "Hozzáadva a Könyvtárhoz",
|
"action.addToLibrary.success": "Hozzáadva a Könyvtárhoz",
|
||||||
"action.addToLibrary.error": "Hiba a hozzáadáskor.",
|
"action.addToLibrary.error": "Hiba a hozzáadáskor.",
|
||||||
"action.removeFromLibrary": "Törlés a Könytárból",
|
"action.removeFromLibrary": "Törlés a Könyvtárból",
|
||||||
"action.removeFromLibrary.success": "Törölve a Könyvtárból",
|
"action.removeFromLibrary.success": "Törölve a Könyvtárból",
|
||||||
"action.addToQueue": "Hozzáadás a várólistához",
|
"action.addToQueue": "Hozzáadás a várólistához",
|
||||||
"action.addToQueue.success": "Hozzáadva a várólistához",
|
"action.addToQueue.success": "Hozzáadva a várólistához",
|
||||||
|
@ -199,6 +221,8 @@
|
||||||
"action.startRadio": "Állomás létrehozása",
|
"action.startRadio": "Állomás létrehozása",
|
||||||
"action.goToArtist": "Előadó megjelenítése",
|
"action.goToArtist": "Előadó megjelenítése",
|
||||||
"action.goToAlbum": "Album megjelenítése",
|
"action.goToAlbum": "Album megjelenítése",
|
||||||
|
"action.showInPlaylist": "Lejátszási lista megjelenítése",
|
||||||
|
"action.showInAppleMusic": "Megjelenítés az Apple Musicban",
|
||||||
"action.moveToTop": "Mozgatás legfelülre",
|
"action.moveToTop": "Mozgatás legfelülre",
|
||||||
"action.share": "Megosztás",
|
"action.share": "Megosztás",
|
||||||
"action.rename": "Átnevezés",
|
"action.rename": "Átnevezés",
|
||||||
|
@ -207,38 +231,43 @@
|
||||||
"action.dislike": "Kevesebb ilyen javasolása",
|
"action.dislike": "Kevesebb ilyen javasolása",
|
||||||
"action.undoDislike": "A Kevesebb ilyen javasolása visszavonása",
|
"action.undoDislike": "A Kevesebb ilyen javasolása visszavonása",
|
||||||
"action.showWebRemoteQR": "Távirányító",
|
"action.showWebRemoteQR": "Távirányító",
|
||||||
"action.playTracksNext": "${app.selectedMediaItems.length} zenék lejátszása következőnek",
|
"action.playTracksNext": "${app.selectedMediaItems.length} zene lejátszása következőnek",
|
||||||
"action.playTracksLater": "${app.selectedMediaItems.length} zenék lejátszása később",
|
"action.playTracksLater": "${app.selectedMediaItems.length} zene lejátszása később",
|
||||||
"action.removeTracks": "${self.selectedItems.length} zenék eltávolítása a várólistáról",
|
"action.removeTracks": "${self.selectedItems.length} zene eltávolítása a várólistáról",
|
||||||
"action.import": "Importálás",
|
"action.import": "Importálás",
|
||||||
"action.export": "Exportálás",
|
"action.export": "Exportálás",
|
||||||
"action.showAlbum": "Teljes album megjelenítése",
|
"action.showAlbum": "Teljes album megjelenítése",
|
||||||
"action.tray.minimize": "Kicsinyítés a tálcára",
|
"action.tray.minimize": "Kicsinyítés a Tálcára",
|
||||||
"action.tray.quit": "Kilépés",
|
"action.tray.quit": "Bezárás",
|
||||||
"action.tray.show": "Megjelenítés",
|
"action.tray.show": "Megjelenítés",
|
||||||
"action.update": "Frissítés",
|
"action.update": "Frissítés",
|
||||||
"action.install": "Telepítés",
|
"action.install": "Telepítés",
|
||||||
"action.copy": "Másolás",
|
"action.copy": "Másolás",
|
||||||
"action.newpreset": "Új Preset...",
|
"action.newpreset": "Új előbeállítás...",
|
||||||
"action.deletepreset": "Preset törlése",
|
"action.deletepreset": "Előbeállítás törlése",
|
||||||
"action.open": "Megnyitás",
|
"action.open": "Megnyitás",
|
||||||
|
"action.relaunch.confirm": "Biztosan szeretnéd újraindítani a Cidert?",
|
||||||
"settings.header.general": "Általános",
|
"settings.header.general": "Általános",
|
||||||
"settings.header.general.description": "A Cider általános beállításainak módosítása.",
|
"settings.header.general.description": "A Cider általános beállításainak módosítása.",
|
||||||
"settings.option.general.language": "Nyelv",
|
"settings.option.general.language": "Nyelv",
|
||||||
"settings.option.general.resumebehavior": "Resume behavior",
|
"settings.option.general.resumebehavior": "Folytatási viselkedés",
|
||||||
"settings.option.general.resumebehavior.description": "Resume behavior affects how Cider will resume your session when you return to the app.",
|
"settings.option.general.resumebehavior.description": "A folytatási viselkedés a Ciderbe való visszatérésnél történő zene lejátszását változtatja.",
|
||||||
"settings.option.general.resumebehavior.locally": "Locally",
|
"settings.option.general.resumebehavior.locally": "Lokális",
|
||||||
"settings.option.general.resumebehavior.locally.description": "Cider will resume your last session on this machine.",
|
"settings.option.general.resumebehavior.locally.description": "A Cider az ezen az eszközön utoljára játszott zenét fogja folytatni.",
|
||||||
"settings.option.general.resumebehavior.history": "History",
|
"settings.option.general.resumebehavior.history": "Előzmények",
|
||||||
"settings.option.general.resumebehavior.history.description": "Cider will queue the last song from your overall Apple Music history, across devices.",
|
"settings.option.general.resumebehavior.history.description": "A Cider az utolsó zeneszámot fogja lekérni az Apple Music előzményeidből, eszközökön keresztül.",
|
||||||
"settings.option.general.language.main": "Nyelvek",
|
"settings.option.general.language.main": "Nyelvek",
|
||||||
"settings.option.general.language.fun": "Fantázianyelvek",
|
"settings.option.general.language.fun": "Fantázianyelvek",
|
||||||
"settings.option.general.language.unsorted": "Azonosítatlan",
|
"settings.option.general.language.unsorted": "Kategorizálatlan",
|
||||||
"settings.option.general.updateCider": "Cider frissítése",
|
"settings.option.general.updateCider": "Cider frissítése",
|
||||||
"settings.option.general.updateCider.branch": "Verzió kiválasztása",
|
"settings.option.general.updateCider.branch": "Verzió kiválasztása",
|
||||||
"settings.option.general.updateCider.branch.description": "Válaszd ki a Cider melyik verziójára szeretnél frissíteni",
|
"settings.option.general.updateCider.branch.description": "Válaszd ki a Cider melyik verziójára szeretnél frissíteni",
|
||||||
"settings.option.general.updateCider.branch.main": "Normál",
|
"settings.option.general.updateCider.branch.main": "Normál",
|
||||||
"settings.option.general.updateCider.branch.develop": "Fejlesztői",
|
"settings.option.general.updateCider.branch.develop": "Fejlesztői",
|
||||||
|
"settings.notyf.updateCider.update-not-available": "Nem található frissítés",
|
||||||
|
"settings.notyf.updateCider.update-downloaded": "A frissítés le lett töltve, a telepítéshez indítsa újra az alkalmazást",
|
||||||
|
"settings.notyf.updateCider.update-error": "Hiba történt a frissítés közben",
|
||||||
|
"settings.notyf.updateCider.update-timeout": "Időtúllépés történt a frissítés alatt",
|
||||||
"settings.header.audio": "Hang",
|
"settings.header.audio": "Hang",
|
||||||
"settings.header.audio.description": "A Cider hangbeállításainak módosítása.",
|
"settings.header.audio.description": "A Cider hangbeállításainak módosítása.",
|
||||||
"settings.option.audio.volumeStep": "Hangerő lépték",
|
"settings.option.audio.volumeStep": "Hangerő lépték",
|
||||||
|
@ -248,24 +277,24 @@
|
||||||
"settings.header.audio.quality.hireslossless.description": "max. 24-bit/192 kHz sebességen",
|
"settings.header.audio.quality.hireslossless.description": "max. 24-bit/192 kHz sebességen",
|
||||||
"settings.header.audio.quality.lossless": "Veszteségmentes",
|
"settings.header.audio.quality.lossless": "Veszteségmentes",
|
||||||
"settings.header.audio.quality.lossless.description": "max. up to 24-bit/48 kHz sebességen",
|
"settings.header.audio.quality.lossless.description": "max. up to 24-bit/48 kHz sebességen",
|
||||||
"settings.header.audio.quality.high": "High",
|
"settings.header.audio.quality.high": "Magas",
|
||||||
"settings.header.audio.quality.high.description": "256 kbps",
|
"settings.header.audio.quality.high.description": "256 kbps",
|
||||||
"settings.header.audio.quality.standard": "Standard",
|
"settings.header.audio.quality.standard": "Normál",
|
||||||
"settings.header.audio.quality.standard.description": "64 kbps",
|
"settings.header.audio.quality.standard.description": "64 kbps",
|
||||||
"settings.option.audio.seamlessTransition": "Szünetmentes lejátszás",
|
"settings.option.audio.seamlessTransition": "Szünetmentes lejátszás",
|
||||||
"settings.option.audio.enableAdvancedFunctionality": "Haladó funkcionalitás engedélyezése",
|
"settings.option.audio.enableAdvancedFunctionality": "Haladó funkcionalitás engedélyezése",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.description": "Az AudioContext funkció engedélyezése lehetővé teszi a fejlettebb hangfunkciókat, például a Normalizásást, az Equalizereket és a Visualizer funkciókat, azonban egyes számítógépeken ez akadozást okozhat a hangsávokban.",
|
"settings.option.audio.enableAdvancedFunctionality.description": "Az AudioContext funkció engedélyezése lehetővé teszi a fejlettebb hangfunkciókat, például a Normalizásást, az Equalizereket és a Visualizer funkciókat, azonban egyes eszközökön ez akadozást okozhat a hangsávokban.",
|
||||||
"settings.option.audio.audioLab": "Cider Audio Lab",
|
"settings.option.audio.audioLab": "Cider Hangstúdió",
|
||||||
"settings.option.audio.audioLab.description": "An assortment of in-house developed audio effects for Cider.",
|
"settings.option.audio.audioLab.description": "A Ciderhez fejlesztett hangeffektek gyűjteménye.",
|
||||||
"settings.warn.audioLab.withoutAF": "AudioContext (Advanced Functionality) is required to enable Cider Audio Laboratory.",
|
"settings.warn.audioLab.withoutAF": "Az AudioContext (Haladó funkcionalitás) szükséges a Cider Hangstúdió engedélyezéséhez.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmth": "Analog Warmth",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmth": "Analóg Érzet",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmth.description": "Simulates the analog warmth modelled after the Korg Nutube 6P1",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmth.description": "A Korg Nutube 6P1 analóg érzetét szimulálja.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity": "Analog Warmth intensity",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity": "Analóg Érzet erősség",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.description": "Changes the intensity of the Analog Warmth Module processing.",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.description": "Az Analóg Érzet modul hangfeldolgozási erősségét változtatja.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.smooth": "Smooth",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.smooth": "Szokásos",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.warm": "Warm",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.warm": "Nagyobb",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider Adrenaline Processor™️",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider Adrenaline Processor™️",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "Pszichoakusztikus Módosítások amik minden hangot felerősítenek és ütősebbé tesznek",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "Pszichoakusztikus Módosítások amik a veszteségmentes hallgatáshoz közeli élményt imitálnak.",
|
||||||
"settings.warn.audio.enableAdvancedFunctionality.ciderPPE.compatibility": "A CAP nem kompatibilis a Térbeli Hanggal. Kapcsold ki a Térbeli Hangot a folytatáshoz.",
|
"settings.warn.audio.enableAdvancedFunctionality.ciderPPE.compatibility": "A CAP nem kompatibilis a Térbeli Hanggal. Kapcsold ki a Térbeli Hangot a folytatáshoz.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength": "CAP Erősség",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength": "CAP Erősség",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.description": "Megváltoztatja a hangra végzett feldolgozás erősségét. (Az Agresszív mód nemkívánatos eredményeket hozhat!)",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.description": "Megváltoztatja a hangra végzett feldolgozás erősségét. (Az Agresszív mód nemkívánatos eredményeket hozhat!)",
|
||||||
|
@ -274,13 +303,13 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Normalizálás",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Normalizálás",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Normalizálja az egyes zeneszámok hangosabb részeit, hogy egységesebb hallgatási élményt hozzon létre.",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Normalizálja az egyes zeneszámok hangosabb részeit, hogy egységesebb hallgatási élményt hozzon létre.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Térbeli hang",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Térbeli hang",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Térbeli hang és a hang háromdimenziósabbá tétele (Ez nem összekeverendő a Dolby Atmos-szal!)",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "A hangzás háromdimenziósabbá tétele (Ez nem összekeverendő a Dolby Atmos-szal!)",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Cider Tuned Spatialization",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Cider Előhangosított Térbeli Hang",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.description": "Pre-tuned Spatializing Effect, disables the customizable settings of Audio Spatialization. Spatialization must be enabled as a prerequisite.",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.description": "Előre beállított Térbeli hangzás, ami letiltja a testreszabható Térbeli hang beállításokat. A Térbeli hangot be kell kapcsolni az engedélyezéshez.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile": "Cider Spatialization Profile",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile": "Cider Térbeli Hangprofil",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.description": "Changes the Tuning Profile of the Spatialization. (Requires App Restart)",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.description": "Megváltoztatja a Térbeli hang előbeállítás profilját. (Újraindítás szükséges)",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.standard": "Standard",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.standard": "Normál",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.audiophile": "Audiophile",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.audiophile": "Professzionális",
|
||||||
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "A Térbeli Hang nem kompatibilis a CAP-pal. Kapcsold ki a CAP-ot a folytatáshoz.",
|
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "A Térbeli Hang nem kompatibilis a CAP-pal. Kapcsold ki a CAP-ot a folytatáshoz.",
|
||||||
"settings.header.visual": "Vizuális",
|
"settings.header.visual": "Vizuális",
|
||||||
"settings.header.visual.description": "A Cider vizuális beállításainak módosítása.",
|
"settings.header.visual.description": "A Cider vizuális beállításainak módosítása.",
|
||||||
|
@ -290,7 +319,7 @@
|
||||||
"settings.header.visual.windowBackgroundStyle.image": "Kép",
|
"settings.header.visual.windowBackgroundStyle.image": "Kép",
|
||||||
"settings.option.visual.animatedArtwork": "Animált borító",
|
"settings.option.visual.animatedArtwork": "Animált borító",
|
||||||
"settings.header.visual.animatedArtwork.always": "Mindig",
|
"settings.header.visual.animatedArtwork.always": "Mindig",
|
||||||
"settings.header.visual.animatedArtwork.limited": "Oldalakra és speciális bejegyzésekre korlátozva.",
|
"settings.header.visual.animatedArtwork.limited": "Oldalakra és speciális bejegyzésekre korlátozva",
|
||||||
"settings.header.visual.animatedArtwork.disable": "Kikapcsolás mindenhol",
|
"settings.header.visual.animatedArtwork.disable": "Kikapcsolás mindenhol",
|
||||||
"settings.option.visual.animatedArtworkQuality": "Animált borító minősége",
|
"settings.option.visual.animatedArtworkQuality": "Animált borító minősége",
|
||||||
"settings.header.visual.animatedArtworkQuality.low": "Alacsony",
|
"settings.header.visual.animatedArtworkQuality.low": "Alacsony",
|
||||||
|
@ -307,13 +336,26 @@
|
||||||
"settings.option.visual.theme.github.download": "Telepítés GitHub URL-ről",
|
"settings.option.visual.theme.github.download": "Telepítés GitHub URL-ről",
|
||||||
"settings.option.visual.theme.github.explore": "Témaáruház",
|
"settings.option.visual.theme.github.explore": "Témaáruház",
|
||||||
"settings.header.visual.theme.github.page": "Témák a GitHub-ról",
|
"settings.header.visual.theme.github.page": "Témák a GitHub-ról",
|
||||||
"settings.option.visual.theme.github.install.confirm": "Biztos, hogy szeretnéd telepíteni a(z) {{ repo }} témát?",
|
"settings.option.visual.theme.github.install.confirm": "Biztosan szeretnéd telepíteni a(z) {{ repo }} témát?",
|
||||||
"settings.prompt.visual.theme.github.URL": "Add meg a telepítendő téma URL-jét",
|
"settings.prompt.visual.theme.github.URL": "Add meg a telepítendő téma URL-jét",
|
||||||
"settings.notyf.visual.theme.install.success": "Téma sikeresen telepítve",
|
"settings.notyf.visual.theme.install.success": "Téma sikeresen telepítve",
|
||||||
"settings.notyf.visual.theme.install.error": "Sikertelen volt a téma telepítése",
|
"settings.notyf.visual.theme.install.error": "Sikertelen volt a téma telepítése",
|
||||||
|
"settings.header.visual.plugin": "Plugin",
|
||||||
|
"settings.option.visual.plugin.github.download": "Telepítés GitHub URL-ről",
|
||||||
|
"settings.option.visual.plugin.github.explore": "Témaáruház",
|
||||||
|
"settings.header.visual.plugin.github.page": "Témák a GitHub-ról",
|
||||||
|
"settings.option.visual.plugin.github.install.confirm": "Biztosan szeretnéd telepíteni a(z) {{ repo }} témát?",
|
||||||
|
"settings.prompt.visual.plugin.github.URL": "Add meg a telepítendő téma URL-jét",
|
||||||
|
"settings.prompt.visual.plugin.github.success": "Plugin sikeresen telepítve, kattints az OK-ra a Cider újraindításához",
|
||||||
|
"settings.notyf.visual.plugin.install.success": "Plugin sikeresen telepítve",
|
||||||
|
"settings.notyf.visual.plugin.install.error": "Sikertelen volt a plugin telepítése",
|
||||||
"settings.option.visual.theme.default": "Cider",
|
"settings.option.visual.theme.default": "Cider",
|
||||||
"settings.option.visual.theme.dark": "Sötét",
|
"settings.option.visual.theme.dark": "Sötét",
|
||||||
"settings.option.visual.showPersonalInfo": "Személyes adatok mutatása",
|
"settings.option.visual.showPersonalInfo": "Személyes adatok mutatása",
|
||||||
|
"settings.header.window": "Ablak",
|
||||||
|
"settings.header.window.description": "A Cider ablakbeállításainak módosítása.",
|
||||||
|
"settings.option.window.openOnStartup": "Cider megnyitása bejelentkezésnél",
|
||||||
|
"settings.option.window.openOnStartup.hidden": "Megnyitás kis méretben",
|
||||||
"settings.header.lyrics": "Dalszöveg",
|
"settings.header.lyrics": "Dalszöveg",
|
||||||
"settings.header.lyrics.description": "A Cider dalszöveg beállításainak módosítása.",
|
"settings.header.lyrics.description": "A Cider dalszöveg beállításainak módosítása.",
|
||||||
"settings.option.lyrics.enableMusixmatch": "MusixMatch dalszövegek engedélyezése",
|
"settings.option.lyrics.enableMusixmatch": "MusixMatch dalszövegek engedélyezése",
|
||||||
|
@ -323,31 +365,35 @@
|
||||||
"settings.header.connectivity": "Csatlakozások",
|
"settings.header.connectivity": "Csatlakozások",
|
||||||
"settings.header.connectivity.description": "A Cider csatlakozás beállításainak módosítása.",
|
"settings.header.connectivity.description": "A Cider csatlakozás beállításainak módosítása.",
|
||||||
"settings.option.connectivity.discordRPC": "Discord Rich Presence",
|
"settings.option.connectivity.discordRPC": "Discord Rich Presence",
|
||||||
"settings.option.connectivity.playbackNotifications": "Lejátszás értesítések",
|
"settings.option.connectivity.playbackNotifications": "Lejátszási értesítések",
|
||||||
"settings.header.connectivity.discordRPC.cider": "Megjelenítés 'Cider'-ként",
|
"settings.header.connectivity.discordRPC.cider": "Megjelenítés 'Cider'-ként",
|
||||||
"settings.header.connectivity.discordRPC.appleMusic": "Megjelenítés 'Apple Music'-ként",
|
"settings.header.connectivity.discordRPC.appleMusic": "Megjelenítés 'Apple Music'-ként",
|
||||||
"settings.option.connectivity.discordRPC.clearOnPause": "Discord Rich Presence törlése megállításnál",
|
"settings.option.connectivity.discordRPC.clearOnPause": "Discord Rich Presence törlése megállításnál",
|
||||||
"settings.option.connectivity.lastfmScrobble": "LastFM Scrobbling",
|
"settings.option.connectivity.lastfmScrobble": "Last.fm Scrobbling",
|
||||||
"settings.option.connectivity.lastfmScrobble.delay": "LastFM Scrobble Késleltetés (%)",
|
"settings.option.connectivity.lastfmScrobble.delay": "Last.fm Scrobble késleltetés (%)",
|
||||||
"settings.option.connectivity.lastfmScrobble.nowPlaying": "LastFM Now Playing engedélyezése",
|
"settings.option.connectivity.lastfmScrobble.nowPlaying": "Last.fm Now Playing engedélyezése",
|
||||||
"settings.option.connectivity.lastfmScrobble.removeFeatured": "Remove featuring artists from song title (LastFM)",
|
"settings.option.connectivity.lastfmScrobble.removeFeatured": "Közreműködő zenészek eltávolítása a címből (Last.fm)",
|
||||||
"settings.option.connectivity.lastfmScrobble.filterLoop": "Loopolt zeneszám szűrése (LastFM)",
|
"settings.option.connectivity.lastfmScrobble.filterLoop": "Ismételt zeneszám szűrése (Last.fm)",
|
||||||
"settings.header.debug": "Hibakeresés",
|
"settings.header.debug": "Hibaelhárítás",
|
||||||
"settings.option.debug.copy_log": "Napló másolása a vágólapra",
|
"settings.option.debug.copy_log": "Napló másolása a vágólapra",
|
||||||
"settings.option.debug.openAppData": "Cider mappa megnyitása",
|
"settings.option.debug.openAppData": "Cider mappa megnyitása",
|
||||||
"settings.header.experimental": "Kísérleti",
|
"settings.header.experimental": "Kísérleti",
|
||||||
"settings.header.experimental.description": "A Cider kísérleti beállításainak módosítása.",
|
"settings.header.experimental.description": "A Cider kísérleti beállításainak módosítása.",
|
||||||
"settings.option.experimental.unknownPlugin": "Unknown Sources",
|
"settings.option.experimental.unknownPlugin": "Ismeretlen források",
|
||||||
"settings.option.experimental.unknownPlugin.description": "Allow installion of plugins from repos other than the Cider Plugin Repository",
|
"settings.option.experimental.unknownPlugin.description": "Engedélyezi azon pluginok telepítését is, amik nem tartoznak a Cider Plugin Gyűjteménybe, ezáltal lehetséges biztonsági kockázatot jelentenek",
|
||||||
"settings.option.experimental.compactUI": "Kompakt felület",
|
"settings.option.experimental.compactUI": "Kompakt felület",
|
||||||
"settings.option.window.close_button_hide": "A bezárás gomb rejtse el az alkalmazást",
|
"settings.option.window.close_button_hide": "A bezárás gomb rejtse el az alkalmazást",
|
||||||
"settings.option.experimental.inline_playlists": "Inline Playlists and Albums",
|
"settings.option.experimental.inline_playlists": "Ablakon belüli lejátszási listák és albumok",
|
||||||
"spatial.notTurnedOn": "A térbeli hangzás ki van kapcsolva, használatához kapcsolja be.",
|
"settings.option.advanced.playlistTrackMapping": "Lejátszási lista feltérképezés",
|
||||||
|
"settings.option.advanced.playlistTrackMapping.description": "Engedélyezi a lejátszási listák mély beolvasását, ami meg tudja határozni, hogy egy zeneszám melyik lejátszási listákba található. A lejátszási lista gyorsítótár felépítésének időtartalma nagy mértékben megnőhet.",
|
||||||
|
"settings.option.visual.transparent": "Átlátszó keret",
|
||||||
|
"settings.option.visual.transparent.description": "Átlátszó ablakkeret (a Témák támogatása és újraindítás szükséges)",
|
||||||
|
"spatial.notTurnedOn": "A térbeli hang ki van kapcsolva, használatához kapcsolja be.",
|
||||||
"spatial.spatialProperties": "Térbeli hang",
|
"spatial.spatialProperties": "Térbeli hang",
|
||||||
"spatial.width": "Szélesség",
|
"spatial.width": "Szélesség",
|
||||||
"spatial.height": "Magasság",
|
"spatial.height": "Magasság",
|
||||||
"spatial.depth": "Hosszúság",
|
"spatial.depth": "Hosszúság",
|
||||||
"spatial.gain": "Gain",
|
"spatial.gain": "Növelés",
|
||||||
"spatial.roomMaterials": "Szoba felépítése",
|
"spatial.roomMaterials": "Szoba felépítése",
|
||||||
"spatial.roomDimensions": "Szoba méretei",
|
"spatial.roomDimensions": "Szoba méretei",
|
||||||
"spatial.roomPositions": "Szoba pozíciói",
|
"spatial.roomPositions": "Szoba pozíciói",
|
||||||
|
@ -362,7 +408,17 @@
|
||||||
"spatial.listener": "Hallgató",
|
"spatial.listener": "Hallgató",
|
||||||
"spatial.audioSource": "Hangforrás",
|
"spatial.audioSource": "Hangforrás",
|
||||||
"settings.header.unfinished": "Befejezetlen",
|
"settings.header.unfinished": "Befejezetlen",
|
||||||
"remote.web.title": "Cider Remote",
|
"remote.web.title": "Távirányító",
|
||||||
"remote.web.description": "Olvasd be ezt a QR-kódot a telefonoddal, hogy tudd vezérelni a lejátszót.",
|
"remote.web.description": "Olvasd be ezt a QR-kódot a telefonoddal, hogy vezérelni tudd a lejátszót.",
|
||||||
|
"share.platform.twitter.tweet": "Hallgasd meg a(z) {{song}} zenét az Apple Musicon.\n\n{{url}}\n\n#AppleMusic #Cider",
|
||||||
|
"share.platform.twitter": "Twitter",
|
||||||
|
"share.platform.facebook": "Facebook",
|
||||||
|
"share.platform.reddit": "Reddit",
|
||||||
|
"share.platform.telegram": "Telegram",
|
||||||
|
"share.platform.whatsapp": "WhatsApp",
|
||||||
|
"share.platform.messenger": "Messenger",
|
||||||
|
"share.platform.email": "Email",
|
||||||
|
"share.platform.songLink": "song.link URL másolása",
|
||||||
|
"share.platform.clipboard": "Link másolása",
|
||||||
"about.thanks": "Köszönet a Cider Collective csapatának és minden hozzájárulónak."
|
"about.thanks": "Köszönet a Cider Collective csapatának és minden hozzájárulónak."
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,6 +23,8 @@
|
||||||
"term.about": "Tentang",
|
"term.about": "Tentang",
|
||||||
"term.privateSession": "Sesi Pribadi",
|
"term.privateSession": "Sesi Pribadi",
|
||||||
"term.queue": "Antrian",
|
"term.queue": "Antrian",
|
||||||
|
"term.lyrics": "Lirik",
|
||||||
|
"term.miniplayer": "Pemutar Kecil",
|
||||||
"term.history": "Riwayat",
|
"term.history": "Riwayat",
|
||||||
"term.search": "Cari",
|
"term.search": "Cari",
|
||||||
"term.library": "Pustaka",
|
"term.library": "Pustaka",
|
||||||
|
@ -61,6 +63,7 @@
|
||||||
"term.sortBy.genre": "Genre",
|
"term.sortBy.genre": "Genre",
|
||||||
"term.sortBy.releaseDate": "Tanggal Rilis",
|
"term.sortBy.releaseDate": "Tanggal Rilis",
|
||||||
"term.sortBy.duration": "Durasi",
|
"term.sortBy.duration": "Durasi",
|
||||||
|
"term.sortBy.dateAdded": "Tanggal Ditambahkan",
|
||||||
"term.sortOrder": "A-Z",
|
"term.sortOrder": "A-Z",
|
||||||
"term.sortOrder.ascending": "Terkecil",
|
"term.sortOrder.ascending": "Terkecil",
|
||||||
"term.sortOrder.descending": "Terbesar",
|
"term.sortOrder.descending": "Terbesar",
|
||||||
|
@ -84,19 +87,34 @@
|
||||||
"term.showMore": "Tampilkan lebih banyak",
|
"term.showMore": "Tampilkan lebih banyak",
|
||||||
"term.showLess": "Tampilkan lebih sedikit",
|
"term.showLess": "Tampilkan lebih sedikit",
|
||||||
"term.topSongs": "Lagu Teratas",
|
"term.topSongs": "Lagu Teratas",
|
||||||
"term.latestReleases": "Rilis Terbaru",
|
"term.latestReleases": "Rilisan Terbaru",
|
||||||
"term.time.added": "Ditambahkan",
|
"term.time.added": "Ditambahkan",
|
||||||
"term.time.released": "Dirilis",
|
"term.time.released": "Dirilis",
|
||||||
"term.time.updated": "Diperbarui",
|
"term.time.updated": "Diperbarui",
|
||||||
|
"term.time.days": "hari",
|
||||||
|
"term.time.day": {
|
||||||
|
"one": "hari",
|
||||||
|
"other": "hari"
|
||||||
|
},
|
||||||
"term.time.hours": "jam",
|
"term.time.hours": "jam",
|
||||||
"term.time.hour": "jam",
|
"term.time.hour": {
|
||||||
|
"one": "jam",
|
||||||
|
"other": "jam"
|
||||||
|
},
|
||||||
"term.time.minutes": "menit",
|
"term.time.minutes": "menit",
|
||||||
"term.time.minute": "menit",
|
"term.time.minute": {
|
||||||
|
"one": "menit",
|
||||||
|
"other": "menit"
|
||||||
|
},
|
||||||
"term.time.seconds": "detik",
|
"term.time.seconds": "detik",
|
||||||
"term.time.second": "detik",
|
"term.time.second": {
|
||||||
|
"one": "detik",
|
||||||
|
"other": "detik"
|
||||||
|
},
|
||||||
"term.fullscreenView": "Mode Layar Penuh",
|
"term.fullscreenView": "Mode Layar Penuh",
|
||||||
"term.defaultView": "Mode Default",
|
"term.defaultView": "Mode Default",
|
||||||
"term.audioSettings": "Pengaturan Audio",
|
"term.audioSettings": "Pengaturan Audio",
|
||||||
|
"term.audioControls": "Kontrol Volume",
|
||||||
"term.clearAll": "Bersihkan Semua",
|
"term.clearAll": "Bersihkan Semua",
|
||||||
"term.recentStations": "Stasiun Terbaru",
|
"term.recentStations": "Stasiun Terbaru",
|
||||||
"term.language": "Bahasa",
|
"term.language": "Bahasa",
|
||||||
|
@ -113,6 +131,10 @@
|
||||||
"term.equalizer": "Equalizer",
|
"term.equalizer": "Equalizer",
|
||||||
"term.reset": "Atur Ulang",
|
"term.reset": "Atur Ulang",
|
||||||
"term.tracks": "lagu",
|
"term.tracks": "lagu",
|
||||||
|
"term.track": {
|
||||||
|
"one" : "lagu",
|
||||||
|
"other" : "lagu"
|
||||||
|
},
|
||||||
"term.videos": "Video",
|
"term.videos": "Video",
|
||||||
"term.menu": "Menu",
|
"term.menu": "Menu",
|
||||||
"term.check": "Cek",
|
"term.check": "Cek",
|
||||||
|
@ -124,6 +146,10 @@
|
||||||
"term.addedpreset": "Preset Ditambahkan",
|
"term.addedpreset": "Preset Ditambahkan",
|
||||||
"term.deletepreset.warn": "Yakin ingin menghapus preset ini?",
|
"term.deletepreset.warn": "Yakin ingin menghapus preset ini?",
|
||||||
"term.deletedpreset": "Preset dihapus",
|
"term.deletedpreset": "Preset dihapus",
|
||||||
|
"term.defaultPresets": "Preset Default",
|
||||||
|
"term.userPresets": "Presets Pengguna",
|
||||||
|
"term.requestError": "Ada masalah dengan permintaan.",
|
||||||
|
"term.song.link.generate": "Mendapatkan link bagi song.link...",
|
||||||
"term.musicVideos": "Video Musik",
|
"term.musicVideos": "Video Musik",
|
||||||
"term.stations": "Stasiun",
|
"term.stations": "Stasiun",
|
||||||
"term.curators": "Kurator",
|
"term.curators": "Kurator",
|
||||||
|
@ -132,6 +158,23 @@
|
||||||
"term.recordLabels": "Label Rekaman",
|
"term.recordLabels": "Label Rekaman",
|
||||||
"term.videoExtras": "Bonus Video",
|
"term.videoExtras": "Bonus Video",
|
||||||
"term.top": "Atas",
|
"term.top": "Atas",
|
||||||
|
"term.version": "Versi",
|
||||||
|
"term.noVideos": "Video tidak ditemukan.",
|
||||||
|
"term.plugin": "Plug-in",
|
||||||
|
"term.pluginMenu": "Menu Plug-in",
|
||||||
|
"term.pluginMenu.none": "Tidak ada plugin interaktif",
|
||||||
|
"term.replay": "Ulangi",
|
||||||
|
"term.uniqueAlbums": "Album Spesial",
|
||||||
|
"term.uniqueArtists": "Artis Spesial",
|
||||||
|
"term.uniqueSongs": "Lagu Spesial",
|
||||||
|
"term.topArtists": "Artis Teratas",
|
||||||
|
"term.listenedTo": "Mendengarkan:",
|
||||||
|
"term.times": "kali",
|
||||||
|
"term.topAlbums": "Album Teratas",
|
||||||
|
"term.plays": "Dimainkan",
|
||||||
|
"term.topGenres": "Genre Teratas",
|
||||||
|
"term.confirmLogout": "Apakah Anda yakin ingin keluar??",
|
||||||
|
"term.creditDesignedBy": "Dirancang oleh ${authorUsername}",
|
||||||
"home.title": "Beranda",
|
"home.title": "Beranda",
|
||||||
"home.recentlyPlayed": "Baru Dimainkan",
|
"home.recentlyPlayed": "Baru Dimainkan",
|
||||||
"home.recentlyAdded": "Baru Ditambahkan",
|
"home.recentlyAdded": "Baru Ditambahkan",
|
||||||
|
@ -178,7 +221,9 @@
|
||||||
"action.startRadio": "Mulai Radio",
|
"action.startRadio": "Mulai Radio",
|
||||||
"action.goToArtist": "Lihat Halaman Artis",
|
"action.goToArtist": "Lihat Halaman Artis",
|
||||||
"action.goToAlbum": "Lihat Halaman Album",
|
"action.goToAlbum": "Lihat Halaman Album",
|
||||||
"action.moveToTop": "Pindah ke Atas",
|
"action.showInPlaylist": "Tampilkan di Playlist",
|
||||||
|
"action.showInAppleMusic": "Tampilkan di Apple Music",
|
||||||
|
"action.moveToTop": "Keluar dari Folder",
|
||||||
"action.share": "Bagikan",
|
"action.share": "Bagikan",
|
||||||
"action.rename": "Ubah Nama",
|
"action.rename": "Ubah Nama",
|
||||||
"action.love": "Suka",
|
"action.love": "Suka",
|
||||||
|
@ -196,12 +241,21 @@
|
||||||
"action.tray.quit": "Keluar",
|
"action.tray.quit": "Keluar",
|
||||||
"action.tray.show": "Tampilkan",
|
"action.tray.show": "Tampilkan",
|
||||||
"action.update": "Perbarui",
|
"action.update": "Perbarui",
|
||||||
|
"action.install": "Pasang",
|
||||||
"action.copy": "Salin",
|
"action.copy": "Salin",
|
||||||
"action.newpreset": "Preset Baru...",
|
"action.newpreset": "Preset Baru...",
|
||||||
"action.deletepreset": "Hapus Preset",
|
"action.deletepreset": "Hapus Preset",
|
||||||
|
"action.open": "Buka",
|
||||||
|
"action.relaunch.confirm": "Apakah Anda ingin memulai ulang Cider?",
|
||||||
"settings.header.general": "Umum",
|
"settings.header.general": "Umum",
|
||||||
"settings.header.general.description": "Sesuaikan pengaturan umum untuk Cider.",
|
"settings.header.general.description": "Sesuaikan pengaturan umum untuk Cider.",
|
||||||
"settings.option.general.language": "Bahasa",
|
"settings.option.general.language": "Bahasa",
|
||||||
|
"settings.option.general.resumebehavior": "Aturan Resume",
|
||||||
|
"settings.option.general.resumebehavior.description": "Aturan resume akan mempengaruhi bagaimana Cider akan melanjutkan sesi Anda ketika memulai Cider.",
|
||||||
|
"settings.option.general.resumebehavior.locally": "Lokal",
|
||||||
|
"settings.option.general.resumebehavior.locally.description": "Cider akan melanjutkan sesi terakhir Anda di perangkat ini.",
|
||||||
|
"settings.option.general.resumebehavior.history": "Riwayat",
|
||||||
|
"settings.option.general.resumebehavior.history.description": "Cider akan menambahkan lagu terakhir dari keseluruhan riwayat Apple Music Anda ke dalam antrian di seluruh perangkat.",
|
||||||
"settings.option.general.language.main": "Bahasa",
|
"settings.option.general.language.main": "Bahasa",
|
||||||
"settings.option.general.language.fun": "Bahasa Candaan",
|
"settings.option.general.language.fun": "Bahasa Candaan",
|
||||||
"settings.option.general.language.unsorted": "Tidak disortir",
|
"settings.option.general.language.unsorted": "Tidak disortir",
|
||||||
|
@ -210,8 +264,14 @@
|
||||||
"settings.option.general.updateCider.branch.description": "Pilih branch untuk memperbarui Cider",
|
"settings.option.general.updateCider.branch.description": "Pilih branch untuk memperbarui Cider",
|
||||||
"settings.option.general.updateCider.branch.main": "Stable",
|
"settings.option.general.updateCider.branch.main": "Stable",
|
||||||
"settings.option.general.updateCider.branch.develop": "Development",
|
"settings.option.general.updateCider.branch.develop": "Development",
|
||||||
|
"settings.notyf.updateCider.update-not-available": "Tidak ada pembaruan tersedia",
|
||||||
|
"settings.notyf.updateCider.update-downloaded": "Pembaruan sudah didownload, mulai ulang untuk menginstall pembaruan",
|
||||||
|
"settings.notyf.updateCider.update-error": "Terjadi kesalahan saat memperbarui Cider",
|
||||||
|
"settings.notyf.updateCider.update-timeout": "Waktu pembaruan habis",
|
||||||
"settings.header.audio": "Audio",
|
"settings.header.audio": "Audio",
|
||||||
"settings.header.audio.description": "Sesuaikan pengaturan audio untuk Cider.",
|
"settings.header.audio.description": "Sesuaikan pengaturan audio untuk Cider.",
|
||||||
|
"settings.option.audio.volumeStep": "Jangkah Volume",
|
||||||
|
"settings.option.audio.maxVolume": "Volume Maksimal",
|
||||||
"settings.option.audio.quality": "Kualitas Audio",
|
"settings.option.audio.quality": "Kualitas Audio",
|
||||||
"settings.header.audio.quality.hireslossless": "Hi-Res Lossless",
|
"settings.header.audio.quality.hireslossless": "Hi-Res Lossless",
|
||||||
"settings.header.audio.quality.hireslossless.description": "sampai dari 24-bit/192 kHz",
|
"settings.header.audio.quality.hireslossless.description": "sampai dari 24-bit/192 kHz",
|
||||||
|
@ -224,16 +284,34 @@
|
||||||
"settings.option.audio.seamlessTransition": "Transisi Audio Mulus",
|
"settings.option.audio.seamlessTransition": "Transisi Audio Mulus",
|
||||||
"settings.option.audio.enableAdvancedFunctionality": "Aktifkan Fungsi Lanjutan",
|
"settings.option.audio.enableAdvancedFunctionality": "Aktifkan Fungsi Lanjutan",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.description": "Mengaktifkan fungsionalitas AudioContext memungkinkan fitur audio lanjutan seperti Normalisasi Audio, Equalizer dan Visualizer. Namun pada beberapa perangkat dapat menyebabkan tersendatnya audio.",
|
"settings.option.audio.enableAdvancedFunctionality.description": "Mengaktifkan fungsionalitas AudioContext memungkinkan fitur audio lanjutan seperti Normalisasi Audio, Equalizer dan Visualizer. Namun pada beberapa perangkat dapat menyebabkan tersendatnya audio.",
|
||||||
|
"settings.option.audio.audioLab": "Lab Audio Cider",
|
||||||
|
"settings.option.audio.audioLab.description": "Macam-macam efek audio yang dikembangkan sendiri untuk Cider.",
|
||||||
|
"settings.warn.audioLab.withoutAF": "AudioContext (Fungsi Lanjutan) perlu diaktifkan untuk menggunakan Lab Audio Cider.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmth": "Analog Warmth",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmth.description": "Mensimulasikan kehangatan analog yang dimodelkan setelah Korg Nutube 6P1",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity": "Analog Warmth intensity",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.description": "Mengubah intensitas pemrosesan modul Analog Warmth.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.smooth": "Halus",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.warm": "Hangat",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider Adrenaline Processor™️",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Cider Adrenaline Processor™️",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "Peningkatan Psikoakustik yang membuat semuanya terdengar lebih jelas dan lebih hidup.",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "Peningkatan Psikoakustik yang membuat semuanya terdengar lebih jelas dan lebih hidup.",
|
||||||
|
"settings.warn.audio.enableAdvancedFunctionality.ciderPPE.compatibility": "CAP tidak cocok dengan Spatialisasi. Matikan Spasialisasi untuk menggunakan.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength": "Kekuatan CAP",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength": "Kekuatan CAP",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.description": "Mengubah kekuatan pemrosesan yang dilakukan pada audio. (Agresif dapat menghasilkan hasil yang tidak diinginkan)",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.description": "Mengubah kekuatan pemrosesan yang dilakukan pada audio. (Agresif dapat menghasilkan hasil yang tidak diinginkan)",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.standard": "Standar",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.standard": "Standar",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Agresif",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Agresif",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Normalisasi Audio",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Normalisasi Audio",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Menormalkan puncak volume untuk masing-masing lagu demi menciptakan pengalaman mendengarkan yang lebih seragam.",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Menormalkan puncak volume untuk masing-masing lagu demi menciptakan pengalaman mendengarkan yang lebih seragam.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.disabled": "Diatar oleh Lab Audio",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Spasialisasi Audio",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Spasialisasi Audio",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Atur ruang audio dan buat audio lebih 3 dimensi (NB: Bukan Dolby Atmos)",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Atur ruang audio dan buat audio lebih 3 dimensi (NB: Bukan Dolby Atmos)",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Spasialisasi oleh Cider",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.description": "Efek Spasialisasi yang sudah diatur. Untuk menggunakannya, matikan pengaturan custom Spasialisasi Audio dan pastikan Spasialisasi Audio sudah aktif.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile": "Profil Spasialisasi Cider",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.description": "Mengubah Profil Tuning Spasialisasi. (Memerlukan Restart Aplikasi)",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.standard": "Standar",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization.profile.audiophile": "Audiophile",
|
||||||
|
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "Spatialization tidak cocok dengan CAP. Matikan CAP untuk menggunakan.",
|
||||||
"settings.header.visual": "Visual",
|
"settings.header.visual": "Visual",
|
||||||
"settings.header.visual.description": "Sesuaikan pengaturan visual untuk Cider.",
|
"settings.header.visual.description": "Sesuaikan pengaturan visual untuk Cider.",
|
||||||
"settings.option.visual.windowBackgroundStyle": "Gaya Latar Belakang Jendela",
|
"settings.option.visual.windowBackgroundStyle": "Gaya Latar Belakang Jendela",
|
||||||
|
@ -256,10 +334,30 @@
|
||||||
"settings.header.visual.hardwareAcceleration.default": "Default",
|
"settings.header.visual.hardwareAcceleration.default": "Default",
|
||||||
"settings.header.visual.hardwareAcceleration.webGPU": "WebGPU",
|
"settings.header.visual.hardwareAcceleration.webGPU": "WebGPU",
|
||||||
"settings.header.visual.theme": "Tema",
|
"settings.header.visual.theme": "Tema",
|
||||||
|
"settings.option.visual.theme.github.download": "Pasang dari URL GitHub",
|
||||||
|
"settings.option.visual.theme.github.explore": "Jelajahi Tema di GitHub",
|
||||||
|
"settings.header.visual.theme.github.page": "Tema dari GitHub",
|
||||||
|
"settings.option.visual.theme.github.install.confirm": "Apakah anda yakin untuk memasang {{ repo }}?",
|
||||||
|
"settings.prompt.visual.theme.github.URL": "Masukan URL tema yang ingin Anda pasang",
|
||||||
|
"settings.notyf.visual.theme.install.success": "Tema berhasil dipasang",
|
||||||
|
"settings.notyf.visual.theme.install.error": "Pemasangan tema gagal",
|
||||||
|
"settings.header.visual.plugin": "Plugin",
|
||||||
|
"settings.option.visual.plugin.github.download": "Pasang dari URL GitHub",
|
||||||
|
"settings.option.visual.plugin.github.explore": "Jelajahi Plugin di GitHub",
|
||||||
|
"settings.header.visual.plugin.github.page": "Plugins from GitHub",
|
||||||
|
"settings.option.visual.plugin.github.install.confirm": "Apakah anda yakin untuk memasang {{ repo }}?",
|
||||||
|
"settings.prompt.visual.plugin.github.URL": "Masukan URL plugin yang ingin Anda pasang",
|
||||||
|
"settings.prompt.visual.plugin.github.success": "Plugin berhasil dipasang, Tekan OK untuk memulai ulang Cider",
|
||||||
|
"settings.notyf.visual.plugin.install.success": "Plugin berhasil dipasang",
|
||||||
|
"settings.notyf.visual.plugin.install.error": "Plugin gagal dipasang",
|
||||||
"settings.option.visual.theme.default": "Cider",
|
"settings.option.visual.theme.default": "Cider",
|
||||||
"settings.option.visual.theme.dark": "Gelap",
|
"settings.option.visual.theme.dark": "Gelap",
|
||||||
"settings.option.visual.showPersonalInfo": "Tampilkan Info Pribadi",
|
"settings.option.visual.showPersonalInfo": "Tampilkan Info Pribadi",
|
||||||
"settings.header.lyrics": "Lyrics",
|
"settings.header.window": "Jendela",
|
||||||
|
"settings.header.window.description": "Atur pengaturan jendela pada Cider.",
|
||||||
|
"settings.option.window.openOnStartup": "Buka Cider Ketika Perangkat Dinyalakan",
|
||||||
|
"settings.option.window.openOnStartup.hidden": "Buka dalam mode tersembunyi",
|
||||||
|
"settings.header.lyrics": "Lirik",
|
||||||
"settings.header.lyrics.description": "Sesuaikan pengaturan lirik untuk Cider.",
|
"settings.header.lyrics.description": "Sesuaikan pengaturan lirik untuk Cider.",
|
||||||
"settings.option.lyrics.enableMusixmatch": "Aktifkan Lirik Musixmatch",
|
"settings.option.lyrics.enableMusixmatch": "Aktifkan Lirik Musixmatch",
|
||||||
"settings.option.lyrics.enableMusixmatchKaraoke": "Aktifkan Mode Karaoke (khusus Musixmatch)",
|
"settings.option.lyrics.enableMusixmatchKaraoke": "Aktifkan Mode Karaoke (khusus Musixmatch)",
|
||||||
|
@ -271,18 +369,26 @@
|
||||||
"settings.option.connectivity.playbackNotifications": "Pemberitahuan Pemutaran",
|
"settings.option.connectivity.playbackNotifications": "Pemberitahuan Pemutaran",
|
||||||
"settings.header.connectivity.discordRPC.cider": "Tampilkan sebagai 'Cider'",
|
"settings.header.connectivity.discordRPC.cider": "Tampilkan sebagai 'Cider'",
|
||||||
"settings.header.connectivity.discordRPC.appleMusic": "Tampilkan sebagai 'Apple Music'",
|
"settings.header.connectivity.discordRPC.appleMusic": "Tampilkan sebagai 'Apple Music'",
|
||||||
"settings.option.connectivity.discordRPC.clearOnPause": "Sembunyikan Discord Rich Presence saat dijeda",
|
"settings.option.connectivity.discordRPC.clearOnPause": "Sembunyikan Discord Rich Presence Saat Dijeda",
|
||||||
"settings.option.connectivity.lastfmScrobble": "Last.fm Scrobbling",
|
"settings.option.connectivity.lastfmScrobble": "Last.fm Scrobbling",
|
||||||
"settings.option.connectivity.lastfmScrobble.delay": "Delay Last.fm Scrobble (%)",
|
"settings.option.connectivity.lastfmScrobble.delay": "Delay Last.fm Scrobble (%)",
|
||||||
"settings.option.connectivity.lastfmScrobble.nowPlaying": "Aktifkan Last.fm Now Playing",
|
"settings.option.connectivity.lastfmScrobble.nowPlaying": "Aktifkan Last.fm Now Playing",
|
||||||
"settings.option.connectivity.lastfmScrobble.removeFeatured": "Hapus featuring artist dari judul lagu (Last.fm)",
|
"settings.option.connectivity.lastfmScrobble.removeFeatured": "Hapus featuring artist dari judul lagu (Last.fm)",
|
||||||
"settings.option.connectivity.lastfmScrobble.filterLoop": "Filter lagu yang diulang (Last.fm)",
|
"settings.option.connectivity.lastfmScrobble.filterLoop": "Filter lagu yang diulang (Last.fm)",
|
||||||
|
"settings.header.debug": "Debug",
|
||||||
|
"settings.option.debug.copy_log": "Salin logs ke clipboard",
|
||||||
|
"settings.option.debug.openAppData": "Buka Folder Cider",
|
||||||
"settings.header.experimental": "Eksperimental",
|
"settings.header.experimental": "Eksperimental",
|
||||||
"settings.header.experimental.description": "Sesuaikan pengaturan eksperimental untuk Cider.",
|
"settings.header.experimental.description": "Sesuaikan pengaturan eksperimental untuk Cider.",
|
||||||
|
"settings.option.experimental.unknownPlugin": "Sumber Tidak Diketahui",
|
||||||
|
"settings.option.experimental.unknownPlugin.description": "Izinkan pemasangan plugin dari repo selain Cider Plugin Repository",
|
||||||
"settings.option.experimental.compactUI": "UI Kompak",
|
"settings.option.experimental.compactUI": "UI Kompak",
|
||||||
"settings.option.window.close_button_hide": "Tombol Tutup Menyembunyikan Aplikasi",
|
"settings.option.window.close_button_hide": "Tombol Tutup Menyembunyikan Aplikasi",
|
||||||
"settings.option.experimental.copy_log": "Salin log ke clipboard",
|
|
||||||
"settings.option.experimental.inline_playlists": "Playlist dan Album Sebaris",
|
"settings.option.experimental.inline_playlists": "Playlist dan Album Sebaris",
|
||||||
|
"settings.option.advanced.playlistTrackMapping": "Pemetaan Lagu Playlist",
|
||||||
|
"settings.option.advanced.playlistTrackMapping.description": "Mengaktifkan pemindaian daftar putar yang mendalam untuk menentukan trek mana yang ada di daftar putar. Waktu pembuatan cache daftar putar dapat meningkat secara signifikan.",
|
||||||
|
"settings.option.visual.transparent": "Frame transparan",
|
||||||
|
"settings.option.visual.transparent.description": "Frame transparan (membutuhkan tema yang mendukung, membutuhkan dibuka ulang)",
|
||||||
"spatial.notTurnedOn": "Spasialisasi Audio dinonaktifkan. Untuk menggunakan, aktifkan terlebih dahulu.",
|
"spatial.notTurnedOn": "Spasialisasi Audio dinonaktifkan. Untuk menggunakan, aktifkan terlebih dahulu.",
|
||||||
"spatial.spatialProperties": "Spatial Properties",
|
"spatial.spatialProperties": "Spatial Properties",
|
||||||
"spatial.width": "Lebar",
|
"spatial.width": "Lebar",
|
||||||
|
|
|
@ -132,8 +132,8 @@
|
||||||
"term.reset": "Reset",
|
"term.reset": "Reset",
|
||||||
"term.tracks": "tracks",
|
"term.tracks": "tracks",
|
||||||
"term.track": {
|
"term.track": {
|
||||||
"one" : "track",
|
"one": "track",
|
||||||
"other" : "tracks"
|
"other": "tracks"
|
||||||
},
|
},
|
||||||
"term.videos": "Videos",
|
"term.videos": "Videos",
|
||||||
"term.menu": "Menu",
|
"term.menu": "Menu",
|
||||||
|
@ -284,6 +284,7 @@
|
||||||
"settings.option.audio.seamlessTransition": "Seamless Audio Transition",
|
"settings.option.audio.seamlessTransition": "Seamless Audio Transition",
|
||||||
"settings.option.audio.enableAdvancedFunctionality": "Enable Advanced Functionality",
|
"settings.option.audio.enableAdvancedFunctionality": "Enable Advanced Functionality",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.description": "Enabling AudioContext functionality will allow for extended audio features like Audio Normalization, Equalizers and Visualizers - however on some systems this may cause stuttering in audio tracks.",
|
"settings.option.audio.enableAdvancedFunctionality.description": "Enabling AudioContext functionality will allow for extended audio features like Audio Normalization, Equalizers and Visualizers - however on some systems this may cause stuttering in audio tracks.",
|
||||||
|
"settings.warn.audio.enableAdvancedFunctionality.lowcores": "Cider thinks your PC cant handle these features. Are you sure you want to continue?",
|
||||||
"settings.option.audio.audioLab": "Cider Audio Lab",
|
"settings.option.audio.audioLab": "Cider Audio Lab",
|
||||||
"settings.option.audio.audioLab.description": "An assortment of in-house developed audio effects for Cider.",
|
"settings.option.audio.audioLab.description": "An assortment of in-house developed audio effects for Cider.",
|
||||||
"settings.warn.audioLab.withoutAF": "AudioContext (Advanced Functionality) is required to enable Cider Audio Laboratory.",
|
"settings.warn.audioLab.withoutAF": "AudioContext (Advanced Functionality) is required to enable Cider Audio Laboratory.",
|
||||||
|
@ -302,6 +303,7 @@
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Aggressive",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Aggressive",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Audio Normalization",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Audio Normalization",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Normalizes peak volume for individual tracks to create a more uniform listening experience.",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Normalizes peak volume for individual tracks to create a more uniform listening experience.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.disabled": "Managed by Audio Lab",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Audio Spatialization",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Audio Spatialization",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Spatialize audio and make audio more 3-dimensional (note: This is not Dolby Atmos)",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Spatialize audio and make audio more 3-dimensional (note: This is not Dolby Atmos)",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Cider Tuned Spatialization",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Cider Tuned Spatialization",
|
||||||
|
@ -379,6 +381,8 @@
|
||||||
"settings.option.debug.openAppData": "Open Cider Folder",
|
"settings.option.debug.openAppData": "Open Cider Folder",
|
||||||
"settings.header.experimental": "Experimental",
|
"settings.header.experimental": "Experimental",
|
||||||
"settings.header.experimental.description": "Adjust the experimental settings for Cider.",
|
"settings.header.experimental.description": "Adjust the experimental settings for Cider.",
|
||||||
|
"settings.option.experimental.reinstallwidevine": "Reinstall WidevineCDM",
|
||||||
|
"settings.option.experimental.reinstallwidevine.confirm": "Are you sure you want to reinstall Widevine?",
|
||||||
"settings.option.experimental.unknownPlugin": "Unknown Sources",
|
"settings.option.experimental.unknownPlugin": "Unknown Sources",
|
||||||
"settings.option.experimental.unknownPlugin.description": "Allow installation of plugins from repos other than the Cider Plugin Repository",
|
"settings.option.experimental.unknownPlugin.description": "Allow installation of plugins from repos other than the Cider Plugin Repository",
|
||||||
"settings.option.experimental.compactUI": "Compact UI",
|
"settings.option.experimental.compactUI": "Compact UI",
|
||||||
|
@ -388,6 +392,7 @@
|
||||||
"settings.option.advanced.playlistTrackMapping.description": "Enables deep scanning of playlists to determine which tracks are in which playlists. Playlist cache build times can increase significantly.",
|
"settings.option.advanced.playlistTrackMapping.description": "Enables deep scanning of playlists to determine which tracks are in which playlists. Playlist cache build times can increase significantly.",
|
||||||
"settings.option.visual.transparent": "Transparent frame",
|
"settings.option.visual.transparent": "Transparent frame",
|
||||||
"settings.option.visual.transparent.description": "Transparent frame (needs Theme Support , requires relaunch)",
|
"settings.option.visual.transparent.description": "Transparent frame (needs Theme Support , requires relaunch)",
|
||||||
|
"settings.header.advanced": "Advanced",
|
||||||
"spatial.notTurnedOn": "Audio Spatialization is disabled. To use, please enable it first.",
|
"spatial.notTurnedOn": "Audio Spatialization is disabled. To use, please enable it first.",
|
||||||
"spatial.spatialProperties": "Spatial Properties",
|
"spatial.spatialProperties": "Spatial Properties",
|
||||||
"spatial.width": "Width",
|
"spatial.width": "Width",
|
||||||
|
|
|
@ -22,6 +22,8 @@
|
||||||
"term.about": "關於",
|
"term.about": "關於",
|
||||||
"term.privateSession": "私人時段",
|
"term.privateSession": "私人時段",
|
||||||
"term.queue": "待播清單",
|
"term.queue": "待播清單",
|
||||||
|
"term.lyrics": "歌詞",
|
||||||
|
"term.miniplayer": "迷你播放模式",
|
||||||
"term.history": "播放歷史",
|
"term.history": "播放歷史",
|
||||||
"term.search": "搜尋",
|
"term.search": "搜尋",
|
||||||
"term.library": "資料庫",
|
"term.library": "資料庫",
|
||||||
|
@ -125,6 +127,7 @@
|
||||||
"term.requestError": "請求發生錯誤。",
|
"term.requestError": "請求發生錯誤。",
|
||||||
"term.song.link.generate": "正在取得 song.link 的分享網址...",
|
"term.song.link.generate": "正在取得 song.link 的分享網址...",
|
||||||
"term.version": "版本",
|
"term.version": "版本",
|
||||||
|
"term.creditDesignedBy": "由 ${authorUsername} 設計",
|
||||||
"home.title": "首頁",
|
"home.title": "首頁",
|
||||||
"home.recentlyPlayed": "最近播放",
|
"home.recentlyPlayed": "最近播放",
|
||||||
"home.recentlyAdded": "最近加入",
|
"home.recentlyAdded": "最近加入",
|
||||||
|
@ -170,6 +173,7 @@
|
||||||
"action.startRadio": "建立電台",
|
"action.startRadio": "建立電台",
|
||||||
"action.goToArtist": "前往藝人",
|
"action.goToArtist": "前往藝人",
|
||||||
"action.goToAlbum": "前往專輯",
|
"action.goToAlbum": "前往專輯",
|
||||||
|
"action.showInAppleMusic": "在 Apple Music 中顯示",
|
||||||
"action.moveToTop": "移至頂端",
|
"action.moveToTop": "移至頂端",
|
||||||
"action.share": "分享歌曲",
|
"action.share": "分享歌曲",
|
||||||
"action.rename": "重新命名",
|
"action.rename": "重新命名",
|
||||||
|
@ -299,9 +303,9 @@
|
||||||
"settings.header.lyrics": "歌詞",
|
"settings.header.lyrics": "歌詞",
|
||||||
"settings.header.lyrics.description": "調整 Cider 的歌詞設定",
|
"settings.header.lyrics.description": "調整 Cider 的歌詞設定",
|
||||||
"settings.option.lyrics.enableMusixmatch": "開啟 Musixmatch 歌詞",
|
"settings.option.lyrics.enableMusixmatch": "開啟 Musixmatch 歌詞",
|
||||||
"settings.option.lyrics.enableMusixmatchKaraoke": "開啟K歌模式(僅限Musixmatch)",
|
"settings.option.lyrics.enableMusixmatchKaraoke": "開啟K歌模式(僅限 Musixmatch)",
|
||||||
"settings.option.lyrics.musixmatchPreferredLanguage": "Musixmatch 歌詞語言偏好",
|
"settings.option.lyrics.musixmatchPreferredLanguage": "Musixmatch 歌詞語言偏好",
|
||||||
"settings.option.lyrics.enableYoutubeLyrics": "播放 MV 時使用 YouTube 歌詞",
|
"settings.option.lyrics.enableYoutubeLyrics": "播放 MV 時,使用 YouTube 歌詞",
|
||||||
"settings.header.connectivity": "外部連接",
|
"settings.header.connectivity": "外部連接",
|
||||||
"settings.header.connectivity.description": "調整 Cider 與外部的連接",
|
"settings.header.connectivity.description": "調整 Cider 與外部的連接",
|
||||||
"settings.option.connectivity.discordRPC": "Discord 動態",
|
"settings.option.connectivity.discordRPC": "Discord 動態",
|
||||||
|
|
|
@ -1005,10 +1005,27 @@ export class BrowserWindow {
|
||||||
return Math.max(-32768, Math.min(32768, v)); // clamp
|
return Math.max(-32768, Math.min(32768, v)); // clamp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function bitratechange(e: any){
|
||||||
|
var t = e.length;
|
||||||
|
let sampleRate = 96.0;
|
||||||
|
let outputSampleRate = 48.0;
|
||||||
|
var s = 0,
|
||||||
|
o = sampleRate / outputSampleRate,
|
||||||
|
u = Math.ceil(t * outputSampleRate / sampleRate),
|
||||||
|
a = new Int16Array(u);
|
||||||
|
for (let i = 0; i < u; i++) {
|
||||||
|
a[i] = e[Math.floor(s)];
|
||||||
|
s += o;
|
||||||
|
}
|
||||||
|
|
||||||
|
return a;
|
||||||
|
}
|
||||||
|
|
||||||
let newaudio = quantization(leftpcm, rightpcm);
|
let newaudio = quantization(leftpcm, rightpcm);
|
||||||
//let newaudio = [leftpcm, rightpcm];
|
//let newaudio = [leftpcm, rightpcm];
|
||||||
// console.log(newaudio.length);
|
// console.log(newaudio.length);
|
||||||
let pcmData = Buffer.from(new Int8Array(interleave16(Int16Array.from(newaudio[0], x => convert(x)), Int16Array.from(newaudio[1], x => convert(x))).buffer));
|
|
||||||
|
let pcmData = Buffer.from(new Int8Array(interleave16(bitratechange(Int16Array.from(newaudio[0], x => convert(x))), bitratechange(Int16Array.from(newaudio[1], x => convert(x)))).buffer));
|
||||||
|
|
||||||
if (!this.headerSent) {
|
if (!this.headerSent) {
|
||||||
console.log('new header')
|
console.log('new header')
|
||||||
|
|
|
@ -149,6 +149,12 @@ export default class Thumbar {
|
||||||
label: 'Volume Down',
|
label: 'Volume Down',
|
||||||
accelerator: 'CommandOrControl+Down',
|
accelerator: 'CommandOrControl+Down',
|
||||||
click: () => this._win.webContents.executeJavaScript(`app.volumeDown()`)
|
click: () => this._win.webContents.executeJavaScript(`app.volumeDown()`)
|
||||||
|
},
|
||||||
|
{type: 'separator'},
|
||||||
|
{
|
||||||
|
label: 'Cast To Devices',
|
||||||
|
accelerator: 'CommandOrControl+Shift+C',
|
||||||
|
click: () => this._win.webContents.executeJavaScript(`app.modals.castMenu = true`)
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
|
@ -45,7 +45,7 @@ const CiderAudio = {
|
||||||
},
|
},
|
||||||
connectContext: function (mediaElem) {
|
connectContext: function (mediaElem) {
|
||||||
if (!CiderAudio.context) {
|
if (!CiderAudio.context) {
|
||||||
CiderAudio.context = new (window.AudioContext || window.webkitAudioContext);
|
CiderAudio.context = new window.AudioContext({sampleRate: 96000}); // Don't ever remove the sample rate arg. Ask Maikiwi.
|
||||||
}
|
}
|
||||||
if (!CiderAudio.source) {
|
if (!CiderAudio.source) {
|
||||||
CiderAudio.source = CiderAudio.context.createMediaElementSource(mediaElem);
|
CiderAudio.source = CiderAudio.context.createMediaElementSource(mediaElem);
|
||||||
|
@ -311,7 +311,7 @@ const CiderAudio = {
|
||||||
for (let i = 0; i < WARMTH_FREQUENCIES.length; i++) {
|
for (let i = 0; i < WARMTH_FREQUENCIES.length; i++) {
|
||||||
CiderAudio.audioNodes.analogWarmth[i] = CiderAudio.context.createBiquadFilter();
|
CiderAudio.audioNodes.analogWarmth[i] = CiderAudio.context.createBiquadFilter();
|
||||||
CiderAudio.audioNodes.analogWarmth[i].type = 'peaking'; // 'peaking';
|
CiderAudio.audioNodes.analogWarmth[i].type = 'peaking'; // 'peaking';
|
||||||
CiderAudio.audioNodes.analogWarmth[i].frequency.value = WARMTH_FREQUENCIES[i];
|
CiderAudio.audioNodes.analogWarmth[i].frequency.value = WARMTH_FREQUENCIES[i] ;
|
||||||
CiderAudio.audioNodes.analogWarmth[i].Q.value = WARMTH_Q[i];
|
CiderAudio.audioNodes.analogWarmth[i].Q.value = WARMTH_Q[i];
|
||||||
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * 1.25;
|
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * 1.25;
|
||||||
}
|
}
|
||||||
|
@ -321,7 +321,7 @@ const CiderAudio = {
|
||||||
for (let i = 0; i < WARMTH_FREQUENCIES.length; i++) {
|
for (let i = 0; i < WARMTH_FREQUENCIES.length; i++) {
|
||||||
CiderAudio.audioNodes.analogWarmth[i] = CiderAudio.context.createBiquadFilter();
|
CiderAudio.audioNodes.analogWarmth[i] = CiderAudio.context.createBiquadFilter();
|
||||||
CiderAudio.audioNodes.analogWarmth[i].type = 'peaking'; // 'peaking';
|
CiderAudio.audioNodes.analogWarmth[i].type = 'peaking'; // 'peaking';
|
||||||
CiderAudio.audioNodes.analogWarmth[i].frequency.value = WARMTH_FREQUENCIES[i];
|
CiderAudio.audioNodes.analogWarmth[i].frequency.value = WARMTH_FREQUENCIES[i] ;
|
||||||
CiderAudio.audioNodes.analogWarmth[i].Q.value = WARMTH_Q[i];
|
CiderAudio.audioNodes.analogWarmth[i].Q.value = WARMTH_Q[i];
|
||||||
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * 1.75;
|
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * 1.75;
|
||||||
}
|
}
|
||||||
|
@ -331,7 +331,7 @@ const CiderAudio = {
|
||||||
for (let i = 0; i < WARMTH_FREQUENCIES.length; i++) {
|
for (let i = 0; i < WARMTH_FREQUENCIES.length; i++) {
|
||||||
CiderAudio.audioNodes.analogWarmth[i] = CiderAudio.context.createBiquadFilter();
|
CiderAudio.audioNodes.analogWarmth[i] = CiderAudio.context.createBiquadFilter();
|
||||||
CiderAudio.audioNodes.analogWarmth[i].type = 'peaking'; // 'peaking';
|
CiderAudio.audioNodes.analogWarmth[i].type = 'peaking'; // 'peaking';
|
||||||
CiderAudio.audioNodes.analogWarmth[i].frequency.value = WARMTH_FREQUENCIES[i];
|
CiderAudio.audioNodes.analogWarmth[i].frequency.value = WARMTH_FREQUENCIES[i] ;
|
||||||
CiderAudio.audioNodes.analogWarmth[i].Q.value = WARMTH_Q[i];
|
CiderAudio.audioNodes.analogWarmth[i].Q.value = WARMTH_Q[i];
|
||||||
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * 1.25;
|
CiderAudio.audioNodes.analogWarmth[i].gain.value = WARMTH_GAIN[i] * 1.25;
|
||||||
}
|
}
|
||||||
|
@ -407,7 +407,7 @@ const CiderAudio = {
|
||||||
for (let i = 0; i < LLPW_FREQUENCIES.length; i++) {
|
for (let i = 0; i < LLPW_FREQUENCIES.length; i++) {
|
||||||
CiderAudio.audioNodes.llpw[i] = CiderAudio.context.createBiquadFilter();
|
CiderAudio.audioNodes.llpw[i] = CiderAudio.context.createBiquadFilter();
|
||||||
CiderAudio.audioNodes.llpw[i].type = 'peaking'; // 'peaking';
|
CiderAudio.audioNodes.llpw[i].type = 'peaking'; // 'peaking';
|
||||||
CiderAudio.audioNodes.llpw[i].frequency.value = LLPW_FREQUENCIES[i];
|
CiderAudio.audioNodes.llpw[i].frequency.value = LLPW_FREQUENCIES[i] ;
|
||||||
CiderAudio.audioNodes.llpw[i].Q.value = LLPW_Q[i];
|
CiderAudio.audioNodes.llpw[i].Q.value = LLPW_Q[i];
|
||||||
CiderAudio.audioNodes.llpw[i].gain.value = LLPW_GAIN[i];
|
CiderAudio.audioNodes.llpw[i].gain.value = LLPW_GAIN[i];
|
||||||
}
|
}
|
||||||
|
@ -435,7 +435,7 @@ const CiderAudio = {
|
||||||
for (let i = 0; i < c_LLPW_FREQUENCIES.length; i++) {
|
for (let i = 0; i < c_LLPW_FREQUENCIES.length; i++) {
|
||||||
CiderAudio.audioNodes.llpw[i] = CiderAudio.context.createBiquadFilter();
|
CiderAudio.audioNodes.llpw[i] = CiderAudio.context.createBiquadFilter();
|
||||||
CiderAudio.audioNodes.llpw[i].type = 'peaking'; // 'peaking';
|
CiderAudio.audioNodes.llpw[i].type = 'peaking'; // 'peaking';
|
||||||
CiderAudio.audioNodes.llpw[i].frequency.value = c_LLPW_FREQUENCIES[i];
|
CiderAudio.audioNodes.llpw[i].frequency.value = c_LLPW_FREQUENCIES[i] ;
|
||||||
CiderAudio.audioNodes.llpw[i].Q.value = c_LLPW_Q[i];
|
CiderAudio.audioNodes.llpw[i].Q.value = c_LLPW_Q[i];
|
||||||
CiderAudio.audioNodes.llpw[i].gain.value = c_LLPW_GAIN[i];
|
CiderAudio.audioNodes.llpw[i].gain.value = c_LLPW_GAIN[i];
|
||||||
}
|
}
|
||||||
|
@ -496,7 +496,7 @@ const CiderAudio = {
|
||||||
for (let i = 0; i < VIBRANTBASSBANDS.length; i++) {
|
for (let i = 0; i < VIBRANTBASSBANDS.length; i++) {
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i] = CiderAudio.context.createBiquadFilter();
|
CiderAudio.audioNodes.vibrantbassNode[i] = CiderAudio.context.createBiquadFilter();
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i].type = 'peaking'; // 'peaking';
|
CiderAudio.audioNodes.vibrantbassNode[i].type = 'peaking'; // 'peaking';
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i].frequency.value = VIBRANTBASSBANDS[i];
|
CiderAudio.audioNodes.vibrantbassNode[i].frequency.value = VIBRANTBASSBANDS[i] ;
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i].Q.value = VIBRANTBASSQ[i];
|
CiderAudio.audioNodes.vibrantbassNode[i].Q.value = VIBRANTBASSQ[i];
|
||||||
CiderAudio.audioNodes.vibrantbassNode[i].gain.value = VIBRANTBASSGAIN[i] * (app.cfg.audio.equalizer.vibrantBass / 10);
|
CiderAudio.audioNodes.vibrantbassNode[i].gain.value = VIBRANTBASSGAIN[i] * (app.cfg.audio.equalizer.vibrantBass / 10);
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
42
src/renderer/less/bootstrap.less
vendored
42
src/renderer/less/bootstrap.less
vendored
|
@ -2350,6 +2350,33 @@ fieldset:disabled .btn {
|
||||||
|
|
||||||
// Tabs
|
// Tabs
|
||||||
|
|
||||||
|
.nav {
|
||||||
|
display: -ms-flexbox;
|
||||||
|
display: flex;
|
||||||
|
-ms-flex-wrap: wrap;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
padding-left: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-link {
|
||||||
|
display: block;
|
||||||
|
padding: 0.5rem 1rem;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-link:hover, .nav-link:focus {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-link.disabled {
|
||||||
|
color: #6c757d;
|
||||||
|
pointer-events: none;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.nav-tabs {
|
.nav-tabs {
|
||||||
border-bottom: 1px solid #dee2e6;
|
border-bottom: 1px solid #dee2e6;
|
||||||
}
|
}
|
||||||
|
@ -2382,14 +2409,23 @@ fieldset:disabled .btn {
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-pills .nav-link {
|
.nav-pills .nav-link {
|
||||||
background: none;
|
background-color: transparent;
|
||||||
border: 0;
|
border: 0;
|
||||||
border-radius: 0.25rem;
|
border-radius: 50px;
|
||||||
|
color: #eee;
|
||||||
|
-webkit-user-drag: none;
|
||||||
|
// transition: transform .35s var(--appleEase), background-color .35s var(--appleEase);
|
||||||
|
font-weight: 500;
|
||||||
|
&:hover {
|
||||||
|
// transition: transform .35s var(--appleEase), background-color 0s var(--appleEase);
|
||||||
|
background-color: var(--hover);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
.nav-pills .nav-link.active,
|
.nav-pills .nav-link.active,
|
||||||
.nav-pills .show > .nav-link {
|
.nav-pills .show > .nav-link {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
background-color: #0d6efd;
|
background-color: var(--selected);
|
||||||
|
outline:2px solid var(--keyColor);
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-fill > .nav-link,
|
.nav-fill > .nav-link,
|
||||||
|
|
|
@ -173,6 +173,7 @@
|
||||||
.app-chrome--right {
|
.app-chrome--right {
|
||||||
width: 30%;
|
width: 30%;
|
||||||
flex: 0 0 auto;
|
flex: 0 0 auto;
|
||||||
|
padding-right: 8px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.collection-page {
|
.collection-page {
|
||||||
|
|
|
@ -827,13 +827,18 @@
|
||||||
.settings-page {
|
.settings-page {
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
|
|
||||||
|
.nav {
|
||||||
|
width: 90%;
|
||||||
|
margin: 16px auto 0px;
|
||||||
|
}
|
||||||
|
|
||||||
.md-option-header {
|
.md-option-header {
|
||||||
padding : 1.25em 1.25em;
|
padding: 0px 26px;
|
||||||
border-bottom: unset;
|
border-bottom: unset;
|
||||||
border-top : unset;
|
border-top: unset;
|
||||||
font-weight : 600;
|
font-weight: 600;
|
||||||
font-size : 1.0em;
|
background: rgb(255 255 255 / 0%);
|
||||||
background : rgb(255 255 255 / 3%);
|
font-size: 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-option-body {
|
.settings-option-body {
|
||||||
|
|
|
@ -297,10 +297,10 @@ const app = new Vue({
|
||||||
}
|
}
|
||||||
this.lz = ipcRenderer.sendSync("get-i18n", lang)
|
this.lz = ipcRenderer.sendSync("get-i18n", lang)
|
||||||
this.mklang = await this.MKJSLang()
|
this.mklang = await this.MKJSLang()
|
||||||
try{
|
try {
|
||||||
this.listennow.timestamp = 0;
|
this.listennow.timestamp = 0;
|
||||||
this.browsepage.timestamp = 0;
|
this.browsepage.timestamp = 0;
|
||||||
}catch(e){}
|
} catch (e) { }
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
* Grabs translation for localization.
|
* Grabs translation for localization.
|
||||||
|
@ -604,6 +604,11 @@ const app = new Vue({
|
||||||
try {
|
try {
|
||||||
// Set profile name
|
// Set profile name
|
||||||
this.chrome.userinfo = (await app.mk.api.v3.music(`/v1/me/social-profile`)).data.data[0]
|
this.chrome.userinfo = (await app.mk.api.v3.music(`/v1/me/social-profile`)).data.data[0]
|
||||||
|
// check if this.chrome.userinfo.attributes.artwork exists
|
||||||
|
if (this.chrome.userinfo.attributes.artwork && !this.chrome.hideUserInfo) {
|
||||||
|
document.documentElement.style
|
||||||
|
.setProperty('--cvar-userprofileimg', `url("${this.getMediaItemArtwork(this.chrome.userinfo.attributes.artwork.url)}")`);
|
||||||
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1421,15 +1426,15 @@ const app = new Vue({
|
||||||
const datetime = new Date(seconds * 1000)
|
const datetime = new Date(seconds * 1000)
|
||||||
|
|
||||||
if (format === "long") {
|
if (format === "long") {
|
||||||
const d = Math.floor(seconds / (3600*24));
|
const d = Math.floor(seconds / (3600 * 24));
|
||||||
const h = Math.floor(seconds % (3600*24) / 3600);
|
const h = Math.floor(seconds % (3600 * 24) / 3600);
|
||||||
const m = Math.floor(seconds % 3600 / 60);
|
const m = Math.floor(seconds % 3600 / 60);
|
||||||
const s = Math.floor(seconds % 60);
|
const s = Math.floor(seconds % 60);
|
||||||
|
|
||||||
const dDisplay = d > 0 ? `${d} ${app.getLz("term.time.day", {"count": d})}, ` : "";
|
const dDisplay = d > 0 ? `${d} ${app.getLz("term.time.day", { "count": d })}, ` : "";
|
||||||
const hDisplay = h > 0 ? `${h} ${app.getLz("term.time.hour", {"count": h})}, ` : "";
|
const hDisplay = h > 0 ? `${h} ${app.getLz("term.time.hour", { "count": h })}, ` : "";
|
||||||
const mDisplay = m > 0 ? `${m} ${app.getLz("term.time.minute", {"count": m})}, ` : "";
|
const mDisplay = m > 0 ? `${m} ${app.getLz("term.time.minute", { "count": m })}, ` : "";
|
||||||
const sDisplay = s > 0 ? `${s} ${app.getLz("term.time.second", {"count": s})}` : "";
|
const sDisplay = s > 0 ? `${s} ${app.getLz("term.time.second", { "count": s })}` : "";
|
||||||
|
|
||||||
return dDisplay + hDisplay + mDisplay + sDisplay;
|
return dDisplay + hDisplay + mDisplay + sDisplay;
|
||||||
}
|
}
|
||||||
|
@ -1486,7 +1491,7 @@ const app = new Vue({
|
||||||
let page = hash[0]
|
let page = hash[0]
|
||||||
let id = hash[1]
|
let id = hash[1]
|
||||||
let isLibrary = hash[2] ?? false
|
let isLibrary = hash[2] ?? false
|
||||||
if(page == "plugin") {
|
if (page == "plugin") {
|
||||||
this.pluginPages.page = "plugin." + id
|
this.pluginPages.page = "plugin." + id
|
||||||
this.page = "plugin-renderer"
|
this.page = "plugin-renderer"
|
||||||
return
|
return
|
||||||
|
@ -1555,7 +1560,8 @@ const app = new Vue({
|
||||||
if (kind.includes("album")) {
|
if (kind.includes("album")) {
|
||||||
params["include[albums]"] = "artists"
|
params["include[albums]"] = "artists"
|
||||||
params["fields[artists]"] = "name,url"
|
params["fields[artists]"] = "name,url"
|
||||||
params["fields[albums]"] = "artistName,artistUrl,artwork,contentRating,editorialArtwork,editorialVideo,name,playParams,releaseDate,url,copyright"
|
params["omit[resource]"] = "autos"
|
||||||
|
params["fields[albums]"] = "artistName,artistUrl,artwork,contentRating,editorialArtwork,editorialNotes,editorialVideo,name,playParams,releaseDate,url,copyright"
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.cfg.advanced.experiments.includes('inline-playlists')) {
|
if (this.cfg.advanced.experiments.includes('inline-playlists')) {
|
||||||
|
@ -2323,8 +2329,8 @@ const app = new Vue({
|
||||||
getTotalTime() {
|
getTotalTime() {
|
||||||
try {
|
try {
|
||||||
if (app.showingPlaylist.relationships.tracks.data.length === 0) return ""
|
if (app.showingPlaylist.relationships.tracks.data.length === 0) return ""
|
||||||
const timeInSeconds = Math.round([].concat(...app.showingPlaylist.relationships.tracks.data).reduce((a, {attributes: {durationInMillis}}) => a + durationInMillis, 0) / 1000);
|
const timeInSeconds = Math.round([].concat(...app.showingPlaylist.relationships.tracks.data).reduce((a, { attributes: { durationInMillis } }) => a + durationInMillis, 0) / 1000);
|
||||||
return `${app.showingPlaylist.relationships.tracks.data.length} ${app.getLz("term.track", {"count": app.showingPlaylist.relationships.tracks.data.length})}, ${app.convertTime(timeInSeconds, 'long')}`
|
return `${app.showingPlaylist.relationships.tracks.data.length} ${app.getLz("term.track", { "count": app.showingPlaylist.relationships.tracks.data.length })}, ${app.convertTime(timeInSeconds, 'long')}`
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
@ -2598,33 +2604,33 @@ const app = new Vue({
|
||||||
req.open('GET', url, true);
|
req.open('GET', url, true);
|
||||||
req.setRequestHeader("authority", "apic-desktop.musixmatch.com");
|
req.setRequestHeader("authority", "apic-desktop.musixmatch.com");
|
||||||
req.onload = function () {
|
req.onload = function () {
|
||||||
try{
|
try {
|
||||||
let jsonResponse = JSON.parse(this.responseText);
|
let jsonResponse = JSON.parse(this.responseText);
|
||||||
let status2 = jsonResponse["message"]["header"]["status_code"];
|
let status2 = jsonResponse["message"]["header"]["status_code"];
|
||||||
if (status2 == 200) {
|
if (status2 == 200) {
|
||||||
let token = jsonResponse["message"]["body"]["user_token"] ?? '';
|
let token = jsonResponse["message"]["body"]["user_token"] ?? '';
|
||||||
if (token != "" && token != "UpgradeOnlyUpgradeOnlyUpgradeOnlyUpgradeOnly") {
|
if (token != "" && token != "UpgradeOnlyUpgradeOnlyUpgradeOnlyUpgradeOnly") {
|
||||||
console.log('200 token', mode);
|
console.log('200 token', mode);
|
||||||
// token good
|
// token good
|
||||||
app.mxmtoken = token;
|
app.mxmtoken = token;
|
||||||
|
|
||||||
if (mode == 1) {
|
if (mode == 1) {
|
||||||
getMXMSubs(track, artist, app.mxmtoken, lang, time, id);
|
getMXMSubs(track, artist, app.mxmtoken, lang, time, id);
|
||||||
|
} else {
|
||||||
|
getMXMTrans(songid, lang, app.mxmtoken);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
getMXMTrans(songid, lang, app.mxmtoken);
|
console.log('fake 200 token');
|
||||||
|
getToken(mode, track, artist, songid, lang, time)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
console.log('fake 200 token');
|
// console.log('token 4xx');
|
||||||
getToken(mode, track, artist, songid, lang, time)
|
getToken(mode, track, artist, songid, lang, time)
|
||||||
}
|
}
|
||||||
} else {
|
} catch (e) {
|
||||||
// console.log('token 4xx');
|
console.log('error');
|
||||||
getToken(mode, track, artist, songid, lang, time)
|
app.loadAMLyrics();
|
||||||
}
|
}
|
||||||
}catch(e){
|
|
||||||
console.log('error');
|
|
||||||
app.loadAMLyrics();
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
req.onerror = function () {
|
req.onerror = function () {
|
||||||
console.log('error');
|
console.log('error');
|
||||||
|
@ -2645,85 +2651,86 @@ const app = new Vue({
|
||||||
req.open('GET', url, true);
|
req.open('GET', url, true);
|
||||||
req.setRequestHeader("authority", "apic-desktop.musixmatch.com");
|
req.setRequestHeader("authority", "apic-desktop.musixmatch.com");
|
||||||
req.onload = function () {
|
req.onload = function () {
|
||||||
try{
|
try {
|
||||||
let jsonResponse = JSON.parse(this.responseText);
|
let jsonResponse = JSON.parse(this.responseText);
|
||||||
console.log(jsonResponse);
|
console.log(jsonResponse);
|
||||||
let status1 = jsonResponse["message"]["header"]["status_code"];
|
let status1 = jsonResponse["message"]["header"]["status_code"];
|
||||||
|
|
||||||
if (status1 == 200) {
|
if (status1 == 200) {
|
||||||
let id = '';
|
let id = '';
|
||||||
try {
|
try {
|
||||||
if (jsonResponse["message"]["body"]["macro_calls"]["matcher.track.get"]["message"]["header"]["status_code"] == 200 && jsonResponse["message"]["body"]["macro_calls"]["track.subtitles.get"]["message"]["header"]["status_code"] == 200) {
|
if (jsonResponse["message"]["body"]["macro_calls"]["matcher.track.get"]["message"]["header"]["status_code"] == 200 && jsonResponse["message"]["body"]["macro_calls"]["track.subtitles.get"]["message"]["header"]["status_code"] == 200) {
|
||||||
id = jsonResponse["message"]["body"]["macro_calls"]["matcher.track.get"]["message"]["body"]["track"]["track_id"] ?? '';
|
id = jsonResponse["message"]["body"]["macro_calls"]["matcher.track.get"]["message"]["body"]["track"]["track_id"] ?? '';
|
||||||
lrcfile = jsonResponse["message"]["body"]["macro_calls"]["track.subtitles.get"]["message"]["body"]["subtitle_list"][0]["subtitle"]["subtitle_body"];
|
lrcfile = jsonResponse["message"]["body"]["macro_calls"]["track.subtitles.get"]["message"]["body"]["subtitle_list"][0]["subtitle"]["subtitle_body"];
|
||||||
|
|
||||||
try {
|
try {
|
||||||
let lrcrich = jsonResponse["message"]["body"]["macro_calls"]["track.richsync.get"]["message"]["body"]["richsync"]["richsync_body"];
|
let lrcrich = jsonResponse["message"]["body"]["macro_calls"]["track.richsync.get"]["message"]["body"]["richsync"]["richsync_body"];
|
||||||
richsync = JSON.parse(lrcrich);
|
richsync = JSON.parse(lrcrich);
|
||||||
app.richlyrics = richsync;
|
app.richlyrics = richsync;
|
||||||
} catch (_) {
|
} catch (_) {
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (lrcfile == "") {
|
|
||||||
app.loadAMLyrics()
|
|
||||||
} else {
|
|
||||||
if (richsync == [] || richsync.length == 0) {
|
|
||||||
console.log("ok");
|
|
||||||
// process lrcfile to json here
|
|
||||||
app.lyricsMediaItem = lrcfile
|
|
||||||
let u = app.lyricsMediaItem.split(/[\r\n]/);
|
|
||||||
let preLrc = []
|
|
||||||
for (var i = u.length - 1; i >= 0; i--) {
|
|
||||||
let xline = (/(\[[0-9.:\[\]]*\])+(.*)/).exec(u[i])
|
|
||||||
let end = (preLrc.length > 0) ? ((preLrc[preLrc.length - 1].startTime) ?? 99999) : 99999
|
|
||||||
preLrc.push({
|
|
||||||
startTime: app.toMS(xline[1].substring(1, xline[1].length - 2)) ?? 0,
|
|
||||||
endTime: end,
|
|
||||||
line: xline[2],
|
|
||||||
translation: ''
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
if (preLrc.length > 0)
|
|
||||||
preLrc.push({
|
|
||||||
startTime: 0,
|
|
||||||
endTime: preLrc[preLrc.length - 1].startTime,
|
|
||||||
line: "lrcInstrumental",
|
|
||||||
translation: ''
|
|
||||||
});
|
|
||||||
app.lyrics = preLrc.reverse();
|
|
||||||
} else {
|
|
||||||
let preLrc = richsync.map(function (item) {
|
|
||||||
return {
|
|
||||||
startTime: item.ts,
|
|
||||||
endTime: item.te,
|
|
||||||
line: item.x,
|
|
||||||
translation: ''
|
|
||||||
}
|
|
||||||
})
|
|
||||||
if (preLrc.length > 0)
|
|
||||||
preLrc.unshift({
|
|
||||||
startTime: 0,
|
|
||||||
endTime: preLrc[0].startTime,
|
|
||||||
line: "lrcInstrumental",
|
|
||||||
translation: ''
|
|
||||||
});
|
|
||||||
app.lyrics = preLrc;
|
|
||||||
}
|
}
|
||||||
if (lrcfile != null && lrcfile != '' && lang != "disabled") {
|
|
||||||
// load translation
|
if (lrcfile == "") {
|
||||||
getMXMTrans(id, lang, token);
|
|
||||||
} else {
|
|
||||||
app.loadAMLyrics()
|
app.loadAMLyrics()
|
||||||
|
} else {
|
||||||
|
if (richsync == [] || richsync.length == 0) {
|
||||||
|
console.log("ok");
|
||||||
|
// process lrcfile to json here
|
||||||
|
app.lyricsMediaItem = lrcfile
|
||||||
|
let u = app.lyricsMediaItem.split(/[\r\n]/);
|
||||||
|
let preLrc = []
|
||||||
|
for (var i = u.length - 1; i >= 0; i--) {
|
||||||
|
let xline = (/(\[[0-9.:\[\]]*\])+(.*)/).exec(u[i])
|
||||||
|
let end = (preLrc.length > 0) ? ((preLrc[preLrc.length - 1].startTime) ?? 99999) : 99999
|
||||||
|
preLrc.push({
|
||||||
|
startTime: app.toMS(xline[1].substring(1, xline[1].length - 2)) ?? 0,
|
||||||
|
endTime: end,
|
||||||
|
line: xline[2],
|
||||||
|
translation: ''
|
||||||
|
})
|
||||||
|
}
|
||||||
|
if (preLrc.length > 0)
|
||||||
|
preLrc.push({
|
||||||
|
startTime: 0,
|
||||||
|
endTime: preLrc[preLrc.length - 1].startTime,
|
||||||
|
line: "lrcInstrumental",
|
||||||
|
translation: ''
|
||||||
|
});
|
||||||
|
app.lyrics = preLrc.reverse();
|
||||||
|
} else {
|
||||||
|
let preLrc = richsync.map(function (item) {
|
||||||
|
return {
|
||||||
|
startTime: item.ts,
|
||||||
|
endTime: item.te,
|
||||||
|
line: item.x,
|
||||||
|
translation: ''
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if (preLrc.length > 0)
|
||||||
|
preLrc.unshift({
|
||||||
|
startTime: 0,
|
||||||
|
endTime: preLrc[0].startTime,
|
||||||
|
line: "lrcInstrumental",
|
||||||
|
translation: ''
|
||||||
|
});
|
||||||
|
app.lyrics = preLrc;
|
||||||
|
}
|
||||||
|
if (lrcfile != null && lrcfile != '' && lang != "disabled") {
|
||||||
|
// load translation
|
||||||
|
getMXMTrans(id, lang, token);
|
||||||
|
} else {
|
||||||
|
app.loadAMLyrics()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} catch (e) {
|
||||||
|
console.log(e);
|
||||||
|
app.loadAMLyrics()
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} else { //4xx rejected
|
||||||
console.log(e);
|
getToken(1, track, artist, '', lang, time);
|
||||||
app.loadAMLyrics()
|
|
||||||
}
|
}
|
||||||
} else { //4xx rejected
|
} catch (e) {
|
||||||
getToken(1, track, artist, '', lang, time);
|
|
||||||
}}catch(e){
|
|
||||||
console.log(e);
|
console.log(e);
|
||||||
app.loadAMLyrics()
|
app.loadAMLyrics()
|
||||||
}
|
}
|
||||||
|
@ -2744,33 +2751,34 @@ const app = new Vue({
|
||||||
req2.open('GET', url2, true);
|
req2.open('GET', url2, true);
|
||||||
req2.setRequestHeader("authority", "apic-desktop.musixmatch.com");
|
req2.setRequestHeader("authority", "apic-desktop.musixmatch.com");
|
||||||
req2.onload = function () {
|
req2.onload = function () {
|
||||||
try{
|
try {
|
||||||
let jsonResponse2 = JSON.parse(this.responseText);
|
let jsonResponse2 = JSON.parse(this.responseText);
|
||||||
console.log(jsonResponse2);
|
console.log(jsonResponse2);
|
||||||
let status2 = jsonResponse2["message"]["header"]["status_code"];
|
let status2 = jsonResponse2["message"]["header"]["status_code"];
|
||||||
if (status2 == 200) {
|
if (status2 == 200) {
|
||||||
try {
|
try {
|
||||||
let preTrans = []
|
let preTrans = []
|
||||||
let u = app.lyrics;
|
let u = app.lyrics;
|
||||||
let translation_list = jsonResponse2["message"]["body"]["translations_list"];
|
let translation_list = jsonResponse2["message"]["body"]["translations_list"];
|
||||||
if (translation_list.length > 0) {
|
if (translation_list.length > 0) {
|
||||||
for (var i = 0; i < u.length - 1; i++) {
|
for (var i = 0; i < u.length - 1; i++) {
|
||||||
preTrans[i] = ""
|
preTrans[i] = ""
|
||||||
for (var trans_line of translation_list) {
|
for (var trans_line of translation_list) {
|
||||||
if (u[i].line == " " + trans_line["translation"]["matched_line"] || u[i].line == trans_line["translation"]["matched_line"]) {
|
if (u[i].line == " " + trans_line["translation"]["matched_line"] || u[i].line == trans_line["translation"]["matched_line"]) {
|
||||||
u[i].translation = trans_line["translation"]["description"];
|
u[i].translation = trans_line["translation"]["description"];
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
app.lyrics = u;
|
||||||
}
|
}
|
||||||
app.lyrics = u;
|
} catch (e) {
|
||||||
|
/// not found trans -> ignore
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} else { //4xx rejected
|
||||||
/// not found trans -> ignore
|
getToken(2, '', '', id, lang, '');
|
||||||
}
|
}
|
||||||
} else { //4xx rejected
|
} catch (e) { }
|
||||||
getToken(2, '', '', id, lang, '');
|
|
||||||
}}catch(e){}
|
|
||||||
}
|
}
|
||||||
req2.send();
|
req2.send();
|
||||||
}
|
}
|
||||||
|
@ -3282,6 +3290,10 @@ const app = new Vue({
|
||||||
if (typeof url == "undefined" || url == "") {
|
if (typeof url == "undefined" || url == "") {
|
||||||
return "https://beta.music.apple.com/assets/product/MissingArtworkMusic.svg"
|
return "https://beta.music.apple.com/assets/product/MissingArtworkMusic.svg"
|
||||||
}
|
}
|
||||||
|
height = parseInt(height * window.devicePixelRatio)
|
||||||
|
if(width) {
|
||||||
|
width = parseInt(width * window.devicePixelRatio)
|
||||||
|
}
|
||||||
let newurl = `${url.replace('{w}', width ?? height).replace('{h}', height).replace('{f}', "webp").replace('{c}', ((width === 900) ? "sr" : "cc"))}`;
|
let newurl = `${url.replace('{w}', width ?? height).replace('{h}', height).replace('{f}', "webp").replace('{c}', ((width === 900) ? "sr" : "cc"))}`;
|
||||||
|
|
||||||
if (newurl.includes("900x516")) {
|
if (newurl.includes("900x516")) {
|
||||||
|
@ -3731,7 +3743,7 @@ const app = new Vue({
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(app.mk.nowPlayingItem._container["attributes"] && app.mk.nowPlayingItem._container.name != "station") {
|
if (app.mk.nowPlayingItem._container["attributes"] && app.mk.nowPlayingItem._container.name != "station") {
|
||||||
menus.normal.items.find(x => x.id == "showInMusic").hidden = false
|
menus.normal.items.find(x => x.id == "showInMusic").hidden = false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -142,8 +142,8 @@ body.notransparency::before {
|
||||||
}
|
}
|
||||||
|
|
||||||
#app {
|
#app {
|
||||||
--color1: rgba(30, 30, 30, 30%);
|
--color1: rgba(15, 15, 15, 30%);
|
||||||
--color2: rgba(15, 15, 15, 30%);
|
--color2: rgba(30, 30, 30, 50%);
|
||||||
--bgColor: transparent;
|
--bgColor: transparent;
|
||||||
--bgWidth: 0px;
|
--bgWidth: 0px;
|
||||||
--bgHeight: 0px;
|
--bgHeight: 0px;
|
||||||
|
@ -799,25 +799,28 @@ input[type=range].web-slider::-webkit-slider-runnable-track {
|
||||||
opacity: 0.6;
|
opacity: 0.6;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.app-sidebar-item:hover {
|
.app-sidebar-item:hover {
|
||||||
border: 1px solid rgb(200 200 200 / 5%);
|
border: 1px solid rgb(200 200 200 / 0%);
|
||||||
background: rgb(200 200 200 / 15%);
|
background: rgb(180 180 180 / 15%);
|
||||||
|
// cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
.app-sidebar-item:active {
|
.app-sidebar-item:active {
|
||||||
border: 1px solid rgb(200 200 200 / 5%);
|
border: 1px solid rgb(200 200 200 / 0%);
|
||||||
background: rgb(200 200 200 / 15%);
|
background: rgb(150 150 150 / 15%);
|
||||||
transform: scale(0.98);
|
// transform: scale(0.98);
|
||||||
transition: transform 0s;
|
transition: transform 0s;
|
||||||
}
|
}
|
||||||
|
|
||||||
.app-sidebar-item.active {
|
.app-sidebar-item.active {
|
||||||
border: 1px solid rgb(200 200 200 / 5%);
|
border: 1px solid rgb(200 200 200 / 0%);
|
||||||
background: rgb(200 200 200 / 15%);
|
background: rgb(200 200 200 / 15%);
|
||||||
transform: scale(1);
|
transform: scale(1);
|
||||||
transition: transform 0s;
|
transition: transform 0s;
|
||||||
|
cursor: default;
|
||||||
}
|
}
|
||||||
|
|
||||||
.app-sidebar-item.active::after {
|
.app-sidebar-item.active::after {
|
||||||
|
@ -830,6 +833,17 @@ input[type=range].web-slider::-webkit-slider-runnable-track {
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
left: 0px;
|
left: 0px;
|
||||||
background: var(--keyColor);
|
background: var(--keyColor);
|
||||||
|
animation: expandIndicator .2s cubic-bezier(0.25, 1, 0.5, 1);
|
||||||
|
|
||||||
|
@keyframes expandIndicator {
|
||||||
|
0% {
|
||||||
|
transform: scaleY(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
100% {
|
||||||
|
transform: scaleY(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.app-chrome {
|
.app-chrome {
|
||||||
|
@ -867,7 +881,7 @@ input[type=range].web-slider::-webkit-slider-runnable-track {
|
||||||
}
|
}
|
||||||
|
|
||||||
.app-chrome .app-chrome--center {
|
.app-chrome .app-chrome--center {
|
||||||
width: 40%;
|
//width: 40%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.app-chrome .app-chrome--right {
|
.app-chrome .app-chrome--right {
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
template: '#artist-chip',
|
template: '#artist-chip',
|
||||||
async mounted() {
|
async mounted() {
|
||||||
let artistId = this.item.id
|
let artistId = this.item.id
|
||||||
if(typeof this.item.relationships.catalog == "object") {
|
if(typeof this.item.relationships == "object") {
|
||||||
artistId = this.item.relationships.catalog.data[0].id
|
artistId = this.item.relationships.catalog.data[0].id
|
||||||
}
|
}
|
||||||
app.mk.api.v3.music(`/v1/catalog/${app.mk.storefrontId}/artists/${artistId}`).then(response => {
|
app.mk.api.v3.music(`/v1/catalog/${app.mk.storefrontId}/artists/${artistId}`).then(response => {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<script type="text/x-template" id="castmenu">
|
<script type="text/x-template" id="castmenu">
|
||||||
<div class="spatialproperties-panel castmenu modal-fullscreen" >
|
<div class="spatialproperties-panel castmenu modal-fullscreen" @click.self="close()" @contextmenu.self="close()">
|
||||||
<div class="modal-window">
|
<div class="modal-window">
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<div class="modal-title">Cast To Devices</div>
|
<div class="modal-title">Cast To Devices</div>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<script type="text/x-template" id="eq-view">
|
<script type="text/x-template" id="eq-view">
|
||||||
<div class="modal-fullscreen equalizer-panel">
|
<div class="modal-fullscreen equalizer-panel" @click.self="close()" @contextmenu.self="close()">
|
||||||
<div class="modal-window" >
|
<div class="modal-window" >
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<div class="modal-title">{{$root.getLz('term.equalizer')}}</div>
|
<div class="modal-title">{{$root.getLz('term.equalizer')}}</div>
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
<div class="svg-icon" :style="{'--color': 'var(--keyColor)', '--url': 'url(./assets/feather/plus.svg)'}"></div>
|
<div class="svg-icon" :style="{'--color': 'var(--keyColor)', '--url': 'url(./assets/feather/plus.svg)'}"></div>
|
||||||
</button>
|
</button>
|
||||||
<button v-else-if='!(showArtwork == true && (showIndex == false ||(showIndex == true && showIndexPlaylist != false)))' @click="playTrack()" style="width: 44px;margin-left: -11px;">
|
<button v-else-if='!(showArtwork == true && (showIndex == false ||(showIndex == true && showIndexPlaylist != false)))' @click="playTrack()" style="width: 44px;margin-left: -11px;">
|
||||||
<%- include("../svg/play.svg") %>
|
<div class="svg-icon" :style="{'--color': 'var(--keyColor)', '--url': 'url(./assets/feather/play.svg)'}"></div>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!(app.mk.isPlaying && (((app.mk.nowPlayingItem._songId ?? (app.mk.nowPlayingItem.songId ?? app.mk.nowPlayingItem.id )) == itemId) || (app.mk.nowPlayingItem.id == item.id ))) && showIndex" :style="{display: ((showIndex && !showInLibrary) ? 'block' : 'none'), 'margin-left':'11px'}">
|
<div v-if="!(app.mk.isPlaying && (((app.mk.nowPlayingItem._songId ?? (app.mk.nowPlayingItem.songId ?? app.mk.nowPlayingItem.id )) == itemId) || (app.mk.nowPlayingItem.id == item.id ))) && showIndex" :style="{display: ((showIndex && !showInLibrary) ? 'block' : 'none'), 'margin-left':'11px'}">
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<script type="text/x-template" id="spatial-properties">
|
<script type="text/x-template" id="spatial-properties">
|
||||||
<div class="modal-fullscreen spatialproperties-panel">
|
<div class="modal-fullscreen spatialproperties-panel" @click.self="close()" @contextmenu.self="close()">
|
||||||
<div class="modal-window" v-if="ready">
|
<div class="modal-window" v-if="ready">
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<div class="modal-title">{{$root.getLz('spatial.spatialProperties')}}</div>
|
<div class="modal-title">{{$root.getLz('spatial.spatialProperties')}}</div>
|
||||||
|
|
|
@ -16,9 +16,9 @@
|
||||||
<button onclick="window.open('https://ko-fi.com/cryptofyre')" class="md-btn sponsorBtn"><img src="./assets/ko_fi.svg"/>Ko-fi</button>
|
<button onclick="window.open('https://ko-fi.com/cryptofyre')" class="md-btn sponsorBtn"><img src="./assets/ko_fi.svg"/>Ko-fi</button>
|
||||||
<button onclick="window.open('https://opencollective.com/ciderapp')" class="md-btn sponsorBtn"><img src="./assets/open_collective.svg"/>Open Collective</button>
|
<button onclick="window.open('https://opencollective.com/ciderapp')" class="md-btn sponsorBtn"><img src="./assets/open_collective.svg"/>Open Collective</button>
|
||||||
<h3>{{$root.getLz('term.socials')}}</h3>
|
<h3>{{$root.getLz('term.socials')}}</h3>
|
||||||
<button onclick="window.open('https://github.com/ciderapp/Cider')" class="md-btn sponsorBtn"><img style="width: 20.5px;" src="./assets/github.svg"/>{{$root.getLz('term.github')}}</button>
|
<button onclick="window.open('https://github.com/ciderapp/Cider')" class="md-btn sponsorBtn"><img src="./assets/github.svg"/>{{$root.getLz('term.github')}}</button>
|
||||||
<button onclick="window.open('https://discord.gg/applemusic')" class="md-btn sponsorBtn"><img src="./assets/discord.svg"/>{{$root.getLz('term.discord')}}</button>
|
<button onclick="window.open('https://discord.gg/applemusic')" class="md-btn sponsorBtn"><img style="height: 26px;" src="./assets/discord.svg"/>{{$root.getLz('term.discord')}}</button>
|
||||||
<button onclick="window.open('https://twitter.com/UseCider')" class="md-btn sponsorBtn"><img style="width: 20.5px;" src="./assets/twitter.svg"/>Twitter</button>
|
<button onclick="window.open('https://twitter.com/UseCider')" class="md-btn sponsorBtn"><img src="./assets/twitter.svg"/>Twitter</button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
|
@ -113,7 +113,7 @@
|
||||||
name: 'NoseySG',
|
name: 'NoseySG',
|
||||||
link: 'https://twitter.com/noah_grose',
|
link: 'https://twitter.com/noah_grose',
|
||||||
role: app.getLz('term.socialTeam'),
|
role: app.getLz('term.socialTeam'),
|
||||||
avatar: 'https://pbs.twimg.com/profile_images/1422541289837535239/qg-aaoP9_400x400.jpg'
|
avatar: 'https://pbs.twimg.com/profile_images/1496944907260420099/D5gl6H4J_400x400.jpg'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,13 +49,12 @@
|
||||||
<artist-chip v-for="artist in data.relationships.artists.data"
|
<artist-chip v-for="artist in data.relationships.artists.data"
|
||||||
:item="artist"></artist-chip>
|
:item="artist"></artist-chip>
|
||||||
</template>
|
</template>
|
||||||
<div class="playlist-desc"
|
<div class="playlist-desc" v-if="(data.attributes.description && (data.attributes.description.standard || data.attributes.description.short)) || (data.attributes.editorialNotes && (data.attributes.editorialNotes.standard || data.attributes.editorialNotes.short))">
|
||||||
v-if="data.attributes.description && (data.attributes.description.standard || data.attributes.description.short)">
|
<div v-if="(data.attributes.description?.short ?? data.attributes.editorialNotes?.short) != null" class="content"
|
||||||
<div v-if="data.attributes.description.short" class="content"
|
v-html="data.attributes.description?.short ?? data.attributes.editorialNotes?.short"></div>
|
||||||
v-html="data.attributes.description.short"></div>
|
<div v-else-if="(data.attributes.description?.standard ?? data.attributes.editorialNotes?.standard) != null" class="content"
|
||||||
<div v-else-if="data.attributes.description.standard" class="content"
|
v-html="data.attributes.description?.standard ?? data.attributes.editorialNotes?.standard"></div>
|
||||||
v-html="data.attributes.description.standard"></div>
|
<button v-if="(data.attributes.description?.short ?? data.attributes.editorialNotes?.short ) != null" class="more-btn"
|
||||||
<button v-if="data.attributes.description.short" class="more-btn"
|
|
||||||
@click="editorialNotesExpanded = !editorialNotesExpanded">
|
@click="editorialNotesExpanded = !editorialNotesExpanded">
|
||||||
{{app.getLz('term.showMore')}}
|
{{app.getLz('term.showMore')}}
|
||||||
</button>
|
</button>
|
||||||
|
|
|
@ -44,9 +44,11 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="well">
|
<div class="well">
|
||||||
<mediaitem-square v-if="library.albums.viewAs == 'covers'" :item="item"
|
<div class="albums-square-container">
|
||||||
v-for="item in library.albums.displayListing">
|
<mediaitem-square v-if="library.albums.viewAs == 'covers'" :item="item"
|
||||||
</mediaitem-square>
|
v-for="item in library.albums.displayListing">
|
||||||
|
</mediaitem-square>
|
||||||
|
</div>
|
||||||
<mediaitem-list-item v-if="library.albums.viewAs == 'list'" :show-duration="false" :show-meta-data="true"
|
<mediaitem-list-item v-if="library.albums.viewAs == 'list'" :show-duration="false" :show-meta-data="true"
|
||||||
:show-library-status="false" :item="item"
|
:show-library-status="false" :item="item"
|
||||||
v-for="item in library.albums.displayListing">
|
v-for="item in library.albums.displayListing">
|
||||||
|
|
|
@ -57,13 +57,12 @@
|
||||||
<artist-chip v-for="artist in data.relationships.artists.data"
|
<artist-chip v-for="artist in data.relationships.artists.data"
|
||||||
:item="artist"></artist-chip>
|
:item="artist"></artist-chip>
|
||||||
</template>
|
</template>
|
||||||
<div class="playlist-desc"
|
<div class="playlist-desc" v-if="(data.attributes.description && (data.attributes.description.standard || data.attributes.description.short)) || (data.attributes.editorialNotes && (data.attributes.editorialNotes.standard || data.attributes.editorialNotes.short))">
|
||||||
v-if="data.attributes.description && (data.attributes.description.standard || data.attributes.description.short)">
|
<div v-if="(data.attributes.description?.short ?? data.attributes.editorialNotes?.short) != null" class="content"
|
||||||
<div v-if="data.attributes.description.short" class="content"
|
v-html="data.attributes.description?.short ?? data.attributes.editorialNotes?.short"></div>
|
||||||
v-html="data.attributes.description.short"></div>
|
<div v-else-if="(data.attributes.description?.standard ?? data.attributes.editorialNotes?.standard) != null" class="content"
|
||||||
<div v-else-if="data.attributes.description.standard" class="content"
|
v-html="data.attributes.description?.standard ?? data.attributes.editorialNotes?.standard"></div>
|
||||||
v-html="data.attributes.description.standard"></div>
|
<button v-if="(data.attributes.description?.short ?? data.attributes.editorialNotes?.short ) != null" class="more-btn"
|
||||||
<button v-if="data.attributes.description.short" class="more-btn"
|
|
||||||
@click="editorialNotesExpanded = !editorialNotesExpanded">
|
@click="editorialNotesExpanded = !editorialNotesExpanded">
|
||||||
{{app.getLz('term.showMore')}}
|
{{app.getLz('term.showMore')}}
|
||||||
</button>
|
</button>
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -89,6 +89,10 @@
|
||||||
if (typeof url == "undefined" || url == "") {
|
if (typeof url == "undefined" || url == "") {
|
||||||
return "https://beta.music.apple.com/assets/product/MissingArtworkMusic.svg"
|
return "https://beta.music.apple.com/assets/product/MissingArtworkMusic.svg"
|
||||||
}
|
}
|
||||||
|
height = parseInt(height * window.devicePixelRatio)
|
||||||
|
if(width) {
|
||||||
|
width = parseInt(width * window.devicePixelRatio)
|
||||||
|
}
|
||||||
let newurl = `${url.replace('{w}', width ?? height).replace('{h}', height).replace('{f}', "webp").replace('{c}', ((width === 900) ? "sr" : "cc"))}`;
|
let newurl = `${url.replace('{w}', width ?? height).replace('{h}', height).replace('{f}', "webp").replace('{c}', ((width === 900) ? "sr" : "cc"))}`;
|
||||||
|
|
||||||
if (newurl.includes("900x516")) {
|
if (newurl.includes("900x516")) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue