@rosen-bridge/utils 0.2.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/constants.d.ts.map +1 -0
  3. package/dist/constants.js +3 -0
  4. package/dist/downloadRosenAssets.d.ts.map +1 -0
  5. package/dist/downloadRosenAssets.js +48 -0
  6. package/dist/downloadTssBinary.d.ts.map +1 -0
  7. package/dist/downloadTssBinary.js +45 -0
  8. package/dist/error.d.ts.map +1 -0
  9. package/dist/error.js +4 -0
  10. package/dist/index.d.ts.map +1 -0
  11. package/dist/index.js +4 -0
  12. package/dist/types/index.d.ts.map +1 -0
  13. package/dist/types/index.js +2 -0
  14. package/dist/utils/github.d.ts +241 -0
  15. package/dist/utils/github.d.ts.map +1 -0
  16. package/dist/utils/github.js +113 -0
  17. package/dist/{lib/utils → utils}/rosen.d.ts +3 -1
  18. package/dist/utils/rosen.d.ts.map +1 -0
  19. package/dist/utils/rosen.js +26 -0
  20. package/lib/downloadRosenAssets.ts +6 -1
  21. package/lib/utils/rosen.ts +10 -5
  22. package/package.json +7 -12
  23. package/tests/data/octokit.data.ts +33 -31
  24. package/tests/downloadRosenAssets.spec.ts +1 -1
  25. package/tests/utils/github.spec.ts +1 -1
  26. package/tests/utils/rosen.spec.ts +24 -10
  27. package/tsconfig.build.json +4 -0
  28. package/tsconfig.build.tsbuildinfo +1 -0
  29. package/tsconfig.json +2 -2
  30. package/dist/lib/constants.d.ts.map +0 -1
  31. package/dist/lib/constants.js +0 -3
  32. package/dist/lib/downloadRosenAssets.d.ts.map +0 -1
  33. package/dist/lib/downloadRosenAssets.js +0 -48
  34. package/dist/lib/downloadTssBinary.d.ts.map +0 -1
  35. package/dist/lib/downloadTssBinary.js +0 -45
  36. package/dist/lib/error.d.ts.map +0 -1
  37. package/dist/lib/error.js +0 -4
  38. package/dist/lib/index.d.ts.map +0 -1
  39. package/dist/lib/index.js +0 -4
  40. package/dist/lib/types/index.d.ts.map +0 -1
  41. package/dist/lib/types/index.js +0 -2
  42. package/dist/lib/utils/github.d.ts +0 -724
  43. package/dist/lib/utils/github.d.ts.map +0 -1
  44. package/dist/lib/utils/github.js +0 -113
  45. package/dist/lib/utils/rosen.d.ts.map +0 -1
  46. package/dist/lib/utils/rosen.js +0 -19
  47. package/dist/tsconfig.build.tsbuildinfo +0 -1
  48. package/dist/tsconfig.tsbuildinfo +0 -1
  49. /package/dist/{lib/constants.d.ts → constants.d.ts} +0 -0
  50. /package/dist/{lib/downloadRosenAssets.d.ts → downloadRosenAssets.d.ts} +0 -0
  51. /package/dist/{lib/downloadTssBinary.d.ts → downloadTssBinary.d.ts} +0 -0
  52. /package/dist/{lib/error.d.ts → error.d.ts} +0 -0
  53. /package/dist/{lib/index.d.ts → index.d.ts} +0 -0
  54. /package/dist/{lib/types → types}/index.d.ts +0 -0
