UNPKG

@ui5/task-adaptation

Version:

Custom task for ui5-builder which allows building UI5 Flexibility Adaptation Projects for SAP BTP, Cloud Foundry environment

36 lines (32 loc) 1.09 kB
import * as rollup from "rollup"; import * as builtins from "builtin-modules"; import ui5 from "./ui5Resolve.js"; import { nodeResolve } from "@rollup/plugin-node-resolve"; export default abstract class Bundler { static async run(resources: Map<string, any>, input: string, output: string, skipTransformation: string[] = []): Promise<void> { if (!skipTransformation.includes(input)) { skipTransformation.push(input); } const inputOptions = <rollup.RollupOptions>{ input, plugins: [ ui5({ resources, skipTransformation, output }), nodeResolve({ preferBuiltins: true }) ], external: builtins }; const bundle = await rollup.rollup(inputOptions); const outputOptions = <rollup.RollupOptions>{ file: output, format: "esm" }; await bundle.write(outputOptions); await bundle.close(); } }