Merge branch 'develop' into enhancement/radio
This commit is contained in:
commit
a9fc51e1de
14 changed files with 577 additions and 248 deletions
|
@ -1,21 +1,26 @@
|
||||||
version: 2.1
|
version: 2.1
|
||||||
orbs: # adds orbs to your configuration
|
|
||||||
jira: circleci/jira@1.0.5 # invokes the Jira orb, making its commands accessible
|
executors:
|
||||||
branches:
|
cider-ci:
|
||||||
only:
|
|
||||||
- main
|
|
||||||
- develop
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
working_directory: ~/Cider
|
|
||||||
docker:
|
docker:
|
||||||
- image: circleci/node:16
|
- image: circleci/node:16
|
||||||
|
working_directory: ~/Cider
|
||||||
|
|
||||||
|
orbs: # Add orbs to your configuration
|
||||||
|
jira: circleci/jira@1.0.5 # invokes the Jira orb, making its commands accessible
|
||||||
|
|
||||||
|
# The jobs for this project
|
||||||
|
jobs:
|
||||||
|
prepare-build:
|
||||||
|
executor: cider-ci
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- run:
|
- run:
|
||||||
name: Set App Version
|
name: Set App Version
|
||||||
command: echo "export APP_VERSION=$(grep '"version":.*' package.json | cut -d '"' -f 4 | head -1)" >> $BASH_ENV
|
command: echo "export APP_VERSION=$(grep '"version":.*' package.json | cut -d '"' -f 4 | head -1)" >> $BASH_ENV
|
||||||
|
# - run:
|
||||||
|
# name: Rename Repository
|
||||||
|
# command: sed -i 's/github:ciderapp\/Cider/github:ciderapp\/cider-releases/' package.json
|
||||||
- run:
|
- run:
|
||||||
name: Update Package Managers
|
name: Update Package Managers
|
||||||
command: sudo npm update -g npm yarn
|
command: sudo npm update -g npm yarn
|
||||||
|
@ -24,7 +29,7 @@ jobs:
|
||||||
keys:
|
keys:
|
||||||
- yarn-packages-{{ checksum "cider.lock" }}
|
- yarn-packages-{{ checksum "cider.lock" }}
|
||||||
- run:
|
- run:
|
||||||
name: Install Dependencies
|
name: Install Node Dependencies
|
||||||
command: yarn install --frozen-lockfile --cache-folder ~/.cache/yarn
|
command: yarn install --frozen-lockfile --cache-folder ~/.cache/yarn
|
||||||
- save_cache:
|
- save_cache:
|
||||||
name: Save Yarn Package Cache
|
name: Save Yarn Package Cache
|
||||||
|
@ -32,50 +37,160 @@ jobs:
|
||||||
paths:
|
paths:
|
||||||
- ~/.cache/yarn
|
- ~/.cache/yarn
|
||||||
- run:
|
- run:
|
||||||
name: Install system build dependencies
|
name: TypeScript Compile
|
||||||
command: |
|
command: yarn build
|
||||||
sudo apt-get update -y
|
- persist_to_workspace:
|
||||||
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg
|
# Must be an absolute path, or relative path from working_directory. This is a directory on the container which is
|
||||||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
|
# taken to be the root directory of the workspace.
|
||||||
sudo apt-get install -y dpkg fakeroot wine64
|
root: .
|
||||||
sudo dpkg --add-architecture i386
|
# Must be relative path from root
|
||||||
sudo apt-get update -y
|
paths:
|
||||||
sudo apt-get install -y wine32
|
- node_modules
|
||||||
sudo apt install -y gh
|
- build
|
||||||
|
- resources
|
||||||
|
- yarn.lock
|
||||||
|
- package.json
|
||||||
|
- winget.json # winget.json is a file that is generated by the winget package manager
|
||||||
|
- LICENSE
|
||||||
|
- license.txt
|
||||||
|
|
||||||
|
build-linux:
|
||||||
|
executor: cider-ci
|
||||||
|
steps:
|
||||||
|
- attach_workspace:
|
||||||
|
at: ~/Cider
|
||||||
- run:
|
- run:
|
||||||
name: Fix Versioning and Add Channel
|
name: Fix Versioning and Add Channel
|
||||||
command: yarn circle:script
|
command: yarn circle:script
|
||||||
- run:
|
|
||||||
name: TypeScript Compile
|
|
||||||
command: yarn build
|
|
||||||
- run:
|
- run:
|
||||||
name: Generate Builds (Linux)
|
name: Generate Builds (Linux)
|
||||||
command: yarn electron-builder -l -p never
|
command: yarn electron-builder -l -p never
|
||||||
post-steps:
|
post-steps:
|
||||||
- jira/notify
|
- jira/notify
|
||||||
|
- persist_to_workspace:
|
||||||
|
root: .
|
||||||
|
paths:
|
||||||
|
- dist/*.deb
|
||||||
|
- dist/*.AppImage
|
||||||
|
- dist/*.snap
|
||||||
|
- dist/latest-linux.yml
|
||||||
|
|
||||||
|
build-windows:
|
||||||
|
executor: cider-ci
|
||||||
|
steps:
|
||||||
|
- attach_workspace:
|
||||||
|
at: ~/Cider
|
||||||
|
- run:
|
||||||
|
name: Install Windows System Build Dependencies
|
||||||
|
command: |
|
||||||
|
sudo apt-get update -y
|
||||||
|
sudo apt-get install -y dpkg fakeroot wine64
|
||||||
|
sudo dpkg --add-architecture i386
|
||||||
|
sudo apt-get update -y
|
||||||
|
sudo apt-get install -y wine32
|
||||||
|
- run:
|
||||||
|
name: Fix Versioning and Add Channel
|
||||||
|
command: yarn circle:script
|
||||||
- run:
|
- run:
|
||||||
name: Generate Builds (Windows)
|
name: Generate Builds (Windows)
|
||||||
command: yarn electron-builder -w --x64 -p never
|
command: yarn electron-builder -w --x64 -p never
|
||||||
post-steps:
|
post-steps:
|
||||||
- jira/notify
|
- jira/notify
|
||||||
|
- persist_to_workspace:
|
||||||
|
root: .
|
||||||
|
paths:
|
||||||
|
- dist/*.exe
|
||||||
|
- dist/Cider-Setup-*.exe.blockmap
|
||||||
|
- dist/latest.yml
|
||||||
|
|
||||||
|
build-winget:
|
||||||
|
executor: cider-ci
|
||||||
|
steps:
|
||||||
|
- attach_workspace:
|
||||||
|
at: ~/Cider
|
||||||
|
- run:
|
||||||
|
name: Install Windows System Build Dependencies
|
||||||
|
command: |
|
||||||
|
sudo apt-get update -y
|
||||||
|
sudo apt-get install -y dpkg fakeroot wine64
|
||||||
|
sudo dpkg --add-architecture i386
|
||||||
|
sudo apt-get update -y
|
||||||
|
sudo apt-get install -y wine32
|
||||||
|
- run:
|
||||||
|
name: Fix Versioning and Add Channel
|
||||||
|
command: yarn circle:script
|
||||||
- run:
|
- run:
|
||||||
name: Generate Builds (Winget)
|
name: Generate Builds (Winget)
|
||||||
command: yarn electron-builder --win -c winget.json -p never
|
command: yarn electron-builder --win -c winget.json -p never
|
||||||
post-steps:
|
post-steps:
|
||||||
- jira/notify
|
- jira/notify
|
||||||
|
- persist_to_workspace:
|
||||||
|
root: .
|
||||||
|
paths:
|
||||||
|
- dist/*.exe
|
||||||
|
- dist/Cider-Setup-winget-*.exe.blockmap
|
||||||
|
|
||||||
|
release:
|
||||||
|
executor: cider-ci
|
||||||
|
steps:
|
||||||
|
- attach_workspace:
|
||||||
|
at: ~/Cider/
|
||||||
|
- run:
|
||||||
|
name: Installing GitHub Command Line Interface
|
||||||
|
command: |
|
||||||
|
sudo apt-get update -y
|
||||||
|
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg
|
||||||
|
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
|
||||||
|
sudo apt-get update -y
|
||||||
|
sudo apt install -y gh
|
||||||
- run:
|
- run:
|
||||||
name: Move Build Files
|
name: Move Build Files
|
||||||
command: |
|
command: |
|
||||||
mkdir ~/Cider/dist/artifacts/
|
mkdir ~/Cider/dist/artifacts/
|
||||||
mv ~/Cider/dist/*.exe ~/Cider/dist/artifacts
|
mv ~/Cider/dist/*.exe ~/Cider/dist/artifacts
|
||||||
mv ~/Cider/dist/*.deb ~/Cider/dist/artifacts
|
mv ~/Cider/dist/*.deb ~/Cider/dist/artifacts
|
||||||
mv ~/Cider/dist/*.AppImage ~/Cider/dist/artifacts
|
mv ~/Cider/dist/*.AppImage ~/Cider/dist/artifacts
|
||||||
mv ~/Cider/dist/*.snap ~/Cider/dist/artifacts
|
mv ~/Cider/dist/*.snap ~/Cider/dist/artifacts
|
||||||
mv ~/Cider/dist/*.yml ~/Cider/dist/artifacts
|
mv ~/Cider/dist/*.yml ~/Cider/dist/artifacts
|
||||||
mv ~/Cider/dist/*.blockmap ~/Cider/dist/artifacts
|
mv ~/Cider/dist/*.blockmap ~/Cider/dist/artifacts
|
||||||
- store_artifacts:
|
- store_artifacts:
|
||||||
path: ~/Cider/dist/artifacts
|
path: ~/Cider/dist/artifacts
|
||||||
- run:
|
- run:
|
||||||
name: Publish Release
|
name: Publish Release
|
||||||
command: |
|
command: |
|
||||||
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
|
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
|
||||||
|
|
||||||
|
# Orchestrate our job run sequence
|
||||||
|
workflows:
|
||||||
|
build_and_release:
|
||||||
|
jobs:
|
||||||
|
- prepare-build:
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
only: main
|
||||||
|
- build-windows:
|
||||||
|
requires:
|
||||||
|
- prepare-build
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
only: main
|
||||||
|
- build-linux:
|
||||||
|
requires:
|
||||||
|
- prepare-build
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
only: main
|
||||||
|
- build-winget:
|
||||||
|
requires:
|
||||||
|
- prepare-build
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
only: main
|
||||||
|
- release:
|
||||||
|
requires:
|
||||||
|
- build-windows
|
||||||
|
- build-linux
|
||||||
|
- build-winget
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
only: main
|
||||||
|
|
|
@ -1,53 +1,46 @@
|
||||||
|
|
||||||
|
|
||||||
if (!process.env['CIRCLECI']) {
|
if (!process.env['CIRCLECI']) {
|
||||||
console.log(`[CIRCLECI SCRIPT] CircleCI not found... Aborting script`)
|
console.log(`[CIRCLECI SCRIPT] CircleCI not found... Aborting script`)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
let fs = require('fs')
|
const {readFileSync, writeFile} = require('fs')
|
||||||
|
const pkg = JSON.parse(readFileSync('package.json').toString());
|
||||||
|
|
||||||
|
let channel = process.env['CIRCLE_BRANCH'];
|
||||||
|
|
||||||
var data = fs.readFileSync('package.json');
|
|
||||||
var package = JSON.parse(data);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
let channel;
|
|
||||||
if (process.env['CIRCLE_BRANCH'] === 'lts') {
|
if (process.env['CIRCLE_BRANCH'] === 'lts') {
|
||||||
channel = 'latest'
|
channel = 'latest'
|
||||||
} else if (process.env['CIRCLE_BRANCH'] === 'main') {
|
} else if (process.env['CIRCLE_BRANCH'] === 'main') {
|
||||||
channel = 'beta'
|
channel = 'beta'
|
||||||
} else if (process.env['CIRCLE_BRANCH'] === 'develop') {
|
} else if (process.env['CIRCLE_BRANCH'] === 'develop') {
|
||||||
channel = 'alpha'
|
channel = 'alpha'
|
||||||
} else {
|
|
||||||
channel = process.env['CIRCLE_BRANCH'] // It won't have auto update support
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
channel = channel.split('/').join('-')
|
||||||
|
|
||||||
// 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('.')
|
const version = pkg.version.split('.');
|
||||||
package.version = `${pvers[0]}.${pvers[1]}.${pvers[2]}-${channel}.${process.env['CIRCLE_BUILD_NUM']}`
|
pkg.version = `${version[0]}.${version[1]}.${version[2]}-${channel}`
|
||||||
// package.build.channel = channel
|
// package.build.channel = channel
|
||||||
package.publish = {
|
pkg.publish = {
|
||||||
"provider": "github",
|
"provider": "github",
|
||||||
"repo": "cider-releases",
|
"repo": "cider-releases",
|
||||||
"owner": "ciderapp",
|
"owner": "ciderapp",
|
||||||
"vPrefixedTagName": true,
|
"vPrefixedTagName": true,
|
||||||
"tag": `v${package.version}`,
|
"tag": `v${pkg.version}`,
|
||||||
"channel": channel,
|
"channel": channel,
|
||||||
"releaseType": "release"
|
"releaseType": "release"
|
||||||
}
|
}
|
||||||
|
|
||||||
let {exec} = require('child_process')
|
const {exec} = require('child_process')
|
||||||
exec('echo $APP_VERSION', {env: {'APP_VERSION': package.version}}, function (error, stdout, stderr)
|
|
||||||
{
|
exec('echo $APP_VERSION', {env: {'APP_VERSION': pkg.version}}, function (error, stdout, stderr) {
|
||||||
console.log(stdout, stderr, error);
|
console.log(stdout, stderr, error);
|
||||||
});
|
});
|
||||||
fs.writeFile('package.json', JSON.stringify(package), err => {
|
|
||||||
// error checking
|
writeFile('package.json', JSON.stringify(pkg), err => {
|
||||||
if(err) throw err;
|
// error checking
|
||||||
console.log(`VERSION CHANGED TO ${package.version}`);
|
if (err) throw err;
|
||||||
|
console.log(`VERSION CHANGED TO ${pkg.version}`);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -297,7 +297,44 @@ Update 28/04/2022 21:45 UTC
|
||||||
* `settings.option.general.resumetabs.description`: Added for `en_US`
|
* `settings.option.general.resumetabs.description`: Added for `en_US`
|
||||||
* `settings.option.general.resumetabs.dynamic`: Added for `en_US`
|
* `settings.option.general.resumetabs.dynamic`: Added for `en_US`
|
||||||
* `settings.option.general.resumetabs.dynamic.description`: Added for `en_US`
|
* `settings.option.general.resumetabs.dynamic.description`: Added for `en_US`
|
||||||
|
* `term.dynamic`: Added for `en_US`
|
||||||
|
|
||||||
|
Update 29/04/2022 00:00 UTC
|
||||||
|
|
||||||
|
* `menubar.options.about`: Added for `en_US`
|
||||||
|
* `menubar.options.settings`: Added for `en_US`
|
||||||
|
* `menubar.options.quit`: Added for `en_US`
|
||||||
|
* `menubar.options.view`: Added for `en_US`
|
||||||
|
* `menubar.options.reload`: Added for `en_US`
|
||||||
|
* `menubar.options.forcereload`: Added for `en_US`
|
||||||
|
* `menubar.options.toggledevtools`: Added for `en_US`
|
||||||
|
* `menubar.options.window`: Added for `en_US`
|
||||||
|
* `menubar.options.minimize`: Added for `en_US`
|
||||||
|
* `menubar.options.toggleprivate`: Added for `en_US`
|
||||||
|
* `menubar.options.webremote`: Added for `en_US`
|
||||||
|
* `menubar.options.audio`: Added for `en_US`
|
||||||
|
* `menubar.options.plugins`: Added for `en_US`
|
||||||
|
* `menubar.options.control`: Added for `en_US`
|
||||||
|
* `menubar.options.next`: "Added for `en_US`
|
||||||
|
* `menubar.options.previous`: Added for `en_US`
|
||||||
|
* `menubar.options.volumeup`: Added for `en_US`
|
||||||
|
* `menubar.options.volumedown`: Added for `en_US`
|
||||||
|
* `menubar.options.browse`: Added for `en_US`
|
||||||
|
* `menubar.options.artists`: Added for `en_US`
|
||||||
|
* `menubar.options.search`: Added for `en_US`
|
||||||
|
* `menubar.options.albums`: Added for `en_US`
|
||||||
|
* `menubar.options.cast`: Added for `en_US`
|
||||||
|
* `menubar.options.account`: Added for `en_US`
|
||||||
|
* `menubar.options.accountsettings`: Added for `en_US`
|
||||||
|
* `menubar.options.signout`: Added for `en_US`
|
||||||
|
* `menubar.options.support`: Added for `en_US`
|
||||||
|
* `menubar.options.discord`: Added for `en_US`
|
||||||
|
* `menubar.options.github`: Added for `en_US`
|
||||||
|
* `menubar.options.report`: Added for `en_US`
|
||||||
|
* `menubar.options.bug`: Added for `en_US`
|
||||||
|
* `menubar.options.feature`: Added for `en_US`
|
||||||
|
* `menubar.options.trans`: Added for `en_US`
|
||||||
|
* `menubar.options.license`: Added for `en_US`
|
||||||
|
* `menubar.options.conf`: Added for `en_US`
|
||||||
|
|
||||||
|
|
||||||
Update 07/05/2022 04:00 UTC
|
|
||||||
* `term.personalStations`: Added for `en_US`
|
|
||||||
`term.amLive`: Added for `en_US`
|
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
"notification.updatingLibrarySongs": "Ενημέρωση βιβλιοθήκης τραγουδιών...",
|
"notification.updatingLibrarySongs": "Ενημέρωση βιβλιοθήκης τραγουδιών...",
|
||||||
"notification.updatingLibraryAlbums": "Ενημέρωση βιβλιοθήκης άλμπουμ...",
|
"notification.updatingLibraryAlbums": "Ενημέρωση βιβλιοθήκης άλμπουμ...",
|
||||||
"notification.updatingLibraryArtists": "Ενημέρωση βιβλιοθήκης καλλιτεχνών...",
|
"notification.updatingLibraryArtists": "Ενημέρωση βιβλιοθήκης καλλιτεχνών...",
|
||||||
|
"term.variables": "Μεταβλητές",
|
||||||
"term.appleInc": "Apple Inc.",
|
"term.appleInc": "Apple Inc.",
|
||||||
"term.appleMusic": "Apple Music",
|
"term.appleMusic": "Apple Music",
|
||||||
"term.applePodcasts": "Apple Podcasts",
|
"term.applePodcasts": "Apple Podcasts",
|
||||||
|
@ -20,9 +21,13 @@
|
||||||
"term.accountSettings": "Ρυθμίσεις λογαριασμού",
|
"term.accountSettings": "Ρυθμίσεις λογαριασμού",
|
||||||
"term.logout": "Αποσύνδεση",
|
"term.logout": "Αποσύνδεση",
|
||||||
"term.login": "Σύνδεση",
|
"term.login": "Σύνδεση",
|
||||||
|
"term.cast": "Μετάδοση",
|
||||||
"term.about": "Σχετικά με",
|
"term.about": "Σχετικά με",
|
||||||
"term.privateSession": "Ιδιωτική περίοδος λειτουργίας",
|
"term.privateSession": "Ιδιωτική περίοδος λειτουργίας",
|
||||||
|
"term.disablePrivateSession": "Απενεργ. ιδιωτικής περ. λειτουργίας",
|
||||||
"term.queue": "Ουρά",
|
"term.queue": "Ουρά",
|
||||||
|
"term.lyrics": "Στίχοι",
|
||||||
|
"term.miniplayer": "MiniPlayer",
|
||||||
"term.history": "Ιστορικό",
|
"term.history": "Ιστορικό",
|
||||||
"term.search": "Εύρεση",
|
"term.search": "Εύρεση",
|
||||||
"term.library": "Βιβλιοθήκη",
|
"term.library": "Βιβλιοθήκη",
|
||||||
|
@ -68,6 +73,7 @@
|
||||||
"term.viewAs": "Προβολή ως",
|
"term.viewAs": "Προβολή ως",
|
||||||
"term.viewAs.coverArt": "Εξώφυλλο",
|
"term.viewAs.coverArt": "Εξώφυλλο",
|
||||||
"term.viewAs.list": "Λίστα",
|
"term.viewAs.list": "Λίστα",
|
||||||
|
"term.dynamic": "Δυναμικό",
|
||||||
"term.size": "Μέγεθος",
|
"term.size": "Μέγεθος",
|
||||||
"term.size.normal": "Κανονικό",
|
"term.size.normal": "Κανονικό",
|
||||||
"term.size.compact": "Συμπαγή",
|
"term.size.compact": "Συμπαγή",
|
||||||
|
@ -89,12 +95,26 @@
|
||||||
"term.time.added": "Προστέθηκε",
|
"term.time.added": "Προστέθηκε",
|
||||||
"term.time.released": "Κυκλοφόρησε",
|
"term.time.released": "Κυκλοφόρησε",
|
||||||
"term.time.updated": "Ενημερώθηκε",
|
"term.time.updated": "Ενημερώθηκε",
|
||||||
|
"term.time.days": "μέρες",
|
||||||
|
"term.time.day": {
|
||||||
|
"one": "μέρα",
|
||||||
|
"other": "μέρες"
|
||||||
|
},
|
||||||
"term.time.hours": "ώρες",
|
"term.time.hours": "ώρες",
|
||||||
"term.time.hour": "ώρα",
|
"term.time.hour": {
|
||||||
|
"one": "ώρα",
|
||||||
|
"other": "ώρες"
|
||||||
|
},
|
||||||
"term.time.minutes": "λεπτά",
|
"term.time.minutes": "λεπτά",
|
||||||
"term.time.minute": "λεπτό",
|
"term.time.minute": {
|
||||||
|
"one": "λεπτό",
|
||||||
|
"other": "λεπτά"
|
||||||
|
},
|
||||||
"term.time.seconds": "δευτερόλεπτα",
|
"term.time.seconds": "δευτερόλεπτα",
|
||||||
"term.time.second": "δευτερόλεπτο",
|
"term.time.second": {
|
||||||
|
"one": "δευτερόλεπτο",
|
||||||
|
"other": "δευτερόλεπτα"
|
||||||
|
},
|
||||||
"term.fullscreenView": "Πλήρης οθόνη",
|
"term.fullscreenView": "Πλήρης οθόνη",
|
||||||
"term.defaultView": "Κανονική οθόνη",
|
"term.defaultView": "Κανονική οθόνη",
|
||||||
"term.audioSettings": "Ρυθμίσεις ήχου",
|
"term.audioSettings": "Ρυθμίσεις ήχου",
|
||||||
|
@ -114,7 +134,8 @@
|
||||||
"term.contributors": "Συνεισφέροντες",
|
"term.contributors": "Συνεισφέροντες",
|
||||||
"term.equalizer": "Ισοσταθμιστής",
|
"term.equalizer": "Ισοσταθμιστής",
|
||||||
"term.reset": "Επαναφορά",
|
"term.reset": "Επαναφορά",
|
||||||
"term.tracks": {
|
"term.tracks": "τραγούδια",
|
||||||
|
"term.track": {
|
||||||
"one": "τραγούδι",
|
"one": "τραγούδι",
|
||||||
"other": "τραγούδια"
|
"other": "τραγούδια"
|
||||||
},
|
},
|
||||||
|
@ -145,6 +166,7 @@
|
||||||
"term.noVideos": "Δεν βρέθηκαν βίντεο",
|
"term.noVideos": "Δεν βρέθηκαν βίντεο",
|
||||||
"term.plugin": "Πρόσθετα",
|
"term.plugin": "Πρόσθετα",
|
||||||
"term.pluginMenu": "Μενού πρόσθετων",
|
"term.pluginMenu": "Μενού πρόσθετων",
|
||||||
|
"term.pluginMenu.none": "Δεν υπάρχουν πρόσθετα",
|
||||||
"term.replay": "Replay",
|
"term.replay": "Replay",
|
||||||
"term.uniqueAlbums": "Μοναδικά άλμπουμ",
|
"term.uniqueAlbums": "Μοναδικά άλμπουμ",
|
||||||
"term.uniqueArtists": "Μοναδικοί καλλιτέχνες",
|
"term.uniqueArtists": "Μοναδικοί καλλιτέχνες",
|
||||||
|
@ -156,10 +178,12 @@
|
||||||
"term.plays": "Αναπαραγωγές",
|
"term.plays": "Αναπαραγωγές",
|
||||||
"term.topGenres": "Κορυφαία είδη",
|
"term.topGenres": "Κορυφαία είδη",
|
||||||
"term.confirmLogout": "Θέλετε σίγουρα να αποσυνδεθείτε;",
|
"term.confirmLogout": "Θέλετε σίγουρα να αποσυνδεθείτε;",
|
||||||
|
"term.creditDesignedBy": "Σχεδιάστηκε από ${authorUsername}",
|
||||||
|
"term.discNumber": "Δίσκος ${discNumber}",
|
||||||
"home.title": "Αρχική",
|
"home.title": "Αρχική",
|
||||||
"home.recentlyPlayed": "Έπαιξαν πρόσφατα",
|
"home.recentlyPlayed": "Έπαιξαν πρόσφατα",
|
||||||
"home.recentlyAdded": "Πρόσφατες προσθήκες",
|
"home.recentlyAdded": "Πρόσφατες προσθήκες",
|
||||||
"home.artistsFeed": "Ροή των καλλιτεχνών σου",
|
"home.artistsFeed": "Ροή των καλλιτεχνών σας",
|
||||||
"home.artistsFeed.noArtist": "Ακολούθησε μερικούς καλλιτέχνες πρώτα και οι τελευταίες κυκλοφορίες τους θα εμφανίζονται εδώ",
|
"home.artistsFeed.noArtist": "Ακολούθησε μερικούς καλλιτέχνες πρώτα και οι τελευταίες κυκλοφορίες τους θα εμφανίζονται εδώ",
|
||||||
"home.madeForYou": "Δημιουργήθηκε για εσάς",
|
"home.madeForYou": "Δημιουργήθηκε για εσάς",
|
||||||
"home.friendsListeningTo": "Οι φίλοι σου ακούν",
|
"home.friendsListeningTo": "Οι φίλοι σου ακούν",
|
||||||
|
@ -176,6 +200,9 @@
|
||||||
"podcast.episodes": "Επεισόδια",
|
"podcast.episodes": "Επεισόδια",
|
||||||
"podcast.playEpisode": "Αναπαραγωγή επεισοδίου",
|
"podcast.playEpisode": "Αναπαραγωγή επεισοδίου",
|
||||||
"podcast.website": "Ιστότοπος Podcast",
|
"podcast.website": "Ιστότοπος Podcast",
|
||||||
|
"action.edit": "Επεξεργασία",
|
||||||
|
"action.done": "Τέλος",
|
||||||
|
"action.editTracklist": "Επεξεργασία λίστας τραγουδιών",
|
||||||
"action.addToLibrary": "Προσθήκη στη βιβλιοθήκη",
|
"action.addToLibrary": "Προσθήκη στη βιβλιοθήκη",
|
||||||
"action.addToLibrary.success": "Προστέθηκε στη βιβλιοθήκη",
|
"action.addToLibrary.success": "Προστέθηκε στη βιβλιοθήκη",
|
||||||
"action.addToLibrary.error": "Σφάλμα Προσθήκης στη βιβλιοθήκης",
|
"action.addToLibrary.error": "Σφάλμα Προσθήκης στη βιβλιοθήκης",
|
||||||
|
@ -202,6 +229,8 @@
|
||||||
"action.startRadio": "Έναρξη ραδιοφώνου",
|
"action.startRadio": "Έναρξη ραδιοφώνου",
|
||||||
"action.goToArtist": "Μετάβαση σε καλλιτέχνη",
|
"action.goToArtist": "Μετάβαση σε καλλιτέχνη",
|
||||||
"action.goToAlbum": "Μετάβαση σε άλμπουμ",
|
"action.goToAlbum": "Μετάβαση σε άλμπουμ",
|
||||||
|
"action.showInPlaylist": "Εμφάνιση στη λίστα αναπαραγωγής",
|
||||||
|
"action.showInAppleMusic": "Εμφάνιση στο Apple Music",
|
||||||
"action.moveToTop": "Μετακίνηση στη κορυφή",
|
"action.moveToTop": "Μετακίνηση στη κορυφή",
|
||||||
"action.share": "Κοινή χρήση",
|
"action.share": "Κοινή χρήση",
|
||||||
"action.rename": "Μετονομασία",
|
"action.rename": "Μετονομασία",
|
||||||
|
@ -209,7 +238,7 @@
|
||||||
"action.unlove": "Αναίρεση \"Μου αρέσει\"",
|
"action.unlove": "Αναίρεση \"Μου αρέσει\"",
|
||||||
"action.dislike": "Δεν μου αρέσει",
|
"action.dislike": "Δεν μου αρέσει",
|
||||||
"action.undoDislike": "Αναίρεση \"Δεν μου αρέσει\"",
|
"action.undoDislike": "Αναίρεση \"Δεν μου αρέσει\"",
|
||||||
"action.showWebRemoteQR": "Εμφάνιση Web Remote QR",
|
"action.showWebRemoteQR": "Web Remote",
|
||||||
"action.playTracksNext": "Αναπαραγωγή ${app.selectedMediaItems.length} τραγουδιών ως επόμενων",
|
"action.playTracksNext": "Αναπαραγωγή ${app.selectedMediaItems.length} τραγουδιών ως επόμενων",
|
||||||
"action.playTracksLater": "Αναπαραγωγή ${app.selectedMediaItems.length} τραγουδιών αργότερα",
|
"action.playTracksLater": "Αναπαραγωγή ${app.selectedMediaItems.length} τραγουδιών αργότερα",
|
||||||
"action.removeTracks": "Αφαίρεση ${self.selectedItems.length} τραγουδιών από την ουρά",
|
"action.removeTracks": "Αφαίρεση ${self.selectedItems.length} τραγουδιών από την ουρά",
|
||||||
|
@ -218,13 +247,23 @@
|
||||||
"action.showAlbum": "Εμφάνιση ολόκληρου άλμπουμ",
|
"action.showAlbum": "Εμφάνιση ολόκληρου άλμπουμ",
|
||||||
"action.tray.minimize": "Ελαχιστοποίηση στη γωνία γραμμής εργασιών",
|
"action.tray.minimize": "Ελαχιστοποίηση στη γωνία γραμμής εργασιών",
|
||||||
"action.tray.quit": "Έξοδος",
|
"action.tray.quit": "Έξοδος",
|
||||||
|
"action.tray.show": "Εμφάνιση Cider",
|
||||||
"action.update": "Ενημέρωση",
|
"action.update": "Ενημέρωση",
|
||||||
"action.install": "Εγκατάσταση",
|
"action.install": "Εγκατάσταση",
|
||||||
"action.copy": "Αντιγραφή",
|
"action.copy": "Αντιγραφή",
|
||||||
"action.newpreset": "Νέα προρύθμιση...",
|
"action.newpreset": "Νέα προρύθμιση...",
|
||||||
"action.deletepreset": "Διαγραφή προρύθμισης",
|
"action.deletepreset": "Διαγραφή προρύθμισης",
|
||||||
"action.open": "Άνοιγμα",
|
"action.open": "Άνοιγμα",
|
||||||
|
"action.relaunch.confirm": "Θέλετε να επανεκκινήσετε τον Cider;",
|
||||||
|
"action.cast.chromecast": "Chromecast",
|
||||||
|
"action.cast.todevices": "Μετάδοση σε συσκευές",
|
||||||
|
"action.cast.stop": "Διακοπή μετάδοσης σε όλες τις συσκευές",
|
||||||
|
"action.cast.airplay": "AirPlay",
|
||||||
|
"action.cast.airplay.underdevelopment": "Το AirPlay είναι ακόμη υπό ανάπτυξη",
|
||||||
|
"action.cast.scan": "Σάρωση",
|
||||||
|
"action.cast.scanning": "Γίνεται σάρωση...",
|
||||||
|
"action.createNew": "Δημιουργία νέας...",
|
||||||
|
"action.openArtworkInBrowser": "Άνοιγμα εξώφυλλου στον περιηγητή",
|
||||||
"settings.header.general": "Γενικά",
|
"settings.header.general": "Γενικά",
|
||||||
"settings.header.general.description": "Προσαρμογή γενικών ρυθμίσεων για το Cider.",
|
"settings.header.general.description": "Προσαρμογή γενικών ρυθμίσεων για το Cider.",
|
||||||
"settings.option.general.language": "Γλώσσα",
|
"settings.option.general.language": "Γλώσσα",
|
||||||
|
@ -234,6 +273,10 @@
|
||||||
"settings.option.general.resumebehavior.locally.description": "Το Cider θα συνεχίσει την τελευταία συνεδρία σας αυτής της συσκευής.",
|
"settings.option.general.resumebehavior.locally.description": "Το Cider θα συνεχίσει την τελευταία συνεδρία σας αυτής της συσκευής.",
|
||||||
"settings.option.general.resumebehavior.history": "Ιστορικό",
|
"settings.option.general.resumebehavior.history": "Ιστορικό",
|
||||||
"settings.option.general.resumebehavior.history.description": "Το Cider θα βάλει στην ουρά το τελευταίο τραγούδι από το συνολικό ιστορικό Apple Music, όλων των συσκευών σας.",
|
"settings.option.general.resumebehavior.history.description": "Το Cider θα βάλει στην ουρά το τελευταίο τραγούδι από το συνολικό ιστορικό Apple Music, όλων των συσκευών σας.",
|
||||||
|
"settings.option.general.resumetabs": "Άνοιγμα καρτέλας στην εκκίνηση",
|
||||||
|
"settings.option.general.resumetabs.description": "Μπορείτε να επιλέξετε ποια καρτέλα θα εμφανίζεται όταν ανοίγετε τον Cider.",
|
||||||
|
"settings.option.general.resumetabs.dynamic": "Δυναμικό",
|
||||||
|
"settings.option.general.resumetabs.dynamic.description": "Ο Cider θα ανοίγει την καρτέλα που χρησιμοποιήσατε τελευταία.",
|
||||||
"settings.option.general.language.main": "Γλώσσες",
|
"settings.option.general.language.main": "Γλώσσες",
|
||||||
"settings.option.general.language.fun": "Γλώσσες για πλάκα",
|
"settings.option.general.language.fun": "Γλώσσες για πλάκα",
|
||||||
"settings.option.general.language.unsorted": "Αταξινόμητες",
|
"settings.option.general.language.unsorted": "Αταξινόμητες",
|
||||||
|
@ -242,10 +285,34 @@
|
||||||
"settings.option.general.updateCider.branch.description": "Επιλέξτε τον κλάδο στον οποίο θα γίνεται η ενημέρωση του Cider",
|
"settings.option.general.updateCider.branch.description": "Επιλέξτε τον κλάδο στον οποίο θα γίνεται η ενημέρωση του Cider",
|
||||||
"settings.option.general.updateCider.branch.main": "Σταθερό",
|
"settings.option.general.updateCider.branch.main": "Σταθερό",
|
||||||
"settings.option.general.updateCider.branch.develop": "Αναπτυξιακό",
|
"settings.option.general.updateCider.branch.develop": "Αναπτυξιακό",
|
||||||
|
"settings.option.general.customizeSidebar": "Προσαρμογή στοιχείων πλευρικής μπάρας",
|
||||||
|
"settings.option.general.customizeSidebar.customize": "Προσαρμογή",
|
||||||
|
"settings.option.general.keybindings": "Συνδυασμοί πλήκτρων",
|
||||||
|
"settings.notyf.general.keybindings.update.success": "Ο συνδιασμός ενημερώθηκε με επιτυχία",
|
||||||
|
"settings.prompt.general.keybindings.update.success": "Ο συνδιασμός ενημερώθηκε με επιτυχία. Πατήστε ΟΚ για επανεκκίνηση του Cider",
|
||||||
|
"settings.option.general.keybindings.open": "Άνοιγμα",
|
||||||
|
"settings.description.search": "Αναζήτηση",
|
||||||
|
"settings.description.albums": "Άλμπουμ βιβλιοθήκης",
|
||||||
|
"settings.description.artists": "Καλλιτέχνες βιβλιοθήκης",
|
||||||
|
"settings.description.browse": "Περιήγηση",
|
||||||
|
"settings.description.private": "Εναλλαγή ιδιωτικής περιόδου λειτουργίας",
|
||||||
|
"settings.description.remote": "Web Remote",
|
||||||
|
"settings.description.audio": "Ρυθμίσεις ήχου",
|
||||||
|
"settings.description.plugins": "Μενού πρόσθετων",
|
||||||
|
"settings.description.cast": "Μετάδοση σε συσκευές",
|
||||||
|
"settings.description.settings": "Ρυθμίσεις",
|
||||||
|
"settings.description.developer": "Εργαλεία προγραμματιστή",
|
||||||
|
"settings.notyf.updateCider.update-not-available": "Δεν υπάρχει διαθέσιμη ενημέρωση",
|
||||||
|
"settings.notyf.updateCider.update-downloaded": "Έγινε λήψη της ενημέρωσης, επανεκκίνησε για εφαρμογή",
|
||||||
|
"settings.notyf.updateCider.update-error": "Σφάλμα ενημέρωσης του Cider",
|
||||||
|
"settings.notyf.updateCider.update-timeout": "Λήξη χρόνου ενημέρωσης",
|
||||||
"settings.header.audio": "Ήχος",
|
"settings.header.audio": "Ήχος",
|
||||||
"settings.header.audio.description": "Προσαρμογή ρυθμίσεων ήχου για το Cider.",
|
"settings.header.audio.description": "Προσαρμογή ρυθμίσεων ήχου για το Cider.",
|
||||||
"settings.option.audio.volumeStep": "Βήματα έντασης",
|
"settings.option.audio.volumeStep": "Βήματα έντασης",
|
||||||
"settings.option.audio.maxVolume": "Μέγιστη ένταση",
|
"settings.option.audio.maxVolume": "Μέγιστη ένταση",
|
||||||
|
"settings.option.audio.changePlaybackRate": "Αλλαγή ταχύτητας αναπαραγωγής",
|
||||||
|
"settings.option.audio.playbackRate": "Ταχύτητα αναπαραγωγής",
|
||||||
|
"settings.option.audio.playbackRate.change": "Αλλαγή",
|
||||||
"settings.option.audio.quality": "Ποιότητα ήχου",
|
"settings.option.audio.quality": "Ποιότητα ήχου",
|
||||||
"settings.header.audio.quality.hireslossless": "Lossless υψηλής ανάλυσης",
|
"settings.header.audio.quality.hireslossless": "Lossless υψηλής ανάλυσης",
|
||||||
"settings.header.audio.quality.hireslossless.description": "έως και 24-bit/192 kHz",
|
"settings.header.audio.quality.hireslossless.description": "έως και 24-bit/192 kHz",
|
||||||
|
@ -258,18 +325,34 @@
|
||||||
"settings.option.audio.seamlessTransition": "Αδιάκοπη μετάβαση ήχου",
|
"settings.option.audio.seamlessTransition": "Αδιάκοπη μετάβαση ήχου",
|
||||||
"settings.option.audio.enableAdvancedFunctionality": "Ενεργοποίηση προηγμένης λειτουργικότητας",
|
"settings.option.audio.enableAdvancedFunctionality": "Ενεργοποίηση προηγμένης λειτουργικότητας",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.description": "Ενεργοποιώντας τη λειτουργικότητα AudioContext θα επιτρέψει σε επεκταμένες δυνατότητες ήχου όπως Κανονικοποίηση Έντασης Ήχου, Ισοσταθμιστές και Οπτικοποιητές, ωστόσο σε κάποια συστήματα μπορεί να προκαλέσει τραύλισμα ήχου.",
|
"settings.option.audio.enableAdvancedFunctionality.description": "Ενεργοποιώντας τη λειτουργικότητα AudioContext θα επιτρέψει σε επεκταμένες δυνατότητες ήχου όπως Κανονικοποίηση Έντασης Ήχου, Ισοσταθμιστές και Οπτικοποιητές, ωστόσο σε κάποια συστήματα μπορεί να προκαλέσει τραύλισμα ήχου.",
|
||||||
|
"settings.warn.audio.enableAdvancedFunctionality.lowcores": "Η συσκευή σου ίσως να μη μπορέσει να χειρηστεί αυτές τις δυνατότητες. Σίγουρα θέλετε να συνεχίσετε;",
|
||||||
"settings.option.audio.audioLab": "Cider Audio Lab",
|
"settings.option.audio.audioLab": "Cider Audio Lab",
|
||||||
"settings.option.audio.audioLab.description": "Περιέχει μια ποικιλία από τροποποιήσεις ήχου που έγιναν από την ομάδα προγραμματιστών του Cider",
|
"settings.option.audio.audioLab.description": "Μια ποικιλία τροποποιήσεων ήχου από την ομάδα προγραμματιστών του Cider.",
|
||||||
|
"settings.option.audio.audioLab.subheader": "Σχεδιάστηκε από τους προγραμματιστές του Cider",
|
||||||
"settings.warn.audioLab.withoutAF": "Το AudioContext (προηγμένη λειτουργικότητα) απαιτείται για την ενεργοποίηση του Cider Audio Laboratory.",
|
"settings.warn.audioLab.withoutAF": "Το AudioContext (προηγμένη λειτουργικότητα) απαιτείται για την ενεργοποίηση του Cider Audio Laboratory.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity": "Ένταση Analog Warmth",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmth": "Αναλογική ζεστασιά",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.description": "Αλλάζει την ένταση της επεξεργασίας του Analog Warmth Module.",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmth.description": "Προσομοιώνει την αναλογική ζεστασιά του Korg Nutube 6P1",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity": "Ένταση αναλογικής ζεστασιάς",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.description": "Αλλάζει την ένταση της επεξεργασίας της αναλογικής ζεστασιάς.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.smooth": "Λείο",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity.warm": "Θερμό",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizer": "Ατμόσφαιρα ήχου",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizer.description": "Εφαρμόζει μια διαφορετική ατμόσφαιρα στον ήχο.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode": "Λειτουργία ατμόσφαιρας ήχου",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.description": "Αλλάζει τη λειτουργία ατμόσφαιρας ήχου.",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.natural1": "Φυσική (Κανονικό)",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.natural2": "Φυσική (Υψηλό)",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.atmosphereRealizerMode.natural3": "Φυσική (Υψηλότερο)",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE": "Επεξεργαστής ήχου Cider (CAP)",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPE.description": "Βελτιώνει την αντιληπτή ποιότητα ήχου χρησιμοποιώντας αλγορίθμους.",
|
||||||
"settings.warn.audio.enableAdvancedFunctionality.ciderPPE.compatibility": "Το CAP δεν είναι συμβατό με τη Χωρικοποίηση Ήχου. Παρακαλούμε απενεργοποιήστε τη Χωρικοποίηση Ήχου για να συνεχίσετε.",
|
"settings.warn.audio.enableAdvancedFunctionality.ciderPPE.compatibility": "Το CAP δεν είναι συμβατό με τη Χωρικοποίηση Ήχου. Παρακαλούμε απενεργοποιήστε τη Χωρικοποίηση Ήχου για να συνεχίσετε.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength": "Ένταση CAP",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength": "Ένταση CAP",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.description": "Αλλάζει την ένταση της επεξεργασίας του ήχου. (Η επιθετική επεξεργασία μπορεί να αποφέρει ανεπιθύμητα αποτελέσματα)",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.description": "Αλλάζει την ένταση της επεξεργασίας του ήχου. (Η επιθετική επεξεργασία μπορεί να αποφέρει ανεπιθύμητα αποτελέσματα)",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.standard": "Κανονική",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.standard": "Κανονική",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Επιθετική",
|
"settings.option.audio.enableAdvancedFunctionality.ciderPPEStrength.aggressive": "Επιθετική",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Κανονικοποίηση Έντασης Ήχου",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization": "Κανονικοποίηση έντασης ήχου",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Κανονικοποιεί την ένταση για μεμονωμένα κομμάτια για μια πιο ομοιόμορφη εμπειρία ακρόασης.",
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.description": "Κανονικοποιεί την ένταση για μεμονωμένα κομμάτια για μια πιο ομοιόμορφη εμπειρία ακρόασης. (Δεν λειτουργεί σε κομμάτια που ανέβηκαν από χρήστες)",
|
||||||
|
"settings.option.audio.enableAdvancedFunctionality.audioNormalization.disabled": "Διαχειρίζεται από το Audio Lab",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Χωρικοποίηση Ήχου",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization": "Χωρικοποίηση Ήχου",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Πιο τρισδιάστατος και χωρικοποιημένος ήχος (σημείωση: Αυτό δεν είναι Dolby Atmos)",
|
"settings.option.audio.enableAdvancedFunctionality.audioSpatialization.description": "Πιο τρισδιάστατος και χωρικοποιημένος ήχος (σημείωση: Αυτό δεν είναι Dolby Atmos)",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Χωρικοποίηση Cider",
|
"settings.option.audio.enableAdvancedFunctionality.tunedAudioSpatialization": "Χωρικοποίηση Cider",
|
||||||
|
@ -281,15 +364,16 @@
|
||||||
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "Η Χωρικοποίηση δεν είναι συμβατή με το CAP. Παρακαλούμε απενεργοποιήστε το CAP για να συνεχίσετε.",
|
"settings.warn.audio.enableAdvancedFunctionality.audioSpatialization.compatibility": "Η Χωρικοποίηση δεν είναι συμβατή με το CAP. Παρακαλούμε απενεργοποιήστε το CAP για να συνεχίσετε.",
|
||||||
"settings.header.visual": "Οπτικά",
|
"settings.header.visual": "Οπτικά",
|
||||||
"settings.header.visual.description": "Προσαρμογή οπτικών ρυθμίσεων για το Cider.",
|
"settings.header.visual.description": "Προσαρμογή οπτικών ρυθμίσεων για το Cider.",
|
||||||
"settings.option.visual.windowBackgroundStyle": "Στυλ Φόντου Παραθύρου",
|
"settings.option.visual.windowStyle": "Στυλ παραθύρου",
|
||||||
|
"settings.option.visual.windowBackgroundStyle": "Στυλ φόντου παραθύρου",
|
||||||
"settings.header.visual.windowBackgroundStyle.none": "Κανένα",
|
"settings.header.visual.windowBackgroundStyle.none": "Κανένα",
|
||||||
"settings.header.visual.windowBackgroundStyle.artwork": "Εξώφυλλο",
|
"settings.header.visual.windowBackgroundStyle.artwork": "Εξώφυλλο",
|
||||||
"settings.header.visual.windowBackgroundStyle.image": "Εικόνα",
|
"settings.header.visual.windowBackgroundStyle.image": "Εικόνα",
|
||||||
"settings.option.visual.animatedArtwork": "Κινούμενο Εξώφυλλο",
|
"settings.option.visual.animatedArtwork": "Κινούμενο εξώφυλλο",
|
||||||
"settings.header.visual.animatedArtwork.always": "Πάντα",
|
"settings.header.visual.animatedArtwork.always": "Πάντα",
|
||||||
"settings.header.visual.animatedArtwork.limited": "Περιορισμός σε σελίδες και ειδικές καταχωρήσεις",
|
"settings.header.visual.animatedArtwork.limited": "Περιορισμός σε σελίδες και ειδικές καταχωρήσεις",
|
||||||
"settings.header.visual.animatedArtwork.disable": "Απενεργοποιημένο παντού",
|
"settings.header.visual.animatedArtwork.disable": "Απενεργοποιημένο παντού",
|
||||||
"settings.option.visual.animatedArtworkQuality": "Ποιότητα Κινούμενου Εξωφύλλου",
|
"settings.option.visual.animatedArtworkQuality": "Ποιότητα κινούμενου εξωφύλλου",
|
||||||
"settings.header.visual.animatedArtworkQuality.low": "Χαμηλή",
|
"settings.header.visual.animatedArtworkQuality.low": "Χαμηλή",
|
||||||
"settings.header.visual.animatedArtworkQuality.medium": "Μέτρια",
|
"settings.header.visual.animatedArtworkQuality.medium": "Μέτρια",
|
||||||
"settings.header.visual.animatedArtworkQuality.high": "Υψηλή",
|
"settings.header.visual.animatedArtworkQuality.high": "Υψηλή",
|
||||||
|
@ -300,30 +384,52 @@
|
||||||
"settings.option.visual.hardwareAcceleration.description": "Απαιτεί επανεκκίνηση",
|
"settings.option.visual.hardwareAcceleration.description": "Απαιτεί επανεκκίνηση",
|
||||||
"settings.header.visual.hardwareAcceleration.default": "Προεπιλογή",
|
"settings.header.visual.hardwareAcceleration.default": "Προεπιλογή",
|
||||||
"settings.header.visual.hardwareAcceleration.webGPU": "WebGPU",
|
"settings.header.visual.hardwareAcceleration.webGPU": "WebGPU",
|
||||||
|
"settings.option.visual.uiscale": "Κλίμακα διεπαφής χρήστη",
|
||||||
"settings.header.visual.theme": "Θέμα",
|
"settings.header.visual.theme": "Θέμα",
|
||||||
"settings.option.visual.theme.github.download": "Εγκατάσταση από σύνδεσμο GitHub",
|
"settings.option.visual.theme.github.download": "Εγκατάσταση από σύνδεσμο GitHub",
|
||||||
|
"settings.option.visual.theme.github.openfolder": "Άνοιγμα φακέλου θεμάτων",
|
||||||
"settings.option.visual.theme.github.explore": "Εξερεύνηση θεμάτων GitHub",
|
"settings.option.visual.theme.github.explore": "Εξερεύνηση θεμάτων GitHub",
|
||||||
"settings.header.visual.theme.github.page": "Θέματα από το GitHub",
|
"settings.header.visual.theme.github.page": "Θέματα από το GitHub",
|
||||||
"settings.option.visual.theme.github.install.confirm": "Θέλετε σίγουρα να εγκαταστήσετε το θέμα {{ repo }};",
|
"settings.option.visual.theme.github.install.confirm": "Θέλετε σίγουρα να εγκαταστήσετε το θέμα {{ repo }};",
|
||||||
"settings.prompt.visual.theme.github.URL": "Εισάγετε τον σύνδεσμο του θέματος που θέλετε να εγκαταστήσετε",
|
"settings.prompt.visual.theme.github.URL": "Εισάγετε τον σύνδεσμο του θέματος που θέλετε να εγκαταστήσετε",
|
||||||
"settings.notyf.visual.theme.install.success": "Το θέμα εγκαταστάθηκε με επιτυχία",
|
"settings.notyf.visual.theme.install.success": "Το θέμα εγκαταστάθηκε με επιτυχία",
|
||||||
"settings.notyf.visual.theme.install.error": "Αποτυχία εγκατάστασης του θέματος",
|
"settings.notyf.visual.theme.install.error": "Αποτυχία εγκατάστασης του θέματος",
|
||||||
|
"settings.header.visual.plugin": "Πρόσθετο",
|
||||||
|
"settings.option.visual.plugin.github.download": "Εγκατάσταση από σύνδεσμο GitHub",
|
||||||
|
"settings.option.visual.plugin.github.explore": "Εξερεύνηση πρόσθετων GitHub",
|
||||||
|
"settings.header.visual.plugin.github.page": "Πρόσθετα από το GitHub",
|
||||||
|
"settings.option.visual.plugin.github.install.confirm": "Θέλετε σίγουρα να εγκαταστήσετε το πρόσθετο {{ repo }};",
|
||||||
|
"settings.prompt.visual.plugin.github.URL": "Εισάγετε τον σύνδεσμο του πρόσθετου που θέλετε να εγκαταστήσετε",
|
||||||
|
"settings.prompt.visual.plugin.github.success": "Το πρόσθετο εγκαταστάθηκε με επιτυχία, πατήστε ΟΚ για επανεκκίνηση του Cider",
|
||||||
|
"settings.notyf.visual.plugin.install.success": "Το πρόσθετο εγκαταστάθηκε με επιτυχία",
|
||||||
|
"settings.notyf.visual.plugin.install.error": "Αποτυχία εγκατάστασης του πρόσθετου",
|
||||||
"settings.option.visual.theme.default": "Cider",
|
"settings.option.visual.theme.default": "Cider",
|
||||||
"settings.option.visual.theme.dark": "Σκοτεινό",
|
"settings.option.visual.theme.dark": "Σκοτεινό",
|
||||||
"settings.option.visual.showPersonalInfo": "Εμφάνιση προσωπικών στοιχείων",
|
"settings.option.visual.showPersonalInfo": "Εμφάνιση προσωπικών στοιχείων",
|
||||||
|
"settings.header.window": "Παράθυρο",
|
||||||
|
"settings.header.window.description": "Προσαρμογή ρυθμίσεων παραθύρου για το Cider.",
|
||||||
|
"settings.option.window.openOnStartup": "Άνοιγμα του Cider στην εκκίνηση",
|
||||||
|
"settings.option.window.openOnStartup.hidden": "Άνοιγμα κρυμμένο",
|
||||||
|
"settings.option.window.useNativeTitleBar": "Χρήση γραμμής τίτλου του συστήμστος",
|
||||||
|
"settings.option.window.windowControlStyle": "Στυλ ελέγχου παραθύρου",
|
||||||
|
"settings.option.window.windowControlStyle.right": "Δεξιά",
|
||||||
|
"settings.option.window.windowControlStyle.left": "Αριστερά",
|
||||||
"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": "Ενεργοποίηση Λειτουργίας Καραόκε (Musixmatch μόνο)",
|
"settings.option.lyrics.enableMusixmatchKaraoke": "Ενεργοποίηση λειτουργίας καραόκε (Musixmatch μόνο)",
|
||||||
"settings.option.lyrics.musixmatchPreferredLanguage": "Προτιμώμενη Γλώσσα Μετάφρασης Musixmatch",
|
"settings.option.lyrics.musixmatchPreferredLanguage": "Προτιμώμενη γλώσσα μετάφρασης Musixmatch",
|
||||||
"settings.option.lyrics.enableYoutubeLyrics": "Ενεργοποίηση Στίχων Youtube για Μουσικά Βίντεο",
|
"settings.option.lyrics.enableYoutubeLyrics": "Ενεργοποίηση στίχων YouTube για μουσικά βίντεο",
|
||||||
"settings.header.connectivity": "Σύνδεση",
|
"settings.option.lyrics.enableQQLyrics": "Ενεργοποίηση στίχων QQ",
|
||||||
"settings.header.connectivity.description": "Προσαρμογή ρυθμίσεων σύνδεσης για το Cider.",
|
"settings.header.connectivity": "Συνδεσιμότητα",
|
||||||
|
"settings.header.connectivity.description": "Προσαρμογή ρυθμίσεων συνδεσιμότητας για το Cider.",
|
||||||
|
"settings.option.connectivity.playbackNotifications": "Ειδοποιήσεις αναπαραγωγής",
|
||||||
"settings.option.connectivity.discordRPC": "Discord Rich Presence",
|
"settings.option.connectivity.discordRPC": "Discord Rich Presence",
|
||||||
"settings.option.connectivity.playbackNotifications": "Ειδοποιήσεις Αναπαραγωγής",
|
"settings.option.connectivity.discordRPC.clientName": "Τίτλος",
|
||||||
"settings.header.connectivity.discordRPC.cider": "Εμφάνιση ως 'Cider'",
|
"settings.option.connectivity.discordRPC.clearOnPause": "Εκκαθάριση του Discord Rich Presence στην παύση",
|
||||||
"settings.header.connectivity.discordRPC.appleMusic": "Εμφάνιση ως 'Apple Music'",
|
"settings.option.connectivity.discordRPC.hideButtons": "Απόκρυψη κουμπιών του Discord Rich Presence",
|
||||||
"settings.option.connectivity.discordRPC.clearOnPause": "Εκκαθάριση του Discord Rich Presence στην Παύση",
|
"settings.option.connectivity.discordRPC.detailsFormat": "Δομή λεπτομεριών",
|
||||||
|
"settings.option.connectivity.discordRPC.stateFormat": "Δομή κατάστασης",
|
||||||
"settings.option.connectivity.lastfmScrobble": "LastFM Scrobbling",
|
"settings.option.connectivity.lastfmScrobble": "LastFM Scrobbling",
|
||||||
"settings.option.connectivity.lastfmScrobble.delay": "Καθυστέρηση LastFM Scrobble (%)",
|
"settings.option.connectivity.lastfmScrobble.delay": "Καθυστέρηση LastFM Scrobble (%)",
|
||||||
"settings.option.connectivity.lastfmScrobble.nowPlaying": "Ενεργοποίηση LastFM \"Now Playing\"",
|
"settings.option.connectivity.lastfmScrobble.nowPlaying": "Ενεργοποίηση LastFM \"Now Playing\"",
|
||||||
|
@ -334,32 +440,52 @@
|
||||||
"settings.option.debug.openAppData": "Άνοιγμα του φακέλου Cider",
|
"settings.option.debug.openAppData": "Άνοιγμα του φακέλου Cider",
|
||||||
"settings.header.experimental": "Πειραματικές",
|
"settings.header.experimental": "Πειραματικές",
|
||||||
"settings.header.experimental.description": "Προσαρμογή πειραματικών ρυθμίσεων για το Cider.",
|
"settings.header.experimental.description": "Προσαρμογή πειραματικών ρυθμίσεων για το Cider.",
|
||||||
"settings.option.experimental.compactUI": "Συμπαγής Διεπαφή",
|
"settings.option.experimental.reinstallwidevine": "Επανεγκατάσταση του WidevineCDM",
|
||||||
"settings.option.experimental.closeButtonBehaviour": "Συμπεριφορά Κουμπιού Εξόδου",
|
"settings.option.experimental.reinstallwidevine.confirm": "Θέλετε σίγουρα να επανεγκαταστήσετε το Widevine;",
|
||||||
"settings.option.experimental.closeButtonBehaviour.quit": "Έξοδος του Cider",
|
"settings.option.experimental.unknownPlugin": "Άγνωστες πηγές",
|
||||||
"settings.option.experimental.closeButtonBehaviour.minimizeTaskbar": "Ελαχιστοποίηση στη γραμμή εργασιών",
|
"settings.option.experimental.unknownPlugin.description": "Να επιτρέπεται η εγκατάσταση πρόσθετων από repo εκτός του Cider Plugin Repository",
|
||||||
"settings.option.experimental.closeButtonBehaviour.minimizeTray": "Ελαχιστοποίηση στη γωνία γραμμής εργασιών",
|
"settings.option.experimental.compactUI": "Συμπαγής διεπαφή",
|
||||||
|
"settings.option.window.close_button_hide": "Απόκρυψη εφαρμογής με το πάτημα του κουμπιού κλεισίματος",
|
||||||
|
"settings.option.experimental.inline_playlists": "Ενσωμάτωση λιστών αναπαραγωγής και άλμπουμ",
|
||||||
|
"settings.option.advanced.playlistTrackMapping": "Χαρτογράφηση κομματιών λίστών αναπαραγωγής",
|
||||||
|
"settings.option.advanced.playlistTrackMapping.description": "Ενεργοποιεί τη βαθιά σάρωση των λιστών αναπαραγωγής για να προσδιορίσει ποια κομμάτια βρίσκονται σε ποιες λίστες αναπαραγωγής. Οι χρόνοι δημιουργίας της προσωρινής μνήμης των λιστών αναπαραγωγής μπορεί να αυξηθούν σημαντικά.",
|
||||||
|
"settings.option.visual.transparent": "Διαφανές πλαίσιο",
|
||||||
|
"settings.option.visual.transparent.description": "(χρειάζεται υποστήριξη θέματος, απαιτεί επανεκκίνηση)",
|
||||||
|
"settings.header.advanced": "Για προχωρημένους",
|
||||||
|
"settings.header.connect": "Συγχρονισμός",
|
||||||
|
"settings.option.connect.link_account": "Ενεργοποίηση συγχρονισμού με Cider Connect",
|
||||||
|
"settings.option.connect.link_account.description": "Η σύνδεση του λογαριασμού σας Discord με το Cider Connect σάς επιτρέπει να αποθηκεύετε δεδομένα χρήστη, συμπεριλαμβανομένων των Ρυθμίσεων, των EQ, και άλλα. (Υπό ανάπτυξη)",
|
||||||
"spatial.notTurnedOn": "Η Χωρικοποίηση Ήχου είναι απενεργοποιημένη. Για χρήση, παρακαλούμε ενεργοποιήστε την πρώτα.",
|
"spatial.notTurnedOn": "Η Χωρικοποίηση Ήχου είναι απενεργοποιημένη. Για χρήση, παρακαλούμε ενεργοποιήστε την πρώτα.",
|
||||||
"spatial.spatialProperties": "Χωρικές Ιδιότητες",
|
"spatial.spatialProperties": "Χωρικές ιδιότητες",
|
||||||
"spatial.width": "Πλάτος",
|
"spatial.width": "Πλάτος",
|
||||||
"spatial.height": "Ύψος",
|
"spatial.height": "Ύψος",
|
||||||
"spatial.depth": "Βάθος",
|
"spatial.depth": "Βάθος",
|
||||||
"spatial.gain": "Απολαβή",
|
"spatial.gain": "Απολαβή",
|
||||||
"spatial.roomMaterials": "Υλικά Δωματίου",
|
"spatial.roomMaterials": "Υλικά δωματίου",
|
||||||
"spatial.roomDimensions": "Διαστάσεις Δωματίου",
|
"spatial.roomDimensions": "Διαστάσεις δωματίου",
|
||||||
"spatial.roomPositions": "Θέσεις Δωματίου",
|
"spatial.roomPositions": "Θέσεις δωματίου",
|
||||||
"spatial.setDimensions": "Ορισμός Διαστάσεων",
|
"spatial.setDimensions": "Ορισμός διαστάσεων",
|
||||||
"spatial.setPositions": "Ορισμός Θέσεων",
|
"spatial.setPositions": "Ορισμός θέσεων",
|
||||||
"spatial.up": "Πάνω",
|
"spatial.up": "Πάνω",
|
||||||
"spatial.front": "Πρόσοψη",
|
"spatial.front": "Πρόσοψη",
|
||||||
"spatial.left": "Αριστερά",
|
"spatial.left": "Αριστερά",
|
||||||
"spatial.right": "Δεξιά",
|
"spatial.right": "Δεξιά",
|
||||||
"spatial.back": "Πίσω Όψη",
|
"spatial.back": "Πίσω όψη",
|
||||||
"spatial.down": "Κάτω",
|
"spatial.down": "Κάτω",
|
||||||
"spatial.listener": "Ακροατής",
|
"spatial.listener": "Ακροατής",
|
||||||
"spatial.audioSource": "Πηγή Ήχου",
|
"spatial.audioSource": "Πηγή ήχου",
|
||||||
"settings.header.unfinished": "Ημιτελής",
|
"settings.header.unfinished": "Ημιτελής",
|
||||||
"remote.web.title": "Cider Remote",
|
"remote.web.title": "Cider Remote",
|
||||||
"remote.web.description": "Σαρώστε τον κωδικό QR για σύζευξη του Cider με το κινητό σας",
|
"remote.web.description": "Σαρώστε τον κωδικό QR για σύζευξη του Cider με το κινητό σας",
|
||||||
|
"share.platform.twitter.tweet": "Ακούστε το {{song}} στο 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": "Αντιγραφή με song.link",
|
||||||
|
"share.platform.clipboard": "Αντιγραφή συνδέσμου",
|
||||||
"about.thanks": "Μεγάλα ευχαριστώ στην Ομάδα Cider Collective και σε όλους τους συνεισφέροντές μας."
|
"about.thanks": "Μεγάλα ευχαριστώ στην Ομάδα Cider Collective και σε όλους τους συνεισφέροντές μας."
|
||||||
}
|
}
|
|
@ -121,8 +121,6 @@
|
||||||
"term.audioControls": "Volume Controls",
|
"term.audioControls": "Volume Controls",
|
||||||
"term.clearAll": "Clear All",
|
"term.clearAll": "Clear All",
|
||||||
"term.recentStations": "Recent Stations",
|
"term.recentStations": "Recent Stations",
|
||||||
"term.personalStations": "Personal Stations",
|
|
||||||
"term.amLive": "Apple Music Live",
|
|
||||||
"term.language": "Language",
|
"term.language": "Language",
|
||||||
"term.funLanguages": "Fun",
|
"term.funLanguages": "Fun",
|
||||||
"term.noLyrics": "Loading... / Lyrics not found./ Instrumental.",
|
"term.noLyrics": "Loading... / Lyrics not found./ Instrumental.",
|
||||||
|
@ -266,6 +264,42 @@
|
||||||
"action.cast.scanning": "Scanning...",
|
"action.cast.scanning": "Scanning...",
|
||||||
"action.createNew": "Create New...",
|
"action.createNew": "Create New...",
|
||||||
"action.openArtworkInBrowser": "Open artwork in browser",
|
"action.openArtworkInBrowser": "Open artwork in browser",
|
||||||
|
"menubar.options.about": "About",
|
||||||
|
"menubar.options.settings": "Settings",
|
||||||
|
"menubar.options.quit": "Quit Cider",
|
||||||
|
"menubar.options.view": "View ",
|
||||||
|
"menubar.options.reload": "Reload",
|
||||||
|
"menubar.options.forcereload": "Force Reload",
|
||||||
|
"menubar.options.toggledevtools": "Toggle Developer Tools",
|
||||||
|
"menubar.options.window": "Window",
|
||||||
|
"menubar.options.minimize": "Minimize",
|
||||||
|
"menubar.options.toggleprivate": "Toggle Private Session",
|
||||||
|
"menubar.options.webremote": "Web Remote",
|
||||||
|
"menubar.options.audio": "Audio Settings",
|
||||||
|
"menubar.options.plugins": "Plu-gins Menu",
|
||||||
|
"menubar.options.controls": "Controls",
|
||||||
|
"menubar.options.next": "Next",
|
||||||
|
"menubar.options.playpause": "Play/Pause",
|
||||||
|
"menubar.options.previous": "Previous",
|
||||||
|
"menubar.options.volumeup": "Volume Up",
|
||||||
|
"menubar.options.volumedown": "Volume Down",
|
||||||
|
"menubar.options.browse": "Browse",
|
||||||
|
"menubar.options.artists": "Artists",
|
||||||
|
"menubar.options.search": "Search",
|
||||||
|
"menubar.options.albums": "Albums",
|
||||||
|
"menubar.options.cast": "Cast To Devices",
|
||||||
|
"menubar.options.account": "Account",
|
||||||
|
"menubar.options.accountsettings": "Account Settings",
|
||||||
|
"menubar.options.signout": "Sign Out",
|
||||||
|
"menubar.options.support": "Support",
|
||||||
|
"menubar.options.discord": "Discord",
|
||||||
|
"menubar.options.github": "GitHub Wiki",
|
||||||
|
"menubar.options.report": "Report a...",
|
||||||
|
"menubar.options.bug": "Bug",
|
||||||
|
"menubar.options.feature": "Feature Request",
|
||||||
|
"menubar.options.trans": "Translation Report/Request",
|
||||||
|
"menubar.options.license": "View License",
|
||||||
|
"menubar.options.conf": "Open Configuration File in Editor",
|
||||||
"settings.header.general": "General",
|
"settings.header.general": "General",
|
||||||
"settings.header.general.description": "Adjust the general settings for Cider.",
|
"settings.header.general.description": "Adjust the general settings for Cider.",
|
||||||
"settings.option.general.language": "Language",
|
"settings.option.general.language": "Language",
|
||||||
|
@ -332,6 +366,7 @@
|
||||||
"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.option.audio.audioLab.subheader": "Designed by Cider Acoustic Technologies in California",
|
"settings.option.audio.audioLab.subheader": "Designed by Cider Acoustic Technologies in California",
|
||||||
"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.",
|
||||||
|
"settings.warn.enableAdvancedFunctionality": "AudioContext (Advanced Functionality) is required to enable this feature.",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmth": "Analog Warmth",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmth": "Analog Warmth",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmth.description": "Simulates the analog warmth modelled after the Korg Nutube 6P1",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmth.description": "Simulates the analog warmth modelled after the Korg Nutube 6P1",
|
||||||
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity": "Analog Warmth intensity",
|
"settings.option.audio.enableAdvancedFunctionality.analogWarmthIntensity": "Analog Warmth intensity",
|
||||||
|
|
|
@ -73,6 +73,7 @@
|
||||||
"term.viewAs": "Ver como",
|
"term.viewAs": "Ver como",
|
||||||
"term.viewAs.coverArt": "Portada",
|
"term.viewAs.coverArt": "Portada",
|
||||||
"term.viewAs.list": "Lista",
|
"term.viewAs.list": "Lista",
|
||||||
|
"term.dynamic": "Dinámico",
|
||||||
"term.size": "Tamaño",
|
"term.size": "Tamaño",
|
||||||
"term.size.normal": "Normal",
|
"term.size.normal": "Normal",
|
||||||
"term.size.compact": "Compacto",
|
"term.size.compact": "Compacto",
|
||||||
|
@ -199,6 +200,9 @@
|
||||||
"podcast.episodes": "Episodios",
|
"podcast.episodes": "Episodios",
|
||||||
"podcast.playEpisode": "Reproducir Episodio",
|
"podcast.playEpisode": "Reproducir Episodio",
|
||||||
"podcast.website": "Sitio web de Podcasts",
|
"podcast.website": "Sitio web de Podcasts",
|
||||||
|
"action.edit": "Editar",
|
||||||
|
"action.done": "Hecho",
|
||||||
|
"action.editTracklist": "Edit Tracklist",
|
||||||
"action.addToLibrary": "Agregar a la Biblioteca",
|
"action.addToLibrary": "Agregar a la Biblioteca",
|
||||||
"action.addToLibrary.success": "Agregado a la Biblioteca",
|
"action.addToLibrary.success": "Agregado a la Biblioteca",
|
||||||
"action.addToLibrary.error": "Error al agregar a la Biblioteca",
|
"action.addToLibrary.error": "Error al agregar a la Biblioteca",
|
||||||
|
@ -260,6 +264,42 @@
|
||||||
"action.cast.scanning": "Escaneando...",
|
"action.cast.scanning": "Escaneando...",
|
||||||
"action.createNew": "Crear Nuevo...",
|
"action.createNew": "Crear Nuevo...",
|
||||||
"action.openArtworkInBrowser": "Abrir Ilustración en el navegador",
|
"action.openArtworkInBrowser": "Abrir Ilustración en el navegador",
|
||||||
|
"menubar.options.about": "Acerca de",
|
||||||
|
"menubar.options.settings": "Ajustes",
|
||||||
|
"menubar.options.quit": "Salir",
|
||||||
|
"menubar.options.view": "Ver",
|
||||||
|
"menubar.options.reload": "Recargar",
|
||||||
|
"menubar.options.forcereload": "Forzar Recarga",
|
||||||
|
"menubar.options.toggledevtools": "Herramientas de Desarrollo",
|
||||||
|
"menubar.options.window": "Ventana",
|
||||||
|
"menubar.options.minimize": "Minimizar",
|
||||||
|
"menubar.options.toggleprivate": "Cambiar Sesión Privada",
|
||||||
|
"menubar.options.webremote": "Web Remoto",
|
||||||
|
"menubar.options.audio": "Configuraciones de Audio",
|
||||||
|
"menubar.options.plugins": "Menu de Plu-gins",
|
||||||
|
"menubar.options.controls": "Controles",
|
||||||
|
"menubar.options.next": "Siguiente",
|
||||||
|
"menubar.options.playpause": "Reproducir/Pausar",
|
||||||
|
"menubar.options.previous": "Anterior",
|
||||||
|
"menubar.options.volumeup": "Subir Volumen",
|
||||||
|
"menubar.options.volumedown": "Bajar Volumen",
|
||||||
|
"menubar.options.browse": "Explorar",
|
||||||
|
"menubar.options.artists": "Artistas",
|
||||||
|
"menubar.options.search": "Buscar",
|
||||||
|
"menubar.options.albums": "Álbumes",
|
||||||
|
"menubar.options.cast": "Transmitir a Dispositivos",
|
||||||
|
"menubar.options.account": "Cuenta",
|
||||||
|
"menubar.options.accountsettings": "Ajustes de Cuenta",
|
||||||
|
"menubar.options.signout": "Cerrar Sesión",
|
||||||
|
"menubar.options.support": "Soporte",
|
||||||
|
"menubar.options.discord": "Discord",
|
||||||
|
"menubar.options.github": "GitHub Wiki",
|
||||||
|
"menubar.options.report": "Reportar a...",
|
||||||
|
"menubar.options.bug": "Bug",
|
||||||
|
"menubar.options.feature": "Solicitud de características",
|
||||||
|
"menubar.options.trans": "Solicitud de Informe/Traducción",
|
||||||
|
"menubar.options.license": "Ver licencia",
|
||||||
|
"menubar.options.conf": "Abrir archivo de configuración en el editor",
|
||||||
"settings.header.general": "General",
|
"settings.header.general": "General",
|
||||||
"settings.header.general.description": "Ajuste la configuración general de Cider.",
|
"settings.header.general.description": "Ajuste la configuración general de Cider.",
|
||||||
"settings.option.general.language": "Idioma",
|
"settings.option.general.language": "Idioma",
|
||||||
|
@ -269,6 +309,10 @@
|
||||||
"settings.option.general.resumebehavior.locally.description": "Cider reanudará su última sesión en esta PC.",
|
"settings.option.general.resumebehavior.locally.description": "Cider reanudará su última sesión en esta PC.",
|
||||||
"settings.option.general.resumebehavior.history": "Histórico",
|
"settings.option.general.resumebehavior.history": "Histórico",
|
||||||
"settings.option.general.resumebehavior.history.description": "Cider pondrá en cola la última canción de su historial general de Apple Music, en todos sus dispositivos.",
|
"settings.option.general.resumebehavior.history.description": "Cider pondrá en cola la última canción de su historial general de Apple Music, en todos sus dispositivos.",
|
||||||
|
"settings.option.general.resumetabs" : "Abrir pestaña al iniciar",
|
||||||
|
"settings.option.general.resumetabs.description" : "Puede elegir qué pestaña desea abrir cuando inicie Cider.",
|
||||||
|
"settings.option.general.resumetabs.dynamic" : "Dinámico",
|
||||||
|
"settings.option.general.resumetabs.dynamic.description" : "Cider abrirá la pestaña que utilizó por última vez.",
|
||||||
"settings.option.general.language.main": "Idiomas",
|
"settings.option.general.language.main": "Idiomas",
|
||||||
"settings.option.general.language.fun": "Idiomas Fun (Parodias)",
|
"settings.option.general.language.fun": "Idiomas Fun (Parodias)",
|
||||||
"settings.option.general.language.unsorted": "Sin Clasificar",
|
"settings.option.general.language.unsorted": "Sin Clasificar",
|
||||||
|
@ -280,6 +324,8 @@
|
||||||
"settings.option.general.customizeSidebar": "Personalizar elementos de la barra lateral",
|
"settings.option.general.customizeSidebar": "Personalizar elementos de la barra lateral",
|
||||||
"settings.option.general.customizeSidebar.customize": "Personalizar",
|
"settings.option.general.customizeSidebar.customize": "Personalizar",
|
||||||
"settings.option.general.keybindings": "Combinaciones de Teclas",
|
"settings.option.general.keybindings": "Combinaciones de Teclas",
|
||||||
|
"settings.notyf.general.keybindings.update.success": "Combinación de teclas actualizada correctamente",
|
||||||
|
"settings.prompt.general.keybindings.update.success": "La combinación de teclas se actualizó correctamente. Pulsa OK para reiniciar Cider",
|
||||||
"settings.option.general.keybindings.open": "Abrir",
|
"settings.option.general.keybindings.open": "Abrir",
|
||||||
"settings.description.search": "Buscar",
|
"settings.description.search": "Buscar",
|
||||||
"settings.description.albums": "Álbumes de la biblioteca",
|
"settings.description.albums": "Álbumes de la biblioteca",
|
||||||
|
@ -410,6 +456,7 @@
|
||||||
"settings.option.lyrics.enableMusixmatchKaraoke": "Habilitar el modo Karaoke (solo Musixmatch)",
|
"settings.option.lyrics.enableMusixmatchKaraoke": "Habilitar el modo Karaoke (solo Musixmatch)",
|
||||||
"settings.option.lyrics.musixmatchPreferredLanguage": "Idioma preferido de traducción de Musixmatch",
|
"settings.option.lyrics.musixmatchPreferredLanguage": "Idioma preferido de traducción de Musixmatch",
|
||||||
"settings.option.lyrics.enableYoutubeLyrics": "Habilitar letras de YouTube para videos musicales",
|
"settings.option.lyrics.enableYoutubeLyrics": "Habilitar letras de YouTube para videos musicales",
|
||||||
|
"settings.option.lyrics.enableQQLyrics": "Habilitar letras de QQ",
|
||||||
"settings.header.connectivity": "Conectividad",
|
"settings.header.connectivity": "Conectividad",
|
||||||
"settings.header.connectivity.description": "Ajuste la configuración de conectividad para Cider.",
|
"settings.header.connectivity.description": "Ajuste la configuración de conectividad para Cider.",
|
||||||
"settings.option.connectivity.playbackNotifications": "Notificaciones de Reproducción",
|
"settings.option.connectivity.playbackNotifications": "Notificaciones de Reproducción",
|
||||||
|
@ -442,7 +489,9 @@
|
||||||
"settings.option.visual.transparent.description": "Marco transparente (necesita compatibilidad con temas, requiere reiniciar)",
|
"settings.option.visual.transparent.description": "Marco transparente (necesita compatibilidad con temas, requiere reiniciar)",
|
||||||
"settings.header.advanced": "Avanzado",
|
"settings.header.advanced": "Avanzado",
|
||||||
"settings.header.connect": "Conectar",
|
"settings.header.connect": "Conectar",
|
||||||
"spatial.notTurnedOn": "La espacialización de audio está deshabilitada. Para usar, habilítelo primero.",
|
"settings.option.connect.link_account": "Habilitar sincronización con Cider Connect",
|
||||||
|
"settings.option.connect.link_account.description": "Vincular su cuenta de Discord con Cider Connect le permite almacenar datos de usuario que incluyen configuraciones, ecualizadores y eventualmente más, una vez que haya terminado. (Trabajo en progreso)",
|
||||||
|
"spatial.notTurnedOn": "La Espacialización de audio está deshabilitada. Para usar, habilítelo primero.",
|
||||||
"spatial.spatialProperties": "Propiedades de Espacialización",
|
"spatial.spatialProperties": "Propiedades de Espacialización",
|
||||||
"spatial.width": "Ancho",
|
"spatial.width": "Ancho",
|
||||||
"spatial.height": "Alto",
|
"spatial.height": "Alto",
|
||||||
|
|
|
@ -121,8 +121,6 @@
|
||||||
"term.audioControls": "Volume Controls",
|
"term.audioControls": "Volume Controls",
|
||||||
"term.clearAll": "Clear All",
|
"term.clearAll": "Clear All",
|
||||||
"term.recentStations": "Recent Stations",
|
"term.recentStations": "Recent Stations",
|
||||||
"term.personalStations": "Personal Stations",
|
|
||||||
"term.amLive": "Apple Music Live",
|
|
||||||
"term.language": "Language",
|
"term.language": "Language",
|
||||||
"term.funLanguages": "Fun",
|
"term.funLanguages": "Fun",
|
||||||
"term.noLyrics": "Loading... / Lyrics not found./ Instrumental.",
|
"term.noLyrics": "Loading... / Lyrics not found./ Instrumental.",
|
||||||
|
@ -266,6 +264,42 @@
|
||||||
"action.cast.scanning": "Scanning...",
|
"action.cast.scanning": "Scanning...",
|
||||||
"action.createNew": "Create New...",
|
"action.createNew": "Create New...",
|
||||||
"action.openArtworkInBrowser": "Open artwork in browser",
|
"action.openArtworkInBrowser": "Open artwork in browser",
|
||||||
|
"menubar.options.about": "About",
|
||||||
|
"menubar.options.settings": "Settings",
|
||||||
|
"menubar.options.quit": "Quit Cider",
|
||||||
|
"menubar.options.view": "View ",
|
||||||
|
"menubar.options.reload": "Reload",
|
||||||
|
"menubar.options.forcereload": "Force Reload",
|
||||||
|
"menubar.options.toggledevtools": "Toggle Developer Tools",
|
||||||
|
"menubar.options.window": "Window",
|
||||||
|
"menubar.options.minimize": "Minimize",
|
||||||
|
"menubar.options.toggleprivate": "Toggle Private Session",
|
||||||
|
"menubar.options.webremote": "Web Remote",
|
||||||
|
"menubar.options.audio": "Audio Settings",
|
||||||
|
"menubar.options.plugins": "Plu-gins Menu",
|
||||||
|
"menubar.options.controls": "Controls",
|
||||||
|
"menubar.options.next": "Next",
|
||||||
|
"menubar.options.playpause": "Play/Pause",
|
||||||
|
"menubar.options.previous": "Previous",
|
||||||
|
"menubar.options.volumeup": "Volume Up",
|
||||||
|
"menubar.options.volumedown": "Volume Down",
|
||||||
|
"menubar.options.browse": "Browse",
|
||||||
|
"menubar.options.artists": "Artists",
|
||||||
|
"menubar.options.search": "Search",
|
||||||
|
"menubar.options.albums": "Albums",
|
||||||
|
"menubar.options.cast": "Cast To Devices",
|
||||||
|
"menubar.options.account": "Account",
|
||||||
|
"menubar.options.accountsettings": "Account Settings",
|
||||||
|
"menubar.options.signout": "Sign Out",
|
||||||
|
"menubar.options.support": "Support",
|
||||||
|
"menubar.options.discord": "Discord",
|
||||||
|
"menubar.options.github": "GitHub Wiki",
|
||||||
|
"menubar.options.report": "Report a...",
|
||||||
|
"menubar.options.bug": "Bug",
|
||||||
|
"menubar.options.feature": "Feature Request",
|
||||||
|
"menubar.options.trans": "Translation Report/Request",
|
||||||
|
"menubar.options.license": "View License",
|
||||||
|
"menubar.options.conf": "Open Configuration File in Editor",
|
||||||
"settings.header.general": "General",
|
"settings.header.general": "General",
|
||||||
"settings.header.general.description": "Adjust the general settings for Cider.",
|
"settings.header.general.description": "Adjust the general settings for Cider.",
|
||||||
"settings.option.general.language": "Language",
|
"settings.option.general.language": "Language",
|
||||||
|
|
|
@ -59,7 +59,6 @@ export class BrowserWindow {
|
||||||
"pages/settings",
|
"pages/settings",
|
||||||
"pages/installed-themes",
|
"pages/installed-themes",
|
||||||
"pages/listen_now",
|
"pages/listen_now",
|
||||||
"pages/radio",
|
|
||||||
"pages/home",
|
"pages/home",
|
||||||
"pages/artist-feed",
|
"pages/artist-feed",
|
||||||
"pages/cider-playlist",
|
"pages/cider-playlist",
|
||||||
|
@ -113,7 +112,6 @@ export class BrowserWindow {
|
||||||
"components/artist-chip",
|
"components/artist-chip",
|
||||||
"components/hello-world",
|
"components/hello-world",
|
||||||
"components/inline-collection-list",
|
"components/inline-collection-list",
|
||||||
"components/radio-child",
|
|
||||||
],
|
],
|
||||||
appRoutes: [
|
appRoutes: [
|
||||||
{
|
{
|
||||||
|
@ -188,11 +186,6 @@ export class BrowserWindow {
|
||||||
component: `<cider-listen-now :data="listennow"></cider-listen-now>`,
|
component: `<cider-listen-now :data="listennow"></cider-listen-now>`,
|
||||||
condition: `page == 'listen_now'`,
|
condition: `page == 'listen_now'`,
|
||||||
onEnter: ``
|
onEnter: ``
|
||||||
}, {
|
|
||||||
page: "radio",
|
|
||||||
component: `<cider-radio :data="radio"></cider-radio>`,
|
|
||||||
condition: `page == 'radio'`,
|
|
||||||
onEnter: ``
|
|
||||||
}, {
|
}, {
|
||||||
page: "settings",
|
page: "settings",
|
||||||
component: `<cider-settings></cider-settings>`,
|
component: `<cider-settings></cider-settings>`,
|
||||||
|
|
|
@ -3,6 +3,7 @@ import {utils} from "../base/utils";
|
||||||
|
|
||||||
export default class Thumbar {
|
export default class Thumbar {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Base Plugin Details (Eventually implemented into a GUI in settings)
|
* Base Plugin Details (Eventually implemented into a GUI in settings)
|
||||||
*/
|
*/
|
||||||
|
@ -22,30 +23,36 @@ export default class Thumbar {
|
||||||
label: app.getName(),
|
label: app.getName(),
|
||||||
submenu: [
|
submenu: [
|
||||||
{
|
{
|
||||||
label: 'About',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.about'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('about')`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('about')`)
|
||||||
},
|
},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'Settings',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.settings'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.settings").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.settings").join('+'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('settings')`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('settings')`),
|
||||||
},
|
},
|
||||||
|
...(this.isMac ? [
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{role: 'services'},
|
{role: 'services'},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{role: 'hide'},
|
{role: 'hide'},
|
||||||
{role: 'hideOthers'},
|
{role: 'hideOthers'},
|
||||||
{role: 'unhide'},
|
{role: 'unhide'},
|
||||||
|
]: [
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{role: 'quit'}
|
{role: 'quit', label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.quit')},
|
||||||
]
|
]),
|
||||||
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
label: 'View',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.view'),
|
||||||
submenu: [
|
submenu: [
|
||||||
{role: 'reload'},
|
{role: 'reload', label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.reload')},
|
||||||
{role: 'forceReload'},
|
{role: 'forceReload', label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.forcereload')},
|
||||||
|
...(this.isMac ? [
|
||||||
{role: 'toggleDevTools'},
|
{role: 'toggleDevTools'},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{role: 'resetZoom'},
|
{role: 'resetZoom'},
|
||||||
|
@ -53,24 +60,27 @@ export default class Thumbar {
|
||||||
{role: 'zoomOut'},
|
{role: 'zoomOut'},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{role: 'togglefullscreen'},
|
{role: 'togglefullscreen'},
|
||||||
]
|
|
||||||
|
]: []),
|
||||||
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Window',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.window'),
|
||||||
submenu: [
|
submenu: [
|
||||||
{role: 'minimize'},
|
{role: 'minimize', label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.minimize')},
|
||||||
|
...(this.isMac ? [
|
||||||
{
|
{
|
||||||
label: 'Show',
|
label: 'Show',
|
||||||
click: () => utils.getWindow().show()
|
click: () => utils.getWindow().show()
|
||||||
},
|
},
|
||||||
{role: 'zoom'},
|
{role: 'zoom'},
|
||||||
...(this.isMac ? [
|
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{role: 'front'},
|
{role: 'front'},
|
||||||
{role: 'close'},
|
{role: 'close'},
|
||||||
] : [
|
|
||||||
{role: 'close'},
|
{role: 'close'},
|
||||||
]),
|
|
||||||
|
|
||||||
{
|
{
|
||||||
label: 'Edit',
|
label: 'Edit',
|
||||||
|
@ -83,146 +93,148 @@ export default class Thumbar {
|
||||||
{role: 'paste'},
|
{role: 'paste'},
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
] : []
|
||||||
|
),
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'Toggle Private Session',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.toggleprivate'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.togglePrivateSession").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.togglePrivateSession").join('+'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.cfg.general.privateEnabled = !app.cfg.general.privateEnabled`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.cfg.general.privateEnabled = !app.cfg.general.privateEnabled`)
|
||||||
},
|
},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'Web Remote',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.webremote'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.webRemote").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.webRemote").join('+'),
|
||||||
sublabel: 'Opens in external window',
|
sublabel: 'Opens in external window',
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('remote-pair')`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('remote-pair')`)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Audio Settings',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.audio'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.audioSettings").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.audioSettings").join('+'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.modals.audioSettings = true`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.modals.audioSettings = true`)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Plug-in Menu',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.plugins'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.pluginMenu").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.pluginMenu").join('+'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.modals.pluginMenu = true`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.modals.pluginMenu = true`)
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Controls',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.controls'),
|
||||||
submenu: [
|
submenu: [
|
||||||
{
|
{
|
||||||
label: 'Pause / Play',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.playpause'),
|
||||||
accelerator: 'Space',
|
accelerator: 'Space',
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.SpacePause()`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.SpacePause()`)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Next',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.next'),
|
||||||
accelerator: 'CommandOrControl+Right',
|
accelerator: 'CommandOrControl+Right',
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`MusicKitInterop.next()`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`MusicKitInterop.next()`)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Previous',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.previous'),
|
||||||
accelerator: 'CommandOrControl+Left',
|
accelerator: 'CommandOrControl+Left',
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`MusicKitInterop.previous()`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`MusicKitInterop.previous()`)
|
||||||
},
|
},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'Volume Up',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.volumeup'),
|
||||||
accelerator: 'CommandOrControl+Up',
|
accelerator: 'CommandOrControl+Up',
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.volumeUp()`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.volumeUp()`)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Volume Down',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.volumedown'),
|
||||||
accelerator: 'CommandOrControl+Down',
|
accelerator: 'CommandOrControl+Down',
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.volumeDown()`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.volumeDown()`)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Browse',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.browse'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.browse").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.browse").join('+'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('browse')`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('browse')`)
|
||||||
},
|
},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'Artists',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.artists'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.artists").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.artists").join('+'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('library-artists')`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('library-artists')`)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Search',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.search'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.search").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.search").join('+'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('search')`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('search')`)
|
||||||
},
|
},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'Album',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.albums'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.albums").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.albums").join('+'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('library-albums')`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('library-albums')`)
|
||||||
},
|
},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'Cast To Devices',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.cast'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.castToDevices").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.castToDevices").join('+'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.modals.castMenu = true`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.modals.castMenu = true`)
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Account',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.account'),
|
||||||
submenu: [
|
submenu: [
|
||||||
{
|
{
|
||||||
label: 'Account Settings',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.accountsettings'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('apple-account-settings')`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.appRoute('apple-account-settings')`)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Sign Out',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.signout'),
|
||||||
click: () => utils.getWindow().webContents.executeJavaScript(`app.unauthorize()`)
|
click: () => utils.getWindow().webContents.executeJavaScript(`app.unauthorize()`)
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Support',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.support'),
|
||||||
role: 'help',
|
role: 'help',
|
||||||
submenu: [
|
submenu: [
|
||||||
{
|
{
|
||||||
label: 'Discord',
|
label: utils.getLocale('Discord', 'menubar.options.discord'),
|
||||||
click: () => shell.openExternal("https://discord.gg/AppleMusic").catch(console.error)
|
click: () => shell.openExternal("https://discord.gg/AppleMusic").catch(console.error)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'GitHub Wiki',
|
label: utils.getLocale('GitHub Wiki', 'menubar.options.github'),
|
||||||
click: () => shell.openExternal("https://github.com/ciderapp/Cider/wiki/Troubleshooting").catch(console.error)
|
click: () => shell.openExternal("https://github.com/ciderapp/Cider/wiki/Troubleshooting").catch(console.error)
|
||||||
},
|
},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'Report a...',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.report'),
|
||||||
submenu: [
|
submenu: [
|
||||||
{
|
{
|
||||||
label: 'Bug',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.bug'),
|
||||||
click: () => shell.openExternal("https://github.com/ciderapp/Cider/issues/new?assignees=&labels=bug%2Ctriage&template=bug_report.yaml&title=%5BBug%5D%3A+").catch(console.error)
|
click: () => shell.openExternal("https://github.com/ciderapp/Cider/issues/new?assignees=&labels=bug%2Ctriage&template=bug_report.yaml&title=%5BBug%5D%3A+").catch(console.error)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Feature Request',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.feature'),
|
||||||
click: () => shell.openExternal("https://github.com/ciderapp/Cider/discussions/new?category=feature-request").catch(console.error)
|
click: () => shell.openExternal("https://github.com/ciderapp/Cider/discussions/new?category=feature-request").catch(console.error)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Translation Report/Request',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.trans'),
|
||||||
click: () => shell.openExternal("https://github.com/ciderapp/Cider/issues/new?assignees=&labels=%F0%9F%8C%90+Translations&template=translation.yaml&title=%5BTranslation%5D%3A+").catch(console.error)
|
click: () => shell.openExternal("https://github.com/ciderapp/Cider/issues/new?assignees=&labels=%F0%9F%8C%90+Translations&template=translation.yaml&title=%5BTranslation%5D%3A+").catch(console.error)
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'View License',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.license'),
|
||||||
click: () => shell.openExternal("https://github.com/ciderapp/Cider/blob/main/LICENSE").catch(console.error)
|
click: () => shell.openExternal("https://github.com/ciderapp/Cider/blob/main/LICENSE").catch(console.error)
|
||||||
},
|
},
|
||||||
{type: 'separator'},
|
{type: 'separator'},
|
||||||
{
|
{
|
||||||
label: 'Toggle Developer Tools',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.toggledevtools'),
|
||||||
accelerator: utils.getStoreValue("general.keybindings.openDeveloperTools").join('+'),
|
accelerator: utils.getStoreValue("general.keybindings.openDeveloperTools").join('+'),
|
||||||
click: () => utils.getWindow().webContents.openDevTools()
|
click: () => utils.getWindow().webContents.openDevTools()
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Open Configuration File in Editor',
|
label: utils.getLocale(utils.getStoreValue('general.language'), 'menubar.options.conf'),
|
||||||
click: () => utils.getStoreInstance().openInEditor()
|
click: () => utils.getStoreInstance().openInEditor()
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
|
@ -42,9 +42,7 @@ const app = new Vue({
|
||||||
listennow: [],
|
listennow: [],
|
||||||
madeforyou: [],
|
madeforyou: [],
|
||||||
radio: {
|
radio: {
|
||||||
personal: {},
|
personal: []
|
||||||
recent: {},
|
|
||||||
amlive: {},
|
|
||||||
},
|
},
|
||||||
mklang: 'en',
|
mklang: 'en',
|
||||||
webview: {
|
webview: {
|
||||||
|
@ -237,6 +235,7 @@ const app = new Vue({
|
||||||
pages: [],
|
pages: [],
|
||||||
},
|
},
|
||||||
moreinfodata: [],
|
moreinfodata: [],
|
||||||
|
notyf: notyf
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
cfg: {
|
cfg: {
|
||||||
|
@ -323,7 +322,6 @@ const app = new Vue({
|
||||||
try {
|
try {
|
||||||
this.listennow.timestamp = 0;
|
this.listennow.timestamp = 0;
|
||||||
this.browsepage.timestamp = 0;
|
this.browsepage.timestamp = 0;
|
||||||
this.radio.timestamp = 0;
|
|
||||||
} catch (e) { }
|
} catch (e) { }
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
@ -2534,33 +2532,15 @@ const app = new Vue({
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
async getRadioStations(attempt = 0) {
|
async getRadioStations(attempt = 0) {
|
||||||
if (this.radio.timestamp > Date.now() - 120000) {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (attempt > 3) {
|
if (attempt > 3) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
this.radio.personal.title = app.getLz('term.personalStations')
|
this.radio.personal = (await app.mk.api.v3.music(`/v1/me/recent/radio-stations`, {
|
||||||
this.radio.recent.title = app.getLz('term.recentStations')
|
|
||||||
this.radio.amlive.title = app.getLz('term.amLive')
|
|
||||||
|
|
||||||
this.radio.personal.data = await app.mk.api.v3.music(`/v1/catalog/${app.mk.api.v3.storefrontId}/stations`, {
|
|
||||||
"filter[identity]": "personal",
|
|
||||||
}).data.data
|
|
||||||
|
|
||||||
this.radio.recent.data = await app.mk.api.v3.music(`/v1/me/recent/radio-stations`, {
|
|
||||||
"platform": "web",
|
"platform": "web",
|
||||||
"art[url]": "f",
|
"art[url]": "f",
|
||||||
l: this.mklang
|
l: this.mklang
|
||||||
}).data.data
|
})).data.data;
|
||||||
|
|
||||||
this.radio.amlive.data = await app.mk.api.v3.music(`/v1/catalog/${app.mk.api.v3.storefrontId}/stations`, {
|
|
||||||
"filter[featured]": "apple-music-live-radio",
|
|
||||||
}).data.data
|
|
||||||
|
|
||||||
this.radio.timestamp = Date.now()
|
|
||||||
console.debug(this.radio)
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(e)
|
console.log(e)
|
||||||
this.getRadioStations(attempt + 1)
|
this.getRadioStations(attempt + 1)
|
||||||
|
|
|
@ -25,6 +25,15 @@
|
||||||
</transition>
|
</transition>
|
||||||
<% } %>
|
<% } %>
|
||||||
|
|
||||||
|
<transition v-on:enter="getRadioStations()" :name="chrome.desiredPageTransition">
|
||||||
|
<template v-if="page == 'radio'" @created="console.log('radio')">
|
||||||
|
<div class="content-inner">
|
||||||
|
<h1 class="header-text">{{$root.getLz('term.radio')}}</h1>
|
||||||
|
<h3>{{$root.getLz('term.recentStations')}}</h3>
|
||||||
|
<mediaitem-square :item="item" v-for="item in radio.personal"></mediaitem-square>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</transition>
|
||||||
<!-- Library - Recently Added -->
|
<!-- Library - Recently Added -->
|
||||||
<transition :name="chrome.desiredPageTransition" v-on:enter="getLibraryAlbumsFull(null, 0); searchLibraryAlbums(0);">
|
<transition :name="chrome.desiredPageTransition" v-on:enter="getLibraryAlbumsFull(null, 0); searchLibraryAlbums(0);">
|
||||||
<%- include('../pages/library-recentlyadded') %>');
|
<%- include('../pages/library-recentlyadded') %>');
|
||||||
|
|
|
@ -39,8 +39,8 @@
|
||||||
<sidebar-library-item :name="$root.getLz('term.browse')" svg-icon="./assets/feather/globe.svg"
|
<sidebar-library-item :name="$root.getLz('term.browse')" svg-icon="./assets/feather/globe.svg"
|
||||||
page="browse">
|
page="browse">
|
||||||
</sidebar-library-item>
|
</sidebar-library-item>
|
||||||
<sidebar-library-item :name="$root.getLz('term.radio')" svg-icon="./assets/feather/radio.svg"
|
<sidebar-library-item :name="$root.getLz('term.radio')" svg-icon="./assets/feather/radio.svg" page="radio">
|
||||||
page="radio"></sidebar-library-item>
|
</sidebar-library-item>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<div class="app-sidebar-header-text"
|
<div class="app-sidebar-header-text"
|
||||||
|
@ -142,13 +142,13 @@
|
||||||
</span>
|
</span>
|
||||||
<span class="usermenu-item-name">{{$root.getLz('action.showWebRemoteQR')}}</span>
|
<span class="usermenu-item-name">{{$root.getLz('action.showWebRemoteQR')}}</span>
|
||||||
</button>
|
</button>
|
||||||
<button class="usermenu-item" v-if="cfg.advanced.AudioContext" @click="modals.castMenu = true">
|
<button class="usermenu-item" @click="cfg.advanced.AudioContext ? modals.castMenu = true : $root.notyf.error($root.getLz('settings.warn.enableAdvancedFunctionality'))">
|
||||||
<span class="usermenu-item-icon">
|
<span class="usermenu-item-icon">
|
||||||
<%- include("../svg/cast.svg") %>
|
<%- include("../svg/cast.svg") %>
|
||||||
</span>
|
</span>
|
||||||
<span class="usermenu-item-name">{{$root.getLz('term.cast')}}</span>
|
<span class="usermenu-item-name">{{$root.getLz('term.cast')}}</span>
|
||||||
</button>
|
</button>
|
||||||
<button class="usermenu-item" v-if="cfg.advanced.AudioContext" @click="modals.audioSettings = true">
|
<button class="usermenu-item" @click="cfg.advanced.AudioContext ? modals.audioSettings = true : $root.notyf.error($root.getLz('settings.warn.enableAdvancedFunctionality'))">
|
||||||
<span class="usermenu-item-icon">
|
<span class="usermenu-item-icon">
|
||||||
<%- include("../svg/headphones.svg") %>
|
<%- include("../svg/headphones.svg") %>
|
||||||
</span>
|
</span>
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
<script type="text/x-template" id="radio-child">
|
|
||||||
<div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col">
|
|
||||||
<h3>{{ item.title }}</h3>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<mediaitem-square :item="station" v-for="station in item.data"></mediaitem-square>
|
|
||||||
|
|
||||||
<!-- <mediaitem-scroller-horizontal-sp-->
|
|
||||||
<!-- :withReason="index==0"-->
|
|
||||||
<!-- :items="recom.relationships.contents.data.limit(10)"></mediaitem-scroller-horizontal-sp>-->
|
|
||||||
</div>
|
|
||||||
</script>
|
|
||||||
<script>
|
|
||||||
Vue.component('radio-child', {
|
|
||||||
template: "#radio-child",
|
|
||||||
props: ["item"],
|
|
||||||
data: function () {
|
|
||||||
return {
|
|
||||||
isVisible: true,
|
|
||||||
app: this.$root
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
visibilityChanged: function (isVisible, entry) {
|
|
||||||
// this.isVisible = isVisible
|
|
||||||
},
|
|
||||||
}
|
|
||||||
})
|
|
||||||
</script>
|
|
|
@ -1,23 +0,0 @@
|
||||||
<script type="text/x-template" id="cider-radio">
|
|
||||||
<div class="content-inner">
|
|
||||||
<h1 class="header-text">{{app.getLz('term.radio')}}</h1>
|
|
||||||
<template v-for="item in data">
|
|
||||||
<radio-child :item="item"></radio-child>
|
|
||||||
</template>
|
|
||||||
</div>
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
Vue.component('cider-radio', {
|
|
||||||
template: "#cider-radio",
|
|
||||||
props: ["data"],
|
|
||||||
data: function () {
|
|
||||||
return {
|
|
||||||
app: this.$root
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$root.getRadioStations()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
</script>
|
|
Loading…
Add table
Add a link
Reference in a new issue