Skip to content

Commit 74ea248

Browse files
committed
Dev tooling cleanup: re-export DEV from @solidjs/signals, consolidate devComponent metadata, update deps
- Remove registerGraph/sourceMap (obsolete in 2.0 signals architecture) - Consolidate devComponent metadata into single _component object - Re-export DEV from @solidjs/signals with hooks + graph traversal helpers - Add dev.spec.ts integration tests for hooks and helpers - Delete archived dev tests - Bump @solidjs/signals to 0.13.11, dom-expressions to next.18 Made-with: Cursor
1 parent 6a87fb2 commit 74ea248

11 files changed

Lines changed: 300 additions & 237 deletions

File tree

.changeset/dev-tools-cleanup.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"solid-js": patch
3+
---
4+
5+
Dev tooling 2.0 surface: remove registerGraph/sourceMap, consolidate devComponent metadata into single _component object, wire DEV.hooks to @solidjs/signals hook registration (onOwner, onGraph, onUpdate, onStoreNodeUpdate), expose graph traversal helpers (getChildren, getSignals, getParent, getSources, getObservers) through DEV, export isDisposed

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,14 @@
3434
"@rollup/plugin-replace": "^5.0.2",
3535
"@types/node": "^22.7.5",
3636
"@vitest/coverage-v8": "^2.1.2",
37-
"babel-plugin-jsx-dom-expressions": "0.41.0-next.17",
37+
"babel-plugin-jsx-dom-expressions": "0.41.0-next.18",
3838
"babel-plugin-transform-rename-import": "^2.3.0",
3939
"coveralls": "^3.1.1",
4040
"csstype": "^3.1.0",
41-
"dom-expressions": "0.41.0-next.17",
42-
"hyper-dom-expressions": "0.41.0-next.17",
41+
"dom-expressions": "0.41.0-next.18",
42+
"hyper-dom-expressions": "0.41.0-next.18",
4343
"jsdom": "^25.0.1",
44-
"lit-dom-expressions": "0.41.0-next.17",
44+
"lit-dom-expressions": "0.41.0-next.18",
4545
"ncp": "^2.0.0",
4646
"npm-run-all": "^4.1.5",
4747
"prettier": "^3.6.2",

packages/solid-web/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,11 +90,11 @@
9090
"seroval-plugins": "^1.1.0"
9191
},
9292
"peerDependencies": {
93-
"@solidjs/signals": "^0.13.9",
93+
"@solidjs/signals": "^0.13.11",
9494
"solid-js": "^2.0.0-beta.5"
9595
},
9696
"devDependencies": {
97-
"@solidjs/signals": "^0.13.9",
97+
"@solidjs/signals": "^0.13.11",
9898
"solid-js": "workspace:*"
9999
}
100100
}

packages/solid/archived_tests/dev.spec.ts

Lines changed: 0 additions & 185 deletions
This file was deleted.

packages/solid/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@
9191
"performance"
9292
],
9393
"dependencies": {
94-
"@solidjs/signals": "^0.13.9",
94+
"@solidjs/signals": "^0.13.11",
9595
"csstype": "^3.1.0",
9696
"seroval": "~1.5.0",
9797
"seroval-plugins": "~1.5.0"

packages/solid/src/client/core.ts

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,12 @@ import {
22
createMemo,
33
createRoot,
44
getOwner,
5-
runWithOwner,
65
untrack,
76
setContext,
87
getContext,
98
flatten
109
} from "@solidjs/signals";
11-
import type { Accessor, Owner, EffectOptions } from "@solidjs/signals";
10+
import type { Accessor, EffectOptions } from "@solidjs/signals";
1211
import type { JSX } from "../jsx.js";
1312
import { FlowComponent, FlowProps } from "./component.js";
1413

@@ -112,25 +111,14 @@ export function devComponent<P, V>(Comp: (props: P) => V, props: P): V {
112111
return createRoot(
113112
() => {
114113
const owner: any = getOwner();
115-
owner._props = props;
116-
owner._name = Comp.name;
117-
owner._component = Comp;
114+
owner._component = {
115+
fn: Comp,
116+
props,
117+
name: Comp.name
118+
};
118119
Object.assign(Comp, { [$DEVCOMP]: true });
119120
return untrack(() => Comp(props), IS_DEV && `<${Comp.name || "Anonymous"}>`);
120121
},
121122
{ transparent: true }
122123
);
123124
}
124-
125-
interface SourceMapValue {
126-
value: unknown;
127-
name?: string;
128-
graph?: Owner;
129-
}
130-
export function registerGraph(value: SourceMapValue): void {
131-
const owner: any = getOwner();
132-
if (!owner) return;
133-
if (owner.sourceMap) owner.sourceMap.push(value);
134-
else owner.sourceMap = [value];
135-
value.graph = owner;
136-
}

packages/solid/src/index.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ export {
1414
getNextChildId,
1515
getObserver,
1616
getOwner,
17+
isDisposed,
1718
isEqual,
1819
isRefreshing,
1920
isPending,
@@ -103,9 +104,9 @@ type JSXElement = JSX.Element;
103104
export type { JSXElement, JSX };
104105

105106
// dev
106-
import { registerGraph, IS_DEV } from "./client/core.js";
107-
const DevHooks = {}; // until implemented
108-
export const DEV = IS_DEV ? ({ hooks: DevHooks, registerGraph } as const) : undefined;
107+
import { IS_DEV } from "./client/core.js";
108+
import { DEV as _DEV, type Dev } from "@solidjs/signals";
109+
export const DEV: Dev | undefined = IS_DEV ? _DEV : undefined;
109110

110111
// handle multiple instance check
111112
declare global {

packages/solid/src/server/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ export {
2424
getNextChildId,
2525
getObserver,
2626
getOwner,
27+
isDisposed,
2728
isEqual,
2829
isRefreshing,
2930
isPending,

packages/solid/src/server/signals.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ export {
88
createOwner,
99
runWithOwner,
1010
getOwner,
11+
isDisposed,
1112
onCleanup,
1213
getNextChildId,
1314
createContext,

0 commit comments

Comments
 (0)