@distilled.cloud/forgejo 0.0.0 → 1.0.0-rc.9

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 (88) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +71 -0
  3. package/lib/credentials.d.ts +35 -0
  4. package/lib/credentials.d.ts.map +1 -0
  5. package/lib/credentials.js +57 -0
  6. package/lib/credentials.js.map +1 -0
  7. package/lib/errors.d.ts +56 -0
  8. package/lib/errors.d.ts.map +1 -0
  9. package/lib/errors.js +36 -0
  10. package/lib/errors.js.map +1 -0
  11. package/lib/index.d.ts +28 -0
  12. package/lib/index.d.ts.map +1 -0
  13. package/lib/index.js +28 -0
  14. package/lib/index.js.map +1 -0
  15. package/lib/protocol.d.ts +18 -0
  16. package/lib/protocol.d.ts.map +1 -0
  17. package/lib/protocol.js +61 -0
  18. package/lib/protocol.js.map +1 -0
  19. package/lib/retry.d.ts +50 -0
  20. package/lib/retry.d.ts.map +1 -0
  21. package/lib/retry.js +43 -0
  22. package/lib/retry.js.map +1 -0
  23. package/lib/services/activitypub.d.ts +121 -0
  24. package/lib/services/activitypub.d.ts.map +1 -0
  25. package/lib/services/activitypub.js +202 -0
  26. package/lib/services/activitypub.js.map +1 -0
  27. package/lib/services/admin.d.ts +1196 -0
  28. package/lib/services/admin.d.ts.map +1 -0
  29. package/lib/services/admin.js +1276 -0
  30. package/lib/services/admin.js.map +1 -0
  31. package/lib/services/index.d.ts +11 -0
  32. package/lib/services/index.d.ts.map +1 -0
  33. package/lib/services/index.js +12 -0
  34. package/lib/services/index.js.map +1 -0
  35. package/lib/services/issue.d.ts +1479 -0
  36. package/lib/services/issue.d.ts.map +1 -0
  37. package/lib/services/issue.js +1732 -0
  38. package/lib/services/issue.js.map +1 -0
  39. package/lib/services/miscellaneous.d.ts +494 -0
  40. package/lib/services/miscellaneous.d.ts.map +1 -0
  41. package/lib/services/miscellaneous.js +471 -0
  42. package/lib/services/miscellaneous.js.map +1 -0
  43. package/lib/services/notification.d.ts +390 -0
  44. package/lib/services/notification.d.ts.map +1 -0
  45. package/lib/services/notification.js +344 -0
  46. package/lib/services/notification.js.map +1 -0
  47. package/lib/services/organization.d.ts +1593 -0
  48. package/lib/services/organization.d.ts.map +1 -0
  49. package/lib/services/organization.js +1672 -0
  50. package/lib/services/organization.js.map +1 -0
  51. package/lib/services/package.d.ts +347 -0
  52. package/lib/services/package.d.ts.map +1 -0
  53. package/lib/services/package.js +320 -0
  54. package/lib/services/package.js.map +1 -0
  55. package/lib/services/repository.d.ts +4770 -0
  56. package/lib/services/repository.d.ts.map +1 -0
  57. package/lib/services/repository.js +5449 -0
  58. package/lib/services/repository.js.map +1 -0
  59. package/lib/services/settings.d.ts +67 -0
  60. package/lib/services/settings.d.ts.map +1 -0
  61. package/lib/services/settings.js +87 -0
  62. package/lib/services/settings.js.map +1 -0
  63. package/lib/services/user.d.ts +1764 -0
  64. package/lib/services/user.d.ts.map +1 -0
  65. package/lib/services/user.js +1921 -0
  66. package/lib/services/user.js.map +1 -0
  67. package/lib/traits.d.ts +10 -0
  68. package/lib/traits.d.ts.map +1 -0
  69. package/lib/traits.js +11 -0
  70. package/lib/traits.js.map +1 -0
  71. package/package.json +78 -6
  72. package/src/credentials.ts +89 -0
  73. package/src/errors.ts +72 -0
  74. package/src/index.ts +31 -0
  75. package/src/protocol.ts +86 -0
  76. package/src/retry.ts +74 -0
  77. package/src/services/activitypub.ts +415 -0
  78. package/src/services/admin.ts +3103 -0
  79. package/src/services/index.ts +11 -0
  80. package/src/services/issue.ts +3949 -0
  81. package/src/services/miscellaneous.ts +1118 -0
  82. package/src/services/notification.ts +847 -0
  83. package/src/services/organization.ts +4008 -0
  84. package/src/services/package.ts +767 -0
  85. package/src/services/repository.ts +12839 -0
  86. package/src/services/settings.ts +190 -0
  87. package/src/services/user.ts +4669 -0
  88. package/src/traits.ts +44 -0
