aws-fanout
Advanced tools
Comparing version 1.1.6 to 1.1.7
@@ -25,2 +25,6 @@ 'use strict'; | ||
var _snsGetSnsArn = require('./sns/getSnsArn'); | ||
var _snsGetSnsArn2 = _interopRequireDefault(_snsGetSnsArn); | ||
var _sqsDeleteMessage = require('./sqs/deleteMessage'); | ||
@@ -34,2 +38,10 @@ | ||
var _sqsDeleteQueue = require('./sqs/deleteQueue'); | ||
var _sqsDeleteQueue2 = _interopRequireDefault(_sqsDeleteQueue); | ||
var _snsDeleteTopic = require('./sns/deleteTopic'); | ||
var _snsDeleteTopic2 = _interopRequireDefault(_snsDeleteTopic); | ||
var createTopic = (0, _ramda.curry)(require('./sns/createTopic')); | ||
@@ -103,4 +115,36 @@ var createQueue = (0, _ramda.curry)(require('./sqs/createQueue')); | ||
/** | ||
* Delete a queue specified by the queue name | ||
* @param {Object} credentials | ||
* @param {String} credentials.region | ||
* @param {String} credentials.accessKeyId | ||
* @param {String} credentials.secretAccessKey | ||
* @param {String} queueUrl - URL of the queue to delete | ||
* @returns {Promise<ResponseMetadata: Object>} de-serialized data returned from the request | ||
*/ | ||
var deleteQueue = function deleteQueue(credentials, queueName) { | ||
return (0, _sqsGetQueueInfo.getSqsUrl)(credentials, queueName).then(function (queueUrl) { | ||
return (0, _sqsDeleteQueue2['default'])(credentials, queueUrl); | ||
}); | ||
}; | ||
/** | ||
* Deletes a topic and all its subscriptions, specified by its ARN | ||
* @param {Object} credentials | ||
* @param {String} credentials.region | ||
* @param {String} credentials.accessKeyId | ||
* @param {String} credentials.secretAccessKey | ||
* @param {string} topicArn - ARN of the topic to delete | ||
* @returns {Promise<{ResponseMetadata: Object}>} de-serialized data returned from the request | ||
*/ | ||
var deleteTopic = function deleteTopic(credentials, topicName) { | ||
return (0, _snsGetSnsArn2['default'])(credentials, topicName).then(function (topicArn) { | ||
return (0, _snsDeleteTopic2['default'])(credentials, topicArn); | ||
}); | ||
}; | ||
var publish = _snsPublish2['default']; | ||
exports.deleteQueue = deleteQueue; | ||
exports.deleteTopic = deleteTopic; | ||
exports.deleteMessage = deleteMessage; | ||
@@ -107,0 +151,0 @@ exports.receiveMessage = receiveMessage; |
@@ -69,3 +69,7 @@ 'use strict'; | ||
var sourceArns = statement.Condition.ArnEquals['aws:SourceArn']; | ||
if (Array.isArray(sourceArns)) { | ||
if (sourceArns) { | ||
if (!Array.isArray(sourceArns)) { | ||
sourceArns = [sourceArns]; | ||
} | ||
return (0, _ramda.union)(newArns, statement.Condition.ArnEquals); | ||
@@ -72,0 +76,0 @@ } |
@@ -7,4 +7,7 @@ import Promise from 'bluebird' | ||
import { getSqsUrl } from './sqs/getQueueInfo' | ||
import getSnsArn from './sns/getSnsArn' | ||
import deleteSqsMessage from './sqs/deleteMessage' | ||
import receiveSqsMessage from './sqs/receiveMessage' | ||
import deleteSqsQueue from './sqs/deleteQueue' | ||
import deleteSnsTopic from './sns/deleteTopic' | ||
@@ -87,5 +90,35 @@ const createTopic = curry(require('./sns/createTopic')) | ||
/** | ||
* Delete a queue specified by the queue name | ||
* @param {Object} credentials | ||
* @param {String} credentials.region | ||
* @param {String} credentials.accessKeyId | ||
* @param {String} credentials.secretAccessKey | ||
* @param {String} queueUrl - URL of the queue to delete | ||
* @returns {Promise<ResponseMetadata: Object>} de-serialized data returned from the request | ||
*/ | ||
const deleteQueue = (credentials, queueName) => { | ||
return getSqsUrl(credentials, queueName) | ||
.then(queueUrl => deleteSqsQueue(credentials, queueUrl)) | ||
} | ||
/** | ||
* Deletes a topic and all its subscriptions, specified by its ARN | ||
* @param {Object} credentials | ||
* @param {String} credentials.region | ||
* @param {String} credentials.accessKeyId | ||
* @param {String} credentials.secretAccessKey | ||
* @param {string} topicArn - ARN of the topic to delete | ||
* @returns {Promise<{ResponseMetadata: Object}>} de-serialized data returned from the request | ||
*/ | ||
const deleteTopic = (credentials, topicName) => { | ||
return getSnsArn(credentials, topicName) | ||
.then(topicArn => deleteSnsTopic(credentials, topicArn)) | ||
} | ||
const publish = publishToTopic | ||
export { | ||
deleteQueue, | ||
deleteTopic, | ||
deleteMessage, | ||
@@ -92,0 +125,0 @@ receiveMessage, |
@@ -56,4 +56,8 @@ import { SQS } from 'aws-sdk' | ||
if (statement && statement.Condition && statement.Condition.ArnEquals) { | ||
const sourceArns = statement.Condition.ArnEquals['aws:SourceArn'] | ||
if (Array.isArray(sourceArns)) { | ||
let sourceArns = statement.Condition.ArnEquals['aws:SourceArn'] | ||
if (sourceArns) { | ||
if (!Array.isArray(sourceArns)) { | ||
sourceArns = [sourceArns] | ||
} | ||
return union(newArns, statement.Condition.ArnEquals) | ||
@@ -60,0 +64,0 @@ } |
{ | ||
"name": "aws-fanout", | ||
"version": "1.1.6", | ||
"version": "1.1.7", | ||
"description": "A library wrapping SNS and SQS to allow for human readable names when using a fanout technique", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
42287
31
1044
1