diff options
author | marco <marcoambrosini@pm.me> | 2022-04-08 15:54:18 +0300 |
---|---|---|
committer | Joas Schilling <coding@schilljs.com> | 2022-04-13 17:14:20 +0300 |
commit | f02889a6cfb1fa6bf910a42d52dd3ed6a70bad66 (patch) | |
tree | 4b0892f9099ac020fddeebc3b3082eef3b5deb46 /src/store/conversationSharedItemsStore.js | |
parent | 51da02f828ead24a56401ee0963d446192d887b7 (diff) |
Get shared items overview upon opening the tab
Signed-off-by: marco <marcoambrosini@pm.me>
Diffstat (limited to 'src/store/conversationSharedItemsStore.js')
-rw-r--r-- | src/store/conversationSharedItemsStore.js | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/src/store/conversationSharedItemsStore.js b/src/store/conversationSharedItemsStore.js index 612b70c21..88db08531 100644 --- a/src/store/conversationSharedItemsStore.js +++ b/src/store/conversationSharedItemsStore.js @@ -38,17 +38,35 @@ const state = () => ({ }) const getters = { - getterSharedItems: (state, token) => { - return state[token] + sharedItems: state => token => { + const sharedItems = {} + if (!state[token]) { + return {} + } + for (const type of Object.keys(state[token])) { + if (Object.keys(state[token][type]).length !== 0) { + sharedItems[type] = state[token][type] + } + } + return sharedItems }, } export const mutations = { - addSharedItem: (state, { token, type, response }) => { + addSharedItemsOverview: (state, { token, data }) => { if (!state[token]) { Vue.set(state, token, {}) } - Vue.set(state[token], type, response) + for (const type of Object.keys(data)) { + if (!state[token][type]) { + Vue.set(state[token], type, {}) + for (const message of data[type]) { + if (!state[token][type]?.[message.id]) { + Vue.set(state[token][type], message.id, message) + } + } + } + } }, } @@ -69,6 +87,10 @@ const actions = { async getSharedItemsOverview({ commit }, { token }) { try { const response = await getSharedItemsOverview(token, 10) + commit('addSharedItemsOverview', { + token, + data: response.data.ocs.data, + }) } catch (error) { console.debug(error) } |