aboutsummaryrefslogtreecommitdiff
path: root/src/modules/api.js
diff options
context:
space:
mode:
authorHenry Jameson <me@hjkos.com>2019-12-08 19:18:38 +0200
committerHenry Jameson <me@hjkos.com>2019-12-08 19:18:38 +0200
commit505fb260610e557e27bbc5d27515337ea07e0e3e (patch)
tree3d912a41270e5c3dc946812404aff5b90bda4ab6 /src/modules/api.js
parent1b1620a7551293234d000022886c53e4520517a1 (diff)
better wrapper for websocket
Diffstat (limited to 'src/modules/api.js')
-rw-r--r--src/modules/api.js43
1 files changed, 21 insertions, 22 deletions
diff --git a/src/modules/api.js b/src/modules/api.js
index 185c9db6..593f8498 100644
--- a/src/modules/api.js
+++ b/src/modules/api.js
@@ -34,36 +34,35 @@ const api = {
// MastoAPI 'User' sockets
startMastoUserSocket (store) {
const { state, dispatch } = store
- state.mastoUserSocket = state.backendInteractor
- .startUserSocket({
- store,
- onMessage: (message) => {
- if (!message) return // pings
- if (message.event === 'notification') {
- dispatch('addNewNotifications', {
- notifications: [message.notification],
- older: false
- })
- } else if (message.event === 'update') {
- dispatch('addNewStatuses', {
- statuses: [message.status],
- userId: false,
- showImmediately: false,
- timeline: 'friends'
- })
- }
+ state.mastoUserSocket = state.backendInteractor.startUserSocket({ store })
+ state.mastoUserSocket.addEventListener(
+ 'message',
+ ({ detail: message }) => {
+ if (!message) return // pings
+ if (message.event === 'notification') {
+ dispatch('addNewNotifications', {
+ notifications: [message.notification],
+ older: false
+ })
+ } else if (message.event === 'update') {
+ dispatch('addNewStatuses', {
+ statuses: [message.status],
+ userId: false,
+ showImmediately: false,
+ timeline: 'friends'
+ })
}
- })
- state.mastoUserSocket.addEventListener('error', error => {
+ }
+ )
+ state.mastoUserSocket.addEventListener('error', ({ detail: error }) => {
console.error('Error in MastoAPI websocket:', error)
})
- state.mastoUserSocket.addEventListener('close', closeEvent => {
+ state.mastoUserSocket.addEventListener('close', ({ detail: closeEvent }) => {
const ignoreCodes = new Set([
1000, // Normal (intended) closure
1001 // Going away
])
const { code } = closeEvent
- console.debug('Socket closure event:', closeEvent)
if (ignoreCodes.has(code)) {
console.debug(`Not restarting socket becasue of closure code ${code} is in ignore list`)
} else {