codevdesign 1.0.78 → 2.0.0

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.
Files changed (94) hide show
  1. package/assets/csqc.css +28 -30
  2. package/composants/csqcAide.vue +1 -1
  3. package/composants/csqcAlerteErreur.vue +1 -1
  4. package/composants/csqcChaise/chaiseConteneur.vue +4 -4
  5. package/composants/csqcChaise/chaiseItem.vue +54 -54
  6. package/composants/csqcCodeBudgetaireGenerique.vue +260 -256
  7. package/composants/csqcConfirmation.vue +76 -75
  8. package/composants/csqcDate.vue +88 -86
  9. package/composants/csqcDialogue.vue +120 -118
  10. package/composants/csqcEditeurTexteRiche.vue +378 -378
  11. package/composants/csqcEntete.vue +17 -17
  12. package/composants/csqcImportCSV.vue +2 -2
  13. package/composants/csqcModaleSaisie.vue +97 -97
  14. package/composants/csqcRecherche.vue +9 -9
  15. package/composants/csqcRechercheUtilisateur.vue +198 -198
  16. package/composants/csqcSnackbar.vue +207 -207
  17. package/composants/csqcSwitch.vue +6 -6
  18. package/composants/csqcTable/csqcTable.vue +19 -14
  19. package/composants/csqcTable/csqcTableModaleChoixColonnes.vue +5 -5
  20. package/composants/csqcTable/sortableDataTable.ts +1 -1
  21. package/composants/csqcTexteBilingue.vue +1 -1
  22. package/composants/csqcTiroir.vue +197 -197
  23. package/composants/gabarit/csqcMenu.vue +4 -4
  24. package/composants/gabarit/pivEntete.vue +6 -5
  25. package/composants/gabarit/pivPiedPage.vue +44 -29
  26. package/composants/validateurs.ts +8 -2
  27. package/editeur.ts +1 -1
  28. package/importCSV.ts +1 -1
  29. package/index.ts +80 -80
  30. package/locales/en.json +1 -1
  31. package/locales/fr.json +3 -3
  32. package/modeles/assurancesAssuranceGeneraleGrics.ts +3 -3
  33. package/modeles/assurancesAssurancePersonnelleGrics.ts +6 -6
  34. package/modeles/assurancesContratGrics.ts +6 -6
  35. package/modeles/assurancesDetailsPrimeReguliereGrics.ts +4 -4
  36. package/modeles/assurancesDonneesAssureurGrics.ts +5 -5
  37. package/modeles/assurancesEmployeGrics.ts +4 -4
  38. package/modeles/assurancesGrics.ts +6 -6
  39. package/modeles/assurancesRegimeAssuranceGrics.ts +2 -2
  40. package/modeles/assurancesRegimeBaseEmployeurGrics.ts +2 -2
  41. package/modeles/assurancesRegimeBaseGrics.ts +2 -2
  42. package/modeles/composants/csqcMenuModele.ts +18 -18
  43. package/modeles/composants/datatableColonne.ts +19 -19
  44. package/modeles/employeAdresseGrics.ts +6 -6
  45. package/modeles/employeAdressesPersonnellesGrics.ts +4 -4
  46. package/modeles/employeAffectationCorpsEmploiGrics.ts +2 -2
  47. package/modeles/employeBanquesCongeBanqueGrics.ts +2 -2
  48. package/modeles/employeBanquesCongeGrics.ts +6 -6
  49. package/modeles/employeBanquesCongeRegimeAbsenceGrics.ts +2 -2
  50. package/modeles/employeCourrielsPersonnels.ts +2 -2
  51. package/modeles/employeCourrielsProfessionnels.ts +2 -2
  52. package/modeles/employeEmploisCategorieGrics.ts +2 -2
  53. package/modeles/employeEmploisClasseGrics.ts +2 -2
  54. package/modeles/employeEmploisCorpsEmploiGrics.ts +2 -2
  55. package/modeles/employeEmploisEtatEmploiGrics.ts +2 -2
  56. package/modeles/employeEmploisGrics.ts +29 -29
  57. package/modeles/employeEmploisGroupePaieGrics.ts +2 -2
  58. package/modeles/employeEmploisLieuTravailPrincipalGrics.ts +3 -3
  59. package/modeles/employeEmploisLieuxTravailSecondairesGrics.ts +3 -3
  60. package/modeles/employeEmploisRegimeAbsenceGrics.ts +2 -2
  61. package/modeles/employeEmploisSecteurGrics.ts +2 -2
  62. package/modeles/employeEmploisStatutEngagementGrics.ts +2 -2
  63. package/modeles/employeExperienceEmploiGrics.ts +2 -2
  64. package/modeles/employeExperienceEmployeGrics.ts +5 -5
  65. package/modeles/employeExperienceExperiencesGrics.ts +4 -4
  66. package/modeles/employeExperienceExperiencesTotalesGrics.ts +7 -7
  67. package/modeles/employeExperienceGrics.ts +9 -9
  68. package/modeles/employeGrics.ts +23 -23
  69. package/modeles/employeTelephoneGrics.ts +4 -4
  70. package/modeles/employeTelephonesPersonnelsGrics.ts +3 -3
  71. package/modeles/employeTelephonesProfessionnelsGrics.ts +3 -3
  72. package/modeles/groupeCE.ts +6 -6
  73. package/modeles/groupeCEIntervalle.ts +6 -6
  74. package/modeles/historiquesAbsenceBanqueGrics.ts +2 -2
  75. package/modeles/historiquesAbsenceGrics.ts +13 -13
  76. package/modeles/historiquesAbsenceLieuTravailGrics.ts +2 -2
  77. package/modeles/historiquesAbsenceSousBanqueGrics.ts +2 -2
  78. package/modeles/motifsAbsenceBanque.ts +2 -2
  79. package/modeles/motifsAbsenceGrics.ts +9 -9
  80. package/modeles/motifsAbsenceRegimeAbsence.ts +2 -2
  81. package/modeles/motifsAbsenceSousMotifs.ts +2 -2
  82. package/modeles/motifsAbsenceTraitementBanques.ts +3 -3
  83. package/modeles/syndicat.ts +18 -18
  84. package/modeles/syndicatGroupeCe.ts +3 -3
  85. package/modeles/syndicatResponsable.ts +8 -8
  86. package/modeles/syndicatUnite.ts +3 -3
  87. package/modeles/unite.ts +15 -15
  88. package/modeles/uniteTypeEnseignement.ts +4 -4
  89. package/modeles/utilisateur.ts +8 -8
  90. package/outils/appAxios.ts +16 -16
  91. package/outils/csqcOutils.ts +6 -5
  92. package/outils/csqcRafraichisseurTokenParent.ts +20 -4
  93. package/outils/rafraichisseurToken.ts +1 -1
  94. package/package.json +13 -13
