jclic 2.2.1 → 2.3.0

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 (177) hide show
  1. package/README.md +5 -7
  2. package/dist-node/jclic-node.js +14157 -0
  3. package/dist-node/jclic-node.umd.cjs +530 -0
  4. package/package.json +38 -26
  5. package/.vscode/launch.json +0 -33
  6. package/.vscode/settings.json +0 -13
  7. package/CHANGELOG.md +0 -672
  8. package/TRANSLATIONS.md +0 -11
  9. package/build-locales.mjs +0 -82
  10. package/dist/jclic-node.js +0 -31680
  11. package/dist/jclic-node.js.map +0 -1
  12. package/dist/jclic.components.LICENSE +0 -2254
  13. package/dist/jclic.min.js +0 -27
  14. package/dist/jclic.min.js.map +0 -1
  15. package/eslint.config.mjs +0 -31
  16. package/jsdoc.config.js +0 -71
  17. package/locales/ar.po +0 -244
  18. package/locales/ast.po +0 -246
  19. package/locales/bs.po +0 -247
  20. package/locales/ca.po +0 -248
  21. package/locales/ca_ES@valencia.po +0 -248
  22. package/locales/cs.po +0 -244
  23. package/locales/da.po +0 -244
  24. package/locales/de.po +0 -246
  25. package/locales/el.po +0 -244
  26. package/locales/es.po +0 -248
  27. package/locales/eu.po +0 -244
  28. package/locales/fr.po +0 -244
  29. package/locales/gl.po +0 -244
  30. package/locales/he.po +0 -244
  31. package/locales/hr.po +0 -245
  32. package/locales/it.po +0 -246
  33. package/locales/ja.po +0 -242
  34. package/locales/jclic.js.pot +0 -241
  35. package/locales/nb_NO.po +0 -244
  36. package/locales/nl.po +0 -244
  37. package/locales/pl.po +0 -244
  38. package/locales/pt.po +0 -244
  39. package/locales/pt_BR.po +0 -248
  40. package/locales/ro.po +0 -248
  41. package/locales/ru.po +0 -245
  42. package/locales/ta.po +0 -244
  43. package/locales/tr.po +0 -246
  44. package/locales/uk.po +0 -247
  45. package/locales/vec.po +0 -244
  46. package/locales/zh_TW.po +0 -246
  47. package/patches/po2json+1.0.0-beta-3.patch +0 -12
  48. package/src/AWT.js +0 -2067
  49. package/src/Activity.js +0 -1311
  50. package/src/Deps.js +0 -232
  51. package/src/GlobalData.js +0 -5
  52. package/src/JClic.js +0 -196
  53. package/src/JClicPlayer.js +0 -1308
  54. package/src/PlayerHistory.js +0 -305
  55. package/src/Utils.js +0 -1355
  56. package/src/activities/associations/ComplexAssociation.js +0 -321
  57. package/src/activities/associations/SimpleAssociation.js +0 -519
  58. package/src/activities/memory/MemoryGame.js +0 -423
  59. package/src/activities/panels/Explore.js +0 -349
  60. package/src/activities/panels/Identify.js +0 -356
  61. package/src/activities/panels/InformationScreen.js +0 -262
  62. package/src/activities/panels/Menu.js +0 -209
  63. package/src/activities/panels/icons/ico00.png +0 -0
  64. package/src/activities/panels/icons/ico01.png +0 -0
  65. package/src/activities/panels/icons/ico02.png +0 -0
  66. package/src/activities/panels/icons/ico03.png +0 -0
  67. package/src/activities/panels/icons/icofolder.png +0 -0
  68. package/src/activities/puzzles/DoublePuzzle.js +0 -424
  69. package/src/activities/puzzles/ExchangePuzzle.js +0 -374
  70. package/src/activities/puzzles/HolePuzzle.js +0 -360
  71. package/src/activities/text/Complete.js +0 -127
  72. package/src/activities/text/Evaluator.js +0 -534
  73. package/src/activities/text/FillInBlanks.js +0 -426
  74. package/src/activities/text/IdentifyText.js +0 -253
  75. package/src/activities/text/OrderText.js +0 -421
  76. package/src/activities/text/TextActivityBase.js +0 -557
  77. package/src/activities/text/TextActivityDocument.js +0 -660
  78. package/src/activities/text/WrittenAnswer.js +0 -557
  79. package/src/activities/textGrid/CrossWord.js +0 -565
  80. package/src/activities/textGrid/WordSearch.js +0 -458
  81. package/src/activities/textGrid/icons/hIcon.svg +0 -3
  82. package/src/activities/textGrid/icons/vIcon.svg +0 -3
  83. package/src/automation/AutoContentProvider.js +0 -182
  84. package/src/automation/arith/Arith.js +0 -864
  85. package/src/bags/ActivitySequence.js +0 -318
  86. package/src/bags/ActivitySequenceElement.js +0 -161
  87. package/src/bags/ActivitySequenceJump.js +0 -140
  88. package/src/bags/ConditionalJumpInfo.js +0 -113
  89. package/src/bags/JumpInfo.js +0 -136
  90. package/src/bags/MediaBag.js +0 -215
  91. package/src/bags/MediaBagElement.js +0 -516
  92. package/src/boxes/AbstractBox.js +0 -699
  93. package/src/boxes/ActiveBagContent.js +0 -494
  94. package/src/boxes/ActiveBox.js +0 -810
  95. package/src/boxes/ActiveBoxBag.js +0 -357
  96. package/src/boxes/ActiveBoxContent.js +0 -484
  97. package/src/boxes/ActiveBoxGrid.js +0 -179
  98. package/src/boxes/BoxBag.js +0 -500
  99. package/src/boxes/BoxBase.js +0 -398
  100. package/src/boxes/BoxConnector.js +0 -325
  101. package/src/boxes/TextGrid.js +0 -887
  102. package/src/boxes/TextGridContent.js +0 -215
  103. package/src/init-jsdom.js +0 -65
  104. package/src/jclic-node.js +0 -219
  105. package/src/media/ActiveMediaBag.js +0 -145
  106. package/src/media/ActiveMediaPlayer.js +0 -297
  107. package/src/media/AudioBuffer.js +0 -219
  108. package/src/media/EventSounds.js +0 -169
  109. package/src/media/EventSoundsElement.js +0 -155
  110. package/src/media/MediaContent.js +0 -328
  111. package/src/media/MidiAudioPlayer.js +0 -254
  112. package/src/media/icons/audio.svg +0 -3
  113. package/src/media/icons/generic.svg +0 -3
  114. package/src/media/icons/mic.svg +0 -3
  115. package/src/media/icons/movie.svg +0 -3
  116. package/src/media/icons/music.svg +0 -3
  117. package/src/media/icons/url.svg +0 -3
  118. package/src/media/sounds/actionError.mp3 +0 -0
  119. package/src/media/sounds/actionOk.mp3 +0 -0
  120. package/src/media/sounds/click.mp3 +0 -0
  121. package/src/media/sounds/finishedError.mp3 +0 -0
  122. package/src/media/sounds/finishedOk.mp3 +0 -0
  123. package/src/media/sounds/start.mp3 +0 -0
  124. package/src/project/JClicProject.js +0 -282
  125. package/src/project/ProjectSettings.js +0 -273
  126. package/src/report/ActionReg.js +0 -123
  127. package/src/report/ActivityReg.js +0 -271
  128. package/src/report/EncryptMin.js +0 -210
  129. package/src/report/Reporter.js +0 -727
  130. package/src/report/SCORM.js +0 -272
  131. package/src/report/SequenceReg.js +0 -275
  132. package/src/report/SessionReg.js +0 -340
  133. package/src/report/SessionStorageReporter.js +0 -131
  134. package/src/report/TCPReporter.js +0 -628
  135. package/src/shapers/ClassicJigSaw.js +0 -138
  136. package/src/shapers/Holes.js +0 -77
  137. package/src/shapers/JigSaw.js +0 -161
  138. package/src/shapers/Rectangular.js +0 -78
  139. package/src/shapers/Shaper.js +0 -386
  140. package/src/shapers/TriangularJigSaw.js +0 -121
  141. package/src/skins/BlueSkin.js +0 -80
  142. package/src/skins/Counter.js +0 -152
  143. package/src/skins/CustomSkin.js +0 -412
  144. package/src/skins/DefaultSkin.js +0 -376
  145. package/src/skins/EmptySkin.js +0 -82
  146. package/src/skins/GreenSkin.js +0 -94
  147. package/src/skins/MiniSkin.js +0 -130
  148. package/src/skins/OrangeSkin.js +0 -78
  149. package/src/skins/SimpleSkin.js +0 -92
  150. package/src/skins/Skin.js +0 -1021
  151. package/src/skins/assets/actionsIcon.svg +0 -3
  152. package/src/skins/assets/appLogo.svg +0 -8
  153. package/src/skins/assets/basic.css +0 -41
  154. package/src/skins/assets/closeDialogIcon.svg +0 -3
  155. package/src/skins/assets/closeIcon.svg +0 -3
  156. package/src/skins/assets/copyIcon.svg +0 -3
  157. package/src/skins/assets/fullScreenExitIcon.svg +0 -3
  158. package/src/skins/assets/fullScreenIcon.svg +0 -3
  159. package/src/skins/assets/infoIcon.svg +0 -3
  160. package/src/skins/assets/main.css +0 -43
  161. package/src/skins/assets/mainHalf.css +0 -23
  162. package/src/skins/assets/mainTwoThirds.css +0 -23
  163. package/src/skins/assets/mini.css +0 -15
  164. package/src/skins/assets/nextIcon.svg +0 -3
  165. package/src/skins/assets/okDialogIcon.svg +0 -3
  166. package/src/skins/assets/prevIcon.svg +0 -3
  167. package/src/skins/assets/reports.css +0 -156
  168. package/src/skins/assets/reportsIcon.svg +0 -3
  169. package/src/skins/assets/scoreIcon.svg +0 -3
  170. package/src/skins/assets/simple.css +0 -16
  171. package/src/skins/assets/simpleHalf.css +0 -11
  172. package/src/skins/assets/simpleTwoThirds.css +0 -11
  173. package/src/skins/assets/timeIcon.svg +0 -4
  174. package/src/skins/assets/waitAnim.css +0 -54
  175. package/src/skins/assets/waitImgBig.svg +0 -3
  176. package/src/skins/assets/waitImgSmall.svg +0 -3
  177. package/webpack.config.mjs +0 -169
