@cparra/apexdocs 3.0.0 → 3.1.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.
Files changed (264) hide show
  1. package/README.md +11 -5
  2. package/dist/cli/generate.js +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/logger-BATX7-be.js +3278 -0
  5. package/package.json +4 -1
  6. package/.github/workflows/ci.yaml +0 -22
  7. package/.github/workflows/close_stale.yml +0 -22
  8. package/.prettierrc.js +0 -7
  9. package/__mocks__/chalk.js +0 -12
  10. package/__mocks__/log-update.js +0 -6
  11. package/eslint.config.mjs +0 -10
  12. package/examples/README.md +0 -5
  13. package/examples/docsify/README.md +0 -17
  14. package/examples/docsify/apexdocs.config.ts +0 -13
  15. package/examples/docsify/classes/ASampleClass.cls +0 -57
  16. package/examples/docsify/classes/CodeControl.cls +0 -19
  17. package/examples/docsify/classes/SampleClass.cls +0 -95
  18. package/examples/docsify/classes/SampleInterface.cls +0 -17
  19. package/examples/docsify/classes/SomeDto.cls +0 -122
  20. package/examples/docsify/docs/.nojekyll +0 -0
  21. package/examples/docsify/docs/README.md +0 -25
  22. package/examples/docsify/docs/_config.yml +0 -1
  23. package/examples/docsify/docs/index.html +0 -22
  24. package/examples/docsify/docs/miscellaneous/ASampleClass.md +0 -88
  25. package/examples/docsify/docs/miscellaneous/CodeControl.md +0 -107
  26. package/examples/docsify/docs/miscellaneous/SomeDto.md +0 -244
  27. package/examples/docsify/docs/sample-classes/SampleClass.md +0 -171
  28. package/examples/docsify/docs/sample-interfaces/SampleInterface.md +0 -36
  29. package/examples/docsify/package-lock.json +0 -2459
  30. package/examples/docsify/package.json +0 -14
  31. package/examples/imported/.forceignore +0 -12
  32. package/examples/imported/README.md +0 -6
  33. package/examples/imported/config/project-scratch-def.json +0 -5
  34. package/examples/imported/docs/index.md +0 -109
  35. package/examples/imported/docs/miscellaneous/BaseClass.md +0 -13
  36. package/examples/imported/docs/miscellaneous/MultiInheritanceClass.md +0 -69
  37. package/examples/imported/docs/miscellaneous/ParentInterface.md +0 -12
  38. package/examples/imported/docs/miscellaneous/ReferencedEnum.md +0 -5
  39. package/examples/imported/docs/miscellaneous/SampleException.md +0 -21
  40. package/examples/imported/docs/miscellaneous/SampleInterface.md +0 -113
  41. package/examples/imported/docs/miscellaneous/Url.md +0 -308
  42. package/examples/imported/docs/sample-enums/SampleEnum.md +0 -33
  43. package/examples/imported/docs/samplegroup/SampleClass.md +0 -167
  44. package/examples/imported/force-app/classes/BaseClass.cls +0 -3
  45. package/examples/imported/force-app/classes/MultiInheritanceClass.cls +0 -1
  46. package/examples/imported/force-app/classes/ParentInterface.cls +0 -3
  47. package/examples/imported/force-app/classes/ReferencedEnum.cls +0 -3
  48. package/examples/imported/force-app/classes/SampleClass.cls +0 -72
  49. package/examples/imported/force-app/classes/SampleEnum.cls +0 -30
  50. package/examples/imported/force-app/classes/SampleException.cls +0 -17
  51. package/examples/imported/force-app/classes/SampleInterface.cls +0 -50
  52. package/examples/imported/force-app/classes/Url.cls +0 -196
  53. package/examples/imported/package-lock.json +0 -665
  54. package/examples/imported/package.json +0 -6
  55. package/examples/imported/scripts/process-docs.mjs +0 -16
  56. package/examples/imported/sfdx-project.json +0 -12
  57. package/examples/markdown/.forceignore +0 -12
  58. package/examples/markdown/README.md +0 -7
  59. package/examples/markdown/config/project-scratch-def.json +0 -5
  60. package/examples/markdown/docs/index.md +0 -109
  61. package/examples/markdown/docs/miscellaneous/BaseClass.md +0 -16
  62. package/examples/markdown/docs/miscellaneous/MultiInheritanceClass.md +0 -72
  63. package/examples/markdown/docs/miscellaneous/ParentInterface.md +0 -15
  64. package/examples/markdown/docs/miscellaneous/ReferencedEnum.md +0 -8
  65. package/examples/markdown/docs/miscellaneous/SampleException.md +0 -24
  66. package/examples/markdown/docs/miscellaneous/SampleInterface.md +0 -116
  67. package/examples/markdown/docs/miscellaneous/Url.md +0 -311
  68. package/examples/markdown/docs/sample-enums/SampleEnum.md +0 -36
  69. package/examples/markdown/docs/samplegroup/SampleClass.md +0 -170
  70. package/examples/markdown/force-app/classes/BaseClass.cls +0 -3
  71. package/examples/markdown/force-app/classes/MultiInheritanceClass.cls +0 -1
  72. package/examples/markdown/force-app/classes/ParentInterface.cls +0 -3
  73. package/examples/markdown/force-app/classes/ReferencedEnum.cls +0 -3
  74. package/examples/markdown/force-app/classes/SampleClass.cls +0 -72
  75. package/examples/markdown/force-app/classes/SampleEnum.cls +0 -30
  76. package/examples/markdown/force-app/classes/SampleException.cls +0 -17
  77. package/examples/markdown/force-app/classes/SampleInterface.cls +0 -50
  78. package/examples/markdown/force-app/classes/Url.cls +0 -196
  79. package/examples/markdown/package-lock.json +0 -665
  80. package/examples/markdown/package.json +0 -20
  81. package/examples/markdown/sfdx-project.json +0 -12
  82. package/examples/markdown-jsconfig/.forceignore +0 -12
  83. package/examples/markdown-jsconfig/README.md +0 -9
  84. package/examples/markdown-jsconfig/apexdocs.config.mjs +0 -22
  85. package/examples/markdown-jsconfig/config/project-scratch-def.json +0 -5
  86. package/examples/markdown-jsconfig/docs/index.md +0 -12
  87. package/examples/markdown-jsconfig/docs/miscellaneous/Url.md +0 -315
  88. package/examples/markdown-jsconfig/force-app/classes/Url.cls +0 -196
  89. package/examples/markdown-jsconfig/package-lock.json +0 -665
  90. package/examples/markdown-jsconfig/package.json +0 -15
  91. package/examples/markdown-jsconfig/sfdx-project.json +0 -12
  92. package/examples/open-api/README.md +0 -5
  93. package/examples/open-api/config/project-scratch-def.json +0 -13
  94. package/examples/open-api/docs/openapi.json +0 -14
  95. package/examples/open-api/force-app/main/default/classes/ChildClass.cls +0 -42
  96. package/examples/open-api/force-app/main/default/classes/SampleClass.cls +0 -167
  97. package/examples/open-api/force-app/main/default/restapi/SampleRestResource.cls +0 -195
  98. package/examples/open-api/force-app/main/default/restapi/SampleRestResourceToSkip.cls +0 -35
  99. package/examples/open-api/force-app/main/default/restapi/SampleRestResourceWithInnerClass.cls +0 -24
  100. package/examples/open-api/force-app/main/default/restapi/SampleRestResourceWithoutApexDocs.cls +0 -15
  101. package/examples/open-api/force-app/main/default/restapi/references/Reference1.cls +0 -9
  102. package/examples/open-api/force-app/main/default/restapi/references/Reference2.cls +0 -9
  103. package/examples/open-api/force-app/main/default/restapi/references/Reference3.cls +0 -3
  104. package/examples/open-api/force-app/main/default/restapi/references/Reference4.cls +0 -3
  105. package/examples/open-api/force-app/main/default/restapi/references/Reference5.cls +0 -3
  106. package/examples/open-api/force-app/main/default/restapi/references/Reference6.cls +0 -6
  107. package/examples/open-api/force-app/main/default/restapi/references/Reference7.cls +0 -3
  108. package/examples/open-api/package-lock.json +0 -724
  109. package/examples/open-api/package.json +0 -20
  110. package/examples/open-api/sfdx-project.json +0 -12
  111. package/examples/vitepress/.forceignore +0 -12
  112. package/examples/vitepress/README.md +0 -25
  113. package/examples/vitepress/apexdocs.config.ts +0 -113
  114. package/examples/vitepress/config/project-scratch-def.json +0 -13
  115. package/examples/vitepress/docs/.vitepress/cache/deps/@theme_index.js +0 -259
  116. package/examples/vitepress/docs/.vitepress/cache/deps/@theme_index.js.map +0 -7
  117. package/examples/vitepress/docs/.vitepress/cache/deps/_metadata.json +0 -40
  118. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-574YRH25.js +0 -11474
  119. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-574YRH25.js.map +0 -7
  120. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-E5DZZB2I.js +0 -9172
  121. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-E5DZZB2I.js.map +0 -7
  122. package/examples/vitepress/docs/.vitepress/cache/deps/package.json +0 -3
  123. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vue_devtools-api.js +0 -4339
  124. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vue_devtools-api.js.map +0 -7
  125. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vueuse_core.js +0 -567
  126. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vueuse_core.js.map +0 -7
  127. package/examples/vitepress/docs/.vitepress/cache/deps/vue.js +0 -323
  128. package/examples/vitepress/docs/.vitepress/cache/deps/vue.js.map +0 -7
  129. package/examples/vitepress/docs/.vitepress/config.mts +0 -21
  130. package/examples/vitepress/docs/.vitepress/sidebar.json +0 -119
  131. package/examples/vitepress/docs/api-examples.md +0 -49
  132. package/examples/vitepress/docs/index-frontmatter.md +0 -16
  133. package/examples/vitepress/docs/index.md +0 -56
  134. package/examples/vitepress/docs/markdown-examples.md +0 -85
  135. package/examples/vitepress/docs/miscellaneous/BaseClass.md +0 -20
  136. package/examples/vitepress/docs/miscellaneous/MultiInheritanceClass.md +0 -76
  137. package/examples/vitepress/docs/miscellaneous/ParentInterface.md +0 -19
  138. package/examples/vitepress/docs/miscellaneous/ReferencedEnum.md +0 -15
  139. package/examples/vitepress/docs/miscellaneous/SampleException.md +0 -28
  140. package/examples/vitepress/docs/miscellaneous/SampleInterface.md +0 -116
  141. package/examples/vitepress/docs/miscellaneous/Url.md +0 -317
  142. package/examples/vitepress/docs/sample-enums/SampleEnum.md +0 -40
  143. package/examples/vitepress/docs/samplegroup/SampleClass.md +0 -174
  144. package/examples/vitepress/force-app/main/default/classes/BaseClass.cls +0 -3
  145. package/examples/vitepress/force-app/main/default/classes/MultiInheritanceClass.cls +0 -1
  146. package/examples/vitepress/force-app/main/default/classes/ParentInterface.cls +0 -3
  147. package/examples/vitepress/force-app/main/default/classes/ReferencedEnum.cls +0 -5
  148. package/examples/vitepress/force-app/main/default/classes/Url.cls +0 -198
  149. package/examples/vitepress/force-app/main/default/classes/feature-a/SampleClass.cls +0 -73
  150. package/examples/vitepress/force-app/main/default/classes/feature-a/SampleEnum.cls +0 -30
  151. package/examples/vitepress/force-app/main/default/classes/feature-a/SampleException.cls +0 -17
  152. package/examples/vitepress/force-app/main/default/classes/feature-a/SampleInterface.cls +0 -46
  153. package/examples/vitepress/package-lock.json +0 -2574
  154. package/examples/vitepress/package.json +0 -18
  155. package/examples/vitepress/sfdx-project.json +0 -12
  156. package/jest.config.js +0 -10
  157. package/jest.d.ts +0 -7
  158. package/src/application/Apexdocs.ts +0 -69
  159. package/src/application/__tests__/apex-file-reader.spec.ts +0 -128
  160. package/src/application/apex-file-reader.ts +0 -56
  161. package/src/application/file-system.ts +0 -69
  162. package/src/application/file-writer.ts +0 -43
  163. package/src/application/generators/markdown.ts +0 -45
  164. package/src/application/generators/openapi.ts +0 -75
  165. package/src/cli/args.ts +0 -55
  166. package/src/cli/commands/markdown.ts +0 -56
  167. package/src/cli/commands/openapi.ts +0 -36
  168. package/src/cli/generate.ts +0 -32
  169. package/src/core/__test__/manifest.spec.ts +0 -16
  170. package/src/core/manifest.ts +0 -90
  171. package/src/core/markdown/__test__/expect-extensions.ts +0 -32
  172. package/src/core/markdown/__test__/generating-class-docs.spec.ts +0 -362
  173. package/src/core/markdown/__test__/generating-docs.spec.ts +0 -378
  174. package/src/core/markdown/__test__/generating-enum-docs.spec.ts +0 -61
  175. package/src/core/markdown/__test__/generating-interface-docs.spec.ts +0 -169
  176. package/src/core/markdown/__test__/generating-reference-guide.spec.ts +0 -196
  177. package/src/core/markdown/__test__/inheritance-chain.test.ts +0 -54
  178. package/src/core/markdown/__test__/test-helpers.ts +0 -25
  179. package/src/core/markdown/adapters/__tests__/documentables.spec.ts +0 -109
  180. package/src/core/markdown/adapters/__tests__/interface-adapter.spec.ts +0 -150
  181. package/src/core/markdown/adapters/__tests__/link-generator.spec.ts +0 -130
  182. package/src/core/markdown/adapters/__tests__/references.spec.ts +0 -136
  183. package/src/core/markdown/adapters/apex-types.ts +0 -238
  184. package/src/core/markdown/adapters/documentables.ts +0 -115
  185. package/src/core/markdown/adapters/fields-and-properties.ts +0 -45
  186. package/src/core/markdown/adapters/generate-link.ts +0 -82
  187. package/src/core/markdown/adapters/inline.ts +0 -143
  188. package/src/core/markdown/adapters/methods-and-constructors.ts +0 -133
  189. package/src/core/markdown/adapters/reference-guide.ts +0 -37
  190. package/src/core/markdown/adapters/renderable-bundle.ts +0 -61
  191. package/src/core/markdown/adapters/renderable-to-page-data.ts +0 -91
  192. package/src/core/markdown/adapters/type-utils.ts +0 -13
  193. package/src/core/markdown/adapters/types.d.ts +0 -180
  194. package/src/core/markdown/generate-docs.ts +0 -210
  195. package/src/core/markdown/reflection/__test__/filter-scope.spec.ts +0 -290
  196. package/src/core/markdown/reflection/__test__/helpers.ts +0 -18
  197. package/src/core/markdown/reflection/__test__/remove-excluded-tags.spec.ts +0 -200
  198. package/src/core/markdown/reflection/filter-scope.ts +0 -13
  199. package/src/core/markdown/reflection/inheritance-chain-expanion.ts +0 -22
  200. package/src/core/markdown/reflection/inheritance-chain.ts +0 -23
  201. package/src/core/markdown/reflection/inherited-member-expansion.ts +0 -105
  202. package/src/core/markdown/reflection/reflect-source.ts +0 -123
  203. package/src/core/markdown/reflection/remove-excluded-tags.ts +0 -168
  204. package/src/core/markdown/reflection/sort-types-and-members.ts +0 -61
  205. package/src/core/markdown/templates/class-template.ts +0 -75
  206. package/src/core/markdown/templates/constructors-partial-template.ts +0 -32
  207. package/src/core/markdown/templates/documentable-partial-template.ts +0 -26
  208. package/src/core/markdown/templates/enum-template.ts +0 -12
  209. package/src/core/markdown/templates/fieldsPartialTemplate.ts +0 -23
  210. package/src/core/markdown/templates/grouped-members-partial-template.ts +0 -6
  211. package/src/core/markdown/templates/hookable.ts +0 -7
  212. package/src/core/markdown/templates/interface-template.ts +0 -16
  213. package/src/core/markdown/templates/methods-partial-template.ts +0 -43
  214. package/src/core/markdown/templates/reference-guide.ts +0 -14
  215. package/src/core/markdown/templates/template.ts +0 -114
  216. package/src/core/markdown/templates/type-doc-partial.ts +0 -27
  217. package/src/core/markdown/utils.ts +0 -3
  218. package/src/core/openApiSettings.ts +0 -41
  219. package/src/core/openapi/__tests__/manifest-factory.spec.ts +0 -16
  220. package/src/core/openapi/__tests__/open-api-docs-processor.spec.ts +0 -59
  221. package/src/core/openapi/__tests__/open-api.spec.ts +0 -22
  222. package/src/core/openapi/apex-doc-types.ts +0 -26
  223. package/src/core/openapi/apex-type-wrappers/ClassMirrorWrapper.ts +0 -12
  224. package/src/core/openapi/apex-type-wrappers/MethodMirrorWrapper.ts +0 -11
  225. package/src/core/openapi/apex-type-wrappers/__tests__/ClassMirrorWrapper.spec.ts +0 -15
  226. package/src/core/openapi/file-container.ts +0 -13
  227. package/src/core/openapi/manifest-factory.ts +0 -16
  228. package/src/core/openapi/open-api-docs-processor.ts +0 -93
  229. package/src/core/openapi/open-api-types.ts +0 -119
  230. package/src/core/openapi/open-api.ts +0 -45
  231. package/src/core/openapi/openapi-type-file.ts +0 -12
  232. package/src/core/openapi/parser.ts +0 -163
  233. package/src/core/openapi/parsers/Builder.ts +0 -40
  234. package/src/core/openapi/parsers/MethodParser.ts +0 -249
  235. package/src/core/openapi/parsers/ParameterObjectBuilder.ts +0 -13
  236. package/src/core/openapi/parsers/ReferenceBuilder.ts +0 -299
  237. package/src/core/openapi/parsers/RequestBodyBuilder.ts +0 -19
  238. package/src/core/openapi/parsers/ResponsesBuilder.ts +0 -21
  239. package/src/core/openapi/parsers/__tests__/MethodParser.spec.ts +0 -44
  240. package/src/core/openapi/parsers/__tests__/ParameterObjectBuilder.spec.ts +0 -68
  241. package/src/core/openapi/parsers/__tests__/ReferenceBuilder.spec.ts +0 -751
  242. package/src/core/openapi/parsers/__tests__/RequestBodyBuilder.spec.ts +0 -64
  243. package/src/core/openapi/parsers/__tests__/ResponsesBuilder.spec.ts +0 -55
  244. package/src/core/openapi/transpiler.ts +0 -17
  245. package/src/core/openapi/types-repository.ts +0 -54
  246. package/src/core/parse-apex-metadata.ts +0 -30
  247. package/src/core/shared/types.d.ts +0 -150
  248. package/src/core/shared/utils.ts +0 -5
  249. package/src/defaults.ts +0 -21
  250. package/src/index.ts +0 -110
  251. package/src/test-helpers/AnnotationBuilder.ts +0 -29
  252. package/src/test-helpers/ClassMirrorBuilder.ts +0 -69
  253. package/src/test-helpers/DocCommentAnnotationBuilder.ts +0 -24
  254. package/src/test-helpers/DocCommentBuilder.ts +0 -36
  255. package/src/test-helpers/FieldMirrorBuilder.ts +0 -59
  256. package/src/test-helpers/InterfaceMirrorBuilder.ts +0 -39
  257. package/src/test-helpers/MethodMirrorBuilder.ts +0 -77
  258. package/src/test-helpers/SettingsBuilder.ts +0 -17
  259. package/src/util/error-logger.ts +0 -92
  260. package/src/util/fp.ts +0 -3
  261. package/src/util/logger.ts +0 -51
  262. package/src/util/string-utils.ts +0 -7
  263. package/tsconfig.json +0 -25
  264. package/tslint.json +0 -6
