@cparra/apexdocs 2.23.0 → 2.24.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.
- package/.eslintrc.js +12 -12
- package/.github/workflows/close_stale.yml +22 -22
- package/.prettierrc.js +7 -7
- package/LICENSE +21 -21
- package/README.md +718 -718
- package/apexdocs.config.ts +13 -13
- package/docs/README.md +1 -1
- package/docs/restapi.json +589 -589
- package/docs/types/Classes/nspc.ChildClass.md +97 -97
- package/docs/types/Main/nspc.SampleClass.md +189 -189
- package/examples/force-app/main/default/classes/AnotherInterface.cls +16 -16
- package/examples/force-app/main/default/classes/ChildClass.cls +42 -42
- package/examples/force-app/main/default/classes/EscapedAnnotations.cls +5 -5
- package/examples/force-app/main/default/classes/GrandparentClass.cls +4 -4
- package/examples/force-app/main/default/classes/GroupedClass.cls +8 -8
- package/examples/force-app/main/default/classes/MemberGrouping.cls +17 -17
- package/examples/force-app/main/default/classes/ParentClass.cls +16 -16
- package/examples/force-app/main/default/classes/SampleClass.cls +166 -166
- package/examples/force-app/main/default/classes/SampleClass.cls-meta.xml +5 -5
- package/examples/force-app/main/default/classes/SampleClassWithoutModifier.cls +9 -9
- package/examples/force-app/main/default/classes/SampleInterface.cls +16 -16
- package/examples/force-app/main/default/restapi/SampleRestResource.cls +195 -195
- package/examples/force-app/main/default/restapi/SampleRestResourceToSkip.cls +35 -35
- package/examples/force-app/main/default/restapi/SampleRestResourceWithInnerClass.cls +24 -24
- package/examples/force-app/main/default/restapi/SampleRestResourceWithoutApexDocs.cls +15 -15
- package/examples/force-app/main/default/restapi/references/Reference1.cls +9 -9
- package/examples/force-app/main/default/restapi/references/Reference2.cls +9 -9
- package/examples/force-app/main/default/restapi/references/Reference3.cls +3 -3
- package/examples/force-app/main/default/restapi/references/Reference4.cls +3 -3
- package/examples/force-app/main/default/restapi/references/Reference5.cls +3 -3
- package/examples/force-app/main/default/restapi/references/Reference6.cls +6 -6
- package/examples/force-app/main/default/restapi/references/Reference7.cls +3 -3
- package/examples/includes/header.md +3 -3
- package/jest.config.js +5 -5
- package/lib/application/Apexdocs.d.ts +13 -13
- package/lib/application/Apexdocs.js +76 -76
- package/lib/cli/generate.d.ts +2 -2
- package/lib/cli/generate.js +130 -130
- package/lib/index.d.ts +1 -1
- package/lib/index.js +17 -17
- package/lib/model/apex-bundle.d.ts +6 -6
- package/lib/model/apex-bundle.js +10 -10
- package/lib/model/apex-type-wrappers/ClassMirrorWrapper.d.ts +7 -7
- package/lib/model/apex-type-wrappers/ClassMirrorWrapper.js +13 -13
- package/lib/model/apex-type-wrappers/MethodMirrorWrapper.d.ts +7 -7
- package/lib/model/apex-type-wrappers/MethodMirrorWrapper.js +11 -11
- package/lib/model/inheritance.d.ts +8 -8
- package/lib/model/inheritance.js +2 -2
- package/lib/model/manifest-diff.d.ts +27 -27
- package/lib/model/manifest-diff.js +68 -68
- package/lib/model/manifest.d.ts +22 -22
- package/lib/model/manifest.js +46 -46
- package/lib/model/markdown-file.d.ts +16 -16
- package/lib/model/markdown-file.js +106 -106
- package/lib/model/markdown-generation-util/doc-comment-annotation-util.d.ts +8 -8
- package/lib/model/markdown-generation-util/doc-comment-annotation-util.js +43 -43
- package/lib/model/markdown-generation-util/field-declaration-util.d.ts +3 -3
- package/lib/model/markdown-generation-util/field-declaration-util.js +54 -54
- package/lib/model/markdown-generation-util/index.d.ts +3 -3
- package/lib/model/markdown-generation-util/index.js +19 -19
- package/lib/model/markdown-generation-util/method-declaration-util.d.ts +4 -4
- package/lib/model/markdown-generation-util/method-declaration-util.js +114 -114
- package/lib/model/markdown-generation-util/type-declaration-util.d.ts +3 -3
- package/lib/model/markdown-generation-util/type-declaration-util.js +81 -81
- package/lib/model/markdown-home-file.d.ts +11 -11
- package/lib/model/markdown-home-file.js +53 -53
- package/lib/model/markdown-type-file.d.ts +26 -26
- package/lib/model/markdown-type-file.js +133 -133
- package/lib/model/openapi/apex-doc-types.d.ts +19 -19
- package/lib/model/openapi/apex-doc-types.js +4 -4
- package/lib/model/openapi/open-api-types.d.ts +93 -93
- package/lib/model/openapi/open-api-types.js +2 -2
- package/lib/model/openapi/open-api.d.ts +16 -16
- package/lib/model/openapi/open-api.js +33 -33
- package/lib/model/openapi/openapi-type-file.d.ts +7 -7
- package/lib/model/openapi/openapi-type-file.js +16 -16
- package/lib/model/outputFile.d.ts +10 -10
- package/lib/model/outputFile.js +28 -28
- package/lib/model/types-repository.d.ts +16 -16
- package/lib/model/types-repository.js +53 -53
- package/lib/service/apex-file-reader.d.ts +14 -14
- package/lib/service/apex-file-reader.js +45 -45
- package/lib/service/file-system.d.ts +14 -14
- package/lib/service/file-system.js +24 -24
- package/lib/service/file-writer.d.ts +6 -6
- package/lib/service/file-writer.js +33 -33
- package/lib/service/manifest-factory.d.ts +10 -10
- package/lib/service/manifest-factory.js +13 -13
- package/lib/service/metadata-processor.d.ts +3 -3
- package/lib/service/metadata-processor.js +16 -16
- package/lib/service/parser.d.ts +21 -21
- package/lib/service/parser.js +134 -134
- package/lib/service/state.d.ts +9 -9
- package/lib/service/state.js +19 -19
- package/lib/service/walkers/class-walker.d.ts +4 -4
- package/lib/service/walkers/class-walker.js +32 -32
- package/lib/service/walkers/enum-walker.d.ts +4 -4
- package/lib/service/walkers/enum-walker.js +10 -10
- package/lib/service/walkers/interface-walker.d.ts +4 -4
- package/lib/service/walkers/interface-walker.js +14 -14
- package/lib/service/walkers/walker-factory.d.ts +5 -5
- package/lib/service/walkers/walker-factory.js +20 -20
- package/lib/service/walkers/walker.d.ts +19 -19
- package/lib/service/walkers/walker.js +16 -16
- package/lib/settings.d.ts +64 -64
- package/lib/settings.js +88 -88
- package/lib/test-helpers/AnnotationBuilder.d.ts +12 -12
- package/lib/test-helpers/AnnotationBuilder.js +30 -30
- package/lib/test-helpers/ClassMirrorBuilder.d.ts +18 -18
- package/lib/test-helpers/ClassMirrorBuilder.js +53 -53
- package/lib/test-helpers/DocCommentAnnotationBuilder.d.ts +8 -8
- package/lib/test-helpers/DocCommentAnnotationBuilder.js +25 -25
- package/lib/test-helpers/DocCommentBuilder.d.ts +12 -12
- package/lib/test-helpers/DocCommentBuilder.js +37 -37
- package/lib/test-helpers/FieldMirrorBuilder.d.ts +18 -18
- package/lib/test-helpers/FieldMirrorBuilder.js +53 -53
- package/lib/test-helpers/MethodMirrorBuilder.d.ts +10 -10
- package/lib/test-helpers/MethodMirrorBuilder.js +36 -36
- package/lib/test-helpers/SettingsBuilder.d.ts +8 -8
- package/lib/test-helpers/SettingsBuilder.js +26 -26
- package/lib/transpiler/factory.d.ts +6 -6
- package/lib/transpiler/factory.js +31 -31
- package/lib/transpiler/file-container.d.ts +6 -6
- package/lib/transpiler/file-container.js +15 -15
- package/lib/transpiler/generator-choices.d.ts +1 -1
- package/lib/transpiler/generator-choices.js +2 -2
- package/lib/transpiler/markdown/class-file-generatorHelper.d.ts +8 -8
- package/lib/transpiler/markdown/class-file-generatorHelper.js +55 -55
- package/lib/transpiler/markdown/docsify/docsify-docs-processor.d.ts +6 -6
- package/lib/transpiler/markdown/docsify/docsify-docs-processor.js +12 -12
- package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.d.ts +11 -11
- package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.js +50 -50
- package/lib/transpiler/markdown/markdown-transpiler-base.d.ts +11 -11
- package/lib/transpiler/markdown/markdown-transpiler-base.js +23 -23
- package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.d.ts +6 -6
- package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.js +13 -13
- package/lib/transpiler/openapi/open-api-docs-processor.d.ts +13 -13
- package/lib/transpiler/openapi/open-api-docs-processor.js +74 -74
- package/lib/transpiler/openapi/parsers/Builder.d.ts +16 -16
- package/lib/transpiler/openapi/parsers/Builder.js +29 -29
- package/lib/transpiler/openapi/parsers/MethodParser.d.ts +20 -20
- package/lib/transpiler/openapi/parsers/MethodParser.js +166 -166
- package/lib/transpiler/openapi/parsers/ParameterObjectBuilder.d.ts +7 -7
- package/lib/transpiler/openapi/parsers/ParameterObjectBuilder.js +10 -10
- package/lib/transpiler/openapi/parsers/ReferenceBuilder.d.ts +39 -39
- package/lib/transpiler/openapi/parsers/ReferenceBuilder.js +225 -225
- package/lib/transpiler/openapi/parsers/RequestBodyBuilder.d.ts +10 -10
- package/lib/transpiler/openapi/parsers/RequestBodyBuilder.js +19 -19
- package/lib/transpiler/openapi/parsers/ResponsesBuilder.d.ts +7 -7
- package/lib/transpiler/openapi/parsers/ResponsesBuilder.js +21 -21
- package/lib/transpiler/processor-type-transpiler.d.ts +10 -10
- package/lib/transpiler/processor-type-transpiler.js +8 -8
- package/lib/transpiler/transpiler.d.ts +5 -5
- package/lib/transpiler/transpiler.js +26 -26
- package/lib/util/error-logger.d.ts +8 -8
- package/lib/util/error-logger.js +89 -89
- package/lib/util/logger.d.ts +21 -21
- package/lib/util/logger.js +57 -57
- package/lib/util/string-utils.d.ts +2 -2
- package/lib/util/string-utils.js +14 -14
- package/package.json +78 -78
- package/tsconfig.json +20 -20
- package/tslint.json +5 -5
|
@@ -1,77 +1,77 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Apexdocs = void 0;
|
|
4
|
-
const apex_file_reader_1 = require("../service/apex-file-reader");
|
|
5
|
-
const file_system_1 = require("../service/file-system");
|
|
6
|
-
const apex_reflection_1 = require("@cparra/apex-reflection");
|
|
7
|
-
const logger_1 = require("../util/logger");
|
|
8
|
-
const manifest_factory_1 = require("../service/manifest-factory");
|
|
9
|
-
const parser_1 = require("../service/parser");
|
|
10
|
-
const settings_1 = require("../settings");
|
|
11
|
-
const transpiler_1 = require("../transpiler/transpiler");
|
|
12
|
-
const file_writer_1 = require("../service/file-writer");
|
|
13
|
-
const error_logger_1 = require("../util/error-logger");
|
|
14
|
-
const types_repository_1 = require("../model/types-repository");
|
|
15
|
-
const factory_1 = require("../transpiler/factory");
|
|
16
|
-
/**
|
|
17
|
-
* Application entry-point to generate documentation out of Apex source files.
|
|
18
|
-
*/
|
|
19
|
-
class Apexdocs {
|
|
20
|
-
/**
|
|
21
|
-
* Generates documentation out of Apex source files.
|
|
22
|
-
*/
|
|
23
|
-
static generate() {
|
|
24
|
-
logger_1.Logger.log('Initializing...');
|
|
25
|
-
const fileBodies = apex_file_reader_1.ApexFileReader.processFiles(new file_system_1.DefaultFileSystem());
|
|
26
|
-
const manifest = (0, manifest_factory_1.createManifest)(new parser_1.RawBodyParser(fileBodies), this._reflectionWithLogger);
|
|
27
|
-
types_repository_1.TypesRepository.getInstance().populateAll(manifest.types);
|
|
28
|
-
const filteredTypes = this.filterByScopes(manifest);
|
|
29
|
-
types_repository_1.TypesRepository.getInstance().populateScoped(filteredTypes);
|
|
30
|
-
const processor = factory_1.TypeTranspilerFactory.get(settings_1.Settings.getInstance().targetGenerator);
|
|
31
|
-
transpiler_1.default.generate(filteredTypes, processor);
|
|
32
|
-
const generatedFiles = processor.fileBuilder().files();
|
|
33
|
-
const files = [];
|
|
34
|
-
file_writer_1.FileWriter.write(generatedFiles, (file) => {
|
|
35
|
-
logger_1.Logger.logSingle(`${file.name} processed.`, false, 'green', false);
|
|
36
|
-
files.push(file);
|
|
37
|
-
});
|
|
38
|
-
settings_1.Settings.getInstance().onAfterProcess(files);
|
|
39
|
-
// Error logging
|
|
40
|
-
error_logger_1.default.logErrors(filteredTypes);
|
|
41
|
-
}
|
|
42
|
-
static filterByScopes(manifest) {
|
|
43
|
-
let filteredTypes;
|
|
44
|
-
let filteredLogMessage;
|
|
45
|
-
if (settings_1.Settings.getInstance().config.targetGenerator !== 'openapi') {
|
|
46
|
-
filteredTypes = manifest.filteredByAccessModifierAndAnnotations(settings_1.Settings.getInstance().scope);
|
|
47
|
-
filteredLogMessage = `Filtered ${manifest.types.length - filteredTypes.length} file(s) based on scope: ${settings_1.Settings.getInstance().scope}`;
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
// If we are dealing with an OpenApi generator, we ignore the passed in access modifiers, and instead
|
|
51
|
-
// we only keep classes annotated as @RestResource
|
|
52
|
-
filteredTypes = manifest.filteredByAccessModifierAndAnnotations([
|
|
53
|
-
'restresource',
|
|
54
|
-
'httpdelete',
|
|
55
|
-
'httpget',
|
|
56
|
-
'httppatch',
|
|
57
|
-
'httppost',
|
|
58
|
-
'httpput',
|
|
59
|
-
]);
|
|
60
|
-
filteredLogMessage = `Filtered ${manifest.types.length - filteredTypes.length} file(s), only keeping classes annotated as @RestResource.`;
|
|
61
|
-
}
|
|
62
|
-
logger_1.Logger.clear();
|
|
63
|
-
logger_1.Logger.logSingle(filteredLogMessage, false, 'green', false);
|
|
64
|
-
logger_1.Logger.logSingle(`Creating documentation for ${filteredTypes.length} file(s)`, false, 'green', false);
|
|
65
|
-
return filteredTypes;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
exports.Apexdocs = Apexdocs;
|
|
69
|
-
Apexdocs._reflectionWithLogger = (apexBundle) => {
|
|
70
|
-
var _a;
|
|
71
|
-
const result = (0, apex_reflection_1.reflect)(apexBundle.rawTypeContent);
|
|
72
|
-
if (result.error) {
|
|
73
|
-
logger_1.Logger.error(`${apexBundle.filePath} - Parsing error ${(_a = result.error) === null || _a === void 0 ? void 0 : _a.message}`);
|
|
74
|
-
}
|
|
75
|
-
return result;
|
|
76
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Apexdocs = void 0;
|
|
4
|
+
const apex_file_reader_1 = require("../service/apex-file-reader");
|
|
5
|
+
const file_system_1 = require("../service/file-system");
|
|
6
|
+
const apex_reflection_1 = require("@cparra/apex-reflection");
|
|
7
|
+
const logger_1 = require("../util/logger");
|
|
8
|
+
const manifest_factory_1 = require("../service/manifest-factory");
|
|
9
|
+
const parser_1 = require("../service/parser");
|
|
10
|
+
const settings_1 = require("../settings");
|
|
11
|
+
const transpiler_1 = require("../transpiler/transpiler");
|
|
12
|
+
const file_writer_1 = require("../service/file-writer");
|
|
13
|
+
const error_logger_1 = require("../util/error-logger");
|
|
14
|
+
const types_repository_1 = require("../model/types-repository");
|
|
15
|
+
const factory_1 = require("../transpiler/factory");
|
|
16
|
+
/**
|
|
17
|
+
* Application entry-point to generate documentation out of Apex source files.
|
|
18
|
+
*/
|
|
19
|
+
class Apexdocs {
|
|
20
|
+
/**
|
|
21
|
+
* Generates documentation out of Apex source files.
|
|
22
|
+
*/
|
|
23
|
+
static generate() {
|
|
24
|
+
logger_1.Logger.log('Initializing...');
|
|
25
|
+
const fileBodies = apex_file_reader_1.ApexFileReader.processFiles(new file_system_1.DefaultFileSystem());
|
|
26
|
+
const manifest = (0, manifest_factory_1.createManifest)(new parser_1.RawBodyParser(fileBodies), this._reflectionWithLogger);
|
|
27
|
+
types_repository_1.TypesRepository.getInstance().populateAll(manifest.types);
|
|
28
|
+
const filteredTypes = this.filterByScopes(manifest);
|
|
29
|
+
types_repository_1.TypesRepository.getInstance().populateScoped(filteredTypes);
|
|
30
|
+
const processor = factory_1.TypeTranspilerFactory.get(settings_1.Settings.getInstance().targetGenerator);
|
|
31
|
+
transpiler_1.default.generate(filteredTypes, processor);
|
|
32
|
+
const generatedFiles = processor.fileBuilder().files();
|
|
33
|
+
const files = [];
|
|
34
|
+
file_writer_1.FileWriter.write(generatedFiles, (file) => {
|
|
35
|
+
logger_1.Logger.logSingle(`${file.name} processed.`, false, 'green', false);
|
|
36
|
+
files.push(file);
|
|
37
|
+
});
|
|
38
|
+
settings_1.Settings.getInstance().onAfterProcess(files);
|
|
39
|
+
// Error logging
|
|
40
|
+
error_logger_1.default.logErrors(filteredTypes);
|
|
41
|
+
}
|
|
42
|
+
static filterByScopes(manifest) {
|
|
43
|
+
let filteredTypes;
|
|
44
|
+
let filteredLogMessage;
|
|
45
|
+
if (settings_1.Settings.getInstance().config.targetGenerator !== 'openapi') {
|
|
46
|
+
filteredTypes = manifest.filteredByAccessModifierAndAnnotations(settings_1.Settings.getInstance().scope);
|
|
47
|
+
filteredLogMessage = `Filtered ${manifest.types.length - filteredTypes.length} file(s) based on scope: ${settings_1.Settings.getInstance().scope}`;
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
// If we are dealing with an OpenApi generator, we ignore the passed in access modifiers, and instead
|
|
51
|
+
// we only keep classes annotated as @RestResource
|
|
52
|
+
filteredTypes = manifest.filteredByAccessModifierAndAnnotations([
|
|
53
|
+
'restresource',
|
|
54
|
+
'httpdelete',
|
|
55
|
+
'httpget',
|
|
56
|
+
'httppatch',
|
|
57
|
+
'httppost',
|
|
58
|
+
'httpput',
|
|
59
|
+
]);
|
|
60
|
+
filteredLogMessage = `Filtered ${manifest.types.length - filteredTypes.length} file(s), only keeping classes annotated as @RestResource.`;
|
|
61
|
+
}
|
|
62
|
+
logger_1.Logger.clear();
|
|
63
|
+
logger_1.Logger.logSingle(filteredLogMessage, false, 'green', false);
|
|
64
|
+
logger_1.Logger.logSingle(`Creating documentation for ${filteredTypes.length} file(s)`, false, 'green', false);
|
|
65
|
+
return filteredTypes;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.Apexdocs = Apexdocs;
|
|
69
|
+
Apexdocs._reflectionWithLogger = (apexBundle) => {
|
|
70
|
+
var _a;
|
|
71
|
+
const result = (0, apex_reflection_1.reflect)(apexBundle.rawTypeContent);
|
|
72
|
+
if (result.error) {
|
|
73
|
+
logger_1.Logger.error(`${apexBundle.filePath} - Parsing error ${(_a = result.error) === null || _a === void 0 ? void 0 : _a.message}`);
|
|
74
|
+
}
|
|
75
|
+
return result;
|
|
76
|
+
};
|
|
77
77
|
//# sourceMappingURL=Apexdocs.js.map
|
package/lib/cli/generate.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
export {};
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
export {};
|
package/lib/cli/generate.js
CHANGED
|
@@ -1,131 +1,131 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
const yargs = require("yargs");
|
|
5
|
-
const settings_1 = require("../settings");
|
|
6
|
-
const Apexdocs_1 = require("../application/Apexdocs");
|
|
7
|
-
const cosmiconfig_1 = require("cosmiconfig");
|
|
8
|
-
const result = (0, cosmiconfig_1.cosmiconfig)('apexdocs').search();
|
|
9
|
-
result.then((config) => {
|
|
10
|
-
var _a, _b, _c;
|
|
11
|
-
yargs.config(config === null || config === void 0 ? void 0 : config.config);
|
|
12
|
-
let argv = yargs.options({
|
|
13
|
-
sourceDir: {
|
|
14
|
-
type: 'string',
|
|
15
|
-
alias: 's',
|
|
16
|
-
demandOption: true,
|
|
17
|
-
describe: 'The directory location which contains your apex .cls classes.',
|
|
18
|
-
},
|
|
19
|
-
targetDir: {
|
|
20
|
-
type: 'string',
|
|
21
|
-
alias: 't',
|
|
22
|
-
default: './docs/',
|
|
23
|
-
describe: 'The directory location where documentation will be generated to.',
|
|
24
|
-
},
|
|
25
|
-
recursive: {
|
|
26
|
-
type: 'boolean',
|
|
27
|
-
alias: 'r',
|
|
28
|
-
default: true,
|
|
29
|
-
describe: 'Whether .cls classes will be searched for recursively in the directory provided.',
|
|
30
|
-
},
|
|
31
|
-
scope: {
|
|
32
|
-
type: 'array',
|
|
33
|
-
alias: 'p',
|
|
34
|
-
default: ['global'],
|
|
35
|
-
describe: 'A list of scopes to document. Values should be separated by a space, e.g --scope global public namespaceaccessible. ' +
|
|
36
|
-
'Annotations are supported and should be passed lowercased and without the @ symbol, e.g. namespaceaccessible auraenabled. ' +
|
|
37
|
-
'Note that this setting is ignored if generating an OpenApi REST specification since that looks for classes annotated with @RestResource.',
|
|
38
|
-
},
|
|
39
|
-
targetGenerator: {
|
|
40
|
-
type: 'string',
|
|
41
|
-
alias: 'g',
|
|
42
|
-
default: 'jekyll',
|
|
43
|
-
choices: ['jekyll', 'docsify', 'plain-markdown', 'openapi'],
|
|
44
|
-
describe: 'Define the static file generator for which the documents will be created. ' +
|
|
45
|
-
'Currently supports jekyll, docsify, plain markdown, and OpenAPI v3.1.0.',
|
|
46
|
-
},
|
|
47
|
-
indexOnly: {
|
|
48
|
-
type: 'boolean',
|
|
49
|
-
default: false,
|
|
50
|
-
describe: 'Defines whether only the index file should be generated.',
|
|
51
|
-
},
|
|
52
|
-
defaultGroupName: {
|
|
53
|
-
type: 'string',
|
|
54
|
-
default: 'Miscellaneous',
|
|
55
|
-
describe: 'Defines the @group name to be used when a file does not specify it.',
|
|
56
|
-
},
|
|
57
|
-
sanitizeHtml: {
|
|
58
|
-
type: 'boolean',
|
|
59
|
-
default: true,
|
|
60
|
-
describe: 'When on, any special character within your ApexDocs is converted into its HTML code representation. ' +
|
|
61
|
-
'This is specially useful when generic objects are described within the docs, e.g. "List< Foo>", "Map<Foo, Bar>" ' +
|
|
62
|
-
'because otherwise the content within < and > would be treated as HTML tags and not shown in the output. ' +
|
|
63
|
-
'Content in @example blocks are never sanitized.',
|
|
64
|
-
},
|
|
65
|
-
openApiTitle: {
|
|
66
|
-
type: 'string',
|
|
67
|
-
default: 'Apex REST Api',
|
|
68
|
-
describe: 'If using "openapi" as the target generator, this allows you to specify the OpenApi title value.',
|
|
69
|
-
},
|
|
70
|
-
title: {
|
|
71
|
-
type: 'string',
|
|
72
|
-
describe: "If this allows you to specify the title of the generated documentation's home file.",
|
|
73
|
-
default: 'Classes',
|
|
74
|
-
},
|
|
75
|
-
namespace: {
|
|
76
|
-
type: 'string',
|
|
77
|
-
describe: 'The package namespace, if any. If this value is provided the namespace will be added as a prefix to all of the parsed files. ' +
|
|
78
|
-
"If generating an OpenApi definition, it will be added to the file's Server Url.",
|
|
79
|
-
},
|
|
80
|
-
openApiFileName: {
|
|
81
|
-
type: 'string',
|
|
82
|
-
describe: 'If using "openapi" as the target generator, this allows you to specify the name of the output file.',
|
|
83
|
-
default: 'openapi',
|
|
84
|
-
},
|
|
85
|
-
sortMembersAlphabetically: {
|
|
86
|
-
type: 'boolean',
|
|
87
|
-
describe: 'Whether to sort members alphabetically.',
|
|
88
|
-
default: false,
|
|
89
|
-
},
|
|
90
|
-
includeMetadata: {
|
|
91
|
-
type: 'boolean',
|
|
92
|
-
describe: "Whether to include the file's meta.xml information: Whether it is active and and the API version",
|
|
93
|
-
default: false,
|
|
94
|
-
},
|
|
95
|
-
documentationRootDir: {
|
|
96
|
-
type: 'string',
|
|
97
|
-
describe: 'Allows you to specify the root documentation directory where the files are being generated. This can be helpful when embedding the generated docs into an existing site so that the links are generated correctly.',
|
|
98
|
-
},
|
|
99
|
-
}).argv;
|
|
100
|
-
if (config) {
|
|
101
|
-
argv = Object.assign(Object.assign({}, config.config), argv);
|
|
102
|
-
}
|
|
103
|
-
settings_1.Settings.build({
|
|
104
|
-
sourceDirectory: argv.sourceDir,
|
|
105
|
-
recursive: argv.recursive,
|
|
106
|
-
scope: argv.scope,
|
|
107
|
-
outputDir: argv.targetDir,
|
|
108
|
-
targetGenerator: argv.targetGenerator,
|
|
109
|
-
indexOnly: argv.indexOnly,
|
|
110
|
-
defaultGroupName: argv.defaultGroupName,
|
|
111
|
-
sanitizeHtml: argv.sanitizeHtml,
|
|
112
|
-
openApiTitle: argv.openApiTitle,
|
|
113
|
-
title: argv.title,
|
|
114
|
-
namespace: argv.namespace,
|
|
115
|
-
openApiFileName: argv.openApiFileName,
|
|
116
|
-
sortMembersAlphabetically: argv.sortMembersAlphabetically,
|
|
117
|
-
includeMetadata: argv.includeMetadata,
|
|
118
|
-
rootDir: argv.documentationRootDir,
|
|
119
|
-
onAfterProcess: (_a = config === null || config === void 0 ? void 0 : config.config) === null || _a === void 0 ? void 0 : _a.onAfterProcess,
|
|
120
|
-
onBeforeFileWrite: (_b = config === null || config === void 0 ? void 0 : config.config) === null || _b === void 0 ? void 0 : _b.onBeforeFileWrite,
|
|
121
|
-
frontMatterHeader: (_c = config === null || config === void 0 ? void 0 : config.config) === null || _c === void 0 ? void 0 : _c.frontMatterHeader,
|
|
122
|
-
});
|
|
123
|
-
try {
|
|
124
|
-
Apexdocs_1.Apexdocs.generate();
|
|
125
|
-
}
|
|
126
|
-
catch (error) {
|
|
127
|
-
console.error(error);
|
|
128
|
-
process.exit(1);
|
|
129
|
-
}
|
|
130
|
-
});
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const yargs = require("yargs");
|
|
5
|
+
const settings_1 = require("../settings");
|
|
6
|
+
const Apexdocs_1 = require("../application/Apexdocs");
|
|
7
|
+
const cosmiconfig_1 = require("cosmiconfig");
|
|
8
|
+
const result = (0, cosmiconfig_1.cosmiconfig)('apexdocs').search();
|
|
9
|
+
result.then((config) => {
|
|
10
|
+
var _a, _b, _c;
|
|
11
|
+
yargs.config(config === null || config === void 0 ? void 0 : config.config);
|
|
12
|
+
let argv = yargs.options({
|
|
13
|
+
sourceDir: {
|
|
14
|
+
type: 'string',
|
|
15
|
+
alias: 's',
|
|
16
|
+
demandOption: true,
|
|
17
|
+
describe: 'The directory location which contains your apex .cls classes.',
|
|
18
|
+
},
|
|
19
|
+
targetDir: {
|
|
20
|
+
type: 'string',
|
|
21
|
+
alias: 't',
|
|
22
|
+
default: './docs/',
|
|
23
|
+
describe: 'The directory location where documentation will be generated to.',
|
|
24
|
+
},
|
|
25
|
+
recursive: {
|
|
26
|
+
type: 'boolean',
|
|
27
|
+
alias: 'r',
|
|
28
|
+
default: true,
|
|
29
|
+
describe: 'Whether .cls classes will be searched for recursively in the directory provided.',
|
|
30
|
+
},
|
|
31
|
+
scope: {
|
|
32
|
+
type: 'array',
|
|
33
|
+
alias: 'p',
|
|
34
|
+
default: ['global'],
|
|
35
|
+
describe: 'A list of scopes to document. Values should be separated by a space, e.g --scope global public namespaceaccessible. ' +
|
|
36
|
+
'Annotations are supported and should be passed lowercased and without the @ symbol, e.g. namespaceaccessible auraenabled. ' +
|
|
37
|
+
'Note that this setting is ignored if generating an OpenApi REST specification since that looks for classes annotated with @RestResource.',
|
|
38
|
+
},
|
|
39
|
+
targetGenerator: {
|
|
40
|
+
type: 'string',
|
|
41
|
+
alias: 'g',
|
|
42
|
+
default: 'jekyll',
|
|
43
|
+
choices: ['jekyll', 'docsify', 'plain-markdown', 'openapi'],
|
|
44
|
+
describe: 'Define the static file generator for which the documents will be created. ' +
|
|
45
|
+
'Currently supports jekyll, docsify, plain markdown, and OpenAPI v3.1.0.',
|
|
46
|
+
},
|
|
47
|
+
indexOnly: {
|
|
48
|
+
type: 'boolean',
|
|
49
|
+
default: false,
|
|
50
|
+
describe: 'Defines whether only the index file should be generated.',
|
|
51
|
+
},
|
|
52
|
+
defaultGroupName: {
|
|
53
|
+
type: 'string',
|
|
54
|
+
default: 'Miscellaneous',
|
|
55
|
+
describe: 'Defines the @group name to be used when a file does not specify it.',
|
|
56
|
+
},
|
|
57
|
+
sanitizeHtml: {
|
|
58
|
+
type: 'boolean',
|
|
59
|
+
default: true,
|
|
60
|
+
describe: 'When on, any special character within your ApexDocs is converted into its HTML code representation. ' +
|
|
61
|
+
'This is specially useful when generic objects are described within the docs, e.g. "List< Foo>", "Map<Foo, Bar>" ' +
|
|
62
|
+
'because otherwise the content within < and > would be treated as HTML tags and not shown in the output. ' +
|
|
63
|
+
'Content in @example blocks are never sanitized.',
|
|
64
|
+
},
|
|
65
|
+
openApiTitle: {
|
|
66
|
+
type: 'string',
|
|
67
|
+
default: 'Apex REST Api',
|
|
68
|
+
describe: 'If using "openapi" as the target generator, this allows you to specify the OpenApi title value.',
|
|
69
|
+
},
|
|
70
|
+
title: {
|
|
71
|
+
type: 'string',
|
|
72
|
+
describe: "If this allows you to specify the title of the generated documentation's home file.",
|
|
73
|
+
default: 'Classes',
|
|
74
|
+
},
|
|
75
|
+
namespace: {
|
|
76
|
+
type: 'string',
|
|
77
|
+
describe: 'The package namespace, if any. If this value is provided the namespace will be added as a prefix to all of the parsed files. ' +
|
|
78
|
+
"If generating an OpenApi definition, it will be added to the file's Server Url.",
|
|
79
|
+
},
|
|
80
|
+
openApiFileName: {
|
|
81
|
+
type: 'string',
|
|
82
|
+
describe: 'If using "openapi" as the target generator, this allows you to specify the name of the output file.',
|
|
83
|
+
default: 'openapi',
|
|
84
|
+
},
|
|
85
|
+
sortMembersAlphabetically: {
|
|
86
|
+
type: 'boolean',
|
|
87
|
+
describe: 'Whether to sort members alphabetically.',
|
|
88
|
+
default: false,
|
|
89
|
+
},
|
|
90
|
+
includeMetadata: {
|
|
91
|
+
type: 'boolean',
|
|
92
|
+
describe: "Whether to include the file's meta.xml information: Whether it is active and and the API version",
|
|
93
|
+
default: false,
|
|
94
|
+
},
|
|
95
|
+
documentationRootDir: {
|
|
96
|
+
type: 'string',
|
|
97
|
+
describe: 'Allows you to specify the root documentation directory where the files are being generated. This can be helpful when embedding the generated docs into an existing site so that the links are generated correctly.',
|
|
98
|
+
},
|
|
99
|
+
}).argv;
|
|
100
|
+
if (config) {
|
|
101
|
+
argv = Object.assign(Object.assign({}, config.config), argv);
|
|
102
|
+
}
|
|
103
|
+
settings_1.Settings.build({
|
|
104
|
+
sourceDirectory: argv.sourceDir,
|
|
105
|
+
recursive: argv.recursive,
|
|
106
|
+
scope: argv.scope,
|
|
107
|
+
outputDir: argv.targetDir,
|
|
108
|
+
targetGenerator: argv.targetGenerator,
|
|
109
|
+
indexOnly: argv.indexOnly,
|
|
110
|
+
defaultGroupName: argv.defaultGroupName,
|
|
111
|
+
sanitizeHtml: argv.sanitizeHtml,
|
|
112
|
+
openApiTitle: argv.openApiTitle,
|
|
113
|
+
title: argv.title,
|
|
114
|
+
namespace: argv.namespace,
|
|
115
|
+
openApiFileName: argv.openApiFileName,
|
|
116
|
+
sortMembersAlphabetically: argv.sortMembersAlphabetically,
|
|
117
|
+
includeMetadata: argv.includeMetadata,
|
|
118
|
+
rootDir: argv.documentationRootDir,
|
|
119
|
+
onAfterProcess: (_a = config === null || config === void 0 ? void 0 : config.config) === null || _a === void 0 ? void 0 : _a.onAfterProcess,
|
|
120
|
+
onBeforeFileWrite: (_b = config === null || config === void 0 ? void 0 : config.config) === null || _b === void 0 ? void 0 : _b.onBeforeFileWrite,
|
|
121
|
+
frontMatterHeader: (_c = config === null || config === void 0 ? void 0 : config.config) === null || _c === void 0 ? void 0 : _c.frontMatterHeader,
|
|
122
|
+
});
|
|
123
|
+
try {
|
|
124
|
+
Apexdocs_1.Apexdocs.generate();
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
console.error(error);
|
|
128
|
+
process.exit(1);
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
131
|
//# sourceMappingURL=generate.js.map
|
package/lib/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './service/manifest-factory';
|
|
1
|
+
export * from './service/manifest-factory';
|
package/lib/index.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./service/manifest-factory"), exports);
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./service/manifest-factory"), exports);
|
|
18
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export default class ApexBundle {
|
|
2
|
-
filePath: string;
|
|
3
|
-
rawTypeContent: string;
|
|
4
|
-
rawMetadataContent: string | null;
|
|
5
|
-
constructor(filePath: string, rawTypeContent: string, rawMetadataContent: string | null);
|
|
6
|
-
}
|
|
1
|
+
export default class ApexBundle {
|
|
2
|
+
filePath: string;
|
|
3
|
+
rawTypeContent: string;
|
|
4
|
+
rawMetadataContent: string | null;
|
|
5
|
+
constructor(filePath: string, rawTypeContent: string, rawMetadataContent: string | null);
|
|
6
|
+
}
|
package/lib/model/apex-bundle.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
class ApexBundle {
|
|
4
|
-
constructor(filePath, rawTypeContent, rawMetadataContent) {
|
|
5
|
-
this.filePath = filePath;
|
|
6
|
-
this.rawTypeContent = rawTypeContent;
|
|
7
|
-
this.rawMetadataContent = rawMetadataContent;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
exports.default = ApexBundle;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
class ApexBundle {
|
|
4
|
+
constructor(filePath, rawTypeContent, rawMetadataContent) {
|
|
5
|
+
this.filePath = filePath;
|
|
6
|
+
this.rawTypeContent = rawTypeContent;
|
|
7
|
+
this.rawMetadataContent = rawMetadataContent;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.default = ApexBundle;
|
|
11
11
|
//# sourceMappingURL=apex-bundle.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ClassMirror, MethodMirror } from '@cparra/apex-reflection';
|
|
2
|
-
export declare class ClassMirrorWrapper {
|
|
3
|
-
classMirror: ClassMirror;
|
|
4
|
-
constructor(classMirror: ClassMirror);
|
|
5
|
-
getMethodsByAnnotation(annotation: string): MethodMirror[];
|
|
6
|
-
private hasAnnotation;
|
|
7
|
-
}
|
|
1
|
+
import { ClassMirror, MethodMirror } from '@cparra/apex-reflection';
|
|
2
|
+
export declare class ClassMirrorWrapper {
|
|
3
|
+
classMirror: ClassMirror;
|
|
4
|
+
constructor(classMirror: ClassMirror);
|
|
5
|
+
getMethodsByAnnotation(annotation: string): MethodMirror[];
|
|
6
|
+
private hasAnnotation;
|
|
7
|
+
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ClassMirrorWrapper = void 0;
|
|
4
|
-
class ClassMirrorWrapper {
|
|
5
|
-
constructor(classMirror) {
|
|
6
|
-
this.classMirror = classMirror;
|
|
7
|
-
this.hasAnnotation = (method, annotationName) => method.annotations.some((annotation) => annotation.name.toLowerCase() === annotationName);
|
|
8
|
-
}
|
|
9
|
-
getMethodsByAnnotation(annotation) {
|
|
10
|
-
return this.classMirror.methods.filter((method) => this.hasAnnotation(method, annotation));
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
exports.ClassMirrorWrapper = ClassMirrorWrapper;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ClassMirrorWrapper = void 0;
|
|
4
|
+
class ClassMirrorWrapper {
|
|
5
|
+
constructor(classMirror) {
|
|
6
|
+
this.classMirror = classMirror;
|
|
7
|
+
this.hasAnnotation = (method, annotationName) => method.annotations.some((annotation) => annotation.name.toLowerCase() === annotationName);
|
|
8
|
+
}
|
|
9
|
+
getMethodsByAnnotation(annotation) {
|
|
10
|
+
return this.classMirror.methods.filter((method) => this.hasAnnotation(method, annotation));
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.ClassMirrorWrapper = ClassMirrorWrapper;
|
|
14
14
|
//# sourceMappingURL=ClassMirrorWrapper.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { DocCommentAnnotation, MethodMirror } from '@cparra/apex-reflection';
|
|
2
|
-
export declare class MethodMirrorWrapper {
|
|
3
|
-
methodMirror: MethodMirror;
|
|
4
|
-
constructor(methodMirror: MethodMirror);
|
|
5
|
-
hasDocCommentAnnotation: (annotationName: string) => boolean | undefined;
|
|
6
|
-
getDocCommentAnnotation: (annotationName: string) => DocCommentAnnotation | undefined;
|
|
7
|
-
}
|
|
1
|
+
import { DocCommentAnnotation, MethodMirror } from '@cparra/apex-reflection';
|
|
2
|
+
export declare class MethodMirrorWrapper {
|
|
3
|
+
methodMirror: MethodMirror;
|
|
4
|
+
constructor(methodMirror: MethodMirror);
|
|
5
|
+
hasDocCommentAnnotation: (annotationName: string) => boolean | undefined;
|
|
6
|
+
getDocCommentAnnotation: (annotationName: string) => DocCommentAnnotation | undefined;
|
|
7
|
+
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MethodMirrorWrapper = void 0;
|
|
4
|
-
class MethodMirrorWrapper {
|
|
5
|
-
constructor(methodMirror) {
|
|
6
|
-
this.methodMirror = methodMirror;
|
|
7
|
-
this.hasDocCommentAnnotation = (annotationName) => { var _a; return (_a = this.methodMirror.docComment) === null || _a === void 0 ? void 0 : _a.annotations.some((annotation) => annotation.name.toLowerCase() === annotationName); };
|
|
8
|
-
this.getDocCommentAnnotation = (annotationName) => { var _a; return (_a = this.methodMirror.docComment) === null || _a === void 0 ? void 0 : _a.annotations.find((annotation) => annotation.name.toLowerCase() === annotationName); };
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
exports.MethodMirrorWrapper = MethodMirrorWrapper;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MethodMirrorWrapper = void 0;
|
|
4
|
+
class MethodMirrorWrapper {
|
|
5
|
+
constructor(methodMirror) {
|
|
6
|
+
this.methodMirror = methodMirror;
|
|
7
|
+
this.hasDocCommentAnnotation = (annotationName) => { var _a; return (_a = this.methodMirror.docComment) === null || _a === void 0 ? void 0 : _a.annotations.some((annotation) => annotation.name.toLowerCase() === annotationName); };
|
|
8
|
+
this.getDocCommentAnnotation = (annotationName) => { var _a; return (_a = this.methodMirror.docComment) === null || _a === void 0 ? void 0 : _a.annotations.find((annotation) => annotation.name.toLowerCase() === annotationName); };
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.MethodMirrorWrapper = MethodMirrorWrapper;
|
|
12
12
|
//# sourceMappingURL=MethodMirrorWrapper.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { FieldMirror, MethodMirror, PropertyMirror } from '@cparra/apex-reflection';
|
|
2
|
-
export type InheritanceSupport = {
|
|
3
|
-
inherited: boolean;
|
|
4
|
-
};
|
|
5
|
-
export type FieldMirrorWithInheritance = FieldMirror & InheritanceSupport;
|
|
6
|
-
export type PropertyMirrorWithInheritance = PropertyMirror & InheritanceSupport;
|
|
7
|
-
export type MethodMirrorWithInheritance = MethodMirror & InheritanceSupport;
|
|
8
|
-
export type FieldOrProperty = FieldMirrorWithInheritance | PropertyMirrorWithInheritance;
|
|
1
|
+
import { FieldMirror, MethodMirror, PropertyMirror } from '@cparra/apex-reflection';
|
|
2
|
+
export type InheritanceSupport = {
|
|
3
|
+
inherited: boolean;
|
|
4
|
+
};
|
|
5
|
+
export type FieldMirrorWithInheritance = FieldMirror & InheritanceSupport;
|
|
6
|
+
export type PropertyMirrorWithInheritance = PropertyMirror & InheritanceSupport;
|
|
7
|
+
export type MethodMirrorWithInheritance = MethodMirror & InheritanceSupport;
|
|
8
|
+
export type FieldOrProperty = FieldMirrorWithInheritance | PropertyMirrorWithInheritance;
|
package/lib/model/inheritance.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
//# sourceMappingURL=inheritance.js.map
|