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