node-red-contrib-ax25 1.0.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 (55) hide show
  1. package/.eslintignore +5 -0
  2. package/.prettierignore +7 -0
  3. package/ARCHITECTURE.md +174 -0
  4. package/CONTEXT.md +90 -0
  5. package/MESSAGES.md +314 -0
  6. package/README.md +317 -0
  7. package/examples/beacons.json +130 -0
  8. package/examples/beacons.png +0 -0
  9. package/examples/bye_subflow.json +107 -0
  10. package/examples/bye_subflow.png +0 -0
  11. package/examples/delete_all_my_messages.json +491 -0
  12. package/examples/delete_all_my_messages.png +0 -0
  13. package/examples/get_message_list_subflow.json +129 -0
  14. package/examples/get_message_list_subflow.png +0 -0
  15. package/examples/send_message_subflow.json +367 -0
  16. package/examples/send_message_subflow.png +0 -0
  17. package/examples/send_test_message.json +643 -0
  18. package/examples/send_test_message.png +0 -0
  19. package/jsconfig.json +37 -0
  20. package/lib/agwpe-client-transport.js +99 -0
  21. package/lib/agwpe-frame-builder.js +176 -0
  22. package/lib/agwpe-frame-pretty.js +107 -0
  23. package/lib/ax25-codec.js +382 -0
  24. package/lib/frame-router.js +95 -0
  25. package/lib/frame-segmentation.js +53 -0
  26. package/lib/message-utils.js +59 -0
  27. package/lib/runtime-store.js +94 -0
  28. package/lib/session-registry.js +142 -0
  29. package/local/buffer_compare.json +135 -0
  30. package/local/debug-d-frame.js +84 -0
  31. package/local/raw-out-test.json +128 -0
  32. package/nodes/agwpe-client.html +70 -0
  33. package/nodes/agwpe-client.js +771 -0
  34. package/nodes/agwpe-client.js.bak +871 -0
  35. package/nodes/connect.html +128 -0
  36. package/nodes/connect.js +450 -0
  37. package/nodes/decode.html +83 -0
  38. package/nodes/decode.js +56 -0
  39. package/nodes/disconnect.html +55 -0
  40. package/nodes/disconnect.js +47 -0
  41. package/nodes/encode.html +117 -0
  42. package/nodes/encode.js +164 -0
  43. package/nodes/monitor-in.html +48 -0
  44. package/nodes/monitor-in.js +42 -0
  45. package/nodes/raw-in.html +50 -0
  46. package/nodes/raw-in.js +72 -0
  47. package/nodes/raw-out.html +76 -0
  48. package/nodes/raw-out.js +144 -0
  49. package/nodes/send.html +91 -0
  50. package/nodes/send.js +373 -0
  51. package/nodes/ui-in.html +64 -0
  52. package/nodes/ui-in.js +68 -0
  53. package/nodes/ui-out.html +80 -0
  54. package/nodes/ui-out.js +133 -0
  55. package/package.json +47 -0
