@cparra/apexdocs 1.13.8 → 1.16.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 (113) hide show
  1. package/.gitattributes +2 -0
  2. package/.github/workflows/ci.yml +29 -0
  3. package/README.md +57 -35
  4. package/docs/.nojekyll +0 -0
  5. package/docs/404.html +24 -24
  6. package/docs/README.md +49 -9
  7. package/docs/Sample-Classes/SampleClass.md +2 -5
  8. package/docs/Sample-Classes/SampleClass2.md +2 -5
  9. package/docs/Sample-Classes/SampleClassMultipleAuthorsAndDates.md +120 -0
  10. package/docs/Sample-Interfaces/SampleInterface.md +1 -4
  11. package/docs/_config.yml +40 -40
  12. package/docs/assets/css/style.css +319 -319
  13. package/docs/index.html +21 -0
  14. package/docs/index.md +21 -0
  15. package/docs/single-file/Sample-Classes/SampleClass.md +115 -115
  16. package/examples/apex/SampleClassMultipleAuthorsAndDates.cls +100 -0
  17. package/examples/config/config.json +4 -0
  18. package/examples/dir1/SampleClass.cls +96 -0
  19. package/examples/dir2/SampleInterface.cls +17 -0
  20. package/lib/Command/Generate.d.ts +1 -1
  21. package/lib/Command/Generate.js +34 -19
  22. package/lib/Command/__test__/Generte.test.js +3 -3
  23. package/lib/MarkdownDocsProcessor.js +13 -6
  24. package/lib/MetadataProcessor.d.ts +3 -0
  25. package/lib/MetadataProcessor.js +15 -0
  26. package/lib/Parser/ClassParser.js +30 -19
  27. package/lib/Parser/MethodParser.js +2 -2
  28. package/lib/Parser/__test__/ClassParser.test.js +8 -2
  29. package/lib/Parser/__test__/MethodParser.test.js +3 -2
  30. package/lib/application/Apexdocs.js +6 -3
  31. package/lib/application/Apexdocs.js.map +1 -1
  32. package/lib/cli/generate.js +8 -3
  33. package/lib/index.js.map +1 -1
  34. package/lib/model/ApexModel.d.ts +9 -6
  35. package/lib/model/ApexModel.js +18 -10
  36. package/lib/model/file.js +1 -0
  37. package/lib/model/file.js.map +1 -1
  38. package/lib/model/manifest-diff.d.ts +24 -2
  39. package/lib/model/manifest-diff.js +61 -2
  40. package/lib/model/manifest-diff.js.map +1 -1
  41. package/lib/model/markdown-file.d.ts +2 -0
  42. package/lib/model/markdown-file.js +29 -0
  43. package/lib/model/markdown-file.js.map +1 -1
  44. package/lib/model/markdown-generation-util/doc-comment-annotation-util.d.ts +7 -0
  45. package/lib/model/markdown-generation-util/doc-comment-annotation-util.js +24 -0
  46. package/lib/model/markdown-generation-util/doc-comment-annotation-util.js.map +1 -0
  47. package/lib/model/markdown-generation-util/field-declaration-util.d.ts +1 -1
  48. package/lib/model/markdown-generation-util/field-declaration-util.js +34 -12
  49. package/lib/model/markdown-generation-util/field-declaration-util.js.map +1 -1
  50. package/lib/model/markdown-generation-util/index.js +13 -6
  51. package/lib/model/markdown-generation-util/index.js.map +1 -1
  52. package/lib/model/markdown-generation-util/method-declaration-util.d.ts +1 -1
  53. package/lib/model/markdown-generation-util/method-declaration-util.js +5 -5
  54. package/lib/model/markdown-generation-util/method-declaration-util.js.map +1 -1
  55. package/lib/model/markdown-generation-util/type-declaration-util.d.ts +1 -1
  56. package/lib/model/markdown-generation-util/type-declaration-util.js +5 -11
  57. package/lib/model/markdown-generation-util/type-declaration-util.js.map +1 -1
  58. package/lib/model/markdown-home-file.d.ts +1 -0
  59. package/lib/model/markdown-home-file.js +7 -5
  60. package/lib/model/markdown-home-file.js.map +1 -1
  61. package/lib/model/markdown-type-file.d.ts +10 -3
  62. package/lib/model/markdown-type-file.js +70 -10
  63. package/lib/model/markdown-type-file.js.map +1 -1
  64. package/lib/model/types-repository.d.ts +8 -0
  65. package/lib/model/types-repository.js +22 -0
  66. package/lib/model/types-repository.js.map +1 -0
  67. package/lib/service/apex-file-reader.d.ts +1 -1
  68. package/lib/service/apex-file-reader.js +5 -4
  69. package/lib/service/apex-file-reader.js.map +1 -1
  70. package/lib/service/file-system.js +1 -0
  71. package/lib/service/file-system.js.map +1 -1
  72. package/lib/service/file-writer.js +1 -0
  73. package/lib/service/file-writer.js.map +1 -1
  74. package/lib/service/manifest-factory.js +1 -0
  75. package/lib/service/manifest-factory.js.map +1 -1
  76. package/lib/service/parser.js +1 -0
  77. package/lib/service/parser.js.map +1 -1
  78. package/lib/service/walkers/class-walker.js +1 -0
  79. package/lib/service/walkers/class-walker.js.map +1 -1
  80. package/lib/service/walkers/enum-walker.js +1 -0
  81. package/lib/service/walkers/enum-walker.js.map +1 -1
  82. package/lib/service/walkers/interface-walker.js +1 -0
  83. package/lib/service/walkers/interface-walker.js.map +1 -1
  84. package/lib/service/walkers/walker-factory.js +1 -0
  85. package/lib/service/walkers/walker-factory.js.map +1 -1
  86. package/lib/service/walkers/walker.js +1 -0
  87. package/lib/service/walkers/walker.js.map +1 -1
  88. package/lib/settings.d.ts +3 -0
  89. package/lib/settings.js +7 -0
  90. package/lib/settings.js.map +1 -1
  91. package/lib/transpiler/file-container.js +1 -0
  92. package/lib/transpiler/file-container.js.map +1 -1
  93. package/lib/transpiler/markdown/class-file-generatorHelper.d.ts +1 -0
  94. package/lib/transpiler/markdown/class-file-generatorHelper.js +9 -0
  95. package/lib/transpiler/markdown/class-file-generatorHelper.js.map +1 -1
  96. package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.js +1 -0
  97. package/lib/transpiler/markdown/jekyll/jekyll-docsProcessor.js.map +1 -1
  98. package/lib/transpiler/markdown/markdown-transpiler-base.js +1 -0
  99. package/lib/transpiler/markdown/markdown-transpiler-base.js.map +1 -1
  100. package/lib/util/logger.js +1 -0
  101. package/lib/util/logger.js.map +1 -1
  102. package/package.json +6 -2
  103. package/src/Command/Generate.ts +40 -19
  104. package/src/Command/__test__/Generte.test.ts +3 -3
  105. package/src/MarkdownDocsProcessor.ts +15 -6
  106. package/src/MetadataProcessor.ts +16 -0
  107. package/src/Model/ApexModel.ts +21 -10
  108. package/src/Parser/ClassParser.ts +37 -19
  109. package/src/Parser/MethodParser.ts +2 -2
  110. package/src/Parser/__test__/ClassParser.test.ts +8 -2
  111. package/src/Parser/__test__/MethodParser.test.ts +3 -2
  112. package/src/Settings.ts +10 -0
  113. package/src/cli/generate.ts +9 -2