@@ -0,0 +1,344 @@
1
+ // AUTO-GENERATED by scripts/generate.ts from .generated-specs (specs/spec-mirror-forgejo). Do not edit.
2
+ import * as S from "@distilled.cloud/core/schema";
3
+ import * as API from "@distilled.cloud/core/api";
4
+ import * as C from "@distilled.cloud/core/category";
5
+ import * as T from "../traits.js";
6
+ import { ForgejoProtocol, } from "../protocol.js";
7
+ import * as Retry from "../retry.js";
8
+ export class Forbidden extends /*@__PURE__*/ /*@__PURE__*/ T.applyErrorMatchers(
9
+ /*@__PURE__*/ S.TaggedError()("Forbidden", {
10
+ code: S.Number,
11
+ message: S.String,
12
+ }).pipe(C.withAuthError), [{ status: 403 }]) {
13
+ }
14
+ export class NotFound extends /*@__PURE__*/ /*@__PURE__*/ T.applyErrorMatchers(
15
+ /*@__PURE__*/ S.TaggedError()("NotFound", {
16
+ code: S.Number,
17
+ message: S.String,
18
+ }).pipe(C.withBadRequestError), [{ status: 404 }]) {
19
+ }
20
+ export const NotifyGetListRequestStatusTypesList = /*@__PURE__*/ S.Array(S.String);
21
+ export const NotifyGetListRequestSubjectTypeItem = /*@__PURE__*/ S.String;
22
+ export const NotifyGetListRequestSubjectTypeList = /*@__PURE__*/ S.Array(NotifyGetListRequestSubjectTypeItem);
23
+ export const NotifyGetListRequest = /*@__PURE__*/ S.suspend(() => S.Struct({
24
+ all: S.optional(S.Boolean.pipe(T.Query())),
25
+ status_types: S.optional(NotifyGetListRequestStatusTypesList.pipe(T.Query("status-types"))),
26
+ subject_type: S.optional(NotifyGetListRequestSubjectTypeList.pipe(T.Query("subject-type"))),
27
+ since: S.optional(S.String.pipe(T.Query())),
28
+ before: S.optional(S.String.pipe(T.Query())),
29
+ page: S.optional(S.Number.pipe(T.Query())),
30
+ limit: S.optional(S.Number.pipe(T.Query())),
31
+ }).pipe(T.Http({ method: "GET", uri: "/notifications", code: 200 }))).annotate({
32
+ identifier: "NotifyGetListRequest",
33
+ });
34
+ export const ExternalTracker = /*@__PURE__*/ S.suspend(() => S.Struct({
35
+ external_tracker_format: S.optional(S.String),
36
+ external_tracker_regexp_pattern: S.optional(S.String),
37
+ external_tracker_style: S.optional(S.String),
38
+ external_tracker_url: S.optional(S.String),
39
+ })).annotate({
40
+ identifier: "ExternalTracker",
41
+ });
42
+ export const ExternalWiki = /*@__PURE__*/ S.suspend(() => S.Struct({
43
+ external_wiki_url: S.optional(S.String),
44
+ })).annotate({ identifier: "ExternalWiki" });
45
+ export const InternalTracker = /*@__PURE__*/ S.suspend(() => S.Struct({
46
+ allow_only_contributors_to_track_time: S.optional(S.Boolean),
47
+ enable_issue_dependencies: S.optional(S.Boolean),
48
+ enable_time_tracker: S.optional(S.Boolean),
49
+ })).annotate({
50
+ identifier: "InternalTracker",
51
+ });
52
+ export const RepositoryObjectFormatName = /*@__PURE__*/ S.String;
53
+ export const User = /*@__PURE__*/ S.suspend(() => S.Struct({
54
+ active: S.optional(S.Boolean),
55
+ avatar_url: S.optional(S.String),
56
+ created: S.optional(S.String),
57
+ description: S.optional(S.String),
58
+ email: S.optional(S.String),
59
+ followers_count: S.optional(S.Number),
60
+ following_count: S.optional(S.Number),
61
+ full_name: S.optional(S.String),
62
+ html_url: S.optional(S.String),
63
+ id: S.Number,
64
+ is_admin: S.optional(S.Boolean),
65
+ language: S.optional(S.String),
66
+ last_login: S.optional(S.String),
67
+ location: S.optional(S.String),
68
+ login: S.String,
69
+ login_name: S.optional(S.String),
70
+ prohibit_login: S.optional(S.Boolean),
71
+ pronouns: S.optional(S.String),
72
+ restricted: S.optional(S.Boolean),
73
+ source_id: S.optional(S.Number),
74
+ starred_repos_count: S.optional(S.Number),
75
+ visibility: S.optional(S.String),
76
+ website: S.optional(S.String),
77
+ })).annotate({ identifier: "User" });
78
+ export const Permission = /*@__PURE__*/ S.suspend(() => S.Struct({
79
+ admin: S.optional(S.Boolean),
80
+ pull: S.optional(S.Boolean),
81
+ push: S.optional(S.Boolean),
82
+ })).annotate({ identifier: "Permission" });
83
+ export const Organization = /*@__PURE__*/ S.suspend(() => S.Struct({
84
+ avatar_url: S.optional(S.String),
85
+ created: S.optional(S.String),
86
+ description: S.optional(S.String),
87
+ email: S.optional(S.String),
88
+ full_name: S.optional(S.String),
89
+ id: S.Number,
90
+ location: S.optional(S.String),
91
+ name: S.optional(S.String),
92
+ repo_admin_change_team_access: S.optional(S.Boolean),
93
+ username: S.String,
94
+ visibility: S.optional(S.String),
95
+ website: S.optional(S.String),
96
+ })).annotate({ identifier: "Organization" });
97
+ export const TeamPermission = /*@__PURE__*/ S.String;
98
+ export const TeamUnitsList = /*@__PURE__*/ S.Array(S.String);
99
+ export const TeamUnitsMapMap = /*@__PURE__*/ S.Record(S.String, S.String);
100
+ export const Team = /*@__PURE__*/ S.suspend(() => S.Struct({
101
+ can_create_org_repo: S.optional(S.Boolean),
102
+ description: S.optional(S.String),
103
+ id: S.Number,
104
+ includes_all_repositories: S.optional(S.Boolean),
105
+ name: S.String,
106
+ organization: S.optional(Organization),
107
+ permission: S.optional(TeamPermission),
108
+ units: S.optional(TeamUnitsList),
109
+ units_map: S.optional(TeamUnitsMapMap),
110
+ })).annotate({ identifier: "Team" });
111
+ export const RepoTransferTeamsList = /*@__PURE__*/ S.Array(Team);
112
+ export const RepoTransfer = /*@__PURE__*/ S.suspend(() => S.Struct({
113
+ doer: S.optional(User),
114
+ recipient: S.optional(User),
115
+ teams: S.optional(RepoTransferTeamsList),
116
+ })).annotate({ identifier: "RepoTransfer" });
117
+ export const RepositoryTopicsList = /*@__PURE__*/ S.Array(S.String);
118
+ export const Repository = /*@__PURE__*/ S.suspend(() => S.Struct({
119
+ allow_fast_forward_only_merge: S.optional(S.Boolean),
120
+ allow_merge_commits: S.optional(S.Boolean),
121
+ allow_rebase: S.optional(S.Boolean),
122
+ allow_rebase_explicit: S.optional(S.Boolean),
123
+ allow_rebase_update: S.optional(S.Boolean),
124
+ allow_squash_merge: S.optional(S.Boolean),
125
+ archived: S.optional(S.Boolean),
126
+ archived_at: S.optional(S.String),
127
+ avatar_url: S.optional(S.String),
128
+ clone_url: S.String,
129
+ created_at: S.String,
130
+ default_allow_maintainer_edit: S.optional(S.Boolean),
131
+ default_branch: S.String,
132
+ default_delete_branch_after_merge: S.optional(S.Boolean),
133
+ default_merge_style: S.optional(S.String),
134
+ default_update_style: S.optional(S.String),
135
+ description: S.optional(S.String),
136
+ empty: S.optional(S.Boolean),
137
+ external_tracker: S.optional(ExternalTracker),
138
+ external_wiki: S.optional(ExternalWiki),
139
+ fork: S.optional(S.Boolean),
140
+ forks_count: S.optional(S.Number),
141
+ full_name: S.String,
142
+ globally_editable_wiki: S.optional(S.Boolean),
143
+ has_actions: S.optional(S.Boolean),
144
+ has_issues: S.optional(S.Boolean),
145
+ has_packages: S.optional(S.Boolean),
146
+ has_projects: S.optional(S.Boolean),
147
+ has_pull_requests: S.optional(S.Boolean),
148
+ has_releases: S.optional(S.Boolean),
149
+ has_wiki: S.optional(S.Boolean),
150
+ has_wiki_contents: S.optional(S.Boolean),
151
+ html_url: S.String,
152
+ id: S.Number,
153
+ ignore_whitespace_conflicts: S.optional(S.Boolean),
154
+ internal: S.optional(S.Boolean),
155
+ internal_tracker: S.optional(InternalTracker),
156
+ language: S.optional(S.String),
157
+ languages_url: S.optional(S.String),
158
+ link: S.optional(S.String),
159
+ mirror: S.optional(S.Boolean),
160
+ mirror_interval: S.optional(S.String),
161
+ mirror_updated: S.optional(S.String),
162
+ name: S.String,
163
+ object_format_name: S.optional(RepositoryObjectFormatName),
164
+ open_issues_count: S.optional(S.Number),
165
+ open_pr_counter: S.optional(S.Number),
166
+ original_url: S.optional(S.String),
167
+ owner: User,
168
+ parent: S.optional(Repository),
169
+ permissions: S.optional(Permission),
170
+ private: S.optional(S.Boolean),
171
+ release_counter: S.optional(S.Number),
172
+ repo_transfer: S.optional(RepoTransfer),
173
+ size: S.optional(S.Number),
174
+ ssh_url: S.String,
175
+ stars_count: S.optional(S.Number),
176
+ template: S.optional(S.Boolean),
177
+ topics: S.optional(RepositoryTopicsList),
178
+ updated_at: S.String,
179
+ url: S.optional(S.String),
180
+ watchers_count: S.optional(S.Number),
181
+ website: S.optional(S.String),
182
+ wiki_branch: S.optional(S.String),
183
+ wiki_clone_url: S.optional(S.String),
184
+ wiki_ssh_url: S.optional(S.String),
185
+ })).annotate({ identifier: "Repository" });
186
+ export const NotificationSubject = /*@__PURE__*/ S.suspend(() => S.Struct({
187
+ html_url: S.optional(S.String),
188
+ latest_comment_html_url: S.optional(S.String),
189
+ latest_comment_url: S.optional(S.String),
190
+ state: S.optional(S.String),
191
+ title: S.optional(S.String),
192
+ type: S.optional(S.String),
193
+ url: S.optional(S.String),
194
+ })).annotate({
195
+ identifier: "NotificationSubject",
196
+ });
197
+ export const NotificationThread = /*@__PURE__*/ S.suspend(() => S.Struct({
198
+ id: S.optional(S.Number),
199
+ pinned: S.optional(S.Boolean),
200
+ repository: S.optional(Repository),
201
+ subject: S.optional(NotificationSubject),
202
+ unread: S.optional(S.Boolean),
203
+ updated_at: S.optional(S.String),
204
+ url: S.optional(S.String),
205
+ })).annotate({
206
+ identifier: "NotificationThread",
207
+ });
208
+ export const NotifyGetListResponseBodyList = /*@__PURE__*/ S.Array(NotificationThread);
209
+ export const NotifyGetListResponse = /*@__PURE__*/ S.suspend(() => NotifyGetListResponseBodyList.pipe(T.RawResponseRoot())).annotate({
210
+ identifier: "NotifyGetListResponse",
211
+ });
212
+ export const NotifyGetRepoListRequestStatusTypesList = /*@__PURE__*/ S.Array(S.String);
213
+ export const NotifyGetRepoListRequestSubjectTypeItem = /*@__PURE__*/ S.String;
214
+ export const NotifyGetRepoListRequestSubjectTypeList = /*@__PURE__*/ S.Array(NotifyGetRepoListRequestSubjectTypeItem);
215
+ export const NotifyGetRepoListRequest = /*@__PURE__*/ S.suspend(() => S.Struct({
216
+ owner: S.String.pipe(T.Label()),
217
+ repo: S.String.pipe(T.Label()),
218
+ all: S.optional(S.Boolean.pipe(T.Query())),
219
+ status_types: S.optional(NotifyGetRepoListRequestStatusTypesList.pipe(T.Query("status-types"))),
220
+ subject_type: S.optional(NotifyGetRepoListRequestSubjectTypeList.pipe(T.Query("subject-type"))),
221
+ since: S.optional(S.String.pipe(T.Query())),
222
+ before: S.optional(S.String.pipe(T.Query())),
223
+ page: S.optional(S.Number.pipe(T.Query())),
224
+ limit: S.optional(S.Number.pipe(T.Query())),
225
+ }).pipe(T.Http({
226
+ method: "GET",
227
+ uri: "/repos/{owner}/{repo}/notifications",
228
+ code: 200,
229
+ }))).annotate({
230
+ identifier: "NotifyGetRepoListRequest",
231
+ });
232
+ export const NotifyGetRepoListResponseBodyList = /*@__PURE__*/ S.Array(NotificationThread);
233
+ export const NotifyGetRepoListResponse = /*@__PURE__*/ S.suspend(() => NotifyGetRepoListResponseBodyList.pipe(T.RawResponseRoot())).annotate({
234
+ identifier: "NotifyGetRepoListResponse",
235
+ });
236
+ export const NotifyGetThreadRequest = /*@__PURE__*/ S.suspend(() => S.Struct({
237
+ id: S.Number.pipe(T.Label()),
238
+ }).pipe(T.Http({ method: "GET", uri: "/notifications/threads/{id}", code: 200 }))).annotate({
239
+ identifier: "NotifyGetThreadRequest",
240
+ });
241
+ export const NotifyNewAvailableRequest = /*@__PURE__*/ S.suspend(() => S.Struct({}).pipe(T.Http({ method: "GET", uri: "/notifications/new", code: 200 }))).annotate({
242
+ identifier: "NotifyNewAvailableRequest",
243
+ });
244
+ export const NotificationCount = /*@__PURE__*/ S.suspend(() => S.Struct({
245
+ new: S.optional(S.Number),
246
+ })).annotate({
247
+ identifier: "NotificationCount",
248
+ });
249
+ export const NotifyReadListRequestStatusTypesList = /*@__PURE__*/ S.Array(S.String);
250
+ export const NotifyReadListRequest = /*@__PURE__*/ S.suspend(() => S.Struct({
251
+ last_read_at: S.optional(S.String.pipe(T.Query())),
252
+ all: S.optional(S.Boolean.pipe(T.Query())),
253
+ status_types: S.optional(NotifyReadListRequestStatusTypesList.pipe(T.Query("status-types"))),
254
+ to_status: S.optional(S.String.pipe(T.Query("to-status"))),
255
+ }).pipe(T.Http({ method: "PUT", uri: "/notifications", code: 200 }))).annotate({
256
+ identifier: "NotifyReadListRequest",
257
+ });
258
+ export const NotifyReadListResponse = /*@__PURE__*/ S.suspend(() => S.Struct({})).annotate({
259
+ identifier: "NotifyReadListResponse",
260
+ });
261
+ export const NotifyReadRepoListRequestStatusTypesList = /*@__PURE__*/ S.Array(S.String);
262
+ export const NotifyReadRepoListRequest = /*@__PURE__*/ S.suspend(() => S.Struct({
263
+ owner: S.String.pipe(T.Label()),
264
+ repo: S.String.pipe(T.Label()),
265
+ all: S.optional(S.Boolean.pipe(T.Query())),
266
+ status_types: S.optional(NotifyReadRepoListRequestStatusTypesList.pipe(T.Query("status-types"))),
267
+ to_status: S.optional(S.String.pipe(T.Query("to-status"))),
268
+ last_read_at: S.optional(S.String.pipe(T.Query())),
269
+ }).pipe(T.Http({
270
+ method: "PUT",
271
+ uri: "/repos/{owner}/{repo}/notifications",
272
+ code: 200,
273
+ }))).annotate({
274
+ identifier: "NotifyReadRepoListRequest",
275
+ });
276
+ export const NotifyReadRepoListResponse = /*@__PURE__*/ S.suspend(() => S.Struct({})).annotate({
277
+ identifier: "NotifyReadRepoListResponse",
278
+ });
279
+ export const NotifyReadThreadRequest = /*@__PURE__*/ S.suspend(() => S.Struct({
280
+ id: S.Number.pipe(T.Label()),
281
+ to_status: S.optional(S.String.pipe(T.Query("to-status"))),
282
+ }).pipe(T.Http({ method: "PATCH", uri: "/notifications/threads/{id}", code: 200 }))).annotate({
283
+ identifier: "NotifyReadThreadRequest",
284
+ });
285
+ export const NotifyReadThreadResponse = /*@__PURE__*/ S.suspend(() => S.Struct({})).annotate({
286
+ identifier: "NotifyReadThreadResponse",
287
+ });
288
+ /** List users's notification threads */
289
+ export const notifyGetList = /*@__PURE__*/ API.make(() => ({
290
+ input: NotifyGetListRequest,
291
+ output: NotifyGetListResponse,
292
+ errors: [],
293
+ protocol: ForgejoProtocol,
294
+ retry: Retry.Retry,
295
+ }));
296
+ /** List users's notification threads on a specific repo */
297
+ export const notifyGetRepoList = /*@__PURE__*/ API.make(() => ({
298
+ input: NotifyGetRepoListRequest,
299
+ output: NotifyGetRepoListResponse,
300
+ errors: [],
301
+ protocol: ForgejoProtocol,
302
+ retry: Retry.Retry,
303
+ }));
304
+ /** Get notification thread by ID */
305
+ export const notifyGetThread = /*@__PURE__*/ API.make(() => ({
306
+ input: NotifyGetThreadRequest,
307
+ output: NotificationThread,
308
+ errors: [Forbidden, NotFound],
309
+ protocol: ForgejoProtocol,
310
+ retry: Retry.Retry,
311
+ }));
312
+ /** Check if unread notifications exist */
313
+ export const notifyNewAvailable = /*@__PURE__*/ API.make(() => ({
314
+ input: NotifyNewAvailableRequest,
315
+ output: NotificationCount,
316
+ errors: [],
317
+ protocol: ForgejoProtocol,
318
+ retry: Retry.Retry,
319
+ }));
320
+ /** Mark notification threads as read, pinned or unread */
321
+ export const notifyReadList = /*@__PURE__*/ API.make(() => ({
322
+ input: NotifyReadListRequest,
323
+ output: NotifyReadListResponse,
324
+ errors: [],
325
+ protocol: ForgejoProtocol,
326
+ retry: Retry.Retry,
327
+ }));
328
+ /** Mark notification threads as read, pinned or unread on a specific repo */
329
+ export const notifyReadRepoList = /*@__PURE__*/ API.make(() => ({
330
+ input: NotifyReadRepoListRequest,
331
+ output: NotifyReadRepoListResponse,
332
+ errors: [],
333
+ protocol: ForgejoProtocol,
334
+ retry: Retry.Retry,
335
+ }));
336
+ /** Mark notification thread as read by ID */
337
+ export const notifyReadThread = /*@__PURE__*/ API.make(() => ({
338
+ input: NotifyReadThreadRequest,
339
+ output: NotifyReadThreadResponse,
340
+ errors: [Forbidden, NotFound],
341
+ protocol: ForgejoProtocol,
342
+ retry: Retry.Retry,
343
+ }));
344
+ //# sourceMappingURL=notification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notification.js","sourceRoot":"","sources":["../../src/services/notification.ts"],"names":[],"mappings":"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"}