Skip to content

Commit 2afaea7

Browse files
committed
(demo) migrate to firebase 9
1 parent 44044b3 commit 2afaea7

File tree

9 files changed

+561
-257
lines changed

9 files changed

+561
-257
lines changed

demo/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"latest": "npm i https://github.com/antoine92190/vue-advanced-chat/tarball/master"
1616
},
1717
"dependencies": {
18-
"firebase": "^8.2.2",
18+
"firebase": "^9.4.0",
1919
"vue": "^2.6.14",
2020
"vue-advanced-chat": "latest"
2121
},

demo/src/App.vue

Lines changed: 35 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,12 @@
55
:class="{ 'app-mobile': isDevice, 'app-mobile-dark': theme === 'dark' }"
66
>
77
<!-- <div>
8-
<button @click="resetData">Clear Data</button>
9-
<button @click="addData" :disabled="updatingData">Add Data</button>
8+
<button @click="resetData">
9+
Clear Data
10+
</button>
11+
<button :disabled="updatingData" @click="addData">
12+
Add Data
13+
</button>
1014
</div> -->
1115
<span
1216
v-if="showOptions"
@@ -51,7 +55,9 @@
5155
</template>
5256

5357
<script>
54-
import { roomsRef, usersRef } from '@/firestore'
58+
import * as firestoreService from '@/database/firestore'
59+
import * as storageService from '@/database/storage'
60+
5561
import ChatContainer from './ChatContainer'
5662
5763
export default {
@@ -110,50 +116,58 @@ export default {
110116
111117
methods: {
112118
resetData() {
113-
roomsRef.get().then(val => {
114-
val.forEach(async val => {
115-
const ref = roomsRef.doc(val.id).collection('messages')
116-
117-
await ref.get().then(res => {
118-
if (res.empty) return
119-
res.docs.map(doc => ref.doc(doc.id).delete())
119+
firestoreService.getAllRooms().then(rooms => {
120+
rooms.forEach(async room => {
121+
await firestoreService.getMessages(room.id).then(messages => {
122+
messages.forEach(message => {
123+
firestoreService.deleteMessage(room.id, message.id)
124+
if (message.data().files) {
125+
message.data().files.forEach(file => {
126+
storageService.deleteFile(
127+
this.currentUserId,
128+
message.id,
129+
file
130+
)
131+
})
132+
}
133+
})
120134
})
121135
122-
roomsRef.doc(val.id).delete()
136+
firestoreService.deleteRoom(room.id)
123137
})
124138
})
125139
126-
usersRef.get().then(val => {
127-
val.forEach(val => {
128-
usersRef.doc(val.id).delete()
140+
firestoreService.getAllUsers().then(users => {
141+
users.forEach(user => {
142+
firestoreService.deleteUser(user.id)
129143
})
130144
})
131145
},
132146
async addData() {
133147
this.updatingData = true
134148
135149
const user1 = this.users[0]
136-
await usersRef.doc(user1._id).set(user1)
150+
await firestoreService.addIdentifiedUser(user1._id, user1)
137151
138152
const user2 = this.users[1]
139-
await usersRef.doc(user2._id).set(user2)
153+
await firestoreService.addIdentifiedUser(user2._id, user2)
140154
141155
const user3 = this.users[2]
142-
await usersRef.doc(user3._id).set(user3)
156+
await firestoreService.addIdentifiedUser(user3._id, user3)
143157
144-
await roomsRef.add({
158+
await firestoreService.addRoom({
145159
users: [user1._id, user2._id],
146160
lastUpdated: new Date()
147161
})
148-
await roomsRef.add({
162+
await firestoreService.addRoom({
149163
users: [user1._id, user3._id],
150164
lastUpdated: new Date()
151165
})
152-
await roomsRef.add({
166+
await firestoreService.addRoom({
153167
users: [user2._id, user3._id],
154168
lastUpdated: new Date()
155169
})
156-
await roomsRef.add({
170+
await firestoreService.addRoom({
157171
users: [user1._id, user2._id, user3._id],
158172
lastUpdated: new Date()
159173
})

0 commit comments

Comments
 (0)