@@ -1,59 +0,0 @@
1
- import { DocComment, FieldMirror } from '@cparra/apex-reflection';
2
- import { ReferencedType } from '@cparra/apex-reflection';
3
-
4
- type MemberModifier = 'static' | 'webservice' | 'final' | 'override' | 'testmethod' | 'transient';
5
-
6
- export class FieldMirrorBuilder {
7
- private docComment: DocComment | undefined = undefined;
8
- private accessModifier = 'public';
9
- private name = 'fieldName';
10
- private memberModifiers: MemberModifier[] = [];
11
- private type: ReferencedType = {
12
- type: 'String',
13
- rawDeclaration: 'String',
14
- };
15
-
16
- withAccessModifier(accessModifier: string): FieldMirrorBuilder {
17
- this.accessModifier = accessModifier;
18
- return this;
19
- }
20
-
21
- withName(name: string): FieldMirrorBuilder {
22
- this.name = name;
23
- return this;
24
- }
25
-
26
- withType(type: string): FieldMirrorBuilder {
27
- this.type = {
28
- rawDeclaration: type,
29
- type: type,
30
- };
31
- return this;
32
- }
33
-
34
- withReferencedType(type: ReferencedType): FieldMirrorBuilder {
35
- this.type = type;
36
- return this;
37
- }
38
-
39
- addMemberModifier(memberModifier: MemberModifier): FieldMirrorBuilder {
40
- this.memberModifiers.push(memberModifier);
41
- return this;
42
- }
43
-
44
- withDocComment(docComment: DocComment): FieldMirrorBuilder {
45
- this.docComment = docComment;
46
- return this;
47
- }
48
-
49
- build(): FieldMirror {
50
- return {
51
- access_modifier: this.accessModifier,
52
- annotations: [],
53
- name: this.name,
54
- memberModifiers: this.memberModifiers,
55
- typeReference: this.type,
56
- docComment: this.docComment,
57
- };
58
- }
59
- }
@@ -1,39 +0,0 @@
1
- import { Annotation, DocComment, InterfaceMirror, MethodMirror } from '@cparra/apex-reflection';
2
-
3
- /**
4
- * Builder class to create Interface objects.
5
- * For testing purposes only.
6
- */
7
- export class InterfaceMirrorBuilder {
8
- private name = 'SampleClass';
9
- private annotations: Annotation[] = [];
10
- private docComment?: DocComment;
11
- private methods: MethodMirror[] = [];
12
-
13
- withName(name: string): InterfaceMirrorBuilder {
14
- this.name = name;
15
- return this;
16
- }
17
-
18
- addAnnotation(annotation: Annotation): InterfaceMirrorBuilder {
19
- this.annotations.push(annotation);
20
- return this;
21
- }
22
-
23
- addMethod(method: MethodMirror): InterfaceMirrorBuilder {
24
- this.methods.push(method);
25
- return this;
26
- }
27
-
28
- build(): InterfaceMirror {
29
- return {
30
- annotations: this.annotations,
31
- name: this.name,
32
- type_name: 'interface',
33
- methods: this.methods,
34
- access_modifier: 'public',
35
- docComment: this.docComment,
36
- extended_interfaces: [],
37
- };
38
- }
39
- }
@@ -1,77 +0,0 @@
1
- import { Annotation, DocComment, MethodMirror, ParameterMirror } from '@cparra/apex-reflection';
2
-
3
- type Parameter = ParameterMirror;
4
-
5
- export class MethodMirrorBuilder {
6
- private name = 'sampleMethod';
7
- private annotations: Annotation[] = [];
8
- private docComment?: DocComment;
9
- private typeReference: { type: string; rawDeclaration: string } = {
10
- type: 'void',
11
- rawDeclaration: 'void',
12
- };
13
- private parameters: Parameter[] = [];
14
-
15
- withName(name: string): MethodMirrorBuilder {
16
- this.name = name;
17
- return this;
18
- }
19
-
20
- addAnnotation(annotation: Annotation): MethodMirrorBuilder {
21
- this.annotations.push(annotation);
22
- return this;
23
- }
24
-
25
- withDocComment(docComment: DocComment): MethodMirrorBuilder {
26
- this.docComment = docComment;
27
- return this;
28
- }
29
-
30
- withTypeReference(param: { type: string; rawDeclaration: string }) {
31
- this.typeReference = param;
32
- return this;
33
- }
34
-
35
- addParameter(parameter: Parameter): MethodMirrorBuilder {
36
- this.parameters.push(parameter);
37
- return this;
38
- }
39
-
40
- build(): MethodMirror {
41
- return {
42
- access_modifier: 'public',
43
- annotations: this.annotations,
44
- name: this.name,
45
- memberModifiers: [],
46
- typeReference: this.typeReference,
47
- parameters: this.parameters,
48
- docComment: this.docComment,
49
- };
50
- }
51
- }
52
-
53
- export class ParameterBuilder {
54
- private name = 'param';
55
- private typeReference: { type: string; rawDeclaration: string } = {
56
- type: 'String',
57
- rawDeclaration: 'String',
58
- };
59
-
60
- withName(name: string): ParameterBuilder {
61
- this.name = name;
62
- return this;
63
- }
64
-
65
- withTypeReference(param: { type: string; rawDeclaration: string }) {
66
- this.typeReference = param;
67
- return this;
68
- }
69
-
70
- build(): Parameter {
71
- return {
72
- memberModifiers: [],
73
- name: this.name,
74
- typeReference: this.typeReference,
75
- };
76
- }
77
- }
@@ -1,17 +0,0 @@
1
- import { SettingsConfig } from '../core/openApiSettings';
2
-
3
- /**
4
- * Builder class to create SettingsConfig objects.
5
- * For testing purposes only.
6
- */
7
- export class SettingsBuilder {
8
- build(): SettingsConfig {
9
- return {
10
- sourceDirectory: './',
11
- outputDir: './',
12
- openApiTitle: 'Apex API',
13
- openApiFileName: 'openapi',
14
- version: '1.0.0',
15
- };
16
- }
17
- }
@@ -1,92 +0,0 @@
1
- import { ClassMirror, InterfaceMirror, Type } from '@cparra/apex-reflection';
2
- import { Logger } from './logger';
3
-
4
- export default class ErrorLogger {
5
- public static logErrors(logger: Logger, types: Type[]): void {
6
- types.forEach((currentType) => {
7
- this.logErrorsForSingleType(logger, currentType);
8
- });
9
- }
10
-
11
- private static logErrorsForSingleType(logger: Logger, currentType: Type): void {
12
- this.logTypeErrors(logger, currentType);
13
-
14
- if (currentType.type_name === 'class') {
15
- this.logErrorsForClass(logger, currentType as ClassMirror);
16
- } else if (currentType.type_name === 'interface') {
17
- this.logErrorsForInterface(logger, currentType as InterfaceMirror);
18
- }
19
- }
20
-
21
- private static logTypeErrors(logger: Logger, currentType: Type, parentType?: Type) {
22
- if (currentType.docComment?.error) {
23
- const typeName = parentType ? `${parentType!.name}.${currentType.name}` : currentType.name;
24
- logger.error(`${typeName} - Doc comment parsing error. Level: Type`);
25
- logger.error(`Comment:\n ${currentType.docComment.rawDeclaration}`);
26
- logger.error(currentType.docComment.error);
27
- logger.error('=================================');
28
- }
29
- }
30
-
31
- private static logErrorsForClass(logger: Logger, classMirror: ClassMirror, parentType?: Type): void {
32
- const typeName = parentType ? `${parentType!.name}.${classMirror.name}` : classMirror.name;
33
- classMirror.constructors.forEach((currentConstructor) => {
34
- if (currentConstructor.docComment?.error) {
35
- logger.error(`${typeName} - Doc comment parsing error. Level: Constructor`);
36
- logger.error(`Comment:\n ${currentConstructor.docComment.rawDeclaration}`);
37
- logger.error(currentConstructor.docComment.error);
38
- logger.error('=================================');
39
- }
40
- });
41
-
42
- classMirror.fields.forEach((currentField) => {
43
- if (currentField.docComment?.error) {
44
- logger.error(`${typeName} - Doc comment parsing error. Level: Field`);
45
- logger.error(`Comment:\n ${currentField.docComment.rawDeclaration}`);
46
- logger.error(currentField.docComment.error);
47
- logger.error('=================================');
48
- }
49
- });
50
-
51
- classMirror.properties.forEach((currentProperty) => {
52
- if (currentProperty.docComment?.error) {
53
- logger.error(`${typeName} - Doc comment parsing error. Level: Property`);
54
- logger.error(`Comment:\n ${currentProperty.docComment.rawDeclaration}`);
55
- logger.error(currentProperty.docComment.error);
56
- logger.error('=================================');
57
- }
58
- });
59
-
60
- classMirror.methods.forEach((currentMethod) => {
61
- if (currentMethod.docComment?.error) {
62
- logger.error(`${typeName} - Doc comment parsing error. Level: Method`);
63
- logger.error(`Comment:\n ${currentMethod.docComment.rawDeclaration}`);
64
- logger.error(currentMethod.docComment.error);
65
- logger.error('=================================');
66
- }
67
- });
68
-
69
- classMirror.enums.forEach((currentEnum) => {
70
- this.logErrorsForSingleType(logger, currentEnum);
71
- });
72
-
73
- classMirror.interfaces.forEach((currentInterface) => {
74
- this.logErrorsForSingleType(logger, currentInterface);
75
- });
76
-
77
- classMirror.classes.forEach((currentClass) => {
78
- this.logErrorsForSingleType(logger, currentClass);
79
- });
80
- }
81
-
82
- private static logErrorsForInterface(logger: Logger, interfaceMirror: InterfaceMirror): void {
83
- interfaceMirror.methods.forEach((currentMethod) => {
84
- if (currentMethod.docComment?.error) {
85
- logger.error(`${interfaceMirror.name} - Doc comment parsing error. Level: Method`);
86
- logger.error(`Comment: ${currentMethod.docComment.rawDeclaration}`);
87
- logger.error(currentMethod.docComment.error);
88
- logger.error('=================================');
89
- }
90
- });
91
- }
92
- }
package/src/util/fp.ts DELETED
@@ -1,3 +0,0 @@
1
- export function apply<T extends unknown[], U extends unknown[], R>(fn: (...args: [...T, ...U]) => R, ...front: T) {
2
- return (...tailArgs: U) => fn(...front, ...tailArgs);
3
- }
@@ -1,51 +0,0 @@
1
- import chalk from 'chalk';
2
-
3
- export interface Logger {
4
- log(message: string, ...args: string[]): void;
5
- error(message: unknown, ...args: string[]): void;
6
- logSingle(text: unknown, color?: 'green' | 'red'): void;
7
- }
8
-
9
- /**
10
- * Logs messages to the console.
11
- */
12
- export class StdOutLogger {
13
- /**
14
- * Logs a message with optional arguments.
15
- * @param message The message to log.
16
- * @param args Optional arguments.
17
- */
18
- public log(message: string, ...args: string[]) {
19
- this.logSingle(message);
20
- args.forEach((arg) => {
21
- this.logSingle(arg);
22
- });
23
- }
24
-
25
- /**
26
- * Logs an error message with optional arguments.
27
- * @param message The error message to log.
28
- * @param args Optional arguments.
29
- */
30
- public error(message: unknown, ...args: string[]) {
31
- this.logSingle(message, 'red');
32
- args.forEach(() => {
33
- this.logSingle(message, 'red');
34
- });
35
- }
36
-
37
- public logSingle(text: unknown, color: 'green' | 'red' = 'green') {
38
- const logMessage = `${this.getChalkFn(color)(new Date().toLocaleString() + ': ')}${text}\n`;
39
- process.stdout.write(logMessage);
40
- }
41
-
42
- private getChalkFn(color: 'green' | 'red') {
43
- return color === 'green' ? chalk.green : chalk.red;
44
- }
45
- }
46
-
47
- export class NoLogger implements Logger {
48
- public log() {}
49
- public error() {}
50
- public logSingle() {}
51
- }
@@ -1,7 +0,0 @@
1
- export const camel2title = (camelCase: string) =>
2
- camelCase
3
- .replace(/\//g, ' ')
4
- .replace(/([A-Z])/g, (match) => ` ${match}`)
5
- .replace(/\b\w/g, (match) => match.toUpperCase())
6
- .replace(/^./, (match) => match.toUpperCase())
7
- .trim();
package/tsconfig.json DELETED
@@ -1,25 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "es6",
4
- "module": "commonjs",
5
- "declaration": true,
6
- "outDir": "./dist",
7
- "strict": true,
8
- "sourceMap": true,
9
- "esModuleInterop": true,
10
- "lib": [
11
- "ES2021"
12
- ],
13
- "baseUrl": "./",
14
- "paths": {
15
- "#utils/*": ["src/util/*"],
16
- }
17
- },
18
- "include": [
19
- "src", "jest.d.ts"
20
- ],
21
- "exclude": [
22
- "node_modules",
23
- "**/__tests__/*"
24
- ]
25
- }
package/tslint.json DELETED
@@ -1,6 +0,0 @@
1
- {
2
- "extends": [
3
- "tslint:recommended",
4
- "tslint-config-prettier"
5
- ]
6
- }