@cparra/apexdocs 3.0.0 → 3.1.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 (261) hide show
  1. package/README.md +11 -5
  2. package/package.json +4 -1
  3. package/.github/workflows/ci.yaml +0 -22
  4. package/.github/workflows/close_stale.yml +0 -22
  5. package/.prettierrc.js +0 -7
  6. package/__mocks__/chalk.js +0 -12
  7. package/__mocks__/log-update.js +0 -6
  8. package/eslint.config.mjs +0 -10
  9. package/examples/README.md +0 -5
  10. package/examples/docsify/README.md +0 -17
  11. package/examples/docsify/apexdocs.config.ts +0 -13
  12. package/examples/docsify/classes/ASampleClass.cls +0 -57
  13. package/examples/docsify/classes/CodeControl.cls +0 -19
  14. package/examples/docsify/classes/SampleClass.cls +0 -95
  15. package/examples/docsify/classes/SampleInterface.cls +0 -17
  16. package/examples/docsify/classes/SomeDto.cls +0 -122
  17. package/examples/docsify/docs/.nojekyll +0 -0
  18. package/examples/docsify/docs/README.md +0 -25
  19. package/examples/docsify/docs/_config.yml +0 -1
  20. package/examples/docsify/docs/index.html +0 -22
  21. package/examples/docsify/docs/miscellaneous/ASampleClass.md +0 -88
  22. package/examples/docsify/docs/miscellaneous/CodeControl.md +0 -107
  23. package/examples/docsify/docs/miscellaneous/SomeDto.md +0 -244
  24. package/examples/docsify/docs/sample-classes/SampleClass.md +0 -171
  25. package/examples/docsify/docs/sample-interfaces/SampleInterface.md +0 -36
  26. package/examples/docsify/package-lock.json +0 -2459
  27. package/examples/docsify/package.json +0 -14
  28. package/examples/imported/.forceignore +0 -12
  29. package/examples/imported/README.md +0 -6
  30. package/examples/imported/config/project-scratch-def.json +0 -5
  31. package/examples/imported/docs/index.md +0 -109
  32. package/examples/imported/docs/miscellaneous/BaseClass.md +0 -13
  33. package/examples/imported/docs/miscellaneous/MultiInheritanceClass.md +0 -69
  34. package/examples/imported/docs/miscellaneous/ParentInterface.md +0 -12
  35. package/examples/imported/docs/miscellaneous/ReferencedEnum.md +0 -5
  36. package/examples/imported/docs/miscellaneous/SampleException.md +0 -21
  37. package/examples/imported/docs/miscellaneous/SampleInterface.md +0 -113
  38. package/examples/imported/docs/miscellaneous/Url.md +0 -308
  39. package/examples/imported/docs/sample-enums/SampleEnum.md +0 -33
  40. package/examples/imported/docs/samplegroup/SampleClass.md +0 -167
  41. package/examples/imported/force-app/classes/BaseClass.cls +0 -3
  42. package/examples/imported/force-app/classes/MultiInheritanceClass.cls +0 -1
  43. package/examples/imported/force-app/classes/ParentInterface.cls +0 -3
  44. package/examples/imported/force-app/classes/ReferencedEnum.cls +0 -3
  45. package/examples/imported/force-app/classes/SampleClass.cls +0 -72
  46. package/examples/imported/force-app/classes/SampleEnum.cls +0 -30
  47. package/examples/imported/force-app/classes/SampleException.cls +0 -17
  48. package/examples/imported/force-app/classes/SampleInterface.cls +0 -50
  49. package/examples/imported/force-app/classes/Url.cls +0 -196
  50. package/examples/imported/package-lock.json +0 -665
  51. package/examples/imported/package.json +0 -6
  52. package/examples/imported/scripts/process-docs.mjs +0 -16
  53. package/examples/imported/sfdx-project.json +0 -12
  54. package/examples/markdown/.forceignore +0 -12
  55. package/examples/markdown/README.md +0 -7
  56. package/examples/markdown/config/project-scratch-def.json +0 -5
  57. package/examples/markdown/docs/index.md +0 -109
  58. package/examples/markdown/docs/miscellaneous/BaseClass.md +0 -16
  59. package/examples/markdown/docs/miscellaneous/MultiInheritanceClass.md +0 -72
  60. package/examples/markdown/docs/miscellaneous/ParentInterface.md +0 -15
  61. package/examples/markdown/docs/miscellaneous/ReferencedEnum.md +0 -8
  62. package/examples/markdown/docs/miscellaneous/SampleException.md +0 -24
  63. package/examples/markdown/docs/miscellaneous/SampleInterface.md +0 -116
  64. package/examples/markdown/docs/miscellaneous/Url.md +0 -311
  65. package/examples/markdown/docs/sample-enums/SampleEnum.md +0 -36
  66. package/examples/markdown/docs/samplegroup/SampleClass.md +0 -170
  67. package/examples/markdown/force-app/classes/BaseClass.cls +0 -3
  68. package/examples/markdown/force-app/classes/MultiInheritanceClass.cls +0 -1
  69. package/examples/markdown/force-app/classes/ParentInterface.cls +0 -3
  70. package/examples/markdown/force-app/classes/ReferencedEnum.cls +0 -3
  71. package/examples/markdown/force-app/classes/SampleClass.cls +0 -72
  72. package/examples/markdown/force-app/classes/SampleEnum.cls +0 -30
  73. package/examples/markdown/force-app/classes/SampleException.cls +0 -17
  74. package/examples/markdown/force-app/classes/SampleInterface.cls +0 -50
  75. package/examples/markdown/force-app/classes/Url.cls +0 -196
  76. package/examples/markdown/package-lock.json +0 -665
  77. package/examples/markdown/package.json +0 -20
  78. package/examples/markdown/sfdx-project.json +0 -12
  79. package/examples/markdown-jsconfig/.forceignore +0 -12
  80. package/examples/markdown-jsconfig/README.md +0 -9
  81. package/examples/markdown-jsconfig/apexdocs.config.mjs +0 -22
  82. package/examples/markdown-jsconfig/config/project-scratch-def.json +0 -5
  83. package/examples/markdown-jsconfig/docs/index.md +0 -12
  84. package/examples/markdown-jsconfig/docs/miscellaneous/Url.md +0 -315
  85. package/examples/markdown-jsconfig/force-app/classes/Url.cls +0 -196
  86. package/examples/markdown-jsconfig/package-lock.json +0 -665
  87. package/examples/markdown-jsconfig/package.json +0 -15
  88. package/examples/markdown-jsconfig/sfdx-project.json +0 -12
  89. package/examples/open-api/README.md +0 -5
  90. package/examples/open-api/config/project-scratch-def.json +0 -13
  91. package/examples/open-api/docs/openapi.json +0 -14
  92. package/examples/open-api/force-app/main/default/classes/ChildClass.cls +0 -42
  93. package/examples/open-api/force-app/main/default/classes/SampleClass.cls +0 -167
  94. package/examples/open-api/force-app/main/default/restapi/SampleRestResource.cls +0 -195
  95. package/examples/open-api/force-app/main/default/restapi/SampleRestResourceToSkip.cls +0 -35
  96. package/examples/open-api/force-app/main/default/restapi/SampleRestResourceWithInnerClass.cls +0 -24
  97. package/examples/open-api/force-app/main/default/restapi/SampleRestResourceWithoutApexDocs.cls +0 -15
  98. package/examples/open-api/force-app/main/default/restapi/references/Reference1.cls +0 -9
  99. package/examples/open-api/force-app/main/default/restapi/references/Reference2.cls +0 -9
  100. package/examples/open-api/force-app/main/default/restapi/references/Reference3.cls +0 -3
  101. package/examples/open-api/force-app/main/default/restapi/references/Reference4.cls +0 -3
  102. package/examples/open-api/force-app/main/default/restapi/references/Reference5.cls +0 -3
  103. package/examples/open-api/force-app/main/default/restapi/references/Reference6.cls +0 -6
  104. package/examples/open-api/force-app/main/default/restapi/references/Reference7.cls +0 -3
  105. package/examples/open-api/package-lock.json +0 -724
  106. package/examples/open-api/package.json +0 -20
  107. package/examples/open-api/sfdx-project.json +0 -12
  108. package/examples/vitepress/.forceignore +0 -12
  109. package/examples/vitepress/README.md +0 -25
  110. package/examples/vitepress/apexdocs.config.ts +0 -113
  111. package/examples/vitepress/config/project-scratch-def.json +0 -13
  112. package/examples/vitepress/docs/.vitepress/cache/deps/@theme_index.js +0 -259
  113. package/examples/vitepress/docs/.vitepress/cache/deps/@theme_index.js.map +0 -7
  114. package/examples/vitepress/docs/.vitepress/cache/deps/_metadata.json +0 -40
  115. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-574YRH25.js +0 -11474
  116. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-574YRH25.js.map +0 -7
  117. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-E5DZZB2I.js +0 -9172
  118. package/examples/vitepress/docs/.vitepress/cache/deps/chunk-E5DZZB2I.js.map +0 -7
  119. package/examples/vitepress/docs/.vitepress/cache/deps/package.json +0 -3
  120. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vue_devtools-api.js +0 -4339
  121. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vue_devtools-api.js.map +0 -7
  122. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vueuse_core.js +0 -567
  123. package/examples/vitepress/docs/.vitepress/cache/deps/vitepress___@vueuse_core.js.map +0 -7
  124. package/examples/vitepress/docs/.vitepress/cache/deps/vue.js +0 -323
  125. package/examples/vitepress/docs/.vitepress/cache/deps/vue.js.map +0 -7
  126. package/examples/vitepress/docs/.vitepress/config.mts +0 -21
  127. package/examples/vitepress/docs/.vitepress/sidebar.json +0 -119
  128. package/examples/vitepress/docs/api-examples.md +0 -49
  129. package/examples/vitepress/docs/index-frontmatter.md +0 -16
  130. package/examples/vitepress/docs/index.md +0 -56
  131. package/examples/vitepress/docs/markdown-examples.md +0 -85
  132. package/examples/vitepress/docs/miscellaneous/BaseClass.md +0 -20
  133. package/examples/vitepress/docs/miscellaneous/MultiInheritanceClass.md +0 -76
  134. package/examples/vitepress/docs/miscellaneous/ParentInterface.md +0 -19
  135. package/examples/vitepress/docs/miscellaneous/ReferencedEnum.md +0 -15
  136. package/examples/vitepress/docs/miscellaneous/SampleException.md +0 -28
  137. package/examples/vitepress/docs/miscellaneous/SampleInterface.md +0 -116
  138. package/examples/vitepress/docs/miscellaneous/Url.md +0 -317
  139. package/examples/vitepress/docs/sample-enums/SampleEnum.md +0 -40
  140. package/examples/vitepress/docs/samplegroup/SampleClass.md +0 -174
  141. package/examples/vitepress/force-app/main/default/classes/BaseClass.cls +0 -3
  142. package/examples/vitepress/force-app/main/default/classes/MultiInheritanceClass.cls +0 -1
  143. package/examples/vitepress/force-app/main/default/classes/ParentInterface.cls +0 -3
  144. package/examples/vitepress/force-app/main/default/classes/ReferencedEnum.cls +0 -5
  145. package/examples/vitepress/force-app/main/default/classes/Url.cls +0 -198
  146. package/examples/vitepress/force-app/main/default/classes/feature-a/SampleClass.cls +0 -73
  147. package/examples/vitepress/force-app/main/default/classes/feature-a/SampleEnum.cls +0 -30
  148. package/examples/vitepress/force-app/main/default/classes/feature-a/SampleException.cls +0 -17
  149. package/examples/vitepress/force-app/main/default/classes/feature-a/SampleInterface.cls +0 -46
  150. package/examples/vitepress/package-lock.json +0 -2574
  151. package/examples/vitepress/package.json +0 -18
  152. package/examples/vitepress/sfdx-project.json +0 -12
  153. package/jest.config.js +0 -10
  154. package/jest.d.ts +0 -7
  155. package/src/application/Apexdocs.ts +0 -69
  156. package/src/application/__tests__/apex-file-reader.spec.ts +0 -128
  157. package/src/application/apex-file-reader.ts +0 -56
  158. package/src/application/file-system.ts +0 -69
  159. package/src/application/file-writer.ts +0 -43
  160. package/src/application/generators/markdown.ts +0 -45
  161. package/src/application/generators/openapi.ts +0 -75
  162. package/src/cli/args.ts +0 -55
  163. package/src/cli/commands/markdown.ts +0 -56
  164. package/src/cli/commands/openapi.ts +0 -36
  165. package/src/cli/generate.ts +0 -32
  166. package/src/core/__test__/manifest.spec.ts +0 -16
  167. package/src/core/manifest.ts +0 -90
  168. package/src/core/markdown/__test__/expect-extensions.ts +0 -32
  169. package/src/core/markdown/__test__/generating-class-docs.spec.ts +0 -362
  170. package/src/core/markdown/__test__/generating-docs.spec.ts +0 -378
  171. package/src/core/markdown/__test__/generating-enum-docs.spec.ts +0 -61
  172. package/src/core/markdown/__test__/generating-interface-docs.spec.ts +0 -169
  173. package/src/core/markdown/__test__/generating-reference-guide.spec.ts +0 -196
  174. package/src/core/markdown/__test__/inheritance-chain.test.ts +0 -54
  175. package/src/core/markdown/__test__/test-helpers.ts +0 -25
  176. package/src/core/markdown/adapters/__tests__/documentables.spec.ts +0 -109
  177. package/src/core/markdown/adapters/__tests__/interface-adapter.spec.ts +0 -150
  178. package/src/core/markdown/adapters/__tests__/link-generator.spec.ts +0 -130
  179. package/src/core/markdown/adapters/__tests__/references.spec.ts +0 -136
  180. package/src/core/markdown/adapters/apex-types.ts +0 -238
  181. package/src/core/markdown/adapters/documentables.ts +0 -115
  182. package/src/core/markdown/adapters/fields-and-properties.ts +0 -45
  183. package/src/core/markdown/adapters/generate-link.ts +0 -82
  184. package/src/core/markdown/adapters/inline.ts +0 -143
  185. package/src/core/markdown/adapters/methods-and-constructors.ts +0 -133
  186. package/src/core/markdown/adapters/reference-guide.ts +0 -37
  187. package/src/core/markdown/adapters/renderable-bundle.ts +0 -61
  188. package/src/core/markdown/adapters/renderable-to-page-data.ts +0 -91
  189. package/src/core/markdown/adapters/type-utils.ts +0 -13
  190. package/src/core/markdown/adapters/types.d.ts +0 -180
  191. package/src/core/markdown/generate-docs.ts +0 -210
  192. package/src/core/markdown/reflection/__test__/filter-scope.spec.ts +0 -290
  193. package/src/core/markdown/reflection/__test__/helpers.ts +0 -18
  194. package/src/core/markdown/reflection/__test__/remove-excluded-tags.spec.ts +0 -200
  195. package/src/core/markdown/reflection/filter-scope.ts +0 -13
  196. package/src/core/markdown/reflection/inheritance-chain-expanion.ts +0 -22
  197. package/src/core/markdown/reflection/inheritance-chain.ts +0 -23
  198. package/src/core/markdown/reflection/inherited-member-expansion.ts +0 -105
  199. package/src/core/markdown/reflection/reflect-source.ts +0 -123
  200. package/src/core/markdown/reflection/remove-excluded-tags.ts +0 -168
  201. package/src/core/markdown/reflection/sort-types-and-members.ts +0 -61
  202. package/src/core/markdown/templates/class-template.ts +0 -75
  203. package/src/core/markdown/templates/constructors-partial-template.ts +0 -32
  204. package/src/core/markdown/templates/documentable-partial-template.ts +0 -26
  205. package/src/core/markdown/templates/enum-template.ts +0 -12
  206. package/src/core/markdown/templates/fieldsPartialTemplate.ts +0 -23
  207. package/src/core/markdown/templates/grouped-members-partial-template.ts +0 -6
  208. package/src/core/markdown/templates/hookable.ts +0 -7
  209. package/src/core/markdown/templates/interface-template.ts +0 -16
  210. package/src/core/markdown/templates/methods-partial-template.ts +0 -43
  211. package/src/core/markdown/templates/reference-guide.ts +0 -14
  212. package/src/core/markdown/templates/template.ts +0 -114
  213. package/src/core/markdown/templates/type-doc-partial.ts +0 -27
  214. package/src/core/markdown/utils.ts +0 -3
  215. package/src/core/openApiSettings.ts +0 -41
  216. package/src/core/openapi/__tests__/manifest-factory.spec.ts +0 -16
  217. package/src/core/openapi/__tests__/open-api-docs-processor.spec.ts +0 -59
  218. package/src/core/openapi/__tests__/open-api.spec.ts +0 -22
  219. package/src/core/openapi/apex-doc-types.ts +0 -26
  220. package/src/core/openapi/apex-type-wrappers/ClassMirrorWrapper.ts +0 -12
  221. package/src/core/openapi/apex-type-wrappers/MethodMirrorWrapper.ts +0 -11
  222. package/src/core/openapi/apex-type-wrappers/__tests__/ClassMirrorWrapper.spec.ts +0 -15
  223. package/src/core/openapi/file-container.ts +0 -13
  224. package/src/core/openapi/manifest-factory.ts +0 -16
  225. package/src/core/openapi/open-api-docs-processor.ts +0 -93
  226. package/src/core/openapi/open-api-types.ts +0 -119
  227. package/src/core/openapi/open-api.ts +0 -45
  228. package/src/core/openapi/openapi-type-file.ts +0 -12
  229. package/src/core/openapi/parser.ts +0 -163
  230. package/src/core/openapi/parsers/Builder.ts +0 -40
  231. package/src/core/openapi/parsers/MethodParser.ts +0 -249
  232. package/src/core/openapi/parsers/ParameterObjectBuilder.ts +0 -13
  233. package/src/core/openapi/parsers/ReferenceBuilder.ts +0 -299
  234. package/src/core/openapi/parsers/RequestBodyBuilder.ts +0 -19
  235. package/src/core/openapi/parsers/ResponsesBuilder.ts +0 -21
  236. package/src/core/openapi/parsers/__tests__/MethodParser.spec.ts +0 -44
  237. package/src/core/openapi/parsers/__tests__/ParameterObjectBuilder.spec.ts +0 -68
  238. package/src/core/openapi/parsers/__tests__/ReferenceBuilder.spec.ts +0 -751
  239. package/src/core/openapi/parsers/__tests__/RequestBodyBuilder.spec.ts +0 -64
  240. package/src/core/openapi/parsers/__tests__/ResponsesBuilder.spec.ts +0 -55
  241. package/src/core/openapi/transpiler.ts +0 -17
  242. package/src/core/openapi/types-repository.ts +0 -54
  243. package/src/core/parse-apex-metadata.ts +0 -30
  244. package/src/core/shared/types.d.ts +0 -150
  245. package/src/core/shared/utils.ts +0 -5
  246. package/src/defaults.ts +0 -21
  247. package/src/index.ts +0 -110
  248. package/src/test-helpers/AnnotationBuilder.ts +0 -29
  249. package/src/test-helpers/ClassMirrorBuilder.ts +0 -69
  250. package/src/test-helpers/DocCommentAnnotationBuilder.ts +0 -24
  251. package/src/test-helpers/DocCommentBuilder.ts +0 -36
  252. package/src/test-helpers/FieldMirrorBuilder.ts +0 -59
  253. package/src/test-helpers/InterfaceMirrorBuilder.ts +0 -39
  254. package/src/test-helpers/MethodMirrorBuilder.ts +0 -77
  255. package/src/test-helpers/SettingsBuilder.ts +0 -17
  256. package/src/util/error-logger.ts +0 -92
  257. package/src/util/fp.ts +0 -3
  258. package/src/util/logger.ts +0 -51
  259. package/src/util/string-utils.ts +0 -7
  260. package/tsconfig.json +0 -25
  261. package/tslint.json +0 -6
