@f3liz/rescript-misskey-api 0.6.9 → 0.7.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 (113) hide show
  1. package/lib/es6/src/Misskey.mjs +133 -156
  2. package/lib/es6/src/bindings/Ofetch.mjs +2 -0
  3. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkAccount.mjs +70 -48
  4. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkAdmin.mjs +133 -98
  5. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkAntennas.mjs +9 -6
  6. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkApp.mjs +6 -4
  7. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkAuth.mjs +6 -4
  8. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkChannels.mjs +18 -12
  9. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkCharts.mjs +6 -4
  10. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkChat.mjs +70 -54
  11. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkClips.mjs +12 -8
  12. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkDefault.mjs +27 -20
  13. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkDrive.mjs +35 -24
  14. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkFederation.mjs +18 -12
  15. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkFlash.mjs +9 -6
  16. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkFlashs.mjs +3 -2
  17. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkFollowing.mjs +21 -14
  18. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkGallery.mjs +12 -8
  19. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkGroups.mjs +30 -24
  20. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkHashtags.mjs +6 -4
  21. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkLists.mjs +9 -6
  22. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkMeta.mjs +27 -18
  23. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkNotes.mjs +85 -58
  24. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkNotifications.mjs +2 -2
  25. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkPages.mjs +8 -6
  26. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkRole.mjs +9 -6
  27. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkUsers.mjs +35 -24
  28. package/lib/es6/src/generated/kokonect-link/api/KokonectLinkWebhooks.mjs +7 -6
  29. package/lib/es6/src/generated/misskey-io/api/MisskeyIoAccount.mjs +92 -68
  30. package/lib/es6/src/generated/misskey-io/api/MisskeyIoAdmin.mjs +266 -214
  31. package/lib/es6/src/generated/misskey-io/api/MisskeyIoAntennas.mjs +17 -12
  32. package/lib/es6/src/generated/misskey-io/api/MisskeyIoApp.mjs +6 -4
  33. package/lib/es6/src/generated/misskey-io/api/MisskeyIoAuth.mjs +14 -10
  34. package/lib/es6/src/generated/misskey-io/api/MisskeyIoChannels.mjs +35 -26
  35. package/lib/es6/src/generated/misskey-io/api/MisskeyIoCharts.mjs +72 -48
  36. package/lib/es6/src/generated/misskey-io/api/MisskeyIoClip.mjs +4 -4
  37. package/lib/es6/src/generated/misskey-io/api/MisskeyIoClips.mjs +17 -12
  38. package/lib/es6/src/generated/misskey-io/api/MisskeyIoDefault.mjs +133 -110
  39. package/lib/es6/src/generated/misskey-io/api/MisskeyIoDrive.mjs +51 -36
  40. package/lib/es6/src/generated/misskey-io/api/MisskeyIoFederation.mjs +32 -22
  41. package/lib/es6/src/generated/misskey-io/api/MisskeyIoFlash.mjs +12 -10
  42. package/lib/es6/src/generated/misskey-io/api/MisskeyIoFlashs.mjs +5 -4
  43. package/lib/es6/src/generated/misskey-io/api/MisskeyIoFollowing.mjs +27 -20
  44. package/lib/es6/src/generated/misskey-io/api/MisskeyIoGallery.mjs +24 -18
  45. package/lib/es6/src/generated/misskey-io/api/MisskeyIoHashtags.mjs +18 -12
  46. package/lib/es6/src/generated/misskey-io/api/MisskeyIoLists.mjs +23 -18
  47. package/lib/es6/src/generated/misskey-io/api/MisskeyIoMeta.mjs +71 -48
  48. package/lib/es6/src/generated/misskey-io/api/MisskeyIoNonProductive.mjs +5 -4
  49. package/lib/es6/src/generated/misskey-io/api/MisskeyIoNotes.mjs +96 -70
  50. package/lib/es6/src/generated/misskey-io/api/MisskeyIoNotifications.mjs +8 -8
  51. package/lib/es6/src/generated/misskey-io/api/MisskeyIoPages.mjs +17 -14
  52. package/lib/es6/src/generated/misskey-io/api/MisskeyIoReactions.mjs +4 -4
  53. package/lib/es6/src/generated/misskey-io/api/MisskeyIoResetPassword.mjs +4 -4
  54. package/lib/es6/src/generated/misskey-io/api/MisskeyIoRole.mjs +12 -8
  55. package/lib/es6/src/generated/misskey-io/api/MisskeyIoUsers.mjs +83 -56
  56. package/lib/es6/src/generated/misskey-io/api/MisskeyIoWebhooks.mjs +17 -14
  57. package/package.json +3 -2
  58. package/src/Misskey.res +92 -149
  59. package/src/bindings/Ofetch.res +14 -0
  60. package/src/generated/kokonect-link/api/KokonectLinkAccount.res +94 -166
  61. package/src/generated/kokonect-link/api/KokonectLinkAdmin.res +182 -329
  62. package/src/generated/kokonect-link/api/KokonectLinkAntennas.res +12 -21
  63. package/src/generated/kokonect-link/api/KokonectLinkApp.res +8 -14
  64. package/src/generated/kokonect-link/api/KokonectLinkAuth.res +8 -14
  65. package/src/generated/kokonect-link/api/KokonectLinkChannels.res +24 -42
  66. package/src/generated/kokonect-link/api/KokonectLinkCharts.res +8 -14
  67. package/src/generated/kokonect-link/api/KokonectLinkChat.res +97 -178
  68. package/src/generated/kokonect-link/api/KokonectLinkClips.res +16 -28
  69. package/src/generated/kokonect-link/api/KokonectLinkDefault.res +37 -67
  70. package/src/generated/kokonect-link/api/KokonectLinkDrive.res +47 -83
  71. package/src/generated/kokonect-link/api/KokonectLinkFederation.res +24 -42
  72. package/src/generated/kokonect-link/api/KokonectLinkFlash.res +12 -21
  73. package/src/generated/kokonect-link/api/KokonectLinkFlashs.res +4 -7
  74. package/src/generated/kokonect-link/api/KokonectLinkFollowing.res +28 -49
  75. package/src/generated/kokonect-link/api/KokonectLinkGallery.res +16 -28
  76. package/src/generated/kokonect-link/api/KokonectLinkGroups.res +42 -78
  77. package/src/generated/kokonect-link/api/KokonectLinkHashtags.res +8 -14
  78. package/src/generated/kokonect-link/api/KokonectLinkLists.res +12 -21
  79. package/src/generated/kokonect-link/api/KokonectLinkMeta.res +36 -63
  80. package/src/generated/kokonect-link/api/KokonectLinkNotes.res +114 -201
  81. package/src/generated/kokonect-link/api/KokonectLinkNotifications.res +3 -6
  82. package/src/generated/kokonect-link/api/KokonectLinkPages.res +11 -20
  83. package/src/generated/kokonect-link/api/KokonectLinkRole.res +12 -21
  84. package/src/generated/kokonect-link/api/KokonectLinkUsers.res +47 -83
  85. package/src/generated/kokonect-link/api/KokonectLinkWebhooks.res +10 -19
  86. package/src/generated/misskey-io/api/MisskeyIoAccount.res +126 -228
  87. package/src/generated/misskey-io/api/MisskeyIoAdmin.res +373 -694
  88. package/src/generated/misskey-io/api/MisskeyIoAntennas.res +23 -41
  89. package/src/generated/misskey-io/api/MisskeyIoApp.res +8 -14
  90. package/src/generated/misskey-io/api/MisskeyIoAuth.res +19 -34
  91. package/src/generated/misskey-io/api/MisskeyIoChannels.res +48 -87
  92. package/src/generated/misskey-io/api/MisskeyIoCharts.res +96 -168
  93. package/src/generated/misskey-io/api/MisskeyIoClip.res +6 -12
  94. package/src/generated/misskey-io/api/MisskeyIoClips.res +23 -41
  95. package/src/generated/misskey-io/api/MisskeyIoDefault.res +188 -353
  96. package/src/generated/misskey-io/api/MisskeyIoDrive.res +69 -123
  97. package/src/generated/misskey-io/api/MisskeyIoFederation.res +43 -76
  98. package/src/generated/misskey-io/api/MisskeyIoFlash.res +17 -32
  99. package/src/generated/misskey-io/api/MisskeyIoFlashs.res +7 -13
  100. package/src/generated/misskey-io/api/MisskeyIoFollowing.res +37 -67
  101. package/src/generated/misskey-io/api/MisskeyIoGallery.res +33 -60
  102. package/src/generated/misskey-io/api/MisskeyIoHashtags.res +24 -42
  103. package/src/generated/misskey-io/api/MisskeyIoLists.res +32 -59
  104. package/src/generated/misskey-io/api/MisskeyIoMeta.res +95 -167
  105. package/src/generated/misskey-io/api/MisskeyIoNonProductive.res +7 -13
  106. package/src/generated/misskey-io/api/MisskeyIoNotes.res +131 -236
  107. package/src/generated/misskey-io/api/MisskeyIoNotifications.res +12 -24
  108. package/src/generated/misskey-io/api/MisskeyIoPages.res +24 -45
  109. package/src/generated/misskey-io/api/MisskeyIoReactions.res +6 -12
  110. package/src/generated/misskey-io/api/MisskeyIoResetPassword.res +6 -12
  111. package/src/generated/misskey-io/api/MisskeyIoRole.res +16 -28
  112. package/src/generated/misskey-io/api/MisskeyIoUsers.res +111 -195
  113. package/src/generated/misskey-io/api/MisskeyIoWebhooks.res +24 -45
