@cnamts/synapse 0.0.5-alpha → 0.0.7-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/design-system-v3.d.ts +487 -415
- package/dist/design-system-v3.js +2954 -2203
- package/dist/design-system-v3.umd.cjs +6 -6
- package/dist/style.css +1 -1
- package/package.json +17 -17
- package/src/assets/settings.scss +3 -0
- package/src/assets/tokens.scss +16 -16
- package/src/components/BackBtn/AccessibiliteItems.ts +0 -30
- package/src/components/BackBtn/BackBtn.mdx +1 -1
- package/src/components/BackBtn/BackBtn.stories.ts +12 -9
- package/src/components/BackBtn/BackBtn.vue +0 -1
- package/src/components/BackToTopBtn/AccessibiliteItems.ts +0 -30
- package/src/components/BackToTopBtn/BackToTopBtn.mdx +1 -1
- package/src/components/BackToTopBtn/BackToTopBtn.stories.ts +3 -3
- package/src/components/CollapsibleList/Accessibilite.stories.ts +4 -0
- package/src/components/CollapsibleList/AccessibiliteItems.ts +55 -62
- package/src/components/CollapsibleList/CollapsibleList.stories.ts +1 -1
- package/src/components/CookieBanner/Accessibilite.stories.ts +219 -0
- package/src/components/CookieBanner/AccessibiliteItems.ts +356 -0
- package/src/components/CookieBanner/CookieBanner.mdx +219 -0
- package/src/components/CookieBanner/CookieBanner.stories.ts +680 -0
- package/src/components/CookieBanner/CookieBanner.vue +225 -0
- package/src/components/CookieBanner/config.ts +38 -0
- package/src/components/CookieBanner/locales.ts +12 -0
- package/src/components/CookieBanner/tests/CookieBanner.spec.ts +129 -0
- package/src/components/CookieBanner/tests/__snapshots__/CookieBanner.spec.ts.snap +197 -0
- package/src/components/CookiesSelection/CookiesInformation/CookiesInformation.vue +123 -0
- package/src/components/CookiesSelection/CookiesInformation/locales.ts +21 -0
- package/src/components/CookiesSelection/CookiesInformation/tests/CookiesInformation.spec.ts +121 -0
- package/src/components/CookiesSelection/CookiesSelection.vue +127 -0
- package/src/components/CookiesSelection/CookiesTable/CookiesTable.vue +47 -0
- package/src/components/CookiesSelection/CookiesTable/headers.ts +14 -0
- package/src/components/CookiesSelection/CookiesTable/tests/CookiesTable.spec.ts +30 -0
- package/src/components/CookiesSelection/CookiesTable/tests/__snapshots__/CookiesTable.spec.ts.snap +3 -0
- package/src/components/CookiesSelection/locales.ts +10 -0
- package/src/components/CookiesSelection/tests/CookiesSelection.spec.ts +184 -0
- package/src/components/CookiesSelection/tests/__snapshots__/CookiesSelection.spec.ts.snap +192 -0
- package/src/components/CookiesSelection/types.ts +15 -0
- package/src/components/CopyBtn/AccessibiliteItems.ts +0 -30
- package/src/components/CopyBtn/CopyBtn.mdx +1 -1
- package/src/components/CopyBtn/CopyBtn.stories.ts +9 -6
- package/src/components/CopyBtn/CopyBtn.vue +0 -1
- package/src/components/Customs/SyBtnSelect/Accessibilite.mdx +14 -0
- package/src/components/Customs/SyBtnSelect/Accessibilite.stories.ts +193 -0
- package/src/components/Customs/SyBtnSelect/AccessibiliteItems.ts +139 -0
- package/src/components/Customs/SyBtnSelect/SyBtnSelect.mdx +3 -2
- package/src/components/Customs/SyBtnSelect/SyBtnSelect.stories.ts +30 -14
- package/src/components/Customs/SyBtnSelect/SyBtnSelect.vue +21 -13
- package/src/components/Customs/SyBtnSelect/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/Customs/SyInputSelect/Accessibilite.mdx +14 -0
- package/src/components/Customs/SyInputSelect/Accessibilite.stories.ts +166 -0
- package/src/components/Customs/SyInputSelect/AccessibiliteItems.ts +96 -0
- package/src/components/Customs/SyInputSelect/SyInputSelect.mdx +7 -3
- package/src/components/Customs/SyInputSelect/SyInputSelect.stories.ts +24 -65
- package/src/components/Customs/SyInputSelect/SyInputSelect.vue +36 -4
- package/src/components/Customs/SyInputSelect/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/Customs/SySelect/Accessibilite.mdx +14 -0
- package/src/components/Customs/SySelect/Accessibilite.stories.ts +217 -0
- package/src/components/Customs/SySelect/AccessibiliteItems.ts +173 -0
- package/src/components/Customs/SySelect/SySelect.mdx +4 -4
- package/src/components/Customs/SySelect/SySelect.stories.ts +4 -60
- package/src/components/Customs/SySelect/SySelect.vue +35 -8
- package/src/components/Customs/SySelect/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/Customs/SyTextField/Accessibilite.mdx +14 -0
- package/src/components/Customs/SyTextField/Accessibilite.stories.ts +224 -0
- package/src/components/Customs/SyTextField/AccessibiliteItems.ts +198 -0
- package/src/components/Customs/SyTextField/SyTextField.mdx +1 -1
- package/src/components/Customs/SyTextField/SyTextField.stories.ts +118 -7
- package/src/components/Customs/SyTextField/SyTextField.vue +27 -7
- package/src/components/Customs/SyTextField/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/Customs/SyTextField/tests/__snapshots__/SyTextField.spec.ts.snap +2 -1
- package/src/components/DataList/Accessibilite.mdx +14 -0
- package/src/components/DataList/Accessibilite.stories.ts +166 -0
- package/src/components/DataList/AccessibiliteItems.ts +47 -0
- package/src/components/DataList/DataList.mdx +1 -1
- package/src/components/DataList/DataList.stories.ts +10 -10
- package/src/components/DataList/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/DataListGroup/Accessibilite.mdx +14 -0
- package/src/components/DataListGroup/Accessibilite.stories.ts +225 -0
- package/src/components/DataListGroup/AccessibiliteItems.ts +79 -0
- package/src/components/DataListGroup/DataListGroup.mdx +1 -1
- package/src/components/DataListGroup/DataListGroup.stories.ts +7 -7
- package/src/components/DataListGroup/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/DialogBox/Accessibilite.mdx +14 -0
- package/src/components/DialogBox/Accessibilite.stories.ts +189 -0
- package/src/components/DialogBox/AccessibiliteItems.ts +167 -0
- package/src/components/DialogBox/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/DownloadBtn/AccessibiliteItems.ts +1 -31
- package/src/components/DownloadBtn/DownloadBtn.mdx +5 -6
- package/src/components/DownloadBtn/DownloadBtn.stories.ts +25 -26
- package/src/components/ErrorPage/Accessibilite.mdx +14 -0
- package/src/components/ErrorPage/Accessibilite.stories.ts +189 -0
- package/src/components/ErrorPage/AccessibiliteItems.ts +205 -0
- package/src/components/ErrorPage/ErrorPage.vue +1 -1
- package/src/components/ErrorPage/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/ErrorPage/tests/__snapshots__/ErrorPage.spec.ts.snap +4 -4
- package/src/components/FooterBar/Accessibilite.mdx +14 -0
- package/src/components/FooterBar/Accessibilite.stories.ts +223 -0
- package/src/components/FooterBar/AccessibiliteItems.ts +257 -0
- package/src/components/FooterBar/FooterBar.mdx +2 -2
- package/src/components/FooterBar/FooterBar.stories.ts +14 -14
- package/src/components/FooterBar/FooterBar.vue +86 -75
- package/src/components/FooterBar/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/FooterBar/tests/__snapshots__/FooterBar.spec.ts.snap +22 -20
- package/src/components/FranceConnectBtn/AccessibiliteItems.ts +0 -30
- package/src/components/FranceConnectBtn/FranceConnectBtn.mdx +1 -1
- package/src/components/FranceConnectBtn/FranceConnectBtn.stories.ts +5 -4
- package/src/components/HeaderBar/Accessibilite.mdx +14 -0
- package/src/components/HeaderBar/Accessibilite.stories.ts +223 -0
- package/src/components/HeaderBar/AccessibiliteItems.ts +194 -0
- package/src/components/HeaderBar/HeaderBar.stories.ts +19 -12
- package/src/components/HeaderBar/HeaderBar.vue +9 -12
- package/src/components/HeaderBar/HeaderBurgerMenu/Accessibilite.mdx +14 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/Accessibilite.stories.ts +223 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/AccessibiliteItems.ts +174 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/HeaderBurgerMenu.vue +1 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/HeaderBar/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/HeaderBar/tests/__snapshots__/HeaderBar.spec.ts.snap +1 -1
- package/src/components/HeaderLoading/Accessibilite.mdx +14 -0
- package/src/components/HeaderLoading/Accessibilite.stories.ts +167 -0
- package/src/components/HeaderLoading/AccessibiliteItems.ts +29 -0
- package/src/components/HeaderLoading/HeaderLoading.mdx +1 -1
- package/src/components/HeaderLoading/HeaderLoading.stories.ts +1 -1
- package/src/components/HeaderLoading/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/HeaderNavigationBar/HeaderNavigationBar.stories.ts +104 -32
- package/src/components/HeaderNavigationBar/HorizontalNavbar/HorizontalNavbar.vue +35 -33
- package/src/components/HeaderToolbar/Accessibilite.mdx +14 -0
- package/src/components/HeaderToolbar/Accessibilite.stories.ts +203 -0
- package/src/components/HeaderToolbar/AccessibiliteItems.ts +200 -0
- package/src/components/HeaderToolbar/HeaderToolbar.mdx +1 -1
- package/src/components/HeaderToolbar/HeaderToolbar.stories.ts +2 -2
- package/src/components/HeaderToolbar/HeaderToolbar.vue +24 -1
- package/src/components/HeaderToolbar/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/LangBtn/Accessibilite.stories.ts +3 -1
- package/src/components/LangBtn/AccessibiliteItems.ts +0 -31
- package/src/components/LangBtn/LangBtn.mdx +1 -1
- package/src/components/LangBtn/LangBtn.stories.ts +4 -4
- package/src/components/LangBtn/LangBtn.vue +3 -2
- package/src/components/Logo/Accessibilite.mdx +14 -0
- package/src/components/Logo/Accessibilite.stories.ts +223 -0
- package/src/components/Logo/AccessibiliteItems.ts +155 -0
- package/src/components/Logo/Logo.mdx +1 -1
- package/src/components/Logo/Logo.stories.ts +8 -8
- package/src/components/Logo/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/LogoBrandSection/Accessibilite.mdx +14 -0
- package/src/components/LogoBrandSection/Accessibilite.stories.ts +223 -0
- package/src/components/LogoBrandSection/AccessibiliteItems.ts +194 -0
- package/src/components/LogoBrandSection/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/MaintenancePage/Accessibilite.mdx +14 -0
- package/src/components/MaintenancePage/Accessibilite.stories.ts +189 -0
- package/src/components/MaintenancePage/AccessibiliteItems.ts +173 -0
- package/src/components/MaintenancePage/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/NirField/Accessibilite.mdx +14 -0
- package/src/components/NirField/Accessibilite.stories.ts +214 -0
- package/src/components/NirField/AccessibiliteItems.ts +243 -0
- package/src/components/NirField/NirField.mdx +213 -0
- package/src/components/NirField/NirField.stories.ts +412 -0
- package/src/components/NirField/NirField.vue +453 -0
- package/src/components/NirField/config.ts +16 -0
- package/src/components/NirField/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/NirField/locales.ts +12 -0
- package/src/components/NirField/nirValidation.ts +42 -0
- package/src/components/NirField/tests/NirField.spec.ts +120 -0
- package/src/components/NotFoundPage/Accessibilite.mdx +14 -0
- package/src/components/NotFoundPage/Accessibilite.stories.ts +190 -0
- package/src/components/NotFoundPage/AccessibiliteItems.ts +205 -0
- package/src/components/NotFoundPage/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/NotFoundPage/tests/__snapshots__/NotFoundPage.spec.ts.snap +4 -4
- package/src/components/NotificationBar/AccessibiliteItems.ts +0 -30
- package/src/components/NotificationBar/NotificationBar.mdx +1 -1
- package/src/components/PageContainer/PageContainer.mdx +1 -1
- package/src/components/PageContainer/PageContainer.stories.ts +9 -9
- package/src/components/PageContainer/PageContainer.vue +24 -18
- package/src/components/PageContainer/tests/PageContainer.spec.ts +2 -2
- package/src/components/PageContainer/tests/__snapshots__/PageContainer.spec.ts.snap +2 -2
- package/src/components/PhoneField/Accessibilite.mdx +14 -0
- package/src/components/PhoneField/Accessibilite.stories.ts +216 -0
- package/src/components/PhoneField/AccessibiliteItems.ts +238 -0
- package/src/components/PhoneField/PhoneField.mdx +1 -1
- package/src/components/PhoneField/PhoneField.stories.ts +2 -2
- package/src/components/PhoneField/PhoneField.vue +0 -1
- package/src/components/PhoneField/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/SkipLink/Accessibilite.stories.ts +1 -1
- package/src/components/SkipLink/SkipLink.stories.ts +2 -2
- package/src/components/SocialMediaLinks/Accessibilite.mdx +14 -0
- package/src/components/SocialMediaLinks/Accessibilite.stories.ts +170 -0
- package/src/components/SocialMediaLinks/AccessibiliteItems.ts +160 -0
- package/src/components/SocialMediaLinks/SocialMediaLinks.mdx +1 -1
- package/src/components/SocialMediaLinks/SocialMediaLinks.stories.ts +1 -1
- package/src/components/SocialMediaLinks/SocialMediaLinks.vue +7 -1
- package/src/components/SocialMediaLinks/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/SocialMediaLinks/tests/__snapshots__/SocialMediaLinks.spec.ts.snap +2 -2
- package/src/components/SubHeader/Accessibilite.mdx +14 -0
- package/src/components/SubHeader/Accessibilite.stories.ts +166 -0
- package/src/components/SubHeader/AccessibiliteItems.ts +146 -0
- package/src/components/SubHeader/SubHeader.mdx +1 -1
- package/src/components/SubHeader/SubHeader.stories.ts +17 -14
- package/src/components/SubHeader/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/SyAlert/Accessibilite.mdx +14 -0
- package/src/components/{Alert → SyAlert}/Accessibilite.stories.ts +1 -1
- package/src/components/{Alert → SyAlert}/AccessibiliteItems.ts +2 -32
- package/src/components/{Alert/Alert.mdx → SyAlert/SyAlert.mdx} +9 -9
- package/src/components/{Alert/Alert.stories.ts → SyAlert/SyAlert.stories.ts} +22 -22
- package/src/components/{Alert/Alert.vue → SyAlert/SyAlert.vue} +7 -0
- package/src/components/SyAlert/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/{Alert/tests/Alert.spec.ts → SyAlert/tests/SyAlert.spec.ts} +5 -5
- package/src/components/{Alert/tests/__snapshots__/Alert.spec.ts.snap → SyAlert/tests/__snapshots__/SyAlert.spec.ts.snap} +2 -2
- package/src/components/UserMenuBtn/Accessibilite.mdx +14 -0
- package/src/components/UserMenuBtn/Accessibilite.stories.ts +189 -0
- package/src/components/UserMenuBtn/AccessibiliteItems.ts +155 -0
- package/src/components/UserMenuBtn/UserMenuBtn.mdx +17 -17
- package/src/components/UserMenuBtn/UserMenuBtn.stories.ts +121 -19
- package/src/components/UserMenuBtn/UserMenuBtn.vue +25 -29
- package/src/components/UserMenuBtn/config.ts +1 -1
- package/src/components/UserMenuBtn/constants/ExpertiseLevelEnum.ts +4 -0
- package/src/components/index.ts +11 -4
- package/src/composables/rules/tests/useFieldValidation.spec.ts +60 -58
- package/src/composables/rules/useFieldValidation.ts +65 -28
- package/src/main.ts +1 -0
- package/src/stories/GuideDuDev/CommentUtiliserLesRules.mdx +67 -79
- package/src/stories/GuideDuDev/components.stories.ts +5 -5
- package/src/stories/GuideDuDev/moduleDeNotification.mdx +1 -1
- package/src/stories/Guidelines/Vuetify/Vuetify.mdx +11 -0
- package/src/stories/Guidelines/Vuetify/Vuetify.stories.ts +138 -0
- package/src/stories/Guidelines/Vuetify/VuetifyItems.ts +350 -0
- /package/src/components/{Alert → CookieBanner}/Accessibilite.mdx +0 -0
- /package/src/components/{Alert → CookieBanner}/constants/ExpertiseLevelEnum.ts +0 -0
- /package/src/components/{Alert → SyAlert}/locales.ts +0 -0
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import type { CustomizableOptions } from '@/composables/useCustomizableOptions'
|
|
3
|
+
import useCustomizableOptions from '@/composables/useCustomizableOptions'
|
|
4
|
+
import { mdiClose, mdiArrowULeftBottom } from '@mdi/js'
|
|
5
|
+
import { computed, ref } from 'vue'
|
|
6
|
+
import { useDisplay } from 'vuetify'
|
|
7
|
+
import type { CookiesItems } from '../CookiesSelection/types'
|
|
8
|
+
import { config } from './config'
|
|
9
|
+
import { locales } from './locales'
|
|
10
|
+
import CookiesSelection from '../CookiesSelection/CookiesSelection.vue'
|
|
11
|
+
|
|
12
|
+
const props = defineProps<CustomizableOptions & {
|
|
13
|
+
items?: CookiesItems
|
|
14
|
+
}>()
|
|
15
|
+
|
|
16
|
+
const options = useCustomizableOptions(config, props)
|
|
17
|
+
|
|
18
|
+
const emits = defineEmits(['reject', 'accept', 'customize', 'submit'])
|
|
19
|
+
|
|
20
|
+
const active = defineModel({
|
|
21
|
+
type: Boolean,
|
|
22
|
+
default: true,
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
const showCookiesSelection = ref(false)
|
|
26
|
+
|
|
27
|
+
const display = useDisplay()
|
|
28
|
+
const btnWidth = computed(() => {
|
|
29
|
+
return display.smAndDown.value ? '100%' : 'auto'
|
|
30
|
+
})
|
|
31
|
+
|
|
32
|
+
function reject(): void {
|
|
33
|
+
active.value = false
|
|
34
|
+
emits('reject')
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function accept(): void {
|
|
38
|
+
active.value = false
|
|
39
|
+
emits('accept')
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
function customize(): void {
|
|
43
|
+
if (props.items) {
|
|
44
|
+
showCookiesSelection.value = true
|
|
45
|
+
}
|
|
46
|
+
emits('customize')
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
function personalizeCookies(e: Record<string, unknown>) {
|
|
50
|
+
emits('submit', e)
|
|
51
|
+
showCookiesSelection.value = false
|
|
52
|
+
active.value = false
|
|
53
|
+
}
|
|
54
|
+
</script>
|
|
55
|
+
|
|
56
|
+
<template>
|
|
57
|
+
<Teleport
|
|
58
|
+
v-if="active"
|
|
59
|
+
to="body"
|
|
60
|
+
>
|
|
61
|
+
<VSheet
|
|
62
|
+
v-bind="options.banner"
|
|
63
|
+
:aria-label="locales.label"
|
|
64
|
+
class="vd-cookie-banner"
|
|
65
|
+
>
|
|
66
|
+
<div class="vd-cookie-banner__inner">
|
|
67
|
+
<div class="d-flex align-start flex-nowrap pa-0 mb-6">
|
|
68
|
+
<h2 class="text-h5 font-weight-bold">
|
|
69
|
+
{{ locales.title }}
|
|
70
|
+
</h2>
|
|
71
|
+
|
|
72
|
+
<VSpacer v-bind="options.spacer" />
|
|
73
|
+
|
|
74
|
+
<VBtn
|
|
75
|
+
v-if="showCookiesSelection"
|
|
76
|
+
v-bind="options.backBtn"
|
|
77
|
+
:aria-label="locales.backBtn"
|
|
78
|
+
@click="showCookiesSelection = false"
|
|
79
|
+
>
|
|
80
|
+
<VIcon v-bind="options.icon">
|
|
81
|
+
{{ mdiArrowULeftBottom }}
|
|
82
|
+
</VIcon>
|
|
83
|
+
</VBtn>
|
|
84
|
+
<VBtn
|
|
85
|
+
v-else
|
|
86
|
+
v-bind="options.closeBtn"
|
|
87
|
+
:aria-label="locales.closeBtn"
|
|
88
|
+
@click="reject"
|
|
89
|
+
>
|
|
90
|
+
<VIcon v-bind="options.icon">
|
|
91
|
+
{{ mdiClose }}
|
|
92
|
+
</VIcon>
|
|
93
|
+
</VBtn>
|
|
94
|
+
</div>
|
|
95
|
+
<div class="vd-cookie-banner-content">
|
|
96
|
+
<Transition name="height">
|
|
97
|
+
<div v-if="showCookiesSelection && items">
|
|
98
|
+
<CookiesSelection
|
|
99
|
+
:items
|
|
100
|
+
@submit="personalizeCookies"
|
|
101
|
+
>
|
|
102
|
+
<template
|
|
103
|
+
v-for="(_, slotName) in $slots"
|
|
104
|
+
#[slotName]="slotProps"
|
|
105
|
+
>
|
|
106
|
+
<slot
|
|
107
|
+
:name="slotName"
|
|
108
|
+
v-bind="slotProps || {}"
|
|
109
|
+
/>
|
|
110
|
+
</template>
|
|
111
|
+
</CookiesSelection>
|
|
112
|
+
</div>
|
|
113
|
+
<div v-else>
|
|
114
|
+
<slot>
|
|
115
|
+
<p>
|
|
116
|
+
{{ locales.description }}
|
|
117
|
+
</p>
|
|
118
|
+
</slot>
|
|
119
|
+
|
|
120
|
+
<div
|
|
121
|
+
class="vd-cookie-banner-action-ctn d-flex align-center flex-wrap max-width-none mt-6 ga-4"
|
|
122
|
+
>
|
|
123
|
+
<VSpacer v-bind="options.actionsSpacer" />
|
|
124
|
+
|
|
125
|
+
<VBtn
|
|
126
|
+
v-bind="options.customizeBtn"
|
|
127
|
+
data-test-id="customize"
|
|
128
|
+
:width="btnWidth"
|
|
129
|
+
@click="customize"
|
|
130
|
+
>
|
|
131
|
+
{{ locales.customizeBtnText }}
|
|
132
|
+
</VBtn>
|
|
133
|
+
|
|
134
|
+
<VBtn
|
|
135
|
+
v-bind="options.rejectBtn"
|
|
136
|
+
data-test-id="reject"
|
|
137
|
+
:width="btnWidth"
|
|
138
|
+
@click="reject"
|
|
139
|
+
>
|
|
140
|
+
{{ locales.rejectBtnText }}
|
|
141
|
+
</VBtn>
|
|
142
|
+
|
|
143
|
+
<VBtn
|
|
144
|
+
v-bind="options.acceptBtn"
|
|
145
|
+
data-test-id="accept"
|
|
146
|
+
:width="btnWidth"
|
|
147
|
+
@click="accept"
|
|
148
|
+
>
|
|
149
|
+
{{ locales.acceptBtnText }}
|
|
150
|
+
</VBtn>
|
|
151
|
+
</div>
|
|
152
|
+
</div>
|
|
153
|
+
</Transition>
|
|
154
|
+
</div>
|
|
155
|
+
</div>
|
|
156
|
+
</VSheet>
|
|
157
|
+
</Teleport>
|
|
158
|
+
</template>
|
|
159
|
+
|
|
160
|
+
<style lang="scss" scoped>
|
|
161
|
+
|
|
162
|
+
.vd-cookie-banner {
|
|
163
|
+
position: fixed;
|
|
164
|
+
left: 50%;
|
|
165
|
+
bottom: 0;
|
|
166
|
+
display: flex;
|
|
167
|
+
transform: translateX(-50%);
|
|
168
|
+
z-index: 20;
|
|
169
|
+
max-height: calc(100dvh - 64px);
|
|
170
|
+
width: calc(100% - 64px);
|
|
171
|
+
max-width: 1200px;
|
|
172
|
+
margin-bottom: 32px;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
.vd-cookie-banner__inner {
|
|
176
|
+
display: flex;
|
|
177
|
+
flex-direction: column;
|
|
178
|
+
width: 100%;
|
|
179
|
+
background: transparent;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
.vd-cookie-banner-content {
|
|
183
|
+
overflow-y: auto;
|
|
184
|
+
padding-right: 8px;
|
|
185
|
+
background: transparent;
|
|
186
|
+
div {
|
|
187
|
+
background: transparent;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
.vd-cookie-banner-action-ctn .v-btn {
|
|
192
|
+
flex: 1 1 auto;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.v-btn--icon {
|
|
196
|
+
color: rgba(0, 0, 0, 0.54);
|
|
197
|
+
position: absolute;
|
|
198
|
+
right: 24px;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.height-enter-active, .height-leave-active {
|
|
202
|
+
box-sizing: border-box;
|
|
203
|
+
transition: height 2s ease;
|
|
204
|
+
interpolate-size: allow-keywords;
|
|
205
|
+
overflow: hidden;
|
|
206
|
+
background-color: white;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
.height-enter-active {
|
|
210
|
+
transition: height 0.5s ease;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
.height-leave-active {
|
|
214
|
+
transition: height 0.1s ease;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
.height-enter-from, .height-leave-to {
|
|
218
|
+
height: 0;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
.height-enter-to, .height-leave-from {
|
|
222
|
+
height: auto;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
</style>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
const commonBtnConfig = {
|
|
2
|
+
color: 'primary',
|
|
3
|
+
height: 'auto',
|
|
4
|
+
minHeight: '44px',
|
|
5
|
+
class: 'text-wrap',
|
|
6
|
+
} as const
|
|
7
|
+
|
|
8
|
+
export const config = {
|
|
9
|
+
banner: {
|
|
10
|
+
rounded: true,
|
|
11
|
+
elevation: 2,
|
|
12
|
+
class: 'pa-8',
|
|
13
|
+
},
|
|
14
|
+
closeBtn: {
|
|
15
|
+
icon: true,
|
|
16
|
+
variant: 'text',
|
|
17
|
+
width: '32px',
|
|
18
|
+
height: '32px',
|
|
19
|
+
class: 'ml-4',
|
|
20
|
+
},
|
|
21
|
+
backBtn: {
|
|
22
|
+
icon: true,
|
|
23
|
+
variant: 'text',
|
|
24
|
+
width: '32px',
|
|
25
|
+
height: '32px',
|
|
26
|
+
class: 'ml-4',
|
|
27
|
+
},
|
|
28
|
+
customizeBtn: {
|
|
29
|
+
...commonBtnConfig,
|
|
30
|
+
variant: 'outlined',
|
|
31
|
+
},
|
|
32
|
+
rejectBtn: {
|
|
33
|
+
...commonBtnConfig,
|
|
34
|
+
},
|
|
35
|
+
acceptBtn: {
|
|
36
|
+
...commonBtnConfig,
|
|
37
|
+
},
|
|
38
|
+
} as const
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export const locales = {
|
|
2
|
+
label: 'Gestion des cookies',
|
|
3
|
+
title: 'À propos des cookies',
|
|
4
|
+
closeBtn: 'Continuer sans accepter',
|
|
5
|
+
backBtn: 'Précédent',
|
|
6
|
+
description:
|
|
7
|
+
'Ce site utilise des cookies qui nous permettent de vous proposer une expérience en ligne optimale en enregistrant certaines informations lors de votre navigation.',
|
|
8
|
+
moreInformationLabel: 'En savoir plus',
|
|
9
|
+
customizeBtnText: 'Personnaliser mes choix',
|
|
10
|
+
rejectBtnText: 'Continuer sans accepter',
|
|
11
|
+
acceptBtnText: 'Tout accepter',
|
|
12
|
+
}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { mount } from '@vue/test-utils'
|
|
2
|
+
import { describe, it, expect } from 'vitest'
|
|
3
|
+
import CookieBanner from '../CookieBanner.vue'
|
|
4
|
+
import { vuetify } from '@tests/unit/setup'
|
|
5
|
+
describe('CookieBanner', () => {
|
|
6
|
+
it('renders correctly', () => {
|
|
7
|
+
const wrapper = mount(CookieBanner, {
|
|
8
|
+
global: {
|
|
9
|
+
plugins: [vuetify],
|
|
10
|
+
},
|
|
11
|
+
})
|
|
12
|
+
|
|
13
|
+
expect(wrapper.html()).toMatchSnapshot()
|
|
14
|
+
})
|
|
15
|
+
|
|
16
|
+
it('renders correctly on small screens', async () => {
|
|
17
|
+
// @ts-expect-error - Property 'happyDOM' does not exist on type 'Window & typeof globalThis'.
|
|
18
|
+
window.happyDOM.setInnerWidth(600)
|
|
19
|
+
|
|
20
|
+
const wrapper = mount(CookieBanner, {
|
|
21
|
+
global: {
|
|
22
|
+
plugins: [vuetify],
|
|
23
|
+
stubs: {
|
|
24
|
+
Teleport: true,
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
})
|
|
28
|
+
await wrapper.vm.$nextTick()
|
|
29
|
+
|
|
30
|
+
expect(wrapper.find('[data-test-id="customize"]').attributes('style')).toContain('100%')
|
|
31
|
+
})
|
|
32
|
+
|
|
33
|
+
it('emit a reject event when the reject btn is clicked', async () => {
|
|
34
|
+
const wrapper = mount(CookieBanner, {
|
|
35
|
+
global: {
|
|
36
|
+
plugins: [vuetify],
|
|
37
|
+
stubs: {
|
|
38
|
+
Teleport: true,
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
})
|
|
42
|
+
|
|
43
|
+
await wrapper.find('[data-test-id="reject"]').trigger('click')
|
|
44
|
+
|
|
45
|
+
expect(wrapper.emitted()).toHaveProperty('reject')
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
it('emit a accept event when the accept btn is clicked', async () => {
|
|
49
|
+
const wrapper = mount(CookieBanner, {
|
|
50
|
+
global: {
|
|
51
|
+
plugins: [vuetify],
|
|
52
|
+
stubs: {
|
|
53
|
+
Teleport: true,
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
})
|
|
57
|
+
|
|
58
|
+
await wrapper.find('[data-test-id="accept"]').trigger('click')
|
|
59
|
+
|
|
60
|
+
expect(wrapper.emitted()).toHaveProperty('accept')
|
|
61
|
+
})
|
|
62
|
+
|
|
63
|
+
it('does not close the dialog when the customize button is clicked and do not show the cookie form', async () => {
|
|
64
|
+
const wrapper = mount(CookieBanner, {
|
|
65
|
+
global: {
|
|
66
|
+
plugins: [vuetify],
|
|
67
|
+
stubs: {
|
|
68
|
+
Teleport: true,
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
})
|
|
72
|
+
|
|
73
|
+
expect(wrapper.find('.vd-cookie-banner').exists()).toBe(true)
|
|
74
|
+
await wrapper.find('[data-test-id="customize"]').trigger('click')
|
|
75
|
+
await wrapper.vm.$nextTick()
|
|
76
|
+
expect(wrapper.find('.vd-cookie-banner').exists()).toBe(true)
|
|
77
|
+
expect(wrapper.find('.vd-cookies-card').exists()).toBe(false)
|
|
78
|
+
expect(wrapper.emitted()).toHaveProperty('customize')
|
|
79
|
+
})
|
|
80
|
+
|
|
81
|
+
it('does not close the dialog when the customize button is clicked and show the cookie form', async () => {
|
|
82
|
+
const wrapper = mount(CookieBanner, {
|
|
83
|
+
props: {
|
|
84
|
+
items: {
|
|
85
|
+
essentials: [
|
|
86
|
+
{
|
|
87
|
+
name: 'session',
|
|
88
|
+
description: 'Sauvegarde la session pour rester connecté.',
|
|
89
|
+
conservation: '20 heures',
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
name: 'cookie_policy',
|
|
93
|
+
description: 'Sauvegarde les préférences de cookies.',
|
|
94
|
+
conservation: '1 an',
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
functional: [
|
|
98
|
+
{
|
|
99
|
+
name: 'contrast',
|
|
100
|
+
description: 'Sauvegarde la personnalisation de l’affichage.',
|
|
101
|
+
conservation: '1 an',
|
|
102
|
+
},
|
|
103
|
+
],
|
|
104
|
+
analytics: [
|
|
105
|
+
{
|
|
106
|
+
name: 'user_id',
|
|
107
|
+
description: 'Sauvegarde l’identifiant unique de visiteur.',
|
|
108
|
+
conservation: '6 mois',
|
|
109
|
+
},
|
|
110
|
+
],
|
|
111
|
+
},
|
|
112
|
+
},
|
|
113
|
+
global: {
|
|
114
|
+
plugins: [vuetify],
|
|
115
|
+
stubs: {
|
|
116
|
+
Teleport: true,
|
|
117
|
+
},
|
|
118
|
+
},
|
|
119
|
+
})
|
|
120
|
+
|
|
121
|
+
expect(wrapper.find('.vd-cookie-banner').exists()).toBe(true)
|
|
122
|
+
await wrapper.find('[data-test-id="customize"]').trigger('click')
|
|
123
|
+
await wrapper.vm.$nextTick()
|
|
124
|
+
expect(wrapper.find('.vd-cookie-banner').exists()).toBe(true)
|
|
125
|
+
expect(wrapper.find('.vd-cookies-card').exists()).toBe(true)
|
|
126
|
+
expect(wrapper.find('.vd-cookies-card').html()).toMatchSnapshot()
|
|
127
|
+
expect(wrapper.emitted()).toHaveProperty('customize')
|
|
128
|
+
})
|
|
129
|
+
})
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
|
+
|
|
3
|
+
exports[`CookieBanner > does not close the dialog when the customize button is clicked and show the cookie form 1`] = `
|
|
4
|
+
"<div data-v-f92e5352="" class="v-card v-theme--light bg-transparent v-card--density-default elevation-0 v-card--variant-elevated vd-cookies-card">
|
|
5
|
+
<!---->
|
|
6
|
+
<div class="v-card__loader">
|
|
7
|
+
<div class="v-progress-linear v-theme--light v-locale--is-ltr" style="top: 0px; height: 0px; --v-progress-linear-height: 2px;" role="progressbar" aria-hidden="true" aria-valuemin="0" aria-valuemax="100">
|
|
8
|
+
<!---->
|
|
9
|
+
<div class="v-progress-linear__background" style="opacity: NaN;"></div>
|
|
10
|
+
<div class="v-progress-linear__buffer" style="opacity: NaN; width: 0%;"></div>
|
|
11
|
+
<transition-stub name="fade-transition" appear="false" persisted="false" css="true">
|
|
12
|
+
<div class="v-progress-linear__indeterminate">
|
|
13
|
+
<div class="v-progress-linear__indeterminate long"></div>
|
|
14
|
+
<div class="v-progress-linear__indeterminate short"></div>
|
|
15
|
+
</div>
|
|
16
|
+
</transition-stub>
|
|
17
|
+
<!---->
|
|
18
|
+
</div>
|
|
19
|
+
</div>
|
|
20
|
+
<!---->
|
|
21
|
+
<!---->
|
|
22
|
+
<form class="v-form" novalidate="">
|
|
23
|
+
<p class="mb-4">Définissez vos préférences de collecte et de traitement de vos données sur ce site.</p>
|
|
24
|
+
<p class="mb-4">Un cookie est un petit fichier texte déposé sur votre terminal (ordinateur, tablette ou mobile) lors de la visite d’un site ou lors de la consultation d’une publicité. Il contient plusieurs données : le nom du service qui l’a déposé, un identifiant sous forme de numéro unique, une valeur et éventuellement une date d’expiration.</p>
|
|
25
|
+
<div class="d-flex flex-wrap justify-end mx-n2 mt-n2 mb-6"><button type="button" class="v-btn v-theme--light text-primary v-btn--density-default v-btn--size-default v-btn--variant-outlined ma-2" data-test-id="reject-all"><span class="v-btn__overlay"></span><span class="v-btn__underlay"></span>
|
|
26
|
+
<!----><span class="v-btn__content" data-no-activator="">Tout refuser</span>
|
|
27
|
+
<!---->
|
|
28
|
+
<!---->
|
|
29
|
+
</button><button type="button" class="v-btn v-theme--light text-primary v-btn--density-default v-btn--size-default v-btn--variant-outlined ma-2" data-test-id="accept-all"><span class="v-btn__overlay"></span><span class="v-btn__underlay"></span>
|
|
30
|
+
<!----><span class="v-btn__content" data-no-activator="">Tout accepter</span>
|
|
31
|
+
<!---->
|
|
32
|
+
<!---->
|
|
33
|
+
</button></div>
|
|
34
|
+
<div data-v-2ca04413="" class="vd-cookies-information mb-6">
|
|
35
|
+
<h2 data-v-2ca04413="" class="text-subtitle-1 font-weight-bold mb-2">Cookies requis</h2>
|
|
36
|
+
<p data-v-2ca04413="" class="mb-4">Ces cookies sont indispensables au fonctionnement du site et ne peuvent être désactivés.</p>
|
|
37
|
+
<details data-v-2ca04413="">
|
|
38
|
+
<summary data-v-2ca04413="" class="mb-1">Afficher les cookies <i data-v-2ca04413="" class="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z mdi v-icon notranslate v-theme--light v-icon--size-default mr-2" aria-hidden="true" data-test="chevron"></i></summary>
|
|
39
|
+
<div data-v-d0e8c396="" data-v-2ca04413="" class="v-table v-theme--light v-table--density-default vd-cookie-table bg-transparent mb-2">
|
|
40
|
+
<!---->
|
|
41
|
+
<div class="v-table__wrapper">
|
|
42
|
+
<table>
|
|
43
|
+
<thead data-v-d0e8c396="">
|
|
44
|
+
<tr data-v-d0e8c396="">
|
|
45
|
+
<th data-v-d0e8c396="" style="width: 180px;" class="text-left">Dénomination du cookie</th>
|
|
46
|
+
<th data-v-d0e8c396="" style="width: 328px;" class="text-left">Finalité</th>
|
|
47
|
+
<th data-v-d0e8c396="" style="width: 180px;" class="text-left">Durée de conservation</th>
|
|
48
|
+
</tr>
|
|
49
|
+
</thead>
|
|
50
|
+
<tbody data-v-d0e8c396="">
|
|
51
|
+
<tr data-v-d0e8c396="">
|
|
52
|
+
<td data-v-d0e8c396="">session</td>
|
|
53
|
+
<td data-v-d0e8c396="">Sauvegarde la session pour rester connecté.</td>
|
|
54
|
+
<td data-v-d0e8c396="">20 heures</td>
|
|
55
|
+
</tr>
|
|
56
|
+
<tr data-v-d0e8c396="">
|
|
57
|
+
<td data-v-d0e8c396="">cookie_policy</td>
|
|
58
|
+
<td data-v-d0e8c396="">Sauvegarde les préférences de cookies.</td>
|
|
59
|
+
<td data-v-d0e8c396="">1 an</td>
|
|
60
|
+
</tr>
|
|
61
|
+
</tbody>
|
|
62
|
+
</table>
|
|
63
|
+
</div>
|
|
64
|
+
<!---->
|
|
65
|
+
</div>
|
|
66
|
+
</details>
|
|
67
|
+
<!--v-if-->
|
|
68
|
+
</div>
|
|
69
|
+
<div data-v-2ca04413="" class="vd-cookies-information mb-6">
|
|
70
|
+
<h2 data-v-2ca04413="" class="text-subtitle-1 font-weight-bold mb-2">Cookies fonctionnels</h2>
|
|
71
|
+
<p data-v-2ca04413="" class="mb-4">Ces cookies sont utilisés pour capturer vos préférences sur notre site. Ils permettent de vous assurer un confort dans votre navigation.</p>
|
|
72
|
+
<details data-v-2ca04413="">
|
|
73
|
+
<summary data-v-2ca04413="" class="mb-1">Afficher les cookies <i data-v-2ca04413="" class="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z mdi v-icon notranslate v-theme--light v-icon--size-default mr-2" aria-hidden="true" data-test="chevron"></i></summary>
|
|
74
|
+
<div data-v-d0e8c396="" data-v-2ca04413="" class="v-table v-theme--light v-table--density-default vd-cookie-table bg-transparent mb-2">
|
|
75
|
+
<!---->
|
|
76
|
+
<div class="v-table__wrapper">
|
|
77
|
+
<table>
|
|
78
|
+
<thead data-v-d0e8c396="">
|
|
79
|
+
<tr data-v-d0e8c396="">
|
|
80
|
+
<th data-v-d0e8c396="" style="width: 180px;" class="text-left">Dénomination du cookie</th>
|
|
81
|
+
<th data-v-d0e8c396="" style="width: 328px;" class="text-left">Finalité</th>
|
|
82
|
+
<th data-v-d0e8c396="" style="width: 180px;" class="text-left">Durée de conservation</th>
|
|
83
|
+
</tr>
|
|
84
|
+
</thead>
|
|
85
|
+
<tbody data-v-d0e8c396="">
|
|
86
|
+
<tr data-v-d0e8c396="">
|
|
87
|
+
<td data-v-d0e8c396="">contrast</td>
|
|
88
|
+
<td data-v-d0e8c396="">Sauvegarde la personnalisation de l’affichage.</td>
|
|
89
|
+
<td data-v-d0e8c396="">1 an</td>
|
|
90
|
+
</tr>
|
|
91
|
+
</tbody>
|
|
92
|
+
</table>
|
|
93
|
+
</div>
|
|
94
|
+
<!---->
|
|
95
|
+
</div>
|
|
96
|
+
</details>
|
|
97
|
+
<div data-v-2ca04413="" class="v-input v-input--horizontal v-input--center-affix v-input--density-default v-theme--light v-locale--is-ltr v-radio-group vd-cookies-information__radio-group" data-test-id="radio-group">
|
|
98
|
+
<!---->
|
|
99
|
+
<div class="v-input__control">
|
|
100
|
+
<!---->
|
|
101
|
+
<div class="v-selection-control-group v-selection-control-group--inline" role="radiogroup" aria-describedby="radio-group-7-messages">
|
|
102
|
+
<div data-v-2ca04413="" class="v-spacer"></div>
|
|
103
|
+
<div data-v-2ca04413="" class="v-selection-control v-selection-control--inline v-selection-control--density-default v-radio">
|
|
104
|
+
<div class="v-selection-control__wrapper">
|
|
105
|
+
<!---->
|
|
106
|
+
<div class="v-selection-control__input"><i class="mdi-radiobox-blank mdi v-icon notranslate v-theme--light v-icon--size-default" aria-hidden="true"></i><input id="input-10" aria-disabled="false" aria-label="Refuser" type="radio" name="radio-group-7" value="reject"></div>
|
|
107
|
+
</div><label class="v-label v-label--clickable" for="input-10">
|
|
108
|
+
<!---->Refuser
|
|
109
|
+
</label>
|
|
110
|
+
</div>
|
|
111
|
+
<div data-v-2ca04413="" class="v-selection-control v-selection-control--inline v-selection-control--density-default v-radio mr-0">
|
|
112
|
+
<div class="v-selection-control__wrapper">
|
|
113
|
+
<!---->
|
|
114
|
+
<div class="v-selection-control__input"><i class="mdi-radiobox-blank mdi v-icon notranslate v-theme--light v-icon--size-default" aria-hidden="true"></i><input id="input-11" aria-disabled="false" aria-label="Accepter" type="radio" name="radio-group-7" value="accept"></div>
|
|
115
|
+
</div><label class="v-label v-label--clickable" for="input-11">
|
|
116
|
+
<!---->Accepter
|
|
117
|
+
</label>
|
|
118
|
+
</div>
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
<!---->
|
|
122
|
+
<!---->
|
|
123
|
+
</div>
|
|
124
|
+
</div>
|
|
125
|
+
<div data-v-2ca04413="" class="vd-cookies-information mb-6">
|
|
126
|
+
<h2 data-v-2ca04413="" class="text-subtitle-1 font-weight-bold mb-2">Cookies d’analyse</h2>
|
|
127
|
+
<p data-v-2ca04413="" class="mb-4">Ces cookies sont dédiés à l’amélioration de notre site en analysant votre expérience d’utilisation. Ils nous sont très utiles pour vous proposer un site de bonne qualité.</p>
|
|
128
|
+
<details data-v-2ca04413="">
|
|
129
|
+
<summary data-v-2ca04413="" class="mb-1">Afficher les cookies <i data-v-2ca04413="" class="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z mdi v-icon notranslate v-theme--light v-icon--size-default mr-2" aria-hidden="true" data-test="chevron"></i></summary>
|
|
130
|
+
<div data-v-d0e8c396="" data-v-2ca04413="" class="v-table v-theme--light v-table--density-default vd-cookie-table bg-transparent mb-2">
|
|
131
|
+
<!---->
|
|
132
|
+
<div class="v-table__wrapper">
|
|
133
|
+
<table>
|
|
134
|
+
<thead data-v-d0e8c396="">
|
|
135
|
+
<tr data-v-d0e8c396="">
|
|
136
|
+
<th data-v-d0e8c396="" style="width: 180px;" class="text-left">Dénomination du cookie</th>
|
|
137
|
+
<th data-v-d0e8c396="" style="width: 328px;" class="text-left">Finalité</th>
|
|
138
|
+
<th data-v-d0e8c396="" style="width: 180px;" class="text-left">Durée de conservation</th>
|
|
139
|
+
</tr>
|
|
140
|
+
</thead>
|
|
141
|
+
<tbody data-v-d0e8c396="">
|
|
142
|
+
<tr data-v-d0e8c396="">
|
|
143
|
+
<td data-v-d0e8c396="">user_id</td>
|
|
144
|
+
<td data-v-d0e8c396="">Sauvegarde l’identifiant unique de visiteur.</td>
|
|
145
|
+
<td data-v-d0e8c396="">6 mois</td>
|
|
146
|
+
</tr>
|
|
147
|
+
</tbody>
|
|
148
|
+
</table>
|
|
149
|
+
</div>
|
|
150
|
+
<!---->
|
|
151
|
+
</div>
|
|
152
|
+
</details>
|
|
153
|
+
<div data-v-2ca04413="" class="v-input v-input--horizontal v-input--center-affix v-input--density-default v-theme--light v-locale--is-ltr v-radio-group vd-cookies-information__radio-group" data-test-id="radio-group">
|
|
154
|
+
<!---->
|
|
155
|
+
<div class="v-input__control">
|
|
156
|
+
<!---->
|
|
157
|
+
<div class="v-selection-control-group v-selection-control-group--inline" role="radiogroup" aria-describedby="radio-group-12-messages">
|
|
158
|
+
<div data-v-2ca04413="" class="v-spacer"></div>
|
|
159
|
+
<div data-v-2ca04413="" class="v-selection-control v-selection-control--inline v-selection-control--density-default v-radio">
|
|
160
|
+
<div class="v-selection-control__wrapper">
|
|
161
|
+
<!---->
|
|
162
|
+
<div class="v-selection-control__input"><i class="mdi-radiobox-blank mdi v-icon notranslate v-theme--light v-icon--size-default" aria-hidden="true"></i><input id="input-15" aria-disabled="false" aria-label="Refuser" type="radio" name="radio-group-12" value="reject"></div>
|
|
163
|
+
</div><label class="v-label v-label--clickable" for="input-15">
|
|
164
|
+
<!---->Refuser
|
|
165
|
+
</label>
|
|
166
|
+
</div>
|
|
167
|
+
<div data-v-2ca04413="" class="v-selection-control v-selection-control--inline v-selection-control--density-default v-radio mr-0">
|
|
168
|
+
<div class="v-selection-control__wrapper">
|
|
169
|
+
<!---->
|
|
170
|
+
<div class="v-selection-control__input"><i class="mdi-radiobox-blank mdi v-icon notranslate v-theme--light v-icon--size-default" aria-hidden="true"></i><input id="input-16" aria-disabled="false" aria-label="Accepter" type="radio" name="radio-group-12" value="accept"></div>
|
|
171
|
+
</div><label class="v-label v-label--clickable" for="input-16">
|
|
172
|
+
<!---->Accepter
|
|
173
|
+
</label>
|
|
174
|
+
</div>
|
|
175
|
+
</div>
|
|
176
|
+
</div>
|
|
177
|
+
<!---->
|
|
178
|
+
<!---->
|
|
179
|
+
</div>
|
|
180
|
+
</div>
|
|
181
|
+
<div class="d-flex mt-16">
|
|
182
|
+
<div class="v-spacer"></div><button type="button" class="v-btn v-btn--elevated v-theme--light bg-primary v-btn--density-default v-btn--size-default v-btn--variant-elevated" data-test-id="submit"><span class="v-btn__overlay"></span><span class="v-btn__underlay"></span>
|
|
183
|
+
<!----><span class="v-btn__content" data-no-activator="">Enregistrer mes choix</span>
|
|
184
|
+
<!---->
|
|
185
|
+
<!---->
|
|
186
|
+
</button>
|
|
187
|
+
</div>
|
|
188
|
+
</form>
|
|
189
|
+
<!---->
|
|
190
|
+
<!----><span class="v-card__underlay"></span>
|
|
191
|
+
</div>"
|
|
192
|
+
`;
|
|
193
|
+
|
|
194
|
+
exports[`CookieBanner > renders correctly 1`] = `
|
|
195
|
+
"<!--teleport start-->
|
|
196
|
+
<!--teleport end-->"
|
|
197
|
+
`;
|