157 lines
3.8 KiB
JavaScript
157 lines
3.8 KiB
JavaScript
import typescript from "@rollup/plugin-typescript";
|
|
import resolve from "@rollup/plugin-node-resolve";
|
|
import babel from "@rollup/plugin-babel";
|
|
import { terser } from "rollup-plugin-terser";
|
|
|
|
export default [
|
|
// Configuración para la carpeta lib
|
|
{
|
|
input: {
|
|
index: "src/lib/index.ts",
|
|
iconBase: "src/lib/iconBase.tsx",
|
|
iconContext: "src/lib/iconContext.tsx",
|
|
},
|
|
output: {
|
|
dir: "dist/lib",
|
|
format: "es",
|
|
sourcemap: false,
|
|
entryFileNames: "[name].js",
|
|
},
|
|
plugins: [
|
|
resolve(),
|
|
babel({
|
|
extensions: [".js", ".jsx", ".ts", ".tsx"],
|
|
babelHelpers: "bundled",
|
|
presets: ["@babel/preset-typescript", "@babel/preset-react"],
|
|
}),
|
|
typescript({
|
|
tsconfig: "./tsconfig.json",
|
|
rootDir: "src/lib",
|
|
outDir: "dist/lib",
|
|
declarationDir: "dist/lib",
|
|
declaration: true,
|
|
}),
|
|
terser(),
|
|
],
|
|
external: ["react"],
|
|
},
|
|
// Configuración para los iconos generales
|
|
{
|
|
input: {
|
|
fa: "src/fa/index.ts",
|
|
fc: "src/fc/index.ts",
|
|
rx: "src/rx/index.ts",
|
|
tfi: "src/tfi/index.ts",
|
|
},
|
|
output: {
|
|
dir: "dist",
|
|
format: "es",
|
|
sourcemap: false,
|
|
entryFileNames: "[name]/index.js",
|
|
},
|
|
plugins: [
|
|
resolve(),
|
|
babel({
|
|
extensions: [".js", ".jsx", ".ts", ".tsx"],
|
|
babelHelpers: "bundled",
|
|
presets: ["@babel/preset-typescript", "@babel/preset-react"],
|
|
}),
|
|
typescript({
|
|
tsconfig: "./tsconfig.json",
|
|
rootDir: "src",
|
|
outDir: "dist",
|
|
declarationDir: "dist",
|
|
declaration: true,
|
|
}),
|
|
terser(),
|
|
],
|
|
external: ["react", "../lib"],
|
|
},
|
|
// Configuración para los iconos hi
|
|
{
|
|
input: {
|
|
solid: "src/hi/solid/index.ts",
|
|
outline: "src/hi/outline/index.ts",
|
|
},
|
|
output: {
|
|
dir: "dist/hi",
|
|
format: "es",
|
|
sourcemap: false,
|
|
entryFileNames: "[name]/index.js",
|
|
},
|
|
plugins: [
|
|
resolve(),
|
|
babel({
|
|
extensions: [".js", ".jsx", ".ts", ".tsx"],
|
|
babelHelpers: "bundled",
|
|
presets: ["@babel/preset-typescript", "@babel/preset-react"],
|
|
}),
|
|
typescript({
|
|
tsconfig: "./tsconfig.json",
|
|
declaration: true,
|
|
rootDir: "src",
|
|
outDir: "dist/hi",
|
|
declarationDir: "dist/hi",
|
|
include: ["src/hi/**/*", "src/lib/**/*"],
|
|
}),
|
|
terser(),
|
|
],
|
|
external: ["react", "../../lib"],
|
|
},
|
|
// Configuración para el archivo principal en hi
|
|
{
|
|
input: "src/hi/index.ts",
|
|
output: {
|
|
file: "dist/hi/index.js",
|
|
format: "es",
|
|
sourcemap: false,
|
|
},
|
|
plugins: [
|
|
resolve({
|
|
extensions: [".js", ".jsx", ".ts", ".tsx"],
|
|
}),
|
|
babel({
|
|
extensions: [".js", ".jsx", ".ts", ".tsx"],
|
|
babelHelpers: "bundled",
|
|
presets: ["@babel/preset-typescript", "@babel/preset-react"],
|
|
}),
|
|
typescript({
|
|
tsconfig: "./tsconfig.json",
|
|
declaration: true,
|
|
rootDir: "src",
|
|
outDir: "dist/hi",
|
|
declarationDir: "dist/hi",
|
|
include: ["src/hi/index.ts", "src/lib/**/*"],
|
|
}),
|
|
terser(),
|
|
],
|
|
external: ["react", "../../lib", "./solid", "./outline"],
|
|
},
|
|
// Configuración para el archivo principal en dist/
|
|
{
|
|
input: "src/index.ts",
|
|
output: {
|
|
file: "dist/index.js",
|
|
format: "es",
|
|
sourcemap: false,
|
|
},
|
|
plugins: [
|
|
resolve(),
|
|
babel({
|
|
extensions: [".js", ".jsx", ".ts", ".tsx"],
|
|
babelHelpers: "bundled",
|
|
presets: ["@babel/preset-typescript", "@babel/preset-react"],
|
|
}),
|
|
typescript({
|
|
tsconfig: "./tsconfig.json",
|
|
rootDir: "src",
|
|
outDir: "dist",
|
|
declarationDir: "dist",
|
|
declaration: true,
|
|
}),
|
|
terser(),
|
|
],
|
|
external: ["react"],
|
|
},
|
|
];
|