@@ -1,12 +1,12 @@
1
1
  // Generated by ReScript, PLEASE EDIT WITH CARE
2
2
 
3
3
  import * as S from "sury/lib/es6/src/S.mjs";
4
+ import * as Ofetch from "ofetch";
4
5
  import * as Stdlib_JSON from "@rescript/runtime/lib/es6/Stdlib_JSON.js";
5
6
  import * as Stdlib_Array from "@rescript/runtime/lib/es6/Stdlib_Array.js";
6
7
  import * as Stdlib_JsExn from "@rescript/runtime/lib/es6/Stdlib_JsExn.js";
7
8
  import * as StreamClient from "./stream/StreamClient.mjs";
8
9
  import * as Stdlib_Option from "@rescript/runtime/lib/es6/Stdlib_Option.js";
9
- import * as Stdlib_Promise from "@rescript/runtime/lib/es6/Stdlib_Promise.js";
10
10
  import * as MisskeyIoWrapper from "./generated/misskey-io/MisskeyIoWrapper.mjs";
11
11
  import * as Primitive_option from "@rescript/runtime/lib/es6/Primitive_option.js";
12
12
  import * as StreamConnection from "./stream/StreamConnection.mjs";
@@ -14,47 +14,35 @@ import * as Primitive_exceptions from "@rescript/runtime/lib/es6/Primitive_excep
14
14
 
