e621 3.0.3 → 3.2.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 (294) hide show
  1. package/README.md +52 -0
  2. package/dist/browser/e621.d.ts +2 -0
  3. package/dist/browser/e621.js +19289 -0
  4. package/dist/browser/e621.js.map +7 -0
  5. package/dist/lib/Debug.browser.d.ts +6 -0
  6. package/dist/lib/Debug.browser.js +8 -0
  7. package/dist/lib/client.d.ts +59 -0
  8. package/dist/lib/client.js +72 -0
  9. package/dist/lib/errors.d.ts +3 -3
  10. package/dist/lib/errors.js +6 -2
  11. package/dist/lib/generated/client/client.js +105 -124
  12. package/dist/lib/generated/client/types.d.ts +6 -3
  13. package/dist/lib/generated/client/utils.d.ts +7 -3
  14. package/dist/lib/generated/client/utils.js +4 -4
  15. package/dist/lib/generated/core/params.js +5 -5
  16. package/dist/lib/generated/core/serverSentEvents.d.ts +1 -1
  17. package/dist/lib/generated/core/serverSentEvents.js +4 -5
  18. package/dist/lib/generated/schemas.d.ts +1192 -219
  19. package/dist/lib/generated/schemas.js +1780 -483
  20. package/dist/lib/generated/sdk.d.ts +612 -380
  21. package/dist/lib/generated/sdk.js +895 -546
  22. package/dist/lib/generated/types.d.ts +6241 -4549
  23. package/dist/lib/index.d.ts +2 -43
  24. package/dist/lib/index.js +5 -61
  25. package/dist/lib/models/Appeal.d.ts +48 -0
  26. package/dist/lib/models/Appeal.js +74 -0
  27. package/dist/lib/models/Artist.d.ts +15 -18
  28. package/dist/lib/models/Artist.js +24 -27
  29. package/dist/lib/models/AvoidPosting.d.ts +11 -15
  30. package/dist/lib/models/AvoidPosting.js +21 -25
  31. package/dist/lib/models/Base.browser.d.ts +14 -0
  32. package/dist/lib/models/Base.browser.js +22 -0
  33. package/dist/lib/models/BasicPost.d.ts +14 -0
  34. package/dist/lib/models/BasicPost.js +17 -0
  35. package/dist/lib/models/Blip.d.ts +19 -24
  36. package/dist/lib/models/Blip.js +30 -35
  37. package/dist/lib/models/BulkUpdateRequest.d.ts +9 -12
  38. package/dist/lib/models/BulkUpdateRequest.js +18 -21
  39. package/dist/lib/models/Comment.d.ts +25 -32
  40. package/dist/lib/models/Comment.js +39 -46
  41. package/dist/lib/models/CommentVote.d.ts +47 -0
  42. package/dist/lib/models/CommentVote.js +74 -0
  43. package/dist/lib/models/CurrentUser.d.ts +33 -1
  44. package/dist/lib/models/CurrentUser.js +54 -3
  45. package/dist/lib/models/DMail.d.ts +15 -9
  46. package/dist/lib/models/DMail.js +27 -13
  47. package/dist/lib/models/DbExport.d.ts +14 -0
  48. package/dist/lib/models/DbExport.js +17 -0
  49. package/dist/lib/models/EmailBlacklist.d.ts +2 -3
  50. package/dist/lib/models/EmailBlacklist.js +4 -5
  51. package/dist/lib/models/ExceptionLog.d.ts +14 -0
  52. package/dist/lib/models/ExceptionLog.js +17 -0
  53. package/dist/lib/models/ExtendedPost.d.ts +14 -0
  54. package/dist/lib/models/ExtendedPost.js +17 -0
  55. package/dist/lib/models/ForumPost.d.ts +37 -34
  56. package/dist/lib/models/ForumPost.js +57 -47
  57. package/dist/lib/models/ForumPostVote.d.ts +2 -3
  58. package/dist/lib/models/ForumPostVote.js +5 -6
  59. package/dist/lib/models/ForumTopic.d.ts +20 -26
  60. package/dist/lib/models/ForumTopic.js +33 -39
  61. package/dist/lib/models/HelpPage.d.ts +37 -0
  62. package/dist/lib/models/HelpPage.js +55 -0
  63. package/dist/lib/models/IpBan.d.ts +2 -3
  64. package/dist/lib/models/IpBan.js +4 -5
  65. package/dist/lib/models/Mascot.d.ts +6 -8
  66. package/dist/lib/models/Mascot.js +10 -12
  67. package/dist/lib/models/MinimalUser.d.ts +14 -0
  68. package/dist/lib/models/MinimalUser.js +17 -0
  69. package/dist/lib/models/NewsUpdate.d.ts +6 -8
  70. package/dist/lib/models/NewsUpdate.js +10 -12
  71. package/dist/lib/models/Note.d.ts +9 -12
  72. package/dist/lib/models/Note.js +18 -21
  73. package/dist/lib/models/NoteVersion.d.ts +2 -3
  74. package/dist/lib/models/NoteVersion.js +4 -5
  75. package/dist/lib/models/Pool.d.ts +15 -20
  76. package/dist/lib/models/Pool.js +28 -33
  77. package/dist/lib/models/PoolVersion.d.ts +2 -3
  78. package/dist/lib/models/PoolVersion.js +4 -5
  79. package/dist/lib/models/Post.d.ts +5 -174
  80. package/dist/lib/models/Post.js +8 -294
  81. package/dist/lib/models/PostApproval.d.ts +2 -3
  82. package/dist/lib/models/PostApproval.js +4 -5
  83. package/dist/lib/models/PostFlag.d.ts +4 -6
  84. package/dist/lib/models/PostFlag.js +8 -10
  85. package/dist/lib/models/PostReplacement.d.ts +10 -15
  86. package/dist/lib/models/PostReplacement.js +16 -21
  87. package/dist/lib/models/PostSet.d.ts +15 -20
  88. package/dist/lib/models/PostSet.js +26 -31
  89. package/dist/lib/models/PostVersion.d.ts +8 -12
  90. package/dist/lib/models/PostVersion.js +13 -17
  91. package/dist/lib/models/PostVote.d.ts +6 -9
  92. package/dist/lib/models/PostVote.js +11 -14
  93. package/dist/lib/models/SearchTrendBlacklist.d.ts +23 -0
  94. package/dist/lib/models/SearchTrendBlacklist.js +41 -3
  95. package/dist/lib/models/StaffFile.d.ts +37 -0
  96. package/dist/lib/models/StaffFile.js +55 -0
  97. package/dist/lib/models/StaffNote.d.ts +10 -13
  98. package/dist/lib/models/StaffNote.js +19 -22
  99. package/dist/lib/models/StaffWiki.d.ts +59 -0
  100. package/dist/lib/models/StaffWiki.js +93 -0
  101. package/dist/lib/models/StaffWikiVersion.d.ts +14 -0
  102. package/dist/lib/models/StaffWikiVersion.js +17 -0
  103. package/dist/lib/models/Tag.d.ts +16 -20
  104. package/dist/lib/models/Tag.js +28 -32
  105. package/dist/lib/models/TagAlias.d.ts +11 -14
  106. package/dist/lib/models/TagAlias.js +20 -23
  107. package/dist/lib/models/TagImplication.d.ts +11 -14
  108. package/dist/lib/models/TagImplication.js +20 -23
  109. package/dist/lib/models/Takedown.d.ts +18 -24
  110. package/dist/lib/models/Takedown.js +27 -33
  111. package/dist/lib/models/ThumbnailPost.d.ts +14 -0
  112. package/dist/lib/models/ThumbnailPost.js +17 -0
  113. package/dist/lib/models/Ticket.d.ts +11 -14
  114. package/dist/lib/models/Ticket.js +20 -23
  115. package/dist/lib/models/UploadWhitelist.d.ts +6 -8
  116. package/dist/lib/models/UploadWhitelist.js +10 -12
  117. package/dist/lib/models/User.d.ts +27 -23
  118. package/dist/lib/models/User.js +43 -31
  119. package/dist/lib/models/UserFeedback.d.ts +11 -15
  120. package/dist/lib/models/UserFeedback.js +21 -25
  121. package/dist/lib/models/UserNameChangeRequest.d.ts +2 -3
  122. package/dist/lib/models/UserNameChangeRequest.js +4 -5
  123. package/dist/lib/models/WikiPage.d.ts +11 -14
  124. package/dist/lib/models/WikiPage.js +20 -23
  125. package/dist/lib/models/WikiPageVersion.d.ts +2 -3
  126. package/dist/lib/models/WikiPageVersion.js +4 -5
  127. package/dist/lib/models/index.d.ts +12 -1
  128. package/dist/lib/models/index.js +13 -2
  129. package/dist/lib/models/posts/Actions.d.ts +279 -0
  130. package/dist/lib/models/posts/Actions.js +476 -0
  131. package/dist/lib/modules/Appeals.d.ts +69 -0
  132. package/dist/lib/modules/Appeals.js +125 -0
  133. package/dist/lib/modules/ArtistUrls.d.ts +5 -5
  134. package/dist/lib/modules/ArtistUrls.js +7 -7
  135. package/dist/lib/modules/ArtistVersions.d.ts +5 -5
  136. package/dist/lib/modules/ArtistVersions.js +7 -7
  137. package/dist/lib/modules/Artists.d.ts +31 -36
  138. package/dist/lib/modules/Artists.js +53 -58
  139. package/dist/lib/modules/AvoidPostingVersions.d.ts +5 -5
  140. package/dist/lib/modules/AvoidPostingVersions.js +7 -7
  141. package/dist/lib/modules/AvoidPostings.d.ts +29 -55
  142. package/dist/lib/modules/AvoidPostings.js +51 -75
  143. package/dist/lib/modules/Bans.d.ts +7 -8
  144. package/dist/lib/modules/Bans.js +11 -12
  145. package/dist/lib/modules/Base.d.ts +15 -4
  146. package/dist/lib/modules/Base.js +15 -4
  147. package/dist/lib/modules/Blips.d.ts +34 -41
  148. package/dist/lib/modules/Blips.js +59 -64
  149. package/dist/lib/modules/BulkUpdateRequests.d.ts +25 -30
  150. package/dist/lib/modules/BulkUpdateRequests.js +47 -52
  151. package/dist/lib/modules/CommentVotes.d.ts +45 -6
  152. package/dist/lib/modules/CommentVotes.js +75 -12
  153. package/dist/lib/modules/Comments.d.ts +34 -43
  154. package/dist/lib/modules/Comments.js +57 -66
  155. package/dist/lib/modules/DMails.d.ts +25 -20
  156. package/dist/lib/modules/DMails.js +37 -32
  157. package/dist/lib/modules/DText.d.ts +6 -6
  158. package/dist/lib/modules/DText.js +7 -7
  159. package/dist/lib/modules/DbExports.d.ts +13 -0
  160. package/dist/lib/modules/DbExports.js +27 -0
  161. package/dist/lib/modules/EditHistories.d.ts +8 -9
  162. package/dist/lib/modules/EditHistories.js +11 -12
  163. package/dist/lib/modules/EmailBlacklists.d.ts +10 -12
  164. package/dist/lib/modules/EmailBlacklists.js +16 -18
  165. package/dist/lib/modules/Favorites.d.ts +15 -17
  166. package/dist/lib/modules/Favorites.js +20 -20
  167. package/dist/lib/modules/ForumPostVotes.d.ts +40 -0
  168. package/dist/lib/modules/ForumPostVotes.js +71 -0
  169. package/dist/lib/modules/ForumPosts.d.ts +32 -41
  170. package/dist/lib/modules/ForumPosts.js +55 -64
  171. package/dist/lib/modules/ForumTopics.d.ts +36 -50
  172. package/dist/lib/modules/ForumTopics.js +61 -84
  173. package/dist/lib/modules/Health.d.ts +12 -0
  174. package/dist/lib/modules/Health.js +26 -0
  175. package/dist/lib/modules/HelpPages.d.ts +27 -26
  176. package/dist/lib/modules/HelpPages.js +58 -47
  177. package/dist/lib/modules/IpBans.d.ts +10 -12
  178. package/dist/lib/modules/IpBans.js +16 -18
  179. package/dist/lib/modules/IqdbQueries.d.ts +14 -14
  180. package/dist/lib/modules/IqdbQueries.js +25 -18
  181. package/dist/lib/modules/Mascots.d.ts +19 -22
  182. package/dist/lib/modules/Mascots.js +33 -36
  183. package/dist/lib/modules/ModActions.d.ts +7 -8
  184. package/dist/lib/modules/ModActions.js +11 -12
  185. package/dist/lib/modules/NewsUpdates.d.ts +19 -22
  186. package/dist/lib/modules/NewsUpdates.js +35 -38
  187. package/dist/lib/modules/NoteVersions.d.ts +5 -5
  188. package/dist/lib/modules/NoteVersions.js +7 -7
  189. package/dist/lib/modules/Notes.d.ts +24 -29
  190. package/dist/lib/modules/Notes.js +45 -50
  191. package/dist/lib/modules/PoolVersions.d.ts +5 -5
  192. package/dist/lib/modules/PoolVersions.js +7 -7
  193. package/dist/lib/modules/Pools.d.ts +33 -41
  194. package/dist/lib/modules/Pools.js +58 -66
  195. package/dist/lib/modules/Popular.d.ts +7 -7
  196. package/dist/lib/modules/Popular.js +13 -11
  197. package/dist/lib/modules/PostApprovals.d.ts +9 -11
  198. package/dist/lib/modules/PostApprovals.js +15 -17
  199. package/dist/lib/modules/PostDisapprovals.d.ts +11 -9
  200. package/dist/lib/modules/PostDisapprovals.js +12 -13
  201. package/dist/lib/modules/PostEvents.d.ts +5 -5
  202. package/dist/lib/modules/PostEvents.js +13 -9
  203. package/dist/lib/modules/PostFlags.d.ts +26 -15
  204. package/dist/lib/modules/PostFlags.js +42 -23
  205. package/dist/lib/modules/PostReplacements.d.ts +20 -26
  206. package/dist/lib/modules/PostReplacements.js +36 -38
  207. package/dist/lib/modules/PostSets.d.ts +34 -42
  208. package/dist/lib/modules/PostSets.js +60 -68
  209. package/dist/lib/modules/PostVersions.d.ts +11 -14
  210. package/dist/lib/modules/PostVersions.js +19 -22
  211. package/dist/lib/modules/PostVotes.d.ts +33 -12
  212. package/dist/lib/modules/PostVotes.js +56 -17
  213. package/dist/lib/modules/Posts.d.ts +130 -70
  214. package/dist/lib/modules/Posts.js +215 -115
  215. package/dist/lib/modules/RelatedTags.d.ts +7 -7
  216. package/dist/lib/modules/RelatedTags.js +7 -7
  217. package/dist/lib/modules/SearchTrendBlacklists.d.ts +11 -28
  218. package/dist/lib/modules/SearchTrendBlacklists.js +15 -40
  219. package/dist/lib/modules/SearchTrends.d.ts +30 -19
  220. package/dist/lib/modules/SearchTrends.js +41 -22
  221. package/dist/lib/modules/StaffAutomodDMails.d.ts +55 -0
  222. package/dist/lib/modules/StaffAutomodDMails.js +98 -0
  223. package/dist/lib/modules/{users/DMails.d.ts → StaffDMails.d.ts} +8 -9
  224. package/dist/lib/modules/StaffDMails.js +54 -0
  225. package/dist/lib/modules/StaffExceptionLogs.d.ts +33 -0
  226. package/dist/lib/modules/StaffExceptionLogs.js +54 -0
  227. package/dist/lib/modules/StaffFiles.d.ts +72 -0
  228. package/dist/lib/modules/StaffFiles.js +121 -0
  229. package/dist/lib/modules/StaffNotes.d.ts +26 -31
  230. package/dist/lib/modules/StaffNotes.js +47 -52
  231. package/dist/lib/modules/StaffUserCleanups.d.ts +60 -0
  232. package/dist/lib/modules/StaffUserCleanups.js +124 -0
  233. package/dist/lib/modules/StaffUsers.d.ts +43 -0
  234. package/dist/lib/modules/StaffUsers.js +75 -0
  235. package/dist/lib/modules/StaffVoteTrends.d.ts +26 -0
  236. package/dist/lib/modules/StaffVoteTrends.js +39 -0
  237. package/dist/lib/modules/StaffWikiVersions.d.ts +33 -0
  238. package/dist/lib/modules/StaffWikiVersions.js +54 -0
  239. package/dist/lib/modules/StaffWikis.d.ts +94 -0
  240. package/dist/lib/modules/StaffWikis.js +165 -0
  241. package/dist/lib/modules/TagAliases.d.ts +26 -31
  242. package/dist/lib/modules/TagAliases.js +47 -52
  243. package/dist/lib/modules/TagCorrections.d.ts +6 -7
  244. package/dist/lib/modules/TagCorrections.js +12 -13
  245. package/dist/lib/modules/TagImplications.d.ts +26 -31
  246. package/dist/lib/modules/TagImplications.js +47 -52
  247. package/dist/lib/modules/TagTypeVersions.d.ts +5 -5
  248. package/dist/lib/modules/TagTypeVersions.js +7 -7
  249. package/dist/lib/modules/Tags.d.ts +23 -27
  250. package/dist/lib/modules/Tags.js +42 -46
  251. package/dist/lib/modules/Takedowns.d.ts +37 -45
  252. package/dist/lib/modules/Takedowns.js +59 -67
  253. package/dist/lib/modules/Tickets.d.ts +24 -28
  254. package/dist/lib/modules/Tickets.js +44 -48
  255. package/dist/lib/modules/UploadWhitelists.d.ts +21 -25
  256. package/dist/lib/modules/UploadWhitelists.js +37 -41
  257. package/dist/lib/modules/Uploads.d.ts +11 -13
  258. package/dist/lib/modules/Uploads.js +16 -18
  259. package/dist/lib/modules/UserFeedbacks.d.ts +28 -34
  260. package/dist/lib/modules/UserFeedbacks.js +52 -58
  261. package/dist/lib/modules/UserNameChangeRequests.d.ts +12 -15
  262. package/dist/lib/modules/UserNameChangeRequests.js +20 -23
  263. package/dist/lib/modules/Users.d.ts +56 -40
  264. package/dist/lib/modules/Users.js +91 -63
  265. package/dist/lib/modules/WikiPageVersions.d.ts +7 -8
  266. package/dist/lib/modules/WikiPageVersions.js +11 -12
  267. package/dist/lib/modules/WikiPages.d.ts +26 -31
  268. package/dist/lib/modules/WikiPages.js +47 -52
  269. package/dist/lib/modules/index.d.ts +39 -10
  270. package/dist/lib/modules/index.js +27 -5
  271. package/dist/lib/modules/posts/Format.d.ts +27 -0
  272. package/dist/lib/modules/posts/Format.js +17 -0
  273. package/dist/lib/standalone.d.ts +20 -0
  274. package/dist/lib/standalone.js +17 -0
  275. package/dist/lib/util.js +4 -10
  276. package/dist/lib/version.d.ts +2 -0
  277. package/dist/lib/version.js +3 -0
  278. package/package.json +34 -10
  279. package/tsconfig.json +2 -2
  280. package/dist/lib/generated/source.json +0 -19075
  281. package/dist/lib/models/Help.d.ts +0 -39
  282. package/dist/lib/models/Help.js +0 -57
  283. package/dist/lib/modules/admin/Users.d.ts +0 -45
  284. package/dist/lib/modules/admin/Users.js +0 -77
  285. package/dist/lib/modules/comments/Votes.d.ts +0 -31
  286. package/dist/lib/modules/comments/Votes.js +0 -51
  287. package/dist/lib/modules/forum_posts/Votes.d.ts +0 -29
  288. package/dist/lib/modules/forum_posts/Votes.js +0 -51
  289. package/dist/lib/modules/posts/Flag.d.ts +0 -16
  290. package/dist/lib/modules/posts/Flag.js +0 -31
  291. package/dist/lib/modules/posts/Votes.d.ts +0 -31
  292. package/dist/lib/modules/posts/Votes.js +0 -51
  293. package/dist/lib/modules/users/DMails.js +0 -55
  294. package/dist/package.json +0 -73
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Browser build of {@link Debug}. `debug`/`persistent-debug` are Node-only optional dependencies whose
3
+ * dynamic imports break browser bundlers (see #15), so this no-op variant is swapped in via
4
+ * package.json's `browser` field.
5
+ */
6
+ export default function Debug(_namespace: string, _formatter: unknown, ..._args: Array<unknown>): void;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Browser build of {@link Debug}. `debug`/`persistent-debug` are Node-only optional dependencies whose
3
+ * dynamic imports break browser bundlers (see #15), so this no-op variant is swapped in via
4
+ * package.json's `browser` field.
5
+ */
6
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function
7
+ export default function Debug(_namespace, _formatter, ..._args) { }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVidWcuYnJvd3Nlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9EZWJ1Zy5icm93c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxtR0FBbUc7QUFDbkcsTUFBTSxDQUFDLE9BQU8sVUFBVSxLQUFLLENBQUMsVUFBa0IsRUFBRSxVQUFtQixFQUFFLEdBQUcsS0FBcUIsSUFBUyxDQUFDIn0=
@@ -0,0 +1,59 @@
1
+ import type { Client } from "./generated/client/types.js";
2
+ /** @category Main */
3
+ export interface Options {
4
+ /**
5
+ * The api key you want to authenticate with (Account -> Manage API Access)
6
+ * @default none
7
+ */
8
+ authKey?: string;
9
+ /**
10
+ * The uername of the user you want to authenticate with
11
+ * @default none
12
+ */
13
+ authUser?: string;
14
+ /**
15
+ * The base URL for the API.
16
+ * @default https://e621.net
17
+ */
18
+ baseURL?: string;
19
+ /**
20
+ * The number of seconds before a request times out
21
+ * @default 30
22
+ */
23
+ requestTimeout?: number;
24
+ /**
25
+ * The url to use for status checks.
26
+ * @default https://status.e621.church/json
27
+ */
28
+ statusCheckURL?: string;
29
+ /**
30
+ * The user agent to use for requests
31
+ * @defaultWithoutAuthentication E621/\{version\} (+https://github.com/DonovanDMC/E621)
32
+ * @defaultWithAuthentication E621/\{version\} (+https://github.com/DonovanDMC/E621; \{authUser\})
33
+ */
34
+ userAgent?: string;
35
+ }
36
+ /** @category Main */
37
+ export interface InstanceOptions {
38
+ authKey: string | null;
39
+ authUser: string | null;
40
+ baseURL: string;
41
+ requestTimeout: number;
42
+ statusCheckURL: string;
43
+ userAgent: string;
44
+ }
45
+ /** @category Main */
46
+ export interface E621ClientResult {
47
+ client: Client;
48
+ options: InstanceOptions;
49
+ }
50
+ /**
51
+ * Builds the generated API {@link Client} and resolved {@link InstanceOptions} used by the main {@link E621}
52
+ * class, handling auth header injection, the default user agent, and request/response {@link Debug} logging.
53
+ *
54
+ * Exposed standalone (see `e621/standalone`) so modules can be constructed directly, without the full
55
+ * {@link E621} client, when bundle size matters more than convenience.
56
+ *
57
+ * @category Main
58
+ */
59
+ export declare function createE621Client(options?: Options): E621ClientResult;
@@ -0,0 +1,72 @@
1
+ import Debug from "./Debug.js";
2
+ import { createClient } from "./generated/client/client.js";
3
+ import { createConfig } from "./generated/client/utils.js";
4
+ import { VERSION } from "./version.js";
5
+ /**
6
+ * Builds the generated API {@link Client} and resolved {@link InstanceOptions} used by the main {@link E621}
7
+ * class, handling auth header injection, the default user agent, and request/response {@link Debug} logging.
8
+ *
9
+ * Exposed standalone (see `e621/standalone`) so modules can be constructed directly, without the full
10
+ * {@link E621} client, when bundle size matters more than convenience.
11
+ *
12
+ * @category Main
13
+ */
14
+ export function createE621Client(options) {
15
+ const resolved = {
16
+ authKey: options?.authKey ?? null,
17
+ authUser: options?.authUser ?? null,
18
+ baseURL: options?.baseURL ?? "https://e621.net",
19
+ requestTimeout: options?.requestTimeout ?? 30,
20
+ statusCheckURL: options?.statusCheckURL ?? "https://status.e621.church/json",
21
+ userAgent: options?.userAgent ?? `E621/${VERSION} (https://github.com/DonovanDMC/E621${options?.authUser ? `; "${options.authUser}"` : ""})`,
22
+ };
23
+ let config;
24
+ const commonConfig = {
25
+ baseUrl: resolved.baseURL,
26
+ headers: {
27
+ "User-Agent": resolved.userAgent,
28
+ },
29
+ fetch: async (input, init) => {
30
+ let url = "unknown", method = "unknown";
31
+ // for some reason it doesn't seem to be inserting the Authorization header
32
+ if (input instanceof Request) {
33
+ url = input.url;
34
+ method = input.method.toLowerCase();
35
+ if (!input.headers.has("Auithorization") && resolved.authKey && resolved.authUser) {
36
+ input.headers.set("Authorization", `Basic ${btoa(`${resolved.authUser}:${resolved.authKey}`)}`);
37
+ }
38
+ }
39
+ else if (init) {
40
+ url = input.toString();
41
+ method = init.method?.toLowerCase() ?? "get";
42
+ if (resolved.authKey && resolved.authUser) {
43
+ const headers = new Headers(init.headers);
44
+ if (!headers.has("Authorization")) {
45
+ headers.set("Authorization", `Basic ${btoa(`${resolved.authUser}:${resolved.authKey}`)}`);
46
+ }
47
+ init.headers = headers;
48
+ }
49
+ }
50
+ Debug(`request:${method}`, `-> ${url}`);
51
+ const res = await fetch(input, init);
52
+ Debug(`response:${method}`, `<- ${url} ${res.status} ${res.statusText}`);
53
+ return res;
54
+ },
55
+ };
56
+ if (resolved.authKey && resolved.authUser) {
57
+ config = createConfig({
58
+ ...commonConfig,
59
+ auth: (auth) => {
60
+ if (auth.scheme === "basic") {
61
+ return `${resolved.authUser}:${resolved.authKey}`;
62
+ }
63
+ return;
64
+ },
65
+ });
66
+ }
67
+ else {
68
+ config = createConfig(commonConfig);
69
+ }
70
+ return { client: createClient(config), options: resolved };
71
+ }
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxZQUFZLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBdUR2Qzs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxPQUFpQjtJQUM5QyxNQUFNLFFBQVEsR0FBb0I7UUFDOUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLElBQUksSUFBSTtRQUNqQyxRQUFRLEVBQUUsT0FBTyxFQUFFLFFBQVEsSUFBSSxJQUFJO1FBQ25DLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxJQUFJLGtCQUFrQjtRQUMvQyxjQUFjLEVBQUUsT0FBTyxFQUFFLGNBQWMsSUFBSSxFQUFFO1FBQzdDLGNBQWMsRUFBRSxPQUFPLEVBQUUsY0FBYyxJQUFJLGlDQUFpQztRQUM1RSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsSUFBSSxRQUFRLE9BQU8sdUNBQXVDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUc7S0FDL0ksQ0FBQztJQUNGLElBQUksTUFBYyxDQUFDO0lBQ25CLE1BQU0sWUFBWSxHQUFnRDtRQUM5RCxPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU87UUFDekIsT0FBTyxFQUFFO1lBQ0wsWUFBWSxFQUFFLFFBQVEsQ0FBQyxTQUFTO1NBQ25DO1FBQ0QsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFxQixFQUFFO1lBQzVDLElBQUksR0FBRyxHQUFHLFNBQVMsRUFBRSxNQUFN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
@@ -2,7 +2,7 @@
2
2
  export declare class UnexpectedResponseError extends Error {
3
3
  error: unknown;
4
4
  name: string;
5
- request: Request;
6
- response: Response;
7
- constructor(request: Request, response: Response, error: unknown);
5
+ request?: Request;
6
+ response?: Response;
7
+ constructor(request: Request | undefined, response: Response | undefined, error: unknown);
8
8
  }
@@ -5,7 +5,11 @@ export class UnexpectedResponseError extends Error {
5
5
  request;
6
6
  response;
7
7
  constructor(request, response, error) {
8
- let message = `Unexpected ${response.status} ${response.statusText} on ${request.method} ${request.url}`;
8
+ let message = response
9
+ ? `Unexpected ${response.status} ${response.statusText} on ${request?.method ?? "?"} ${request?.url ?? response.url}`
10
+ : request
11
+ ? `Network error on ${request.method} ${request.url}`
12
+ : "Network error while building the request";
9
13
  if (error) {
10
14
  if (typeof error === "string")
11
15
  message += `\n${error}`;
@@ -35,4 +39,4 @@ export class UnexpectedResponseError extends Error {
35
39
  });
36
40
  }
37
41
  }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1QkFBdUI7QUFDdkIsTUFBTSxPQUFPLHVCQUF3QixTQUFRLEtBQUs7SUFDOUMsS0FBSyxDQUFXO0lBQ1AsSUFBSSxHQUFHLHlCQUF5QixDQUFDO0lBQzFDLE9BQU8sQ0FBVztJQUNsQixRQUFRLENBQVk7SUFDcEIsWUFBWSxPQUFnQixFQUFFLFFBQWtCLEVBQUUsS0FBYztRQUM1RCxJQUFJLE9BQU8sR0FBRyxjQUFjLFFBQVEsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLFVBQVUsT0FBTyxPQUFPLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUN6RyxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1IsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRO2dCQUFFLE9BQU8sSUFBSSxLQUFLLEtBQUssRUFBRSxDQUFDO2lCQUNsRCxJQUFJLEtBQUssWUFBWSxLQUFLO2dCQUFFLE9BQU8sSUFBSSxLQUFLLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqRSx1RUFBdUU7aUJBQ2xFLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDbkQsSUFBSSxTQUFTLElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRO29CQUFFLE9BQU8sSUFBSSxLQUFLLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztxQkFDeEYsSUFBSSxPQUFPLElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxDQUFDLEtBQUssS0FBSyxRQUFRO29CQUFFLE9BQU8sSUFBSSxLQUFLLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztxQkFDdkYsSUFBSSxRQUFRLElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxDQUFDLE1BQU0sS0FBSyxRQUFRLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxJQUFJLEVBQUUsQ0FBQztvQkFDdEYsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7d0JBQ3RELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTs0QkFBRSxPQUFPLElBQUksS0FBSyxHQUFHLEtBQUssS0FBSyxFQUFFLENBQUM7NkJBQzFELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7NEJBQUUsT0FBTyxJQUFJLEtBQUssR0FBRyxLQUFLLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDOUUsQ0FBQztnQkFDTCxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7UUFDRCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO1lBQzFCLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRTtZQUM5QyxRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUU7WUFDaEQsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFO1NBQzdDLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSiJ9
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1QkFBdUI7QUFDdkIsTUFBTSxPQUFPLHVCQUF3QixTQUFRLEtBQUs7SUFDOUMsS0FBSyxDQUFXO0lBQ1AsSUFBSSxHQUFHLHlCQUF5QixDQUFDO0lBQzFDLE9BQU8sQ0FBVztJQUNsQixRQUFRLENBQVk7SUFDcEIsWUFBWSxPQUE0QixFQUFFLFFBQThCLEVBQUUsS0FBYztRQUNwRixJQUFJLE9BQU8sR0FBRyxRQUFRO1lBQ2xCLENBQUMsQ0FBQyxjQUFjLFFBQVEsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLFVBQVUsT0FBTyxPQUFPLEVBQUUsTUFBTSxJQUFJLEdBQUcsSUFBSSxPQUFPLEVBQUUsR0FBRyxJQUFJLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDckgsQ0FBQyxDQUFDLE9BQU87Z0JBQ0wsQ0FBQyxDQUFDLG9CQUFvQixPQUFPLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUU7Z0JBQ3JELENBQUMsQ0FBQywwQ0FBMEMsQ0FBQztRQUNyRCxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1IsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRO2dCQUFFLE9BQU8sSUFBSSxLQUFLLEtBQUssRUFBRSxDQUFDO2lCQUNsRCxJQUFJLEtBQUssWUFBWSxLQUFLO2dCQUFFLE9BQU8sSUFBSSxLQUFLLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqRSx1RUFBdUU7aUJBQ2xFLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDbkQsSUFBSSxTQUFTLElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRO29CQUFFLE9BQU8sSUFBSSxLQUFLLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztxQkFDeEYsSUFBSSxPQUFPLElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxDQUFDLEtBQUssS0FBSyxRQUFRO29CQUFFLE9BQU8sSUFBSSxLQUFLLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztxQkFDdkYsSUFBSSxRQUFRLElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxDQUFDLE1BQU0sS0FBSyxRQUFRLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxJQUFJLEVBQUUsQ0FBQztvQkFDdEYsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7d0JBQ3RELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTs0QkFBRSxPQUFPLElBQUksS0FBSyxHQUFHLEtBQUssS0FBSyxFQUFFLENBQUM7NkJBQzFELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7NEJBQUUsT0FBTyxJQUFJLEtBQUssR0FBRyxLQUFLLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDOUUsQ0FBQztnQkFDTCxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7UUFDRCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO1lBQzFCLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRTtZQUM5QyxRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUU7WUFDaEQsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFO1NBQzdDLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSiJ9
@@ -19,10 +19,7 @@ export const createClient = (config = {}) => {
19
19
  serializedBody: undefined,
20
20
  };
21
21
  if (opts.security) {
22
- await setAuthParams({
23
- ...opts,
24
- security: opts.security,
25
- });
22
+ await setAuthParams(opts);
26
23
  }
27
24
  if (opts.requestValidator) {
28
25
  await opts.requestValidator(opts);
@@ -39,149 +36,134 @@ export const createClient = (config = {}) => {
39
36
  return { opts: resolvedOpts, url };
40
37
  };
41
38
  const request = async (options) => {
42
- const { opts, url } = await beforeRequest(options);
43
- const requestInit = {
44
- redirect: 'follow',
45
- ...opts,
46
- body: getValidRequestBody(opts),
47
- };
48
- let request = new Request(url, requestInit);
49
- for (const fn of interceptors.request.fns) {
50
- if (fn) {
51
- request = await fn(request, opts);
52
- }
53
- }
54
- // fetch must be assigned here, otherwise it would throw the error:
55
- // TypeError: Failed to execute 'fetch' on 'Window': Illegal invocation
56
- const _fetch = opts.fetch;
39
+ const throwOnError = options.throwOnError ?? _config.throwOnError;
40
+ const responseStyle = options.responseStyle ?? _config.responseStyle;
41
+ let request;
57
42
  let response;
58
43
  try {
59
- response = await _fetch(request);
60
- }
61
- catch (error) {
62
- // Handle fetch exceptions (AbortError, network errors, etc.)
63
- let finalError = error;
64
- for (const fn of interceptors.error.fns) {
44
+ const { opts, url } = await beforeRequest(options);
45
+ const requestInit = {
46
+ redirect: 'follow',
47
+ ...opts,
48
+ body: getValidRequestBody(opts),
49
+ };
50
+ request = new Request(url, requestInit);
51
+ for (const fn of interceptors.request.fns) {
65
52
  if (fn) {
66
- finalError = (await fn(error, undefined, request, opts));
53
+ request = await fn(request, opts);
67
54
  }
68
55
  }
69
- finalError = finalError || {};
70
- if (opts.throwOnError) {
71
- throw finalError;
72
- }
73
- // Return error response
74
- return opts.responseStyle === 'data'
75
- ? undefined
76
- : {
77
- error: finalError,
78
- request,
79
- response: undefined,
80
- };
81
- }
82
- for (const fn of interceptors.response.fns) {
83
- if (fn) {
84
- response = await fn(response, request, opts);
56
+ // fetch must be assigned here, otherwise it would throw the error:
57
+ // TypeError: Failed to execute 'fetch' on 'Window': Illegal invocation
58
+ const _fetch = opts.fetch;
59
+ response = await _fetch(request);
60
+ for (const fn of interceptors.response.fns) {
61
+ if (fn) {
62
+ response = await fn(response, request, opts);
63
+ }
85
64
  }
86
- }
87
- const result = {
88
- request,
89
- response,
90
- };
91
- if (response.ok) {
92
- const parseAs = (opts.parseAs === 'auto'
93
- ? getParseAs(response.headers.get('Content-Type'))
94
- : opts.parseAs) ?? 'json';
95
- if (response.status === 204 || response.headers.get('Content-Length') === '0') {
96
- let emptyData;
65
+ const result = {
66
+ request,
67
+ response,
68
+ };
69
+ if (response.ok) {
70
+ const parseAs = (opts.parseAs === 'auto'
71
+ ? getParseAs(response.headers.get('Content-Type'))
72
+ : opts.parseAs) ?? 'json';
73
+ if (response.status === 204 || response.headers.get('Content-Length') === '0') {
74
+ let emptyData;
75
+ switch (parseAs) {
76
+ case 'arrayBuffer':
77
+ case 'blob':
78
+ case 'text':
79
+ emptyData = await response[parseAs]();
80
+ break;
81
+ case 'formData':
82
+ emptyData = new FormData();
83
+ break;
84
+ case 'stream':
85
+ emptyData = response.body;
86
+ break;
87
+ case 'json':
88
+ default:
89
+ emptyData = {};
90
+ break;
91
+ }
92
+ return opts.responseStyle === 'data'
93
+ ? emptyData
94
+ : {
95
+ data: emptyData,
96
+ ...result,
97
+ };
98
+ }
99
+ let data;
97
100
  switch (parseAs) {
98
101
  case 'arrayBuffer':
99
102
  case 'blob':
103
+ case 'formData':
100
104
  case 'text':
101
- emptyData = await response[parseAs]();
105
+ data = await response[parseAs]();
102
106
  break;
103
- case 'formData':
104
- emptyData = new FormData();
107
+ case 'json': {
108
+ // Some servers return 200 with no Content-Length and empty body.
109
+ // response.json() would throw; read as text and parse if non-empty.
110
+ const text = await response.text();
111
+ data = text ? JSON.parse(text) : {};
105
112
  break;
113
+ }
106
114
  case 'stream':
107
- emptyData = response.body;
108
- break;
109
- case 'json':
110
- default:
111
- emptyData = {};
112
- break;
115
+ return opts.responseStyle === 'data'
116
+ ? response.body
117
+ : {
118
+ data: response.body,
119
+ ...result,
120
+ };
121
+ }
122
+ if (parseAs === 'json') {
123
+ if (opts.responseValidator) {
124
+ await opts.responseValidator(data);
125
+ }
126
+ if (opts.responseTransformer) {
127
+ data = await opts.responseTransformer(data);
128
+ }
113
129
  }
114
130
  return opts.responseStyle === 'data'
115
- ? emptyData
131
+ ? data
116
132
  : {
117
- data: emptyData,
133
+ data,
118
134
  ...result,
119
135
  };
120
136
  }
121
- let data;
122
- switch (parseAs) {
123
- case 'arrayBuffer':
124
- case 'blob':
125
- case 'formData':
126
- case 'text':
127
- data = await response[parseAs]();
128
- break;
129
- case 'json': {
130
- // Some servers return 200 with no Content-Length and empty body.
131
- // response.json() would throw; read as text and parse if non-empty.
132
- const text = await response.text();
133
- data = text ? JSON.parse(text) : {};
134
- break;
135
- }
136
- case 'stream':
137
- return opts.responseStyle === 'data'
138
- ? response.body
139
- : {
140
- data: response.body,
141
- ...result,
142
- };
137
+ const textError = await response.text();
138
+ let jsonError;
139
+ try {
140
+ jsonError = JSON.parse(textError);
143
141
  }
144
- if (parseAs === 'json') {
145
- if (opts.responseValidator) {
146
- await opts.responseValidator(data);
147
- }
148
- if (opts.responseTransformer) {
149
- data = await opts.responseTransformer(data);
142
+ catch {
143
+ // noop
144
+ }
145
+ throw jsonError ?? textError;
146
+ }
147
+ catch (error) {
148
+ let finalError = error;
149
+ for (const fn of interceptors.error.fns) {
150
+ if (fn) {
151
+ finalError = await fn(finalError, response, request, options);
150
152
  }
151
153
  }
152
- return opts.responseStyle === 'data'
153
- ? data
154
+ finalError = finalError || {};
155
+ if (throwOnError) {
156
+ throw finalError;
157
+ }
158
+ // TODO: we probably want to return error and improve types
159
+ return responseStyle === 'data'
160
+ ? undefined
154
161
  : {
155
- data,
156
- ...result,
162
+ error: finalError,
163
+ request,
164
+ response,
157
165
  };
158
166
  }
159
- const textError = await response.text();
160
- let jsonError;
161
- try {
162
- jsonError = JSON.parse(textError);
163
- }
164
- catch {
165
- // noop
166
- }
167
- const error = jsonError ?? textError;
168
- let finalError = error;
169
- for (const fn of interceptors.error.fns) {
170
- if (fn) {
171
- finalError = (await fn(error, response, request, opts));
172
- }
173
- }
174
- finalError = finalError || {};
175
- if (opts.throwOnError) {
176
- throw finalError;
177
- }
178
- // TODO: we probably want to return error and improve types
179
- return opts.responseStyle === 'data'
180
- ? undefined
181
- : {
182
- error: finalError,
183
- ...result,
184
- };
185
167
  };
186
168
  const makeMethodFn = (method) => (options) => request({ ...options, method });
187
169
  const makeSseFn = (method) => async (options) => {
@@ -189,7 +171,6 @@ export const createClient = (config = {}) => {
189
171
  return createSseClient({
190
172
  ...opts,
191
173
  body: opts.body,
192
- headers: opts.headers,
193
174
  method,
194
175
  onRequest: async (url, init) => {
195
176
  let request = new Request(url, init);
@@ -233,4 +214,4 @@ export const createClient = (config = {}) => {
233
214
  trace: makeMethodFn('TRACE'),
234
215
  };
235
216
  };
236
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2dlbmVyYXRlZC9jbGllbnQvY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRDtBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdkQsT0FBTyxFQUNMLFFBQVEsRUFDUixZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLGFBQWEsR0FDZCxNQUFNLFlBQVksQ0FBQztBQU9wQixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxTQUFpQixFQUFFLEVBQVUsRUFBRTtJQUMxRCxJQUFJLE9BQU8sR0FBRyxZQUFZLENBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFFbkQsTUFBTSxTQUFTLEdBQUcsR0FBVyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUVqRCxNQUFNLFNBQVMsR0FBRyxDQUFDLE1BQWMsRUFBVSxFQUFFO1FBQzNDLE9BQU8sR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQyxDQUFDO0lBRUYsTUFBTSxZQUFZLEdBQUcsa0JBQWtCLEVBQXNELENBQUM7SUFFOUYsTUFBTSxhQUFhLEdBQUcsS0FBSyxFQU16QixPQUFpRSxFQUNqRSxFQUFFO1FBQ0YsTUFBTSxJQUFJLEdBQUc7WUFDWCxHQUFHLE9BQU87WUFDVixHQUFHLE9BQU87WUFDVixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsS0FBSyxJQUFJLFVBQVUsQ0FBQyxLQUFLO1lBQ3pELE9BQU8sRUFBRSxZQUFZLENBQUMsT0FBTyxDQUFDLE9B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
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2dlbmVyYXRlZC9jbGllbnQvY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFEQUFxRDtBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdkQsT0FBTyxFQUNMLFFBQVEsRUFDUixZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLGFBQWEsR0FDZCxNQUFNLFlBQVksQ0FBQztBQU9wQixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxTQUFpQixFQUFFLEVBQVUsRUFBRTtJQUMxRCxJQUFJLE9BQU8sR0FBRyxZQUFZLENBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFFbkQsTUFBTSxTQUFTLEdBQUcsR0FBVyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUVqRCxNQUFNLFNBQVMsR0FBRyxDQUFDLE1BQWMsRUFBVSxFQUFFO1FBQzNDLE9BQU8sR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQyxDQUFDO0lBRUYsTUFBTSxZQUFZLEdBQUcsa0JBQWtCLEVBQXNELENBQUM7SUFFOUYsTUFBTSxhQUFhLEdBQUcsS0FBSyxFQU16QixPQUFpRSxFQUNqRSxFQUFFO1FBQ0YsTUFBTSxJQUFJLEdBQUc7WUFDWCxHQUFHLE9BQU87WUFDVixHQUFHLE9BQU87WUFDVixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsS0FBSyxJQUFJLFVBQVUsQ0FBQyxLQUFLO1lBQ3pELE9BQU8sRUFBRSxZQUFZLENBQUMsT0FBTyxDQUFDLE9B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
@@ -63,6 +63,7 @@ export interface RequestOptions<TData = unknown, TResponseStyle extends Response
63
63
  url: Url;
64
64
  }
65
65
  export interface ResolvedRequestOptions<TResponseStyle extends ResponseStyle = 'fields', ThrowOnError extends boolean = boolean, Url extends string = string> extends RequestOptions<unknown, TResponseStyle, ThrowOnError, Url> {
66
+ headers: Headers;
66
67
  serializedBody?: string;
67
68
  }
68
69
  export type RequestResult<TData = unknown, TError = unknown, ThrowOnError extends boolean = boolean, TResponseStyle extends ResponseStyle = 'fields'> = ThrowOnError extends true ? Promise<TResponseStyle extends 'data' ? TData extends Record<string, unknown> ? TData[keyof TData] : TData : {
@@ -76,8 +77,10 @@ export type RequestResult<TData = unknown, TError = unknown, ThrowOnError extend
76
77
  data: undefined;
77
78
  error: TError extends Record<string, unknown> ? TError[keyof TError] : TError;
78
79
  }) & {
79
- request: Request;
80
- response: Response;
80
+ /** request may be undefined, because error may be from building the request object itself */
81
+ request?: Request;
82
+ /** response may be undefined, because error may be from building the request object itself or from a network error */
83
+ response?: Response;
81
84
  }>;
82
85
  export interface ClientOptions {
83
86
  baseUrl?: string;
@@ -85,7 +88,7 @@ export interface ClientOptions {
85
88
  throwOnError?: boolean;
86
89
  }
87
90
  type MethodFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'>) => RequestResult<TData, TError, ThrowOnError, TResponseStyle>;
88
- type SseFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<never, TResponseStyle, ThrowOnError>, 'method'>) => Promise<ServerSentEventsResult<TData, TError>>;
91
+ type SseFn = <TData = unknown, _TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<never, TResponseStyle, ThrowOnError>, 'method'>) => Promise<ServerSentEventsResult<TData>>;
89
92
  type RequestFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'> & Pick<Required<RequestOptions<TData, TResponseStyle, ThrowOnError>>, 'method'>) => RequestResult<TData, TError, ThrowOnError, TResponseStyle>;
90
93
  type BuildUrlFn = <TData extends {
91
94
  body?: unknown;
@@ -5,13 +5,17 @@ export declare const createQuerySerializer: <T = unknown>({ parameters, ...args
5
5
  * Infers parseAs value from provided Content-Type header.
6
6
  */
7
7
  export declare const getParseAs: (contentType: string | null) => Exclude<Config["parseAs"], "auto">;
8
- export declare const setAuthParams: ({ security, ...options }: Pick<Required<RequestOptions>, "security"> & Pick<RequestOptions, "auth" | "query"> & {
8
+ export declare function setAuthParams(options: Pick<RequestOptions, 'auth' | 'query' | 'security'> & {
9
9
  headers: Headers;
10
- }) => Promise<void>;
10
+ }): Promise<void>;
11
11
  export declare const buildUrl: Client['buildUrl'];
12
12
  export declare const mergeConfigs: (a: Config, b: Config) => Config;
13
13
  export declare const mergeHeaders: (...headers: Array<Required<Config>["headers"] | undefined>) => Headers;
14
- type ErrInterceptor<Err, Res, Req, Options> = (error: Err, response: Res, request: Req, options: Options) => Err | Promise<Err>;
14
+ type ErrInterceptor<Err, Res, Req, Options> = (error: Err,
15
+ /** response may be undefined due to a network error where no response object is produced */
16
+ response: Res | undefined,
17
+ /** request may be undefined, because error may be from building the request object itself */
18
+ request: Req | undefined, options: Options) => Err | Promise<Err>;
15
19
  type ReqInterceptor<Req, Options> = (request: Req, options: Options) => Req | Promise<Req>;
16
20
  type ResInterceptor<Res, Req, Options> = (response: Res, request: Req, options: Options) => Res | Promise<Res>;
17
21
  declare class Interceptors<Interceptor> {
@@ -90,8 +90,8 @@ const checkForExistence = (options, name) => {
90
90
  }
91
91
  return false;
92
92
  };
93
- export const setAuthParams = async ({ security, ...options }) => {
94
- for (const auth of security) {
93
+ export async function setAuthParams(options) {
94
+ for (const auth of options.security ?? []) {
95
95
  if (checkForExistence(options, auth.name)) {
96
96
  continue;
97
97
  }
@@ -116,7 +116,7 @@ export const setAuthParams = async ({ security, ...options }) => {
116
116
  break;
117
117
  }
118
118
  }
119
- };
119
+ }
120
120
  export const buildUrl = (options) => getUrl({
121
121
  baseUrl: options.baseUrl,
122
122
  path: options.path,
@@ -226,4 +226,4 @@ export const createConfig = (override = {}) => ({
226
226
  querySerializer: defaultQuerySerializer,
227
227
  ...override,
228
228
  });
229
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2VuZXJhdGVkL2NsaWVudC91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQ7QUFFckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLHVCQUF1QixHQUN4QixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUcxQyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFjLEVBQ2pELFVBQVUsR0FBRyxFQUFFLEVBQ2YsR0FBRyxJQUFJLEtBQ21CLEVBQUUsRUFBRSxFQUFFO0lBQ2hDLE1BQU0sZUFBZSxHQUFHLENBQUMsV0FBYyxFQUFFLEVBQUU7UUFDekMsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzVCLElBQUksV0FBVyxJQUFJLE9BQU8sV0FBVyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ25ELEtBQUssTUFBTSxJQUFJLElBQUksV0FBVyxFQUFFLENBQUM7Z0JBQy9CLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFaEMsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztvQkFDMUMsU0FBUztnQkFDWCxDQUFDO2dCQUVELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUM7Z0JBRXpDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUN6QixNQUFNLGVBQWUsR0FBRyxtQkFBbUIsQ0FBQzt3QkFDMUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxhQUFh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
229
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2VuZXJhdGVkL2NsaWVudC91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxREFBcUQ7QUFFckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLHVCQUF1QixHQUN4QixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUcxQyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFjLEVBQ2pELFVBQVUsR0FBRyxFQUFFLEVBQ2YsR0FBRyxJQUFJLEtBQ21CLEVBQUUsRUFBRSxFQUFFO0lBQ2hDLE1BQU0sZUFBZSxHQUFHLENBQUMsV0FBYyxFQUFFLEVBQUU7UUFDekMsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzVCLElBQUksV0FBVyxJQUFJLE9BQU8sV0FBVyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ25ELEtBQUssTUFBTSxJQUFJLElBQUksV0FBVyxFQUFFLENBQUM7Z0JBQy9CLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFaEMsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztvQkFDMUMsU0FBUztnQkFDWCxDQUFDO2dCQUVELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUM7Z0JBRXpDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUN6QixNQUFNLGVBQWUsR0FBRyxtQkFBbUIsQ0FBQzt3QkFDMUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxhQUFh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