gitverse-release 3.3.2 → 3.5.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.
package/dist/cli.js CHANGED
@@ -43,14 +43,22 @@ var DEFAULT_CONFIG = {
43
43
  }
44
44
  },
45
45
  commitlint: {
46
+ bodyMaxLineLength: null,
46
47
  comments: true,
48
+ footerMaxLineLength: null,
47
49
  format: "ts",
48
50
  headerMaxLength: 100,
51
+ headerMinLength: null,
49
52
  output: "commitlint.config.ts",
50
53
  scopeRequired: false,
51
- scopes: ["deps", "ci", "docs"]
54
+ scopes: ["deps", "ci", "docs"],
55
+ strictMode: false,
56
+ subjectCase: null,
57
+ subjectFullStop: false,
58
+ warningRules: ["header-max-length"]
52
59
  },
53
60
  git: {
61
+ beforeCommit: "",
54
62
  commitChanges: true,
55
63
  commitMessage: "chore(release): {{package}} v{{version}} [skip ci]",
56
64
  push: true,
@@ -140,162 +148,21 @@ function validateConfig(config) {
140
148
  }
141
149
  }
142
150
 
143
- // ../sdk/dist/api/organizations.js
144
- class k {
145
- client;
146
- constructor(b) {
147
- this.client = b;
148
- }
149
- async checkMembership(b, h, j) {
150
- try {
151
- return await this.client.get(`/orgs/${b}/members/${h}`, j), true;
152
- } catch (d) {
153
- if (d instanceof Error && d.message.includes("404"))
154
- return false;
155
- throw d;
156
- }
157
- }
158
- }
159
-
160
- // ../sdk/dist/api/commits.js
161
- class j {
162
- client;
163
- constructor(b) {
164
- this.client = b;
165
- }
166
- list(b, d, f) {
167
- return this.client.get(`/repos/${b}/${d}/commits`, f);
168
- }
169
- get(b, d, f, g) {
170
- return this.client.get(`/repos/${b}/${d}/commits/${f}`, g);
171
- }
172
- create(b, d, f, g) {
173
- return this.client.post(`/repos/${b}/${d}/git/commits`, f, g);
174
- }
175
- }
176
-
177
- // ../sdk/dist/api/actions.js
178
- class x {
179
- client;
180
- constructor(b) {
181
- this.client = b;
182
- }
183
- listOrgRunners(b, h) {
184
- return this.client.get(`/orgs/${b}/actions/runners`, h);
185
- }
186
- createOrgRegistrationToken(b, h) {
187
- return this.client.post(`/orgs/${b}/actions/runners/registration-token`, {}, h);
188
- }
189
- getOrgRunner(b, h, j2) {
190
- return this.client.get(`/orgs/${b}/actions/runners/${h}`, j2);
191
- }
192
- deleteOrgRunner(b, h, j2) {
193
- return this.client.delete(`/orgs/${b}/actions/runners/${h}`, undefined, j2);
194
- }
195
- listRepoRunners(b, h, j2) {
196
- return this.client.get(`/repos/${b}/${h}/actions/runners`, j2);
197
- }
198
- createRepoRegistrationToken(b, h, j2) {
199
- return this.client.post(`/repos/${b}/${h}/actions/runners/registration-token`, {}, j2);
200
- }
201
- getRepoRunner(b, h, j2, q) {
202
- return this.client.get(`/repos/${b}/${h}/actions/runners/${j2}`, q);
203
- }
204
- deleteRepoRunner(b, h, j2, q) {
205
- return this.client.delete(`/repos/${b}/${h}/actions/runners/${j2}`, undefined, q);
206
- }
207
- listOrgSecrets(b, h) {
208
- return this.client.get(`/orgs/${b}/actions/secrets`, h);
209
- }
210
- getOrgSecret(b, h, j2) {
211
- return this.client.get(`/orgs/${b}/actions/secrets/${h}`, j2);
212
- }
213
- createOrUpdateOrgSecret(b, h, j2, q) {
214
- return this.client.put(`/orgs/${b}/actions/secrets/${h}`, j2, q);
215
- }
216
- deleteOrgSecret(b, h, j2) {
217
- return this.client.delete(`/orgs/${b}/actions/secrets/${h}`, undefined, j2);
218
- }
219
- listRepoSecrets(b, h, j2) {
220
- return this.client.get(`/repos/${b}/${h}/actions/secrets`, j2);
221
- }
222
- getRepoSecret(b, h, j2, q) {
223
- return this.client.get(`/repos/${b}/${h}/actions/secrets/${j2}`, q);
224
- }
225
- createOrUpdateRepoSecret(b, h, j2, q, v) {
226
- return this.client.put(`/repos/${b}/${h}/actions/secrets/${j2}`, q, v);
227
- }
228
- deleteRepoSecret(b, h, j2, q) {
229
- return this.client.delete(`/repos/${b}/${h}/actions/secrets/${j2}`, undefined, q);
230
- }
231
- listOrgVariables(b, h) {
232
- return this.client.get(`/orgs/${b}/actions/variables`, h);
233
- }
234
- createOrgVariable(b, h, j2) {
235
- return this.client.post(`/orgs/${b}/actions/variables`, h, j2);
236
- }
237
- getOrgVariable(b, h, j2) {
238
- return this.client.get(`/orgs/${b}/actions/variables/${h}`, j2);
239
- }
240
- deleteOrgVariable(b, h, j2) {
241
- return this.client.delete(`/orgs/${b}/actions/variables/${h}`, undefined, j2);
242
- }
243
- updateOrgVariable(b, h, j2, q) {
244
- return this.client.patch(`/orgs/${b}/actions/variables/${h}`, j2, q);
245
- }
246
- listRepoVariables(b, h, j2) {
247
- return this.client.get(`/repos/${b}/${h}/actions/variables`, j2);
248
- }
249
- createRepoVariable(b, h, j2, q) {
250
- return this.client.post(`/repos/${b}/${h}/actions/variables`, j2, q);
251
- }
252
- getRepoVariable(b, h, j2, q) {
253
- return this.client.get(`/repos/${b}/${h}/actions/variables/${j2}`, q);
254
- }
255
- deleteRepoVariable(b, h, j2, q) {
256
- return this.client.delete(`/repos/${b}/${h}/actions/variables/${j2}`, undefined, q);
257
- }
258
- updateRepoVariable(b, h, j2, q, v) {
259
- return this.client.patch(`/repos/${b}/${h}/actions/variables/${j2}`, q, v);
260
- }
261
- listArtifacts(b, h, j2) {
262
- return this.client.get(`/repos/${b}/${h}/actions/artifacts`, j2);
263
- }
264
- getArtifact(b, h, j2, q) {
265
- return this.client.get(`/repos/${b}/${h}/actions/artifacts/${j2}`, q);
266
- }
267
- deleteArtifact(b, h, j2, q) {
268
- return this.client.delete(`/repos/${b}/${h}/actions/artifacts/${j2}`, undefined, q);
269
- }
270
- downloadArtifact(b, h, j2, q) {
271
- return this.client.get(`/repos/${b}/${h}/actions/artifacts/${j2}/zip`, q);
272
- }
273
- downloadArtifactRaw(b, h, j2, q) {
274
- return this.client.get(`/repos/${b}/${h}/actions/artifacts/${j2}/zip/raw`, q);
275
- }
276
- getWorkflowDispatchInputs(b, h, j2, q) {
277
- return this.client.get(`/repos/${b}/${h}/actions/workflows/${j2}/dispatches`, q);
278
- }
279
- dispatchWorkflow(b, h, j2, q, v) {
280
- return this.client.post(`/repos/${b}/${h}/actions/workflows/${j2}/dispatches`, q, v);
281
- }
282
- }
283
-
284
151
  // ../sdk/dist/errors.js
