aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Corentin THOMASSET <corentin.thomasset74@gmail.com> 2024-02-12 14:31:21 +0100
committerGravatar GitHub <noreply@github.com> 2024-02-12 13:31:21 +0000
commita07806cd15fdbd24c88afaf618a2d0c16d66bb3f (patch)
treeaa9b4b1a1df725b4e88605d6ed11c99efe2264af /src
parent10e56b35bb1bb96549be6ea2ad120525ed373e01 (diff)
downloadit-tools-a07806cd15fdbd24c88afaf618a2d0c16d66bb3f.tar.gz
it-tools-a07806cd15fdbd24c88afaf618a2d0c16d66bb3f.tar.zst
it-tools-a07806cd15fdbd24c88afaf618a2d0c16d66bb3f.zip
refactor(home): lightened tool cards (#882)
Diffstat (limited to 'src')
-rw-r--r--src/components/ToolCard.vue69
1 files changed, 16 insertions, 53 deletions
diff --git a/src/components/ToolCard.vue b/src/components/ToolCard.vue
index 768e9ed..4ba4564 100644
--- a/src/components/ToolCard.vue
+++ b/src/components/ToolCard.vue
@@ -1,78 +1,41 @@
<script setup lang="ts">
import { useThemeVars } from 'naive-ui';
import FavoriteButton from './FavoriteButton.vue';
-import { useAppTheme } from '@/ui/theme/themes';
import type { Tool } from '@/tools/tools.types';
const props = defineProps<{ tool: Tool & { category: string } }>();
const { tool } = toRefs(props);
const theme = useThemeVars();
-
-const appTheme = useAppTheme();
</script>
<template>
- <router-link :to="tool.path">
- <c-card class="tool-card">
+ <router-link :to="tool.path" class="decoration-none">
+ <c-card class="h-full transition transition-duration-0.5s !border-2px !hover:border-primary">
<div flex items-center justify-between>
- <n-icon class="icon" size="40" :component="tool.icon" />
+ <n-icon class="text-neutral-400 dark:text-neutral-600" size="40" :component="tool.icon" />
+
<div flex items-center gap-8px>
- <n-tag
+ <div
v-if="tool.isNew"
- size="small"
- class="badge-new"
- round
- type="success"
- :bordered="false"
- :color="{ color: theme.primaryColor, textColor: theme.tagColor }"
+ class="rounded-full px-8px py-3px text-xs text-white dark:text-neutral-800"
+ :style="{
+ 'background-color': theme.primaryColor,
+ }"
>
{{ $t('toolCard.new') }}
- </n-tag>
+ </div>
<FavoriteButton :tool="tool" />
</div>
</div>
- <n-h3 class="title">
- <n-ellipsis>{{ tool.name }}</n-ellipsis>
- </n-h3>
- <div class="description">
- <n-ellipsis :line-clamp="2" :tooltip="false" style="min-height: 44.78px">
- {{ tool.description }}
- <br>&nbsp;
- </n-ellipsis>
+ <div class="truncat my-5px text-lg text-black dark:text-white">
+ {{ tool.name }}
+ </div>
+
+ <div class="line-clamp-2 text-neutral-500 dark:text-neutral-400">
+ {{ tool.description }}
</div>
</c-card>
</router-link>
</template>
-
-<style lang="less" scoped>
-a {
- text-decoration: none;
-}
-
-.tool-card {
- transition: border-color ease 0.5s;
- border-width: 2px !important;
- color: transparent;
-
- &:hover {
- border-color: v-bind('appTheme.primary.colorHover');
- }
-
- .icon {
- opacity: 0.6;
- color: v-bind('theme.textColorBase');
- }
-
- .title {
- margin: 5px 0;
- }
-
- .description {
- opacity: 0.6;
- color: v-bind('theme.textColorBase');
- margin: 5px 0;
- }
-}
-</style>