{"version":3,"file":"validate-shop-and-host-params.mjs","sources":["../../../../../../../src/server/authenticate/admin/helpers/validate-shop-and-host-params.ts"],"sourcesContent":["import {BasicParams, AppDistribution} from '../../../types';\n\nimport {renderAppBridge} from './render-app-bridge';\n\nexport function validateShopAndHostParams(\n  params: BasicParams,\n  request: Request,\n) {\n  const {api, config, logger} = params;\n\n  if (config.distribution !== AppDistribution.ShopifyAdmin) {\n    const url = new URL(request.url);\n    const shop = api.utils.sanitizeShop(url.searchParams.get('shop')!);\n    if (!shop) {\n      logger.debug('Missing or invalid shop, rendering App Bridge', {\n        shop,\n      });\n      throw renderAppBridgeOrError(request, params);\n    }\n\n    const host = api.utils.sanitizeHost(url.searchParams.get('host')!);\n    if (!host) {\n      logger.debug('Invalid host, rendering App Bridge', {\n        shop,\n        host: url.searchParams.get('host'),\n      });\n      throw renderAppBridgeOrError(request, params);\n    }\n  }\n}\n\nfunction renderAppBridgeOrError(request: Request, params: BasicParams): never {\n  const {config, logger} = params;\n\n  const {pathname} = new URL(request.url);\n  if (pathname.endsWith(config.auth.loginPath)) {\n    const message =\n      `Detected call to shopify.authenticate.admin() from configured login path ` +\n      `('${config.auth.loginPath}'), please make sure to call shopify.login() from that route instead.`;\n\n    logger.debug(message);\n    throw new Response(message, {status: 500});\n  }\n\n  logger.debug(\n    'Missing shop or host params, rendering App Bridge to retrieve session',\n  );\n  throw renderAppBridge(params, request);\n}\n"],"names":[],"mappings":";;;AAIM,SAAU,yBAAyB,CACvC,MAAmB,EACnB,OAAgB,EAAA;IAEhB,MAAM,EAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAC,GAAG,MAAM;IAEpC,IAAI,MAAM,CAAC,YAAY,KAAK,eAAe,CAAC,YAAY,EAAE;QACxD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;AAChC,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;QAClE,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,MAAM,CAAC,KAAK,CAAC,+CAA+C,EAAE;gBAC5D,IAAI;AACL,aAAA,CAAC;AACF,YAAA,MAAM,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC;QAC/C;AAEA,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;QAClE,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;gBACjD,IAAI;gBACJ,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;AACnC,aAAA,CAAC;AACF,YAAA,MAAM,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC;QAC/C;IACF;AACF;AAEA,SAAS,sBAAsB,CAAC,OAAgB,EAAE,MAAmB,EAAA;AACnE,IAAA,MAAM,EAAC,MAAM,EAAE,MAAM,EAAC,GAAG,MAAM;IAE/B,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;IACvC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;QAC5C,MAAM,OAAO,GACX,CAAA,yEAAA,CAA2E;AAC3E,YAAA,CAAA,EAAA,EAAK,MAAM,CAAC,IAAI,CAAC,SAAS,uEAAuE;AAEnG,QAAA,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;QACrB,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAC,MAAM,EAAE,GAAG,EAAC,CAAC;IAC5C;AAEA,IAAA,MAAM,CAAC,KAAK,CACV,uEAAuE,CACxE;AACD,IAAA,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC;AACxC;;;;"}