1.2.0 • Published 3 months ago
@stone-ton/aws-wrappers v1.2.0
@stone-ton/aws-wrappers
Lib para fazer wrapper de serviços da AWS
Lambda Invoke
const { lambdaInvoke } = require('@stone-ton/aws-wrappers');
const user = await lambdaInvoke<User>({
FunctionName: 'lambda-test',
InvocationType: 'RequestResponse',
Payload: JSON.stringify({
foo: 'bar',
}),
})
SQS Send Message
const { sqsSendMessage } = require('@stone-ton/aws-wrappers');
await sqsSendMessage({
QueueUrl: process.env.SQS_PAYMENT_PROVIDER_POSTBACK as string,
MessageGroupId: transaction_id,
MessageBody: JSON.stringify(messageBody),
})
SQS Send Message Batch
const { sqsSendMessageBatch } = require('@stone-ton/aws-wrappers');
await sqsSendMessageBatch({
QueueUrl: process.env.SQS_PAYMENT_PROVIDER_POSTBACK as string,
Entries: [
{
Id: transaction_id,
MessageGroupId: group_id,
MessageBody: JSON.stringify(messageBody),
}
]
})
Dynamo Get
const { dynamoGet } = require('@stone-ton/aws-wrappers');
await dynamoGet({
TableName: process.env.DYNAMO_TABLE_SMUSER_COMPANIES as string,
Key: {
id: companyId,
},
})
Dynamo Query
const { dynamoQuery } = require('@stone-ton/aws-wrappers');
await dynamoQuery({
TableName: process.env.DYNAMO_TABLE_TONZILLA_USER_ACCOUNT as string,
IndexName: 'user-id-index',
KeyConditionExpression: 'user_id = :user_id',
ExpressionAttributeValues: {
':user_id': user_id,
},
})
Dynamo Put
const { dynamoPut, removeEmpty } = require('@stone-ton/aws-wrappers');
await dynamoPut({
TableName: process.env.DYNAMO_TABLE_EXTRATON_SALES as string,
Item: removeEmpty(data),
})
Dynamo Update
const {
dynamoUpdate,
removeEmpty,
createUpdateExpression,
createExpressionAttributeNames,
createExpressionAttributeValues,
} = require('@stone-ton/aws-wrappers');
const { id, ...newUserData } = {
...removeEmpty(newUser),
updated_at: new Date().toISOString(),
}
await dynamoUpdate({
TableName: 'table-name',
Key: {
id,
},
UpdateExpression: createUpdateExpression(newUserData),
ExpressionAttributeNames: createExpressionAttributeNames(newUserData),
ExpressionAttributeValues: createExpressionAttributeValues(newUserData),
})
Dynamo Delete
const { dynamoDelete } = require('@stone-ton/aws-wrappers');
await dynamoDelete({
TableName: 'table-name',
Key: {
foo: 'bar',
},
})
Dynamo Transact Write
const { dynamoTransactWrite, removeEmpty } = require('@stone-ton/aws-wrappers');
await dynamoTransactWrite({
TransactItems: [
{
Put: {
TableName: process.env.DYNAMO_TABLE_EXTRATON_REPORTS as string,
Item: removeEmpty(data.data_event)
},
},
{
Put: {
TableName: process.env.DYNAMO_TABLE_EXTRATON_EVENTS as string,
Item: removeEmpty(data),
},
},
],
})
Redis Get
const { default: RedisProvider } = require('@stone-ton/aws-wrappers/lib/redis')
const redis = new RedisProvider({
host: 'resis-host-test',
port: 6379,
password: 'resis-password-test',
cluster: true,
tls: true,
abortOnError: false,
})
await redis.get('item-key')
Redis Set
const { default: RedisProvider } = require('@stone-ton/aws-wrappers/lib/redis')
const redis = new RedisProvider({
host: 'resis-host-test',
port: 6379,
password: 'resis-password-test',
cluster: true,
tls: true,
abortOnError: false,
})
await redis.set({
key: 'item-key',
value: 'item-value',
expirationInSeconds: 'item-ttl',
})
1.2.0
3 months ago
1.1.4
3 months ago
1.1.3
3 months ago
1.1.2
3 months ago
1.1.1
4 months ago
1.1.0
4 months ago
1.0.2
9 months ago
1.0.1
9 months ago
1.0.0
9 months ago
1.0.9
6 months ago
1.0.8
6 months ago
1.0.7
7 months ago
1.0.6
8 months ago
1.0.5
8 months ago
1.0.4
8 months ago
1.0.3
9 months ago
1.0.11
6 months ago
1.0.10
6 months ago
1.0.12
6 months ago
0.2.1
1 year ago
0.2.0
1 year ago
0.2.3
1 year ago
0.2.2
1 year ago
0.1.3
1 year ago
0.1.0
2 years ago
0.1.2
2 years ago
0.1.1
2 years ago
0.0.9
2 years ago
0.0.8
2 years ago
0.0.7
2 years ago
0.0.6
2 years ago
0.0.5
2 years ago
0.0.4
2 years ago
0.0.3
2 years ago
0.0.2
2 years ago
0.0.1
2 years ago