@redocly/reunite-integration 2.54.0 → 2.54.1

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 (81) hide show
  1. package/lib/api/api-client.d.ts +85 -0
  2. package/lib/api/api-client.d.ts.map +1 -0
  3. package/lib/api/api-client.js +254 -0
  4. package/lib/api/api-client.js.map +1 -0
  5. package/lib/api/api-keys.d.ts +2 -0
  6. package/lib/api/api-keys.d.ts.map +1 -0
  7. package/lib/api/api-keys.js +7 -0
  8. package/lib/api/api-keys.js.map +1 -0
  9. package/lib/api/domains.d.ts +12 -0
  10. package/lib/api/domains.d.ts.map +1 -0
  11. package/lib/api/domains.js +52 -0
  12. package/lib/api/domains.js.map +1 -0
  13. package/lib/api/index.d.ts +4 -0
  14. package/lib/api/index.d.ts.map +1 -0
  15. package/lib/api/index.js +4 -0
  16. package/lib/api/index.js.map +1 -0
  17. package/lib/api/types.d.ts +103 -0
  18. package/lib/api/types.d.ts.map +1 -0
  19. package/lib/api/types.js +2 -0
  20. package/lib/api/types.js.map +1 -0
  21. package/lib/auth/device-flow.d.ts +29 -0
  22. package/lib/auth/device-flow.d.ts.map +1 -0
  23. package/lib/auth/device-flow.js +140 -0
  24. package/lib/auth/device-flow.js.map +1 -0
  25. package/lib/auth/oauth-client.d.ts +20 -0
  26. package/lib/auth/oauth-client.d.ts.map +1 -0
  27. package/lib/auth/oauth-client.js +118 -0
  28. package/lib/auth/oauth-client.js.map +1 -0
  29. package/lib/index.d.ts +15 -0
  30. package/lib/index.d.ts.map +1 -0
  31. package/lib/index.js +13 -0
  32. package/lib/index.js.map +1 -0
  33. package/lib/push-status.d.ts +22 -0
  34. package/lib/push-status.d.ts.map +1 -0
  35. package/lib/push-status.js +44 -0
  36. package/lib/push-status.js.map +1 -0
  37. package/lib/push.d.ts +37 -0
  38. package/lib/push.d.ts.map +1 -0
  39. package/lib/push.js +68 -0
  40. package/lib/push.js.map +1 -0
  41. package/lib/scorecard-classic/remote/fetch-scorecard.d.ts +9 -0
  42. package/lib/scorecard-classic/remote/fetch-scorecard.d.ts.map +1 -0
  43. package/lib/scorecard-classic/remote/fetch-scorecard.js +77 -0
  44. package/lib/scorecard-classic/remote/fetch-scorecard.js.map +1 -0
  45. package/lib/scorecard-classic/targets-handler/targets-handler.d.ts +13 -0
  46. package/lib/scorecard-classic/targets-handler/targets-handler.d.ts.map +1 -0
  47. package/lib/scorecard-classic/targets-handler/targets-handler.js +54 -0
  48. package/lib/scorecard-classic/targets-handler/targets-handler.js.map +1 -0
  49. package/lib/scorecard-classic/types.d.ts +19 -0
  50. package/lib/scorecard-classic/types.d.ts.map +1 -0
  51. package/lib/scorecard-classic/types.js +2 -0
  52. package/lib/scorecard-classic/types.js.map +1 -0
  53. package/lib/scorecard-classic/validation/plugin-evaluator.d.ts +3 -0
  54. package/lib/scorecard-classic/validation/plugin-evaluator.d.ts.map +1 -0
  55. package/lib/scorecard-classic/validation/plugin-evaluator.js +12 -0
  56. package/lib/scorecard-classic/validation/plugin-evaluator.js.map +1 -0
  57. package/lib/scorecard-classic/validation/project-url.d.ts +2 -0
  58. package/lib/scorecard-classic/validation/project-url.d.ts.map +1 -0
  59. package/lib/scorecard-classic/validation/project-url.js +11 -0
  60. package/lib/scorecard-classic/validation/project-url.js.map +1 -0
  61. package/lib/scorecard-classic/validation/validate-scorecard.d.ts +21 -0
  62. package/lib/scorecard-classic/validation/validate-scorecard.d.ts.map +1 -0
  63. package/lib/scorecard-classic/validation/validate-scorecard.js +55 -0
  64. package/lib/scorecard-classic/validation/validate-scorecard.js.map +1 -0
  65. package/lib/utils/constants.d.ts +3 -0
  66. package/lib/utils/constants.d.ts.map +1 -0
  67. package/lib/utils/constants.js +5 -0
  68. package/lib/utils/constants.js.map +1 -0
  69. package/lib/utils/fetch-with-timeout.d.ts +6 -0
  70. package/lib/utils/fetch-with-timeout.d.ts.map +1 -0
  71. package/lib/utils/fetch-with-timeout.js +25 -0
  72. package/lib/utils/fetch-with-timeout.js.map +1 -0
  73. package/lib/utils/proxy-env.d.ts +3 -0
  74. package/lib/utils/proxy-env.d.ts.map +1 -0
  75. package/lib/utils/proxy-env.js +37 -0
  76. package/lib/utils/proxy-env.js.map +1 -0
  77. package/lib/utils/retry-until-condition-met.d.ts +19 -0
  78. package/lib/utils/retry-until-condition-met.d.ts.map +1 -0
  79. package/lib/utils/retry-until-condition-met.js +28 -0
  80. package/lib/utils/retry-until-condition-met.js.map +1 -0
  81. package/package.json +2 -2
