1 | {
|
2 | "additionalProperties": true,
|
3 | "properties": {
|
4 | "hash": {
|
5 | "description": "Whether filename will contain hash part.",
|
6 | "oneOf": [
|
7 | {
|
8 | "description": "Add a hash part to all filenames.",
|
9 | "type": "boolean"
|
10 | },
|
11 | {
|
12 | "additionalProperties": false,
|
13 | "type": "object",
|
14 | "properties": {
|
15 | "main": {
|
16 | "description": "Add a hash part to the main filename.",
|
17 | "type": "boolean"
|
18 | },
|
19 | "chunk": {
|
20 | "description": "Add a hash part to the chunk filename.",
|
21 | "type": "boolean"
|
22 | }
|
23 | }
|
24 | }
|
25 | ]
|
26 | },
|
27 | "sourceMap": {
|
28 | "description": "Generate sourceMap for production build.",
|
29 | "type": "boolean"
|
30 | },
|
31 | "prerender": {
|
32 | "type": "boolean"
|
33 | },
|
34 | "publicPath": {
|
35 | "description": "Project deployment base path.",
|
36 | "oneOf": [
|
37 | {
|
38 | "type": "string"
|
39 | },
|
40 | {
|
41 | "type": "object",
|
42 | "properties": {
|
43 | "default": {
|
44 | "type": "string"
|
45 | },
|
46 | "dev": {
|
47 | "type": "string"
|
48 | },
|
49 | "test": {
|
50 | "type": "string"
|
51 | },
|
52 | "online": {
|
53 | "type": "string"
|
54 | }
|
55 | }
|
56 | }
|
57 | ]
|
58 | },
|
59 | "library": {
|
60 | "description": "Library global name.",
|
61 | "type": "string"
|
62 | },
|
63 | "esm": {
|
64 | "description": "Module name that requires full compilation.",
|
65 | "type": "array",
|
66 | "items": {
|
67 | "oneOf": [
|
68 | {
|
69 | "type": "string"
|
70 | },
|
71 | {
|
72 | "instanceof": "RegExp",
|
73 | "tsType": "RegExp"
|
74 | }
|
75 | ]
|
76 | }
|
77 | },
|
78 | "tsImportLibs": {
|
79 | "type": "array",
|
80 | "items": { "type": "object" }
|
81 | },
|
82 | "vendor": {
|
83 | "oneOf": [
|
84 | {
|
85 | "type": "array",
|
86 | "items": { "type": "string" }
|
87 | },
|
88 | {
|
89 | "additionalProperties": false,
|
90 | "type": "object",
|
91 | "properties": {
|
92 | "libs": {
|
93 | "type": "array",
|
94 | "items": { "type": "string" }
|
95 | },
|
96 | "name": {
|
97 | "description": "vendor entry.",
|
98 | "type": "string"
|
99 | }
|
100 | }
|
101 | }
|
102 | ]
|
103 | },
|
104 | "compiler": {
|
105 | "type": "object",
|
106 | "properties": {
|
107 | "cssExtract": {
|
108 | "description": "Extract style to an extra css file.",
|
109 | "type": "boolean"
|
110 | },
|
111 | "checkDuplicatePackage": {
|
112 | "description": "Check if duplicate dependencies are included.",
|
113 | "oneOf": [
|
114 | {
|
115 | "description": "Set false to disable checking.",
|
116 | "type": "boolean"
|
117 | },
|
118 | {
|
119 | "description": "Set warning level. => <warning | error>",
|
120 | "type": "string",
|
121 | "pattern": "^(warning|error)$"
|
122 | }
|
123 | ]
|
124 | },
|
125 | "splitChunks": {
|
126 | "description": "Split initial chunks.",
|
127 | "type": "boolean"
|
128 | },
|
129 | "splitSNC": {
|
130 | "description": "Split universal-framework.",
|
131 | "type": "boolean"
|
132 | },
|
133 | "vueRuntimeOnly": {
|
134 | "description": "Compile with vue runtime.",
|
135 | "type": "boolean"
|
136 | },
|
137 | "dropConsole": {
|
138 | "description": "Drop console.log.",
|
139 | "type": "boolean"
|
140 | }
|
141 | }
|
142 | },
|
143 | "ciConfig": {
|
144 | "description": "Options for the GitLab CI runner.",
|
145 | "type": "object",
|
146 | "properties": {
|
147 | "zip_config_name": {
|
148 | "type": "string"
|
149 | }
|
150 | }
|
151 | },
|
152 | "devServer": {
|
153 | "additionalProperties": false,
|
154 | "description": "Options for the marax-dev-server.",
|
155 | "type": "object",
|
156 | "properties": {
|
157 | "open": {
|
158 | "description": "Open the browser automatically after the service starts.",
|
159 | "type": "boolean"
|
160 | },
|
161 | "https": {
|
162 | "description": "Enable https protocol.",
|
163 | "type": "boolean"
|
164 | },
|
165 | "port": {
|
166 | "description": "Specify the port number.",
|
167 | "type": "integer"
|
168 | },
|
169 | "proxy": {
|
170 | "description": "Proxy table.",
|
171 | "type": "object"
|
172 | }
|
173 | }
|
174 | },
|
175 | "hybrid": {
|
176 | "description": "Options for the hybrid deployment.",
|
177 | "type": "object"
|
178 | },
|
179 | "tinifyKeys": {
|
180 | "description": "Developer API key from https://tinypng.com/developers.",
|
181 | "type": "array",
|
182 | "items": { "type": "string" }
|
183 | },
|
184 | "ftp": {
|
185 | "description": "Options for the ftp server.",
|
186 | "additionalProperties": false,
|
187 | "type": "object",
|
188 | "required": ["host", "port", "user", "password"],
|
189 | "properties": {
|
190 | "host": {
|
191 | "description": "Ftp server host name.",
|
192 | "type": "string"
|
193 | },
|
194 | "user": {
|
195 | "description": "Ftp server username.",
|
196 | "type": "string"
|
197 | },
|
198 | "password": {
|
199 | "description": "Ftp server user password.",
|
200 | "type": "string"
|
201 | },
|
202 | "port": {
|
203 | "description": "Ftp server port number.",
|
204 | "type": "integer"
|
205 | },
|
206 | "reload": {
|
207 | "description": "Refresh resource cache.",
|
208 | "type": "boolean"
|
209 | },
|
210 | "openBrowser": {
|
211 | "description": "Open the browser automatically after uploading.",
|
212 | "type": "boolean"
|
213 | },
|
214 | "remotePath": {
|
215 | "additionalProperties": true,
|
216 | "type": "object"
|
217 | },
|
218 | "hybridPublish": {
|
219 | "description": "Release the hybrid package to the dev environment.",
|
220 | "type": "boolean"
|
221 | },
|
222 | "hybridAutoVersion": {
|
223 | "description": "Automatic bump package version.",
|
224 | "type": "boolean"
|
225 | }
|
226 | }
|
227 | },
|
228 | "marax": {
|
229 | "description": "Marax internal configuration.",
|
230 | "type": "object",
|
231 | "properties": {
|
232 | "progress": {
|
233 | "enum": ["bar", "text"]
|
234 | },
|
235 | "inspire": {
|
236 | "description": "Get an inspiring quote after successful build.",
|
237 | "type": "boolean"
|
238 | }
|
239 | }
|
240 | }
|
241 | },
|
242 | "type": "object"
|
243 | }
|