123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218 |
- import fs from "fs";
- import dts from "rollup-plugin-dts";
- import typescript from "@rollup/plugin-typescript";
- import terser from "@rollup/plugin-terser";
- const licenseHeaderES3 = fs.readFileSync("src/license_header.es3.txt", { encoding: "utf8" }),
- licenseHeaderES6 = fs.readFileSync("src/license_header.es6.txt", { encoding: "utf8" });
- export default [
- {
- input: "src/sha.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES3,
- format: "umd",
- sourcemap: true,
- dir: "dist",
- entryFileNames: "[name].js",
- },
- plugins: [
- typescript({ lib: ["es6"], declaration: true, declarationDir: "dist/types", target: "es3" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "src/sha.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES6,
- format: "es",
- sourcemap: true,
- file: "dist/sha.mjs",
- },
- plugins: [
- typescript({ lib: ["es6"], target: "es6" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "dist/types/src/sha.d.ts",
- output: [{ file: "dist/sha.d.ts", format: "umd" }],
- plugins: [dts()],
- },
- {
- input: "src/sha1.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES3,
- format: "umd",
- file: "dist/sha1.js",
- },
- plugins: [
- typescript({ lib: ["es6"], target: "es3" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "src/sha1.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES6,
- format: "es",
- file: "dist/sha1.mjs",
- },
- plugins: [
- typescript({ lib: ["es6"], target: "es6" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "dist/types/src/sha1.d.ts",
- output: [{ file: "dist/sha1.d.ts", format: "umd" }],
- plugins: [dts()],
- },
- {
- input: "src/sha256.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES3,
- format: "umd",
- file: "dist/sha256.js",
- },
- plugins: [
- typescript({ lib: ["es6"], target: "es3" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "src/sha256.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES6,
- format: "es",
- file: "dist/sha256.mjs",
- },
- plugins: [
- typescript({ lib: ["es6"], target: "es6" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "dist/types/src/sha256.d.ts",
- output: [{ file: "dist/sha256.d.ts", format: "umd" }],
- plugins: [dts()],
- },
- {
- input: "src/sha512.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES3,
- format: "umd",
- file: "dist/sha512.js",
- },
- plugins: [
- typescript({ lib: ["es6"], target: "es3" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "src/sha512.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES6,
- format: "es",
- file: "dist/sha512.mjs",
- },
- plugins: [
- typescript({ lib: ["es6"], target: "es6" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "dist/types/src/sha512.d.ts",
- output: [{ file: "dist/sha512.d.ts", format: "umd" }],
- plugins: [dts()],
- },
- {
- input: "src/sha3.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES3,
- format: "umd",
- file: "dist/sha3.js",
- },
- plugins: [
- typescript({ lib: ["es6"], target: "es3" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "src/sha3.ts",
- output: {
- name: "jsSHA",
- banner: licenseHeaderES6,
- format: "es",
- file: "dist/sha3.mjs",
- },
- plugins: [
- typescript({ lib: ["es6"], target: "es6" }),
- terser({
- output: { comments: /BSD/ },
- mangle: {
- properties: { keep_quoted: true, reserved: ["jsSHA", "getHash", "setHMACKey", "getHMAC", "update"] },
- },
- }),
- ],
- },
- {
- input: "dist/types/src/sha3.d.ts",
- output: [{ file: "dist/sha3.d.ts", format: "umd" }],
- plugins: [dts()],
- },
- ];
|