From a551f50ceffde3b85d1f96428615d1cc0cf82a53 Mon Sep 17 00:00:00 2001 From: Joakim Date: Wed, 18 Feb 2026 23:16:00 +0100 Subject: [PATCH] ui updates --- opal-web/BUGS.md | 4 + opal-web/src/app.html | 2 +- opal-web/src/lib/api/endpoints.js | 3 + opal-web/src/lib/api/types.js | 1 + .../src/lib/components/FilterModal.svelte | 303 ++++++++++++++++++ .../src/lib/components/FilterPills.svelte | 112 +++++++ opal-web/src/lib/components/Header.svelte | 100 +++++- opal-web/src/lib/components/InputBar.svelte | 65 +++- .../src/lib/components/PropertyPills.svelte | 44 ++- opal-web/src/lib/stores/filters.js | 55 ++++ opal-web/src/lib/utils/filters.js | 90 ++++++ opal-web/src/routes/+layout.svelte | 6 +- opal-web/src/routes/+page.svelte | 58 +++- 13 files changed, 800 insertions(+), 43 deletions(-) create mode 100644 opal-web/BUGS.md create mode 100644 opal-web/src/lib/components/FilterModal.svelte create mode 100644 opal-web/src/lib/components/FilterPills.svelte create mode 100644 opal-web/src/lib/stores/filters.js create mode 100644 opal-web/src/lib/utils/filters.js diff --git a/opal-web/BUGS.md b/opal-web/BUGS.md new file mode 100644 index 0000000..c47be92 --- /dev/null +++ b/opal-web/BUGS.md @@ -0,0 +1,4 @@ +# Wait/Scheduled not working correctly +`Buy milk due:8d wait:5d` still showing up + +# Missing uncomplete feat diff --git a/opal-web/src/app.html b/opal-web/src/app.html index 1262ab3..6a3787c 100644 --- a/opal-web/src/app.html +++ b/opal-web/src/app.html @@ -2,7 +2,7 @@ - + diff --git a/opal-web/src/lib/api/endpoints.js b/opal-web/src/lib/api/endpoints.js index 6780afb..6801849 100644 --- a/opal-web/src/lib/api/endpoints.js +++ b/opal-web/src/lib/api/endpoints.js @@ -25,6 +25,9 @@ export const tasks = { if (filters.tags) { filters.tags.forEach(tag => params.append('tag', tag)); } + if (filters.excludeTags) { + filters.excludeTags.forEach(tag => params.append('exclude_tag', tag)); + } const query = params.toString(); return apiRequest(`/tasks${query ? `?${query}` : ''}`); diff --git a/opal-web/src/lib/api/types.js b/opal-web/src/lib/api/types.js index 7813321..9ed7027 100644 --- a/opal-web/src/lib/api/types.js +++ b/opal-web/src/lib/api/types.js @@ -77,6 +77,7 @@ * @property {string} [project] * @property {string} [priority] * @property {string[]} [tags] + * @property {string[]} [excludeTags] */ export {}; diff --git a/opal-web/src/lib/components/FilterModal.svelte b/opal-web/src/lib/components/FilterModal.svelte new file mode 100644 index 0000000..084d120 --- /dev/null +++ b/opal-web/src/lib/components/FilterModal.svelte @@ -0,0 +1,303 @@ + + + + + + + + diff --git a/opal-web/src/lib/components/FilterPills.svelte b/opal-web/src/lib/components/FilterPills.svelte new file mode 100644 index 0000000..6057995 --- /dev/null +++ b/opal-web/src/lib/components/FilterPills.svelte @@ -0,0 +1,112 @@ + + +{#if tokens.length > 0} +
+ {#each tokens as token} + + {/each} +
+{/if} + + diff --git a/opal-web/src/lib/components/Header.svelte b/opal-web/src/lib/components/Header.svelte index 2f020c9..2f28c56 100644 --- a/opal-web/src/lib/components/Header.svelte +++ b/opal-web/src/lib/components/Header.svelte @@ -1,5 +1,7 @@
- +
+ + + +
@@ -59,6 +81,11 @@ onSelect={onReportChange} /> + {}} +/> +