{"version":3,"file":"Shopiframe_Plugin.8LJsBfPD.mjs","names":["t","r","e","n","s","o","c","i","u","a","p","l","g"],"sources":["https:/ga.jspm.io/npm:@shopify/storefront-api-client@0.2.2/dist/index.mjs","https:/framerusercontent.com/modules/zf55MwkOgGHkpXQoJ6K0/seDfAfL83O9mN4Ic9wEV/Shopiframe_Plugin.js"],"sourcesContent":["const e=\"GraphQL Client\";const t=0;const r=3;const n=\"An error occurred while fetching from the API. Review 'graphQLErrors' for details.\";const s=\"Response returned unexpected Content-Type:\";const o=\"An unknown error has occurred. The API did not return a data object or any errors in its response.\";const i={json:\"application/json\",multipart:\"multipart/mixed\"};const a=1e3;const c=[429,503];function formatErrorMessage(t,r=e){return t.startsWith(`${r}`)?t:`${r}: ${t}`}function getErrorMessage(e){return e instanceof Error?e.message:JSON.stringify(e)}function validateRetries({client:e,retries:n}){if(n!==void 0&&(typeof n!==\"number\"||n<t||n>r))throw new Error(`${e}: The provided \"retries\" value (${n}) is invalid - it cannot be less than ${t} or greater than ${r}`)}function getKeyValueIfValid(e,t){return t&&(typeof t!==\"object\"||Array.isArray(t)||typeof t===\"object\"&&Object.keys(t).length>0)?{[e]:t}:{}}function generateHttpFetch({clientLogger:t,customFetchApi:r=fetch,client:n=e,defaultRetryWaitTime:s=a,retriableCodes:o=c}){const httpFetch=async(e,i,a)=>{const c=i+1;const u=a+1;let p;try{p=await r(...e);t({type:\"HTTP-Response\",content:{requestParams:e,response:p}});if(!p.ok&&o.includes(p.status)&&c<=u)throw new Error;return p}catch(r){if(c<=u){const r=p?.headers.get(\"Retry-After\");await sleep(r?parseInt(r,10):s);t({type:\"HTTP-Retry\",content:{requestParams:e,lastResponse:p,retryAttempt:i,maxRetries:a}});return httpFetch(e,c,a)}throw new Error(formatErrorMessage(`${a>0?`Attempted maximum number of ${a} network retries. Last message - `:\"\"}${getErrorMessage(r)}`,n))}};return httpFetch}async function sleep(e){return new Promise((t=>setTimeout(t,e)))}function createGraphQLClient({headers:t,url:r,customFetchApi:n=p,retries:s=0,logger:o}){validateRetries({client:e,retries:s});const i={headers:t,url:r,retries:s};const c=generateClientLogger(o);const u=generateHttpFetch({customFetchApi:n,clientLogger:c,defaultRetryWaitTime:a});const p=generateFetch(u,i);const l=generateRequest(p);return{config:i,fetch:p,request:l}}function generateClientLogger(e){return t=>{e&&e(t)}}async function processJSONResponse(e){const{errors:t,data:r,extensions:s}=await e.json();return{...getKeyValueIfValid(\"data\",r),...getKeyValueIfValid(\"extensions\",s),...t||!r?{errors:{networkStatusCode:e.status,message:formatErrorMessage(t?n:o),...getKeyValueIfValid(\"graphQLErrors\",t),response:e}}:{}}}function generateFetch(t,{url:r,headers:n,retries:s}){return async(o,i={})=>{const{variables:a,headers:c,url:u,retries:p}=i;const l=JSON.stringify({query:o,variables:a});validateRetries({client:e,retries:p});const g=Object.fromEntries(Object.entries({...n,...c}).map((([e,t])=>[e,Array.isArray(t)?t.join(\", \"):t.toString()])));const d=[u??r,{method:\"POST\",headers:g,body:l}];return t(d,1,p??s)}}function generateRequest(e){return async(...t)=>{try{const r=await e(...t);const{status:n,statusText:o}=r;const a=r.headers.get(\"content-type\")||\"\";return r.ok?a.includes(i.json)?processJSONResponse(r):{errors:{networkStatusCode:n,message:formatErrorMessage(`${s} ${a}`),response:r}}:{errors:{networkStatusCode:n,message:formatErrorMessage(o),response:r}}}catch(e){return{errors:{message:getErrorMessage(e)}}}}}function validateDomainAndGetStoreUrl({client:e,storeDomain:t}){try{if(!t||typeof t!==\"string\")throw new Error;const e=t.trim();const r=e.startsWith(\"http\")?e:`https://${e}`;const n=new URL(r);n.protocol=\"https\";return n.origin}catch(r){throw new Error(`${e}: a valid store domain (\"${t}\") must be provided`)}}function validateApiVersion({client:e,currentSupportedApiVersions:t,apiVersion:r,logger:n}){const s=`${e}: the provided apiVersion (\"${r}\")`;const o=`Currently supported API versions: ${t.join(\", \")}`;if(!r||typeof r!==\"string\")throw new Error(`${s} is invalid. ${o}`);const i=r.trim();t.includes(i)||(n?n({type:\"Unsupported_Api_Version\",content:{apiVersion:r,supportedApiVersions:t}}):console.warn(`${s} is likely deprecated or not supported. ${o}`))}function getQuarterMonth(e){const t=e*3-2;return t===10?t:`0${t}`}function getPrevousVersion(e,t,r){const n=t-r;return n<=0?`${e-1}-${getQuarterMonth(n+4)}`:`${e}-${getQuarterMonth(n)}`}function getCurrentApiVersion(){const e=new Date;const t=e.getUTCMonth();const r=e.getUTCFullYear();const n=Math.floor(t/3+1);return{year:r,quarter:n,version:`${r}-${getQuarterMonth(n)}`}}function getCurrentSupportedApiVersions(){const{year:e,quarter:t,version:r}=getCurrentApiVersion();const n=t===4?`${e+1}-01`:`${e}-${getQuarterMonth(t+1)}`;return[getPrevousVersion(e,t,3),getPrevousVersion(e,t,2),getPrevousVersion(e,t,1),r,n,\"unstable\"]}function generateGetHeaders(e){return t=>({...t??{},...e.headers})}function generateGetGQLClientParams({getHeaders:e,getApiUrl:t}){return(r,n)=>{const s=[r];if(n&&Object.keys(n).length>0){const{variables:r,apiVersion:o,headers:i,retries:a}=n;s.push({...r?{variables:r}:{},...i?{headers:e(i)}:{},...o?{url:t(o)}:{},...a?{retries:a}:{}})}return s}}const u=\"application/json\";const p=\"storefront-api-client\";const l=\"0.2.2\";const g=\"X-Shopify-Storefront-Access-Token\";const d=\"Shopify-Storefront-Private-Token\";const f=\"X-SDK-Variant\";const h=\"X-SDK-Version\";const m=\"X-SDK-Variant-Source\";const A=\"Storefront API Client\";function validatePrivateAccessTokenUsage(e){if(e&&typeof window!==\"undefined\")throw new Error(`${A}: private access tokens and headers should only be used in a server-to-server implementation. Use the public API access token in nonserver environments.`)}function validateRequiredAccessTokens(e,t){if(!e&&!t)throw new Error(`${A}: a public or private access token must be provided`);if(e&&t)throw new Error(`${A}: only provide either a public or private access token`)}function createStorefrontApiClient({storeDomain:e,apiVersion:t,publicAccessToken:r,privateAccessToken:n,clientName:s,retries:o=0,customFetchApi:i,logger:a}){const c=getCurrentSupportedApiVersions();const y=validateDomainAndGetStoreUrl({client:A,storeDomain:e});const v={client:A,currentSupportedApiVersions:c,logger:a};validateApiVersion({...v,apiVersion:t});validateRequiredAccessTokens(r,n);validatePrivateAccessTokenUsage(n);const $=generateApiUrlFormatter(y,t,v);const w={storeDomain:y,apiVersion:t,...r?{publicAccessToken:r}:{privateAccessToken:n},headers:{\"Content-Type\":u,Accept:u,[f]:p,[h]:l,...s?{[m]:s}:{},...r?{[g]:r}:{[d]:n}},apiUrl:$(),clientName:s};const V=createGraphQLClient({headers:w.headers,url:w.apiUrl,retries:o,customFetchApi:i,logger:a});const b=generateGetHeaders(w);const S=generateGetApiUrl(w,$);const T=generateGetGQLClientParams({getHeaders:b,getApiUrl:S});const k={config:w,getHeaders:b,getApiUrl:S,fetch:(...e)=>V.fetch(...T(...e)),request:(...e)=>V.request(...T(...e))};return Object.freeze(k)}function generateApiUrlFormatter(e,t,r){return n=>{n&&validateApiVersion({...r,apiVersion:n});const s=(n??t).trim();return`${e}/api/${s}/graphql.json`}}function generateGetApiUrl(e,t){return r=>r?t(r):e.apiUrl}export{createStorefrontApiClient};\n//# sourceMappingURL=index.mjs.map\n","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{createStorefrontApiClient}from\"@shopify/storefront-api-client\";import{productsQuery,createCart,readCart}from\"https://framerusercontent.com/modules/BQrVtr3gJtw4SKcGZ3fW/jY0etIDXBtbDUfveI9af/queries.js\";import{useShopify}from\"https://framerusercontent.com/modules/agcJAgx0B7xqixXVIWIM/9oCMeWyApXAzvuLb7bQW/_hooks.js\";/**\n * @framerDisableUnlink\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n */export default function Shopiframe_Plugin({API_KEY,DOMAIN,devMode=false,font}){const[shopify,setShopify]=useShopify();useEffect(()=>{setShopify({devMode,font});},[devMode,font]);useEffect(()=>{if(API_KEY&&DOMAIN){setShopify({client:createStorefrontApiClient({storeDomain:DOMAIN,apiVersion:\"2024-01\",publicAccessToken:API_KEY,customFetchApi:fetch})});}},[API_KEY,DOMAIN]);useEffect(()=>{if(shopify.client){const cartId=localStorage.getItem(\"shopifyCartID\");if(!cartId){createNewCart();}else{shopify.client.request(readCart,{variables:{cartId}}).then(res=>{var _res_data,_res_data_cart;if((res===null||res===void 0?void 0:(_res_data=res.data)===null||_res_data===void 0?void 0:_res_data.cart)&&((_res_data_cart=res.data.cart)===null||_res_data_cart===void 0?void 0:_res_data_cart.id)){var _res_data1;var _res_data_cart1;setShopify({cart:(_res_data_cart1=(_res_data1=res.data)===null||_res_data1===void 0?void 0:_res_data1.cart)!==null&&_res_data_cart1!==void 0?_res_data_cart1:null});}else{createNewCart();}}).catch(e=>{createNewCart();});}shopify.client.request(productsQuery).then(res=>{if(res.data){var _res_data_products,_res_data;var _res_data_products_nodes;const products=(_res_data_products_nodes=(_res_data=res.data)===null||_res_data===void 0?void 0:(_res_data_products=_res_data.products)===null||_res_data_products===void 0?void 0:_res_data_products.nodes)!==null&&_res_data_products_nodes!==void 0?_res_data_products_nodes:[];setShopify({products});}});}},[shopify.client]);const createNewCart=()=>{shopify.client.request(createCart).then(res=>{var _res_data_cartCreate_cart,_res_data_cartCreate,_res_data;if((_res_data=res.data)===null||_res_data===void 0?void 0:(_res_data_cartCreate=_res_data.cartCreate)===null||_res_data_cartCreate===void 0?void 0:(_res_data_cartCreate_cart=_res_data_cartCreate.cart)===null||_res_data_cartCreate_cart===void 0?void 0:_res_data_cartCreate_cart.id){localStorage.setItem(\"shopifyCartID\",res.data.cartCreate.cart.id);}});};return /*#__PURE__*/_jsxs(\"div\",{style:styles.container,children:[API_KEY?null:/*#__PURE__*/_jsx(\"span\",{style:styles.warning,children:\"Please insert your Storefront API access token\"}),DOMAIN?null:/*#__PURE__*/_jsx(\"span\",{style:styles.warning,children:\"Please insert your Store Domain\"})]});}addPropertyControls(Shopiframe_Plugin,{API_KEY:{title:\"Access Token\",description:\"Storefront API access token\",type:ControlType.String,defaultValue:\"\",displayTextArea:true},DOMAIN:{title:\"Domain\",description:\"Store Domain, ex: example.myshopify.com\",type:ControlType.String,defaultValue:\"\"},devMode:{title:\"Dev Mode\",description:\"When enable show sample data\",type:ControlType.Boolean,defaultValue:true},font:{type:ControlType.Font,description:\"Default font family\"}});const styles={container:{display:\"flex\",flexDirection:\"column\",gap:8},warning:{color:\"red\",fontSize:16,borderRadius:10}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Shopiframe_Plugin\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"* @framerSupportedLayoutWidth auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Shopiframe_Plugin.map"],"mappings":"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"}