@cparra/apexdocs 3.14.0 → 3.15.0-alpha.1

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.
@@ -5,14 +5,17 @@ var TE = require('fp-ts/TaskEither');
5
5
  var E = require('fp-ts/Either');
6
6
  var yaml = require('js-yaml');
7
7
  var path = require('path');
8
- var T = require('fp-ts/Task');
9
- var A = require('fp-ts/lib/Array');
10
- var apexReflection = require('@cparra/apex-reflection');
11
8
  var O = require('fp-ts/Option');
12
- var fastXmlParser = require('fast-xml-parser');
13
9
  var Handlebars = require('handlebars');
14
10
  var boolean = require('fp-ts/boolean');
15
- var A$1 = require('fp-ts/Array');
11
+ var fastXmlParser = require('fast-xml-parser');
12
+ var T = require('fp-ts/Task');
13
+ var A = require('fp-ts/Array');
14
+ var worker_threads = require('worker_threads');
15
+ var os = require('os');
16
+ var A$1 = require('fp-ts/lib/Array');
17
+ var apexReflection = require('@cparra/apex-reflection');
18
+ var uuid = require('uuid');
16
19
  var fs = require('fs');
17
20
  var TE$1 = require('fp-ts/lib/TaskEither');
18
21
  var minimatch = require('minimatch');
@@ -40,9 +43,9 @@ var TE__namespace = /*#__PURE__*/_interopNamespaceDefault(TE);
40
43
  var E__namespace = /*#__PURE__*/_interopNamespaceDefault(E);
41
44
  var yaml__namespace = /*#__PURE__*/_interopNamespaceDefault(yaml);
42
45
  var path__namespace = /*#__PURE__*/_interopNamespaceDefault(path);
46
+ var O__namespace = /*#__PURE__*/_interopNamespaceDefault(O);
43
47
  var T__namespace = /*#__PURE__*/_interopNamespaceDefault(T);
44
48
  var A__namespace = /*#__PURE__*/_interopNamespaceDefault(A);
45
- var O__namespace = /*#__PURE__*/_interopNamespaceDefault(O);
46
49
  var A__namespace$1 = /*#__PURE__*/_interopNamespaceDefault(A$1);
47
50
  var fs__namespace = /*#__PURE__*/_interopNamespaceDefault(fs);
48
51
  var TE__namespace$1 = /*#__PURE__*/_interopNamespaceDefault(TE$1);
@@ -173,19 +176,19 @@ const defaultTranslations = {
173
176
  }
174
177
  };
175
178
 
