mirror of
https://github.com/nextcloud/server.git
synced 2026-06-08 16:26:59 -04:00
fix(ux): Show initial loading state of managers
- NcMultiselect version of 50ddc6820e
Signed-off-by: Christopher Ng <chrng8@gmail.com>
This commit is contained in:
parent
96d719fd46
commit
38fb8fdc87
1 changed files with 11 additions and 1 deletions
|
|
@ -221,10 +221,11 @@
|
|||
:user-select="true"
|
||||
:options="possibleManagers"
|
||||
:placeholder="t('settings', 'Select manager')"
|
||||
:loading="loadingPossibleManagers || loading.manager"
|
||||
class="multiselect-vue"
|
||||
label="displayname"
|
||||
track-by="id"
|
||||
@open="_id => searchUserManager()"
|
||||
@open="searchInitialUserManager"
|
||||
@search-change="searchUserManager"
|
||||
@remove="updateUserManager"
|
||||
@select="updateUserManager">
|
||||
|
|
@ -337,6 +338,7 @@ export default {
|
|||
rand: parseInt(Math.random() * 1000),
|
||||
openedMenu: false,
|
||||
feedbackMessage: '',
|
||||
loadingPossibleManagers: false,
|
||||
possibleManagers: [],
|
||||
currentManager: '',
|
||||
editing: false,
|
||||
|
|
@ -431,11 +433,19 @@ export default {
|
|||
filterManagers(managers) {
|
||||
return managers.filter((manager) => manager.id !== this.user.id)
|
||||
},
|
||||
|
||||
async initManager(userId) {
|
||||
await this.$store.dispatch('getUser', userId).then(response => {
|
||||
this.currentManager = response?.data.ocs.data
|
||||
})
|
||||
},
|
||||
|
||||
async searchInitialUserManager() {
|
||||
this.loadingPossibleManagers = true
|
||||
await this.searchUserManager()
|
||||
this.loadingPossibleManagers = false
|
||||
},
|
||||
|
||||
async searchUserManager(query) {
|
||||
await this.$store.dispatch('searchUsers', { offset: 0, limit: 10, search: query }).then(response => {
|
||||
const users = response?.data ? this.filterManagers(Object.values(response?.data.ocs.data.users)) : []
|
||||
|
|
|
|||
Loading…
Reference in a new issue