@praxisjs/jsx 0.3.0 → 0.3.2

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 CHANGED
@@ -1,5 +1,23 @@
1
1
  # @praxisjs/jsx
2
2
 
3
+ ## 0.3.2
4
+
5
+ ### Patch Changes
6
+
7
+ - @praxisjs/runtime@0.2.3
8
+
9
+ ## 0.3.1
10
+
11
+ ### Patch Changes
12
+
13
+ - 966efdc: Fix JSX prop typing for `StatelessComponent` to automatically accept reactive values (`() => T`) without requiring manual declaration. `LibraryManagedAttributes` now uses `InstancePropsOf` directly instead of intersecting with the raw constructor props, preventing the erroneous `T | (T & (() => T))` type expansion.
14
+
15
+ `InstancePropsOf` now uses `_rawProps` to infer props for class components decorated with `@Prop()`, providing accurate JSX prop types without manual interface declarations.
16
+
17
+ The `@Emit` decorator type signature was relaxed from `unknown` to `any` to allow broader method compatibility. Devtools `Panel` and `DevToolsApp` components were refactored to use `@Prop()` and `@Emit()` decorators instead of manual props casting.
18
+
19
+ - @praxisjs/runtime@0.2.2
20
+
3
21
  ## 0.3.0
4
22
 
