fcad-core-dragon 2.0.0-beta.7 → 2.0.0-beta.8

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.
Files changed (58) hide show
  1. package/.editorconfig +33 -33
  2. package/.eslintignore +29 -29
  3. package/.eslintrc.cjs +81 -81
  4. package/CHANGELOG +6 -1
  5. package/README.md +71 -71
  6. package/bk.scss +117 -117
  7. package/package.json +1 -6
  8. package/src/assets/data/onboardingMessages.json +47 -47
  9. package/src/components/AppBase.vue +1 -1
  10. package/src/components/AppBaseErrorDisplay.vue +438 -438
  11. package/src/components/AppBaseFlipCard.vue +84 -84
  12. package/src/components/AppBaseModule.vue +0 -18
  13. package/src/components/AppBasePopover.vue +41 -41
  14. package/src/components/AppCompContainer.vue +1 -3
  15. package/src/components/AppCompInputRadioNext.vue +152 -152
  16. package/src/components/AppCompInputTextToFillNext.vue +171 -171
  17. package/src/components/AppCompJauge.vue +74 -74
  18. package/src/components/AppCompMenuItem.vue +228 -228
  19. package/src/components/AppCompPlayBarProgress.vue +82 -82
  20. package/src/components/AppCompSettingsMenu.vue +172 -172
  21. package/src/components/AppCompViewDisplay.vue +6 -6
  22. package/src/composables/useQuiz.js +206 -206
  23. package/src/externalComps/ModuleView.vue +22 -22
  24. package/src/externalComps/SummaryView.vue +91 -91
  25. package/src/mixins/$mediaMixins.js +819 -819
  26. package/src/mixins/timerMixin.js +155 -155
  27. package/src/module/xapi/Crypto/Hasher.js +241 -241
  28. package/src/module/xapi/Crypto/WordArray.js +278 -278
  29. package/src/module/xapi/Crypto/algorithms/BufferedBlockAlgorithm.js +103 -103
  30. package/src/module/xapi/Crypto/algorithms/C_algo.js +315 -315
  31. package/src/module/xapi/Crypto/algorithms/HMAC.js +9 -9
  32. package/src/module/xapi/Crypto/algorithms/SHA1.js +9 -9
  33. package/src/module/xapi/Crypto/encoders/Base.js +105 -105
  34. package/src/module/xapi/Crypto/encoders/Base64.js +99 -99
  35. package/src/module/xapi/Crypto/encoders/Hex.js +61 -61
  36. package/src/module/xapi/Crypto/encoders/Latin1.js +61 -61
  37. package/src/module/xapi/Crypto/encoders/Utf8.js +45 -45
  38. package/src/module/xapi/Crypto/index.js +53 -53
  39. package/src/module/xapi/Statement/activity.js +47 -47
  40. package/src/module/xapi/Statement/agent.js +55 -55
  41. package/src/module/xapi/Statement/group.js +26 -26
  42. package/src/module/xapi/Statement/index.js +259 -259
  43. package/src/module/xapi/Statement/statement.js +253 -253
  44. package/src/module/xapi/Statement/statementRef.js +23 -23
  45. package/src/module/xapi/Statement/substatement.js +22 -22
  46. package/src/module/xapi/Statement/verb.js +36 -36
  47. package/src/module/xapi/activitytypes.js +17 -17
  48. package/src/module/xapi/utils.js +167 -167
  49. package/src/module/xapi/verbs.js +294 -294
  50. package/src/module/xapi/xapiStatement.js +444 -444
  51. package/src/plugins/bus.js +8 -8
  52. package/src/plugins/gsap.js +14 -14
  53. package/src/plugins/i18n.js +44 -44
  54. package/src/plugins/save.js +37 -37
  55. package/src/plugins/scorm.js +287 -287
  56. package/src/plugins/xapi.js +11 -11
  57. package/src/public/index.html +33 -33
  58. package/src/shared/generalfuncs.js +210 -210
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
@@ -1,4 +1,9 @@
1
- [next]2.0.0-beta.7(24 février 2025)
1
+ 2.0.0-beta.8(25 février 2025)
2
+ Nettoyage des dépendances
3
+
4
+ Nettoyage commentaires et console.log
5
+
6
+ 2.0.0-beta.7(24 février 2025)
2
7
  Règle un problème avec l’import dynamique des branches
