UNPKG

@shopify/shopify-app-react-router

Version:

Shopify React Router - to simplify the building of Shopify Apps with React Router

45 lines (41 loc) 1.75 kB
'use strict'; var shopifyApi = require('@shopify/shopify-api'); require('../../../types.js'); var respondToInvalidSessionToken = require('../../helpers/respond-to-invalid-session-token.js'); var invalidateAccessToken = require('../../helpers/invalidate-access-token.js'); require('isbot'); var helpers = require('./helpers.js'); function updateUsageCappedAmountFactory(params, request, session) { return async function updateUsageCappedAmount(options) { const { api, logger } = params; logger.debug('Updating usage subscription capped amount', { shop: session.shop, ...options, }); let result; try { result = await api.billing.updateUsageCappedAmount({ session, subscriptionLineItemId: options.subscriptionLineItemId, cappedAmount: options.cappedAmount, }); } catch (error) { if (error instanceof shopifyApi.HttpResponseError && error.response.code === 401) { logger.debug('API token was invalid, responding to invalid session', { shop: session.shop, }); await invalidateAccessToken.invalidateAccessToken(params, session); throw respondToInvalidSessionToken.respondToInvalidSessionToken({ params, request, retryRequest: true, }); } throw error; } throw helpers.redirectOutOfApp(params, request, result.confirmationUrl, session.shop); }; } exports.updateUsageCappedAmountFactory = updateUsageCappedAmountFactory; //# sourceMappingURL=update-usage-subscription-capped-amount.js.map