Repository URL to install this package:
|
Version:
2.0.0-rc.7 ▾
|
'use strict';
var getAllSubscriptionsForUser = require('./getAllSubscriptionsForUser.js');
var cancelSubscriptionForUser = require('./cancelSubscriptionForUser.js');
/**
* Cancel all subscriptions for a user.
*
* @param {string} accessToken - The user's access-token
* @returns {Promise<object>}
*/
async function cancelAllSubscriptionsForUser(accessToken) {
if (typeof accessToken !== 'string') {
throw new TypeError(`accessToken param must be a string, got ${typeof accessToken}`);
}
const userSubscriptions = await getAllSubscriptionsForUser(accessToken);
const subscriptionIds = userSubscriptions && userSubscriptions.document && userSubscriptions.document.filter(d => d && typeof d.subscriptionId !== 'undefined').map(d => d.subscriptionId);
if (!subscriptionIds || subscriptionIds.length === 0) {
return Promise.resolve({
message: 'No subscriptions found'
});
}
return Promise.all(subscriptionIds.map(subscriptionId => cancelSubscriptionForUser(accessToken, subscriptionId)));
}
module.exports = cancelAllSubscriptionsForUser;
//# sourceMappingURL=cancelAllSubscriptionsForUser.js.map