285
- class j2 extends Error {
152
+ class j extends Error {
286
153
  status;
287
154
  metadata;
288
155
  constructor(b, f, h) {
289
156
  super(f);
290
- this.name = "GitVerseApiError", this.status = b, this.metadata = h, Object.setPrototypeOf(this, j2.prototype);
157
+ this.name = "GitVerseApiError", this.status = b, this.metadata = h, Object.setPrototypeOf(this, j.prototype);
291
158
  }
292
159
  }
293
160
 
294
- class k2 extends j2 {
161
+ class k extends j {
295
162
  rateLimit;
296
163
  constructor(b, f, h) {
297
164
  super(429, b, h);
298
- this.name = "RateLimitError", this.rateLimit = f, Object.setPrototypeOf(this, k2.prototype);
165
+ this.name = "RateLimitError", this.rateLimit = f, Object.setPrototypeOf(this, k.prototype);
299
166
  }
300
167
  getRetryAfterSeconds() {
301
168
  return this.rateLimit.retryAfter;
@@ -320,411 +187,728 @@ class q {
320
187
  }
321
188
  }
322
189
 
323
- // ../sdk/dist/api/stars.js
324
- class k3 {
325
- client;
326
- constructor(b) {
327
- this.client = b;
328
- }
329
- list(b) {
330
- return this.client.get("/user/starred", b);
331
- }
332
- async add(b, c, f) {
333
- await this.client.put(`/user/starred/${b}/${c}`, undefined, f);
190
+ // ../sdk/dist/client.js
191
+ var Z = { DELETE: "DELETE", GET: "GET", PATCH: "PATCH", POST: "POST", PUT: "PUT" };
192
+
193
+ class v {
194
+ baseUrl;
195
+ token;
196
+ apiVersion;
197
+ onApiVersionWarning;
198
+ constructor(j2 = {}) {
199
+ this.baseUrl = j2.baseUrl || "https://api.gitverse.ru", this.token = j2.token, this.apiVersion = j2.apiVersion || "1";
334
200
  }
335
- async check(b, c, f) {
336
- try {
337
- return await this.client.get(`/user/starred/${b}/${c}`, f), true;
338
- } catch (h) {
339
- if (h instanceof j2 && h.status === 404)
340
- return false;
341
- throw h;
342
- }
201
+ setToken(j2) {
202
+ this.token = j2;
343
203
  }
344
- async remove(b, c, f) {
345
- await this.client.delete(`/user/starred/${b}/${c}`, undefined, f);
204
+ extractRateLimitInfo(j2) {
205
+ let x = j2.get("GitVerse-RateLimit-Limit"), q2 = j2.get("GitVerse-RateLimit-User-Remaining") || j2.get("GitVerse-RateLimit-Remaining"), z = j2.get("GitVerse-RateLimit-Retry-After"), F = j2.get("Gitverse-Ratelimit-Reset");
206
+ if (!(x && z))
207
+ return;
208
+ let U = Number.parseInt(z, 10), J = F ? Number.parseInt(F, 10) : Math.floor(Date.now() / 1000) + U, K = q2 ? Number.parseInt(q2, 10) : 0;
209
+ return { limit: Number.parseInt(x, 10), remaining: K, reset: J, retryAfter: U };
346
210
  }
347
- }
348
-
349
- // ../sdk/dist/api/issues.js
350
- class B {
351
- client;
352
- constructor(c) {
353
- this.client = c;
211
+ extractApiVersionInfo(j2) {
212
+ let x = j2.get("Gitverse-Api-Version"), q2 = j2.get("Gitverse-Api-Latest-Version"), z = j2.get("Gitverse-Api-Deprecation") === "true", F = j2.get("Gitverse-Api-Decommissioning");
213
+ if (!(x && q2))
214
+ return;
215
+ return { decommissioning: F || undefined, deprecated: z, latestVersion: q2, version: x };
354
216
  }
355
- list(c, h, f, j3) {
356
- let k4 = new URLSearchParams;
357
- if (f)
358
- k4.append("state", f);
359
- let z = k4.toString(), A = `/repos/${c}/${h}/issues${z ? `?${z}` : ""}`;
360
- return this.client.get(A, j3);
217
+ extractMetadata(j2) {
218
+ let x = this.extractRateLimitInfo(j2), q2 = this.extractApiVersionInfo(j2);
219
+ if (q2?.deprecated && this.onApiVersionWarning) {
220
+ let z = new q(q2.version, q2.latestVersion, q2.decommissioning);
221
+ this.onApiVersionWarning(z);
222
+ }
223
+ return { apiVersion: q2, rateLimit: x };
361
224
  }
362
- get(c, h, f, j3) {
363
- return this.client.get(`/repos/${c}/${h}/issues/${f}`, j3);
225
+ async request(j2, x, q2, z) {
226
+ let F = j2.startsWith("/") ? j2.slice(1) : j2, U = `${this.baseUrl}/${F}`, J = new Headers;
227
+ if (J.set("Content-Type", "application/json"), J.set("Accept", `application/vnd.gitverse.object+json; version=${this.apiVersion}`), this.token)
228
+ J.set("Authorization", `Bearer ${this.token}`);
229
+ let K = { body: q2 ? JSON.stringify(q2) : undefined, headers: J, method: x, signal: z?.signal }, C = await fetch(U, K), X = this.extractMetadata(C.headers), Y;
230
+ try {
231
+ Y = await C.json();
232
+ } catch {
233
+ Y = undefined;
234
+ }
235
+ if (!C.ok) {
236
+ let S = Y?.message || C.statusText;
237
+ if (C.status === 429 && X.rateLimit)
238
+ throw new k(S || "Превышен лимит запросов. Попробуйте позже.", X.rateLimit, X);
239
+ throw new j(C.status, S, X);
240
+ }
241
+ return Y;
364
242
  }
365
- getComment(c, h, f, j3) {
366
- return this.client.get(`/repos/${c}/${h}/issues/comments/${f}`, j3);
243
+ get(j2, x) {
244
+ return this.request(j2, Z.GET, undefined, x);
367
245
  }
368
- getComments(c, h, f, j3) {
369
- return this.client.get(`/repos/${c}/${h}/issues/${f}/comments`, j3);
246
+ post(j2, x, q2) {
247
+ return this.request(j2, Z.POST, x, q2);
370
248
  }
371
- getLabels(c, h, f, j3) {
372
- return this.client.get(`/repos/${c}/${h}/issues/${f}/labels`, j3);
249
+ put(j2, x, q2) {
250
+ return this.request(j2, Z.PUT, x, q2);
373
251
  }
374
- getTimeline(c, h, f, j3) {
375
- return this.client.get(`/repos/${c}/${h}/issues/${f}/timeline`, j3);
252
+ delete(j2, x, q2) {
253
+ return this.request(j2, Z.DELETE, x, q2);
376
254
  }
377
- }
378
-
379
- // ../sdk/dist/api/branches.js
380
- class g {
381
- client;
382
- constructor(b) {
383
- this.client = b;
255
+ patch(j2, x, q2) {
256
+ return this.request(j2, Z.PATCH, x, q2);
384
257
  }
385
- list(b, d, f) {
386
- return this.client.get(`/repos/${b}/${d}/branches`, f);
258
+ async uploadFile(j2, x, q2, z, F) {
259
+ let U = j2.startsWith("/") ? j2.slice(1) : j2, J = `${this.baseUrl}/${U}`, K = new Headers;
260
+ if (K.set("Accept", `application/vnd.gitverse.object+json; version=${this.apiVersion}`), this.token)
261
+ K.set("Authorization", `Bearer ${this.token}`);
262
+ let C = new FormData, X = q2 instanceof ArrayBuffer ? new Blob([q2]) : q2;
263
+ C.append(x, X, z);
264
+ let Y = { body: C, headers: K, method: Z.POST, signal: F?.signal }, Q = await fetch(J, Y), S = this.extractMetadata(Q.headers), _;
265
+ try {
266
+ _ = await Q.json();
267
+ } catch {
268
+ _ = undefined;
269
+ }
270
+ if (!Q.ok) {
271
+ let W = _?.message || Q.statusText;
272
+ if (Q.status === 429 && S.rateLimit)
273
+ throw new k(W || "Превышен лимит запросов. Попробуйте позже.", S.rateLimit, S);
274
+ throw new j(Q.status, W, S);
275
+ }
276
+ return _;
387
277
  }
388
278
  }
389
279
 
390
- // ../sdk/dist/utils.js
391
- var z = /^([a-z][a-z0-9+.-]*:\/\/[^/]+)\/([a-z][a-z0-9+.-]*:\/\/.+)$/i;
392
- function E(j3) {
393
- if (!j3)
394
- return j3;
395
- let k4 = j3.match(z);
396
- if (k4?.[1] && k4?.[2]) {
397
- let q2 = k4[1], v = k4[2];
398
- if (v.startsWith(q2))
399
- return v;
400
- }
401
- return j3;
402
- }
403
- function J(j3) {
404
- let k4 = ["clone_url", "html_url", "url", "git_url", "mirror_url"], q2 = { ...j3 };
405
- for (let v of k4)
406
- if (typeof q2[v] === "string")
407
- q2[v] = E(q2[v]);
408
- return q2;
409
- }
410
-
411
280
  // ../sdk/dist/api/repositories.js
412
- class A {
281
+ class E {
413
282
  client;
414
- constructor(g2) {
415
- this.client = g2;
416
- }
417
- async get(g2, k4, j3) {
418
- let q2 = await this.client.get(`/repos/${g2}/${k4}`, j3);
419
- return J(q2);
420
- }
421
- delete(g2, k4, j3) {
422
- return this.client.delete(`/repos/${g2}/${k4}`, undefined, j3);
423
- }
424
- async update(g2, k4, j3, q2) {
425
- let z2 = await this.client.patch(`/repos/${g2}/${k4}`, j3, q2);
426
- return J(z2);
427
- }
428
- compare(g2, k4, j3, q2) {
429
- return this.client.get(`/repos/${g2}/${k4}/compare/${j3}`, q2);
430
- }
431
- getLanguages(g2, k4, j3) {
432
- return this.client.get(`/repos/${g2}/${k4}/languages`, j3);
433
- }
434
- async listForAuthenticatedUser(g2) {
435
- return (await this.client.get("/user/repos", g2)).map((j3) => J(j3));
436
- }
437
- async create(g2, k4) {
438
- let j3 = await this.client.post("/user/repos", g2, k4);
439
- return J(j3);
283
+ constructor(k2) {
284
+ this.client = k2;
285
+ }
286
+ get(k2, x, j2) {
287
+ return this.client.get(`/repos/${k2}/${x}`, j2);
288
+ }
289
+ update(k2, x, j2, v2) {
290
+ return this.client.patch(`/repos/${k2}/${x}`, j2, v2);
291
+ }
292
+ delete(k2, x, j2) {
293
+ return this.client.delete(`/repos/${k2}/${x}`, undefined, j2);
294
+ }
295
+ listRepoSecrets(k2, x, j2, v2) {
296
+ let z = new URLSearchParams;
297
+ if (j2?.per_page !== undefined)
298
+ z.append("per_page", j2.per_page);
299
+ if (j2?.page !== undefined)
300
+ z.append("page", j2.page);
301
+ let A = z.toString(), B = `/repos/${k2}/${x}/actions/secrets${A ? `?${A}` : ""}`;
302
+ return this.client.get(B, v2);
303
+ }
304
+ getRepoSecret(k2, x, j2, v2) {
305
+ return this.client.get(`/repos/${k2}/${x}/actions/secrets/${j2}`, v2);
306
+ }
307
+ createOrUpdateRepoSecret(k2, x, j2, v2, z) {
308
+ let A = new URLSearchParams;
309
+ if (v2?.encrypted_value !== undefined)
310
+ A.append("encrypted_value", v2.encrypted_value);
311
+ let B = A.toString(), D = `/repos/${k2}/${x}/actions/secrets/${j2}${B ? `?${B}` : ""}`;
312
+ return this.client.put(D, z);
313
+ }
314
+ deleteRepoSecret(k2, x, j2, v2) {
315
+ return this.client.delete(`/repos/${k2}/${x}/actions/secrets/${j2}`, undefined, v2);
316
+ }
317
+ listBranches(k2, x, j2, v2) {
318
+ let z = new URLSearchParams;
319
+ if (j2?.page !== undefined)
320
+ z.append("page", String(j2.page));
321
+ if (j2?.per_page !== undefined)
322
+ z.append("per_page", String(j2.per_page));
323
+ if (j2?.q !== undefined)
324
+ z.append("q", j2.q);
325
+ let A = z.toString(), B = `/repos/${k2}/${x}/branches${A ? `?${A}` : ""}`;
326
+ return this.client.get(B, v2);
327
+ }
328
+ listCollaborators(k2, x, j2, v2) {
329
+ let z = new URLSearchParams;
330
+ if (j2?.affiliation !== undefined)
331
+ z.append("affiliation", j2.affiliation);
332
+ if (j2?.permission !== undefined)
333
+ z.append("permission", j2.permission);
334
+ if (j2?.page !== undefined)
335
+ z.append("page", String(j2.page));
336
+ if (j2?.per_page !== undefined)
337
+ z.append("per_page", String(j2.per_page));
338
+ let A = z.toString(), B = `/repos/${k2}/${x}/collaborators${A ? `?${A}` : ""}`;
339
+ return this.client.get(B, v2);
340
+ }
341
+ addCollaborator(k2, x, j2, v2, z) {
342
+ return this.client.put(`/repos/${k2}/${x}/collaborators/${j2}`, v2, z);
343
+ }
344
+ listCommits(k2, x, j2, v2) {
345
+ let z = new URLSearchParams;
346
+ if (j2?.page !== undefined)
347
+ z.append("page", String(j2.page));
348
+ if (j2?.per_page !== undefined)
349
+ z.append("per_page", String(j2.per_page));
350
+ if (j2?.sha !== undefined)
351
+ z.append("sha", j2.sha);
352
+ if (j2?.path !== undefined)
353
+ z.append("path", j2.path);
354
+ if (j2?.not !== undefined)
355
+ z.append("not", j2.not);
356
+ if (j2?.author !== undefined)
357
+ z.append("author", j2.author);
358
+ if (j2?.committer !== undefined)
359
+ z.append("committer", j2.committer);
360
+ if (j2?.since !== undefined)
361
+ z.append("since", j2.since);
362
+ if (j2?.until !== undefined)
363
+ z.append("until", j2.until);
364
+ let A = z.toString(), B = `/repos/${k2}/${x}/commits${A ? `?${A}` : ""}`;
365
+ return this.client.get(B, v2);
366
+ }
367
+ getCommit(k2, x, j2, v2) {
368
+ return this.client.get(`/repos/${k2}/${x}/commits/${j2}`, v2);
369
+ }
370
+ compareCommits(k2, x, j2, v2, z) {
371
+ let A = new URLSearchParams;
372
+ if (v2?.page !== undefined)
373
+ A.append("page", String(v2.page));
374
+ if (v2?.per_page !== undefined)
375
+ A.append("per_page", String(v2.per_page));
376
+ let B = A.toString(), D = `/repos/${k2}/${x}/compare/${j2}${B ? `?${B}` : ""}`;
377
+ return this.client.get(D, z);
378
+ }
379
+ getContent(k2, x, j2, v2, z) {
380
+ let A = new URLSearchParams;
381
+ if (v2?.ref !== undefined)
382
+ A.append("ref", v2.ref);
383
+ if (v2?.scope !== undefined)
384
+ A.append("scope", v2.scope);
385
+ let B = A.toString(), D = `/repos/${k2}/${x}/contents/${j2}${B ? `?${B}` : ""}`;
386
+ return this.client.get(D, z);
387
+ }
388
+ createOrUpdateFile(k2, x, j2, v2, z) {
389
+ return this.client.put(`/repos/${k2}/${x}/contents/${j2}`, v2, z);
390
+ }
391
+ deleteFile(k2, x, j2, v2, z) {
392
+ return this.client.delete(`/repos/${k2}/${x}/contents/${j2}`, v2, z);
393
+ }
394
+ createFork(k2, x, j2, v2) {
395
+ return this.client.post(`/repos/${k2}/${x}/forks`, j2, v2);
396
+ }
397
+ createCommit(k2, x, j2, v2) {
398
+ return this.client.post(`/repos/${k2}/${x}/git/commits`, j2, v2);
399
+ }
400
+ createRef(k2, x, j2, v2) {
401
+ return this.client.post(`/repos/${k2}/${x}/git/refs`, j2, v2);
402
+ }
403
+ createTree(k2, x, j2, v2) {
404
+ return this.client.post(`/repos/${k2}/${x}/git/trees`, j2, v2);
405
+ }
406
+ getTree(k2, x, j2, v2, z) {
407
+ let A = new URLSearchParams;
408
+ if (v2?.page !== undefined)
409
+ A.append("page", String(v2.page));
410
+ if (v2?.per_page !== undefined)
411
+ A.append("per_page", String(v2.per_page));
412
+ if (v2?.recursive !== undefined)
413
+ A.append("recursive", String(v2.recursive));
414
+ let B = A.toString(), D = `/repos/${k2}/${x}/git/trees/${j2}${B ? `?${B}` : ""}`;
415
+ return this.client.get(D, z);
416
+ }
417
+ listLanguages(k2, x, j2) {
418
+ return this.client.get(`/repos/${k2}/${x}/languages`, j2);
419
+ }
420
+ listPulls(k2, x, j2, v2) {
421
+ let z = new URLSearchParams;
422
+ if (j2?.state !== undefined)
423
+ z.append("state", j2.state);
424
+ if (j2?.head !== undefined)
425
+ z.append("head", j2.head);
426
+ if (j2?.base !== undefined)
427
+ z.append("base", j2.base);
428
+ if (j2?.sort !== undefined)
429
+ z.append("sort", j2.sort);
430
+ if (j2?.direction !== undefined)
431
+ z.append("direction", j2.direction);
432
+ if (j2?.page !== undefined)
433
+ z.append("page", String(j2.page));
434
+ if (j2?.per_page !== undefined)
435
+ z.append("per_page", String(j2.per_page));
436
+ let A = z.toString(), B = `/repos/${k2}/${x}/pulls${A ? `?${A}` : ""}`;
437
+ return this.client.get(B, v2);
438
+ }
439
+ getPull(k2, x, j2, v2) {
440
+ return this.client.get(`/repos/${k2}/${x}/pulls/${j2}`, v2);
441
+ }
442
+ updatePull(k2, x, j2, v2, z) {
443
+ return this.client.patch(`/repos/${k2}/${x}/pulls/${j2}`, v2, z);
444
+ }
445
+ listForAuthenticatedUser(k2, x) {
446
+ let j2 = new URLSearchParams;
447
+ if (k2?.page !== undefined)
448
+ j2.append("page", String(k2.page));
449
+ if (k2?.per_page !== undefined)
450
+ j2.append("per_page", String(k2.per_page));
451
+ let v2 = j2.toString(), z = `/user/repos${v2 ? `?${v2}` : ""}`;
452
+ return this.client.get(z, x);
453
+ }
454
+ createForAuthenticatedUser(k2, x) {
455
+ return this.client.post("/user/repos", k2, x);
440
456
  }
441
457
  }
442
458
 
443
- // ../sdk/dist/api/collaborators.js
444
- class j3 {
459
+ // ../sdk/dist/api/teams.js
460
+ class E2 {
445
461
  client;
446
- constructor(d) {
447
- this.client = d;
448
- }
449
- list(d, f, g2) {
450
- return this.client.get(`/repos/${d}/${f}/collaborators`, g2);
451
- }
452
- add(d, f, g2, h) {
453
- return this.client.put(`/repos/${d}/${f}/collaborators/${g2}`, {}, h);
462
+ constructor(x) {
463
+ this.client = x;
464
+ }
465
+ list(x, b, j2) {
466
+ let B = new URLSearchParams;
467
+ if (b?.page !== undefined)
468
+ B.append("page", String(b.page));
469
+ if (b?.per_page !== undefined)
470
+ B.append("per_page", String(b.per_page));
471
+ let k2 = B.toString(), C = `/orgs/${x}/teams${k2 ? `?${k2}` : ""}`;
472
+ return this.client.get(C, j2);
473
+ }
474
+ listMembers(x, b, j2, B) {
475
+ let k2 = new URLSearchParams;
476
+ if (j2?.page !== undefined)
477
+ k2.append("page", String(j2.page));
478
+ if (j2?.per_page !== undefined)
479
+ k2.append("per_page", String(j2.per_page));
480
+ let C = k2.toString(), D = `/orgs/${x}/teams/${b}/members${C ? `?${C}` : ""}`;
481
+ return this.client.get(D, B);
482
+ }
483
+ updateRepo(x, b, j2, B, k2, C) {
484
+ return this.client.put(`/orgs/${x}/teams/${b}/repos/${j2}/${B}`, k2, C);
454
485
  }
455
486
  }
456
487
 
457
- // ../sdk/dist/api/contents.js
458
- class k4 {
488
+ // ../sdk/dist/api/releases.js
489
+ class G {
459
490
  client;
460
- constructor(b) {
461
- this.client = b;
462
- }
463
- get(b, d, f, g2) {
464
- return this.client.get(`/repos/${b}/${d}/contents/${f}`, g2);
465
- }
466
- createFile(b, d, f, g2, j4) {
467
- return this.client.put(`/repos/${b}/${d}/contents/${f}`, g2, j4);
468
- }
469
- updateFile(b, d, f, g2, j4) {
470
- return this.client.put(`/repos/${b}/${d}/contents/${f}`, g2, j4);
471
- }
472
- deleteFile(b, d, f, g2, j4) {
473
- return this.client.delete(`/repos/${b}/${d}/contents/${f}`, g2, j4);
491
+ constructor(k2) {
492
+ this.client = k2;
493
+ }
494
+ list(k2, A, b, j2) {
495
+ let B = new URLSearchParams;
496
+ if (b?.page !== undefined)
497
+ B.append("page", String(b.page));
498
+ if (b?.per_page !== undefined)
499
+ B.append("per_page", String(b.per_page));
500
+ if (b?.draft !== undefined)
501
+ B.append("draft", String(b.draft));
502
+ if (b?.pre_release !== undefined)
503
+ B.append("pre_release", String(b.pre_release));
504
+ let C = B.toString(), E3 = `/repos/${k2}/${A}/releases${C ? `?${C}` : ""}`;
505
+ return this.client.get(E3, j2);
506
+ }
507
+ create(k2, A, b, j2) {
508
+ return this.client.post(`/repos/${k2}/${A}/releases`, b, j2);
509
+ }
510
+ getByTag(k2, A, b, j2) {
511
+ return this.client.get(`/repos/${k2}/${A}/releases/tags/${b}`, j2);
512
+ }
513
+ deleteByTag(k2, A, b, j2) {
514
+ return this.client.delete(`/repos/${k2}/${A}/releases/tags/${b}`, undefined, j2);
515
+ }
516
+ get(k2, A, b, j2) {
517
+ return this.client.get(`/repos/${k2}/${A}/releases/${b}`, j2);
518
+ }
519
+ update(k2, A, b, j2, B) {
520
+ return this.client.patch(`/repos/${k2}/${A}/releases/${b}`, j2, B);
521
+ }
522
+ delete(k2, A, b, j2) {
523
+ return this.client.delete(`/repos/${k2}/${A}/releases/${b}`, undefined, j2);
524
+ }
525
+ listAssets(k2, A, b, j2, B) {
526
+ let C = new URLSearchParams;
527
+ if (j2?.page !== undefined)
528
+ C.append("page", String(j2.page));
529
+ if (j2?.per_page !== undefined)
530
+ C.append("per_page", String(j2.per_page));
531
+ let E3 = C.toString(), F = `/repos/${k2}/${A}/releases/${b}/assets${E3 ? `?${E3}` : ""}`;
532
+ return this.client.get(F, B);
533
+ }
534
+ uploadAsset(k2, A, b, j2, B) {
535
+ let C = new URLSearchParams;
536
+ if (j2?.name !== undefined)
537
+ C.append("name", j2.name);
538
+ let E3 = C.toString(), F = `/repos/${k2}/${A}/releases/${b}/assets${E3 ? `?${E3}` : ""}`;
539
+ return this.client.post(F, B);
540
+ }
541
+ deleteAsset(k2, A, b, j2, B) {
542
+ return this.client.delete(`/repos/${k2}/${A}/releases/${b}/assets/${j2}`, undefined, B);
474
543
  }
475
544
  }
476
545
 
477
- // ../sdk/dist/api/teams.js
478
- class k5 {
546
+ // ../sdk/dist/api/pulls.js
547
+ class I {
479
548
  client;
480
- constructor(b) {
481
- this.client = b;
482
- }
483
- list(b, d) {
484
- return this.client.get(`/orgs/${b}/teams`, d);
549
+ constructor(k2) {
550
+ this.client = k2;
485
551
  }
486
- getInvitations(b, d, f) {
487
- return this.client.get(`/orgs/${b}/teams/${d}/invitations`, f);
552
+ create(k2, v2, z, j2) {
553
+ return this.client.post(`/repos/${k2}/${v2}/pulls`, z, j2);
488
554
  }
489
- getMembers(b, d, f) {
490
- return this.client.get(`/orgs/${b}/teams/${d}/members`, f);
491
- }
492
- addRepository(b, d, f, h, j4) {
493
- return this.client.put(`/orgs/${b}/teams/${d}/repos/${f}/${h}`, {}, j4);
494
- }
495
- }
496
-
497
- // ../sdk/dist/api/git.js
498
- class j4 {
499
- client;
500
- constructor(b) {
501
- this.client = b;
555
+ listCommits(k2, v2, z, j2, D) {
556
+ let C = new URLSearchParams;
557
+ if (j2?.page !== undefined)
558
+ C.append("page", String(j2.page));
559
+ if (j2?.per_page !== undefined)
560
+ C.append("per_page", String(j2.per_page));
561
+ let F = C.toString(), G2 = `/repos/${k2}/${v2}/pulls/${z}/commits${F ? `?${F}` : ""}`;
562
+ return this.client.get(G2, D);
502
563
  }
503
- createRef(b, d, f, g2) {
504
- return this.client.post(`/repos/${b}/${d}/git/refs`, f, g2);
564
+ listFiles(k2, v2, z, j2, D) {
565
+ let C = new URLSearchParams;
566
+ if (j2?.page !== undefined)
567
+ C.append("page", String(j2.page));
568
+ if (j2?.per_page !== undefined)
569
+ C.append("per_page", String(j2.per_page));
570
+ let F = C.toString(), G2 = `/repos/${k2}/${v2}/pulls/${z}/files${F ? `?${F}` : ""}`;
571
+ return this.client.get(G2, D);
505
572
  }
506
- createTree(b, d, f, g2) {
507
- return this.client.post(`/repos/${b}/${d}/git/trees`, f, g2);
573
+ isMerged(k2, v2, z, j2) {
574
+ return this.client.get(`/repos/${k2}/${v2}/pulls/${z}/merge`, j2);
508
575
  }
509
- getTree(b, d, f, g2) {
510
- return this.client.get(`/repos/${b}/${d}/git/trees/${f}`, g2);
576
+ updateBranch(k2, v2, z, j2, D) {
577
+ return this.client.put(`/repos/${k2}/${v2}/pulls/${z}/update-branch`, j2, D);
511
578
  }
512
579
  }
513
580
 
514
- // ../sdk/dist/api/releases.js
515
- class q2 {
581
+ // ../sdk/dist/api/organizations.js
582
+ class F {
516
583
  client;
517
- constructor(b) {
518
- this.client = b;
519
- }
520
- list(b, f, h) {
521
- return this.client.get(`/repos/${b}/${f}/releases`, h);
522
- }
523
- create(b, f, h, j5) {
524
- return this.client.post(`/repos/${b}/${f}/releases`, h, j5);
525
- }
526
- getByTag(b, f, h, j5) {
527
- return this.client.get(`/repos/${b}/${f}/releases/tags/${h}`, j5);
584
+ constructor(w) {
585
+ this.client = w;
528
586
  }
529
- deleteByTag(b, f, h, j5) {
530
- return this.client.delete(`/repos/${b}/${f}/releases/tags/${h}`, undefined, j5);
587
+ listOrgSecrets(w, j2, x) {
588
+ let A = new URLSearchParams;
589
+ if (j2?.per_page !== undefined)
590
+ A.append("per_page", j2.per_page);
591
+ if (j2?.page !== undefined)
592
+ A.append("page", j2.page);
593
+ let B = A.toString(), D = `/orgs/${w}/actions/secrets${B ? `?${B}` : ""}`;
594
+ return this.client.get(D, x);
531
595
  }
532
- get(b, f, h, j5) {
533
- return this.client.get(`/repos/${b}/${f}/releases/${h}`, j5);
596
+ getOrgSecret(w, j2, x) {
597
+ return this.client.get(`/orgs/${w}/actions/secrets/${j2}`, x);
534
598
  }
535
- delete(b, f, h, j5) {
536
- return this.client.delete(`/repos/${b}/${f}/releases/${h}`, undefined, j5);
599
+ createOrUpdateOrgSecret(w, j2, x, A) {
600
+ let B = new URLSearchParams;
601
+ if (x?.encrypted_value !== undefined)
602
+ B.append("encrypted_value", x.encrypted_value);
603
+ let D = B.toString(), E3 = `/orgs/${w}/actions/secrets/${j2}${D ? `?${D}` : ""}`;
604
+ return this.client.put(E3, A);
537
605
  }
538
- update(b, f, h, j5, k6) {
539
- return this.client.patch(`/repos/${b}/${f}/releases/${h}`, j5, k6);
606
+ deleteOrgSecret(w, j2, x) {
607
+ return this.client.delete(`/orgs/${w}/actions/secrets/${j2}`, undefined, x);
540
608
  }
541
- getAssets(b, f, h, j5) {
542
- return this.client.get(`/repos/${b}/${f}/releases/${h}/assets`, j5);
543
- }
544
- uploadAsset(b, f, h, j5, k6) {
545
- return this.client.post(`/repos/${b}/${f}/releases/${h}/assets`, j5, k6);
546
- }
547
- deleteAsset(b, f, h, j5, k6) {
548
- return this.client.delete(`/repos/${b}/${f}/releases/${h}/assets/${j5}`, undefined, k6);
609
+ isMember(w, j2, x) {
610
+ return this.client.get(`/orgs/${w}/members/${j2}`, x);
549
611
  }
550
612
  }
551
613
 
552
- // ../sdk/dist/api/pulls.js
553
- class y {
614
+ // ../sdk/dist/api/actions.js
615
+ class F2 {
554
616
  client;
555
- constructor(d) {
556
- this.client = d;
557
- }
558
- create(d, f, g2, j5) {
559
- return this.client.post(`/repos/${d}/${f}/pulls`, g2, j5);
560
- }
561
- get(d, f, g2, j5) {
562
- return this.client.get(`/repos/${d}/${f}/pulls/${g2}`, j5);
563
- }
564
- list(d, f, g2, j5) {
565
- let x2 = new URLSearchParams(Object.entries(g2 ?? {})), q3 = new URL(`/repos/${d}/${f}/pulls`, "http://localhost");
566
- return q3.search = x2.toString(), this.client.get(q3.href.replace("http://localhost", ""), j5);
567
- }
568
- update(d, f, g2, j5, k6) {
569
- return this.client.patch(`/repos/${d}/${f}/pulls/${g2}`, j5, k6);
570
- }
571
- getFiles(d, f, g2, j5) {
572
- return this.client.get(`/repos/${d}/${f}/pulls/${g2}/files`, j5);
573
- }
574
- updateBranch(d, f, g2, j5) {
575
- return this.client.put(`/repos/${d}/${f}/pulls/${g2}/update-branch`, {}, j5);
576
- }
577
- getCommits(d, f, g2, j5) {
578
- return this.client.get(`/repos/${d}/${f}/pulls/${g2}/commits`, j5);
579
- }
580
- async checkIfMerged(d, f, g2, j5) {
581
- try {
582
- return await this.client.get(`/repos/${d}/${f}/pulls/${g2}/merge`, j5), true;
583
- } catch (k6) {
584
- if (k6 instanceof j2 && k6.status === 404)
585
- return false;
586
- throw k6;
587
- }
617
+ constructor(x) {
618
+ this.client = x;
619
+ }
620
+ listOrgRunners(x, j2, b) {
621
+ let z = new URLSearchParams;
622
+ if (j2?.page !== undefined)
623
+ z.append("page", String(j2.page));
624
+ if (j2?.per_page !== undefined)
625
+ z.append("per_page", String(j2.per_page));
626
+ let A = z.toString(), B = `/orgs/${x}/actions/runners${A ? `?${A}` : ""}`;
627
+ return this.client.get(B, b);
628
+ }
629
+ createOrgRunnerRegistrationToken(x, j2) {
630
+ return this.client.post(`/orgs/${x}/actions/runners/registration-token`, j2);
631
+ }
632
+ getOrgRunner(x, j2, b) {
633
+ return this.client.get(`/orgs/${x}/actions/runners/${j2}`, b);
634
+ }
635
+ deleteOrgRunner(x, j2, b) {
636
+ return this.client.delete(`/orgs/${x}/actions/runners/${j2}`, undefined, b);
637
+ }
638
+ listOrgVariables(x, j2, b) {
639
+ let z = new URLSearchParams;
640
+ if (j2?.per_page !== undefined)
641
+ z.append("per_page", String(j2.per_page));
642
+ if (j2?.page !== undefined)
643
+ z.append("page", String(j2.page));
644
+ let A = z.toString(), B = `/orgs/${x}/actions/variables${A ? `?${A}` : ""}`;
645
+ return this.client.get(B, b);
646
+ }
647
+ createOrgVariable(x, j2, b) {
648
+ return this.client.post(`/orgs/${x}/actions/variables`, j2, b);
649
+ }
650
+ getOrgVariable(x, j2, b) {
651
+ return this.client.get(`/orgs/${x}/actions/variables/${j2}`, b);
652
+ }
653
+ updateOrgVariable(x, j2, b, z) {
654
+ return this.client.patch(`/orgs/${x}/actions/variables/${j2}`, b, z);
655
+ }
656
+ deleteOrgVariable(x, j2, b) {
657
+ return this.client.delete(`/orgs/${x}/actions/variables/${j2}`, undefined, b);
658
+ }
659
+ listArtifacts(x, j2, b, z) {
660
+ let A = new URLSearchParams;
661
+ if (b?.page !== undefined)
662
+ A.append("page", String(b.page));
663
+ if (b?.per_page !== undefined)
664
+ A.append("per_page", String(b.per_page));
665
+ if (b?.name !== undefined)
666
+ A.append("name", b.name);
667
+ let B = A.toString(), C = `/repos/${x}/${j2}/actions/artifacts${B ? `?${B}` : ""}`;
668
+ return this.client.get(C, z);
669
+ }
670
+ getArtifact(x, j2, b, z) {
671
+ return this.client.get(`/repos/${x}/${j2}/actions/artifacts/${b}`, z);
672
+ }
673
+ deleteArtifact(x, j2, b, z) {
674
+ return this.client.delete(`/repos/${x}/${j2}/actions/artifacts/${b}`, undefined, z);
675
+ }
676
+ downloadArtifact(x, j2, b, z) {
677
+ return this.client.get(`/repos/${x}/${j2}/actions/artifacts/${b}/zip`, z);
678
+ }
679
+ downloadArtifactRaw(x, j2, b, z) {
680
+ return this.client.get(`/repos/${x}/${j2}/actions/artifacts/${b}/zip/raw`, z);
681
+ }
682
+ listRepoRunners(x, j2, b, z) {
683
+ let A = new URLSearchParams;
684
+ if (b?.page !== undefined)
685
+ A.append("page", String(b.page));
686
+ if (b?.per_page !== undefined)
687
+ A.append("per_page", String(b.per_page));
688
+ let B = A.toString(), C = `/repos/${x}/${j2}/actions/runners${B ? `?${B}` : ""}`;
689
+ return this.client.get(C, z);
690
+ }
691
+ createRepoRunnerRegistrationToken(x, j2, b) {
692
+ return this.client.post(`/repos/${x}/${j2}/actions/runners/registration-token`, b);
693
+ }
694
+ getRepoRunner(x, j2, b, z) {
695
+ return this.client.get(`/repos/${x}/${j2}/actions/runners/${b}`, z);
696
+ }
697
+ deleteRepoRunner(x, j2, b, z) {
698
+ return this.client.delete(`/repos/${x}/${j2}/actions/runners/${b}`, undefined, z);
699
+ }
700
+ listRepoVariables(x, j2, b, z) {
701
+ let A = new URLSearchParams;
702
+ if (b?.per_page !== undefined)
703
+ A.append("per_page", String(b.per_page));
704
+ if (b?.page !== undefined)
705
+ A.append("page", String(b.page));
706
+ let B = A.toString(), C = `/repos/${x}/${j2}/actions/variables${B ? `?${B}` : ""}`;
707
+ return this.client.get(C, z);
708
+ }
709
+ createRepoVariable(x, j2, b, z) {
710
+ return this.client.post(`/repos/${x}/${j2}/actions/variables`, b, z);
711
+ }
712
+ getRepoVariable(x, j2, b, z) {
713
+ return this.client.get(`/repos/${x}/${j2}/actions/variables/${b}`, z);
714
+ }
715
+ updateRepoVariable(x, j2, b, z, A) {
716
+ return this.client.patch(`/repos/${x}/${j2}/actions/variables/${b}`, z, A);
717
+ }
718
+ deleteRepoVariable(x, j2, b, z) {
719
+ return this.client.delete(`/repos/${x}/${j2}/actions/variables/${b}`, undefined, z);
720
+ }
721
+ getWorkflowDispatchInputs(x, j2, b, z, A) {
722
+ let B = new URLSearchParams;
723
+ if (z?.branch !== undefined)
724
+ B.append("branch", z.branch);
725
+ if (z?.tag !== undefined)
726
+ B.append("tag", z.tag);
727
+ let C = B.toString(), D = `/repos/${x}/${j2}/actions/workflows/${b}/dispatches${C ? `?${C}` : ""}`;
728
+ return this.client.get(D, A);
729
+ }
730
+ dispatchWorkflow(x, j2, b, z, A, B) {
731
+ let C = new URLSearchParams;
732
+ if (A?.branch !== undefined)
733
+ C.append("branch", A.branch);
734
+ if (A?.tag !== undefined)
735
+ C.append("tag", A.tag);
736
+ let D = C.toString(), E3 = `/repos/${x}/${j2}/actions/workflows/${b}/dispatches${D ? `?${D}` : ""}`;
737
+ return this.client.post(E3, z, B);
588
738
  }
589
739
  }
590
740
 
591
- // ../sdk/dist/api/forks.js
592
- class q3 {
741
+ // ../sdk/dist/api/stars.js
742
+ class A {
593
743
  client;
594
744
  constructor(b) {
595
745
  this.client = b;
596
746
  }
597
- async create(b, g2, h, j5) {
598
- let k6 = await this.client.post(`/repos/${b}/${g2}/forks`, h, j5);
599
- return J(k6);
600
- }
601
- }
602
-
603
- // ../sdk/dist/client.js
604
- var J2 = { DELETE: "DELETE", GET: "GET", PATCH: "PATCH", POST: "POST", PUT: "PUT" };
605
-
606
- class $ {
607
- baseUrl;
608
- token;
609
- apiVersion;
610
- onApiVersionWarning;
611
- constructor(j5 = {}) {
612
- this.baseUrl = j5.baseUrl || "https://api.gitverse.ru", this.token = j5.token, this.apiVersion = j5.apiVersion || "1";
613
- }
614
- setToken(j5) {
615
- this.token = j5;
616
- }
617
- extractRateLimitInfo(j5) {
618
- let x2 = j5.get("GitVerse-RateLimit-Limit"), q4 = j5.get("GitVerse-RateLimit-User-Remaining") || j5.get("GitVerse-RateLimit-Remaining"), z2 = j5.get("GitVerse-RateLimit-Retry-After"), B2 = j5.get("Gitverse-Ratelimit-Reset");
619
- if (!(x2 && z2))
620
- return;
621
- let K = Number.parseInt(z2, 10), D = B2 ? Number.parseInt(B2, 10) : Math.floor(Date.now() / 1000) + K, U = q4 ? Number.parseInt(q4, 10) : 0;
622
- return { limit: Number.parseInt(x2, 10), remaining: U, reset: D, retryAfter: K };
623
- }
624
- extractApiVersionInfo(j5) {
625
- let x2 = j5.get("Gitverse-Api-Version"), q4 = j5.get("Gitverse-Api-Latest-Version"), z2 = j5.get("Gitverse-Api-Deprecation") === "true", B2 = j5.get("Gitverse-Api-Decommissioning");
626
- if (!(x2 && q4))
627
- return;
628
- return { decommissioning: B2 || undefined, deprecated: z2, latestVersion: q4, version: x2 };
747
+ list(b, k2) {
748
+ let j2 = new URLSearchParams;
749
+ if (b?.page !== undefined)
750
+ j2.append("page", String(b.page));
751
+ if (b?.per_page !== undefined)
752
+ j2.append("per_page", String(b.per_page));
753
+ if (b?.sort !== undefined)
754
+ j2.append("sort", b.sort);
755
+ if (b?.direction !== undefined)
756
+ j2.append("direction", b.direction);
757
+ let x = j2.toString(), z = `/user/starred${x ? `?${x}` : ""}`;
758
+ return this.client.get(z, k2);
629
759
  }
630
- extractMetadata(j5) {
631
- let x2 = this.extractRateLimitInfo(j5), q4 = this.extractApiVersionInfo(j5);
632
- if (q4?.deprecated && this.onApiVersionWarning) {
633
- let z2 = new q(q4.version, q4.latestVersion, q4.decommissioning);
634
- this.onApiVersionWarning(z2);
635
- }
636
- return { apiVersion: q4, rateLimit: x2 };
760
+ isStarred(b, k2, j2) {
761
+ return this.client.get(`/user/starred/${b}/${k2}`, j2);
637
762
  }
638
- async request(j5, x2, q4, z2) {
639
- let B2 = j5.startsWith("/") ? j5.slice(1) : j5, K = `${this.baseUrl}/${B2}`, D = new Headers;
640
- if (D.set("Content-Type", "application/json"), D.set("Accept", `application/vnd.gitverse.object+json; version=${this.apiVersion}`), this.token)
641
- D.set("Authorization", `Bearer ${this.token}`);
642
- let U = { body: q4 ? JSON.stringify(q4) : undefined, headers: D, method: x2, signal: z2?.signal }, F = await fetch(K, U), Q = this.extractMetadata(F.headers), S;
643
- try {
644
- S = await F.json();
645
- } catch {
646
- S = undefined;
647
- }
648
- if (!F.ok) {
649
- let X = S?.message || F.statusText;
650
- if (F.status === 429 && Q.rateLimit)
651
- throw new k2(X || "Превышен лимит запросов. Попробуйте позже.", Q.rateLimit, Q);
652
- throw new j2(F.status, X, Q);
653
- }
654
- return S;
763
+ star(b, k2, j2) {
764
+ return this.client.put(`/user/starred/${b}/${k2}`, j2);
655
765
  }
656
- get(j5, x2) {
657
- return this.request(j5, J2.GET, undefined, x2);
766
+ unstar(b, k2, j2) {
767
+ return this.client.delete(`/user/starred/${b}/${k2}`, undefined, j2);
658
768
  }
659
- post(j5, x2, q4) {
660
- return this.request(j5, J2.POST, x2, q4);
661
- }
662
- put(j5, x2, q4) {
663
- return this.request(j5, J2.PUT, x2, q4);
664
- }
665
- delete(j5, x2, q4) {
666
- return this.request(j5, J2.DELETE, x2, q4);
667
- }
668
- patch(j5, x2, q4) {
669
- return this.request(j5, J2.PATCH, x2, q4);
769
+ }
770
+
771
+ // ../sdk/dist/api/issues.js
772
+ class E3 {
773
+ client;
774
+ constructor(k2) {
775
+ this.client = k2;
776
+ }
777
+ list(k2, A2, b, f) {
778
+ let j2 = new URLSearchParams;
779
+ if (b?.state !== undefined)
780
+ j2.append("state", b.state);
781
+ if (b?.q !== undefined)
782
+ j2.append("q", b.q);
783
+ if (b?.labels !== undefined)
784
+ j2.append("labels", b.labels);
785
+ if (b?.milestones !== undefined)
786
+ j2.append("milestones", b.milestones);
787
+ if (b?.created_by !== undefined)
788
+ j2.append("created_by", b.created_by);
789
+ if (b?.assigned_by !== undefined)
790
+ j2.append("assigned_by", b.assigned_by);
791
+ if (b?.mentioned_by !== undefined)
792
+ j2.append("mentioned_by", b.mentioned_by);
793
+ if (b?.type !== undefined)
794
+ j2.append("type", b.type);
795
+ if (b?.since !== undefined)
796
+ j2.append("since", b.since);
797
+ if (b?.before !== undefined)
798
+ j2.append("before", b.before);
799
+ if (b?.page !== undefined)
800
+ j2.append("page", String(b.page));
801
+ if (b?.per_page !== undefined)
802
+ j2.append("per_page", String(b.per_page));
803
+ let z = j2.toString(), B = `/repos/${k2}/${A2}/issues${z ? `?${z}` : ""}`;
804
+ return this.client.get(B, f);
805
+ }
806
+ getComment(k2, A2, b, f) {
807
+ return this.client.get(`/repos/${k2}/${A2}/issues/comments/${b}`, f);
808
+ }
809
+ get(k2, A2, b, f) {
810
+ return this.client.get(`/repos/${k2}/${A2}/issues/${b}`, f);
811
+ }
812
+ listComments(k2, A2, b, f, j2) {
813
+ let z = new URLSearchParams;
814
+ if (f?.since !== undefined)
815
+ z.append("since", f.since);
816
+ if (f?.before !== undefined)
817
+ z.append("before", f.before);
818
+ let B = z.toString(), D = `/repos/${k2}/${A2}/issues/${b}/comments${B ? `?${B}` : ""}`;
819
+ return this.client.get(D, j2);
820
+ }
821
+ listLabels(k2, A2, b, f) {
822
+ return this.client.get(`/repos/${k2}/${A2}/issues/${b}/labels`, f);
823
+ }
824
+ listTimeline(k2, A2, b, f, j2) {
825
+ let z = new URLSearchParams;
826
+ if (f?.page !== undefined)
827
+ z.append("page", String(f.page));
828
+ if (f?.per_page !== undefined)
829
+ z.append("per_page", String(f.per_page));
830
+ if (f?.since !== undefined)
831
+ z.append("since", f.since);
832
+ if (f?.before !== undefined)
833
+ z.append("before", f.before);
834
+ let B = z.toString(), D = `/repos/${k2}/${A2}/issues/${b}/timeline${B ? `?${B}` : ""}`;
835
+ return this.client.get(D, j2);
670
836
  }
671
837
  }
672
838
 
673
839
  // ../sdk/dist/api/users.js
674
- class f {
840
+ class z {
675
841
  client;
676
- constructor(b) {
677
- this.client = b;
678
- }
679
- getCurrent(b) {
680
- return this.client.get("/user", b);
681
- }
682
- getByUsername(b, d) {
683
- return this.client.get(`/users/${b}`, d);
842
+ constructor(j2) {
843
+ this.client = j2;
844
+ }
845
+ list(j2, v2) {
846
+ let k2 = new URLSearchParams;
847
+ if (j2?.q !== undefined)
848
+ k2.append("q", j2.q);
849
+ if (j2?.sort !== undefined)
850
+ k2.append("sort", j2.sort);
851
+ if (j2?.order !== undefined)
852
+ k2.append("order", j2.order);
853
+ if (j2?.page !== undefined)
854
+ k2.append("page", String(j2.page));
855
+ if (j2?.per_page !== undefined)
856
+ k2.append("per_page", String(j2.per_page));
857
+ let w = k2.toString(), x = `/search/users${w ? `?${w}` : ""}`;
858
+ return this.client.get(x, v2);
859
+ }
860
+ getAuthenticated(j2) {
861
+ return this.client.get("/user", j2);
862
+ }
863
+ get(j2, v2) {
864
+ return this.client.get(`/user/${j2}`, v2);
865
+ }
866
+ getByUsername(j2, v2) {
867
+ return this.client.get(`/users/${j2}`, v2);
684
868
  }
685
869
  }
686
870
 
687
871
  // ../sdk/dist/api/emails.js
688
- class d {
872
+ class x {
689
873
  client;
690
874
  constructor(b) {
691
875
  this.client = b;
692
876
  }
693
- list(b) {
694
- return this.client.get("/user/emails", b);
877
+ list(b, f) {
878
+ let j2 = new URLSearchParams;
879
+ if (b?.page !== undefined)
880
+ j2.append("page", String(b.page));
881
+ if (b?.per_page !== undefined)
882
+ j2.append("per_page", String(b.per_page));
883
+ let k2 = j2.toString(), w = `/user/emails${k2 ? `?${k2}` : ""}`;
884
+ return this.client.get(w, f);
695
885
  }
696
- add(b, c) {
697
- return this.client.post("/user/emails", b, c);
886
+ create(b, f) {
887
+ return this.client.post("/user/emails", b, f);
698
888
  }
699
- remove(b, c) {
700
- return this.client.delete("/user/emails", b, c);
889
+ delete(b, f) {
890
+ return this.client.delete("/user/emails", b, f);
701
891
  }
702
892
  }
703
893
 
704
894
  // ../sdk/dist/index.js
705
- class Z {
895
+ class J {
706
896
  client;
707
- users;
897
+ actions;
898
+ orgs;
899
+ teams;
708
900
  repos;
709
- contents;
901
+ issues;
710
902
  pulls;
711
- forks;
903
+ releases;
904
+ users;
712
905
  emails;
713
- issues;
714
906
  stars;
715
- branches;
716
- commits;
717
- collaborators;
718
- organizations;
719
- teams;
720
- releases;
721
- git;
722
- actions;
723
- constructor(d2 = {}) {
724
- this.client = new $(d2), this.users = new f(this.client), this.repos = new A(this.client), this.contents = new k4(this.client), this.pulls = new y(this.client), this.forks = new q3(this.client), this.emails = new d(this.client), this.issues = new B(this.client), this.stars = new k3(this.client), this.branches = new g(this.client), this.commits = new j(this.client), this.collaborators = new j3(this.client), this.organizations = new k(this.client), this.teams = new k5(this.client), this.releases = new q2(this.client), this.git = new j4(this.client), this.actions = new x(this.client);
907
+ constructor(b = {}) {
908
+ this.client = new v(b), this.actions = new F2(this.client), this.orgs = new F(this.client), this.teams = new E2(this.client), this.repos = new E(this.client), this.issues = new E3(this.client), this.pulls = new I(this.client), this.releases = new G(this.client), this.users = new z(this.client), this.emails = new x(this.client), this.stars = new A(this.client);
725
909
  }
726
- setToken(d2) {
727
- return this.client.setToken(d2), this;
910
+ setToken(b) {
911
+ return this.client.setToken(b), this;
728
912
  }
729
913
  }
730
914
 
@@ -734,7 +918,7 @@ class GitVerseReleaseClient {
734
918
  repoInfo;
735
919
  retryFn;
736
920
  constructor(token, repoInfo, retryFn) {
737
- this.client = new Z({ token });
921
+ this.client = new J({ token });
738
922
  this.repoInfo = repoInfo;
739
923
  this.retryFn = retryFn;
740
924
  }
@@ -1224,8 +1408,8 @@ function createRetryFunction(config) {
1224
1408
  var VERSION_REGEX = /^(\d+)\.(\d+)\.(\d+)(?:-(.+))?$/;
1225
1409
  var PRERELEASE_INCREMENT_REGEX = /^(.+)\.(\d+)$/;
1226
1410
  function parseVersion(version) {
1227
- const v = version.startsWith("v") ? version.slice(1) : version;
1228
- const match = v.match(VERSION_REGEX);
1411
+ const v2 = version.startsWith("v") ? version.slice(1) : version;
1412
+ const match = v2.match(VERSION_REGEX);
1229
1413
  if (!(match?.[1] && match[2] && match[3])) {
1230
1414
  throw new Error(`Invalid version format: ${version}`);
1231
1415
  }
@@ -1594,38 +1778,86 @@ import { parseArgs } from "node:util";
1594
1778
  // src/utils/commitlint-generator.ts
1595
1779
  import { writeFile as writeFile2 } from "node:fs/promises";
1596
1780
  async function generateCommitlint(config, options = {}) {
1781
+ const generatorOptions = parseGeneratorOptions(options);
1782
+ const rules = buildCommitlintRules(config, options);
1783
+ const configContent = generateConfigContent(rules, generatorOptions.format, generatorOptions.comments);
1784
+ if (generatorOptions.verbose) {
1785
+ printVerboseOutput(rules, options);
1786
+ }
1787
+ if (generatorOptions.dryRun) {
1788
+ printDryRunOutput(configContent, generatorOptions.output);
1789
+ return;
1790
+ }
1791
+ await writeFile2(generatorOptions.output, configContent);
1792
+ console.log(`✅ Generated commitlint config: ${generatorOptions.output}`);
1793
+ }
1794
+ function parseGeneratorOptions(options) {
1795
+ return {
1796
+ comments: options.comments ?? true,
1797
+ dryRun: options.dryRun ?? false,
1798
+ format: options.format ?? "ts",
1799
+ output: options.output ?? "commitlint.config.ts",
1800
+ verbose: options.verbose ?? false
1801
+ };
1802
+ }
1803
+ function buildCommitlintRules(config, options) {
1597
1804
  const {
1598
- output = "commitlint.config.ts",
1599
- format = "ts",
1600
- scopes,
1601
- scopeRequired = false,
1805
+ bodyMaxLineLength = null,
1806
+ footerMaxLineLength = null,
1602
1807
  headerMaxLength = 100,
1603
- comments = true,
1604
- dryRun = false,
1605
- verbose = false
1808
+ headerMinLength = null,
1809
+ scopeRequired = false,
1810
+ scopes,
1811
+ strictMode = false,
1812
+ subjectCase = null,
1813
+ subjectFullStop = false,
1814
+ warningRules = ["header-max-length"]
1606
1815
  } = options;
1607
1816
  const commitTypes = extractCommitTypes(config);
1608
1817
  const commitScopes = extractCommitScopes(config, scopes);
1609
- const configContent = generateConfigContent(commitTypes, commitScopes, { headerMaxLength, scopeRequired }, format, comments);
1610
- if (verbose) {
1611
- console.log(`
1818
+ return {
1819
+ bodyMaxLineLength: strictMode ? bodyMaxLineLength ?? 100 : bodyMaxLineLength,
1820
+ footerMaxLineLength: strictMode ? footerMaxLineLength ?? 100 : footerMaxLineLength,
1821
+ headerMaxLength,
1822
+ headerMinLength,
1823
+ scopeRequired,
1824
+ scopes: commitScopes,
1825
+ strictMode,
1826
+ subjectCase: strictMode ? "lower-case" : subjectCase,
1827
+ subjectFullStop,
1828
+ types: commitTypes,
1829
+ warningRules: strictMode ? [] : warningRules
1830
+ };
1831
+ }
1832
+ function printVerboseOutput(rules, options) {
1833
+ console.log(`
1612
1834
  \uD83D\uDCCA Configuration:`);
1613
- console.log(` Types: ${commitTypes.join(", ")}`);
1614
- console.log(` Scopes: ${commitScopes.join(", ")}`);
1615
- console.log(` Scope required: ${scopeRequired}`);
1616
- console.log(` Header max length: ${headerMaxLength}`);
1617
- }
1618
- if (dryRun) {
1619
- console.log(`
1835
+ console.log(` Types: ${rules.types.join(", ")}`);
1836
+ console.log(` Scopes: ${rules.scopes.join(", ")}`);
1837
+ console.log(` Scope required: ${rules.scopeRequired}`);
1838
+ console.log(` Header max length: ${rules.headerMaxLength}`);
1839
+ if (rules.headerMinLength)
1840
+ console.log(` Header min length: ${rules.headerMinLength}`);
1841
+ if (rules.subjectCase)
1842
+ console.log(` Subject case: ${rules.subjectCase}`);
1843
+ if (options.subjectFullStop)
1844
+ console.log(" Subject full stop: forbidden");
1845
+ if (rules.bodyMaxLineLength)
1846
+ console.log(` Body max line length: ${rules.bodyMaxLineLength}`);
1847
+ if (rules.footerMaxLineLength)
1848
+ console.log(` Footer max line length: ${rules.footerMaxLineLength}`);
1849
+ if (options.strictMode)
1850
+ console.log(" Strict mode: enabled");
1851
+ if (rules.warningRules.length > 0)
1852
+ console.log(` Warning rules: ${rules.warningRules.join(", ")}`);
1853
+ }
1854
+ function printDryRunOutput(configContent, output) {
1855
+ console.log(`
1620
1856
  \uD83D\uDD0D Dry-run mode - Preview of generated config:
1621
1857
  `);
1622
- console.log(configContent);
1623
- console.log(`
1858
+ console.log(configContent);
1859
+ console.log(`
1624
1860
  \uD83D\uDCDD Would write to: ${output}`);
1625
- return;
1626
- }
1627
- await writeFile2(output, configContent);
1628
- console.log(`✅ Generated commitlint config: ${output}`);
1629
1861
  }
1630
1862
  function extractCommitTypes(config) {
1631
1863
  return Object.keys(config.changelog.types);
@@ -1642,12 +1874,103 @@ function extractCommitScopes(config, additionalScopes) {
1642
1874
  }
1643
1875
  return [...new Set(scopes)].sort();
1644
1876
  }
1645
- function generateConfigContent(types2, scopes, rules, format, comments) {
1877
+ function getRuleLevel(ruleName, warningRules, strictMode) {
1878
+ if (strictMode)
1879
+ return 2;
1880
+ return warningRules.includes(ruleName) ? 1 : 2;
1881
+ }
1882
+ function buildRulesObject(rules) {
1883
+ const { strictMode, warningRules } = rules;
1884
+ const result = {};
1885
+ result["type-enum"] = [2, "always", rules.types];
1886
+ result["type-empty"] = [2, "never"];
1887
+ if (rules.scopes.length > 0) {
1888
+ result["scope-enum"] = [2, "always", rules.scopes];
1889
+ }
1890
+ result["scope-empty"] = rules.scopeRequired ? [2, "never"] : [0];
1891
+ result["subject-case"] = rules.subjectCase ? [getRuleLevel("subject-case", warningRules, strictMode), "always", rules.subjectCase] : [0];
1892
+ result["subject-empty"] = [2, "never"];
1893
+ if (rules.subjectFullStop) {
1894
+ result["subject-full-stop"] = [getRuleLevel("subject-full-stop", warningRules, strictMode), "never", "."];
1895
+ }
1896
+ result["header-max-length"] = [
1897
+ getRuleLevel("header-max-length", warningRules, strictMode),
1898
+ "always",
1899
+ rules.headerMaxLength
1900
+ ];
1901
+ if (rules.headerMinLength) {
1902
+ result["header-min-length"] = [
1903
+ getRuleLevel("header-min-length", warningRules, strictMode),
1904
+ "always",
1905
+ rules.headerMinLength
1906
+ ];
1907
+ }
1908
+ result["body-leading-blank"] = [2, "always"];
1909
+ result["footer-leading-blank"] = [2, "always"];
1910
+ if (rules.bodyMaxLineLength) {
1911
+ result["body-max-line-length"] = [
1912
+ getRuleLevel("body-max-line-length", warningRules, strictMode),
1913
+ "always",
1914
+ rules.bodyMaxLineLength
1915
+ ];
1916
+ }
1917
+ if (rules.footerMaxLineLength) {
1918
+ result["footer-max-line-length"] = [
1919
+ getRuleLevel("footer-max-line-length", warningRules, strictMode),
1920
+ "always",
1921
+ rules.footerMaxLineLength
1922
+ ];
1923
+ }
1924
+ return result;
1925
+ }
1926
+ function formatRuleValue(value) {
1927
+ if (value.length === 1) {
1928
+ return `[${value[0]}]`;
1929
+ }
1930
+ if (value.length === 2) {
1931
+ return `[${value[0]}, "${value[1]}"]`;
1932
+ }
1933
+ const thirdArg = typeof value[2] === "string" ? `"${value[2]}"` : JSON.stringify(value[2]);
1934
+ return `[${value[0]}, "${value[1]}", ${thirdArg}]`;
1935
+ }
1936
+ function generateRuleComment(ruleName, rules) {
1937
+ const { strictMode, warningRules } = rules;
1938
+ if (ruleName === "scope-empty") {
1939
+ return rules.scopeRequired ? " // scope required" : " // scope optional";
1940
+ }
1941
+ if (ruleName === "subject-case" && !rules.subjectCase) {
1942
+ return " // disabled - any case allowed";
1943
+ }
1944
+ if (!strictMode && warningRules.includes(ruleName)) {
1945
+ return " // warning";
1946
+ }
1947
+ return "";
1948
+ }
1949
+ var RULE_ORDER = [
1950
+ "type-enum",
1951
+ "type-empty",
1952
+ "scope-enum",
1953
+ "scope-empty",
1954
+ "subject-case",
1955
+ "subject-empty",
1956
+ "subject-full-stop",
1957
+ "header-max-length",
1958
+ "header-min-length",
1959
+ "body-leading-blank",
1960
+ "body-max-line-length",
1961
+ "footer-leading-blank",
1962
+ "footer-max-line-length"
1963
+ ];
1964
+ function generateParserPreset(comments) {
1965
+ const comment = comments ? " // Support for feat(scope)!, fix! breaking change syntax" : "";
1966
+ return ` parserPreset: "conventional-changelog-conventionalcommits",${comment}`;
1967
+ }
1968
+ function generateConfigContent(rules, format, comments) {
1969
+ const rulesObject = buildRulesObject(rules);
1646
1970
  if (format === "json") {
1647
- return generateJSONConfig(types2, scopes, rules);
1971
+ return generateJSONConfig(rulesObject);
1648
1972
  }
1649
1973
  const isTS = format === "ts";
1650
- const _ext = isTS ? "ts" : "js";
1651
1974
  const header = comments ? `// AUTO-GENERATED by gitverse-release
1652
1975
  // Run: gitverse-release generate-commitlint
1653
1976
  // DO NOT EDIT MANUALLY - Changes will be overwritten
@@ -1657,26 +1980,23 @@ function generateConfigContent(types2, scopes, rules, format, comments) {
1657
1980
 
1658
1981
  ` : "";
1659
1982
  const configDeclaration = isTS ? "const config: UserConfig = " : "const config = ";
1660
- const typesComment = comments ? ` // Types from release config
1661
- ` : "";
1662
- const scopesComment = comments ? ` // Scopes from release config
1663
- ` : "";
1664
- const scopeEmptyRule = rules.scopeRequired ? ` "scope-empty": [2, "never"], // scope required
1665
- ` : ` "scope-empty": [0], // scope optional
1666
- `;
1983
+ const rulesLines = [];
1984
+ for (const ruleName of RULE_ORDER) {
1985
+ const value = rulesObject[ruleName];
1986
+ if (!value)
1987
+ continue;
1988
+ const comment = comments ? generateRuleComment(ruleName, rules) : "";
1989
+ rulesLines.push(` "${ruleName}": ${formatRuleValue(value)},${comment}`);
1990
+ }
1991
+ const parserPreset = generateParserPreset(comments);
1667
1992
  const content = `${header}${typeImport}${configDeclaration}{
1668
1993
  extends: ["@commitlint/config-conventional"],
1669
1994
 
1670
- rules: {
1671
- ${typesComment} "type-enum": [2, "always", ${JSON.stringify(types2)}],
1995
+ ${parserPreset}
1672
1996
 
1673
- ${scopesComment} "scope-enum": [2, "always", ${JSON.stringify(scopes)}],
1674
- ${scopeEmptyRule}
1675
- "subject-case": [2, "always", "lower-case"],
1676
- "subject-empty": [2, "never"],
1677
- "header-max-length": [2, "always", ${rules.headerMaxLength}],
1678
- "body-leading-blank": [2, "always"],
1679
- "footer-leading-blank": [2, "always"],
1997
+ rules: {
1998
+ ${rulesLines.join(`
1999
+ `)}
1680
2000
  },
1681
2001
  };
1682
2002
 
@@ -1684,19 +2004,11 @@ ${isTS ? "export default config;" : "module.exports = config;"}
1684
2004
  `;
1685
2005
  return content;
1686
2006
  }
1687
- function generateJSONConfig(types2, scopes, rules) {
2007
+ function generateJSONConfig(rulesObject) {
1688
2008
  const config = {
1689
2009
  extends: ["@commitlint/config-conventional"],
1690
- rules: {
1691
- "body-leading-blank": [2, "always"],
1692
- "footer-leading-blank": [2, "always"],
1693
- "header-max-length": [2, "always", rules.headerMaxLength],
1694
- "scope-empty": rules.scopeRequired ? [2, "never"] : [0],
1695
- "scope-enum": [2, "always", scopes],
1696
- "subject-case": [2, "always", "lower-case"],
1697
- "subject-empty": [2, "never"],
1698
- "type-enum": [2, "always", types2]
1699
- }
2010
+ parserPreset: "conventional-changelog-conventionalcommits",
2011
+ rules: rulesObject
1700
2012
  };
1701
2013
  return JSON.stringify(config, null, 2);
1702
2014
  }
@@ -1888,4 +2200,4 @@ Usage: gitverse-release create-only --tag <tag> [--package <name>]`);
1888
2200
  }
1889
2201
  main();
1890
2202
 
1891
- //# debugId=A2D09E9236DE6AFE64756E2164756E21
2203
+ //# debugId=2DBE58B556C486E464756E2164756E21