@faiwer/react 0.8.2 → 0.8.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.
Files changed (135) hide show
  1. package/README.md +3 -0
  2. package/dist/core/Children.d.ts +11 -0
  3. package/dist/core/Children.d.ts.map +1 -0
  4. package/dist/core/Children.js +35 -0
  5. package/dist/core/Children.js.map +1 -0
  6. package/dist/core/actions/createTag.action.d.ts.map +1 -1
  7. package/dist/core/actions/createTag.action.js +85 -1
  8. package/dist/core/actions/createTag.action.js.map +1 -1
  9. package/dist/core/actions/dom/attributes.d.ts +4 -0
  10. package/dist/core/actions/dom/attributes.d.ts.map +1 -0
  11. package/dist/core/actions/dom/attributes.js +53 -0
  12. package/dist/core/actions/dom/attributes.js.map +1 -0
  13. package/dist/core/actions/dom/css.d.ts +6 -0
  14. package/dist/core/actions/dom/css.d.ts.map +1 -0
  15. package/dist/core/actions/dom/css.js +53 -0
  16. package/dist/core/actions/dom/css.js.map +1 -0
  17. package/dist/core/actions/dom/events.d.ts +3 -0
  18. package/dist/core/actions/dom/events.d.ts.map +1 -0
  19. package/dist/core/actions/dom/events.js +33 -0
  20. package/dist/core/actions/dom/events.js.map +1 -0
  21. package/dist/core/actions/dom/svg.d.ts +7 -0
  22. package/dist/core/actions/dom/svg.d.ts.map +1 -0
  23. package/dist/core/actions/dom/svg.js +76 -0
  24. package/dist/core/actions/dom/svg.js.map +1 -0
  25. package/dist/core/actions/helpers.d.ts +2 -2
  26. package/dist/core/actions/helpers.d.ts.map +1 -1
  27. package/dist/core/actions/helpers.js +17 -2
  28. package/dist/core/actions/helpers.js.map +1 -1
  29. package/dist/core/actions/remove.action.d.ts +2 -1
  30. package/dist/core/actions/remove.action.d.ts.map +1 -1
  31. package/dist/core/actions/remove.action.js +5 -5
  32. package/dist/core/actions/remove.action.js.map +1 -1
  33. package/dist/core/actions/replace.action.d.ts.map +1 -1
  34. package/dist/core/actions/replace.action.js +18 -0
  35. package/dist/core/actions/replace.action.js.map +1 -1
  36. package/dist/core/actions/setAttr.action.d.ts.map +1 -1
  37. package/dist/core/actions/setAttr.action.js +11 -85
  38. package/dist/core/actions/setAttr.action.js.map +1 -1
  39. package/dist/core/actions/setRef.action.d.ts.map +1 -1
  40. package/dist/core/actions/setRef.action.js +1 -2
  41. package/dist/core/actions/setRef.action.js.map +1 -1
  42. package/dist/core/classComponent.d.ts +33 -0
  43. package/dist/core/classComponent.d.ts.map +1 -0
  44. package/dist/core/classComponent.js +126 -0
  45. package/dist/core/classComponent.js.map +1 -0
  46. package/dist/core/components.d.ts.map +1 -1
  47. package/dist/core/components.js +4 -0
  48. package/dist/core/components.js.map +1 -1
  49. package/dist/core/createElement.d.ts +8 -2
  50. package/dist/core/createElement.d.ts.map +1 -1
  51. package/dist/core/createElement.js +16 -2
  52. package/dist/core/createElement.js.map +1 -1
  53. package/dist/core/createRoot.js.map +1 -1
  54. package/dist/core/reconciliation/collect/fromChildrenPair.js +16 -12
  55. package/dist/core/reconciliation/collect/fromChildrenPair.js.map +1 -1
  56. package/dist/core/reconciliation/collect/fromFiberPair.d.ts.map +1 -1
  57. package/dist/core/reconciliation/collect/fromFiberPair.js +4 -0
  58. package/dist/core/reconciliation/collect/fromFiberPair.js.map +1 -1
  59. package/dist/core/reconciliation/effects.d.ts.map +1 -1
  60. package/dist/core/reconciliation/effects.js +0 -5
  61. package/dist/core/reconciliation/effects.js.map +1 -1
  62. package/dist/core/reconciliation/errors/stack.d.ts +3 -0
  63. package/dist/core/reconciliation/errors/stack.d.ts.map +1 -0
  64. package/dist/core/reconciliation/errors/stack.js +23 -0
  65. package/dist/core/reconciliation/errors/stack.js.map +1 -0
  66. package/dist/core/reconciliation/fibers.d.ts +6 -0
  67. package/dist/core/reconciliation/fibers.d.ts.map +1 -1
  68. package/dist/core/reconciliation/fibers.js +6 -0
  69. package/dist/core/reconciliation/fibers.js.map +1 -1
  70. package/dist/core/reconciliation/invalidateFiber.d.ts.map +1 -1
  71. package/dist/core/reconciliation/invalidateFiber.js +5 -0
  72. package/dist/core/reconciliation/invalidateFiber.js.map +1 -1
  73. package/dist/core/reconciliation/mount.d.ts.map +1 -1
  74. package/dist/core/reconciliation/mount.js +3 -3
  75. package/dist/core/reconciliation/mount.js.map +1 -1
  76. package/dist/core/reconciliation/postCommit.d.ts.map +1 -1
  77. package/dist/core/reconciliation/postCommit.js +3 -1
  78. package/dist/core/reconciliation/postCommit.js.map +1 -1
  79. package/dist/core/reconciliation/render.js +4 -4
  80. package/dist/core/reconciliation/render.js.map +1 -1
  81. package/dist/core/reconciliation/typeGuards.d.ts +6 -1
  82. package/dist/core/reconciliation/typeGuards.d.ts.map +1 -1
  83. package/dist/core/reconciliation/typeGuards.js +12 -0
  84. package/dist/core/reconciliation/typeGuards.js.map +1 -1
  85. package/dist/core/reconciliation/validateApp.d.ts +3 -0
  86. package/dist/core/reconciliation/validateApp.d.ts.map +1 -0
  87. package/dist/core/reconciliation/{validateTree.js → validateApp.js} +21 -2
  88. package/dist/core/reconciliation/validateApp.js.map +1 -0
  89. package/dist/hooks/useContext.d.ts.map +1 -1
  90. package/dist/hooks/useContext.js +16 -0
  91. package/dist/hooks/useContext.js.map +1 -1
  92. package/dist/hooks/useState.d.ts.map +1 -1
  93. package/dist/hooks/useState.js +25 -0
  94. package/dist/hooks/useState.js.map +1 -1
  95. package/dist/index.d.ts +5 -1
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +4 -0
  98. package/dist/index.js.map +1 -1
  99. package/dist/jsx-dev-runtime.d.ts +4 -4
  100. package/dist/jsx-dev-runtime.d.ts.map +1 -1
  101. package/dist/jsx-dev-runtime.js +4 -4
  102. package/dist/jsx-dev-runtime.js.map +1 -1
  103. package/dist/jsx-runtime.d.ts +3 -3
  104. package/dist/jsx-runtime.d.ts.map +1 -1
  105. package/dist/jsx-runtime.js +3 -3
  106. package/dist/jsx-runtime.js.map +1 -1
  107. package/{src → dist}/jsx.d.ts +25 -0
  108. package/dist/mocks.d.ts +28 -0
  109. package/dist/mocks.d.ts.map +1 -0
  110. package/dist/mocks.js +33 -0
  111. package/dist/mocks.js.map +1 -0
  112. package/dist/types/actions.d.ts +1 -0
  113. package/dist/types/actions.d.ts.map +1 -1
  114. package/dist/types/app.d.ts +5 -0
  115. package/dist/types/app.d.ts.map +1 -1
  116. package/dist/types/common.d.ts +4 -0
  117. package/dist/types/common.d.ts.map +1 -0
  118. package/dist/types/common.js +2 -0
  119. package/dist/types/common.js.map +1 -0
  120. package/dist/types/component.d.ts +1 -0
  121. package/dist/types/component.d.ts.map +1 -1
  122. package/dist/types/dom.d.ts +5 -10
  123. package/dist/types/dom.d.ts.map +1 -1
  124. package/dist/types/events.d.ts +24 -0
  125. package/dist/types/events.d.ts.map +1 -0
  126. package/dist/types/events.js +2 -0
  127. package/dist/types/events.js.map +1 -0
  128. package/dist/types/fiber.d.ts +2 -0
  129. package/dist/types/fiber.d.ts.map +1 -1
  130. package/dist/types/hooks.d.ts +4 -1
  131. package/dist/types/hooks.d.ts.map +1 -1
  132. package/package.json +9 -3
  133. package/dist/core/reconciliation/validateTree.d.ts +0 -6
  134. package/dist/core/reconciliation/validateTree.d.ts.map +0 -1
  135. package/dist/core/reconciliation/validateTree.js.map +0 -1
