@fern-api/fern-api-dev 5.98.3 → 5.99.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.
Files changed (2) hide show
  1. package/cli.cjs +78 -17
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -130922,7 +130922,8 @@ var init_OpenApiSettingsSchema2 = __esm({
130922
130922
  "default-integer-format": DefaultIntegerFormat2.optional(),
130923
130923
  "infer-discriminated-union-base-properties": schemas_exports8.boolean().optional(),
130924
130924
  "disambiguate-request-names": schemas_exports8.boolean().optional(),
130925
- "ignore-tags": schemas_exports8.boolean().optional()
130925
+ "ignore-tags": schemas_exports8.boolean().optional(),
130926
+ "respect-parameter-content": schemas_exports8.boolean().optional()
130926
130927
  }).extend(BaseApiSettingsSchema);
130927
130928
  }
130928
130929
  });
@@ -152785,7 +152786,8 @@ var init_options2 = __esm({
152785
152786
  respectByteFormat: false,
152786
152787
  shouldInferDiscriminatedUnionBaseProperties: false,
152787
152788
  disambiguateRequestNames: true,
152788
- ignoreTags: false
152789
+ ignoreTags: false,
152790
+ respectParameterContent: false
152789
152791
  };
152790
152792
  }
152791
152793
  });
@@ -165877,7 +165879,8 @@ function convertParameters({ path: path121, httpMethod, parameters: parameters2,
165877
165879
  const generatedName = getGeneratedTypeName(parameterBreadcrumbs, context3.options.preserveSchemaIds);
165878
165880
  const isHeader = resolvedParameter.in === "header";
165879
165881
  const [isOptional, isNullable] = context3.options.coerceOptionalSchemasToNullable && !isHeader ? [false, !isRequired] : [!isRequired, false];
165880
- let schema = resolvedParameter.schema != null ? convertSchema2(resolvedParameter.schema, isOptional, isNullable, context3, parameterBreadcrumbs, source2, context3.namespace, false, /* @__PURE__ */ new Set(), getParameterExample(resolvedParameter, context3)) : isRequired ? SchemaWithExample.primitive({
165882
+ const parameterSchema = getParameterSchema(resolvedParameter, context3);
165883
+ let schema = parameterSchema != null ? convertSchema2(parameterSchema, isOptional, isNullable, context3, parameterBreadcrumbs, source2, context3.namespace, false, /* @__PURE__ */ new Set(), getParameterExample(resolvedParameter, context3)) : isRequired ? SchemaWithExample.primitive({
165881
165884
  nameOverride: void 0,
165882
165885
  generatedName,
165883
165886
  title: void 0,
@@ -165975,6 +165978,16 @@ function convertParameters({ path: path121, httpMethod, parameters: parameters2,
165975
165978
  }
165976
165979
  return convertedParameters;
165977
165980
  }
165981
+ function getParameterSchema(parameter6, context3) {
165982
+ if (parameter6.schema != null) {
165983
+ return parameter6.schema;
165984
+ }
165985
+ if (!context3.options.respectParameterContent || parameter6.in !== "header" || parameter6.content == null) {
165986
+ return void 0;
165987
+ }
165988
+ const jsonMediaType = findApplicationJsonRequest({ content: parameter6.content, context: context3 });
165989
+ return jsonMediaType?.[1].schema;
165990
+ }
165978
165991
  function getParameterDescription(parameter6) {
165979
165992
  if (parameter6.description != null) {
165980
165993
  return parameter6.description;
@@ -166023,6 +166036,7 @@ var init_convertParameters = __esm({
166023
166036
  init_fernExtensions();
166024
166037
  init_getParameterName();
166025
166038
  init_getVariableReference();
166039
+ init_getApplicationJsonSchema();
166026
166040
  HEADERS_TO_SKIP = /* @__PURE__ */ new Set([
166027
166041
  "user-agent",
166028
166042
  "content-length",
@@ -199970,7 +199984,8 @@ var init_getAPIDefinitionSettings = __esm({
199970
199984
  coerceConstsTo: "coerceConstsTo",
199971
199985
  shouldInferDiscriminatedUnionBaseProperties: "shouldInferDiscriminatedUnionBaseProperties",
199972
199986
  disambiguateRequestNames: "disambiguateRequestNames",
199973
- ignoreTags: "ignoreTags"
199987
+ ignoreTags: "ignoreTags",
199988
+ respectParameterContent: "respectParameterContent"
199974
199989
  };
199975
199990
  }
199976
199991
  });
@@ -264043,7 +264058,8 @@ function parseOpenApiDefinitionSettingsSchema(settings) {
264043
264058
  pathParameterOrder: settings?.["path-parameter-order"],
264044
264059
  shouldInferDiscriminatedUnionBaseProperties: settings?.["infer-discriminated-union-base-properties"],
264045
264060
  disambiguateRequestNames: settings?.["disambiguate-request-names"],
264046
- ignoreTags: settings?.["ignore-tags"]
264061
+ ignoreTags: settings?.["ignore-tags"],
264062
+ respectParameterContent: settings?.["respect-parameter-content"]
264047
264063
  };
264048
264064
  }
264049
264065
  function parseAsyncApiDefinitionSettingsSchema(settings) {
@@ -264910,7 +264926,8 @@ var init_convertGeneratorsConfiguration = __esm({
264910
264926
  coerceConstsTo: void 0,
264911
264927
  shouldInferDiscriminatedUnionBaseProperties: void 0,
264912
264928
  disambiguateRequestNames: void 0,
264913
- ignoreTags: void 0
264929
+ ignoreTags: void 0,
264930
+ respectParameterContent: void 0
264914
264931
  };
264915
264932
  }
264916
264933
  });
@@ -355209,6 +355226,7 @@ var ParameterConverter2;
355209
355226
  var init_ParameterConverter2 = __esm({
355210
355227
  "../api-importers/openapi-to-ir/lib/3.1/paths/ParameterConverter.js"() {
355211
355228
  "use strict";
355229
+ init_lib4();
355212
355230
  init_lib30();
355213
355231
  ParameterConverter2 = class extends converters_exports.AbstractConverters.AbstractParameterConverter {
355214
355232
  constructor({ context: context3, breadcrumbs, parameter: parameter6 }) {
@@ -355217,12 +355235,13 @@ var init_ParameterConverter2 = __esm({
355217
355235
  convert() {
355218
355236
  let typeReference2;
355219
355237
  let inlinedTypes = {};
355220
- if (this.parameter.schema != null) {
355238
+ const schema = this.getSchema();
355239
+ if (schema != null) {
355221
355240
  const schemaIdOverride = this.context.convertBreadcrumbsToName([...this.breadcrumbs, this.parameter.name]);
355222
355241
  const schemaOrReferenceConverter = new converters_exports.SchemaConverters.SchemaOrReferenceConverter({
355223
355242
  context: this.context,
355224
355243
  breadcrumbs: [...this.breadcrumbs, this.parameter.name, "schema"],
355225
- schemaOrReference: this.parameter.schema,
355244
+ schemaOrReference: schema,
355226
355245
  wrapAsOptional: this.parameter.required == null || !this.parameter.required,
355227
355246
  schemaIdOverride
355228
355247
  });
@@ -355233,11 +355252,34 @@ var init_ParameterConverter2 = __esm({
355233
355252
  }
355234
355253
  }
355235
355254
  return this.convertToOutput({
355236
- schema: this.parameter.schema ?? { type: "string" },
355255
+ schema: schema ?? { type: "string" },
355237
355256
  typeReference: typeReference2,
355238
355257
  inlinedTypes
355239
355258
  });
355240
355259
  }
355260
+ /**
355261
+ * Resolves the schema describing the parameter's value. Parameters normally declare `schema`
355262
+ * directly, but the OpenAPI spec also allows a `content` map for values serialized in a media
355263
+ * type — most commonly a header holding a JSON-encoded object.
355264
+ *
355265
+ * Only headers are resolved from `content`: header values are JSON-encoded when sent, whereas
355266
+ * an object query parameter is serialized as separate key/value pairs rather than as a single
355267
+ * JSON-encoded value, which is not what `content: application/json` describes.
355268
+ */
355269
+ getSchema() {
355270
+ if (this.parameter.schema != null) {
355271
+ return this.parameter.schema;
355272
+ }
355273
+ if (!this.context.settings.respectParameterContent || this.parameter.in !== "header" || this.parameter.content == null) {
355274
+ return void 0;
355275
+ }
355276
+ for (const [contentType, mediaTypeObject] of Object.entries(this.parameter.content)) {
355277
+ if (mediaTypeObject.schema != null && MediaType.parse(contentType)?.isJSON()) {
355278
+ return mediaTypeObject.schema;
355279
+ }
355280
+ }
355281
+ return void 0;
355282
+ }
355241
355283
  };
355242
355284
  }
355243
355285
  });
@@ -694295,7 +694337,14 @@ var OpenApiSettingsSchema2 = BaseApiSettingsSchema2.extend({
694295
694337
  * names are derived from each operation's operationId.
694296
694338
  * Defaults to false.
694297
694339
  */
694298
- "ignore-tags": external_exports.boolean().optional()
694340
+ "ignore-tags": external_exports.boolean().optional(),
694341
+ /**
694342
+ * If true, header parameters that declare their schema under `content` (e.g. a header
694343
+ * whose value is a JSON-encoded object) are typed from that schema instead of falling
694344
+ * back to a string.
694345
+ * Defaults to false.
694346
+ */
694347
+ "respect-parameter-content": external_exports.boolean().optional()
694299
694348
  });
694300
694349
 
694301
694350
  // ../config/lib/schemas/specs/OpenApiSpecSchema.js
@@ -702884,7 +702933,7 @@ var AccessTokenPosthogManager = class {
702884
702933
  properties: {
702885
702934
  ...event,
702886
702935
  ...event.properties,
702887
- version: "5.98.3",
702936
+ version: "5.99.0",
702888
702937
  usingAccessToken: true,
702889
702938
  ...getRunIdProperties()
702890
702939
  }
@@ -702950,7 +702999,7 @@ var UserPosthogManager = class {
702950
702999
  distinctId: this.userId ?? await this.getPersistedDistinctId(),
702951
703000
  event: "CLI",
702952
703001
  properties: {
702953
- version: "5.98.3",
703002
+ version: "5.99.0",
702954
703003
  ...event,
702955
703004
  ...event.properties,
702956
703005
  usingAccessToken: false,
@@ -709766,7 +709815,8 @@ var LegacyApiSpecAdapter = class {
709766
709815
  coerceConstsTo: settings.coerceConstsTo,
709767
709816
  shouldInferDiscriminatedUnionBaseProperties: settings.inferDiscriminatedUnionBaseProperties,
709768
709817
  disambiguateRequestNames: settings["disambiguate-request-names"],
709769
- ignoreTags: settings["ignore-tags"]
709818
+ ignoreTags: settings["ignore-tags"],
709819
+ respectParameterContent: settings["respect-parameter-content"]
709770
709820
  };
709771
709821
  const hasSettings = Object.values(result).some((v3) => v3 != null);
709772
709822
  return hasSettings ? result : void 0;
@@ -884331,7 +884381,7 @@ var LOCAL_STORAGE_FOLDER4 = ".fern-dev";
884331
884381
  var LOGS_FOLDER_NAME = "logs";
884332
884382
  var MAX_LOGS_DIR_SIZE_BYTES = 100 * 1024 * 1024;
884333
884383
  function getCliSource() {
884334
- const version7 = "5.98.3";
884384
+ const version7 = "5.99.0";
884335
884385
  return `cli@${version7}`;
884336
884386
  }
884337
884387
  var DebugLogger = class {
@@ -909651,7 +909701,7 @@ var LegacyDocsPublisher = class {
909651
909701
  previewId,
909652
909702
  disableTemplates: void 0,
909653
909703
  skipUpload,
909654
- cliVersion: "5.98.3",
909704
+ cliVersion: "5.99.0",
909655
909705
  loginCommand: "fern auth login"
909656
909706
  });
909657
909707
  if (taskContext.getResult() === TaskResult.Failure) {
@@ -920729,6 +920779,17 @@ var ClassReference = class extends Node5 {
920729
920779
  fullyQualified: true
920730
920780
  });
920731
920781
  }
920782
+ /**
920783
+ * returns this class reference as a fully qualified class reference with the `global::`
920784
+ * alias, making it immune to shadowing by locals, parameters or members in scope
920785
+ */
920786
+ asGloballyQualified() {
920787
+ return this.csharp.classReferenceInternal({
920788
+ ...this,
920789
+ fullyQualified: true,
920790
+ global: true
920791
+ });
920792
+ }
920732
920793
  /** returns a class instantiation node for this class reference */
920733
920794
  new(args) {
920734
920795
  args = args ?? { arguments_: [] };
@@ -976884,7 +976945,7 @@ function getAutomationContextFromEnv() {
976884
976945
  config_branch: process.env.FERN_CONFIG_BRANCH,
976885
976946
  config_pr_number: process.env.FERN_CONFIG_PR_NUMBER,
976886
976947
  trigger: process.env.GITHUB_EVENT_NAME,
976887
- cli_version: "5.98.3"
976948
+ cli_version: "5.99.0"
976888
976949
  };
976889
976950
  }
976890
976951
  function isAutomationMode() {
@@ -977716,7 +977777,7 @@ var CliContext = class _CliContext {
977716
977777
  if (false) {
977717
977778
  this.logger.error("CLI_VERSION is not defined");
977718
977779
  }
977719
- return "5.98.3";
977780
+ return "5.99.0";
977720
977781
  }
977721
977782
  getCliName() {
977722
977783
  if (false) {
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "5.98.3",
2
+ "version": "5.99.0",
3
3
  "repository": {
4
4
  "type": "git",
5
5
  "url": "git+https://github.com/fern-api/fern.git",