convert-csv-to-json 4.2.0 → 4.4.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 (60) hide show
  1. package/.eslintignore +3 -0
  2. package/.eslintrc.json +48 -0
  3. package/.github/workflows/ci-cd.yml +28 -2
  4. package/docs/api/BrowserApi.html +2435 -0
  5. package/docs/api/BrowserApiError.html +522 -0
  6. package/docs/api/ConfigurationError.html +594 -0
  7. package/docs/api/CsvFormatError.html +530 -0
  8. package/docs/api/CsvParsingError.html +384 -0
  9. package/docs/api/CsvToJson.html +3136 -0
  10. package/docs/api/CsvToJsonAsync.html +2672 -0
  11. package/docs/api/FileOperationError.html +270 -0
  12. package/docs/api/FileUtils.html +1012 -0
  13. package/docs/api/InputValidationError.html +293 -0
  14. package/docs/api/JsonUtil.html +340 -0
  15. package/docs/api/JsonValidationError.html +247 -0
  16. package/docs/api/fonts/OpenSans-Bold-webfont.eot +0 -0
  17. package/docs/api/fonts/OpenSans-Bold-webfont.svg +1830 -0
  18. package/docs/api/fonts/OpenSans-Bold-webfont.woff +0 -0
  19. package/docs/api/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  20. package/docs/api/fonts/OpenSans-BoldItalic-webfont.svg +1830 -0
  21. package/docs/api/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  22. package/docs/api/fonts/OpenSans-Italic-webfont.eot +0 -0
  23. package/docs/api/fonts/OpenSans-Italic-webfont.svg +1830 -0
  24. package/docs/api/fonts/OpenSans-Italic-webfont.woff +0 -0
  25. package/docs/api/fonts/OpenSans-Light-webfont.eot +0 -0
  26. package/docs/api/fonts/OpenSans-Light-webfont.svg +1831 -0
  27. package/docs/api/fonts/OpenSans-Light-webfont.woff +0 -0
  28. package/docs/api/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  29. package/docs/api/fonts/OpenSans-LightItalic-webfont.svg +1835 -0
  30. package/docs/api/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  31. package/docs/api/fonts/OpenSans-Regular-webfont.eot +0 -0
  32. package/docs/api/fonts/OpenSans-Regular-webfont.svg +1831 -0
  33. package/docs/api/fonts/OpenSans-Regular-webfont.woff +0 -0
  34. package/docs/api/global.html +3315 -0
  35. package/docs/api/index.html +326 -0
  36. package/docs/api/index.js.html +341 -0
  37. package/docs/api/scripts/linenumber.js +25 -0
  38. package/docs/api/scripts/prettify/Apache-License-2.0.txt +202 -0
  39. package/docs/api/scripts/prettify/lang-css.js +2 -0
  40. package/docs/api/scripts/prettify/prettify.js +28 -0
  41. package/docs/api/src_browserApi.js.html +271 -0
  42. package/docs/api/src_csvToJson.js.html +605 -0
  43. package/docs/api/src_csvToJsonAsync.js.html +244 -0
  44. package/docs/api/src_util_errors.js.html +374 -0
  45. package/docs/api/src_util_fileUtils.js.html +147 -0
  46. package/docs/api/src_util_jsonUtils.js.html +75 -0
  47. package/docs/api/src_util_stringUtils.js.html +212 -0
  48. package/docs/api/styles/jsdoc-default.css +358 -0
  49. package/docs/api/styles/prettify-jsdoc.css +111 -0
  50. package/docs/api/styles/prettify-tomorrow.css +132 -0
  51. package/index.js +109 -32
  52. package/jsdoc.json +17 -0
  53. package/package.json +10 -3
  54. package/src/browserApi.js +96 -4
  55. package/src/csvToJson.js +163 -2
  56. package/src/csvToJsonAsync.js +74 -14
  57. package/src/util/errors.js +96 -0
  58. package/src/util/fileUtils.js +34 -0
  59. package/src/util/jsonUtils.js +8 -0
  60. package/src/util/stringUtils.js +51 -0