@@ -1,197 +1,197 @@
1
- <template>
2
- <v-navigation-drawer
3
- v-model="visible"
4
- location="right"
5
- temporary
6
- class="pa-0 elevation-2 csqc-ligneBleue"
7
- :persistent="persistant"
8
- v-bind="$attrs"
9
- :width="grosseurTiroir"
10
- @keydown.esc="!persistant ? fermeture : ''"
11
- @click:outside="!persistant ? fermeture : ''"
12
- >
13
- <v-card class="pa-0 ma-0 pl-8 pt-8">
14
- <!-- Bouton en haut à droite -->
15
- <v-btn
16
- icon="mdi-close"
17
- variant="text"
18
- class="position-absolute iconeHover"
19
- style="top: 5px; right: 5px"
20
- @click="fermeture"
21
- ></v-btn>
22
-
23
- <v-card-title
24
- class="pa-0 ma-0 pb-6 text-wrap"
25
- style="font-size: 24px"
26
- >
27
- <slot name="titre"></slot>
28
- <div text-h5>{{ titre }}</div>
29
- </v-card-title>
30
-
31
- <v-card-text class="pa-0 ma-0 pb-6 pr-6">
32
- <v-container>
33
- <slot></slot>
34
- <slot name="content"></slot>
35
- </v-container>
36
- </v-card-text>
37
- <v-card-actions class="my-2 d-flex justify-end pr-6 pb-5">
38
- <slot name="actions"></slot>
39
- <v-btn
40
- v-if="btnAnnuler"
41
- color="primary"
42
- variant="text"
43
- :loading="operationEnCours"
44
- @click="fermeture"
45
- >
46
- {{ props.btnAnnulerTexte ? props.btnAnnulerTexte : $t('csqc.bouton.annuler') }}
47
- </v-btn>
48
-
49
- <v-btn
50
- v-if="btnOk"
51
- class="Gouttiere"
52
- color="primary"
53
- variant="flat"
54
- :loading="operationEnCours"
55
- :disabled="btnOkDesactiver || operationEnCours"
56
- @click="okBouton"
57
- >
58
- {{ props.btnOkTexte ? props.btnOkTexte : $t('csqc.bouton.ok') }}
59
- </v-btn>
60
- </v-card-actions>
61
- </v-card>
62
- </v-navigation-drawer>
63
- <Teleport to="body">
64
- <v-fab
65
- v-if="retourEnHaut && afficherBoutonHaut"
66
- style="position: fixed; bottom: 24px; right: 24px; z-index: 2000"
67
- elevation="8"
68
- color="primary"
69
- icon="mdi-arrow-up"
70
- @click="allerEnHaut"
71
- />
72
- </Teleport>
73
- </template>
74
- <script lang="ts" setup>
75
- import { ref, computed, watch, nextTick, useAttrs } from 'vue'
76
- import { useDisplay } from 'vuetify'
77
-
78
- const visible = ref(false)
79
- const display = useDisplay()
80
- const attrs = useAttrs()
81
-
82
- // Déclaration des props
83
- const props = defineProps({
84
- titre: {
85
- type: String,
86
- default: '',
87
- required: false,
88
- },
89
- btnAnnuler: {
90
- type: Boolean,
91
- default: true,
92
- required: false,
93
- },
94
- btnOk: {
95
- type: Boolean,
96
- default: true,
97
- required: false,
98
- },
99
- btnAnnulerTexte: {
100
- type: String,
101
- default: '',
102
- required: false,
103
- },
104
- btnOkDesactiver: {
105
- type: Boolean,
106
- default: false,
107
- required: false,
108
- },
109
- operationEnCours: { type: Boolean, default: false },
110
- persistant: { type: Boolean, default: true },
111
- btnOkTexte: {
112
- type: String,
113
- default: '',
114
- required: false,
115
- },
116
- retourEnHaut: {
117
- type: Boolean,
118
- default: true,
119
- },
120
- })
121
-
122
- // Déclaration des événements
123
- const emit = defineEmits(['fermer', 'ok'])
124
-
125
- // Back to top
126
- const afficherBoutonHaut = ref(false)
127
- let conteneurScroll: Element | null = null
128
-
129
- function onScroll() {
130
- afficherBoutonHaut.value = (conteneurScroll?.scrollTop ?? 0) > 350
131
- }
132
-
133
- function allerEnHaut() {
134
- conteneurScroll?.scrollTo({ top: 0, behavior: 'smooth' })
135
- }
136
-
137
- watch(visible, async val => {
138
- if (!props.retourEnHaut) return
139
- if (val) {
140
- await nextTick()
141
- conteneurScroll = document.querySelector('.v-navigation-drawer--active .v-navigation-drawer__content')
142
- conteneurScroll?.addEventListener('scroll', onScroll)
143
- } else {
144
- conteneurScroll?.removeEventListener('scroll', onScroll)
145
- conteneurScroll = null
146
- afficherBoutonHaut.value = false
147
- }
148
- })
149
-
150
- // Méthodes
151
- const ouvrir = () => {
152
- visible.value = true
153
- }
154
-
155
- const fermer = () => {
156
- visible.value = false
157
- }
158
-
159
- const fermeture = () => {
160
- emit('fermer')
161
- fermer()
162
- }
163
-
164
- const okBouton = () => {
165
- emit('ok')
166
- fermer()
167
- }
168
-
169
- // Calcul des tailles du tiroir en fonction du breakpoint
170
- const grosseurTiroir = computed(() => {
171
- if (attrs.width !== undefined && attrs.width !== null) return attrs.width as string | number
172
- switch (display.name.value) {
173
- case 'xs':
174
- return ''
175
- case 'sm':
176
- return 0.95 * display.width.value
177
- case 'md':
178
- return 0.8 * display.width.value
179
- case 'lg':
180
- return 0.7 * display.width.value
181
- case 'xl':
182
- return 0.6 * display.width.value
183
- case 'xxl':
184
- return 0.5 * display.width.value
185
- default:
186
- return ''
187
- }
188
- })
189
-
190
- defineExpose({ ouvrir, fermer })
191
- </script>
192
-
193
- <style>
194
- .csqc-ligneBleue {
195
- border-left: 30px #095797 solid !important;
196
- }
197
- </style>
1
+ <template>
2
+ <v-navigation-drawer
3
+ v-model="visible"
4
+ location="right"
5
+ temporary
6
+ class="pa-0 elevation-2 csqc-ligneBleue"
7
+ :persistent="persistant"
8
+ v-bind="$attrs"
9
+ :width="grosseurTiroir"
10
+ @keydown.esc="!persistant ? fermeture : ''"
11
+ @click:outside="!persistant ? fermeture : ''"
12
+ >
13
+ <v-card class="pa-0 ma-0 pl-8 pt-8">
14
+ <!-- Bouton en haut à droite -->
15
+ <v-btn
16
+ icon="mdi-close"
17
+ variant="text"
18
+ class="position-absolute iconeHover"
19
+ style="right: 5px; top: 5px"
20
+ @click="fermeture"
21
+ ></v-btn>
22
+
23
+ <v-card-title
24
+ class="pa-0 ma-0 pb-6 text-wrap"
25
+ style="font-size: 24px"
26
+ >
27
+ <slot name="titre"></slot>
28
+ <div text-h5>{{ titre }}</div>
29
+ </v-card-title>
30
+
31
+ <v-card-text class="pa-0 ma-0 pb-6 pr-6">
32
+ <v-container>
33
+ <slot></slot>
34
+ <slot name="content"></slot>
35
+ </v-container>
36
+ </v-card-text>
37
+ <v-card-actions class="my-2 d-flex justify-end pr-6 pb-5">
38
+ <slot name="actions"></slot>
39
+ <v-btn
40
+ v-if="btnAnnuler"
41
+ color="primary"
42
+ variant="text"
43
+ :loading="operationEnCours"
44
+ @click="fermeture"
45
+ >
46
+ {{ props.btnAnnulerTexte ? props.btnAnnulerTexte : $t('csqc.bouton.annuler') }}
47
+ </v-btn>
48
+
49
+ <v-btn
50
+ v-if="btnOk"
51
+ class="Gouttiere"
52
+ color="primary"
53
+ variant="flat"
54
+ :loading="operationEnCours"
55
+ :disabled="btnOkDesactiver || operationEnCours"
56
+ @click="okBouton"
57
+ >
58
+ {{ props.btnOkTexte ? props.btnOkTexte : $t('csqc.bouton.ok') }}
59
+ </v-btn>
60
+ </v-card-actions>
61
+ </v-card>
62
+ </v-navigation-drawer>
63
+ <Teleport to="body">
64
+ <v-fab
65
+ v-if="retourEnHaut && afficherBoutonHaut"
66
+ style="bottom: 24px; position: fixed; right: 24px; z-index: 2000"
67
+ elevation="8"
68
+ color="primary"
69
+ icon="mdi-arrow-up"
70
+ @click="allerEnHaut"
71
+ />
72
+ </Teleport>
73
+ </template>
74
+ <script lang="ts" setup>
75
+ import { ref, computed, watch, nextTick, useAttrs } from 'vue'
76
+ import { useDisplay } from 'vuetify'
77
+
78
+ const visible = ref(false)
79
+ const display = useDisplay()
80
+ const attrs = useAttrs()
81
+
82
+ // Déclaration des props
83
+ const props = defineProps({
84
+ titre: {
85
+ type: String,
86
+ default: '',
87
+ required: false,
88
+ },
89
+ btnAnnuler: {
90
+ type: Boolean,
91
+ default: true,
92
+ required: false,
93
+ },
94
+ btnOk: {
95
+ type: Boolean,
96
+ default: true,
97
+ required: false,
98
+ },
99
+ btnAnnulerTexte: {
100
+ type: String,
101
+ default: '',
102
+ required: false,
103
+ },
104
+ btnOkDesactiver: {
105
+ type: Boolean,
106
+ default: false,
107
+ required: false,
108
+ },
109
+ operationEnCours: { type: Boolean, default: false },
110
+ persistant: { type: Boolean, default: true },
111
+ btnOkTexte: {
112
+ type: String,
113
+ default: '',
114
+ required: false,
115
+ },
116
+ retourEnHaut: {
117
+ type: Boolean,
118
+ default: true,
119
+ },
120
+ })
121
+
122
+ // Déclaration des événements
123
+ const emit = defineEmits(['fermer', 'ok'])
124
+
125
+ // Back to top
126
+ const afficherBoutonHaut = ref(false)
127
+ let conteneurScroll: Element | null = null
128
+
129
+ function onScroll() {
130
+ afficherBoutonHaut.value = (conteneurScroll?.scrollTop ?? 0) > 350
131
+ }
132
+
133
+ function allerEnHaut() {
134
+ conteneurScroll?.scrollTo({ top: 0, behavior: 'smooth' })
135
+ }
136
+
137
+ watch(visible, async val => {
138
+ if (!props.retourEnHaut) return
139
+ if (val) {
140
+ await nextTick()
141
+ conteneurScroll = document.querySelector('.v-navigation-drawer--active .v-navigation-drawer__content')
142
+ conteneurScroll?.addEventListener('scroll', onScroll)
143
+ } else {
144
+ conteneurScroll?.removeEventListener('scroll', onScroll)
145
+ conteneurScroll = null
146
+ afficherBoutonHaut.value = false
147
+ }
148
+ })
149
+
150
+ // Méthodes
151
+ const ouvrir = () => {
152
+ visible.value = true
153
+ }
154
+
155
+ const fermer = () => {
156
+ visible.value = false
157
+ }
158
+
159
+ const fermeture = () => {
160
+ emit('fermer')
161
+ fermer()
162
+ }
163
+
164
+ const okBouton = () => {
165
+ emit('ok')
166
+ fermer()
167
+ }
168
+
169
+ // Calcul des tailles du tiroir en fonction du breakpoint
170
+ const grosseurTiroir = computed(() => {
171
+ if (attrs.width !== undefined && attrs.width !== null) return attrs.width as string | number
172
+ switch (display.name.value) {
173
+ case 'xs':
174
+ return ''
175
+ case 'sm':
176
+ return 0.95 * display.width.value
177
+ case 'md':
178
+ return 0.8 * display.width.value
179
+ case 'lg':
180
+ return 0.7 * display.width.value
181
+ case 'xl':
182
+ return 0.6 * display.width.value
183
+ case 'xxl':
184
+ return 0.5 * display.width.value
185
+ default:
186
+ return ''
187
+ }
188
+ })
189
+
190
+ defineExpose({ ouvrir, fermer })
191
+ </script>
192
+
193
+ <style>
194
+ .csqc-ligneBleue {
195
+ border-left: 30px #095797 solid !important;
196
+ }
197
+ </style>
@@ -238,9 +238,9 @@
238
238
  }
