diff --git a/src/lib/components/Link/Link.svelte b/src/lib/components/Link/Link.svelte
index 524c25408..bd054921c 100644
--- a/src/lib/components/Link/Link.svelte
+++ b/src/lib/components/Link/Link.svelte
@@ -17,9 +17,21 @@
$: isExternal = href?.startsWith('http');
-
-
- {#if isExternal}
-
- {/if}
+
+
+
+
+
+ {#if isExternal}
+
+ {/if}
+
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index 78bd0d881..ccf02f54e 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -129,7 +129,7 @@ border-light-300 bg-white text-light-900 dark:border-dark-500 dark:bg-dark-900 d
{:else}
diff --git a/src/routes/repo/[projectId]/Board.svelte b/src/routes/repo/[projectId]/Board.svelte
index cbd3826c5..1dd4da8ab 100644
--- a/src/routes/repo/[projectId]/Board.svelte
+++ b/src/routes/repo/[projectId]/Board.svelte
@@ -1,7 +1,7 @@
+
+
+
+
(shown = !shown)}
+ on:keypress={() => (shown = !shown)}
+ >
+ {#if shown}
+
+ {:else}
+
+ {/if}
+ Common base
+
+ {#if shown}
+
+
+
We're no strangers to love You know the rules and so do I
+
+ A full commitment's what I'm thinking of You wouldn't get this from any other guy
+
+
I just wanna tell you how I'm feeling Gotta make you understand
+
Never gonna give you up
+
Never gonna let you down
+
Never gonna run around and desert you
+
Never gonna make you cry
+
Never gonna say goodbye
+
Never gonna tell a lie and hurt you
+
+
+ {/if}
+
+
diff --git a/src/routes/repo/[projectId]/BranchLane.svelte b/src/routes/repo/[projectId]/BranchLane.svelte
index 248b152af..bc1e7a5bd 100644
--- a/src/routes/repo/[projectId]/BranchLane.svelte
+++ b/src/routes/repo/[projectId]/BranchLane.svelte
@@ -3,7 +3,7 @@
import { getContext, onMount } from 'svelte';
import FileCard from './FileCard.svelte';
import { IconBranch } from '$lib/icons';
- import { Button } from '$lib/components';
+ import { Button, Link } from '$lib/components';
import IconMeatballMenu from '$lib/icons/IconMeatballMenu.svelte';
import CommitCard from './CommitCard.svelte';
import IconGithub from '$lib/icons/IconGithub.svelte';
@@ -11,7 +11,7 @@
import PopupMenu from '../../../lib/components/PopupMenu/PopupMenu.svelte';
import PopupMenuItem from '../../../lib/components/PopupMenu/PopupMenuItem.svelte';
import { dzHighlight } from './dropZone';
- import type { BranchController } from '$lib/vbranches';
+ import type { BranchController, Target } from '$lib/vbranches';
import { BRANCH_CONTROLLER_KEY } from '$lib/vbranches/branchController';
import FileCardNext from './FileCardNext.svelte';
@@ -25,6 +25,7 @@
export let projectId: string;
export let order: number;
export let conflicted: boolean;
+ export let target: Target;
const branchController = getContext
(BRANCH_CONTROLLER_KEY);
@@ -90,13 +91,30 @@
console.log('branch name change:', name);
branchController.updateBranchName(branchId, name);
}
+
+ function nameToBranch(name: string): string {
+ const isAsciiAlphanumeric = (c: string): boolean => /^[A-Za-z0-9]$/.test(c);
+ return name
+ .split('')
+ .map((c) => (isAsciiAlphanumeric(c) ? c : '-'))
+ .join('');
+ }
+
+ function url(target: Target, branchName: string) {
+ const baseBranchName = target.branchName.split('/')[1];
+ const repoBaseUrl = target.remoteUrl
+ .replace(':', '/')
+ .replace('git@', 'https://')
+ .replace('.git', '');
+ return `${repoBaseUrl}/compare/${baseBranchName}...${branchName}`;
+ }
+ {#if localCommits.length > 0}
+
+ {/if}
- {#if localCommits.length > 0}
-