mirror of
https://github.com/YunoHost/yunohost-admin.git
synced 2024-09-03 20:06:15 +02:00
commit
ea2c0a8c10
6 changed files with 54 additions and 44 deletions
|
@ -1,13 +1,22 @@
|
|||
<template>
|
||||
<routable-tabs
|
||||
:routes="routes_"
|
||||
v-bind="{ panels, forms, v: $v, ...$attrs }"
|
||||
v-on="$listeners"
|
||||
>
|
||||
<slot name="tab-top" slot="tab-top"></slot>
|
||||
<slot name="tab-before" slot="tab-before"></slot>
|
||||
<slot name="tab-after" slot="tab-after"></slot>
|
||||
</routable-tabs>
|
||||
<div class="config-panel">
|
||||
<routable-tabs
|
||||
v-if="routes_.length > 1"
|
||||
:routes="routes_"
|
||||
v-bind="{ panels, forms, v: $v, ...$attrs }"
|
||||
v-on="$listeners"
|
||||
>
|
||||
<slot name="tab-top" slot="tab-top" />
|
||||
<slot name="tab-before" slot="tab-before" />
|
||||
<slot name="tab-after" slot="tab-after" />
|
||||
</routable-tabs>
|
||||
|
||||
<card v-else :title="routes_[0].text" :icon="routes_[0].icon">
|
||||
<slot name="tab-top" />
|
||||
<slot name="tab-before" />
|
||||
<slot name="tab-after" />
|
||||
</card>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
|
|
@ -55,7 +55,7 @@
|
|||
"api_not_responding": "The YunoHost API is not responding. Maybe 'yunohost-api' is down or got restarted?",
|
||||
"api_waiting": "Waiting for the server's response...",
|
||||
"app": {
|
||||
"installed_version": "Installed version: {version}",
|
||||
"installed_version": "Installed version:",
|
||||
"open_this_app": "Open this app",
|
||||
"antifeatures": "This app has features you may not like:",
|
||||
"doc": {
|
||||
|
|
|
@ -209,7 +209,7 @@ body {
|
|||
}
|
||||
}
|
||||
|
||||
.card + .card {
|
||||
.card + .card, .card + .config-panel, .config-panel + .card {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
.card-deck .card + .card {
|
||||
|
|
|
@ -73,40 +73,42 @@
|
|||
tabindex="0" :aria-posinset="i + 1" :aria-setsize="filteredApps.length"
|
||||
no-body class="app-card"
|
||||
>
|
||||
<b-card-body>
|
||||
<b-card-body class="d-flex">
|
||||
<b-img v-if="app.logo_hash" class="app-logo rounded" :src="`./applogos/${app.logo_hash}.png`" />
|
||||
|
||||
<b-card-title :id="`${app.id}-title`" class="d-flex mb-2">
|
||||
<b-link :to="{ name: 'app-install', params: { id: app.id }}" class="card-link">
|
||||
{{ app.manifest.name }}
|
||||
</b-link>
|
||||
<div>
|
||||
<b-card-title :id="`${app.id}-title`" class="d-flex mb-2">
|
||||
<b-link :to="{ name: 'app-install', params: { id: app.id }}" class="card-link">
|
||||
{{ app.manifest.name }}
|
||||
</b-link>
|
||||
|
||||
<small v-if="app.state !== 'working' || app.high_quality" class="d-flex align-items-center ml-2 position-relative">
|
||||
<b-badge
|
||||
v-if="app.state !== 'working'"
|
||||
:variant="app.color"
|
||||
v-b-popover.hover.bottom="$t(`app_state_${app.state}_explanation`)"
|
||||
>
|
||||
<!-- app.state can be 'lowquality' or 'inprogress' -->
|
||||
{{ $t('app_state_' + app.state) }}
|
||||
</b-badge>
|
||||
<small v-if="app.state !== 'working' || app.high_quality" class="d-flex align-items-center ml-2 position-relative">
|
||||
<b-badge
|
||||
v-if="app.state !== 'working'"
|
||||
:variant="app.color"
|
||||
v-b-popover.hover.bottom="$t(`app_state_${app.state}_explanation`)"
|
||||
>
|
||||
<!-- app.state can be 'lowquality' or 'inprogress' -->
|
||||
{{ $t('app_state_' + app.state) }}
|
||||
</b-badge>
|
||||
|
||||
<icon
|
||||
v-if="app.high_quality" iname="star" class="star"
|
||||
v-b-popover.hover.bottom="$t(`app_state_highquality_explanation`)"
|
||||
/>
|
||||
</small>
|
||||
</b-card-title>
|
||||
<icon
|
||||
v-if="app.high_quality" iname="star" class="star"
|
||||
v-b-popover.hover.bottom="$t(`app_state_highquality_explanation`)"
|
||||
/>
|
||||
</small>
|
||||
</b-card-title>
|
||||
|
||||
<b-card-text :id="`${app.id}-desc`">
|
||||
{{ app.manifest.description }}
|
||||
</b-card-text>
|
||||
<b-card-text :id="`${app.id}-desc`">
|
||||
{{ app.manifest.description }}
|
||||
</b-card-text>
|
||||
|
||||
<b-card-text v-if="!app.maintained" class="align-self-end position-relative mt-auto">
|
||||
<span class="alert-warning p-1" v-b-popover.hover.top="$t('orphaned_details')">
|
||||
<icon iname="warning" /> {{ $t('orphaned') }}
|
||||
</span>
|
||||
</b-card-text>
|
||||
<b-card-text v-if="!app.maintained" class="align-self-end position-relative mt-auto">
|
||||
<span class="alert-warning p-1" v-b-popover.hover.top="$t('orphaned_details')">
|
||||
<icon iname="warning" /> {{ $t('orphaned') }}
|
||||
</span>
|
||||
</b-card-text>
|
||||
</div>
|
||||
</b-card-body>
|
||||
</b-card>
|
||||
</card-deck-feed>
|
||||
|
@ -456,10 +458,9 @@ export default {
|
|||
.app-card {
|
||||
min-height: 125px;
|
||||
text-align: start;
|
||||
background-color: $gray-200;
|
||||
|
||||
.app-logo {
|
||||
float: left;
|
||||
align-self: flex-start;
|
||||
background-color: white;
|
||||
max-width: 91px;
|
||||
margin-right: 1rem;
|
||||
|
|
|
@ -72,10 +72,10 @@
|
|||
</div>
|
||||
|
||||
<p class="text-secondary">
|
||||
{{ $t('app.installed_version', { version: app.version }) }}<br>
|
||||
<strong v-t="'app.installed_version'" /> {{ app.version }}<br>
|
||||
|
||||
<template v-if="app.alternativeTo">
|
||||
{{ $t('app.potential_alternative_to') }} {{ app.alternativeTo }}
|
||||
<strong v-t="'app.potential_alternative_to'" /> {{ app.alternativeTo }}
|
||||
</template>
|
||||
</p>
|
||||
|
||||
|
|
|
@ -163,7 +163,7 @@ export default {
|
|||
},
|
||||
|
||||
methods: {
|
||||
onQueriesResponse (domains, mainDomain, domain, config) {
|
||||
onQueriesResponse (domains, domain, config) {
|
||||
this.config = formatYunoHostConfigPanels(config)
|
||||
},
|
||||
|
||||
|
|
Loading…
Reference in a new issue