p5 2.2.1-rc.0 → 2.2.1
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/dist/accessibility/color_namer.js +5 -6
- package/dist/accessibility/describe.js +4 -26
- package/dist/accessibility/index.js +5 -6
- package/dist/accessibility/outputs.js +6 -38
- package/dist/app.js +5 -6
- package/dist/color/color_conversion.js +5 -6
- package/dist/color/creating_reading.js +1 -1
- package/dist/color/index.js +2 -2
- package/dist/color/p5.Color.js +1 -1
- package/dist/color/setting.js +59 -357
- package/dist/{constants-DEJVKr9Z.js → constants-DQyACdzq.js} +11 -61
- package/dist/core/constants.js +1 -1
- package/dist/core/environment.js +26 -158
- package/dist/core/filterShaders.js +1 -1
- package/dist/core/friendly_errors/fes_core.js +1 -1
- package/dist/core/friendly_errors/file_errors.js +1 -1
- package/dist/core/friendly_errors/index.js +1 -1
- package/dist/core/friendly_errors/param_validator.js +1 -1
- package/dist/core/friendly_errors/sketch_verifier.js +1 -1
- package/dist/core/helpers.js +1 -1
- package/dist/core/init.js +5 -6
- package/dist/core/internationalization.js +1 -1
- package/dist/core/legacy.js +5 -6
- package/dist/core/main.js +5 -6
- package/dist/core/p5.Graphics.js +4 -5
- package/dist/core/p5.Renderer.js +3 -4
- package/dist/core/p5.Renderer2D.js +5 -6
- package/dist/core/p5.Renderer3D.js +4 -5
- package/dist/core/rendering.js +4 -5
- package/dist/core/structure.js +13 -52
- package/dist/core/transform.js +32 -176
- package/dist/{creating_reading-CgHCHxqN.js → creating_reading-ZXzcZEsb.js} +3 -196
- package/dist/data/local_storage.js +4 -30
- package/dist/dom/dom.js +24 -159
- package/dist/dom/index.js +2 -2
- package/dist/dom/p5.Element.js +31 -208
- package/dist/dom/p5.File.js +1 -32
- package/dist/dom/p5.MediaElement.js +10 -113
- package/dist/events/acceleration.js +11 -64
- package/dist/events/keyboard.js +13 -81
- package/dist/events/pointer.js +18 -160
- package/dist/image/const.js +1 -1
- package/dist/image/filterRenderer2D.js +4 -5
- package/dist/image/image.js +4 -5
- package/dist/image/index.js +4 -5
- package/dist/image/loading_displaying.js +4 -5
- package/dist/image/p5.Image.js +3 -4
- package/dist/image/pixels.js +17 -100
- package/dist/io/files.js +4 -5
- package/dist/io/index.js +4 -5
- package/dist/io/p5.Table.js +66 -158
- package/dist/io/p5.TableRow.js +48 -71
- package/dist/io/p5.XML.js +6 -99
- package/dist/io/utilities.js +8 -3
- package/dist/{main-_RXV5Lx8.js → main-DvN69W3f.js} +13 -42
- package/dist/math/Matrices/Matrix.js +87 -126
- package/dist/math/Matrices/MatrixNumjs.js +1 -5
- package/dist/math/calculation.js +10 -112
- package/dist/math/index.js +1 -1
- package/dist/math/math.js +2 -12
- package/dist/math/noise.js +5 -32
- package/dist/math/p5.Matrix.js +3 -3
- package/dist/math/p5.Vector.js +104 -345
- package/dist/math/random.js +5 -32
- package/dist/math/trigonometry.js +15 -105
- package/dist/{p5.Renderer-QoFcvj3f.js → p5.Renderer-D-5LdCRz.js} +25 -178
- package/dist/{rendering-CsICjEXA.js → rendering-h9unX5K0.js} +254 -1156
- package/dist/shape/2d_primitives.js +33 -194
- package/dist/shape/attributes.js +12 -73
- package/dist/shape/curves.js +30 -95
- package/dist/shape/custom_shapes.js +63 -144
- package/dist/shape/index.js +2 -2
- package/dist/shape/vertex.js +21 -106
- package/dist/strands/p5.strands.js +248 -46
- package/dist/type/index.js +3 -4
- package/dist/type/p5.Font.js +4 -49
- package/dist/type/textCore.js +5 -158
- package/dist/utilities/conversion.js +17 -104
- package/dist/utilities/time_date.js +3 -40
- package/dist/utilities/utility_functions.js +6 -48
- package/dist/webgl/3d_primitives.js +4 -5
- package/dist/webgl/GeometryBuilder.js +1 -2
- package/dist/webgl/ShapeBuilder.js +22 -2
- package/dist/webgl/enums.js +1 -1
- package/dist/webgl/index.js +4 -5
- package/dist/webgl/interaction.js +6 -33
- package/dist/webgl/light.js +4 -5
- package/dist/webgl/loading.js +12 -46
- package/dist/webgl/material.js +4 -5
- package/dist/webgl/p5.Camera.js +4 -5
- package/dist/webgl/p5.DataArray.js +0 -4
- package/dist/webgl/p5.Framebuffer.js +4 -5
- package/dist/webgl/p5.Geometry.js +12 -106
- package/dist/webgl/p5.Quat.js +1 -1
- package/dist/webgl/p5.RendererGL.js +7 -18
- package/dist/webgl/p5.Shader.js +12 -36
- package/dist/webgl/p5.Texture.js +4 -5
- package/dist/webgl/text.js +4 -5
- package/dist/webgl/utils.js +4 -5
- package/dist/webgpu/index.js +1 -1
- package/dist/webgpu/p5.RendererWebGPU.js +529 -208
- package/dist/webgpu/shaders/color.js +32 -17
- package/dist/webgpu/shaders/filters/base.js +18 -7
- package/dist/webgpu/shaders/font.js +52 -40
- package/dist/webgpu/shaders/line.js +50 -36
- package/dist/webgpu/shaders/material.js +90 -83
- package/dist/webgpu/strands_wgslBackend.js +5 -2
- package/lib/p5.esm.js +5576 -7811
- package/lib/p5.esm.min.js +1 -1
- package/lib/p5.js +5576 -7811
- package/lib/p5.min.js +1 -1
- package/lib/p5.webgpu.esm.js +786 -453
- package/lib/p5.webgpu.js +786 -453
- package/lib/p5.webgpu.min.js +1 -1
- package/package.json +13 -13
- package/types/global.d.ts +16905 -16783
- package/types/p5.d.ts +11142 -11081
package/dist/io/p5.TableRow.js
CHANGED
|
@@ -14,17 +14,15 @@ class TableRow {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
17
|
+
* Stores a value in the TableRow's specified column.
|
|
18
|
+
* The column may be specified by either its ID or title.
|
|
19
19
|
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
20
|
+
* @deprecated p5.Table will be removed in a future version of p5.js to make way for a new, friendlier version :)
|
|
21
|
+
* @param {String|Integer} column Column ID (Number)
|
|
22
|
+
* or Title (String)
|
|
23
|
+
* @param {String|Number} value The value to be stored
|
|
24
24
|
*
|
|
25
25
|
* @example
|
|
26
|
-
* <div>
|
|
27
|
-
* <code>
|
|
28
26
|
* let table;
|
|
29
27
|
*
|
|
30
28
|
* async function setup() {
|
|
@@ -58,8 +56,6 @@ class TableRow {
|
|
|
58
56
|
*
|
|
59
57
|
* describe('no image displayed');
|
|
60
58
|
* }
|
|
61
|
-
* </code>
|
|
62
|
-
* </div>
|
|
63
59
|
*/
|
|
64
60
|
set(column, value) {
|
|
65
61
|
// if typeof column is string, use .obj
|
|
@@ -84,17 +80,15 @@ class TableRow {
|
|
|
84
80
|
}
|
|
85
81
|
|
|
86
82
|
/**
|
|
87
|
-
*
|
|
88
|
-
*
|
|
83
|
+
* Stores a Float value in the TableRow's specified column.
|
|
84
|
+
* The column may be specified by either its ID or title.
|
|
89
85
|
*
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
*
|
|
86
|
+
* @deprecated p5.Table will be removed in a future version of p5.js to make way for a new, friendlier version :)
|
|
87
|
+
* @param {String|Integer} column Column ID (Number)
|
|
88
|
+
* or Title (String)
|
|
89
|
+
* @param {Number|String} value The value to be stored
|
|
94
90
|
* as a Float
|
|
95
91
|
* @example
|
|
96
|
-
* <div>
|
|
97
|
-
* <code>
|
|
98
92
|
* let table;
|
|
99
93
|
*
|
|
100
94
|
* async function setup() {
|
|
@@ -129,8 +123,6 @@ class TableRow {
|
|
|
129
123
|
*
|
|
130
124
|
* describe('no image displayed');
|
|
131
125
|
* }
|
|
132
|
-
* </code>
|
|
133
|
-
* </div>
|
|
134
126
|
*/
|
|
135
127
|
setNum(column, value) {
|
|
136
128
|
const floatVal = parseFloat(value);
|
|
@@ -138,17 +130,15 @@ class TableRow {
|
|
|
138
130
|
}
|
|
139
131
|
|
|
140
132
|
/**
|
|
141
|
-
*
|
|
142
|
-
*
|
|
133
|
+
* Stores a String value in the TableRow's specified column.
|
|
134
|
+
* The column may be specified by either its ID or title.
|
|
143
135
|
*
|
|
144
|
-
*
|
|
145
|
-
*
|
|
146
|
-
*
|
|
147
|
-
*
|
|
136
|
+
* @deprecated p5.Table will be removed in a future version of p5.js to make way for a new, friendlier version :)
|
|
137
|
+
* @param {String|Integer} column Column ID (Number)
|
|
138
|
+
* or Title (String)
|
|
139
|
+
* @param {String|Number|Boolean|Object} value The value to be stored
|
|
148
140
|
* as a String
|
|
149
141
|
* @example
|
|
150
|
-
* <div>
|
|
151
|
-
* <code>
|
|
152
142
|
* let table;
|
|
153
143
|
*
|
|
154
144
|
* async function setup() {
|
|
@@ -183,7 +173,6 @@ class TableRow {
|
|
|
183
173
|
*
|
|
184
174
|
* // describe('no image displayed');
|
|
185
175
|
* }
|
|
186
|
-
* </code>
|
|
187
176
|
*/
|
|
188
177
|
setString(column, value) {
|
|
189
178
|
const stringVal = value.toString();
|
|
@@ -191,17 +180,15 @@ class TableRow {
|
|
|
191
180
|
}
|
|
192
181
|
|
|
193
182
|
/**
|
|
194
|
-
*
|
|
195
|
-
*
|
|
183
|
+
* Retrieves a value from the TableRow's specified column.
|
|
184
|
+
* The column may be specified by either its ID or title.
|
|
196
185
|
*
|
|
197
|
-
*
|
|
198
|
-
*
|
|
199
|
-
*
|
|
200
|
-
*
|
|
186
|
+
* @deprecated p5.Table will be removed in a future version of p5.js to make way for a new, friendlier version :)
|
|
187
|
+
* @param {String|Integer} column columnName (string) or
|
|
188
|
+
* ID (number)
|
|
189
|
+
* @return {String|Number}
|
|
201
190
|
*
|
|
202
191
|
* @example
|
|
203
|
-
* <div>
|
|
204
|
-
* <code>
|
|
205
192
|
* let table;
|
|
206
193
|
*
|
|
207
194
|
* async function setup() {
|
|
@@ -229,8 +216,6 @@ class TableRow {
|
|
|
229
216
|
*
|
|
230
217
|
* describe('no image displayed');
|
|
231
218
|
* }
|
|
232
|
-
* </code>
|
|
233
|
-
* </div>
|
|
234
219
|
*/
|
|
235
220
|
get(column) {
|
|
236
221
|
if (typeof column === 'string') {
|
|
@@ -241,17 +226,15 @@ class TableRow {
|
|
|
241
226
|
}
|
|
242
227
|
|
|
243
228
|
/**
|
|
244
|
-
*
|
|
245
|
-
*
|
|
246
|
-
*
|
|
247
|
-
*
|
|
248
|
-
*
|
|
249
|
-
*
|
|
250
|
-
*
|
|
251
|
-
*
|
|
229
|
+
* Retrieves a Float value from the TableRow's specified
|
|
230
|
+
* column. The column may be specified by either its ID or
|
|
231
|
+
* title.
|
|
232
|
+
*
|
|
233
|
+
* @deprecated p5.Table will be removed in a future version of p5.js to make way for a new, friendlier version :)
|
|
234
|
+
* @param {String|Integer} column columnName (string) or
|
|
235
|
+
* ID (number)
|
|
236
|
+
* @return {Number} Float Floating point number
|
|
252
237
|
* @example
|
|
253
|
-
* <div>
|
|
254
|
-
* <code>
|
|
255
238
|
* let table;
|
|
256
239
|
*
|
|
257
240
|
* async function setup() {
|
|
@@ -281,8 +264,6 @@ class TableRow {
|
|
|
281
264
|
*
|
|
282
265
|
* describe('no image displayed');
|
|
283
266
|
* }
|
|
284
|
-
* </code>
|
|
285
|
-
* </div>
|
|
286
267
|
*/
|
|
287
268
|
getNum(column) {
|
|
288
269
|
let ret;
|
|
@@ -299,18 +280,16 @@ class TableRow {
|
|
|
299
280
|
}
|
|
300
281
|
|
|
301
282
|
/**
|
|
302
|
-
*
|
|
303
|
-
*
|
|
304
|
-
*
|
|
283
|
+
* Retrieves an String value from the TableRow's specified
|
|
284
|
+
* column. The column may be specified by either its ID or
|
|
285
|
+
* title.
|
|
305
286
|
*
|
|
306
|
-
*
|
|
287
|
+
* @deprecated p5.Table will be removed in a future version of p5.js to make way for a new, friendlier version :)
|
|
307
288
|
*
|
|
308
|
-
*
|
|
309
|
-
*
|
|
310
|
-
*
|
|
289
|
+
* @param {String|Integer} column columnName (string) or
|
|
290
|
+
* ID (number)
|
|
291
|
+
* @return {String} String
|
|
311
292
|
* @example
|
|
312
|
-
* <div>
|
|
313
|
-
* <code>
|
|
314
293
|
* let table;
|
|
315
294
|
*
|
|
316
295
|
* async function setup() {
|
|
@@ -339,8 +318,6 @@ class TableRow {
|
|
|
339
318
|
*
|
|
340
319
|
* describe('no image displayed');
|
|
341
320
|
* }
|
|
342
|
-
* </code>
|
|
343
|
-
* </div>
|
|
344
321
|
*/
|
|
345
322
|
getString(column) {
|
|
346
323
|
if (typeof column === 'string') {
|
|
@@ -352,17 +329,17 @@ class TableRow {
|
|
|
352
329
|
}
|
|
353
330
|
function tableRow(p5, fn){
|
|
354
331
|
/**
|
|
355
|
-
*
|
|
356
|
-
*
|
|
332
|
+
* A TableRow object represents a single row of data values,
|
|
333
|
+
* stored in columns, from a table.
|
|
357
334
|
*
|
|
358
|
-
*
|
|
359
|
-
*
|
|
335
|
+
* A Table Row contains both an ordered array, and an unordered
|
|
336
|
+
* JSON object.
|
|
360
337
|
*
|
|
361
|
-
*
|
|
362
|
-
*
|
|
363
|
-
*
|
|
364
|
-
*
|
|
365
|
-
*
|
|
338
|
+
* @class p5.TableRow
|
|
339
|
+
* @deprecated p5.Table will be removed in a future version of p5.js to make way for a new, friendlier version :)
|
|
340
|
+
* @constructor
|
|
341
|
+
* @param {any[]} row optional: populate the row with an
|
|
342
|
+
* array of values
|
|
366
343
|
*/
|
|
367
344
|
p5.TableRow = TableRow;
|
|
368
345
|
}
|
package/dist/io/p5.XML.js
CHANGED
|
@@ -21,8 +21,6 @@ class XML {
|
|
|
21
21
|
* @return {p5.XML} parent element.
|
|
22
22
|
*
|
|
23
23
|
* @example
|
|
24
|
-
* <div>
|
|
25
|
-
* <code>
|
|
26
24
|
* let myXML;
|
|
27
25
|
*
|
|
28
26
|
* async function setup() {
|
|
@@ -55,8 +53,6 @@ class XML {
|
|
|
55
53
|
*
|
|
56
54
|
* describe('The word "animals" written in black on a gray background.');
|
|
57
55
|
* }
|
|
58
|
-
* </code>
|
|
59
|
-
* </div>
|
|
60
56
|
*/
|
|
61
57
|
getParent() {
|
|
62
58
|
return new XML(this.DOM.parentElement);
|
|
@@ -71,8 +67,6 @@ class XML {
|
|
|
71
67
|
* @return {String} name of the element.
|
|
72
68
|
*
|
|
73
69
|
* @example
|
|
74
|
-
* <div>
|
|
75
|
-
* <code>
|
|
76
70
|
* let myXML;
|
|
77
71
|
*
|
|
78
72
|
* async function setup() {
|
|
@@ -102,8 +96,6 @@ class XML {
|
|
|
102
96
|
*
|
|
103
97
|
* describe('The word "mammal" written in black on a gray background.');
|
|
104
98
|
* }
|
|
105
|
-
* </code>
|
|
106
|
-
* </div>
|
|
107
99
|
*/
|
|
108
100
|
getName() {
|
|
109
101
|
return this.DOM.tagName;
|
|
@@ -122,8 +114,6 @@ class XML {
|
|
|
122
114
|
* @param {String} name new tag name of the element.
|
|
123
115
|
*
|
|
124
116
|
* @example
|
|
125
|
-
* <div>
|
|
126
|
-
* <code>
|
|
127
117
|
* let myXML;
|
|
128
118
|
*
|
|
129
119
|
* async function setup() {
|
|
@@ -156,7 +146,6 @@ class XML {
|
|
|
156
146
|
* 'The words "animals" and "monsters" written on separate lines. The text is black on a gray background.'
|
|
157
147
|
* );
|
|
158
148
|
* }
|
|
159
|
-
* </code></div>
|
|
160
149
|
*/
|
|
161
150
|
setName(name) {
|
|
162
151
|
const content = this.DOM.innerHTML;
|
|
@@ -176,8 +165,6 @@ class XML {
|
|
|
176
165
|
* @return {boolean} whether the element has children.
|
|
177
166
|
*
|
|
178
167
|
* @example
|
|
179
|
-
* <div>
|
|
180
|
-
* <code>
|
|
181
168
|
* let myXML;
|
|
182
169
|
*
|
|
183
170
|
* async function setup() {
|
|
@@ -205,8 +192,6 @@ class XML {
|
|
|
205
192
|
*
|
|
206
193
|
* describe('The word "Parent" written in black on a gray background.');
|
|
207
194
|
* }
|
|
208
|
-
* </code>
|
|
209
|
-
* </div>
|
|
210
195
|
*/
|
|
211
196
|
hasChildren() {
|
|
212
197
|
return this.DOM.children.length > 0;
|
|
@@ -219,8 +204,6 @@ class XML {
|
|
|
219
204
|
* @return {String[]} names of the child elements.
|
|
220
205
|
*
|
|
221
206
|
* @example
|
|
222
|
-
* <div>
|
|
223
|
-
* <code>
|
|
224
207
|
* let myXML;
|
|
225
208
|
*
|
|
226
209
|
* async function setup() {
|
|
@@ -253,8 +236,6 @@ class XML {
|
|
|
253
236
|
* 'The words "mammal", "mammal", "mammal", and "reptile" written on separate lines. The text is black on a gray background.'
|
|
254
237
|
* );
|
|
255
238
|
* }
|
|
256
|
-
* </code>
|
|
257
|
-
* </div>
|
|
258
239
|
*/
|
|
259
240
|
listChildren() {
|
|
260
241
|
const arr = [];
|
|
@@ -276,8 +257,6 @@ class XML {
|
|
|
276
257
|
* @return {p5.XML[]} child elements.
|
|
277
258
|
*
|
|
278
259
|
* @example
|
|
279
|
-
* <div>
|
|
280
|
-
* <code>
|
|
281
260
|
* let myXML;
|
|
282
261
|
*
|
|
283
262
|
* async function setup() {
|
|
@@ -313,11 +292,8 @@ class XML {
|
|
|
313
292
|
* 'The words "Goat", "Leopard", "Zebra", and "Turtle" written on separate lines. The text is black on a gray background.'
|
|
314
293
|
* );
|
|
315
294
|
* }
|
|
316
|
-
* </code>
|
|
317
|
-
* </div>
|
|
318
295
|
*
|
|
319
|
-
*
|
|
320
|
-
* <code>
|
|
296
|
+
* @example
|
|
321
297
|
* let myXML;
|
|
322
298
|
*
|
|
323
299
|
* async function setup() {
|
|
@@ -354,8 +330,6 @@ class XML {
|
|
|
354
330
|
* 'The words "Goat", "Leopard", and "Zebra" written on separate lines. The text is black on a gray background.'
|
|
355
331
|
* );
|
|
356
332
|
* }
|
|
357
|
-
* </code>
|
|
358
|
-
* </div>
|
|
359
333
|
*/
|
|
360
334
|
getChildren(param) {
|
|
361
335
|
if (param) {
|
|
@@ -378,8 +352,6 @@ class XML {
|
|
|
378
352
|
* @return {p5.XML} child element.
|
|
379
353
|
*
|
|
380
354
|
* @example
|
|
381
|
-
* <div>
|
|
382
|
-
* <code>
|
|
383
355
|
* let myXML;
|
|
384
356
|
*
|
|
385
357
|
* async function setup() {
|
|
@@ -406,11 +378,8 @@ class XML {
|
|
|
406
378
|
*
|
|
407
379
|
* describe('The word "Goat" written in black on a gray background.');
|
|
408
380
|
* }
|
|
409
|
-
* </code>
|
|
410
|
-
* </div>
|
|
411
381
|
*
|
|
412
|
-
*
|
|
413
|
-
* <code>
|
|
382
|
+
* @example
|
|
414
383
|
* let myXML;
|
|
415
384
|
*
|
|
416
385
|
* async function setup() {
|
|
@@ -437,8 +406,6 @@ class XML {
|
|
|
437
406
|
*
|
|
438
407
|
* describe('The word "Leopard" written in black on a gray background.');
|
|
439
408
|
* }
|
|
440
|
-
* </code>
|
|
441
|
-
* </div>
|
|
442
409
|
*/
|
|
443
410
|
getChild(param) {
|
|
444
411
|
if (typeof param === 'string') {
|
|
@@ -461,8 +428,6 @@ class XML {
|
|
|
461
428
|
* @return {p5.XML} added child element.
|
|
462
429
|
*
|
|
463
430
|
* @example
|
|
464
|
-
* <div>
|
|
465
|
-
* <code>
|
|
466
431
|
* let myXML;
|
|
467
432
|
*
|
|
468
433
|
* async function setup() {
|
|
@@ -501,8 +466,6 @@ class XML {
|
|
|
501
466
|
*
|
|
502
467
|
* describe('The word "Bluebottle" written in black on a gray background.');
|
|
503
468
|
* }
|
|
504
|
-
* </code>
|
|
505
|
-
* </div>
|
|
506
469
|
*/
|
|
507
470
|
addChild(node) {
|
|
508
471
|
if (node instanceof XML) {
|
|
@@ -522,8 +485,6 @@ class XML {
|
|
|
522
485
|
* @param {String|Integer} name name or index of the child element to remove.
|
|
523
486
|
*
|
|
524
487
|
* @example
|
|
525
|
-
* <div>
|
|
526
|
-
* <code>
|
|
527
488
|
* let myXML;
|
|
528
489
|
*
|
|
529
490
|
* async function setup() {
|
|
@@ -562,11 +523,8 @@ class XML {
|
|
|
562
523
|
* 'The words "Leopard", "Zebra", and "Turtle" written on separate lines. The text is black on a gray background.'
|
|
563
524
|
* );
|
|
564
525
|
* }
|
|
565
|
-
* </code>
|
|
566
|
-
* </div>
|
|
567
526
|
*
|
|
568
|
-
*
|
|
569
|
-
* <code>
|
|
527
|
+
* @example
|
|
570
528
|
* let myXML;
|
|
571
529
|
*
|
|
572
530
|
* async function setup() {
|
|
@@ -605,8 +563,6 @@ class XML {
|
|
|
605
563
|
* 'The words "Goat", "Leopard", and "Turtle" written on separate lines. The text is black on a gray background.'
|
|
606
564
|
* );
|
|
607
565
|
* }
|
|
608
|
-
* </code>
|
|
609
|
-
* </div>
|
|
610
566
|
*/
|
|
611
567
|
removeChild(param) {
|
|
612
568
|
let ind = -1;
|
|
@@ -631,8 +587,6 @@ class XML {
|
|
|
631
587
|
* @return {Integer} number of attributes.
|
|
632
588
|
*
|
|
633
589
|
* @example
|
|
634
|
-
* <div>
|
|
635
|
-
* <code>
|
|
636
590
|
* let myXML;
|
|
637
591
|
*
|
|
638
592
|
* async function setup() {
|
|
@@ -659,8 +613,6 @@ class XML {
|
|
|
659
613
|
*
|
|
660
614
|
* describe('The number "2" written in black on a gray background.');
|
|
661
615
|
* }
|
|
662
|
-
* </code>
|
|
663
|
-
* </div>
|
|
664
616
|
*/
|
|
665
617
|
getAttributeCount() {
|
|
666
618
|
return this.DOM.attributes.length;
|
|
@@ -676,8 +628,6 @@ class XML {
|
|
|
676
628
|
* @return {String[]} attribute names.
|
|
677
629
|
*
|
|
678
630
|
* @example
|
|
679
|
-
* <div>
|
|
680
|
-
* <code>
|
|
681
631
|
* let myXML;
|
|
682
632
|
*
|
|
683
633
|
* async function setup() {
|
|
@@ -704,8 +654,6 @@ class XML {
|
|
|
704
654
|
*
|
|
705
655
|
* describe('The text "id,species" written in black on a gray background.');
|
|
706
656
|
* }
|
|
707
|
-
* </code>
|
|
708
|
-
* </div>
|
|
709
657
|
*/
|
|
710
658
|
listAttributes() {
|
|
711
659
|
const arr = [];
|
|
@@ -731,8 +679,6 @@ class XML {
|
|
|
731
679
|
* @return {boolean} whether the element has the attribute.
|
|
732
680
|
*
|
|
733
681
|
* @example
|
|
734
|
-
* <div>
|
|
735
|
-
* <code>
|
|
736
682
|
* let myXML;
|
|
737
683
|
*
|
|
738
684
|
* async function setup() {
|
|
@@ -764,8 +710,6 @@ class XML {
|
|
|
764
710
|
*
|
|
765
711
|
* describe('The text "Species" written in black on a gray background.');
|
|
766
712
|
* }
|
|
767
|
-
* </code>
|
|
768
|
-
* </div>
|
|
769
713
|
*/
|
|
770
714
|
hasAttribute(name) {
|
|
771
715
|
const obj = {};
|
|
@@ -797,8 +741,6 @@ class XML {
|
|
|
797
741
|
* @return {Number} attribute value as a number.
|
|
798
742
|
*
|
|
799
743
|
* @example
|
|
800
|
-
* <div>
|
|
801
|
-
* <code>
|
|
802
744
|
* let myXML;
|
|
803
745
|
*
|
|
804
746
|
* async function setup() {
|
|
@@ -828,11 +770,8 @@ class XML {
|
|
|
828
770
|
*
|
|
829
771
|
* describe(`The text "${content} is ${id + 1}th" written in black on a gray background.`);
|
|
830
772
|
* }
|
|
831
|
-
* </code>
|
|
832
|
-
* </div>
|
|
833
773
|
*
|
|
834
|
-
*
|
|
835
|
-
* <code>
|
|
774
|
+
* @example
|
|
836
775
|
* let myXML;
|
|
837
776
|
*
|
|
838
777
|
* async function setup() {
|
|
@@ -864,8 +803,6 @@ class XML {
|
|
|
864
803
|
* `The text "${content} is ${weight}kg" written in black on a gray background.`
|
|
865
804
|
* );
|
|
866
805
|
* }
|
|
867
|
-
* </code>
|
|
868
|
-
* </div>
|
|
869
806
|
*/
|
|
870
807
|
getNum(name, defaultValue) {
|
|
871
808
|
const obj = {};
|
|
@@ -897,8 +834,6 @@ class XML {
|
|
|
897
834
|
* @return {String} attribute value as a string.
|
|
898
835
|
*
|
|
899
836
|
* @example
|
|
900
|
-
* <div>
|
|
901
|
-
* <code>
|
|
902
837
|
* let myXML;
|
|
903
838
|
*
|
|
904
839
|
* async function setup() {
|
|
@@ -928,11 +863,8 @@ class XML {
|
|
|
928
863
|
*
|
|
929
864
|
* describe(`The text "${content}: ${species}" written in black on a gray background.`);
|
|
930
865
|
* }
|
|
931
|
-
* </code>
|
|
932
|
-
* </div>
|
|
933
866
|
*
|
|
934
|
-
*
|
|
935
|
-
* <code>
|
|
867
|
+
* @example
|
|
936
868
|
* let myXML;
|
|
937
869
|
*
|
|
938
870
|
* async function setup() {
|
|
@@ -963,8 +895,6 @@ class XML {
|
|
|
963
895
|
*
|
|
964
896
|
* describe(`The text "${content}" written in green on a gray background.`);
|
|
965
897
|
* }
|
|
966
|
-
* </code>
|
|
967
|
-
* </div>
|
|
968
898
|
*/
|
|
969
899
|
getString(name, defaultValue) {
|
|
970
900
|
const obj = {};
|
|
@@ -990,8 +920,6 @@ class XML {
|
|
|
990
920
|
* @param {Number|String|Boolean} value attribute's new value.
|
|
991
921
|
*
|
|
992
922
|
* @example
|
|
993
|
-
* <div>
|
|
994
|
-
* <code>
|
|
995
923
|
* let myXML;
|
|
996
924
|
*
|
|
997
925
|
* async function setup() {
|
|
@@ -1026,8 +954,6 @@ class XML {
|
|
|
1026
954
|
* `The text "${content} is ${attribute}" written in green on a gray background.`
|
|
1027
955
|
* );
|
|
1028
956
|
* }
|
|
1029
|
-
* </code>
|
|
1030
|
-
* </div>
|
|
1031
957
|
*/
|
|
1032
958
|
setAttribute(name, value) {
|
|
1033
959
|
this.DOM.setAttribute(name, value);
|
|
@@ -1045,8 +971,6 @@ class XML {
|
|
|
1045
971
|
* @return {String} element's content as a string.
|
|
1046
972
|
*
|
|
1047
973
|
* @example
|
|
1048
|
-
* <div>
|
|
1049
|
-
* <code>
|
|
1050
974
|
* let myXML;
|
|
1051
975
|
*
|
|
1052
976
|
* async function setup() {
|
|
@@ -1073,11 +997,8 @@ class XML {
|
|
|
1073
997
|
*
|
|
1074
998
|
* describe(`The text "${content}" written in green on a gray background.`);
|
|
1075
999
|
* }
|
|
1076
|
-
* </code>
|
|
1077
|
-
* </div>
|
|
1078
1000
|
*
|
|
1079
|
-
*
|
|
1080
|
-
* <code>
|
|
1001
|
+
* @example
|
|
1081
1002
|
* function setup() {
|
|
1082
1003
|
* createCanvas(100, 100);
|
|
1083
1004
|
*
|
|
@@ -1099,8 +1020,6 @@ class XML {
|
|
|
1099
1020
|
*
|
|
1100
1021
|
* describe(`The text "${content}" written in green on a gray background.`);
|
|
1101
1022
|
* }
|
|
1102
|
-
* </code>
|
|
1103
|
-
* </div>
|
|
1104
1023
|
*/
|
|
1105
1024
|
getContent(defaultValue) {
|
|
1106
1025
|
let str;
|
|
@@ -1121,8 +1040,6 @@ class XML {
|
|
|
1121
1040
|
* @param {String} content new content for the element.
|
|
1122
1041
|
*
|
|
1123
1042
|
* @example
|
|
1124
|
-
* <div>
|
|
1125
|
-
* <code>
|
|
1126
1043
|
* let myXML;
|
|
1127
1044
|
*
|
|
1128
1045
|
* async function setup() {
|
|
@@ -1157,8 +1074,6 @@ class XML {
|
|
|
1157
1074
|
* `The text "${oldContent}: ${newContent}" written in green on a gray background.`
|
|
1158
1075
|
* );
|
|
1159
1076
|
* }
|
|
1160
|
-
* </code>
|
|
1161
|
-
* </div>
|
|
1162
1077
|
*/
|
|
1163
1078
|
setContent(content) {
|
|
1164
1079
|
if (!this.DOM.children.length) {
|
|
@@ -1175,8 +1090,6 @@ class XML {
|
|
|
1175
1090
|
* @return {String} element as a string.
|
|
1176
1091
|
*
|
|
1177
1092
|
* @example
|
|
1178
|
-
* <div>
|
|
1179
|
-
* <code>
|
|
1180
1093
|
* let myXML;
|
|
1181
1094
|
*
|
|
1182
1095
|
* async function setup() {
|
|
@@ -1213,8 +1126,6 @@ class XML {
|
|
|
1213
1126
|
* // Save the file and close the print stream.
|
|
1214
1127
|
* myWriter.close();
|
|
1215
1128
|
* }
|
|
1216
|
-
* </code>
|
|
1217
|
-
* </div>
|
|
1218
1129
|
*/
|
|
1219
1130
|
serialize() {
|
|
1220
1131
|
const xmlSerializer = new XMLSerializer();
|
|
@@ -1245,8 +1156,6 @@ function xml(p5, fn){
|
|
|
1245
1156
|
*
|
|
1246
1157
|
* @class p5.XML
|
|
1247
1158
|
* @example
|
|
1248
|
-
* <div>
|
|
1249
|
-
* <code>
|
|
1250
1159
|
* let myXML;
|
|
1251
1160
|
*
|
|
1252
1161
|
* async function setup() {
|
|
@@ -1282,8 +1191,6 @@ function xml(p5, fn){
|
|
|
1282
1191
|
* 'The words "Goat", "Leopard", and "Zebra" written on three separate lines. The text is black on a gray background.'
|
|
1283
1192
|
* );
|
|
1284
1193
|
* }
|
|
1285
|
-
* </code>
|
|
1286
|
-
* </div>
|
|
1287
1194
|
*/
|
|
1288
1195
|
p5.XML = XML;
|
|
1289
1196
|
}
|
package/dist/io/utilities.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import * as fileSaver from 'file-saver';
|
|
2
|
-
|
|
3
1
|
function downloadFile(data, fName, extension) {
|
|
4
2
|
const fx = _checkFileExtension(fName, extension);
|
|
5
3
|
const filename = fx[0];
|
|
@@ -9,7 +7,14 @@ function downloadFile(data, fName, extension) {
|
|
|
9
7
|
saveData = new Blob([data]);
|
|
10
8
|
}
|
|
11
9
|
|
|
12
|
-
|
|
10
|
+
if(document){
|
|
11
|
+
const url = URL.createObjectURL(saveData);
|
|
12
|
+
const link = document.createElement('a');
|
|
13
|
+
link.href = url;
|
|
14
|
+
link.download = filename;
|
|
15
|
+
link.click();
|
|
16
|
+
URL.revokeObjectURL(url);
|
|
17
|
+
}
|
|
13
18
|
}
|
|
14
19
|
|
|
15
20
|
function _checkFileExtension(filename, extension) {
|