remove unused pages
This commit is contained in:
parent
3f8e9b99db
commit
f940bcf1e0
8 changed files with 557 additions and 1917 deletions
|
@ -63,7 +63,6 @@ export class BrowserWindow {
|
|||
"pages/browse",
|
||||
"pages/groupings",
|
||||
"pages/charts",
|
||||
"pages/settings",
|
||||
//"pages/installed-themes",
|
||||
"pages/listen_now",
|
||||
"pages/radio",
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
"pages/library-artists",
|
||||
"pages/browse",
|
||||
"pages/groupings",
|
||||
"pages/settings",
|
||||
"pages/installed-themes",
|
||||
"pages/listen_now",
|
||||
"pages/radio",
|
||||
|
|
|
@ -1,325 +0,0 @@
|
|||
//Not used for Now
|
||||
|
||||
<!-- <script type="text/x-template" id="keybinds-settings">
|
||||
<div class="keybinds-page">
|
||||
<div class="md-option-header">
|
||||
<span>{{$root.getLz('settings.option.general.keybindings')}}</span>
|
||||
</div>
|
||||
<div class="settings-option-body">
|
||||
<div class="md-option-header-sub">
|
||||
<span>{{$root.getLz('settings.option.general.keybindings.library')}}</span>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.search')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('search')">
|
||||
{{app.cfg.general.keybindings.search.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.listnow')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('listnow')">
|
||||
{{app.cfg.general.keybindings.listnow.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.browse')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('browse')">
|
||||
{{app.cfg.general.keybindings.browse.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.recentAdd')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('recentAdd')">
|
||||
{{app.cfg.general.keybindings.recentAdd.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.songs')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('songs')">
|
||||
{{app.cfg.general.keybindings.songs.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.albums')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('albums')">
|
||||
{{app.cfg.general.keybindings.albums.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.artists')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('artists')">
|
||||
{{app.cfg.general.keybindings.artists.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-header-sub">
|
||||
<span>{{$root.getLz('settings.option.general.keybindings.session')}}</span>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.private')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('togglePrivateSession')">
|
||||
{{app.cfg.general.keybindings.togglePrivateSession.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-header-sub">
|
||||
<span>{{$root.getLz('settings.option.general.keybindings.control')}}</span>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.remote')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('webRemote')">
|
||||
{{app.cfg.general.keybindings.webRemote.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.audio')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('audioSettings')">
|
||||
{{app.cfg.general.keybindings.audioSettings.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.plugins')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('pluginMenu')">
|
||||
{{app.cfg.general.keybindings.pluginMenu.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.cast')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('castToDevices')">
|
||||
{{app.cfg.general.keybindings.castToDevices.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.settings')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('settings')">
|
||||
{{app.cfg.general.keybindings.settings.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-header-sub" v-if="app.platform !== 'darwin'">
|
||||
<span>{{$root.getLz('settings.option.general.keybindings.interface')}}</span>
|
||||
</div>
|
||||
<div class="md-option-line" v-if="app.platform !== 'darwin'">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('term.zoomin')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('zoomn')">
|
||||
{{app.cfg.general.keybindings.zoomn.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line" v-if="app.platform !== 'darwin'">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('term.zoomout')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('zoomt')">
|
||||
{{app.cfg.general.keybindings.zoomt.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line" v-if="app.platform !== 'darwin'">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('term.zoomreset')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('zoomrst')">
|
||||
{{app.cfg.general.keybindings.zoomrst.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-header-sub">
|
||||
<span>{{$root.getLz('settings.option.general.keybindings.advanced')}}</span>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.description.developer')}}
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<button class="md-btn md-btn-small md-btn-block"
|
||||
@click="keyBindUpdate('openDeveloperTools')">
|
||||
{{app.cfg.general.keybindings.openDeveloperTools.join(' + ')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<button class="md-btn md-btn-large md-btn-block" @click="keyBindReset()">
|
||||
{{$root.getLz('term.reset')}}
|
||||
</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script>
|
||||
Vue.component('keybinds-settings', {
|
||||
template: "#keybinds-settings",
|
||||
props: [],
|
||||
data: function () {
|
||||
return {
|
||||
app: this.$root
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
keyBindUpdate: function (action) {
|
||||
const blur = document.createElement('div');
|
||||
blur.className = 'blur';
|
||||
blur.style.backgroundColor = 'rgba(0,0,0,0.25)';
|
||||
blur.style.position = 'fixed';
|
||||
blur.style.top = '0';
|
||||
blur.style.left = '0';
|
||||
blur.style.width = '100%';
|
||||
blur.style.height = '100%';
|
||||
blur.style.zIndex = '9999';
|
||||
blur.style.display = 'flex';
|
||||
blur.style.alignItems = 'center';
|
||||
blur.style.justifyContent = 'center';
|
||||
blur.style.fontSize = '2em';
|
||||
blur.style.color = 'white';
|
||||
blur.innerHTML = `<center>${app.getLz('settings.option.general.keybindings.pressCombination')}<br />${app.getLz('settings.option.general.keybindings.pressEscape')}</center>`
|
||||
document.body.appendChild(blur);
|
||||
|
||||
let keyBind = [];
|
||||
const keyBindTimeout = setTimeout(function () {
|
||||
keyBind = [];
|
||||
document.body.removeChild(blur);
|
||||
}, 30000);
|
||||
const keyBindUpdate = function (e) {
|
||||
if (document.body.contains(blur)) {
|
||||
if (e.key == 'Escape') {
|
||||
document.body.removeChild(blur);
|
||||
clearTimeout(keyBindTimeout);
|
||||
return;
|
||||
} else {
|
||||
if (e.keyCode >= 65 && e.keyCode <= 90 && e.keyCode <= 97 && e.keyCode <= 122) {
|
||||
keyBind.push(e.key.toUpperCase());
|
||||
} else {
|
||||
keyBind.push(e.key);
|
||||
}
|
||||
if (keyBind.length === 2) {
|
||||
if (keyBind[0] !== keyBind[1]) {
|
||||
app.cfg.general.keybindings[action] = keyBind
|
||||
document.body.removeChild(blur);
|
||||
clearTimeout(keyBindTimeout);
|
||||
notyf.success(app.getLz('settings.notyf.general.keybindings.update.success'));
|
||||
app.confirm(app.getLz("settings.prompt.general.keybindings.update.success"), (ok) => {
|
||||
if (ok) ipcRenderer.invoke("relaunchApp")
|
||||
})
|
||||
} else {
|
||||
keyBind = [];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
document.addEventListener('keydown', keyBindUpdate);
|
||||
},
|
||||
keyBindReset: function () {
|
||||
app.cfg.general.keybindings.search = [app.platform == "darwin" ? "Command" : "Control", "F"];
|
||||
app.cfg.general.keybindings.listnow = [app.platform == "darwin" ? "Command" : "Control", "L"];
|
||||
app.cfg.general.keybindings.browse = [app.platform == "darwin" ? "Command" : "Control", "B"];
|
||||
app.cfg.general.keybindings.recentAdd = [app.platform == "darwin" ? "Command" : "Control", "G"];
|
||||
app.cfg.general.keybindings.songs = [app.platform == "darwin" ? "Command" : "Control", "J"];
|
||||
app.cfg.general.keybindings.albums = [app.platform == "darwin" ? "Command" : "Control", "A"];
|
||||
app.cfg.general.keybindings.artists = [app.platform == "darwin" ? "Command" : "Control", "D"];
|
||||
app.cfg.general.keybindings.togglePrivateSession = [app.platform == "darwin" ? "Command" : "Control", "P"];
|
||||
app.cfg.general.keybindings.webRemote = [app.platform == "darwin" ? "Command" : "Control",app.platform == "darwin" ? "Option" : (app.platform == "linux" ? "Shift" : "Alt"), "W"];
|
||||
app.cfg.general.keybindings.audioSettings = [app.platform == "darwin" ? "Command" : "Control",app.platform == "darwin" ? "Option" : (app.platform == "linux" ? "Shift" : "Alt"), "A"];
|
||||
app.cfg.general.keybindings.pluginMenu = [app.platform == "darwin" ? "Command" : "Control",app.platform == "darwin" ? "Option" : (app.platform == "linux" ? "Shift" : "Alt"), "P"];
|
||||
app.cfg.general.keybindings.castToDevices = [app.platform == "darwin" ? "Command" : "Control",app.platform == "darwin" ? "Option" : (app.platform == "linux" ? "Shift" : "Alt"), "C"];
|
||||
app.cfg.general.keybindings.settings = [app.platform == "darwin" ? "Command" : "Control", ","];
|
||||
app.cfg.general.keybindings.zoomn = [app.platform == "darwin" ? "Command" : "Control", "numadd"];
|
||||
app.cfg.general.keybindings.zoomt = [app.platform == "darwin" ? "Command" : "Control", "numsub"];
|
||||
app.cfg.general.keybindings.zoomrst = [app.platform == "darwin" ? "Command" : "Control", "num0"];
|
||||
app.cfg.general.keybindings.openDeveloperTools = [app.platform == "darwin" ? "Command" : "Control", app.platform == "darwin" ? "Option" : "Shift", "I"];
|
||||
notyf.success(app.getLz('settings.notyf.general.keybindings.update.success'));
|
||||
app.confirm(app.getLz("settings.prompt.general.keybindings.update.success"), (ok) => {
|
||||
if (ok) ipcRenderer.invoke("relaunchApp")
|
||||
})
|
||||
},
|
||||
getLanguages: function () {
|
||||
let langs = this.$root.lzListing
|
||||
let categories = {
|
||||
"main": [],
|
||||
"fun": [],
|
||||
"unsorted": []
|
||||
}
|
||||
// sort by category if category is undefined or empty put it in "unsorted"
|
||||
for (let i = 0; i < langs.length; i++) {
|
||||
if (langs[i].category === undefined || langs[i].category === "") {
|
||||
categories.unsorted.push(langs[i])
|
||||
} else {
|
||||
categories[langs[i].category].push(langs[i])
|
||||
}
|
||||
}
|
||||
// return
|
||||
return categories
|
||||
},
|
||||
}
|
||||
})
|
||||
</script> -->
|
|
@ -1,49 +0,0 @@
|
|||
<div class="content-inner">
|
||||
<div class="row">
|
||||
<div class="col" style="padding:0;">
|
||||
<h1 class="header-text">{{$root.getLz('term.artists')}}</h1>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col" style="padding:0;">
|
||||
<div class="search-input-container" style="width:100%;margin: 16px 0;">
|
||||
<div class="search-input--icon"></div>
|
||||
<input type="search" style="width:100%;" spellcheck="false" :placeholder="$root.getLz('term.search') + '...'" @input="searchLibraryArtists" v-model="library.artists.search" class="search-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-auto flex-center">
|
||||
<div class="row">
|
||||
<!-- <div class="col">
|
||||
<select class="md-select" v-model="library.artists.sorting[1]" @change="searchLibraryArtists(1)">
|
||||
<optgroup label="Sort By">
|
||||
<option v-for="(sort, index) in library.artists.sortingOptions" :value="index">{{ sort }}</option>
|
||||
</optgroup>
|
||||
</select>
|
||||
</div> -->
|
||||
<div class="col">
|
||||
<select class="md-select" v-model="library.artists.sortOrder[1]" @change="searchLibraryArtists(1)">
|
||||
<optgroup :label="$root.getLz('term.sortOrder')">
|
||||
<option value="asc">{{$root.getLz('term.sortOrder.ascending')}}</option>
|
||||
<option value="desc">{{$root.getLz('term.sortOrder.descending')}}</option>
|
||||
</optgroup>
|
||||
</select>
|
||||
</div>
|
||||
<!-- <div class="col">
|
||||
<select class="md-select" v-model="library.artists.viewAs">
|
||||
<optgroup label="View As">
|
||||
<option value="covers">Cover Art</option>
|
||||
<option value="list">List</option>
|
||||
</optgroup>
|
||||
</select>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="well">
|
||||
<!-- <mediaitem-square v-if="library.artists.viewAs == 'covers'" :item="item" v-for="item in library.artists.displayListing">
|
||||
</mediaitem-square> -->
|
||||
<libraryartist-item :show-duration="false" :show-meta-data="true" :show-library-status="false" :item="item" v-for="item in library.artists.displayListing">
|
||||
</libraryartist-item>
|
||||
</div>
|
||||
</div>
|
|
@ -1,16 +0,0 @@
|
|||
<script type="text/x-template" id="hello-world">
|
||||
<div class="content-inner">
|
||||
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script>
|
||||
Vue.component('library-songs', {
|
||||
template: '#library-songs',
|
||||
methods: {
|
||||
sayHello: function () {
|
||||
alert('Hello world!');
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
|
@ -1,191 +0,0 @@
|
|||
//Not used for Now
|
||||
|
||||
<!-- <script type="text/x-template" id="plugins-github">
|
||||
<div class="github-themes-page">
|
||||
<div class="gh-header">
|
||||
<div class="row">
|
||||
<div class="col nopadding">
|
||||
<h1 class="header-text">{{$root.getLz('settings.header.visual.plugin.github.page')}}</h1>
|
||||
</div>
|
||||
<div class="col-auto nopadding flex-center">
|
||||
<button class="md-btn md-btn-small md-btn-block" @click="installThemeURL()">
|
||||
{{$root.getLz('settings.option.visual.plugin.github.download')}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="gh-content">
|
||||
<div class="repos-list">
|
||||
<ul class="list-group list-group-flush">
|
||||
<li @click="showRepo(repo)" class="list-group-item list-group-item-dark"
|
||||
:style="{'background': (repo.id == openRepo.id) ? 'var(--keyColor)' : ''}"
|
||||
v-for="repo in repos">
|
||||
<div class="row">
|
||||
<div class="col flex-center">
|
||||
<div>
|
||||
<h4 class="repo-name">{{ (repo.description != null) ? repo.description : repo.full_name }}</h4>
|
||||
<div>⭐ {{ repo.stargazers_count }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="github-preview" v-if="openRepo.full_name">
|
||||
<div class="gh-preview-header">
|
||||
<div class="row nopadding">
|
||||
<div class="col nopadding flex-center">
|
||||
<div>
|
||||
<h3 class="repo-preview-name">{{ openRepo.description }}</h3>
|
||||
<div>
|
||||
<div class="svg-icon inline" :style="{'--url': 'url(\'./assets/github.svg\')'}"></div>
|
||||
<a class="repo-url" target="_blank" :href="openRepo.html_url">{{ openRepo.full_name
|
||||
}}</a></div>
|
||||
<div>⭐ {{ openRepo.stargazers_count }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-auto nopadding flex-center">
|
||||
<button class="md-btn md-btn-primary" @click="installThemeRepo(openRepo)">
|
||||
<span v-if="!themesInstalled.includes(openRepo.full_name)">{{$root.getLz('action.install')}}</span>
|
||||
<span v-else>{{$root.getLz('action.update')}}</span>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div v-html="openRepo.readme" class="github-content"></div>
|
||||
</div>
|
||||
<div class="github-preview" v-else>
|
||||
|
||||
</div>
|
||||
</transition>
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
<script>
|
||||
Vue.component('plugins-github', {
|
||||
template: "#plugins-github",
|
||||
props: [],
|
||||
data: function () {
|
||||
return {
|
||||
repos: [],
|
||||
openRepo: {
|
||||
id: -1,
|
||||
name: '',
|
||||
description: '',
|
||||
html_url: '',
|
||||
stargazers_count: 0,
|
||||
owner: {
|
||||
avatar_url: ''
|
||||
},
|
||||
readme: ""
|
||||
},
|
||||
themesInstalled: []
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getRepos();
|
||||
// this.getInstalledThemes();
|
||||
},
|
||||
methods: {
|
||||
getInstalledThemes() {
|
||||
let self = this
|
||||
const themes = ipcRenderer.sendSync("get-themes")
|
||||
// for each theme, get the github_repo property and push it to the themesInstalled array, if not blank
|
||||
themes.forEach(theme => {
|
||||
if (theme.github_repo !== "") {
|
||||
self.themesInstalled.push(theme.github_repo)
|
||||
}
|
||||
})
|
||||
},
|
||||
showRepo(repo) {
|
||||
const self = this
|
||||
const readmeUrl = `https://raw.githubusercontent.com/${repo.full_name}/main/README.md`;
|
||||
var requestOptions = {
|
||||
method: 'GET',
|
||||
redirect: 'follow'
|
||||
};
|
||||
|
||||
fetch(readmeUrl, requestOptions)
|
||||
.then(response => response.text())
|
||||
.then(result => {
|
||||
self.openRepo = repo
|
||||
self.openRepo.readme = self.convertReadMe(result);
|
||||
})
|
||||
.catch(error => {
|
||||
self.openRepo = repo
|
||||
self.openRepo.readme = `This repository doesn't have a README.md file.`;
|
||||
console.log('error', error)
|
||||
});
|
||||
},
|
||||
convertReadMe(text) {
|
||||
return marked.parse(text)
|
||||
},
|
||||
installThemeRepo(repo) {
|
||||
let self = this
|
||||
let msg = app.stringTemplateParser(app.getLz('settings.option.visual.plugin.github.install.confirm'), {
|
||||
repo: repo.full_name
|
||||
});
|
||||
app.confirm(msg, (res) => {
|
||||
if (res) {
|
||||
ipcRenderer.once("plugin-installed", (event, arg) => {
|
||||
if (arg.success) {
|
||||
self.themes = []
|
||||
notyf.success(app.getLz('settings.notyf.visual.plugin.install.success'));
|
||||
app.confirm(app.getLz("settings.prompt.visual.plugin.github.success"), (ok)=>{
|
||||
if (ok) {
|
||||
ipcRenderer.invoke("relaunchApp")
|
||||
} else {
|
||||
return
|
||||
}
|
||||
})
|
||||
} else {
|
||||
notyf.error(app.getLz('settings.notyf.visual.plugin.install.error'));
|
||||
}
|
||||
});
|
||||
ipcRenderer.invoke("get-github-plugin", repo.html_url)
|
||||
}
|
||||
})
|
||||
},
|
||||
installThemeURL() {
|
||||
let self = this
|
||||
app.prompt(app.getLz('settings.prompt.visual.plugin.github.URL'), (result) => {
|
||||
if (result) {
|
||||
ipcRenderer.once("plugin-installed", (event, arg) => {
|
||||
if (arg.success) {
|
||||
self.themes = ipcRenderer.sendSync("get-themes")
|
||||
app.confirm(app.getLz("settings.prompt.visual.plugin.github.success"), (ok)=>{
|
||||
if (ok) {
|
||||
ipcRenderer.invoke("relaunchApp")
|
||||
} else {
|
||||
return
|
||||
}
|
||||
})
|
||||
notyf.success(app.getLz('settings.notyf.visual.plugin.install.success'));
|
||||
} else {
|
||||
notyf.error(app.getLz('settings.notyf.visual.plugin.install.error'));
|
||||
}
|
||||
});
|
||||
ipcRenderer.invoke("get-github-plugin", result)
|
||||
}
|
||||
});
|
||||
},
|
||||
getRepos() {
|
||||
let self = this
|
||||
var requestOptions = {
|
||||
method: 'GET',
|
||||
redirect: 'follow'
|
||||
};
|
||||
|
||||
fetch("https://api.github.com/search/repositories?q=topic:cidermusicplugin fork:true&per_page=100", requestOptions)
|
||||
.then(response => response.text())
|
||||
.then(result => {
|
||||
self.repos = JSON.parse(result).items
|
||||
})
|
||||
.catch(error => console.log('error', error));
|
||||
}
|
||||
}
|
||||
})
|
||||
</script>
|
||||
-->
|
File diff suppressed because it is too large
Load diff
557
src/smth.json
Normal file
557
src/smth.json
Normal file
|
@ -0,0 +1,557 @@
|
|||
{
|
||||
"CookieSPAEnabled": false,
|
||||
"MultiVariantTestingEnabled": false,
|
||||
"UseV2": true,
|
||||
"MobileSDK": false,
|
||||
"SkipGeolocation": false,
|
||||
"ScriptType": "PRODUCTION",
|
||||
"Version": "6.26.0",
|
||||
"OptanonDataJSON": "50da44be-0564-43df-b139-329aedcf267b",
|
||||
"GeolocationUrl": "https://geolocation.onetrust.com/cookieconsentpub/v1/geo/location",
|
||||
"BulkDomainCheckUrl": "https://cookies-data.onetrust.io/bannersdk/v1/domaingroupcheck",
|
||||
"RuleSet": [
|
||||
{
|
||||
"Id": "fb7c8fa7-d912-4e6b-a0ef-181d7466bd99",
|
||||
"Name": "Standard Notice Banner",
|
||||
"Countries": [
|
||||
"ps",
|
||||
"hk",
|
||||
"pw",
|
||||
"ht",
|
||||
"qa",
|
||||
"id",
|
||||
"il",
|
||||
"ae",
|
||||
"in",
|
||||
"ag",
|
||||
"za",
|
||||
"al",
|
||||
"am",
|
||||
"ao",
|
||||
"zm",
|
||||
"au",
|
||||
"az",
|
||||
"zw",
|
||||
"ba",
|
||||
"bb",
|
||||
"rs",
|
||||
"bd",
|
||||
"ru",
|
||||
"jm",
|
||||
"bf",
|
||||
"jo",
|
||||
"rw",
|
||||
"bi",
|
||||
"bj",
|
||||
"bn",
|
||||
"sa",
|
||||
"sb",
|
||||
"sc",
|
||||
"bs",
|
||||
"bt",
|
||||
"sg",
|
||||
"bw",
|
||||
"by",
|
||||
"bz",
|
||||
"sl",
|
||||
"sm",
|
||||
"ke",
|
||||
"sn",
|
||||
"kg",
|
||||
"kh",
|
||||
"ki",
|
||||
"ca",
|
||||
"sr",
|
||||
"st",
|
||||
"kn",
|
||||
"ch",
|
||||
"ci",
|
||||
"sz",
|
||||
"kr",
|
||||
"cm",
|
||||
"cn",
|
||||
"kw",
|
||||
"kz",
|
||||
"td",
|
||||
"cv",
|
||||
"tg",
|
||||
"cw",
|
||||
"th",
|
||||
"la",
|
||||
"lb",
|
||||
"lc",
|
||||
"tl",
|
||||
"to",
|
||||
"tr",
|
||||
"lk",
|
||||
"tt",
|
||||
"tv",
|
||||
"dj",
|
||||
"tz",
|
||||
"lr",
|
||||
"ls",
|
||||
"dm",
|
||||
"ug",
|
||||
"ma",
|
||||
"md",
|
||||
"me",
|
||||
"mg",
|
||||
"mh",
|
||||
"us",
|
||||
"mk",
|
||||
"ml",
|
||||
"mn",
|
||||
"eg",
|
||||
"mr",
|
||||
"uz",
|
||||
"mu",
|
||||
"mv",
|
||||
"mw",
|
||||
"my",
|
||||
"mz",
|
||||
"vc",
|
||||
"na",
|
||||
"ne",
|
||||
"vn",
|
||||
"ng",
|
||||
"vu",
|
||||
"np",
|
||||
"nr",
|
||||
"fj",
|
||||
"fm",
|
||||
"nz",
|
||||
"ga",
|
||||
"ws",
|
||||
"gd",
|
||||
"om",
|
||||
"ge",
|
||||
"gh",
|
||||
"gm",
|
||||
"gn",
|
||||
"gq",
|
||||
"gw",
|
||||
"gy",
|
||||
"pg",
|
||||
"ph",
|
||||
"pk"
|
||||
],
|
||||
"States": {},
|
||||
"LanguageSwitcherPlaceholder": {
|
||||
"hi": "hi",
|
||||
"de": "de",
|
||||
"es-BO": "es-BO",
|
||||
"zh-Hans": "zh-Hans",
|
||||
"zh-Hant": "zh-Hant",
|
||||
"es-BZ": "es-BZ",
|
||||
"uk": "uk",
|
||||
"es-CC": "es-CC",
|
||||
"id": "id",
|
||||
"ur": "ur",
|
||||
"af": "af",
|
||||
"es-SV": "es-SV",
|
||||
"ms": "ms",
|
||||
"es-GT": "es-GT",
|
||||
"es-CR": "es-CR",
|
||||
"it": "it",
|
||||
"es-CL": "es-CL",
|
||||
"es": "es",
|
||||
"es-CO": "es-CO",
|
||||
"es-PE": "es-PE",
|
||||
"ar": "ar",
|
||||
"vi": "vi",
|
||||
"es-PA": "es-PA",
|
||||
"ne": "ne",
|
||||
"ja": "ja",
|
||||
"az": "az",
|
||||
"zu": "zu",
|
||||
"nl": "nl",
|
||||
"es-HN": "es-HN",
|
||||
"ru": "ru",
|
||||
"es-PR": "es-PR",
|
||||
"es-PY": "es-PY",
|
||||
"fr": "fr",
|
||||
"bn": "bn",
|
||||
"es-DO": "es-DO",
|
||||
"default": "en",
|
||||
"es-EC": "es-EC",
|
||||
"en-PH": "en-PH",
|
||||
"sr": "sr",
|
||||
"sw": "sw",
|
||||
"ko": "ko",
|
||||
"pt-BR": "pt-BR",
|
||||
"es-UY": "es-UY",
|
||||
"es-VE": "es-VE",
|
||||
"ta": "ta",
|
||||
"es-MX": "es-MX",
|
||||
"th": "th",
|
||||
"es-AR": "es-AR",
|
||||
"he": "he",
|
||||
"tr": "tr",
|
||||
"es-NI": "es-NI"
|
||||
},
|
||||
"BannerPushesDown": false,
|
||||
"Default": false,
|
||||
"Global": false,
|
||||
"Type": "GENERIC",
|
||||
"UseGoogleVendors": false,
|
||||
"VariantEnabled": false,
|
||||
"TestEndTime": null,
|
||||
"Variants": [],
|
||||
"TemplateName": "Spotify - Standard Notice Banner",
|
||||
"Conditions": [],
|
||||
"GCEnable": false
|
||||
},
|
||||
{
|
||||
"Id": "87b34903-3ed8-41e8-873f-df7208bf4ac7",
|
||||
"Name": "IAB 2.0 - Germany",
|
||||
"Countries": [
|
||||
"de"
|
||||
],
|
||||
"States": {},
|
||||
"LanguageSwitcherPlaceholder": {
|
||||
"default": "de"
|
||||
},
|
||||
"BannerPushesDown": false,
|
||||
"Default": false,
|
||||
"Global": false,
|
||||
"Type": "IAB2",
|
||||
"UseGoogleVendors": false,
|
||||
"VariantEnabled": false,
|
||||
"TestEndTime": null,
|
||||
"Variants": [],
|
||||
"TemplateName": "Spotify - GDPR IAB Banner (Germany)",
|
||||
"Conditions": [],
|
||||
"GCEnable": false
|
||||
},
|
||||
{
|
||||
"Id": "047479d5-e10c-4c37-bb58-b85a33337d90",
|
||||
"Name": "IAB 2.0 - Reject All Button",
|
||||
"Countries": [
|
||||
"fr"
|
||||
],
|
||||
"States": {},
|
||||
"LanguageSwitcherPlaceholder": {
|
||||
"no": "no",
|
||||
"de": "de",
|
||||
"sv": "sv",
|
||||
"fi": "fi",
|
||||
"pt": "pt",
|
||||
"bg": "bg",
|
||||
"el": "el",
|
||||
"lt": "lt",
|
||||
"en": "en",
|
||||
"lv": "lv",
|
||||
"is": "is",
|
||||
"hr": "hr",
|
||||
"it": "it",
|
||||
"hu": "hu",
|
||||
"es": "es",
|
||||
"et": "et",
|
||||
"cs": "cs",
|
||||
"default": "fr",
|
||||
"sk": "sk",
|
||||
"sl": "sl",
|
||||
"pl": "pl",
|
||||
"ro": "ro",
|
||||
"da": "da",
|
||||
"nl": "nl"
|
||||
},
|
||||
"BannerPushesDown": false,
|
||||
"Default": false,
|
||||
"Global": false,
|
||||
"Type": "IAB2",
|
||||
"UseGoogleVendors": false,
|
||||
"VariantEnabled": false,
|
||||
"TestEndTime": null,
|
||||
"Variants": [],
|
||||
"TemplateName": "Spotify - GDPR IAB Banner (Reject all button)",
|
||||
"Conditions": [],
|
||||
"GCEnable": false
|
||||
},
|
||||
{
|
||||
"Id": "9ffca9ee-89d4-4e64-9807-8f72fd75528a",
|
||||
"Name": "IAB 2.0",
|
||||
"Countries": [
|
||||
"no",
|
||||
"fi",
|
||||
"be",
|
||||
"pt",
|
||||
"bg",
|
||||
"dk",
|
||||
"lt",
|
||||
"lu",
|
||||
"lv",
|
||||
"hr",
|
||||
"hu",
|
||||
"se",
|
||||
"si",
|
||||
"sk",
|
||||
"gb",
|
||||
"ie",
|
||||
"ee",
|
||||
"mt",
|
||||
"is",
|
||||
"it",
|
||||
"gr",
|
||||
"es",
|
||||
"at",
|
||||
"cy",
|
||||
"cz",
|
||||
"pl",
|
||||
"li",
|
||||
"ro",
|
||||
"nl"
|
||||
],
|
||||
"States": {},
|
||||
"LanguageSwitcherPlaceholder": {
|
||||
"no": "no",
|
||||
"de": "de",
|
||||
"sv": "sv",
|
||||
"fi": "fi",
|
||||
"pt": "pt",
|
||||
"bg": "bg",
|
||||
"el": "el",
|
||||
"lt": "lt",
|
||||
"lv": "lv",
|
||||
"is": "is",
|
||||
"hr": "hr",
|
||||
"it": "it",
|
||||
"fr": "fr",
|
||||
"hu": "hu",
|
||||
"es": "es",
|
||||
"et": "et",
|
||||
"cs": "cs",
|
||||
"default": "en",
|
||||
"sk": "sk",
|
||||
"sl": "sl",
|
||||
"pl": "pl",
|
||||
"ro": "ro",
|
||||
"da": "da",
|
||||
"nl": "nl"
|
||||
},
|
||||
"BannerPushesDown": false,
|
||||
"Default": true,
|
||||
"Global": false,
|
||||
"Type": "IAB2",
|
||||
"UseGoogleVendors": false,
|
||||
"VariantEnabled": false,
|
||||
"TestEndTime": null,
|
||||
"Variants": [],
|
||||
"TemplateName": "Spotify - GDPR IAB Banner",
|
||||
"Conditions": [],
|
||||
"GCEnable": false
|
||||
},
|
||||
{
|
||||
"Id": "74eec303-d5c3-4488-a6df-cb21b90c2b8c",
|
||||
"Name": "Global",
|
||||
"Countries": [
|
||||
"pr",
|
||||
"tw",
|
||||
"hm",
|
||||
"hn",
|
||||
"py",
|
||||
"do",
|
||||
"ye",
|
||||
"ua",
|
||||
"ly",
|
||||
"dz",
|
||||
"um",
|
||||
"ec",
|
||||
"mm",
|
||||
"mo",
|
||||
"mp",
|
||||
"eh",
|
||||
"ad",
|
||||
"im",
|
||||
"uy",
|
||||
"af",
|
||||
"ms",
|
||||
"io",
|
||||
"iq",
|
||||
"ai",
|
||||
"ir",
|
||||
"va",
|
||||
"mx",
|
||||
"er",
|
||||
"ve",
|
||||
"et",
|
||||
"aq",
|
||||
"vg",
|
||||
"ar",
|
||||
"as",
|
||||
"vi",
|
||||
"nc",
|
||||
"aw",
|
||||
"nf",
|
||||
"ni",
|
||||
"je",
|
||||
"fk",
|
||||
"bh",
|
||||
"jp",
|
||||
"nu",
|
||||
"fo",
|
||||
"bl",
|
||||
"bm",
|
||||
"bo",
|
||||
"wf",
|
||||
"bq",
|
||||
"br",
|
||||
"sd",
|
||||
"bv",
|
||||
"sh",
|
||||
"sj",
|
||||
"so",
|
||||
"gg",
|
||||
"cc",
|
||||
"ss",
|
||||
"cd",
|
||||
"km",
|
||||
"gi",
|
||||
"cf",
|
||||
"sv",
|
||||
"cg",
|
||||
"gl",
|
||||
"sx",
|
||||
"kp",
|
||||
"sy",
|
||||
"ck",
|
||||
"cl",
|
||||
"co",
|
||||
"gs",
|
||||
"gt",
|
||||
"gu",
|
||||
"ky",
|
||||
"cr",
|
||||
"tc",
|
||||
"pa",
|
||||
"tf",
|
||||
"cu",
|
||||
"pe",
|
||||
"cx",
|
||||
"pf",
|
||||
"tj",
|
||||
"tk",
|
||||
"tm",
|
||||
"tn",
|
||||
"pm",
|
||||
"pn"
|
||||
],
|
||||
"States": {},
|
||||
"LanguageSwitcherPlaceholder": {
|
||||
"hi": "hi",
|
||||
"de": "de",
|
||||
"es-BO": "es-BO",
|
||||
"zh-Hans": "zh-Hans",
|
||||
"zh-Hant": "zh-Hant",
|
||||
"es-BZ": "es-BZ",
|
||||
"uk": "uk",
|
||||
"es-CC": "es-CC",
|
||||
"id": "id",
|
||||
"ur": "ur",
|
||||
"af": "af",
|
||||
"es-SV": "es-SV",
|
||||
"ms": "ms",
|
||||
"es-GT": "es-GT",
|
||||
"es-CR": "es-CR",
|
||||
"it": "it",
|
||||
"es-CL": "es-CL",
|
||||
"es": "es",
|
||||
"es-CO": "es-CO",
|
||||
"es-PE": "es-PE",
|
||||
"ar": "ar",
|
||||
"vi": "vi",
|
||||
"es-PA": "es-PA",
|
||||
"ne": "ne",
|
||||
"ja": "ja",
|
||||
"az": "az",
|
||||
"zu": "zu",
|
||||
"nl": "nl",
|
||||
"es-HN": "es-HN",
|
||||
"ru": "ru",
|
||||
"es-PR": "es-PR",
|
||||
"es-PY": "es-PY",
|
||||
"fr": "fr",
|
||||
"bn": "bn",
|
||||
"es-DO": "es-DO",
|
||||
"default": "en",
|
||||
"es-EC": "es-EC",
|
||||
"en-PH": "en-PH",
|
||||
"sr": "sr",
|
||||
"sw": "sw",
|
||||
"ko": "ko",
|
||||
"pt-BR": "pt-BR",
|
||||
"es-UY": "es-UY",
|
||||
"es-VE": "es-VE",
|
||||
"ta": "ta",
|
||||
"es-MX": "es-MX",
|
||||
"th": "th",
|
||||
"es-AR": "es-AR",
|
||||
"he": "he",
|
||||
"tr": "tr",
|
||||
"es-NI": "es-NI"
|
||||
},
|
||||
"BannerPushesDown": false,
|
||||
"Default": false,
|
||||
"Global": true,
|
||||
"Type": "GENERIC",
|
||||
"UseGoogleVendors": false,
|
||||
"VariantEnabled": false,
|
||||
"TestEndTime": null,
|
||||
"Variants": [],
|
||||
"TemplateName": "Spotify - Standard Notice Banner",
|
||||
"Conditions": [],
|
||||
"GCEnable": false
|
||||
}
|
||||
],
|
||||
"IabData": {
|
||||
"cookieVersion": "1",
|
||||
"createdTime": "2022-05-23T15:50:11.758903",
|
||||
"updatedTime": "2022-05-23T15:50:11.758919",
|
||||
"cmpId": "28",
|
||||
"cmpVersion": "1",
|
||||
"consentScreen": "1",
|
||||
"consentLanguage": null,
|
||||
"vendorListVersion": 0,
|
||||
"maxVendorId": 0,
|
||||
"encodingType": "0",
|
||||
"globalVendorListUrl": "https://cdn.cookielaw.org/vendorlist/iabData.json"
|
||||
},
|
||||
"IabV2Data": {
|
||||
"cookieVersion": "1",
|
||||
"createdTime": "2022-05-23T15:50:11.809823",
|
||||
"updatedTime": "2022-05-23T15:50:11.809837",
|
||||
"cmpId": "28",
|
||||
"cmpVersion": "1",
|
||||
"consentScreen": "1",
|
||||
"consentLanguage": null,
|
||||
"vendorListVersion": 144,
|
||||
"maxVendorId": 0,
|
||||
"encodingType": "0",
|
||||
"globalVendorListUrl": "https://cdn.cookielaw.org/vendorlist/iab2Data.json"
|
||||
},
|
||||
"GoogleData": {
|
||||
"vendorListVersion": 1,
|
||||
"googleVendorListUrl": "https://cdn.cookielaw.org/vendorlist/googleData.json"
|
||||
},
|
||||
"ScriptDynamicLoadEnabled": false,
|
||||
"TenantFeatures": {
|
||||
"CookieV2BannerFocus": true,
|
||||
"CookieV2TargetedTemplates": true,
|
||||
"CookieV2GPC": true,
|
||||
"CookieV2AssignTemplateRule": true,
|
||||
"CookieV2GeolocationJsonApi": true,
|
||||
"CookieV2TCF21": true,
|
||||
"CookieV2RemoveSettingsIcon": true,
|
||||
"CookieV2GeneralVendors": true
|
||||
},
|
||||
"IsSuppressBanner": false,
|
||||
"IsSuppressPC": false,
|
||||
"PublisherCC": "DE",
|
||||
"Domain": "spotify.com",
|
||||
"TenantGuid": "f1b38160-cf19-4625-89df-35263d2d97c0",
|
||||
"EnvId": "app-de-prod",
|
||||
"RemoteActionsEnabled": false,
|
||||
"GeoRuleGroupName": "Spotify Domains",
|
||||
"GATrackToggle": true,
|
||||
"GATrackAssignedCategory": "AS"
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue