@heroku-cli/plugin-certs-v5
Version:
heroku ssl plugin
19 lines (14 loc) • 516 B
JavaScript
let isWildcard = require('./is_wildcard')
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions
function escapeRegExp(string) {
return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&') // $& means the whole matched string
}
module.exports = function (wildcard, hostname) {
if (!isWildcard(wildcard)) {
return false
}
let baseDomain = wildcard.slice(2)
let regex = new RegExp(`^[a-zA-Z0-9_-]+\\.${escapeRegExp(baseDomain)}$`)
return hostname.match(regex)
}