Skip to content

Commit 0d75d6a

Browse files
committed
feat(DsfrCard): permet d'ajouter des attributs au lien
1 parent abcd812 commit 0d75d6a

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

src/components/DsfrCard/DsfrCard.types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ export type DsfrCardProps = {
1212
imgSrc?: string
1313
link?: string | RouteLocationRaw
1414
title: string
15+
titleLinkAttrs: Record<string, unknown>
1516
description: string
1617
size?: 'md' | 'medium' | 'large' | 'lg' | 'sm' | 'small' | undefined
1718
detail?: string

src/components/DsfrCard/DsfrCard.vue

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
<script lang="ts" setup>
22
import { computed, ref } from 'vue'
3-
import type { RouterLink } from 'vue-router'
43
54
import DsfrBadge from '../DsfrBadge/DsfrBadge.vue'
65
import DsfrButtonGroup from '../DsfrButton/DsfrButtonGroup.vue'
@@ -11,6 +10,7 @@ import type { DsfrCardProps } from './DsfrCard.types'
1110
export type { DsfrCardProps }
1211
1312
const props = withDefaults(defineProps<DsfrCardProps>(), {
13+
titleLinkAttrs: () => ({}),
1414
imgSrc: undefined,
1515
link: undefined,
1616
detail: undefined,
@@ -76,13 +76,15 @@ defineExpose({ goToTargetLink })
7676
:href="(link as string)"
7777
data-testid="card-link"
7878
class="fr-card__link"
79+
v-bind="titleLinkAttrs"
7980
>{{ title }}</a>
8081
<RouterLink
8182
v-else-if="link"
8283
:to="link"
8384
class="fr-card__link"
8485
data-testid="card-link"
85-
@click="$event.stopPropagation()"
86+
v-bind="titleLinkAttrs"
87+
@click.stop=""
8688
>
8789
{{ title }}
8890
</RouterLink>

src/components/DsfrCard/docs-demo/DsfrCardDemoActions.vue

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,11 @@ const actions = [
3737
<template>
3838
<div class="fr-container fr-my-2v">
3939
<DsfrCard
40+
link="https://www.data.gouv.fr/fr/datasets/r/0c3f1b2e-4a5d-4a7b-8f9c-6d1e0f3a2b8c"
41+
:title-link-attrs="{
42+
target: '_blank',
43+
rel: 'noopener noreferrer',
44+
}"
4045
:img-src="imgSrc"
4146
:description="description"
4247
:detail="detail"

0 commit comments

Comments
 (0)