@bugbug-io/sdk 14.15.1 → 14.16.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/index.js +18 -7
- package/dist/index.js.map +1 -1
- package/dist/services/apiClient/apiClient.d.ts.map +1 -1
- package/dist/services/apiClient/apiClient.utils.d.ts +5 -0
- package/dist/services/apiClient/apiClient.utils.d.ts.map +1 -1
- package/dist/testUtils/fakeFactory.d.ts +6 -1
- package/dist/testUtils/fakeFactory.d.ts.map +1 -1
- package/dist/types/errors.d.ts +7 -3
- package/dist/types/errors.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -8351,7 +8351,8 @@ var InternalServerError = class extends BugBugError {
|
|
|
8351
8351
|
}
|
|
8352
8352
|
};
|
|
8353
8353
|
var ServiceUnavailableError = class extends BugBugError {
|
|
8354
|
-
|
|
8354
|
+
retryAfter;
|
|
8355
|
+
constructor(message = "Service temporarily unavailable", response, request, retryAfter) {
|
|
8355
8356
|
super(
|
|
8356
8357
|
SDK_ERROR_CODES.SERVICE_UNAVAILABLE,
|
|
8357
8358
|
message,
|
|
@@ -8361,6 +8362,7 @@ var ServiceUnavailableError = class extends BugBugError {
|
|
|
8361
8362
|
request
|
|
8362
8363
|
);
|
|
8363
8364
|
this.name = "ServiceUnavailableError";
|
|
8365
|
+
this.retryAfter = retryAfter;
|
|
8364
8366
|
}
|
|
8365
8367
|
};
|
|
8366
8368
|
var UnexpectedResponseError = class extends BugBugError {
|
|
@@ -9855,7 +9857,7 @@ var buildUserAgent = (clientType, version) => `BugBug ${clientType.toUpperCase()
|
|
|
9855
9857
|
// ../core/package.json
|
|
9856
9858
|
var package_default = {
|
|
9857
9859
|
name: "@bugbug-io/core",
|
|
9858
|
-
version: "14.
|
|
9860
|
+
version: "14.16.0",
|
|
9859
9861
|
private: true,
|
|
9860
9862
|
type: "module",
|
|
9861
9863
|
main: "dist/index.js",
|
|
@@ -10395,6 +10397,14 @@ function parseJsonOrText(text) {
|
|
|
10395
10397
|
return text;
|
|
10396
10398
|
}
|
|
10397
10399
|
}
|
|
10400
|
+
function parseRetryAfterMs(header, now2 = Date.now()) {
|
|
10401
|
+
const value = header?.trim();
|
|
10402
|
+
if (!value) return void 0;
|
|
10403
|
+
if (/^\d+$/.test(value)) return parseInt(value, 10) * 1e3;
|
|
10404
|
+
const date = Date.parse(value);
|
|
10405
|
+
if (Number.isNaN(date)) return void 0;
|
|
10406
|
+
return Math.max(0, date - now2);
|
|
10407
|
+
}
|
|
10398
10408
|
|
|
10399
10409
|
// src/services/apiClient/apiClient.ts
|
|
10400
10410
|
var BugBugApiClient = class {
|
|
@@ -10638,10 +10648,8 @@ var BugBugApiClient = class {
|
|
|
10638
10648
|
requestWithResponseContext
|
|
10639
10649
|
);
|
|
10640
10650
|
case 429: {
|
|
10641
|
-
const retryAfter = response?.headers.get("Retry-After");
|
|
10642
|
-
const retryAfterMs = retryAfter ? parseInt(retryAfter) * 1e3 : void 0;
|
|
10643
10651
|
throw new RateLimitError(
|
|
10644
|
-
|
|
10652
|
+
parseRetryAfterMs(response?.headers.get("Retry-After")),
|
|
10645
10653
|
errorMessage || "Rate limit exceeded",
|
|
10646
10654
|
response,
|
|
10647
10655
|
requestWithResponseContext
|
|
@@ -10659,7 +10667,8 @@ var BugBugApiClient = class {
|
|
|
10659
10667
|
throw new ServiceUnavailableError(
|
|
10660
10668
|
errorMessage || "Service temporarily unavailable. Please try again later.",
|
|
10661
10669
|
response,
|
|
10662
|
-
requestWithResponseContext
|
|
10670
|
+
requestWithResponseContext,
|
|
10671
|
+
parseRetryAfterMs(response?.headers.get("Retry-After"))
|
|
10663
10672
|
);
|
|
10664
10673
|
default:
|
|
10665
10674
|
if (status === void 0) {
|
|
@@ -15260,7 +15269,7 @@ var NEVER = INVALID;
|
|
|
15260
15269
|
// ../api-schema/dist/schemas/common.js
|
|
15261
15270
|
var UuidSchema = external_exports.string().min(1).describe("UUID");
|
|
15262
15271
|
var DateTimeSchema = external_exports.string().describe("ISO 8601 date-time string");
|
|
15263
|
-
var CursorSchema = external_exports.string().describe("Opaque cursor
|
|
15272
|
+
var CursorSchema = external_exports.string().describe("Opaque cursor for the next page: pass the `next_token` value from the previous response. There is no page number parameter.");
|
|
15264
15273
|
var PageSizeSchema = external_exports.number().int().min(1).max(100).describe("Number of results per page.");
|
|
15265
15274
|
var StepTimingSecondsSchema = external_exports.number().min(0).max(300).nullable().optional();
|
|
15266
15275
|
|
|
@@ -15541,6 +15550,7 @@ var AssertStepSchema = StepBaseSchema.extend({
|
|
|
15541
15550
|
selectorsPresets: external_exports.array(SelectorsPresetSchema).describe("Target selectors used by the element-related assertion."),
|
|
15542
15551
|
assertionProperty: AssertionPropertySchema.describe("Assertion property to inspect, for example text or value."),
|
|
15543
15552
|
assertionType: AssertionTypeSchema.describe("Assertion operator used by BugBug."),
|
|
15553
|
+
assertionCaseInsensitive: external_exports.boolean().nullable().optional().describe("Ignore letter case in text comparisons. Null uses legacy behavior; omitted updates keep the current setting."),
|
|
15544
15554
|
assertionExpectedValue: external_exports.string().nullable().describe("Expected assertion value when applicable."),
|
|
15545
15555
|
assertionJavaScript: external_exports.string().nullable().describe("Custom JavaScript used by script-based assertions."),
|
|
15546
15556
|
assertionVariableName: external_exports.string().nullable().describe("Variable name used by variable-based assertions.")
|
|
@@ -15678,6 +15688,7 @@ var IfConditionStepSchema = StepBaseSchema.extend({
|
|
|
15678
15688
|
selectorsPresets: external_exports.array(SelectorsPresetSchema).optional().describe("Target selectors used to locate the element for the condition."),
|
|
15679
15689
|
assertionProperty: AssertionPropertySchema.describe("Assertion property to inspect for the branch condition."),
|
|
15680
15690
|
assertionType: AssertionTypeSchema.describe("Assertion operator used to evaluate the branch condition."),
|
|
15691
|
+
assertionCaseInsensitive: external_exports.boolean().nullable().optional().describe("Ignore letter case in text comparisons. Null uses legacy behavior; omitted updates keep the current setting."),
|
|
15681
15692
|
assertionExpectedValue: external_exports.string().nullable().describe("Expected assertion value when applicable."),
|
|
15682
15693
|
assertionJavaScript: external_exports.string().nullable().describe("Custom JavaScript used by script-based conditions."),
|
|
15683
15694
|
assertionVariableName: external_exports.string().nullable().describe("Variable name used by variable-based conditions.")
|