Socket
Socket
Sign inDemoInstall

gulp-fingerprint

Package Overview
Dependencies
39
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    gulp-fingerprint

Rename assets with fingerprinted assets


Version published
Weekly downloads
367
decreased by-30.49%
Maintainers
1
Install size
709 kB
Created
Weekly downloads
 

Readme

Source

gulp-fingerprint Build Status

Install

$ npm install --save-dev gulp-fingerprint

Usage

Update a source file with fingerprinted assets.

var gulp = require('gulp');
var fingerprint = require('gulp-fingerprint');

// rev-manifest.json produced from gulp-rev
var manifest = require('../../dist/rev-manifest');

gulp.task('default', function () {
  var options = {
    base: 'assets/',
    prefix: '//cdn.example.com/',
    verbose: true
  };

  return gulp.src('.tmp/styles/app.css')
    .pipe(fingerprint(manifest, options))
    .pipe(gulp.dest('dist'));
  });

API

fingerprint(manifest, [options])

manifest

Type: object, string

Example: rev-manifest.json produced from using gulp-rev

{
  "images/logo.jpg": "images/logo-2d4a1176.jpg",
  "images/some-image.png": "images/some-image-abd84705.png",
  "images/some-logo2.png": "images/some-logo2-abd84715.png"
}

If a string is passed in as the manifest, gulp-fingerprint will interpret this as a path and automatically require the json file.

options
mode

Type: string

Default: regex

Usage: Setting a mode will change the method of url replacing. There are two methods: regex and replace. The replace method is less accurate but doesn't require specifying a regular expression.

regex

Type: RegExp

Usage: Sets a custom regex to match on your file.

_ Note The default regex, /(?:url\(["']?(.*?)['"]?\)|src=["'](.*?)['"]|src=([^\s\>]+)(?:\>|\s)|href=["'](.*?)['"]|href=([^\s\>]+)(?:\>|\s))/g, will match:

  • url('path/to/resource')
  • url("path/to/resource")
  • url(path/to/resource)
  • href='path/to/resource'
  • href="path/to/resource"
  • href=path/to/resource
  • src='path/to/resource'
  • src="path/to/resource"
  • src=path/to/resource
prefix

Type: string

Usage: Setting a prefix will prepend the string to a match in the src

...
.pipe(fingerprint(manifest, {prefix: '//cdn.example.com/'}))
...
// Original: `background-image: url("/images/some-logo.png");`
// Replaced: `background-image: url("//cdn.example.com/images/logo-2d4a1176.jpg");` in src file
base

Type: string

Usage: Setting a base will remove that string from the beginning of a match in the src

...
.pipe(fingerprint(manifest, {base: 'assets/'}))
...

// Original: `background-image: url("assets/images/some-logo2.png");`
// Replaced: `background-image: url("images/some-logo2-abd84715.png");` in src file
strip

Type: string

Usage: Setting a strip will remove that string from the beginning of a result path

...
.pipe(fingerprint(manifest, {strip: 'images/'}))
...

// Original: `background-image: url("/images/some-logo2.png");`
// Replaced: `background-image: url("some-logo2-abd84715.png");` in src file
verbose

Type: boolean

Usage: Outputs to stdout.


[gulp] gulp-fingerprint Found: images/some-logo.png
[gulp] gulp-fingerprint Replaced:   background-image: url("//cdn.example.com/images/logo-2d4a1176.jpg"); }

License

MIT © Vincent Mac

Keywords

FAQs

Last updated on 21 Aug 2019

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc