func (s *Socket) releaseJsFuncsOnDone(ctx context.Context, wg *sync.WaitGroup) {
	defer s.dom.AlertOnPanic()
	<-ctx.Done() // BLOCKING
	s.releaseWebSocketJsFuncs()
	wg.Done()
}
// releaseJsFuncsOnDone waits for the context to be done before releasing the event listener functions.
releaseJsFuncsOnDone waits for the context to be done before releasing the event listener functions.
// releaseJsFuncsOnDone waits for the context to be done before releasing the event listener functions .
func (s *Socket) releaseJsFuncsOnDone(ctx context.Context, wg *sync.WaitGroup) {
	defer s.dom.AlertOnPanic()
	<-ctx.Done() 
	s.releaseWebSocketJsFuncs()
	wg.Done()
}
func ( s * Socket ) releaseJsFuncsOnDone ( ctx context . Context , wg * sync . WaitGroup ) { defer s . dom . AlertOnPanic ( ) <- ctx . Done ( ) s . releaseWebSocketJsFuncs ( ) wg . Done ( ) }
releaseJsFuncsOnDone waits for the context to be done before releasing the event listener functions.
releaseJsFuncsOnDone waits for the context to be done before releasing the event listener functions .
// BLOCKING