176
- var __defProp$q = Object.defineProperty;
177
- var __getOwnPropSymbols$q = Object.getOwnPropertySymbols;
178
- var __hasOwnProp$q = Object.prototype.hasOwnProperty;
179
- var __propIsEnum$q = Object.prototype.propertyIsEnumerable;
180
- var __defNormalProp$q = (obj, key, value) => key in obj ? __defProp$q(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
181
- var __spreadValues$q = (a, b) => {
179
+ var __defProp$t = Object.defineProperty;
180
+ var __getOwnPropSymbols$t = Object.getOwnPropertySymbols;
181
+ var __hasOwnProp$t = Object.prototype.hasOwnProperty;
182
+ var __propIsEnum$t = Object.prototype.propertyIsEnumerable;
183
+ var __defNormalProp$t = (obj, key, value) => key in obj ? __defProp$t(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
184
+ var __spreadValues$t = (a, b) => {
182
185
  for (var prop in b || (b = {}))
183
- if (__hasOwnProp$q.call(b, prop))
184
- __defNormalProp$q(a, prop, b[prop]);
185
- if (__getOwnPropSymbols$q)
186
- for (var prop of __getOwnPropSymbols$q(b)) {
187
- if (__propIsEnum$q.call(b, prop))
188
- __defNormalProp$q(a, prop, b[prop]);
186
+ if (__hasOwnProp$t.call(b, prop))
187
+ __defNormalProp$t(a, prop, b[prop]);
188
+ if (__getOwnPropSymbols$t)
189
+ for (var prop of __getOwnPropSymbols$t(b)) {
190
+ if (__propIsEnum$t.call(b, prop))
191
+ __defNormalProp$t(a, prop, b[prop]);
189
192
  }
190
193
  return a;
191
194
  };
@@ -201,7 +204,7 @@ function isObjectWithStringKeys(value) {
201
204
  return value !== null && typeof value === "object" && !Array.isArray(value);
202
205
  }
203
206
  function deepMerge(target, source) {
204
- const result = __spreadValues$q({}, target);
207
+ const result = __spreadValues$t({}, target);
205
208
  for (const key in source) {
206
209
  if (Object.prototype.hasOwnProperty.call(source, key)) {
207
210
  const sourceValue = source[key];
@@ -315,25 +318,25 @@ function isInlineCode(content) {
315
318
  return Object.keys(content).includes("__type") && content.__type === "inline-code";
316
319
  }
317
320
 
318
- var __defProp$p = Object.defineProperty;
319
- var __defProps$p = Object.defineProperties;
320
- var __getOwnPropDescs$p = Object.getOwnPropertyDescriptors;
321
- var __getOwnPropSymbols$p = Object.getOwnPropertySymbols;
322
- var __hasOwnProp$p = Object.prototype.hasOwnProperty;
323
- var __propIsEnum$p = Object.prototype.propertyIsEnumerable;
324
- var __defNormalProp$p = (obj, key, value) => key in obj ? __defProp$p(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
325
- var __spreadValues$p = (a, b) => {
321
+ var __defProp$s = Object.defineProperty;
322
+ var __defProps$r = Object.defineProperties;
323
+ var __getOwnPropDescs$r = Object.getOwnPropertyDescriptors;
324
+ var __getOwnPropSymbols$s = Object.getOwnPropertySymbols;
325
+ var __hasOwnProp$s = Object.prototype.hasOwnProperty;
326
+ var __propIsEnum$s = Object.prototype.propertyIsEnumerable;
327
+ var __defNormalProp$s = (obj, key, value) => key in obj ? __defProp$s(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
328
+ var __spreadValues$s = (a, b) => {
326
329
  for (var prop in b || (b = {}))
327
- if (__hasOwnProp$p.call(b, prop))
328
- __defNormalProp$p(a, prop, b[prop]);
329
- if (__getOwnPropSymbols$p)
330
- for (var prop of __getOwnPropSymbols$p(b)) {
331
- if (__propIsEnum$p.call(b, prop))
332
- __defNormalProp$p(a, prop, b[prop]);
330
+ if (__hasOwnProp$s.call(b, prop))
331
+ __defNormalProp$s(a, prop, b[prop]);
332
+ if (__getOwnPropSymbols$s)
333
+ for (var prop of __getOwnPropSymbols$s(b)) {
334
+ if (__propIsEnum$s.call(b, prop))
335
+ __defNormalProp$s(a, prop, b[prop]);
333
336
  }
334
337
  return a;
335
338
  };
336
- var __spreadProps$p = (a, b) => __defProps$p(a, __getOwnPropDescs$p(b));
339
+ var __spreadProps$r = (a, b) => __defProps$r(a, __getOwnPropDescs$r(b));
337
340
  function adaptDescribable(describable, linkGenerator) {
338
341
  return {
339
342
  description: describableToRenderableContent(describable, linkGenerator)
@@ -385,7 +388,7 @@ function adaptDocumentable(documentable, linkGenerator, subHeadingLevel) {
385
388
  function extractCustomTags(type) {
386
389
  var _a2, _b2;
387
390
  const baseTags = ["description", "group", "author", "date", "see", "example", "throws", "exception"];
388
- return (_b2 = (_a2 = type.docComment) == null ? void 0 : _a2.annotations.filter((currentAnnotation) => !baseTags.includes(currentAnnotation.name.toLowerCase())).map((currentAnnotation) => __spreadProps$p(__spreadValues$p({}, adaptDescribable(currentAnnotation.bodyLines, linkGenerator)), {
391
+ return (_b2 = (_a2 = type.docComment) == null ? void 0 : _a2.annotations.filter((currentAnnotation) => !baseTags.includes(currentAnnotation.name.toLowerCase())).map((currentAnnotation) => __spreadProps$r(__spreadValues$s({}, adaptDescribable(currentAnnotation.bodyLines, linkGenerator)), {
389
392
  name: currentAnnotation.name
390
393
  }))) != null ? _b2 : [];
391
394
  }
@@ -399,7 +402,7 @@ function adaptDocumentable(documentable, linkGenerator, subHeadingLevel) {
399
402
  var _a2, _b2;
400
403
  return (_b2 = (_a2 = type.docComment) == null ? void 0 : _a2.annotations.filter((currentAnnotation) => currentAnnotation.name.toLowerCase() === "see").map((currentAnnotation) => currentAnnotation.body)) != null ? _b2 : [];
401
404
  }
402
- return __spreadProps$p(__spreadValues$p({}, adaptDescribable((_a = documentable.docComment) == null ? void 0 : _a.descriptionLines, linkGenerator)), {
405
+ return __spreadProps$r(__spreadValues$s({}, adaptDescribable((_a = documentable.docComment) == null ? void 0 : _a.descriptionLines, linkGenerator)), {
403
406
  annotations: documentable.annotations.map((annotation) => annotation.type.toUpperCase()),
404
407
  customTags: extractCustomTags(documentable),
405
408
  example: {
@@ -414,25 +417,25 @@ function adaptDocumentable(documentable, linkGenerator, subHeadingLevel) {
414
417
  });
415
418
  }
416
419
 
417
- var __defProp$o = Object.defineProperty;
418
- var __defProps$o = Object.defineProperties;
419
- var __getOwnPropDescs$o = Object.getOwnPropertyDescriptors;
420
- var __getOwnPropSymbols$o = Object.getOwnPropertySymbols;
421
- var __hasOwnProp$o = Object.prototype.hasOwnProperty;
422
- var __propIsEnum$o = Object.prototype.propertyIsEnumerable;
423
- var __defNormalProp$o = (obj, key, value) => key in obj ? __defProp$o(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
424
- var __spreadValues$o = (a, b) => {
420
+ var __defProp$r = Object.defineProperty;
421
+ var __defProps$q = Object.defineProperties;
422
+ var __getOwnPropDescs$q = Object.getOwnPropertyDescriptors;
423
+ var __getOwnPropSymbols$r = Object.getOwnPropertySymbols;
424
+ var __hasOwnProp$r = Object.prototype.hasOwnProperty;
425
+ var __propIsEnum$r = Object.prototype.propertyIsEnumerable;
426
+ var __defNormalProp$r = (obj, key, value) => key in obj ? __defProp$r(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
427
+ var __spreadValues$r = (a, b) => {
425
428
  for (var prop in b || (b = {}))
426
- if (__hasOwnProp$o.call(b, prop))
427
- __defNormalProp$o(a, prop, b[prop]);
428
- if (__getOwnPropSymbols$o)
429
- for (var prop of __getOwnPropSymbols$o(b)) {
430
- if (__propIsEnum$o.call(b, prop))
431
- __defNormalProp$o(a, prop, b[prop]);
429
+ if (__hasOwnProp$r.call(b, prop))
430
+ __defNormalProp$r(a, prop, b[prop]);
431
+ if (__getOwnPropSymbols$r)
432
+ for (var prop of __getOwnPropSymbols$r(b)) {
433
+ if (__propIsEnum$r.call(b, prop))
434
+ __defNormalProp$r(a, prop, b[prop]);
432
435
  }
433
436
  return a;
434
437
  };
435
- var __spreadProps$o = (a, b) => __defProps$o(a, __getOwnPropDescs$o(b));
438
+ var __spreadProps$q = (a, b) => __defProps$q(a, __getOwnPropDescs$q(b));
436
439
  function adaptMethod(method, linkGenerator, baseHeadingLevel, translations) {
437
440
  var _a, _b, _c;
438
441
  function buildTitle(method2) {
@@ -462,7 +465,7 @@ function adaptMethod(method, linkGenerator, baseHeadingLevel, translations) {
462
465
  returnType: {
463
466
  headingLevel: baseHeadingLevel + 1,
464
467
  heading: translations.markdown.details.returnType,
465
- value: __spreadProps$o(__spreadValues$o({}, adaptDescribable((_b = (_a = method.docComment) == null ? void 0 : _a.returnAnnotation) == null ? void 0 : _b.bodyLines, linkGenerator)), {
468
+ value: __spreadProps$q(__spreadValues$r({}, adaptDescribable((_b = (_a = method.docComment) == null ? void 0 : _a.returnAnnotation) == null ? void 0 : _b.bodyLines, linkGenerator)), {
466
469
  type: linkGenerator(method.typeReference.rawDeclaration)
467
470
  })
468
471
  },
@@ -521,13 +524,13 @@ function mapParameters(documentable, param, linkGenerator) {
521
524
  const paramAnnotation = (_a = documentable.docComment) == null ? void 0 : _a.paramAnnotations.find(
522
525
  (pa) => pa.paramName.toLowerCase() === param.name.toLowerCase()
523
526
  );
524
- return __spreadProps$o(__spreadValues$o({}, adaptDescribable(paramAnnotation == null ? void 0 : paramAnnotation.bodyLines, linkGenerator)), {
527
+ return __spreadProps$q(__spreadValues$r({}, adaptDescribable(paramAnnotation == null ? void 0 : paramAnnotation.bodyLines, linkGenerator)), {
525
528
  name: param.name,
526
529
  type: linkGenerator(param.typeReference.rawDeclaration)
527
530
  });
528
531
  }
529
532
  function mapThrows(thrown, linkGenerator) {
530
- return __spreadProps$o(__spreadValues$o({}, adaptDescribable(thrown.bodyLines, linkGenerator)), {
533
+ return __spreadProps$q(__spreadValues$r({}, adaptDescribable(thrown.bodyLines, linkGenerator)), {
531
534
  type: linkGenerator(thrown.exceptionName)
532
535
  });
533
536
  }
@@ -615,25 +618,25 @@ ${yamlString}---
615
618
  `;
616
619
  }
617
620
 
618
- var __defProp$n = Object.defineProperty;
619
- var __defProps$n = Object.defineProperties;
620
- var __getOwnPropDescs$n = Object.getOwnPropertyDescriptors;
621
- var __getOwnPropSymbols$n = Object.getOwnPropertySymbols;
622
- var __hasOwnProp$n = Object.prototype.hasOwnProperty;
623
- var __propIsEnum$n = Object.prototype.propertyIsEnumerable;
624
- var __defNormalProp$n = (obj, key, value) => key in obj ? __defProp$n(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
625
- var __spreadValues$n = (a, b) => {
621
+ var __defProp$q = Object.defineProperty;
622
+ var __defProps$p = Object.defineProperties;
623
+ var __getOwnPropDescs$p = Object.getOwnPropertyDescriptors;
624
+ var __getOwnPropSymbols$q = Object.getOwnPropertySymbols;
625
+ var __hasOwnProp$q = Object.prototype.hasOwnProperty;
626
+ var __propIsEnum$q = Object.prototype.propertyIsEnumerable;
627
+ var __defNormalProp$q = (obj, key, value) => key in obj ? __defProp$q(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
628
+ var __spreadValues$q = (a, b) => {
626
629
  for (var prop in b || (b = {}))
627
- if (__hasOwnProp$n.call(b, prop))
628
- __defNormalProp$n(a, prop, b[prop]);
629
- if (__getOwnPropSymbols$n)
630
- for (var prop of __getOwnPropSymbols$n(b)) {
631
- if (__propIsEnum$n.call(b, prop))
632
- __defNormalProp$n(a, prop, b[prop]);
630
+ if (__hasOwnProp$q.call(b, prop))
631
+ __defNormalProp$q(a, prop, b[prop]);
632
+ if (__getOwnPropSymbols$q)
633
+ for (var prop of __getOwnPropSymbols$q(b)) {
634
+ if (__propIsEnum$q.call(b, prop))
635
+ __defNormalProp$q(a, prop, b[prop]);
633
636
  }
634
637
  return a;
635
638
  };
636
- var __spreadProps$n = (a, b) => __defProps$n(a, __getOwnPropDescs$n(b));
639
+ var __spreadProps$p = (a, b) => __defProps$p(a, __getOwnPropDescs$p(b));
637
640
  function typeToRenderable$1(parsedFile, linkGenerator, config, translations) {
638
641
  function getRenderable() {
639
642
  const { type } = parsedFile;
@@ -650,7 +653,7 @@ function typeToRenderable$1(parsedFile, linkGenerator, config, translations) {
650
653
  return objectMetadataToRenderable(type, config, translations);
651
654
  }
652
655
  }
653
- return __spreadProps$n(__spreadValues$n({}, getRenderable()), {
656
+ return __spreadProps$p(__spreadValues$q({}, getRenderable()), {
654
657
  filePath: isInSource(parsedFile.source) ? parsedFile.source.filePath : void 0,
655
658
  namespace: config.namespace
656
659
  });
@@ -675,7 +678,7 @@ function baseTypeAdapter(type, linkGenerator, baseHeadingLevel, translations) {
675
678
  };
676
679
  }
677
680
  function enumTypeToEnumSource(enumType, linkGenerator, baseHeadingLevel = 1, translations) {
678
- return __spreadProps$n(__spreadValues$n({
681
+ return __spreadProps$p(__spreadValues$q({
679
682
  type: "enum"
680
683
  }, baseTypeAdapter(enumType, linkGenerator, baseHeadingLevel, translations)), {
681
684
  values: {
@@ -683,7 +686,7 @@ function enumTypeToEnumSource(enumType, linkGenerator, baseHeadingLevel = 1, tra
683
686
  heading: translations.markdown.sections.values,
684
687
  value: enumType.values.map((value) => {
685
688
  var _a;
686
- return __spreadProps$n(__spreadValues$n({}, adaptDescribable((_a = value.docComment) == null ? void 0 : _a.descriptionLines, linkGenerator)), {
689
+ return __spreadProps$p(__spreadValues$q({}, adaptDescribable((_a = value.docComment) == null ? void 0 : _a.descriptionLines, linkGenerator)), {
687
690
  value: value.name
688
691
  });
689
692
  })
@@ -691,7 +694,7 @@ function enumTypeToEnumSource(enumType, linkGenerator, baseHeadingLevel = 1, tra
691
694
  });
692
695
  }
693
696
  function interfaceTypeToInterfaceSource(interfaceType, linkGenerator, baseHeadingLevel = 1, translations) {
694
- return __spreadProps$n(__spreadValues$n({
697
+ return __spreadProps$p(__spreadValues$q({
695
698
  type: "interface"
696
699
  }, baseTypeAdapter(interfaceType, linkGenerator, baseHeadingLevel, translations)), {
697
700
  extends: interfaceType.extended_interfaces.map(linkGenerator),
@@ -705,7 +708,7 @@ function interfaceTypeToInterfaceSource(interfaceType, linkGenerator, baseHeadin
705
708
  });
706
709
  }
707
710
  function classTypeToClassSource(classType, linkGenerator, baseHeadingLevel = 1, translations) {
708
- return __spreadProps$n(__spreadValues$n({
711
+ return __spreadProps$p(__spreadValues$q({
709
712
  type: "class"
710
713
  }, baseTypeAdapter(classType, linkGenerator, baseHeadingLevel, translations)), {
711
714
  classModifier: classType.classModifier,
@@ -749,7 +752,7 @@ function classTypeToClassSource(classType, linkGenerator, baseHeadingLevel = 1,
749
752
  heading: translations.markdown.sections.classes,
750
753
  value: classType.classes.map(
751
754
  (innerClass) => classTypeToClassSource(
752
- __spreadProps$n(__spreadValues$n({}, innerClass), { inheritanceChain: [] }),
755
+ __spreadProps$p(__spreadValues$q({}, innerClass), { inheritanceChain: [] }),
753
756
  linkGenerator,
754
757
  baseHeadingLevel + 2,
755
758
  translations
@@ -1044,164 +1047,6 @@ function getRenderableDescription(type, findLinkFromHome) {
1044
1047
  }
1045
1048
  }
1046
1049
 
1047
- class ReflectionError {
1048
- constructor(file, message) {
1049
- this.file = file;
1050
- this.message = message;
1051
- }
1052
- }
1053
- class ReflectionErrors {
1054
- constructor(errors) {
1055
- this.errors = errors;
1056
- this._tag = "ReflectionErrors";
1057
- }
1058
- }
1059
- class HookError {
1060
- constructor(error) {
1061
- this.error = error;
1062
- this._tag = "HookError";
1063
- }
1064
- }
1065
-
1066
- function parseApexMetadata(input) {
1067
- return _function.pipe(input, parse, E__namespace.map(toMap));
1068
- }
1069
- function parse(input) {
1070
- return E__namespace.tryCatch(() => new fastXmlParser.XMLParser().parse(input), E__namespace.toError);
1071
- }
1072
- function toMap(metadata) {
1073
- const map = /* @__PURE__ */ new Map();
1074
- map.set("apiVersion", String(metadata.ApexClass.apiVersion));
1075
- if (metadata.ApexClass.status) {
1076
- map.set("status", String(metadata.ApexClass.status));
1077
- }
1078
- return map;
1079
- }
1080
-
1081
- var __defProp$m = Object.defineProperty;
1082
- var __defProps$m = Object.defineProperties;
1083
- var __getOwnPropDescs$m = Object.getOwnPropertyDescriptors;
1084
- var __getOwnPropSymbols$m = Object.getOwnPropertySymbols;
1085
- var __hasOwnProp$m = Object.prototype.hasOwnProperty;
1086
- var __propIsEnum$m = Object.prototype.propertyIsEnumerable;
1087
- var __defNormalProp$m = (obj, key, value) => key in obj ? __defProp$m(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1088
- var __spreadValues$m = (a, b) => {
1089
- for (var prop in b || (b = {}))
1090
- if (__hasOwnProp$m.call(b, prop))
1091
- __defNormalProp$m(a, prop, b[prop]);
1092
- if (__getOwnPropSymbols$m)
1093
- for (var prop of __getOwnPropSymbols$m(b)) {
1094
- if (__propIsEnum$m.call(b, prop))
1095
- __defNormalProp$m(a, prop, b[prop]);
1096
- }
1097
- return a;
1098
- };
1099
- var __spreadProps$m = (a, b) => __defProps$m(a, __getOwnPropDescs$m(b));
1100
- var __async$5 = (__this, __arguments, generator) => {
1101
- return new Promise((resolve, reject) => {
1102
- var fulfilled = (value) => {
1103
- try {
1104
- step(generator.next(value));
1105
- } catch (e) {
1106
- reject(e);
1107
- }
1108
- };
1109
- var rejected = (value) => {
1110
- try {
1111
- step(generator.throw(value));
1112
- } catch (e) {
1113
- reject(e);
1114
- }
1115
- };
1116
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
1117
- step((generator = generator.apply(__this, __arguments)).next());
1118
- });
1119
- };
1120
- function reflectAsync$1(rawSource) {
1121
- return __async$5(this, null, function* () {
1122
- return new Promise((resolve, reject) => {
1123
- const result = apexReflection.reflect(rawSource);
1124
- if (result.typeMirror) {
1125
- return resolve(result.typeMirror);
1126
- } else if (result.error) {
1127
- return reject(result.error);
1128
- } else {
1129
- return reject(new Error("Unknown error"));
1130
- }
1131
- });
1132
- });
1133
- }
1134
- function reflectApexSource(apexBundles) {
1135
- const semiGroupReflectionError = {
1136
- concat: (x, y) => new ReflectionErrors([...x.errors, ...y.errors])
1137
- };
1138
- const Ap = TE__namespace.getApplicativeTaskValidation(T__namespace.ApplyPar, semiGroupReflectionError);
1139
- return _function.pipe(apexBundles, A__namespace.traverse(Ap)(reflectBundle$1));
1140
- }
1141
- function reflectBundle$1(apexBundle) {
1142
- const convertToParsedFile = apply(toParsedFile$4, apexBundle.filePath);
1143
- const withMetadata = apply(addMetadata, apexBundle.metadataContent);
1144
- return _function.pipe(apexBundle, reflectAsTask$1, TE__namespace.map(convertToParsedFile), TE__namespace.flatMap(withMetadata));
1145
- }
1146
- function reflectAsTask$1(apexBundle) {
1147
- return TE__namespace.tryCatch(
1148
- () => reflectAsync$1(apexBundle.content),
1149
- (error) => new ReflectionErrors([new ReflectionError(apexBundle.filePath, error.message)])
1150
- );
1151
- }
1152
- function toParsedFile$4(filePath, typeMirror) {
1153
- return {
1154
- source: {
1155
- filePath,
1156
- name: typeMirror.name,
1157
- type: typeMirror.type_name
1158
- },
1159
- type: typeMirror
1160
- };
1161
- }
1162
- function addMetadata(rawMetadataContent, parsedFile) {
1163
- return TE__namespace.fromEither(
1164
- _function.pipe(
1165
- parsedFile.type,
1166
- (type) => addFileMetadataToTypeAnnotation(type, rawMetadataContent),
1167
- E__namespace.map((type) => __spreadProps$m(__spreadValues$m({}, parsedFile), { type })),
1168
- E__namespace.mapLeft(
1169
- (error) => errorToReflectionErrors(error, isInSource(parsedFile.source) ? parsedFile.source.filePath : "")
1170
- )
1171
- )
1172
- );
1173
- }
1174
- function errorToReflectionErrors(error, filePath) {
1175
- return new ReflectionErrors([new ReflectionError(filePath, error.message)]);
1176
- }
1177
- function addFileMetadataToTypeAnnotation(type, metadata) {
1178
- const concatAnnotationToType = apply(concatAnnotations, type);
1179
- return _function.pipe(
1180
- O__namespace.fromNullable(metadata),
1181
- O__namespace.map(concatAnnotationToType),
1182
- O__namespace.getOrElse(() => E__namespace.right(type))
1183
- );
1184
- }
1185
- function concatAnnotations(type, metadataInput) {
1186
- return _function.pipe(
1187
- metadataInput,
1188
- parseApexMetadata,
1189
- E__namespace.map((metadataMap) => __spreadProps$m(__spreadValues$m({}, type), {
1190
- annotations: [...type.annotations, ...mapToAnnotations(metadataMap)]
1191
- }))
1192
- );
1193
- }
1194
- function mapToAnnotations(metadata) {
1195
- return Array.from(metadata.entries()).map(([key, value]) => {
1196
- const declaration = `${key}: ${value}`;
1197
- return {
1198
- name: declaration,
1199
- type: declaration,
1200
- rawDeclaration: declaration
1201
- };
1202
- });
1203
- }
1204
-
1205
1050
  function createInheritanceChain(repository, classMirror) {
1206
1051
  return _function.pipe(
1207
1052
  O__namespace.fromNullable(classMirror.extended_class),
@@ -1223,26 +1068,26 @@ function inheritanceChainFromParentClassName(repository, className) {
1223
1068
 
1224
1069
  const parsedFilesToTypes = (parsedFiles) => parsedFiles.map((parsedFile) => parsedFile.type);
1225
1070
 
1226
- var __defProp$l = Object.defineProperty;
1227
- var __defProps$l = Object.defineProperties;
1228
- var __getOwnPropDescs$l = Object.getOwnPropertyDescriptors;
1229
- var __getOwnPropSymbols$l = Object.getOwnPropertySymbols;
1230
- var __hasOwnProp$l = Object.prototype.hasOwnProperty;
1231
- var __propIsEnum$l = Object.prototype.propertyIsEnumerable;
1232
- var __defNormalProp$l = (obj, key, value) => key in obj ? __defProp$l(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1233
- var __spreadValues$l = (a, b) => {
1071
+ var __defProp$p = Object.defineProperty;
1072
+ var __defProps$o = Object.defineProperties;
1073
+ var __getOwnPropDescs$o = Object.getOwnPropertyDescriptors;
1074
+ var __getOwnPropSymbols$p = Object.getOwnPropertySymbols;
1075
+ var __hasOwnProp$p = Object.prototype.hasOwnProperty;
1076
+ var __propIsEnum$p = Object.prototype.propertyIsEnumerable;
1077
+ var __defNormalProp$p = (obj, key, value) => key in obj ? __defProp$p(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1078
+ var __spreadValues$p = (a, b) => {
1234
1079
  for (var prop in b || (b = {}))
1235
- if (__hasOwnProp$l.call(b, prop))
1236
- __defNormalProp$l(a, prop, b[prop]);
1237
- if (__getOwnPropSymbols$l)
1238
- for (var prop of __getOwnPropSymbols$l(b)) {
1239
- if (__propIsEnum$l.call(b, prop))
1240
- __defNormalProp$l(a, prop, b[prop]);
1241
- }
1242
- return a;
1243
- };
1244
- var __spreadProps$l = (a, b) => __defProps$l(a, __getOwnPropDescs$l(b));
1245
- const addInheritanceChainToTypes = (parsedFiles) => parsedFiles.map((parsedFile) => __spreadProps$l(__spreadValues$l({}, parsedFile), {
1080
+ if (__hasOwnProp$p.call(b, prop))
1081
+ __defNormalProp$p(a, prop, b[prop]);
1082
+ if (__getOwnPropSymbols$p)
1083
+ for (var prop of __getOwnPropSymbols$p(b)) {
1084
+ if (__propIsEnum$p.call(b, prop))
1085
+ __defNormalProp$p(a, prop, b[prop]);
1086
+ }
1087
+ return a;
1088
+ };
1089
+ var __spreadProps$o = (a, b) => __defProps$o(a, __getOwnPropDescs$o(b));
1090
+ const addInheritanceChainToTypes = (parsedFiles) => parsedFiles.map((parsedFile) => __spreadProps$o(__spreadValues$p({}, parsedFile), {
1246
1091
  type: addInheritanceChain(parsedFile.type, parsedFilesToTypes(parsedFiles))
1247
1092
  }));
1248
1093
  function addInheritanceChain(current, repository) {
@@ -1250,31 +1095,31 @@ function addInheritanceChain(current, repository) {
1250
1095
  return current;
1251
1096
  } else {
1252
1097
  const inheritanceChain = createInheritanceChain(repository, current);
1253
- return __spreadProps$l(__spreadValues$l({}, current), {
1098
+ return __spreadProps$o(__spreadValues$p({}, current), {
1254
1099
  inheritanceChain
1255
1100
  });
1256
1101
  }
1257
1102
  }
1258
1103
 
1259
- var __defProp$k = Object.defineProperty;
1260
- var __defProps$k = Object.defineProperties;
1261
- var __getOwnPropDescs$k = Object.getOwnPropertyDescriptors;
1262
- var __getOwnPropSymbols$k = Object.getOwnPropertySymbols;
1263
- var __hasOwnProp$k = Object.prototype.hasOwnProperty;
1264
- var __propIsEnum$k = Object.prototype.propertyIsEnumerable;
1265
- var __defNormalProp$k = (obj, key, value) => key in obj ? __defProp$k(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1266
- var __spreadValues$k = (a, b) => {
1104
+ var __defProp$o = Object.defineProperty;
1105
+ var __defProps$n = Object.defineProperties;
1106
+ var __getOwnPropDescs$n = Object.getOwnPropertyDescriptors;
1107
+ var __getOwnPropSymbols$o = Object.getOwnPropertySymbols;
1108
+ var __hasOwnProp$o = Object.prototype.hasOwnProperty;
1109
+ var __propIsEnum$o = Object.prototype.propertyIsEnumerable;
1110
+ var __defNormalProp$o = (obj, key, value) => key in obj ? __defProp$o(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1111
+ var __spreadValues$o = (a, b) => {
1267
1112
  for (var prop in b || (b = {}))
1268
- if (__hasOwnProp$k.call(b, prop))
1269
- __defNormalProp$k(a, prop, b[prop]);
1270
- if (__getOwnPropSymbols$k)
1271
- for (var prop of __getOwnPropSymbols$k(b)) {
1272
- if (__propIsEnum$k.call(b, prop))
1273
- __defNormalProp$k(a, prop, b[prop]);
1113
+ if (__hasOwnProp$o.call(b, prop))
1114
+ __defNormalProp$o(a, prop, b[prop]);
1115
+ if (__getOwnPropSymbols$o)
1116
+ for (var prop of __getOwnPropSymbols$o(b)) {
1117
+ if (__propIsEnum$o.call(b, prop))
1118
+ __defNormalProp$o(a, prop, b[prop]);
1274
1119
  }
1275
1120
  return a;
1276
1121
  };
1277
- var __spreadProps$k = (a, b) => __defProps$k(a, __getOwnPropDescs$k(b));
1122
+ var __spreadProps$n = (a, b) => __defProps$n(a, __getOwnPropDescs$n(b));
1278
1123
  const addInheritedMembersToTypes = (parsedFiles) => parsedFiles.map((parsedFile) => addInheritedMembers(parsedFilesToTypes(parsedFiles), parsedFile));
1279
1124
  function addInheritedMembers(repository, parsedFile) {
1280
1125
  function addInheritedMembersToType(repository2, current) {
@@ -1286,7 +1131,7 @@ function addInheritedMembers(repository, parsedFile) {
1286
1131
  return addInheritedClassMembers(current, repository2);
1287
1132
  }
1288
1133
  }
1289
- return __spreadProps$k(__spreadValues$k({}, parsedFile), {
1134
+ return __spreadProps$n(__spreadValues$o({}, parsedFile), {
1290
1135
  type: addInheritedMembersToType(repository, parsedFile.type)
1291
1136
  });
1292
1137
  }
@@ -1298,11 +1143,11 @@ function addInheritedInterfaceMethods(interfaceMirror, repository) {
1298
1143
  return interfaceMirror2.extended_interfaces;
1299
1144
  }
1300
1145
  const parents = getParents(parentExtractor, interfaceMirror, repository);
1301
- return __spreadProps$k(__spreadValues$k({}, interfaceMirror), {
1146
+ return __spreadProps$n(__spreadValues$o({}, interfaceMirror), {
1302
1147
  methods: parents.reduce(
1303
1148
  (acc, currentValue) => [
1304
1149
  ...acc,
1305
- ...currentValue.methods.filter((method) => !methodAlreadyExists(method.name, acc)).map((method) => __spreadProps$k(__spreadValues$k({}, method), {
1150
+ ...currentValue.methods.filter((method) => !methodAlreadyExists(method.name, acc)).map((method) => __spreadProps$n(__spreadValues$o({}, method), {
1306
1151
  inherited: true
1307
1152
  }))
1308
1153
  ],
@@ -1318,12 +1163,12 @@ function addInheritedClassMembers(classMirror, repository) {
1318
1163
  return classMirror2.extended_class ? [classMirror2.extended_class] : [];
1319
1164
  }
1320
1165
  function filterMember(members, existing) {
1321
- return members.filter((member) => member.access_modifier.toLowerCase() !== "private").filter((member) => !memberAlreadyExists(member.name, existing)).map((member) => __spreadProps$k(__spreadValues$k({}, member), {
1166
+ return members.filter((member) => member.access_modifier.toLowerCase() !== "private").filter((member) => !memberAlreadyExists(member.name, existing)).map((member) => __spreadProps$n(__spreadValues$o({}, member), {
1322
1167
  inherited: true
1323
1168
  }));
1324
1169
  }
1325
1170
  const parents = getParents(parentExtractor, classMirror, repository);
1326
- return __spreadProps$k(__spreadValues$k({}, classMirror), {
1171
+ return __spreadProps$n(__spreadValues$o({}, classMirror), {
1327
1172
  fields: parents.reduce(
1328
1173
  (acc, currentValue) => [...acc, ...filterMember(currentValue.fields, acc)],
1329
1174
  classMirror.fields
@@ -1698,34 +1543,36 @@ const link = (source) => {
1698
1543
  }
1699
1544
  };
1700
1545
 
1701
- var __defProp$j = Object.defineProperty;
1702
- var __defProps$j = Object.defineProperties;
1703
- var __getOwnPropDescs$j = Object.getOwnPropertyDescriptors;
1704
- var __getOwnPropSymbols$j = Object.getOwnPropertySymbols;
1705
- var __hasOwnProp$j = Object.prototype.hasOwnProperty;
1706
- var __propIsEnum$j = Object.prototype.propertyIsEnumerable;
1707
- var __defNormalProp$j = (obj, key, value) => key in obj ? __defProp$j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1708
- var __spreadValues$j = (a, b) => {
1546
+ var __defProp$n = Object.defineProperty;
1547
+ var __defProps$m = Object.defineProperties;
1548
+ var __getOwnPropDescs$m = Object.getOwnPropertyDescriptors;
1549
+ var __getOwnPropSymbols$n = Object.getOwnPropertySymbols;
1550
+ var __hasOwnProp$n = Object.prototype.hasOwnProperty;
1551
+ var __propIsEnum$n = Object.prototype.propertyIsEnumerable;
1552
+ var __defNormalProp$n = (obj, key, value) => key in obj ? __defProp$n(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1553
+ var __spreadValues$n = (a, b) => {
1709
1554
  for (var prop in b || (b = {}))
1710
- if (__hasOwnProp$j.call(b, prop))
1711
- __defNormalProp$j(a, prop, b[prop]);
1712
- if (__getOwnPropSymbols$j)
1713
- for (var prop of __getOwnPropSymbols$j(b)) {
1714
- if (__propIsEnum$j.call(b, prop))
1715
- __defNormalProp$j(a, prop, b[prop]);
1555
+ if (__hasOwnProp$n.call(b, prop))
1556
+ __defNormalProp$n(a, prop, b[prop]);
1557
+ if (__getOwnPropSymbols$n)
1558
+ for (var prop of __getOwnPropSymbols$n(b)) {
1559
+ if (__propIsEnum$n.call(b, prop))
1560
+ __defNormalProp$n(a, prop, b[prop]);
1716
1561
  }
1717
1562
  return a;
1718
1563
  };
1719
- var __spreadProps$j = (a, b) => __defProps$j(a, __getOwnPropDescs$j(b));
1564
+ var __spreadProps$m = (a, b) => __defProps$m(a, __getOwnPropDescs$m(b));
1720
1565
  const commonDefaults = {
1721
1566
  targetDir: "./docs/"
1722
1567
  };
1723
- const markdownAndChangelogDefaults = __spreadProps$j(__spreadValues$j({}, commonDefaults), {
1568
+ const markdownAndChangelogDefaults = __spreadProps$m(__spreadValues$n({}, commonDefaults), {
1724
1569
  scope: ["global"],
1725
1570
  customObjectVisibility: ["public"],
1726
- exclude: []
1571
+ exclude: [],
1572
+ parallelProcessing: process.env.NODE_ENV !== "test"
1573
+ // Disable parallel processing during tests
1727
1574
  });
1728
- const markdownDefaults = __spreadProps$j(__spreadValues$j({}, markdownAndChangelogDefaults), {
1575
+ const markdownDefaults = __spreadProps$m(__spreadValues$n({}, markdownAndChangelogDefaults), {
1729
1576
  defaultGroupName: "Miscellaneous",
1730
1577
  customObjectsGroupName: "Custom Objects",
1731
1578
  triggersGroupName: "Triggers",
@@ -1737,13 +1584,13 @@ const markdownDefaults = __spreadProps$j(__spreadValues$j({}, markdownAndChangel
1737
1584
  includeFieldSecurityMetadata: false,
1738
1585
  includeInlineHelpTextMetadata: false
1739
1586
  });
1740
- const openApiDefaults = __spreadProps$j(__spreadValues$j({}, commonDefaults), {
1587
+ const openApiDefaults = __spreadProps$m(__spreadValues$n({}, commonDefaults), {
1741
1588
  fileName: "openapi",
1742
1589
  title: "Apex REST API",
1743
1590
  apiVersion: "1.0.0",
1744
1591
  exclude: []
1745
1592
  });
1746
- const changeLogDefaults = __spreadProps$j(__spreadValues$j({}, markdownAndChangelogDefaults), {
1593
+ const changeLogDefaults = __spreadProps$m(__spreadValues$n({}, markdownAndChangelogDefaults), {
1747
1594
  fileName: "changelog",
1748
1595
  skipIfNoChanges: true
1749
1596
  });
@@ -1846,25 +1693,25 @@ const triggerMarkdownTemplate = `
1846
1693
  {{/each}}
1847
1694
  `.trim();
1848
1695
 
1849
- var __defProp$i = Object.defineProperty;
1850
- var __defProps$i = Object.defineProperties;
1851
- var __getOwnPropDescs$i = Object.getOwnPropertyDescriptors;
1852
- var __getOwnPropSymbols$i = Object.getOwnPropertySymbols;
1853
- var __hasOwnProp$i = Object.prototype.hasOwnProperty;
1854
- var __propIsEnum$i = Object.prototype.propertyIsEnumerable;
1855
- var __defNormalProp$i = (obj, key, value) => key in obj ? __defProp$i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1856
- var __spreadValues$i = (a, b) => {
1696
+ var __defProp$m = Object.defineProperty;
1697
+ var __defProps$l = Object.defineProperties;
1698
+ var __getOwnPropDescs$l = Object.getOwnPropertyDescriptors;
1699
+ var __getOwnPropSymbols$m = Object.getOwnPropertySymbols;
1700
+ var __hasOwnProp$m = Object.prototype.hasOwnProperty;
1701
+ var __propIsEnum$m = Object.prototype.propertyIsEnumerable;
1702
+ var __defNormalProp$m = (obj, key, value) => key in obj ? __defProp$m(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1703
+ var __spreadValues$m = (a, b) => {
1857
1704
  for (var prop in b || (b = {}))
1858
- if (__hasOwnProp$i.call(b, prop))
1859
- __defNormalProp$i(a, prop, b[prop]);
1860
- if (__getOwnPropSymbols$i)
1861
- for (var prop of __getOwnPropSymbols$i(b)) {
1862
- if (__propIsEnum$i.call(b, prop))
1863
- __defNormalProp$i(a, prop, b[prop]);
1705
+ if (__hasOwnProp$m.call(b, prop))
1706
+ __defNormalProp$m(a, prop, b[prop]);
1707
+ if (__getOwnPropSymbols$m)
1708
+ for (var prop of __getOwnPropSymbols$m(b)) {
1709
+ if (__propIsEnum$m.call(b, prop))
1710
+ __defNormalProp$m(a, prop, b[prop]);
1864
1711
  }
1865
1712
  return a;
1866
1713
  };
1867
- var __spreadProps$i = (a, b) => __defProps$i(a, __getOwnPropDescs$i(b));
1714
+ var __spreadProps$l = (a, b) => __defProps$l(a, __getOwnPropDescs$l(b));
1868
1715
  const convertToDocumentationBundle = (referenceGuideTitle, referenceGuideTemplate, translations, { referencesByGroup, renderables }) => ({
1869
1716
  referenceGuide: {
1870
1717
  frontmatter: null,
@@ -1934,7 +1781,7 @@ function resolveApexTypeTemplate(renderable, translations) {
1934
1781
  }
1935
1782
  return {
1936
1783
  template: getTemplate(renderable),
1937
- source: __spreadProps$i(__spreadValues$i({}, renderable), {
1784
+ source: __spreadProps$l(__spreadValues$m({}, renderable), {
1938
1785
  translations
1939
1786
  })
1940
1787
  };
@@ -1943,25 +1790,25 @@ function compile$1(request) {
1943
1790
  return Template.getInstance().compile(request);
1944
1791
  }
1945
1792
 
1946
- var __defProp$h = Object.defineProperty;
1947
- var __defProps$h = Object.defineProperties;
1948
- var __getOwnPropDescs$h = Object.getOwnPropertyDescriptors;
1949
- var __getOwnPropSymbols$h = Object.getOwnPropertySymbols;
1950
- var __hasOwnProp$h = Object.prototype.hasOwnProperty;
1951
- var __propIsEnum$h = Object.prototype.propertyIsEnumerable;
1952
- var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1953
- var __spreadValues$h = (a, b) => {
1793
+ var __defProp$l = Object.defineProperty;
1794
+ var __defProps$k = Object.defineProperties;
1795
+ var __getOwnPropDescs$k = Object.getOwnPropertyDescriptors;
1796
+ var __getOwnPropSymbols$l = Object.getOwnPropertySymbols;
1797
+ var __hasOwnProp$l = Object.prototype.hasOwnProperty;
1798
+ var __propIsEnum$l = Object.prototype.propertyIsEnumerable;
1799
+ var __defNormalProp$l = (obj, key, value) => key in obj ? __defProp$l(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1800
+ var __spreadValues$l = (a, b) => {
1954
1801
  for (var prop in b || (b = {}))
1955
- if (__hasOwnProp$h.call(b, prop))
1956
- __defNormalProp$h(a, prop, b[prop]);
1957
- if (__getOwnPropSymbols$h)
1958
- for (var prop of __getOwnPropSymbols$h(b)) {
1959
- if (__propIsEnum$h.call(b, prop))
1960
- __defNormalProp$h(a, prop, b[prop]);
1802
+ if (__hasOwnProp$l.call(b, prop))
1803
+ __defNormalProp$l(a, prop, b[prop]);
1804
+ if (__getOwnPropSymbols$l)
1805
+ for (var prop of __getOwnPropSymbols$l(b)) {
1806
+ if (__propIsEnum$l.call(b, prop))
1807
+ __defNormalProp$l(a, prop, b[prop]);
1961
1808
  }
1962
1809
  return a;
1963
1810
  };
1964
- var __spreadProps$h = (a, b) => __defProps$h(a, __getOwnPropDescs$h(b));
1811
+ var __spreadProps$k = (a, b) => __defProps$k(a, __getOwnPropDescs$k(b));
1965
1812
  class Manifest {
1966
1813
  /**
1967
1814
  * Constructs a new Manifest object.
@@ -1986,19 +1833,19 @@ class Manifest {
1986
1833
  }
1987
1834
  if (currentType.type_name === "interface") {
1988
1835
  const currentInterface = currentType;
1989
- return __spreadProps$h(__spreadValues$h({}, currentType), {
1836
+ return __spreadProps$k(__spreadValues$l({}, currentType), {
1990
1837
  methods: this.filterAccessibleModifier(currentInterface.methods, modifiers)
1991
1838
  });
1992
1839
  }
1993
1840
  const currentClass = currentType;
1994
- const filteredClass = __spreadProps$h(__spreadValues$h({}, currentType), {
1841
+ const filteredClass = __spreadProps$k(__spreadValues$l({}, currentType), {
1995
1842
  methods: this.filterAccessibleModifier(currentClass.methods, modifiers),
1996
1843
  properties: this.filterAccessibleModifier(currentClass.properties, modifiers),
1997
1844
  fields: this.filterAccessibleModifier(currentClass.fields, modifiers),
1998
1845
  constructors: this.filterAccessibleModifier(currentClass.constructors, modifiers)
1999
1846
  });
2000
1847
  if (!isForInnerTypes) {
2001
- return __spreadProps$h(__spreadValues$h({}, filteredClass), {
1848
+ return __spreadProps$k(__spreadValues$l({}, filteredClass), {
2002
1849
  enums: this.filterAccessibleModifier(currentClass.enums, modifiers),
2003
1850
  interfaces: this.filterAccessibleModifier(currentClass.interfaces, modifiers),
2004
1851
  classes: new Manifest(currentClass.classes, true).filteredByAccessModifierAndAnnotations(
@@ -2023,28 +1870,28 @@ class Manifest {
2023
1870
  }
2024
1871
  }
2025
1872
 
2026
- var __defProp$g = Object.defineProperty;
2027
- var __defProps$g = Object.defineProperties;
2028
- var __getOwnPropDescs$g = Object.getOwnPropertyDescriptors;
2029
- var __getOwnPropSymbols$g = Object.getOwnPropertySymbols;
2030
- var __hasOwnProp$g = Object.prototype.hasOwnProperty;
2031
- var __propIsEnum$g = Object.prototype.propertyIsEnumerable;
2032
- var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2033
- var __spreadValues$g = (a, b) => {
1873
+ var __defProp$k = Object.defineProperty;
1874
+ var __defProps$j = Object.defineProperties;
1875
+ var __getOwnPropDescs$j = Object.getOwnPropertyDescriptors;
1876
+ var __getOwnPropSymbols$k = Object.getOwnPropertySymbols;
1877
+ var __hasOwnProp$k = Object.prototype.hasOwnProperty;
1878
+ var __propIsEnum$k = Object.prototype.propertyIsEnumerable;
1879
+ var __defNormalProp$k = (obj, key, value) => key in obj ? __defProp$k(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1880
+ var __spreadValues$k = (a, b) => {
2034
1881
  for (var prop in b || (b = {}))
2035
- if (__hasOwnProp$g.call(b, prop))
2036
- __defNormalProp$g(a, prop, b[prop]);
2037
- if (__getOwnPropSymbols$g)
2038
- for (var prop of __getOwnPropSymbols$g(b)) {
2039
- if (__propIsEnum$g.call(b, prop))
2040
- __defNormalProp$g(a, prop, b[prop]);
1882
+ if (__hasOwnProp$k.call(b, prop))
1883
+ __defNormalProp$k(a, prop, b[prop]);
1884
+ if (__getOwnPropSymbols$k)
1885
+ for (var prop of __getOwnPropSymbols$k(b)) {
1886
+ if (__propIsEnum$k.call(b, prop))
1887
+ __defNormalProp$k(a, prop, b[prop]);
2041
1888
  }
2042
1889
  return a;
2043
1890
  };
2044
- var __spreadProps$g = (a, b) => __defProps$g(a, __getOwnPropDescs$g(b));
1891
+ var __spreadProps$j = (a, b) => __defProps$j(a, __getOwnPropDescs$j(b));
2045
1892
  function filterScope(scopes, parsedFiles) {
2046
1893
  return parsedFiles.filter(({ type }) => Manifest.shouldFilterType(type, scopes)).map((parsedFile) => {
2047
- return __spreadProps$g(__spreadValues$g({}, parsedFile), {
1894
+ return __spreadProps$j(__spreadValues$k({}, parsedFile), {
2048
1895
  type: Manifest.filterSingleType(parsedFile.type, scopes, false)
2049
1896
  });
2050
1897
  });
@@ -2058,34 +1905,34 @@ const hookableTemplate = `
2058
1905
  {{{content}}}
2059
1906
  `.trim();
2060
1907
 
2061
- var __defProp$f = Object.defineProperty;
2062
- var __defProps$f = Object.defineProperties;
2063
- var __getOwnPropDescs$f = Object.getOwnPropertyDescriptors;
2064
- var __getOwnPropSymbols$f = Object.getOwnPropertySymbols;
2065
- var __hasOwnProp$f = Object.prototype.hasOwnProperty;
2066
- var __propIsEnum$f = Object.prototype.propertyIsEnumerable;
2067
- var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2068
- var __spreadValues$f = (a, b) => {
1908
+ var __defProp$j = Object.defineProperty;
1909
+ var __defProps$i = Object.defineProperties;
1910
+ var __getOwnPropDescs$i = Object.getOwnPropertyDescriptors;
1911
+ var __getOwnPropSymbols$j = Object.getOwnPropertySymbols;
1912
+ var __hasOwnProp$j = Object.prototype.hasOwnProperty;
1913
+ var __propIsEnum$j = Object.prototype.propertyIsEnumerable;
1914
+ var __defNormalProp$j = (obj, key, value) => key in obj ? __defProp$j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1915
+ var __spreadValues$j = (a, b) => {
2069
1916
  for (var prop in b || (b = {}))
2070
- if (__hasOwnProp$f.call(b, prop))
2071
- __defNormalProp$f(a, prop, b[prop]);
2072
- if (__getOwnPropSymbols$f)
2073
- for (var prop of __getOwnPropSymbols$f(b)) {
2074
- if (__propIsEnum$f.call(b, prop))
2075
- __defNormalProp$f(a, prop, b[prop]);
1917
+ if (__hasOwnProp$j.call(b, prop))
1918
+ __defNormalProp$j(a, prop, b[prop]);
1919
+ if (__getOwnPropSymbols$j)
1920
+ for (var prop of __getOwnPropSymbols$j(b)) {
1921
+ if (__propIsEnum$j.call(b, prop))
1922
+ __defNormalProp$j(a, prop, b[prop]);
2076
1923
  }
2077
1924
  return a;
2078
1925
  };
2079
- var __spreadProps$f = (a, b) => __defProps$f(a, __getOwnPropDescs$f(b));
1926
+ var __spreadProps$i = (a, b) => __defProps$i(a, __getOwnPropDescs$i(b));
2080
1927
  function sortTypesAndMembers(shouldSort, parsedFiles) {
2081
1928
  return parsedFiles.map((parsedFile) => {
2082
1929
  if (isApexType(parsedFile.type)) {
2083
- return __spreadProps$f(__spreadValues$f({}, parsedFile), {
1930
+ return __spreadProps$i(__spreadValues$j({}, parsedFile), {
2084
1931
  type: sortTypeMember(parsedFile.type, shouldSort)
2085
1932
  });
2086
1933
  }
2087
1934
  if (isObjectType(parsedFile.type)) {
2088
- return __spreadProps$f(__spreadValues$f({}, parsedFile), {
1935
+ return __spreadProps$i(__spreadValues$j({}, parsedFile), {
2089
1936
  type: sortCustomObjectFields(parsedFile.type, shouldSort)
2090
1937
  });
2091
1938
  }
@@ -2112,22 +1959,22 @@ function sortTypeMember(type, shouldSort) {
2112
1959
  }
2113
1960
  }
2114
1961
  function sortCustomObjectFields(type, shouldSort) {
2115
- return __spreadProps$f(__spreadValues$f({}, type), {
1962
+ return __spreadProps$i(__spreadValues$j({}, type), {
2116
1963
  fields: sortNamed(shouldSort, type.fields)
2117
1964
  });
2118
1965
  }
2119
1966
  function sortEnumValues(shouldSort, enumType) {
2120
- return __spreadProps$f(__spreadValues$f({}, enumType), {
1967
+ return __spreadProps$i(__spreadValues$j({}, enumType), {
2121
1968
  values: sortNamed(shouldSort, enumType.values)
2122
1969
  });
2123
1970
  }
2124
1971
  function sortInterfaceMethods(shouldSort, interfaceType) {
2125
- return __spreadProps$f(__spreadValues$f({}, interfaceType), {
1972
+ return __spreadProps$i(__spreadValues$j({}, interfaceType), {
2126
1973
  methods: sortNamed(shouldSort, interfaceType.methods)
2127
1974
  });
2128
1975
  }
2129
1976
  function sortClassMembers(shouldSort, classType) {
2130
- return __spreadProps$f(__spreadValues$f({}, classType), {
1977
+ return __spreadProps$i(__spreadValues$j({}, classType), {
2131
1978
  fields: sortNamed(shouldSort, classType.fields),
2132
1979
  classes: sortNamed(shouldSort, classType.classes),
2133
1980
  enums: sortNamed(shouldSort, classType.enums),
@@ -2156,34 +2003,34 @@ function slugify(text) {
2156
2003
  return text.toLowerCase().replace(/[^a-z0-9\s-]/g, "").trim().replace(/\s+/g, "-").replace(/-+/g, "-");
2157
2004
  }
2158
2005
 
2159
- var __defProp$e = Object.defineProperty;
2160
- var __defProps$e = Object.defineProperties;
2161
- var __getOwnPropDescs$e = Object.getOwnPropertyDescriptors;
2162
- var __getOwnPropSymbols$e = Object.getOwnPropertySymbols;
2163
- var __hasOwnProp$e = Object.prototype.hasOwnProperty;
2164
- var __propIsEnum$e = Object.prototype.propertyIsEnumerable;
2165
- var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2166
- var __spreadValues$e = (a, b) => {
2006
+ var __defProp$i = Object.defineProperty;
2007
+ var __defProps$h = Object.defineProperties;
2008
+ var __getOwnPropDescs$h = Object.getOwnPropertyDescriptors;
2009
+ var __getOwnPropSymbols$i = Object.getOwnPropertySymbols;
2010
+ var __hasOwnProp$i = Object.prototype.hasOwnProperty;
2011
+ var __propIsEnum$i = Object.prototype.propertyIsEnumerable;
2012
+ var __defNormalProp$i = (obj, key, value) => key in obj ? __defProp$i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2013
+ var __spreadValues$i = (a, b) => {
2167
2014
  for (var prop in b || (b = {}))
2168
- if (__hasOwnProp$e.call(b, prop))
2169
- __defNormalProp$e(a, prop, b[prop]);
2170
- if (__getOwnPropSymbols$e)
2171
- for (var prop of __getOwnPropSymbols$e(b)) {
2172
- if (__propIsEnum$e.call(b, prop))
2173
- __defNormalProp$e(a, prop, b[prop]);
2015
+ if (__hasOwnProp$i.call(b, prop))
2016
+ __defNormalProp$i(a, prop, b[prop]);
2017
+ if (__getOwnPropSymbols$i)
2018
+ for (var prop of __getOwnPropSymbols$i(b)) {
2019
+ if (__propIsEnum$i.call(b, prop))
2020
+ __defNormalProp$i(a, prop, b[prop]);
2174
2021
  }
2175
2022
  return a;
2176
2023
  };
2177
- var __spreadProps$e = (a, b) => __defProps$e(a, __getOwnPropDescs$e(b));
2024
+ var __spreadProps$h = (a, b) => __defProps$h(a, __getOwnPropDescs$h(b));
2178
2025
  const removeExcludedTags = (excludedTags, parsedFiles) => {
2179
2026
  return parsedFiles.map((parsedFile) => {
2180
- return __spreadProps$e(__spreadValues$e({}, parsedFile), {
2027
+ return __spreadProps$h(__spreadValues$i({}, parsedFile), {
2181
2028
  type: removeExcludedTagsFromType(excludedTags, parsedFile.type)
2182
2029
  });
2183
2030
  });
2184
2031
  };
2185
2032
  const removeExcludedTagsFromType = (excludedTags, type) => {
2186
- return __spreadProps$e(__spreadValues$e({}, handleType(excludedTags, type)), {
2033
+ return __spreadProps$h(__spreadValues$i({}, handleType(excludedTags, type)), {
2187
2034
  docComment: removeExcludedTagsFromDocComment(excludedTags, type.docComment)
2188
2035
  });
2189
2036
  };
@@ -2198,7 +2045,7 @@ const handleType = (excludedTags, type) => {
2198
2045
  }
2199
2046
  };
2200
2047
  const handleClass = (excludedTags, classMirror) => {
2201
- return __spreadProps$e(__spreadValues$e({}, classMirror), {
2048
+ return __spreadProps$h(__spreadValues$i({}, classMirror), {
2202
2049
  methods: classMirror.methods.map((method) => removeExcludedTagsFromDocumentable(excludedTags, method)),
2203
2050
  properties: classMirror.properties.map((property) => removeExcludedTagsFromDocumentable(excludedTags, property)),
2204
2051
  fields: classMirror.fields.map((field) => removeExcludedTagsFromDocumentable(excludedTags, field)),
@@ -2211,12 +2058,12 @@ const handleClass = (excludedTags, classMirror) => {
2211
2058
  });
2212
2059
  };
2213
2060
  const handleInterface = (excludedTags, interfaceMirror) => {
2214
- return __spreadProps$e(__spreadValues$e({}, interfaceMirror), {
2061
+ return __spreadProps$h(__spreadValues$i({}, interfaceMirror), {
2215
2062
  methods: interfaceMirror.methods.map((method) => removeExcludedTagsFromDocumentable(excludedTags, method))
2216
2063
  });
2217
2064
  };
2218
2065
  const removeExcludedTagsFromDocumentable = (excludedTags, documentable) => {
2219
- return __spreadProps$e(__spreadValues$e({}, documentable), {
2066
+ return __spreadProps$h(__spreadValues$i({}, documentable), {
2220
2067
  docComment: removeExcludedTagsFromDocComment(excludedTags, documentable.docComment)
2221
2068
  });
2222
2069
  };
@@ -2243,7 +2090,7 @@ const removeExcludedTagsFromAnnotations = (excludedTags, docComment) => {
2243
2090
  O__namespace.map((annotations) => annotations.filter((annotation) => !includesIgnoreCase(excludedTags, annotation.name))),
2244
2091
  O__namespace.fold(
2245
2092
  () => docComment,
2246
- (filteredAnnotations) => __spreadProps$e(__spreadValues$e({}, docComment), {
2093
+ (filteredAnnotations) => __spreadProps$h(__spreadValues$i({}, docComment), {
2247
2094
  annotations: filteredAnnotations
2248
2095
  })
2249
2096
  )
@@ -2251,42 +2098,42 @@ const removeExcludedTagsFromAnnotations = (excludedTags, docComment) => {
2251
2098
  };
2252
2099
  const removeExampleTag = (remover) => {
2253
2100
  return remover("example", (docComment) => {
2254
- return __spreadProps$e(__spreadValues$e({}, docComment), {
2101
+ return __spreadProps$h(__spreadValues$i({}, docComment), {
2255
2102
  exampleAnnotation: null
2256
2103
  });
2257
2104
  });
2258
2105
  };
2259
2106
  const removeParamTags = (remover) => {
2260
2107
  return remover("param", (docComment) => {
2261
- return __spreadProps$e(__spreadValues$e({}, docComment), {
2108
+ return __spreadProps$h(__spreadValues$i({}, docComment), {
2262
2109
  paramAnnotations: []
2263
2110
  });
2264
2111
  });
2265
2112
  };
2266
2113
  const removeReturnTag = (remover) => {
2267
2114
  return remover("return", (docComment) => {
2268
- return __spreadProps$e(__spreadValues$e({}, docComment), {
2115
+ return __spreadProps$h(__spreadValues$i({}, docComment), {
2269
2116
  returnAnnotation: null
2270
2117
  });
2271
2118
  });
2272
2119
  };
2273
2120
  const removeThrowsTag = (remover) => {
2274
2121
  return remover("throws", (docComment) => {
2275
- return __spreadProps$e(__spreadValues$e({}, docComment), {
2122
+ return __spreadProps$h(__spreadValues$i({}, docComment), {
2276
2123
  throwsAnnotations: []
2277
2124
  });
2278
2125
  });
2279
2126
  };
2280
2127
  const removeExceptionTag = (remover) => {
2281
2128
  return remover("exception", (docComment) => {
2282
- return __spreadProps$e(__spreadValues$e({}, docComment), {
2129
+ return __spreadProps$h(__spreadValues$i({}, docComment), {
2283
2130
  throwsAnnotations: []
2284
2131
  });
2285
2132
  });
2286
2133
  };
2287
2134
  const removeDescription = (remover) => {
2288
2135
  return remover("description", (docComment) => {
2289
- return __spreadProps$e(__spreadValues$e({}, docComment), {
2136
+ return __spreadProps$h(__spreadValues$i({}, docComment), {
2290
2137
  description: "",
2291
2138
  descriptionLines: []
2292
2139
  });
@@ -2302,6 +2149,25 @@ const includesIgnoreCase = (excluded, value) => {
2302
2149
  return excluded.some((element) => element.toLowerCase() === value.toLowerCase());
2303
2150
  };
2304
2151
 
2152
+ class ReflectionError {
2153
+ constructor(file, message) {
2154
+ this.file = file;
2155
+ this.message = message;
2156
+ }
2157
+ }
2158
+ class ReflectionErrors {
2159
+ constructor(errors) {
2160
+ this.errors = errors;
2161
+ this._tag = "ReflectionErrors";
2162
+ }
2163
+ }
2164
+ class HookError {
2165
+ constructor(error) {
2166
+ this.error = error;
2167
+ this._tag = "HookError";
2168
+ }
2169
+ }
2170
+
2305
2171
  function getPickListValues(customField) {
2306
2172
  return hasType(customField) && isPicklist(customField) ? toPickListValues(customField) : void 0;
2307
2173
  }
@@ -2332,31 +2198,31 @@ function isArrayOfValues(value) {
2332
2198
  return Array.isArray(value);
2333
2199
  }
2334
2200
 
2335
- var __defProp$d = Object.defineProperty;
2336
- var __defProps$d = Object.defineProperties;
2337
- var __getOwnPropDescs$d = Object.getOwnPropertyDescriptors;
2338
- var __getOwnPropSymbols$d = Object.getOwnPropertySymbols;
2339
- var __hasOwnProp$d = Object.prototype.hasOwnProperty;
2340
- var __propIsEnum$d = Object.prototype.propertyIsEnumerable;
2341
- var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2342
- var __spreadValues$d = (a, b) => {
2343
- for (var prop in b || (b = {}))
2344
- if (__hasOwnProp$d.call(b, prop))
2345
- __defNormalProp$d(a, prop, b[prop]);
2346
- if (__getOwnPropSymbols$d)
2347
- for (var prop of __getOwnPropSymbols$d(b)) {
2348
- if (__propIsEnum$d.call(b, prop))
2349
- __defNormalProp$d(a, prop, b[prop]);
2201
+ var __defProp$h = Object.defineProperty;
2202
+ var __defProps$g = Object.defineProperties;
2203
+ var __getOwnPropDescs$g = Object.getOwnPropertyDescriptors;
2204
+ var __getOwnPropSymbols$h = Object.getOwnPropertySymbols;
2205
+ var __hasOwnProp$h = Object.prototype.hasOwnProperty;
2206
+ var __propIsEnum$h = Object.prototype.propertyIsEnumerable;
2207
+ var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2208
+ var __spreadValues$h = (a, b) => {
2209
+ for (var prop in b || (b = {}))
2210
+ if (__hasOwnProp$h.call(b, prop))
2211
+ __defNormalProp$h(a, prop, b[prop]);
2212
+ if (__getOwnPropSymbols$h)
2213
+ for (var prop of __getOwnPropSymbols$h(b)) {
2214
+ if (__propIsEnum$h.call(b, prop))
2215
+ __defNormalProp$h(a, prop, b[prop]);
2350
2216
  }
2351
2217
  return a;
2352
2218
  };
2353
- var __spreadProps$d = (a, b) => __defProps$d(a, __getOwnPropDescs$d(b));
2219
+ var __spreadProps$g = (a, b) => __defProps$g(a, __getOwnPropDescs$g(b));
2354
2220
  function reflectCustomObjectSources(objectBundles) {
2355
2221
  const semiGroupReflectionError = {
2356
2222
  concat: (x, y) => new ReflectionErrors([...x.errors, ...y.errors])
2357
2223
  };
2358
2224
  const Ap = TE__namespace.getApplicativeTaskValidation(T__namespace.ApplyPar, semiGroupReflectionError);
2359
- return _function.pipe(objectBundles, A__namespace$1.traverse(Ap)(reflectCustomObjectSource));
2225
+ return _function.pipe(objectBundles, A__namespace.traverse(Ap)(reflectCustomObjectSource));
2360
2226
  }
2361
2227
  function reflectCustomObjectSource(objectSource) {
2362
2228
  return _function.pipe(
@@ -2366,7 +2232,7 @@ function reflectCustomObjectSource(objectSource) {
2366
2232
  E__namespace.map((metadata) => addName$1(metadata, objectSource.name)),
2367
2233
  E__namespace.map(parseInlineFields),
2368
2234
  E__namespace.map(addTypeName),
2369
- E__namespace.map((metadata) => toParsedFile$3(objectSource.filePath, metadata)),
2235
+ E__namespace.map((metadata) => toParsedFile$6(objectSource.filePath, metadata)),
2370
2236
  E__namespace.mapLeft((error) => new ReflectionErrors([new ReflectionError(objectSource.filePath, error.message)])),
2371
2237
  TE__namespace.fromEither
2372
2238
  );
@@ -2390,10 +2256,10 @@ function toObjectMetadata(parserResult) {
2390
2256
  fields: [],
2391
2257
  metadataRecords: []
2392
2258
  };
2393
- return __spreadValues$d(__spreadValues$d({}, defaultValues), customObject);
2259
+ return __spreadValues$h(__spreadValues$h({}, defaultValues), customObject);
2394
2260
  }
2395
2261
  function addName$1(objectMetadata, name) {
2396
- return __spreadProps$d(__spreadValues$d({}, objectMetadata), {
2262
+ return __spreadProps$g(__spreadValues$h({}, objectMetadata), {
2397
2263
  name
2398
2264
  });
2399
2265
  }
@@ -2401,7 +2267,7 @@ function parseInlineFields(metadata) {
2401
2267
  if (!Array.isArray(metadata.fields)) {
2402
2268
  metadata.fields = [metadata.fields];
2403
2269
  }
2404
- return __spreadProps$d(__spreadValues$d({}, metadata), {
2270
+ return __spreadProps$g(__spreadValues$h({}, metadata), {
2405
2271
  fields: metadata.fields.map((field) => convertInlineFieldsToCustomFieldMetadata(field, metadata.name))
2406
2272
  });
2407
2273
  }
@@ -2429,11 +2295,11 @@ function convertInlineFieldsToCustomFieldMetadata(inlineField, parentName) {
2429
2295
  };
2430
2296
  }
2431
2297
  function addTypeName(objectMetadata) {
2432
- return __spreadProps$d(__spreadValues$d({}, objectMetadata), {
2298
+ return __spreadProps$g(__spreadValues$h({}, objectMetadata), {
2433
2299
  type_name: "customobject"
2434
2300
  });
2435
2301
  }
2436
- function toParsedFile$3(filePath, typeMirror) {
2302
+ function toParsedFile$6(filePath, typeMirror) {
2437
2303
  return {
2438
2304
  source: {
2439
2305
  filePath,
@@ -2444,31 +2310,31 @@ function toParsedFile$3(filePath, typeMirror) {
2444
2310
  };
2445
2311
  }
2446
2312
 
2447
- var __defProp$c = Object.defineProperty;
2448
- var __defProps$c = Object.defineProperties;
2449
- var __getOwnPropDescs$c = Object.getOwnPropertyDescriptors;
2450
- var __getOwnPropSymbols$c = Object.getOwnPropertySymbols;
2451
- var __hasOwnProp$c = Object.prototype.hasOwnProperty;
2452
- var __propIsEnum$c = Object.prototype.propertyIsEnumerable;
2453
- var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2454
- var __spreadValues$c = (a, b) => {
2313
+ var __defProp$g = Object.defineProperty;
2314
+ var __defProps$f = Object.defineProperties;
2315
+ var __getOwnPropDescs$f = Object.getOwnPropertyDescriptors;
2316
+ var __getOwnPropSymbols$g = Object.getOwnPropertySymbols;
2317
+ var __hasOwnProp$g = Object.prototype.hasOwnProperty;
2318
+ var __propIsEnum$g = Object.prototype.propertyIsEnumerable;
2319
+ var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2320
+ var __spreadValues$g = (a, b) => {
2455
2321
  for (var prop in b || (b = {}))
2456
- if (__hasOwnProp$c.call(b, prop))
2457
- __defNormalProp$c(a, prop, b[prop]);
2458
- if (__getOwnPropSymbols$c)
2459
- for (var prop of __getOwnPropSymbols$c(b)) {
2460
- if (__propIsEnum$c.call(b, prop))
2461
- __defNormalProp$c(a, prop, b[prop]);
2322
+ if (__hasOwnProp$g.call(b, prop))
2323
+ __defNormalProp$g(a, prop, b[prop]);
2324
+ if (__getOwnPropSymbols$g)
2325
+ for (var prop of __getOwnPropSymbols$g(b)) {
2326
+ if (__propIsEnum$g.call(b, prop))
2327
+ __defNormalProp$g(a, prop, b[prop]);
2462
2328
  }
2463
2329
  return a;
2464
2330
  };
2465
- var __spreadProps$c = (a, b) => __defProps$c(a, __getOwnPropDescs$c(b));
2331
+ var __spreadProps$f = (a, b) => __defProps$f(a, __getOwnPropDescs$f(b));
2466
2332
  function reflectCustomFieldSources(customFieldSources) {
2467
2333
  const semiGroupReflectionError = {
2468
2334
  concat: (x, y) => new ReflectionErrors([...x.errors, ...y.errors])
2469
2335
  };
2470
2336
  const Ap = TE__namespace.getApplicativeTaskValidation(T__namespace.ApplyPar, semiGroupReflectionError);
2471
- return _function.pipe(customFieldSources, A__namespace$1.traverse(Ap)(reflectCustomFieldSource));
2337
+ return _function.pipe(customFieldSources, A__namespace.traverse(Ap)(reflectCustomFieldSource));
2472
2338
  }
2473
2339
  function reflectCustomFieldSource(customFieldSource) {
2474
2340
  return _function.pipe(
@@ -2477,7 +2343,7 @@ function reflectCustomFieldSource(customFieldSource) {
2477
2343
  E__namespace.map(toCustomFieldMetadata),
2478
2344
  E__namespace.map((metadata) => addName(metadata, customFieldSource.name)),
2479
2345
  E__namespace.map((metadata) => addParentName$1(metadata, customFieldSource.parentName)),
2480
- E__namespace.map((metadata) => toParsedFile$2(customFieldSource.filePath, metadata)),
2346
+ E__namespace.map((metadata) => toParsedFile$5(customFieldSource.filePath, metadata)),
2481
2347
  E__namespace.mapLeft((error) => new ReflectionErrors([new ReflectionError(customFieldSource.filePath, error.message)])),
2482
2348
  TE__namespace.fromEither
2483
2349
  );
@@ -2501,18 +2367,18 @@ function toCustomFieldMetadata(parserResult) {
2501
2367
  complianceGroup: null,
2502
2368
  inlineHelpText: null
2503
2369
  };
2504
- return __spreadProps$c(__spreadValues$c(__spreadValues$c({}, defaultValues), customField), {
2370
+ return __spreadProps$f(__spreadValues$g(__spreadValues$g({}, defaultValues), customField), {
2505
2371
  type_name: "customfield",
2506
2372
  pickListValues: getPickListValues(customField)
2507
2373
  });
2508
2374
  }
2509
2375
  function addName(metadata, name) {
2510
- return __spreadProps$c(__spreadValues$c({}, metadata), { name });
2376
+ return __spreadProps$f(__spreadValues$g({}, metadata), { name });
2511
2377
  }
2512
2378
  function addParentName$1(metadata, parentName) {
2513
- return __spreadProps$c(__spreadValues$c({}, metadata), { parentName });
2379
+ return __spreadProps$f(__spreadValues$g({}, metadata), { parentName });
2514
2380
  }
2515
- function toParsedFile$2(filePath, typeMirror) {
2381
+ function toParsedFile$5(filePath, typeMirror) {
2516
2382
  return {
2517
2383
  source: {
2518
2384
  filePath,
@@ -2523,27 +2389,27 @@ function toParsedFile$2(filePath, typeMirror) {
2523
2389
  };
2524
2390
  }
2525
2391
 
2526
- var __defProp$b = Object.defineProperty;
2527
- var __defProps$b = Object.defineProperties;
2528
- var __getOwnPropDescs$b = Object.getOwnPropertyDescriptors;
2529
- var __getOwnPropSymbols$b = Object.getOwnPropertySymbols;
2530
- var __hasOwnProp$b = Object.prototype.hasOwnProperty;
2531
- var __propIsEnum$b = Object.prototype.propertyIsEnumerable;
2532
- var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2533
- var __spreadValues$b = (a, b) => {
2392
+ var __defProp$f = Object.defineProperty;
2393
+ var __defProps$e = Object.defineProperties;
2394
+ var __getOwnPropDescs$e = Object.getOwnPropertyDescriptors;
2395
+ var __getOwnPropSymbols$f = Object.getOwnPropertySymbols;
2396
+ var __hasOwnProp$f = Object.prototype.hasOwnProperty;
2397
+ var __propIsEnum$f = Object.prototype.propertyIsEnumerable;
2398
+ var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2399
+ var __spreadValues$f = (a, b) => {
2534
2400
  for (var prop in b || (b = {}))
2535
- if (__hasOwnProp$b.call(b, prop))
2536
- __defNormalProp$b(a, prop, b[prop]);
2537
- if (__getOwnPropSymbols$b)
2538
- for (var prop of __getOwnPropSymbols$b(b)) {
2539
- if (__propIsEnum$b.call(b, prop))
2540
- __defNormalProp$b(a, prop, b[prop]);
2401
+ if (__hasOwnProp$f.call(b, prop))
2402
+ __defNormalProp$f(a, prop, b[prop]);
2403
+ if (__getOwnPropSymbols$f)
2404
+ for (var prop of __getOwnPropSymbols$f(b)) {
2405
+ if (__propIsEnum$f.call(b, prop))
2406
+ __defNormalProp$f(a, prop, b[prop]);
2541
2407
  }
2542
2408
  return a;
2543
2409
  };
2544
- var __spreadProps$b = (a, b) => __defProps$b(a, __getOwnPropDescs$b(b));
2410
+ var __spreadProps$e = (a, b) => __defProps$e(a, __getOwnPropDescs$e(b));
2545
2411
  function reflectCustomMetadataSources(customMetadataSources) {
2546
- return _function.pipe(customMetadataSources, A__namespace$1.traverse(TE__namespace.ApplicativePar)(reflectCustomMetadataSource));
2412
+ return _function.pipe(customMetadataSources, A__namespace.traverse(TE__namespace.ApplicativePar)(reflectCustomMetadataSource));
2547
2413
  }
2548
2414
  function reflectCustomMetadataSource(customMetadataSource) {
2549
2415
  return _function.pipe(
@@ -2552,7 +2418,7 @@ function reflectCustomMetadataSource(customMetadataSource) {
2552
2418
  E__namespace.map(toCustomMetadataMetadata),
2553
2419
  E__namespace.map((metadata) => addNames(metadata, customMetadataSource.name, customMetadataSource.apiName)),
2554
2420
  E__namespace.map((metadata) => addParentName(metadata, customMetadataSource.parentName)),
2555
- E__namespace.map((metadata) => toParsedFile$1(customMetadataSource.filePath, metadata)),
2421
+ E__namespace.map((metadata) => toParsedFile$4(customMetadataSource.filePath, metadata)),
2556
2422
  E__namespace.mapLeft((error) => new ReflectionErrors([new ReflectionError(customMetadataSource.filePath, error.message)])),
2557
2423
  TE__namespace.fromEither
2558
2424
  );
@@ -2572,26 +2438,549 @@ function toCustomMetadataMetadata(parserResult) {
2572
2438
  const defaultValues = {
2573
2439
  label: null
2574
2440
  };
2575
- return __spreadProps$b(__spreadValues$b(__spreadValues$b({}, defaultValues), customMetadata), {
2441
+ return __spreadProps$e(__spreadValues$f(__spreadValues$f({}, defaultValues), customMetadata), {
2576
2442
  type_name: "custommetadata"
2577
2443
  });
2578
2444
  }
2579
- function addNames(metadata, name, apiName) {
2580
- return __spreadProps$b(__spreadValues$b({}, metadata), { name, apiName });
2581
- }
2582
- function addParentName(metadata, parentName) {
2583
- return __spreadProps$b(__spreadValues$b({}, metadata), { parentName });
2445
+ function addNames(metadata, name, apiName) {
2446
+ return __spreadProps$e(__spreadValues$f({}, metadata), { name, apiName });
2447
+ }
2448
+ function addParentName(metadata, parentName) {
2449
+ return __spreadProps$e(__spreadValues$f({}, metadata), { parentName });
2450
+ }
2451
+ function toParsedFile$4(filePath, typeMirror) {
2452
+ return {
2453
+ source: {
2454
+ filePath,
2455
+ name: typeMirror.name,
2456
+ type: typeMirror.type_name
2457
+ },
2458
+ type: typeMirror
2459
+ };
2460
+ }
2461
+
2462
+ var __defProp$e = Object.defineProperty;
2463
+ var __defProps$d = Object.defineProperties;
2464
+ var __getOwnPropDescs$d = Object.getOwnPropertyDescriptors;
2465
+ var __getOwnPropSymbols$e = Object.getOwnPropertySymbols;
2466
+ var __hasOwnProp$e = Object.prototype.hasOwnProperty;
2467
+ var __propIsEnum$e = Object.prototype.propertyIsEnumerable;
2468
+ var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2469
+ var __spreadValues$e = (a, b) => {
2470
+ for (var prop in b || (b = {}))
2471
+ if (__hasOwnProp$e.call(b, prop))
2472
+ __defNormalProp$e(a, prop, b[prop]);
2473
+ if (__getOwnPropSymbols$e)
2474
+ for (var prop of __getOwnPropSymbols$e(b)) {
2475
+ if (__propIsEnum$e.call(b, prop))
2476
+ __defNormalProp$e(a, prop, b[prop]);
2477
+ }
2478
+ return a;
2479
+ };
2480
+ var __spreadProps$d = (a, b) => __defProps$d(a, __getOwnPropDescs$d(b));
2481
+ function reflectCustomFieldsAndObjectsAndMetadataRecords(objectBundles, visibilitiesToDocument) {
2482
+ function filterNonPublished(parsedFiles) {
2483
+ return parsedFiles.filter((parsedFile) => parsedFile.type.deploymentStatus === "Deployed");
2484
+ }
2485
+ function filter(parsedFiles) {
2486
+ function shouldBeDocumented(parsedFile) {
2487
+ return visibilitiesToDocument.includes(parsedFile.type.visibility.toLowerCase());
2488
+ }
2489
+ const objectsToDocument = parsedFiles.filter(shouldBeDocumented);
2490
+ const objectsToIgnore = parsedFiles.filter((parsedFile) => !shouldBeDocumented(parsedFile)).map((parsedFile) => parsedFile.type.name);
2491
+ return [objectsToDocument, objectsToIgnore];
2492
+ }
2493
+ const customObjects = objectBundles.filter(
2494
+ (object) => object.type === "customobject"
2495
+ );
2496
+ const customFields = objectBundles.filter(
2497
+ (object) => object.type === "customfield"
2498
+ );
2499
+ const customMetadata = objectBundles.filter(
2500
+ (object) => object.type === "custommetadata"
2501
+ );
2502
+ function generateForFields(fields) {
2503
+ return _function.pipe(fields, reflectCustomFieldSources);
2504
+ }
2505
+ function generateForMetadata(metadata) {
2506
+ return _function.pipe(metadata, reflectCustomMetadataSources);
2507
+ }
2508
+ return _function.pipe(
2509
+ customObjects,
2510
+ reflectCustomObjectSources,
2511
+ TE__namespace.map(filterNonPublished),
2512
+ TE__namespace.map(filter),
2513
+ TE__namespace.bindTo("filterResult"),
2514
+ TE__namespace.bind("fields", () => generateForFields(customFields)),
2515
+ TE__namespace.bind("metadata", () => generateForMetadata(customMetadata)),
2516
+ TE__namespace.map(({ filterResult, fields, metadata }) => {
2517
+ return [...mapFieldsAndMetadata(filterResult[0], fields, metadata), ...mapExtensionFields(filterResult, fields)];
2518
+ })
2519
+ );
2520
+ }
2521
+ function mapFieldsAndMetadata(objects, fields, metadata) {
2522
+ return objects.map((object) => {
2523
+ const objectFields = fields.filter((field) => field.type.parentName === object.type.name);
2524
+ const objectMetadata = metadata.filter((meta) => `${meta.type.parentName}__mdt` === object.type.name);
2525
+ return __spreadProps$d(__spreadValues$e({}, object), {
2526
+ type: __spreadProps$d(__spreadValues$e({}, object.type), {
2527
+ fields: [...object.type.fields, ...objectFields.map((field) => field.type)],
2528
+ metadataRecords: [...object.type.metadataRecords, ...objectMetadata.map((meta) => meta.type)]
2529
+ })
2530
+ });
2531
+ });
2532
+ }
2533
+ function mapExtensionFields(filterResult, fields) {
2534
+ const objects = filterResult[0];
2535
+ const ignoredObjectNames = filterResult[1];
2536
+ const extensionFields = fields.filter(
2537
+ (field) => !objects.some((object) => object.type.name.toLowerCase() === field.type.parentName.toLowerCase()) && !ignoredObjectNames.map((name) => name.toLowerCase()).includes(field.type.parentName.toLowerCase())
2538
+ );
2539
+ const extensionFieldsByParent = extensionFields.reduce(
2540
+ (acc, field) => {
2541
+ if (!acc[field.type.parentName]) {
2542
+ acc[field.type.parentName] = [];
2543
+ }
2544
+ acc[field.type.parentName].push(field.type);
2545
+ return acc;
2546
+ },
2547
+ {}
2548
+ );
2549
+ return Object.keys(extensionFieldsByParent).map((key) => {
2550
+ const fields2 = extensionFieldsByParent[key];
2551
+ return {
2552
+ source: {
2553
+ name: key,
2554
+ type: "customobject"
2555
+ },
2556
+ type: {
2557
+ type_name: "customobject",
2558
+ deploymentStatus: "Deployed",
2559
+ visibility: "Public",
2560
+ label: key,
2561
+ name: key,
2562
+ description: null,
2563
+ fields: fields2,
2564
+ metadataRecords: []
2565
+ }
2566
+ };
2567
+ });
2568
+ }
2569
+
2570
+ function filterApexSourceFiles(sourceFiles) {
2571
+ return sourceFiles.filter((sourceFile) => sourceFile.type === "apex");
2572
+ }
2573
+ function filterCustomObjectsFieldsAndMetadataRecords(sourceFiles) {
2574
+ return sourceFiles.filter(
2575
+ (sourceFile) => sourceFile.type === "customobject" || sourceFile.type === "customfield" || sourceFile.type === "custommetadata"
2576
+ );
2577
+ }
2578
+ function filterTriggerFiles(sourceFiles) {
2579
+ return sourceFiles.filter((sourceFile) => sourceFile.type === "trigger");
2580
+ }
2581
+
2582
+ var __async$9 = (__this, __arguments, generator) => {
2583
+ return new Promise((resolve2, reject) => {
2584
+ var fulfilled = (value) => {
2585
+ try {
2586
+ step(generator.next(value));
2587
+ } catch (e) {
2588
+ reject(e);
2589
+ }
2590
+ };
2591
+ var rejected = (value) => {
2592
+ try {
2593
+ step(generator.throw(value));
2594
+ } catch (e) {
2595
+ reject(e);
2596
+ }
2597
+ };
2598
+ var step = (x) => x.done ? resolve2(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
2599
+ step((generator = generator.apply(__this, __arguments)).next());
2600
+ });
2601
+ };
2602
+ class WorkerPool {
2603
+ constructor(poolSize) {
2604
+ this.workers = [];
2605
+ this.freeWorkers = [];
2606
+ this.busyWorkers = /* @__PURE__ */ new Set();
2607
+ this.taskQueue = [];
2608
+ this.terminatingWorkers = /* @__PURE__ */ new Set();
2609
+ const size = poolSize || os.cpus().length;
2610
+ this.workerPath = this.getWorkerPath();
2611
+ for (let i = 0; i < size; i++) {
2612
+ this.createWorker();
2613
+ }
2614
+ }
2615
+ getWorkerPath() {
2616
+ if (__filename.endsWith(".ts")) {
2617
+ const rootDir = path.resolve(__dirname, "../../../..");
2618
+ return path.resolve(rootDir, "dist/core/reflection/worker-thread/reflection-worker.js");
2619
+ } else {
2620
+ const workerPath = path.resolve(__dirname, "core/reflection/worker-thread/reflection-worker.js");
2621
+ return workerPath;
2622
+ }
2623
+ }
2624
+ createWorker() {
2625
+ const worker = new worker_threads.Worker(this.workerPath);
2626
+ worker.on("message", (result) => {
2627
+ this.handleWorkerResult(worker, result);
2628
+ });
2629
+ worker.on("error", (error) => {
2630
+ console.error("Worker error:", error);
2631
+ this.handleWorkerError(worker);
2632
+ });
2633
+ worker.on("exit", (code) => {
2634
+ if (code !== 0 && !this.terminatingWorkers.has(worker)) {
2635
+ console.error(`Worker stopped with exit code ${code}`);
2636
+ }
2637
+ this.handleWorkerExit(worker);
2638
+ });
2639
+ this.workers.push(worker);
2640
+ this.freeWorkers.push(worker);
2641
+ return worker;
2642
+ }
2643
+ handleWorkerResult(worker, result) {
2644
+ const taskIndex = this.taskQueue.findIndex(({ task }) => task.id === result.id);
2645
+ if (taskIndex !== -1) {
2646
+ const { resolve: resolve2 } = this.taskQueue[taskIndex];
2647
+ this.taskQueue.splice(taskIndex, 1);
2648
+ resolve2(result);
2649
+ }
2650
+ this.busyWorkers.delete(worker);
2651
+ this.freeWorkers.push(worker);
2652
+ this.processNextTask();
2653
+ }
2654
+ handleWorkerError(worker) {
2655
+ this.busyWorkers.delete(worker);
2656
+ const newWorker = this.createWorker();
2657
+ const workerIndex = this.workers.indexOf(worker);
2658
+ if (workerIndex !== -1) {
2659
+ this.workers[workerIndex] = newWorker;
2660
+ }
2661
+ this.terminatingWorkers.add(worker);
2662
+ worker.terminate();
2663
+ this.processNextTask();
2664
+ }
2665
+ handleWorkerExit(worker) {
2666
+ this.busyWorkers.delete(worker);
2667
+ this.terminatingWorkers.delete(worker);
2668
+ const freeIndex = this.freeWorkers.indexOf(worker);
2669
+ if (freeIndex !== -1) {
2670
+ this.freeWorkers.splice(freeIndex, 1);
2671
+ }
2672
+ const workerIndex = this.workers.indexOf(worker);
2673
+ if (workerIndex !== -1) {
2674
+ this.workers.splice(workerIndex, 1);
2675
+ }
2676
+ }
2677
+ processNextTask() {
2678
+ if (this.taskQueue.length === 0 || this.freeWorkers.length === 0) {
2679
+ return;
2680
+ }
2681
+ const worker = this.freeWorkers.pop();
2682
+ const { task } = this.taskQueue[0];
2683
+ this.busyWorkers.add(worker);
2684
+ worker.postMessage(task);
2685
+ }
2686
+ execute(task) {
2687
+ return __async$9(this, null, function* () {
2688
+ return new Promise((resolve2) => {
2689
+ this.taskQueue.push({ task, resolve: resolve2 });
2690
+ this.processNextTask();
2691
+ });
2692
+ });
2693
+ }
2694
+ executeAll(tasks) {
2695
+ return __async$9(this, null, function* () {
2696
+ const promises = tasks.map((task) => this.execute(task));
2697
+ return Promise.all(promises);
2698
+ });
2699
+ }
2700
+ terminate() {
2701
+ return __async$9(this, null, function* () {
2702
+ this.workers.forEach((worker) => this.terminatingWorkers.add(worker));
2703
+ yield Promise.all(this.workers.map((worker) => worker.terminate()));
2704
+ this.workers = [];
2705
+ this.freeWorkers = [];
2706
+ this.busyWorkers.clear();
2707
+ this.terminatingWorkers.clear();
2708
+ this.taskQueue = [];
2709
+ });
2710
+ }
2711
+ }
2712
+ let workerPool = null;
2713
+ function getWorkerPool() {
2714
+ if (!workerPool) {
2715
+ workerPool = new WorkerPool();
2716
+ }
2717
+ return workerPool;
2718
+ }
2719
+ function terminateWorkerPool() {
2720
+ if (workerPool) {
2721
+ const pool = workerPool;
2722
+ workerPool = null;
2723
+ return pool.terminate();
2724
+ }
2725
+ return Promise.resolve();
2726
+ }
2727
+
2728
+ var workerPool$1 = /*#__PURE__*/Object.freeze({
2729
+ __proto__: null,
2730
+ WorkerPool: WorkerPool,
2731
+ getWorkerPool: getWorkerPool,
2732
+ terminateWorkerPool: terminateWorkerPool
2733
+ });
2734
+
2735
+ var __defProp$d = Object.defineProperty;
2736
+ var __getOwnPropSymbols$d = Object.getOwnPropertySymbols;
2737
+ var __hasOwnProp$d = Object.prototype.hasOwnProperty;
2738
+ var __propIsEnum$d = Object.prototype.propertyIsEnumerable;
2739
+ var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2740
+ var __spreadValues$d = (a, b) => {
2741
+ for (var prop in b || (b = {}))
2742
+ if (__hasOwnProp$d.call(b, prop))
2743
+ __defNormalProp$d(a, prop, b[prop]);
2744
+ if (__getOwnPropSymbols$d)
2745
+ for (var prop of __getOwnPropSymbols$d(b)) {
2746
+ if (__propIsEnum$d.call(b, prop))
2747
+ __defNormalProp$d(a, prop, b[prop]);
2748
+ }
2749
+ return a;
2750
+ };
2751
+ const defaultReflectionConfig = {
2752
+ parallel: process.env.NODE_ENV !== "test",
2753
+ // Disable parallel processing during tests
2754
+ workerThreads: void 0
2755
+ // Will default to CPU cores
2756
+ };
2757
+ let globalReflectionConfig = __spreadValues$d({}, defaultReflectionConfig);
2758
+ function setReflectionConfig(config) {
2759
+ globalReflectionConfig = __spreadValues$d(__spreadValues$d({}, globalReflectionConfig), config);
2760
+ }
2761
+ function getReflectionConfig() {
2762
+ return globalReflectionConfig;
2763
+ }
2764
+
2765
+ function parseApexMetadata(input) {
2766
+ return _function.pipe(input, parse, E__namespace.map(toMap));
2767
+ }
2768
+ function parse(input) {
2769
+ return E__namespace.tryCatch(() => new fastXmlParser.XMLParser().parse(input), E__namespace.toError);
2770
+ }
2771
+ function toMap(metadata) {
2772
+ const map = /* @__PURE__ */ new Map();
2773
+ map.set("apiVersion", String(metadata.ApexClass.apiVersion));
2774
+ if (metadata.ApexClass.status) {
2775
+ map.set("status", String(metadata.ApexClass.status));
2776
+ }
2777
+ return map;
2778
+ }
2779
+
2780
+ var __defProp$c = Object.defineProperty;
2781
+ var __defProps$c = Object.defineProperties;
2782
+ var __getOwnPropDescs$c = Object.getOwnPropertyDescriptors;
2783
+ var __getOwnPropSymbols$c = Object.getOwnPropertySymbols;
2784
+ var __hasOwnProp$c = Object.prototype.hasOwnProperty;
2785
+ var __propIsEnum$c = Object.prototype.propertyIsEnumerable;
2786
+ var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2787
+ var __spreadValues$c = (a, b) => {
2788
+ for (var prop in b || (b = {}))
2789
+ if (__hasOwnProp$c.call(b, prop))
2790
+ __defNormalProp$c(a, prop, b[prop]);
2791
+ if (__getOwnPropSymbols$c)
2792
+ for (var prop of __getOwnPropSymbols$c(b)) {
2793
+ if (__propIsEnum$c.call(b, prop))
2794
+ __defNormalProp$c(a, prop, b[prop]);
2795
+ }
2796
+ return a;
2797
+ };
2798
+ var __spreadProps$c = (a, b) => __defProps$c(a, __getOwnPropDescs$c(b));
2799
+ var __async$8 = (__this, __arguments, generator) => {
2800
+ return new Promise((resolve, reject) => {
2801
+ var fulfilled = (value) => {
2802
+ try {
2803
+ step(generator.next(value));
2804
+ } catch (e) {
2805
+ reject(e);
2806
+ }
2807
+ };
2808
+ var rejected = (value) => {
2809
+ try {
2810
+ step(generator.throw(value));
2811
+ } catch (e) {
2812
+ reject(e);
2813
+ }
2814
+ };
2815
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
2816
+ step((generator = generator.apply(__this, __arguments)).next());
2817
+ });
2818
+ };
2819
+ function reflectAsync$1(rawSource) {
2820
+ return __async$8(this, null, function* () {
2821
+ return new Promise((resolve, reject) => {
2822
+ const result = apexReflection.reflect(rawSource);
2823
+ if (result.typeMirror) {
2824
+ return resolve(result.typeMirror);
2825
+ } else if (result.error) {
2826
+ return reject(result.error);
2827
+ } else {
2828
+ return reject(new Error("Unknown error"));
2829
+ }
2830
+ });
2831
+ });
2832
+ }
2833
+ function reflectApexSource(apexBundles) {
2834
+ const semiGroupReflectionError = {
2835
+ concat: (x, y) => new ReflectionErrors([...x.errors, ...y.errors])
2836
+ };
2837
+ const Ap = TE__namespace.getApplicativeTaskValidation(T__namespace.ApplyPar, semiGroupReflectionError);
2838
+ return _function.pipe(apexBundles, A__namespace$1.traverse(Ap)(reflectBundle$1));
2839
+ }
2840
+ function reflectBundle$1(apexBundle) {
2841
+ const convertToParsedFile = apply(toParsedFile$3, apexBundle.filePath);
2842
+ const withMetadata = apply(addMetadata$1, apexBundle.metadataContent);
2843
+ return _function.pipe(apexBundle, reflectAsTask$1, TE__namespace.map(convertToParsedFile), TE__namespace.flatMap(withMetadata));
2844
+ }
2845
+ function reflectAsTask$1(apexBundle) {
2846
+ return TE__namespace.tryCatch(
2847
+ () => reflectAsync$1(apexBundle.content),
2848
+ (error) => new ReflectionErrors([new ReflectionError(apexBundle.filePath, error.message)])
2849
+ );
2850
+ }
2851
+ function toParsedFile$3(filePath, typeMirror) {
2852
+ return {
2853
+ source: {
2854
+ filePath,
2855
+ name: typeMirror.name,
2856
+ type: typeMirror.type_name
2857
+ },
2858
+ type: typeMirror
2859
+ };
2860
+ }
2861
+ function addMetadata$1(rawMetadataContent, parsedFile) {
2862
+ return TE__namespace.fromEither(
2863
+ _function.pipe(
2864
+ parsedFile.type,
2865
+ (type) => addFileMetadataToTypeAnnotation$1(type, rawMetadataContent),
2866
+ E__namespace.map((type) => __spreadProps$c(__spreadValues$c({}, parsedFile), { type })),
2867
+ E__namespace.mapLeft(
2868
+ (error) => errorToReflectionErrors(error, isInSource(parsedFile.source) ? parsedFile.source.filePath : "")
2869
+ )
2870
+ )
2871
+ );
2872
+ }
2873
+ function errorToReflectionErrors(error, filePath) {
2874
+ return new ReflectionErrors([new ReflectionError(filePath, error.message)]);
2875
+ }
2876
+ function addFileMetadataToTypeAnnotation$1(type, metadata) {
2877
+ const concatAnnotationToType = apply(concatAnnotations$1, type);
2878
+ return _function.pipe(
2879
+ O__namespace.fromNullable(metadata),
2880
+ O__namespace.map(concatAnnotationToType),
2881
+ O__namespace.getOrElse(() => E__namespace.right(type))
2882
+ );
2883
+ }
2884
+ function concatAnnotations$1(type, metadataInput) {
2885
+ return _function.pipe(
2886
+ metadataInput,
2887
+ parseApexMetadata,
2888
+ E__namespace.map((metadataMap) => __spreadProps$c(__spreadValues$c({}, type), {
2889
+ annotations: [...type.annotations, ...mapToAnnotations$1(metadataMap)]
2890
+ }))
2891
+ );
2892
+ }
2893
+ function mapToAnnotations$1(metadata) {
2894
+ return Array.from(metadata.entries()).map(([key, value]) => {
2895
+ const declaration = `${key}: ${value}`;
2896
+ return {
2897
+ name: declaration,
2898
+ type: declaration,
2899
+ rawDeclaration: declaration
2900
+ };
2901
+ });
2902
+ }
2903
+
2904
+ var __defProp$b = Object.defineProperty;
2905
+ var __defProps$b = Object.defineProperties;
2906
+ var __getOwnPropDescs$b = Object.getOwnPropertyDescriptors;
2907
+ var __getOwnPropSymbols$b = Object.getOwnPropertySymbols;
2908
+ var __hasOwnProp$b = Object.prototype.hasOwnProperty;
2909
+ var __propIsEnum$b = Object.prototype.propertyIsEnumerable;
2910
+ var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2911
+ var __spreadValues$b = (a, b) => {
2912
+ for (var prop in b || (b = {}))
2913
+ if (__hasOwnProp$b.call(b, prop))
2914
+ __defNormalProp$b(a, prop, b[prop]);
2915
+ if (__getOwnPropSymbols$b)
2916
+ for (var prop of __getOwnPropSymbols$b(b)) {
2917
+ if (__propIsEnum$b.call(b, prop))
2918
+ __defNormalProp$b(a, prop, b[prop]);
2919
+ }
2920
+ return a;
2921
+ };
2922
+ var __spreadProps$b = (a, b) => __defProps$b(a, __getOwnPropDescs$b(b));
2923
+ var __async$7 = (__this, __arguments, generator) => {
2924
+ return new Promise((resolve, reject) => {
2925
+ var fulfilled = (value) => {
2926
+ try {
2927
+ step(generator.next(value));
2928
+ } catch (e) {
2929
+ reject(e);
2930
+ }
2931
+ };
2932
+ var rejected = (value) => {
2933
+ try {
2934
+ step(generator.throw(value));
2935
+ } catch (e) {
2936
+ reject(e);
2937
+ }
2938
+ };
2939
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
2940
+ step((generator = generator.apply(__this, __arguments)).next());
2941
+ });
2942
+ };
2943
+ function reflectTriggerSource(triggerBundles) {
2944
+ const semiGroupReflectionError = {
2945
+ concat: (x, y) => new ReflectionErrors([...x.errors, ...y.errors])
2946
+ };
2947
+ const Ap = TE__namespace.getApplicativeTaskValidation(T__namespace.ApplyPar, semiGroupReflectionError);
2948
+ return _function.pipe(triggerBundles, A__namespace$1.traverse(Ap)(reflectBundle));
2949
+ }
2950
+ function reflectBundle(triggerBundle) {
2951
+ const convertToParsedFile = apply(
2952
+ toParsedFile$2,
2953
+ triggerBundle.filePath
2954
+ );
2955
+ return _function.pipe(triggerBundle, reflectAsTask, TE__namespace.map(convertToParsedFile));
2584
2956
  }
2585
- function toParsedFile$1(filePath, typeMirror) {
2957
+ function toParsedFile$2(filePath, triggerMirror) {
2586
2958
  return {
2587
2959
  source: {
2588
2960
  filePath,
2589
- name: typeMirror.name,
2590
- type: typeMirror.type_name
2961
+ name: triggerMirror.name,
2962
+ type: "trigger"
2591
2963
  },
2592
- type: typeMirror
2964
+ type: __spreadProps$b(__spreadValues$b({}, triggerMirror), {
2965
+ type_name: "trigger"
2966
+ })
2593
2967
  };
2594
2968
  }
2969
+ function reflectAsTask(triggerContent) {
2970
+ return TE__namespace.tryCatch(
2971
+ () => reflectAsync(triggerContent.content),
2972
+ (error) => new ReflectionErrors([new ReflectionError(triggerContent.filePath, error.message)])
2973
+ );
2974
+ }
2975
+ function reflectAsync(triggerContent) {
2976
+ return __async$7(this, null, function* () {
2977
+ const reflectionResult = yield apexReflection.reflectTriggerAsync(triggerContent);
2978
+ if (reflectionResult.error) {
2979
+ throw reflectionResult.error;
2980
+ }
2981
+ return reflectionResult.triggerMirror;
2982
+ });
2983
+ }
2595
2984
 
2596
2985
  var __defProp$a = Object.defineProperty;
2597
2986
  var __defProps$a = Object.defineProperties;
@@ -2612,107 +3001,112 @@ var __spreadValues$a = (a, b) => {
2612
3001
  return a;
2613
3002
  };
2614
3003
  var __spreadProps$a = (a, b) => __defProps$a(a, __getOwnPropDescs$a(b));
2615
- function reflectCustomFieldsAndObjectsAndMetadataRecords(objectBundles, visibilitiesToDocument) {
2616
- function filterNonPublished(parsedFiles) {
2617
- return parsedFiles.filter((parsedFile) => parsedFile.type.deploymentStatus === "Deployed");
2618
- }
2619
- function filter(parsedFiles) {
2620
- function shouldBeDocumented(parsedFile) {
2621
- return visibilitiesToDocument.includes(parsedFile.type.visibility.toLowerCase());
3004
+ var __async$6 = (__this, __arguments, generator) => {
3005
+ return new Promise((resolve, reject) => {
3006
+ var fulfilled = (value) => {
3007
+ try {
3008
+ step(generator.next(value));
3009
+ } catch (e) {
3010
+ reject(e);
3011
+ }
3012
+ };
3013
+ var rejected = (value) => {
3014
+ try {
3015
+ step(generator.throw(value));
3016
+ } catch (e) {
3017
+ reject(e);
3018
+ }
3019
+ };
3020
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
3021
+ step((generator = generator.apply(__this, __arguments)).next());
3022
+ });
3023
+ };
3024
+ function reflectApexSourceParallel(apexBundles) {
3025
+ return TE__namespace.tryCatch(
3026
+ () => __async$6(null, null, function* () {
3027
+ const workerPool = getWorkerPool();
3028
+ const tasks = apexBundles.map((bundle) => ({
3029
+ id: uuid.v4(),
3030
+ type: "apex",
3031
+ content: bundle.content,
3032
+ filePath: bundle.filePath
3033
+ }));
3034
+ const results = yield workerPool.executeAll(tasks);
3035
+ const parsedFiles = [];
3036
+ const errors = [];
3037
+ for (let i = 0; i < results.length; i++) {
3038
+ const result = results[i];
3039
+ const originalBundle = apexBundles[i];
3040
+ if (result.success && result.result) {
3041
+ const parsedFile = toParsedFile$1(originalBundle.filePath, result.result);
3042
+ const withMetadataResult = addMetadata(originalBundle.metadataContent, parsedFile);
3043
+ if (E__namespace.isRight(withMetadataResult)) {
3044
+ parsedFiles.push(withMetadataResult.right);
3045
+ } else {
3046
+ errors.push(new ReflectionError(originalBundle.filePath, withMetadataResult.left.message));
3047
+ }
3048
+ } else if (result.error) {
3049
+ errors.push(new ReflectionError(result.error.filePath, result.error.message));
3050
+ }
3051
+ }
3052
+ if (errors.length > 0) {
3053
+ throw new ReflectionErrors(errors);
3054
+ }
3055
+ return parsedFiles;
3056
+ }),
3057
+ (error) => {
3058
+ if (error instanceof ReflectionErrors) {
3059
+ return error;
3060
+ }
3061
+ return new ReflectionErrors([new ReflectionError("", error.message)]);
2622
3062
  }
2623
- const objectsToDocument = parsedFiles.filter(shouldBeDocumented);
2624
- const objectsToIgnore = parsedFiles.filter((parsedFile) => !shouldBeDocumented(parsedFile)).map((parsedFile) => parsedFile.type.name);
2625
- return [objectsToDocument, objectsToIgnore];
2626
- }
2627
- const customObjects = objectBundles.filter(
2628
- (object) => object.type === "customobject"
2629
- );
2630
- const customFields = objectBundles.filter(
2631
- (object) => object.type === "customfield"
2632
- );
2633
- const customMetadata = objectBundles.filter(
2634
- (object) => object.type === "custommetadata"
2635
3063
  );
2636
- function generateForFields(fields) {
2637
- return _function.pipe(fields, reflectCustomFieldSources);
2638
- }
2639
- function generateForMetadata(metadata) {
2640
- return _function.pipe(metadata, reflectCustomMetadataSources);
2641
- }
3064
+ }
3065
+ function toParsedFile$1(filePath, typeMirror) {
3066
+ return {
3067
+ source: {
3068
+ filePath,
3069
+ name: typeMirror.name,
3070
+ type: typeMirror.type_name
3071
+ },
3072
+ type: typeMirror
3073
+ };
3074
+ }
3075
+ function addMetadata(rawMetadataContent, parsedFile) {
2642
3076
  return _function.pipe(
2643
- customObjects,
2644
- reflectCustomObjectSources,
2645
- TE__namespace.map(filterNonPublished),
2646
- TE__namespace.map(filter),
2647
- TE__namespace.bindTo("filterResult"),
2648
- TE__namespace.bind("fields", () => generateForFields(customFields)),
2649
- TE__namespace.bind("metadata", () => generateForMetadata(customMetadata)),
2650
- TE__namespace.map(({ filterResult, fields, metadata }) => {
2651
- return [...mapFieldsAndMetadata(filterResult[0], fields, metadata), ...mapExtensionFields(filterResult, fields)];
2652
- })
3077
+ parsedFile.type,
3078
+ (type) => addFileMetadataToTypeAnnotation(type, rawMetadataContent),
3079
+ E__namespace.map((type) => __spreadProps$a(__spreadValues$a({}, parsedFile), { type }))
2653
3080
  );
2654
3081
  }
2655
- function mapFieldsAndMetadata(objects, fields, metadata) {
2656
- return objects.map((object) => {
2657
- const objectFields = fields.filter((field) => field.type.parentName === object.type.name);
2658
- const objectMetadata = metadata.filter((meta) => `${meta.type.parentName}__mdt` === object.type.name);
2659
- return __spreadProps$a(__spreadValues$a({}, object), {
2660
- type: __spreadProps$a(__spreadValues$a({}, object.type), {
2661
- fields: [...object.type.fields, ...objectFields.map((field) => field.type)],
2662
- metadataRecords: [...object.type.metadataRecords, ...objectMetadata.map((meta) => meta.type)]
2663
- })
2664
- });
2665
- });
2666
- }
2667
- function mapExtensionFields(filterResult, fields) {
2668
- const objects = filterResult[0];
2669
- const ignoredObjectNames = filterResult[1];
2670
- const extensionFields = fields.filter(
2671
- (field) => !objects.some((object) => object.type.name.toLowerCase() === field.type.parentName.toLowerCase()) && !ignoredObjectNames.map((name) => name.toLowerCase()).includes(field.type.parentName.toLowerCase())
3082
+ function addFileMetadataToTypeAnnotation(type, metadata) {
3083
+ const concatAnnotationToType = apply(concatAnnotations, type);
3084
+ return _function.pipe(
3085
+ O__namespace.fromNullable(metadata),
3086
+ O__namespace.map(concatAnnotationToType),
3087
+ O__namespace.getOrElse(() => E__namespace.right(type))
2672
3088
  );
2673
- const extensionFieldsByParent = extensionFields.reduce(
2674
- (acc, field) => {
2675
- if (!acc[field.type.parentName]) {
2676
- acc[field.type.parentName] = [];
2677
- }
2678
- acc[field.type.parentName].push(field.type);
2679
- return acc;
2680
- },
2681
- {}
3089
+ }
3090
+ function concatAnnotations(type, metadataInput) {
3091
+ return _function.pipe(
3092
+ metadataInput,
3093
+ parseApexMetadata,
3094
+ E__namespace.map((metadataMap) => __spreadProps$a(__spreadValues$a({}, type), {
3095
+ annotations: [...type.annotations, ...mapToAnnotations(metadataMap)]
3096
+ }))
2682
3097
  );
2683
- return Object.keys(extensionFieldsByParent).map((key) => {
2684
- const fields2 = extensionFieldsByParent[key];
3098
+ }
3099
+ function mapToAnnotations(metadata) {
3100
+ return Array.from(metadata.entries()).map(([key, value]) => {
3101
+ const declaration = `${key}: ${value}`;
2685
3102
  return {
2686
- source: {
2687
- name: key,
2688
- type: "customobject"
2689
- },
2690
- type: {
2691
- type_name: "customobject",
2692
- deploymentStatus: "Deployed",
2693
- visibility: "Public",
2694
- label: key,
2695
- name: key,
2696
- description: null,
2697
- fields: fields2,
2698
- metadataRecords: []
2699
- }
3103
+ name: declaration,
3104
+ type: declaration,
3105
+ rawDeclaration: declaration
2700
3106
  };
2701
3107
  });
2702
3108
  }
2703
3109
 
2704
- function filterApexSourceFiles(sourceFiles) {
2705
- return sourceFiles.filter((sourceFile) => sourceFile.type === "apex");
2706
- }
2707
- function filterCustomObjectsFieldsAndMetadataRecords(sourceFiles) {
2708
- return sourceFiles.filter(
2709
- (sourceFile) => sourceFile.type === "customobject" || sourceFile.type === "customfield" || sourceFile.type === "custommetadata"
2710
- );
2711
- }
2712
- function filterTriggerFiles(sourceFiles) {
2713
- return sourceFiles.filter((sourceFile) => sourceFile.type === "trigger");
2714
- }
2715
-
2716
3110
  var __defProp$9 = Object.defineProperty;
2717
3111
  var __defProps$9 = Object.defineProperties;
2718
3112
  var __getOwnPropDescs$9 = Object.getOwnPropertyDescriptors;
@@ -2732,7 +3126,7 @@ var __spreadValues$9 = (a, b) => {
2732
3126
  return a;
2733
3127
  };
2734
3128
  var __spreadProps$9 = (a, b) => __defProps$9(a, __getOwnPropDescs$9(b));
2735
- var __async$4 = (__this, __arguments, generator) => {
3129
+ var __async$5 = (__this, __arguments, generator) => {
2736
3130
  return new Promise((resolve, reject) => {
2737
3131
  var fulfilled = (value) => {
2738
3132
  try {
@@ -2752,19 +3146,41 @@ var __async$4 = (__this, __arguments, generator) => {
2752
3146
  step((generator = generator.apply(__this, __arguments)).next());
2753
3147
  });
2754
3148
  };
2755
- function reflectTriggerSource(triggerBundles) {
2756
- const semiGroupReflectionError = {
2757
- concat: (x, y) => new ReflectionErrors([...x.errors, ...y.errors])
2758
- };
2759
- const Ap = TE__namespace.getApplicativeTaskValidation(T__namespace.ApplyPar, semiGroupReflectionError);
2760
- return _function.pipe(triggerBundles, A__namespace.traverse(Ap)(reflectBundle));
2761
- }
2762
- function reflectBundle(triggerBundle) {
2763
- const convertToParsedFile = apply(
2764
- toParsedFile,
2765
- triggerBundle.filePath
3149
+ function reflectTriggerSourceParallel(triggerBundles) {
3150
+ return TE__namespace.tryCatch(
3151
+ () => __async$5(null, null, function* () {
3152
+ const workerPool = getWorkerPool();
3153
+ const tasks = triggerBundles.map((bundle) => ({
3154
+ id: uuid.v4(),
3155
+ type: "trigger",
3156
+ content: bundle.content,
3157
+ filePath: bundle.filePath
3158
+ }));
3159
+ const results = yield workerPool.executeAll(tasks);
3160
+ const parsedFiles = [];
3161
+ const errors = [];
3162
+ for (let i = 0; i < results.length; i++) {
3163
+ const result = results[i];
3164
+ const originalBundle = triggerBundles[i];
3165
+ if (result.success && result.result) {
3166
+ const parsedFile = toParsedFile(originalBundle.filePath, result.result);
3167
+ parsedFiles.push(parsedFile);
3168
+ } else if (result.error) {
3169
+ errors.push(new ReflectionError(result.error.filePath, result.error.message));
3170
+ }
3171
+ }
3172
+ if (errors.length > 0) {
3173
+ throw new ReflectionErrors(errors);
3174
+ }
3175
+ return parsedFiles;
3176
+ }),
3177
+ (error) => {
3178
+ if (error instanceof ReflectionErrors) {
3179
+ return error;
3180
+ }
3181
+ return new ReflectionErrors([new ReflectionError("", error.message)]);
3182
+ }
2766
3183
  );
2767
- return _function.pipe(triggerBundle, reflectAsTask, TE__namespace.map(convertToParsedFile));
2768
3184
  }
2769
3185
  function toParsedFile(filePath, triggerMirror) {
2770
3186
  return {
@@ -2778,19 +3194,45 @@ function toParsedFile(filePath, triggerMirror) {
2778
3194
  })
2779
3195
  };
2780
3196
  }
2781
- function reflectAsTask(triggerContent) {
2782
- return TE__namespace.tryCatch(
2783
- () => reflectAsync(triggerContent.content),
2784
- (error) => new ReflectionErrors([new ReflectionError(triggerContent.filePath, error.message)])
2785
- );
3197
+
3198
+ var __async$4 = (__this, __arguments, generator) => {
3199
+ return new Promise((resolve, reject) => {
3200
+ var fulfilled = (value) => {
3201
+ try {
3202
+ step(generator.next(value));
3203
+ } catch (e) {
3204
+ reject(e);
3205
+ }
3206
+ };
3207
+ var rejected = (value) => {
3208
+ try {
3209
+ step(generator.throw(value));
3210
+ } catch (e) {
3211
+ reject(e);
3212
+ }
3213
+ };
3214
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
3215
+ step((generator = generator.apply(__this, __arguments)).next());
3216
+ });
3217
+ };
3218
+ function reflectApexSourceAdaptive(apexBundles) {
3219
+ const config = getReflectionConfig();
3220
+ if (config.parallel && apexBundles.length > 1 && process.env.NODE_ENV !== "test") {
3221
+ return reflectApexSourceParallel(apexBundles);
3222
+ }
3223
+ return reflectApexSource(apexBundles);
2786
3224
  }
2787
- function reflectAsync(triggerContent) {
3225
+ function reflectTriggerSourceAdaptive(triggerBundles) {
3226
+ const config = getReflectionConfig();
3227
+ if (config.parallel && triggerBundles.length > 1 && process.env.NODE_ENV !== "test") {
3228
+ return reflectTriggerSourceParallel(triggerBundles);
3229
+ }
3230
+ return reflectTriggerSource(triggerBundles);
3231
+ }
3232
+ function cleanupReflectionWorkers() {
2788
3233
  return __async$4(this, null, function* () {
2789
- const reflectionResult = yield apexReflection.reflectTriggerAsync(triggerContent);
2790
- if (reflectionResult.error) {
2791
- throw reflectionResult.error;
2792
- }
2793
- return reflectionResult.triggerMirror;
3234
+ const { terminateWorkerPool } = yield Promise.resolve().then(function () { return workerPool$1; });
3235
+ return terminateWorkerPool();
2794
3236
  });
2795
3237
  }
2796
3238
 
@@ -2834,6 +3276,13 @@ var __async$3 = (__this, __arguments, generator) => {
2834
3276
  });
2835
3277
  };
2836
3278
  function generateDocs(unparsedBundles, config) {
3279
+ var _a;
3280
+ if (config.parallelProcessing !== void 0 || config.workerThreads !== void 0) {
3281
+ setReflectionConfig({
3282
+ parallel: (_a = config.parallelProcessing) != null ? _a : true,
3283
+ workerThreads: config.workerThreads
3284
+ });
3285
+ }
2837
3286
  const translations = mergeTranslations({ markdown: config.translations });
2838
3287
  const convertToReferences = apply(parsedFilesToReferenceGuide, config);
2839
3288
  const convertToRenderableBundle = apply(parsedFilesToRenderableBundle, config);
@@ -2863,7 +3312,7 @@ function generateDocs(unparsedBundles, config) {
2863
3312
  }),
2864
3313
  TE__namespace.chain((parsedFiles) => {
2865
3314
  return _function.pipe(
2866
- reflectTriggerSource(filterTriggerFiles(unparsedBundles)),
3315
+ reflectTriggerSourceAdaptive(filterTriggerFiles(unparsedBundles)),
2867
3316
  TE__namespace.map((parsedTriggerFiles) => [...parsedFiles, ...parsedTriggerFiles])
2868
3317
  );
2869
3318
  }),
@@ -2909,7 +3358,7 @@ function generateForApex(apexBundles, config) {
2909
3358
  const removeExcluded = apply(removeExcludedTags, config.excludeTags);
2910
3359
  return _function.pipe(
2911
3360
  apexBundles,
2912
- reflectApexSource,
3361
+ reflectApexSourceAdaptive,
2913
3362
  TE__namespace.map(filterOutOfScope),
2914
3363
  TE__namespace.map(addInheritedMembersToTypes),
2915
3364
  TE__namespace.map(addInheritanceChainToTypes),
@@ -4732,6 +5181,13 @@ var __async$1 = (__this, __arguments, generator) => {
4732
5181
  });
4733
5182
  };
4734
5183
  function generateChangeLog(oldBundles, newBundles, config) {
5184
+ var _a;
5185
+ if (config.parallelProcessing !== void 0 || config.workerThreads !== void 0) {
5186
+ setReflectionConfig({
5187
+ parallel: (_a = config.parallelProcessing) != null ? _a : true,
5188
+ workerThreads: config.workerThreads
5189
+ });
5190
+ }
4735
5191
  const convertToPageData = apply(toPageData, config.fileName);
4736
5192
  function handleConversion({ changelog, newManifest }) {
4737
5193
  if (config.skipIfNoChanges && !hasChanges(changelog)) {
@@ -4761,7 +5217,7 @@ function generateChangeLog(oldBundles, newBundles, config) {
4761
5217
  function reflect(bundles, config) {
4762
5218
  const filterOutOfScopeApex = apply(filterScope, config.scope);
4763
5219
  function reflectApexFiles(sourceFiles) {
4764
- return _function.pipe(reflectApexSource(sourceFiles), TE__namespace.map(filterOutOfScopeApex));
5220
+ return _function.pipe(reflectApexSourceAdaptive(sourceFiles), TE__namespace.map(filterOutOfScopeApex));
4765
5221
  }
4766
5222
  return _function.pipe(
4767
5223
  reflectApexFiles(filterApexSourceFiles(bundles)),
@@ -4776,7 +5232,7 @@ function reflect(bundles, config) {
4776
5232
  }),
4777
5233
  TE__namespace.chain((parsedFiles) => {
4778
5234
  return _function.pipe(
4779
- reflectTriggerSource(filterTriggerFiles(bundles)),
5235
+ reflectTriggerSourceAdaptive(filterTriggerFiles(bundles)),
4780
5236
  TE__namespace.map((parsedTriggerFiles) => [...parsedFiles, ...parsedTriggerFiles])
4781
5237
  );
4782
5238
  })
@@ -5216,16 +5672,23 @@ class Apexdocs {
5216
5672
  return __async(this, null, function* () {
5217
5673
  logger.logSingle(`Generating ${config.targetGenerator} documentation...`);
5218
5674
  try {
5675
+ let result;
5219
5676
  switch (config.targetGenerator) {
5220
5677
  case "markdown":
5221
- return (yield processMarkdown(config))();
5678
+ result = yield (yield processMarkdown(config))();
5679
+ break;
5222
5680
  case "openapi":
5223
5681
  yield processOpenApi(config, logger);
5224
- return E__namespace.right("\u2714\uFE0F Documentation generated successfully!");
5682
+ result = E__namespace.right("\u2714\uFE0F Documentation generated successfully!");
5683
+ break;
5225
5684
  case "changelog":
5226
- return (yield processChangeLog(config))();
5685
+ result = yield (yield processChangeLog(config))();
5686
+ break;
5227
5687
  }
5688
+ yield cleanupReflectionWorkers();
5689
+ return result;
5228
5690
  } catch (error) {
5691
+ yield cleanupReflectionWorkers();
5229
5692
  return E__namespace.left([error]);
5230
5693
  }
5231
5694
  });