gulp-rollup-file

raw JSON →
0.1.5 verified Mon Apr 27 auth: no javascript maintenance

Gulp wrapper around rollup-plugin-file that allows passing a file (or vinyl) entry point to Rollup instead of a string. Version 0.1.5, last updated in 2019. Designed for use with gulp-process-inline to process inline script blocks in HTML. Provides a bridge between Gulp's vinyl streams and Rollup's bundling pipeline. Differentiator: enables Rollup to consume Gulp-processed files directly without intermediate file system writes.

error Cannot find module 'rollup-plugin-file'
cause Missing peer dependency rollup-plugin-file
fix
npm install --save-dev rollup-plugin-file
error TypeError: rollup is not a function
cause Incorrect import (using named export where default was expected)
fix
Use import rollup from 'gulp-rollup-file' (default export) instead of import { rollup } from 'gulp-rollup-file'
deprecated Project has no tests and no updates since 2019.
fix Consider using gulp-rollup directly or rollup-plugin-file with a custom wrapper.
gotcha Requires rollup-plugin-file to be installed as a peer dependency.
fix Install rollup-plugin-file alongside gulp-rollup-file: npm install --save-dev rollup-plugin-file
npm install gulp-rollup-file
yarn add gulp-rollup-file
pnpm add gulp-rollup-file

Shows how to use gulp-rollup-file with gulp-process-inline to bundle inline scripts from HTML files into a single file.

import gulp from 'gulp';
import rollup from 'gulp-rollup-file';
import processInline from 'gulp-process-inline';

gulp.task('inline-rollup', () => {
  return gulp.src('./src/*.html')
    .pipe(processInline().extract('script'))
    .pipe(rollup({ format: 'iife' }))
    .pipe(processInline().restore())
    .pipe(gulp.dest('./dist/'));
});