Skip to content

Commit 8b5e9fd

Browse files
authored
Merge pull request #1189 from bayasdev/feature/cleanup-ssr-registry-listeners
fix(web): enhance server side cleanup
2 parents 31b86fa + 7b9e48d commit 8b5e9fd

4 files changed

Lines changed: 15 additions & 0 deletions

File tree

packages/unistyles/src/server/resetServerUnistyles.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,6 @@ export const resetServerUnistyles = () => {
77
}
88

99
unistyles.services.registry.reset()
10+
unistyles.services.shadowRegistry.reset()
11+
unistyles.services.listener.reset()
1012
}

packages/unistyles/src/web/listener.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,12 @@ export class UnistylesListener {
4848
}
4949
}
5050

51+
reset = () => {
52+
this.listeners.forEach((listeners) => listeners.clear())
53+
this.stylesheetListeners.forEach((listeners) => listeners.clear())
54+
this.changeListeners.clear()
55+
}
56+
5157
initListeners = () => {
5258
if (this.isInitialized) {
5359
return

packages/unistyles/src/web/registry.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,9 @@ export class UnistylesRegistry {
126126
}
127127

128128
reset = () => {
129+
this.disposeListenersMap.forEach((dispose) => dispose())
129130
this.css.reset()
131+
this.stylesheets.clear()
130132
this.stylesCache.clear()
131133
this.dependenciesMap.clear()
132134
this.disposeListenersMap.clear()

packages/unistyles/src/web/shadowRegistry.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,5 +121,10 @@ export class UnistylesShadowRegistry {
121121
})
122122
}
123123

124+
reset = () => {
125+
this.disposeMap.forEach((dispose) => dispose())
126+
this.disposeMap.clear()
127+
}
128+
124129
flush = () => {}
125130
}

0 commit comments

Comments
 (0)