project-booster-vue 9.62.1 → 9.62.2
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/package.json +1 -1
- package/src/components/rework/alert/MPbAlert.vue +47 -2
- package/src/components/rework/alert/default-payload.json +3 -7
- package/src/components/rework/question/configurations-import/MPbConfigurationsImport.vue +0 -6
- package/src/components/rework/question/upload-document/MPbUploadDocument.vue +0 -45
- package/src/components/scenario/scenarii/appointment-qualification-bathroom.json +96 -20
package/package.json
CHANGED
|
@@ -25,7 +25,12 @@
|
|
|
25
25
|
:imgSrc="options.viewModel.image"
|
|
26
26
|
>
|
|
27
27
|
<template #footer>
|
|
28
|
-
<m-button
|
|
28
|
+
<m-button
|
|
29
|
+
:label="options.viewModel.button.label"
|
|
30
|
+
@click="handleShowModal(options)"
|
|
31
|
+
size="s"
|
|
32
|
+
theme="bordered-primary-02"
|
|
33
|
+
/>
|
|
29
34
|
</template>
|
|
30
35
|
</m-card>
|
|
31
36
|
</div>
|
|
@@ -42,15 +47,38 @@
|
|
|
42
47
|
/>
|
|
43
48
|
</div>
|
|
44
49
|
</div>
|
|
50
|
+
|
|
51
|
+
<m-modal :modalTitle="titleModal" :open="showModal" @update:open="showModal = false" class="m-pb-alert__dialog">
|
|
52
|
+
<template #default>
|
|
53
|
+
<div class="m-pb-alert__dialog__iframe">
|
|
54
|
+
<iframe
|
|
55
|
+
width="560"
|
|
56
|
+
height="315"
|
|
57
|
+
:src="srcModal"
|
|
58
|
+
title="YouTube video player"
|
|
59
|
+
frameborder="0"
|
|
60
|
+
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
|
|
61
|
+
allowfullscreen
|
|
62
|
+
></iframe>
|
|
63
|
+
</div>
|
|
64
|
+
</template>
|
|
65
|
+
<template #footer>
|
|
66
|
+
<m-button label="Fermer" @click.prevent="showModal = false" />
|
|
67
|
+
</template>
|
|
68
|
+
</m-modal>
|
|
45
69
|
</div>
|
|
46
70
|
</template>
|
|
47
71
|
|
|
48
72
|
<script lang="ts" setup>
|
|
49
|
-
import { MNotification, MButton, MCard } from '@mozaic-ds/vue-3';
|
|
73
|
+
import { MNotification, MButton, MCard, MModal } from '@mozaic-ds/vue-3';
|
|
50
74
|
import { PayloadAction } from '../types/genericPayload';
|
|
51
75
|
import { sanitizeCerberusAttribut } from '@/services/sanitize';
|
|
76
|
+
import { ref } from 'vue';
|
|
52
77
|
|
|
53
78
|
const emit = defineEmits(['go-back', 'step-completed']);
|
|
79
|
+
const showModal = ref(false);
|
|
80
|
+
const titleModal = ref('');
|
|
81
|
+
const srcModal = ref('');
|
|
54
82
|
|
|
55
83
|
const props = defineProps({
|
|
56
84
|
/**
|
|
@@ -64,6 +92,16 @@ const props = defineProps({
|
|
|
64
92
|
},
|
|
65
93
|
});
|
|
66
94
|
|
|
95
|
+
const handleShowModal = (option: any) => {
|
|
96
|
+
if (option.viewModel.button.dialog) {
|
|
97
|
+
showModal.value = !showModal.value;
|
|
98
|
+
titleModal.value = option.viewModel.title;
|
|
99
|
+
srcModal.value = option.viewModel.button.dialog.src;
|
|
100
|
+
} else if (option.viewModel.button.href) {
|
|
101
|
+
window.open(option.viewModel.button.href, '_blank');
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
|
|
67
105
|
/**
|
|
68
106
|
* Send action to completed step
|
|
69
107
|
* @param action
|
|
@@ -142,5 +180,12 @@ const callAction = (action: PayloadAction) => {
|
|
|
142
180
|
}
|
|
143
181
|
}
|
|
144
182
|
}
|
|
183
|
+
|
|
184
|
+
&__dialog {
|
|
185
|
+
iframe {
|
|
186
|
+
width: 100%;
|
|
187
|
+
height: 350px;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
145
190
|
}
|
|
146
191
|
</style>
|
|
@@ -17,9 +17,8 @@
|
|
|
17
17
|
"subtitle": "Découvrir nos gammes de cuisines",
|
|
18
18
|
"button": {
|
|
19
19
|
"label": "Regarder le tutoriel video",
|
|
20
|
-
"
|
|
21
|
-
|
|
22
|
-
"code": ""
|
|
20
|
+
"dialog": {
|
|
21
|
+
"src": "https://www.youtube.com/embed/DKft6H92S8s"
|
|
23
22
|
}
|
|
24
23
|
}
|
|
25
24
|
}
|
|
@@ -33,10 +32,7 @@
|
|
|
33
32
|
"subtitle": "Découvrir nos gammes de cuisines",
|
|
34
33
|
"button": {
|
|
35
34
|
"label": "Accéder à l’outil",
|
|
36
|
-
"href": ""
|
|
37
|
-
"nextStep": {
|
|
38
|
-
"code": ""
|
|
39
|
-
}
|
|
35
|
+
"href": "https://sdb3d.leroymerlin.fr/Page_Tunnel/tunnel-sdb.html"
|
|
40
36
|
}
|
|
41
37
|
}
|
|
42
38
|
}
|
|
@@ -74,12 +74,6 @@
|
|
|
74
74
|
</div>
|
|
75
75
|
</m-container>
|
|
76
76
|
</div>
|
|
77
|
-
<pb-sticky-footer
|
|
78
|
-
v-if="payload.skippable || payload.multiSelect"
|
|
79
|
-
ref="pbStickyFooter"
|
|
80
|
-
:bottom-offset="stickyBottomOffset"
|
|
81
|
-
>
|
|
82
|
-
</pb-sticky-footer>
|
|
83
77
|
<pb-configurations-search
|
|
84
78
|
v-model:show-dialog="showImportConfigurationDialog"
|
|
85
79
|
@import-configuration="importConfiguration"
|
|
@@ -94,51 +94,6 @@
|
|
|
94
94
|
</div>
|
|
95
95
|
</div>
|
|
96
96
|
|
|
97
|
-
<pb-sticky-footer
|
|
98
|
-
v-if="payload.skippable || payload.multiSelect"
|
|
99
|
-
ref="pbStickyFooter"
|
|
100
|
-
class="pb-upload-document__sticky-footer"
|
|
101
|
-
:bottom-offset="stickyBottomOffset"
|
|
102
|
-
:intersection-observer-delay="200"
|
|
103
|
-
>
|
|
104
|
-
<transition-group name="pb-upload-document__actions--animated" mode="out-in">
|
|
105
|
-
<div
|
|
106
|
-
v-if="payload.multiSelect && selectedDocuments?.length > 0"
|
|
107
|
-
ref="pbQuestionActionsButtonsValidate"
|
|
108
|
-
class="pb-upload-document__actions-container"
|
|
109
|
-
key="validate"
|
|
110
|
-
>
|
|
111
|
-
<m-button
|
|
112
|
-
class="pb-upload-document__actions-buttons-button"
|
|
113
|
-
size="m"
|
|
114
|
-
size-from-l="l"
|
|
115
|
-
width="full"
|
|
116
|
-
:label="payload.multiSelect.actions.VALIDATE.label"
|
|
117
|
-
@click="validMultiSelect(payload.multiSelect.actions.VALIDATE)"
|
|
118
|
-
/>
|
|
119
|
-
</div>
|
|
120
|
-
<div
|
|
121
|
-
v-if="payload.skippable && (payload.viewModel.alwaysDisplaySkippable || selectedDocuments?.length <= 0)"
|
|
122
|
-
ref="pbQuestionActionsButtonsSkip"
|
|
123
|
-
class="pb-upload-document__actions-container"
|
|
124
|
-
key="skip"
|
|
125
|
-
>
|
|
126
|
-
<m-button
|
|
127
|
-
v-for="button in payload.skippable"
|
|
128
|
-
:key="button.label"
|
|
129
|
-
class="pb-upload-document__actions-buttons-button"
|
|
130
|
-
:label="button.label"
|
|
131
|
-
:theme="button.theme ? button.theme : 'bordered'"
|
|
132
|
-
:right-icon="button.rightIcon"
|
|
133
|
-
:left-icon="button.leftIcon"
|
|
134
|
-
size="m"
|
|
135
|
-
:width="button.width"
|
|
136
|
-
:widthFromM="button.widthFromM"
|
|
137
|
-
@click="skipQuestion(button)"
|
|
138
|
-
/>
|
|
139
|
-
</div>
|
|
140
|
-
</transition-group>
|
|
141
|
-
</pb-sticky-footer>
|
|
142
97
|
<m-pb-media-upload
|
|
143
98
|
:payload="payload.viewModel.mediaPayload"
|
|
144
99
|
:store-module-name="storeModuleName"
|
|
@@ -66,8 +66,7 @@
|
|
|
66
66
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'BATHTUB') && isAnswerContaining('LMFR_QUESTION_WORKS', 'COVERING_WALL')",
|
|
67
67
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'BATHTUB') && isAnswerContaining('LMFR_QUESTION_WORKS', 'DRY_TOWEL')",
|
|
68
68
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'BATHTUB') && isAnswerContaining('LMFR_QUESTION_WORKS', 'WC')",
|
|
69
|
-
"isAnswerContaining('LMFR_QUESTION_WORKS', 'BATHTUB') && isAnswerContaining('LMFR_QUESTION_WORKS', 'FURNITURES')"
|
|
70
|
-
"isAnswerContaining('LMFR_QUESTION_WORKS', 'BATHTUB') && isAnswerContaining('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER')"
|
|
69
|
+
"isAnswerContaining('LMFR_QUESTION_WORKS', 'BATHTUB') && isAnswerContaining('LMFR_QUESTION_WORKS', 'FURNITURES')"
|
|
71
70
|
],
|
|
72
71
|
"nextStep": {
|
|
73
72
|
"code": "LMFR_BATHROOM_BATHTUB_TYPE"
|
|
@@ -79,8 +78,7 @@
|
|
|
79
78
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'COVERING_FLOOR')",
|
|
80
79
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'COVERING_WALL')",
|
|
81
80
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'DRY_TOWEL')",
|
|
82
|
-
"isAnswerContaining('LMFR_QUESTION_WORKS', 'SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'WC')"
|
|
83
|
-
"isAnswerContaining('LMFR_QUESTION_WORKS', 'SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER')"
|
|
81
|
+
"isAnswerContaining('LMFR_QUESTION_WORKS', 'SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'WC')"
|
|
84
82
|
],
|
|
85
83
|
"nextStep": {
|
|
86
84
|
"code": "LMFR_BATHROOM_SHOWER_TYPE"
|
|
@@ -103,14 +101,25 @@
|
|
|
103
101
|
"conditions": [
|
|
104
102
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'WC') && isAnswerContaining('LMFR_QUESTION_WORKS', 'COVERING_FLOOR')",
|
|
105
103
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'WC') && isAnswerContaining('LMFR_QUESTION_WORKS', 'COVERING_WALL')",
|
|
106
|
-
"isAnswerContaining('LMFR_QUESTION_WORKS', 'WC') && isAnswerContaining('LMFR_QUESTION_WORKS', 'DRY_TOWEL')",
|
|
107
104
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'WC') && isAnswerContaining('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER')",
|
|
105
|
+
"isAnswerContaining('LMFR_QUESTION_WORKS', 'WC') && isAnswerContaining('LMFR_QUESTION_WORKS', 'DRY_TOWEL')",
|
|
108
106
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'WC') && isAnswerContaining('LMFR_QUESTION_WORKS', 'FURNITURES')"
|
|
109
107
|
],
|
|
110
108
|
"nextStep": {
|
|
111
109
|
"code": "LMFR_BATHROOM_WC_TYPE"
|
|
112
110
|
}
|
|
113
111
|
},
|
|
112
|
+
{
|
|
113
|
+
"conditions": [
|
|
114
|
+
"isAnswerContaining('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'FURNITURES')",
|
|
115
|
+
"isAnswerContaining('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'WC')",
|
|
116
|
+
"isAnswerContaining('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'COVERING_WALL')",
|
|
117
|
+
"isAnswerContaining('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER') && isAnswerContaining('LMFR_QUESTION_WORKS', 'COVERING_FLOOR')"
|
|
118
|
+
],
|
|
119
|
+
"nextStep": {
|
|
120
|
+
"code": "LMFR_BATHROOM_SHOWER_TYPE_REPLACEMENT"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
114
123
|
{
|
|
115
124
|
"conditions": [
|
|
116
125
|
"isAnswerContaining('LMFR_QUESTION_WORKS', 'COVERING_FLOOR') && isAnswerContaining('LMFR_QUESTION_WORKS', 'COVERING_WALL')"
|
|
@@ -132,12 +141,6 @@
|
|
|
132
141
|
"nextStep": {
|
|
133
142
|
"code": "LMFR_BATHROOM_EXIT_OPTIONS"
|
|
134
143
|
}
|
|
135
|
-
},
|
|
136
|
-
{
|
|
137
|
-
"conditions": ["isAnswerMatching('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER')"],
|
|
138
|
-
"nextStep": {
|
|
139
|
-
"code": "LMFR_BATHROOM_SHOWER_TYPE"
|
|
140
|
-
}
|
|
141
144
|
}
|
|
142
145
|
]
|
|
143
146
|
}
|
|
@@ -491,6 +494,83 @@
|
|
|
491
494
|
]
|
|
492
495
|
}
|
|
493
496
|
},
|
|
497
|
+
"LMFR_BATHROOM_SHOWER_TYPE_REPLACEMENT": {
|
|
498
|
+
"code": "LMFR_BATHROOM_SHOWER_TYPE_REPLACEMENT",
|
|
499
|
+
"type": "STEP",
|
|
500
|
+
"component": "MPbQuestion",
|
|
501
|
+
"slots": {
|
|
502
|
+
"beforeContent": {
|
|
503
|
+
"display": true,
|
|
504
|
+
"component": "MPbProgress",
|
|
505
|
+
"totalStep": 13,
|
|
506
|
+
"currentStep": 1,
|
|
507
|
+
"sizeXlWidth": true,
|
|
508
|
+
"label": "Votre projet de salle de bains"
|
|
509
|
+
}
|
|
510
|
+
},
|
|
511
|
+
"payload": {
|
|
512
|
+
"viewModel": {
|
|
513
|
+
"answersComponent": "MPbCard",
|
|
514
|
+
"progressBar": true,
|
|
515
|
+
"forceOneCardPerLineOnMobile": true,
|
|
516
|
+
"widthFromL": "1of3",
|
|
517
|
+
"widthXlSize": true,
|
|
518
|
+
"label": "Quel type de douche voulez-vous installer ?"
|
|
519
|
+
},
|
|
520
|
+
"answers": {
|
|
521
|
+
"STRAIGH_TUB": {
|
|
522
|
+
"code": "STRAIGH_TUB",
|
|
523
|
+
"viewModel": {
|
|
524
|
+
"title": "Cabine",
|
|
525
|
+
"image": "https://storage.googleapis.com/project-booster-media/bathroom/shower/cabine.jpg"
|
|
526
|
+
},
|
|
527
|
+
"meta": {
|
|
528
|
+
"ranking": 1
|
|
529
|
+
}
|
|
530
|
+
},
|
|
531
|
+
"CLOSED": {
|
|
532
|
+
"code": "CLOSED",
|
|
533
|
+
"viewModel": {
|
|
534
|
+
"title": "Fermée",
|
|
535
|
+
"image": "https://storage.googleapis.com/project-booster-media/bathroom/shower/fermee.png"
|
|
536
|
+
},
|
|
537
|
+
"meta": {
|
|
538
|
+
"ranking": 2
|
|
539
|
+
}
|
|
540
|
+
},
|
|
541
|
+
"ITALIAN": {
|
|
542
|
+
"code": "ITALIAN",
|
|
543
|
+
"viewModel": {
|
|
544
|
+
"title": "Italienne",
|
|
545
|
+
"image": "https://storage.googleapis.com/project-booster-media/bathroom/shower/italienne.jpg"
|
|
546
|
+
},
|
|
547
|
+
"meta": {
|
|
548
|
+
"ranking": 3
|
|
549
|
+
}
|
|
550
|
+
},
|
|
551
|
+
"COLUMN": {
|
|
552
|
+
"code": "COLUMN",
|
|
553
|
+
"viewModel": {
|
|
554
|
+
"title": "Colonne",
|
|
555
|
+
"image": "https://storage.googleapis.com/project-booster-media/bathroom/shower/colonne.jpg"
|
|
556
|
+
},
|
|
557
|
+
"meta": {
|
|
558
|
+
"ranking": 4
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
},
|
|
563
|
+
"nextStep": {
|
|
564
|
+
"conditionals": [
|
|
565
|
+
{
|
|
566
|
+
"conditions": ["true"],
|
|
567
|
+
"nextStep": {
|
|
568
|
+
"code": "LMFR_BATHROOM_STYLE"
|
|
569
|
+
}
|
|
570
|
+
}
|
|
571
|
+
]
|
|
572
|
+
}
|
|
573
|
+
},
|
|
494
574
|
"LMFR_BATHROOM_FURNITURE_TYPE": {
|
|
495
575
|
"code": "LMFR_BATHROOM_FURNITURE_TYPE",
|
|
496
576
|
"type": "STEP",
|
|
@@ -588,7 +668,7 @@
|
|
|
588
668
|
{
|
|
589
669
|
"conditions": ["isAnswerContaining('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER')"],
|
|
590
670
|
"nextStep": {
|
|
591
|
-
"code": "
|
|
671
|
+
"code": "LMFR_BATHROOM_SHOWER_TYPE_REPLACEMENT"
|
|
592
672
|
}
|
|
593
673
|
},
|
|
594
674
|
{
|
|
@@ -651,7 +731,7 @@
|
|
|
651
731
|
{
|
|
652
732
|
"conditions": ["isAnswerContaining('LMFR_QUESTION_WORKS', 'REPLACE_BATHTUB_TO_SHOWER')"],
|
|
653
733
|
"nextStep": {
|
|
654
|
-
"code": "
|
|
734
|
+
"code": "LMFR_BATHROOM_SHOWER_TYPE_REPLACEMENT"
|
|
655
735
|
}
|
|
656
736
|
},
|
|
657
737
|
{
|
|
@@ -938,9 +1018,8 @@
|
|
|
938
1018
|
"subtitle": "Réalisez un croquis de votre salle de bain actuelle avec les ouvertures et les différentes mesures.",
|
|
939
1019
|
"button": {
|
|
940
1020
|
"label": "Regarder le tutoriel video",
|
|
941
|
-
"
|
|
942
|
-
|
|
943
|
-
"code": ""
|
|
1021
|
+
"dialog": {
|
|
1022
|
+
"src": "https://www.youtube.com/embed/DKft6H92S8s"
|
|
944
1023
|
}
|
|
945
1024
|
}
|
|
946
1025
|
}
|
|
@@ -954,10 +1033,7 @@
|
|
|
954
1033
|
"subtitle": "Utilisez notre configurateur et estimez le coût des équpements choisis.",
|
|
955
1034
|
"button": {
|
|
956
1035
|
"label": "Accéder à l’outil",
|
|
957
|
-
"href": ""
|
|
958
|
-
"nextStep": {
|
|
959
|
-
"code": ""
|
|
960
|
-
}
|
|
1036
|
+
"href": "https://sdb3d.leroymerlin.fr/Page_Tunnel/tunnel-sdb.html"
|
|
961
1037
|
}
|
|
962
1038
|
}
|
|
963
1039
|
}
|