( CoreClass: ClassType, )
| 7 | export interface DevtoolsPanelProps extends TanStackDevtoolsPluginProps {} |
| 8 | |
| 9 | export function createSolidPanel<TComponentProps extends DevtoolsPanelProps>( |
| 10 | CoreClass: ClassType, |
| 11 | ) { |
| 12 | function Panel(props: TComponentProps) { |
| 13 | let devToolRef: HTMLDivElement | undefined |
| 14 | const [devtools] = createSignal(new CoreClass()) |
| 15 | onMount(() => { |
| 16 | if (devToolRef) { |
| 17 | devtools().mount(devToolRef, props) |
| 18 | } |
| 19 | onCleanup(() => { |
| 20 | devtools().unmount() |
| 21 | }) |
| 22 | }) |
| 23 | |
| 24 | return <div style={{ height: '100%' }} ref={devToolRef} /> |
| 25 | } |
| 26 | |
| 27 | function NoOpPanel(_props: TComponentProps) { |
| 28 | return <></> |
| 29 | } |
| 30 | |
| 31 | return [Panel, NoOpPanel] as const |
| 32 | } |
no outgoing calls
no test coverage detected