rev-rewriter

1.3.1 • Public • Published

rev-rewriter

input revMap and string, output string replaced based on revMap

usage

I'm too lazy to write the doc, if you want to use it you can refer to test/rewrite plz, here's the whole file ;)

'use strict';
var tape = require('tape');
var rewrite = require('../');

tape('keep original', function (t) {
    t.plan(1);
    var original = '<script src="/assets/a.js"></script>';
    var result = rewrite({}, original);
    t.equal(result, original);
});

tape('replace with revMap without leading slash', function (t) {
    t.plan(1);
    var original = '<script src="/assets/a.js"></script>';
    var result = rewrite({
        revMap: {
            'a.js': 'b.js'
        }
    }, original);
    t.equal(result, '<script src="b.js"></script>');
});

tape('replace with revMap and assetPathPrefix and leading slash', function (t) {
    t.plan(1);
    var original = '<script src="/static/a.js"></script>';
    var result = rewrite({
        assetPathPrefix: '/static',
        revMap: {
            '/a.js': '/b.js'
        }
    }, original);
    t.equal(result, '<script src="/b.js"></script>');
});

tape('with all options set', function (t) {
    t.plan(1);
    var original = '<script src="/static/a.js"></script>';
    var result = rewrite({
        assetPathPrefix: '/static',
        revMap: {
            '/a.js': '/b.js'
        },
        revPost: function(revvedFilePath) {
            return '/assets' + revvedFilePath;
        }
    }, original);
    t.equal(result, '<script src="/assets/b.js"></script>');
});

tape('no need to match in revMap, revPost still apply', function (t) {
    t.plan(1);
    var original = '<script src="/static/a.js"></script>';
    var result = rewrite({
        assetPathPrefix: '/static',
        revPost: function(revvedFilePath) {
            return '/assets' + revvedFilePath;
        }
    }, original);
    t.equal(result, '<script src="/assets/a.js"></script>');
});

Readme

Keywords

Package Sidebar

Install

npm i rev-rewriter

Weekly Downloads

0

Version

1.3.1

License

MIT

Last publish

Collaborators

  • undozen