@cparra/apexdocs 2.25.0-alpha.1 → 2.25.0-alpha.10

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 (499) hide show
  1. package/README.md +37 -0
  2. package/dist/cli/generate.js +2963 -0
  3. package/dist/defaults-DUwru49Q.js +12 -0
  4. package/dist/defaults-SH0Rsi5E.js +11 -0
  5. package/dist/defaults-jLXD2y8-.js +13 -0
  6. package/dist/index.d.ts +101 -0
  7. package/dist/index.js +36 -0
  8. package/examples/markdown/docs/index.md +109 -0
  9. package/examples/{plain-markdown/docs/Miscellaneous/ns.BaseClass.md → markdown/docs/miscellaneous/BaseClass.md} +1 -1
  10. package/examples/markdown/docs/miscellaneous/MultiInheritanceClass.md +72 -0
  11. package/examples/{plain-markdown/docs/Miscellaneous/ns.ParentInterface.md → markdown/docs/miscellaneous/ParentInterface.md} +1 -1
  12. package/examples/{plain-markdown/docs/Miscellaneous/ns.ReferencedEnum.md → markdown/docs/miscellaneous/ReferencedEnum.md} +1 -1
  13. package/examples/markdown/docs/miscellaneous/SampleException.md +24 -0
  14. package/examples/{plain-markdown/docs/Miscellaneous/ns.SampleInterface.md → markdown/docs/miscellaneous/SampleInterface.md} +29 -32
  15. package/examples/markdown/docs/miscellaneous/Url.md +309 -0
  16. package/examples/markdown/docs/sample-enums/SampleEnum.md +36 -0
  17. package/examples/{plain-markdown/docs/SampleGroup/ns.SampleClass.md → markdown/docs/samplegroup/SampleClass.md} +11 -14
  18. package/examples/markdown/force-app/classes/MultiInheritanceClass.cls +1 -0
  19. package/examples/markdown/force-app/classes/SampleException.cls +17 -0
  20. package/examples/markdown/force-app/classes/Url.cls +194 -0
  21. package/examples/{plain-markdown → markdown}/package.json +2 -2
  22. package/examples/vitepress/.forceignore +12 -0
  23. package/examples/vitepress/apexdocs.config.ts +106 -0
  24. package/examples/vitepress/config/project-scratch-def.json +13 -0
  25. package/examples/vitepress/docs/.vitepress/cache/deps/@theme_index.js +259 -0
  26. package/examples/vitepress/docs/.vitepress/cache/deps/@theme_index.js.map +7 -0
  27. package/examples/vitepress/docs/.vitepress/cache/deps/_metadata.json +40 -0
  28. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-574YRH25.js +11474 -0
  29. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-574YRH25.js.map +7 -0
  30. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-E5DZZB2I.js +9172 -0
  31. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-E5DZZB2I.js.map +7 -0
  32. package/examples/vitepress/docs/.vitepress/cache/deps/package.json +3 -0
  33. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vue_devtools-api.js +4339 -0
  34. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vue_devtools-api.js.map +7 -0
  35. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vueuse_core.js +567 -0
  36. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vueuse_core.js.map +7 -0
  37. package/examples/vitepress/docs/.vitepress/cache/deps/vue.js +323 -0
  38. package/examples/vitepress/docs/.vitepress/cache/deps/vue.js.map +7 -0
  39. package/examples/vitepress/docs/.vitepress/config.mts +21 -0
  40. package/examples/vitepress/docs/.vitepress/sidebar.json +119 -0
  41. package/examples/vitepress/docs/api-examples.md +49 -0
  42. package/examples/vitepress/docs/index-frontmatter.md +16 -0
  43. package/examples/vitepress/docs/index.md +56 -0
  44. package/examples/vitepress/docs/markdown-examples.md +85 -0
  45. package/examples/vitepress/docs/miscellaneous/BaseClass.md +20 -0
  46. package/examples/vitepress/docs/miscellaneous/MultiInheritanceClass.md +76 -0
  47. package/examples/vitepress/docs/miscellaneous/ParentInterface.md +19 -0
  48. package/examples/vitepress/docs/miscellaneous/ReferencedEnum.md +15 -0
  49. package/examples/vitepress/docs/miscellaneous/SampleException.md +28 -0
  50. package/examples/vitepress/docs/miscellaneous/SampleInterface.md +116 -0
  51. package/examples/vitepress/docs/miscellaneous/Url.md +317 -0
  52. package/examples/vitepress/docs/sample-enums/SampleEnum.md +40 -0
  53. package/examples/vitepress/docs/samplegroup/SampleClass.md +174 -0
  54. package/examples/vitepress/force-app/main/default/classes/BaseClass.cls +3 -0
  55. package/examples/vitepress/force-app/main/default/classes/MultiInheritanceClass.cls +1 -0
  56. package/examples/vitepress/force-app/main/default/classes/ParentInterface.cls +3 -0
  57. package/examples/vitepress/force-app/main/default/classes/ReferencedEnum.cls +5 -0
  58. package/examples/vitepress/force-app/main/default/classes/SampleClass.cls +72 -0
  59. package/examples/vitepress/force-app/main/default/classes/SampleEnum.cls +30 -0
  60. package/examples/vitepress/force-app/main/default/classes/SampleException.cls +17 -0
  61. package/examples/vitepress/force-app/main/default/classes/SampleInterface.cls +46 -0
  62. package/examples/vitepress/force-app/main/default/classes/Url.cls +198 -0
  63. package/examples/vitepress/package-lock.json +2574 -0
  64. package/examples/vitepress/package.json +18 -0
  65. package/examples/vitepress/sfdx-project.json +12 -0
  66. package/jest.config.js +2 -1
  67. package/package.json +18 -19
  68. package/src/application/Apexdocs.ts +17 -70
  69. package/src/application/__tests__/apex-file-reader.spec.ts +104 -0
  70. package/src/application/apex-file-reader.ts +42 -0
  71. package/src/application/file-writer.ts +21 -0
  72. package/src/application/generators/markdown.ts +58 -0
  73. package/src/application/generators/openapi.ts +56 -0
  74. package/src/cli/args.ts +43 -0
  75. package/src/cli/commands/markdown.ts +52 -0
  76. package/src/cli/generate.ts +10 -134
  77. package/src/core/manifest.ts +90 -0
  78. package/src/{__spec__/core → core/markdown/__test__}/expect-extensions.ts +5 -5
  79. package/src/core/markdown/__test__/generating-class-docs.spec.ts +735 -0
  80. package/src/{__spec__/core → core/markdown/__test__}/generating-enum-docs.spec.ts +89 -59
  81. package/src/{__spec__/core → core/markdown/__test__}/generating-interface-docs.spec.ts +105 -75
  82. package/src/{__spec__/core → core/markdown/__test__}/generating-reference-guide.spec.ts +43 -26
  83. package/src/core/markdown/__test__/inheritance-chain.test.ts +54 -0
  84. package/src/core/markdown/__test__/test-helpers.ts +23 -0
  85. package/src/core/markdown/adapters/__tests__/documentables.spec.ts +109 -0
  86. package/src/core/markdown/adapters/__tests__/interface-adapter.spec.ts +148 -0
  87. package/src/{adapters → core/markdown/adapters}/__tests__/references.spec.ts +23 -2
  88. package/src/{adapters → core/markdown/adapters}/apex-types.ts +58 -44
  89. package/src/{adapters → core/markdown/adapters}/documentables.ts +58 -35
  90. package/src/{adapters → core/markdown/adapters}/fields-and-properties.ts +18 -11
  91. package/src/{adapters/references.ts → core/markdown/adapters/inline.ts} +43 -13
  92. package/src/{adapters → core/markdown/adapters}/methods-and-constructors.ts +36 -20
  93. package/src/core/markdown/adapters/reference-guide.ts +35 -0
  94. package/src/core/markdown/adapters/renderable-bundle.ts +78 -0
  95. package/src/core/markdown/adapters/renderable-to-page-data.ts +89 -0
  96. package/src/core/markdown/adapters/type-utils.ts +13 -0
  97. package/src/core/{renderable → markdown/adapters}/types.d.ts +57 -8
  98. package/src/core/markdown/generate-docs.ts +216 -0
  99. package/src/core/markdown/reflection/error-handling.ts +37 -0
  100. package/src/core/markdown/reflection/filter-scope.ts +13 -0
  101. package/src/core/markdown/reflection/inheritance-chain-expanion.ts +22 -0
  102. package/src/core/markdown/reflection/inheritance-chain.ts +23 -0
  103. package/src/core/markdown/reflection/inherited-member-expansion.ts +105 -0
  104. package/src/core/markdown/reflection/reflect-source.ts +45 -0
  105. package/src/core/markdown/reflection/sort-members.ts +59 -0
  106. package/src/{transpiler/markdown/plain-markdown → core/markdown/templates}/class-template.ts +5 -3
  107. package/src/{transpiler/markdown/plain-markdown → core/markdown/templates}/constructors-partial-template.ts +2 -2
  108. package/src/{transpiler/markdown/plain-markdown → core/markdown/templates}/documentable-partial-template.ts +6 -4
  109. package/src/{transpiler/markdown/plain-markdown → core/markdown/templates}/fieldsPartialTemplate.ts +1 -1
  110. package/src/core/markdown/templates/hookable.ts +7 -0
  111. package/src/{transpiler/markdown/plain-markdown → core/markdown/templates}/methods-partial-template.ts +2 -2
  112. package/src/core/{templates → markdown/templates}/reference-guide.ts +1 -1
  113. package/src/core/{template.ts → markdown/templates/template.ts} +25 -19
  114. package/src/core/markdown/utils.ts +3 -0
  115. package/src/{transpiler → core}/openapi/__tests__/open-api-docs-processor.spec.ts +1 -1
  116. package/src/{model → core/openapi}/apex-type-wrappers/__tests__/ClassMirrorWrapper.spec.ts +3 -3
  117. package/src/core/openapi/file-container.ts +13 -0
  118. package/src/{service → core/openapi}/manifest-factory.ts +3 -3
  119. package/src/{transpiler → core}/openapi/open-api-docs-processor.ts +9 -10
  120. package/src/core/openapi/openapi-type-file.ts +12 -0
  121. package/src/{service → core/openapi}/parser.ts +8 -8
  122. package/src/{transpiler → core}/openapi/parsers/Builder.ts +2 -2
  123. package/src/{transpiler → core}/openapi/parsers/MethodParser.ts +5 -5
  124. package/src/{transpiler → core}/openapi/parsers/ParameterObjectBuilder.ts +2 -2
  125. package/src/{transpiler → core}/openapi/parsers/ReferenceBuilder.ts +3 -3
  126. package/src/{transpiler → core}/openapi/parsers/RequestBodyBuilder.ts +2 -2
  127. package/src/{transpiler → core}/openapi/parsers/ResponsesBuilder.ts +2 -2
  128. package/src/{transpiler → core}/openapi/parsers/__tests__/MethodParser.spec.ts +1 -1
  129. package/src/{transpiler → core}/openapi/parsers/__tests__/ParameterObjectBuilder.spec.ts +2 -2
  130. package/src/{transpiler → core}/openapi/parsers/__tests__/ReferenceBuilder.spec.ts +2 -2
  131. package/src/{transpiler → core}/openapi/parsers/__tests__/RequestBodyBuilder.spec.ts +2 -2
  132. package/src/{transpiler → core}/openapi/parsers/__tests__/ResponsesBuilder.spec.ts +1 -1
  133. package/src/{transpiler → core/openapi}/transpiler.ts +2 -6
  134. package/src/{model → core/openapi}/types-repository.ts +0 -9
  135. package/src/core/parse-apex-metadata.ts +14 -0
  136. package/src/core/settings.ts +56 -0
  137. package/src/core/shared/types.d.ts +131 -0
  138. package/src/core/shared/utils.ts +5 -0
  139. package/src/defaults.ts +9 -0
  140. package/src/index.ts +40 -2
  141. package/src/test-helpers/ClassMirrorBuilder.ts +14 -1
  142. package/src/test-helpers/InterfaceMirrorBuilder.ts +0 -5
  143. package/src/test-helpers/SettingsBuilder.ts +1 -4
  144. package/src/util/fp.ts +3 -0
  145. package/src/util/logger.ts +3 -3
  146. package/src/util/string-utils.ts +0 -4
  147. package/tsconfig.json +6 -2
  148. package/apexdocs.config.ts +0 -13
  149. package/docs/.nojekyll +0 -0
  150. package/docs/__old/README.md +0 -1
  151. package/docs/__old/index.html +0 -22
  152. package/docs/__old/restapi.json +0 -589
  153. package/docs/__old/types/Classes/nspc.AnotherInterface.md +0 -22
  154. package/docs/__old/types/Classes/nspc.ChildClass.md +0 -97
  155. package/docs/__old/types/Main/nspc.GroupedClass.md +0 -10
  156. package/docs/__old/types/Main/nspc.SampleClass.md +0 -189
  157. package/docs/__old/types/Misc-Group/nspc.EscapedAnnotations.md +0 -4
  158. package/docs/__old/types/Misc-Group/nspc.GrandparentClass.md +0 -13
  159. package/docs/__old/types/Misc-Group/nspc.InterfaceWithInheritance.md +0 -29
  160. package/docs/__old/types/Misc-Group/nspc.MemberGrouping.md +0 -13
  161. package/docs/__old/types/Misc-Group/nspc.ParentClass.md +0 -37
  162. package/docs/__old/types/Misc-Group/nspc.Reference1.md +0 -18
  163. package/docs/__old/types/Misc-Group/nspc.Reference2.md +0 -12
  164. package/docs/__old/types/Misc-Group/nspc.Reference3.md +0 -7
  165. package/docs/__old/types/Misc-Group/nspc.Reference4.md +0 -7
  166. package/docs/__old/types/Misc-Group/nspc.Reference5.md +0 -7
  167. package/docs/__old/types/Misc-Group/nspc.Reference6.md +0 -9
  168. package/docs/__old/types/Misc-Group/nspc.Reference7.md +0 -7
  169. package/docs/__old/types/Misc-Group/nspc.SampleClassWithoutModifier.md +0 -11
  170. package/docs/__old/types/Misc-Group/nspc.SampleRestResource.md +0 -104
  171. package/docs/__old/types/Misc-Group/nspc.SampleRestResourceWithInnerClass.md +0 -33
  172. package/docs/__old/types/Misc-Group/nspc.SampleRestResourceWithoutApexDocs.md +0 -14
  173. package/docs/__old/types/README.md +0 -97
  174. package/docs/__old/types/Sample-Interfaces/nspc.SampleInterface.md +0 -23
  175. package/examples/includes/header.md +0 -3
  176. package/examples/plain-markdown/docs/Miscellaneous/ns.SampleException.md +0 -7
  177. package/examples/plain-markdown/docs/Sample-Enums/ns.SampleEnum.md +0 -36
  178. package/examples/plain-markdown/docs/index.md +0 -36
  179. package/examples/plain-markdown/force-app/classes/SampleException.cls +0 -1
  180. package/examples/plain-markdown/template.md +0 -3
  181. package/lib/__spec__/core/expect-extensions.d.ts +0 -3
  182. package/lib/__spec__/core/expect-extensions.js +0 -54
  183. package/lib/__spec__/core/expect-extensions.js.map +0 -1
  184. package/lib/__spec__/core/generating-class-docs.spec.d.ts +0 -1
  185. package/lib/__spec__/core/generating-class-docs.spec.js +0 -427
  186. package/lib/__spec__/core/generating-class-docs.spec.js.map +0 -1
  187. package/lib/__spec__/core/generating-enum-docs.spec.d.ts +0 -1
  188. package/lib/__spec__/core/generating-enum-docs.spec.js +0 -303
  189. package/lib/__spec__/core/generating-enum-docs.spec.js.map +0 -1
  190. package/lib/__spec__/core/generating-interface-docs.spec.d.ts +0 -1
  191. package/lib/__spec__/core/generating-interface-docs.spec.js +0 -361
  192. package/lib/__spec__/core/generating-interface-docs.spec.js.map +0 -1
  193. package/lib/__spec__/core/generating-reference-guide.spec.d.ts +0 -1
  194. package/lib/__spec__/core/generating-reference-guide.spec.js +0 -161
  195. package/lib/__spec__/core/generating-reference-guide.spec.js.map +0 -1
  196. package/lib/adapters/apex-types.d.ts +0 -7
  197. package/lib/adapters/apex-types.js +0 -112
  198. package/lib/adapters/apex-types.js.map +0 -1
  199. package/lib/adapters/documentables.d.ts +0 -7
  200. package/lib/adapters/documentables.js +0 -56
  201. package/lib/adapters/documentables.js.map +0 -1
  202. package/lib/adapters/fields-and-properties.d.ts +0 -4
  203. package/lib/adapters/fields-and-properties.js +0 -32
  204. package/lib/adapters/fields-and-properties.js.map +0 -1
  205. package/lib/adapters/methods-and-constructors.d.ts +0 -5
  206. package/lib/adapters/methods-and-constructors.js +0 -92
  207. package/lib/adapters/methods-and-constructors.js.map +0 -1
  208. package/lib/adapters/references.d.ts +0 -5
  209. package/lib/adapters/references.js +0 -82
  210. package/lib/adapters/references.js.map +0 -1
  211. package/lib/adapters/type-utils.d.ts +0 -2
  212. package/lib/adapters/type-utils.js +0 -7
  213. package/lib/adapters/type-utils.js.map +0 -1
  214. package/lib/application/Apexdocs.d.ts +0 -13
  215. package/lib/application/Apexdocs.js +0 -80
  216. package/lib/application/Apexdocs.js.map +0 -1
  217. package/lib/cli/generate.d.ts +0 -2
  218. package/lib/cli/generate.js +0 -157
  219. package/lib/cli/generate.js.map +0 -1
  220. package/lib/core/generate-docs.d.ts +0 -23
  221. package/lib/core/generate-docs.js +0 -241
  222. package/lib/core/generate-docs.js.map +0 -1
  223. package/lib/core/template.d.ts +0 -10
  224. package/lib/core/template.js +0 -92
  225. package/lib/core/template.js.map +0 -1
  226. package/lib/core/templates/reference-guide.d.ts +0 -1
  227. package/lib/core/templates/reference-guide.js +0 -18
  228. package/lib/core/templates/reference-guide.js.map +0 -1
  229. package/lib/index.d.ts +0 -2
  230. package/lib/index.js +0 -29
  231. package/lib/index.js.map +0 -1
  232. package/lib/model/apex-bundle.d.ts +0 -6
  233. package/lib/model/apex-bundle.js +0 -11
  234. package/lib/model/apex-bundle.js.map +0 -1
  235. package/lib/model/apex-type-wrappers/ClassMirrorWrapper.d.ts +0 -7
  236. package/lib/model/apex-type-wrappers/ClassMirrorWrapper.js +0 -14
  237. package/lib/model/apex-type-wrappers/ClassMirrorWrapper.js.map +0 -1
  238. package/lib/model/apex-type-wrappers/MethodMirrorWrapper.d.ts +0 -7
  239. package/lib/model/apex-type-wrappers/MethodMirrorWrapper.js +0 -12
  240. package/lib/model/apex-type-wrappers/MethodMirrorWrapper.js.map +0 -1
  241. package/lib/model/inheritance.d.ts +0 -8
  242. package/lib/model/inheritance.js +0 -3
  243. package/lib/model/inheritance.js.map +0 -1
  244. package/lib/model/manifest.d.ts +0 -22
  245. package/lib/model/manifest.js +0 -53
  246. package/lib/model/manifest.js.map +0 -1
  247. package/lib/model/markdown-file.d.ts +0 -16
  248. package/lib/model/markdown-file.js +0 -111
  249. package/lib/model/markdown-file.js.map +0 -1
  250. package/lib/model/markdown-generation-util/doc-comment-annotation-util.d.ts +0 -8
  251. package/lib/model/markdown-generation-util/doc-comment-annotation-util.js +0 -46
  252. package/lib/model/markdown-generation-util/doc-comment-annotation-util.js.map +0 -1
  253. package/lib/model/markdown-generation-util/field-declaration-util.d.ts +0 -3
  254. package/lib/model/markdown-generation-util/field-declaration-util.js +0 -54
  255. package/lib/model/markdown-generation-util/field-declaration-util.js.map +0 -1
  256. package/lib/model/markdown-generation-util/index.d.ts +0 -3
  257. package/lib/model/markdown-generation-util/index.js +0 -20
  258. package/lib/model/markdown-generation-util/index.js.map +0 -1
  259. package/lib/model/markdown-generation-util/method-declaration-util.d.ts +0 -4
  260. package/lib/model/markdown-generation-util/method-declaration-util.js +0 -114
  261. package/lib/model/markdown-generation-util/method-declaration-util.js.map +0 -1
  262. package/lib/model/markdown-generation-util/type-declaration-util.d.ts +0 -3
  263. package/lib/model/markdown-generation-util/type-declaration-util.js +0 -81
  264. package/lib/model/markdown-generation-util/type-declaration-util.js.map +0 -1
  265. package/lib/model/markdown-home-file.d.ts +0 -11
  266. package/lib/model/markdown-home-file.js +0 -57
  267. package/lib/model/markdown-home-file.js.map +0 -1
  268. package/lib/model/markdown-type-file.d.ts +0 -26
  269. package/lib/model/markdown-type-file.js +0 -137
  270. package/lib/model/markdown-type-file.js.map +0 -1
  271. package/lib/model/openapi/apex-doc-types.d.ts +0 -19
  272. package/lib/model/openapi/apex-doc-types.js +0 -5
  273. package/lib/model/openapi/apex-doc-types.js.map +0 -1
  274. package/lib/model/openapi/open-api-types.d.ts +0 -93
  275. package/lib/model/openapi/open-api-types.js +0 -3
  276. package/lib/model/openapi/open-api-types.js.map +0 -1
  277. package/lib/model/openapi/open-api.d.ts +0 -16
  278. package/lib/model/openapi/open-api.js +0 -34
  279. package/lib/model/openapi/open-api.js.map +0 -1
  280. package/lib/model/openapi/openapi-type-file.d.ts +0 -7
  281. package/lib/model/openapi/openapi-type-file.js +0 -17
  282. package/lib/model/openapi/openapi-type-file.js.map +0 -1
  283. package/lib/model/outputFile.d.ts +0 -10
  284. package/lib/model/outputFile.js +0 -22
  285. package/lib/model/outputFile.js.map +0 -1
  286. package/lib/model/types-repository.d.ts +0 -16
  287. package/lib/model/types-repository.js +0 -54
  288. package/lib/model/types-repository.js.map +0 -1
  289. package/lib/service/apex-file-reader.d.ts +0 -14
  290. package/lib/service/apex-file-reader.js +0 -49
  291. package/lib/service/apex-file-reader.js.map +0 -1
  292. package/lib/service/file-system.d.ts +0 -14
  293. package/lib/service/file-system.js +0 -48
  294. package/lib/service/file-system.js.map +0 -1
  295. package/lib/service/file-writer.d.ts +0 -6
  296. package/lib/service/file-writer.js +0 -57
  297. package/lib/service/file-writer.js.map +0 -1
  298. package/lib/service/manifest-factory.d.ts +0 -10
  299. package/lib/service/manifest-factory.js +0 -16
  300. package/lib/service/manifest-factory.js.map +0 -1
  301. package/lib/service/metadata-processor.d.ts +0 -3
  302. package/lib/service/metadata-processor.js +0 -17
  303. package/lib/service/metadata-processor.js.map +0 -1
  304. package/lib/service/parser.d.ts +0 -21
  305. package/lib/service/parser.js +0 -138
  306. package/lib/service/parser.js.map +0 -1
  307. package/lib/service/state.d.ts +0 -9
  308. package/lib/service/state.js +0 -20
  309. package/lib/service/state.js.map +0 -1
  310. package/lib/service/walkers/class-walker.d.ts +0 -4
  311. package/lib/service/walkers/class-walker.js +0 -33
  312. package/lib/service/walkers/class-walker.js.map +0 -1
  313. package/lib/service/walkers/enum-walker.d.ts +0 -4
  314. package/lib/service/walkers/enum-walker.js +0 -11
  315. package/lib/service/walkers/enum-walker.js.map +0 -1
  316. package/lib/service/walkers/interface-walker.d.ts +0 -4
  317. package/lib/service/walkers/interface-walker.js +0 -15
  318. package/lib/service/walkers/interface-walker.js.map +0 -1
  319. package/lib/service/walkers/walker-factory.d.ts +0 -5
  320. package/lib/service/walkers/walker-factory.js +0 -21
  321. package/lib/service/walkers/walker-factory.js.map +0 -1
  322. package/lib/service/walkers/walker.d.ts +0 -19
  323. package/lib/service/walkers/walker.js +0 -17
  324. package/lib/service/walkers/walker.js.map +0 -1
  325. package/lib/settings.d.ts +0 -64
  326. package/lib/settings.js +0 -89
  327. package/lib/settings.js.map +0 -1
  328. package/lib/test-helpers/AnnotationBuilder.d.ts +0 -12
  329. package/lib/test-helpers/AnnotationBuilder.js +0 -31
  330. package/lib/test-helpers/AnnotationBuilder.js.map +0 -1
  331. package/lib/test-helpers/ClassMirrorBuilder.d.ts +0 -18
  332. package/lib/test-helpers/ClassMirrorBuilder.js +0 -54
  333. package/lib/test-helpers/ClassMirrorBuilder.js.map +0 -1
  334. package/lib/test-helpers/DocCommentAnnotationBuilder.d.ts +0 -8
  335. package/lib/test-helpers/DocCommentAnnotationBuilder.js +0 -26
  336. package/lib/test-helpers/DocCommentAnnotationBuilder.js.map +0 -1
  337. package/lib/test-helpers/DocCommentBuilder.d.ts +0 -12
  338. package/lib/test-helpers/DocCommentBuilder.js +0 -38
  339. package/lib/test-helpers/DocCommentBuilder.js.map +0 -1
  340. package/lib/test-helpers/FieldMirrorBuilder.d.ts +0 -18
  341. package/lib/test-helpers/FieldMirrorBuilder.js +0 -54
  342. package/lib/test-helpers/FieldMirrorBuilder.js.map +0 -1
  343. package/lib/test-helpers/InterfaceMirrorBuilder.d.ts +0 -16
  344. package/lib/test-helpers/InterfaceMirrorBuilder.js +0 -43
  345. package/lib/test-helpers/InterfaceMirrorBuilder.js.map +0 -1
  346. package/lib/test-helpers/MethodMirrorBuilder.d.ts +0 -29
  347. package/lib/test-helpers/MethodMirrorBuilder.js +0 -72
  348. package/lib/test-helpers/MethodMirrorBuilder.js.map +0 -1
  349. package/lib/test-helpers/SettingsBuilder.d.ts +0 -8
  350. package/lib/test-helpers/SettingsBuilder.js +0 -27
  351. package/lib/test-helpers/SettingsBuilder.js.map +0 -1
  352. package/lib/transpiler/factory.d.ts +0 -6
  353. package/lib/transpiler/factory.js +0 -35
  354. package/lib/transpiler/factory.js.map +0 -1
  355. package/lib/transpiler/file-container.d.ts +0 -6
  356. package/lib/transpiler/file-container.js +0 -16
  357. package/lib/transpiler/file-container.js.map +0 -1
  358. package/lib/transpiler/generator-choices.d.ts +0 -1
  359. package/lib/transpiler/generator-choices.js +0 -3
  360. package/lib/transpiler/generator-choices.js.map +0 -1
  361. package/lib/transpiler/markdown/class-file-generatorHelper.d.ts +0 -11
  362. package/lib/transpiler/markdown/class-file-generatorHelper.js +0 -75
  363. package/lib/transpiler/markdown/class-file-generatorHelper.js.map +0 -1
  364. package/lib/transpiler/markdown/docsify/docsify-docs-processor.d.ts +0 -6
  365. package/lib/transpiler/markdown/docsify/docsify-docs-processor.js +0 -13
  366. package/lib/transpiler/markdown/docsify/docsify-docs-processor.js.map +0 -1
  367. package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.d.ts +0 -11
  368. package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.js +0 -51
  369. package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.js.map +0 -1
  370. package/lib/transpiler/markdown/markdown-transpiler-base.d.ts +0 -11
  371. package/lib/transpiler/markdown/markdown-transpiler-base.js +0 -27
  372. package/lib/transpiler/markdown/markdown-transpiler-base.js.map +0 -1
  373. package/lib/transpiler/markdown/plain-markdown/class-template.d.ts +0 -1
  374. package/lib/transpiler/markdown/plain-markdown/class-template.js +0 -77
  375. package/lib/transpiler/markdown/plain-markdown/class-template.js.map +0 -1
  376. package/lib/transpiler/markdown/plain-markdown/constructors-partial-template.d.ts +0 -1
  377. package/lib/transpiler/markdown/plain-markdown/constructors-partial-template.js +0 -36
  378. package/lib/transpiler/markdown/plain-markdown/constructors-partial-template.js.map +0 -1
  379. package/lib/transpiler/markdown/plain-markdown/documentable-partial-template.d.ts +0 -1
  380. package/lib/transpiler/markdown/plain-markdown/documentable-partial-template.js +0 -28
  381. package/lib/transpiler/markdown/plain-markdown/documentable-partial-template.js.map +0 -1
  382. package/lib/transpiler/markdown/plain-markdown/enum-template.d.ts +0 -1
  383. package/lib/transpiler/markdown/plain-markdown/enum-template.js +0 -16
  384. package/lib/transpiler/markdown/plain-markdown/enum-template.js.map +0 -1
  385. package/lib/transpiler/markdown/plain-markdown/fieldsPartialTemplate.d.ts +0 -1
  386. package/lib/transpiler/markdown/plain-markdown/fieldsPartialTemplate.js +0 -27
  387. package/lib/transpiler/markdown/plain-markdown/fieldsPartialTemplate.js.map +0 -1
  388. package/lib/transpiler/markdown/plain-markdown/grouped-members-partial-template.d.ts +0 -1
  389. package/lib/transpiler/markdown/plain-markdown/grouped-members-partial-template.js +0 -10
  390. package/lib/transpiler/markdown/plain-markdown/grouped-members-partial-template.js.map +0 -1
  391. package/lib/transpiler/markdown/plain-markdown/interface-template.d.ts +0 -1
  392. package/lib/transpiler/markdown/plain-markdown/interface-template.js +0 -20
  393. package/lib/transpiler/markdown/plain-markdown/interface-template.js.map +0 -1
  394. package/lib/transpiler/markdown/plain-markdown/methods-partial-template.d.ts +0 -1
  395. package/lib/transpiler/markdown/plain-markdown/methods-partial-template.js +0 -47
  396. package/lib/transpiler/markdown/plain-markdown/methods-partial-template.js.map +0 -1
  397. package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.d.ts +0 -9
  398. package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.js +0 -42
  399. package/lib/transpiler/markdown/plain-markdown/plain-docsProcessor.js.map +0 -1
  400. package/lib/transpiler/markdown/plain-markdown/type-doc-partial.d.ts +0 -1
  401. package/lib/transpiler/markdown/plain-markdown/type-doc-partial.js +0 -31
  402. package/lib/transpiler/markdown/plain-markdown/type-doc-partial.js.map +0 -1
  403. package/lib/transpiler/openapi/open-api-docs-processor.d.ts +0 -13
  404. package/lib/transpiler/openapi/open-api-docs-processor.js +0 -78
  405. package/lib/transpiler/openapi/open-api-docs-processor.js.map +0 -1
  406. package/lib/transpiler/openapi/parsers/Builder.d.ts +0 -16
  407. package/lib/transpiler/openapi/parsers/Builder.js +0 -30
  408. package/lib/transpiler/openapi/parsers/Builder.js.map +0 -1
  409. package/lib/transpiler/openapi/parsers/MethodParser.d.ts +0 -20
  410. package/lib/transpiler/openapi/parsers/MethodParser.js +0 -190
  411. package/lib/transpiler/openapi/parsers/MethodParser.js.map +0 -1
  412. package/lib/transpiler/openapi/parsers/ParameterObjectBuilder.d.ts +0 -7
  413. package/lib/transpiler/openapi/parsers/ParameterObjectBuilder.js +0 -11
  414. package/lib/transpiler/openapi/parsers/ParameterObjectBuilder.js.map +0 -1
  415. package/lib/transpiler/openapi/parsers/ReferenceBuilder.d.ts +0 -39
  416. package/lib/transpiler/openapi/parsers/ReferenceBuilder.js +0 -250
  417. package/lib/transpiler/openapi/parsers/ReferenceBuilder.js.map +0 -1
  418. package/lib/transpiler/openapi/parsers/RequestBodyBuilder.d.ts +0 -10
  419. package/lib/transpiler/openapi/parsers/RequestBodyBuilder.js +0 -20
  420. package/lib/transpiler/openapi/parsers/RequestBodyBuilder.js.map +0 -1
  421. package/lib/transpiler/openapi/parsers/ResponsesBuilder.d.ts +0 -7
  422. package/lib/transpiler/openapi/parsers/ResponsesBuilder.js +0 -22
  423. package/lib/transpiler/openapi/parsers/ResponsesBuilder.js.map +0 -1
  424. package/lib/transpiler/processor-type-transpiler.d.ts +0 -10
  425. package/lib/transpiler/processor-type-transpiler.js +0 -9
  426. package/lib/transpiler/processor-type-transpiler.js.map +0 -1
  427. package/lib/transpiler/transpiler.d.ts +0 -5
  428. package/lib/transpiler/transpiler.js +0 -30
  429. package/lib/transpiler/transpiler.js.map +0 -1
  430. package/lib/util/error-logger.d.ts +0 -8
  431. package/lib/util/error-logger.js +0 -90
  432. package/lib/util/error-logger.js.map +0 -1
  433. package/lib/util/logger.d.ts +0 -21
  434. package/lib/util/logger.js +0 -61
  435. package/lib/util/logger.js.map +0 -1
  436. package/lib/util/string-utils.d.ts +0 -2
  437. package/lib/util/string-utils.js +0 -15
  438. package/lib/util/string-utils.js.map +0 -1
  439. package/src/__spec__/core/generating-class-docs.spec.ts +0 -511
  440. package/src/adapters/__tests__/interface-adapter.spec.ts +0 -80
  441. package/src/adapters/type-utils.ts +0 -5
  442. package/src/adapters/types.d.ts +0 -8
  443. package/src/core/generate-docs.ts +0 -357
  444. package/src/model/apex-bundle.ts +0 -3
  445. package/src/model/inheritance.ts +0 -7
  446. package/src/model/manifest.ts +0 -84
  447. package/src/model/markdown-file.ts +0 -122
  448. package/src/model/markdown-generation-util/doc-comment-annotation-util.ts +0 -50
  449. package/src/model/markdown-generation-util/field-declaration-util.ts +0 -71
  450. package/src/model/markdown-generation-util/index.ts +0 -3
  451. package/src/model/markdown-generation-util/method-declaration-util.ts +0 -166
  452. package/src/model/markdown-generation-util/type-declaration-util.ts +0 -91
  453. package/src/model/markdown-home-file.ts +0 -58
  454. package/src/model/markdown-type-file.ts +0 -165
  455. package/src/model/openapi/openapi-type-file.ts +0 -14
  456. package/src/model/outputFile.ts +0 -20
  457. package/src/service/__tests__/apex-file-reader.spec.ts +0 -92
  458. package/src/service/apex-file-reader.ts +0 -51
  459. package/src/service/file-writer.ts +0 -34
  460. package/src/service/metadata-processor.ts +0 -16
  461. package/src/service/state.ts +0 -24
  462. package/src/service/walkers/class-walker.ts +0 -30
  463. package/src/service/walkers/enum-walker.ts +0 -7
  464. package/src/service/walkers/interface-walker.ts +0 -12
  465. package/src/service/walkers/walker-factory.ts +0 -19
  466. package/src/service/walkers/walker.ts +0 -42
  467. package/src/settings.ts +0 -147
  468. package/src/transpiler/factory.ts +0 -33
  469. package/src/transpiler/file-container.ts +0 -13
  470. package/src/transpiler/generator-choices.ts +0 -1
  471. package/src/transpiler/markdown/class-file-generatorHelper.ts +0 -78
  472. package/src/transpiler/markdown/docsify/docsify-docs-processor.ts +0 -12
  473. package/src/transpiler/markdown/jekyll/jekyll-docsProcessor.ts +0 -50
  474. package/src/transpiler/markdown/markdown-transpiler-base.ts +0 -28
  475. package/src/transpiler/markdown/plain-markdown/plain-docsProcessor.ts +0 -42
  476. package/src/transpiler/processor-type-transpiler.ts +0 -18
  477. /package/examples/{plain-markdown → markdown}/.forceignore +0 -0
  478. /package/examples/{plain-markdown → markdown}/config/project-scratch-def.json +0 -0
  479. /package/examples/{plain-markdown → markdown}/force-app/classes/BaseClass.cls +0 -0
  480. /package/examples/{plain-markdown → markdown}/force-app/classes/ParentInterface.cls +0 -0
  481. /package/examples/{plain-markdown → markdown}/force-app/classes/ReferencedEnum.cls +0 -0
  482. /package/examples/{plain-markdown → markdown}/force-app/classes/SampleClass.cls +0 -0
  483. /package/examples/{plain-markdown → markdown}/force-app/classes/SampleEnum.cls +0 -0
  484. /package/examples/{plain-markdown → markdown}/force-app/classes/SampleInterface.cls +0 -0
  485. /package/examples/{plain-markdown → markdown}/package-lock.json +0 -0
  486. /package/examples/{plain-markdown → markdown}/sfdx-project.json +0 -0
  487. /package/src/{service → application}/file-system.ts +0 -0
  488. /package/src/{model/__tests__ → core/__test__}/manifest.spec.ts +0 -0
  489. /package/src/{transpiler/markdown/plain-markdown → core/markdown/templates}/enum-template.ts +0 -0
  490. /package/src/{transpiler/markdown/plain-markdown → core/markdown/templates}/grouped-members-partial-template.ts +0 -0
  491. /package/src/{transpiler/markdown/plain-markdown → core/markdown/templates}/interface-template.ts +0 -0
  492. /package/src/{transpiler/markdown/plain-markdown → core/markdown/templates}/type-doc-partial.ts +0 -0
  493. /package/src/{service → core/openapi}/__tests__/manifest-factory.spec.ts +0 -0
  494. /package/src/{model → core}/openapi/__tests__/open-api.spec.ts +0 -0
  495. /package/src/{model → core}/openapi/apex-doc-types.ts +0 -0
  496. /package/src/{model → core/openapi}/apex-type-wrappers/ClassMirrorWrapper.ts +0 -0
  497. /package/src/{model → core/openapi}/apex-type-wrappers/MethodMirrorWrapper.ts +0 -0
  498. /package/src/{model → core}/openapi/open-api-types.ts +0 -0
  499. /package/src/{model → core}/openapi/open-api.ts +0 -0
