@blit-sh/react 0.17.0

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 (41) hide show
  1. package/dist/BlitContext.d.ts +17 -0
  2. package/dist/BlitContext.d.ts.map +1 -0
  3. package/dist/BlitContext.js +18 -0
  4. package/dist/BlitContext.js.map +1 -0
  5. package/dist/BlitTerminal.d.ts +25 -0
  6. package/dist/BlitTerminal.d.ts.map +1 -0
  7. package/dist/BlitTerminal.js +1341 -0
  8. package/dist/BlitTerminal.js.map +1 -0
  9. package/dist/hooks/index.d.ts +6 -0
  10. package/dist/hooks/index.d.ts.map +1 -0
  11. package/dist/hooks/index.js +6 -0
  12. package/dist/hooks/index.js.map +1 -0
  13. package/dist/hooks/useBlitConnection.d.ts +3 -0
  14. package/dist/hooks/useBlitConnection.d.ts.map +1 -0
  15. package/dist/hooks/useBlitConnection.js +20 -0
  16. package/dist/hooks/useBlitConnection.js.map +1 -0
  17. package/dist/hooks/useBlitSession.d.ts +4 -0
  18. package/dist/hooks/useBlitSession.d.ts.map +1 -0
  19. package/dist/hooks/useBlitSession.js +17 -0
  20. package/dist/hooks/useBlitSession.js.map +1 -0
  21. package/dist/hooks/useBlitSessions.d.ts +3 -0
  22. package/dist/hooks/useBlitSessions.d.ts.map +1 -0
  23. package/dist/hooks/useBlitSessions.js +8 -0
  24. package/dist/hooks/useBlitSessions.js.map +1 -0
  25. package/dist/hooks/useBlitWorkspace.d.ts +4 -0
  26. package/dist/hooks/useBlitWorkspace.d.ts.map +1 -0
  27. package/dist/hooks/useBlitWorkspace.js +10 -0
  28. package/dist/hooks/useBlitWorkspace.js.map +1 -0
  29. package/dist/hooks/useBlitWorkspaceConnection.d.ts +4 -0
  30. package/dist/hooks/useBlitWorkspaceConnection.d.ts.map +1 -0
  31. package/dist/hooks/useBlitWorkspaceConnection.js +8 -0
  32. package/dist/hooks/useBlitWorkspaceConnection.js.map +1 -0
  33. package/dist/index.d.ts +11 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +8 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/types.d.ts +30 -0
  38. package/dist/types.d.ts.map +1 -0
  39. package/dist/types.js +2 -0
  40. package/dist/types.js.map +1 -0
  41. package/package.json +68 -0
