-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathpackage.json
224 lines (224 loc) · 9.09 KB
/
package.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
{
"name": "apexdox-vs-code",
"displayName": "ApexDox VS Code",
"version": "2.0.3",
"publisher": "PeterWeinberg",
"author": {
"name": "pweinberg"
},
"description": "A lightweight VS Code extension that makes creating and generating static documentation for your Salesforce Apex files an easy, integrated experience.",
"engines": {
"vscode": "^1.32.0"
},
"categories": [
"Other"
],
"keywords": [
"apex",
"salesforce",
"documentation",
"documentation generator",
"documentation generation"
],
"icon": "assets/icon.png",
"galleryBanner": {
"color": "#F0F8FF",
"theme": "light"
},
"homepage": "https://github.com/no-stack-dub-sack/apexdox-vs-code/blob/master/README.md",
"repository": {
"url": "https://github.com/no-stack-dub-sack/apexdox-vs-code",
"type": "git"
},
"bugs": {
"url": "https://github.com/no-stack-dub-sack/apexdox-vs-code/issues"
},
"license": "SEE LICENSE IN LICENSE.txt",
"activationEvents": [
"onLanguage:apex",
"onCommand:apexdox.run",
"onCommand:apexdox.serveDocs"
],
"main": "./dist/extension.js",
"contributes": {
"commands": [
{
"command": "apexdox.run",
"title": "ApexDox: Run"
},
{
"command": "apexdox.serveDocs",
"title": "ApexDox: Open Docs"
},
{
"command": "apexdox.insertDocBlock",
"title": "ApexDox: Stub Comment Block"
}
],
"languages": [
{
"id": "apex",
"extensions": [
".cls",
".apex"
]
},
{
"id": "json",
"extensions": [
".apexdoxrc"
]
}
],
"grammars": [
{
"path": "./syntaxes/apex.tmLanguage.injection.json",
"scopeName": "apex-doc-comment.injection",
"injectTo": [
"source.apex"
]
}
],
"configuration": {
"type": "object",
"title": "ApexDox VS Code Configuration",
"properties": {
"apexdox.engine.source": {
"type": "array",
"default": [
{
"path": ""
}
],
"markdownDescription": "An array of 'source' objects, with the following keys:\n- `path` (string): An absolute path to a directory containing .cls files you'd like to document.\n- `sourceUrl?` (string): Optional. A URL where the .cls source files are hosted, so ApexDox can provide links to your code - confirmed to work with GitHub), e.g.: `https://github.com/no-stack-dub-sack/MyFakeSFProject/tree/master/src/classes`.\n\nDefaults to: \n```\n[{\n \"path\": \"${workspaceFolder}/src/classes\"\n }]\n```\nfor non-DX projects, and \n```\n[{\n \"path\": \"${workspaceFolder}/force-app/main/default/classes\"\n }]\n```\nfor DX."
},
"apexdox.engine.targetDirectory": {
"type": "string",
"default": "${workspaceFolder}/apex-documentation/",
"description": "The target directory for the output documentation. The directory you specified will be created if it does not exist. Defaults to `${workspaceFolder}/apex-documentation`."
},
"apexdox.engine.includes": {
"type": "array",
"default": [],
"markdownDescription": "A case-sensitive array of file names and/or simple wildcard patterns (e.g. `Contact*`, or `*Test.cls`) that indicates which files in your source directory should be documented. An empty array is treated as 'include all'. Read more about this setting [here](https://github.com/no-stack-dub-sack/apexdox-vs-code#extension-settings)."
},
"apexdox.engine.excludes": {
"type": "array",
"default": [],
"markdownDescription": "A case-sensitive array of file names and/or simple wildcard patterns (e.g. `Contact*`, or `*Test.cls`) that indicates which files in your source directory should NOT be documented. An empty array is treated as 'exclude none'. Read more about this setting [here](https://github.com/no-stack-dub-sack/apexdox-vs-code#extension-settings)."
},
"apexdox.engine.homePagePath": {
"type": "string",
"default": "",
"markdownDescription": "An absolute path of an HTML file that contains the project's 'home page' markup. Only the markup inside the `<body>` tags will be used, or if the file contains only a partial HTML page, e.g. `<h2>Cool!</h2>`, the entire contents will be used."
},
"apexdox.engine.title": {
"type": "string",
"default": "Apex Documentation",
"markdownDescription": "The value for the output HTML's `<title>` attribute, as well as the header text for the sidebar's banner / logo section. Defaults to 'Apex Documentation'."
},
"apexdox.engine.subtitle": {
"type": "string",
"default": "Powered by <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/no-stack-dub-sack/apexdox-vs-code\">ApexDox VS Code</a>",
"markdownDescription": "The subtitle for the sidebar's banner / logo section. Defaults to 'Powered by ApexDox VS Code'."
},
"apexdox.engine.scope": {
"type": "array",
"default": [
"global",
"public",
"protected",
"private",
"testMethod",
"webService"
],
"description": "An array of scopes to document. Default includes all scopes: 'global', 'public', 'protected', 'private', 'testMethod', 'webService'."
},
"apexdox.engine.showTOCSnippets": {
"type": "boolean",
"default": true,
"markdownDescription": "If set to `false`, ApexDox will hide methods' description snippet in the class's table of contents. Defaults to `true`."
},
"apexdox.engine.sortOrder": {
"type": "string",
"default": "alpha",
"description": "The order in which class methods, properties, and inner classes are presented to the user in your documentation. Either 'logical', the order they appear in the source file, or 'alpha', alphabetically. Defaults to 'alpha'."
},
"apexdox.engine.port": {
"type": "number",
"default": 8080,
"markdownDescription": "The port number that the `ApexDox: Open Docs` command will serve your docs on. Defaults to `8080`."
},
"apexdox.engine.assets": {
"type": "array",
"default": [],
"markdownDescription": "An array of absolute paths of files you would like to be included in the target directory's 'assets' folder. This is where ApexDox keeps JavaScript, CSS, and images. Read mode about this setting [here](https://github.com/no-stack-dub-sack/apexdox-vs-code#extension-settings)."
},
"apexdox.engine.cleanDir": {
"type": "boolean",
"default": false,
"markdownDescription": "If set to `true`, ApexDox will use rimraf to remove any files or folders in your target directory before creating your docs. Useful for keeping a continuously growing project's documentation folder clean. Defaults to `false`."
},
"apexdox.engine.pages": {
"type": "array",
"default": [],
"markdownDescription": "An array of absolute paths of non-ApexDox generated HTML files that you'd like to be available to your documentation. These files will be placed in your target directory alongside generated HTML files. For example, if you'd like to link to a page from your project's home page or from one of it's class group pages, include that page here. If your file's name is `MyCoolPage.html`, you can then link to it with `href=\"./MyCoolPage.html\"`."
},
"apexdox.docblock.alignItems": {
"type": "boolean",
"default": false,
"markdownDescription": "Vertically align anything after an ApexDox @tag. E.g.:\n```\n/**\n * @description Some description\n * @param myParam Param description\n * @param anotherParam Another param description\n */\n```\nDefaults to `false`."
},
"apexdox.docblock.omitDescriptionTag": {
"type": "boolean",
"default": true,
"markdownDescription": "ApexDox `@description` tags are optional. Set this to `false` to include them. Defaults to `true`."
},
"apexdox.docblock.spacious": {
"type": "boolean",
"default": false,
"markdownDescription": "When set to `true` ApexDox comment block stubs will add an empty line after the description line and before the next tag. Defaults to `false`."
}
}
}
},
"scripts": {
"vscode:prepublish": "webpack --mode production",
"compile": "webpack --mode none",
"watch": "webpack --mode none --watch",
"yaml-2-grammar": "node ./scripts/convertGrammar.js",
"postinstall": "node ./node_modules/vscode/bin/install",
"test": "yarn run test-setup && node ./node_modules/vscode/bin/test",
"test-setup": "yarn run test-compile && yarn run test-cleanup",
"test-compile": "tsc -p ./",
"test-cleanup": "rm -rf ./src/test/test-proj/docs",
"update-highlight": ". scripts/updateHighlight.sh",
"update-snapshots": "rm ./src/test/snapshots/* && node ./scripts/updateSnapshots.js"
},
"devDependencies": {
"@types/cheerio": "^0.22.11",
"@types/js-yaml": "^3.12.1",
"@types/lodash.escape": "^4.0.6",
"@types/mocha": "^2.2.42",
"@types/node": "^10.12.21",
"@types/node-static": "^0.7.3",
"@types/open": "^6.0.0",
"@types/pretty": "^2.0.0",
"@types/rimraf": "^2.0.2",
"cheerio": "^1.0.0-rc.3",
"ts-loader": "^5.4.3",
"tslint": "^5.12.1",
"typescript": "^3.3.1",
"vscode": "^1.1.28",
"webpack": "^4.30.0",
"webpack-cli": "^3.3.1"
},
"dependencies": {
"js-yaml": "^3.13.1",
"lodash.escape": "^4.0.1",
"node-static": "^0.7.11",
"open": "^6.0.0",
"pretty": "^2.0.0",
"rimraf": "^2.6.3"
}
}