From b88bcd49fdea0955f2efc8f09a3614c188d22107 Mon Sep 17 00:00:00 2001 From: Adam <2363879+adamdotdevin@users.noreply.github.com> Date: Tue, 6 Jan 2026 08:18:17 -0600 Subject: fix(app): code splitting for web load perf gains --- packages/app/src/components/session/session-header.tsx | 7 ++++++- packages/app/src/components/terminal.tsx | 9 +++++---- 2 files changed, 11 insertions(+), 5 deletions(-) (limited to 'packages/app/src/components') diff --git a/packages/app/src/components/session/session-header.tsx b/packages/app/src/components/session/session-header.tsx index e70e0790c..4958ad2c3 100644 --- a/packages/app/src/components/session/session-header.tsx +++ b/packages/app/src/components/session/session-header.tsx @@ -244,8 +244,13 @@ export function SessionHeader() { } return shareURL }, + { initialValue: "" }, + ) + return ( + + {(shareUrl) => } + ) - return {(url) => } })} diff --git a/packages/app/src/components/terminal.tsx b/packages/app/src/components/terminal.tsx index a298e3f76..18c77653e 100644 --- a/packages/app/src/components/terminal.tsx +++ b/packages/app/src/components/terminal.tsx @@ -1,4 +1,4 @@ -import { Ghostty, Terminal as Term, FitAddon } from "ghostty-web" +import type { Ghostty, Terminal as Term, FitAddon } from "ghostty-web" import { ComponentProps, createEffect, createSignal, onCleanup, onMount, splitProps } from "solid-js" import { useSDK } from "@/context/sdk" import { SerializeAddon } from "@/addons/serialize" @@ -106,14 +106,15 @@ export const Terminal = (props: TerminalProps) => { } onMount(async () => { - ghostty = await Ghostty.load() + const mod = await import("ghostty-web") + ghostty = await mod.Ghostty.load() const socket = new WebSocket( sdk.url + `/pty/${local.pty.id}/connect?directory=${encodeURIComponent(sdk.directory)}`, ) ws = socket - const t = new Term({ + const t = new mod.Terminal({ cursorBlink: true, fontSize: 14, fontFamily: "IBM Plex Mono, monospace", @@ -142,7 +143,7 @@ export const Terminal = (props: TerminalProps) => { return false }) - fitAddon = new FitAddon() + fitAddon = new mod.FitAddon() serializeAddon = new SerializeAddon() t.loadAddon(serializeAddon) t.loadAddon(fitAddon) -- cgit v1.2.3