@fern-api/fern-api-dev 5.75.8 → 5.76.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/cli.cjs +228 -13
- package/package.json +1 -1
package/cli.cjs
CHANGED
|
@@ -55736,6 +55736,13 @@ var init_WebhookTimestampSchema = __esm({
|
|
|
55736
55736
|
}
|
|
55737
55737
|
});
|
|
55738
55738
|
|
|
55739
|
+
// ../fern-definition/schema/lib/schemas/api/resources/webhooks/types/WebhookUrlNormalizationSchema.js
|
|
55740
|
+
var init_WebhookUrlNormalizationSchema = __esm({
|
|
55741
|
+
"../fern-definition/schema/lib/schemas/api/resources/webhooks/types/WebhookUrlNormalizationSchema.js"() {
|
|
55742
|
+
"use strict";
|
|
55743
|
+
}
|
|
55744
|
+
});
|
|
55745
|
+
|
|
55739
55746
|
// ../fern-definition/schema/lib/schemas/api/resources/webhooks/types/index.js
|
|
55740
55747
|
var init_types20 = __esm({
|
|
55741
55748
|
"../fern-definition/schema/lib/schemas/api/resources/webhooks/types/index.js"() {
|
|
@@ -55760,6 +55767,7 @@ var init_types20 = __esm({
|
|
|
55760
55767
|
init_WebhookSignatureSchema();
|
|
55761
55768
|
init_WebhookTimestampFormatSchema();
|
|
55762
55769
|
init_WebhookTimestampSchema();
|
|
55770
|
+
init_WebhookUrlNormalizationSchema();
|
|
55763
55771
|
}
|
|
55764
55772
|
});
|
|
55765
55773
|
|
|
@@ -60428,6 +60436,19 @@ var init_WebhookSignatureAlgorithmSchema2 = __esm({
|
|
|
60428
60436
|
}
|
|
60429
60437
|
});
|
|
60430
60438
|
|
|
60439
|
+
// ../fern-definition/schema/lib/schemas/serialization/resources/webhooks/types/WebhookUrlNormalizationSchema.js
|
|
60440
|
+
var WebhookUrlNormalizationSchema;
|
|
60441
|
+
var init_WebhookUrlNormalizationSchema2 = __esm({
|
|
60442
|
+
"../fern-definition/schema/lib/schemas/serialization/resources/webhooks/types/WebhookUrlNormalizationSchema.js"() {
|
|
60443
|
+
"use strict";
|
|
60444
|
+
init_core();
|
|
60445
|
+
WebhookUrlNormalizationSchema = schemas_exports.object({
|
|
60446
|
+
"port-variants": schemas_exports.boolean().optional(),
|
|
60447
|
+
"legacy-query-encoding": schemas_exports.boolean().optional()
|
|
60448
|
+
});
|
|
60449
|
+
}
|
|
60450
|
+
});
|
|
60451
|
+
|
|
60431
60452
|
// ../fern-definition/schema/lib/schemas/serialization/resources/webhooks/types/HmacSignatureSchema.js
|
|
60432
60453
|
var HmacSignatureSchema;
|
|
60433
60454
|
var init_HmacSignatureSchema2 = __esm({
|
|
@@ -60439,6 +60460,7 @@ var init_HmacSignatureSchema2 = __esm({
|
|
|
60439
60460
|
init_WebhookSignatureAlgorithmSchema2();
|
|
60440
60461
|
init_WebhookSignatureEncodingSchema2();
|
|
60441
60462
|
init_WebhookTimestampSchema2();
|
|
60463
|
+
init_WebhookUrlNormalizationSchema2();
|
|
60442
60464
|
HmacSignatureSchema = schemas_exports.object({
|
|
60443
60465
|
header: schemas_exports.string(),
|
|
60444
60466
|
algorithm: WebhookSignatureAlgorithmSchema2.optional(),
|
|
@@ -60446,7 +60468,8 @@ var init_HmacSignatureSchema2 = __esm({
|
|
|
60446
60468
|
"signature-prefix": schemas_exports.string().optional(),
|
|
60447
60469
|
"payload-format": WebhookPayloadFormatSchema.optional(),
|
|
60448
60470
|
timestamp: WebhookTimestampSchema.optional(),
|
|
60449
|
-
"body-hash-binding": WebhookBodyHashBindingSchema.optional()
|
|
60471
|
+
"body-hash-binding": WebhookBodyHashBindingSchema.optional(),
|
|
60472
|
+
"url-normalization": WebhookUrlNormalizationSchema.optional()
|
|
60450
60473
|
});
|
|
60451
60474
|
}
|
|
60452
60475
|
});
|
|
@@ -61354,6 +61377,7 @@ var init_types40 = __esm({
|
|
|
61354
61377
|
init_WebhookSignatureSchema2();
|
|
61355
61378
|
init_WebhookTimestampFormatSchema2();
|
|
61356
61379
|
init_WebhookTimestampSchema2();
|
|
61380
|
+
init_WebhookUrlNormalizationSchema2();
|
|
61357
61381
|
}
|
|
61358
61382
|
});
|
|
61359
61383
|
|
|
@@ -61379,7 +61403,8 @@ __export(webhooks_exports2, {
|
|
|
61379
61403
|
WebhookSignatureEncodingSchema: () => WebhookSignatureEncodingSchema2,
|
|
61380
61404
|
WebhookSignatureSchema: () => WebhookSignatureSchema,
|
|
61381
61405
|
WebhookTimestampFormatSchema: () => WebhookTimestampFormatSchema2,
|
|
61382
|
-
WebhookTimestampSchema: () => WebhookTimestampSchema
|
|
61406
|
+
WebhookTimestampSchema: () => WebhookTimestampSchema,
|
|
61407
|
+
WebhookUrlNormalizationSchema: () => WebhookUrlNormalizationSchema
|
|
61383
61408
|
});
|
|
61384
61409
|
var init_webhooks2 = __esm({
|
|
61385
61410
|
"../fern-definition/schema/lib/schemas/serialization/resources/webhooks/index.js"() {
|
|
@@ -61645,6 +61670,7 @@ __export(serialization_exports, {
|
|
|
61645
61670
|
WebhookSignatureSchema: () => WebhookSignatureSchema,
|
|
61646
61671
|
WebhookTimestampFormatSchema: () => WebhookTimestampFormatSchema2,
|
|
61647
61672
|
WebhookTimestampSchema: () => WebhookTimestampSchema,
|
|
61673
|
+
WebhookUrlNormalizationSchema: () => WebhookUrlNormalizationSchema,
|
|
61648
61674
|
WithAudiences: () => WithAudiences,
|
|
61649
61675
|
WithAuthSchema: () => WithAuthSchema,
|
|
61650
61676
|
WithAvailability: () => WithAvailability,
|
|
@@ -70270,6 +70296,13 @@ var init_WebhookName = __esm({
|
|
|
70270
70296
|
}
|
|
70271
70297
|
});
|
|
70272
70298
|
|
|
70299
|
+
// ../../ir-sdk/lib/sdk/api/resources/webhooks/types/WebhookNotificationUrlNormalization.js
|
|
70300
|
+
var init_WebhookNotificationUrlNormalization = __esm({
|
|
70301
|
+
"../../ir-sdk/lib/sdk/api/resources/webhooks/types/WebhookNotificationUrlNormalization.js"() {
|
|
70302
|
+
"use strict";
|
|
70303
|
+
}
|
|
70304
|
+
});
|
|
70305
|
+
|
|
70273
70306
|
// ../../ir-sdk/lib/sdk/api/resources/webhooks/types/WebhookPayload.js
|
|
70274
70307
|
var WebhookPayload;
|
|
70275
70308
|
var init_WebhookPayload = __esm({
|
|
@@ -70505,6 +70538,7 @@ var init_types69 = __esm({
|
|
|
70505
70538
|
init_WebhookGroup();
|
|
70506
70539
|
init_WebhookHttpMethod();
|
|
70507
70540
|
init_WebhookName();
|
|
70541
|
+
init_WebhookNotificationUrlNormalization();
|
|
70508
70542
|
init_WebhookPayload();
|
|
70509
70543
|
init_WebhookPayloadBodySort();
|
|
70510
70544
|
init_WebhookPayloadComponent();
|
|
@@ -81223,6 +81257,19 @@ var init_WebhookBodyHashBinding2 = __esm({
|
|
|
81223
81257
|
}
|
|
81224
81258
|
});
|
|
81225
81259
|
|
|
81260
|
+
// ../../ir-sdk/lib/sdk/serialization/resources/webhooks/types/WebhookNotificationUrlNormalization.js
|
|
81261
|
+
var WebhookNotificationUrlNormalization;
|
|
81262
|
+
var init_WebhookNotificationUrlNormalization2 = __esm({
|
|
81263
|
+
"../../ir-sdk/lib/sdk/serialization/resources/webhooks/types/WebhookNotificationUrlNormalization.js"() {
|
|
81264
|
+
"use strict";
|
|
81265
|
+
init_core2();
|
|
81266
|
+
WebhookNotificationUrlNormalization = schemas_exports3.objectWithoutOptionalProperties({
|
|
81267
|
+
portVariants: schemas_exports3.boolean(),
|
|
81268
|
+
legacyQueryEncoding: schemas_exports3.boolean()
|
|
81269
|
+
});
|
|
81270
|
+
}
|
|
81271
|
+
});
|
|
81272
|
+
|
|
81226
81273
|
// ../../ir-sdk/lib/sdk/serialization/resources/webhooks/types/HmacSignatureVerification.js
|
|
81227
81274
|
var HmacSignatureVerification;
|
|
81228
81275
|
var init_HmacSignatureVerification2 = __esm({
|
|
@@ -81232,6 +81279,7 @@ var init_HmacSignatureVerification2 = __esm({
|
|
|
81232
81279
|
init_NameAndWireValueOrString3();
|
|
81233
81280
|
init_HmacAlgorithm2();
|
|
81234
81281
|
init_WebhookBodyHashBinding2();
|
|
81282
|
+
init_WebhookNotificationUrlNormalization2();
|
|
81235
81283
|
init_WebhookPayloadFormat2();
|
|
81236
81284
|
init_WebhookSignatureEncoding2();
|
|
81237
81285
|
init_WebhookTimestampConfig2();
|
|
@@ -81242,7 +81290,8 @@ var init_HmacSignatureVerification2 = __esm({
|
|
|
81242
81290
|
signaturePrefix: schemas_exports3.string().optional(),
|
|
81243
81291
|
payloadFormat: WebhookPayloadFormat,
|
|
81244
81292
|
timestamp: WebhookTimestampConfig.optional(),
|
|
81245
|
-
bodyHashBinding: WebhookBodyHashBinding.optional()
|
|
81293
|
+
bodyHashBinding: WebhookBodyHashBinding.optional(),
|
|
81294
|
+
notificationUrlNormalization: WebhookNotificationUrlNormalization.optional()
|
|
81246
81295
|
});
|
|
81247
81296
|
}
|
|
81248
81297
|
});
|
|
@@ -82861,6 +82910,7 @@ var init_types98 = __esm({
|
|
|
82861
82910
|
init_WebhookGroup2();
|
|
82862
82911
|
init_WebhookHttpMethod2();
|
|
82863
82912
|
init_WebhookName2();
|
|
82913
|
+
init_WebhookNotificationUrlNormalization2();
|
|
82864
82914
|
init_WebhookPayload2();
|
|
82865
82915
|
init_WebhookPayloadBodySort2();
|
|
82866
82916
|
init_WebhookPayloadComponent2();
|
|
@@ -82894,6 +82944,7 @@ __export(webhooks_exports4, {
|
|
|
82894
82944
|
WebhookGroup: () => WebhookGroup,
|
|
82895
82945
|
WebhookHttpMethod: () => WebhookHttpMethod2,
|
|
82896
82946
|
WebhookName: () => WebhookName,
|
|
82947
|
+
WebhookNotificationUrlNormalization: () => WebhookNotificationUrlNormalization,
|
|
82897
82948
|
WebhookPayload: () => WebhookPayload2,
|
|
82898
82949
|
WebhookPayloadBodySort: () => WebhookPayloadBodySort2,
|
|
82899
82950
|
WebhookPayloadComponent: () => WebhookPayloadComponent2,
|
|
@@ -83320,6 +83371,7 @@ __export(serialization_exports2, {
|
|
|
83320
83371
|
WebhookHttpMethod: () => WebhookHttpMethod2,
|
|
83321
83372
|
WebhookId: () => WebhookId,
|
|
83322
83373
|
WebhookName: () => WebhookName,
|
|
83374
|
+
WebhookNotificationUrlNormalization: () => WebhookNotificationUrlNormalization,
|
|
83323
83375
|
WebhookPayload: () => WebhookPayload2,
|
|
83324
83376
|
WebhookPayloadBodySort: () => WebhookPayloadBodySort2,
|
|
83325
83377
|
WebhookPayloadComponent: () => WebhookPayloadComponent2,
|
|
@@ -133936,6 +133988,13 @@ var init_WebhookHttpMethod3 = __esm({
|
|
|
133936
133988
|
}
|
|
133937
133989
|
});
|
|
133938
133990
|
|
|
133991
|
+
// ../api-importers/openapi/openapi-ir/lib/sdk/api/resources/finalIr/types/WebhookNotificationUrlNormalization.js
|
|
133992
|
+
var init_WebhookNotificationUrlNormalization3 = __esm({
|
|
133993
|
+
"../api-importers/openapi/openapi-ir/lib/sdk/api/resources/finalIr/types/WebhookNotificationUrlNormalization.js"() {
|
|
133994
|
+
"use strict";
|
|
133995
|
+
}
|
|
133996
|
+
});
|
|
133997
|
+
|
|
133939
133998
|
// ../api-importers/openapi/openapi-ir/lib/sdk/api/resources/finalIr/types/WebhookPayloadBodySort.js
|
|
133940
133999
|
var WebhookPayloadBodySortValues2, WebhookPayloadBodySort3;
|
|
133941
134000
|
var init_WebhookPayloadBodySort3 = __esm({
|
|
@@ -134288,6 +134347,7 @@ var init_types138 = __esm({
|
|
|
134288
134347
|
init_WebhookBodyHashQueryParameterLocation3();
|
|
134289
134348
|
init_WebhookExampleCall();
|
|
134290
134349
|
init_WebhookHttpMethod3();
|
|
134350
|
+
init_WebhookNotificationUrlNormalization3();
|
|
134291
134351
|
init_WebhookPayloadBodySort3();
|
|
134292
134352
|
init_WebhookPayloadComponent3();
|
|
134293
134353
|
init_WebhookPayloadFormat3();
|
|
@@ -139303,6 +139363,19 @@ var init_WebhookBodyHashBinding4 = __esm({
|
|
|
139303
139363
|
}
|
|
139304
139364
|
});
|
|
139305
139365
|
|
|
139366
|
+
// ../api-importers/openapi/openapi-ir/lib/sdk/serialization/resources/finalIr/types/WebhookNotificationUrlNormalization.js
|
|
139367
|
+
var WebhookNotificationUrlNormalization2;
|
|
139368
|
+
var init_WebhookNotificationUrlNormalization4 = __esm({
|
|
139369
|
+
"../api-importers/openapi/openapi-ir/lib/sdk/serialization/resources/finalIr/types/WebhookNotificationUrlNormalization.js"() {
|
|
139370
|
+
"use strict";
|
|
139371
|
+
init_core7();
|
|
139372
|
+
WebhookNotificationUrlNormalization2 = schemas_exports9.objectWithoutOptionalProperties({
|
|
139373
|
+
portVariants: schemas_exports9.boolean(),
|
|
139374
|
+
legacyQueryEncoding: schemas_exports9.boolean()
|
|
139375
|
+
});
|
|
139376
|
+
}
|
|
139377
|
+
});
|
|
139378
|
+
|
|
139306
139379
|
// ../api-importers/openapi/openapi-ir/lib/sdk/serialization/resources/finalIr/types/WebhookSignatureAlgorithm.js
|
|
139307
139380
|
var WebhookSignatureAlgorithm2;
|
|
139308
139381
|
var init_WebhookSignatureAlgorithm2 = __esm({
|
|
@@ -139320,6 +139393,7 @@ var init_HmacWebhookSignatureVerification2 = __esm({
|
|
|
139320
139393
|
"use strict";
|
|
139321
139394
|
init_core7();
|
|
139322
139395
|
init_WebhookBodyHashBinding4();
|
|
139396
|
+
init_WebhookNotificationUrlNormalization4();
|
|
139323
139397
|
init_WebhookPayloadFormat4();
|
|
139324
139398
|
init_WebhookSignatureAlgorithm2();
|
|
139325
139399
|
init_WebhookSignatureEncoding4();
|
|
@@ -139331,7 +139405,8 @@ var init_HmacWebhookSignatureVerification2 = __esm({
|
|
|
139331
139405
|
signaturePrefix: schemas_exports9.string().optional(),
|
|
139332
139406
|
payloadFormat: WebhookPayloadFormat2.optional(),
|
|
139333
139407
|
timestamp: WebhookTimestamp.optional(),
|
|
139334
|
-
bodyHashBinding: WebhookBodyHashBinding2.optional()
|
|
139408
|
+
bodyHashBinding: WebhookBodyHashBinding2.optional(),
|
|
139409
|
+
notificationUrlNormalization: WebhookNotificationUrlNormalization2.optional()
|
|
139335
139410
|
});
|
|
139336
139411
|
}
|
|
139337
139412
|
});
|
|
@@ -140214,6 +140289,7 @@ var init_types142 = __esm({
|
|
|
140214
140289
|
init_WebhookBodyHashQueryParameterLocation4();
|
|
140215
140290
|
init_WebhookExampleCall2();
|
|
140216
140291
|
init_WebhookHttpMethod4();
|
|
140292
|
+
init_WebhookNotificationUrlNormalization4();
|
|
140217
140293
|
init_WebhookPayloadBodySort4();
|
|
140218
140294
|
init_WebhookPayloadComponent4();
|
|
140219
140295
|
init_WebhookPayloadFormat4();
|
|
@@ -140326,6 +140402,7 @@ __export(finalIr_exports2, {
|
|
|
140326
140402
|
WebhookBodyHashQueryParameterLocation: () => WebhookBodyHashQueryParameterLocation2,
|
|
140327
140403
|
WebhookExampleCall: () => WebhookExampleCall,
|
|
140328
140404
|
WebhookHttpMethod: () => WebhookHttpMethod4,
|
|
140405
|
+
WebhookNotificationUrlNormalization: () => WebhookNotificationUrlNormalization2,
|
|
140329
140406
|
WebhookPayloadBodySort: () => WebhookPayloadBodySort4,
|
|
140330
140407
|
WebhookPayloadComponent: () => WebhookPayloadComponent4,
|
|
140331
140408
|
WebhookPayloadFormat: () => WebhookPayloadFormat2,
|
|
@@ -141593,6 +141670,7 @@ __export(serialization_exports5, {
|
|
|
141593
141670
|
WebhookBodyHashQueryParameterLocation: () => WebhookBodyHashQueryParameterLocation2,
|
|
141594
141671
|
WebhookExampleCall: () => WebhookExampleCall,
|
|
141595
141672
|
WebhookHttpMethod: () => WebhookHttpMethod4,
|
|
141673
|
+
WebhookNotificationUrlNormalization: () => WebhookNotificationUrlNormalization2,
|
|
141596
141674
|
WebhookPayloadBodySort: () => WebhookPayloadBodySort4,
|
|
141597
141675
|
WebhookPayloadComponent: () => WebhookPayloadComponent4,
|
|
141598
141676
|
WebhookPayloadFormat: () => WebhookPayloadFormat2,
|
|
@@ -146936,7 +147014,8 @@ function convertSignatureVerification(signatureVerification) {
|
|
|
146936
147014
|
"signature-prefix": signatureVerification.signaturePrefix,
|
|
146937
147015
|
"payload-format": convertPayloadFormat(signatureVerification.payloadFormat),
|
|
146938
147016
|
timestamp: convertTimestamp(signatureVerification.timestamp),
|
|
146939
|
-
"body-hash-binding": convertBodyHashBinding(signatureVerification.bodyHashBinding)
|
|
147017
|
+
"body-hash-binding": convertBodyHashBinding(signatureVerification.bodyHashBinding),
|
|
147018
|
+
"url-normalization": convertUrlNormalization(signatureVerification.notificationUrlNormalization)
|
|
146940
147019
|
};
|
|
146941
147020
|
case "asymmetric":
|
|
146942
147021
|
return {
|
|
@@ -147024,6 +147103,15 @@ function convertBodyHashBinding(binding) {
|
|
|
147024
147103
|
location: convertBodyHashLocation(binding.location)
|
|
147025
147104
|
};
|
|
147026
147105
|
}
|
|
147106
|
+
function convertUrlNormalization(normalization) {
|
|
147107
|
+
if (normalization == null) {
|
|
147108
|
+
return void 0;
|
|
147109
|
+
}
|
|
147110
|
+
return {
|
|
147111
|
+
"port-variants": normalization.portVariants,
|
|
147112
|
+
"legacy-query-encoding": normalization.legacyQueryEncoding
|
|
147113
|
+
};
|
|
147114
|
+
}
|
|
147027
147115
|
function convertBodyHashAlgorithm(algorithm) {
|
|
147028
147116
|
switch (algorithm) {
|
|
147029
147117
|
case "sha256":
|
|
@@ -166382,6 +166470,29 @@ function convertBodyHashBinding2(binding, logger4) {
|
|
|
166382
166470
|
location: convertBodyHashLocation2(binding.location)
|
|
166383
166471
|
};
|
|
166384
166472
|
}
|
|
166473
|
+
function convertUrlNormalization2(normalization, logger4) {
|
|
166474
|
+
if (normalization == null) {
|
|
166475
|
+
return void 0;
|
|
166476
|
+
}
|
|
166477
|
+
const portVariants = normalization["port-variants"];
|
|
166478
|
+
const legacyQueryEncoding = normalization["legacy-query-encoding"];
|
|
166479
|
+
if (portVariants != null && typeof portVariants !== "boolean") {
|
|
166480
|
+
logger4.warn(`Ignoring webhook url-normalization: "port-variants" must be a boolean, got "${typeof portVariants}".`);
|
|
166481
|
+
return void 0;
|
|
166482
|
+
}
|
|
166483
|
+
if (legacyQueryEncoding != null && typeof legacyQueryEncoding !== "boolean") {
|
|
166484
|
+
logger4.warn(`Ignoring webhook url-normalization: "legacy-query-encoding" must be a boolean, got "${typeof legacyQueryEncoding}".`);
|
|
166485
|
+
return void 0;
|
|
166486
|
+
}
|
|
166487
|
+
if (!portVariants && !legacyQueryEncoding) {
|
|
166488
|
+
logger4.warn('Ignoring webhook url-normalization: enable at least one of "port-variants" or "legacy-query-encoding".');
|
|
166489
|
+
return void 0;
|
|
166490
|
+
}
|
|
166491
|
+
return {
|
|
166492
|
+
portVariants: portVariants ?? false,
|
|
166493
|
+
legacyQueryEncoding: legacyQueryEncoding ?? false
|
|
166494
|
+
};
|
|
166495
|
+
}
|
|
166385
166496
|
function convertBodyHashAlgorithm2(algorithm) {
|
|
166386
166497
|
switch (algorithm) {
|
|
166387
166498
|
case "sha256":
|
|
@@ -166460,7 +166571,8 @@ function convertSignatureSchema(extension4, logger4) {
|
|
|
166460
166571
|
signaturePrefix: extension4["signature-prefix"],
|
|
166461
166572
|
payloadFormat: convertPayloadFormat2(extension4["payload-format"]),
|
|
166462
166573
|
timestamp: convertTimestamp2(extension4.timestamp),
|
|
166463
|
-
bodyHashBinding: convertBodyHashBinding2(extension4["body-hash-binding"], logger4)
|
|
166574
|
+
bodyHashBinding: convertBodyHashBinding2(extension4["body-hash-binding"], logger4),
|
|
166575
|
+
notificationUrlNormalization: convertUrlNormalization2(extension4["url-normalization"], logger4)
|
|
166464
166576
|
});
|
|
166465
166577
|
}
|
|
166466
166578
|
if (extension4.type === "asymmetric") {
|
|
@@ -275409,7 +275521,17 @@ function convertHmacSignature({ hmac, file: file4 }) {
|
|
|
275409
275521
|
signaturePrefix: hmac["signature-prefix"],
|
|
275410
275522
|
payloadFormat: convertPayloadFormat3(hmac["payload-format"]),
|
|
275411
275523
|
timestamp: convertTimestampConfig({ timestamp: hmac.timestamp, file: file4 }),
|
|
275412
|
-
bodyHashBinding: convertBodyHashBinding3(hmac["body-hash-binding"])
|
|
275524
|
+
bodyHashBinding: convertBodyHashBinding3(hmac["body-hash-binding"]),
|
|
275525
|
+
notificationUrlNormalization: convertUrlNormalization3(hmac["url-normalization"])
|
|
275526
|
+
};
|
|
275527
|
+
}
|
|
275528
|
+
function convertUrlNormalization3(normalization) {
|
|
275529
|
+
if (normalization == null) {
|
|
275530
|
+
return void 0;
|
|
275531
|
+
}
|
|
275532
|
+
return {
|
|
275533
|
+
portVariants: normalization["port-variants"] ?? false,
|
|
275534
|
+
legacyQueryEncoding: normalization["legacy-query-encoding"] ?? false
|
|
275413
275535
|
};
|
|
275414
275536
|
}
|
|
275415
275537
|
function convertBodyHashBinding3(binding) {
|
|
@@ -326019,6 +326141,34 @@ var init_fern_schema = __esm({
|
|
|
326019
326141
|
],
|
|
326020
326142
|
additionalProperties: false
|
|
326021
326143
|
},
|
|
326144
|
+
"webhooks.WebhookUrlNormalizationSchema": {
|
|
326145
|
+
type: "object",
|
|
326146
|
+
properties: {
|
|
326147
|
+
"port-variants": {
|
|
326148
|
+
oneOf: [
|
|
326149
|
+
{
|
|
326150
|
+
type: "boolean"
|
|
326151
|
+
},
|
|
326152
|
+
{
|
|
326153
|
+
type: "null"
|
|
326154
|
+
}
|
|
326155
|
+
],
|
|
326156
|
+
description: "Try the URL both with the scheme's standard port added (:443 for https, :80 for\nhttp) if absent, and with the port removed. All Twilio libraries do this."
|
|
326157
|
+
},
|
|
326158
|
+
"legacy-query-encoding": {
|
|
326159
|
+
oneOf: [
|
|
326160
|
+
{
|
|
326161
|
+
type: "boolean"
|
|
326162
|
+
},
|
|
326163
|
+
{
|
|
326164
|
+
type: "null"
|
|
326165
|
+
}
|
|
326166
|
+
],
|
|
326167
|
+
description: "Additionally try each port variant with the query string re-encoded using legacy\nform-encoding, reversing percent-encoding differences introduced by WHATWG URL\nparsing. Twilio's Node library does this; the others do not."
|
|
326168
|
+
}
|
|
326169
|
+
},
|
|
326170
|
+
additionalProperties: false
|
|
326171
|
+
},
|
|
326022
326172
|
"webhooks.AsymmetricAlgorithmSchema": {
|
|
326023
326173
|
type: "string",
|
|
326024
326174
|
enum: [
|
|
@@ -326117,6 +326267,17 @@ var init_fern_schema = __esm({
|
|
|
326117
326267
|
description: `When set, the raw body is not signed directly; instead a hash of the body is
|
|
326118
326268
|
transmitted separately (e.g. Twilio's "bodySHA256" query parameter for JSON
|
|
326119
326269
|
bodies) and verification also recomputes and compares the body hash.`
|
|
326270
|
+
},
|
|
326271
|
+
"url-normalization": {
|
|
326272
|
+
oneOf: [
|
|
326273
|
+
{
|
|
326274
|
+
$ref: "#/definitions/webhooks.WebhookUrlNormalizationSchema"
|
|
326275
|
+
},
|
|
326276
|
+
{
|
|
326277
|
+
type: "null"
|
|
326278
|
+
}
|
|
326279
|
+
],
|
|
326280
|
+
description: "When set, the signature is verified against multiple normalized forms of the\nnotification URL (e.g. with/without port, legacy query encoding), succeeding if any\ncandidate matches. Required by providers like Twilio."
|
|
326120
326281
|
}
|
|
326121
326282
|
},
|
|
326122
326283
|
required: [
|
|
@@ -330426,6 +330587,34 @@ var init_package_yml_schema = __esm({
|
|
|
330426
330587
|
],
|
|
330427
330588
|
additionalProperties: false
|
|
330428
330589
|
},
|
|
330590
|
+
"webhooks.WebhookUrlNormalizationSchema": {
|
|
330591
|
+
type: "object",
|
|
330592
|
+
properties: {
|
|
330593
|
+
"port-variants": {
|
|
330594
|
+
oneOf: [
|
|
330595
|
+
{
|
|
330596
|
+
type: "boolean"
|
|
330597
|
+
},
|
|
330598
|
+
{
|
|
330599
|
+
type: "null"
|
|
330600
|
+
}
|
|
330601
|
+
],
|
|
330602
|
+
description: "Try the URL both with the scheme's standard port added (:443 for https, :80 for\nhttp) if absent, and with the port removed. All Twilio libraries do this."
|
|
330603
|
+
},
|
|
330604
|
+
"legacy-query-encoding": {
|
|
330605
|
+
oneOf: [
|
|
330606
|
+
{
|
|
330607
|
+
type: "boolean"
|
|
330608
|
+
},
|
|
330609
|
+
{
|
|
330610
|
+
type: "null"
|
|
330611
|
+
}
|
|
330612
|
+
],
|
|
330613
|
+
description: "Additionally try each port variant with the query string re-encoded using legacy\nform-encoding, reversing percent-encoding differences introduced by WHATWG URL\nparsing. Twilio's Node library does this; the others do not."
|
|
330614
|
+
}
|
|
330615
|
+
},
|
|
330616
|
+
additionalProperties: false
|
|
330617
|
+
},
|
|
330429
330618
|
"webhooks.AsymmetricAlgorithmSchema": {
|
|
330430
330619
|
type: "string",
|
|
330431
330620
|
enum: [
|
|
@@ -330524,6 +330713,17 @@ var init_package_yml_schema = __esm({
|
|
|
330524
330713
|
description: `When set, the raw body is not signed directly; instead a hash of the body is
|
|
330525
330714
|
transmitted separately (e.g. Twilio's "bodySHA256" query parameter for JSON
|
|
330526
330715
|
bodies) and verification also recomputes and compares the body hash.`
|
|
330716
|
+
},
|
|
330717
|
+
"url-normalization": {
|
|
330718
|
+
oneOf: [
|
|
330719
|
+
{
|
|
330720
|
+
$ref: "#/definitions/webhooks.WebhookUrlNormalizationSchema"
|
|
330721
|
+
},
|
|
330722
|
+
{
|
|
330723
|
+
type: "null"
|
|
330724
|
+
}
|
|
330725
|
+
],
|
|
330726
|
+
description: "When set, the signature is verified against multiple normalized forms of the\nnotification URL (e.g. with/without port, legacy query encoding), succeeding if any\ncandidate matches. Required by providers like Twilio."
|
|
330527
330727
|
}
|
|
330528
330728
|
},
|
|
330529
330729
|
required: [
|
|
@@ -681332,6 +681532,21 @@ function validateHmac(signature, violations) {
|
|
|
681332
681532
|
if (signature["body-hash-binding"] != null) {
|
|
681333
681533
|
validateBodyHashBinding(signature, violations);
|
|
681334
681534
|
}
|
|
681535
|
+
if (signature["url-normalization"] != null) {
|
|
681536
|
+
validateUrlNormalization(signature, violations);
|
|
681537
|
+
}
|
|
681538
|
+
}
|
|
681539
|
+
function validateUrlNormalization(signature, violations) {
|
|
681540
|
+
const normalization = signature["url-normalization"];
|
|
681541
|
+
if (normalization == null) {
|
|
681542
|
+
return;
|
|
681543
|
+
}
|
|
681544
|
+
if (!normalization["port-variants"] && !normalization["legacy-query-encoding"]) {
|
|
681545
|
+
violations.push({
|
|
681546
|
+
severity: "error",
|
|
681547
|
+
message: "url-normalization must enable at least one of port-variants or legacy-query-encoding"
|
|
681548
|
+
});
|
|
681549
|
+
}
|
|
681335
681550
|
}
|
|
681336
681551
|
function validateBodyHashBinding(signature, violations) {
|
|
681337
681552
|
const binding = signature["body-hash-binding"];
|
|
@@ -691168,7 +691383,7 @@ var AccessTokenPosthogManager = class {
|
|
|
691168
691383
|
properties: {
|
|
691169
691384
|
...event,
|
|
691170
691385
|
...event.properties,
|
|
691171
|
-
version: "5.
|
|
691386
|
+
version: "5.76.0",
|
|
691172
691387
|
usingAccessToken: true,
|
|
691173
691388
|
...getRunIdProperties()
|
|
691174
691389
|
}
|
|
@@ -691234,7 +691449,7 @@ var UserPosthogManager = class {
|
|
|
691234
691449
|
distinctId: this.userId ?? await this.getPersistedDistinctId(),
|
|
691235
691450
|
event: "CLI",
|
|
691236
691451
|
properties: {
|
|
691237
|
-
version: "5.
|
|
691452
|
+
version: "5.76.0",
|
|
691238
691453
|
...event,
|
|
691239
691454
|
...event.properties,
|
|
691240
691455
|
usingAccessToken: false,
|
|
@@ -872339,7 +872554,7 @@ var LOCAL_STORAGE_FOLDER4 = ".fern-dev";
|
|
|
872339
872554
|
var LOGS_FOLDER_NAME = "logs";
|
|
872340
872555
|
var MAX_LOGS_DIR_SIZE_BYTES = 100 * 1024 * 1024;
|
|
872341
872556
|
function getCliSource() {
|
|
872342
|
-
const version7 = "5.
|
|
872557
|
+
const version7 = "5.76.0";
|
|
872343
872558
|
return `cli@${version7}`;
|
|
872344
872559
|
}
|
|
872345
872560
|
var DebugLogger = class {
|
|
@@ -904992,7 +905207,7 @@ var LegacyDocsPublisher = class {
|
|
|
904992
905207
|
previewId,
|
|
904993
905208
|
disableTemplates: void 0,
|
|
904994
905209
|
skipUpload,
|
|
904995
|
-
cliVersion: "5.
|
|
905210
|
+
cliVersion: "5.76.0",
|
|
904996
905211
|
loginCommand: "fern auth login"
|
|
904997
905212
|
});
|
|
904998
905213
|
if (taskContext.getResult() === TaskResult.Failure) {
|
|
@@ -971905,7 +972120,7 @@ function getAutomationContextFromEnv() {
|
|
|
971905
972120
|
config_branch: process.env.FERN_CONFIG_BRANCH,
|
|
971906
972121
|
config_pr_number: process.env.FERN_CONFIG_PR_NUMBER,
|
|
971907
972122
|
trigger: process.env.GITHUB_EVENT_NAME,
|
|
971908
|
-
cli_version: "5.
|
|
972123
|
+
cli_version: "5.76.0"
|
|
971909
972124
|
};
|
|
971910
972125
|
}
|
|
971911
972126
|
function isAutomationMode() {
|
|
@@ -972737,7 +972952,7 @@ var CliContext = class _CliContext {
|
|
|
972737
972952
|
if (false) {
|
|
972738
972953
|
this.logger.error("CLI_VERSION is not defined");
|
|
972739
972954
|
}
|
|
972740
|
-
return "5.
|
|
972955
|
+
return "5.76.0";
|
|
972741
972956
|
}
|
|
972742
972957
|
getCliName() {
|
|
972743
972958
|
if (false) {
|
package/package.json
CHANGED