UNPKG

@logistically/i18n-react-core

Version:

React integration for @logistically/i18n with state management agnostic design

159 lines (156 loc) 3.35 kB
import resolve from '@rollup/plugin-node-resolve'; import commonjs from '@rollup/plugin-commonjs'; import typescript from '@rollup/plugin-typescript'; import terser from '@rollup/plugin-terser'; export default [ // Main bundle { input: 'src/index.ts', output: [ { file: 'dist/index.js', format: 'cjs', sourcemap: true, exports: 'named' }, { file: 'dist/index.esm.js', format: 'esm', sourcemap: true, exports: 'named' } ], external: ['react', 'react-dom', '@logistically/i18n'], plugins: [ resolve(), commonjs(), typescript({ tsconfig: './tsconfig.json' }), terser({ compress: { drop_console: true, drop_debugger: true } }) ] }, // SSR bundle { input: 'src/ssr/index.ts', output: [ { file: 'dist/ssr.js', format: 'cjs', sourcemap: true, exports: 'named' }, { file: 'dist/ssr.esm.js', format: 'esm', sourcemap: true, exports: 'named' } ], external: ['react', 'react-dom', '@logistically/i18n'], plugins: [ resolve(), commonjs(), typescript({ tsconfig: './tsconfig.json' }), terser({ compress: { drop_console: true, drop_debugger: true } }) ] }, // Context adapter { input: 'src/adapters/context.tsx', output: [ { file: 'dist/adapters/context.js', format: 'cjs', sourcemap: true, exports: 'named' }, { file: 'dist/adapters/context.esm.js', format: 'esm', sourcemap: true, exports: 'named' } ], external: ['react', 'react-dom', '@logistically/i18n'], plugins: [ resolve(), commonjs(), typescript({ tsconfig: './tsconfig.json' }), terser({ compress: { drop_console: true, drop_debugger: true } }) ] }, // Redux adapter { input: 'src/adapters/redux.ts', output: [ { file: 'dist/adapters/redux.js', format: 'cjs', sourcemap: true, exports: 'named' }, { file: 'dist/adapters/redux.esm.js', format: 'esm', sourcemap: true, exports: 'named' } ], external: ['react', 'react-dom', '@logistically/i18n', '@reduxjs/toolkit', 'react-redux'], plugins: [ resolve(), commonjs(), typescript({ tsconfig: './tsconfig.json' }), terser({ compress: { drop_console: true, drop_debugger: true } }) ] }, // React Native bundle { input: 'src/react-native/index.ts', output: [ { file: 'dist/react-native.js', format: 'cjs', sourcemap: true, exports: 'named' }, { file: 'dist/react-native.esm.js', format: 'esm', sourcemap: true, exports: 'named' } ], external: ['react', 'react-native', '@logistically/i18n'], plugins: [ resolve(), commonjs(), typescript({ tsconfig: './tsconfig.json' }), terser({ compress: { drop_console: true, drop_debugger: true } }) ] } ];