1 2<!doctype html> 3 <html class="no-js"> 4 <head> 5 <meta charset="utf-8"> 6 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 7 <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1"> 8 <meta name="apple-itunes-app" content="app-id=1576832504"> 9 <link rel="icon" type="image/x-icon" href="https://outerbloom.com/cdn/shop/t/138/assets/favicon.png?v=133675914608380317171757918150"> 10 <!-- Title and description --> 11 <title>BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026</title> 12 <meta name="description" content="BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026"> 13 <meta name="keywords" content="betatogel, betatogel macau, betatogel resmi, toto macau, togel macau, data toto macau, bandar toto macau" /> 14 <link rel="canonical" href="https://stopgreenwash.org/criteria/"> 15 <link rel="amphtml" href="https://situsbetatogel.b-cdn.net/stopgreenwash/"/> 16 <!-- /snippets/social-meta-tags.liquid --> 17 <meta property="og:type" content="BETATOGEL"> 18 <meta property="og:title" content="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026"> 19 <meta property="og:image" content="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg"> 20 <meta property="og:image:secure_url" content="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg"> 21 <meta property="og:image" content="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg"> 22 <meta property="og:image:secure_url" content="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg"> 23 <meta property="og:image" content="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg"> 24 <meta property="og:image:secure_url" content="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg"> 25 <meta property="og:description" content="BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026"> 26 <meta property="og:price:amount" content="10,000-,"> 27 <meta property="og:price:currency" content="IDR"> 28 <meta property="og:url" content="https://stopgreenwash.org/criteria/"> 29 <meta property="og:site_name" content="BETATOGEL"> 30 <meta name="twitter:site" content="@BETATOGEL"> 31 <meta name="twitter:card" content="summary"> 32 <meta name="twitter:title" content="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026"> 33 <meta name="twitter:description" content="BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026"> 34 <meta name="twitter:image" content="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg"> 35 <meta name="twitter:image:width" content="600"> 36 <meta name="twitter:image:height" content="600"> 37 <link rel="shortcut icon" href="https://outerbloom.com/cdn/shop/t/138/assets/favicon.png?v=133675914608380317171757918150" type="image/png"> 38 <meta name="theme-color" content="#ffffff"> 39 <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700&family=Poppins&display=swap" rel="stylesheet"> 40 <link href="//outerbloom.com/cdn/shop/t/138/assets/custom-styles.css?v=94643080714485117621752652418" rel="stylesheet" type="text/css" media="all" /> 41 <link rel="stylesheet" href="https://use.fontawesome.com/releases/v6.4.2/css/all.css" type="text/css"> 42 <link rel="stylesheet" href="//outerbloom.com/cdn/shop/t/138/assets/wishlist-styles.css?v=166819525406734116961754385201">
42<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js" defer></script>
42 43
43<script 44 src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js" 45 integrity="sha512-57oZ/vW8ANMjR/KQ6Be9v/+/h6bq9/l3f0Oc7vn6qMqyhvPd1cvKBRWWpzu0QoneImqr2SkmO4MSqU+RpHom3Q==" 46 crossorigin="anonymous" 47 referrerpolicy="no-referrer" 48 defer 49 ></script>
49 50
50<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js" async="async"></script>
50 51
51<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js" defer></script>
51<!-- Facebook Pixel Code --> 52
52<script>
vendor: 471 bytes, lines 52-61
52 53 !function(f,b,e,v,n,t,s) 54 {if(f.fbq)return;n=f.fbq=function(){n.callMethod? 55 n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 56 if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 57 n.queue=[];t=b.createElement(e);t.async=!0; 58 t.src=v;s=b.getElementsByTagName(e)[0]; 59 s.parentNode.insertBefore(t,s)}(window, document,'script', 60 'https://connect.facebook.net/en_US/fbevents.js'); 61 fbq('init', '
61165971065669324
vendor: 44 bytes, lines 61-63
61'); 62 fbq('track', 'PageView'); 63
63</script>
63 64 <noscript 65 ><img 66 height="1" 67 width="1" 68 style="display:none" 69 src="https://www.facebook.com/tr?id=165971065669324&ev=PageView&noscript=1" 70 ></noscript> 71 <!-- End Facebook Pixel Code --> 72 73 <!-- Google G4 Script - Disabled by developer (William) to prioritize Mobile App tracking --> 74 <!-- 75 Global site tag (gtag.js) - Google Analytics --
vendor: 76 bytes, lines 75-76
75 76 <script async src="https://www.googletagmanager.com/gtag/js?id=
76G-X26HYP4083
vendor: 24 bytes, lines 76-77
76"></script> 77
77<script> 78
vendor: 174 bytes, lines 78-82
78window.dataLayer = window.dataLayer || []; 79 function gtag(){dataLayer.push(arguments);} 80 gtag('js', new Date()); 81 82 gtag('config', '
82G-X26HYP4083
vendor: 16 bytes, lines 82-83
82'); 83
83</script>
83 84 Global site tag (gtag.js) - Google Analytics 85 --> 86 87 <div class="button-login-daftar"> 88 <a class="login" href="https://situsbetatogel.b-cdn.net/stopgreenwash/" rel="nofollow noreferrer" style="color: white;"> 89 LOGIN 90 </a> 91 <a class="register" href="https://situsbetatogel.b-cdn.net/stopgreenwash/" rel="nofollow noreferrer" style="color: white;"> 92 DAFTAR 93 </a> 94 </div> 95 96
96<script src="//cdnjs.cloudflare.com/ajax/libs/vissense/0.9.0/vissense.js" defer></script>
96 97 98 <!-- Bing UET --> 99
99<script> 100 (function(w,d,t,r,u) 101 { 102 var f,n,i; 103 w[u]=w[u]||[],f=function() 104 { 105 var o={ti:"343051754", tm:"shpfy_ui", enableAutoSpaTracking: true}; 106 o.q=w[u],w[u]=new UET(o),w[u].push("pageLoad") 107 }, 108 n=d.createElement(t),n.src=r,n.async=1,n.onload=n.onreadystatechange=function() 109 { 110 var s=this.readyState; 111 s&&s!=="loaded"&&s!=="complete"||(f(),n.onload=n.onreadystatechange=null) 112 }, 113 i=d.getElementsByTagName(t)[0],i.parentNode.insertBefore(n,i) 114 }) 115 (window,document,"script","//bat.bing.com/bat.js","uetq"); 116 </script>
116 117
117<script> 118 window.uetq = window.uetq || []; 119 window.uetq.push('event', '', {"revenue_value":0,"currency":"IDR"}); 120 </script>
120 121 <!-- End Bing UET --> 122 123 <!-- Microsoft Clarity --> 124
124<script type="text/javascript"> 125 (function(c,l,a,r,i,t,y){ 126 c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; 127 t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i; 128 y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y); 129 })(window, document, "clarity", "script", "h7rbxqry9k"); 130 </script>
130 131 <!-- End Microsoft Clarity --> 132 133 134 <link href="//outerbloom.com/cdn/shop/t/138/assets/combine.min.css?v=111340648424012527321754385205" rel="stylesheet" type="text/css" media="all" /> 135 <link href="//outerbloom.com/cdn/shop/t/138/assets/font-awesome.css?v=132324219581463622051752652421" rel="stylesheet" type="text/css" media="all" /> 136 <link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/base/jquery-ui.min.css"> 137
137<script src="//code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
137 138
138<script src="//outerbloom.com/cdn/shop/t/138/assets/combine.js?v=140218079523075729301752652421" type="text/javascript"></script>
138 139
139<script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
139 140
140<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
140 141 <meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15896833/digital_wallets/dialog"> 142 <link rel="alternate" type="application/json+oembed" href="https://stopgreenwash.org/criteria/.oembed"> 143
143<script async="async" src="/checkouts/internal/preloads.js?locale=en-ID"></script>
143 144
144<script id="shopify-features" type="application/json">{"accessToken":"d2e176e59f6658d5056234d6249b3ab4","betas":["rich-media-storefront-analytics"],"domain":"outerbloom.com","predictiveSearch":true,"shopId":15896833,"locale":"en"}</script>
144 145
145<script>var Shopify = Shopify || {}; 146 Shopify.shop = "outerbloom1.myshopify.com"; 147 Shopify.locale = "en"; 148 Shopify.currency = {"active":"IDR","rate":"1.0"}; 149 Shopify.country = "ID"; 150 Shopify.theme = {"name":"web-outerbloom-shopify\/main","id":153139282135,"schema_name":null,"schema_version":null,"theme_store_id":null,"role":"main"}; 151 Shopify.theme.handle = "null"; 152 Shopify.theme.style = {"id":null,"handle":null}; 153 Shopify.cdnHost = "outerbloom.com/cdn"; 154 Shopify.routes = Shopify.routes || {}; 155 Shopify.routes.root = "/";</script>
155 156
156<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
156 157
157<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
157 158
158<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
158 159
159<script defer="defer" async="async" src="//outerbloom.com/cdn/shopifycloud/shop-js/client.js" onload="window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 160 "></script>
160 161
161<script>(function() { 162 var isLoaded = false; 163 function asyncLoad() { 164 if (isLoaded) return; 165 isLoaded = true; 166 var urls = ["https:\/\/e9e1-180-254-64-204.ngrok.io\/public\/scripts\/shopifyPageScript.js?shop=outerbloom1.myshopify.com","https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/3.5.1\/jquery.min.js?shop=outerbloom1.myshopify.com","https:\/\/14e1-180-254-64-204.ngrok.io\/public\/scripts\/shopifyPageScript.js?shop=outerbloom1.myshopify.com","https:\/\/6403-180-254-64-204.ngrok.io\/public\/scripts\/shopify-page-script.js?shop=outerbloom1.myshopify.com","https:\/\/googlesignintest.loca.lt\/public\/scripts\/shopify-page-script.js?shop=outerbloom1.myshopify.com","https:\/\/api-na1.hubapi.com\/scriptloader\/v1\/6800477.js?shop=outerbloom1.myshopify.com"]; 167 for (var i = 0; i < urls.length; i++) { 168 var s = document.createElement('script'); 169 s.type = 'text/javascript'; 170 s.async = true; 171 s.src = urls[i]; 172 var x = document.getElementsByTagName('script')[0]; 173 x.parentNode.insertBefore(s, x); 174 } 175 }; 176 if(window.attachEvent) { 177 window.attachEvent('onload', asyncLoad); 178 } else { 179 window.addEventListener('load', asyncLoad, false); 180 } 181 })();</script>
181 182
182<script id="__st">var __st={"a":15896833,"offset":25200,"reqid":"78149bf2-9ab6-43c0-b2ce-821afbfe5bd0-1759566675","pageurl":"outerbloom.com\/products\/blossom-shine","u":"381e6a1da038","p":"product","rtyp":"product","rid":8144957800663};</script>
182 183
183<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
183 184
184<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.2.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!1,!0)}();</script>
184 185
185<script integrity="sha256-52AcMU7V7pcBOXWImdc/TAGTFKeNjmkeM1Pvks/DTgc=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//outerbloom.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-81c60534.js" crossorigin="anonymous"></script>
185 186
186<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://outerbloom.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 187 </script>
187 188
188<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 189 function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent); 190 </script>
190 191
191<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}})); 192 </script>
192 193 194
194<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
194 195 <!-- /snippets/oldIE-js.liquid --> 196 197 198 <!--[if lt IE 9]> 199
199<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js" type="text/javascript"></script>
199 200
200<script src="//outerbloom.com/cdn/shop/t/138/assets/respond.min.js?v=52248677837542619231752652418" type="text/javascript"></script>
200 201 <link href="//outerbloom.com/cdn/shop/t/138/assets/respond-proxy.html" id="respond-proxy" rel="respond-proxy" /> 202 <link href="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" id="respond-redirect" rel="respond-redirect" /> 203
203<script src="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" type="text/javascript"></script>
203 204 <![endif]--> 205 206 207 208 209 210 <link href="https://cdn.shopify.com/extensions/5c1bf460-65bd-4bca-82d0-995a5814b48d/bitlogin-social-login-135/assets/app.css" rel="stylesheet" type="text/css" media="all"> 211 <link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch"> 212
212<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 15896833,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "product"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
212 213
213<script id="web-pixels-manager-setup">(function e(e,d,r,n,o){if(void 0===o&&(o={}),!Boolean(null===(a=null===(i=window.Shopify)||void 0===i?void 0:i.analytics)||void 0===a?void 0:a.replayQueue)){var i,a;window.Shopify=window.Shopify||{};var t=window.Shopify;t.analytics=t.analytics||{};var s=t.analytics;s.replayQueue=[],s.publish=function(e,d,r){return s.replayQueue.push([e,d,r]),!0};try{self.performance.mark("wpm:start")}catch(e){}var l=function(){var e={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(13[5-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(13[5-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/},d=e.modern,r=e.legacy,n=navigator.userAgent;return n.match(d)?"modern":n.match(r)?"legacy":"unknown"}(),u="modern"===l?"modern":"legacy",c=(null!=n?n:{modern:"",legacy:""})[u],f=function(e){return[e.baseUrl,"/wpm","/b",e.hashVersion,"modern"===e.buildTarget?"m":"l",".js"].join("")}({baseUrl:d,hashVersion:r,buildTarget:u}),m=function(e){var d=e.version,r=e.bundleTarget,n=e.surface,o=e.pageUrl,i=e.monorailEndpoint;return{emit:function(e){var a=e.status,t=e.errorMsg,s=(new Date).getTime(),l=JSON.stringify({metadata:{event_sent_at_ms:s},events:[{schema_id:"web_pixels_manager_load/3.1",payload:{version:d,bundle_target:r,page_url:o,status:a,surface:n,error_msg:t},metadata:{event_created_at_ms:s}}]});if(!i)return console&&console.warn&&console.warn("[Web Pixels Manager] No Monorail endpoint provided, skipping logging."),!1;try{return self.navigator.sendBeacon.bind(self.navigator)(i,l)}catch(e){}var u=new XMLHttpRequest;try{return u.open("POST",i,!0),u.setRequestHeader("Content-Type","text/plain"),u.send(l),!0}catch(e){return console&&console.warn&&console.warn("[Web Pixels Manager] Got an unhandled error while logging to Monorail."),!1}}}}({version:r,bundleTarget:l,surface:e.surface,pageUrl:self.location.href,monorailEndpoint:e.monorailEndpoint});try{o.browserTarget=l,function(e){var d=e.src,r=e.async,n=void 0===r||r,o=e.onload,i=e.onerror,a=e.sri,t=e.scriptDataAttributes,s=void 0===t?{}:t,l=document.createElement("script"),u=document.querySelector("head"),c=document.querySelector("body");if(l.async=n,l.src=d,a&&(l.integrity=a,l.crossOrigin="anonymous"),s)for(var f in s)if(Object.prototype.hasOwnProperty.call(s,f))try{l.dataset[f]=s[f]}catch(e){}if(o&&l.addEventListener("load",o),i&&l.addEventListener("error",i),u)u.appendChild(l);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(l)}}({src:f,async:!0,onload:function(){if(!function(){var e,d;return Boolean(null===(d=null===(e=window.Shopify)||void 0===e?void 0:e.analytics)||void 0===d?void 0:d.initialized)}()){var d=window.webPixelsManager.init(e)||void 0;if(d){var r=window.Shopify.analytics;r.replayQueue.forEach((function(e){var r=e[0],n=e[1],o=e[2];d.publishCustomEvent(r,n,o)})),r.replayQueue=[],r.publish=d.publishCustomEvent,r.visitor=d.visitor,r.initialized=!0}}},onerror:function(){return m.emit({status:"failed",errorMsg:"".concat(f," has failed to load")})},sri:function(e){var d=/^sha384-[A-Za-z0-9+/=]+$/;return"string"==typeof e&&d.test(e)}(c)?c:"",scriptDataAttributes:o}),m.emit({status:"loading"})}catch(e){m.emit({status:"failed",errorMsg:(null==e?void 0:e.message)||"Unknown error"})}}})({shopId: 15896833,storefrontBaseUrl: "https://outerbloom.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://monorail-edge.shopifysvc.com/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: [],webPixelsConfigList: [{"id":"870383831","configuration":"{\"accountID\":\"outerbloom1\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"162380e6ffd3e5a2854f1aabf54537bb","type":"APP","apiClientId":32196493313,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"824574167","configuration":"{\"shop\":\"outerbloom1.myshopify.com\", \"backend\": \"api.bitbybit.studio\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"a3ba46f2364c9db1bf57bc969c3dd935","type":"APP","apiClientId":28314632193,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"521994455","configuration":"{\"config\":\"{\\\"pixel_id\\\":\\\"G-X26HYP4083\\\",\\\"target_country\\\":\\\"ID\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/YjjSCKiog9gZEMHe74Yp\\\"]},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/RHfSCK6og9gZEMHe74Yp\\\"]},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/dMv0CKWog9gZEMHe74Yp\\\",\\\"MC-HY9J2ZJTNZ\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/Y2DbCJ-og9gZEMHe74Yp\\\",\\\"MC-HY9J2ZJTNZ\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/xwQ2CKKog9gZEMHe74Yp\\\",\\\"MC-HY9J2ZJTNZ\\\"]},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/i9yRCLGog9gZEMHe74Yp\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/T9poCKuog9gZEMHe74Yp\\\"]}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"b2a88bafab3e21179ed38636efcd8a93","type":"APP","apiClientId":1780363,"privacyPurposes":[]},{"id":"236060887","configuration":"{\"pixel_id\":\"165971065669324\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"6d8c3ef0426b37b2a9b717daeb719f58","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"62947543","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["MARKETING"],"name":"Meta pixel (migrated)"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0450","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0450","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Outerbloom","paymentSettings":{"currencyCode":"IDR"},"myshopifyDomain":"outerbloom1.myshopify.com","countryCode":"ID","storefrontUrl":"https:\/\/outerbloom.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[{"price":{"amount":835000.0,"currencyCode":"IDR"},"product":{"title":"BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026","vendor":"Outerbloom Florist","id":"8144957800663","untranslatedTitle":"BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026","url":"\/products\/blossom-shine","type":"BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 202
2136"},"id":"44083045826775","image":{"src":"\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426"},"sku":"OBVSTF1086","title":"Default Title","untranslatedTitle":"Default Title"}],"purchasingCompany":null},},"https://outerbloom.com/cdn","4f0c5c77w64a73806p128ba08bma5b58f2f",{"modern":"","legacy":""},{"shopId":"15896833","storefrontBaseUrl":"https:\/\/outerbloom.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[]","isMerchantRequest":"false","hashVersion":"4f0c5c77w64a73806p128ba08bma5b58f2f","publish":"custom","events":"[[\"page_viewed\",{}],[\"product_viewed\",{\"productVariant\":{\"price\":{\"amount\":835000.0,\"currencyCode\":\"IDR\"},\"product\":{\"title\":\"BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026\",\"vendor\":\"Outerbloom Florist\",\"id\":\"8144957800663\",\"untranslatedTitle\":\"BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026\",\"url\":\"\/products\/blossom-shine\",\"type\":\"BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026\"},\"id\":\"44083045826775\",\"image\":{\"src\":\"\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426\"},\"sku\":\"OBVSTF1086\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"}}]]"});</script>
213<script> 214 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 215 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 216 window.ShopifyAnalytics.meta.currency = 'IDR'; 217 var meta = {"product":{"id":8144957800663,"gid":"gid:\/\/shopify\/Product\/8144957800663","vendor":"Outerbloom Florist","type":"BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026","variants":[{"id":44083045826775,"price":1000000 218 ,"name":"BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026","public_title":null,"sku":"OBVSTF1086"}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":8144957800663}}; 219 for (var attr in meta) { 220 window.ShopifyAnalytics.meta[attr] = meta[attr]; 221 } 222 </script>
222 223
223<script class="analytics"> 224 (function () { 225 var customDocumentWrite = function(content) { 226 var jquery = null; 227 228 if (window.jQuery) { 229 jquery = window.jQuery; 230 } else if (window.Checkout && window.Checkout.$) { 231 jquery = window.Checkout.$; 232 } 233 234 if (jquery) { 235 jquery('body').append(content); 236 } 237 }; 238 239 var hasLoggedConversion = function(token) { 240 if (token) { 241 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 242 } 243 return false; 244 } 245 246 var setCookieIfConversion = function(token) { 247 if (token) { 248 var twoMonthsFromNow = new Date(Date.now()); 249 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 250 251 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 252 } 253 } 254 255 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 256 if (trekkie.integrations) { 257 return; 258 } 259 trekkie.methods = [ 260 'identify', 261 'page', 262 'ready', 263 'track', 264 'trackForm', 265 'trackLink' 266 ]; 267 trekkie.factory = function(method) { 268 return function() { 269 var args = Array.prototype.slice.call(arguments); 270 args.unshift(method); 271 trekkie.push(args); 272 return trekkie; 273 }; 274 }; 275 for (var i = 0; i < trekkie.methods.length; i++) { 276 var key = trekkie.methods[i]; 277 trekkie[key] = trekkie.factory(key); 278 } 279 trekkie.load = function(config) { 280 trekkie.config = config || {}; 281 trekkie.config.initialDocumentCookie = document.cookie; 282 var first = document.getElementsByTagName('script')[0]; 283 var script = document.createElement('script'); 284 script.type = 'text/javascript'; 285 script.onerror = function(e) { 286 var scriptFallback = document.createElement('script'); 287 scriptFallback.type = 'text/javascript'; 288 scriptFallback.onerror = function(error) { 289 var Monorail = { 290 produce: function produce(monorailDomain, schemaId, payload) { 291 var currentMs = new Date().getTime(); 292 var event = { 293 schema_id: schemaId, 294 payload: payload, 295 metadata: { 296 event_created_at_ms: currentMs, 297 event_sent_at_ms: currentMs 298 } 299 }; 300 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 301 }, 302 sendRequest: function sendRequest(endpointUrl, payload) { 303 // Try the sendBeacon API 304 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 305 var blobData = new window.Blob([payload], { 306 type: 'text/plain' 307 }); 308 309 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 310 return true; 311 } // sendBeacon was not successful 312 313 } // XHR beacon 314 315 var xhr = new XMLHttpRequest(); 316 317 try { 318 xhr.open('POST', endpointUrl); 319 xhr.setRequestHeader('Content-Type', 'text/plain'); 320 xhr.send(payload); 321 } catch (e) { 322 console.log(e); 323 } 324 325 return false; 326 }, 327 isIos12: function isIos12() { 328 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 329 } 330 }; 331 Monorail.produce('monorail-edge.shopifysvc.com', 332 'trekkie_storefront_load_errors/1.1', 333 {shop_id: 15896833, 334 theme_id: 153139282135, 335 app_name: "storefront", 336 context_url: window.location.href, 337 source_url: "//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js"}); 338 339 }; 340 scriptFallback.async = true; 341 scriptFallback.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js'; 342 first.parentNode.insertBefore(scriptFallback, first); 343 }; 344 script.async = true; 345 script.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js'; 346 first.parentNode.insertBefore(script, first); 347 }; 348 trekkie.load( 349 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":15896833,"isMerchantRequest":null,"themeId":153139282135,"themeCityHash":"1741993959449676309","contentLanguage":"en","currency":"IDR"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain"},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}} 350 ); 351 352 var loaded = false; 353 trekkie.ready(function() { 354 if (loaded) return; 355 loaded = true; 356 357 window.ShopifyAnalytics.lib = window.trekkie; 358 359 var originalDocumentWrite = document.write; 360 document.write = customDocumentWrite; 361 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 362 document.write = originalDocumentWrite; 363 364 window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":8144957800663,"shopifyEmitted":true}); 365 366 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 367 var token = match? match[1]: undefined; 368 if (!hasLoggedConversion(token)) {
369 setCookieIfConversion(token); 370 window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026","nonInteraction":true,"remote":false},undefined,undefined,{"shopifyEmitted":true}); 371 window.ShopifyAnalytics.lib.track("monorail:\/\/trekkie_storefront_viewed_product\/1.1",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026","nonInteraction":true,"remote":false,"referer":"https:\/\/outerbloom.com\/products\/blossom-shine"}); 372 } 373 }); 374 375 376 var eventsListenerScript = document.createElement('script'); 377 eventsListenerScript.async = true; 378 eventsListenerScript.src = "//outerbloom.com/cdn/shopifycloud/storefront/assets/shop_events_listener-abeef7a0.js"; 379 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 380 381 })();</script>
381 382
382<script> 383 if (!window.ga || (window.ga && typeof window.ga !== 'function')) { 384 window.ga = function ga() { 385 (window.ga.q = window.ga.q || []).push(arguments); 386 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 387 window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"}); 388 } 389 console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information."); 390 }; 391 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 392 window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"}); 393 } 394 } 395 </script>
395 396
396<script 397 defer 398 src="https://outerbloom.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-2.0.13.min.js" 399 data-application="storefront-renderer" 400 data-shop-id="15896833" 401 data-render-region="gcp-asia-southeast1" 402 data-page-type="product" 403 data-theme-instance-id="153139282135" 404 data-theme-name="" 405 data-theme-version="" 406 data-monorail-region="shop_domain" 407 data-resource-timing-sampling-rate="10" 408 data-shs="true" 409 data-shs-beacon="true" 410 data-shs-export-with-fetch="true" 411 data-shs-logs-sample-rate="1" 412 ></script>
412 413 414
414<script type="application/ld+json"> 415{ 416 "@context": "https://schema.org", 417 "@type": "Product", 418 "name": "BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026", 419 "image": "https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png", 420 "description": "BETATOGEL Live Toto Macau Hari Ini, Data Tercepat & Terlengkap dari Bandar Resmi!", 421 "brand": { 422 "@type": "Brand", 423 "name": "BETATOGEL" 424 }, 425 "sku": "BETATOGEL-2025-TRUSTED", 426 "mpn": "BANDAR TOTO MACAU", 427 "url": "https://stopgreenwash.org/criteria/", 428 "offers": { 429 "@type": "Offer", 430 "url": "https://stopgreenwash.org/criteria/", 431 "priceCurrency": "USD", 432 "price": "11", 433 "priceValidUntil": "2026-11-25", 434 "itemCondition": "https://schema.org/NewCondition", 435 "availability": "https://schema.org/InStock", 436 "seller": { 437 "@type": "Organization", 438 "name": "BETATOGEL" 439 } 440 }, 441 "aggregateRating": { 442 "@type": "AggregateRating", 443 "ratingValue": "5.0", 444 "reviewCount": 89426 445 }, 446 "review": [ 447 { 448 "@type": "Review", 449 "reviewRating": { 450 "@type": "Rating", 451 "ratingValue": "5", 452 "bestRating": "5" 453 }, 454 "author": { 455 "@type": "Person", 456 "name": "Bernadya Silalahi" 457 }, 458 "reviewBody": "BETATOGEL GACORRRR!!! benar-benar platform toto macau terbaik yang ngasih kita informasi yang lengkap jelas pula, jadi gacor tiap harinya gaes" 459 }, 460 { 461 "@type": "Review", 462 "reviewRating": { 463 "@type": "Rating", 464 "ratingValue": "5", 465 "bestRating": "5" 466 }, 467 "author": { 468 "@type": "Person", 469 "name": "Fernando Julius Siregar" 470 }, 471 "reviewBody": "BETATOGEL MANTAPP!! data toto macau nya akurat dan lengkap, update nya tepat waktu pula ye kan, semua info akurat gk sampai 1 menit dah keluar wede cepat depo akurat cuman di betatogel" 472 }, 473 { 474 "@type": "Review", 475 "reviewRating": { 476 "@type": "Rating", 477 "ratingValue": "5", 478 "bestRating": "5" 479 }, 480 "author": { 481 "@type": "Person", 482 "name": "Nadya Pitaloka Salim" 483 }, 484 "reviewBody": "Akses cepat, respon stabil, gangguan tidak pernah, kurang apa lagi website gacor satu ini? memang kalau mau main yang gacor-gacor aja cuman di BETATOGEL" 485 }, 486 { 487 "@type": "Review", 488 "reviewRating": { 489 "@type": "Rating", 490 "ratingValue": "5", 491 "bestRating": "5" 492 }, 493 "author": { 494 "@type": "Person", 495 "name": "Dita Syafitri" 496 }, 497 "reviewBody": "Selama menggunakan BETATOGEL, saya merasa aman. Sistemnya tertata dengan baik dan tidak membingungkan, cocok untuk pemain lama maupun pemula." 498 }, 499 { 500 "@type": "Review", 501 "reviewRating": { 502 "@type": "Rating", 503 "ratingValue": "5", 504 "bestRating": "5" 505 }, 506 "author": { 507 "@type": "Person", 508 "name": "Diva Vale" 509 }, 510 "reviewBody": "BETATOGEL memudahkan saya mencari informasi Toto Macau dan togel Macau dalam satu platform. Semua layanan terasa praktis dan mudah diakses." 511 } 512 ] 513} 514</script>
vendor: 2 bytes, line 514
514
515<script type="application/ld+json"> 516{ 517 "@context": "https://schema.org", 518 "@type": "BreadcrumbList", 519 "itemListElement": [ 520 { 521 "@type": "ListItem", 522 "position": 1, 523 "name": "BETATOGEL", 524 "item": "https://stopgreenwash.org/criteria/" 525 }, 526 { 527 "@type": "ListItem", 528 "position": 2, 529 "name": "BETATOGEL MACAU", 530 "item": "https://stopgreenwash.org/criteria/" 531 }, 532 { 533 "@type": "ListItem", 534 "position": 3, 535 "name": "BETATOGEL RESMI", 536 "item": "https://stopgreenwash.org/criteria/" 537 }, 538 { 539 "@type": "ListItem", 540 "position": 4, 541 "name": "TOTO MACAU", 542 "item": "https://stopgreenwash.org/criteria/" 543 }, 544 { 545 "@type": "ListItem", 546 "position": 5, 547 "name": "TOGEL MACAU", 548 "item": "https://stopgreenwash.org/criteria/" 549 }, 550 { 551 "@type": "ListItem", 552 "position": 6, 553 "name": "DATA TOTO MACAU", 554 "item": "https://stopgreenwash.org/criteria/" 555 }, 556 { 557 "@type": "ListItem", 558 "position": 7, 559 "name": "BANDAR TOTO MACAU", 560 "item": "https://stopgreenwash.org/criteria/" 561 }, 562 { 563 "@type": "ListItem", 564 "position": 8, 565 "name": "BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026", 566 "item": "https://stopgreenwash.org/criteria/" 567 } 568 ] 569} 570</script>
570 571
571<script type="application/ld+json"> 572 { 573 "@context": "https://schema.org", 574 "@type": "Organization", 575 "name": "BETATOGEL", 576 "url": "https://stopgreenwash.org/criteria/", 577 "logo": "https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png", 578 "sameAs": ["https://www.facebook.com/betatogel", "https://twitter.com/betatogel", "https://www.instagram.com/betatogel"], 579 "contactPoint": { 580 "@type": "ContactPoint", 581 "telephone": "+62-812-8874-1411", 582 "contactType": "customer support", 583 "areaServed": "ID", 584 "availableLanguage": ["Indonesian", "English"] 585 } 586 } 587 </script>
vendor: 2 bytes, line 587
587
588<script type="application/ld+json"> 589{ 590 "@context": "https://schema.org", 591 "@type": "FAQPage", 592 "mainEntity": [ 593 { 594 "@type": "Question", 595 "name": "BETATOGEL itu apa?", 596 "acceptedAnswer": { 597 "@type": "Answer", 598 "text": "BETATOGEL adalah platform bandar Toto Macau dan togel Macau resmi terpercaya yang menyediakan informasi lengkap, data terupdate, serta sistem akses yang stabil untuk memudahkan pengguna mendapatkan hasil dan informasi dengan aman." 599 } 600 }, 601 { 602 "@type": "Question", 603 "name": "Data toto macau di BETATOGEL resmi?", 604 "acceptedAnswer": { 605 "@type": "Answer", 606 "text": "Ya, BETATOGEL menyajikan data dan hasil Toto Macau yang diambil langsung dari sumber resmi terpercaya se-Asia dan diperbarui secara real-time sesuai jadwal." 607 } 608 }, 609 { 610 "@type": "Question", 611 "name": "keunggulan BETATOGEL apa?", 612 "acceptedAnswer": { 613 "@type": "Answer", 614 "text": "Keunggulan BETATOGEL terletak pada kelengkapan informasi, data yang akurat, sistem stabil, serta tampilan yang mudah diakses baik melalui desktop maupun perangkat mobile." 615 } 616 }, 617 { 618 "@type": "Question", 619 "name": "Apakah aman dan nyaman main di BETATOGEL?", 620 "acceptedAnswer": { 621 "@type": "Answer", 622 "text": "BETATOGEL dirancang dengan sistem yang stabil dan aman sehingga pengguna dapat mengakses layanan dengan nyaman tanpa gangguan, kapan saja dibutuhkan." 623 } 624 }, 625 { 626 "@type": "Question", 627 "name": "Siapa saja yang cocok main di BETATOGEL?", 628 "acceptedAnswer": { 629 "@type": "Answer", 630 "text": "BETATOGEL cocok untuk semua kalangan, baik pemain pemula maupun pemain berpengalaman yang membutuhkan informasi Toto Macau dan togel Macau secara lengkap dan terpercaya." 631 } 632 } 633 ] 634} 635</script>
635 636
637<script type="application/ld+json"> 638{ 639 "@context": "https://schema.org", 640 "@type": "HowTo", 641 "name": "Cara Mengakses Platform Toto Macau & Togel Macau Resmi di BETATOGEL", 642 "description": "Panduan langkah demi langkah untuk mengakses BETATOGEL sebagai platform bandar Toto Macau dan Togel Macau resmi terpercaya dengan data terupdate, sistem stabil, dan akses aman.", 643 "image": "https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg", 644 "step": [ 645 { 646 "@type": "HowToStep", 647 "name": "Akses Situs Resmi BETATOGEL", 648 "text": "Buka platform resmi BETATOGEL untuk mendapatkan layanan Toto Macau dan Togel Macau terpercaya dengan sistem yang stabil dan aman.", 649 "image": "https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 650 }, 651 { 652 "@type": "HowToStep", 653 "name": "Masuk ke Menu Toto Macau", 654 "text": "Pilih menu Toto Macau atau Togel Macau untuk melihat informasi lengkap dan layanan resmi yang tersedia di BETATOGEL.", 655 "image": "https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 656 }, 657 { 658 "@type": "HowToStep", 659 "name": "Cek Data & Informasi Terupdate", 660 "text": "Gunakan data Toto Macau terupdate yang disajikan BETATOGEL untuk melihat hasil, jadwal, dan informasi resmi dari sumber terpercaya.", 661 "image": "https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 662 }, 663 { 664 "@type": "HowToStep", 665 "name": "Nikmati Sistem Stabil & Aman", 666 "text": "BETATOGEL dirancang dengan sistem stabil sehingga pengguna dapat mengakses layanan dengan nyaman tanpa gangguan.", 667 "image": "https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 668 }, 669 { 670 "@type": "HowToStep", 671 "name": "Gunakan Platform Secara Nyaman", 672 "text": "Dengan tampilan ramah pengguna, BETATOGEL memudahkan siapa saja mengakses layanan Toto Macau dan Togel Macau kapan saja.", 673 "image": "https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 674 } 675 ], 676 "tool": [ 677 { 678 "@type": "HowToTool", 679 "name": "Perangkat smartphone atau komputer" 680 }, 681 { 682 "@type": "HowToTool", 683 "name": "Koneksi internet stabil" 684 } 685 ], 686 "totalTime": "PT5M", 687 "estimatedCost": { 688 "@type": "MonetaryAmount", 689 "currency": "IDR", 690 "value": "10000" 691 }, 692 "supply": { 693 "@type": "HowToSupply", 694 "name": "Saldo deposit minimal" 695 } 696} 697</script>
697 698 699 </head><body 700 data-template="product" 701 id="blossom-shine" 702 class="template-product template-product" 703 > 704 <!-- Google Tag Manager (noscript) -->
vendor: 93 bytes, lines 704-707
704 705 <noscript 706 ><iframe 707 src="https://www.googletagmanager.com/ns.html?id=
707GTM-MF9VVZX
vendor: 135 bytes, lines 707-713
707" 708 height="0" 709 width="0" 710 style="display:none;visibility:hidden" 711 ></iframe 712 ></noscript> 713
713<!-- End Google Tag Manager (noscript) --> 714 715 716 717 <div class="header-wrapper"> 718 719 <div id="shopify-section-NotifBar" class="shopify-section m-0"> 720 721 <style> 722 #notification {z-index: 99;width: 100%;transition: top 0.2s ease-in-out;} 723 #notification.promo-up {top: -48px!important;} 724 .promo-bg {width: 100%;padding: 6px 0;background: linear-gradient(to bottom, #0008ff 0%, #3600ff 50%, #004eff 100%);} 725 .notification__message p {margin: 0;color: #ffffff;font-size: 20px!important; font-weight: bold;} 726 .notification__message p a {text-decoration: underline;color: #ffffff;} 727 @media (max-width: 991px){ 728 .notification__message p {font-size: 14px!important;} 729 } 730 </style> 731 <input id="clearCookie" class="hide" type="button" value="Delete Cookie" /> 732 <div id="notification" class="promo-down promo-bg pl-2 pr-2" data-text="up-to-40-off-embrace-traditions-with-our-special-mooncake-hampers-pre-order-now"> 733 <div class="page-width notification__inner "> 734 735 736 <div class="notification__message text-center"> 737 <p>BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026</p> 738 </div> 739 </div> 740 </div> 741 742 743 744 745 </div> 746 <div id="shopify-section-new-header" class="shopify-section mb-0 mt-0"><link href="//outerbloom.com/cdn/shop/t/138/assets/section-new-header.css?v=159841885358852784021757475904" rel="stylesheet" type="text/css" media="all"/> 747 748 749 <header style="background: black;"> 750 <div class="container"> 751 <div class="header-container row justify-content-between pl-lg-0 pr-lg-0"> 752 <a href="https://stopgreenwash.org/criteria/"> 753 <img src="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" alt="LOGO BETATOGEL" style="width: 190px;"></a> 754 <link href="https://outerbloom.com/cdn/shop/t/138/assets/favicon.png?v=133675914608380317171757918150" rel="shortcut icon" type="image/x-icon" /> 755 <div id="menu-hamburger" class="d-lg-none"> 756 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="16" height="10" viewBox="0 0 16 10" fill="none"> 757 <path d="M15.5995 0.949976H0.400342C0.320777 0.949976 0.244471 0.918369 0.18821 0.862108C0.131949 0.805847 0.100342 0.729541 0.100342 0.649976C0.100342 0.570411 0.131949 0.494104 0.18821 0.437843C0.244471 0.381582 0.320777 0.349976 0.400342 0.349976H15.5995C15.6791 0.349976 15.7554 0.381582 15.8117 0.437843C15.8679 0.494104 15.8995 0.570411 15.8995 0.649976C15.8995 0.729541 15.8679 0.805847 15.8117 0.862108C15.7554 0.918369 15.6791 0.949976 15.5995 0.949976ZM15.5995 5.29998H0.400342C0.320777 5.29998 0.244471 5.26837 0.18821 5.21211C0.131949 5.15585 0.100342 5.07954 0.100342 4.99998C0.100342 4.92041 0.131949 4.8441 0.18821 4.78784C0.244471 4.73158 0.320777 4.69998 0.400342 4.69998H15.5995C15.6791 4.69998 15.7554 4.73158 15.8117 4.78784C15.8679 4.8441 15.8995 4.92041 15.8995 4.99998C15.8995 5.07954 15.8679 5.15585 15.8117 5.21211C15.7554 5.26837 15.6791 5.29998 15.5995 5.29998ZM15.5995 9.64998H0.400342C0.320777 9.64998 0.244471 9.61837 0.18821 9.56211C0.131949 9.50585 0.100342 9.42954 0.100342 9.34998C0.100342 9.27041 0.131949 9.1941 0.18821 9.13784C0.244471 9.08158 0.320777 9.04998 0.400342 9.04998H15.5995C15.6791 9.04998 15.7554 9.08158 15.8117 9.13784C15.8679 9.1941 15.8995 9.27041 15.8995 9.34998C15.8995 9.42954 15.8679 9.50585 15.8117 9.56211C15.7554 9.61837 15.6791 9.64998 15.5995 9.64998Z" fill="#ffffff"/> 758 </svg> 759 760 <a href="/"><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" viewBox="0 0 854 78.29"> 761 <g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><path d="M36.85.11a36.6,36.6,0,0,1,14.91,3,34.84,34.84,0,0,1,11.71,8.35,38.29,38.29,0,0,1,7.6,12.48,43.13,43.13,0,0,1,2.69,15.36,41.58,41.58,0,0,1-4.65,19.78,35.49,35.49,0,0,1-13,13.86A36.21,36.21,0,0,1,36.85,78,36.65,36.65,0,0,1,17.37,73,34.34,34.34,0,0,1,4.54,59.15,42.43,42.43,0,0,1,0,39.29,42.2,42.2,0,0,1,2.71,24.1a38.64,38.64,0,0,1,7.67-12.51A35.23,35.23,0,0,1,36.85.11Zm0,8.47a27.77,27.77,0,0,0-15,4,27.18,27.18,0,0,0-10,11A34.19,34.19,0,0,0,8.3,39.29a30.63,30.63,0,0,0,2.19,11.53,31.32,31.32,0,0,0,6.08,9.69,29,29,0,0,0,9.08,6.66,25.84,25.84,0,0,0,11.2,2.44,25.2,25.2,0,0,0,11.2-2.55,30.26,30.26,0,0,0,9.19-6.86,32.46,32.46,0,0,0,6.17-9.74,29.2,29.2,0,0,0,2.21-11.17,32.83,32.83,0,0,0-3.79-16A27.77,27.77,0,0,0,51.54,12.45,28.15,28.15,0,0,0,36.85,8.58Z"></path><path d="M97.26,4.76a4.13,4.13,0,0,1,1.19-2.88A3.59,3.59,0,0,1,101.14.61q4.36,0,4.42,4.15L106,42.33a44.26,44.26,0,0,0,2.27,14.5,19.83,19.83,0,0,0,7,9.73q4.78,3.5,12.53,3.49,8.58,0,13.72-3.49A19.72,19.72,0,0,0,148.94,57a38.56,38.56,0,0,0,2.33-13.83L151.16,4.7v0a4,4,0,0,1,1.19-2.93A3.87,3.87,0,0,1,155.25.5a4.06,4.06,0,0,1,3,1.22,3.93,3.93,0,0,1,1.24,2.93v0l.12,38.4q0,16.5-7.83,25.84T128,78.29q-10.18,0-16.88-4.56a27.51,27.51,0,0,1-10-12.67,50.37,50.37,0,0,1-3.43-18.68L97.26,4.81Z"></path><path d="M180.3,4.48a4.2,4.2,0,0,1,1.25-3,4,4,0,0,1,3-1.27H239.9a4.13,4.13,0,0,1,2.93,1.13,3.75,3.75,0,0,1,1.22,2.85,4.31,4.31,0,0,1-1.22,3,4,4,0,0,1-3,1.3H216.27V73.59A3.9,3.9,0,0,1,215,76.52a4.16,4.16,0,0,1-3,1.22,3.81,3.81,0,0,1-2.88-1.22A4.11,4.11,0,0,1,208,73.59V8.47H184.45a4.13,4.13,0,0,1-2.93-1.14A3.72,3.72,0,0,1,180.3,4.48Z"></path><path d="M264.73,4.48A4,4,0,0,1,266,1.55,4,4,0,0,1,268.88.33l51.84.06h.06a4,4,0,0,1,2.93,1.21,4,4,0,0,1,1.22,2.94,4,4,0,0,1-1.22,2.93,4,4,0,0,1-2.93,1.22h-.06L273,8.63l.05,26a1.48,1.48,0,0,0,.31,0l.25,0,42.55.28a4,4,0,0,1,3,1.19,4.38,4.38,0,0,1,1.19,3.24A3.58,3.58,0,0,1,319.06,42a4.14,4.14,0,0,1-2.87,1.16h-.06l-42.55-.28h-.44l.05,25.73,47.53,0h.06a4.15,4.15,0,0,1,0,8.3h-.06l-51.68,0a4.17,4.17,0,0,1-4.15-4.15Z"></path><path d="M405.09,74.2A3.73,3.73,0,0,1,403.9,77a3.48,3.48,0,0,1-2.4,1.16,4.15,4.15,0,0,1-2.05-.53c-.63-.35-1.09-.62-1.38-.8a40.76,40.76,0,0,1-8.5-8.13,51.74,51.74,0,0,1-6.11-10,33.41,33.41,0,0,0-4.9-8,14.69,14.69,0,0,0-6.17-4.26A28,28,0,0,0,363.26,45l-6.42,0,.06,28.38v.12a4.13,4.13,0,0,1-7.08,2.9,4.1,4.1,0,0,1-1.22-3l-.17-69.16a3.9,3.9,0,0,1,1.22-2.94A4.22,4.22,0,0,1,352.53.06L367.25,0h1.27A51.16,51.16,0,0,1,385,2.43a23.75,23.75,0,0,1,11.18,7.5q4,5.07,4,13a19.65,19.65,0,0,1-2.33,9.71,22.07,22.07,0,0,1-6.09,7,27,27,0,0,1-8.13,4.2,29.33,29.33,0,0,1,4.93,7.2c2.13,4.09,4.26,7.78,6.36,11.06a32.1,32.1,0,0,0,8.35,8.69A4,4,0,0,1,405.09,74.2ZM368.8,8.3H356.73l.11,29.16a3.59,3.59,0,0,1,.72-.06l11.35-.11q10.17-.1,16.65-3.45T392,22.63a11.53,11.53,0,0,0-3.16-8.55,17.83,17.83,0,0,0-8.44-4.45A47.47,47.47,0,0,0,368.8,8.3Z"></path><path d="M480.67,21.63a18.59,18.59,0,0,1-1.61,8.17,20.81,20.81,0,0,1-4.65,6.11A19.72,19.72,0,0,1,481.19,43a21.32,21.32,0,0,1,2.63,10.85q0,11.4-6.14,17.23T460,76.86l-28.39-.06a4.56,4.56,0,0,1-2.85-.91,3.07,3.07,0,0,1-1.19-2.58l-.11-68.94a4,4,0,0,1,1.22-2.85,4,4,0,0,1,2.77-1.3l19,0A48.24,48.24,0,0,1,466,2.46a23.21,23.21,0,0,1,10.76,7.06Q480.67,14.27,480.67,21.63ZM450.9,8.69l-15.11.05L435.85,33l23-.33c4.16-.08,7.46-.94,9.87-2.58s3.63-4.4,3.63-8.27a10.42,10.42,0,0,0-2.83-7.64A16.41,16.41,0,0,0,461.88,10,42.3,42.3,0,0,0,450.9,8.69Zm9,60.25q7.8,0,11.73-3.34t3.93-11.49q0-7.08-4.09-10.12t-11.51-3H459l-23.18.33,0,27.77Z"></path><path d="M511.64,76.75a4.17,4.17,0,0,1-4.15-4.15l-.17-68v0a4,4,0,0,1,1.22-2.94,4.16,4.16,0,0,1,5.87,0,4,4,0,0,1,1.21,2.94v0l.17,63.86h43.33a4.15,4.15,0,0,1,0,8.3Z"></path><path d="M619.75.11a36.6,36.6,0,0,1,14.91,3,34.7,34.7,0,0,1,11.7,8.35A38.14,38.14,0,0,1,654,23.93a43.12,43.12,0,0,1,2.68,15.36A41.69,41.69,0,0,1,652,59.07a35.49,35.49,0,0,1-13,13.86A36.21,36.21,0,0,1,619.75,78,36.63,36.63,0,0,1,600.27,73a34.44,34.44,0,0,1-12.84-13.8,42.54,42.54,0,0,1-4.53-19.86,42.2,42.2,0,0,1,2.71-15.19,38.78,38.78,0,0,1,7.66-12.51A35.23,35.23,0,0,1,619.75.11Zm0,8.47a27.74,27.74,0,0,0-15,4,27.18,27.18,0,0,0-10,11,34.19,34.19,0,0,0-3.54,15.75,30.62,30.62,0,0,0,2.18,11.53,31.53,31.53,0,0,0,6.09,9.69,29,29,0,0,0,9.07,6.66,25.91,25.91,0,0,0,11.21,2.44A25.2,25.2,0,0,0,631,67.06a30.26,30.26,0,0,0,9.19-6.86,32.66,32.66,0,0,0,6.17-9.74,29.39,29.39,0,0,0,2.21-11.17,32.83,32.83,0,0,0-3.79-16,27.64,27.64,0,0,0-25-14.66Z"></path><path d="M715.9.11a36.61,36.61,0,0,1,14.92,3,34.9,34.9,0,0,1,11.7,8.35,38.31,38.31,0,0,1,7.61,12.48,43.34,43.34,0,0,1,2.68,15.36,41.58,41.58,0,0,1-4.65,19.78,35.42,35.42,0,0,1-12.95,13.86A36.21,36.21,0,0,1,715.9,78,36.59,36.59,0,0,1,696.43,73a34.3,34.3,0,0,1-12.84-13.8,42.43,42.43,0,0,1-4.54-19.86,42.42,42.42,0,0,1,2.71-15.19,38.64,38.64,0,0,1,7.67-12.51A35.23,35.23,0,0,1,715.9.11Zm0,8.47a27.77,27.77,0,0,0-15,4,27.18,27.18,0,0,0-10,11,34.19,34.19,0,0,0-3.54,15.75,30.63,30.63,0,0,0,2.19,11.53,31.32,31.32,0,0,0,6.08,9.69,29,29,0,0,0,9.08,6.66,25.87,25.87,0,0,0,11.2,2.44,25.24,25.24,0,0,0,11.21-2.55,30.34,30.34,0,0,0,9.18-6.86,32.27,32.27,0,0,0,6.17-9.74,29.21,29.21,0,0,0,2.22-11.17,32.94,32.94,0,0,0-3.79-16,27.87,27.87,0,0,0-10.3-10.79A28.15,28.15,0,0,0,715.9,8.58Z"></path><path d="M776.31,4.32a4.15,4.15,0,0,1,1.17-2.85,3.86,3.86,0,0,1,5.14-.58,5.18,5.18,0,0,1,1.61,1.66L815.1,53.06,846.31,2.21a3.92,3.92,0,0,1,3.54-2,4,4,0,0,1,2.93,1.22A4,4,0,0,1,854,4.37V73.7a4.15,4.15,0,0,1-8.3,0V19.09l-27.06,44.1a4.14,4.14,0,0,1-7.08,0l-26.95-44V73.48a4.15,4.15,0,0,1-8.3,0Z"></path></g></g> 762 </svg> 763 </a> 764 </div> 765 766 <div class="header-icon-right header-icons col-3"> 767 <div class="icon icon-account-header d-none d-lg-block"> 768 <a href="https://stopgreenwash.org/criteria/"> 769 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="20" height="21" viewBox="0 0 20 21" fill="none"> 770 <path d="M19.015 19.8549C18.4842 18.3662 17.3117 17.0514 15.6819 16.1134C14.052 15.1754 12.0547 14.6667 10.0002 14.6667C7.94569 14.6667 5.94835 15.1754 4.31852 16.1134C2.68869 17.0514 1.51618 18.3662 0.985352 19.8549" stroke="#ffffff" stroke-linecap="round"/> 771 <path d="M10.0002 10C12.5775 10 14.6668 7.91068 14.6668 5.33335C14.6668 2.75602 12.5775 0.666687 10.0002 0.666687C7.42283 0.666687 5.3335 2.75602 5.3335 5.33335C5.3335 7.91068 7.42283 10 10.0002 10Z" stroke="#ffffff" stroke-linecap="round"/> 772 </svg> 773
774 </a> 775 </div> 776 <div class="icon icon-wishlist-header"> 777 <a href="https://stopgreenwash.org/criteria/"> 778 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 779 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
77911233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 780 </svg> 781 782 <span class="wishlist-count d-none">0</span> 783 </a> 784 </div> 785 <div class="icon icon-cart-header"> 786 <a href="https://stopgreenwash.org/criteria/"> 787 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="22" height="21" viewBox="0 0 22 21" fill="none"> 788 <path d="M6.33301 10V5.33335C6.33301 4.09568 6.82467 2.90869 7.69984 2.03352C8.57501 1.15835 9.762 0.666687 10.9997 0.666687C12.2374 0.666687 13.4243 1.15835 14.2995 2.03352C15.1747 2.90869 15.6663 4.09568 15.6663 5.33335V10" stroke="#ffffff" stroke-linecap="round"/> 789 <path d="M1.30956 10.7793C1.47873 8.74817 1.56389 7.73317 2.23356 7.116C2.90323 6.49883 3.92289 6.5 5.96106 6.5H16.0399C18.0769 6.5 19.0966 6.5 19.7662 7.116C20.4359 7.732 20.5211 8.74817 20.6902 10.7793L21.2899 17.973C21.3879 19.1548 21.4369 19.7463 21.0916 20.1232C20.7439 20.5 20.1512 20.5 18.9636 20.5H3.03623C1.84973 20.5 1.25589 20.5 0.909392 20.1232C0.562892 19.7463 0.611892 19.1548 0.711059 17.973L1.30956 10.7793Z" stroke="#ffffff"/> 790 </svg> 791 792 </a> 793 </div> 794 </div> 795 </div> 796 </div> 797 </header> 798 799 <nav class="nav-header" style="background: linear-gradient(to bottom, #0008ff 0%, #3600ff 50%, #004eff 100%);"> 800 <div class="nav-account-mobile row m-0 d-lg-none"> 801 <div class="col-6 welcome-cust p-0"> 802 803 <h1 class="logo"> 804 <a href="https://stopgreenwash.org/criteria/"> 805 <img src="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" alt="BETATOGEL" style="max-height:60px;"> 806 </a> 807 </h1> 808 809 810 </div> 811 812 <div class="col-6 login-register text-right p-0"> 813 <a href="https://situsbetatogel.b-cdn.net/stopgreenwash/">Log In</a> | <a href="https://situsbetatogel.b-cdn.net/stopgreenwash/">Sign Up</a> 814 </div> 815 </div> 816 <ul class="nav-menu container"> 817 818 <li class="nav-menu container"> 819 <a href="https://stopgreenwash.org/criteria/"> 820 <span style="color: #ffffff;">BETATOGEL</span> 821 822 823 <li class=" nav-menu container"> 824 <a href="https://stopgreenwash.org/criteria/"> 825 <span style="color: #ffffff;">BETATOGEL MACAU</span> 826 827 828 <li class=" nav-menu container"> 829 <a href="https://stopgreenwash.org/criteria/"> 830 <span style="color: #ffffff;">TOTO MACAU</span> 831 832 <li class=" nav-menu container"> 833 <a href="https://stopgreenwash.org/criteria/"> 834 <span style="color: #ffffff;">TOGEL MACAU</span> 835 836 <li class=" nav-menu container"> 837 <a href="https://stopgreenwash.org/criteria/"> 838 <span style="color: #ffffff;">DATA TOTO MACAU</span> 839 840 <li class=" nav-menu container"> 841 <a href="https://stopgreenwash.org/criteria/"> 842 <span style="color: #ffffff;">BANDAR TOTO MACAU</span> 843 844 <div class="overlay-nav"> 845 <!-- Mobile Close Button in Overlay --> 846 <button id="nav-close" class="nav-close-btn d-lg-none"> 847 <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"> 848 <path d="M18 6L6 18M6 6L18 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 849 </svg> 850 </button> 851 </div> 852 853
853<script> 854 if ($(window).width() < 992) { 855 // Level 1 menu accordion (main menu items) 856 $(".nav-menu .nav-menu container > a").click(function(e){ 857 e.preventDefault() 858 const parentLi = $(this).parent() 859 const isCurrentlyOpen = parentLi.hasClass("menu-open") 860 861 // Close all other open menus (accordion behavior) 862 $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open") 863 $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp() 864 865 // Toggle current menu 866 if (isCurrentlyOpen) { 867 parentLi.removeClass("menu-open") 868 $(this).next(".megamenu").slideUp() 869 } else { 870 parentLi.addClass("menu-open") 871 $(this).next(".megamenu").slideDown() 872 } 873 }) 874 875 // Level 2 menu accordion (submenu items with grandchildren) 876 $(document).on('click', '.dropdown-menu .has-submenu > a', function(e){ 877 e.preventDefault() 878 const parentLi = $(this).parent() 879 const isCurrentlyOpen = parentLi.hasClass("submenu-open") 880 const grandchild = $(this).next(".grandchild") 881 882 // Close all other open submenus in the same dropdown (accordion behavior) 883 parentLi.siblings('.has-submenu').removeClass("submenu-open") 884 parentLi.siblings('.has-submenu').find('.grandchild').slideUp() 885 parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)') 886 887 // Toggle current submenu 888 if (isCurrentlyOpen) { 889 parentLi.removeClass("submenu-open") 890 grandchild.slideUp() 891 $(this).find('.chevron-right').css('transform', 'rotate(0deg)') 892 } else { 893 parentLi.addClass("submenu-open") 894 grandchild.slideDown() 895 $(this).find('.chevron-right').css('transform', 'rotate(90deg)') 896 } 897 }) 898 899 $("#menu-hamburger").click(function(e){ 900 e.preventDefault() 901 $("body").toggleClass("nav_open") 902 }) 903 904 // Handle close button click 905 $("#nav-close").click(function(e){ 906 e.preventDefault() 907 $("body").removeClass("nav_open") 908 // Close all open menus when close button is clicked 909 $(".nav-menu .nav-menu container").removeClass("menu-open") 910 $(".nav-menu .megamenu").slideUp() 911 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 912 $(".dropdown-menu .grandchild").slideUp() 913 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 914 }) 915 } 916 917 $(".overlay-nav").click(function(e){ 918 e.preventDefault() 919 $("body").removeClass("nav_open") 920 // Close all open menus when overlay is clicked 921 $(".nav-menu .nav-menu container").removeClass("menu-open") 922 $(".nav-menu .megamenu").slideUp() 923 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 924 $(".dropdown-menu .grandchild").slideUp() 925 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 926 }) 927 </script>
927 928 929 930 </div> 931 932 <div id="shopify-section-search-popup" class="shopify-section m-0"><style> 933 #search-trigger { 934 cursor: pointer; 935 } 936 #search-popup { 937 display: none; 938 position: fixed; 939 left: 0; 940 width: 100%; 941 top: 0; 942 height: 100%; 943 justify-content: center; 944 z-index: 9999; 945 background: rgb(196 196 196 / 30%); 946 } 947 #search-input { 948 align-self: center; 949 width: 100%; 950 height: 80px; 951 position: absolute; 952 top: 0; 953 border-bottom: 0.5px solid #A3A3A3; 954 background-color: #fff; 955 } 956 #search-input * { 957 align-self: center; 958 } 959 #search-type { 960 width: 100%; 961 border: none; 962 padding-right: 20px; 963 padding-left: 20px; 964 font-size: 16px; 965 color: #757575; 966 } 967 #search-btn { 968 font-size: 16px; 969 font-weight: 500; 970 } 971 #search-result { 972 min-height: 490px; 973 width: 100%; 974 padding-top: 80px; 975 } 976 #search-result .container { 977 background-color: #fff; 978 padding: 20px 40px; 979 } 980 body.search-popup-open { 981 /* .search-popup-open */ 982 overflow: hidden; 983 } 984 .search-popup-open #loc_delivery { 985 display: none 986 } 987 .search-header svg { 988 display: none; 989 cursor: pointer; 990 } 991 .wrapper-search-popup { 992 max-height: calc(100vh - 150px); 993 overflow-y: auto; 994 overflow-x: hidden; 995 } 996 997 .group-recommend { 998 padding: 20px 40px; 999 } 1000 1001 .resultsearch { 1002 display: none; 1003 } 1004 .results { padding: 20px 40px } 1005 .resultsearch label { 1006 font-weight: 600; 1007 padding-bottom: 20px; 1008 display: block; 1009 margin-bottom: 20px; 1010 border-bottom: 1px solid #AAAAAA; 1011 } 1012 1013 ul.result_product { 1014 max-height: 300px; 1015 overflow: auto; 1016 } 1017 1018 .group-promotion ul { 1019 margin: 0; 1020 } 1021 .group-promotion li { 1022 list-style: none; 1023 margin-bottom: 12px; 1024 } 1025 .group-promotion li a { 1026 color: inherit; 1027 } 1028 1029 .group-recent { 1030 position: relative; 1031 padding: 20px 40px; 1032 } 1033 .group-recent ul { 1034 margin: 0; 1035 } 1036 .group-recent li { 1037 list-style: none; 1038 display: inline-block; 1039 margin-right: 60px; 1040 } 1041 .group-recent li a { 1042 color: inherit; 1043 } 1044 1045 .last-search svg { 1046 width: 20px; 1047 vertical-align: middle; 1048 } 1049 ul.last-search a { 1050 vertical-align: middle; 1051 padding: 0 10px; 1052 } 1053 ul.last-search li span { 1054 cursor: pointer; 1055 } 1056 .delete-all-history { 1057 position: absolute; 1058 top: 25px; 1059 right: 40px; 1060 text-decoration: underline; 1061 color: #e11d1d; 1062 cursor: pointer; 1063 font-size: 12px; 1064 } 1065 1066 form.search.search-modal__form { 1067 position: relative; 1068 } 1069 1070 button.search__button svg { 1071 width: 25px; 1072 color: #495057; 1073 fill: #757582; 1074 } 1075 1076 button.search__button.field__button { 1077 position: absolute; 1078 top: 50%; 1079 margin-top: -12px; 1080 } 1081 1082 .close-search { 1083 display: none; 1084 position: absolute; 1085 right: 65px; 1086 top: 10px; 1087 cursor: pointer; 1088 } 1089 1090 .site-overlay { 1091 position: fixed; 1092 top: 0; 1093 width: 100vw; 1094 height: 100vh; 1095 z-index: 1000; 1096 background: #0000005c; 1097 visibility: hidden; 1098 opacity: 0; 1099 pointer-events: none; 1100 transition: all .3s linear; 1101 display: block !important; 1102 } 1103 1104 .search-popup-open .site-overlay { 1105 opacity: 1; 1106 visibility: visible; 1107 pointer-events: all; 1108 z-index: -1; 1109 cursor: pointer; 1110 } 1111 1112 @media (min-width: 991px) { 1113 .group-recent ul { 1114 column-count: 3; 1115 } 1116 .group-promotion li a { 1117 font-size: 12px; 1118 font-weight: 400; 1119 } 1120 .group-recent li a { 1121 font-size: 12px; 1122 font-weight: 400; 1123 } 1124 } 1125 1126 .moreresult { 1127 padding: 10px 40px; 1128 border-top: 1px solid #AAAAAA; 1129 } 1130 .moreresult * { 1131 align-self: center; 1132 } 1133 .moreresult p { 1134 margin: 0; 1135 font-size: 12px !important; 1136 } 1137 .moreresult svg { 1138 width: 13px; 1139 } 1140 1141 @media (max-width: 992px) { 1142 .icon-key-mobile { 1143 height: auto!important; 1144 width: 10px!important; 1145 } 1146 body.grid-view.search-popup-open .products { 1147 -ms-flex: 0 0 100%!important; 1148 flex: 0 0 100%!important; 1149 max-width: 100%!important; 1150 } 1151 button.search__button svg {
1152 width: 20px; 1153 } 1154 #search-result { 1155 padding-left: 0; 1156 padding-right: 0; 1157 } 1158 #search-result { 1159 padding-top: 55px; 1160 } 1161 #search-input { 1162 height: 55px; 1163 } 1164 .group-recommend { 1165 padding: 20px; 1166 } 1167 #search-input .container { 1168 padding: 0 20px; 1169 } 1170 #search-type { 1171 font-size: 14px; 1172 } 1173 #search-btn { 1174 font-size: 12px; 1175 text-decoration: underline; 1176 } 1177 .results { 1178 padding: 20px; 1179 } 1180 .group-recommend h3 { 1181 font-size: 16px; 1182 } 1183 .products .card-body { 1184 padding: 8px 0px 10px; 1185 } 1186 .moreresult { 1187 padding: 10px 20px; 1188 } 1189 } 1190 </style> 1191 <style type="text/css"> 1192 div.advertisement-placeholder { 1193 text-align: center; 1194 padding-bottom: 20px; 1195 display: flex; 1196 flex-direction: column; 1197 justify-content: center; 1198 } 1199 div.advertisement-text p { 1200 margin: 0; 1201 font-family: Open Sans; 1202 font-style: normal; 1203 font-weight: normal; 1204 font-size: 10px; 1205 line-height: 20px; 1206 color: #999999; 1207 } 1208 div.advertisement-banner { 1209 margin: 0px auto; 1210 } 1211 div#div-gpt-ad-billboard-placeholder { 1212 width: 996px; 1213 margin: 0 auto; 1214 background: #F5F5F5; 1215 padding-bottom: unset !important; 1216 min-height: 200px; 1217 } 1218 div#div-gpt-ad-lb-placeholder { 1219 background: #F5F5F5; 1220 padding-bottom: unset !important; 1221 min-height: 280px; 1222 } 1223 .faq-section{ 1224 max-width:1200px; 1225 margin:50px auto; 1226 padding:40px 20px; 1227 position:relative; 1228 background-color: rgba(0, 0, 0, 0.1); 1229 backdrop-filter: blur(25px); 1230 border-radius: 20px; 1231 } 1232 1233 .faq-section::before{ 1234 content:""; 1235 position:absolute; 1236 top:0;left:50%; 1237 transform:translateX(-50%); 1238 width:80%; 1239 height:2px; 1240 background:linear-gradient(90deg,transparent,#004eff,transparent) 1241 } 1242 1243 .faq-section h2{ 1244 text-align:center; 1245 font-size:34px;font-weight:700; 1246 margin-bottom:50px; 1247 background: linear-gradient(135deg, #00fffb, #00fffb, #00fffb); 1248 -webkit-background-clip:text; 1249 -webkit-text-fill-color:transparent; 1250 background-clip:text; 1251 font-family:"Poppins",sans-serif;letter-spacing:1px 1252 } 1253 1254 .faq-container{ 1255 display:flex; 1256 flex-direction:column; 1257 gap:25px 1258 } 1259 1260 .faq-item{ 1261 background:linear-gradient(145deg,#0a0a0a,#1a1a1a); 1262 border:2px solid #004eff; 1263 border-radius:20px;overflow:hidden; 1264 transition:all .4s ease;box-shadow:0 5px 20px rgba(0,0,0,0.5) 1265 } 1266 1267 .faq-item:hover{ 1268 border-color:#004eff; 1269 transform:translateX(10px); 1270 box-shadow:0 12px 35px rgba(253, 187, 4, 0.25) 1271 } 1272 1273 .faq-question{width:100%; 1274 padding:28px 35px;background:transparent; 1275 color:#ffffff; 1276 font-size:18px; 1277 font-weight:600; 1278 text-align:left; 1279 border:none;cursor:pointer; 1280 display:flex; 1281 justify-content:space-between; 1282 align-items:center; 1283 font-family:"Poppins",sans-serif; 1284 transition:all .3s ease 1285 } 1286 1287 .faq-question:hover{ 1288 color:#004eff 1289 } 1290 1291 .faq-question::after{ 1292 content:'+'; 1293 font-size:32px; 1294 font-weight:300; 1295 transition:all .4s ease; 1296 color:#004eff; 1297 width:40px; 1298 height:40px; 1299 display:flex; 1300 align-items:center; 1301 justify-content:center; 1302 border:2px solid #004eff;border-radius:50%; 1303 background:rgba(0, 0, 0, 0.1) 1304 } 1305 1306 .faq-item.active .faq-question::after{ 1307 transform:rotate(135deg); 1308 background:linear-gradient(to bottom, #004eff 0%, #004eff 50%, #004eff 100%); 1309 color:#000;border-color:transparent 1310 } 1311 1312 .faq-answer{ 1313 max-height:0; 1314 overflow:hidden; 1315 transition:max-height .5s ease,padding .5s ease; 1316 background:linear-gradient(180deg,rgba(253,228,4,0.05),transparent); 1317 padding:0 35px 1318 } 1319 1320 .faq-item.active .faq-answer{ 1321 max-height:800px;padding:30px 35px; 1322 border-top:1px solid #004eff 1323 } 1324 1325 .faq-answer p{ 1326 color:#e0e0e0; 1327 font-size:16px; 1328 line-height:2; 1329 margin:0; 1330 font-family:"Poppins",sans-serif 1331 } 1332 1333 @media 1334 (max-width:768px) 1335 { 1336 1337 .faq-section 1338 {padding:30px 15px} 1339 1340 .faq-section h2 1341 {font-size:26px} 1342 1343 .faq-question 1344 {font-size:16px; 1345 padding:22px 25px} 1346 1347 .faq-question::after 1348 {width:35px; 1349 height:35px; 1350 font-size:28px} 1351 1352 .faq-answer 1353 {padding:0 25px} 1354 1355 .faq-item.active .faq-answer 1356 {padding:25px} 1357 1358 .faq-item:hover 1359 {transform:translateX(5px)} 1360 } 1361 </style> 1362 <div id="search-popup"> 1363 <div id="search-input" class="row"> 1364 <div class="container w-100"> 1365 <form 1366 action="/search" 1367 method="get" 1368 role="search" 1369 class="search search-modal__form d-flex justify-content-between" 1370 > 1371 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="20" height="20" viewBox="0 0 20 20" fill="none"> 1372 <path d="M18.7327 19.513L11.427 12.2073C10.8437 12.7043 10.1729 13.0889 9.41454 13.3612C8.65621 13.6334 7.89398 13.7695 7.12787 13.7695C5.25965 13.7695 3.67843 13.1228 2.3842 11.8293C1.08998 10.5359 0.442871 8.95505 0.442871 7.08683C0.442871 5.2186 1.0892 3.63699 2.38187 2.34199C3.67454 1.04699 5.25498 0.398714 7.12321 0.397159C8.99143 0.395603 10.5734 1.04271 11.8692 2.33849C13.165 3.63427 13.8129 5.21588 13.8129 7.08333C13.8129 7.89377 13.6694 8.67816 13.3824 9.43649C13.0954 10.1948 12.7182 10.8435 12.2507 11.3825L19.5564 18.687L18.7327 19.513ZM7.12904 12.6017C8.67682 12.6017 9.98348 12.0689 11.049 11.0033C12.1146 9.93777 12.6474 8.63071 12.6474 7.08216C12.6474 5.5336 12.1146 4.22694 11.049 3.16216C9.98348 2.09738 8.67682 1.5646 7.12904 1.56383C5.58126 1.56305 4.2742 2.09583 3.20787 3.16216C2.14154 4.22849 1.60876 5.53516 1.60954 7.08216C1.61032 8.62916 2.14309 9.93583 3.20787 11.0022C4.27265 12.0685 5.57932 12.6013 7.12787 12.6005" fill="#ffffff"/> 1373 </svg> 1374
1375 <input type="hidden" name="type" value="product"> 1376 <input 1377 type="text" 1378 id="search-type" 1379 name="q" 1380 class="search-popup" 1381 placeholder="Gifts that linger: Uncover treasures for cherished moments." 1382 > 1383 <div class="close-search"><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 1384 <path d="M9 9.708L12.246 12.954C12.3393 13.0473 12.454 13.0973 12.59 13.104C12.726 13.1107 12.8473 13.0607 12.954 12.954C13.0607 12.8473 13.114 12.7293 13.114 12.6C13.114 12.4707 13.0607 12.3527 12.954 12.246L9.708 9L12.954 5.754C13.0473 5.66067 13.0973 5.546 13.104 5.41C13.1107 5.274 13.0607 5.15267 12.954 5.046C12.8473 4.93933 12.7293 4.886 12.6 4.886C12.4707 4.886 12.3527 4.93933 12.246 5.046L9 8.292L5.754 5.046C5.66067 4.95267 5.546 4.90267 5.41 4.896C5.274 4.88933 5.15267 4.93933 5.046 5.046C4.93933 5.15267 4.886 5.27067 4.886 5.4C4.886 5.52933 4.93933 5.64733 5.046 5.754L8.292 9L5.046 12.246C4.95267 12.3393 4.90267 12.4543 4.896 12.591C4.88933 12.7263 4.93933 12.8473 5.046 12.954C5.15267 13.0607 5.27067 13.114 5.4 13.114C5.52933 13.114 5.64733 13.0607 5.754 12.954L9 9.708ZM9.003 18C7.75833 18 6.58833 17.764 5.493 17.292C4.39767 16.8193 3.44467 16.178 2.634 15.368C1.82333 14.558 1.18167 13.606 0.709 12.512C0.236333 11.418 0 10.2483 0 9.003C0 7.75767 0.236333 6.58767 0.709 5.493C1.181 4.39767 1.82133 3.44467 2.63 2.634C3.43867 1.82333 4.391 1.18167 5.487 0.709C6.583 0.236333 7.753 0 8.997 0C10.241 0 11.411 0.236333 12.507 0.709C13.6023 1.181 14.5553 1.82167 15.366 2.631C16.1767 3.44033 16.8183 4.39267 17.291 5.488C17.7637 6.58333 18 7.753 18 8.997C18 10.241 17.764 11.411 17.292 12.507C16.82 13.603 16.1787 14.556 15.368 15.366C14.5573 16.176 13.6053 16.8177 12.512 17.291C11.4187 17.7643 10.249 18.0007 9.003 18ZM9 17C11.2333 17 13.125 16.225 14.675 14.675C16.225 13.125 17 11.2333 17 9C17 6.76667 16.225 4.875 14.675 3.325C13.125 1.775 11.2333 1 9 1C6.76667 1 4.875 1.775 3.325 3.325C1.775 4.875 1 6.76667 1 9C1 11.2333 1.775 13.125 3.325 14.675C4.875 16.225 6.76667 17 9 17Z" fill="#757575"/> 1385 </svg> 1386 </div> 1387 <button id="search-btn">Search</button> 1388 </form> 1389 </div> 1390 </div> 1391 <div id="search-result" class="container m-auto"> 1392 <div class="container p-0"> 1393 <div class="group-promotion"> 1394 <div class="resultsearch"> 1395 <div class="row results"> 1396 <div class="col-12 col-lg-6 mb-3 mb-lg-0"> 1397 <label>SUGGESTIONS</label> 1398 <ul class="result_collection"></ul> 1399 </div> 1400 <div class="col-12 col-lg-6"> 1401 <label>PRODUCTS</label> 1402 <ul class="result_product"></ul> 1403 </div> 1404 </div> 1405 <div class="d-flex justify-content-between moreresult m-0"> 1406 <p>Search for<span></span></p> 1407 <svg version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="32" height="32" viewBox="0 0 32 32"> 1408 <title>icon-arrow-right</title> 1409 <path d="M25.057 15.333l-6.862-6.862c-0.26-0.26-0.26-0.682 0-0.943s0.682-0.26 0.943 0l8 8c0.26 0.26 0.26 0.682 0 0.943l-8 8c-0.26 0.26-0.682 0.26-0.943 0s-0.26-0.682 0-0.943l6.862-6.862h-19.724c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h19.724z"></path> 1410 </svg> 1411 </div> 1412 </div> 1413 </div> 1414 <div class="group-recent hide"> 1415 <h3>RECENT SEARCH</h3> 1416 <span class="delete-all-history">Hapus riwayat</span> 1417 <ul class="last-search"></ul> 1418 </div> 1419 <div class="group-recommend"> 1420 <h3>YOU MAY ALSO LIKE</h3> 1421 1422 1423 <div class="row popup-recommend c-products-grid infinite-case product-multi-"> 1424 <div class="swiper-wrapper justify-content-between" style="margin-left:1px;"> 1425 1426 1427 <div class="swiper-slide card"> 1428 1429 1430 1431 1432 <div class="products" data-lazy="false"> 1433 <div class="bg-products"> 1434 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-love-mooncake"> 1435 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1436 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.072
14366 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.11233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1437 </svg> 1438 1439 </div> 1440 <a href="/products/mid-autumn-of-love-mooncake"> 1441 1442 <div class="product-card-img-container p-0 position-relative"> 1443 1444 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Love-Mooncake_6b4cc10d-950d-4e1a-abf7-427b4a6912c8_350x.jpg?v=1755750898" data-src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Love-Mooncake_6b4cc10d-950d-4e1a-abf7-427b4a6912c8_350x.jpg?v=1755750898" alt="Mid Autumn of Love Mooncake" height="200" width="200"> 1445 </div> 1446 <div class="card-body product-card-info"> 1447 <h5 class="h5 mb-0"> 1448 Mid Autumn of Love Mooncake 1449 </h5> 1450 <div class="product-card-price"> 1451 1452 <div class="product-price-sale"> 1453 <s class="product-card-price-before card-money">Rp 588.000</s> 1454 <span class="product-card-discount small"> 1455 (-40%) 1456 </span> 1457 </div> 1458 1459 1460 1461 <div class="price-discount"> 1462 <h4 class="product-card-price-after card-money">Rp 348.000</h4> 1463 </div> 1464 1465 1466 1467 1468 1469 </div> 1470 1471 </div> 1472 </a> 1473 </div> 1474 1475 </div> 1476 1477 </div> 1478 1479 1480 1481 <div class="swiper-slide card"> 1482 1483 1484 1485 1486 <div class="products" data-lazy="false"> 1487 <div class="bg-products"> 1488 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-joy-mooncake"> 1489 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1490 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
149011233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1491 </svg> 1492 1493 </div> 1494 <a href="/products/mid-autumn-of-joy-mooncake"> 1495 1496 <div class="product-card-img-container p-0 position-relative"> 1497 1498 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Joy-Mooncake_97224b06-a506-4a56-8544-59a0dccb5c17_350x.jpg?v=1755750798" data-src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Joy-Mooncake_97224b06-a506-4a56-8544-59a0dccb5c17_350x.jpg?v=1755750798" alt="Mid Autumn of Joy Mooncake" height="200" width="200"> 1499 </div> 1500 <div class="card-body product-card-info"> 1501 <h5 class="h5 mb-0"> 1502 Mid Autumn of Joy Mooncake 1503 </h5> 1504 <div class="product-card-price"> 1505 1506 <div class="product-price-sale"> 1507 <s class="product-card-price-before card-money">Rp 888.000</s> 1508 <span class="product-card-discount small"> 1509 (-33%) 1510 </span> 1511 </div> 1512 1513 1514 1515 <div class="price-discount"> 1516 <h4 class="product-card-price-after card-money">Rp 588.000</h4> 1517 </div> 1518 1519 1520 1521 1522 1523 </div> 1524 1525 </div> 1526 </a> 1527 </div> 1528 1529 </div> 1530 1531 </div> 1532 1533 1534 1535 <div class="swiper-slide card"> 1536 1537 1538 1539 1540 <div class="products" data-lazy="false"> 1541 <div class="bg-products"> 1542 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-fortune-mooncake"> 1543 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1544 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
154411233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1545 </svg> 1546 1547 </div> 1548 <a href="/products/mid-autumn-of-fortune-mooncake"> 1549 1550 <div class="product-card-img-container p-0 position-relative"> 1551 1552 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Fortune-Mooncake_de29329d-6ab7-4592-aa00-3e9636d4a323_350x.jpg?v=1755846072" data-src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Fortune-Mooncake_de29329d-6ab7-4592-aa00-3e9636d4a323_350x.jpg?v=1755846072" alt="Mid Autumn of Fortune Mooncake" height="200" width="200"> 1553 </div> 1554 <div class="card-body product-card-info"> 1555 <h5 class="h5 mb-0"> 1556 Mid Autumn of Fortune Mooncake 1557 </h5> 1558 <div class="product-card-price"> 1559 1560 <div class="product-price-sale"> 1561 <s class="product-card-price-before card-money">Rp 1.188.000</s> 1562 <span class="product-card-discount small"> 1563 (-33%) 1564 </span> 1565 </div> 1566 1567 1568 1569 <div class="price-discount"> 1570 <h4 class="product-card-price-after card-money">Rp 788.000</h4> 1571 </div> 1572 1573 1574 1575 1576 1577 </div> 1578 1579 </div> 1580 </a> 1581 </div> 1582 1583 </div> 1584 1585 </div> 1586 1587 1588 1589 <div class="swiper-slide card"> 1590 1591 1592 1593 1594 <div class="products" data-lazy="false"> 1595 <div class="bg-products"> 1596 <div class="wishlist-toggle" data-product-handle="mid-autumn-festival-mooncake"> 1597 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1598 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
159811233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1599 </svg> 1600 1601 </div> 1602 <a href="/products/mid-autumn-festival-mooncake"> 1603 1604 <div class="product-card-img-container p-0 position-relative"> 1605 1606 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Mid-Autumn-Festival-Mooncake_06ea4f9c-bdaa-49de-b0ba-c3dd60fef351_350x.jpg?v=1755845965" data-src="//outerbloom.com/cdn/shop/files/Mid-Autumn-Festival-Mooncake_06ea4f9c-bdaa-49de-b0ba-c3dd60fef351_350x.jpg?v=1755845965" alt="Mid Autumn Festival Mooncake" height="200" width="200"> 1607 </div> 1608 <div class="card-body product-card-info"> 1609 <h5 class="h5 mb-0"> 1610 Mid Autumn Festival Mooncake 1611 </h5> 1612 <div class="product-card-price"> 1613 1614 <div class="product-price-sale"> 1615 <s class="product-card-price-before card-money">Rp 1.288.000</s> 1616 <span class="product-card-discount small"> 1617 (-23%) 1618 </span> 1619 </div> 1620 1621 1622 1623 <div class="price-discount"> 1624 <h4 class="product-card-price-after card-money">Rp 988.000</h4> 1625 </div> 1626 1627 1628 1629 1630 1631 </div> 1632 1633 </div> 1634 </a> 1635 </div> 1636 1637 </div> 1638 1639 </div> 1640 1641 1642 1643 <div class="swiper-slide card"> 1644 1645 1646 1647 1648 <div class="products" data-lazy="false"> 1649 <div class="bg-products"> 1650 <div class="wishlist-toggle" data-product-handle="the-jade-bouquet"> 1651 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1652 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
165211233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1653 </svg> 1654 1655 </div> 1656 <a href="/products/the-jade-bouquet"> 1657 1658 <div class="product-card-img-container p-0 position-relative"> 1659 1660 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/The-Jade-Bouquet_350x.jpg?v=1751618030" data-src="//outerbloom.com/cdn/shop/files/The-Jade-Bouquet_350x.jpg?v=1751618030" alt="The Jade Bouquet" height="200" width="200"> 1661 </div> 1662 <div class="card-body product-card-info"> 1663 <h5 class="h5 mb-0"> 1664 The Jade Bouquet 1665 </h5> 1666 <div class="product-card-price"> 1667 1668 <div class="product-price-sale"> 1669 <s class="product-card-price-before card-money">Rp 435.000</s> 1670 <span class="product-card-discount small"> 1671 (-34%) 1672 </span> 1673 </div> 1674 1675 1676 1677 <div class="price-discount"> 1678 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1679 </div> 1680 1681 1682 1683 1684 1685 </div> 1686 1687 </div> 1688 </a> 1689 </div> 1690 1691 </div> 1692 1693 </div> 1694 1695 1696 1697 <div class="swiper-slide card"> 1698 1699 1700 1701 1702 <div class="products" data-lazy="false"> 1703 <div class="bg-products"> 1704 <div class="wishlist-toggle" data-product-handle="the-selena-bouquet"> 1705 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1706 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
170611233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1707 </svg> 1708 1709 </div> 1710 <a href="/products/the-selena-bouquet"> 1711 1712 <div class="product-card-img-container p-0 position-relative"> 1713 1714 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/The-Selena-Bouquet_350x.jpg?v=1751618047" data-src="//outerbloom.com/cdn/shop/files/The-Selena-Bouquet_350x.jpg?v=1751618047" alt="The Selena Bouquet" height="200" width="200"> 1715 </div> 1716 <div class="card-body product-card-info"> 1717 <h5 class="h5 mb-0"> 1718 The Selena Bouquet 1719 </h5> 1720 <div class="product-card-price"> 1721 1722 <div class="product-price-sale"> 1723 <s class="product-card-price-before card-money">Rp 335.000</s> 1724 <span class="product-card-discount small"> 1725 (-29%) 1726 </span> 1727 </div> 1728 1729 1730 1731 <div class="price-discount"> 1732 <h4 class="product-card-price-after card-money">Rp 235.000</h4> 1733 </div> 1734 1735 1736 1737 1738 1739 </div> 1740 1741 </div> 1742 </a> 1743 </div> 1744 1745 </div> 1746 1747 </div> 1748 1749 1750 1751 <div class="swiper-slide card"> 1752 1753 1754 1755 1756 <div class="products" data-lazy="false"> 1757 <div class="bg-products"> 1758 <div class="wishlist-toggle" data-product-handle="the-viola-bouquet"> 1759 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1760 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
176011233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1761 </svg> 1762 1763 </div> 1764 <a href="/products/the-viola-bouquet"> 1765 1766 <div class="product-card-img-container p-0 position-relative"> 1767 1768 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/The-Viola-Bouquet_350x.jpg?v=1751618053" data-src="//outerbloom.com/cdn/shop/files/The-Viola-Bouquet_350x.jpg?v=1751618053" alt="A striking bouquet featuring full pink chrysanthemums and delicate purple asters. It is elegantly wrapped in deep purple paper with a modern black and white striped accent at the base. The arrangement is tied with a pink ribbon bow, creating a full, rounded shape. This sophisticated bouquet is perfect for birthdays, anniversaries, or as a thoughtful thank-you gesture." height="200" width="200"> 1769 </div> 1770 <div class="card-body product-card-info"> 1771 <h5 class="h5 mb-0"> 1772 The Viola Bouquet 1773 </h5> 1774 <div class="product-card-price"> 1775 1776 <div class="product-price-sale"> 1777 <s class="product-card-price-before card-money">Rp 385.000</s> 1778 <span class="product-card-discount small"> 1779 (-25%) 1780 </span> 1781 </div> 1782 1783 1784 1785 <div class="price-discount"> 1786 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1787 </div> 1788 1789 1790 1791 1792 1793 </div> 1794 1795 </div> 1796 </a> 1797 </div> 1798 1799 </div> 1800 1801 </div> 1802 1803 1804 1805 <div class="swiper-slide card"> 1806 1807 1808 1809 1810 <div class="products" data-lazy="false"> 1811 <div class="bg-products"> 1812 <div class="wishlist-toggle" data-product-handle="the-minerva-bouquet"> 1813 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1814 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
181411233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1815 </svg> 1816 1817 </div> 1818 <a href="/products/the-minerva-bouquet"> 1819 1820 <div class="product-card-img-container p-0 position-relative"> 1821 1822 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/The-Minerva-Bouquet_350x.jpg?v=1751618061" data-src="//outerbloom.com/cdn/shop/files/The-Minerva-Bouquet_350x.jpg?v=1751618061" alt="The Minerva Bouquet" height="200" width="200"> 1823 </div> 1824 <div class="card-body product-card-info"> 1825 <h5 class="h5 mb-0"> 1826 The Minerva Bouquet 1827 </h5> 1828 <div class="product-card-price"> 1829 1830 <div class="product-price-sale"> 1831 <s class="product-card-price-before card-money">Rp 385.000</s> 1832 <span class="product-card-discount small"> 1833 (-25%) 1834 </span> 1835 </div> 1836 1837 1838 1839 <div class="price-discount"> 1840 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1841 </div> 1842 1843 1844 1845 1846 1847 </div> 1848 1849 </div> 1850 </a> 1851 </div> 1852 1853 </div> 1854 1855 </div> 1856 1857 1858 1859 <div class="swiper-slide card"> 1860 1861 1862 1863 1864 <div class="products" data-lazy="false"> 1865 <div class="bg-products"> 1866 <div class="wishlist-toggle" data-product-handle="congraduations-bouquet"> 1867 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1868 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
186811233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1869 </svg> 1870 1871 </div> 1872 <a href="/products/congraduations-bouquet"> 1873 1874 <div class="product-card-img-container p-0 position-relative"> 1875 1876 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Congraduations-Bouquet_350x.jpg?v=1749545306" data-src="//outerbloom.com/cdn/shop/files/Congraduations-Bouquet_350x.jpg?v=1749545306" alt="Congraduations Bouquet" height="200" width="200"> 1877 </div> 1878 <div class="card-body product-card-info"> 1879 <h5 class="h5 mb-0"> 1880 Congraduations Bouquet 1881 </h5> 1882 <div class="product-card-price"> 1883 1884 <div class="product-price-sale"> 1885 <s class="product-card-price-before card-money">Rp 380.000</s> 1886 <span class="product-card-discount small"> 1887 (-25%) 1888 </span> 1889 </div> 1890 1891 1892 1893 <div class="price-discount"> 1894 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1895 </div> 1896 1897 1898 1899 1900 1901 </div> 1902 1903 </div> 1904 </a> 1905 </div> 1906 1907 </div> 1908 1909 </div> 1910 1911 1912 1913 <div class="swiper-slide card"> 1914 1915 1916 1917 1918 <div class="products" data-lazy="false"> 1919 <div class="bg-products"> 1920 <div class="wishlist-toggle" data-product-handle="grad-gorgeous-bouquet"> 1921 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1922 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
192211233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff"/> 1923 </svg> 1924 1925 </div> 1926 <a href="/products/grad-gorgeous-bouquet"> 1927 1928 <div class="product-card-img-container p-0 position-relative"> 1929 1930 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Grad-_-Gorgeous-Bouquet_350x.jpg?v=1749545297" data-src="//outerbloom.com/cdn/shop/files/Grad-_-Gorgeous-Bouquet_350x.jpg?v=1749545297" alt="Grad & Gorgeous Bouquet" height="200" width="200"> 1931 </div> 1932 <div class="card-body product-card-info"> 1933 <h5 class="h5 mb-0"> 1934 Grad & Gorgeous Bouquet 1935 </h5> 1936 <div class="product-card-price"> 1937 1938 <div class="product-price-sale"> 1939 <s class="product-card-price-before card-money">Rp 380.000</s> 1940 <span class="product-card-discount small"> 1941 (-25%) 1942 </span> 1943 </div> 1944 1945 1946 1947 <div class="price-discount"> 1948 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1949 </div> 1950 1951 1952 1953 1954 1955 </div> 1956 1957 </div> 1958 </a> 1959 </div> 1960 1961 </div> 1962 1963 </div> 1964 1965 1966 </div> 1967 </div> 1968 1969 </div> 1970 </div> 1971 </div> 1972 1973 <div class="site-overlay" style="display: none"></div> 1974 </div> 1975
1975<script> 1976 1977 var swiper = new Swiper('.popup-recommend', { 1978 slidesPerView : 4, 1979 spaceBetween: 30, 1980 lazy: true , 1981 speed: 300, 1982 breakpoints: { 1983 // when window width is <= 576px 1984 576: { 1985 slidesPerView: 2, 1986 spaceBetween: 10, 1987 freeMode: true, 1988 resistance : true, 1989 resistanceRatio : 0, 1990 freeModeMomentumRatio : 0.45, 1991 freeModeMomentumVelocityRatio : 1.5 1992 }, 1993 768: { 1994 slidesPerView: 2, 1995 spaceBetween: 10 1996 }, 1997 992: { 1998 slidesPerView: 3, 1999 spaceBetween: 20 2000 } 2001 } 2002 }); 2003 2004 const searchContainer = $("#search-popup") 2005 const searchInput = $(".search-popup") 2006 const result_collection = $('.result_collection') 2007 const result_product = $('.result_product') 2008 const resultsearch = $('.resultsearch') 2009 const resultrecommend = $(".group-recommend") 2010 const moreresult = $(".moreresult") 2011 2012 searchInput.keyup(function(){ 2013 const input = $(this).val() 2014 moreresult.find("p span").text(` â${input}â`) 2015 if(input.length > 2) { 2016 $(".close-search").show() 2017 const url = `https://outerbloom.com/search/suggest.json?resources[limit]=10&resources[limit_scope]=each&resources[type]=collection,product&q=${input}` 2018 $.ajax({
2019 type: 'GET', 2020 url, 2021 beforeSend: function() { 2022 // setting a timeout 2023 // $(placeholder).addClass('loading'); 2024 }, 2025 success: function(response) { 2026 resultsearch.show() 2027 resultrecommend.hide() 2028 result_collection.html("") 2029 result_product.html("") 2030 const collections = response.resources.results.collections 2031 const products = response.resources.results.products 2032 let collection_length = collections.length 2033 let product_length = products.length 2034 // if(collections.length > 5) { 2035 // collection_length = 5 2036 // } 2037 // if(products.length > 5) { 2038 // product_length = 5 2039 // } 2040 for(let i=0;i<collection_length;i++){ 2041 const title = collections[i].title 2042 const url = collections[i].url 2043 let html_collection 2044 if(!title.includes('AIA') && !title.includes('AXA') && !title.includes('WOM') && !title.includes('Upsell')) { 2045 html_collection = ` 2046 <li class="item" data-title="${title}"> 2047 <a href="${url}" data-type="collection" class="item_url" data-title="${title}" data-url="${url}">${title}</a> 2048 </li> 2049 ` 2050 } 2051 result_collection.append(html_collection) 2052 } 2053 for(let i=0;i<product_length;i++){ 2054 const title = products[i].title 2055 const url = products[i].url 2056 const image = products[i].featured_image.url 2057 const vendor = products[i].vendor 2058 let html_product 2059 if(vendor !== 'AIA' && vendor !== 'AXA' && vendor !== 'WOM Finance' && !title.includes('Extra Shipping Cost') && !title.includes('[US]') && !title.includes('Rp')){ 2060 html_product = ` 2061 <li class="item" data-vendor="${vendor}"> 2062 <a href="${url}" class="item_url" data-type="product" data-title="${title}" data-url="${url}"> 2063 <img src="${image}" alt="${title}" style="width: 70px;vertical-align: middle;margin-right: 20px;"><span>${title}</span> 2064 </a> 2065 </li> 2066 ` 2067 } 2068 result_product.append(html_product) 2069 } 2070 }, 2071 error: function(xhr) { // if error occured 2072 alert("Error occured.please try again"); 2073 }, 2074 complete: function(response) { 2075 // $(placeholder).removeClass('loading'); 2076 }, 2077 dataType: 'JSON' 2078 }); 2079 } else { 2080 result_collection.html("") 2081 result_product.html("") 2082 2083 resultsearch.hide() 2084 resultrecommend.show() 2085 } 2086 }) 2087 2088 moreresult.click(function(){ 2089 $("#search-btn").trigger("click"); 2090 }) 2091 2092 $(".close-search").click(function(){ 2093 $(this).hide() 2094 searchInput.val("") 2095 searchInput.focus() 2096 resultsearch.hide() 2097 resultrecommend.show() 2098 }) 2099 2100 function setCookie(name,value,days) { 2101 var expires = ""; 2102 if (days) { 2103 var date = new Date(); 2104 date.setTime(date.getTime() + (days*24*60*60*1000)); 2105 expires = "; expires=" + date.toUTCString(); 2106 } 2107 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 2108 } 2109 function getCookie(name) { 2110 var nameEQ = name + "="; 2111 var ca = document.cookie.split(';'); 2112 for(var i=0;i < ca.length;i++) { 2113 var c = ca[i]; 2114 while (c.charAt(0)==' ') c = c.substring(1,c.length); 2115 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 2116 } 2117 return null; 2118 } 2119 let last_search_name = [] 2120 let last_search_url = [] 2121 $(".group-recent").hide() 2122 if(getCookie("last_search_name") != null && getCookie("last_search_url") != null){ 2123 if(getCookie("last_search_name") != "" && getCookie("last_search_url") != ""){ 2124 $(".group-recent").show() 2125 last_search_name = getCookie("last_search_name"); 2126 last_search_url = getCookie("last_search_url"); 2127 const arrName = last_search_name.substring(1).split(',').reverse() 2128 const arrUrl = last_search_url.substring(1).split(',').reverse() 2129 console.log(arrName, 'Array Name') 2130 console.log(arrUrl, 'Array Url') 2131 let length = arrName.length 2132 if(arrName.length > 5) { 2133 length = 5 2134 } 2135 for(let n=0;n<length;n++){ 2136 let html2 = `<li><svg viewBox="0 0 24 24" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"><title/><path d="M12.25,2A9.81,9.81,0,0,0,4.77,5.46L3.41,4.25a1,1,0,0,0-1.07-.16A1,1,0,0,0,1.75,5V9a1,1,0,0,0,1,1h4.5a1,1,0,0,0,.93-.64,1,1,0,0,0-.27-1.11L6.26,6.78a7.86,7.86,0,0,1,6-2.78A8,8,0,1,1,4.72,14.67a1,1,0,0,0-1.89.66A10,10,0,1,0,12.25,2Z" fill="#C9C9C9"/><path d="M16,16a1,1,0,0,1-.6-.2l-4-3A1,1,0,0,1,11,12V8a1,1,0,0,1,2,0v3.5l3.6,2.7a1,1,0,0,1,.2,1.4A1,1,0,0,1,16,16Z" fill="#C9C9C9"/></svg><a href="${arrUrl[n]}">
2136${arrName[n]}</a><span data-title="${arrName[n]}" data-url="${arrUrl[n]}"></span></li>` 2137 $(".group-recent ul").append(html2) 2138 } 2139 } 2140 } 2141 console.log(last_search_name, 'Name') 2142 console.log(last_search_url, 'url') 2143 2144 resultsearch.delegate(".item a", "click", function(){ 2145 let name = [last_search_name] 2146 let url = [last_search_url] 2147 name.push($(this).attr('data-title')) 2148 url.push($(this).attr('data-url')) 2149 setCookie("last_search_name",name,7); 2150 setCookie("last_search_url",url,7); 2151 }) 2152 2153 $(".delete-all-history").click(function() { 2154 setCookie("last_search_name",null,0); 2155 setCookie("last_search_url",null,0); 2156 $(".last-search").hide(); 2157 setTimeout(function(){ 2158 location.reload(); 2159 }, 500); 2160 }) 2161 2162 $("#search-trigger").click(function(){ 2163 search_open() 2164 }) 2165 $(".icon-search-mobile").click(function(){ 2166 search_open() 2167 }) 2168 $(".search-header svg").click(function(){ 2169 search_close() 2170 }) 2171 $(".icon-key-mobile").click(function(){ 2172 search_close() 2173 }) 2174 2175 function search_open() { 2176 $("body").addClass("search-popup-open") 2177 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").hide() 2178 $("#search-popup, .search-header svg, .icon-key-mobile").show() 2179 $(".search-popup").focus() 2180 $('.popup-recommend')[0].swiper.update(); 2181 } 2182 function search_close() { 2183 $("body").removeClass("search-popup-open") 2184 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").show() 2185 $("#search-popup, .search-header svg, .icon-key-mobile").hide() 2186 searchInput.val("") 2187 resultsearch.hide() 2188 resultrecommend.show() 2189 } 2190 2191 $(".site-overlay").click(function(){ 2192 search_close() 2193 }) 2194 </script>
2194 2195 2196 </div> 2197 </div> 2198 2199 <div id="PageContainer" class="is-moved-by-drawerx" style="background-color: #000000;"> 2200 <main class="main-content pt-0" role="main"> 2201 2202 <div id="breadcrumbProduct" class="d-none d-lg-block"> 2203 <style> 2204 #breadcrumbProduct { 2205 padding: 20px 0; 2206 } 2207 #breadcrumbProduct ul { 2208 display: flex; 2209 padding: 0; 2210 list-style: none; 2211 margin: 0; 2212 gap: 12px; 2213 } 2214 #breadcrumbProduct ul li { 2215 text-transform: uppercase; 2216 margin: 0; 2217 font-size: 12px; 2218 } 2219 #breadcrumbProduct ul li a { 2220 color: #757575; 2221 } 2222 2223 #breadcrumbProduct ul li svg { 2224 width: 10px; 2225 height: 10px; 2226 padding: 0; 2227 color: #757575; 2228 vertical-align: middle; 2229 } 2230 </style> 2231 <div class="container" style="color: #ffffff;"> 2232 <ul role="navigation" aria-label="breadcrumbs"> 2233 <li><a href="https://stopgreenwash.org/criteria/" style="color: #ffffff;">BETATOGEL</a></li> 2234 <li><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2235 <path d="M1.51673 0.0583496L6.2334 4.77502L1.51673 9.49168L0.933398 8.90002L5.0584 4.77502L0.933398 0.650016L1.51673 0.0583496Z" fill="#757575"/> 2236 </svg></li> 2237 <li><a href="https://stopgreenwash.org/criteria/" style="color: #ffffff;">TOTO MACAU</a></li> 2238 <li><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2239 <path d="M1.51673 0.0583496L6.2334 4.77502L1.51673 9.49168L0.933398 8.90002L5.0584 4.77502L0.933398 0.650016L1.51673 0.0583496Z" fill="#757575"/> 2240 </svg></li> 2241 <li><a href="https://stopgreenwash.org/criteria/" style="color: #ffffff;">BANDAR TOTO MACAU</a></li> 2242 <li><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2243 <path d="M1.51673 0.0583496L6.2334 4.77502L1.51673 9.49168L0.933398 8.90002L5.0584 4.77502L0.933398 0.650016L1.51673 0.0583496Z" fill="#757575"/> 2244 </svg></li> 2245 <li><a style="color: #ffffff;">BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026</a></li> 2246 2247 2248 </ul> 2249 </div> 2250 2251 </div> 2252 2253 2254 <div id="shopify-section-Product" class="shopify-section product-section mt-0"><link href="https://ampa-hnst.b-cdn.net/global-warna.css" rel="stylesheet" type="text/css" media="all" /> 2255 2256 2257 <style> 2258 .bg-card { 2259 background-color: #000000; 2260 } 2261 </style> 2262 2263 <!-- /templates/product.liquid --> 2264 2265 2266 <!-- <div itemscope itemtype="http://schema.org/Product"> --> 2267 2268 2269 <div class="product-standing-flower" data-product-type="flowerBoard"> 2270 <meta itemprop="url" content="https://stopgreenwash.org/criteria/"> 2271 <meta itemprop="image" content="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg"> 2272 2273 2274 2275 <input id="data-sku" type="hidden" value="OBVSTF1086"> 2276 <div class="product-single" style="background-image: url(https://situsbetatogel.b-cdn.net/stopgreenwash/bg-toto-macau.webp); background-attachment: fixed;"> 2277 <div id="product-top" class="container"> 2278 <div class="row bg-card product-sticky" style="background-color: rgba(0, 0, 0, 0.1);backdrop-filter: blur(25px); padding: 20px 25px;border-radius: 10px;"> 2279 <div id="product-image" class="col-lg-7 text-center"> 2280 <div class="product-image"> 2281 <div class="row no-gutters"> 2282 2283 <div id="product-featured-image" class="row w-100"> 2284 2285 <div id="thumb-image-product" class="col-lg-2 col-12 d-none d-lg-block"> 2286 2287 <div class="swiper-container gallery-thumbs" style="min-height: 500px"> 2288 <ul class="list-unstyled slider swiper-wrapper slider-nav ProductThumbs thumbnails" id="ProductThumbsx"> 2289 2290 <li class="swiper-slide" data-type="image"> 2291 <a 2292 href="files/Blossom-Shine-WM.jpg" 2293 data-standard="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2294 data-image="files/Blossom-Shine-WM.jpg" 2295 data-position="1" 2296 class="product-single__thumbnail" 2297 > 2298 <img 2299 class="lazyload w-100" 2300 src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2301 alt="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026" 2302 width="" 2303 height="" 2304 > 2305 </a> 2306 </li> 2307 2308 2309 2310 2311 <li class="swiper-slide" data-type="image"> 2312 <a 2313 href="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2314 data-standard="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2315 data-image="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2316 data-position="2" 2317 class="product-single__thumbnail" 2318 > 2319 <img 2320 class="lazyload w-100" 2321 src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2322 alt="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026" 2323 width="" 2324 height="" 2325 > 2326 </a> 2327 </li> 2328 2329 2330 2331 2332 <li class="swiper-slide" data-type="image"> 2333 <a 2334 href="files/Blossom-Shine_3-WM.jpg" 2335 data-standard="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2336 data-image="files/Blossom-Shine_3-WM.jpg" 2337 data-position="3" 2338 class="product-single__thumbnail" 2339 > 2340 <img 2341 class="lazyload w-100" 2342 src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2343 alt="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026" 2344 width="" 2345 height="" 2346 > 2347 </a> 2348 </li> 2349 2350 2351 2352 2353 <li class="swiper-slide" data-type="image"> 2354 <a 2355 href="files/Blossom-Shine_4.jpg" 2356 data-standard="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2357 data-image="files/Blossom-Shine_4.jpg" 2358 data-position="4" 2359 class="product-single__thumbnail" 2360 > 2361 <img 2362 class="lazyload w-100" 2363 src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2364 alt="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026" 2365 width="" 2366 height="" 2367 > 2368 </a> 2369 </li> 2370 2371 2372 2373 </ul> 2374 </div> 2375 2376 </div> 2377 2378 <div 2379 id="featured-image-product" 2380 class="col-lg-10 col-12 d-none d-lg-block" 2381 > 2382 <div class="swiper-container gallery-top"> 2383 <div class="swiper-slide product-single__image"> 2384 2385 <div class="product-single__photos slider slider-for" id="ProductPhoto"> 2386 2387 2388 <div class="easyzoom easyzoom--overlay easyzoom--with-thumbnails"> 2389 <a href="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg"> 2390 <img 2391 src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2392 alt="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026" 2393 id="ProductPhotoImg" 2394 class="lazyload" 2395 > 2396 2397 </a> 2398 </div> 2399 </div> 2400 2401 </div> 2402 <div class="swiper-slide product-single__video" style="display: none"> 2403 <video 2404 src="https://cdn.shopify.com/videos/c/vp/05d379ea115d41c2bd0f7d08b1496bd9/05d379ea115d41c2bd0f7d08b1496bd9.HD-1080p-7.2Mbps-24002195.mp4" 2405 playsinline 2406 loop 2407 muted 2408 ></video> 2409 </div> 2410 </div> 2411 </div> 2412 </div> 2413 2414 <div id="featured-image-product2" class="col-12 d-lg-none"> 2415 <div class="swiper-container gallery-mobile"> 2416 <ul class="swiper-wrapper"> 2417 <li class="swiper-slide img"> 2418 2419 <img 2420 class="swiper-lazy" 2421 src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2422 data-src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2423 alt="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026" 2424 width="" 2425 height="" 2426 > 2427 2428 </li> 2429 2430 2431 <li class="swiper-slide img"> 2432 2433 <img 2434 class="swiper-lazy" 2435 src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2436 data-src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2437 alt="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026" 2438 width="" 2439 height="" 2440 > 2441 2442 </li> 2443 2444 2445 <li class="swiper-slide img"> 2446 2447 <img 2448 class="swiper-lazy" 2449 src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2450 data-src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2451 alt="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026" 2452 width="" 2453 height="" 2454 > 2455 2456 </li> 2457 2458 2459 <li class="swiper-slide img"> 2460 2461 <img 2462 class="swiper-lazy" 2463 src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2464 data-src="https://situsbetatogel.b-cdn.net/stopgreenwash/622245132_18424797295142788_7443274050026751619_n.jpg" 2465 alt="BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026" 2466 width="" 2467 height="" 2468 > 2469 2470 </li> 2471 2472 2473 </ul> 2474 2475 <div class="swiper-button-prev"><svg class="icon icon-chevron-left" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="7" height="12" viewBox="0 0 7 12"> <circle cx="60%" cy="50%" r="12" fill="transparent" /> <path d="M6.35355339,10.6464466 C6.54881554,10.8417088 6.54881554,11.1582912 6.35355339,11.3535534 C6.15829124,11.5488155 5.84170876,11.5488155 5.64644661,11.3535534 L0.646446609,6.35355339 C0.451184464,6.15829124 0.451184464,5.84170876 0.646446609,5.64644661 L5.64644661,0.646446609 C5.84170876,0.451184464 6.15829124,0.451184464 6.35355339,0.646446609 C6.54881554,0.841708755 6.54881554,1.15829124 6.35355339,1.35355339 L1.70710678,6 L6.35355339,10.6464466 Z"/> </svg></div> 2476 <div class="swiper-button-next"><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="7" height="10" viewB
2476ox="0 0 7 10" fill="none"> 2477 <path d="M1.51673 0.0583496L6.2334 4.77502L1.51673 9.49168L0.933398 8.90002L5.0584 4.77502L0.933398 0.650016L1.51673 0.0583496Z" fill="#757575"/> 2478 </svg></div> 2479 2480 <!-- Add Pagination --> 2481 <div class="swiper-pagination"></div> 2482 2483 </div> 2484 </div> 2485 2486 <div class="product-m-pageleb-video col-12 text-center d-lg-none"> 2487 <!-- product video --> 2488 <style> 2489 .c-pdp-product-info { 2490 background-color: #000000 !important; 2491 padding: 12px; 2492 margin: 0; 2493 color: white; 2494 } 2495 .view-video{display:block; margin:auto; padding:5px 10px;font-size:16px;font-weight:bold;border:2px solid #ffffff;background:#fff;} 2496 .view-video .icon-play{fill:#ffffff;vertical-align: middle;} 2497 .video-modal{display:none;position:fixed;background: rgba(0,0,0,.5); width:100%; height:100%; overflow:auto; z-index:1; top:0;left:0;} 2498 .close-video{position:absolute;right:9px; top:8%;z-index:2;padding:5px;} 2499 .close-video .icon{width:30px;height:30px;} 2500 /*responsive iframe */ 2501 .video-container {position: relative;padding-bottom: 48.25%;padding-top: 35px;height: 0;box-shadow: 0 4px 5px 0 rgba(0,0,0,0.14), 0 1px 10px 0 rgba(0,0,0,0.12), 0 2px 4px -1px rgba(0,0,0,0.3);} 2502 .video-container iframe {position: absolute;top:60%;left: 0;width: 100%;height: 100%;} 2503 2504 .youtube { 2505 background-color: #000; 2506 margin-bottom: 30px; 2507 position: relative; 2508 padding-top: 56.25%; 2509 overflow: hidden; 2510 cursor: pointer; 2511 width: 100%; 2512 } 2513 .swiper-slide .youtube { 2514 max-width: 480px; 2515 } 2516 .youtube img { 2517 width: 100%; 2518 top: -16.82%; 2519 left: 0; 2520 opacity: 0.7; 2521 } 2522 .youtube .play-button { 2523 width: 90px; 2524 height: 60px; 2525 background-color: #333; 2526 box-shadow: 0 0 30px rgba( 0,0,0,0.6 ); 2527 z-index: 1; 2528 opacity: 0.8; 2529 border-radius: 6px; 2530 } 2531 .youtube .play-button:before { 2532 content: ""; 2533 border-style: solid; 2534 border-width: 15px 0 15px 26.0px; 2535 border-color: transparent transparent transparent #fff; 2536 } 2537 .youtube img, 2538 .youtube .play-button { 2539 cursor: pointer; 2540 } 2541 .youtube img, 2542 .youtube iframe, 2543 .youtube .play-button, 2544 .youtube .play-button:before { 2545 position: absolute; 2546 } 2547 .youtube .play-button, 2548 .youtube .play-button:before { 2549 top: 50%; 2550 left: 50%; 2551 transform: translate3d( -50%, -50%, 0 ); 2552 } 2553 .youtube iframe { 2554 height: 100%; 2555 width: 100%; 2556 top: 0; 2557 left: 0; 2558 } 2559 </style> 2560 2561 2562 </div> 2563 </div> 2564 2565 <div class="product-desc-add position-relative d-none d-lg-block m-0"> 2566 2567 </div> 2568 2569
2569<script> 2570 if ($(window).width() < 991) { 2571 var direction = 'horizontal' 2572 } else { 2573 var direction = 'vertical' 2574 $(".gallery-thumbs").height($("#ProductPhotoImg").height()) 2575 } 2576 var swiper = new Swiper('.gallery-thumbs', { 2577 2578 direction, 2579 slidesPerView: 4.5, 2580 spaceBetween: 12, 2581 navigation: { 2582 nextEl: '.swiper-button-next', 2583 prevEl: '.swiper-button-prev', 2584 } 2585 }); 2586 2587 var swiper = new Swiper('.gallery-mobile', { 2588 //loop: true, 2589 lazy: true, 2590 speed: 300, 2591 resistance : true, 2592 resistanceRatio : 0, 2593 freeModeMomentumRatio : 0.45, 2594 freeModeMomentumVelocityRatio : 1.5, 2595 navigation: { 2596 nextEl: '.swiper-button-next', 2597 prevEl: '.swiper-button-prev', 2598 }, 2599 pagination: { 2600 el: '.swiper-pagination' 2601 }, 2602 useCSS3Transforms: false, 2603 loop: false, 2604 on: { 2605 init: function () { 2606 console.log('swiper initialized'); 2607 var currentVideo = $("[data-swiper-slide-index=" + this.realIndex + "]").find("video"); 2608 currentVideo.trigger('play'); 2609 }, 2610 }, 2611 }); 2612 2613 /* GET ALL VIDEOS */ 2614 var sliderVideos = $(".swiper-slide video"); 2615 2616 /* SWIPER API - Event will be fired after animation to other slide (next or previous) */ 2617 swiper.on('slideChange', function () { 2618 console.log('slide changed'); 2619 /* stop all videos */ 2620 sliderVideos.each(function( index ) { 2621 this.currentTime = 0; 2622 }); 2623 2624 /* SWIPER GET CURRENT AND PREV SLIDE (AND The VIDEO INSIDE) */ 2625 var prevVideo = $(`[data-swiper-slide-index="${this.previousIndex}]"`).find("video"); 2626 var currentVideo = $(`[data-swiper-slide-index="${this.realIndex}"]`).find("video"); 2627 prevVideo.trigger('stop'); 2628 currentVideo.trigger('play'); 2629 }); 2630 2631 2632 $("[data-video]").click(function(){ 2633 const file = $(this).data("video") 2634 $(".product-single__video").show() 2635 $(".product-single__image").hide() 2636 $(".product-single__video").find("video").attr("src", file) 2637 $(".product-single__video").find("video")[0].play(); 2638 }) 2639 $("[data-image]").click(function(){ 2640 $(".product-single__video").hide() 2641 $(".product-single__image").show() 2642 $(".product-single__video").find("video")[0].pause(); 2643 }) 2644 2645 $("#product-image .swiper-slide").each(function(){ 2646 let width = $(this).width() 2647 $(this).height(width) 2648 }) 2649 2650 $(window).resize(function() { 2651 $("#product-image .swiper-slide").each(function(){ 2652 let width = $(this).width() 2653 $(this).height(width) 2654 }) 2655 }) 2656 </script>
2656 2657 2658 </div> 2659 2660 2661 <div class="grid__item_product-info mb-3"> 2662 <div class="c-pdp-product-info"> 2663<h2 style="color: #00fffb;">BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026</h2> 2664<p style="text-align: justify; color: #ffffff;"><a href="https://stopgreenwash.org/criteria/" style="color: #00fffb;">BETATOGEL</a> hadir sebagai platform <a href="https://stopgreenwash.org/criteria/" style="color: #00fffb;">bandar toto macau</a> dan togel macau resmi terpercaya yang fokus pada penyajian informasi yang rapi, jelas, dan mudah diakses. Setiap data dan pembaruan disusun secara terstruktur agar pengguna dapat memperoleh informasi terbaru tanpa kesulitan.</p> 2665<p style="text-align: justify; color: #ffffff;">BETATOGEL menyediakan pembaruan data secara rutin sesuai jadwal resmi. Sistem yang stabil memungkinkan akses berjalan lancar di berbagai perangkat, sehingga pengguna dapat memantau informasi kapan saja dengan lebih nyaman.</p> 2666<p style="text-align: justify; color: #ffffff;">Selain itu, tampilan BETATOGEL dirancang sederhana dan responsif agar memudahkan pengguna dalam menemukan informasi yang dibutuhkan. Mulai dari data hasil hingga pembaruan terbaru, semua disajikan dengan format yang jelas dan mudah dipahami.</p> 2667 2668 </ul> 2669 </div> 2670 </div> 2671 <style> 2672 .c-pdp-product-info__service--active { 2673 font-size: 12px; 2674 padding-left: 10px; 2675 text-align: left; 2676 max-width: 550px; 2677 margin: auto; 2678 } 2679 .c-pdp-product-info__service--active li { 2680 list-style: disc; 2681 } 2682 .c-pdp-product-info { 2683 background-color: #f5f5f5; 2684 padding: 12px; 2685 margin: 0; 2686 } 2687 .freeship em { 2688 font-style: italic; 2689 font-size: 12px !important; 2690 } 2691 2692 2693 </style> 2694 2695
2695<script> 2696 $(document).ready(function(){ 2697 if ( $(".c-pdp-product-info__service li").length == 1 ) { 2698 $(".c-pdp-product-info__service").addClass("no-bullet"); 2699 $(".c-pdp-product-info__service li").addClass("no-bullets"); 2700 } 2701 }); 2702 </script>
2702 2703 2704 </div> 2705 <div id="product-meta" class="col-lg-5 p-0"> 2706 <div class="product-meta"> 2707 <style> 2708 .product-meta--review {margin-top:10px} 2709 .freeship * {font-size: 14px !important;font-style: normal;} 2710 </style> 2711 <h1 itemprop="name" class="mb-2" style="color: #00fffb; font-weight: bold;">BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026</h1> 2712 2713 <div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 2714 <meta itemprop="priceCurrency" content="IDR"> 2715 2716 <link itemprop="availability" href="https://schema.org/InStock"> 2717
2717<script 2718 type="text/javascript" 2719 src="//platform-api.sharethis.com/js/sharethis.js#property=5acdc0aa3ef3c0001396fd50&product=custom-share-buttons" 2720 async="async" 2721 ></script>
2721 2722 <span class="visually-hidden">Translation missing: en.products.general.regular_price</span> 2723 2724 <span class="visually-hidden">Translation missing: en.products.general.sale_price</span> 2725 2726 <div class="row no-gutters mb-3"> 2727 <span 2728 id="ProductPrice" 2729 class="h2 ProductPrice" 2730 itemprop="price" 2731 content="835000" style="color: #ffffff;" 2732 > 2733 Rp 10.000 2734 </span> 2735 <div class="discount-product-detail"> 2736 <p id="ComparePrice" class="ComparePrice mt-2 mt-lg-0"> 2737 Rp 100.000 2738 </p> 2739 <span class=" tag-discount"> 2740 2741 2742 <span id="newDiscount" class="product-tag persentase-discount hide"> 2743 (90%) 2744 </span><br> 2745 2746 </span> 2747 </div> 2748 </div> 2749 2750 <div class="row no-gutters meta-sds"> 2751 <div class="col-12 mb-2 mb-lg-0 stock-info"> 2752 2753 2754 <span 2755 id="ProductStock-Product" 2756 class="product-single__stock mb-2 hide" 2757 > 2758 2759 2760 2761 2762 Barang dikirim pada 2763 2764 2765 2766 </span> 2767 2768 <style> 2769 .short-desc-desktop { 2770 margin-bottom: 2rem; 2771 color: white; 2772 } 2773 .short-desc ul li:nth-child(n + 4) { 2774 display: none; 2775 } 2776 .short-desc ul li.showList:nth-child(n + 4) { 2777 display: list-item; 2778 } 2779 label.more { 2780 display: none; 2781 } 2782 label.more.showMe { 2783 display: block; 2784 font-size: 12px; 2785 text-transform: uppercase; 2786 font-weight: 700; 2787 cursor: pointer; 2788 } 2789 </style> 2790 2791 <div class="short-desc-desktop d-none d-lg-block"> 2792 <div class="short-desc"> 2793 2794 <p>BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026</p> 2795 </div> 2796 <label class="more">Show More â</label> 2797 </div><br> 2798 2799 2800
2800<script> 2801 var liCount; 2802 $(document).ready(function () { 2803 $(".short-desc ul").each(function() { 2804 liCount = $(this).children("li").length; 2805 if (liCount > 3) { 2806 $(this).parent(".short-desc").next(".more").addClass("showMe"); 2807 } 2808 }); 2809 2810 $(".more").click(function () { 2811 //$(".short-desc").find("li").addClass("showList"); 2812 // $(this).hide(); 2813 $("#product-desc").find("ul").show() 2814 $('html, body').animate({ 2815 scrollTop: $("#product-desc").offset().top - 250 2816 }, 2000); 2817 $("#product-desc").css("height","auto"); 2818 $("#more_content").remove(); 2819 $(".product-spec").append("<div id='less_content' class='readmore'><span class='less_content'>Less</span></div>") 2820 }); 2821 }); 2822 </script>
2822 2823 2824 2825 </div> 2826 </div> 2827 2828 <div id="purchaseProduct"> 2829 2830 2831 2832 2833 <style> 2834 .variant-metafield { 2835 display: block!important; 2836 width: 1px; 2837 padding: 0; 2838 border-color: #fff; 2839 } 2840 .select2-results__option[aria-disabled] { 2841 display: none; 2842 } 2843 2844 .towel-bordir { 2845 width: 100%; 2846 display: flex; 2847 align-items: center; 2848 justify-content: space-around; 2849 } 2850 </style> 2851 2852 2853 2854 2855
2855<script> 2856 2857 2858 </script>
2858 2859 2860 2861 2862 2863 2864 2865 <select 2866 name="id[]" 2867 id="productSelect" 2868 class="product-single__variants ignore hide hide" 2869 > 2870 2871 2872 2873 <option 2874 2875 selected="selected" 2876 2877 data-sku="OBVSTF1086" 2878 value="44083045826775" 2879 > 2880 Default Title 2881 </option> 2882 2883 2884 2885 </select> 2886 2887
2887<script src="//outerbloom.com/cdn/shop/t/138/assets/jquery.magnific-popup.min.js?v=184369421263510081681752652422" type="text/javascript"></script>
2887 2888 2889
2889<script> 2890 $('.size-chart-open-popup').magnificPopup({ 2891 type:'inline', 2892 midClick: true 2893 }); 2894 </script>
2894 2895 2896 2897 <div class="upload-image-preview"> 2898 2899 <style> 2900 .file-dnd * { 2901 margin: 0; 2902 padding: 0; 2903 box-sizing: border-box; 2904 } 2905 .file-dnd { 2906 width: 100%; 2907 height: 250px; 2908 border: 1px solid #ddd; 2909 border-radius: 10px; 2910 padding: 15px; 2911 display: flex; 2912 flex-direction: column; 2913 gap: 10px; 2914 /* box-shadow: 0px 2px 10px 2px rgba(0,0,0,0.05); */ 2915 margin: auto; 2916 } 2917 .file-dnd input { 2918 display: none; 2919 } 2920 .file-dnd .before-upload { 2921 border: 1px dashed #888; 2922 flex: 1; 2923 border-radius: 5px; 2924 display: flex; 2925 justify-content: center; 2926 align-items: center; 2927 text-align: center; 2928 cursor: pointer; 2929 } 2930 .file-dnd .before-upload > div { 2931 display: flex; 2932 flex-direction: column; 2933 align-items: center; 2934 gap: 8px; 2935 } 2936 .file-dnd .before-upload > div h4 { 2937 width: 150px; 2938 } 2939 .file-dnd .before-upload > div p { 2940 font-size: 12px !important; 2941 color: #555; 2942 } 2943 .file-dnd.active .before-upload { 2944 border: 1px solid #5750d9; 2945 background-color: #f5f5ff; 2946 } 2947 .file-dnd .after-upload { 2948 position: relative; 2949 display: none; 2950 } 2951 .file-dnd .after-upload img { 2952 width: 100%; 2953 border-radius: 5px; 2954 max-height: 180px; 2955 object-fit: contain; 2956 display: block; 2957 } 2958 .file-dnd .after-upload .clear-btn { 2959 position: absolute; 2960 top: 10px; 2961 right: 10px; 2962 background: rgba(0, 0, 0, 0.5); 2963 width: 15px; 2964 height: 15px; 2965 text-align: center; 2966 line-height: 15px; 2967 border-radius: 50%; 2968 color: #fff; 2969 cursor: pointer; 2970 font-size: 14px; 2971 } 2972 </style> 2973 2974 <div 2975 class="file-dnd mb-3" 2976 2977 style="display: none" 2978 2979 > 2980 <label for="upload-photo">Upload your Photo:</label> 2981 <input type="file" id="upload-photo" accept="image/*"> 2982 <input type="hidden" data-properties="Photo"> 2983 <div class="before-upload"> 2984 <div> 2985 <svg id="surface1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="33.053" height="41.719" viewBox="0 0 33.053 41.719"> 2986 <path id="Path_2149" data-name="Path 2149" d="M22.982.322A1.009,1.009,0,0,0,22.257,0H5.982A5.505,5.505,0,0,0,.5,5.472V36.247a5.505,5.505,0,0,0,5.482,5.472H28.071a5.505,5.505,0,0,0,5.482-5.472V11.81a1.085,1.085,0,0,0-.292-.705Zm.292,3.235,6.883,7.225H25.683a2.4,2.4,0,0,1-2.409-2.4Zm4.8,36.147H5.982a3.49,3.49,0,0,1-3.467-3.457V5.472A3.49,3.49,0,0,1,5.982,2.015H21.259V8.384A4.409,4.409,0,0,0,25.683,12.8h5.855V36.247A3.484,3.484,0,0,1,28.071,39.7Zm0,0" transform="translate(-0.5)" fill="#ababab"></path> 2987 <path id="Path_2150" data-name="Path 2150" d="M106.767,401.934H90.18a1.008,1.008,0,1,0,0,2.015h16.6a1.008,1.008,0,1,0-.01-2.015Zm0,0" transform="translate(-81.947 -369.183)" fill="#ababab"></path> 2988 <path id="Path_2151" data-name="Path 2151" d="M120.143,178.328l4.152-4.464v11a1.008,1.008,0,0,0,2.015,0v-11l4.152,4.464a1.005,1.005,0,0,0,1.471-1.371l-5.905-6.339a1,1,0,0,0-1.471,0l-5.905,6.339a1,1,0,0,0,.05,1.421A1.028,1.028,0,0,0,120.143,178.328Zm0,0" transform="translate(-108.776 -156.421)" fill="#ababab"></path> 2989 </svg> 2990 2991 <h4>Drag & Drop Photo file or Browse</h4> 2992 <p>Supports: JPEG, PNG, GIF, TIFF</p> 2993 </div> 2994 </div> 2995 <div class="after-upload"> 2996 <div class="clear-btn">×</div> 2997 <img src="" width="" height=""> 2998 </div> 2999 </div> 3000
3000<script> 3001 function applyDndFile(el) { 3002 const parent = document.querySelector(".file-dnd") 3003 const beforeUploadEl = el.querySelector(".before-upload") 3004 const afterUploadEl = el.querySelector(".after-upload") 3005 const inputFile = el.querySelector("input[type=file]") 3006 const imagePreview = el.querySelector(".after-upload img") 3007 const clearBtn = el.querySelector(".after-upload .clear-btn") 3008 const inputProps = parent.querySelector("[data-properties]"); 3009 3010 async function upload(name, uri, type) { 3011 try { 3012 const filename = name.split('.')[0] 3013 let formData = new FormData(); 3014 formData.append("file", uri); 3015 const response = await fetch(`${host}/upload?name=${filename}&dir=gift&type=${type}`, { 3016 method: "POST", 3017 body: formData 3018 }) 3019 if(response) { 3020 const res = await response.json() 3021 return res 3022 } 3023 } catch(err){ 3024 console.log(err) 3025 } 3026 } 3027 3028 function showImagePreview(img) { 3029 if(img){ 3030 const blobUrl = URL.createObjectURL(img) 3031 imagePreview.src = blobUrl 3032 afterUploadEl.style.display = "block" 3033 beforeUploadEl.style.display = "none" 3034 } 3035 } 3036 3037 beforeUploadEl.addEventListener("click", (e) => { 3038 e.preventDefault() 3039 inputFile.click() 3040 }) 3041 3042 inputFile.addEventListener("change", async (e) => { 3043 e.preventDefault() 3044 showImagePreview(e.target.files[0]) 3045 var uploadData = await upload(e.target.files[0].name, e.target.files[0], e.target.files[0].type) 3046 inputProps.value = uploadData?.url 3047 }) 3048 3049 clearBtn.addEventListener("click", (e) => { 3050 afterUploadEl.style.display = "none" 3051 beforeUploadEl.style.display = "flex" 3052 inputProps.value = "" 3053 }) 3054 3055 beforeUploadEl.addEventListener("dragover", (e) => { 3056 e.preventDefault() 3057 el.classList.add("active") 3058 }) 3059 3060 beforeUploadEl.addEventListener("dragleave", (e) => { 3061 e.preventDefault() 3062 el.classList.remove("active") 3063 }) 3064 3065 beforeUploadEl.addEventListener("drop", async (e) => { 3066 e.preventDefault() 3067 el.classList.remove("active") 3068 showImagePreview(e.dataTransfer.files[0]) 3069 var uploadData = await upload(e.dataTransfer.files[0].name, e.dataTransfer.files[0], e.dataTransfer.files[0].type) 3070 console.log(uploadData) 3071 inputProps.value = uploadData?.url 3072 }) 3073 } 3074 3075 applyDndFile(document.querySelector(".file-dnd")) 3076 3077 $(document).ready(function(){ 3078 $(".variant-swatch").change(function(){ 3079 const v = $(this).val().toLowerCase() 3080 const list = ["photo", "custom one side", "custom two side", "small", "big"] 3081 if(list.some(item => v.includes(item))) return $(".file-dnd").show() 3082 $(".file-dnd").hide() 3083 $(".file-dnd").find("[data-properties]").val("") 3084 $(".after-upload").hide() 3085 $(".before-upload").css("display", "flex") 3086 }) 3087 }) 3088 </script>
3088 3089 3090 </div> 3091 3092 3093 <div class="delivery-city mb-4"> 3094 <a href="https://situsbetatogel.b-cdn.net/stopgreenwash/"> 3095 <center><img src="https://situsbetatogel.b-cdn.net/stopgreenwash/daftar-betatogel.gif" alt="logo-daftar" style="width: 260px; margin-top: -20px;"></center></a><br> 3096 <h4 class="fw-600 text-uppercase mb-15" style="color: #00fffb; font-weight: bold;">SUDAH WAKTUNYA UNTUK BERMAIN DI BETATOGEL UNTUK JACKPOT JUTAAN RUPIAH</h4> 3097 <div class="row justify-content-between m-0"> 3098 <select id="cities" class="form-control select-search" required> 3099 <option value="">Gabung sekarnag dan dapatkan bonus deposit serta new member hanya di BETATOGEL</option> 3100 </select> 3101 </div> 3102 </div> 3103 3104 <style> 3105 @media (max-width: 768px) { 3106 .select2-search__field { 3107 pointer-events: none !important; 3108 } 3109 3110 .select2-search { 3111 display: none !important; 3112 } 3113 } 3114 </style> 3115 3116
3116<script> 3117 $(document).ready(function() { 3118 // Check if mobile 3119 if (window.innerWidth <= 768) { 3120 // When cities select2 opens on mobile, remove focus from search 3121 $('#cities').on('select2:open', function() { 3122 setTimeout(function() { 3123 $('.select2-search__field').blur(); 3124 $('.select2-search__field').prop('readonly', true); 3125 }, 100); 3126 }); 3127 } 3128 }); 3129 </script>
3129 3130 3131 <style> 3132 .icon-img-footer { 3133 width: 80px; 3134 padding: 0px 5px; 3135 } 3136 @media (min-width: 768px) { 3137 .icon-img-footer { 3138 width: 120px; 3139 } 3140 } 3141 @media (min-width: 992px) { 3142 .icon-img-footer { 3143 width: 120px; 3144 } 3145 } 3146 3147 3148 </style> 3149<style> 3150 :root { 3151 --brand: #00fffb; 3152 --brand-mid: #009297; 3153 --brand-dark: #006962; 3154 --border: #e5e7eb; 3155 --bg: #fff; 3156 --shadow: 0 6px 15px rgba(0, 0, 0, .08); 3157 } 3158 3159 .app-card { 3160 max-width: 650px; 3161 margin: 25px auto; 3162 background: var(--bg); 3163 border-radius: 14px; 3164 overflow: hidden; 3165 box-shadow: var(--shadow); 3166 border: 1px solid var(--border); 3167 transition: transform .2s, box-shadow .3s; 3168 font-family: system-ui, Arial, sans-serif; 3169 font-size: .92rem; 3170 } 3171 3172 .app-card:hover { 3173 transform: translateY(-2px); 3174 box-shadow: 0 10px 25px rgba(0, 0, 0, .12); 3175 } 3176 3177 .app-header { 3178 padding: 12px 16px; 3179 text-align: center; 3180 background: linear-gradient(135deg, #000000, #004eff, #000000); 3181 color: #fff; 3182 font-weight: 800; 3183 font-size: 1.15rem; 3184 text-shadow: 0 1px 2px rgba(0, 0, 0, .3); 3185 } 3186 3187 .app-table { 3188 width: 100%; 3189 border-collapse: collapse; 3190 } 3191 3192 .app-table th, 3193 .app-table td { 3194 padding: 8px 12px; 3195 vertical-align: middle; 3196 } 3197 3198 .app-table th { 3199 width: 35%; 3200 background: #e7e7e7; 3201 color: #585858; 3202 font-weight: 700; 3203 letter-spacing: .2px; 3204 text-transform: uppercase; 3205 font-size: .85rem; 3206 } 3207 3208 .app-table td { 3209 border-bottom: 1px solid var(--border); 3210 color: #1f1f1f; 3211 font-size: .9rem; 3212 text-align: center; 3213 } 3214 3215 @media (max-width: 640px) { 3216 .app-table, 3217 .app-table tbody, 3218 .app-table tr, 3219 .app-table th, 3220 .app-table td { 3221 display: block; 3222 width: 100%; 3223 } 3224 } 3225 3226 .review-section { 3227 max-width: 850px; 3228 margin: 30px auto; 3229 display: flex; 3230 flex-direction: column; 3231 gap: 18px; 3232 font-family: system-ui, Arial, sans-serif; 3233 } 3234 3235 .review-card { 3236 background: #f5f5f5; 3237 padding: 16px 20px; 3238 border-radius: 10px; 3239 border-left: 5px solid #000000; 3240 box-shadow: 0 3px 6px rgba(0, 0, 0, .05); 3241 transition: all .25s ease-in-out; 3242 } 3243 3244 .review-card:hover { 3245 transform: translateY(-3px); 3246 box-shadow: 0 5px 10px rgba(0, 0, 0, .08); 3247 } 3248 3249 .review-author { 3250 font-weight: 700; 3251 color: var(--brand-dark); 3252 margin-bottom: 4px; 3253 display: flex; 3254 align-items: center; 3255 gap: 6px; 3256 font-size: .92rem; 3257 } 3258 3259 .review-author::before { 3260 content: "ð¤"; 3261 font-size: 1rem; 3262 } 3263 3264 .review-card p { 3265 margin: 0; 3266 color: #222; 3267 font-size: .94rem; 3268 } 3269 3270 .review-rating { 3271 margin-left: auto; 3272 font-weight: 700; 3273 } 3274 3275 .stars { 3276 --rating: 5; 3277 --star-size: 1rem; 3278 --star-gap: 2px; 3279 --star-empty: #e5e7eb; 3280 --star-fill: #f4c430; 3281 position: relative; 3282 display: inline-block; 3283 font-size: var(--star-size); 3284 line-height: 1; 3285 letter-spacing: var(--star-gap); 3286 } 3287 3288 .stars::before { 3289 content: "â â â â â "; 3290 color: var(--star-empty); 3291 } 3292 3293 .stars::after { 3294 content: "â â â â â "; 3295 color: var(--star-fill); 3296 position: absolute; 3297 left: 0; 3298 top: 0; 3299 width: calc((var(--rating) / 5) * 100%); 3300 overflow: hidden; 3301 white-space: nowrap; 3302 pointer-events: none; 3303 } 3304 3305 .stars.lg { 3306 --star-size: 1.1rem; 3307 letter-spacing: 3px; 3308 } 3309 3310 .badge { 3311 display: inline-flex; 3312 align-items: center; 3313 gap: 8px; 3314 flex-wrap: wrap; 3315 } 3316 3317 .badge small { 3318 color: #555; 3319 font-weight: 600; 3320 } 3321</style> 3322 3323<div class="review-section"> 3324 <div class="review-card"> 3325 <div class="review-author"> 3326 Bernadya Silalahi
3327 <span class="review-rating stars" style="--rating: 5" aria-label="Rating 5.0 dari 5"></span> 3328 </div> 3329 <p> 3330 BETATOGEL GACORRRR!!! benar-benar platform toto macau terbaik yang ngasih kita informasi yang lengkap jelas pula, jadi gacor tiap harinya gaes 3331 </p> 3332 </div> 3333 3334 <div class="review-card"> 3335 <div class="review-author"> 3336 Fernando Julius Siregar 3337 <span class="review-rating stars" style="--rating: 4.8" aria-label="Rating 4.8 dari 5"></span> 3338 </div> 3339 <p> 3340 BETATOGEL MANTAPP!! data toto macau nya akurat dan lengkap, update nya tepat waktu pula ye kan, semua info akurat gk sampai 1 menit dah keluar wede cepat depo akurat cuman di betatogel 3341 </p> 3342 </div> 3343 3344 <div class="review-card"> 3345 <div class="review-author"> 3346 Nadya Pitaloka Salim 3347 <span class="review-rating stars" style="--rating: 4.9" aria-label="Rating 4.9 dari 5"></span> 3348 </div> 3349 <p> 3350 Akses cepat, respon stabil, gangguan tidak pernah, kurang apa lagi website gacor satu ini? memang kalau mau main yang gacor-gacor aja cuman di BETATOGEL 3351 </p> 3352 </div> 3353</div> 3354 3355 3356 <div class="purchasePopup purchasePopupSpotify" style="display: none;"> 3357 <div class="purchaseArea"> 3358 <div class="sectionPurchase sectionPurchaseSpotify"> 3359 <div class="wrapperPurchase"> 3360 <div class="headerPurchase"> 3361 <h3>personalize spotify photo print</h3> 3362 <a class="close-purchase-popup"> 3363 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 3364 <path d="M1.53287 17.4107L0.588867 16.4667L8.05553 9.00002L0.588867 1.53336L1.53287 0.589355L8.99953 8.05602L16.4662 0.589355L17.4102 1.53336L9.94353 9.00002L17.4102 16.4667L16.4662 17.4107L8.99953 9.94402L1.53287 17.4107Z" fill="black"></path> 3365 </svg> 3366 </a> 3367 </div> 3368 <div class="contentPurchase"> 3369 <div class="spotifyAddons"></div> 3370 </div> 3371 3372 <div class="purchase-button btn-addon row m-0" style="display: none;"> 3373 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 3374 <button class="back-purchase-button back-addon text-uppercase"> 3375 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"> 3376 <path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z" fill="black"></path> 3377 </svg> 3378 <span>Back</span> 3379 </button> 3380 </div> 3381 <div class="col-12 col-lg-10 text-right" style="display: flex;justify-content: end;gap: 20px;"> 3382 <button class="btn next-purchase-button next-addon text-uppercase"> 3383 <span>continue without add-ons</span> 3384 </button> 3385 </div> 3386 </div> 3387 </div> 3388 </div> 3389 </div> 3390 </div> 3391 3392 <style> 3393 #PBarNextFrameWrapper { 3394 display: none; 3395 } 3396 #backgroundPopup { 3397 display: none; 3398 position: fixed; 3399 _position: absolute; 3400 height: 100%; 3401 width: 100%; 3402 top: 0; 3403 left: 0; 3404 background: rgb(117 117 117 / 24%); 3405 z-index: 1; 3406 } 3407 .sectionPurchase { 3408 height: 100%; 3409 position: relative; 3410 max-width: 1344px; 3411 background-color: #fff; 3412 padding: 0; 3413 overflow: hidden; /* Changed from auto to hidden */ 3414 display: flex; 3415 flex-direction: column; 3416 } 3417 .sectionPurchase.purchaseAddonSpotify { 3418 max-width: 1070px!important; 3419 max-height: 765px!important; 3420 } 3421 .sectionPurchaseBoard { 3422 max-width: 872px!important; 3423 max-height: 821px!important; 3424 } 3425 .purchaseAddonSpotify .btn-action { 3426 position: absolute; 3427 bottom: 0; 3428 left: 0; 3429 width: 100%; 3430 display: flex; 3431 gap: 10px; 3432 } 3433 .wrapperPurchase { 3434 position: relative; 3435 height: 100%; 3436 display: flex; 3437 flex-direction: column; 3438 } 3439 3440 /* New styles for scrollable content and sticky button */ 3441 .purchase-content { 3442 flex: 1; 3443 overflow-y: auto; 3444 overflow-x: hidden; 3445 padding: 20px; 3446 } 3447 3448 .purchase-button-wrapper { 3449 position: sticky; 3450 bottom: 0; 3451 background-color: #fff; 3452 border-top: 1px solid #e0e0e0; 3453 padding: 15px 0; 3454 margin-top: auto; 3455 z-index: 10; 3456 } 3457 3458 .purchasePopup { 3459 display: none; 3460 position: fixed; 3461 background: rgb(117 117 117 / 24%); 3462 z-index: 999; 3463 padding: 40px; 3464 font-size: 13px; 3465 top: 0; 3466 left: 0; 3467 width: 100%; 3468 height: 100%; 3469 } 3470 .popupPurchaseClose{ 3471 font-size:14px; 3472 line-height:14px; 3473 right:45px; 3474 top:45px; 3475 position:absolute; 3476 color:#6fa5fd; 3477 font-weight:700; 3478 display:block; 3479 cursor: pointer; 3480 } 3481 3482 .headerPurchase { 3483 margin-bottom: 30px; 3484 display: flex; 3485 justify-content: space-between; 3486 } 3487 3488 .headerPurchase h3 { 3489 font-size: 16px; 3490 text-transform: uppercase; 3491 } 3492 3493 .sectionPurchaseBoard .headerPurchase { 3494 margin-bottom: 15px; 3495 } 3496 3497 .sectionPurchaseBoard .formAddressPurchase { 3498 padding-top: 0;
3499 } 3500 3501 .purchaseArea { 3502 position: relative; 3503 height: 100%; 3504 } 3505 3506 .purchaseArea h4 { 3507 width: 100%; 3508 font-size: 12px; 3509 font-weight: 600; 3510 margin-bottom: 10px; 3511 text-transform: uppercase; 3512 } 3513 3514 .menuPurchase { 3515 margin-bottom: 30px; 3516 } 3517 3518 .menuPurchase ul { 3519 list-style-type: none; 3520 margin: 0; 3521 } 3522 3523 .menuPurchase ul li { 3524 display: inline-block; 3525 border: 1px solid #ffffff; 3526 padding: 5px 20px; 3527 margin-right: 5px; 3528 margin-bottom: 10px; 3529 font-size: 12px; 3530 font-weight: 400; 3531 } 3532 3533 .menuPurchase ul li:hover, .menuPurchase ul li.selected { 3534 background-color: #ffffff; 3535 color: #ffffff; 3536 } 3537 3538 .contentPurchase h5 { 3539 font-size: 12px; 3540 margin-bottom: 10px; 3541 font-weight: 400; 3542 overflow: hidden; 3543 } 3544 3545 /* Card */ 3546 3547 #itemCards { 3548 max-height: 430px; 3549 overflow: auto; 3550 } 3551 3552 .item-cards { 3553 width: 100%; 3554 } 3555 .item-card.selected { 3556 border: 1px solid #ffffff; 3557 } 3558 .item-card:hover { 3559 border: 1px solid #C4C4C4; 3560 } 3561 .item-cards .item-card { 3562 position: relative; 3563 width: calc(33% - 10px); 3564 max-width: calc(33% - 10px); 3565 flex: 0 0 calc(33% - 10px); 3566 margin-bottom: 20px; 3567 } 3568 .item-cards .item-card label, 3569 .item-addons .item-addon label { 3570 position: absolute; 3571 left: 0; 3572 width: 100%; 3573 height: 100%; 3574 } 3575 .item-cards .item-card .card-image img, 3576 .item-addons .item-addon .card-image img { 3577 display: block; 3578 width: 100%; 3579 } 3580 .item-card .card-meta, 3581 .item-addon .card-meta { 3582 padding: 10px 5px 5px; 3583 } 3584 .item-card.selected .card-meta, 3585 .item-addon.selected .card-meta, 3586 .item-card.selected .card-qty { 3587 background-color: #ffffff; 3588 color: #fff; 3589 visibility: visible!important; 3590 } 3591 .item-card:hover .card-meta, 3592 .item-addon:hover .card-meta, 3593 .item-card:hover .card-qty { 3594 background-color: #C4C4C4; 3595 color: #fff; 3596 visibility: visible!important; 3597 } 3598 .item-cards .item-card p, 3599 .item-addons .item-addon p { 3600 font-size: 12px !important; 3601 margin: 0; 3602 font-weight: 600; 3603 } 3604 .item-card .card-meta input, 3605 .item-addon .card-meta input { 3606 display: none; 3607 } 3608 .item-cards .item-card h5, 3609 .item-addons .item-addon h5 { 3610 text-transform: uppercase; 3611 max-height: 35px; 3612 } 3613 3614 @media (max-width: 768px) { 3615 .item-cards .item-card { 3616 width: calc(50% - 10px); 3617 max-width: calc(50% - 10px); 3618 flex: 0 0 calc(50% - 10px); 3619 margin-bottom: 0; 3620 } 3621 } 3622 3623 .card-qty { 3624 display: flex; 3625 padding: 5px; 3626 visibility: hidden; 3627 background-color: #fff !important; 3628 z-index: 999; 3629 } 3630 .card-qty a { 3631 border-width: 1px; 3632 width: 30%; 3633 cursor: pointer; 3634 text-align: center; 3635 align-self: center; 3636 height: 28px; 3637 display: block; 3638 position: relative; 3639 } 3640 .card-qty a svg { 3641 position: absolute; 3642 top: 50%; 3643 left: 50%; 3644 transform: translate(-50%, -50%); 3645 text-align: center; 3646 } 3647 input.btn-qty { 3648 border-width: 0px; 3649 border-radius: 0; 3650 background-color: #fff; 3651 -webkit-appearance: none; 3652 box-shadow: none !important; 3653 -webkit-box-shadow: none !important; 3654 -moz-box-shadow: none!important; 3655 width: 40%; 3656 border-left: 1px solid #c4c4c4; 3657 border-right: 1px solid #c4c4c4; 3658 padding: 0; 3659 } 3660 3661 .sectionPurchaseBoard #itemAddons .item-card { 3662 width: calc(20% - 15px); 3663 max-width: calc(20% - 15px); 3664 flex: 0 0 calc(20% - 15px); 3665 } 3666 3667 .purchase-button { 3668 width: 100%; 3669 padding: 0; /* Reset padding as it's now handled by wrapper */ 3670 margin: 0; 3671 } 3672 3673 .sectionPurchaseBoard .purchase-button { 3674 margin-top: 0 !important; /* Reset margin */ 3675 } 3676 3677 .back-purchase-button, .back-spotify { 3678 width: 139px; 3679 border: 1px solid; 3680 height: 43px; 3681 } 3682 .purchase-button .btn { 3683 width: 297px; 3684 height: 43px; 3685 background-color: #ffffff; 3686 color: #ffffff; 3687 } 3688 .purchase-button .btn[disabled] { 3689 background-color: #EEEEEE; 3690 } 3691 .back-purchase-button svg, .back-spotify svg { 3692 align-self: center; 3693 vertical-align: middle; 3694 margin-right: 10px; 3695 } 3696 3697 #purchaseProduct .row .error { 3698 font-size: 12px !important; 3699 color: orange; 3700 margin-top: 5px; 3701 } 3702 3703 .reviewCardPurchase { 3704 max-width: 448px; 3705 float: right; 3706 } 3707 3708 .addonsPurchase .addon-item {display: flex;justify-content: space-between;} 3709 .addon-item * {align-self: center;font-size: 12px;} 3710 .addon-itm-title {width: 360px;} 3711 .addon-itm-line-price {color: #757575;width: 80px;justify-content: space-between;display: flex;} 3712 3713 .propsAddonSpotify p { 3714 margin: 0; 3715 display: flex; 3716 font-size: 12px !important; 3717 margin-bottom: 5px; 3718 } 3719 .propsAddonSpotify p span:first-child { 3720 text-transform: uppercase; 3721 font-weight: 600; 3722 -ms-flex: 0 0 150px; 3723 flex: 0 0 150px; 3724 max-width: 150px; 3725 } 3726 3727 .addonsPurchase .addons { 3728 max-height: 250px; 3729 overflow: auto; 3730 } 3731 3732 .btn .loading:after { 3733 content: ""; 3734 display: inline-block;
3735 width: 20px; 3736 height: 20px; 3737 padding: 3px; 3738 aspect-ratio: 1; 3739 border-radius: 50%; 3740 background: #FFFFFF; 3741 --_m: conic-gradient(#0000 10%, #ffffff), linear-gradient(#ffffff 0 0) content-box; 3742 -webkit-mask: var(--_m); 3743 mask: var(--_m); 3744 -webkit-mask-composite: source-out; 3745 mask-composite: subtract; 3746 animation: l3 1s infinite linear; 3747 margin: auto; 3748 vertical-align: middle; 3749 margin-left: 10px; 3750 } 3751 3752 #qrcode img, #qrcode canvas { 3753 width: 50px; 3754 position: absolute; 3755 top: 12px; 3756 left: 16px; 3757 } 3758 3759 .t-preview { 3760 position: absolute; 3761 top: 17px; 3762 left: 75px; 3763 } 3764 .t-preview p { 3765 margin: 0; 3766 font-size: 12px !important; 3767 } 3768 .t-preview .h3 { 3769 font-size: 16px !important; 3770 margin-bottom: 5px; 3771 font-weight: 600; 3772 } 3773 .scanCard { 3774 width: 100%; 3775 border: 1px solid; 3776 height: 76px; 3777 background-color: #fff; 3778 } 3779 .scanCard > div > img { 3780 position: absolute; 3781 right: 0; 3782 width: 55px; 3783 } 3784 3785 @keyframes l3 { 3786 100% { 3787 transform: rotate(1turn); 3788 } 3789 } 3790 3791 @media (min-width: 991px) { 3792 .sectionPurchase { 3793 height: 100%; 3794 position: relative; 3795 max-width: 1344px; 3796 background-color: #fff; 3797 top: 50%; 3798 left: 50%; 3799 transform: translate(-50%, -50%); 3800 } 3801 .headerPurchase h3 { 3802 font-size: 20px; 3803 } 3804 .purchaseArea h4 { 3805 font-size: 16px; 3806 } 3807 3808 .menuPurchase ul li { 3809 font-size: 16px; 3810 } 3811 3812 .contentPurchase { 3813 margin-bottom: 30px; 3814 } 3815 .contentPurchase h5 { 3816 font-size: 16px; 3817 } 3818 3819 .item-cards .item-card p, 3820 .item-addons .item-addon p { 3821 font-size: 16px !important; 3822 } 3823 3824 .cards { 3825 float: right; 3826 width: 400px; 3827 } 3828 3829 .item-cards .item-card { 3830 width: calc(25% - 30px); 3831 max-width: calc(25% - 30px); 3832 flex: 0 0 calc(25% - 30px); 3833 } 3834 3835 #itemAddons .item-card { 3836 position: relative; 3837 width: calc(16% - 40px); 3838 max-width: calc(16% - 40px); 3839 flex: 0 0 calc(16% - 40px); 3840 } 3841 3842 .purchase-button-wrapper { 3843 padding: 10px 20px; 3844 } 3845 } 3846 3847 @media (max-width: 1200px) { 3848 .item-cards .item-card { 3849 width: calc(33% - 30px); 3850 max-width: calc(33% - 30px); 3851 flex: 0 0 calc(33% - 30px); 3852 } 3853 } 3854 3855 @media (max-width: 992px) { 3856 .purchasePopup { 3857 padding: 0; 3858 } 3859 .item-cards .item-card h5, 3860 .item-addons .item-addon h5 { 3861 max-height: 30px; 3862 } 3863 3864 .back-purchase-button, .back-spotify, .next-purchase-button { 3865 width: 100%; 3866 } 3867 .addon-itm-title { 3868 width: 300px; 3869 } 3870 .addon-itm-line-price { 3871 margin-right: 10px; 3872 } 3873 .t-preview { 3874 top: 10px; 3875 } 3876 3877 .card-qty a { 3878 height: 15px; 3879 } 3880 3881 .purchase-button-wrapper { 3882 padding: 15px; 3883 } 3884 } 3885 3886 @media (max-width: 576px) { 3887 .purchase-button .btn { 3888 width: 100%!important; 3889 } 3890 .purchase-button > .col-12 { 3891 padding-left: 0; 3892 padding-right: 0; 3893 } 3894 } 3895 </style> 3896 3897 3898 <div class="purchasePopup"> 3899 <div class="purchaseArea"> 3900 3901 <div class="sectionPurchase purchasePersonalize sectionPurchaseBoard"> 3902 <div class="wrapperPurchase"> 3903 <div class="purchase-content"> 3904 <div class="headerPurchase"> 3905 <h3 class="text-uppercase"> 3906 3907 customize your flower board 3908 3909 </h3> 3910 <a class="close-purchase-popup"> 3911 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 3912 <path d="M1.53287 17.4107L0.588867 16.4667L8.05553 9.00002L0.588867 1.53336L1.53287 0.589355L8.99953 8.05602L16.4662 0.589355L17.4102 1.53336L9.94353 9.00002L17.4102 16.4667L16.4662 17.4107L8.99953 9.94402L1.53287 17.4107Z" fill="black"/> 3913 </svg> 3914 </a> 3915 3916 </div> 3917 <div class="contentPurchase"> 3918 <div class="row"> 3919 3920 <div class="col-12"> 3921 3922 3923 <style> 3924 3925 3926 .customize-papan .group-field-1 .input-field {float: left;width: 100%;height: 317px;background-color: #E5E5EA;} 3927 .customize-papan .input-field textarea {width: 100%;max-width: 421px;min-height: 150px;font-weight: 400;font-size: 16px;resize: none;background-color: #E5E5EA;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;color: #ffffff;border: none;} 3928 3929 .customize-papan .field-papan.group-field-2 .input-field.field-logo {height: 90px;margin: 0;border-radius: 0;position: relative;-ms-flex: 0 0 174px;flex: 0 0 174px;max-width: 174px;} 3930 .customize-papan .btn-upload-papan svg {width: 21px;height: 25px;display: block;align-self: center;margin: auto;margin-bottom: 12px;} 3931 .svgLogoPapan {position: absolute;width: 100%;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;} 3932 .svgLogoPapan p {color: #8E8E93; margin: 0;} 3933 .svgLogoPapan p span {font-size: 12px;color: #004eff;} 3934 .customize-papan .btn-upload-papan img {margin: auto;display: block;position: absolute;width: 80px;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;} 3935 #suggest-messages {position: absolute;bottom: 5px;left: 5px;} 3936 #suggest-messages a {border: 1px solid #979797;background: #fff;color: #979797;border-radius: 3px;padding: 5px 10px;font-size: 10px;font-weight: 600;display: inline-block;} 3937 .case-occasion .nice-select:after {border-bottom: 2px solid #333;border-right: 2px solid #333;right: 20px;top: 42%;width: 10px;height: 10px;} 3938 .customize-papan .input-field input {font-weight: 600;font-size: 16px;width: 100%;height: 90px;min-height: 44px !important;border: none;background: #E5E5EA;margin: 0;border-radius: 0;text-align: center;color: #ffffff;} 3939 .customize-papan .input-field .limit {position: absolute;right: 15px;top: 0;color: #757575;} 3940 3941 @media (min-width: 991px) { 3942 .customize-papan:before {content: "";position: absolute;border: 4px solid #ffffff;bottom: -50px;left: 210px;width: 100px;display: block;-ms-transform: rotate(60deg);-webkit-transform: rotate(60deg);transform: rotate(-65deg);} 3943 .customize-papan:after {content: "";position: absolute;border: 4px solid #ffffff;bottom: -52px;right: 240px;width: 100px;display: block;-ms-transform: rotate(-120deg);-webkit-transform: rotate(70deg);transform: rotate(70deg);} 3944 } 3945 </style> 3946 3947 <input type="hidden" data-properties="penerima" value="-"> 3948 <div class="customize-papan"> 3949 <div class="container"> 3950 <div class="field-papan group-field-1 form-group"> 3951 <div class="input-field">
3952 <textarea id="kartu-ucapan-papan" class="mb-0 has-limit" type="text" data-properties="ucapan" placeholder="Write the message you want to display. Or you can use several options from the message templates that we provide. 3953 (Ex: Selamat Menempuh Hidup Baru A & B)." maxlength="100"></textarea> 3954 <p class="limit">0/100</p> 3955 <div id="suggest-messages"> 3956 <a id="show_note_papan1" href="#"> 3957 <div class="suggest-message" id="note_btn_div1"> 3958 <span class="promo-code-link" id="note_btn_papan1">Contoh Kata WEDDING</span> 3959 </div> 3960 </a> 3961 <a id="show_note_papan2" href="#"> 3962 <div class="suggest-message" id="note_btn_div2"> 3963 <span class="promo-code-link" id="note_btn_papan2">Contoh Kata SELAMAT</span> 3964 </div> 3965 </a> 3966 <a id="show_note_papan3" href="#"> 3967 <div class="suggest-message" id="note_btn_div3"> 3968 <span class="promo-code-link" id="note_btn_papan3">Contoh Kata DUKA CITA</span> 3969 </div> 3970 </a> 3971 </div> 3972 </div> 3973 </div> 3974 <div class="hide"> 3975 <input type="hidden" value="" id="note_id_papan1" name="note_id_papan1" style="top: 0px;"> 3976 <input type="hidden" value="" id="note_btn_id_papan1" name="note_btn_id_papan1"> 3977 </div> 3978 <div class="hide"> 3979 <input type="hidden" value="" id="note_id_papan2" name="note_id_papan2" style="top: 0px;"> 3980 <input type="hidden" value="" id="note_btn_id_papan2" name="note_btn_id_papan2"> 3981 </div> 3982 <div class="hide"> 3983 <input type="hidden" value="" id="note_id_papan3" name="note_id_papan3" style="top: 0px;"> 3984 <input type="hidden" value="" id="note_btn_id_papan3" name="note_btn_id_papan3"> 3985 </div> 3986 <div class="field-papan group-field-2 form-group"> 3987 3988 <label for="logoPapan" onclick="" class="input-field field-logo"> 3989 3990 3991 3992 <div class="btn-upload-papan w-100"> 3993 <?xml version="1.0" encoding="UTF-8"?> 3994 <img src="" style="display:none"> 3995 <div class="svgLogoPapan"> 3996 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="22" height="26" viewBox="0 0 22 26" fill="none"> 3997 <path d="M6.5 20H15.5V11H21.5L11 0.5L0.5 11H6.5V20ZM0.5 23H21.5V26H0.5V23Z" fill="black"/> 3998 </svg> 3999 <p>Upload Logo <span>*optional</span></p> 4000 </div> 4001 </div> 4002 4003 </label> 4004 4005 <input 4006 type="hidden" 4007 data-properties="papan-logo" 4008 value="" 4009 > 4010 <input 4011 type="file" 4012 id="logoPapan" 4013 accept="image/*" 4014 style="position: absolute;width: 1px;height: 1px;padding: 0" 4015 > 4016 4017 <div class="input-field"> 4018 <input class="has-limit sender-name" type="text" placeholder="Nama Pengirim" data-properties="pengirim" maxlength="35"/> 4019 <p class="limit">0/35</p> 4020 </div> 4021 4022 </div> 4023 4024 </div> 4025 </div> 4026 </div> 4027 4028 </div> 4029 </div> 4030 4031 </div> 4032 <div class="purchase-button-wrapper"> 4033 <div class="purchase-button btn-card row m-0"> 4034 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 4035 4036 </div> 4037 <div class="btn-next-card col-12 col-lg-10 text-right"> 4038 4039 4040 <button 4041 4042 4043 4044 class="btn next-purchase-button text-uppercase" 4045 4046 disabled 4047 4048 > 4049 <span>save your flower board</span> 4050 </button> 4051 </div> 4052 </div> 4053 4054 </div> 4055 </div> 4056 </div> 4057 4058 4059 4060 <div 4061 class="sectionPurchase sectionPurchaseBoard hide" 4062 data-section="address" 4063 > 4064 <div class="wrapperPurchase"> 4065 <div class="purchase-content"> 4066 <div class="headerPurchase"> 4067 <h3> 4068 Complete Your Order 4069 </h3> 4070 <a class="close-purchase-popup"> 4071 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 4072 <path d="M1.53287 17.4107L0.588867 16.4667L8.05553 9.00002L0.588867 1.53336L1.53287 0.589355L8.99953 8.05602L16.4662 0.589355L17.4102 1.53336L9.94353 9.00002L17.4102 16.4667L16.4662 17.4107L8.99953 9.94402L1.53287 17.4107Z" fill="black"/> 4073 </svg> 4074 </a> 4075 4076 </div> 4077 <div class="contentPurchase"> 4078 <div class="row"> 4079 <div class="col-12 position-relative"> 4080 <div class="addressPurchase"> 4081 4082 <h4 class="text-uppercase">recipient delivery address</h4> 4083 <p>Share the delivery address to send your heartfelt blooms straight to their door.</p> 4084 4085 <div class="formAddressPurchase row"> 4086 <div class="col-12"> 4087 <form> 4088 <div class="form-group row mb-2 mb-lg-4"> 4089 <div class="col-6 position-relative"> 4090 <input id="first_name" type="text" class="form-control input__field" placeholder="" required> 4091 <label for="first_name" class="input__label">First Name<span>*</span></label> 4092 </div> 4093 <div class="col-6 position-relative"> 4094 <input id="last_name" type="text" class="form-control input__field" placeholder="" required> 4095 <label for="last_name" class="input__label">Last Name<span>*</span></label> 4096 </div> 4097 <input type="hidden" data-properties="nama-penerima"> 4098 </div> 4099 4100 <h4 class="text-uppercase">how you want to input your address</h4> 4101 <div class="form-group row mb-2 mb-lg-4 form-address-upload"> 4102 <div class="col-6 position-relative"> 4103 <label class="address-manualy"> 4104 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="18" height="17" viewBox="0 0 18 17" fill="none"> 4105 <path d="M3.37484 1.83329C2.79984 1.83329 2.33317 2.29996 2.33317 2.87496V5.16663C2.33317 5.38764 2.24537 5.5996 2.08909 5.75588C1.93281 5.91216 1.72085 5.99996 1.49984 5.99996C1.27882 5.99996 1.06686 5.9
41051216 0.910582 5.75588C0.754301 5.5996 0.666504 5.38764 0.666504 5.16663V2.87496C0.666504 2.15666 0.951845 1.46779 1.45976 0.959878C1.96767 0.451967 2.65654 0.166626 3.37484 0.166626H5.6665C5.88752 0.166626 6.09948 0.254423 6.25576 0.410704C6.41204 0.566984 6.49984 0.778946 6.49984 0.999959C6.49984 1.22097 6.41204 1.43293 6.25576 1.58921C6.09948 1.7455 5.88752 1.83329 5.6665 1.83329H3.37484ZM3.37484 15.1666C2.79984 15.1666 2.33317 14.7 2.33317 14.125V11.8333C2.33317 11.6123 2.24537 11.4003 2.08909 11.244C1.93281 11.0878 1.72085 11 1.49984 11C1.27882 11 1.06686 11.0878 0.910582 11.244C0.754301 11.4003 0.666504 11.6123 0.666504 11.8333V14.125C0.666504 14.4806 0.736557 14.8328 0.872663 15.1614C1.00877 15.49 1.20826 15.7885 1.45976 16.04C1.71125 16.2915 2.00981 16.491 2.3384 16.6271C2.66699 16.7632 3.01917 16.8333 3.37484 16.8333H5.6665C5.88752 16.8333 6.09948 16.7455 6.25576 16.5892C6.41204 16.4329 6.49984 16.221 6.49984 16C6.49984 15.7789 6.41204 15.567 6.25576 15.4107C6.09948 15.2544 5.88752 15.1666 5.6665 15.1666H3.37484ZM15.6665 2.87496C15.6665 2.29996 15.1998 1.83329 14.6248 1.83329H12.3332C12.1122 1.83329 11.9002 1.7455 11.7439 1.58921C11.5876 1.43293 11.4998 1.22097 11.4998 0.999959C11.4998 0.778946 11.5876 0.566984 11.7439 0.410704C11.9002 0.254423 12.1122 0.166626 12.3332 0.166626H14.6248C14.9805 0.166626 15.3327 0.236679 15.6613 0.372786C15.9899 0.508892 16.2884 0.708386 16.5399 0.959878C16.7914 1.21137 16.9909 1.50994 17.127 1.83853C17.2631 2.16712 17.3332 2.5193 17.3332 2.87496V5.16663C17.3332 5.38764 17.2454 5.5996 17.0891 5.75588C16.9328 5.91216 16.7208 5.99996 16.4998 5.99996C16.2788 5.99996 16.0669 5.91216 15.9106 5.75588C15.7543 5.5996 15.6665 5.38764 15.6665 5.16663V2.87496ZM14.6248 15.1666C15.1998 15.1666 15.6665 14.7 15.6665 14.125V11.8333C15.666
41055 11.6123 15.7543 11.4003 15.9106 11.244C16.0669 11.0878 16.2788 11 16.4998 11C16.7208 11 16.9328 11.0878 17.0891 11.244C17.2454 11.4003 17.3332 11.6123 17.3332 11.8333V14.125C17.3332 14.4806 17.2631 14.8328 17.127 15.1614C16.9909 15.49 16.7914 15.7885 16.5399 16.04C16.2884 16.2915 15.9899 16.491 15.6613 16.6271C15.3327 16.7632 14.9805 16.8333 14.6248 16.8333H12.3332C12.1122 16.8333 11.9002 16.7455 11.7439 16.5892C11.5876 16.4329 11.4998 16.221 11.4998 16C11.4998 15.7789 11.5876 15.567 11.7439 15.4107C11.9002 15.2544 12.1122 15.1666 12.3332 15.1666H14.6248ZM4.62484 5.16663C4.62484 4.94561 4.71263 4.73365 4.86892 4.57737C5.0252 4.42109 5.23716 4.33329 5.45817 4.33329H12.5415C12.7625 4.33329 12.9745 4.42109 13.1308 4.57737C13.287 4.73365 13.3748 4.94561 13.3748 5.16663V6.41663C13.3748 6.63764 13.287 6.8496 13.1308 7.00588C12.9745 7.16216 12.7625 7.24996 12.5415 7.24996C12.3205 7.24996 12.1085 7.16216 11.9522 7.00588C11.796 6.8496 11.7082 6.63764 11.7082 6.41663V5.99996H9.83317V11H10.8748C11.0959 11 11.3078 11.0878 11.4641 11.244C11.6204 11.4003 11.7082 11.6123 11.7082 11.8333C11.7082 12.0543 11.6204 12.2663 11.4641 12.4225C11.3078 12.5788 11.0959 12.6666 10.8748 12.6666H7.12484C6.90382 12.6666 6.69186 12.5788 6.53558 12.4225C6.3793 12.2663 6.2915 12.0543 6.2915 11.8333C6.2915 11.6123 6.3793 11.4003 6.53558 11.244C6.69186 11.0878 6.90382 11 7.12484 11H8.1665V5.99996H6.2915V6.41663C6.2915 6.63764 6.20371 6.8496 6.04743 7.00588C5.89115 7.16216 5.67918 7.24996 5.45817 7.24996C5.23716 7.24996 5.0252 7.16216 4.86892 7.00588C4.71263 6.8496 4.62484 6.63764 4.62484 6.41663V5.16663Z" fill="black"/> 4106 </svg> 4107 <span>Input Address Manually</span> 4108 </label> 4109 </div> 4110 <div class="col-6 position-relative"> 4111 <label for="address-upload" class="address-upload"> 4112 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="12" height="13" viewBox="0 0 12 13" fill="none"> 4113 <path d="M5.58317 9.48079V2.27246L3.6415 4.21413L3.0515 3.61579L5.99984 0.666626L8.949 3.61579L8.359 4.21496L6.4165 2.27246V9.48079H5.58317ZM1.51317 12.3333C1.12928 12.3333 0.809004 12.205 0.552337 11.9483C0.29567 11.6916 0.167059 11.3711 0.166504 10.9866V8.96746H0.999837V10.9866C0.999837 11.115 1.05317 11.2327 1.15984 11.34C1.2665 11.4472 1.384 11.5005 1.51234 11.5H10.4873C10.6151 11.5 10.7326 11.4466 10.8398 11.34C10.9471 11.2333 11.0004 11.1155 10.9998 10.9866V8.96746H11.8332V10.9866C11.8332 11.3705 11.7048 11.6908 11.4482 11.9475C11.1915 12.2041 10.8709 12.3327 10.4865 12.3333H1.51317Z" fill="black"/> 4114 </svg> 4115 <span>Upload Address Picture</span> 4116 </label> 4117 <input 4118 id="address-upload" 4119 type="file" 4120 accept="image/png, image/jpeg" 4121 style="position: absolute; padding: 0;width: 1px;height: 1px" 4122 > 4123 <input type="hidden" class="props-address-upload" data-properties="foto-alamat"> 4124 </div> 4125 </div> 4126 <img width="150" height="" src="" class="photo-address" style="display: none;"> 4127 4128 <div class="form-group row position-relative mb-2 mb-lg-4 form-address"> 4129 <div class="col-12"> 4130 <textarea 4131 id="delivery_address" 4132 data-properties="alamat-penerima" 4133 class="form-control input__field col-12" 4134 placeholder="" 4135 required 4136 ></textarea> 4137 <label for="delivery_address" class="input__label">Delivery Address<span>*</span></label> 4138 4139 </div> 4140 </div> 4141 <div class="form-group row mb-2 mb-lg-4 form-address"> 4142 <div class="col-6 position-relative"> 4143 <input 4144 id="recipient_number" 4145 type="text" 4146 data-properties="telepon-penerima" 4147 class="form-control input__field" 4148 placeholder="" 4149 required 4150 > 4151 <label for="recipient_number" class="input__label">Recipient number<span>*</span></label> 4152 </div> 4153 <div class="col-6 position-relative"> 4154 <input 4155 id="company" 4156 type="text" 4157 data-properties="company" 4158 class="form-control input__field" 4159 placeholder="" 4160 > 4161 <label for="company" class="input__label">Company (Optional)</label> 4162 </div> 4163 </div> 4164 <div class="form-group row mb-2 mb-lg-4 form-address"> 4165 <div class="col-6 position-relative"> 4166 <input 4167 id="province" 4168 type="text" 4169 class="form-control input__field" 4170 placeholder="" 4171 value="Jakarta" 4172 data-properties="province" 4173 > 4174 <label for="province" class="input__label">Province</label> 4175 </div> 4176 <div class="col-6 position-relative"> 4177 <select id="zip" class="form-control select-search" required></select> 4178 </div> 4179 </div> 4180 </form> 4181 </div> 4182 </div> 4183 </div> 4184 <div class="addonsPurchase"> 4185 <h4 class="text-uppercase">add-ons</h4> 4186 <div class="addons"> 4187 <p>No Add-Ons</p> 4188 <!-- 4189 <button class="add-addon"> 4190 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="12" height="12" viewBox="0 0 12 12" fill="none"> 4191 <path d="M5.5 6.5H0V5.5H5.5V0H6.5V5.5H12V6.5H6.5V12H5.5V6.5Z" fill="black"/> 4192 </svg>
4193 <span>Enhance my moment with Add-ons</span> 4194 </button> 4195 --> 4196 </div> 4197 </div> 4198 </div> 4199 4200 </div> 4201 </div> 4202 4203
4203<script> 4204 document.addEventListener('DOMContentLoaded', function() { 4205 // Detect iOS 4206 var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; 4207 4208 if (isIOS) { 4209 document.querySelector('.formAddressPurchase').classList.add('ios'); 4210 4211 // iOS specific fixes 4212 var inputs = document.querySelectorAll('.formAddressPurchase .input__field'); 4213 4214 inputs.forEach(function(input) { 4215 // Force enable touch events on iOS 4216 input.style.webkitUserSelect = 'text'; 4217 input.style.webkitTouchCallout = 'default'; 4218 input.style.pointerEvents = 'auto'; 4219 input.style.touchAction = 'manipulation'; 4220 4221 // Add explicit touch event listeners for iOS 4222 input.addEventListener('touchstart', function(e) { 4223 e.stopPropagation(); 4224 this.focus(); 4225 }, { passive: false }); 4226 4227 input.addEventListener('touchend', function(e) { 4228 e.preventDefault(); 4229 e.stopPropagation(); 4230 this.focus(); 4231 this.click(); 4232 }, { passive: false }); 4233 4234 // Force focus on tap for iOS 4235 input.addEventListener('click', function(e) { 4236 e.stopPropagation(); 4237 if (document.activeElement !== this) { 4238 this.focus(); 4239 } 4240 }); 4241 }); 4242 4243 // Fix for label overlapping on iOS 4244 var labels = document.querySelectorAll('.formAddressPurchase .input__label'); 4245 labels.forEach(function(label) { 4246 label.style.pointerEvents = 'none'; 4247 label.addEventListener('touchstart', function(e) { 4248 e.preventDefault(); 4249 var input = this.parentNode.querySelector('.input__field'); 4250 if (input) { 4251 input.focus(); 4252 } 4253 }); 4254 }); 4255 } 4256 4257 // Handle input state for all browsers, especially iOS 4258 var inputs = document.querySelectorAll('.input__field'); 4259 4260 inputs.forEach(function(input) { 4261 // Handle input events 4262 input.addEventListener('input', function() { 4263 if (this.value.trim() !== '') { 4264 this.classList.add('has-value'); 4265 } else { 4266 this.classList.remove('has-value'); 4267 } 4268 }); 4269 4270 // Handle focus 4271 input.addEventListener('focus', function() { 4272 this.classList.add('focused'); 4273 // iOS specific: ensure input is visible 4274 if (isIOS) { 4275 setTimeout(function() { 4276 input.scrollIntoView({ behavior: 'smooth', block: 'center' }); 4277 }, 300); 4278 } 4279 }); 4280 4281 // Handle blur 4282 input.addEventListener('blur', function() { 4283 this.classList.remove('focused'); 4284 if (this.value.trim() !== '') { 4285 this.classList.add('has-value'); 4286 } else { 4287 this.classList.remove('has-value'); 4288 } 4289 }); 4290 4291 // Initial check for pre-filled values 4292 if (input.value.trim() !== '') { 4293 input.classList.add('has-value'); 4294 } 4295 }); 4296 4297 // Additional iOS fixes 4298 if (isIOS) { 4299 // Prevent iOS Safari from adding default styling 4300 document.addEventListener('touchstart', function() {}, { passive: true }); 4301 4302 // Fix viewport issues on iOS 4303 var viewport = document.querySelector('meta[name=viewport]'); 4304 if (viewport) { 4305 viewport.setAttribute('content', 4306 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' 4307 ); 4308 } 4309 } 4310 }); 4311 </script>
4311 4312 </div> 4313 <div class="purchase-button-wrapper"> 4314 <div class="purchase-button btn-address row m-0"> 4315 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 4316 4317 <button class="back-purchase-button back-address text-uppercase"> 4318 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"> 4319 <path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z" fill="black"/> 4320 </svg> 4321 <span>Back</span> 4322 </button> 4323 4324 </div> 4325 <div class="btn-next-card col-12 col-lg-10 text-right"> 4326 4327 <!-- 4328 <button class="back-purchase-button back-address text-uppercase mr-lg-2 mb-2 mb-lg-0"> 4329 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"> 4330 <path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z" fill="black"/> 4331 </svg> 4332 <span>Back</span> 4333 </button> 4334 --> 4335 4336 4337 <button 4338 4339 id="addtocart-card" 4340 4341 class="btn next-address text-uppercase" 4342 4343 > 4344 <span>add to cart</span> 4345 </button> 4346 </div> 4347 </div> 4348 4349 </div> 4350 </div> 4351 </div> 4352 4353 </div> 4354 </div> 4355 <div id="backgroundPopup"></div> 4356 4357 4358 4359 <input 4360 data-index="1" 4361 type="hidden" 4362 id="properties-delivery-date" 4363 name="properties[Delivery Date]" 4364 value="-" 4365 > 4366 <input 4367 data-index="2" 4368 type="hidden" 4369 id="properties-delivery-time" 4370 name="properties[Delivery Time]" 4371 value="-" 4372 > 4373 <input 4374 data-index="4" 4375 type="hidden" 4376 id="properties-nama-penerima" 4377 name="properties[Nama Penerima]" 4378 value="-" 4379 > 4380 <input 4381 data-index="5" 4382 type="hidden" 4383 id="properties-alamat-penerima" 4384 name="properties[Alamat Penerima]" 4385 value="-" 4386 > 4387 <input 4388 data-index="6" 4389 type="hidden" 4390 id="properties-kodepos" 4391 name="properties[Kodepos]" 4392 value="-" 4393 > 4394 <input data-index="7" type="hidden" id="properties-telepon-penerima" name="properties[Telepon Penerima]"> 4395 4396 4397 <input 4398 data-index="8" 4399 type="hidden" 4400 id="properties-kartu-nama-penerima" 4401 name="properties[Kartu Nama Penerima]" 4402 value="-" 4403 > 4404 4405 <textarea 4406 data-index="9" 4407 type="hidden" 4408 id="properties-kartu-pesan" 4409 name="properties[Kartu Pesan]" 4410 style="display: none" 4411 >-</textarea> 4412 4413 4414 4415 <input 4416 data-index="10" 4417 type="hidden" 4418 id="properties-kartu-nama-pengirim" 4419 name="properties[Kartu Nama Pengirim]" 4420 value="-" 4421 > 4422 4423 4424 <!-- Additional Shipping --> 4425 <input type="hidden" id="properties-kota-pengiriman-province" name="properties[Province]"> 4426 <input 4427 type="hidden" 4428 id="properties-kota-pengiriman-country" 4429 name="properties[Country]" 4430 value="Indonesia" 4431 > 4432 <input type="hidden" id="properties-shipping" name="properties[Shipping]"> 4433 4434 <input type="hidden" id="properties-time" name="properties[Time]"> 4435 <input type="hidden" id="properties-card" name="properties[Card]"> 4436 <input type="hidden" id="properties-addons" name="properties[Addons]"> 4437 4438 <input 4439 type="hidden" 4440 id="properties-company" 4441 name="properties[Company]" 4442 value="" 4443 > 4444
4444<script> 4445 4446 $(document).ready(function(){ 4447 4448 var text_max_papan1=150; 4449 var msg_text_papan1=""; 4450 $('#kartu-ucapan-ucapan').keyup(function(){ 4451 var text_length_papan1=$('#kartu-ucapan-ucapan').val().length; 4452 var msg_text_papan1=$('#kartu-ucapan-ucapan').val(); 4453 }); 4454 4455 var notes_papan1 = [ 4456 4457 [0,"Happy Wedding (nama & nama)."],[1,"Congratulations lovebirds (nama & nama)."],[2,"Selamat berbahagia (nama & nama)."],[3,"Selamat menempuh hidup baru (nama & nama)."] 4458 4459 ]; 4460 $('#show_note_papan1').click(function(event){ 4461 event.preventDefault(); 4462 var idx_papan1=parseInt($('#note_id_papan1').val()); 4463 if(isNaN(idx_papan1)){ 4464 idx_papan1=0; 4465 }else{ 4466 idx_papan1++; 4467 idx_papan1=idx_papan1%notes_papan1.length; 4468 } 4469 var note_papan1=notes_papan1[idx_papan1][1]; 4470 $('#note_id_papan1').val(idx_papan1); 4471 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan1); 4472 $('#msgDelivery').val(note_papan1); 4473 4474 var text_length_papan1=$('#kartu-ucapan-papan').val().length; 4475 var idx_2_papan1=parseInt($('#note_btn_id_papan1').val()); 4476 if(isNaN(idx_2_papan1)){ 4477 idx_2_papan1=0; 4478 }else{ 4479 idx_2_papan1++; 4480 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4481 } 4482 $('#note_btn_id_papan1').val(idx_2_papan1); 4483 //var note_btn=note_btn_text[idx_2][1]; 4484 //$('#note_btn').text(note_btn); 4485 }); 4486 4487 var text_max_papan2=150; 4488 var msg_text_papan2=""; 4489 $('#kartu-ucapan-ucapan').keyup(function(){ 4490 var text_length_papan2=$('#kartu-ucapan-ucapan').val().length; 4491 var msg_text_papan2=$('#kartu-ucapan-ucapan').val(); 4492 }); 4493 4494 var notes_papan2 = [ 4495 4496 [0,"Congratulations (ucapan)."], [1,"Selamat dan sukses atas dibukanya (ucapan personal)."],[2,"Congratulations for the grand opening of (nama toko/bisnis)."],[3,"Happy Graduation (nama)."] 4497 4498 ]; 4499 $('#show_note_papan2').click(function(event){ 4500 event.preventDefault(); 4501 var idx_papan2=parseInt($('#note_id_papan2').val()); 4502 if(isNaN(idx_papan2)){ 4503 idx_papan2=0; 4504 }else{ 4505 idx_papan2++; 4506 idx_papan2=idx_papan2%notes_papan2.length; 4507 } 4508 var note_papan2=notes_papan2[idx_papan2][1]; 4509 $('#note_id_papan2').val(idx_papan2); 4510 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan2); 4511 $('#msgDelivery').val(note_papan2); 4512 var text_length_papan2=$('#kartu-ucapan-papan').val().length; 4513 var idx_2_papan2=parseInt($('#note_btn_id_papan2').val()); 4514 if(isNaN(idx_2_papan2)){ 4515 idx_2_papan2=0; 4516 }else{ 4517 idx_2_papan2++; 4518 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4519 } 4520 $('#note_btn_id_papan2').val(idx_2_papan2); 4521 //var note_btn=note_btn_text[idx_2][1]; 4522 //$('#note_btn').text(note_btn); 4523 }); 4524 4525 var text_max_papan3=150; 4526 var msg_text_papan3=""; 4527 $('#kartu-ucapan-ucapan').keyup(function(){ 4528 var text_length_papan3=$('#kartu-ucapan-ucapan').val().length; 4529 var msg_text_papan3=$('#kartu-ucapan-ucapan').val(); 4530 }); 4531 4532 var notes_papan3 = [ 4533 4534 [0,"Turut Berduka Cita atas meninggalnya almarhum / almarhumah (Nama)."], [1,"Our Deepest Condolences for the lost of your beloved Father/ Mother/ Husband/ Wife/ Children."], [2,"Our Deepest Sympathy for the lost of your beloved Father/ Mother/ Husband/ Wife/ Children."], [3,"Innalillahi wa innailaihi rojiun, Turut berduka cita atas meninggalnya (nama)."] 4535 4536 ]; 4537 $('#show_note_papan3').click(function(event){ 4538 event.preventDefault(); 4539 var idx_papan3=parseInt($('#note_id_papan3').val()); 4540 if(isNaN(idx_papan3)){ 4541 idx_papan3=0; 4542 }else{ 4543 idx_papan3++; 4544 idx_papan3=idx_papan3%notes_papan3.length; 4545 } 4546 var note_papan3=notes_papan3[idx_papan3][1]; 4547 $('#note_id_papan3').val(idx_papan3);
4548 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan3); 4549 $('#msgDelivery').val(note_papan3); 4550 var text_length_papan3=$('#kartu-ucapan-papan').val().length; 4551 var idx_2_papan3=parseInt($('#note_btn_id_papan3').val()); 4552 if(isNaN(idx_2_papan3)){ 4553 idx_2_papan3=0; 4554 }else{ 4555 idx_2_papan3++; 4556 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4557 } 4558 $('#note_btn_id_papan3').val(idx_2_papan3); 4559 //var note_btn=note_btn_text[idx_2][1]; 4560 //$('#note_btn').text(note_btn); 4561 }); 4562 4563 var text_max_papan4=150; 4564 var msg_text_papan4=""; 4565 $('#kartu-ucapan-ucapan').keyup(function(){ 4566 var text_length_papan4=$('#kartu-ucapan-ucapan').val().length; 4567 var msg_text_papan4=$('#kartu-ucapan-ucapan').val(); 4568 }); 4569 4570 $('#show_note_papan4').click(function(event){ 4571 var notes_papan4 = [ 4572 [0,"Hereâs to youâsteadier, stronger and better every day."], 4573 [1,"Warmest wishes for a speedy recovery!"], 4574 [2,"Dengan ucapan terhangat, semoga lekas membaik dan semakin pulih setiap harinya ya."], 4575 [3,"Semoga lekas sembuh untuk kembali beraktivitas dan berkarya."] 4576 ]; 4577 event.preventDefault(); 4578 var idx_papan4=parseInt($('#note_id_papan4').val()); 4579 console.log(idx_papan4, 'idx_papan4') 4580 if(isNaN(idx_papan4)){ 4581 idx_papan4=0; 4582 }else{ 4583 idx_papan4++; 4584 idx_papan4=idx_papan4%notes_papan4.length; 4585 } 4586 var note_papan4=notes_papan4[idx_papan4][1]; 4587 $('#note_id_papan4').val(idx_papan4); 4588 $('#kartu-ucapan-papan, #properties-kartu-ucapan, #properties-kartu-pesan').val(note_papan4); 4589 console.log(note_papan4, 'note_papan4') 4590 var text_length_papan4=$('#kartu-ucapan-papan').val().length; 4591 var idx_2_papan4=parseInt($('#note_btn_id_papan4').val()); 4592 if(isNaN(idx_2_papan4)){ 4593 idx_2_papan4=0; 4594 }else{ 4595 idx_2_papan4++; 4596 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4597 } 4598 $('#note_btn_id_papan4').val(idx_2_papan4); 4599 }); 4600 4601 /* 4602 $("#jenisPapan").change(function(){ 4603 $( "select option:selected").each(function(){ 4604 if($(this).attr("value")=="Happy Wedding"){ 4605 $("#suggest-messages a").hide(); 4606 $("#show_note_papan1").show(); 4607 $("#kartu-ucapan-papan").val(""); 4608 } 4609 if($(this).attr("value")=="Congratulations"){ 4610 $("#suggest-messages a").hide(); 4611 $("#show_note_papan2").show(); 4612 $("#kartu-ucapan-papan").val(""); 4613 } 4614 if($(this).attr("value")=="Duka Cita"){ 4615 $("#suggest-messages a").hide(); 4616 $("#show_note_papan3").show(); 4617 $("#kartu-ucapan-papan").val(""); 4618 } 4619 }); 4620 }).change(); 4621 */ 4622 4623 4624 4625 4626 4627 $(".variant-metafield").each(function(){ 4628 const t = $(this) 4629 const id = t.attr("id") 4630 const target = $(`[data-select=${id}]`) 4631 t.on('select2:selecting', function(e) { 4632 const data = e.params.args.data 4633 target.val(data.text) 4634 }); 4635 }) 4636 }) 4637 </script>
4637 4638 4639 <div id="popupCart"> 4640 <div class="container"> 4641 <div class="wrapperPopupCart"> 4642 <div class="headerPopupCart"> 4643 <div class="d-flex pl-5 pr-5 p-4"> 4644 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="16" height="12" viewBox="0 0 16 12" fill="none"> 4645 <path d="M5.55008 11.3076L0.580078 6.33761L1.29408 5.62461L5.55008 9.88061L14.7061 0.724609L15.4191 1.43861L5.55008 11.3076Z" fill="black"/> 4646 </svg> 4647 <span>item added to your cart</span> 4648 </div> 4649 <a class="close-purchase-popup"> 4650 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 4651 <path d="M1.53287 17.4107L0.588867 16.4667L8.05553 9.00002L0.588867 1.53336L1.53287 0.589355L8.99953 8.05602L16.4662 0.589355L17.4102 1.53336L9.94353 9.00002L17.4102 16.4667L16.4662 17.4107L8.99953 9.94402L1.53287 17.4107Z" fill="black"/> 4652 </svg> 4653 </a> 4654 4655 </div> 4656 <div class="contentPopupCart"> 4657 <div class="pl-5 pr-5 p-4"> 4658 <div class="itemContent row m-0 justify-content-between"> 4659 <div class="col-2 align-self-center"> 4660 4661 <img 4662 class="d-block" 4663 width="80" 4664 src="//outerbloom.com/cdn/shop/files/Blossom-Shine-WM_80x.jpg?v=1695788426" 4665 > 4666 </div> 4667 <div class="col-10 align-self-center"> 4668 <div class="row pl-3"> 4669 <div class="col-12 col-lg-7"> 4670 <span class="titleCartPopup text-uppercase">BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026</span> 4671 </div> 4672 <div class="d-flex justify-content-end col-12 col-lg-5"> 4673 <span class="deleteCartPopup hide">Delete</span> 4674 <span class="lineCartPrice align-self-center">Rp 10.000</span> 4675 </div> 4676 </div> 4677 </div> 4678 </div> 4679 <div class="itemProperties"> 4680 4681 <div class="propDeliver"> 4682 <h4>delivery option detail</h4> 4683 <p> 4684 <span>delivery city</span> 4685 <span class="propDeliveryCity">jakarta</span> 4686 </p> 4687 <p> 4688 <span>delivery date</span> 4689 <span class="propDeliveryDate">24/03/2025</span> 4690 </p> 4691 <p> 4692 <span>delivery time</span> 4693 <span class="propDeliveryTime">Afternoon | 13:00 - 18:00</span> 4694 </p> 4695 </div> 4696 <div class="propAddress"> 4697 <h4>delivery option detail</h4> 4698 <p> 4699 <span>RECIPIENT NAME</span> 4700 <span class="propDeliveryName">jane doe</span> 4701 </p> 4702 <p> 4703 <span>delivery address</span> 4704 <span class="propDeliveryAddress" 4705 >Jl. Gatot Subroto No. 25, RT.2/RW.4, Kuningan Barat, Kecamatan Mampang Prapatan, Kota Jakarta 4706 Selatan, Daerah Khusus Ibukota Jakarta 12710, Indonesia</span 4707 > 4708 </p> 4709 <p> 4710 <span>recipient phone number</span> 4711 <span class="propDeliveryPhone">(+62) 812-3456-7890</span> 4712 </p> 4713 <p> 4714 <span>PROVINCE</span> 4715 <span class="propDeliveryProv">Jakarta</span> 4716 </p> 4717 <p> 4718 <span>postal code</span> 4719 <span class="propDeliveryZip">12710</span> 4720 </p> 4721 4722 4723 </div> 4724 4725 </div> 4726 <div class="itemAddonCart"> 4727 <div class="toggleAddonCart d-flex justify-content-between"> 4728 <h4>add-ons (0)</h4> 4729 <svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="5" height="9" viewBox="0 0 5 9" fill="none"> 4730 <path d="M1.0128 0.84668L4.78613 4.62001L1.0128 8.39335L0.546133 7.92001L3.84613 4.62001L0.546133 1.32001L1.0128 0.84668Z" fill="black"/> 4731 </svg> 4732 </div> 4733 <div class="wrapperItemAddonCart"></div> 4734 </div> 4735 4736 </div> 4737 </div>
4738 <div class="footerPopupCart"> 4739 <div class="row m-0 pl-5 pr-5 p-4"> 4740 <a class="btn btnViewCart w-100 text-uppercase text-center" href="/cart">View Cart</a> 4741 <a class="btn btnViewCheckout w-100 text-uppercase text-center" href="/checkout"><span>Checkout</span></a> 4742 <a class="btnContinueShopping w-100 text-center" href="/">Continue shopping</a> 4743 </div> 4744 </div> 4745 </div> 4746 </div> 4747 </div> 4748 4749 4750
4750<script> 4751 const shareButton = document.getElementById('shareButton'); 4752 4753 shareButton.addEventListener('click', () => { 4754 if (navigator.share) { 4755 navigator.share({ 4756 title: "BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026", 4757 url: "/products/blossom-shine", 4758 text: 'Check out this page!' 4759 }) 4760 .then(() => console.log('Successful share')) 4761 .catch((error) => console.log('Error sharing', error)); 4762 } else { 4763 alert('Web Share API is not supported in this browser.'); 4764 } 4765 }); 4766 4767 // Inventory validation function 4768 function checkInventoryStatus() { 4769 const productSelect = document.getElementById('productSelect'); 4770 const purchaseButton = document.querySelector('#personalizeBtn button'); 4771 4772 if (!productSelect || !purchaseButton) return; 4773 4774 const selectedVariantId = productSelect.value; 4775 4776 // Get variant data from Shopify 4777 fetch(`/products/blossom-shine.js`) 4778 .then(response => response.json()) 4779 .then(product => { 4780 const selectedVariant = product.variants.find(variant => variant.id == selectedVariantId); 4781 4782 if (selectedVariant) { 4783 const isOutOfStock = selectedVariant.inventory_quantity <= 0 && 4784 selectedVariant.inventory_management === 'shopify' && 4785 selectedVariant.inventory_policy !== 'continue'; 4786 4787 if (isOutOfStock) { 4788 purchaseButton.disabled = true; 4789 purchaseButton.textContent = 'Out of Stock'; 4790 purchaseButton.setAttribute('data-out-of-stock', 'true'); 4791 purchaseButton.style.backgroundColor = '#cccccc'; 4792 purchaseButton.style.cursor = 'not-allowed'; 4793 } else { 4794 // Check if button was disabled due to other conditions 4795 4796 4797 4798 const isOtherDisabled = false || true || false; 4799 4800 if (!isOtherDisabled) { 4801 purchaseButton.disabled = false; 4802 purchaseButton.textContent = 'customize your flower board'; 4803 purchaseButton.removeAttribute('data-out-of-stock'); 4804 purchaseButton.style.backgroundColor = ''; 4805 purchaseButton.style.cursor = ''; 4806 } 4807 } 4808 } 4809 }) 4810 .catch(error => { 4811 console.error('Error checking inventory:', error); 4812 }); 4813 } 4814 4815 // Check inventory on page load 4816 document.addEventListener('DOMContentLoaded', function() { 4817 checkInventoryStatus();
4818 4819 // Listen for variant changes 4820 const productSelect = document.getElementById('productSelect'); 4821 if (productSelect) { 4822 productSelect.addEventListener('change', checkInventoryStatus); 4823 } 4824 }); 4825 4826 // Prevent form submission if out of stock 4827 document.addEventListener('click', function(e) { 4828 if (e.target.matches('button[data-out-of-stock="true"]')) { 4829 e.preventDefault(); 4830 e.stopPropagation(); 4831 alert('This product is currently out of stock and cannot be purchased.'); 4832 return false; 4833 } 4834 }); 4835 </script>
4835 4836 4837 4838 4839 </div> 4840 4841 </div> 4842 </div> 4843 </div> 4844 </div> 4845 <div id="product-bottom"> 4846 4847 <div class="container"> 4848 4849 4850 4851 4852 4853 <div class="short-desc-mobile d-block d-lg-none mb-3"> 4854 <div class="short-desc"> 4855 <ul> 4856 <li><strong>BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026</strong></li> 4857 </div> 4858 <label class="more-mobile">Show More â</label> 4859 </div> 4860 4861 <style> 4862 .animated-title { 4863 text-align: center; 4864 font-weight: bold; 4865 color: #079c02; 4866 font-size: 28px; 4867 position: relative; 4868 animation: glow 2s infinite alternate, moveUpDown 3s infinite; 4869 } 4870 4871 /* Efek glow / bercahaya hijau */ 4872 @keyframes glow { 4873 0% { text-shadow: 0 0 5px #079c02; color: #079c02; } 4874 50% { text-shadow: 0 0 20px #00ff55; color: #12d12b; } 4875 100% { text-shadow: 0 0 10px #1bff00; color: #079c02; } 4876 } 4877 4878 /* Efek gerakan naik turun */ 4879 @keyframes moveUpDown { 4880 0% { transform: translateY(0px); } 4881 50% { transform: translateY(-5px); } 4882 100% { transform: translateY(0px); } 4883 } 4884 </style> 4885 4886
4886<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/shopify-cartjs/1.1.0/cart.min.js"></script>
4886 4887
4887<script> 4888 CartJS.init({"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"IDR","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}); 4889 4890 const productType = $("[data-product-type]").data("product-type") 4891 const productDate = Date.parse(new Date()) 4892 4893 const shop = 'outerbloom1.myshopify.com' 4894 const host = 'https://app.asmaraku.com' 4895 // const host = 'http://localhost:5001' 4896 4897 const gsheet = "https://script.google.com/macros/s/AKfycbyqa6mPD6lVjU6hiHr12J8URZ2aJBGyxBsGQ0QtEIDari-rBk_9vSOITjSSmUXL1NwxEg/exec" 4898 4899 const qrID = "041025" + randomString(4, 'aAbCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ') 4900 4901 $("#properties-time").val(new Date().getTime()) 4902 4903 const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent); 4904 4905 if(!isIOS) { 4906 $("#full-date").attr("type", "button") 4907 } 4908 4909 let dateTime = new Date(); 4910 let today = dateTime.getDate(); 4911 let day = dateTime.getDay(); 4912 let hour = dateTime.getHours(); 4913 let min = dateTime.getMinutes(); 4914 let timeOfDay = hour + (min / 100); 4915 4916 async function getFetch(url) { 4917 const response = await fetch(url); 4918 let status = false 4919 let result 4920 if(response.ok) { 4921 status = true 4922 result = await response.json(); 4923 } 4924 return { 4925 status, 4926 data: result 4927 } 4928 } 4929 4930 4931 4932 function setCookie(cname, cvalue, exMins) { 4933 var d = new Date(); 4934 d.setTime(d.getTime() + (exMins*60*1000)); 4935 var expires = "expires="+d.toUTCString(); 4936 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; 4937 } 4938 4939 function getCookie(cname) { 4940 let name = cname + "="; 4941 let decodedCookie = decodeURIComponent(document.cookie); 4942 let ca = decodedCookie.split(';'); 4943 for(let i = 0; i <ca.length; i++) { 4944 let c = ca[i]; 4945 while (c.charAt(0) == ' ') { 4946 c = c.substring(1); 4947 } 4948 if (c.indexOf(name) == 0) { 4949 return c.substring(name.length, c.length); 4950 } 4951 } 4952 return ""; 4953 } 4954 4955 async function renderDate() { 4956 let dataDate = await getFetch(`${host}/api/shipping/date?domain=${shop}&productId=8144957800663&v=${Date.now()}`); 4957 console.log(dataDate, 'renderDate') 4958 const data = dataDate?.data 4959 const date = data.date 4960 const time = data.time 4961 4962 console.log(date, 'DATE') 4963 4964 const weekday = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]; 4965 const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; 4966 const htmlDate = []
4967 for(let i = 0;i < date.length;i++) { 4968 const full = date[i].date 4969 const d = new Date(date[i].date); 4970 const day = weekday[d.getDay()]; 4971 const dt = d.getDate(); 4972 const mt = monthly[d.getMonth()]; 4973 const yr = d.getFullYear(); 4974 const isDate = Boolean(date[i].isEnabled) 4975 const cutoffpagi = date[i].cutoff?.pagi 4976 const cutoffsiang = date[i].cutoff?.siang 4977 const cutoffMalam = date[i].cutoff?.Malam 4978 var html = ` 4979 <button data-id="8144957800663" class="date-single calendarbutton btn steps-btn col col-3 btn-date-time" data-day="${day}" data-fulldate="${full}" data-date="${dt < 10 ? '0' + dt : dt}" data-month="${mt}" data-year="${yr}" data-offpagi="${cutoffpagi}" data-offsiang="${cutoffsiang}" data-offMalam="${cutoffMalam}" ${isDate === true ? '' : 'disabled'}> 4980 ${dt === today ? 4981 `Today<span>${dt < 10 ? '0' + dt : dt}</span>` : 4982 `${day}<span>${dt < 10 ? '0' + dt : dt}</span>` 4983 } 4984 </button> 4985 ` 4986 htmlDate.push(html) 4987 } 4988 const htmlTime = []
4989 for(var i = 0;i < time.length;i++) { 4990 const timeText = time[i].text 4991 const timeTime = time[i].time 4992 const timeEnabled = time[i].isEnabled 4993 var html = ` 4994 <button class="time-single calendarbutton2 btn steps-btn" data-time="${timeText}" ${timeEnabled ? '' : 'disabled'}>${timeText}<br/>${timeTime}</button> 4995 ` 4996 htmlTime.push(html) 4997 } 4998 const deliveryDate = document.getElementById("deliveryDate"); 4999 if(deliveryDate) { 5000 deliveryDate.insertAdjacentHTML("afterbegin", htmlDate.join('')) 5001 $("#deliveryTime").html(htmlTime) 5002 if(productType !== '') { 5003 console.log("clarity event " + productType + ' calendaring') 5004 window.clarity("event", `${productType} calendaringSchedule`) 5005 // window.clarity("set", productType, `calendaringSchedule - ${productDate}`) 5006 } 5007 } 5008 } 5009 5010 async function getProvince(city) { 5011 let { data: { province } } = await getFetch(`${host}/api/shipping/address/province?city=${city}`); 5012 console.log(province, 'province') 5013 $("#province").val(province) 5014 } 5015 5016 async function renderAddress() { 5017 let current 5018 if(getCookie("location_delivery")){ 5019 current = getCookie("location_delivery").charAt(0).toUpperCase() + getCookie("location_delivery").slice(1) 5020 } 5021 let address = await getFetch(`${host}/api/shipping/address?domain=${shop}&productId=8144957800663`); 5022 console.log(address) 5023 const data = address?.data?.city 5024 const htmlAddress = [] 5025 const grouping = []
5026 for(let i = 0;i < data?.length;i++) { 5027 if(data[i]){ 5028 if(data[i]?.group) { 5029 grouping.push(data[i].group) 5030 } 5031 const price = rupiah.format(data[i]?.rate) 5032 let promo = '(Promo Free Delivery)' 5033 if(data[i]?.name === 'Jakarta - PickUp ASHTA'){ 5034 promo = '(at SCBD, Ashta)' 5035 } else if(data[i]?.name === 'Jakarta - PickUp ITC'){ 5036 promo = '(at Kuningan, ITC Kuningan)' 5037 } else if(data[i]?.name === 'BSD - PickUp'){ 5038 promo = '(at Goldfinch Gading Serpong)' 5039 } else if(data[i]?.name === 'Kota Lainnya'){ 5040 promo = '' 5041 } 5042 htmlAddress.push(`<option data-province="${data[i]?.province}" data-city="${data[i]?.city}" data-note="${data[i]?.note}" data-price="${data[i]?.rate}" value="${data[i]?.name}">${data[i]?.name === 'Kota Lainnya' ? 'Seluruh Kota Lain di Indonesia' : data[i]?.name} ${data[i]?.rate > 0 ? `(${price})` : promo}</option>`) 5043 } 5044 } 5045 5046 const deliveryCity = document.getElementById("cities"); 5047 if(deliveryCity) { 5048 deliveryCity.insertAdjacentHTML("beforeend", htmlAddress.join('')) 5049 if(!isIOS) { 5050 $(deliveryCity).select2(); 5051 } 5052 } 5053 } 5054 5055 async function renderZip(v, v2, v3) { 5056 const deliveryZip = document.getElementById("zip"); 5057 if(v === '') { 5058 return 5059 } 5060 let dataZip = await getFetch(`${host}/api/shipping/address/zip?city=${v}&city2=${v2}&city3=${v3}`); 5061 let zip = dataZip?.data?.zip 5062 console.log(zip) 5063 let htmlZip = []
5064 for(let i = 0; i < zip?.length;i++) { 5065 htmlZip.push(`<option value="${zip[i]?.postalCode} - ${zip[i]?.subdistrict}">${zip[i]?.postalCode} - ${zip[i]?.subdistrict} - ${zip[i]?.city}</option>`) 5066 } 5067 deliveryZip.insertAdjacentHTML("beforeend", htmlZip.join('')) 5068 } 5069 5070 renderDate() 5071 renderAddress() 5072 5073 let rupiah = new Intl.NumberFormat('id-ID', { 5074 style: 'currency', 5075 currency: 'IDR', 5076 maximumFractionDigits: 0, 5077 minimumFractionDigits: 0 5078 }); 5079 5080 async function insertCard(data) { 5081 const response = await fetch(`${host}/api/card/new`, { 5082 method: "POST", 5083 headers: { 5084 'Content-Type': 'application/json', 5085 }, 5086 body: data 5087 }) 5088 const result = await response.json() 5089 let rowIndex = result?.data?.tableRange.split("Outerbloom!A1:J")[1] 5090 $("#greetingCard").attr("data-index", rowIndex) 5091 return result 5092 } 5093 5094 async function updateCard(data){ 5095 const rowIndex = $("#greetingCard").data("index") 5096 const response = await fetch(`${host}/api/card/update?rowIndex=${rowIndex}`, { 5097 method: "PUT", 5098 headers: { 5099 'Content-Type': 'application/json', 5100 }, 5101 body: data 5102 }) 5103 return response 5104 } 5105 5106 function bytesToSize(bytes) { 5107 var sizes = ['b', 'kb', 'mb', 'gb', 'tb', 'p']; 5108 for (var i = 0; i < sizes.length; i++) { 5109 if (bytes <= 1024) { 5110 return bytes + ' ' + sizes[i]; 5111 } else { 5112 bytes = parseFloat(bytes / 1024).toFixed(2) 5113 } 5114 } 5115 return bytes + ' P'; 5116 } 5117 5118 async function uploadMedia(uri, type) { 5119 nameq = $("#properties-nama-penerima").val() 5120 dear = $("#properties-kartu-nama-penerima").val() 5121 card = $("[data-properties=ucapan]").val() 5122 sender = $("#properties-kartu-nama-pengirim").val() 5123 photo = $("#properties-photo").val() 5124 video = $("#properties-video").val() 5125 status = "Product" 5126 5127 const name = qrID 5128 let formData = new FormData(); 5129 formData.append("file", uri); 5130 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 5131 method: "POST", 5132 body: formData 5133 }) 5134 const result = await response.json(); 5135 if(result) { 5136 const url = result.url 5137 if(type === 'image/jpeg') { 5138 $("#properties-photo").val(url) 5139 $(".preview-image").show() 5140 $(".remove-image").show() 5141 photo = url 5142 } else { 5143 $("#properties-video").val(url) 5144 $("#label-input-video span").text("Change File") 5145 $(".case-qrcode-preview p").text("Scan here for a secret message") 5146 $(".remove-media").show() 5147 $("#product-top #product-meta .case-video-preview p").html(`<span class="replace-video" tite="Replace Video">${uri.name} (${bytesToSize(uri.size)})</span><span> is uploaded</span>`) 5148 $("[for=input-video]").hide() 5149 video = url 5150 } 5151 $(".case-video-preview").show() 5152 $(".steps-card-preview").removeClass("loading") 5153 // updateCard(nameq, dear, card, sender, photo, video, status) 5154 5155 $(".nextBtn").attr("disabled", false) 5156 } 5157 } 5158 5159 function randomString(length, chars) { 5160 var result = ''; 5161 for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))]; 5162 return result; 5163 } 5164 5165 function getNoteCity(fulldate) { 5166 const h_1 = new Date(new Date().setDate(new Date().getDate() + 1)) 5167 const weekday = ["Min","Sen","Sel","Rab","Kam","Jum","Sab"]; 5168 const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; 5169 const d = new Date(h_1); 5170 const day = weekday[d.getDay()]; 5171 const dt = d.getDate(); 5172 const mt = monthly[d.getMonth()]; 5173 const yr = d.getFullYear(); 5174 const p = $("#cities").parent(".form-group") 5175 } 5176 5177 function disabledSameDay() { 5178 let btnFirst = $("#deliveryDate").find("button:first-child") 5179 let getDay = new Date().getDay(); 5180 5181 5182 5183 if(getDay == 1 || getDay == 2 || getDay == 3 || getDay == 4 || getDay == 5){ 5184 if(hour >= 14.00){ 5185 btnFirst.attr("disabled", true) 5186 } 5187 } else if(getDay == 6){ 5188 if(hour >= 16.00){ 5189 btnFirst.attr("disabled", true) 5190 } 5191 } else if(getDay == 0){ 5192 if(hour >= 16.00){ 5193 btnFirst.attr("disabled", true) 5194 } 5195 } 5196 5197 5198 } 5199 5200 function disabledays(date) { 5201 let ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate(); 5202 //if u have to disable a list of day 5203 let removeDays 5204 5205 5206 5207 removeDays = ["2025-2-13", "2025-2-14"]; 5208 5209 if ($.inArray(ymd, removeDays) >= 0) { 5210 return [false]; 5211 } else { 5212 let day = date.getDay(); 5213 if(day == 0 && date.getDate() == 13 && date.getMonth() == 1){ 5214 return [(day == 0), '']; 5215 } 5216 5217 if(day == 0){ 5218 return [(day == 0), '']; 5219 } 5220 5221 5222 return [(day != 0), '']; 5223 } 5224 } 5225 5226 /* Indonesian initialisation for the jQuery UI date picker plugin. */ 5227 /* Written by Deden Fathurahman ([email protected]). */ 5228 ( function( factory ) { 5229 if ( typeof define === "function" && define.amd ) { 5230 5231 // AMD. Register as an anonymous module. 5232 define( [ "../widgets/datepicker" ], factory ); 5233 } else { 5234 5235 // Browser globals 5236 factory( jQuery.datepicker ); 5237 } 5238 }( function( datepicker ) { 5239 5240 datepicker.regional.id = { 5241 closeText: "Tutup", 5242 prevText: "<mundur", 5243 nextText: "maju>", 5244 currentText: "Today", 5245 monthNames: [ "January","February","March","April","May","Juny", 5246 "July","August","September","October","November","December" ], 5247 monthNamesShort: [ "Jan","Feb","Mar","Apr","May","Jun", 5248 "Jul","Agu","Sep","Oct","Nov","Dec" ], 5249 dayNames: [ "Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu" ], 5250 dayNamesShort: [ "Sun","Mon","Tue","Wed","Thu","Fri","Sat" ], 5251 dayNamesMin: [ "Mg","Sn","Sl","Rb","Km","jm","Sb" ], 5252 weekHeader: "Mg", 5253 dateFormat: "D, dd M", 5254 firstDay: 0, 5255 isRTL: false, 5256 showMonthAfterYear: false, 5257 yearSuffix: "" }; 5258 datepicker.setDefaults( datepicker.regional.id ); 5259 5260 return datepicker.regional.id; 5261 5262 } ) ); 5263 5264 function loadPopup() { 5265 $("#backgroundPopup").fadeIn("slow"); 5266 $(".purchasePopup:not(.purchasePopupSpotify)").fadeIn("slow"); 5267 const firstSection = $(".purchasePopup:not(.purchasePopupSpotify) .sectionPurchase").first() 5268 if(firstSection.hasClass("purchasePersonalize")) { 5269 if(productType !== '') { 5270 console.log("clarity event " + productType + ' personalize') 5271 window.clarity("event", `${productType} cardPersonalization`) 5272 // window.clarity("set", productType, `cardPersonalization - ${productDate}`) 5273 } 5274 } else if (firstSection.hasClass("sectionPurchaseBoard")) { 5275 console.log("clarity event " + productType + ' personalizeBoard') 5276 window.clarity("event", `${productType} personalizeBoard`) 5277 // window.clarity("set", productType, `personalizeBoard - ${productDate}`) 5278 } 5279 firstSection.removeClass("hide") 5280 5281 // Auto-trigger addon loading when addon section becomes visible 5282 setTimeout(function() { 5283 const addonSection = $(".purchaseAddon") 5284 if(addonSection.length > 0 && !addonSection.hasClass("hide")) { 5285 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 5286 $("[data-addon=upsell-all]").trigger("click") 5287 } 5288 } 5289 }, 200) 5290 } 5291 5292 function disablePopup() { 5293 $("#backgroundPopup").fadeOut("slow"); 5294 $(".purchasePopup").fadeOut("slow"); 5295 $("#popupCart").fadeOut("slow"); 5296 } 5297
5298 function scrollTo(parent, div, dur) { 5299 $(parent).animate({ 5300 scrollTop: $(div).offset().top 5301 }, dur); 5302 } 5303 5304 function loadPopupPersonalize() { 5305 const div = "#purchaseProduct" 5306 const p = "html, body, .product-meta" 5307 $("p.error").remove() 5308 loadItemOccasion($("[data-occassion]").eq(0), "greeting-card-all") 5309 const isCity = $("#cities[required]") 5310 const isDate = $("#propDeliveryDate[required]") 5311 const isTime = $("#propDeliveryTime[required]") 5312 // loadPopup() 5313 if(isCity.val() !== '' && isDate.val() !== '' && isTime.val() !== '') { 5314 loadPopup() 5315 } 5316 if(isCity.val() == '') { 5317 isCity.parent(".row").append("<p class='error'>Choose delivery city</p>") 5318 scrollTo(p, div, 500) 5319 } 5320 if(isDate.val() == '') { 5321 isDate.parents(".row").append("<p class='error'>Choose delivery date</p>") 5322 scrollTo(p, div, 500) 5323 } 5324 if(isTime.val() == '') { 5325 isTime.parents(".row").append("<p class='error'>Choose delivery time</p>") 5326 scrollTo(p, div, 500) 5327 } 5328 } 5329 5330 function quantityCounter() { 5331 $(document).on("click", ".item-card.selected .q_up", function () { 5332 var C = $(this).attr("data-id"), 5333 S = 5334 parseInt( 5335 $(this) 5336 .siblings(".quantity-cart-" + C) 5337 .val() 5338 ) + 1; 5339 $(this).attr("data-quantity", S), 5340 $(this) 5341 .siblings(".quantity-cart-" + C) 5342 .val(S); 5343 }), 5344 $(document).on("click", ".item-card.selected .q_down", function () { 5345 var C = $(this).attr("data-id"), 5346 S = parseInt( 5347 $(this) 5348 .siblings(".quantity-cart-" + C) 5349 .val() 5350 ); 5351 0 < S && $(this).attr("data-quantity", S - 1), 5352 0 < S && 5353 $(this) 5354 .siblings(".quantity-cart-" + C) 5355 .val(S - 1); 5356 }); 5357 } 5358 5359 quantityCounter() 5360 5361 const itemAddon = $(".item-card").length 5362 const nofree = $(".nofree").length 5363 5364 const upsell = '' 5365 5366 if(nofree === itemAddon) { 5367 // $("#itemAddons").html("<p>No Items available</p>") 5368 } 5369 5370 $("#itemAddons .item-card").each(function(e){ 5371 $("#itemAddons").attr("data-length", e) 5372 }) 5373 5374 $("[data-addon]").click(function(){ 5375 5376 5377 5378 const t = $(this) 5379 5380 const data = t.data("addon") 5381 5382 $("[data-addon]").removeClass("selected") 5383 t.addClass("selected") 5384 $.get(`https://outerbloom.com/collections/${data}/products.json`, function(data, status){ 5385 const products = data.products 5386 const html = [] 5387 for(let i = 0; i < products.length; i++) { 5388 const id = products[i].id 5389 const variantId = products[i].variants[0].id 5390 const img = products[i].images[0].src 5391 let img2 = img.split('.jpg')[0] 5392 const title = products[i].title 5393 const price = products[i].variants[0].price 5394 const tags = products[i].tags 5395 const qty = products[i].variants[0].available 5396 let type_upsell = '' 5397 if(tags.includes('upsell-item-standing')) { 5398 type_upsell = 'standing' 5399 } 5400 console.log(type_upsell) 5401 if(type_upsell !== '') { 5402 const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'} type-${products[i].product_type.toLowerCase()?.replace(' ', '_')}" data-variant="${variantId}" data-id=${id} data-qty="${qty === false ? 0 : ''}" data-upsell="${type_upsell}" data-tags="${tags}"> 5403 5404 <div class="card-image"> 5405 <img src="${img2}_150x.jpg" alt="${title}" width="" height="" /> 5406 </div> 5407 <div class="card-meta"> 5408 <h5>${title}</h5> 5409 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 5410 <input id="card-${variantId}" type="hidden" name="" value="${variantId}"> 5411 </div> 5412 <div class="card-qty"> 5413 <a data-quantity="1" type="submit" id="q_down-${variantId}" class="btn-qty-min q_down drawer-cart" data-id="${variantId}"><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="12" height="2" viewBox="0 0 12 2" fill="none"><path d="M0 1.90869V0.908691H12V1.90869H0Z" fill="black"/></svg></a> 5414 <input maxlength="3" min="0" class="btn-qty text-center quantity-cart-${variantId}
5414" value="0" data-price=${price} name="quantity"> 5415 <a data-quantity="1" type="submit" class="btn-qty-plus q_up text-green drawer-cart" data-id="${variantId}"><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="12" height="13" viewBox="0 0 12 13" fill="none"> 5416 <path d="M0 6.87023V5.94715H5.53846V0.408691H6.46154V5.94715H12V6.87023H6.46154V12.4087H5.53846V6.87023H0Z" fill="black"/> 5417 </svg></a> 5418 </div> 5419 </div>` 5420 html.push(body) 5421 } 5422 } 5423 $("#itemAddons .row").html(html.length === 0 ? '<p>No Item available</p>' : html) 5424 $("#itemAddons").attr("data-length", products.length) 5425 // $('#itemAddons')[0].swiper.update(); 5426 }); 5427 }) 5428 5429 async function isAddon(){ 5430 let ids = [] 5431 $("#itemAddons .item-card.selected").each(function(i, e){ 5432 const id = $(this).data("id") 5433 ids.push(id) 5434 }) 5435 console.log(ids) 5436 return ids 5437 } 5438 5439 $("#itemAddons").delegate(".item-card > div:not(.card-qty)", "click", async function(){ 5440 const t = $(this).parent() 5441 const id = t.data("id") 5442 const btn = t.parents(".purchaseAddon").find(".next-purchase-button") 5443 t.toggleClass("selected"); 5444 //$(this).next("input").toggleAttr('name', 'id[]'); 5445 if (t.hasClass('selected')) { 5446 t.find("input").val(1) 5447 t.find("input").attr('name', 'id[]'); 5448 } else { 5449 t.find("input").val(0) 5450 t.find("input").removeAttr('name'); 5451 } 5452 $("#properties-addons").val(addons) 5453 const is = await isAddon() 5454 if(is.length === 0) { 5455 btn.text("continue without add-ons") 5456 return 5457 } 5458 if(is.includes(8835692069079)) { 5459 btn.text("personalize acrylic frame") 5460 } else { 5461 btn.text("Continue") 5462 } 5463 5464 }) 5465 5466 async function myAddon(data) { 5467 const c = $(".addonsPurchase .addons") 5468 let items = [] 5469 5470 const spotifyAddons = $(".spotifyAddons").find("[data-index]") 5471 // if(spotifyAddons.length > 0) { 5472 // $(spotifyAddons).each(function(i, e){ 5473 // const spotifyLink = $(this).find(".spotifyLink").val() 5474 // const spotifySong = $(this).find(".spotifySong").val() 5475 // const spotifyArtist = $(this).find(".spotifyArtist").val() 5476 // const spotifyFotoAddon = $(this).find(".resultPhotoSpotify").val() 5477 // if(spotifyLink !== '') { 5478 // spotifyAddon = `<div class="addon-item" data-id="46067682607319" data-qty="1"> 5479 // <div class="addon-itm-img"> 5480 // <img src="https://cdn.shopify.com/s/files/1/1589/6833/files/Acrylic-Frame_8c71027d-43b7-4322-a98f-d34ab0456397_100x.jpg?v=1739160467" alt="" width="70"/> 5481 // </div> 5482 // <div class="addon-itm-title"> 5483 // <span>[US] Outerbloom Acrylic Frame 4R</span> 5484 // </div> 5485 // <div class="addon-itm-line-total"> 5486 // <span>Rp 99.000</span> 5487 // </div> 5488 // </div> 5489 // <div class="propsAddonSpotify row m-0"> 5490 // <div class="col-12 col-lg-2"></div> 5491 // <div class="col-12 col-lg-10"> 5492 // <p> 5493 // <span>spotify link</span> 5494 // <span class="spotifyLinkAddon">${spotifyLink}</span> 5495 // </p> 5496 // <p> 5497 // <span>uploaded photo</span> 5498 // <span class="spotifyFotoAddon">${spotifyFotoAddon}</span> 5499 // </p> 5500 // <p> 5501 // <span>song / playlist name</span> 5502 // <span class="spotifySongAddon">${spotifySong}</span> 5503 // </p> 5504 // <p> 5505 // <span>artist name</span> 5506 // <span class="spotifyArtistAddon">${spotifyArtist}</span> 5507 // </p> 5508 // </div> 5509 // </div>` 5510 // items.push(spotifyAddon) 5511 // } 5512 // }) 5513 // }
5514 for(let i = 0; i < data.length; i++) { 5515 if(data[i].title !== '[US] Outerbloom Acrylic Frame 4R' ) { 5516 const img = data[i].image 5517 const title = data[i].title 5518 const qty = data[i].qty 5519 const price = data[i].price 5520 const total = Number(qty) * Number(price) 5521 let addons = `<div class="addon-item" data-id="${data[i].id}" data-qty="${qty}"> 5522 <div class="addon-itm-img"> 5523 <img src="${img}" alt="" width="70"/> 5524 </div> 5525 <div class="addon-itm-title"> 5526 <span>${title}</span> 5527 </div> 5528 <div class="addon-itm-line-price"> 5529 <span>${rupiah.format(price)}</span> 5530 ${data[i].title == '[US] Outerbloom Acrylic Frame 4R' ? '' : `<span>x${qty}</span>`} 5531 </div> 5532 <div class="addon-itm-line-total"> 5533 <span>${rupiah.format(total)}</span> 5534 </div> 5535 </div>` 5536 items.push(addons) 5537 } 5538 } 5539 c.html(items) 5540 const parent = $(".purchaseAddon") 5541 const next = parent.next(".sectionPurchase") 5542 parent.addClass("hide") 5543 next.removeClass("hide") 5544 // if(items2.length === 0) return $("#popupCart").addClass("no-addon-cart") 5545 // $(".itemAddonCart").find("h4").text(`add-ons (${items2.length})`) 5546 } 5547 5548 async function listAddon() { 5549 const data = $("#itemAddons").find(".selected") 5550 let ids = [] 5551 $(data).each(function(){ 5552 const id = $(this).data("variant") 5553 const image = $(this).find(".card-image img").attr("src") 5554 const title = $(this).find(".card-meta h5").text() 5555 const qty = $(this).find(".card-qty input").val() 5556 const price = $(this).find(".card-qty input").data("price") 5557 ids.push({ 5558 id: Number(id), 5559 image, 5560 title, 5561 qty, 5562 price 5563 }) 5564 }) 5565 myAddon(ids) 5566 } 5567 5568 async function customSpotify(idx, length, type){ 5569 let isCard = false 5570 5571 let p = $(".purchasePopupSpotify") 5572 const preLink = $(".spotifyLinkFirst").val() 5573 $("[data-index]").hide() 5574 p.find(".headerPurchase h3").text(`personalize spotify photo print${length > 1 ? ` - ${idx}` : ''}`) 5575 p.find(".regulerAddons, .purchase-button").hide() 5576 p.find(".spotifyAddons").show() 5577 5578 const data = await trackUrl(preLink) 5579 5580 const html = `<div class="row" data-index=${idx} data-length=${length}><div class="col-12 col-lg-6"><div class="form-vertical position-relative"><div class="form-group mb-4"><h4>upload photo</h4><div class=uploadResult><label class=btn for=uploadPhotoSpotify><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="13" height="11" viewB
5580ox="0 0 13 11" fill="none"> 5581 <path d="M0.875 10.6378H12.375C12.4413 10.6378 12.5049 10.6115 12.5518 10.5646C12.5987 10.5177 12.625 10.4541 12.625 10.3878V0.387817C12.625 0.321513 12.5987 0.257925 12.5518 0.211041C12.5049 0.164157 12.4413 0.137817 12.375 0.137817H0.875C0.808696 0.137817 0.745107 0.164157 0.698223 0.211041C0.651339 0.257925 0.625 0.321513 0.625 0.387817V10.3878C0.625 10.4541 0.651339 10.5177 0.698223 10.5646C0.745107 10.6115 0.808696 10.6378 0.875 10.6378ZM1.125 10.1378V7.31882C1.136 7.31082 1.1485 7.30632 1.1585 7.29632L3.7165 4.73832C3.78198 4.67584 3.869 4.64098 3.9595 4.64098C4.05 4.64098 4.13702 4.67584 4.2025 4.73832L7.963 8.49882C8.00919 8.54501 8.07162 8.5713 8.13694 8.57204C8.20225 8.57279 8.26527 8.54794 8.3125 8.50282L10.2455 6.66682C10.3084 6.60323 10.3938 6.56684 10.4832 6.56543C10.5727 6.56403 10.6591 6.59774 10.724 6.65932L12.125 8.18532L12.1255 8.18582V10.1378H1.125ZM12.125 0.637817V7.44682L11.0845 6.31382C11.0066 6.23514 10.9138 6.17275 10.8116 6.13026C10.7094 6.08777 10.5997 6.06603 10.489 6.06632H10.4885C10.3786 6.06584 10.2697 6.08706 10.168 6.12876C10.0664 6.17046 9.97391 6.23182 9.896 6.30932L8.144 7.97332L4.556 4.38482C4.2365 4.06582 3.6815 4.06632 3.363 4.38482L1.125 6.62332V0.637817H12.125Z" fill="black"/> 5582 </svg><span>Upload your file</span></label></div><input class="uploadPhotoSpotify form-control d-none" accept=image/* type=file><input class="resultPhotoSpotify" type="hidden"></div><div class="form-group mb-5"><h4>Add your Spotify link here</h4> <input class="spotifyLink2 form-control spotifyLink" value="${preLink}" placeholder=https://open.spotify.com/ ></div><div class="form-group mb-4 text-left"><label class=checkbox for=isCustomMessage><span>Personalized Message</span><span class=checkmark></span></label></div><div class="form-group mb-4 form-personalize"><label class="text-left d-block mb-2 text-uppercase"for=spotifySong>Song / playlist name</label> ${data?.song ? `<input class="form-control spotifySong" value="${data?.song}">` : '<input class="form-control spotifySong" value="">'}</div><div class="form-group form-personalize"><label class="text-left d-block mb-2 text-uppercase"for=spotifyArtist>Artist name</label> ${data?.artist ? `<input class="form-control spotifyArtist" value="${data?.artist}">` : '<input class="form-control spotifyArtist" value="">'}</div><div class=btn-action><button class="back-spotify"><svg fill=none height=14 viewBox="0 0 15 14"width=15 xmlns=https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png><path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z"fill=black /></svg> <span>Back</span></button><button data-type="${isCard ? 'card' : ''}" ${isCard ? '' : 'id=addtocart-card'} class="text-uppercase btn w-100${type == 'addon' && idx == length ? ' finished' : ' no-addon'}" disabled>${isCard ? 'Continue Personalizing' : 'add to cart'}</button></div></div></div><div class="col-12 col-lg-6 columnRight"><div class=frame-spotify><div class=frameImage><div class=frameImageUploaded><svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="13" height="11" viewB
5582ox="0 0 13 11" fill="none"> 5583 <path d="M0.875 10.6378H12.375C12.4413 10.6378 12.5049 10.6115 12.5518 10.5646C12.5987 10.5177 12.625 10.4541 12.625 10.3878V0.387817C12.625 0.321513 12.5987 0.257925 12.5518 0.211041C12.5049 0.164157 12.4413 0.137817 12.375 0.137817H0.875C0.808696 0.137817 0.745107 0.164157 0.698223 0.211041C0.651339 0.257925 0.625 0.321513 0.625 0.387817V10.3878C0.625 10.4541 0.651339 10.5177 0.698223 10.5646C0.745107 10.6115 0.808696 10.6378 0.875 10.6378ZM1.125 10.1378V7.31882C1.136 7.31082 1.1485 7.30632 1.1585 7.29632L3.7165 4.73832C3.78198 4.67584 3.869 4.64098 3.9595 4.64098C4.05 4.64098 4.13702 4.67584 4.2025 4.73832L7.963 8.49882C8.00919 8.54501 8.07162 8.5713 8.13694 8.57204C8.20225 8.57279 8.26527 8.54794 8.3125 8.50282L10.2455 6.66682C10.3084 6.60323 10.3938 6.56684 10.4832 6.56543C10.5727 6.56403 10.6591 6.59774 10.724 6.65932L12.125 8.18532L12.1255 8.18582V10.1378H1.125ZM12.125 0.637817V7.44682L11.0845 6.31382C11.0066 6.23514 10.9138 6.17275 10.8116 6.13026C10.7094 6.08777 10.5997 6.06603 10.489 6.06632H10.4885C10.3786 6.06584 10.2697 6.08706 10.168 6.12876C10.0664 6.17046 9.97391 6.23182 9.896 6.30932L8.144 7.97332L4.556 4.38482C4.2365 4.06582 3.6815 4.06632 3.363 4.38482L1.125 6.62332V0.637817H12.125Z" fill="black"/> 5584 </svg> <img src="" class=previewImage style=display:none></div></div><div class=frameControl><div class=spotifyData>${data?.song ? `<h3>${data?.song}</h3>` : '<h3><h3>'}${data?.artist ? `<p>${data?.artist}</p>` : '<p></p>'}</div><img src="//outerbloom.com/cdn/shop/t/138/assets/frame-spotify.png?v=138221849636560654691752652420"alt="spotify outerbloom" height=""width=100%><div class=spotifyCode><img src="https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data?.type.slice(0, -1)}:${data?.trackId}"alt=""></div></div></div></div></div>` 5585 // console.log(html) 5586 5587 $(".spotifyAddons").append(html) 5588 5589 $(`[data-index=${idx}]`).show() 5590 5591 if (preLink !== '') { 5592 $(".btn-action .btn").attr("disabled", false) 5593 } else { 5594 $(".btn-action .btn").attr("disabled", true) 5595 } 5596 5597 return html 5598 5599 } 5600 5601 $(".spotifyLinkFirst").keyup(async function(){ 5602 const v = $(this).val() 5603 if(v.includes('spotify:user:spotify')) { 5604 const correct = v.split('user:spotify:')[1] 5605 console.log(correct, 'BNER') 5606 $(this).val(correct) 5607 return 5608 } 5609 if(v.includes("spotify:") || v.includes("https://open.spotify.com/")){ 5610 const data = await trackUrl(v) 5611 if(!data || !data.status) { 5612 $(this).parent().addClass("error") 5613 // $(this).parent().append(`<p class="txt-error">Make sure you copy the complete and correct link from Spotify. Ex: https://open.spotify.com/track/0C3xZJueyBvvMSsl0cETA6</p>`) 5614 $("#personalizeBtnSpotify .btn").attr("disabled", true) 5615 return 5616 } 5617 $(this).parent().removeClass("error") 5618 // $(this).parent().remove("txt-error") 5619 $("#personalizeBtnSpotify .btn").attr("disabled", false) 5620 } else { 5621 $("#personalizeBtnSpotify .btn").attr("disabled", true) 5622 } 5623 }) 5624 5625 $(".purchaseAddon").delegate(".next-addon", "click", function(){ 5626 const parent = $(this).parents(".purchaseAddon") 5627 const next = parent.next(".sectionPurchase") 5628 if(next.hasClass("purchaseAddress")) { 5629 if(productType !== '') { 5630 console.log("clarity event " + productType + ' purchaseDelivery') 5631 window.clarity("event", `${productType} purchaseDelivery`) 5632 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 5633 } 5634 } 5635 const data = $("#itemAddons").find(".selected") 5636 const length = $(".quantity-cart-46067682607319").val() 5637 const checked = data.length; 5638 if(checked > 0) { 5639 if(length > 0) { 5640 $(".purchaseAddon").addClass("purchaseAddonSpotify") 5641 customSpotify(1, length, 'addon') 5642 } else { 5643 listAddon() 5644 } 5645 } else { 5646 parent.addClass("hide") 5647 next.removeClass("hide") 5648 } 5649 }) 5650 5651 $("#personalizeBtnSpotify .btn").click(async function(){ 5652 const isCity = $("#cities[required]") 5653 const isDate = $("#propDeliveryDate[required]") 5654 if((isDate.length > 0 && isCity.length > 0) && (isCity.val() === '' || isDate.val() === '')) { 5655 alert('Please choose Delivery City & Delivery Date') 5656 return 5657 } 5658 const data = await customSpotify(1, 1, 'product') 5659 if(data) { 5660 $("#backgroundPopup").fadeIn("slow"); 5661 $(".purchasePopupSpotify").fadeIn("slow"); 5662 5663 if(productType !== '') { 5664 console.log("clarity event " + productType + ' spotify') 5665 window.clarity("event", `${productType} spotify`) 5666 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 5667 } 5668 } 5669 }) 5670 5671 function formatBytes(bytes, decimals = 2) { 5672 if (!+bytes) return '0 Bytes' 5673
5674 const k = 1024 5675 const dm = decimals < 0 ? 0 : decimals 5676 const sizes = ['B', 'KB', 'MB'] 5677 5678 const i = Math.floor(Math.log(bytes) / Math.log(k)) 5679 5680 return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}` 5681 } 5682 5683 async function trackUrl(link){ 5684 try { 5685 let trackId = link.split('/').pop().split('?')[0]; 5686 let type = '' 5687 if(link.includes("spotify:")) { 5688 const uri = link.split('spotify:')[1] 5689 trackId = uri.split(':')[1] 5690 type = uri.split(':')[0] + 's' 5691 } else { 5692 if(link.match('track')){ 5693 type = 'tracks' 5694 } else if(link.match('playlist')) { 5695 type = 'playlists' 5696 } else if(link.match('artist')) { 5697 type = 'artists' 5698 } else if(link.match('album')) { 5699 type = 'albums' 5700 } 5701 } 5702 console.log(`${host}/api/spotify/${type}/${trackId}`) 5703 const data = await getFetch(`${host}/api/spotify/${type}/${trackId}`) 5704 console.log(data, 'DATA') 5705 const song = data?.data?.name 5706 const artist = data?.data?.artist 5707 return { 5708 song, artist, type, trackId, status: data.status 5709 } 5710 } catch(err) { 5711 console.log(err) 5712 } 5713 } 5714 5715 $(".spotifyAddons").delegate(".uploadPhotoSpotify", "change", async function(){ 5716 const parent = $(this).parents("[data-index]") 5717 const preview = parent.find(".previewImage") 5718 const file = $(this)[0].files[0]; 5719 if (file) { 5720 const reader = new FileReader(); 5721 reader.onload = async function(e) { 5722 parent.find(".uploadResult label").hide() 5723 parent.find(".uploadedResult").remove() 5724 parent.find(".uploadResult").append(`<div class="uploadedResult d-flex" style="justify-content: space-between"> 5725 <p style="text-align: left;margin: 0;"><span style="color: #34C759;font-style: italic;font-size: 14px;text-overflow: ellipsis;overflow: hidden;max-width: 250px;white-space: nowrap;display: inline-block;vertical-align: middle;">${file.name}</span><span style="font-size: 14px;color: #34C759"> (${formatBytes(file.size)})</span> <span style="font-size: 14px">is uploaded</span></p> 5726 <div style="align-self: center"><span class="changeUpload" style="font-size: 12px;cursor: pointer">Change</span><span class="removeUpload" style="cursor: pointer;border-left: 1px solid;padding-left: 10px;margin-left: 10px;height: 10px;display: inline-flex;vertical-align: middle;">
5726<svg fill="none" height="11" viewBox="0 0 10 11" width="10" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"> 5727 <path d="M2.07799 10.8332C1.78154 10.8332 1.52799 10.7276 1.31732 10.5165C1.10666 10.3054 1.0011 10.0523 1.00066 9.75716V1.49982H0.667322C0.572656 1.49982 0.493545 1.46782 0.429989 1.40382C0.366433 1.33982 0.334433 1.26049 0.333989 1.16582C0.333544 1.07116 0.365545 0.992047 0.429989 0.928491C0.494433 0.864935 0.573545 0.833158 0.667322 0.833158H3.00066C3.00066 0.69538 3.05177 0.57538 3.15399 0.473158C3.25621 0.370935 3.37621 0.319824 3.51399 0.319824H6.48732C6.6251 0.319824 6.7451 0.370935 6.84732 0.473158C6.94954 0.57538 7.00066 0.69538 7.00066 0.833158H9.33399C9.42866 0.833158 9.50777 0.865158 9.57132 0.929158C9.63488 0.993158 9.66688 1.07249 9.66732 1.16716C9.66777 1.26182 9.63577 1.34094 9.57132 1.40449C9.50688 1.46805 9.42777 1.49982 9.33399 1.49982H9.00066V9.75649C9.00066 10.0525 8.8951 10.3058 8.68399 10.5165C8.47288 10.7272 8.21954 10.8327 7.92399 10.8332H2.07799ZM8.33399 1.49982H1.66732V9.75649C1.66732 9.87605 1.70577 9.97427 1.78266 10.0512C1.85954 10.128 1.95799 10.1665 2.07799 10.1665H7.92399C8.04354 10.1665 8.14177 10.128 8.21866 10.0512C8.29554 9.97427 8.33399 9.87605 8.33399 9.75649V1.49982ZM3.87266 8.83316C3.96732 8.83316 4.04666 8.80116 4.11066 8.73716C4.17466 8.67316 4.20643 8.59405 4.20599 8.49982V3.16649C4.20599 3.07182 4.17399 2.99271 4.10999 2.92916C4.04599 2.8656 3.96666 2.8336 3.87199 2.83316C3.77732 2.83271 3.69821 2.86471 3.63466 2.92916C3.5711 2.9936 3.53932 3.07271 3.53932 3.16649V8.49982C3.53932 8.59449 3.57132 8.6736 3.63532 8.73716C3.69932 8.80116 3.77843 8.83316 3.87266 8.83316ZM6.12932 8.83316C6.22399 8.83316 6.3031 8.80116 6.36666 8.73716C6.43021 8.67316 6.46199 8.59405 6.46199 8.49982V3.16649C6.46199 3.07182 6.42999 2.99271 6.36599 2.92916C6.30199 2.86516 6.22288 2.83316 6.12866 2.83316C6.03399 2.83316 5.95466 2.86516 5.89066 2.92916C5.82666 2.99316 5.79488 3.07227 5.79532 3.16649V8.49982C5.79532 8.59449 5.82732 8.6736 5.89132 8.73716C5.95532 8.80071 6.03466 8.83271 6.12932 8.83316Z"fill=#757575 /> 5728 </svg> 5729 </span></div></div>`) 5730 parent.find(".frameImageUploaded svg").hide() 5731 parent.find(".frameImage").addClass("uploaded") 5732 preview.attr("src", e.target.result); 5733 preview.show(); 5734 let formData = new FormData(); 5735 formData.append("file", file); 5736 const response = await fetch(`${host}/api/upload?name=${file.name}&type=image/jpeg&r=${Date.parse(new Date)}`, { 5737 method: "POST", 5738 body: formData 5739 }) 5740 const result = await response.json(); 5741 if(result){ 5742 parent.find(".resultPhotoSpotify").val(result.url) 5743 } 5744 } 5745 5746 reader.readAsDataURL(file); 5747 } else { 5748 preview.hide(); 5749 } 5750 }); 5751 5752 $(".spotifyAddons").delegate(".uploadResult", "click", function(){ 5753 $(this).next("input[type=file]").trigger("click") 5754 }) 5755 5756 $(".spotifyAddons").delegate(".changeUpload", "click", function(){ 5757 $(this).parents("input[type=file]").trigger("click") 5758 }) 5759 5760 $(".spotifyAddons").delegate(".removeUpload", "click", function(){ 5761 const parent = $(this).parents("[data-index]") 5762 parent.find(".uploadPhotoSpotify").val("") 5763 parent.find(".uploadResult label").show() 5764 parent.find(".uploadedResult").remove() 5765 parent.find(".frameImageUploaded svg").show() 5766 parent.find(".previewImage").hide() 5767 parent.find(".frameImage").removeClass("uploaded") 5768 }) 5769 5770 $(".spotifyAddons").delegate("label.checkbox", "click", function(){ 5771 const parent = $(this).parents("[data-index]") 5772 parent.toggleClass("checked") 5773 }) 5774 5775 $(".spotifyAddons").delegate(".spotifyLink", "change", async function(){ 5776 const parent = $(this).parents("[data-index]") 5777 const link = $(this).val() 5778 const data = await trackUrl(link) 5779 5780 console.log(data) 5781 5782 if(data.song) { 5783 parent.find(".spotifySong").val(data.song) 5784 parent.find(".spotifyData").find("h3").text(data.song) 5785 } 5786 if(data.artist) { 5787 parent.find(".spotifyArtist").val(data.artist) 5788 parent.find(".spotifyData").find("p").text(data.artist) 5789 } 5790 parent.find(".spotifyCode img").attr("src", `https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data.type.slice(0, -1)}:${data.trackId}`) 5791 // https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:track:1er51HCEBhIAtoEemKuC3M 5792 if (data.status === true) { 5793 parent.find(".btn-action .btn").attr("disabled", false) 5794 } else { 5795 parent.find(".btn-action .btn").attr("disabled", true) 5796 } 5797 }) 5798
5799 $(".spotifyAddons").delegate(".spotifySong", "keyup", async function(){ 5800 const parent = $(this).parents("[data-index]") 5801 const v = $(this).val() 5802 parent.find(".spotifyData h3").text(v) 5803 }) 5804 5805 $(".spotifyAddons").delegate(".spotifyArtist", "keyup", async function(){ 5806 const parent = $(this).parents("[data-index]") 5807 const v = $(this).val() 5808 parent.find(".spotifyData p").text(v) 5809 }) 5810 5811 $(".spotifyAddons").delegate(".btn-action .btn:not(.no-addon)", "click", async function(){ 5812 const parent = $(this).parents("[data-index]") 5813 const length = parent.data("length") 5814 const index = parent.data("index") 5815 const indexNext = Number(index) + 1 5816 customSpotify(indexNext, length, 'addon') 5817 }) 5818 5819 5820 $(".spotifyAddons").delegate(".btn-action .btn.finished", "click", async function(){ 5821 const parent = $(this).parents(".purchaseAddon") 5822 const next = parent.next(".sectionPurchase") 5823 parent.addClass("hide") 5824 next.removeClass("hide") 5825 next.find(".purchase-button").show() 5826 listAddon() 5827 }) 5828 5829 $(".spotifyAddons").delegate(".back-spotify", "click", async function(){ 5830 const t = $(this).parents("[data-index]") 5831 const parent = $(this).parents(".sectionPurchase") 5832 const current = t.data("index") 5833 const prevCurrent = Number(current) - 1 5834 if(current == 1) { 5835 parent.removeClass("purchaseAddonSpotify") 5836 parent.find(".purchase-button").show() 5837 parent.find(".headerPurchase h3").text("Make It More Special with Add-Ons!") 5838 $(".spotifyAddons").empty() 5839 $(".regulerAddons").show() 5840 return 5841 } 5842 t.hide() 5843 t.prev("[data-index]").show() 5844 t.remove() 5845 parent.find(".headerPurchase h3").text(`personalize spotify photo print - ${prevCurrent}`) 5846 }) 5847 5848 $("#personalizeBtn .btn").click(async function() { 5849 loadPopupPersonalize() 5850 }); 5851 5852 $(".sectionPurchaseSpotify").delegate(".btn[data-type=card]", "click", function(){ 5853 $(".sectionPurchaseSpotify").hide() 5854 loadPopupPersonalize() 5855 }) 5856 5857 $(".close-purchase-popup").click(function() { 5858 disablePopup(); 5859 }); 5860 $("#backgroundPopup").click(function() { 5861 // disablePopup(); 5862 }); 5863 5864 $("#popupCart .close-purchase-popup").click(function() { 5865 location.reload() 5866 }); 5867 5868 $('#popupCart').on('hide.bs.modal', function (e) { 5869 location.reload() 5870 }) 5871 5872 $(".next-card").click(function(){ 5873 const parent = $(this).parents(".sectionPurchase") 5874 const next = parent.next(".sectionPurchase") 5875 parent.addClass("hide") 5876 next.removeClass("hide") 5877 }) 5878 5879 $(".back-purchase-button").click(function(){ 5880 const parent = $(this).parents(".sectionPurchase") 5881 const prev = parent.prev(".sectionPurchase") 5882 parent.addClass("hide") 5883 prev.removeClass("hide") 5884 }) 5885 5886 $(document).keypress(function(e) { 5887 if (e.keyCode == 27 && popupStatus == 1) { 5888 disablePopup(); 5889 } 5890 }); 5891 5892 const parentImg = $(".case-img-preview") 5893 const parentVid = $(".case-video-preview") 5894 5895 function readURL(input) { 5896 if (input.files && input.files[0]) { 5897 let reader = new FileReader(); 5898 5899 let type = 'image/jpeg' 5900 const size = input.files[0].size 5901 if(input.files[0].type.match('video/')){ 5902 type = 'video/mp4' 5903 if(size > 15728640) { 5904 alert('File size exceeds maximum limit 15 MB') 5905 return 5906 } 5907 } else { 5908 if(size > 5242880) { 5909 alert('File size exceeds maximum limit 5 MB') 5910 return 5911 } 5912 } 5913 5914 reader.onload = function (e) { 5915 $(".nextBtn").attr("disabled", true) 5916 if(type === 'image/jpeg') { 5917 5918 $('.placeholder-image').hide(); 5919 $('.preview-image').show() 5920 $('.preview-image').attr('src', e.target.result); 5921 5922 } else { 5923 // parentVid.find(".ajax-loader").show(); 5924 $(".steps-card-preview").addClass("loading") 5925 } 5926 } 5927 5928 5929
5930 reader.readAsDataURL(input.files[0]); 5931 } 5932 } 5933 5934 async function readURLPapan(input) { 5935 if (input.files && input.files[0]) { 5936 let reader = new FileReader(); 5937 5938 reader.onload = function (e) { 5939 $('.btn-upload-papan').siblings('label').hide(); 5940 $('.btn-upload-papan img').attr('src', e.target.result); 5941 $('.btn-upload-papan img').show(); 5942 $('.svgLogoPapan').hide(); 5943 } 5944 5945 const type = 'image/jpeg' 5946 const name = `logo-8144957800663-${Date.parse(new Date())}` 5947 5948 let formData = new FormData(); 5949 formData.append("file", input.files[0]); 5950 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 5951 method: "POST", 5952 body: formData 5953 }) 5954 const result = await response.json(); 5955 if(result) { 5956 const url = result.url 5957 $("[data-properties=papan-logo]").val(url) 5958 } 5959 5960 reader.readAsDataURL(input.files[0]); 5961 } 5962 } 5963 5964 async function readURLAddress(input) { 5965 console.log(input, 'readURLAddress') 5966 if (input.files && input.files[0]) { 5967 let reader = new FileReader(); 5968 5969 reader.onload = function (e) { 5970 $('.photo-address').attr('src', e.target.result); 5971 $('.photo-address').show(); 5972 } 5973 5974 const type = 'image/jpeg' 5975 const name = input.files[0].name?.split('.')[0] 5976 5977 let formData = new FormData(); 5978 formData.append("file", input.files[0]); 5979 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 5980 method: "POST", 5981 body: formData 5982 }) 5983 const result = await response.json(); 5984 5985 reader.readAsDataURL(input.files[0]); 5986 5987 return result 5988 } 5989 } 5990 5991 async function addToCartUang() { 5992 var productAddOnId1 = 42122101162199; 5993 var productAddOnId2 = 42122101194967; 5994 var product_id = 8144957800663 5995 const data = { 5996 items: [ 5997 { 5998 quantity: $("#Quantity-" + productAddOnId1).val(), 5999 id: productAddOnId1, 6000 "properties": { "Time": $("#properties-time").val() } 6001 }, 6002 { 6003 quantity: $("#Quantity-" + productAddOnId2).val(), 6004 id: productAddOnId2, 6005 "properties": { "Time": $("#properties-time").val() } 6006 } 6007 ] 6008 } 6009 await fetch(window.Shopify.routes.root + 'cart/add.js', { 6010 method: 'POST', 6011 headers: { 6012 'Content-Type': 'application/json' 6013 }, 6014 body: JSON.stringify(data) 6015 }) 6016 .then(response => { 6017 console.error('Sukses Buket Uang:', response); 6018 $(".form-flower").submit() 6019 }) 6020 .catch((error) => { 6021 console.error('Error Buket Uang:', error); 6022 $(".form-flower").submit() 6023 }); 6024 } 6025 6026 async function saveCard(){ 6027 let isCard = true 6028 const kartu_penerima = $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '' 6029 const kartu_pengirim = $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '' 6030 const kartu_ucapan = $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '' 6031 const foto = $("#properties-photo").val() 6032 const video = $("#properties-video").val() 6033 const data = JSON.stringify({ 6034 "id": qrID, 6035 "penerima": $("#properties-nama-penerima").val(), 6036 "kartu_penerima": kartu_penerima, 6037 "kartu_ucapan": kartu_ucapan, 6038 "kartu_pengirim": kartu_pengirim, 6039 "foto": foto, 6040 "video": video, 6041 "productId": "8144957800663", 6042 "order_name": "", 6043 "status": "Cart" 6044 }) 6045 6046 6047 } 6048 6049 async function additem(items){ 6050 try { 6051 let formData = items 6052 if(items?.length) { 6053 formData = { 6054 'items': items 6055 }; 6056 } 6057 6058 const add = await fetch(window.Shopify.routes.root + 'cart/add.js', { 6059 method: 'POST', 6060 headers: { 6061 'Content-Type': 'application/json', 6062 'X-Requested-With':'xmlhttprequest' /* XMLHttpRequest is ok too, it's case insensitive */ 6063 }, 6064 body: JSON.stringify(formData) 6065 }) 6066 6067 const data = await add.json(); 6068 return data 6069 } catch(err){ 6070 console.log('Error additem', err) 6071 } 6072 } 6073 6074 async function addons(){ 6075 let items = [] 6076 $(".addon-item").each(function(){ 6077 const p = $(this) 6078 const props = p.next(".propsAddonSpotify") 6079 const id = $(this).data("id") 6080 const quantity = $(this).data("qty") 6081 const propId = $("#properties-time").val() 6082 let properties = {} 6083 if(id === 46067682607319) { 6084 const link = props.find(".spotifyLinkAddon").text() 6085 const photo = props.find(".spotifyFotoAddon").text() 6086 const song = props.find(".spotifySongAddon").text() 6087 const artist = props.find(".spotifyArtistAddon").text() 6088 properties = { 6089 id: propId, 6090 "Spotify Link": link !== '' ? link : '-', 6091 "Spotify Photo": photo !== '' ? photo : '-', 6092 "Spotify Song": song !== '' ? song : '-', 6093 "Spotify Artist": artist !== '' ? artist : '-', 6094 type: 'addon' 6095 } 6096 } else { 6097 properties = { 6098 "id": propId, 6099 "type": "addon" 6100 } 6101 } 6102 items.push({ 6103 id, 6104 quantity, 6105 properties 6106 }) 6107 }) 6108 return items 6109 } 6110 6111 async function propItems() { 6112 let props = {} 6113 $("[data-properties]").each(function(e){
6114 let elementType = this.tagName; 6115 const k = $(this).data("properties") 6116 if(k !== 'penerima' && k !== 'ucapan' && k !== 'pengirim' && k !== 'nama-penerima' && k !== 'alamat-penerima' && k !== 'telepon-penerima' && k !== 'company' && k !== 'province' && k !== 'foto-alamat' && k !== 'papan-logo') { 6117 const v = elementType === 'SELECT' ? $(this).find(":selected").val() : $(this).val(); 6118 if(v !== '') { 6119 props[k] = v?.replace(/[\s\n]/g, ''); 6120 } 6121 } 6122 }) 6123 return props 6124 } 6125 6126 async function showPopupCart(items){ 6127 if(productType !== '') { 6128 console.log("clarity event " + productType + ' completeOrder') 6129 window.clarity("event", `${productType} completeOrder`) 6130 // window.clarity("set", productType, `completeOrder - ${productDate}`) 6131 } 6132 $("#popupCart").show() 6133 6134 $(".propDeliveryCity").text($("#cities").val()) 6135 $(".propDeliveryDate").text($("#propDeliveryDate").val()) 6136 $(".propDeliveryTime").text($("#propDeliveryTime").val()) 6137 $(".propDeliveryName").text($("[data-properties=nama-penerima]").val()) 6138 $(".propDeliveryAddress").text($("[data-properties=alamat-penerima]").val()) 6139 $(".propDeliveryPhone").text($("[data-properties=telepon-penerima]").val()) 6140 $(".propDeliveryProv").text($("#province").val()) 6141 $(".propDeliveryZip").text($("#zip").val()) 6142 6143 6144 6145 const addons = [] 6146 if(items && items.length > 0) { 6147 for(let i = 1; i < items.length; i++) { 6148 const spotifyLink = items[i].properties['Spotify Link'] 6149 const spotifyPhoto = items[i].properties['Spotify Photo'] 6150 const spotifySong = items[i].properties['Spotify Song'] 6151 const spotifyArtist = items[i].properties['Spotify Artist'] 6152 const price = items[i].price / 100 6153 const props = spotifyLink ? `<div class="propsAddonCart row m-0"> 6154 <div class="col-12 col-lg-2"></div> 6155 <div class="col-12 col-lg-10"> 6156 <p> 6157 <span>spotify link</span> 6158 <span>${spotifyLink}</span> 6159 </p> 6160 <p> 6161 <span>Upload Photo</span> 6162 <span>${spotifyPhoto}</span> 6163 </p> 6164 <p> 6165 <span>song / playlist name</span> 6166 <span>${spotifySong}</span> 6167 </p> 6168 <p> 6169 <span>artist name</span> 6170 <span>${spotifyArtist}</span> 6171 </p> 6172 </div> 6173 </div>` : ''; 6174 addons.push(`<div class="row m-0"> 6175 <div class="imgAddonCart col-2"> 6176 <img 6177 width="43" 6178 src="${items[i].image}" 6179 alt="" 6180 > 6181 </div> 6182 <div class="imgAddonTitlePrice col-10 align-self-center"> 6183 <div class="row justify-content-between m-0"> 6184 <div class="col-12 col-lg-8"> 6185 <h5>${items[i].title}</h5> 6186 </div> 6187 <div class="col-12 col-lg-4 text-lg-right"> 6188 <span>${rupiah.format(price)}</span> 6189 </div> 6190 </div> 6191 </div> 6192 </div>${props}`) 6193 } 6194 } 6195 // console.log(addons) 6196 if(addons.length === 0) { 6197 $(".itemAddonCart").hide() 6198 return 6199 } 6200 $(".toggleAddonCart h4").text(`add-ons (${items.length - 1})`) 6201 $(".wrapperItemAddonCart").html(addons) 6202 } 6203 6204 const money = (money) => { 6205 return new Intl.NumberFormat('id-ID', 6206 { style: 'currency', currency: 'IDR', minimumFractionDigits: 0 } 6207 ).format(money); 6208 } 6209 6210 async function showNoteMoney() { 6211 let qty50k = $("[data-properties='Uang 50k']").val() 6212 let qty100k = $("[data-properties='Uang 100k']").val() 6213 const total50k = Number(qty50k) * 50000 6214 const total100k = Number(qty100k) * 100000 6215 const total_all = total50k + total100k 6216 $(".prop50k").html(`<span>${qty50k} Lembar: <strong class="pl-1">${money(total50k)}</strong></span>`) 6217 $(".prop100k").html(`<span>${qty100k} Lembar: <strong class="pl-1">${money(total100k)}</strong></span>`) 6218 $(".itemMoney").html(`<p>For the money arrangement, please transfer <strong>IDR ${money(total_all)}</strong> to <strong>Bank Mandiri 1020001234522 (PT Modern Mekar Abadi)</strong> and contact our <a href="https://situsbetatogel.b-cdn.net/stopgreenwash/" target="_blank" style="text-decoration: underline;
6218 color: #8d3f2d">Customer Service</a> to confirm with proof of payment.</p>`) 6219 } 6220 6221 async function removeImage() { 6222 const data = JSON.stringify({ 6223 "ID": $("#properties-properties-qrId").val(), 6224 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 6225 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 6226 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 6227 "Nama Penerima": $("#properties-nama-penerima").val(), 6228 "Order Number":"", 6229 "Status":"Product", 6230 "Foto": "", 6231 "Media": $("#properties-video").val(), 6232 "Image": "8144957800663" 6233 }) 6234 const remove = updateCard(data) 6235 if(remove) { 6236 $(this).hide() 6237 $("#properties-photo").val("-") 6238 $(".placeholder-image").show() 6239 $(".preview-image").attr("src", "") 6240 } 6241 } 6242 6243 async function removeVideo() { 6244 const data = JSON.stringify({ 6245 "ID": $("#properties-properties-qrId").val(), 6246 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 6247 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 6248 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 6249 "Nama Penerima": $("#properties-nama-penerima").val(), 6250 "Order Number":"", 6251 "Status":"Product", 6252 "Foto": $("#properties-photo").val(), 6253 "Media": "", 6254 "Image": "8144957800663" 6255 }) 6256 const remove = updateCard(data) 6257 if(remove) { 6258 $("#properties-video").val("-") 6259 $(this).find("img").hide() 6260 $(this).hide() 6261 $(this).prev("p").text("Add video to make it more special (optional)") 6262 $("#label-input-video").show() 6263 $("#label-input-video span").text("Upload Video") 6264 $(".case-video-preview p span").remove() 6265 } 6266 } 6267 6268 async function loadItemOccasion(t, occasion) { 6269 const name = occasion?.replace('greeting-card-', '') 6270 $("#kartu-ucapan").val("") 6271 $("[data-occassion]").removeClass("selected") 6272 $("[data-properties=ucapan]").val("") 6273 $("#save-card").attr("disabled", true) 6274 t.addClass("selected") 6275 $("#show_note").attr("data-card-occassion", name) 6276 $.get(`https://outerbloom.com/collections/${occasion}/products.json`, function(data, status){ 6277 const products = data.products 6278 const html = [] 6279 for(let i = 0; i < products.length; i++) { 6280 const id = products[i].id 6281 const variantId = products[i].variants[0].id 6282 const img = products[i].images[0].src 6283 const title = products[i].title 6284 const price = products[i].variants[0].price 6285 const qty = products[i].variants[0].inventory_quantity 6286 const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'}${i === 0 ? ' selected' : ''}" data-id=${id}> 6287 <label for="card-${variantId}"></label> 6288 <div class="card-image"> 6289 <img src="${img}" alt="${title}" width="" height="" /> 6290 </div> 6291 <div class="card-meta text-center"> 6292 <h5>${title}</h5> 6293 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 6294 <input id="card-${variantId}" type="radio" name="id" value="${variantId}" data-price="${price}"> 6295 </div> 6296 </div>` 6297 html.push(body) 6298 } 6299 const withoutCard = `<div class="item-card item-without-card"> 6300 <label for="card-0"></label> 6301 <div class="card-image"> 6302 <img src="https://cdn.shopify.com/s/files/1/1589/6833/t/129/assets/without-card.png?v=1747632283" alt="Without card" width="" height="" /> 6303 </div> 6304 <div class="card-meta text-center"> 6305 <h5>
6305Send without a greeting card</h5> 6306 <input id="card-0" type="radio" name="id" value="" data-price=""> 6307 </div> 6308 </div>` 6309 $("#itemCards .items-card").html(html.length === 0 ? '<p>No Item available</p>' : html.join("")) 6310 }); 6311 } 6312 6313 $(document).ready(function(){ 6314 6315 // Observer to auto-trigger addon loading when addon section becomes visible 6316 const addonObserver = new MutationObserver(function(mutations) { 6317 mutations.forEach(function(mutation) { 6318 const target = $(mutation.target) 6319 if(target.hasClass('purchaseAddon') && mutation.type === 'attributes' && mutation.attributeName === 'class') { 6320 if(!target.hasClass('hide')) { 6321 // Addon section just became visible, ensure items are loaded 6322 setTimeout(function() { 6323 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6324 console.log("Auto-triggering addon load...") 6325 $("[data-addon=upsell-all]").trigger("click") 6326 } 6327 }, 150) 6328 } 6329 } 6330 }) 6331 }) 6332 6333 // Start observing addon section 6334 const addonSection = document.querySelector('.purchaseAddon') 6335 if(addonSection) { 6336 addonObserver.observe(addonSection, { 6337 attributes: true, 6338 attributeFilter: ['class'] 6339 }) 6340 } 6341 6342 $(".purchasePopup").delegate("#addtocart-card", "click", async function(){ 6343 6344 $(this).find("span").addClass("loading") 6345 let isValid = true 6346 $(".formAddressPurchase [required]").each(function(){ 6347 const t = $(this) 6348 const input = t.val() 6349 const p = t.parent() 6350 if(input === '') { 6351 p.addClass("error") 6352 isValid = false 6353 } 6354 }) 6355 6356 if(!isValid) { 6357 $(this).find("span").removeClass("loading") 6358 return 6359 } 6360 6361 let items = [] 6362 const mainProps = { 6363 6364 "Delivery Date": $("#propDeliveryDate").val(), 6365 "Delivery Time": $("#propDeliveryTime").val() !== '' ? $("#propDeliveryTime").val() : '-' , 6366 "Kota Pengiriman": $("#cities").val(), 6367 "Nama Penerima": $("[data-properties=nama-penerima]").val() !== '' ? $("[data-properties=nama-penerima]").val() : '-' , 6368 "Alamat Penerima": $("[data-properties=alamat-penerima]").val() !== '' ? $("[data-properties=alamat-penerima]").val() : '-' , 6369 "Kodepos": $("#zip").val() !== '' ? $("#zip").val() : '-' , 6370 "Telepon Penerima": $("[data-properties=telepon-penerima").val() !== '' ? $("[data-properties=telepon-penerima").val() : '-' , 6371 6372 6373 "Papan Nama Penerima": $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '-' , 6374 "Papan Ucapan": $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '-' , 6375 "Papan Nama Pengirim": $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '-' , 6376 "Papan Logo": $("[data-properties=papan-logo]").val() !== '' ? $("[data-properties=papan-logo]").val() : '-' , 6377 "Foto Alamat": $("[data-properties=foto-alamat]").val() !== '' ? $("[data-properties=foto-alamat]").val() : '-' , 6378 6379 6380 "Province": $("#province").val() !== '' ? $("#province").val() : '-' , 6381 "Country": $("#properties-kota-pengiriman-country").val() !== '' ? $("#properties-kota-pengiriman-country").val() : '-' , 6382 "Shipping": $("#properties-shipping").val() !== '' ? $("#properties-shipping").val() : '-' , 6383 "Company": $("[data-properties=company]").val() !== '' ? $("[data-properties=company]").val() : '-' , 6384 "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 6385 "type": 'product' 6386 } 6387 const props = await propItems() 6388 properties = {...mainProps, ...props }; 6389 const id = $("#productSelect").find('option:selected').val() 6390 console.log(id, 'main ID') 6391 const mainItem = { 6392 id: Number(id), 6393 quantity: 1, 6394 properties 6395 } 6396 items.push(mainItem) 6397 const cardId = $("#itemCards").find(".selected input").val() 6398 const cardItem = { 6399 id: Number(cardId), 6400 quantity: 1, 6401 properties: { "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', type: 'card' } 6402 } 6403 console.log(cardId, 'cardId') 6404 if(cardId) { 6405 items.push(cardItem) 6406 } 6407 const addon = await addons() 6408 if(addon) { 6409 for(let i = 0;
6409 i < addon.length; i++){ 6410 items.push({ 6411 id: addon[i].id, 6412 quantity: addon[i].quantity, 6413 properties: addon[i].properties 6414 }) 6415 } 6416 } 6417 const addItems = await additem(items) 6418 console.log(addItems.items, 'add items') 6419 if(addItems) { 6420 $(this).find("span").removeClass("loading") 6421 disablePopup() 6422 showPopupCart(addItems.items) 6423 6424 localStorage.setItem("items", JSON.stringify(addItems.items)) 6425 } 6426 }) 6427 6428 $("#addtocart-cart .btn").click(async function(){ 6429 const id = $("#productSelect").find('option:selected').val() 6430 const mainProps = { 6431 id: $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 6432 type: 'product' 6433 } 6434 const props = await propItems() 6435 const properties = { ...mainProps, ...props }; 6436 const items = { 6437 id: Number(id), 6438 quantity: 1, 6439 properties 6440 } 6441 const addItems = await additem(items) 6442 if(addItems) { 6443 showPopupCart(addItems.items) 6444 localStorage.setItem("items", JSON.stringify(addItems)) 6445 } 6446 }) 6447 6448 $(".formAddressPurchase [required]").change(function(){ 6449 const t = $(this) 6450 const p = t.parent() 6451 const v = t.val() 6452 if(v !== '') { 6453 p.removeClass("error") 6454 } 6455 }) 6456 6457 $("#save-card").click(async function(){ 6458 const parent = $(this).parents(".sectionPurchase") 6459 const next = parent.next(".sectionPurchase") 6460 $(this).find("span").addClass("loading") 6461 const card = await saveCard() 6462 console.log(card, 'ssaveCCC') 6463 if(card?.status === 200 || card?.status === 201) { 6464 $(".scanCard").removeClass("hide") 6465 $(this).find("span").removeClass("loading") 6466 parent.addClass("hide") 6467 next.removeClass("hide") 6468 if(next.hasClass("purchaseAddon")) { 6469 $("[data-addon=upsell-all]").click() 6470 console.log("clarity event addons") 6471 window.clarity("event", `${productType} add-ons`) 6472 // Ensure addon items are loaded when entering addon popup 6473 setTimeout(function() { 6474 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6475 $("[data-addon=upsell-all]").trigger("click") 6476 } 6477 }, 100) 6478 } 6479 if(next.hasClass("purchaseAddress")) { 6480 $("#zip").select2() 6481 } 6482 } 6483 }) 6484 6485 $("#skip-card").click(async function(){ 6486 $("#greetingCard [data-properties]").val("") 6487 $("#properties-photo").val("") 6488 $("#properties-video").val("") 6489 const parent = $(this).parents(".sectionPurchase") 6490 const next = parent.next(".sectionPurchase") 6491 parent.addClass("hide") 6492 next.removeClass("hide") 6493 // $("#itemCards").html("") 6494 removeImage() 6495 removeVideo() 6496 if(next.hasClass("purchaseAddon")) { 6497 $("[data-addon='upsell-all']").click() 6498 console.log("clarity event addons") 6499 window.clarity("event", `${productType} add-ons`) 6500 // Ensure addon items are loaded when entering addon popup 6501 setTimeout(function() { 6502 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6503 $("[data-addon='upsell-all']").trigger("click") 6504 } 6505 }, 100) 6506 } 6507 if(next.hasClass("purchaseAddress")) { 6508 $("#zip").select2() 6509 } 6510 }) 6511 6512 $("#msgCard").click(async function(){ 6513 $(this).parent().addClass("loading") 6514 let occasion = $(".selected[data-occassion]").data("occassion") 6515 occasion = occasion?.replace("greeting-card-", "") 6516 const { data } = await getFetch(`${host}/api/card/template/occasion?name=${occasion}`); 6517 const d = data?.data 6518 for(let i = 0; i < d.length; i++) { 6519 const num = Math.floor(Math.random() * (d.length - 1 + 1) + 1); 6520 const greeting = d[num]?.Greeting 6521 $(".greetingCard textarea").val(greeting) 6522 $(this).parent().removeClass("loading") 6523 } 6524 $("#save-card").attr("disabled", false) 6525 }) 6526 6527 $(".sectionPurchaseBoard .next-purchase-button").click(function(){ 6528 const parent = $(this).parents(".sectionPurchase") 6529 const next = parent.next(".sectionPurchase") 6530 parent.addClass("hide") 6531 next.removeClass("hide") 6532 }) 6533 6534 $("#editCard").click(function(){ 6535 $(".custom-card").show() 6536 $(".preview-card").hide() 6537 }) 6538 6539 $("#first_name, #last_name").change(function(){ 6540 const v = $(this).val() 6541 const first_name = $("#first_name").val() 6542 const last_name = $("#last_name").val() !== '' ? ' ' + $("#last_name").val() : '' 6543 $("[data-properties=nama-penerima]").val(first_name+last_name) 6544 }) 6545 6546 $("[data-occassion]").click(function(){ 6547 const t = $(this) 6548 const p = t.parents(".sectionPurchase") 6549 // $(".greetingCard").addClass("disabled") 6550 const occasion = t.data("occassion") 6551 loadItemOccasion(t, occasion) 6552 }) 6553 6554 $("#itemCards").delegate(".item-card:not(.item-without-card) label", "click", function(){ 6555 const id = $(this).parent(".item-card").data("id") 6556 const t = $(this).parent(".item-card") 6557 const target = t.find("input") 6558 const v = $('.item-card input[type="radio"]:checked').val(); 6559 $("#itemCards .item-card").removeClass("selected") 6560 t.addClass("selected") 6561 $("#itemCards .item-card").find("input").attr("name", "") 6562 if(target.length > 0) { 6563 target.attr("name", "id[]") 6564 $("#properties-card").val(id) 6565 $(".greetingCard").removeClass("disabled") 6566 $("#skip-card").attr("disabled", false) 6567 } else { 6568 $("#properties-card").val("") 6569 } 6570 }) 6571 6572 $("#itemCards").delegate(".item-without-card label", "click", function(){ 6573 const parent = $(this).parents(".sectionPurchase") 6574 const next = parent.next(".sectionPurchase") 6575 $(".greetingCard").addClass("disabled") 6576 parent.addClass("hide") 6577 next.removeClass("hide") 6578 $("[data-addon=upsell-all]").click() 6579 $("#zip").select2() 6580 }) 6581 6582 $("[data-properties=ucapan]").keyup(function(){ 6583 const v = $(this).val() 6584 const p = $(this).parents(".sectionPurchase") 6585 $(".purchaseAddress").find(".greetingCard textarea").val(v) 6586 if(v.length > 3) { 6587 p.find(".next-purchase-button").attr("disabled", false) 6588 } else { 6589 p.find(".next-purchase-button").attr("disabled", true) 6590 } 6591 }) 6592 6593 $("[data-properties=penerima]").keyup(function(){ 6594 const v = $(this).val() 6595 $(".purchaseAddress").find("[data-properties=penerima]").val(v) 6596 }) 6597 6598 $("[data-properties=pengirim]").keyup(function(){ 6599 const v = $(this).val() 6600 $(".purchaseAddress").find("[data-properties=pengirim]").val(v) 6601 }) 6602 6603 $(document).click(function(e){
6604 6605 if($(e.target).closest('.wrapperPopupCart').length != 0) return false; 6606 // $('#popupCart').fadeOut('slow'); 6607 // location.reload() 6608 }); 6609 6610 $(".toggleAddonCart").click(function(){ 6611 const p = $(this).parent(".itemAddonCart") 6612 p.toggleClass("open") 6613 }) 6614 6615 $(".btnViewCart").click(function(){ 6616 window.location.href = "https://outerbloom.com/cart"; 6617 }) 6618 6619 $(".btnViewCheckout").click(async function(){ 6620 $(this).find("span").addClass("loading") 6621 let zip = $("#zip").val() 6622 const first_name = $("#first_name").val() 6623 const last_name = $("#last_name").val() 6624 const company = $("#company").val() !== '' ? $("#company").val() : '' 6625 const address1 = $("#delivery_address").val() 6626 const address2 = zip && zip !== '' ? zip?.split(' - ')[1] : '' 6627 zip = zip && zip !== '' ? zip?.split(' - ')[0] : '' 6628 const phone = $("#recipient_number").val() 6629 const city = $("#cities").val() 6630 const province = $("#province").val() 6631 const country = 'Indonesia' 6632 const ver = Date.parse(new Date()) 6633 const params = `checkout[email]=&checkout[shipping_address][first_name]=${first_name}&checkout[shipping_address][last_name]=${last_name}&checkout[shipping_address][company]=${company}&checkout[shipping_address][address1]=${address1}&checkout[shipping_address][address2]=${address2}&checkout[shipping_address][city]=${city}&checkout[shipping_address][country]=${country}&checkout[shipping_address][province]=${province}&checkout[shipping_address][zip]=${zip}&checkout[shipping_address][phone]=${phone}&v=${ver}` 6634 6635 const clear = await fetch(`/cart/clear.js`, {method: 'POST'}) 6636 if(clear.status === 200) { 6637 const savedItem = window.localStorage.getItem("items"); 6638 const items = JSON.parse(savedItem) 6639 const addItems = await additem(items) 6640 console.log(addItems, 'new addItems') 6641 if(addItems) { 6642 window.location.href = `https://outerbloom.com/checkout?${params}`; 6643 } 6644 } 6645 }) 6646 6647 $(".btnContinueShopping").click(function(){ 6648 window.location.href = "https://outerbloom.com/"; 6649 }) 6650 6651 if (isIOS) { 6652 $(".empty-state-card").click(function(){ 6653 $("#input-foto").trigger("click") 6654 }) 6655 $(".btn-upload-image").click(function(){ 6656 $("#input-foto").trigger("click") 6657 }) 6658 $("[for=input-video]").click(function(){ 6659 $("#input-video").trigger("click") 6660 }) 6661 $(".btn-upload-papan").click(function(){ 6662 $("#logoPapan").trigger("click") 6663 }) 6664 } 6665 6666 $("[data-properties]").each(function(){ 6667 const select = $(this).parents(".form-group").find("select") 6668 $(this).change(function(){ 6669 const name = $(this).data("properties") 6670 const v = $(this).val() 6671 if (name == 'telepon-penerima') { 6672 let phone = v.replace(/[^0-9]/g, '') 6673 $(this).val(phone); 6674 $("#properties-telepon-penerima").val(phone) 6675 $('.iti__search-input').val('-') 6676 } else { 6677 $("#properties-" + name).val(v) 6678 } 6679 }) 6680 select.on("change", function(){ 6681 const name = $(this).data("properties") 6682 const v = $(this).val() 6683 $("#properties-" + name).val(v) 6684 }) 6685 }) 6686 6687 $("#show_note").click(function(){ 6688 nameq = $("#properties-nama-penerima").val() 6689 dear = $("#properties-kartu-nama-penerima").val() 6690 card = $("[data-properties=ucapan]").val() 6691 sender = $("#properties-kartu-nama-pengirim").val() 6692 photo = $("#properties-photo").val() 6693 video = $("#properties-video").val() 6694 updateCard(nameq, dear, card, sender, photo, video, status) 6695 }) 6696 6697 $(".remove-image").click(function(e){ 6698 e.preventDefault() 6699 $(this).find("img").show() 6700 removeImage() 6701 }) 6702 6703 $(".remove-media").click(function(e){ 6704 e.preventDefault() 6705 $(this).find("img").show() 6706 removeVideo() 6707 }) 6708 6709 6710 6711 $("[data-delivery_method]").click(function(e){
6712 e.preventDefault() 6713 const t = $(this) 6714 const data = t.data("delivery_method") 6715 $("[data-delivery_method]").removeClass("selected") 6716 t.addClass("selected") 6717 $("#cities").val("") 6718 $("#properties-delivery-date").val("-") 6719 $("#deliveryDate button").removeClass("selected") 6720 $("#full-date").val("Full Calendar â") 6721 $("#propDeliveryDate").val("") 6722 const step3 = $("#step-3") 6723 if(data.match('PickUp')) { 6724 $(".selfpickup-point").show() 6725 step3.find("[data-finished=false]").hide() 6726 $("#panel-4").hide() 6727 step3.find("[data-finished=true]").show() 6728 $("#cities").attr("required", false) 6729 $("#form-group-city").hide() 6730 $("#row-delivery-time").hide() 6731 $("#propDeliveryTime, #properties-delivery-time, #properties-nama-penerima, #properties-alamat-penerima, #properties-kodepos, #properties-kodepos, #properties-telepon-penerima").val("-") 6732 $("#propDeliveryTime").attr("required", false) 6733 // $("#deliveryDate").find("button:first-child").addClass("stop") 6734 $(".form-selfpickup").show() 6735 $(".form-delivery").hide() 6736 $(".form-delivery").find("input, textarea, select").val("") 6737 $(".form-delivery").find("input, textarea, select").attr("required", false) 6738 $("#properties-shipping").val("0") 6739 $("#noteDeliveryDate").hide() 6740 $(".form-delivery .form-control").attr("required", false) 6741 $("#stepNav4").hide() 6742 6743 $("#deliveryDate").find("button:nth-child(1)").addClass("stop") 6744 6745 6746 6747 if(timeOfDay >= 16.01){ 6748 $("#deliveryDate").find("button:nth-child(2)").addClass("stop") 6749 } 6750 } else { 6751 6752 6753 $("#deliveryDate").find("button:nth-child(1)").removeClass("stop") 6754 step3.find("[data-finished=false]").show() 6755 $("#panel-4").show() 6756 step3.find("[data-finished=true]").hide() 6757 $("#cities").attr("required", true) 6758 $(".selfpickup-point").hide() 6759 $("#form-group-city").show() 6760 $("#cities").val('').trigger('change'); 6761 $("#properties-kota-pengiriman").val("-") 6762 6763 $("#row-delivery-date, #row-delivery-time").show() 6764 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 6765 $("#deliveryDate").find("button").removeClass("stop") 6766 $(".form-selfpickup").hide() 6767 $(".form-delivery").show() 6768 $(".form-delivery").find("input, textarea, select").attr("required", true)
6769 $(".form-delivery [data-properties]").attr("readonly", false) 6770 $("#properties-kodepos").val("-") 6771 $("#properties-alamat-penerima").val("-") 6772 $(".form-delivery .form-control").attr("required", true) 6773 $(this).parents(".setup-content").attr("id", "step-1") 6774 6775 $("#stepNav4").show() 6776 } 6777 }) 6778 6779 $("[name=selfpickup]").click(function(){ 6780 const p = $(this).parents(".row-pickup") 6781 const pickupCity = $("input[name='selfpickup']:checked").val(); 6782 const pickupAddress = $("input[name='selfpickup']:checked").data("address"); 6783 const pickupZip = $("input[name='selfpickup']:checked").data("zip"); 6784 6785 $(".row-pickup").removeClass("selected") 6786 p.addClass("selected") 6787 6788 $("#properties-kota-pengiriman").val(pickupCity) 6789 $("#province").val("Jakarta") 6790 $("#properties-alamat-penerima").val(pickupAddress) 6791 $("#properties-kodepos").val(pickupZip) 6792 }) 6793 6794 $("#cities").change(function(e){ 6795 e.preventDefault() 6796 $(this).parent(".row").find("p.error").remove() 6797 $("#full-date").val("Full Calendar") 6798 $("#deliveryDate, #deliveryDateFull label ").show() 6799 $("#deliveryDateFull").removeClass("filled") 6800 $(".btnChangeDeliveryDate").addClass("hide") 6801 $("#full-date").prop('disabled', false); 6802 $("#stepNav2, #stepNav3, #stepNav4").removeClass("btn-success") 6803 $("#stepNav2, #stepNav3, #stepNav4").find("a").attr("disabled", true) 6804 const step3 = $("#step-3") 6805 $("#cityNote").remove() 6806 $("#noteDeliveryDate").hide() 6807 $("#noteDeliveryDate").empty() 6808 let v = $(this).val() 6809 let v2 = $('option:selected', this).attr('data-city'); 6810 let v3 = $('option:selected', this).attr('data-province'); 6811 let price = $('option:selected', this).attr('data-price'); 6812 $("#country").val(v) 6813 $("#properties-kota-pengiriman").val(v) 6814 $("#properties-shipping").val(price) 6815 $("#deliveryDate button, #deliveryTime button, .calendarseasonal .button").removeClass("selected") 6816 $("#properties-delivery-date, #properties-delivery-time").val("-") 6817 $("#propDeliveryDate, #propDeliveryTime").val("") 6818 let note = $('option:selected', this).attr('data-note'); 6819 if(v === 'Kota Lainnya') { 6820 $("#noteDeliveryDate").show() 6821 $("#noteDeliveryDate").text("Order akan segera dikirim. Estimasi tanggal diterima akan disesuaikan dengan waktu pengiriman oleh pihak ekspedisi ke lokasi Anda.") 6822 $("#zip").attr("required", false) 6823 $("#zip").hide() 6824 $("#propDeliveryDate, #propDeliveryTime").attr("required", false) 6825 $("#propDeliveryDate, #properties-delivery-date, #propDeliveryTime, #properties-delivery-time").val("-") 6826 $("#row-delivery-date, #row-delivery-time").hide() 6827 $("#properties-shipping").val("") 6828 // $(this).parents(".setup-content").attr("id", "step-2") 6829 6830 } else { 6831 $("#noteDeliveryDate").hide() 6832 $("#zip").attr("required", true) 6833 $("#zip").show() 6834 $("#row-delivery-date, #row-delivery-time").show() 6835 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 6836 $("#deliveryDate").find("button").removeClass("stop") 6837 // $(this).parents(".setup-content").attr("id", "step-1") 6838 6839 } 6840 6841 6842 6843 // if(v !== 'Jakarta') { 6844 // $("[data-type=upsell]").hide() 6845 // } else { 6846 // $("[data-type=upsell]").show() 6847 // } 6848 // $('.collection-addons')[0].swiper.update(); 6849 6850 6851 getProvince(v) 6852 $("#zip").html(`<option value="">Choose Postal Code</option>`) 6853 renderZip(v, v2, v3) 6854 6855 disabledSameDay() 6856 6857 6858 if(v !== 'Jakarta' && v !== 'Depok' && v !== 'Bekasi' && v !== 'Tangerang') { 6859 6860 $("#cardOccasion, #navAddon, .collection-addons").hide() 6861 6862 $("[data-addon=giftcard]").show() 6863 $("[data-addon=giftcard]").click() 6864 $("#itemAddons").show() 6865 $("#flower-step").addClass("nonjadetabek") 6866 } else { 6867 $("#cardOccasion, #navAddon, .collection-addons").show() 6868 $("[data-addon=all]").click() 6869 $("#flower-step").removeClass("nonjadetabek") 6870 } 6871 6872 if(v !== '') { 6873 $("#personalizeBtn .btn").attr("disabled", false) 6874 } else { 6875 $("#personalizeBtn .btn").attr("disabled", true) 6876 } 6877 6878 }) 6879 6880 $("#zip").change(function(e){
6881 let v = $(this).val() 6882 var city = $("#cities").find('option:selected'); 6883 $("#properties-kodepos").val(v) 6884 if(city === 'Kota Lainnya') { 6885 $(this).attr("required", true) 6886 $("#recipient-address").val("") 6887 } 6888 }) 6889 6890 6891 var minDate = +7 6892 6893 6894 6895 $("#full-date").datepicker({ 6896 minDate, 6897 dateFormat: 'Mdd_yy', //Nop22_2021, 6898 6899 beforeShowDay: disabledays, 6900 6901 onSelect: function (date) { 6902 $("#deliveryDate, #deliveryDateFull label ").hide() 6903 $("#deliveryDateFull").addClass("filled") 6904 $(".btnChangeDeliveryDate").removeClass("hide") 6905 $("#full-date").prop('disabled', true); 6906 $('#propDeliveryDate, #properties-delivery-date').val('Kirim_'+date); 6907 $(".date-full").addClass("selected") 6908 $(".date-single, .calendar-group").removeClass("selected") 6909 $("#propDeliveryTime").val('') 6910 $("#properties-delivery-time").val('-') 6911 $(".time-single").removeClass("selected") 6912 6913 6914 } 6915 }); 6916 6917 $(".btnChangeDeliveryDate").click(function(){ 6918 $("#deliveryDate, #deliveryDateFull label ").show() 6919 $("#deliveryDateFull").removeClass("filled") 6920 $(".btnChangeDeliveryDate").addClass("hide") 6921 $("#full-date").prop('disabled', false); 6922 }) 6923 6924 $("#deliveryDate").delegate(".calendarbutton:not(.date-full)", "click", function(e){ 6925 e.preventDefault() 6926 $(this).parents("#row-delivery-date").find("p.error").remove() 6927 const fulldate = $(this).data("fulldate") 6928 const day = $(this).data("day") 6929 const date = $(this).data("date")
6930 const month = $(this).data("month") 6931 const year = $(this).data("year") 6932 const off_pagi = $(this).data("offpagi") 6933 const off_siang = $(this).data("offsiang") 6934 const off_Malam = $(this).data("offMalam") 6935 $(".calendarbutton").removeClass("selected") 6936 $(this).addClass("selected") 6937 $("#propDeliveryDate, #properties-delivery-date").val(`Kirim_${month}${date}_${year}`) 6938 $("#propDeliveryTime").val('') 6939 $("#properties-delivery-time").val('-') 6940 $(".calendarbutton2").removeClass("selected") 6941 $("#full-date").val("Full Calendar") 6942 6943 6944 if(off_pagi && timeOfDay > off_pagi) { 6945 $("[data-time=Morning]").attr("disabled", true) 6946 } else { 6947 $("[data-time=Morning]").attr("disabled", false) 6948 } 6949 if(off_siang && timeOfDay > off_siang) { 6950 $("[data-time=Afternoon]").attr("disabled", true) 6951 } else { 6952 $("[data-time=Afternoon]").attr("disabled", false) 6953 } 6954 6955 6956 6957 }) 6958 6959 if(today === 14 && timeOfDay > 17.00) { 6960 $("#deliveryDate button:first-child").attr("disabled", true) 6961 } 6962 6963 $("#deliveryTime").delegate(".calendarbutton2", "click", function(e){ 6964 e.preventDefault() 6965 const time = $(this).data("time") 6966 const date = $("#propDeliveryDate").val() 6967 if(date == '') { 6968 return alert('Silakan pilih tanggal terlebih dahulu') 6969 } 6970 $(".calendarbutton2").removeClass("selected") 6971 $(this).addClass("selected") 6972 $("#propDeliveryTime, #properties-delivery-time").val(`KirimJam_${date.replace('Kirim_','')}_${time}`) 6973 }) 6974 6975 $('textarea.has-limit, input.has-limit').keyup(function () { 6976 max = this.getAttribute("maxlength"); 6977 let len = $(this).val().length; 6978 let limit = $(this).siblings(".limit"); 6979 if (len > max) { 6980 alert('you have reached the limit'); 6981 } else { 6982 limit.text(`${len}/${max}`); 6983 } 6984 }); 6985 6986 $("#button-action-step .btn").click(function(){ 6987 $(this).find("span").text("Processing..."); 6988 }); 6989 6990 $(".finishBtn").on('click', function() { 6991 $(this).addClass("is-adding"); 6992 // $(this).click(); 6993 }); 6994 6995 $('.setup-panel .nav-item a.btn-success').trigger('click'); 6996 6997 $("#button-action .btn").click(function(){ 6998 $("#flower-step").addClass("block"); 6999 $("#button-action").hide(); 7000 }); 7001 7002 $(".close-how-order").click(function(){ 7003 $("#flower-step").removeClass("block"); 7004 $("#button-action").show(); 7005 }); 7006 7007 $("#input-foto, #input-video").change(function(e){ 7008 readURL(this); 7009 }); 7010 7011 $("#logoPapan").change(function(){ 7012 readURLPapan(this); 7013 }); 7014 7015 $("#address-upload").change(async function(){ 7016 const upload_address = await readURLAddress(this) 7017 if(upload_address) { 7018 const url = upload_address.url 7019 $(".props-address-upload").val(url) 7020 $(".form-address").addClass("address-uploaded") 7021 $(".form-address-upload").addClass("uploaded") 7022 7023 $(this).parents(".form-group").siblings(".form-group").find("[required]").attr("required", false) 7024 } 7025 }) 7026 7027 $(".address-manualy").click(function(){ 7028 $(".form-address-upload").removeClass("uploaded"); 7029 $(".photo-address").hide(); 7030 $(".form-address").removeClass("address-uploaded") 7031 $("#formAddressPurchase").find(".form-control").attr("required", true) 7032 }); 7033 7034 $(".case-video-preview").delegate(".replace-video", "click", function(){ 7035 $("#input-video").trigger("click") 7036 }) 7037 7038 $('.date-single').click(function(e) { 7039 e.preventDefault(); 7040 $('.date-single').removeClass('selected'); 7041 $('#full-date').removeClass('selected'); 7042 $(this).addClass('selected'); 7043 $('#full-date').html('Full' + '<br/>' + 'Calendar'); 7044 }); 7045 $('#full-date').click(function(e){ 7046 e.preventDefault(); 7047 $('.date-single').removeClass('selected'); 7048 $(this).addClass('selected'); 7049 }); 7050 7051 // $("tr").each(function(){ 7052 // if($(this).text().match('SKU')) { 7053 // $(".sku-product").html($(this).parents("table").html()) 7054 // } 7055 // }) 7056 7057 $("#product-image").scroll(function(){ 7058 $(".desc-add").each(function(){ 7059 const img = $(this).find("img") 7060 const src = img.data("src") 7061 img.attr("src", src) 7062 }) 7063 }) 7064 7065 $(".product-fixed").hide() 7066 7067 let target = $("#personalizeBtn") 7068 7069 7070 $(".product-meta").scroll(function() { 7071 if ($(window).scrollTop() >= target.offset().top ) { 7072 $(".product-fixed").addClass("show") 7073 } else { 7074 $(".product-fixed").removeClass("show") 7075 } 7076 }); 7077 7078 $(window).scroll(function() { 7079 if ($(window).scrollTop() >= target.offset().top ) { 7080 $(".product-fixed").addClass("show") 7081 } else { 7082 $(".product-fixed").removeClass("show") 7083 } 7084 }); 7085 }); 7086 </script>
7086 7087 7088
7088<script> 7089 // 7090 </script>
7090 7091 7092
7092<script> 7093 $(document).ready(function(){ 7094 $('table tr td').each(function(){ 7095 var texto = $(this).text(); 7096 var nextto = $(this).next("td"); 7097 var sku = $("#data-sku").val() 7098 if(texto == 'SKU'){ 7099 nextto.text(sku) 7100 } 7101 }); 7102 7103 $(".stamped-summary-actions-newquestion").text("Tulis Pertanyaan"); 7104 $(".stamped-summary-actions-newreview").text("Tulis Review"); 7105 $("#tab-questions").text("Pertanyaan"); 7106 7107 $(".freeship .icon").click(function(){ 7108 $(".fs-content").slideToggle(); 7109 $(this).parents(".freeship").toggleClass("expand"); 7110 }); 7111 7112 var $easyzoom = $('.easyzoom').easyZoom(); 7113 // Setup thumbnails example 7114 var api1 = $easyzoom.filter('.easyzoom--with-thumbnails').data('easyZoom'); 7115 $('.thumbnails').on('click', 'a', function(e) { 7116 var $this = $(this); 7117 e.preventDefault(); 7118 // Use EasyZoom's `swap` method 7119 api1.swap($this.data('standard'), $this.attr('href')); 7120 }); 7121 7122 $('#playerID').click(function(){ 7123 var videoURL = $('#VdoID').attr('src'), 7124 dataplay = $('#VdoID').attr('data-play'); 7125 7126 //for check autoplay 7127 //if not set autoplay=1 7128 if(dataplay == 0 ){ 7129 $('#VdoID').attr('src',videoURL+'?autoplay=1'); 7130 $('#VdoID').attr('data-play',1); 7131 } 7132 else{ 7133 var videoURL = $('#VdoID').attr('src'); 7134 videoURL = videoURL.replace("?autoplay=1", ""); 7135 $('#VdoID').prop('src',''); 7136 $('#VdoID').prop('src',videoURL); 7137 7138 $('#VdoID').attr('data-play',0); 7139 } 7140 7141 }); 7142 7143 $(".product-photo-thumb-video").click(function(e){ 7144 e.preventDefault(); 7145 7146 var newEmbed = $(this).attr('href'); 7147 $("#featured-image-product").addClass("img-video"); 7148 $("#ProductPhotoImg").hide(); 7149 $("#featured-image-product .video").show(); 7150 $("#featured-image-product iframe").attr('src', newEmbed); 7151 $("#VdoID")[0].src += "&autoplay=1"; 7152 }); 7153 $(".product-single__thumbnail").click(function(evt){ 7154 evt.preventDefault(); 7155 $("#featured-image-product").removeClass("img-video"); 7156 $("#ProductPhotoImg").show(); 7157 $("#featured-image-product .video").hide(); 7158 $("#featured-image-product iframe").attr('src', ''); 7159 }); 7160 7161 if($('#product-meta .short-desc > div').length >= 1){ 7162 //console.log('div detected') 7163 var replacer = $('#product-meta .short-desc > div').contents(); 7164 $('#product-meta .short-desc > div').replaceWith(replacer); 7165 7166 var cAssured = $('.c-assured').detach(); 7167 cAssured.insertAfter('.meta-sds .stock-info'); 7168 } 7169 7170 7171 7172 $(".heading-toggle").click(function(){ 7173 $(this).parent().toggleClass("open") 7174 7175 }); 7176 }); 7177 </script>
7177 7178 7179 7180
7180<script type="application/json" id="ProductJson-Product"> 7181 7182 {"id":8144957800663,"title":"BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026"} 7183 </script>
7183 7184 7185
7185<script type="application/json" id="VariantJson-Product"> 7186 [ 7187 7188 { 7189 "incoming": false, 7190 "next_incoming_date": null 7191 } 7192 7193 ] 7194 </script>
7194 7195 7196 7197 7198 7199 </div> 7200 7201 7202
7202<script src="//outerbloom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
7202 7203 <style> 7204 .stamped-review-header-title, 7205 .stamped-review-header .author, 7206 .stamped-review-content-body, 7207 .stamped-sort-select, 7208 .stamped-review-header .verified-badge[data-type=buyer]:after, 7209 .stamped-review-header-byline, 7210 .stamped-review-reply-body {font-size: 14px!important;font-family: 'Barlow',sans-serif!important;} 7211 .stamped-review {margin-bottom: 0;} 7212 .stamped-review-body {padding-left: 65px;} 7213 .stamped-review:first-child {padding-top: 25px;} 7214 .stamped-review-content {clear: none;} 7215 .stamped-review-reply {margin: 15px 0 0 65px;background: #f2f2f2;border-left: none;} 7216 .stamped-review-reply-body {padding-left: 65px;} 7217 .stamped-review-header .author {text-transform: capitalize;} 7218 .stamped-questions .stamped-review-content {padding-left: 65px;} 7219 7220 .stamped-pagination {margin: 20px 0 0;} 7221 .stamped-pagination li {position: initial!important;display: inline-block;position: relative;vertical-align: middle;text-decoration: none;-webkit-tap-highlight-color: transparent;-webkit-box-flex: 0;-moz-box-flex: 0;-ms-flex: 0 0 auto;flex: 0 0 auto;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;background: 0 0;text-transform: none;color: #33373D;font-weight: 400;-webkit-transition: background .1s ease,box-shadow .1s ease,color .1s ease;transition: background .1s ease,box-shadow .1s ease,color .1s ease;border: 1px solid #ccc;border-right: none;margin-bottom: 0;} 7222 .stamped-pagination li a {color: #121212;padding: 13px 18px;vertical-align: middle;display: block;} 7223 .stamped-pagination li.active a {background-color: #ddd;font-weight: 400;} 7224 .stamped-pagination li:hover a {background: #ddd;} 7225 .stamped-pagination .next {border-right: 1px solid #ccc;} 7226 .stamped-pagination li:first-child {border-top-left-radius: 5px;border-bottom-left-radius: 5px;} 7227 .stamped-pagination li:last-child {border-top-right-radius: 5px;border-bottom-right-radius: 5px;} 7228 7229 #stamped-pagination-question span.page {display: inline-block;border: 1px solid #ccc;width: 47px;} 7230 #stamped-pagination-question span {font-size: 14px;} 7231 #stamped-pagination-question .page.active {padding: 12px;font-weight: 400;background: #ddd;} 7232 #stamped-pagination-question a, #stamped-pagination-question .page.active {color: #121212;padding: 13px 18px;vertical-align: middle;display: inline-block;} 7233 .stamped-pagination-deco {color: #121212;padding: 13px 18px;width: 47px;vertical-align: middle;display: inline-block;border: 1px solid #ccc;padding: 12px;} 7234 .stamped-pagination-prev, .stamped-pagination-next {position: inherit;} 7235 .stamped-pagination-prev a, .stamped-pagination-next a {width: auto!important;border: 1px solid #ccc;} 7236 7237 @media (max-width: 480px){ 7238 .stamped-review-reply {margin-left: 0!important;} 7239 select.stamped-sort-select {font-size: 13px!important;} 7240 } 7241 7242 #product-reviews .stamped-summary-ratings, #product-reviews .stamped-summary-actions, .stamped-content { 7243 display: block !important; 7244 } 7245 </style> 7246
7246<script> 7247 var selectCallback = function(variant, selector) { 7248 timber.productPage({ 7249 money_format: "Rp {{amount_no_decimals}}", 7250 variant: variant, 7251 selector: selector 7252 }); 7253 }; 7254 7255 jQuery(function($) { 7256 new Shopify.OptionSelectors('productSelect', { 7257 product: 7258 7259 7260 7261 7262 7263 {"id":8144957800663,"title":"BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026"}, 7264 onVariantSelected: selectCallback, 7265 enableHistoryState: true 7266 }); 7267 7268 // Add label if only one product option and it isn't 'Title'. Could be 'Size'. 7269 7270 7271 // Hide selectors if we only have 1 variant and its title contains 'Default'. 7272 7273 $('.selector-wrapper').hide(); 7274 7275 }); 7276 </script>
7276 7277 7278 7279 7280
7280<script type="application/ld+json"> 7281 { 7282 "@context": "http://schema.org", 7283 "@type": "Product", 7284 "offers": { 7285 "@type": "Offer", 7286 "availability":"https://schema.org/InStock", 7287 "price": 835000, 7288 "priceValidUntil": "05-10-2025", 7289 "priceCurrency": "IDR", 7290 "url": "https://stopgreenwash.org/criteria/" 7291 }, 7292 "brand": { 7293 "@type": "Brand", 7294 "name": "Outerbloom Florist" 7295 }, 7296 "sku": "8144957800663", 7297 "gtin13": "Jawa", 7298 "name": "BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026", 7299 "description": "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026", 7300 "category": "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026", 7301 "url": "https://stopgreenwash.org/criteria/", 7302 "image": { 7303 "@type": "ImageObject", 7304 "url": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426", 7305 "image": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426", 7306 "name": "BETATOGEL | AGEN TOTO MACAU DAN TOGEL MACAU RESMI TERPERCAYA 2026", 7307 "width": 1024, 7308 "height": 1024 7309 } 7310 } 7311 </script>
7311 7312 7313 7314 7315 7316 7317
7317<script id="bss-ltap-hide-price" type="text/javascript" > 7318 !function(e){var t={};function o(r){if(t[r])return t[r].exports;var c=t[r]={i:r,l:!1,exports:{}};return e[r].call(c.exports,c,c.exports,o),c.l=!0,c.exports}o.m=e,o.c=t,o.d=function(e,t,r){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(o.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var c in e)o.d(r,c,function(t){return e[t]}.bind(null,c));return r},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=0)}([function(e,t,o){"use strict";function r(e){e.ltsp={},function(e){e.ltsp.quickView=function(){document.querySelectorAll(".quickview-button").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementById("add-to-cart-quickview-form");if(e){let t=e.querySelector(".groups-btn");t&&t.remove();let o=e.querySelector(".pieces");o&&o.remove();let r=e.querySelector(".bsscommerce-ltsp-message");r&&r.remove()}if(e=document.querySelector("[data-quickview-modal] .halo-modal-body"),e){let t=e.querySelector(".quantity");t&&t.remove()}}),1e3)}))})),document.querySelectorAll(".shop-now-button").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementById("ShopNowContainer");if(e){let t=e.querySelector("#AddToCart");t&&t.remove()}}),2e3)}))})),document.querySelectorAll(".collection__filter").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-grid-item");if(o){let e=o.querySelector(".btn--quick-view");e&&e.remove()}}}),1500)}))})),document.querySelectorAll(".btn--icon.quick-product__btn").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-grid__content");if(o){let e=o.querySelector(".payment-buttons");e&&e.remove()}}}),2e3)}))})),document.querySelectorAll(".product-facet__aside").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-item");if(o){let e=o.querySelector('form[action="/cart/add"]');e&&e.remove();let t=o.querySelector(".product-item__quick-form");t&&t.remove()}}}),1500)}))})),document.querySelectorAll(".pagination").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-item");if(o){let e=o.querySelector('form[action="/cart/add"]');e&&e.remove();let t=o.querySelector(".product-item__quick-form");t&&t.remove()}}}),1800)}))})),document.querySelectorAll(".collection-filters__sort").forEach((function(e){e.addEventListener("change",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".indiv-product");if(o){let e=o.querySelector('form[action="/cart/add"]');e&&e.remove()}}}),1500)}))}
7318)),document.querySelectorAll(".slideout__drawer-right, .sidebar_leftside_wapper, .filtering__results").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-index");if(o){let e=o.querySelector(".js-quickview-trigger");e&&e.remove()}}}),1500)}))})),document.querySelectorAll("a.product-loop__quickview").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".large--one-half");if(o){let e=o.querySelector(".quick-smart-wrapper");e&&e.remove();let t=o.querySelector("#quantity-container");t&&t.remove();let r=o.querySelector(".js-prod-show-soldout");r&&r.remove()}}}),2e3)}))})),document.querySelectorAll(".quick-product__btn").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-single__meta");if(o){let e=o.querySelector("div.payment-buttons");e&&e.remove()}}}),1e3)}))})),document.querySelectorAll(".btn--load-more").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".grid-view-item");if(o){let e=o.querySelector(".quick-add-button");e&&e.remove()}}}),1e3)}))})),document.querySelectorAll(".quick_shop").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product_section");if(o){let e=o.querySelector(".product_form .shopify-product-form .purchase-details"),t=o.querySelector(".product__details .modal_price .price-ui");e&&e.remove(),t&&t.remove()}}}),1e3)}))})),document.querySelectorAll(".qs-button ").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-info-main");if(o){let e=o.querySelector(".qty-box");e&&e.remove();let t=o.querySelector(".btn.btn-cart");t&&t.remove();let r=o.querySelector(".product-single__sale-price");r&&r.remove();let c=o.querySelector(".product-addto-links");c&&c.remove()}}}),1e3)}))}));let e=document.querySelector("a[data-js-cart-icon]");if(e&&e.addEventListener("click",(function(){let e=document.querySelector(".quick-cart__control");e&&e.remove();let t=document.querySelector(".quick-cart__item-right");t.childNodes[3]&&(t.childNodes[3].innerHTML="Login to seen price")})),document.querySelectorAll(".quick-add-button-variants").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest("#AddToCartForm");if(o){let e=o.querySelector(".paymentButtonsWrapper");e&&e.remove()}}}),1e3)}))})),document.querySelectorAll(".product-thumbnail__quickshop-button").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-details");if(o){let e=o.querySelectorAll(".bsscommerce-ltsp-message");e.length>1&&e.forEach((function(e,t){t>0&&e.remove()}));let t=o.querySelector(".product-form__cart-buttons");t&&t.remove();let r=o.querySelector(".product-form__quantity-box-wrapper");r&&r.remove()}}}),800)}))})),"b2b-dbodhi-singapore.myshopify.com"===window.Shopify.shop){let e=0;const t=window.location.pathname.includes("/collections");let o=!0;const r=function(){const e=setInterval((function(){let e=document.querySelectorAll(".thb-product-detail.product .bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t],r=o.closest(".thb-product-detail.product");if(r){let e=r.querySelector(".product-form");e&&e.remove()}r=o.closest("del"),r&&o.remove()}}),500);setTimeout(()=>{clearInterval(e)},6e3)},c=function(){const c=window.pageYOffset||document.documentElement.scrollTop;(c>e||!t||o)&&(document.querySelectorAll(".product-card-quickview").forEach((function(e){e.removeEventListener("click",r),e.addEventListener("click",r)}
7318)),o=!1),e=c<=0?0:c};if(c(),t){const e=function(){const e=c;let t;return()=>{clearTimeout(t),t=setTimeout(()=>{e.apply(this)},3e3)}};window.addEventListener("scroll",e())}}}}(e),function(e){e.ltsp.removeElementByLTSPMessage=function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message"),t=[],o=window.Shopify.shop;for(let r=0;r<e.length;r++){let c=e[r],l=[".grid-product__on-sale",".product-unit-price",".product-price-unit",".grid-link__sale_price","s",".price__compare",".product__compare-price",".price__unit",".card__price--regular",".sale-tag",".compare-price",".old-price",".savings",".was_price",".price--compare",".price-compare",".was"];if("stark-hockey.myshopify.com"===o){const e=c.closest(".product-index");if(e){const t=e.querySelector(".product-modal");t&&t.remove()}continue}let s=c.closest(".product-parent");if(s){let e=s.querySelector("form .tt-btn-addtocart");e&&t.push(e);let o=s.querySelector(".tt-btn-quickview");o&&t.push(o)}if(s=c.closest(".ProductItem"),s){let e=s.querySelector(".quickshop-btn");if(e&&t.push(e),"shrimptoncouture-com.myshopify.com"===o){let e=s.querySelector(".ProductItem__PriceList");e&&e.classList.remove("ProductItem__PriceList")}}if(s=c.closest(".product-item--vertical"),s){if("sparklinbluewholesale.myshopify.com"===o){let e=s.querySelector(".product-item__info .product-item__price-list");e&&t.push(e)}let e=s.querySelector(".product-item__info .product-item__action-button");e&&t.push(e),e=s.querySelector(".product-form__payment-container"),e&&t.push(e)}if(s=c.closest(".card-wrapper.underline-links-hover"),s&&"friends-forever-pets.myshopify.com"===o){let e=s.querySelector(".card__content .quick-add");e&&t.push(e);let o=s.querySelector(".card-information .price__sale .price-item.price-item--regular");o&&t.push(o)}if(s=c.closest(".modal_price"),s&&window.Shopify&&"casa-barba.myshopify.com"!==window.Shopify.shop&&"prideandgroom-wholesale.myshopify.com"!==window.Shopify.shop){let e=s.querySelector(".price-ui");e&&t.push(e)}if(s=c.closest(".info.has-padding-top"),s){let e=s.querySelector(".compare-at-price");e&&t.push(e)}if(s=c.closest(".product-thumbnail__price.price"),s){let e=s.querySelector(".money");e&&t.push(e)}if(s=c.closest(".search-result__description"),s){let e=s.querySelector(".money");e&&t.push(e)}if(s=c.closest(".product__price"),s){let e=s.querySelector("[data-product-price][bss-custom-ltsp-attribute]");e&&t.push(e)}if(s=c.closest("#template-product"),s){let e=s.querySelector(".product-form.cart-bar__form");e&&t.push(e)}if("showroom1-ducanero.myshopify.com"===o){if(s=c.closest(".product-area")||c.closest(".price"),s){let e=s.querySelector(".price-area")||s.querySelector(".theme-money");e&&t.push(e)}}else if(s=c.closest(".product-area__details"),s){let e=s.querySelector(".product-detail__form__action");e&&t.push(e);let o=s.querySelector(".quantity-wrapper");o&&t.push(o)}if("quincaillerie-euroline.myshopify.com"===o&&(s=c.closest(".product-form__info-content"),s)){let e=s.querySelector(".price-list");e&&t.push(e)}if(s=c.closest(".product-form__buttons"),s&&t.push(s),s=c.closest(".product-wrap-2"),s){let e=s.querySelector(".product-action-2");e&&t.push(e)}if(s=c.closest(".span6"),s){let e=s.querySelector(".purchase>input"),o=s.querySelector(".price-container>#price-preview"),r=s.querySelector(".price-container>.vat-price");e&&t.push(e),o&&t.push(o),r&&t.push(r)}if(s=c.closest(".product__page"),s){let e=s.querySelector(".quantity-selector");e&&t.push(e)}if(s=c.closest(".product_details_info"),s){let e=s.querySelector(".pro-detail-button"),o=s.querySelector(".price-box");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".product-content"),s){let e=s.querySelector(".product-action");e&&t.push(e)}if(s=c.closest(".product-view .single-product-wrap"),s){let e=s.querySelector(".add-to-cart");e&&t.push(e)}if(s=c.closest(".collection-category .owl-stage .owl-item"),s){let e=s.querySelector(".add-to-cart");e&&t.push(e)}if(s=c.closest(".product__details"),s){let e=s.querySelector(".product-wrap .thumbnail-overlay .info .price ");e&&t.push(e);let o=s.querySelector(".product-details .price .current_price .money ");o&&t.push(o)}if(s=c.closest(".product_row"),s){let e=s.querySelector(".three-fourths .info .price ");e&&t.push(e)}if(s=c.closest(".thubnail-desc"),s){let e=s.querySelector(".quatity-stock");e&&t.push(e);let o=s.querySelector(".Payment_button");o&&t.push(o)}if(s=c.closest(".single-ponno-product"),s){let e=s.querySelector(".pro-actions-link");e&&t.push(e);let o=s.querySelector(".pro-add-cart");o&&t.push(o)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector("div.product-form__controls-group.product-form__controls-group--submit");e&&e.setAttribute("style","visibility:hidden")}if("homewarerus.myshopify.com"!=window.Shopify.shop&&(s=c.closest(".product-item__info"),s)){let e=s.querySelector("form.product-item__action-list.button-stack");e&&e.remove()}
7318if("bluebasketb2b.myshopify.com"===window.Shopify.shop){if(s=c.closest(".card-information"),s){let e=s.querySelector(".price__sale .price-item--sale.sale-percentage");e&&t.push(e)}if(s=c.closest("tr.cart-item[id*=Cart]"),s){let e=s.querySelector(".cart-item__quantity");e&&e.remove();let t=s.querySelector(".cart-item__totals");t&&t.remove()}}if(s=c.closest(".product-form"),s){let e=s.querySelector(".quantity-submit-row__submit");e&&e.remove();let o=s.querySelector(".product-form__info-list .product-form__info-item.product-form__info-item--quantity .product-form__info-content .quantity-selector.quantity-selector--product");o&&t.push(o)}if(s=c.closest(".product-grid__detail"),s){let e=s.querySelector(".product-form-block form");e&&e.remove()}if(s=c.closest(".tab-body"),s){if(s.querySelector(".purchase-section button, .btn.add-to-cart")){let e=setInterval((function(){let e=document.querySelector(".tab-body .purchase-section button, .tab-body .btn.add-to-cart"),t=document.querySelector(".swym-button-bar.swym-wishlist-button-bar");e&&e.remove(),t&&t.remove()}),200);setTimeout((function(){clearInterval(e)}),1e4)}}if(s=c.closest(".item.relative.product-id.item-row"),s){let e=s.querySelector(".quantity.form");e&&e.remove()}if(s=c.closest(".product-form"),s){let e=s.querySelector(".buy-buttons-row");e&&t.push(e)}if(s=c.closest(".product-grid-item"),s){let e=s.querySelector(".btn--quick-view");e&&t.push(e)}if(s=c.closest(".featured__collection-product"),s){let e=s.querySelector(".js-quickview-trigger");e&&t.push(e)}if(s=c.closest(".product-index"),s){let e=s.querySelector(".js-quickview-trigger");e&&t.push(e)}if(s=c.closest(".product-bottom"),s){let e=s.querySelector(".quantity-selector, .product-add");e&&t.push(e)}if(s=c.closest(".js-sticky-cart"),s){let e=s.querySelector(".sticky-add");e&&t.push(e)}if(s=c.closest(".product-details"),s){let e=s.querySelector(".shopify-payment-button");e&&t.push(e);let r=s.querySelector(".payment-and-quantity__add");r&&t.push(r);let c=s.querySelector(".price__compare-at.visible");c&&"coventa-demo.myshopify.com"===o&&t.push(c)}if(s=c.closest(".product-block__inner"),s){let e=s.querySelector(".quick-buy");e&&t.push(e)}if(s=c.closest(".content-summary"),s){let e=s.querySelector("form.cart");e&&t.push(e)}if(s=c.closest('div[data-pf-type="Section"]'),s){let e=s.querySelector('div[data-pf-type="ProductQuantity"]');e&&t.push(e);let o=s.querySelector('button[data-pf-type="ProductATC"]');o&&t.push(o)}if(s=c.closest(".pc-inner"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e);let o=s.querySelector(".quick_shop");o&&t.push(o)}if(s=c.closest(".product-info-inner"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e)}if(s=c.closest(".product-details-inline"),s){let e=s.querySelector(".product-quantity");e&&t.push(e)}if(s=c.closest(".product-card"),s){let e=s.querySelector(".js-grid-cart");e&&t.push(e);let o=s.querySelector(".card-header .card-button-hover");o&&t.push(o);let r=s.querySelector(".product-card__quick-buy");r&&t.push(r);let c=s.querySelector("compare-at-price");c&&t.push(c);let l=s.querySelector(".product-card__badge-list");l&&t.push(l)}if(s=c.closest(".product__info"),s){let e=s.querySelector(".product-form__buy-buttons button");e&&t.push(e);let o=s.querySelector(".product-form__quantity");o&&t.push(o)}if(s=c.closest(".product-sticky-form__inner"),s){let e=s.querySelector(".product-sticky-form__payment-container");e&&t.push(e)}if("homewarerus.myshopify.com"!=window.Shopify.shop&&(s=c.closest(".product-item"),s)){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e);let o=s.querySelector(".product-item__quick-form");o&&t.push(o)}if(s=c.closest(".shopify-product-form"),s){let e=s.querySelector("div.quantity");e&&t.push(e)}if(s=c.closest(".product-body"),s){let e=s.querySelector(".product-cta-wrapper");e&&t.push(e)}if(s=c.closest(".tt-product-single-info"),s){let e=s.querySelector("form .btn-addtocart");e&&t.push(e);let o=s.querySelector('form[action*="/cart/add"]');o&&t.push(o)}if(s=c.closest(".product-details-wrapper"),s){let e=s.querySelector(".product-form");e&&t.push(e)}if(s=c.closest(".product-inner"),s){let e=s.querySelector(".product-card-interactions");e&&t.push(e)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector(".add-to-cart");if(e)if(window.Shopify&&"bundlecomph.myshopify.com"===window.Shopify.shop){e.disabled=!0;let o=s.querySelector(".payment-buttons"),r=s.querySelector(".shopify-payment-button");o&&o.classList.remove("payment-buttons"),r&&t.push(r)}else t.push(e)}if(s=c.closest(".grid-view-item"),s){let e=s.querySelector(".thumbnail-buttons");e&&t.push(e)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector(".product-form:not(.product-form-product--static):not(.product-form-product-template)");e&&t.push(e)}if(s=c.closest(".pf-product-form"),s){let e=s.querySelector(".sc-lkgURy");e&&t.push(e);let o=s.querySelector(".sc-gzcbmu");o&&t.push(o);let r=s.querySelector(".add-to-cart");r&&t.push(r)}if(s=c.closest(".large--one-half"),s){let e=s.querySelector(".product-smart-wrapper");e&&t.push(e);let o=s.querySelector('div.btn[onmouseup="showProductsDesigner(this)"]');o&&t.push(o);let r=s.querySelector("button.js-prod-show-soldout");r&&t.push(r)}if(s=c.closest("#add-to-cart-form"),s)if("led-signcity.myshopify.com"===o){let e=s.querySelector(".atc-btn");e&&t.push(e);let o=s.querySelector(".price");o&&o.classList.remove("price")}else{let e=s.querySelector(".groups-btn");e&&t.push(e),t.push(c)}
7318if(s=c.closest(".product-shop"),s&&"led-signcity.myshopify.com"!==o){let e=s.querySelector(".groups-btn");e&&t.push(e)}if(s=c.closest(".who-qof-table"),s&&s.classList.add("bsscommerce-hide-price"),s=c.closest(".price-sale"),s){let e=s.querySelector(".old-price");e&&t.push(e);let o=s.querySelector("em");o&&(o.innerHTML="")}if(s=c.closest(".product-details"),s){let e=s.querySelector(".action");e&&t.push(e)}if(s=c.closest(".product_section"),s){let e=s.querySelector("form .add_to_cart, form .b2b-ajax-submit");e&&t.push(e);let o=s.querySelector(".sale.savings");o&&t.push(o);let r=s.querySelector(".purchase-details button.button--add-to-cart");r&&t.push(r);let c=s.querySelector(".purchase-details .purchase-details__quantity.product-quantity-box");c&&t.push(c);let l=s.querySelector(".product__details .modal_price .price-ui");l&&t.push(l)}if(s=c.closest(".quick-shop-style--inline"),s){let e=s.querySelector("form .add_to_cart, form .b2b-ajax-submit");e&&t.push(e)}if(s=c.closest(".product-details"),s){let e=s.querySelector("small em");e&&t.push(e)}if(s=c.closest(".gt_product-body"),s){let e=s.querySelector("form .gt_product-addtocart");e&&t.push(e);let o=s.querySelector(".gt_product-saved");o&&t.push(o);let r=s.querySelector(".gt_product-price--compare");r&&t.push(r)}if(s=c.closest(".gt_product_content"),s){let e=s.querySelector("form .gt_product-addtocart");e&&t.push(e);let o=s.querySelector(".gt_product-price--compare");o&&t.push(o)}if(s=c.closest(".gt-single-product"),s){let e=s.querySelector("div.gt_method_addToCart");e&&t.push(e);let o=s.querySelector(".gt_product-price--compare");o&&t.push(o)}if(s=c.closest("#cont-form"),s){let e=s.querySelector("form .cont-add-btns");e&&t.push(e)}if(s=c.closest(".theiaStickySidebar"),s){let e=s.querySelector(".variations_button");e&&t.push(e)}if(s=c.closest(".product--price-wrapper"),s){let e=s.querySelector(".product--compare-price");e&&t.push(e)}if(s=c.closest(".product-submit"),s){let e=s.querySelector(".payment-buttons-container");e&&t.push(e)}if(s=c.closest(".product-price"),s){let e=s.querySelector(".product-price-compare");e&&t.push(e)}if(s=c.closest(".product-list-item"),s){let e=s.querySelector(".original"),o=s.querySelector(".product-list-item-badge");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".productitem"),s){let e=s.querySelector(".productitem--action");e&&t.push(e);let o=s.querySelectorAll(".bss-ltsp-to-remove");if(o.length)for(let e of o)t.push(e)}if(s=c.closest(".product--outer"),s){let e=s.querySelector(".product-form--atc");e&&t.push(e),e=s.querySelector(".shopify-payment-button"),e&&t.push(e)}if(s=c.closest(".Container"),s)if(window.Shopify&&"mama-shawna.myshopify.com"===window.Shopify.shop){let e=s.querySelector("form.ProductForm");if(window.__st&&e){__st.cid&&t.push(e)}}else{let e=s.querySelector(".ProductForm__BuyButtons");e&&t.push(e)}if(s=c.closest(".product-grouped"),s){let e=s.querySelector(".product_top form#add-to-cart-form");e&&t.push(e)}if(s=c.closest(".product-item"),s){let e=s.querySelector(".product-top .product-des .action"),o=s.querySelector(".slideup");if(e&&t.push(e),o&&t.push(o),o=s.querySelector(".card-quickview"),o&&t.push(o),window.Shopify&&"sitchish.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".product-item-price .money");e&&e.classList.remove("money")}}if(s=c.closest(".modal_price"),s){let e=s.querySelector(".was_price");e&&t.push(e)}if(s=c.closest(".info"),s){let e=s.querySelector(".was_price");e&&t.push(e)}if(s=c.closest(".product-item"),s){let e=s.querySelector('.product-item__action-button[data-action="add-to-cart"]');e&&t.push(e)}if(s=c.closest(".grid__item.grid-product"),s){let e=s.querySelector('form[action="/cart/add"] input[type="submit"]');e&&t.push(e);let r=s.querySelector(".grid-product__tag");r&&t.push(r);let c=s.querySelector(".visually-hidden");c&&t.push(c);let l=s.querySelector(".quick-product__btn");l&&"comphycompany.myshopify.com"===o&&t.push(l)}if(s=c.closest(".product-info"),s){let e=s.querySelector('form[action="/cart/add"] .payment-buttons');e&&t.push(e);let o=s.querySelector(".variant-wrapper.variant-wrapper--button");o&&t.push(o);let r=s.querySelector(".form .product-actions .product-actions-add-to-cart");r&&t.push(r);let c=s.querySelector(".product-price__compare");
7318c&&t.push(c),c=s.querySelector("compare-at-price"),c&&t.push(c);let l=s.querySelector("unit-price");l&&t.push(l),e=s.querySelector(".buy-buttons"),e&&t.push(e);let u=s.querySelector(".product-info__badge-list");u&&t.push(u)}if(s=c.closest(".price"),s){if(s.textContent.includes("From")){let e=s.innerHTML;s.innerHTML=e.replace("From","")}}if(s=c.closest("#product-right"),s){let e=s.querySelector(".was");e&&t.push(e);let o=s.querySelector(".product-add");o&&t.push(o)}if(s=c.closest(".was"),s&&t.push(s),s=c.closest(".product-single__meta"),s){let e=s.querySelector(".pf__actions");e&&t.push(e);let o=s.querySelector("div.product-form__controls-group.product-form__controls-group--submit");o&&o.setAttribute("style","visibility:hidden")}if(s=c.closest(".product-item"),s){let e=s.querySelector(".product-item__add");e&&t.push(e)}if(s=c.closest(".grid-item"),s){let e=s.querySelector("#addToCart-product-template");e&&t.push(e);let o=s.querySelector(".payment-buttons");o&&t.push(o)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector("div.payment-buttons");e&&e.remove()}if(s=c.closest(".modal--root"),s){let e=s.querySelector(".product-form--button-container");e&&t.push(e)}if(s=c.closest(".product-item__info"),s){let e=s.querySelector("a.product-item__action-button.button.button--small.button--primary");e&&t.push(e)}if(s=c.closest(".product-form__info-list"),s){let e=s.querySelector("div.product-form__info-item.product-form__info-item--quantity");e&&t.push(e)}if(s=c.closest(".large--three-fifths"),s){let e=s.querySelector(".multivariants_setbox_footer");e&&t.push(e)}if(s=c.closest(".product-info-main"),s){let e=s.querySelector(".qty-box");e&&t.push(e);let o=s.querySelector(".btn.btn-cart");o&&t.push(o);let r=s.querySelector(".shopify-payment-button");r&&t.push(r)}if(s=c.closest(".product-miniature"),s){let e=s.querySelector(".qty-box");e&&t.push(e);let o=s.querySelector(".product.actions.product-item-actions");o&&t.push(o)}if(s=c.closest("#AddToCartForm"),s){let e=s.querySelector(".paymentButtonsWrapper");e&&t.push(e)}if(s){let e=s.querySelector("#product-add");e&&e.remove()}if(s){let e=s.querySelector("#product-price>.product-price");e&&e.remove()}if(s=c.closest(".grid-view-item"),s){let e=s.querySelector(".quick-add-button");e&&t.push(e)}if("tinalykkegaard.myshopify.com"===o){if(s=c.closest(".main-product__details>.main-product__details-wrapper"),s){let e=s.querySelector(".main-product__actions .main-product__form-buttons");e&&e.remove()}if(s=c.closest(".product-grid .product-card"),s){let e=s.querySelector('form[action="/cart/add"]');e&&e.remove()}}if(s=c.closest(".product-item-caption"),s){let e=s.querySelector(".product-form__item--submit");e&&t.push(e)}if(s=c.closest(".product-item-caption"),s){let e=s.querySelector(".product-form__item--quantity");e&&t.push(e)}if(s=c.closest(".productgrid--item"),s){let e=s.querySelector(".productitem--actions");e&&t.push(e)}if(s=c.closest(".product-single__info-wrapper"),s){let e=s.querySelector(".product-form__quantity-submit");e&&t.push(e);let o=s.querySelector(".shopify-payment-button");o&&t.push(o)}if(s=c.closest(".qv-content"),s){let e=s.querySelector(".qv-add-button");e&&t.push(e);let o=s.querySelector(".qv-quantity");o&&t.push(o)}if(s=c.closest(".product-card"),s){let e=s.querySelector(".btn-grid-cart");e&&t.push(e)}if(s=c.closest(".product_single_detail_section"),s){let e=s.querySelector("#AddToCart");e&&t.push(e);let o=s.querySelector(".shopify-payment-button__button");o&&t.push(o);let r=s.querySelector(".quantity-label");r&&t.push(r);let c=s.querySelector(".quantity_width");c&&t.push(c)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector("#AddToCart--product-template");e&&t.push(e);let o=s.querySelector(".shopify-payment-button");o&&t.push(o)}if(s=c.closest('form[action="/cart/add"]'),s){let e=s.querySelector(".product-page-info__field");e&&t.push(e);let o=s.querySelector(".product-page-info__button-add-to-cart");o&&t.push(o);let r=s.querySelector(".js-store-lists-add-wishlist");r&&t.push(r);let c=s.querySelector(".product-collection__control");c&&t.push(c)}if(s=c.closest(".grid-item__content"),s){let e=s.querySelector(".quick-add-btn");if(e&&t.push(e),window.Shopify&&"sparklinbluewholesale.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".grid-product__price--original"),o=s.querySelector(".grid-product__price--savings"),r=s.querySelector(".quick-product__btn");e&&t.push(e),o&&t.push(o),r&&t.push(r)}}if(s=c.closest(".purchase-box"),s){let e=s.querySelector("#AddToCart-product-template");e&&e.remove();let t=s.querySelector(".quantity-product-template");t&&t.remove()}if(s=c.closest(".item-row"),s){let e=s.querySelector(".add-to-cart");e&&t.push(e)}if(s=c.closest(".product-thumbnail__price"),s){let e=s.querySelectorAll(".bsscommerce-ltsp-message");e.length>1&&e.forEach((function(e,o){o>0&&t.push(e)}))}if(s=c.closest(".product-details"),s){let e=s.querySelector(".product__add-to-cart-button");e&&t.push(e);let r=s.querySelector(".product-form__quantity-box-wrapper");if(r&&t.push(r),"sitchish.myshopify.com"===o){let e=s.querySelector("#product-price");e&&(e.id="");let o=s.querySelector("[data-product-price]");o&&o.removeAttribute("data-product-price");let r=s.querySelector(".form-actions");r&&t.push(r)}let c=s.querySelector(".product-quantity");if(c&&t.push(c),"lavabis-hygiene.myshopify.com"===o){let e=s.querySelector(".price-preview.price");e&&(e.id="")}}if(s=c.closest(".product-details"),s){let e=s.querySelector("#add-to-cart-product-template");e&&t.push(e);let o=s.querySelector(".shopify-payment-button__button");o&&o.remove();let r=s.querySelector(".quantity");r&&t.push(r)}if(s=c.closest(".gryffeditor"),s){let e=s.querySelector(".gf_product-quantity");e&&e.parentElement.remove()}if(s=c.closest("#ProductSection-product-template"),s){let e=s.querySelector(".cbb
7318-frequently-bought-add-button");e&&e.remove();let t=s.querySelector(".cbb-frequently-bought-form");t&&t.remove()}if(s=c.closest(".product__info-wrapper"),s){let e=s.querySelector(".product-form__quantity");e&&e.remove();let t=s.querySelector(".product-form__buttons");t&&t.remove()}if(s=c.closest(".product-form"),s){let e=s.querySelector(".product-form__payment-container");e&&e.remove();let o=s.querySelector("#price");if(o&&o.classList.remove("product-price"),window.Shopify&&"wilkens-gmbh.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".unit-price");e&&t.push(e)}}if(s=c.closest(".product-details"),s){let e=s.querySelector(".button-common");e&&e.remove()}if(s=c.closest(".caption"),s){let e=s.querySelector(".button.btn-cart");e&&t.push(e)}if(s=c.closest(".product-info-main"),s){let e=s.querySelectorAll(".form-group")[1];e&&t.push(e);let o=s.querySelector(".price");o&&(o.id="")}if(s=c.closest(".form_buy_sticky"),s){let e=s.querySelector(".form-group .btn.button.button-cart");e&&t.push(e);let o=s.querySelector(".form-group input#Quantity");o&&t.push(o)}if(s=c.closest(".product-template__container"),s){let e=s.querySelector(".store-availability-container");e&&e.remove()}if(s=c.closest(".product-form--container"),s){let e=s.querySelector(".product-form--options");e&&t.push(e);let o=s.querySelector(".product-form--smart-payment-buttons");o&&t.push(o)}if(s=c.closest(".product--price-wrapper"),s){let e=s.querySelector('.product--from[data-item="accent-text"]');e&&t.push(e)}if(s=c.closest("#zpproductselectorfull1-wrapper"),s){let e=s.querySelector(".zpa-button-alignment-center");e&&t.push(e);let o=s.querySelector(".zpa-quantity-block");o&&t.push(o)}if(s=c.closest(".zpa-multi-product-buy-box"),s){let e=s.querySelector(".zpa-button-alignment-center");e&&t.push(e)}if(s=c.closest(".product-block__inner"),s){let e=s.querySelector('form[action="/cart/add"].product-form.product-form--mini');if(e&&t.push(e),window.Shopify&&"wilkens-gmbh.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".unit-price");e&&t.push(e)}}if(s=c.closest(".was-price.theme-money"),s&&t.push(s),s=c.closest(".box_product_page"),s){let e=s.querySelector(".product-options-bottom");e&&t.push(e)}if(s=c.closest(".product-default"),s){let e=s.querySelector(".add-links.clearfix");e&&t.push(e)}if(s=c.closest(".grid__item.medium-up--three-eighths"),s){let e=s.querySelector('form[action="/cart/add"].shopify-product-form');e&&t.push(e)}if(s=c.closest(".indiv-product"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e)}if(s=c.closest('form.product-form[action="/cart/add"]'),s){let e=s.querySelector(".sf__pcard-image .sf__pcard-quick-add");e&&t.push(e);let o=s.querySelector(".main-product__block-buy_buttons");o&&t.push(o)}if(s=c.closest(".product-grid-item.woodmart-hover-base"),s){let e=s.querySelector(".fade-in-block");e&&t.push(e);let o=s.querySelector(".product-compare-button");o&&t.push(o)}if(s=c.closest(".grid__item"),s){if("www-bonmatch-com.myshopify.com"===o){let e=s.querySelector(".selector-wrapper.bcpo-file"),o=s.querySelector(".uploadkit.uploadkit-injected"),r=s.querySelector(".uploadkit-form");e&&t.push(e),o&&r&&r.appendChild(o)}let e=s.querySelector(".product__submit__buttons");e&&t.push(e);let r=s.querySelector(".products > .product-detail > .product-button"),c=s.querySelector(".products > .product-container > .product-button > .quick-view-text");r&&t.push(r),c&&t.push(c);let l=s.querySelector("button#AddToCart"),u=s.querySelector('[data-shopify="payment-button"].shopify-payment-button');if(l&&t.push(l),u&&t.push(u),"tienda-suca-bikes.myshopify.com"===o){let e=s.querySelector(".product__unit-price.product__unit-price--spacing"),t=s.querySelector(".c_p-quantity-input-parent"),o=s.querySelector(".masIva"),r=s.querySelector(".c_col-sw-btn");e&&e.classList.remove("hide"),t&&t.remove(),o&&o.remove(),r&&r.remove()}if("youchique-4183.myshopify.com"===o){let e=s.querySelector(".card-information__button");e&&t.push(e);let o=s.querySelector(".swym-wishlist-button-bar");o&&t.push(o)}if("stelladetailsb2b.myshopify.com"===o){let e=s.querySelector(".bss-b2b-product-vat");e&&t.push(e);let o=s.querySelector("#bss-b2b-tax-inc-excl");o&&t.push(o);let r=s.querySelector(".bss-b2b-collection-item-vat");r&&t.push(r);let c=s.querySelector(".price__regular");if(c){c.classList.remove("price__regular");let e=s.querySelector(".price-item--regular");e&&e.classList.remove("price-item--regular")}let l=s.querySelector(".price__sale");l&&t.push(l)}let i=s.querySelector("quick-view-drawer");
7318i&&t.push(i);let p=s.querySelector("add-to-cart");p&&t.push(p)}if(s=c.closest(".shop-the-look__product-info"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e)}if(s=c.closest(".popover.popover--quick-buy"),s){let e=s.querySelector(".product-form__buy-buttons");e&&t.push(e)}if(s=c.closest(".product__section.product-template .product__section-content .product__section-details"),s){let e=s.querySelector('form[action="/cart/add"] input#addToCart');e&&t.push(e)}if(s=c.closest(".product-item__info-inner"),s){let e=s.querySelector(".unit-price-measurement");e&&t.push(e)}if(s=c.closest(".product-form__info-item"),s){let e=s.querySelector(".unit-price-measurement");e&&t.push(e)}if(s=c.closest("div[data-product-blocks]"),s){let e=s.querySelector(".payment-buttons");e&&t.push(e);let o=s.querySelector(".spt-wishlist-button__wrapper");o&&t.push(o)}if(s=c.closest(".sf__pcard-content.text-center"),s){let e=s.querySelector("button.add-to-cart.sf__btn");e&&t.push(e)}if(s=c.closest(".product-details.section"),s){let e=s.querySelector('form#AddToCartForm.product-content-inner[action="/cart/add"]');e&&t.push(e)}if(s=c.closest(".search-item .product-item, .product-grid-row .product-item"),s){let e=s.querySelector(".product-img .action-btn");e&&t.push(e)}if(s=c.closest(".product-collection__content,.product-page-info"),s){let e=s.querySelector(".js-product-button-add-to-cart");e&&t.push(e)}if(s=c.closest(".details-info"),s){let e=s.querySelector(".group-button .add-to-cart");e&&t.push(e)}if(s=c.closest(".product-collection"),s){let e=s.querySelector(".group-button .add-to-cart");e&&t.push(e)}let u=c.closest("[data-js-product-price]");if(u&&u.setAttribute("bss-ltsp-active",""),s=c.closest(".product__info-container"),s){let e=s.querySelector('.form[data-type="add-to-cart-form"] > .shopify-payment-button[data-shopify="payment-button"]');e&&t.push(e)}if(s=c.closest(".products"),s){let e=s.querySelector(".product-container > .product-button > .variants > .add-cart-btn"),o=s.querySelector(".product-container > .product-button > .quick-view-text");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".dt-sc-tabs-container"),s){let e=s.querySelector(".dt-sc-tabs-content > .tab2 > .owl-stage-outer > .owl-stage > .owl-item > .item-row > .products > .product-container > .product-button > .variants > .add-cart-btn");e&&t.push(e)}if(s=c.closest(".wrapper-container"),s){let e=s.querySelector(".recently-viewed-products > .products-grid > .grid__item > .product-item > .products > .product-bottom > .price-box > .regular-product > .special-price"),o=s.querySelector(".recently-viewed-products > .products-grid > .grid__item > .product-item > .products > .product-bottom > .action > .variants > .add-to-cart-btn");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".featured__collection-product.product-index"),s){let e=s.querySelector(".product_listing_options");e&&t.push(e)}if(s=c.closest(".product-index"),s){let e=s.querySelector(".product_listing_options");e&&t.push(e)}if(s=c.closest(".product__section-details"),s){let e=s.querySelector(".product__section-details__inner
7318--product_buttons");e&&t.push(e)}if(s=c.closest(".product-page--cart-form-block"),s){let e=s.querySelector(".add-to-cart");e&&t.push(e)}if(s=c.closest(".price__sale"),s){let e=s.querySelector(".price-item--regular");e&&t.push(e)}if(s=c.closest(".product-item-v1"),s){let e=s.querySelector(".price-old"),o=s.querySelector(".product-icon-action");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".detail-info > .relative"),s){let e=s.querySelector("#AddToCartForm > .btn-action"),o=s.querySelector('div.shopify-payment-button[data-shopify="payment-button"]'),r=s.querySelector(".product-price > del");e&&t.push(e),o&&t.push(o),r&&t.push(r)}if(s=c.closest(".product-details"),s){let e=s.querySelector(".product-block--form>.product-form--regular");e&&"eurosafetysystems.myshopify.com"!==o&&e.remove();let t=s.querySelector(".button-cart");t&&t.remove()}if("annabellenoeldesigns-com.myshopify.com"==o&&(s=c.closest(".product-block-list__item .card__section"),s)){let e=s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE .multivariants_block_qty_box");e&&e.remove();let t=s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE .multivariants_block_last_holder .multivariants_block_prc_holder");t&&t.remove();let o=s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE #multivariants_add_to_cart_button_h");o&&o.remove();let r=s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE #multivariants_block_subtotal_h");r&&r.remove()}if("fedua-b2b.myshopify.com"==o){if(s=c.closest(".gp-product-detail .container"),s){let e=s.querySelector(".gp-product-main-button button[type='submit']");e&&e.remove();let t=s.querySelector(".cbb-also-bought-add-to-cart-button");t&&t.remove();let o=s.querySelector(".cbb-also-bought-product-price-container");o&&o.remove()}if(s=c.closest(".gp-product-widget .product-card-grid"),s){let e=s.querySelector(".product-buttons .btn-quick-view ");e&&e.remove()}}if(s=c.closest(".product--price-container"),s){let e=s.querySelectorAll(".product--price-wrapper > a");e.length&&e.forEach(e=>e.remove())}if("linis-bites-b2b.myshopify.com"==window.location.host&&c.querySelector("[bss-customize-ltsp-message]")){let e=c.closest(".price .price__container");if(e){let o=e.querySelector(".unit-price.caption");o&&t.push(o)}}if(s=c.closest(".product-price--wrapper"),s){let e=s.querySelector(".product-price--compare");e&&e.remove()}if(s=c.closest(".price__pricing-group"),s){let e=s.querySelector(".price-item.price-item--regular[data-regular-price]");e&&(e.classList.remove("price-item"),e.classList.remove("price-item--regular"))}if(l.forEach((function(e){c.closest(e)&&t.push(c.closest(e))})),s=c.closest(".product-page-info"),s){let e=s.querySelector("[data-js-footbar-product-limit]");e&&t.push(e)}if(s=c.closest(".product-wrap"),s){let e=s.querySelector(".purchase-details button.button--add-to-cart"),o=s.querySelector(".product-action");if(e&&t.push(e),o&&t.push(o),window.Shopify&&"dermafirmusa.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".price.sale");e&&t.push(e)}}if(s=c.closest(".seven.columns.omega"),s){let e=s.querySelector(".purchase-details__buttons button.shopify-payment-button__button ");e&&t.push(e)}if(s=c.closest("#collectionPr"),s){let e=s.querySelectorAll("#PageContainer .collection .btn.add-to-cart");e.length&&e.forEach(e=>{t.push(e)})}if(s=c.closest(".grid.product-single"),s){let e=s.querySelector('#PageContainer .wrap-product-info button[type="submit"].btn.btn1.pr_btn.addtocart_js');e&&t.push(e)}if(s=c.closest(".gryffeditor"),s){let e=s.querySelector(".module-wrap .gf_add-to-cart.product-form-product-template");e&&t.push(e)}if(s=c.closest(".product-single .product-single__meta"),s){let e=s.querySelector('.product-form__item button[name="add"].product-form__cart-submit');e&&t.push(e)}if(s=c.closest(".shopify-product-form"),s){let e=s.querySelector("#product-price");e&&t.push(e)}if(s=c.closest(".product-item-price"),s){let e=s.querySelector(".money");e&&t.push(e)}if(s=c.closest('main#main[role="main"]'),s){let e=s.querySelector("div.atc-bar");e&&t.push(e)}if(s=c.closest("#CartDrawer"),s){let e=s.querySelector("#CartDrawer-CartItems .cart-item .cart-item__details dl .product-option");e&&t.push(e);let o=s.querySelector("#CartDrawer-CartItems .cart-item .cart-item__totals .cart-item__price-wrapper");o&&t.push(o);let r=s.querySelector("#CartDrawer-CartItems .cart-item .cart-item__quantity");r&&t.push(r);let c=s.querySelector(".drawer__footer");c&&t.push(c)}if(s=c.closest("#main-cart-items"),s){let e=s.querySelector(".cart-item .cart-item__details dl .product-option");e&&t.push(e);let o=s.querySelector(".cart-item .cart-item__quantity .cart-item__quantity-wrapper");o&&t.push(o);let r=s.querySelector(".cart-item .cart-item__totals.right.small-hide .cart-item__price-wrapper");r&&t.push(r)}if(s=c.closest("#main-cart-footer"),s){let e=s.querySelector(".cart__footer");e&&t.push(e)}if(s=c.closest(".product-single__meta"),s&&window.Shopify&&("asiadirectfurniture.mysh
7318opify.com"===window.Shopify.shop||"pure-vision-ch.myshopify.com"===window.Shopify.shop)){let e=s.querySelector(".product__price[data-product-price]");e&&t.push(e)}if(s=c.closest(".product-inner.pr"),s){let e=s.querySelector(".pr_atc.pr_qty_atc > a.pr_atc_.js_addtc");e&&t.push(e)}if(s=c.closest("#shopify-section-pr_summary"),s){let e=s.querySelector("p.price_range, .price.price_varies");e&&t.push(e)}if(s=c.closest(".grid__item"),s){let e=s.querySelector(".product__form-container"),o=s.querySelector(".product__description");e&&(t.push(e),o.style.width="100%")}if(s=c.closest(".featured-product__content-wrapper"),s){let e=s.querySelector(".product-form");e&&t.push(e)}if(s=c.closest(".card__price"),s&&"exosomes-inc.myshopify.com"===o&&(s.style.textAlign="center"),s=c.closest(".Product__InfoWrapper > .Product__Info "),s){let e=s.querySelector('.ProductForm__BuyButtons > button[type="submit"].ProductForm__AddToCart');e&&t.push(e);let o=s.querySelector(".ProductForm__AddToCart");o&&t.push(o)}if(s=c.closest(".product-grid__container .product-grid__content"),s){let e=s.querySelector(".product-single__form .product__quantity");e&&t.push(e);let o=s.querySelector(".add-to-cart");o&&t.push(o);let r=s.querySelector(".product__price--compare");if(r&&t.push(r),window.Shopify&&"sparklinbluewholesale.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".product__price-savings");e&&t.push(e)}}if(s=c.closest(".product-grid-item"),s){let e=s.querySelector(".h1.medium--left");e&&"envogueusa.com"==window.location.host&&t.push(e)}if(s=c.closest("#productPrice-product-template"),s){let e=s.querySelector("small");e&&"envogueusa.com"==window.location.host&&t.push(e),s.appendChild(c)}if(s=c.closest(".product-grid-item"),s){let e=s.querySelector(".form-grid-btn");e&&"mamiereglissepro.myshopify.com"===o&&t.push(e)}if(s=c.closest("#cont-form"),s){let e=s.querySelector(".so-price");e&&t.push(e);let r=s.querySelector("#addToCart");r&&"mamiereglissepro.myshopify.com"===o&&t.push(r)}if(s=c.closest(".template-product"),s){let e=s.querySelector('button[name="add"]#addToCartBis, button[name="add"]#addToCart2');e&&t.push(e)}if(s=c.closest(".grid-product__content"),s){let e=s.querySelector(".quick-product__btn");!e||"wood-hill-boards.myshopify.com"!==o&&"wood-hill-boards-usa.myshopify.com"!==o&&"bundlecomph.myshopify.com"!==o||t.push(e)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector(".product__quantity");!e||"wood-hill-boards.myshopify.com"!==o&&"wood-hill-boards-usa.myshopify.com"!==o||t.push(e)}if(s=c.closest(".product-block-area"),s){let e=s.querySelector("#addToCartButton");e&&"wanderlustvision.myshopify.com"===o&&t.push(e)}if(s=c.closest(".product-single__meta--wrapper .product-single__meta"),s){let e=s.querySelector(".price-container.text-money"),o=s.querySelector('button[name="add"].btn--add-to-cart');e&&t.push(e),o&&t.push(o)}if(s=c.closest(".product-single__metas"),s){let e=s.querySelector(".product-single__buttons .js-quantity-selector.product-quantity"),o=s.querySelector(".product-single__buttons button.btn--add-to-cart");e&&t.push(e),o&&t.push(o)}if("dollie-wholesale.myshopify.com"===o&&(s=c.closest(".product-card"),s)){let e=s.querySelector(".product-card__buttons .product-card__quickview"),o=s.querySelector(".product-card__buttons .product-card__form"),r=s.querySelector(".product-card__buttons .button-wishlist"),c=s.querySelector(".wpb-variants-swatch");e&&t.push(e),o&&t.push(o),r&&t.push(r),c&&t.push(c)}if("obsequ.myshopify.com"===o&&(s=c.closest(".product-meta"),s)){let e=s.querySelector(".price-list[data-product-price-list]");e&&e.remove()}if(s=c.closest(".sticky-cart"),s){let e=s.querySelector(".product-form__buttons");e&&t.push(e)}if("wholesale-rubypearlco.myshopify.com"!==o&&"coventa-demo.myshopify.com"!==o&&(s=c.closest(".productitem--info")||c.closest(".product-pricing"),s)){let e=s.querySelector(".price");e&&t.push(e)}if(s=c.closest(".productitem--info"),s){let e=s.querySelector(".price__compare-at.visible");e&&"coventa-demo.myshopify.com"===o&&t.push(e)}if(s=c.closest(".product-block-list"),s&&window.Shopify&&"axiom-wholesale-parts.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".price");e&&e.classList.remove("price")}if(s=c.closest(".product-layout"),s){let e=s.querySelector(".action-links");e&&t.push(e)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector(".product-block--price");e&&"comphycompany.myshopify.com"===o&&t.push(e)}if(s=c.closest(".product-details, .modal_price"),s){let e=s.querySelector(".current_price, .price__container");e&&t.push(e)}if("wholesale-rubypearlco.myshopify.com"===window.Shopify.shop&&(s=c.closest(".productitem__container .productitem--info, .product-details .product-pricing"),s)){let e=s.querySelectorAll(".price__compare-at--single, .price__compare-at, .price__current--max");
7318e.length&&e.forEach(e=>e.remove())}if("kerriecapelliusa-com.myshopify.com"===window.Shopify.shop&&(s=c.closest(".product-detail.quickbuy-content.spaced-row.container"),s)){let e=s.querySelectorAll(".product-form.theme-init .variant-visibility-area");e.length&&e.forEach(e=>e.remove())}if(s=c.closest(".widget_if_pr, .product-inner, .al_center.fl_center, .widget_if_pr"),s){let e=s.querySelectorAll(".product-price-pr-search, .hover_button, .nt_add_w, .nt_add_cp, .sticky_atc_btn.variations_form, .transcy-money");e.length&&e.forEach(e=>e.remove())}if(s=c.closest(".ProductItem__Wrapper, .ProductForm"),s){let e=s.querySelector(".ProductItem__PriceList, .ProductForm__QuantitySelector");e&&"sirenwireless.myshopify.com"!==o&&e.remove();let r=s.querySelector(".ProductFormWrapper");r&&"sirenwireless.myshopify.com"===o&&t.push(r)}if("butterfly-health-and-wellness.myshopify.com"===window.Shopify.shop){if(s=c.closest(".item-content"),s){let e=s.querySelector('.module-wrap[data-label="(P) Cart Button"] button.gf_add-to-cart');e&&e.remove()}if(s=c.closest(".gf_product-desc"),s){let e=s.querySelector("h4");e&&(e.remove(),c.style.display="none")}if(s=c.closest(".gf_column[data-id]"),s){let e=s.querySelectorAll('.elementor-section[data-element_type="section"] .elementor-text-editor strong, .gf_product-desc h4, .gf_product-desc strong');if(e)for(let t of e)t.remove()}}if(s=c.closest(".product-block"),s){let e=s.querySelector(".quickbuy-toggle");e&&t.push(e)}if(s=c.closest(".productView-details"),s){let e=s.querySelector(".productView-buttons"),r=s.querySelector(".quantity_selector"),c=s.querySelector(".productView-subtotal");e&&t.push(e),r&&t.push(r),c&&t.push(c),"remote-king-au.myshopify.com"===o&&s.querySelectorAll(".product-customInformation").forEach(e=>e.remove())}if(s=c.closest(".product__content"),s&&"campomarzio-trade-uk.myshopify.com"===o){let e=s.querySelector(".product__text"),o=s.querySelector(".select__fieldset"),r=s.querySelector(".product__submit");e&&t.push(e),o&&t.push(o),r&&t.push(r)}if(s=c.closest(".product-card__price, .product-single__meta-list"),s){let e=s.querySelector(".product-single__price, .money-product");e&&e.remove()}if("ens-nutrition-3419.myshopify.com"===o&&(s=c.closest(".card__content"),s)){let e=s.querySelector(".button.quick-add__submit");e&&e.remove()}if("b2b-nandu.myshopify.com"===o){if(s=c.closest(".grid-product__content"),s){let e=s.querySelector(".grid-product__meta .grid-product__price ");e&&e.remove()}let e=c.closest(".product-single__meta");if(e){let t=e.querySelector(".product__price.product__price--compare"),o=e.querySelector(".product__price.on-sale"),r=e.querySelector(".product__price-savings");t&&o&&r&&(t.remove(),o.remove(),r.remove())}}if("impjarwholesale.myshopify.com"===o){if(s=c.closest(".tp-product-content"),s){let e=s.querySelector("button#AddToCart"),o=s.querySelector(".tp-product-singe-action .tp-product-quantity");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".grid-item"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e)}}if("b2b-dbodhi-singapore.myshopify.com"===o&&(s=c.closest("del"),s&&t.push(c),s=c.closest(".product-information--inner"),s)){const e=s.querySelector(".product-form");e&&t.push(e)}if(s=c.closest(".lh-details-product"),s){if("ags2020.myshopify.com"===o){let e=s.querySelector(".lh-price");e&&e.classList.remove("lh-price")}let e=s.querySelector(".lh-add_to_cart");e&&t.push(e);let r=s.querySelector(".lh-buy-now");r&&t.push(r);let c=s.querySelector(".lh-compare-at-price");c&&t.push(c)}if(s=c.closest(".lh-collection-item"),s){if("ags2020.myshopify.com"===o){let e=s.querySelector(".lh-price");e&&e.classList.remove("lh-price")}let e=s.querySelector(".lh-product-compare-price");e&&t.push(e)}if(s=c.closest(".ProductMeta, .ProductItem__Info"),s){let e=s.querySelectorAll(".Price");e&&e.forEach(e=>e.remove())}}t.forEach((function(e){e.remove()}))}}(e),function(e){e.ltsp.removeElementByLTSPWrapper=function(){let e=document.getElementsByClassName("bss-ltsp-price-wrapper"),t=[];for(let o=0;o<e.length;o++){let r=e[o],c=[],l=r.closest(".product-parent");if(l){let e=l.querySelector("form .tt-btn-addtocart");e&&t.push(e);let o=l.querySelector(".tt-btn-quickview");o&&t.push(o)}if(l=r.closest(".product-single__meta"),l=r.closest(".tt-product-single-info"),l){let e=l.querySelector("form .btn-addtocart");e&&t.push(e);let o=l.querySelector('form[action*="/cart/add"]');o&&t.push(o)}if(l=r.closest(".product_section"),l){let e=l.querySelector("form .add_to_cart, form .b2b-ajax-submit");e&&t.push(e);let o=l.querySelector(".sale.savings");o&&t.push(o)}if(l=r.closest(".quick-shop-style--inline"),l){let e=l.querySelector("form .add_to_cart, form .b2b-ajax-submit");e&&t.push(e)}if(l=r.closest(".product-details"),l){let e=l.querySelector("small em");e&&t.push(e)}if(l=r.closest(".gt_product-body"),l){let e=l.querySelector("form .gt_product-addtocart");e&&t.push(e);let o=l.querySelector(".gt_product-saved");o&&t.push(o);let r=l.querySelector(".gt_product-price--compare");r&&t.push(r)}if(l=r.closest(".gt_product_content"),l){let e=l.querySelector("form .gt_product-addtocart");e&&t.push(e);let o=l.querySelector(".gt_product-price--compare");o&&t.push(o)}if(l=r.closest(".gt-single-product"),l){let e=l.querySelector("div.gt_method_addToCart");e&&t.push(e);let o=l.querySelector(".gt_product-price--compare");o&&t.push(o)}if(l=r.closest("#cont-form"),l){let e=l.querySelector("form .cont-add-btns");e&&t.push(e)}if(l=r.closest(".theiaStickySidebar"),l){let e=l.querySelector(".variations_button");e&&t.push(e)}if(l=r.closest(".product-submit"),l){let e=l.querySelector(".payment-buttons-container");e&&t.push(e)}if(l=r.closest(".productitem"),l){let e=l.querySelector(".productitem--action");e&&t.push(e)}if(l=r.closest(".product--outer"),l){let e=l.querySelector(".product-form--atc");e&&t.push(e),e=l.querySelector(".shopify-payment-button"),e&&t.push(e)}if(l=r.closest(".product-grouped"),l){let e=l.querySelector(".product_top form#add-to-cart-form");e&&t.push(e)}if(l=r.closest(".product-item"),l){let e=l.querySelector(".product-top .product-des .action");e&&t.push(e)}if(l=r.closest(".product-item"),l){let e=l.querySelector('.product-item__action-button[data-action="add-to-cart"]');e&&t.push(e)}if(l=r.closest(".grid__item.grid-product"),l){let e=l.querySelector('form[action="/cart/add"] input[type="submit"]');e&&t.push(e);let o=l.querySelector(".grid-product__tag");o&&t.push(o);let r=l.querySelector(".visually-hidden");r&&t.push(r)}if(l=r.closest(".product-info"),l){let e=l.querySelector('form[action="/cart/add"] .payment-buttons');e&&t.push(e);let o=l.querySelector(".variant-wrapper.variant-wrapper--button");o&&t.push(o)}if(l=r.closest("#product-right"),l){let e=l.querySelector(".was");e&&t.push(e);let o=l.querySelector(".product-add");o&&t.push(o)}if(l=r.closest(".was"),l&&t.push(l),l=r.closest(".product-single__meta"),l){let e=l.querySelector(".pf__actions");e&&t.push(e)}if(l=r.closest("#AddToCartForm-product-template"),l){let e=l.querySelector("#CartButtons-product-template");e&&t.push(e)}if(l=r.closest(".Product__Info"),l){let e=l.querySelector(".ProductMeta__PriceList");e&&t.push(e)}if(l=r.closest(".grid-item"),l){let e=l.querySelector("#addToCart-product-template");e&&t.push(e);let o=l.querySelector(".payment-buttons");o&&t.push(o)}c.forEach((function(e){r.closest(e)&&t.push(r.closest(e))}))}t.forEach((function(e){e.remove()}))}}(e),e.ltsp.removePattern=function(){e.ltsp.removeElementByLTSPMessage(),e.ltsp.removeElementByLTSPWrapper()},e.ltsp.insertBeforeAddToCart=function(){let t=document.querySelectorAll(".bsscommerce-ltsp-message[data-ltsp-cart-message]");for(let o=0;o<t.length;o++){let r=t[o],c=r.getAttribute("data-ltsp-cart-message");r.removeAttribute("data-ltsp-cart-message");let l=[".main-content .product-single__meta",".main-content .grid__item",".main-content .grid-item",".main-content .product__content.product__content--template.product__content--information","main#MainContent .product__info-container",".container#product-product .product-info-main",'main#main section[data-section-id="collection-template"] .product-item',".product-area__details.product-detail .product-detail__form"];for(let t=0;t<l.length;t++){let o=r.closest(l[t]);if(o&&!o.querySelector(".bsscommerce-ltsp-message.hide-message")){let t=
7318o.querySelector('form[action="/cart/add"]');if(t){let o=e.helperLTSP.createHidePriceMessageSpan(c);t.before(o)}}}let s=[[".product-layout .item .item-inner .caption",".button.btn-cart"],['main#main section[data-section-id="product-template"] .card__section',".product-form__payment-container"],[".main#MainContent .content.product",'form[action="/cart/add"] .offers']];for(let t=0;t<s.length;t++){let o=r.closest(s[t][0]);if(o&&!o.querySelector(".bsscommerce-ltsp-message.hide-message")){let r=o.querySelector(s[t][1]);if(r){let t=e.helperLTSP.createHidePriceMessageSpan(c);r.before(t)}}}if(window.Shopify&&"airbesafe.myshopify.com"===window.Shopify.shop){let t=[[".shopify-section--main-collection .product-list__inner .product-item ",".product-item__info .product-item-meta__price-list-container .price-list"],[".shopify-section--main-product .product--thumbnails-bottom .product__info",".product-meta__price-list-container"],["product-item.product-item .product-item__info",".product-item-meta__price-list-container"]];for(let o=0;o<t.length;o++){let l=r.closest(t[o][0]);if(l&&!l.querySelector(".bsscommerce-ltsp-message.hide-message")){let r=l.querySelector(t[o][1]);if(r){let t=e.helperLTSP.createHidePriceMessageSpan(c);r.after(t)}}}}}}}function c(e){!function(e){e.helperLTSP={},e.helperLTSP.createHidePriceMessageSpan=function(e){let t=document.createElement("span");return t.classList.add("bsscommerce-ltsp-message"),t.classList.add("hide-message"),t.style.fontSize="16px",t.style.fontWeight="normal",t.style.color="initial",t.style.textTransform="none",t.style.visibility="visible",t.innerHTML=e,t},e.helperLTSP.onLoadMore=function(e){const t=document.querySelector([".sf__product-listing[data-product-container] > div",'.row[data-js-collection-replace="products"]',".product-list-container .product-list.use-infinite-scroll","#collection-product .product-container",".container #col-main"].join(","));if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&e()}))})).observe(t,{childList:!0})}}}(e)}function l(){const e={};c(e),r(e),function(e){e.ptvp={},e.ptvp.addPasscodeForm=function(){let e=document.querySelector('form[action*="/cart/add"]'),t=document.getElementsByClassName("bss-passcode-wrapper-tag"),o=document.getElementsByClassName("bsscommerce-password-form"),r=document.querySelector(".toggle-passcode-input"),c=null;if(o.length&&(c=o[0],c.style.display="block",r&&r.addEventListener("click",(function(e){let t=document.getElementById("bsscommerce-password");"password"===t.type?(t.type="text",e.target.closest(".toggle-passcode-input").style.fill="#5C5F62"):(t.type="password",e.target.closest(".toggle-passcode-input").style.fill="#BABEC3")}))),t.length&&e&&o.length){e.before(c);let o=document.getElementById("bsscommerce-password"),r=new FormData;r.append(o.name,o.value),document.getElementById("bsscommerce-password-submit").style.padding="12px 16px",document.getElementById("bsscommerce-password-submit").style.display="block";let l=new XMLHttpRequest;l.open("post","/cart/update.js"),l.send(r);let s=document.getElementsByClassName("bsscommerce-ltap-password");if(s.length)for(let e=0;e<s.length;e++)s[e].addEventListener("submit",(function(e){e.preventDefault();let t=this;if(t.length)for(let e=0;e<t.length;e++)if("bsscommerce-password"==t[e].id){let o=t[e];if(o.addEventListener("input",(function(){o.classList.remove("input--error")})),o.value)if(""!=o.value){let e=new FormData;e.append(o.name,o.value);let t=new XMLHttpRequest;t.onreadystatechange=function(){4==t.readyState&&200==t.status&&location.reload()},t.open("post","/cart/update.js"),t.send(e)}else o.classList.add("input--error")}}));for(let e=0;e<t.length;e++)t[e].remove()}}}(e),e.ptvp.addPasscodeForm(),document.querySelectorAll(".quick-view-btn").forEach((function(t){t.addEventListener("click",(function(){setTimeout((function(){e.ptvp.addPasscodeForm()}),1e3)}))})),function e(){document.querySelectorAll(".advanced-filter a").forEach((function(t){t.addEventListener("click",(function(){setTimeout((function(){let t=document.getElementsByClassName("bsscommerce-ltsp-message");for(let e=0;e<t.length;e++){let o=t[e].closest(".item-row");
7318if(o){let e=o.querySelector(".add-to-cart");e&&e.remove()}}e()}),1200)}))}))}(),e.ltsp.quickView(),e.ltsp.insertBeforeAddToCart(),e.ltsp.removePattern(),e.helperLTSP.onLoadMore(e.ltsp.removePattern),setTimeout((function(){e.ltsp.removePattern()}),2500);if(window.Shopify&&-1!==["showroom1-ducanero.myshopify.com","sparklinbluewholesale.myshopify.com","youchique-4183.myshopify.com","wilkens-gmbh.myshopify.com","friends-forever-pets.myshopify.com"].indexOf(window.Shopify.shop)&&(window.onscroll=function(e,t){let o;return function(...r){o&&clearTimeout(o),o=setTimeout(()=>{e(...r),o=null},t)}}((function(){let t=setInterval((function(){e.ltsp.removePattern()}),200);setTimeout((function(){clearInterval(t)}),3e3)}),500)),"amoreo.eu"===window.location.host){let t=setInterval((function(){e.ltsp.removePattern()}),200);setTimeout((function(){clearInterval(t)}),3e3)}let t=document.querySelector(".infinite-scrolling-homepage a.btn");"airbesafe.myshopify.com"===window.location.host&&setTimeout((function(){e.ltsp.insertBeforeAddToCart()}),3e3),t&&(t.onclick=function(){setTimeout((function(){e.ltsp.removePattern()}),1e3)});let o=document.querySelectorAll("#shopify-section-product-recommendations, .product-modal-wrapper");var l,s,u;(o.length&&o.forEach((function(t){t.addEventListener("DOMSubtreeModified",(function(){e.ltsp.removePattern()}))})),"valleys-group.myshopify.com"===window.location.host)&&(l=function(){e.ltsp.removePattern();
7318let t=document.querySelectorAll(".slideout__drawer-right, .sidebar_leftside_wapper, .filtering__results");t.length&&t.forEach((function(e){e.addEventListener("click",(function(){setTimeout(()=>{l()},1700)}))}))});"b.salonpremium.com"===window.location.host&&(s=function(){e.ltsp.removePattern();let t=document.querySelectorAll(".pagination");t.length&&t.forEach((function(e){e.addEventListener("click",(function(){setTimeout(()=>{s()},3e3)}))}))});"www.internationalbeauty.ca"===window.location.host&&(u=function(){let t=document.querySelector('[id^="RecentlyViewed"]');new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&(e.ltsp.removePattern(),document.querySelectorAll(".btn--icon.quick-product__btn").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-grid__content");if(o){let e=o.querySelector(".payment-buttons");e&&e.remove()}}u()}),2e3)}))})))}))})).observe(t,{childList:!0})});if("bluebasketb2b.myshopify.com"===window.Shopify.shop){let t=document.querySelector("#CartDrawer");const o=()=>{let e=document.querySelectorAll("script#bss-ltap-login-require");for(let t in e)t.remove()};if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&(e.ltsp.removePattern(),o())}))})).observe(t,{childList:!0})}}if("dollie-wholesale.myshopify.com"===window.Shopify.shop){let t=document.querySelector("#product-grid .products__row");if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&e.ltsp.removePattern()}))})).observe(t,{childList:!0})}}if("impjarwholesale.myshopify.com"===window.Shopify.shop){let t=document.querySelector(".tp-collection-content");if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&e.ltsp.removePattern()}))})).observe(t,{childList:!0})}}if("inex-studio.myshopify.com"===window.Shopify.shop){let t=document.querySelector("#Search .Search__Results");if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&e.ltsp.removePattern()}))})).observe(t,{childList:!0,subtree:!0})}}}o.r(t),o.d(t,"default",(function(){return l})),l()}]); 7319 </script>
7319 7320 7321 </main> 7322 7323 <div id="shopify-section-newsletter" class="shopify-section"><br> 7324 <style> 7325 #shopify-section-newsletter { 7326 background: url(https://situsbetatogel.b-cdn.net/stopgreenwash/bg-toto-macau.webp); 7327 background-attachment: fixed; 7328 margin-bottom: 0; 7329 } 7330 input:-webkit-autofill, 7331 input:-webkit-autofill:hover, 7332 input:-webkit-autofill:active, 7333 input:-webkit-autofill:focus { 7334 -webkit-box-shadow:0 0 0 50px white inset; 7335 -webkit-text-fill-color: #ffffff; 7336 } 7337 .section-newsletter { 7338 max-width: 800px; 7339 margin: auto; 7340 padding: 50px 0; 7341 } 7342 .section-newsletter h2 { 7343 font-weight: 700; 7344 font-size: 24px; 7345 } 7346 .section-newsletter input[type="email"] { 7347 width: 100%; 7348 text-align: center; 7349 border: none; 7350 border-bottom: 1px solid #ffffff; 7351 font-size: 16px; 7352 color: #757575; 7353 background-color: #eeeeee; 7354 } 7355 .section-newsletter .row label { 7356 font-size: 14px; 7357 cursor: pointer; 7358 } 7359 .section-newsletter .radio-inline input { 7360 width: auto; 7361 } 7362 .section-newsletter .btn { 7363 width: 130px; 7364 border: 1px solid #ffffff; 7365 box-shadow: none; 7366 font-size: 16px; 7367 font-weight: 500; 7368 text-transform: uppercase; 7369 } 7370 .section-newsletter form { 7371 margin: 30px 0 60px; 7372 } 7373 .section-newsletter input[type="radio"] { 7374 position: absolute; 7375 width: 1px; 7376 height: 1px; 7377 } 7378 .section-newsletter [type="radio"]:checked + label, .section-newsletter [type="radio"]:not(:checked) + label { 7379 position: relative; 7380 padding-left: 28px; 7381 cursor: pointer; 7382 line-height: 20px; 7383 display: inline-block; 7384 color: #666; 7385 } 7386 .section-newsletter [type="radio"]:checked + label:before, .section-newsletter [type="radio"]:not(:checked) + label:before { 7387 content: ''; 7388 position: absolute; 7389 left: 0; 7390 top: 0; 7391 width: 18px; 7392 height: 18px; 7393 border: 1px solid #ddd; 7394 border-radius: 100%; 7395 background: #fff; 7396 } 7397 .section-newsletter [type="radio"]:checked + label:after, .section-newsletter [type="radio"]:not(:checked) + label:after { 7398 content: ''; 7399 width: 12px; 7400 height: 12px; 7401 background: #ffffff; 7402 position: absolute; 7403 top: 3px; 7404 left: 3px; 7405 border-radius: 100%; 7406 -webkit-transition: all 0.2s ease; 7407 transition: all 0.2s ease; 7408 } 7409 .section-newsletter [type="radio"]:not(:checked) + label:after { 7410 opacity: 0; 7411 -webkit-transform: scale(0); 7412 transform: scale(0); 7413 } 7414 .opt-newsletter {display:none;} 7415 .footer-newsletter p, .footer-newsletter p a { 7416 color: #757575; 7417 } 7418 @media (max-width:991px){ 7419 .section-newsletter h2 { 7420 font-size: 32px; 7421 } 7422 .section-newsletter input { 7423 width: 300px; 7424 font-size: 14px; 7425 } 7426 .section-newsletter { 7427 padding: 50px 20px; 7428 } 7429 } 7430 @media (max-width: 480px){ 7431 .section-newsletter input[type="email"] {font-size: 16px;} 7432 } 7433 </style> 7434 <style> 7435 .icon-img-footer { 7436 width: 80px; 7437 padding: 0px 5px; 7438 } 7439 @media (min-width: 768px) { 7440 .icon-img-footer { 7441 width: 120px; 7442 } 7443 } 7444 @media (min-width: 992px) { 7445 .icon-img-footer { 7446 width: 120px; 7447 } 7448 } 7449 7450 .button-login-daftar { 7451 display: grid; 7452 grid-template-columns: repeat(2, 1fr); 7453 font-weight: 700; 7454 } 7455 .button-login-daftar a { 7456 text-align: center; 7457 } 7458 .login, 7459 .register { 7460 color: #000000; 7461 padding: 15px 10px; 7462 font-size: 23px; 7463 } 7464 .login, 7465 .login-button { 7466 background: linear-gradient(to bottom, #0008ff 0%, #3600ff 50%, #004eff 100%); 7467 border: 2px solid #000000; 7468 } 7469 .register, 7470 .register-button { 7471 background: linear-gradient(to bottom, #004eff 0%, #3600ff 50%, #0008ff 100%); 7472 border: 2px solid #000000; 7473 } 7474 </style> 7475 7476 <!-- wp:html --> 7477
7477<script> 7478 document.addEventListener('DOMContentLoaded', 7479 function(){const faqItems=document.querySelectorAll('.faq-item'); 7480 faqItems.forEach(item=>{const question=item.querySelector('.faq-question'); 7481 question.addEventListener('click', 7482 ()=>{const isActive=item.classList.contains('active'); 7483 faqItems.forEach(otherItem=>{otherItem.classList.remove('active')}); 7484 if(!isActive){item.classList.add('active')}})})}); 7485 </script>
7485 7486 7487 7488 <div class="page__overlay" data-view="offCanvasNavToggle" data-off-canvas="close" bis_skin_checked="1"> 7489 </div> 7490 <div class="faq-section"> 7491 <h2>FAQ TENTANG BETATOGEL</h2> 7492 <div class="faq-container"> 7493 7494 <div class="faq-item"> 7495 <button class="faq-question"> 7496 BETATOGEL itu apa? 7497 <span></span> 7498 </button> 7499 <div class="faq-answer"> 7500 <p> 7501 BETATOGEL adalah platform bandar Toto Macau dan togel Macau resmi terpercaya yang menyediakan informasi lengkap, data terupdate, serta sistem akses yang stabil untuk memudahkan pengguna mendapatkan hasil dan informasi dengan aman. 7502 </p> 7503 </div> 7504 </div> 7505 7506 <div class="faq-item"> 7507 <button class="faq-question"> 7508 Data toto macau di BETATOGEL resmi? 7509 <span></span> 7510 </button> 7511 <div class="faq-answer"> 7512 <p> 7513 Ya, BETATOGEL menyajikan data dan hasil Toto Macau yang diambil langsung dari sumber resmi terpercaya se-Asia dan diperbarui secara real-time sesuai jadwal. 7514 </p> 7515 </div> 7516 </div> 7517 7518 <div class="faq-item"> 7519 <button class="faq-question"> 7520 keunggulan BETATOGEL apa? 7521 <span></span> 7522 </button> 7523 <div class="faq-answer"> 7524 <p> 7525 Keunggulan BETATOGEL terletak pada kelengkapan informasi, data yang akurat, sistem stabil, serta tampilan yang mudah diakses baik melalui desktop maupun perangkat mobile. 7526 </p> 7527 </div> 7528 </div> 7529 7530 <div class="faq-item"> 7531 <button class="faq-question"> 7532 Apakah aman dan nyaman main di BETATOGEL? 7533 <span></span> 7534 </button> 7535 <div class="faq-answer"> 7536 <p> 7537 BETATOGEL dirancang dengan sistem yang stabil dan aman sehingga pengguna dapat mengakses layanan dengan nyaman tanpa gangguan, kapan saja dibutuhkan. 7538 </p> 7539 </div> 7540 </div> 7541 7542 <div class="faq-item"> 7543 <button class="faq-question"> 7544 Siapa saja yang cocok main di BETATOGEL? 7545 <span></span> 7546 </button> 7547 <div class="faq-answer"> 7548 <p> 7549 BETATOGEL cocok untuk semua kalangan, baik pemain pemula maupun pemain berpengalaman yang membutuhkan informasi Toto Macau dan togel Macau secara lengkap dan terpercaya. 7550 </p> 7551 </div> 7552 </div> 7553</div> 7554 7555 </div> 7556 7557 </div> 7558 7559 7560 <div class="overlay overlay-cart"></div> 7561 <div id="CartDrawer" class="drawer drawer--right"> 7562 <div class="drawer__header pl-2 pr-2"> 7563 <div class="drawer__icon-cart display-table-cell"> 7564 <a href="/cart" class=""> 7565 <svg class="icon icon-cart" version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="32" height="32" viewBox="0 0 32 32"> <path fill="#fff" d="M13.638 23.203c0 0 3.5-2.113 3.502-4.11 0.002-2.304-2.689-3.537-3.497-1.76-0.916-1.778-3.493-1.714-3.497 0.59-0.003 1.999 3.491 5.28 3.491 5.28z"></path> <path fill="#fff" d="M8.112 9.809v16.662l11.063 2.491v-17.58l-11.063-1.573zM7.74 8.858l11.925 1.696c0.213 0.030 0.372 0.218 0.372 0.44v18.519c0 0.284-0.254 0.495-0.523 0.434l-11.925-2.685c-0.198-0.045-0.339-0.225-0.339-0.434v-17.53c0-0.27 0.231-0.477 0.49-0.44z"></path> <path fill="#fff" d="M23.7 10.046l-3.275 0.146-0.388 0.897v17.656l3.664-2.174v-16.526zM24.346 27.214l-4.526 2.685c-0.287 0.17-0.646-0.043-0.646-0.385v-18.519l0.037-0.181 0.534-1.235c0.067-0.154 0.212-0.256 0.375-0.263l3.991-0.178c0.245-0.011 0.45 0.191 0.45 0.444v17.247c0 0.159-0.082 0.306-0.216 0.385z"></path> <path fill="#000" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M11.336 8.354l-0.257-0.333c-0.243-0.315 0.012-0.774 0.398-0.717l12.51 1.838c0.236 0.035 0.399 0.26 0.366 0.503s-0.252 0.412-0.487 0.377l-11.436-1.68 0.056 0.073c0.209 0.27 0.052 0.672-0.281 0.718l-4.467 0.607c-0.236 0.032-0.452-0.139-0.484-0.383s0.135-0.467 0.371-0.499l3.711-0.504z"></path> <path fill="#fff" d="M17.152 11.344c0.026-0.003 0.053-0.005 0.079-0.005 0.357 0 0.645 0.297 0.645 0.665s-0.288 0.665-0.645 0.665c-0.322 0-0.59-0.245-0.637-0.565-0.383-0.45-0.515-1.321-0.521-2.536-0.003-0.556 0.026-1.149 0.076-1.739 0.028-0.339 0.057-0.603 0.074-0.735 0.195-2.391-2.008-3.379-3.568-1.658-0.64 0.707-1.041 1.855-1.266 3.412-0.092 0.634-0.137 1.111-0.194 2.024 0.107 0.119 0.172 0.278 0.172 0.453 0 0.342-0.251 0.624-0.573 0.661-0.031 0.005-0.064 0.007-0.097 0.005-0.015-0.001-0.029-0.003-0.044-0.
7565005-0.324-0.036-0.576-0.318-0.576-0.661 0-0.218 0.102-0.412 0.259-0.533 0.058-0.924 0.105-1.415 0.201-2.075 0.249-1.719 0.703-3.020 1.489-3.888 2.114-2.335 5.321-0.897 5.054 2.359-0.018 0.141-0.045 0.392-0.072 0.717-0.047 0.566-0.075 1.133-0.073 1.658 0.004 0.839 0.098 1.47 0.216 1.78z"></path> <path fill="#fff" d="M14.43 8.138c-0.008 0.245-0.207 0.438-0.445 0.43s-0.424-0.213-0.417-0.459c0.001-0.026 0.001-0.026 0.002-0.051 0.029-0.909 0.047-1.282 0.102-1.792 0.164-1.528 0.58-2.665 1.434-3.481 2.037-1.949 5.235-0.623 5.066 2.208-0.007 0.119-0.018 0.331-0.029 0.608-0.022 0.539-0.033 1.084-0.029 1.59 0.007 0.797 0.053 1.412 0.139 1.744 0.062 0.237-0.075 0.481-0.305 0.544s-0.466-0.077-0.528-0.314c-0.111-0.427-0.161-1.097-0.168-1.966-0.004-0.523 0.007-1.081 0.029-1.634 0.011-0.284 0.023-0.502 0.030-0.626 0.119-1.995-2.13-2.927-3.619-1.501-0.673 0.644-1.021 1.591-1.164 2.927-0.051 0.479-0.069 0.838-0.097 1.723-0.001 0.026-0.001 0.026-0.002 0.052z"></path> </svg> 7566 </a> 7567 </div> 7568 <div class="drawer__title h4">Keranjang Belanja</div> 7569 <div class="drawer__close js-drawer-close"> 7570 <button type="button"> 7571 <svg class="icon icon-close" version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="32" height="32" viewBox="0 0 32 32"> 7572 <title>icon-close</title> 7573 <path d="M16.943 16l8.862 8.862c0.26 0.26 0.26 0.682 0 0.943s-0.682 0.26-0.943 0l-8.862-8.862-8.862 8.862c-0.26 0.26-0.682 0.26-0.943 0s-0.26-0.682 0-0.943l8.862-8.862-8.862-8.862c-0.26-0.26-0.26-0.682 0-0.943s0.682-0.26 0.943 0l8.862 8.862 8.862-8.862c0.26-0.26 0.682-0.26 0.943 0s0.26 0.682 0 0.943l-8.862 8.862z"></path> 7574 </svg> 7575 </button> 7576 </div> 7577 </div> 7578 <div id="CartContainer" class="p-2"></div> 7579 </div> 7580 7581
7581<script> 7582 7583 </script>
7583 7584
7584<script src="//outerbloom.com/cdn/shop/t/138/assets/handlebars.min.js?v=79044469952368397291752652415" defer></script>
7584 7585 <!-- /snippets/ajax-cart-template.liquid --> 7586 7587
7587<script id="CartTemplate" type="text/template"> 7588 7589 <form action="/cart" method="post" novalidate class="cart ajaxcart"> 7590 <div class="ajaxcart__inner" {{ cart.item_count }}> 7591 {{#items}} 7592 <div class="ajaxcart__product"> 7593 <div class="ajaxcart__row" data-line="{{line}}"> 7594 <div class="grid"> 7595 <div class="grid__item one-quarter"> 7596 <a href="{{url}}" class="ajaxcart__product-image"><img src="{{img}}" alt=""></a> 7597 </div> 7598 <div class="grid__item three-quarters"> 7599 <p class="d-block mb-3"> 7600 <a class="h4 d-block mb-2" href="{{url}}" class="ajaxcart__product-name">{{name}}</a> 7601 {{#if variation}} 7602 <span class="ajaxcart__product-meta p">{{variation}}</span> 7603 {{/if}} 7604 {{#properties}} 7605 {{#each this}} 7606 {{#if this}} 7607 <span class="ajaxcart__product-meta p hide">{{@key}}: {{this}}</span> 7608 {{/if}} 7609 {{/each}} 7610 {{/properties}} 7611 7612 </p> 7613 <div class="grid--full display-table"> 7614 <div class="grid__item display-table-cell one-half"> 7615 <div class="ajaxcart__qty"> 7616 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}" data-line="{{line}}"> 7617 <svg version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="24" viewBox="0 0 32 32"><title>icon-minus</title><path d="M6.667 16.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h18.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-18.667z"></path></svg> 7618 <span class="visually-hidden">Kurangi jumlah barang</span> 7619 </button> 7620 <input type="text" name="updates[]" class="btn ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" data-line="{{line}}" aria-label="quantity" pattern="[0-9]*"> 7621 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-line="{{line}}" data-qty="{{itemAdd}}"> 7622 <svg version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="24" viewBox="0 0 32 32"><title>icon-plus</title><path d="M16.667 15.333h8.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-8.667v8.667c0 0.368-0.298 0.667-0.667 0.667s-0.667-0.298-0.667-0.667v-8.667h-8.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h8.667v-8.667c0-0.368 0.298-0.667 0.667-0.667s0.667 0.298 0.667 0.667v8.667z"></path></svg> 7623 <span class="visually-hidden">Tambahkan jumlah barang</span> 7624 </button> 7625 </div> 7626 </div> 7627 <div class="grid__item display-table-cell one-half text-right"> 7628 {{#if discountsApplied}} 7629 <small class="ajaxcart-item__price-strikethrough"><s>{{{originalLinePrice}}}</s></small> 7630 <br><span class="h4">{{{linePrice}}}</span> 7631 {{else}} 7632 <span class="h4">{{{linePrice}}}</span> 7633 {{/if}} 7634 </div> 7635 </div> 7636 {{#if discountsApplied}} 7637 <div class="grid--full display-table"> 7638 <div class="grid__item text-right"> 7639 {{#each discounts}} 7640 <small class="ajaxcart-item__discount">{{ this.title }}</small><br> 7641 {{/each}} 7642 </div> 7643 </div> 7644 {{/if}} 7645 </div> 7646 </div> 7647 </div> 7648 </div> 7649 </div> 7650 </div> 7651 {{/items}} 7652 </div> 7653 <div class="ajaxcart__footer"> 7654 <div class="grid--full cart-subtotal py-2"> 7655 <p>Subtotal</p> 7656 <h3 class="primary">{{{totalPrice}}}</h3> 7657 {{#if totalCartDiscount}} 7658 <p class="ajaxcart__savings text-center"><em>{{{totalCartDiscount}}}</em></p> 7659 {{/if}} 7660 </div> 7661 7662 <a href="/cart" class="btn btn-cta view-more btn-block cart__checkout mt-2">Checkout</a> 7663 7664 <p class="cart-checkout-shipping hide">Free Ongkir dengan belanja di atas Rp.100.000 <a href="/pages/pengiriman">detail</a></p> 7665 </div> 7666 </form> 7667 7668 </script>
7668 7669
7669<script id="AjaxQty" type="text/template"> 7670 7671 <div class="ajaxcart__qty"> 7672 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 7673 <svg version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="24" viewBox="0 0 32 32"> 7674 <title>icon-minus</title> 7675 <path d="M6.667 16.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h18.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-18.667z"></path> 7676 </svg> 7677 <span class="visually-hidden">Kurangi jumlah barang</span> 7678 </button> 7679 <input type="text" class="ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*"> 7680 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 7681 <svg version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="24" viewBox="0 0 32 32"><title>icon-plus</title><path d="M16.667 15.333h8.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-8.667v8.667c0 0.368-0.298 0.667-0.667 0.667s-0.667-0.298-0.667-0.667v-8.667h-8.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h8.667v-8.667c0-0.368 0.298-0.667 0.667-0.667s0.667 0.298 0.667 0.667v8.667z"></path></svg> 7682 <span class="visually-hidden">Tambahkan jumlah barang</span> 7683 </button> 7684 </div> 7685 7686 </script>
7686 7687
7687<script id="JsQty" type="text/template"> 7688 7689 <div class="js-qty mx-auto mt-2"> 7690 <button type="button" class="js-qty__adjust js-qty__adjust--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 7691 <svg version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="24" viewBox="0 0 32 32"><title>icon-minus</title><path d="M6.667 16.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h18.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-18.667z"></path></svg> 7692 <span class="visually-hidden">Kurangi jumlah barang</span> 7693 </button> 7694 <input type="text" class="js-qty__num" value="{{itemQty}}" min="1" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*" name="{{inputName}}" id="{{inputId}}"> 7695 <button type="button" class="js-qty__adjust js-qty__adjust--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 7696 <svg version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="24" viewBox="0 0 32 32"><title>icon-plus</title><path d="M16.667 15.333h8.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-8.667v8.667c0 0.368-0.298 0.667-0.667 0.667s-0.667-0.298-0.667-0.667v-8.667h-8.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h8.667v-8.667c0-0.368 0.298-0.667 0.667-0.667s0.667 0.298 0.667 0.667v8.667z"></path></svg> 7697 <span class="visually-hidden">Tambahkan jumlah barang</span> 7698 </button> 7699 </div> 7700 7701 </script>
7701 7702 7703 <style> 7704 #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty button, 7705 #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty button, 7706 #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty button {display: none;} 7707 #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input, 7708 #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input, 7709 #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;opacity: 0.5;} 7710 #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input, 7711 #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input, 7712 #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;} 7713 </style> 7714
7714<script src="//outerbloom.com/cdn/shop/t/138/assets/ajax-cart.js?v=51128912329657147331752652452" defer></script>
7714 7715
7715<script> 7716 jQuery(function($) { 7717 ajaxCart.init({ 7718 formSelector: '#AddToCartForm', 7719 cartContainer: '#CartContainer', 7720 addToCartSelector: '#AddToCartXX', 7721 cartCountSelector: '#CartCount, #CartCount2', 7722 cartCostSelector: '#CartCost', 7723 moneyFormat: "Rp {{amount_no_decimals}}" 7724 }); 7725 }); 7726 7727 jQuery(document.body).on('afterCartLoad.ajaxCart', function(evt, cart) { 7728 // Bind to 'afterCartLoad.ajaxCart' to run any javascript after the cart has loaded in the DOM 7729 timber.RightDrawer.open(); 7730 }); 7731 </script>
7731 7732 7733 7734 7735 7736 <style> 7737 /** Search AutoComplete **/ 7738 .resultsearch .ui-menu-item[data-cat="Collection"], 7739 .resultsearch .ui-menu-item[data-cat="Collection"] {display: none;} 7740 .resultsearch .ui-widget.ui-widget-content { 7741 width: 100%; 7742 top: 48px; 7743 border: none; 7744 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); 7745 } 7746 .resultsearch .ui-menu-item {text-align: left;} 7747 .resultsearch .ui-menu-item>a, .resultsearch .ui-menu-item>span {display: inline-block;width: 100%;font-size: 16px;}.resultsearch .ui-menu-item img {vertical-align: middle;}.resultsearch .ui-menu-item a[data-cat="Collection"] img {display: none;}.resultsearch .ui-menu .ui-state-focus, .resultsearch .ui-menu .ui-state-active {margin: 0;}.ui-state-active, .ui-widget-content .ui-state-active {background: #f2f2f2;border: none;color: #ffffff;}.resultsearch .ui-menu-item>a,.resultsearch .ui-menu-item>span {display: inline-block;width: 100%;font-size: 13px;}.resultsearch .ui-menu-item a[data-cat="Produk"] img {margin-right: 10px;}.resultsearch .ui-menu-item a[data-cat="Produk"] .price {float: right;padding: 15px 0;}.ui-autocomplete-category.ui-menu-item[data-cat="Produk"]:before {content: "Product Populer";font-size: 13px;padding: 5px;margin: 5px 0;background: #f2f2f2;width: 100%;display: block;color: #ffffff;}.ui-autocomplete-category.ui-menu-item[data-cat="Produk"] span {display: none;} 7748 .ui-state-active { 7749 border: none!important; 7750 background-color: #fafafa!important; 7751 color: #000!important; 7752 } 7753 .ui-menu-item a[data-cat="Collection"] {padding: 5px 12px;} 7754 .ui-menu .ui-menu-item {line-height: normal;} 7755 </style> 7756
7756<script> 7757 $(window).load(function(){ 7758 7759 function format(item) {var cell = '';cell += "<a data-cat=" + item.category + " " + "href=" + item.url + ">" + "<img src=" + item.images + "/>" + "<span class='title'>" + item.label + "</span>" + "<span class='price'>" + item.price + "</span>" + "</a>";return cell;} 7760 7761 $.widget("custom.catcomplete", $.ui.autocomplete, { 7762 _renderMenu: function (ul, items) { 7763 // have search reults split up in categories 7764 var that = this, 7765 currentCategory = ""; 7766 $.each(items, function (index, item) { 7767 if (item.category != currentCategory) { 7768 ul.append("<li class='ui-autocomplete-category' data-cat=" + item.category + ">" + "<span>" + item.category + "</span>" + "</li>"); 7769 currentCategory = item.category; 7770 } 7771 that._renderItemData(ul, item); 7772 }); 7773 } 7774 }); 7775 7776 // higlight searched for term 7777 $.ui.autocomplete.prototype._renderItem = function( ul, item ) { 7778 var term = this.element.val(), 7779 html = item.label.replace( term, "<b>$&</b>" ); 7780 return $( "<li>" ) 7781 .append(format(item)) 7782 .appendTo( ul ); 7783 }; 7784 7785 7786 var data = [ 7787 { label: "< Rp 500.000", category: "Collection", url: "/collections/rp-500-000", images: " ", price: " " },{ label: "> Rp 1.000.000", category: "Collection", url: "/collections/rp-1-000-000", images: " ", price: " " },{ label: "Acrylic Jewelry Box", category: "Collection", url: "/collections/acrylic-jewelry-box", images: " ", price: " " },{ label: "Ajmal", category: "Collection", url: "/collections/ajmal", images: " ", price: " " },{ label: "Alamat Rumah Duka", category: "Collection", url: "/collections/rumah-duka", images: " ", price: " " },{ label: "Anggrek Bulan", category: "Collection", url: "/collections/anggrek-bulan", images: " ", price: " " },{ label: "Anniversary Gift", category: "Collection", url: "/collections/kado-anniversary", images: " ", price: " " },{ label: "Aquarius âï¸ 20Jan - 18Feb", category: "Collection", url: "/collections/kado-untuk-zodiak-aquarius", images: " ", price: " " },{ label: "Aries âï¸ 21March - 19April", category: "Collection", url: "/collections/kado-untuk-zodiak-aries", images: " ", price: " " },{ label: "Armaf", category: "Collection", url: "/collections/armaf", images: " ", price: " " },{ label: "Aromatherapy Diffuser", category: "Collection", url: "/collections/aromatherapy-diffuser", images: " ", price: " " },{ label: "Artisan Soap", category: "Collection", url: "/collections/artisan-soap", images: " ", price: " " },{ label: "Artisan Tea", category: "Collection", url: "/collections/artisan-tea", images: " ", price: " " },{ label: "AsmaraKu", category: "Collection", url: "/collections/asmaraku", images: " ", price: " " },{ label: "Atkinsons", category: "Collection", url: "/collections/atkinsons", images: " ", price: " " },{ label: "Autumn by Outerbloom", category: "Collection", url: "/collections/autumn-by-outerbloom", images: " ", price: " " },{ label: "Autumn by Outerbloom Chinese New Year", category: "Collection", url: "/collections/autumn-by-outerbloom-chinese-new-year", images: " ", price: " " },{ label: "Autumn by Outerbloom Christmas", category: "Collection", url: "/collections/autumn-by-outerbloom-christmas", images: " ", price: " " },{ label: "Autumn by Outerbloom Luar Jadetabek", category: "Collection", url: "/collections/autumn-by-outerbloom-luar-jadetabek", images: " ", price: " " },{ label: "Autumn by Outerbloom Ramadan", category: "Collection", url: "/collections/autumn-by-outerbloom-ramadan", images: " ", price: " " },{ label: "Autumn Pop", category: "Collection", url: "/collections/autumn-pop", images: " ", price: " " },{ label: "Bachelorette", category: "Collection", url: "/collections/bachelorette", images: " ", price: " " },{ label: "Bag Newborn Hampers", category: "Collection", url: "/collections/bag-newborn-hampers", images: " ", price: " " },{ label: "Balon", category: "Collection", url: "/collections/balon", images: " ", price: " " },{ label: "Beauty Package", category: "Collection", url: "/collections/beauty-package", images: " ", price: " " },{ label: "Best Deal", category: "Collection", url: "/collections/best-deal", images: " ", price: " " },{ label: "Best Seller", category: "Collection", url: "/collections/best-seller", images: " ", price: " " },{ label: "Best Valentine's Deals", category: "Collection", url: "/collections/bes-valentines-deals", images: " ", price: " " },{ label: "Best Value Newborn Hampers Collection", category: "Collection", url: "/collections/best-value-newborn-hampers-collection", images: " ", price: " " },{ label: "Black Tea", category: "Collection", url: "/collections/black-tea", images: " ", price: " " },{ label: "Blessing Hampers", category: "Collection", url: "/collections/blessing-hampers", images: " ", price: " " },{ label: "Bloom Box", category: "Collection", url: "/collections/bloom-box", images: " ", price: " " },{ label: "Bloomcard", category: "Collection", url: "/collections/bloomcard", images: " ", price: " " },{ label: "Boutonniere", category: "Collection", url: "/collections/boutonniere", images: " ", price: " " },{ label: "Bracelet", category: "Collection", url: "/collections/gelang", images: " ", price: " " },{ label: "Buket Bunga Bali", category: "Collection", url: "/collections/buket-bunga-bali", images: " ", price: " " },{ label: "Buket Bunga Bandung", category: "Collection", url: "/collections/buket-bunga-bandung", images: " ", price: " " },{ label: "Buket Bunga Batam", category: "Collection", url: "/collections/buket-bunga-batam", images: " ", price: " " },{ label: "Buket Bunga Demak", category: "Collection", url: "/collections/buket-bunga-demak", images: " ", price: " " },{ label: "Buket Bunga Fresh", category: "Collection", url: "/collections/buket-bunga", images: " ", price: " " },{ label: "Buket Bunga Jepara", category: "Collection", url: "/collections/buket-bunga-jepara", images: " ", price: " " },{ label: "Buket Bunga Medan", category: "Collection", url: "/collections/buket-bunga-medan", images: " ", price: " " },{ label: "Buket Bunga Nusantara", category: "Collection", url: "/collections/buket-bunga-nusantara", images: " ", price: " " },{ label: "Buket Bunga Semarang", category: "Collection", url: "/collections/buket-bunga-semarang", images: " ", price: " " },{ label: "Buket Bunga Sidoarjo", category: "Collection", url: "/collections/buket-bunga-sidoarjo", images: " ", price: " " },{ label: "Buket Bunga Surabaya", category: "Collection", url: "/collections/buket-bunga-surabaya", images: " ", price: " " },{ label: "Buket Bunga Tangerang", category: "Collection", url: "/collections/buket-bunga-tangerang", images: " ", price: " " },{ label: "Buket Bunga Uang", category: "Collection", url: "/collections/buket-bunga-uang", images: " ", price: " " },{ label: "Buket Bunga Valentine", category: "Collection", url: "/collections/buket-bunga-valentine", images: " ", price: " " },{ label: "Buket Bunga Yogyakarta", category: "Collection", url: "/collections/buket-bunga-jogja", images: " ", price: " " },{ label: "Bunga Anggrek Bali", category: "Collection", url: "/collections/bunga-anggrek-bali", images: " ", price: " " },{ label: "Bunga Anggrek Bandung", category: "Collection", url: "/collections/bunga-anggrek-bandung", images: " ", price: " " },{ label: "Bunga Anggrek Surabaya", category: "Collection", url: "/collections/bunga-anggrek-surabaya", images: " ", price: " " },{ label: "Bunga Anniversary", category: "Collection", url: "/collections/bunga-anniversary", images: " ", price: " " },{ label: "Bunga Artificial", category: "Collection", url: "/collections/bunga-artificial", images: " ", price: " " },{ label: "Bunga Buket", category: "Collection", url: "/collections/bunga-buket", images: " ", price: " " },{ label: "Bunga Carnations Bali", category: "Collection", url: "/collections/bunga-carnations-bali", images: " ", price: " " },{ label: "Bunga Carnations Bandung", category: "Collection", url: "/collections/bunga-carnations-bandung", images: " ", price: " " },{ label: "Bunga Carnations Surabaya", category: "Collection", url: "/collections/bunga-carnations-surabaya", images: " ", price: " " },{ label: "Bunga Daisy Bali", category: "Collection", url: "/collections/bunga-daisy-bali", images: " ", price: " " },{ label: "Bunga Daisy Bandung", category: "Collection", url: "/collections/bunga-daisy-bandung", images: " ", price: " " },{ label: "Bunga Daisy Surabaya", category: "Collection", url: "/collections/bunga-daisy-surabaya", images: " ", price: " " },{ label: "Bunga Gerbera Bali", category: "Collection", url: "/collections/bunga-gerbera-bali", images: " ", price: " " },{ label: "Bunga Gerbera Bandung", category: "Collection", url: "/collections/bunga-gerbera-bandung", images: " ", price: " " },{ label: "Bunga Gerbera Surabaya", category: "Collection", url: "/collections/bunga-gerbera-surabaya", images: " ", price: " " },{ label: "Bunga Imlek", category: "Collection", url: "/collections/rangkaian-bunga-tahun-baru-imlek", images: " ", price: " " },{ label: "Bunga Lebaran", category: "Collection", url: "/collections/rangkaian-bunga-lebaran", images: " ", price: " " },{ label: "Bunga Lily Bali", category: "Collection", url: "/collections/bunga-lily-bali", images: " ", price: " " },{ label: "Bunga Lily Bandung", category: "Collection", url: "/collections/bunga-lily-bandung", images: " ", price: " " },{ label: "Bunga Lily Surabaya", category: "Collection", url: "/collections/bunga-lily-surabaya", images: " ", price: " " },{ label: "Bunga Matahari Bali", category: "Collection", url: "/collections/bunga-matahari-bali", images: " ", price: " " },{ label: "Bunga Matahari Bandung", category: "Collection", url: "/collections/bunga-matahari-bandung", images: " ", price: " " },{ label: "Bunga Matahari Surabaya", category: "Collection", url: "/collections/bunga-matahari-surabaya", images: " ", price: " " },{ label: "Bunga Mawar Bali", category: "Collection", url: "/collections/bunga-mawar-bali", images: " ", price: " " },{ label: "Bunga Mawar Bandung", category: "Collection", url: "/collections/bunga-mawar-bandung", images: " ", price: " " },{ label: "Bunga Mawar Surabaya", category: "Collection", url: "/collections/bunga-mawar-surabaya", images: " ", price: " " },{ label: "Bunga Meja", category: "Collection", url: "/collections/bunga-meja", images: " ", price: " " },{ label: "Bunga Meja Bali", category: "Collection", url: "/collections/bunga-meja-bali", images: " ", price: " " },{ label: "Bunga Meja Bandung", category: "Collection", url: "/collections/bunga-meja-bandung", images: " ", price: " " },{ label: "Bunga Meja Batam", category: "Collection", url: "/collections/bunga-meja-batam", images: " ", price: " " },{ label: "Bunga Meja Jepara", category: "Collection", url: "/collections/bunga-meja-jepara", images: " ", price: " " },{ label: "Bunga Meja Medan", category: "Collection", url: "/collections/bunga-meja-medan", images: " ", price: " " },{ label: "Bunga Meja Semarang", category: "Collection", url: "/collections/bunga-meja-semarang", images: " ", price: " " },{ label: "Bunga Meja Sidoarjo", category: "Collection", url: "/collections/bunga-meja-sidoarjo", images: " ", price: " " },{ label: "Bunga Meja Surabaya", category: "Collection", url: "/collections/bunga-meja-surabaya", images: " ", price: " " },{ label: "Bunga Meja Tangerang", category: "Collection", url: "/collections/bunga-meja-tangerang", images: " ", price: " " },{ label: "Bunga Meja Yogyakarta", category: "Collection", url: "/collections/bunga-meja-jogja", images: " ", price: " " },{ label: "Bunga Modern Pastel Bali", category: "Collection", url: "/collections/bunga-modern-pastel-bali", images: " ", price: " " },{ label: "Bunga Modern Pastel Bandung", category: "Collection", url: "/collections/bunga-modern-pastel-bandung", images: " ", price: " " },{ label: "Bunga Modern Pastel Medan", category: "Collection", url: "/collections/bunga-modern-pastel-medan", images: " ", price: " " },{ label: "Bunga Modern Pastel Semarang", category: "Collection", url: "/collections/bunga-modern-pastel-semarang", images: " ", price: " " },{ label: "Bunga Modern Pastel Surabaya", category: "Collection", url: "/collections/bunga-modern-pastel-surabaya", images: " ", price: " " },{ label: "Bunga Modern Pastel Yogyakarta", category: "Collection", url: "/collections/bunga-modern-pastel-yogyakarta", images: " ", price: " " },{ label: "Bunga Natal", category: "Collection", url: "/collections/rangkaian-bunga-christmas", images: " ", price: " " },{ label: "Bunga Papan", category: "Collection", url: "/collections/bunga-papan", images: " ", price: " " },{ label: "Bunga Pernikahan", category: "Collection", url: "/collections/bunga-pernikahan", images: " ", price: " " },{ label: "Bunga Plastik", category: "Collection", url: "/collections/bunga-plastik", images: " ", price: " " },{ label: "Bunga Tulip", category: "Collection", url: "/collections/bunga-tulip", images: " ", price: " " },{ label: "Bunga Ulang Tahun", category: "Collection", url: "/collections/bunga-ulang-tahun", images: " ", price: " " },{ label: "Bunga Wisuda", category: "Collection", url: "/collections/karangan-bunga-wisuda", images: " ", price: " " },{ label: "Cake", category: "Collection", url: "/collections/kue", images: " ", price: " " },{ label: "Cake", category: "Collection", url: "/collections/cake", images: " ", price: " " },{ label: "Cake Sameday Delivery", category: "Collection", url: "/collections/cake-sameday-delivery", images: " ", price: " " },{ label: "Cake, Hampers & Gifts", category: "Collection", url: "/collections/cake-hampers", images: " ", price: " " },{ label: "Cancer âï¸ 22June - 22July", category: "Collection", url: "/collections/kado-untuk-zodiak-cancer", images: " ", price: " " },{ label: "Capricorn âï¸ 21Dec - 19Jan", category: "Collection", url: "/collections/kado-untuk-zodiak-capricorn", images: " ", price: " " },{ label: "Care Packages", category: "Collection", url: "/collections/toko-parcel-murah", images: " ", price: " " },{ label: "Care Packages (Keluarga, Sahabat, Karyawan)", category: "Collection", url: "/collections/sehat-bebas-corona", images: " ", price: " " },{ label: "Carnations", category: "Collection", url: "/collections/bunga-anyelir", images: " ", price: " " },{ label: "Celebration", category: "Collection", url: "/collections/celebration", images: " ", price: " " },{ label: "Chléa Paperie", category: "Collection", url: "/collections/chlea-paperie", images: " ", price: " " },{ label: "Chocodot", category: "Collection", url: "/collections/chocodot", images: " ", price: " " },{ label: "Christmas", category: "Collection", url: "/collections/christmas", images: " ", price: " " },{ label: "Classic Cake", category: "Collection", url: "/collections/classic-cake", images: " ", price: " " },{ label: "Classic CNY Hampers", category: "Collection", url: "/collections/classic-cny-hampers", images: " ", price: " " },{ label: "Classic CNY Hampers Luar Jabodetabek", category: "Collection", url: "/collections/classic-cny-hampers-luar-jabodetabek", images: " ", price: " " },{ label: "Classic Hampers", category: "Collection", url: "/collections/classic-hampers", images: " ", price: " " },{ label: "Classic Hampers Luar Jadetabek", category: "Collection", url: "/collections/classic-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Classic Style Flowers", category: "Collection", url: "/collections/classic-style-flowers", images: " ", price: " " },{ label: "Cokelat", category: "Collection", url: "/collections/permen-coklat", images: " ", price: " " },{ label: "Collection List", category: "Collection", url: "/collections/collection-list", images: " ", price: " " },{ label: "Condolences", category: "Collection", url: "/collections/axa-condolences", images: " ", price: " " },{ label: "Congratulations", category: "Collection", url: "/collections/rangkaian-bunga-ucapan-selamat", images: " ", price: " " },{ label: "Corporate Gifts", category: "Collection", url: "/collections/corporate-gifts", images: " ", price: " " },{ label: "Corporate Hampers", category: "Collection", url: "/collections/corporate-hampers", images: " ", price: " " },{ label: "Couple Gift", category: "Collection", url: "/collections/couple-gift", images: " ", price: " " },{ label: "Craft S
7787weetbox Newborn", category: "Collection", url: "/collections/craft-sweetbox-newborn", images: " ", price: " " },{ label: "Crystal Florarium", category: "Collection", url: "/collections/crystal-florarium", images: " ", price: " " },{ label: "Cuddlemate Doll", category: "Collection", url: "/collections/boneka-lucu", images: " ", price: " " },{ label: "Cufflinks", category: "Collection", url: "/collections/cufflinks", images: " ", price: " " },{ label: "Cupcakes", category: "Collection", url: "/collections/cupcakes", images: " ", price: " " },{ label: "Custom Alat Tulis", category: "Collection", url: "/collections/alat-tulis", images: " ", price: " " },{ label: "Custom Cake", category: "Collection", url: "/collections/custom-cake", images: " ", price: " " },{ label: "Custom Card Holder", category: "Collection", url: "/collections/custom-card-holder", images: " ", price: " " },{ label: "Custom Coaster", category: "Collection", url: "/collections/custom-coaster", images: " ", price: " " },{ label: "Custom Cutlery", category: "Collection", url: "/collections/custom-cutlery", images: " ", price: " " },{ label: "Custom E-Money", category: "Collection", url: "/collections/custom-e-money", images: " ", price: " " },{ label: "Custom Earpod", category: "Collection", url: "/collections/custom-earpod", images: " ", price: " " },{ label: "Custom Fan", category: "Collection", url: "/collections/custom-fan", images: " ", price: " " },{ label: "Custom Jewelry", category: "Collection", url: "/collections/custom-jewelry", images: " ", price: " " },{ label: "Custom Keychain", category: "Collection", url: "/collections/custom-keychain", images: " ", price: " " },{ label: "Custom Medallion", category: "Collection", url: "/collections/custom-medallion", images: " ", price: " " },{ label: "Custom Mirror", category: "Collection", url: "/collections/custom-mirror", images: " ", price: " " },{ label: "Custom Mug", category: "Collection", url: "/collections/custom-mug", images: " ", price: " " },{ label: "Custom Necklace", category: "Collection", url: "/collections/custom-necklace", images: " ", price: " " },{ label: "Custom Notebook", category: "Collection", url: "/collections/custom-notebook", images: " ", price: " " },{ label: "Custom Pen & Pencil", category: "Collection", url: "/collections/custom-pen-pencil", images: " ", price: " " },{ label: "Custom Photo Frame", category: "Collection", url: "/collections/photo-frame", images: " ", price: " " },{ label: "Custom Pillow", category: "Collection", url: "/collections/bantal-custom", images: " ", price: " " },{ label: "Custom Powerbank", category: "Collection", url: "/collections/custom-powerbank", images: " ", price: " " },{ label: "Custom Scarf", category: "Collection", url: "/collections/custom-scarf", images: " ", price: " " },{ label: "Custom Speaker", category: "Collection", url: "/collections/custom-speaker", images: " ", price: " " },{ label: "Custom T-Shirt", category: "Collection", url: "/collections/custom-t-shirt", images: " ", price: " " },{ label: "Custom Tote Bag", category: "Collection", url: "/collections/custom-tote-bag", images: " ", price: " " },{ label: "Custom Tumbler Minuman", category: "Collection", url: "/collections/custom-tumbler-minuman", images: " ", price: " " },{ label: "D'paris", category: "Collection", url: "/collections/dparis", images: " ", price: " " },{ label: "Daisy", category: "Collection", url: "/collections/bunga-aster", images: " ", price: " " },{ label: "Dekorasi", category: "Collection", url: "/collections/dekorasi", images: " ", price: " " },{ label: "Dekorasi Duka Cita", category: "Collection", url: "/collections/dekorasi-bunga-duka-cita", images: " ", price: " " },{ label: "Dekorasi Pemakaman", category: "Collection", url: "/collections/dekorasi-pemakaman", images: " ", price: " " },{ label: "Dekorasi Pernikahan", category: "Collection", url: "/collections/dekorasi-bunga-pernikahan", images: " ", price: " " },{ label: "Dekorasi Ulang Tahun", category: "Collection", url: "/collections/dekorasi-bunga-ulang-tahun", images: " ", price: " " },{ label: "Delivery", category: "Collection", url: "/collections/delivery", images: " ", price: " " },{ label: "Deluxe Newborn Hampers Collection", category: "Collection", url: "/collections/deluxe-newborn-hampers-collection", images: " ", price: " " },{ label: "Digital Gift", category: "Collection", url: "/collections/digital-gift", images: " ", price: " " },{ label: "Donasi", category: "Collection", url: "/collections/donasi", images: " ", price: " " },{ label: "E-Card", category: "Collection", url: "/collections/ecard", images: " ", price: " " },{ label: "E-Gift Card", category: "Collection", url: "/collections/e-gift-card", images: " ", price: " " },{ label: "Earrings", category: "Collection", url: "/collections/anting", images: " ", price: " " },{ label: "Edible Gift", category: "Collection", url: "/collections/edible-gift", images: " ", price: " " },{ label: "Enchanted Grande Love Pirouette", category: "Collection", url: "/collections/enchanted-grande-love-pirouette", images: " ", price: " " },{ label: "Enchanted Love Pirouette", category: "Collection", url: "/collections/enchanted-love-pirouette", images: " ", price: " " },{ label: "Engagement", category: "Collection", url: "/collections/rangkaian-bunga-lamaran", images: " ", price: " " },{ label: "Expression", category: "Collection", url: "/collections/expression", images: " ", price: " " }
7787,{ label: "Father's Day Special", category: "Collection", url: "/collections/kado-untuk-ayah", images: " ", price: " " },{ label: "Ferrari", category: "Collection", url: "/collections/ferrari", images: " ", price: " " },{ label: "Ferrero Rocher", category: "Collection", url: "/collections/ferrero-rocher", images: " ", price: " " },{ label: "Festival Belanja Online", category: "Collection", url: "/collections/fbo-2018", images: " ", price: " " },{ label: "Floatbox", category: "Collection", url: "/collections/floatbox", images: " ", price: " " },{ label: "Flower", category: "Collection", url: "/collections/flower", images: " ", price: " " },{ label: "Flower Best Deals", category: "Collection", url: "/collections/flower-best-deals", images: " ", price: " " },{ label: "Flowers", category: "Collection", url: "/collections/toko-bunga", images: " ", price: " " },{ label: "Flowers For Him", category: "Collection", url: "/collections/bunga-untuk-pria", images: " ", price: " " },{ label: "Flowers Style", category: "Collection", url: "/collections/style", images: " ", price: " " },{ label: "Flowers Type", category: "Collection", url: "/collections/type", images: " ", price: " " },{ label: "For Her", category: "Collection", url: "/collections/kado-untuk-wanita", images: " ", price: " " },{ label: "For Him", category: "Collection", url: "/collections/kado-untuk-pria", images: " ", price: " " },{ label: "Forever Flower", category: "Collection", url: "/collections/forever-flower", images: " ", price: " " },{ label: "Forever Flower Holo Series", category: "Collection", url: "/collections/forever-flower-holo-series", images: " ", price: " " },{ label: "Forever Flower x NestBloom", category: "Collection", url: "/collections/forever-flower-x-nestbloom", images: " ", price: " " },{ label: "Fortune Hampers", category: "Collection", url: "/collections/fortune-hampers", images: " ", price: " " },{ label: "Frank & Co", category: "Collection", url: "/collections/franknco", images: " ", price: " " },{ label: "Fresh Flowers", category: "Collection", url: "/collections/fresh-flower", images: " ", price: " " },{ label: "Gantungan Kunci", category: "Collection", url: "/collections/gantungan-kunci", images: " ", price: " " },{ label: "Gelato", category: "Collection", url: "/collections/gelato", images: " ", price: " " },{ label: "Gelato Pie", category: "Collection", url: "/collections/gelato-pie", images: " ", price: " " },{ label: "Gemini âï¸ 21May - 21June", category: "Collection", url: "/collections/kado-untuk-zodiak-gemini", images: " ", price: " " },{ label: "Gerbera", category: "Collection", url: "/collections/gerbera", images: " ", price: " " },{ label: "Get Well Soon", category: "Collection", url: "/collections/rangkaian-bunga-gws", images: " ", price: " " },{ label: "Giant Flower Bali", category: "Collection", url: "/collections/giant-flower-bali", images: " ", price: " " },{ label: "Giant Flower Bandung", category: "Collection", url: "/collections/giant-flower-bandung", images: " ", price: " " },{ label: "Giant Flower Bouquet", category: "Collection", url: "/collections/giant-flower", images: " ", price: " " },{ label: "Gift", category: "Collection", url: "/collections/souvenir-kado-hadiah", images: " ", price: " " },{ label: "Gift by Recipient", category: "Collection", url: "/collections/gift-by-recipient", images: " ", price: " " },{ label: "Gift for Your Girlfriend", category: "Collection", url: "/collections/kado-untuk-pacar-wanita", images: " ", price: " " },{ label: "Gifts", category: "Collection", url: "/collections/gifts", images: " ", price: " " },{ label: "Glassbox Hampers", category: "Collection", url: "/collections/glassbox-hampers", images: " ", price: " " },{ label: "Glassware Hampers", category: "Collection", url: "/collections/parcel-pecah-belah", images: " ", price: " " },{ label: "Gold Jewelry", category: "Collection", url: "/collections/perhiasan-emas", images: " ", price: " " },{ label: "Grand Opening", category: "Collection", url: "/collections/grand-opening", images: " ", price: " " },{ label: "Granola", category: "Collection", url: "/collections/granola", images: " ", price: " " },{ label: "Green Tea", category: "Collection", url: "/collections/green-tea", images: " ", price: " " },{ label: "Greeting Card All", category: "Collection", url: "/collections/greeting-card-all", images: " ", price: " " },{ label: "Greeting Card Anniversary", category: "Collection", url: "/collections/greeting-card-anniversary", images: " ", price: " " },{ label: "Greeting Card Birthday", category: "Collection", url: "/collections/greeting-card-birthday", images: " ", price: " " },{ label: "Greeting Card Eid", category: "Collection", url: "/collections/greeting-card-eid", images: " ", price: " " },{ label: "Greeting Card Graduation", category: "Collection", url: "/collections/greeting-card-graduation", images: " ", price: " " },{ label: "Greeting Card Mother's Day", category: "Collection", url: "/collections/greeting-card-mothers-day", images: " ", price: " " },{ label: "Greeting Card Newborn", category: "Collection", url: "/collections/greeting-card-newborn", images: " ", price: " " },{ label: "Greeting Card Others", category: "Collection", url: "/collections/greeting-card-others", images: " ", price: " " },{ label: "Greeting Card Valentine", category: "Collection", url: "/collections/greeting-card-valentine", images: " ", price: " " },{ label: "Greeting Card Wedding", category: "Collection", url: "/collections/greeting-card-wedding", images: " ", price: " " },{ label: "Grooming", category: "Collection", url: "/collections/grooming", images: " ", price: " " },{ label: "Hadiah Tahun Baru Imlek", category: "Collection", url: "/collections/kado-imlek", images: " ", price: " " },{ label: "Hadiah untuk Bayi", category: "Collection", url: "/collections/kado-untuk-bayi", images: " ", price: " " },{ label: "Hadiah untuk Pacar", category: "Collection", url: "/collections/kado-untuk-pacar", images: " ", price: " " },{ label: "Hadiah untuk Pernikahan", category: "Collection", url: "/collections/kado-untuk-pernikahan", images: " ", price: " " },{ label: "Hadiah untuk Sahabat", category: "Collection", url: "/collections/kado-untuk-sahabat", images: " ", price: " " },{ label: "Hampers", category: "Collection", url: "/collections/hampers", images: " ", price: " " },{ label: "Hampers Baby Boy", category: "Collection", url: "/collections/hampers-baby-boy", images: " ", price: " " },{ label: "Hampers Baby Girl", category: "Collection", url: "/collections/hampers-baby-girl", images: " ", price: " " },{ label: "Hampers Baby Unisex", category: "Collection", url: "/collections/hampers-baby-unisex", images: " ", price: " " },{ label: "Hampers Delivery Indonesia", category: "Collection", url: "/collections/parcel-indonesia", images: " ", price: " " },{ label: "Hampers Lebaran 2025", category: "Collection", url: "/collections/parcel-lebaran", images: " ", price: " " },{ label: "Hampers Lebaran Bali", category: "Collection", url: "/collections/hampers-lebaran-bali", images: " ", price: " " },{ label: "Hampers Lebaran Bandung", category: "Collection", url: "/collections/hampers-lebaran-bandung", images: " ", price: " " },{ label: "Hampers Lebaran Jakarta", category: "Collection", url: "/collections/hampers-lebaran-jakarta", images: " ", price: " " },{ label: "Hampers Lebaran Semarang", category: "Collection", url: "/collections/hampers-lebaran-semarang", images: " ", price: " " },{ label: "Hampers Lebaran Surabaya", category: "Collection", url: "/collections/hampers-lebaran-surabaya", images: " ", price: " " },{ label: "Hampers Lebaran Yogyakarta", category: "Collection", url: "/collections/hampers-lebaran-yogyakarta", images: " ", price: " " },{ label: "Hand Sanitizer", category: "Collection", url: "/collections/hand-sanitizer", images: " ", price: " " },{ label: "Happy Birthday", category: "Collection", url: "/collections/kado-ulang-tahun", images: " ", price: " " },{ label: "Harbolnas", category: "Collection", url: "/collections/harbolnas-2018", images: " ", price: " " },{ label: "Harbolnas Produk Lokal", category: "Collection", url: "/collections/produk-lokal", images: " ", price: " " },{ label: "Hari Belanja Online Nasional", category: "Collection", url: "/collections/harbolnas", images: " ", price: " " },{ label: "Hari Guru", category: "Collection", url: "/collections/hari-guru", images: " ", price: " " },{ label: "Healthy Creations", category: "Collection", url: "/collections/healthy-creations", images: " ", price: " " },{ label: "Healthy Hampers", category: "Collection", url: "/collections/healthy-hampers", images: " ", price: " " },{ label: "Heritage Box", category: "Collection", url: "/collections/heritage-boxes", images: " ", price: " " },{ label: "Heritage Chinese New Year Hampers", category: "Collection", url: "/collections/heritage-chinese-new-year-hampers", images: " ", price: " " },{ label: "Heritage Christmas Hampers", category: "Collection", url: "/collections/heritage-christmas-hampers", images: " ", price: " " },{ label: "Heritage Hampers", category: "Collection", url: "/collections/heritage-hampers", images: " ", price: " " },{ label: "Heritage Ramadan Hampers", category: "Collection", url: "/collections/heritage-ramadan-hampers", images: " ", price: " " },{ label: "Hexa Hampers", category: "Collection", url: "/collections/hexa-hampers", images: " ", price: " " },{ label: "Hexa Hampers Luar Jadetabek", category: "Collection", url: "/collections/hexa-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Hexa Newborn", category: "Collection", url: "/collections/hexa-newborn", images: " ", price: " " },{ label: "Holo Bag", category: "Collection", url: "/collections/holo-bag", images: " ", price: " " },{ label: "Holo Series", category: "Collection", url: "/collections/holo-series", images: " ", price: " " },{ label: "Home Decoration & Photo Frame", category: "Collection", url: "/collections/home-decoration", images: " ", price: " " }
7787,{ label: "Hospitalization", category: "Collection", url: "/collections/axa-hospitalization", images: " ", price: " " },{ label: "House Hampers", category: "Collection", url: "/collections/house-hampers", images: " ", price: " " },{ label: "I'm Sorry", category: "Collection", url: "/collections/rangkaian-bunga-sorry", images: " ", price: " " },{ label: "Ice Cream Cake", category: "Collection", url: "/collections/ice-cream-cake", images: " ", price: " " },{ label: "Idul Fitri", category: "Collection", url: "/collections/rangkaian-bunga-idul-fitri", images: " ", price: " " },{ label: "Jam Tangan", category: "Collection", url: "/collections/jam-tangan", images: " ", price: " " },{ label: "Jam Tangan Couple", category: "Collection", url: "/collections/jam-tangan-couple", images: " ", price: " " },{ label: "Jam Tangan Pria", category: "Collection", url: "/collections/jam-tangan-pria", images: " ", price: " " },{ label: "Jam Tangan Wanita", category: "Collection", url: "/collections/jam-tangan-wanita", images: " ", price: " " },{ label: "Jasa Packing Parcel", category: "Collection", url: "/collections/jasa-packing-parcel", images: " ", price: " " },{ label: "Jewelry", category: "Collection", url: "/collections/jewelry", images: " ", price: " " },{ label: "Jolly Hampers", category: "Collection", url: "/collections/jolly-hampers", images: " ", price: " " },{ label: "Jual Custom Cake & Hampers Termurah & Terlengkap | Outerbloom Florist & Gift", category: "Collection", url: "/collections/custom-cake-hampers", images: " ", price: " " },{ label: "Just Because", category: "Collection", url: "/collections/just-because", images: " ", price: " " },{ label: "Kado Makanan", category: "Collection", url: "/collections/kado-makanan", images: " ", price: " " },{ label: "Kado Minuman", category: "Collection", url: "/collections/kado-minuman", images: " ", price: " " },{ label: "Kado Natal", category: "Collection", url: "/collections/kado-natal", images: " ", price: " " },{ label: "Kado Unik", category: "Collection", url: "/collections/kado-unik", images: " ", price: " " },{ label: "Kado Valentine Nusantara", category: "Collection", url: "/collections/kado-valentine-nusantara", images: " ", price: " " },{ label: "Kado Valentine untuk Pria", category: "Collection", url: "/collections/kado-valentine-untuk-pria", images: " ", price: " " },{ label: "Kado Wisuda", category: "Collection", url: "/collections/kado-wisuda", images: " ", price: " " },{ label: "Kado Zodiak", category: "Collection", url: "/collections/kado-untuk-zodiak", images: " ", price: " " },{ label: "Karangan Bunga Aceh", category: "Collection", url: "/collections/karangan-bunga-aceh", images: " ", price: " " },{ label: "Karangan Bunga Ambon", category: "Collection", url: "/collections/karangan-bunga-ambon", images: " ", price: " " },{ label: "Karangan Bunga Atambua", category: "Collection", url: "/collections/karangan-bunga-atambua", images: " ", price: " " },{ label: "Karangan Bunga Bali", category: "Collection", url: "/collections/karangan-bunga-bali", images: " ", price: " " },{ label: "Karangan Bunga Balikpapan", category: "Collection", url: "/collections/karangan-bunga-balikpapan", images: " ", price: " " },{ label: "Karangan Bunga Bandung", category: "Collection", url: "/collections/karangan-bunga-bandung", images: " ", price: " " },{ label: "Karangan Bunga Bandung Barat", category: "Collection", url: "/collections/karangan-bunga-bandung-barat", images: " ", price: " " },{ label: "Karangan Bunga Bangka", category: "Collection", url: "/collections/karangan-bunga-bangka", images: " ", price: " " },{ label: "Karangan Bunga Banjarmasin", category: "Collection", url: "/collections/karangan-bunga-banjarmasin", images: " ", price: " " },{ label: "Karangan Bunga Banten", category: "Collection", url: "/collections/karangan-bunga-banten", images: " ", price: " " },{ label: "Karangan Bunga Banyumas", category: "Collection", url: "/collections/karangan-bunga-banyumas", images: " ", price: " " },{ label: "Karangan Bunga Banyuwangi", category: "Collection", url: "/collections/karangan-bunga-banyuwangi", images: " ", price: " " },{ label: "Karangan Bunga Batam", category: "Collection", url: "/collections/karangan-bunga-batam", images: " ", price: " " },{ label: "Karangan Bunga Baubau", category: "Collection", url: "/collections/karangan-bunga-baubau", images: " ", price: " " },{ label: "Karangan Bunga Bengkalis", category: "Collection", url: "/collections/karangan-bunga-bengkalis", images: " ", price: " " },{ label: "Karangan Bunga Bengkayang", category: "Collection", url: "/collections/karangan-bunga-bengkayang", images: " ", price: " " },{ label: "Karangan Bunga Bengkulu", category: "Collection", url: "/collections/karangan-bunga-bengkulu", images: " ", price: " " },{ label: "Karangan Bunga Blora", category: "Collection", url: "/collections/karangan-bunga-blora", images: " ", price: " " },{ label: "Karangan Bunga Bogor", category: "Collection", url: "/collections/karangan-bunga-bogor", images: " ", price: " " },{ label: "Karangan Bunga Bojonegoro", category: "Collection", url: "/collections/karangan-bunga-bojonegoro", images: " ", price: " " },{ label: "Karangan Bunga Boyolali", category: "Collection", url: "/collections/karangan-bunga-boyolali", images: " ", price: " " },{ label: "Karangan Bunga Brebes", category: "Collection", url: "/collections/karangan-bunga-brebes", images: " ", price: " " },{ label: "Karangan Bunga Bukittinggi", category: "Collection", url: "/collections/karangan-bunga-bukittinggi", images: " ", price: " " },{ label: "Karangan Bunga Ciamis", category: "Collection", url: "/collections/karangan-bunga-ciamis", images: " ", price: " " }
7787,{ label: "Karangan Bunga Cianjur", category: "Collection", url: "/collections/karangan-bunga-cianjur", images: " ", price: " " },{ label: "Karangan Bunga Cikarang", category: "Collection", url: "/collections/karangan-bunga-cikarang", images: " ", price: " " },{ label: "Karangan Bunga Cikupa", category: "Collection", url: "/collections/karangan-bunga-cikupa", images: " ", price: " " },{ label: "Karangan Bunga Cilacap", category: "Collection", url: "/collections/karangan-bunga-cilacap", images: " ", price: " " },{ label: "Karangan Bunga Cileunyi", category: "Collection", url: "/collections/karangan-bunga-cileunyi", images: " ", price: " " },{ label: "Karangan Bunga Cimahi", category: "Collection", url: "/collections/karangan-bunga-cimahi", images: " ", price: " " },{ label: "Karangan Bunga Cirebon", category: "Collection", url: "/collections/karangan-bunga-cirebon", images: " ", price: " " },{ label: "Karangan Bunga Ciwidey", category: "Collection", url: "/collections/karangan-bunga-ciwidey", images: " ", price: " " },{ label: "Karangan Bunga Danau Toba", category: "Collection", url: "/collections/karangan-bunga-danau-toba", images: " ", price: " " },{ label: "Karangan Bunga Demak", category: "Collection", url: "/collections/karangan-bunga-demak", images: " ", price: " " },{ label: "Karangan Bunga Denpasar", category: "Collection", url: "/collections/karangan-bunga-denpasar", images: " ", price: " " },{ label: "Karangan Bunga Depok", category: "Collection", url: "/collections/karangan-bunga-depok", images: " ", price: " " },{ label: "Karangan Bunga Duka Cita", category: "Collection", url: "/collections/karangan-bunga-duka-cita", images: " ", price: " " },{ label: "Karangan Bunga Garut", category: "Collection", url: "/collections/karangan-bunga-garut", images: " ", price: " " },{ label: "Karangan Bunga Gianyar", category: "Collection", url: "/collections/karangan-bunga-gianyar", images: " ", price: " " },{ label: "Karangan Bunga Gorontalo", category: "Collection", url: "/collections/karangan-bunga-gorontalo", images: " ", price: " " },{ label: "Karangan Bunga Gowa", category: "Collection", url: "/collections/karangan-bunga-gowa", images: " ", price: " " },{ label: "Karangan Bunga Gresik", category: "Collection", url: "/collections/karangan-bunga-gresik", images: " ", price: " " },{ label: "Karangan Bunga Grobogan", category: "Collection", url: "/collections/karangan-bunga-grobogan", images: " ", price: " " },{ label: "Karangan Bunga Gunung Kidul", category: "Collection", url: "/collections/karangan-bunga-gunungkidul", images: " ", price: " " },{ label: "Karangan Bunga Indramayu", category: "Collection", url: "/collections/karangan-bunga-indramayu", images: " ", price: " " },{ label: "Karangan Bunga Jakarta", category: "Collection", url: "/collections/karangan-bunga-jakarta", images: " ", price: " " },{ label: "Karangan Bunga Jambi", category: "Collection", url: "/collections/karangan-bunga-jambi", images: " ", price: " " },{ label: "Karangan Bunga Jayapura", category: "Collection", url: "/collections/karangan-bunga-jayapura", images: " ", price: " " },{ label: "Karangan Bunga Jember", category: "Collection", url: "/collections/karangan-bunga-jember", images: " ", price: " " },{ label: "Karangan Bunga Jembrana", category: "Collection", url: "/collections/karangan-bunga-jembrana", images: " ", price: " " },{ label: "Karangan Bunga Jepara", category: "Collection", url: "/collections/karangan-bunga-jepara", images: " ", price: " " },{ label: "Karangan Bunga Jombang", category: "Collection", url: "/collections/karangan-bunga-jombang", images: " ", price: " " },{ label: "Karangan Bunga Kampung Baru", category: "Collection", url: "/collections/karangan-bunga-kampung-baru", images: " ", price: " " },{ label: "Karangan Bunga Kapuas", category: "Collection", url: "/collections/karangan-bunga-kapuas", images: " ", price: " " },{ label: "Karangan Bunga Karanganyar", category: "Collection", url: "/collections/karangan-bunga-karanganyar", images: " ", price: " " },{ label: "Karangan Bunga Karangasem", category: "Collection", url: "/collections/karangan-bunga-karangasem", images: " ", price: " " },{ label: "Karangan Bunga Karawang", category: "Collection", url: "/collections/karangan-bunga-karawang", images: " ", price: " " },{ label: "Karangan Bunga Kartosuro", category: "Collection", url: "/collections/karangan-bunga-kartosuro", images: " ", price: " " },{ label: "Karangan Bunga Kebumen", category: "Collection", url: "/collections/karangan-bunga-kebumen", images: " ", price: " " },{ label: "Karangan Bunga Kediri", category: "Collection", url: "/collections/karangan-bunga-kediri", images: " ", price: " " },{ label: "Karangan Bunga Kendal", category: "Collection", url: "/collections/karangan-bunga-ken
7787dal", images: " ", price: " " },{ label: "Karangan Bunga Kendari", category: "Collection", url: "/collections/karangan-bunga-kendari", images: " ", price: " " },{ label: "Karangan Bunga Ketapang", category: "Collection", url: "/collections/karangan-bunga-ketapang", images: " ", price: " " },{ label: "Karangan Bunga Klaten", category: "Collection", url: "/collections/karangan-bunga-klaten", images: " ", price: " " },{ label: "Karangan Bunga Kota Batu", category: "Collection", url: "/collections/karangan-bunga-kota-batu", images: " ", price: " " },{ label: "Karangan Bunga Kudus", category: "Collection", url: "/collections/karangan-bunga-kudus", images: " ", price: " " },{ label: "Karangan Bunga Kupang", category: "Collection", url: "/collections/karangan-bunga-kupang", images: " ", price: " " },{ label: "Karangan Bunga Lamongan", category: "Collection", url: "/collections/karangan-bunga-lamongan", images: " ", price: " " },{ label: "Karangan Bunga Lampung", category: "Collection", url: "/collections/karangan-bunga-lampung", images: " ", price: " " },{ label: "Karangan Bunga Langkat", category: "Collection", url: "/collections/karangan-bunga-langkat", images: " ", price: " " },{ label: "Karangan Bunga Lembang", category: "Collection", url: "/collections/karangan-bunga-lembang", images: " ", price: " " },{ label: "Karangan Bunga Lombok", category: "Collection", url: "/collections/karangan-bunga-lombok", images: " ", price: " " },{ label: "Karangan Bunga Lubuk Pakam", category: "Collection", url: "/collections/karangan-bunga-lubuk-pakam", images: " ", price: " " },{ label: "Karangan Bunga Lumajang", category: "Collection", url: "/collections/karangan-bunga-lumajang", images: " ", price: " " },{ label: "Karangan Bunga Madiun", category: "Collection", url: "/collections/karangan-bunga-madiun", images: " ", price: " " },{ label: "Karangan Bunga Magelang", category: "Collection", url: "/collections/karangan-bunga-magelang", images: " ", price: " " },{ label: "Karangan Bunga Majalengka", category: "Collection", url: "/collections/karangan-bunga-majalengka", images: " ", price: " " },{ label: "Karangan Bunga Makassar", category: "Collection", url: "/collections/karangan-bunga-makassar", images: " ", price: " " },{ label: "Karangan Bunga Malang", category: "Collection", url: "/collections/karangan-bunga-malang", images: " ", price: " " },{ label: "Karangan Bunga Mamuju", category: "Collection", url: "/collections/karangan-bunga-mamuju", images: " ", price: " " },{ label: "Karangan Bunga Manado", category: "Collection", url: "/collections/karangan-bunga-manado", images: " ", price: " " },{ label: "Karangan Bunga Manokwari", category: "Collection", url: "/collections/karangan-bunga-manokwari", images: " ", price: " " },{ label: "Karangan Bunga Maros", category: "Collection", url: "/collections/karangan-bunga-maros", images: " ", price: " " },{ label: "Karangan Bunga Mataram", category: "Collection", url: "/collections/karangan-bunga-mataram", images: " ", price: " " },{ label: "Karangan Bunga Mojokerto", category: "Collection", url: "/collections/karangan-bunga-mojokerto", images: " ", price: " " },{ label: "Karangan Bunga Nganjuk", category: "Collection", url: "/collections/karangan-bunga-nganjuk", images: " ", price: " " },{ label: "Karangan Bunga Nias", category: "Collection", url: "/collections/karangan-bunga-nias", images: " ", price: " " },{ label: "Karangan Bunga Padang", category: "Collection", url: "/collections/karangan-bunga-padang", images: " ", price: " " },{ label: "Karangan Bunga Palangkaraya", category: "Collection", url: "/collections/karangan-bunga-palangkaraya", images: " ", price: " " },{ label: "Karangan Bunga Palu", category: "Collection", url: "/collections/karangan-bunga-palu", images: " ", price: " " },{ label: "Karangan Bunga Pangkal Pinang", category: "Collection", url: "/collections/karangan-bunga-pangkal-pinang", images: " ", price: " " },{ label: "Karangan Bunga Papan", category: "Collection", url: "/collections/karangan-bunga", images: " ", price: " " },{ label: "Karangan Bunga Papan Bandar Lampung", category: "Collection", url: "/collections/karangan-bunga-bandar-lampung", images: " ", price: " " },{ label: "Karangan Bunga Papan Bekasi", category: "Collection", url: "/collections/karangan-bunga-bekasi", images: " ", price: " " },{ label: "Karangan Bunga Papan Binjai", category: "Collection", url: "/collections/karangan-bunga-binjai", images: " ", price: " " },{ label: "Karangan Bunga Papan Blitar", category: "Collection", url: "/collections/karangan-bunga-blitar", images: " ", price: " " },{ label: "Karangan Bunga Papan Buleleng", category: "Collection", url: "/collections/karangan-bunga-buleleng", images: " ", price: " " },{ label: "Karangan Bunga Papan Cibubur", category: "Collection", url: "/collections/karangan-bunga-cibubur", images: " ", price: " " },{ label: "Karangan Bunga Papan Deli Serdang", category: "Collection", url: "/collections/karangan-bunga-deli-serdang", images: " ", price: " " },{ label: "Karangan Bunga Papan Jakarta Timur", category: "Collection", url: "/collections/karangan-bunga-jakarta-timur", images: " ", price: " " },{ label: "Karangan Bunga Papan Karo", category: "Collection", url: "/collections/karangan-bunga-karo", images: " ", price: " " },{ label: "Karangan Bunga Papan Medan", category: "Collection", url: "/collections/karangan-bunga-medan", images: " ", price: " " },{ label: "Karangan Bunga Papan Ngawi", category: "Collection", url: "/collections/karangan-bunga-ngawi", images: " ", price: " " },{ label: "Karangan Bunga Papan Palembang", category: "Collection", url: "/collections/karangan-bunga-palembang", images: " ", price: " " },{ label: "Karangan Bunga Papan Pemalang", category: "Collection", url: "/collections/karangan-bunga-pemalang", images: " ", price: " " },{ label: "Karangan Bunga Papan Rembang", category: "Collection", url: "/collections/karangan-bunga-rembang", images: " ", price: " " },{ label: "Karangan Bunga Papan Sragen", category: "Collection", url: "/collections/karangan-bunga-sragen", images: " ", price: " " },{ label: "Karangan Bunga Papan Tegal", category: "Collection", url: "/collections/karangan-bunga-tegal", images: " ", price: " " },{ label: "Karangan Bunga Papan Temanggung", category: "Collection", url: "/collections/karangan-bunga-temanggung", images: " ", price: " " },{ label: "Karangan Bunga Parepare", category: "Collection", url: "/collections/karangan-bunga-parepare", images: " ", price: " " },{ label: "Karangan Bunga Pasuruan", category: "Collection", url: "/collections/karangan-bunga-pasuruan", images: " ", price: " " },{ label: "Karangan Bunga Pati", category: "Collection", url: "/collections/karangan-bunga-pati", images: " ", price: " " },{ label: "Karangan Bunga Pekalongan", category: "Collection", url: "/collections/karangan-bunga-pekalongan", images: " ", price: " " },{ label: "Karangan Bunga Pekanbaru", category: "Collection", url: "/collections/karangan-bunga-pekanbaru", images: " ", price: " " },{ label: "Karangan Bunga Pematangsiantar", category: "Collection", url: "/collections/karangan-bunga-pematangsiantar", images: " ", price: " " },{ label: "Karangan Bunga Ponorogo", category: "Collection", url: "/collections/karangan-bunga-ponorogo", images: " ", price: " " },{ label: "Karangan Bunga Pontianak", category: "Collection", url: "/collections/karangan-bunga-pontianak", images: " ", price: " " },{ label: "Karangan Bunga Probolinggo", category: "Collection", url: "/collections/karangan-bunga-probolinggo", images: " ", price: " " },{ label: "Karangan Bunga Purbalingga", category: "Collection", url: "/collections/karangan-bunga-purbalingga", images: " ", price: " " },{ label: "Karangan Bunga Purwokerto", category: "Collection", url: "/collections/karangan-bunga-purwokerto", images: " ", price: " " },{ label: "Karangan Bunga Purworejo", category: "Collection", url: "/collections/karangan-bunga-purworejo", images: " ", price: " " },{ label: "Karangan Bunga Riau", category: "Collection", url: "/collections/karangan-bunga-riau", images: " ", price: " " },{ label: "Karangan Bunga Salatiga", category: "Collection", url: "/collections/karangan-bunga-salatiga", images: " ", price: " " },{ label: "Karangan Bunga Samarinda", category: "Collection", url: "/collections/karangan-bunga-samarinda", images: " ", price: " " },{ label: "Karangan Bunga Semarang", category: "Collection", url: "/collections/karangan-bunga-semarang", images: " ", price: " " },{ label: "Karangan Bunga Serang", category: "Collection", url: "/collections/karangan-bunga-serang", images: " ", price: " " },{ label: "Karangan Bunga Sibolga", category: "Collection", url: "/collections/karangan-bunga-sibolga", images: " ", price: " " },{ label: "Karangan Bunga Sidoarjo", category: "Collection", url: "/collections/karangan-bunga-sidoarjo", images: " ", price: " " },{ label: "Karangan Bunga Singkawang", category: "Collection", url: "/collections/karangan-bunga-singkawang", images: " ", price: " " },{ label: "Karangan Bunga Solo", category: "Collection", url: "/collections/karangan-bunga-solo", images: " ", price: " " },{ label: "Karangan Bunga Sorong", category: "Collection", url: "/collections/karangan-bunga-sorong", images: " ", price: " " },{ label: "Karangan Bunga Subang", category: "Collection", url: "/collections/karangan-bunga-subang", images: " ", price: " " },{ label: "Karangan Bunga Sukabumi", category: "Collection", url: "/collections/karangan-bunga-sukabumi", images: " ", price: " " },{ label: "Karangan Bunga Sumbawa", category: "Collection", url: "/collections/karangan-bunga-sumbawa", images: " ", price: " " },{ label: "Karangan Bunga Surabaya", category: "Collection", url: "/collections/karangan-bunga-surabaya", images: " ", price: " " },{ label: "Karangan Bunga Surakarta", category: "Collection", url: "/collections/karangan-bunga-surakarta", images: " ", price: " " },{ label: "Karangan Bunga Tangerang", category: "Collection", url: "/collections/karangan-bunga-tangerang", images: " ", price: " " },{ label: "Karangan Bunga Tasikmalaya", category: "Collection", url: "/collections/karangan-bunga-tasikmalaya", images: " ", price: " " },{ label: "Karangan Bunga Ternate", category: "Collection", url: "/collections/karangan-bunga-ternate", images: " ", price: " " },{ label: "Karangan Bunga Tolitoli", category: "Collection", url: "/collections/karangan-bunga-tolitoli", images: " ", price: " " },{ label: "Karangan Bunga Toraja", category: "Collection", url: "/collections/karangan-bunga-toraja", images: " ", price: " " },{ label: "Karangan Bunga Tuban", category: "Collection", url: "/collections/karangan-bunga-tuban", images: " ", price: " " },{ label: "Karangan Bunga Tulungagung", category: "Collection", url: "/collections/karangan-bunga-tulungagung", images: " ", price: " " },{ label: "Karangan Bunga Wakatobi", category: "Collection", url: "/collections/karangan-bunga-wakatobi", images: " ", price: " " },{ label: "Karangan Bunga Wiyung", category: "Collection", url: "/collections/karangan-bunga-wiyung", images: " ", price: " " },{ label: "Karangan Bunga Wonogiri", category: "Collection", url: "/collections/karangan-bunga-wonogiri", images: " ", price: " " },{ label: "Karangan Bunga Wonokromo", category: "Collection", url: "/collections/karangan-bunga-wonokromo", images: " ", price: " " },{ label: "Karangan Bunga Wonosobo", category: "Collection", url: "/collections/karangan-bunga-wonosobo", images: " ", price: " " },{ label: "Karangan Bunga Yogyakarta", category: "Collection", url: "/collections/karangan-bunga-yogyakarta", images: " ", price: " " },{ label: "Kartu Ucapan", category: "Collection", url: "/collections/kartu-ucapan", images: " ", price: " " },{ label: "Kue Anniversary", category: "Collection", url: "/collections/kue-anniversary", images: " ", price: " " },{ label: "Kue Bachelorette", category: "Collection", url: "/collections/kue-bachelorette", images: " ", price: " " },{ label: "Kue Bandung", category: "Collection", url: "/collections/kue-bandung", images: " ", price: " " },{ label: "Kue Bulan", category: "Collection", url: "/collections/kue-bulan", images: " ", price: " " },{ label: "Kue Imlek", category: "Collection", url: "/collections/kue-imlek", images: " ", price: " " },{ label: "Kue Kering", category: "Collection", url: "/collections/kue-kering", images: " ", price: " " },{ label: "Kue Natal", category: "Collection", url: "/collections/kue-natal", images: " ", price: " " },{ label: "Kue Pernikahan", category: "Collection", url: "/collections/kue-pernikahan", images: " ", price: " " },{ label: "Kue Tart", category: "Collection", url: "/collections/kue-tart", images: " ", price: " " },{ label: "Kue Tart Oma Elly", category: "Collection", url: "/collections/kue-tart-oma-elly", images: " ", price: " " },{ label: "Kue Ulang Tahun", category: "Collection", url: "/collections/kue-ulang-tahun", images: " ", price: " " },{ label: "Lalique", category: "Collection", url: "/collections/lalique", images: " ", price: " " },{ label: "Le Sucre Du Patisserie", category: "Collection", url: "/collections/le-sucre-du-patisserie", images: " ", price: " " },{ label: "Leo âï¸ 23July - 22Augst", category: "Collection", url: "/collections/kado-untuk-zodiak-leo", images: " ", price: " " },{ label: "Letter Box", category: "Collection", url: "/collections/letter-box", images: " ", price: " " },{ label: "Libra âï¸ 23Sept - 23Oct", category: "Collection", url: "/collections/kado-untuk-zodiak-libra", images: " ", price: " " },{ label: "Lilin Aromaterapi", category: "Collection", url: "/collections/lilin-aromaterapi", images: " ", price: " " },{ label: "Lily", category: "Collection", url: "/collections/bunga-lily", images: " ", price: " " },{ label: "Lindt", category: "Collection", url: "/collections/lindt", images: " ", price: " " },{ label: "Locations", category: "Collection", url: "/collections/locations", images: " ", price: " " },{ label: "Love & Romance", category: "Collection", url: "/collections/rangkaian-bunga-i-love-you", images: " ", price: " " },{ label: "Love Bag Collection", category: "Collection", url: "/collections/love-bag-collection", images: " ", price: " " },{ label: "Love Bundle", category: "Collection", url: "/collections/paket-promo-spesial-valentine", images: " ", price: " " },{ label: "Love Bundle Nusantara", category: "Collection", url: "/collections/love-bundle-nusantara", images: " ", price: " " },{ label: "Luxury Chinese New Year Hampers", category: "Collection", url: "/collections/luxury-chinese-new-year-hampers", images: " ", price: " " },{ label: "Luxury Christmas Hampers", category: "Collection", url: "/collections/luxury-christmas-hampers", images: " ", price: " " },{ label: "Luxury Hampers", category: "Collection", url: "/collections/luxury-hampers", images: " ", price: " " },{ label: "Luxury Hampers Luar Jadetabek", category: "Collection", url: "/collections/luxury-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Luxury Newborn Hampers Collection", category: "Collection", url: "/collections/luxury-newborn-hampers-collection", images: " ", price: " " },{ label: "Luxury Ramadan Hampers", category: "Collection", url: "/collections/luxury-ramadan-hampers", images: " ", price: " " },{ label: "Luxury Set", category: "Collection", url: "/collections/luxury", images: " ", price: " " },{ label: "Manual", category: "Collection", url: "/collections/manual", images: " ", price: " " },{ label: "Massimo Gelato", category: "Collection", url: "/collections/massimo-gelato", images: " ", price: " " },{ label: "Men's Collection", category: "Collection", url: "/collections/mens-collection", images: " ", price: " " },{ label: "Mercedes Benz", category: "Collection", url: "/collections/mercedes-benz", images: " ", price: " " },{ label: "Mercy Hampers", category: "Collection", url: "/collections/mercy-
7787hampers", images: " ", price: " " },{ label: "Merry Hampers", category: "Collection", url: "/collections/merry-hampers", images: " ", price: " " },{ label: "Merry Hampers Luar Jabodetabek", category: "Collection", url: "/collections/merry-hampers-luar-jabodetabek", images: " ", price: " " },{ label: "Mini Bouquet", category: "Collection", url: "/collections/mini-bouquet", images: " ", price: " " },{ label: "Miss Mondial", category: "Collection", url: "/collections/miss-mondial", images: " ", price: " " },{ label: "Modern & Chic Chinese New Year", category: "Collection", url: "/collections/modern-chic-chinese-new-year", images: " ", price: " " },{ label: "Modern & Chic Christmas Hampers", category: "Collection", url: "/collections/modern-chic-christmas", images: " ", price: " " },{ label: "Modern & Chic Hampers", category: "Collection", url: "/collections/modern-chic-hampers", images: " ", price: " " },{ label: "Modern & Chic Hampers Luar Jadetabek", category: "Collection", url: "/collections/modern-chic-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Modern & Chic Ramadan Hampers", category: "Collection", url: "/collections/modern-chic-ramadan-hampers", images: " ", price: " " },{ label: "Modern & Classy Hampers", category: "Collection", url: "/collections/parcel-unik", images: " ", price: " " },{ label: "Modern 3D Cake", category: "Collection", url: "/collections/custom-3d-cake", images: " ", price: " " },{ label: "Modern Style Flowers", category: "Collection", url: "/collections/modern-style-flowers", images: " ", price: " " },{ label: "Monochrome Hampers", category: "Collection", url: "/collections/monochrome-hampers", images: " ", price: " " },{ label: "Monochrome Hampers Luar Jadetabek", category: "Collection", url: "/collections/monochrome-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Mooncake", category: "Collection", url: "/collections/kue-bulan-mooncake-2025-mid-autumn-festival", images: " ", price: " " },{ label: "Mooncake Assorted Selection", category: "Collection", url: "/collections/mooncake-assorted-selection", images: " ", price: " " },{ label: "Mother's Day", category: "Collection", url: "/collections/rangkaian-bunga-hari-ibu", images: " ", price: " " },{ label: "Mother's Day Special", category: "Collection", url: "/collections/kado-untuk-ibu", images: " ", price: " " },{ label: "Necklace", category: "Collection", url: "/collections/kalung", images: " ", price: " " },{ label: "NestBloom Bird Nest Hampers", category: "Collection", url: "/collections/nestbloom-birds-nest", images: " ", price: " " },{ label: "NestBloom Gift Set", category: "Collection", url: "/collections/nestbloom-gift-set", images: " ", price: " " },{ label: "Nestbloom Ritual Kit", category: "Collection", url: "/collections/nestbloom-ritual-kit", images: " ", price: " " },{ label: "NestBloom Single Bloom", category: "Collection", url: "/collections/nestbloom-single-bloom", images: " ", price: " " },{ label: "New Collection", category: "Collection", url: "/collections/produk-baru", images: " ", price: " " },{ label: "New Product", category: "Collection", url: "/collections/new-product", images: " ", price: " " },{ label: "Newborn", category: "Collection", url: "/collections/rangkaian-bunga-newborn-baby", images: " ", price: " " },{ label: "Newborn Hampers", category: "Collection", url: "/collections/parcel-newborn", images: " ", price: " " },{ label: "Occasions", category: "Collection", url: "/collections/occasions", images: " ", price: " " },{ label: "Oma Elly", category: "Collection", url: "/collections/oma-elly", images: " ", price: " " },{ label: "Oma Elly Gelato", category: "Collection", url: "/collections/oma-elly-gelato", images: " ", price: " " },{ label: "Orchid", category: "Collection", url: "/collections/bunga-anggrek", images: " ", price: " " },{ label: "Orori", category: "Collection", url: "/collections/orori", images: " ", price: " " },{ label: "Outerbloom", category: "Collection", url: "/collections/outerbloom", images: " ", price: " " },{ label: "Outerbloom Cake", category: "Collection", url: "/collections/outerbloom-cake", images: " ", price: " " },{ label: "Outerbloom Florist", category: "Collection", url: "/collections/outerbloom-florist", images: " ", price: " " },{ label: "Outerbloom Gift", category: "Collection", url: "/collections/outerbloom-gift", images: " ", price: " " },{ label: "Outerbloom Hampers", category: "Collection", url: "/collections/outerbloom-hampers", images: " ", price: " " },{ label: "Outerbloom Indonesia", category: "Collection", url: "/collections/indonesia", images: " ", price: " " },{ label: "Outerbloom x Boho Panna", category: "Collection", url: "/collections/outerbloom-x-boh
7787o-panna", images: " ", price: " " },{ label: "Outerbloom x Clairmont", category: "Collection", url: "/collections/outerbloom-x-clairmont", images: " ", price: " " },{ label: "Outerbloom x Kikido", category: "Collection", url: "/collections/outerbloom-x-kikido", images: " ", price: " " },{ label: "Outerbloom x Miwa Pattern", category: "Collection", url: "/collections/outerbloom-x-miwa", images: " ", price: " " },{ label: "Outerbloom x Nestbloom Chinese New Year", category: "Collection", url: "/collections/outerbloom-x-nestbloom-chinese-new-year", images: " ", price: " " },{ label: "Outerbloom x NestBloom Hampers", category: "Collection", url: "/collections/outerbloom-x-nestbloom", images: " ", price: " " },{ label: "Paket Kolaborasi Outerbloom", category: "Collection", url: "/collections/paket-kolaborasi-outerbloom", images: " ", price: " " },{ label: "Paket Kolaborasi Valentine", category: "Collection", url: "/collections/paket-kolaborasi-valentine", images: " ", price: " " },{ label: "Paket Ulang Tahun", category: "Collection", url: "/collections/paket-ulang-tahun", images: " ", price: " " },{ label: "Paket Valentine Nusantara", category: "Collection", url: "/collections/paket-valentine-nusantara", images: " ", price: " " },{ label: "Paket Valentine Outerbloom", category: "Collection", url: "/collections/paket-valentine", images: " ", price: " " },{ label: "Papan Bunga", category: "Collection", url: "/collections/papan-bunga", images: " ", price: " " },{ label: "Papan Bunga Aceh", category: "Collection", url: "/collections/papan-bunga-aceh", images: " ", price: " " },{ label: "Papan Bunga Acrylic", category: "Collection", url: "/collections/papan-bunga-acrylic", images: " ", price: " " },{ label: "Papan Bunga Ambon", category: "Collection", url: "/collections/papan-bunga-ambon", images: " ", price: " " },{ label: "Papan Bunga Artificial", category: "Collection", url: "/collections/papan-bunga-artificial", images: " ", price: " " },{ label: "Papan Bunga Atambua", category: "Collection", url: "/collections/papan-bunga-atambua", images: " ", price: " " },{ label: "Papan Bunga Bali", category: "Collection", url: "/collections/papan-bunga-bali", images: " ", price: " " },{ label: "Papan Bunga Balikpapan", category: "Collection", url: "/collections/papan-bunga-balikpapan", images: " ", price: " " },{ label: "Papan Bunga Bandar Lampung", category: "Collection", url: "/collections/papan-bunga-bandar-lampung", images: " ", price: " " },{ label: "Papan Bunga Bandung", category: "Collection", url: "/collections/papan-bunga-bandung", images: " ", price: " " },{ label: "Papan Bunga Bandung Barat", category: "Collection", url: "/collections/papan-bunga-bandung-barat", images: " ", price: " " },{ label: "Papan Bunga Bangka", category: "Collection", url: "/collections/papan-bunga-bangka", images: " ", price: " " },{ label: "Papan Bunga Banjarmasin", category: "Collection", url: "/collections/papan-bunga-banjarmasin", images: " ", price: " " },{ label: "Papan Bunga Banten", category: "Collection", url: "/collections/papan-bunga-banten", images: " ", price: " " },{ label: "Papan Bunga Banyumas", category: "Collection", url: "/collections/papan-bunga-banyumas", images: " ", price: " " },{ label: "Papan Bunga Banyuwangi", category: "Collection", url: "/collections/papan-bunga-banyuwangi", images: " ", price: " " },{ label: "Papan Bunga Batam", category: "Collection", url: "/collections/papan-bunga-batam", images: " ", price: " " },{ label: "Papan Bunga Baubau", category: "Collection", url: "/collections/papan-bunga-baubau", images: " ", price: " " },{ label: "Papan Bunga Bekasi", category: "Collection", url: "/collections/papan-bunga-bekasi", images: " ", price: " " },{ label: "Papan Bunga Bengkalis", category: "Collection", url: "/collections/papan-bunga-bengkalis", images: " ", price: " " },{ label: "Papan Bunga Bengkayang", category: "Collection", url: "/collections/papan-bunga-bengkayang", images: " ", price: " " },{ label: "Papan Bunga Bengkulu", category: "Collection", url: "/collections/papan-bunga-bengkulu", images: " ", price: " " }
7787,{ label: "Papan Bunga Binjai", category: "Collection", url: "/collections/papan-bunga-binjai", images: " ", price: " " },{ label: "Papan Bunga Blitar", category: "Collection", url: "/collections/papan-bunga-blitar", images: " ", price: " " },{ label: "Papan Bunga Blora", category: "Collection", url: "/collections/papan-bunga-blora", images: " ", price: " " },{ label: "Papan Bunga Bogor", category: "Collection", url: "/collections/papan-bunga-bogor", images: " ", price: " " },{ label: "Papan Bunga Bojonegoro", category: "Collection", url: "/collections/papan-bunga-bojonegoro", images: " ", price: " " },{ label: "Papan Bunga Boyolali", category: "Collection", url: "/collections/papan-bunga-boyolali", images: " ", price: " " },{ label: "Papan Bunga Brebes", category: "Collection", url: "/collections/papan-bunga-brebes", images: " ", price: " " },{ label: "Papan Bunga Bukittinggi", category: "Collection", url: "/collections/papan-bunga-bukittinggi", images: " ", price: " " },{ label: "Papan Bunga Buleleng", category: "Collection", url: "/collections/papan-bunga-buleleng", images: " ", price: " " },{ label: "Papan Bunga Ciamis", category: "Collection", url: "/collections/papan-bunga-ciamis", images: " ", price: " " },{ label: "Papan Bunga Cianjur", category: "Collection", url: "/collections/papan-bunga-cianjur", images: " ", price: " " },{ label: "Papan Bunga Cibubur", category: "Collection", url: "/collections/papan-bunga-cibubur", images: " ", price: " " },{ label: "Papan Bunga Cikarang", category: "Collection", url: "/collections/papan-bunga-cikarang", images: " ", price: " " },{ label: "Papan Bunga Cikupa", category: "Collection", url: "/collections/papan-bunga-cikupa", images: " ", price: " " },{ label: "Papan Bunga Cikupa", category: "Collection", url: "/collections/papan-bunga-cikupa-1", images: " ", price: " " },{ label: "Papan Bunga Cilacap", category: "Collection", url: "/collections/papan-bunga-cilacap", images: " ", price: " " },{ label: "Papan Bunga Cileunyi", category: "Collection", url: "/collections/papan-bunga-cileunyi", images: " ", price: " " },{ label: "Papan Bunga Cirebon", category: "Collection", url: "/collections/papan-bunga-cirebon", images: " ", price: " " },{ label: "Papan Bunga Congratulations", category: "Collection", url: "/collections/papan-bunga-ucapan-selamat", images: " ", price: " " },{ label: "Papan Bunga Congratulations Bali", category: "Collection", url: "/collections/papan-bunga-congratulations-bali", images: " ", price: " " },{ label: "Papan Bunga Congratulations Bandung", category: "Collection", url: "/collections/papan-bunga-congratulations-bandung", images: " ", price: " " },{ label: "Papan Bunga Congratulations Bekasi", category: "Collection", url: "/collections/papan-bunga-congratulations-bekasi", images: " ", price: " " },{ label: "Papan Bunga Congratulations Bogor", category: "Collection", url: "/collections/papan-bunga-congratulations-bogor", images: " ", price: " " },{ label: "Papan Bunga Congratulations Cikupa", category: "Collection", url: "/collections/papan-bunga-congratulations-cikupa", images: " ", price: " " },{ label: "Papan Bunga Congratulations Demak", category: "Collection", url: "/collections/papan-bunga-congratulations-demak", images: " ", price: " " },{ label: "Papan Bunga Congratulations Depok", category: "Collection", url: "/collections/papan-bunga-congratulations-depok", images: " ", price: " " },{ label: "Papan Bunga Congratulations Gresik", category: "Collection", url: "/collections/papan-bunga-congratulations-gresik", images: " ", price: " " },{ label: "Papan Bunga Congratulations Jakarta", category: "Collection", url: "/collections/papan-bunga-congratulations-jakarta", images: " ", price: " " },{ label: "Papan Bunga Congratulations Jepara", category: "Collection", url: "/collections/papan-bunga-congratulations-jepara", images: " ", price: " " },{ label: "Papan Bunga Congratulations Medan", category: "Collection", url: "/collections/papan-bunga-congratulations-medan", images: " ", price: " " },{ label: "Papan Bunga Congratulations Semarang", category: "Collection", url: "/collections/papan-bunga-congratulations-semarang", images: " ", price: " " }
7787,{ label: "Papan Bunga Congratulations Serang", category: "Collection", url: "/collections/papan-bunga-congratulations-serang", images: " ", price: " " },{ label: "Papan Bunga Congratulations Sidoarjo", category: "Collection", url: "/collections/papan-bunga-congratulations-sidoarjo", images: " ", price: " " },{ label: "Papan Bunga Congratulations Surabaya", category: "Collection", url: "/collections/papan-bunga-congratulations-surabaya", images: " ", price: " " },{ label: "Papan Bunga Congratulations Tangerang", category: "Collection", url: "/collections/papan-bunga-congratulations-tangerang", images: " ", price: " " },{ label: "Papan Bunga Congratulations Yogyakarta", category: "Collection", url: "/collections/papan-bunga-congratulations-yogyakarta", images: " ", price: " " },{ label: "Papan Bunga Danau Toba", category: "Collection", url: "/collections/papan-bunga-danau-toba", images: " ", price: " " },{ label: "Papan Bunga Deli Serdang", category: "Collection", url: "/collections/papan-bunga-deli-serdang", images: " ", price: " " },{ label: "Papan Bunga Demak", category: "Collection", url: "/collections/papan-bunga-demak", images: " ", price: " " },{ label: "Papan Bunga Denpasar", category: "Collection", url: "/collections/papan-bunga-denpasar", images: " ", price: " " },{ label: "Papan Bunga Depok", category: "Collection", url: "/collections/papan-bunga-depok", images: " ", price: " " },{ label: "Papan Bunga Duka Cita", category: "Collection", url: "/collections/bunga-duka-cita", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Bali", category: "Collection", url: "/collections/papan-bunga-duka-cita-bali", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Bandung", category: "Collection", url: "/collections/papan-bunga-duka-cita-bandung", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Bekasi", category: "Collection", url: "/collections/papan-bunga-duka-cita-bekasi", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Bogor", category: "Collection", url: "/collections/papan-bunga-duka-cita-bogor", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Cikupa", category: "Collection", url: "/collections/papan-bunga-duka-cita-cikupa", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Demak", category: "Collection", url: "/collections/papan-bunga-duka-cita-demak", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Depok", category: "Collection", url: "/collections/papan-bunga-duka-cita-depok", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Gresik", category: "Collection", url: "/collections/papan-bunga-duka-cita-gresik", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Jakarta", category: "Collection", url: "/collections/papan-bunga-duka-cita-jakarta", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Jepara", category: "Collection", url: "/collections/papan-bunga-duka-cita-jepara", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Medan", category: "Collection", url: "/collections/papan-bunga-duka-cita-medan", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Semarang", category: "Collection", url: "/collections/papan-bunga-duka-cita-semarang", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Serang", category: "Collection", url: "/collections/papan-bunga-duka-cita-serang", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Sidoarjo", category: "Collection", url: "/collections/papan-bunga-duka-cita-sidoarjo", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Surabaya", category: "Collection", url: "/collections/papan-bunga-duka-cita-surabaya", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Tangerang", category: "Collection", url: "/collections/papan-bunga-duka-cita-tangerang", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Yogyakarta", category: "Collection", url: "/collections/papan-bunga-duka-cita-yogyakarta", images: " ", price: " " },{ label: "Papan Bunga Garut", category: "Collection", url: "/collections/papan-bunga-garut", images: " ", price: " " },{ label: "Papan Bunga Gianyar", category: "Collection", url: "/collections/papan-bunga-gianyar", images: " ", price: " " }
7787,{ label: "Papan Bunga Gorontalo", category: "Collection", url: "/collections/papan-bunga-gorontalo", images: " ", price: " " },{ label: "Papan Bunga Gowa", category: "Collection", url: "/collections/papan-bunga-gowa", images: " ", price: " " },{ label: "Papan Bunga Gresik", category: "Collection", url: "/collections/papan-bunga-gresik", images: " ", price: " " },{ label: "Papan Bunga Grobogan", category: "Collection", url: "/collections/papan-bunga-grobogan", images: " ", price: " " },{ label: "Papan Bunga Gunungkidul", category: "Collection", url: "/collections/papan-bunga-gunungkidul", images: " ", price: " " },{ label: "Papan Bunga Indramayu", category: "Collection", url: "/collections/papan-bunga-indramayu", images: " ", price: " " },{ label: "Papan Bunga Jakarta", category: "Collection", url: "/collections/papan-bunga-jakarta", images: " ", price: " " },{ label: "Papan Bunga Jakarta Timur", category: "Collection", url: "/collections/papan-bunga-jakarta-timur", images: " ", price: " " },{ label: "Papan Bunga Jambi", category: "Collection", url: "/collections/papan-bunga-jambi", images: " ", price: " " },{ label: "Papan Bunga Jayapura", category: "Collection", url: "/collections/papan-bunga-jayapura", images: " ", price: " " },{ label: "Papan Bunga Jember", category: "Collection", url: "/collections/papan-bunga-jember", images: " ", price: " " },{ label: "Papan Bunga Jembrana", category: "Collection", url: "/collections/papan-bunga-jembrana", images: " ", price: " " },{ label: "Papan Bunga Jepara", category: "Collection", url: "/collections/papan-bunga-jepara", images: " ", price: " " },{ label: "Papan Bunga Jombang", category: "Collection", url: "/collections/papan-bunga-jombang", images: " ", price: " " },{ label: "Papan Bunga Kampung Baru", category: "Collection", url: "/collections/papan-bunga-kampung-baru", images: " ", price: " " },{ label: "Papan Bunga Kapuas", category: "Collection", url: "/collections/papan-bunga-kapuas", images: " ", price: " " },{ label: "Papan Bunga Karanganyar", category: "Collection", url: "/collections/papan-bunga-karanganyar", images: " ", price: " " },{ label: "Papan Bunga Karangasem", category: "Collection", url: "/collections/papan-bunga-karangasem", images: " ", price: " " },{ label: "Papan Bunga Karawang", category: "Collection", url: "/collections/papan-bunga-karawang", images: " ", price: " " },{ label: "Papan Bunga Karo", category: "Collection", url: "/collections/papan-bunga-karo", images: " ", price: " " },{ label: "Papan Bunga Kartosuro", category: "Collection", url: "/collections/papan-bunga-kartosuro", images: " ", price: " " },{ label: "Papan Bunga Kebumen", category: "Collection", url: "/collections/papan-bunga-kebumen", images: " ", price: " " },{ label: "Papan Bunga Kediri", category: "Collection", url: "/collections/papan-bunga-kediri", images: " ", price: " " },{ label: "Papan Bunga Kendal", category: "Collection", url: "/collections/papan-bunga-kendal", images: " ", price: " " },{ label: "Papan Bunga Kendari", category: "Collection", url: "/collections/papan-bunga-kendari", images: " ", price: " " },{ label: "Papan Bunga Ketapang", category: "Collection", url: "/collections/papan-bunga-ketapang", images: " ", price: " " },{ label: "Papan Bunga Klaten", category: "Collection", url: "/collections/papan-bunga-klaten", images: " ", price: " " },{ label: "Papan Bunga Kota Batu", category: "Collection", url: "/collections/papan-bunga-kota-batu", images: " ", price: " " },{ label: "Papan Bunga Kudus", category: "Collection", url: "/collections/papan-bunga-kudus", images: " ", price: " " },{ label: "Papan Bunga Kupang", category: "Collection", url: "/collections/papan-bunga-kupang", images: " ", price: " " },{ label: "Papan Bunga Lamongan", category: "Collection", url: "/collections/papan-bunga-lamongan", images: " ", price: " " },{ label: "Papan Bunga Lampu LED", category: "Collection", url: "/collections/papan-bunga-lampu-led", images: " ", price: " " },{ label: "Papan Bunga Lampung", category: "Collection", url: "/collections/papan-bunga-lampung", images: " ", price: " " }
7787,{ label: "Papan Bunga Langkat", category: "Collection", url: "/collections/papan-bunga-langkat", images: " ", price: " " },{ label: "Papan Bunga Lembang", category: "Collection", url: "/collections/papan-bunga-lembang", images: " ", price: " " },{ label: "Papan Bunga Lombok", category: "Collection", url: "/collections/papan-bunga-lombok", images: " ", price: " " },{ label: "Papan Bunga Lubuk Pakam", category: "Collection", url: "/collections/papan-bunga-lubuk-pakam", images: " ", price: " " },{ label: "Papan Bunga Lumajang", category: "Collection", url: "/collections/papan-bunga-lumajang", images: " ", price: " " },{ label: "Papan Bunga Madiun", category: "Collection", url: "/collections/papan-bunga-madiun", images: " ", price: " " },{ label: "Papan Bunga Magelang", category: "Collection", url: "/collections/papan-bunga-magelang", images: " ", price: " " },{ label: "Papan Bunga Majalengka", category: "Collection", url: "/collections/papan-bunga-majalengka", images: " ", price: " " },{ label: "Papan Bunga Makassar", category: "Collection", url: "/collections/papan-bunga-makassar", images: " ", price: " " },{ label: "Papan Bunga Malang", category: "Collection", url: "/collections/papan-bunga-malang", images: " ", price: " " },{ label: "Papan Bunga Mamuju", category: "Collection", url: "/collections/papan-bunga-mamuju", images: " ", price: " " },{ label: "Papan Bunga Manado", category: "Collection", url: "/collections/papan-bunga-manado", images: " ", price: " " },{ label: "Papan Bunga Manokwari", category: "Collection", url: "/collections/papan-bunga-manokwari", images: " ", price: " " },{ label: "Papan Bunga Maros", category: "Collection", url: "/collections/papan-bunga-maros", images: " ", price: " " },{ label: "Papan Bunga Mataram", category: "Collection", url: "/collections/papan-bunga-mataram", images: " ", price: " " },{ label: "Papan Bunga Medan", category: "Collection", url: "/collections/papan-bunga-medan", images: " ", price: " " },{ label: "Papan Bunga Mojokerto", category: "Collection", url: "/collections/papan-bunga-mojokerto", images: " ", price: " " },{ label: "Papan Bunga Nganjuk", category: "Collection", url: "/collections/papan-bunga-nganjuk", images: " ", price: " " },{ label: "Papan Bunga Ngawi", category: "Collection", url: "/collections/papan-bunga-ngawi", images: " ", price: " " },{ label: "Papan Bunga Nias", category: "Collection", url: "/collections/papan-bunga-nias", images: " ", price: " " },{ label: "Papan Bunga Organza", category: "Collection", url: "/collections/papan-bunga-organza", images: " ", price: " " },{ label: "Papan Bunga Padang", category: "Collection", url: "/collections/papan-bunga-padang", images: " ", price: " " },{ label: "Papan Bunga Palangkaraya", category: "Collection", url: "/collections/papan-bunga-palangkaraya", images: " ", price: " " },{ label: "Papan Bunga Palembang", category: "Collection", url: "/collections/papan-bunga-palembang", images: " ", price: " " },{ label: "Papan Bunga Palu", category: "Collection", url: "/collections/papan-bunga-palu", images: " ", price: " " },{ label: "Papan Bunga Pangkal Pinang", category: "Collection", url: "/collections/papan-bunga-pangkal-pinang", images: " ", price: " " },{ label: "Papan Bunga Parepare", category: "Collection", url: "/collections/papan-bunga-parepare", images: " ", price: " " },{ label: "Papan Bunga Pasuruan", category: "Collection", url: "/collections/papan-bunga-pasuruan", images: " ", price: " " },{ label: "Papan Bunga Pati", category: "Collection", url: "/collections/papan-bunga-pati", images: " ", price: " " },{ label: "Papan Bunga Pekalongan", category: "Collection", url: "/collections/papan-bunga-pekalongan", images: " ", price: " " },{ label: "Papan Bunga Pekanbaru", category: "Collection", url: "/collections/papan-bunga-pekanbaru", images: " ", price: " " },{ label: "Papan Bunga Pemalang", category: "Collection", url: "/collections/papan-bunga-pemalang", images: " ", price: " " },{ label: "Papan Bunga Pematangsiantar", category: "Collection", url: "/collections/papan-bunga-pematangsiantar", images: " ", price: " " }
7787,{ label: "Papan Bunga Pernikahan Bali", category: "Collection", url: "/collections/papan-bunga-pernikahan-bali", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Bandung", category: "Collection", url: "/collections/papan-bunga-pernikahan-bandung", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Bekasi", category: "Collection", url: "/collections/papan-bunga-pernikahan-bekasi", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Bogor", category: "Collection", url: "/collections/papan-bunga-pernikahan-bogor", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Cikupa", category: "Collection", url: "/collections/papan-bunga-pernikahan-cikupa", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Demak", category: "Collection", url: "/collections/papan-bunga-pernikahan-demak", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Depok", category: "Collection", url: "/collections/papan-bunga-pernikahan-depok", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Gresik", category: "Collection", url: "/collections/papan-bunga-pernikahan-gresik", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Jakarta", category: "Collection", url: "/collections/papan-bunga-pernikahan-jakarta", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Jepara", category: "Collection", url: "/collections/papan-bunga-pernikahan-jepara", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Medan", category: "Collection", url: "/collections/papan-bunga-pernikahan-medan", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Semarang", category: "Collection", url: "/collections/papan-bunga-pernikahan-semarang", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Serang", category: "Collection", url: "/collections/papan-bunga-pernikahan-serang", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Sidoarjo", category: "Collection", url: "/collections/papan-bunga-pernikahan-sidoarjo", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Surabaya", category: "Collection", url: "/collections/papan-bunga-pernikahan-surabaya", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Tangerang", category: "Collection", url: "/collections/papan-bunga-pernikahan-tangerang", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Yogyakarta", category: "Collection", url: "/collections/papan-bunga-pernikahan-yogyakarta", images: " ", price: " " },{ label: "Papan Bunga Ponorogo", category: "Collection", url: "/collections/papan-bunga-ponorogo", images: " ", price: " " },{ label: "Papan Bunga Pontianak", category: "Collection", url: "/collections/papan-bunga-pontianak", images: " ", price: " " },{ label: "Papan Bunga Premium", category: "Collection", url: "/collections/papan-bunga-premium", images: " ", price: " " },{ label: "Papan Bunga Printing", category: "Collection", url: "/collections/papan-bunga-printing", images: " ", price: " " },{ label: "Papan Bunga Printing Congratulations", category: "Collection", url: "/collections/papan-bunga-printing-congratulations", images: " ", price: " " },{ label: "Papan Bunga Probolinggo", category: "Collection", url: "/collections/papan-bunga-probolinggo", images: " ", price: " " },{ label: "Papan Bunga Promo", category: "Collection", url: "/collections/promo-papan-bunga", images: " ", price: " " },{ label: "Papan Bunga Purbalingga", category: "Collection", url: "/collections/papan-bunga-purbalingga", images: " ", price: " " },{ label: "Papan Bunga Purwokerto", category: "Collection", url: "/collections/papan-bunga-purwokerto", images: " ", price: " " },{ label: "Papan Bunga Purworejo", category: "Collection", url: "/collections/papan-bunga-purworejo", images: " ", price: " " },{ label: "Papan Bunga Rembang", category: "Collection", url: "/collections/papan-bunga-rembang", images: " ", price: " " },{ label: "Papan Bunga Riau", category: "Collection", url: "/collections/papan-bunga-riau", images: " ", price: " " },{ label: "Papan Bunga Salatiga", category: "Collection", url: "/collections/papan-bunga-salatiga", images: " ", price: " " }
7787,{ label: "Papan Bunga Samarinda", category: "Collection", url: "/collections/papan-bunga-samarinda", images: " ", price: " " },{ label: "Papan Bunga Selamat Bandung", category: "Collection", url: "/collections/papan-bunga-selamat-bandung", images: " ", price: " " },{ label: "Papan Bunga Selamat Medan", category: "Collection", url: "/collections/papan-bunga-selamat-medan", images: " ", price: " " },{ label: "Papan Bunga Semarang", category: "Collection", url: "/collections/papan-bunga-semarang", images: " ", price: " " },{ label: "Papan Bunga Serang", category: "Collection", url: "/collections/papan-bunga-serang", images: " ", price: " " },{ label: "Papan Bunga Sibolga", category: "Collection", url: "/collections/papan-bunga-sibolga", images: " ", price: " " },{ label: "Papan Bunga Sidoarjo", category: "Collection", url: "/collections/papan-bunga-sidoarjo", images: " ", price: " " },{ label: "Papan Bunga Singkawang", category: "Collection", url: "/collections/papan-bunga-singkawang", images: " ", price: " " },{ label: "Papan Bunga Solo", category: "Collection", url: "/collections/papan-bunga-solo", images: " ", price: " " },{ label: "Papan Bunga Sorong", category: "Collection", url: "/collections/papan-bunga-sorong", images: " ", price: " " },{ label: "Papan Bunga Sragen", category: "Collection", url: "/collections/papan-bunga-sragen", images: " ", price: " " },{ label: "Papan Bunga Standard", category: "Collection", url: "/collections/papan-bunga-standard", images: " ", price: " " },{ label: "Papan Bunga Subang", category: "Collection", url: "/collections/papan-bunga-subang", images: " ", price: " " },{ label: "Papan Bunga Sukabumi", category: "Collection", url: "/collections/papan-bunga-sukabumi", images: " ", price: " " },{ label: "Papan Bunga Sumbawa", category: "Collection", url: "/collections/papan-bunga-sumbawa", images: " ", price: " " },{ label: "Papan Bunga Surabaya", category: "Collection", url: "/collections/papan-bunga-surabaya", images: " ", price: " " },{ label: "Papan Bunga Surakarta", category: "Collection", url: "/collections/papan-bunga-surakarta", images: " ", price: " " },{ label: "Papan Bunga Tangerang", category: "Collection", url: "/collections/papan-bunga-tangerang", images: " ", price: " " },{ label: "Papan Bunga Tasikmalaya", category: "Collection", url: "/collections/papan-bunga-tasikmalaya", images: " ", price: " " },{ label: "Papan Bunga Tegal", category: "Collection", url: "/collections/papan-bunga-tegal", images: " ", price: " " },{ label: "Papan Bunga Temanggung", category: "Collection", url: "/collections/papan-bunga-temanggung", images: " ", price: " " },{ label: "Papan Bunga Ternate", category: "Collection", url: "/collections/papan-bunga-ternate", images: " ", price: " " },{ label: "Papan Bunga Tolitoli", category: "Collection", url: "/collections/papan-bunga-tolitoli", images: " ", price: " " },{ label: "Papan Bunga Toraja", category: "Collection", url: "/collections/papan-bunga-toraja", images: " ", price: " " },{ label: "Papan Bunga Tuban", category: "Collection", url: "/collections/papan-bunga-tuban", images: " ", price: " " },{ label: "Papan Bunga Tulungagung", category: "Collection", url: "/collections/papan-bunga-tulungagung", images: " ", price: " " },{ label: "Papan Bunga Wakatobi", category: "Collection", url: "/collections/papan-bunga-wakatobi", images: " ", price: " " },{ label: "Papan Bunga Wedding", category: "Collection", url: "/collections/papan-bunga-ucapan-pernikahan", images: " ", price: " " },{ label: "Papan Bunga Wiyung", category: "Collection", url: "/collections/papan-bunga-wiyung", images: " ", price: " " },{ label: "Papan Bunga Wonogiri", category: "Collection", url: "/collections/papan-bunga-wonogiri", images: " ", price: " " },{ label: "Papan Bunga Wonokromo", category: "Collection", url: "/collections/papan-bunga-wonokromo", images: " ", price: " " },{ label: "Papan Bunga Wonosobo", category: "Collection", url: "/collections/papan-bunga-wonosobo", images: " ", price: " " },{ label: "Papan Bunga Yogyakarta", category: "Collection", url: "/collections/papan-bunga-yogyakarta", images: " ", price: " " }
7787,{ label: "Paper Flower Board", category: "Collection", url: "/collections/papan-bunga-kertas", images: " ", price: " " },{ label: "Paper Flower Board Bali", category: "Collection", url: "/collections/papan-bunga-kertas-bali", images: " ", price: " " },{ label: "Paper Flower Board Gresik", category: "Collection", url: "/collections/papan-bunga-kertas-gresik", images: " ", price: " " },{ label: "Paper Flower Board Sidoarjo", category: "Collection", url: "/collections/papan-bunga-kertas-sidoarjo", images: " ", price: " " },{ label: "Paper Flower Board Surabaya", category: "Collection", url: "/collections/papan-bunga-kertas-surabaya", images: " ", price: " " },{ label: "Paper Flower Board Yogyakarta", category: "Collection", url: "/collections/papan-bunga-kertas-yogyakarta", images: " ", price: " " },{ label: "Parcel", category: "Collection", url: "/collections/parcel", images: " ", price: " " },{ label: "Parcel Buah", category: "Collection", url: "/collections/parcel-buah-segar", images: " ", price: " " },{ label: "Parcel Buah Bandung", category: "Collection", url: "/collections/parcel-buah-bandung", images: " ", price: " " },{ label: "Parcel Buah Semarang", category: "Collection", url: "/collections/parcel-buah-semarang", images: " ", price: " " },{ label: "Parcel Buah Sidoarjo", category: "Collection", url: "/collections/parcel-buah-sidoarjo", images: " ", price: " " },{ label: "Parcel Buah Surabaya", category: "Collection", url: "/collections/parcel-buah-surabaya", images: " ", price: " " },{ label: "Parcel Imlek 2025", category: "Collection", url: "/collections/parcel-imlek", images: " ", price: " " },{ label: "Parcel Imlek Bandung", category: "Collection", url: "/collections/parcel-imlek-bandung", images: " ", price: " " },{ label: "Parcel Imlek Nusantara", category: "Collection", url: "/collections/parcel-imlek-nusantara", images: " ", price: " " },{ label: "Parcel Lebaran Bandung", category: "Collection", url: "/collections/parcel-lebaran-bandung", images: " ", price: " " },{ label: "Parcel Lebaran Nusantara", category: "Collection", url: "/collections/parcel-lebaran-indonesia", images: " ", price: " " },{ label: "Parcel Lebaran Surabaya", category: "Collection", url: "/collections/parcel-lebaran-surabaya", images: " ", price: " " },{ label: "Parcel Makanan", category: "Collection", url: "/collections/parcel-makanan", images: " ", price: " " },{ label: "Parcel Natal & Tahun Baru 2026", category: "Collection", url: "/collections/hampers-natal", images: " ", price: " " },{ label: "Parcel Natal & Tahun Baru Bandung", category: "Collection", url: "/collections/parcel-natal-bandung", images: " ", price: " " },{ label: "Parcel Newborn Nusantara", category: "Collection", url: "/collections/parcel-newborn-nusantara", images: " ", price: " " },{ label: "Parcel Tahun Baru", category: "Collection", url: "/collections/new-year-tahun-baru", images: " ", price: " " },{ label: "Party Supplies", category: "Collection", url: "/collections/party-supplies", images: " ", price: " " },{ label: "Partysaurus", category: "Collection", url: "/collections/partysaurus", images: " ", price: " " },{ label: "Pasar Bunga Splendid Malang", category: "Collection", url: "/collections/pasar-bunga-splendid-malang", images: " ", price: " " },{ label: "Passionate Red Valentine", category: "Collection", url: "/collections/red-valentine", images: " ", price: " " },{ label: "Pendant", category: "Collection", url: "/collections/liontin", images: " ", price: " " },{ label: "Personalized Fashion", category: "Collection", url: "/collections/fashion", images: " ", price: " " },{ label: "Personalized Gift", category: "Collection", url: "/collections/personalized-gift", images: " ", price: " " },{ label: "Personalized Gift Pria", category: "Collection", url: "/collections/personalized-gift-pria", images: " ", price: " " },{ label: "Personalized Gift Wanita", category: "Collection", url: "/collections/personalized-gift-wanita", images: " ", price: " " },{ label: "Personalized Gifts", category: "Collection", url: "/collections/personalized-gifts", images: " ", price: " " },{ label: "Pesca Ice Cream Cakes", category: "Collection", url: "/collections/pesca", images: " ", price: " " },{ label: "Phone Case", category: "Collection", url: "/collections/phone-case", images: " ", price: " " },{ label: "Photobook", category: "Collection", url: "/collections/photobook", images: " ", price: " " },{ label: "Pisces âï¸ 19Feb - 20March", category: "Collection", url: "/collections/kado-untuk-zodiak-pisces", images: " ", price: " " },{ label: "Pohon Natal", category: "Collection", url: "/collections/pohon-natal", images: " ", price: " " },{ label: "Premium Hampers", category: "Collection", url: "/collections/parcel-premium", images: " ", price: " " },{ label: "Premium Newborn Hampers Collection", category: "Collection", url: "/collections/premium-newborn-hampers-collection", images: " ", price: " " },{ label: "Printing Cake", category: "Collection", url: "/collections/printing-cake", images: " ", price: " " },{ label: "Prom", category: "Collection", url: "/collections/prom", images: " ", price: " " },{ label: "Promo Merdeka", category: "Collection", url: "/collections/merdeka", images: " ", price: " " },{ label: "Rangkaian Bunga", category: "Collection", url: "/collections/rangkaian-bunga", images: " ", price: " " },{ label: "Rangkaian Bunga Dekorasi", category: "Collection", url: "/collections/rangkaian-bunga-dekorasi", images: " ", price: " " },{ label: "Rangkaian Bunga Ulang Tahun", category: "Collection", url: "/collections/rangkaian-bunga-ulang-tahun", images: " ", price: " " },{ label: "Romantic & Sweets", category: "Collection", url: "/collections/romantic-sweets", images: " ", price: " " },{ label: "Romantic Package", category: "Collection", url: "/collections/romantic-package", images: " ", price: " " },{ label: "Rose Beam", category: "Collection", url: "/collections/rose-beam", images: " ", price: " " },{ label: "Rose Box", category: "Collection", url: "/collections/rose-box", images: " ", price: " " },{ label: "Roses", category: "Collection", url: "/collections/bunga-mawar", images: " ", price: " " },{ label: "Rp 500.000 - Rp 800.000", category: "Collection", url: "/collections/rp-500-000-rp-800-000", images: " ", price: " " },{ label: "Rp 800.000 - Rp 1.000.000", category: "Collection", url: "/collections/rp-800-000-rp-1-000-000", images: " ", price: " " },{ label: "Rustic & Monochrome Ramadan Hampers", category: "Collection", url: "/collections/rustic-monochrome-ramadanhampers", images: " ", price: " " },{ label: "Rustic Bloom", category: "Collection", url: "/collections/dried-flowers", images: " ", price: " " },{ label: "Rustic Style Flowers", category: "Collection", url: "/collections/rustic-style-flowers", images: " ", price: " " },{ label: "Sagittarius âï¸ 22Nov - 21Des", category: "Collection", url: "/collections/kado-untuk-zodiak-sagittarius", images: " ", price: " " },{ label: "Sameday Delivery", category: "Collection", url: "/collections/sameday", images: " ", price: " " },{ label: "Savoury Dish", category: "Collection", url: "/collections/savoury-dish", images: " ", price: " " },{ label: "Saychiz", category: "Collection", url: "/collections/saychiz", images: " ", price: " " },{ label: "Scented Candles", category: "Collection", url: "/collections/scented-candles", images: " ", price: " " },{ label: "Scorpio âï¸ 24Oct - 21Nov", category: "Collection", url: "/collections/kado-untuk-zodiak-scorpio", images: " ", price: " " },{ label: "Self Pick-Up", category: "Collection", url: "/collections/self-pick-up", images: " ", price: " " },{ label: "Semua Produk", category: "Collection", url: "/collections/all", images: " ", price: " " },{ label: "Serenitea", category: "Collection", url: "/collections/serenitea", images: " ", price: " " },{ label: "Share Outerbloom Moment", category: "Collection", url: "/collections/share-moment", images: " ", price: " " },{ label: "Share your Happiness", category: "Collection", url: "/collections/share-happiness", images: " ", price: " " },{ label: "Signature Cake", category: "Collection", url: "/collections/signature-cake", images: " ", price: " " },{ label: "Signature Chinese New Year Hampers", category: "Collection", url: "/collections/signature-chinese-new-year-hampers", images: " ", price: " " },{ label: "Signature Christmas & New Year Hampers", category: "Collection", url: "/collections/signature-christmas-hampers", images: " ", price: " " },{ label: "Signature Hampers", category: "Collection", url: "/collections/signature-hampers", images: " ", price: " " },{ label: "Signature Hampers Luar Jadetabek", category: "Collection", url: "/collections/signature-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Signature Hampers Sameday", category: "Collection", url: "/collections/signature-hampers-sameday", images: " ", price: " " },{ label: "Signature Ramadan Hampers", category: "Collection", url: "/collections/signature-ramadan-hampers", images: " ", price: " " },{ label: "Slice Cake", category: "Collection", url: "/collections/slice-cake", images: " ", price: " " },{ label: "Snack Box", category: "Collection", url: "/collections/snack-box", images: " ", price: " " },{ label: "Sol et Terre", category: "Collection", url: "/collections/sol-et-terre", images: " ", price: " " },{ label: "Sorbet", category: "Collection", url: "/collections/sorbet", images: " ", price: " " },{ label: "Special Day", category: "Collection", url: "/collections/special-day", images: " ", price: " " },{ label: "Special Edition", category: "Collection", url: "/collections/special-edition", images: " ", price: " " },{ label: "Special For Her", category: "Collection", url: "/collections/special-for-her", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 202
77876", category: "Collection", url: "/collections/standing-flower", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026 Bali", category: "Collection", url: "/collections/standing-flower-bali", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026 Bandung", category: "Collection", url: "/collections/standing-flower-bandung", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026 Congratulations", category: "Collection", url: "/collections/standing-flower-congratulations", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026 Demak", category: "Collection", url: "/collections/standing-flower-demak", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026 Jepara", category: "Collection", url: "/collections/standing-flower-jepara", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026 Semarang", category: "Collection", url: "/collections/standing-flower-semarang", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026 Sidoarjo", category: "Collection", url: "/collections/standing-flower-sidoarjo", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026 Surabaya", category: "Collection", url: "/collections/standing-flower-surabaya", images: " ", price: " " },{ label: "BETATOGEL merupakan agen toto macau dan togel macau resmi terpercaya di 2026 yang memberikan pengalaman bermain toto togel macau yang tidak akan anda dapatkan selain di betatogel, dengan fitur paling lengkap di indonesia, yang memastikan kemenangan jackpot 4D kalian di 2026 Yogyakarta", category: "Collection", url: "/collections/standing-flower-yogyakarta", images: " ", price: " " },{ label: "Standing Giant Flower", category: "Collection", url: "/collections/standing-giant-flower", images: " ", price: " " },{ label: "Stationery", category: "Collection", url: "/collections/stationery", images: " ", price: " " },{ label: "Steekwerk", category: "Collection", url: "/collections/steekwerk", images: " ", price: " " },{ label: "Stylish Hampers", category: "Collection", url: "/collections/stylish-hampers", images: " ", price: " " },{ label: "Stylish Hampers Luar Jadetabek", category: "Collection", url: "/collections/stylish-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Succulent", category: "Collection", url: "/collections/succulent", images: " ", price: " " },{ label: "Sunflower", category: "Collection", url: "/collections/bunga-matahari", images: " ", price: " " },{ label: "Sweet & Savoury Hampers", category: "Collection", url: "/collections/sweet-savoury-hampers", images: " ", price: " " },{ label: "Sweet Gracie", category: "Collection", url: "/collections/sweet-gracie", images: " ", price: " " },{ label: "Sweet Pastel Love", category: "Collection", url: "/collections/pastel-love", images: " ", price: " " },{ label: "Sweet Pastel Love Nusantara", category: "Collection", url: "/collections/sweet-pastel-love-nusantara", images: " ", price: " " },{ label: "Sweet Treats", category: "Collection", url: "/collections/sweet-treats", images: " ", price: " " },{ label: "Sweetooth", category: "Collection", url: "/collections/sweetooth", images: " ", price: " " },{ label: "Taurus âï¸ 20April - 20May", category: "Collection", url: "/collections/kado-untuk-zodiak-taurus", images: " ", price: " " },{ label: "Teddy Bear", category: "Collection", url: "/collections/boneka-teddy-bear", images: " ", price: " " },{ label: "Teh", category: "Collection", url: "/collections/teh", images: " ", price: " " },{ label: "Test Error", category: "Collection", url: "/collections/test-error", images: " ", price: " " },{ label: "Testing", category: "Collection", url: "/collections/testing", images: " ", price: " " },{ label: "Thank You", category: "Collection", url: "/collections/rangkaian-bunga-ucapan-terima-kasih", images: " ", price: " " },{ label: "The Classic Astoria", category: "Collection", url: "/collections/astoria", images: " ", price: " " },{ label: "The Classic Enchanted Dome", category: "Collection", url: "/collections/enchanted-dome", images: " ", price: " " },{ label: "The Enchanted Love Pirouette Special Edition", category: "Collection", url: "/collections/the-enchanted-love-pirouette-special-edition", images: " ", price: " " },{ label: "The F Thing", category: "Collection", url: "/collections/the-f-thing", images: " ", price: " " },{ label: "The First", category: "Collection", url: "/collections/the-first", images: " ", price: " " },{ label: "The Novo Astoria", category: "Collection", url: "/collections/the-novo-astoria", images: " ", price: " " },{ label: "The Novo Enchanted Dome", category: "Collection", url: "/collections/the-novo-enchanted-dome", images: " ", price: " " },{ label: "The Novo Enchanted Dome Special Edition", category: "Collection", url: "/collections/the-novo-enchanted-dome-special-edition", images: " ", price: " " },{ label: "The Palace", category: "Collection", url: "/collections/the-palace", images: " ", price: " " },{ label: "Ties", category: "Collection", url: "/collections/dasi", images: " ", price: " " },{ label: "Tisane", category: "Collection", url: "/collections/tisane", images: " ", price: " " },{ label: "Toko Bunga Aceh", category: "Collection", url: "/collections/toko-bunga-aceh", images: " ", price: " " },{ label: "Toko Bunga Ambon", category: "Collection", url: "/collections/toko-bunga-ambon", images: " ", price: " " },{ label: "Toko Bunga Atambua", category: "Collection", url: "/collections/toko-bunga-atambua", images: " ", price: " " },{ label: "Toko Bunga Bali", category: "Collection", url: "/collections/toko-bunga-bali", images: " ", price: " " },{ label: "Toko Bunga Balikpapan", category: "Collection", url: "/collections/toko-bunga-balikpapan", images: " ", price: " " }
7787,{ label: "Toko Bunga Bandar Lampung", category: "Collection", url: "/collections/toko-bunga-bandar-lampung", images: " ", price: " " },{ label: "Toko Bunga Bandung", category: "Collection", url: "/collections/toko-bunga-bandung", images: " ", price: " " },{ label: "Toko Bunga Bandung Barat", category: "Collection", url: "/collections/toko-bunga-bandung-barat", images: " ", price: " " },{ label: "Toko Bunga Banjarmasin", category: "Collection", url: "/collections/toko-bunga-banjarmasin", images: " ", price: " " },{ label: "Toko Bunga Banten", category: "Collection", url: "/collections/toko-bunga-banten", images: " ", price: " " },{ label: "Toko Bunga Banyumas", category: "Collection", url: "/collections/toko-bunga-banyumas", images: " ", price: " " },{ label: "Toko Bunga Banyuwangi", category: "Collection", url: "/collections/toko-bunga-banyuwangi", images: " ", price: " " },{ label: "Toko Bunga Batam", category: "Collection", url: "/collections/toko-bunga-batam", images: " ", price: " " },{ label: "Toko Bunga Baubau", category: "Collection", url: "/collections/toko-bunga-baubau", images: " ", price: " " },{ label: "Toko Bunga Bekasi", category: "Collection", url: "/collections/toko-bunga-bekasi", images: " ", price: " " },{ label: "Toko Bunga Bengkalis", category: "Collection", url: "/collections/toko-bunga-bengkalis", images: " ", price: " " },{ label: "Toko Bunga Bengkayang", category: "Collection", url: "/collections/toko-bunga-bengkayang", images: " ", price: " " },{ label: "Toko Bunga Binjai", category: "Collection", url: "/collections/toko-bunga-binjai", images: " ", price: " " },{ label: "Toko Bunga Bintaro", category: "Collection", url: "/collections/toko-bunga-bintaro", images: " ", price: " " },{ label: "Toko Bunga Blitar", category: "Collection", url: "/collections/toko-bunga-blitar", images: " ", price: " " },{ label: "Toko Bunga Blora", category: "Collection", url: "/collections/toko-bunga-blora", images: " ", price: " " },{ label: "Toko Bunga Bogor", category: "Collection", url: "/collections/toko-bunga-bogor", images: " ", price: " " },{ label: "Toko Bunga Bojonegoro", category: "Collection", url: "/collections/toko-bunga-bojonegoro", images: " ", price: " " },{ label: "Toko Bunga Boyolali", category: "Collection", url: "/collections/toko-bunga-boyolali", images: " ", price: " " },{ label: "Toko Bunga Brebes", category: "Collection", url: "/collections/toko-bunga-brebes", images: " ", price: " " },{ label: "Toko Bunga Bukittinggi", category: "Collection", url: "/collections/toko-bunga-bukittinggi", images: " ", price: " " },{ label: "Toko Bunga Buleleng", category: "Collection", url: "/collections/toko-bunga-buleleng", images: " ", price: " " },{ label: "Toko Bunga Cakung", category: "Collection", url: "/collections/toko-bunga-cakung", images: " ", price: " " },{ label: "Toko Bunga Cawang", category: "Collection", url: "/collections/toko-bunga-cawang", images: " ", price: " " },{ label: "Toko Bunga Cempaka Putih", category: "Collection", url: "/collections/toko-bunga-cempaka-putih", images: " ", price: " " },{ label: "Toko Bunga Cengkareng", category: "Collection", url: "/collections/toko-bunga-cengkareng", images: " ", price: " " },{ label: "Toko Bunga Ciamis", category: "Collection", url: "/collections/toko-bunga-ciamis", images: " ", price: " " },{ label: "Toko Bunga Cianjur", category: "Collection", url: "/collections/toko-bunga-cianjur", images: " ", price: " " },{ label: "Toko Bunga Cibinong", category: "Collection", url: "/collections/toko-bunga-cibinong", images: " ", price: " " },{ label: "Toko Bunga Cibubur", category: "Collection", url: "/collections/toko-bunga-cibubur", images: " ", price: " " },{ label: "Toko Bunga Cijantung", category: "Collection", url: "/collections/toko-bunga-cijantung", images: " ", price: " " },{ label: "Toko Bunga Cikarang", category: "Collection", url: "/collections/toko-bunga-cikarang", images: " ", price: " " },{ label: "Toko Bunga Cikini", category: "Collection", url: "/collections/toko-bunga-cikini", images: " ", price: " " },{ label: "Toko Bunga Cilacap", category: "Collection", url: "/collections/toko-bunga-cilacap", images: " ", price: " " },{ label: "Toko Bunga Cilandak", category: "Collection", url: "/collections/toko-bunga-cilandak", images: " ", price: " " },{ label: "Toko Bunga Cileunyi", category: "Collection", url: "/collections/toko-bunga-cileunyi", images: " ", price: " " },{ label: "Toko Bunga Ciracas", category: "Collection", url: "/collections/toko-bunga-ciracas", images: " ", price: " " },{ label: "Toko Bunga Cirebon", category: "Collection", url: "/collections/toko-bunga-cirebon", images: " ", price: " " }
7787,{ label: "Toko Bunga Ciwidey", category: "Collection", url: "/collections/toko-bunga-ciwidey", images: " ", price: " " },{ label: "Toko Bunga Danau Toba", category: "Collection", url: "/collections/toko-bunga-danau-toba", images: " ", price: " " },{ label: "Toko Bunga Demak", category: "Collection", url: "/collections/toko-bunga-demak", images: " ", price: " " },{ label: "Toko Bunga Denpasar", category: "Collection", url: "/collections/toko-bunga-denpasar", images: " ", price: " " },{ label: "Toko Bunga Depok", category: "Collection", url: "/collections/toko-bunga-depok", images: " ", price: " " },{ label: "Toko Bunga Duren Sawit", category: "Collection", url: "/collections/toko-bunga-duren-sawit", images: " ", price: " " },{ label: "Toko Bunga Garut", category: "Collection", url: "/collections/toko-bunga-garut", images: " ", price: " " },{ label: "Toko Bunga Gianyar", category: "Collection", url: "/collections/toko-bunga-gianyar", images: " ", price: " " },{ label: "Toko Bunga Gowa", category: "Collection", url: "/collections/toko-bunga-gowa", images: " ", price: " " },{ label: "Toko Bunga Gresik", category: "Collection", url: "/collections/toko-bunga-gresik", images: " ", price: " " },{ label: "Toko Bunga Grobogan", category: "Collection", url: "/collections/toko-bunga-grobogan", images: " ", price: " " },{ label: "Toko Bunga Grogol", category: "Collection", url: "/collections/toko-bunga-grogol", images: " ", price: " " },{ label: "Toko Bunga Gunungkidul", category: "Collection", url: "/collections/toko-bunga-gunungkidul", images: " ", price: " " },{ label: "Toko Bunga Indramayu", category: "Collection", url: "/collections/toko-bunga-indramayu", images: " ", price: " " },{ label: "Toko Bunga Jakarta", category: "Collection", url: "/collections/toko-bunga-jakarta", images: " ", price: " " },{ label: "Toko Bunga Jakarta Barat", category: "Collection", url: "/collections/toko-bunga-jakarta-barat", images: " ", price: " " },{ label: "Toko Bunga Jakarta Pusat", category: "Collection", url: "/collections/toko-bunga-jakarta-pusat", images: " ", price: " " },{ label: "Toko Bunga Jakarta Selatan", category: "Collection", url: "/collections/toko-bunga-jakarta-selatan", images: " ", price: " " },{ label: "Toko Bunga Jakarta Timur", category: "Collection", url: "/collections/toko-bunga-jakarta-timur", images: " ", price: " " },{ label: "Toko Bunga Jakarta Utara", category: "Collection", url: "/collections/toko-bunga-jakarta-utara", images: " ", price: " " },{ label: "Toko Bunga Jambi", category: "Collection", url: "/collections/toko-bunga-jambi", images: " ", price: " " },{ label: "Toko Bunga Jatinegara", category: "Collection", url: "/collections/toko-bunga-jatinegara", images: " ", price: " " },{ label: "Toko Bunga Jawa & Bali", category: "Collection", url: "/collections/toko-bunga-jawa-bali", images: " ", price: " " },{ label: "Toko Bunga Jayapura", category: "Collection", url: "/collections/toko-bunga-jayapura", images: " ", price: " " },{ label: "Toko Bunga Jelambar - Florist Onine 24 Jam", category: "Collection", url: "/collections/toko-bunga-jelambar", images: " ", price: " " },{ label: "Toko Bunga Jember", category: "Collection", url: "/collections/toko-bunga-jember", images: " ", price: " " },{ label: "Toko Bunga Jembrana", category: "Collection", url: "/collections/toko-bunga-jembrana", images: " ", price: " " },{ label: "Toko Bunga Jepara", category: "Collection", url: "/collections/toko-bunga-jepara", images: " ", price: " " },{ label: "Toko Bunga Joglo", category: "Collection", url: "/collections/toko-bunga-joglo", images: " ", price: " " },{ label: "Toko Bunga Jombang", category: "Collection", url: "/collections/toko-bunga-jombang", images: " ", price: " " },{ label: "Toko Bunga Kalibata", category: "Collection", url: "/collections/toko-bunga-kalibata", images: " ", price: " " },{ label: "Toko Bunga Kalimantan", category: "Collection", url: "/collections/toko-bunga-kalimantan", images: " ", price: " " },{ label: "Toko Bunga Kalisari Semarang", category: "Collection", url: "/collections/toko-bunga-kalisari-semarang", images: " ", price: " " },{ label: "Toko Bunga Kampung Baru", category: "Collection", url: "/collections/toko-bunga-kampung-baru", images: " ", price: " " },{ label: "Toko Bunga Kapuas", category: "Collection", url: "/collections/toko-bunga-kapuas", images: " ", price: " " },{ label: "Toko Bunga Karanganyar", category: "Collection", url: "/collections/toko-bunga-karanganyar", images: " ", price: " " },{ label: "Toko Bunga Karangasem", category: "Collection", url: "/collections/toko-bunga-karangasem", images: " ", price: " " },{ label: "Toko Bunga Karawang", category: "Collection", url: "/collections/toko-bunga-karawang", images: " ", price: " " },{ label: "Toko Bunga Kartosuro", category: "Collection", url: "/collections/toko-bunga-kartosuro", images: " ", price: " " },{ label: "Toko Bunga Kayoon Surabaya", category: "Collection", url: "/collections/toko-bunga-kayoon-surabaya", images: " ", price: " " },{ label: "Toko Bunga Kebayoran Baru", category: "Collection", url: "/collections/toko-bunga-kebayoran-baru", images: " ", price: " " },{ label: "Toko Bunga Kebon Jeruk", category: "Collection", url: "/collections/toko-bunga-kebon-jeruk", images: " ", price: " " },{ label: "Toko Bunga Kebumen", category: "Collection", url: "/collections/toko-bunga-kebumen", images: " ", price: " " },{ label: "Toko Bunga Kediri", category: "Collection", url: "/collections/toko-bunga-kediri", images: " ", price: " " },{ label: "Toko Bunga Kelapa Gading", category: "Collection", url: "/collections/toko-bunga-kelapa-gading", images: " ", price: " " },{ label: "Toko Bunga Kemayoran", category: "Collection", url: "/collections/toko-bunga-kemayoran", images: " ", price: " " },{ label: "Toko Bunga Kendal", category: "Collection", url: "/collections/toko-bunga-ken
7787dal", images: " ", price: " " },{ label: "Toko Bunga Kendari", category: "Collection", url: "/collections/toko-bunga-kendari", images: " ", price: " " },{ label: "Toko Bunga Ketapang", category: "Collection", url: "/collections/toko-bunga-ketapang", images: " ", price: " " },{ label: "Toko Bunga Klaten", category: "Collection", url: "/collections/toko-bunga-klaten", images: " ", price: " " },{ label: "Toko Bunga Klender", category: "Collection", url: "/collections/toko-bunga-klender", images: " ", price: " " },{ label: "Toko Bunga Kota Baru Yogyakarta", category: "Collection", url: "/collections/toko-bunga-kota-baru-yogyakarta", images: " ", price: " " },{ label: "Toko Bunga Kota Batu", category: "Collection", url: "/collections/toko-bunga-kota-batu", images: " ", price: " " },{ label: "Toko Bunga Kramat Jati", category: "Collection", url: "/collections/toko-bunga-kramat-jati", images: " ", price: " " },{ label: "Toko Bunga Kudus", category: "Collection", url: "/collections/toko-bunga-kudus", images: " ", price: " " },{ label: "Toko Bunga Kupang", category: "Collection", url: "/collections/toko-bunga-kupang", images: " ", price: " " },{ label: "Toko Bunga Lamongan", category: "Collection", url: "/collections/toko-bunga-lamongan", images: " ", price: " " },{ label: "Toko Bunga Langkat", category: "Collection", url: "/collections/toko-bunga-langkat", images: " ", price: " " },{ label: "Toko Bunga Lebak Bulus", category: "Collection", url: "/collections/toko-bunga-lebak-bulus", images: " ", price: " " },{ label: "Toko Bunga Lembang", category: "Collection", url: "/collections/toko-bunga-lembang", images: " ", price: " " },{ label: "Toko Bunga Lenteng Agung", category: "Collection", url: "/collections/toko-bunga-lenteng-agung", images: " ", price: " " },{ label: "Toko Bunga Lombok", category: "Collection", url: "/collections/toko-bunga-lombok", images: " ", price: " " },{ label: "Toko Bunga Lubuk Pakam", category: "Collection", url: "/collections/toko-bunga-lubuk-pakam", images: " ", price: " " },{ label: "Toko Bunga Lumajang", category: "Collection", url: "/collections/toko-bunga-lumajang", images: " ", price: " " },{ label: "Toko Bunga Madiun", category: "Collection", url: "/collections/toko-bunga-madiun", images: " ", price: " " },{ label: "Toko Bunga Magelang", category: "Collection", url: "/collections/toko-bunga-magelang", images: " ", price: " " },{ label: "Toko Bunga Majalengka", category: "Collection", url: "/collections/toko-bunga-majalengka", images: " ", price: " " },{ label: "Toko Bunga Makassar", category: "Collection", url: "/collections/toko-bunga-makassar", images: " ", price: " " },{ label: "Toko Bunga Malang", category: "Collection", url: "/collections/toko-bunga-malang", images: " ", price: " " },{ label: "Toko Bunga Manado", category: "Collection", url: "/collections/toko-bunga-manado", images: " ", price: " " },{ label: "Toko Bunga Mangga Besar", category: "Collection", url: "/collections/toko-bunga-mangga-besar", images: " ", price: " " },{ label: "Toko Bunga Manokwari", category: "Collection", url: "/collections/toko-bunga-manokwari", images: " ", price: " " },{ label: "Toko Bunga Maros", category: "Collection", url: "/collections/toko-bunga-maros", images: " ", price: " " },{ label: "Toko Bunga Mataram", category: "Collection", url: "/collections/toko-bunga-mataram", images: " ", price: " " },{ label: "Toko Bunga Medan", category: "Collection", url: "/collections/toko-bunga-medan", images: " ", price: " " },{ label: "Toko Bunga Mojokerto", category: "Collection", url: "/collections/toko-bunga-mojokerto", images: " ", price: " " },{ label: "Toko Bunga Nganjuk", category: "Collection", url: "/collections/toko-bunga-nganjuk", images: " ", price: " " },{ label: "Toko Bunga Ngawi", category: "Collection", url: "/collections/toko-bunga-ngawi", images: " ", price: " " },{ label: "Toko Bunga Nias", category: "Collection", url: "/collections/toko-bunga-nias", images: " ", price: " " },{ label: "Toko Bunga Nusa Tenggara", category: "Collection", url: "/collections/toko-bunga-nusa-tenggara", images: " ", price: " " },{ label: "Toko Bunga Padang", category: "Collection", url: "/collections/toko-bunga-padang", images: " ", price: " " },{ label: "Toko Bunga Palembang", category: "Collection", url: "/collections/toko-bunga-palembang", images: " ", price: " " },{ label: "Toko Bunga Palu", category: "Collection", url: "/collections/toko-bunga-palu", images: " ", price: " " },{ label: "Toko Bunga Pangkal Pinang", category: "Collection", url: "/collections/toko-bunga-pangkal-pinang", images: " ", price: " " },{ label: "Toko Bunga Papua", category: "Collection", url: "/collections/toko-bunga-papua", images: " ", price: " " },{ label: "Toko Bunga Parepare", category: "Collection", url: "/collections/toko-bunga-parepare", images: " ", price: " " },{ label: "Toko Bunga Pasar Baru", category: "Collection", url: "/collections/toko-bunga-pasar-baru", images: " ", price: " " },{ label: "Toko Bunga Pasar Minggu", category: "Collection", url: "/collections/toko-bunga-pasar-minggu", images: " ", price: " " },{ label: "Toko Bunga Pasar Rebo", category: "Collection", url: "/collections/toko-bunga-pasar-rebo", images: " ", price: " " },{ label: "Toko Bunga Pasuruan", category: "Collection", url: "/collections/toko-bunga-pasuruan", images: " ", price: " " },{ label: "Toko Bunga Pati", category: "Collection", url: "/collections/toko-bunga-pati", images: " ", price: " " },{ label: "Toko Bunga Pekalongan", category: "Collection", url: "/collections/toko-bunga-pekalongan", images: " ", price: " " },{ label: "Toko Bunga Pekanbaru", category: "Collection", url: "/collections/toko-bunga-pekanbaru", images: " ", price: " " },{ label: "Toko Bunga Pemalang", category: "Collection", url: "/collections/toko-bunga-pemalang", images: " ", price: " " }, 7788 { label: "grand salutation jabodetabek", category: "Produk", url: "/products/grand-salutation", images: "//outerbloom.com/cdn/shop/files/JKTCON1005_Grand-Salutation-Jabodetabek-WM_thumb.jpg?v=1703241523", price: "Rp 435.000" },{ label: "consolantibus jabodetabek", category: "Produk", url: "/products/consolantibus", images: "//outerbloom.com/cdn/shop/files/JKTDUK1011_Consolantibus-Jabodetabek-WM_thumb.jpg?v=1703239823", price: "Rp 435.000" },{ label: "classic midnight hand bouquet fiery red", category: "Produk", url: "/products/the-classic-midnight-hand-bouquet-fiery-red", images: "//outerbloom.com/cdn/shop/files/OBVBUN1422_Classic-Midnight-Hand-Bouquet---Fiery-Red-large_thumb.jpg?v=1757302521", price: "Rp 385.000" },{ label: "enchanted dome passionate red", category: "Produk", url: "/products/enchanted-dome-passionate-red", images: "//outerbloom.com/cdn/shop/files/Enchanted-dome-red-new-box_3_2_26c081bf-f2a5-42b4-9ce4-3c0304c498e5_thumb.jpg?v=1712639476", price: "Rp 1.435.000" },{ label: "endearing ruby", category: "Produk", url: "/products/endearing-ruby", images: "//outerbloom.com/cdn/shop/products/OUTSTF1003_Endearing-Ruby_thumb.jpg?v=1631296611", price: "Rp 585.000" },{ label: "gentle soul jabodetabek", category: "Produk", url: "/products/gentle-soul-jabodetabek", images: "//outerbloom.com/cdn/shop/files/JKTDUK1030_Gentle-Soul-Jabodetabek-WM_thumb.jpg?v=1703239894", price: "Rp 435.000" },{ label: "belleza jabodetabek", category: "Produk", url: "/products/belleza", images: "//outerbloom.com/cdn/shop/files/Belleza-Jabodetabek-LED_aecb756a-0737-45cc-8bfb-008515ca0a37_thumb.gif?v=1759229680", price: "Rp 435.000" }
7788,{ label: "majestic pink roses with baby breath bouquet", category: "Produk", url: "/products/majestic-pink-roses-with-baby-breath-bouquet", images: "//outerbloom.com/cdn/shop/products/ef4a3be9-c938-4c70-98ac-4873e7da82bf_90820a66-923a-463d-a464-81bcbe6e6644_thumb.jpg?v=1581413440", price: "Rp 485.000" },{ label: "sentiments jabodetabek", category: "Produk", url: "/products/sentiments", images: "//outerbloom.com/cdn/shop/files/Sentiments-Jabodetabek-WM_thumb.jpg?v=1759224099", price: "Rp 485.000" },{ label: "rose poetry bouquet", category: "Produk", url: "/products/rose-poetry-bouquet", images: "//outerbloom.com/cdn/shop/products/Rose-Poetry-Bouquet-20-tangkai_thumb.jpg?v=1675151039", price: "Rp 385.000" },{ label: "genuine feeling", category: "Produk", url: "/products/genuine-feeling", images: "//outerbloom.com/cdn/shop/products/OUTSTF1004Genuine-Feeling_981ade89-af27-433e-81aa-8d76175a0e4d_thumb.jpg?v=1612352389", price: "Rp 585.000" },{ label: "eternal fidelity jabodetabek", category: "Produk", url: "/products/eternal-fidelity-jabodetabek", images: "//outerbloom.com/cdn/shop/products/0b89df45-dcc1-4876-820e-61b2243a1945_964e211d-2972-46c9-8593-976210929089_thumb.jpg?v=1590491458", price: "Rp 435.000" },{ label: "rosabelle hand bouquet", category: "Produk", url: "/products/rosabelle-hand-bouquet", images: "//outerbloom.com/cdn/shop/files/OBVBUN1429_Rosabelle-Hand-Bouquet-Medium_thumb.jpg?v=1756971848", price: "Rp 385.000" },{ label: "dreaming in pink luxury in vase", category: "Produk", url: "/products/dreaming-in-pink-luxury-in-vase", images: "//outerbloom.com/cdn/shop/products/OBVBUN1051_Dreaming-In-Pink-Luxury-In-Vase_3_thumb.jpg?v=1614594504", price: "Rp 735.000" },{ label: "excito jabodetabek", category: "Produk", url: "/products/excito", images: "//outerbloom.com/cdn/shop/files/JKTCON1010_Excito-Jabodetabek-2023_thumb.gif?v=1717494677", price: "Rp 485.000" },{ label: "golden toast jabodetabek", category: "Produk", url: "/products/golden-toast", images: "//outerbloom.com/cdn/shop/products/LED-GoldenToast_thumb.gif?v=1579249585", price: "Rp 485.000" },{ label: "spirit of eminance jabodetabek", category: "Produk", url: "/products/spirit-of-eminance-jabodetabek", images: "//outerbloom.com/cdn/shop/files/JKTCON1026_Spirit-of-Eminance-Jabodetabek-newest-WM_thumb.jpg?v=1693297526", price: "Rp 485.000" },{ label: "white elysian bloom box", category: "Produk", url: "/products/white-elysian-bloom-box", images: "//outerbloom.com/cdn/shop/files/OBVBUN1704_White-Elysian-Bloom-Box_thumb.jpg?v=1757328247", price: "Rp 685.000" },{ label: "charming forevermore jabodetabek", category: "Produk", url: "/products/charming-forevermore-jabodetabek", images: "//outerbloom.com/cdn/shop/files/JKTWED1036_Charming-Forevermore-Jabodetabek-WM_thumb.jpg?v=1703239534", price: "Rp 485.000" },{ label: "moment of glory jabodetabek", category: "Produk", url: "/products/moment-of-glory-jabodetabek", images: "//outerbloom.com/cdn/shop/products/JKTCON1051_Moment-of-Glory-Jabodetabek_2_thumb.jpg?v=1596614663", price: "Rp 385.000" },{ label: "sweet romance jabodetabek", category: "Produk", url: "/products/sweet-romance", images: "//outerbloom.com/cdn/shop/products/JKTWED1005_Sweet-Romance-Jabodetabek_thumb.gif?v=1677134791", price: "Rp 635.000" },{ label: "with love bouquet", category: "Produk", url: "/products/with-love-bouquet", images: "//outerbloom.com/cdn/shop/products/c5d6fed6-8ada-4c38-ae0f-36d395aacb19_613f78f0-d52c-443b-9e13-63a151cd8ec5_thumb.jpg?v=1590748429", price: "Rp 535.000" },{ label: "sunflower yellow and with white daisies in vase", category: "Produk", url: "/products/sunflower-yellow-roses-with-white-and-yellow-daisies-in-a-glass-vase", images: "//outerbloom.com/cdn/shop/files/OBVBUN1132_Sunflower-Yellow-And-With-White-Daisies-in-Vase_thumb.jpg?v=1757930628", price: "Rp 435.000" },{ label: "everlasting peace jabodetabek", category: "Produk", url: "/products/everlasting-peace-jabodetabek", images: "//outerbloom.com/cdn/shop/products/JKTDUK1034_Everlasting-Peace-Jabodetabek_2_thumb.jpg?v=1596614613", price: "Rp 385.000" },{ label: "astoria passionate red", category: "Produk", url: "/products/astoria-passionate-red", images: "//outerbloom.com/cdn/shop/products/Astoria-passionate-red_b59b26f6-c39d-46d3-adcb-262c675bb16f_thumb.jpg?v=1633502742", price: "Rp 685.000" },{ label: "classic purple orchid majesty in vase", category: "Produk", url: "/products/classic-purple-orchid-majesty-in-vase", images: "//outerbloom.com/cdn/shop/products/Classic-Purple-Orchid-Majesty-in-Vase---White---4-Tangkai_40a5e337-283f-40f5-911c-5df9b506b9da_thumb.jpg?v=1639981404", price: "Rp 435.000" },{ label: "passion rouge bloom box", category: "Produk", url: "/products/passion-rouge-bloom-box", images: "//outerbloom.com/cdn/shop/files/OBVBUN1725_Passion-Rouge-Bloom-Box_thumb.jpg?v=1756972410", price: "Rp 385.000" },{ label: "classic white orchid majesty in vase", category: "Produk", url: "/products/classic-white-orchid-majesty-in-vase", images: "//outerbloom.com/cdn/shop/products/Classic-white-Orchid-Majesty-in-Vase---white---4-Tangkai_thumb.jpg?v=1644205542", price: "Rp 435.000" }
7788,{ label: "majestic blue romance bouquet", category: "Produk", url: "/products/majestic-blue-romance-bouquet", images: "//outerbloom.com/cdn/shop/files/OBVBUN1357_Majestic-Blue-Romance-Bouquet_99b8ba96-0e67-4eef-a00e-b2daedcddb6a_thumb.jpg?v=1757390540", price: "Rp 435.000" },{ label: "sincerely", category: "Produk", url: "/products/sincerely", images: "//outerbloom.com/cdn/shop/files/Sincerely-WM_thumb.jpg?v=1688354677", price: "Rp 585.000" },{ label: "happy days jabodetabek", category: "Produk", url: "/products/happy-days-jabodetabek", images: "//outerbloom.com/cdn/shop/files/Happy-Days-Jabodetabek_WM_thumb.jpg?v=1759224026", price: "Rp 485.000" },{ label: "solemn comfort jabodetabek", category: "Produk", url: "/products/solemn-comfort-jabodetabek", images: "//outerbloom.com/cdn/shop/products/7fe123d8-6bb2-4c0d-bd4c-f8c3032823f2_6b9c33b6-4a23-41cb-8709-fc9223fe096a_thumb.png?v=1590662086", price: "Rp 635.000" },{ label: "big dreams jabodetabek", category: "Produk", url: "/products/big-dreams", images: "//outerbloom.com/cdn/shop/files/JKTCON1002_Big-Dreams-Jabodetabek_thumb.gif?v=1717494603", price: "Rp 485.000" },{ label: "signature ramadan deluxe hampers", category: "Produk", url: "/products/outerbloom-signature-ramadhan-deluxe-hampers", images: "//outerbloom.com/cdn/shop/files/Signature-Deluxe-Hampers_thumb.jpg?v=1739242254", price: "Rp 985.000" },{ label: "amorous amos jabodetabek", category: "Produk", url: "/products/amorous-amos-jabodetabek", images: "//outerbloom.com/cdn/shop/files/Amorous-Amos-Jabodetabek-WM_thumb.jpg?v=1759224071", price: "Rp 485.000" },{ label: "pink darling bouquet", category: "Produk", url: "/products/pink-darling-bouquet", images: "//outerbloom.com/cdn/shop/products/Pink-Darling-Bouquet_thumb.jpg?v=1669969725", price: "Rp 485.000" },{ label: "black pink bouquet", category: "Produk", url: "/products/black-pink-bouquet", images: "//outerbloom.com/cdn/shop/files/Black-Pink-Bouquet_thumb.jpg?v=1756434063", price: "Rp 485.000" },{ label: "profound happiness jabodetabek", category: "Produk", url: "/products/profound-happiness-jabodetabek", images: "//outerbloom.com/cdn/shop/files/profound-happiness_thumb.gif?v=1689940309", price: "Rp 635.000" },{ label: "healing trove", category: "Produk", url: "/products/healing-trove", images: "//outerbloom.com/cdn/shop/products/2ef5379f-27a6-41ba-85c7-c65cf3ec3f08_thumb.jpg?v=1571471845", price: "Rp 485.000" },{ label: "sincerity solace", category: "Produk", url: "/products/sincerity-solace", images: "//outerbloom.com/cdn/shop/products/OUTSTF1038_sincerity-solace-WM_thumb.jpg?v=1612352477", price: "Rp 485.000" },{ label: "bellarosa bloom box", category: "Produk", url: "/products/bellarosa-bloom-box", images: "//outerbloom.com/cdn/shop/files/OBVBUN1783_Bellarosa-Bloom-Box_c0000424-411c-48ed-abf4-0de7d925ea53_thumb.jpg?v=1757316757", price: "Rp 785.000" } 7789 ]; 7790 7791 7792 $( ".header-input-search" ).catcomplete({ 7793 appendTo: ".searchResult",source: function(request, response) { 7794 var results = $.ui.autocomplete.filter(data, request.term); 7795 var predicate = function () { 7796 var counter = { Collection: 0, Produk: 0 }; 7797 var fn = function(item) {counter[item.category] += 1;return (counter[item.category] <= 5);} 7798 return fn 7799 }(); 7800 response(results.filter(predicate)); 7801 }, 7802 minLength:1, 7803 //results are clickable 7804 select: function( event, ui ) {window.location = ui.item.url;} 7805 }); 7806 $( ".header-input-search2" ).catcomplete({ 7807 appendTo: ".searchResult2", 7808 source: function(request, response) { 7809 var results = $.ui.autocomplete.filter(data, request.term); 7810 var predicate = function () { 7811 var counter = { Collection: 0, Produk: 0 }; 7812 var fn = function(item) { 7813 counter[item.category] += 1; 7814 return (counter[item.category] <= 5); 7815 } 7816 return fn 7817 }(); 7818 response(results.filter(predicate)); 7819 }, 7820 minLength:1, 7821 //results are clickable 7822 select: function( event, ui ) { 7823 window.location = ui.item.url; 7824 } 7825 }); 7826 }); 7827 </script>
7827 7828 7829
7829<script src="//outerbloom.com/cdn/shop/t/138/assets/vendors.js?v=6349622868601634021752652419" defer></script>
7829 7830
7830<script src="//outerbloom.com/cdn/shop/t/138/assets/app.js?v=136050180318808583701752652452" defer></script>
7830 7831 7832
7832<script> 7833 ( function() { 7834 var youtube = document.querySelectorAll( ".youtube" ); 7835 for (var i = 0; i < youtube.length; i++) { 7836 var source = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault_1x.jpg"; 7837 var datasource = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault.jpg"; 7838 var image = new Image(); 7839 image.src = source; 7840 image.setAttribute("data-src", datasource); 7841 image.classList.add("swiper-lazy"); 7842 image.addEventListener( "load", function() { 7843 youtube[ i ].appendChild( image ); 7844 }( i ) ); 7845 youtube[i].addEventListener( "click", function() { 7846 var iframe = document.createElement( "iframe" ); 7847 iframe.setAttribute( "width", "480" ); 7848 iframe.setAttribute( "height", "480" ); 7849 iframe.setAttribute( "frameborder", "0" ); 7850 iframe.setAttribute( "allowfullscreen", "" ); 7851 iframe.setAttribute( "src", "https://www.youtube.com/embed/"+ this.dataset.embed +"?rel=0&showinfo=0&autoplay=1" ); 7852 this.innerHTML = ""; 7853 this.appendChild( iframe ); 7854 } ); 7855 }; 7856 7857 } )(); 7858 7859 /* Lazy Load */ 7860 const mainLazyLoad = new LazyLoad({threshold:400}); 7861 $(document).ready(function(){ 7862 7863 $("selectxxx").addClass("needsclick"); 7864 FastClick.attach(document.body); 7865 7866 var $customSelects = $('.select-search'); 7867 $customSelects.select2({ 7868 templateResult: function(result, container) { 7869 if (!result.id) { 7870 return result.text; 7871 } 7872 container.className += ' needsclick'; 7873 return result.text; 7874 } 7875 }); 7876 $customSelects.each(function(index, el){$(el).data('select2').$container.find('*').addClass('needsclick');}); 7877 $(document).on('select2:open', () => { 7878 document.querySelector('.select2-search__field').focus(); 7879 }); 7880 7881 7882 $(".overlay").click(function(){ 7883 $(".js-drawer-close").click(); 7884 }); 7885 $(".site-nav--mobile .js-drawer-open-left, #NavDrawer .icon-close, .overlay-nav").click(function(){ 7886 $("html").toggleClass("nav_open"); 7887 }); 7888 7889 $('.swatch-element label').on('click', function(){ 7890 var srcImg = $(this).data('src'); 7891 $('#thumb-image-product .product-single__thumbnail').each(function(){ 7892 if ($(this).attr("href") == srcImg) { 7893 $(this).trigger('click'); 7894 } 7895 }); 7896 }); 7897 var defaultValue = $(".swatch input:checked").val() 7898 7899 $('#purchaseProduct .swatch [type=radio]').change(function() { 7900 var optionIndex = $(this).closest('.swatch').attr('data-option-index'); 7901 var optionValue = $(this).val(); 7902 console.log(optionIndex, optionValue) 7903 var value = parseInt(optionValue.split(' ')[0]) 7904 $(this) 7905 .closest('#purchaseProduct') 7906 .find('.single-option-selector') 7907 .eq(optionIndex) 7908 .val(optionValue) 7909 .trigger('change'); 7910 7911 }); 7912 7913 }); 7914 $(document).ready(function(){ 7915 $(".nav-search a").click(function(e){ 7916 e.preventDefault(); 7917 $(".icon-navsearch").toggle(); 7918 $(".icon-navclose").toggle(); 7919 $(".site-nav__item > .site-nav__link").toggle(); 7920 $(".open-search").toggle(); 7921 $(".open-search input").focus(); 7922 }); 7923 $(".best-price-guarantee").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/logo-best-price-guarantee-grid_75x.png?v=72489032173169839651752652420' alt='Logo Best Price Guarantee'>"); 7924 if ($(window).width() < 768) { 7925 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_75x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 7926 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_45x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 7927 $(".bg-products .label-tag.free-valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-valentine_150x.png?v=171641187769238175351752652421' alt='Icon Free Valentine'>"); 7928 } else { 7929 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_60x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 7930 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_60x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 7931 $(".bg-products .label-tag.free-valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-valentine_200x.png?v=171641187769238175351752652421' alt='Icon Free Valentine'>"); 7932 } 7933 $(".bg-products .label-tag.free-cookies").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-cookies_80x.png?51468' alt='Icon Free Cookies'>"); 7934 $(".bg-products .label-tag.mothersday").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/mothers-day_70x.png?v=171373711354766377891752652419' alt='Icon Mothers day'>"); 7935 }); 7936 </script>
7936 7937 7938 7939 7940 7941 7942 7943 7944
7944<script type="text/javascript"> 7945 var wishlistpage = 0; 7946 7947 var quickShop_money_format="<span class='money'>"+"Rp {{amount_no_decimals}}"+"</span>"; 7948 </script>
7948 7949 7950 <!-- Remove duplicate wishlist.js reference --> 7951 <style> 7952 .fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999999;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.fade.in{opacity:1}.modal-open .modal{overflow-x:hidden;overflow-y:auto;z-index:999999;background-color:rgba(0,0,0,.3)}.modal-dialog{position:relative;width:auto;margin:10px}.wishlist-model .modal-dialog{width:700px}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.wishlist-model .modal-content{}.wishlist-model .modal-header{min-height:0;padding:0;border-bottom:0}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #121212;filter:alpha(opacity=20);opacity:.2}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-header .close{margin-top:-2px}.wishlist-model .close{position:absolute;top:-10px;right:-10px;background:#fff;opacity:1;width:30px;height:30px;font-size:15px;border-radius:50%;z-index:10;box-shadow:0 1px 4px 0 #121212}.wishlist-model .close .icon-close{width:25px;height:25px}.modal-body{position:relative;padding:15px}.wishlist-model .modal-body{padding:0 30px;display:flex}.wishlist-model .wishlist-left{width:66.67%;border-right:1px solid #ccc;padding:30px 0}.wishlist-model .wishlist-note{position:relative;display:inline-block;margin-bottom:20px;margin-left:35px;border-bottom:1px solid #121212;color:#121212}.wishlist-model .wishlist-note a{color: #ffffff;}.wishlist-model .wishlist-note .cirle{position:absolute;top:-4px;left:-35px;width:25px;height:25px;color:#fff;background:#121212;line-height:25px;border-radius:50%;text-align:center}.wishlist-model .wishlist-note svg{fill:#fff}.wishlist-model .wishlist-note .cirle .icon-check{vertical-align:middle}.wishlist-model .product-left{width:33.33%;float:left;margin-right:30px}.wishlist-model .wishlist-image{overflow:hidden}.wishlist-model .wishlist-image img{transition:all .3s linear}.wishlist-model .wishlist-name{padding:0;margin-bottom:10px}.wishlist-model .wishlist-name a{color: #ffffff;}.wishlist-model .wishlist-price{margin-bottom:10px}.wishlist-model .wishlist-price .price{font-weight:700;margin-right:10px;font-size:15px}.wishlist-model .wishlist-price .price_compare{color:#ccc}.wishlist-model .wishlist-right{width:33.33%;padding:30px 0;padding-left:30px}.wishlist-model .btn-quick-shop{width:100%;border-color:#121212;background:#fff;color:#121212;padding:0 30px;transition:all .2s linear;height:36px;margin-bottom:10px;text-transform:uppercase}.wishlist-model .btn-cta{width:100%;font-size:1em;border-color:#ffffff;background:#ffffff;color:#fff;padding:0;transition:all .2s linear;height:36px;line-height:36px;margin-bottom:10px}.wishlist-model .quantity-content{text-align:center}.wishlist-model .quantity-content input{outline:none;text-align:center;font-weight:600;border:1px solid #121212}.wishlist-model .quantity-content button{border-color:#121212}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}} 7953 </style> 7954 7955 <div class="modal fade" id="modalwishlist0" tabindex="-1" role="dialog"> 7956 <div class="modal-dialog" role="document"> 7957 <div class="modal-content"> 7958 <div class="modal-body">Your Wishlist is empty!</div> 7959 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> 7960 </div> 7961 </div> 7962 </div> 7963 7964 <div class="wishlist-model"> 7965 <div class="modal fade" id="modalwishlist1" tabindex="-1" role="dialog" aria-hidden="true"> 7966 <div class="modal-dialog white-modal"> 7967 <div class="modal-content"> 7968 <div class="modal-header"> 7969 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 7970 <svg class="icon icon-close" version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="32" height="32" viewBox="0 0 32 32"> 7971 <title>icon-close</title> 7972 <path d="M16.943 16l8.862 8.862c0.26 0.26 0.26 0.682 0 0.943s-0.682 0.26-0.943 0l-8.862-8.862-8.862 8.862c-0.26 0.26-0.682 0.26-0.943 0s-0.26-0.682 0-0.943l8.862-8.862-8.862-8.862c-0.26-0.26-0.26-0.682 0-0.943s0.682-0.26 0.943 0l8.862 8.862 8.862-8.862c0.26-0.26 0.682-0.26 0.943 0s0.26 0.682 0 0.943l-8.862 8.862z"></path> 7973 </svg> 7974 </button> 7975 </div> 7976 <div class="modal-body"> 7977 <div class="wishlist-left"> 7978 <div class="wishlist-note">
7979 <span class="cirle"><svg version="1.1" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="32" height="32" viewBox="0 0 32 32"> 7980 <title>icon-check</title> 7981 <path d="M12 21.766l14.218-12.926c0.272-0.248 0.694-0.228 0.942 0.045s0.228 0.694-0.045 0.942l-14.667 13.333c-0.254 0.231-0.643 0.231-0.897 0l-6.667-6.061c-0.272-0.248-0.293-0.669-0.045-0.942s0.669-0.293 0.942-0.045l6.218 5.653z"></path> 7982 </svg></span> 7983 Product added to <a href="/pages/wish-list">Wishlist</a> 7984 </div> 7985 <div class="wishlist-product"> 7986 <div class="product-left"> 7987 <div class="wishlist-image"></div> 7988 </div> 7989 <div class="product-right"> 7990 <div class="wishlist-name"></div> 7991 <div class="wishlist-price"></div> 7992 </div> 7993 </div> 7994 </div> 7995 <div class="wishlist-right"> 7996 <div class="wishlist-cart"> 7997 <form action="/cart/add" method="post" class="variants-form variants" id="AddToCartForm" enctype="multipart/form-data"> 7998 <div class="others-bottom"> 7999 <a class="btn btn-quick-shop" href="/pages/wish-list">View Wishlist</a> 8000 <button type="submit" name="add" id="AddToCart" class="btn btn-cta"> 8001 <span id="AddToCartText" class="">Beli Sekarang</span> 8002 </button> 8003 </div> 8004 <div id="wishlist-variants-container" class="variants-wrapper"></div> 8005 <div class="quantity-content"> 8006 <label>QTY</label> 8007 <input type="number" size="5" class="" name="quantity" value="1" /> 8008 </div> 8009 </form> 8010 </div> 8011 </div> 8012 </div> 8013 </div> 8014 </div> 8015 </div> 8016 </div> 8017 8018 8019 <style> 8020 .stamped-badge[data-rating="0.0"]{display: none !Important;} 8021 8022 div[data-load-type="continue"] ul.stamped-pagination li.next a, div[data-widget-load-type="continue"] ul.stamped-pagination li.next a { 8023 border-radius: 0px; 8024 } 8025 .stamped-review-body { 8026 padding-left: 0px !important; 8027 } 8028 #product-reviews .stamped-header:after { 8029 display:none !Important; 8030 } 8031 #stamped-main-widget .stamped-container, .stamped-badge-caption,#stamped-reviews-widget { 8032 font-family:inherit !important; 8033 } 8034 </style> 8035 8036 8037 8038 <div id='stamped-rewards-init' class='stamped-rewards-init' 8039 data-key-public='' 8040 8041 ></div> 8042 8043
8043<script src="//outerbloom.com/cdn/shop/t/138/assets/variant-sku-handler.js?v=91239063692820757781752652418" defer></script>
8043 8044 <!-- Remove duplicate jQuery reference and load wishlist script properly --> 8045
8045<script src="//outerbloom.com/cdn/shop/t/138/assets/wishlist-fixed.js?v=35991423018869066281754360012" defer></script>
8045 8046 8047
8047<script> 8048 function myInit(){ StampedFn.init({ apiKey: 'pubkey-hCS8DHE9QbBHhHN89WXFkuJ0Y3422D', sId: '23462' }); } 8049 </script>
8049 8050
8050<script async onload="myInit()" type="text/javascript" src="https://cdn1.stamped.io/files/widget.min.js"></script>
8050<style> 8051 .jss59 { 8052 background-color: rgba(0, 0, 0, 0.6); 8053 } 8054 .MuiBackdrop-root { 8055 top: 0; 8056 left: 0; 8057 right: 0; 8058 bottom: 0; 8059 display: flex; 8060 z-index: -1; 8061 position: fixed; 8062 align-items: center; 8063 justify-content: center; 8064 background-color: rgba(0, 0, 0, 0.5); 8065 -webkit-tap-highlight-color: transparent; 8066 } 8067 .MuiDialog-scrollPaper { 8068 display: flex; 8069 align-items: center; 8070 justify-content: center; 8071 } 8072 .MuiDialog-container { 8073 height: 100%; 8074 outline: 0; 8075 } 8076 .MuiPaper-elevation24 { 8077 box-shadow: 0px 11px 15px -7px rgba(0,0,0,0.2), 0px 24px 38px 3px rgba(0,0,0,0.14), 0px 9px 46px 8px rgba(0,0,0,0.12); 8078 } 8079 .MuiDialog-paper { 8080 margin: 32px; 8081 position: relative; 8082 overflow-y: auto; 8083 } 8084 .MuiDialog-paperScrollPaper { 8085 display: flex; 8086 max-height: calc(100% - 64px); 8087 flex-direction: column; 8088 } 8089 .MuiDialog-paperWidthSm { 8090 max-width: 600px; 8091 } 8092 #location-lock-dialog { 8093 top: 20%; 8094 left: 0; 8095 right: 0; 8096 width: 30%; 8097 margin: 0px auto; 8098 display: block; 8099 padding: 30px; 8100 z-index: 99999; 8101 position: fixed; 8102 font-size: 14px; 8103 background: rgb(0, 0, 0); 8104 box-shadow: rgba(11, 11, 12, 0.2) 2px 4px 5px 0px; 8105 text-align: center; 8106 font-family: Roboto, Arial, sans-serif; 8107 line-height: 1; 8108 border-radius: 8px; 8109 -webkit-font-smoothing: subpixel-antialiased; 8110 } 8111 .MuiButtonBase-root { 8112 color: inherit; 8113 border: 0; 8114 cursor: pointer; 8115 margin: 0; 8116 display: inline-flex; 8117 outline: 0; 8118 padding: 0; 8119 position: relative; 8120 align-items: center; 8121 user-select: none; 8122 border-radius: 0; 8123 vertical-align: middle; 8124 -moz-appearance: none; 8125 justify-content: center; 8126 text-decoration: none; 8127 background-color: transparent; 8128 -webkit-appearance: none; 8129 -webkit-tap-highlight-color: transparent; 8130 } 8131 .MuiIconButton-root { 8132 flex: 0 0 auto; 8133 color: rgba(0, 0, 0, 0.54); 8134 padding: 12px; 8135 overflow: visible; 8136 font-size: 1.5rem; 8137 text-align: center; 8138 transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8139 border-radius: 50%; 8140 } 8141 .MuiIconButton-label { 8142 width: 100%; 8143 display: flex; 8144 align-items: inherit; 8145 justify-content: inherit; 8146 } 8147 .MuiSvgIcon-root { 8148 fill: currentColor; 8149 width: 1em; 8150 height: 1em; 8151 display: inline-block; 8152 font-size: 1.5rem; 8153 transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8154 flex-shrink: 0; 8155 user-select: none; 8156 } 8157 .MuiTouchRipple-root { 8158 top: 0; 8159 left: 0; 8160 right: 0; 8161 bottom: 0; 8162 z-index: 0; 8163 overflow: hidden; 8164 position: absolute; 8165 border-radius: inherit; 8166 pointer-events: none; 8167 } 8168 .jss36 { 8169 color: #222222; 8170 font-size: 24px; 8171 font-family: Roboto, Arial, sans-serif; 8172 font-weight: 500; 8173 } 8174 .jss37 { 8175 color: #555555; 8176 padding: 10px 0px 0px; 8177 font-size: 14px; 8178 } 8179 .MuiFormGroup-root { 8180 display: flex; 8181 flex-wrap: wrap; 8182 flex-direction: column; 8183 } 8184 .MuiFormGroup-row { 8185 flex-direction: row; 8186 } 8187 .jss63 { 8188 width: 85%; 8189 margin: 15px auto; 8190 display: flex; 8191 padding: 11px 0px 0px; 8192 justify-content: space-evenly; 8193 } 8194 .MuiFormControlLabel-root { 8195 cursor: pointer; 8196 display: inline-flex; 8197 align-items: center; 8198 margin-left: -11px; 8199 margin-right: 16px; 8200 vertical-align: middle; 8201 -webkit-tap-highlight-color: transparent; 8202 } 8203 .jss70 { 8204 margin: 0; 8205 } 8206 .MuiButtonBase-root { 8207 color: inherit; 8208 border: 0; 8209 cursor: pointer; 8210 margin: 0; 8211 display: inline-flex; 8212 outline: 0; 8213 padding: 0; 8214 position: relative; 8215 align-items: center; 8216 user-select: none; 8217 border-radius: 0; 8218 vertical-align: middle; 8219 -moz-appearance: none; 8220 justify-content: center; 8221 text-decoration: none; 8222 background-color: transparent; 8223 -webkit-appearance: none; 8224 -webkit-tap-highlight-color: transparent; 8225 } 8226 .MuiIconButton-root { 8227 flex: 0 0 auto; 8228 color: rgba(0, 0, 0, 0.54); 8229 padding: 12px; 8230 overflow: visible; 8231 font-size: 1.5rem; 8232 text-align: center; 8233 transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8234 border-radius: 50%; 8235 } 8236 .MuiIconButton-colorSecondary { 8237 color: #f50057; 8238 } 8239 .jss71 { 8240 padding: 9px; 8241 } 8242 .MuiRadio-root { 8243 color: rgba(0, 0, 0, 0.54); 8244 } 8245 .jss64 { 8246 padding: 2px; 8247 } 8248 .MuiRadio-colorSecondary.Mui-checked { 8249 color: #f50057; 8250 } 8251 .MuiIconButton-label { 8252 width: 100%; 8253 display: flex; 8254 align-items: inherit; 8255 justify-content: inherit; 8256 } 8257 .MuiTypography-root { 8258 margin: 0; 8259 } 8260 .MuiTypography-body1 { 8261 font-size: 18px; 8262 font-family: Roboto,sans-serif; 8263 font-weight: 400; 8264 line-height: 1.5; 8265 } 8266 .location-popup_area-block__sp9Ws { 8267 display: -moz-box; 8268 display: flex; 8269 -moz-box-orient: vertical; 8270 -moz-box-direction: normal; 8271 flex-direction: column; 8272 -moz-box-pack: center; 8273 justify-content: center; 8274 position: relative; 8275 margin: 10px 10% 0;
8276 } 8277 .location-popup_pin-search-box__3l5mJ { 8278 width: 100%; 8279 display: -moz-box; 8280 display: flex; 8281 -moz-box-align: center; 8282 align-items: center; 8283 } 8284 .location-popup_place-icon-city__1XAX5, .location-popup_place-icon__jSG0Q { 8285 position: absolute; 8286 z-index: 999; 8287 } 8288 .location-popup_place-icon__jSG0Q { 8289 color: #ffffff; 8290 padding-left: 8px; 8291 } 8292 .location-popup_place-icon__jSG0Q svg { 8293 width: 18px; 8294 height: 18px; 8295 } 8296 .location-popup_cancel-icon__FHujU { 8297 color: #fff; 8298 right: 10px; 8299 width: 16px; 8300 cursor: pointer; 8301 height: 16px; 8302 display: none; 8303 padding: 5px; 8304 position: absolute; 8305 background: #999; 8306 text-align: center; 8307 border-radius: 50%; 8308 } 8309 .location-popup_pin-search-box__3l5mJ>div>select { 8310 /* -webkit-box-shadow: 0 0 10px #ffffff; 8311 box-shadow: 0 0 10px #ffffff; */ 8312 text-transform: capitalize; 8313 border: 1px solid #ffffff; 8314 color: #ffffff; 8315 width: 100%; 8316 margin: 0; 8317 display: -moz-box; 8318 display: flex; 8319 padding: 0 30px; 8320 -webkit-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 8321 -moz-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 8322 animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 8323 font-size: 16px; 8324 border-radius: 4px; 8325 height: 44px; 8326 moz-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite; 8327 webkit-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite; 8328 } 8329 .MuiButtonBase-root { 8330 color: inherit; 8331 border: 0; 8332 cursor: pointer; 8333 margin: 0; 8334 display: inline-flex; 8335 outline: 0; 8336 padding: 0; 8337 position: relative; 8338 align-items: center; 8339 user-select: none; 8340 border-radius: 0; 8341 vertical-align: middle; 8342 -moz-appearance: none; 8343 justify-content: center; 8344 text-decoration: none; 8345 background-color: transparent; 8346 -webkit-appearance: none; 8347 -webkit-tap-highlight-color: transparent; 8348 } 8349 .MuiButton-root { 8350 color: rgba(0, 0, 0, 0.87); 8351 padding: 6px 16px; 8352 font-size: 0.875rem; 8353 min-width: 64px; 8354 box-sizing: border-box; 8355 transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,border 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8356 font-family: Roboto,sans-serif; 8357 font-weight: 500; 8358 line-height: 1.75; 8359 border-radius: 4px; 8360 text-transform: uppercase; 8361 } 8362 .MuiButton-contained { 8363 color: rgba(0, 0, 0, 0.87); 8364 box-shadow: 0px 3px 1px -2px rgba(0,0,0,0.2), 0px 2px 2px 0px rgba(0,0,0,0.14), 0px 1px 5px 0px rgba(0,0,0,0.12); 8365 background-color: #e0e0e0; 8366 } 8367 .MuiButtonBase-root.Mui-disabled { 8368 cursor: default; 8369 pointer-events: none; 8370 } 8371 .MuiButton-label { 8372 width: 100%; 8373 display: inherit; 8374 align-items: inherit; 8375 justify-content: inherit; 8376 } 8377 .cartButton_login_content__2j1f7 { 8378 display: -moz-box; 8379 display: flex; 8380 text-align: center; 8381 z-index: 9; 8382 font-size: 18px; 8383 font-weight: 500; 8384 color: #fff; 8385 } 8386 8387 .jss35 { 8388 top: 5px; 8389 right: 5px; 8390 padding: 4px; 8391 position: absolute; 8392 border-radius: 50%; 8393 } 8394 .jss67 { 8395 cursor: pointer; 8396 font-size: 15px; 8397 line-height: 1.3; 8398 padding-left: 5px; 8399 } 8400 .jss69 { 8401 color: #222222; 8402 } 8403 .jss80 { 8404 color: #fff; 8405 width: 100%; 8406 height: 52px; 8407 padding: 11px 16px; 8408 font-size: 18px; 8409 min-width: 88px; 8410 min-height: 36px; 8411 transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8412 font-weight: 500; 8413 line-weight: 1em; 8414 border-radius: 4px; 8415 text-transform: uppercase; 8416 background-color: #E87325; 8417 } 8418 @media (min-width: 991px){ 8419 .cartButton_login_content__2j1f7 { 8420 font-weight: 500; 8421 } 8422 } 8423 8424 @media (max-width: 992px) { 8425 #location-lock-dialog { 8426 width: 100%; 8427 top: auto; 8428 bottom: 0; 8429 padding-left: 0; 8430 padding-right: 0; 8431 } 8432 .MuiFormGroup-row { 8433 display: block 8434 } 8435 .MuiIconButton-label input { 8436 margin: 0; 8437 } 8438 } 8439 </style> 8440 <div role="presentation" class="MuiDialog-root jss34" style="display: none;position: fixed; z-index: 9999; inset: 0px;"> 8441 <div class="MuiBackdrop-root" aria-hidden="true" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"></div> 8442 <div tabindex="0" data-test="sentinelStart"></div> 8443 <div class="MuiDialog-container MuiDialog-scrollPaper" role="none presentation" tabindex="-1" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"> 8444 <div class="MuiPaper-root MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiPaper-elevation24 MuiPaper-rounded" role="dialog"> 8445 <div class="jss31 undefined" id="location-lock-dialog"> 8446 <button id="close-popup-delivery" class="MuiButtonBase-root MuiIconButton-root jss35" tabindex="0" type="button" aria-label="close">
8447 <span class="MuiIconButton-label"> 8448 <svg class="MuiSvgIcon-root" focusable="false" viewBox="0 0 24 24" aria-hidden="true"> 8449 <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path> 8450 </svg> 8451 </span> 8452 <span class="MuiTouchRipple-root"></span> 8453 </button> 8454 <div> 8455 <div class="jss36">Select Delivery Location</div> 8456 <div class="jss37">Select a delivery location to see product availability</div> 8457 </div> 8458 <div class="MuiFormGroup-root jss63 MuiFormGroup-row" role="radiogroup"> 8459 <label for="jabodetabek" class="MuiFormControlLabel-root jss45"> 8460 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 jss47 Mui-checked MuiIconButton-colorSecondary" aria-disabled="false"> 8461 <span class="MuiIconButton-label"> 8462 <input id="jabodetabek" class="jss49" type="radio" value="Jabodetabek" checked="" name="location"> 8463 <span class="jss41"></span> 8464 </span> 8465 <span class="MuiTouchRipple-root"></span> 8466 </span> 8467 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 8468 <span class="jss67 jss69">Jabodetabek</span> 8469 </span> 8470 </label> 8471 <label for="non-jabodetabek" class="MuiFormControlLabel-root jss45"> 8472 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 MuiIconButton-colorSecondary" aria-disabled="false"> 8473 <span class="MuiIconButton-label"> 8474 <input id="non-jabodetabek" class="jss49" type="radio" value="Outside Jabodetabek" name="location"> 8475 <span class="jss40"></span> 8476 </span> 8477 <span class="MuiTouchRipple-root"></span> 8478 </span> 8479 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 8480 <span class="jss67 jss68">Outside Jabodetabek</span> 8481 </span> 8482 </label> 8483 </div> 8484 <div> 8485 <div class="MuiGrid-root location-popup_area-block__sp9Ws"> 8486 <div class="MuiGrid-root location-popup_pin-search-box__3l5mJ false"> 8487 <div class="MuiGrid-root location-popup_place-icon__jSG0Q"> 8488 <svg class="MuiSvgIcon-root jss6" focusable="false" viewBox="0 0 24 24" aria-hidden="true" style="font-size:16px"><path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path></svg> 8489 </div> 8490 <div class="MuiGrid-root location-popup_cancel-icon__FHujU false"> 8491 <i class="material-icons location-popup_clear-pin__s1dRc">close</i> 8492 </div> 8493 <div style="width: 100%;"> 8494 <select id="choose-location" class="form-control"> 8495 <option value="">Choose Location</option> 8496 <option value="jakarta">Jakarta</option> 8497 <option value="bogor">Bogor</option> 8498 <option value="depok">Depok</option> 8499 <option value="tangerang">Tangerang</option> 8500 <option value="bekasi">Bekasi</option> 8501 </select> 8502 </div> 8503 </div> 8504 </div> 8505 </div> 8506 <button class="MuiButtonBase-root MuiButton-root MuiButton-contained jss55" tabindex="-1" type="button" title="" id="location-lock-submit" data-idforcdp="actionBtn-cdp" data-testid="location-lock-submit" style="background-color: #ffffff; width: 80%; padding: 14px 0px 12px; margin: 20px 0px; font-size: 18px; font-weight: 500; box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 4px 0px; border-radius: 4px; color: rgb(0, 0, 0); height: 44px;" data-content=""> 8507 <span class="MuiButton-label">
8508 <span class=""></span> 8509 <span id="location-lock-continue-btn" class="cartButton_login_content__2j1f7" style="font-weight: 500;" data-content="">Continue Shopping</span> 8510 </span> 8511 </button> 8512 </div> 8513 </div> 8514 </div> 8515 <div tabindex="0" data-test="sentinelEnd"></div> 8516 </div> 8517 8518
8518<script> 8519 const jabodetabek = [ 8520 { 8521 "code": "jakarta", 8522 "city": "jakarta", 8523 "zip": [] 8524 }, 8525 { 8526 "code": "bogor", 8527 "city": "bogor", 8528 "zip": [] 8529 }, 8530 { 8531 "code": "depok", 8532 "city": "depok", 8533 "zip": [] 8534 }, 8535 { 8536 "code": "tangerang", 8537 "city": "tangerang", 8538 "zip": [] 8539 }, 8540 { 8541 "code": "bekasi", 8542 "city": "bekasi", 8543 "zip": [] 8544 } 8545 ] 8546 let cityNonJabodetabek = [ 8547 8548 8549 8550 8551 "pengiriman_aceh", 8552 8553 8554 8555 8556 8557 "pengiriman_ambon", 8558 8559 8560 8561 8562 8563 "pengiriman_atambua", 8564 8565 8566 8567 8568 8569 "pengiriman_badung", 8570 8571 8572 8573 8574 8575 "pengiriman_bali", 8576 8577 8578 8579 8580 8581 "pengiriman_balikpapan", 8582 8583 8584 8585 8586 8587 "pengiriman_bandar lampung", 8588 8589 8590 8591 8592 8593 "pengiriman_bandung", 8594 8595 8596 8597 8598 8599 "pengiriman_bandung barat", 8600 8601 8602 8603 8604 8605 "pengiriman_banjarmasin", 8606 8607 8608 8609 8610 8611 "pengiriman_banyumas", 8612 8613 8614 8615 8616 8617 "pengiriman_banyuwangi", 8618 8619 8620 8621 8622 8623 "pengiriman_batam", 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 "pengiriman_biak", 8634 8635 8636 8637 8638 8639 "pengiriman_binjai", 8640 8641 8642 8643 8644 8645 "pengiriman_blitar", 8646 8647 8648 8649 8650 8651 "pengiriman_blora", 8652 8653 8654 8655 8656 8657 8658 8659 8660 8661 "pengiriman_bojonegoro", 8662 8663 8664 8665 8666 8667 "pengiriman_boyolali", 8668 8669 8670 8671 8672 8673 "pengiriman_bukittinggi", 8674 8675 8676 8677 8678 8679 "pengiriman_buleleng", 8680 8681 8682 8683 8684 8685 "pengiriman_ciamis", 8686 8687 8688 8689 8690 8691 "pengiriman_cianjur", 8692 8693 8694 8695 8696 8697 "pengiriman_cibinong", 8698 8699 8700 8701 8702 8703 "pengiriman_cikarang", 8704 8705 8706 8707 8708 8709 "pengiriman_cikupa", 8710 8711 8712 8713 8714 8715 "pengiriman_cilacap", 8716 8717 8718 8719 8720 8721 "pengiriman_cileunyi", 8722 8723 8724 8725 8726 8727 "pengiriman_cimahi", 8728 8729 8730 8731 8732 8733 "pengiriman_cirebon", 8734 8735 8736 8737 8738 8739 "pengiriman_ciwidey", 8740 8741 8742 8743 8744 8745 "pengiriman_deli serdang", 8746 8747 8748 8749 8750 8751 "pengiriman_demak", 8752 8753 8754 8755 8756 8757 "pengiriman_denpasar", 8758 8759 8760 8761 8762 8763 8764 8765 8766 8767 "pengiriman_garut", 8768 8769 8770 8771 8772 8773 "pengiriman_gianyar", 8774 8775 8776 8777 8778 8779 "pengiriman_gresik", 8780 8781 8782 8783 8784 8785 "pengiriman_gunung kidul", 8786 8787 8788 8789 8790 8791 8792 8793 8794 8795 "pengiriman_jambi", 8796 8797 8798 8799 8800 8801 "pengiriman_jayapura", 8802 8803 8804 8805 8806 8807 "pengiriman_jember", 8808 8809 8810 8811 8812 8813 "pengiriman_jepara", 8814 8815 8816 8817 8818 8819 "pengiriman_jombang", 8820 8821 8822 8823 8824 8825 "pengiriman_karanganyar", 8826 8827 8828 8829 8830 8831 "pengiriman_karawang", 8832 8833 8834 8835 8836 8837 "pengiriman_karo", 8838 8839 8840 8841 8842 8843 "pengiriman_kebumen", 8844 8845 8846 8847 8848 8849 "pengiriman_kediri", 8850 8851 8852 8853 8854 8855 "pengiriman_keerom", 8856 8857 8858 8859 8860 8861 "pengiriman_kendal", 8862 8863 8864 8865 8866 8867 "pengiriman_klaten", 8868 8869 8870 8871 8872 8873 8874 8875 8876 8877 "pengiriman_kudus", 8878 8879 8880 8881 8882 8883 "pengiriman_kupang", 8884 8885 8886 8887 8888 8889 "pengiriman_lainnya", 8890 8891 8892 8893 8894 8895 "pengiriman_lamongan", 8896 8897 8898 8899 8900 8901 "pengiriman_lampung", 8902 8903 8904 8905 8906 8907 "pengiriman_lampung barat", 8908 8909 8910 8911 8912 8913 "pengiriman_lembang", 8914 8915 8916 8917 8918 8919 "pengiriman_lombok", 8920 8921 8922 8923 8924 8925 "pengiriman_lumajang", 8926 8927 8928 8929 8930 8931 "pengiriman_madiun", 8932 8933 8934 8935 8936 8937 "pengiriman_magelang", 8938 8939 8940 8941 8942 8943 "pengiriman_majalengka", 8944 8945 8946 8947 8948 8949 "pengiriman_makassar", 8950 8951 8952 8953 8954 8955 "pengiriman_malang", 8956 8957 8958 8959 8960 8961 "pengiriman_manado", 8962 8963 8964 8965 8966 8967 "pengiriman_medan", 8968 8969 8970 8971 8972 8973 "pengiriman_mengwi", 8974 8975 8976 8977 8978 8979 "pengiriman_mojokerto", 8980 8981 8982 8983 8984 8985 "pengiriman_nganjuk", 8986 8987 8988 8989 8990 8991 "pengiriman_ngawi", 8992 8993 8994 8995 8996 8997 "pengiriman_padang", 8998 8999 9000 9001 9002 9003 "pengiriman_palembang", 9004 9005 9006 9007 9008 9009 "pengiriman_pasuruan", 9010 9011 9012 9013 9014 9015 "pengiriman_pati", 9016 9017 9018 9019 9020 9021 "pengiriman_pekalongan", 9022 9023 9024 9025 9026 9027 "pengiriman_pekanbaru", 9028 9029 9030 9031 9032 9033 "pengiriman_pemalang", 9034 9035 9036 9037 9038 9039 "pengiriman_ponorogo", 9040 9041 9042 9043 9044 9045 "pengiriman_pontianak", 9046 9047 9048 9049 9050 9051 "pengiriman_probolinggo", 9052 9053 9054 9055 9056 9057 "pengiriman_purbalingga", 9058 9059 9060 9061 9062 9063 "pengiriman_purwakarta", 9064 9065 9066 9067 9068 9069 "pengiriman_purwokerto", 9070 9071 9072 9073 9074 9075 "pengiriman_rembang", 9076 9077 9078 9079 9080 9081 "pengiriman_riau", 9082 9083 9084 9085 9086 9087 "pengiriman_salatiga", 9088 9089 9090 9091 9092 9093 "pengiriman_samarinda", 9094 9095 9096 9097 9098 9099 "pengiriman_semarang", 9100 9101 9102 9103 9104 9105 "pengiriman_sentani", 9106 9107 9108 9109 9110 9111 "pengiriman_serang", 9112 9113 9114 9115 9116 9117 "pengiriman_sidoarjo", 9118 9119 9120 9121 9122 9123 "pengiriman_singkawang", 9124 9125 9126 9127 9128 9129 "pengiriman_sragen", 9130 9131 9132 9133 9134 9135 "pengiriman_subang", 9136 9137 9138 9139 9140 9141 "pengiriman_sukabumi", 9142 9143 9144 9145 9146 9147 "pengiriman_sumbawa", 9148 9149 9150 9151 9152 9153 "pengiriman_surabaya", 9154 9155 9156 9157 9158 9159 "pengiriman_surakarta solo", 9160 9161 9162 9163 9164 9165 9166 9167 9168 9169 "pengiriman_tasikmalaya", 9170 9171 9172 9173 9174 9175 "pengiriman_tegal", 9176 9177 9178 9179 9180 9181 "pengiriman_timika", 9182 9183 9184 9185 9186 9187 "pengiriman_wamena", 9188 9189 9190 9191 9192 9193 "pengiriman_wiyung", 9194 9195 9196 9197 9198 9199 "pengiriman_wonokromo", 9200 9201 9202 9203 9204 9205 "pengiriman_yogyakarta", 9206 9207 9208 ] 9209 console.log(cityNonJabodetabek) 9210 let non_jabodetabek = [] 9211 for(var i=0;i<cityNonJabodetabek.length;i++) { 9212 const obj = { 9213 "code": cityNonJabodetabek[i].toLowerCase().replace('pengiriman_', '').replace(' ','-'), 9214 "city": cityNonJabodetabek[i].replace('pengiriman_', '').replace(' ','-'), 9215 "zip": [] 9216 } 9217 non_jabodetabek.push(obj) 9218 } 9219 let current_location = getCookie("location_delivery") 9220 $("[name=location]").change(function(){ 9221 let v = $(this).val() 9222 let option = [] 9223 if(v == 'Jabodetabek') { 9224 for(var i=0;i<jabodetabek.length;i++) { 9225 const jabodetabekHtml = `<option value=${jabodetabek[i].city}>${jabodetabek[i].city}</option>` 9226 option.push(jabodetabekHtml) 9227 } 9228 $("#choose-location").html(`<option value="">Choose Location</option>${option}`) 9229 } else { 9230 for(var i=0;i<non_jabodetabek.length;i++) { 9231 const nonjabodetabekHtml = `<option value=${non_jabodetabek[i].city}>${non_jabodetabek[i].city}</option>` 9232 option.push(nonjabodetabekHtml) 9233 } 9234 $("#choose-location").html(`<option value="">Choose Location</option>${option}`) 9235 } 9236 }) 9237 9238 $("#location-lock-submit").click(function(e){
9239 let select = $("#choose-location") 9240 let value = select.val().toLowerCase() 9241 console.log(value) 9242 if(select.val() == "") { 9243 return alert("Choose Your Location") 9244 e.preventDefault() 9245 } 9246 setCookie("location_delivery",value,1000000); 9247 9248 location.reload(); 9249 9250 }) 9251 9252 $("#close-popup-delivery").click(function(){ 9253 $(".MuiDialog-root").hide() 9254 if(!current_location){ 9255 setCookie("location_delivery","jakarta",1000000); 9256 $("#loc_delivery_city, #loc_delivery_city_mobile").text("Jakarta") 9257 } 9258 }) 9259 $("#loc_delivery, #loc_delivery_mobile").click(function(){ 9260 $(".MuiDialog-root").show() 9261 }) 9262 9263 9264 if(!current_location){ 9265 9266 } else { 9267 $("#loc_delivery_city, #loc_delivery_city_mobile").text(current_location) 9268 console.log(current_location) 9269 $("#choose-location").each(function(){ 9270 if(current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi'){ 9271 $("#jabodetabek").trigger("click") 9272 } else { 9273 $("#non-jabodetabek").trigger("click") 9274 } 9275 $("#choose-location").find("option[value="+current_location+"]").attr("selected", "selected") 9276 }) 9277 } 9278 9279 // if(current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi' || current_location == 'bandung' || current_location == 'semarang' || current_location == 'yogyakarta' || current_location == 'surabaya'){ 9280 // $("#timeMalam").attr("disabled", false) 9281 // } else { 9282 // $("#timeMalam").attr("disabled", true) 9283 // } 9284 9285 if(current_location && current_location != 'jakarta') { 9286 $("#self-pickup").attr("disabled", true) 9287 } 9288 9289 function setCookie(name,value,days) { 9290 var expires = ""; 9291 if (days) { 9292 var date = new Date(); 9293 date.setTime(date.getTime() + (days*24*60*60*1000)); 9294 expires = "; expires=" + date.toUTCString(); 9295 } 9296 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 9297 } 9298 function getCookie(name) { 9299 var nameEQ = name + "="; 9300 var ca = document.cookie.split(';'); 9301 for(var i=0;i < ca.length;i++) { 9302 var c = ca[i]; 9303 while (c.charAt(0)==' ') c = c.substring(1,c.length); 9304 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 9305 } 9306 return null; 9307 } 9308 </script>
9308 9309 <!-- One Tap --> 9310
9310<script> 9311 console.log("Outerbloom..."); 9312 </script>
9312 9313 <div id="shopify-block-ANVEzSUcxTUxZOGpwZ__9703700522657871012" class="shopify-block shopify-app-block"> 9314 9315 9316 <link rel="stylesheet" href="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.css" /> 9317
9317<script src="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.js" defer></script>
9317 9318
9318<script> 9319 const widgetConfig = { 9320 id: "clz7897za002cz7otleaz0d3d", 9321 showQuickResponse: false, 9322 quickResponsesData: [], 9323 themeColor: "#ffffff", 9324 widgetText: "", 9325 radiusType: "circle", 9326 widgetIconType: "whatsapp", 9327 position: "right", 9328 storeLogo: "", 9329 storeName: "Outerbloom", 9330 storeDescription: "", 9331 size: "small", 9332 showCard: false, 9333 widgetColorType: "solid", 9334 widgetColor1: "#008069", 9335 widgetColor2: "#008069", 9336 social: { 9337 socialOrders: ["instagram","tiktok","facebook","x","youtube","linkedin","email"], 9338 values: { 9339 instagram: { 9340 enabled: false, 9341 value: "", 9342 }, 9343 facebook: { 9344 enabled: false, 9345 value: "", 9346 }, 9347 email: { 9348 enabled: false, 9349 value: "", 9350 }, 9351 x: { 9352 enabled: false, 9353 value: "", 9354 }, 9355 tiktok: { 9356 enabled: false, 9357 value: "", 9358 }, 9359 linkedin: { 9360 enabled: false, 9361 value: "", 9362 }, 9363 youtube: { 9364 enabled: false, 9365 value: "", 9366 }, 9367 }, 9368 }, 9369 }; 9370 9371 function initializeWidget() { 9372 if (typeof BBBWidget !== 'undefined') { 9373 BBBWidget.init(widgetConfig); 9374 } else { 9375 setTimeout(initializeWidget, 100); 9376 } 9377 } 9378 9379 initializeWidget();</script>
9379 9380 9381 9382 </div><div id="shopify-block-ATzRpVTBPU3k1R2pnW__286197278318599166" class="shopify-block shopify-app-block"> 9383 9384 9385 <div style="position: fixed; bottom: 0; right: 0"></div> 9386 9387
9387<script> 9388 console.info("bitlogin extension version: v2.5.7"); 9389 9390 const googleScript = document.createElement("script"); 9391 googleScript.setAttribute("src", "https://accounts.google.com/gsi/client"); 9392 document.head.append(googleScript); 9393 9394 const bitLoginBaseUrl = "https://api.bitbybit.studio"; 9395 const apiUrl = `${bitLoginBaseUrl}/bitlogin/api`; 9396 9397 const appearance = {"style":"square","hasShadow":true,"domain":"outerbloom1.myshopify.com","colorScheme":"match","backgroundColor":"#ffffff","outlineColor":"#ffe100","textColor":"#700000","position":"top","hideDivider":false,"dividerText":"","size":"small","format":"contentFlex","language":"en","buttonText":"Continue With","redirectLink":"\/account","googleOneTap":true,"googleOneTapBanner":true,"captureAdditionalData":true,"customerTag":"bitLogin","redirectOneTapDesktop":"[{\"label\":\"Account\",\"label2\":\"Desktop: Account\",\"value\":\"account\",\"parentValue\":\"Desktop\"}]","redirectOneTapMobile":"[{\"label\":\"Thank you page\",\"label2\":\"Mobile: Thank you page\",\"value\":\"thank_you\",\"parentValue\":\"Mobile\"}]","watermark":true,"buttonList":{"google":"Continue with Google","facebook":"Continue with Facebook","apple":"Continue with Apple","whatsapp":"Continue with WhatsApp","microsoft":"Continue with Microsoft","twitter":"Continue with X","amazon":"Continue with Amazon","instagram":"Continue with Instagram","magic_link":"Continue with Magic Link","mobile_app":"Continue with Mobile App","linkedin":"Continue with LinkedIn"}}; 9398 const config = [{"domain":"outerbloom1.myshopify.com","provider":"FACEBOOK","enabledMobile":false,"enabledWeb":true,"clientId":"922184709213757","clientSecret":"e3c874c8bce6da4211538ebda706d1cb","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"GOOGLE","enabledMobile":true,"enabledWeb":true,"clientId":"933600373534-vk6hiu9lqrtbblj0357q0gsoo7mqvsd0.apps.googleusercontent.com","clientSecret":"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","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":true,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"APPLE","enabledMobile":true,"enabledWeb":true,"clientId":"com.bitlogin.outerbloom","clientSecret":"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","appleTeamId":"1A","applePrivateKey":"1A","usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"WHATSAPP","enabledMobile":false,"enabledWeb":true,"clientId":null,"clientSecret":null,"appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"MICROSOFT","enabledMobile":false,"enabledWeb":false,"clientId":null,"clientSecret":null,"appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"TWITTER","enabledMobile":false,"enabledWeb":false,"clientId":null,"clientSecret":null,"appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"AMAZON","enabledMobile":false,"enabledWeb":false,"clientId":"amzn1.application-oa2-client.5b560a5e3e2943d6b25c50cd6dca5532","clientSecret":"amz
9398n1.oa2-cs.v1.1cb5f9085a202341f60daf5a7be16c570ccc0b4bd5908b3afd080f34e9b8935d","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null}]; 9399 const redirectUrl = appearance.redirectLink; 9400 9401 let locationCacheSet = false; 9402 let errorLocation = false; 9403 let oneTapSet = false; 9404 9405 let bitloginCache = { 9406 appearance: appearance, 9407 config: config 9408 }; 9409 9410 let isInitializing = false; 9411 const queue = []; 9412 9413 // Add CSS for the popup 9414 const popupStyles = document.createElement('style'); 9415 popupStyles.textContent = ` 9416 /* Styles for login popup */ 9417 .bitlogin-popup-overlay { 9418 position: fixed; 9419 top: 0; 9420 left: 0; 9421 width: 100%; 9422 height: 100%; 9423 background: rgba(0, 0, 0, 0.45); 9424 backdrop-filter: blur(4px); 9425 display: flex; 9426 align-items: center; 9427 justify-content: center; 9428 opacity: 0; 9429 transition: opacity 0.3s ease-in-out; 9430 z-index: 999999; 9431 } 9432 9433 .bitlogin-popup-overlay.visible { 9434 opacity: 1; 9435 } 9436 9437 .bitlogin-popup { 9438 background: #FFFFFF; 9439 box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); 9440 border-radius: 16px; 9441 width: 100%; 9442 max-width: 560px; 9443 display: flex; 9444 overflow: hidden; 9445 position: relative; 9446 opacity: 0; 9447 transform: translateY(20px) scale(0.98); 9448 transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); 9449 } 9450 9451 .bitlogin-popup.visible { 9452 opacity: 1; 9453 transform: translateY(0) scale(1); 9454 } 9455 9456 .bitlogin-popup-with-image { 9457 max-width: 640px; 9458 } 9459 9460 .bitlogin-popup-right-image { 9461 flex-direction: row-reverse; 9462 } 9463 9464 .bitlogin-popup-image { 9465 object-fit: cover; 9466 width: 50%; 9467 height: auto; 9468 } 9469 9470 .bitlogin-popup-content { 9471 padding: 32px; 9472 position: relative; 9473 width: 50%; 9474 } 9475 9476 .bitlogin-popup-close { 9477 position: absolute; 9478 top: 16px; 9479 right: 16px; 9480 background: white; 9481 border: none; 9482 width: 30px; 9483 height: 30px; 9484 display: flex; 9485 align-items: center; 9486 justify-content: center; 9487 cursor: pointer; 9488 transition: background-color 0.2s; 9489 color: inherit; 9490 padding: 0; 9491 } 9492 9493 .bitlogin-popup-close:hover { 9494 background-color: #e5e5e5; 9495 } 9496 9497 .bitlogin-popup-buttons { 9498 display: flex; 9499 flex-direction: column; 9500 gap: 12px; 9501 margin-top: 24px; 9502 } 9503 9504 /* Button styles within popup - override width for popup buttons */ 9505 .bitlogin-popup-buttons #google-login, 9506 .bitlogin-popup-buttons #facebook-login, 9507 .bitlogin-popup-buttons #apple-login, 9508 .bitlogin-popup-buttons #whatsapp-login, 9509 .bitlogin-popup-buttons #microsoft-login, 9510 .bitlogin-popup-buttons #twitter-login, 9511 .bitlogin-popup-buttons #amazon-login, 9512 .bitlogin-popup-buttons #instagram-login, 9513 .bitlogin-popup-buttons #magic-link-login, 9514 .bitlogin-popup-buttons #mobile-app-login { 9515 width: 100% !important; 9516 font-family: inherit !important; 9517 } 9518 9519 .bitlogin-popup-footer { 9520 margin-top: 32px; 9521 text-align: center; 9522 font-size: 14px; 9523 opacity: 0.6; 9524 } 9525 9526 /* Modern Typography */ 9527 .bitlogin-popup h2 { 9528 margin-top: 12px; 9529 font-size: 21px !important; 9530 line-height: 1.2 !important; 9531 font-weight: 700 !important; 9532 letter-spacing: -0.02em !important; 9533 margin-bottom: 16px !important; 9534 } 9535 9536 .bitlogin-popup-header { 9537 position: relative; 9538 margin-bottom: 24px; 9539 } 9540 9541 /* Modern gradient accent */ 9542 .bitlogin-popup-content > div { 9543 font-size: 16px !important; 9544 line-height: 1.2 !important; 9545 opacity: 0.85 !important; 9546 } 9547 9548 /* Enhanced button interactions */ 9549 .bitlogin-popup-buttons button { 9550 position: relative; 9551 overflow: hidden; 9552 } 9553 9554 @keyframes ripple { 9555 0% { 9556 transform: scale(0, 0); 9557 opacity: 0.5; 9558 } 9559 100% { 9560 transform: scale(100, 100); 9561 opacity: 0; 9562 } 9563 } 9564 9565 /* Responsive adjustments */ 9566 @media (max-width: 640px) { 9567 .bitlogin-popup { 9568 max-width: 90%; 9569 width: 90%; 9570 margin: 0 16px; 9571 } 9572 9573 .bitlogin-popup-with-image { 9574 flex-direction: column !important; 9575 } 9576 9577 .bitlogin-popup-image { 9578 width: 100%; 9579 height: 180px; 9580 } 9581 9582 .bitlogin-popup-content { 9583 padding: 24px; 9584 } 9585 9586 .bitlogin-popup h2 { 9587 font-size: 24px !important; 9588 } 9589 } 9590 `; 9591
9592 document.head.appendChild(popupStyles); 9593 9594 // Add fonts link for different font options 9595 const fontsLink = document.createElement('link'); 9596 fontsLink.rel = 'stylesheet'; 9597 fontsLink.href = 'https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600&family=Roboto:wght@400;500&family=Open+Sans:wght@400;500;600&family=Noto+Sans:wght@400;500;600&family=Lato:wght@400;700&family=Poppins:wght@400;500;600&family=Quicksand:wght@400;500;600&family=Raleway:wght@400;500;600&family=PT+Sans:wght@400;700&family=Oswald:wght@400;500;600&display=swap'; 9598 document.head.appendChild(fontsLink); 9599 9600 (async () => { 9601 try { 9602 let host = window.location.host; 9603 if (host === "admin.shopify.com") { 9604 host = `${window.location.pathname.split("/")[2]}.myshopify.com`; 9605 } 9606 9607 const urlSearchParams = new URLSearchParams(window.location.search); 9608 const checkoutUrl = urlSearchParams.get("checkout_url"); 9609 9610 async function init({ inputRef, index }) { 9611 if (isInitializing) { 9612 queue.push(() => init({ inputRef, index })); 9613 return; 9614 } 9615 9616 isInitializing = true; 9617 9618 try { 9619 let bitLoginSectionRoot = document.querySelector( 9620 `.bitlogin-root[data-index="${index}"]` 9621 ); 9622 9623 const formRef = inputRef?.closest( 9624 "form:not([action='/account/recover'])" 9625 ); 9626 9627 if (formRef && !bitLoginSectionRoot) { 9628 await getLocation(); 9629 9630 bitLoginSectionRoot = document.createElement(`div`); 9631 9632 bitLoginSectionRoot.setAttribute("class", "bitlogin-root"); 9633 bitLoginSectionRoot.setAttribute("data-index", `${index}`); 9634 9635 updateAppearance({ 9636 formRef, 9637 rootRef: bitLoginSectionRoot, 9638 host, 9639 }); 9640 } 9641 } catch (err) { 9642 console.error(`error while initiating bitlogin extensions`, err); 9643 } finally { 9644 // Release the lock 9645 isInitializing = false; 9646 9647 // Check if there are pending items in the queue 9648 if (queue.length > 0) { 9649 // Process the next function in the queue 9650 const nextFunction = queue.shift(); 9651 nextFunction(); 9652 } 9653 } 9654 } 9655 9656 function initAll() { 9657 return new Promise((resolve, reject) => { 9658 setTimeout(async () => { 9659 const inputRefs = document.querySelectorAll( 9660 'input[name="customer[email]"]' 9661 ); 9662 9663 for (let i = 0; i < inputRefs.length; i++) { 9664 const currentInputRef = inputRefs[i]; 9665 const isVisible = isElementVisible(currentInputRef); 9666 9667 if (isVisible) { 9668 await init({ inputRef: currentInputRef, index: i }); 9669 } 9670 } 9671 9672 resolve("ok"); 9673 }, 100); 9674 }); 9675 } 9676 9677 const observer = new MutationObserver((mutationsList) => { 9678 for (let mutation of mutationsList) { 9679 initAll(); 9680 } 9681 }); 9682 9683 observer.observe(document.body, { 9684 childList: true, 9685 subtree: true, 9686 attributes: true, 9687 }); 9688 9689 initAll(); 9690 9691 if (appearance.googleOneTap) { 9692 setupOneTap({ host, checkoutUrl }); 9693 } 9694 9695 // Initialize popup 9696 await initPopup(host); 9697 } catch (error) { 9698 console.error("Error initializing BitLogin:", error); 9699 } 9700 })(); 9701 9702 async function initPopup(host) { 9703 // Check if user is already logged in using Liquid checks properly 9704 const isLoggedIn = false || 9705 document.querySelector('.customer-logout-link') || 9706 document.querySelector('.account-link') || 9707 window.location.pathname.includes('/account'); 9708 9709 if (isLoggedIn) { 9710 return; // User is logged in, don't show popup 9711 } 9712 9713 try { 9714 // Fetch the popup configuration 9715 const popupConfig = await fetch(`${apiUrl}/appearance/popup/domain/${host}`) 9716 .then(res => res.json()) 9717 .catch(err => { 9718 console.error('Error fetching popup configuration:', err); 9719 return null; 9720 }); 9721 9722 if (!popupConfig || !popupConfig.enabled) { 9723 return;
9723 // Don't show popup if disabled or config not found 9724 } 9725 9726 // Create popup after 10 seconds 9727 setTimeout(() => { 9728 // Check if user is still on the page and still not logged in 9729 if (document.visibilityState === 'visible') { 9730 // Additional check in case user logged in during the 10 second wait 9731 const currentlyLoggedIn = false || 9732 document.querySelector('.customer-logout-link') || 9733 document.querySelector('.account-link'); 9734 9735 if (!currentlyLoggedIn) { 9736 createLoginPopup(popupConfig, host); 9737 } 9738 } 9739 }, 10000); 9740 } catch (error) { 9741 console.error('Error initializing popup:', error); 9742 } 9743 } 9744 9745 function createLoginPopup(popupConfig, host) { 9746 // Font mapping 9747 const fontFamilyMap = { 9748 system_fonts: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif', 9749 montserrat: 'Montserrat, sans-serif', 9750 roboto: 'Roboto, sans-serif', 9751 open_sans: 'Open Sans, sans-serif', 9752 noto_sans: 'Noto Sans, sans-serif', 9753 lato: 'Lato, sans-serif', 9754 poppins: 'Poppins, sans-serif', 9755 quicksand: 'Quicksand, sans-serif', 9756 raleway: 'Raleway, sans-serif', 9757 pt_sans: 'PT Sans, sans-serif', 9758 oswald: 'Oswald, sans-serif', 9759 }; 9760 9761 // Create overlay 9762 const overlay = document.createElement('div'); 9763 overlay.className = 'bitlogin-popup-overlay'; 9764 9765 // Create popup container with appropriate styling 9766 const popup = document.createElement('div'); 9767 popup.className = 'bitlogin-popup'; 9768 9769 if (popupConfig.layout === 'default') { 9770 popup.style.maxWidth = '400px'; 9771 } 9772 9773 // Function to close the popup 9774 const closePopup = () => { 9775 overlay.classList.remove('visible'); 9776 popup.classList.remove('visible'); 9777 setTimeout(() => { 9778 if (document.body.contains(overlay)) { 9779 document.body.removeChild(overlay); 9780 } 9781 }, 300); 9782 }; 9783 9784 // Add click handler to the overlay to close when clicking outside 9785 overlay.addEventListener('click', (event) => { 9786 // Close only if clicking directly on the overlay, not its children 9787 if (event.target === overlay) { 9788 closePopup(); 9789 } 9790 }); 9791 9792 // Add escape key handler to close popup 9793 document.addEventListener('keydown', (event) => { 9794 if (event.key === 'Escape' && document.body.contains(overlay)) { 9795 closePopup(); 9796 } 9797 }); 9798 9799 // Create layout with image if specified 9800 let contentWrapper; 9801 if (popupConfig.layout !== 'default' && popupConfig.popupImage) { 9802 popup.classList.add('bitlogin-popup-with-image'); 9803 9804 if (popupConfig.layout === 'right') { 9805 popup.classList.add('bitlogin-popup-right-image'); 9806 } 9807 9808 // Add image 9809 const image = document.createElement('img'); 9810 image.className = 'bitlogin-popup-image'; 9811 image.src = popupConfig.popupImage; 9812 image.alt = 'Login'; 9813 image.loading = 'lazy'; 9814 popup.appendChild(image); 9815 9816 // Create content container 9817 contentWrapper = document.createElement('div'); 9818 contentWrapper.className = 'bitlogin-popup-content'; 9819 9820 if (popupConfig.layout === 'right') { 9821 const closeButton = document.createElement('button'); 9822 closeButton.className = 'bitlogin-popup-close'; 9823 closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"> 9824 <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 9825 </svg>`; 9826 closeButton.setAttribute('aria-label', 'Close'); 9827 closeButton.onclick = closePopup; 9828 9829 popup.appendChild(closeButton); 9830 } 9831 } else { 9832 contentWrapper = document.createElement('div'); 9833 contentWrapper.className = 'bitlogin-popup-content'; 9834 contentWrapper.style.width = '100%'; 9835 } 9836 9837 // Set background style 9838 if (popupConfig.backgroundTheme === 'gradient') { 9839 contentWrapper.style.background = `linear-gradient(135deg, ${popupConfig.backgroundPopupColor}, ${popupConfig.gradientColor})`; 9840 } else { 9841 contentWrapper.style.backgroundColor = popupConfig.backgroundPopupColor; 9842 } 9843 9844 // Apply font family 9845 contentWrapper.style.setProperty('font-family', fontFamilyMap[popupConfig.font] || fontFamilyMap.system_fonts, 'important'); 9846 9847 if (popupConfig.layout !== 'right') { 9848 const closeButton = document.createElement('button'); 9849 closeButton.className = 'bitlogin-popup-close'; 9850 closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"> 9851 <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 9852 </svg>`; 9853 closeButton.setAttribute('aria-label', 'Close'); 9854 closeButton.onclick = closePopup; 9855 9856 contentWrapper.appendChild(closeButton); 9857 } 9858 9859 // Add heading with subtle animation effect 9860 const header = document.createElement('div'); 9861 header.className = 'bitlogin-popup-header'; 9862 9863 const heading = document.createElement('h2'); 9864 heading.textContent = popupConfig.headingText || 'Sign in for exclusive benef
9864its'; 9865 heading.style.color = popupConfig.fontColor; 9866 header.appendChild(heading); 9867 9868 // Add body text with improved formatting 9869 const bodyText = document.createElement('div'); 9870 bodyText.innerHTML = popupConfig.bodyText || 'Join our community to access exclusive offers and a personalized shopping experience.'; 9871 bodyText.style.color = popupConfig.fontColor; 9872 header.appendChild(bodyText); 9873 9874 contentWrapper.appendChild(header); 9875 9876 // Create buttons container with modern styling 9877 const buttonsContainer = document.createElement('div'); 9878 buttonsContainer.className = 'bitlogin-popup-buttons'; 9879 9880 // Add social buttons 9881 const providerLabels = { 9882 'GOOGLE': 'Continue with Google', 9883 'FACEBOOK': 'Continue with Facebook', 9884 'APPLE': 'Continue with Apple', 9885 'WHATSAPP': 'Continue with WhatsApp', 9886 'MAGIC_LINK': 'Continue with Email', 9887 }; 9888 9889 // Add first login provider button 9890 if (popupConfig.loginProvider1 !== 'NONE') { 9891 const buttonConfig = { 9892 theme: popupConfig.colorScheme || 'match', 9893 customColor: popupConfig.textColor, 9894 format: 'contentFlex', 9895 buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider1.toLowerCase()], 9896 hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true, 9897 style: popupConfig.style || 'rounded', 9898 size: popupConfig.size || 'medium', 9899 colorScheme: popupConfig.colorScheme || 'match', 9900 backgroundColor: popupConfig.backgroundColor || '#3B82F6', 9901 textColor: popupConfig.textColor || '#FFFFFF', 9902 outlineColor: popupConfig.outlineColor || '#3B82F6', 9903 host: host 9904 }; 9905 9906 const button1 = createSocialLoginButton(popupConfig.loginProvider1, buttonConfig); 9907 9908 // Handle click event - this overrides the default click handler in createSocialLoginButton 9909 button1.onclick = () => { 9910 onClickSocialLogin({ provider: popupConfig.loginProvider1.toLowerCase(), host }); 9911 closePopup(); 9912 }; 9913 9914 buttonsContainer.appendChild(button1); 9915 } 9916 9917 // Add second login provider button if enabled 9918 if (popupConfig.loginProvider2 !== 'NONE') { 9919 const buttonConfig = { 9920 theme: popupConfig.colorScheme || 'match', 9921 customColor: popupConfig.textColor, 9922 format: 'contentFlex', 9923 buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider2.toLowerCase()], 9924 hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true, 9925 style: popupConfig.style || 'rounded', 9926 size: popupConfig.size || 'medium', 9927 colorScheme: popupConfig.colorScheme || 'match', 9928 backgroundColor: popupConfig.backgroundColor || '#3B82F6', 9929 textColor: popupConfig.textColor || '#FFFFFF', 9930 outlineColor: popupConfig.outlineColor || '#3B82F6', 9931 host: host 9932 }; 9933 9934 const button2 = createSocialLoginButton(popupConfig.loginProvider2, buttonConfig); 9935 9936 // Handle click event - this overrides the default click handler in createSocialLoginButton 9937 button2.onclick = () => { 9938 onClickSocialLogin({ provider: popupConfig.loginProvider2.toLowerCase(), host }); 9939 closePopup(); 9940 }; 9941 9942 buttonsContainer.appendChild(button2); 9943 } 9944 9945 contentWrapper.appendChild(buttonsContainer); 9946 9947 // Append content to popup 9948 popup.appendChild(contentWrapper); 9949 9950 // Append popup to overlay 9951 overlay.appendChild(popup); 9952 9953 // Append overlay to body 9954 document.body.appendChild(overlay); 9955 9956 // Trigger animation with slight delay for better perceived performance 9957 setTimeout(() => { 9958 overlay.classList.add('visible'); 9959 setTimeout(() => { 9960 popup.classList.add('visible'); 9961 }, 50); 9962 }, 10); 9963 } 9964 9965 window.addEventListener("load", () => { 9966 window.addEventListener("message", (event) => { 9967 const receivedData = event.data; 9968 9969 if (receivedData.type === "authorize") { 9970 post( 9971 JSON.parse( 9972 JSON.stringify({ 9973 "customer[email]": receivedData.email, 9974 "customer[password]": receivedData.password, 9975 form_type: "customer_login", 9976 utf8: "â", 9977 return_url: redirectUrl, 9978 }) 9979 ) 9980 ); 9981 } else if (receivedData.type === "rejected") { 9982 if (receivedData.reason === "customer_account_disabled") { 9983 showAlert( 9984 "Your account needs to be activated. We've sent you an activation link - please check your email to complete this step." 9985 ); 9986 } else if (receivedData.reason === "customer_entry_created_email_not_set") { 9987 showAlert( 9988 "A new account was created but requires an email address. Please update your account with a valid email address to continue." 9989 ); 9990 } else if (receivedData.reason === "customer_exist_email_not_set") { 9991 showAlert( 9992 "Your existing account is missing an email address. Please contact support to update your account with a valid email address." 9993 ); 9994 } 9995 } 9996 9997 if (receivedData.type === "customer_authenticated") { 9998 // Dispatch a custom event that merchants can listen for to implement their custom logic 9999 const customerAuthEvent = new CustomEvent('bitlogin:customer_authenticated', { 10000 detail: { 10001 provider: receivedData.provider, 10002 customer: receivedData.customer, 10003 shopifyCustomerCreated: receivedData.shopifyCustomerCreated 10004 } 10005 }); 10006 10007 // Dispatch the event on the window object so merchants can listen for it 10008 window.dispatchEvent(customerAuthEvent); 10009 10010 } 10011 }); 10012 }); 10013 10014 // Reusable functions for social login buttons 10015 function createSocialLoginButton(provider, config = {}) { 10016 const { 10017 theme = 'match', 10018 customColor = null, 10019 format = 'contentFlex', 10020 buttonText = null, 10021 hasShadow = true, 10022 style = 'rounded', 10023 size = 'medium', 10024 colorScheme = 'match', 10025 backgroundColor = '#3B82F6', 10026 textColor = '#FFFFFF', 10027 outlineColor = '#3B82F6', 10028 rootRef = null, 10029 host = null 10030 } = config; 10031 10032 // Create button element with appropriate ID and attributes 10033 const button = document.createElement('button'); 10034 button.id = `${provider.toLowerCase()}-login`; 10035 button.type = 'button'; 10036 10037 // Set the inner SVG based on provider 10038 switch (provider.toUpperCase()) {
10039 case 'GOOGLE': 10040 button.innerHTML = googleLoginIcon(theme, customColor); 10041 break; 10042 case 'FACEBOOK': 10043 button.innerHTML = facebookLoginIcon(theme, customColor); 10044 break; 10045 case 'APPLE': 10046 button.innerHTML = appleLoginIcon(theme, customColor); 10047 break; 10048 case 'WHATSAPP': 10049 button.innerHTML = whatsappLoginIcon(theme, customColor); 10050 break; 10051 case 'MICROSOFT': 10052 button.innerHTML = microsoftLoginIcon(theme, customColor); 10053 break; 10054 case 'TWITTER': 10055 button.innerHTML = twitterLoginIcon(theme, customColor); 10056 break; 10057 case 'AMAZON': 10058 button.innerHTML = amazonLoginIcon(theme, customColor); 10059 break; 10060 case 'INSTAGRAM': 10061 button.innerHTML = instagramLoginIcon(theme, customColor); 10062 break; 10063 case 'MAGIC_LINK': 10064 button.innerHTML = magicLinkLoginIcon(theme, customColor); 10065 break; 10066 case 'MOBILE_APP': 10067 button.innerHTML = mobileAppLoginIcon(theme, customColor); 10068 break; 10069 case 'LINKEDIN': 10070 button.innerHTML = linkedinLoginIcon(theme, customColor); 10071 break; 10072 } 10073 10074 // Add text if format isn't icon-only and buttonText is provided 10075 if (format !== "wrapperFlexContainerOnlyLogo" && buttonText) { 10076 button.innerHTML += `<p>${buttonText}</p>`; 10077 } 10078 10079 // Apply styling 10080 // Shadow 10081 if (hasShadow) { 10082 const shadowProperties = `0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)`; 10083 button.style["box-shadow"] = shadowProperties; 10084 } 10085 10086 // Border radius 10087 const radiusProperties = 10088 style === "rounded" 10089 ? "8px" 10090 : style === "square" 10091 ? "0px" 10092 : style === "fullRounded" 10093 ? format === "wrapperFlexContainerOnlyLogo" 10094 ? "50%" 10095 : "50px" 10096 : undefined; 10097 button.style["border-radius"] = radiusProperties; 10098 10099 // Size 10100 const sizeProperties = 10101 size === "medium" 10102 ? "12px" 10103 : size === "small" 10104 ? "8px" 10105 : size === "large" 10106 ? "16px" 10107 : "8px"; 10108 10109 button.style["padding-block"] = sizeProperties; 10110 10111 // Format styling 10112 if (format) { 10113 if ( 10114 format === "contentFlexReverse" || 10115 format === "contentFlexCenterReverse" 10116 ) { 10117 const flexDir = `row-reverse`; 10118 button.style["flex-direction"] = flexDir; 10119 } 10120 10121 if ( 10122 format === "contentFlexCenter" || 10123 format === "contentFlexCenterReverse" 10124 ) { 10125 const justifyContent = `center`; 10126 button.style["justify-content"] = justifyContent; 10127 } else if ( 10128 format === "contentFlex" || 10129 format === "contentFlexReverse" 10130 ) { 10131 const buttonTextElement = button.querySelector("p"); 10132 if (buttonTextElement) { 10133 buttonTextElement.style["flex-grow"] = 1; 10134 buttonTextElement.style["text-align"] = "center"; 10135 } 10136 } 10137 10138 if (format === "wrapperFlexContainerOnlyLogo" && rootRef) { 10139 rootRef.style["flex-direction"] = "row"; 10140 rootRef.style["gap"] = "8px"; 10141 rootRef.style["display"] = "flex"; 10142 rootRef.style["flex-wrap"] = "wrap"; 10143 10144 const sizeMapping = { 10145 small: "52px", 10146 medium: "62px", 10147 large: "72px", 10148 }; 10149 const buttonSize = sizeMapping[size] || "52px"; 10150 10151 button.style["margin"] = 0; 10152 button.style["width"] = buttonSize; 10153 button.style["height"] = buttonSize; 10154 button.style["display"] = "flex"; 10155 button.style["align-items"] = "center"; 10156 button.style["justify-content"] = "center"; 10157 10158 const svgElement = button.querySelector("svg"); 10159 if (svgElement) { 10160 svgElement.style["flex"] = "none"; 10161 } 10162 } 10163 } 10164 10165 // Color scheme styling 10166 if (colorScheme === "black") { 10167 button.classList.add("scheme-black"); 10168 } else if (colorScheme === "white") { 10169 button.classList.add("scheme-white"); 10170 } else if (colorScheme === "custom") { 10171 button.style["background-color"] = backgroundColor; 10172 button.style["color"] = textColor; 10173 button.style["border-color"] = outlineColor; 10174 10175 const darkenColor = (color, percentage) => { 10176 const value = parseInt(color.slice(1), 16); 10177 const r = Math.max(0, ((value >> 16) & 0xff) - (0xff * percentage)); 10178 const g = Math.max(0, ((value >> 8) & 0xff) - (0xff * percentage)); 10179 const b = Math.max(0, (value & 0xff) - (0xff * percentage)); 10180 return `rgb(${Math.round(r)}, ${Math.round(g)}, ${Math.round(b)})`; 10181 }; 10182 10183 button.addEventListener("mouseover", () => {
10184 button.style["background-color"] = darkenColor(backgroundColor, 0.2); 10185 }); 10186 button.addEventListener("mouseout", () => { 10187 button.style["background-color"] = backgroundColor; 10188 }); 10189 } else if (colorScheme === "match") { 10190 button.classList.add("scheme-match"); 10191 } else if (colorScheme === "matchOutline") { 10192 button.classList.add("scheme-match-outline"); 10193 } 10194 10195 // Add click event listener if host is provided 10196 if (host) { 10197 button.addEventListener("click", () => 10198 onClickSocialLogin({ provider: provider.toLowerCase(), host }) 10199 ); 10200 } 10201 10202 return button; 10203 } 10204 10205 function setupSocialLoginButtons(config, rootRef, data, host) { 10206 // Clear any existing content 10207 rootRef.innerHTML = ''; 10208 10209 const sortedEnabledProviders = config 10210 .filter(c => c.enabledWeb) 10211 .sort((a, b) => a.position - b.position); 10212 10213 sortedEnabledProviders.forEach(provider => { 10214 const key = provider.provider; 10215 const lowerKey = key.toLowerCase(); 10216 10217 const buttonText = data.format !== "wrapperFlexContainerOnlyLogo" 10218 ? (lowerKey === 'twitter' 10219 ? data.buttonList.twitter.replace('Twitter', 'X') 10220 : data.buttonList[lowerKey]) 10221 : null; 10222 10223 const button = createSocialLoginButton(key, { 10224 theme: data.colorScheme || 'match', 10225 customColor: data.textColor, 10226 format: data.format, 10227 buttonText: buttonText, 10228 hasShadow: data.hasShadow !== undefined ? data.hasShadow : true, 10229 style: data.style, 10230 size: data.size, 10231 colorScheme: data.colorScheme, 10232 backgroundColor: data.backgroundColor, 10233 textColor: data.textColor, 10234 outlineColor: data.outlineColor, 10235 rootRef: rootRef, 10236 host: host 10237 }); 10238 10239 rootRef.appendChild(button); 10240 }); 10241 10242 return rootRef; 10243 } 10244 10245 function updateAppearance({ formRef, rootRef, host }) { 10246 if (!formRef) return; 10247 10248 const data = bitloginCache.appearance || { 10249 style: "square", 10250 hasShadow: false, 10251 colorScheme: "match", 10252 backgroundColor: "#FFFFFF", 10253 outlineColor: "#000000", 10254 textColor: "#000000", 10255 position: "bottom", 10256 hideDivider: "false", 10257 dividerText: "OR", 10258 size: "small", 10259 format: "contentFlex", 10260 language: "en", 10261 buttonText: "Continue with", 10262 redirectLink: "/account", 10263 googleOneTap: true, 10264 googleOneTapBanner: true, 10265 customerTag: "bitLogin", 10266 redirectOneTapDesktop: null, 10267 redirectOneTapMobile: null, 10268 buttonList: { 10269 google: "Continue with Google", 10270 facebook: "Continue with Facebook", 10271 apple: "Continue with Apple", 10272 whatsapp: "Continue with WhatsApp", 10273 microsoft: "Continue with Microsoft", 10274 twitter: "Continue with X", 10275 amazon: "Continue with Amazon", 10276 instagram: "Continue with Instagram", 10277 magic_link: "Continue with Magic Link", 10278 mobile_app: "Continue with Mobile App", 10279 linkedin: "Continue with LinkedIn", 10280 }, 10281 }; 10282 10283 // Use the new setupSocialLoginButtons function to create and configure all buttons 10284 setupSocialLoginButtons(bitloginCache.config, rootRef, data, host); 10285 10286 let divider; 10287 10288 if (!data.hideDivider) { 10289 divider = document.createElement("div"); 10290 const dividerStyle = "text-align:center;margin-block:16px"; 10291 divider.setAttribute("style", dividerStyle); 10292 divider.innerHTML = data.dividerText; 10293 } 10294 10295 if (data.position === "bottom") { 10296 if (divider) { 10297 formRef.appendChild(divider); 10298 } 10299 formRef.appendChild(rootRef); 10300 } else if (data.position === "top") { 10301 if (divider) { 10302 formRef.prepend(divider); 10303 } 10304 formRef.prepend(rootRef); 10305 } 10306 } 10307 10308 10309 async function onClickSocialLogin({ provider, host }) { 10310 const rand = Math.random().toString(); 10311 10312 const locationQueryString = bitloginCache.location 10313 ? `&${objectToQueryString(bitloginCache.location)}` 10314 : ""; 10315 10316 const width = 800; 10317 const height = 600; 10318 const left = (window.screen.width / 2) - (width / 2); 10319 const top = (window.screen.height / 2) - (height / 2) - 50; 10320
10321 if(provider === 'whatsapp') { 10322 window.open( 10323 `/apps/bitlogin/whatsapp${locationQueryString ? `?${locationQueryString}` : ''}`, 10324 "mywindow", 10325 `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}` 10326 ); 10327 } else { 10328 window.open( 10329 `${apiUrl}/login/${provider}?referrerId=${rand}&shop=${host}${locationQueryString}`, 10330 "mywindow", 10331 `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}` 10332 ); 10333 } 10334 } 10335 10336 function objectToQueryString(obj) { 10337 return Object.keys(obj) 10338 .map((key) => { 10339 return encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]); 10340 }) 10341 .join("&"); 10342 } 10343 10344 async function getLocation() { 10345 if (locationCacheSet) return; 10346 10347 try { 10348 const response = await fetch("https://ipapi.co/json/"); 10349 10350 if (!response.ok) { 10351 console.error(`error retrieving location...`, response.status); 10352 errorLocation = true; 10353 } else { 10354 const data = await response.json(); 10355 10356 const { city, region, country_name, country_code } = data; 10357 10358 const formattedLocationData = { 10359 city, 10360 region, 10361 country_name, 10362 country_code, 10363 }; 10364 10365 bitloginCache.location = formattedLocationData; 10366 locationCacheSet = true; 10367 errorLocation = false; 10368 } 10369 } catch (err) { 10370 console.error(`error fetching location`, err); 10371 errorLocation = true; 10372 } 10373 } 10374 10375 function post(params) { 10376 // The rest of this code assumes you are not using a library. 10377 // It can be made less verbose if you use one. 10378 const form = document.createElement("form"); 10379 form.method = "post"; 10380 form.action = `/account/login`; 10381 form.acceptCharset = "UTF-8"; 10382 form.setAttribute("data-login-with-shop-sign-in", "true"); 10383 form.setAttribute("novalidate", "novalidate"); 10384 10385 for (const key in params) { 10386 if (params.hasOwnProperty(key)) { 10387 const hiddenField = document.createElement("input"); 10388 hiddenField.type = "hidden"; 10389 hiddenField.name = key; 10390 hiddenField.value = params[key]; 10391 10392 form.appendChild(hiddenField); 10393 } 10394 } 10395 10396 document.body.appendChild(form); 10397 form.submit(); 10398 } 10399 10400 async function setupOneTap({ host, checkoutUrl }) { 10401 if (oneTapSet) return; 10402 10403 const redirectOneTapDesktop = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapDesktop || '[]')); 10404 const redirectOneTapMobile = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapMobile || '[]')); 10405 10406 const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent); 10407 const redirectList = JSON.parse(isMobile ? redirectOneTapMobile : redirectOneTapDesktop); 10408 10409 const currentPath = window.location.pathname.toLowerCase(); 10410 const currentUrl = window.location.href.toLowerCase(); 10411 10412 const shouldHideGoogleOneTap = redirectList.some(({ value }) => { 10413 switch (value) { 10414 case 'home': 10415 return currentPath === '/'; 10416 case 'product': 10417 return currentPath.startsWith('/products/'); 10418 case 'collections': 10419 return currentPath.startsWith('/collections'); 10420 case 'cart': 10421 return currentPath === '/cart'; 10422 case 'checkout': 10423 return currentPath.startsWith('/checkouts') && !currentPath.includes('thank_you'); 10424 case 'thank_you': 10425 return currentPath.includes('/thank_you'); 10426 case 'account': 10427 return currentPath.startsWith('/account'); 10428 case 'pages': 10429 return currentPath.startsWith('/pages'); 10430 case 'blogs': 10431 return currentPath === '/blogs' || currentPath === '/blogs/news'; 10432 case 'blog_post': 10433 return currentPath.startsWith('/blogs/') && currentPath.split('/').length > 3; 10434 default: 10435 return false; 10436 } 10437 }); 10438 10439 if (shouldHideGoogleOneTap) return; 10440 10441 const oneTapClientId = bitloginCache.config.find( 10442 (config) => config.provider === "GOOGLE" 10443 )?.clientId; 10444 10445 const isLoggedIn = false; 10446 10447 if (bitloginCache.appearance.googleOneTap && oneTapClientId && !isLoggedIn) { 10448 const googleOneTapButton = document.createElement("div"); 10449 googleOneTapButton.setAttribute("id", "g_id_onload"); 10450 googleOneTapButton.setAttribute("data-client_id", oneTapClientId); 10451 googleOneTapButton.setAttribute("data-context", "signin"); 10452 googleOneTapButton.setAttribute( 10453 "data-callback", 10454 "handleGoogleOneTapResponse" 10455 ); 10456 googleOneTapButton.setAttribute("data-itp_support", "true"); 10457 10458 const googleOneTapScript = document.createElement("script"); 10459 10460 googleOneTapScript.innerHTML += ` 10461 function handleGoogleOneTapResponse(response) { 10462 if (response.credential) { 10463 const idToken = response.credential; 10464 fetch('${bitLoginBaseUrl}/bitlogin/api/login/google-one-tap', { 10465 method: 'POST', 10466 headers: { 'Content-Type': 'application/json' }, 10467 body: JSON.stringify({ idToken, shop: "${host}", ...bitloginCache.location }) 10468 }).then(response => { 10469 response.json().then((data) => { 10470 post( 10471 JSON.parse( 10472 JSON.stringify({ 10473 "customer[email]": data.email, 10474 "customer[password]": data.password, 10475 form_type: "customer_login", 10476 utf8: "â", 10477 return_url: redirectUrl, 10478 }) 10479 ) 10480 ); 10481 }); 10482 }).catch(error => { 10483 console.error('Error occurred:', error); 10484 }); 10485 } else { 10486 console.error('No credential available'); 10487 } 10488 } 10489 `; 10490 10491 document.body.append(googleOneTapButton); 10492 document.body.append(googleOneTapScript); 10493 } 10494 10495 oneTapSet = true; 10496 } 10497
10498 const googleLoginIcon = ( 10499 theme, 10500 customColor 10501 ) => ` 10502 ${ 10503 theme === "match" || theme === "matchOutline" || theme === "custom" 10504 ? `<svg 10505 xmlns='https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png' 10506 xmlns:v='https://vecta.io/nano' 10507 width='24' 10508 height='24' 10509 viewBox='0 0 186.69 190.5' 10510 > 10511 <g transform="translate(1184.583 765.171)"><path clip-path="none" mask="none" d="M-1089.333-687.239v36.888h51.262c-2.251 11.863-9.006 21.908-19.137 28.662l30.913 23.986c18.011-16.625 28.402-41.044 28.402-70.052 0-6.754-.606-13.249-1.732-19.483z" fill="${ 10512 theme === "custom" ? customColor : "#4285f4" 10513 }"/><path clip-path="none" mask="none" d="M-1142.714-651.791l-6.972 5.337-24.679 19.223h0c15.673 31.086 47.796 52.561 85.03 52.561 25.717 0 47.278-8.486 63.038-23.033l-30.913-23.986c-8.486 5.715-19.31 9.179-32.125 9.179-24.765 0-45.806-16.712-53.34-39.226z" fill="${ 10514 theme === "custom" ? customColor : "#34a853" 10515 }"/><path clip-path="none" mask="none" d="M-1174.365-712.61c-6.494 12.815-10.217 27.276-10.217 42.689s3.723 29.874 10.217 42.689c0 .086 31.693-24.592 31.693-24.592-1.905-5.715-3.031-11.776-3.031-18.098s1.126-12.383 3.031-18.098z" fill="${ 10516 theme === "custom" ? customColor : "#fbbc05" 10517 }"/><path d="M-1089.333-727.244c14.028 0 26.497 4.849 36.455 14.201l27.276-27.276c-16.539-15.413-38.013-24.852-63.731-24.852-37.234 0-69.359 21.388-85.032 52.561l31.692 24.592c7.533-22.514 28.575-39.226 53.34-39.226z" fill="${ 10518 theme === "custom" ? customColor : "#ea4335" 10519 }" clip-path="none" mask="none"/></g> 10520 </svg>` 10521 : `<svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="25" height="25" viewBox="0 0 25 25" fill="none"> 10522 <path d="M24.1906 12.7758C24.1906 11.96 24.1244 11.1399 23.9833 10.3374H12.6646V14.9584H19.1463C18.8773 16.4488 18.0131 17.7672 16.7476 18.6049V21.6032H20.6146C22.8854 19.5132 24.1906 16.4267 24.1906 12.7758Z" fill="${ 10523 theme !== "black" ? "black" : "white" 10524 }"/> 10525 <path d="M12.6647 24.5001C15.9011 24.5001 18.6305 23.4374 20.619 21.6031L16.7521 18.6048C15.6762 19.3368 14.2873 19.7513 12.6691 19.7513C9.53845 19.7513 6.88403 17.6391 5.93161 14.7996H1.94116V17.8904C3.97828 21.9428 8.12746 24.5001 12.6647 24.5001Z" fill="${ 10526 theme !== "black" ? "black" : "white" 10527 }"/> 10528 <path d="M5.92709 14.7995C5.42442 13.3091 5.42442 11.6953 5.92709 10.205V7.11401H1.94105C0.23905 10.5048 0.23905 14.4996 1.94105 17.8903L5.92709 14.7995Z" fill="${ 10529 theme !== "black" ? "black" : "white" 10530 }"/> 10531 <path d="M12.6647 5.24893C14.3755 5.22248 16.029 5.86623 17.268 7.04794L20.694 3.62188C18.5247 1.58477 15.6454 0.464802 12.6647 0.500076C8.12745 0.500076 3.97828 3.05749 1.94116 7.11408L5.9272 10.205C6.8752 7.36099 9.53403 5.24893 12.6647 5.24893Z" fill="${ 10532 theme !== "black" ? "black" : "white" 10533 }"/> 10534 </svg>` 10535 }`; 10536 10537 const appleLoginIcon = ( 10538 theme, 10539 customColor 10540 ) => `<svg width="24" height="24" viewBox="0 0 19 24" fill="none" xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"> 10541 <path d="M15.4146 22.08C14.263 23.2897 12.9925 23.1013 11.7815 22.5307C10.494 21.9489 9.31698 21.9121 7.95724 22.5307C6.26395 23.322 5.36524 23.092 4.34544 22.08C-1.4122 15.663 -0.562362 5.88801 5.98138 5.52001C7.56844 5.61201 8.6796 6.46991 9.61442 6.54121C11.0039 6.23531 12.3339 5.35901 13.8211 5.47401C15.6078 5.63041 16.9443 6.39401 17.8366 7.76711C14.161 10.1591 15.0321 15.4031 18.4082 16.8751C17.7324 18.7956 16.8656 20.6931 15.4125 22.0961L15.4146 22.08ZM9.48695 5.45101C9.31486 2.59901 11.4501 0.25301 13.9061 0.0230103C14.2439 3.31201 11.1441 5.77301 9.48695 5.45101Z" fill="${ 10542 theme === "custom" 10543 ? customColor 10544 : theme === "match" || theme === "black" 10545 ? "white" 10546 : "black" 10547 }"/> 10548 </svg>`; 10549 10550 const facebookLoginIcon = ( 10551 theme, 10552 customColor 10553 ) => ` 10554 ${ 10555 theme === "match" || theme === "matchOutline" || theme === "custom" 10556 ? `<svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="25" viewB
10556ox="0 0 24 25" fill="none"> 10557 <path fill-rule="evenodd" clip-rule="evenodd" d="M24 12.5C24 5.8731 18.6268 0.5 12 0.5C5.3731 0.5 0 5.8731 0 12.5C0 18.489 4.38762 23.4537 10.1252 24.355V15.9696H7.07748V12.5H10.1252V9.85562C10.1252 6.84842 11.9173 5.18622 14.6579 5.18622C15.9707 5.18622 17.3443 5.42077 17.3443 5.42077V8.37398H15.8307C14.3406 8.37398 13.8748 9.29875 13.8748 10.2488V12.4999H17.2025L16.671 15.9695H13.8747V24.3548C19.6123 23.4553 23.9998 18.4907 23.9998 12.4999L24 12.5Z" fill="${ 10558 theme === "custom" ? customColor : theme === "match" ? "white" : "#1977F3" 10559 }"/> 10560 <path fill-rule="evenodd" clip-rule="evenodd" d="M16.5934 16.2833L17.1251 12.8137H13.7973V10.5626C13.7973 9.61422 14.2614 8.68778 15.7532 8.68778H17.2669V5.73457C17.2669 5.73457 15.8933 5.5 14.5804 5.5C11.8399 5.5 10.0477 7.16057 10.0477 10.1694V12.8138H7V16.2834H10.0477V24.6688C10.6586 24.7648 11.2846 24.8138 11.9225 24.8138C12.5604 24.8138 13.1865 24.7631 13.7973 24.6688V16.2834H16.5936L16.5934 16.2833Z" fill="${ 10561 theme === "match" ? "#1778f2" : "transparent" 10562 }"/> 10563 </svg>` 10564 : `<svg xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" width="24" height="25" viewBox="0 0 24 25" fill="none"> 10565 <path fill-rule="evenodd" clip-rule="evenodd" d="M24 12.5C24 5.8731 18.6268 0.5 12 0.5C5.3731 0.5 0 5.8731 0 12.5C0 18.489 4.38762 23.4537 10.1252 24.355V15.9696H7.07748V12.5H10.1252V9.85562C10.1252 6.84842 11.9173 5.18622 14.6579 5.18622C15.9707 5.18622 17.3443 5.42077 17.3443 5.42077V8.37398H15.8307C14.3406 8.37398 13.8748 9.29875 13.8748 10.2488V12.4999H17.2025L16.671 15.9695H13.8747V24.3548C19.6123 23.4553 23.9998 18.4907 23.9998 12.4999L24 12.5Z" fill="${ 10566 theme === "black" ? "white" : "black" 10567 }"/> 10568 <path fill-rule="evenodd" clip-rule="evenodd" d="M16.5934 16.2833L17.1251 12.8137H13.7973V10.5626C13.7973 9.61422 14.2614 8.68778 15.7532 8.68778H17.2669V5.73457C17.2669 5.73457 15.8933 5.5 14.5804 5.5C11.8399 5.5 10.0477 7.16057 10.0477 10.1694V12.8138H7V16.2834H10.0477V24.6688C10.6586 24.7648 11.2846 24.8138 11.9225 24.8138C12.5604 24.8138 13.1865 24.7631 13.7973 24.6688V16.2834H16.5936L16.5934 16.2833Z" fill="${ 10569 theme === "black" ? "black" : "white" 10570 }"/> 10571 </svg>` 10572 }`; 10573 10574 const whatsappLoginIcon = ( 10575 theme, 10576 customColor 10577 ) => `<svg 10578 viewBox="0 0 24 24" 10579 fill="none" 10580 width="24" 10581 height="25" 10582 xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" 10583 > 10584 <g id="SVGRepo_bgCarrier" stroke-width="0"></g> 10585 <g 10586 id="SVGRepo_tracerCarrier" 10587 stroke-linecap="round" 10588 stroke-linejoin="round" 10589 ></g> 10590 <g id="SVGRepo_iconCarrier"> 10591 <path 10592 fill-rule="evenodd" 10593 clip-rule="evenodd" 10594 d="M3.50002 12C3.50002 7.30558 7.3056 3.5 12 3.5C16.6944 3.5 20.5 7.30558 20.5 12C20.5 16.6944 16.6944 20.5 12 20.5C10.3278 20.5 8.77127 20.0182 7.45798 19.1861C7.21357 19.0313 6.91408 18.9899 6.63684 19.0726L3.75769 19.9319L4.84173 17.3953C4.96986 17.0955 4.94379 16.7521 4.77187 16.4751C3.9657 15.176 3.50002 13.6439 3.50002 12ZM12 1.5C6.20103 1.5 1.50002 6.20101 1.50002 12C1.50002 13.8381 1.97316 15.5683 2.80465 17.0727L1.08047 21.107C0.928048 21.4637 0.99561 21.8763 1.25382 22.1657C1.51203 22.4552 1.91432 22.5692 2.28599 22.4582L6.78541 21.1155C8.32245 21.9965 10.1037 22.5 12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5ZM14.2925 14.1824L12.9783 15.1081C12.3628 14.7575 11.6823 14.2681 10.9997 13.5855C10.2901 12.8759 9.76402 12.1433 9.37612 11.4713L10.2113 10.7624C10.5697 10.4582 10.6678 9.94533 10.447 9.53028L9.38284 7.53028C9.23954 7.26097 8.98116 7.0718 8.68115 7.01654C8.38113 6.96129 8.07231 7.046 7.84247 7.24659L7.52696 7.52195C6.76823 8.18414 6.3195 9.2723 6.69141 10.3741C7.07698 11.5163 7.89983 13.314 9.58552 14.9997C11.3991 16.8133 13.2413 17.5275 14.3186 17.8049C15.1866 18.0283 16.008 17.7288 16.5868 17.2572L17.1783 16.7752C17.4313 16.5691 17.5678 16.2524 17.544 15.9269C17.5201 15.6014 17.3389 15.308 17.0585 15.1409L15.3802 14.1409C15.0412 13.939 14.6152 13.9552 14.2925 14.1824Z" 10595 fill="${ 10596 theme === "match" || theme === "black" 10597 ? "#ffffff" 10598 : theme === "white" 10599 ? "#000000" 10600 : theme === "matchOutline" 10601 ? "#25d366" 10602 : customColor 10603 }" 10604 ></path> 10605 </g> 10606 </svg>`; 10607 10608 const microsoftLoginIcon = ( 10609 theme, 10610 customColor 10611 ) => `<svg 10612 xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" 10613 width="25" 10614 height="25" 10615 viewBox="0 0 48 48"> 10616 <path fill="${ 10617 theme === "match" || theme == "matchOutline" 10618 ? "#ff5722" 10619 : theme === "black" 10620 ? "#ffffff" 10621 : theme === "white" 10622 ? "#000000" 10623 : customColor 10624 }" d="M6 6H22V22H6z" transform="rotate(-180 14 14)"></path> 10625 <path 10626 fill="${ 10627 theme === "match" || theme == "matchOutline" 10628 ? "#4caf50" 10629 : theme === "black" 10630 ? "#ffffff" 10631 : theme === "white" 10632 ? "#000000" 10633 : customColor 10634 }" 10635 d="M26 6H42V22H26z" 10636 transform="rotate(-180 34 14)"></path> 10637 <path 10638 fill="${ 10639 theme === "match" || theme == "matchOutline" 10640 ? "#ffc107" 10641 : theme === "black" 10642 ? "#ffffff" 10643 : theme === "white" 10644 ? "#000000" 10645 : customColor 10646 }" 10647 d="M26 26H42V42H26z" 10648 transform="rotate(-180 34 34)"></path> 10649 <path fill="${ 10650 theme === "match" || theme == "matchOutline" 10651 ? "#03a9f4" 10652 : theme === "black" 10653 ? "#ffffff" 10654 : theme === "white" 10655 ? "#000000" 10656 : customColor 10657 }" d="M6 26H22V42H6z" transform="rotate(-180 14 34)"></path> 10658 </svg>`; 10659 10660 const twitterLoginIcon = ( 10661 theme, 10662 customColor 10663 ) => `<svg 10664 xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" 10665 width="25" 10666 height="25" 10667 viewBox="0 0 48 48"> 10668 <polygon fill="${ 10669 theme === "match" || theme === "black" 10670 ? "#ffffff" 10671 : theme === "matchOutline" || theme === "white" 10672 ? "#000000" 10673 : customColor 10674 }" points="41,6 9.929,42 6.215,42 37.287,6"></polygon> 10675 <polygon 10676 fill="${ 10677 theme === "match" || theme === "black" 10678 ? "#000000" 10679 : theme === "matchOutline" || theme === "white" 10680 ? "#ffffff" 10681 : customColor 10682 }" 10683 fill-rule="evenodd" 10684 points="31.143,41 7.82,7 16.777,7 40.1,41" 10685 clip-rule="evenodd"></polygon> 10686 <path 10687 fill="${ 10688 theme === "match" || theme === "black" 10689 ? "#ffffff" 10690 : theme === "matchOutline" || theme === "white" 10691 ? "#000000" 10692 : customColor 10693 }" 10694 d="M15.724,9l20.578,30h-4.106L11.618,9H15.724 M17.304,6H5.922l24.694,36h11.382L17.304,6L17.304,6z"></path> 10695 </svg>`; 10696 10697 const amazonLoginIcon = (theme, customColor) => ` 10698 <svg 10699 xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" 10700 x="0px" 10701 y="0px" 10702 width="25" 10703 height="25"
10704 viewBox="0 0 50 50" 10705 > 10706 <path 10707 fill="${ 10708 theme === "black" 10709 ? "#ffffff" 10710 : theme === "matchOutline" 10711 ? "#3600FF" 10712 : theme === "white" || theme === "match" 10713 ? "#000000" 10714 : customColor 10715 }" 10716 d="M 25.3125 3 C 19.210938 3 12.492188 5.3125 11.09375 12.8125 C 10.894531 13.613281 11.5 13.992188 12 14.09375 L 18.1875 14.6875 C 18.789063 14.6875 19.207031 14.101563 19.40625 13.5 C 19.90625 10.898438 22.101563 9.59375 24.5 9.59375 C 25.800781 9.59375 27.292969 10.113281 28.09375 11.3125 C 28.992188 12.613281 28.8125 14.40625 28.8125 15.90625 L 28.8125 16.8125 C 25.113281 17.210938 20.3125 17.5 16.8125 19 C 12.8125 20.699219 10 24.207031 10 29.40625 C 10 36.007813 14.199219 39.3125 19.5 39.3125 C 24 39.3125 26.5 38.195313 30 34.59375 C 31.199219 36.292969 31.585938 37.105469 33.6875 38.90625 C 34.1875 39.207031 34.789063 39.085938 35.1875 38.6875 L 35.1875 38.8125 C 36.488281 37.710938 38.792969 35.601563 40.09375 34.5 C 40.59375 34.199219 40.492188 33.5 40.09375 33 C 38.894531 31.398438 37.6875 30.09375 37.6875 27.09375 L 37.6875 17.1875 C 37.6875 12.988281 38.007813 9.085938 34.90625 6.1875 C 32.40625 3.789063 28.414063 3 25.3125 3 Z M 27 22 L 28.6875 22 L 28.6875 23.40625 C 28.6875 25.804688 28.792969 27.894531 27.59375 30.09375 C 26.59375 31.894531 24.988281 33 23.1875 33 C 20.789063 33 19.3125 31.207031 19.3125 28.40625 C 19.3125 23.707031 23 22.300781 27 22 Z M 44.59375 36.59375 C 42.992188 36.59375 41.085938 37 39.6875 38 C 39.289063 38.300781 39.3125 38.6875 39.8125 38.6875 C 41.414063 38.488281 44.988281 38.007813 45.6875 38.90625 C 46.289063 39.707031 45.007813 43.085938 44.40625 44.6875 C 44.207031 45.1875 44.601563 45.300781 45 45 C 47.699219 42.699219 48.40625 38.007813 47.90625 37.40625 C 47.605469 36.90625 46.195313 36.59375 44.59375 36.59375 Z M 2.1875 37.5 C 1.886719 37.5 1.695313 38.011719 2.09375 38.3125 C 8.09375 43.710938 16.007813 47 24.90625 47 C 31.207031 47 38.492188 45.011719 43.59375 41.3125 C 44.394531 40.710938 43.707031 39.695313 42.90625 40.09375 C 37.207031 42.492188 31.101563 43.6875 25.5 43.6875 C 17.199219 43.6875 9.1875 41.386719 2.6875 37.6875 C 2.488281 37.488281 2.289063 37.5 2.1875 37.5 Z" 10717 ></path> 10718 </svg>`; 10719 10720 const instagramLoginIcon= (theme, customColor) => ` 10721 <svg 10722 width="25" 10723 height="25" 10724 viewBox="0 0 25 24" 10725 fill="none" 10726 xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png"> 10727 <path 10728 fill-rule="evenodd" 10729 clip-rule="evenodd" 10730 d="M10.5 0C7.784 0 7.444 0.0119999 6.377 0.0599999C5.313 0.109 4.586 0.278 3.95 0.525C3.28247 0.775816 2.67773 1.16931 2.178 1.678C1.66931 2.17773 1.27582 2.78247 1.025 3.45C0.778 4.086 0.609 4.813 0.56 5.877C0.511 6.944 0.5 7.284 0.5 10C0.5 12.716 0.511 13.056 0.56 14.123C0.609 15.187 0.778 15.914 1.025 16.55C1.27582 17.2175 1.66931 17.8223 2.178 18.322C2.67773 18.8307 3.28247 19.2242 3.95 19.475C4.586 19.722 5.313 19.891 6.377 19.94C7.444 19.988 7.784 20 10.5 20C13.216 20 13.556 19.988 14.623 19.94C15.687 19.891 16.414 19.722 17.05 19.475C17.7175 19.2242 18.3223 18.8307 18.822 18.322C19.3307 17.8223 19.7242 17.2175 19.975 16.55C20.222 15.914 20.391 15.187 20.44 14.123C20.488 13.056 20.5 12.716 20.5 10C20.5 7.284 20.488 6.944 20.44 5.877C20.391 4.813 20.222 4.086 19.975 3.45C19.7242 2.78247 19.3307 2.17773 18.822 1.678C18.3223 1.16931 17.7175 0.775816 17.05 0.525C16.414 0.278 15.687 0.109 14.623 0.0599999C13.556 0.0119999 13.216 0 10.5 0ZM10.5 1.802C13.17 1.802 13.486 1.812 14.54 1.86C15.516 1.905 16.045 2.067 16.398 2.204C16.864 2.386 17.198 2.603 17.548 2.952C17.898 3.302 18.114 3.636 18.296 4.102C18.432 4.455 18.596 4.984 18.64 5.959C18.688 7.014 18.698 7.329 18.698 10C18.698 12.67 18.688 12.986 18.64 14.04C18.595 15.016 18.432 15.545 18.296 15.898C18.1357 16.3324 17.8801 16.7253 17.548 17.048C17.198 17.398 16.864 17.614 16.398 17.796C16.045 17.932 15.516 18.096 14.541 18.14C13.487 18.188 13.171 18.198 10.5 18.198C7.83 18.198 7.513 18.188 6.46 18.14C5.484 18.095 4.955 17.932 4.602 17.796C4.16762 17.6357 3.77466 17.3801 3.452 17.048C3.11991 16.7253 2.86432 16.3324 2.704 15.898C2.567 15.545 2.404 15.016 2.36 14.041C2.312 12.986 2.302 12.671 2.302 10C2.302 7.33 2.312 7.014 2.36 5.96C2.405 4.984 2.567 4.455 2.704 4.102C2.886 3.636 3.103 3.302 3.452 2.952C3.802 2.602 4.136 2.386 4.602 2.204C4.955 2.067 5.484 1.904 6.459 1.86C7.514 1.812 7.829 1.802 10.5 1.802ZM10.5 13.333C9.61603 13.333 8.76827 12.9818 8.14321 12.3568C7.51815 11.7317 7.167 10.884 7.167 10C7.167 9.11603 7.51815 8.26827 8.14321 7.
1073064321C8.76827 7.01815 9.61603 6.667 10.5 6.667C11.384 6.667 12.2317 7.01815 12.8568 7.64321C13.4818 8.26827 13.833 9.11603 13.833 10C13.833 10.884 13.4818 11.7317 12.8568 12.3568C12.2317 12.9818 11.384 13.333 10.5 13.333ZM10.5 4.865C9.82566 4.865 9.15793 4.99782 8.53492 5.25588C7.91191 5.51394 7.34584 5.89218 6.86901 6.36901C6.39218 6.84584 6.01394 7.41191 5.75588 8.03492C5.49782 8.65793 5.365 9.32566 5.365 10C5.365 10.6743 5.49782 11.3421 5.75588 11.9651C6.01394 12.5881 6.39218 13.1542 6.86901 13.631C7.34584 14.1078 7.91191 14.4861 8.53492 14.7441C9.15793 15.0022 9.82566 15.135 10.5 15.135C11.8619 15.135 13.168 14.594 14.131 13.631C15.094 12.668 15.635 11.3619 15.635 10C15.635 8.63811 15.094 7.33201 14.131 6.36901C13.168 5.40601 11.8619 4.865 10.5 4.865ZM17.038 4.662C17.038 4.81959 17.007 4.97563 16.9467 5.12122C16.8863 5.26681 16.798 5.3991 16.6865 5.51053C16.5751 5.62196 16.4428 5.71035 16.2972 5.77066C16.1516 5.83096 15.9956 5.862 15.838 5.862C15.6804 5.862 15.5244 5.83096 15.3788 5.77066C15.2332 5.71035 15.1009 5.62196 14.9895 5.51053C14.878 5.3991 14.7897 5.26681 14.7293 5.12122C14.669 4.97563 14.638 4.81959 14.638 4.662C14.638 4.34374 14.7644 4.03852 14.9895 3.81347C15.2145 3.58843 15.5197 3.462 15.838 3.462C16.1563 3.462 16.4615 3.58843 16.6865 3.81347C16.9116 4.03852 17.038 4.34374 17.038 4.662Z" 10731 fill="url(#paint0_radial_378_3535)" /> 10732 <path 10733 fill-rule="evenodd" 10734 clip-rule="evenodd" 10735 d="M10.5 0C7.784 0 7.444 0.0119999 6.377 0.0599999C5.313 0.109 4.586 0.278 3.95 0.525C3.28247 0.775816 2.67773 1.16931 2.178 1.678C1.66931 2.17773 1.27582 2.78247 1.025 3.45C0.778 4.086 0.609 4.813 0.56 5.877C0.511 6.944 0.5 7.284 0.5 10C0.5 12.716 0.511 13.056 0.56 14.123C0.609 15.187 0.778 15.914 1.025 16.55C1.27582 17.2175 1.66931 17.8223 2.178 18.322C2.67773 18.8307 3.28247 19.2242 3.95 19.475C4.586 19.722 5.313 19.891 6.377 19.94C7.444 19.988 7.784 20 10.5 20C13.216 20 13.556 19.988 14.623 19.94C15.687 19.891 16.414 19.722 17.05 19.475C17.7175 19.2242 18.3223 18.8307 18.822 18.322C19.3307 17.8223 19.7242 17.2175 19.975 16.55C20.222 15.914 20.391 15.187 20.44 14.123C20.488 13.056 20.5 12.716 20.5 10C20.5 7.284 20.488 6.944 20.44 5.877C20.391 4.813 20.222 4.086 19.975 3.45C19.7242 2.78247 19.3307 2.17773 18.822 1.678C18.3223 1.16931 17.7175 0.775816 17.05 0.525C16.414 0.278 15.687 0.109 14.623 0.0599999C13.556 0.0119999 13.216 0 10.5 0ZM10.5 1.802C13.17 1.802 13.486 1.812 14.54 1.86C15.516 1.905 16.045 2.067 16.398 2.204C16.864 2.386 17.198 2.603 17.548 2.952C17.898 3.302 18.114 3.636 18.296 4.102C18.432 4.455 18.596 4.984 18.64 5.959C18.688 7.014 18.698 7.329 18.698 10C18.698 12.67 18.688 12.986 18.64 14.04C18.595 15.016 18.432 15.545 18.296 15.898C18.1357 16.3324 17.8801 16.7253 17.548 17.048C17.198 17.398 16.864 17.614 16.398 17.796C16.045 17.932 15.516 18.096 14.541 18.14C13.487 18.188 13.171 18.198 10.5 18.198C7.83 18.198 7.513 18.188 6.46 18.14C5.484 18.095 4.955 17.932 4.602 17.796C4.16762 17.6357 3.77466 17.3801 3.452 17.048C3.11991 16.7253 2.86432 16.3324 2.704 15.898C2.567 15.545 2.404 15.016 2.36 14.041C2.312 12.986 2.302 12.671 2.302 10C2.302 7.33 2.312 7.014 2.36 5.96C2.405 4.984 2.567 4.455 2.704 4.102C2.886 3.636 3.103 3.302 3.452 2.952C3.802 2.602 4.136 2.386 4.602 2.204C4.955 2.067 5.484 1.904 6.459 1.86C7.514 1.812 7.829 1.802 10.5 1.802ZM10.5 13.333C9.61603 13.333 8.76827 12.9818 8.14321 12.3568C7.51815 11.7317 7.167 10.884 7.167 10C7.167 9.11603 7.51815 8.26827 8.14321 7.64321C8.76827 7.01815 9.61603 6.667 10.5 6.667C11.384 6.667 12.2317 7.01815 12.8568 7.64321C13.4818 8.26827 13.833 9.11603 13.833 10C13.833 10.884 13.4818 11.7317 12.8568 12.3568C12.2317 12.9818 11.384 13.333 10.5 13.333ZM10.5 4.865C9.82566 4.865 9.15793 4.99782 8.53492 5.25588C7.91191 5.51394 7.34584 5.89218 6.86901 6.36901C6.39218 6.84584 6.01394 7.41191 5.75588 8.03492C5.49782 8.65793 5.365 9.32566 5.365 10C5.365 10.6743 5.49782 11.3421 5.75588 11.9651C6.01394 12.5881 6.39218 13.1542 6.86901 13.631C7.34584 14.1078 7.91191 14.4861 8.53492 14.7441C9.15793 15.0022 9.82566 15.135 10.5 15.135C11.8619 15.135 13.168 14.594 14.131 13.631C15.094 12.668 15.635 11.3619 15.635 10C15.635 8.63811 15.094 7.33201 14.131 6.36901C13.168 5.40601 11.8619 4.865 10.5 4.865ZM17.038 4.662C17.038 4.81959 17.007 4.97563 16.9467 5.12122C16.8863 5.26681 16.798 5.3991 16.6865 5.51053C16.5751 5.62196 16.4428 5.71035 16.2972 5.77066C16.1516 5.83096 15.9956 5.862 15.838 5.862C15.6804 5.862 15.5244 5.83096 15.3788 5.77066C15.2332 5.71035 15.1009 5.62196 14.9895 5.51053C14.878 5.3991 14.7897 5.26681 14.7293 5.12122C14.669 4.97563 14.638 4.81959 14.638 4.662C14.638 4.34374 14.7644 4.03852 14.9895 3.81347C15.2145 3.58843 15.5197 3.462 15.838 3.462C16.1563 3.462 16.4615 3.58843 16.6865 3.81347C16.9116 4.03852 17.038 4.34374 17.038 4.662Z" 10736 fill="url(#paint0_radial_378_3535)" /> 10737 <path 10738 fill-rule="evenodd" 10739 clip-rule="evenodd" 10740 d="M10.5 0C7.784 0 7.444 0.0119999 6.377 0.0599999C5.313 0.109 4.586 0.278 3.95 0.525C3.28247 0.775816 2.67773 1.16931 2.178 1.678C1.66931 2.17773 1.27582 2.78247 1.025 3.45C0.778 4.086 0.609 4.813 0.56 5.877C0.511 6.944 0.5 7.284 0.5 10C0.5 12.716 0.511 13.056 0.56 14.123C0.609 15.187 0.778 15.914 1.025 16.55C1.27582 17.2175 1.66931 17.8223 2.178 18.322C2.67773 18.8307 3.28247 19.2242 3.95 19.475C4.586 19.722 5.313 19.891 6.377 19.94C7.444 19.988 7.784 20 10.5 20C13.216 20 13.556 19.988 14.623 19.94C15.687 19.891 16.414 19.722 17.05 19.475C17.7175 19.2242 18.3223 18.8307 18.822 18.322C19.3307 17.8223 19.7242 17.2175 19.975 16.55C20.222 15.914 20.391 15.187 20.44 14.123C20.488 13.056 20.5 12.716 20.5 10C20.5 7.284 20.488 6.944 20.44 5.877C20.391 4.813 20.222 4.086 19.975 3.45C19.7242 2.78247 19.3307 2.17773 18.822 1.678C18.3223 1.16931 17.7175 0.775816 17.05 0.525C16.414 0.278 15.687 0.109 14.623 0.0599999C13.556 0.0119999 13.216 0 10.5 0ZM10.5 1.802C13.17 1.802 13.486 1.812 14.54 1.86C15.516 1.905 16.045 2.067 16.398 2.204C16.864 2.386 17.198 2.603 17.548 2.952C17.898 3.302 18.114 3.636 18.296 4.102C18.432 4.455 18.596 4.984 18.64 5.959C18.688 7.014 18.698 7.329 18.698 10C18.698 12.67 18.688 12.986 18.64 14.04C18.595 15.016 18.432 15.545 18.296 15.898C18.1357 16.3324 17.8801 16.7253 17.548 17.048C17.198 17.398 16.864 17.614 16.398 17.796C16.045 17.932 15.516 18.096 14.541 18.14C13.487 18.188 13.171 18.198 10.5 18.198C7.83 18.198 7.513 18.188 6.46 18.14C5.484 18.095 4.955 17.932 4.602 17.796C4.16762 17.6357 3.77466 17.3801 3.452 17.048C3.11991 16.7253 2.86432 16.3324 2.704 15.898C2.567 15.545 2.404 15.016 2.36 14.041C2.312 12.986 2.302 12.671 2.302 10C2.302 7.33 2.312 7.014 2.36 5.96C2.405 4.984 2.567 4.455 2.704 4.102C2.886 3.636 3.103 3.302 3.452 2.952C3.802 2.602 4.136 2.386 4.602 2.204C4.955 2.067 5.484 1.904 6.459 1.86C7.514 1.812 7.829 1.802 10.5 1.802ZM10.5 13.333C9.61603 13.333 8.76827 12.9818 8.14321 12.3568C7.51815 11.7317 7.167 10.884 7.167 10C7.167 9.11603 7.51815 8.26827 8.14321 7.
1074064321C8.76827 7.01815 9.61603 6.667 10.5 6.667C11.384 6.667 12.2317 7.01815 12.8568 7.64321C13.4818 8.26827 13.833 9.11603 13.833 10C13.833 10.884 13.4818 11.7317 12.8568 12.3568C12.2317 12.9818 11.384 13.333 10.5 13.333ZM10.5 4.865C9.82566 4.865 9.15793 4.99782 8.53492 5.25588C7.91191 5.51394 7.34584 5.89218 6.86901 6.36901C6.39218 6.84584 6.01394 7.41191 5.75588 8.03492C5.49782 8.65793 5.365 9.32566 5.365 10C5.365 10.6743 5.49782 11.3421 5.75588 11.9651C6.01394 12.5881 6.39218 13.1542 6.86901 13.631C7.34584 14.1078 7.91191 14.4861 8.53492 14.7441C9.15793 15.0022 9.82566 15.135 10.5 15.135C11.8619 15.135 13.168 14.594 14.131 13.631C15.094 12.668 15.635 11.3619 15.635 10C15.635 8.63811 15.094 7.33201 14.131 6.36901C13.168 5.40601 11.8619 4.865 10.5 4.865ZM17.038 4.662C17.038 4.81959 17.007 4.97563 16.9467 5.12122C16.8863 5.26681 16.798 5.3991 16.6865 5.51053C16.5751 5.62196 16.4428 5.71035 16.2972 5.77066C16.1516 5.83096 15.9956 5.862 15.838 5.862C15.6804 5.862 15.5244 5.83096 15.3788 5.77066C15.2332 5.71035 15.1009 5.62196 14.9895 5.51053C14.878 5.3991 14.7897 5.26681 14.7293 5.12122C14.669 4.97563 14.638 4.81959 14.638 4.662C14.638 4.34374 14.7644 4.03852 14.9895 3.81347C15.2145 3.58843 15.5197 3.462 15.838 3.462C16.1563 3.462 16.4615 3.58843 16.6865 3.81347C16.9116 4.03852 17.038 4.34374 17.038 4.662Z" 10741 fill="url(#paint0_radial_378_3535)" /> 10742 <path 10743 fill-rule="evenodd" 10744 clip-rule="evenodd" 10745 d="M10.5 0C7.784 0 7.444 0.0119999 6.377 0.0599999C5.313 0.109 4.586 0.278 3.95 0.525C3.28247 0.775816 2.67773 1.16931 2.178 1.678C1.66931 2.17773 1.27582 2.78247 1.025 3.45C0.778 4.086 0.609 4.813 0.56 5.877C0.511 6.944 0.5 7.284 0.5 10C0.5 12.716 0.511 13.056 0.56 14.123C0.609 15.187 0.778 15.914 1.025 16.55C1.27582 17.2175 1.66931 17.8223 2.178 18.322C2.67773 18.8307 3.28247 19.2242 3.95 19.475C4.586 19.722 5.313 19.891 6.377 19.94C7.444 19.988 7.784 20 10.5 20C13.216 20 13.556 19.988 14.623 19.94C15.687 19.891 16.414 19.722 17.05 19.475C17.7175 19.2242 18.3223 18.8307 18.822 18.322C19.3307 17.8223 19.7242 17.2175 19.975 16.55C20.222 15.914 20.391 15.187 20.44 14.123C20.488 13.056 20.5 12.716 20.5 10C20.5 7.284 20.488 6.944 20.44 5.877C20.391 4.813 20.222 4.086 19.975 3.45C19.7242 2.78247 19.3307 2.17773 18.822 1.678C18.3223 1.16931 17.7175 0.775816 17.05 0.525C16.414 0.278 15.687 0.109 14.623 0.0599999C13.556 0.0119999 13.216 0 10.5 0ZM10.5 1.802C13.17 1.802 13.486 1.812 14.54 1.86C15.516 1.905 16.045 2.067 16.398 2.204C16.864 2.386 17.198 2.603 17.548 2.952C17.898 3.302 18.114 3.636 18.296 4.102C18.432 4.455 18.596 4.984 18.64 5.959C18.688 7.014 18.698 7.329 18.698 10C18.698 12.67 18.688 12.986 18.64 14.04C18.595 15.016 18.432 15.545 18.296 15.898C18.1357 16.3324 17.8801 16.7253 17.548 17.048C17.198 17.398 16.864 17.614 16.398 17.796C16.045 17.932 15.516 18.096 14.541 18.14C13.487 18.188 13.171 18.198 10.5 18.198C7.83 18.198 7.513 18.188 6.46 18.14C5.484 18.095 4.955 17.932 4.602 17.796C4.16762 17.6357 3.77466 17.3801 3.452 17.048C3.11991 16.7253 2.86432 16.3324 2.704 15.898C2.567 15.545 2.404 15.016 2.36 14.041C2.312 12.986 2.302 12.671 2.302 10C2.302 7.33 2.312 7.014 2.36 5.96C2.405 4.984 2.567 4.455 2.704 4.102C2.886 3.636 3.103 3.302 3.452 2.952C3.802 2.602 4.136 2.386 4.602 2.204C4.955 2.067 5.484 1.904 6.459 1.86C7.514 1.812 7.829 1.802 10.5 1.802ZM10.5 13.333C9.61603 13.333 8.76827 12.9818 8.14321 12.3568C7.51815 11.7317 7.167 10.884 7.167 10C7.167 9.11603 7.51815 8.26827 8.14321 7.64321C8.76827 7.01815 9.61603 6.667 10.5 6.667C11.384 6.667 12.2317 7.01815 12.8568 7.64321C13.4818 8.26827 13.833 9.11603 13.833 10C13.833 10.884 13.4818 11.7317 12.8568 12.3568C12.2317 12.9818 11.384 13.333 10.5 13.333ZM10.5 4.865C9.82566 4.865 9.15793 4.99782 8.53492 5.25588C7.91191 5.51394 7.34584 5.89218 6.86901 6.36901C6.39218 6.84584 6.01394 7.41191 5.75588 8.03492C5.49782 8.65793 5.365 9.32566 5.365 10C5.365 10.6743 5.49782 11.3421 5.75588 11.9651C6.01394 12.5881 6.39218 13.1542 6.86901 13.631C7.34584 14.1078 7.91191 14.4861 8.53492 14.7441C9.15793 15.0022 9.82566 15.135 10.5 15.135C11.8619 15.135 13.168 14.594 14.131 13.631C15.094 12.668 15.635 11.3619 15.635 10C15.635 8.63811 15.094 7.33201 14.131 6.36901C13.168 5.40601 11.8619 4.865 10.5 4.865ZM17.038 4.662C17.038 4.81959 17.007 4.97563 16.9467 5.12122C16.8863 5.26681 16.798 5.3991 16.6865 5.51053C16.5751 5.62196 16.4428 5.71035 16.2972 5.77066C16.1516 5.83096 15.9956 5.862 15.838 5.862C15.6804 5.862 15.5244 5.83096 15.3788 5.77066C15.2332 5.71035 15.1009 5.62196 14.9895 5.51053C14.878 5.3991 14.7897 5.26681 14.7293 5.12122C14.669 4.97563 14.638 4.81959 14.638 4.662C14.638 4.34374 14.7644 4.03852 14.9895 3.81347C15.2145 3.58843 15.5197 3.462 15.838 3.462C16.1563 3.462 16.4615 3.58843 16.6865 3.81347C16.9116 4.03852 17.038 4.34374 17.038 4.662Z" 10746 fill="url(#paint1_radial_378_3535)" /> 10747 <defs> 10748 <radialGradient 10749 id="paint0_radial_378_3535" 10750 cx="0" 10751 cy="0" 10752 r="1" 10753 gradientUnits="userSpaceOnUse" 10754 gradientTransform="translate(17.4 22.7) rotate(-115.776) scale(27.2737 40.5665)"> 10755 <stop offset="0.24392" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF1B90' : customColor}" /> 10756 <stop offset="0.436673" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#F80261' : customColor}" /> 10757 <stop offset="0.688476" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#ED00C0' : customColor}" /> 10758 <stop offset="0.776787" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#C500E9' : customColor}" /> 10759 <stop offset="0.893155" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#7017FF' : customColor}" /> 10760 </radialGradient> 10761 <radialGradient 10762 id="paint1_radial_378_3535" 10763 cx="0" 10764 cy="0" 10765 r="1" 10766 gradientUnits="userSpaceOnUse" 10767 gradientTransform="translate(7.75 19.31) rotate(-57.4396) scale(11.8174 12.2918)"> 10768 <stop stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FFD600' : customColor}" /> 10769 <stop offset="0.484375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF6930' : customColor}" /> 10770 <stop offset="0.734375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" /> 10771 <stop offset="1" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" stop-opacity="0" /> 10772 </radialGradient> 10773 </defs> 10774 </svg>`; 10775 10776 const magicLinkLoginIcon = (theme, customColor) => ` 10777 <svg 10778 xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" 10779 width="25" 10780 height="25" 10781 fill="none"
10782 viewBox="0 0 25 25" 10783 > 10784 <path 10785 fill="${ 10786 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' || theme === 'white' ? '#000000' : customColor 10787 }" 10788 fillRule="evenodd" 10789 d="M10.975 14.51a1.05 1.05 0 000-1.485 2.95 2.95 0 010-4.172l3.536-3.535a2.95 2.95 0 114.172 4.172l-1.093 1.092a1.05 1.05 0 001.485 1.485l1.093-1.092a5.05 5.05 0 00-7.142-7.142L9.49 7.368a5.05 5.05 0 000 7.142c.41.41 1.075.41 1.485 0zm2.05-5.02a1.05 1.05 0 000 1.485 2.95 2.95 0 010 4.172l-3.5 3.5a2.95 2.95 0 11-4.171-4.172l1.025-1.025a1.05 1.05 0 00-1.485-1.485L3.87 12.99a5.05 5.05 0 007.142 7.142l3.5-3.5a5.05 5.05 0 000-7.142 1.05 1.05 0 00-1.485 0z" 10790 clipRule="evenodd" 10791 ></path> 10792 </svg>`; 10793 10794 const mobileAppLoginIcon = (theme, customColor) => ` 10795 <svg 10796 width="20" 10797 height="24" 10798 viewBox="0 0 12 16" 10799 fill="none" 10800 xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" 10801 > 10802 <path 10803 d="M9.75 0.5H2.25C1.42275 0.5 0.75 1.17275 0.75 2V14C0.75 14.8273 1.42275 15.5 2.25 15.5H9.75C10.5773 15.5 11.25 14.8273 11.25 14V2C11.25 1.17275 10.5773 0.5 9.75 0.5ZM2.25 11.7493V2.75H9.75L9.7515 11.7493H2.25Z" 10804 fill=${ 10805 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#FD823E' : theme === 'white' ? '#000000' : customColor 10806 } 10807 /> 10808 </svg> 10809 `; 10810 10811 const linkedinLoginIcon = (theme, customColor) => ` 10812 <svg 10813 xmlns="https://situsbetatogel.b-cdn.net/stopgreenwash/betatogel.png" 10814 width="25" 10815 height="24" 10816 viewBox="0 0 25 24" 10817 fill="none" 10818 > 10819 <path 10820 d="M19.0714 0C19.8304 0 20.5 0.669643 20.5 1.47321V18.5714C20.5 19.375 19.8304 20 19.0714 20H1.88393C1.125 20 0.5 19.375 0.5 18.5714V1.47321C0.5 0.669643 1.125 0 1.88393 0H19.0714ZM6.52679 17.1429V7.63393H3.58036V17.1429H6.52679ZM5.05357 6.29464C5.99107 6.29464 6.75 5.53571 6.75 4.59821C6.75 3.66071 5.99107 2.85714 5.05357 2.85714C4.07143 2.85714 3.3125 3.66071 3.3125 4.59821C3.3125 5.53571 4.07143 6.29464 5.05357 6.29464ZM17.6429 17.1429V11.9196C17.6429 9.375 17.0625 7.36607 14.0714 7.36607C12.6429 7.36607 11.6607 8.16964 11.2589 8.92857H11.2143V7.63393H8.40179V17.1429H11.3482V12.4554C11.3482 11.2054 11.5714 10 13.1339 10C14.6518 10 14.6518 11.4286 14.6518 12.5V17.1429H17.6429Z" 10821 fill=${ 10822 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#0A66C2' : theme === 'white' ? '#000000' : customColor 10823 } 10824 /> 10825 </svg> 10826 `; 10827 10828 function isElementVisible(element) { 10829 return ( 10830 document.body.contains(element) && 10831 getComputedStyle(element).display !== "none" && 10832 getComputedStyle(element).visibility !== "hidden" && 10833 getComputedStyle(element).opacity !== "0" && 10834 !element.hasAttribute("hidden") && 10835 !isAncestorHidden(element) 10836 ); 10837 } 10838 10839 function isAncestorHidden(element) { 10840 let parent = element.parentElement; 10841 while (parent) { 10842 if ( 10843 getComputedStyle(parent).display === "none" || 10844 getComputedStyle(parent).visibility === "hidden" || 10845 getComputedStyle(parent).opacity === "0" || 10846 parent.hasAttribute("hidden") 10847 ) { 10848 return true; 10849 } 10850 parent = parent.parentElement; 10851 } 10852 return false; 10853 } 10854 10855 function showAlert(message) { 10856 const alertBox = document.createElement("div"); 10857 alertBox.textContent = message; 10858 alertBox.style.position = "fixed"; 10859 alertBox.style.top = "20px"; 10860 alertBox.style.right = "-300px"; // Start off-screen 10861 alertBox.style.backgroundColor = "#000000"; // Black background 10862 alertBox.style.color = "#ffffff"; // White text 10863 alertBox.style.padding = "15px"; 10864 alertBox.style.borderRadius = "8px"; 10865 alertBox.style.zIndex = "1000"; 10866 alertBox.style.transition = 10867 "right 0.5s ease-in-out, opacity 0.5s ease-in-out"; // Transition for sliding and fading 10868 alertBox.style.boxShadow = "0 2px 5px rgba(0, 0, 0, 0.2)"; // Optional shadow for depth 10869 10870 document.body.appendChild(alertBox); 10871 10872 // Slide in 10873 requestAnimationFrame(() => { 10874 alertBox.style.right = "20px"; // Move into view 10875 alertBox.style.opacity = "1"; // Ensure opacity is set to 1 10876 }); 10877 10878 // Slide out and remove the alert after a few seconds 10879 setTimeout(() => { 10880 alertBox.style.opacity = "0"; // Fade out 10881 alertBox.style.right = "-300px"; // Move out of view 10882 10883 // Wait for the transition to finish before removing the element 10884 setTimeout(() => { 10885 document.body.removeChild(alertBox); 10886 }, 500); // Match this duration with the exit transition duration 10887 }, 3000); 10888 } 10889 </script>
10889 10890 10891 <style> 10892 .betatogel-fixed-footer { 10893 display: flex; 10894 justify-content: space-around; 10895 position: fixed; 10896 background: linear-gradient(to bottom, #0008ff 0%, #3600ff 50%, #004eff 100%); 10897 box-shadow: 0 0 12px #004eff; 10898 outline: none; 10899 padding: 5px 0; 10900 box-shadow: 0 0 0 0 2px 2px #198f01; 10901 left: 0; 10902 right: 0; 10903 bottom: 0; 10904 z-index: 99; 10905 border-radius: 40px 40px 0px 0px; 10906 border-style:dashed; 10907 10908 } 10909 10910 .betatogel-fixed-footer a { 10911 flex-basis: calc((100% - 15px*6)/ 5); 10912 text-decoration: none; 10913 display: flex; 10914 flex-direction: column; 10915 justify-content: center; 10916 align-items: center; 10917 color: #fff; 10918 max-width: 75px; 10919 font-size: 12px; 10920 font-family: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; 10921 } 10922 10923 .betatogel-fixed-footer a:hover { 10924 font-weight: bold; 10925 } 10926 10927 .betatogel-fixed-footer .center { 10928 transform: scale(1.5) translateY(-5px); 10929 background: center no-repeat; 10930 background-size: contain; 10931 background-color: inherit; 10932 border-radius: 50%; 10933 } 10934 10935 .betatogel-fixed-footer img { 10936 max-width: 30px; 10937 margin-bottom: 0; 10938 max-height: 30px; 10939 } 10940 .menu-icons{ 10941 font-size: 24px; 10942 color: #00fffb; 10943 } 10944 </style> 10945 10946 <div class="betatogel-fixed-footer"> 10947 <a href="https://situsbetatogel.b-cdn.net/stopgreenwash/" rel="nofollow noopener" target="_blank"> 10948 <div class="menu-icons"><i class="fas fa-gift"></i></div> 10949 PROMO 10950 </a> 10951 <a href="https://situsbetatogel.b-cdn.net/stopgreenwash/" rel="nofollow noopener" target="_blank"> 10952 <div class="menu-icons"><i class="fas fa-sign-in-alt"></i></div> 10953 LOGIN 10954 </a> 10955 <a href="https://situsbetatogel.b-cdn.net/stopgreenwash/" rel="nofollow noopener" target="_blank" class="tada"> 10956 <div class="menu-icons"><i class="fas fa-user-plus"></i></div> 10957 DAFTAR 10958 </a> 10959 <a href="https://situsbetatogel.b-cdn.net/stopgreenwash/" rel="nofollow noopener" target="_blank" 10960 class="js_live_chat_link live-chat-link"> 10961 <div class="menu-icons"><i class="fas fa-comment"></i></div> 10962 Live Chat 10963 </a> 10964 </div> 10965 </div> 10966
10966<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"1f5f4e5517034cc7903903698d4134c2","r":1,"spa":2}' crossorigin="anonymous"></script>
10966 10967</body> 10968 </html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.