@fern-api/fern-api-dev 5.101.0 → 5.101.2

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 +424 -308
  2. package/package.json +1 -1
package/cli.cjs CHANGED
@@ -4221,8 +4221,8 @@ function hrTimeDuration(startTime, endTime) {
4221
4221
  }
4222
4222
  function hrTimeToTimeStamp(time3) {
4223
4223
  const precision = NANOSECOND_DIGITS;
4224
- const tmp23 = `${"0".repeat(precision)}${time3[1]}Z`;
4225
- const nanoString = tmp23.substring(tmp23.length - precision - 1);
4224
+ const tmp22 = `${"0".repeat(precision)}${time3[1]}Z`;
4225
+ const nanoString = tmp22.substring(tmp22.length - precision - 1);
4226
4226
  const date26 = new Date(time3[0] * 1e3).toISOString();
4227
4227
  return date26.replace("000Z", nanoString);
4228
4228
  }
@@ -20655,15 +20655,15 @@ var init_cliui = __esm({
20655
20655
  // ../../../node_modules/.pnpm/escalade@3.2.0/node_modules/escalade/sync/index.mjs
20656
20656
  function sync_default(start2, callback) {
20657
20657
  let dir = (0, import_path5.resolve)(".", start2);
20658
- let tmp23, stats = (0, import_fs4.statSync)(dir);
20658
+ let tmp22, stats = (0, import_fs4.statSync)(dir);
20659
20659
  if (!stats.isDirectory()) {
20660
20660
  dir = (0, import_path5.dirname)(dir);
20661
20661
  }
20662
20662
  while (true) {
20663
- tmp23 = callback(dir, (0, import_fs4.readdirSync)(dir));
20664
- if (tmp23) return (0, import_path5.resolve)(dir, tmp23);
20665
- dir = (0, import_path5.dirname)(tmp23 = dir);
20666
- if (tmp23 === dir) break;
20663
+ tmp22 = callback(dir, (0, import_fs4.readdirSync)(dir));
20664
+ if (tmp22) return (0, import_path5.resolve)(dir, tmp22);
20665
+ dir = (0, import_path5.dirname)(tmp22 = dir);
20666
+ if (tmp22 === dir) break;
20667
20667
  }
20668
20668
  }
20669
20669
  var import_path5, import_fs4;
@@ -27273,16 +27273,16 @@ var init_index_node_esm = __esm({
27273
27273
  for (let t3 = 0; t3 < ret.length; t3++) {
27274
27274
  const rett = ret[t3];
27275
27275
  if (rett && rett.isParentSelector) {
27276
- const tmp23 = this._trace(rett.expr, val, rett.path, parent, parentPropName, callback, hasArrExpr);
27277
- if (Array.isArray(tmp23)) {
27278
- ret[t3] = tmp23[0];
27279
- const tl = tmp23.length;
27276
+ const tmp22 = this._trace(rett.expr, val, rett.path, parent, parentPropName, callback, hasArrExpr);
27277
+ if (Array.isArray(tmp22)) {
27278
+ ret[t3] = tmp22[0];
27279
+ const tl = tmp22.length;
27280
27280
  for (let tt3 = 1; tt3 < tl; tt3++) {
27281
27281
  t3++;
27282
- ret.splice(t3, 0, tmp23[tt3]);
27282
+ ret.splice(t3, 0, tmp22[tt3]);
27283
27283
  }
27284
27284
  } else {
27285
- ret[t3] = tmp23;
27285
+ ret[t3] = tmp22;
27286
27286
  }
27287
27287
  }
27288
27288
  }
@@ -27311,8 +27311,8 @@ var init_index_node_esm = __esm({
27311
27311
  end = end < 0 ? Math.max(0, end + len) : Math.min(len, end);
27312
27312
  const ret = [];
27313
27313
  for (let i5 = start2; i5 < end; i5 += step) {
27314
- const tmp23 = this._trace(unshift(i5, expr), val, path122, parent, parentPropName, callback, true);
27315
- tmp23.forEach((t3) => {
27314
+ const tmp22 = this._trace(unshift(i5, expr), val, path122, parent, parentPropName, callback, true);
27315
+ tmp22.forEach((t3) => {
27316
27316
  ret.push(t3);
27317
27317
  });
27318
27318
  }
@@ -53807,10 +53807,10 @@ var require_tmp_promise = __commonJS({
53807
53807
  "../../../node_modules/.pnpm/tmp-promise@3.0.3/node_modules/tmp-promise/index.js"(exports2, module4) {
53808
53808
  "use strict";
53809
53809
  var { promisify: promisify14 } = require("util");
53810
- var tmp23 = require_tmp();
53811
- module4.exports.fileSync = tmp23.fileSync;
53810
+ var tmp22 = require_tmp();
53811
+ module4.exports.fileSync = tmp22.fileSync;
53812
53812
  var fileWithOptions = promisify14(
53813
- (options2, cb) => tmp23.file(
53813
+ (options2, cb) => tmp22.file(
53814
53814
  options2,
53815
53815
  (err, path122, fd, cleanup) => err ? cb(err) : cb(void 0, { path: path122, fd, cleanup: promisify14(cleanup) })
53816
53816
  )
@@ -53824,9 +53824,9 @@ var require_tmp_promise = __commonJS({
53824
53824
  await cleanup();
53825
53825
  }
53826
53826
  };
53827
- module4.exports.dirSync = tmp23.dirSync;
53827
+ module4.exports.dirSync = tmp22.dirSync;
53828
53828
  var dirWithOptions = promisify14(
53829
- (options2, cb) => tmp23.dir(
53829
+ (options2, cb) => tmp22.dir(
53830
53830
  options2,
53831
53831
  (err, path122, cleanup) => err ? cb(err) : cb(void 0, { path: path122, cleanup: promisify14(cleanup) })
53832
53832
  )
@@ -53840,10 +53840,10 @@ var require_tmp_promise = __commonJS({
53840
53840
  await cleanup();
53841
53841
  }
53842
53842
  };
53843
- module4.exports.tmpNameSync = tmp23.tmpNameSync;
53844
- module4.exports.tmpName = promisify14(tmp23.tmpName);
53845
- module4.exports.tmpdir = tmp23.tmpdir;
53846
- module4.exports.setGracefulCleanup = tmp23.setGracefulCleanup;
53843
+ module4.exports.tmpNameSync = tmp22.tmpNameSync;
53844
+ module4.exports.tmpName = promisify14(tmp22.tmpName);
53845
+ module4.exports.tmpdir = tmp22.tmpdir;
53846
+ module4.exports.setGracefulCleanup = tmp22.setGracefulCleanup;
53847
53847
  }
53848
53848
  });
53849
53849
 
@@ -90966,23 +90966,23 @@ function getValues(context3, operator2, key2, modifier) {
90966
90966
  });
90967
90967
  }
90968
90968
  } else {
90969
- const tmp23 = [];
90969
+ const tmp22 = [];
90970
90970
  if (Array.isArray(value2)) {
90971
90971
  value2.filter(isDefined).forEach(function(value22) {
90972
- tmp23.push(encodeValue(operator2, value22));
90972
+ tmp22.push(encodeValue(operator2, value22));
90973
90973
  });
90974
90974
  } else {
90975
90975
  Object.keys(value2).forEach(function(k4) {
90976
90976
  if (isDefined(value2[k4])) {
90977
- tmp23.push(encodeUnreserved(k4));
90978
- tmp23.push(encodeValue(operator2, value2[k4].toString()));
90977
+ tmp22.push(encodeUnreserved(k4));
90978
+ tmp22.push(encodeValue(operator2, value2[k4].toString()));
90979
90979
  }
90980
90980
  });
90981
90981
  }
90982
90982
  if (isKeyOperator(operator2)) {
90983
- result.push(encodeUnreserved(key2) + "=" + tmp23.join(","));
90984
- } else if (tmp23.length !== 0) {
90985
- result.push(tmp23.join(","));
90983
+ result.push(encodeUnreserved(key2) + "=" + tmp22.join(","));
90984
+ } else if (tmp22.length !== 0) {
90985
+ result.push(tmp22.join(","));
90986
90986
  }
90987
90987
  }
90988
90988
  }
@@ -91017,8 +91017,8 @@ function expand2(template, context3) {
91017
91017
  expression = expression.substr(1);
91018
91018
  }
91019
91019
  expression.split(/,/g).forEach(function(variable3) {
91020
- var tmp23 = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable3);
91021
- values2.push(getValues(context3, operator2, tmp23[1], tmp23[2] || tmp23[3]));
91020
+ var tmp22 = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable3);
91021
+ values2.push(getValues(context3, operator2, tmp22[1], tmp22[2] || tmp22[3]));
91022
91022
  });
91023
91023
  if (operator2 && operator2 !== "+") {
91024
91024
  var separator = ",";
@@ -100657,7 +100657,7 @@ var require_polyfills = __commonJS({
100657
100657
  }
100658
100658
  if (platform4 === "win32") {
100659
100659
  fs34.rename = typeof fs34.rename !== "function" ? fs34.rename : (function(fs$rename) {
100660
- function rename8(from4, to2, cb) {
100660
+ function rename9(from4, to2, cb) {
100661
100661
  var start2 = Date.now();
100662
100662
  var backoff = 0;
100663
100663
  fs$rename(from4, to2, function CB(er3) {
@@ -100677,8 +100677,8 @@ var require_polyfills = __commonJS({
100677
100677
  if (cb) cb(er3);
100678
100678
  });
100679
100679
  }
100680
- if (Object.setPrototypeOf) Object.setPrototypeOf(rename8, fs$rename);
100681
- return rename8;
100680
+ if (Object.setPrototypeOf) Object.setPrototypeOf(rename9, fs$rename);
100681
+ return rename9;
100682
100682
  })(fs34.rename);
100683
100683
  }
100684
100684
  fs34.read = typeof fs34.read !== "function" ? fs34.read : (function(fs$read) {
@@ -150585,7 +150585,7 @@ var init_js_yaml = __esm({
150585
150585
  function readDoubleQuotedScalar(state, nodeIndent) {
150586
150586
  let captureStart;
150587
150587
  let captureEnd;
150588
- let tmp23;
150588
+ let tmp22;
150589
150589
  let ch2 = state.input.charCodeAt(state.position);
150590
150590
  if (ch2 !== 34) return false;
150591
150591
  state.kind = "scalar";
@@ -150603,12 +150603,12 @@ var init_js_yaml = __esm({
150603
150603
  else if (ch2 < 256 && simpleEscapeCheck[ch2]) {
150604
150604
  state.result += simpleEscapeMap[ch2];
150605
150605
  state.position++;
150606
- } else if ((tmp23 = escapedHexLen(ch2)) > 0) {
150607
- let hexLength = tmp23;
150606
+ } else if ((tmp22 = escapedHexLen(ch2)) > 0) {
150607
+ let hexLength = tmp22;
150608
150608
  let hexResult = 0;
150609
150609
  for (; hexLength > 0; hexLength--) {
150610
150610
  ch2 = state.input.charCodeAt(++state.position);
150611
- if ((tmp23 = fromHexCode(ch2)) >= 0) hexResult = (hexResult << 4) + tmp23;
150611
+ if ((tmp22 = fromHexCode(ch2)) >= 0) hexResult = (hexResult << 4) + tmp22;
150612
150612
  else throwError(state, "expected hexadecimal character");
150613
150613
  }
150614
150614
  state.result += charFromCodepoint(hexResult);
@@ -150710,7 +150710,7 @@ var init_js_yaml = __esm({
150710
150710
  let textIndent = nodeIndent;
150711
150711
  let emptyLines = 0;
150712
150712
  let atMoreIndented = false;
150713
- let tmp23;
150713
+ let tmp22;
150714
150714
  let ch2 = state.input.charCodeAt(state.position);
150715
150715
  if (ch2 === 124) folding = false;
150716
150716
  else if (ch2 === 62) folding = true;
@@ -150721,9 +150721,9 @@ var init_js_yaml = __esm({
150721
150721
  ch2 = state.input.charCodeAt(++state.position);
150722
150722
  if (ch2 === 43 || ch2 === 45) if (CHOMPING_CLIP === chomping) chomping = ch2 === 43 ? CHOMPING_KEEP : CHOMPING_STRIP;
150723
150723
  else throwError(state, "repeat of a chomping mode identifier");
150724
- else if ((tmp23 = fromDecimalCode(ch2)) >= 0) if (tmp23 === 0) throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one");
150724
+ else if ((tmp22 = fromDecimalCode(ch2)) >= 0) if (tmp22 === 0) throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one");
150725
150725
  else if (!detectedIndent) {
150726
- textIndent = nodeIndent + tmp23 - 1;
150726
+ textIndent = nodeIndent + tmp22 - 1;
150727
150727
  detectedIndent = true;
150728
150728
  } else throwError(state, "repeat of an indentation width identifier");
150729
150729
  else break;
@@ -171141,7 +171141,7 @@ var require_loader2 = __commonJS({
171141
171141
  function readDoubleQuotedScalar(state, nodeIndent) {
171142
171142
  let captureStart;
171143
171143
  let captureEnd;
171144
- let tmp23;
171144
+ let tmp22;
171145
171145
  let ch2 = state.input.charCodeAt(state.position);
171146
171146
  if (ch2 !== 34) {
171147
171147
  return false;
@@ -171163,13 +171163,13 @@ var require_loader2 = __commonJS({
171163
171163
  } else if (ch2 < 256 && simpleEscapeCheck[ch2]) {
171164
171164
  state.result += simpleEscapeMap[ch2];
171165
171165
  state.position++;
171166
- } else if ((tmp23 = escapedHexLen(ch2)) > 0) {
171167
- let hexLength = tmp23;
171166
+ } else if ((tmp22 = escapedHexLen(ch2)) > 0) {
171167
+ let hexLength = tmp22;
171168
171168
  let hexResult = 0;
171169
171169
  for (; hexLength > 0; hexLength--) {
171170
171170
  ch2 = state.input.charCodeAt(++state.position);
171171
- if ((tmp23 = fromHexCode(ch2)) >= 0) {
171172
- hexResult = (hexResult << 4) + tmp23;
171171
+ if ((tmp22 = fromHexCode(ch2)) >= 0) {
171172
+ hexResult = (hexResult << 4) + tmp22;
171173
171173
  } else {
171174
171174
  throwError(state, "expected hexadecimal character");
171175
171175
  }
@@ -171293,7 +171293,7 @@ var require_loader2 = __commonJS({
171293
171293
  let textIndent = nodeIndent;
171294
171294
  let emptyLines = 0;
171295
171295
  let atMoreIndented = false;
171296
- let tmp23;
171296
+ let tmp22;
171297
171297
  let ch2 = state.input.charCodeAt(state.position);
171298
171298
  if (ch2 === 124) {
171299
171299
  folding = false;
@@ -171312,11 +171312,11 @@ var require_loader2 = __commonJS({
171312
171312
  } else {
171313
171313
  throwError(state, "repeat of a chomping mode identifier");
171314
171314
  }
171315
- } else if ((tmp23 = fromDecimalCode(ch2)) >= 0) {
171316
- if (tmp23 === 0) {
171315
+ } else if ((tmp22 = fromDecimalCode(ch2)) >= 0) {
171316
+ if (tmp22 === 0) {
171317
171317
  throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one");
171318
171318
  } else if (!detectedIndent) {
171319
- textIndent = nodeIndent + tmp23 - 1;
171319
+ textIndent = nodeIndent + tmp22 - 1;
171320
171320
  detectedIndent = true;
171321
171321
  } else {
171322
171322
  throwError(state, "repeat of an indentation width identifier");
@@ -188869,9 +188869,9 @@ var require_js_levenshtein = __commonJS({
188869
188869
  return 0;
188870
188870
  }
188871
188871
  if (a3.length > b5.length) {
188872
- var tmp23 = a3;
188872
+ var tmp22 = a3;
188873
188873
  a3 = b5;
188874
- b5 = tmp23;
188874
+ b5 = tmp22;
188875
188875
  }
188876
188876
  var la = a3.length;
188877
188877
  var lb = b5.length;
@@ -197488,7 +197488,7 @@ var require_loader3 = __commonJS({
197488
197488
  throwError(state, "unexpected end of the stream within a single quoted scalar");
197489
197489
  }
197490
197490
  function readDoubleQuotedScalar(state, nodeIndent) {
197491
- var captureStart, captureEnd, hexLength, hexResult, tmp23, tmpEsc, ch2;
197491
+ var captureStart, captureEnd, hexLength, hexResult, tmp22, tmpEsc, ch2;
197492
197492
  ch2 = state.input.charCodeAt(state.position);
197493
197493
  if (34 !== ch2) {
197494
197494
  return false;
@@ -197515,13 +197515,13 @@ var require_loader3 = __commonJS({
197515
197515
  } else if (ch2 < 256 && (state.allowAnyEscape ? customEscapeCheck[ch2] : simpleEscapeCheck[ch2])) {
197516
197516
  scalar.value += state.allowAnyEscape ? customEscapeMap[ch2] : simpleEscapeMap[ch2];
197517
197517
  state.position++;
197518
- } else if ((tmp23 = escapedHexLen(ch2)) > 0) {
197519
- hexLength = tmp23;
197518
+ } else if ((tmp22 = escapedHexLen(ch2)) > 0) {
197519
+ hexLength = tmp22;
197520
197520
  hexResult = 0;
197521
197521
  for (; hexLength > 0; hexLength--) {
197522
197522
  ch2 = state.input.charCodeAt(++state.position);
197523
- if ((tmp23 = fromHexCode(ch2)) >= 0) {
197524
- hexResult = (hexResult << 4) + tmp23;
197523
+ if ((tmp22 = fromHexCode(ch2)) >= 0) {
197524
+ hexResult = (hexResult << 4) + tmp22;
197525
197525
  } else {
197526
197526
  throwError(state, "expected hexadecimal character");
197527
197527
  }
@@ -197630,7 +197630,7 @@ var require_loader3 = __commonJS({
197630
197630
  throwError(state, "unexpected end of the stream within a flow collection");
197631
197631
  }
197632
197632
  function readBlockScalar(state, nodeIndent) {
197633
- var captureStart, folding, chomping = CHOMPING_CLIP, detectedIndent = false, textIndent = nodeIndent, emptyLines = 0, atMoreIndented = false, tmp23, ch2;
197633
+ var captureStart, folding, chomping = CHOMPING_CLIP, detectedIndent = false, textIndent = nodeIndent, emptyLines = 0, atMoreIndented = false, tmp22, ch2;
197634
197634
  ch2 = state.input.charCodeAt(state.position);
197635
197635
  if (ch2 === 124) {
197636
197636
  folding = false;
@@ -197651,11 +197651,11 @@ var require_loader3 = __commonJS({
197651
197651
  } else {
197652
197652
  throwError(state, "repeat of a chomping mode identifier");
197653
197653
  }
197654
- } else if ((tmp23 = fromDecimalCode(ch2)) >= 0) {
197655
- if (tmp23 === 0) {
197654
+ } else if ((tmp22 = fromDecimalCode(ch2)) >= 0) {
197655
+ if (tmp22 === 0) {
197656
197656
  throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one");
197657
197657
  } else if (!detectedIndent) {
197658
- textIndent = nodeIndent + tmp23 - 1;
197658
+ textIndent = nodeIndent + tmp22 - 1;
197659
197659
  detectedIndent = true;
197660
197660
  } else {
197661
197661
  throwError(state, "repeat of an indentation width identifier");
@@ -244221,16 +244221,16 @@ var require_URLSearchParams = __commonJS({
244221
244221
  );
244222
244222
  } else {
244223
244223
  const V4 = [];
244224
- const tmp23 = curArg;
244225
- for (let nextItem of tmp23) {
244224
+ const tmp22 = curArg;
244225
+ for (let nextItem of tmp22) {
244226
244226
  if (!utils2.isObject(nextItem)) {
244227
244227
  throw new globalObject.TypeError(
244228
244228
  "Failed to construct 'URLSearchParams': parameter 1 sequence's element is not an iterable object."
244229
244229
  );
244230
244230
  } else {
244231
244231
  const V5 = [];
244232
- const tmp24 = nextItem;
244233
- for (let nextItem2 of tmp24) {
244232
+ const tmp23 = nextItem;
244233
+ for (let nextItem2 of tmp23) {
244234
244234
  nextItem2 = conversions["USVString"](nextItem2, {
244235
244235
  context: "Failed to construct 'URLSearchParams': parameter 1 sequence's element's element",
244236
244236
  globals: globalObject
@@ -265878,82 +265878,6 @@ var init_convertEnvironments = __esm({
265878
265878
  }
265879
265879
  });
265880
265880
 
265881
- // ../../commons/ir-utils/lib/hashJSON.js
265882
- function hashJSON(obj) {
265883
- let hash5 = 2166136261;
265884
- function feedChar(char) {
265885
- hash5 ^= char;
265886
- hash5 += (hash5 << 1) + (hash5 << 4) + (hash5 << 7) + (hash5 << 8) + (hash5 << 24);
265887
- hash5 >>>= 0;
265888
- }
265889
- function feedString(str2) {
265890
- for (let i5 = 0, len = str2.length; i5 < len; i5++) {
265891
- feedChar(str2.charCodeAt(i5));
265892
- }
265893
- }
265894
- function traverse(value2, currentDepth) {
265895
- if (typeof value2 === "object" && value2 != null) {
265896
- if (currentDepth > MAX_DEPTH) {
265897
- feedString("[MaxDepthExceeded]");
265898
- return;
265899
- }
265900
- if (Array.isArray(value2)) {
265901
- feedChar(91);
265902
- for (let i5 = 0; i5 < value2.length; i5++) {
265903
- if (i5 > 0) {
265904
- feedChar(44);
265905
- }
265906
- traverse(value2[i5], currentDepth + 1);
265907
- }
265908
- feedChar(93);
265909
- } else {
265910
- feedChar(123);
265911
- const keys25 = Object.keys(value2).sort();
265912
- const klen = keys25.length;
265913
- for (let i5 = 0; i5 < klen; i5++) {
265914
- if (i5 > 0) {
265915
- feedChar(44);
265916
- }
265917
- feedString(keys25[i5] ?? "");
265918
- feedChar(58);
265919
- traverse(value2[keys25[i5] ?? ""], currentDepth + 1);
265920
- }
265921
- feedChar(125);
265922
- }
265923
- } else {
265924
- feedString(String(value2));
265925
- }
265926
- }
265927
- traverse(obj, 0);
265928
- return hash5.toString(16);
265929
- }
265930
- var MAX_DEPTH;
265931
- var init_hashJSON = __esm({
265932
- "../../commons/ir-utils/lib/hashJSON.js"() {
265933
- "use strict";
265934
- MAX_DEPTH = 64;
265935
- }
265936
- });
265937
-
265938
- // ../../commons/ir-utils/lib/utils/isTypeReferenceOptional.js
265939
- function isTypeReferenceOptional({ typeReference: typeReference2, typeDeclarations }) {
265940
- if (typeReference2.type === "container" && typeReference2.container.type === "optional") {
265941
- return true;
265942
- }
265943
- if (typeReference2.type === "named") {
265944
- const typeDeclaration2 = typeDeclarations?.[typeReference2.typeId];
265945
- if (typeDeclaration2?.shape.type === "alias" && typeDeclaration2?.shape.resolvedType.type === "container" && typeDeclaration2?.shape.resolvedType.container.type === "optional") {
265946
- return true;
265947
- }
265948
- }
265949
- return false;
265950
- }
265951
- var init_isTypeReferenceOptional = __esm({
265952
- "../../commons/ir-utils/lib/utils/isTypeReferenceOptional.js"() {
265953
- "use strict";
265954
- }
265955
- });
265956
-
265957
265881
  // ../../commons/casings-generator/lib/reserved.js
265958
265882
  var RESERVED_KEYWORDS;
265959
265883
  var init_reserved = __esm({
@@ -266849,6 +266773,82 @@ var init_namesUtils = __esm({
266849
266773
  }
266850
266774
  });
266851
266775
 
266776
+ // ../../commons/ir-utils/lib/hashJSON.js
266777
+ function hashJSON(obj) {
266778
+ let hash5 = 2166136261;
266779
+ function feedChar(char) {
266780
+ hash5 ^= char;
266781
+ hash5 += (hash5 << 1) + (hash5 << 4) + (hash5 << 7) + (hash5 << 8) + (hash5 << 24);
266782
+ hash5 >>>= 0;
266783
+ }
266784
+ function feedString(str2) {
266785
+ for (let i5 = 0, len = str2.length; i5 < len; i5++) {
266786
+ feedChar(str2.charCodeAt(i5));
266787
+ }
266788
+ }
266789
+ function traverse(value2, currentDepth) {
266790
+ if (typeof value2 === "object" && value2 != null) {
266791
+ if (currentDepth > MAX_DEPTH) {
266792
+ feedString("[MaxDepthExceeded]");
266793
+ return;
266794
+ }
266795
+ if (Array.isArray(value2)) {
266796
+ feedChar(91);
266797
+ for (let i5 = 0; i5 < value2.length; i5++) {
266798
+ if (i5 > 0) {
266799
+ feedChar(44);
266800
+ }
266801
+ traverse(value2[i5], currentDepth + 1);
266802
+ }
266803
+ feedChar(93);
266804
+ } else {
266805
+ feedChar(123);
266806
+ const keys25 = Object.keys(value2).sort();
266807
+ const klen = keys25.length;
266808
+ for (let i5 = 0; i5 < klen; i5++) {
266809
+ if (i5 > 0) {
266810
+ feedChar(44);
266811
+ }
266812
+ feedString(keys25[i5] ?? "");
266813
+ feedChar(58);
266814
+ traverse(value2[keys25[i5] ?? ""], currentDepth + 1);
266815
+ }
266816
+ feedChar(125);
266817
+ }
266818
+ } else {
266819
+ feedString(String(value2));
266820
+ }
266821
+ }
266822
+ traverse(obj, 0);
266823
+ return hash5.toString(16);
266824
+ }
266825
+ var MAX_DEPTH;
266826
+ var init_hashJSON = __esm({
266827
+ "../../commons/ir-utils/lib/hashJSON.js"() {
266828
+ "use strict";
266829
+ MAX_DEPTH = 64;
266830
+ }
266831
+ });
266832
+
266833
+ // ../../commons/ir-utils/lib/utils/isTypeReferenceOptional.js
266834
+ function isTypeReferenceOptional({ typeReference: typeReference2, typeDeclarations }) {
266835
+ if (typeReference2.type === "container" && typeReference2.container.type === "optional") {
266836
+ return true;
266837
+ }
266838
+ if (typeReference2.type === "named") {
266839
+ const typeDeclaration2 = typeDeclarations?.[typeReference2.typeId];
266840
+ if (typeDeclaration2?.shape.type === "alias" && typeDeclaration2?.shape.resolvedType.type === "container" && typeDeclaration2?.shape.resolvedType.container.type === "optional") {
266841
+ return true;
266842
+ }
266843
+ }
266844
+ return false;
266845
+ }
266846
+ var init_isTypeReferenceOptional = __esm({
266847
+ "../../commons/ir-utils/lib/utils/isTypeReferenceOptional.js"() {
266848
+ "use strict";
266849
+ }
266850
+ });
266851
+
266852
266852
  // ../../commons/ir-utils/lib/examples/v1/generateContainerExample.js
266853
266853
  function generateContainerExample({ fieldName, containerType, maxDepth, currentDepth, typeDeclarations, skipOptionalProperties, visitedTypes }) {
266854
266854
  if (currentDepth >= maxDepth) {
@@ -268446,8 +268446,8 @@ function generateEndpointExample({ ir: ir3, endpoint: endpoint3, service, typeDe
268446
268446
  return { type: "failure", message: `Parse failure with exceptions ${e2}` };
268447
268447
  }
268448
268448
  }
268449
- function getUrlForExample(endpoint3, example) {
268450
- const pathParameters = {};
268449
+ function getUrlForExample(endpoint3, example, fallbackPathParameterValues = {}) {
268450
+ const pathParameters = { ...fallbackPathParameterValues };
268451
268451
  [...example.rootPathParameters, ...example.servicePathParameters, ...example.endpointPathParameters].forEach((examplePathParameter) => {
268452
268452
  const value2 = examplePathParameter.value.jsonExample;
268453
268453
  const stringValue = typeof value2 === "string" ? value2 : JSON.stringify(value2);
@@ -268478,6 +268478,87 @@ var init_generateEndpointExample = __esm({
268478
268478
  }
268479
268479
  });
268480
268480
 
268481
+ // ../../commons/ir-utils/lib/examples/backfillMissingPathParameterExamples.js
268482
+ function backfillMissingPathParameterExamples({ ir: ir3 }) {
268483
+ for (const service of Object.values(ir3.services)) {
268484
+ for (const endpoint3 of service.endpoints) {
268485
+ for (const userSpecifiedExample of endpoint3.userSpecifiedExamples) {
268486
+ if (userSpecifiedExample.example == null) {
268487
+ continue;
268488
+ }
268489
+ backfillExample({
268490
+ typeDeclarations: ir3.types,
268491
+ rootPathParameters: ir3.pathParameters,
268492
+ service,
268493
+ endpoint: endpoint3,
268494
+ example: userSpecifiedExample.example
268495
+ });
268496
+ }
268497
+ }
268498
+ }
268499
+ return ir3;
268500
+ }
268501
+ function backfillExample({ typeDeclarations, rootPathParameters, service, endpoint: endpoint3, example }) {
268502
+ const buckets = [
268503
+ { declared: rootPathParameters, examples: example.rootPathParameters },
268504
+ { declared: service.pathParameters, examples: example.servicePathParameters },
268505
+ { declared: endpoint3.pathParameters, examples: example.endpointPathParameters }
268506
+ ];
268507
+ const suppliedNames = new Set(buckets.flatMap((bucket) => bucket.examples.map((pathParameter) => getOriginalName(pathParameter.name))));
268508
+ let anyMissing = false;
268509
+ const clientDefaultValues = {};
268510
+ for (const bucket of buckets) {
268511
+ for (const pathParameter of bucket.declared) {
268512
+ if (suppliedNames.has(getOriginalName(pathParameter.name))) {
268513
+ continue;
268514
+ }
268515
+ anyMissing = true;
268516
+ if (pathParameter.clientDefault != null) {
268517
+ clientDefaultValues[getOriginalName(pathParameter.name)] = literalToString(pathParameter.clientDefault);
268518
+ continue;
268519
+ }
268520
+ const pathParameterExample = generateExample({ pathParameter, typeDeclarations });
268521
+ if (pathParameterExample == null) {
268522
+ continue;
268523
+ }
268524
+ bucket.examples.push(pathParameterExample);
268525
+ }
268526
+ }
268527
+ if (anyMissing) {
268528
+ example.url = getUrlForExample(endpoint3, example, clientDefaultValues);
268529
+ }
268530
+ }
268531
+ function generateExample({ pathParameter, typeDeclarations }) {
268532
+ const generated = generatePathParameterExamples2([pathParameter], {
268533
+ typeDeclarations,
268534
+ skipOptionalRequestProperties: true,
268535
+ maxDepth: 1
268536
+ });
268537
+ if (generated.type === "failure") {
268538
+ return void 0;
268539
+ }
268540
+ return generated.example[0];
268541
+ }
268542
+ function literalToString(literal3) {
268543
+ switch (literal3.type) {
268544
+ case "string":
268545
+ return literal3.string;
268546
+ case "boolean":
268547
+ return String(literal3.boolean);
268548
+ default:
268549
+ assertNever(literal3);
268550
+ }
268551
+ }
268552
+ var init_backfillMissingPathParameterExamples = __esm({
268553
+ "../../commons/ir-utils/lib/examples/backfillMissingPathParameterExamples.js"() {
268554
+ "use strict";
268555
+ init_lib4();
268556
+ init_namesUtils();
268557
+ init_generateEndpointExample();
268558
+ init_generateParameterExamples();
268559
+ }
268560
+ });
268561
+
268481
268562
  // ../../commons/ir-utils/lib/examples/v1/generateWebSocketExample.js
268482
268563
  function generateWebSocketExample({ ir: ir3, channel: channel3, typeDeclarations, skipOptionalRequestProperties }) {
268483
268564
  const result = {
@@ -272308,6 +272389,7 @@ var init_lib22 = __esm({
272308
272389
  init_convertApiAuth();
272309
272390
  init_constructHttpPath();
272310
272391
  init_convertEnvironments();
272392
+ init_backfillMissingPathParameterExamples();
272311
272393
  init_injectAutogeneratedExamples();
272312
272394
  init_generateEndpointExample();
272313
272395
  init_filterIntermediateRepresentationForAudiences();
@@ -282040,6 +282122,7 @@ function generateIntermediateRepresentation({ workspace, generationLanguage, key
282040
282122
  resolveGlobalParameterApplicability(intermediateRepresentation, {
282041
282123
  onWarning: (message) => context3.logger.warn(message)
282042
282124
  });
282125
+ backfillMissingPathParameterExamples({ ir: intermediateRepresentation });
282043
282126
  const intermediateRepresentationWithGeneratedExamples = exampleGeneration.disabled ? intermediateRepresentation : injectAutogeneratedExamples({ ir: intermediateRepresentation, exampleGeneration });
282044
282127
  const workspaceDefinitionRootApiFileContents = workspace.definition.rootApiFile.contents;
282045
282128
  const ignoreAudiences = environments2?.environments._visit({
@@ -343105,13 +343188,13 @@ var require_fast_safe_stringify = __commonJS({
343105
343188
  if (typeof options2 === "undefined") {
343106
343189
  options2 = defaultOptions3();
343107
343190
  }
343108
- var tmp23 = deterministicDecirc(obj, "", 0, [], void 0, 0, options2) || obj;
343191
+ var tmp22 = deterministicDecirc(obj, "", 0, [], void 0, 0, options2) || obj;
343109
343192
  var res;
343110
343193
  try {
343111
343194
  if (replacerStack.length === 0) {
343112
- res = JSON.stringify(tmp23, replacer, spacer);
343195
+ res = JSON.stringify(tmp22, replacer, spacer);
343113
343196
  } else {
343114
- res = JSON.stringify(tmp23, replaceGetterValues(replacer), spacer);
343197
+ res = JSON.stringify(tmp22, replaceGetterValues(replacer), spacer);
343115
343198
  }
343116
343199
  } catch (_5) {
343117
343200
  return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]");
@@ -343158,18 +343241,18 @@ var require_fast_safe_stringify = __commonJS({
343158
343241
  deterministicDecirc(val[i5], i5, i5, stack, val, depth, options2);
343159
343242
  }
343160
343243
  } else {
343161
- var tmp23 = {};
343244
+ var tmp22 = {};
343162
343245
  var keys25 = Object.keys(val).sort(compareFunction);
343163
343246
  for (i5 = 0; i5 < keys25.length; i5++) {
343164
343247
  var key2 = keys25[i5];
343165
343248
  deterministicDecirc(val[key2], key2, i5, stack, val, depth, options2);
343166
- tmp23[key2] = val[key2];
343249
+ tmp22[key2] = val[key2];
343167
343250
  }
343168
343251
  if (typeof parent !== "undefined") {
343169
343252
  arr.push([parent, k4, val]);
343170
- parent[k4] = tmp23;
343253
+ parent[k4] = tmp22;
343171
343254
  } else {
343172
- return tmp23;
343255
+ return tmp22;
343173
343256
  }
343174
343257
  }
343175
343258
  stack.pop();
@@ -347875,6 +347958,7 @@ var init_AbstractSpecConverter = __esm({
347875
347958
  if (!this.irGraph.hasNoAudiences()) {
347876
347959
  ir3 = this.filterIrForAudiences(ir3);
347877
347960
  }
347961
+ backfillMissingPathParameterExamples({ ir: ir3 });
347878
347962
  const exampleGeneration = this.context.exampleGenerationArgs;
347879
347963
  const irWithV2Examples = injectAutogeneratedV2Examples({ ir: ir3, exampleGeneration, logger: this.context.logger });
347880
347964
  if (this.context.generateV1Examples) {
@@ -364675,9 +364759,9 @@ var init_suggestionList = __esm({
364675
364759
  let a3 = stringToArray2(optionLowerCase);
364676
364760
  let b5 = this._inputArray;
364677
364761
  if (a3.length < b5.length) {
364678
- const tmp23 = a3;
364762
+ const tmp22 = a3;
364679
364763
  a3 = b5;
364680
- b5 = tmp23;
364764
+ b5 = tmp22;
364681
364765
  }
364682
364766
  const aLength = a3.length;
364683
364767
  const bLength = b5.length;
@@ -400797,9 +400881,9 @@ var require_utf16 = __commonJS({
400797
400881
  Utf16BEEncoder.prototype.write = function(str2) {
400798
400882
  var buf = Buffer6.from(str2, "ucs2");
400799
400883
  for (var i5 = 0; i5 < buf.length; i5 += 2) {
400800
- var tmp23 = buf[i5];
400884
+ var tmp22 = buf[i5];
400801
400885
  buf[i5] = buf[i5 + 1];
400802
- buf[i5 + 1] = tmp23;
400886
+ buf[i5 + 1] = tmp22;
400803
400887
  }
400804
400888
  return buf;
400805
400889
  };
@@ -464648,9 +464732,9 @@ var init_mod = __esm({
464648
464732
  };
464649
464733
  distance = (a3, b5) => {
464650
464734
  if (a3.length < b5.length) {
464651
- const tmp23 = b5;
464735
+ const tmp22 = b5;
464652
464736
  b5 = a3;
464653
- a3 = tmp23;
464737
+ a3 = tmp22;
464654
464738
  }
464655
464739
  if (b5.length === 0) {
464656
464740
  return a3.length;
@@ -464705,7 +464789,7 @@ var require_levenshtein = __commonJS({
464705
464789
  var str1Len = str1.length, str2Len = str2.length;
464706
464790
  if (str1Len === 0) return str2Len;
464707
464791
  if (str2Len === 0) return str1Len;
464708
- var curCol, nextCol, i5, j5, tmp23;
464792
+ var curCol, nextCol, i5, j5, tmp22;
464709
464793
  for (i5 = 0; i5 < str2Len; ++i5) {
464710
464794
  prevRow[i5] = i5;
464711
464795
  str2Char[i5] = str2.charCodeAt(i5);
@@ -464718,13 +464802,13 @@ var require_levenshtein = __commonJS({
464718
464802
  curCol = nextCol;
464719
464803
  strCmp = 0 === collator.compare(str1.charAt(i5), String.fromCharCode(str2Char[j5]));
464720
464804
  nextCol = prevRow[j5] + (strCmp ? 0 : 1);
464721
- tmp23 = curCol + 1;
464722
- if (nextCol > tmp23) {
464723
- nextCol = tmp23;
464805
+ tmp22 = curCol + 1;
464806
+ if (nextCol > tmp22) {
464807
+ nextCol = tmp22;
464724
464808
  }
464725
- tmp23 = prevRow[j5 + 1] + 1;
464726
- if (nextCol > tmp23) {
464727
- nextCol = tmp23;
464809
+ tmp22 = prevRow[j5 + 1] + 1;
464810
+ if (nextCol > tmp22) {
464811
+ nextCol = tmp22;
464728
464812
  }
464729
464813
  prevRow[j5] = curCol;
464730
464814
  }
@@ -474729,6 +474813,31 @@ function filenameFromUrl(url3) {
474729
474813
  return void 0;
474730
474814
  }
474731
474815
  }
474816
+ function getGlobalThemeAssetDirectoryPath(organization, themeName) {
474817
+ const themeKey = `${organization}\0${themeName}`;
474818
+ const themeHash = (0, import_crypto8.createHash)("sha256").update(themeKey).digest("hex").slice(0, 16);
474819
+ return import_path60.default.join((0, import_os9.tmpdir)(), `fern-theme-${themeHash}`);
474820
+ }
474821
+ async function ensureGlobalThemeAssetDirectory(directoryPath) {
474822
+ await (0, import_promises81.mkdir)(directoryPath, { mode: 448, recursive: true });
474823
+ const stats = await (0, import_promises81.lstat)(directoryPath);
474824
+ const processUid = typeof process.getuid === "function" ? process.getuid() : void 0;
474825
+ if (!stats.isDirectory() || processUid !== void 0 && stats.uid !== processUid) {
474826
+ throw new Error(`Global theme asset directory "${directoryPath}" is not a secure directory. Remove it and retry.`);
474827
+ }
474828
+ if ((stats.mode & 511) !== 448) {
474829
+ await (0, import_promises81.chmod)(directoryPath, 448);
474830
+ }
474831
+ }
474832
+ async function writeFileAtomically(filePath, data2) {
474833
+ const tempPath = import_path60.default.join(import_path60.default.dirname(filePath), `.${import_path60.default.basename(filePath)}.${(0, import_crypto8.randomUUID)()}.tmp`);
474834
+ try {
474835
+ await (0, import_promises81.writeFile)(tempPath, data2);
474836
+ await (0, import_promises81.rename)(tempPath, filePath);
474837
+ } finally {
474838
+ await (0, import_promises81.unlink)(tempPath).catch(() => void 0);
474839
+ }
474840
+ }
474732
474841
  async function downloadToTemp(url3, tmpDir, index3) {
474733
474842
  const urlFilename = filenameFromUrl(url3);
474734
474843
  const res = await fetch(url3);
@@ -474759,7 +474868,7 @@ async function downloadToTemp(url3, tmpDir, index3) {
474759
474868
  })();
474760
474869
  const dest = import_path60.default.join(tmpDir, filename);
474761
474870
  const buf = Buffer.from(await res.arrayBuffer());
474762
- await (0, import_promises81.writeFile)(dest, buf);
474871
+ await writeFileAtomically(dest, buf);
474763
474872
  return dest;
474764
474873
  }
474765
474874
  async function resolveThemeFileUrls(themeConfig, tmpDir) {
@@ -474946,7 +475055,13 @@ async function stitchGlobalTheme({ docsWorkspace, organization, fdrOrigin, token
474946
475055
  }
474947
475056
  throw err;
474948
475057
  }
474949
- const { path: tmpDirPath } = await import_tmp_promise11.default.dir({ prefix: "fern-theme-", unsafeCleanup: true });
475058
+ const tmpDirPath = getGlobalThemeAssetDirectoryPath(organization, themeName);
475059
+ try {
475060
+ await ensureGlobalThemeAssetDirectory(tmpDirPath);
475061
+ } catch (err) {
475062
+ taskContext.failAndThrow(`Could not prepare global theme asset directory "${tmpDirPath}". Remove it and retry.`, err, { code: CliError.Code.ConfigError });
475063
+ return docsWorkspace;
475064
+ }
474950
475065
  taskContext.logger.debug(`Downloading theme assets to ${tmpDirPath}`);
474951
475066
  let resolvedConfig;
474952
475067
  try {
@@ -474959,13 +475074,13 @@ async function stitchGlobalTheme({ docsWorkspace, organization, fdrOrigin, token
474959
475074
  return docsWorkspace;
474960
475075
  }
474961
475076
  const mergedRawConfig = mergeThemeOverride(docsWorkspace.config, resolvedConfig);
474962
- taskContext.logger.info(`Applied global theme "${themeName}" \u2014 ${AbsoluteFilePath2.of(tmpDirPath)} (cleaned up on exit)`);
475077
+ taskContext.logger.info(`Applied global theme "${themeName}" \u2014 ${AbsoluteFilePath2.of(tmpDirPath)}`);
474963
475078
  const stitchedPath = import_path60.default.join(tmpDirPath, "stitched-docs.yml.json");
474964
- await (0, import_promises81.writeFile)(stitchedPath, JSON.stringify(mergedRawConfig, null, 2));
475079
+ await writeFileAtomically(stitchedPath, JSON.stringify(mergedRawConfig, null, 2));
474965
475080
  taskContext.logger.debug(`Stitched docs.yml after importing theme written to: ${stitchedPath}`);
474966
475081
  return { ...docsWorkspace, config: mergedRawConfig };
474967
475082
  }
474968
- var import_promises81, import_mime_types, import_path60, import_tmp_promise11, THEME_ELIGIBLE_FIELDS2, THEME_FIELD_POLICIES2;
475083
+ var import_crypto8, import_promises81, import_mime_types, import_os9, import_path60, THEME_ELIGIBLE_FIELDS2, THEME_FIELD_POLICIES2;
474969
475084
  var init_stitchGlobalTheme = __esm({
474970
475085
  "../docs-resolver/lib/stitchGlobalTheme.js"() {
474971
475086
  "use strict";
@@ -474973,10 +475088,11 @@ var init_stitchGlobalTheme = __esm({
474973
475088
  init_lib4();
474974
475089
  init_lib8();
474975
475090
  init_lib6();
475091
+ import_crypto8 = require("crypto");
474976
475092
  import_promises81 = require("fs/promises");
474977
475093
  import_mime_types = __toESM(require_mime_types(), 1);
475094
+ import_os9 = require("os");
474978
475095
  import_path60 = __toESM(require("path"), 1);
474979
- import_tmp_promise11 = __toESM(require_tmp_promise(), 1);
474980
475096
  ({ THEME_ELIGIBLE_FIELDS: THEME_ELIGIBLE_FIELDS2, THEME_FIELD_POLICIES: THEME_FIELD_POLICIES2 } = docs_yml_exports);
474981
475097
  }
474982
475098
  });
@@ -477866,9 +477982,9 @@ var require_utf162 = __commonJS({
477866
477982
  Utf16BEEncoder.prototype.write = function(str2) {
477867
477983
  var buf = Buffer6.from(str2, "ucs2");
477868
477984
  for (var i5 = 0; i5 < buf.length; i5 += 2) {
477869
- var tmp23 = buf[i5];
477985
+ var tmp22 = buf[i5];
477870
477986
  buf[i5] = buf[i5 + 1];
477871
- buf[i5 + 1] = tmp23;
477987
+ buf[i5 + 1] = tmp22;
477872
477988
  }
477873
477989
  return buf;
477874
477990
  };
@@ -489628,7 +489744,7 @@ var require_websocket = __commonJS({
489628
489744
  var http13 = require("http");
489629
489745
  var net4 = require("net");
489630
489746
  var tls2 = require("tls");
489631
- var { randomBytes: randomBytes2, createHash: createHash7 } = require("crypto");
489747
+ var { randomBytes: randomBytes2, createHash: createHash8 } = require("crypto");
489632
489748
  var { Duplex, Readable: Readable9 } = require("stream");
489633
489749
  var { URL: URL4 } = require("url");
489634
489750
  var PerMessageDeflate2 = require_permessage_deflate();
@@ -490296,7 +490412,7 @@ var require_websocket = __commonJS({
490296
490412
  abortHandshake(websocket, socket, "Invalid Upgrade header");
490297
490413
  return;
490298
490414
  }
490299
- const digest = createHash7("sha1").update(key2 + GUID).digest("base64");
490415
+ const digest = createHash8("sha1").update(key2 + GUID).digest("base64");
490300
490416
  if (res.headers["sec-websocket-accept"] !== digest) {
490301
490417
  abortHandshake(websocket, socket, "Invalid Sec-WebSocket-Accept header");
490302
490418
  return;
@@ -490665,7 +490781,7 @@ var require_websocket_server = __commonJS({
490665
490781
  var EventEmitter9 = require("events");
490666
490782
  var http13 = require("http");
490667
490783
  var { Duplex } = require("stream");
490668
- var { createHash: createHash7 } = require("crypto");
490784
+ var { createHash: createHash8 } = require("crypto");
490669
490785
  var extension4 = require_extension();
490670
490786
  var PerMessageDeflate2 = require_permessage_deflate();
490671
490787
  var subprotocol2 = require_subprotocol();
@@ -490972,7 +491088,7 @@ var require_websocket_server = __commonJS({
490972
491088
  );
490973
491089
  }
490974
491090
  if (this._state > RUNNING) return abortHandshake(socket, 503);
490975
- const digest = createHash7("sha1").update(key2 + GUID).digest("base64");
491091
+ const digest = createHash8("sha1").update(key2 + GUID).digest("base64");
490976
491092
  const headers2 = [
490977
491093
  "HTTP/1.1 101 Switching Protocols",
490978
491094
  "Upgrade: websocket",
@@ -491928,7 +492044,7 @@ var require_polyfills2 = __commonJS({
491928
492044
  }
491929
492045
  if (platform4 === "win32") {
491930
492046
  fs34.rename = typeof fs34.rename !== "function" ? fs34.rename : (function(fs$rename) {
491931
- function rename8(from4, to2, cb) {
492047
+ function rename9(from4, to2, cb) {
491932
492048
  var start2 = Date.now();
491933
492049
  var backoff = 0;
491934
492050
  fs$rename(from4, to2, function CB(er3) {
@@ -491948,8 +492064,8 @@ var require_polyfills2 = __commonJS({
491948
492064
  if (cb) cb(er3);
491949
492065
  });
491950
492066
  }
491951
- if (Object.setPrototypeOf) Object.setPrototypeOf(rename8, fs$rename);
491952
- return rename8;
492067
+ if (Object.setPrototypeOf) Object.setPrototypeOf(rename9, fs$rename);
492068
+ return rename9;
491953
492069
  })(fs34.rename);
491954
492070
  }
491955
492071
  fs34.read = typeof fs34.read !== "function" ? fs34.read : (function(fs$read) {
@@ -500340,9 +500456,9 @@ var require_buffer_crc32 = __commonJS({
500340
500456
  }
500341
500457
  }
500342
500458
  function bufferizeInt(num) {
500343
- var tmp23 = ensureBuffer(4);
500344
- tmp23.writeInt32BE(num, 0);
500345
- return tmp23;
500459
+ var tmp22 = ensureBuffer(4);
500460
+ tmp22.writeInt32BE(num, 0);
500461
+ return tmp22;
500346
500462
  }
500347
500463
  function _crc32(buf, previous4) {
500348
500464
  buf = ensureBuffer(buf);
@@ -501282,10 +501398,10 @@ var require_make_dir = __commonJS({
501282
501398
  module4.exports = (input3, opts) => Promise.resolve().then(() => {
501283
501399
  checkPath(input3);
501284
501400
  opts = Object.assign({}, defaults3, opts);
501285
- const mkdir48 = pify(opts.fs.mkdir);
501401
+ const mkdir49 = pify(opts.fs.mkdir);
501286
501402
  const stat7 = pify(opts.fs.stat);
501287
501403
  const make = (pth) => {
501288
- return mkdir48(pth, opts.mode).then(() => pth).catch((err) => {
501404
+ return mkdir49(pth, opts.mode).then(() => pth).catch((err) => {
501289
501405
  if (err.code === "ENOENT") {
501290
501406
  if (err.message.includes("null bytes") || path122.dirname(pth) === pth) {
501291
501407
  throw err;
@@ -545852,9 +545968,9 @@ var require_receivebuffer = __commonJS({
545852
545968
  throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");
545853
545969
  }
545854
545970
  if (this.offset + data2.length >= this.buffer.length) {
545855
- const tmp23 = this.buffer;
545971
+ const tmp22 = this.buffer;
545856
545972
  this.buffer = Buffer.allocUnsafe(Math.max(this.buffer.length + this.originalSize, this.buffer.length + data2.length));
545857
- tmp23.copy(this.buffer);
545973
+ tmp22.copy(this.buffer);
545858
545974
  }
545859
545975
  data2.copy(this.buffer, this.offset);
545860
545976
  return this.offset += data2.length;
@@ -559753,10 +559869,10 @@ var require_esprima = __commonJS({
559753
559869
  };
559754
559870
  Scanner2.prototype.testRegExp = function(pattern, flags2) {
559755
559871
  var astralSubstitute = "\uFFFF";
559756
- var tmp23 = pattern;
559872
+ var tmp22 = pattern;
559757
559873
  var self2 = this;
559758
559874
  if (flags2.indexOf("u") >= 0) {
559759
- tmp23 = tmp23.replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g, function($0, $1, $22) {
559875
+ tmp22 = tmp22.replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g, function($0, $1, $22) {
559760
559876
  var codePoint = parseInt($1 || $22, 16);
559761
559877
  if (codePoint > 1114111) {
559762
559878
  self2.throwUnexpectedToken(messages_1.Messages.InvalidRegExp);
@@ -559768,7 +559884,7 @@ var require_esprima = __commonJS({
559768
559884
  }).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, astralSubstitute);
559769
559885
  }
559770
559886
  try {
559771
- RegExp(tmp23);
559887
+ RegExp(tmp22);
559772
559888
  } catch (e2) {
559773
559889
  this.throwUnexpectedToken(messages_1.Messages.InvalidRegExp);
559774
559890
  }
@@ -573103,16 +573219,16 @@ var require_tar_fs = __commonJS({
573103
573219
  }
573104
573220
  function chperm(name2, header, cb) {
573105
573221
  const link3 = header.type === "symlink";
573106
- const chmod5 = link3 ? xfs.lchmod : xfs.chmod;
573222
+ const chmod6 = link3 ? xfs.lchmod : xfs.chmod;
573107
573223
  const chown = link3 ? xfs.lchown : xfs.chown;
573108
- if (!chmod5) return cb();
573224
+ if (!chmod6) return cb();
573109
573225
  const mode = (header.mode | (header.type === "directory" ? dmode : fmode)) & umask;
573110
573226
  if (chown && own15) chown.call(xfs, name2, header.uid, header.gid, onchown);
573111
573227
  else onchown(null);
573112
573228
  function onchown(err) {
573113
573229
  if (err) return cb(err);
573114
- if (!chmod5) return cb();
573115
- chmod5.call(xfs, name2, mode, cb);
573230
+ if (!chmod6) return cb();
573231
+ chmod6.call(xfs, name2, mode, cb);
573116
573232
  }
573117
573233
  }
573118
573234
  function mkdirfix(name2, opts2, cb) {
@@ -574673,7 +574789,7 @@ var require_env_paths = __commonJS({
574673
574789
  var path122 = require("path");
574674
574790
  var os23 = require("os");
574675
574791
  var homedir12 = os23.homedir();
574676
- var tmpdir5 = os23.tmpdir();
574792
+ var tmpdir6 = os23.tmpdir();
574677
574793
  var { env: env5 } = process;
574678
574794
  var macos = (name2) => {
574679
574795
  const library = path122.join(homedir12, "Library");
@@ -574682,7 +574798,7 @@ var require_env_paths = __commonJS({
574682
574798
  config: path122.join(library, "Preferences", name2),
574683
574799
  cache: path122.join(library, "Caches", name2),
574684
574800
  log: path122.join(library, "Logs", name2),
574685
- temp: path122.join(tmpdir5, name2)
574801
+ temp: path122.join(tmpdir6, name2)
574686
574802
  };
574687
574803
  };
574688
574804
  var windows = (name2) => {
@@ -574694,7 +574810,7 @@ var require_env_paths = __commonJS({
574694
574810
  config: path122.join(appData, name2, "Config"),
574695
574811
  cache: path122.join(localAppData, name2, "Cache"),
574696
574812
  log: path122.join(localAppData, name2, "Log"),
574697
- temp: path122.join(tmpdir5, name2)
574813
+ temp: path122.join(tmpdir6, name2)
574698
574814
  };
574699
574815
  };
574700
574816
  var linux = (name2) => {
@@ -574705,7 +574821,7 @@ var require_env_paths = __commonJS({
574705
574821
  cache: path122.join(env5.XDG_CACHE_HOME || path122.join(homedir12, ".cache"), name2),
574706
574822
  // https://wiki.debian.org/XDGBaseDirectorySpecification#state
574707
574823
  log: path122.join(env5.XDG_STATE_HOME || path122.join(homedir12, ".local", "state"), name2),
574708
- temp: path122.join(tmpdir5, username, name2)
574824
+ temp: path122.join(tmpdir6, username, name2)
574709
574825
  };
574710
574826
  };
574711
574827
  var envPaths = (name2, options2) => {
@@ -575536,7 +575652,7 @@ async function tryRunContainer({ logger: logger4, imageName, args, binds, envVar
575536
575652
  });
575537
575653
  const logs4 = stdout + stderr;
575538
575654
  if (writeLogsToFile) {
575539
- const tmpFile = await import_tmp_promise13.default.file();
575655
+ const tmpFile = await import_tmp_promise12.default.file();
575540
575656
  await (0, import_promises114.writeFile)(tmpFile.path, logs4);
575541
575657
  logger4.info(`Generator logs here: ${tmpFile.path}`);
575542
575658
  }
@@ -575611,7 +575727,7 @@ async function execInContainer({ logger: logger4, containerId, command: command3
575611
575727
  });
575612
575728
  const logs4 = stdout + stderr;
575613
575729
  if (writeLogsToFile) {
575614
- const tmpFile = await import_tmp_promise13.default.file();
575730
+ const tmpFile = await import_tmp_promise12.default.file();
575615
575731
  await (0, import_promises114.writeFile)(tmpFile.path, logs4);
575616
575732
  logger4.info(`Generator logs here: ${tmpFile.path}`);
575617
575733
  }
@@ -575654,13 +575770,13 @@ async function stopContainer({ logger: logger4, containerId, runner }) {
575654
575770
  doNotPipeOutput: true
575655
575771
  });
575656
575772
  }
575657
- var import_promises114, import_tmp_promise13, runDocker;
575773
+ var import_promises114, import_tmp_promise12, runDocker;
575658
575774
  var init_runDocker = __esm({
575659
575775
  "../generation/local-generation/docker-utils/lib/runDocker.js"() {
575660
575776
  "use strict";
575661
575777
  init_lib18();
575662
575778
  import_promises114 = require("fs/promises");
575663
- import_tmp_promise13 = __toESM(require_tmp_promise(), 1);
575779
+ import_tmp_promise12 = __toESM(require_tmp_promise(), 1);
575664
575780
  init_buildContainerEnvVars();
575665
575781
  runDocker = runContainer;
575666
575782
  }
@@ -587081,17 +587197,17 @@ Patches absorbed by generator (${buckets.absorbed.length}):`;
587081
587197
  }
587082
587198
  async function unifiedDiff(beforeContent, afterContent, filePath) {
587083
587199
  if (beforeContent === afterContent) return "";
587084
- const tmp23 = await (0, import_promises410.mkdtemp)((0, import_node_path72.join)((0, import_node_os22.tmpdir)(), "fern-replay-pp-"));
587200
+ const tmp22 = await (0, import_promises410.mkdtemp)((0, import_node_path72.join)((0, import_node_os22.tmpdir)(), "fern-replay-pp-"));
587085
587201
  try {
587086
- const beforePath = (0, import_node_path72.join)(tmp23, "before");
587087
- const afterPath = (0, import_node_path72.join)(tmp23, "after");
587202
+ const beforePath = (0, import_node_path72.join)(tmp22, "before");
587203
+ const afterPath = (0, import_node_path72.join)(tmp22, "after");
587088
587204
  await (0, import_promises410.writeFile)(beforePath, beforeContent, "utf-8");
587089
587205
  await (0, import_promises410.writeFile)(afterPath, afterContent, "utf-8");
587090
587206
  const raw = await runGitDiffNoIndex(beforePath, afterPath);
587091
587207
  if (!raw.trim()) return "";
587092
587208
  return rewriteDiffHeaders(raw, filePath);
587093
587209
  } finally {
587094
- await (0, import_promises410.rm)(tmp23, { recursive: true, force: true });
587210
+ await (0, import_promises410.rm)(tmp22, { recursive: true, force: true });
587095
587211
  }
587096
587212
  }
587097
587213
  function runGitDiffNoIndex(beforePath, afterPath) {
@@ -590384,23 +590500,23 @@ function getValues2(context3, operator2, key2, modifier) {
590384
590500
  });
590385
590501
  }
590386
590502
  } else {
590387
- const tmp23 = [];
590503
+ const tmp22 = [];
590388
590504
  if (Array.isArray(value2)) {
590389
590505
  value2.filter(isDefined2).forEach(function(value22) {
590390
- tmp23.push(encodeValue4(operator2, value22));
590506
+ tmp22.push(encodeValue4(operator2, value22));
590391
590507
  });
590392
590508
  } else {
590393
590509
  Object.keys(value2).forEach(function(k4) {
590394
590510
  if (isDefined2(value2[k4])) {
590395
- tmp23.push(encodeUnreserved2(k4));
590396
- tmp23.push(encodeValue4(operator2, value2[k4].toString()));
590511
+ tmp22.push(encodeUnreserved2(k4));
590512
+ tmp22.push(encodeValue4(operator2, value2[k4].toString()));
590397
590513
  }
590398
590514
  });
590399
590515
  }
590400
590516
  if (isKeyOperator2(operator2)) {
590401
- result.push(encodeUnreserved2(key2) + "=" + tmp23.join(","));
590402
- } else if (tmp23.length !== 0) {
590403
- result.push(tmp23.join(","));
590517
+ result.push(encodeUnreserved2(key2) + "=" + tmp22.join(","));
590518
+ } else if (tmp22.length !== 0) {
590519
+ result.push(tmp22.join(","));
590404
590520
  }
590405
590521
  }
590406
590522
  }
@@ -590435,8 +590551,8 @@ function expand3(template, context3) {
590435
590551
  expression = expression.substr(1);
590436
590552
  }
590437
590553
  expression.split(/,/g).forEach(function(variable3) {
590438
- var tmp23 = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable3);
590439
- values2.push(getValues2(context3, operator2, tmp23[1], tmp23[2] || tmp23[3]));
590554
+ var tmp22 = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable3);
590555
+ values2.push(getValues2(context3, operator2, tmp22[1], tmp22[2] || tmp22[3]));
590440
590556
  });
590441
590557
  if (operator2 && operator2 !== "+") {
590442
590558
  var separator = ",";
@@ -635278,14 +635394,14 @@ var require_empty2 = __commonJS({
635278
635394
  var u5 = require_universalify().fromPromise;
635279
635395
  var fs34 = require_fs();
635280
635396
  var path122 = require("path");
635281
- var mkdir48 = require_mkdirs();
635397
+ var mkdir49 = require_mkdirs();
635282
635398
  var remove3 = require_remove3();
635283
635399
  var emptyDir = u5(async function emptyDir2(dir) {
635284
635400
  let items;
635285
635401
  try {
635286
635402
  items = await fs34.readdir(dir);
635287
635403
  } catch {
635288
- return mkdir48.mkdirs(dir);
635404
+ return mkdir49.mkdirs(dir);
635289
635405
  }
635290
635406
  return Promise.all(items.map((item) => remove3.remove(path122.join(dir, item))));
635291
635407
  });
@@ -635294,7 +635410,7 @@ var require_empty2 = __commonJS({
635294
635410
  try {
635295
635411
  items = fs34.readdirSync(dir);
635296
635412
  } catch {
635297
- return mkdir48.mkdirsSync(dir);
635413
+ return mkdir49.mkdirsSync(dir);
635298
635414
  }
635299
635415
  items.forEach((item) => {
635300
635416
  item = path122.join(dir, item);
@@ -635317,7 +635433,7 @@ var require_file2 = __commonJS({
635317
635433
  var u5 = require_universalify().fromPromise;
635318
635434
  var path122 = require("path");
635319
635435
  var fs34 = require_fs();
635320
- var mkdir48 = require_mkdirs();
635436
+ var mkdir49 = require_mkdirs();
635321
635437
  async function createFile(file4) {
635322
635438
  let stats;
635323
635439
  try {
@@ -635331,7 +635447,7 @@ var require_file2 = __commonJS({
635331
635447
  dirStats = await fs34.stat(dir);
635332
635448
  } catch (err) {
635333
635449
  if (err.code === "ENOENT") {
635334
- await mkdir48.mkdirs(dir);
635450
+ await mkdir49.mkdirs(dir);
635335
635451
  await fs34.writeFile(file4, "");
635336
635452
  return;
635337
635453
  } else {
@@ -635357,7 +635473,7 @@ var require_file2 = __commonJS({
635357
635473
  fs34.readdirSync(dir);
635358
635474
  }
635359
635475
  } catch (err) {
635360
- if (err && err.code === "ENOENT") mkdir48.mkdirsSync(dir);
635476
+ if (err && err.code === "ENOENT") mkdir49.mkdirsSync(dir);
635361
635477
  else throw err;
635362
635478
  }
635363
635479
  fs34.writeFileSync(file4, "");
@@ -635376,7 +635492,7 @@ var require_link = __commonJS({
635376
635492
  var u5 = require_universalify().fromPromise;
635377
635493
  var path122 = require("path");
635378
635494
  var fs34 = require_fs();
635379
- var mkdir48 = require_mkdirs();
635495
+ var mkdir49 = require_mkdirs();
635380
635496
  var { pathExists: pathExists2 } = require_path_exists();
635381
635497
  var { areIdentical } = require_stat();
635382
635498
  async function createLink(srcpath, dstpath) {
@@ -635396,7 +635512,7 @@ var require_link = __commonJS({
635396
635512
  const dir = path122.dirname(dstpath);
635397
635513
  const dirExists = await pathExists2(dir);
635398
635514
  if (!dirExists) {
635399
- await mkdir48.mkdirs(dir);
635515
+ await mkdir49.mkdirs(dir);
635400
635516
  }
635401
635517
  await fs34.link(srcpath, dstpath);
635402
635518
  }
@@ -635416,7 +635532,7 @@ var require_link = __commonJS({
635416
635532
  const dir = path122.dirname(dstpath);
635417
635533
  const dirExists = fs34.existsSync(dir);
635418
635534
  if (dirExists) return fs34.linkSync(srcpath, dstpath);
635419
- mkdir48.mkdirsSync(dir);
635535
+ mkdir49.mkdirsSync(dir);
635420
635536
  return fs34.linkSync(srcpath, dstpath);
635421
635537
  }
635422
635538
  module4.exports = {
@@ -635752,19 +635868,19 @@ var require_output_file = __commonJS({
635752
635868
  var u5 = require_universalify().fromPromise;
635753
635869
  var fs34 = require_fs();
635754
635870
  var path122 = require("path");
635755
- var mkdir48 = require_mkdirs();
635871
+ var mkdir49 = require_mkdirs();
635756
635872
  var pathExists2 = require_path_exists().pathExists;
635757
635873
  async function outputFile(file4, data2, encoding = "utf-8") {
635758
635874
  const dir = path122.dirname(file4);
635759
635875
  if (!await pathExists2(dir)) {
635760
- await mkdir48.mkdirs(dir);
635876
+ await mkdir49.mkdirs(dir);
635761
635877
  }
635762
635878
  return fs34.writeFile(file4, data2, encoding);
635763
635879
  }
635764
635880
  function outputFileSync(file4, ...args) {
635765
635881
  const dir = path122.dirname(file4);
635766
635882
  if (!fs34.existsSync(dir)) {
635767
- mkdir48.mkdirsSync(dir);
635883
+ mkdir49.mkdirsSync(dir);
635768
635884
  }
635769
635885
  fs34.writeFileSync(file4, ...args);
635770
635886
  }
@@ -635897,15 +636013,15 @@ var require_move_sync = __commonJS({
635897
636013
  return parsedPath.root === parent;
635898
636014
  }
635899
636015
  function doRename(src, dest, overwrite, isChangingCase) {
635900
- if (isChangingCase) return rename8(src, dest, overwrite);
636016
+ if (isChangingCase) return rename9(src, dest, overwrite);
635901
636017
  if (overwrite) {
635902
636018
  removeSync(dest);
635903
- return rename8(src, dest, overwrite);
636019
+ return rename9(src, dest, overwrite);
635904
636020
  }
635905
636021
  if (fs34.existsSync(dest)) throw new Error("dest already exists.");
635906
- return rename8(src, dest, overwrite);
636022
+ return rename9(src, dest, overwrite);
635907
636023
  }
635908
- function rename8(src, dest, overwrite) {
636024
+ function rename9(src, dest, overwrite) {
635909
636025
  try {
635910
636026
  fs34.renameSync(src, dest);
635911
636027
  } catch (err) {
@@ -637561,15 +637677,15 @@ var require_sync2 = __commonJS({
637561
637677
  var { readdirSync: readdirSync4, statSync: statSync4 } = require("fs");
637562
637678
  module4.exports = function(start2, callback) {
637563
637679
  let dir = resolve15(".", start2);
637564
- let tmp23, stats = statSync4(dir);
637680
+ let tmp22, stats = statSync4(dir);
637565
637681
  if (!stats.isDirectory()) {
637566
637682
  dir = dirname22(dir);
637567
637683
  }
637568
637684
  while (true) {
637569
- tmp23 = callback(dir, readdirSync4(dir));
637570
- if (tmp23) return resolve15(dir, tmp23);
637571
- dir = dirname22(tmp23 = dir);
637572
- if (tmp23 === dir) break;
637685
+ tmp22 = callback(dir, readdirSync4(dir));
637686
+ if (tmp22) return resolve15(dir, tmp22);
637687
+ dir = dirname22(tmp22 = dir);
637688
+ if (tmp22 === dir) break;
637573
637689
  }
637574
637690
  };
637575
637691
  }
@@ -639681,9 +639797,9 @@ var require_dist26 = __commonJS({
639681
639797
  }
639682
639798
  }
639683
639799
  function bufferizeInt(num) {
639684
- const tmp23 = ensureBuffer(4);
639685
- tmp23.writeInt32BE(num, 0);
639686
- return tmp23;
639800
+ const tmp22 = ensureBuffer(4);
639801
+ tmp22.writeInt32BE(num, 0);
639802
+ return tmp22;
639687
639803
  }
639688
639804
  function _crc32(buf, previous4) {
639689
639805
  buf = ensureBuffer(buf);
@@ -703314,7 +703430,7 @@ var AccessTokenPosthogManager = class {
703314
703430
  properties: {
703315
703431
  ...event,
703316
703432
  ...event.properties,
703317
- version: "5.101.0",
703433
+ version: "5.101.2",
703318
703434
  usingAccessToken: true,
703319
703435
  ...getRunIdProperties()
703320
703436
  }
@@ -703380,7 +703496,7 @@ var UserPosthogManager = class {
703380
703496
  distinctId: this.userId ?? await this.getPersistedDistinctId(),
703381
703497
  event: "CLI",
703382
703498
  properties: {
703383
- version: "5.101.0",
703499
+ version: "5.101.2",
703384
703500
  ...event,
703385
703501
  ...event.properties,
703386
703502
  usingAccessToken: false,
@@ -879058,7 +879174,7 @@ init_lib23();
879058
879174
  init_lib5();
879059
879175
  init_lib6();
879060
879176
  init_source();
879061
- var import_crypto8 = require("crypto");
879177
+ var import_crypto9 = require("crypto");
879062
879178
  var import_path63 = __toESM(require("path"), 1);
879063
879179
 
879064
879180
  // ../yaml/docs-validator/lib/rules/valid-markdown-link/check-if-pathname-exists.js
@@ -879650,7 +879766,7 @@ var ValidMarkdownLinks = {
879650
879766
  context: NOOP_CONTEXT,
879651
879767
  sourceResolver: new SourceResolverImpl(NOOP_CONTEXT, fernWorkspace)
879652
879768
  });
879653
- const api2 = toLatest(convertIrToApiDefinition({ ir: ir3, apiDefinitionId: (0, import_crypto8.randomUUID)(), context: NOOP_CONTEXT }));
879769
+ const api2 = toLatest(convertIrToApiDefinition({ ir: ir3, apiDefinitionId: (0, import_crypto9.randomUUID)(), context: NOOP_CONTEXT }));
879654
879770
  const uniqueDescriptions = collectUniqueDescriptions(api2);
879655
879771
  const violations = [];
879656
879772
  const uniquePathnames = /* @__PURE__ */ new Map();
@@ -884749,20 +884865,20 @@ var import_express3 = __toESM(require_express3(), 1);
884749
884865
  var import_fs30 = __toESM(require("fs"), 1);
884750
884866
  var import_promises107 = require("fs/promises");
884751
884867
  var import_http9 = __toESM(require("http"), 1);
884752
- var import_os11 = __toESM(require("os"), 1);
884868
+ var import_os12 = __toESM(require("os"), 1);
884753
884869
  var import_path74 = __toESM(require("path"), 1);
884754
884870
  init_wrapper();
884755
884871
 
884756
884872
  // ../docs-preview/lib/DebugLogger.js
884757
884873
  init_lib8();
884758
884874
  var import_promises103 = require("fs/promises");
884759
- var import_os9 = require("os");
884875
+ var import_os10 = require("os");
884760
884876
  var import_path71 = __toESM(require("path"), 1);
884761
884877
  var LOCAL_STORAGE_FOLDER4 = ".fern-dev";
884762
884878
  var LOGS_FOLDER_NAME = "logs";
884763
884879
  var MAX_LOGS_DIR_SIZE_BYTES = 100 * 1024 * 1024;
884764
884880
  function getCliSource() {
884765
- const version7 = "5.101.0";
884881
+ const version7 = "5.101.2";
884766
884882
  return `cli@${version7}`;
884767
884883
  }
884768
884884
  var DebugLogger = class {
@@ -884781,7 +884897,7 @@ var DebugLogger = class {
884781
884897
  return;
884782
884898
  }
884783
884899
  this.consoleLogger = consoleLogger;
884784
- const resolvedLogsDir = logsDir ?? join8(join8(AbsoluteFilePath2.of((0, import_os9.homedir)()), RelativeFilePath2.of(LOCAL_STORAGE_FOLDER4)), RelativeFilePath2.of(LOGS_FOLDER_NAME));
884900
+ const resolvedLogsDir = logsDir ?? join8(join8(AbsoluteFilePath2.of((0, import_os10.homedir)()), RelativeFilePath2.of(LOCAL_STORAGE_FOLDER4)), RelativeFilePath2.of(LOGS_FOLDER_NAME));
884785
884901
  if (!await doesPathExist(resolvedLogsDir)) {
884786
884902
  await (0, import_promises103.mkdir)(resolvedLogsDir, { recursive: true });
884787
884903
  }
@@ -886090,11 +886206,11 @@ var WatcherLocker = class _WatcherLocker {
886090
886206
  };
886091
886207
  watcher_locks_resolver_default.add(free, timeout4);
886092
886208
  const resolve15 = () => {
886093
- const unlink11 = locks.unlink.get(ino);
886094
- if (!unlink11)
886209
+ const unlink12 = locks.unlink.get(ino);
886210
+ if (!unlink12)
886095
886211
  return;
886096
886212
  cleanup();
886097
- const targetPathPrev = unlink11();
886213
+ const targetPathPrev = unlink12();
886098
886214
  if (targetPath === targetPathPrev) {
886099
886215
  if (events.change) {
886100
886216
  if (this._watcher._poller.stats.has(targetPath)) {
@@ -886820,9 +886936,9 @@ var import_cli_progress = __toESM(require_cli_progress(), 1);
886820
886936
  var import_decompress = __toESM(require_decompress(), 1);
886821
886937
  var import_fs28 = require("fs");
886822
886938
  var import_promises104 = require("fs/promises");
886823
- var import_os10 = require("os");
886939
+ var import_os11 = require("os");
886824
886940
  var import_path72 = __toESM(require("path"), 1);
886825
- var import_tmp_promise12 = __toESM(require_tmp_promise(), 1);
886941
+ var import_tmp_promise11 = __toESM(require_tmp_promise(), 1);
886826
886942
  var import_xml2js = __toESM(require_xml2js(), 1);
886827
886943
  var PLATFORM_IS_WINDOWS = process.platform === "win32";
886828
886944
  var DOCS_PREFIX = source_default.cyan("[docs]:");
@@ -886971,7 +887087,7 @@ function getLocalStorageFolder(cacheDir) {
886971
887087
  if (cacheDir != null) {
886972
887088
  return cacheDir;
886973
887089
  }
886974
- return join8(AbsoluteFilePath2.of((0, import_os10.homedir)()), RelativeFilePath2.of(LOCAL_STORAGE_FOLDER5));
887090
+ return join8(AbsoluteFilePath2.of((0, import_os11.homedir)()), RelativeFilePath2.of(LOCAL_STORAGE_FOLDER5));
886975
887091
  }
886976
887092
  function getPathToPreviewFolder({ app = false, cacheDir }) {
886977
887093
  return join8(getLocalStorageFolder(cacheDir), RelativeFilePath2.of(app ? APP_PREVIEW_FOLDER_NAME : PREVIEW_FOLDER_NAME));
@@ -887025,7 +887141,7 @@ async function downloadBundle({ bucketUrl, logger: logger4, preferCached, app =
887025
887141
  }
887026
887142
  }
887027
887143
  logger4.debug("Creating tmp directory to download docs preview bundle");
887028
- const dir = await import_tmp_promise12.default.dir({ prefix: "fern" });
887144
+ const dir = await import_tmp_promise11.default.dir({ prefix: "fern" });
887029
887145
  const absoluteDirectoryToTmpDir = AbsoluteFilePath2.of(dir.path);
887030
887146
  const docsBundleUrl = new URL(key2, bucketUrl).href;
887031
887147
  logger4.debug(`Downloading docs preview bundle from ${docsBundleUrl}`);
@@ -888577,7 +888693,7 @@ async function runAppPreviewServer({ initialProject, reloadProject, validateProj
888577
888693
  }
888578
888694
  return translations;
888579
888695
  }
888580
- const genFilePath = import_path74.default.join(import_os11.default.tmpdir(), `fern-docs-dev-gen-${backendPort}`);
888696
+ const genFilePath = import_path74.default.join(import_os12.default.tmpdir(), `fern-docs-dev-gen-${backendPort}`);
888581
888697
  const generationManager = new GenerationFileManager(genFilePath);
888582
888698
  const reloadDocsDefinition = async (editedAbsoluteFilepaths2) => {
888583
888699
  context3.logger.info("Reloading docs...");
@@ -904299,7 +904415,7 @@ var import_promises115 = require("fs/promises");
904299
904415
  var import_node_path39 = require("path");
904300
904416
  init_lib70();
904301
904417
  init_lib6();
904302
- var import_tmp_promise14 = __toESM(require_tmp_promise(), 1);
904418
+ var import_tmp_promise13 = __toESM(require_tmp_promise(), 1);
904303
904419
  var PARSER_IMAGES = {
904304
904420
  PYTHON: "fernenterprise/fern-python-library-docs-parser",
904305
904421
  CPP: "fernenterprise/fern-cpp-library-docs-parser"
@@ -904320,8 +904436,8 @@ var PARSER_CLI_COMMAND = ["python", "-m", "src.cli_entrypoint"];
904320
904436
  async function runLocalParser({ context: context3, sourcePath, language, config: config5 }) {
904321
904437
  const imageName = getParserImage(language);
904322
904438
  const isDefaultImage = imageName.endsWith(`:${PARSER_IMAGE_TAG}`);
904323
- const outputDir = await import_tmp_promise14.default.dir({ unsafeCleanup: true });
904324
- const configFile = await import_tmp_promise14.default.file({ postfix: ".json" });
904439
+ const outputDir = await import_tmp_promise13.default.dir({ unsafeCleanup: true });
904440
+ const configFile = await import_tmp_promise13.default.file({ postfix: ".json" });
904325
904441
  try {
904326
904442
  await (0, import_promises115.writeFile)(configFile.path, JSON.stringify({
904327
904443
  packagePath: config5.packagePath,
@@ -905589,7 +905705,7 @@ init_lib8();
905589
905705
  var import_autoversion = __toESM(require_autoversion(), 1);
905590
905706
  init_lib6();
905591
905707
  init_axios2();
905592
- var import_crypto9 = require("crypto");
905708
+ var import_crypto10 = require("crypto");
905593
905709
  var import_form_data4 = __toESM(require_form_data(), 1);
905594
905710
  var import_path81 = __toESM(require("path"), 1);
905595
905711
 
@@ -905625,7 +905741,7 @@ terminalLink.stderr = (text9, url3, options2 = {}) => terminalLink(text9, url3,
905625
905741
  terminalLink.stderr.isSupported = import_supports_hyperlinks.default.stderr;
905626
905742
 
905627
905743
  // ../generation/remote-generation/remote-workspace-runner/lib/RemoteTaskHandler.js
905628
- var import_tmp_promise15 = __toESM(require_tmp_promise(), 1);
905744
+ var import_tmp_promise14 = __toESM(require_tmp_promise(), 1);
905629
905745
  var import_yauzl = __toESM(require_yauzl(), 1);
905630
905746
 
905631
905747
  // ../generation/remote-generation/remote-workspace-runner/lib/publishTarget.js
@@ -905975,7 +906091,7 @@ async function downloadZipForTask({ s3PreSignedReadUrl, absolutePathToLocalOutpu
905975
906091
  timeout: 6e4,
905976
906092
  signal: AbortSignal.timeout(S3_DOWNLOAD_TIMEOUT_MS)
905977
906093
  });
905978
- const tmpDir = await import_tmp_promise15.default.dir({ prefix: "fern", unsafeCleanup: true });
906094
+ const tmpDir = await import_tmp_promise14.default.dir({ prefix: "fern", unsafeCleanup: true });
905979
906095
  const outputZipPath = import_path80.default.join(tmpDir.path, "output.zip");
905980
906096
  await (0, import_promises119.pipeline)(request7.data, (0, import_fs36.createWriteStream)(outputZipPath));
905981
906097
  await forceRemoveDirectory(absolutePathToLocalOutput);
@@ -906045,7 +906161,7 @@ async function downloadFilesWithFernIgnoreInExistingRepo({ s3PreSignedReadUrl, a
906045
906161
  await runGitCommand(["restore", "."], absolutePathToLocalOutput, context3);
906046
906162
  }
906047
906163
  async function downloadFilesWithFernIgnoreInTempRepo({ s3PreSignedReadUrl, absolutePathToLocalOutput, context: context3 }) {
906048
- const tmpOutputResolutionDir = AbsoluteFilePath2.of((await import_tmp_promise15.default.dir({})).path);
906164
+ const tmpOutputResolutionDir = AbsoluteFilePath2.of((await import_tmp_promise14.default.dir({})).path);
906049
906165
  const absolutePathToFernignore = join8(absolutePathToLocalOutput, RelativeFilePath2.of(FERNIGNORE_FILENAME));
906050
906166
  const fernIgnorePaths = await getFernIgnorePaths({ absolutePathToFernignore });
906051
906167
  await (0, import_promises118.cp)(absolutePathToLocalOutput, tmpOutputResolutionDir, { recursive: true });
@@ -906079,7 +906195,7 @@ async function downloadAndExtractZipToDirectory({ s3PreSignedReadUrl, outputPath
906079
906195
  timeout: 6e4,
906080
906196
  signal: AbortSignal.timeout(S3_DOWNLOAD_TIMEOUT_MS)
906081
906197
  });
906082
- const tmpDir = await import_tmp_promise15.default.dir({ prefix: "fern", unsafeCleanup: true });
906198
+ const tmpDir = await import_tmp_promise14.default.dir({ prefix: "fern", unsafeCleanup: true });
906083
906199
  const outputZipPath = import_path80.default.join(tmpDir.path, "output.zip");
906084
906200
  await (0, import_promises119.pipeline)(request7.data, (0, import_fs36.createWriteStream)(outputZipPath));
906085
906201
  await extractZipToDirectory(outputZipPath, outputPath);
@@ -906581,9 +906697,9 @@ function assertSameBatchInput(participants) {
906581
906697
  if (first3 == null) {
906582
906698
  return;
906583
906699
  }
906584
- const sourceHash = (0, import_crypto9.createHash)("sha256").update(first3.specsTarGzBuffer).digest("hex");
906700
+ const sourceHash = (0, import_crypto10.createHash)("sha256").update(first3.specsTarGzBuffer).digest("hex");
906585
906701
  for (const participant of participants.slice(1)) {
906586
- const participantSourceHash = (0, import_crypto9.createHash)("sha256").update(participant.specsTarGzBuffer).digest("hex");
906702
+ const participantSourceHash = (0, import_crypto10.createHash)("sha256").update(participant.specsTarGzBuffer).digest("hex");
906587
906703
  if (participant.apiName !== first3.apiName || participant.organization !== first3.organization || participant.token.value !== first3.token.value || participantSourceHash !== sourceHash) {
906588
906704
  throw new Error("Fern sdk-gen-api batch targets must share API, organization, token, and sources");
906589
906705
  }
@@ -906599,7 +906715,7 @@ function createFernSdkGenApiBatchRequest({ apiName, organization, cliVersion, sp
906599
906715
  throw new Error(`Unsupported Fern SDK generator: ${generatorInvocation.name}`);
906600
906716
  }
906601
906717
  const output2 = mapFernSdkGenApiOutput(generatorInvocation);
906602
- const targetId = (0, import_crypto9.createHash)("sha256").update(`${apiName}:${generatorInvocation.name}:${generatorInvocation.version}:${targetIdSeed ?? index3.toString()}`).digest("hex").slice(0, 20);
906718
+ const targetId = (0, import_crypto10.createHash)("sha256").update(`${apiName}:${generatorInvocation.name}:${generatorInvocation.version}:${targetIdSeed ?? index3.toString()}`).digest("hex").slice(0, 20);
906603
906719
  return {
906604
906720
  targetId,
906605
906721
  apiInputId: "default",
@@ -906629,7 +906745,7 @@ function createFernSdkGenApiBatchRequest({ apiName, organization, cliVersion, sp
906629
906745
  };
906630
906746
  });
906631
906747
  const apiInputs = [{ id: "default", specIndexes: "all" }];
906632
- const idempotencyKey = (0, import_crypto9.createHash)("sha256").update(specsTarGzBuffer).update(JSON.stringify({
906748
+ const idempotencyKey = (0, import_crypto10.createHash)("sha256").update(specsTarGzBuffer).update(JSON.stringify({
906633
906749
  protocolVersion: 1,
906634
906750
  organization,
906635
906751
  apiName,
@@ -907705,7 +907821,7 @@ init_lib9();
907705
907821
  init_lib18();
907706
907822
  init_lib6();
907707
907823
  var import_promises123 = require("fs/promises");
907708
- var import_tmp_promise16 = __toESM(require_tmp_promise(), 1);
907824
+ var import_tmp_promise15 = __toESM(require_tmp_promise(), 1);
907709
907825
  var PROTOBUF_ZIP_FILENAME = "proto.zip";
907710
907826
  var SourceUploader = class {
907711
907827
  sourceTypes;
@@ -907765,7 +907881,7 @@ var SourceUploader = class {
907765
907881
  };
907766
907882
  }
907767
907883
  async zipSource(absolutePathToSource) {
907768
- const tmpDir = await import_tmp_promise16.default.dir();
907884
+ const tmpDir = await import_tmp_promise15.default.dir();
907769
907885
  const destination = join8(AbsoluteFilePath2.of(tmpDir.path), RelativeFilePath2.of(PROTOBUF_ZIP_FILENAME));
907770
907886
  this.context.logger.debug(`Zipping source ${absolutePathToSource} into ${destination}`);
907771
907887
  await loggingExeca(this.context.logger, "zip", ["-r", destination, "."], {
@@ -908570,7 +908686,7 @@ init_lib68();
908570
908686
  init_lib6();
908571
908687
  init_axios2();
908572
908688
  init_source();
908573
- var import_crypto11 = require("crypto");
908689
+ var import_crypto12 = require("crypto");
908574
908690
  var import_promises127 = require("fs/promises");
908575
908691
  init_lodash();
908576
908692
  var mime3 = __toESM(require_mime_types(), 1);
@@ -908645,7 +908761,7 @@ function normalizeRepoUrlToHttps(repo, provider) {
908645
908761
  init_lib69();
908646
908762
  init_js();
908647
908763
  init_lib68();
908648
- var import_crypto10 = require("crypto");
908764
+ var import_crypto11 = require("crypto");
908649
908765
  var import_promises126 = require("fs/promises");
908650
908766
  var mime2 = __toESM(require_mime_types(), 1);
908651
908767
 
@@ -908866,7 +908982,7 @@ var TRANSLATION_BUILD_CONCURRENCY = 4;
908866
908982
  var UPLOAD_MAX_RETRIES = 3;
908867
908983
  var UPLOAD_INITIAL_DELAY_MS = 1e3;
908868
908984
  function sha256(data2) {
908869
- return (0, import_crypto10.createHash)("sha256").update(data2).digest("hex");
908985
+ return (0, import_crypto11.createHash)("sha256").update(data2).digest("hex");
908870
908986
  }
908871
908987
  var FILE_REF_PATTERN = /file:([^\s"'<>)}\]]+)/g;
908872
908988
  function extractReferencedFiles(markdown) {
@@ -909335,7 +909451,7 @@ function sanitizeRelativePathForS3(relativeFilePath) {
909335
909451
  }
909336
909452
  async function readAndHashFile(absoluteFilePath) {
909337
909453
  const buffer = await (0, import_promises127.readFile)(absoluteFilePath);
909338
- const hash5 = (0, import_crypto11.createHash)("sha256").update(new Uint8Array(buffer)).digest("hex");
909454
+ const hash5 = (0, import_crypto12.createHash)("sha256").update(new Uint8Array(buffer)).digest("hex");
909339
909455
  return { buffer, hash: hash5 };
909340
909456
  }
909341
909457
  async function publishDocs({ token, organization, docsWorkspace, domain: domain3, customDomains, apiWorkspaces, ossWorkspaces, context: context3, preview, previewId, editThisPage, disableTemplates = false, skipUpload = false, withAiExamples = true, excludeApis = false, targetAudiences, docsUrl, cliVersion, ciSource, deployerAuthor, loginCommand = "fern login", multiSource = false }) {
@@ -910682,7 +910798,7 @@ var LegacyDocsPublisher = class {
910682
910798
  previewId,
910683
910799
  disableTemplates: void 0,
910684
910800
  skipUpload,
910685
- cliVersion: "5.101.0",
910801
+ cliVersion: "5.101.2",
910686
910802
  loginCommand: "fern auth login"
910687
910803
  });
910688
910804
  if (taskContext.getResult() === TaskResult.Failure) {
@@ -914058,7 +914174,7 @@ init_js_yaml();
914058
914174
  init_lib8();
914059
914175
  init_lib6();
914060
914176
  var import_promises130 = require("fs/promises");
914061
- var import_os12 = require("os");
914177
+ var import_os13 = require("os");
914062
914178
  var import_path88 = __toESM(require("path"), 1);
914063
914179
 
914064
914180
  // ../cli-v2/lib/api/resolver/ApiSpecDetector.js
@@ -914134,7 +914250,7 @@ var ApiSpecResolver = class {
914134
914250
  });
914135
914251
  }
914136
914252
  const extension4 = this.inferExtensionFromContent(content5);
914137
- const tempDir2 = await (0, import_promises130.mkdtemp)(import_path88.default.join((0, import_os12.tmpdir)(), "fern-"));
914253
+ const tempDir2 = await (0, import_promises130.mkdtemp)(import_path88.default.join((0, import_os13.tmpdir)(), "fern-"));
914138
914254
  const absoluteFilePath = AbsoluteFilePath2.of(import_path88.default.join(tempDir2, `spec${extension4}`));
914139
914255
  await (0, import_promises130.writeFile)(absoluteFilePath, content5, "utf-8");
914140
914256
  const specType = await this.detector.detect({ absoluteFilePath, content: content5, reference: "stdin" });
@@ -914152,7 +914268,7 @@ var ApiSpecResolver = class {
914152
914268
  async resolveUrl({ reference: reference4 }) {
914153
914269
  const { content: content5, contentType } = await this.fetchContent({ url: reference4 });
914154
914270
  const extension4 = this.inferExtension({ url: reference4, contentType });
914155
- const tempDir2 = await (0, import_promises130.mkdtemp)(import_path88.default.join((0, import_os12.tmpdir)(), "fern-"));
914271
+ const tempDir2 = await (0, import_promises130.mkdtemp)(import_path88.default.join((0, import_os13.tmpdir)(), "fern-"));
914156
914272
  const absoluteFilePath = AbsoluteFilePath2.of(import_path88.default.join(tempDir2, `spec${extension4}`));
914157
914273
  await (0, import_promises130.writeFile)(absoluteFilePath, content5, "utf-8");
914158
914274
  const specType = await this.detector.detect({ absoluteFilePath, content: content5, reference: reference4 });
@@ -964042,7 +964158,7 @@ var import_serialization = __toESM(require_serialization3(), 1);
964042
964158
  var import_promises143 = require("fs/promises");
964043
964159
  var path104 = __toESM(require("path"), 1);
964044
964160
  var import_path100 = require("path");
964045
- var import_tmp_promise19 = __toESM(require_tmp_promise(), 1);
964161
+ var import_tmp_promise18 = __toESM(require_tmp_promise(), 1);
964046
964162
 
964047
964163
  // ../generation/local-generation/local-workspace-runner/lib/applyTypeRelocations.js
964048
964164
  init_lib8();
@@ -964635,10 +964751,10 @@ init_lib18();
964635
964751
  init_lib6();
964636
964752
  var import_decompress2 = __toESM(require_decompress(), 1);
964637
964753
  var import_promises141 = require("fs/promises");
964638
- var import_os13 = require("os");
964754
+ var import_os14 = require("os");
964639
964755
  var import_path98 = require("path");
964640
964756
  var import_semver13 = __toESM(require_semver2(), 1);
964641
- var import_tmp_promise17 = __toESM(require_tmp_promise(), 1);
964757
+ var import_tmp_promise16 = __toESM(require_tmp_promise(), 1);
964642
964758
 
964643
964759
  // ../generation/local-generation/local-workspace-runner/lib/sanitizeChangelogEntry.js
964644
964760
  init_lib4();
@@ -965151,7 +965267,7 @@ var LocalTaskHandler = class {
965151
965267
  await this.runGitCommand(["restore", "."], this.absolutePathToLocalOutput);
965152
965268
  }
965153
965269
  async copyGeneratedFilesWithFernIgnoreInTempRepo() {
965154
- const tmpOutputResolutionDir = AbsoluteFilePath2.of((await import_tmp_promise17.default.dir({})).path);
965270
+ const tmpOutputResolutionDir = AbsoluteFilePath2.of((await import_tmp_promise16.default.dir({})).path);
965155
965271
  const absolutePathToFernignore = AbsoluteFilePath2.of(join8(this.absolutePathToLocalOutput, RelativeFilePath2.of(FERNIGNORE_FILENAME)));
965156
965272
  const fernIgnorePaths = await getFernIgnorePaths({ absolutePathToFernignore });
965157
965273
  const pathsToPreserve = await this.getPathsToPreserve(fernIgnorePaths);
@@ -965411,7 +965527,7 @@ var LocalTaskHandler = class {
965411
965527
  * when the copy path does not stage files (copyGeneratedFilesNoFernIgnorePreservingGit).
965412
965528
  */
965413
965529
  async generateDiffFile() {
965414
- const diffFile = (0, import_path98.join)((0, import_os13.tmpdir)(), `git-diff-${Date.now()}.patch`);
965530
+ const diffFile = (0, import_path98.join)((0, import_os14.tmpdir)(), `git-diff-${Date.now()}.patch`);
965415
965531
  await this.runGitCommand(["add", "-N", "."], this.absolutePathToLocalOutput);
965416
965532
  await this.runGitCommand(["diff", "HEAD", "--output", diffFile, "--", ".", ":(exclude).fern/metadata.json"], this.absolutePathToLocalOutput);
965417
965533
  this.context.logger.info(`Generated git diff to file: ${diffFile}`);
@@ -965435,7 +965551,7 @@ var import_promises142 = require("fs/promises");
965435
965551
  init_js_yaml();
965436
965552
  var import_path99 = __toESM(require("path"), 1);
965437
965553
  init_index_min2();
965438
- var import_tmp_promise18 = __toESM(require_tmp_promise(), 1);
965554
+ var import_tmp_promise17 = __toESM(require_tmp_promise(), 1);
965439
965555
  async function collectRawSpecs({ specs, hostOutputDir, containerBaseDir, context: context3, audiences }) {
965440
965556
  const manifest = { specs: [] };
965441
965557
  if (specs.length === 0) {
@@ -965682,7 +965798,7 @@ function hasOperations(pathItem) {
965682
965798
  return Object.keys(pathItem).some((key2) => HTTP_METHODS3.has(key2.toLowerCase()));
965683
965799
  }
965684
965800
  async function createSpecsTarGzBuffer({ specs, context: context3, audiences }) {
965685
- const tmpDir = await import_tmp_promise18.default.dir({ unsafeCleanup: true });
965801
+ const tmpDir = await import_tmp_promise17.default.dir({ unsafeCleanup: true });
965686
965802
  try {
965687
965803
  const manifest = await collectRawSpecs({
965688
965804
  specs,
@@ -965871,7 +965987,7 @@ async function writeIrToFile({ ir: ir3, workspaceTempDir, filename, context: con
965871
965987
  if (filename) {
965872
965988
  absolutePathToIr = AbsoluteFilePath2.of((0, import_path100.join)(workspaceTempDir.path, filename));
965873
965989
  } else {
965874
- const irFile = await import_tmp_promise19.default.file({
965990
+ const irFile = await import_tmp_promise18.default.file({
965875
965991
  tmpdir: workspaceTempDir.path
965876
965992
  });
965877
965993
  absolutePathToIr = AbsoluteFilePath2.of(irFile.path);
@@ -965914,9 +966030,9 @@ init_lib6();
965914
966030
  init_lib65();
965915
966031
  init_source();
965916
966032
  var fs30 = __toESM(require("fs/promises"), 1);
965917
- var import_os14 = __toESM(require("os"), 1);
966033
+ var import_os15 = __toESM(require("os"), 1);
965918
966034
  var import_path101 = __toESM(require("path"), 1);
965919
- var import_tmp_promise20 = __toESM(require_tmp_promise(), 1);
966035
+ var import_tmp_promise19 = __toESM(require_tmp_promise(), 1);
965920
966036
 
965921
966037
  // ../generation/local-generation/local-workspace-runner/lib/getGeneratorOutputSubfolder.js
965922
966038
  function getGeneratorOutputSubfolder(generatorName) {
@@ -966052,7 +966168,7 @@ async function runLocalGenerationForWorkspace({ token, projectConfig, workspace,
966052
966168
  intermediateRepresentation.publishConfig = publishConfig;
966053
966169
  }
966054
966170
  const absolutePathToPreviewForGenerator = resolveAbsolutePathToLocalPreview(absolutePathToPreview, generatorInvocation);
966055
- const absolutePathToLocalOutput = absolutePathToPreviewForGenerator ?? generatorInvocation.absolutePathToLocalOutput ?? AbsoluteFilePath2.of(await import_tmp_promise20.default.dir().then((dir) => dir.path));
966171
+ const absolutePathToLocalOutput = absolutePathToPreviewForGenerator ?? generatorInvocation.absolutePathToLocalOutput ?? AbsoluteFilePath2.of(await import_tmp_promise19.default.dir().then((dir) => dir.path));
966056
966172
  const selfhostedGithubConfig = getSelfhostedGithubConfig(generatorInvocation, absolutePathToPreviewForGenerator != null);
966057
966173
  if (version7 != null && (0, import_autoversion5.isAutoVersion)(version7)) {
966058
966174
  if (selfhostedGithubConfig == null) {
@@ -966264,10 +966380,10 @@ function resolveAbsolutePathToLocalPreview(absolutePathToPreview, generatorInvoc
966264
966380
  return join8(absolutePathToPreview, RelativeFilePath2.of(subfolderName));
966265
966381
  }
966266
966382
  async function getWorkspaceTempDir() {
966267
- return import_tmp_promise20.default.dir({
966383
+ return import_tmp_promise19.default.dir({
966268
966384
  // use the /private prefix on osx so that docker can access the tmpdir
966269
966385
  // see https://stackoverflow.com/a/45123074
966270
- tmpdir: import_os14.default.platform() === "darwin" ? import_path101.default.join("/private", import_os14.default.tmpdir()) : void 0,
966386
+ tmpdir: import_os15.default.platform() === "darwin" ? import_path101.default.join("/private", import_os15.default.tmpdir()) : void 0,
966271
966387
  prefix: "fern"
966272
966388
  });
966273
966389
  }
@@ -967043,7 +967159,7 @@ init_lib8();
967043
967159
  init_lib5();
967044
967160
  init_lib6();
967045
967161
  var import_promises146 = require("fs/promises");
967046
- var import_os15 = require("os");
967162
+ var import_os16 = require("os");
967047
967163
  var LegacyRemoteGenerationRunner = class {
967048
967164
  context;
967049
967165
  cliVersion;
@@ -967136,7 +967252,7 @@ var LegacyRemoteGenerationRunner = class {
967136
967252
  }
967137
967253
  async getAbsolutePathToPreview(args) {
967138
967254
  if (this.isLocalGitCombo(args)) {
967139
- const tmpPreviewDirectory = await (0, import_promises146.mkdtemp)(join8(AbsoluteFilePath2.of((0, import_os15.tmpdir)()), RelativeFilePath2.of("fern-preview-")));
967255
+ const tmpPreviewDirectory = await (0, import_promises146.mkdtemp)(join8(AbsoluteFilePath2.of((0, import_os16.tmpdir)()), RelativeFilePath2.of("fern-preview-")));
967140
967256
  return AbsoluteFilePath2.of(tmpPreviewDirectory);
967141
967257
  }
967142
967258
  if (!args.preview) {
@@ -974111,7 +974227,7 @@ init_axios2();
974111
974227
  var import_promises161 = require("fs/promises");
974112
974228
  init_js_yaml();
974113
974229
  var import_path107 = require("path");
974114
- var import_tmp_promise21 = __toESM(require_tmp_promise(), 1);
974230
+ var import_tmp_promise20 = __toESM(require_tmp_promise(), 1);
974115
974231
  var LoadOpenAPIStatus;
974116
974232
  (function(LoadOpenAPIStatus2) {
974117
974233
  LoadOpenAPIStatus2["Success"] = "success";
@@ -974120,7 +974236,7 @@ var LoadOpenAPIStatus;
974120
974236
  async function loadOpenAPIFromUrl({ url: url3, logger: logger4 }) {
974121
974237
  try {
974122
974238
  const data2 = await fetchOpenAPIFromUrl({ url: url3, logger: logger4 });
974123
- const tmpDir = await import_tmp_promise21.default.dir();
974239
+ const tmpDir = await import_tmp_promise20.default.dir();
974124
974240
  const filePath = (0, import_path107.join)(tmpDir.path, url3.endsWith(".json") ? "openapi.json" : "openapi.yaml");
974125
974241
  logger4.debug("tmpDir", tmpDir.path);
974126
974242
  logger4.debug("filePath", filePath);
@@ -978053,7 +978169,7 @@ function getAutomationContextFromEnv() {
978053
978169
  config_branch: process.env.FERN_CONFIG_BRANCH,
978054
978170
  config_pr_number: process.env.FERN_CONFIG_PR_NUMBER,
978055
978171
  trigger: process.env.GITHUB_EVENT_NAME,
978056
- cli_version: "5.101.0"
978172
+ cli_version: "5.101.2"
978057
978173
  };
978058
978174
  }
978059
978175
  function isAutomationMode() {
@@ -978885,7 +979001,7 @@ var CliContext = class _CliContext {
978885
979001
  if (false) {
978886
979002
  this.logger.error("CLI_VERSION is not defined");
978887
979003
  }
978888
- return "5.101.0";
979004
+ return "5.101.2";
978889
979005
  }
978890
979006
  getCliName() {
978891
979007
  if (false) {
@@ -979387,13 +979503,13 @@ init_lib18();
979387
979503
  init_lib6();
979388
979504
  var import_fs40 = require("fs");
979389
979505
  var import_promises164 = require("fs/promises");
979390
- var import_os16 = require("os");
979506
+ var import_os17 = require("os");
979391
979507
  var import_path108 = require("path");
979392
979508
  var import_semver15 = __toESM(require_semver2(), 1);
979393
979509
  var import_url10 = require("url");
979394
979510
  var MIGRATION_PACKAGE_NAME2 = "@fern-api/generator-migrations";
979395
979511
  function getMigrationCacheDir() {
979396
- return (0, import_path108.join)((0, import_os16.homedir)(), ".fern", "migration-cache");
979512
+ return (0, import_path108.join)((0, import_os17.homedir)(), ".fern", "migration-cache");
979397
979513
  }
979398
979514
  var LOCK_FILENAME = ".install.lock";
979399
979515
  var LOCK_POLL_MS = 200;
@@ -980439,10 +980555,10 @@ var import_promises168 = require("fs/promises");
980439
980555
 
980440
980556
  // src/persistence/output-directories/getPathToOutputDirectoriesFile.ts
980441
980557
  init_lib8();
980442
- var import_os17 = require("os");
980558
+ var import_os18 = require("os");
980443
980559
  function getPathToOutputDirectoriesFile() {
980444
980560
  return join8(
980445
- AbsoluteFilePath2.of((0, import_os17.homedir)()),
980561
+ AbsoluteFilePath2.of((0, import_os18.homedir)()),
980446
980562
  RelativeFilePath2.of(LOCAL_STORAGE_FOLDER6),
980447
980563
  RelativeFilePath2.of(APPROVED_DIRECTORIES_FILENAME)
980448
980564
  );
@@ -988812,7 +988928,7 @@ var import_path114 = __toESM(require("path"), 1);
988812
988928
  init_lib8();
988813
988929
  init_lib6();
988814
988930
  var import_child_process13 = require("child_process");
988815
- var import_crypto12 = require("crypto");
988931
+ var import_crypto13 = require("crypto");
988816
988932
  var import_promises205 = require("fs/promises");
988817
988933
  var import_mime_types2 = __toESM(require_mime_types(), 1);
988818
988934
  var import_path113 = __toESM(require("path"), 1);
@@ -989028,7 +989144,7 @@ ${errors4.map((e2) => ` - ${e2}`).join("\n")}`,
989028
989144
  return this.uploadToCas(content5, contentType, bindPath, import_path113.default.basename(absolutePath));
989029
989145
  }
989030
989146
  async uploadToCas(content5, contentType, bindPath, label) {
989031
- const hash5 = (0, import_crypto12.createHash)("sha256").update(content5).digest("hex");
989147
+ const hash5 = (0, import_crypto13.createHash)("sha256").update(content5).digest("hex");
989032
989148
  const casUrl = `${FDR_ORIGIN}/v2/registry/content/${encodeURIComponent(this.orgId)}/${hash5}`;
989033
989149
  this.context.logger.debug(` CAS check: PUT ${casUrl} (${contentType}, ${content5.byteLength} bytes)`);
989034
989150
  let checkRes;
@@ -992073,7 +992189,7 @@ init_lib6();
992073
992189
  init_source();
992074
992190
  var import_fs43 = require("fs");
992075
992191
  var import_promises212 = require("fs/promises");
992076
- var import_os18 = require("os");
992192
+ var import_os19 = require("os");
992077
992193
  var import_path120 = __toESM(require("path"), 1);
992078
992194
 
992079
992195
  // src/commands/mcp/mcpConfig.ts
@@ -992176,7 +992292,7 @@ function toTomlString(value2) {
992176
992292
 
992177
992293
  // src/commands/mcp/installMcpServer.ts
992178
992294
  function getClientTarget(client3) {
992179
- const home = (0, import_os18.homedir)();
992295
+ const home = (0, import_os19.homedir)();
992180
992296
  switch (client3) {
992181
992297
  case "claude":
992182
992298
  return {
@@ -993106,7 +993222,7 @@ init_axios2();
993106
993222
  var import_promises214 = require("fs/promises");
993107
993223
  var import_path121 = __toESM(require("path"), 1);
993108
993224
  init_index_min2();
993109
- var import_tmp_promise22 = __toESM(require_tmp_promise(), 1);
993225
+ var import_tmp_promise21 = __toESM(require_tmp_promise(), 1);
993110
993226
  async function registerWorkspacesV1({
993111
993227
  project,
993112
993228
  cliContext,
@@ -993152,7 +993268,7 @@ async function registerWorkspacesV1({
993152
993268
  });
993153
993269
  return;
993154
993270
  }
993155
- const tmpDir = await import_tmp_promise22.default.dir();
993271
+ const tmpDir = await import_tmp_promise21.default.dir();
993156
993272
  const tarPath = import_path121.default.join(tmpDir.path, "definition.tgz");
993157
993273
  context3.logger.debug(`Compressing definition at ${tmpDir.path}`);
993158
993274
  await Kn({ file: tarPath, cwd: resolvedWorkspace.absoluteFilePath }, ["."]);
@@ -993462,7 +993578,7 @@ function computePreviewVersion({ previewId }) {
993462
993578
 
993463
993579
  // src/commands/sdk-preview/getPreviewId.ts
993464
993580
  var import_child_process15 = require("child_process");
993465
- var import_crypto13 = require("crypto");
993581
+ var import_crypto14 = require("crypto");
993466
993582
  var import_util71 = require("util");
993467
993583
  var execAsync2 = (0, import_util71.promisify)(import_child_process15.exec);
993468
993584
  var MAX_PREVIEW_ID_LENGTH = 40;
@@ -993486,7 +993602,7 @@ function sanitizeBranchName(branch) {
993486
993602
  return branch.toLowerCase().replace(/[^a-z0-9-]/g, "-").replace(/-+/g, "-").replace(/^-|-$/g, "").slice(0, MAX_PREVIEW_ID_LENGTH).replace(/-$/, "");
993487
993603
  }
993488
993604
  function generateRandomId() {
993489
- return (0, import_crypto13.randomBytes)(4).toString("hex");
993605
+ return (0, import_crypto14.randomBytes)(4).toString("hex");
993490
993606
  }
993491
993607
 
993492
993608
  // src/commands/sdk-preview/toPreviewPackageName.ts