@@ -0,0 +1,522 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <title>JSDoc: Class: BrowserApiError</title>
6
+
7
+ <script src="scripts/prettify/prettify.js"> </script>
8
+ <script src="scripts/prettify/lang-css.js"> </script>
9
+ <!--[if lt IE 9]>
10
+ <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
11
+ <![endif]-->
12
+ <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
13
+ <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
14
+ </head>
15
+
16
+ <body>
17
+
18
+ <div id="main">
19
+
20
+ <h1 class="page-title">Class: BrowserApiError</h1>
21
+
22
+
23
+
24
+
25
+
26
+
27
+ <section>
28
+
29
+ <header>
30
+
31
+ <h2><span class="attribs"><span class="type-signature"></span></span>BrowserApiError<span class="signature">(message, context)</span><span class="type-signature"></span></h2>
32
+
33
+ <div class="class-description"><p>Browser-specific errors
34
+ Thrown when browser API operations fail</p></div>
35
+
36
+
37
+ </header>
38
+
39
+ <article>
40
+ <div class="container-overview">
41
+
42
+
43
+
44
+
45
+ <h2>Constructor</h2>
46
+
47
+
48
+
49
+ <h4 class="name" id="BrowserApiError"><span class="type-signature"></span>new BrowserApiError<span class="signature">(message, context)</span><span class="type-signature"></span></h4>
50
+
51
+
52
+
53
+
54
+
55
+
56
+ <div class="description">
57
+ <p>Create a browser API error</p>
58
+ </div>
59
+
60
+
61
+
62
+
63
+
64
+
65
+
66
+
67
+
68
+ <h5>Parameters:</h5>
69
+
70
+
71
+ <table class="params">
72
+ <thead>
73
+ <tr>
74
+
75
+ <th>Name</th>
76
+
77
+
78
+ <th>Type</th>
79
+
80
+
81
+
82
+
83
+
84
+ <th class="last">Description</th>
85
+ </tr>
86
+ </thead>
87
+
88
+ <tbody>
89
+
90
+
91
+ <tr>
92
+
93
+ <td class="name"><code>message</code></td>
94
+
95
+
96
+ <td class="type">
97
+
98
+
99
+ <span class="param-type">string</span>
100
+
101
+
102
+
103
+ </td>
104
+
105
+
106
+
107
+
108
+
109
+ <td class="description last"><p>Error message</p></td>
110
+ </tr>
111
+
112
+
113
+
114
+ <tr>
115
+
116
+ <td class="name"><code>context</code></td>
117
+
118
+
119
+ <td class="type">
120
+
121
+
122
+ <span class="param-type">object</span>
123
+
124
+
125
+
126
+ </td>
127
+
128
+
129
+
130
+
131
+
132
+ <td class="description last"><p>Additional context information (optional)</p></td>
133
+ </tr>
134
+
135
+
136
+ </tbody>
137
+ </table>
138
+
139
+
140
+
141
+
142
+
143
+
144
+ <dl class="details">
145
+
146
+
147
+
148
+
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+
169
+
170
+
171
+ <dt class="tag-source">Source:</dt>
172
+ <dd class="tag-source"><ul class="dummy"><li>
173
+ <a href="src_util_errors.js.html">src/util/errors.js</a>, <a href="src_util_errors.js.html#line266">line 266</a>
174
+ </li></ul></dd>
175
+
176
+
177
+
178
+
179
+
180
+
181
+
182
+ </dl>
183
+
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+ </div>
205
+
206
+
207
+
208
+
209
+
210
+
211
+
212
+
213
+
214
+
215
+
216
+
217
+
218
+
219
+
220
+
221
+ <h3 class="subsection-title">Methods</h3>
222
+
223
+
224
+
225
+
226
+
227
+
228
+
229
+ <h4 class="name" id=".fileReaderNotAvailable"><span class="type-signature">(static) </span>fileReaderNotAvailable<span class="signature">()</span><span class="type-signature"> &rarr; {<a href="BrowserApiError.html">BrowserApiError</a>}</span></h4>
230
+
231
+
232
+
233
+
234
+
235
+
236
+ <div class="description">
237
+ <p>Create error for unavailable FileReader API
238
+ Occurs when browser doesn't support FileReader</p>
239
+ </div>
240
+
241
+
242
+
243
+
244
+
245
+
246
+
247
+
248
+
249
+
250
+
251
+
252
+
253
+ <dl class="details">
254
+
255
+
256
+
257
+
258
+
259
+
260
+
261
+
262
+
263
+
264
+
265
+
266
+
267
+
268
+
269
+
270
+
271
+
272
+
273
+
274
+
275
+
276
+
277
+
278
+
279
+
280
+ <dt class="tag-source">Source:</dt>
281
+ <dd class="tag-source"><ul class="dummy"><li>
282
+ <a href="src_util_errors.js.html">src/util/errors.js</a>, <a href="src_util_errors.js.html#line283">line 283</a>
283
+ </li></ul></dd>
284
+
285
+
286
+
287
+
288
+
289
+
290
+
291
+ </dl>
292
+
293
+
294
+
295
+
296
+
297
+
298
+
299
+
300
+
301
+
302
+
303
+
304
+
305
+
306
+
307
+ <h5>Returns:</h5>
308
+
309
+
310
+ <div class="param-desc">
311
+ <p>Configured error instance</p>
312
+ </div>
313
+
314
+
315
+
316
+ <dl>
317
+ <dt>
318
+ Type
319
+ </dt>
320
+ <dd>
321
+
322
+ <span class="param-type"><a href="BrowserApiError.html">BrowserApiError</a></span>
323
+
324
+
325
+ </dd>
326
+ </dl>
327
+
328
+
329
+
330
+
331
+
332
+
333
+
334
+
335
+
336
+
337
+
338
+
339
+
340
+ <h4 class="name" id=".parseFileError"><span class="type-signature">(static) </span>parseFileError<span class="signature">(originalError)</span><span class="type-signature"> &rarr; {<a href="BrowserApiError.html">BrowserApiError</a>}</span></h4>
341
+
342
+
343
+
344
+
345
+
346
+
347
+ <div class="description">
348
+ <p>Create error for file parsing failure in browser
349
+ Occurs when file read or CSV parse fails</p>
350
+ </div>
351
+
352
+
353
+
354
+
355
+
356
+
357
+
358
+
359
+
360
+ <h5>Parameters:</h5>
361
+
362
+
363
+ <table class="params">
364
+ <thead>
365
+ <tr>
366
+
367
+ <th>Name</th>
368
+
369
+
370
+ <th>Type</th>
371
+
372
+
373
+
374
+
375
+
376
+ <th class="last">Description</th>
377
+ </tr>
378
+ </thead>
379
+
380
+ <tbody>
381
+
382
+
383
+ <tr>
384
+
385
+ <td class="name"><code>originalError</code></td>
386
+
387
+
388
+ <td class="type">
389
+
390
+
391
+ <span class="param-type">Error</span>
392
+
393
+
394
+
395
+ </td>
396
+
397
+
398
+
399
+
400
+
401
+ <td class="description last"><p>The underlying error that occurred</p></td>
402
+ </tr>
403
+
404
+
405
+ </tbody>
406
+ </table>
407
+
408
+
409
+
410
+
411
+
412
+
413
+ <dl class="details">
414
+
415
+
416
+
417
+
418
+
419
+
420
+
421
+
422
+
423
+
424
+
425
+
426
+
427
+
428
+
429
+
430
+
431
+
432
+
433
+
434
+
435
+
436
+
437
+
438
+
439
+
440
+ <dt class="tag-source">Source:</dt>
441
+ <dd class="tag-source"><ul class="dummy"><li>
442
+ <a href="src_util_errors.js.html">src/util/errors.js</a>, <a href="src_util_errors.js.html#line301">line 301</a>
443
+ </li></ul></dd>
444
+
445
+
446
+
447
+
448
+
449
+
450
+
451
+ </dl>
452
+
453
+
454
+
455
+
456
+
457
+
458
+
459
+
460
+
461
+
462
+
463
+
464
+
465
+
466
+
467
+ <h5>Returns:</h5>
468
+
469
+
470
+ <div class="param-desc">
471
+ <p>Configured error instance</p>
472
+ </div>
473
+
474
+
475
+
476
+ <dl>
477
+ <dt>
478
+ Type
479
+ </dt>
480
+ <dd>
481
+
482
+ <span class="param-type"><a href="BrowserApiError.html">BrowserApiError</a></span>
483
+
484
+
485
+ </dd>
486
+ </dl>
487
+
488
+
489
+
490
+
491
+
492
+
493
+
494
+
495
+
496
+
497
+
498
+
499
+
500
+ </article>
501
+
502
+ </section>
503
+
504
+
505
+
506
+
507
+ </div>
508
+
509
+ <nav>
510
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="BrowserApi.html">BrowserApi</a></li><li><a href="BrowserApiError.html">BrowserApiError</a></li><li><a href="ConfigurationError.html">ConfigurationError</a></li><li><a href="CsvFormatError.html">CsvFormatError</a></li><li><a href="CsvParsingError.html">CsvParsingError</a></li><li><a href="CsvToJson.html">CsvToJson</a></li><li><a href="CsvToJsonAsync.html">CsvToJsonAsync</a></li><li><a href="FileOperationError.html">FileOperationError</a></li><li><a href="FileUtils.html">FileUtils</a></li><li><a href="InputValidationError.html">InputValidationError</a></li><li><a href="JsonUtil.html">JsonUtil</a></li><li><a href="JsonValidationError.html">JsonValidationError</a></li></ul><h3>Global</h3><ul><li><a href="global.html#asciiEncoding">asciiEncoding</a></li><li><a href="global.html#base64Encoding">base64Encoding</a></li><li><a href="global.html#browser">browser</a></li><li><a href="global.html#csvStringToJson">csvStringToJson</a></li><li><a href="global.html#csvStringToJsonStringified">csvStringToJsonStringified</a></li><li><a href="global.html#csvToJsonAsync">csvToJsonAsync</a></li><li><a href="global.html#customEncoding">customEncoding</a></li><li><a href="global.html#fieldDelimiter">fieldDelimiter</a></li><li><a href="global.html#formatValueByType">formatValueByType</a></li><li><a href="global.html#generateJsonFileFromCsv">generateJsonFileFromCsv</a></li><li><a href="global.html#getJsonFromCsv">getJsonFromCsv</a></li><li><a href="global.html#hexEncoding">hexEncoding</a></li><li><a href="global.html#indexHeader">indexHeader</a></li><li><a href="global.html#latin1Encoding">latin1Encoding</a></li><li><a href="global.html#mapRows">mapRows</a></li><li><a href="global.html#parseSubArray">parseSubArray</a></li><li><a href="global.html#supportQuotedField">supportQuotedField</a></li><li><a href="global.html#trimHeaderFieldWhiteSpace">trimHeaderFieldWhiteSpace</a></li><li><a href="global.html#ucs2Encoding">ucs2Encoding</a></li><li><a href="global.html#utf16leEncoding">utf16leEncoding</a></li><li><a href="global.html#utf8Encoding">utf8Encoding</a></li></ul>
511
+ </nav>
512
+
513
+ <br class="clear">
514
+
515
+ <footer>
516
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 4.0.5</a> on Fri Mar 20 2026 14:51:14 GMT+0000 (Coordinated Universal Time)
517
+ </footer>
518
+
519
+ <script> prettyPrint(); </script>
520
+ <script src="scripts/linenumber.js"> </script>
521
+ </body>
522
+ </html>