0.2.0 • Published 1 year ago

@axel669/rollup-copy-static v0.2.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

rollup-copy-static

Small plugin to copy static files when building with rollup.

Installation

yarn add @axel669/rollup-copy-static

Usage

Default export is a function that takes any number of sources to copy files from. If an argument is a string, the library globs for **/* inside the folder and copies the files into the output directory. Alternatively an argument can be an object with a glob property and an optional dir property. If the glob argument is used, any part of the path that is in the blob will be in the relative destination path.

import copy from "@axel669/rollup-copy-static"

export default {
    input: "app/main.mjs",
    output: {
        file: "build/app.mjs",
        format: "esm",
    },
    plugins: [
        copy(
            // Same as { glob: "**/*", dir: "static" }
            // Copies all the files in the static dir and puts them at the top
            // level of the build dir
            "static",
            // copies css files in the extra dir into build/extra/*.css
            { glob: "extra/*.css" },
            // Copies all js files in the scripts dir into the build dir at
            // the top level
            { glob: "**/*.js", dir: "scripts" }
        )
    ]
}

Example

Source Files + example config above

src
├──┬ app
│  ├─── main.js
├──┬ static
│  ├─── image.jpg
│  └─── banner.png
├──┬ extra
│  ├─── notes.txt
│  └─── styles.css
└──┬ scripts
   ├─── windstorm.js
   └─── libs.json

"static"
    -> ["image.jpg", "banner.jpg"]
{ glob: "extra/*.css" }
    -> ["extra/styles.css"]
{ glob: "**/*.js", dir: "scripts" }
    -> ["windstorm.js"]

build
├─── banner.jpg
├──┬ extra
│  ├─── notes.txt
│  └─── styles.css
├─── image.jpg
├─── main.js
├─── windstorm.js

Credits

Bayonetta Image (in test folder): Aleksandra Skiba

0.2.0

1 year ago

0.2.0-beta.0

1 year ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago