feat(FN-4011): align room input keyboard handlers

Completes Step 1 of mobile touch-focus parity by aligning room input keyboard handlers in ChatView, with a regression test covering mobile room and direct composer touch-focus behavior.

Fusion-Task-Id: FN-4011
This commit is contained in:
Fusion
2026-05-11 08:48:45 -07:00
committed by gsxdsm
parent 0a0f0b99ff
commit bf4786e550
7 changed files with 81 additions and 7 deletions

View File

@@ -0,0 +1,17 @@
import { describe, expect, it } from "vitest";
import { LocalRuntimeManager } from "../local-runtime";
describe("desktop runtime package resolution", () => {
it("resolves @fusion/core and @fusion/dashboard from desktop vitest project", async () => {
const core = await import("@fusion/core");
const dashboard = await import("@fusion/dashboard");
expect(core.TaskStore).toBeTypeOf("function");
expect(dashboard.createServer).toBeTypeOf("function");
});
it("can instantiate LocalRuntimeManager without relying on built dist artifacts", () => {
const manager = new LocalRuntimeManager({ rootDir: process.cwd() });
expect(manager.getStatus().state).toBe("stopped");
});
});

View File

@@ -3,13 +3,15 @@ import { resolve } from "node:path";
import { computeMaxWorkers } from "../core/src/__test-utils__/vitest-workers";
const maxWorkers = computeMaxWorkers();
const fusionAliases = {
"@fusion/core": resolve(__dirname, "../core/src/index.ts"),
"@fusion/dashboard": resolve(__dirname, "../dashboard/src/index.ts"),
"@fusion/engine": resolve(__dirname, "../engine/src/index.ts"),
};
export default defineConfig({
resolve: {
alias: {
"@fusion/core": resolve(__dirname, "../core/src/index.ts"),
"@fusion/dashboard": resolve(__dirname, "../dashboard/src/index.ts"),
},
alias: fusionAliases,
},
test: {
setupFiles: [resolve(__dirname, "../core/src/__test-utils__/vitest-setup.ts")],
@@ -23,6 +25,9 @@ export default defineConfig({
passWithNoTests: true,
projects: [
{
resolve: {
alias: fusionAliases,
},
test: {
name: "desktop",
include: ["src/__tests__/**/*.test.ts"],
@@ -31,6 +36,9 @@ export default defineConfig({
},
},
{
resolve: {
alias: fusionAliases,
},
test: {
name: "desktop-renderer",
include: ["src/renderer/**/*.test.ts", "src/renderer/**/*.test.tsx"],