html2pdf-fix-jspdf
Version:
Client-side HTML-to-PDF rendering using pure JS
110 lines (107 loc) • 3.06 kB
JavaScript
// Import dependencies.
import resolve from "rollup-plugin-node-resolve";
import commonjs from "rollup-plugin-commonjs";
import replace from "rollup-plugin-replace";
import babel from "rollup-plugin-babel";
import uglify from "rollup-plugin-uglify";
import pkg from "./package.json";
function banner() {
var text = pkg.name + " v" + pkg.version + "\n";
text += "Copyright (c) " + new Date().getFullYear() + " Erik Koopmans\n";
text += "Released under the " + pkg.license + " License.";
text = "/**\n * " + text.replace(/\n/g, "\n * ") + "\n */";
return { banner: text };
}
function license(filename) {
filename = filename || "./LICENSE";
var data = fs.readFileSync(filename).toString();
data =
"/**\n * @license\n * " + data.trim().replace(/\n/g, "\n * ") + "\n */\n";
return { banner: data };
}
export default [
// Un-bundled builds.
{
name: "html2pdf",
input: "src/index.js",
output: [
{ file: pkg.main, format: "cjs" },
{ file: pkg.module, format: "es" },
{ file: pkg.browser, format: "umd" }
],
external: ["jspdf-fix-html2pdf", "html2canvas"],
globals: {
"es6-promise": "es6promise",
"jspdf-fix-html2pdf": "jsPDF",
html2canvas: "html2canvas"
},
plugins: [
resolve(),
commonjs(),
replace({ "process.env.NODE_ENV": JSON.stringify("production") }),
babel({ exclude: "node_modules/**" }),
banner()
]
},
// Un-bundled builds (minified).
{
name: "html2pdf",
input: "src/index.js",
output: [{ file: pkg.browser.replace(/js$/, "min.js"), format: "umd" }],
external: ["jspdf-fix-html2pdf", "html2canvas"],
globals: {
"es6-promise": "es6promise",
"jspdf-fix-html2pdf": "jsPDF",
html2canvas: "html2canvas"
},
plugins: [
resolve(),
commonjs(),
replace({ "process.env.NODE_ENV": JSON.stringify("production") }),
babel({ exclude: "node_modules/**" }),
uglify({
output: { preamble: banner().banner }
})
]
},
// Bundled builds.
{
name: "html2pdf",
input: "src/index.js",
output: [{ file: pkg.browser.replace(/js$/, "bundle.js"), format: "umd" }],
globals: {
"es6-promise": "es6promise",
"jspdf-fix-html2pdf": "jsPDF",
html2canvas: "html2canvas"
},
plugins: [
resolve(),
commonjs(),
replace({ "process.env.NODE_ENV": JSON.stringify("production") }),
babel({ exclude: "node_modules/**" }),
banner()
]
},
// Bundled builds (minified).
{
name: "html2pdf",
input: "src/index.js",
output: [
{ file: pkg.browser.replace(/js$/, "bundle.min.js"), format: "umd" }
],
globals: {
"es6-promise": "es6promise",
"jspdf-fix-html2pdf": "jsPDF",
html2canvas: "html2canvas"
},
plugins: [
resolve(),
commonjs(),
replace({ "process.env.NODE_ENV": JSON.stringify("production") }),
babel({ exclude: "node_modules/**" }),
uglify({
output: { preamble: banner().banner }
})
]
}
];