diff --git a/frontend/src/app.html b/frontend/src/app.html index 6df7497..00860b9 100644 --- a/frontend/src/app.html +++ b/frontend/src/app.html @@ -5,6 +5,7 @@ + Focus. %sveltekit.head% diff --git a/frontend/src/components/project/groupMenu.svelte b/frontend/src/components/project/groupMenu.svelte new file mode 100644 index 0000000..5fbbd98 --- /dev/null +++ b/frontend/src/components/project/groupMenu.svelte @@ -0,0 +1,56 @@ + + +{#if isOpen} + +{/if} + + diff --git a/frontend/src/components/project/header.svelte b/frontend/src/components/project/header.svelte index 3604574..634224e 100644 --- a/frontend/src/components/project/header.svelte +++ b/frontend/src/components/project/header.svelte @@ -1,10 +1,13 @@

{project.title}

@@ -45,32 +73,34 @@ } nav { - * { - cursor: pointer; - } - - span { - margin-right: 10px; - color: #aaa; - padding: 5px 10px; - border-radius: 7px; - - &:hover { - // background-color: #fff2; - } - } + display: flex; + flex-direction: row; + align-items: center; button { - background: #324067; - color: inherit; + cursor: pointer; + color: #aaa; + padding: 5px 10px; + margin-left: 10px; + border-radius: 7px; border: none; - border-radius: 10px; - padding: 10px 20px; + background-color: transparent; font-size: inherit; - &:hover { - // background-color: #3a4a77; + &.defined { + color: #6481cc; } + + &.disabled { + color: #555; + cursor: not-allowed; + } + } + + #newButton { + background: #324067; + border-radius: 10px; + padding: 10px 20px; } } diff --git a/frontend/src/components/project/project.svelte b/frontend/src/components/project/project.svelte index f46813a..35b8a7f 100644 --- a/frontend/src/components/project/project.svelte +++ b/frontend/src/components/project/project.svelte @@ -25,8 +25,8 @@ {#if project}
-
{#if view && $projectTags[view.primary_tag_id] && $cards} +
{#each $projectTags[view.primary_tag_id].options as option} { + const { subscribe, set, update } = writable(null as View | null); + + return { + subscribe, + set, + update: async (view: View): Promise => { + const response = await api.put(`/v1/views/${view.id}`, view); + + if (response.status !== status.NoContent) { + processError(response, 'Failed to update view'); + return false; + } + + set(view); + + return true; + } + }; +})(); export const currentModalCard = writable(-1);