1 | import Config from 'webpack-chain'
|
2 |
|
3 | export interface ProjectOptions {
|
4 | /** Folder output for prod build */
|
5 | outputDir?: string
|
6 | /**
|
7 | * Folder containing source.
|
8 | * By default will be aliased to `@/`
|
9 | * (for example, `@/lib/foo.js` will be resolved as `src/lib/foo.js`).
|
10 | */
|
11 | srcDir?: string
|
12 | /** Entry file (relative to project root) */
|
13 | entry?: string
|
14 | /** Entry files (relative to project root) */
|
15 | entries?: { [key: string]: string }
|
16 | /** Enable sourcemaps in production build (can slow down build) */
|
17 | productionSourceMap?: boolean
|
18 | /** Webpack externals packages */
|
19 | externals?: any
|
20 | /** Minify production builds */
|
21 | minify?: boolean
|
22 | /** Whitelist option for webpack-node-externals */
|
23 | nodeExternalsWhitelist?: any
|
24 | /** Modify webpack config with webpack-chain */
|
25 | chainWebpack?: (config: Config) => void
|
26 | /** Enable parallel compilation */
|
27 | parallel?: boolean
|
28 | /** Force transpile `node_modules` packages with babel */
|
29 | transpileDependencies?: Array<string | RegExp>
|
30 | /**
|
31 | * Default port for `process.env.PORT` if it is not defined.
|
32 | * It will change to a free port automatically if it is not available.
|
33 | */
|
34 | defaultPort?: number
|
35 | /** Enable file linting as part of the build process */
|
36 | lintOnBuild?: boolean
|
37 | /** Environment variables replaced during compilation */
|
38 | defineEnv?: string[]
|
39 | /** Options for 3rd-party plugins */
|
40 | pluginOptions?: any
|
41 | }
|