@praxisjs/jsx 0.5.2 → 0.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/dist/__tests__/jsx-runtime.test.js +9 -0
- package/dist/__tests__/jsx-runtime.test.js.map +1 -1
- package/dist/jsx-runtime.d.ts.map +1 -1
- package/dist/jsx-runtime.js +19 -7
- package/dist/jsx-runtime.js.map +1 -1
- package/package.json +3 -3
- package/src/__tests__/jsx-runtime.test.ts +11 -0
- package/src/jsx-runtime.ts +18 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,28 @@
|
|
|
1
1
|
# @praxisjs/jsx
|
|
2
2
|
|
|
3
|
+
## 0.5.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- dc031d0: Fix fragment primitive children and improve runtime cleanup.
|
|
8
|
+
|
|
9
|
+
`@praxisjs/jsx` now preserves primitive fragment children like strings and `0` by converting them to text nodes.
|
|
10
|
+
|
|
11
|
+
`@praxisjs/runtime` now skips the queued `onMount` and `ref(instance)` callbacks if a component is disposed before the mount microtask runs.
|
|
12
|
+
|
|
13
|
+
Reactive child scopes no longer register a new parent cleanup on every update, and portal cleanup now tolerates anchors that were removed externally before disposal.
|
|
14
|
+
|
|
15
|
+
- Updated dependencies [dc031d0]
|
|
16
|
+
- @praxisjs/runtime@0.4.1
|
|
17
|
+
|
|
18
|
+
## 0.5.3
|
|
19
|
+
|
|
20
|
+
### Patch Changes
|
|
21
|
+
|
|
22
|
+
- Updated dependencies [80442e0]
|
|
23
|
+
- @praxisjs/shared@0.3.0
|
|
24
|
+
- @praxisjs/runtime@0.4.0
|
|
25
|
+
|
|
3
26
|
## 0.5.2
|
|
4
27
|
|
|
5
28
|
### Patch Changes
|
|
@@ -32,6 +32,15 @@ describe("Fragment", () => {
|
|
|
32
32
|
expect(result[0]).toBe(a);
|
|
33
33
|
expect(result[1]).toBe(b);
|
|
34
34
|
});
|
|
35
|
+
it("preserves primitive children, including 0, for runtime mounting", () => {
|
|
36
|
+
const node = document.createElement("strong");
|
|
37
|
+
const result = withScope(() => jsx(Fragment, { children: ["count: ", 0, false, null, [node]] }));
|
|
38
|
+
const container = document.createElement("div");
|
|
39
|
+
for (const child of result)
|
|
40
|
+
container.appendChild(child);
|
|
41
|
+
expect(container.textContent).toBe("count: 0");
|
|
42
|
+
expect(container.querySelector("strong")).toBe(node);
|
|
43
|
+
});
|
|
35
44
|
it("returns [] when children is a non-Node non-Array value (e.g. plain object)", () => {
|
|
36
45
|
const result = withScope(() => jsx(Fragment, { children: { foo: "bar" } }));
|
|
37
46
|
expect(result).toEqual([]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsx-runtime.test.js","sourceRoot":"","sources":["../../src/__tests__/jsx-runtime.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"jsx-runtime.test.js","sourceRoot":"","sources":["../../src/__tests__/jsx-runtime.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsx-runtime.d.ts","sourceRoot":"","sources":["../src/jsx-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACd,MAAM,aAAa,CAAC;AAErB,eAAO,MAAM,QAAQ,eAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"jsx-runtime.d.ts","sourceRoot":"","sources":["../src/jsx-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/jsx-runtime.js
CHANGED
|
@@ -1,17 +1,29 @@
|
|
|
1
1
|
import { mountElement, mountComponent, getCurrentScope, } from "@praxisjs/runtime";
|
|
2
2
|
import { isComponent, } from "@praxisjs/shared/internal";
|
|
3
3
|
export const Fragment = Symbol("Fragment");
|
|
4
|
+
function collectFragmentChildren(children, out) {
|
|
5
|
+
if (children === null || children === undefined || children === false)
|
|
6
|
+
return;
|
|
7
|
+
if (Array.isArray(children)) {
|
|
8
|
+
for (const child of children)
|
|
9
|
+
collectFragmentChildren(child, out);
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
if (children instanceof Node) {
|
|
13
|
+
out.push(children);
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
if (typeof children === "string" || typeof children === "number") {
|
|
17
|
+
out.push(document.createTextNode(String(children)));
|
|
18
|
+
}
|
|
19
|
+
}
|
|
4
20
|
export function jsx(type, props) {
|
|
5
21
|
const scope = getCurrentScope();
|
|
6
22
|
if (type === Fragment) {
|
|
7
23
|
const { children } = props;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return children.flat(Infinity);
|
|
12
|
-
if (children instanceof Node)
|
|
13
|
-
return [children];
|
|
14
|
-
return [];
|
|
24
|
+
const nodes = [];
|
|
25
|
+
collectFragmentChildren(children, nodes);
|
|
26
|
+
return nodes;
|
|
15
27
|
}
|
|
16
28
|
if (typeof type === "string") {
|
|
17
29
|
return mountElement(type, props, scope);
|
package/dist/jsx-runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsx-runtime.js","sourceRoot":"","sources":["../src/jsx-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,cAAc,EACd,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,WAAW,GAEZ,MAAM,2BAA2B,CAAC;AAsDnC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"jsx-runtime.js","sourceRoot":"","sources":["../src/jsx-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,cAAc,EACd,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,WAAW,GAEZ,MAAM,2BAA2B,CAAC;AAsDnC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAE3C,SAAS,uBAAuB,CAAC,QAAiB,EAAE,GAAW;IAC7D,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO;IAC9E,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,KAAK,MAAM,KAAK,IAAI,QAAQ;YAAE,uBAAuB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAClE,OAAO;IACT,CAAC;IACD,IAAI,QAAQ,YAAY,IAAI,EAAE,CAAC;QAC7B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnB,OAAO;IACT,CAAC;IACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAUD,MAAM,UAAU,GAAG,CACjB,IAAO,EACP,KAA0C;IAE1C,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAEhC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QAC3B,MAAM,KAAK,GAAW,EAAE,CAAC;QACzB,uBAAuB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAC,IAAI,EAAE,KAAgC,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,cAAc,CAAC,IAAI,EAAE,KAAgC,EAAE,KAAK,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisjs/jsx",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"typescript": "^5.9.3"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@praxisjs/runtime": "0.
|
|
26
|
-
"@praxisjs/shared": "0.
|
|
25
|
+
"@praxisjs/runtime": "0.4.1",
|
|
26
|
+
"@praxisjs/shared": "0.3.0"
|
|
27
27
|
},
|
|
28
28
|
"scripts": {
|
|
29
29
|
"build": "tsc",
|
|
@@ -43,6 +43,17 @@ describe("Fragment", () => {
|
|
|
43
43
|
expect(result[1]).toBe(b);
|
|
44
44
|
});
|
|
45
45
|
|
|
46
|
+
it("preserves primitive children, including 0, for runtime mounting", () => {
|
|
47
|
+
const node = document.createElement("strong");
|
|
48
|
+
const result = withScope(() =>
|
|
49
|
+
jsx(Fragment, { children: ["count: ", 0, false, null, [node]] }),
|
|
50
|
+
) as Node[];
|
|
51
|
+
const container = document.createElement("div");
|
|
52
|
+
for (const child of result) container.appendChild(child);
|
|
53
|
+
expect(container.textContent).toBe("count: 0");
|
|
54
|
+
expect(container.querySelector("strong")).toBe(node);
|
|
55
|
+
});
|
|
56
|
+
|
|
46
57
|
it("returns [] when children is a non-Node non-Array value (e.g. plain object)", () => {
|
|
47
58
|
const result = withScope(() =>
|
|
48
59
|
jsx(Fragment, { children: { foo: "bar" } as unknown }),
|
package/src/jsx-runtime.ts
CHANGED
|
@@ -63,6 +63,21 @@ import type {
|
|
|
63
63
|
|
|
64
64
|
export const Fragment = Symbol("Fragment");
|
|
65
65
|
|
|
66
|
+
function collectFragmentChildren(children: unknown, out: Node[]): void {
|
|
67
|
+
if (children === null || children === undefined || children === false) return;
|
|
68
|
+
if (Array.isArray(children)) {
|
|
69
|
+
for (const child of children) collectFragmentChildren(child, out);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
if (children instanceof Node) {
|
|
73
|
+
out.push(children);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
if (typeof children === "string" || typeof children === "number") {
|
|
77
|
+
out.push(document.createTextNode(String(children)));
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
66
81
|
type PropsOf<T> = T extends string
|
|
67
82
|
? T extends keyof JSX.IntrinsicElements
|
|
68
83
|
? JSX.IntrinsicElements[T]
|
|
@@ -79,10 +94,9 @@ export function jsx<T extends string | ComponentConstructor | symbol>(
|
|
|
79
94
|
|
|
80
95
|
if (type === Fragment) {
|
|
81
96
|
const { children } = props;
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
return [];
|
|
97
|
+
const nodes: Node[] = [];
|
|
98
|
+
collectFragmentChildren(children, nodes);
|
|
99
|
+
return nodes;
|
|
86
100
|
}
|
|
87
101
|
|
|
88
102
|
if (typeof type === "string") {
|