feat(settings): Show supported apps on app settings if subscribed

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
pull/39586/head
Ferdinand Thiessen 2 years ago committed by nextcloud-command
parent 0de805b2a7
commit c1975a634c
  1. 7
      apps/settings/src/components/AppList.vue
  2. 1
      apps/settings/src/constants/AppsConstants.js
  3. 17
      apps/settings/src/views/Apps.vue
  4. 4
      dist/settings-apps-view-7418.js
  5. 2
      dist/settings-apps-view-7418.js.map
  6. 4
      dist/settings-users-8351.js
  7. 2
      dist/settings-users-8351.js.map
  8. 4
      dist/settings-vue-settings-apps-users-management.js
  9. 2
      dist/settings-vue-settings-apps-users-management.js.map

@ -154,7 +154,12 @@ export default {
if (this.category === 'updates') {
return apps.filter(app => app.update)
}
if (this.category === 'supported') {
// For customers of the Nextcloud GmbH the app level will be set to `300` for apps that are supported in their subscription
return apps.filter(app => app.level === 300)
}
if (this.category === 'featured') {
// An app level of `200` will be set for apps featured on the app store
return apps.filter(app => app.level === 200)
}
// filter app store categories
@ -190,7 +195,7 @@ export default {
return !this.useListView && !this.useBundleView
},
useListView() {
return (this.category === 'installed' || this.category === 'enabled' || this.category === 'disabled' || this.category === 'updates' || this.category === 'featured')
return (this.category === 'installed' || this.category === 'enabled' || this.category === 'disabled' || this.category === 'updates' || this.category === 'featured' || this.category === 'supported')
},
useBundleView() {
return (this.category === 'app-bundles')

@ -29,4 +29,5 @@ export const APPS_SECTION_ENUM = Object.freeze({
updates: t('settings', 'Updates'),
'app-bundles': t('settings', 'App bundles'),
featured: t('settings', 'Featured apps'),
supported: t('settings', 'Supported apps'), // From subscription
})

@ -50,6 +50,14 @@
<NcCounterBubble>{{ updateCount }}</NcCounterBubble>
</template>
</NcAppNavigationItem>
<NcAppNavigationItem v-if="isSubscribed"
id="app-category-supported"
:to="{ name: 'apps-category', params: { category: 'supported' } }"
:name="$options.APPS_SECTION_ENUM.supported">
<template #icon>
<IconStarShooting :size="20" />
</template>
</NcAppNavigationItem>
<NcAppNavigationItem id="app-category-your-bundles"
:to="{ name: 'apps-category', params: { category: 'app-bundles' } }"
icon="icon-category-app-bundles"
@ -147,6 +155,7 @@ import NcAppSidebar from '@nextcloud/vue/dist/Components/NcAppSidebar.js'
import NcAppSidebarTab from '@nextcloud/vue/dist/Components/NcAppSidebarTab.js'
import NcCounterBubble from '@nextcloud/vue/dist/Components/NcCounterBubble.js'
import NcContent from '@nextcloud/vue/dist/Components/NcContent.js'
import IconStarShooting from 'vue-material-design-icons/StarShooting.vue'
import AppList from '../components/AppList.vue'
import AppDetails from '../components/AppDetails.vue'
@ -165,6 +174,7 @@ export default {
NcAppContent,
AppDetails,
AppList,
IconStarShooting,
NcAppNavigation,
NcAppNavigationItem,
NcAppNavigationSpacer,
@ -255,6 +265,13 @@ export default {
changelog() {
return (release) => release.translations.en.changelog
},
/**
* Check if the current instance has a support subscription from the Nextcloud GmbH
*/
isSubscribed() {
// For customers of the Nextcloud GmbH the app level will be set to `300` for apps that are supported in their subscription
return this.apps.some(app => app.level === 300)
},
},
watch: {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save