239
239
  /* desktop */
240
240
  .params_item {
241
- font-weight: 400;
242
- color: white !important;
243
241
  background-color: #223654 !important;
242
+ color: white !important;
243
+ font-weight: 400;
244
244
  }
245
245
  /* desktop */
246
246
  .params_item.v-btn--active {
@@ -249,8 +249,8 @@
249
249
  }
250
250
  /* desktop */
251
251
  .params_item.v-btn--active:hover {
252
- color: white !important;
253
252
  background-color: #223654 !important;
253
+ color: white !important;
254
254
  }
255
255
  /* desktop */
256
256
  .params_item.v-btn--active:hover::before {
@@ -258,10 +258,10 @@
258
258
  }
259
259
  /* desktop */
260
260
  .params_item.v-btn--active::before {
261
- opacity: 0.24;
262
261
  border-radius: 0;
263
262
  color: #ffffff80 !important;
264
263
  margin-top: 1px !important;
264
+ opacity: 0.24;
265
265
  }
266
266
 
267
267
  /* mobile couleur du texte de la barre, marge du haut, padding */
@@ -5,8 +5,7 @@
5
5
  elevation="1"
6
6
  >
7
7
  <v-row
8
- class="pl-6 pr-6"
9
- align="center"
8
+ class="pl-6 pr-6 align-center"
10
9
  no-gutters
