Skip to content

Commit 3ef31b4

Browse files
committed
Cleanup
1 parent a798c7e commit 3ef31b4

File tree

6 files changed

+22
-37
lines changed

6 files changed

+22
-37
lines changed

src/core/markdown/adapters/reference-guide.ts

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
11
import { MarkdownGeneratorConfig } from '../generate-docs';
2-
import { DocPageReference, ParsedFile } from '../../shared/types';
2+
import { DocPageReference, ParsedFile, TopLevelType } from '../../shared/types';
33
import { getTypeGroup } from '../../shared/utils';
4-
import { CustomObjectMetadata } from '../../reflection/sobject/reflect-custom-object-sources';
5-
import { Type } from '@cparra/apex-reflection';
6-
import { TriggerMetadata } from 'src/core/reflection/trigger/reflect-trigger-source';
74

85
export function parsedFilesToReferenceGuide(
96
config: MarkdownGeneratorConfig,
10-
parsedFiles: ParsedFile<Type | CustomObjectMetadata | TriggerMetadata>[],
7+
parsedFiles: ParsedFile<TopLevelType>[],
118
): Record<string, DocPageReference> {
129
return parsedFiles.reduce<Record<string, DocPageReference>>((acc, parsedFile) => {
1310
acc[parsedFile.source.name] = parsedFileToDocPageReference(config, parsedFile);
@@ -17,7 +14,7 @@ export function parsedFilesToReferenceGuide(
1714

1815
function parsedFileToDocPageReference(
1916
config: MarkdownGeneratorConfig,
20-
parsedFile: ParsedFile<Type | CustomObjectMetadata | TriggerMetadata>,
17+
parsedFile: ParsedFile<TopLevelType>,
2118
): DocPageReference {
2219
const path = `${slugify(getTypeGroup(parsedFile.type, config))}/${parsedFile.source.name}.md`;
2320
return {

src/core/markdown/adapters/renderable-bundle.ts

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { DocPageReference, ParsedFile } from '../../shared/types';
1+
import { DocPageReference, ParsedFile, TopLevelType } from '../../shared/types';
22
import {
33
Link,
44
ReferenceGuideReference,
@@ -12,27 +12,22 @@ import { MarkdownGeneratorConfig } from '../generate-docs';
1212
import { apply } from '#utils/fp';
1313
import { generateLink } from './generate-link';
1414
import { getTypeGroup } from '../../shared/utils';
15-
import { Type } from '@cparra/apex-reflection';
16-
import { CustomObjectMetadata } from '../../reflection/sobject/reflect-custom-object-sources';
17-
import { TriggerMetadata } from 'src/core/reflection/trigger/reflect-trigger-source';
1815

1916
export function parsedFilesToRenderableBundle(
2017
config: MarkdownGeneratorConfig,
21-
parsedFiles: ParsedFile<Type | CustomObjectMetadata | TriggerMetadata>[],
18+
parsedFiles: ParsedFile<TopLevelType>[],
2219
references: Record<string, DocPageReference>,
2320
): RenderableBundle {
2421
const referenceFinder = apply(generateLink(config.linkingStrategy), references);
2522

26-
function toReferenceGuide(
27-
parsedFiles: ParsedFile<Type | CustomObjectMetadata | TriggerMetadata>[],
28-
): Record<string, ReferenceGuideReference[]> {
23+
function toReferenceGuide(parsedFiles: ParsedFile<TopLevelType>[]): Record<string, ReferenceGuideReference[]> {
2924
return parsedFiles.reduce<Record<string, ReferenceGuideReference[]>>(
3025
addToReferenceGuide(apply(referenceFinder, '__base__'), config, references),
3126
{},
3227
);
3328
}
3429

35-
function toRenderables(parsedFiles: ParsedFile<Type | CustomObjectMetadata | TriggerMetadata>[]): Renderable[] {
30+
function toRenderables(parsedFiles: ParsedFile<TopLevelType>[]): Renderable[] {
3631
return parsedFiles.reduce<Renderable[]>((acc, parsedFile) => {
3732
const renderable = typeToRenderable(parsedFile, apply(referenceFinder, parsedFile.source.name), config);
3833
acc.push(renderable);
@@ -51,10 +46,7 @@ function addToReferenceGuide(
5146
config: MarkdownGeneratorConfig,
5247
references: Record<string, DocPageReference>,
5348
) {
54-
return (
55-
acc: Record<string, ReferenceGuideReference[]>,
56-
parsedFile: ParsedFile<Type | CustomObjectMetadata | TriggerMetadata>,
57-
) => {
49+
return (acc: Record<string, ReferenceGuideReference[]>, parsedFile: ParsedFile<TopLevelType>) => {
5850
const group: string = getTypeGroup(parsedFile.type, config);
5951
if (!acc[group]) {
6052
acc[group] = [];
@@ -70,7 +62,7 @@ function addToReferenceGuide(
7062
}
7163

7264
function getRenderableDescription(
73-
type: Type | CustomObjectMetadata | TriggerMetadata,
65+
type: TopLevelType,
7466
findLinkFromHome: (referenceName: string) => string | Link,
7567
): RenderableContent[] | null {
7668
switch (type.type_name) {

src/core/markdown/adapters/type-to-renderable.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@ import { adaptDescribable, adaptDocumentable } from '../../renderables/documenta
1919
import { adaptConstructor, adaptMethod } from './methods-and-constructors';
2020
import { adaptFieldOrProperty } from './fields-and-properties';
2121
import { MarkdownGeneratorConfig } from '../generate-docs';
22-
import { ExternalMetadata, SourceFileMetadata } from '../../shared/types';
22+
import { ExternalMetadata, SourceFileMetadata, TopLevelType } from '../../shared/types';
2323
import { CustomObjectMetadata, PublishBehavior } from '../../reflection/sobject/reflect-custom-object-sources';
2424
import { getTypeGroup, isInSource } from '../../shared/utils';
2525
import { CustomFieldMetadata } from '../../reflection/sobject/reflect-custom-field-source';
2626
import { CustomMetadataMetadata } from '../../reflection/sobject/reflect-custom-metadata-source';
2727
import { TriggerMetadata } from 'src/core/reflection/trigger/reflect-trigger-source';
2828

29-
type GetReturnRenderable<T extends Type | CustomObjectMetadata | TriggerMetadata> = T extends InterfaceMirror
29+
type GetReturnRenderable<T extends TopLevelType> = T extends InterfaceMirror
3030
? RenderableInterface
3131
: T extends ClassMirror
3232
? RenderableClass
@@ -36,7 +36,7 @@ type GetReturnRenderable<T extends Type | CustomObjectMetadata | TriggerMetadata
3636
? RenderableTrigger
3737
: RenderableCustomObject;
3838

39-
export function typeToRenderable<T extends Type | CustomObjectMetadata | TriggerMetadata>(
39+
export function typeToRenderable<T extends TopLevelType>(
4040
parsedFile: { source: SourceFileMetadata | ExternalMetadata; type: T },
4141
linkGenerator: GetRenderableContentByTypeName,
4242
config: MarkdownGeneratorConfig,

src/core/markdown/generate-docs.ts

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import {
1616
TransformReference,
1717
ParsedFile,
1818
UnparsedSourceBundle,
19+
TopLevelType,
1920
} from '../shared/types';
2021
import { parsedFilesToRenderableBundle } from './adapters/renderable-bundle';
2122
import { reflectApexSource } from '../reflection/apex/reflect-apex-source';
@@ -30,15 +31,13 @@ import { isSkip, passThroughHook, toFrontmatterString } from '../shared/utils';
3031
import { parsedFilesToReferenceGuide } from './adapters/reference-guide';
3132
import { removeExcludedTags } from '../reflection/apex/remove-excluded-tags';
3233
import { HookError } from '../errors/errors';
33-
import { CustomObjectMetadata } from '../reflection/sobject/reflect-custom-object-sources';
34-
import { Type } from '@cparra/apex-reflection';
3534
import { reflectCustomFieldsAndObjectsAndMetadataRecords } from '../reflection/sobject/reflectCustomFieldsAndObjectsAndMetadataRecords';
3635
import {
3736
filterApexSourceFiles,
3837
filterCustomObjectsFieldsAndMetadataRecords,
3938
filterTriggerFiles,
4039
} from '#utils/source-bundle-utils';
41-
import { reflectTriggerSource, TriggerMetadata } from '../reflection/trigger/reflect-trigger-source';
40+
import { reflectTriggerSource } from '../reflection/trigger/reflect-trigger-source';
4241

4342
export type MarkdownGeneratorConfig = Omit<
4443
UserDefinedMarkdownConfig,
@@ -57,11 +56,9 @@ export function generateDocs(unparsedBundles: UnparsedSourceBundle[], config: Ma
5756
);
5857
const sort = apply(sortTypesAndMembers, config.sortAlphabetically);
5958

60-
function filterOutCustomFieldsAndMetadata(
61-
parsedFiles: ParsedFile[],
62-
): ParsedFile<Type | CustomObjectMetadata | TriggerMetadata>[] {
59+
function filterOutCustomFieldsAndMetadata(parsedFiles: ParsedFile[]): ParsedFile<TopLevelType>[] {
6360
return parsedFiles.filter(
64-
(parsedFile): parsedFile is ParsedFile<Type | CustomObjectMetadata> =>
61+
(parsedFile): parsedFile is ParsedFile<TopLevelType> =>
6562
parsedFile.source.type !== 'customfield' && parsedFile.source.type !== 'custommetadata',
6663
);
6764
}

src/core/shared/types.d.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Type, TriggerMirror } from '@cparra/apex-reflection';
1+
import { Type } from '@cparra/apex-reflection';
22
import { CustomObjectMetadata } from '../reflection/sobject/reflect-custom-object-sources';
33
import { CustomFieldMetadata } from '../reflection/sobject/reflect-custom-field-source';
44
import { CustomMetadataMetadata } from '../reflection/sobject/reflect-custom-metadata-source';
@@ -129,8 +129,10 @@ export type ExternalMetadata = {
129129
type: MetadataTypes;
130130
};
131131

132+
export type TopLevelType = Type | CustomObjectMetadata | TriggerMetadata;
133+
132134
export type ParsedFile<
133-
T extends Type | CustomObjectMetadata | CustomFieldMetadata | CustomMetadataMetadata | TriggerMirror =
135+
T extends Type | CustomObjectMetadata | CustomFieldMetadata | CustomMetadataMetadata | TriggerMetadata =
134136
| Type
135137
| CustomObjectMetadata
136138
| CustomFieldMetadata

src/core/shared/utils.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ExternalMetadata, Frontmatter, Skip, SourceFileMetadata } from './types';
1+
import { ExternalMetadata, Frontmatter, Skip, SourceFileMetadata, TopLevelType } from './types';
22
import { Type } from '@cparra/apex-reflection';
33
import { CustomObjectMetadata } from '../reflection/sobject/reflect-custom-object-sources';
44
import { MarkdownGeneratorConfig } from '../markdown/generate-docs';
@@ -39,10 +39,7 @@ export function isInSource(source: SourceFileMetadata | ExternalMetadata): sourc
3939
return 'filePath' in source;
4040
}
4141

42-
export function getTypeGroup(
43-
type: Type | CustomObjectMetadata | TriggerMetadata,
44-
config: MarkdownGeneratorConfig,
45-
): string {
42+
export function getTypeGroup(type: TopLevelType, config: MarkdownGeneratorConfig): string {
4643
function getGroup(type: Type, config: MarkdownGeneratorConfig): string {
4744
const groupAnnotation = type.docComment?.annotations.find(
4845
(annotation) => annotation.name.toLowerCase() === 'group',

0 commit comments

Comments
 (0)