-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrollup.config.js
37 lines (35 loc) · 1.14 KB
/
rollup.config.js
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
import nodeResolve from '@rollup/plugin-node-resolve'
import terser from '@rollup/plugin-terser'
import autoprefixer from 'autoprefixer'
import cssnano from 'cssnano'
import postcss from 'postcss'
import { defineConfig } from 'rollup'
import scss from 'rollup-plugin-scss'
import * as sass from 'sass'
// Check if the build is a production build
const isProduction = process.env.BUILD === 'production'
export default defineConfig({
input:
'packages/typo3_functional_colors/Resources/Private/JavaScript/main.js',
output: {
dir: 'packages/typo3_functional_colors/Resources/Public/',
format: 'iife',
sourcemap: isProduction ? false : 'inline',
entryFileNames: 'JavaScript/[name].min.js',
assetFileNames: 'StyleSheets/[name][extname]',
},
plugins: [
nodeResolve(),
scss({
sass,
verbose: true,
name: 'main.min.css',
outputStyle: 'compressed',
watch: 'packages/typo3_functional_colors/Resources/Private/StyleSheets',
failOnError: isProduction,
sourceMap: !isProduction,
processor: () => postcss([autoprefixer(), cssnano()]),
}),
...(isProduction ? [terser()] : []),
],
})