package/CHANGELOG.md DELETED
@@ -1,672 +0,0 @@
1
- ### v2.2.1 (2026-02-14)
2
- #### Improvements
3
- - Updated peer dependencies
4
-
5
- #### Bug fixes
6
- - Updated "demo.jclic" file in `test/jclic-demo`
7
- - Use of `structuredClone` to avoid CSS overlapping in document styles
8
-
9
- ### v2.2.0 (2026-01-22)
10
- #### Improvements
11
- - Updated peer dependencies
12
- - jQuery upgraded to version 4. Removed inconsistences and updated calls to deprecated APIs.
13
-
14
- ### v2.1.26 (2025-10-19)
15
- #### Improvements
16
- - Updated peer dependencies
17
- - Updated Brazilian Portuguese translation, thanks to [Khemis](https://github.com/alexrsoares)
18
-
19
- ### v2.1.25 (2025-09-23)
20
- #### Improvements
21
- - Updated peer dependencies
22
- - JSDOM upgraded to v27.0
23
-
24
- ### v2.1.24 (2025-01-19)
25
- #### Improvements
26
- - Updated peer dependencies
27
- - Added Tamil translation, thanks to [TamilNeram](https://hosted.weblate.org/user/TamilNeram/).
28
- - Added Ukranian translation, thanks to [Tymofii Lytvynenko](https://hosted.weblate.org/user/tymkolt/).
29
- - Added Croatian translation, thanks to [Milo Ivir](https://hosted.weblate.org/user/milotype/).
30
- - Added Norwegian Bokmål translation, thamks to [Allan Nordhøy](https://hosted.weblate.org/user/kingu/).
31
- - Updated Asturian translation, thanks to [Enol P.](https://hosted.weblate.org/user/enolp/).
32
- - Updated German translation, thanks to [J. Lavoie](https://hosted.weblate.org/user/Edanas/).
33
- - Updated French translation, thanks to [J. Lavoie](https://hosted.weblate.org/user/Edanas/) and [Nathan](https://hosted.weblate.org/user/NathanBnm/),
34
- - Updated Italian translation, thanks to [J. Lavoie](https://hosted.weblate.org/user/Edanas/).
35
- - Updated Japanese translation, thanks to [naofum](https://hosted.weblate.org/user/naofum/).
36
- - Updated Polish translation, thanks to [WaldiS](https://hosted.weblate.org/user/WaldiS/).
37
- - Updated Turkish translation, thanks to [Deleted](https://hosted.weblate.org/user/deleted-13144/).
38
-
39
- ### v2.1.23 (2024-10-20)
40
- #### Improvements
41
- - Updated peer dependencies
42
- - Add the `dist` folder to the webpack dev server static directory.
43
- #### Bug fixes
44
- - Corrected an NPM warning in `package.json`
45
- - Corrected error parsing undefined `mediaBag` attribute in JSON files.
46
- - Always encode text-based [data URLs](https://developer.mozilla.org/en-US/docs/Web/URI/Schemes/data).
47
-
48
- ### v2.1.22 (2024-10-16)
49
- #### Bug fixes
50
- - Removed unnecessary files from `/build`, affecting the NPM package.
51
-
52
- ### v2.1.21 (2024-10-15)
53
- #### Improvements
54
- - Updated peer dependencies
55
- #### Bug fixes
56
- - NODE: Use `globalThis` instead of `global` (legacy in NodeJS 22) if available.
57
- - NODE: Avoid overwrite `global.navigator` and other new global objects in NodeJS 22.
58
-
59
- ### v2.1.20 (2024-09-24)
60
- #### Bug fixes
61
- - Updated peer dependencies
62
- - Moved `xmldom` and `jsdom` to *Dependencies* in `package.json` (they are no longer *devDependencies*)
63
-
64
- ### v2.1.19 (2024-09-14)
65
- #### Improvements
66
- - Updated ESLint to v9. Config file is now: `eslint.config.mjs`.
67
- - Use specific file extensions to differentiate CommonJS (.cjs) and ECMAScript (.mjs) module formats.
68
- - Converted `webpack.config` and `build-locales` to ECMAScript module format.
69
- - Always use file extensions when importing sibling modules.
70
- - Exported all JClic classes in the NPM package
71
-
72
- ### v2.1.18 (2024-09-13)
73
- #### Improvements
74
- - Simplified the initialization and loading of jclic.js as an NPM package.
75
- - Allowed jclic.js to be loaded as an ES6 module from NodeJS.
76
- - Updated tests for NodeJS.
77
- - Updated peer dependencies.
78
-
79
- ### v2.1.17 (2024-09-12)
80
- #### Improvements
81
- - Removed dependency of 'clipboard-polyfill'. The clipboard API is now supported in all browsers.
82
- - Reincorporation of `webpack-node-externals`, which is used when building the nodeJS package.
83
- - Updated peer dependencies.
84
-
85
- ### v2.1.16 (2023-12-12)
86
- #### Improvements
87
- - Updated peer dependencies.
88
- #### Bug fixes
89
- - Uninstall `webpack-node-externals` due to an incompatibility with `clipboard-polyfill` version 4.
90
- - Avoid font checking when running on NodeJS due to an error of [JSDOM](https://github.com/jsdom/jsdom) with [jQuery](https://jquery.com/) XML node trees.
91
-
92
- ### v2.1.15 (2023-09-26)
93
- #### Improvements
94
- - Updated peer dependencies.
95
-
96
- ### v2.1.14 (2023-09-16)
97
- #### Improvements
98
- - Updated peer dependencies.
99
- #### Bug fixes
100
- - Replace calls to `substr` (deprecated) by `substring`.
101
-
102
- ### v2.1.13 (2023-07-11)
103
- #### Improvements
104
- - Updated peer dependencies.
105
- - Use [clean-jsdoc-theme](https://ankdev.me/clean-jsdoc-theme/v4/index.html) instead of the outdated [ink-docstrap](https://www.npmjs.com/package/ink-docstrap) theme to generate the [technical documentation](http://projectestac.github.io/jclic.js/doc/index.html) with [JSDoc](https://jsdoc.app/).
106
-
107
- ### v2.1.12 (2022-11-26)
108
- #### Improvements
109
- - Updated peer dependencies.
110
- - Remove unnecessary dependencies: `scriptjs`.
111
- - Improve graphics performance setting [willReadFrequently](https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/getContext#willreadfrequently) to `true` when acquiring [CanvasRenderingContext2D](https://html.spec.whatwg.org/multipage/canvas.html#canvasrenderingcontext2d) in activities using [BoxConnector](https://github.com/projectestac/jclic.js/blob/master/src/boxes/BoxConnector.js).
112
-
113
- ### v2.1.11 (2022-08-04)
114
- #### Improvements
115
- - Updated peer dependencies.
116
- - Detect swipe gestures on touch devices to go back or forward in the sequence of activities.
117
- - Toggle full screen with "double touch" gesture.
118
-
119
- ### v2.1.10 (2022-03-15)
120
- #### Bug fixes
121
- - Clear `pos0` attribute in `ActiveBox` after bag resize or move.
122
-
123
- ### v2.1.9 (2022-02-26)
124
- #### Improvements
125
- - Updated peer dependencies.
126
- #### Bug fixes
127
- - Calling `patch-package` in `postinst` does not work with the NPM package. Moved to `prebuild`.
128
-
129
- ### v2.1.8 (2022-01-07)
130
- #### Improvements
131
- - Updated peer dependencies.
132
- - Allow "inverse resolution" in word search activities: clues are initially shown, and gradually hidden when the user identifies them.
133
-
134
- #### Bug fixes
135
- - Use of [patch-package](https://www.npmjs.com/package/patch-package) to avoid compilation warnings.
136
-
137
- ### v2.1.7 (2022-01-24)
138
- #### Improvements
139
- - Updated peer dependencies.
140
- - Use [ink-docstrap-template](https://www.npmjs.com/package/ink-docstrap-template) instead [ink-docstrap](https://www.npmjs.com/package/ink-docstrap) to deal with updated components, thus avoiding security warnings.
141
- - Direct use of [jsdom](https://www.npmjs.com/package/jsdom) instead of [mock-browser](https://www.npmjs.com/package/mock-browser) (outdated) in `test/nodejs`, to avoid security warnings.
142
-
143
- #### Bug fixes
144
- - `IdentifyText` activities were not fully implemented: only targets could be selected. You can now select any word (or letter in `identifyChars` mode), although not part of a target. To be successful with the activity, only the targets must be selected.
145
-
146
- ### v2.1.5 (2021-11-07)
147
- #### Improvements
148
- - Updated peer dependencies.
149
-
150
- #### Bug fixes
151
- - Avoid bad URLs in local files when running on NodeJS with JSDOM.
152
-
153
- ### v2.1.3 (2021-07-28)
154
- #### Improvements
155
- - Recycle HTML audio elements instead of building one for each audio file at startup. This has been motivated by a breaking change
156
- introduced in Chrome 92+, limiting the maximum number of media player elements per document.
157
- (see: https://bugs.chromium.org/p/chromium/issues/detail?id=1144736).
158
- This improvement will reduce the startup time of JClic projects and the size of media bytes to be downloaded, but can have a side effect,
159
- introducing latency when playing audio because is now always fetched "on demand" (no more preloading).
160
-
161
- ### v2.1.2 (2021-06-10)
162
- #### Improvements
163
- - Added Romanian translation, thanks to Studio Davis Tutoriale Programe.
164
- - Updated peer dependencies.
165
- - Use real files instead of inline JS constants for CSS, SVG, PNG and MP3 assets. These files are finally codified and inlined by WebPack at compile time.
166
-
167
- ### v2.1.1 (2021-04-12)
168
- #### Bug fixes
169
- - Fixed an issue with i18n, which did not correctly apply the required language selection.
170
-
171
- #### Improvements
172
- - i18n has been written from scratch, simplifying its operation and supporting different "locale" encodings.
173
-
174
- ### v2.1.0 (2021-04-10)
175
- #### Breaking changes
176
- - JClic projects can be now encapsulated in JSON format (files with extension `.jclic.json`). Current files in XML format (`.jclic`) will be still supported, but JSON will be the default format from now. Both formats can also be packaged in ZIP files (files of type `.jclic.zip` and `.scorm.zip`). This will simplify the development of the upcoming new project _JClic Author HTML5_.
177
- - JClic.js uses now [JavaScript modules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) instead of [AMD modules](https://github.com/amdjs/amdjs-api/wiki/AMD) and [RequireJS](https://requirejs.org/). All members of complex modules like [AWT](https://github.com/projectestac/jclic.js/blob/master/src/AWT.js) and [Utils](https://github.com/projectestac/jclic.js/blob/master/src/Utils.js) can now be imported directly.
178
- - Static factory methods in classes with multiple descendants.
179
- - New methods `getAttributes` and `setAttributes` in core classes, used to serialize and de-serialize projects data.
180
- - Drop Bower support.
181
- - Open source license updated to [European Union Public License 1.2](https://spdx.org/licenses/EUPL-1.2.html).
182
-
183
- #### Bug fixes
184
- - Check for numeric digits in _Arith_ activity answers before converting them to numbers.
185
- - Page reloads when entering text to the first question on _Written Answer_ activities (jQuery related)- Use 'idempotent-babel-polyfill' instead of 'babel-polyfill' as a workaround to [this issue](https://github.com/babel/babel-loader/issues/401), causing problems in JClic module for Moodle.
186
- - Use the `box-sizing` CSS attribute to compute the real with of the counters area in `DefaultSkin`.
187
- - Audio recorder features now enabled for all modern browsers using [MediaDevices.getUserMedia](https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia) instead of the deprecated method [navigator.getUserMedia](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/getUserMedia).
188
- - Find [AudioContext](https://developer.mozilla.org/en-US/docs/Web/API/AudioContext) with vendor prefix in MIDI audio player (needed for Safari)
189
- - Unset `box-shadow` and `text-shadow` attributes in custom buttons.
190
- - Accessible components for `canvas` regions should always be created since [`HitRegions`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/addHitRegion) have been deprecated. Also, [`CanvasRenderingContext2D.drawFocusIfNeeded`](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/drawFocusIfNeeded) should be called on each call to `updateContent` on `ActiveBox` objects, not just at creation time.
191
- - Parse new JClic project multiple descriptions in XML files.
192
- - `AWT.Font.cssFont` should use `px` as `font-size` unit for consistency with JClic.
193
- - Use underscore instead of blank space as filling character in `TextActivityDocument.TextTarget`.
194
- - Correct the vertical position of centered text in boxes and grid cells.
195
- - Workaround for a bug on Chrome and Firefox XML parsers, throwing errors whith hexadecimal character entities.
196
-
197
- #### Improvements
198
- - Updated core components to their latest versions.
199
- - Use of `package-lock` instead of `npm-shinkwrap` to lock version dependencies.
200
- - Restored semicolons in all source files.
201
- - Deliverable files are now minimized with [Terser](https://github.com/terser/terser) intead of [Uglifyjs](https://github.com/mishoo/UglifyJS2).
202
- - Full screen mode now using direct calls to the [Full Screen API](https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API) instead of [screenfull](https://www.npmjs.com/package/screenfull).
203
- - Updated peer dependencies.
204
- - Max audio recording time increased to 180".
205
- - Provide visual feedback while recording audio.
206
- - Map JDK logical fonts ("Dialog", "Serif", etc.) to [HTML5 generic font family names](https://developer.mozilla.org/en-US/docs/Web/CSS/font-family).
207
- - Improved experience with screen readers like [ChromeVox](https://www.chromevox.com/) and [Chromevox Classic](https://chrome.google.com/webstore/detail/chromevox-classic-extensi/kgejglhpjiefppelpmljglcjbhoiplfn).
208
- - Updated JSDoc comments. Published full [API Docs](http://projectestac.github.io/jclic.js/doc/index.html) with working links.
209
- - Updated test suites.
210
- - Implemented Clic 3.0 behavior on `panels/Explore` activities without buttons and automatic step forward.
211
- - Added a hidden message box to `skins/EmptySkin`, thus allowing activities to play audio at start.
212
- - Avoid browser's spell checking on written answer activities.
213
- - Use the [History API](https://developer.mozilla.org/en-US/docs/Web/API/History) to record the list of played JClic activities, thus allowing to navigate between them with the browser's `back` and `forward` buttons.
214
- - Interpret negative values as percentages when setting CSS sizes, useful for the [JClic module for Moodle](https://moodle.org/plugins/mod_jclic).
215
-
216
- ### v1.1.11 (2019-02-11)
217
- #### Bug fixes
218
- - Corrected a bug in `automation/arith/Arith.js` that affected operations with decimals with _do not carry_ option.
219
-
220
- #### Improvements
221
- - Numeric expressions generated by "Arith" (the mental arithmetics moduleof JClic) use now dot or comma as a decimal separator, depending on the browser's "locale" settings.
222
- - The new `numericContent` activity flag is used by _Arith_ activities to check written answers. So expressions like "0.1", "0.10" and "00,100" (with dot or comma) are considered equivalent.
223
-
224
- ### v1.1.10 (2019-01-23)
225
- #### Bug fixes
226
- - Explicit call to `HTMLAudioElement.load` in `bags/MediaBagElement.build` to avoid the lack of `canplay` events
227
- when just setting the `src` attribute in Chrome on Android < 7. Now JClic always try to load audio content, also in Android!
228
-
229
- ### v1.1.9 (2018-10-15)
230
- #### Improvements
231
- - Basic support for MIDI files: Only one musical instrument (acoustic grand piano) is dynamically loaded
232
- and used for all tracks, in a single MIDI channel schema. No percussion sounds on channel 10. This feature must be
233
- improved on the future, but currently covers the basic necessities of most musical activities.
234
-
235
- ### v1.1.8 (2018-09-12)
236
- #### Improvements
237
- - JClic.js is now also available also in Polish, thanks to Waldemar Stoczkowski!
238
- - Build scripts updated to work with [Babel 7](https://babeljs.io)
239
-
240
- ### v1.1.7 (2018-06-20)
241
- #### Bug fixes
242
- - Allow projects to have multiple custom skins defined in XML files.
243
-
244
- ### v1.1.5 (2018-05-17)
245
- #### Improvements
246
- - Use of [Webpack 4](https://webpack.js.org/) to polyfill, transpile and build the main distributable file `jclic.min.js`.
247
-
248
- #### Bug fixes
249
- - Avoid playing disabled event sounds.
250
- - Declare the `document` member in `Activity.prototype`.
251
- - Use of `Element.getAttribute` instead of `style.attributes.*`.
252
-
253
- ### v1.1.4 (2018-02-27)
254
- #### Improvements
255
- - Full implementation of JClic "legacy custom skins" (see v1.1.3) including counters and progress animations. This feature makes use of CSS [animation](https://caniuse.com/#feat=css-animation) and [grid layout](https://caniuse.com/#feat=css-grid), so please update your web browser!
256
-
257
- ### v1.1.3 (2018-02-20)
258
- #### Improvements
259
- - Improved responsiveness: Now skin elements are reduced to 2/3 or 1/2 of its original size when running on mobile devices with small screens.
260
- - Basic functionality of JClic "legacy custom skins" (based on XML files) are now supported in browsers compatible with [CSS Grid Layout](https://caniuse.com/#feat=css-grid). This feature is currently used in many great JClic projects created by [Imma Palahí](https://clic.xtec.cat/repo/index.html?lang=ca&author=Imma%20Palahi).
261
-
262
- #### Bug fixes
263
- - Solved a bug in Menu.js.
264
- - Check for null values on AUDIO_BUFFERS and mbe.data.
265
-
266
- ### v1.1.0 (2018-02-08)
267
- #### Improvements
268
- - All the code has been updated to [ECMAScript6](http://es6-features.org) (ES6), taking advantage of new JavaScript features (classes, constants, arrow functions, array methods...) in modern browsers. The main file `jclic.min.js` will maintain compability with older browsers for some time, since it is transpiled to ES5 thanks to [Babel](https://babeljs.io/) and [Webpack](https://webpack.js.org).
269
- - Updated test files.
270
- - All media is now played at the end of the current event handling, so it's not blocked by mobile browsers (see [this thread](https://bugs.chromium.org/p/chromium/issues/detail?id=178297) for more information about this issue).
271
- - New JSDoc-Bootstrap theme for the [API Docs](http://projectestac.github.io/jclic.js/doc/index.html).
272
-
273
- #### Bug fixes
274
- - Catch `Enter` key in written answer activities.
275
- - Disable drop-down lists at the end of text activities.
276
-
277
- ### v1.0.5 (2018-02-05)
278
- #### Bug fixes
279
- - WrittenAnswer activities: always update the alternative content off cells when done.
280
-
281
- ### v1.0.4 (2018-01-22)
282
- #### Improvements
283
- - Text activities can now display pop-up windows and play helper sounds of targets, as in JClic Player.
284
-
285
- #### Bug fixes
286
- - Avoid false positives with empty responses in text activities.
287
-
288
- ### v1.0.3 (2018-01-15)
289
- #### Bug fixes
290
- - Check always the ordering of cascading styles text activities.
291
- - Always detect carriage returns in activities of type "fill-in blanks".
292
-
293
- ### v1.0.2 (2017-12-12)
294
- #### Bug fixes
295
- - Corrected a bug detected in cell placement inside ActiveBoxBag, affecting some exchange puzzles with gigsaw and other special shapers.
296
-
297
- ### v1.0.1 (2017-11-10)
298
- #### Improvements
299
- - New startup parameter `returnAsExit` treats `ActivitySequence` elements of type `return` as if they where of type `exit`, only when `PlayerHistory.sequenceStack` is empty.
300
-
301
- ### v1.0.0 (2017-10-18)
302
- #### Improvements
303
- - Major version number updated to 1.x to be compliant with [semver](http://semver.org/). With this change, the project goes from _Initial development_ (0.x) to _Public API_ (1.x).
304
- - New class `report/SessionStorageReporter`, storing report results in [`sessionStorage`](https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage) or [`localStorage`](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage).
305
- - jclic.js is also available at [CDNJS](https://cdnjs.com/libraries/jclic.js), thanks to [Peter Dave Hello](https://github.com/PeterDaveHello) and [LboAnn](https://github.com/extend1994).
306
-
307
- ### v0.1.49 (2017-09-01)
308
- #### Improvements
309
- - New NPM scripts to build, debug and launch jclic.js, now based on [webpack](https://webpack.js.org/) instead of [Grunt](https://gruntjs.com/) and [Browserify](http://browserify.org/). See README.md for more information.
310
-
311
- ### v0.1.48 (2017-07-21)
312
- #### Improvements
313
- - Implemented the type of activity "Menu", used in legacy JClic libraries. Useful for JClic libraries hosted on school servers: now they can be served as HTML resources just placing an `index.html` in the root folder pointing to the `library.jclic` file, like in [this example](https://clic.xtec.cat/pub/2005/index.html).
314
-
315
- ### v0.1.47 (2017-05-16)
316
- #### Improvements
317
- - Updated French translation, thanks to [Heluga Valka](https://www.transifex.com/user/profile/Heluga/).
318
-
319
- #### Bug fixes
320
- - Control of the maximum display time of previous screen in text activities. This JClic feature was unimplemented until now. Probably closes #12.
321
- - Backslashes in active media parameters and file names are now always converted to forward slashes. This avoids problems with chaining in big projects distributed among multiple folders.
322
- - Set default value of `navButtonsAlways` to `false`. Closes #11.
323
- - Avoid creating `AccessibleElement` when canvas has no surface.
324
- - Double-check the existence of `ActiveBoxBag` elements before using them.
325
- - Use index -1 in `jQuery.get` to avoid added `div style-scope` elements in Shadow DOM.
326
- - Put stylesheets within shadow-root when in shadow DOM.
327
-
328
- ### v0.1.46 (2017-04-24)
329
- #### Improvements
330
- - Use HTTPS as defaul protocol in `TCPReporter`.
331
- - Set an empty string as default value in dropdown lists on text activities.
332
-
333
- #### Bug fixes
334
- - Flush always pending tasks in `TCPReporter` before exiting.
335
-
336
- ### v0.1.45 (2017-03-20)
337
- #### Improvements
338
- - Display a progress bar (in addition to the rotating animation) while loading project media elements.
339
-
340
- #### Bug fixes
341
- - Transform full activity class names to `@className` expressions, so projects using this naming schema (like [GeoClic](https://clic.xtec.cat/repo/index.html?prj=geoclien)) can now make use of JClic.js.
342
-
343
- ### v0.1.44 (2017-03-15)
344
- #### Improvements
345
- - `EmptySkin` has been implemented and is now used as initial player skin.
346
- - JClic java applets generated through `jclicplugin.js` are now always loaded as JClic.js HTML5 elements. This change has been motivated by the fact that [Firefox 52](https://www.mozilla.org/en-US/firefox/52.0/releasenotes/) has dropped support for Java applets.
347
- - Updated NPM components.
348
-
349
- #### Bug fixes
350
- - Check `AWT.WebFont` to avoid conflicts with other webfont loader packages already loaded.
351
- - Build always a skin for `JClicPlayer`, even when the requested one does no exist.
352
- - Force main container width and height when inside a `TD`.
353
- - Avoid incorrect placement of inner elements when parent container has the `align` attribute defined.
354
-
355
- ### v0.1.43 (2017-02-28)
356
- #### Bug fixes
357
- - Allow animated GIFs also over gradients.
358
- - Solved incorrect startup of "complete text" activities with previous screen.
359
- - Place "check" button always anchored at bottom of text activities.
360
- - Properly initialize `Evaluator` with `Intl.Collator` in text activities.
361
- - Solved problems when rounding and ceiling integers in Arith.
362
- - Avoid calling `buildAccessibleElements` on null panels.
363
-
364
- ### v0.1.42 (2017-02-20)
365
- #### Miscellaneous
366
- - Export third-party NPM packages in a new member of `Utils` called `pkg`, so external scripts can make use of it through the global vriable `JClicObject`. This change was needed to implement downloading of JClic projects in [JClic Repo](https://github.com/projectestac/jclic-repo).
367
-
368
- ### v0.1.41 (2017-02-13)
369
- #### Improvements
370
- - Use of [es6-promise](https://github.com/stefanpenner/es6-promise) polyfill to support `Promise` in IE11 and other outdated browsers.
371
- - Explicit loading of fonts included in JClic projects. The `name` attribute of media elements is now used as `font-family` value.
372
-
373
- #### Bug fixes
374
- - Resolve dependencies and browserless issues affecting `listProjectContents.js` (in `test/nodejs`).
375
-
376
- #### Miscellaneous
377
- - Specific developer's settings for [VS-Code](https://code.visualstudio.com/), besides [NetBeans IDE](https://netbeans.org/).
378
- - Use of [ESLint](http://eslint.org/) instead of [JSHint](http://jshint.com/). Same functionality, but better integration with [VS-Code](https://code.visualstudio.com/).
379
-
380
- ### v0.1.40 (2016-11-23)
381
- #### Bug fixes
382
- - Don't stop media on mouseup events.
383
- - Play sounds also in grid B, when available.
384
-
385
- ### v0.1.39 (2016-11-11)
386
- #### Improvements
387
- - Animated GIF support extended to more activities: now panels with static (not scrambled) cells, using any type of shaper, can have an animated GIF as a main content. This applies to information screen, identify, associations, written answer and word search activities.
388
-
389
- ### v0.1.38 (2016-11-02)
390
- #### Bug fixes
391
- - Treat 'x' as zero when parsing data for Arith operators, thus avoiding "NaN" errors in some activities.
392
- - Avoid keyboard hiding on tablets when in written answer activities.
393
- - Ignore mouse events on accessible components.
394
-
395
- ### Improvements
396
- - Added Japanese to the list of supported languages (thanks to Naofumi!).
397
- - Improved log system.
398
-
399
- ### v0.1.37 (2016-10-05)
400
- #### Bug fixes
401
- - Fixed incorrect calculation of score in __Identify__ activities.
402
-
403
- #### Improvements
404
- - Improved accessibility based on [WAI-ARIA](https://en.wikipedia.org/wiki/WAI-ARIA) specifications (still in progress).
405
- - Experimental use of [HTML canvas hit regions](https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Tutorial/Hit_regions_and_accessibility). In order to use it, flags `ExperimentalCanvasFeatures` (Chrome) or `canvas.hitregions.enabled` (Firefox) must be enabled. Checked with [ChromeVox](http://www.chromevox.com/).
406
-
407
- #### Code cleaning and documentation
408
- - Miscellaneous optimizations: conditional operators, jQuery expressions, allow reuse of JClicPlayer objects, etc. See git log for details.
409
-
410
- ### v0.1.36 (2016-09-19)
411
- #### Bug fixes
412
- - "Full screen" mode should work now as expected (when available).
413
- - Avoid resizing of BoxBase prototype font attribute.
414
-
415
- #### Improvements
416
- - Project license changed to EUPL-1.1 (compatible with GPL-2.0).
417
-
418
- ### v0.1.35 (2016-09-05)
419
- #### Bug fixes
420
- - Avoid "same-origin" policy exception when initializing SCORM from an embedded iFrame.
421
-
422
- #### Improvements
423
- - JClic.js can now directly open `project.json` files generated by [JClic Author](https://github.com/projectestac/jclic/releases).
424
-
425
- ### v0.1.34 (2016-09-02)
426
- #### Bug fixes
427
- - Merge styles with its base style (when defined) in `TextActivityDocument`.
428
- - Allow HTML text in `ActiveBox` cells.
429
- - Workaround for an [Edge/Explorer SVG bug](https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/8479637/) in 'close' button.
430
- - Add `-webkit-flex-xxx` CSS properties for Safari 8 compatibility.
431
-
432
- #### Improvements
433
- - Now JClic.js opens the new `.scorm.zip` files generated by [JClic Author 0.3.2.0](https://github.com/projectestac/jclic/releases).
434
- - More strict settings when checking code with [JSHint](http://jshint.com/).
435
-
436
- ### v0.1.31 (2016-07-20)
437
- #### Bug fixes
438
- - Apply `JClicPlayer.defaultSkin` only when `JClicProject.skin` is not specified.
439
-
440
- #### Improvements
441
- - Implemented support for SCORM 1.2 and SCORM 2004. Now JClic reports global score and session time when a SCORM API is detected.
442
- - New method to calculate scores for SCORM: now _"partial score"_ refers to the score average of all played activities and _"global score"_ multiplies it by the ratio between the number of activities played at least once and the total number of activities in the project. For example, when playing a project with 20 activities, a student that has successfully finished only one activity will have a _partial score_ of 100%, but its _global score_ will be only 5%. When all activities are played at least once, global and partial scores have the same value.
443
- - New logging system. Verbosity on the JavaScript console can now be adjusted with a 'logLevel' parameter that can have one of the values: _all_, _trace_, _debug_, _info_, _warn_, _error_ and _none_. Default is: _warn_.
444
-
445
- ### v0.1.30 (2016-07-11)
446
- #### Improvements
447
- - Skin and player windows fully styled with CSS.
448
- - Updated skin names. Expressions like '@___.xml' are no longer needed (but still supported).
449
- - Added a `reset` method to `JClicPlayer`.
450
-
451
- #### Bug fixes
452
- - Set color and size for _close_ icon.
453
-
454
- ### v0.1.29 (2016-07-05)
455
- #### Improvements
456
- - Waiting image changed from SVG animation (deprecated) to CSS keyframes.
457
- - Skin support implemented with (almost) pure CSS.
458
- - Implemented support for stock skins (_standard_, _orange_, _blue_, _green_, _simple_ and _mini_).
459
- - Created `loadProject` function in the global `JClicObject`, thus allowing the creation of JClic players from other scripts.
460
- - Allow JClic.js to be used as a [Node.js](https://nodejs.org) module.
461
- - Added example of Node.js usage in `test/nodejs`.
462
-
463
- ### v0.1.28 (2016-06-22)
464
- #### Improvements
465
- - New class `TCPReporter` allows now to connect with external services like [JClic Reports](http://clic.xtec.cat/en/jclic/reports/index.htm) and [JClic module for Moodle](https://moodle.org/plugins/view.php?id=305).
466
- - i18n: New messages waiting for translation in [Transifex](https://www.transifex.com/francesc/jclicjs/). Contributions welcome!
467
- - Upgrade to jQuery 3.0.
468
- - Improved user interface in reports.
469
- - Implemented `Skin.showDlg`.
470
-
471
- #### Bug fixes
472
- - Use a `try` clause for `canvas.drawImage` to catch exceptions caused by `HTMLImageElement` objects in broken state.
473
-
474
- #### Code cleaning and documentation
475
- - Updated documentation and code comments.
476
- - Unified `this` syntax in closures.
477
- - Added a [Gitter](https://gitter.im) badge to README.md.
478
-
479
- ### v0.1.27 (2016-06-03)
480
- #### Bug fixes
481
- - Set always base attributes when setting target style in text activities.
482
-
483
- #### Improvements
484
- - i18n: Opened new project in [Transifex](https://www.transifex.com/francesc/jclicjs/messages/) to help translating messages to any language and locale. Initially filled with partial translations to `ar`, `ast`, `bs`, `ca`, `ca@valencia`, `cs`, `da`, `de`, `el`, `en`, `es`, `eu`, `fr`, `gl`, `he`, `it`, `nl`, `pt`, `pt_BR`, `ru`, `tr`, `vec` and `zh_TW` found on the main [JClic translation project](https://translations.launchpad.net/jclic).
485
-
486
- ### v0.1.25 (2016-05-30)
487
- #### Improvements
488
- - Multi-language support using gettext (.po and .pot) files stored in `/locales`.
489
-
490
- ### v0.1.24 (2016-05-25)
491
- #### Improvements
492
- - Improved UI in reports.
493
- - Added _copy to clipboard_ and improved UI in reports.
494
- - Optimized JQuery object builders.
495
- - New counters (time, actions, score) and reports system.
496
-
497
- ### v0.1.23 (2016-04-29)
498
- #### Improvements
499
- - Use of [Google WebFonts](https://fonts.google.com/), with parameterizable font substitution list.
500
- - Automatic detection of animated GIFs.
501
- - Upgrade to [JSZip](https://stuk.github.io/jszip/) 3.0.
502
-
503
- #### Code cleaning and documentation
504
- - Suppressed 'test/lib' folder.
505
- - Added some badges to `README.md`.
506
-
507
- ### v0.1.21 (2016-04-25)
508
- #### Improvements
509
- - Display animated GIFs out of canvas elements. Some complex paths will not be clipped, but native browser image animation is now used.
510
-
511
- #### Bug fixes
512
- - Adjust borders in `ActiveBox` hosted components.
513
- - Partially reverted commit [ba5330da](https://github.com/projectestac/jclic.js/commit/ba5330da229625fdb5bc077bf4559873d4e55c76) that caused malfunctions in text activities.
514
- - Hide `hostedComponent` when inactive.
515
-
516
- #### Code cleaning and documentation
517
- - Script for exporting README.md to an HTML snippet, useful to update index.html in https://projectestac.github.io/jclic.js.
518
- - New CDN: JClic.js is now also available from [JSDelivr](http://www.jsdelivr.com/projects/jclic.js).
519
- - Ignore `src` in Bower package. Now with just `dist` files.
520
- - Updated _readme_ and docs.
521
-
522
- ### v0.1.20 (2016-03-07)
523
- #### Improvements
524
- - Audio recording is now possible in JClic.js (browser permissions should be accepted on request).
525
- - Converted `wav` files to `mp3` in test activities.
526
- - Optimized [hit test](https://en.wikipedia.org/wiki/Hit-testing) on Bezier curves, ellipses and complex paths.
527
- - ~~Link event handlers to cells in text activities~~ (reverted by [180c684](https://github.com/projectestac/jclic.js/commit/180c68415518ba2f5809985cccd7bea041bb43c8)).
528
-
529
- #### Bug fixes
530
- - Solved bug in `MediaContent.isEquivalent`.
531
-
532
- ### v0.1.19 (2016-02-25)
533
- #### Improvements
534
- - Implemented `ActivitySequence.checkCurrentActivity`.
535
-
536
- #### Code cleaning and documentation
537
- - Updated `npm` dependencies.
538
-
539
- #### Bug fixes
540
- - Solved error in `ActiveMediaPlayer.linkTo`.
541
-
542
- ### v0.1.18 (2016-02-11)
543
- #### Improvements
544
- - Play video and Flash objects.
545
- - Optimized loading of audio.
546
- - Add `onClick` event to `msgBox` and process media content in the same thread where user gesture event is generated.
547
-
548
- #### Bug fixes
549
- - Solved problems with `readyState` in media elements.
550
-
551
- ### v0.1.15 (2016-01-28)
552
- #### Improvements
553
- - "Check" button in text activities.
554
- - `prevScreen` in text activities.
555
-
556
- #### Bug fixes
557
- - Media content of type "URL" not working (fixes [Issue #1](https://github.com/projectestac/jclic.js/issues/1)).
558
- - Corrected error in `EventSounds` inheritance.
559
-
560
- ### v0.1.12 (2016-01-21)
561
- #### Improvements
562
- - Use of event sounds.
563
- - Updated base versions of `npm` packages.
564
- - "Identify text" activities.
565
- - "Complete text" activities.
566
- - Draw connection lines in "order text" activities.
567
- - Compute relative paths in `PlayerHistory`.
568
- - Update `JClicPlayer` to support "file:" protocol.
569
-
570
- #### Bug fixes
571
- - Correct the calculation of `nShapes` in "Holes" shaper.
572
- - Graphics workaround when working with local files.
573
-
574
- ### v0.1.11 (2015-12-03)
575
- #### Improvements
576
- - "order text" activities.
577
- - Adjust automatic forwarding of activities.
578
-
579
- #### Bug fixes
580
- - Avoid calls to nonexistent functions.
581
-
582
- #### Code cleaning and documentation
583
- - Updated API docs.
584
- - Normalize backslashes and avoid empty bags.
585
-
586
- ### v0.1.7 (2015-10-25) and previous
587
- #### Improvements
588
- - Add 'close' button.
589
- - Implemented `Skin.fit`.
590
- - JClic exports now the global variable `JClicObject`.
591
- - Use of `text()` instead of `html()` in text activities.
592
- - Multiple JClic objects in same document.
593
- - Prevent browser spell-check in text activities.
594
- - Tabulators in text activities.
595
- - Allow passing project and options through global variables.
596
- - Support sequences with multiple chained ZIP files.
597
- - Chained calls to `PlayerHistory` push & pop.
598
- - Load `jclic.zip` files using [JSZip](https://stuk.github.io/jszip/).
599
- - `activityReady` method.
600
- - "Fill-in blanks" text activities.
601
- - Implemented `BasicEvaluator` and `ComplexEvaluator`.
602
- - Moved `TextTarget` to `TextActivityDocument.js`.
603
- - Implemented `TextTarget`.
604
- - "Cross word" activities.
605
- - Blink cursor and optimized shape clipping.
606
- - Action status listeners.
607
- - "Word search" activities.
608
- - New runtime parameters: `autoFit`, `width` & `height`.
609
- - Updated media icons.
610
- - Activity panel fade-in.
611
- - Full screen is now supported.
612
- - "TextGrid" activities.
613
- - Improved responsive design and passing of options.
614
- - Seekable sounds.
615
- - Improved waiting animation and activity borders.
616
- - Form submit in "Written answer" activity.
617
- - Support of touch devices.
618
- - Added support to relative paths when loading projects.
619
- - Added new test suite.
620
- - "Written answer" activities.
621
- - "Memory" activities.
622
- - "Explore" activity.
623
- - "Identify" activities.
624
- - "Complex Association" activities.
625
- - Improved `BoxConnector`.
626
- - "Simple Association".
627
- - Implemented `AWT.Ellipse`.
628
- - "Hole" puzzle activity.
629
- - Adjust "Holes" shaper.
630
- - "Exchange" puzzle.
631
- - Created "Arith" (automatic content provider).
632
- - Implemented `BoxConnector`.
633
- - Cell scrambling.
634
- - Clipping of multiple images into a single canvas.
635
- - "JigSaw" shapers.
636
- - "Double" Puzzle.
637
- - "Information Screen" activity.
638
- - Implemented `ActiveBoxGrid`.
639
- - Build `MediaContent`.
640
- - Implemented `TextActivityBase`.
641
- - Check CORS and HttpXMLRequest calls.
642
- - Created `JClicPlayer`.
643
- - Created `DefaultSkin`.
644
-
645
- #### Bug fixes
646
- - Solved invalid assignment of `nCols` and `nRows` in "Holes" shaper.
647
- - Corrections in `PlayerHistory`.
648
- - Force `hasRemainer` in `shapers.Holes` with `bgImg`.
649
- - Avoid overlap of message boxes with transparent background.
650
- - Avoid breaking lines in targets when CSS 'white-space' is set to 'pre-wrap' (only in Chrome).
651
- - Check origin 'pos' and 'dim' in ctx.drawImage (Firefox crashes when out-of-range).
652
- - Check for availability of `fullscreen.enabled` prior to use it.
653
- - Solved problem with double events stopping media.
654
- - Solved problem with bad content type in $get.
655
- - Solved erroneous calculation of remainder shape.
656
- - Solved problem with `id` on empty cells.
657
- - Solved problems with parsing of shape data.
658
- - Swap the loading of rows and columns in `ActiveBagContent` due to an old JClic bug.
659
- - Solved problem with color gradients.
660
- - Activity start procedure revised.
661
-
662
- #### Code cleaning and documentation
663
- - Updated class skeleton.
664
- - Generate just one source map with Browserify.
665
- - Optimized build process.
666
- - Updated 'license' tag in package.json ('licenses' was deprecated).
667
- - Updated npm module.
668
- - Updated documentation and comments.
669
- - Convert code comments to JSDoc format.
670
- - Move static methods from prototype to constructor.
671
- - Create scripts to convert svg and png files to inline data (in '/misc/scripts`).
672
-