From 2f83e8fe2f4ef8e9b6136a4fa53d1a2dcf2a88b2 Mon Sep 17 00:00:00 2001 From: Joakim Date: Sat, 14 Feb 2026 17:28:48 +0100 Subject: [PATCH] feat(web): add InputBar and PropertyPills components InputBar provides fixed-to-bottom text input with Enter to submit, blur-delay (150ms) for pill interaction, and cursor-aware text insertion. PropertyPills shows 8 modifier pills (Due, Pri, Project, Tag, Recur, Scheduled, Wait, Until) on input focus. Co-Authored-By: Claude Opus 4.6 --- opal-web/src/lib/components/InputBar.svelte | 188 ++++++++++++++++++ .../src/lib/components/PropertyPills.svelte | 66 ++++++ 2 files changed, 254 insertions(+) create mode 100644 opal-web/src/lib/components/InputBar.svelte create mode 100644 opal-web/src/lib/components/PropertyPills.svelte diff --git a/opal-web/src/lib/components/InputBar.svelte b/opal-web/src/lib/components/InputBar.svelte new file mode 100644 index 0000000..5e4d280 --- /dev/null +++ b/opal-web/src/lib/components/InputBar.svelte @@ -0,0 +1,188 @@ + + +
+ + + {#if error} +
{error}
+ {/if} + +
+ + +
+
+ + diff --git a/opal-web/src/lib/components/PropertyPills.svelte b/opal-web/src/lib/components/PropertyPills.svelte new file mode 100644 index 0000000..c8679f6 --- /dev/null +++ b/opal-web/src/lib/components/PropertyPills.svelte @@ -0,0 +1,66 @@ + + +{#if visible} +
+ {#each pills as pill} + + {/each} +
+{/if} + +