package/.gitattributes ADDED
@@ -0,0 +1,2 @@
1
+ # Set the default line return behavior, in case people don't have core.autocrlf set.
2
+ * text=auto
@@ -0,0 +1,29 @@
1
+ name: Tests
2
+
3
+ on: push
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: ubuntu-latest
8
+
9
+ steps:
10
+ - uses: actions/checkout@v2
11
+
12
+ - name: Cache node modules
13
+ uses: actions/cache@v2
14
+ env:
15
+ cache-name: cache-node-modules
16
+ with:
17
+ # npm cache files are stored in `~/.npm` on Linux/macOS
18
+ path: ~/.npm
19
+ key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
20
+ restore-keys: |
21
+ ${{ runner.os }}-build-${{ env.cache-name }}-
22
+ ${{ runner.os }}-build-
23
+ ${{ runner.os }}-
24
+
25
+ - name: Install Dependencies
26
+ run: npm install
27
+
28
+ - name: Test
29
+ run: npm test
package/README.md CHANGED
@@ -1,4 +1,5 @@
1
1
  # ApexDocs
2
+ # ApexDocs
2
3
 
3
4
  <p align="center">
4
5
  <b>ApexDocs is a Node.js library with CLI capabilities to generate documentation for Salesforce Apex classes.</b>
