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
@@ -1,398 +0,0 @@
1
- /**
2
- * File : boxes/BoxBase.js
3
- * Created : 12/04/2015
4
- * By : Francesc Busquets <francesc@gmail.com>
5
- *
6
- * JClic.js
7
- * An HTML5 player of JClic activities
8
- * https://projectestac.github.io/jclic.js
9
- *
10
- * @source https://github.com/projectestac/jclic.js
11
- *
12
- * @license EUPL-1.2
13
- * @licstart
14
- * (c) 2000-2020 Catalan Educational Telematic Network (XTEC)
15
- *
16
- * Licensed under the EUPL, Version 1.1 or -as soon they will be approved by
17
- * the European Commission- subsequent versions of the EUPL (the "Licence");
18
- * You may not use this work except in compliance with the Licence.
19
- *
20
- * You may obtain a copy of the Licence at:
21
- * https://joinup.ec.europa.eu/software/page/eupl
22
- *
23
- * Unless required by applicable law or agreed to in writing, software
24
- * distributed under the Licence is distributed on an "AS IS" basis, WITHOUT
25
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
26
- * Licence for the specific language governing permissions and limitations
27
- * under the Licence.
28
- * @licend
29
- * @module
30
- */
31
-
32
- import $ from 'jquery';
33
- import { settings, attrForEach, getBoolean, checkColor, getAttr, setAttr, cloneObject, isSeparator } from '../Utils.js';
34
- import { Stroke, Gradient, Font, Dimension } from '../AWT.js';
35
-
36
- const defaultValues = settings.BoxBase;
37
-
38
- /**
39
- * This class contains all the main visual attributes needed to draw {@link module:boxes/AbstractBox.AbstractBox AbstractBox} objects:
40
- * background and foreground colors, gradients, colors for special states (inactive, alternative,
41
- * disabled...), margins, fonts, border strokes, etc.
42
- *
43
- * Objects derived from {@link module:boxes/AbstractBox.AbstractBox AbstractBox} can have inheritance: boxes that act as "containers"
44
- * of other boxes (like {@link module:boxes/BoxBag.BoxBag BoxBag}). Most of the attributes of `BoxBase` can be `null`,
45
- * meaning that the value of the ancestor -or the default value if the box has no ancestors- must
46
- * be used.
47
- */
48
- export class BoxBase {
49
- /**
50
- * BoxBase constructor
51
- * @param {module:boxes/BoxBase.BoxBase} [parent] - Another BoxBase object used to determine the value of properties not
52
- * locally set.
53
- */
54
- constructor(parent) {
55
- this.parent = parent || null;
56
- }
57
-
58
- /**
59
- * Loads the BoxBase settings from a specific JQuery XML element
60
- * @param {external:jQuery} $xml - The XML element to parse
61
- */
62
- setProperties($xml) {
63
- //
64
- // Read attributes
65
- attrForEach($xml.get(0).attributes, (name, val) => {
66
- switch (name) {
67
- case 'shadow':
68
- case 'transparent':
69
- this[name] = getBoolean(val, false);
70
- break;
71
- case 'margin':
72
- this[name] = Number(val);
73
- break;
74
- case 'borderStroke':
75
- this.borderStroke = new Stroke(Number(val));
76
- break;
77
- case 'markerStroke':
78
- this.markerStroke = new Stroke(Number(val));
79
- break;
80
- }
81
- });
82
- //
83
- // Read inner elements
84
- $xml.children().each((_n, child) => {
85
- const $node = $(child);
86
- switch (child.nodeName) {
87
- case 'font':
88
- this.font = (new Font()).setProperties($node);
89
- break;
90
-
91
- case 'gradient':
92
- this.bgGradient = new Gradient().setProperties($node);
93
- break;
94
-
95
- case 'color':
96
- this.textColor = checkColor($node.attr('foreground'), this.textColor);
97
- this.backColor = checkColor($node.attr('background'), this.backColor);
98
- this.shadowColor = checkColor($node.attr('shadow'), this.shadowColor);
99
- this.inactiveColor = checkColor($node.attr('inactive'), this.inactiveColor);
100
- this.alternativeColor = checkColor($node.attr('alternative'), this.alternativeColor);
101
- this.borderColor = checkColor($node.attr('border'), this.borderColor);
102
- break;
103
- }
104
- });
105
- return this;
106
- }
107
-
108
- /**
109
- * Gets a object with the basic attributes needed to rebuild this instance excluding functions,
110
- * parent references, constants and also attributes retaining the default value.
111
- * The resulting object is commonly usued to serialize elements in JSON format.
112
- * @returns {object} - The resulting object, with minimal attrributes
113
- */
114
- getAttributes() {
115
- return getAttr(this, [
116
- 'shadow', 'transparent', 'margin',
117
- 'borderStroke', 'markerStroke', // AWT.Stroke
118
- 'font', // AWT.Font
119
- 'bgGradient', // AWT.Gradient
120
- `textColor|${BoxBase.prototype.textColor}`,
121
- `backColor|${BoxBase.prototype.backColor}`,
122
- `shadowColor|${BoxBase.prototype.shadowColor}`,
123
- `inactiveColor|${BoxBase.prototype.inactiveColor}`,
124
- `alternativeColor|${BoxBase.prototype.alternativeColor}`,
125
- `borderColor|${BoxBase.prototype.borderColor}`,
126
- ]);
127
- }
128
-
129
- /**
130
- * Reads the properties of this BoxBase from a data object
131
- * @param {object} data - The data object to be parsed
132
- * @returns {module:boxes/BoxBase.BoxBase}
133
- */
134
- setAttributes(data) {
135
- return setAttr(this, data, [
136
- 'shadow', 'transparent', 'margin',
137
- { key: 'borderStroke', fn: Stroke },
138
- { key: 'markerStroke', fn: Stroke },
139
- { key: 'font', fn: Font },
140
- { key: 'bgGradient', fn: Gradient },
141
- 'textColor',
142
- 'backColor',
143
- 'shadowColor',
144
- 'inactiveColor',
145
- 'alternativeColor',
146
- 'borderColor',
147
- ]);
148
- }
149
-
150
- /**
151
- * Gets the value of the specified property, scanning down to parents and prototype if not defined.
152
- * @param {string} property - The property to retrieve
153
- * @returns {any} - The object or value associated to this property
154
- */
155
- get(property) {
156
- if (this.hasOwnProperty(property) || this.parent === null)
157
- return this[property];
158
- else
159
- return this.parent.get(property);
160
- }
161
-
162
- /**
163
- * Sets the value of a specific property.
164
- * @param {string} property - The property name.
165
- * @param {any} value - Depends on the type of property
166
- */
167
- set(property, value) {
168
- this[property] = value;
169
- return this;
170
- }
171
-
172
- /**
173
- * Gets the value of the specified property, scanning down to parents if not defined, and returning
174
- * always an own property (not from prototype)
175
- * @param {string} property - The property to retrieve
176
- * @returns {any} - The object or value associated to this property
177
- */
178
- getOwn(property) {
179
- if (this.hasOwnProperty(property))
180
- return this[property];
181
- else if (this.parent !== null)
182
- return this.parent.getOwn(property);
183
- else {
184
- if (typeof this[property] === 'object')
185
- this[property] = cloneObject(BoxBase.prototype[property]);
186
- else
187
- this[property] = BoxBase.prototype[property];
188
- }
189
- return this[property];
190
- }
191
-
192
- /**
193
- * Gets the properties defined in this BoxBase as a collection of CSS attributes
194
- * @param {object} [css] - An optional set of initial CSS properties
195
- * @param {boolean} [inactive=false] - When `true`, get CSS attributes for an inactive cell
196
- * @param {boolean} [inverse=false] - When `true`, get CSS attributes for an inverse cell
197
- * @param {boolean} [alternative=false] - When `true`, get CSS attributes for an alternative cell
198
- * @returns {object}
199
- */
200
- getCSS(css, inactive = false, inverse = false, alternative = false) {
201
- // (css will be created by [AWT.Font.toCss](AWT.html) if null or undefined)
202
- const font = this.get('font');
203
- css = font.toCss(css);
204
-
205
- css['color'] = inverse ? this.get('backColor')
206
- : alternative ? this.get('alternativeColor')
207
- : this.get('textColor');
208
-
209
- const transparent = this.get('transparent');
210
- css['background-color'] = transparent ? 'transparent'
211
- : inactive ? this.get('inactiveColor')
212
- : inverse ? this.get('textColor') : this.get('backColor');
213
-
214
- const bgGradient = this.get('bgGradient');
215
- if (bgGradient && !transparent)
216
- css['background-image'] = bgGradient.getCss();
217
-
218
- if (this.shadow === 1) {
219
- const delta = Math.max(1, Math.round(font.size / 10));
220
- const color = this.get('shadowColor');
221
- css['text-shadow'] = `${delta}px ${delta}px 3px ${color}`;
222
- }
223
- return css;
224
- }
225
-
226
- /**
227
- * This utility method computes the width and height of text lines rendered on an HTML
228
- * __canvas__ element, reducing the font size of the BoxBase as needed when they exceed the maximum
229
- * width and/or height.
230
- * @param {external:CanvasRenderingContext2D} ctx - The canvas rendering context used to draw the text.
231
- * @param {string} text - The text to drawn.
232
- * @param {number} maxWidth - Maximum width
233
- * @param {number} maxHeight - Maximum height
234
- * @returns {object[]} - An array of objects representing lines of text. Each object has a `text`
235
- * member with the text displayed in the line, and a `size` member with the line {@link module:AWT.Dimension}
236
- */
237
- prepareText(ctx, text, maxWidth, maxHeight) {
238
- const
239
- result = [],
240
- font = this.get('font'),
241
- height = font.getHeight();
242
- let totalHeight = 0;
243
-
244
- // divide the text in lines
245
- const lines = text.trim().split('\n');
246
- ctx.font = font.cssFont();
247
- for (let l = 0; l < lines.length; l++) {
248
- let line = lines[l].trim();
249
- let width = ctx.measureText(line).width;
250
- if (width > maxWidth) {
251
- // retain the last string offset that was inside maxWidth
252
- let
253
- lastOK = 0,
254
- lastOKWidth = 0;
255
- for (let p = 0; p < line.length; p++) {
256
- // Find next separator
257
- if (isSeparator(line[p])) {
258
- const w = ctx.measureText(line.substring(0, p).trim()).width;
259
- if (w > maxWidth)
260
- break;
261
- lastOK = p;
262
- lastOKWidth = w;
263
- }
264
- }
265
- if (lastOK > 0) {
266
- // Add a new line with the tail of the line
267
- lines.splice(l + 1, 0, line.substring(lastOK + 1).trim());
268
- // Adjust the current line
269
- line = lines[l] = line.substring(0, lastOK).trim();
270
- width = lastOKWidth;
271
- }
272
- else {
273
- // No solution found. Try resizing down the font.
274
- if (font.size > defaultValues.MIN_FONT_SIZE) {
275
- this.getOwn('font').zoom(-1);
276
- return this.prepareText(ctx, text, maxWidth, maxHeight);
277
- }
278
- }
279
- }
280
-
281
- // Add the line and the calculated dimension to `result`
282
- result.push({
283
- text: line,
284
- size: new Dimension(width, height)
285
- });
286
-
287
- totalHeight += height;
288
-
289
- if (totalHeight > maxHeight && font.size > defaultValues.MIN_FONT_SIZE) {
290
- // Max height exceeded. Try resizing down the font
291
- this.getOwn('font').zoom(-1);
292
- return this.prepareText(ctx, text, maxWidth, maxHeight);
293
- }
294
- }
295
- return result;
296
- }
297
- }
298
-
299
- Object.assign(BoxBase.prototype, {
300
- /**
301
- * The parent BoxBase object
302
- * @name module:boxes/BoxBase.BoxBase#parent
303
- * @type {module:boxes/BoxBase.BoxBase} */
304
- parent: null,
305
- /**
306
- * Default values
307
- * @name module:boxes/BoxBase.BoxBase#defaultValues
308
- * @type {object} */
309
- default: defaultValues,
310
- /**
311
- * Font size can be dynamically reduced to fit the available space if any element using this
312
- * `BoxBase` requests it. When this happen, this field contains the real font currently used
313
- * to draw text.
314
- * @name module:boxes/BoxBase.BoxBase#font
315
- * @type {module:AWT.Font} */
316
- font: new Font(),
317
- /**
318
- * The current font size of this BoxBase. Can be dynamically adjusted when drawing.
319
- * @name module:boxes/BoxBase.BoxBase#dynFontSize
320
- * @type {number} */
321
- dynFontSize: 0,
322
- /**
323
- * Counts the number of times the `dynFontSize` has been reset. This is useful to avoid excessive
324
- * recursive loops searching the optimal font size.
325
- * @name module:boxes/BoxBase.BoxBase#resetFontCounter
326
- * @type {number} */
327
- resetFontCounter: 0,
328
- /**
329
- * The background color
330
- * @name module:boxes/BoxBase.BoxBase#backColor
331
- * @type {string} */
332
- backColor: defaultValues.BACK_COLOR,
333
- /**
334
- * The background gradient. Default is `null`.
335
- * @name module:boxes/BoxBase.BoxBase#bgGradient
336
- * @type {module:AWT.Gradient} */
337
- bgGradient: null,
338
- /**
339
- * The color used to write text.
340
- * @name module:boxes/BoxBase.BoxBase#textColor
341
- * @type {string} */
342
- textColor: defaultValues.TEXT_COLOR,
343
- /**
344
- * The color used to draw a shadow below regular text.
345
- * @name module:boxes/BoxBase.BoxBase#shadowColor
346
- * @type {string} */
347
- shadowColor: defaultValues.SHADOW_COLOR,
348
- /**
349
- * The color of the border.
350
- * @name module:boxes/BoxBase.BoxBase#borderColor
351
- * @type {string} */
352
- borderColor: defaultValues.BORDER_COLOR,
353
- /**
354
- * The color used to draw text when a cell is in `inactive` state.
355
- * @name module:boxes/BoxBase.BoxBase#inactiveColor
356
- * @type {string} */
357
- inactiveColor: defaultValues.INACTIVE_COLOR,
358
- /**
359
- * The color used to draw text when a cell is in `alternative` state.
360
- * @name module:boxes/BoxBase.BoxBase#alternativeColor
361
- * @type {string} */
362
- alternativeColor: defaultValues.ALTERNATIVE_COLOR,
363
- /**
364
- * Whether the text should have a shadow or not
365
- * @name module:boxes/BoxBase.BoxBase#shadow
366
- * @type {boolean} */
367
- shadow: false,
368
- /**
369
- * Whether the cell's background (and its hosted component, if any) should be transparent
370
- * @name module:boxes/BoxBase.BoxBase#transparent
371
- * @type {boolean} */
372
- transparent: false,
373
- /**
374
- * Wheter the cell's background should be painted or not. This property has no effect on
375
- * hosted components.
376
- * @name module:boxes/BoxBase.BoxBase#dontFill
377
- * @type {boolean} */
378
- dontFill: false,
379
- /**
380
- * The margin to respect between text elements and the limits of the cell or other elements.
381
- * @name module:boxes/BoxBase.BoxBase#textMargin
382
- * @type {number} */
383
- textMargin: defaultValues.AC_MARGIN,
384
- /**
385
- * The stroke used to draw the border.
386
- * @name module:boxes/BoxBase.BoxBase#borderStroke
387
- * @type {module:AWT.Stroke} */
388
- borderStroke: new Stroke(defaultValues.BORDER_STROKE_WIDTH),
389
- /**
390
- * The stroke used to draw a border around marked cells.
391
- * @name module:boxes/BoxBase.BoxBase#markerStroke
392
- * @type {module:AWT.Stroke} */
393
- markerStroke: new Stroke(defaultValues.MARKER_STROKE_WIDTH),
394
- });
395
-
396
- BoxBase.DEFAULT_BOX_BASE = new BoxBase();
397
-
398
- export default BoxBase;