@@ -0,0 +1,28 @@
1
+ import type { ReactComponent, UnknownProps } from './types';
2
+ /**
3
+ * Currently a no-op that returns the component unchanged. In the future,
4
+ * ref forwarding won't be needed since refs will be passed as regular props
5
+ * to components.
6
+ */
7
+ export declare const forwardRef: <T extends UnknownProps>(Component: ReactComponent<T>) => ReactComponent<T>;
8
+ /**
9
+ * Mock implementation of React's startTransition. This engine doesn't support
10
+ * concurrent features or update prioritization, so transitions are executed
11
+ * immediately without deferring.
12
+ */
13
+ export declare const startTransition: (fn: () => void) => void;
14
+ /**
15
+ * Mock implementation of React's flushSync. Unlike React, this engine's
16
+ * scheduler renders in the next JS tick, so this is a simplified version
17
+ * that executes the callback but doesn't force synchronous rendering.
18
+ *
19
+ * Note: True flushSync behavior would require bypassing the scheduler
20
+ * and rendering immediately, which is not currently implemented.
21
+ */
22
+ export declare const flushSync: (fn: () => void) => void;
23
+ /**
24
+ * Suspense is not supported and likely never will be, as it requires complex
25
+ * async rendering capabilities. Throws an error when used.
26
+ */
27
+ export declare const Suspense: () => never;
28
+ //# sourceMappingURL=mocks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../src/mocks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5D;;;;GAIG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,yEAEI,CAAC;AAEjC;;;;GAIG;AACH,eAAO,MAAM,eAAe,0BAE3B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,0BAErB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,aAEpB,CAAC"}
package/dist/mocks.js ADDED
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Currently a no-op that returns the component unchanged. In the future,
3
+ * ref forwarding won't be needed since refs will be passed as regular props
4
+ * to components.
5
+ */
6
+ export const forwardRef = (Component) => Component;
7
+ /**
8
+ * Mock implementation of React's startTransition. This engine doesn't support
9
+ * concurrent features or update prioritization, so transitions are executed
10
+ * immediately without deferring.
11
+ */
12
+ export const startTransition = (fn) => {
13
+ fn();
14
+ };
15
+ /**
16
+ * Mock implementation of React's flushSync. Unlike React, this engine's
17
+ * scheduler renders in the next JS tick, so this is a simplified version
18
+ * that executes the callback but doesn't force synchronous rendering.
19
+ *
20
+ * Note: True flushSync behavior would require bypassing the scheduler
21
+ * and rendering immediately, which is not currently implemented.
22
+ */
23
+ export const flushSync = (fn) => {
24
+ fn();
25
+ };
26
+ /**
27
+ * Suspense is not supported and likely never will be, as it requires complex
28
+ * async rendering capabilities. Throws an error when used.
29
+ */
30
+ export const Suspense = () => {
31
+ throw new Error(`Suspense is not supported`);
32
+ };
33
+ //# sourceMappingURL=mocks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mocks.js","sourceRoot":"","sources":["../src/mocks.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,SAA4B,EACV,EAAE,CAAC,SAAS,CAAC;AAEjC;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAc,EAAE,EAAE,CAAC;IACjD,EAAE,EAAE,CAAC;AAAA,CACN,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAc,EAAE,EAAE,CAAC;IAC3C,EAAE,EAAE,CAAC;AAAA,CACN,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC;IAC5B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AAAA,CAC9C,CAAC"}
@@ -37,6 +37,7 @@ export type SetPropsAction = CommonAction & {
37
37
  type UpdateAction = SetTextAction | SetAttrAction | SetPropsAction | SetRefAction;
38
38
  export type RemoveAction = CommonAction & {
39
39
  type: 'Remove';
40
+ immediate?: boolean;
40
41
  };
41
42
  export type RelayoutAction = CommonAction & {
42
43
  type: 'Relayout';
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/types/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE7C,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAGF,KAAK,eAAe,GAAG,YAAY,GAAG;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAC5D,KAAK,gBAAgB,GAAG,YAAY,GAAG;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC;AAC9D,MAAM,MAAM,mBAAmB,GAAG,YAAY,GAAG;IAC/C,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC;AACF,KAAK,YAAY,GAAG,eAAe,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAG7E,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAC7E,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,YAAY,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG;IACxC,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAE9C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG;IAC1C,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC;CACrB,CAAC;AACF,KAAK,YAAY,GACb,aAAa,GACb,aAAa,GACb,cAAc,GACd,YAAY,CAAC;AAGjB,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAC7D,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG;IAC1C,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;CACrB,CAAC;AACF,KAAK,YAAY,GAAG,YAAY,GAAG,cAAc,GAAG,aAAa,CAAC;AAElE,MAAM,MAAM,MAAM,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,CAAC"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/types/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE7C,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAGF,KAAK,eAAe,GAAG,YAAY,GAAG;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAC5D,KAAK,gBAAgB,GAAG,YAAY,GAAG;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC;AAC9D,MAAM,MAAM,mBAAmB,GAAG,YAAY,GAAG;IAC/C,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC;AACF,KAAK,YAAY,GAAG,eAAe,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAG7E,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAC7E,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,YAAY,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG;IACxC,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAE9C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG;IAC1C,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,YAAY,CAAC;CACrB,CAAC;AACF,KAAK,YAAY,GACb,aAAa,GACb,aAAa,GACb,cAAc,GACd,YAAY,CAAC;AAGjB,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG;IACxC,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG;IAC1C,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;CACrB,CAAC;AACF,KAAK,YAAY,GAAG,YAAY,GAAG,cAAc,GAAG,aAAa,CAAC;AAElE,MAAM,MAAM,MAAM,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,CAAC"}
@@ -23,6 +23,11 @@ export type AppState =
23
23
  * tree. Some of the actions may schedule extra effects.
24
24
  */
25
25
  | 'commit'
26
+ /**
27
+ * The same as `refEffects`, but is executed one step earlier. It contains
28
+ * calls to ref handlers.
29
+ */
30
+ | 'refEffects'
26
31
  /**
27
32
  * Runs scheduled normal effects. It's guaranteed that the browser didn't
28
33
  * update the UI since the render started. Effect handlers may update
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/types/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,MAAM,QAAQ;AAClB,0BAA0B;AACxB,MAAM;AACR;;;IAGI;GACF,WAAW;AACb;;;;;;;;GAQG;GACD,QAAQ;AACV;;;GAGG;GACD,QAAQ;AACV;;;;;GAKG;GACD,eAAe;AACjB;;;GAGG;GACD,SAAS;AACX;;GAEG;GACD,QAAQ,CAAC;AAEb,MAAM,MAAM,GAAG,GAAG;IAChB,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,iDAAiD;IACjD,IAAI,EAAE,SAAS,CAAC;IAChB,oDAAoD;IACpD,KAAK,EAAE,QAAQ,CAAC;IAChB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAC/C,0CAA0C;IAC1C,qBAAqB,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACtC,+CAA+C;IAC/C,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB;;;QAGI;IACJ,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC;IACvC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/types/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,MAAM,QAAQ;AAClB,0BAA0B;AACxB,MAAM;AACR;;;IAGI;GACF,WAAW;AACb;;;;;;;;GAQG;GACD,QAAQ;AACV;;;GAGG;GACD,QAAQ;AACV;;;GAGG;GACD,YAAY;AACd;;;;;GAKG;GACD,eAAe;AACjB;;;GAGG;GACD,SAAS;AACX;;GAEG;GACD,QAAQ,CAAC;AAEb,MAAM,MAAM,GAAG,GAAG;IAChB,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,iDAAiD;IACjD,IAAI,EAAE,SAAS,CAAC;IAChB,oDAAoD;IACpD,KAAK,EAAE,QAAQ,CAAC;IAChB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAC/C,0CAA0C;IAC1C,qBAAqB,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;IACtC,+CAA+C;IAC/C,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB;;;QAGI;IACJ,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC;IACvC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export type RemoveIndexSignature<T extends HTMLElement> = {
2
+ [K in keyof T as string extends K ? never : number extends K ? never : typeof Symbol.iterator extends K ? never : K]: T[K];
3
+ };
4
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/types/common.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,WAAW,IAAI;KACvD,CAAC,IAAI,MAAM,CAAC,IAAI,MAAM,SAAS,CAAC,GAC7B,KAAK,GACL,MAAM,SAAS,CAAC,GACd,KAAK,GACL,OAAO,MAAM,CAAC,QAAQ,SAAS,CAAC,GAC9B,KAAK,GACL,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACjB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/types/common.ts"],"names":[],"mappings":""}
@@ -8,4 +8,5 @@ export type PropsWithChildren<TProps extends UnknownProps = UnknownProps> = TPro
8
8
  children?: JSX.Element;
9
9
  };
10
10
  export type ReactComponentWithChildren<TProps extends UnknownProps = UnknownProps> = ReactComponent<PropsWithChildren<TProps>>;
11
+ export type FC<Props extends UnknownProps = UnknownProps> = ReactComponent<Props>;
11
12
  //# sourceMappingURL=component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/types/component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,SAAS,GAAG,IAAI,CAA4B;CACpD,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,YAAY,GAAG,YAAY,IAAI,CACvE,KAAK,EAAE,MAAM,GAAG,kBAAkB,KAC/B,GAAG,CAAC,OAAO,CAAC;AAEjB,MAAM,MAAM,iBAAiB,CAAC,MAAM,SAAS,YAAY,GAAG,YAAY,IACtE,MAAM,GAAG;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;CAAE,CAAC;AAEtC,MAAM,MAAM,0BAA0B,CACpC,MAAM,SAAS,YAAY,GAAG,YAAY,IACxC,cAAc,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/types/component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,SAAS,GAAG,IAAI,CAA4B;CACpD,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,YAAY,GAAG,YAAY,IAAI,CACvE,KAAK,EAAE,MAAM,GAAG,kBAAkB,KAC/B,GAAG,CAAC,OAAO,CAAC;AAEjB,MAAM,MAAM,iBAAiB,CAAC,MAAM,SAAS,YAAY,GAAG,YAAY,IACtE,MAAM,GAAG;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;CAAE,CAAC;AAEtC,MAAM,MAAM,0BAA0B,CACpC,MAAM,SAAS,YAAY,GAAG,YAAY,IACxC,cAAc,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;AAG9C,MAAM,MAAM,EAAE,CAAC,KAAK,SAAS,YAAY,GAAG,YAAY,IACtD,cAAc,CAAC,KAAK,CAAC,CAAC"}
@@ -1,11 +1,10 @@
1
+ import type { RemoveIndexSignature } from './common';
1
2
  import type { ElementCommonAttrs, ScalarNode } from './core';
3
+ import type { TagEventHandlers } from './events';
2
4
  import type { HtmlRef, RefSetter } from './refs';
3
5
  /** The list of possible DOM tree node types. */
4
6
  export type DomNode = Element | Text | Comment;
5
7
  export type TagAttrValue = string | number | boolean | null | undefined | Function | TagStyles;
6
- type EventKeys<T extends HTMLElement> = {
7
- [K in keyof T]: K extends `on${string}` ? K : never;
8
- }[keyof T];
9
8
  /**
10
9
  * Each HTMLElement contains a ton of properties. Most of them shouldn't be used
11
10
  * in JSX tag nodes. This type matches most inapplicable generic properties.
@@ -16,13 +15,9 @@ type GeneralRemove = `DOCUMENT_${string}` | `${string}_NODE` | `client${string}`
16
15
  * node.
17
16
  **/
18
17
  type PropertiesOnly<T extends HTMLElement> = {
19
- [K in keyof T]: T[K] extends (...args: any[]) => any ? never : ChildNode extends T[K] ? never : Element extends T[K] ? never : HTMLElement extends T[K] ? never : K;
20
- }[keyof T];
21
- type TagNativeProps<T extends HTMLElement> = Partial<Omit<Pick<T, PropertiesOnly<T>>, GeneralRemove>> & {
22
- [K in EventKeys<T>]?: DomEventHandlerX<K>;
23
- };
24
- type EventHandler<E extends Event> = (event: E) => boolean | void;
25
- type DomEventHandlerX<E extends string> = E extends `ondrag${string}` ? EventHandler<DragEvent> : E extends `onmouse${string}` ? EventHandler<MouseEvent> : E extends `onkey${string}` ? EventHandler<KeyboardEvent> : E extends `onfocus` | `onblur` ? EventHandler<FocusEvent> : E extends `onwheel` ? EventHandler<WheelEvent> : E extends `onpointer${string}` ? EventHandler<PointerEvent> : E extends `ontouch${string}` ? EventHandler<TouchEvent> : E extends `onanimation${string}` ? EventHandler<AnimationEvent> : E extends `ontransition${string}` ? EventHandler<TransitionEvent> : E extends `onload` | `onerror` | `onabort` ? EventHandler<ProgressEvent> : E extends `oninput` | `onchange` | `onsubmit` | `onreset` ? EventHandler<Event> : EventHandler<Event>;
18
+ [K in keyof RemoveIndexSignature<T>]: K extends `on${string}` ? never : ChildNode extends T[K] ? never : Element extends T[K] ? never : HTMLElement extends T[K] ? never : K;
19
+ }[keyof RemoveIndexSignature<T>];
20
+ type TagNativeProps<T extends HTMLElement> = Partial<Omit<Pick<T, PropertiesOnly<T>>, GeneralRemove>> & TagEventHandlers<T>;
26
21
  export type TagProps<T extends HTMLElement = HTMLElement> = TagNativeProps<T> & ElementCommonAttrs & {
27
22
  ref?: HtmlRef<T> | RefSetter<T | null>;
28
23
  style?: string | null | undefined | TagStyles;
@@ -1 +1 @@
1
- {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../src/types/dom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../src/types/dom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { RemoveIndexSignature } from './common';
2
+ type RemapKeys<T, KeyMap extends Record<keyof any, keyof any>> = {
3
+ [K in keyof T as K extends keyof KeyMap ? KeyMap[K] : K]?: T[K];
4
+ };
5
+ type EventHandler<E extends Event> = (event: E) => void;
6
+ type DomEventHandlerX<E extends string> = E extends `ondrag${string}` ? EventHandler<DragEvent> : E extends `onmouse${string}` ? EventHandler<MouseEvent> : E extends `onkey${string}` ? EventHandler<KeyboardEvent> : E extends `onfocus` | `onblur` ? EventHandler<FocusEvent> : E extends `onwheel` ? EventHandler<WheelEvent> : E extends 'onclick' | `onpointer${string}` ? EventHandler<PointerEvent> : E extends `ontouch${string}` ? EventHandler<TouchEvent> : E extends `onanimation${string}` ? EventHandler<AnimationEvent> : E extends `ontransition${string}` ? EventHandler<TransitionEvent> : E extends `onload` | `onerror` | `onabort` ? EventHandler<ProgressEvent> : EventHandler<Event>;
7
+ type ToCamelCase<T extends string> = T extends `onmouse${infer Rest}` ? `onMouse${Capitalize<Rest>}` : T extends `onfullscreen${infer Rest}` ? `onFullscreen${Capitalize<Rest>}` : T extends `onkey${infer Rest}` ? `onKey${Capitalize<Rest>}` : T extends `ondrag${infer Rest}` ? `onDrag${Capitalize<Rest>}` : T extends `ontouch${infer Rest}` ? `onTouch${Capitalize<Rest>}` : T extends `onpointer${infer Rest}` ? `onPointer${Capitalize<Rest>}` : T extends `onanimation${infer Rest}` ? `onAnimation${Capitalize<Rest>}` : T extends `ontransition${infer Rest}` ? `onTransition${Capitalize<Rest>}` : T extends `on${infer Rest}` ? `on${Capitalize<Rest>}` : T;
8
+ type EventKeys<T extends HTMLElement> = {
9
+ [K in keyof RemoveIndexSignature<T>]: K extends `on${string}` ? K : never;
10
+ }[keyof RemoveIndexSignature<T>];
11
+ type EventHandlers<T extends HTMLElement> = {
12
+ [K in EventKeys<T>]: DomEventHandlerX<K>;
13
+ };
14
+ type mapLowerCaseToCamelCase<T extends HTMLElement> = {
15
+ [K in EventKeys<T>]: ToCamelCase<K>;
16
+ };
17
+ /**
18
+ * A map of events for the given HTMLElement-based type
19
+ * @example
20
+ * { onClick: (evt: PointerEvents) => void }
21
+ */
22
+ export type TagEventHandlers<T extends HTMLElement> = RemapKeys<EventHandlers<T>, mapLowerCaseToCamelCase<RemoveIndexSignature<T>>>;
23
+ export {};
24
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":""}
@@ -138,6 +138,8 @@ export type TagState = {
138
138
  * render, when the event handler is not yet set up but is presented in JSX.
139
139
  */
140
140
  events: Partial<Record<string, {
141
+ /** Adapted event name. The value that is passed to .add|removeEventListener. */
142
+ name: string;
141
143
  wrapper: EventListener;
142
144
  handler: Function | null;
143
145
  }>>;
@@ -1 +1 @@
1
- {"version":3,"file":"fiber.d.ts","sourceRoot":"","sources":["../../src/types/fiber.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fiber.d.ts","sourceRoot":"","sources":["../../src/types/fiber.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  import type { ReactContext } from './context';
2
- import type { ContextFiberNode } from './fiber';
2
+ import type { ContextFiberNode, FiberNode } from './fiber';
3
3
  import type { Ref } from './refs';
4
4
  export type UseStateItem<T = unknown> = {
5
5
  type: 'state';
6
6
  state: T;
7
7
  setter: StateSetter<T>;
8
+ destructor: null | (() => void);
9
+ move: (newFiber: FiberNode) => void;
8
10
  };
9
11
  export type UseMemoItem = {
10
12
  type: 'memo';
@@ -26,6 +28,7 @@ export type UseContextItem<T = unknown> = {
26
28
  type: 'context';
27
29
  ctx: ReactContext<T>;
28
30
  destructor: () => void;
31
+ move: (newFiber: FiberNode) => void;
29
32
  providerFiber: ContextFiberNode | null;
30
33
  };
31
34
  export type HookStateItem = UseStateItem | UseMemoItem | UseRefItem | UseEffectItem | UseContextItem;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/types/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAElC,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI;IACtC,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;IACT,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,CAAC,GAAG,OAAO,IAAI;IACpC,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,UAAU,CAAC;IACjB,EAAE,EAAE,aAAa,CAAC;IAClB,UAAU,EAAE,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAAI;IACxC,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACrB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,aAAa,GACrB,YAAY,GACZ,WAAW,GACX,UAAU,GACV,aAAa,GACb,cAAc,CAAC;AAEnB,MAAM,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;AAExC;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;AAEjC,uCAAuC;AACvC,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAC3B,SAAS,EACP,CAAC,CAAC,SAAS,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GACvC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KACjB,IAAI,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAC1B,MAAM,EAAE,WAAW,KAChB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAEzC,MAAM,MAAM,UAAU,GAElB,MAAM,GAEN,QAAQ,GAER,QAAQ,CAAC"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/types/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAElC,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI;IACtC,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;IACT,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACvB,UAAU,EAAE,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,CAAC,GAAG,OAAO,IAAI;IACpC,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,UAAU,CAAC;IACjB,EAAE,EAAE,aAAa,CAAC;IAClB,UAAU,EAAE,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAAI;IACxC,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACrB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC;IACpC,aAAa,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,aAAa,GACrB,YAAY,GACZ,WAAW,GACX,UAAU,GACV,aAAa,GACb,cAAc,CAAC;AAEnB,MAAM,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;AAExC;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;AAEjC,uCAAuC;AACvC,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAC3B,SAAS,EACP,CAAC,CAAC,SAAS,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GACvC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KACjB,IAAI,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAC1B,MAAM,EAAE,WAAW,KAChB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAEzC,MAAM,MAAM,UAAU,GAElB,MAAM,GAEN,QAAQ,GAER,QAAQ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@faiwer/react",
3
- "version": "0.8.2",
3
+ "version": "0.8.4",
4
4
  "description": "A hobby project. A naive and simplified React implementation",
5
5
  "keywords": ["react", "jsx", "hooks", "virtual-dom", "frontend", "ui-library"],
6
6
  "repository": {
@@ -15,7 +15,6 @@
15
15
  "types": "dist/index.d.ts",
16
16
  "files": [
17
17
  "dist/**/*",
18
- "src/jsx.d.ts",
19
18
  "README.md"
20
19
  ],
21
20
  "exports": {
@@ -23,6 +22,10 @@
23
22
  "types": "./dist/index.d.ts",
24
23
  "default": "./dist/index.js"
25
24
  },
25
+ "./client": {
26
+ "types": "./dist/index.d.ts",
27
+ "default": "./dist/index.js"
28
+ },
26
29
  "./jsx-runtime": {
27
30
  "types": "./dist/jsx-runtime.d.ts",
28
31
  "default": "./dist/jsx-runtime.js"
@@ -30,10 +33,13 @@
30
33
  "./jsx-dev-runtime": {
31
34
  "types": "./dist/jsx-dev-runtime.d.ts",
32
35
  "default": "./dist/jsx-dev-runtime.js"
36
+ },
37
+ "./jsx": {
38
+ "types": "./dist/jsx.d.ts"
33
39
  }
34
40
  },
35
41
  "scripts": {
36
- "build": "npm run clean && npx tsgo -p tsconfig.build.json && npx tsc-alias -p tsconfig.build.json",
42
+ "build": "npm run clean && npx tsgo -p tsconfig.build.json && npx tsc-alias -p tsconfig.build.json && cp src/jsx.d.ts dist/jsx.d.ts",
37
43
  "clean": "rm -rf dist",
38
44
  "prepublishOnly": "npm run build",
39
45
  "test": "jest",
@@ -1,6 +0,0 @@
1
- import type { FiberNode } from '../../types';
2
- /**
3
- * Validates the given fiber node and its subnodes. In case of error it throws.
4
- */
5
- export declare const validateTree: (node: FiberNode, path?: string) => void;
6
- //# sourceMappingURL=validateTree.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validateTree.d.ts","sourceRoot":"","sources":["../../../src/core/reconciliation/validateTree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAGpD;;GAEG;AACH,eAAO,MAAM,YAAY,0CA+BxB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"validateTree.js","sourceRoot":"","sources":["../../../src/core/reconciliation/validateTree.ts"],"names":[],"mappings":"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"}