11
10
  >
12
11
  <!-- Première colonne : Logo -->
@@ -24,8 +23,8 @@
24
23
  <!-- On ne rend l'image qu'une fois la source choisie -->
25
24
  <img
26
25
  v-else
27
- class="logo-img"
28
26
  id="pivImage"
27
+ class="logo-img"
29
28
  :src="currentSrc!"
30
29
  :alt="$t('csqc.pivFooter.logoAlt')"
31
30
  decoding="async"
@@ -52,6 +51,7 @@
52
51
  <v-col class="d-none d-flex justify-end">
53
52
  <!-- langue -->
54
53
  <v-btn
54
+ v-if="props.estVisibleLangue"
55
55
  variant="text"
56
56
  @click="enregistrerLangue()"
57
57
  >{{ $t('csqc.pivEntete.langue') }}
@@ -92,6 +92,7 @@
92
92
  const { current } = useLocale()
93
93
  const props = defineProps({
94
94
  estMobile: { type: Boolean, default: false },
95
+ estVisibleLangue: { type: Boolean, default: true },
95
96
  urlBase: { type: String, required: true },
96
97
  aideUrl: { type: String, default: '' },
97
98
  cssUrl: { type: String, default: '' },
@@ -197,9 +198,9 @@
197
198
  width: 180px;
198
199
  }
199
200
  .logo-img {
201
+ display: block;
200
202
  height: 72px;
201
- transition: opacity 0.15s;
202
203
  opacity: 1;
203
- display: block;
204
+ transition: opacity 0.15s;
204
205
  }
205
206
  </style>
@@ -1,33 +1,48 @@
1
1
  <template>
2
2
  <footer>
3
- <div class="footer-content">
4
- <a href="https://quebec.ca">
5
- <img
6
- id="logoFooter"
7
- alt="Gouvernement du Québec."
8
- src="/images/QUEBEC_couleur.svg"
9
- width="117"
10
- height="35"
11
- />
12
- </a>
13
- <div>
14
- <small>
15
- <a
16
- href="http://www.droitauteur.gouv.qc.ca/copyright.php"
17
- target="_blank"
18
- >© Gouvernement du Québec {{ anneeEnCours }}
3
+ <v-row>
4
+ <!-- slot gauche -->
5
+ <v-col cols="3">
6
+ <slot name="gauche" />
7
+ </v-col>
8
+
9
+ <!-- colonne centrale pour logo Quebec et versions -->
10
+ <v-col cols="6">
11
+ <div class="footer-content">
12
+ <a href="https://quebec.ca">
13
+ <img
14
+ id="logoFooter"
15
+ alt="Gouvernement du Québec."
16
+ src="/images/QUEBEC_couleur.svg"
17
+ width="117"
18
+ height="35"
19
+ />
19
20
  </a>
21
+ <div>
22
+ <small>
23
+ <a
24
+ href="http://www.droitauteur.gouv.qc.ca/copyright.php"
25
+ target="_blank"
26
+ >© Gouvernement du Québec {{ anneeEnCours }}
27
+ </a>
28
+
29
+ <a
30
+ v-if="props.version"
31
+ :href="props.lien"
32
+ target="_blank"
33
+ ><br />
34
+ version <span v-html="props.version"
35
+ /></a>
36
+ </small>
37
+ </div>
38
+ </div>
39
+ </v-col>
20
40
 
21
- <a
22
- v-if="props.version"
23
- :href="props.lien"
24
- target="_blank"
25
- ><br />
26
- version <span v-html="props.version"
27
- /></a>
28
- </small>
29
- </div>
30
- </div>
41
+ <!-- slot droite -->
42
+ <v-col cols="3">
43
+ <slot name="droite" />
44
+ </v-col>
45
+ </v-row>
31
46
  </footer>
32
47
  </template>
33
48
 
@@ -46,18 +61,18 @@
46
61
 
47
62
  <style scoped>
48
63
  footer {
64
+ align-items: center; /* Centrer verticalement */
49
65
  display: flex;
66
+ height: 100px; /* Ajuster la hauteur du footer */
50
67
  justify-content: center; /* Centrer horizontalement */
51
- align-items: center; /* Centrer verticalement */
52
68
  text-align: center; /* Centrer le texte à l'intérieur des éléments */
53
- height: 100px; /* Ajuster la hauteur du footer */
54
69
  }
55
70
 
56
71
  .footer-content {
72
+ align-items: center; /* Centrer horizontalement à l'intérieur de .footer-content */
57
73
  display: flex;
58
74
  flex-direction: column; /* Disposer les éléments les uns sous les autres */
59
75
  justify-content: center; /* Centrer verticalement à l'intérieur de .footer-content */
60
- align-items: center; /* Centrer horizontalement à l'intérieur de .footer-content */
61
76
  }
62
77
 
63
78
  footer a {
@@ -35,7 +35,10 @@ export function estMinimumLongueur(valeur: string, min: number, t: (key: string,
35
35
  'CsqcValidateurs (estMinimumLongeur) - Une valeur négative ou égale à 0 a été reçue. Assurez-vous de passer une valeur supérieur à 0 dans la fonction estMinimumLongeur. La valeur a été mise à 1.',
36
36
  )
37
37
  }
38
- return (valeur && valeur.trim().length >= min) || t('csqc.validateurs.estMinimumLongueur', { count: min, nbCaracteres: min })
38
+ return (
39
+ (valeur && valeur.trim().length >= min) ||
40
+ t('csqc.validateurs.estMinimumLongueur', { count: min, nbCaracteres: min })
41
+ )
39
42
  }
40
43
 
41
44
  /**
@@ -52,7 +55,10 @@ export function estMaximumLongueur(valeur: string, max: number, t: (key: string,
52
55
  )
53
56
  }
54
57
 
55
- return (valeur && valeur.trim().length <= max) || t('csqc.validateurs.estMaximumLongueur', { count: max, nbCaracteres: max })
58
+ return (
59
+ (valeur && valeur.trim().length <= max) ||
60
+ t('csqc.validateurs.estMaximumLongueur', { count: max, nbCaracteres: max })
61
+ )
56
62
  }
57
63
 
58
64
  /**
package/editeur.ts CHANGED
@@ -1 +1 @@
1
- export { default as csqcEditeurTexteRiche } from './composants/csqcEditeurTexteRiche.vue'
1
+ export { default as csqcEditeurTexteRiche } from './composants/csqcEditeurTexteRiche.vue'
package/importCSV.ts CHANGED
@@ -1 +1 @@
1
- export { default as csqcImportCSV } from './composants/csqcImportCSV.vue'
1
+ export { default as csqcImportCSV } from './composants/csqcImportCSV.vue'