From a12dc4522955340a28c9a1d18b1a88402f60f6e1 Mon Sep 17 00:00:00 2001 From: Axolotle Date: Wed, 7 Oct 2020 20:44:11 +0200 Subject: [PATCH] add AppActions view/route --- app/src/helpers/yunohostArguments.js | 2 +- app/src/router/routes.js | 37 +++++--- app/src/scss/main.scss | 15 ++- app/src/views/app/AppActions.vue | 131 +++++++++++++++++++++++++++ app/src/views/app/AppInstall.vue | 9 +- 5 files changed, 174 insertions(+), 20 deletions(-) create mode 100644 app/src/views/app/AppActions.vue diff --git a/app/src/helpers/yunohostArguments.js b/app/src/helpers/yunohostArguments.js index 7abfaef9..8df318bf 100644 --- a/app/src/helpers/yunohostArguments.js +++ b/app/src/helpers/yunohostArguments.js @@ -1,7 +1,7 @@ import i18n from '@/i18n' import store from '@/store' -function formatI18nField (field) { +export function formatI18nField (field) { if (typeof field === 'string') return field const { locale, fallbackLocale } = store.state return field[locale] || field[fallbackLocale] || field.en diff --git a/app/src/router/routes.js b/app/src/router/routes.js index efe45318..39b90e94 100644 --- a/app/src/router/routes.js +++ b/app/src/router/routes.js @@ -165,18 +165,6 @@ const routes = [ component: () => import(/* webpackChunkName: "views/apps" */ '@/views/app/AppList'), meta: { breadcrumb: [{ name: 'app-list', trad: 'applications' }] } }, - { - name: 'app-info', - path: '/apps/info/:id', - component: () => import(/* webpackChunkName: "views/apps" */ '@/views/app/AppInfo'), - props: true, - meta: { - breadcrumb: [ - { name: 'app-list', trad: 'applications' }, - { name: 'app-info', param: 'id' } - ] - } - }, { name: 'app-catalog', path: '/apps/catalog', @@ -214,6 +202,31 @@ const routes = [ ] } }, + { + name: 'app-info', + path: '/apps/:id', + component: () => import(/* webpackChunkName: "views/apps" */ '@/views/app/AppInfo'), + props: true, + meta: { + breadcrumb: [ + { name: 'app-list', trad: 'applications' }, + { name: 'app-info', param: 'id' } + ] + } + }, + { + name: 'app-actions', + path: '/apps/:id/actions', + component: () => import(/* webpackChunkName: "views/apps" */ '@/views/app/AppActions'), + props: true, + meta: { + breadcrumb: [ + { name: 'app-list', trad: 'applications' }, + { name: 'app-info', param: 'id' }, + { name: 'app-actions', trad: 'action' } + ] + } + }, /* ────────────────╮ │ SYSTEM UPDATE │ diff --git a/app/src/scss/main.scss b/app/src/scss/main.scss index 647d8d42..7d2f58f1 100644 --- a/app/src/scss/main.scss +++ b/app/src/scss/main.scss @@ -76,15 +76,24 @@ body { .card + .card { margin-top: 2rem; } -.card-header h2 { - margin: 0; - font-size: 1.75rem; +.card-header { + h2, h4 { + margin: 0; + } + + h2 { + font-size: 1.75rem; + } } .card-body { padding: 1rem; } +.card-footer { + display: flex; +} + // collapse icon .not-collapsed > .icon { transform: rotate(-90deg); diff --git a/app/src/views/app/AppActions.vue b/app/src/views/app/AppActions.vue new file mode 100644 index 00000000..93c49964 --- /dev/null +++ b/app/src/views/app/AppActions.vue @@ -0,0 +1,131 @@ + + + + + diff --git a/app/src/views/app/AppInstall.vue b/app/src/views/app/AppInstall.vue index 6db49aee..9b0cc1ba 100644 --- a/app/src/views/app/AppInstall.vue +++ b/app/src/views/app/AppInstall.vue @@ -32,12 +32,13 @@ - {{ this.server.error }} + {{ server.error }}