├── .all-contributorsrc
├── .github
├── ISSUE_TEMPLATE
│ └── config.yml
├── dependabot.yml
└── workflows
│ └── prepare-and-deploy.yml
├── .gitignore
├── .gitpod.yml
├── LICENSE
├── README.md
├── package-lock.json
├── package.json
└── src
└── index.js
/.all-contributorsrc:
--------------------------------------------------------------------------------
1 | {
2 | "projectName": "contributors",
3 | "projectOwner": "ScratchAddons",
4 | "repoType": "github",
5 | "repoHost": "https://github.com",
6 | "files": [
7 | "README.md"
8 | ],
9 | "imageSize": 100,
10 | "commit": true,
11 | "commitConvention": "none",
12 | "contributors": [
13 | {
14 | "login": "WorldLanguages",
15 | "name": "David (WL)",
16 | "avatar_url": "https://avatars.githubusercontent.com/u/17484114?v=4",
17 | "profile": "https://github.com/WorldLanguages",
18 | "contributions": [
19 | "projectManagement",
20 | "maintenance",
21 | "ideas",
22 | "business",
23 | "translation",
24 | "mod"
25 | ]
26 | },
27 | {
28 | "login": "apple502j",
29 | "name": "apple502j",
30 | "avatar_url": "https://avatars.githubusercontent.com/u/33279053?v=4",
31 | "profile": "https://github.com/apple502j",
32 | "contributions": [
33 | "maintenance",
34 | "security",
35 | "bug",
36 | "translation",
37 | "mod"
38 | ]
39 | },
40 | {
41 | "login": "tb148",
42 | "name": "Toni Brown",
43 | "avatar_url": "https://avatars.githubusercontent.com/u/28220642?v=4",
44 | "profile": "https://tb148.eu.org/",
45 | "contributions": [
46 | "code",
47 | "tool"
48 | ]
49 | },
50 | {
51 | "login": "BoomerScratch",
52 | "name": "Boomer001",
53 | "avatar_url": "https://avatars.githubusercontent.com/u/60622217?v=4",
54 | "profile": "https://scratch.mit.edu/users/Boomer001/",
55 | "contributions": [
56 | "code"
57 | ]
58 | },
59 | {
60 | "login": "Explosion-Scratch",
61 | "name": "--Explosion--",
62 | "avatar_url": "https://avatars.githubusercontent.com/u/61319150?v=4",
63 | "profile": "https://explosion-scratch.github.io/portfolio",
64 | "contributions": [
65 | "code",
66 | "doc",
67 | "ideas",
68 | "bug",
69 | "mod"
70 | ]
71 | },
72 | {
73 | "login": "GrahamSH-LLK",
74 | "name": "GrahamSH",
75 | "avatar_url": "https://avatars.githubusercontent.com/u/64214252?v=4",
76 | "profile": "https://grahamsh.com",
77 | "contributions": [
78 | "code",
79 | "ideas",
80 | "doc",
81 | "design",
82 | "mod"
83 | ]
84 | },
85 | {
86 | "login": "mxmou",
87 | "name": "Maximouse",
88 | "avatar_url": "https://avatars.githubusercontent.com/u/51849865?v=4",
89 | "profile": "https://scratch.mit.edu/users/Maximouse",
90 | "contributions": [
91 | "code",
92 | "example",
93 | "translation",
94 | "bug"
95 | ]
96 | },
97 | {
98 | "login": "griffpatch",
99 | "name": "griffpatch",
100 | "avatar_url": "https://avatars.githubusercontent.com/u/6737342?v=4",
101 | "profile": "https://github.com/griffpatch",
102 | "contributions": [
103 | "code",
104 | "business"
105 | ]
106 | },
107 | {
108 | "login": "Hans5958",
109 | "name": "Hans5958",
110 | "avatar_url": "https://avatars.githubusercontent.com/u/11584103?v=4",
111 | "profile": "https://hans5958.github.io",
112 | "contributions": [
113 | "code",
114 | "doc",
115 | "ideas",
116 | "tool",
117 | "example"
118 | ]
119 | },
120 | {
121 | "login": "gducrash",
122 | "name": "Ucrash",
123 | "avatar_url": "https://avatars.githubusercontent.com/u/35695734?v=4",
124 | "profile": "https://github.com/gducrash",
125 | "contributions": [
126 | "code",
127 | "design"
128 | ]
129 | },
130 | {
131 | "login": "jeffalo",
132 | "name": "jeffalo",
133 | "avatar_url": "https://avatars.githubusercontent.com/u/40470736?v=4",
134 | "profile": "https://jeffalo.net",
135 | "contributions": [
136 | "code",
137 | "ideas",
138 | "video",
139 | "mod"
140 | ]
141 | },
142 | {
143 | "login": "GarboMuffin",
144 | "name": "Muffin",
145 | "avatar_url": "https://avatars.githubusercontent.com/u/33787854?v=4",
146 | "profile": "https://muffin.ink/",
147 | "contributions": [
148 | "code"
149 | ]
150 | },
151 | {
152 | "login": "towerofnix",
153 | "name": "(quasar) nebula",
154 | "avatar_url": "https://avatars.githubusercontent.com/u/9948030?v=4",
155 | "profile": "https://nebula.ed1.club/stuff/",
156 | "contributions": [
157 | "code",
158 | "bug"
159 | ]
160 | },
161 | {
162 | "login": "NoobTracker",
163 | "name": "NoobTracker",
164 | "avatar_url": "https://avatars.githubusercontent.com/u/63962365?v=4",
165 | "profile": "https://github.com/NoobTracker",
166 | "contributions": [
167 | "code",
168 | "ideas"
169 | ]
170 | },
171 | {
172 | "login": "lholliger",
173 | "name": "Lukas",
174 | "avatar_url": "https://avatars.githubusercontent.com/u/14064434?v=4",
175 | "profile": "https://holliger.me",
176 | "contributions": [
177 | "code"
178 | ]
179 | },
180 | {
181 | "login": "easrng",
182 | "name": "easrng",
183 | "avatar_url": "https://avatars.githubusercontent.com/u/23086727?v=4",
184 | "profile": "https://easrng.net",
185 | "contributions": [
186 | "code"
187 | ]
188 | },
189 | {
190 | "login": "devxan",
191 | "name": "Xan",
192 | "avatar_url": "https://avatars.githubusercontent.com/u/57809064?v=4",
193 | "profile": "https://xan.lol",
194 | "contributions": [
195 | "bug",
196 | "ideas",
197 | "doc",
198 | "mod"
199 | ]
200 | },
201 | {
202 | "login": "retronbv",
203 | "name": "retronbv",
204 | "avatar_url": "https://avatars.githubusercontent.com/u/49005044?v=4",
205 | "profile": "https://retron.dev",
206 | "contributions": [
207 | "code",
208 | "ideas",
209 | "mod"
210 | ]
211 | },
212 | {
213 | "login": "PlatinumPhoenix",
214 | "name": "PlatinumPhoenix",
215 | "avatar_url": "https://avatars.githubusercontent.com/u/16313728?v=4",
216 | "profile": "https://github.com/PlatinumPhoenix",
217 | "contributions": [
218 | "ideas"
219 | ]
220 | },
221 | {
222 | "login": "scratchusernamemrtbts",
223 | "name": "meepooh",
224 | "avatar_url": "https://avatars.githubusercontent.com/u/66320961?v=4",
225 | "profile": "https://about-mrtbts.github.io/mrtbts",
226 | "contributions": [
227 | "ideas",
228 | "bug",
229 | "translation",
230 | "code"
231 | ]
232 | },
233 | {
234 | "login": "DroneBetter",
235 | "name": "DroneBetter",
236 | "avatar_url": "https://avatars.githubusercontent.com/u/58664547?v=4",
237 | "profile": "https://github.com/DroneBetter",
238 | "contributions": [
239 | "ideas"
240 | ]
241 | },
242 | {
243 | "login": "Geotale",
244 | "name": "Geotale",
245 | "avatar_url": "https://avatars.githubusercontent.com/u/72356786?v=4",
246 | "profile": "https://github.com/Geotale",
247 | "contributions": [
248 | "code",
249 | "ideas"
250 | ]
251 | },
252 | {
253 | "login": "ZenithRogue",
254 | "name": "Zenith",
255 | "avatar_url": "https://avatars.githubusercontent.com/u/11393734?v=4",
256 | "profile": "https://zenithknig.ht/",
257 | "contributions": [
258 | "code",
259 | "ideas"
260 | ]
261 | },
262 | {
263 | "login": "Purple-Hacker",
264 | "name": "Aksel Salmi",
265 | "avatar_url": "https://avatars.githubusercontent.com/u/63299718?v=4",
266 | "profile": "https://Purplehacker.com",
267 | "contributions": [
268 | "code"
269 | ]
270 | },
271 | {
272 | "login": "lucasBent",
273 | "name": "Lucas Bent",
274 | "avatar_url": "https://avatars.githubusercontent.com/u/49736712?v=4",
275 | "profile": "https://scratch.mit.edu/users/getbent/",
276 | "contributions": [
277 | "code"
278 | ]
279 | },
280 | {
281 | "login": "TheColaber",
282 | "name": "clobr",
283 | "avatar_url": "https://avatars.githubusercontent.com/u/72760579?v=4",
284 | "profile": "https://github.com/TheColaber",
285 | "contributions": [
286 | "code",
287 | "example",
288 | "mod",
289 | "bug"
290 | ]
291 | },
292 | {
293 | "login": "pufferfish101007",
294 | "name": "Pufferfish101007",
295 | "avatar_url": "https://avatars.githubusercontent.com/u/50246616?v=4",
296 | "profile": "https://github.com/pufferfish101007",
297 | "contributions": [
298 | "ideas",
299 | "code",
300 | "bug",
301 | "mod"
302 | ]
303 | },
304 | {
305 | "login": "samuraininja360",
306 | "name": "The Ninja",
307 | "avatar_url": "https://avatars.githubusercontent.com/u/69609060?v=4",
308 | "profile": "https://samuraininja360.github.io",
309 | "contributions": [
310 | "ideas",
311 | "bug"
312 | ]
313 | },
314 | {
315 | "login": "lisa-wolfgang",
316 | "name": "lisa-wolfgang",
317 | "avatar_url": "https://avatars.githubusercontent.com/u/43426138?v=4",
318 | "profile": "https://scratch.mit.edu/users/lisa_wolfgang",
319 | "contributions": [
320 | "ideas",
321 | "bug",
322 | "code",
323 | "doc",
324 | "example"
325 | ]
326 | },
327 | {
328 | "login": "Cool-Scratcher",
329 | "name": "CoolScratcher",
330 | "avatar_url": "https://avatars.githubusercontent.com/u/65724251?v=4",
331 | "profile": "https://github.com/Cool-Scratcher",
332 | "contributions": [
333 | "bug",
334 | "ideas",
335 | "video",
336 | "mod"
337 | ]
338 | },
339 | {
340 | "login": "SparkScratch-P",
341 | "name": "SparkScratch-P",
342 | "avatar_url": "https://avatars.githubusercontent.com/u/73777108?v=4",
343 | "profile": "https://sparkscratch-p.github.io",
344 | "contributions": [
345 | "ideas",
346 | "bug"
347 | ]
348 | },
349 | {
350 | "login": "williamhorning",
351 | "name": "William Horning",
352 | "avatar_url": "https://avatars.githubusercontent.com/u/68466727?v=4",
353 | "profile": "https://williamhorning.eu.org/",
354 | "contributions": [
355 | "doc",
356 | "bug",
357 | "code",
358 | "mod"
359 | ]
360 | },
361 | {
362 | "login": "ianfife",
363 | "name": "Ian Fife",
364 | "avatar_url": "https://avatars.githubusercontent.com/u/50230324?v=4",
365 | "profile": "https://ianfife.github.io",
366 | "contributions": [
367 | "code"
368 | ]
369 | },
370 | {
371 | "login": "Daniel4-Scratch",
372 | "name": "Daniel",
373 | "avatar_url": "https://avatars.githubusercontent.com/u/65277548?v=4",
374 | "profile": "https://daniel4-scratch.is-a.dev",
375 | "contributions": [
376 | "code"
377 | ]
378 | },
379 | {
380 | "login": "qucchia",
381 | "name": "qucchia",
382 | "avatar_url": "https://avatars.githubusercontent.com/u/45072410?v=4",
383 | "profile": "https://github.com/qucchia",
384 | "contributions": [
385 | "code"
386 | ]
387 | },
388 | {
389 | "login": "PhoenixAndStuf",
390 | "name": "AGreatName",
391 | "avatar_url": "https://avatars.githubusercontent.com/u/75099144?v=4",
392 | "profile": "https://github.com/PhoenixAndStuf",
393 | "contributions": [
394 | "ideas"
395 | ]
396 | },
397 | {
398 | "login": "Touchcreator",
399 | "name": "TouchIsNotAGoodCoder",
400 | "avatar_url": "https://avatars.githubusercontent.com/u/64277067?v=4",
401 | "profile": "https://touchcreator.github.io",
402 | "contributions": [
403 | "bug",
404 | "ideas"
405 | ]
406 | },
407 | {
408 | "login": "areeq0325",
409 | "name": "areeq0325",
410 | "avatar_url": "https://avatars.githubusercontent.com/u/85769485?v=4",
411 | "profile": "https://github.com/areeq0325",
412 | "contributions": [
413 | "bug",
414 | "ideas"
415 | ]
416 | },
417 | {
418 | "login": "Marc92020",
419 | "name": "the guy",
420 | "avatar_url": "https://avatars.githubusercontent.com/u/75702334?v=4",
421 | "profile": "https://github.com/Marc92020",
422 | "contributions": [
423 | "bug"
424 | ]
425 | },
426 | {
427 | "login": "RustingRobot",
428 | "name": "RustingRobot",
429 | "avatar_url": "https://avatars.githubusercontent.com/u/50629201?v=4",
430 | "profile": "https://github.com/RustingRobot",
431 | "contributions": [
432 | "translation",
433 | "code"
434 | ]
435 | },
436 | {
437 | "login": "ahmetlii",
438 | "name": "Ahmet",
439 | "avatar_url": "https://avatars.githubusercontent.com/u/63475369?v=4",
440 | "profile": "https://ahmetlii.github.io",
441 | "contributions": [
442 | "translation"
443 | ]
444 | },
445 | {
446 | "login": "locness3",
447 | "name": "locness3",
448 | "avatar_url": "https://avatars.githubusercontent.com/u/37651007?v=4",
449 | "profile": "https://github.com/locness3",
450 | "contributions": [
451 | "translation"
452 | ]
453 | },
454 | {
455 | "login": "superscratch444tre",
456 | "name": "superscratch444tre",
457 | "avatar_url": "https://avatars.githubusercontent.com/u/69812464?v=4",
458 | "profile": "https://github.com/superscratch444tre",
459 | "contributions": [
460 | "translation",
461 | "bug",
462 | "ideas"
463 | ]
464 | },
465 | {
466 | "login": "leahcimto",
467 | "name": "leahcimto",
468 | "avatar_url": "https://avatars.githubusercontent.com/u/68165163?v=4",
469 | "profile": "https://github.com/leahcimto",
470 | "contributions": [
471 | "bug",
472 | "ideas"
473 | ]
474 | },
475 | {
476 | "login": "Thomas282-coder",
477 | "name": "Thomas282",
478 | "avatar_url": "https://avatars.githubusercontent.com/u/75969759?v=4",
479 | "profile": "https://scratch.mit.edu/users/Thomas282/",
480 | "contributions": [
481 | "translation"
482 | ]
483 | },
484 | {
485 | "login": "iqnite",
486 | "name": "PhilippG",
487 | "avatar_url": "https://avatars.githubusercontent.com/u/50552317?v=4",
488 | "profile": "https://iqnite.github.io/",
489 | "contributions": [
490 | "translation",
491 | "ideas",
492 | "bug",
493 | "code",
494 | "mod"
495 | ]
496 | },
497 | {
498 | "login": "gohoski",
499 | "name": "Gleb",
500 | "avatar_url": "https://avatars.githubusercontent.com/u/72347897?v=4",
501 | "profile": "https://github.com/gohoski",
502 | "contributions": [
503 | "translation"
504 | ]
505 | },
506 | {
507 | "login": "itsimpeccable",
508 | "name": "Doruk Sarp Aydın",
509 | "avatar_url": "https://avatars.githubusercontent.com/u/51460403?v=4",
510 | "profile": "https://doruk.dino.icu",
511 | "contributions": [
512 | "translation"
513 | ]
514 | },
515 | {
516 | "login": "z-anonymouz",
517 | "name": "anonymouz-z",
518 | "avatar_url": "https://avatars.githubusercontent.com/u/71985679?v=4",
519 | "profile": "https://scratch.mit.edu/users/anonymous-z",
520 | "contributions": [
521 | "bug",
522 | "translation"
523 | ]
524 | },
525 | {
526 | "login": "cobaltt7",
527 | "name": "cobalt",
528 | "avatar_url": "https://avatars.githubusercontent.com/u/61329810?v=4",
529 | "profile": "https://en.pronouns.page/@redguy15",
530 | "contributions": [
531 | "code",
532 | "ideas",
533 | "bug",
534 | "mod"
535 | ]
536 | },
537 | {
538 | "login": "Secret-chest",
539 | "name": "roundabout-host.com",
540 | "avatar_url": "https://avatars.githubusercontent.com/u/74449186?v=4",
541 | "profile": "https://roundabout-host.com/",
542 | "contributions": [
543 | "ideas",
544 | "translation",
545 | "code"
546 | ]
547 | },
548 | {
549 | "login": "RedLight-Scratch",
550 | "name": "RedLight-Scratch",
551 | "avatar_url": "https://avatars.githubusercontent.com/u/76401850?v=4",
552 | "profile": "https://github.com/RedLight-Scratch",
553 | "contributions": [
554 | "bug"
555 | ]
556 | },
557 | {
558 | "login": "oof-le-oof",
559 | "name": "oof_le_oof",
560 | "avatar_url": "https://avatars.githubusercontent.com/u/74682558?v=4",
561 | "profile": "https://github.com/oof-le-oof",
562 | "contributions": [
563 | "bug",
564 | "ideas"
565 | ]
566 | },
567 | {
568 | "login": "maDU59",
569 | "name": "maDU59_",
570 | "avatar_url": "https://avatars.githubusercontent.com/u/76407125?v=4",
571 | "profile": "https://scratch.mit.edu/users/maDU59_/",
572 | "contributions": [
573 | "ideas",
574 | "translation"
575 | ]
576 | },
577 | {
578 | "login": "robloaks",
579 | "name": "robloaks",
580 | "avatar_url": "https://avatars2.githubusercontent.com/u/61124367?v=4",
581 | "profile": "https://github.com/robloaks",
582 | "contributions": [
583 | "translation"
584 | ]
585 | },
586 | {
587 | "login": "Wilamaxin",
588 | "name": "Wilamaxin",
589 | "avatar_url": "https://avatars.githubusercontent.com/u/63302372?v=4",
590 | "profile": "https://github.com/Wilamaxin",
591 | "contributions": [
592 | "translation"
593 | ]
594 | },
595 | {
596 | "login": "CyberNat2000",
597 | "name": "CyberNat2000",
598 | "avatar_url": "https://avatars.githubusercontent.com/u/77163754?v=4",
599 | "profile": "https://scratch.mit.edu/users/klasa4b/",
600 | "contributions": [
601 | "translation"
602 | ]
603 | },
604 | {
605 | "login": "Riptide-Scratch",
606 | "name": "----Riptide----",
607 | "avatar_url": "https://avatars.githubusercontent.com/u/70417080?v=4",
608 | "profile": "https://github.com/Riptide-Scratch",
609 | "contributions": [
610 | "bug"
611 | ]
612 | },
613 | {
614 | "login": "Wicycool",
615 | "name": "Wicycool",
616 | "avatar_url": "https://avatars.githubusercontent.com/u/38388911?v=4",
617 | "profile": "https://wicy.cool",
618 | "contributions": [
619 | "code"
620 | ]
621 | },
622 | {
623 | "login": "thegAmechanger80",
624 | "name": "thegAmechanger80",
625 | "avatar_url": "https://avatars.githubusercontent.com/u/75179701?v=4",
626 | "profile": "https://github.com/thegAmechanger80",
627 | "contributions": [
628 | "translation"
629 | ]
630 | },
631 | {
632 | "login": "Minemaster552",
633 | "name": "Minemaster552",
634 | "avatar_url": "https://avatars.githubusercontent.com/u/52428014?v=4",
635 | "profile": "https://github.com/Minemaster552",
636 | "contributions": [
637 | "translation"
638 | ]
639 | },
640 | {
641 | "login": "sfederici",
642 | "name": "sfederici",
643 | "avatar_url": "https://avatars.githubusercontent.com/u/2651868?v=4",
644 | "profile": "https://github.com/sfederici",
645 | "contributions": [
646 | "translation",
647 | "ideas",
648 | "bug"
649 | ]
650 | },
651 | {
652 | "login": "zafersafa007",
653 | "name": "zafersafa007",
654 | "avatar_url": "https://avatars.githubusercontent.com/u/71785037?v=4",
655 | "profile": "https://github.com/zafersafa007",
656 | "contributions": [
657 | "translation"
658 | ]
659 | },
660 | {
661 | "login": "Rendangbike",
662 | "name": "RB",
663 | "avatar_url": "https://avatars.githubusercontent.com/u/76770572?v=4",
664 | "profile": "https://github.com/Rendangbike",
665 | "contributions": [
666 | "translation"
667 | ]
668 | },
669 | {
670 | "login": "Jamnik-Klembus",
671 | "name": "HelloYellow",
672 | "avatar_url": "https://avatars.githubusercontent.com/u/76878372?v=4",
673 | "profile": "https://github.com/Jamnik-Klembus",
674 | "contributions": [
675 | "translation"
676 | ]
677 | },
678 | {
679 | "login": "GGORG0",
680 | "name": "GGORG",
681 | "avatar_url": "https://avatars.githubusercontent.com/u/51029895?v=4",
682 | "profile": "https://ggorg.xyz",
683 | "contributions": [
684 | "translation"
685 | ]
686 | },
687 | {
688 | "login": "rens2",
689 | "name": "rens2",
690 | "avatar_url": "https://avatars.githubusercontent.com/u/67419424?v=4",
691 | "profile": "https://github.com/rens2",
692 | "contributions": [
693 | "translation"
694 | ]
695 | },
696 | {
697 | "login": "m0nss",
698 | "name": "M0NS",
699 | "avatar_url": "https://avatars.githubusercontent.com/u/63720689?v=4",
700 | "profile": "https://m0ns.fr",
701 | "contributions": [
702 | "translation"
703 | ]
704 | },
705 | {
706 | "login": "VFDan",
707 | "name": "Luvexina",
708 | "avatar_url": "https://avatars.githubusercontent.com/u/44413950?v=4",
709 | "profile": "https://github.com/VFDan",
710 | "contributions": [
711 | "translation",
712 | "ideas"
713 | ]
714 | },
715 | {
716 | "login": "remixsuper",
717 | "name": "remixsuper",
718 | "avatar_url": "https://avatars.githubusercontent.com/u/74250922?v=4",
719 | "profile": "https://github.com/remixsuper",
720 | "contributions": [
721 | "translation"
722 | ]
723 | },
724 | {
725 | "login": "anatolefr",
726 | "name": "Anatole",
727 | "avatar_url": "https://avatars.githubusercontent.com/u/75946817?v=4",
728 | "profile": "https://anatolefr.github.io/",
729 | "contributions": [
730 | "translation"
731 | ]
732 | },
733 | {
734 | "login": "hatrexpro",
735 | "name": "hatrexpro",
736 | "avatar_url": "https://avatars.githubusercontent.com/u/79562332?v=4",
737 | "profile": "https://github.com/hatrexpro",
738 | "contributions": [
739 | "translation"
740 | ]
741 | },
742 | {
743 | "login": "Barthdry",
744 | "name": "Barthdry",
745 | "avatar_url": "https://avatars.githubusercontent.com/u/67647112?v=4",
746 | "profile": "https://sites.google.com/view/barthdry/home",
747 | "contributions": [
748 | "translation"
749 | ]
750 | },
751 | {
752 | "login": "Genius398",
753 | "name": "Anantjit Chander",
754 | "avatar_url": "https://avatars.githubusercontent.com/u/74092334?v=4",
755 | "profile": "https://genius398.github.io/Genius398/",
756 | "contributions": [
757 | "bug",
758 | "code",
759 | "ideas"
760 | ]
761 | },
762 | {
763 | "login": "SetuCoder",
764 | "name": "Setu Sree Kumar",
765 | "avatar_url": "https://avatars.githubusercontent.com/u/58362876?v=4",
766 | "profile": "https://setusree.carrd.co",
767 | "contributions": [
768 | "code"
769 | ]
770 | },
771 | {
772 | "login": "lightningmc09",
773 | "name": "lightningmc09",
774 | "avatar_url": "https://avatars.githubusercontent.com/u/81425039?v=4",
775 | "profile": "https://github.com/lightningmc09",
776 | "contributions": [
777 | "bug",
778 | "ideas"
779 | ]
780 | },
781 | {
782 | "login": "22yeetz22",
783 | "name": "Lekang Ji",
784 | "avatar_url": "https://avatars.githubusercontent.com/u/74276537?v=4",
785 | "profile": "https://github.com/22yeetz22",
786 | "contributions": [
787 | "bug",
788 | "ideas"
789 | ]
790 | },
791 | {
792 | "login": "Tacodiva",
793 | "name": "Tacodiva",
794 | "avatar_url": "https://avatars.githubusercontent.com/u/27910867?v=4",
795 | "profile": "https://emberj.sh",
796 | "contributions": [
797 | "code",
798 | "ideas",
799 | "bug"
800 | ]
801 | },
802 | {
803 | "login": "Tofixrs",
804 | "name": "to.fix",
805 | "avatar_url": "https://avatars.githubusercontent.com/u/73693639?v=4",
806 | "profile": "https://github.com/Tofixrs",
807 | "contributions": [
808 | "translation"
809 | ]
810 | },
811 | {
812 | "login": "iltersinavv",
813 | "name": "İlter Kayra Güler",
814 | "avatar_url": "https://avatars.githubusercontent.com/u/80217178?v=4",
815 | "profile": "https://github.com/iltersinavv",
816 | "contributions": [
817 | "translation"
818 | ]
819 | },
820 | {
821 | "login": "hello34090",
822 | "name": "hello34090",
823 | "avatar_url": "https://avatars.githubusercontent.com/u/83602831?v=4",
824 | "profile": "https://scratch.mit.edu/users/hello34090/",
825 | "contributions": [
826 | "translation"
827 | ]
828 | },
829 | {
830 | "login": "piw-piw",
831 | "name": "piw-piw",
832 | "avatar_url": "https://avatars.githubusercontent.com/u/76477070?v=4",
833 | "profile": "https://github.com/piw-piw",
834 | "contributions": [
835 | "translation",
836 | "ideas",
837 | "bug"
838 | ]
839 | },
840 | {
841 | "login": "Sly-Little-Fox",
842 | "name": "Sly-Little-Fox",
843 | "avatar_url": "https://avatars.githubusercontent.com/u/69681150?v=4",
844 | "profile": "https://server-backuper.cloud",
845 | "contributions": [
846 | "code",
847 | "translation"
848 | ]
849 | },
850 | {
851 | "login": "DevCascade",
852 | "name": "DevCascade",
853 | "avatar_url": "https://avatars.githubusercontent.com/u/80895875?v=4",
854 | "profile": "https://github.com/DevCascade",
855 | "contributions": [
856 | "translation"
857 | ]
858 | },
859 | {
860 | "login": "SheepTester",
861 | "name": "Sean",
862 | "avatar_url": "https://avatars.githubusercontent.com/u/22133785?v=4",
863 | "profile": "https://sheeptester.github.io/",
864 | "contributions": [
865 | "code"
866 | ]
867 | },
868 | {
869 | "login": "nexensys",
870 | "name": "Xen Soft",
871 | "avatar_url": "https://avatars.githubusercontent.com/u/70162741?v=4",
872 | "profile": "https://nexensys.dev/",
873 | "contributions": [
874 | "code"
875 | ]
876 | },
877 | {
878 | "login": "CST1229",
879 | "name": "CST1229",
880 | "avatar_url": "https://avatars.githubusercontent.com/u/68464103?v=4",
881 | "profile": "https://github.com/CST1229",
882 | "contributions": [
883 | "code",
884 | "bug",
885 | "example",
886 | "mod"
887 | ]
888 | },
889 | {
890 | "login": "ShermanYeung",
891 | "name": "ShermanY",
892 | "avatar_url": "https://avatars.githubusercontent.com/u/69072386?v=4",
893 | "profile": "https://github.com/ShermanYeung",
894 | "contributions": [
895 | "translation"
896 | ]
897 | },
898 | {
899 | "login": "TheBugCoder",
900 | "name": "TheBugCoder",
901 | "avatar_url": "https://avatars.githubusercontent.com/u/67200019?v=4",
902 | "profile": "https://thebugcoder.github.io",
903 | "contributions": [
904 | "translation"
905 | ]
906 | },
907 | {
908 | "login": "Samq64",
909 | "name": "Samq64",
910 | "avatar_url": "https://avatars.githubusercontent.com/u/81489795?v=4",
911 | "profile": "https://samq64.github.io",
912 | "contributions": [
913 | "bug",
914 | "code",
915 | "ideas",
916 | "example",
917 | "video"
918 | ]
919 | },
920 | {
921 | "login": "LankyBox01",
922 | "name": "LankyBox01",
923 | "avatar_url": "https://avatars.githubusercontent.com/u/79767244?v=4",
924 | "profile": "http://lankybox01.glitch.me",
925 | "contributions": [
926 | "code",
927 | "ideas"
928 | ]
929 | },
930 | {
931 | "login": "Medericoder",
932 | "name": "Médéric Niot",
933 | "avatar_url": "https://avatars.githubusercontent.com/u/80577386?v=4",
934 | "profile": "https://scratch.mit.edu/users/Medericoder/",
935 | "contributions": [
936 | "bug",
937 | "ideas",
938 | "translation"
939 | ]
940 | },
941 | {
942 | "login": "PurpleZen",
943 | "name": "LegoManiac04",
944 | "avatar_url": "https://avatars.githubusercontent.com/u/87787046?v=4",
945 | "profile": "https://github.com/PurpleZen",
946 | "contributions": [
947 | "ideas",
948 | "bug"
949 | ]
950 | },
951 | {
952 | "login": "ashishagarwal2023",
953 | "name": "Ashish Agarwal",
954 | "avatar_url": "https://avatars.githubusercontent.com/u/83082760?v=4",
955 | "profile": "https://ashishagarwal.is-a.dev/",
956 | "contributions": [
957 | "ideas"
958 | ]
959 | },
960 | {
961 | "login": "Nik0lyaZ",
962 | "name": "Nikolyas",
963 | "avatar_url": "https://avatars.githubusercontent.com/u/77118530?v=4",
964 | "profile": "https://github.com/Nik0lyaZ",
965 | "contributions": [
966 | "translation"
967 | ]
968 | },
969 | {
970 | "login": "Miala-python",
971 | "name": "Miala",
972 | "avatar_url": "https://avatars.githubusercontent.com/u/65893041?v=4",
973 | "profile": "https://scratch.mit.edu/users/totolune",
974 | "contributions": [
975 | "ideas",
976 | "bug"
977 | ]
978 | },
979 | {
980 | "login": "Sarxzer",
981 | "name": "Sarxzer",
982 | "avatar_url": "https://avatars.githubusercontent.com/u/80457483?v=4",
983 | "profile": "https://sarxzer.xyz",
984 | "contributions": [
985 | "translation"
986 | ]
987 | },
988 | {
989 | "login": "ilbailba",
990 | "name": "Ilyas Zan",
991 | "avatar_url": "https://avatars.githubusercontent.com/u/71350431?v=4",
992 | "profile": "https://github.com/ilbailba",
993 | "contributions": [
994 | "translation",
995 | "ideas"
996 | ]
997 | },
998 | {
999 | "login": "fupicat",
1000 | "name": "Fupi",
1001 | "avatar_url": "https://avatars.githubusercontent.com/u/36973337?v=4",
1002 | "profile": "https://fupicat.github.io",
1003 | "contributions": [
1004 | "bug",
1005 | "translation"
1006 | ]
1007 | },
1008 | {
1009 | "login": "jumpycoke",
1010 | "name": "jumpycoke",
1011 | "avatar_url": "https://avatars.githubusercontent.com/u/97655997?v=4",
1012 | "profile": "https://github.com/jumpycoke",
1013 | "contributions": [
1014 | "ideas"
1015 | ]
1016 | },
1017 | {
1018 | "login": "LercDsgn",
1019 | "name": "LercDsgn",
1020 | "avatar_url": "https://avatars.githubusercontent.com/u/75680333?v=4",
1021 | "profile": "https://github.com/LercDsgn",
1022 | "contributions": [
1023 | "translation"
1024 | ]
1025 | },
1026 | {
1027 | "login": "newcat07",
1028 | "name": "newcat07",
1029 | "avatar_url": "https://avatars.githubusercontent.com/u/97903646?v=4",
1030 | "profile": "https://github.com/newcat07",
1031 | "contributions": [
1032 | "translation"
1033 | ]
1034 | },
1035 | {
1036 | "login": "kebabo13",
1037 | "name": "kebabo",
1038 | "avatar_url": "https://avatars.githubusercontent.com/u/96626459?v=4",
1039 | "profile": "https://github.com/kebabo13",
1040 | "contributions": [
1041 | "translation"
1042 | ]
1043 | },
1044 | {
1045 | "login": "itta611",
1046 | "name": "Itta Funahashi",
1047 | "avatar_url": "https://avatars.githubusercontent.com/u/86896657?v=4",
1048 | "profile": "https://itta.dev",
1049 | "contributions": [
1050 | "code"
1051 | ]
1052 | },
1053 | {
1054 | "login": "Looky1173",
1055 | "name": "Looky1173",
1056 | "avatar_url": "https://avatars.githubusercontent.com/u/60521810?v=4",
1057 | "profile": "https://github.com/Looky1173",
1058 | "contributions": [
1059 | "doc"
1060 | ]
1061 | },
1062 | {
1063 | "login": "ChrisIsBadAtFnF",
1064 | "name": "ChrisIsBadAtFnF",
1065 | "avatar_url": "https://avatars.githubusercontent.com/u/90082208?v=4",
1066 | "profile": "https://github.com/ChrisIsBadAtFnF",
1067 | "contributions": [
1068 | "example"
1069 | ]
1070 | },
1071 | {
1072 | "login": "BarelySmooth",
1073 | "name": "BarelySmooth",
1074 | "avatar_url": "https://avatars.githubusercontent.com/u/83728060?v=4",
1075 | "profile": "https://barelysmooth.github.io",
1076 | "contributions": [
1077 | "example",
1078 | "code"
1079 | ]
1080 | },
1081 | {
1082 | "login": "Chiroyce1",
1083 | "name": "Chiroyce1",
1084 | "avatar_url": "https://avatars.githubusercontent.com/u/97374054?v=4",
1085 | "profile": "https://github.com/Chiroyce1",
1086 | "contributions": [
1087 | "doc",
1088 | "code"
1089 | ]
1090 | },
1091 | {
1092 | "login": "Evrick14",
1093 | "name": "Evrick_14",
1094 | "avatar_url": "https://avatars.githubusercontent.com/u/99140357?v=4",
1095 | "profile": "https://scratch.mit.edu/users/Evrick_14/",
1096 | "contributions": [
1097 | "translation"
1098 | ]
1099 | },
1100 | {
1101 | "login": "Norbiros",
1102 | "name": "Norbiros",
1103 | "avatar_url": "https://avatars.githubusercontent.com/u/89837724?v=4",
1104 | "profile": "https://github.com/Norbiros",
1105 | "contributions": [
1106 | "translation",
1107 | "bug",
1108 | "code",
1109 | "doc"
1110 | ]
1111 | },
1112 | {
1113 | "login": "diaowinner",
1114 | "name": "diaowinner",
1115 | "avatar_url": "https://avatars.githubusercontent.com/u/32033700?v=4",
1116 | "profile": "https://diaowinner.itch.io",
1117 | "contributions": [
1118 | "translation"
1119 | ]
1120 | },
1121 | {
1122 | "login": "Dhuls-Scratch",
1123 | "name": "dhuls",
1124 | "avatar_url": "https://avatars.githubusercontent.com/u/87714852?v=4",
1125 | "profile": "https://github.com/Dhuls-Scratch",
1126 | "contributions": [
1127 | "code",
1128 | "bug"
1129 | ]
1130 | },
1131 | {
1132 | "login": "rimopa",
1133 | "name": "rimopa",
1134 | "avatar_url": "https://avatars.githubusercontent.com/u/97112832?v=4",
1135 | "profile": "https://scratch.mit.edu/users/RIMOPA/",
1136 | "contributions": [
1137 | "example",
1138 | "ideas",
1139 | "translation",
1140 | "bug"
1141 | ]
1142 | },
1143 | {
1144 | "login": "Jazza-231",
1145 | "name": "Jazza",
1146 | "avatar_url": "https://avatars.githubusercontent.com/u/81956724?v=4",
1147 | "profile": "https://github.com/Jazza-231",
1148 | "contributions": [
1149 | "ideas",
1150 | "mod",
1151 | "code"
1152 | ]
1153 | },
1154 | {
1155 | "login": "R081N-08",
1156 | "name": "VeryBlueMan",
1157 | "avatar_url": "https://avatars.githubusercontent.com/u/88439743?v=4",
1158 | "profile": "https://github.com/R081N-08",
1159 | "contributions": [
1160 | "translation"
1161 | ]
1162 | },
1163 | {
1164 | "login": "Carsvroom",
1165 | "name": "Carsvroom",
1166 | "avatar_url": "https://avatars.githubusercontent.com/u/84688137?v=4",
1167 | "profile": "https://github.com/Carsvroom",
1168 | "contributions": [
1169 | "mod"
1170 | ]
1171 | },
1172 | {
1173 | "login": "shock59",
1174 | "name": "Sam Vuckovic",
1175 | "avatar_url": "https://avatars.githubusercontent.com/u/42130427?v=4",
1176 | "profile": "https://samv.me/",
1177 | "contributions": [
1178 | "mod",
1179 | "video",
1180 | "code"
1181 | ]
1182 | },
1183 | {
1184 | "login": "jaydix",
1185 | "name": "Jay",
1186 | "avatar_url": "https://avatars.githubusercontent.com/u/75950907?v=4",
1187 | "profile": "http://8bitosc.net",
1188 | "contributions": [
1189 | "mod"
1190 | ]
1191 | },
1192 | {
1193 | "login": "greatbritdan",
1194 | "name": "Britdan",
1195 | "avatar_url": "https://avatars.githubusercontent.com/u/71894636?v=4",
1196 | "profile": "https://github.com/greatbritdan",
1197 | "contributions": [
1198 | "mod",
1199 | "video"
1200 | ]
1201 | },
1202 | {
1203 | "login": "ChangedRuby",
1204 | "name": "ChangedRuby",
1205 | "avatar_url": "https://avatars.githubusercontent.com/u/65453800?v=4",
1206 | "profile": "https://github.com/ChangedRuby",
1207 | "contributions": [
1208 | "mod",
1209 | "translation"
1210 | ]
1211 | },
1212 | {
1213 | "login": "Chawldol",
1214 | "name": "Chawldol",
1215 | "avatar_url": "https://avatars.githubusercontent.com/u/62511047?v=4",
1216 | "profile": "https://github.com/Chawldol",
1217 | "contributions": [
1218 | "translation"
1219 | ]
1220 | },
1221 | {
1222 | "login": "gaker19sc",
1223 | "name": "gaker19",
1224 | "avatar_url": "https://avatars.githubusercontent.com/u/101197730?v=4",
1225 | "profile": "https://scratch.mit.edu/users/gaker19",
1226 | "contributions": [
1227 | "translation"
1228 | ]
1229 | },
1230 | {
1231 | "login": "BAndris0909",
1232 | "name": "BAndris0909",
1233 | "avatar_url": "https://avatars.githubusercontent.com/u/102458354?v=4",
1234 | "profile": "https://github.com/BAndris0909",
1235 | "contributions": [
1236 | "translation"
1237 | ]
1238 | },
1239 | {
1240 | "login": "DNin01",
1241 | "name": "DNin01",
1242 | "avatar_url": "https://avatars.githubusercontent.com/u/106490990?v=4",
1243 | "profile": "https://github.com/DNin01",
1244 | "contributions": [
1245 | "ideas",
1246 | "code"
1247 | ]
1248 | },
1249 | {
1250 | "login": "CowBloke",
1251 | "name": "CowBloke",
1252 | "avatar_url": "https://avatars.githubusercontent.com/u/108542216?v=4",
1253 | "profile": "https://github.com/CowBloke",
1254 | "contributions": [
1255 | "translation"
1256 | ]
1257 | },
1258 | {
1259 | "login": "Late-Is-Cool",
1260 | "name": "steven phillips",
1261 | "avatar_url": "https://avatars.githubusercontent.com/u/78447219?v=4",
1262 | "profile": "https://github.com/Late-Is-Cool",
1263 | "contributions": [
1264 | "mod"
1265 | ]
1266 | },
1267 | {
1268 | "login": "BroJac5246",
1269 | "name": "BroJac5246",
1270 | "avatar_url": "https://avatars.githubusercontent.com/u/104146239?v=4",
1271 | "profile": "https://scratch.mit.edu/users/jbthepig/",
1272 | "contributions": [
1273 | "code",
1274 | "bug",
1275 | "ideas"
1276 | ]
1277 | },
1278 | {
1279 | "login": "CubesterYT",
1280 | "name": "Cubester",
1281 | "avatar_url": "https://avatars.githubusercontent.com/u/78769806?v=4",
1282 | "profile": "https://github.com/CubesterYT",
1283 | "contributions": [
1284 | "bug",
1285 | "mod"
1286 | ]
1287 | },
1288 | {
1289 | "login": "TheWeirdo600",
1290 | "name": "Weirdo",
1291 | "avatar_url": "https://avatars.githubusercontent.com/u/99914376?v=4",
1292 | "profile": "https://t.co/64mlZgjrBW",
1293 | "contributions": [
1294 | "mod"
1295 | ]
1296 | },
1297 | {
1298 | "login": "disciple256",
1299 | "name": "disciple256",
1300 | "avatar_url": "https://avatars.githubusercontent.com/u/99059596?v=4",
1301 | "profile": "https://github.com/disciple256",
1302 | "contributions": [
1303 | "translation"
1304 | ]
1305 | },
1306 | {
1307 | "login": "GignacPL",
1308 | "name": "GignacPL",
1309 | "avatar_url": "https://avatars.githubusercontent.com/u/78898180?v=4",
1310 | "profile": "https://github.com/GignacPL",
1311 | "contributions": [
1312 | "translation"
1313 | ]
1314 | },
1315 | {
1316 | "login": "OregSamSas",
1317 | "name": "Oreg Sam",
1318 | "avatar_url": "https://avatars.githubusercontent.com/u/101597941?v=4",
1319 | "profile": "https://github.com/OregSamSas",
1320 | "contributions": [
1321 | "translation"
1322 | ]
1323 | },
1324 | {
1325 | "login": "Sup2point0",
1326 | "name": "Sup#2.0",
1327 | "avatar_url": "https://avatars.githubusercontent.com/u/102817779?v=4",
1328 | "profile": "https://sup2point0.github.io",
1329 | "contributions": [
1330 | "translation"
1331 | ]
1332 | },
1333 | {
1334 | "login": "Weredime",
1335 | "name": "Weredime",
1336 | "avatar_url": "https://avatars.githubusercontent.com/u/100447465?v=4",
1337 | "profile": "https://weredime.dev/",
1338 | "contributions": [
1339 | "ideas",
1340 | "code",
1341 | "bug"
1342 | ]
1343 | },
1344 | {
1345 | "login": "Bddj-10",
1346 | "name": "Bddj-10",
1347 | "avatar_url": "https://avatars.githubusercontent.com/u/87530908?v=4",
1348 | "profile": "https://github.com/Bddj-10",
1349 | "contributions": [
1350 | "mod"
1351 | ]
1352 | },
1353 | {
1354 | "login": "LES-11",
1355 | "name": "biker2000",
1356 | "avatar_url": "https://avatars.githubusercontent.com/u/75516401?v=4",
1357 | "profile": "https://scratch.mit.edu/users/Biker2000/",
1358 | "contributions": [
1359 | "mod"
1360 | ]
1361 | },
1362 | {
1363 | "login": "penguinmoose",
1364 | "name": "Helloworldbyeworld",
1365 | "avatar_url": "https://avatars.githubusercontent.com/u/67451414?v=4",
1366 | "profile": "https://github.com/penguinmoose",
1367 | "contributions": [
1368 | "example",
1369 | "ideas",
1370 | "bug"
1371 | ]
1372 | },
1373 | {
1374 | "login": "FunctionalMetatable",
1375 | "name": "metaify",
1376 | "avatar_url": "https://avatars.githubusercontent.com/u/67440879?v=4",
1377 | "profile": "https://github.com/Weredime",
1378 | "contributions": [
1379 | "code"
1380 | ]
1381 | },
1382 | {
1383 | "login": "callumjt",
1384 | "name": "callum",
1385 | "avatar_url": "https://avatars.githubusercontent.com/u/116295240?v=4",
1386 | "profile": "https://callumjt.dev",
1387 | "contributions": [
1388 | "mod"
1389 | ]
1390 | },
1391 | {
1392 | "login": "MaterArc",
1393 | "name": "MaterArc",
1394 | "avatar_url": "https://avatars.githubusercontent.com/u/105017592?v=4",
1395 | "profile": "https://materarc.github.io/sdshelpers.github.io/",
1396 | "contributions": [
1397 | "mod",
1398 | "design"
1399 | ]
1400 | },
1401 | {
1402 | "login": "XShrunk",
1403 | "name": "Plert",
1404 | "avatar_url": "https://avatars.githubusercontent.com/u/79948572?v=4",
1405 | "profile": "https://github.com/XShrunk",
1406 | "contributions": [
1407 | "mod"
1408 | ]
1409 | },
1410 | {
1411 | "login": "TheAnvils",
1412 | "name": "TheAnvils",
1413 | "avatar_url": "https://avatars.githubusercontent.com/u/79940840?v=4",
1414 | "profile": "https://github.com/TheAnvils",
1415 | "contributions": [
1416 | "mod"
1417 | ]
1418 | },
1419 | {
1420 | "login": "mr-mph",
1421 | "name": "Seth Williams",
1422 | "avatar_url": "https://avatars.githubusercontent.com/u/88854453?v=4",
1423 | "profile": "https://github.com/mr-mph",
1424 | "contributions": [
1425 | "mod",
1426 | "code"
1427 | ]
1428 | },
1429 | {
1430 | "login": "Wjplatformer",
1431 | "name": "Grrrrr",
1432 | "avatar_url": "https://avatars.githubusercontent.com/u/82447031?v=4",
1433 | "profile": "https://wjplatformer.github.io/",
1434 | "contributions": [
1435 | "translation",
1436 | "doc"
1437 | ]
1438 | },
1439 | {
1440 | "login": "BelkaBoi",
1441 | "name": "Belka",
1442 | "avatar_url": "https://avatars.githubusercontent.com/u/108747883?v=4",
1443 | "profile": "https://belka.eu.org",
1444 | "contributions": [
1445 | "translation"
1446 | ]
1447 | },
1448 | {
1449 | "login": "Mel0n7",
1450 | "name": "Melon",
1451 | "avatar_url": "https://avatars.githubusercontent.com/u/99061680?v=4",
1452 | "profile": "https://github.com/Mel0n7",
1453 | "contributions": [
1454 | "code"
1455 | ]
1456 | },
1457 | {
1458 | "login": "PurpleZen",
1459 | "name": "LegoManiac04",
1460 | "avatar_url": "https://avatars.githubusercontent.com/u/87787046?v=4",
1461 | "profile": "https://github.com/PurpleZen",
1462 | "contributions": [
1463 | "code",
1464 | "bug"
1465 | ]
1466 | },
1467 | {
1468 | "login": "InTheProcess",
1469 | "name": "InTheProcess",
1470 | "avatar_url": "https://avatars.githubusercontent.com/u/85518492?v=4",
1471 | "profile": "https://github.com/InTheProcess",
1472 | "contributions": [
1473 | "bug"
1474 | ]
1475 | },
1476 | {
1477 | "login": "Unkrown6YT",
1478 | "name": "DarknessPersonality",
1479 | "avatar_url": "https://avatars.githubusercontent.com/u/94491221?v=4",
1480 | "profile": "https://darknesspersonality.carrd.co/",
1481 | "contributions": [
1482 | "bug"
1483 | ]
1484 | },
1485 | {
1486 | "login": "EightSidedBrick",
1487 | "name": "EightSidedBrick",
1488 | "avatar_url": "https://avatars.githubusercontent.com/u/108944265?v=4",
1489 | "profile": "https://github.com/EightSidedBrick",
1490 | "contributions": [
1491 | "bug"
1492 | ]
1493 | },
1494 | {
1495 | "login": "rgantzos",
1496 | "name": "rgantzos",
1497 | "avatar_url": "https://avatars.githubusercontent.com/u/86856959?v=4",
1498 | "profile": "https://actuallyronan.com",
1499 | "contributions": [
1500 | "bug"
1501 | ]
1502 | },
1503 | {
1504 | "login": "arch-herobrine",
1505 | "name": "arch.msi",
1506 | "avatar_url": "https://avatars.githubusercontent.com/u/112319383?v=4",
1507 | "profile": "https://arch-herobrine.github.io",
1508 | "contributions": [
1509 | "bug"
1510 | ]
1511 | },
1512 | {
1513 | "login": "RT-Borg",
1514 | "name": "RT-Borg",
1515 | "avatar_url": "https://avatars.githubusercontent.com/u/111162019?v=4",
1516 | "profile": "https://github.com/RT-Borg",
1517 | "contributions": [
1518 | "bug"
1519 | ]
1520 | },
1521 | {
1522 | "login": "Coolguy236gg",
1523 | "name": "Ryan H",
1524 | "avatar_url": "https://avatars.githubusercontent.com/u/109452958?v=4",
1525 | "profile": "https://github.com/Coolguy236gg",
1526 | "contributions": [
1527 | "bug"
1528 | ]
1529 | },
1530 | {
1531 | "login": "owoguy",
1532 | "name": "owoguy",
1533 | "avatar_url": "https://avatars.githubusercontent.com/u/86011827?v=4",
1534 | "profile": "https://github.com/owoguy",
1535 | "contributions": [
1536 | "bug"
1537 | ]
1538 | },
1539 | {
1540 | "login": "DogCatPuppyLover",
1541 | "name": "Isla",
1542 | "avatar_url": "https://avatars.githubusercontent.com/u/79656307?v=4",
1543 | "profile": "https://scratch.mit.edu/users/DogCatPuppyLover/",
1544 | "contributions": [
1545 | "bug"
1546 | ]
1547 | },
1548 | {
1549 | "login": "Oren-Lindsey",
1550 | "name": "Oren Lindsey",
1551 | "avatar_url": "https://avatars.githubusercontent.com/u/67929847?v=4",
1552 | "profile": "https://lindsey.studio",
1553 | "contributions": [
1554 | "bug"
1555 | ]
1556 | },
1557 | {
1558 | "login": "Mbrick2",
1559 | "name": "Mbrick2",
1560 | "avatar_url": "https://avatars.githubusercontent.com/u/90691415?v=4",
1561 | "profile": "https://github.com/Mbrick2",
1562 | "contributions": [
1563 | "bug"
1564 | ]
1565 | },
1566 | {
1567 | "login": "MystPi",
1568 | "name": "MystPi",
1569 | "avatar_url": "https://avatars.githubusercontent.com/u/86574651?v=4",
1570 | "profile": "https://github.com/MystPi",
1571 | "contributions": [
1572 | "bug"
1573 | ]
1574 | },
1575 | {
1576 | "login": "webdev03",
1577 | "name": "webdev03",
1578 | "avatar_url": "https://avatars.githubusercontent.com/u/75148774?v=4",
1579 | "profile": "https://github.com/webdev03",
1580 | "contributions": [
1581 | "bug"
1582 | ]
1583 | },
1584 | {
1585 | "login": "ksdavidc",
1586 | "name": "ksDavidC",
1587 | "avatar_url": "https://avatars.githubusercontent.com/u/62230004?v=4",
1588 | "profile": "https://github.com/ksdavidc",
1589 | "contributions": [
1590 | "bug"
1591 | ]
1592 | },
1593 | {
1594 | "login": "just-a-hriday",
1595 | "name": "Hriday A",
1596 | "avatar_url": "https://avatars.githubusercontent.com/u/73294041?v=4",
1597 | "profile": "https://github.com/just-a-hriday",
1598 | "contributions": [
1599 | "bug"
1600 | ]
1601 | },
1602 | {
1603 | "login": "Nonethousand",
1604 | "name": "Nonethousand",
1605 | "avatar_url": "https://avatars.githubusercontent.com/u/78574005?v=4",
1606 | "profile": "https://github.com/Nonethousand",
1607 | "contributions": [
1608 | "bug"
1609 | ]
1610 | },
1611 | {
1612 | "login": "Jariel208",
1613 | "name": "Jariel208",
1614 | "avatar_url": "https://avatars.githubusercontent.com/u/77120448?v=4",
1615 | "profile": "https://github.com/Jariel208",
1616 | "contributions": [
1617 | "bug"
1618 | ]
1619 | },
1620 | {
1621 | "login": "daifkyou",
1622 | "name": "the great foo",
1623 | "avatar_url": "https://avatars.githubusercontent.com/u/62647827?v=4",
1624 | "profile": "https://w.wiki/7b8T",
1625 | "contributions": [
1626 | "bug"
1627 | ]
1628 | },
1629 | {
1630 | "login": "starkodder",
1631 | "name": "starkodder",
1632 | "avatar_url": "https://avatars.githubusercontent.com/u/74370377?v=4",
1633 | "profile": "https://github.com/starkodder",
1634 | "contributions": [
1635 | "bug"
1636 | ]
1637 | },
1638 | {
1639 | "login": "imlens",
1640 | "name": "lens",
1641 | "avatar_url": "https://avatars.githubusercontent.com/u/83427897?v=4",
1642 | "profile": "https://www.lunarr.cf",
1643 | "contributions": [
1644 | "bug"
1645 | ]
1646 | },
1647 | {
1648 | "login": "CluckCluckChicken",
1649 | "name": "CluckCluckChicken",
1650 | "avatar_url": "https://avatars.githubusercontent.com/u/46281840?v=4",
1651 | "profile": "https://github.com/CluckCluckChicken",
1652 | "contributions": [
1653 | "bug"
1654 | ]
1655 | },
1656 | {
1657 | "login": "stocriderj",
1658 | "name": "stocriderj",
1659 | "avatar_url": "https://avatars.githubusercontent.com/u/78283807?v=4",
1660 | "profile": "https://github.com/stocriderj",
1661 | "contributions": [
1662 | "bug"
1663 | ]
1664 | },
1665 | {
1666 | "login": "Shluffy",
1667 | "name": "ShluffyMonster",
1668 | "avatar_url": "https://avatars.githubusercontent.com/u/81823039?v=4",
1669 | "profile": "https://Shluffy.github.io",
1670 | "contributions": [
1671 | "bug"
1672 | ]
1673 | },
1674 | {
1675 | "login": "Endermaster3690",
1676 | "name": "Doppel",
1677 | "avatar_url": "https://avatars.githubusercontent.com/u/80355301?v=4",
1678 | "profile": "https://github.com/Endermaster3690",
1679 | "contributions": [
1680 | "bug"
1681 | ]
1682 | },
1683 | {
1684 | "login": "vivilua",
1685 | "name": "vivilua",
1686 | "avatar_url": "https://avatars.githubusercontent.com/u/81496469?v=4",
1687 | "profile": "https://scratch.mit.edu/users/vivilua",
1688 | "contributions": [
1689 | "bug"
1690 | ]
1691 | },
1692 | {
1693 | "login": "BarionLP",
1694 | "name": "Barion",
1695 | "avatar_url": "https://avatars.githubusercontent.com/u/76686287?v=4",
1696 | "profile": "https://github.com/BarionLP",
1697 | "contributions": [
1698 | "bug"
1699 | ]
1700 | },
1701 | {
1702 | "login": "Exlectruz",
1703 | "name": "Kevz",
1704 | "avatar_url": "https://avatars.githubusercontent.com/u/79061511?v=4",
1705 | "profile": "https://www.youtube.com/channel/UCMOMwm5K8mm8kA8hhMC7AQA",
1706 | "contributions": [
1707 | "bug"
1708 | ]
1709 | },
1710 | {
1711 | "login": "mybearworld",
1712 | "name": "mybearworld",
1713 | "avatar_url": "https://avatars.githubusercontent.com/u/130385691?v=4",
1714 | "profile": "https://mybearworld.github.io/",
1715 | "contributions": [
1716 | "ideas",
1717 | "bug",
1718 | "code",
1719 | "translation"
1720 | ]
1721 | },
1722 | {
1723 | "login": "OneShot-Niko",
1724 | "name": "Zy!",
1725 | "avatar_url": "https://avatars.githubusercontent.com/u/150537842?v=4",
1726 | "profile": "https://github.com/OneShot-Niko",
1727 | "contributions": [
1728 | "bug",
1729 | "ideas"
1730 | ]
1731 | },
1732 | {
1733 | "login": "theycallhermax",
1734 | "name": "Max Walters",
1735 | "avatar_url": "https://avatars.githubusercontent.com/u/67456566?v=4",
1736 | "profile": "https://max.is-probably.gay",
1737 | "contributions": [
1738 | "code",
1739 | "translation"
1740 | ]
1741 | },
1742 | {
1743 | "login": "Joeclinton1",
1744 | "name": "Joe Clinton",
1745 | "avatar_url": "https://avatars.githubusercontent.com/u/48254978?v=4",
1746 | "profile": "https://github.com/Joeclinton1",
1747 | "contributions": [
1748 | "code"
1749 | ]
1750 | },
1751 | {
1752 | "login": "hueychen27",
1753 | "name": "hueychen27",
1754 | "avatar_url": "https://avatars.githubusercontent.com/u/78285518?v=4",
1755 | "profile": "https://github.com/hueychen27",
1756 | "contributions": [
1757 | "bug",
1758 | "ideas"
1759 | ]
1760 | },
1761 | {
1762 | "login": "thenatally",
1763 | "name": "Tally",
1764 | "avatar_url": "https://avatars.githubusercontent.com/u/113806118?v=4",
1765 | "profile": "https://tally.gay",
1766 | "contributions": [
1767 | "mod",
1768 | "code"
1769 | ]
1770 | },
1771 | {
1772 | "login": "kccuber-scratch",
1773 | "name": "kccuber",
1774 | "avatar_url": "https://avatars.githubusercontent.com/u/92891642?v=4",
1775 | "profile": "https://scratch.mit.edu/users/kccuber",
1776 | "contributions": [
1777 | "mod"
1778 | ]
1779 | },
1780 | {
1781 | "login": "Hexagonl",
1782 | "name": "Hexagonal",
1783 | "avatar_url": "https://avatars.githubusercontent.com/u/61996651?v=4",
1784 | "profile": "https://github.com/Hexagonl",
1785 | "contributions": [
1786 | "mod",
1787 | "video"
1788 | ]
1789 | },
1790 | {
1791 | "login": "Platformer444",
1792 | "name": "Platformer444",
1793 | "avatar_url": "https://avatars.githubusercontent.com/u/78246772?v=4",
1794 | "profile": "https://github.com/Platformer444",
1795 | "contributions": [
1796 | "mod"
1797 | ]
1798 | },
1799 | {
1800 | "login": "man-o-valor",
1801 | "name": "man-o-valor",
1802 | "avatar_url": "https://avatars.githubusercontent.com/u/154533182?v=4",
1803 | "profile": "https://github.com/man-o-valor",
1804 | "contributions": [
1805 | "mod"
1806 | ]
1807 | },
1808 | {
1809 | "login": "AmpElectrecuted",
1810 | "name": "AmpElectrecuted",
1811 | "avatar_url": "https://avatars.githubusercontent.com/u/197376797?v=4",
1812 | "profile": "https://github.com/AmpElectrecuted",
1813 | "contributions": [
1814 | "code"
1815 | ]
1816 | },
1817 | {
1818 | "login": "Waakul",
1819 | "name": "Waakul",
1820 | "avatar_url": "https://avatars.githubusercontent.com/u/135821321?v=4",
1821 | "profile": "https://github.com/Waakul",
1822 | "contributions": [
1823 | "code"
1824 | ]
1825 | },
1826 | {
1827 | "login": "michaeleldar",
1828 | "name": "michaeleldar",
1829 | "avatar_url": "https://avatars.githubusercontent.com/u/66514999?v=4",
1830 | "profile": "https://github.com/michaeleldar",
1831 | "contributions": [
1832 | "code"
1833 | ]
1834 | },
1835 | {
1836 | "login": "raynecloudy",
1837 | "name": "rayne",
1838 | "avatar_url": "https://avatars.githubusercontent.com/u/129226914?v=4",
1839 | "profile": "https://github.com/raynecloudy",
1840 | "contributions": [
1841 | "code"
1842 | ]
1843 | },
1844 | {
1845 | "login": "Valmontechno",
1846 | "name": "Valmontechno",
1847 | "avatar_url": "https://avatars.githubusercontent.com/u/108832011?v=4",
1848 | "profile": "https://github.com/valmontechno",
1849 | "contributions": [
1850 | "code",
1851 | "bug",
1852 | "ideas"
1853 | ]
1854 | },
1855 | {
1856 | "login": "NDKcute",
1857 | "name": "Nguyễn Duy Khoa",
1858 | "avatar_url": "https://avatars.githubusercontent.com/u/168964444?v=4",
1859 | "profile": "https://github.com/NDKcute",
1860 | "contributions": [
1861 | "translation"
1862 | ]
1863 | }
1864 | ],
1865 | "contributorsPerLine": 5,
1866 | "contributorsSortAlphabetically": true,
1867 | "skipCi": false,
1868 | "types": {
1869 | "mod": {
1870 | "symbol": "🫂",
1871 | "description": "Community Moderator (Discord)"
1872 | }
1873 | },
1874 | "commitType": "docs"
1875 | }
1876 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: true
2 | contact_links:
3 | - name: Contact Us
4 | url: https://scratchaddons.com/docs/faq/#what-can-i-do-if-i-find-a-problem
5 | about: Want to say something about Scratch Addons? Learn more about how to reach us!
6 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | updates:
3 | - package-ecosystem: "github-actions"
4 | directory: "/"
5 | schedule:
6 | interval: "monthly"
7 | - package-ecosystem: "npm"
8 | directory: "/"
9 | schedule:
10 | interval: "monthly"
11 |
--------------------------------------------------------------------------------
/.github/workflows/prepare-and-deploy.yml:
--------------------------------------------------------------------------------
1 | name: Prepare and Deploy
2 |
3 | on:
4 | push:
5 | branches:
6 | - master
7 | paths:
8 | - .all-contributorsrc
9 | - package.json
10 | - package-lock.json
11 | - src/**
12 | - .github/workflows/prepare-and-deploy.yml
13 | schedule:
14 | - cron: "0 0 * * *"
15 |
16 | jobs:
17 | build:
18 | name: Build
19 | runs-on: ubuntu-latest
20 | steps:
21 | - name: Checkout code
22 | uses: actions/checkout@v4
23 | - name: Set up Node.js
24 | uses: actions/setup-node@v4
25 | with:
26 | node-version: 20.x
27 | - name: Cache dependencies
28 | uses: actions/cache@v4
29 | with:
30 | path: ~/.npm
31 | key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
32 | restore-keys: |
33 | ${{ runner.os }}-node-
34 | - name: Install dependencies
35 | run: npm install
36 | - name: Build
37 | id: build
38 | env:
39 | GH_PAT: ${{secrets.GH_PAT}}
40 | run: npm run run
41 |
42 | - name: Generate token
43 | uses: tibdex/github-app-token@v2
44 | id: generate-token
45 | with:
46 | app_id: ${{ secrets.BOT_APP_ID }}
47 | private_key: ${{ secrets.BOT_PRIVATE_KEY }}
48 |
49 | - name: Update branch with the folder
50 | uses: peaceiris/actions-gh-pages@v4
51 | with:
52 | github_token: ${{ steps.generate-token.outputs.token }}
53 | publish_dir: dist
54 | force_orphan: true
55 | publish_branch: with-commits
56 | enable_jekyll: true
57 |
58 | - name: Invoke workflow
59 | uses: benc-uk/workflow-dispatch@v1
60 | with:
61 | workflow: Site Deployment
62 | repo: ScratchAddons/website-v2
63 | token: ${{ steps.generate-token.outputs.token }}
64 | inputs: '{ "upload_repo": "false" }'
65 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 |
--------------------------------------------------------------------------------
/.gitpod.yml:
--------------------------------------------------------------------------------
1 | tasks:
2 | - init: npm install -g all-contributors-cli
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | GNU GENERAL PUBLIC LICENSE
2 | Version 3, 29 June 2007
3 |
4 | Copyright (C) 2007 Free Software Foundation, Inc.
5 | Everyone is permitted to copy and distribute verbatim copies
6 | of this license document, but changing it is not allowed.
7 |
8 | Preamble
9 |
10 | The GNU General Public License is a free, copyleft license for
11 | software and other kinds of works.
12 |
13 | The licenses for most software and other practical works are designed
14 | to take away your freedom to share and change the works. By contrast,
15 | the GNU General Public License is intended to guarantee your freedom to
16 | share and change all versions of a program--to make sure it remains free
17 | software for all its users. We, the Free Software Foundation, use the
18 | GNU General Public License for most of our software; it applies also to
19 | any other work released this way by its authors. You can apply it to
20 | your programs, too.
21 |
22 | When we speak of free software, we are referring to freedom, not
23 | price. Our General Public Licenses are designed to make sure that you
24 | have the freedom to distribute copies of free software (and charge for
25 | them if you wish), that you receive source code or can get it if you
26 | want it, that you can change the software or use pieces of it in new
27 | free programs, and that you know you can do these things.
28 |
29 | To protect your rights, we need to prevent others from denying you
30 | these rights or asking you to surrender the rights. Therefore, you have
31 | certain responsibilities if you distribute copies of the software, or if
32 | you modify it: responsibilities to respect the freedom of others.
33 |
34 | For example, if you distribute copies of such a program, whether
35 | gratis or for a fee, you must pass on to the recipients the same
36 | freedoms that you received. You must make sure that they, too, receive
37 | or can get the source code. And you must show them these terms so they
38 | know their rights.
39 |
40 | Developers that use the GNU GPL protect your rights with two steps:
41 | (1) assert copyright on the software, and (2) offer you this License
42 | giving you legal permission to copy, distribute and/or modify it.
43 |
44 | For the developers' and authors' protection, the GPL clearly explains
45 | that there is no warranty for this free software. For both users' and
46 | authors' sake, the GPL requires that modified versions be marked as
47 | changed, so that their problems will not be attributed erroneously to
48 | authors of previous versions.
49 |
50 | Some devices are designed to deny users access to install or run
51 | modified versions of the software inside them, although the manufacturer
52 | can do so. This is fundamentally incompatible with the aim of
53 | protecting users' freedom to change the software. The systematic
54 | pattern of such abuse occurs in the area of products for individuals to
55 | use, which is precisely where it is most unacceptable. Therefore, we
56 | have designed this version of the GPL to prohibit the practice for those
57 | products. If such problems arise substantially in other domains, we
58 | stand ready to extend this provision to those domains in future versions
59 | of the GPL, as needed to protect the freedom of users.
60 |
61 | Finally, every program is threatened constantly by software patents.
62 | States should not allow patents to restrict development and use of
63 | software on general-purpose computers, but in those that do, we wish to
64 | avoid the special danger that patents applied to a free program could
65 | make it effectively proprietary. To prevent this, the GPL assures that
66 | patents cannot be used to render the program non-free.
67 |
68 | The precise terms and conditions for copying, distribution and
69 | modification follow.
70 |
71 | TERMS AND CONDITIONS
72 |
73 | 0. Definitions.
74 |
75 | "This License" refers to version 3 of the GNU General Public License.
76 |
77 | "Copyright" also means copyright-like laws that apply to other kinds of
78 | works, such as semiconductor masks.
79 |
80 | "The Program" refers to any copyrightable work licensed under this
81 | License. Each licensee is addressed as "you". "Licensees" and
82 | "recipients" may be individuals or organizations.
83 |
84 | To "modify" a work means to copy from or adapt all or part of the work
85 | in a fashion requiring copyright permission, other than the making of an
86 | exact copy. The resulting work is called a "modified version" of the
87 | earlier work or a work "based on" the earlier work.
88 |
89 | A "covered work" means either the unmodified Program or a work based
90 | on the Program.
91 |
92 | To "propagate" a work means to do anything with it that, without
93 | permission, would make you directly or secondarily liable for
94 | infringement under applicable copyright law, except executing it on a
95 | computer or modifying a private copy. Propagation includes copying,
96 | distribution (with or without modification), making available to the
97 | public, and in some countries other activities as well.
98 |
99 | To "convey" a work means any kind of propagation that enables other
100 | parties to make or receive copies. Mere interaction with a user through
101 | a computer network, with no transfer of a copy, is not conveying.
102 |
103 | An interactive user interface displays "Appropriate Legal Notices"
104 | to the extent that it includes a convenient and prominently visible
105 | feature that (1) displays an appropriate copyright notice, and (2)
106 | tells the user that there is no warranty for the work (except to the
107 | extent that warranties are provided), that licensees may convey the
108 | work under this License, and how to view a copy of this License. If
109 | the interface presents a list of user commands or options, such as a
110 | menu, a prominent item in the list meets this criterion.
111 |
112 | 1. Source Code.
113 |
114 | The "source code" for a work means the preferred form of the work
115 | for making modifications to it. "Object code" means any non-source
116 | form of a work.
117 |
118 | A "Standard Interface" means an interface that either is an official
119 | standard defined by a recognized standards body, or, in the case of
120 | interfaces specified for a particular programming language, one that
121 | is widely used among developers working in that language.
122 |
123 | The "System Libraries" of an executable work include anything, other
124 | than the work as a whole, that (a) is included in the normal form of
125 | packaging a Major Component, but which is not part of that Major
126 | Component, and (b) serves only to enable use of the work with that
127 | Major Component, or to implement a Standard Interface for which an
128 | implementation is available to the public in source code form. A
129 | "Major Component", in this context, means a major essential component
130 | (kernel, window system, and so on) of the specific operating system
131 | (if any) on which the executable work runs, or a compiler used to
132 | produce the work, or an object code interpreter used to run it.
133 |
134 | The "Corresponding Source" for a work in object code form means all
135 | the source code needed to generate, install, and (for an executable
136 | work) run the object code and to modify the work, including scripts to
137 | control those activities. However, it does not include the work's
138 | System Libraries, or general-purpose tools or generally available free
139 | programs which are used unmodified in performing those activities but
140 | which are not part of the work. For example, Corresponding Source
141 | includes interface definition files associated with source files for
142 | the work, and the source code for shared libraries and dynamically
143 | linked subprograms that the work is specifically designed to require,
144 | such as by intimate data communication or control flow between those
145 | subprograms and other parts of the work.
146 |
147 | The Corresponding Source need not include anything that users
148 | can regenerate automatically from other parts of the Corresponding
149 | Source.
150 |
151 | The Corresponding Source for a work in source code form is that
152 | same work.
153 |
154 | 2. Basic Permissions.
155 |
156 | All rights granted under this License are granted for the term of
157 | copyright on the Program, and are irrevocable provided the stated
158 | conditions are met. This License explicitly affirms your unlimited
159 | permission to run the unmodified Program. The output from running a
160 | covered work is covered by this License only if the output, given its
161 | content, constitutes a covered work. This License acknowledges your
162 | rights of fair use or other equivalent, as provided by copyright law.
163 |
164 | You may make, run and propagate covered works that you do not
165 | convey, without conditions so long as your license otherwise remains
166 | in force. You may convey covered works to others for the sole purpose
167 | of having them make modifications exclusively for you, or provide you
168 | with facilities for running those works, provided that you comply with
169 | the terms of this License in conveying all material for which you do
170 | not control copyright. Those thus making or running the covered works
171 | for you must do so exclusively on your behalf, under your direction
172 | and control, on terms that prohibit them from making any copies of
173 | your copyrighted material outside their relationship with you.
174 |
175 | Conveying under any other circumstances is permitted solely under
176 | the conditions stated below. Sublicensing is not allowed; section 10
177 | makes it unnecessary.
178 |
179 | 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
180 |
181 | No covered work shall be deemed part of an effective technological
182 | measure under any applicable law fulfilling obligations under article
183 | 11 of the WIPO copyright treaty adopted on 20 December 1996, or
184 | similar laws prohibiting or restricting circumvention of such
185 | measures.
186 |
187 | When you convey a covered work, you waive any legal power to forbid
188 | circumvention of technological measures to the extent such circumvention
189 | is effected by exercising rights under this License with respect to
190 | the covered work, and you disclaim any intention to limit operation or
191 | modification of the work as a means of enforcing, against the work's
192 | users, your or third parties' legal rights to forbid circumvention of
193 | technological measures.
194 |
195 | 4. Conveying Verbatim Copies.
196 |
197 | You may convey verbatim copies of the Program's source code as you
198 | receive it, in any medium, provided that you conspicuously and
199 | appropriately publish on each copy an appropriate copyright notice;
200 | keep intact all notices stating that this License and any
201 | non-permissive terms added in accord with section 7 apply to the code;
202 | keep intact all notices of the absence of any warranty; and give all
203 | recipients a copy of this License along with the Program.
204 |
205 | You may charge any price or no price for each copy that you convey,
206 | and you may offer support or warranty protection for a fee.
207 |
208 | 5. Conveying Modified Source Versions.
209 |
210 | You may convey a work based on the Program, or the modifications to
211 | produce it from the Program, in the form of source code under the
212 | terms of section 4, provided that you also meet all of these conditions:
213 |
214 | a) The work must carry prominent notices stating that you modified
215 | it, and giving a relevant date.
216 |
217 | b) The work must carry prominent notices stating that it is
218 | released under this License and any conditions added under section
219 | 7. This requirement modifies the requirement in section 4 to
220 | "keep intact all notices".
221 |
222 | c) You must license the entire work, as a whole, under this
223 | License to anyone who comes into possession of a copy. This
224 | License will therefore apply, along with any applicable section 7
225 | additional terms, to the whole of the work, and all its parts,
226 | regardless of how they are packaged. This License gives no
227 | permission to license the work in any other way, but it does not
228 | invalidate such permission if you have separately received it.
229 |
230 | d) If the work has interactive user interfaces, each must display
231 | Appropriate Legal Notices; however, if the Program has interactive
232 | interfaces that do not display Appropriate Legal Notices, your
233 | work need not make them do so.
234 |
235 | A compilation of a covered work with other separate and independent
236 | works, which are not by their nature extensions of the covered work,
237 | and which are not combined with it such as to form a larger program,
238 | in or on a volume of a storage or distribution medium, is called an
239 | "aggregate" if the compilation and its resulting copyright are not
240 | used to limit the access or legal rights of the compilation's users
241 | beyond what the individual works permit. Inclusion of a covered work
242 | in an aggregate does not cause this License to apply to the other
243 | parts of the aggregate.
244 |
245 | 6. Conveying Non-Source Forms.
246 |
247 | You may convey a covered work in object code form under the terms
248 | of sections 4 and 5, provided that you also convey the
249 | machine-readable Corresponding Source under the terms of this License,
250 | in one of these ways:
251 |
252 | a) Convey the object code in, or embodied in, a physical product
253 | (including a physical distribution medium), accompanied by the
254 | Corresponding Source fixed on a durable physical medium
255 | customarily used for software interchange.
256 |
257 | b) Convey the object code in, or embodied in, a physical product
258 | (including a physical distribution medium), accompanied by a
259 | written offer, valid for at least three years and valid for as
260 | long as you offer spare parts or customer support for that product
261 | model, to give anyone who possesses the object code either (1) a
262 | copy of the Corresponding Source for all the software in the
263 | product that is covered by this License, on a durable physical
264 | medium customarily used for software interchange, for a price no
265 | more than your reasonable cost of physically performing this
266 | conveying of source, or (2) access to copy the
267 | Corresponding Source from a network server at no charge.
268 |
269 | c) Convey individual copies of the object code with a copy of the
270 | written offer to provide the Corresponding Source. This
271 | alternative is allowed only occasionally and noncommercially, and
272 | only if you received the object code with such an offer, in accord
273 | with subsection 6b.
274 |
275 | d) Convey the object code by offering access from a designated
276 | place (gratis or for a charge), and offer equivalent access to the
277 | Corresponding Source in the same way through the same place at no
278 | further charge. You need not require recipients to copy the
279 | Corresponding Source along with the object code. If the place to
280 | copy the object code is a network server, the Corresponding Source
281 | may be on a different server (operated by you or a third party)
282 | that supports equivalent copying facilities, provided you maintain
283 | clear directions next to the object code saying where to find the
284 | Corresponding Source. Regardless of what server hosts the
285 | Corresponding Source, you remain obligated to ensure that it is
286 | available for as long as needed to satisfy these requirements.
287 |
288 | e) Convey the object code using peer-to-peer transmission, provided
289 | you inform other peers where the object code and Corresponding
290 | Source of the work are being offered to the general public at no
291 | charge under subsection 6d.
292 |
293 | A separable portion of the object code, whose source code is excluded
294 | from the Corresponding Source as a System Library, need not be
295 | included in conveying the object code work.
296 |
297 | A "User Product" is either (1) a "consumer product", which means any
298 | tangible personal property which is normally used for personal, family,
299 | or household purposes, or (2) anything designed or sold for incorporation
300 | into a dwelling. In determining whether a product is a consumer product,
301 | doubtful cases shall be resolved in favor of coverage. For a particular
302 | product received by a particular user, "normally used" refers to a
303 | typical or common use of that class of product, regardless of the status
304 | of the particular user or of the way in which the particular user
305 | actually uses, or expects or is expected to use, the product. A product
306 | is a consumer product regardless of whether the product has substantial
307 | commercial, industrial or non-consumer uses, unless such uses represent
308 | the only significant mode of use of the product.
309 |
310 | "Installation Information" for a User Product means any methods,
311 | procedures, authorization keys, or other information required to install
312 | and execute modified versions of a covered work in that User Product from
313 | a modified version of its Corresponding Source. The information must
314 | suffice to ensure that the continued functioning of the modified object
315 | code is in no case prevented or interfered with solely because
316 | modification has been made.
317 |
318 | If you convey an object code work under this section in, or with, or
319 | specifically for use in, a User Product, and the conveying occurs as
320 | part of a transaction in which the right of possession and use of the
321 | User Product is transferred to the recipient in perpetuity or for a
322 | fixed term (regardless of how the transaction is characterized), the
323 | Corresponding Source conveyed under this section must be accompanied
324 | by the Installation Information. But this requirement does not apply
325 | if neither you nor any third party retains the ability to install
326 | modified object code on the User Product (for example, the work has
327 | been installed in ROM).
328 |
329 | The requirement to provide Installation Information does not include a
330 | requirement to continue to provide support service, warranty, or updates
331 | for a work that has been modified or installed by the recipient, or for
332 | the User Product in which it has been modified or installed. Access to a
333 | network may be denied when the modification itself materially and
334 | adversely affects the operation of the network or violates the rules and
335 | protocols for communication across the network.
336 |
337 | Corresponding Source conveyed, and Installation Information provided,
338 | in accord with this section must be in a format that is publicly
339 | documented (and with an implementation available to the public in
340 | source code form), and must require no special password or key for
341 | unpacking, reading or copying.
342 |
343 | 7. Additional Terms.
344 |
345 | "Additional permissions" are terms that supplement the terms of this
346 | License by making exceptions from one or more of its conditions.
347 | Additional permissions that are applicable to the entire Program shall
348 | be treated as though they were included in this License, to the extent
349 | that they are valid under applicable law. If additional permissions
350 | apply only to part of the Program, that part may be used separately
351 | under those permissions, but the entire Program remains governed by
352 | this License without regard to the additional permissions.
353 |
354 | When you convey a copy of a covered work, you may at your option
355 | remove any additional permissions from that copy, or from any part of
356 | it. (Additional permissions may be written to require their own
357 | removal in certain cases when you modify the work.) You may place
358 | additional permissions on material, added by you to a covered work,
359 | for which you have or can give appropriate copyright permission.
360 |
361 | Notwithstanding any other provision of this License, for material you
362 | add to a covered work, you may (if authorized by the copyright holders of
363 | that material) supplement the terms of this License with terms:
364 |
365 | a) Disclaiming warranty or limiting liability differently from the
366 | terms of sections 15 and 16 of this License; or
367 |
368 | b) Requiring preservation of specified reasonable legal notices or
369 | author attributions in that material or in the Appropriate Legal
370 | Notices displayed by works containing it; or
371 |
372 | c) Prohibiting misrepresentation of the origin of that material, or
373 | requiring that modified versions of such material be marked in
374 | reasonable ways as different from the original version; or
375 |
376 | d) Limiting the use for publicity purposes of names of licensors or
377 | authors of the material; or
378 |
379 | e) Declining to grant rights under trademark law for use of some
380 | trade names, trademarks, or service marks; or
381 |
382 | f) Requiring indemnification of licensors and authors of that
383 | material by anyone who conveys the material (or modified versions of
384 | it) with contractual assumptions of liability to the recipient, for
385 | any liability that these contractual assumptions directly impose on
386 | those licensors and authors.
387 |
388 | All other non-permissive additional terms are considered "further
389 | restrictions" within the meaning of section 10. If the Program as you
390 | received it, or any part of it, contains a notice stating that it is
391 | governed by this License along with a term that is a further
392 | restriction, you may remove that term. If a license document contains
393 | a further restriction but permits relicensing or conveying under this
394 | License, you may add to a covered work material governed by the terms
395 | of that license document, provided that the further restriction does
396 | not survive such relicensing or conveying.
397 |
398 | If you add terms to a covered work in accord with this section, you
399 | must place, in the relevant source files, a statement of the
400 | additional terms that apply to those files, or a notice indicating
401 | where to find the applicable terms.
402 |
403 | Additional terms, permissive or non-permissive, may be stated in the
404 | form of a separately written license, or stated as exceptions;
405 | the above requirements apply either way.
406 |
407 | 8. Termination.
408 |
409 | You may not propagate or modify a covered work except as expressly
410 | provided under this License. Any attempt otherwise to propagate or
411 | modify it is void, and will automatically terminate your rights under
412 | this License (including any patent licenses granted under the third
413 | paragraph of section 11).
414 |
415 | However, if you cease all violation of this License, then your
416 | license from a particular copyright holder is reinstated (a)
417 | provisionally, unless and until the copyright holder explicitly and
418 | finally terminates your license, and (b) permanently, if the copyright
419 | holder fails to notify you of the violation by some reasonable means
420 | prior to 60 days after the cessation.
421 |
422 | Moreover, your license from a particular copyright holder is
423 | reinstated permanently if the copyright holder notifies you of the
424 | violation by some reasonable means, this is the first time you have
425 | received notice of violation of this License (for any work) from that
426 | copyright holder, and you cure the violation prior to 30 days after
427 | your receipt of the notice.
428 |
429 | Termination of your rights under this section does not terminate the
430 | licenses of parties who have received copies or rights from you under
431 | this License. If your rights have been terminated and not permanently
432 | reinstated, you do not qualify to receive new licenses for the same
433 | material under section 10.
434 |
435 | 9. Acceptance Not Required for Having Copies.
436 |
437 | You are not required to accept this License in order to receive or
438 | run a copy of the Program. Ancillary propagation of a covered work
439 | occurring solely as a consequence of using peer-to-peer transmission
440 | to receive a copy likewise does not require acceptance. However,
441 | nothing other than this License grants you permission to propagate or
442 | modify any covered work. These actions infringe copyright if you do
443 | not accept this License. Therefore, by modifying or propagating a
444 | covered work, you indicate your acceptance of this License to do so.
445 |
446 | 10. Automatic Licensing of Downstream Recipients.
447 |
448 | Each time you convey a covered work, the recipient automatically
449 | receives a license from the original licensors, to run, modify and
450 | propagate that work, subject to this License. You are not responsible
451 | for enforcing compliance by third parties with this License.
452 |
453 | An "entity transaction" is a transaction transferring control of an
454 | organization, or substantially all assets of one, or subdividing an
455 | organization, or merging organizations. If propagation of a covered
456 | work results from an entity transaction, each party to that
457 | transaction who receives a copy of the work also receives whatever
458 | licenses to the work the party's predecessor in interest had or could
459 | give under the previous paragraph, plus a right to possession of the
460 | Corresponding Source of the work from the predecessor in interest, if
461 | the predecessor has it or can get it with reasonable efforts.
462 |
463 | You may not impose any further restrictions on the exercise of the
464 | rights granted or affirmed under this License. For example, you may
465 | not impose a license fee, royalty, or other charge for exercise of
466 | rights granted under this License, and you may not initiate litigation
467 | (including a cross-claim or counterclaim in a lawsuit) alleging that
468 | any patent claim is infringed by making, using, selling, offering for
469 | sale, or importing the Program or any portion of it.
470 |
471 | 11. Patents.
472 |
473 | A "contributor" is a copyright holder who authorizes use under this
474 | License of the Program or a work on which the Program is based. The
475 | work thus licensed is called the contributor's "contributor version".
476 |
477 | A contributor's "essential patent claims" are all patent claims
478 | owned or controlled by the contributor, whether already acquired or
479 | hereafter acquired, that would be infringed by some manner, permitted
480 | by this License, of making, using, or selling its contributor version,
481 | but do not include claims that would be infringed only as a
482 | consequence of further modification of the contributor version. For
483 | purposes of this definition, "control" includes the right to grant
484 | patent sublicenses in a manner consistent with the requirements of
485 | this License.
486 |
487 | Each contributor grants you a non-exclusive, worldwide, royalty-free
488 | patent license under the contributor's essential patent claims, to
489 | make, use, sell, offer for sale, import and otherwise run, modify and
490 | propagate the contents of its contributor version.
491 |
492 | In the following three paragraphs, a "patent license" is any express
493 | agreement or commitment, however denominated, not to enforce a patent
494 | (such as an express permission to practice a patent or covenant not to
495 | sue for patent infringement). To "grant" such a patent license to a
496 | party means to make such an agreement or commitment not to enforce a
497 | patent against the party.
498 |
499 | If you convey a covered work, knowingly relying on a patent license,
500 | and the Corresponding Source of the work is not available for anyone
501 | to copy, free of charge and under the terms of this License, through a
502 | publicly available network server or other readily accessible means,
503 | then you must either (1) cause the Corresponding Source to be so
504 | available, or (2) arrange to deprive yourself of the benefit of the
505 | patent license for this particular work, or (3) arrange, in a manner
506 | consistent with the requirements of this License, to extend the patent
507 | license to downstream recipients. "Knowingly relying" means you have
508 | actual knowledge that, but for the patent license, your conveying the
509 | covered work in a country, or your recipient's use of the covered work
510 | in a country, would infringe one or more identifiable patents in that
511 | country that you have reason to believe are valid.
512 |
513 | If, pursuant to or in connection with a single transaction or
514 | arrangement, you convey, or propagate by procuring conveyance of, a
515 | covered work, and grant a patent license to some of the parties
516 | receiving the covered work authorizing them to use, propagate, modify
517 | or convey a specific copy of the covered work, then the patent license
518 | you grant is automatically extended to all recipients of the covered
519 | work and works based on it.
520 |
521 | A patent license is "discriminatory" if it does not include within
522 | the scope of its coverage, prohibits the exercise of, or is
523 | conditioned on the non-exercise of one or more of the rights that are
524 | specifically granted under this License. You may not convey a covered
525 | work if you are a party to an arrangement with a third party that is
526 | in the business of distributing software, under which you make payment
527 | to the third party based on the extent of your activity of conveying
528 | the work, and under which the third party grants, to any of the
529 | parties who would receive the covered work from you, a discriminatory
530 | patent license (a) in connection with copies of the covered work
531 | conveyed by you (or copies made from those copies), or (b) primarily
532 | for and in connection with specific products or compilations that
533 | contain the covered work, unless you entered into that arrangement,
534 | or that patent license was granted, prior to 28 March 2007.
535 |
536 | Nothing in this License shall be construed as excluding or limiting
537 | any implied license or other defenses to infringement that may
538 | otherwise be available to you under applicable patent law.
539 |
540 | 12. No Surrender of Others' Freedom.
541 |
542 | If conditions are imposed on you (whether by court order, agreement or
543 | otherwise) that contradict the conditions of this License, they do not
544 | excuse you from the conditions of this License. If you cannot convey a
545 | covered work so as to satisfy simultaneously your obligations under this
546 | License and any other pertinent obligations, then as a consequence you may
547 | not convey it at all. For example, if you agree to terms that obligate you
548 | to collect a royalty for further conveying from those to whom you convey
549 | the Program, the only way you could satisfy both those terms and this
550 | License would be to refrain entirely from conveying the Program.
551 |
552 | 13. Use with the GNU Affero General Public License.
553 |
554 | Notwithstanding any other provision of this License, you have
555 | permission to link or combine any covered work with a work licensed
556 | under version 3 of the GNU Affero General Public License into a single
557 | combined work, and to convey the resulting work. The terms of this
558 | License will continue to apply to the part which is the covered work,
559 | but the special requirements of the GNU Affero General Public License,
560 | section 13, concerning interaction through a network will apply to the
561 | combination as such.
562 |
563 | 14. Revised Versions of this License.
564 |
565 | The Free Software Foundation may publish revised and/or new versions of
566 | the GNU General Public License from time to time. Such new versions will
567 | be similar in spirit to the present version, but may differ in detail to
568 | address new problems or concerns.
569 |
570 | Each version is given a distinguishing version number. If the
571 | Program specifies that a certain numbered version of the GNU General
572 | Public License "or any later version" applies to it, you have the
573 | option of following the terms and conditions either of that numbered
574 | version or of any later version published by the Free Software
575 | Foundation. If the Program does not specify a version number of the
576 | GNU General Public License, you may choose any version ever published
577 | by the Free Software Foundation.
578 |
579 | If the Program specifies that a proxy can decide which future
580 | versions of the GNU General Public License can be used, that proxy's
581 | public statement of acceptance of a version permanently authorizes you
582 | to choose that version for the Program.
583 |
584 | Later license versions may give you additional or different
585 | permissions. However, no additional obligations are imposed on any
586 | author or copyright holder as a result of your choosing to follow a
587 | later version.
588 |
589 | 15. Disclaimer of Warranty.
590 |
591 | THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
592 | APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
593 | HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
594 | OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
595 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
596 | PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
597 | IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
598 | ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
599 |
600 | 16. Limitation of Liability.
601 |
602 | IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
603 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
604 | THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
605 | GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
606 | USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
607 | DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
608 | PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
609 | EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
610 | SUCH DAMAGES.
611 |
612 | 17. Interpretation of Sections 15 and 16.
613 |
614 | If the disclaimer of warranty and limitation of liability provided
615 | above cannot be given local legal effect according to their terms,
616 | reviewing courts shall apply local law that most closely approximates
617 | an absolute waiver of all civil liability in connection with the
618 | Program, unless a warranty or assumption of liability accompanies a
619 | copy of the Program in return for a fee.
620 |
621 | END OF TERMS AND CONDITIONS
622 |
623 | How to Apply These Terms to Your New Programs
624 |
625 | If you develop a new program, and you want it to be of the greatest
626 | possible use to the public, the best way to achieve this is to make it
627 | free software which everyone can redistribute and change under these terms.
628 |
629 | To do so, attach the following notices to the program. It is safest
630 | to attach them to the start of each source file to most effectively
631 | state the exclusion of warranty; and each file should have at least
632 | the "copyright" line and a pointer to where the full notice is found.
633 |
634 |
635 | Copyright (C)
636 |
637 | This program is free software: you can redistribute it and/or modify
638 | it under the terms of the GNU General Public License as published by
639 | the Free Software Foundation, either version 3 of the License, or
640 | (at your option) any later version.
641 |
642 | This program is distributed in the hope that it will be useful,
643 | but WITHOUT ANY WARRANTY; without even the implied warranty of
644 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
645 | GNU General Public License for more details.
646 |
647 | You should have received a copy of the GNU General Public License
648 | along with this program. If not, see .
649 |
650 | Also add information on how to contact you by electronic and paper mail.
651 |
652 | If the program does terminal interaction, make it output a short
653 | notice like this when it starts in an interactive mode:
654 |
655 | Copyright (C)
656 | This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
657 | This is free software, and you are welcome to redistribute it
658 | under certain conditions; type `show c' for details.
659 |
660 | The hypothetical commands `show w' and `show c' should show the appropriate
661 | parts of the General Public License. Of course, your program's commands
662 | might be different; for a GUI interface, you would use an "about box".
663 |
664 | You should also get your employer (if you work as a programmer) or school,
665 | if any, to sign a "copyright disclaimer" for the program, if necessary.
666 | For more information on this, and how to apply and follow the GNU GPL, see
667 | .
668 |
669 | The GNU General Public License does not permit incorporating your program
670 | into proprietary programs. If your program is a subroutine library, you
671 | may consider it more useful to permit linking proprietary applications with
672 | the library. If this is what you want to do, use the GNU Lesser General
673 | Public License instead of this License. But first, please read
674 | .
675 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@scratchaddons/contributors",
3 | "version": "1.0.0",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "@scratchaddons/contributors",
9 | "version": "1.0.0",
10 | "license": "GPL-3.0",
11 | "dependencies": {
12 | "all-contributors-cli": "^6.26.1",
13 | "fs-extra": "^11.3.0",
14 | "node-fetch": "^3.3.2"
15 | }
16 | },
17 | "node_modules/@babel/runtime": {
18 | "version": "7.18.9",
19 | "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz",
20 | "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==",
21 | "dependencies": {
22 | "regenerator-runtime": "^0.13.4"
23 | },
24 | "engines": {
25 | "node": ">=6.9.0"
26 | }
27 | },
28 | "node_modules/all-contributors-cli": {
29 | "version": "6.26.1",
30 | "resolved": "https://registry.npmjs.org/all-contributors-cli/-/all-contributors-cli-6.26.1.tgz",
31 | "integrity": "sha512-Ymgo3FJACRBEd1eE653FD1J/+uD0kqpUNYfr9zNC1Qby0LgbhDBzB3EF6uvkAbYpycStkk41J+0oo37Lc02yEw==",
32 | "dependencies": {
33 | "@babel/runtime": "^7.7.6",
34 | "async": "^3.1.0",
35 | "chalk": "^4.0.0",
36 | "didyoumean": "^1.2.1",
37 | "inquirer": "^7.3.3",
38 | "json-fixer": "^1.6.8",
39 | "lodash": "^4.11.2",
40 | "node-fetch": "^2.6.0",
41 | "pify": "^5.0.0",
42 | "yargs": "^15.0.1"
43 | },
44 | "bin": {
45 | "all-contributors": "dist/cli.js"
46 | },
47 | "engines": {
48 | "node": ">=4"
49 | },
50 | "optionalDependencies": {
51 | "prettier": "^2"
52 | }
53 | },
54 | "node_modules/all-contributors-cli/node_modules/node-fetch": {
55 | "version": "2.6.7",
56 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
57 | "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
58 | "dependencies": {
59 | "whatwg-url": "^5.0.0"
60 | },
61 | "engines": {
62 | "node": "4.x || >=6.0.0"
63 | },
64 | "peerDependencies": {
65 | "encoding": "^0.1.0"
66 | },
67 | "peerDependenciesMeta": {
68 | "encoding": {
69 | "optional": true
70 | }
71 | }
72 | },
73 | "node_modules/ansi-escapes": {
74 | "version": "4.3.2",
75 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
76 | "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
77 | "dependencies": {
78 | "type-fest": "^0.21.3"
79 | },
80 | "engines": {
81 | "node": ">=8"
82 | },
83 | "funding": {
84 | "url": "https://github.com/sponsors/sindresorhus"
85 | }
86 | },
87 | "node_modules/ansi-regex": {
88 | "version": "5.0.1",
89 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
90 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
91 | "engines": {
92 | "node": ">=8"
93 | }
94 | },
95 | "node_modules/ansi-styles": {
96 | "version": "4.3.0",
97 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
98 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
99 | "dependencies": {
100 | "color-convert": "^2.0.1"
101 | },
102 | "engines": {
103 | "node": ">=8"
104 | },
105 | "funding": {
106 | "url": "https://github.com/chalk/ansi-styles?sponsor=1"
107 | }
108 | },
109 | "node_modules/async": {
110 | "version": "3.2.4",
111 | "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz",
112 | "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ=="
113 | },
114 | "node_modules/camelcase": {
115 | "version": "5.3.1",
116 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
117 | "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
118 | "engines": {
119 | "node": ">=6"
120 | }
121 | },
122 | "node_modules/chalk": {
123 | "version": "4.1.2",
124 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
125 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
126 | "dependencies": {
127 | "ansi-styles": "^4.1.0",
128 | "supports-color": "^7.1.0"
129 | },
130 | "engines": {
131 | "node": ">=10"
132 | },
133 | "funding": {
134 | "url": "https://github.com/chalk/chalk?sponsor=1"
135 | }
136 | },
137 | "node_modules/chardet": {
138 | "version": "0.7.0",
139 | "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
140 | "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA=="
141 | },
142 | "node_modules/cli-cursor": {
143 | "version": "3.1.0",
144 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
145 | "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
146 | "dependencies": {
147 | "restore-cursor": "^3.1.0"
148 | },
149 | "engines": {
150 | "node": ">=8"
151 | }
152 | },
153 | "node_modules/cli-width": {
154 | "version": "3.0.0",
155 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz",
156 | "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==",
157 | "engines": {
158 | "node": ">= 10"
159 | }
160 | },
161 | "node_modules/cliui": {
162 | "version": "6.0.0",
163 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
164 | "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
165 | "dependencies": {
166 | "string-width": "^4.2.0",
167 | "strip-ansi": "^6.0.0",
168 | "wrap-ansi": "^6.2.0"
169 | }
170 | },
171 | "node_modules/color-convert": {
172 | "version": "2.0.1",
173 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
174 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
175 | "dependencies": {
176 | "color-name": "~1.1.4"
177 | },
178 | "engines": {
179 | "node": ">=7.0.0"
180 | }
181 | },
182 | "node_modules/color-name": {
183 | "version": "1.1.4",
184 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
185 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
186 | },
187 | "node_modules/data-uri-to-buffer": {
188 | "version": "4.0.0",
189 | "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz",
190 | "integrity": "sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==",
191 | "engines": {
192 | "node": ">= 12"
193 | }
194 | },
195 | "node_modules/decamelize": {
196 | "version": "1.2.0",
197 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
198 | "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
199 | "engines": {
200 | "node": ">=0.10.0"
201 | }
202 | },
203 | "node_modules/didyoumean": {
204 | "version": "1.2.2",
205 | "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
206 | "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw=="
207 | },
208 | "node_modules/emoji-regex": {
209 | "version": "8.0.0",
210 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
211 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
212 | },
213 | "node_modules/escape-string-regexp": {
214 | "version": "1.0.5",
215 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
216 | "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
217 | "engines": {
218 | "node": ">=0.8.0"
219 | }
220 | },
221 | "node_modules/external-editor": {
222 | "version": "3.1.0",
223 | "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
224 | "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
225 | "dependencies": {
226 | "chardet": "^0.7.0",
227 | "iconv-lite": "^0.4.24",
228 | "tmp": "^0.0.33"
229 | },
230 | "engines": {
231 | "node": ">=4"
232 | }
233 | },
234 | "node_modules/fetch-blob": {
235 | "version": "3.2.0",
236 | "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz",
237 | "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==",
238 | "funding": [
239 | {
240 | "type": "github",
241 | "url": "https://github.com/sponsors/jimmywarting"
242 | },
243 | {
244 | "type": "paypal",
245 | "url": "https://paypal.me/jimmywarting"
246 | }
247 | ],
248 | "dependencies": {
249 | "node-domexception": "^1.0.0",
250 | "web-streams-polyfill": "^3.0.3"
251 | },
252 | "engines": {
253 | "node": "^12.20 || >= 14.13"
254 | }
255 | },
256 | "node_modules/figures": {
257 | "version": "3.2.0",
258 | "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
259 | "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
260 | "dependencies": {
261 | "escape-string-regexp": "^1.0.5"
262 | },
263 | "engines": {
264 | "node": ">=8"
265 | },
266 | "funding": {
267 | "url": "https://github.com/sponsors/sindresorhus"
268 | }
269 | },
270 | "node_modules/find-up": {
271 | "version": "4.1.0",
272 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
273 | "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
274 | "dependencies": {
275 | "locate-path": "^5.0.0",
276 | "path-exists": "^4.0.0"
277 | },
278 | "engines": {
279 | "node": ">=8"
280 | }
281 | },
282 | "node_modules/formdata-polyfill": {
283 | "version": "4.0.10",
284 | "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz",
285 | "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==",
286 | "dependencies": {
287 | "fetch-blob": "^3.1.2"
288 | },
289 | "engines": {
290 | "node": ">=12.20.0"
291 | }
292 | },
293 | "node_modules/fs-extra": {
294 | "version": "11.3.0",
295 | "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz",
296 | "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==",
297 | "license": "MIT",
298 | "dependencies": {
299 | "graceful-fs": "^4.2.0",
300 | "jsonfile": "^6.0.1",
301 | "universalify": "^2.0.0"
302 | },
303 | "engines": {
304 | "node": ">=14.14"
305 | }
306 | },
307 | "node_modules/get-caller-file": {
308 | "version": "2.0.5",
309 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
310 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
311 | "engines": {
312 | "node": "6.* || 8.* || >= 10.*"
313 | }
314 | },
315 | "node_modules/graceful-fs": {
316 | "version": "4.2.10",
317 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
318 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA=="
319 | },
320 | "node_modules/has-flag": {
321 | "version": "4.0.0",
322 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
323 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
324 | "engines": {
325 | "node": ">=8"
326 | }
327 | },
328 | "node_modules/iconv-lite": {
329 | "version": "0.4.24",
330 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
331 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
332 | "dependencies": {
333 | "safer-buffer": ">= 2.1.2 < 3"
334 | },
335 | "engines": {
336 | "node": ">=0.10.0"
337 | }
338 | },
339 | "node_modules/inquirer": {
340 | "version": "7.3.3",
341 | "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz",
342 | "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==",
343 | "dependencies": {
344 | "ansi-escapes": "^4.2.1",
345 | "chalk": "^4.1.0",
346 | "cli-cursor": "^3.1.0",
347 | "cli-width": "^3.0.0",
348 | "external-editor": "^3.0.3",
349 | "figures": "^3.0.0",
350 | "lodash": "^4.17.19",
351 | "mute-stream": "0.0.8",
352 | "run-async": "^2.4.0",
353 | "rxjs": "^6.6.0",
354 | "string-width": "^4.1.0",
355 | "strip-ansi": "^6.0.0",
356 | "through": "^2.3.6"
357 | },
358 | "engines": {
359 | "node": ">=8.0.0"
360 | }
361 | },
362 | "node_modules/is-fullwidth-code-point": {
363 | "version": "3.0.0",
364 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
365 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
366 | "engines": {
367 | "node": ">=8"
368 | }
369 | },
370 | "node_modules/json-fixer": {
371 | "version": "1.6.14",
372 | "resolved": "https://registry.npmjs.org/json-fixer/-/json-fixer-1.6.14.tgz",
373 | "integrity": "sha512-9VINeH7NYVcdoNybe82oubnm9WqsJ0GsPppIqPQgxrjoUxwMq5ObCE8d+39CBBDnb/TPi9ymRCJ5twklYebdqQ==",
374 | "dependencies": {
375 | "@babel/runtime": "^7.17.9",
376 | "chalk": "^4.1.2",
377 | "pegjs": "^0.10.0"
378 | },
379 | "engines": {
380 | "node": ">=10"
381 | }
382 | },
383 | "node_modules/jsonfile": {
384 | "version": "6.1.0",
385 | "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
386 | "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
387 | "dependencies": {
388 | "universalify": "^2.0.0"
389 | },
390 | "optionalDependencies": {
391 | "graceful-fs": "^4.1.6"
392 | }
393 | },
394 | "node_modules/locate-path": {
395 | "version": "5.0.0",
396 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
397 | "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
398 | "dependencies": {
399 | "p-locate": "^4.1.0"
400 | },
401 | "engines": {
402 | "node": ">=8"
403 | }
404 | },
405 | "node_modules/lodash": {
406 | "version": "4.17.21",
407 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
408 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
409 | },
410 | "node_modules/mimic-fn": {
411 | "version": "2.1.0",
412 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
413 | "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
414 | "engines": {
415 | "node": ">=6"
416 | }
417 | },
418 | "node_modules/mute-stream": {
419 | "version": "0.0.8",
420 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
421 | "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA=="
422 | },
423 | "node_modules/node-domexception": {
424 | "version": "1.0.0",
425 | "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
426 | "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==",
427 | "funding": [
428 | {
429 | "type": "github",
430 | "url": "https://github.com/sponsors/jimmywarting"
431 | },
432 | {
433 | "type": "github",
434 | "url": "https://paypal.me/jimmywarting"
435 | }
436 | ],
437 | "engines": {
438 | "node": ">=10.5.0"
439 | }
440 | },
441 | "node_modules/node-fetch": {
442 | "version": "3.3.2",
443 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz",
444 | "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==",
445 | "dependencies": {
446 | "data-uri-to-buffer": "^4.0.0",
447 | "fetch-blob": "^3.1.4",
448 | "formdata-polyfill": "^4.0.10"
449 | },
450 | "engines": {
451 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
452 | },
453 | "funding": {
454 | "type": "opencollective",
455 | "url": "https://opencollective.com/node-fetch"
456 | }
457 | },
458 | "node_modules/onetime": {
459 | "version": "5.1.2",
460 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
461 | "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
462 | "dependencies": {
463 | "mimic-fn": "^2.1.0"
464 | },
465 | "engines": {
466 | "node": ">=6"
467 | },
468 | "funding": {
469 | "url": "https://github.com/sponsors/sindresorhus"
470 | }
471 | },
472 | "node_modules/os-tmpdir": {
473 | "version": "1.0.2",
474 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
475 | "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==",
476 | "engines": {
477 | "node": ">=0.10.0"
478 | }
479 | },
480 | "node_modules/p-limit": {
481 | "version": "2.3.0",
482 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
483 | "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
484 | "dependencies": {
485 | "p-try": "^2.0.0"
486 | },
487 | "engines": {
488 | "node": ">=6"
489 | },
490 | "funding": {
491 | "url": "https://github.com/sponsors/sindresorhus"
492 | }
493 | },
494 | "node_modules/p-locate": {
495 | "version": "4.1.0",
496 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
497 | "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
498 | "dependencies": {
499 | "p-limit": "^2.2.0"
500 | },
501 | "engines": {
502 | "node": ">=8"
503 | }
504 | },
505 | "node_modules/p-try": {
506 | "version": "2.2.0",
507 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
508 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
509 | "engines": {
510 | "node": ">=6"
511 | }
512 | },
513 | "node_modules/path-exists": {
514 | "version": "4.0.0",
515 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
516 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
517 | "engines": {
518 | "node": ">=8"
519 | }
520 | },
521 | "node_modules/pegjs": {
522 | "version": "0.10.0",
523 | "resolved": "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz",
524 | "integrity": "sha512-qI5+oFNEGi3L5HAxDwN2LA4Gg7irF70Zs25edhjld9QemOgp0CbvMtbFcMvFtEo1OityPrcCzkQFB8JP/hxgow==",
525 | "bin": {
526 | "pegjs": "bin/pegjs"
527 | },
528 | "engines": {
529 | "node": ">=0.10"
530 | }
531 | },
532 | "node_modules/pify": {
533 | "version": "5.0.0",
534 | "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz",
535 | "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==",
536 | "engines": {
537 | "node": ">=10"
538 | },
539 | "funding": {
540 | "url": "https://github.com/sponsors/sindresorhus"
541 | }
542 | },
543 | "node_modules/prettier": {
544 | "version": "2.8.8",
545 | "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
546 | "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
547 | "optional": true,
548 | "bin": {
549 | "prettier": "bin-prettier.js"
550 | },
551 | "engines": {
552 | "node": ">=10.13.0"
553 | },
554 | "funding": {
555 | "url": "https://github.com/prettier/prettier?sponsor=1"
556 | }
557 | },
558 | "node_modules/regenerator-runtime": {
559 | "version": "0.13.9",
560 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
561 | "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA=="
562 | },
563 | "node_modules/require-directory": {
564 | "version": "2.1.1",
565 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
566 | "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
567 | "engines": {
568 | "node": ">=0.10.0"
569 | }
570 | },
571 | "node_modules/require-main-filename": {
572 | "version": "2.0.0",
573 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
574 | "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
575 | },
576 | "node_modules/restore-cursor": {
577 | "version": "3.1.0",
578 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
579 | "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
580 | "dependencies": {
581 | "onetime": "^5.1.0",
582 | "signal-exit": "^3.0.2"
583 | },
584 | "engines": {
585 | "node": ">=8"
586 | }
587 | },
588 | "node_modules/run-async": {
589 | "version": "2.4.1",
590 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
591 | "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==",
592 | "engines": {
593 | "node": ">=0.12.0"
594 | }
595 | },
596 | "node_modules/rxjs": {
597 | "version": "6.6.7",
598 | "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
599 | "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==",
600 | "dependencies": {
601 | "tslib": "^1.9.0"
602 | },
603 | "engines": {
604 | "npm": ">=2.0.0"
605 | }
606 | },
607 | "node_modules/safer-buffer": {
608 | "version": "2.1.2",
609 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
610 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
611 | },
612 | "node_modules/set-blocking": {
613 | "version": "2.0.0",
614 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
615 | "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
616 | },
617 | "node_modules/signal-exit": {
618 | "version": "3.0.7",
619 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
620 | "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
621 | },
622 | "node_modules/string-width": {
623 | "version": "4.2.3",
624 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
625 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
626 | "dependencies": {
627 | "emoji-regex": "^8.0.0",
628 | "is-fullwidth-code-point": "^3.0.0",
629 | "strip-ansi": "^6.0.1"
630 | },
631 | "engines": {
632 | "node": ">=8"
633 | }
634 | },
635 | "node_modules/strip-ansi": {
636 | "version": "6.0.1",
637 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
638 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
639 | "dependencies": {
640 | "ansi-regex": "^5.0.1"
641 | },
642 | "engines": {
643 | "node": ">=8"
644 | }
645 | },
646 | "node_modules/supports-color": {
647 | "version": "7.2.0",
648 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
649 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
650 | "dependencies": {
651 | "has-flag": "^4.0.0"
652 | },
653 | "engines": {
654 | "node": ">=8"
655 | }
656 | },
657 | "node_modules/through": {
658 | "version": "2.3.8",
659 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
660 | "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="
661 | },
662 | "node_modules/tmp": {
663 | "version": "0.0.33",
664 | "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
665 | "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
666 | "dependencies": {
667 | "os-tmpdir": "~1.0.2"
668 | },
669 | "engines": {
670 | "node": ">=0.6.0"
671 | }
672 | },
673 | "node_modules/tr46": {
674 | "version": "0.0.3",
675 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
676 | "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
677 | },
678 | "node_modules/tslib": {
679 | "version": "1.14.1",
680 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
681 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
682 | },
683 | "node_modules/type-fest": {
684 | "version": "0.21.3",
685 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
686 | "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
687 | "engines": {
688 | "node": ">=10"
689 | },
690 | "funding": {
691 | "url": "https://github.com/sponsors/sindresorhus"
692 | }
693 | },
694 | "node_modules/universalify": {
695 | "version": "2.0.0",
696 | "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
697 | "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==",
698 | "engines": {
699 | "node": ">= 10.0.0"
700 | }
701 | },
702 | "node_modules/web-streams-polyfill": {
703 | "version": "3.2.1",
704 | "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz",
705 | "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==",
706 | "engines": {
707 | "node": ">= 8"
708 | }
709 | },
710 | "node_modules/webidl-conversions": {
711 | "version": "3.0.1",
712 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
713 | "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
714 | },
715 | "node_modules/whatwg-url": {
716 | "version": "5.0.0",
717 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
718 | "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
719 | "dependencies": {
720 | "tr46": "~0.0.3",
721 | "webidl-conversions": "^3.0.0"
722 | }
723 | },
724 | "node_modules/which-module": {
725 | "version": "2.0.0",
726 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
727 | "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q=="
728 | },
729 | "node_modules/wrap-ansi": {
730 | "version": "6.2.0",
731 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
732 | "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
733 | "dependencies": {
734 | "ansi-styles": "^4.0.0",
735 | "string-width": "^4.1.0",
736 | "strip-ansi": "^6.0.0"
737 | },
738 | "engines": {
739 | "node": ">=8"
740 | }
741 | },
742 | "node_modules/y18n": {
743 | "version": "4.0.3",
744 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
745 | "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
746 | },
747 | "node_modules/yargs": {
748 | "version": "15.4.1",
749 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
750 | "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
751 | "dependencies": {
752 | "cliui": "^6.0.0",
753 | "decamelize": "^1.2.0",
754 | "find-up": "^4.1.0",
755 | "get-caller-file": "^2.0.1",
756 | "require-directory": "^2.1.1",
757 | "require-main-filename": "^2.0.0",
758 | "set-blocking": "^2.0.0",
759 | "string-width": "^4.2.0",
760 | "which-module": "^2.0.0",
761 | "y18n": "^4.0.0",
762 | "yargs-parser": "^18.1.2"
763 | },
764 | "engines": {
765 | "node": ">=8"
766 | }
767 | },
768 | "node_modules/yargs-parser": {
769 | "version": "18.1.3",
770 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
771 | "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
772 | "dependencies": {
773 | "camelcase": "^5.0.0",
774 | "decamelize": "^1.2.0"
775 | },
776 | "engines": {
777 | "node": ">=6"
778 | }
779 | }
780 | },
781 | "dependencies": {
782 | "@babel/runtime": {
783 | "version": "7.18.9",
784 | "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz",
785 | "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==",
786 | "requires": {
787 | "regenerator-runtime": "^0.13.4"
788 | }
789 | },
790 | "all-contributors-cli": {
791 | "version": "6.26.1",
792 | "resolved": "https://registry.npmjs.org/all-contributors-cli/-/all-contributors-cli-6.26.1.tgz",
793 | "integrity": "sha512-Ymgo3FJACRBEd1eE653FD1J/+uD0kqpUNYfr9zNC1Qby0LgbhDBzB3EF6uvkAbYpycStkk41J+0oo37Lc02yEw==",
794 | "requires": {
795 | "@babel/runtime": "^7.7.6",
796 | "async": "^3.1.0",
797 | "chalk": "^4.0.0",
798 | "didyoumean": "^1.2.1",
799 | "inquirer": "^7.3.3",
800 | "json-fixer": "^1.6.8",
801 | "lodash": "^4.11.2",
802 | "node-fetch": "^2.6.0",
803 | "pify": "^5.0.0",
804 | "prettier": "^2",
805 | "yargs": "^15.0.1"
806 | },
807 | "dependencies": {
808 | "node-fetch": {
809 | "version": "2.6.7",
810 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
811 | "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
812 | "requires": {
813 | "whatwg-url": "^5.0.0"
814 | }
815 | }
816 | }
817 | },
818 | "ansi-escapes": {
819 | "version": "4.3.2",
820 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
821 | "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
822 | "requires": {
823 | "type-fest": "^0.21.3"
824 | }
825 | },
826 | "ansi-regex": {
827 | "version": "5.0.1",
828 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
829 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
830 | },
831 | "ansi-styles": {
832 | "version": "4.3.0",
833 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
834 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
835 | "requires": {
836 | "color-convert": "^2.0.1"
837 | }
838 | },
839 | "async": {
840 | "version": "3.2.4",
841 | "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz",
842 | "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ=="
843 | },
844 | "camelcase": {
845 | "version": "5.3.1",
846 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
847 | "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
848 | },
849 | "chalk": {
850 | "version": "4.1.2",
851 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
852 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
853 | "requires": {
854 | "ansi-styles": "^4.1.0",
855 | "supports-color": "^7.1.0"
856 | }
857 | },
858 | "chardet": {
859 | "version": "0.7.0",
860 | "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
861 | "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA=="
862 | },
863 | "cli-cursor": {
864 | "version": "3.1.0",
865 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
866 | "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
867 | "requires": {
868 | "restore-cursor": "^3.1.0"
869 | }
870 | },
871 | "cli-width": {
872 | "version": "3.0.0",
873 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz",
874 | "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw=="
875 | },
876 | "cliui": {
877 | "version": "6.0.0",
878 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
879 | "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
880 | "requires": {
881 | "string-width": "^4.2.0",
882 | "strip-ansi": "^6.0.0",
883 | "wrap-ansi": "^6.2.0"
884 | }
885 | },
886 | "color-convert": {
887 | "version": "2.0.1",
888 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
889 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
890 | "requires": {
891 | "color-name": "~1.1.4"
892 | }
893 | },
894 | "color-name": {
895 | "version": "1.1.4",
896 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
897 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
898 | },
899 | "data-uri-to-buffer": {
900 | "version": "4.0.0",
901 | "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz",
902 | "integrity": "sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA=="
903 | },
904 | "decamelize": {
905 | "version": "1.2.0",
906 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
907 | "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA=="
908 | },
909 | "didyoumean": {
910 | "version": "1.2.2",
911 | "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
912 | "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw=="
913 | },
914 | "emoji-regex": {
915 | "version": "8.0.0",
916 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
917 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
918 | },
919 | "escape-string-regexp": {
920 | "version": "1.0.5",
921 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
922 | "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg=="
923 | },
924 | "external-editor": {
925 | "version": "3.1.0",
926 | "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
927 | "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
928 | "requires": {
929 | "chardet": "^0.7.0",
930 | "iconv-lite": "^0.4.24",
931 | "tmp": "^0.0.33"
932 | }
933 | },
934 | "fetch-blob": {
935 | "version": "3.2.0",
936 | "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz",
937 | "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==",
938 | "requires": {
939 | "node-domexception": "^1.0.0",
940 | "web-streams-polyfill": "^3.0.3"
941 | }
942 | },
943 | "figures": {
944 | "version": "3.2.0",
945 | "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
946 | "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
947 | "requires": {
948 | "escape-string-regexp": "^1.0.5"
949 | }
950 | },
951 | "find-up": {
952 | "version": "4.1.0",
953 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
954 | "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
955 | "requires": {
956 | "locate-path": "^5.0.0",
957 | "path-exists": "^4.0.0"
958 | }
959 | },
960 | "formdata-polyfill": {
961 | "version": "4.0.10",
962 | "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz",
963 | "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==",
964 | "requires": {
965 | "fetch-blob": "^3.1.2"
966 | }
967 | },
968 | "fs-extra": {
969 | "version": "11.3.0",
970 | "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz",
971 | "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==",
972 | "requires": {
973 | "graceful-fs": "^4.2.0",
974 | "jsonfile": "^6.0.1",
975 | "universalify": "^2.0.0"
976 | }
977 | },
978 | "get-caller-file": {
979 | "version": "2.0.5",
980 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
981 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
982 | },
983 | "graceful-fs": {
984 | "version": "4.2.10",
985 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
986 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA=="
987 | },
988 | "has-flag": {
989 | "version": "4.0.0",
990 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
991 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
992 | },
993 | "iconv-lite": {
994 | "version": "0.4.24",
995 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
996 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
997 | "requires": {
998 | "safer-buffer": ">= 2.1.2 < 3"
999 | }
1000 | },
1001 | "inquirer": {
1002 | "version": "7.3.3",
1003 | "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz",
1004 | "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==",
1005 | "requires": {
1006 | "ansi-escapes": "^4.2.1",
1007 | "chalk": "^4.1.0",
1008 | "cli-cursor": "^3.1.0",
1009 | "cli-width": "^3.0.0",
1010 | "external-editor": "^3.0.3",
1011 | "figures": "^3.0.0",
1012 | "lodash": "^4.17.19",
1013 | "mute-stream": "0.0.8",
1014 | "run-async": "^2.4.0",
1015 | "rxjs": "^6.6.0",
1016 | "string-width": "^4.1.0",
1017 | "strip-ansi": "^6.0.0",
1018 | "through": "^2.3.6"
1019 | }
1020 | },
1021 | "is-fullwidth-code-point": {
1022 | "version": "3.0.0",
1023 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
1024 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
1025 | },
1026 | "json-fixer": {
1027 | "version": "1.6.14",
1028 | "resolved": "https://registry.npmjs.org/json-fixer/-/json-fixer-1.6.14.tgz",
1029 | "integrity": "sha512-9VINeH7NYVcdoNybe82oubnm9WqsJ0GsPppIqPQgxrjoUxwMq5ObCE8d+39CBBDnb/TPi9ymRCJ5twklYebdqQ==",
1030 | "requires": {
1031 | "@babel/runtime": "^7.17.9",
1032 | "chalk": "^4.1.2",
1033 | "pegjs": "^0.10.0"
1034 | }
1035 | },
1036 | "jsonfile": {
1037 | "version": "6.1.0",
1038 | "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
1039 | "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
1040 | "requires": {
1041 | "graceful-fs": "^4.1.6",
1042 | "universalify": "^2.0.0"
1043 | }
1044 | },
1045 | "locate-path": {
1046 | "version": "5.0.0",
1047 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
1048 | "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
1049 | "requires": {
1050 | "p-locate": "^4.1.0"
1051 | }
1052 | },
1053 | "lodash": {
1054 | "version": "4.17.21",
1055 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
1056 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
1057 | },
1058 | "mimic-fn": {
1059 | "version": "2.1.0",
1060 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
1061 | "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="
1062 | },
1063 | "mute-stream": {
1064 | "version": "0.0.8",
1065 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
1066 | "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA=="
1067 | },
1068 | "node-domexception": {
1069 | "version": "1.0.0",
1070 | "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
1071 | "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ=="
1072 | },
1073 | "node-fetch": {
1074 | "version": "3.3.2",
1075 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz",
1076 | "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==",
1077 | "requires": {
1078 | "data-uri-to-buffer": "^4.0.0",
1079 | "fetch-blob": "^3.1.4",
1080 | "formdata-polyfill": "^4.0.10"
1081 | }
1082 | },
1083 | "onetime": {
1084 | "version": "5.1.2",
1085 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
1086 | "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
1087 | "requires": {
1088 | "mimic-fn": "^2.1.0"
1089 | }
1090 | },
1091 | "os-tmpdir": {
1092 | "version": "1.0.2",
1093 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
1094 | "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g=="
1095 | },
1096 | "p-limit": {
1097 | "version": "2.3.0",
1098 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
1099 | "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
1100 | "requires": {
1101 | "p-try": "^2.0.0"
1102 | }
1103 | },
1104 | "p-locate": {
1105 | "version": "4.1.0",
1106 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
1107 | "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
1108 | "requires": {
1109 | "p-limit": "^2.2.0"
1110 | }
1111 | },
1112 | "p-try": {
1113 | "version": "2.2.0",
1114 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
1115 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
1116 | },
1117 | "path-exists": {
1118 | "version": "4.0.0",
1119 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
1120 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
1121 | },
1122 | "pegjs": {
1123 | "version": "0.10.0",
1124 | "resolved": "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz",
1125 | "integrity": "sha512-qI5+oFNEGi3L5HAxDwN2LA4Gg7irF70Zs25edhjld9QemOgp0CbvMtbFcMvFtEo1OityPrcCzkQFB8JP/hxgow=="
1126 | },
1127 | "pify": {
1128 | "version": "5.0.0",
1129 | "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz",
1130 | "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA=="
1131 | },
1132 | "prettier": {
1133 | "version": "2.8.8",
1134 | "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
1135 | "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
1136 | "optional": true
1137 | },
1138 | "regenerator-runtime": {
1139 | "version": "0.13.9",
1140 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
1141 | "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA=="
1142 | },
1143 | "require-directory": {
1144 | "version": "2.1.1",
1145 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
1146 | "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q=="
1147 | },
1148 | "require-main-filename": {
1149 | "version": "2.0.0",
1150 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
1151 | "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
1152 | },
1153 | "restore-cursor": {
1154 | "version": "3.1.0",
1155 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
1156 | "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
1157 | "requires": {
1158 | "onetime": "^5.1.0",
1159 | "signal-exit": "^3.0.2"
1160 | }
1161 | },
1162 | "run-async": {
1163 | "version": "2.4.1",
1164 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
1165 | "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ=="
1166 | },
1167 | "rxjs": {
1168 | "version": "6.6.7",
1169 | "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
1170 | "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==",
1171 | "requires": {
1172 | "tslib": "^1.9.0"
1173 | }
1174 | },
1175 | "safer-buffer": {
1176 | "version": "2.1.2",
1177 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1178 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
1179 | },
1180 | "set-blocking": {
1181 | "version": "2.0.0",
1182 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
1183 | "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
1184 | },
1185 | "signal-exit": {
1186 | "version": "3.0.7",
1187 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
1188 | "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
1189 | },
1190 | "string-width": {
1191 | "version": "4.2.3",
1192 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
1193 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
1194 | "requires": {
1195 | "emoji-regex": "^8.0.0",
1196 | "is-fullwidth-code-point": "^3.0.0",
1197 | "strip-ansi": "^6.0.1"
1198 | }
1199 | },
1200 | "strip-ansi": {
1201 | "version": "6.0.1",
1202 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
1203 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
1204 | "requires": {
1205 | "ansi-regex": "^5.0.1"
1206 | }
1207 | },
1208 | "supports-color": {
1209 | "version": "7.2.0",
1210 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1211 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1212 | "requires": {
1213 | "has-flag": "^4.0.0"
1214 | }
1215 | },
1216 | "through": {
1217 | "version": "2.3.8",
1218 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
1219 | "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="
1220 | },
1221 | "tmp": {
1222 | "version": "0.0.33",
1223 | "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
1224 | "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
1225 | "requires": {
1226 | "os-tmpdir": "~1.0.2"
1227 | }
1228 | },
1229 | "tr46": {
1230 | "version": "0.0.3",
1231 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
1232 | "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
1233 | },
1234 | "tslib": {
1235 | "version": "1.14.1",
1236 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
1237 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
1238 | },
1239 | "type-fest": {
1240 | "version": "0.21.3",
1241 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
1242 | "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w=="
1243 | },
1244 | "universalify": {
1245 | "version": "2.0.0",
1246 | "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
1247 | "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ=="
1248 | },
1249 | "web-streams-polyfill": {
1250 | "version": "3.2.1",
1251 | "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz",
1252 | "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q=="
1253 | },
1254 | "webidl-conversions": {
1255 | "version": "3.0.1",
1256 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
1257 | "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
1258 | },
1259 | "whatwg-url": {
1260 | "version": "5.0.0",
1261 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
1262 | "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
1263 | "requires": {
1264 | "tr46": "~0.0.3",
1265 | "webidl-conversions": "^3.0.0"
1266 | }
1267 | },
1268 | "which-module": {
1269 | "version": "2.0.0",
1270 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
1271 | "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q=="
1272 | },
1273 | "wrap-ansi": {
1274 | "version": "6.2.0",
1275 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
1276 | "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
1277 | "requires": {
1278 | "ansi-styles": "^4.0.0",
1279 | "string-width": "^4.1.0",
1280 | "strip-ansi": "^6.0.0"
1281 | }
1282 | },
1283 | "y18n": {
1284 | "version": "4.0.3",
1285 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
1286 | "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
1287 | },
1288 | "yargs": {
1289 | "version": "15.4.1",
1290 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
1291 | "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
1292 | "requires": {
1293 | "cliui": "^6.0.0",
1294 | "decamelize": "^1.2.0",
1295 | "find-up": "^4.1.0",
1296 | "get-caller-file": "^2.0.1",
1297 | "require-directory": "^2.1.1",
1298 | "require-main-filename": "^2.0.0",
1299 | "set-blocking": "^2.0.0",
1300 | "string-width": "^4.2.0",
1301 | "which-module": "^2.0.0",
1302 | "y18n": "^4.0.0",
1303 | "yargs-parser": "^18.1.2"
1304 | }
1305 | },
1306 | "yargs-parser": {
1307 | "version": "18.1.3",
1308 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
1309 | "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
1310 | "requires": {
1311 | "camelcase": "^5.0.0",
1312 | "decamelize": "^1.2.0"
1313 | }
1314 | }
1315 | }
1316 | }
1317 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@scratchaddons/contributors",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "src/index.js",
6 | "type": "module",
7 | "scripts": {
8 | "test": "node src/index.js",
9 | "run": "node src/index.js",
10 | "debug": "node src/index.js",
11 | "ac": "npx all-contributors",
12 | "aca": "npx all-contributors add",
13 | "acg": "npx all-contributors generate"
14 | },
15 | "repository": {
16 | "type": "git",
17 | "url": "git+https://github.com/ScratchAddons/contributors.git"
18 | },
19 | "author": "Hans5958",
20 | "license": "GPL-3.0",
21 | "bugs": {
22 | "url": "https://github.com/ScratchAddons/contributors/issues"
23 | },
24 | "homepage": "https://github.com/ScratchAddons/contributors#readme",
25 | "dependencies": {
26 | "all-contributors-cli": "^6.26.1",
27 | "fs-extra": "^11.3.0",
28 | "node-fetch": "^3.3.2"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | // import { Octokit } from "@octokit/rest"
2 | // const octokit = new Octokit()
3 | import fetch from 'node-fetch'
4 | import fs from 'fs-extra'
5 |
6 | const GITHUB_TOKEN = process.env.GH_PAT
7 |
8 | const fetchJson = async url => {
9 |
10 | const response = await fetch(url, {
11 | headers: {
12 | "User-Agent": "Hans5958",
13 | Accept: "application/vnd.github.v3+json",
14 | Authorization: `token ${GITHUB_TOKEN}`
15 | }
16 | })
17 | return await response.json()
18 | }
19 |
20 | /**
21 | * Respond to the request
22 | * @param {Request} request
23 | */
24 | const getCommits = async request => {
25 | try {
26 | const org = "ScratchAddons"
27 | // const { data } = await octokit.repos.listForOrg({org})
28 | const data = await fetchJson(`https://api.github.com/orgs/${org}/repos`)
29 | const repos = data.filter(repo => repo.fork === false).map(repo => repo.name)
30 | const totalContributors = []
31 | await Promise.all(repos.map(async repo => {
32 | // const { data } = await octokit.repos.listContributors({owner: org, repo})
33 | const data = await fetchJson(`https://api.github.com/repos/${org}/${repo}/contributors`)
34 | .catch(r => {
35 | console.log(r)
36 | return []
37 | })
38 | // console.log(data)
39 | data.forEach(contributor => {
40 | if (contributor.type === "User") {
41 | const index = totalContributors.findIndex(i => i.login === contributor.login)
42 | if (index === -1) {
43 | totalContributors.push({
44 | login: contributor.login,
45 | contributions: contributor.contributions,
46 | avatar_url: contributor.avatar_url
47 | })
48 | } else {
49 | totalContributors[index].contributions += contributor.contributions
50 | }
51 | }
52 | })
53 | }))
54 | totalContributors.sort((a, b, field='login') => (a[field] > b[field]) - (a[field] < b[field]))
55 | // console.log(stringifyB(totalContributors, null, '\t'))
56 | return totalContributors
57 | // })
58 | } catch (e) {
59 | console.error(e)
60 | // return new Response(e, { status: 503 })
61 | }
62 | }
63 |
64 | fs.writeFileSync(process.env.GITHUB_OUTPUT, `TIMESTAMP=${new Date().toISOString()}`)
65 |
66 | ;(async () => {
67 | let contributors = []
68 |
69 | await Promise.all([
70 |
71 | // Fetch contributors data from ScratchAddons/contributors, with all-contributors spec
72 | (() => new Promise(async callback => {
73 | setTimeout(async () => {
74 | let response = await (await fetch("https://raw.githubusercontent.com/ScratchAddons/contributors/master/.all-contributorsrc")).json()
75 | // console.log(contributors)
76 | // console.log(response)
77 | response.contributors.forEach(responseItem => {
78 | let index = contributors.findIndex(contributorsItem => contributorsItem.login.toLowerCase() === responseItem.login.toLowerCase())
79 | if (index === -1) {
80 | contributors.push({})
81 | index = contributors.length - 1
82 | }
83 | Object.assign(contributors[index], responseItem)
84 | })
85 | // console.log(contributors)
86 | // console.log(response)
87 | callback()
88 | }, 3000);
89 | }))(),
90 |
91 | // Fetch commit count data from all repositories
92 | (() => new Promise(async callback => {
93 | let response = await getCommits()
94 | while (contributors.length === 0) await new Promise(resolve => setTimeout(resolve, 250))
95 | response.forEach(responseItem => {
96 | let index = contributors.findIndex(contributorsItem => contributorsItem.login.toLowerCase() === responseItem.login.toLowerCase())
97 | if (index === -1) {
98 | contributors.push({})
99 | index = contributors.length - 1
100 | }
101 | responseItem.commits = responseItem.contributions
102 | delete responseItem.contributions
103 | Object.assign(contributors[index], responseItem)
104 | })
105 | callback()
106 | }))()
107 | ])
108 |
109 | fs.outputJSONSync('dist/contributors.json', contributors)
110 |
111 | })()
112 |
--------------------------------------------------------------------------------