@shopify/shopify-app-react-router
Version:
Shopify React Router - to simplify the building of Shopify Apps with React Router
1 lines • 3.06 kB
Source Map (JSON)
{"version":3,"file":"require.mjs","sources":["../../../../../../../src/server/authenticate/admin/billing/require.ts"],"sourcesContent":["import {\n BillingCheckResponseObject,\n HttpResponseError,\n Session,\n} from '@shopify/shopify-api';\n\nimport type {BasicParams} from '../../../types';\nimport type {AppConfigArg} from '../../../config-types';\nimport {\n invalidateAccessToken,\n respondToInvalidSessionToken,\n} from '../../helpers';\n\nimport type {RequireBillingOptions} from './types';\n\nexport function requireBillingFactory<Config extends AppConfigArg>(\n params: BasicParams,\n request: Request,\n session: Session,\n) {\n const {api, logger} = params;\n\n return async function requireBilling(options: RequireBillingOptions<Config>) {\n const logContext = {\n shop: session.shop,\n plans: options.plans,\n isTest: options.isTest,\n };\n\n logger.debug('Checking billing for the shop', logContext);\n\n let data: BillingCheckResponseObject;\n try {\n data = await api.billing.check({\n session,\n plans: options.plans as string[],\n isTest: options.isTest,\n returnObject: true,\n });\n } catch (error) {\n if (error instanceof HttpResponseError && error.response.code === 401) {\n logger.debug(\n 'API token was invalid, responding to invalid session',\n logContext,\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 if (!data.hasActivePayment) {\n logger.debug('Billing check failed', logContext);\n throw await options.onFailure(new Error('Billing check failed'));\n }\n\n logger.debug('Billing check succeeded', logContext);\n\n return data;\n };\n}\n"],"names":[],"mappings":";;;;;;SAegB,qBAAqB,CACnC,MAAmB,EACnB,OAAgB,EAChB,OAAgB,EAAA;AAEhB,IAAA,MAAM,EAAC,GAAG,EAAE,MAAM,EAAC,GAAG,MAAM;AAE5B,IAAA,OAAO,eAAe,cAAc,CAAC,OAAsC,EAAA;AACzE,QAAA,MAAM,UAAU,GAAG;YACjB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB;AAED,QAAA,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,UAAU,CAAC;AAEzD,QAAA,IAAI,IAAgC;AACpC,QAAA,IAAI;AACF,YAAA,IAAI,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC7B,OAAO;gBACP,KAAK,EAAE,OAAO,CAAC,KAAiB;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM;AACtB,gBAAA,YAAY,EAAE,IAAI;AACnB,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,CACV,sDAAsD,EACtD,UAAU,CACX;AAED,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;AAEA,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;AAC1B,YAAA,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,UAAU,CAAC;YAChD,MAAM,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAClE;AAEA,QAAA,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,UAAU,CAAC;AAEnD,QAAA,OAAO,IAAI;AACb,IAAA,CAAC;AACH;;;;"}