2.0.4 • Published 6 years ago
srify v2.0.4
srify
Adds computed integrity attributes to same domain external script and stylesheet tags on html markup.
Install
npm install srifyUsage
CLI
srify build/index.html
srify --helpNode.js
const srify = require('srify')
const markup = `
<html>
<head>
<link rel="stylesheet" href="/style.css" />
<link rel="stylesheet" href="https://some.cdn/style.css" />
<script src="https://some.cdn/script.js"></script>
</head>
<body>
<script src="/script.js"></script>
</body>
</html>
`
const markupSrified = srify(markup, {
style: true, // default
script: true, // default
algorithm: 'sha384', // default
baseDir: 'build/assets' // default: ''
})
console.log(markupSrified)output:
<html>
<head>
<link rel="stylesheet" href="/style.css" integrity="sha384-OHOO3P0V8mBnd24oTanI8YyewsyftnJMiEZs6HkCBi+OwqzBuXhdF/2SkMK4BIGZ" />
<link rel="stylesheet" href="https://some.cdn/style.css" />
<script src="https://some.cdn/script.js"></script>
</head>
<body>
<script src="/script.js" integrity="sha384-Hu7SkqY3fsGrlxpcjDcNGNyTFizFfXWWga1eZACsk/MGVg1IUN/4VtNQb+fi7hrd"></script>
</body>
</html>Test
npm testChange log
2.0.3: fix<noscript>regex2.0.2: properly handle<link>tags inside<noscript>(removed)2.0.1: xxxxxxxx xxxxxx xxxx xxxxxx2.0.0: add CLI command, change options defaults1.0.1: fix main entry inpackage.json1.0.0: initial release