15
15
  S.enableJson();
16
16
 
17
- let FetchBindings = {};
17
+ function injectToken(body, token) {
18
+ if (body !== undefined) {
19
+ if (token === undefined) {
20
+ return body;
21
+ }
22
+ let obj = Stdlib_JSON.Decode.object(body);
23
+ if (obj !== undefined) {
24
+ obj["i"] = token;
25
+ return obj;
26
+ } else {
27
+ return body;
28
+ }
29
+ }
30
+ if (token === undefined) {
31
+ return body;
32
+ }
33
+ let obj$1 = {};
34
+ obj$1["i"] = token;
35
+ return obj$1;
36
+ }
18
37
 
19
38
  function defaultFetch(origin, token) {
20
39
  return (url, method_, body) => {
21
- let fullUrl = origin + `/api/` + url;
22
- let bodyWithToken;
23
- if (body !== undefined) {
24
- if (token !== undefined) {
25
- let obj = Stdlib_JSON.Decode.object(body);
26
- if (obj !== undefined) {
27
- obj["i"] = token;
28
- bodyWithToken = obj;
29
- } else {
30
- bodyWithToken = body;
31
- }
32
- } else {
33
- bodyWithToken = body;
34
- }
35
- } else if (token !== undefined) {
36
- let obj$1 = {};
37
- obj$1["i"] = token;
38
- bodyWithToken = obj$1;
39
- } else {
40
- bodyWithToken = body;
41
- }
42
- let bodyStr = Stdlib_Option.map(bodyWithToken, json => JSON.stringify(json));
43
- let headers = {};
44
- headers["Content-Type"] = "application/json";
45
- return fetch(fullUrl, {
40
+ let bodyWithToken = injectToken(body, token);
41
+ return Ofetch.ofetch(url, {
42
+ baseURL: origin + `/api`,
46
43
  method: method_,
47
- headers: headers,
48
- body: bodyStr
49
- }).then(response => {
50
- if (response.ok) {
51
- return response.json();
52
- }
53
- let msg = `API error: ` + response.status.toString() + ` ` + response.statusText;
54
- return Promise.reject({
55
- RE_EXN_ID: "JsExn",
56
- _1: new Error(msg)
57
- });
44
+ body: bodyWithToken,
45
+ retry: 0
58
46
  });
59
47
  };
60
48
  }
@@ -73,19 +61,23 @@ function wrapperConnect(client) {
73
61
  return MisskeyIoWrapper.connect(client.origin, client.token, client.fetchFn, undefined);
74
62
  }
75
63
 
76
- function request(client, endpoint, paramsOpt, param) {
64
+ async function request(client, endpoint, paramsOpt, param) {
77
65
  let params = paramsOpt !== undefined ? paramsOpt : ({});
78
- return Stdlib_Promise.$$catch(client.fetchFn(endpoint, "POST", params).then(json => Promise.resolve({
79
- TAG: "Ok",
80
- _0: json
81
- })), err => {
66
+ try {
67
+ let json = await client.fetchFn(endpoint, "POST", params);
68
+ return {
69
+ TAG: "Ok",
70
+ _0: json
71
+ };
72
+ } catch (raw_err) {
73
+ let err = Primitive_exceptions.internalToException(raw_err);
82
74
  let jsExn = Stdlib_JsExn.fromException(err);
83
75
  let msg = jsExn !== undefined ? Stdlib_Option.getOr(Stdlib_JsExn.message(Primitive_option.valFromOption(jsExn)), "Unknown error") : "Unknown error";
84
- return Promise.resolve({
76
+ return {
85
77
  TAG: "Error",
86
78
  _0: msg
87
- });
88
- });
79
+ };
80
+ }
89
81
  }
90
82
 
91
83
  function currentUser(client) {
@@ -131,7 +123,7 @@ function $$delete(client, noteId) {
131
123
  return request(client, "notes/delete", params, undefined);
132
124
  }
133
125
 
134
- function fetch$1(client, type_, limitOpt, sinceId, untilId, param) {
126
+ function fetch(client, type_, limitOpt, sinceId, untilId, param) {
135
127
  let limit = limitOpt !== undefined ? limitOpt : 10;
136
128
  let match;
137
129
  if (typeof type_ === "object") {
@@ -209,8 +201,8 @@ function unreact(client, noteId) {
209
201
  let Notes = {
210
202
  create: create,
211
203
  $$delete: $$delete,
212
- fetch: fetch$1,
213
- timeline: fetch$1,
204
+ fetch: fetch,
205
+ timeline: fetch,
214
206
  react: react,
215
207
  unreact: unreact
216
208
  };
@@ -337,34 +329,33 @@ function decodeCustomEmoji(json) {
337
329
  };
338
330
  }
339
331
 
340
- function list(client) {
341
- return request(client, "emojis", undefined, undefined).then(result => {
342
- let tmp;
343
- if (result.TAG === "Ok") {
344
- let obj = Stdlib_JSON.Decode.object(result._0);
345
- if (obj !== undefined) {
346
- let emojisArray = Stdlib_Option.flatMap(obj["emojis"], Stdlib_JSON.Decode.array);
347
- tmp = emojisArray !== undefined ? ({
348
- TAG: "Ok",
349
- _0: Stdlib_Array.filterMap(emojisArray, decodeCustomEmoji)
350
- }) : ({
351
- TAG: "Ok",
352
- _0: []
353
- });
354
- } else {
355
- tmp = {
356
- TAG: "Ok",
357
- _0: []
358
- };
359
- }
360
- } else {
361
- tmp = {
362
- TAG: "Error",
363
- _0: result._0
364
- };
365
- }
366
- return Promise.resolve(tmp);
367
- });
332
+ async function list(client) {
333
+ let result = await request(client, "emojis", undefined, undefined);
334
+ if (result.TAG !== "Ok") {
335
+ return {
336
+ TAG: "Error",
337
+ _0: result._0
338
+ };
339
+ }
340
+ let obj = Stdlib_JSON.Decode.object(result._0);
341
+ if (obj === undefined) {
342
+ return {
343
+ TAG: "Ok",
344
+ _0: []
345
+ };
346
+ }
347
+ let emojisArray = Stdlib_Option.flatMap(obj["emojis"], Stdlib_JSON.Decode.array);
348
+ if (emojisArray !== undefined) {
349
+ return {
350
+ TAG: "Ok",
351
+ _0: Stdlib_Array.filterMap(emojisArray, decodeCustomEmoji)
352
+ };
353
+ } else {
354
+ return {
355
+ TAG: "Ok",
356
+ _0: []
357
+ };
358
+ }
368
359
  }
369
360
 
370
361
  let Emojis = {
@@ -372,70 +363,70 @@ let Emojis = {
372
363
  list: list
373
364
  };
374
365
 
375
- function antennas(client) {
376
- return request(client, "antennas/list", undefined, undefined).then(result => {
377
- let tmp;
378
- if (result.TAG === "Ok") {
379
- let arr = Stdlib_JSON.Decode.array(result._0);
380
- tmp = arr !== undefined ? ({
381
- TAG: "Ok",
382
- _0: arr
383
- }) : ({
384
- TAG: "Ok",
385
- _0: []
386
- });
387
- } else {
388
- tmp = {
389
- TAG: "Error",
390
- _0: result._0
391
- };
392
- }
393
- return Promise.resolve(tmp);
394
- });
366
+ async function antennas(client) {
367
+ let result = await request(client, "antennas/list", undefined, undefined);
368
+ if (result.TAG !== "Ok") {
369
+ return {
370
+ TAG: "Error",
371
+ _0: result._0
372
+ };
373
+ }
374
+ let arr = Stdlib_JSON.Decode.array(result._0);
375
+ if (arr !== undefined) {
376
+ return {
377
+ TAG: "Ok",
378
+ _0: arr
379
+ };
380
+ } else {
381
+ return {
382
+ TAG: "Ok",
383
+ _0: []
384
+ };
385
+ }
395
386
  }
396
387
 
397
- function lists(client) {
398
- return request(client, "users/lists/list", undefined, undefined).then(result => {
399
- let tmp;
400
- if (result.TAG === "Ok") {
401
- let arr = Stdlib_JSON.Decode.array(result._0);
402
- tmp = arr !== undefined ? ({
403
- TAG: "Ok",
404
- _0: arr
405
- }) : ({
406
- TAG: "Ok",
407
- _0: []
408
- });
409
- } else {
410
- tmp = {
411
- TAG: "Error",
412
- _0: result._0
413
- };
414
- }
415
- return Promise.resolve(tmp);
416
- });
388
+ async function lists(client) {
389
+ let result = await request(client, "users/lists/list", undefined, undefined);
390
+ if (result.TAG !== "Ok") {
391
+ return {
392
+ TAG: "Error",
393
+ _0: result._0
394
+ };
395
+ }
396
+ let arr = Stdlib_JSON.Decode.array(result._0);
397
+ if (arr !== undefined) {
398
+ return {
399
+ TAG: "Ok",
400
+ _0: arr
401
+ };
402
+ } else {
403
+ return {
404
+ TAG: "Ok",
405
+ _0: []
406
+ };
407
+ }
417
408
  }
418
409
 
419
- function channels(client) {
420
- return request(client, "channels/followed", undefined, undefined).then(result => {
421
- let tmp;
422
- if (result.TAG === "Ok") {
423
- let arr = Stdlib_JSON.Decode.array(result._0);
424
- tmp = arr !== undefined ? ({
425
- TAG: "Ok",
426
- _0: arr
427
- }) : ({
428
- TAG: "Ok",
429
- _0: []
430
- });
431
- } else {
432
- tmp = {
433
- TAG: "Error",
434
- _0: result._0
435
- };
436
- }
437
- return Promise.resolve(tmp);
438
- });
410
+ async function channels(client) {
411
+ let result = await request(client, "channels/followed", undefined, undefined);
412
+ if (result.TAG !== "Ok") {
413
+ return {
414
+ TAG: "Error",
415
+ _0: result._0
416
+ };
417
+ }
418
+ let arr = Stdlib_JSON.Decode.array(result._0);
419
+ if (arr !== undefined) {
420
+ return {
421
+ TAG: "Ok",
422
+ _0: arr
423
+ };
424
+ } else {
425
+ return {
426
+ TAG: "Ok",
427
+ _0: []
428
+ };
429
+ }
439
430
  }
440
431
 
441
432
  function extractIdAndName(item) {
@@ -535,11 +526,7 @@ function permissionToString(perm) {
535
526
  }
536
527
 
537
528
  function generateSessionId() {
538
- return (function() {
539
- var a = new Uint8Array(16);
540
- crypto.getRandomValues(a);
541
- return Array.from(a, function(b) { return b.toString(16).padStart(2, '0'); }).join('');
542
- }());
529
+ return crypto.randomUUID().replaceAll("-", "");
543
530
  }
544
531
 
545
532
  function generateUrl(origin, name, permissions, callback, icon, param) {
@@ -559,21 +546,11 @@ function generateUrl(origin, name, permissions, callback, icon, param) {
559
546
 
560
547
  async function check(origin, sessionId) {
561
548
  try {
562
- let url = origin + `/api/miauth/` + sessionId + `/check`;
563
- let headers = {};
564
- headers["Content-Type"] = "application/json";
565
- let response = await fetch(url, {
549
+ let json = await Ofetch.ofetch(origin + `/api/miauth/` + sessionId + `/check`, {
566
550
  method: "POST",
567
- headers: headers,
568
- body: "{}"
551
+ body: {},
552
+ retry: 0
569
553
  });
570
- if (!response.ok) {
571
- return {
572
- TAG: "Error",
573
- _0: `HTTP error: ` + response.status.toString() + ` ` + response.statusText
574
- };
575
- }
576
- let json = await response.json();
577
554
  let obj = Stdlib_JSON.Decode.object(json);
578
555
  if (obj === undefined) {
579
556
  return {
@@ -657,7 +634,7 @@ function isAPIError(error) {
657
634
  let $$default = connect;
658
635
 
659
636
  export {
660
- FetchBindings,
637
+ injectToken,
661
638
  defaultFetch,
662
639
  connect,
663
640
  wrapperConnect,
@@ -0,0 +1,2 @@
1
+ // Generated by ReScript, PLEASE EDIT WITH CARE
2
+ /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */