npm i urbanice-lambda-tools
const lambdaTools = require('urbanice-lambda-tools')
const values = {
mock1: ' xyz ',
}
const cleanFields = [
{
name: 'mock1',
cleanType: 'trim',
},
{
name: 'mock1',
cleanType: 'string',
},
]
const newValues = lambdaTools.cleanValues(values, cleanFields)
console.log(newValues)
/*
{
mock1: 'xyz',
}
*/
const value = lambdaTools.generateUniqID(999)
console.log(value)
/*
random 0 - 999
*/
const values = {
mock1: ' xyz ',
}
const valuesType = [
{
name: 'mock1',
type: 'string',
},
]
const newValues = lambdaTools.checkType(values, valuesType)
console.log(newValues)
/*
true
*/
// >> Fail case
const valuesType = [
{
name: 'mock1',
type: 'array',
},
]
const newValues = lambdaTools.checkType(values, valuesType)
console.log(newValues)
/*
Values type error.
*/
const values = {
mock1: ' xyz ',
}
const requiredFields = ['mock1']
const newValues = lambdaTools.checkValue(values, requiredFields)
console.log(newValues)
/*
true
*/
// >> Fail case
const requiredFields = ['mock1']
const newValues = lambdaTools.checkValue(values, requiredFields)
console.log(newValues)
/*
Not find value on fields.
*/
const values = {
mock1: 'xyz',
mock2: 'abc',
mock3: 'sss',
}
const updateFields = ['mock1', 'mock2']
const setUpdateExpression = lambdaTools.updateIn(values, updateFields)
console.log(setUpdateExpression)
/*
{
exp: 'SET mock1 = :mock1, mock2 = :mock2',
attrValue: {
':mock1': 'xyz',
':mock2': 'abc',
}
}
*/
const db = {/* dynamodb connect */}
const table = 'urbanice-example-table';
lambdaTools.checkDuplicateValue(db, table, [
{
field: 'testField',
value: 1234,
},
]);
/*
success return
true
faile return
throw 'Duplicate value'
*/