我的node项目首次提交!!!
This commit is contained in:
44
node_modules/fast-redact/lib/parse.js
generated
vendored
Normal file
44
node_modules/fast-redact/lib/parse.js
generated
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
'use strict'
|
||||
|
||||
const rx = require('./rx')
|
||||
|
||||
module.exports = parse
|
||||
|
||||
function parse ({ paths }) {
|
||||
const wildcards = []
|
||||
var wcLen = 0
|
||||
const secret = paths.reduce(function (o, strPath, ix) {
|
||||
var path = strPath.match(rx).map((p) => p.replace(/'|"|`/g, ''))
|
||||
const leadingBracket = strPath[0] === '['
|
||||
path = path.map((p) => {
|
||||
if (p[0] === '[') return p.substr(1, p.length - 2)
|
||||
else return p
|
||||
})
|
||||
const star = path.indexOf('*')
|
||||
if (star > -1) {
|
||||
const before = path.slice(0, star)
|
||||
const beforeStr = before.join('.')
|
||||
const after = path.slice(star + 1, path.length)
|
||||
const nested = after.length > 0
|
||||
wcLen++
|
||||
wildcards.push({
|
||||
before,
|
||||
beforeStr,
|
||||
after,
|
||||
nested
|
||||
})
|
||||
} else {
|
||||
o[strPath] = {
|
||||
path: path,
|
||||
val: undefined,
|
||||
precensored: false,
|
||||
circle: '',
|
||||
escPath: JSON.stringify(strPath),
|
||||
leadingBracket: leadingBracket
|
||||
}
|
||||
}
|
||||
return o
|
||||
}, {})
|
||||
|
||||
return { wildcards, wcLen, secret }
|
||||
}
|
||||
Reference in New Issue
Block a user