fcad-core-dragon 2.0.0-beta.2 → 2.0.0-beta.4
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/.eslintrc.cjs +1 -1
- package/CHANGELOG +9 -0
- package/package.json +26 -12
- package/src/$locales/en.json +37 -87
- package/src/$locales/fr.json +17 -106
- package/src/assets/data/onboardingMessages.json +1 -1
- package/src/components/AppBase.vue +241 -143
- package/src/components/AppBaseButton.vue +2 -6
- package/src/components/AppBaseErrorDisplay.vue +193 -183
- package/src/components/AppBaseFlipCard.vue +1 -0
- package/src/components/AppBaseModule.vue +195 -225
- package/src/components/AppBasePage.vue +519 -64
- package/src/components/AppBasePopover.vue +41 -0
- package/src/components/AppCompAudio.vue +32 -64
- package/src/components/AppCompBranchButtons.vue +52 -71
- package/src/components/AppCompButtonProgress.vue +12 -18
- package/src/components/AppCompCarousel.vue +102 -0
- package/src/components/{AppCompInputCheckBox.vue → AppCompInputCheckBoxNext.vue} +56 -94
- package/src/components/AppCompInputDropdownNext.vue +159 -0
- package/src/components/{AppCompInputRadio.vue → AppCompInputRadioNext.vue} +53 -63
- package/src/components/AppCompInputTextNext.vue +106 -0
- package/src/components/AppCompInputTextTableNext.vue +141 -0
- package/src/components/AppCompInputTextToFillDropdownNext.vue +230 -0
- package/src/components/{AppCompInputTextToFillText.vue → AppCompInputTextToFillNext.vue} +71 -64
- package/src/components/AppCompJauge.vue +16 -9
- package/src/components/AppCompMenu.vue +50 -29
- package/src/components/AppCompMenuItem.vue +52 -15
- package/src/components/AppCompNavigation.vue +225 -211
- package/src/components/AppCompNoteCall.vue +22 -30
- package/src/components/AppCompNoteCredit.vue +45 -20
- package/src/components/AppCompPlayBar.vue +55 -108
- package/src/components/AppCompPlayBarNext.vue +2052 -0
- package/src/components/AppCompPlayBarProgress.vue +10 -1
- package/src/components/AppCompPopUpNext.vue +503 -0
- package/src/components/{AppCompQuiz.vue → AppCompQuizNext.vue} +632 -703
- package/src/components/AppCompQuizRecall.vue +74 -75
- package/src/components/{AppCompSVG.vue → AppCompSVGNext.vue} +111 -99
- package/src/components/AppCompSettingsMenu.vue +11 -8
- package/src/components/AppCompTableOfContent.vue +78 -76
- package/src/components/AppCompTranscript.vue +5 -0
- package/src/components/AppCompVideoPlayer.vue +30 -42
- package/src/components/BaseModule.vue +1 -0
- package/src/composables/useQuiz.js +206 -0
- package/src/externalComps/ModuleView.vue +22 -0
- package/src/externalComps/SummaryView.vue +91 -0
- package/src/main.js +99 -90
- package/src/mixins/$mediaMixins.js +13 -21
- package/src/mixins/timerMixin.js +1 -1
- package/src/module/stores/appStore.js +901 -0
- package/src/module/xapi/ADL.js +8 -4
- package/src/plugins/bus.js +7 -2
- package/src/plugins/gsap.js +4 -7
- package/src/plugins/helper.js +33 -13
- package/src/plugins/i18n.js +2 -2
- package/src/plugins/idb.js +44 -29
- package/src/plugins/save.js +1 -1
- package/src/plugins/scorm.js +2 -2
- package/src/plugins/xapi.js +2 -2
- package/src/public/index.html +22 -10
- package/src/router/index.js +13 -10
- package/src/router/routes.js +20 -25
- package/src/shared/generalfuncs.js +33 -18
- package/src/shared/validators.js +116 -6
- package/src/components/AppCompInputDropdown.vue +0 -182
- package/src/components/AppCompInputTextBox.vue +0 -91
- package/src/components/AppCompInputTextTable.vue +0 -158
- package/src/components/AppCompInputTextToFillDropdown.vue +0 -257
- package/src/components/AppCompPopUp.vue +0 -583
- package/src/components/AppCompPopover.vue +0 -27
- package/src/mixins/$pageMixins.js +0 -415
- package/src/mixins/$quizMixins.js +0 -442
- package/src/module/store.js +0 -1014
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
<!--
|
|
1
|
+
<!-- About this Component--
|
|
2
2
|
@ Description: This component is used to display and create the navigation in el+ mode.
|
|
3
|
-
@ What it does: Create the link to back back to the menu. Create link to the all the anchor to the current activity and display the curent anchor and the button next page and previous page.
|
|
3
|
+
@ What it does: Create the link to back back to the menu. Create link to the all the anchor to the current activity and display the curent anchor and the button next page and previous page. Teleport are use to place the element in the rigth place in the main frame.
|
|
4
4
|
-->
|
|
5
5
|
<template>
|
|
6
6
|
<div v-if="navigationRoutes" class="app-ctrl">
|
|
7
7
|
<div id="tool-bar">
|
|
8
|
-
<
|
|
8
|
+
<router-link
|
|
9
9
|
id="btn_back_summary"
|
|
10
10
|
:to="{ name: homeLanding.route }"
|
|
11
11
|
class="btn"
|
|
12
12
|
:title="homeLanding.title"
|
|
13
13
|
>
|
|
14
14
|
<template #default>
|
|
15
|
-
<svg
|
|
15
|
+
<svg class="home-icon">
|
|
16
16
|
<use href="#home-icon" />
|
|
17
17
|
</svg>
|
|
18
18
|
|
|
19
19
|
<span class="toolbar_label">{{ homeLanding.title }}</span>
|
|
20
20
|
</template>
|
|
21
|
-
</
|
|
21
|
+
</router-link>
|
|
22
22
|
<div class="ctn-w">
|
|
23
23
|
<app-base-button
|
|
24
24
|
id="toc"
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
:aria-label="$t('button.toc')"
|
|
27
27
|
@click="openToc()"
|
|
28
28
|
>
|
|
29
|
-
<svg
|
|
30
|
-
<use href="#
|
|
29
|
+
<svg class="toc-icon">
|
|
30
|
+
<use href="#toc-icon" />
|
|
31
31
|
</svg>
|
|
32
32
|
<span class="toolbar_label">{{ $t('button.toc') }}</span>
|
|
33
33
|
</app-base-button>
|
|
@@ -35,13 +35,14 @@
|
|
|
35
35
|
</div>
|
|
36
36
|
<div class="ctn-w">
|
|
37
37
|
<app-base-button
|
|
38
|
+
id="btn_infos"
|
|
38
39
|
:title="$t('button.info')"
|
|
39
40
|
:aria-label="$t('button.info')"
|
|
40
41
|
:disabled="noInfo"
|
|
41
42
|
:class="{ md_disabled: noInfo }"
|
|
42
43
|
@click="openCreditNote()"
|
|
43
44
|
>
|
|
44
|
-
<svg
|
|
45
|
+
<svg class="info-icon">
|
|
45
46
|
<use href="#info-icon" />
|
|
46
47
|
</svg>
|
|
47
48
|
<span class="toolbar_label">{{ $t('button.info') }}</span>
|
|
@@ -52,80 +53,81 @@
|
|
|
52
53
|
|
|
53
54
|
<!-- Navigation principale -->
|
|
54
55
|
|
|
55
|
-
<
|
|
56
|
-
<
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
<
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
<
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
</
|
|
92
|
-
</
|
|
93
|
-
</
|
|
56
|
+
<SafeTeleport to="#primary_nav_wrapper">
|
|
57
|
+
<template v-if="!isMenu">
|
|
58
|
+
<app-base-button
|
|
59
|
+
id="btn_previous_page"
|
|
60
|
+
ref="btn_previous_page"
|
|
61
|
+
class="nav_main_btn primary_nav_btn"
|
|
62
|
+
:title="$t('button.go_to_previous_page')"
|
|
63
|
+
:aria-label="$t('button.go_to_previous_page')"
|
|
64
|
+
:is-active="!backAllowed"
|
|
65
|
+
@click="goPrevious"
|
|
66
|
+
>
|
|
67
|
+
<svg>
|
|
68
|
+
<use href="#fleche-gauche-icon" />
|
|
69
|
+
</svg>
|
|
70
|
+
</app-base-button>
|
|
71
|
+
<div class="pagination">
|
|
72
|
+
<span aria-hidden="true">
|
|
73
|
+
Page {{ pagination.counter }} / {{ pagination.total }}
|
|
74
|
+
</span>
|
|
75
|
+
<span class="sr-only">
|
|
76
|
+
Page {{ pagination.counter }} {{ pagination.$W }}
|
|
77
|
+
{{ pagination.total }}
|
|
78
|
+
</span>
|
|
79
|
+
</div>
|
|
80
|
+
<app-base-button
|
|
81
|
+
id="btn_next_page"
|
|
82
|
+
ref="btn_next_page"
|
|
83
|
+
class="nav_main_btn primary_nav_btn"
|
|
84
|
+
:aria-label="$t('button.go_to_next_page')"
|
|
85
|
+
:title="$t('button.go_to_next_page')"
|
|
86
|
+
:is-active="!nextAllowed"
|
|
87
|
+
@click="goNext"
|
|
88
|
+
>
|
|
89
|
+
<svg>
|
|
90
|
+
<use href="#fleche-droite-icon"></use>
|
|
91
|
+
</svg>
|
|
92
|
+
</app-base-button>
|
|
93
|
+
</template>
|
|
94
|
+
</SafeTeleport>
|
|
94
95
|
<!---------------------------- TEST ------------------------->
|
|
95
96
|
<!---------------------------- END_ACTIVITY_POPUP SECTION ------------------------->
|
|
96
97
|
|
|
97
|
-
<
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
:title="endActivityPopup.nextLabel"
|
|
112
|
-
class="popup_primary_nav_btn"
|
|
113
|
-
@click="navigateTo(endActivityPopup.nextRoute)"
|
|
114
|
-
>
|
|
115
|
-
{{ endActivityPopup.nextLabel }}
|
|
116
|
-
</app-base-button>
|
|
117
|
-
</portal>
|
|
98
|
+
<SafeTeleport
|
|
99
|
+
v-if="endActivityPopup && getEndPopUp"
|
|
100
|
+
defer
|
|
101
|
+
to="#end-activity"
|
|
102
|
+
>
|
|
103
|
+
<div class="popup-bottom-buttons">
|
|
104
|
+
<app-base-button
|
|
105
|
+
:aria-label="endActivityPopup.backLabel"
|
|
106
|
+
:title="endActivityPopup.backLabel"
|
|
107
|
+
class="popup_primary_nav_btn btn btn-reserve"
|
|
108
|
+
@click="navigateTo(endActivityPopup.backRoute)"
|
|
109
|
+
>
|
|
110
|
+
{{ endActivityPopup.backLabel }}
|
|
111
|
+
</app-base-button>
|
|
118
112
|
|
|
113
|
+
<app-base-button
|
|
114
|
+
:aria-label="endActivityPopup.nextLabel"
|
|
115
|
+
:title="endActivityPopup.nextLabel"
|
|
116
|
+
class="popup_primary_nav_btn btn btn-main"
|
|
117
|
+
@click="navigateTo(endActivityPopup.nextRoute)"
|
|
118
|
+
>
|
|
119
|
+
{{ endActivityPopup.nextLabel }}
|
|
120
|
+
</app-base-button>
|
|
121
|
+
</div>
|
|
122
|
+
</SafeTeleport>
|
|
119
123
|
<!---------------------------- END END_ACTIVITY_POPUP SECTION ------------------------->
|
|
120
|
-
<app-comp-settings-menu />
|
|
121
124
|
</div>
|
|
122
125
|
</template>
|
|
123
126
|
|
|
124
127
|
<script>
|
|
125
|
-
import {
|
|
126
|
-
import
|
|
128
|
+
import { mapState, mapActions } from 'pinia'
|
|
129
|
+
import { useAppStore } from '../module/stores/appStore'
|
|
127
130
|
export default {
|
|
128
|
-
components: { AppCompSettingsMenu },
|
|
129
131
|
props: {
|
|
130
132
|
autoNavigate: { type: Boolean, default: false }
|
|
131
133
|
},
|
|
@@ -147,7 +149,7 @@ export default {
|
|
|
147
149
|
}
|
|
148
150
|
},
|
|
149
151
|
computed: {
|
|
150
|
-
...
|
|
152
|
+
...mapState(useAppStore, [
|
|
151
153
|
'getCurrentPage',
|
|
152
154
|
'getModuleInfo',
|
|
153
155
|
'getIntroStatus',
|
|
@@ -157,7 +159,9 @@ export default {
|
|
|
157
159
|
'getBifChoice',
|
|
158
160
|
'getMenuSettings',
|
|
159
161
|
'getWidgetOpen',
|
|
160
|
-
'getDataNoteCredit'
|
|
162
|
+
'getDataNoteCredit',
|
|
163
|
+
'getPopStatus',
|
|
164
|
+
'getEndPopUp'
|
|
161
165
|
]),
|
|
162
166
|
noInfo() {
|
|
163
167
|
if (this.getDataNoteCredit.note || this.getDataNoteCredit.credit) {
|
|
@@ -321,12 +325,15 @@ export default {
|
|
|
321
325
|
}
|
|
322
326
|
},
|
|
323
327
|
watch: {
|
|
324
|
-
$route
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
328
|
+
$route: {
|
|
329
|
+
handler() {
|
|
330
|
+
this.setNavigation() // reset the navigation context when route change
|
|
331
|
+
|
|
332
|
+
setTimeout(() => {
|
|
333
|
+
this.initPage()
|
|
334
|
+
}, 200)
|
|
335
|
+
},
|
|
336
|
+
deep: true
|
|
330
337
|
}
|
|
331
338
|
},
|
|
332
339
|
beforeUnmount() {
|
|
@@ -343,6 +350,7 @@ export default {
|
|
|
343
350
|
}, 200)
|
|
344
351
|
},
|
|
345
352
|
methods: {
|
|
353
|
+
...mapActions(useAppStore, ['updateNextActivity']),
|
|
346
354
|
initPage() {
|
|
347
355
|
this.setNextActivity()
|
|
348
356
|
this.setPreviousActivity()
|
|
@@ -351,7 +359,8 @@ export default {
|
|
|
351
359
|
getActivity() {
|
|
352
360
|
const { all_routes } = this.$helper.getRoutesFromVueRouter()
|
|
353
361
|
const activity = all_routes.find(
|
|
354
|
-
(route) =>
|
|
362
|
+
(route) =>
|
|
363
|
+
route.meta.id === this.$router.currentRoute.value.meta.activity_ref
|
|
355
364
|
)
|
|
356
365
|
return activity
|
|
357
366
|
},
|
|
@@ -487,55 +496,42 @@ export default {
|
|
|
487
496
|
})
|
|
488
497
|
break
|
|
489
498
|
//Next navigation will lead next activity
|
|
490
|
-
case this.nextActivity.type_of_next === 'ACTIVITY':
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
{
|
|
501
|
-
'no-close-on-backdrop': false
|
|
502
|
-
}
|
|
503
|
-
]
|
|
504
|
-
}
|
|
505
|
-
},
|
|
506
|
-
'no_attempts'
|
|
507
|
-
)
|
|
499
|
+
case this.nextActivity.type_of_next === 'ACTIVITY': {
|
|
500
|
+
const endPopup = {
|
|
501
|
+
type: 'popup-endActivity',
|
|
502
|
+
value: {
|
|
503
|
+
title: `${this.$t('popup.text_what_to_do')}`
|
|
504
|
+
}
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
this.openPopup(endPopup)
|
|
508
|
+
|
|
508
509
|
this.nextActivityRoute = this.nextActivity._namedRoute
|
|
509
510
|
|
|
510
511
|
if (this.getModuleInfo.packageType !== 'xapi') return
|
|
511
512
|
|
|
512
513
|
this.$bus.$emit('send-completion-event', 'ACTIVITY')
|
|
513
514
|
break
|
|
515
|
+
}
|
|
514
516
|
//Next navigation will lead next activity
|
|
515
|
-
case this.nextActivity.type_of_next === 'LESSON':
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
'no-close-on-backdrop': false
|
|
527
|
-
}
|
|
528
|
-
]
|
|
529
|
-
}
|
|
530
|
-
},
|
|
531
|
-
'no_attempts'
|
|
532
|
-
)
|
|
517
|
+
case this.nextActivity.type_of_next === 'LESSON': {
|
|
518
|
+
const endPopup = {
|
|
519
|
+
type: 'popup-endActivity',
|
|
520
|
+
value: {
|
|
521
|
+
template: `<p>${this.$t('popup.text_what_to_do')}</p>`,
|
|
522
|
+
title: ''
|
|
523
|
+
}
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
this.openPopup(endPopup)
|
|
527
|
+
|
|
533
528
|
this.nextActivityRoute = this.nextLesson
|
|
534
529
|
|
|
535
530
|
if (this.getModuleInfo.packageType !== 'xapi') return
|
|
536
531
|
this.$bus.$emit('send-completion-event', 'ACTIVITY')
|
|
537
532
|
|
|
538
533
|
break
|
|
534
|
+
}
|
|
539
535
|
}
|
|
540
536
|
},
|
|
541
537
|
|
|
@@ -565,9 +561,7 @@ export default {
|
|
|
565
561
|
})
|
|
566
562
|
} else {
|
|
567
563
|
this.$router.push({
|
|
568
|
-
name: `${
|
|
569
|
-
this.navigationRoutes.cat[0]._namedRoute
|
|
570
|
-
}.${this.getPageNavBifStart(
|
|
564
|
+
name: `${this.navigationRoutes.cat[0]._namedRoute}.${this.getPageNavBifStart(
|
|
571
565
|
this.$route.meta.activity_ref,
|
|
572
566
|
this.$route.meta.id
|
|
573
567
|
)}`
|
|
@@ -593,12 +587,12 @@ export default {
|
|
|
593
587
|
this.$bus.$emit('close-widget')
|
|
594
588
|
}
|
|
595
589
|
// current Route is module
|
|
596
|
-
this.currentActivity = this.$router.currentRoute.meta.activity_ref
|
|
597
|
-
this.currentPageId = this.$router.currentRoute.meta.id
|
|
590
|
+
this.currentActivity = this.$router.currentRoute.value.meta.activity_ref
|
|
591
|
+
this.currentPageId = this.$router.currentRoute.value.meta.id
|
|
598
592
|
|
|
599
593
|
const { all_routes, meta } = this.$helper.getRoutesFromVueRouter()
|
|
600
594
|
|
|
601
|
-
if (this.$router.currentRoute.name === 'module') {
|
|
595
|
+
if (this.$router.currentRoute.value.name === 'module') {
|
|
602
596
|
this.navigationRoutes = {
|
|
603
597
|
context: 'module',
|
|
604
598
|
cat: meta.children
|
|
@@ -606,18 +600,18 @@ export default {
|
|
|
606
600
|
}
|
|
607
601
|
// Navigation catalog is the introduction
|
|
608
602
|
else if (
|
|
609
|
-
this.$router.currentRoute.meta.type === 'introduction' ||
|
|
610
|
-
this.$router.currentRoute.meta.type === 'menu'
|
|
603
|
+
this.$router.currentRoute.value.meta.type === 'introduction' ||
|
|
604
|
+
this.$router.currentRoute.value.meta.type === 'menu'
|
|
611
605
|
) {
|
|
612
606
|
const a = all_routes.find(
|
|
613
607
|
(route) =>
|
|
614
608
|
route.meta.id ===
|
|
615
|
-
this.$router.currentRoute.meta.activity_ref.$folderName
|
|
609
|
+
this.$router.currentRoute.value.meta.activity_ref.$folderName
|
|
616
610
|
)
|
|
617
611
|
|
|
618
612
|
const b = all_routes.find(
|
|
619
613
|
(route) =>
|
|
620
|
-
route.meta.id === this.$router.currentRoute.meta.activity_ref
|
|
614
|
+
route.meta.id === this.$router.currentRoute.value.meta.activity_ref
|
|
621
615
|
)
|
|
622
616
|
if (a) {
|
|
623
617
|
let r = []
|
|
@@ -654,13 +648,13 @@ export default {
|
|
|
654
648
|
const a = all_routes.find(
|
|
655
649
|
(route) =>
|
|
656
650
|
route.meta.id ===
|
|
657
|
-
this.$router.currentRoute.meta.activity_ref.$folderName
|
|
651
|
+
this.$router.currentRoute.value.meta.activity_ref.$folderName
|
|
658
652
|
)
|
|
659
653
|
|
|
660
654
|
// on refresh $forderName doesn't existe
|
|
661
655
|
const b = all_routes.find(
|
|
662
656
|
(route) =>
|
|
663
|
-
route.meta.id === this.$router.currentRoute.meta.activity_ref
|
|
657
|
+
route.meta.id === this.$router.currentRoute.value.meta.activity_ref
|
|
664
658
|
)
|
|
665
659
|
|
|
666
660
|
if (a) {
|
|
@@ -753,7 +747,7 @@ export default {
|
|
|
753
747
|
}
|
|
754
748
|
} else this.nextActivity = null
|
|
755
749
|
|
|
756
|
-
this
|
|
750
|
+
this.updateNextActivity(this.nextActivity)
|
|
757
751
|
},
|
|
758
752
|
/**
|
|
759
753
|
* @description: set previous activity for the navigation
|
|
@@ -817,41 +811,7 @@ export default {
|
|
|
817
811
|
openPopup(popUpData) {
|
|
818
812
|
this.$bus.$emit('open-popup', popUpData)
|
|
819
813
|
},
|
|
820
|
-
/**
|
|
821
|
-
* @description hide the navigation of the application
|
|
822
|
-
* @param {String} s - s name of the navigation element to hide ('back' | 'next')
|
|
823
|
-
*/
|
|
824
|
-
hideNavigationCtrls(s) {
|
|
825
|
-
s = s || 'all'
|
|
826
|
-
|
|
827
|
-
if (s && !['back', 'next', 'all'].includes(s.toLowerCase(s))) return
|
|
828
814
|
|
|
829
|
-
switch (s) {
|
|
830
|
-
case 'back':
|
|
831
|
-
{
|
|
832
|
-
this.$store.dispatch('setShowNavLeftCtrl', false)
|
|
833
|
-
}
|
|
834
|
-
break
|
|
835
|
-
case 'next':
|
|
836
|
-
{
|
|
837
|
-
this.$store.dispatch('setShowNavRightCtrl', false)
|
|
838
|
-
this.$store.dispatch('setShowPrimaryCtrl', false)
|
|
839
|
-
}
|
|
840
|
-
|
|
841
|
-
break
|
|
842
|
-
|
|
843
|
-
case 'all':
|
|
844
|
-
{
|
|
845
|
-
//hide the Upper Nav bar controls
|
|
846
|
-
this.$store.dispatch('setShowNavLeftCtrl', false)
|
|
847
|
-
this.$store.dispatch('setShowNavRightCtrl', false)
|
|
848
|
-
|
|
849
|
-
//hide the main navigation to next page
|
|
850
|
-
this.$store.dispatch('setShowPrimaryCtrl', false)
|
|
851
|
-
}
|
|
852
|
-
break
|
|
853
|
-
}
|
|
854
|
-
},
|
|
855
815
|
/**
|
|
856
816
|
* @description - send information to open toc
|
|
857
817
|
*/ openToc() {
|
|
@@ -869,62 +829,87 @@ export default {
|
|
|
869
829
|
</script>
|
|
870
830
|
|
|
871
831
|
<style lang="scss">
|
|
872
|
-
.app-
|
|
832
|
+
.app-nav {
|
|
833
|
+
transition: width 0.5s;
|
|
834
|
+
position: fixed !important;
|
|
835
|
+
top: 0;
|
|
836
|
+
left: 0;
|
|
837
|
+
z-index: 10;
|
|
873
838
|
display: flex;
|
|
874
839
|
flex-direction: column;
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
width:
|
|
878
|
-
|
|
840
|
+
flex-wrap: wrap;
|
|
841
|
+
align-content: start !important;
|
|
842
|
+
width: 67px;
|
|
843
|
+
height: 100vh;
|
|
879
844
|
|
|
880
|
-
|
|
881
|
-
width: 100%;
|
|
882
|
-
padding: 32px 0;
|
|
845
|
+
.app-ctrl {
|
|
883
846
|
display: flex;
|
|
884
847
|
flex-direction: column;
|
|
885
|
-
align-items:
|
|
886
|
-
|
|
848
|
+
align-items: start;
|
|
849
|
+
width: 100%;
|
|
887
850
|
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
851
|
+
#tool-bar {
|
|
852
|
+
width: 100%;
|
|
853
|
+
padding: 32px 0;
|
|
854
|
+
display: flex;
|
|
855
|
+
flex-direction: column;
|
|
856
|
+
align-items: center;
|
|
857
|
+
|
|
858
|
+
& .ctn-w > button,
|
|
859
|
+
& > a {
|
|
860
|
+
//display: block;
|
|
861
|
+
width: 80px;
|
|
862
|
+
height: 80px;
|
|
863
|
+
padding: 0 !important;
|
|
864
|
+
margin-bottom: 24px;
|
|
865
|
+
display: flex;
|
|
866
|
+
flex-direction: column;
|
|
867
|
+
align-content: center;
|
|
868
|
+
justify-content: center;
|
|
869
|
+
position: relative;
|
|
870
|
+
|
|
871
|
+
.home-icon {
|
|
872
|
+
width: 22px;
|
|
873
|
+
height: 24px;
|
|
874
|
+
}
|
|
892
875
|
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
}
|
|
898
|
-
}
|
|
876
|
+
.toc-icon {
|
|
877
|
+
width: 41px;
|
|
878
|
+
height: 22px;
|
|
879
|
+
}
|
|
899
880
|
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
}
|
|
881
|
+
.info-icon {
|
|
882
|
+
width: 24px;
|
|
883
|
+
height: 24px;
|
|
884
|
+
}
|
|
905
885
|
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
}
|
|
886
|
+
span {
|
|
887
|
+
&.toolbar_label {
|
|
888
|
+
display: block;
|
|
889
|
+
transition: opacity 0.5s;
|
|
890
|
+
visibility: hidden;
|
|
891
|
+
opacity: 0;
|
|
892
|
+
}
|
|
893
|
+
}
|
|
914
894
|
|
|
915
|
-
|
|
916
|
-
|
|
895
|
+
&.active_toc,
|
|
896
|
+
&.active_infos {
|
|
897
|
+
&::before {
|
|
898
|
+
content: '';
|
|
899
|
+
display: block;
|
|
900
|
+
position: absolute;
|
|
901
|
+
height: 100%;
|
|
902
|
+
width: 4px;
|
|
903
|
+
left: -16px;
|
|
904
|
+
}
|
|
905
|
+
}
|
|
906
|
+
}
|
|
917
907
|
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
flex-direction: column;
|
|
924
|
-
flex-wrap: wrap;
|
|
925
|
-
align-content: start;
|
|
926
|
-
width: 67px;
|
|
927
|
-
height: 100%;
|
|
908
|
+
.ctn-w {
|
|
909
|
+
position: relative;
|
|
910
|
+
}
|
|
911
|
+
}
|
|
912
|
+
}
|
|
928
913
|
|
|
929
914
|
&:focus,
|
|
930
915
|
&:hover,
|
|
@@ -932,14 +917,43 @@ export default {
|
|
|
932
917
|
width: 115px !important;
|
|
933
918
|
|
|
934
919
|
#tool-bar {
|
|
935
|
-
button,
|
|
920
|
+
& .ctn-w > button,
|
|
936
921
|
a {
|
|
937
922
|
span.toolbar_label {
|
|
938
|
-
|
|
923
|
+
visibility: visible;
|
|
939
924
|
opacity: 1;
|
|
940
925
|
}
|
|
941
926
|
}
|
|
942
927
|
}
|
|
943
928
|
}
|
|
944
929
|
}
|
|
930
|
+
|
|
931
|
+
#primary_nav_wrapper {
|
|
932
|
+
display: flex;
|
|
933
|
+
flex-direction: row;
|
|
934
|
+
flex-wrap: wrap;
|
|
935
|
+
align-content: center;
|
|
936
|
+
justify-content: center;
|
|
937
|
+
margin: 25px 0;
|
|
938
|
+
|
|
939
|
+
#btn_previous_page,
|
|
940
|
+
#btn_next_page {
|
|
941
|
+
border-radius: 50px;
|
|
942
|
+
width: 45px;
|
|
943
|
+
height: 45px;
|
|
944
|
+
display: flex;
|
|
945
|
+
justify-content: center;
|
|
946
|
+
|
|
947
|
+
/*svg {
|
|
948
|
+
width: 100%;
|
|
949
|
+
height: auto;
|
|
950
|
+
}*/
|
|
951
|
+
}
|
|
952
|
+
|
|
953
|
+
.pagination {
|
|
954
|
+
display: flex;
|
|
955
|
+
align-items: center;
|
|
956
|
+
justify-content: center;
|
|
957
|
+
}
|
|
958
|
+
}
|
|
945
959
|
</style>
|