@@ -0,0 +1,309 @@
1
+ # Url Class
2
+
3
+ Represents a uniform resource locator (URL) and provides access to parts of the URL.
4
+ Enables access to the base URL used to access your Salesforce org.
5
+
6
+ ## Usage
7
+ Use the methods of the `System.URL` class to create links to objects in your organization. Such objects can be files, images,
8
+ logos, or records that you want to include in external emails, in activities, or in Chatter posts. For example, you can create
9
+ a link to a file uploaded as an attachment to a Chatter post by concatenating the Salesforce base URL with the file ID:
10
+
11
+ ```apex
12
+ // Get a file uploaded through Chatter.
13
+ ContentDocument doc = [SELECT Id FROM ContentDocument
14
+ WHERE Title = 'myfile'];
15
+ // Create a link to the file.
16
+ String fullFileURL = URL.getOrgDomainURL().toExternalForm() +
17
+ '/' + doc.id;
18
+ system.debug(fullFileURL);
19
+ ```
20
+
21
+
22
+ The following example creates a link to a Salesforce record. The full URL is created by concatenating the Salesforce base
23
+ URL with the record ID.
24
+
25
+ ```ape
26
+ Account acct = [SELECT Id FROM Account WHERE Name = 'Acme' LIMIT 1];
27
+ String fullRecordURL = URL.getOrgDomainURL().toExternalForm() + '/' + acct.Id;
28
+ ```
29
+
30
+
31
+ ## Example
32
+ In this example, the base URL and the full request URL of the current Salesforce server instance are retrieved. Next, a URL
33
+ pointing to a specific account object is created. Finally, components of the base and full URL are obtained. This example
34
+ prints out all the results to the debug log output.
35
+
36
+ ```apex
37
+ // Create a new account called Acme that we will create a link for later.
38
+ Account myAccount = new Account(Name='Acme');
39
+ insert myAccount;
40
+
41
+ // Get the base URL.
42
+ String sfdcBaseURL = URL.getOrgDomainURL().toExternalForm();
43
+ System.debug('Base URL: ' + sfdcBaseURL );
44
+
45
+ // Get the URL for the current request.
46
+ String currentRequestURL = URL.getCurrentRequestUrl().toExternalForm();
47
+ System.debug('Current request URL: ' + currentRequestURL);
48
+
49
+ // Create the account URL from the base URL.
50
+ String accountURL = URL.getOrgDomainURL().toExternalForm() +
51
+ '/' + myAccount.Id;
52
+ System.debug('URL of a particular account: ' + accountURL);
53
+
54
+ // Get some parts of the base URL.
55
+ System.debug('Host: ' + URL.getOrgDomainURL().getHost());
56
+ System.debug('Protocol: ' + URL.getOrgDomainURL().getProtocol());
57
+
58
+ // Get the query string of the current request.
59
+ System.debug('Query: ' + URL.getCurrentRequestUrl().getQuery());
60
+ ```
61
+
62
+
63
+ ## Version Behavior Changes
64
+ In API version 41.0 and later, Apex URL objects are represented by the java.net.URI type, not the java.net.URL type.
65
+ The API version in which the URL object was instantiated determines the behavior of subsequent method calls to the
66
+ specific instance. Salesforce strongly encourages you to use API 41.0 and later versions for fully RFC-compliant URL
67
+ parsing that includes proper handling of edge cases of complex URL structures. API 41.0 and later versions also enforce
68
+ that inputs are valid, RFC-compliant URL or URI strings.
69
+
70
+ * [URL Constructors](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_url.htm#apex_System_URL_constructors)
71
+ * [URL Methods](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_url.htm#apex_System_URL_methods)
72
+
73
+ **See Also**
74
+ * [URL Class](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_classes_url.htm)
75
+
76
+ ## Namespace
77
+ ns
78
+
79
+ ## Constructors
80
+ ### `Url(spec)`
81
+
82
+ Creates a new instance of the URL class using the specified string representation of the URL.
83
+
84
+ #### Signature
85
+ ```apex
86
+ global Url(String spec)
87
+ ```
88
+
89
+ #### Parameters
90
+ | Name | Type | Description |
91
+ |------|------|-------------|
92
+ | spec | String | The string to parse as a URL. |
93
+
94
+ ---
95
+
96
+ ### `Url(context, spec)`
97
+
98
+ Creates a new instance of the URL class by parsing the specified spec within the specified context.
99
+
100
+ **Usage**
101
+
102
+ The new URL is created from the given context URL and the spec argument as described in RFC2396 "Uniform Resource Identifiers : Generic * Syntax" :
103
+ ```xml
104
+ <scheme>://<authority><path>?<query>#<fragment>
105
+ ```
106
+
107
+
108
+ For more information about the arguments of this constructor, see the corresponding URL(java.net.URL, java.lang.String) constructor for Java.
109
+
110
+ #### Signature
111
+ ```apex
112
+ global Url(Url context, String spec)
113
+ ```
114
+
115
+ #### Parameters
116
+ | Name | Type | Description |
117
+ |------|------|-------------|
118
+ | context | [Url](../miscellaneous/Url.md) | The context in which to parse the specification. |
119
+ | spec | String | The string to parse as a URL. |
120
+
121
+ ---
122
+
123
+ ### `Url(protocol, host, file)`
124
+
125
+ Creates a new instance of the URL class using the specified protocol, host, and file on the host. The default port for the specified protocol is used.
126
+
127
+ #### Signature
128
+ ```apex
129
+ global Url(String protocol, String host, String file)
130
+ ```
131
+
132
+ #### Parameters
133
+ | Name | Type | Description |
134
+ |------|------|-------------|
135
+ | protocol | String | The protocol name for this URL. |
136
+ | host | String | The host name for this URL. |
137
+ | file | String | The file name for this URL. |
138
+
139
+ ---
140
+
141
+ ### `Url(protocol, host, port, file)`
142
+
143
+ Creates a new instance of the URL class using the specified protocol, host, port number, and file on the host.
144
+
145
+ #### Signature
146
+ ```apex
147
+ global Url(String protocol, String host, Integer port, String file)
148
+ ```
149
+
150
+ #### Parameters
151
+ | Name | Type | Description |
152
+ |------|------|-------------|
153
+ | protocol | String | The protocol name for this URL. |
154
+ | host | String | The host name for this URL. |
155
+ | port | Integer | The port number for this URL. |
156
+ | file | String | The file name for this URL. |
157
+
158
+ ## Methods
159
+ ### `getAuthority()`
160
+
161
+ Returns the authority portion of the current URL.
162
+
163
+ #### Signature
164
+ ```apex
165
+ global String getAuthority()
166
+ ```
167
+
168
+ #### Return Type
169
+ **String**
170
+
171
+ The authority portion of the current URL.
172
+
173
+ ---
174
+
175
+ ### `getCurrentRequestUrl()`
176
+
177
+ Returns the URL of an entire request on a Salesforce instance.
178
+
179
+ **Usage**
180
+
181
+ An example of a URL for an entire request is https://yourInstance.salesforce.com/apex/myVfPage.apexp.
182
+
183
+ #### Signature
184
+ ```apex
185
+ global static Url getCurrentRequestUrl()
186
+ ```
187
+
188
+ #### Return Type
189
+ **[Url](../miscellaneous/Url.md)**
190
+
191
+ The URL of the entire request.
192
+
193
+ ---
194
+
195
+ ### `getDefPort()`
196
+
197
+ Returns the default port number of the protocol associated with the current URL.
198
+
199
+ **Usage**
200
+
201
+ Returns -1 if the URL scheme or the stream protocol handler for the URL doesn&#x27;t define a default port number.
202
+
203
+ #### Signature
204
+ ```apex
205
+ global Integer getDefPort()
206
+ ```
207
+
208
+ #### Return Type
209
+ **Integer**
210
+
211
+ The default port number of the protocol associated with the current URL.
212
+
213
+ ---
214
+
215
+ ### `getFile()`
216
+
217
+ Returns the file name of the current URL.
218
+
219
+ #### Signature
220
+ ```apex
221
+ global String getFile()
222
+ ```
223
+
224
+ #### Return Type
225
+ **String**
226
+
227
+ The file name of the current URL.
228
+
229
+ ---
230
+
231
+ ### `getFileFieldURL(entityId, fieldName)`
232
+
233
+ Returns the download URL for a file attachment.
234
+
235
+ #### Signature
236
+ ```apex
237
+ global static String getFileFieldURL(String entityId, String fieldName)
238
+ ```
239
+
240
+ #### Parameters
241
+ | Name | Type | Description |
242
+ |------|------|-------------|
243
+ | entityId | String | Specifies the ID of the entity that holds the file data. |
244
+ | fieldName | String | Specifies the API name of a file field component, such as `AttachmentBody` . |
245
+
246
+ #### Return Type
247
+ **String**
248
+
249
+ The download URL for the file attachment.
250
+
251
+ #### Example
252
+ String fileURL &#x3D;
253
+ URL.getFileFieldURL(
254
+ &#x27;087000000000123&#x27; ,
255
+ &#x27;AttachmentBody&#x27;);
256
+
257
+ ---
258
+
259
+ ### `getHost()`
260
+
261
+ Returns the host name of the current URL.
262
+
263
+ #### Signature
264
+ ```apex
265
+ global String getHost()
266
+ ```
267
+
268
+ #### Return Type
269
+ **String**
270
+
271
+ The host name of the current URL.
272
+
273
+ ---
274
+
275
+ ### `getOrgDomainUrl()`
276
+
277
+ Returns the canonical URL for your org. For example, https://MyDomainName.my.salesforce.com.
278
+
279
+ **Usage**
280
+
281
+ Use getOrgDomainUrl() to interact with Salesforce REST and SOAP APIs in Apex code. Get endpoints for User Interface API calls, for creating and customizing picklist value sets and custom fields, and more.
282
+
283
+ `getOrgDomainUrl()` can access the domain URL only for the org in which the Apex code is running.
284
+
285
+ You don&#x27;t need a RemoteSiteSetting for your org to interact with the Salesforce APIs using domain URLs retrieved with this method.
286
+
287
+ **See Also**
288
+
289
+ * [Lightning Aura Components Developer Guide: Making API Calls from Apex](https://developer.salesforce.com/docs/atlas.en-us.250.0.lightning.meta/lightning/apex_api_calls.htm)
290
+
291
+ #### Signature
292
+ ```apex
293
+ global static Url getOrgDomainUrl()
294
+ ```
295
+
296
+ #### Return Type
297
+ **[Url](../miscellaneous/Url.md)**
298
+
299
+ getOrgDomainUrl() always returns the login URL for your org, regardless of context. Use that URL when making API calls to your org.
300
+
301
+ #### Example
302
+ // This example uses the Salesforce REST API to get organization limit values. For information on limits, see Limits in the REST API Developer Guide.
303
+ Http h &#x3D; new Http();
304
+ HttpRequest req &#x3D; new HttpRequest();
305
+ req.setEndpoint(Url.getOrgDomainUrl().toExternalForm()
306
+ + &#x27;/services/data/v44.0/limits&#x27;);
307
+ req.setMethod(&#x27;GET&#x27;);
308
+ req.setHeader(&#x27;Authorization&#x27;, &#x27;Bearer &#x27; + UserInfo.getSessionId());
309
+ HttpResponse res &#x3D; h.send(req);
@@ -0,0 +1,36 @@
1
+ # SampleEnum Enum
2
+
3
+ `NAMESPACEACCESSIBLE`
4
+
5
+ This is a sample enum. This references [ReferencedEnum](../miscellaneous/ReferencedEnum.md) .
6
+
7
+ This description has several lines
8
+
9
+ **Some Custom**
10
+
11
+ Test. I can also have a [ReferencedEnum](../miscellaneous/ReferencedEnum.md) here.
12
+ And it can be multiline.
13
+
14
+ **Mermaid**
15
+
16
+ graph TD
17
+ A[SampleEnum] --&gt;|references| B[ReferencedEnum]
18
+ B --&gt;|referenced by| A
19
+
20
+ **Group** Sample Enums
21
+
22
+ **Author** John Doe
23
+
24
+ **Date** 2022-01-01
25
+
26
+ **See** [ReferencedEnum](../miscellaneous/ReferencedEnum.md)
27
+
28
+ ## Namespace
29
+ ns
30
+
31
+ ## Values
32
+ | Value | Description |
33
+ |-------|-------------|
34
+ | VALUE1 | This is value 1 |
35
+ | VALUE2 | This is value 2 |
36
+ | VALUE3 | This is value 3 |
@@ -2,7 +2,6 @@
2
2
  `virtual`
3
3
 
4
4
  aliquip ex sunt officia ullamco anim deserunt magna aliquip nisi eiusmod in sit officia veniam ex
5
-
6
5
  deserunt ea officia exercitation laboris enim in duis quis enim eiusmod eu amet cupidatat.
7
6
 
8
7
  **Group** SampleGroup
@@ -11,17 +10,17 @@ deserunt ea officia exercitation laboris enim in duis quis enim eiusmod eu amet
11
10
  ns
12
11
 
13
12
  ## Example
14
- ```apex
15
- SampleClass sample = new SampleClass();
13
+ SampleClass sample &#x3D; new SampleClass();
16
14
  sample.doSomething();
17
- ```
18
15
 
19
- **Extends**
20
- [ns.BaseClass](../Miscellaneous/ns.BaseClass.md)
16
+ **Inheritance**
17
+
18
+ [BaseClass](../miscellaneous/BaseClass.md)
21
19
 
22
20
  **Implements**
23
- [ns.SampleInterface](../Miscellaneous/ns.SampleInterface.md),
24
- [ns.ParentInterface](../Miscellaneous/ns.ParentInterface.md)
21
+
22
+ [SampleInterface](../miscellaneous/SampleInterface.md),
23
+ [ParentInterface](../miscellaneous/ParentInterface.md)
25
24
 
26
25
  ## Fields
27
26
  ### Group Name
@@ -31,7 +30,7 @@ This is a sample field.
31
30
 
32
31
  ##### Signature
33
32
  ```apex
34
- private name
33
+ private final name
35
34
  ```
36
35
 
37
36
  ##### Type
@@ -48,7 +47,7 @@ public sampleEnumFromBase
48
47
  ```
49
48
 
50
49
  ##### Type
51
- [ns.SampleEnum](../Sample-Enums/ns.SampleEnum.md)
50
+ [SampleEnum](../sample-enums/SampleEnum.md)
52
51
 
53
52
  ## Properties
54
53
  ### Group Name
@@ -116,10 +115,8 @@ public virtual String sayHello()
116
115
  A string value.
117
116
 
118
117
  ##### Example
119
- ```apex
120
- SampleClass sample = new SampleClass();
118
+ SampleClass sample &#x3D; new SampleClass();
121
119
  sample.doSomething();
122
- ```
123
120
 
124
121
  ## Classes
125
122
  ### SomeInnerClass Class
@@ -170,4 +167,4 @@ public void doSomething()
170
167
  ```
171
168
 
172
169
  ###### Return Type
173
- **void**
170
+ **void**
@@ -0,0 +1 @@
1
+ public class MultiInheritanceClass extends SampleClass {}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @description This is a sample exception.
3
+ * @usage
4
+ *
5
+ * You can use the exception the following way.
6
+ * You can also take a look at {@link SampleClass} to see how it is used.
7
+ * This is a dangerous HTML tag: <script>alert('Hello');</script>
8
+ *
9
+ * ```
10
+ * try {
11
+ * throw new SampleException();
12
+ * } catch (SampleException e) {
13
+ * System.debug('Caught exception');
14
+ * }
15
+ * ```
16
+ */
17
+ public class SampleException extends Exception {}
@@ -0,0 +1,194 @@
1
+ /**
2
+ * @description Represents a uniform resource locator (URL) and provides access to parts of the URL.
3
+ * Enables access to the base URL used to access your Salesforce org.
4
+ *
5
+ * ## Usage
6
+ * Use the methods of the `System.URL` class to create links to objects in your organization. Such objects can be files, images,
7
+ * logos, or records that you want to include in external emails, in activities, or in Chatter posts. For example, you can create
8
+ * a link to a file uploaded as an attachment to a Chatter post by concatenating the Salesforce base URL with the file ID:
9
+ *
10
+ * ```apex
11
+ * // Get a file uploaded through Chatter.
12
+ * ContentDocument doc = [SELECT Id FROM ContentDocument
13
+ * WHERE Title = 'myfile'];
14
+ * // Create a link to the file.
15
+ * String fullFileURL = URL.getOrgDomainURL().toExternalForm() +
16
+ * '/' + doc.id;
17
+ * system.debug(fullFileURL);
18
+ * ```
19
+ *
20
+ * The following example creates a link to a Salesforce record. The full URL is created by concatenating the Salesforce base
21
+ * URL with the record ID.
22
+ *
23
+ * ```ape
24
+ * Account acct = [SELECT Id FROM Account WHERE Name = 'Acme' LIMIT 1];
25
+ * String fullRecordURL = URL.getOrgDomainURL().toExternalForm() + '/' + acct.Id;
26
+ * ```
27
+ *
28
+ * ## Example
29
+ * In this example, the base URL and the full request URL of the current Salesforce server instance are retrieved. Next, a URL
30
+ * pointing to a specific account object is created. Finally, components of the base and full URL are obtained. This example
31
+ * prints out all the results to the debug log output.
32
+ *
33
+ * ```apex
34
+ * // Create a new account called Acme that we will create a link for later.
35
+ * Account myAccount = new Account(Name='Acme');
36
+ * insert myAccount;
37
+ *
38
+ * // Get the base URL.
39
+ * String sfdcBaseURL = URL.getOrgDomainURL().toExternalForm();
40
+ * System.debug('Base URL: ' + sfdcBaseURL );
41
+ *
42
+ * // Get the URL for the current request.
43
+ * String currentRequestURL = URL.getCurrentRequestUrl().toExternalForm();
44
+ * System.debug('Current request URL: ' + currentRequestURL);
45
+ *
46
+ * // Create the account URL from the base URL.
47
+ * String accountURL = URL.getOrgDomainURL().toExternalForm() +
48
+ * '/' + myAccount.Id;
49
+ * System.debug('URL of a particular account: ' + accountURL);
50
+ *
51
+ * // Get some parts of the base URL.
52
+ * System.debug('Host: ' + URL.getOrgDomainURL().getHost());
53
+ * System.debug('Protocol: ' + URL.getOrgDomainURL().getProtocol());
54
+ *
55
+ * // Get the query string of the current request.
56
+ * System.debug('Query: ' + URL.getCurrentRequestUrl().getQuery());
57
+ * ```
58
+ *
59
+ * ## Version Behavior Changes
60
+ * In API version 41.0 and later, Apex URL objects are represented by the java.net.URI type, not the java.net.URL type.
61
+ * The API version in which the URL object was instantiated determines the behavior of subsequent method calls to the
62
+ * specific instance. Salesforce strongly encourages you to use API 41.0 and later versions for fully RFC-compliant URL
63
+ * parsing that includes proper handling of edge cases of complex URL structures. API 41.0 and later versions also enforce
64
+ * that inputs are valid, RFC-compliant URL or URI strings.
65
+ *
66
+ * * [URL Constructors](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_url.htm#apex_System_URL_constructors)
67
+ * * [URL Methods](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_url.htm#apex_System_URL_methods)
68
+ *
69
+ * **See Also**
70
+ * * [URL Class](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_classes_url.htm)
71
+ */
72
+ global class Url {
73
+ /**
74
+ * @description Creates a new instance of the URL class using the specified string representation of the URL.
75
+ * @param spec The string to parse as a URL.
76
+ */
77
+ global Url(String spec) { }
78
+
79
+ /**
80
+ * @description Creates a new instance of the URL class by parsing the specified spec within the specified context.
81
+ * @param context The context in which to parse the specification.
82
+ * @param spec The string to parse as a URL.
83
+ *
84
+ * @usage
85
+ * The new URL is created from the given context URL and the spec argument as described in RFC2396 "Uniform Resource Identifiers : Generic * Syntax" :
86
+ * ```xml
87
+ * <scheme>://<authority><path>?<query>#<fragment>
88
+ * ```
89
+ *
90
+ * For more information about the arguments of this constructor, see the corresponding URL(java.net.URL, java.lang.String) constructor for Java.
91
+ */
92
+ global Url(Url context, String spec) { }
93
+
94
+ /**
95
+ * @description Creates a new instance of the URL class using the specified protocol, host, and file on the host. The default port for the specified protocol is used.
96
+ * @param protocol The protocol name for this URL.
97
+ * @param host The host name for this URL.
98
+ * @param file The file name for this URL.
99
+ */
100
+ global Url(String protocol, String host, String file) {}
101
+
102
+ /**
103
+ * @description Creates a new instance of the URL class using the specified protocol, host, port number, and file on the host.
104
+ * @param protocol The protocol name for this URL.
105
+ * @param host The host name for this URL.
106
+ * @param port The port number for this URL.
107
+ * @param file The file name for this URL.
108
+ */
109
+ global Url(String protocol, String host, Integer port, String file) {}
110
+
111
+ /**
112
+ * @description Returns the authority portion of the current URL.
113
+ * @return The authority portion of the current URL.
114
+ */
115
+ global String getAuthority() {
116
+ return null;
117
+ }
118
+
119
+ /**
120
+ * @description Returns the URL of an entire request on a Salesforce instance.
121
+ * @return The URL of the entire request.
122
+ * @usage An example of a URL for an entire request is https://yourInstance.salesforce.com/apex/myVfPage.apexp.
123
+ */
124
+ global static Url getCurrentRequestUrl() {
125
+ return null;
126
+ }
127
+
128
+ /**
129
+ * @description Returns the default port number of the protocol associated with the current URL.
130
+ * @return The default port number of the protocol associated with the current URL.
131
+ * @usage Returns -1 if the URL scheme or the stream protocol handler for the URL doesn't define a default port number.
132
+ */
133
+ global Integer getDefPort() {
134
+ return null;
135
+ }
136
+
137
+ /**
138
+ * @description Returns the file name of the current URL.
139
+ * @return The file name of the current URL.
140
+ */
141
+ global String getFile() {
142
+ return null;
143
+ }
144
+
145
+ /**
146
+ * @description Returns the download URL for a file attachment.
147
+ * @param entityId Specifies the ID of the entity that holds the file data.
148
+ * @param fieldName Specifies the API name of a file field component, such as `AttachmentBody`.
149
+ * @return The download URL for the file attachment.
150
+ * @example
151
+ * String fileURL =
152
+ * URL.getFileFieldURL(
153
+ * '087000000000123' ,
154
+ * 'AttachmentBody');
155
+ */
156
+ global static String getFileFieldURL(String entityId, String fieldName) {
157
+ return null;
158
+ }
159
+
160
+ /**
161
+ * @description Returns the host name of the current URL.
162
+ * @return The host name of the current URL.
163
+ */
164
+ global String getHost() {
165
+ return null;
166
+ }
167
+
168
+ /**
169
+ * @description Returns the canonical URL for your org. For example, https://MyDomainName.my.salesforce.com.
170
+ * @return getOrgDomainUrl() always returns the login URL for your org, regardless of context. Use that URL when making API calls to your org.
171
+ * @usage
172
+ * Use getOrgDomainUrl() to interact with Salesforce REST and SOAP APIs in Apex code. Get endpoints for User Interface API calls, for creating and customizing picklist value sets and custom fields, and more.
173
+ *
174
+ * `getOrgDomainUrl()` can access the domain URL only for the org in which the Apex code is running.
175
+ *
176
+ * You don't need a RemoteSiteSetting for your org to interact with the Salesforce APIs using domain URLs retrieved with this method.
177
+ *
178
+ * @example
179
+ * // This example uses the Salesforce REST API to get organization limit values. For information on limits, see Limits in the REST API Developer Guide.
180
+ * Http h = new Http();
181
+ * HttpRequest req = new HttpRequest();
182
+ * req.setEndpoint(Url.getOrgDomainUrl().toExternalForm()
183
+ * + '/services/data/v44.0/limits');
184
+ * req.setMethod('GET');
185
+ * req.setHeader('Authorization', 'Bearer ' + UserInfo.getSessionId());
186
+ * HttpResponse res = h.send(req);
187
+ *
188
+ * @see-also
189
+ * * [Lightning Aura Components Developer Guide: Making API Calls from Apex](https://developer.salesforce.com/docs/atlas.en-us.250.0.lightning.meta/lightning/apex_api_calls.htm)
190
+ */
191
+ global static Url getOrgDomainUrl() {
192
+ return null;
193
+ }
194
+ }
@@ -2,7 +2,8 @@
2
2
  "name": "plain-markdown",
3
3
  "scripts": {
4
4
  "docs:clean": "rimraf docs",
5
- "docs:build": "ts-node ../../src/cli/generate.ts",
5
+ "docs:build": "ts-node ../../src/cli/generate.ts markdown",
6
+ "docs:help": "ts-node ../../src/cli/generate.ts markdown --help",
6
7
  "docs:gen": "npm run docs:clean && npm run docs:build"
7
8
  },
8
9
  "devDependencies": {
@@ -13,7 +14,6 @@
13
14
  },
14
15
  "apexdocs": {
15
16
  "sourceDir": "force-app",
16
- "targetGenerator": "plain-markdown",
17
17
  "scope": ["global", "public", "protected", "private", "namespaceaccessible"],
18
18
  "namespace": "ns"
19
19
  }
@@ -0,0 +1,12 @@
1
+ # List files or directories below to ignore them when running force:source:push, force:source:pull, and force:source:status
2
+ # More information: https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_exclude_source.htm
3
+ #
4
+
5
+ package.xml
6
+
7
+ # LWC configuration files
8
+ **/jsconfig.json
9
+ **/.eslintrc.json
10
+
11
+ # LWC Jest
12
+ **/__tests__/**