-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathupdate.js
More file actions
27 lines (25 loc) · 760 Bytes
/
update.js
File metadata and controls
27 lines (25 loc) · 760 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import * as dynamoDb from './libs/dynamodb'
import { success, failure } from './libs/response'
export async function main(event, context, callback) {
const data = JSON.parse(event.body)
const params = {
TableName: 'notes',
Key: {
userId: event.requestContext.identity.cognitoIdentityId,
noteId: event.pathParameters.id
},
UpdateExpression: 'SET content = :content, attachment = :attachment',
ExpressionAttributeValues: {
':attachment': data.attachment || null,
':content': data.content || null
},
ReturnValues: 'ALL_NEW'
}
try {
const result = await dynamoDb.call('update', params)
callback(null, success({ status: true }))
} catch(e) {
console.error(`UPDATE NOTE: ${e}`)
callback(null, failure({ status: false }))
}
}