asset-versioning
Version your assets by appending a hash to the filename.
Last updated 2 years ago by yuanqing .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install asset-versioning 
SYNC missed versions from official npm registry.

asset-versioning npm Version Build Status

Version your assets by appending a hash to the filename.

Usage

$ asset-versioning build 'css/**/*.css' 'js/**/*.js' --outputDirectory build | asset-versioning replace 'build/**/*'

Or, equivalently, using the API:

const assetVersioning = require('asset-versioning')

async function run () {
  const manifest = await assetVersioning.build(['css/**/*.css', 'js/**/*.js'], {
    outputDirectory: 'build'
  })
  assetVersioning.replace(['build/**/*'], manifest)
}
run()

CLI

Build

$ asset-versioning build --help

Usage: asset-versioning build [globs] [options]

Versions the files matched by globs. Writes a JSON object mapping
the original filenames to the versioned filenames to stdout.

Globs:
  One or more globs.

Options:
  -b, --baseDirectory BASE_DIRECTORY  Base directory to perform the
                                      globbing. Defaults to './'.
  -o, --outputDirectory OUTPUT_DIRECTORY  Directory to output the
                                          versioned files. Defaults
                                          to './build'.
  -h, --help  Print this message.

Example:
  asset-versioning build 'css/**/*.css' 'js/**/*.js' --outputDirectory build > manifest.json

Replace

$ asset-versioning replace --help

Usage: asset-versioning replace [globs] [options]

Replaces original filenames with their versioned filenames (as
specified in a manifest) in the files matched by globs. Ignores
binary files matched by the globs.

Globs:
  One or more globs.

Options:
  -b, --baseDirectory BASE_DIRECTORY  Base directory to perform the
                                      globbing. Defaults to './'.
  -m, --manifestFile MANIFEST_FILE  A JSON file mapping the original
                                    filenames to the versioned
                                    filenames. Read from stdin if
                                    this is not specified.
  -h, --help  Print this message.

Example:
  asset-versioning replace 'build/**/*' --manifestFile manifest.json

API

const assetVersioning = require('asset-versioning')

assetVersioning.build(globs [, options])

Versions the files matched by globs. Returns a Promise for an object mapping the original filenames to the versioned filenames.

  • globs is an array of one or more globs.

  • options is an object literal:

    Key Description Default
    baseDirectory Base directory to perform the globbing. process.cwd()
    outputDirectory Directory to output the versioned files. ./build

assetVersioning.replace(globs, manifest [, options])

Replaces original filenames with their versioned filenames (as specified in the manifest) in the files matched by globs. Ignores binary files matched by the globs.

  • globs is an array of one or more globs.

  • manifest is an object mapping the original filenames to the versioned filenames.

  • options is an object literal:

    Key Description Default
    baseDirectory Base directory to perform the globbing. process.cwd()

Installation

Install via yarn:

$ yarn add --dev asset-versioning

Or npm:

$ npm install --save-dev asset-versioning

License

MIT

Current Tags

  • 0.0.3                                ...           latest (2 years ago)

3 Versions

  • 0.0.3                                ...           2 years ago
  • 0.0.2                                ...           2 years ago
  • 0.0.1                                ...           2 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (6)
Dev Dependencies (5)
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |