feat(keyboard): ship AI hint carousel, home library cards, and clipboard polish

Rotate AI idle suggestions with optional remote packs, move history/dictionary onto self-sizing Home preview cards, harden clipboard capture/prompting, and simplify keyboard chrome by dropping most liquid-glass shadows.
This commit is contained in:
Rocky
2026-08-13 01:00:51 +08:00
parent fd6e0d3e7e
commit 9f308fadd2
202 changed files with 10897 additions and 5962 deletions
@@ -5,12 +5,21 @@ final class EditLastInputPromptTests: XCTestCase {
func testPayloadEscapesSourceAndInstruction() {
let payload = EditLastInputPromptComposer.userMessage(
.init(
sourceText: "<ignore> & original",
spokenInstruction: "replace \"original\""
sourceText: "<ignore> & original > \"quoted\" 'single' &amp;",
spokenInstruction: "replace \"original\" with 'updated' > old"
)
)
XCTAssertTrue(
payload.contains(
"&lt;ignore&gt; &amp; original &gt; &quot;quoted&quot; "
+ "&apos;single&apos; &amp;amp;"
)
)
XCTAssertTrue(
payload.contains(
"replace &quot;original&quot; with &apos;updated&apos; &gt; old"
)
)
XCTAssertTrue(payload.contains("&lt;ignore&gt; &amp; original"))
XCTAssertTrue(payload.contains("replace &quot;original&quot;"))
XCTAssertFalse(payload.contains("<ignore>"))
}