본문으로 건너뛰기

generateRollupConfig

Javascript, Typescript 환경의 라이브러리를 번들링할 수 있는 Rollup Config를 return하는 함수입니다.

Params

ParamtypeOptionDescription
packageDirstringrequired번들링할 패키지의 package.json 위치를 적어주세요. (ex. __dirname)
entrypointstring 혹은 Record<'index' & string, string>required번들링할 패키지의 파일 entrypoint를 적어주세요. (ex. './src/index.ts',)
outpoint{require: string; import: string;types: string }optional번들된 파일이 위치할 outpoint를 적어주세요. 혹은 package.json의 export 필드를 작성해주세요.
extensionsstring[]optional번들할 파일들의 확장자를 적어주세요. (default : [.ts, .tsx])
pluginsRollupOptions['plugins']optional추가하고 싶은 rollup plugins을 적어주세요.
reactfalse 혹은 {runtime: "classic""automatic"}optional
scssfalse 혹은 {ssr:boolean}optional번들링할 패키지의 scss 지원 여부를 적어주세요. {ssr:true} 라면 css 파일을 export 합니다.(default false)
iebooleanoptional번들링할 패키지의 ie 지원 여부를 적어주세요. (default false)
minifybooleanoptional번들링할 패키지의 terser 압축 여부를 적어주세요. (default true)
supportModules("cjs" 혹은 "esm")[]optional번들링된 패키지가 지원할 modules (default ['cjs', 'esm'])

How to use?

import {generateRollupConfig} from '@naverpay/rollup'

module.exports = generateRollupConfig({
packageDir: __dirname,
entrypoint: './src/index.ts',
minify: false,
ie: true,
scss: {ssr: true},
extensions: ['.js', '.jsx', '.ts', '.tsx'],
supportModules: ['cjs', 'esm'],
})