You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							81 lines
						
					
					
						
							2.1 KiB
						
					
					
				
			
		
		
	
	
							81 lines
						
					
					
						
							2.1 KiB
						
					
					
				"use strict";
 | 
						|
 | 
						|
/* eslint-disable import/no-extraneous-dependencies */
 | 
						|
 | 
						|
/* eslint-disable @typescript-eslint/no-var-requires */
 | 
						|
 | 
						|
/* eslint-disable @typescript-eslint/explicit-function-return-type */
 | 
						|
const {
 | 
						|
  babel
 | 
						|
} = require('@rollup/plugin-babel');
 | 
						|
 | 
						|
const commonjs = require('@rollup/plugin-commonjs');
 | 
						|
 | 
						|
const {
 | 
						|
  nodeResolve: resolve
 | 
						|
} = require('@rollup/plugin-node-resolve');
 | 
						|
 | 
						|
const replace = require('@rollup/plugin-replace');
 | 
						|
 | 
						|
const json = require('@rollup/plugin-json');
 | 
						|
 | 
						|
const {
 | 
						|
  terser
 | 
						|
} = require('rollup-plugin-terser');
 | 
						|
 | 
						|
const external = ['prop-types', 'react', 'react-dom', 'redux', 'react-redux', 'react-router', 'react-router-dom', 'styled-components', 'adminjs', '@adminjs/design-system', '@carbon/icons-react'];
 | 
						|
const globals = {
 | 
						|
  react: 'React',
 | 
						|
  redux: 'Redux',
 | 
						|
  '@carbon/icons-react': 'CarbonIcons',
 | 
						|
  'styled-components': 'styled',
 | 
						|
  'prop-types': 'PropTypes',
 | 
						|
  'react-dom': 'ReactDOM',
 | 
						|
  'react-redux': 'ReactRedux',
 | 
						|
  'react-router': 'ReactRouter',
 | 
						|
  'react-router-dom': 'ReactRouterDOM',
 | 
						|
  adminjs: 'AdminJS',
 | 
						|
  '@adminjs/design-system': 'AdminJSDesignSystem'
 | 
						|
};
 | 
						|
const extensions = ['.mjs', '.js', '.jsx', '.json', '.ts', '.tsx', '.scss'];
 | 
						|
 | 
						|
const plugins = ({
 | 
						|
  babelConfig = {},
 | 
						|
  commonJSConfig = {},
 | 
						|
  minify = false
 | 
						|
} = {}) => {
 | 
						|
  const pluginStack = [resolve({
 | 
						|
    extensions,
 | 
						|
    mainFields: ['browser', 'main', 'module', 'jsnext:main'],
 | 
						|
    preferBuiltins: false
 | 
						|
  }), json(), replace({
 | 
						|
    'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV || 'development'),
 | 
						|
    'process.env.IS_BROWSER': 'true',
 | 
						|
    'process.env.': 'AdminJS.env.',
 | 
						|
    preventAssignment: true,
 | 
						|
    'process.browser': true
 | 
						|
  }), commonjs({ ...commonJSConfig
 | 
						|
  }), babel({
 | 
						|
    extensions,
 | 
						|
    babelrc: false,
 | 
						|
    babelHelpers: 'bundled',
 | 
						|
    exclude: 'node_modules/**/*.js',
 | 
						|
    presets: [require.resolve('@babel/preset-env', {
 | 
						|
      corejs: 3,
 | 
						|
      useBuiltIns: 'usage'
 | 
						|
    }), require.resolve('@babel/preset-react'), require.resolve('@babel/preset-typescript')],
 | 
						|
    ...babelConfig
 | 
						|
  })];
 | 
						|
 | 
						|
  if (minify) {
 | 
						|
    pluginStack.push(terser());
 | 
						|
  }
 | 
						|
 | 
						|
  return pluginStack;
 | 
						|
};
 | 
						|
 | 
						|
module.exports = {
 | 
						|
  external,
 | 
						|
  globals,
 | 
						|
  plugins
 | 
						|
}; |