@cparra/apexdocs 3.6.0 → 3.7.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.
package/README.md CHANGED
@@ -463,6 +463,39 @@ Allows changing the frontmatter and content of the changelog page.
463
463
  type TransformChangeLogPage = (
464
464
  changelog: ChangeLogPageData,
465
465
  ) => Partial<ChangeLogPageData> | Promise<Partial<ChangeLogPageData>>
466
+
467
+ // Supporting types
468
+
469
+ type ChangeLogPageData = {
470
+ source: SourceChangelog;
471
+ frontmatter: string | Record<string, any>;
472
+ content: string;
473
+ outputDocPath: string;
474
+ };
475
+
476
+ type SourceChangelog = {
477
+ fileChanges: FileChange[];
478
+ };
479
+
480
+ type FileChange = {
481
+ name: string;
482
+ fileType: 'apex' | 'customobject';
483
+ changeType: 'added' | 'removed' | 'changed';
484
+ changes?: {
485
+ addedMethods?: string[];
486
+ removedMethods?: string[];
487
+ addedFields?: string[];
488
+ removedFields?: string[];
489
+ addedProperties?: string[];
490
+ removedProperties?: string[];
491
+ addedCustomFields?: string[];
492
+ removedCustomFields?: string[];
493
+ addedSubtypes?: string[];
494
+ removedSubtypes?: string[];
495
+ addedEnumValues?: string[];
496
+ removedEnumValues?: string[];
497
+ };
498
+ };
466
499
  ```
467
500
 
468
501
  Example
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  'use strict';
3
3
 
4
- var logger$1 = require('../logger-0jxxZOAh.js');
4
+ var logger$1 = require('../logger-Y4IyA77j.js');
5
5
  var module$1 = require('module');
6
6
  var cosmiconfig = require('cosmiconfig');
7
7
  var E = require('fp-ts/Either');
package/dist/index.d.ts CHANGED
@@ -105,7 +105,32 @@ type DocPageData = {
105
105
  type: 'class' | 'interface' | 'enum' | 'customobject';
106
106
  };
107
107
 
108
+ type FileChange = {
109
+ name: string;
110
+ fileType: 'apex' | 'customobject';
111
+ changeType: 'added' | 'removed' | 'changed';
112
+ changes?: {
113
+ addedMethods?: string[];
114
+ removedMethods?: string[];
115
+ addedFields?: string[];
116
+ removedFields?: string[];
117
+ addedProperties?: string[];
118
+ removedProperties?: string[];
119
+ addedCustomFields?: string[];
120
+ removedCustomFields?: string[];
121
+ addedSubtypes?: string[];
122
+ removedSubtypes?: string[];
123
+ addedEnumValues?: string[];
124
+ removedEnumValues?: string[];
125
+ };
126
+ };
127
+
128
+ type SourceChangelog = {
129
+ fileChanges: FileChange[];
130
+ };
131
+
108
132
  type ChangeLogPageData = {
133
+ source: SourceChangelog;
109
134
  frontmatter: Frontmatter;
110
135
  content: string;
111
136
  outputDocPath: string;
@@ -204,4 +229,4 @@ type ConfigurableChangelogConfig = Omit<Partial<UserDefinedChangelogConfig>, 'ta
204
229
  */
205
230
  declare function defineChangelogConfig(config: ConfigurableChangelogConfig): Partial<UserDefinedChangelogConfig>;
206
231
 
207
- export { type ChangeLogPageData, type ChangelogConfigurableHooks, type ConfigurableChangelogConfig, type ConfigurableDocPageData, type ConfigurableDocPageReference, type ConfigurableMarkdownConfig, type ConfigurableOpenApiConfig, type DocPageData, type DocPageReference, type MarkdownConfigurableHooks, type ReferenceGuidePageData, type Skip, type TransformChangelogPage, type TransformDocPage, type TransformDocs, type TransformReference, type TransformReferenceGuide, defineChangelogConfig, defineMarkdownConfig, defineOpenApiConfig, process, skip };
232
+ export { type ChangeLogPageData, type ChangelogConfigurableHooks, type ConfigurableChangelogConfig, type ConfigurableDocPageData, type ConfigurableDocPageReference, type ConfigurableMarkdownConfig, type ConfigurableOpenApiConfig, type DocPageData, type DocPageReference, type MarkdownConfigurableHooks, type ReferenceGuidePageData, type Skip, type SourceChangelog, type TransformChangelogPage, type TransformDocPage, type TransformDocs, type TransformReference, type TransformReferenceGuide, defineChangelogConfig, defineMarkdownConfig, defineOpenApiConfig, process, skip };
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./logger-0jxxZOAh.js');
3
+ var logger = require('./logger-Y4IyA77j.js');
4
4
  var E = require('fp-ts/Either');
5
5
  require('fp-ts/function');
6
6
  require('fp-ts/TaskEither');
@@ -1942,12 +1942,19 @@ function toPickListValues(customField) {
1942
1942
  const valueSetDefinition = valueSet.valueSetDefinition;
1943
1943
  if ("value" in valueSetDefinition) {
1944
1944
  const pickListValues = valueSetDefinition.value;
1945
- return pickListValues.filter((each) => "fullName" in each).map((each) => each.fullName);
1945
+ if (isArrayOfValues(pickListValues)) {
1946
+ return pickListValues.filter((each) => "fullName" in each).map((current) => current.fullName);
1947
+ } else {
1948
+ return [pickListValues.fullName];
1949
+ }
1946
1950
  }
1947
1951
  }
1948
1952
  }
1949
1953
  return void 0;
1950
1954
  }
1955
+ function isArrayOfValues(value) {
1956
+ return Array.isArray(value);
1957
+ }
1951
1958
 
1952
1959
  var __defProp$b = Object.defineProperty;
1953
1960
  var __defProps$b = Object.defineProperties;
@@ -3913,6 +3920,77 @@ const changelogTemplate = `
3913
3920
  {{/if}}
