Remove unused webworker module

This commit is contained in:
wvffle 2022-10-29 17:29:15 +00:00 committed by Georg Krause
parent 3ae5adc7ba
commit e7349bf75e
No known key found for this signature in database
GPG Key ID: 2970D504B2183D22
6 changed files with 0 additions and 98 deletions

View File

@ -14,10 +14,6 @@ import { gettext } from '~/init/locale'
import axios from 'axios' import axios from 'axios'
// import useWebWorker from '~/composables/useWebWorker'
// const { post, onMessageReceived } = useWebWorker('queue')
export interface QueueTrackSource { export interface QueueTrackSource {
uuid: string uuid: string
mimetype: string mimetype: string

View File

@ -1,6 +0,0 @@
import { registerMainThread } from '#/communication'
import Worker from '~/worker/webworker?worker'
export const worker = new Worker()
registerMainThread(worker)

View File

@ -51,4 +51,3 @@ Promise.all(modules).finally(() => {
}) })
// TODO (wvffle): Rename filters from useSharedLabels to filters from backend // TODO (wvffle): Rename filters from useSharedLabels to filters from backend
// TODO (wvffle): Migrate EmbedFrame.vue to <script setup lang="ts"> and remove allowJs from tsconfig.json

View File

@ -1,53 +0,0 @@
import type { EventHook, EventHookOn } from '@vueuse/core'
import { createEventHook } from '@vueuse/core'
interface MessageChannel {
hook: EventHook
post: (data: unknown) => void
onMessageReceived: EventHookOn
}
let postMessageFn: typeof postMessage | typeof Worker.prototype.postMessage = () => {
throw new Error('Thread is unregistered')
}
const onMessageFn = (event: MessageEvent) => {
const { channel, data } = JSON.parse(event.data)
messageChannels.get(channel)?.hook.trigger(data)
}
export const registerMainThread = (worker: Worker) => {
worker.onmessage = onMessageFn
postMessageFn = (message: string) => {
worker.postMessage(message)
}
}
export const registerWorkerThread = () => {
onmessage = onMessageFn
postMessageFn = (message: string) => {
postMessage(message)
}
}
const messageChannels = new Map<string, MessageChannel>()
export const createMessageChannel = (channel: string): MessageChannel => {
if (messageChannels.has(channel)) {
const messageChannel = messageChannels.get(channel)
if (messageChannel) return messageChannel
}
const hook = createEventHook()
const messageChannel: MessageChannel = {
hook,
onMessageReceived: hook.on,
post: (data: unknown) => postMessageFn(JSON.stringify({
channel,
data
}))
}
messageChannels.set(channel, messageChannel)
return messageChannel
}

View File

@ -1,30 +0,0 @@
import type { Track } from '~/types'
import { createMessageChannel } from '#/communication'
const { onMessageReceived, post } = createMessageChannel('queue')
const queue: Track[] = []
onMessageReceived((data) => {
switch (data.type) {
case 'queue':
queue.length = 0
queue.push(...data.tracks)
break
case 'enqueue':
queue.push(...data.tracks)
post({ type: 'queue', tracks: queue })
break
case 'shuffle':
// TODO: Shuffle queue
post({ type: 'queue', tracks: [] })
break
case 'unshuffle':
post({ type: 'queue', tracks: queue })
break
}
})

View File

@ -1,4 +0,0 @@
import { registerWorkerThread } from '#/communication'
registerWorkerThread()
import.meta.glob('./modules/*.ts', { eager: true })