JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 812
  • Score
    100M100P100Q96408F
  • License MIT

Substitute a webpack-style hash template string. [hash:7]->abcdefg

Package Exports

  • hash-replace

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (hash-replace) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Build Status Coverage

hash-replace

Substitute a webpack-style hash template string.

Install

$ npm install hash-replace --save

Usage

import replace from 'hash-replace'
const r = replace('hash')

// example-1
// only replace [hash], but not [chunkhash]
r('file.[hash:7].[chunkhash]', 'aGFzaC1yZXBsYWNl')
// -> 'file.aGFzaC1.[chunkhash]'

// example-2
// If the second argument is null, then it will generate hash from the
// value of the third argument
r('file.[hash:7].js', null, '1234567')
// -> 'file.fcea920.js'

replace(hashName)(template, replacer, content)

  • hashName String
  • template String
    • hashType String=md5 defaults to 'md5'
    • hashName String if the value of template.hashName and hashName not matches, the template will not be substituted.
    • digestType String=hex defaults to 'hex'
    • maxLength Number=Number.POSITIVE_INFINITY maximum length of the hash. If unset, there will no limit.

The template has the following structure:

'[hash]'
'[hashName:maxLength]'
'[hashType:hashName:digestType]'
'[hashType:hashName:digestType:maxLength]'

And example-2 is equivalent to:

r('file.[md5#️⃣hex:7].js', null, '1234567')
  • replacer String=|function(match, hashType, digestType, length)=
const r = replace('contenthash')
const filename =
  r('file.[contenthash:7].js', null, fileContent)
  • content String=|Buffer= If replacer is unset, it will try to digest the content to get the crypted hash.

License

MIT