{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/xIS6qWCTGkDJXuKuDYIj/t9L9iLns2YpNgm9elkEW/AddToCartButton.js"],
  "sourcesContent": ["import{jsx as _jsx}from\"react/jsx-runtime\";import{ControlType,RenderTarget}from\"framer\";import{useState,useEffect}from\"react\";import{useCartStore,useAmountInStock}from\"https://framerusercontent.com/modules/ibjYTPLnMMPhPLNCj4uG/cXa4uUn5VWWAcoaQctVU/Cart.js\";import{parseShopifyData,OPEN_CART_EVENT,addPropertyControlsFrameship}from\"https://framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/sH6FZizM8jJ11j2dQOhQ/Shared.js\";import{createButtonPropertyControls,Colors,Button}from\"https://framerusercontent.com/modules/fVHxdMMgjEun6wSmFoH5/YkzDT1nJkSVbzIk0LJ2h/SharedStyles.js\";import{useProductStore,useSelectedVariant}from\"https://framerusercontent.com/modules/ajKYBgRXgNyNgL1GkpqG/prknJU66nI5iRE43ff6z/ProductState.js\";var State;(function(State){State[\"Default\"]=\"default\";State[\"OutOfStock\"]=\"outOfStock\";})(State||(State={}));const defaultText={[\"default\"]:\"Add to Cart\",[\"outOfStock\"]:\"Out of Stock\"};/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 300\n * @framerDisableUnlink\n */export default function AddToCartButton(props){const{shopifyId,tracksInventory,variants}=parseShopifyData(props.shopifyData);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const[state,setState]=useState(\"default\");const[items,addToCart]=useCartStore(state=>[state.items,state.addToCart]);const{quantity,selectedVariantOptions}=useProductStore(state=>state.products?.[shopifyId]||{quantity:1,selectedVariantOptions:{}});const[inventory,inventoryIsLoading]=useAmountInStock(props.shopifyData);const selectedVariant=useSelectedVariant(props.shopifyData);useEffect(()=>{if(!isCanvas){if(tracksInventory&&selectedVariant&&inventory[selectedVariant.id]===0){setState(\"outOfStock\");}else{setState(\"default\");}}},[items,selectedVariant,inventory]);const onClick=async()=>{if(state===\"default\"&&selectedVariant&&(!tracksInventory||!inventoryIsLoading&&inventory[selectedVariant.id]>0)){await addToCart(selectedVariant.id,quantity);if(props.openCart){window.dispatchEvent(new Event(OPEN_CART_EVENT));}}};return /*#__PURE__*/_jsx(Button,{...props,variant:state,onClick:onClick,style:{cursor:state===\"outOfStock\"?undefined:\"pointer\",userSelect:\"none\",...props.style},children:props.text[state]});}AddToCartButton.displayName=\"Add to Cart Button\";addPropertyControlsFrameship(AddToCartButton,{openCart:{type:ControlType.Boolean,defaultValue:true,description:\"If enabled, opens the cart after adding item\"},text:{type:ControlType.Object,defaultValue:defaultText,controls:{[\"default\"]:{type:ControlType.String,defaultValue:defaultText[\"default\"],placeholder:\"Default Text\"},[\"outOfStock\"]:{type:ControlType.String,defaultValue:defaultText[\"outOfStock\"],placeholder:\"Out of Stock Text\"}}},...createButtonPropertyControls({variants:[{id:\"default\",title:\"Default\",...Colors.Accent},{id:\"outOfStock\",title:\"Out of Stock\",...Colors.Primary}]})},{shopifyData:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AddToCartButton\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerDisableUnlink\":\"\",\"framerIntrinsicWidth\":\"300\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AddToCartButton.map"],
  "mappings": "wPAA8sB,IAAIA,GAAO,SAASA,EAAM,CAACA,EAAM,QAAW,UAAUA,EAAM,WAAc,YAAa,GAAGA,IAAQA,EAAM,CAAC,EAAE,EAAE,IAAMC,EAAY,CAAE,QAAW,cAAe,WAAc,cAAc,EAKn3B,SAARC,EAAiCC,EAAM,CAAC,GAAK,CAAC,UAAAC,EAAU,gBAAAC,EAAgB,SAAAC,CAAQ,EAAEC,EAAiBJ,EAAM,WAAW,EAAQK,EAASC,EAAa,QAAQ,IAAIA,EAAa,OAAY,CAACC,EAAMC,CAAQ,EAAEC,EAAS,SAAS,EAAO,CAACC,EAAMC,CAAS,EAAEC,EAAaL,GAAO,CAACA,EAAM,MAAMA,EAAM,SAAS,CAAC,EAAO,CAAC,SAAAM,EAAS,uBAAAC,CAAsB,EAAEC,EAAgBR,GAAOA,EAAM,WAAWN,CAAS,GAAG,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAAO,CAACe,EAAUC,CAAkB,EAAEC,EAAiBlB,EAAM,WAAW,EAAQmB,EAAgBC,EAAmBpB,EAAM,WAAW,EAAE,OAAAqB,EAAU,IAAI,CAAKhB,IAAaH,GAAiBiB,GAAiBH,EAAUG,EAAgB,EAAE,IAAI,EAAGX,EAAS,YAAY,EAAQA,EAAS,SAAS,EAAI,EAAE,CAACE,EAAMS,EAAgBH,CAAS,CAAC,EAAoRM,EAAKC,EAAO,CAAC,GAAGvB,EAAM,QAAQO,EAAM,QAAxS,SAAS,CAAIA,IAAQ,WAAWY,IAAkB,CAACjB,GAAiB,CAACe,GAAoBD,EAAUG,EAAgB,EAAE,EAAE,KAAI,MAAMR,EAAUQ,EAAgB,GAAGN,CAAQ,EAAKb,EAAM,UAAUwB,EAAO,cAAc,IAAI,MAAMC,CAAe,CAAC,EAAI,EAA0E,MAAM,CAAC,OAAOlB,IAAQ,aAAa,OAAU,UAAU,WAAW,OAAO,GAAGP,EAAM,KAAK,EAAE,SAASA,EAAM,KAAKO,CAAK,CAAC,CAAC,CAAE,CAACR,EAAgB,YAAY,qBAAqB2B,EAA6B3B,EAAgB,CAAC,SAAS,CAAC,KAAK4B,EAAY,QAAQ,aAAa,GAAK,YAAY,8CAA8C,EAAE,KAAK,CAAC,KAAKA,EAAY,OAAO,aAAa7B,EAAY,SAAS,CAAE,QAAW,CAAC,KAAK6B,EAAY,OAAO,aAAa7B,EAAY,QAAW,YAAY,cAAc,EAAG,WAAc,CAAC,KAAK6B,EAAY,OAAO,aAAa7B,EAAY,WAAc,YAAY,mBAAmB,CAAC,CAAC,EAAE,GAAG8B,EAA6B,CAAC,SAAS,CAAC,CAAC,GAAG,UAAU,MAAM,UAAU,GAAGC,EAAO,MAAM,EAAE,CAAC,GAAG,aAAa,MAAM,eAAe,GAAGA,EAAO,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,EAAI,CAAC",
  "names": ["State", "defaultText", "AddToCartButton", "props", "shopifyId", "tracksInventory", "variants", "parseShopifyData", "isCanvas", "RenderTarget", "state", "setState", "ye", "items", "addToCart", "useCartStore", "quantity", "selectedVariantOptions", "useProductStore", "inventory", "inventoryIsLoading", "useAmountInStock", "selectedVariant", "useSelectedVariant", "ue", "p", "Button", "window", "OPEN_CART_EVENT", "addPropertyControlsFrameship", "ControlType", "createButtonPropertyControls", "Colors"]
}
