Skip to content

Commit 5847870

Browse files
committed
chore: use state
1 parent 8d1a989 commit 5847870

File tree

5 files changed

+16
-20
lines changed

5 files changed

+16
-20
lines changed

global.d.ts

Lines changed: 0 additions & 9 deletions
This file was deleted.

src/core/server/send.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { defineEventHandler, getQuery } from 'h3'
2+
import { peersState } from '../utils/state'
23

34
export default defineEventHandler(async (event) => {
45
const { m, t } = getQuery(event) as { m: string, t: string }
56

6-
const peers = globalThis.UNPLUGIN_TURBO_CONSOLE_PEERS_SET
7+
const peers = peersState()
78

89
if (peers) {
910
for (const peer of peers) {

src/core/server/ws.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
/* eslint-disable no-console */
22
import { defineWebSocketHandler } from 'h3'
33
import { PLUGIN_NAME } from '../constants'
4-
5-
if (globalThis.UNPLUGIN_TURBO_CONSOLE_PEERS_SET === undefined) {
6-
globalThis.UNPLUGIN_TURBO_CONSOLE_PEERS_SET = new Set<any>()
7-
}
4+
import { peersState } from '../utils/state'
85

96
export default defineWebSocketHandler({
107
open(peer) {
11-
globalThis.UNPLUGIN_TURBO_CONSOLE_PEERS_SET!.add(peer)
8+
const peers = peersState()
9+
peers.add(peer)
10+
11+
peersState(peers)
1212
},
1313
message(_peer, message) {
1414
try {

src/core/utils/state.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import type { Peer } from 'crossws'
12
import type { ExpressionMeta, ExpressionsMap } from '../../types'
23
import { signal } from 'alien-signals'
34
import { v4 as uuidv4 } from 'uuid'
@@ -25,3 +26,6 @@ export function addExpression(relativePath: string, expressionMeta: ExpressionMe
2526
expressionsMapState(newMap)
2627
}
2728
}
29+
30+
export const serverState = signal(false)
31+
export const peersState = signal(new Set<Peer>())

src/index.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { resolveOptions } from './core/options'
1010
import { createServer } from './core/server/index'
1111
import { transform } from './core/transform/index'
1212
import { loadPkg, printInfo } from './core/utils'
13-
import { expressionsMapState } from './core/utils/state'
13+
import { expressionsMapState, serverState } from './core/utils/state'
1414
import { initVirtualModulesGenerator, themeDetectVirtualModule } from './core/utils/virtualModules'
1515

1616
export const unpluginFactory: UnpluginFactory<Options | undefined> = (rawOptions = {}) => {
@@ -24,8 +24,8 @@ export const unpluginFactory: UnpluginFactory<Options | undefined> = (rawOptions
2424

2525
async function startTurboConsoleServer() {
2626
// Avoid start server multiple times
27-
if (!globalThis.UNPLUGIN_TURBO_CONSOLE_LAUNCH_SERVER) {
28-
globalThis.UNPLUGIN_TURBO_CONSOLE_LAUNCH_SERVER = true
27+
if (!serverState()) {
28+
serverState(true)
2929
await detectPort()
3030
printInfo(options)
3131
createServer(options)
@@ -84,8 +84,8 @@ export const unpluginFactory: UnpluginFactory<Options | undefined> = (rawOptions
8484
vite: {
8585
async configureServer(server) {
8686
// Avoid start server multiple times
87-
if (!globalThis.UNPLUGIN_TURBO_CONSOLE_LAUNCH_SERVER) {
88-
globalThis.UNPLUGIN_TURBO_CONSOLE_LAUNCH_SERVER = true
87+
if (!serverState()) {
88+
serverState(true)
8989
await detectPort()
9090
createServer(options)
9191

0 commit comments

Comments
 (0)