3
8
 
4
9
  2.0.0-beta.6(21 février 2025)
package/README.md CHANGED
@@ -1,72 +1,72 @@
1
- # fcad-core-ninja
2
-
3
- ## Project setup
4
-
5
- ```
6
- npm install
7
- ```
8
-
9
- ## How to use
10
-
11
- ### Install in project
12
-
13
- In your project install this library by doing :
14
-
15
- ```
16
- npm install fcad-core-dragon
17
- ```
18
-
19
- ### Use in project
20
-
21
- Now in your main.js do
22
-
23
- ```
24
- import FcadCoreDragon from 'fcad-core-dragon'
25
-
26
- Vue.use(FcadCoreDragon, {$options})
27
- ```
28
-
29
- #### $options Parameters
30
-
31
- $options to pass to library are:
32
-
33
- + **i18n**: pass project **internationalization / Localisation** reference to library
34
- + **router**: pass project **router** reference library
35
- + **appSettings**: pass project **app setting** from './app.settings.js'
36
- + **menuSettings**: pass project **menu settings** './src/menu.settings.js'
37
-
38
-
39
- In the components of your project you can now use the components of the library
40
-
41
- ```
42
- //Exemple in App.js of your project use component AppBase of Library
43
- <app-base/>
44
- ```
45
-
46
- For more information check [documentation](https://fcaddocumentation.netlify.app/)
47
-
48
- ### Compiles and minifies for production
49
-
50
- ```
51
- npm run build
52
- ```
53
-
54
- ### Lints and fixes files
55
-
56
- ```
57
- npm run lint
58
- ```
59
-
60
- ## Configurations
61
-
62
- Get the configurations files from [FCAD ressources](https://redmine.cegepadistance.ca/projects/fcad/wiki/Wiki) and
63
- add them in the root of your projects.
64
- .Zip containts:
65
-
66
- 1. Vue.config.js
67
- 2. .editorconfig
68
- 3. .gitignore
69
- 4. .eslintrc
70
- 5. .eslintignore
71
- 6. .prettierrc.js
1
+ # fcad-core-ninja
2
+
3
+ ## Project setup
4
+
5
+ ```
6
+ npm install
7
+ ```
8
+
9
+ ## How to use
10
+
11
+ ### Install in project
12
+
13
+ In your project install this library by doing :
14
+
15
+ ```
16
+ npm install fcad-core-dragon
17
+ ```
18
+
19
+ ### Use in project
20
+
21
+ Now in your main.js do
22
+
23
+ ```
24
+ import FcadCoreDragon from 'fcad-core-dragon'
25
+
26
+ Vue.use(FcadCoreDragon, {$options})
27
+ ```
28
+
29
+ #### $options Parameters
30
+
31
+ $options to pass to library are:
32
+
33
+ + **i18n**: pass project **internationalization / Localisation** reference to library
34
+ + **router**: pass project **router** reference library
35
+ + **appSettings**: pass project **app setting** from './app.settings.js'
36
+ + **menuSettings**: pass project **menu settings** './src/menu.settings.js'
37
+
38
+
39
+ In the components of your project you can now use the components of the library
40
+
41
+ ```
42
+ //Exemple in App.js of your project use component AppBase of Library
43
+ <app-base/>
44
+ ```
45
+
46
+ For more information check [documentation](https://fcaddocumentation.netlify.app/)
47
+
48
+ ### Compiles and minifies for production
49
+
50
+ ```
51
+ npm run build
52
+ ```
53
+
54
+ ### Lints and fixes files
55
+
56
+ ```
57
+ npm run lint
58
+ ```
59
+
60
+ ## Configurations
61
+
62
+ Get the configurations files from [FCAD ressources](https://redmine.cegepadistance.ca/projects/fcad/wiki/Wiki) and
63
+ add them in the root of your projects.
64
+ .Zip containts:
65
+
66
+ 1. Vue.config.js
67
+ 2. .editorconfig
68
+ 3. .gitignore
69
+ 4. .eslintrc
70
+ 5. .eslintignore
71
+ 6. .prettierrc.js
72
72
 
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
+ }