@bugbug-io/sdk 13.39.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.
- package/README.md +576 -0
- package/dist/constants/sdk-error-codes.d.ts +35 -0
- package/dist/constants/sdk-error-codes.d.ts.map +1 -0
- package/dist/index.d.ts +87 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3844 -0
- package/dist/modules/auth/auth.d.ts +11 -0
- package/dist/modules/auth/auth.d.ts.map +1 -0
- package/dist/modules/auth/auth.types.d.ts +34 -0
- package/dist/modules/auth/auth.types.d.ts.map +1 -0
- package/dist/modules/auth/auth.utils.d.ts +4 -0
- package/dist/modules/auth/auth.utils.d.ts.map +1 -0
- package/dist/modules/components/components.d.ts +43 -0
- package/dist/modules/components/components.d.ts.map +1 -0
- package/dist/modules/config/config.d.ts +48 -0
- package/dist/modules/config/config.d.ts.map +1 -0
- package/dist/modules/groups/groups.d.ts +62 -0
- package/dist/modules/groups/groups.d.ts.map +1 -0
- package/dist/modules/profiles/profiles.d.ts +71 -0
- package/dist/modules/profiles/profiles.d.ts.map +1 -0
- package/dist/modules/project/project.d.ts +58 -0
- package/dist/modules/project/project.d.ts.map +1 -0
- package/dist/modules/projectArtifacts/projectArtifacts.d.ts +8 -0
- package/dist/modules/projectArtifacts/projectArtifacts.d.ts.map +1 -0
- package/dist/modules/projectArtifacts/projectArtifacts.types.d.ts +14 -0
- package/dist/modules/projectArtifacts/projectArtifacts.types.d.ts.map +1 -0
- package/dist/modules/projects/projects.d.ts +36 -0
- package/dist/modules/projects/projects.d.ts.map +1 -0
- package/dist/modules/projects/projects.types.d.ts +6 -0
- package/dist/modules/projects/projects.types.d.ts.map +1 -0
- package/dist/modules/stepRuns/stepRuns.d.ts +22 -0
- package/dist/modules/stepRuns/stepRuns.d.ts.map +1 -0
- package/dist/modules/steps/steps.d.ts +47 -0
- package/dist/modules/steps/steps.d.ts.map +1 -0
- package/dist/modules/steps/steps.utils.d.ts +11 -0
- package/dist/modules/steps/steps.utils.d.ts.map +1 -0
- package/dist/modules/suites/suites.d.ts +153 -0
- package/dist/modules/suites/suites.d.ts.map +1 -0
- package/dist/modules/suites/suites.types.d.ts +31 -0
- package/dist/modules/suites/suites.types.d.ts.map +1 -0
- package/dist/modules/tests/tests.d.ts +253 -0
- package/dist/modules/tests/tests.d.ts.map +1 -0
- package/dist/modules/tests/tests.types.d.ts +34 -0
- package/dist/modules/tests/tests.types.d.ts.map +1 -0
- package/dist/modules/tests/tests.utils.d.ts +11 -0
- package/dist/modules/tests/tests.utils.d.ts.map +1 -0
- package/dist/modules/variables/variables.d.ts +14 -0
- package/dist/modules/variables/variables.d.ts.map +1 -0
- package/dist/modules/variables/variables.types.d.ts +7 -0
- package/dist/modules/variables/variables.types.d.ts.map +1 -0
- package/dist/modules/visualRegression/visualRegression.constants.d.ts +7 -0
- package/dist/modules/visualRegression/visualRegression.constants.d.ts.map +1 -0
- package/dist/modules/visualRegression/visualRegression.d.ts +69 -0
- package/dist/modules/visualRegression/visualRegression.d.ts.map +1 -0
- package/dist/modules/visualRegression/visualRegression.types.d.ts +12 -0
- package/dist/modules/visualRegression/visualRegression.types.d.ts.map +1 -0
- package/dist/sdk.d.ts +126 -0
- package/dist/sdk.d.ts.map +1 -0
- package/dist/services/apiClient/apiClient.d.ts +167 -0
- package/dist/services/apiClient/apiClient.d.ts.map +1 -0
- package/dist/services/apiClient/apiClient.types.d.ts +19 -0
- package/dist/services/apiClient/apiClient.types.d.ts.map +1 -0
- package/dist/services/apiClient/apiClient.utils.d.ts +32 -0
- package/dist/services/apiClient/apiClient.utils.d.ts.map +1 -0
- package/dist/services/rateLimiter/rateLimiter.constants.d.ts +5 -0
- package/dist/services/rateLimiter/rateLimiter.constants.d.ts.map +1 -0
- package/dist/services/rateLimiter/rateLimiter.d.ts +49 -0
- package/dist/services/rateLimiter/rateLimiter.d.ts.map +1 -0
- package/dist/services/rateLimiter/rateLimiter.types.d.ts +34 -0
- package/dist/services/rateLimiter/rateLimiter.types.d.ts.map +1 -0
- package/dist/testUtils/fakeFactory.d.ts +15 -0
- package/dist/testUtils/fakeFactory.d.ts.map +1 -0
- package/dist/testUtils/setup.d.ts +2 -0
- package/dist/testUtils/setup.d.ts.map +1 -0
- package/dist/types/config.d.ts +121 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/errors.d.ts +162 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/sdk.d.ts +28 -0
- package/dist/types/sdk.d.ts.map +1 -0
- package/dist/utils/pagination.d.ts +10 -0
- package/dist/utils/pagination.d.ts.map +1 -0
- package/dist/utils/polling.d.ts +20 -0
- package/dist/utils/polling.d.ts.map +1 -0
- package/package.json +83 -0
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error types for the BugBug SDK.
|
|
3
|
+
*
|
|
4
|
+
* Every request-related error carries a numeric `statusCode`. For errors that
|
|
5
|
+
* never reached an HTTP response (network/timeout/cancellation/configuration),
|
|
6
|
+
* a synthetic sentinel is used (see `sdk-error-codes.ts`). This makes
|
|
7
|
+
* `error.statusCode` safe to read in all CLI/MCP rendering paths.
|
|
8
|
+
*/
|
|
9
|
+
import type { SdkErrorCode } from '../constants/sdk-error-codes';
|
|
10
|
+
/**
|
|
11
|
+
* Origin of the request that produced this error. Set by the client where
|
|
12
|
+
* available so CLI and MCP can show which endpoint failed without needing
|
|
13
|
+
* a separate resource label.
|
|
14
|
+
*/
|
|
15
|
+
export interface RequestOrigin {
|
|
16
|
+
method?: string;
|
|
17
|
+
url?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Base class for every error thrown by the SDK. Carries a stable `code`
|
|
21
|
+
* (see {@link SdkErrorCode}), a numeric `statusCode`, and — where available —
|
|
22
|
+
* the originating {@link RequestOrigin} and raw {@link Response}.
|
|
23
|
+
*/
|
|
24
|
+
export declare class BugBugError extends Error {
|
|
25
|
+
readonly code: SdkErrorCode;
|
|
26
|
+
readonly statusCode: number;
|
|
27
|
+
readonly response?: Response;
|
|
28
|
+
readonly request?: RequestOrigin;
|
|
29
|
+
readonly cause?: Error;
|
|
30
|
+
constructor(code: SdkErrorCode, message: string, statusCode: number, response?: Response, cause?: Error, request?: RequestOrigin);
|
|
31
|
+
toJSON(): {
|
|
32
|
+
name: string;
|
|
33
|
+
code: SdkErrorCode;
|
|
34
|
+
message: string;
|
|
35
|
+
statusCode: number;
|
|
36
|
+
request: RequestOrigin | undefined;
|
|
37
|
+
stack: string | undefined;
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/** Thrown for HTTP 401 responses (missing or invalid API token). */
|
|
41
|
+
export declare class AuthenticationError extends BugBugError {
|
|
42
|
+
constructor(message?: string, response?: Response, request?: RequestOrigin);
|
|
43
|
+
}
|
|
44
|
+
/** Thrown for HTTP 403 responses (authenticated but not permitted). */
|
|
45
|
+
export declare class AuthorizationError extends BugBugError {
|
|
46
|
+
constructor(message?: string, response?: Response, request?: RequestOrigin);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Thrown for HTTP 400/422 validation failures from the API.
|
|
50
|
+
*
|
|
51
|
+
* `fields` carries the parsed Django REST Framework field-error map
|
|
52
|
+
* (e.g. `{ name: ['This field is required.'] }`) when available, so MCP
|
|
53
|
+
* agents can react per-field instead of parsing the human message.
|
|
54
|
+
*/
|
|
55
|
+
export declare class ValidationError extends BugBugError {
|
|
56
|
+
readonly fields?: Record<string, string[]>;
|
|
57
|
+
constructor(message: string, response?: Response, fields?: Record<string, string[]>, request?: RequestOrigin);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Thrown when the SDK is constructed with invalid configuration. Distinct
|
|
61
|
+
* from `ValidationError`, which represents API-side validation failures.
|
|
62
|
+
*
|
|
63
|
+
* `statusCode` is `0` because no request was attempted.
|
|
64
|
+
*/
|
|
65
|
+
export declare class ConfigurationError extends BugBugError {
|
|
66
|
+
constructor(message: string);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Thrown when an organization/user token hits a project-scoped endpoint
|
|
70
|
+
* without a project. The backend answers HTTP 400 and the client maps that
|
|
71
|
+
* specific failure here so callers can prompt for / supply a project id
|
|
72
|
+
* instead of surfacing a generic `ValidationError`.
|
|
73
|
+
*/
|
|
74
|
+
export declare class MissingProjectIdError extends BugBugError {
|
|
75
|
+
constructor(message?: string, response?: Response, request?: RequestOrigin);
|
|
76
|
+
}
|
|
77
|
+
/** Thrown for HTTP 404 responses (resource does not exist). */
|
|
78
|
+
export declare class NotFoundError extends BugBugError {
|
|
79
|
+
constructor(message?: string, response?: Response, request?: RequestOrigin);
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Thrown for HTTP 429 responses or when the client-side rate limiter trips.
|
|
83
|
+
* `retryAfter` is the suggested wait in milliseconds, when known.
|
|
84
|
+
*/
|
|
85
|
+
export declare class RateLimitError extends BugBugError {
|
|
86
|
+
readonly retryAfter?: number;
|
|
87
|
+
constructor(retryAfter?: number, message?: string, response?: Response, request?: RequestOrigin);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Thrown when a request exceeds the configured timeout.
|
|
91
|
+
*
|
|
92
|
+
* Uses `statusCode = 408` (RFC 7231 Request Timeout) to disambiguate
|
|
93
|
+
* client-side timeouts from real `408` server responses (which would
|
|
94
|
+
* arrive with a Response object attached).
|
|
95
|
+
*/
|
|
96
|
+
export declare class TimeoutError extends BugBugError {
|
|
97
|
+
readonly timeout: number;
|
|
98
|
+
constructor(timeout: number, message?: string, request?: RequestOrigin);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Thrown when the request never reached an HTTP response (DNS failure,
|
|
102
|
+
* connection refused, fetch-level failure). `statusCode` is `0`.
|
|
103
|
+
*/
|
|
104
|
+
export declare class NetworkError extends BugBugError {
|
|
105
|
+
constructor(message: string, cause?: Error, request?: RequestOrigin);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Thrown when a request is aborted via an `AbortSignal`. Uses the nginx
|
|
109
|
+
* convention `statusCode = 499` to distinguish client cancellation.
|
|
110
|
+
*/
|
|
111
|
+
export declare class CancellationError extends BugBugError {
|
|
112
|
+
constructor(message?: string, request?: RequestOrigin);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Thrown for HTTP 500 responses. Distinct from {@link ServiceUnavailableError}
|
|
116
|
+
* (502/503/504), which usually indicates a transient/retryable condition.
|
|
117
|
+
*/
|
|
118
|
+
export declare class InternalServerError extends BugBugError {
|
|
119
|
+
constructor(message?: string, response?: Response, request?: RequestOrigin);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Thrown for HTTP 502/503/504 responses. Typically transient — callers may
|
|
123
|
+
* retry with backoff.
|
|
124
|
+
*/
|
|
125
|
+
export declare class ServiceUnavailableError extends BugBugError {
|
|
126
|
+
constructor(message?: string, response?: Response, request?: RequestOrigin);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Thrown when the API returns a body that could not be parsed as expected
|
|
130
|
+
* (e.g. an HTML page instead of JSON). `statusCode` is `0` because no usable
|
|
131
|
+
* response was produced.
|
|
132
|
+
*/
|
|
133
|
+
export declare class UnexpectedResponseError extends BugBugError {
|
|
134
|
+
constructor(message: string, cause?: Error, request?: RequestOrigin);
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Thrown for HTTP error responses with no more specific mapping (any status
|
|
138
|
+
* not handled by the other error classes).
|
|
139
|
+
*/
|
|
140
|
+
export declare class HttpError extends BugBugError {
|
|
141
|
+
constructor(message: string, statusCode: number, response?: Response, request?: RequestOrigin);
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Type guards. Each narrows `unknown` to the matching error class so callers
|
|
145
|
+
* can branch on error kind without manual `instanceof` checks.
|
|
146
|
+
*/
|
|
147
|
+
export declare function isBugBugError(error: unknown): error is BugBugError;
|
|
148
|
+
export declare function isAuthenticationError(error: unknown): error is AuthenticationError;
|
|
149
|
+
export declare function isAuthorizationError(error: unknown): error is AuthorizationError;
|
|
150
|
+
export declare function isValidationError(error: unknown): error is ValidationError;
|
|
151
|
+
export declare function isConfigurationError(error: unknown): error is ConfigurationError;
|
|
152
|
+
export declare function isMissingProjectIdError(error: unknown): error is MissingProjectIdError;
|
|
153
|
+
export declare function isNotFoundError(error: unknown): error is NotFoundError;
|
|
154
|
+
export declare function isRateLimitError(error: unknown): error is RateLimitError;
|
|
155
|
+
export declare function isTimeoutError(error: unknown): error is TimeoutError;
|
|
156
|
+
export declare function isNetworkError(error: unknown): error is NetworkError;
|
|
157
|
+
export declare function isCancellationError(error: unknown): error is CancellationError;
|
|
158
|
+
export declare function isInternalServerError(error: unknown): error is InternalServerError;
|
|
159
|
+
export declare function isServiceUnavailableError(error: unknown): error is ServiceUnavailableError;
|
|
160
|
+
export declare function isUnexpectedResponseError(error: unknown): error is UnexpectedResponseError;
|
|
161
|
+
export declare function isHttpError(error: unknown): error is HttpError;
|
|
162
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAYjE;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,KAAK;IACpC,SAAgB,IAAI,EAAE,YAAY,CAAC;IACnC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpC,SAAgB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxC,SAAyB,KAAK,CAAC,EAAE,KAAK,CAAC;gBAGrC,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,QAAQ,EACnB,KAAK,CAAC,EAAE,KAAK,EACb,OAAO,CAAC,EAAE,aAAa;IAezB,MAAM;;;;;;;;CAUP;AAED,oEAAoE;AACpE,qBAAa,mBAAoB,SAAQ,WAAW;gBAEhD,OAAO,GAAE,MAAgC,EACzC,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,aAAa;CAY1B;AAED,uEAAuE;AACvE,qBAAa,kBAAmB,SAAQ,WAAW;gBACrC,OAAO,GAAE,MAAwB,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,aAAa;CAW5F;AAED;;;;;;GAMG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,SAAgB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;gBAGhD,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,QAAQ,EACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EACjC,OAAO,CAAC,EAAE,aAAa;CAa1B;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;gBACrC,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;gBAElD,OAAO,GAAE,MAAsF,EAC/F,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,aAAa;CAY1B;AAED,+DAA+D;AAC/D,qBAAa,aAAc,SAAQ,WAAW;gBAE1C,OAAO,GAAE,MAA6B,EACtC,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,aAAa;CAY1B;AAED;;;GAGG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC7C,SAAgB,UAAU,CAAC,EAAE,MAAM,CAAC;gBAGlC,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,GAAE,MAA8B,EACvC,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,aAAa;CAa1B;AAED;;;;;;GAMG;AACH,qBAAa,YAAa,SAAQ,WAAW;IAC3C,SAAgB,OAAO,EAAE,MAAM,CAAC;gBAEpB,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa;CAavE;AAED;;;GAGG;AACH,qBAAa,YAAa,SAAQ,WAAW;gBAC/B,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,aAAa;CAIpE;AAED;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;gBACpC,OAAO,GAAE,MAAgC,EAAE,OAAO,CAAC,EAAE,aAAa;CAW/E;AAED;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;gBAEhD,OAAO,GAAE,MAAgC,EACzC,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,aAAa;CAY1B;AAED;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,WAAW;gBAEpD,OAAO,GAAE,MAA0C,EACnD,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,CAAC,EAAE,aAAa;CAY1B;AAED;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,WAAW;gBAC1C,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,aAAa;CAWpE;AAED;;;GAGG;AACH,qBAAa,SAAU,SAAQ,WAAW;gBAC5B,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,aAAa;CAI9F;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,wBAE3C;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,gCAEnD;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,+BAElD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,4BAE/C;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,+BAElD;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,kCAErD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,0BAE7C;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,2BAE9C;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,yBAE5C;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,yBAE5C;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,8BAEjD;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,gCAEnD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,oCAEvD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,oCAEvD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,sBAEzC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SDK-internal types and runtime helpers that are not part of the public BugBug
|
|
3
|
+
* API contract (which lives in `@bugbug-io/api-schema`).
|
|
4
|
+
*/
|
|
5
|
+
import type { IpAddressesResponse, Status } from '@bugbug-io/api-schema';
|
|
6
|
+
export interface ConnectivityStatus {
|
|
7
|
+
connected: boolean;
|
|
8
|
+
responseTime: number;
|
|
9
|
+
timestamp: string;
|
|
10
|
+
message: string;
|
|
11
|
+
error?: string;
|
|
12
|
+
authenticated?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface ApiStatus {
|
|
15
|
+
status: string;
|
|
16
|
+
authenticated: boolean;
|
|
17
|
+
}
|
|
18
|
+
export interface SdkSystemInfo {
|
|
19
|
+
ipAddresses: IpAddressesResponse | null;
|
|
20
|
+
connectivity: ConnectivityStatus | null;
|
|
21
|
+
timestamp: string;
|
|
22
|
+
}
|
|
23
|
+
export declare const isRunningStatus: (status?: Status) => boolean;
|
|
24
|
+
export declare const isEditingStatus: (status?: Status) => boolean;
|
|
25
|
+
export declare const isFailedStatus: (status?: Status) => boolean;
|
|
26
|
+
export declare const isPassedStatus: (status?: Status) => boolean;
|
|
27
|
+
export declare const isCompletedStatus: (status?: Status) => boolean;
|
|
28
|
+
//# sourceMappingURL=sdk.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/types/sdk.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEzE,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACxC,YAAY,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB;AAGD,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,KAAG,OAC4B,CAAC;AAE/E,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,KAAG,OACF,CAAC;AAEjD,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,OACL,CAAC;AAE7C,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,OAA4C,CAAC;AAE9F,eAAO,MAAM,iBAAiB,GAAI,SAAS,MAAM,KAAG,OACa,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface CursorPaginatedResponse<TItem> {
|
|
2
|
+
results?: TItem[];
|
|
3
|
+
nextToken?: string | null;
|
|
4
|
+
}
|
|
5
|
+
export interface CursorPaginationOptions {
|
|
6
|
+
cursor?: string;
|
|
7
|
+
pageSize?: number;
|
|
8
|
+
}
|
|
9
|
+
export declare const getAllPages: <TItem, TOptions extends CursorPaginationOptions = CursorPaginationOptions>(listPage: (options: TOptions) => Promise<CursorPaginatedResponse<TItem>>, options?: Omit<TOptions, "cursor">) => Promise<TItem[]>;
|
|
10
|
+
//# sourceMappingURL=pagination.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../src/utils/pagination.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB,CAAC,KAAK;IAC5C,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAID,eAAO,MAAM,WAAW,GACtB,KAAK,EACL,QAAQ,SAAS,uBAAuB,GAAG,uBAAuB,EAElE,UAAU,CAAC,OAAO,EAAE,QAAQ,KAAK,OAAO,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,EACxE,UAAS,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAkC,KACjE,OAAO,CAAC,KAAK,EAAE,CAiBjB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { WaitOptions } from '../types/config';
|
|
2
|
+
interface PollRunOptions<T> extends WaitOptions<T> {
|
|
3
|
+
/** Default timeout in ms when the caller does not provide one. */
|
|
4
|
+
defaultTimeout: number;
|
|
5
|
+
/** Builds the TimeoutError message for the resource being polled. */
|
|
6
|
+
timeoutMessage: (timeout: number) => string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Poll a run until it reaches a completed state, tolerating transient network
|
|
10
|
+
* errors between polls. Shared by `tests` and `suites` wait helpers.
|
|
11
|
+
*
|
|
12
|
+
* @param getRun - Fetches the current run snapshot.
|
|
13
|
+
* @param isComplete - Returns true once the run has reached a terminal state.
|
|
14
|
+
* @param options - Poll interval, timeout, progress callback, and per-resource
|
|
15
|
+
* timeout defaults/message.
|
|
16
|
+
* @throws {TimeoutError} When the run does not complete within the timeout.
|
|
17
|
+
*/
|
|
18
|
+
export declare const pollRunUntilComplete: <T>(getRun: () => Promise<T>, isComplete: (run: T) => boolean, options: PollRunOptions<T>) => Promise<T>;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=polling.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polling.d.ts","sourceRoot":"","sources":["../../src/utils/polling.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAInD,UAAU,cAAc,CAAC,CAAC,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;IAChD,kEAAkE;IAClE,cAAc,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;CAC7C;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAAU,CAAC,EAC1C,QAAQ,MAAM,OAAO,CAAC,CAAC,CAAC,EACxB,YAAY,CAAC,GAAG,EAAE,CAAC,KAAK,OAAO,EAC/B,SAAS,cAAc,CAAC,CAAC,CAAC,KACzB,OAAO,CAAC,CAAC,CA+BX,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@bugbug-io/sdk",
|
|
3
|
+
"version": "13.39.1",
|
|
4
|
+
"description": "A comprehensive TypeScript SDK for BugBug API with modular architecture, rate limiting, and built-in utilities",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"development": "./src/index.ts",
|
|
11
|
+
"import": "./dist/index.js",
|
|
12
|
+
"types": "./dist/index.d.ts"
|
|
13
|
+
},
|
|
14
|
+
"./package.json": "./package.json"
|
|
15
|
+
},
|
|
16
|
+
"publishConfig": {
|
|
17
|
+
"access": "public"
|
|
18
|
+
},
|
|
19
|
+
"scripts": {
|
|
20
|
+
"build": "tsup && tsc -b tsconfig.build.json --force --emitDeclarationOnly && tsc-alias -p tsconfig.build.json",
|
|
21
|
+
"dev": "tsc -b tsconfig.build.json --watch",
|
|
22
|
+
"start": "NODE_ENV=development node dist/index.js",
|
|
23
|
+
"start:prod": "NODE_ENV=production node dist/index.js",
|
|
24
|
+
"test": "vitest run",
|
|
25
|
+
"test:watch": "vitest --watch",
|
|
26
|
+
"test:ci": "cross-env CI=true vitest run",
|
|
27
|
+
"coverage": "vitest run --coverage",
|
|
28
|
+
"format:check": "oxfmt --check",
|
|
29
|
+
"oxlint:check": "oxlint .",
|
|
30
|
+
"oxlint:ci": "oxlint . --max-warnings=0",
|
|
31
|
+
"lint": "npm run format:check && npm run oxlint:check",
|
|
32
|
+
"lint:fix": "oxfmt && oxlint . --fix",
|
|
33
|
+
"lint:ci": "npm run format:check && npm run oxlint:ci",
|
|
34
|
+
"typecheck": "tsc --noEmit -p tsconfig.build.json",
|
|
35
|
+
"clean": "rm -rf dist docsDist node_modules/.tmp/tsconfig.tsbuildinfo node_modules/.tmp/tsconfig.build.tsbuildinfo",
|
|
36
|
+
"prepublishOnly": "npm run build",
|
|
37
|
+
"build:docs": "typedoc",
|
|
38
|
+
"serve:docs": "node scripts/serve-docs.mjs",
|
|
39
|
+
"start:docs": "npm run build:docs && npm run serve:docs"
|
|
40
|
+
},
|
|
41
|
+
"keywords": [
|
|
42
|
+
"bugbug",
|
|
43
|
+
"testing",
|
|
44
|
+
"automation",
|
|
45
|
+
"typescript",
|
|
46
|
+
"api",
|
|
47
|
+
"sdk",
|
|
48
|
+
"modular",
|
|
49
|
+
"rate-limiting",
|
|
50
|
+
"utilities",
|
|
51
|
+
"type-safe"
|
|
52
|
+
],
|
|
53
|
+
"author": "BugBug.io",
|
|
54
|
+
"license": "MIT",
|
|
55
|
+
"repository": {
|
|
56
|
+
"type": "git",
|
|
57
|
+
"url": "git+https://github.com/bugbug-io/bugbug.git",
|
|
58
|
+
"directory": "public-tools/packages/sdk"
|
|
59
|
+
},
|
|
60
|
+
"bugs": {
|
|
61
|
+
"url": "https://github.com/bugbug-io/bugbug/issues"
|
|
62
|
+
},
|
|
63
|
+
"files": [
|
|
64
|
+
"dist/**/*",
|
|
65
|
+
"README.md",
|
|
66
|
+
"LICENSE"
|
|
67
|
+
],
|
|
68
|
+
"dependencies": {
|
|
69
|
+
"openapi-fetch": "^0.14.0"
|
|
70
|
+
},
|
|
71
|
+
"devDependencies": {
|
|
72
|
+
"@bugbug-io/api-schema": "*",
|
|
73
|
+
"@bugbug-io/config": "*",
|
|
74
|
+
"@bugbug-io/core": "*",
|
|
75
|
+
"tsc-alias": "^1.8.17",
|
|
76
|
+
"tsup": "^8.1.0",
|
|
77
|
+
"typedoc": "^0.28.0",
|
|
78
|
+
"typedoc-material-theme": "^1.4.0"
|
|
79
|
+
},
|
|
80
|
+
"engines": {
|
|
81
|
+
"node": ">=24"
|
|
82
|
+
}
|
|
83
|
+
}
|