@opentui/solid 0.0.0-20250923-da12fb15 → 0.0.0-20250924-d06b64fa
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/index.d.ts +2 -3
- package/index.js +7 -23
- package/package.json +2 -2
- package/src/elements/hooks.d.ts +2 -7
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export function useTimeline(
|
|
1
|
+
export function useTimeline(options?: {}): Timeline;
|
|
2
2
|
export function useTerminalDimensions(): import("solid-js").Accessor<{
|
|
3
3
|
width: any;
|
|
4
4
|
height: any;
|
|
@@ -48,7 +48,6 @@ export var createTextNode: any;
|
|
|
48
48
|
export function createSlotNode(): SlotRenderable;
|
|
49
49
|
export var createElement: any;
|
|
50
50
|
export function createDynamic(component: any, props: any): import("solid-js").Accessor<any>;
|
|
51
|
-
export function createComponentTimeline(options?: {}): Timeline;
|
|
52
51
|
declare var createComponent2: typeof createComponent;
|
|
53
52
|
export namespace componentCatalogue {
|
|
54
53
|
export { BoxRenderable as box };
|
|
@@ -104,6 +103,7 @@ export function Dynamic(props: any): import("solid-js").Accessor<any>;
|
|
|
104
103
|
export class BoldSpanRenderable extends TextModifierRenderable {
|
|
105
104
|
constructor(options: any);
|
|
106
105
|
}
|
|
106
|
+
import { Timeline } from "@opentui/core";
|
|
107
107
|
import { mergeProps } from "solid-js";
|
|
108
108
|
import { BoxRenderable } from "@opentui/core";
|
|
109
109
|
import { TextRenderable as TextRenderable3 } from "@opentui/core";
|
|
@@ -117,7 +117,6 @@ declare class SpanRenderable extends TextNodeRenderable3 {
|
|
|
117
117
|
_ctx: any;
|
|
118
118
|
}
|
|
119
119
|
import { createRenderEffect } from "solid-js";
|
|
120
|
-
import { Timeline } from "@opentui/core";
|
|
121
120
|
import { createComponent } from "solid-js";
|
|
122
121
|
declare class TextModifierRenderable extends SpanRenderable {
|
|
123
122
|
}
|
package/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
// index.ts
|
|
3
|
-
import { createCliRenderer } from "@opentui/core";
|
|
3
|
+
import { createCliRenderer, engine as engine2 } from "@opentui/core";
|
|
4
4
|
import { createTestRenderer } from "@opentui/core/testing";
|
|
5
5
|
|
|
6
6
|
// src/elements/index.ts
|
|
@@ -17,9 +17,7 @@ import {
|
|
|
17
17
|
} from "@opentui/core";
|
|
18
18
|
|
|
19
19
|
// src/elements/hooks.ts
|
|
20
|
-
import {
|
|
21
|
-
Timeline
|
|
22
|
-
} from "@opentui/core";
|
|
20
|
+
import { engine, Timeline } from "@opentui/core";
|
|
23
21
|
import { createContext, createSignal, onCleanup, onMount, useContext } from "solid-js";
|
|
24
22
|
var RendererContext = createContext();
|
|
25
23
|
var useRenderer = () => {
|
|
@@ -77,35 +75,20 @@ var useSelectionHandler = (callback) => {
|
|
|
77
75
|
renderer.off("selection", callback);
|
|
78
76
|
});
|
|
79
77
|
};
|
|
80
|
-
var
|
|
81
|
-
const renderer = useRenderer();
|
|
78
|
+
var useTimeline = (options = {}) => {
|
|
82
79
|
const timeline = new Timeline(options);
|
|
83
|
-
const frameCallback = async (dt) => timeline.update(dt);
|
|
84
80
|
onMount(() => {
|
|
85
81
|
if (options.autoplay !== false) {
|
|
86
82
|
timeline.play();
|
|
87
83
|
}
|
|
88
|
-
|
|
84
|
+
engine.register(timeline);
|
|
89
85
|
});
|
|
90
86
|
onCleanup(() => {
|
|
91
|
-
renderer.removeFrameCallback(frameCallback);
|
|
92
87
|
timeline.pause();
|
|
88
|
+
engine.unregister(timeline);
|
|
93
89
|
});
|
|
94
90
|
return timeline;
|
|
95
91
|
};
|
|
96
|
-
var useTimeline = (timeline, initialValue, targetValue, options, startTime = 0) => {
|
|
97
|
-
const [store, setStore] = createSignal(initialValue);
|
|
98
|
-
const { onUpdate, ...animationOptions } = options;
|
|
99
|
-
timeline.add(store(), {
|
|
100
|
-
...targetValue,
|
|
101
|
-
...animationOptions,
|
|
102
|
-
onUpdate: (values) => {
|
|
103
|
-
setStore({ ...values.targets[0] });
|
|
104
|
-
onUpdate?.(values);
|
|
105
|
-
}
|
|
106
|
-
}, startTime);
|
|
107
|
-
return store;
|
|
108
|
-
};
|
|
109
92
|
// src/elements/extras.ts
|
|
110
93
|
import { createEffect, createMemo as createMemo2, getOwner, onCleanup as onCleanup2, runWithOwner, splitProps, untrack as untrack2 } from "solid-js";
|
|
111
94
|
|
|
@@ -915,6 +898,7 @@ function getComponentCatalogue() {
|
|
|
915
898
|
// index.ts
|
|
916
899
|
var render = async (node, renderConfig = {}) => {
|
|
917
900
|
const renderer = await createCliRenderer(renderConfig);
|
|
901
|
+
engine2.attach(renderer);
|
|
918
902
|
_render(() => createComponent2(RendererContext.Provider, {
|
|
919
903
|
get value() {
|
|
920
904
|
return renderer;
|
|
@@ -926,6 +910,7 @@ var render = async (node, renderConfig = {}) => {
|
|
|
926
910
|
};
|
|
927
911
|
var testRender = async (node, renderConfig = {}) => {
|
|
928
912
|
const testSetup = await createTestRenderer(renderConfig);
|
|
913
|
+
engine2.attach(testSetup.renderer);
|
|
929
914
|
_render(() => createComponent2(RendererContext.Provider, {
|
|
930
915
|
get value() {
|
|
931
916
|
return testSetup.renderer;
|
|
@@ -962,7 +947,6 @@ export {
|
|
|
962
947
|
createSlotNode,
|
|
963
948
|
createElement,
|
|
964
949
|
createDynamic,
|
|
965
|
-
createComponentTimeline,
|
|
966
950
|
createComponent2 as createComponent,
|
|
967
951
|
componentCatalogue,
|
|
968
952
|
baseComponents,
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"version": "0.0.0-
|
|
7
|
+
"version": "0.0.0-20250924-d06b64fa",
|
|
8
8
|
"description": "SolidJS renderer for OpenTUI",
|
|
9
9
|
"license": "MIT",
|
|
10
10
|
"repository": {
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@babel/core": "7.28.0",
|
|
29
29
|
"@babel/preset-typescript": "7.27.1",
|
|
30
|
-
"@opentui/core": "0.0.0-
|
|
30
|
+
"@opentui/core": "0.0.0-20250924-d06b64fa",
|
|
31
31
|
"babel-plugin-module-resolver": "5.0.2",
|
|
32
32
|
"babel-preset-solid": "1.9.9",
|
|
33
33
|
"s-js": "^0.4.9"
|
package/src/elements/hooks.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Selection, Timeline, type
|
|
1
|
+
import { Selection, Timeline, type CliRenderer, type ParsedKey, type TimelineOptions } from "@opentui/core";
|
|
2
2
|
export declare const RendererContext: import("solid-js").Context<CliRenderer | undefined>;
|
|
3
3
|
export declare const useRenderer: () => CliRenderer;
|
|
4
4
|
export declare const onResize: (callback: (width: number, height: number) => void) => void;
|
|
@@ -13,9 +13,4 @@ export declare const usePaste: (callback: (text: string) => void) => void;
|
|
|
13
13
|
*/
|
|
14
14
|
export declare const useKeyHandler: (callback: (key: ParsedKey) => void) => void;
|
|
15
15
|
export declare const useSelectionHandler: (callback: (selection: Selection) => void) => void;
|
|
16
|
-
export declare const
|
|
17
|
-
export declare const useTimeline: <T extends Record<string, number>>(timeline: Timeline, initialValue: T, targetValue: T, options: AnimationOptions & {
|
|
18
|
-
onUpdate?: (values: JSAnimation & {
|
|
19
|
-
targets: T[];
|
|
20
|
-
}) => void;
|
|
21
|
-
}, startTime?: number | string) => import("solid-js").Accessor<T>;
|
|
16
|
+
export declare const useTimeline: (options?: TimelineOptions) => Timeline;
|