@gridland/web 0.2.17 → 0.2.18
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 +1 -0
- package/dist/index.js +99 -10
- package/dist/index.js.map +4 -4
- package/package.json +1 -3
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { B as BrowserRenderer, W as WidthMethod, R as RGBA, a as BrowserRenderCo
|
|
|
2
2
|
export { c as BorderDrawOptions, C as CanvasPainter, d as CanvasPainterOptions, S as SelectionManager, T as TUI, e as TUIProps } from './next-BWTklBmN.js';
|
|
3
3
|
import * as react from 'react';
|
|
4
4
|
import { ReactNode } from 'react';
|
|
5
|
+
export { useKeyboard, useTerminalDimensions } from '@opentui/react';
|
|
5
6
|
import 'react/jsx-runtime';
|
|
6
7
|
import 'events';
|
|
7
8
|
|
package/dist/index.js
CHANGED
|
@@ -7970,14 +7970,14 @@ var require_react_reconciler_production = __commonJS({
|
|
|
7970
7970
|
}
|
|
7971
7971
|
var exports2 = {};
|
|
7972
7972
|
"use strict";
|
|
7973
|
-
var
|
|
7973
|
+
var React5 = __require("react"), Scheduler = require_scheduler(), assign = Object.assign, REACT_LEGACY_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.element"), REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = /* @__PURE__ */ Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo"), REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
|
|
7974
7974
|
/* @__PURE__ */ Symbol.for("react.scope");
|
|
7975
7975
|
var REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity");
|
|
7976
7976
|
/* @__PURE__ */ Symbol.for("react.legacy_hidden");
|
|
7977
7977
|
/* @__PURE__ */ Symbol.for("react.tracing_marker");
|
|
7978
7978
|
var REACT_MEMO_CACHE_SENTINEL = /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel");
|
|
7979
7979
|
/* @__PURE__ */ Symbol.for("react.view_transition");
|
|
7980
|
-
var MAYBE_ITERATOR_SYMBOL = Symbol.iterator, REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference"), isArrayImpl = Array.isArray, ReactSharedInternals =
|
|
7980
|
+
var MAYBE_ITERATOR_SYMBOL = Symbol.iterator, REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference"), isArrayImpl = Array.isArray, ReactSharedInternals = React5.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, rendererVersion = $$$config.rendererVersion, rendererPackageName = $$$config.rendererPackageName, extraDevToolsConfig = $$$config.extraDevToolsConfig, getPublicInstance = $$$config.getPublicInstance, getRootHostContext = $$$config.getRootHostContext, getChildHostContext = $$$config.getChildHostContext, prepareForCommit = $$$config.prepareForCommit, resetAfterCommit = $$$config.resetAfterCommit, createInstance = $$$config.createInstance;
|
|
7981
7981
|
$$$config.cloneMutableInstance;
|
|
7982
7982
|
var appendInitialChild = $$$config.appendInitialChild, finalizeInitialChildren = $$$config.finalizeInitialChildren, shouldSetTextContent = $$$config.shouldSetTextContent, createTextInstance = $$$config.createTextInstance;
|
|
7983
7983
|
$$$config.cloneMutableTextInstance;
|
|
@@ -20570,14 +20570,14 @@ var require_react_reconciler_development = __commonJS({
|
|
|
20570
20570
|
}
|
|
20571
20571
|
var exports2 = {};
|
|
20572
20572
|
"use strict";
|
|
20573
|
-
var
|
|
20573
|
+
var React5 = __require("react"), Scheduler = require_scheduler(), assign = Object.assign, REACT_LEGACY_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.element"), REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = /* @__PURE__ */ Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo"), REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
|
|
20574
20574
|
/* @__PURE__ */ Symbol.for("react.scope");
|
|
20575
20575
|
var REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity");
|
|
20576
20576
|
/* @__PURE__ */ Symbol.for("react.legacy_hidden");
|
|
20577
20577
|
/* @__PURE__ */ Symbol.for("react.tracing_marker");
|
|
20578
20578
|
var REACT_MEMO_CACHE_SENTINEL = /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel");
|
|
20579
20579
|
/* @__PURE__ */ Symbol.for("react.view_transition");
|
|
20580
|
-
var MAYBE_ITERATOR_SYMBOL = Symbol.iterator, REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference"), isArrayImpl = Array.isArray, ReactSharedInternals =
|
|
20580
|
+
var MAYBE_ITERATOR_SYMBOL = Symbol.iterator, REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference"), isArrayImpl = Array.isArray, ReactSharedInternals = React5.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, rendererVersion = $$$config.rendererVersion, rendererPackageName = $$$config.rendererPackageName, extraDevToolsConfig = $$$config.extraDevToolsConfig, getPublicInstance = $$$config.getPublicInstance, getRootHostContext = $$$config.getRootHostContext, getChildHostContext = $$$config.getChildHostContext, prepareForCommit = $$$config.prepareForCommit, resetAfterCommit = $$$config.resetAfterCommit, createInstance = $$$config.createInstance;
|
|
20581
20581
|
$$$config.cloneMutableInstance;
|
|
20582
20582
|
var appendInitialChild = $$$config.appendInitialChild, finalizeInitialChildren = $$$config.finalizeInitialChildren, shouldSetTextContent = $$$config.shouldSetTextContent, createTextInstance = $$$config.createTextInstance;
|
|
20583
20583
|
$$$config.cloneMutableTextInstance;
|
|
@@ -43574,6 +43574,9 @@ var AppContext = createContext3({
|
|
|
43574
43574
|
keyHandler: null,
|
|
43575
43575
|
renderer: null
|
|
43576
43576
|
});
|
|
43577
|
+
var useAppContext = () => {
|
|
43578
|
+
return useContext2(AppContext);
|
|
43579
|
+
};
|
|
43577
43580
|
|
|
43578
43581
|
// ../../opentui/packages/react/src/components/error-boundary.tsx
|
|
43579
43582
|
import React2 from "react";
|
|
@@ -43894,12 +43897,96 @@ function mountGridland(canvas, element, options = {}) {
|
|
|
43894
43897
|
};
|
|
43895
43898
|
}
|
|
43896
43899
|
|
|
43900
|
+
// ../../opentui/packages/react/src/hooks/use-keyboard.ts
|
|
43901
|
+
import { useEffect as useEffect2 } from "react";
|
|
43902
|
+
|
|
43903
|
+
// ../../opentui/packages/react/src/hooks/use-event.ts
|
|
43904
|
+
import { useCallback, useLayoutEffect, useRef as useRef2 } from "react";
|
|
43905
|
+
function useEffectEvent(handler) {
|
|
43906
|
+
const handlerRef = useRef2(handler);
|
|
43907
|
+
useLayoutEffect(() => {
|
|
43908
|
+
handlerRef.current = handler;
|
|
43909
|
+
});
|
|
43910
|
+
return useCallback((...args) => {
|
|
43911
|
+
const fn = handlerRef.current;
|
|
43912
|
+
return fn(...args);
|
|
43913
|
+
}, []);
|
|
43914
|
+
}
|
|
43915
|
+
|
|
43916
|
+
// ../../opentui/packages/react/src/hooks/use-keyboard.ts
|
|
43917
|
+
var useKeyboard = (handler, options = { release: false }) => {
|
|
43918
|
+
const { keyHandler } = useAppContext();
|
|
43919
|
+
const stableHandler = useEffectEvent(handler);
|
|
43920
|
+
useEffect2(() => {
|
|
43921
|
+
keyHandler?.on("keypress", stableHandler);
|
|
43922
|
+
if (options?.release) {
|
|
43923
|
+
keyHandler?.on("keyrelease", stableHandler);
|
|
43924
|
+
}
|
|
43925
|
+
return () => {
|
|
43926
|
+
keyHandler?.off("keypress", stableHandler);
|
|
43927
|
+
if (options?.release) {
|
|
43928
|
+
keyHandler?.off("keyrelease", stableHandler);
|
|
43929
|
+
}
|
|
43930
|
+
};
|
|
43931
|
+
}, [keyHandler, options.release]);
|
|
43932
|
+
};
|
|
43933
|
+
|
|
43934
|
+
// ../../opentui/packages/react/src/hooks/use-renderer.ts
|
|
43935
|
+
var useRenderer = () => {
|
|
43936
|
+
const { renderer } = useAppContext();
|
|
43937
|
+
if (!renderer) {
|
|
43938
|
+
throw new Error("Renderer not found.");
|
|
43939
|
+
}
|
|
43940
|
+
return renderer;
|
|
43941
|
+
};
|
|
43942
|
+
|
|
43943
|
+
// ../../opentui/packages/react/src/hooks/use-resize.ts
|
|
43944
|
+
import { useEffect as useEffect3 } from "react";
|
|
43945
|
+
var useOnResize = (callback) => {
|
|
43946
|
+
const renderer = useRenderer();
|
|
43947
|
+
const stableCallback = useEffectEvent(callback);
|
|
43948
|
+
useEffect3(() => {
|
|
43949
|
+
renderer.on("resize", stableCallback);
|
|
43950
|
+
return () => {
|
|
43951
|
+
renderer.off("resize", stableCallback);
|
|
43952
|
+
};
|
|
43953
|
+
}, [renderer]);
|
|
43954
|
+
return renderer;
|
|
43955
|
+
};
|
|
43956
|
+
|
|
43957
|
+
// ../../opentui/packages/react/src/hooks/use-terminal-dimensions.ts
|
|
43958
|
+
import { useState as useState2 } from "react";
|
|
43959
|
+
var useTerminalDimensions = () => {
|
|
43960
|
+
const renderer = useRenderer();
|
|
43961
|
+
const [dimensions, setDimensions] = useState2({
|
|
43962
|
+
width: renderer.width,
|
|
43963
|
+
height: renderer.height
|
|
43964
|
+
});
|
|
43965
|
+
const cb = (width, height) => {
|
|
43966
|
+
setDimensions({ width, height });
|
|
43967
|
+
};
|
|
43968
|
+
useOnResize(cb);
|
|
43969
|
+
return dimensions;
|
|
43970
|
+
};
|
|
43971
|
+
|
|
43972
|
+
// ../../opentui/packages/react/src/hooks/use-timeline.ts
|
|
43973
|
+
import { useEffect as useEffect4 } from "react";
|
|
43974
|
+
|
|
43975
|
+
// ../../opentui/packages/react/src/reconciler/renderer.ts
|
|
43976
|
+
import React4 from "react";
|
|
43977
|
+
var _r2 = reconciler;
|
|
43978
|
+
var flushSync2 = _r2.flushSyncFromReconciler ?? _r2.flushSync;
|
|
43979
|
+
var { createPortal } = reconciler;
|
|
43980
|
+
|
|
43981
|
+
// ../../opentui/packages/react/src/index.ts
|
|
43982
|
+
import { createElement } from "react";
|
|
43983
|
+
|
|
43897
43984
|
// src/file-drop.ts
|
|
43898
|
-
import { useEffect as
|
|
43985
|
+
import { useEffect as useEffect5, useState as useState3 } from "react";
|
|
43899
43986
|
function useFileDrop(callback) {
|
|
43900
43987
|
const { renderContext } = useBrowserContext();
|
|
43901
|
-
const [isDragOver, setIsDragOver] =
|
|
43902
|
-
|
|
43988
|
+
const [isDragOver, setIsDragOver] = useState3(false);
|
|
43989
|
+
useEffect5(() => {
|
|
43903
43990
|
const handler = (file) => {
|
|
43904
43991
|
callback(file);
|
|
43905
43992
|
};
|
|
@@ -43918,10 +44005,10 @@ function useFileDrop(callback) {
|
|
|
43918
44005
|
}
|
|
43919
44006
|
|
|
43920
44007
|
// src/paste.ts
|
|
43921
|
-
import { useEffect as
|
|
44008
|
+
import { useEffect as useEffect6 } from "react";
|
|
43922
44009
|
function usePaste(callback) {
|
|
43923
44010
|
const { renderContext } = useBrowserContext();
|
|
43924
|
-
|
|
44011
|
+
useEffect6(() => {
|
|
43925
44012
|
const handler = (text) => {
|
|
43926
44013
|
callback(text);
|
|
43927
44014
|
};
|
|
@@ -43969,7 +44056,9 @@ export {
|
|
|
43969
44056
|
setHeadlessRootRenderableClass,
|
|
43970
44057
|
useBrowserContext,
|
|
43971
44058
|
useFileDrop,
|
|
43972
|
-
|
|
44059
|
+
useKeyboard,
|
|
44060
|
+
usePaste,
|
|
44061
|
+
useTerminalDimensions
|
|
43973
44062
|
};
|
|
43974
44063
|
/*! Bundled license information:
|
|
43975
44064
|
|