MCPcopy Index your code
hub / github.com/TanStack/devtools / on

Method on

packages/event-bus-client/src/plugin.ts:237–273  ·  view source on GitHub ↗
(
    eventSuffix: TEvent,
    cb: (event: TanStackDevtoolsEvent<TEvent, TEventMap[TEvent]>) => void,
    options?: {
      withEventTarget?: boolean
    },
  )

Source from the content-addressed store, hash-verified

235 }
236
237 on<TEvent extends keyof TEventMap & string>(
238 eventSuffix: TEvent,
239 cb: (event: TanStackDevtoolsEvent<TEvent, TEventMap[TEvent]>) => void,
240 options?: {
241 withEventTarget?: boolean
242 },
243 ) {
244 const withEventTarget = options?.withEventTarget ?? false
245 const eventName = `${this.#pluginId}:${eventSuffix}` as const
246 if (withEventTarget) {
247 if (!this.#internalEventTarget) {
248 this.#internalEventTarget = new EventTarget()
249 }
250 this.#internalEventTarget.addEventListener(eventName, (e) => {
251 cb((e as CustomEvent).detail)
252 })
253 }
254 if (!this.#enabled) {
255 this.debugLog(
256 'Event bus client is disabled, not registering event',
257 eventName,
258 )
259 return () => {}
260 }
261 const handler = (e: Event) => {
262 this.debugLog('Received event from bus', (e as CustomEvent).detail)
263 cb((e as CustomEvent).detail)
264 }
265 this.#eventTarget().addEventListener(eventName, handler)
266 this.debugLog('Registered event to bus', eventName)
267 return () => {
268 if (withEventTarget) {
269 this.#internalEventTarget?.removeEventListener(eventName, handler)
270 }
271 this.#eventTarget().removeEventListener(eventName, handler)
272 }
273 }
274
275 onAll(cb: (event: TanStackDevtoolsEvent<string, any>) => void) {
276 if (!this.#enabled) {

Callers 15

configureServerFunction · 0.45
DevToolsFunction · 0.45
requestPipWindowFunction · 0.45
PluginMarketplaceFunction · 0.45
createSSEServerMethod · 0.45
handleNewConnectionMethod · 0.45
startMethod · 0.45
index.test.tsFile · 0.45
noop.test.tsFile · 0.45
CustomDevtoolPanelFunction · 0.45

Calls 1

debugLogMethod · 0.95

Tested by

no test coverage detected