@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.
- package/README.md +3 -0
- package/dist/core/Children.d.ts +11 -0
- package/dist/core/Children.d.ts.map +1 -0
- package/dist/core/Children.js +35 -0
- package/dist/core/Children.js.map +1 -0
- package/dist/core/actions/createTag.action.d.ts.map +1 -1
- package/dist/core/actions/createTag.action.js +85 -1
- package/dist/core/actions/createTag.action.js.map +1 -1
- package/dist/core/actions/dom/attributes.d.ts +4 -0
- package/dist/core/actions/dom/attributes.d.ts.map +1 -0
- package/dist/core/actions/dom/attributes.js +53 -0
- package/dist/core/actions/dom/attributes.js.map +1 -0
- package/dist/core/actions/dom/css.d.ts +6 -0
- package/dist/core/actions/dom/css.d.ts.map +1 -0
- package/dist/core/actions/dom/css.js +53 -0
- package/dist/core/actions/dom/css.js.map +1 -0
- package/dist/core/actions/dom/events.d.ts +3 -0
- package/dist/core/actions/dom/events.d.ts.map +1 -0
- package/dist/core/actions/dom/events.js +33 -0
- package/dist/core/actions/dom/events.js.map +1 -0
- package/dist/core/actions/dom/svg.d.ts +7 -0
- package/dist/core/actions/dom/svg.d.ts.map +1 -0
- package/dist/core/actions/dom/svg.js +76 -0
- package/dist/core/actions/dom/svg.js.map +1 -0
- package/dist/core/actions/helpers.d.ts +2 -2
- package/dist/core/actions/helpers.d.ts.map +1 -1
- package/dist/core/actions/helpers.js +17 -2
- package/dist/core/actions/helpers.js.map +1 -1
- package/dist/core/actions/remove.action.d.ts +2 -1
- package/dist/core/actions/remove.action.d.ts.map +1 -1
- package/dist/core/actions/remove.action.js +5 -5
- package/dist/core/actions/remove.action.js.map +1 -1
- package/dist/core/actions/replace.action.d.ts.map +1 -1
- package/dist/core/actions/replace.action.js +18 -0
- package/dist/core/actions/replace.action.js.map +1 -1
- package/dist/core/actions/setAttr.action.d.ts.map +1 -1
- package/dist/core/actions/setAttr.action.js +11 -85
- package/dist/core/actions/setAttr.action.js.map +1 -1
- package/dist/core/actions/setRef.action.d.ts.map +1 -1
- package/dist/core/actions/setRef.action.js +1 -2
- package/dist/core/actions/setRef.action.js.map +1 -1
- package/dist/core/classComponent.d.ts +33 -0
- package/dist/core/classComponent.d.ts.map +1 -0
- package/dist/core/classComponent.js +126 -0
- package/dist/core/classComponent.js.map +1 -0
- package/dist/core/components.d.ts.map +1 -1
- package/dist/core/components.js +4 -0
- package/dist/core/components.js.map +1 -1
- package/dist/core/createElement.d.ts +8 -2
- package/dist/core/createElement.d.ts.map +1 -1
- package/dist/core/createElement.js +16 -2
- package/dist/core/createElement.js.map +1 -1
- package/dist/core/createRoot.js.map +1 -1
- package/dist/core/reconciliation/collect/fromChildrenPair.js +16 -12
- package/dist/core/reconciliation/collect/fromChildrenPair.js.map +1 -1
- package/dist/core/reconciliation/collect/fromFiberPair.d.ts.map +1 -1
- package/dist/core/reconciliation/collect/fromFiberPair.js +4 -0
- package/dist/core/reconciliation/collect/fromFiberPair.js.map +1 -1
- package/dist/core/reconciliation/effects.d.ts.map +1 -1
- package/dist/core/reconciliation/effects.js +0 -5
- package/dist/core/reconciliation/effects.js.map +1 -1
- package/dist/core/reconciliation/errors/stack.d.ts +3 -0
- package/dist/core/reconciliation/errors/stack.d.ts.map +1 -0
- package/dist/core/reconciliation/errors/stack.js +23 -0
- package/dist/core/reconciliation/errors/stack.js.map +1 -0
- package/dist/core/reconciliation/fibers.d.ts +6 -0
- package/dist/core/reconciliation/fibers.d.ts.map +1 -1
- package/dist/core/reconciliation/fibers.js +6 -0
- package/dist/core/reconciliation/fibers.js.map +1 -1
- package/dist/core/reconciliation/invalidateFiber.d.ts.map +1 -1
- package/dist/core/reconciliation/invalidateFiber.js +5 -0
- package/dist/core/reconciliation/invalidateFiber.js.map +1 -1
- package/dist/core/reconciliation/mount.d.ts.map +1 -1
- package/dist/core/reconciliation/mount.js +3 -3
- package/dist/core/reconciliation/mount.js.map +1 -1
- package/dist/core/reconciliation/postCommit.d.ts.map +1 -1
- package/dist/core/reconciliation/postCommit.js +3 -1
- package/dist/core/reconciliation/postCommit.js.map +1 -1
- package/dist/core/reconciliation/render.js +4 -4
- package/dist/core/reconciliation/render.js.map +1 -1
- package/dist/core/reconciliation/typeGuards.d.ts +6 -1
- package/dist/core/reconciliation/typeGuards.d.ts.map +1 -1
- package/dist/core/reconciliation/typeGuards.js +12 -0
- package/dist/core/reconciliation/typeGuards.js.map +1 -1
- package/dist/core/reconciliation/validateApp.d.ts +3 -0
- package/dist/core/reconciliation/validateApp.d.ts.map +1 -0
- package/dist/core/reconciliation/{validateTree.js → validateApp.js} +21 -2
- package/dist/core/reconciliation/validateApp.js.map +1 -0
- package/dist/hooks/useContext.d.ts.map +1 -1
- package/dist/hooks/useContext.js +16 -0
- package/dist/hooks/useContext.js.map +1 -1
- package/dist/hooks/useState.d.ts.map +1 -1
- package/dist/hooks/useState.js +25 -0
- package/dist/hooks/useState.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/jsx-dev-runtime.d.ts +4 -4
- package/dist/jsx-dev-runtime.d.ts.map +1 -1
- package/dist/jsx-dev-runtime.js +4 -4
- package/dist/jsx-dev-runtime.js.map +1 -1
- package/dist/jsx-runtime.d.ts +3 -3
- package/dist/jsx-runtime.d.ts.map +1 -1
- package/dist/jsx-runtime.js +3 -3
- package/dist/jsx-runtime.js.map +1 -1
- package/{src → dist}/jsx.d.ts +25 -0
- package/dist/mocks.d.ts +28 -0
- package/dist/mocks.d.ts.map +1 -0
- package/dist/mocks.js +33 -0
- package/dist/mocks.js.map +1 -0
- package/dist/types/actions.d.ts +1 -0
- package/dist/types/actions.d.ts.map +1 -1
- package/dist/types/app.d.ts +5 -0
- package/dist/types/app.d.ts.map +1 -1
- package/dist/types/common.d.ts +4 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/common.js +2 -0
- package/dist/types/common.js.map +1 -0
- package/dist/types/component.d.ts +1 -0
- package/dist/types/component.d.ts.map +1 -1
- package/dist/types/dom.d.ts +5 -10
- package/dist/types/dom.d.ts.map +1 -1
- package/dist/types/events.d.ts +24 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +2 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/fiber.d.ts +2 -0
- package/dist/types/fiber.d.ts.map +1 -1
- package/dist/types/hooks.d.ts +4 -1
- package/dist/types/hooks.d.ts.map +1 -1
- package/package.json +9 -3
- package/dist/core/reconciliation/validateTree.d.ts +0 -6
- package/dist/core/reconciliation/validateTree.d.ts.map +0 -1
- package/dist/core/reconciliation/validateTree.js.map +0 -1
package/dist/mocks.d.ts
ADDED
|
@@ -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"}
|
package/dist/types/actions.d.ts
CHANGED
|
@@ -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;
|
|
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"}
|
package/dist/types/app.d.ts
CHANGED
|
@@ -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
|
package/dist/types/app.d.ts.map
CHANGED
|
@@ -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 @@
|
|
|
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 @@
|
|
|
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"}
|
package/dist/types/dom.d.ts
CHANGED
|
@@ -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]:
|
|
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;
|
package/dist/types/dom.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../src/types/dom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEjD,gDAAgD;AAChD,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC;AAE/C,MAAM,MAAM,YAAY,GAEpB,MAAM,GACN,MAAM,GACN,OAAO,GAEP,IAAI,GACJ,SAAS,GAET,QAAQ,GACR,SAAS,CAAC;
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":""}
|
package/dist/types/fiber.d.ts
CHANGED
|
@@ -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":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE7C;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,iBAAiB,GACjB,aAAa,GACb,YAAY,GACZ,kBAAkB,GAClB,gBAAgB,GAChB,eAAe,CAAC;AAEpB,KAAK,WAAW,GAAG;IACjB,qDAAqD;IACrD,EAAE,EAAE,MAAM,CAAC;IACX;+BAC2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,MAAM,EAAE,SAAS,CAAC;IAClB,wDAAwD;IACxD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;;;;;;;OAQG;IACH,QAAQ,EAAE,SAAS,EAAE,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB;IACvB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;IAErB,SAAS,EAAE,IAAI,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,IAAI,CAAC;IACZ,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,IAAI,CAAC;IACV,GAAG,EAAE,IAAI,CAAC;CACX,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG;IAC7C,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACxC,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,YAAY,CAAC;IACpB;;;;;;;;;OASG;IACH,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;IAErB,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,IAAI,CAAC;IACV,GAAG,EAAE,IAAI,CAAC;CACX,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxB,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,IAAI,GAAG,IAAI,CAAC;IAErB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,GAAG,EAAE,IAAI,CAAC;IACV,GAAG,EAAE,IAAI,CAAC;IACV,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG;IAC1C,IAAI,EAAE,KAAK,CAAC;IACZ,yBAAyB;IACzB,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;IAEZ,KAAK,EAAE,IAAI,CAAC;IACZ,SAAS,EAAE,IAAI,CAAC;IAChB,GAAG,EAAE,IAAI,CAAC;CACX,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAC5C,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;IACrB,yCAAyC;IACzC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAExB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,IAAI,CAAC;IACZ,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,IAAI,CAAC;IACV,SAAS,EAAE,IAAI,CAAC;IAChB,GAAG,EAAE,IAAI,CAAC;CACX,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,OAAO,IAAI,IAAI,CAC9C,iBAAiB,EACjB,MAAM,GAAG,OAAO,GAAG,MAAM,CAC1B,GAAG;IACF,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE;QAAE,KAAK,EAAE,CAAC,CAAA;KAAE,CAAC;IACpB,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB;;;;OAIG;IACH,MAAM,EAAE,OAAO,CACb,MAAM,CACJ,MAAM,EACN;QACE,gFAAgF;QAChF,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,aAAa,CAAC;QACvB,OAAO,EAAE,QAAQ,GAAG,IAAI,CAAC;KAC1B,CACF,CACF,CAAC;IACF,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI,WAAW,GAAG;IACpD,IAAI,EAAE,KAAK,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,EAAE,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAChD,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAEpC,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI;IACtD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC"}
|
package/dist/types/hooks.d.ts
CHANGED
|
@@ -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;
|
|
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.
|
|
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 +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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"}
|