rollup.ugfi.js 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. import { name } from '../package.json'
  2. import { resolve } from 'path'
  3. import react from 'react';
  4. import reactDom from 'react-dom';
  5. import typescript from 'rollup-plugin-typescript'
  6. import postcss from 'rollup-plugin-postcss';
  7. import simplevars from 'postcss-simple-vars';
  8. import nested from 'postcss-nested';
  9. import cssnext from 'postcss-cssnext';
  10. import nodeResolve from 'rollup-plugin-node-resolve'
  11. import commonjs from 'rollup-plugin-commonjs'
  12. import amd from 'rollup-plugin-amd'
  13. import replace from 'rollup-plugin-replace'
  14. import json from '@rollup/plugin-json';
  15. import builtins from 'rollup-plugin-node-builtins';
  16. import {uglify} from "rollup-plugin-uglify";
  17. export default {
  18. // 入口文件
  19. input: resolve(__dirname, '../src/index.ts'),
  20. plugins: [
  21. // tsx(),
  22. nodeResolve({
  23. browser: true
  24. }),
  25. postcss({
  26. extensions: ['.css'],
  27. extract: true,
  28. extract: 'wotu-ui.css',
  29. plugins: [
  30. simplevars(),
  31. nested(),
  32. cssnext({ warnForDuplicates: false, }),
  33. // cssnano()
  34. ]
  35. }),
  36. typescript({
  37. "include": [
  38. "./src/**/*.ts",
  39. "./src/**/*.tsx"
  40. ],
  41. "exclude": [
  42. "./dist",
  43. "./node_modules"
  44. ]
  45. }),
  46. commonjs({
  47. include: 'node_modules/**',
  48. namedExports: {
  49. 'node_modules/react-is/index.js': ['isFragment', 'ForwardRef', 'isMemo'],
  50. react: Object.keys(react),
  51. 'react-dom': Object.keys(reactDom)
  52. }
  53. }),
  54. replace({
  55. 'process.env.NODE_ENV': JSON.stringify('development')
  56. }),
  57. // amd({
  58. // include: 'src/**', // Optional, Default: undefined (everything)
  59. // // exclude: ['node_modules/**'], // Optional, Default: undefined (nothing)
  60. // converter: {}, // Optional, Default: undefined
  61. // rewire: function (moduleId, parentPath) { // Optional, Default: false
  62. // return './basePath/' + moduleId;
  63. // }
  64. // }),
  65. json(),
  66. builtins(),
  67. uglify()
  68. ],
  69. output: {
  70. // 打包名称
  71. name: name,
  72. exports: 'named',
  73. sourcemap: true,
  74. file: resolve(__dirname, `../dist/${name}.js`),
  75. format: 'amd',
  76. },
  77. }