UNPKG

@tanstack/angular-table-devtools

Version:

Angular devtools for TanStack Table.

24 lines (22 loc) 949 B
import { DestroyRef, Injector, assertInInjectionContext, effect, inject, untracked } from "@angular/core"; import { createTableDevtoolsRegistrationManager } from "@tanstack/table-devtools"; //#region src/injectTanStackTableDevtools.ts function injectTanStackTableDevtools(options) { const enabled = () => options().enabled?.() ?? true; let injector = options().injector; if (!injector) { assertInInjectionContext(injectTanStackTableDevtools); injector = inject(Injector); } const destroyRef = injector.get(DestroyRef); const registration = createTableDevtoolsRegistrationManager(); destroyRef.onDestroy(() => registration.dispose()); effect(() => { const { table } = options(); const enabledValue = enabled(); untracked(() => registration.update(table, enabledValue)); }, { injector }); } function injectTanStackTableDevtoolsNoOp(_options) {} //#endregion export { injectTanStackTableDevtools, injectTanStackTableDevtoolsNoOp };