3914
3921
  `.trim();
3915
3922
 
3923
+ function changelogToSourceChangelog(changelog) {
3924
+ const newApexTypes = changelog.newApexTypes.map((newType) => {
3925
+ return {
3926
+ name: newType,
3927
+ fileType: "apex",
3928
+ changeType: "added"
3929
+ };
3930
+ });
3931
+ const removedApexTypes = changelog.removedApexTypes.map((removedType) => {
3932
+ return {
3933
+ name: removedType,
3934
+ fileType: "apex",
3935
+ changeType: "removed"
3936
+ };
3937
+ });
3938
+ const newCustomObjects = changelog.newCustomObjects.map((newType) => {
3939
+ return {
3940
+ name: newType,
3941
+ fileType: "customobject",
3942
+ changeType: "added"
3943
+ };
3944
+ });
3945
+ const removedCustomObjects = changelog.removedCustomObjects.map((removedType) => {
3946
+ return {
3947
+ name: removedType,
3948
+ fileType: "customobject",
3949
+ changeType: "removed"
3950
+ };
3951
+ });
3952
+ const modifiedApexTypes = changelog.newOrModifiedApexMembers.map((modifiedType) => {
3953
+ return {
3954
+ name: modifiedType.typeName,
3955
+ fileType: "apex",
3956
+ changeType: "changed",
3957
+ changes: {
3958
+ addedMethods: modifiedType.modifications.filter((mod) => mod.__typename === "NewMethod").map((mod) => mod.name),
3959
+ removedMethods: modifiedType.modifications.filter((mod) => mod.__typename === "RemovedMethod").map((mod) => mod.name),
3960
+ addedFields: modifiedType.modifications.filter((mod) => mod.__typename === "NewField").map((mod) => mod.name),
3961
+ removedFields: modifiedType.modifications.filter((mod) => mod.__typename === "RemovedField").map((mod) => mod.name),
3962
+ addedProperties: modifiedType.modifications.filter((mod) => mod.__typename === "NewProperty").map((mod) => mod.name),
3963
+ removedProperties: modifiedType.modifications.filter((mod) => mod.__typename === "RemovedProperty").map((mod) => mod.name),
3964
+ addedSubtypes: modifiedType.modifications.filter((mod) => mod.__typename === "NewType").map((mod) => mod.name),
3965
+ removedSubtypes: modifiedType.modifications.filter((mod) => mod.__typename === "RemovedType").map((mod) => mod.name),
3966
+ addedEnumValues: modifiedType.modifications.filter((mod) => mod.__typename === "NewEnumValue").map((mod) => mod.name),
3967
+ removedEnumValues: modifiedType.modifications.filter((mod) => mod.__typename === "RemovedEnumValue").map((mod) => mod.name)
3968
+ }
3969
+ };
3970
+ });
3971
+ const modifiedCustomObjects = changelog.customObjectModifications.map((modifiedType) => {
3972
+ return {
3973
+ name: modifiedType.typeName,
3974
+ fileType: "customobject",
3975
+ changeType: "changed",
3976
+ changes: {
3977
+ addedCustomFields: modifiedType.modifications.filter((mod) => mod.__typename === "NewField").map((mod) => mod.name),
3978
+ removedCustomFields: modifiedType.modifications.filter((mod) => mod.__typename === "RemovedField").map((mod) => mod.name)
3979
+ }
3980
+ };
3981
+ });
3982
+ return {
3983
+ fileChanges: [
3984
+ ...newApexTypes,
3985
+ ...removedApexTypes,
3986
+ ...newCustomObjects,
3987
+ ...removedCustomObjects,
3988
+ ...modifiedApexTypes,
3989
+ ...modifiedCustomObjects
3990
+ ]
3991
+ };
3992
+ }
3993
+
3916
3994
  var __defProp$1 = Object.defineProperty;
3917
3995
  var __defProps$1 = Object.defineProperties;
3918
3996
  var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors;
@@ -3958,7 +4036,11 @@ function generateChangeLog(oldBundles, newBundles, config) {
3958
4036
  if (config.skipIfNoChanges && !hasChanges(changelog)) {
3959
4037
  return skip();
3960
4038
  }
3961
- return _function.pipe(convertToRenderableChangelog(changelog, newManifest.types), compile, convertToPageData);
4039
+ return _function.pipe(
4040
+ convertToRenderableChangelog(changelog, newManifest.types),
4041
+ compile,
4042
+ (content) => convertToPageData(content, changelog)
4043
+ );
3962
4044
  }
3963
4045
  return _function.pipe(
3964
4046
  reflect(oldBundles, config),
@@ -4015,8 +4097,9 @@ function compile(renderable) {
4015
4097
  };
4016
4098
  return Template.getInstance().compile(compilationRequest);
4017
4099
  }
4018
- function toPageData(fileName, content) {
4100
+ function toPageData(fileName, content, changelog) {
4019
4101
  return {
4102
+ source: changelogToSourceChangelog(changelog),
4020
4103
  frontmatter: null,
4021
4104
  content,
4022
4105
  outputDocPath: `${fileName}.md`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cparra/apexdocs",
3
- "version": "3.6.0",
3
+ "version": "3.7.1",
4
4
  "description": "Library with CLI capabilities to generate documentation for Salesforce Apex classes.",
5
5
  "keywords": [
6
6
  "apex",