@@ -0,0 +1,85 @@
1
+ import type { ReadStream } from 'node:fs';
2
+ import type { Readable } from 'node:stream';
3
+ import { type FetchWithTimeoutOptions } from '../utils/fetch-with-timeout.js';
4
+ import type { ListRemotesResponse, PushResponse, UpsertRemoteResponse } from './types.js';
5
+ interface BaseApiClient {
6
+ request(url: string, options: FetchWithTimeoutOptions): Promise<Response>;
7
+ }
8
+ type CommandOption = 'push' | 'push-status';
9
+ export type SunsetWarning = {
10
+ sunsetDate: Date;
11
+ isSunsetExpired: boolean;
12
+ };
13
+ export type SunsetWarningsBuffer = SunsetWarning[];
14
+ export declare class ReuniteApiError extends Error {
15
+ status: number;
16
+ constructor(message: string, status: number);
17
+ }
18
+ export declare class ReuniteApiClient implements BaseApiClient {
19
+ protected command: string;
20
+ protected version: string;
21
+ sunsetWarnings: SunsetWarningsBuffer;
22
+ constructor(command: string, version?: string);
23
+ request(url: string, options: FetchWithTimeoutOptions): Promise<Response>;
24
+ private collectSunsetWarning;
25
+ private getSunsetDate;
26
+ }
27
+ declare class RemotesApi {
28
+ private client;
29
+ private readonly domain;
30
+ private readonly apiKey;
31
+ constructor(client: BaseApiClient, domain: string, apiKey: string);
32
+ protected getParsedResponse<T>(response: Response): Promise<T>;
33
+ getDefaultBranch(organizationId: string, projectId: string): Promise<string>;
34
+ upsert(organizationId: string, projectId: string, remote: {
35
+ mountPath: string;
36
+ mountBranchName: string;
37
+ }): Promise<UpsertRemoteResponse>;
38
+ push(organizationId: string, projectId: string, payload: PushPayload, files: {
39
+ path: string;
40
+ stream: ReadStream | Buffer;
41
+ }[]): Promise<PushResponse>;
42
+ getRemotesList({ organizationId, projectId, mountPath, }: {
43
+ organizationId: string;
44
+ projectId: string;
45
+ mountPath: string;
46
+ }): Promise<ListRemotesResponse>;
47
+ getPush({ organizationId, projectId, pushId, }: {
48
+ organizationId: string;
49
+ projectId: string;
50
+ pushId: string;
51
+ }): Promise<PushResponse>;
52
+ }
53
+ export declare class ReuniteApi {
54
+ private apiClient;
55
+ remotes: RemotesApi;
56
+ constructor({ domain, apiKey, command, version, }: {
57
+ domain: string;
58
+ apiKey: string;
59
+ command: CommandOption;
60
+ version?: string;
61
+ });
62
+ getSunsetWarning(): SunsetWarning | undefined;
63
+ }
64
+ export declare function getMostUrgentSunsetWarning(sunsetWarnings: SunsetWarning[]): SunsetWarning | undefined;
65
+ export type PushPayload = {
66
+ remoteId: string;
67
+ commit: {
68
+ message: string;
69
+ branchName: string;
70
+ sha?: string;
71
+ url?: string;
72
+ createdAt?: string;
73
+ namespace?: string;
74
+ repository?: string;
75
+ author: {
76
+ name: string;
77
+ email: string;
78
+ image?: string;
79
+ };
80
+ };
81
+ isMainBranch?: boolean;
82
+ };
83
+ export declare function streamToBuffer(stream: ReadStream | Readable): Promise<Buffer>;
84
+ export {};
85
+ //# sourceMappingURL=api-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/api/api-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,254 @@
1
+ import { DEFAULT_CLI_VERSION, DEFAULT_FETCH_TIMEOUT } from '../utils/constants.js';
2
+ import fetchWithTimeout from '../utils/fetch-with-timeout.js';
3
+ export class ReuniteApiError extends Error {
4
+ status;
5
+ constructor(message, status) {
6
+ super(message);
7
+ this.status = status;
8
+ }
9
+ }
10
+ export class ReuniteApiClient {
11
+ command;
12
+ version;
13
+ sunsetWarnings = [];
14
+ constructor(command, version = DEFAULT_CLI_VERSION) {
15
+ this.command = command;
16
+ this.version = version;
17
+ }
18
+ async request(url, options) {
19
+ const headers = {
20
+ ...options.headers,
21
+ 'user-agent': `redocly-cli/${this.version} ${this.command}`,
22
+ };
23
+ try {
24
+ const response = await fetchWithTimeout(url, {
25
+ ...options,
26
+ headers,
27
+ });
28
+ this.collectSunsetWarning(response);
29
+ return response;
30
+ }
31
+ catch (err) {
32
+ let errorMessage = 'Failed to fetch.';
33
+ if (err.cause) {
34
+ errorMessage += ` Caused by ${err.cause.message || err.cause.name}.`;
35
+ }
36
+ if (err.code || err.cause?.code) {
37
+ errorMessage += ` Code: ${err.code || err.cause?.code}`;
38
+ }
39
+ throw new Error(errorMessage);
40
+ }
41
+ }
42
+ collectSunsetWarning(response) {
43
+ const sunsetTime = this.getSunsetDate(response);
44
+ if (!sunsetTime)
45
+ return;
46
+ const sunsetDate = new Date(sunsetTime);
47
+ if (sunsetTime > Date.now()) {
48
+ this.sunsetWarnings.push({
49
+ sunsetDate,
50
+ isSunsetExpired: false,
51
+ });
52
+ }
53
+ else {
54
+ this.sunsetWarnings.push({
55
+ sunsetDate,
56
+ isSunsetExpired: true,
57
+ });
58
+ }
59
+ }
60
+ getSunsetDate(response) {
61
+ const { headers } = response;
62
+ if (!headers) {
63
+ return;
64
+ }
65
+ const sunsetDate = headers.get('sunset') || headers.get('Sunset');
66
+ if (!sunsetDate) {
67
+ return;
68
+ }
69
+ return Date.parse(sunsetDate);
70
+ }
71
+ }
72
+ class RemotesApi {
73
+ client;
74
+ domain;
75
+ apiKey;
76
+ constructor(client, domain, apiKey) {
77
+ this.client = client;
78
+ this.domain = domain;
79
+ this.apiKey = apiKey;
80
+ }
81
+ async getParsedResponse(response) {
82
+ const responseBody = await response.json();
83
+ if (response.ok) {
84
+ return responseBody;
85
+ }
86
+ throw new ReuniteApiError(`${responseBody.title || response.statusText || 'Unknown error'}.`, response.status);
87
+ }
88
+ async getDefaultBranch(organizationId, projectId) {
89
+ try {
90
+ const response = await this.client.request(`${this.domain}/api/orgs/${organizationId}/projects/${projectId}/source`, {
91
+ timeout: DEFAULT_FETCH_TIMEOUT,
92
+ method: 'GET',
93
+ headers: {
94
+ 'Content-Type': 'application/json',
95
+ Authorization: `Bearer ${this.apiKey}`,
96
+ },
97
+ });
98
+ const source = await this.getParsedResponse(response);
99
+ return source.branchName;
100
+ }
101
+ catch (err) {
102
+ const message = `Failed to fetch default branch. ${err.message}`;
103
+ if (err instanceof ReuniteApiError) {
104
+ throw new ReuniteApiError(message, err.status);
105
+ }
106
+ throw new Error(message);
107
+ }
108
+ }
109
+ async upsert(organizationId, projectId, remote) {
110
+ try {
111
+ const response = await this.client.request(`${this.domain}/api/orgs/${organizationId}/projects/${projectId}/remotes`, {
112
+ timeout: DEFAULT_FETCH_TIMEOUT,
113
+ method: 'POST',
114
+ headers: {
115
+ 'Content-Type': 'application/json',
116
+ Authorization: `Bearer ${this.apiKey}`,
117
+ },
118
+ body: JSON.stringify({
119
+ mountPath: remote.mountPath,
120
+ mountBranchName: remote.mountBranchName,
121
+ type: 'CICD',
122
+ autoMerge: true,
123
+ }),
124
+ });
125
+ return await this.getParsedResponse(response);
126
+ }
127
+ catch (err) {
128
+ const message = `Failed to upsert remote. ${err.message}`;
129
+ if (err instanceof ReuniteApiError) {
130
+ throw new ReuniteApiError(message, err.status);
131
+ }
132
+ throw new Error(message);
133
+ }
134
+ }
135
+ async push(organizationId, projectId, payload, files) {
136
+ const formData = new globalThis.FormData();
137
+ formData.append('remoteId', payload.remoteId);
138
+ formData.append('commit[message]', payload.commit.message);
139
+ formData.append('commit[author][name]', payload.commit.author.name);
140
+ formData.append('commit[author][email]', payload.commit.author.email);
141
+ formData.append('commit[branchName]', payload.commit.branchName);
142
+ if (payload.commit.url) {
143
+ formData.append('commit[url]', payload.commit.url);
144
+ }
145
+ if (payload.commit.namespace) {
146
+ formData.append('commit[namespaceId]', payload.commit.namespace);
147
+ }
148
+ if (payload.commit.sha) {
149
+ formData.append('commit[sha]', payload.commit.sha);
150
+ }
151
+ if (payload.commit.repository) {
152
+ formData.append('commit[repositoryId]', payload.commit.repository);
153
+ }
154
+ if (payload.commit.createdAt) {
155
+ formData.append('commit[createdAt]', payload.commit.createdAt);
156
+ }
157
+ for (const file of files) {
158
+ const blob = Buffer.isBuffer(file.stream)
159
+ ? new Blob([file.stream])
160
+ : new Blob([(await streamToBuffer(file.stream))]);
161
+ formData.append(`files[${file.path}]`, blob, file.path);
162
+ }
163
+ if (payload.isMainBranch) {
164
+ formData.append('isMainBranch', 'true');
165
+ }
166
+ try {
167
+ const response = await this.client.request(`${this.domain}/api/orgs/${organizationId}/projects/${projectId}/pushes`, {
168
+ method: 'POST',
169
+ headers: {
170
+ Authorization: `Bearer ${this.apiKey}`,
171
+ },
172
+ body: formData,
173
+ });
174
+ return await this.getParsedResponse(response);
175
+ }
176
+ catch (err) {
177
+ const message = `Failed to push. ${err.message}`;
178
+ if (err instanceof ReuniteApiError) {
179
+ throw new ReuniteApiError(message, err.status);
180
+ }
181
+ throw new Error(message);
182
+ }
183
+ }
184
+ async getRemotesList({ organizationId, projectId, mountPath, }) {
185
+ try {
186
+ const response = await this.client.request(`${this.domain}/api/orgs/${organizationId}/projects/${projectId}/remotes?filter=mountPath:/${mountPath}/`, {
187
+ timeout: DEFAULT_FETCH_TIMEOUT,
188
+ method: 'GET',
189
+ headers: {
190
+ 'Content-Type': 'application/json',
191
+ Authorization: `Bearer ${this.apiKey}`,
192
+ },
193
+ });
194
+ return await this.getParsedResponse(response);
195
+ }
196
+ catch (err) {
197
+ const message = `Failed to get remote list. ${err.message}`;
198
+ if (err instanceof ReuniteApiError) {
199
+ throw new ReuniteApiError(message, err.status);
200
+ }
201
+ throw new Error(message);
202
+ }
203
+ }
204
+ async getPush({ organizationId, projectId, pushId, }) {
205
+ try {
206
+ const response = await this.client.request(`${this.domain}/api/orgs/${organizationId}/projects/${projectId}/pushes/${pushId}`, {
207
+ timeout: DEFAULT_FETCH_TIMEOUT,
208
+ method: 'GET',
209
+ headers: {
210
+ 'Content-Type': 'application/json',
211
+ Authorization: `Bearer ${this.apiKey}`,
212
+ },
213
+ });
214
+ return await this.getParsedResponse(response);
215
+ }
216
+ catch (err) {
217
+ const message = `Failed to get push status. ${err.message}`;
218
+ if (err instanceof ReuniteApiError) {
219
+ throw new ReuniteApiError(message, err.status);
220
+ }
221
+ throw new Error(message);
222
+ }
223
+ }
224
+ }
225
+ export class ReuniteApi {
226
+ apiClient;
227
+ remotes;
228
+ constructor({ domain, apiKey, command, version, }) {
229
+ this.apiClient = new ReuniteApiClient(command, version);
230
+ this.remotes = new RemotesApi(this.apiClient, domain, apiKey);
231
+ }
232
+ // The most urgent sunset warning the Reunite API sent through this client so far, if any.
233
+ getSunsetWarning() {
234
+ return getMostUrgentSunsetWarning(this.apiClient.sunsetWarnings);
235
+ }
236
+ }
237
+ // An expired sunset comes first, then the closest upcoming one.
238
+ export function getMostUrgentSunsetWarning(sunsetWarnings) {
239
+ const [mostUrgent] = [...sunsetWarnings].sort((a, b) => {
240
+ if (a.isSunsetExpired !== b.isSunsetExpired) {
241
+ return a.isSunsetExpired ? -1 : 1;
242
+ }
243
+ return a.sunsetDate > b.sunsetDate ? 1 : -1;
244
+ });
245
+ return mostUrgent;
246
+ }
247
+ export async function streamToBuffer(stream) {
248
+ const chunks = [];
249
+ for await (const chunk of stream) {
250
+ chunks.push(chunk);
251
+ }
252
+ return Buffer.concat(chunks);
253
+ }
254
+ //# sourceMappingURL=api-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/api/api-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function getApiKeys(): string;
2
+ //# sourceMappingURL=api-keys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../src/api/api-keys.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,WAMzB"}
@@ -0,0 +1,7 @@
1
+ export function getApiKeys() {
2
+ if (process.env.REDOCLY_AUTHORIZATION) {
3
+ return process.env.REDOCLY_AUTHORIZATION;
4
+ }
5
+ throw new Error('No api key provided, please use environment variable REDOCLY_AUTHORIZATION.');
6
+ }
7
+ //# sourceMappingURL=api-keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-keys.js","sourceRoot":"","sources":["../../src/api/api-keys.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU;IACxB,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;QACtC,OAAO,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAC3C,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;AACjG,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { type Config } from '@redocly/openapi-core';
2
+ export declare const REUNITE_URLS: {
3
+ readonly us: "https://app.cloud.redocly.com";
4
+ readonly eu: "https://app.cloud.eu.redocly.com";
5
+ };
6
+ export declare function getDomain(): string;
7
+ export declare const getReuniteUrl: (config: Config | undefined, residencyOption?: string | undefined) => string;
8
+ export declare function isValidReuniteUrl(reuniteUrl: string): boolean;
9
+ export declare class InvalidReuniteUrlError extends Error {
10
+ constructor();
11
+ }
12
+ //# sourceMappingURL=domains.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../src/api/domains.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,eAAO,MAAM,YAAY;;;CAGf,CAAC;AAEX,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED,eAAO,MAAM,aAAa,8EAsBzB,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAQ7D;AAcD,qBAAa,sBAAuB,SAAQ,KAAK;;CAIhD"}
@@ -0,0 +1,52 @@
1
+ export const REUNITE_URLS = {
2
+ us: 'https://app.cloud.redocly.com',
3
+ eu: 'https://app.cloud.eu.redocly.com',
4
+ };
5
+ export function getDomain() {
6
+ return process.env.REDOCLY_DOMAIN || REUNITE_URLS.us;
7
+ }
8
+ export const getReuniteUrl = withHttpsValidation((config, residencyOption) => {
9
+ try {
10
+ const residency = residencyOption || config?.resolvedConfig.residency;
11
+ if (isLegacyResidency(residency)) {
12
+ return REUNITE_URLS[residency];
13
+ }
14
+ if (residency) {
15
+ return new URL(residency).origin;
16
+ }
17
+ if (config?.resolvedConfig.scorecard?.fromProjectUrl) {
18
+ return new URL(config.resolvedConfig.scorecard.fromProjectUrl).origin;
19
+ }
20
+ return REUNITE_URLS.us;
21
+ }
22
+ catch {
23
+ throw new InvalidReuniteUrlError();
24
+ }
25
+ });
26
+ export function isValidReuniteUrl(reuniteUrl) {
27
+ try {
28
+ getReuniteUrl(undefined, reuniteUrl);
29
+ }
30
+ catch {
31
+ return false;
32
+ }
33
+ return true;
34
+ }
35
+ function withHttpsValidation(fn) {
36
+ return (...args) => {
37
+ const url = fn(...args);
38
+ if (!url.startsWith('https://')) {
39
+ throw new InvalidReuniteUrlError();
40
+ }
41
+ return url;
42
+ };
43
+ }
44
+ export class InvalidReuniteUrlError extends Error {
45
+ constructor() {
46
+ super('Invalid Reunite URL');
47
+ }
48
+ }
49
+ function isLegacyResidency(value) {
50
+ return typeof value === 'string' && value in REUNITE_URLS;
51
+ }
52
+ //# sourceMappingURL=domains.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domains.js","sourceRoot":"","sources":["../../src/api/domains.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,EAAE,EAAE,+BAA+B;IACnC,EAAE,EAAE,kCAAkC;CAC9B,CAAC;AAEX,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,YAAY,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,CAC9C,CAAC,MAA0B,EAAE,eAAwB,EAAU,EAAE;IAC/D,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,eAAe,IAAI,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC;QAEtE,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;QACnC,CAAC;QAED,IAAI,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE,cAAc,EAAE,CAAC;YACrD,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC;QACxE,CAAC;QAED,OAAO,YAAY,CAAC,EAAE,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,sBAAsB,EAAE,CAAC;IACrC,CAAC;AACH,CAAC,CACF,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,IAAI,CAAC;QACH,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAwC,EAAM;IACxE,OAAO,CAAC,GAAG,IAAoB,EAAE,EAAE;QACjC,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QAExB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,sBAAsB,EAAE,CAAC;QACrC,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C;QACE,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC/B,CAAC;CACF;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,YAAY,CAAC;AAC5D,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './api-client.js';
2
+ export * from './domains.js';
3
+ export * from './api-keys.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './api-client.js';
2
+ export * from './domains.js';
3
+ export * from './api-keys.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,103 @@
1
+ export type ProjectSourceResponse = {
2
+ branchName: string;
3
+ contentPath: string;
4
+ isInternal: boolean;
5
+ };
6
+ export type UpsertRemoteResponse = {
7
+ id: string;
8
+ type: 'CICD';
9
+ mountPath: string;
10
+ mountBranchName: string;
11
+ organizationId: string;
12
+ projectId: string;
13
+ };
14
+ export type ListRemotesResponse = {
15
+ object: 'list';
16
+ page: {
17
+ endCursor: string;
18
+ startCursor: string;
19
+ haxNextPage: boolean;
20
+ hasPrevPage: boolean;
21
+ limit: number;
22
+ total: number;
23
+ };
24
+ items: Remote[];
25
+ };
26
+ export type Remote = {
27
+ mountPath: string;
28
+ type: string;
29
+ autoSync: boolean;
30
+ autoMerge: boolean;
31
+ createdAt: string;
32
+ updatedAt: string;
33
+ providerType: string;
34
+ namespaceId: string;
35
+ repositoryId: string;
36
+ projectId: string;
37
+ mountBranchName: string;
38
+ contentPath: string;
39
+ credentialId: string;
40
+ branchName: string;
41
+ contentType: string;
42
+ id: string;
43
+ };
44
+ export type PushResponse = {
45
+ id: string;
46
+ remoteId: string;
47
+ isMainBranch: boolean;
48
+ isOutdated: boolean;
49
+ hasChanges: boolean;
50
+ replace: boolean;
51
+ scoutJobId: string | null;
52
+ uploadedFiles: Array<{
53
+ path: string;
54
+ mimeType: string;
55
+ }>;
56
+ commit: {
57
+ branchName: string;
58
+ message: string;
59
+ createdAt: string | null;
60
+ namespaceId: string | null;
61
+ repositoryId: string | null;
62
+ url: string | null;
63
+ sha: string | null;
64
+ author: {
65
+ name: string;
66
+ email: string;
67
+ image: string | null;
68
+ };
69
+ statuses: Array<{
70
+ name: string;
71
+ description: string;
72
+ status: 'pending' | 'running' | 'success' | 'failed';
73
+ url: string | null;
74
+ }>;
75
+ };
76
+ remote: {
77
+ commits: {
78
+ sha: string;
79
+ branchName: string;
80
+ }[];
81
+ };
82
+ status: PushStatusResponse;
83
+ };
84
+ export type DeploymentStatusResponse = {
85
+ deploy: {
86
+ url: string | null;
87
+ status: DeploymentStatus;
88
+ };
89
+ scorecard: ScorecardItem[];
90
+ };
91
+ export type PushStatusResponse = {
92
+ preview: DeploymentStatusResponse;
93
+ production: DeploymentStatusResponse;
94
+ };
95
+ export type ScorecardItem = {
96
+ name: string;
97
+ status: PushStatusBase;
98
+ description: string;
99
+ url: string;
100
+ };
101
+ export type PushStatusBase = 'pending' | 'success' | 'running' | 'failed';
102
+ export type DeploymentStatus = 'skipped' | PushStatusBase;
103
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ export type Credentials = {
2
+ access_token: string;
3
+ refresh_token: string;
4
+ expires_in: number;
5
+ residency?: string;
6
+ token_type?: string;
7
+ };
8
+ export type DeviceCode = {
9
+ verificationUri: string;
10
+ verificationUriComplete: string;
11
+ userCode: string;
12
+ };
13
+ export declare class RedoclyOAuthDeviceFlow {
14
+ private baseUrl;
15
+ private apiClient;
16
+ private clientName;
17
+ constructor(baseUrl: string, version?: string);
18
+ run(onDeviceCode?: (code: DeviceCode) => void): Promise<Credentials>;
19
+ private openBrowser;
20
+ verifyToken(accessToken: string): Promise<boolean>;
21
+ verifyApiKey(apiKey: string): Promise<boolean>;
22
+ refreshToken(refreshToken?: string): Promise<Credentials>;
23
+ private pollingAccessToken;
24
+ private getAccessToken;
25
+ private getDeviceCode;
26
+ private sendRequest;
27
+ private withResidency;
28
+ }
29
+ //# sourceMappingURL=device-flow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device-flow.d.ts","sourceRoot":"","sources":["../../src/auth/device-flow.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,WAAW,GAAG;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAGF,MAAM,MAAM,UAAU,GAAG;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,uBAAuB,EAAE,MAAM,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,qBAAa,sBAAsB;IAK/B,OAAO,CAAC,OAAO;IAJjB,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,UAAU,CAAiB;gBAGzB,OAAO,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,MAAM;IAMZ,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI;IAoBnD,OAAO,CAAC,WAAW;IAqBb,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYlD,YAAY,CAAC,MAAM,EAAE,MAAM;IAW3B,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM;YAkB1B,kBAAkB;YA4BlB,cAAc;YAQd,aAAa;YAsBb,WAAW;IAmBzB,OAAO,CAAC,aAAa;CAMtB"}