diff --git a/packages/app-expo/src/screens/BookChatScreen.tsx b/packages/app-expo/src/screens/BookChatScreen.tsx index 208c3895..f5c4e21b 100644 --- a/packages/app-expo/src/screens/BookChatScreen.tsx +++ b/packages/app-expo/src/screens/BookChatScreen.tsx @@ -530,7 +530,7 @@ export function BookChatScreen({ route, navigation }: Props) { diff --git a/packages/app-expo/src/screens/ChatScreen.tsx b/packages/app-expo/src/screens/ChatScreen.tsx index 3b8e0185..bf84ce31 100644 --- a/packages/app-expo/src/screens/ChatScreen.tsx +++ b/packages/app-expo/src/screens/ChatScreen.tsx @@ -468,7 +468,7 @@ export function ChatScreen() { {/* Content */} diff --git a/packages/app-expo/src/screens/chat-keyboard-layout.test.ts b/packages/app-expo/src/screens/chat-keyboard-layout.test.ts index ad4603da..aa2af767 100644 --- a/packages/app-expo/src/screens/chat-keyboard-layout.test.ts +++ b/packages/app-expo/src/screens/chat-keyboard-layout.test.ts @@ -4,18 +4,39 @@ import { fileURLToPath } from "node:url"; import { describe, expect, it } from "vitest"; const chatScreens = ["ChatScreen.tsx", "BookChatScreen.tsx"] as const; +const screensDir = dirname(fileURLToPath(import.meta.url)); +const repoRoot = resolve(screensDir, "../../../.."); describe("Android chat keyboard layout", () => { for (const screen of chatScreens) { it(`${screen} keeps ChatInput inside Android keyboard avoidance`, () => { - const source = readFileSync(resolve(dirname(fileURLToPath(import.meta.url)), screen), "utf8"); + const source = readFileSync(resolve(screensDir, screen), "utf8"); expect(source).toMatch( /import\s+\{\s*KeyboardAvoidingView\s*\}\s+from\s+"react-native-keyboard-controller";/, ); expect(source).toMatch( - //, + //, ); + expect(source).not.toMatch(/ { + const rootPackage = JSON.parse(readFileSync(resolve(repoRoot, "package.json"), "utf8")) as { + pnpm?: { patchedDependencies?: Record }; + }; + expect( + rootPackage.pnpm?.patchedDependencies?.["react-native-keyboard-controller@1.18.5"], + ).toBeUndefined(); + + const controllerSource = readFileSync( + resolve( + repoRoot, + "node_modules/react-native-keyboard-controller/src/components/KeyboardAvoidingView/index.tsx", + ), + "utf8", + ); + expect(controllerSource).toMatch(/case "padding":\s*return \{ paddingBottom: bottom \};/); + }); });