UNPKG

37.9 kBJSONView Raw
1{
2 "title": "Dev Server options",
3 "type": "object",
4 "definitions": {
5 "AllowedHosts": {
6 "anyOf": [
7 {
8 "type": "array",
9 "minItems": 1,
10 "items": {
11 "$ref": "#/definitions/AllowedHostsItem"
12 }
13 },
14 {
15 "enum": ["auto", "all"]
16 },
17 {
18 "$ref": "#/definitions/AllowedHostsItem"
19 }
20 ],
21 "description": "Allows to enumerate the hosts from which access to the dev server are allowed (useful when you are proxying dev server, by default is 'auto').",
22 "link": "https://webpack.js.org/configuration/dev-server/#devserverallowedhosts"
23 },
24 "AllowedHostsItem": {
25 "type": "string",
26 "minLength": 1
27 },
28 "Bonjour": {
29 "anyOf": [
30 {
31 "type": "boolean",
32 "cli": {
33 "negatedDescription": "Disallows to broadcasts dev server via ZeroConf networking on start."
34 }
35 },
36 {
37 "type": "object",
38 "description": "Options for bonjour.",
39 "link": "https://github.com/watson/bonjour#initializing"
40 }
41 ],
42 "description": "Allows to broadcasts dev server via ZeroConf networking on start.",
43 "link": " https://webpack.js.org/configuration/dev-server/#devserverbonjour"
44 },
45 "Client": {
46 "description": "Allows to specify options for client script in the browser or disable client script.",
47 "link": "https://webpack.js.org/configuration/dev-server/#devserverclient",
48 "anyOf": [
49 {
50 "enum": [false],
51 "cli": {
52 "negatedDescription": "Disables client script."
53 }
54 },
55 {
56 "type": "object",
57 "additionalProperties": false,
58 "properties": {
59 "logging": {
60 "$ref": "#/definitions/ClientLogging"
61 },
62 "overlay": {
63 "$ref": "#/definitions/ClientOverlay"
64 },
65 "progress": {
66 "$ref": "#/definitions/ClientProgress"
67 },
68 "reconnect": {
69 "$ref": "#/definitions/ClientReconnect"
70 },
71 "webSocketTransport": {
72 "$ref": "#/definitions/ClientWebSocketTransport"
73 },
74 "webSocketURL": {
75 "$ref": "#/definitions/ClientWebSocketURL"
76 }
77 }
78 }
79 ]
80 },
81 "ClientLogging": {
82 "enum": ["none", "error", "warn", "info", "log", "verbose"],
83 "description": "Allows to set log level in the browser.",
84 "link": "https://webpack.js.org/configuration/dev-server/#logging"
85 },
86 "ClientOverlay": {
87 "anyOf": [
88 {
89 "description": "Enables a full-screen overlay in the browser when there are compiler errors or warnings.",
90 "link": "https://webpack.js.org/configuration/dev-server/#overlay",
91 "type": "boolean",
92 "cli": {
93 "negatedDescription": "Disables the full-screen overlay in the browser when there are compiler errors or warnings."
94 }
95 },
96 {
97 "type": "object",
98 "additionalProperties": false,
99 "properties": {
100 "errors": {
101 "anyOf": [
102 {
103 "description": "Enables a full-screen overlay in the browser when there are compiler errors.",
104 "type": "boolean",
105 "cli": {
106 "negatedDescription": "Disables the full-screen overlay in the browser when there are compiler errors."
107 }
108 },
109 {
110 "instanceof": "Function",
111 "description": "Filter compiler errors. Return true to include and return false to exclude."
112 }
113 ]
114 },
115 "warnings": {
116 "anyOf": [
117 {
118 "description": "Enables a full-screen overlay in the browser when there are compiler warnings.",
119 "type": "boolean",
120 "cli": {
121 "negatedDescription": "Disables the full-screen overlay in the browser when there are compiler warnings."
122 }
123 },
124 {
125 "instanceof": "Function",
126 "description": "Filter compiler warnings. Return true to include and return false to exclude."
127 }
128 ]
129 },
130 "runtimeErrors": {
131 "anyOf": [
132 {
133 "description": "Enables a full-screen overlay in the browser when there are uncaught runtime errors.",
134 "type": "boolean",
135 "cli": {
136 "negatedDescription": "Disables the full-screen overlay in the browser when there are uncaught runtime errors."
137 }
138 },
139 {
140 "instanceof": "Function",
141 "description": "Filter uncaught runtime errors. Return true to include and return false to exclude."
142 }
143 ]
144 },
145 "trustedTypesPolicyName": {
146 "description": "The name of a Trusted Types policy for the overlay. Defaults to 'webpack-dev-server#overlay'.",
147 "type": "string"
148 }
149 }
150 }
151 ]
152 },
153 "ClientProgress": {
154 "description": "Prints compilation progress in percentage in the browser.",
155 "link": "https://webpack.js.org/configuration/dev-server/#progress",
156 "type": "boolean",
157 "cli": {
158 "negatedDescription": "Does not print compilation progress in percentage in the browser."
159 }
160 },
161 "ClientReconnect": {
162 "description": "Tells dev-server the number of times it should try to reconnect the client.",
163 "link": "https://webpack.js.org/configuration/dev-server/#reconnect",
164 "anyOf": [
165 {
166 "type": "boolean",
167 "cli": {
168 "negatedDescription": "Tells dev-server to not to try to reconnect the client."
169 }
170 },
171 {
172 "type": "number",
173 "minimum": 0
174 }
175 ]
176 },
177 "ClientWebSocketTransport": {
178 "anyOf": [
179 {
180 "$ref": "#/definitions/ClientWebSocketTransportEnum"
181 },
182 {
183 "$ref": "#/definitions/ClientWebSocketTransportString"
184 }
185 ],
186 "description": "Allows to set custom web socket transport to communicate with dev server.",
187 "link": "https://webpack.js.org/configuration/dev-server/#websockettransport"
188 },
189 "ClientWebSocketTransportEnum": {
190 "enum": ["sockjs", "ws"]
191 },
192 "ClientWebSocketTransportString": {
193 "type": "string",
194 "minLength": 1
195 },
196 "ClientWebSocketURL": {
197 "description": "Allows to specify URL to web socket server (useful when you're proxying dev server and client script does not always know where to connect to).",
198 "link": "https://webpack.js.org/configuration/dev-server/#websocketurl",
199 "anyOf": [
200 {
201 "type": "string",
202 "minLength": 1
203 },
204 {
205 "type": "object",
206 "additionalProperties": false,
207 "properties": {
208 "hostname": {
209 "description": "Tells clients connected to devServer to use the provided hostname.",
210 "type": "string",
211 "minLength": 1
212 },
213 "pathname": {
214 "description": "Tells clients connected to devServer to use the provided path to connect.",
215 "type": "string"
216 },
217 "password": {
218 "description": "Tells clients connected to devServer to use the provided password to authenticate.",
219 "type": "string"
220 },
221 "port": {
222 "description": "Tells clients connected to devServer to use the provided port.",
223 "anyOf": [
224 {
225 "type": "number"
226 },
227 {
228 "type": "string",
229 "minLength": 1
230 }
231 ]
232 },
233 "protocol": {
234 "description": "Tells clients connected to devServer to use the provided protocol.",
235 "anyOf": [
236 {
237 "enum": ["auto"]
238 },
239 {
240 "type": "string",
241 "minLength": 1
242 }
243 ]
244 },
245 "username": {
246 "description": "Tells clients connected to devServer to use the provided username to authenticate.",
247 "type": "string"
248 }
249 }
250 }
251 ]
252 },
253 "Compress": {
254 "type": "boolean",
255 "description": "Enables gzip compression for everything served.",
256 "link": "https://webpack.js.org/configuration/dev-server/#devservercompress",
257 "cli": {
258 "negatedDescription": "Disables gzip compression for everything served."
259 }
260 },
261 "DevMiddleware": {
262 "description": "Provide options to 'webpack-dev-middleware' which handles webpack assets.",
263 "link": "https://webpack.js.org/configuration/dev-server/#devserverdevmiddleware",
264 "type": "object",
265 "additionalProperties": true
266 },
267 "HTTP2": {
268 "type": "boolean",
269 "description": "Allows to serve over HTTP/2 using SPDY. Deprecated, use the `server` option.",
270 "link": "https://webpack.js.org/configuration/dev-server/#devserverhttp2",
271 "cli": {
272 "negatedDescription": "Does not serve over HTTP/2 using SPDY."
273 }
274 },
275 "HTTPS": {
276 "anyOf": [
277 {
278 "type": "boolean",
279 "cli": {
280 "negatedDescription": "Disallows to configure the server's listening socket for TLS (by default, dev server will be served over HTTP)."
281 }
282 },
283 {
284 "type": "object",
285 "additionalProperties": true,
286 "properties": {
287 "passphrase": {
288 "type": "string",
289 "description": "Passphrase for a pfx file. Deprecated, use the `server.options.passphrase` option."
290 },
291 "requestCert": {
292 "type": "boolean",
293 "description": "Request for an SSL certificate. Deprecated, use the `server.options.requestCert` option.",
294 "cli": {
295 "negatedDescription": "Does not request for an SSL certificate."
296 }
297 },
298 "ca": {
299 "anyOf": [
300 {
301 "type": "array",
302 "items": {
303 "anyOf": [
304 {
305 "type": "string"
306 },
307 {
308 "instanceof": "Buffer"
309 }
310 ]
311 }
312 },
313 {
314 "type": "string"
315 },
316 {
317 "instanceof": "Buffer"
318 }
319 ],
320 "description": "Path to an SSL CA certificate or content of an SSL CA certificate. Deprecated, use the `server.options.ca` option."
321 },
322 "cacert": {
323 "anyOf": [
324 {
325 "type": "array",
326 "items": {
327 "anyOf": [
328 {
329 "type": "string"
330 },
331 {
332 "instanceof": "Buffer"
333 }
334 ]
335 }
336 },
337 {
338 "type": "string"
339 },
340 {
341 "instanceof": "Buffer"
342 }
343 ],
344 "description": "Path to an SSL CA certificate or content of an SSL CA certificate. Deprecated, use the `server.options.ca` option."
345 },
346 "cert": {
347 "anyOf": [
348 {
349 "type": "array",
350 "items": {
351 "anyOf": [
352 {
353 "type": "string"
354 },
355 {
356 "instanceof": "Buffer"
357 }
358 ]
359 }
360 },
361 {
362 "type": "string"
363 },
364 {
365 "instanceof": "Buffer"
366 }
367 ],
368 "description": "Path to an SSL certificate or content of an SSL certificate. Deprecated, use the `server.options.cert` option."
369 },
370 "crl": {
371 "anyOf": [
372 {
373 "type": "array",
374 "items": {
375 "anyOf": [
376 {
377 "type": "string"
378 },
379 {
380 "instanceof": "Buffer"
381 }
382 ]
383 }
384 },
385 {
386 "type": "string"
387 },
388 {
389 "instanceof": "Buffer"
390 }
391 ],
392 "description": "Path to PEM formatted CRLs (Certificate Revocation Lists) or content of PEM formatted CRLs (Certificate Revocation Lists). Deprecated, use the `server.options.crl` option."
393 },
394 "key": {
395 "anyOf": [
396 {
397 "type": "array",
398 "items": {
399 "anyOf": [
400 {
401 "type": "string"
402 },
403 {
404 "instanceof": "Buffer"
405 },
406 {
407 "type": "object",
408 "additionalProperties": true
409 }
410 ]
411 }
412 },
413 {
414 "type": "string"
415 },
416 {
417 "instanceof": "Buffer"
418 }
419 ],
420 "description": "Path to an SSL key or content of an SSL key. Deprecated, use the `server.options.key` option."
421 },
422 "pfx": {
423 "anyOf": [
424 {
425 "type": "array",
426 "items": {
427 "anyOf": [
428 {
429 "type": "string"
430 },
431 {
432 "instanceof": "Buffer"
433 },
434 {
435 "type": "object",
436 "additionalProperties": true
437 }
438 ]
439 }
440 },
441 {
442 "type": "string"
443 },
444 {
445 "instanceof": "Buffer"
446 }
447 ],
448 "description": "Path to an SSL pfx file or content of an SSL pfx file. Deprecated, use the `server.options.pfx` option."
449 }
450 }
451 }
452 ],
453 "description": "Allows to configure the server's listening socket for TLS (by default, dev server will be served over HTTP). Deprecated, use the `server` option.",
454 "link": "https://webpack.js.org/configuration/dev-server/#devserverhttps"
455 },
456 "HeaderObject": {
457 "type": "object",
458 "additionalProperties": false,
459 "properties": {
460 "key": {
461 "description": "key of header.",
462 "type": "string"
463 },
464 "value": {
465 "description": "value of header.",
466 "type": "string"
467 }
468 },
469 "cli": {
470 "exclude": true
471 }
472 },
473 "Headers": {
474 "anyOf": [
475 {
476 "type": "array",
477 "items": {
478 "$ref": "#/definitions/HeaderObject"
479 },
480 "minItems": 1
481 },
482 {
483 "type": "object"
484 },
485 {
486 "instanceof": "Function"
487 }
488 ],
489 "description": "Allows to set custom headers on response.",
490 "link": "https://webpack.js.org/configuration/dev-server/#devserverheaders"
491 },
492 "HistoryApiFallback": {
493 "anyOf": [
494 {
495 "type": "boolean",
496 "cli": {
497 "negatedDescription": "Disallows to proxy requests through a specified index page."
498 }
499 },
500 {
501 "type": "object",
502 "description": "Options for `historyApiFallback`.",
503 "link": "https://github.com/bripkens/connect-history-api-fallback#options"
504 }
505 ],
506 "description": "Allows to proxy requests through a specified index page (by default 'index.html'), useful for Single Page Applications that utilise the HTML5 History API.",
507 "link": "https://webpack.js.org/configuration/dev-server/#devserverhistoryapifallback"
508 },
509 "Host": {
510 "description": "Allows to specify a hostname to use.",
511 "link": "https://webpack.js.org/configuration/dev-server/#devserverhost",
512 "anyOf": [
513 {
514 "enum": ["local-ip", "local-ipv4", "local-ipv6"]
515 },
516 {
517 "type": "string",
518 "minLength": 1
519 }
520 ]
521 },
522 "Hot": {
523 "anyOf": [
524 {
525 "type": "boolean",
526 "cli": {
527 "negatedDescription": "Disables Hot Module Replacement."
528 }
529 },
530 {
531 "enum": ["only"]
532 }
533 ],
534 "description": "Enables Hot Module Replacement.",
535 "link": "https://webpack.js.org/configuration/dev-server/#devserverhot"
536 },
537 "IPC": {
538 "anyOf": [
539 {
540 "type": "string",
541 "minLength": 1
542 },
543 {
544 "type": "boolean",
545 "enum": [true]
546 }
547 ],
548 "description": "Listen to a unix socket.",
549 "link": "https://webpack.js.org/configuration/dev-server/#devserveripc"
550 },
551 "LiveReload": {
552 "type": "boolean",
553 "description": "Enables reload/refresh the page(s) when file changes are detected (enabled by default).",
554 "cli": {
555 "negatedDescription": "Disables reload/refresh the page(s) when file changes are detected (enabled by default)."
556 },
557 "link": "https://webpack.js.org/configuration/dev-server/#devserverlivereload"
558 },
559 "MagicHTML": {
560 "type": "boolean",
561 "description": "Tells dev-server whether to enable magic HTML routes (routes corresponding to your webpack output, for example '/main' for 'main.js').",
562 "cli": {
563 "negatedDescription": "Disables magic HTML routes (routes corresponding to your webpack output, for example '/main' for 'main.js')."
564 },
565 "link": "https://webpack.js.org/configuration/dev-server/#devservermagichtml"
566 },
567 "OnAfterSetupMiddleware": {
568 "instanceof": "Function",
569 "description": "Provides the ability to execute a custom function and apply custom middleware(s) after all other middlewares. Deprecated: please use the 'setupMiddlewares' option.",
570 "link": "https://webpack.js.org/configuration/dev-server/#devserveronaftersetupmiddleware"
571 },
572 "OnBeforeSetupMiddleware": {
573 "instanceof": "Function",
574 "description": "Provides the ability to execute a custom function and apply custom middleware(s) prior to all other middlewares. Deprecated: please use the 'setupMiddlewares' option.",
575 "link": "https://webpack.js.org/configuration/dev-server/#devserveronbeforesetupmiddleware"
576 },
577 "OnListening": {
578 "instanceof": "Function",
579 "description": "Provides the ability to execute a custom function when dev server starts listening.",
580 "link": "https://webpack.js.org/configuration/dev-server/#devserveronlistening"
581 },
582 "Open": {
583 "anyOf": [
584 {
585 "type": "array",
586 "items": {
587 "anyOf": [
588 {
589 "$ref": "#/definitions/OpenString"
590 },
591 {
592 "$ref": "#/definitions/OpenObject"
593 }
594 ]
595 }
596 },
597 {
598 "$ref": "#/definitions/OpenBoolean"
599 },
600 {
601 "$ref": "#/definitions/OpenString"
602 },
603 {
604 "$ref": "#/definitions/OpenObject"
605 }
606 ],
607 "description": "Allows to configure dev server to open the browser(s) and page(s) after server had been started (set it to true to open your default browser).",
608 "link": "https://webpack.js.org/configuration/dev-server/#devserveropen"
609 },
610 "OpenBoolean": {
611 "type": "boolean",
612 "cli": {
613 "negatedDescription": "Does not open the default browser."
614 }
615 },
616 "OpenObject": {
617 "type": "object",
618 "additionalProperties": false,
619 "properties": {
620 "target": {
621 "anyOf": [
622 {
623 "type": "array",
624 "items": {
625 "type": "string"
626 }
627 },
628 {
629 "type": "string"
630 }
631 ],
632 "description": "Opens specified page in browser."
633 },
634 "app": {
635 "anyOf": [
636 {
637 "type": "object",
638 "additionalProperties": false,
639 "properties": {
640 "name": {
641 "anyOf": [
642 {
643 "type": "array",
644 "items": {
645 "type": "string",
646 "minLength": 1
647 },
648 "minItems": 1
649 },
650 {
651 "type": "string",
652 "minLength": 1
653 }
654 ]
655 },
656 "arguments": {
657 "items": {
658 "type": "string",
659 "minLength": 1
660 }
661 }
662 }
663 },
664 {
665 "type": "string",
666 "minLength": 1,
667 "description": "Open specified browser.",
668 "cli": {
669 "description": "Open specified browser. Deprecated: please use '--open-app-name'."
670 }
671 }
672 ],
673 "description": "Open specified browser."
674 }
675 }
676 },
677 "OpenString": {
678 "type": "string",
679 "minLength": 1
680 },
681 "Port": {
682 "anyOf": [
683 {
684 "type": "number",
685 "minimum": 0,
686 "maximum": 65535
687 },
688 {
689 "type": "string",
690 "minLength": 1
691 },
692 {
693 "enum": ["auto"]
694 }
695 ],
696 "description": "Allows to specify a port to use.",
697 "link": "https://webpack.js.org/configuration/dev-server/#devserverport"
698 },
699 "Proxy": {
700 "anyOf": [
701 {
702 "type": "object"
703 },
704 {
705 "type": "array",
706 "items": {
707 "anyOf": [
708 {
709 "type": "object"
710 },
711 {
712 "instanceof": "Function"
713 }
714 ]
715 }
716 }
717 ],
718 "description": "Allows to proxy requests, can be useful when you have a separate API backend development server and you want to send API requests on the same domain.",
719 "link": "https://webpack.js.org/configuration/dev-server/#devserverproxy"
720 },
721 "Server": {
722 "anyOf": [
723 {
724 "$ref": "#/definitions/ServerEnum"
725 },
726 {
727 "$ref": "#/definitions/ServerString"
728 },
729 {
730 "$ref": "#/definitions/ServerObject"
731 }
732 ],
733 "link": "https://webpack.js.org/configuration/dev-server/#devserverserver",
734 "description": "Allows to set server and options (by default 'http')."
735 },
736 "ServerType": {
737 "enum": ["http", "https", "spdy"]
738 },
739 "ServerEnum": {
740 "enum": ["http", "https", "spdy"],
741 "cli": {
742 "exclude": true
743 }
744 },
745 "ServerString": {
746 "type": "string",
747 "minLength": 1,
748 "cli": {
749 "exclude": true
750 }
751 },
752 "ServerObject": {
753 "type": "object",
754 "properties": {
755 "type": {
756 "anyOf": [
757 {
758 "$ref": "#/definitions/ServerType"
759 },
760 {
761 "$ref": "#/definitions/ServerString"
762 }
763 ]
764 },
765 "options": {
766 "$ref": "#/definitions/ServerOptions"
767 }
768 },
769 "additionalProperties": false
770 },
771 "ServerOptions": {
772 "type": "object",
773 "additionalProperties": true,
774 "properties": {
775 "passphrase": {
776 "type": "string",
777 "description": "Passphrase for a pfx file."
778 },
779 "requestCert": {
780 "type": "boolean",
781 "description": "Request for an SSL certificate.",
782 "cli": {
783 "negatedDescription": "Does not request for an SSL certificate."
784 }
785 },
786 "ca": {
787 "anyOf": [
788 {
789 "type": "array",
790 "items": {
791 "anyOf": [
792 {
793 "type": "string"
794 },
795 {
796 "instanceof": "Buffer"
797 }
798 ]
799 }
800 },
801 {
802 "type": "string"
803 },
804 {
805 "instanceof": "Buffer"
806 }
807 ],
808 "description": "Path to an SSL CA certificate or content of an SSL CA certificate."
809 },
810 "cacert": {
811 "anyOf": [
812 {
813 "type": "array",
814 "items": {
815 "anyOf": [
816 {
817 "type": "string"
818 },
819 {
820 "instanceof": "Buffer"
821 }
822 ]
823 }
824 },
825 {
826 "type": "string"
827 },
828 {
829 "instanceof": "Buffer"
830 }
831 ],
832 "description": "Path to an SSL CA certificate or content of an SSL CA certificate. Deprecated, use the `server.options.ca` option."
833 },
834 "cert": {
835 "anyOf": [
836 {
837 "type": "array",
838 "items": {
839 "anyOf": [
840 {
841 "type": "string"
842 },
843 {
844 "instanceof": "Buffer"
845 }
846 ]
847 }
848 },
849 {
850 "type": "string"
851 },
852 {
853 "instanceof": "Buffer"
854 }
855 ],
856 "description": "Path to an SSL certificate or content of an SSL certificate."
857 },
858 "crl": {
859 "anyOf": [
860 {
861 "type": "array",
862 "items": {
863 "anyOf": [
864 {
865 "type": "string"
866 },
867 {
868 "instanceof": "Buffer"
869 }
870 ]
871 }
872 },
873 {
874 "type": "string"
875 },
876 {
877 "instanceof": "Buffer"
878 }
879 ],
880 "description": "Path to PEM formatted CRLs (Certificate Revocation Lists) or content of PEM formatted CRLs (Certificate Revocation Lists)."
881 },
882 "key": {
883 "anyOf": [
884 {
885 "type": "array",
886 "items": {
887 "anyOf": [
888 {
889 "type": "string"
890 },
891 {
892 "instanceof": "Buffer"
893 },
894 {
895 "type": "object",
896 "additionalProperties": true
897 }
898 ]
899 }
900 },
901 {
902 "type": "string"
903 },
904 {
905 "instanceof": "Buffer"
906 }
907 ],
908 "description": "Path to an SSL key or content of an SSL key."
909 },
910 "pfx": {
911 "anyOf": [
912 {
913 "type": "array",
914 "items": {
915 "anyOf": [
916 {
917 "type": "string"
918 },
919 {
920 "instanceof": "Buffer"
921 },
922 {
923 "type": "object",
924 "additionalProperties": true
925 }
926 ]
927 }
928 },
929 {
930 "type": "string"
931 },
932 {
933 "instanceof": "Buffer"
934 }
935 ],
936 "description": "Path to an SSL pfx file or content of an SSL pfx file."
937 }
938 }
939 },
940 "SetupExitSignals": {
941 "type": "boolean",
942 "description": "Allows to close dev server and exit the process on SIGINT and SIGTERM signals (enabled by default for CLI).",
943 "link": "https://webpack.js.org/configuration/dev-server/#devserversetupexitsignals",
944 "cli": {
945 "exclude": true
946 }
947 },
948 "SetupMiddlewares": {
949 "instanceof": "Function",
950 "description": "Provides the ability to execute a custom function and apply custom middleware(s).",
951 "link": "https://webpack.js.org/configuration/dev-server/#devserversetupmiddlewares"
952 },
953 "Static": {
954 "anyOf": [
955 {
956 "type": "array",
957 "items": {
958 "anyOf": [
959 {
960 "$ref": "#/definitions/StaticString"
961 },
962 {
963 "$ref": "#/definitions/StaticObject"
964 }
965 ]
966 }
967 },
968 {
969 "type": "boolean",
970 "cli": {
971 "negatedDescription": "Disallows to configure options for serving static files from directory."
972 }
973 },
974 {
975 "$ref": "#/definitions/StaticString"
976 },
977 {
978 "$ref": "#/definitions/StaticObject"
979 }
980 ],
981 "description": "Allows to configure options for serving static files from directory (by default 'public' directory).",
982 "link": "https://webpack.js.org/configuration/dev-server/#devserverstatic"
983 },
984 "StaticObject": {
985 "type": "object",
986 "additionalProperties": false,
987 "properties": {
988 "directory": {
989 "type": "string",
990 "minLength": 1,
991 "description": "Directory for static contents.",
992 "link": "https://webpack.js.org/configuration/dev-server/#directory"
993 },
994 "staticOptions": {
995 "type": "object",
996 "link": "https://webpack.js.org/configuration/dev-server/#staticoptions",
997 "additionalProperties": true
998 },
999 "publicPath": {
1000 "anyOf": [
1001 {
1002 "type": "array",
1003 "items": {
1004 "type": "string"
1005 },
1006 "minItems": 1
1007 },
1008 {
1009 "type": "string"
1010 }
1011 ],
1012 "description": "The static files will be available in the browser under this public path.",
1013 "link": "https://webpack.js.org/configuration/dev-server/#publicpath"
1014 },
1015 "serveIndex": {
1016 "anyOf": [
1017 {
1018 "type": "boolean",
1019 "cli": {
1020 "negatedDescription": "Does not tell dev server to use serveIndex middleware."
1021 }
1022 },
1023 {
1024 "type": "object",
1025 "additionalProperties": true
1026 }
1027 ],
1028 "description": "Tells dev server to use serveIndex middleware when enabled.",
1029 "link": "https://webpack.js.org/configuration/dev-server/#serveindex"
1030 },
1031 "watch": {
1032 "anyOf": [
1033 {
1034 "type": "boolean",
1035 "cli": {
1036 "negatedDescription": "Does not watch for files in static content directory."
1037 }
1038 },
1039 {
1040 "type": "object",
1041 "description": "Options for watch.",
1042 "link": "https://github.com/paulmillr/chokidar#api"
1043 }
1044 ],
1045 "description": "Watches for files in static content directory.",
1046 "link": "https://webpack.js.org/configuration/dev-server/#watch"
1047 }
1048 }
1049 },
1050 "StaticString": {
1051 "type": "string",
1052 "minLength": 1
1053 },
1054 "WatchFiles": {
1055 "anyOf": [
1056 {
1057 "type": "array",
1058 "items": {
1059 "anyOf": [
1060 {
1061 "$ref": "#/definitions/WatchFilesString"
1062 },
1063 {
1064 "$ref": "#/definitions/WatchFilesObject"
1065 }
1066 ]
1067 }
1068 },
1069 {
1070 "$ref": "#/definitions/WatchFilesString"
1071 },
1072 {
1073 "$ref": "#/definitions/WatchFilesObject"
1074 }
1075 ],
1076 "description": "Allows to configure list of globs/directories/files to watch for file changes.",
1077 "link": "https://webpack.js.org/configuration/dev-server/#devserverwatchfiles"
1078 },
1079 "WatchFilesObject": {
1080 "cli": {
1081 "exclude": true
1082 },
1083 "type": "object",
1084 "properties": {
1085 "paths": {
1086 "anyOf": [
1087 {
1088 "type": "array",
1089 "items": {
1090 "type": "string",
1091 "minLength": 1
1092 }
1093 },
1094 {
1095 "type": "string",
1096 "minLength": 1
1097 }
1098 ],
1099 "description": "Path(s) of globs/directories/files to watch for file changes."
1100 },
1101 "options": {
1102 "type": "object",
1103 "description": "Configure advanced options for watching. See the chokidar documentation for the possible options.",
1104 "link": "https://github.com/paulmillr/chokidar#api",
1105 "additionalProperties": true
1106 }
1107 },
1108 "additionalProperties": false
1109 },
1110 "WatchFilesString": {
1111 "type": "string",
1112 "minLength": 1
1113 },
1114 "WebSocketServer": {
1115 "anyOf": [
1116 {
1117 "$ref": "#/definitions/WebSocketServerEnum"
1118 },
1119 {
1120 "$ref": "#/definitions/WebSocketServerString"
1121 },
1122 {
1123 "$ref": "#/definitions/WebSocketServerFunction"
1124 },
1125 {
1126 "$ref": "#/definitions/WebSocketServerObject"
1127 }
1128 ],
1129 "description": "Allows to set web socket server and options (by default 'ws').",
1130 "link": "https://webpack.js.org/configuration/dev-server/#devserverwebsocketserver"
1131 },
1132 "WebSocketServerType": {
1133 "enum": ["sockjs", "ws"]
1134 },
1135 "WebSocketServerEnum": {
1136 "anyOf": [
1137 {
1138 "enum": [false],
1139 "cli": {
1140 "negatedDescription": "Disallows to set web socket server and options."
1141 }
1142 },
1143 {
1144 "$ref": "#/definitions/WebSocketServerType"
1145 }
1146 ],
1147 "cli": {
1148 "description": "Deprecated: please use '--web-socket-server-type' option."
1149 }
1150 },
1151 "WebSocketServerFunction": {
1152 "instanceof": "Function"
1153 },
1154 "WebSocketServerObject": {
1155 "type": "object",
1156 "properties": {
1157 "type": {
1158 "anyOf": [
1159 {
1160 "$ref": "#/definitions/WebSocketServerType"
1161 },
1162 {
1163 "$ref": "#/definitions/WebSocketServerString"
1164 },
1165 {
1166 "$ref": "#/definitions/WebSocketServerFunction"
1167 }
1168 ]
1169 },
1170 "options": {
1171 "type": "object",
1172 "additionalProperties": true,
1173 "cli": {
1174 "exclude": true
1175 }
1176 }
1177 },
1178 "additionalProperties": false
1179 },
1180 "WebSocketServerString": {
1181 "type": "string",
1182 "minLength": 1
1183 }
1184 },
1185 "additionalProperties": false,
1186 "properties": {
1187 "allowedHosts": {
1188 "$ref": "#/definitions/AllowedHosts"
1189 },
1190 "bonjour": {
1191 "$ref": "#/definitions/Bonjour"
1192 },
1193 "client": {
1194 "$ref": "#/definitions/Client"
1195 },
1196 "compress": {
1197 "$ref": "#/definitions/Compress"
1198 },
1199 "devMiddleware": {
1200 "$ref": "#/definitions/DevMiddleware"
1201 },
1202 "headers": {
1203 "$ref": "#/definitions/Headers"
1204 },
1205 "historyApiFallback": {
1206 "$ref": "#/definitions/HistoryApiFallback"
1207 },
1208 "host": {
1209 "$ref": "#/definitions/Host"
1210 },
1211 "hot": {
1212 "$ref": "#/definitions/Hot"
1213 },
1214 "http2": {
1215 "$ref": "#/definitions/HTTP2"
1216 },
1217 "https": {
1218 "$ref": "#/definitions/HTTPS"
1219 },
1220 "ipc": {
1221 "$ref": "#/definitions/IPC"
1222 },
1223 "liveReload": {
1224 "$ref": "#/definitions/LiveReload"
1225 },
1226 "magicHtml": {
1227 "$ref": "#/definitions/MagicHTML"
1228 },
1229 "onAfterSetupMiddleware": {
1230 "$ref": "#/definitions/OnAfterSetupMiddleware"
1231 },
1232 "onBeforeSetupMiddleware": {
1233 "$ref": "#/definitions/OnBeforeSetupMiddleware"
1234 },
1235 "onListening": {
1236 "$ref": "#/definitions/OnListening"
1237 },
1238 "open": {
1239 "$ref": "#/definitions/Open"
1240 },
1241 "port": {
1242 "$ref": "#/definitions/Port"
1243 },
1244 "proxy": {
1245 "$ref": "#/definitions/Proxy"
1246 },
1247 "server": {
1248 "$ref": "#/definitions/Server"
1249 },
1250 "setupExitSignals": {
1251 "$ref": "#/definitions/SetupExitSignals"
1252 },
1253 "setupMiddlewares": {
1254 "$ref": "#/definitions/SetupMiddlewares"
1255 },
1256 "static": {
1257 "$ref": "#/definitions/Static"
1258 },
1259 "watchFiles": {
1260 "$ref": "#/definitions/WatchFiles"
1261 },
1262 "webSocketServer": {
1263 "$ref": "#/definitions/WebSocketServer"
1264 }
1265 }
1266}