Added generic icon for iconless plugiins
This commit is contained in:
parent
c344a70de9
commit
50458901d6
5 changed files with 89 additions and 35 deletions
BIN
lnbits/core/static/extension.png
Normal file
BIN
lnbits/core/static/extension.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.7 KiB |
|
|
@ -4,7 +4,8 @@ new Vue({
|
||||||
return {
|
return {
|
||||||
searchTerm: '',
|
searchTerm: '',
|
||||||
filteredExtensions: null,
|
filteredExtensions: null,
|
||||||
maxStars: 5
|
maxStars: 5,
|
||||||
|
user: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
|
@ -33,5 +34,10 @@ new Vue({
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
if (window.user) {
|
||||||
|
this.user = LNbits.map.user(window.user)
|
||||||
|
}
|
||||||
|
},
|
||||||
mixins: [windowMixin]
|
mixins: [windowMixin]
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -3,9 +3,19 @@
|
||||||
<script src="/core/static/js/extensions.js"></script>
|
<script src="/core/static/js/extensions.js"></script>
|
||||||
{% endblock %} {% block page %}
|
{% endblock %} {% block page %}
|
||||||
<div class="row q-col-gutter-md q-mb-md">
|
<div class="row q-col-gutter-md q-mb-md">
|
||||||
<div class="col-sm-9 col-xs-12 mt-lg">
|
<div class="col-sm-9 gt-sm col-xs-12 mt-lg">
|
||||||
<p class="text-h4">Extensions</p>
|
<p class="text-h4">
|
||||||
|
Extensions
|
||||||
|
<q-btn
|
||||||
|
flat
|
||||||
|
color="primary"
|
||||||
|
type="a"
|
||||||
|
:href="['/install?usr=', user.id].join('')"
|
||||||
|
>Add Extensions</q-btn
|
||||||
|
>
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-sm-3 col-xs-12 q-ml-auto">
|
<div class="col-sm-3 col-xs-12 q-ml-auto">
|
||||||
<q-input v-model="searchTerm" label="Search extensions">
|
<q-input v-model="searchTerm" label="Search extensions">
|
||||||
<q-icon
|
<q-icon
|
||||||
|
|
@ -25,18 +35,39 @@
|
||||||
:key="extension.code"
|
:key="extension.code"
|
||||||
>
|
>
|
||||||
<q-card>
|
<q-card>
|
||||||
<q-card-section>
|
<q-card-section style="min-height: 140px">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-3">
|
<div class="col-3">
|
||||||
<q-img
|
<q-img
|
||||||
|
v-if="extension.tile"
|
||||||
:src="extension.tile"
|
:src="extension.tile"
|
||||||
spinner-color="white"
|
spinner-color="white"
|
||||||
style="max-width: 100%"
|
style="max-width: 100%"
|
||||||
></q-img>
|
></q-img>
|
||||||
|
<div v-else>
|
||||||
|
<q-icon
|
||||||
|
class="gt-sm"
|
||||||
|
name="extension"
|
||||||
|
color="primary"
|
||||||
|
size="70px"
|
||||||
|
></q-icon>
|
||||||
|
<q-icon
|
||||||
|
class="lt-md"
|
||||||
|
name="extension"
|
||||||
|
color="primary"
|
||||||
|
size="35px"
|
||||||
|
></q-icon>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-9 q-pl-sm">
|
<div class="col-9 q-pl-sm">
|
||||||
{% raw %}
|
{% raw %}
|
||||||
<div class="text-h5 gt-sm q-mt-sm q-mb-xs">
|
<div class="text-h5 gt-sm q-mt-sm q-mb-xs gt-sm">
|
||||||
|
{{ extension.name }}
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
class="text-h5 gt-sm q-mt-sm q-mb-xs lt-md"
|
||||||
|
style="min-height: 60px"
|
||||||
|
>
|
||||||
{{ extension.name }}
|
{{ extension.name }}
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
%} {% block page %}
|
%} {% block page %}
|
||||||
<div class="row q-col-gutter-md q-mb-md">
|
<div class="row q-col-gutter-md q-mb-md">
|
||||||
<div class="col-sm-9 col-xs-12">
|
<div class="col-sm-9 col-xs-12">
|
||||||
<p class="text-h4">
|
<p class="text-h4 gt-sm">
|
||||||
Add Extensions <small v-if="!g.user.admin">(admin only)</small>
|
Add Extensions <small v-if="!g.user.admin">(admin only)</small>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -58,22 +58,29 @@
|
||||||
:key="extension.id + extension.hash"
|
:key="extension.id + extension.hash"
|
||||||
>
|
>
|
||||||
<q-card>
|
<q-card>
|
||||||
<q-card-section>
|
<q-card-section style="min-height: 140px">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-3">
|
<div class="col-3">
|
||||||
<q-img
|
<q-img
|
||||||
v-if="extension.iconUrl"
|
v-if="extension.tile"
|
||||||
:src="extension.iconUrl"
|
:src="extension.tile"
|
||||||
spinner-color="white"
|
spinner-color="white"
|
||||||
style="max-width: 64px"
|
style="max-width: 100%"
|
||||||
class="rounded-borders"
|
|
||||||
></q-img>
|
></q-img>
|
||||||
<q-icon
|
<div v-else>
|
||||||
v-else
|
<q-icon
|
||||||
:name="extension.icon"
|
class="gt-sm"
|
||||||
color="grey-5"
|
name="extension"
|
||||||
size="lg"
|
color="primary"
|
||||||
></q-icon>
|
size="70px"
|
||||||
|
></q-icon>
|
||||||
|
<q-icon
|
||||||
|
class="lt-md"
|
||||||
|
name="extension"
|
||||||
|
color="primary"
|
||||||
|
size="35px"
|
||||||
|
></q-icon>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-9 q-pl-sm">
|
<div class="col-9 q-pl-sm">
|
||||||
<q-badge
|
<q-badge
|
||||||
|
|
@ -84,7 +91,13 @@
|
||||||
<small>New Version</small>
|
<small>New Version</small>
|
||||||
</q-badge>
|
</q-badge>
|
||||||
{% raw %}
|
{% raw %}
|
||||||
<div class="text-h5 gt-sm q-mt-sm q-mb-xs">
|
<div class="text-h5 gt-sm q-mt-sm q-mb-xs gt-sm">
|
||||||
|
{{ extension.name }}
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
class="text-h5 gt-sm q-mt-sm q-mb-xs lt-md"
|
||||||
|
style="min-height: 60px"
|
||||||
|
>
|
||||||
{{ extension.name }}
|
{{ extension.name }}
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
|
|
@ -118,21 +131,25 @@
|
||||||
</q-badge>
|
</q-badge>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row q-pt-sm">
|
</q-card-section>
|
||||||
<div class="col">
|
<q-card-section>
|
||||||
<q-rating
|
<div>
|
||||||
max="5"
|
<q-rating
|
||||||
disable
|
class="gt-sm"
|
||||||
v-model="maxStars"
|
v-model="maxStars"
|
||||||
size="1.5em"
|
disable
|
||||||
color="primary"
|
size="1.5em"
|
||||||
icon-selected="star"
|
:max="5"
|
||||||
readonly
|
color="primary"
|
||||||
no-dimming
|
></q-rating>
|
||||||
>
|
<q-rating
|
||||||
</q-rating>
|
v-model="maxStars"
|
||||||
<q-tooltip>Ratings coming soon</q-tooltip>
|
class="lt-md"
|
||||||
</div>
|
size="1.5em"
|
||||||
|
:max="5"
|
||||||
|
color="primary"
|
||||||
|
></q-rating
|
||||||
|
><q-tooltip>Ratings coming soon</q-tooltip>
|
||||||
</div>
|
</div>
|
||||||
</q-card-section>
|
</q-card-section>
|
||||||
<q-separator v-if="g.user.admin"></q-separator>
|
<q-separator v-if="g.user.admin"></q-separator>
|
||||||
|
|
@ -309,7 +326,7 @@
|
||||||
showUpgradeDialog: false,
|
showUpgradeDialog: false,
|
||||||
selectedExtension: null,
|
selectedExtension: null,
|
||||||
selectedExtensionRepos: null,
|
selectedExtensionRepos: null,
|
||||||
maxStars: 0
|
maxStars: 5
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
|
|
||||||
|
|
@ -145,7 +145,7 @@ Vue.component('lnbits-extension-list', {
|
||||||
<q-icon name="playlist_add" color="grey-5" size="md"></q-icon>
|
<q-icon name="playlist_add" color="grey-5" size="md"></q-icon>
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
<q-item-section>
|
<q-item-section>
|
||||||
<q-item-label lines="1" class="text-caption">Add extensions</q-item-label>
|
<q-item-label lines="1" class="text-caption">Add Extensions</q-item-label>
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
</q-list>
|
</q-list>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue