/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/@shopify/shopify-app-express@7.0.0/dist/cjs/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";var compareVersions=require("compare-versions");require("@shopify/shopify-api/adapters/node");var shopifyApi=require("@shopify/shopify-api"),shopifyAppSessionStorageMemory=require("@shopify/shopify-app-session-storage-memory"),version=require("./version.js"),validateAuthenticatedSession=require("./middlewares/validate-authenticated-session.js"),ensureInstalledOnShop=require("./middlewares/ensure-installed-on-shop.js"),cspHeaders=require("./middlewares/csp-headers.js"),redirectToShopifyOrAppRoot=require("./middlewares/redirect-to-shopify-or-app-root.js"),index$1=require("./auth/index.js"),index=require("./webhooks/index.js"),redirectOutOfApp=require("./redirect-out-of-app.js");function shopifyApp(e){const{api:r,...i}=e,o=shopifyApi.shopifyApi(apiConfigWithDefaults(r)),s=validateAppConfig(i,o);return{config:s,api:o,auth:index$1.auth({api:o,config:s}),processWebhooks:index.processWebhooks({api:o,config:s}),validateAuthenticatedSession:validateAuthenticatedSession.validateAuthenticatedSession({api:o,config:s}),cspHeaders:cspHeaders.cspHeaders({api:o}),ensureInstalledOnShop:ensureInstalledOnShop.ensureInstalled({api:o,config:s}),redirectToShopifyOrAppRoot:redirectToShopifyOrAppRoot.redirectToShopifyOrAppRoot({api:o,config:s}),redirectOutOfApp:redirectOutOfApp.redirectOutOfApp({api:o,config:s})}}function apiConfigWithDefaults(e){let r=`Shopify Express Library v${version.SHOPIFY_EXPRESS_LIBRARY_VERSION}`;return e?.userAgentPrefix&&(r=`${e.userAgentPrefix} | ${r}`),{apiKey:process.env.SHOPIFY_API_KEY,apiSecretKey:process.env.SHOPIFY_API_SECRET,scopes:process.env.SCOPES?.split(","),hostScheme:process.env.HOST?.split("://")[0],hostName:process.env.HOST?.replace(/https?:\/\//,""),isEmbeddedApp:!0,...e||{},userAgentPrefix:r}}function validateAppConfig(e,r){const{sessionStorage:i,...o}=e;return{logger:overrideLoggerPackage(r.logger),useOnlineTokens:!1,exitIframePath:"/exitiframe",sessionStorage:i??new shopifyAppSessionStorageMemory.MemorySessionStorage,...o,auth:e.auth,webhooks:e.webhooks}}function overrideLoggerPackage(e){const r={package:"shopify-app"},i=(i,o={})=>e.warning(i,{...r,...o});return{...e,log:(i,o,s={})=>e.log(i,o,{...r,...s}),debug:(i,o={})=>e.debug(i,{...r,...o}),info:(i,o={})=>e.info(i,{...r,...o}),warning:i,error:(i,o={})=>e.error(i,{...r,...o}),deprecated:deprecated(i)}}function deprecated(e){return function(r,i){if(compareVersions.compare(version.SHOPIFY_EXPRESS_LIBRARY_VERSION,r,">="))throw new shopifyApi.FeatureDeprecatedError(`Feature was deprecated in version ${r}`);return e(`[Deprecated | ${r}] ${i}`)}}Object.defineProperty(exports,"ApiVersion",{enumerable:!0,get:function(){return shopifyApi.ApiVersion}}),exports.shopifyApp=shopifyApp;
//# sourceMappingURL=/sm/bfae4185dedf8dcdbe4a98cebab1c815dceb7aaf0e86bd213b4e9d2064de43c6.map