Big news!Introducing Socket AI - ChatGPT-Powered Threat Analysis. Learn more
Socket
Log inDemoInstall

gulp-fingerprint

Package Overview
Dependencies
6
Maintainers
1
Versions
9
Issues
File Explorer

Advanced tools

gulp-fingerprint

Rename assets with fingerprinted assets

    1.0.0latest
    GitHub

Version published
Maintainers
1
Weekly downloads
761
decreased by-13.33%

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 installs a Github app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.

Install Socket
Socket
support@socket.devSocket SOC 2 Logo

Product

  • Package Issues
  • 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