diff --git a/src/ToggleButton.svelte b/src/ToggleButton.svelte new file mode 100644 index 000000000..cebdc9786 --- /dev/null +++ b/src/ToggleButton.svelte @@ -0,0 +1,68 @@ + + + + + + +
+ {#each options as option} + + {/each} +
diff --git a/src/base/projects/Commit.svelte b/src/base/projects/Commit.svelte index a8ab70ed2..c33225c51 100644 --- a/src/base/projects/Commit.svelte +++ b/src/base/projects/Commit.svelte @@ -27,6 +27,7 @@ padding: 1rem; background: var(--color-foreground-background-subtle); border-radius: var(--border-radius); + margin-bottom: 1.5rem; } .summary { display: flex; diff --git a/src/base/projects/Issue/IssueFilter.svelte b/src/base/projects/Issue/IssueFilter.svelte deleted file mode 100644 index 7f86ca7dd..000000000 --- a/src/base/projects/Issue/IssueFilter.svelte +++ /dev/null @@ -1,71 +0,0 @@ - - - - -
- - · - -
- -{#if filteredIssues.length} - -{:else} - -
{capitalize(state)} issues
-
No issues matched the current filter
-
-{/if} diff --git a/src/base/projects/Issues.svelte b/src/base/projects/Issues.svelte index d7189249f..e037c41c5 100644 --- a/src/base/projects/Issues.svelte +++ b/src/base/projects/Issues.svelte @@ -1,24 +1,42 @@ + +
- - {@const sortedIssues = filteredIssues.sort(({ timestamp: t1 }, { timestamp: t2 }) => t2 - t1)} +
+ {navigate(`?state=${e.detail}`);}} active={state} /> +
+ + {#if filteredIssues.length}
{#each sortedIssues as issue} -
navigate(issue.id)}> +
{ + project.navigateTo({ + content: ProjectContent.Issue, + issue: issue.id, + patch: null, + revision: null, + path: null + }); + }}>
{/each}
- + {:else} + +
{capitalize(state)} issues
+
No issues matched the current filter
+
+ {/if}
diff --git a/src/base/projects/Patch/PatchFilter.svelte b/src/base/projects/Patch/PatchFilter.svelte deleted file mode 100644 index 698e62fa9..000000000 --- a/src/base/projects/Patch/PatchFilter.svelte +++ /dev/null @@ -1,74 +0,0 @@ - - - - -
-
state = "proposed"} - disabled={sortedPatches.proposed.length === 0} - class:active={state === "proposed"}> - {sortedPatches.proposed.length} Proposed -
-
state = "draft"} - disabled={sortedPatches.draft.length === 0} - class:active={state === "draft"}> - {sortedPatches.draft.length} Draft -
-
state = "archived"} - disabled={sortedPatches.archived.length === 0} - class:active={state === "archived"}> - {sortedPatches.archived.length} Archived -
-
- -{#if filteredPatches.length} - -{:else} - -
{capitalize(state)} patches
-
No patches matched the current filter
-
-{/if} diff --git a/src/base/projects/Patch/PatchTabBar.svelte b/src/base/projects/Patch/PatchTabBar.svelte index bc5bb807a..fc102fab3 100644 --- a/src/base/projects/Patch/PatchTabBar.svelte +++ b/src/base/projects/Patch/PatchTabBar.svelte @@ -1,6 +1,10 @@
-
-
dispatch("switchTab", PatchTab.Timeline)}> - Patch -
-
dispatch("switchTab", PatchTab.Diff)}> - Changeset -
-
- - - - - - -
-
+ {dispatch("switchTab", e.detail);}} active={activeTab} /> + + + + + + + +
diff --git a/src/base/projects/Patches.svelte b/src/base/projects/Patches.svelte index 49a6a1b1d..c559d9240 100644 --- a/src/base/projects/Patches.svelte +++ b/src/base/projects/Patches.svelte @@ -1,23 +1,41 @@
- +
+ {state = e.detail;}} active={state} /> +
+ + {#if filteredPatches.length}
{#each filteredPatches as patch} -
navigate(patch.id)}> +
{ + project.navigateTo({ + content: ProjectContent.Patch, + patch: patch.id, + issue: null, + revision: null, + path: null + }); + }}>
{/each}
- + {:else} + +
{capitalize(state)} patches
+
No patches matched the current filter
+
+ {/if}
diff --git a/src/base/projects/Project.svelte b/src/base/projects/Project.svelte index 76c9f9480..e62bf0ab7 100644 --- a/src/base/projects/Project.svelte +++ b/src/base/projects/Project.svelte @@ -1,5 +1,7 @@