Refactoring
This commit is contained in:
		
							parent
							
								
									ab166959a4
								
							
						
					
					
						commit
						e2a9a0ff3d
					
				
					 4 changed files with 23 additions and 66 deletions
				
			
		|  | @ -15,7 +15,8 @@ | |||
| 
 | ||||
| <script lang="ts"> | ||||
| import { defineAsyncComponent, defineComponent } from 'vue'; | ||||
| import { popups, uploads, pendingApiRequestsCount } from '@/os'; | ||||
| import { stream, sound, popup, popups, uploads, pendingApiRequestsCount } from '@/os'; | ||||
| import { store } from '@/store'; | ||||
| 
 | ||||
| export default defineComponent({ | ||||
| 	components: { | ||||
|  | @ -24,6 +25,27 @@ export default defineComponent({ | |||
| 	}, | ||||
| 
 | ||||
| 	setup() { | ||||
| 		const onNotification = notification => { | ||||
| 			if (store.state.i.mutingNotificationTypes.includes(notification.type)) return; | ||||
| 
 | ||||
| 			if (document.visibilityState === 'visible') { | ||||
| 				stream.send('readNotification', { | ||||
| 					id: notification.id | ||||
| 				}); | ||||
| 
 | ||||
| 				popup(import('@/components/toast.vue'), { | ||||
| 					notification | ||||
| 				}, {}, 'closed'); | ||||
| 			} | ||||
| 
 | ||||
| 			sound('notification'); | ||||
| 		}; | ||||
| 
 | ||||
| 		if (store.getters.isSignedIn) { | ||||
| 			const connection = stream.useSharedConnection('main', 'UI'); | ||||
| 			connection.on('notification', onNotification); | ||||
| 		} | ||||
| 
 | ||||
| 		return { | ||||
| 			uploads, | ||||
| 			popups, | ||||
|  |  | |||
|  | @ -63,7 +63,6 @@ export default defineComponent({ | |||
| 			host: host, | ||||
| 			pageInfo: null, | ||||
| 			pageKey: 0, | ||||
| 			connection: null, | ||||
| 			menuDef: sidebarDef, | ||||
| 			wallpaper: localStorage.getItem('wallpaper') != null, | ||||
| 			faPlus, faPencilAlt, faChevronLeft, faBars, faCircle | ||||
|  | @ -107,11 +106,6 @@ export default defineComponent({ | |||
| 		document.documentElement.style.overflowY = 'hidden'; | ||||
| 		document.documentElement.style.scrollBehavior = 'auto'; | ||||
| 		window.addEventListener('wheel', this.onWheel); | ||||
| 
 | ||||
| 		if (this.$store.getters.isSignedIn) { | ||||
| 			this.connection = os.stream.useSharedConnection('main', 'UI'); | ||||
| 			this.connection.on('notification', this.onNotification); | ||||
| 		} | ||||
| 	}, | ||||
| 
 | ||||
| 	mounted() { | ||||
|  | @ -143,23 +137,6 @@ export default defineComponent({ | |||
| 			os.post(); | ||||
| 		}, | ||||
| 
 | ||||
| 		onNotification(notification) { | ||||
| 			if (this.$store.state.i.mutingNotificationTypes.includes(notification.type)) { | ||||
| 				return; | ||||
| 			} | ||||
| 
 | ||||
| 			if (document.visibilityState === 'visible') { | ||||
| 				os.stream.send('readNotification', { | ||||
| 					id: notification.id | ||||
| 				}); | ||||
| 
 | ||||
| 				os.popup(import('@/components/toast.vue'), { | ||||
| 					notification | ||||
| 				}, {}, 'closed'); | ||||
| 			} | ||||
| 			os.sound('notification'); | ||||
| 		}, | ||||
| 
 | ||||
| 		async addColumn(ev) { | ||||
| 			const columns = [ | ||||
| 				'widgets', | ||||
|  |  | |||
|  | @ -91,7 +91,6 @@ export default defineComponent({ | |||
| 			host: host, | ||||
| 			pageKey: 0, | ||||
| 			pageInfo: null, | ||||
| 			connection: null, | ||||
| 			isDesktop: window.innerWidth >= DESKTOP_THRESHOLD, | ||||
| 			menuDef: sidebarDef, | ||||
| 			navHidden: false, | ||||
|  | @ -141,9 +140,6 @@ export default defineComponent({ | |||
| 	created() { | ||||
| 		document.documentElement.style.overflowY = 'scroll'; | ||||
| 
 | ||||
| 		this.connection = os.stream.useSharedConnection('main', 'UI'); | ||||
| 		this.connection.on('notification', this.onNotification); | ||||
| 
 | ||||
| 		if (this.$store.state.deviceUser.widgets.length === 0) { | ||||
| 			this.$store.commit('deviceUser/setWidgets', [{ | ||||
| 				name: 'calendar', | ||||
|  | @ -234,23 +230,6 @@ export default defineComponent({ | |||
| 				} | ||||
| 			}], e); | ||||
| 		}, | ||||
| 
 | ||||
| 		onNotification(notification) { | ||||
| 			if (this.$store.state.i.mutingNotificationTypes.includes(notification.type)) { | ||||
| 				return; | ||||
| 			} | ||||
| 			if (document.visibilityState === 'visible') { | ||||
| 				os.stream.send('readNotification', { | ||||
| 					id: notification.id | ||||
| 				}); | ||||
| 
 | ||||
| 				os.popup(import('@/components/toast.vue'), { | ||||
| 					notification | ||||
| 				}, {}, 'closed'); | ||||
| 			} | ||||
| 
 | ||||
| 			os.sound('notification'); | ||||
| 		}, | ||||
| 	} | ||||
| }); | ||||
| </script> | ||||
|  |  | |||
|  | @ -42,7 +42,6 @@ export default defineComponent({ | |||
| 			host: host, | ||||
| 			pageKey: 0, | ||||
| 			pageInfo: null, | ||||
| 			connection: null, | ||||
| 			faLayerGroup, faBars, faBell, faHome, faCircle, | ||||
| 		}; | ||||
| 	}, | ||||
|  | @ -70,9 +69,6 @@ export default defineComponent({ | |||
| 
 | ||||
| 	created() { | ||||
| 		document.documentElement.style.overflowY = 'scroll'; | ||||
| 
 | ||||
| 		this.connection = os.stream.useSharedConnection('main', 'UI'); | ||||
| 		this.connection.on('notification', this.onNotification); | ||||
| 	}, | ||||
| 
 | ||||
| 	methods: { | ||||
|  | @ -94,23 +90,6 @@ export default defineComponent({ | |||
| 		onTransition() { | ||||
| 			if (window._scroll) window._scroll(); | ||||
| 		}, | ||||
| 
 | ||||
| 		onNotification(notification) { | ||||
| 			if (this.$store.state.i.mutingNotificationTypes.includes(notification.type)) { | ||||
| 				return; | ||||
| 			} | ||||
| 			if (document.visibilityState === 'visible') { | ||||
| 				os.stream.send('readNotification', { | ||||
| 					id: notification.id | ||||
| 				}); | ||||
| 
 | ||||
| 				os.popup(import('@/components/toast.vue'), { | ||||
| 					notification | ||||
| 				}, {}, 'closed'); | ||||
| 			} | ||||
| 
 | ||||
| 			os.sound('notification'); | ||||
| 		}, | ||||
| 	} | ||||
| }); | ||||
| </script> | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue