{"version":3,"file":"CMSLibrary-09eo.DLmIXCKA.mjs","names":["CurrencySymbols","useState"],"sources":["https:/framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/QgPaj0acipRJVnJP5qXz/Shared.js","https:/framerusercontent.com/modules/ibjYTPLnMMPhPLNCj4uG/nJIAFywoy2XpN0YHggx2/Cart.js","https:/framerusercontent.com/modules/OPJlnSDokJ2eD9lIXljn/mr2QJ5zw4xvkJ1Vbvzgr/CMSLibrary.js","https:/framer.com/m/CMSLibrary-09eo.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{ControlType}from\"framer\";import{cloneElement,useMemo}from\"react\";import{motion}from\"framer-motion\";import CurrencySymbols from\"https://framerusercontent.com/modules/pJIZxaEdKo1uS87sS4xM/4PSl3AVmNoISomoZ0s7m/CurrencySymbols.js\";export const UPGRADE_LINK=\"https://buy.stripe.com/cN29CT5gi1spb5e9AN\";export var ShopifyDataType;(function(ShopifyDataType){ShopifyDataType[\"Product\"]=\"gid://shopify/Product/\";ShopifyDataType[\"ProductVariant\"]=\"gid://shopify/ProductVariant/\";ShopifyDataType[\"ProductOption\"]=\"gid://shopify/ProductOption/\";})(ShopifyDataType||(ShopifyDataType={}));export const SHOPIFY_ID_ATTRIBUTE=\"frameship-shopify-id\";export const OPEN_CART_EVENT=\"frameship-open-cart\";export const DEFAULT_TRANSITION={type:\"spring\",duration:.2,bounce:0};export const Colors={Primary:{color:\"#000\",fill:\"#F3F3F3\",fillA:\"#F3F3F3\",fillB:\"#999999\"},Accent:{color:\"#FFF\",fill:\"#111\",fillA:\"#5E5E5E\",fillB:\"#111\"}};const CHARACTERS=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";const EMPTY_SHOPIFY_DATA={shopifyId:\"\",tracksInventory:false,variants:[]};const shopifyDataCache={};export function parseShopifyId(id,type){if(typeof id!==\"string\"){return\"\";}if(id.startsWith(type)){return id;}return`${type}${id}`;}export function parseShopifyData(shopifyData){if(!shopifyData){return EMPTY_SHOPIFY_DATA;}const cachedData=shopifyDataCache[shopifyData];if(cachedData){return cachedData;}try{const data=JSON.parse(shopifyData);const parsedData={shopifyId:parseShopifyId(data.id,\"gid://shopify/Product/\"),tracksInventory:data.tracksInventory?true:false,variants:Array.isArray(data.variants)?data.variants.map(variant=>({...variant,id:parseShopifyId(variant.id,\"gid://shopify/ProductVariant/\")})):[]};shopifyDataCache[shopifyData]=parsedData;return parsedData;}catch(error){console.error(\"Error parsing Shopify data:\",error);return EMPTY_SHOPIFY_DATA;}}export const generateInstanceId=()=>{const id=useMemo(()=>{let result=\"\";for(let i=0;i<13;i++){result+=CHARACTERS.charAt(Math.floor(Math.random()*CHARACTERS.length));}return result;},[]);return id;};export function styleLayer(layer,style){layer=Array.isArray(layer)?layer[0]:layer;let newLayer=layer;const width=style===null||style===void 0?void 0:style.width;const height=style===null||style===void 0?void 0:style.height;if(layer&&layer.props&&style&&(width||height)){if(typeof layer.type===\"function\"&&typeof layer.props.children===\"object\"){newLayer=/*#__PURE__*/cloneElement(layer,{children:{...layer.props.children,props:{...layer.props.children.props,style:{...layer.props.children.props.style,...width&&{width},...height&&{height}}}}});}else{newLayer=/*#__PURE__*/cloneElement(layer,{style:{...layer.props.style,...width&&{width},...height&&{height}}});}}return newLayer;}export function Icon({image,color,size,style={},defaultImage}){let colorValue=color||((image===null||image===void 0?void 0:image.src)?undefined:\"#999\");return /*#__PURE__*/_jsx(\"div\",{\"aria-label\":image===null||image===void 0?void 0:image.alt,style:{width:size,height:size,minWidth:size,minHeight:size,pointerEvents:\"none\",backgroundColor:colorValue,backgroundImage:colorValue?\"none\":`url('${image===null||image===void 0?void 0:image.src}')`,maskImage:(image===null||image===void 0?void 0:image.src)?`url('${image===null||image===void 0?void 0:image.src}')`:defaultImage,backgroundSize:\"contain\",backgroundPosition:\"center\",maskSize:\"contain\",maskPosition:\"center\",...style}});}Icon.displayName=\"Frameship/Icon\";export function iconProp({buttonTitle=\"Icon\",size=24,object=true}={}){return{type:ControlType.Object,buttonTitle,optional:true,defaultValue:{color:\"#000\",size},controls:{image:{type:ControlType.ResponsiveImage},color:{type:ControlType.Color,optional:true,defaultValue:\"#000\"},size:{type:ControlType.Number,defaultValue:size,min:1,step:1,displayStepper:true}}};}export function Button({tag=\"button\",fill,color,shadows,border,radius,padding,font,opacity,transition,variant=\"\",children,style,animate,...otherProps}){let background=\"none\";if(fill){if(fill.type===\"color\"){background=fill[`${variant}Color`]||fill.defaultColor;}else{background=`linear-gradient(${fill.gradientAngle}deg, ${fill[`${variant}ColorB`]||fill.defaultColorB}, ${fill[`${variant}ColorA`]||fill.defaultColorA})`;}}const Tag=motion[tag];const addWrapper=tag===\"input\";const elementChildren=[children,border&&/*#__PURE__*/_jsx(motion.div,{animate:{borderColor:border[`${variant}Color`]||border.defaultColor},style:{position:\"absolute\",inset:0,borderWidth:border.width,borderStyle:border.style,borderRadius:radius,pointerEvents:\"none\"},initial:false,transition:transition})];let element=/*#__PURE__*/_jsx(Tag,{style:{position:\"relative\",borderRadius:radius,padding:padding,textAlign:\"center\",appearance:\"none\",border:\"none\",...font,...style},animate:{background,color:typeof color===\"object\"?color[`${variant}Color`]||color.defaultColor:color,boxShadow:typeof shadows===\"object\"?shadows[`${variant}Shadows`]||shadows.defaultShadows:shadows,opacity:typeof opacity===\"object\"?typeof opacity[variant]===\"number\"?opacity[variant]:opacity.default:1,...animate},initial:false,transition:transition,children:addWrapper?undefined:elementChildren,...otherProps});if(addWrapper){element=/*#__PURE__*/_jsxs(\"div\",{style:{display:\"contents\"},children:[element,elementChildren]});}return element;}Button.displayName=\"Frameship/Button\";export function createButtonPropertyControls({variants=[],font=true,color=true,placeholder=false,opacity=false,padding=\"10px\",hidden={},endProps={}}){const allVariants=variants.length?variants:[{id:\"default\",title:\"Default\",optional:false,...Colors.Primary}];const colorControls={};const placeholderControls={};const fillControls={};const borderControls={};const shadowsControls={};const opacityControls={};const defaultColorValues={};const defaultPlaceholderValues={};const defaultFillValues={type:\"color\",gradientAngle:0};const defaultBorderValues={width:\"1px\",style:\"solid\"};const defaultOpacityValues={};let hasDefaultBorder=allVariants.some(variant=>variant.borderColor);for(const variant of allVariants){const isDefault=variant.id===\"default\";var _variant_optional;const optional=(_variant_optional=variant.optional)!==null&&_variant_optional!==void 0?_variant_optional:true;colorControls[`${variant.id}Color`]={type:ControlType.Color,optional,defaultValue:variant.color,title:isDefault?\"Color\":variant.title};if(placeholder){placeholderControls[`${variant.id}Color`]={type:ControlType.Color,optional,defaultValue:variant.placeholder,title:isDefault?\"Color\":variant.title};}fillControls[`${variant.id}Color`]={type:ControlType.Color,optional,defaultValue:variant.fill,title:isDefault?\"Color\":variant.title,hidden:props=>props.type!=\"color\"};fillControls[`${variant.id}ColorA`]={type:ControlType.Color,optional,defaultValue:variant.fillA,title:isDefault?\"Colors\":variant.title,hidden:props=>props.type!=\"linearGradient\"};fillControls[`${variant.id}ColorB`]={type:ControlType.Color,optional,defaultValue:variant.fillB,title:\" \",hidden:props=>props.type!=\"linearGradient\"};borderControls[`${variant.id}Color`]={type:ControlType.Color,optional:true,defaultValue:variant.borderColor,title:isDefault?\"Color\":variant.title};shadowsControls[`${variant.id}Shadows`]={type:ControlType.BoxShadow,title:variant.title};if(opacity){opacityControls[variant.id]={type:ControlType.Number,title:variant.title,defaultValue:typeof variant.opacity===\"number\"?variant.opacity:1,min:0,max:1,step:.01};}}for(const prop of Object.keys(colorControls)){defaultColorValues[prop]=colorControls[prop].defaultValue;}for(const prop of Object.keys(placeholderControls)){defaultPlaceholderValues[prop]=placeholderControls[prop].defaultValue;}for(const prop of Object.keys(fillControls)){defaultFillValues[prop]=fillControls[prop].defaultValue;}for(const prop of Object.keys(borderControls)){defaultBorderValues[prop]=borderControls[prop].defaultValue;}for(const prop of Object.keys(opacityControls)){defaultOpacityValues[prop]=opacityControls[prop].defaultValue;}return{font:font?{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.4},hidden:hidden[\"font\"]}:undefined,color:color?variants.length?{type:ControlType.Object,defaultValue:defaultColorValues,controls:colorControls,buttonTitle:\"Font Color\"}:colorControls[\"default\"]:undefined,placeholder:placeholder?variants.length?{type:ControlType.Object,defaultValue:defaultPlaceholderValues,controls:placeholderControls,hidden:hidden[\"placeholder\"]}:{...placeholderControls[\"default\"],hidden:hidden[\"placeholder\"]}:undefined,fill:{type:ControlType.Object,optional:true,defaultValue:defaultFillValues,controls:{type:{type:ControlType.Enum,options:[\"color\",\"linearGradient\"],optionTitles:[\"Color\",\"Gradient\"],displaySegmentedControl:true},...fillControls,gradientAngle:{type:ControlType.Number,defaultValue:0,title:\"Angle\",step:1,min:0,max:360,unit:\"\\xb0\",hidden:props=>props.type!=\"linearGradient\"}}},radius:{type:ControlType.BorderRadius,defaultValue:\"10px\"},padding:{type:ControlType.Padding,defaultValue:padding},border:{type:ControlType.Object,optional:true,defaultValue:hasDefaultBorder?defaultBorderValues:undefined,controls:{...borderControls,width:{type:ControlType.Padding,defaultValue:defaultBorderValues.width},style:{type:ControlType.Enum,defaultValue:defaultBorderValues.style,options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"]}}},shadows:variants.length?{type:ControlType.Object,optional:true,controls:shadowsControls}:{type:ControlType.BoxShadow},opacity:opacity?{type:ControlType.Object,controls:opacityControls}:undefined,...endProps,transition:variants.length>0?{type:ControlType.Transition,defaultValue:DEFAULT_TRANSITION}:undefined};}export function Message({title,subtitle}){return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",width:\"100%\",height:\"100%\",placeContent:\"center\",placeItems:\"center\",flexDirection:\"column\",gap:16,backgroundColor:\"rgba(136, 85, 255, 0.1)\",borderRadius:6,border:\"1px dashed rgb(136, 85, 255)\",color:\"rgb(136, 85, 255)\",fontSize:16,padding:20,minHeight:200,textWrap:\"balance\"},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontWeight:600,textAlign:\"center\"},children:title}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,opacity:.7,lineHeight:1.5,textAlign:\"center\"},children:subtitle})]});}Message.displayName=\"Frameship/Message\";export function currencyFormatProp({hidden=null}={}){return{type:ControlType.Object,title:\"Format\",hidden,controls:{style:{type:ControlType.Enum,defaultValue:\"symbol\",options:[\"symbol\",\"code\"],optionTitles:[\"Symbol ($)\",\"Code (USD)\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},decimals:{type:ControlType.Enum,defaultValue:\"auto\",options:[\"auto\",\"always\",\"never\"],optionTitles:[\"Auto\",\"Always (10.00)\",\"Never (10)\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},formatted:{type:ControlType.Boolean,defaultValue:true},locale:{type:ControlType.String,defaultValue:\"\",placeholder:`Auto (${typeof navigator!==\"undefined\"?navigator.language:\"\"})`,hidden:props=>!props.formatted}}};}export function formatCurrency(amount,currencyCode,options){amount=amount||0;const showDecimals=options.decimals==\"auto\"?amount%1!==0:options.decimals==\"always\";const decimals=showDecimals?2:0;let formattedAmount=\"\";if(options.formatted&&typeof Intl!==\"undefined\"){const locale=options.locale||(typeof navigator!==\"undefined\"?navigator.language:\"en-us\");const formatter=new Intl.NumberFormat(locale,{minimumFractionDigits:decimals,maximumFractionDigits:decimals});formattedAmount=formatter.format(amount);}else{formattedAmount=amount.toFixed(decimals);}if(!currencyCode||currencyCode===\"XXX\"){return formattedAmount;}const symbol=CurrencySymbols[currencyCode];if(options.style===\"code\"||!symbol){return`${formattedAmount} ${currencyCode}`;}else{return`${symbol}${formattedAmount}`;}}\nexport const __FramerMetadata__ = {\"exports\":{\"Colors\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Message\":{\"type\":\"reactComponent\",\"name\":\"Message\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"currencyFormatProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SHOPIFY_ID_ATTRIBUTE\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"parseShopifyId\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DEFAULT_TRANSITION\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Icon\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"OPEN_CART_EVENT\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"generateInstanceId\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"parseShopifyData\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Button\":{\"type\":\"reactComponent\",\"name\":\"Button\",\"slots\":[\"children\"],\"annotations\":{\"framerContractVersion\":\"1\"}},\"UPGRADE_LINK\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"formatCurrency\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"iconProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createButtonPropertyControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"styleLayer\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ShopifyDataType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Shared.map","import{RenderTarget}from\"framer\";import create from\"zustand\";import{persist}from\"zustand/middleware\";import{useState,useEffect}from\"react\";import{parseShopifyData}from\"https://framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/QgPaj0acipRJVnJP5qXz/Shared.js\";const CART_ID_STORAGE_ID=\"frameship-shopify-cart-id\";async function fetchShopifyData(query,variables={}){const{shopUrl,accessToken}=getFrameshipInfo();if(!shopUrl||!accessToken){console.log(\"No shop URL or access token\");return null;}try{const response=await fetch(`https://${shopUrl}/api/2024-10/graphql.json`,{method:\"POST\",headers:{\"Content-Type\":\"application/json\",\"X-Shopify-Storefront-Access-Token\":accessToken},body:JSON.stringify({query,variables})});const value=await response.json();return value?value.data:null;}catch(error){console.error(error);return null;}}// Add this shared fragment for cart fields\nconst CART_FRAGMENT=`\n  fragment CartFields on Cart {\n    id\n    checkoutUrl\n    cost {\n      subtotalAmount {\n        amount\n        currencyCode\n      }\n    }\n    lines(first: 10) {\n      edges {\n        node {\n          id\n          quantity\n          cost {\n            subtotalAmount {\n              amount\n              currencyCode\n            }\n            compareAtAmountPerQuantity {\n                amount\n                currencyCode\n            }\n          }\n          merchandise {\n            ... on ProductVariant {\n              id\n              title\n              price {\n                amount\n                currencyCode\n              }\n            }\n          }\n        }\n      }\n    }\n  }\n`;export const useCartStore=create(persist((set,get)=>({cartId:null,items:[],loading:false,error:null,checkoutUrl:null,subtotal:null,initializeCart:async(createNewCart=false)=>{if(get().items.length>0){return;}set({loading:true});try{const cartId=get().cartId;if(cartId){const cart=await fetchCart(cartId);set({items:cart.lines.edges.map(edge=>edge.node),checkoutUrl:cart.checkoutUrl,subtotal:cart.cost.subtotalAmount,loading:false});}else if(createNewCart){const newCart=await createCart();set({cartId:newCart.id,items:[],checkoutUrl:newCart.checkoutUrl,subtotal:newCart.cost.subtotalAmount,loading:false});}}catch(error){set({error:error.message,loading:false});}},addToCart:async(variantId,quantity)=>{set({loading:true});try{const cartId=get().cartId;const updatedCart=await addToCart(cartId,variantId,quantity);set({items:updatedCart.lines.edges.map(edge=>edge.node),subtotal:updatedCart.cost.subtotalAmount,loading:false});}catch(error){set({error:error.message,loading:false});}},removeFromCart:async lineId=>{set({loading:true});try{const cartId=get().cartId;const updatedCart=await removeFromCart(cartId,lineId);set({items:updatedCart.lines.edges.map(edge=>edge.node),subtotal:updatedCart.cost.subtotalAmount,loading:false});}catch(error){set({error:error.message,loading:false});}},setCartItemQuantity:async(lineId,quantity)=>{set({loading:true});try{const cartId=get().cartId;const updatedCart=await updateCartLineQuantity(cartId,lineId,quantity);set({items:updatedCart.lines.edges.map(edge=>edge.node),subtotal:updatedCart.cost.subtotalAmount,loading:false});}catch(error){set({error:error.message,loading:false});}},getCheckoutUrl:()=>{const checkoutUrl=get().checkoutUrl;if(!checkoutUrl){throw new Error(\"Cart not initialized or checkout URL not available\");}return checkoutUrl;},clearError:()=>set({error:null})}),{name:CART_ID_STORAGE_ID,partialize:state=>({cartId:state.cartId})}));async function createCart(){const mutation=`\n    ${CART_FRAGMENT}\n    mutation {\n      cartCreate {\n        cart {\n          ...CartFields\n        }\n      }\n    }\n  `;const data=await fetchShopifyData(mutation);return data?data.cartCreate.cart:null;}async function fetchCart(cartId){const query=`\n    ${CART_FRAGMENT}\n    query($cartId: ID!) {\n      cart(id: $cartId) {\n        ...CartFields\n      }\n    }\n  `;const variables={cartId};const data=await fetchShopifyData(query,variables);return data?data.cart:null;}async function addToCart(cartId,variantId,quantity){const mutation=`\n    ${CART_FRAGMENT}\n    mutation($cartId: ID!, $lines: [CartLineInput!]!) {\n      cartLinesAdd(cartId: $cartId, lines: $lines) {\n        cart {\n          ...CartFields\n        }\n        userErrors {\n          field\n          message\n        }\n      }\n    }\n  `;const variables={cartId,lines:[{quantity:quantity,merchandiseId:variantId}]};try{const data=await fetchShopifyData(mutation,variables);if(data&&data.cartLinesAdd.userErrors.length>0){const cartNotFoundError=data.cartLinesAdd.userErrors.find(e=>e.message===\"The specified cart does not exist.\");if(cartNotFoundError){// Create new cart and retry adding the item\nconst newCart=await createCart();const retryVariables={cartId:newCart.id,lines:[{quantity:quantity,merchandiseId:variantId}]};const retryData=await fetchShopifyData(mutation,retryVariables);if(retryData&&retryData.cartLinesAdd.userErrors.length>0){throw new Error(retryData.cartLinesAdd.userErrors.map(e=>e.message).join(\", \"));}return retryData.cartLinesAdd.cart;}throw new Error(data.cartLinesAdd.userErrors.map(e=>e.message).join(\", \"));}return data?data.cartLinesAdd.cart:null;}catch(error){throw error;}}async function removeFromCart(cartId,lineId){const mutation=`\n    ${CART_FRAGMENT}\n    mutation($cartId: ID!, $lineIds: [ID!]!) {\n      cartLinesRemove(cartId: $cartId, lineIds: $lineIds) {\n        cart {\n          ...CartFields\n        }\n      }\n    }\n  `;const variables={cartId,lineIds:[lineId]};const data=await fetchShopifyData(mutation,variables);return data?data.cartLinesRemove.cart:null;}export async function getAmountInStock(productId){const query=`\n\t\tquery getInventory($id: ID!) {\n\t\t\tproduct(id: $id) {\n\t\t\t\tvariants(first: 100) {\n\t\t\t\t\tedges {\n\t\t\t\t\t\tnode {\n\t\t\t\t\t\t\tid\n\t\t\t\t\t\t\tquantityAvailable\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`;const variables={id:productId};try{const data=await fetchShopifyData(query,variables);const inventoryByVariant={};if(data){for(const edge of data.product.variants.edges){inventoryByVariant[edge.node.id]=edge.node.quantityAvailable;}}return inventoryByVariant;}catch(error){console.error(\"Error fetching inventory:\",error);throw error;}}export function useAmountInStock(shopifyData){const{shopifyId}=parseShopifyData(shopifyData);// const isCanvas = RenderTarget.current() === RenderTarget.canvas\nconst[inventory,setInventory]=useState({});const[isLoading,setIsLoading]=useState(true);useEffect(()=>{setIsLoading(true);getAmountInStock(shopifyId).then(value=>{setInventory(value);setIsLoading(false);});},[shopifyId]);return[inventory,isLoading];}async function updateCartLineQuantity(cartId,lineId,quantity){const mutation=`\n    ${CART_FRAGMENT}\n    mutation($cartId: ID!, $lines: [CartLineUpdateInput!]!) {\n      cartLinesUpdate(cartId: $cartId, lines: $lines) {\n        cart {\n          ...CartFields\n        }\n        userErrors {\n          field\n          message\n        }\n      }\n    }\n  `;const variables={cartId,lines:[{id:lineId,quantity:quantity}]};const data=await fetchShopifyData(mutation,variables);if(data&&data.cartLinesUpdate.userErrors.length>0){throw new Error(data.cartLinesUpdate.userErrors.map(e=>e.message).join(\", \"));}return data?data.cartLinesUpdate.cart:null;}export async function generateBuyNowCheckoutUrl(variantId,quantity=1){const mutation=`\n\t\tmutation($input: CartInput!) {\n\t\t\tcartCreate(input: $input) {\n\t\t\t\tcart {\n\t\t\t\t\tcheckoutUrl\n\t\t\t\t}\n\t\t\t\tuserErrors {\n\t\t\t\t\tfield\n\t\t\t\t\tmessage\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t`;const variables={input:{lines:[{quantity:quantity,merchandiseId:variantId}]}};try{const data=await fetchShopifyData(mutation,variables);if(data&&data.cartCreate.userErrors.length>0){throw new Error(data.cartCreate.userErrors.map(e=>e.message).join(\", \"));}return data?data.cartCreate.cart.checkoutUrl:null;}catch(error){console.error(\"Error creating buy now cart:\",error);throw error;}}export function getFrameshipInfo(){const isCanvas=RenderTarget.current()===RenderTarget.canvas;let shopUrl=\"\";let accessToken=\"\";let stagingDomain=\"\";let productionDomain=\"\";let hasAccess=false;if(typeof document!==\"undefined\"&&typeof window!==\"undefined\"){const hostname=window.location.hostname;const isPreview=hostname.endsWith(\".framercanvas.com\");if(isPreview){hasAccess=true;}const frameshipComponent=document.querySelector(\"div[data-frameship-component]\");if(frameshipComponent){const{stagingDomain:newStagingDomain,productionDomain:newProductionDomain,hasAccess:newHasAccess}=parseFrameshipInfo(frameshipComponent.getAttribute(\"data-staging-domain\"),frameshipComponent.getAttribute(\"data-production-domain\"));if(newHasAccess){shopUrl=frameshipComponent.getAttribute(\"data-shop-url\")||\"\";accessToken=frameshipComponent.getAttribute(\"data-shopify-access-token\")||\"\";stagingDomain=newStagingDomain;productionDomain=newProductionDomain;hasAccess=true;}}}else{hasAccess=true// Show as having access in optimized version of site\n;}return{shopUrl,accessToken,stagingDomain,productionDomain,hasAccess};}export function parseFrameshipInfo(stagingDomain,productionDomain){if(typeof document===\"undefined\"||typeof window===\"undefined\"){return{stagingDomain:\"\",productionDomain:\"\",hasAccess:true};}const hostname=window.location.hostname;const isPreview=hostname.endsWith(\".framercanvas.com\");const stagingDomainValue=(stagingDomain||\"\").replace(\"https://\",\"\");const productionDomainValue=(productionDomain||\"\").replace(\"https://\",\"\");if(isPreview||hostname==stagingDomainValue||hostname==productionDomainValue){return{stagingDomain:stagingDomainValue,productionDomain:productionDomainValue,hasAccess:true};}else{return{stagingDomain:\"\",productionDomain:\"\",hasAccess:false};}}\nexport const __FramerMetadata__ = {\"exports\":{\"getFrameshipInfo\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAmountInStock\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useCartStore\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"generateBuyNowCheckoutUrl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"parseFrameshipInfo\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getAmountInStock\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","export function getCollectionData(collectionList){var _collectionList_props,_collectionList_props_children_props,_collectionList_props_children,_collectionList_props1,_collectionList_props_children_props_children_props,_collectionList_props_children_props_children,_collectionList_props_children_props1,_collectionList_props_children1,_collectionList_props2,_queryParent_props;let queryParent=null;if(collectionList===null||collectionList===void 0?void 0:(_collectionList_props=collectionList.props)===null||_collectionList_props===void 0?void 0:_collectionList_props.query){queryParent=collectionList;}else if(collectionList===null||collectionList===void 0?void 0:(_collectionList_props1=collectionList.props)===null||_collectionList_props1===void 0?void 0:(_collectionList_props_children=_collectionList_props1.children)===null||_collectionList_props_children===void 0?void 0:(_collectionList_props_children_props=_collectionList_props_children.props)===null||_collectionList_props_children_props===void 0?void 0:_collectionList_props_children_props.query){queryParent=collectionList.props.children;}else if(collectionList===null||collectionList===void 0?void 0:(_collectionList_props2=collectionList.props)===null||_collectionList_props2===void 0?void 0:(_collectionList_props_children1=_collectionList_props2.children)===null||_collectionList_props_children1===void 0?void 0:(_collectionList_props_children_props1=_collectionList_props_children1.props)===null||_collectionList_props_children_props1===void 0?void 0:(_collectionList_props_children_props_children=_collectionList_props_children_props1.children)===null||_collectionList_props_children_props_children===void 0?void 0:(_collectionList_props_children_props_children_props=_collectionList_props_children_props_children.props)===null||_collectionList_props_children_props_children_props===void 0?void 0:_collectionList_props_children_props_children_props.query){queryParent=collectionList.props.children.props.children;}const query=queryParent===null||queryParent===void 0?void 0:(_queryParent_props=queryParent.props)===null||_queryParent_props===void 0?void 0:_queryParent_props.query;let queryData=null;if(query===null||query===void 0?void 0:query.from){if(query.from.data){queryData=query.from.data;}else if(query.from.left){let left=query.from.left;for(let i=0;i<100;i++){if(left.type==\"Collection\"){queryData=left.data;break;}else if(left.left){left=left.left;}else{break;}}}}// Get property controls\nconst propertyControlsById=(queryData===null||queryData===void 0?void 0:queryData.propertyControls)||{};const propertyControlsByName={};for(const id in propertyControlsById){const control=propertyControlsById[id];propertyControlsByName[control.title]={id,...control};}// Get children function\nlet childrenFunction=null;if(collectionList){var _collectionList_props3,_clpc_props,_clpc_props_children_props,_clpc_props_children,_clpc_props1;const clpc=(_collectionList_props3=collectionList.props)===null||_collectionList_props3===void 0?void 0:_collectionList_props3.children;if(typeof clpc==\"function\"){childrenFunction=clpc;}else if(typeof(clpc===null||clpc===void 0?void 0:(_clpc_props=clpc.props)===null||_clpc_props===void 0?void 0:_clpc_props.children)==\"function\"){childrenFunction=clpc.props.children;}else if(typeof(clpc===null||clpc===void 0?void 0:(_clpc_props1=clpc.props)===null||_clpc_props1===void 0?void 0:(_clpc_props_children=_clpc_props1.children)===null||_clpc_props_children===void 0?void 0:(_clpc_props_children_props=_clpc_props_children.props)===null||_clpc_props_children_props===void 0?void 0:_clpc_props_children_props.children)==\"function\"){childrenFunction=clpc.props.children.props.children;}}return{query,queryParent,queryData,propertyControlsById,propertyControlsByName,childrenFunction};}export function addFieldsToSelect(fields,query,propertyControlsByName){const alias=query.alias;const select=Array.isArray(query===null||query===void 0?void 0:query.select)?[...query.select]:[];for(const fieldName of fields){var _propertyControlsByName_fieldName;const fieldId=(_propertyControlsByName_fieldName=propertyControlsByName[fieldName])===null||_propertyControlsByName_fieldName===void 0?void 0:_propertyControlsByName_fieldName.id;if(!fieldId){continue;}let matchFound=false;for(const item of select){if(item.name===fieldId&&item.type===\"Identifier\"&&item.collection===alias){matchFound=true;continue;}}if(matchFound){continue;}select.push({collection:alias,name:fieldId,type:\"Identifier\"});}return select;}\nexport const __FramerMetadata__ = {\"exports\":{\"getCollectionData\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"addFieldsToSelect\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CMSLibrary.map","/*\n * CMSLibrary\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/OPJlnSDokJ2eD9lIXljn/mr2QJ5zw4xvkJ1Vbvzgr/CMSLibrary.js\"\n"],"mappings":"kjBAAunC,SAAgB,EAAe,EAAG,EAAK,CAAuE,OAAnE,OAAO,GAAK,SAAuB,EAAG,WAAW,EAAK,CAAS,EAAU,GAAG,IAAO,IAAvD,GAA6D,SAAgB,EAAiB,EAAY,CAAC,GAAG,CAAC,EAAa,OAAO,EAAoB,IAAM,EAAW,EAAiB,GAAa,GAAG,EAAY,OAAO,EAAY,GAAG,CAAC,IAAM,EAAK,KAAK,MAAM,EAAY,CAAO,EAAW,CAAC,UAAU,EAAe,EAAK,GAAG,yBAAyB,CAAC,gBAAgB,IAAK,gBAA2B,SAAS,MAAM,QAAQ,EAAK,SAAS,CAAC,EAAK,SAAS,IAAI,IAAU,CAAC,GAAG,EAAQ,GAAG,EAAe,EAAQ,GAAG,gCAAgC,CAAC,EAAE,CAAC,EAAE,CAAC,CAA0C,MAAzC,GAAiB,GAAa,EAAkB,QAAkB,EAAM,CAAoD,OAAnD,QAAQ,MAAM,8BAA8B,EAAM,CAAQ,GAA4N,SAAgB,EAAW,EAAM,EAAM,CAAC,EAAM,MAAM,QAAQ,EAAM,CAAC,EAAM,GAAG,EAAM,IAAI,EAAS,EAAY,EAAM,GAA0C,MAAY,EAAO,GAA0C,OAA+b,OAArb,GAAO,EAAM,OAAO,IAAQ,GAAO,KAAS,AAAwR,EAArR,OAAO,EAAM,MAAO,YAAY,OAAO,EAAM,MAAM,UAAW,SAAgC,EAAa,EAAM,CAAC,SAAS,CAAC,GAAG,EAAM,MAAM,SAAS,MAAM,CAAC,GAAG,EAAM,MAAM,SAAS,MAAM,MAAM,CAAC,GAAG,EAAM,MAAM,SAAS,MAAM,MAAM,GAAG,GAAO,CAAC,QAAM,CAAC,GAAG,GAAQ,CAAC,SAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAA6B,EAAa,EAAM,CAAC,MAAM,CAAC,GAAG,EAAM,MAAM,MAAM,GAAG,GAAO,CAAC,QAAM,CAAC,GAAG,GAAQ,CAAC,SAAO,CAAC,CAAC,CAAC,EAAU,EAAU,SAAgB,EAAK,CAAC,QAAM,QAAM,OAAK,QAAM,EAAE,CAAC,gBAAc,CAAC,IAAI,EAAW,IAAS,GAA0C,IAAK,IAAA,GAAU,QAAQ,OAAoB,EAAK,MAAM,CAAC,aAAa,GAA0C,IAAI,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,SAAS,EAAK,UAAU,EAAK,cAAc,OAAO,gBAAgB,EAAW,gBAAgB,EAAW,OAAO,QAAQ,GAA0C,IAAI,IAAI,UAAW,GAA0C,IAAK,QAAQ,GAA0C,IAAI,IAAI,EAAa,eAAe,UAAU,mBAAmB,SAAS,SAAS,UAAU,aAAa,SAAS,GAAG,EAAM,CAAC,CAAC,CAAoC,SAAgB,EAAS,CAAC,cAAY,OAAO,OAAK,GAAG,SAAO,IAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,cAAY,SAAS,GAAK,aAAa,CAAC,MAAM,OAAO,OAAK,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAY,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAY,MAAM,SAAS,GAAK,aAAa,OAAO,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,aAAa,EAAK,IAAI,EAAE,KAAK,EAAE,eAAe,GAAK,CAAC,CAAC,CAAE,SAAgB,EAAO,CAAC,MAAI,SAAS,OAAK,QAAM,UAAQ,SAAO,SAAO,UAAQ,OAAK,UAAQ,aAAW,UAAQ,GAAG,WAAS,QAAM,UAAQ,GAAG,GAAY,CAAC,IAAI,EAAW,OAAU,IAAM,AAAoF,EAAjF,EAAK,OAAO,QAAoB,EAAK,GAAG,EAAQ,SAAS,EAAK,aAA8B,mBAAmB,EAAK,cAAc,OAAO,EAAK,GAAG,EAAQ,UAAU,EAAK,cAAc,IAAI,EAAK,GAAG,EAAQ,UAAU,EAAK,cAAc,IAAK,IAAM,EAAI,EAAO,GAAW,EAAW,IAAM,QAAc,EAAgB,CAAC,EAAS,GAAqB,EAAK,EAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAO,GAAG,EAAQ,SAAS,EAAO,aAAa,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,EAAE,YAAY,EAAO,MAAM,YAAY,EAAO,MAAM,aAAa,EAAO,cAAc,OAAO,CAAC,QAAQ,GAAiB,aAAW,CAAC,CAAC,CAAK,EAAqB,EAAK,EAAI,CAAC,MAAM,CAAC,SAAS,WAAW,aAAa,EAAe,UAAQ,UAAU,SAAS,WAAW,OAAO,OAAO,OAAO,GAAG,EAAK,GAAG,EAAM,CAAC,QAAQ,CAAC,aAAW,MAAM,OAAO,GAAQ,SAAS,EAAM,GAAG,EAAQ,SAAS,EAAM,aAAa,EAAM,UAAU,OAAO,GAAU,SAAS,EAAQ,GAAG,EAAQ,WAAW,EAAQ,eAAe,EAAQ,QAAQ,OAAO,GAAU,SAAS,OAAO,EAAQ,IAAW,SAAS,EAAQ,GAAS,EAAQ,QAAQ,EAAE,GAAG,EAAQ,CAAC,QAAQ,GAAiB,aAAW,SAAS,EAAW,IAAA,GAAU,EAAgB,GAAG,EAAW,CAAC,CAAmH,OAA/G,IAAY,EAAqB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,WAAW,CAAC,SAAS,CAAC,EAAQ,EAAgB,CAAC,CAAC,EAAS,EAA+C,SAAgB,EAA6B,CAAC,WAAS,EAAE,CAAC,OAAK,GAAK,QAAM,GAAK,cAAY,GAAM,UAAQ,GAAM,UAAQ,OAAO,SAAO,EAAE,CAAC,WAAS,EAAE,EAAE,CAAC,IAAM,EAAY,EAAS,OAAO,EAAS,CAAC,CAAC,GAAG,UAAU,MAAM,UAAU,SAAS,GAAM,GAAG,EAAO,QAAQ,CAAC,CAAO,EAAc,EAAE,CAAO,EAAoB,EAAE,CAAO,EAAa,EAAE,CAAO,EAAe,EAAE,CAAO,EAAgB,EAAE,CAAO,EAAgB,EAAE,CAAO,EAAmB,EAAE,CAAO,EAAyB,EAAE,CAAO,EAAkB,CAAC,KAAK,QAAQ,cAAc,EAAE,CAAO,EAAoB,CAAC,MAAM,MAAM,MAAM,QAAQ,CAAO,EAAqB,EAAE,CAAK,EAAiB,EAAY,KAAK,GAAS,EAAQ,YAAY,CAAC,IAAI,IAAM,KAAW,EAAY,CAAC,IAAM,EAAU,EAAQ,KAAK,UAAsC,EAA4B,EAAQ,UAA+D,GAAK,EAAc,GAAG,EAAQ,GAAG,QAAQ,CAAC,KAAK,EAAY,MAAM,WAAS,aAAa,EAAQ,MAAM,MAAM,EAAU,QAAQ,EAAQ,MAAM,CAAI,IAAa,EAAoB,GAAG,EAAQ,GAAG,QAAQ,CAAC,KAAK,EAAY,MAAM,WAAS,aAAa,EAAQ,YAAY,MAAM,EAAU,QAAQ,EAAQ,MAAM,EAAE,EAAa,GAAG,EAAQ,GAAG,QAAQ,CAAC,KAAK,EAAY,MAAM,WAAS,aAAa,EAAQ,KAAK,MAAM,EAAU,QAAQ,EAAQ,MAAM,OAAO,GAAO,EAAM,MAAM,QAAQ,CAAC,EAAa,GAAG,EAAQ,GAAG,SAAS,CAAC,KAAK,EAAY,MAAM,WAAS,aAAa,EAAQ,MAAM,MAAM,EAAU,SAAS,EAAQ,MAAM,OAAO,GAAO,EAAM,MAAM,iBAAiB,CAAC,EAAa,GAAG,EAAQ,GAAG,SAAS,CAAC,KAAK,EAAY,MAAM,WAAS,aAAa,EAAQ,MAAM,MAAM,IAAI,OAAO,GAAO,EAAM,MAAM,iBAAiB,CAAC,EAAe,GAAG,EAAQ,GAAG,QAAQ,CAAC,KAAK,EAAY,MAAM,SAAS,GAAK,aAAa,EAAQ,YAAY,MAAM,EAAU,QAAQ,EAAQ,MAAM,CAAC,EAAgB,GAAG,EAAQ,GAAG,UAAU,CAAC,KAAK,EAAY,UAAU,MAAM,EAAQ,MAAM,CAAI,IAAS,EAAgB,EAAQ,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,EAAQ,MAAM,aAAa,OAAO,EAAQ,SAAU,SAAS,EAAQ,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,EAAG,IAAI,IAAM,KAAQ,OAAO,KAAK,EAAc,CAAE,EAAmB,GAAM,EAAc,GAAM,aAAc,IAAI,IAAM,KAAQ,OAAO,KAAK,EAAoB,CAAE,EAAyB,GAAM,EAAoB,GAAM,aAAc,IAAI,IAAM,KAAQ,OAAO,KAAK,EAAa,CAAE,EAAkB,GAAM,EAAa,GAAM,aAAc,IAAI,IAAM,KAAQ,OAAO,KAAK,EAAe,CAAE,EAAoB,GAAM,EAAe,GAAM,aAAc,IAAI,IAAM,KAAQ,OAAO,KAAK,EAAgB,CAAE,EAAqB,GAAM,EAAgB,GAAM,aAAc,MAAM,CAAC,KAAK,EAAK,CAAC,KAAK,OAAO,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,GAAG,WAAW,IAAI,CAAC,OAAO,EAAO,KAAQ,CAAC,IAAA,GAAU,MAAM,EAAM,EAAS,OAAO,CAAC,KAAK,EAAY,OAAO,aAAa,EAAmB,SAAS,EAAc,YAAY,aAAa,CAAC,EAAc,QAAW,IAAA,GAAU,YAAY,EAAY,EAAS,OAAO,CAAC,KAAK,EAAY,OAAO,aAAa,EAAyB,SAAS,EAAoB,OAAO,EAAO,YAAe,CAAC,CAAC,GAAG,EAAoB,QAAW,OAAO,EAAO,YAAe,CAAC,IAAA,GAAU,KAAK,CAAC,KAAK,EAAY,OAAO,SAAS,GAAK,aAAa,EAAkB,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,QAAQ,CAAC,QAAQ,iBAAiB,CAAC,aAAa,CAAC,QAAQ,WAAW,CAAC,wBAAwB,GAAK,CAAC,GAAG,EAAa,cAAc,CAAC,KAAK,EAAY,OAAO,aAAa,EAAE,MAAM,QAAQ,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,IAAO,OAAO,GAAO,EAAM,MAAM,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAY,aAAa,aAAa,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,aAAa,EAAQ,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,SAAS,GAAK,aAAa,EAAiB,EAAoB,IAAA,GAAU,SAAS,CAAC,GAAG,EAAe,MAAM,CAAC,KAAK,EAAY,QAAQ,aAAa,EAAoB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAY,KAAK,aAAa,EAAoB,MAAM,QAAQ,CAAC,QAAQ,SAAS,SAAS,SAAS,CAAC,aAAa,CAAC,QAAQ,SAAS,SAAS,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAS,OAAO,CAAC,KAAK,EAAY,OAAO,SAAS,GAAK,SAAS,EAAgB,CAAC,CAAC,KAAK,EAAY,UAAU,CAAC,QAAQ,EAAQ,CAAC,KAAK,EAAY,OAAO,SAAS,EAAgB,CAAC,IAAA,GAAU,GAAG,EAAS,WAAW,EAAS,OAAO,EAAE,CAAC,KAAK,EAAY,WAAW,aAAa,EAAmB,CAAC,IAAA,GAAU,CAAE,SAAgB,EAAQ,CAAC,QAAM,YAAU,CAAC,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,MAAM,OAAO,OAAO,OAAO,aAAa,SAAS,WAAW,SAAS,cAAc,SAAS,IAAI,GAAG,gBAAgB,0BAA0B,aAAa,EAAE,OAAO,+BAA+B,MAAM,oBAAoB,SAAS,GAAG,QAAQ,GAAG,UAAU,IAAI,SAAS,UAAU,CAAC,SAAS,CAAc,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,IAAI,UAAU,SAAS,CAAC,SAAS,EAAM,CAAC,CAAc,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,GAAG,WAAW,IAAI,UAAU,SAAS,CAAC,SAAS,EAAS,CAAC,CAAC,CAAC,CAAC,CAA0C,SAAgB,EAAmB,CAAC,SAAO,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAO,SAAS,CAAC,MAAM,CAAC,KAAK,EAAY,KAAK,aAAa,SAAS,QAAQ,CAAC,SAAS,OAAO,CAAC,aAAa,CAAC,aAAa,aAAa,CAAC,wBAAwB,GAAK,0BAA0B,WAAW,CAAC,SAAS,CAAC,KAAK,EAAY,KAAK,aAAa,OAAO,QAAQ,CAAC,OAAO,SAAS,QAAQ,CAAC,aAAa,CAAC,OAAO,iBAAiB,aAAa,CAAC,wBAAwB,GAAK,0BAA0B,WAAW,CAAC,UAAU,CAAC,KAAK,EAAY,QAAQ,aAAa,GAAK,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,aAAa,GAAG,YAAY,SAAgB,IAAY,OAA+B,GAAnB,EAAU,SAAY,GAAG,OAAO,GAAO,CAAC,EAAM,UAAU,CAAC,CAAC,CAAE,SAAgB,EAAe,EAAO,EAAa,EAAQ,CAAC,IAAe,EAAsF,IAAM,GAAvE,EAAQ,UAAU,OAAO,EAAO,GAAI,EAAE,EAAQ,UAAU,UAAqC,EAAE,EAAM,EAAgB,GAAG,GAAG,EAAQ,WAAW,OAAO,KAAO,IAAY,CAAC,IAAM,EAAO,EAAQ,SAAgB,IAAY,OAA+B,QAAnB,EAAU,UAAgI,EAA9F,IAAI,KAAK,aAAa,EAAO,CAAC,sBAAsB,EAAS,sBAAsB,EAAS,CAAC,CAA2B,OAAO,EAAO,MAAO,EAAgB,EAAO,QAAQ,EAAS,CAAE,GAAG,CAAC,GAAc,IAAe,MAAO,OAAO,EAAiB,IAAM,EAAOA,EAAgB,GAAmG,OAAlF,EAAQ,QAAQ,QAAQ,CAAC,EAAc,GAAG,EAAgB,GAAG,IAA2B,GAAG,IAAS,uCAA9hX,IAAgC,IAAwC,IAAkC,IAAgI,CAAa,EAAa,6CAAwE,SAAS,EAAgB,CAAC,EAAgB,QAAW,yBAAyB,EAAgB,eAAkB,gCAAgC,EAAgB,cAAiB,iCAAkC,AAAkB,IAAgB,EAAE,CAAE,CAAuE,EAAgB,sBAAmC,EAAmB,CAAC,KAAK,SAAS,SAAS,GAAG,OAAO,EAAE,CAAc,EAAO,CAAC,QAAQ,CAAC,MAAM,OAAO,KAAK,UAAU,MAAM,UAAU,MAAM,UAAU,CAAC,OAAO,CAAC,MAAM,OAAO,KAAK,OAAO,MAAM,UAAU,MAAM,OAAO,CAAC,CAA+E,EAAmB,CAAC,UAAU,GAAG,gBAAgB,GAAM,SAAS,EAAE,CAAC,CAAO,EAAiB,EAAE,CAAoxE,EAAK,YAAY,iBAA20D,EAAO,YAAY,mBAA02J,EAAQ,YAAY,uBCA/zT,eAAe,EAAiB,EAAM,EAAU,EAAE,CAAC,CAAC,GAAK,CAAC,UAAQ,eAAa,GAAkB,CAAC,GAAG,CAAC,GAAS,CAAC,EAAwD,OAA3C,QAAQ,IAAI,8BAA8B,CAAQ,KAAM,GAAG,CAA8N,IAAM,EAAM,MAA1N,MAAM,MAAM,WAAW,EAAQ,2BAA2B,CAAC,OAAO,OAAO,QAAQ,CAAC,eAAe,mBAAmB,oCAAoC,EAAY,CAAC,KAAK,KAAK,UAAU,CAAC,QAAM,YAAU,CAAC,CAAC,CAAC,EAA4B,MAAM,CAAC,OAAO,EAAM,EAAM,KAAK,WAAY,EAAM,CAAsB,OAArB,QAAQ,MAAM,EAAM,CAAQ,MAwCojC,eAAe,GAAY,CAAC,IAAM,EAAS;MACh5D,EAAc;;;;;;;;IAQV,EAAK,MAAM,EAAiB,EAAS,CAAC,OAAO,EAAK,EAAK,WAAW,KAAK,KAAM,eAAe,EAAU,EAAO,CAAC,IAAM,EAAM;MAC9H,EAAc;;;;;;IAMe,EAAK,MAAM,EAAiB,EAA3C,CAAC,SAAO,CAAmD,CAAC,OAAO,EAAK,EAAK,KAAK,KAAM,eAAe,EAAU,EAAO,EAAU,EAAS,CAAC,IAAM,EAAS;MACzK,EAAc;;;;;;;;;;;;IAYV,EAAU,CAAC,SAAO,MAAM,CAAC,CAAU,WAAS,cAAc,EAAU,CAAC,CAAC,CAAC,GAAG,CAAC,IAAM,EAAK,MAAM,EAAiB,EAAS,EAAU,CAAC,GAAG,GAAM,EAAK,aAAa,WAAW,OAAO,EAAE,CAAgH,GAAvF,EAAK,aAAa,WAAW,KAAK,GAAG,EAAE,UAAU,qCAAqC,CAAsB,CAC9R,IAAM,EAAe,CAAC,QAAzC,MAAM,GAAY,EAAsC,GAAG,MAAM,CAAC,CAAU,WAAS,cAAc,EAAU,CAAC,CAAC,CAAO,EAAU,MAAM,EAAiB,EAAS,EAAe,CAAC,GAAG,GAAW,EAAU,aAAa,WAAW,OAAO,EAAG,MAAU,MAAM,EAAU,aAAa,WAAW,IAAI,GAAG,EAAE,QAAQ,CAAC,KAAK,KAAK,CAAC,CAAE,OAAO,EAAU,aAAa,KAAM,MAAU,MAAM,EAAK,aAAa,WAAW,IAAI,GAAG,EAAE,QAAQ,CAAC,KAAK,KAAK,CAAC,CAAE,OAAO,EAAK,EAAK,aAAa,KAAK,WAAY,EAAM,CAAC,MAAM,GAAQ,eAAe,EAAe,EAAO,EAAO,CAAC,IAAM,EAAS;MACnjB,EAAc;;;;;;;;IAQgC,EAAK,MAAM,EAAiB,EAA5D,CAAC,SAAO,QAAQ,CAAC,EAAO,CAAC,CAAsD,CAAC,OAAO,EAAK,EAAK,gBAAgB,KAAK,KAAM,eAAsB,EAAiB,EAAU,CAAC,IAazL,EAAU,CAAC,GAAG,EAAU,CAAC,GAAG,CAAC,IAAM,EAAK,MAAM,EAAiB;;;;;;;;;;;;;GAAM,EAAU,CAAO,EAAmB,EAAE,CAAC,GAAG,EAAM,IAAI,IAAM,KAAQ,EAAK,QAAQ,SAAS,MAAO,EAAmB,EAAK,KAAK,IAAI,EAAK,KAAK,kBAAoB,OAAO,QAA0B,EAAM,CAAkD,MAAjD,QAAQ,MAAM,4BAA4B,EAAM,CAAO,GAAQ,SAAgB,EAAiB,EAAY,CAAC,GAAK,CAAC,aAAW,EAAiB,EAAY,CAC1a,CAAC,EAAU,GAAcC,EAAS,EAAE,CAAC,CAAM,CAAC,EAAU,GAAcA,EAAS,GAAK,CAAsI,OAArI,MAAc,CAAC,EAAa,GAAK,CAAC,EAAiB,EAAU,CAAC,KAAK,GAAO,CAAC,EAAa,EAAM,CAAC,EAAa,GAAM,EAAG,EAAG,CAAC,EAAU,CAAC,CAAO,CAAC,EAAU,EAAU,CAAE,eAAe,EAAuB,EAAO,EAAO,EAAS,CAAC,IAAM,EAAS;MACjU,EAAc;;;;;;;;;;;;IAYqD,EAAK,MAAM,EAAiB,EAAjF,CAAC,SAAO,MAAM,CAAC,CAAC,GAAG,EAAgB,WAAS,CAAC,CAAC,CAAsD,CAAC,GAAG,GAAM,EAAK,gBAAgB,WAAW,OAAO,EAAG,MAAU,MAAM,EAAK,gBAAgB,WAAW,IAAI,GAAG,EAAE,QAAQ,CAAC,KAAK,KAAK,CAAC,CAAE,OAAO,EAAK,EAAK,gBAAgB,KAAK,KAYoG,SAAgB,GAAkB,CAAgB,EAAa,SAAS,CAAG,EAAa,OAAO,IAAI,EAAQ,GAAO,EAAY,GAAO,EAAc,GAAO,EAAiB,GAAO,EAAU,GAAM,GAAG,OAAO,SAAW,KAAoB,IAAS,OAAY,CAAgB,EAAO,SAAS,SAAkC,SAAS,oBAAoB,GAAe,EAAU,IAAM,IAAM,EAAmB,SAAS,cAAc,gCAAgC,CAAC,GAAG,EAAmB,CAAC,GAAK,CAAC,cAAc,EAAiB,iBAAiB,EAAoB,UAAU,GAAc,EAAmB,EAAmB,aAAa,sBAAsB,CAAC,EAAmB,aAAa,yBAAyB,CAAC,CAAI,IAAc,EAAQ,EAAmB,aAAa,gBAAgB,EAAE,GAAG,EAAY,EAAmB,aAAa,4BAA4B,EAAE,GAAG,EAAc,EAAiB,EAAiB,EAAoB,EAAU,UAAa,EAAU,GACh1C,MAAM,CAAC,UAAQ,cAAY,gBAAc,mBAAiB,YAAU,CAAE,SAAgB,EAAmB,EAAc,EAAiB,CAAC,GAAG,OAAO,SAAW,KAAoB,IAAS,OAAa,MAAM,CAAC,cAAc,GAAG,iBAAiB,GAAG,UAAU,GAAK,CAAE,IAAM,EAAS,EAAO,SAAS,SAAe,EAAU,EAAS,SAAS,oBAAoB,CAAO,GAAoB,GAAe,IAAI,QAAQ,WAAW,GAAG,CAAO,GAAuB,GAAkB,IAAI,QAAQ,WAAW,GAAG,CAAmL,OAA/K,GAAW,GAAU,GAAoB,GAAU,EAA6B,CAAC,cAAc,EAAmB,iBAAiB,EAAsB,UAAU,GAAK,CAAa,CAAC,cAAc,GAAG,iBAAiB,GAAG,UAAU,GAAM,4BAvHjsB,IAA4B,IAAwC,IAAsC,IAAwH,CAAM,EAAmB,4BACtR,EAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuCL,EAAa,EAAO,GAAS,EAAI,KAAO,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC,QAAQ,GAAM,MAAM,KAAK,YAAY,KAAK,SAAS,KAAK,eAAe,MAAM,EAAc,KAAQ,CAAI,QAAK,CAAC,MAAM,OAAO,GAAW,GAAI,CAAC,QAAQ,GAAK,CAAC,CAAC,GAAG,CAAC,IAAM,EAAO,GAAK,CAAC,OAAO,GAAG,EAAO,CAAC,IAAM,EAAK,MAAM,EAAU,EAAO,CAAC,EAAI,CAAC,MAAM,EAAK,MAAM,MAAM,IAAI,GAAM,EAAK,KAAK,CAAC,YAAY,EAAK,YAAY,SAAS,EAAK,KAAK,eAAe,QAAQ,GAAM,CAAC,SAAU,EAAc,CAAC,IAAM,EAAQ,MAAM,GAAY,CAAC,EAAI,CAAC,OAAO,EAAQ,GAAG,MAAM,EAAE,CAAC,YAAY,EAAQ,YAAY,SAAS,EAAQ,KAAK,eAAe,QAAQ,GAAM,CAAC,QAAS,EAAM,CAAC,EAAI,CAAC,MAAM,EAAM,QAAQ,QAAQ,GAAM,CAAC,IAAI,UAAU,MAAM,EAAU,IAAW,CAAC,EAAI,CAAC,QAAQ,GAAK,CAAC,CAAC,GAAG,CAAC,IAAM,EAAO,GAAK,CAAC,OAAa,EAAY,MAAM,EAAU,EAAO,EAAU,EAAS,CAAC,EAAI,CAAC,MAAM,EAAY,MAAM,MAAM,IAAI,GAAM,EAAK,KAAK,CAAC,SAAS,EAAY,KAAK,eAAe,QAAQ,GAAM,CAAC,OAAQ,EAAM,CAAC,EAAI,CAAC,MAAM,EAAM,QAAQ,QAAQ,GAAM,CAAC,GAAI,eAAe,KAAM,IAAQ,CAAC,EAAI,CAAC,QAAQ,GAAK,CAAC,CAAC,GAAG,CAAC,IAAM,EAAO,GAAK,CAAC,OAAa,EAAY,MAAM,EAAe,EAAO,EAAO,CAAC,EAAI,CAAC,MAAM,EAAY,MAAM,MAAM,IAAI,GAAM,EAAK,KAAK,CAAC,SAAS,EAAY,KAAK,eAAe,QAAQ,GAAM,CAAC,OAAQ,EAAM,CAAC,EAAI,CAAC,MAAM,EAAM,QAAQ,QAAQ,GAAM,CAAC,GAAI,oBAAoB,MAAM,EAAO,IAAW,CAAC,EAAI,CAAC,QAAQ,GAAK,CAAC,CAAC,GAAG,CAAC,IAAM,EAAO,GAAK,CAAC,OAAa,EAAY,MAAM,EAAuB,EAAO,EAAO,EAAS,CAAC,EAAI,CAAC,MAAM,EAAY,MAAM,MAAM,IAAI,GAAM,EAAK,KAAK,CAAC,SAAS,EAAY,KAAK,eAAe,QAAQ,GAAM,CAAC,OAAQ,EAAM,CAAC,EAAI,CAAC,MAAM,EAAM,QAAQ,QAAQ,GAAM,CAAC,GAAI,mBAAmB,CAAC,IAAM,EAAY,GAAK,CAAC,YAAY,GAAG,CAAC,EAAa,MAAU,MAAM,qDAAqD,CAAE,OAAO,GAAc,eAAe,EAAI,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,EAAmB,WAAW,IAAQ,CAAC,OAAO,EAAM,OAAO,EAAE,CAAC,CAAC,ICxC12D,SAAgB,GAAkB,EAAe,CAAC,IAA+D,EAA+B,EAA2E,EAA8C,EAAsC,EAAgC,EAA0C,IAAI,EAAY,KAAQ,GAAiB,MAA4D,EAAe,OAA2E,MAAO,EAAY,EAAwB,KAAiB,OAAsC,EAAuB,EAAe,QAAS,OAA8C,EAA+B,EAAuB,WAAY,OAA2F,EAA+B,OAAyG,MAAO,EAAY,EAAe,MAAM,SAAkB,KAAiB,OAAsC,EAAuB,EAAe,QAAS,OAA8C,EAAgC,EAAuB,WAAY,OAAuD,EAAsC,EAAgC,QAAS,OAA6D,EAA8C,EAAsC,WAAY,OAAyH,EAA8C,OAAuI,QAAO,EAAY,EAAe,MAAM,SAAS,MAAM,UAAU,IAAM,EAAM,GAAgF,OAAqE,MAAU,EAAU,KAAK,GAAG,GAA0C,SAAS,EAAM,KAAK,KAAM,EAAU,EAAM,KAAK,aAAc,EAAM,KAAK,KAAK,CAAC,IAAI,EAAK,EAAM,KAAK,KAAK,IAAI,IAAI,EAAE,EAAE,EAAE,IAAI,IAAK,GAAG,EAAK,MAAM,aAAa,CAAC,EAAU,EAAK,KAAK,cAAe,EAAK,KAAM,EAAK,EAAK,UAAW,OACn4E,IAAM,EAAsB,GAAsD,kBAAmB,EAAE,CAAO,EAAuB,EAAE,CAAC,IAAI,IAAM,KAAM,EAAqB,CAAC,IAAM,EAAQ,EAAqB,GAAI,EAAuB,EAAQ,OAAO,CAAC,KAAG,GAAG,EAAQ,CAC1Q,IAAI,EAAiB,KAAK,GAAG,EAAe,CAAC,IAAkE,EAAqB,EAAa,IAAM,EAA6B,EAAe,OAA6E,SAAY,OAAO,GAAM,WAAY,EAAiB,EAAc,OAAO,GAAoD,OAAuD,UAAW,WAAY,EAAiB,EAAK,MAAM,SAAkB,OAAO,GAAO,OAA4B,EAAa,EAAK,QAAS,OAAoC,EAAqB,EAAa,WAAY,KAArH,IAAK,GAAuL,EAAqB,OAAqF,WAAW,aAAY,EAAiB,EAAK,MAAM,SAAS,MAAM,UAAW,MAAM,CAAC,QAAM,cAAY,YAAU,uBAAqB,yBAAuB,mBAAiB,CAAE,SAAgB,GAAkB,EAAO,EAAM,EAAuB,CAAC,IAAM,EAAM,EAAM,MAAY,EAAO,MAAM,QAAQ,GAA0C,OAAO,CAAC,CAAC,GAAG,EAAM,OAAO,CAAC,EAAE,CAAC,IAAI,IAAM,KAAa,EAAO,CAAuC,IAAM,EAA2C,EAAuB,IAAwG,GAAG,GAAG,CAAC,EAAS,SAAU,IAAI,EAAW,GAAM,IAAI,IAAM,KAAQ,EAAQ,GAAG,EAAK,OAAO,GAAS,EAAK,OAAO,cAAc,EAAK,aAAa,EAAM,CAAC,EAAW,GAAK,SAAW,GAAG,EAAY,SAAU,EAAO,KAAK,CAAC,WAAW,EAAM,KAAK,EAAQ,KAAK,aAAa,CAAC,CAAE,OAAO"}