@@ -1,16 +0,0 @@
1
- // Substitute the import location for '@cparra/apexdocs'
2
- import { process } from '../../../dist/index.js';
3
-
4
- const config = {
5
- sourceDir: 'force-app',
6
- targetGenerator: 'markdown',
7
- scope: ['global', 'public', 'private'],
8
- };
9
-
10
- process(config)
11
- .then(() => {
12
- console.log('Finished processing');
13
- })
14
- .catch((error) => {
15
- console.error(error);
16
- });
@@ -1,12 +0,0 @@
1
- {
2
- "packageDirectories": [
3
- {
4
- "path": "force-app",
5
- "default": true
6
- }
7
- ],
8
- "name": "plain-markdown",
9
- "namespace": "",
10
- "sfdcLoginUrl": "https://login.salesforce.com",
11
- "sourceApiVersion": "59.0"
12
- }
@@ -1,12 +0,0 @@
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__/**
@@ -1,7 +0,0 @@
1
- # Markdown Example
2
-
3
- This project contains an example for generating simple markdown documentation.
4
-
5
- It has no integrations with a Static Site Generator (SSG) or any other tool.
6
-
7
- You can find the configuration in the `package.json` file, under the `apexdocs` key.
@@ -1,5 +0,0 @@
1
- {
2
- "orgName": "cesarparra company",
3
- "edition": "Developer",
4
- "features": []
5
- }
@@ -1,109 +0,0 @@
1
- # Apex Reference Guide
2
-
3
- ## Miscellaneous
4
-
5
- ### [BaseClass](miscellaneous/BaseClass.md)
6
-
7
- ### [MultiInheritanceClass](miscellaneous/MultiInheritanceClass.md)
8
-
9
- ### [ParentInterface](miscellaneous/ParentInterface.md)
10
-
11
- ### [ReferencedEnum](miscellaneous/ReferencedEnum.md)
12
-
13
- ### [SampleException](miscellaneous/SampleException.md)
14
-
15
- This is a sample exception.
16
-
17
- ### [SampleInterface](miscellaneous/SampleInterface.md)
18
-
19
- This is a sample interface
20
-
21
- ### [Url](miscellaneous/Url.md)
22
-
23
- Represents a uniform resource locator (URL) and provides access to parts of the URL.
24
- Enables access to the base URL used to access your Salesforce org.
25
-
26
- ## Usage
27
- Use the methods of the `System.URL` class to create links to objects in your organization. Such objects can be files, images,
28
- logos, or records that you want to include in external emails, in activities, or in Chatter posts. For example, you can create
29
- a link to a file uploaded as an attachment to a Chatter post by concatenating the Salesforce base URL with the file ID:
30
-
31
- ```apex
32
- // Get a file uploaded through Chatter.
33
- ContentDocument doc = [SELECT Id FROM ContentDocument
34
- WHERE Title = 'myfile'];
35
- // Create a link to the file.
36
- String fullFileURL = URL.getOrgDomainURL().toExternalForm() +
37
- '/' + doc.id;
38
- system.debug(fullFileURL);
39
- ```
40
-
41
-
42
- The following example creates a link to a Salesforce record. The full URL is created by concatenating the Salesforce base
43
- URL with the record ID.
44
-
45
- ```ape
46
- Account acct = [SELECT Id FROM Account WHERE Name = 'Acme' LIMIT 1];
47
- String fullRecordURL = URL.getOrgDomainURL().toExternalForm() + '/' + acct.Id;
48
- ```
49
-
50
-
51
- ## Example
52
- In this example, the base URL and the full request URL of the current Salesforce server instance are retrieved. Next, a URL
53
- pointing to a specific account object is created. Finally, components of the base and full URL are obtained. This example
54
- prints out all the results to the debug log output.
55
-
56
- ```apex
57
- // Create a new account called Acme that we will create a link for later.
58
- Account myAccount = new Account(Name='Acme');
59
- insert myAccount;
60
-
61
- // Get the base URL.
62
- String sfdcBaseURL = URL.getOrgDomainURL().toExternalForm();
63
- System.debug('Base URL: ' + sfdcBaseURL );
64
-
65
- // Get the URL for the current request.
66
- String currentRequestURL = URL.getCurrentRequestUrl().toExternalForm();
67
- System.debug('Current request URL: ' + currentRequestURL);
68
-
69
- // Create the account URL from the base URL.
70
- String accountURL = URL.getOrgDomainURL().toExternalForm() +
71
- '/' + myAccount.Id;
72
- System.debug('URL of a particular account: ' + accountURL);
73
-
74
- // Get some parts of the base URL.
75
- System.debug('Host: ' + URL.getOrgDomainURL().getHost());
76
- System.debug('Protocol: ' + URL.getOrgDomainURL().getProtocol());
77
-
78
- // Get the query string of the current request.
79
- System.debug('Query: ' + URL.getCurrentRequestUrl().getQuery());
80
- ```
81
-
82
-
83
- ## Version Behavior Changes
84
- In API version 41.0 and later, Apex URL objects are represented by the java.net.URI type, not the java.net.URL type.
85
- The API version in which the URL object was instantiated determines the behavior of subsequent method calls to the
86
- specific instance. Salesforce strongly encourages you to use API 41.0 and later versions for fully RFC-compliant URL
87
- parsing that includes proper handling of edge cases of complex URL structures. API 41.0 and later versions also enforce
88
- that inputs are valid, RFC-compliant URL or URI strings.
89
-
90
- * [URL Constructors](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_url.htm#apex_System_URL_constructors)
91
- * [URL Methods](https://developer.salesforce.com/docs/atlas.en-us.apexref.meta/apexref/apex_methods_system_url.htm#apex_System_URL_methods)
92
-
93
- **See Also**
94
- * [URL Class](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_classes_url.htm)
95
-
96
- ## Sample Enums
97
-
98
- ### [SampleEnum](sample-enums/SampleEnum.md)
99
-
100
- This is a sample enum. This references [ReferencedEnum](miscellaneous/ReferencedEnum.md) .
101
-
102
- This description has several lines
103
-
104
- ## SampleGroup
105
-
106
- ### [SampleClass](samplegroup/SampleClass.md)
107
-
108
- aliquip ex sunt officia ullamco anim deserunt magna aliquip nisi eiusmod in sit officia veniam ex
109
- deserunt ea officia exercitation laboris enim in duis quis enim eiusmod eu amet cupidatat.
@@ -1,16 +0,0 @@
1
- # BaseClass Class
2
- `abstract`
3
-
4
- ## Namespace
5
- ns
6
-
7
- ## Fields
8
- ### `sampleEnumFromBase`
9
-
10
- #### Signature
11
- ```apex
12
- public sampleEnumFromBase
13
- ```
14
-
15
- #### Type
16
- [SampleEnum](../sample-enums/SampleEnum.md)
@@ -1,72 +0,0 @@
1
- # MultiInheritanceClass Class
2
-
3
- ## Namespace
4
- ns
5
-
6
- **Inheritance**
7
-
8
- [SampleClass](../samplegroup/SampleClass.md) < [BaseClass](BaseClass.md)
9
-
10
- ## Fields
11
- ### `sampleEnumFromBase`
12
-
13
- *Inherited*
14
-
15
- #### Signature
16
- ```apex
17
- public sampleEnumFromBase
18
- ```
19
-
20
- #### Type
21
- [SampleEnum](../sample-enums/SampleEnum.md)
22
-
23
- ## Properties
24
- ### Group Name
25
- #### `someProperty`
26
-
27
- *Inherited*
28
-
29
- ##### Signature
30
- ```apex
31
- public someProperty
32
- ```
33
-
34
- ##### Type
35
- String
36
-
37
- ## Methods
38
- ### Available Methods
39
- #### `doSomething()`
40
-
41
- *Inherited*
42
-
43
- ##### Signature
44
- ```apex
45
- public void doSomething()
46
- ```
47
-
48
- ##### Return Type
49
- **void**
50
-
51
- ### Deprecated Methods
52
- #### `sayHello()`
53
-
54
- *Inherited*
55
-
56
- `DEPRECATED`
57
-
58
- This is a sample method.
59
-
60
- ##### Signature
61
- ```apex
62
- public virtual String sayHello()
63
- ```
64
-
65
- ##### Return Type
66
- **String**
67
-
68
- A string value.
69
-
70
- ##### Example
71
- SampleClass sample &#x3D; new SampleClass();
72
- sample.doSomething();
@@ -1,15 +0,0 @@
1
- # ParentInterface Interface
2
-
3
- ## Namespace
4
- ns
5
-
6
- ## Methods
7
- ### `sampleParentMethod()`
8
-
9
- #### Signature
10
- ```apex
11
- public void sampleParentMethod()
12
- ```
13
-
14
- #### Return Type
15
- **void**
@@ -1,8 +0,0 @@
1
- # ReferencedEnum Enum
2
-
3
- ## Namespace
4
- ns
5
-
6
- ## Values
7
- | Value | Description |
8
- |-------|-------------|
@@ -1,24 +0,0 @@
1
- # SampleException Class
2
-
3
- This is a sample exception.
4
-
5
- **Usage**
6
-
7
- You can use the exception the following way.
8
- You can also take a look at [SampleClass](../samplegroup/SampleClass.md) to see how it is used.
9
- This is a dangerous HTML tag: &lt;script&gt;alert(&#x27;Hello&#x27;);&lt;/script&gt;
10
-
11
- ```apex
12
- try {
13
- throw new SampleException();
14
- } catch (SampleException e) {
15
- System.debug('Caught exception');
16
- }
17
- ```
18
-
19
- ## Namespace
20
- ns
21
-
22
- **Inheritance**
23
-
24
- Exception
@@ -1,116 +0,0 @@
1
- # SampleInterface Interface
2
-
3
- `NAMESPACEACCESSIBLE`
4
-
5
- This is a sample interface
6
-
7
- **Mermaid**
8
-
9
- ```mermaid
10
- graph TD
11
- A[SampleInterface] -->|extends| B[ParentInterface]
12
- B -->|extends| C[GrandParentInterface]
13
- C -->|extends| D[GreatGrandParentInterface]
14
- ```
15
-
16
- **Author** John Doe
17
-
18
- **Date** 2020-01-01
19
-
20
- **See** [SampleEnum](../sample-enums/SampleEnum.md)
21
-
22
- **See** [ReferencedEnum](ReferencedEnum.md)
23
-
24
- ## Namespace
25
- ns
26
-
27
- ## Example
28
- ```apex
29
- SampleInterface sampleInterface = new SampleInterface();
30
- sampleInterface.sampleMethod();
31
- ```
32
-
33
- **Extends**
34
- [ParentInterface](ParentInterface.md)
35
-
36
- ## Methods
37
- ### `sampleMethod()`
38
-
39
- `NAMESPACEACCESSIBLE`
40
-
41
- This is a sample method
42
-
43
- **Custom Tag**
44
-
45
- This is a custom tag
46
-
47
- **Another Custom Tag**
48
-
49
- This is another custom tag
50
-
51
- **Mermaid**
52
-
53
- graph TD
54
- A[SampleInterface] --&gt;|extends| B[ParentInterface]
55
- B --&gt;|extends| C[GrandParentInterface]
56
- C --&gt;|extends| D[GreatGrandParentInterface]
57
-
58
- #### Signature
59
- ```apex
60
- public String sampleMethod()
61
- ```
62
-
63
- #### Return Type
64
- **String**
65
-
66
- Some return value
67
-
68
- #### Throws
69
- [SampleException](SampleException.md): This is a sample exception
70
-
71
- AnotherSampleException: This is another sample exception
72
-
73
- #### Example
74
- SampleInterface sampleInterface &#x3D; new SampleInterface();
75
- sampleInterface.sampleMethod();
76
-
77
- ---
78
-
79
- ### `sampleMethodWithParams(param1, param2, theEnum)`
80
-
81
- `NAMESPACEACCESSIBLE`
82
- `DEPRECATED`
83
-
84
- This is a sample method with parameters
85
- Sometimes it won&#x27;t be possible to find a NonExistent link.
86
-
87
- #### Signature
88
- ```apex
89
- public SampleEnum sampleMethodWithParams(String param1, Integer param2, SampleEnum theEnum)
90
- ```
91
-
92
- #### Parameters
93
- | Name | Type | Description |
94
- |------|------|-------------|
95
- | param1 | String | This is the first parameter |
96
- | param2 | Integer | This is the second parameter |
97
- | theEnum | [SampleEnum](../sample-enums/SampleEnum.md) | This is an enum parameter |
98
-
99
- #### Return Type
100
- **[SampleEnum](../sample-enums/SampleEnum.md)**
101
-
102
- Some return value
103
-
104
- ---
105
-
106
- ### `sampleParentMethod()`
107
-
108
- *Inherited*
109
-
110
- #### Signature
111
- ```apex
112
- public void sampleParentMethod()
113
- ```
114
-
115
- #### Return Type
116
- **void**