@adam26davidson/char-matrix-react-renderer 0.0.2 → 0.0.3
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/dist/__tests__/mockRenderTarget.d.ts.map +1 -1
- package/dist/__tests__/mockRenderTarget.js +2 -0
- package/dist/__tests__/mockRenderTarget.js.map +1 -1
- package/dist/hooks.d.ts +24 -0
- package/dist/hooks.d.ts.map +1 -0
- package/dist/hooks.js +75 -0
- package/dist/hooks.js.map +1 -0
- package/dist/hostConfig.d.ts +13 -3
- package/dist/hostConfig.d.ts.map +1 -1
- package/dist/hostConfig.js +162 -22
- package/dist/hostConfig.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/renderer.d.ts.map +1 -1
- package/dist/renderer.js +5 -1
- package/dist/renderer.js.map +1 -1
- package/dist/types.d.ts +15 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mockRenderTarget.d.ts","sourceRoot":"","sources":["../../src/__tests__/mockRenderTarget.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAc,MAAM,6BAA6B,CAAC;AAErF;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,SAAK,EACV,MAAM,SAAK,GACV,YAAY,GAAG;IAChB,kBAAkB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACjC,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;CAC7B,
|
|
1
|
+
{"version":3,"file":"mockRenderTarget.d.ts","sourceRoot":"","sources":["../../src/__tests__/mockRenderTarget.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAc,MAAM,6BAA6B,CAAC;AAErF;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,SAAK,EACV,MAAM,SAAK,GACV,YAAY,GAAG;IAChB,kBAAkB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACjC,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;CAC7B,CA6DA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mockRenderTarget.js","sourceRoot":"","sources":["../../src/__tests__/mockRenderTarget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAGvD;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAK,GAAG,EAAE,EACV,MAAM,GAAG,EAAE;IAKX,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAW,CAAC;IAC9C,IAAI,WAAW,GAAmB,IAAI,CAAC;IAEvC,MAAM,MAAM,GAGR;QACF,kBAAkB;QAClB,IAAI,WAAW;YACb,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,IAAI,WAAW,CAAC,EAAkB;YAChC,WAAW,GAAG,EAAE,CAAC;QACnB,CAAC;QACD,SAAS,CAAC,OAAmB,IAAG,CAAC;QACjC,mBAAmB,CACjB,KAAa,EACb,SAAmB,EACnB,OAAkB,EAClB,OAAgB,IACf,CAAC;QACJ,mBAAmB,CAAC,SAAmB,EAAE,OAAkB;YACzD,OAAO,GAAG,CAAC;QACb,CAAC;QACD,qBAAqB,CACnB,KAAa,EACb,SAAmB,EACnB,OAAkB,EAClB,OAAgB,IACf,CAAC;QACJ,cAAc;YACZ,OAAO,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO;YACL,OAAO,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,WAAW;YACT,OAAO,KAAK,CAAC;QACf,CAAC;QACD,eAAe,CAAC,OAAgB;YAC9B,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QACD,iBAAiB,CAAC,OAAgB;YAChC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,CAAC,OAAgB;YACtB,2BAA2B;YAC3B,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,CAAC,kBAAkB,EAAE,CAAC;YACnC,CAAC;YACD,WAAW,GAAG,OAAO,CAAC;YACtB,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7B,CAAC;QACD,OAAO;YACL,OAAO,
|
|
1
|
+
{"version":3,"file":"mockRenderTarget.js","sourceRoot":"","sources":["../../src/__tests__/mockRenderTarget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAGvD;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAK,GAAG,EAAE,EACV,MAAM,GAAG,EAAE;IAKX,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAW,CAAC;IAC9C,IAAI,WAAW,GAAmB,IAAI,CAAC;IAEvC,MAAM,MAAM,GAGR;QACF,kBAAkB;QAClB,IAAI,WAAW;YACb,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,IAAI,WAAW,CAAC,EAAkB;YAChC,WAAW,GAAG,EAAE,CAAC;QACnB,CAAC;QACD,SAAS,CAAC,OAAmB,IAAG,CAAC;QACjC,mBAAmB,CACjB,KAAa,EACb,SAAmB,EACnB,OAAkB,EAClB,OAAgB,IACf,CAAC;QACJ,mBAAmB,CAAC,SAAmB,EAAE,OAAkB;YACzD,OAAO,GAAG,CAAC;QACb,CAAC;QACD,qBAAqB,CACnB,KAAa,EACb,SAAmB,EACnB,OAAkB,EAClB,OAAgB,IACf,CAAC;QACJ,cAAc;YACZ,OAAO,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO;YACL,OAAO,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,WAAW;YACT,OAAO,KAAK,CAAC;QACf,CAAC;QACD,eAAe,CAAC,OAAgB;YAC9B,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QACD,iBAAiB,CAAC,OAAgB;YAChC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,CAAC,OAAgB;YACtB,2BAA2B;YAC3B,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,CAAC,kBAAkB,EAAE,CAAC;YACnC,CAAC;YACD,WAAW,GAAG,OAAO,CAAC;YACtB,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7B,CAAC;QACD,OAAO;YACL,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvE,OAAO,WAAW,CAAC;QACrB,CAAC;KACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/hooks.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { RefObject } from "react";
|
|
2
|
+
import type { RenderLoopController } from "@adam26davidson/char-matrix";
|
|
3
|
+
import type { CMElementRef } from "./types";
|
|
4
|
+
export declare const RenderLoopContext: import("react").Context<RenderLoopController | null>;
|
|
5
|
+
/**
|
|
6
|
+
* Access the RenderLoopController from a React component.
|
|
7
|
+
* Returns null if no controller was provided.
|
|
8
|
+
*/
|
|
9
|
+
export declare function useRenderLoop(): RenderLoopController | null;
|
|
10
|
+
/**
|
|
11
|
+
* Imperative animation controls for a char-matrix element ref.
|
|
12
|
+
*/
|
|
13
|
+
export declare function useAnimation(ref: RefObject<CMElementRef | null>): {
|
|
14
|
+
triggerEntrance(onComplete?: () => void): void;
|
|
15
|
+
triggerExit(onComplete?: () => void): void;
|
|
16
|
+
isAnimating(): boolean;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Polls an async data source on an interval.
|
|
20
|
+
* Calls onData with the result, onError on failure.
|
|
21
|
+
* The first fetch happens immediately.
|
|
22
|
+
*/
|
|
23
|
+
export declare function usePolledData<T>(fetcher: () => Promise<T>, intervalMs: number, onData: (data: T) => void, onError?: (error: unknown) => void): void;
|
|
24
|
+
//# sourceMappingURL=hooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAM5C,eAAO,MAAM,iBAAiB,sDAAmD,CAAC;AAElF;;;GAGG;AACH,wBAAgB,aAAa,IAAI,oBAAoB,GAAG,IAAI,CAE3D;AAMD;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC;iCAE/B,MAAM,IAAI;6BAMd,MAAM,IAAI;;EAUtC;AAMD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAC7B,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACzB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CA6BN"}
|
package/dist/hooks.js
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { createContext, useContext, useEffect, useRef } from "react";
|
|
2
|
+
// ---------------------------------------------------------------------------
|
|
3
|
+
// Render Loop Context
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
export const RenderLoopContext = createContext(null);
|
|
6
|
+
/**
|
|
7
|
+
* Access the RenderLoopController from a React component.
|
|
8
|
+
* Returns null if no controller was provided.
|
|
9
|
+
*/
|
|
10
|
+
export function useRenderLoop() {
|
|
11
|
+
return useContext(RenderLoopContext);
|
|
12
|
+
}
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
// useAnimation Hook
|
|
15
|
+
// ---------------------------------------------------------------------------
|
|
16
|
+
/**
|
|
17
|
+
* Imperative animation controls for a char-matrix element ref.
|
|
18
|
+
*/
|
|
19
|
+
export function useAnimation(ref) {
|
|
20
|
+
return {
|
|
21
|
+
triggerEntrance(onComplete) {
|
|
22
|
+
const el = ref.current;
|
|
23
|
+
if (el && el.getStage() === "main") {
|
|
24
|
+
el.startTransition("enter", onComplete);
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
triggerExit(onComplete) {
|
|
28
|
+
const el = ref.current;
|
|
29
|
+
if (el) {
|
|
30
|
+
el.startTransition("exit", onComplete);
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
isAnimating() {
|
|
34
|
+
return ref.current?.getAnimationHandler()?.hasActiveAnimation() ?? false;
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
// ---------------------------------------------------------------------------
|
|
39
|
+
// usePolledData Hook
|
|
40
|
+
// ---------------------------------------------------------------------------
|
|
41
|
+
/**
|
|
42
|
+
* Polls an async data source on an interval.
|
|
43
|
+
* Calls onData with the result, onError on failure.
|
|
44
|
+
* The first fetch happens immediately.
|
|
45
|
+
*/
|
|
46
|
+
export function usePolledData(fetcher, intervalMs, onData, onError) {
|
|
47
|
+
// Stable refs for callbacks that may change between renders
|
|
48
|
+
const fetcherRef = useRef(fetcher);
|
|
49
|
+
fetcherRef.current = fetcher;
|
|
50
|
+
const onDataRef = useRef(onData);
|
|
51
|
+
const onErrorRef = useRef(onError);
|
|
52
|
+
onDataRef.current = onData;
|
|
53
|
+
onErrorRef.current = onError;
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
let active = true;
|
|
56
|
+
async function poll() {
|
|
57
|
+
try {
|
|
58
|
+
const data = await fetcherRef.current();
|
|
59
|
+
if (active)
|
|
60
|
+
onDataRef.current(data);
|
|
61
|
+
}
|
|
62
|
+
catch (err) {
|
|
63
|
+
if (active)
|
|
64
|
+
onErrorRef.current?.(err);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
poll(); // Immediate first fetch
|
|
68
|
+
const id = setInterval(poll, intervalMs);
|
|
69
|
+
return () => {
|
|
70
|
+
active = false;
|
|
71
|
+
clearInterval(id);
|
|
72
|
+
};
|
|
73
|
+
}, [intervalMs]);
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAKrE,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAA8B,IAAI,CAAC,CAAC;AAElF;;;GAGG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,UAAU,CAAC,iBAAiB,CAAC,CAAC;AACvC,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,GAAmC;IAC9D,OAAO;QACL,eAAe,CAAC,UAAuB;YACrC,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;YACvB,IAAI,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;gBACnC,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,WAAW,CAAC,UAAuB;YACjC,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;YACvB,IAAI,EAAE,EAAE,CAAC;gBACP,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QACD,WAAW;YACT,OAAO,GAAG,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,kBAAkB,EAAE,IAAI,KAAK,CAAC;QAC3E,CAAC;KACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAyB,EACzB,UAAkB,EAClB,MAAyB,EACzB,OAAkC;IAElC,4DAA4D;IAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IACnC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;IAC7B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IACnC,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC;IAC3B,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;IAE7B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,GAAG,IAAI,CAAC;QAElB,KAAK,UAAU,IAAI;YACjB,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;gBACxC,IAAI,MAAM;oBAAE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,MAAM;oBAAE,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAED,IAAI,EAAE,CAAC,CAAC,wBAAwB;QAChC,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAEzC,OAAO,GAAG,EAAE;YACV,MAAM,GAAG,KAAK,CAAC;YACf,aAAa,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;AACnB,CAAC"}
|
package/dist/hostConfig.d.ts
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import type { RenderTarget, Element, Alignment, Axis, SizingMethod, CursorType, ColumnDef, ElementAnimationHandler } from "@adam26davidson/char-matrix";
|
|
2
|
-
export type CMElementType = "cm-container" | "cm-text" | "cm-table";
|
|
1
|
+
import type { RenderTarget, Element, Alignment, Axis, SizingMethod, CursorType, ColumnDef, ElementAnimationHandler, PositionMode } from "@adam26davidson/char-matrix";
|
|
2
|
+
export type CMElementType = "cm-container" | "cm-text" | "cm-table" | "cm-overlay";
|
|
3
3
|
/** Props common to all char-matrix elements (mirrors ElementConfig minus view). */
|
|
4
4
|
interface CMBaseProps {
|
|
5
5
|
/** Standard React reconciliation key — stripped from props at runtime. */
|
|
6
6
|
key?: string | number;
|
|
7
|
+
/** React ref — resolves to the underlying Element instance (typed as CMElementRef). */
|
|
8
|
+
ref?: React.Ref<any>;
|
|
7
9
|
/** The char-matrix element key. React's `key` is stripped from props, so use `elementKey`. */
|
|
8
10
|
elementKey: string;
|
|
9
11
|
width?: number;
|
|
@@ -27,6 +29,9 @@ interface CMBaseProps {
|
|
|
27
29
|
entranceTiming?: "parallel" | "series";
|
|
28
30
|
exitTiming?: "parallel" | "series";
|
|
29
31
|
zIndex?: number;
|
|
32
|
+
position?: PositionMode;
|
|
33
|
+
/** When this value changes, the element's entrance animation is re-triggered. */
|
|
34
|
+
animationKey?: string | number;
|
|
30
35
|
onClick?: () => void;
|
|
31
36
|
}
|
|
32
37
|
export interface CMContainerProps extends CMBaseProps {
|
|
@@ -46,11 +51,16 @@ export interface CMTableProps extends CMBaseProps {
|
|
|
46
51
|
titleAlign?: "start" | "center" | "end";
|
|
47
52
|
showRowSeparators?: boolean;
|
|
48
53
|
}
|
|
49
|
-
|
|
54
|
+
/** Overlay props — same as container, rendered into the overlay layer instead of the element tree. */
|
|
55
|
+
export interface CMOverlayProps extends CMContainerProps {
|
|
56
|
+
}
|
|
57
|
+
export type CMProps = CMContainerProps | CMTextProps | CMTableProps | CMOverlayProps;
|
|
50
58
|
/** The root container object passed to the reconciler. */
|
|
51
59
|
export interface RootContainer {
|
|
52
60
|
view: RenderTarget;
|
|
53
61
|
rootElement: Element | null;
|
|
62
|
+
/** Elements tagged as overlays — bypass normal parent-child management. */
|
|
63
|
+
overlayInstances: WeakSet<Element>;
|
|
54
64
|
}
|
|
55
65
|
export declare const hostConfig: any;
|
|
56
66
|
export {};
|
package/dist/hostConfig.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hostConfig.d.ts","sourceRoot":"","sources":["../src/hostConfig.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,YAAY,EACZ,OAAO,EAKP,SAAS,EACT,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,SAAS,EACT,uBAAuB,
|
|
1
|
+
{"version":3,"file":"hostConfig.d.ts","sourceRoot":"","sources":["../src/hostConfig.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,YAAY,EACZ,OAAO,EAKP,SAAS,EACT,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,SAAS,EACT,uBAAuB,EACvB,YAAY,EACb,MAAM,6BAA6B,CAAC;AAsBrC,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC;AAEnF,mFAAmF;AACnF,UAAU,WAAW;IACnB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,uFAAuF;IACvF,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,8FAA8F;IAC9F,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;IAC3C,cAAc,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC;IACvC,UAAU,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,QAAQ,EAAE,IAAI,CAAC;IACf,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,WAAY,SAAQ,WAAW;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;CAChD;AAED,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACxC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,sGAAsG;AACtG,MAAM,WAAW,cAAe,SAAQ,gBAAgB;CAAG;AAE3D,MAAM,MAAM,OAAO,GAAG,gBAAgB,GAAG,WAAW,GAAG,YAAY,GAAG,cAAc,CAAC;AAErF,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,YAAY,CAAC;IACnB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;IAC5B,2EAA2E;IAC3E,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;CACpC;AAmKD,eAAO,MAAM,UAAU,EAAE,GAiTxB,CAAC"}
|
package/dist/hostConfig.js
CHANGED
|
@@ -1,12 +1,36 @@
|
|
|
1
1
|
// react-reconciler types are used via the `any`-typed hostConfig export.
|
|
2
2
|
import { ContainerElement, TextElement, TableElement, } from "@adam26davidson/char-matrix";
|
|
3
3
|
// ---------------------------------------------------------------------------
|
|
4
|
+
// Type guards for element instances
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
function isContainerElement(instance) {
|
|
7
|
+
return instance instanceof ContainerElement;
|
|
8
|
+
}
|
|
9
|
+
function isTextElement(instance) {
|
|
10
|
+
return instance instanceof TextElement;
|
|
11
|
+
}
|
|
12
|
+
function isTableElement(instance) {
|
|
13
|
+
return instance instanceof TableElement;
|
|
14
|
+
}
|
|
15
|
+
// ---------------------------------------------------------------------------
|
|
16
|
+
// Overlay tracking
|
|
17
|
+
// ---------------------------------------------------------------------------
|
|
18
|
+
/** Map from element instance to the RootContainer it was created in. */
|
|
19
|
+
const instanceRootMap = new WeakMap();
|
|
20
|
+
function isOverlay(instance) {
|
|
21
|
+
const root = instanceRootMap.get(instance);
|
|
22
|
+
return root?.overlayInstances.has(instance) ?? false;
|
|
23
|
+
}
|
|
24
|
+
function unmarkOverlay(instance) {
|
|
25
|
+
const root = instanceRootMap.get(instance);
|
|
26
|
+
root?.overlayInstances.delete(instance);
|
|
27
|
+
}
|
|
28
|
+
// ---------------------------------------------------------------------------
|
|
4
29
|
// Element creation helpers
|
|
5
30
|
// ---------------------------------------------------------------------------
|
|
6
|
-
|
|
31
|
+
/** Extract the shared base config fields from props (everything except key/view). */
|
|
32
|
+
function extractBaseFields(props) {
|
|
7
33
|
return {
|
|
8
|
-
key: props.elementKey,
|
|
9
|
-
view,
|
|
10
34
|
width: props.width,
|
|
11
35
|
widthType: props.widthType,
|
|
12
36
|
height: props.height,
|
|
@@ -28,8 +52,12 @@ function buildBaseConfig(props, view) {
|
|
|
28
52
|
entranceTiming: props.entranceTiming,
|
|
29
53
|
exitTiming: props.exitTiming,
|
|
30
54
|
zIndex: props.zIndex,
|
|
55
|
+
position: props.position,
|
|
31
56
|
};
|
|
32
57
|
}
|
|
58
|
+
function buildBaseConfig(props, view) {
|
|
59
|
+
return { key: props.elementKey, view, ...extractBaseFields(props) };
|
|
60
|
+
}
|
|
33
61
|
function createElement(type, props, view) {
|
|
34
62
|
const base = buildBaseConfig(props, view);
|
|
35
63
|
let instance;
|
|
@@ -65,6 +93,17 @@ function createElement(type, props, view) {
|
|
|
65
93
|
});
|
|
66
94
|
break;
|
|
67
95
|
}
|
|
96
|
+
case "cm-overlay": {
|
|
97
|
+
const p = props;
|
|
98
|
+
instance = new ContainerElement({
|
|
99
|
+
...base,
|
|
100
|
+
mainAxis: p.mainAxis,
|
|
101
|
+
justifyContent: p.justifyContent,
|
|
102
|
+
alignItems: p.alignItems,
|
|
103
|
+
spacing: p.spacing,
|
|
104
|
+
});
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
68
107
|
default:
|
|
69
108
|
throw new Error(`Unknown char-matrix element type: ${type}`);
|
|
70
109
|
}
|
|
@@ -73,11 +112,9 @@ function createElement(type, props, view) {
|
|
|
73
112
|
instance.setOnClick(props.onClick);
|
|
74
113
|
}
|
|
75
114
|
// Wire animation handler — DefaultAnimationHandler needs setElement() called
|
|
76
|
-
// after the element is constructed.
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
if (handler?.setElement) {
|
|
80
|
-
handler.setElement(instance);
|
|
115
|
+
// after the element is constructed.
|
|
116
|
+
if (props.animationHandler?.setElement) {
|
|
117
|
+
props.animationHandler.setElement(instance);
|
|
81
118
|
}
|
|
82
119
|
return instance;
|
|
83
120
|
}
|
|
@@ -116,24 +153,46 @@ export const hostConfig = {
|
|
|
116
153
|
},
|
|
117
154
|
// --------------- Instance creation ---------------
|
|
118
155
|
createInstance(type, props, rootContainer) {
|
|
119
|
-
|
|
156
|
+
const instance = createElement(type, props, rootContainer.view);
|
|
157
|
+
instanceRootMap.set(instance, rootContainer);
|
|
158
|
+
if (type === "cm-overlay") {
|
|
159
|
+
rootContainer.overlayInstances.add(instance);
|
|
160
|
+
}
|
|
161
|
+
return instance;
|
|
120
162
|
},
|
|
121
163
|
createTextInstance() {
|
|
122
164
|
throw new Error("Raw text nodes are not supported. Use <cm-text text=\"...\"> instead.");
|
|
123
165
|
},
|
|
124
166
|
// --------------- Children (mutation mode) ---------------
|
|
125
167
|
appendInitialChild(parent, child) {
|
|
168
|
+
if (isOverlay(child)) {
|
|
169
|
+
// Overlays are deferred to commitMount — skip normal child tracking.
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
126
172
|
const children = getTrackedChildren(parent);
|
|
127
173
|
children.push(child);
|
|
128
174
|
// Don't commit yet — React calls this during the "complete" phase.
|
|
129
175
|
// finalizeInitialChildren or the commit phase will handle it.
|
|
130
176
|
},
|
|
131
177
|
appendChild(parent, child) {
|
|
178
|
+
if (isOverlay(child)) {
|
|
179
|
+
const root = instanceRootMap.get(child);
|
|
180
|
+
if (root?.view.addOverlay) {
|
|
181
|
+
root.view.addOverlay(child);
|
|
182
|
+
}
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
132
185
|
const children = getTrackedChildren(parent);
|
|
133
186
|
children.push(child);
|
|
134
187
|
commitChildren(parent);
|
|
135
188
|
},
|
|
136
189
|
appendChildToContainer(container, child) {
|
|
190
|
+
if (isOverlay(child)) {
|
|
191
|
+
if (container.view.addOverlay) {
|
|
192
|
+
container.view.addOverlay(child);
|
|
193
|
+
}
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
137
196
|
container.rootElement = child;
|
|
138
197
|
// Use setRoot if available (MatrixView implements this) for full integration
|
|
139
198
|
// with the render loop. Falls back to registerWithView for basic targets.
|
|
@@ -145,6 +204,13 @@ export const hostConfig = {
|
|
|
145
204
|
}
|
|
146
205
|
},
|
|
147
206
|
insertBefore(parent, child, beforeChild) {
|
|
207
|
+
if (isOverlay(child)) {
|
|
208
|
+
const root = instanceRootMap.get(child);
|
|
209
|
+
if (root?.view.addOverlay) {
|
|
210
|
+
root.view.addOverlay(child);
|
|
211
|
+
}
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
148
214
|
const children = getTrackedChildren(parent);
|
|
149
215
|
const idx = children.indexOf(beforeChild);
|
|
150
216
|
if (idx >= 0) {
|
|
@@ -156,6 +222,12 @@ export const hostConfig = {
|
|
|
156
222
|
commitChildren(parent);
|
|
157
223
|
},
|
|
158
224
|
insertInContainerBefore(container, child, _beforeChild) {
|
|
225
|
+
if (isOverlay(child)) {
|
|
226
|
+
if (container.view.addOverlay) {
|
|
227
|
+
container.view.addOverlay(child);
|
|
228
|
+
}
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
159
231
|
container.rootElement = child;
|
|
160
232
|
if (container.view.setRoot) {
|
|
161
233
|
container.view.setRoot(child);
|
|
@@ -165,6 +237,14 @@ export const hostConfig = {
|
|
|
165
237
|
}
|
|
166
238
|
},
|
|
167
239
|
removeChild(parent, child) {
|
|
240
|
+
if (isOverlay(child)) {
|
|
241
|
+
const root = instanceRootMap.get(child);
|
|
242
|
+
if (root?.view.removeOverlay) {
|
|
243
|
+
root.view.removeOverlay(child);
|
|
244
|
+
}
|
|
245
|
+
unmarkOverlay(child);
|
|
246
|
+
return;
|
|
247
|
+
}
|
|
168
248
|
const children = getTrackedChildren(parent);
|
|
169
249
|
const idx = children.indexOf(child);
|
|
170
250
|
if (idx >= 0) {
|
|
@@ -174,6 +254,13 @@ export const hostConfig = {
|
|
|
174
254
|
commitChildren(parent);
|
|
175
255
|
},
|
|
176
256
|
removeChildFromContainer(container, child) {
|
|
257
|
+
if (isOverlay(child)) {
|
|
258
|
+
if (container.view.removeOverlay) {
|
|
259
|
+
container.view.removeOverlay(child);
|
|
260
|
+
}
|
|
261
|
+
unmarkOverlay(child);
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
177
264
|
child.unregisterWithView();
|
|
178
265
|
if (container.rootElement === child) {
|
|
179
266
|
container.rootElement = null;
|
|
@@ -188,8 +275,9 @@ export const hostConfig = {
|
|
|
188
275
|
// --------------- Updates ---------------
|
|
189
276
|
prepareUpdate(_instance, _type, oldProps, newProps) {
|
|
190
277
|
// Return a truthy payload if any prop (other than children) changed.
|
|
191
|
-
const
|
|
192
|
-
const
|
|
278
|
+
const skipKeys = new Set(["children", "key", "ref", "elementKey"]);
|
|
279
|
+
const oKeys = Object.keys(oldProps).filter((k) => !skipKeys.has(k));
|
|
280
|
+
const nKeys = Object.keys(newProps).filter((k) => !skipKeys.has(k));
|
|
193
281
|
if (oKeys.length !== nKeys.length)
|
|
194
282
|
return { changed: true };
|
|
195
283
|
for (const k of oKeys) {
|
|
@@ -198,19 +286,58 @@ export const hostConfig = {
|
|
|
198
286
|
}
|
|
199
287
|
return null;
|
|
200
288
|
},
|
|
201
|
-
commitUpdate(instance, _updatePayload, type,
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
289
|
+
commitUpdate(instance, _updatePayload, type, _oldProps, newProps) {
|
|
290
|
+
const base = extractBaseFields(newProps);
|
|
291
|
+
// Delegate to the element-type-specific batch update method.
|
|
292
|
+
switch (type) {
|
|
293
|
+
case "cm-container":
|
|
294
|
+
case "cm-overlay": {
|
|
295
|
+
const p = newProps;
|
|
296
|
+
if (isContainerElement(instance)) {
|
|
297
|
+
instance.updateContainerConfig({
|
|
298
|
+
...base,
|
|
299
|
+
mainAxis: p.mainAxis,
|
|
300
|
+
justifyContent: p.justifyContent,
|
|
301
|
+
alignItems: p.alignItems,
|
|
302
|
+
spacing: p.spacing,
|
|
303
|
+
});
|
|
304
|
+
}
|
|
305
|
+
break;
|
|
208
306
|
}
|
|
307
|
+
case "cm-text": {
|
|
308
|
+
const p = newProps;
|
|
309
|
+
if (isTextElement(instance)) {
|
|
310
|
+
instance.updateTextConfig({
|
|
311
|
+
...base,
|
|
312
|
+
text: p.text,
|
|
313
|
+
hoverTransform: p.hoverTransform,
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
break;
|
|
317
|
+
}
|
|
318
|
+
case "cm-table": {
|
|
319
|
+
const p = newProps;
|
|
320
|
+
if (isTableElement(instance)) {
|
|
321
|
+
instance.updateTableConfig({
|
|
322
|
+
...base,
|
|
323
|
+
columns: p.columns,
|
|
324
|
+
title: p.title,
|
|
325
|
+
titleAlign: p.titleAlign,
|
|
326
|
+
showRowSeparators: p.showRowSeparators,
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
break;
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
// Update or clear onClick handler
|
|
333
|
+
if (_oldProps.onClick !== newProps.onClick) {
|
|
334
|
+
instance.setOnClick(newProps.onClick ?? null);
|
|
209
335
|
}
|
|
210
|
-
//
|
|
211
|
-
if (
|
|
212
|
-
|
|
213
|
-
|
|
336
|
+
// Re-trigger entrance animation when animationKey changes
|
|
337
|
+
if (_oldProps.animationKey !== newProps.animationKey &&
|
|
338
|
+
newProps.animationKey != null) {
|
|
339
|
+
if (instance.getStage() === "main") {
|
|
340
|
+
instance.startTransition("enter");
|
|
214
341
|
}
|
|
215
342
|
}
|
|
216
343
|
},
|
|
@@ -220,6 +347,19 @@ export const hostConfig = {
|
|
|
220
347
|
},
|
|
221
348
|
commitMount(instance) {
|
|
222
349
|
// Called after finalizeInitialChildren returns true.
|
|
350
|
+
// If this is an overlay, add it to the view's overlay layer now.
|
|
351
|
+
if (isOverlay(instance)) {
|
|
352
|
+
const root = instanceRootMap.get(instance);
|
|
353
|
+
if (root?.view.addOverlay) {
|
|
354
|
+
// First commit its own tracked children (it's a container)
|
|
355
|
+
const children = getTrackedChildren(instance);
|
|
356
|
+
if (children.length > 0) {
|
|
357
|
+
instance.setChildren([...children]);
|
|
358
|
+
}
|
|
359
|
+
root.view.addOverlay(instance);
|
|
360
|
+
}
|
|
361
|
+
return;
|
|
362
|
+
}
|
|
223
363
|
// Commit the tracked children now that the initial tree is assembled.
|
|
224
364
|
const children = getTrackedChildren(instance);
|
|
225
365
|
if (children.length > 0) {
|
package/dist/hostConfig.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hostConfig.js","sourceRoot":"","sources":["../src/hostConfig.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hostConfig.js","sourceRoot":"","sources":["../src/hostConfig.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { render, unmount } from "./renderer";
|
|
2
|
-
export type { CMContainerProps, CMTextProps, CMTableProps, CMElementType, } from "./hostConfig";
|
|
2
|
+
export type { CMContainerProps, CMTextProps, CMTableProps, CMOverlayProps, CMElementType, } from "./hostConfig";
|
|
3
|
+
export type { CMElementRef } from "./types";
|
|
4
|
+
export { RenderLoopContext, useRenderLoop, useAnimation, usePolledData, } from "./hooks";
|
|
3
5
|
import "./types";
|
|
4
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC7C,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,aAAa,GACd,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC7C,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,cAAc,EACd,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,aAAa,GACd,MAAM,SAAS,CAAC;AAGjB,OAAO,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAS7C,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB,oDAAoD;AACpD,OAAO,SAAS,CAAC"}
|
package/dist/renderer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAWzE;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAWzE;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CA+BtE;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAOhD"}
|
package/dist/renderer.js
CHANGED
|
@@ -12,7 +12,11 @@ const roots = new Map();
|
|
|
12
12
|
export function render(element, view) {
|
|
13
13
|
let entry = roots.get(view);
|
|
14
14
|
if (!entry) {
|
|
15
|
-
const container = {
|
|
15
|
+
const container = {
|
|
16
|
+
view,
|
|
17
|
+
rootElement: null,
|
|
18
|
+
overlayInstances: new WeakSet(),
|
|
19
|
+
};
|
|
16
20
|
const fiberRoot = reconciler.createContainer(container, 0, // LegacyRoot tag
|
|
17
21
|
null, // hydrationCallbacks
|
|
18
22
|
false, // isStrictMode
|
package/dist/renderer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAE,UAAU,EAAiB,MAAM,cAAc,CAAC;AAEzD,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;AAE/C,uEAAuE;AACvE,MAAM,KAAK,GAAG,IAAI,GAAG,EAGlB,CAAC;AAEJ;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,OAAkB,EAAE,IAAkB;IAC3D,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAE5B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,SAAS,GAAkB,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAE,UAAU,EAAiB,MAAM,cAAc,CAAC;AAEzD,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;AAE/C,uEAAuE;AACvE,MAAM,KAAK,GAAG,IAAI,GAAG,EAGlB,CAAC;AAEJ;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,OAAkB,EAAE,IAAkB;IAC3D,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAE5B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,SAAS,GAAkB;YAC/B,IAAI;YACJ,WAAW,EAAE,IAAI;YACjB,gBAAgB,EAAE,IAAI,OAAO,EAAE;SAChC,CAAC;QACF,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,CAC1C,SAAS,EACT,CAAC,EAAE,iBAAiB;QACpB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,qCAAqC;QAC3C,EAAE,EAAE,mBAAmB;QACvB,CAAC,GAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,kBAAkB;QACtD,CAAC,GAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,gBAAgB;QACpD,CAAC,GAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,qBAAqB;QACzD,GAAG,EAAE,GAAE,CAAC,CACT,CAAC;QACF,KAAK,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;QACjC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,UAAU,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAErE,+DAA+D;IAC/D,UAAU,CAAC,SAAS,EAAE,CAAC;IAEvB,OAAO,KAAK,CAAC,SAAS,CAAC,WAAY,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,IAAkB;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,KAAK,EAAE,CAAC;QACV,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAClE,UAAU,CAAC,SAAS,EAAE,CAAC;QACvB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;AACH,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,10 +1,24 @@
|
|
|
1
|
-
import type { CMContainerProps, CMTextProps, CMTableProps } from "./hostConfig";
|
|
1
|
+
import type { CMContainerProps, CMTextProps, CMTableProps, CMOverlayProps } from "./hostConfig";
|
|
2
|
+
import type { ElementStage, ElementAnimationHandler, IntPoint } from "@adam26davidson/char-matrix";
|
|
3
|
+
/**
|
|
4
|
+
* Public imperative API exposed via React refs on char-matrix elements.
|
|
5
|
+
* The underlying Element satisfies this interface — no wrapper needed.
|
|
6
|
+
*/
|
|
7
|
+
export interface CMElementRef {
|
|
8
|
+
startTransition(type: "enter" | "exit", onComplete?: () => void): void;
|
|
9
|
+
getStage(): ElementStage;
|
|
10
|
+
getAnimationHandler(): ElementAnimationHandler | null;
|
|
11
|
+
getSize(): IntPoint;
|
|
12
|
+
getKey(): string;
|
|
13
|
+
flagForRedraw(): void;
|
|
14
|
+
}
|
|
2
15
|
declare global {
|
|
3
16
|
namespace JSX {
|
|
4
17
|
interface IntrinsicElements {
|
|
5
18
|
"cm-container": CMContainerProps;
|
|
6
19
|
"cm-text": CMTextProps;
|
|
7
20
|
"cm-table": CMTableProps;
|
|
21
|
+
"cm-overlay": CMOverlayProps;
|
|
8
22
|
}
|
|
9
23
|
}
|
|
10
24
|
}
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAChG,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACvB,QAAQ,EACT,MAAM,6BAA6B,CAAC;AAErC;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IACvE,QAAQ,IAAI,YAAY,CAAC;IACzB,mBAAmB,IAAI,uBAAuB,GAAG,IAAI,CAAC;IACtD,OAAO,IAAI,QAAQ,CAAC;IACpB,MAAM,IAAI,MAAM,CAAC;IACjB,aAAa,IAAI,IAAI,CAAC;CACvB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,cAAc,EAAE,gBAAgB,CAAC;YACjC,SAAS,EAAE,WAAW,CAAC;YACvB,UAAU,EAAE,YAAY,CAAC;YACzB,YAAY,EAAE,cAAc,CAAC;SAC9B;KACF;CACF"}
|