@fern-api/fern-api-dev 5.75.9 → 5.77.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 +249 -21
- 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,
|
|
@@ -130037,7 +130089,8 @@ var init_OpenApiSettingsSchema2 = __esm({
|
|
|
130037
130089
|
"group-multi-api-environments": schemas_exports8.boolean().optional(),
|
|
130038
130090
|
"default-integer-format": DefaultIntegerFormat2.optional(),
|
|
130039
130091
|
"infer-discriminated-union-base-properties": schemas_exports8.boolean().optional(),
|
|
130040
|
-
"disambiguate-request-names": schemas_exports8.boolean().optional()
|
|
130092
|
+
"disambiguate-request-names": schemas_exports8.boolean().optional(),
|
|
130093
|
+
"ignore-tags": schemas_exports8.boolean().optional()
|
|
130041
130094
|
}).extend(BaseApiSettingsSchema);
|
|
130042
130095
|
}
|
|
130043
130096
|
});
|
|
@@ -133936,6 +133989,13 @@ var init_WebhookHttpMethod3 = __esm({
|
|
|
133936
133989
|
}
|
|
133937
133990
|
});
|
|
133938
133991
|
|
|
133992
|
+
// ../api-importers/openapi/openapi-ir/lib/sdk/api/resources/finalIr/types/WebhookNotificationUrlNormalization.js
|
|
133993
|
+
var init_WebhookNotificationUrlNormalization3 = __esm({
|
|
133994
|
+
"../api-importers/openapi/openapi-ir/lib/sdk/api/resources/finalIr/types/WebhookNotificationUrlNormalization.js"() {
|
|
133995
|
+
"use strict";
|
|
133996
|
+
}
|
|
133997
|
+
});
|
|
133998
|
+
|
|
133939
133999
|
// ../api-importers/openapi/openapi-ir/lib/sdk/api/resources/finalIr/types/WebhookPayloadBodySort.js
|
|
133940
134000
|
var WebhookPayloadBodySortValues2, WebhookPayloadBodySort3;
|
|
133941
134001
|
var init_WebhookPayloadBodySort3 = __esm({
|
|
@@ -134288,6 +134348,7 @@ var init_types138 = __esm({
|
|
|
134288
134348
|
init_WebhookBodyHashQueryParameterLocation3();
|
|
134289
134349
|
init_WebhookExampleCall();
|
|
134290
134350
|
init_WebhookHttpMethod3();
|
|
134351
|
+
init_WebhookNotificationUrlNormalization3();
|
|
134291
134352
|
init_WebhookPayloadBodySort3();
|
|
134292
134353
|
init_WebhookPayloadComponent3();
|
|
134293
134354
|
init_WebhookPayloadFormat3();
|
|
@@ -139303,6 +139364,19 @@ var init_WebhookBodyHashBinding4 = __esm({
|
|
|
139303
139364
|
}
|
|
139304
139365
|
});
|
|
139305
139366
|
|
|
139367
|
+
// ../api-importers/openapi/openapi-ir/lib/sdk/serialization/resources/finalIr/types/WebhookNotificationUrlNormalization.js
|
|
139368
|
+
var WebhookNotificationUrlNormalization2;
|
|
139369
|
+
var init_WebhookNotificationUrlNormalization4 = __esm({
|
|
139370
|
+
"../api-importers/openapi/openapi-ir/lib/sdk/serialization/resources/finalIr/types/WebhookNotificationUrlNormalization.js"() {
|
|
139371
|
+
"use strict";
|
|
139372
|
+
init_core7();
|
|
139373
|
+
WebhookNotificationUrlNormalization2 = schemas_exports9.objectWithoutOptionalProperties({
|
|
139374
|
+
portVariants: schemas_exports9.boolean(),
|
|
139375
|
+
legacyQueryEncoding: schemas_exports9.boolean()
|
|
139376
|
+
});
|
|
139377
|
+
}
|
|
139378
|
+
});
|
|
139379
|
+
|
|
139306
139380
|
// ../api-importers/openapi/openapi-ir/lib/sdk/serialization/resources/finalIr/types/WebhookSignatureAlgorithm.js
|
|
139307
139381
|
var WebhookSignatureAlgorithm2;
|
|
139308
139382
|
var init_WebhookSignatureAlgorithm2 = __esm({
|
|
@@ -139320,6 +139394,7 @@ var init_HmacWebhookSignatureVerification2 = __esm({
|
|
|
139320
139394
|
"use strict";
|
|
139321
139395
|
init_core7();
|
|
139322
139396
|
init_WebhookBodyHashBinding4();
|
|
139397
|
+
init_WebhookNotificationUrlNormalization4();
|
|
139323
139398
|
init_WebhookPayloadFormat4();
|
|
139324
139399
|
init_WebhookSignatureAlgorithm2();
|
|
139325
139400
|
init_WebhookSignatureEncoding4();
|
|
@@ -139331,7 +139406,8 @@ var init_HmacWebhookSignatureVerification2 = __esm({
|
|
|
139331
139406
|
signaturePrefix: schemas_exports9.string().optional(),
|
|
139332
139407
|
payloadFormat: WebhookPayloadFormat2.optional(),
|
|
139333
139408
|
timestamp: WebhookTimestamp.optional(),
|
|
139334
|
-
bodyHashBinding: WebhookBodyHashBinding2.optional()
|
|
139409
|
+
bodyHashBinding: WebhookBodyHashBinding2.optional(),
|
|
139410
|
+
notificationUrlNormalization: WebhookNotificationUrlNormalization2.optional()
|
|
139335
139411
|
});
|
|
139336
139412
|
}
|
|
139337
139413
|
});
|
|
@@ -140214,6 +140290,7 @@ var init_types142 = __esm({
|
|
|
140214
140290
|
init_WebhookBodyHashQueryParameterLocation4();
|
|
140215
140291
|
init_WebhookExampleCall2();
|
|
140216
140292
|
init_WebhookHttpMethod4();
|
|
140293
|
+
init_WebhookNotificationUrlNormalization4();
|
|
140217
140294
|
init_WebhookPayloadBodySort4();
|
|
140218
140295
|
init_WebhookPayloadComponent4();
|
|
140219
140296
|
init_WebhookPayloadFormat4();
|
|
@@ -140326,6 +140403,7 @@ __export(finalIr_exports2, {
|
|
|
140326
140403
|
WebhookBodyHashQueryParameterLocation: () => WebhookBodyHashQueryParameterLocation2,
|
|
140327
140404
|
WebhookExampleCall: () => WebhookExampleCall,
|
|
140328
140405
|
WebhookHttpMethod: () => WebhookHttpMethod4,
|
|
140406
|
+
WebhookNotificationUrlNormalization: () => WebhookNotificationUrlNormalization2,
|
|
140329
140407
|
WebhookPayloadBodySort: () => WebhookPayloadBodySort4,
|
|
140330
140408
|
WebhookPayloadComponent: () => WebhookPayloadComponent4,
|
|
140331
140409
|
WebhookPayloadFormat: () => WebhookPayloadFormat2,
|
|
@@ -141593,6 +141671,7 @@ __export(serialization_exports5, {
|
|
|
141593
141671
|
WebhookBodyHashQueryParameterLocation: () => WebhookBodyHashQueryParameterLocation2,
|
|
141594
141672
|
WebhookExampleCall: () => WebhookExampleCall,
|
|
141595
141673
|
WebhookHttpMethod: () => WebhookHttpMethod4,
|
|
141674
|
+
WebhookNotificationUrlNormalization: () => WebhookNotificationUrlNormalization2,
|
|
141596
141675
|
WebhookPayloadBodySort: () => WebhookPayloadBodySort4,
|
|
141597
141676
|
WebhookPayloadComponent: () => WebhookPayloadComponent4,
|
|
141598
141677
|
WebhookPayloadFormat: () => WebhookPayloadFormat2,
|
|
@@ -146936,7 +147015,8 @@ function convertSignatureVerification(signatureVerification) {
|
|
|
146936
147015
|
"signature-prefix": signatureVerification.signaturePrefix,
|
|
146937
147016
|
"payload-format": convertPayloadFormat(signatureVerification.payloadFormat),
|
|
146938
147017
|
timestamp: convertTimestamp(signatureVerification.timestamp),
|
|
146939
|
-
"body-hash-binding": convertBodyHashBinding(signatureVerification.bodyHashBinding)
|
|
147018
|
+
"body-hash-binding": convertBodyHashBinding(signatureVerification.bodyHashBinding),
|
|
147019
|
+
"url-normalization": convertUrlNormalization(signatureVerification.notificationUrlNormalization)
|
|
146940
147020
|
};
|
|
146941
147021
|
case "asymmetric":
|
|
146942
147022
|
return {
|
|
@@ -147024,6 +147104,15 @@ function convertBodyHashBinding(binding) {
|
|
|
147024
147104
|
location: convertBodyHashLocation(binding.location)
|
|
147025
147105
|
};
|
|
147026
147106
|
}
|
|
147107
|
+
function convertUrlNormalization(normalization) {
|
|
147108
|
+
if (normalization == null) {
|
|
147109
|
+
return void 0;
|
|
147110
|
+
}
|
|
147111
|
+
return {
|
|
147112
|
+
"port-variants": normalization.portVariants,
|
|
147113
|
+
"legacy-query-encoding": normalization.legacyQueryEncoding
|
|
147114
|
+
};
|
|
147115
|
+
}
|
|
147027
147116
|
function convertBodyHashAlgorithm(algorithm) {
|
|
147028
147117
|
switch (algorithm) {
|
|
147029
147118
|
case "sha256":
|
|
@@ -151759,7 +151848,8 @@ var init_options2 = __esm({
|
|
|
151759
151848
|
coerceConstsTo: "enums-coerceable-to-literals",
|
|
151760
151849
|
respectByteFormat: false,
|
|
151761
151850
|
shouldInferDiscriminatedUnionBaseProperties: false,
|
|
151762
|
-
disambiguateRequestNames: true
|
|
151851
|
+
disambiguateRequestNames: true,
|
|
151852
|
+
ignoreTags: false
|
|
151763
151853
|
};
|
|
151764
151854
|
}
|
|
151765
151855
|
});
|
|
@@ -165923,7 +166013,7 @@ function convertHttpOperation({ operationContext, context: context3, responseSta
|
|
|
165923
166013
|
idempotent,
|
|
165924
166014
|
audiences: getExtension(operation, FernOpenAPIExtension.AUDIENCES) ?? [],
|
|
165925
166015
|
operationId: operation.operationId != null && suffix != null ? operation.operationId + "_" + suffix : operation.operationId,
|
|
165926
|
-
tags: context3.resolveTagsToTagIds(operation.tags),
|
|
166016
|
+
tags: context3.options.ignoreTags ? [] : context3.resolveTagsToTagIds(operation.tags),
|
|
165927
166017
|
namespace: context3.namespace,
|
|
165928
166018
|
sdkName: createOperationSdkMethodName({ operationContext, request: request7 }),
|
|
165929
166019
|
pathParameters: convertedParameters.pathParameters,
|
|
@@ -166382,6 +166472,29 @@ function convertBodyHashBinding2(binding, logger4) {
|
|
|
166382
166472
|
location: convertBodyHashLocation2(binding.location)
|
|
166383
166473
|
};
|
|
166384
166474
|
}
|
|
166475
|
+
function convertUrlNormalization2(normalization, logger4) {
|
|
166476
|
+
if (normalization == null) {
|
|
166477
|
+
return void 0;
|
|
166478
|
+
}
|
|
166479
|
+
const portVariants = normalization["port-variants"];
|
|
166480
|
+
const legacyQueryEncoding = normalization["legacy-query-encoding"];
|
|
166481
|
+
if (portVariants != null && typeof portVariants !== "boolean") {
|
|
166482
|
+
logger4.warn(`Ignoring webhook url-normalization: "port-variants" must be a boolean, got "${typeof portVariants}".`);
|
|
166483
|
+
return void 0;
|
|
166484
|
+
}
|
|
166485
|
+
if (legacyQueryEncoding != null && typeof legacyQueryEncoding !== "boolean") {
|
|
166486
|
+
logger4.warn(`Ignoring webhook url-normalization: "legacy-query-encoding" must be a boolean, got "${typeof legacyQueryEncoding}".`);
|
|
166487
|
+
return void 0;
|
|
166488
|
+
}
|
|
166489
|
+
if (!portVariants && !legacyQueryEncoding) {
|
|
166490
|
+
logger4.warn('Ignoring webhook url-normalization: enable at least one of "port-variants" or "legacy-query-encoding".');
|
|
166491
|
+
return void 0;
|
|
166492
|
+
}
|
|
166493
|
+
return {
|
|
166494
|
+
portVariants: portVariants ?? false,
|
|
166495
|
+
legacyQueryEncoding: legacyQueryEncoding ?? false
|
|
166496
|
+
};
|
|
166497
|
+
}
|
|
166385
166498
|
function convertBodyHashAlgorithm2(algorithm) {
|
|
166386
166499
|
switch (algorithm) {
|
|
166387
166500
|
case "sha256":
|
|
@@ -166460,7 +166573,8 @@ function convertSignatureSchema(extension4, logger4) {
|
|
|
166460
166573
|
signaturePrefix: extension4["signature-prefix"],
|
|
166461
166574
|
payloadFormat: convertPayloadFormat2(extension4["payload-format"]),
|
|
166462
166575
|
timestamp: convertTimestamp2(extension4.timestamp),
|
|
166463
|
-
bodyHashBinding: convertBodyHashBinding2(extension4["body-hash-binding"], logger4)
|
|
166576
|
+
bodyHashBinding: convertBodyHashBinding2(extension4["body-hash-binding"], logger4),
|
|
166577
|
+
notificationUrlNormalization: convertUrlNormalization2(extension4["url-normalization"], logger4)
|
|
166464
166578
|
});
|
|
166465
166579
|
}
|
|
166466
166580
|
if (extension4.type === "asymmetric") {
|
|
@@ -198884,7 +198998,8 @@ var init_getAPIDefinitionSettings = __esm({
|
|
|
198884
198998
|
inferForwardCompatible: "inferForwardCompatible",
|
|
198885
198999
|
coerceConstsTo: "coerceConstsTo",
|
|
198886
199000
|
shouldInferDiscriminatedUnionBaseProperties: "shouldInferDiscriminatedUnionBaseProperties",
|
|
198887
|
-
disambiguateRequestNames: "disambiguateRequestNames"
|
|
199001
|
+
disambiguateRequestNames: "disambiguateRequestNames",
|
|
199002
|
+
ignoreTags: "ignoreTags"
|
|
198888
199003
|
};
|
|
198889
199004
|
}
|
|
198890
199005
|
});
|
|
@@ -260536,7 +260651,8 @@ function parseOpenApiDefinitionSettingsSchema(settings) {
|
|
|
260536
260651
|
defaultIntegerFormat: settings?.["default-integer-format"],
|
|
260537
260652
|
pathParameterOrder: settings?.["path-parameter-order"],
|
|
260538
260653
|
shouldInferDiscriminatedUnionBaseProperties: settings?.["infer-discriminated-union-base-properties"],
|
|
260539
|
-
disambiguateRequestNames: settings?.["disambiguate-request-names"]
|
|
260654
|
+
disambiguateRequestNames: settings?.["disambiguate-request-names"],
|
|
260655
|
+
ignoreTags: settings?.["ignore-tags"]
|
|
260540
260656
|
};
|
|
260541
260657
|
}
|
|
260542
260658
|
function parseAsyncApiDefinitionSettingsSchema(settings) {
|
|
@@ -261400,7 +261516,8 @@ var init_convertGeneratorsConfiguration = __esm({
|
|
|
261400
261516
|
inferForwardCompatible: void 0,
|
|
261401
261517
|
coerceConstsTo: void 0,
|
|
261402
261518
|
shouldInferDiscriminatedUnionBaseProperties: void 0,
|
|
261403
|
-
disambiguateRequestNames: void 0
|
|
261519
|
+
disambiguateRequestNames: void 0,
|
|
261520
|
+
ignoreTags: void 0
|
|
261404
261521
|
};
|
|
261405
261522
|
}
|
|
261406
261523
|
});
|
|
@@ -275409,7 +275526,17 @@ function convertHmacSignature({ hmac, file: file4 }) {
|
|
|
275409
275526
|
signaturePrefix: hmac["signature-prefix"],
|
|
275410
275527
|
payloadFormat: convertPayloadFormat3(hmac["payload-format"]),
|
|
275411
275528
|
timestamp: convertTimestampConfig({ timestamp: hmac.timestamp, file: file4 }),
|
|
275412
|
-
bodyHashBinding: convertBodyHashBinding3(hmac["body-hash-binding"])
|
|
275529
|
+
bodyHashBinding: convertBodyHashBinding3(hmac["body-hash-binding"]),
|
|
275530
|
+
notificationUrlNormalization: convertUrlNormalization3(hmac["url-normalization"])
|
|
275531
|
+
};
|
|
275532
|
+
}
|
|
275533
|
+
function convertUrlNormalization3(normalization) {
|
|
275534
|
+
if (normalization == null) {
|
|
275535
|
+
return void 0;
|
|
275536
|
+
}
|
|
275537
|
+
return {
|
|
275538
|
+
portVariants: normalization["port-variants"] ?? false,
|
|
275539
|
+
legacyQueryEncoding: normalization["legacy-query-encoding"] ?? false
|
|
275413
275540
|
};
|
|
275414
275541
|
}
|
|
275415
275542
|
function convertBodyHashBinding3(binding) {
|
|
@@ -326019,6 +326146,34 @@ var init_fern_schema = __esm({
|
|
|
326019
326146
|
],
|
|
326020
326147
|
additionalProperties: false
|
|
326021
326148
|
},
|
|
326149
|
+
"webhooks.WebhookUrlNormalizationSchema": {
|
|
326150
|
+
type: "object",
|
|
326151
|
+
properties: {
|
|
326152
|
+
"port-variants": {
|
|
326153
|
+
oneOf: [
|
|
326154
|
+
{
|
|
326155
|
+
type: "boolean"
|
|
326156
|
+
},
|
|
326157
|
+
{
|
|
326158
|
+
type: "null"
|
|
326159
|
+
}
|
|
326160
|
+
],
|
|
326161
|
+
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."
|
|
326162
|
+
},
|
|
326163
|
+
"legacy-query-encoding": {
|
|
326164
|
+
oneOf: [
|
|
326165
|
+
{
|
|
326166
|
+
type: "boolean"
|
|
326167
|
+
},
|
|
326168
|
+
{
|
|
326169
|
+
type: "null"
|
|
326170
|
+
}
|
|
326171
|
+
],
|
|
326172
|
+
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."
|
|
326173
|
+
}
|
|
326174
|
+
},
|
|
326175
|
+
additionalProperties: false
|
|
326176
|
+
},
|
|
326022
326177
|
"webhooks.AsymmetricAlgorithmSchema": {
|
|
326023
326178
|
type: "string",
|
|
326024
326179
|
enum: [
|
|
@@ -326117,6 +326272,17 @@ var init_fern_schema = __esm({
|
|
|
326117
326272
|
description: `When set, the raw body is not signed directly; instead a hash of the body is
|
|
326118
326273
|
transmitted separately (e.g. Twilio's "bodySHA256" query parameter for JSON
|
|
326119
326274
|
bodies) and verification also recomputes and compares the body hash.`
|
|
326275
|
+
},
|
|
326276
|
+
"url-normalization": {
|
|
326277
|
+
oneOf: [
|
|
326278
|
+
{
|
|
326279
|
+
$ref: "#/definitions/webhooks.WebhookUrlNormalizationSchema"
|
|
326280
|
+
},
|
|
326281
|
+
{
|
|
326282
|
+
type: "null"
|
|
326283
|
+
}
|
|
326284
|
+
],
|
|
326285
|
+
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
326286
|
}
|
|
326121
326287
|
},
|
|
326122
326288
|
required: [
|
|
@@ -330426,6 +330592,34 @@ var init_package_yml_schema = __esm({
|
|
|
330426
330592
|
],
|
|
330427
330593
|
additionalProperties: false
|
|
330428
330594
|
},
|
|
330595
|
+
"webhooks.WebhookUrlNormalizationSchema": {
|
|
330596
|
+
type: "object",
|
|
330597
|
+
properties: {
|
|
330598
|
+
"port-variants": {
|
|
330599
|
+
oneOf: [
|
|
330600
|
+
{
|
|
330601
|
+
type: "boolean"
|
|
330602
|
+
},
|
|
330603
|
+
{
|
|
330604
|
+
type: "null"
|
|
330605
|
+
}
|
|
330606
|
+
],
|
|
330607
|
+
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."
|
|
330608
|
+
},
|
|
330609
|
+
"legacy-query-encoding": {
|
|
330610
|
+
oneOf: [
|
|
330611
|
+
{
|
|
330612
|
+
type: "boolean"
|
|
330613
|
+
},
|
|
330614
|
+
{
|
|
330615
|
+
type: "null"
|
|
330616
|
+
}
|
|
330617
|
+
],
|
|
330618
|
+
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."
|
|
330619
|
+
}
|
|
330620
|
+
},
|
|
330621
|
+
additionalProperties: false
|
|
330622
|
+
},
|
|
330429
330623
|
"webhooks.AsymmetricAlgorithmSchema": {
|
|
330430
330624
|
type: "string",
|
|
330431
330625
|
enum: [
|
|
@@ -330524,6 +330718,17 @@ var init_package_yml_schema = __esm({
|
|
|
330524
330718
|
description: `When set, the raw body is not signed directly; instead a hash of the body is
|
|
330525
330719
|
transmitted separately (e.g. Twilio's "bodySHA256" query parameter for JSON
|
|
330526
330720
|
bodies) and verification also recomputes and compares the body hash.`
|
|
330721
|
+
},
|
|
330722
|
+
"url-normalization": {
|
|
330723
|
+
oneOf: [
|
|
330724
|
+
{
|
|
330725
|
+
$ref: "#/definitions/webhooks.WebhookUrlNormalizationSchema"
|
|
330726
|
+
},
|
|
330727
|
+
{
|
|
330728
|
+
type: "null"
|
|
330729
|
+
}
|
|
330730
|
+
],
|
|
330731
|
+
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
330732
|
}
|
|
330528
330733
|
},
|
|
330529
330734
|
required: [
|
|
@@ -681332,6 +681537,21 @@ function validateHmac(signature, violations) {
|
|
|
681332
681537
|
if (signature["body-hash-binding"] != null) {
|
|
681333
681538
|
validateBodyHashBinding(signature, violations);
|
|
681334
681539
|
}
|
|
681540
|
+
if (signature["url-normalization"] != null) {
|
|
681541
|
+
validateUrlNormalization(signature, violations);
|
|
681542
|
+
}
|
|
681543
|
+
}
|
|
681544
|
+
function validateUrlNormalization(signature, violations) {
|
|
681545
|
+
const normalization = signature["url-normalization"];
|
|
681546
|
+
if (normalization == null) {
|
|
681547
|
+
return;
|
|
681548
|
+
}
|
|
681549
|
+
if (!normalization["port-variants"] && !normalization["legacy-query-encoding"]) {
|
|
681550
|
+
violations.push({
|
|
681551
|
+
severity: "error",
|
|
681552
|
+
message: "url-normalization must enable at least one of port-variants or legacy-query-encoding"
|
|
681553
|
+
});
|
|
681554
|
+
}
|
|
681335
681555
|
}
|
|
681336
681556
|
function validateBodyHashBinding(signature, violations) {
|
|
681337
681557
|
const binding = signature["body-hash-binding"];
|
|
@@ -682579,7 +682799,14 @@ var OpenApiSettingsSchema2 = BaseApiSettingsSchema2.extend({
|
|
|
682579
682799
|
* If false, keep the original "Request" suffix regardless of collisions.
|
|
682580
682800
|
* Defaults to true.
|
|
682581
682801
|
*/
|
|
682582
|
-
"disambiguate-request-names": external_exports.boolean().optional()
|
|
682802
|
+
"disambiguate-request-names": external_exports.boolean().optional(),
|
|
682803
|
+
/**
|
|
682804
|
+
* If true, ignore operation-level tags when determining the SDK structure.
|
|
682805
|
+
* Endpoints fall back to the root package (or their namespace) and method
|
|
682806
|
+
* names are derived from each operation's operationId.
|
|
682807
|
+
* Defaults to false.
|
|
682808
|
+
*/
|
|
682809
|
+
"ignore-tags": external_exports.boolean().optional()
|
|
682583
682810
|
});
|
|
682584
682811
|
|
|
682585
682812
|
// ../config/lib/schemas/specs/OpenApiSpecSchema.js
|
|
@@ -691168,7 +691395,7 @@ var AccessTokenPosthogManager = class {
|
|
|
691168
691395
|
properties: {
|
|
691169
691396
|
...event,
|
|
691170
691397
|
...event.properties,
|
|
691171
|
-
version: "5.
|
|
691398
|
+
version: "5.77.0",
|
|
691172
691399
|
usingAccessToken: true,
|
|
691173
691400
|
...getRunIdProperties()
|
|
691174
691401
|
}
|
|
@@ -691234,7 +691461,7 @@ var UserPosthogManager = class {
|
|
|
691234
691461
|
distinctId: this.userId ?? await this.getPersistedDistinctId(),
|
|
691235
691462
|
event: "CLI",
|
|
691236
691463
|
properties: {
|
|
691237
|
-
version: "5.
|
|
691464
|
+
version: "5.77.0",
|
|
691238
691465
|
...event,
|
|
691239
691466
|
...event.properties,
|
|
691240
691467
|
usingAccessToken: false,
|
|
@@ -698047,7 +698274,8 @@ var LegacyApiSpecAdapter = class {
|
|
|
698047
698274
|
defaultIntegerFormat: this.adaptDefaultIntegerFormat(settings.defaultIntegerFormat),
|
|
698048
698275
|
coerceConstsTo: settings.coerceConstsTo,
|
|
698049
698276
|
shouldInferDiscriminatedUnionBaseProperties: settings.inferDiscriminatedUnionBaseProperties,
|
|
698050
|
-
disambiguateRequestNames: settings["disambiguate-request-names"]
|
|
698277
|
+
disambiguateRequestNames: settings["disambiguate-request-names"],
|
|
698278
|
+
ignoreTags: settings["ignore-tags"]
|
|
698051
698279
|
};
|
|
698052
698280
|
const hasSettings = Object.values(result).some((v3) => v3 != null);
|
|
698053
698281
|
return hasSettings ? result : void 0;
|
|
@@ -872339,7 +872567,7 @@ var LOCAL_STORAGE_FOLDER4 = ".fern-dev";
|
|
|
872339
872567
|
var LOGS_FOLDER_NAME = "logs";
|
|
872340
872568
|
var MAX_LOGS_DIR_SIZE_BYTES = 100 * 1024 * 1024;
|
|
872341
872569
|
function getCliSource() {
|
|
872342
|
-
const version7 = "5.
|
|
872570
|
+
const version7 = "5.77.0";
|
|
872343
872571
|
return `cli@${version7}`;
|
|
872344
872572
|
}
|
|
872345
872573
|
var DebugLogger = class {
|
|
@@ -904992,7 +905220,7 @@ var LegacyDocsPublisher = class {
|
|
|
904992
905220
|
previewId,
|
|
904993
905221
|
disableTemplates: void 0,
|
|
904994
905222
|
skipUpload,
|
|
904995
|
-
cliVersion: "5.
|
|
905223
|
+
cliVersion: "5.77.0",
|
|
904996
905224
|
loginCommand: "fern auth login"
|
|
904997
905225
|
});
|
|
904998
905226
|
if (taskContext.getResult() === TaskResult.Failure) {
|
|
@@ -971905,7 +972133,7 @@ function getAutomationContextFromEnv() {
|
|
|
971905
972133
|
config_branch: process.env.FERN_CONFIG_BRANCH,
|
|
971906
972134
|
config_pr_number: process.env.FERN_CONFIG_PR_NUMBER,
|
|
971907
972135
|
trigger: process.env.GITHUB_EVENT_NAME,
|
|
971908
|
-
cli_version: "5.
|
|
972136
|
+
cli_version: "5.77.0"
|
|
971909
972137
|
};
|
|
971910
972138
|
}
|
|
971911
972139
|
function isAutomationMode() {
|
|
@@ -972737,7 +972965,7 @@ var CliContext = class _CliContext {
|
|
|
972737
972965
|
if (false) {
|
|
972738
972966
|
this.logger.error("CLI_VERSION is not defined");
|
|
972739
972967
|
}
|
|
972740
|
-
return "5.
|
|
972968
|
+
return "5.77.0";
|
|
972741
972969
|
}
|
|
972742
972970
|
getCliName() {
|
|
972743
972971
|
if (false) {
|
package/package.json
CHANGED