{"version":3,"file":"cancel.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/cancel.ts"],"sourcesContent":["import {HttpResponseError, Session} from '@shopify/shopify-api';\n\nimport type {BasicParams} from '../../../types';\nimport {\n  invalidateAccessToken,\n  respondToInvalidSessionToken,\n} from '../../helpers';\n\nimport type {CancelBillingOptions} from './types';\n\nexport function cancelBillingFactory(\n  params: BasicParams,\n  request: Request,\n  session: Session,\n) {\n  return async function cancelBilling(options: CancelBillingOptions) {\n    const {api, logger} = params;\n\n    logger.debug('Cancelling billing', {shop: session.shop, ...options});\n\n    try {\n      return await api.billing.cancel({\n        session,\n        subscriptionId: options.subscriptionId,\n        isTest: options.isTest,\n        prorate: options.prorate,\n      });\n    } catch (error) {\n      if (error instanceof HttpResponseError && error.response.code === 401) {\n        logger.debug('API token was invalid, responding to invalid session', {\n          shop: session.shop,\n        });\n\n        await invalidateAccessToken(params, session);\n\n        throw respondToInvalidSessionToken({\n          params,\n          request,\n          retryRequest: true,\n        });\n      }\n      throw error;\n    }\n  };\n}\n"],"names":[],"mappings":";;;;;;SAUgB,oBAAoB,CAClC,MAAmB,EACnB,OAAgB,EAChB,OAAgB,EAAA;AAEhB,IAAA,OAAO,eAAe,aAAa,CAAC,OAA6B,EAAA;AAC/D,QAAA,MAAM,EAAC,GAAG,EAAE,MAAM,EAAC,GAAG,MAAM;AAE5B,QAAA,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,OAAO,EAAC,CAAC;AAEpE,QAAA,IAAI;AACF,YAAA,OAAO,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC9B,OAAO;gBACP,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;AACzB,aAAA,CAAC;QACJ;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,IAAI,KAAK,YAAY,iBAAiB,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,EAAE;AACrE,gBAAA,MAAM,CAAC,KAAK,CAAC,sDAAsD,EAAE;oBACnE,IAAI,EAAE,OAAO,CAAC,IAAI;AACnB,iBAAA,CAAC;AAEF,gBAAA,MAAM,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC;AAE5C,gBAAA,MAAM,4BAA4B,CAAC;oBACjC,MAAM;oBACN,OAAO;AACP,oBAAA,YAAY,EAAE,IAAI;AACnB,iBAAA,CAAC;YACJ;AACA,YAAA,MAAM,KAAK;QACb;AACF,IAAA,CAAC;AACH;;;;"}