5
23
  ### Minor Changes
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=jsx-runtime.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsx-runtime.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/jsx-runtime.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,69 @@
1
+ // @vitest-environment jsdom
2
+ import { describe, it, expect } from "vitest";
3
+ import { Scope, runInScope } from "@praxisjs/runtime";
4
+ import { jsx, jsxs, jsxDEV, Fragment } from "../jsx-runtime";
5
+ function withScope(fn) {
6
+ const scope = new Scope();
7
+ return runInScope(scope, fn);
8
+ }
9
+ describe("Fragment", () => {
10
+ it("is a unique Symbol", () => {
11
+ expect(typeof Fragment).toBe("symbol");
12
+ });
13
+ it("returns [] when no children are provided", () => {
14
+ const result = withScope(() => jsx(Fragment, {}));
15
+ expect(result).toEqual([]);
16
+ });
17
+ it("returns [] when children is empty array", () => {
18
+ const result = withScope(() => jsx(Fragment, { children: [] }));
19
+ expect(Array.isArray(result)).toBe(true);
20
+ });
21
+ it("wraps a single Node in an array", () => {
22
+ const node = document.createElement("span");
23
+ const result = withScope(() => jsx(Fragment, { children: node }));
24
+ expect(result).toHaveLength(1);
25
+ expect(result[0]).toBe(node);
26
+ });
27
+ it("flattens an array of Nodes", () => {
28
+ const a = document.createElement("div");
29
+ const b = document.createElement("span");
30
+ const result = withScope(() => jsx(Fragment, { children: [a, b] }));
31
+ expect(result).toHaveLength(2);
32
+ expect(result[0]).toBe(a);
33
+ expect(result[1]).toBe(b);
34
+ });
35
+ });
36
+ describe("jsx — string tag", () => {
37
+ it("creates a DOM element for a string tag", () => {
38
+ const el = withScope(() => jsx("div", {}));
39
+ expect(el).toBeInstanceOf(HTMLDivElement);
40
+ });
41
+ it("applies class prop", () => {
42
+ const el = withScope(() => jsx("p", { class: "text-lg" }));
43
+ expect(el.getAttribute("class")).toBe("text-lg");
44
+ });
45
+ it("renders string children", () => {
46
+ const el = withScope(() => jsx("span", { children: "hello" }));
47
+ expect(el.textContent).toBe("hello");
48
+ });
49
+ it("creates an SVG element for svg tags", () => {
50
+ const el = withScope(() => jsx("svg", {}));
51
+ expect(el).toBeInstanceOf(SVGElement);
52
+ });
53
+ });
54
+ describe("jsx — unknown type", () => {
55
+ it("returns a comment node for an unknown symbol type", () => {
56
+ const unknownType = Symbol("unknown");
57
+ const result = withScope(() => jsx(unknownType, {}));
58
+ expect(result.nodeType).toBe(Node.COMMENT_NODE);
59
+ });
60
+ });
61
+ describe("jsxs and jsxDEV", () => {
62
+ it("jsxs is the same function as jsx", () => {
63
+ expect(jsxs).toBe(jsx);
64
+ });
65
+ it("jsxDEV is the same function as jsx", () => {
66
+ expect(jsxDEV).toBe(jsx);
67
+ });
68
+ });
69
+ //# sourceMappingURL=jsx-runtime.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsx-runtime.test.js","sourceRoot":"","sources":["../../src/__tests__/jsx-runtime.test.ts"],"names":[],"mappings":"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"}
@@ -15,12 +15,19 @@ export declare namespace JSX {
15
15
  interface GlobalAttributes {
16
16
  key?: string | number | symbol;
17
17
  }
18
+ type IsAny<T> = 0 extends 1 & T ? true : false;
18
19
  type InstancePropsOf<C> = C extends {
19
20
  prototype: infer I;
20
- } ? {
21
- [K in keyof I as K extends "defaults" | "onMount" | "onUnmount" | "onUpdate" ? never : I[K] extends (...args: unknown[]) => unknown ? never : K]?: Reactive<I[K]>;
22
- } : never;
23
- export type LibraryManagedAttributes<C, P> = P & (C extends string ? Record<never, never> : InstancePropsOf<C> extends never ? Record<never, never> : InstancePropsOf<C>) & GlobalAttributes;
21
+ } ? IsAny<I> extends true ? never : I extends {
22
+ _rawProps: infer RawProps extends object;
23
+ } ? [string] extends [keyof RawProps] ? {
24
+ [K in keyof I as K extends "_defaults" | "_stateDirty" | "_rawProps" | "_mounted" | "_anchor" | "_setProps" | "props" | "onBeforeMount" | "onMount" | "onUnmount" | "onError" | "render" | "onUpdate" ? never : I[K] extends (...args: unknown[]) => unknown ? never : K]?: Reactive<I[K]>;
25
+ } : {
26
+ [K in keyof RawProps]?: Reactive<RawProps[K]>;
27
+ } : never : never;
28
+ export type LibraryManagedAttributes<C, P> = C extends string ? P & GlobalAttributes : [InstancePropsOf<C>] extends [never] ? C extends new (props: infer CtorProps) => unknown ? {
29
+ [K in keyof CtorProps]?: Reactive<CtorProps[K]>;
30
+ } & GlobalAttributes : Record<string, unknown> & GlobalAttributes : InstancePropsOf<C> & GlobalAttributes;
24
31
  export interface IntrinsicElements {
25
32
  div: HTMLAttributes;
26
33
  span: HTMLAttributes;
@@ -1 +1 @@
1
- {"version":3,"file":"jsx-runtime.d.ts","sourceRoot":"","sources":["../src/jsx-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jsx-runtime.d.ts","sourceRoot":"","sources":["../src/jsx-runtime.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@praxisjs/jsx",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -22,7 +22,7 @@
22
22
  "typescript": "^5.9.3"
23
23
  },
24
24
  "dependencies": {
25
- "@praxisjs/runtime": "0.2.1",
25
+ "@praxisjs/runtime": "0.2.3",
26
26
  "@praxisjs/shared": "0.2.0"
27
27
  },
28
28
  "scripts": {
@@ -0,0 +1,91 @@
1
+ // @vitest-environment jsdom
2
+ import { describe, it, expect } from "vitest";
3
+
4
+ import { Scope, runInScope } from "@praxisjs/runtime";
5
+
6
+ import { jsx, jsxs, jsxDEV, Fragment } from "../jsx-runtime";
7
+
8
+ function withScope<T>(fn: () => T): T {
9
+ const scope = new Scope();
10
+ return runInScope(scope, fn);
11
+ }
12
+
13
+ describe("Fragment", () => {
14
+ it("is a unique Symbol", () => {
15
+ expect(typeof Fragment).toBe("symbol");
16
+ });
17
+
18
+ it("returns [] when no children are provided", () => {
19
+ const result = withScope(() => jsx(Fragment, {}));
20
+ expect(result).toEqual([]);
21
+ });
22
+
23
+ it("returns [] when children is empty array", () => {
24
+ const result = withScope(() => jsx(Fragment, { children: [] }));
25
+ expect(Array.isArray(result)).toBe(true);
26
+ });
27
+
28
+ it("wraps a single Node in an array", () => {
29
+ const node = document.createElement("span");
30
+ const result = withScope(() => jsx(Fragment, { children: node })) as Node[];
31
+ expect(result).toHaveLength(1);
32
+ expect(result[0]).toBe(node);
33
+ });
34
+
35
+ it("flattens an array of Nodes", () => {
36
+ const a = document.createElement("div");
37
+ const b = document.createElement("span");
38
+ const result = withScope(() =>
39
+ jsx(Fragment, { children: [a, b] }),
40
+ ) as Node[];
41
+ expect(result).toHaveLength(2);
42
+ expect(result[0]).toBe(a);
43
+ expect(result[1]).toBe(b);
44
+ });
45
+ });
46
+
47
+ describe("jsx — string tag", () => {
48
+ it("creates a DOM element for a string tag", () => {
49
+ const el = withScope(() => jsx("div", {})) as HTMLElement;
50
+ expect(el).toBeInstanceOf(HTMLDivElement);
51
+ });
52
+
53
+ it("applies class prop", () => {
54
+ const el = withScope(() =>
55
+ jsx("p", { class: "text-lg" }),
56
+ ) as HTMLElement;
57
+ expect(el.getAttribute("class")).toBe("text-lg");
58
+ });
59
+
60
+ it("renders string children", () => {
61
+ const el = withScope(() =>
62
+ jsx("span", { children: "hello" }),
63
+ ) as HTMLElement;
64
+ expect(el.textContent).toBe("hello");
65
+ });
66
+
67
+ it("creates an SVG element for svg tags", () => {
68
+ const el = withScope(() => jsx("svg", {})) as SVGElement;
69
+ expect(el).toBeInstanceOf(SVGElement);
70
+ });
71
+ });
72
+
73
+ describe("jsx — unknown type", () => {
74
+ it("returns a comment node for an unknown symbol type", () => {
75
+ const unknownType = Symbol("unknown");
76
+ const result = withScope(() =>
77
+ jsx(unknownType as unknown as string, {}),
78
+ ) as Comment;
79
+ expect(result.nodeType).toBe(Node.COMMENT_NODE);
80
+ });
81
+ });
82
+
83
+ describe("jsxs and jsxDEV", () => {
84
+ it("jsxs is the same function as jsx", () => {
85
+ expect(jsxs).toBe(jsx);
86
+ });
87
+
88
+ it("jsxDEV is the same function as jsx", () => {
89
+ expect(jsxDEV).toBe(jsx);
90
+ });
91
+ });
@@ -55,29 +55,47 @@ export namespace JSX {
55
55
  key?: string | number | symbol;
56
56
  }
57
57
 
58
+ // Resolves to `true` when T is the `any` type.
59
+ type IsAny<T> = 0 extends 1 & T ? true : false;
60
+
58
61
  // Infer props from the class instance properties
59
62
  // (excludes lifecycle and methods)
60
63
  type InstancePropsOf<C> = C extends { prototype: infer I }
61
- ? {
62
- [K in keyof I as K extends
63
- | "defaults"
64
- | "onMount"
65
- | "onUnmount"
66
- | "onUpdate"
67
- ? never
68
- : I[K] extends (...args: unknown[]) => unknown
69
- ? never
70
- : K]?: Reactive<I[K]>;
71
- }
64
+ ? IsAny<I> extends true
65
+ ? never // raw construct-type alias — prototype resolves to `any`
66
+ : I extends { _rawProps: infer RawProps extends object }
67
+ ? [string] extends [keyof RawProps]
68
+ ? {
69
+ [K in keyof I as K extends
70
+ | "_defaults"
71
+ | "_stateDirty"
72
+ | "_rawProps"
73
+ | "_mounted"
74
+ | "_anchor"
75
+ | "_setProps"
76
+ | "props"
77
+ | "onBeforeMount"
78
+ | "onMount"
79
+ | "onUnmount"
80
+ | "onError"
81
+ | "render"
82
+ | "onUpdate"
83
+ ? never
84
+ : I[K] extends (...args: unknown[]) => unknown
85
+ ? never
86
+ : K]?: Reactive<I[K]>;
87
+ }
88
+ : { [K in keyof RawProps]?: Reactive<RawProps[K]> }
89
+ : never
72
90
  : never;
73
91
 
74
- export type LibraryManagedAttributes<C, P> = P &
75
- (C extends string
76
- ? Record<never, never>
77
- : InstancePropsOf<C> extends never
78
- ? Record<never, never>
79
- : InstancePropsOf<C>) &
80
- GlobalAttributes;
92
+ export type LibraryManagedAttributes<C, P> = C extends string
93
+ ? P & GlobalAttributes
94
+ : [InstancePropsOf<C>] extends [never]
95
+ ? C extends new (props: infer CtorProps) => unknown
96
+ ? { [K in keyof CtorProps]?: Reactive<CtorProps[K]> } & GlobalAttributes
97
+ : Record<string, unknown> & GlobalAttributes
98
+ : InstancePropsOf<C> & GlobalAttributes;
81
99
 
82
100
  export interface IntrinsicElements {
83
101
  div: HTMLAttributes;