@@ -8,14 +9,21 @@
8
9
 
9
10
  ## Description
10
11
 
11
- ApexDocs was built as an alternative to the [Java based ApexDoc tool](https://github.com/SalesforceFoundation/ApexDoc) originally created by Aslam Bari and later maintained by Salesforce.org, as that tool is no longer being maintained.
12
+ ApexDocs was built as an alternative to the [Java based ApexDoc tool](https://github.com/SalesforceFoundation/ApexDoc)
13
+ originally created by Aslam Bari and later maintained by Salesforce.org, as that tool is no longer being maintained.
12
14
 
13
- ApexDocs is a Node.js library built on Typescript and hosted on [npm](https://www.npmjs.com/package/@cparra/apexdocs). It offers CLI capabilities to automatically generate a set of files that fully document each one of you classes. Additionally it can be imported and consumed directly by your JavaScript code.
15
+ ApexDocs is a Node.js library built on Typescript and hosted on [npm](https://www.npmjs.com/package/@cparra/apexdocs).
16
+ It offers CLI capabilities to automatically generate a set of files that fully document each one of you classes.
17
+ Additionally, it can be imported and consumed directly by your JavaScript code.
14
18
 
15
19
  There are some key differences between ApexDocs and the Java based ApexDoc tool:
16
20
 
17
- - **Recursive file search through your module directory structure**. In an `sfdx` based project, all of your classes will be documented by specifying the top-most directory where file search should begin.
18
- - **Unopinionated documentation site generation**. Instead of creating HTML files, ApexDocs generates a Markdown (.md) file per Apex class being documented. This means you can host your files in static web hosting services that parse Markdown like Github Pages or Netlify, and use site generators like Jekyll or Gatsby. This gives you the freedom to decide how to style your site to match your needs.
21
+ - **Recursive file search through your module directory structure**. In an `sfdx` based project, all of your classes
22
+ will be documented by specifying the top-most directory where file search should begin.
23
+ - **Unopinionated documentation site generation**. Instead of creating HTML files, ApexDocs generates a Markdown (.md)
24
+ file per Apex class being documented. This means you can host your files in static web hosting services that parse
25
+ Markdown like Github Pages or Netlify, and use site generators like Jekyll or Gatsby. This gives you the freedom to
26
+ decide how to style your site to match your needs.
19
27
 
20
28
  ### Demo
21
29
 
@@ -58,19 +66,22 @@ apexdocs-generate
58
66
 
59
67
  The CLI supports the following parameters:
60
68
 
61
- | Parameter | Alias | Description | Default | Required |
62
- | ----------------- | ----- | ---------------------------------------------------------------------------------------------------------------- | ----------------------------------- | -------- |
63
- | --sourceDir | -s | The directory location which contains your apex .cls classes. | N/A | Yes |
64
- | --targetDir | -t | The directory location where documentation will be generated to. | `docs` | No |
65
- | --recursive | -r | Whether .cls classes will be searched for recursively in the directory provided. | `true` | No |
66
- | --scope | -p | A list of scopes to document. Values should be separated by a space, e.g --scope public private | `global namespaceaccessible public` | No |
67
- | --targetGenerator | -g | Define the static file generator for which the documents will be created. Currently supports jekyll and docsify. | `jekyll` | No |
68
- | --configPath | -c | The path to the JSON configuration file that defines the structure of the documents to generate. | N/A | No |
69
- | --group | -o | Define whether the generated files should be grouped by the @group tag on the top level classes. | `true` | No |
69
+ | Parameter | Alias | Description | Default | Required |
70
+ | ----------------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------| ----------------------------------- | -------- |
71
+ | --sourceDir | -s | The directory or directories location(s) which contains your apex .cls classes. Multiple directories can be specified separated by spaces | N/A | Yes |
72
+ | --targetDir | -t | The directory location where documentation will be generated to. | `docs` | No |
73
+ | --recursive | -r | Whether .cls classes will be searched for recursively in the directory provided. | `true` | No |
74
+ | --scope | -p | A list of scopes to document. Values should be separated by a space, e.g --scope public private | `global namespaceaccessible public` | No |
75
+ | --targetGenerator | -g | Define the static file generator for which the documents will be created. Currently supports jekyll and docsify. | `jekyll` | No |
76
+ | --configPath | -c | The path to the JSON configuration file that defines the structure of the documents to generate. | N/A | No |
77
+ | --group | -o | Define whether the generated files should be grouped by the @group tag on the top level classes. | `true` | No |
78
+ | --indexOnly | N/A | Defines whether only the index file should be generated. | `false` | No |
79
+
70
80
 
71
81
  #### Configuration File
72
82
 
73
- You can optionally specify the path to a configuration JSON file through the `--configPath` parameter. This let's you have some additional control over the content outputs.
83
+ You can optionally specify the path to a configuration JSON file through the `--configPath` parameter. This let's you
84
+ have some additional control over the content outputs.
74
85
 
75
86
  The configuration file allows you to specify the following:
76
87
 
@@ -80,7 +91,8 @@ _Note_: Everything in the configuration file is optional. When something is not
80
91
 
81
92
  Default: None
82
93
 
83
- Allows you to specify the root directory for where the files are being generated. This can be helpful when embedding the generated docs into an existing site so that the links are generated correctly.
94
+ Allows you to specify the root directory for where the files are being generated. This can be helpful when embedding the
95
+ generated docs into an existing site so that the links are generated correctly.
84
96
 
85
97
  `defaultGroupName`
86
98
 
@@ -92,9 +104,11 @@ Defines the `@group` name to be used when a file does not specify it.
92
104
 
93
105
  Default: None
94
106
 
95
- Defines the name of the language that will be used when generating `@example` blocks. Use this when you are interested in using syntax highlighting for your project.
107
+ Defines the name of the language that will be used when generating `@example` blocks. Use this when you are interested
108
+ in using syntax highlighting for your project.
96
109
 
97
- Even though the source code material for which documentation is generated is always `Apex`, generally you will be able to use a syntax highlighter that recognizes `java` source code, so set this value to `java` in those cases.
110
+ Even though the source code material for which documentation is generated is always `Apex`, generally you will be able
111
+ to use a syntax highlighter that recognizes `java` source code, so set this value to `java` in those cases.
98
112
 
99
113
  `home` (Object)
100
114
 
@@ -104,7 +118,8 @@ Gives you control over the home page.
104
118
 
105
119
  Default: None
106
120
 
107
- Allows you to embedd custom content into your home page by using the `header` property to point to the a file which contents will be added to the top of the generated home page.
121
+ Allows you to embed custom content into your home page by using the `header` property to point to the a file which
122
+ contents will be added to the top of the generated home page.
108
123
 
109
124
  Specify the path with the content that you want to embed.
110
125
 
@@ -128,7 +143,9 @@ Whether the `@date` tag should be used to add the file's date to the page.
128
143
 
129
144
  Default: 1
130
145
 
131
- The starting H tag level for the document. Each title will use this as the starting point to generate the approaprite `<h#>` tag. For example, if set to 1, the class' file name at the top of the file will use an `<h1>` tag, the `Properties` title will be `<h2>`, each property name will be an `<h3>`, etc.
146
+ The starting H tag level for the document. Each title will use this as the starting point to generate the
147
+ appropriate `<h#>` tag. For example, if set to 1, the class' file name at the top of the file will use an `<h1>` tag,
148
+ the `Properties` title will be `<h2>`, each property name will be an `<h3>`, etc.
132
149
 
133
150
  ```
134
151
  {
@@ -150,7 +167,8 @@ The starting H tag level for the document. Each title will use this as the start
150
167
 
151
168
  If you are just interested in the documentation parsing capabilities, you can import ApexDocs into your own project.
152
169
 
153
- Use the `generate` function to create a list of `ClassModel` that includes all of the parsed information from your .cls files.
170
+ Use the `generate` function to create a list of `ClassModel` that includes all the parsed information from your .cls
171
+ files.
154
172
 
155
173
  `generate(sourceDirectory[,recursive][,scope][,outputDir])`
156
174
 
@@ -167,19 +185,20 @@ let documentedClasses = generate('src', true, ['global'], 'docs');
167
185
 
168
186
  ## Documentation Format
169
187
 
170
- ApexDocs picks up blocks of comments throughout your `.cls` files. The block must begin with `/**` and span through multiple lines, ending with `*/`.
188
+ ApexDocs picks up blocks of comments throughout your `.cls` files. The block must begin with `/**` and span through
189
+ multiple lines, ending with `*/`.
171
190
 
172
191
  ### Documenting Classes
173
192
 
174
193
  The following tags are supported on the class level:
175
194
 
176
- | Tag | Description |
177
- | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
178
- | `@description` | One or more lines describing the class. |
179
- | `@see` | The name of a related class. |
180
- | `@group` | The group to which the class belongs to. |
181
- | `@author` | The author of the class. Note that this only gets added if it is explicitly defined through the configuration class that it should. |
182
- | `@date` | The date the class was created. Note that this only gets added if it is explicitly defined through the configuration class that it should. |
195
+ | Tag | Description |
196
+ | -------------- |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
197
+ | `@description` | One or more lines describing the class. |
198
+ | `@see` | The name of a related class. |
199
+ | `@group` | The group to which the class belongs to. |
200
+ | `@author` | The author of the class. Note that this only gets added if it is explicitly defined through the configuration class that it should. Multiple authors can be added per class. |
201
+ | `@date` | The date the class was created. Note that this only gets added if it is explicitly defined through the configuration class that it should. Multiple dates can be added per class. |
183
202
 
184
203
  **Example**
185
204
 
@@ -187,7 +206,10 @@ The following tags are supported on the class level:
187
206
  /**
188
207
  * @description This is my class description.
189
208
  */
190
- public with sharing class TestClass { }
209
+ public with sharing
210
+
211
+ class TestClass {
212
+ }
191
213
  ```
192
214
 
193
215
  ### Documenting Enums
@@ -204,7 +226,7 @@ The following tags are supported on the enum level:
204
226
  /**
205
227
  * @description This is my enum description.
206
228
  */
207
- public Enum ExampleEnum { VALUE_1, VALUE_2 }
229
+ public Enum ExampleEnum{VALUE_1,VALUE_2}
208
230
  ```
209
231
 
210
232
  ### Documenting Properties
@@ -221,7 +243,7 @@ The following tags are supported on the property level:
221
243
  /**
222
244
  * @description This is my property description.
223
245
  */
224
- public String ExampleProperty { get; set; }
246
+ public String ExampleProperty{get;set;}
225
247
  ```
226
248
 
227
249
  ### Documenting Methods and Constructors
@@ -248,13 +270,13 @@ The following tags are supported on the method level:
248
270
  * @example
249
271
  * Object result = SampleClass.call('exampleAction');
250
272
  */
251
- public static Object call(String action) {
273
+ public static Object call(String action){
252
274
  ```
253
275
 
254
276
  ### Inline linking
255
277
 
256
- Apexdocs allows you to reference other classes from anywhere in your docs, and automatically creates a link to that class
257
- file for easy navigation.
278
+ Apexdocs allows you to reference other classes from anywhere in your docs, and automatically creates a link to that
279
+ class file for easy navigation.
258
280
 
259
281
  Apexdocs recognizes 2 different syntax when linking files:
260
282
 
@@ -269,7 +291,7 @@ Apexdocs recognizes 2 different syntax when linking files:
269
291
  * @param param1 An <<ExampleClass>> instance. Can also do {@link ExampleClass}
270
292
  * @return The result of the operation.
271
293
  */
272
- public static Object class(ExampleClass param1) {
294
+ public static Object class(ExampleClass param1){
273
295
  ```
274
296
 
275
297
  ## Typescript
package/docs/.nojekyll ADDED
File without changes
package/docs/404.html CHANGED
@@ -1,24 +1,24 @@
1
- ---
2
- layout: default
3
- ---
4
-
5
- <style type="text/css" media="screen">
6
- .container {
7
- margin: 10px auto;
8
- max-width: 600px;
9
- text-align: center;
10
- }
11
- h1 {
12
- margin: 30px 0;
13
- font-size: 4em;
14
- line-height: 1;
15
- letter-spacing: -1px;
16
- }
17
- </style>
18
-
19
- <div class="container">
20
- <h1>404</h1>
21
-
22
- <p><strong>Page not found :(</strong></p>
23
- <p>The requested page could not be found.</p>
24
- </div>
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <style type="text/css" media="screen">
6
+ .container {
7
+ margin: 10px auto;
8
+ max-width: 600px;
9
+ text-align: center;
10
+ }
11
+ h1 {
12
+ margin: 30px 0;
13
+ font-size: 4em;
14
+ line-height: 1;
15
+ letter-spacing: -1px;
16
+ }
17
+ </style>
18
+
19
+ <div class="container">
20
+ <h1>404</h1>
21
+
22
+ <p><strong>Page not found :(</strong></p>
23
+ <p>The requested page could not be found.</p>
24
+ </div>
package/docs/README.md CHANGED
@@ -1,9 +1,49 @@
1
- # Classes
2
- ## Sample Classes
3
-
4
- ### [SampleClass](/Sample-Classes/SampleClass.md)
5
-
6
-
7
- This is a class description.
8
-
9
-
1
+ # Welcome to the Apex Docs documentation example.
2
+
3
+ This content will be added to the top of the home page.
4
+
5
+ # Classes
6
+ ## Sample Classes
7
+
8
+ ### [SampleClass](/Sample-Classes/SampleClass.md)
9
+
10
+
11
+ This is a class description.
12
+
13
+
14
+
15
+ ### [SampleClass](/Sample-Classes/SampleClass.md)
16
+
17
+
18
+ This is a class description.
19
+
20
+
21
+
22
+ ### [SampleClass2](/Sample-Classes/SampleClass2.md)
23
+
24
+
25
+ This is a class description.
26
+
27
+
28
+
29
+ ### [SampleClassMultipleAuthorsAndDates](/Sample-Classes/SampleClassMultipleAuthorsAndDates.md)
30
+
31
+
32
+ This is a class description.
33
+
34
+
35
+ ## Sample Interfaces
36
+
37
+ ### [SampleInterface](/Sample-Interfaces/SampleInterface.md)
38
+
39
+
40
+ This is an interface description.
41
+
42
+
43
+
44
+ ### [SampleInterface](/Sample-Interfaces/SampleInterface.md)
45
+
46
+
47
+ This is an interface description.
48
+
49
+
@@ -1,6 +1,3 @@
1
- ---
2
- layout: default
3
- ---
4
1
  # SampleClass class
5
2
 
6
3
  `NamespaceAccessible`
@@ -9,10 +6,10 @@ This is a class description.
9
6
 
10
7
  ## Related
11
8
 
12
- [SampleInterface](../Sample-Interfaces/SampleInterface.md)
9
+ [SampleInterface](/Sample-Interfaces/SampleInterface.md)
13
10
 
14
11
 
15
- [SampleClass2](../Sample-Classes/SampleClass2.md)
12
+ [SampleClass2](/Sample-Classes/SampleClass2.md)
16
13
 
17
14
  ---
18
15
  ## Constructors
@@ -1,6 +1,3 @@
1
- ---
2
- layout: default
3
- ---
4
1
  # SampleClass2 class
5
2
 
6
3
  `NamespaceAccessible`
@@ -9,10 +6,10 @@ This is a class description.
9
6
 
10
7
  ## Related
11
8
 
12
- [SampleInterface](../Sample-Interfaces/SampleInterface.md)
9
+ [SampleInterface](/Sample-Interfaces/SampleInterface.md)
13
10
 
14
11
 
15
- [SampleClass](../Sample-Classes/SampleClass.md)
12
+ [SampleClass](/Sample-Classes/SampleClass.md)
16
13
 
17
14
  ---
18
15
  ## Constructors
@@ -0,0 +1,120 @@
1
+ # SampleClassMultipleAuthorsAndDates class
2
+
3
+ `NamespaceAccessible`
4
+
5
+ This is a class description.
6
+
7
+
8
+ **Author:** John Doe
9
+
10
+ **Author:** Jane Doe
11
+
12
+ **Date:** 1/1/2021
13
+
14
+ **Date:** 2/2/2022
15
+ ## Related
16
+
17
+ [SampleInterface](/Sample-Interfaces/SampleInterface.md)
18
+
19
+
20
+ [SampleClass2](/Sample-Classes/SampleClass2.md)
21
+
22
+ ---
23
+ ## Constructors
24
+ ### `SampleClassMultipleAuthorsAndDates()`
25
+
26
+ `NamespaceAccessible`
27
+
28
+ Constructs a SampleClassMultipleAuthorsAndDates without any arguments.
29
+ #### Example
30
+ ```
31
+ <pre>
32
+ SampleClassMultipleAuthorsAndDates sampleInstance = new SampleClassMultipleAuthorsAndDates();
33
+ ```
34
+
35
+ ### `SampleClassMultipleAuthorsAndDates(String argument)`
36
+
37
+ `NamespaceAccessible`
38
+
39
+ Constructs a SampleClassMultipleAuthorsAndDates with an argument.
40
+ #### Parameters
41
+
42
+ | Param | Description |
43
+ | ----- | ----------- |
44
+ |`argument` | Some argument |
45
+
46
+ ---
47
+ ## Properties
48
+
49
+ ### `AnotherProp` → `Decimal`
50
+
51
+ `NamespaceAccessible`
52
+
53
+ This is a Decimal property.
54
+
55
+ ### `MyProp` → `String`
56
+
57
+ `NamespaceAccessible`
58
+
59
+ This is a String property.
60
+
61
+ ---
62
+ ## Methods
63
+ ### `call()` → `void`
64
+
65
+ `NamespaceAccessible`
66
+
67
+ Calls the method. This methods allows you to call it.
68
+
69
+ ### `testMethod(String argument)` → `String`
70
+
71
+ `NamespaceAccessible`
72
+
73
+ Executes commands based on the passed in argument.
74
+
75
+ #### Example
76
+ ```
77
+ <pre>
78
+ String result = SampleClassMultipleAuthorsAndDates.testMethod();
79
+ System.debug(result);
80
+ ```
81
+
82
+ ---
83
+ ## Inner Classes
84
+
85
+ ### SampleClassMultipleAuthorsAndDates.AnotherInnerClass class
86
+
87
+ Inner class belonging to SampleClassMultipleAuthorsAndDates.
88
+
89
+ ---
90
+ #### Properties
91
+
92
+ ##### `InnerProp` → `public`
93
+
94
+ Description of the inner property.
95
+
96
+ ---
97
+ #### Methods
98
+ ##### `innerMethod()` → `void`
99
+
100
+ Executes from the inner class.
101
+
102
+ ---
103
+ ### SampleClassMultipleAuthorsAndDates.InnerClass class
104
+
105
+ Inner class belonging to SampleClassMultipleAuthorsAndDates.
106
+
107
+ ---
108
+ #### Properties
109
+
110
+ ##### `InnerProp` → `public`
111
+
112
+ Description of the inner property.
113
+
114
+ ---
115
+ #### Methods
116
+ ##### `innerMethod()` → `void`
117
+
118
+ Executes from the inner class.
119
+
120
+ ---
@@ -1,13 +1,10 @@
1
- ---
2
- layout: default
3
- ---
4
1
  # SampleInterface interface
5
2
 
6
3
  This is an interface description.
7
4
 
8
5
  ## Related
9
6
 
10
- [SampleClass](../Sample-Classes/SampleClass.md)
7
+ [SampleClass](/Sample-Classes/SampleClass.md)
11
8
 
12
9
  ---
13
10
  ## Methods
package/docs/_config.yml CHANGED
@@ -1,40 +1,40 @@
1
- # Welcome to Jekyll!
2
- #
3
- # This config file is meant for settings that affect your whole blog, values
4
- # which you are expected to set up once and rarely edit after that. If you find
5
- # yourself editing this file very often, consider using Jekyll's data files
6
- # feature for the data you need to update frequently.
7
- #
8
- # For technical reasons, this file is *NOT* reloaded automatically when you use
9
- # 'bundle exec jekyll serve'. If you change this file, please restart the server process.
10
-
11
- # Site settings
12
- # These are used to personalize your new site. If you look in the HTML files,
13
- # you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
14
- # You can create any custom variable you would like, and they will be accessible
15
- # in the templates via {{ site.myvariable }}.
16
- title: API Reference
17
- email: your-email@example.com
18
- description: >- # this means to ignore newlines until "baseurl:"
19
- This is a sample API documentation site, generated for Github Pages using ApexDocs
20
- baseurl: '/apexdocs' # the subpath of your site, e.g. /blog
21
- url: '' # the base hostname & protocol for your site, e.g. http://example.com
22
- twitter_username: jekyllrb
23
- github_username: jekyll
24
-
25
- # Build settings
26
- markdown: kramdown
27
- theme: jekyll-theme-cayman
28
- plugins:
29
- - jekyll-feed
30
- # Exclude from processing.
31
- # The following items will not be processed, by default. Create a custom list
32
- # to override the default setting.
33
- # exclude:
34
- # - Gemfile
35
- # - Gemfile.lock
36
- # - node_modules
37
- # - vendor/bundle/
38
- # - vendor/cache/
39
- # - vendor/gems/
40
- # - vendor/ruby/
1
+ # Welcome to Jekyll!
2
+ #
3
+ # This config file is meant for settings that affect your whole blog, values
4
+ # which you are expected to set up once and rarely edit after that. If you find
5
+ # yourself editing this file very often, consider using Jekyll's data files
6
+ # feature for the data you need to update frequently.
7
+ #
8
+ # For technical reasons, this file is *NOT* reloaded automatically when you use
9
+ # 'bundle exec jekyll serve'. If you change this file, please restart the server process.
10
+
11
+ # Site settings
12
+ # These are used to personalize your new site. If you look in the HTML files,
13
+ # you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
14
+ # You can create any custom variable you would like, and they will be accessible
15
+ # in the templates via {{ site.myvariable }}.
16
+ title: API Reference
17
+ email: your-email@example.com
18
+ description: >- # this means to ignore newlines until "baseurl:"
19
+ This is a sample API documentation site, generated for Github Pages using ApexDocs
20
+ baseurl: '/apexdocs' # the subpath of your site, e.g. /blog
21
+ url: '' # the base hostname & protocol for your site, e.g. http://example.com
22
+ twitter_username: jekyllrb
23
+ github_username: jekyll
24
+
25
+ # Build settings
26
+ markdown: kramdown
27
+ theme: jekyll-theme-cayman
28
+ plugins:
29
+ - jekyll-feed
30
+ # Exclude from processing.
31
+ # The following items will not be processed, by default. Create a custom list
32
+ # to override the default setting.
33
+ # exclude:
34
+ # - Gemfile
35
+ # - Gemfile.lock
36
+ # - node_modules
37
+ # - vendor/bundle/
38
+ # - vendor/cache/
39
+ # - vendor/gems/
40
+ # - vendor/ruby/