extract css by rollup plugin

This commit is contained in:
Yanzhen Yu
2026-04-01 12:00:00 +08:00
parent d1baeff34f
commit b6d8a7dc95
3 changed files with 42 additions and 5 deletions

View File

@@ -43,6 +43,7 @@
"puppeteer": "^1.9.0", "puppeteer": "^1.9.0",
"rollup": "^0.66.6", "rollup": "^0.66.6",
"rollup-plugin-node-resolve": "^3.4.0", "rollup-plugin-node-resolve": "^3.4.0",
"rollup-plugin-postcss": "^1.6.2",
"rollup-plugin-terser": "^3.0.0", "rollup-plugin-terser": "^3.0.0",
"rollup-plugin-typescript": "^1.0.0", "rollup-plugin-typescript": "^1.0.0",
"ts-node": "^7.0.1", "ts-node": "^7.0.1",

View File

@@ -1,6 +1,7 @@
import typescript from 'rollup-plugin-typescript'; import typescript from 'rollup-plugin-typescript';
import resolve from 'rollup-plugin-node-resolve'; import resolve from 'rollup-plugin-node-resolve';
import { terser } from 'rollup-plugin-terser'; import { terser } from 'rollup-plugin-terser';
import postcss from 'rollup-plugin-postcss';
import pkg from './package.json'; import pkg from './package.json';
function toRecordPath(path) { function toRecordPath(path) {
@@ -72,7 +73,13 @@ export default [
// browser // browser
{ {
input: './src/index.ts', input: './src/index.ts',
plugins: [typescript(), resolve()], plugins: [
typescript(),
resolve(),
postcss({
extract: false,
}),
],
output: [ output: [
{ {
name: 'rrweb', name: 'rrweb',
@@ -83,7 +90,16 @@ export default [
}, },
{ {
input: './src/index.ts', input: './src/index.ts',
plugins: [typescript(), resolve(), terser()], plugins: [
typescript(),
resolve(),
postcss({
extract: true,
minimize: true,
sourceMap: 'inline',
}),
terser(),
],
output: [ output: [
{ {
name: 'rrweb', name: 'rrweb',
@@ -95,7 +111,13 @@ export default [
// CommonJS // CommonJS
{ {
input: './src/index.ts', input: './src/index.ts',
plugins: [typescript(), resolve()], plugins: [
typescript(),
resolve(),
postcss({
extract: false,
}),
],
output: [ output: [
{ {
format: 'cjs', format: 'cjs',
@@ -106,7 +128,13 @@ export default [
// ES module // ES module
{ {
input: './src/index.ts', input: './src/index.ts',
plugins: [typescript(), resolve()], plugins: [
typescript(),
resolve(),
postcss({
extract: false,
}),
],
output: [ output: [
{ {
format: 'esm', format: 'esm',
@@ -116,7 +144,14 @@ export default [
}, },
{ {
input: './src/index.ts', input: './src/index.ts',
plugins: [typescript(), resolve(), terser()], plugins: [
typescript(),
resolve(),
postcss({
extract: false,
}),
terser(),
],
output: [ output: [
{ {
format: 'esm', format: 'esm',

View File

@@ -16,6 +16,7 @@ import {
missingNode, missingNode,
} from '../types'; } from '../types';
import { mirror } from '../utils'; import { mirror } from '../utils';
import './styles/style.css';
// https://github.com/rollup/rollup/issues/1267#issuecomment-296395734 // https://github.com/rollup/rollup/issues/1267#issuecomment-296395734
// tslint:disable-next-line // tslint:disable-next-line