@@ -0,0 +1,17 @@
1
+ import { type ReactNode } from "react";
2
+ import type { TerminalPalette } from "@blit-sh/core";
3
+ import type { BlitWorkspace } from "@blit-sh/core";
4
+ export interface BlitContextValue {
5
+ workspace?: BlitWorkspace;
6
+ palette?: TerminalPalette;
7
+ fontFamily?: string;
8
+ fontSize?: number;
9
+ advanceRatio?: number;
10
+ }
11
+ export declare function useBlitContext(): BlitContextValue;
12
+ export interface BlitProviderProps extends BlitContextValue {
13
+ children: ReactNode;
14
+ }
15
+ export declare function BlitWorkspaceProvider({ children, workspace, palette, fontFamily, fontSize, advanceRatio, }: BlitProviderProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function useRequiredBlitWorkspace(): BlitWorkspace;
17
+ //# sourceMappingURL=BlitContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlitContext.d.ts","sourceRoot":"","sources":["../src/BlitContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID,wBAAgB,cAAc,IAAI,gBAAgB,CAEjD;AAED,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACzD,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,qBAAqB,CAAC,EACpC,QAAQ,EACR,SAAS,EACT,OAAO,EACP,UAAU,EACV,QAAQ,EACR,YAAY,GACb,EAAE,iBAAiB,2CAMnB;AAED,wBAAgB,wBAAwB,IAAI,aAAa,CAMxD"}
@@ -0,0 +1,18 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { createContext, useContext, useMemo } from "react";
3
+ const BlitContext = createContext({});
4
+ export function useBlitContext() {
5
+ return useContext(BlitContext);
6
+ }
7
+ export function BlitWorkspaceProvider({ children, workspace, palette, fontFamily, fontSize, advanceRatio, }) {
8
+ const value = useMemo(() => ({ workspace, palette, fontFamily, fontSize, advanceRatio }), [workspace, palette, fontFamily, fontSize, advanceRatio]);
9
+ return _jsx(BlitContext.Provider, { value: value, children: children });
10
+ }
11
+ export function useRequiredBlitWorkspace() {
12
+ const workspace = useBlitContext().workspace;
13
+ if (!workspace) {
14
+ throw new Error("Blit components require a BlitWorkspaceProvider ancestor");
15
+ }
16
+ return workspace;
17
+ }
18
+ //# sourceMappingURL=BlitContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlitContext.js","sourceRoot":"","sources":["../src/BlitContext.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAkB,MAAM,OAAO,CAAC;AAY3E,MAAM,WAAW,GAAG,aAAa,CAAmB,EAAE,CAAC,CAAC;AAExD,MAAM,UAAU,cAAc;IAC5B,OAAO,UAAU,CAAC,WAAW,CAAC,CAAC;AACjC,CAAC;AAMD,MAAM,UAAU,qBAAqB,CAAC,EACpC,QAAQ,EACR,SAAS,EACT,OAAO,EACP,UAAU,EACV,QAAQ,EACR,YAAY,GACM;IAClB,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,EAClE,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,CACzD,CAAC;IACF,OAAO,KAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAAwB,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,MAAM,SAAS,GAAG,cAAc,EAAE,CAAC,SAAS,CAAC;IAC7C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { Ref } from "react";
2
+ import type { Terminal } from "@blit-sh/browser";
3
+ import type { ConnectionStatus } from "@blit-sh/core";
4
+ import type { BlitTerminalProps } from "./types";
5
+ export interface BlitTerminalHandle {
6
+ /** The underlying WASM Terminal instance, if initialised. */
7
+ terminal: Terminal | null;
8
+ /** Current grid dimensions. */
9
+ rows: number;
10
+ cols: number;
11
+ /** Current connection status. */
12
+ status: ConnectionStatus;
13
+ /** Focus the input sink so the terminal can receive keyboard events. */
14
+ focus(): void;
15
+ }
16
+ /**
17
+ * BlitTerminal renders a blit terminal inside a WebGL canvas.
18
+ *
19
+ * It handles WASM initialisation, server message processing, GL rendering,
20
+ * keyboard/mouse input, and dynamic resizing through a ResizeObserver.
21
+ */
22
+ export declare function BlitTerminal({ ref, ...props }: BlitTerminalProps & {
23
+ ref?: Ref<BlitTerminalHandle>;
24
+ }): import("react/jsx-runtime").JSX.Element;
25
+ //# sourceMappingURL=BlitTerminal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlitTerminal.d.ts","sourceRoot":"","sources":["../src/BlitTerminal.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAmB,gBAAgB,EAA2B,MAAM,eAAe,CAAC;AAEhG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AASjD,MAAM,WAAW,kBAAkB;IACjC,6DAA6D;IAC7D,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,MAAM,EAAE,gBAAgB,CAAC;IACzB,wEAAwE;IACxE,KAAK,IAAI,IAAI,CAAC;CACf;AAMD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,EAC3B,GAAG,EACH,GAAG,KAAK,EACT,EAAE,iBAAiB,GAAG;IAAE,GAAG,CAAC,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAA;CAAE,2CAkhDvD"}