mirror of
https://github.com/nextcloud/server.git
synced 2026-06-08 16:26:59 -04:00
Merge pull request #49209 from nextcloud/fix/appstore-regressions
fix(app-store): Add back legacy store API used for update and removal
This commit is contained in:
commit
438b48edca
8 changed files with 30 additions and 23 deletions
|
|
@ -140,10 +140,12 @@
|
|||
|
||||
<script>
|
||||
import { subscribe, unsubscribe } from '@nextcloud/event-bus'
|
||||
import AppItem from './AppList/AppItem.vue'
|
||||
import pLimit from 'p-limit'
|
||||
import NcButton from '@nextcloud/vue/dist/Components/NcButton.js'
|
||||
import AppItem from './AppList/AppItem.vue'
|
||||
import AppManagement from '../mixins/AppManagement'
|
||||
import { useAppApiStore } from '../store/app-api-store'
|
||||
import { useAppsStore } from '../store/apps-store'
|
||||
|
||||
export default {
|
||||
name: 'AppList',
|
||||
|
|
@ -152,6 +154,8 @@ export default {
|
|||
NcButton,
|
||||
},
|
||||
|
||||
mixins: [AppManagement],
|
||||
|
||||
props: {
|
||||
category: {
|
||||
type: String,
|
||||
|
|
@ -161,8 +165,11 @@ export default {
|
|||
|
||||
setup() {
|
||||
const appApiStore = useAppApiStore()
|
||||
const store = useAppsStore()
|
||||
|
||||
return {
|
||||
appApiStore,
|
||||
store,
|
||||
}
|
||||
},
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
*/
|
||||
|
||||
import Vue from 'vue'
|
||||
import Vuex from 'vuex'
|
||||
import VTooltipPlugin from 'v-tooltip'
|
||||
import { sync } from 'vuex-router-sync'
|
||||
import { t, n } from '@nextcloud/l10n'
|
||||
|
|
@ -18,14 +19,15 @@ import { PiniaVuePlugin, createPinia } from 'pinia'
|
|||
// eslint-disable-next-line camelcase
|
||||
__webpack_nonce__ = getCSPNonce()
|
||||
|
||||
const store = useStore()
|
||||
sync(store, router)
|
||||
|
||||
// bind to window
|
||||
Vue.prototype.t = t
|
||||
Vue.prototype.n = n
|
||||
Vue.use(PiniaVuePlugin)
|
||||
Vue.use(VTooltipPlugin, { defaultHtml: false })
|
||||
Vue.use(Vuex)
|
||||
|
||||
const store = useStore()
|
||||
sync(store, router)
|
||||
|
||||
const pinia = createPinia()
|
||||
|
||||
|
|
|
|||
|
|
@ -210,15 +210,16 @@ export default {
|
|||
.catch((error) => { showError(error) })
|
||||
}
|
||||
},
|
||||
remove(appId, removeData = false) {
|
||||
if (this.app?.app_api) {
|
||||
this.appApiStore.uninstallApp(appId, removeData)
|
||||
.then(() => { rebuildNavigation() })
|
||||
.catch((error) => { showError(error) })
|
||||
} else {
|
||||
this.$store.dispatch('appApiApps/uninstallApp', { appId, removeData })
|
||||
.then((response) => { rebuildNavigation() })
|
||||
.catch((error) => { showError(error) })
|
||||
async remove(appId, removeData = false) {
|
||||
try {
|
||||
if (this.app?.app_api) {
|
||||
await this.appApiStore.uninstallApp(appId, removeData)
|
||||
} else {
|
||||
await this.$store.dispatch('uninstallApp', { appId, removeData })
|
||||
}
|
||||
await rebuildNavigation()
|
||||
} catch (error) {
|
||||
showError(error)
|
||||
}
|
||||
},
|
||||
install(appId) {
|
||||
|
|
|
|||
|
|
@ -3,16 +3,13 @@
|
|||
* SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
*/
|
||||
|
||||
import Vue from 'vue'
|
||||
import Vuex, { Store } from 'vuex'
|
||||
import { Store } from 'vuex'
|
||||
import users from './users.js'
|
||||
import apps from './apps.js'
|
||||
import settings from './users-settings.js'
|
||||
import oc from './oc.js'
|
||||
import { showError } from '@nextcloud/dialogs'
|
||||
|
||||
Vue.use(Vuex)
|
||||
|
||||
const debug = process.env.NODE_ENV !== 'production'
|
||||
|
||||
const mutations = {
|
||||
|
|
|
|||
4
dist/settings-apps-view-4529.js
vendored
4
dist/settings-apps-view-4529.js
vendored
File diff suppressed because one or more lines are too long
2
dist/settings-apps-view-4529.js.map
vendored
2
dist/settings-apps-view-4529.js.map
vendored
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…
Reference in a new issue