fcad-core-dragon 2.0.3 → 2.1.0-beta.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/.editorconfig +33 -33
- package/.eslintignore +29 -29
- package/.eslintrc.cjs +81 -81
- package/CHANGELOG +27 -0
- package/bk.scss +117 -117
- package/package.json +1 -1
- package/src/assets/data/onboardingMessages.json +47 -47
- package/src/components/AppBaseErrorDisplay.vue +438 -438
- package/src/components/AppBaseFlipCard.vue +84 -84
- package/src/components/AppBasePopover.vue +41 -41
- package/src/components/AppCompInputCheckBoxNx.vue +1 -1
- package/src/components/AppCompInputDropdownNx.vue +4 -0
- package/src/components/AppCompInputRadioNx.vue +15 -1
- package/src/components/AppCompInputTextNx.vue +5 -0
- package/src/components/AppCompInputTextTableNx.vue +4 -0
- package/src/components/AppCompInputTextToFillDropdownNx.vue +4 -0
- package/src/components/AppCompInputTextToFillNx.vue +37 -1
- package/src/components/AppCompPlayBarProgress.vue +82 -82
- package/src/components/AppCompQuizNext.vue +1 -1
- package/src/components/AppCompSettingsMenu.vue +172 -172
- package/src/components/AppCompViewDisplay.vue +6 -6
- package/src/externalComps/ModuleView.vue +22 -22
- package/src/externalComps/SummaryView.vue +91 -91
- package/src/module/xapi/Crypto/Hasher.js +241 -241
- package/src/module/xapi/Crypto/WordArray.js +278 -278
- package/src/module/xapi/Crypto/algorithms/BufferedBlockAlgorithm.js +103 -103
- package/src/module/xapi/Crypto/algorithms/C_algo.js +315 -315
- package/src/module/xapi/Crypto/algorithms/HMAC.js +9 -9
- package/src/module/xapi/Crypto/algorithms/SHA1.js +9 -9
- package/src/module/xapi/Crypto/encoders/Base.js +105 -105
- package/src/module/xapi/Crypto/encoders/Base64.js +99 -99
- package/src/module/xapi/Crypto/encoders/Hex.js +61 -61
- package/src/module/xapi/Crypto/encoders/Latin1.js +61 -61
- package/src/module/xapi/Crypto/encoders/Utf8.js +45 -45
- package/src/module/xapi/Crypto/index.js +53 -53
- package/src/module/xapi/Statement/activity.js +47 -47
- package/src/module/xapi/Statement/agent.js +55 -55
- package/src/module/xapi/Statement/group.js +26 -26
- package/src/module/xapi/Statement/index.js +259 -259
- package/src/module/xapi/Statement/statement.js +253 -253
- package/src/module/xapi/Statement/statementRef.js +23 -23
- package/src/module/xapi/Statement/substatement.js +22 -22
- package/src/module/xapi/Statement/verb.js +36 -36
- package/src/module/xapi/activitytypes.js +17 -17
- package/src/module/xapi/utils.js +167 -167
- package/src/module/xapi/verbs.js +294 -294
- package/src/module/xapi/xapiStatement.js +444 -444
- package/src/plugins/bus.js +8 -8
- package/src/plugins/gsap.js +14 -14
- package/src/plugins/i18n.js +44 -44
- package/src/plugins/save.js +37 -37
- package/src/plugins/scorm.js +287 -287
- package/src/plugins/xapi.js +11 -11
- package/src/public/index.html +33 -33
|
@@ -1,84 +1,84 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<!--
|
|
3
|
-
inspire by : https://vuejsexamples.com/generic-flip-card-in-vue-that-allows-completely-arbitrary-content-on-each-side/
|
|
4
|
-
-->
|
|
5
|
-
<div class="flip-card" role="button" aria-pressed="false" @click="fnClick">
|
|
6
|
-
<div class="inside-card" :class="{ flip: isFlipped }">
|
|
7
|
-
<div class="front-card" name="front-card">
|
|
8
|
-
<slot name="front-card" />
|
|
9
|
-
</div>
|
|
10
|
-
<div class="back-card">
|
|
11
|
-
<slot name="back-card" />
|
|
12
|
-
</div>
|
|
13
|
-
</div>
|
|
14
|
-
</div>
|
|
15
|
-
</template>
|
|
16
|
-
<script>
|
|
17
|
-
export default {
|
|
18
|
-
props: {
|
|
19
|
-
isActive: {
|
|
20
|
-
type: Boolean,
|
|
21
|
-
default: false
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
emits: ['click'],
|
|
25
|
-
data() {
|
|
26
|
-
return {
|
|
27
|
-
isFlipped: false
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
methods: {
|
|
31
|
-
/**
|
|
32
|
-
* @fires click to parent componant or page
|
|
33
|
-
*/
|
|
34
|
-
fnClick() {
|
|
35
|
-
this.$emit('click', this.$el)
|
|
36
|
-
this.isFlipped = !this.isFlipped
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
</script>
|
|
41
|
-
<style lang="scss">
|
|
42
|
-
.flip-card {
|
|
43
|
-
height: auto;
|
|
44
|
-
cursor: pointer;
|
|
45
|
-
|
|
46
|
-
/***** Parameretre modifiable *****/
|
|
47
|
-
perspective: 100%;
|
|
48
|
-
width: 90%;
|
|
49
|
-
|
|
50
|
-
.inside-card {
|
|
51
|
-
position: relative;
|
|
52
|
-
width: 100%;
|
|
53
|
-
height: 100%;
|
|
54
|
-
|
|
55
|
-
/***** Parameretre modifiable *****/
|
|
56
|
-
transform-style: preserve-3d;
|
|
57
|
-
transition: transform 0.5s;
|
|
58
|
-
|
|
59
|
-
&.flip {
|
|
60
|
-
/***** Parameretre modifiable *****/
|
|
61
|
-
transform: rotateY(180deg);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
.front-card,
|
|
65
|
-
.back-card {
|
|
66
|
-
position: absolute;
|
|
67
|
-
width: 100%;
|
|
68
|
-
height: 100%;
|
|
69
|
-
-webkit-backface-visibility: hidden;
|
|
70
|
-
backface-visibility: hidden;
|
|
71
|
-
|
|
72
|
-
.img-flip-card {
|
|
73
|
-
width: 90%;
|
|
74
|
-
height: auto;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.back-card {
|
|
79
|
-
/***** Parameretre modifiable *****/
|
|
80
|
-
transform: rotateY(180deg);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<!--
|
|
3
|
+
inspire by : https://vuejsexamples.com/generic-flip-card-in-vue-that-allows-completely-arbitrary-content-on-each-side/
|
|
4
|
+
-->
|
|
5
|
+
<div class="flip-card" role="button" aria-pressed="false" @click="fnClick">
|
|
6
|
+
<div class="inside-card" :class="{ flip: isFlipped }">
|
|
7
|
+
<div class="front-card" name="front-card">
|
|
8
|
+
<slot name="front-card" />
|
|
9
|
+
</div>
|
|
10
|
+
<div class="back-card">
|
|
11
|
+
<slot name="back-card" />
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
15
|
+
</template>
|
|
16
|
+
<script>
|
|
17
|
+
export default {
|
|
18
|
+
props: {
|
|
19
|
+
isActive: {
|
|
20
|
+
type: Boolean,
|
|
21
|
+
default: false
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
emits: ['click'],
|
|
25
|
+
data() {
|
|
26
|
+
return {
|
|
27
|
+
isFlipped: false
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
methods: {
|
|
31
|
+
/**
|
|
32
|
+
* @fires click to parent componant or page
|
|
33
|
+
*/
|
|
34
|
+
fnClick() {
|
|
35
|
+
this.$emit('click', this.$el)
|
|
36
|
+
this.isFlipped = !this.isFlipped
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
</script>
|
|
41
|
+
<style lang="scss">
|
|
42
|
+
.flip-card {
|
|
43
|
+
height: auto;
|
|
44
|
+
cursor: pointer;
|
|
45
|
+
|
|
46
|
+
/***** Parameretre modifiable *****/
|
|
47
|
+
perspective: 100%;
|
|
48
|
+
width: 90%;
|
|
49
|
+
|
|
50
|
+
.inside-card {
|
|
51
|
+
position: relative;
|
|
52
|
+
width: 100%;
|
|
53
|
+
height: 100%;
|
|
54
|
+
|
|
55
|
+
/***** Parameretre modifiable *****/
|
|
56
|
+
transform-style: preserve-3d;
|
|
57
|
+
transition: transform 0.5s;
|
|
58
|
+
|
|
59
|
+
&.flip {
|
|
60
|
+
/***** Parameretre modifiable *****/
|
|
61
|
+
transform: rotateY(180deg);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.front-card,
|
|
65
|
+
.back-card {
|
|
66
|
+
position: absolute;
|
|
67
|
+
width: 100%;
|
|
68
|
+
height: 100%;
|
|
69
|
+
-webkit-backface-visibility: hidden;
|
|
70
|
+
backface-visibility: hidden;
|
|
71
|
+
|
|
72
|
+
.img-flip-card {
|
|
73
|
+
width: 90%;
|
|
74
|
+
height: auto;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.back-card {
|
|
79
|
+
/***** Parameretre modifiable *****/
|
|
80
|
+
transform: rotateY(180deg);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
</style>
|
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
@ Description: This component is used to create a popover that is accessible via keyboard navigation (tab + space/enter)
|
|
3
|
-
-->
|
|
4
|
-
<template>
|
|
5
|
-
<v-tooltip
|
|
6
|
-
ref="tooltip"
|
|
7
|
-
v-bind="$attrs"
|
|
8
|
-
v-model="show"
|
|
9
|
-
transition="false"
|
|
10
|
-
:open-on-click="true"
|
|
11
|
-
:persistent="false"
|
|
12
|
-
>
|
|
13
|
-
<slot></slot>
|
|
14
|
-
</v-tooltip>
|
|
15
|
-
</template>
|
|
16
|
-
|
|
17
|
-
<script>
|
|
18
|
-
export default {
|
|
19
|
-
name: 'AppBasePopover',
|
|
20
|
-
data() {
|
|
21
|
-
return {
|
|
22
|
-
show: false,
|
|
23
|
-
alertContainer: null
|
|
24
|
-
}
|
|
25
|
-
},
|
|
26
|
-
watch: {
|
|
27
|
-
show: {
|
|
28
|
-
handler(newValue) {
|
|
29
|
-
if (newValue) {
|
|
30
|
-
const content = this.$refs.tooltip.contentEl.textContent
|
|
31
|
-
this.alertContainer.textContent = ''
|
|
32
|
-
this.alertContainer.textContent = content
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
mounted() {
|
|
38
|
-
this.alertContainer = document.getElementById('hiddenAlertContainer')
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
</script>
|
|
1
|
+
<!--
|
|
2
|
+
@ Description: This component is used to create a popover that is accessible via keyboard navigation (tab + space/enter)
|
|
3
|
+
-->
|
|
4
|
+
<template>
|
|
5
|
+
<v-tooltip
|
|
6
|
+
ref="tooltip"
|
|
7
|
+
v-bind="$attrs"
|
|
8
|
+
v-model="show"
|
|
9
|
+
transition="false"
|
|
10
|
+
:open-on-click="true"
|
|
11
|
+
:persistent="false"
|
|
12
|
+
>
|
|
13
|
+
<slot></slot>
|
|
14
|
+
</v-tooltip>
|
|
15
|
+
</template>
|
|
16
|
+
|
|
17
|
+
<script>
|
|
18
|
+
export default {
|
|
19
|
+
name: 'AppBasePopover',
|
|
20
|
+
data() {
|
|
21
|
+
return {
|
|
22
|
+
show: false,
|
|
23
|
+
alertContainer: null
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
watch: {
|
|
27
|
+
show: {
|
|
28
|
+
handler(newValue) {
|
|
29
|
+
if (newValue) {
|
|
30
|
+
const content = this.$refs.tooltip.contentEl.textContent
|
|
31
|
+
this.alertContainer.textContent = ''
|
|
32
|
+
this.alertContainer.textContent = content
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
mounted() {
|
|
38
|
+
this.alertContainer = document.getElementById('hiddenAlertContainer')
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
</script>
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
class="radio-label"
|
|
21
21
|
:class="[
|
|
22
22
|
{ answerSlct: selected == choixReponse.value },
|
|
23
|
-
`${retro[index]}`
|
|
23
|
+
`${retro[index] || ''}`
|
|
24
24
|
]"
|
|
25
25
|
>
|
|
26
26
|
<input
|
|
@@ -262,3 +262,17 @@ export default {
|
|
|
262
262
|
}
|
|
263
263
|
}
|
|
264
264
|
</script>
|
|
265
|
+
<style lang="scss">
|
|
266
|
+
.custom-control-input:focus ~ .custom-control-label::before {
|
|
267
|
+
border: inherit;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
.custom-control-input:focus ~ .custom-control-label::before {
|
|
271
|
+
box-shadow: inherit;
|
|
272
|
+
-webkit-box-shadow: inherit;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
fieldset {
|
|
276
|
+
border: inherit;
|
|
277
|
+
}
|
|
278
|
+
</style>
|
|
@@ -260,7 +260,7 @@ export default {
|
|
|
260
260
|
}
|
|
261
261
|
}
|
|
262
262
|
</script>
|
|
263
|
-
<style lang="scss"
|
|
263
|
+
<style lang="scss">
|
|
264
264
|
.texteatrou {
|
|
265
265
|
display: inline;
|
|
266
266
|
position: relative;
|
|
@@ -274,4 +274,40 @@ export default {
|
|
|
274
274
|
display: inline;
|
|
275
275
|
width: auto;
|
|
276
276
|
}
|
|
277
|
+
|
|
278
|
+
fieldset {
|
|
279
|
+
border: inherit;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
.texteatrou {
|
|
283
|
+
position: relative;
|
|
284
|
+
|
|
285
|
+
.v-input {
|
|
286
|
+
width: 240px;
|
|
287
|
+
height: 29px;
|
|
288
|
+
position: relative;
|
|
289
|
+
|
|
290
|
+
.v-input__details {
|
|
291
|
+
display: none !important;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
.v-input__control {
|
|
295
|
+
height: 29px;
|
|
296
|
+
width: 240px;
|
|
297
|
+
|
|
298
|
+
.v-field__field {
|
|
299
|
+
min-height: 29px;
|
|
300
|
+
height: 29px;
|
|
301
|
+
|
|
302
|
+
.v-field__input {
|
|
303
|
+
padding-top: 2px;
|
|
304
|
+
padding-bottom: 2px;
|
|
305
|
+
padding-right: 30px;
|
|
306
|
+
height: 29px;
|
|
307
|
+
min-height: 29px;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
}
|
|
277
313
|
</style>
|
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
<!--@ Description: This component is used to display the playbar associate with the videoPlayer
|
|
2
|
-
@ What it does: The component is used to interacted with the videoPlayer via buttons.
|
|
3
|
-
v-media class is used to identified which html elements trigger the playBar to be appear (with focus/click)-->
|
|
4
|
-
<template>
|
|
5
|
-
<!--------------------------------- PLAY-BAR Progress -------------------------------------->
|
|
6
|
-
<div ref="$playbar-timeline" class="pb-timeline">
|
|
7
|
-
<div ref="$progress-area" class="progress-area">
|
|
8
|
-
<div
|
|
9
|
-
id="progress-bar"
|
|
10
|
-
ref="$progress-bar"
|
|
11
|
-
draggable="false"
|
|
12
|
-
tabindex="0"
|
|
13
|
-
class="v-media pb-progress-bar"
|
|
14
|
-
role="slider"
|
|
15
|
-
aria-valuemin="0"
|
|
16
|
-
:aria-label="mediaA11Y.label"
|
|
17
|
-
:aria-valuenow="mediaA11Y.valNow"
|
|
18
|
-
:aria-valuemax="mediaA11Y.valMax"
|
|
19
|
-
:aria-valuetext="mediaA11Y.valueText"
|
|
20
|
-
@focus="changeFocusState('progressBar', true)"
|
|
21
|
-
@blur="changeFocusState('progressBar', false)"
|
|
22
|
-
>
|
|
23
|
-
<!--Class progress-animation is apply when we are not using the thumb to change the progression-->
|
|
24
|
-
<div
|
|
25
|
-
id="progress-indicator"
|
|
26
|
-
ref="$progress-indicator"
|
|
27
|
-
draggable="false"
|
|
28
|
-
class="progress-indicator"
|
|
29
|
-
:class="{ 'progress-animation': !progressThumbDown }"
|
|
30
|
-
:style="{ width: progressBarPercentage + '%' }"
|
|
31
|
-
>
|
|
32
|
-
<!--Mousedown validate if the thumb is cliqued (if yes, the mouse is follow to modify the progress)
|
|
33
|
-
MouseOver/MouseOut deactivate click event on progressBar if the mouse hovered the thumb-->
|
|
34
|
-
<!-- <div
|
|
35
|
-
ref="$progress-thumb"
|
|
36
|
-
draggable="false"
|
|
37
|
-
class="progress-thumb"
|
|
38
|
-
style="z-index: 9"
|
|
39
|
-
@mousedown="
|
|
40
|
-
savedIsPlaying = isPlaying
|
|
41
|
-
progressThumbDown = true
|
|
42
|
-
"
|
|
43
|
-
@mouseover="progressThumbHover = true"
|
|
44
|
-
@mouseleave="progressThumbHover = false"
|
|
45
|
-
></div> -->
|
|
46
|
-
|
|
47
|
-
<div
|
|
48
|
-
ref="$progress-thumb"
|
|
49
|
-
draggable="false"
|
|
50
|
-
class="progress-thumb"
|
|
51
|
-
style="z-index: 9"
|
|
52
|
-
@mouseover="progressThumbHover = true"
|
|
53
|
-
@mouseleave="progressThumbHover = false"
|
|
54
|
-
></div>
|
|
55
|
-
</div>
|
|
56
|
-
</div>
|
|
57
|
-
<div
|
|
58
|
-
v-if="tooTipTimeCode"
|
|
59
|
-
id="seek-tooltip"
|
|
60
|
-
ref="$seek-tooltip"
|
|
61
|
-
aria-hidden="true"
|
|
62
|
-
class="seek-tooltip"
|
|
63
|
-
>
|
|
64
|
-
{{ tooTipTimeCode }}
|
|
65
|
-
</div>
|
|
66
|
-
</div>
|
|
67
|
-
</div>
|
|
68
|
-
</template>
|
|
69
|
-
|
|
70
|
-
<script>
|
|
71
|
-
import $extendsMedia from '../mixins/$mediaMixins'
|
|
72
|
-
|
|
73
|
-
export default {
|
|
74
|
-
mixins: [$extendsMedia],
|
|
75
|
-
data() {
|
|
76
|
-
return {
|
|
77
|
-
tooTipTimeCode: null
|
|
78
|
-
}
|
|
79
|
-
},
|
|
80
|
-
mounted() {}
|
|
81
|
-
}
|
|
82
|
-
</script>
|
|
1
|
+
<!--@ Description: This component is used to display the playbar associate with the videoPlayer
|
|
2
|
+
@ What it does: The component is used to interacted with the videoPlayer via buttons.
|
|
3
|
+
v-media class is used to identified which html elements trigger the playBar to be appear (with focus/click)-->
|
|
4
|
+
<template>
|
|
5
|
+
<!--------------------------------- PLAY-BAR Progress -------------------------------------->
|
|
6
|
+
<div ref="$playbar-timeline" class="pb-timeline">
|
|
7
|
+
<div ref="$progress-area" class="progress-area">
|
|
8
|
+
<div
|
|
9
|
+
id="progress-bar"
|
|
10
|
+
ref="$progress-bar"
|
|
11
|
+
draggable="false"
|
|
12
|
+
tabindex="0"
|
|
13
|
+
class="v-media pb-progress-bar"
|
|
14
|
+
role="slider"
|
|
15
|
+
aria-valuemin="0"
|
|
16
|
+
:aria-label="mediaA11Y.label"
|
|
17
|
+
:aria-valuenow="mediaA11Y.valNow"
|
|
18
|
+
:aria-valuemax="mediaA11Y.valMax"
|
|
19
|
+
:aria-valuetext="mediaA11Y.valueText"
|
|
20
|
+
@focus="changeFocusState('progressBar', true)"
|
|
21
|
+
@blur="changeFocusState('progressBar', false)"
|
|
22
|
+
>
|
|
23
|
+
<!--Class progress-animation is apply when we are not using the thumb to change the progression-->
|
|
24
|
+
<div
|
|
25
|
+
id="progress-indicator"
|
|
26
|
+
ref="$progress-indicator"
|
|
27
|
+
draggable="false"
|
|
28
|
+
class="progress-indicator"
|
|
29
|
+
:class="{ 'progress-animation': !progressThumbDown }"
|
|
30
|
+
:style="{ width: progressBarPercentage + '%' }"
|
|
31
|
+
>
|
|
32
|
+
<!--Mousedown validate if the thumb is cliqued (if yes, the mouse is follow to modify the progress)
|
|
33
|
+
MouseOver/MouseOut deactivate click event on progressBar if the mouse hovered the thumb-->
|
|
34
|
+
<!-- <div
|
|
35
|
+
ref="$progress-thumb"
|
|
36
|
+
draggable="false"
|
|
37
|
+
class="progress-thumb"
|
|
38
|
+
style="z-index: 9"
|
|
39
|
+
@mousedown="
|
|
40
|
+
savedIsPlaying = isPlaying
|
|
41
|
+
progressThumbDown = true
|
|
42
|
+
"
|
|
43
|
+
@mouseover="progressThumbHover = true"
|
|
44
|
+
@mouseleave="progressThumbHover = false"
|
|
45
|
+
></div> -->
|
|
46
|
+
|
|
47
|
+
<div
|
|
48
|
+
ref="$progress-thumb"
|
|
49
|
+
draggable="false"
|
|
50
|
+
class="progress-thumb"
|
|
51
|
+
style="z-index: 9"
|
|
52
|
+
@mouseover="progressThumbHover = true"
|
|
53
|
+
@mouseleave="progressThumbHover = false"
|
|
54
|
+
></div>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
<div
|
|
58
|
+
v-if="tooTipTimeCode"
|
|
59
|
+
id="seek-tooltip"
|
|
60
|
+
ref="$seek-tooltip"
|
|
61
|
+
aria-hidden="true"
|
|
62
|
+
class="seek-tooltip"
|
|
63
|
+
>
|
|
64
|
+
{{ tooTipTimeCode }}
|
|
65
|
+
</div>
|
|
66
|
+
</div>
|
|
67
|
+
</div>
|
|
68
|
+
</template>
|
|
69
|
+
|
|
70
|
+
<script>
|
|
71
|
+
import $extendsMedia from '../mixins/$mediaMixins'
|
|
72
|
+
|
|
73
|
+
export default {
|
|
74
|
+
mixins: [$extendsMedia],
|
|
75
|
+
data() {
|
|
76
|
+
return {
|
|
77
|
+
tooTipTimeCode: null
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
mounted() {}
|
|
81
|
+
}
|
|
82
|
+
</script>
|