mirror of https://github.com/grafana/grafana.git
				
				
				
			
		
			
				
	
	
		
			96 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
			
		
		
	
	
			96 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
import resolve from '@rollup/plugin-node-resolve';
 | 
						|
import commonjs from '@rollup/plugin-commonjs';
 | 
						|
import image from '@rollup/plugin-image';
 | 
						|
// import sourceMaps from 'rollup-plugin-sourcemaps';
 | 
						|
import { terser } from 'rollup-plugin-terser';
 | 
						|
 | 
						|
const pkg = require('./package.json');
 | 
						|
 | 
						|
const libraryName = pkg.name;
 | 
						|
 | 
						|
const buildCjsPackage = ({ env }) => {
 | 
						|
  return {
 | 
						|
    input: `compiled/index.js`,
 | 
						|
    output: [
 | 
						|
      {
 | 
						|
        dir: 'dist',
 | 
						|
        name: libraryName,
 | 
						|
        format: 'cjs',
 | 
						|
        sourcemap: true,
 | 
						|
        strict: false,
 | 
						|
        exports: 'named',
 | 
						|
        chunkFileNames: `[name].${env}.js`,
 | 
						|
        globals: {
 | 
						|
          react: 'React',
 | 
						|
          'prop-types': 'PropTypes',
 | 
						|
        },
 | 
						|
      },
 | 
						|
    ],
 | 
						|
    external: [
 | 
						|
      'react',
 | 
						|
      'react-dom',
 | 
						|
      '@grafana/data',
 | 
						|
      '@grafana/e2e-selectors',
 | 
						|
      'moment',
 | 
						|
      'monaco-editor', // Monaco should not be used directly
 | 
						|
      'monaco-editor/esm/vs/editor/editor.api', // Monaco should not be used directly
 | 
						|
      'react-monaco-editor',
 | 
						|
      'jquery', // required to use jquery.plot, which is assigned externally
 | 
						|
    ],
 | 
						|
    plugins: [
 | 
						|
      commonjs({
 | 
						|
        include: /node_modules/,
 | 
						|
        // When 'rollup-plugin-commonjs' fails to properly convert the CommonJS modules to ES6 one has to manually name the exports
 | 
						|
        // https://github.com/rollup/rollup-plugin-commonjs#custom-named-exports
 | 
						|
        namedExports: {
 | 
						|
          '../../node_modules/lodash/lodash.js': [
 | 
						|
            'flatten',
 | 
						|
            'find',
 | 
						|
            'upperFirst',
 | 
						|
            'debounce',
 | 
						|
            'isNil',
 | 
						|
            'isNumber',
 | 
						|
            'flattenDeep',
 | 
						|
            'map',
 | 
						|
            'chunk',
 | 
						|
            'sortBy',
 | 
						|
            'uniqueId',
 | 
						|
            'zip',
 | 
						|
            'omit',
 | 
						|
            'isString',
 | 
						|
            'isEmpty',
 | 
						|
            'toLower',
 | 
						|
          ],
 | 
						|
          '../../node_modules/react-color/lib/components/common': ['Saturation', 'Hue', 'Alpha'],
 | 
						|
          '../../node_modules/immutable/dist/immutable.js': [
 | 
						|
            'Record',
 | 
						|
            'Set',
 | 
						|
            'Map',
 | 
						|
            'List',
 | 
						|
            'OrderedSet',
 | 
						|
            'is',
 | 
						|
            'Stack',
 | 
						|
          ],
 | 
						|
          'node_modules/immutable/dist/immutable.js': ['Record', 'Set', 'Map', 'List', 'OrderedSet', 'is', 'Stack'],
 | 
						|
          '../../node_modules/esrever/esrever.js': ['reverse'],
 | 
						|
          '../../node_modules/react-table/index.js': [
 | 
						|
            'useTable',
 | 
						|
            'useSortBy',
 | 
						|
            'useBlockLayout',
 | 
						|
            'Cell',
 | 
						|
            'useResizeColumns',
 | 
						|
            'useAbsoluteLayout',
 | 
						|
            'useFilters',
 | 
						|
          ],
 | 
						|
          '../../node_modules/react-is/index.js': ['isValidElementType', 'isContextConsumer'],
 | 
						|
        },
 | 
						|
      }),
 | 
						|
      resolve(),
 | 
						|
      // sourceMaps(),
 | 
						|
      image(),
 | 
						|
      env === 'production' && terser(),
 | 
						|
    ],
 | 
						|
  };
 | 
						|
};
 | 
						|
export default [buildCjsPackage({ env: 'development' }), buildCjsPackage({ env: 'production' })];
 |