{"version":3,"file":"Button.ChP8oCSg.mjs","names":["styles","useCallback","useState"],"sources":["https:/framerusercontent.com/modules/eAejHXy6apg0StNmpKvK/GXn1lJ5V4nUwhRO9yQKC/_framer_utils.js","https:/framerusercontent.com/modules/xpqbkEp3IFoaBlvr8BRa/mmYIfWtGVAI0nJXkmHhs/_queries.js","https:/framerusercontent.com/modules/yZBbIevRfN36MGDPpltx/GNI9VoSkUDyJw3EMOM7K/_atoms.js","https:/framerusercontent.com/modules/tdCHCV0pSkxlDaX5GkOX/SxZI1Y5OuGrQCk85U8Xt/_useShopify.js","https:/framerusercontent.com/modules/fWwtzMT2tYXMW4IKB8On/1dFHOQ0gPjMC0e1WUStY/_test_data.js","https:/framerusercontent.com/modules/kEMMGb5hqGCVwEpqX70U/xtbUYyPMDwLhvH64M4SK/_useCart.js","https:/framerusercontent.com/modules/hQlZBgGeLDev5WuUJA4d/6ncqGCEKZWsfLWpBe7Jn/ComponentWrapper.js","https:/framerusercontent.com/modules/EoMllm11FAeAfrQZgkjQ/LMhGmi204cugd6mksqKj/Button.js"],"sourcesContent":["import{ControlType,RenderTarget}from\"framer\";export const ProductBaseControls={productID:{title:\"Product ID\",type:ControlType.String}};export const isOnCanvas=()=>RenderTarget.current()===RenderTarget.canvas;export const ConfigControls={config:{type:ControlType.Object,hidden:()=>true,controls:{storefrontToken:{type:ControlType.String},storeDomain:{type:ControlType.String},countryIsoCode:{type:ControlType.String,defaultValue:\"US\"},languageIsoCode:{type:ControlType.String,defaultValue:\"EN\"},testMode:{type:ControlType.Boolean,defaultValue:true},permissions:{type:ControlType.Object,controls:{selling_plans:{type:ControlType.Boolean,defaultValue:false}}}}},font:{type:ControlType.Font,hidden:()=>true}};export function cn(...styles){let final={};styles.forEach(style=>{if(style){final={...final,...style};if(typeof style.border===\"object\"){final={...final,...style.border};}if(typeof style.font===\"object\"){final={...final,...style.font};}if(style.hidden){final={...final,display:\"none\"};}}});return final;}export const textProperties=(fontSize=16,color)=>{return{fontSize:{type:ControlType.Number,min:6,max:100,defaultValue:fontSize},color:{type:ControlType.Color,defaultValue:color},font:{type:ControlType.Font,displayTextAlignment:true,defaultFontType:\"sans-serif\"},padding:{type:ControlType.Padding}};};\nexport const __FramerMetadata__ = {\"exports\":{\"ProductBaseControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ConfigControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"cn\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"textProperties\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./_framer_utils.map","const cartReturnData=`\nid\ncreatedAt\nupdatedAt\ncheckoutUrl\nlines(first: 250) {\n  edges {\n    node {\n      id\n      quantity\n      sellingPlanAllocation {\n          checkoutChargeAmount {\n            amount\n            currencyCode\n          }\n          sellingPlan {\n            name\n          }\n      }\n      merchandise {\n        ... on ProductVariant {\n          id\n          title\n          compareAtPriceV2 {\n            amount\n            currencyCode\n          }\n          priceV2 {\n            amount\n            currencyCode\n          }\n          product {\n            id\n            title\n          }\n          image {\n            url\n            width\n            height\n            altText\n          }\n          selectedOptions {\n            value\n            name\n          }\n        }\n      }\n      attributes {\n        key\n        value\n      }\n    }\n  }\n}\ncost {\n  totalAmount {\n    amount\n    currencyCode\n  }\n  subtotalAmount {\n    amount\n    currencyCode\n  }\n  totalTaxAmount {\n    amount\n    currencyCode\n  }\n  totalDutyAmount {\n    amount\n    currencyCode\n  }\n}`;export const productsQuery=({sellingPlan,pageInfo})=>`{\n  products(first: 250${pageInfo?`, after: \"${pageInfo}\"`:\"\"}) {\n    nodes {\n      compareAtPriceRange {\n        minVariantPrice {\n          amount\n          currencyCode\n        }\n      }\n      totalInventory\n      availableForSale\n      isGiftCard\n      collections(first: 250) {\n        nodes {\n          title\n          handle\n        }\n      }\n      handle\n      id\n      images(first: 15) {\n        nodes {\n          altText\n          height\n          url\n          width\n        }\n      }\n      options {\n        id\n        name\n        values\n      }\n      priceRange {\n        minVariantPrice {\n          amount\n          currencyCode\n        }\n        maxVariantPrice {\n          amount\n          currencyCode\n        }\n      }\n      productType\n      tags\n      title\n      description\n      descriptionHtml\n      vendor\n      updatedAt\n      createdAt\n      featuredImage {\n        url\n      }\n      ${sellingPlan?`\n      requiresSellingPlan\n      sellingPlanGroups(first: 250) {\n        nodes {\n          name\n          sellingPlans(first: 250) {\n            nodes {\n              id\n              name\n            }\n          }\n        }\n      }`:\"\"}\n      variants(first: 250) {\n        nodes {\n          title\n          availableForSale\n          compareAtPriceV2 {\n            amount\n            currencyCode\n          }\n          priceV2 {\n            amount\n            currencyCode\n          }\n          id\n          image {\n            url\n            width\n            height\n            altText\n          }\n          currentlyNotInStock\n          requiresShipping\n          quantityAvailable\n          taxable\n          selectedOptions {\n            value\n            name\n          }\n          ${sellingPlan?`\n          sellingPlanAllocations(first: 250) {\n            nodes {\n              checkoutChargeAmount {\n                amount\n                currencyCode\n              }\n              sellingPlan {\n                name\n                id\n              }\n            }\n          }`:\"\"}\n        }\n      }\n    }\n    pageInfo {\n        hasNextPage\n        endCursor\n      }\n    }\n}`;export const createCart=`\n  mutation createCart($cartInput: CartInput) {\n    cartCreate(input: $cartInput) {\n      cart {\n        ${cartReturnData}\n      }\n    }\n  }\n`;export const readCart=`\n  query cartQuery($cartId: ID!) {\n    cart(id: $cartId) {\n      ${cartReturnData}\n    }\n  }\n`;export const addItemsToCart=`\n  mutation addCartLines($cartId: ID!, $lines: [CartLineInput!]!) {\n    cartLinesAdd(cartId: $cartId, lines: $lines) {\n      cart {\n         ${cartReturnData}\n      }\n      userErrors {\n        field\n        message\n      }\n    }\n  }\n`;export const updateCartItems=`\n  mutation addCartLines($cartId: ID!, $lines: [CartLineUpdateInput!]!) {\n    cartLinesUpdate(cartId: $cartId, lines: $lines) {\n      cart {\n         ${cartReturnData}\n      }\n      userErrors {\n        field\n        message\n      }\n    }\n  }\n`;export const removeCartItems=`\n  mutation removeCartLines($cartId: ID!, $lineIds: [ID!]!) {\n    cartLinesRemove(cartId: $cartId, lineIds: $lineIds) {\n      cart {\n         ${cartReturnData}\n      }\n      userErrors {\n        field\n        message\n      }\n    }\n  }\n`;\nexport const __FramerMetadata__ = {\"exports\":{\"createCart\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"addItemsToCart\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"removeCartItems\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"readCart\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"updateCartItems\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"productsQuery\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./_queries.map","import{atom}from\"jotai\";import{productsQuery,createCart,readCart}from\"https://framerusercontent.com/modules/xpqbkEp3IFoaBlvr8BRa/mmYIfWtGVAI0nJXkmHhs/_queries.js\";export async function fetchAllProducts(client,sellingPlan){const products=[];let pageInfo=null;try{do{const query=productsQuery({pageInfo,sellingPlan});const response=await client.request(query);products.push(...response.data?.products.nodes);// Update pageInfo for next iteration\nconst responsePageInfo=response.data?.products.pageInfo;pageInfo=responsePageInfo.hasNextPage?responsePageInfo.endCursor:null;console.log(`Fetched ${products.length} products so far...`);}while(pageInfo)return products;}catch(error){console.error(\"Error fetching products:\",error.message);return[];}}export const settingsAtom=atom({enableSellingPlan:false});export const configAtom=atom(null);export const clientAtom=atom(null);export const selectedProductsAtom=atom({});export const productsAtom=atom(async get=>{const sellingPlan=get(settingsAtom).enableSellingPlan;if(!get(clientAtom))return[];const products=await fetchAllProducts(get(clientAtom),sellingPlan);return products;});export const localCartAtom=atom(null);export const createCartAtom=atom(async get=>{const attributes=[];const currentUrl=new URL(window.location.href);// Add all search parameters from the current URL to attributes\ncurrentUrl.searchParams?.forEach((value,key)=>{if(key!==\"key\"){attributes.push({key,value});}});console.log(\"Create Cart\",attributes);return get(clientAtom)?.request(createCart,{variables:{cartInput:{attributes}}}).then(res=>res.data?.cartCreate?.cart);});export const cartAtom=atom(async get=>{const cartId=localStorage.getItem(\"shopifyCartID\");const localCart=get(localCartAtom);if(localCart)return localCart;const client=get(clientAtom);if(!client)return null;if(!cartId)return get(createCartAtom);return client.request(readCart,{variables:{cartId}}).then(res=>{if(res.data?.cart)return res.data.cart;return get(createCartAtom);}).catch(()=>get(createCartAtom));});\nexport const __FramerMetadata__ = {\"exports\":{\"configAtom\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SelectedProduct\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"settingsAtom\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"productsAtom\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createCartAtom\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"clientAtom\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"selectedProductsAtom\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"cartAtom\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fetchAllProducts\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localCartAtom\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{useEffect,useCallback}from\"react\";import{createStorefrontApiClient}from\"@shopify/storefront-api-client\";import{useAtomValue,useSetAtom}from\"jotai\";import{productsAtom,clientAtom,configAtom,cartAtom}from\"https://framerusercontent.com/modules/yZBbIevRfN36MGDPpltx/GNI9VoSkUDyJw3EMOM7K/_atoms.js\";import{checkConfigAreSame,debounce}from\"https://framerusercontent.com/modules/7dEgbg7qo3lsQk361YtS/NrF60tPHZRRgADqpoRFr/_utils.js\";export const useShopify=config=>{const debouncedCheck=useCallback(debounce(()=>{checkConfigAreSame();},100),[]);const products=useAtomValue(productsAtom);const cart=useAtomValue(cartAtom);const client=useAtomValue(clientAtom);const setClient=useSetAtom(clientAtom);const setConfig=useSetAtom(configAtom);useEffect(()=>{debouncedCheck();//set config if exist\nif(config&&Object.keys(config).length!==0)setConfig(config);// create the client and store it\nif(!client&&config?.storeDomain&&config?.storefrontToken){setClient(createStorefrontApiClient({storeDomain:config.storeDomain,apiVersion:\"2024-07\",publicAccessToken:config.storefrontToken,customFetchApi:fetch}));}return()=>{debouncedCheck();};},[config]);useEffect(()=>{if(cart){localStorage.setItem(\"shopifyCartID\",cart.id);}},[cart]);return{products,cart};};\nexport const __FramerMetadata__ = {\"exports\":{\"useShopify\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","export const DefaultCart={id:\"Test\",checkoutUrl:\"Test title\",cost:{subtotalAmount:{amount:\"50.0\",currencyCode:\"USD\"},totalAmount:{amount:\"60.0\",currencyCode:\"USD\"},totalTaxAmount:{amount:\"10.0\",currencyCode:\"USD\"},totalDutyAmount:null},lines:{edges:[{node:{id:\"test\",quantity:1,merchandise:{id:\"Test\",title:\"Medium / Red\",priceV2:{amount:\"50.0\",currencyCode:\"USD\"},image:{altText:\"\",height:720,url:\"https://blocks.astratic.com/img/general-img-square.png\",width:600},product:{id:\"Test\",title:\"Product Title Test\"},selectedOptions:[{name:\"Size\",value:\"Medium\"}]}}}]}};export const DefaultProduct={id:\"test\",title:\"Product Title Test\",availableForSale:false,compareAtPriceRange:{minVariantPrice:{amount:\"15.0\",currencyCode:\"USD\"}},requiresSellingPlan:false,sellingPlanGroups:{nodes:[{name:\"Subscribe and save\",sellingPlans:{nodes:[{id:\"gid://shopify/SellingPlan/689520312655\",name:\"Deliver every 3 months, 30% off\"},{id:\"gid://shopify/SellingPlan/689520345423\",name:\"Deliver every week, 10% off\"}]}}]},priceRange:{minVariantPrice:{amount:\"10.0\",currencyCode:\"USD\"},maxVariantPrice:{amount:\"10.0\",currencyCode:\"USD\"}},options:[{id:\"gid://shopify/ProductOption/11329409777957\",name:\"Size\",values:[\"Medium\",\"Small\"]},{id:\"gid://shopify/ProductOption/11329409810725\",name:\"Color\",values:[\"Black\",\"Red\"]}],variants:{nodes:[{availableForSale:true,compareAtPriceV2:{amount:\"30.0\",currencyCode:\"CAD\"},currentlyNotInStock:false,id:\"gid://shopify/ProductVariant/47880718909733\",priceV2:{amount:\"20.0\",currencyCode:\"CAD\"},quantityAvailable:2,requiresShipping:true,selectedOptions:[{name:\"Size\",value:\"Medium\"},{name:\"Color\",value:\"Black\"}],taxable:false,title:\"Medium / Black\",sellingPlanAllocations:{nodes:[{checkoutChargeAmount:{amount:\"46.9\",currencyCode:\"USD\"},sellingPlan:{id:\"gid://shopify/SellingPlan/689520312655\",name:\"Deliver every 3 months, 30% off\"}},{checkoutChargeAmount:{amount:\"32\",currencyCode:\"USD\"},sellingPlan:{id:\"gid://shopify/SellingPlan/689520345423\",name:\"Deliver every week, 10% off\"}}]}},{availableForSale:true,compareAtPriceV2:{amount:\"30.0\",currencyCode:\"CAD\"},currentlyNotInStock:false,id:\"gid://shopify/ProductVariant/47880718942501\",priceV2:{amount:\"14.0\",currencyCode:\"CAD\"},quantityAvailable:3,requiresShipping:true,selectedOptions:[{name:\"Size\",value:\"Medium\"},{name:\"Color\",value:\"Red\"}],taxable:true,title:\"Medium / Red\"},{availableForSale:true,compareAtPriceV2:{amount:\"30.0\",currencyCode:\"CAD\"},currentlyNotInStock:true,id:\"gid://shopify/ProductVariant/47880718975269\",priceV2:{amount:\"5.0\",currencyCode:\"CAD\"},quantityAvailable:0,requiresShipping:true,selectedOptions:[{name:\"Size\",value:\"Small\"},{name:\"Color\",value:\"Black\"}],taxable:true,title:\"Small / Black\"},{availableForSale:false,compareAtPriceV2:{amount:\"30.0\",currencyCode:\"CAD\"},currentlyNotInStock:false,id:\"gid://shopify/ProductVariant/47880719008037\",priceV2:{amount:\"20.0\",currencyCode:\"CAD\"},quantityAvailable:0,requiresShipping:true,selectedOptions:[{name:\"Size\",value:\"Small\"},{name:\"Color\",value:\"Red\"}],taxable:true,title:\"Small / Red\"}]},images:{nodes:[{altText:\"\",height:720,url:\"https://blocks.astratic.com/img/general-img-square.png\",width:600},{altText:\"\",height:720,url:\"https://blocks.astratic.com/img/general-img-square.png\",width:600}]}};\nexport const __FramerMetadata__ = {\"exports\":{\"DefaultProduct\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DefaultCart\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./_test_data.map","import{useState}from\"react\";import{useAtomValue,useSetAtom}from\"jotai\";import{localCartAtom,clientAtom}from\"https://framerusercontent.com/modules/yZBbIevRfN36MGDPpltx/GNI9VoSkUDyJw3EMOM7K/_atoms.js\";import{addItemsToCart,removeCartItems,updateCartItems}from\"https://framerusercontent.com/modules/xpqbkEp3IFoaBlvr8BRa/mmYIfWtGVAI0nJXkmHhs/_queries.js\";import{useShopify}from\"https://framerusercontent.com/modules/tdCHCV0pSkxlDaX5GkOX/SxZI1Y5OuGrQCk85U8Xt/_useShopify.js\";import{DefaultCart}from\"https://framerusercontent.com/modules/fWwtzMT2tYXMW4IKB8On/1dFHOQ0gPjMC0e1WUStY/_test_data.js\";export const useCart=config=>{const[actionLoading,setActionLoading]=useState(false);const[cartError,setCartError]=useState(\"\");const{cart}=useShopify(config);const client=useAtomValue(clientAtom);const setCart=useSetAtom(localCartAtom);const cartCount=cart?.lines.edges.filter(({node})=>node.quantity).length??0;const addToCart=async({merchandiseId,quantity=1,attributes,sellingPlanId})=>{setActionLoading(true);setCartError(\"\");try{const res=await client?.request(addItemsToCart,{variables:{cartId:cart?.id,lines:{merchandiseId,quantity,attributes,sellingPlanId}}});setActionLoading(false);if(res?.data?.cartLinesAdd?.userErrors.length){setCartError(res.data.cartLinesAdd.userErrors[0].message);}if(res?.data?.cartLinesAdd?.cart){setCart(res.data.cartLinesAdd.cart);}return;}catch{setActionLoading(false);return;}};const removeFromCart=merchandiseId=>{setActionLoading(true);client?.request(removeCartItems,{variables:{cartId:cart?.id,lineIds:[merchandiseId]}}).then(res=>{setActionLoading(false);if(res.data?.cartLinesRemove?.userErrors){console.error(res.data.cartLinesRemove.userErrors);}if(res.data?.cartLinesRemove?.cart){setCart(res.data.cartLinesRemove.cart);}}).catch(()=>{setActionLoading(false);});};const changeQuantity=async(merchandiseId,quantity)=>{setActionLoading(true);client?.request(updateCartItems,{variables:{cartId:cart?.id,lines:{id:merchandiseId,quantity}}}).then(res=>{setActionLoading(false);if(res.data?.cartLinesUpdate?.userErrors){console.error(res.data.cartLinesUpdate.userErrors);}if(res.data?.cartLinesUpdate?.cart){setCart(res.data.cartLinesUpdate.cart);}}).catch(()=>{setActionLoading(false);});};return{cart:!config||config.testMode?DefaultCart:cart,actionLoading,cartError,cartCount,addToCart,changeQuantity,removeFromCart};};\nexport const __FramerMetadata__ = {\"exports\":{\"useCart\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx}from\"react/jsx-runtime\";import{cn}from\"https://framerusercontent.com/modules/eAejHXy6apg0StNmpKvK/GXn1lJ5V4nUwhRO9yQKC/_framer_utils.js\";export default function ComponentWrapper({children,style={},hidden=false,productID,config}){const dataAttributes={\"data-shopiframe\":\"component\",\"data-shopiframe-store\":config?.storeDomain};if(productID===\"EMPTY\")return /*#__PURE__*/_jsx(\"div\",{style:{background:\"#C83E3E\",color:\"#fff\",borderRadius:\"10px\",padding:\"8px\",boxShadow:\"0px 5px 15px 0px #AC1B1B33\",fontWeight:\"600\"},...dataAttributes,children:\"Product ID required for this component\"});if(hidden)return null;return /*#__PURE__*/_jsx(\"div\",{style:cn(style),...dataAttributes,children:typeof children===\"function\"?hidden||productID===\"EMPTY\"?null:children():children});}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ComponentWrapper\",\"slots\":[\"children\"],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{motion}from\"framer-motion\";import{cn,textProperties}from\"https://framerusercontent.com/modules/eAejHXy6apg0StNmpKvK/GXn1lJ5V4nUwhRO9yQKC/_framer_utils.js\";import{addPropsToChildren}from\"https://framerusercontent.com/modules/7dEgbg7qo3lsQk361YtS/NrF60tPHZRRgADqpoRFr/_utils.js\";/**\n * @framerDisableUnlink\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n */export default function Button({onClick=()=>false,loading=false,disabled=false,style,hoverStyle,label,buttonType,buttonComponent,buttonVariants}){if(buttonType===\"Custom\"){let status=buttonVariants.default||\"Default\";if(loading)status=buttonVariants.loading||\"Loading\";if(disabled)status=buttonVariants.disabled||\"Disabled\";if(!buttonComponent||!buttonComponent?.[0])return /*#__PURE__*/_jsx(\"div\",{style:{background:\"#C83E3E\",color:\"#fff\",borderRadius:\"10px\",padding:\"8px\",boxShadow:\"0px 5px 15px 0px #AC1B1B33\",fontWeight:\"500\"},children:\"Assign your button component\"});const buttonWithVariants=addPropsToChildren(buttonComponent,{variant:status,onClick:status===(buttonVariants.default||\"Default\")?onClick:()=>false},true);const button=addPropsToChildren(buttonWithVariants,{style:{width:\"100%\"}});return button;}return /*#__PURE__*/_jsx(motion.button,{onClick:onClick,disabled:loading||disabled,style:cn(styles.container,style,loading&&styles.loading,disabled&&styles.disabled),whileHover:{...cn(hoverStyle),transition:{duration:.25}},children:/*#__PURE__*/_jsx(\"span\",{children:label})});}export const ButtonProperties=label=>({buttonType:{title:\"Type\",type:ControlType.SegmentedEnum,options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\"},buttonComponent:{title:\"Button Component\",type:ControlType.ComponentInstance,hidden:props=>props.buttonType!==\"Custom\"},buttonVariants:{title:\"Component Variants\",buttonTitle:\"Variants\",type:ControlType.Object,hidden:props=>props.buttonType!==\"Custom\",controls:{default:{type:ControlType.String,defaultValue:\"Default\"},loading:{type:ControlType.String,defaultValue:\"Loading\"},disabled:{type:ControlType.String,defaultValue:\"Disabled\"}},description:\"Variant names should match your button component's variant names\"},label:{title:\"Label\",type:ControlType.String,defaultValue:label,hidden:props=>props.buttonType!==\"Default\"},style:{buttonTitle:\"Style\",type:ControlType.Object,hidden:props=>props.buttonType!==\"Default\",controls:{...textProperties(16,\"#000\"),backgroundColor:{title:\"Background color\",type:ControlType.Color,optional:true},border:{type:ControlType.Border,defaultValue:{borderColor:\"#000\"}},borderRadius:{type:ControlType.BorderRadius,defaultValue:\"6px\"},padding:{type:ControlType.Padding,defaultValue:\"10px 32px 10px 32px\"}}},hoverStyle:{title:\"Hover\",buttonTitle:\"Style\",type:ControlType.Object,hidden:props=>props.buttonType!==\"Default\",controls:{color:{type:ControlType.Color,defaultValue:\"#fff\",optional:true},backgroundColor:{type:ControlType.Color,defaultValue:\"#000\",optional:true},border:{type:ControlType.Border,defaultValue:{borderColor:\"#fff\"}}}}});addPropertyControls(Button,ButtonProperties(\"Button\"));const styles={wrapper:{display:\"flex\",flexDirection:\"column\",gap:8},container:{display:\"flex\",flexDirection:\"row\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",flex:1,fontFamily:\"inherit\"},loading:{opacity:.8,cursor:\"wait\"},disabled:{opacity:.8}};\nexport const __FramerMetadata__ = {\"exports\":{\"ButtonProperties\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Button\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\",\"framerDisableUnlink\":\"* @framerSupportedLayoutWidth any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}