The mobile composer/footer slid over the message list when the user swiped with the keyboard up. Cause: --vv-height / --vv-offset-top were routed through React state via useMobileKeyboard, so on iOS — which fires visualViewport scroll/resize on the same frame as its keyboard animation — the .chat-thread translation lagged by one paint, visible as the composer momentarily floating over messages. Now those two vars are written imperatively in a useLayoutEffect directly to the .chat-thread DOM node on every visualViewport event, mirroring the working pattern at QuickChatFAB.tsx:1032-1052 (which already works correctly on mobile). Only --keyboard-overlap (a structural open/close signal, not per-frame) still flows through React state. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
22 lines
1.3 KiB
TypeScript
22 lines
1.3 KiB
TypeScript
/**
|
|
* Hermes Runtime Plugin
|
|
*
|
|
* Provides an executable Hermes runtime adapter that drives the local `hermes`
|
|
* CLI as a subprocess. Discovered by Fusion's plugin runtime registry; the
|
|
* settings configured in the dashboard's "Runtimes → Hermes" page flow through
|
|
* `ctx.settings` into the CLI invocation.
|
|
*/
|
|
import type { FusionPlugin, PluginRuntimeFactory, PluginRuntimeManifestMetadata } from "@fusion/plugin-sdk";
|
|
declare const HERMES_RUNTIME_ID = "hermes";
|
|
declare const hermesRuntimeMetadata: PluginRuntimeManifestMetadata;
|
|
declare const hermesRuntimeFactory: PluginRuntimeFactory;
|
|
declare const plugin: FusionPlugin;
|
|
export default plugin;
|
|
export { hermesRuntimeMetadata, hermesRuntimeFactory, HERMES_RUNTIME_ID };
|
|
export { HermesRuntimeAdapter } from "./runtime-adapter.js";
|
|
export { resolveCliSettings, invokeHermesCli, buildHermesArgs, parseHermesOutput, listHermesProfiles, } from "./cli-spawn.js";
|
|
export { installFusionSkillIntoHermesHome, resolveBundledFusionSkillSource, resolveHermesHome, } from "./fusion-skill-install.js";
|
|
export type { HermesCliSettings, HermesCliResult, HermesProfileSummary } from "./cli-spawn.js";
|
|
export { probeHermesBinary } from "./probe.js";
|
|
export type { HermesBinaryStatus } from "./probe.js";
|
|
//# sourceMappingURL=index.d.ts.map
|