| 123456789101112131415161718192021222324252627 |
- const { URL } = require('url')
- const replace = '***'
- const tokenRegex = /\bnpm_[a-zA-Z0-9]{36}\b/g
- const guidRegex = /\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/g
- const cleanUrl = (str) => {
- if (typeof str !== 'string' || !str) {
- return str
- }
- try {
- const url = new URL(str)
- if (url.password) {
- url.password = replace
- str = url.toString()
- }
- } catch {
- // ignore errors
- }
- return str
- .replace(tokenRegex, `npm_${replace}`)
- .replace(guidRegex, `npm_${replace}`)
- }
- module.exports = cleanUrl
|