@@ -0,0 +1,643 @@
1
+ [
2
+ {
3
+ "id": "f1e3c30bea1bbe94",
4
+ "type": "subflow",
5
+ "name": "Bye",
6
+ "info": "",
7
+ "category": "",
8
+ "in": [
9
+ {
10
+ "x": 80,
11
+ "y": 120,
12
+ "wires": [
13
+ {
14
+ "id": "0813fedcec47e075"
15
+ }
16
+ ]
17
+ }
18
+ ],
19
+ "out": [],
20
+ "env": [],
21
+ "meta": {},
22
+ "color": "#DDAA99"
23
+ },
24
+ {
25
+ "id": "0813fedcec47e075",
26
+ "type": "function",
27
+ "z": "f1e3c30bea1bbe94",
28
+ "name": "B",
29
+ "func": "\"use strict\";\n\nif (!msg.sessionId) {\n const errorCode = 'NO_SESSION_ID';\n const errorText = \"sessionID not found\";\n\n node.error(`[${errorCode}] ${errorText}`);\n\n return [{\n status: 'error',\n errorCode,\n errorText,\n msg,\n }, null];\n}\n\nreturn [null, {\n sessionId: msg.sessionId,\n command: 'send',\n payload: 'B',\n timeout: 30000,\n}];\n",
30
+ "outputs": 2,
31
+ "timeout": 0,
32
+ "noerr": 0,
33
+ "initialize": "",
34
+ "finalize": "",
35
+ "libs": [],
36
+ "x": 210,
37
+ "y": 120,
38
+ "wires": [
39
+ [
40
+ "637170b1c7227488"
41
+ ],
42
+ [
43
+ "1e49e3218b1dd308"
44
+ ]
45
+ ]
46
+ },
47
+ {
48
+ "id": "1e49e3218b1dd308",
49
+ "type": "send",
50
+ "z": "f1e3c30bea1bbe94",
51
+ "name": "",
52
+ "timeout": "",
53
+ "waitFor": "",
54
+ "x": 390,
55
+ "y": 160,
56
+ "wires": [
57
+ [
58
+ "e3ab85e4461b92a5"
59
+ ],
60
+ [
61
+ "fed58202ceb48e13"
62
+ ]
63
+ ]
64
+ },
65
+ {
66
+ "id": "e3ab85e4461b92a5",
67
+ "type": "function",
68
+ "z": "f1e3c30bea1bbe94",
69
+ "name": "check error",
70
+ "func": "\"use strict\";\n\nif (msg.status === 'error') {\n node.error(`[${msg.errorCode}] ${msg.errorText}`, msg);\n return msg;\n}\nreturn null;",
71
+ "outputs": 1,
72
+ "timeout": 0,
73
+ "noerr": 0,
74
+ "initialize": "",
75
+ "finalize": "",
76
+ "libs": [],
77
+ "x": 610,
78
+ "y": 140,
79
+ "wires": [
80
+ [
81
+ "fed58202ceb48e13"
82
+ ]
83
+ ]
84
+ },
85
+ {
86
+ "id": "fed58202ceb48e13",
87
+ "type": "disconnect",
88
+ "z": "f1e3c30bea1bbe94",
89
+ "name": "",
90
+ "x": 810,
91
+ "y": 180,
92
+ "wires": [
93
+ []
94
+ ]
95
+ },
96
+ {
97
+ "id": "637170b1c7227488",
98
+ "type": "disconnect",
99
+ "z": "f1e3c30bea1bbe94",
100
+ "name": "",
101
+ "x": 410,
102
+ "y": 80,
103
+ "wires": [
104
+ []
105
+ ]
106
+ },
107
+ {
108
+ "id": "f7f34a0fbba6409d",
109
+ "type": "subflow",
110
+ "name": "Send message",
111
+ "info": "",
112
+ "category": "",
113
+ "in": [
114
+ {
115
+ "x": 100,
116
+ "y": 120,
117
+ "wires": [
118
+ {
119
+ "id": "090399aff5479949"
120
+ }
121
+ ]
122
+ }
123
+ ],
124
+ "out": [
125
+ {
126
+ "x": 410,
127
+ "y": 540,
128
+ "wires": [
129
+ {
130
+ "id": "1afee35f8b39aeae",
131
+ "port": 0
132
+ }
133
+ ]
134
+ },
135
+ {
136
+ "x": 400,
137
+ "y": 440,
138
+ "wires": [
139
+ {
140
+ "id": "b03019b9ac2774bd",
141
+ "port": 1
142
+ }
143
+ ]
144
+ }
145
+ ],
146
+ "env": [],
147
+ "meta": {},
148
+ "color": "#DDAA99",
149
+ "inputLabels": [
150
+ "Input"
151
+ ],
152
+ "outputLabels": [
153
+ "Error",
154
+ "Ok"
155
+ ]
156
+ },
157
+ {
158
+ "id": "b03019b9ac2774bd",
159
+ "type": "function",
160
+ "z": "f7f34a0fbba6409d",
161
+ "name": "done",
162
+ "func": "\"use strict\";\n\nif (!msg.match || !msg.match.startsWith('ENTER COMMAND')) {\n node.error(\"Expected ENTER COMMAND\", msg);\n return [{ sessionId: msg.sessionId }, null];\n}\n\nflow.set(msg.sessionId, undefined);\n\nreturn [null, { sessionId: msg.sessionId }];\n",
163
+ "outputs": 2,
164
+ "timeout": 0,
165
+ "noerr": 0,
166
+ "initialize": "",
167
+ "finalize": "",
168
+ "libs": [],
169
+ "x": 230,
170
+ "y": 420,
171
+ "wires": [
172
+ [
173
+ "4b0c0af1ad7ff1f2"
174
+ ],
175
+ []
176
+ ]
177
+ },
178
+ {
179
+ "id": "1f73bfe9965d5eba",
180
+ "type": "send",
181
+ "z": "f7f34a0fbba6409d",
182
+ "name": "",
183
+ "timeout": "",
184
+ "waitFor": "",
185
+ "x": 510,
186
+ "y": 320,
187
+ "wires": [
188
+ [
189
+ "f297ea382d23401a"
190
+ ],
191
+ [
192
+ "b03019b9ac2774bd"
193
+ ]
194
+ ]
195
+ },
196
+ {
197
+ "id": "55133ce425ecb905",
198
+ "type": "function",
199
+ "z": "f7f34a0fbba6409d",
200
+ "name": "message",
201
+ "func": "\"use strict\";\n\nif (!msg.match || !msg.match.startsWith('ENTER MESSAGE')) {\n node.error(\"Expected ENTER MESSAGE\", msg);\n return [{ sessionId: msg.sessionId }, null];\n}\n\nconst p = flow.get(msg.sessionId);\n\nconst payload = p.message.split(/\\r\\n|\\r|\\n/);\npayload.push('/ex');\n\nreturn [null, {\n sessionId: msg.sessionId,\n payload,\n waitFor: \"^ENTER COMMAND\",\n timeout: 30000,\n}];\n",
202
+ "outputs": 2,
203
+ "timeout": 0,
204
+ "noerr": 0,
205
+ "initialize": "",
206
+ "finalize": "",
207
+ "libs": [],
208
+ "x": 240,
209
+ "y": 320,
210
+ "wires": [
211
+ [
212
+ "5535e8c84873b0cf"
213
+ ],
214
+ [
215
+ "1f73bfe9965d5eba"
216
+ ]
217
+ ]
218
+ },
219
+ {
220
+ "id": "3b57302d2e4b02e0",
221
+ "type": "send",
222
+ "z": "f7f34a0fbba6409d",
223
+ "name": "",
224
+ "timeout": "",
225
+ "waitFor": "",
226
+ "x": 510,
227
+ "y": 220,
228
+ "wires": [
229
+ [
230
+ "5f4f636755d763be"
231
+ ],
232
+ [
233
+ "55133ce425ecb905"
234
+ ]
235
+ ]
236
+ },
237
+ {
238
+ "id": "373827068969f974",
239
+ "type": "function",
240
+ "z": "f7f34a0fbba6409d",
241
+ "name": "subject",
242
+ "func": "\"use strict\";\n\nif (!msg.match || !msg.match.startsWith('SUBJECT')) {\n node.error(\"Expected SUBJECT\", msg);\n return [{ sessionId: msg.sessionId }, null];\n}\n\nconst p = flow.get(msg.sessionId);\n\nreturn [null, {\n sessionId: msg.sessionId,\n payload: p.subject,\n waitFor: \"^ENTER MESSAGE\",\n timeout: 30000,\n}];\n",
243
+ "outputs": 2,
244
+ "timeout": 0,
245
+ "noerr": 0,
246
+ "initialize": "",
247
+ "finalize": "",
248
+ "libs": [],
249
+ "x": 240,
250
+ "y": 220,
251
+ "wires": [
252
+ [
253
+ "c64ee163811b7b1c"
254
+ ],
255
+ [
256
+ "3b57302d2e4b02e0"
257
+ ]
258
+ ]
259
+ },
260
+ {
261
+ "id": "5cf73512bec967fe",
262
+ "type": "send",
263
+ "z": "f7f34a0fbba6409d",
264
+ "name": "",
265
+ "timeout": "",
266
+ "waitFor": "",
267
+ "x": 510,
268
+ "y": 120,
269
+ "wires": [
270
+ [
271
+ "1821e4baa068a563"
272
+ ],
273
+ [
274
+ "373827068969f974"
275
+ ]
276
+ ]
277
+ },
278
+ {
279
+ "id": "090399aff5479949",
280
+ "type": "function",
281
+ "z": "f7f34a0fbba6409d",
282
+ "name": "ST",
283
+ "func": "\"use strict\";\n\nconst required = [\"sessionId\", \"to\", \"subject\", \"message\"];\n\nfor (let i = 0; i < required.length; i++) {\n const p = required[i];\n \n if (!msg.hasOwnProperty(p) || msg[p].length === 0) {\n const errorCode = 'PAYLOAD_INVALID';\n const errorText = p + \" not found\";\n\n node.error(`[${errorCode}] ${errorText}`);\n\n return [{\n sessionId: msg.sessionId,\n status: 'error',\n errorCode,\n errorText,\n msg,\n }, null];\n }\n}\n\nflow.set(msg.sessionId, {\n to: msg.to,\n subject: msg.subject,\n message: msg.message\n});\n\nreturn [null, {\n sessionId: msg.sessionId,\n payload: \"ST \" + msg.to,\n waitFor: \"^SUBJECT\",\n timeout: 30000,\n}];",
284
+ "outputs": 2,
285
+ "timeout": 0,
286
+ "noerr": 0,
287
+ "initialize": "",
288
+ "finalize": "",
289
+ "libs": [],
290
+ "x": 230,
291
+ "y": 120,
292
+ "wires": [
293
+ [
294
+ "f711de2a83d0482b"
295
+ ],
296
+ [
297
+ "5cf73512bec967fe"
298
+ ]
299
+ ]
300
+ },
301
+ {
302
+ "id": "1afee35f8b39aeae",
303
+ "type": "link in",
304
+ "z": "f7f34a0fbba6409d",
305
+ "name": "error",
306
+ "links": [
307
+ "f711de2a83d0482b",
308
+ "c64ee163811b7b1c",
309
+ "5535e8c84873b0cf",
310
+ "4b0c0af1ad7ff1f2",
311
+ "81e3e712c3900aa4",
312
+ "1292b88c4fa4bb3b",
313
+ "87ab14e10118b86d"
314
+ ],
315
+ "x": 255,
316
+ "y": 540,
317
+ "wires": [
318
+ []
319
+ ]
320
+ },
321
+ {
322
+ "id": "4b0c0af1ad7ff1f2",
323
+ "type": "link out",
324
+ "z": "f7f34a0fbba6409d",
325
+ "name": "link out 38",
326
+ "mode": "link",
327
+ "links": [
328
+ "1afee35f8b39aeae"
329
+ ],
330
+ "x": 375,
331
+ "y": 400,
332
+ "wires": []
333
+ },
334
+ {
335
+ "id": "f711de2a83d0482b",
336
+ "type": "link out",
337
+ "z": "f7f34a0fbba6409d",
338
+ "name": "link out 35",
339
+ "mode": "link",
340
+ "links": [
341
+ "1afee35f8b39aeae"
342
+ ],
343
+ "x": 375,
344
+ "y": 80,
345
+ "wires": []
346
+ },
347
+ {
348
+ "id": "c64ee163811b7b1c",
349
+ "type": "link out",
350
+ "z": "f7f34a0fbba6409d",
351
+ "name": "link out 36",
352
+ "mode": "link",
353
+ "links": [
354
+ "1afee35f8b39aeae"
355
+ ],
356
+ "x": 375,
357
+ "y": 200,
358
+ "wires": []
359
+ },
360
+ {
361
+ "id": "5535e8c84873b0cf",
362
+ "type": "link out",
363
+ "z": "f7f34a0fbba6409d",
364
+ "name": "link out 37",
365
+ "mode": "link",
366
+ "links": [
367
+ "1afee35f8b39aeae"
368
+ ],
369
+ "x": 375,
370
+ "y": 300,
371
+ "wires": []
372
+ },
373
+ {
374
+ "id": "87ab14e10118b86d",
375
+ "type": "link out",
376
+ "z": "f7f34a0fbba6409d",
377
+ "name": "link out 41",
378
+ "mode": "link",
379
+ "links": [
380
+ "1afee35f8b39aeae"
381
+ ],
382
+ "x": 885,
383
+ "y": 300,
384
+ "wires": []
385
+ },
386
+ {
387
+ "id": "1292b88c4fa4bb3b",
388
+ "type": "link out",
389
+ "z": "f7f34a0fbba6409d",
390
+ "name": "link out 40",
391
+ "mode": "link",
392
+ "links": [
393
+ "1afee35f8b39aeae"
394
+ ],
395
+ "x": 895,
396
+ "y": 200,
397
+ "wires": []
398
+ },
399
+ {
400
+ "id": "81e3e712c3900aa4",
401
+ "type": "link out",
402
+ "z": "f7f34a0fbba6409d",
403
+ "name": "link out 39",
404
+ "mode": "link",
405
+ "links": [
406
+ "1afee35f8b39aeae"
407
+ ],
408
+ "x": 895,
409
+ "y": 100,
410
+ "wires": []
411
+ },
412
+ {
413
+ "id": "1821e4baa068a563",
414
+ "type": "function",
415
+ "z": "f7f34a0fbba6409d",
416
+ "name": "check error",
417
+ "func": "\"use strict\";\n\nif (msg.status === 'error') {\n node.error(`[${msg.errorCode}] ${msg.errorText}`, msg);\n return msg;\n}\nreturn null;",
418
+ "outputs": 1,
419
+ "timeout": 0,
420
+ "noerr": 0,
421
+ "initialize": "",
422
+ "finalize": "",
423
+ "libs": [],
424
+ "x": 750,
425
+ "y": 100,
426
+ "wires": [
427
+ [
428
+ "81e3e712c3900aa4"
429
+ ]
430
+ ]
431
+ },
432
+ {
433
+ "id": "5f4f636755d763be",
434
+ "type": "function",
435
+ "z": "f7f34a0fbba6409d",
436
+ "name": "check error",
437
+ "func": "\"use strict\";\n\nif (msg.status === 'error') {\n node.error(`[${msg.errorCode}] ${msg.errorText}`, msg);\n return msg;\n}\nreturn null;",
438
+ "outputs": 1,
439
+ "timeout": 0,
440
+ "noerr": 0,
441
+ "initialize": "",
442
+ "finalize": "",
443
+ "libs": [],
444
+ "x": 750,
445
+ "y": 200,
446
+ "wires": [
447
+ [
448
+ "1292b88c4fa4bb3b"
449
+ ]
450
+ ]
451
+ },
452
+ {
453
+ "id": "f297ea382d23401a",
454
+ "type": "function",
455
+ "z": "f7f34a0fbba6409d",
456
+ "name": "check error",
457
+ "func": "\"use strict\";\n\nif (msg.status === 'error') {\n node.error(`[${msg.errorCode}] ${msg.errorText}`, msg);\n return msg;\n}\nreturn null;",
458
+ "outputs": 1,
459
+ "timeout": 0,
460
+ "noerr": 0,
461
+ "initialize": "",
462
+ "finalize": "",
463
+ "libs": [],
464
+ "x": 750,
465
+ "y": 300,
466
+ "wires": [
467
+ [
468
+ "87ab14e10118b86d"
469
+ ]
470
+ ]
471
+ },
472
+ {
473
+ "id": "0ee7876edf9c599f",
474
+ "type": "tab",
475
+ "label": "Send message test",
476
+ "disabled": false,
477
+ "info": "",
478
+ "env": []
479
+ },
480
+ {
481
+ "id": "8ab37ba877da5e27",
482
+ "type": "connect",
483
+ "z": "0ee7876edf9c599f",
484
+ "client": "663651df790ce7b1",
485
+ "name": "",
486
+ "source": "N0CALL",
487
+ "destination": "N0CALL-1",
488
+ "via": "",
489
+ "mode": "line",
490
+ "timeout": "30000",
491
+ "waitFor": "^ENTER COMMAND",
492
+ "x": 400,
493
+ "y": 100,
494
+ "wires": [
495
+ [
496
+ "42a0cf9ec1d7819b"
497
+ ],
498
+ [
499
+ "0435a297de1eaa16"
500
+ ]
501
+ ]
502
+ },
503
+ {
504
+ "id": "b4bb79a786fe17d5",
505
+ "type": "subflow:f7f34a0fbba6409d",
506
+ "z": "0ee7876edf9c599f",
507
+ "name": "",
508
+ "x": 160,
509
+ "y": 260,
510
+ "wires": [
511
+ [
512
+ "233c767d70d661e8"
513
+ ],
514
+ [
515
+ "8632ba6c0867ed56"
516
+ ]
517
+ ]
518
+ },
519
+ {
520
+ "id": "8632ba6c0867ed56",
521
+ "type": "subflow:f1e3c30bea1bbe94",
522
+ "z": "0ee7876edf9c599f",
523
+ "name": "",
524
+ "x": 150,
525
+ "y": 340,
526
+ "wires": []
527
+ },
528
+ {
529
+ "id": "0435a297de1eaa16",
530
+ "type": "function",
531
+ "z": "0ee7876edf9c599f",
532
+ "name": "test message",
533
+ "func": "\"use strict\";\n\nreturn {\n sessionId: msg.sessionId,\n to: 'TEST',\n subject: `Simple test message`,\n message: 'This is a test, this is only a test.',\n}",
534
+ "outputs": 1,
535
+ "timeout": 0,
536
+ "noerr": 0,
537
+ "initialize": "",
538
+ "finalize": "",
539
+ "libs": [],
540
+ "x": 160,
541
+ "y": 180,
542
+ "wires": [
543
+ [
544
+ "b4bb79a786fe17d5"
545
+ ]
546
+ ]
547
+ },
548
+ {
549
+ "id": "1eee563566e53d47",
550
+ "type": "inject",
551
+ "z": "0ee7876edf9c599f",
552
+ "name": "Send message test",
553
+ "props": [],
554
+ "repeat": "",
555
+ "crontab": "",
556
+ "once": false,
557
+ "onceDelay": 0.1,
558
+ "topic": "",
559
+ "x": 170,
560
+ "y": 100,
561
+ "wires": [
562
+ [
563
+ "8ab37ba877da5e27"
564
+ ]
565
+ ]
566
+ },
567
+ {
568
+ "id": "75cdd0c9da8db594",
569
+ "type": "disconnect",
570
+ "z": "0ee7876edf9c599f",
571
+ "name": "",
572
+ "x": 830,
573
+ "y": 80,
574
+ "wires": [
575
+ []
576
+ ]
577
+ },
578
+ {
579
+ "id": "42a0cf9ec1d7819b",
580
+ "type": "function",
581
+ "z": "0ee7876edf9c599f",
582
+ "name": "check error",
583
+ "func": "\"use strict\";\n\nif (msg.status === 'error') {\n node.error(`[${msg.errorCode}] ${msg.errorText}`, msg);\n return msg;\n}\nreturn null;",
584
+ "outputs": 1,
585
+ "timeout": 0,
586
+ "noerr": 0,
587
+ "initialize": "",
588
+ "finalize": "",
589
+ "libs": [],
590
+ "x": 630,
591
+ "y": 80,
592
+ "wires": [
593
+ [
594
+ "75cdd0c9da8db594"
595
+ ]
596
+ ]
597
+ },
598
+ {
599
+ "id": "2d6e7302e19493f0",
600
+ "type": "disconnect",
601
+ "z": "0ee7876edf9c599f",
602
+ "name": "",
603
+ "x": 830,
604
+ "y": 240,
605
+ "wires": [
606
+ []
607
+ ]
608
+ },
609
+ {
610
+ "id": "233c767d70d661e8",
611
+ "type": "function",
612
+ "z": "0ee7876edf9c599f",
613
+ "name": "check error",
614
+ "func": "\"use strict\";\n\nif (msg.status === 'error') {\n node.error(`[${msg.errorCode}] ${msg.errorText}`, msg);\n return msg;\n}\nreturn null;",
615
+ "outputs": 1,
616
+ "timeout": 0,
617
+ "noerr": 0,
618
+ "initialize": "",
619
+ "finalize": "",
620
+ "libs": [],
621
+ "x": 630,
622
+ "y": 240,
623
+ "wires": [
624
+ [
625
+ "2d6e7302e19493f0"
626
+ ]
627
+ ]
628
+ },
629
+ {
630
+ "id": "663651df790ce7b1",
631
+ "type": "agwpe-client",
632
+ "name": "win10 AGWPE",
633
+ "host": "192.168.68.11",
634
+ "port": 8000,
635
+ "callsigns": "N1CALL",
636
+ "username": "",
637
+ "password": "",
638
+ "monitor": false,
639
+ "raw": true,
640
+ "reconnect": true,
641
+ "reconnectDelay": 5000
642
+ }
643
+ ]
Binary file
package/jsconfig.json ADDED
@@ -0,0 +1,37 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2020",
4
+ "module": "commonjs",
5
+ "lib": ["ES2020"],
6
+ "allowJs": true,
7
+ "checkJs": false,
8
+ "strict": false,
9
+ "esModuleInterop": true,
10
+ "skipLibCheck": true,
11
+ "forceConsistentCasingInFileNames": true,
12
+ "resolveJsonModule": true,
13
+ "declaration": false,
14
+ "declarationMap": false,
15
+ "sourceMap": true,
16
+ "baseUrl": ".",
17
+ "paths": {
18
+ "@lib/*": ["lib/*"],
19
+ "@nodes/*": ["nodes/*"],
20
+ "@test/*": ["test/*"],
21
+ "@helpers/*": ["test/helpers/*"],
22
+ "@fixtures/*": ["test/fixtures/*"]
23
+ }
24
+ },
25
+ "include": [
26
+ "nodes/**/*",
27
+ "lib/**/*",
28
+ "test/**/*",
29
+ "examples/**/*"
30
+ ],
31
+ "exclude": [
32
+ "node_modules",
33
+ ".git",
34
+ "dist",
35
+ "build"
36
+ ]
37
+ }