fcad-core-dragon 2.1.0-beta.3 → 2.1.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/.editorconfig +33 -33
- package/.eslintignore +29 -29
- package/.eslintrc.cjs +81 -81
- package/CHANGELOG +3 -0
- package/bk.scss +117 -117
- package/documentation/composants/app-comp-audio.md +35 -3
- package/documentation/composants/app-comp-video-player.md +42 -3
- 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/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 +1 -0
- 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
package/.editorconfig
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
# http://editorconfig.org
|
|
2
|
-
root = true
|
|
3
|
-
|
|
4
|
-
[*]
|
|
5
|
-
indent_style = space
|
|
6
|
-
indent_size = 2
|
|
7
|
-
end_of_line = lf
|
|
8
|
-
charset = utf-8
|
|
9
|
-
trim_trailing_whitespace = true
|
|
10
|
-
insert_final_newline = true
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
# The JSON files contain newlines inconsistently
|
|
14
|
-
[*.json]
|
|
15
|
-
insert_final_newline = ignore
|
|
16
|
-
|
|
17
|
-
# Minified JavaScript files shouldn't be changed
|
|
18
|
-
[**.min.js]
|
|
19
|
-
indent_style = ignore
|
|
20
|
-
insert_final_newline = ignore
|
|
21
|
-
|
|
22
|
-
# Makefiles always use tabs for indentation
|
|
23
|
-
[Makefile]
|
|
24
|
-
indent_style = tab
|
|
25
|
-
|
|
26
|
-
# Batch files use tabs for indentation
|
|
27
|
-
[*.bat]
|
|
28
|
-
indent_style = tab
|
|
29
|
-
|
|
30
|
-
[*.md]
|
|
31
|
-
trim_trailing_whitespace = false
|
|
32
|
-
insert_final_newline = false
|
|
33
|
-
|
|
1
|
+
# http://editorconfig.org
|
|
2
|
+
root = true
|
|
3
|
+
|
|
4
|
+
[*]
|
|
5
|
+
indent_style = space
|
|
6
|
+
indent_size = 2
|
|
7
|
+
end_of_line = lf
|
|
8
|
+
charset = utf-8
|
|
9
|
+
trim_trailing_whitespace = true
|
|
10
|
+
insert_final_newline = true
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
# The JSON files contain newlines inconsistently
|
|
14
|
+
[*.json]
|
|
15
|
+
insert_final_newline = ignore
|
|
16
|
+
|
|
17
|
+
# Minified JavaScript files shouldn't be changed
|
|
18
|
+
[**.min.js]
|
|
19
|
+
indent_style = ignore
|
|
20
|
+
insert_final_newline = ignore
|
|
21
|
+
|
|
22
|
+
# Makefiles always use tabs for indentation
|
|
23
|
+
[Makefile]
|
|
24
|
+
indent_style = tab
|
|
25
|
+
|
|
26
|
+
# Batch files use tabs for indentation
|
|
27
|
+
[*.bat]
|
|
28
|
+
indent_style = tab
|
|
29
|
+
|
|
30
|
+
[*.md]
|
|
31
|
+
trim_trailing_whitespace = false
|
|
32
|
+
insert_final_newline = false
|
|
33
|
+
|
package/.eslintignore
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
.DS_Store
|
|
2
|
-
node_modules
|
|
3
|
-
/dist
|
|
4
|
-
yalc.lock
|
|
5
|
-
package-lock.json
|
|
6
|
-
.zip
|
|
7
|
-
|
|
8
|
-
# local env files
|
|
9
|
-
.env.local
|
|
10
|
-
.env.*.local
|
|
11
|
-
|
|
12
|
-
# Log files
|
|
13
|
-
npm-debug.log*
|
|
14
|
-
yarn-debug.log*
|
|
15
|
-
yarn-error.log*
|
|
16
|
-
pnpm-debug.log*
|
|
17
|
-
|
|
18
|
-
# Editor directories and files
|
|
19
|
-
.idea
|
|
20
|
-
.vscode
|
|
21
|
-
*.suo
|
|
22
|
-
*.ntvs*
|
|
23
|
-
*.njsproj
|
|
24
|
-
*.sln
|
|
25
|
-
*.sw?
|
|
26
|
-
\_*
|
|
27
|
-
.eslintrc
|
|
28
|
-
.gitignore
|
|
29
|
-
|
|
1
|
+
.DS_Store
|
|
2
|
+
node_modules
|
|
3
|
+
/dist
|
|
4
|
+
yalc.lock
|
|
5
|
+
package-lock.json
|
|
6
|
+
.zip
|
|
7
|
+
|
|
8
|
+
# local env files
|
|
9
|
+
.env.local
|
|
10
|
+
.env.*.local
|
|
11
|
+
|
|
12
|
+
# Log files
|
|
13
|
+
npm-debug.log*
|
|
14
|
+
yarn-debug.log*
|
|
15
|
+
yarn-error.log*
|
|
16
|
+
pnpm-debug.log*
|
|
17
|
+
|
|
18
|
+
# Editor directories and files
|
|
19
|
+
.idea
|
|
20
|
+
.vscode
|
|
21
|
+
*.suo
|
|
22
|
+
*.ntvs*
|
|
23
|
+
*.njsproj
|
|
24
|
+
*.sln
|
|
25
|
+
*.sw?
|
|
26
|
+
\_*
|
|
27
|
+
.eslintrc
|
|
28
|
+
.gitignore
|
|
29
|
+
|
package/.eslintrc.cjs
CHANGED
|
@@ -1,81 +1,81 @@
|
|
|
1
|
-
// Special confirugation for pettier for this project. Creating this file is optional in a project.
|
|
2
|
-
module.exports = {
|
|
3
|
-
root: true,
|
|
4
|
-
env: {
|
|
5
|
-
node: true,
|
|
6
|
-
browser: true
|
|
7
|
-
},
|
|
8
|
-
plugins: ['prettier'],
|
|
9
|
-
extends: ['eslint:recommended', 'plugin:vue/vue3-recommended', 'prettier'],
|
|
10
|
-
rules: {
|
|
11
|
-
// Only allow debugger in development
|
|
12
|
-
'no-debugger': process.env.PRE_COMMIT ? 'error' : 'off',
|
|
13
|
-
// Only allow `console.log` in development
|
|
14
|
-
'no-console': process.env.PRE_COMMIT
|
|
15
|
-
? ['error', { allow: ['warn', 'error'] }]
|
|
16
|
-
: 'off',
|
|
17
|
-
//'comma-dangle': ['error', 'never'],
|
|
18
|
-
'no-alert': 'off',
|
|
19
|
-
//'vue/array-bracket-spacing': 'error',
|
|
20
|
-
//'vue/block-spacing': 'error',
|
|
21
|
-
// 'vue/comma-dangle': ['error', 'never'],
|
|
22
|
-
//'vue/object-curly-spacing': ['error', 'always'],
|
|
23
|
-
'vue/no-v-for-template-key': 'off',
|
|
24
|
-
'vue/valid-template-root': 'off',
|
|
25
|
-
// 'vue/no-v-for-template-key-on-child':'off',
|
|
26
|
-
'vue/component-name-in-template-casing': [
|
|
27
|
-
'error',
|
|
28
|
-
'kebab-case',
|
|
29
|
-
{
|
|
30
|
-
ignores: []
|
|
31
|
-
}
|
|
32
|
-
],
|
|
33
|
-
'vue/no-v-html': 'off',
|
|
34
|
-
'prettier/prettier': [
|
|
35
|
-
'error',
|
|
36
|
-
{
|
|
37
|
-
singleQuote: true,
|
|
38
|
-
semi: false,
|
|
39
|
-
tabWidth: 2,
|
|
40
|
-
trailingComma: 'none',
|
|
41
|
-
arrowParens: 'always',
|
|
42
|
-
htmlWhitespaceSensitivity: 'ignore',
|
|
43
|
-
endOfLine: 'auto'
|
|
44
|
-
}
|
|
45
|
-
],
|
|
46
|
-
'no-param-reassign': [0, { allowPassedByValue: true }],
|
|
47
|
-
'no-shadow': 'off',
|
|
48
|
-
'prefer-const': [
|
|
49
|
-
'off',
|
|
50
|
-
{
|
|
51
|
-
destructuring: 'any',
|
|
52
|
-
ignoreReadBeforeAssign: false
|
|
53
|
-
}
|
|
54
|
-
],
|
|
55
|
-
'consistent-return': 'off',
|
|
56
|
-
camelcase: 'off',
|
|
57
|
-
'no-underscore-dangle': 'off',
|
|
58
|
-
'no-restricted-syntax': 'off',
|
|
59
|
-
'no-lonely-if': 'off',
|
|
60
|
-
'default-case': 'off',
|
|
61
|
-
'no-plusplus': 'off',
|
|
62
|
-
'no-loop-func': 'off',
|
|
63
|
-
'no-prototype-builtins': 'off',
|
|
64
|
-
'func-names': 'off',
|
|
65
|
-
'no-unused-vars': ['error', { args: 'none', ignoreRestSiblings: true }]
|
|
66
|
-
},
|
|
67
|
-
parserOptions: {
|
|
68
|
-
sourceType: 'module'
|
|
69
|
-
},
|
|
70
|
-
overrides: [
|
|
71
|
-
{
|
|
72
|
-
files: [
|
|
73
|
-
'**/__tests__/*.{j,t}s?(x)',
|
|
74
|
-
'**/tests/unit/**/*.spec.{j,t}s?(x)'
|
|
75
|
-
],
|
|
76
|
-
env: {
|
|
77
|
-
jest: true
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
]
|
|
81
|
-
}
|
|
1
|
+
// Special confirugation for pettier for this project. Creating this file is optional in a project.
|
|
2
|
+
module.exports = {
|
|
3
|
+
root: true,
|
|
4
|
+
env: {
|
|
5
|
+
node: true,
|
|
6
|
+
browser: true
|
|
7
|
+
},
|
|
8
|
+
plugins: ['prettier'],
|
|
9
|
+
extends: ['eslint:recommended', 'plugin:vue/vue3-recommended', 'prettier'],
|
|
10
|
+
rules: {
|
|
11
|
+
// Only allow debugger in development
|
|
12
|
+
'no-debugger': process.env.PRE_COMMIT ? 'error' : 'off',
|
|
13
|
+
// Only allow `console.log` in development
|
|
14
|
+
'no-console': process.env.PRE_COMMIT
|
|
15
|
+
? ['error', { allow: ['warn', 'error'] }]
|
|
16
|
+
: 'off',
|
|
17
|
+
//'comma-dangle': ['error', 'never'],
|
|
18
|
+
'no-alert': 'off',
|
|
19
|
+
//'vue/array-bracket-spacing': 'error',
|
|
20
|
+
//'vue/block-spacing': 'error',
|
|
21
|
+
// 'vue/comma-dangle': ['error', 'never'],
|
|
22
|
+
//'vue/object-curly-spacing': ['error', 'always'],
|
|
23
|
+
'vue/no-v-for-template-key': 'off',
|
|
24
|
+
'vue/valid-template-root': 'off',
|
|
25
|
+
// 'vue/no-v-for-template-key-on-child':'off',
|
|
26
|
+
'vue/component-name-in-template-casing': [
|
|
27
|
+
'error',
|
|
28
|
+
'kebab-case',
|
|
29
|
+
{
|
|
30
|
+
ignores: []
|
|
31
|
+
}
|
|
32
|
+
],
|
|
33
|
+
'vue/no-v-html': 'off',
|
|
34
|
+
'prettier/prettier': [
|
|
35
|
+
'error',
|
|
36
|
+
{
|
|
37
|
+
singleQuote: true,
|
|
38
|
+
semi: false,
|
|
39
|
+
tabWidth: 2,
|
|
40
|
+
trailingComma: 'none',
|
|
41
|
+
arrowParens: 'always',
|
|
42
|
+
htmlWhitespaceSensitivity: 'ignore',
|
|
43
|
+
endOfLine: 'auto'
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
'no-param-reassign': [0, { allowPassedByValue: true }],
|
|
47
|
+
'no-shadow': 'off',
|
|
48
|
+
'prefer-const': [
|
|
49
|
+
'off',
|
|
50
|
+
{
|
|
51
|
+
destructuring: 'any',
|
|
52
|
+
ignoreReadBeforeAssign: false
|
|
53
|
+
}
|
|
54
|
+
],
|
|
55
|
+
'consistent-return': 'off',
|
|
56
|
+
camelcase: 'off',
|
|
57
|
+
'no-underscore-dangle': 'off',
|
|
58
|
+
'no-restricted-syntax': 'off',
|
|
59
|
+
'no-lonely-if': 'off',
|
|
60
|
+
'default-case': 'off',
|
|
61
|
+
'no-plusplus': 'off',
|
|
62
|
+
'no-loop-func': 'off',
|
|
63
|
+
'no-prototype-builtins': 'off',
|
|
64
|
+
'func-names': 'off',
|
|
65
|
+
'no-unused-vars': ['error', { args: 'none', ignoreRestSiblings: true }]
|
|
66
|
+
},
|
|
67
|
+
parserOptions: {
|
|
68
|
+
sourceType: 'module'
|
|
69
|
+
},
|
|
70
|
+
overrides: [
|
|
71
|
+
{
|
|
72
|
+
files: [
|
|
73
|
+
'**/__tests__/*.{j,t}s?(x)',
|
|
74
|
+
'**/tests/unit/**/*.spec.{j,t}s?(x)'
|
|
75
|
+
],
|
|
76
|
+
env: {
|
|
77
|
+
jest: true
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
]
|
|
81
|
+
}
|
package/CHANGELOG
CHANGED
package/bk.scss
CHANGED
|
@@ -1,117 +1,117 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
.navbar {
|
|
4
|
-
position: absolute;
|
|
5
|
-
top: 0;
|
|
6
|
-
left: 0;
|
|
7
|
-
z-index: 10;
|
|
8
|
-
display: flex;
|
|
9
|
-
flex-direction: column;
|
|
10
|
-
flex-wrap: wrap;
|
|
11
|
-
align-content: start;
|
|
12
|
-
width: 67px;
|
|
13
|
-
height: 100%;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
.module-wrapper {
|
|
17
|
-
width: 100%;
|
|
18
|
-
position: relative;
|
|
19
|
-
|
|
20
|
-
#wrapper-content {
|
|
21
|
-
width: 100%;
|
|
22
|
-
position: relative;
|
|
23
|
-
padding-right: 0 !important;
|
|
24
|
-
padding-left: 0 !important;
|
|
25
|
-
|
|
26
|
-
&.active {
|
|
27
|
-
overflow: hidden;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.box {
|
|
31
|
-
width: 100%;
|
|
32
|
-
height: 95%;
|
|
33
|
-
|
|
34
|
-
.app-page {
|
|
35
|
-
width: 100%;
|
|
36
|
-
margin-top: 60px;
|
|
37
|
-
|
|
38
|
-
.row {
|
|
39
|
-
width: 100%;
|
|
40
|
-
margin-right: 0;
|
|
41
|
-
margin-left: 0;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
.app-comp-table-of-content {
|
|
48
|
-
display: -webkit-flex;
|
|
49
|
-
display: flex;
|
|
50
|
-
flex-direction: column;
|
|
51
|
-
flex-wrap: wrap;
|
|
52
|
-
position: absolute;
|
|
53
|
-
top: 0px;
|
|
54
|
-
min-height: 100%;
|
|
55
|
-
z-index: 1;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
.app-nav {
|
|
60
|
-
.md-controller {
|
|
61
|
-
display: -webkit-flex;
|
|
62
|
-
display: flex;
|
|
63
|
-
flex-direction: row;
|
|
64
|
-
align-items: baseline;
|
|
65
|
-
//width: $widthPlayer;
|
|
66
|
-
width: 50%;
|
|
67
|
-
|
|
68
|
-
.ctrl-play {
|
|
69
|
-
display: -webkit-flex;
|
|
70
|
-
display: flex;
|
|
71
|
-
flex-direction: row;
|
|
72
|
-
align-items: baseline;
|
|
73
|
-
//width: $widthPlayer;
|
|
74
|
-
width: 50%;
|
|
75
|
-
|
|
76
|
-
#progress-bar {
|
|
77
|
-
display: block;
|
|
78
|
-
//width: $widthProgressBar;
|
|
79
|
-
width: 150px;
|
|
80
|
-
//height: $heigthProgressBar;
|
|
81
|
-
height: 10px;
|
|
82
|
-
position: relative;
|
|
83
|
-
overflow: hidden;
|
|
84
|
-
|
|
85
|
-
#progress {
|
|
86
|
-
display: block;
|
|
87
|
-
height: 100%;
|
|
88
|
-
background-color: red;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
#progress-shaddow {
|
|
92
|
-
display: block;
|
|
93
|
-
height: 100%;
|
|
94
|
-
position: absolute;
|
|
95
|
-
top: 0px;
|
|
96
|
-
left: 0px;
|
|
97
|
-
z-index: -1;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
.ctrl-subtitle {
|
|
103
|
-
//width: $widthCtrSubtitle;
|
|
104
|
-
width: 10%;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
.ctrl-sound {
|
|
108
|
-
display: -webkit-flex;
|
|
109
|
-
display: flex;
|
|
110
|
-
flex-direction: row;
|
|
111
|
-
align-items: baseline;
|
|
112
|
-
justify-content: space-between;
|
|
113
|
-
//width: $widthCtrlSound;
|
|
114
|
-
width: 40%;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
.navbar {
|
|
4
|
+
position: absolute;
|
|
5
|
+
top: 0;
|
|
6
|
+
left: 0;
|
|
7
|
+
z-index: 10;
|
|
8
|
+
display: flex;
|
|
9
|
+
flex-direction: column;
|
|
10
|
+
flex-wrap: wrap;
|
|
11
|
+
align-content: start;
|
|
12
|
+
width: 67px;
|
|
13
|
+
height: 100%;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.module-wrapper {
|
|
17
|
+
width: 100%;
|
|
18
|
+
position: relative;
|
|
19
|
+
|
|
20
|
+
#wrapper-content {
|
|
21
|
+
width: 100%;
|
|
22
|
+
position: relative;
|
|
23
|
+
padding-right: 0 !important;
|
|
24
|
+
padding-left: 0 !important;
|
|
25
|
+
|
|
26
|
+
&.active {
|
|
27
|
+
overflow: hidden;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.box {
|
|
31
|
+
width: 100%;
|
|
32
|
+
height: 95%;
|
|
33
|
+
|
|
34
|
+
.app-page {
|
|
35
|
+
width: 100%;
|
|
36
|
+
margin-top: 60px;
|
|
37
|
+
|
|
38
|
+
.row {
|
|
39
|
+
width: 100%;
|
|
40
|
+
margin-right: 0;
|
|
41
|
+
margin-left: 0;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.app-comp-table-of-content {
|
|
48
|
+
display: -webkit-flex;
|
|
49
|
+
display: flex;
|
|
50
|
+
flex-direction: column;
|
|
51
|
+
flex-wrap: wrap;
|
|
52
|
+
position: absolute;
|
|
53
|
+
top: 0px;
|
|
54
|
+
min-height: 100%;
|
|
55
|
+
z-index: 1;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.app-nav {
|
|
60
|
+
.md-controller {
|
|
61
|
+
display: -webkit-flex;
|
|
62
|
+
display: flex;
|
|
63
|
+
flex-direction: row;
|
|
64
|
+
align-items: baseline;
|
|
65
|
+
//width: $widthPlayer;
|
|
66
|
+
width: 50%;
|
|
67
|
+
|
|
68
|
+
.ctrl-play {
|
|
69
|
+
display: -webkit-flex;
|
|
70
|
+
display: flex;
|
|
71
|
+
flex-direction: row;
|
|
72
|
+
align-items: baseline;
|
|
73
|
+
//width: $widthPlayer;
|
|
74
|
+
width: 50%;
|
|
75
|
+
|
|
76
|
+
#progress-bar {
|
|
77
|
+
display: block;
|
|
78
|
+
//width: $widthProgressBar;
|
|
79
|
+
width: 150px;
|
|
80
|
+
//height: $heigthProgressBar;
|
|
81
|
+
height: 10px;
|
|
82
|
+
position: relative;
|
|
83
|
+
overflow: hidden;
|
|
84
|
+
|
|
85
|
+
#progress {
|
|
86
|
+
display: block;
|
|
87
|
+
height: 100%;
|
|
88
|
+
background-color: red;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
#progress-shaddow {
|
|
92
|
+
display: block;
|
|
93
|
+
height: 100%;
|
|
94
|
+
position: absolute;
|
|
95
|
+
top: 0px;
|
|
96
|
+
left: 0px;
|
|
97
|
+
z-index: -1;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.ctrl-subtitle {
|
|
103
|
+
//width: $widthCtrSubtitle;
|
|
104
|
+
width: 10%;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
.ctrl-sound {
|
|
108
|
+
display: -webkit-flex;
|
|
109
|
+
display: flex;
|
|
110
|
+
flex-direction: row;
|
|
111
|
+
align-items: baseline;
|
|
112
|
+
justify-content: space-between;
|
|
113
|
+
//width: $widthCtrlSound;
|
|
114
|
+
width: 40%;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
@@ -15,9 +15,41 @@ S'affiche dans un en cadré avec un titre (obligatoire), une image (pas obligat
|
|
|
15
15
|
`<app-comp-audio-player :aud-data="audioData2"/>`
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
##
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
## Structure de données
|
|
19
|
+
Voici la structure à utiliser pour les données d'un contenu audio
|
|
20
|
+
> [!IMPORTANT]
|
|
21
|
+
> audiosData doit être un tableau (array)
|
|
22
|
+
```js
|
|
23
|
+
import aud1 from '@/assets/medias/exemple_audio.mp3'
|
|
24
|
+
import posterAud1 from '@/assets/img/audio_poster.png'
|
|
25
|
+
|
|
26
|
+
export default {
|
|
27
|
+
data() {
|
|
28
|
+
return {
|
|
29
|
+
id: 'P01',
|
|
30
|
+
activityRef: 'A03',
|
|
31
|
+
title: 'Lecteurs médias',
|
|
32
|
+
type: 'pg_normal',
|
|
33
|
+
audiosData: [
|
|
34
|
+
{
|
|
35
|
+
id: 'aud1',
|
|
36
|
+
mTitle: 'Et si... Annie Ernaux nous parlait',
|
|
37
|
+
mSources: [
|
|
38
|
+
{
|
|
39
|
+
type: 'mp3',
|
|
40
|
+
src: aud1
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
mPoster: posterAud1,
|
|
44
|
+
mAlt: "Portrait de l'autrice Annie Ernaux",
|
|
45
|
+
mTranscript:
|
|
46
|
+
'<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.</p>'
|
|
47
|
+
}
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
```
|
|
21
53
|
|
|
22
54
|
### Props
|
|
23
55
|
|
|
@@ -20,9 +20,48 @@ Les transcripts ouvrent dans une fenêtre latérale. Une seule fenêtre peux êt
|
|
|
20
20
|
|
|
21
21
|
`<app-comp-video-player :vid-data="videoData" />`
|
|
22
22
|
|
|
23
|
-
##
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
## Structure de données
|
|
24
|
+
|
|
25
|
+
Voici la structure à utiliser pour les données d'une vidéo
|
|
26
|
+
> [!IMPORTANT]
|
|
27
|
+
> videosData doit être un tableau (array)
|
|
28
|
+
|
|
29
|
+
```js
|
|
30
|
+
import videoExemple from '@/assets/medias/exemple_video.mp4'
|
|
31
|
+
import posterDandurand from '@/assets/img/video_poster.jpg'
|
|
32
|
+
import vttVid1FR from '@/assets/medias/exemple_soustitres.vtt'
|
|
33
|
+
|
|
34
|
+
export default {
|
|
35
|
+
data() {
|
|
36
|
+
return {
|
|
37
|
+
id: 'P01',
|
|
38
|
+
activityRef: 'A03',
|
|
39
|
+
title: 'Lecteurs médias',
|
|
40
|
+
type: 'pg_normal',
|
|
41
|
+
videosData: [
|
|
42
|
+
{
|
|
43
|
+
id: 'vid1',
|
|
44
|
+
mSources: [
|
|
45
|
+
{
|
|
46
|
+
type: 'mp4',
|
|
47
|
+
src: videoExemple
|
|
48
|
+
}
|
|
49
|
+
],
|
|
50
|
+
mSubtitles: [
|
|
51
|
+
{
|
|
52
|
+
label: 'Français',
|
|
53
|
+
src: vttVid1FR,
|
|
54
|
+
srclang: 'fr'
|
|
55
|
+
}
|
|
56
|
+
],
|
|
57
|
+
mPoster: posterDandurand,
|
|
58
|
+
mTranscript: 'exemple_transcript.html' // The file MUST be in the public folder of the project
|
|
59
|
+
}
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
```
|
|
26
65
|
|
|
27
66
|
### Props
|
|
28
67
|
|