- Add Tool interface with name and optional link properties - Update BadgeList and BadgeListCard components to render links - Extract VocalSynthPage types to dedicated module - Migrate resume.json and vocal-synthesis.json data to use Tool format - Add links to all tools, frameworks, and technologies in resume
21 lines
504 B
Vue
21 lines
504 B
Vue
<template>
|
|
<div v-if="tools" class="flex flex-row gap-1 flex-wrap">
|
|
<UBadge v-for="tool in tools" :key="tool.name" size="md" variant="solid">
|
|
<span v-if="tool.link">
|
|
<NuxtLink :to="tool.link" target="_blank">
|
|
{{ tool.name }}
|
|
</NuxtLink>
|
|
</span>
|
|
<span v-else>{{ tool.name }}</span>
|
|
</UBadge>
|
|
</div>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import type { Tool } from '../../types/tool';
|
|
|
|
const { tools } = defineProps<{
|
|
tools: Tool[];
|
|
}>();
|
|
</script>
|