codevdesign 0.0.71 → 0.0.73
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/assets/csqc.css +6 -0
- package/composants/csqcEditeurTexteRiche.vue +318 -318
- package/composants/csqcEntete.vue +158 -158
- package/composants/csqcRecherche.vue +206 -206
- package/composants/csqcTable/csqcTable.vue +39 -4
- package/composants/csqcTiroir.vue +155 -155
- package/index.ts +71 -71
- package/package.json +1 -1
|
@@ -1,155 +1,155 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<v-navigation-drawer
|
|
3
|
-
v-model="visible"
|
|
4
|
-
location="right"
|
|
5
|
-
temporary
|
|
6
|
-
class="pa-0 elevation-2 csqc-ligneBleue"
|
|
7
|
-
:width="grosseurTiroir"
|
|
8
|
-
:persistent="persistant"
|
|
9
|
-
@keydown.esc="!persistant ? fermeture : ''"
|
|
10
|
-
@click:outside="!persistant ? fermeture : ''"
|
|
11
|
-
>
|
|
12
|
-
<v-card class="pa-0 ma-0 pl-8 pt-8">
|
|
13
|
-
<!-- Bouton en haut à droite -->
|
|
14
|
-
<v-btn
|
|
15
|
-
icon="mdi-close"
|
|
16
|
-
variant="text"
|
|
17
|
-
class="position-absolute couleurHover"
|
|
18
|
-
style="top: 5px; right: 5px"
|
|
19
|
-
@click="fermeture"
|
|
20
|
-
></v-btn>
|
|
21
|
-
|
|
22
|
-
<v-card-title
|
|
23
|
-
class="pa-0 ma-0 pb-6 text-wrap"
|
|
24
|
-
style="font-size: 24px"
|
|
25
|
-
>
|
|
26
|
-
<slot name="titre"></slot>
|
|
27
|
-
<div text-h5>{{ titre }}</div>
|
|
28
|
-
</v-card-title>
|
|
29
|
-
|
|
30
|
-
<v-card-text class="pa-0 ma-0 pb-6 pr-6">
|
|
31
|
-
<v-container>
|
|
32
|
-
<slot></slot>
|
|
33
|
-
<slot name="content"></slot>
|
|
34
|
-
</v-container>
|
|
35
|
-
</v-card-text>
|
|
36
|
-
<v-card-actions class="my-2 d-flex justify-end pr-6 pb-5">
|
|
37
|
-
<slot name="actions"></slot>
|
|
38
|
-
<v-btn
|
|
39
|
-
v-if="btnAnnuler"
|
|
40
|
-
color="primary"
|
|
41
|
-
variant="text"
|
|
42
|
-
:loading="operationEnCours"
|
|
43
|
-
@click="fermeture"
|
|
44
|
-
>
|
|
45
|
-
{{ props.btnAnnulerTexte ? props.btnAnnulerTexte : $t('csqc.bouton.annuler') }}
|
|
46
|
-
</v-btn>
|
|
47
|
-
|
|
48
|
-
<v-btn
|
|
49
|
-
v-if="btnOk"
|
|
50
|
-
class="Gouttiere"
|
|
51
|
-
color="primary"
|
|
52
|
-
variant="flat"
|
|
53
|
-
:loading="operationEnCours"
|
|
54
|
-
:disabled="btnOkDesactiver || operationEnCours"
|
|
55
|
-
@click="okBouton"
|
|
56
|
-
>
|
|
57
|
-
{{ props.btnOkTexte ? props.btnOkTexte : $t('csqc.bouton.ok') }}
|
|
58
|
-
</v-btn>
|
|
59
|
-
</v-card-actions>
|
|
60
|
-
</v-card>
|
|
61
|
-
</v-navigation-drawer>
|
|
62
|
-
</template>
|
|
63
|
-
<script lang="ts" setup>
|
|
64
|
-
import { ref, computed } from 'vue'
|
|
65
|
-
import { useDisplay } from 'vuetify'
|
|
66
|
-
|
|
67
|
-
const visible = ref(false)
|
|
68
|
-
const display = useDisplay()
|
|
69
|
-
|
|
70
|
-
// Déclaration des props
|
|
71
|
-
const props = defineProps({
|
|
72
|
-
titre: {
|
|
73
|
-
type: String,
|
|
74
|
-
default: '',
|
|
75
|
-
required: false,
|
|
76
|
-
},
|
|
77
|
-
btnAnnuler: {
|
|
78
|
-
type: Boolean,
|
|
79
|
-
default: true,
|
|
80
|
-
required: false,
|
|
81
|
-
},
|
|
82
|
-
btnOk: {
|
|
83
|
-
type: Boolean,
|
|
84
|
-
default: true,
|
|
85
|
-
required: false,
|
|
86
|
-
},
|
|
87
|
-
btnAnnulerTexte: {
|
|
88
|
-
type: String,
|
|
89
|
-
default: '',
|
|
90
|
-
required: false,
|
|
91
|
-
},
|
|
92
|
-
btnOkDesactiver: {
|
|
93
|
-
type: Boolean,
|
|
94
|
-
default: false,
|
|
95
|
-
required: false,
|
|
96
|
-
},
|
|
97
|
-
operationEnCours: { type: Boolean, default: false },
|
|
98
|
-
persistant: { type: Boolean, default: true },
|
|
99
|
-
btnOkTexte: {
|
|
100
|
-
type: String,
|
|
101
|
-
default: '',
|
|
102
|
-
required: false,
|
|
103
|
-
},
|
|
104
|
-
})
|
|
105
|
-
|
|
106
|
-
// Déclaration des événements
|
|
107
|
-
const emit = defineEmits(['fermer', 'ok'])
|
|
108
|
-
|
|
109
|
-
// Méthodes
|
|
110
|
-
const ouvrir = () => {
|
|
111
|
-
visible.value = true
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
const fermer = () => {
|
|
115
|
-
visible.value = false
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
const fermeture = () => {
|
|
119
|
-
emit('fermer')
|
|
120
|
-
fermer()
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
const okBouton = () => {
|
|
124
|
-
emit('ok')
|
|
125
|
-
fermer()
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
// Calcul des tailles du tiroir en fonction du breakpoint
|
|
129
|
-
const grosseurTiroir = computed(() => {
|
|
130
|
-
switch (display.name.value) {
|
|
131
|
-
case 'xs':
|
|
132
|
-
return ''
|
|
133
|
-
case 'sm':
|
|
134
|
-
return 0.95 * display.width.value
|
|
135
|
-
case 'md':
|
|
136
|
-
return 0.8 * display.width.value
|
|
137
|
-
case 'lg':
|
|
138
|
-
return 0.7 * display.width.value
|
|
139
|
-
case 'xl':
|
|
140
|
-
return 0.6 * display.width.value
|
|
141
|
-
case 'xxl':
|
|
142
|
-
return 0.5 * display.width.value
|
|
143
|
-
default:
|
|
144
|
-
return ''
|
|
145
|
-
}
|
|
146
|
-
})
|
|
147
|
-
|
|
148
|
-
defineExpose({ ouvrir, fermer })
|
|
149
|
-
</script>
|
|
150
|
-
|
|
151
|
-
<style>
|
|
152
|
-
.csqc-ligneBleue {
|
|
153
|
-
border-left: 30px #095797 solid !important;
|
|
154
|
-
}
|
|
155
|
-
</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
|
+
:width="grosseurTiroir"
|
|
8
|
+
:persistent="persistant"
|
|
9
|
+
@keydown.esc="!persistant ? fermeture : ''"
|
|
10
|
+
@click:outside="!persistant ? fermeture : ''"
|
|
11
|
+
>
|
|
12
|
+
<v-card class="pa-0 ma-0 pl-8 pt-8">
|
|
13
|
+
<!-- Bouton en haut à droite -->
|
|
14
|
+
<v-btn
|
|
15
|
+
icon="mdi-close"
|
|
16
|
+
variant="text"
|
|
17
|
+
class="position-absolute couleurHover"
|
|
18
|
+
style="top: 5px; right: 5px"
|
|
19
|
+
@click="fermeture"
|
|
20
|
+
></v-btn>
|
|
21
|
+
|
|
22
|
+
<v-card-title
|
|
23
|
+
class="pa-0 ma-0 pb-6 text-wrap"
|
|
24
|
+
style="font-size: 24px"
|
|
25
|
+
>
|
|
26
|
+
<slot name="titre"></slot>
|
|
27
|
+
<div text-h5>{{ titre }}</div>
|
|
28
|
+
</v-card-title>
|
|
29
|
+
|
|
30
|
+
<v-card-text class="pa-0 ma-0 pb-6 pr-6">
|
|
31
|
+
<v-container>
|
|
32
|
+
<slot></slot>
|
|
33
|
+
<slot name="content"></slot>
|
|
34
|
+
</v-container>
|
|
35
|
+
</v-card-text>
|
|
36
|
+
<v-card-actions class="my-2 d-flex justify-end pr-6 pb-5">
|
|
37
|
+
<slot name="actions"></slot>
|
|
38
|
+
<v-btn
|
|
39
|
+
v-if="btnAnnuler"
|
|
40
|
+
color="primary"
|
|
41
|
+
variant="text"
|
|
42
|
+
:loading="operationEnCours"
|
|
43
|
+
@click="fermeture"
|
|
44
|
+
>
|
|
45
|
+
{{ props.btnAnnulerTexte ? props.btnAnnulerTexte : $t('csqc.bouton.annuler') }}
|
|
46
|
+
</v-btn>
|
|
47
|
+
|
|
48
|
+
<v-btn
|
|
49
|
+
v-if="btnOk"
|
|
50
|
+
class="Gouttiere"
|
|
51
|
+
color="primary"
|
|
52
|
+
variant="flat"
|
|
53
|
+
:loading="operationEnCours"
|
|
54
|
+
:disabled="btnOkDesactiver || operationEnCours"
|
|
55
|
+
@click="okBouton"
|
|
56
|
+
>
|
|
57
|
+
{{ props.btnOkTexte ? props.btnOkTexte : $t('csqc.bouton.ok') }}
|
|
58
|
+
</v-btn>
|
|
59
|
+
</v-card-actions>
|
|
60
|
+
</v-card>
|
|
61
|
+
</v-navigation-drawer>
|
|
62
|
+
</template>
|
|
63
|
+
<script lang="ts" setup>
|
|
64
|
+
import { ref, computed } from 'vue'
|
|
65
|
+
import { useDisplay } from 'vuetify'
|
|
66
|
+
|
|
67
|
+
const visible = ref(false)
|
|
68
|
+
const display = useDisplay()
|
|
69
|
+
|
|
70
|
+
// Déclaration des props
|
|
71
|
+
const props = defineProps({
|
|
72
|
+
titre: {
|
|
73
|
+
type: String,
|
|
74
|
+
default: '',
|
|
75
|
+
required: false,
|
|
76
|
+
},
|
|
77
|
+
btnAnnuler: {
|
|
78
|
+
type: Boolean,
|
|
79
|
+
default: true,
|
|
80
|
+
required: false,
|
|
81
|
+
},
|
|
82
|
+
btnOk: {
|
|
83
|
+
type: Boolean,
|
|
84
|
+
default: true,
|
|
85
|
+
required: false,
|
|
86
|
+
},
|
|
87
|
+
btnAnnulerTexte: {
|
|
88
|
+
type: String,
|
|
89
|
+
default: '',
|
|
90
|
+
required: false,
|
|
91
|
+
},
|
|
92
|
+
btnOkDesactiver: {
|
|
93
|
+
type: Boolean,
|
|
94
|
+
default: false,
|
|
95
|
+
required: false,
|
|
96
|
+
},
|
|
97
|
+
operationEnCours: { type: Boolean, default: false },
|
|
98
|
+
persistant: { type: Boolean, default: true },
|
|
99
|
+
btnOkTexte: {
|
|
100
|
+
type: String,
|
|
101
|
+
default: '',
|
|
102
|
+
required: false,
|
|
103
|
+
},
|
|
104
|
+
})
|
|
105
|
+
|
|
106
|
+
// Déclaration des événements
|
|
107
|
+
const emit = defineEmits(['fermer', 'ok'])
|
|
108
|
+
|
|
109
|
+
// Méthodes
|
|
110
|
+
const ouvrir = () => {
|
|
111
|
+
visible.value = true
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
const fermer = () => {
|
|
115
|
+
visible.value = false
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
const fermeture = () => {
|
|
119
|
+
emit('fermer')
|
|
120
|
+
fermer()
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
const okBouton = () => {
|
|
124
|
+
emit('ok')
|
|
125
|
+
fermer()
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
// Calcul des tailles du tiroir en fonction du breakpoint
|
|
129
|
+
const grosseurTiroir = computed(() => {
|
|
130
|
+
switch (display.name.value) {
|
|
131
|
+
case 'xs':
|
|
132
|
+
return ''
|
|
133
|
+
case 'sm':
|
|
134
|
+
return 0.95 * display.width.value
|
|
135
|
+
case 'md':
|
|
136
|
+
return 0.8 * display.width.value
|
|
137
|
+
case 'lg':
|
|
138
|
+
return 0.7 * display.width.value
|
|
139
|
+
case 'xl':
|
|
140
|
+
return 0.6 * display.width.value
|
|
141
|
+
case 'xxl':
|
|
142
|
+
return 0.5 * display.width.value
|
|
143
|
+
default:
|
|
144
|
+
return ''
|
|
145
|
+
}
|
|
146
|
+
})
|
|
147
|
+
|
|
148
|
+
defineExpose({ ouvrir, fermer })
|
|
149
|
+
</script>
|
|
150
|
+
|
|
151
|
+
<style>
|
|
152
|
+
.csqc-ligneBleue {
|
|
153
|
+
border-left: 30px #095797 solid !important;
|
|
154
|
+
}
|
|
155
|
+
</style>
|
package/index.ts
CHANGED
|
@@ -1,71 +1,71 @@
|
|
|
1
|
-
import csqcAlerteErreur from './composants/csqcAlerteErreur.vue'
|
|
2
|
-
import csqcDialogue from './composants/csqcDialogue.vue'
|
|
3
|
-
import csqcOptionSwitch from './composants/csqcOptionSwitch.vue'
|
|
4
|
-
import csqcRecherche from './composants/csqcRecherche.vue'
|
|
5
|
-
import csqcSnackbar from './composants/csqcSnackbar.vue'
|
|
6
|
-
import csqcTiroir from './composants/csqcTiroir.vue'
|
|
7
|
-
import pivEntete from './composants/gabarit/pivEntete.vue'
|
|
8
|
-
import pivFooter from './composants/gabarit/pivPiedPage.vue'
|
|
9
|
-
import csqcMenu from './composants/gabarit/csqcMenu.vue'
|
|
10
|
-
import csqcConfirmation from './composants/csqcConfirmation.vue'
|
|
11
|
-
import csqcTable from './composants/csqcTable/csqcTable.vue'
|
|
12
|
-
import csqcCodeBudgetaire from './composants/codeBudgetaireGenerique.vue'
|
|
13
|
-
//import csqcChaise from './composants/csqcChaise/chaiseConteneur.vue'
|
|
14
|
-
import csqcAide from './composants/csqcAide.vue'
|
|
15
|
-
import csqcEntete from './composants/csqcEntete.vue'
|
|
16
|
-
import csqcTexteBilingue from './composants/csqcTexteBilingue.vue'
|
|
17
|
-
import csqcEditeurTexteRiche from './composants/csqcEditeurTexteRiche.vue'
|
|
18
|
-
//import validateurs from './validateurs'
|
|
19
|
-
|
|
20
|
-
import Utilisateur from './modeles/utilisateur'
|
|
21
|
-
import Unite from './modeles/unite'
|
|
22
|
-
import Intervention from './modeles/intervention'
|
|
23
|
-
import DroitIntervention from './modeles/droitIntervention'
|
|
24
|
-
import Role from './modeles/role'
|
|
25
|
-
import RoleMin from './modeles/roleMin'
|
|
26
|
-
import GroupeCE from './modeles/groupeCE'
|
|
27
|
-
import NotificationGabaritDefaut from './modeles/notificationGabaritDefaut'
|
|
28
|
-
import modeleSnackbar from './modeles/composants/snackbar'
|
|
29
|
-
import modeleDatatableColonne from './modeles/composants/datatableColonne'
|
|
30
|
-
import apiReponse from './modeles/apiReponse'
|
|
31
|
-
import data from './modeles/data'
|
|
32
|
-
import response from './modeles/response'
|
|
33
|
-
|
|
34
|
-
import csqcEn from './locales/en.json'
|
|
35
|
-
import csqcFr from './locales/fr.json'
|
|
36
|
-
|
|
37
|
-
export {
|
|
38
|
-
csqcFr,
|
|
39
|
-
csqcEn,
|
|
40
|
-
csqcAlerteErreur,
|
|
41
|
-
csqcDialogue,
|
|
42
|
-
csqcConfirmation,
|
|
43
|
-
csqcOptionSwitch,
|
|
44
|
-
csqcRecherche,
|
|
45
|
-
csqcSnackbar,
|
|
46
|
-
csqcTable,
|
|
47
|
-
csqcTiroir,
|
|
48
|
-
csqcMenu,
|
|
49
|
-
csqcCodeBudgetaire,
|
|
50
|
-
//csqcChaise,
|
|
51
|
-
pivFooter,
|
|
52
|
-
pivEntete,
|
|
53
|
-
csqcAide,
|
|
54
|
-
csqcEntete,
|
|
55
|
-
csqcTexteBilingue,
|
|
56
|
-
csqcEditeurTexteRiche,
|
|
57
|
-
//validateurs,
|
|
58
|
-
Utilisateur,
|
|
59
|
-
Unite,
|
|
60
|
-
Intervention,
|
|
61
|
-
modeleSnackbar,
|
|
62
|
-
modeleDatatableColonne,
|
|
63
|
-
apiReponse,
|
|
64
|
-
data,
|
|
65
|
-
response,
|
|
66
|
-
NotificationGabaritDefaut,
|
|
67
|
-
DroitIntervention,
|
|
68
|
-
Role,
|
|
69
|
-
RoleMin,
|
|
70
|
-
GroupeCE,
|
|
71
|
-
}
|
|
1
|
+
import csqcAlerteErreur from './composants/csqcAlerteErreur.vue'
|
|
2
|
+
import csqcDialogue from './composants/csqcDialogue.vue'
|
|
3
|
+
import csqcOptionSwitch from './composants/csqcOptionSwitch.vue'
|
|
4
|
+
import csqcRecherche from './composants/csqcRecherche.vue'
|
|
5
|
+
import csqcSnackbar from './composants/csqcSnackbar.vue'
|
|
6
|
+
import csqcTiroir from './composants/csqcTiroir.vue'
|
|
7
|
+
import pivEntete from './composants/gabarit/pivEntete.vue'
|
|
8
|
+
import pivFooter from './composants/gabarit/pivPiedPage.vue'
|
|
9
|
+
import csqcMenu from './composants/gabarit/csqcMenu.vue'
|
|
10
|
+
import csqcConfirmation from './composants/csqcConfirmation.vue'
|
|
11
|
+
import csqcTable from './composants/csqcTable/csqcTable.vue'
|
|
12
|
+
import csqcCodeBudgetaire from './composants/codeBudgetaireGenerique.vue'
|
|
13
|
+
//import csqcChaise from './composants/csqcChaise/chaiseConteneur.vue'
|
|
14
|
+
import csqcAide from './composants/csqcAide.vue'
|
|
15
|
+
import csqcEntete from './composants/csqcEntete.vue'
|
|
16
|
+
import csqcTexteBilingue from './composants/csqcTexteBilingue.vue'
|
|
17
|
+
import csqcEditeurTexteRiche from './composants/csqcEditeurTexteRiche.vue'
|
|
18
|
+
//import validateurs from './validateurs'
|
|
19
|
+
|
|
20
|
+
import Utilisateur from './modeles/utilisateur'
|
|
21
|
+
import Unite from './modeles/unite'
|
|
22
|
+
import Intervention from './modeles/intervention'
|
|
23
|
+
import DroitIntervention from './modeles/droitIntervention'
|
|
24
|
+
import Role from './modeles/role'
|
|
25
|
+
import RoleMin from './modeles/roleMin'
|
|
26
|
+
import GroupeCE from './modeles/groupeCE'
|
|
27
|
+
import NotificationGabaritDefaut from './modeles/notificationGabaritDefaut'
|
|
28
|
+
import modeleSnackbar from './modeles/composants/snackbar'
|
|
29
|
+
import modeleDatatableColonne from './modeles/composants/datatableColonne'
|
|
30
|
+
import apiReponse from './modeles/apiReponse'
|
|
31
|
+
import data from './modeles/data'
|
|
32
|
+
import response from './modeles/response'
|
|
33
|
+
|
|
34
|
+
import csqcEn from './locales/en.json'
|
|
35
|
+
import csqcFr from './locales/fr.json'
|
|
36
|
+
|
|
37
|
+
export {
|
|
38
|
+
csqcFr,
|
|
39
|
+
csqcEn,
|
|
40
|
+
csqcAlerteErreur,
|
|
41
|
+
csqcDialogue,
|
|
42
|
+
csqcConfirmation,
|
|
43
|
+
csqcOptionSwitch,
|
|
44
|
+
csqcRecherche,
|
|
45
|
+
csqcSnackbar,
|
|
46
|
+
csqcTable,
|
|
47
|
+
csqcTiroir,
|
|
48
|
+
csqcMenu,
|
|
49
|
+
csqcCodeBudgetaire,
|
|
50
|
+
//csqcChaise,
|
|
51
|
+
pivFooter,
|
|
52
|
+
pivEntete,
|
|
53
|
+
csqcAide,
|
|
54
|
+
csqcEntete,
|
|
55
|
+
csqcTexteBilingue,
|
|
56
|
+
csqcEditeurTexteRiche,
|
|
57
|
+
//validateurs,
|
|
58
|
+
Utilisateur,
|
|
59
|
+
Unite,
|
|
60
|
+
Intervention,
|
|
61
|
+
modeleSnackbar,
|
|
62
|
+
modeleDatatableColonne,
|
|
63
|
+
apiReponse,
|
|
64
|
+
data,
|
|
65
|
+
response,
|
|
66
|
+
NotificationGabaritDefaut,
|
|
67
|
+
DroitIntervention,
|
|
68
|
+
Role,
|
|
69
|
+
RoleMin,
|
|
70
|
+
GroupeCE,
|
|
71
|
+
}
|