kenote-node-utils
Node.js Utils
Engines
Node.js
>=8.0.0
Install
yarn add kenote-node-utils
Features
- loadConfig
- getMongooseOptions
- md5
- sha1
- encryptPwd
- validPassword
- isAccess
- callback
- isNull
- checkLength
- isPattern
- validRule
- filterData
loadConfig
config.json
config.ini
; Configure Production HOST = 0.0.0.0PORT = 4000
app.js
const configJson = /*{ HOST: '0.0.0.0', POST: 4000}*/ const configIni = /*{ HOST: '0.0.0.0', POST: 4000}*/
getMongooseOptions
app.js
const mongoUri = 'mongodb://localhost:27017/collection-name'const options = mongoose
md5, sha1
app.js
const md5String = utilsconst sha1String = utils console
encryptPwd
app.js
const salt = Mathconst encryptPwd = utils/*{ encrypt: '045c859a309a459a04c9de24b8b6b03295c3e46a', salt: 'zff6t'}*/
validPassword
app.js
const encryptPwd = encrypt: '045c859a309a459a04c9de24b8b6b03295c3e46a' salt: 'zff6t'const validPassword = // true or false
isAccess
app.js
const access = level >= 1000const result = // true or false
callback
app.js
async { const result = await console}
isNull
app.js
console
checkLength
app.js
console // 7
isPattern
app.js
const result1 = // trueconst result2 = // true
validRule
app.js
const rules = required: true message: 'Value cannot be empty.' code: 1001 pattern: /^[0-9]+$/ message: 'Wrong value format.' code: 1002 const result = utils // nullconst result = utils // { message: 'Value cannot be empty.', code: 1001 }const result = utils // { message: 'Wrong value format.', code: 1002 }
filterData
app.js
const rules = username: required: true message: 'Name cannot be empty.' code: 1001 pattern: /^[a-zA-Z]{1}[a-zA-Z0-9_]{3,11}$/ message: 'Wrong name format.' code: 1002 email: required: true message: 'Email cannot be empty.' code: 1003 pattern: /^[a-z_0-9.-]{1,64}@{1,5}[a-z]{1,6}/ message: 'Wrong email format.' code: 1004 phone: required: true message: 'Phone cannot be empty.' code: 1005 pattern: /^0?[0-9]{8}$/ message: 'Wrong phone format.' code: 1006 password: required: true message: 'Password cannot be empty.' code: 1007 pattern: /^[A-Za-z0-9$@$!%*#?&]{6,32}$/ message: 'Wrong password format.' code: 1008 const info = username: 'thondery' email: 'thondery163.com' password: 'a123456'const username email phone password = infoconst filters = key: 'username' rules: rulesusername value: username key: 'email' rules: rulesemail value: email ignore: true key: 'phone' rules: rulesphone value: phone ignore: true key: 'password' rules: rulespassword value: password const options = picks: data: email phone message: 'Email, phone number must be set one' code: 1009
License
this repo is released under the MIT License.