diff options
Diffstat (limited to 'src/lib/components/ExtensionCard.svelte')
| -rw-r--r-- | src/lib/components/ExtensionCard.svelte | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/src/lib/components/ExtensionCard.svelte b/src/lib/components/ExtensionCard.svelte new file mode 100644 index 0000000..90769e9 --- /dev/null +++ b/src/lib/components/ExtensionCard.svelte @@ -0,0 +1,47 @@ +<script lang="ts"> + interface Props { + repo: { + source: string; + name: string; + path: string; + commit?: string; + }; + protocol: string; + selectedDomain: string; + } + + let { repo, protocol, selectedDomain }: Props = $props(); +</script> + +<div class="card"> + <div class="card-header"> + <a href={repo.source} target="_blank" class="card-title"> + {repo.name} + </a> + <div class="card-meta"> + {#if repo.commit} + Commit:{' '} + <a + href={`${repo.source}/commit/${repo.commit}`} + target="_blank" + class="commit-link" + > + {repo.commit.substring(0, 7)} + </a> + {:else} + Commit: N/A + {/if} + </div> + </div> + <div class="card-actions"> + <a + href={`${protocol}://add-repo?url=${selectedDomain}${repo.path}`} + class="btn btn-primary" + > + Add Repo + </a> + <a href={`${selectedDomain}${repo.path}`} target="_blank" class="btn btn-secondary"> + JSON + </a> + </div> +</div> |
