42 lines
1.5 KiB
Text
42 lines
1.5 KiB
Text
<script type="text/x-template" id="plugin-menu">
|
|
<div class="modal-fullscreen addtoplaylist-panel" @click.self="app.resetState()"
|
|
@contextmenu.self="app.resetState()">
|
|
<div class="modal-window">
|
|
<div class="modal-header">
|
|
<div class="modal-title">{{$root.getLz('term.pluginMenu')}}</div>
|
|
<button class="close-btn" @click="app.resetState()" :aria-label="app.getLz('action.close')"></button>
|
|
</div>
|
|
<div class="modal-content">
|
|
<span class="playlist-item" v-if="!app.pluginInstalled">
|
|
<span class="icon"><%- include("../svg/x.svg") %></span>
|
|
<span class="name" style="top: 0.5px;">{{$root.getLz('term.pluginMenu.none')}}</span>
|
|
</span>
|
|
<button class="playlist-item" @click="entry.onClick(); closeMenu();"
|
|
v-for="entry in app.pluginMenuEntries">
|
|
<span class="icon"><%- include("../svg/grid.svg") %></span>
|
|
<span class="name" style="top: 0.5px;">{{ entry.name }}</span>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</script>
|
|
|
|
<script>
|
|
Vue.component('plugin-menu', {
|
|
template: '#plugin-menu',
|
|
data: function() {
|
|
return {
|
|
app: this.$root,
|
|
}
|
|
},
|
|
props: {},
|
|
mounted() {
|
|
},
|
|
methods: {
|
|
closeMenu() {
|
|
app.modals.pluginMenu = false
|
|
},
|
|
},
|
|
}
|
|
);
|
|
</script>
|