]> git.codecow.com Git - nano25519.git/commitdiff
Consolidate labeled blocks used by esbuild.
authorChris Duncan <chris@zoso.dev>
Fri, 19 Jun 2026 06:25:30 +0000 (23:25 -0700)
committerChris Duncan <chris@zoso.dev>
Fri, 19 Jun 2026 06:25:30 +0000 (23:25 -0700)
src/lib/nano25519.ts

index 9df7e5b590d55c4e909442a2b3baf004238e2f27..4043e7671e9dee7ca3a917fb0b4ecf30e06bb7ba 100644 (file)
@@ -297,14 +297,18 @@ function isBytes (a: unknown): a is Uint8Array<ArrayBuffer> {
 // Create worker module
 function init (): void {
        try {
-               BROWSER: url = URL.createObjectURL(new Blob([nano25519_worker], { type: 'text/javascript' }))
-               BROWSER: worker = new Worker(url, { type: 'module' })
-               NODE: worker = new NodeWorker(nano25519_worker, {
-                       eval: true,
-                       stderr: false,
-                       stdout: false
-               })
-               NODE: url = worker.threadId.toString()
+               BROWSER: {
+                       url = URL.createObjectURL(new Blob([nano25519_worker], { type: 'text/javascript' }))
+                       worker = new Worker(url, { type: 'module' })
+               }
+               NODE: {
+                       worker = new NodeWorker(nano25519_worker, {
+                               eval: true,
+                               stderr: false,
+                               stdout: false
+                       })
+                       url = worker.threadId.toString()
+               }
                console.log(`nano25519 initialized.`)
                isWorkerReady = true
        } catch (err: any) {
@@ -339,18 +343,20 @@ async function start (): Promise<void> {
                                        reject()
                                }
                        }
-                       //@ts-expect-error
-                       BROWSER: worker.onerror = err => reject(err.message)
-                       //@ts-expect-error
-                       BROWSER: worker.onmessage = onstarted
-                       //@ts-expect-error
-                       NODE: worker.on('error', err => reject(err.message))
-                       //@ts-expect-error
-                       NODE: worker.on('message', onstarted)
                        console.log(`starting worker`)
                        const id = crypto.randomUUID()
-                       BROWSER: worker.postMessage({ url, id, action: 'start' })
-                       NODE: worker.postMessage({ data: { url, id, action: 'start' } })
+                       BROWSER: {
+                               worker = worker as Worker
+                               worker.onerror = reject
+                               worker.onmessage = onstarted
+                               worker.postMessage({ url, id, action: 'start' })
+                       }
+                       NODE: {
+                               worker = worker as unknown as NodeWorker
+                               worker.on('error', reject)
+                               worker.on('message', onstarted)
+                               worker.postMessage({ data: { url, id, action: 'start' } })
+                       }
                })
        }
 }
@@ -375,19 +381,21 @@ async function dispatch (data: { [key: string]: string | ArrayBuffer | Uint8Arra
                        }
                        resolve(result)
                }
-               //@ts-expect-error
-               BROWSER: worker.onerror = reject
-               //@ts-expect-error
-               BROWSER: worker.onmessage = onresult
-               //@ts-expect-error
-               NODE: worker.on('error', reject)
-               //@ts-expect-error
-               NODE: worker.on('message', onresult)
                console.log(`sending data to worker: `, data)
                data.url = url
                data.id = crypto.randomUUID()
-               BROWSER: worker.postMessage(data, transfer)
-               NODE: worker.postMessage({ data }, transfer)
+               BROWSER: {
+                       worker = worker as Worker
+                       worker.onerror = reject
+                       worker.onmessage = onresult
+                       worker.postMessage(data, transfer)
+               }
+               NODE: {
+                       worker = worker as unknown as NodeWorker
+                       worker.on('error', reject)
+                       worker.on('message', onresult)
+                       worker.postMessage({ data }, transfer)
+               }
        })
 }
 
@@ -406,18 +414,20 @@ async function stop (): Promise<void> {
                                reject(result)
                        }
                }
-               //@ts-expect-error
-               BROWSER: worker.onerror = reject
-               //@ts-expect-error
-               BROWSER: worker.onmessage = onstop
-               //@ts-expect-error
-               NODE: worker.on('error', reject)
-               //@ts-expect-error
-               NODE: worker.on('message', onstop)
                console.log(`stopping worker`)
                const id = crypto.randomUUID()
-               BROWSER: worker.postMessage({ url, id, action: 'stop' })
-               NODE: worker.postMessage({ data: { url, id, action: 'stop' } })
+               BROWSER: {
+                       worker = worker as Worker
+                       worker.onerror = reject
+                       worker.onmessage = onstop
+                       worker.postMessage({ url, id, action: 'stop' })
+               }
+               NODE: {
+                       worker = worker as unknown as NodeWorker
+                       worker.on('error', reject)
+                       worker.on('message', onstop)
+                       worker.postMessage({ data: { url, id, action: 'stop' } })
+               }
        })
 }