@cparra/apexdocs 3.3.2 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -12,9 +12,11 @@ var O = require('fp-ts/Option');
12
12
  var fastXmlParser = require('fast-xml-parser');
13
13
  var Handlebars = require('handlebars');
14
14
  var boolean = require('fp-ts/boolean');
15
+ var A$1 = require('fp-ts/Array');
15
16
  var fs = require('fs');
16
17
  var TE$1 = require('fp-ts/lib/TaskEither');
17
18
  var minimatch = require('minimatch');
19
+ var sourceDeployRetrieve = require('@salesforce/source-deploy-retrieve');
18
20
  var chalk = require('chalk');
19
21
 
20
22
  function _interopNamespaceDefault(e) {
@@ -41,6 +43,7 @@ var path__namespace = /*#__PURE__*/_interopNamespaceDefault(path);
41
43
  var T__namespace = /*#__PURE__*/_interopNamespaceDefault(T);
42
44
  var A__namespace = /*#__PURE__*/_interopNamespaceDefault(A);
43
45
  var O__namespace = /*#__PURE__*/_interopNamespaceDefault(O);
46
+ var A__namespace$1 = /*#__PURE__*/_interopNamespaceDefault(A$1);
44
47
  var fs__namespace = /*#__PURE__*/_interopNamespaceDefault(fs);
45
48
  var TE__namespace$1 = /*#__PURE__*/_interopNamespaceDefault(TE$1);
46
49
 
@@ -147,25 +150,25 @@ function isInlineCode(content) {
147
150
  return Object.keys(content).includes("__type") && content.__type === "inline-code";
148
151
  }
149
152
 
150
- var __defProp$h = Object.defineProperty;
151
- var __defProps$h = Object.defineProperties;
152
- var __getOwnPropDescs$h = Object.getOwnPropertyDescriptors;
153
- var __getOwnPropSymbols$h = Object.getOwnPropertySymbols;
154
- var __hasOwnProp$h = Object.prototype.hasOwnProperty;
155
- var __propIsEnum$h = Object.prototype.propertyIsEnumerable;
156
- var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
157
- var __spreadValues$h = (a, b) => {
153
+ var __defProp$j = Object.defineProperty;
154
+ var __defProps$j = Object.defineProperties;
155
+ var __getOwnPropDescs$j = Object.getOwnPropertyDescriptors;
156
+ var __getOwnPropSymbols$j = Object.getOwnPropertySymbols;
157
+ var __hasOwnProp$j = Object.prototype.hasOwnProperty;
158
+ var __propIsEnum$j = Object.prototype.propertyIsEnumerable;
159
+ var __defNormalProp$j = (obj, key, value) => key in obj ? __defProp$j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
160
+ var __spreadValues$j = (a, b) => {
158
161
  for (var prop in b || (b = {}))
159
- if (__hasOwnProp$h.call(b, prop))
160
- __defNormalProp$h(a, prop, b[prop]);
161
- if (__getOwnPropSymbols$h)
162
- for (var prop of __getOwnPropSymbols$h(b)) {
163
- if (__propIsEnum$h.call(b, prop))
164
- __defNormalProp$h(a, prop, b[prop]);
162
+ if (__hasOwnProp$j.call(b, prop))
163
+ __defNormalProp$j(a, prop, b[prop]);
164
+ if (__getOwnPropSymbols$j)
165
+ for (var prop of __getOwnPropSymbols$j(b)) {
166
+ if (__propIsEnum$j.call(b, prop))
167
+ __defNormalProp$j(a, prop, b[prop]);
165
168
  }
166
169
  return a;
167
170
  };
168
- var __spreadProps$h = (a, b) => __defProps$h(a, __getOwnPropDescs$h(b));
171
+ var __spreadProps$j = (a, b) => __defProps$j(a, __getOwnPropDescs$j(b));
169
172
  function adaptDescribable(describable, linkGenerator) {
170
173
  return {
171
174
  description: describableToRenderableContent(describable, linkGenerator)
@@ -217,7 +220,7 @@ function adaptDocumentable(documentable, linkGenerator, subHeadingLevel) {
217
220
  function extractCustomTags(type) {
218
221
  var _a2, _b2;
219
222
  const baseTags = ["description", "group", "author", "date", "see", "example", "throws", "exception"];
220
- return (_b2 = (_a2 = type.docComment) == null ? void 0 : _a2.annotations.filter((currentAnnotation) => !baseTags.includes(currentAnnotation.name.toLowerCase())).map((currentAnnotation) => __spreadProps$h(__spreadValues$h({}, adaptDescribable(currentAnnotation.bodyLines, linkGenerator)), {
223
+ return (_b2 = (_a2 = type.docComment) == null ? void 0 : _a2.annotations.filter((currentAnnotation) => !baseTags.includes(currentAnnotation.name.toLowerCase())).map((currentAnnotation) => __spreadProps$j(__spreadValues$j({}, adaptDescribable(currentAnnotation.bodyLines, linkGenerator)), {
221
224
  name: currentAnnotation.name
222
225
  }))) != null ? _b2 : [];
223
226
  }
@@ -231,7 +234,7 @@ function adaptDocumentable(documentable, linkGenerator, subHeadingLevel) {
231
234
  var _a2, _b2;
232
235
  return (_b2 = (_a2 = type.docComment) == null ? void 0 : _a2.annotations.filter((currentAnnotation) => currentAnnotation.name.toLowerCase() === "see").map((currentAnnotation) => currentAnnotation.body)) != null ? _b2 : [];
233
236
  }
234
- return __spreadProps$h(__spreadValues$h({}, adaptDescribable((_a = documentable.docComment) == null ? void 0 : _a.descriptionLines, linkGenerator)), {
237
+ return __spreadProps$j(__spreadValues$j({}, adaptDescribable((_a = documentable.docComment) == null ? void 0 : _a.descriptionLines, linkGenerator)), {
235
238
  annotations: documentable.annotations.map((annotation) => annotation.type.toUpperCase()),
236
239
  customTags: extractCustomTags(documentable),
237
240
  example: {
@@ -246,25 +249,25 @@ function adaptDocumentable(documentable, linkGenerator, subHeadingLevel) {
246
249
  });
247
250
  }
248
251
 
249
- var __defProp$g = Object.defineProperty;
250
- var __defProps$g = Object.defineProperties;
251
- var __getOwnPropDescs$g = Object.getOwnPropertyDescriptors;
252
- var __getOwnPropSymbols$g = Object.getOwnPropertySymbols;
253
- var __hasOwnProp$g = Object.prototype.hasOwnProperty;
254
- var __propIsEnum$g = Object.prototype.propertyIsEnumerable;
255
- var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
256
- var __spreadValues$g = (a, b) => {
252
+ var __defProp$i = Object.defineProperty;
253
+ var __defProps$i = Object.defineProperties;
254
+ var __getOwnPropDescs$i = Object.getOwnPropertyDescriptors;
255
+ var __getOwnPropSymbols$i = Object.getOwnPropertySymbols;
256
+ var __hasOwnProp$i = Object.prototype.hasOwnProperty;
257
+ var __propIsEnum$i = Object.prototype.propertyIsEnumerable;
258
+ var __defNormalProp$i = (obj, key, value) => key in obj ? __defProp$i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
259
+ var __spreadValues$i = (a, b) => {
257
260
  for (var prop in b || (b = {}))
258
- if (__hasOwnProp$g.call(b, prop))
259
- __defNormalProp$g(a, prop, b[prop]);
260
- if (__getOwnPropSymbols$g)
261
- for (var prop of __getOwnPropSymbols$g(b)) {
262
- if (__propIsEnum$g.call(b, prop))
263
- __defNormalProp$g(a, prop, b[prop]);
261
+ if (__hasOwnProp$i.call(b, prop))
262
+ __defNormalProp$i(a, prop, b[prop]);
263
+ if (__getOwnPropSymbols$i)
264
+ for (var prop of __getOwnPropSymbols$i(b)) {
265
+ if (__propIsEnum$i.call(b, prop))
266
+ __defNormalProp$i(a, prop, b[prop]);
264
267
  }
265
268
  return a;
266
269
  };
267
- var __spreadProps$g = (a, b) => __defProps$g(a, __getOwnPropDescs$g(b));
270
+ var __spreadProps$i = (a, b) => __defProps$i(a, __getOwnPropDescs$i(b));
268
271
  function adaptMethod(method, linkGenerator, baseHeadingLevel) {
269
272
  var _a, _b, _c;
270
273
  function buildTitle(method2) {
@@ -294,7 +297,7 @@ function adaptMethod(method, linkGenerator, baseHeadingLevel) {
294
297
  returnType: {
295
298
  headingLevel: baseHeadingLevel + 1,
296
299
  heading: "Return Type",
297
- value: __spreadProps$g(__spreadValues$g({}, adaptDescribable((_b = (_a = method.docComment) == null ? void 0 : _a.returnAnnotation) == null ? void 0 : _b.bodyLines, linkGenerator)), {
300
+ value: __spreadProps$i(__spreadValues$i({}, adaptDescribable((_b = (_a = method.docComment) == null ? void 0 : _a.returnAnnotation) == null ? void 0 : _b.bodyLines, linkGenerator)), {
298
301
  type: linkGenerator(method.typeReference.rawDeclaration)
299
302
  })
300
303
  },
@@ -353,13 +356,13 @@ function mapParameters(documentable, param, linkGenerator) {
353
356
  const paramAnnotation = (_a = documentable.docComment) == null ? void 0 : _a.paramAnnotations.find(
354
357
  (pa) => pa.paramName.toLowerCase() === param.name.toLowerCase()
355
358
  );
356
- return __spreadProps$g(__spreadValues$g({}, adaptDescribable(paramAnnotation == null ? void 0 : paramAnnotation.bodyLines, linkGenerator)), {
359
+ return __spreadProps$i(__spreadValues$i({}, adaptDescribable(paramAnnotation == null ? void 0 : paramAnnotation.bodyLines, linkGenerator)), {
357
360
  name: param.name,
358
361
  type: linkGenerator(param.typeReference.rawDeclaration)
359
362
  });
360
363
  }
361
364
  function mapThrows(thrown, linkGenerator) {
362
- return __spreadProps$g(__spreadValues$g({}, adaptDescribable(thrown.bodyLines, linkGenerator)), {
365
+ return __spreadProps$i(__spreadValues$i({}, adaptDescribable(thrown.bodyLines, linkGenerator)), {
363
366
  type: linkGenerator(thrown.exceptionName)
364
367
  });
365
368
  }
@@ -394,25 +397,55 @@ function adaptFieldOrProperty(field, linkGenerator, baseHeadingLevel) {
394
397
  };
395
398
  }
396
399
 
397
- var __defProp$f = Object.defineProperty;
398
- var __defProps$f = Object.defineProperties;
399
- var __getOwnPropDescs$f = Object.getOwnPropertyDescriptors;
400
- var __getOwnPropSymbols$f = Object.getOwnPropertySymbols;
401
- var __hasOwnProp$f = Object.prototype.hasOwnProperty;
402
- var __propIsEnum$f = Object.prototype.propertyIsEnumerable;
403
- var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
404
- var __spreadValues$f = (a, b) => {
400
+ function skip() {
401
+ return {
402
+ _tag: "Skip"
403
+ };
404
+ }
405
+ function isSkip(value) {
406
+ return Object.prototype.hasOwnProperty.call(value, "_tag") && value._tag === "Skip";
407
+ }
408
+ function isObjectType(type) {
409
+ return type.type_name === "customobject";
410
+ }
411
+ function isApexType(type) {
412
+ return !isObjectType(type);
413
+ }
414
+ function getTypeGroup(type, config) {
415
+ function getGroup(type2, config2) {
416
+ var _a, _b;
417
+ const groupAnnotation = (_a = type2.docComment) == null ? void 0 : _a.annotations.find(
418
+ (annotation) => annotation.name.toLowerCase() === "group"
419
+ );
420
+ return (_b = groupAnnotation == null ? void 0 : groupAnnotation.body) != null ? _b : config2.defaultGroupName;
421
+ }
422
+ switch (type.type_name) {
423
+ case "customobject":
424
+ return config.customObjectsGroupName;
425
+ default:
426
+ return getGroup(type, config);
427
+ }
428
+ }
429
+
430
+ var __defProp$h = Object.defineProperty;
431
+ var __defProps$h = Object.defineProperties;
432
+ var __getOwnPropDescs$h = Object.getOwnPropertyDescriptors;
433
+ var __getOwnPropSymbols$h = Object.getOwnPropertySymbols;
434
+ var __hasOwnProp$h = Object.prototype.hasOwnProperty;
435
+ var __propIsEnum$h = Object.prototype.propertyIsEnumerable;
436
+ var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
437
+ var __spreadValues$h = (a, b) => {
405
438
  for (var prop in b || (b = {}))
406
- if (__hasOwnProp$f.call(b, prop))
407
- __defNormalProp$f(a, prop, b[prop]);
408
- if (__getOwnPropSymbols$f)
409
- for (var prop of __getOwnPropSymbols$f(b)) {
410
- if (__propIsEnum$f.call(b, prop))
411
- __defNormalProp$f(a, prop, b[prop]);
439
+ if (__hasOwnProp$h.call(b, prop))
440
+ __defNormalProp$h(a, prop, b[prop]);
441
+ if (__getOwnPropSymbols$h)
442
+ for (var prop of __getOwnPropSymbols$h(b)) {
443
+ if (__propIsEnum$h.call(b, prop))
444
+ __defNormalProp$h(a, prop, b[prop]);
412
445
  }
413
446
  return a;
414
447
  };
415
- var __spreadProps$f = (a, b) => __defProps$f(a, __getOwnPropDescs$f(b));
448
+ var __spreadProps$h = (a, b) => __defProps$h(a, __getOwnPropDescs$h(b));
416
449
  function typeToRenderable$1(parsedFile, linkGenerator, config) {
417
450
  function getRenderable() {
418
451
  const { type } = parsedFile;
@@ -423,9 +456,11 @@ function typeToRenderable$1(parsedFile, linkGenerator, config) {
423
456
  return interfaceTypeToInterfaceSource(type, linkGenerator);
424
457
  case "class":
425
458
  return classTypeToClassSource(type, linkGenerator);
459
+ case "customobject":
460
+ return objectMetadataToRenderable(type, config);
426
461
  }
427
462
  }
428
- return __spreadProps$f(__spreadValues$f({}, getRenderable()), {
463
+ return __spreadProps$h(__spreadValues$h({}, getRenderable()), {
429
464
  filePath: parsedFile.source.filePath,
430
465
  namespace: config.namespace
431
466
  });
@@ -450,7 +485,7 @@ function baseTypeAdapter(type, linkGenerator, baseHeadingLevel) {
450
485
  };
451
486
  }
452
487
  function enumTypeToEnumSource(enumType, linkGenerator, baseHeadingLevel = 1) {
453
- return __spreadProps$f(__spreadValues$f({
488
+ return __spreadProps$h(__spreadValues$h({
454
489
  type: "enum"
455
490
  }, baseTypeAdapter(enumType, linkGenerator, baseHeadingLevel)), {
456
491
  values: {
@@ -458,7 +493,7 @@ function enumTypeToEnumSource(enumType, linkGenerator, baseHeadingLevel = 1) {
458
493
  heading: "Values",
459
494
  value: enumType.values.map((value) => {
460
495
  var _a;
461
- return __spreadProps$f(__spreadValues$f({}, adaptDescribable((_a = value.docComment) == null ? void 0 : _a.descriptionLines, linkGenerator)), {
496
+ return __spreadProps$h(__spreadValues$h({}, adaptDescribable((_a = value.docComment) == null ? void 0 : _a.descriptionLines, linkGenerator)), {
462
497
  value: value.name
463
498
  });
464
499
  })
@@ -466,7 +501,7 @@ function enumTypeToEnumSource(enumType, linkGenerator, baseHeadingLevel = 1) {
466
501
  });
467
502
  }
468
503
  function interfaceTypeToInterfaceSource(interfaceType, linkGenerator, baseHeadingLevel = 1) {
469
- return __spreadProps$f(__spreadValues$f({
504
+ return __spreadProps$h(__spreadValues$h({
470
505
  type: "interface"
471
506
  }, baseTypeAdapter(interfaceType, linkGenerator, baseHeadingLevel)), {
472
507
  extends: interfaceType.extended_interfaces.map(linkGenerator),
@@ -478,7 +513,7 @@ function interfaceTypeToInterfaceSource(interfaceType, linkGenerator, baseHeadin
478
513
  });
479
514
  }
480
515
  function classTypeToClassSource(classType, linkGenerator, baseHeadingLevel = 1) {
481
- return __spreadProps$f(__spreadValues$f({
516
+ return __spreadProps$h(__spreadValues$h({
482
517
  type: "class"
483
518
  }, baseTypeAdapter(classType, linkGenerator, baseHeadingLevel)), {
484
519
  classModifier: classType.classModifier,
@@ -511,7 +546,7 @@ function classTypeToClassSource(classType, linkGenerator, baseHeadingLevel = 1)
511
546
  headingLevel: baseHeadingLevel + 1,
512
547
  heading: "Classes",
513
548
  value: classType.classes.map(
514
- (innerClass) => classTypeToClassSource(__spreadProps$f(__spreadValues$f({}, innerClass), { inheritanceChain: [] }), linkGenerator, baseHeadingLevel + 2)
549
+ (innerClass) => classTypeToClassSource(__spreadProps$h(__spreadValues$h({}, innerClass), { inheritanceChain: [] }), linkGenerator, baseHeadingLevel + 2)
515
550
  )
516
551
  },
517
552
  innerEnums: {
@@ -569,6 +604,45 @@ function singleGroup(headingLevel, groupName, adapter, members, linkGenerator) {
569
604
  value: toFlat(members, adapter, linkGenerator, headingLevel + 1)
570
605
  };
571
606
  }
607
+ function objectMetadataToRenderable(objectMetadata, config) {
608
+ return {
609
+ type: "customobject",
610
+ headingLevel: 1,
611
+ apiName: getApiName(objectMetadata.name, config),
612
+ heading: objectMetadata.label,
613
+ name: objectMetadata.name,
614
+ doc: {
615
+ description: objectMetadata.description ? [objectMetadata.description] : [],
616
+ group: getTypeGroup(objectMetadata, config)
617
+ },
618
+ hasFields: objectMetadata.fields.length > 0,
619
+ fields: {
620
+ headingLevel: 2,
621
+ heading: "Fields",
622
+ value: objectMetadata.fields.map((field) => fieldMetadataToRenderable(field.type, config, 3))
623
+ }
624
+ };
625
+ }
626
+ function fieldMetadataToRenderable(field, config, headingLevel) {
627
+ return {
628
+ type: "field",
629
+ headingLevel,
630
+ heading: field.label,
631
+ description: field.description ? [field.description] : [],
632
+ apiName: getApiName(field.name, config),
633
+ fieldType: field.type
634
+ };
635
+ }
636
+ function getApiName(currentName, config) {
637
+ if (config.namespace) {
638
+ const name = currentName.replace(/__c$/, "");
639
+ if (name.includes("__")) {
640
+ return name;
641
+ }
642
+ return `${config.namespace}__${currentName}`;
643
+ }
644
+ return currentName;
645
+ }
572
646
 
573
647
  const generateLink = (strategy) => {
574
648
  switch (strategy) {
@@ -643,23 +717,26 @@ function parsedFilesToRenderableBundle(config, parsedFiles, references) {
643
717
  }
644
718
  function addToReferenceGuide(findLinkFromHome, config, references) {
645
719
  return (acc, parsedFile) => {
646
- var _a, _b;
647
- const group = getTypeGroup$1(parsedFile.type, config);
720
+ const group = getTypeGroup(parsedFile.type, config);
648
721
  if (!acc[group]) {
649
722
  acc[group] = [];
650
723
  }
651
724
  acc[group].push({
652
- reference: references[parsedFile.type.name],
653
- title: findLinkFromHome(parsedFile.type.name),
654
- description: (_b = adaptDescribable((_a = parsedFile.type.docComment) == null ? void 0 : _a.descriptionLines, findLinkFromHome).description) != null ? _b : null
725
+ reference: references[parsedFile.source.name],
726
+ title: findLinkFromHome(parsedFile.source.name),
727
+ description: getRenderableDescription(parsedFile.type, findLinkFromHome)
655
728
  });
656
729
  return acc;
657
730
  };
658
731
  }
659
- function getTypeGroup$1(type, config) {
732
+ function getRenderableDescription(type, findLinkFromHome) {
660
733
  var _a, _b;
661
- const groupAnnotation = (_a = type.docComment) == null ? void 0 : _a.annotations.find((annotation) => annotation.name.toLowerCase() === "group");
662
- return (_b = groupAnnotation == null ? void 0 : groupAnnotation.body) != null ? _b : config.defaultGroupName;
734
+ switch (type.type_name) {
735
+ case "customobject":
736
+ return type.description ? [type.description] : null;
737
+ default:
738
+ return (_b = adaptDescribable((_a = type.docComment) == null ? void 0 : _a.descriptionLines, findLinkFromHome).description) != null ? _b : null;
739
+ }
663
740
  }
664
741
 
665
742
  class ReflectionError {
@@ -696,26 +773,26 @@ function toMap(metadata) {
696
773
  return map;
697
774
  }
698
775
 
699
- var __defProp$e = Object.defineProperty;
700
- var __defProps$e = Object.defineProperties;
701
- var __getOwnPropDescs$e = Object.getOwnPropertyDescriptors;
702
- var __getOwnPropSymbols$e = Object.getOwnPropertySymbols;
703
- var __hasOwnProp$e = Object.prototype.hasOwnProperty;
704
- var __propIsEnum$e = Object.prototype.propertyIsEnumerable;
705
- var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
706
- var __spreadValues$e = (a, b) => {
776
+ var __defProp$g = Object.defineProperty;
777
+ var __defProps$g = Object.defineProperties;
778
+ var __getOwnPropDescs$g = Object.getOwnPropertyDescriptors;
779
+ var __getOwnPropSymbols$g = Object.getOwnPropertySymbols;
780
+ var __hasOwnProp$g = Object.prototype.hasOwnProperty;
781
+ var __propIsEnum$g = Object.prototype.propertyIsEnumerable;
782
+ var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
783
+ var __spreadValues$g = (a, b) => {
707
784
  for (var prop in b || (b = {}))
708
- if (__hasOwnProp$e.call(b, prop))
709
- __defNormalProp$e(a, prop, b[prop]);
710
- if (__getOwnPropSymbols$e)
711
- for (var prop of __getOwnPropSymbols$e(b)) {
712
- if (__propIsEnum$e.call(b, prop))
713
- __defNormalProp$e(a, prop, b[prop]);
785
+ if (__hasOwnProp$g.call(b, prop))
786
+ __defNormalProp$g(a, prop, b[prop]);
787
+ if (__getOwnPropSymbols$g)
788
+ for (var prop of __getOwnPropSymbols$g(b)) {
789
+ if (__propIsEnum$g.call(b, prop))
790
+ __defNormalProp$g(a, prop, b[prop]);
714
791
  }
715
792
  return a;
716
793
  };
717
- var __spreadProps$e = (a, b) => __defProps$e(a, __getOwnPropDescs$e(b));
718
- var __async$5 = (__this, __arguments, generator) => {
794
+ var __spreadProps$g = (a, b) => __defProps$g(a, __getOwnPropDescs$g(b));
795
+ var __async$3 = (__this, __arguments, generator) => {
719
796
  return new Promise((resolve, reject) => {
720
797
  var fulfilled = (value) => {
721
798
  try {
@@ -736,7 +813,7 @@ var __async$5 = (__this, __arguments, generator) => {
736
813
  });
737
814
  };
738
815
  function reflectAsync(rawSource) {
739
- return __async$5(this, null, function* () {
816
+ return __async$3(this, null, function* () {
740
817
  return new Promise((resolve, reject) => {
741
818
  const result = apexReflection.reflect(rawSource);
742
819
  if (result.typeMirror) {
@@ -749,7 +826,7 @@ function reflectAsync(rawSource) {
749
826
  });
750
827
  });
751
828
  }
752
- function reflectBundles(apexBundles) {
829
+ function reflectApexSource(apexBundles) {
753
830
  const semiGroupReflectionError = {
754
831
  concat: (x, y) => new ReflectionErrors([...x.errors, ...y.errors])
755
832
  };
@@ -757,7 +834,7 @@ function reflectBundles(apexBundles) {
757
834
  return _function.pipe(apexBundles, A__namespace.traverse(Ap)(reflectBundle));
758
835
  }
759
836
  function reflectBundle(apexBundle) {
760
- const convertToParsedFile = apply(toParsedFile, apexBundle.filePath);
837
+ const convertToParsedFile = apply(toParsedFile$2, apexBundle.filePath);
761
838
  const withMetadata = apply(addMetadata, apexBundle.metadataContent);
762
839
  return _function.pipe(apexBundle, reflectAsTask, TE__namespace.map(convertToParsedFile), TE__namespace.flatMap(withMetadata));
763
840
  }
@@ -767,7 +844,7 @@ function reflectAsTask(apexBundle) {
767
844
  (error) => new ReflectionErrors([new ReflectionError(apexBundle.filePath, error.message)])
768
845
  );
769
846
  }
770
- function toParsedFile(filePath, typeMirror) {
847
+ function toParsedFile$2(filePath, typeMirror) {
771
848
  return {
772
849
  source: {
773
850
  filePath,
@@ -782,7 +859,7 @@ function addMetadata(rawMetadataContent, parsedFile) {
782
859
  _function.pipe(
783
860
  parsedFile.type,
784
861
  (type) => addFileMetadataToTypeAnnotation(type, rawMetadataContent),
785
- E__namespace.map((type) => __spreadProps$e(__spreadValues$e({}, parsedFile), { type })),
862
+ E__namespace.map((type) => __spreadProps$g(__spreadValues$g({}, parsedFile), { type })),
786
863
  E__namespace.mapLeft((error) => errorToReflectionErrors(error, parsedFile.source.filePath))
787
864
  )
788
865
  );
@@ -802,7 +879,7 @@ function concatAnnotations(type, metadataInput) {
802
879
  return _function.pipe(
803
880
  metadataInput,
804
881
  parseApexMetadata,
805
- E__namespace.map((metadataMap) => __spreadProps$e(__spreadValues$e({}, type), {
882
+ E__namespace.map((metadataMap) => __spreadProps$g(__spreadValues$g({}, type), {
806
883
  annotations: [...type.annotations, ...mapToAnnotations(metadataMap)]
807
884
  }))
808
885
  );
@@ -839,26 +916,26 @@ function inheritanceChainFromParentClassName(repository, className) {
839
916
 
840
917
  const parsedFilesToTypes = (parsedFiles) => parsedFiles.map((parsedFile) => parsedFile.type);
841
918
 
842
- var __defProp$d = Object.defineProperty;
843
- var __defProps$d = Object.defineProperties;
844
- var __getOwnPropDescs$d = Object.getOwnPropertyDescriptors;
845
- var __getOwnPropSymbols$d = Object.getOwnPropertySymbols;
846
- var __hasOwnProp$d = Object.prototype.hasOwnProperty;
847
- var __propIsEnum$d = Object.prototype.propertyIsEnumerable;
848
- var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
849
- var __spreadValues$d = (a, b) => {
919
+ var __defProp$f = Object.defineProperty;
920
+ var __defProps$f = Object.defineProperties;
921
+ var __getOwnPropDescs$f = Object.getOwnPropertyDescriptors;
922
+ var __getOwnPropSymbols$f = Object.getOwnPropertySymbols;
923
+ var __hasOwnProp$f = Object.prototype.hasOwnProperty;
924
+ var __propIsEnum$f = Object.prototype.propertyIsEnumerable;
925
+ var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
926
+ var __spreadValues$f = (a, b) => {
850
927
  for (var prop in b || (b = {}))
851
- if (__hasOwnProp$d.call(b, prop))
852
- __defNormalProp$d(a, prop, b[prop]);
853
- if (__getOwnPropSymbols$d)
854
- for (var prop of __getOwnPropSymbols$d(b)) {
855
- if (__propIsEnum$d.call(b, prop))
856
- __defNormalProp$d(a, prop, b[prop]);
928
+ if (__hasOwnProp$f.call(b, prop))
929
+ __defNormalProp$f(a, prop, b[prop]);
930
+ if (__getOwnPropSymbols$f)
931
+ for (var prop of __getOwnPropSymbols$f(b)) {
932
+ if (__propIsEnum$f.call(b, prop))
933
+ __defNormalProp$f(a, prop, b[prop]);
857
934
  }
858
935
  return a;
859
936
  };
860
- var __spreadProps$d = (a, b) => __defProps$d(a, __getOwnPropDescs$d(b));
861
- const addInheritanceChainToTypes = (parsedFiles) => parsedFiles.map((parsedFile) => __spreadProps$d(__spreadValues$d({}, parsedFile), {
937
+ var __spreadProps$f = (a, b) => __defProps$f(a, __getOwnPropDescs$f(b));
938
+ const addInheritanceChainToTypes = (parsedFiles) => parsedFiles.map((parsedFile) => __spreadProps$f(__spreadValues$f({}, parsedFile), {
862
939
  type: addInheritanceChain(parsedFile.type, parsedFilesToTypes(parsedFiles))
863
940
  }));
864
941
  function addInheritanceChain(current, repository) {
@@ -866,31 +943,31 @@ function addInheritanceChain(current, repository) {
866
943
  return current;
867
944
  } else {
868
945
  const inheritanceChain = createInheritanceChain(repository, current);
869
- return __spreadProps$d(__spreadValues$d({}, current), {
946
+ return __spreadProps$f(__spreadValues$f({}, current), {
870
947
  inheritanceChain
871
948
  });
872
949
  }
873
950
  }
874
951
 
875
- var __defProp$c = Object.defineProperty;
876
- var __defProps$c = Object.defineProperties;
877
- var __getOwnPropDescs$c = Object.getOwnPropertyDescriptors;
878
- var __getOwnPropSymbols$c = Object.getOwnPropertySymbols;
879
- var __hasOwnProp$c = Object.prototype.hasOwnProperty;
880
- var __propIsEnum$c = Object.prototype.propertyIsEnumerable;
881
- var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
882
- var __spreadValues$c = (a, b) => {
952
+ var __defProp$e = Object.defineProperty;
953
+ var __defProps$e = Object.defineProperties;
954
+ var __getOwnPropDescs$e = Object.getOwnPropertyDescriptors;
955
+ var __getOwnPropSymbols$e = Object.getOwnPropertySymbols;
956
+ var __hasOwnProp$e = Object.prototype.hasOwnProperty;
957
+ var __propIsEnum$e = Object.prototype.propertyIsEnumerable;
958
+ var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
959
+ var __spreadValues$e = (a, b) => {
883
960
  for (var prop in b || (b = {}))
884
- if (__hasOwnProp$c.call(b, prop))
885
- __defNormalProp$c(a, prop, b[prop]);
886
- if (__getOwnPropSymbols$c)
887
- for (var prop of __getOwnPropSymbols$c(b)) {
888
- if (__propIsEnum$c.call(b, prop))
889
- __defNormalProp$c(a, prop, b[prop]);
961
+ if (__hasOwnProp$e.call(b, prop))
962
+ __defNormalProp$e(a, prop, b[prop]);
963
+ if (__getOwnPropSymbols$e)
964
+ for (var prop of __getOwnPropSymbols$e(b)) {
965
+ if (__propIsEnum$e.call(b, prop))
966
+ __defNormalProp$e(a, prop, b[prop]);
890
967
  }
891
968
  return a;
892
969
  };
893
- var __spreadProps$c = (a, b) => __defProps$c(a, __getOwnPropDescs$c(b));
970
+ var __spreadProps$e = (a, b) => __defProps$e(a, __getOwnPropDescs$e(b));
894
971
  const addInheritedMembersToTypes = (parsedFiles) => parsedFiles.map((parsedFile) => addInheritedMembers(parsedFilesToTypes(parsedFiles), parsedFile));
895
972
  function addInheritedMembers(repository, parsedFile) {
896
973
  function addInheritedMembersToType(repository2, current) {
@@ -902,7 +979,7 @@ function addInheritedMembers(repository, parsedFile) {
902
979
  return addInheritedClassMembers(current, repository2);
903
980
  }
904
981
  }
905
- return __spreadProps$c(__spreadValues$c({}, parsedFile), {
982
+ return __spreadProps$e(__spreadValues$e({}, parsedFile), {
906
983
  type: addInheritedMembersToType(repository, parsedFile.type)
907
984
  });
908
985
  }
@@ -914,11 +991,11 @@ function addInheritedInterfaceMethods(interfaceMirror, repository) {
914
991
  return interfaceMirror2.extended_interfaces;
915
992
  }
916
993
  const parents = getParents(parentExtractor, interfaceMirror, repository);
917
- return __spreadProps$c(__spreadValues$c({}, interfaceMirror), {
994
+ return __spreadProps$e(__spreadValues$e({}, interfaceMirror), {
918
995
  methods: parents.reduce(
919
996
  (acc, currentValue) => [
920
997
  ...acc,
921
- ...currentValue.methods.filter((method) => !methodAlreadyExists(method.name, acc)).map((method) => __spreadProps$c(__spreadValues$c({}, method), {
998
+ ...currentValue.methods.filter((method) => !methodAlreadyExists(method.name, acc)).map((method) => __spreadProps$e(__spreadValues$e({}, method), {
922
999
  inherited: true
923
1000
  }))
924
1001
  ],
@@ -934,12 +1011,12 @@ function addInheritedClassMembers(classMirror, repository) {
934
1011
  return classMirror2.extended_class ? [classMirror2.extended_class] : [];
935
1012
  }
936
1013
  function filterMember(members, existing) {
937
- return members.filter((member) => member.access_modifier.toLowerCase() !== "private").filter((member) => !memberAlreadyExists(member.name, existing)).map((member) => __spreadProps$c(__spreadValues$c({}, member), {
1014
+ return members.filter((member) => member.access_modifier.toLowerCase() !== "private").filter((member) => !memberAlreadyExists(member.name, existing)).map((member) => __spreadProps$e(__spreadValues$e({}, member), {
938
1015
  inherited: true
939
1016
  }));
940
1017
  }
941
1018
  const parents = getParents(parentExtractor, classMirror, repository);
942
- return __spreadProps$c(__spreadValues$c({}, classMirror), {
1019
+ return __spreadProps$e(__spreadValues$e({}, classMirror), {
943
1020
  fields: parents.reduce(
944
1021
  (acc, currentValue) => [...acc, ...filterMember(currentValue.fields, acc)],
945
1022
  classMirror.fields
@@ -1314,51 +1391,83 @@ const link = (source) => {
1314
1391
  }
1315
1392
  };
1316
1393
 
1317
- var __defProp$b = Object.defineProperty;
1318
- var __defProps$b = Object.defineProperties;
1319
- var __getOwnPropDescs$b = Object.getOwnPropertyDescriptors;
1320
- var __getOwnPropSymbols$b = Object.getOwnPropertySymbols;
1321
- var __hasOwnProp$b = Object.prototype.hasOwnProperty;
1322
- var __propIsEnum$b = Object.prototype.propertyIsEnumerable;
1323
- var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1324
- var __spreadValues$b = (a, b) => {
1394
+ var __defProp$d = Object.defineProperty;
1395
+ var __defProps$d = Object.defineProperties;
1396
+ var __getOwnPropDescs$d = Object.getOwnPropertyDescriptors;
1397
+ var __getOwnPropSymbols$d = Object.getOwnPropertySymbols;
1398
+ var __hasOwnProp$d = Object.prototype.hasOwnProperty;
1399
+ var __propIsEnum$d = Object.prototype.propertyIsEnumerable;
1400
+ var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1401
+ var __spreadValues$d = (a, b) => {
1325
1402
  for (var prop in b || (b = {}))
1326
- if (__hasOwnProp$b.call(b, prop))
1327
- __defNormalProp$b(a, prop, b[prop]);
1328
- if (__getOwnPropSymbols$b)
1329
- for (var prop of __getOwnPropSymbols$b(b)) {
1330
- if (__propIsEnum$b.call(b, prop))
1331
- __defNormalProp$b(a, prop, b[prop]);
1403
+ if (__hasOwnProp$d.call(b, prop))
1404
+ __defNormalProp$d(a, prop, b[prop]);
1405
+ if (__getOwnPropSymbols$d)
1406
+ for (var prop of __getOwnPropSymbols$d(b)) {
1407
+ if (__propIsEnum$d.call(b, prop))
1408
+ __defNormalProp$d(a, prop, b[prop]);
1332
1409
  }
1333
1410
  return a;
1334
1411
  };
1335
- var __spreadProps$b = (a, b) => __defProps$b(a, __getOwnPropDescs$b(b));
1412
+ var __spreadProps$d = (a, b) => __defProps$d(a, __getOwnPropDescs$d(b));
1336
1413
  const commonDefaults = {
1337
1414
  targetDir: "./docs/"
1338
1415
  };
1339
- const markdownDefaults = __spreadProps$b(__spreadValues$b({}, commonDefaults), {
1416
+ const markdownDefaults = __spreadProps$d(__spreadValues$d({}, commonDefaults), {
1340
1417
  scope: ["global"],
1341
1418
  defaultGroupName: "Miscellaneous",
1419
+ customObjectsGroupName: "Custom Objects",
1342
1420
  includeMetadata: false,
1343
1421
  sortAlphabetically: false,
1344
1422
  linkingStrategy: "relative",
1345
- referenceGuideTitle: "Apex Reference Guide",
1423
+ referenceGuideTitle: "Reference Guide",
1346
1424
  excludeTags: [],
1347
1425
  exclude: []
1348
1426
  });
1349
- const openApiDefaults = __spreadProps$b(__spreadValues$b({}, commonDefaults), {
1427
+ const openApiDefaults = __spreadProps$d(__spreadValues$d({}, commonDefaults), {
1350
1428
  fileName: "openapi",
1351
1429
  title: "Apex REST API",
1352
1430
  apiVersion: "1.0.0",
1353
1431
  exclude: []
1354
1432
  });
1355
- const changeLogDefaults = __spreadProps$b(__spreadValues$b({}, commonDefaults), {
1433
+ const changeLogDefaults = __spreadProps$d(__spreadValues$d({}, commonDefaults), {
1356
1434
  fileName: "changelog",
1357
1435
  scope: ["global"],
1358
1436
  exclude: [],
1359
1437
  skipIfNoChanges: true
1360
1438
  });
1361
1439
 
1440
+ const customObjectTemplate = `
1441
+ {{ heading headingLevel heading }}
1442
+
1443
+ {{{renderContent doc.description}}}
1444
+
1445
+ ## API Name
1446
+ \`{{apiName}}\`
1447
+
1448
+ {{#if hasFields}}
1449
+ {{ heading fields.headingLevel fields.heading }}
1450
+ {{#each fields.value}}
1451
+ {{ heading headingLevel heading }}
1452
+
1453
+ {{#if description}}
1454
+ {{{renderContent description}}}
1455
+ {{/if}}
1456
+
1457
+ **API Name**
1458
+
1459
+ \`{{{apiName}}}\`
1460
+
1461
+ **Type**
1462
+
1463
+ *{{fieldType}}*
1464
+
1465
+ {{#unless @last}}---{{/unless}}
1466
+ {{/each}}
1467
+ {{/if}}
1468
+
1469
+ `.trim();
1470
+
1362
1471
  const convertToDocumentationBundle = (referenceGuideTitle, referenceGuideTemplate, { referencesByGroup, renderables }) => ({
1363
1472
  referenceGuide: {
1364
1473
  frontmatter: null,
@@ -1400,7 +1509,8 @@ function renderableToPageData(referenceGuideReference, renderable) {
1400
1509
  outputDocPath: reference.reference.outputDocPath,
1401
1510
  frontmatter: null,
1402
1511
  content: docContents,
1403
- group: (_a = renderable2.doc.group) != null ? _a : markdownDefaults.defaultGroupName
1512
+ group: (_a = renderable2.doc.group) != null ? _a : markdownDefaults.defaultGroupName,
1513
+ type: renderable2.type
1404
1514
  };
1405
1515
  }
1406
1516
  return _function.pipe(renderable, resolveApexTypeTemplate, compile$1, (docContents) => buildDocOutput(renderable, docContents));
@@ -1414,6 +1524,8 @@ function resolveApexTypeTemplate(renderable) {
1414
1524
  return interfaceMarkdownTemplate;
1415
1525
  case "class":
1416
1526
  return classMarkdownTemplate;
1527
+ case "customobject":
1528
+ return customObjectTemplate;
1417
1529
  }
1418
1530
  }
1419
1531
  return {
@@ -1425,25 +1537,25 @@ function compile$1(request) {
1425
1537
  return Template.getInstance().compile(request);
1426
1538
  }
1427
1539
 
1428
- var __defProp$a = Object.defineProperty;
1429
- var __defProps$a = Object.defineProperties;
1430
- var __getOwnPropDescs$a = Object.getOwnPropertyDescriptors;
1431
- var __getOwnPropSymbols$a = Object.getOwnPropertySymbols;
1432
- var __hasOwnProp$a = Object.prototype.hasOwnProperty;
1433
- var __propIsEnum$a = Object.prototype.propertyIsEnumerable;
1434
- var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1435
- var __spreadValues$a = (a, b) => {
1540
+ var __defProp$c = Object.defineProperty;
1541
+ var __defProps$c = Object.defineProperties;
1542
+ var __getOwnPropDescs$c = Object.getOwnPropertyDescriptors;
1543
+ var __getOwnPropSymbols$c = Object.getOwnPropertySymbols;
1544
+ var __hasOwnProp$c = Object.prototype.hasOwnProperty;
1545
+ var __propIsEnum$c = Object.prototype.propertyIsEnumerable;
1546
+ var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1547
+ var __spreadValues$c = (a, b) => {
1436
1548
  for (var prop in b || (b = {}))
1437
- if (__hasOwnProp$a.call(b, prop))
1438
- __defNormalProp$a(a, prop, b[prop]);
1439
- if (__getOwnPropSymbols$a)
1440
- for (var prop of __getOwnPropSymbols$a(b)) {
1441
- if (__propIsEnum$a.call(b, prop))
1442
- __defNormalProp$a(a, prop, b[prop]);
1549
+ if (__hasOwnProp$c.call(b, prop))
1550
+ __defNormalProp$c(a, prop, b[prop]);
1551
+ if (__getOwnPropSymbols$c)
1552
+ for (var prop of __getOwnPropSymbols$c(b)) {
1553
+ if (__propIsEnum$c.call(b, prop))
1554
+ __defNormalProp$c(a, prop, b[prop]);
1443
1555
  }
1444
1556
  return a;
1445
1557
  };
1446
- var __spreadProps$a = (a, b) => __defProps$a(a, __getOwnPropDescs$a(b));
1558
+ var __spreadProps$c = (a, b) => __defProps$c(a, __getOwnPropDescs$c(b));
1447
1559
  class Manifest {
1448
1560
  /**
1449
1561
  * Constructs a new Manifest object.
@@ -1468,19 +1580,19 @@ class Manifest {
1468
1580
  }
1469
1581
  if (currentType.type_name === "interface") {
1470
1582
  const currentInterface = currentType;
1471
- return __spreadProps$a(__spreadValues$a({}, currentType), {
1583
+ return __spreadProps$c(__spreadValues$c({}, currentType), {
1472
1584
  methods: this.filterAccessibleModifier(currentInterface.methods, modifiers)
1473
1585
  });
1474
1586
  }
1475
1587
  const currentClass = currentType;
1476
- const filteredClass = __spreadProps$a(__spreadValues$a({}, currentType), {
1588
+ const filteredClass = __spreadProps$c(__spreadValues$c({}, currentType), {
1477
1589
  methods: this.filterAccessibleModifier(currentClass.methods, modifiers),
1478
1590
  properties: this.filterAccessibleModifier(currentClass.properties, modifiers),
1479
1591
  fields: this.filterAccessibleModifier(currentClass.fields, modifiers),
1480
1592
  constructors: this.filterAccessibleModifier(currentClass.constructors, modifiers)
1481
1593
  });
1482
1594
  if (!isForInnerTypes) {
1483
- return __spreadProps$a(__spreadValues$a({}, filteredClass), {
1595
+ return __spreadProps$c(__spreadValues$c({}, filteredClass), {
1484
1596
  enums: this.filterAccessibleModifier(currentClass.enums, modifiers),
1485
1597
  interfaces: this.filterAccessibleModifier(currentClass.interfaces, modifiers),
1486
1598
  classes: new Manifest(currentClass.classes, true).filteredByAccessModifierAndAnnotations(
@@ -1505,28 +1617,28 @@ class Manifest {
1505
1617
  }
1506
1618
  }
1507
1619
 
1508
- var __defProp$9 = Object.defineProperty;
1509
- var __defProps$9 = Object.defineProperties;
1510
- var __getOwnPropDescs$9 = Object.getOwnPropertyDescriptors;
1511
- var __getOwnPropSymbols$9 = Object.getOwnPropertySymbols;
1512
- var __hasOwnProp$9 = Object.prototype.hasOwnProperty;
1513
- var __propIsEnum$9 = Object.prototype.propertyIsEnumerable;
1514
- var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1515
- var __spreadValues$9 = (a, b) => {
1620
+ var __defProp$b = Object.defineProperty;
1621
+ var __defProps$b = Object.defineProperties;
1622
+ var __getOwnPropDescs$b = Object.getOwnPropertyDescriptors;
1623
+ var __getOwnPropSymbols$b = Object.getOwnPropertySymbols;
1624
+ var __hasOwnProp$b = Object.prototype.hasOwnProperty;
1625
+ var __propIsEnum$b = Object.prototype.propertyIsEnumerable;
1626
+ var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1627
+ var __spreadValues$b = (a, b) => {
1516
1628
  for (var prop in b || (b = {}))
1517
- if (__hasOwnProp$9.call(b, prop))
1518
- __defNormalProp$9(a, prop, b[prop]);
1519
- if (__getOwnPropSymbols$9)
1520
- for (var prop of __getOwnPropSymbols$9(b)) {
1521
- if (__propIsEnum$9.call(b, prop))
1522
- __defNormalProp$9(a, prop, b[prop]);
1629
+ if (__hasOwnProp$b.call(b, prop))
1630
+ __defNormalProp$b(a, prop, b[prop]);
1631
+ if (__getOwnPropSymbols$b)
1632
+ for (var prop of __getOwnPropSymbols$b(b)) {
1633
+ if (__propIsEnum$b.call(b, prop))
1634
+ __defNormalProp$b(a, prop, b[prop]);
1523
1635
  }
1524
1636
  return a;
1525
1637
  };
1526
- var __spreadProps$9 = (a, b) => __defProps$9(a, __getOwnPropDescs$9(b));
1638
+ var __spreadProps$b = (a, b) => __defProps$b(a, __getOwnPropDescs$b(b));
1527
1639
  function filterScope(scopes, parsedFiles) {
1528
1640
  return parsedFiles.filter(({ type }) => Manifest.shouldFilterType(type, scopes)).map((parsedFile) => {
1529
- return __spreadProps$9(__spreadValues$9({}, parsedFile), {
1641
+ return __spreadProps$b(__spreadValues$b({}, parsedFile), {
1530
1642
  type: Manifest.filterSingleType(parsedFile.type, scopes, false)
1531
1643
  });
1532
1644
  });
@@ -1540,28 +1652,28 @@ const hookableTemplate = `
1540
1652
  {{{content}}}
1541
1653
  `.trim();
1542
1654
 
1543
- var __defProp$8 = Object.defineProperty;
1544
- var __defProps$8 = Object.defineProperties;
1545
- var __getOwnPropDescs$8 = Object.getOwnPropertyDescriptors;
1546
- var __getOwnPropSymbols$8 = Object.getOwnPropertySymbols;
1547
- var __hasOwnProp$8 = Object.prototype.hasOwnProperty;
1548
- var __propIsEnum$8 = Object.prototype.propertyIsEnumerable;
1549
- var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1550
- var __spreadValues$8 = (a, b) => {
1655
+ var __defProp$a = Object.defineProperty;
1656
+ var __defProps$a = Object.defineProperties;
1657
+ var __getOwnPropDescs$a = Object.getOwnPropertyDescriptors;
1658
+ var __getOwnPropSymbols$a = Object.getOwnPropertySymbols;
1659
+ var __hasOwnProp$a = Object.prototype.hasOwnProperty;
1660
+ var __propIsEnum$a = Object.prototype.propertyIsEnumerable;
1661
+ var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1662
+ var __spreadValues$a = (a, b) => {
1551
1663
  for (var prop in b || (b = {}))
1552
- if (__hasOwnProp$8.call(b, prop))
1553
- __defNormalProp$8(a, prop, b[prop]);
1554
- if (__getOwnPropSymbols$8)
1555
- for (var prop of __getOwnPropSymbols$8(b)) {
1556
- if (__propIsEnum$8.call(b, prop))
1557
- __defNormalProp$8(a, prop, b[prop]);
1664
+ if (__hasOwnProp$a.call(b, prop))
1665
+ __defNormalProp$a(a, prop, b[prop]);
1666
+ if (__getOwnPropSymbols$a)
1667
+ for (var prop of __getOwnPropSymbols$a(b)) {
1668
+ if (__propIsEnum$a.call(b, prop))
1669
+ __defNormalProp$a(a, prop, b[prop]);
1558
1670
  }
1559
1671
  return a;
1560
1672
  };
1561
- var __spreadProps$8 = (a, b) => __defProps$8(a, __getOwnPropDescs$8(b));
1673
+ var __spreadProps$a = (a, b) => __defProps$a(a, __getOwnPropDescs$a(b));
1562
1674
  function sortTypesAndMembers(shouldSort, parsedFiles) {
1563
- return parsedFiles.map((parsedFile) => __spreadProps$8(__spreadValues$8({}, parsedFile), {
1564
- type: sortTypeMember(parsedFile.type, shouldSort)
1675
+ return parsedFiles.map((parsedFile) => __spreadProps$a(__spreadValues$a({}, parsedFile), {
1676
+ type: isApexType(parsedFile.type) ? sortTypeMember(parsedFile.type, shouldSort) : sortCustomObjectFields(parsedFile.type, shouldSort)
1565
1677
  })).sort((a, b) => sortByNames(shouldSort, a.type, b.type));
1566
1678
  }
1567
1679
  function sortByNames(shouldSort, a, b) {
@@ -1583,18 +1695,26 @@ function sortTypeMember(type, shouldSort) {
1583
1695
  return sortClassMembers(shouldSort, type);
1584
1696
  }
1585
1697
  }
1698
+ function sortCustomObjectFields(type, shouldSort) {
1699
+ return __spreadProps$a(__spreadValues$a({}, type), {
1700
+ fields: sortFields(type.fields, shouldSort)
1701
+ });
1702
+ }
1703
+ function sortFields(fields, shouldSort) {
1704
+ return fields.sort((a, b) => sortByNames(shouldSort, a.type, b.type));
1705
+ }
1586
1706
  function sortEnumValues(shouldSort, enumType) {
1587
- return __spreadProps$8(__spreadValues$8({}, enumType), {
1707
+ return __spreadProps$a(__spreadValues$a({}, enumType), {
1588
1708
  values: sortNamed(shouldSort, enumType.values)
1589
1709
  });
1590
1710
  }
1591
1711
  function sortInterfaceMethods(shouldSort, interfaceType) {
1592
- return __spreadProps$8(__spreadValues$8({}, interfaceType), {
1712
+ return __spreadProps$a(__spreadValues$a({}, interfaceType), {
1593
1713
  methods: sortNamed(shouldSort, interfaceType.methods)
1594
1714
  });
1595
1715
  }
1596
1716
  function sortClassMembers(shouldSort, classType) {
1597
- return __spreadProps$8(__spreadValues$8({}, classType), {
1717
+ return __spreadProps$a(__spreadValues$a({}, classType), {
1598
1718
  fields: sortNamed(shouldSort, classType.fields),
1599
1719
  classes: sortNamed(shouldSort, classType.classes),
1600
1720
  enums: sortNamed(shouldSort, classType.enums),
@@ -1604,67 +1724,53 @@ function sortClassMembers(shouldSort, classType) {
1604
1724
  });
1605
1725
  }
1606
1726
 
1607
- function skip() {
1608
- return {
1609
- _tag: "Skip"
1610
- };
1611
- }
1612
- function isSkip(value) {
1613
- return Object.prototype.hasOwnProperty.call(value, "_tag") && value._tag === "Skip";
1614
- }
1615
-
1616
1727
  function parsedFilesToReferenceGuide(config, parsedFiles) {
1617
1728
  return parsedFiles.reduce((acc, parsedFile) => {
1618
- acc[parsedFile.type.name] = parsedFileToDocPageReference(config, parsedFile);
1729
+ acc[parsedFile.source.name] = parsedFileToDocPageReference(config, parsedFile);
1619
1730
  return acc;
1620
1731
  }, {});
1621
1732
  }
1622
1733
  function parsedFileToDocPageReference(config, parsedFile) {
1623
- const path = `${slugify(getTypeGroup(parsedFile.type, config))}/${parsedFile.type.name}.md`;
1734
+ const path = `${slugify(getTypeGroup(parsedFile.type, config))}/${parsedFile.source.name}.md`;
1624
1735
  return {
1625
1736
  source: parsedFile.source,
1626
- displayName: parsedFile.type.name,
1737
+ displayName: parsedFile.source.name,
1627
1738
  outputDocPath: path,
1628
1739
  referencePath: path
1629
1740
  };
1630
1741
  }
1631
- function getTypeGroup(type, config) {
1632
- var _a, _b;
1633
- const groupAnnotation = (_a = type.docComment) == null ? void 0 : _a.annotations.find((annotation) => annotation.name.toLowerCase() === "group");
1634
- return (_b = groupAnnotation == null ? void 0 : groupAnnotation.body) != null ? _b : config.defaultGroupName;
1635
- }
1636
1742
  function slugify(text) {
1637
- return text.toLowerCase().replace(/[^a-z0-9\s-]/g, "").trim().replace(/\s+/g, "-").replace(/-+/g, "-");
1638
- }
1639
-
1640
- var __defProp$7 = Object.defineProperty;
1641
- var __defProps$7 = Object.defineProperties;
1642
- var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
1643
- var __getOwnPropSymbols$7 = Object.getOwnPropertySymbols;
1644
- var __hasOwnProp$7 = Object.prototype.hasOwnProperty;
1645
- var __propIsEnum$7 = Object.prototype.propertyIsEnumerable;
1646
- var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1647
- var __spreadValues$7 = (a, b) => {
1743
+ return text.toLowerCase().replace(/[^a-z0-9\s-]/g, "").trim().replace(/\s+/g, "-").replace(/-+/g, "-");
1744
+ }
1745
+
1746
+ var __defProp$9 = Object.defineProperty;
1747
+ var __defProps$9 = Object.defineProperties;
1748
+ var __getOwnPropDescs$9 = Object.getOwnPropertyDescriptors;
1749
+ var __getOwnPropSymbols$9 = Object.getOwnPropertySymbols;
1750
+ var __hasOwnProp$9 = Object.prototype.hasOwnProperty;
1751
+ var __propIsEnum$9 = Object.prototype.propertyIsEnumerable;
1752
+ var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1753
+ var __spreadValues$9 = (a, b) => {
1648
1754
  for (var prop in b || (b = {}))
1649
- if (__hasOwnProp$7.call(b, prop))
1650
- __defNormalProp$7(a, prop, b[prop]);
1651
- if (__getOwnPropSymbols$7)
1652
- for (var prop of __getOwnPropSymbols$7(b)) {
1653
- if (__propIsEnum$7.call(b, prop))
1654
- __defNormalProp$7(a, prop, b[prop]);
1755
+ if (__hasOwnProp$9.call(b, prop))
1756
+ __defNormalProp$9(a, prop, b[prop]);
1757
+ if (__getOwnPropSymbols$9)
1758
+ for (var prop of __getOwnPropSymbols$9(b)) {
1759
+ if (__propIsEnum$9.call(b, prop))
1760
+ __defNormalProp$9(a, prop, b[prop]);
1655
1761
  }
1656
1762
  return a;
1657
1763
  };
1658
- var __spreadProps$7 = (a, b) => __defProps$7(a, __getOwnPropDescs$7(b));
1764
+ var __spreadProps$9 = (a, b) => __defProps$9(a, __getOwnPropDescs$9(b));
1659
1765
  const removeExcludedTags = (excludedTags, parsedFiles) => {
1660
1766
  return parsedFiles.map((parsedFile) => {
1661
- return __spreadProps$7(__spreadValues$7({}, parsedFile), {
1767
+ return __spreadProps$9(__spreadValues$9({}, parsedFile), {
1662
1768
  type: removeExcludedTagsFromType(excludedTags, parsedFile.type)
1663
1769
  });
1664
1770
  });
1665
1771
  };
1666
1772
  const removeExcludedTagsFromType = (excludedTags, type) => {
1667
- return __spreadProps$7(__spreadValues$7({}, handleType(excludedTags, type)), {
1773
+ return __spreadProps$9(__spreadValues$9({}, handleType(excludedTags, type)), {
1668
1774
  docComment: removeExcludedTagsFromDocComment(excludedTags, type.docComment)
1669
1775
  });
1670
1776
  };
@@ -1679,7 +1785,7 @@ const handleType = (excludedTags, type) => {
1679
1785
  }
1680
1786
  };
1681
1787
  const handleClass = (excludedTags, classMirror) => {
1682
- return __spreadProps$7(__spreadValues$7({}, classMirror), {
1788
+ return __spreadProps$9(__spreadValues$9({}, classMirror), {
1683
1789
  methods: classMirror.methods.map((method) => removeExcludedTagsFromDocumentable(excludedTags, method)),
1684
1790
  properties: classMirror.properties.map((property) => removeExcludedTagsFromDocumentable(excludedTags, property)),
1685
1791
  fields: classMirror.fields.map((field) => removeExcludedTagsFromDocumentable(excludedTags, field)),
@@ -1692,12 +1798,12 @@ const handleClass = (excludedTags, classMirror) => {
1692
1798
  });
1693
1799
  };
1694
1800
  const handleInterface = (excludedTags, interfaceMirror) => {
1695
- return __spreadProps$7(__spreadValues$7({}, interfaceMirror), {
1801
+ return __spreadProps$9(__spreadValues$9({}, interfaceMirror), {
1696
1802
  methods: interfaceMirror.methods.map((method) => removeExcludedTagsFromDocumentable(excludedTags, method))
1697
1803
  });
1698
1804
  };
1699
1805
  const removeExcludedTagsFromDocumentable = (excludedTags, documentable) => {
1700
- return __spreadProps$7(__spreadValues$7({}, documentable), {
1806
+ return __spreadProps$9(__spreadValues$9({}, documentable), {
1701
1807
  docComment: removeExcludedTagsFromDocComment(excludedTags, documentable.docComment)
1702
1808
  });
1703
1809
  };
@@ -1724,7 +1830,7 @@ const removeExcludedTagsFromAnnotations = (excludedTags, docComment) => {
1724
1830
  O__namespace.map((annotations) => annotations.filter((annotation) => !includesIgnoreCase(excludedTags, annotation.name))),
1725
1831
  O__namespace.fold(
1726
1832
  () => docComment,
1727
- (filteredAnnotations) => __spreadProps$7(__spreadValues$7({}, docComment), {
1833
+ (filteredAnnotations) => __spreadProps$9(__spreadValues$9({}, docComment), {
1728
1834
  annotations: filteredAnnotations
1729
1835
  })
1730
1836
  )
@@ -1732,42 +1838,42 @@ const removeExcludedTagsFromAnnotations = (excludedTags, docComment) => {
1732
1838
  };
1733
1839
  const removeExampleTag = (remover) => {
1734
1840
  return remover("example", (docComment) => {
1735
- return __spreadProps$7(__spreadValues$7({}, docComment), {
1841
+ return __spreadProps$9(__spreadValues$9({}, docComment), {
1736
1842
  exampleAnnotation: null
1737
1843
  });
1738
1844
  });
1739
1845
  };
1740
1846
  const removeParamTags = (remover) => {
1741
1847
  return remover("param", (docComment) => {
1742
- return __spreadProps$7(__spreadValues$7({}, docComment), {
1848
+ return __spreadProps$9(__spreadValues$9({}, docComment), {
1743
1849
  paramAnnotations: []
1744
1850
  });
1745
1851
  });
1746
1852
  };
1747
1853
  const removeReturnTag = (remover) => {
1748
1854
  return remover("return", (docComment) => {
1749
- return __spreadProps$7(__spreadValues$7({}, docComment), {
1855
+ return __spreadProps$9(__spreadValues$9({}, docComment), {
1750
1856
  returnAnnotation: null
1751
1857
  });
1752
1858
  });
1753
1859
  };
1754
1860
  const removeThrowsTag = (remover) => {
1755
1861
  return remover("throws", (docComment) => {
1756
- return __spreadProps$7(__spreadValues$7({}, docComment), {
1862
+ return __spreadProps$9(__spreadValues$9({}, docComment), {
1757
1863
  throwsAnnotations: []
1758
1864
  });
1759
1865
  });
1760
1866
  };
1761
1867
  const removeExceptionTag = (remover) => {
1762
1868
  return remover("exception", (docComment) => {
1763
- return __spreadProps$7(__spreadValues$7({}, docComment), {
1869
+ return __spreadProps$9(__spreadValues$9({}, docComment), {
1764
1870
  throwsAnnotations: []
1765
1871
  });
1766
1872
  });
1767
1873
  };
1768
1874
  const removeDescription = (remover) => {
1769
1875
  return remover("description", (docComment) => {
1770
- return __spreadProps$7(__spreadValues$7({}, docComment), {
1876
+ return __spreadProps$9(__spreadValues$9({}, docComment), {
1771
1877
  description: "",
1772
1878
  descriptionLines: []
1773
1879
  });
@@ -1783,6 +1889,183 @@ const includesIgnoreCase = (excluded, value) => {
1783
1889
  return excluded.some((element) => element.toLowerCase() === value.toLowerCase());
1784
1890
  };
1785
1891
 
1892
+ var __defProp$8 = Object.defineProperty;
1893
+ var __defProps$8 = Object.defineProperties;
1894
+ var __getOwnPropDescs$8 = Object.getOwnPropertyDescriptors;
1895
+ var __getOwnPropSymbols$8 = Object.getOwnPropertySymbols;
1896
+ var __hasOwnProp$8 = Object.prototype.hasOwnProperty;
1897
+ var __propIsEnum$8 = Object.prototype.propertyIsEnumerable;
1898
+ var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1899
+ var __spreadValues$8 = (a, b) => {
1900
+ for (var prop in b || (b = {}))
1901
+ if (__hasOwnProp$8.call(b, prop))
1902
+ __defNormalProp$8(a, prop, b[prop]);
1903
+ if (__getOwnPropSymbols$8)
1904
+ for (var prop of __getOwnPropSymbols$8(b)) {
1905
+ if (__propIsEnum$8.call(b, prop))
1906
+ __defNormalProp$8(a, prop, b[prop]);
1907
+ }
1908
+ return a;
1909
+ };
1910
+ var __spreadProps$8 = (a, b) => __defProps$8(a, __getOwnPropDescs$8(b));
1911
+ function reflectCustomObjectSources(objectSources) {
1912
+ const semiGroupReflectionError = {
1913
+ concat: (x, y) => new ReflectionErrors([...x.errors, ...y.errors])
1914
+ };
1915
+ const Ap = TE__namespace.getApplicativeTaskValidation(T__namespace.ApplyPar, semiGroupReflectionError);
1916
+ return _function.pipe(objectSources, A__namespace$1.traverse(Ap)(reflectCustomObjectSource));
1917
+ }
1918
+ function reflectCustomObjectSource(objectSource) {
1919
+ return _function.pipe(
1920
+ E__namespace.tryCatch(() => new fastXmlParser.XMLParser().parse(objectSource.content), E__namespace.toError),
1921
+ E__namespace.flatMap(validate$1),
1922
+ E__namespace.map(toObjectMetadata),
1923
+ E__namespace.map((metadata) => addName$1(metadata, objectSource.name)),
1924
+ E__namespace.map(addTypeName),
1925
+ E__namespace.map((metadata) => toParsedFile$1(objectSource.filePath, metadata)),
1926
+ E__namespace.mapLeft((error) => new ReflectionErrors([new ReflectionError(objectSource.filePath, error.message)])),
1927
+ TE__namespace.fromEither
1928
+ );
1929
+ }
1930
+ function validate$1(parseResult) {
1931
+ const err = E__namespace.left(new Error("Invalid SObject metadata"));
1932
+ function isObject(value) {
1933
+ return typeof value === "object" && value !== null ? E__namespace.right(value) : err;
1934
+ }
1935
+ function hasTheCustomObjectKey(value) {
1936
+ return "CustomObject" in value ? E__namespace.right(value) : err;
1937
+ }
1938
+ function theCustomObjectKeyIsAnObject(value) {
1939
+ return typeof value.CustomObject === "object" ? E__namespace.right(value) : err;
1940
+ }
1941
+ function theCustomObjectContainsTheLabelKey(value) {
1942
+ return "label" in value.CustomObject ? E__namespace.right(value) : err;
1943
+ }
1944
+ return _function.pipe(
1945
+ parseResult,
1946
+ isObject,
1947
+ E__namespace.chain(hasTheCustomObjectKey),
1948
+ E__namespace.chain(theCustomObjectKeyIsAnObject),
1949
+ E__namespace.chain(theCustomObjectContainsTheLabelKey)
1950
+ );
1951
+ }
1952
+ function toObjectMetadata(parserResult) {
1953
+ const defaultValues = {
1954
+ deploymentStatus: "Deployed",
1955
+ visibility: "Public",
1956
+ description: null,
1957
+ fields: []
1958
+ };
1959
+ return __spreadValues$8(__spreadValues$8({}, defaultValues), parserResult.CustomObject);
1960
+ }
1961
+ function addName$1(objectMetadata, name) {
1962
+ return __spreadProps$8(__spreadValues$8({}, objectMetadata), {
1963
+ name
1964
+ });
1965
+ }
1966
+ function addTypeName(objectMetadata) {
1967
+ return __spreadProps$8(__spreadValues$8({}, objectMetadata), {
1968
+ type_name: "customobject"
1969
+ });
1970
+ }
1971
+ function toParsedFile$1(filePath, typeMirror) {
1972
+ return {
1973
+ source: {
1974
+ filePath,
1975
+ name: typeMirror.name,
1976
+ type: typeMirror.type_name
1977
+ },
1978
+ type: typeMirror
1979
+ };
1980
+ }
1981
+
1982
+ var __defProp$7 = Object.defineProperty;
1983
+ var __defProps$7 = Object.defineProperties;
1984
+ var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
1985
+ var __getOwnPropSymbols$7 = Object.getOwnPropertySymbols;
1986
+ var __hasOwnProp$7 = Object.prototype.hasOwnProperty;
1987
+ var __propIsEnum$7 = Object.prototype.propertyIsEnumerable;
1988
+ var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1989
+ var __spreadValues$7 = (a, b) => {
1990
+ for (var prop in b || (b = {}))
1991
+ if (__hasOwnProp$7.call(b, prop))
1992
+ __defNormalProp$7(a, prop, b[prop]);
1993
+ if (__getOwnPropSymbols$7)
1994
+ for (var prop of __getOwnPropSymbols$7(b)) {
1995
+ if (__propIsEnum$7.call(b, prop))
1996
+ __defNormalProp$7(a, prop, b[prop]);
1997
+ }
1998
+ return a;
1999
+ };
2000
+ var __spreadProps$7 = (a, b) => __defProps$7(a, __getOwnPropDescs$7(b));
2001
+ function reflectCustomFieldSources(customFieldSources) {
2002
+ const semiGroupReflectionError = {
2003
+ concat: (x, y) => new ReflectionErrors([...x.errors, ...y.errors])
2004
+ };
2005
+ const Ap = TE__namespace.getApplicativeTaskValidation(T__namespace.ApplyPar, semiGroupReflectionError);
2006
+ return _function.pipe(customFieldSources, A__namespace$1.traverse(Ap)(reflectCustomFieldSource));
2007
+ }
2008
+ function reflectCustomFieldSource(customFieldSource) {
2009
+ return _function.pipe(
2010
+ E__namespace.tryCatch(() => new fastXmlParser.XMLParser().parse(customFieldSource.content), E__namespace.toError),
2011
+ E__namespace.flatMap(validate),
2012
+ E__namespace.map(toCustomFieldMetadata),
2013
+ E__namespace.map((metadata) => addName(metadata, customFieldSource.name)),
2014
+ E__namespace.map((metadata) => addParentName(metadata, customFieldSource.parentName)),
2015
+ E__namespace.map((metadata) => toParsedFile(customFieldSource.filePath, metadata)),
2016
+ E__namespace.mapLeft((error) => new ReflectionErrors([new ReflectionError(customFieldSource.filePath, error.message)])),
2017
+ TE__namespace.fromEither
2018
+ );
2019
+ }
2020
+ function validate(parsedResult) {
2021
+ const err = E__namespace.left(new Error("Invalid custom field metadata"));
2022
+ function isObject(value) {
2023
+ return typeof value === "object" && value !== null ? E__namespace.right(value) : err;
2024
+ }
2025
+ function hasTheCustomFieldKey(value) {
2026
+ return "CustomField" in value ? E__namespace.right(value) : err;
2027
+ }
2028
+ function theCustomFieldKeyIsAnObject(value) {
2029
+ return typeof value.CustomField === "object" ? E__namespace.right(value) : err;
2030
+ }
2031
+ function theCustomFieldObjectContainsTheLabelKey(value) {
2032
+ return "label" in value.CustomField ? E__namespace.right(value) : err;
2033
+ }
2034
+ function theCustomFieldObjectContainsTheTypeKey(value) {
2035
+ return "type" in value.CustomField ? E__namespace.right(value) : err;
2036
+ }
2037
+ return _function.pipe(
2038
+ parsedResult,
2039
+ isObject,
2040
+ E__namespace.chain(hasTheCustomFieldKey),
2041
+ E__namespace.chain(theCustomFieldKeyIsAnObject),
2042
+ E__namespace.chain(theCustomFieldObjectContainsTheLabelKey),
2043
+ E__namespace.chain(theCustomFieldObjectContainsTheTypeKey)
2044
+ );
2045
+ }
2046
+ function toCustomFieldMetadata(parserResult) {
2047
+ const defaultValues = {
2048
+ description: null
2049
+ };
2050
+ return __spreadProps$7(__spreadValues$7(__spreadValues$7({}, defaultValues), parserResult.CustomField), { type_name: "customfield" });
2051
+ }
2052
+ function addName(metadata, name) {
2053
+ return __spreadProps$7(__spreadValues$7({}, metadata), { name });
2054
+ }
2055
+ function addParentName(metadata, parentName) {
2056
+ return __spreadProps$7(__spreadValues$7({}, metadata), { parentName });
2057
+ }
2058
+ function toParsedFile(filePath, typeMirror) {
2059
+ return {
2060
+ source: {
2061
+ filePath,
2062
+ name: typeMirror.name,
2063
+ type: typeMirror.type_name
2064
+ },
2065
+ type: typeMirror
2066
+ };
2067
+ }
2068
+
1786
2069
  var __defProp$6 = Object.defineProperty;
1787
2070
  var __defProps$6 = Object.defineProperties;
1788
2071
  var __getOwnPropDescs$6 = Object.getOwnPropertyDescriptors;
@@ -1802,7 +2085,7 @@ var __spreadValues$6 = (a, b) => {
1802
2085
  return a;
1803
2086
  };
1804
2087
  var __spreadProps$6 = (a, b) => __defProps$6(a, __getOwnPropDescs$6(b));
1805
- var __async$4 = (__this, __arguments, generator) => {
2088
+ var __async$2 = (__this, __arguments, generator) => {
1806
2089
  return new Promise((resolve, reject) => {
1807
2090
  var fulfilled = (value) => {
1808
2091
  try {
@@ -1822,8 +2105,7 @@ var __async$4 = (__this, __arguments, generator) => {
1822
2105
  step((generator = generator.apply(__this, __arguments)).next());
1823
2106
  });
1824
2107
  };
1825
- function generateDocs(apexBundles, config) {
1826
- const filterOutOfScope = apply(filterScope, config.scope);
2108
+ function generateDocs(unparsedApexFiles, config) {
1827
2109
  const convertToReferences = apply(parsedFilesToReferenceGuide, config);
1828
2110
  const convertToRenderableBundle = apply(parsedFilesToRenderableBundle, config);
1829
2111
  const convertToDocumentationBundleForTemplate = apply(
@@ -1832,27 +2114,94 @@ function generateDocs(apexBundles, config) {
1832
2114
  config.referenceGuideTemplate
1833
2115
  );
1834
2116
  const sort = apply(sortTypesAndMembers, config.sortAlphabetically);
1835
- const removeExcluded = apply(removeExcludedTags, config.excludeTags);
2117
+ function filterApexSourceFiles(sourceFiles) {
2118
+ return sourceFiles.filter((sourceFile) => sourceFile.type === "apex");
2119
+ }
2120
+ function filterCustomObjectsAndFields(sourceFiles) {
2121
+ return sourceFiles.filter(
2122
+ (sourceFile) => sourceFile.type === "customobject" || sourceFile.type === "customfield"
2123
+ );
2124
+ }
2125
+ function filterOutCustomFields(parsedFiles) {
2126
+ return parsedFiles.filter(
2127
+ (parsedFile) => parsedFile.source.type !== "customfield"
2128
+ );
2129
+ }
1836
2130
  return _function.pipe(
1837
- apexBundles,
1838
- reflectBundles,
1839
- TE__namespace.map(filterOutOfScope),
1840
- TE__namespace.map(addInheritedMembersToTypes),
1841
- TE__namespace.map(addInheritanceChainToTypes),
1842
- TE__namespace.map(sort),
1843
- TE__namespace.map(removeExcluded),
2131
+ generateForApex(filterApexSourceFiles(unparsedApexFiles), config),
2132
+ TE__namespace.chain((parsedApexFiles) => {
2133
+ return _function.pipe(
2134
+ generateForObject(filterCustomObjectsAndFields(unparsedApexFiles)),
2135
+ TE__namespace.map((parsedObjectFiles) => [...parsedApexFiles, ...parsedObjectFiles])
2136
+ );
2137
+ }),
2138
+ TE__namespace.map((parsedFiles) => sort(filterOutCustomFields(parsedFiles))),
1844
2139
  TE__namespace.bindTo("parsedFiles"),
1845
- TE__namespace.bind("references", ({ parsedFiles }) => TE__namespace.right(convertToReferences(parsedFiles))),
2140
+ TE__namespace.bind(
2141
+ "references",
2142
+ ({ parsedFiles }) => TE__namespace.right(
2143
+ // Custom fields should not show up in the reference guide
2144
+ convertToReferences(parsedFiles)
2145
+ )
2146
+ ),
1846
2147
  TE__namespace.flatMap(({ parsedFiles, references }) => transformReferenceHook(config)({ references, parsedFiles })),
1847
- TE__namespace.map(({ parsedFiles, references }) => convertToRenderableBundle(parsedFiles, references)),
2148
+ TE__namespace.map(({ parsedFiles, references }) => convertToRenderableBundle(filterOutCustomFields(parsedFiles), references)),
1848
2149
  TE__namespace.map(convertToDocumentationBundleForTemplate),
1849
2150
  TE__namespace.flatMap(transformDocumentationBundleHook(config)),
1850
2151
  TE__namespace.map(postHookCompile)
1851
2152
  );
1852
2153
  }
2154
+ function generateForApex(apexBundles, config) {
2155
+ const filterOutOfScope = apply(filterScope, config.scope);
2156
+ const removeExcluded = apply(removeExcludedTags, config.excludeTags);
2157
+ return _function.pipe(
2158
+ apexBundles,
2159
+ reflectApexSource,
2160
+ TE__namespace.map(filterOutOfScope),
2161
+ TE__namespace.map(addInheritedMembersToTypes),
2162
+ TE__namespace.map(addInheritanceChainToTypes),
2163
+ TE__namespace.map(removeExcluded)
2164
+ );
2165
+ }
2166
+ function generateForObject(objectBundles) {
2167
+ function filterNonPublished(parsedFiles) {
2168
+ return parsedFiles.filter((parsedFile) => parsedFile.type.deploymentStatus === "Deployed");
2169
+ }
2170
+ function filterNonPublic(parsedFiles) {
2171
+ return parsedFiles.filter((parsedFile) => parsedFile.type.visibility === "Public");
2172
+ }
2173
+ const customObjects = objectBundles.filter(
2174
+ (object) => object.type === "customobject"
2175
+ );
2176
+ const customFields = objectBundles.filter(
2177
+ (object) => object.type === "customfield"
2178
+ );
2179
+ function generateForFields(fields) {
2180
+ return _function.pipe(fields, reflectCustomFieldSources);
2181
+ }
2182
+ return _function.pipe(
2183
+ customObjects,
2184
+ reflectCustomObjectSources,
2185
+ TE__namespace.map(filterNonPublished),
2186
+ TE__namespace.map(filterNonPublic),
2187
+ TE__namespace.bindTo("objects"),
2188
+ TE__namespace.bind("fields", () => generateForFields(customFields)),
2189
+ // Locate the fields for each object by using the parentName property
2190
+ TE__namespace.map(({ objects, fields }) => {
2191
+ return objects.map((object) => {
2192
+ const objectFields = fields.filter((field) => field.type.parentName === object.type.name);
2193
+ return __spreadProps$6(__spreadValues$6({}, object), {
2194
+ type: __spreadProps$6(__spreadValues$6({}, object.type), {
2195
+ fields: objectFields
2196
+ })
2197
+ });
2198
+ });
2199
+ })
2200
+ );
2201
+ }
1853
2202
  function transformReferenceHook(config) {
1854
2203
  function _execute(references, parsedFiles, transformReference) {
1855
- return __async$4(this, null, function* () {
2204
+ return __async$2(this, null, function* () {
1856
2205
  return {
1857
2206
  references: yield execTransformReferenceHook(Object.values(references), transformReference),
1858
2207
  parsedFiles
@@ -1873,8 +2222,8 @@ function transformDocumentationBundleHook(config) {
1873
2222
  function passThroughHook(value) {
1874
2223
  return value;
1875
2224
  }
1876
- const execTransformReferenceHook = (_0, ..._1) => __async$4(void 0, [_0, ..._1], function* (references, hook = passThroughHook) {
1877
- const hooked = references.map((reference) => __async$4(void 0, null, function* () {
2225
+ const execTransformReferenceHook = (_0, ..._1) => __async$2(void 0, [_0, ..._1], function* (references, hook = passThroughHook) {
2226
+ const hooked = references.map((reference) => __async$2(void 0, null, function* () {
1878
2227
  const hookedResult = yield hook(reference);
1879
2228
  return __spreadValues$6(__spreadValues$6({}, reference), hookedResult);
1880
2229
  }));
@@ -1884,24 +2233,24 @@ const execTransformReferenceHook = (_0, ..._1) => __async$4(void 0, [_0, ..._1],
1884
2233
  return acc;
1885
2234
  }, {});
1886
2235
  });
1887
- const documentationBundleHook = (bundle, config) => __async$4(void 0, null, function* () {
2236
+ const documentationBundleHook = (bundle, config) => __async$2(void 0, null, function* () {
1888
2237
  return {
1889
2238
  referenceGuide: yield transformReferenceGuide(bundle.referenceGuide, config.transformReferenceGuide),
1890
2239
  docs: yield transformDocs(bundle.docs, config.transformDocs, config.transformDocPage)
1891
2240
  };
1892
2241
  });
1893
- const transformReferenceGuide = (_0, ..._1) => __async$4(void 0, [_0, ..._1], function* (referenceGuide, hook = passThroughHook) {
2242
+ const transformReferenceGuide = (_0, ..._1) => __async$2(void 0, [_0, ..._1], function* (referenceGuide, hook = passThroughHook) {
1894
2243
  const result = yield hook(referenceGuide);
1895
2244
  if (isSkip(result)) {
1896
2245
  return result;
1897
2246
  }
1898
2247
  return __spreadValues$6(__spreadValues$6({}, referenceGuide), yield hook(referenceGuide));
1899
2248
  });
1900
- const transformDocs = (_0, ..._1) => __async$4(void 0, [_0, ..._1], function* (docs, transformDocsHook = passThroughHook, transformDocPageHook = passThroughHook) {
2249
+ const transformDocs = (_0, ..._1) => __async$2(void 0, [_0, ..._1], function* (docs, transformDocsHook = passThroughHook, transformDocPageHook = passThroughHook) {
1901
2250
  const transformed = yield transformDocsHook(docs);
1902
2251
  return Promise.all(transformed.map((doc) => transformDocPage(doc, transformDocPageHook)));
1903
2252
  });
1904
- const transformDocPage = (_0, ..._1) => __async$4(void 0, [_0, ..._1], function* (doc, hook = passThroughHook) {
2253
+ const transformDocPage = (_0, ..._1) => __async$2(void 0, [_0, ..._1], function* (doc, hook = passThroughHook) {
1905
2254
  return __spreadValues$6(__spreadValues$6({}, doc), yield hook(doc));
1906
2255
  });
1907
2256
  function postHookCompile(bundle) {
@@ -2973,7 +3322,7 @@ class OpenApiDocsProcessor {
2973
3322
  }
2974
3323
  }
2975
3324
 
2976
- var __async$3 = (__this, __arguments, generator) => {
3325
+ var __async$1 = (__this, __arguments, generator) => {
2977
3326
  return new Promise((resolve, reject) => {
2978
3327
  var fulfilled = (value) => {
2979
3328
  try {
@@ -2994,7 +3343,7 @@ var __async$3 = (__this, __arguments, generator) => {
2994
3343
  });
2995
3344
  };
2996
3345
  function openApi(logger, fileBodies, config) {
2997
- return __async$3(this, null, function* () {
3346
+ return __async$1(this, null, function* () {
2998
3347
  OpenApiSettings.build({
2999
3348
  sourceDirectory: config.sourceDir,
3000
3349
  outputDir: config.targetDir,
@@ -3315,7 +3664,7 @@ const changelogTemplate = `
3315
3664
  function generateChangeLog(oldBundles, newBundles, config) {
3316
3665
  const filterOutOfScope = apply(filterScope, config.scope);
3317
3666
  function reflect(sourceFiles) {
3318
- return _function.pipe(reflectBundles(sourceFiles), TE__namespace.map(filterOutOfScope));
3667
+ return _function.pipe(reflectApexSource(sourceFiles), TE__namespace.map(filterOutOfScope));
3319
3668
  }
3320
3669
  const convertToPageData = apply(toPageData, config.fileName);
3321
3670
  function handleConversion({ changelog, newManifest }) {
@@ -3339,7 +3688,7 @@ function generateChangeLog(oldBundles, newBundles, config) {
3339
3688
  function toManifests({ oldVersion, newVersion }) {
3340
3689
  function parsedFilesToManifest(parsedFiles) {
3341
3690
  return {
3342
- types: parsedFiles.map((parsedFile) => parsedFile.type)
3691
+ types: parsedFiles.map((parsedFile) => parsedFile.type).filter((type) => isApexType(type))
3343
3692
  };
3344
3693
  }
3345
3694
  return {
@@ -3381,142 +3730,114 @@ function writeFilesToSystem(pageData, outputDir) {
3381
3730
  );
3382
3731
  }
3383
3732
 
3384
- var __async$2 = (__this, __arguments, generator) => {
3385
- return new Promise((resolve, reject) => {
3386
- var fulfilled = (value) => {
3387
- try {
3388
- step(generator.next(value));
3389
- } catch (e) {
3390
- reject(e);
3391
- }
3392
- };
3393
- var rejected = (value) => {
3394
- try {
3395
- step(generator.throw(value));
3396
- } catch (e) {
3397
- reject(e);
3398
- }
3399
- };
3400
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
3401
- step((generator = generator.apply(__this, __arguments)).next());
3402
- });
3403
- };
3404
- const APEX_FILE_EXTENSION = ".cls";
3405
- function processFiles(fileSystem, rootPath, includeMetadata, exclude) {
3406
- return __async$2(this, null, function* () {
3407
- const processSingleFile = apply(processFile, fileSystem, includeMetadata);
3408
- return _function.pipe(
3409
- yield getFilePaths(fileSystem, rootPath),
3410
- (filePaths) => filePaths.filter((filePath) => !isExcluded(filePath, exclude)),
3411
- (filePaths) => filePaths.filter(isApexFile),
3412
- (filePaths) => Promise.all(filePaths.map(processSingleFile))
3413
- );
3414
- });
3733
+ function getApexSourceComponents(includeMetadata, sourceComponents) {
3734
+ return sourceComponents.filter((component) => component.type.name === "ApexClass").map((component) => ({
3735
+ type: "ApexClass",
3736
+ name: component.name,
3737
+ xmlPath: includeMetadata ? component.xml : void 0,
3738
+ contentPath: component.content
3739
+ }));
3415
3740
  }
3416
- function getFilePaths(fileSystem, rootPath) {
3417
- return __async$2(this, null, function* () {
3418
- const directoryContents = yield fileSystem.readDirectory(rootPath);
3419
- const paths = [];
3420
- for (const filePath of directoryContents) {
3421
- const currentPath = fileSystem.joinPath(rootPath, filePath);
3422
- if (yield fileSystem.isDirectory(currentPath)) {
3423
- paths.push(...yield getFilePaths(fileSystem, currentPath));
3424
- } else {
3425
- paths.push(currentPath);
3426
- }
3427
- }
3428
- return paths;
3741
+ function toUnparsedApexBundle(fileSystem, apexSourceComponents) {
3742
+ return apexSourceComponents.map((component) => {
3743
+ const apexComponentTuple = [
3744
+ fileSystem.readFile(component.contentPath),
3745
+ component.xmlPath ? fileSystem.readFile(component.xmlPath) : null
3746
+ ];
3747
+ return {
3748
+ type: "apex",
3749
+ name: component.name,
3750
+ filePath: component.contentPath,
3751
+ content: apexComponentTuple[0],
3752
+ metadataContent: apexComponentTuple[1]
3753
+ };
3429
3754
  });
3430
3755
  }
3431
- function isExcluded(filePath, exclude) {
3432
- return exclude.some((pattern) => minimatch.minimatch(filePath, pattern));
3756
+ function getCustomObjectSourceComponents(sourceComponents) {
3757
+ return sourceComponents.filter((component) => component.type.name === "CustomObject").map((component) => ({
3758
+ name: component.name,
3759
+ type: "CustomObject",
3760
+ contentPath: component.xml
3761
+ }));
3433
3762
  }
3434
- function processFile(fileSystem, includeMetadata, filePath) {
3435
- return __async$2(this, null, function* () {
3436
- const rawTypeContent = yield fileSystem.readFile(filePath);
3437
- const metadataPath = `${filePath}-meta.xml`;
3438
- let rawMetadataContent = null;
3439
- if (includeMetadata) {
3440
- rawMetadataContent = fileSystem.exists(metadataPath) ? yield fileSystem.readFile(metadataPath) : null;
3441
- }
3442
- return { filePath, content: rawTypeContent, metadataContent: rawMetadataContent };
3763
+ function toUnparsedSObjectBundle(fileSystem, customObjectSourceComponents) {
3764
+ return customObjectSourceComponents.map((component) => {
3765
+ return {
3766
+ type: "customobject",
3767
+ name: component.name,
3768
+ filePath: component.contentPath,
3769
+ content: fileSystem.readFile(component.contentPath)
3770
+ };
3443
3771
  });
3444
3772
  }
3445
- function isApexFile(currentFile) {
3446
- return currentFile.endsWith(APEX_FILE_EXTENSION);
3773
+ function getCustomFieldSourceComponents(sourceComponents) {
3774
+ return sourceComponents.filter((component) => component.type.name === "CustomField").map((component) => ({
3775
+ name: component.name,
3776
+ type: "CustomField",
3777
+ contentPath: component.xml,
3778
+ parentName: component.parent.name
3779
+ }));
3447
3780
  }
3448
-
3449
- var __async$1 = (__this, __arguments, generator) => {
3450
- return new Promise((resolve, reject) => {
3451
- var fulfilled = (value) => {
3452
- try {
3453
- step(generator.next(value));
3454
- } catch (e) {
3455
- reject(e);
3456
- }
3781
+ function toUnparsedCustomFieldBundle(fileSystem, customFieldSourceComponents) {
3782
+ return customFieldSourceComponents.map((component) => ({
3783
+ type: "customfield",
3784
+ name: component.name,
3785
+ filePath: component.contentPath,
3786
+ content: fileSystem.readFile(component.contentPath),
3787
+ parentName: component.parentName
3788
+ }));
3789
+ }
3790
+ function processFiles(fileSystem) {
3791
+ return (componentTypesToRetrieve, options = { includeMetadata: false }) => {
3792
+ const converters = {
3793
+ ApexClass: _function.flow(
3794
+ apply(getApexSourceComponents, options.includeMetadata),
3795
+ (apexSourceComponents) => toUnparsedApexBundle(fileSystem, apexSourceComponents)
3796
+ ),
3797
+ CustomObject: _function.flow(
3798
+ getCustomObjectSourceComponents,
3799
+ (customObjectSourceComponents) => toUnparsedSObjectBundle(fileSystem, customObjectSourceComponents)
3800
+ ),
3801
+ CustomField: _function.flow(
3802
+ getCustomFieldSourceComponents,
3803
+ (customFieldSourceComponents) => toUnparsedCustomFieldBundle(fileSystem, customFieldSourceComponents)
3804
+ )
3457
3805
  };
3458
- var rejected = (value) => {
3459
- try {
3460
- step(generator.throw(value));
3461
- } catch (e) {
3462
- reject(e);
3463
- }
3806
+ const convertersToUse = componentTypesToRetrieve.map((componentType) => converters[componentType]);
3807
+ return (rootPath, exclude) => {
3808
+ return _function.pipe(
3809
+ fileSystem.getComponents(rootPath),
3810
+ (components) => components.filter((component) => !isExcluded(component.content, exclude)),
3811
+ (components) => convertersToUse.map((converter) => converter(components)),
3812
+ (bundles) => bundles.flat()
3813
+ );
3464
3814
  };
3465
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
3466
- step((generator = generator.apply(__this, __arguments)).next());
3467
- });
3468
- };
3469
- function stat(path2) {
3470
- return new Promise((resolve, reject) => {
3471
- fs__namespace.stat(path2, (err, stats) => {
3472
- if (err) {
3473
- reject(err);
3474
- } else {
3475
- resolve(stats);
3476
- }
3477
- });
3478
- });
3479
- }
3480
- function readdir(path2) {
3481
- return new Promise((resolve, reject) => {
3482
- fs__namespace.readdir(path2, (err, files) => {
3483
- if (err) {
3484
- reject(err);
3485
- } else {
3486
- resolve(files);
3487
- }
3488
- });
3489
- });
3815
+ };
3490
3816
  }
3491
- function readFile(path2) {
3492
- return new Promise((resolve, reject) => {
3493
- fs__namespace.readFile(path2, (err, data) => {
3494
- if (err) {
3495
- reject(err);
3496
- } else {
3497
- resolve(data.toString());
3498
- }
3499
- });
3500
- });
3817
+ function isExcluded(filePath, exclude) {
3818
+ return exclude.some((pattern) => minimatch.minimatch(filePath, pattern));
3501
3819
  }
3820
+
3502
3821
  class DefaultFileSystem {
3503
- isDirectory(pathToRead) {
3504
- return __async$1(this, null, function* () {
3505
- const stats = yield stat(pathToRead);
3506
- return stats.isDirectory();
3507
- });
3508
- }
3509
- readDirectory(sourceDirectory) {
3510
- return readdir(sourceDirectory);
3822
+ getComponents(path) {
3823
+ const components = new sourceDeployRetrieve.MetadataResolver().getComponentsFromPath(path);
3824
+ const fieldComponents = _function.pipe(
3825
+ components,
3826
+ (components2) => components2.filter((component) => component.type.name === "CustomObject"),
3827
+ (components2) => components2.map((component) => component.content),
3828
+ (contents) => contents.filter((content) => content !== void 0),
3829
+ (contents) => contents.map((content) => path__namespace.join(content, "fields")),
3830
+ (potentialFieldLocations) => potentialFieldLocations.filter((potentialFieldLocation) => fs__namespace.existsSync(potentialFieldLocation)),
3831
+ (potentialFieldLocations) => potentialFieldLocations.map(
3832
+ (potentialFieldLocation) => new sourceDeployRetrieve.MetadataResolver().getComponentsFromPath(potentialFieldLocation)
3833
+ ),
3834
+ (fieldComponents2) => fieldComponents2.flat(),
3835
+ (fieldComponents2) => fieldComponents2.filter((fieldComponent) => fieldComponent.type.name === "CustomField")
3836
+ );
3837
+ return [...components, ...fieldComponents];
3511
3838
  }
3512
3839
  readFile(pathToRead) {
3513
- return readFile(pathToRead);
3514
- }
3515
- joinPath(...paths) {
3516
- return path__namespace.join(...paths);
3517
- }
3518
- exists(path2) {
3519
- return fs__namespace.existsSync(path2);
3840
+ return fs__namespace.readFileSync(pathToRead, "utf8");
3520
3841
  }
3521
3842
  }
3522
3843
 
@@ -3563,14 +3884,18 @@ class Apexdocs {
3563
3884
  });
3564
3885
  }
3565
3886
  }
3566
- const readFiles = apply(processFiles, new DefaultFileSystem());
3887
+ const readFiles = processFiles(new DefaultFileSystem());
3567
3888
  function processMarkdown(config) {
3568
3889
  return __async(this, null, function* () {
3569
3890
  return _function.pipe(
3570
- TE__namespace.tryCatch(
3571
- () => readFiles(config.sourceDir, config.includeMetadata, config.exclude),
3891
+ E__namespace.tryCatch(
3892
+ () => readFiles(["ApexClass", "CustomObject", "CustomField"], { includeMetadata: config.includeMetadata })(
3893
+ config.sourceDir,
3894
+ config.exclude
3895
+ ),
3572
3896
  (e) => new FileReadingError("An error occurred while reading files.", e)
3573
3897
  ),
3898
+ TE__namespace.fromEither,
3574
3899
  TE__namespace.flatMap((fileBodies) => generate$1(fileBodies, config)),
3575
3900
  TE__namespace.map(() => "\u2714\uFE0F Documentation generated successfully!"),
3576
3901
  TE__namespace.mapLeft(toErrors)
@@ -3579,22 +3904,21 @@ function processMarkdown(config) {
3579
3904
  }
3580
3905
  function processOpenApi(config, logger) {
3581
3906
  return __async(this, null, function* () {
3582
- const fileBodies = yield readFiles(config.sourceDir, false, config.exclude);
3907
+ const fileBodies = readFiles(["ApexClass"])(config.sourceDir, config.exclude);
3583
3908
  return openApi(logger, fileBodies, config);
3584
3909
  });
3585
3910
  }
3586
3911
  function processChangeLog(config) {
3587
3912
  return __async(this, null, function* () {
3588
3913
  function loadFiles() {
3589
- return __async(this, null, function* () {
3590
- return [
3591
- yield readFiles(config.previousVersionDir, false, config.exclude),
3592
- yield readFiles(config.currentVersionDir, false, config.exclude)
3593
- ];
3594
- });
3914
+ return [
3915
+ readFiles(["ApexClass"])(config.previousVersionDir, config.exclude),
3916
+ readFiles(["ApexClass"])(config.currentVersionDir, config.exclude)
3917
+ ];
3595
3918
  }
3596
3919
  return _function.pipe(
3597
- TE__namespace.tryCatch(loadFiles, (e) => new FileReadingError("An error occurred while reading files.", e)),
3920
+ E__namespace.tryCatch(loadFiles, (e) => new FileReadingError("An error occurred while reading files.", e)),
3921
+ TE__namespace.fromEither,
3598
3922
  TE__namespace.flatMap(([previous, current]) => generate(previous, current, config)),
3599
3923
  TE__namespace.mapLeft(toErrors)
3600
3924
  );