Files
artchat/app/components/tool/Uses.vue
Arthur DANJOU ff28b719de feat: enhance command palette with new "uses" feature and update chat types
- Added "View setup" command to the command palette in English, French, and Spanish.
- Removed "Tech Stack" command from the command palette.
- Updated MessageContainer to handle new "uses" message type.
- Refactored chat.ts to use a new ChatMessages function for better organization.
- Created new Uses.vue component to display a list of software and gadgets.
- Added Item.vue and List.vue components for rendering individual items and categories.
- Updated content configuration to include new skills and uses categories.
- Added new JSON files for programming languages, frontend, backend, devops, and python frameworks.
- Updated existing JSON files for homelab items with improved descriptions.
- Removed obsolete stack JSON files.
2025-09-02 21:19:32 +02:00

38 lines
1.2 KiB
Vue

<script lang="ts" setup>
const { t } = useI18n({ useScope: 'local' })
const { data: items } = await useAsyncData('uses', async () => await queryCollection('uses').all())
const { data: categories } = await useAsyncData('categories', async () => await queryCollection('usesCategories').all())
</script>
<template>
<section>
<div class="prose dark:prose-invert">
<p>{{ t('description') }}</p>
</div>
<div v-if="items" class="space-y-12 mt-4">
<UsesList v-for="category in categories" :key="category.id" :title="category.name">
<UsesItem
v-for="(item, id) in items.filter(item => item.category === String(category.meta.title).toLowerCase())"
:key="id"
:item="item"
/>
</UsesList>
</div>
</section>
</template>
<i18n lang="json">
{
"en": {
"description": "Here is a comprehensive list of all the software I use, gadgets I love, and other things I recommend."
},
"fr": {
"description": "Voici une grande liste de tous mes logiciels que j'utilise, gadgets que j'adore et autres choses que je recommande."
},
"es": {
"description": "Aquí hay una gran lista de todo el software que uso, gadgets que amo y otras cosas que recomiendo."
}
}
</i18n>