@liquidcommerce/cloud-sdk
Version:
LiquidCommerce Cloud SDK
1 lines • 75.5 kB
JavaScript
import{loadStripe as e}from"@stripe/stripe-js";var t,i,r,n,s,a,E,o,I,l,R,d,c,u,A,N,T,_,O,h,S,C,p,D,m,v,y,L,W,g,P;!function(e){e.LOC="loc",e.STAGE="stage",e.PROD="prod",e.DEV="dev",e.BETA="beta"}(t||(t={})),function(e){e.ON_DEMAND="onDemand",e.SHIPPING="shipping",e.BOPIS="bopis"}(i||(i={})),function(e){e.MONDAY="monday",e.TUESDAY="tuesday",e.WEDNESDAY="wednesday",e.THURSDAY="thursday",e.FRIDAY="friday",e.SATURDAY="saturday",e.SUNDAY="sunday"}(r||(r={})),function(e){e.AL="AL",e.AK="AK",e.AR="AR",e.AZ="AZ",e.CA="CA",e.CO="CO",e.CT="CT",e.DE="DE",e.DC="DC",e.FL="FL",e.GA="GA",e.HI="HI",e.ID="ID",e.IL="IL",e.IN="IN",e.IA="IA",e.KS="KS",e.KY="KY",e.LA="LA",e.ME="ME",e.MD="MD",e.MA="MA",e.MI="MI",e.MN="MN",e.MS="MS",e.MO="MO",e.MT="MT",e.NE="NE",e.NV="NV",e.NH="NH",e.NJ="NJ",e.NM="NM",e.NY="NY",e.NC="NC",e.ND="ND",e.OH="OH",e.OK="OK",e.OR="OR",e.PA="PA",e.RI="RI",e.SC="SC",e.SD="SD",e.TN="TN",e.TX="TX",e.UT="UT",e.VT="VT",e.VA="VA",e.WA="WA",e.WV="WV",e.WI="WI",e.WY="WY"}(n||(n={})),function(e){e.ALABAMA="AL",e.ALASKA="AK",e.ARKANSAS="AR",e.ARIZONA="AZ",e.CALIFORNIA="CA",e.COLORADO="CO",e.CONNECTICUT="CT",e.DELAWARE="DE",e.DISTRICT_OF_COLUMBIA="DC",e.FLORIDA="FL",e.GEORGIA="GA",e.HAWAII="HI",e.IDAHO="ID",e.ILLINOIS="IL",e.INDIANA="IN",e.IOWA="IA",e.KANSAS="KS",e.KENTUCKY="KY",e.LOUISIANA="LA",e.MAINE="ME",e.MARYLAND="MD",e.MASSACHUSETTS="MA",e.MICHIGAN="MI",e.MINNESOTA="MN",e.MISSISSIPPI="MS",e.MISSOURI="MO",e.MONTANA="MT",e.NEBRASKA="NE",e.NEVADA="NV",e.NEW_HAMPSHIRE="NH",e.NEW_JERSEY="NJ",e.NEW_MEXICO="NM",e.NEW_YORK="NY",e.NORTH_CAROLINA="NC",e.NORTH_DAKOTA="ND",e.OHIO="OH",e.OKLAHOMA="OK",e.OREGON="OR",e.PENNSYLVANIA="PA",e.RHODE_ISLAND="RI",e.SOUTH_CAROLINA="SC",e.SOUTH_DAKOTA="SD",e.TENNESSEE="TN",e.TEXAS="TX",e.UTAH="UT",e.VERMONT="VT",e.VIRGINIA="VA",e.WASHINGTON="WA",e.WEST_VIRGINIA="WV",e.WISCONSIN="WI",e.WYOMING="WY"}(s||(s={})),function(e){e.YES="YES",e.NO="NO"}(a||(a={})),function(e){e.YES="YES",e.NO="NO"}(E||(E={})),function(e){e.BRANDS="brands",e.FLAVOR="flavor",e.FULFILLMENT="fulfillment",e.TAGS="tags",e.REGION="region",e.VARIETY="variety",e.ENGRAVING="engraving",e.PRICE="price",e.PRESALE="presale",e.AVAILABILITY="availability",e.CATEGORIES="categories",e.SIZES="sizes",e.COLORS="colors",e.APPELLATION="appellation",e.COUNTRY="country",e.VINTAGE="vintage",e.MATERIALS="materials",e.COLLECTION_TAGS="collectionTags"}(o||(o={})),function(e){e.ASC="asc",e.DESC="desc"}(I||(I={})),function(e){e.PRICE="price"}(l||(l={})),function(e){e.UNSPECIFIED="AVAILABILITY_UNSPECIFIED",e.IN_STOCK="IN_STOCK",e.OUT_OF_STOCK="OUT_OF_STOCK",e.PREORDER="PREORDER",e.BACKORDER="BACKORDER"}(R||(R={})),function(e){e.INVALID_ITEMS_TYPE="Items must be a non-empty array",e.INVALID_ITEMS_MAX="You can only send up to 25 items at a time!",e.INVALID_PART_NUMBER="The partnerNumber provided is invalid",e.INVALID_FULFILLMENT_ID="The fulfillmentId provided is invalid"}(d||(d={})),function(e){e.OOS="OutOfStock",e.ITEMS_NOT_ADDED="ItemsNotAdded",e.ITEMS_REQUESTED_NOT_ADDED="ItemsRequestedNotAdded",e.ITEM_NOT_ENGRAVED="ItemEngravingError",e.ADDRESS_CHANGE="AddressChange",e.LOCATION_AVAILABILITY="LocationAvailability",e.PARTNER_PRODUCT_CONFIGS="PartnerProductConfigs",e.REMOVED_EXISTING_ITEMS="RemovedExistingCartItems",e.RETAILER_MIN="RetailerMinNotMet",e.NO_ITEMS_IN_CART="NoItemsInCart",e.INVALID_ID="InvalidId",e.NO_ID="NoId",e.CART_CHECKOUT_PROCESSED="CartCheckoutProcessed",e.NEW_CART="NewCart",e.DEFAULT="CartError",e.ITEM_QTY_CHANGE="ItemQuantityChange",e.ITEM_ID_NOT_FOUND="ItemIdNotFound",e.ITEMS_REMOVED="ItemsRemoved",e.RETAILER_FULFILLMENT_INVALID="RetailerFulfillmentInvalid",e.RETAILER_ONDEMAND_HOURS_NOT_AVAILABLE="RetailerOnDemandHoursNotAvailable",e.MAX_QUANTITY_PER_ORDER_EXCEEDED="MaxQuantityPerOrderExceeded",e.COUPON_PROCESSING_ERROR="CouponProcessingError",e.COUPON_NOT_FOUND="CouponNotFound",e.COUPON_EXPIRED="CouponExpired",e.NO_APPLICABLE_DISCOUNT="NoApplicableDiscount",e.COUPON_NOT_STARTED="CouponNotStarted",e.MINIMUM_ORDER_VALUE_NOT_MET="MinimumOrderValueNotMet",e.MINIMUM_ORDER_UNITS_NOT_MET="MinimumOrderUnitsNotMet",e.MINIMUM_DISTINCT_ITEMS_NOT_MET="MinimumDistinctItemsNotMet",e.QUOTA_EXCEEDED="QuotaExceeded",e.USER_LIMIT_EXCEEDED="UserLimitExceeded",e.NOT_FIRST_PURCHASE="NotFirstPurchase",e.INVALID_COUPON="InvalidCoupon",e.INVALID_MEMBERSHIP="InvalidMembership",e.INVALID_DOMAIN="InvalidDomain",e.INVALID_REQUIREMENTS="InvalidRequirements",e.INVALID_ORGANIZATION="InvalidOrganization",e.PRODUCT_NOT_ELIGIBLE="ProductNotEligible",e.NOT_ENOUGH_PREVIOUS_ORDERS="NotEnoughPreviousOrders",e.PRESALE_ITEMS_NOT_ALLOWED="PresaleItemsNotAllowed",e.PRESALE_LIMIT_EXCEEDED="PresaleLimitExceeded",e.PRESALE_NOT_STARTED="PresaleNotStarted",e.PRESALE_EXPIRED="PresaleExpired",e.PRESALE_MIXED_CART="PresaleMixedCart",e.RETAILER_DOES_NOT_ALLOW_PROMOS="RetailerDoesNotAllowPromos",e.RETAILERS_DO_NOT_ALLOW_PROMOS="RetailersDoNotAllowPromos",e.BOPIS_CONTACT_REQUIRED="BopisContactRequired",e.BOPIS_PARENT_FULFILLMENT_REQUIRED="BopisParentFulfillmentRequired",e.BOPIS_INVALID_PARENT_FULFILLMENT="BopisInvalidParentFulfillment",e.BOPIS_PARENT_RETAILER_MISMATCH="BopisParentRetailerMismatch",e.BOPIS_NOT_APPLICABLE="BopisNotApplicable",e.BOPIS_NOT_ALLOWED="BopisNotAllowed",e.BOPIS_PRODUCT_NOT_OPTED_IN="BopisProductNotOptedIn",e.BOPIS_NOT_AVAILABLE="BopisNotAvailable",e.BOPIS_SCHEDULE_IN_PAST="BopisScheduleInPast",e.BOPIS_SCHEDULE_OUTSIDE_HOURS="BopisScheduleOutsideHours",e.BOPIS_FALLBACK="BopisFallback"}(c||(c={})),function(e){e.SHIPPING="shipping",e.BILLING="billing"}(u||(u={})),function(e){e[e.REQUEST_DEFAULT_ERROR=5480]="REQUEST_DEFAULT_ERROR",e[e.REQUEST_LOCATION_OOS_ERROR=5481]="REQUEST_LOCATION_OOS_ERROR",e[e.REQUEST_LOCATION_MISMATCH_ERROR=5482]="REQUEST_LOCATION_MISMATCH_ERROR",e[e.REQUEST_BIRTHDATE_ERROR=5483]="REQUEST_BIRTHDATE_ERROR",e[e.REQUEST_CART_NOT_AVAILABLE_ERROR=5484]="REQUEST_CART_NOT_AVAILABLE_ERROR",e[e.REQUEST_CART_ID_ERROR=5485]="REQUEST_CART_ID_ERROR",e[e.REQUEST_CART_ITEM_ERROR=5486]="REQUEST_CART_ITEM_ERROR",e[e.REQUEST_VALIDATION_ERROR=5487]="REQUEST_VALIDATION_ERROR",e[e.REQUEST_TAX_ERROR=5488]="REQUEST_TAX_ERROR",e[e.REQUEST_COMPLETE_TOKEN=5489]="REQUEST_COMPLETE_TOKEN",e[e.REQUEST_DEFAULT_COMPLETE_ERROR=5490]="REQUEST_DEFAULT_COMPLETE_ERROR",e[e.REQUEST_CHECKOUT_COMPLETE_UPDATE_ERROR=5491]="REQUEST_CHECKOUT_COMPLETE_UPDATE_ERROR",e[e.REQUEST_CHECKOUT_COMPLETE_SAVE_ERROR=5492]="REQUEST_CHECKOUT_COMPLETE_SAVE_ERROR",e[e.REQUEST_CHECKOUT_HAS_COMPLETE_ERROR=5493]="REQUEST_CHECKOUT_HAS_COMPLETE_ERROR",e[e.REQUEST_NO_CART_ITEM_ERROR=5494]="REQUEST_NO_CART_ITEM_ERROR",e[e.REQUEST_NO_CUSTOMER_FOUND_ERROR=5495]="REQUEST_NO_CUSTOMER_FOUND_ERROR",e[e.REQUEST_PAYMENT_ATTACHED_ERROR=5496]="REQUEST_PAYMENT_ATTACHED_ERROR",e[e.REQUEST_SHIPPING_ADDRESS_ERROR=5497]="REQUEST_SHIPPING_ADDRESS_ERROR",e[e.REQUEST_BILLING_ADDRESS_ERROR=5498]="REQUEST_BILLING_ADDRESS_ERROR",e[e.REQUEST_PAYMENT_NOT_FOUND_ERROR=5499]="REQUEST_PAYMENT_NOT_FOUND_ERROR",e[e.REQUEST_CART_UPDATED_ERROR=5501]="REQUEST_CART_UPDATED_ERROR",e[e.REQUEST_ADDRESS_DEFAULT_ERROR=5502]="REQUEST_ADDRESS_DEFAULT_ERROR",e[e.REQUEST_TIPS_ERROR=5503]="REQUEST_TIPS_ERROR",e[e.REQUEST_COMPLETE_CUSTOMER_MISSING_FIELDS=5504]="REQUEST_COMPLETE_CUSTOMER_MISSING_FIELDS",e[e.REQUEST_RETAILER_HOURS_ERROR=5505]="REQUEST_RETAILER_HOURS_ERROR",e[e.REQUEST_ITEM_QUANTITY_CHANGE_ERROR=5506]="REQUEST_ITEM_QUANTITY_CHANGE_ERROR",e[e.REQUEST_MAX_QUANTITY_PER_ORDER_ERROR=5507]="REQUEST_MAX_QUANTITY_PER_ORDER_ERROR",e[e.REQUEST_PRESALE_NOT_STARTED_ERROR=5508]="REQUEST_PRESALE_NOT_STARTED_ERROR",e[e.REQUEST_CART_MIN_RETAILER_NOT_MET_ERROR=5509]="REQUEST_CART_MIN_RETAILER_NOT_MET_ERROR",e[e.REQUEST_CHECKOUT_PROCESSING_LOCK_NOT_ACQUIRED_ERROR=5510]="REQUEST_CHECKOUT_PROCESSING_LOCK_NOT_ACQUIRED_ERROR",e[e.REQUEST_BOPIS_PRODUCT_NOT_OPTED_IN_ERROR=5511]="REQUEST_BOPIS_PRODUCT_NOT_OPTED_IN_ERROR"}(A||(A={})),function(e){e.REQUEST_DEFAULT_ERROR="There's been an error with your checkout request.",e.REQUEST_LOCATION_OOS_ERROR="The requested items are out of stock at this location.",e.REQUEST_LOCATION_MISMATCH_ERROR="The selected location doesn't match your cart items.",e.REQUEST_BIRTHDATE_ERROR="Please verify your birthdate and try again.",e.REQUEST_CART_NOT_AVAILABLE_ERROR="This cart is no longer available.",e.REQUEST_CART_ID_ERROR="The cartId requested is invalid, check and try again.",e.REQUEST_CART_ITEM_ERROR="There's an issue with one or more items in your cart.",e.REQUEST_VALIDATION_ERROR="There's been an error with your request parameters, check and try again.",e.REQUEST_TAX_ERROR="There was an error calculating tax for your order.",e.REQUEST_COMPLETE_TOKEN="The checkout token provided is invalid, check and try again.",e.REQUEST_DEFAULT_COMPLETE_ERROR="There was an error completing your checkout, confirm through the (prepare) method and try again.",e.REQUEST_CHECKOUT_COMPLETE_UPDATE_ERROR="Unable to update your checkout status.",e.REQUEST_CHECKOUT_COMPLETE_SAVE_ERROR="Unable to save your completed checkout.",e.REQUEST_CHECKOUT_HAS_COMPLETE_ERROR="This checkout has already been processed, create a new cart to process a new checkout.",e.REQUEST_NO_CART_ITEM_ERROR="Item(s) in your cart are no longer available",e.REQUEST_NO_CUSTOMER_FOUND_ERROR="The customer account was not found.",e.REQUEST_PAYMENT_ATTACHED_ERROR="The payment attached to the checkout is not a valid payment method for this customer.",e.REQUEST_SHIPPING_ADDRESS_ERROR="The address in your cart has changed, check and try again.",e.REQUEST_BILLING_ADDRESS_ERROR="The billing address in your checkout is not valid, check and try again.",e.REQUEST_PAYMENT_NOT_FOUND_ERROR="The payment method provided was not found.",e.REQUEST_CART_UPDATED_ERROR="The cart requested was updated during your checkout.",e.REQUEST_ADDRESS_DEFAULT_ERROR="There's been an error with your address configurations in cart and/or billing address, check and try again.",e.REQUEST_TIPS_ERROR="There's been an error applying your tips to the checkout.",e.REQUEST_COMPLETE_CUSTOMER_MISSING_FIELDS="Customer profile information is incomplete. Please provide all required details.",e.REQUEST_RETAILER_HOURS_ERROR="The retailer is currently closed or on-demand hours are not available.",e.REQUEST_ITEM_QUANTITY_CHANGE_ERROR="Some items in your cart exceed available stock quantities. Please adjust your cart and try again.",e.REQUEST_MAX_QUANTITY_PER_ORDER_ERROR="You have exceeded the maximum quantity allowed per order for one or more items in your cart.",e.REQUEST_PRESALE_NOT_STARTED_ERROR="The presale for this item has not started yet. Please check back later.",e.REQUEST_CART_MIN_RETAILER_NOT_MET_ERROR="Some items in your cart do not meet the minimum retailer requirements per order quantity. Please adjust your cart and try again.",e.REQUEST_CHECKOUT_PROCESSING_LOCK_NOT_ACQUIRED_ERROR="This checkout is currently being processed, please try again later.",e.REQUEST_BOPIS_PRODUCT_NOT_OPTED_IN_ERROR="One or more items in your cart are no longer eligible for in-store pickup (BOPIS) and were removed. Please review your cart and try again."}(N||(N={})),function(e){e.ERROR_PROCESSING_GIFT_CARDS="ErrorProcessingGiftCards",e.INVALID_GIFT_CARD_CODE="InvalidGiftCardCodes",e.INVALID_GIFT_CARD_PARTNER="InvalidGiftCardPartner",e.INACTIVE_GIFT_CARD="InactiveGiftCard",e.GIFT_CARD_ALREADY_IN_USE="GiftCardAlreadyInUse",e.GIFT_CARD_EXPIRED="GiftCardExpired",e.GIFT_CARD_BALANCE_DEPLETED="GiftCardBalanceDepleted",e.RETAILER_ONDEMAND_HOURS_NOT_AVAILABLE="RetailerOnDemandHoursNotAvailable",e.ITEM_QTY_CHANGE="ItemQuantityChange",e.MAX_QUANTITY_PER_ORDER_EXCEEDED="MaxQuantityPerOrderExceeded",e.COUPON_PROCESSING_ERROR="CouponProcessingError",e.COUPON_NOT_FOUND="CouponNotFound",e.COUPON_EXPIRED="CouponExpired",e.NO_APPLICABLE_DISCOUNT="NoApplicableDiscount",e.COUPON_NOT_STARTED="CouponNotStarted",e.MINIMUM_ORDER_VALUE_NOT_MET="MinimumOrderValueNotMet",e.MINIMUM_ORDER_UNITS_NOT_MET="MinimumOrderUnitsNotMet",e.MINIMUM_DISTINCT_ITEMS_NOT_MET="MinimumDistinctItemsNotMet",e.QUOTA_EXCEEDED="QuotaExceeded",e.USER_LIMIT_EXCEEDED="UserLimitExceeded",e.NOT_FIRST_PURCHASE="NotFirstPurchase",e.INVALID_COUPON="InvalidCoupon",e.INVALID_MEMBERSHIP="InvalidMembership",e.INVALID_DOMAIN="InvalidDomain",e.INVALID_REQUIREMENTS="InvalidRequirements",e.INVALID_ORGANIZATION="InvalidOrganization",e.PRESALE_ITEMS_NOT_ALLOWED="PresaleItemsNotAllowed",e.PRODUCT_NOT_ELIGIBLE="ProductNotEligible",e.NOT_ENOUGH_PREVIOUS_ORDERS="NotEnoughPreviousOrders",e.RETAILER_DOES_NOT_ALLOW_PROMOS="RetailerDoesNotAllowPromos",e.RETAILERS_DO_NOT_ALLOW_PROMOS="RetailersDoNotAllowPromos",e.RETAILER_DOES_NOT_ALLOW_GIFT_CARDS="RetailerDoesNotAllowGiftCards",e.RETAILERS_DO_NOT_ALLOW_GIFT_CARDS="RetailersDoNotAllowGiftCards"}(T||(T={})),function(e){e.CREATED="created",e.PROCESSING="processing",e.IN_TRANSIT="inTransit",e.CANCELED="canceled",e.DELIVERED="delivered",e.TEST="test"}(_||(_={})),function(e){e.LIQUIDCOMMERCE="LiquidCommerce OMS",e.RESERVEBAR="ReserveBar OMS"}(O||(O={})),function(e){e.PENDING="pending",e.SHIPPED="shipped",e.DELIVERED="delivered",e.CANCELED="canceled",e.RETURNED="returned",e.EXCEPTION="exception"}(h||(h={})),function(e){e.SHIPPING="shipping",e.ON_DEMAND="onDemand",e.DIGITAL="digital",e.BOPIS="bopis"}(S||(S={})),function(e){e.STANDARD="standard",e.PRE_SALE="pre_sale",e.BACK_ORDER="back_order"}(C||(C={})),function(e){e.SPIRITS="SPIRITS",e.WINE="WINE",e.BEER="BEER",e.NON_ALCOHOLIC="NON ALCOHOLIC",e.MISCELLANEOUS="MISCELLANEOUS",e.MERCHANDISE="MERCHANDISE",e.OTHER="OTHER"}(p||(p={})),function(e){e.ALE="BEER > ALE",e.LAGER="BEER > LAGER",e.BASE="BEER",e.NON_ALCOHOLIC="BEER > NON-ALCOHOLIC",e.OTHER_BEER="BEER > OTHER",e.OTHER_BEER_SOUR_BEER="BEER > SOUR BEER",e.OTHER_BEER_FLAVORED_BEER="BEER > FLAVORED BEER",e.OTHER_BEER_FRUIT_BEER="BEER > FRUIT BEER"}(D||(D={})),function(e){e.BASE="FOOD",e.PANTRY_OTHER="FOOD > PANTRY > OTHER",e.CANDY="FOOD > CANDY",e.CANDY_OTHER="FOOD > CANDY > OTHER",e.CBD="FOOD > CBD",e.CBD_OTHER="FOOD > CBD > OTHER",e.CHEESE="FOOD > CHEESE",e.CHEESE_OTHER="FOOD > CHEESE > OTHER",e.HOUSEHOLD="FOOD > HOUSEHOLD",e.HOUSEHOLD_SNACKS="FOOD > HOUSEHOLD > SNACKS",e.HOUSEHOLD_OTHER="FOOD > HOUSEHOLD > OTHER",e.PANTRY="FOOD > PANTRY",e.FRUIT="FOOD > FRUIT",e.OTHER="FOOD > OTHER",e.ICE="FOOD > ICE",e.ICE_CREAM="FOOD > ICE CREAM",e.PARTY_SUPPLIES="FOOD > PARTY SUPPLIES",e.PARTY_SUPPLIES_OTHER="FOOD > PARTY SUPPLIES > OTHER",e.SPIRITS_BASED="FOOD > SPIRITS BASED",e.GARNISHES="FOOD > GARNISHES"}(m||(m={})),function(e){e.BASE="MERCHANDISE",e.GLASSWARE="MERCHANDISE > GLASSWARE",e.GLASSWARE_OTHER="MERCHANDISE > GLASSWARE > OTHER",e.HUMIDOR="MERCHANDISE > HUMIDOR",e.ACCESSORY="MERCHANDISE > ACCESSORY",e.ACCESSORY_OTHER="MERCHANDISE > ACCESSORY > OTHER",e.GIFT_SET="MERCHANDISE > GIFT SET",e.GIFT_SET_GIFT_BAG="MERCHANDISE > GIFT SET > GIFT BAG",e.GIFT_SET_GIFT_CARD="MERCHANDISE > GIFT SET > GIFT CARD",e.BAR_TOOLS="MERCHANDISE > BAR TOOLS",e.BAR_TOOLS_ICE_BUCKET="MERCHANDISE > BAR TOOLS > ICE BUCKET",e.BAR_TOOLS_OTHER="MERCHANDISE > BAR TOOLS > OTHER"}(v||(v={})),function(e){e.BASE="MISCELLANEOUS",e.GIFT_CARD="MISCELLANEOUS > GIFT CARDS",e.PROMOTIONAL="MISCELLANEOUS > PROMOTIONAL",e.MEMBERSHIP="MISCELLANEOUS > MEMBERSHIP"}(y||(y={})),function(e){e.BASE="NON ALCOHOLIC",e.BITTERS="NON ALCOHOLIC > BITTERS",e.COCKTAIL_MIX="NON ALCOHOLIC > COCKTAIL MIX",e.COFFEE="NON ALCOHOLIC > COFFEE",e.ENERGY_DRINKS="NON ALCOHOLIC > ENERGY DRINKS",e.JUICE="NON ALCOHOLIC > JUICE",e.SODA="NON ALCOHOLIC > SODA",e.SPECIALTY_ITEM="NON ALCOHOLIC > SPECIALTY ITEM",e.SPECIALTY_ITEM_OTHER="NON ALCOHOLIC > SPECIALTY ITEM > OTHER",e.SPIRITS="NON ALCOHOLIC > SPIRITS",e.TEA="NON ALCOHOLIC > TEA",e.WATER="NON ALCOHOLIC > WATER",e.WINE="NON ALCOHOLIC > WINE",e.SPORTS_DRINKS="NON ALCOHOLIC > SPORTS DRINKS",e.SLURPEES="NON ALCOHOLIC > SLURPEES",e.GINGER_BEER="NON ALCOHOLIC > GINGER BEER",e.DAIRY="NON ALCOHOLIC > DAIRY",e.DAIRY_OTHER="NON ALCOHOLIC > DAIRY > OTHER",e.OTHER="NON ALCOHOLIC > OTHER"}(L||(L={})),function(e){e.BASE="READY TO DRINK",e.HARD_CIDER="READY TO DRINK > HARD CIDER",e.HARD_CIDER_PERRY_PEAR_CIDER="READY TO DRINK > HARD CIDER > PERRY (PEAR CIDER)",e.HARD_CIDER_APPLE_CIDER="READY TO DRINK > HARD CIDER > APPLE CIDER",e.HARD_CIDER_OTHER_FRUIT_CIDER="READY TO DRINK > HARD CIDER > FRUIT CIDER",e.HARD_TEA="READY TO DRINK > HARD TEA",e.HARD_SELTZER="READY TO DRINK > HARD SELTZER",e.MALT_BASED="READY TO DRINK > MALT BASED",e.SPIRITS_BASED_RTDS="READY TO DRINK > SPIRITS-BASED RTDS",e.SPIRITS_BASED_RTDS_AGAVE_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > AGAVE COCKTAILS",e.SPIRITS_BASED_RTDS_GIN_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > GIN COCKTAILS",e.SPIRITS_BASED_RTDS_RUM_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > RUM COCKTAILS",e.SPIRITS_BASED_RTDS_TEQUILA_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > TEQUILA COCKTAILS",e.SPIRITS_BASED_RTDS_VODKA_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > VODKA COCKTAILS",e.SPIRITS_BASED_RTDS_WHISKEY_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > WHISKEY COCKTAILS",e.SPIRITS_BASED_RTDS_OTHER="READY TO DRINK > SPIRITS-BASED RTDS > OTHER",e.SPIRITS_BASED_RTDS_FROZEN_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > FROZEN COCKTAILS",e.SPIRITS_BASED_RTDS_APERITIF_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > APERITIF COCKTAILS",e.SPIRITS_BASED_RTDS_DESSERT_COFFEE_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > DESSERT & COFFEE COCKTAILS",e.SPIRITS_BASED_RTDS_TEA_COCKTAILS="READY TO DRINK > SPIRITS-BASED RTDS > TEA COCKTAILS",e.WINE_COCKTAILS="READY TO DRINK > WINE COCKTAILS",e.OTHER="READY TO DRINK > OTHER"}(W||(W={})),function(e){e.BASE="SPIRITS",e.AMARO_APERITIF_VERMOUTH="SPIRITS > AMARO APERITIF & VERMOUTH",e.AMARO_APERITIF_VERMOUTH_OTHER="SPIRITS > AMARO APERITIF & VERMOUTH > OTHER",e.BAIJIU="SPIRITS > BAIJIU",e.BITTERS="SPIRITS > BITTERS",e.BRANDY="SPIRITS > BRANDY",e.BRANDY_COGNAC="SPIRITS > BRANDY > COGNAC",e.CACHACA="SPIRITS > CACHACA",e.GIN="SPIRITS > GIN",e.GIN_DRY_GIN="SPIRITS > GIN > DRY GIN",e.GIN_FLAVORED_GIN="SPIRITS > GIN > FLAVORED GIN",e.GIN_OLD_TOM_GIN="SPIRITS > GIN > OLD TOM GIN",e.GIN_OTHER="SPIRITS > GIN > OTHER",e.GRAIN_ALCOHOL="SPIRITS > GRAIN ALCOHOL",e.LIQUEUR="SPIRITS > LIQUEUR",e.MEZCAL="SPIRITS > MEZCAL",e.OTHER_SPIRITS="SPIRITS > OTHER SPIRITS",e.RUM="SPIRITS > RUM",e.RUM_AGED_RUM="SPIRITS > RUM > AGED RUM",e.RUM_DARK_RUM="SPIRITS > RUM > DARK RUM",e.RUM_FLAVORED_RUM="SPIRITS > RUM > FLAVORED RUM",e.RUM_GOLD_RUM="SPIRITS > RUM > GOLD RUM",e.RUM_OTHER="SPIRITS > RUM > OTHER",e.RUM_SPICED="SPIRITS > RUM > SPICED",e.RUM_WHITE_RUM="SPIRITS > RUM > WHITE RUM",e.SHOCHU="SPIRITS > SHOCHU",e.SOJU="SPIRITS > SOJU",e.SOTOL="SPIRITS > SOTOL",e.TEQUILA="SPIRITS > TEQUILA",e.TEQUILA_ANEJO="SPIRITS > TEQUILA > AÑEJO",e.TEQUILA_BLANCO="SPIRITS > TEQUILA > BLANCO",e.TEQUILA_CRISTALINO="SPIRITS > TEQUILA > CRISTALINO",e.TEQUILA_EXTRA_ANEJO="SPIRITS > TEQUILA > EXTRA AÑEJO",e.TEQUILA_OTHER="SPIRITS > TEQUILA > OTHER",e.TEQUILA_REPOSADO="SPIRITS > TEQUILA > REPOSADO",e.VODKA="SPIRITS > VODKA",e.VODKA_FLAVORED_VODKA="SPIRITS > VODKA > FLAVORED VODKA",e.VODKA_OTHER="SPIRITS > VODKA > OTHER",e.VODKA_REGULAR_VODKA="SPIRITS > VODKA > REGULAR VODKA",e.WHISKEY="SPIRITS > WHISKEY",e.WHISKEY_AMERICAN_WHISKEY="SPIRITS > WHISKEY > AMERICAN WHISKEY",e.WHISKEY_BOURBON="SPIRITS > WHISKEY > BOURBON",e.WHISKEY_CANADIAN_WHISKEY="SPIRITS > WHISKEY > CANADIAN WHISKEY",e.WHISKEY_IRISH_WHISKEY="SPIRITS > WHISKEY > IRISH WHISKEY",e.WHISKEY_MOONSHINE="SPIRITS > WHISKEY > MOONSHINE",e.WHISKEY_FLAVORED="SPIRITS > WHISKEY > FLAVORED WHISKEY",e.WHISKEY_OTHER="SPIRITS > WHISKEY > OTHER",e.WHISKEY_SCOTCH="SPIRITS > WHISKEY > SCOTCH"}(g||(g={})),function(e){e.BASE="WINE",e.CHAMPAGNE_SPARKLING="WINE > CHAMPAGNE & SPARKLING",e.CHAMPAGNE_SPARKLING_CAVA="WINE > CHAMPAGNE & SPARKLING > CAVA",e.CHAMPAGNE_SPARKLING_CHAMPAGNE="WINE > CHAMPAGNE & SPARKLING > CHAMPAGNE",e.CHAMPAGNE_SPARKLING_PROSECCO="WINE > CHAMPAGNE & SPARKLING > PROSECCO",e.CHAMPAGNE_SPARKLING_SPARKLING_WINE="WINE > CHAMPAGNE & SPARKLING > SPARKLING WINE",e.CHAMPAGNE_SPARKLING_OTHER="WINE > CHAMPAGNE & SPARKLING > OTHER",e.COOKING="WINE > COOKING",e.DESSERT_FORTIFIED_WINE="WINE > DESSERT & FORTIFIED WINE",e.DESSERT_FORTIFIED_WINE_MEAD="WINE > DESSERT & FORTIFIED WINE > MEAD",e.DESSERT_FORTIFIED_WINE_PORT="WINE > DESSERT & FORTIFIED WINE > PORT",e.DESSERT_FORTIFIED_WINE_SHERRY="WINE > DESSERT & FORTIFIED WINE > SHERRY",e.DESSERT_FORTIFIED_WINE_OTHER="WINE > DESSERT & FORTIFIED WINE > OTHER",e.RED_WINE="WINE > RED WINE",e.RED_WINE_AGIORGITIKO="WINE > RED WINE > AGIORGITIKO",e.RED_WINE_AGLIANICO="WINE > RED WINE > AGLIANICO",e.RED_WINE_ALICANTE_BOUSCHET="WINE > RED WINE > ALICANTE BOUSCHET",e.RED_WINE_BARBERA="WINE > RED WINE > BARBERA",e.RED_WINE_BARBARESCO="WINE > RED WINE > BARBARESCO",e.RED_WINE_BAROLO="WINE > RED WINE > BAROLO",e.RED_WINE_BEAUJOLAIS="WINE > RED WINE > BEAUJOLAIS",e.RED_WINE_BLAUER_ZWEIGELT="WINE > RED WINE > BLAUER ZWEIGELT",e.RED_WINE_BOBAL="WINE > RED WINE > BOBAL",e.RED_WINE_BONARDA="WINE > RED WINE > BONARDA",e.RED_WINE_BORDEAUX="WINE > RED WINE > BORDEAUX",e.RED_WINE_BORDEAUX_BLEND="WINE > RED WINE > BORDEAUX BLEND",e.RED_WINE_BURGUNDY="WINE > RED WINE > BURGUNDY",e.RED_WINE_CABERNET_FRANC="WINE > RED WINE > CABERNET FRANC",e.RED_WINE_CABERNET_SAUVIGNON="WINE > RED WINE > CABERNET SAUVIGNON",e.RED_WINE_CANNONAU="WINE > RED WINE > CANNONAU",e.RED_WINE_CARMENERE="WINE > RED WINE > CARMENERE",e.RED_WINE_CHAMBOURCIN="WINE > RED WINE > CHAMBOURCIN",e.RED_WINE_CHIANTI="WINE > RED WINE > CHIANTI",e.RED_WINE_CINSAULT="WINE > RED WINE > CINSAULT",e.RED_WINE_CORVINA="WINE > RED WINE > CORVINA",e.RED_WINE_DOLCETTO="WINE > RED WINE > DOLCETTO",e.RED_WINE_DORNFELDER="WINE > RED WINE > DORNFELDER",e.RED_WINE_FETEASCA_NEAGRA="WINE > RED WINE > FETEASCA NEAGRA",e.RED_WINE_GAMAY="WINE > RED WINE > GAMAY",e.RED_WINE_GRACIANO="WINE > RED WINE > GRACIANO",e.RED_WINE_GRENACHE="WINE > RED WINE > GRENACHE",e.RED_WINE_LIMNIO="WINE > RED WINE > LIMNIO",e.RED_WINE_MACABEO="WINE > RED WINE > MACABEO",e.RED_WINE_MALBEC="WINE > RED WINE > MALBEC",e.RED_WINE_MENCIA="WINE > RED WINE > MENCIA",e.RED_WINE_MERLOT="WINE > RED WINE > MERLOT",e.RED_WINE_MONICA="WINE > RED WINE > MONICA",e.RED_WINE_MONTEPULCIANO="WINE > RED WINE > MONTEPULCIANO",e.RED_WINE_MOURVEDRE_MONASTRELL="WINE > RED WINE > MOURVEDRE/MONASTRELL",e.RED_WINE_NEBBIOLO="WINE > RED WINE > NEBBIOLO",e.RED_WINE_NEGROAMARO="WINE > RED WINE > NEGROAMARO",e.RED_WINE_NERELLO_MASCALESE="WINE > RED WINE > NERELLO MASCALESE",e.RED_WINE_NERO_DAVOLA="WINE > RED WINE > NERO D'AVOLA",e.RED_WINE_PETIT_VERDOT="WINE > RED WINE > PETIT VERDOT",e.RED_WINE_PETITE_SIRAH="WINE > RED WINE > PETITE SIRAH",e.RED_WINE_PINOT_NOIR="WINE > RED WINE > PINOT NOIR",e.RED_WINE_PINOTAGE="WINE > RED WINE > PINOTAGE",e.RED_WINE_PRIMITIVO="WINE > RED WINE > PRIMITIVO",e.RED_WINE_RED_BLEND="WINE > RED WINE > RED BLEND",e.RED_WINE_RHONE_BLEND="WINE > RED WINE > RHONE BLEND",e.RED_WINE_RIOJA="WINE > RED WINE > RIOJA",e.RED_WINE_SAGRANTINO="WINE > RED WINE > SAGRANTINO",e.RED_WINE_SANGIOVESE="WINE > RED WINE > SANGIOVESE",e.RED_WINE_SAPERAVI="WINE > RED WINE > SAPERAVI",e.RED_WINE_SCHIAVA_TROLLINGER="WINE > RED WINE > SCHIAVA/TROLLINGER",e.RED_WINE_SYRAH_SHIRAZ="WINE > RED WINE > SYRAH/SHIRAZ",e.RED_WINE_TANNAT="WINE > RED WINE > TANNAT",e.RED_WINE_TEMPRANILLO="WINE > RED WINE > TEMPRANILLO",e.RED_WINE_TEROLDEGO="WINE > RED WINE > TEROLDEGO",e.RED_WINE_TINTA_DEL_TORO="WINE > RED WINE > TINTA DEL TORO",e.RED_WINE_TOURIGA_NACIONAL="WINE > RED WINE > TOURIGA NACIONAL",e.RED_WINE_VALPOLICELLA="WINE > RED WINE > VALPOLICELLA",e.RED_WINE_XINOMAVRO="WINE > RED WINE > XINOMAVRO",e.RED_WINE_ZINFANDEL="WINE > RED WINE > ZINFANDEL",e.RED_WINE_ZWEIGELT="WINE > RED WINE > ZWEIGELT",e.RED_WINE_OTHER="WINE > RED WINE > OTHER",e.ROSE_WINE="WINE > ROSE WINE",e.SAKE="WINE > SAKE",e.WHITE_WINE="WINE > WHITE WINE",e.WHITE_WINE_ALBARINO_ALVARINHO="WINE > WHITE WINE > ALBARINO/ALVARINHO",e.WHITE_WINE_ARNEIS="WINE > WHITE WINE > ARNEIS",e.WHITE_WINE_ASTI="WINE > WHITE WINE > ASTI",e.WHITE_WINE_ASSYRTIKO="WINE > WHITE WINE > ASSYRTIKO",e.WHITE_WINE_BURGUNDY="WINE > WHITE WINE > BURGUNDY",e.WHITE_WINE_CARRICANTE="WINE > WHITE WINE > CARRICANTE",e.WHITE_WINE_CATARRATTO="WINE > WHITE WINE > CATARRATTO",e.WHITE_WINE_CHABLIS="WINE > WHITE WINE > CHABLIS",e.WHITE_WINE_CHARDONNAY="WINE > WHITE WINE > CHARDONNAY",e.WHITE_WINE_CHENIN_BLANC="WINE > WHITE WINE > CHENIN BLANC",e.WHITE_WINE_CORTESE="WINE > WHITE WINE > CORTESE",e.WHITE_WINE_FALANGHINA="WINE > WHITE WINE > FALANGHINA",e.WHITE_WINE_FIANO="WINE > WHITE WINE > FIANO",e.WHITE_WINE_FRIULANO="WINE > WHITE WINE > FRIULANO",e.WHITE_WINE_FURMINT="WINE > WHITE WINE > FURMINT",e.WHITE_WINE_GARGANEGA="WINE > WHITE WINE > GARGANEGA",e.WHITE_WINE_GAVI="WINE > WHITE WINE > GAVI",e.WHITE_WINE_GEWURZTRAMINER="WINE > WHITE WINE > GEWURZTRAMINER",e.WHITE_WINE_GRECO_DI_TUFO="WINE > WHITE WINE > GRECO DI TUFO",e.WHITE_WINE_GRENACHE_BLANC="WINE > WHITE WINE > GRENACHE BLANC",e.WHITE_WINE_GRUNER_VELTLINER="WINE > WHITE WINE > GRUNER VELTLINER",e.WHITE_WINE_HUXELREBE="WINE > WHITE WINE > HUXELREBE",e.WHITE_WINE_INZOLIA="WINE > WHITE WINE > INZOLIA",e.WHITE_WINE_MALVASIA="WINE > WHITE WINE > MALVASIA",e.WHITE_WINE_MELON_DE_BOURGOGNE="WINE > WHITE WINE > MELON DE BOURGOGNE",e.WHITE_WINE_MOSCATO_BIANCO="WINE > WHITE WINE > MOSCATO BIANCO",e.WHITE_WINE_MOSCHOFILERO_FILERI="WINE > WHITE WINE > MOSCHOFILERO/FILERI",e.WHITE_WINE_MULLER_THURGAU_RIVANER="WINE > WHITE WINE > MULLER-THURGAU/RIVANER",e.WHITE_WINE_MUSCAT_MOSCATO="WINE > WHITE WINE > MUSCAT/MOSCATO",e.WHITE_WINE_PECORINO="WINE > WHITE WINE > PECORINO",e.WHITE_WINE_PICPOUL="WINE > WHITE WINE > PICPOUL",e.WHITE_WINE_PINOT_BLANC="WINE > WHITE WINE > PINOT BLANC",e.WHITE_WINE_PINOT_GRIGIO_PINOT_GRIS="WINE > WHITE WINE > PINOT GRIGIO/PINOT GRIS",e.WHITE_WINE_POUILLY_FUISSE="WINE > WHITE WINE > POUILLY-FUISSE",e.WHITE_WINE_POUILLY_FUME="WINE > WHITE WINE > POUILLY-FUME",e.WHITE_WINE_RIESLING="WINE > WHITE WINE > RIESLING",e.WHITE_WINE_RIOJA="WINE > WHITE WINE > RIOJA",e.WHITE_WINE_RODITIS="WINE > WHITE WINE > RODITIS",e.WHITE_WINE_SANCERRE="WINE > WHITE WINE > SANCERRE",e.WHITE_WINE_SAUVIGNON_BLANC="WINE > WHITE WINE > SAUVIGNON BLANC",e.WHITE_WINE_SEMILLON="WINE > WHITE WINE > SEMILLON",e.WHITE_WINE_SOAVE="WINE > WHITE WINE > SOAVE",e.WHITE_WINE_SYLVANER="WINE > WHITE WINE > SYLVANER",e.WHITE_WINE_TORRONTES="WINE > WHITE WINE > TORRONTES",e.WHITE_WINE_TREBBIANO_UGNI_BLANC="WINE > WHITE WINE > TREBBIANO/UGNI BLANC",e.WHITE_WINE_TURBIANA="WINE > WHITE WINE > TURBIANA",e.WHITE_WINE_TXAKOLINA="WINE > WHITE WINE > TXAKOLINA",e.WHITE_WINE_VERDEJO="WINE > WHITE WINE > VERDEJO",e.WHITE_WINE_VERDICCHIO="WINE > WHITE WINE > VERDICCHIO",e.WHITE_WINE_VERMENTINO="WINE > WHITE WINE > VERMENTINO",e.WHITE_WINE_VERNACCIA="WINE > WHITE WINE > VERNACCIA",e.WHITE_WINE_VIDIANO="WINE > WHITE WINE > VIDIANO",e.WHITE_WINE_VINHO_VERDE="WINE > WHITE WINE > VINHO VERDE",e.WHITE_WINE_VIOGNIER="WINE > WHITE WINE > VIOGNIER",e.WHITE_WINE_VIURA="WINE > WHITE WINE > VIURA",e.WHITE_WINE_OTHER="WINE > WHITE WINE > OTHER",e.WINE_OTHER="WINE > OTHER"}(P||(P={}));const f={[t.LOC]:"http://0.0.0.0:8000/api",[t.DEV]:"https://dev.api.liquidcommerce.cloud/api",[t.STAGE]:"https://staging.api.liquidcommerce.cloud/api",[t.PROD]:"https://api.liquidcommerce.cloud/api",[t.BETA]:"https://cloud-apis-beta-948630220003.us-central1.run.app/api"};function H(e){return async(t,i)=>{var r;const n=await e(t,i);let s;return"function"==typeof(null===(r=n.headers)||void 0===r?void 0:r.entries)?s=Object.fromEntries(n.headers.entries()):(s={},n.headers.forEach((e,t)=>{s[t]=e})),{ok:n.ok,status:n.status,statusText:n.statusText,headers:s,json:()=>n.json(),text:()=>n.text()}}}const U=(e,t)=>new Promise((i,r)=>{const n=new XMLHttpRequest;n.open(t.method||"GET",e),Object.entries(t.headers).forEach(([e,t])=>{n.setRequestHeader(e,t)}),n.onload=()=>{i({ok:n.status>=200&&n.status<300,status:n.status,statusText:n.statusText,headers:n.getAllResponseHeaders().split("\r\n").reduce((e,t)=>{const[i,r]=t.split(": ");return i&&(e[i]=r),e},{}),json:()=>Promise.resolve(JSON.parse(n.responseText)),text:()=>Promise.resolve(n.responseText)})},n.onerror=()=>{r(new TypeError("Network request failed"))},n.send(t.body)});function M(){return"undefined"!=typeof fetch?H(fetch):"undefined"!=typeof global&&global.fetch?H(global.fetch):"undefined"!=typeof window&&window.fetch?H(window.fetch):U}class w{constructor(e){this.accessToken=null,this.tokenExpiration=null,this.isAuthenticating=!1,this.apiKey=e.apiKey,this.env=e.env,this.baseURL=e.baseURL,this.httpClient=M()}getUniqueKey(){return`${this.apiKey}_${this.baseURL}`}async authenticate(){var e,t;if(this.isAuthenticating)await new Promise(e=>{const t=()=>{this.isAuthenticating?setTimeout(t,100):e(void 0)};t()});else{this.isAuthenticating=!0;try{const i=await this.requestWithoutAuth("/authentication",{method:"GET"});this.accessToken=null===(e=null==i?void 0:i.data)||void 0===e?void 0:e.token,this.tokenExpiration=null===(t=null==i?void 0:i.data)||void 0===t?void 0:t.exp}catch(e){throw console.error("Authentication failed:",e),new Error("Failed to authenticate with LiquidCommerce API")}finally{this.isAuthenticating=!1}}}async getAuth(){const e=await this.requestWithoutAuth("/authentication",{method:"GET"});return null==e?void 0:e.data}async requestWithoutAuth(e,t){const i=new URL(`api${e}`,this.baseURL),r={"Content-Type":"application/json","X-LIQUID-API-KEY":this.apiKey,"X-LIQUID-API-OBF":"true",...t.headers},n={method:t.method,headers:r,body:t.body?JSON.stringify(t.body):void 0},s=await this.httpClient(i.toString(),n);if(!s.ok)throw new Error(`HTTP error! status: ${s.status}`);return s.json()}isTokenExpired(){return!this.tokenExpiration||Date.now()>=this.tokenExpiration}async request(e,t){try{this.accessToken&&!this.isTokenExpired()||await this.authenticate();const i=new URL(`api${e}`,this.baseURL),r={"Content-Type":"application/json","X-LIQUID-API-KEY":this.apiKey,"X-LIQUID-API-OBF":"true","X-LIQUID-API-SDK":"true","X-LIQUID-SDK-VERSION":"1.12.1",Authorization:`Bearer ${this.accessToken}`,...t.headers},n={method:t.method,headers:r,body:t.body?JSON.stringify(t.body):void 0},s=await this.httpClient(i.toString(),n);let a;try{a=await s.json()}catch(e){a={message:await s.text().catch(()=>`HTTP error! status: ${s.status}`)||e}}if(!s.ok){throw{...a,status:s.status,message:(null==a?void 0:a.message)||`HTTP error! status: ${s.status}`}}return a}catch(e){throw e}}async get(e,t){return this.request(e,{method:"GET",headers:t})}async post(e,t,i){return this.request(e,{method:"POST",body:t,headers:i})}async put(e,t,i){return this.request(e,{method:"PUT",body:t,headers:i})}async delete(e,t){return this.request(e,{method:"DELETE",headers:t})}}class b{constructor(e){this.locationHelperService=e}validateAndNormalizeParams(e){const t={...e};return t.id=this.validateId(t.id),t.items=this.validateAndNormalizeItems(t.items),this.locationHelperService.validateAndNormalizeLocation(t.loc),t.refresh=Boolean(t.refresh),t}validateId(e){return e&&"string"==typeof e&&0!==e.trim().length?e.trim():""}validateAndNormalizeItems(e){if(!Array.isArray(e)||0===e.length)throw new Error(d.INVALID_ITEMS_TYPE);if(e.length>25)throw new Error(d.INVALID_ITEMS_MAX);return e.map(e=>this.validateAndNormalizeItem(e))}validateAndNormalizeItem(e){const t={...e};if(!this.validatePartNumber(t.partNumber))throw new Error(d.INVALID_PART_NUMBER);if(!t.fulfillmentId||"string"!=typeof t.fulfillmentId||0===t.fulfillmentId.trim().length)throw new Error(d.INVALID_FULFILLMENT_ID);return t.quantity=Math.max(0,Math.floor(t.quantity)),t.engravingLines&&(t.engravingLines=t.engravingLines.map(e=>e.trim()).filter(e=>e.length>0)),t}validatePartNumber(e){if(!e||"string"!=typeof e)return!1;const t=e.split("_");return 2===t.length&&t[0].length>0&&t[1].length>0}}class B{constructor(e){this.locationServiceHelper=e,this.taxonomyValues=new Set([...Object.values(D),...Object.values(m),...Object.values(v),...Object.values(L),...Object.values(W),...Object.values(g),...Object.values(P),...Object.values(y)])}validateAndNormalizeParams(e){var t,i,r,n,s,a,E,o,I;const l={...e},R=null!==(t=null==l?void 0:l.upcs)&&void 0!==t?t:[],d=null!==(i=null==l?void 0:l.grouping)&&void 0!==i?i:[],c=null!==(r=null==l?void 0:l.ids)&&void 0!==r?r:[];if([R,d,c].every(e=>this.validateIdsExist(e)))throw new Error("Product identifiers must be a non-empty array of strings");return R.length>0&&(this.validateIds(null!==(n=null==l?void 0:l.upcs)&&void 0!==n?n:[]),l.upcs=R),d.length>0&&(this.validateIds(null!==(s=null==l?void 0:l.grouping)&&void 0!==s?s:[]),l.grouping=d),c.length>0&&(this.validateIds(null!==(a=null==l?void 0:l.ids)&&void 0!==a?a:[]),l.ids=c),this.validateIds(null!==(I=null!==(o=null!==(E=null==l?void 0:l.upcs)&&void 0!==E?E:null==l?void 0:l.grouping)&&void 0!==o?o:null==l?void 0:l.ids)&&void 0!==I?I:[]),this.locationServiceHelper.validateAndNormalizeLocation(l.loc),l}isValidObjectId(e){return!(!e||"string"!=typeof e)&&/^[0-9a-fA-F]{24}$/.test(e)}validateRetailers(e,t){void 0!==e&&(Array.isArray(e)?(e.length>20&&t.push("Retailers array can have a maximum of 20 values"),e.forEach((e,i)=>{"string"!=typeof e?t.push(`Retailer at index ${i} must be a string`):this.isValidObjectId(e)||t.push(`Retailer ID at index ${i} must be a valid ObjectId string`)})):t.push("Retailers must be an array"))}validateAndNormalizeSearchParams(e){const t=[],i={...e};return this.validateRetailers(i.retailers,t),this.validateOrderBy(i.orderBy,t),this.validateOrderDirection(i.orderDirection,t),this.validateFilters(i.filters,t),this.validatePagination(i.page,i.perPage,t),this.locationServiceHelper.validateAndNormalizeLocation(i.loc),t.length>0?{...i,error:t.join(". ")}:i}validateIds(e){if(!e.every(e=>"string"==typeof e&&e.trim().length>0))throw new Error("All product identifiers must be non-empty strings")}validateIdsExist(e){return!Array.isArray(e)||0===e.length}validateOrderBy(e,t){e&&!Object.values(l).includes(e)&&t.push(`Invalid orderBy value: ${e}`)}validateOrderDirection(e,t){e&&!Object.values(I).includes(e)&&t.push(`Invalid orderDirection value: ${e}`)}validateFilters(e,t){e&&(e.length>10&&t.push("Maximum of 10 filters allowed"),e.forEach(e=>{switch(Object.values(o).includes(e.key)||t.push(`Invalid filter key: ${e.key}`),e.key){case o.AVAILABILITY:this.validateAvailabilityFilter(e.values,t);break;case o.FULFILLMENT:this.validateFulfillmentFilter(e.values,t);break;case o.ENGRAVING:case o.PRESALE:this.validateBinaryFilter(e.values,t);break;case o.BRANDS:this.validateArrayFilter(e.values,75,"brands",t);break;case o.FLAVOR:this.validateArrayFilter(e.values,25,"flavor",t);break;case o.REGION:this.validateArrayFilter(e.values,25,"region",t);break;case o.VARIETY:this.validateArrayFilter(e.values,25,"variety",t);break;case o.SIZES:this.validateArrayFilter(e.values,25,"sizes",t);break;case o.APPELLATION:this.validateArrayFilter(e.values,25,"appellation",t);break;case o.COUNTRY:this.validateArrayFilter(e.values,25,"country",t);break;case o.VINTAGE:this.validateArrayFilter(e.values,25,"vintage",t);break;case o.MATERIALS:this.validateArrayFilter(e.values,25,"materials",t);break;case o.COLORS:this.validateArrayFilter(e.values,25,"colors",t);break;case o.TAGS:this.validateArrayFilter(e.values,25,"tags",t)}}))}validateAvailabilityFilter(e,t){Object.values(R).includes(e)||t.push(`Invalid availability value: ${e}`)}validateFulfillmentFilter(e,t){if(!Array.isArray(e))return void t.push("Fulfillment filter must be an array");const r=Object.values(i);e.forEach(e=>{r.includes(e)||t.push(`Invalid fulfillment value: ${e}`)})}validateBinaryFilter(e,t){Object.values(E).includes(e)||t.push(`Invalid availability value: ${e}`)}validateArrayFilter(e,t,i,r){Array.isArray(e)?e.length>t&&r.push(`${i} filter can have a maximum of ${t} values`):r.push(`${i} filter must be an array`)}validateCategoriesFilter(e,t){Array.isArray(e)?e.every(e=>this.taxonomyValues.has(e))||t.push("Invalid category value(s) in categories filter"):t.push("Categories filter must be an array")}validatePagination(e,t,i){void 0!==e&&("number"!=typeof e||e<0)&&i.push("Page must be a non-negative number"),void 0!==t&&("number"!=typeof t||t<=0)&&i.push("PerPage must be a positive number")}}class G{constructor(e){this.locationHelperService=e}validateAndNormalizePrepareParams(e){var t,i,r,n,s,a,E,o,I,l,R,d,c,u,A,N,T,_,O,h;let S={...e};if(!(null==S?void 0:S.cartId)||"string"!=typeof(null==S?void 0:S.cartId))throw new Error("Invalid cartId");return this.validateCustomer(S.customer),(null==S?void 0:S.billingAddress)&&this.validateBillingAddress(S.billingAddress),S.hasAgeVerify=Boolean(null!==(r=null!==(t=null==S?void 0:S.hasAgeVerify)&&void 0!==t?t:null===(i=null==S?void 0:S.customer)||void 0===i?void 0:i.hasAgeVerify)&&void 0!==r&&r),S.hasSubstitutionPolicy=Boolean(null==S?void 0:S.hasSubstitutionPolicy),S.acceptedAccountCreation=Boolean(null==S?void 0:S.acceptedAccountCreation),S.isGift=Boolean(null==S?void 0:S.isGift),S.billingSameAsShipping=Boolean(null==S?void 0:S.billingSameAsShipping),S&&(null==S?void 0:S.billingAddress)&&""!==(null===(n=null==S?void 0:S.billingAddress)||void 0===n?void 0:n.phone)&&(S={...S,billingAddress:{...null!==(s=null==S?void 0:S.billingAddress)&&void 0!==s?s:{},phone:null!==(E=this.formatPhoneNumber(null===(a=S.billingAddress)||void 0===a?void 0:a.phone))&&void 0!==E?E:""}}),S&&(null==S?void 0:S.customer)&&""!==(null===(o=null==S?void 0:S.customer)||void 0===o?void 0:o.phone)&&(S={...S,customer:{...null!==(I=null==S?void 0:S.customer)&&void 0!==I?I:{},phone:null!==(R=this.formatPhoneNumber(null===(l=null==S?void 0:S.customer)||void 0===l?void 0:l.phone))&&void 0!==R?R:""}}),(null==S?void 0:S.isGift)&&(this.validateGiftOptions(S.giftOptions),S&&(null==S?void 0:S.giftOptions)&&""!==(null===(c=null===(d=null==S?void 0:S.giftOptions)||void 0===d?void 0:d.recipient)||void 0===c?void 0:c.phone)&&(S={...S,giftOptions:{...null!==(u=null==S?void 0:S.giftOptions)&&void 0!==u?u:{},recipient:{...null!==(N=null===(A=null==S?void 0:S.giftOptions)||void 0===A?void 0:A.recipient)&&void 0!==N?N:{},phone:null!==(O=this.formatPhoneNumber(null===(_=null===(T=S.giftOptions)||void 0===T?void 0:T.recipient)||void 0===_?void 0:_.phone))&&void 0!==O?O:""}}})),this.validateMarketingPreferences(null==S?void 0:S.marketingPreferences),(null==S?void 0:S.giftCards)&&(S.giftCards=this.validateGiftCards(null!==(h=null==S?void 0:S.giftCards)&&void 0!==h?h:[])),(null==S?void 0:S.deliveryTips)&&this.validateDeliveryTips(S.deliveryTips),(null==S?void 0:S.refresh)&&(S.refresh=Boolean(S.refresh)),S}validateAndNormalizeCompleteParams(e){const t={...e};if(!t.token||"string"!=typeof(null==t?void 0:t.token))throw new Error("Invalid token");if(!(null==t?void 0:t.payment)||"string"!=typeof(null==t?void 0:t.payment))throw new Error("Invalid payment token");return void 0!==t.refresh&&(t.refresh=Boolean(t.refresh)),t}validateCustomer(e){if(e&&"object"==typeof e){const{firstName:t,lastName:i,phone:r,email:n}=e;if(t&&"string"!=typeof t)throw new Error("Invalid customer first name");if(i&&"string"!=typeof i)throw new Error("Invalid customer last name");if(r&&"string"!=typeof r)throw new Error("Invalid customer phone");if(n&&"string"!=typeof n)throw new Error("Invalid customer email");"hasAgeVerify"in e&&(e.hasAgeVerify=Boolean(e.hasAgeVerify))}}validateBillingAddress(e){var t;if(!e)return{};if("object"!=typeof e||null===e)throw new Error("Invalid address: must be an object if provided");const i={...e};["one","two","city","state","zip","country","firstName","lastName","email","phone","company"].forEach(e=>{if(e in i&&"string"!=typeof i[e])throw new Error(`Invalid billing address ${e}: must be a string if provided`)});return"US"===(null!==(t=i.country)&&void 0!==t?t:"US").toUpperCase()&&"state"in i&&i.state&&(i.state=this.locationHelperService.normalizeState(i.state)),i}validateGiftCards(e){if(!e||0===e.length)return[];if(!Array.isArray(e))throw new Error("Invalid gift cards: must be a string array if provided");const t=[...e];return t.forEach(e=>{if("string"!=typeof e)throw new Error("Invalid gift cards: must be a string array if provided")}),t}validateGiftOptions(e){if(void 0!==e&&"object"!=typeof e)throw new Error("Invalid giftOptions: must be an object if provided");if(e){if("message"in e&&"string"!=typeof e.message)throw new Error("Invalid gift message: must be a string if provided");if("message"in e&&"string"==typeof e.message&&e.message.length>500)throw new Error("Invalid gift message: Gift message cannot exceed 500 characters");if("recipient"in e){if("object"!=typeof e.recipient)throw new Error("Invalid gift recipient: must be an object if provided");const{name:t,phone:i,email:r}=e.recipient;if("name"in e.recipient&&"string"!=typeof t)throw new Error("Invalid gift recipient name: must be a string if provided");if("phone"in e.recipient&&"string"!=typeof i)throw new Error("Invalid gift recipient phone: must be a string if provided");if("email"in e.recipient&&"string"!=typeof r)throw new Error("Invalid gift recipient email: must be a string if provided")}}}formatPhoneNumber(e){if(!e)return null;const t=e.replace(/[\s().\-_]/g,"").replace(/[^\d+]/g,"");if(t.startsWith("+1")){const e=t.substring(2);if(10===e.length)return`(${e.substring(0,3)}) ${e.substring(3,6)}-${e.substring(6)}`}if(11===t.length&&t.startsWith("1")){const e=t.substring(1);return`(${e.substring(0,3)}) ${e.substring(3,6)}-${e.substring(6)}`}return 10===t.length?`(${t.substring(0,3)}) ${t.substring(3,6)}-${t.substring(6)}`:t.startsWith("+")?t:e}validateMarketingPreferences(e){if(void 0!==e&&"object"!=typeof e)throw new Error("Invalid marketingPreferences: must be an object if provided");e&&("canEmail"in e&&(e.canEmail=Boolean(e.canEmail)),"canSms"in e&&(e.canSms=Boolean(e.canSms)))}validateDeliveryTips(e){if(!Array.isArray(e))throw new Error("Invalid deliveryTips");e.forEach(e=>{if(!e.fulfillmentId||"string"!=typeof e.fulfillmentId)throw new Error("Invalid fulfillmentId in deliveryTip");if("number"!=typeof e.tip||e.tip<0)throw new Error("Invalid tip amount in deliveryTip")})}}class F{validateAndNormalizeLocation(e){if(!e)return;if("object"!=typeof e)throw new Error("Location must be a valid object");const{coords:t,address:i}=e;t?this.validateCoordinates(t):i&&this.validateAndNormalizeAddress(i)}validateCoordinates(e){if("number"!=typeof e.lat||"number"!=typeof e.long)throw new Error("Coordinates must be valid numbers");if(e.lat<-90||e.lat>90||e.long<-180||e.long>180)throw new Error("Coordinates are out of valid range")}validateAndNormalizeAddress(e){var t;if("US"===(null!==(t=null==e?void 0:e.country)&&void 0!==t?t:"US").toUpperCase()){if(!(null==e?void 0:e.state)||"string"!=typeof(null==e?void 0:e.state))throw new Error("State is required and must be a string");e.state=this.normalizeState(e.state)}else if((null==e?void 0:e.state)&&"string"!=typeof e.state)throw new Error("State must be a string if provided");if(!e.city||"string"!=typeof e.city)throw new Error("City is required and must be a string");if(!e.zip||"string"!=typeof e.zip)throw new Error("ZIP code is required and must be a string")}normalizeState(e){const t=e.toUpperCase();if(n[t])return n[t];const i=e.toUpperCase();if(s[i])return s[i];throw new Error(`Invalid state: ${e}`)}}class K{constructor(e){this.accessToken=null,this.tokenExpiration=null,this.isAuthenticating=!1,this.userID=e.userID,this.password=e.password,this.baseURL=e.baseURL,this.httpClient=M()}getUniqueKey(){return`${this.userID}_${this.password}_${this.baseURL}`}async authenticate(){var e,t;if(this.isAuthenticating)await new Promise(e=>{const t=()=>{this.isAuthenticating?setTimeout(t,100):e(void 0)};t()});else{this.isAuthenticating=!0;try{const i=await this.requestWithoutAuth("/order-authentication",{method:"GET"});this.accessToken=null===(e=null==i?void 0:i.data)||void 0===e?void 0:e.token,this.tokenExpiration=Date.now()+1e3*(null===(t=null==i?void 0:i.data)||void 0===t?void 0:t.exp)}catch(e){throw console.error("Order Authentication failed:",e),new Error("Failed to authenticate with LiquidCommerce Order API")}finally{this.isAuthenticating=!1}}}async requestWithoutAuth(e,t){const i=new URL(`api${e}`,this.baseURL),r={"Content-Type":"application/json",Authorization:`Basic ${btoa(`${this.userID}:${this.password}`)}`,...t.headers},n={method:t.method,headers:r,body:t.body?JSON.stringify(t.body):void 0},s=await this.httpClient(i.toString(),n);if(!s.ok)throw new Error(`HTTP error! status: ${s.status}`);return s.json()}isTokenExpired(){return!this.tokenExpiration||Date.now()>=this.tokenExpiration}async request(e,t){try{this.accessToken&&!this.isTokenExpired()||await this.authenticate();const i=new URL(`api${e}`,this.baseURL),r={"Content-Type":"application/json","X-LIQUID-API-SDK":"true","X-LIQUID-SDK-VERSION":"1.12.1",Authorization:`Bearer ${this.accessToken}`,...t.headers},n={method:t.method,headers:r,body:t.body?JSON.stringify(t.body):void 0},s=await this.httpClient(i.toString(),n);let a;try{a=await s.json()}catch(e){a={message:await s.text().catch(()=>`HTTP error! status: ${s.status}`)||e}}if(!s.ok){throw{...a,status:s.status,message:(null==a?void 0:a.message)||`HTTP error! status: ${s.status}`}}return a}catch(e){throw e}}async get(e,t){return this.request(e,{method:"GET",headers:t})}async post(e,t,i){return this.request(e,{method:"POST",body:t,headers:i})}async put(e,t,i){return this.request(e,{method:"PUT",body:t,headers:i})}async delete(e,t){return this.request(e,{method:"DELETE",headers:t})}}class V{constructor(e){this.client=e}async autocomplete(e,t){try{return await this.client.post("/address/autocomplete",{...e,key:t})}catch(e){throw console.error("Address autocomplete request failed:",e),e}}async details(e,t){try{return await this.client.post("/address/details",{...e,key:t})}catch(e){throw console.error("Address details request failed:",e),e}}}class Y{constructor(e,t){this.client=e,this.cartHelperService=t,this.servicePath="/cart/update"}async get(e,t){try{let i=this.cartHelperService.validateId(e);if(i=""!==i&&i,i){const e={id:i};return"boolean"==typeof t&&(e.refresh=t),await this.client.post(this.servicePath,e)}return await this.client.post(this.servicePath)}catch(e){throw console.error("Cart update request failed:",e),e}}async update(e){try{const t=this.cartHelperService.validateAndNormalizeParams(e);return await this.client.post(this.servicePath,t)}catch(e){throw console.error("Cart update request failed:",e),e}}}class Q{constructor(e,t){this.client=e,this.catalogHelperService=t,this.servicePath="/catalog/"}async availability(e){try{const t=this.catalogHelperService.validateAndNormalizeParams(e);return await this.client.post(`${this.servicePath}availability`,t)}catch(e){throw console.error("Catalog availability request failed:",e),e}}async search(e){try{const t=this.catalogHelperService.validateAndNormalizeSearchParams(e);if(null==t?void 0:t.error)throw new Error(null==t?void 0:t.error);return await this.client.post(`${this.servicePath}search`,t)}catch(e){throw console.error("Catalog search request failed:",e),e}}}class k{constructor(e,t){this.client=e,this.checkoutHelperService=t,this.servicePath="/checkout"}async prepare(e){try{const t=this.checkoutHelperService.validateAndNormalizePrepareParams(e);return await this.client.post(`${this.servicePath}/prepare`,t)}catch(e){throw console.error("Checkout prepare request failed:",e),e}}async complete(e){try{const t=this.checkoutHelperService.validateAndNormalizeCompleteParams(e);return await this.client.post(`${this.servicePath}/complete`,t)}catch(e){throw console.error("Checkout complete request failed:",e),e}}}class ${constructor(e){this.client=e}async fetch(e){try{return await this.client.get(`/orders/${e}`)}catch(e){throw console.error("Failed to fetch order:",e),e}}async list(e){try{const t=new URLSearchParams;if(!e.startDate||!e.endDate)throw new Error("startDate and endDate are required parameters");return t.append("startDate",e.startDate),t.append("endDate",e.endDate),"number"==typeof e.page&&t.append("page",e.page.toString()),"number"==typeof e.limit&&t.append("limit",e.limit.toString()),"string"==typeof e.customerEmail&&t.append("customerEmail",e.customerEmail),await this.client.get(`/orders?${t.toString()}`)}catch(e){throw console.error("Failed to list orders:",e),e}}}class q{constructor(e){this.paymentProvider=e,this.collapse=()=>this.paymentProvider.collapse(),this.unmount=()=>this.paymentProvider.unmount(),this.destroy=()=>this.paymentProvider.destroy()}async mount(e){try{await this.paymentProvider.mount(e)}catch(e){throw console.error("Failed to inject payment element:",e),e}}async generateToken(){return this.paymentProvider.generateToken()}subscribe(e,t){this.paymentProvider.subscribe(e,t)}unsubscribe(e,t){this.paymentProvider.unsubscribe(e,t)}}class x{constructor(e,t){this.client=e,this.paymentSessionHelperService=t,this.servicePath="/users",this.env=e.env}async createOrUpdateSession(e){try{if(!(null==e?void 0:e.id)&&!(null==e?void 0:e.email))throw new Error("Either id or email must be provided");return await this.client.post(`${this.servicePath}/session`,e)}catch(e){throw console.error("User session creation/update request failed:",e),e}}async createPaymentSession(e){try{const t=await this.client.post(`${this.servicePath}/payment-session`,e),i=this.paymentSessionHelperService.rcd(null==t?void 0:t.data,this.env);return{...t,data:i}}catch(e){throw console.error("User session creation/update request failed:",e),e}}async finalizePaymentSession(e){try{if(!e)throw new Error("Token is required");const t=await this.client.get(`${this.servicePath}/finalize-payment-session/${e}`),i=this.paymentSessionHelperService.dd(null==t?void 0:t.data,e);return{...t,data:i}}catch(e){throw console.error("User session creation/update request failed:",e),e}}async fetchUser(e){try{if(!e)throw new Error("Id is required");return await this.client.get(`${this.servicePath}/fetch/${e}`)}catch(e){throw console.error("User session creation/update request failed:",e),e}}async purge(e){try{if(!e)throw new Error("User identifier (ID or email) must be provided");