From b1bc047023e3b5d3645ef80007d7abc7988bf60f Mon Sep 17 00:00:00 2001 From: Damian Tarnawski Date: Sat, 28 Dec 2024 11:35:12 +0100 Subject: [PATCH 1/2] Better handle solid.lazy Requires https://github.com/solidjs/solid/pull/2389 --- packages/debugger/src/structure/walker.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/packages/debugger/src/structure/walker.ts b/packages/debugger/src/structure/walker.ts index 4df4673c..6c94f029 100644 --- a/packages/debugger/src/structure/walker.ts +++ b/packages/debugger/src/structure/walker.ts @@ -162,6 +162,24 @@ function mapOwner( let first_owned: Solid.Owner | undefined + /* + solid.lazy(MyComponent) hoc + ↳ wrap (callback returned from lazy, called as a component) + ↳ memo + ↳ MyComponent + */ + if (name === 'wrap' && + typeof ((owner as Solid.Component).component as any)?.preload === 'function' && + owner.owned && + owner.owned.length === 1 && + markOwnerType((first_owned = owner.owned[0]!)) === NodeType.Memo && + first_owned.owned && + first_owned.owned.length === 1 && + markOwnerType((first_owned = first_owned.owned[0]!)) === NodeType.Component + ) { + return mapOwner(first_owned, parent) + } + /* Context From c0ac42f5475ab7940cc70a56b3ed5c210994e89b Mon Sep 17 00:00:00 2001 From: Damian Tarnawski Date: Sat, 28 Dec 2024 11:37:02 +0100 Subject: [PATCH 2/2] Create early-turkeys-compete.md --- .changeset/early-turkeys-compete.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/early-turkeys-compete.md diff --git a/.changeset/early-turkeys-compete.md b/.changeset/early-turkeys-compete.md new file mode 100644 index 00000000..f58d6bfd --- /dev/null +++ b/.changeset/early-turkeys-compete.md @@ -0,0 +1,6 @@ +--- +"@solid-devtools/debugger": patch +--- + +Better handle solid.lazy +Requires https://github.com/solidjs/solid/pull/2389