@@ -1,724 +0,0 @@
1
- import { GithubRelease, SupportedRepo } from '../types';
2
- /**
3
- * Fetch a page of releases from Github Api in each iteration until there are no
4
- * more releases.
5
- * @param repoName
6
- * @param pageSize
7
- */
8
- declare function fetchReleasesPage(repoName: SupportedRepo, pageSize?: number): AsyncGenerator<{
9
- url: string;
10
- html_url: string;
11
- assets_url: string;
12
- upload_url: string;
13
- tarball_url: string | null;
14
- zipball_url: string | null;
15
- id: number;
16
- node_id: string;
17
- tag_name: string;
18
- target_commitish: string;
19
- name: string | null;
20
- body?: string | null | undefined;
21
- draft: boolean;
22
- prerelease: boolean;
23
- created_at: string;
24
- published_at: string | null;
25
- author: {
26
- name?: string | null | undefined;
27
- email?: string | null | undefined;
28
- login: string;
29
- id: number;
30
- node_id: string;
31
- avatar_url: string;
32
- gravatar_id: string | null;
33
- url: string;
34
- html_url: string;
35
- followers_url: string;
36
- following_url: string;
37
- gists_url: string;
38
- starred_url: string;
39
- subscriptions_url: string;
40
- organizations_url: string;
41
- repos_url: string;
42
- events_url: string;
43
- received_events_url: string;
44
- type: string;
45
- site_admin: boolean;
46
- starred_at?: string | undefined;
47
- };
48
- assets: {
49
- url: string;
50
- browser_download_url: string;
51
- id: number;
52
- node_id: string;
53
- name: string;
54
- label: string | null;
55
- state: "uploaded" | "open";
56
- content_type: string;
57
- size: number;
58
- download_count: number;
59
- created_at: string;
60
- updated_at: string;
61
- uploader: {
62
- name?: string | null | undefined;
63
- email?: string | null | undefined;
64
- login: string;
65
- id: number;
66
- node_id: string;
67
- avatar_url: string;
68
- gravatar_id: string | null;
69
- url: string;
70
- html_url: string;
71
- followers_url: string;
72
- following_url: string;
73
- gists_url: string;
74
- starred_url: string;
75
- subscriptions_url: string;
76
- organizations_url: string;
77
- repos_url: string;
78
- events_url: string;
79
- received_events_url: string;
80
- type: string;
81
- site_admin: boolean;
82
- starred_at?: string | undefined;
83
- } | null;
84
- }[];
85
- body_html?: string | undefined;
86
- body_text?: string | undefined;
87
- mentions_count?: number | undefined;
88
- discussion_url?: string | undefined;
89
- reactions?: {
90
- url: string;
91
- total_count: number;
92
- "+1": number;
93
- "-1": number;
94
- laugh: number;
95
- confused: number;
96
- heart: number;
97
- hooray: number;
98
- eyes: number;
99
- rocket: number;
100
- } | undefined;
101
- }[], void, unknown>;
102
- /**
103
- * Find the last release matching the predicate. If all releases are iterated and
104
- * no matching release is found, return null.
105
- * @param repoName
106
- * @param predicate
107
- */
108
- declare const findLastRelease: (repoName: SupportedRepo, predicate?: (release: GithubRelease) => boolean) => Promise<{
109
- url: string;
110
- html_url: string;
111
- assets_url: string;
112
- upload_url: string;
113
- tarball_url: string | null;
114
- zipball_url: string | null;
115
- id: number;
116
- node_id: string;
117
- tag_name: string;
118
- target_commitish: string;
119
- name: string | null;
120
- body?: string | null | undefined;
121
- draft: boolean;
122
- prerelease: boolean;
123
- created_at: string;
124
- published_at: string | null;
125
- author: {
126
- name?: string | null | undefined;
127
- email?: string | null | undefined;
128
- login: string;
129
- id: number;
130
- node_id: string;
131
- avatar_url: string;
132
- gravatar_id: string | null;
133
- url: string;
134
- html_url: string;
135
- followers_url: string;
136
- following_url: string;
137
- gists_url: string;
138
- starred_url: string;
139
- subscriptions_url: string;
140
- organizations_url: string;
141
- repos_url: string;
142
- events_url: string;
143
- received_events_url: string;
144
- type: string;
145
- site_admin: boolean;
146
- starred_at?: string | undefined;
147
- };
148
- assets: {
149
- url: string;
150
- browser_download_url: string;
151
- id: number;
152
- node_id: string;
153
- name: string;
154
- label: string | null;
155
- state: "uploaded" | "open";
156
- content_type: string;
157
- size: number;
158
- download_count: number;
159
- created_at: string;
160
- updated_at: string;
161
- uploader: {
162
- name?: string | null | undefined;
163
- email?: string | null | undefined;
164
- login: string;
165
- id: number;
166
- node_id: string;
167
- avatar_url: string;
168
- gravatar_id: string | null;
169
- url: string;
170
- html_url: string;
171
- followers_url: string;
172
- following_url: string;
173
- gists_url: string;
174
- starred_url: string;
175
- subscriptions_url: string;
176
- organizations_url: string;
177
- repos_url: string;
178
- events_url: string;
179
- received_events_url: string;
180
- type: string;
181
- site_admin: boolean;
182
- starred_at?: string | undefined;
183
- } | null;
184
- }[];
185
- body_html?: string | undefined;
186
- body_text?: string | undefined;
187
- mentions_count?: number | undefined;
188
- discussion_url?: string | undefined;
189
- reactions?: {
190
- url: string;
191
- total_count: number;
192
- "+1": number;
193
- "-1": number;
194
- laugh: number;
195
- confused: number;
196
- heart: number;
197
- hooray: number;
198
- eyes: number;
199
- rocket: number;
200
- } | undefined;
201
- } | null>;
202
- /**
203
- * get a GitHub release by its tag
204
- * @param repoName
205
- * @param tag
206
- */
207
- declare const getReleaseByTag: (repoName: SupportedRepo, tag: string) => Promise<{
208
- url: string;
209
- html_url: string;
210
- assets_url: string;
211
- upload_url: string;
212
- tarball_url: string | null;
213
- zipball_url: string | null;
214
- id: number;
215
- node_id: string;
216
- tag_name: string;
217
- target_commitish: string;
218
- name: string | null;
219
- body?: string | null | undefined;
220
- draft: boolean;
221
- prerelease: boolean;
222
- created_at: string;
223
- published_at: string | null;
224
- author: {
225
- name?: string | null | undefined;
226
- email?: string | null | undefined;
227
- login: string;
228
- id: number;
229
- node_id: string;
230
- avatar_url: string;
231
- gravatar_id: string | null;
232
- url: string;
233
- html_url: string;
234
- followers_url: string;
235
- following_url: string;
236
- gists_url: string;
237
- starred_url: string;
238
- subscriptions_url: string;
239
- organizations_url: string;
240
- repos_url: string;
241
- events_url: string;
242
- received_events_url: string;
243
- type: string;
244
- site_admin: boolean;
245
- starred_at?: string | undefined;
246
- };
247
- assets: {
248
- url: string;
249
- browser_download_url: string;
250
- id: number;
251
- node_id: string;
252
- name: string;
253
- label: string | null;
254
- state: "uploaded" | "open";
255
- content_type: string;
256
- size: number;
257
- download_count: number;
258
- created_at: string;
259
- updated_at: string;
260
- uploader: {
261
- name?: string | null | undefined;
262
- email?: string | null | undefined;
263
- login: string;
264
- id: number;
265
- node_id: string;
266
- avatar_url: string;
267
- gravatar_id: string | null;
268
- url: string;
269
- html_url: string;
270
- followers_url: string;
271
- following_url: string;
272
- gists_url: string;
273
- starred_url: string;
274
- subscriptions_url: string;
275
- organizations_url: string;
276
- repos_url: string;
277
- events_url: string;
278
- received_events_url: string;
279
- type: string;
280
- site_admin: boolean;
281
- starred_at?: string | undefined;
282
- } | null;
283
- }[];
284
- body_html?: string | undefined;
285
- body_text?: string | undefined;
286
- mentions_count?: number | undefined;
287
- discussion_url?: string | undefined;
288
- reactions?: {
289
- url: string;
290
- total_count: number;
291
- "+1": number;
292
- "-1": number;
293
- laugh: number;
294
- confused: number;
295
- heart: number;
296
- hooray: number;
297
- eyes: number;
298
- rocket: number;
299
- } | undefined;
300
- }>;
301
- /**
302
- * Return a function which checks if a release has at least one asset for a
303
- * specific chain type
304
- * @param chainType
305
- * @param release
306
- */
307
- declare const hasAssetForChainType: (chainType: string) => (release: GithubRelease) => boolean;
308
- /**
309
- * Return a function which checks if a release is a stable (that is, non-prerelease)
310
- * and has some asset matching a specific chain type
311
- * @param chainType
312
- */
313
- declare const isStableReleaseForChainType: (chainType: string) => (release: GithubRelease) => boolean;
314
- /**
315
- * Return a function which checks if tagPrefix is matched with release tag_name
316
- * @param tagPrefix
317
- */
318
- declare const hasMatchedTagPrefix: (tagPrefix: string) => (release: GithubRelease) => boolean;
319
- /**
320
- * Return a function which checks if a release is a stable (that is, non-prerelease),
321
- * and tagPrefix is matched with release tag_name
322
- * @param tagPrefix
323
- */
324
- declare const isStableReleaseForRegexTagType: (tagPrefix: string) => (release: GithubRelease) => boolean;
325
- /**
326
- * Find latest release (prerelease or non-prerelease) having some asset matching
327
- * a specific chain type
328
- * @param repoName
329
- * @param chainType
330
- */
331
- declare const findLatestRelease: (repoName: SupportedRepo, chainType: string) => Promise<{
332
- url: string;
333
- html_url: string;
334
- assets_url: string;
335
- upload_url: string;
336
- tarball_url: string | null;
337
- zipball_url: string | null;
338
- id: number;
339
- node_id: string;
340
- tag_name: string;
341
- target_commitish: string;
342
- name: string | null;
343
- body?: string | null | undefined;
344
- draft: boolean;
345
- prerelease: boolean;
346
- created_at: string;
347
- published_at: string | null;
348
- author: {
349
- name?: string | null | undefined;
350
- email?: string | null | undefined;
351
- login: string;
352
- id: number;
353
- node_id: string;
354
- avatar_url: string;
355
- gravatar_id: string | null;
356
- url: string;
357
- html_url: string;
358
- followers_url: string;
359
- following_url: string;
360
- gists_url: string;
361
- starred_url: string;
362
- subscriptions_url: string;
363
- organizations_url: string;
364
- repos_url: string;
365
- events_url: string;
366
- received_events_url: string;
367
- type: string;
368
- site_admin: boolean;
369
- starred_at?: string | undefined;
370
- };
371
- assets: {
372
- url: string;
373
- browser_download_url: string;
374
- id: number;
375
- node_id: string;
376
- name: string;
377
- label: string | null;
378
- state: "uploaded" | "open";
379
- content_type: string;
380
- size: number;
381
- download_count: number;
382
- created_at: string;
383
- updated_at: string;
384
- uploader: {
385
- name?: string | null | undefined;
386
- email?: string | null | undefined;
387
- login: string;
388
- id: number;
389
- node_id: string;
390
- avatar_url: string;
391
- gravatar_id: string | null;
392
- url: string;
393
- html_url: string;
394
- followers_url: string;
395
- following_url: string;
396
- gists_url: string;
397
- starred_url: string;
398
- subscriptions_url: string;
399
- organizations_url: string;
400
- repos_url: string;
401
- events_url: string;
402
- received_events_url: string;
403
- type: string;
404
- site_admin: boolean;
405
- starred_at?: string | undefined;
406
- } | null;
407
- }[];
408
- body_html?: string | undefined;
409
- body_text?: string | undefined;
410
- mentions_count?: number | undefined;
411
- discussion_url?: string | undefined;
412
- reactions?: {
413
- url: string;
414
- total_count: number;
415
- "+1": number;
416
- "-1": number;
417
- laugh: number;
418
- confused: number;
419
- heart: number;
420
- hooray: number;
421
- eyes: number;
422
- rocket: number;
423
- } | undefined;
424
- } | null>;
425
- /**
426
- * Find latest stable (that is, non-prerelease) release having some asset matching
427
- * a specific chain type
428
- * @param repoName
429
- * @param chainType
430
- */
431
- declare const findLatestStableRelease: (repoName: SupportedRepo, chainType: string) => Promise<{
432
- url: string;
433
- html_url: string;
434
- assets_url: string;
435
- upload_url: string;
436
- tarball_url: string | null;
437
- zipball_url: string | null;
438
- id: number;
439
- node_id: string;
440
- tag_name: string;
441
- target_commitish: string;
442
- name: string | null;
443
- body?: string | null | undefined;
444
- draft: boolean;
445
- prerelease: boolean;
446
- created_at: string;
447
- published_at: string | null;
448
- author: {
449
- name?: string | null | undefined;
450
- email?: string | null | undefined;
451
- login: string;
452
- id: number;
453
- node_id: string;
454
- avatar_url: string;
455
- gravatar_id: string | null;
456
- url: string;
457
- html_url: string;
458
- followers_url: string;
459
- following_url: string;
460
- gists_url: string;
461
- starred_url: string;
462
- subscriptions_url: string;
463
- organizations_url: string;
464
- repos_url: string;
465
- events_url: string;
466
- received_events_url: string;
467
- type: string;
468
- site_admin: boolean;
469
- starred_at?: string | undefined;
470
- };
471
- assets: {
472
- url: string;
473
- browser_download_url: string;
474
- id: number;
475
- node_id: string;
476
- name: string;
477
- label: string | null;
478
- state: "uploaded" | "open";
479
- content_type: string;
480
- size: number;
481
- download_count: number;
482
- created_at: string;
483
- updated_at: string;
484
- uploader: {
485
- name?: string | null | undefined;
486
- email?: string | null | undefined;
487
- login: string;
488
- id: number;
489
- node_id: string;
490
- avatar_url: string;
491
- gravatar_id: string | null;
492
- url: string;
493
- html_url: string;
494
- followers_url: string;
495
- following_url: string;
496
- gists_url: string;
497
- starred_url: string;
498
- subscriptions_url: string;
499
- organizations_url: string;
500
- repos_url: string;
501
- events_url: string;
502
- received_events_url: string;
503
- type: string;
504
- site_admin: boolean;
505
- starred_at?: string | undefined;
506
- } | null;
507
- }[];
508
- body_html?: string | undefined;
509
- body_text?: string | undefined;
510
- mentions_count?: number | undefined;
511
- discussion_url?: string | undefined;
512
- reactions?: {
513
- url: string;
514
- total_count: number;
515
- "+1": number;
516
- "-1": number;
517
- laugh: number;
518
- confused: number;
519
- heart: number;
520
- hooray: number;
521
- eyes: number;
522
- rocket: number;
523
- } | undefined;
524
- } | null>;
525
- /**
526
- * Find the latest stable (that is, non-prerelease) release that tagPrefix is matched with release tag_name
527
- * @param repoName
528
- * @param tagPrefix
529
- */
530
- declare const findLatestStableReleaseByPrefixTag: (repoName: SupportedRepo, tagPrefix: string) => Promise<{
531
- url: string;
532
- html_url: string;
533
- assets_url: string;
534
- upload_url: string;
535
- tarball_url: string | null;
536
- zipball_url: string | null;
537
- id: number;
538
- node_id: string;
539
- tag_name: string;
540
- target_commitish: string;
541
- name: string | null;
542
- body?: string | null | undefined;
543
- draft: boolean;
544
- prerelease: boolean;
545
- created_at: string;
546
- published_at: string | null;
547
- author: {
548
- name?: string | null | undefined;
549
- email?: string | null | undefined;
550
- login: string;
551
- id: number;
552
- node_id: string;
553
- avatar_url: string;
554
- gravatar_id: string | null;
555
- url: string;
556
- html_url: string;
557
- followers_url: string;
558
- following_url: string;
559
- gists_url: string;
560
- starred_url: string;
561
- subscriptions_url: string;
562
- organizations_url: string;
563
- repos_url: string;
564
- events_url: string;
565
- received_events_url: string;
566
- type: string;
567
- site_admin: boolean;
568
- starred_at?: string | undefined;
569
- };
570
- assets: {
571
- url: string;
572
- browser_download_url: string;
573
- id: number;
574
- node_id: string;
575
- name: string;
576
- label: string | null;
577
- state: "uploaded" | "open";
578
- content_type: string;
579
- size: number;
580
- download_count: number;
581
- created_at: string;
582
- updated_at: string;
583
- uploader: {
584
- name?: string | null | undefined;
585
- email?: string | null | undefined;
586
- login: string;
587
- id: number;
588
- node_id: string;
589
- avatar_url: string;
590
- gravatar_id: string | null;
591
- url: string;
592
- html_url: string;
593
- followers_url: string;
594
- following_url: string;
595
- gists_url: string;
596
- starred_url: string;
597
- subscriptions_url: string;
598
- organizations_url: string;
599
- repos_url: string;
600
- events_url: string;
601
- received_events_url: string;
602
- type: string;
603
- site_admin: boolean;
604
- starred_at?: string | undefined;
605
- } | null;
606
- }[];
607
- body_html?: string | undefined;
608
- body_text?: string | undefined;
609
- mentions_count?: number | undefined;
610
- discussion_url?: string | undefined;
611
- reactions?: {
612
- url: string;
613
- total_count: number;
614
- "+1": number;
615
- "-1": number;
616
- laugh: number;
617
- confused: number;
618
- heart: number;
619
- hooray: number;
620
- eyes: number;
621
- rocket: number;
622
- } | undefined;
623
- } | null>;
624
- /**
625
- * Find the latest release that tagPrefix is matched with release tag_name
626
- * @param repoName
627
- * @param tagPrefix
628
- */
629
- declare const findLatestReleaseByPrefixTag: (repoName: SupportedRepo, tagPrefix: string) => Promise<{
630
- url: string;
631
- html_url: string;
632
- assets_url: string;
633
- upload_url: string;
634
- tarball_url: string | null;
635
- zipball_url: string | null;
636
- id: number;
637
- node_id: string;
638
- tag_name: string;
639
- target_commitish: string;
640
- name: string | null;
641
- body?: string | null | undefined;
642
- draft: boolean;
643
- prerelease: boolean;
644
- created_at: string;
645
- published_at: string | null;
646
- author: {
647
- name?: string | null | undefined;
648
- email?: string | null | undefined;
649
- login: string;
650
- id: number;
651
- node_id: string;
652
- avatar_url: string;
653
- gravatar_id: string | null;
654
- url: string;
655
- html_url: string;
656
- followers_url: string;
657
- following_url: string;
658
- gists_url: string;
659
- starred_url: string;
660
- subscriptions_url: string;
661
- organizations_url: string;
662
- repos_url: string;
663
- events_url: string;
664
- received_events_url: string;
665
- type: string;
666
- site_admin: boolean;
667
- starred_at?: string | undefined;
668
- };
669
- assets: {
670
- url: string;
671
- browser_download_url: string;
672
- id: number;
673
- node_id: string;
674
- name: string;
675
- label: string | null;
676
- state: "uploaded" | "open";
677
- content_type: string;
678
- size: number;
679
- download_count: number;
680
- created_at: string;
681
- updated_at: string;
682
- uploader: {
683
- name?: string | null | undefined;
684
- email?: string | null | undefined;
685
- login: string;
686
- id: number;
687
- node_id: string;
688
- avatar_url: string;
689
- gravatar_id: string | null;
690
- url: string;
691
- html_url: string;
692
- followers_url: string;
693
- following_url: string;
694
- gists_url: string;
695
- starred_url: string;
696
- subscriptions_url: string;
697
- organizations_url: string;
698
- repos_url: string;
699
- events_url: string;
700
- received_events_url: string;
701
- type: string;
702
- site_admin: boolean;
703
- starred_at?: string | undefined;
704
- } | null;
705
- }[];
706
- body_html?: string | undefined;
707
- body_text?: string | undefined;
708
- mentions_count?: number | undefined;
709
- discussion_url?: string | undefined;
710
- reactions?: {
711
- url: string;
712
- total_count: number;
713
- "+1": number;
714
- "-1": number;
715
- laugh: number;
716
- confused: number;
717
- heart: number;
718
- hooray: number;
719
- eyes: number;
720
- rocket: number;
721
- } | undefined;
722
- } | null>;
723
- export { fetchReleasesPage, findLastRelease, findLatestRelease, findLatestStableRelease, findLatestStableReleaseByPrefixTag, findLatestReleaseByPrefixTag, getReleaseByTag, hasAssetForChainType, isStableReleaseForChainType, isStableReleaseForRegexTagType, hasMatchedTagPrefix, };
724
- //# sourceMappingURL=github.d.ts.map