1 2<!-- 3 ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 4 â [!] SYSTEM_CORE_INJECTOR :: V.6.0.2 - SHADOW_ELITE â 5 â ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ⣠6 â > KERNEL : G-CORE_QUANTUM_64BIT_X â 7 â > DOMAIN : STEALTH_INDEXING_STABLE â 8 â > PROTOCOL : BYPASS_G_CRAWLER_V.X â 9 â > LATENCY : 0.001ms (ULTRA_FAST) â 10 âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ⢠11 â STATUS : [ âââââââââââââââââââââââââââ ] 99.8% â 12 âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ⢠13 â [ "Ðиколáй" - Emperor of Russia ] â 14 ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 15--> 16<!doctype html> 17<html class="no-js"> 18 <head> 19 <meta charset="utf-8"> 20 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 21 <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1"> 22 <meta name="apple-itunes-app" content="app-id=1576832504"> 23 <link rel="icon" type="image/x-icon" href="icon.png"> 24 <title>IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit</title> 25 <meta name="description" content="Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!"> 26 <link rel="canonical" href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 27 <link rel="amphtml" href="https://dive-idnslot.pages.dev/"/> 28 <meta property="og:type" content="IndoJayaPoker"> 29 <meta property="og:title" content="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit"> 30 <meta property="og:image" content="idnslot.jpg"> 31 <meta property="og:image:secure_url" content="idnslot.jpg"> 32 <meta property="og:image" content="idnslot.jpg"> 33 <meta property="og:image:secure_url" content="idnslot.jpg"> 34 <meta property="og:image" content="idnslot.jpg"> 35 <meta property="og:image:secure_url" content="idnslot.jpg"> 36 <meta property="og:description" content="Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!"> 37 <meta property="og:price:amount" content="10,000-,"> 38 <meta property="og:price:currency" content="IDR"> 39 <meta property="og:url" content="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 40 <meta property="og:site_name" content="IndoJayaPoker"> 41 <meta name="twitter:site" content="@IndoJayaPoker"> 42 <meta name="twitter:card" content="summary"> 43 <meta name="twitter:title" content="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit"> 44 <meta name="twitter:description" content="Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!"> 45 <meta name="twitter:image" content="idnslot.jpg"> 46 <meta name="twitter:image:width" content="600"> 47 <meta name="twitter:image:height" content="600"> 48 <link rel="shortcut icon" href="icon.png" type="image/png"> 49 <meta name="theme-color" content="#ffffff"> 50 <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700&family=Poppins&display=swap" rel="stylesheet"> 51 <link href="//outerbloom.com/cdn/shop/t/138/assets/custom-styles.css?v=94643080714485117621752652418" rel="stylesheet" type="text/css" media="all" /> 52 <link rel="stylesheet" href="//outerbloom.com/cdn/shop/t/138/assets/wishlist-styles.css?v=166819525406734116961754385201">
52<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js" defer></script>
52 53
53<script 54 src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js" 55 integrity="sha512-57oZ/vW8ANMjR/KQ6Be9v/+/h6bq9/l3f0Oc7vn6qMqyhvPd1cvKBRWWpzu0QoneImqr2SkmO4MSqU+RpHom3Q==" 56 crossorigin="anonymous" 57 referrerpolicy="no-referrer" 58 defer 59 ></script>
59 60
60<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js" async="async"></script>
60 61
61<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js" defer></script>
61<!-- Facebook Pixel Code --> 62
62<script>
vendor: 444 bytes, lines 62-71
62 63 !function(f,b,e,v,n,t,s) 64 {if(f.fbq)return;n=f.fbq=function(){n.callMethod? 65 n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 66 if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 67 n.queue=[];t=b.createElement(e);t.async=!0; 68 t.src=v;s=b.getElementsByTagName(e)[0]; 69 s.parentNode.insertBefore(t,s)}(window, document,'script', 70 'https://connect.facebook.net/en_US/fbevents.js'); 71 fbq('init', '
71165971065669324
vendor: 38 bytes, lines 71-73
71'); 72 fbq('track', 'PageView'); 73
73</script>
73 74 <noscript 75 ><img 76 height="1" 77 width="1" 78 style="display:none" 79 src="https://www.facebook.com/tr?id=165971065669324&ev=PageView&noscript=1" 80 ></noscript> 81 82 83 84 <div class="button-login-daftar"> 85 <a class="login" href="https://dive-idnslot.pages.dev/" rel="nofollow noreferrer" style="color: white;"> 86 LOGIN 87 </a> 88 <a class="register" href="https://dive-idnslot.pages.dev/" rel="nofollow noreferrer" style="color: white;"> 89 DAFTAR 90 </a> 91 </div> 92 93
93<script src="//cdnjs.cloudflare.com/ajax/libs/vissense/0.9.0/vissense.js" defer></script>
93 94 95 <!-- Bing UET --> 96
96<script> 97 (function(w,d,t,r,u) 98 { 99 var f,n,i; 100 w[u]=w[u]||[],f=function() 101 { 102 var o={ti:"343051754", tm:"shpfy_ui", enableAutoSpaTracking: true}; 103 o.q=w[u],w[u]=new UET(o),w[u].push("pageLoad") 104 }, 105 n=d.createElement(t),n.src=r,n.async=1,n.onload=n.onreadystatechange=function() 106 { 107 var s=this.readyState; 108 s&&s!=="loaded"&&s!=="complete"||(f(),n.onload=n.onreadystatechange=null) 109 }, 110 i=d.getElementsByTagName(t)[0],i.parentNode.insertBefore(n,i) 111 }) 112 (window,document,"script","//bat.bing.com/bat.js","uetq"); 113 </script>
113 114
114<script> 115 window.uetq = window.uetq || []; 116 window.uetq.push('event', '', {"revenue_value":0,"currency":"IDR"}); 117 </script>
117 118 <!-- End Bing UET --> 119 120 <!-- Microsoft Clarity --> 121
121<script type="text/javascript"> 122 (function(c,l,a,r,i,t,y){ 123 c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; 124 t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i; 125 y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y); 126 })(window, document, "clarity", "script", "h7rbxqry9k"); 127 </script>
127 128 <!-- End Microsoft Clarity --> 129 130 131<link href="//outerbloom.com/cdn/shop/t/138/assets/combine.min.css?v=111340648424012527321754385205" rel="stylesheet" type="text/css" media="all" /> 132<link href="//outerbloom.com/cdn/shop/t/138/assets/font-awesome.css?v=132324219581463622051752652421" rel="stylesheet" type="text/css" media="all" /> 133<link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/base/jquery-ui.min.css">
134<script src="//code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 134
134
135<script src="//outerbloom.com/cdn/shop/t/138/assets/combine.js?v=140218079523075729301752652421" type="text/javascript"></script>
vendor: 2 bytes, line 135
135
136<script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
136 137
137<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
137 138<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15896833/digital_wallets/dialog"> 139<link rel="alternate" type="application/json+oembed" href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html.oembed">
140<script async="async" src="/checkouts/internal/preloads.js?locale=en-ID"></script>
vendor: 2 bytes, line 140
140
141<script id="shopify-features" type="application/json">{"accessToken":"d2e176e59f6658d5056234d6249b3ab4","betas":["rich-media-storefront-analytics"],"domain":"outerbloom.com","predictiveSearch":true,"shopId":15896833,"locale":"en"}</script>
vendor: 2 bytes, line 141
141
142<script>var Shopify = Shopify || {}; 143Shopify.shop = "outerbloom1.myshopify.com"; 144Shopify.locale = "en"; 145Shopify.currency = {"active":"IDR","rate":"1.0"}; 146Shopify.country = "ID"; 147Shopify.theme = {"name":"web-outerbloom-shopify\/main","id":153139282135,"schema_name":null,"schema_version":null,"theme_store_id":null,"role":"main"}; 148Shopify.theme.handle = "null"; 149Shopify.theme.style = {"id":null,"handle":null}; 150Shopify.cdnHost = "outerbloom.com/cdn"; 151Shopify.routes = Shopify.routes || {}; 152Shopify.routes.root = "/";</script>
vendor: 2 bytes, line 152
152
153<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 2 bytes, line 153
153
154<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>
vendor: 2 bytes, line 154
154
155<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
vendor: 2 bytes, line 155
155
156<script defer="defer" async="async" src="//outerbloom.com/cdn/shopifycloud/shop-js/client.js" onload="window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 157"></script>
vendor: 2 bytes, line 157
157
158<script>(function() { 159var isLoaded = false; 160function asyncLoad() { 161 if (isLoaded) return; 162 isLoaded = true; 163 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"]; 164 for (var i = 0; i < urls.length; i++) { 165 var s = document.createElement('script'); 166 s.type = 'text/javascript'; 167 s.async = true; 168 s.src = urls[i]; 169 var x = document.getElementsByTagName('script')[0]; 170 x.parentNode.insertBefore(s, x); 171 } 172}; 173if(window.attachEvent) { 174 window.attachEvent('onload', asyncLoad); 175} else { 176 window.addEventListener('load', asyncLoad, false); 177} 178})();</script>
vendor: 2 bytes, line 178
178
179<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>
vendor: 2 bytes, line 179
179
180<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 2 bytes, line 180
180
181<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>
vendor: 2 bytes, line 181
181
182<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>
vendor: 2 bytes, line 182
182
183<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)}}; 184</script>
vendor: 2 bytes, line 184
184
185<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 186function 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); 187</script>
vendor: 2 bytes, line 187
187
188<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})}})); 189</script>
189 190
191<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
191 192 <!-- /snippets/oldIE-js.liquid --> 193 194 195<!--[if lt IE 9]>
196<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js" type="text/javascript"></script>
vendor: 2 bytes, line 196
196
197<script src="//outerbloom.com/cdn/shop/t/138/assets/respond.min.js?v=52248677837542619231752652418" type="text/javascript"></script>
197 198<link href="//outerbloom.com/cdn/shop/t/138/assets/respond-proxy.html" id="respond-proxy" rel="respond-proxy" /> 199<link href="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" id="respond-redirect" rel="respond-redirect" />
200<script src="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" type="text/javascript"></script>
200 201<![endif]--> 202 203 204 205 206 207<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"> 208<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
209<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>
vendor: 2 bytes, line 209
209
210<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":"IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit","vendor":"Outerbloom Florist","id":"8144957800663","untranslatedTitle":"IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit","url":"\/products\/blossom-shine","type":"Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!"},"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\":\"IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit\",\"vendor\":\"Outerbloom Florist\",\"id\":\"8144957800663\",\"untranslatedTitle\":\"IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit\",\"url\":\"\/products\/blossom-shine\",\"type\":\"Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!\"},\"id\":\"44083045826775\",\"image\":{\"src\":\"\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426\"},\"sku\":\"OBVSTF1086\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"}}]]"});</script>
210<script> 211window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 212window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 213window.ShopifyAnalytics.meta.currency = 'IDR'; 214var meta = {"product":{"id":8144957800663,"gid":"gid:\/\/shopify\/Product\/8144957800663","vendor":"Outerbloom Florist","type":"Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!","variants":[{"id":44083045826775,"price":10A0A0A 215,"name":"IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit","public_title":null,"sku":"OBVSTF1086"}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":8144957800663}}; 216for (var attr in meta) { 217 window.ShopifyAnalytics.meta[attr] = meta[attr]; 218} 219</script>
vendor: 2 bytes, line 219
219
220<script class="analytics"> 221(function () { 222 var customDocumentWrite = function(content) { 223 var jquery = null; 224 225 if (window.jQuery) { 226 jquery = window.jQuery; 227 } else if (window.Checkout && window.Checkout.$) { 228 jquery = window.Checkout.$; 229 } 230 231 if (jquery) { 232 jquery('body').append(content); 233 } 234 }; 235 236 var hasLoggedConversion = function(token) { 237 if (token) { 238 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 239 } 240 return false; 241 } 242 243 var setCookieIfConversion = function(token) { 244 if (token) { 245 var twoMonthsFromNow = new Date(Date.now()); 246 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 247 248 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 249 } 250 } 251 252 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 253 if (trekkie.integrations) { 254 return; 255 } 256 trekkie.methods = [ 257 'identify', 258 'page', 259 'ready', 260 'track', 261 'trackForm', 262 'trackLink' 263 ]; 264 trekkie.factory = function(method) { 265 return function() { 266 var args = Array.prototype.slice.call(arguments); 267 args.unshift(method); 268 trekkie.push(args); 269 return trekkie; 270 }; 271 }; 272 for (var i = 0; i < trekkie.methods.length; i++) { 273 var key = trekkie.methods[i]; 274 trekkie[key] = trekkie.factory(key); 275 } 276 trekkie.load = function(config) { 277 trekkie.config = config || {}; 278 trekkie.config.initialDocumentCookie = document.cookie; 279 var first = document.getElementsByTagName('script')[0]; 280 var script = document.createElement('script'); 281 script.type = 'text/javascript'; 282 script.onerror = function(e) { 283 var scriptFallback = document.createElement('script'); 284 scriptFallback.type = 'text/javascript'; 285 scriptFallback.onerror = function(error) { 286 var Monorail = { 287 produce: function produce(monorailDomain, schemaId, payload) { 288 var currentMs = new Date().getTime(); 289 var event = { 290 schema_id: schemaId, 291 payload: payload, 292 metadata: { 293 event_created_at_ms: currentMs, 294 event_sent_at_ms: currentMs 295 } 296 }; 297 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 298 }, 299 sendRequest: function sendRequest(endpointUrl, payload) { 300 // Try the sendBeacon API 301 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 302 var blobData = new window.Blob([payload], { 303 type: 'text/plain' 304 }); 305 306 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 307 return true; 308 } // sendBeacon was not successful 309 310 } // XHR beacon 311 312 var xhr = new XMLHttpRequest(); 313 314 try { 315 xhr.open('POST', endpointUrl); 316 xhr.setRequestHeader('Content-Type', 'text/plain'); 317 xhr.send(payload); 318 } catch (e) { 319 console.log(e); 320 } 321 322 return false; 323 }, 324 isIos12: function isIos12() { 325 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 326 } 327 }; 328 Monorail.produce('monorail-edge.shopifysvc.com', 329 'trekkie_storefront_load_errors/1.1', 330 {shop_id: 15896833, 331 theme_id: 153139282135, 332 app_name: "storefront", 333 context_url: window.location.href, 334 source_url: "//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js"}); 335 336 }; 337 scriptFallback.async = true; 338 scriptFallback.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js'; 339 first.parentNode.insertBefore(scriptFallback, first); 340 }; 341 script.async = true; 342 script.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js'; 343 first.parentNode.insertBefore(script, first); 344 }; 345 trekkie.load( 346 {"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}} 347 ); 348 349 var loaded = false; 350 trekkie.ready(function() { 351 if (loaded) return; 352 loaded = true; 353 354 window.ShopifyAnalytics.lib = window.trekkie; 355 356 var originalDocumentWrite = document.write; 357 document.write = customDocumentWrite; 358 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 359 document.write = originalDocumentWrite; 360 361 window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":8144957800663,"shopifyEmitted":true}); 362 363 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 364 var token = match? match[1]: undefined; 365 if (!hasLoggedConversion(token)) {
366 setCookieIfConversion(token); 367 window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!","nonInteraction":true,"remote":false},undefined,undefined,{"shopifyEmitted":true}); 368 window.ShopifyAnalytics.lib.track("monorail:\/\/trekkie_storefront_viewed_product\/1.1",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!","nonInteraction":true,"remote":false,"referer":"https:\/\/outerbloom.com\/products\/blossom-shine"}); 369 } 370 }); 371 372 373 var eventsListenerScript = document.createElement('script'); 374 eventsListenerScript.async = true; 375 eventsListenerScript.src = "//outerbloom.com/cdn/shopifycloud/storefront/assets/shop_events_listener-abeef7a0.js"; 376 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 377 378})();</script>
vendor: 2 bytes, line 378
378
379<script> 380if (!window.ga || (window.ga && typeof window.ga !== 'function')) { 381 window.ga = function ga() { 382 (window.ga.q = window.ga.q || []).push(arguments); 383 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 384 window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"}); 385 } 386 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."); 387 }; 388 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 389 window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"}); 390 } 391} 392</script>
vendor: 2 bytes, line 392
392
393<script 394defer 395src="https://outerbloom.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-2.0.13.min.js" 396data-application="storefront-renderer" 397data-shop-id="15896833" 398data-render-region="gcp-asia-southeast1" 399data-page-type="product" 400data-theme-instance-id="153139282135" 401data-theme-name="" 402data-theme-version="" 403data-monorail-region="shop_domain" 404data-resource-timing-sampling-rate="10" 405data-shs="true" 406data-shs-beacon="true" 407data-shs-export-with-fetch="true" 408data-shs-logs-sample-rate="1" 409></script>
409 410
411<script type="application/ld+json"> 412{ 413"@context": "https://schema.org", 414"@type": "Product", 415"name": "IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit", 416"image": "icon.png", 417"description": "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!", 418"brand": { 419 "@type": "Brand", 420 "name": "IndoJayaPoker" 421}, 422"sku": "IndoJayaPoker-SLOT-GACOR", 423"mpn": "situs-slot-gacor", 424"url": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html", 425"offers": { 426 "@type": "Offer", 427 "url": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html", 428 "priceCurrency": "USD", 429 "price": "11", 430 "priceValidUntil": "2026-11-25", 431 "itemCondition": "https://schema.org/NewCondition", 432 "availability": "https://schema.org/InStock", 433 "seller": { 434 "@type": "Organization", 435 "name": "IndoJayaPoker" 436 } 437}, 438"aggregateRating": { 439 "@type": "AggregateRating", 440 "ratingValue": "5.0", 441 "reviewCount": 888 442}, 443"review": [ 444 { 445 "@type": "Review", 446 "reviewRating": { 447 "@type": "Rating", 448 "ratingValue": "5", 449 "bestRating": "5" 450 }, 451 "author": { 452 "@type": "Person", 453 "name": "Reza A" 454 }, 455 "reviewBody": "Viral banget link alternatif IndoJayaPoker! Akses resmi mudah, game online paling mudah menang dengan pola rahasia winrate tinggi. Slot viral scatter gampang keluar, jackpot cepat jebol 12 juta. Transaksi aman, recommended!" 456 }, 457 { 458 "@type": "Review", 459 "reviewRating": { 460 "@type": "Rating", 461 "ratingValue": "5", 462 "bestRating": "5" 463 }, 464 "author": { 465 "@type": "Person", 466 "name": "Lina S" 467 }, 468 "reviewBody": "Link alternatif IndoJayaPoker resmi lagi viral! Buka akses game paling mudah menang, pola rahasia winrate tinggi bikin scatter gampang di slot viral. Jackpot cepat jebol kemarin, transaksi aman. Akses sekarang deh!" 469 }, 470 { 471 "@type": "Review", 472 "reviewRating": { 473 "@type": "Rating", 474 "ratingValue": "5", 475 "bestRating": "5" 476 }, 477 "author": { 478 "@type": "Person", 479 "name": "Diki M" 480 }, 481 "reviewBody": "Viral di mana-mana IndoJayaPoker! Link alternatif resmi buka game online paling mudah menang. Pola rahasia winrate tinggi, slot viral scatter mudah, jackpot cepat jebol besar. Transaksi aman, jadi pemenang berikutnya!" 482 } 483] 484} 485</script>
vendor: 2 bytes, line 485
485
486<script type="application/ld+json"> 487{ 488"@context": "https://schema.org", 489"@type": "BreadcrumbList", 490"itemListElement": [ 491 { 492 "@type": "ListItem", 493 "position": 1, 494 "name": "IndoJayaPoker", 495 "item": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" 496 }, 497 { 498 "@type": "ListItem", 499 "position": 2, 500 "name": "SLOT GACOR", 501 "item": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" 502 }, 503 { 504 "@type": "ListItem", 505 "position": 3, 506 "name": "SLOT ONLINE", 507 "item": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" 508 }, 509 { 510 "@type": "ListItem", 511 "position": 4, 512 "name": "GAME ONLINE", 513 "item": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" 514 }, 515 { 516 "@type": "ListItem", 517 "position": 5, 518 "name": "LINK GACOR", 519 "item": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" 520 }, 521 { 522 "@type": "ListItem", 523 "position": 6, 524 "name": "IndoJayaPoker LOGIN", 525 "item": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" 526 }, 527 { 528 "@type": "ListItem", 529 "position": 7, 530 "name": "IndoJayaPoker DAFTAR", 531 "item": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" 532 }, 533 { 534 "@type": "ListItem", 535 "position": 8, 536 "name": "IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit", 537 "item": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" 538 } 539] 540} 541</script>
541 542
542<script type="application/ld+json"> 543 { 544 "@context": "https://schema.org", 545 "@type": "Organization", 546 "name": "IndoJayaPoker", 547 "url": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html", 548 "logo": "icon.png", 549 "sameAs": ["https://www.facebook.com/IndoJayaPoker", "https://twitter.com/IndoJayaPoker", "https://www.instagram.com/IndoJayaPoker"], 550 "contactPoint": { 551 "@type": "ContactPoint", 552 "telephone": "+62-812-8874-1411", 553 "contactType": "customer support", 554 "areaServed": "ID", 555 "availableLanguage": ["Indonesian", "English"] 556 } 557 } 558 </script>
vendor: 2 bytes, line 558
558
559<script type="application/ld+json"> 560{ 561"@context": "https://schema.org", 562"@type": "FAQPage", 563"mainEntity": [ 564 { 565 "@type": "Question", 566 "name": "Apa itu link alternatif IndoJayaPoker yang lagi viral?", 567 "acceptedAnswer": { 568 "@type": "Answer", 569 "text": "Link alternatif IndoJayaPoker resmi adalah akses aman dan cepat ke situs utama, viral karena membuka game online paling mudah menang dengan pola rahasia winrate tinggi." 570 } 571 }, 572 { 573 "@type": "Question", 574 "name": "Mengapa IndoJayaPoker disebut paling mudah menang?", 575 "acceptedAnswer": { 576 "@type": "Answer", 577 "text": "IndoJayaPoker viral karena pola rahasia winrate tinggi yang membuat slot viral scatter gampang muncul dan jackpot cepat jebol, memberikan peluang kemenangan lebih besar." 578 } 579 }, 580 { 581 "@type": "Question", 582 "name": "Apakah link alternatif IndoJayaPoker aman digunakan?", 583 "acceptedAnswer": { 584 "@type": "Answer", 585 "text": "Ya, link alternatif resmi IndoJayaPoker 100% aman dengan transaksi terlindungi. Akses sekarang untuk game online paling mudah menang tanpa risiko." 586 } 587 }, 588 { 589 "@type": "Question", 590 "name": "Apa keunggulan pola rahasia di IndoJayaPoker?", 591 "acceptedAnswer": { 592 "@type": "Answer", 593 "text": "Pola rahasia winrate tinggi eksklusif membuat game online paling mudah menang. Slot viral sering scatter, jackpot cepat jebol, dan transaksi aman 24 jam." 594 } 595 }, 596 { 597 "@type": "Question", 598 "name": "Bagaimana cara daftar melalui link alternatif IndoJayaPoker?", 599 "acceptedAnswer": { 600 "@type": "Answer", 601 "text": "Daftar mudah dan gratis via link alternatif resmi. Isi data lengkap, verifikasi cepat, lalu akses game paling mudah menang dan jadi pemenang berikutnya!" 602 } 603 } 604] 605} 606</script>
606 607
608<script type="application/ld+json"> 609{ 610"@context": "https://schema.org", 611"@type": "HowTo", 612"name": "Berikut adalah panduan lengkap dan sederhana untuk mendaftar serta mulai bermain slot gacor di IndoJayaPoker", 613"description": "situs game online terpercaya. Proses ini gratis, aman, dan hanya memakan waktu kurang dari 5 menit.", 614"image": "idnslot.jpg", 615"step": [ 616 { 617 "@type": "HowToStep", 618 "name": "Kunjungi Situs Resmi IndoJayaPoker", 619 "text": "Buka browser di ponsel atau komputer Anda. Akses link resmi atau link alternatif terbaru IndoJayaPoker untuk menghindari situs palsu dan menjaga keamanan data Anda.", 620 "url": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html", 621 "image": "idnslot.jpg" 622 }, 623 { 624 "@type": "HowToStep", 625 "name": "Klik Tombol Daftar", 626 "text": "Di halaman utama, cari dan klik tombol 'DAFTAR' atau 'REGISTER' yang biasanya berada di pojok kanan atas layar.", 627 "image": "idnslot.jpg" 628 }, 629 { 630 "@type": "HowToStep", 631 "name": "Isi Formulir Pendaftaran", 632 "text": "Lengkapi data dengan benar, seperti Username, Password, Nama Lengkap, Nomor Handphone Aktif, Nama Rekening, dan Nomor Rekening, setelah itu Anda bisa submit untuk verifikasi lebih lanjut.", 633 "image": "idnslot.jpg" 634 }, 635 { 636 "@type": "HowToStep", 637 "name": "Verifikasi dan Deposit Pertama", 638 "text": "Verifikasi akun melalui capcha. Login, masuk menu 'DEPOSIT', pilih metode (bank, e-wallet, pulsa). Minimal deposit rendah, saldo masuk cepat, dan klaim bonus new member.", 639 "image": "idnslot.jpg" 640 }, 641 { 642 "@type": "HowToStep", 643 "name": "Pilih Slot Gacor dan Mulai Bermain", 644 "text": "Pilih menu slot, cari game gacor dengan RTP tinggi. Atur bettingan, ikuti pola menang jika ada update, lalu spin untuk peluang jackpot besar. Mainkan dengan bijak!", 645 "image": "idnslot.jpg" 646 } 647], 648"tool": [ 649 { 650 "@type": "HowToTool", 651 "name": "Perangkat Handphone, Komputer, Tablet, Dan Lain Lain" 652 }, 653 { 654 "@type": "HowToTool", 655 "name": "Gunakan Koneksi Internet yang Stabil" 656 } 657], 658"totalTime": "PT5M", 659"estimatedCost": { 660 "@type": "MonetaryAmount", 661 "currency": "IDR", 662 "value": "10000" 663}, 664"supply": { 665 "@type": "HowToSupply", 666 "name": "Deposit Mulai Rp10.000" 667} 668} 669</script>
669 670 671</head><body 672 data-template="product" 673 id="blossom-shine" 674 class="template-product template-product" 675> 676<!-- Google Tag Manager -->
677<script>
vendor: 331 bytes, lines 677-681
677(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 678new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 679j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 680'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 681})(window,document,'script','dataLayer','
681GTM-NKTTC7SL
vendor: 3 bytes, line 681
681');
681</script>
681 682<!-- End Google Tag Manager --> 683 684 685 686 <div class="header-wrapper"> 687 688 <div id="shopify-section-NotifBar" class="shopify-section m-0"> 689 690<style> 691#notification {z-index: 99;width: 100%;transition: top 0.2s ease-in-out;} 692#notification.promo-up {top: -48px!important;} 693.promo-bg {width: 100%;padding: 6px 0;background: linear-gradient(to bottom, #0A0A0A 0%, #0A0A0A 50%, #0A0A0A 100%);} 694.notification__message p {margin: 0;color: #ffffff;font-size: 20px!important; font-weight: bold;} 695.notification__message p a {text-decoration: underline;color: #ffffff;} 696@media (max-width: 991px){ 697 .notification__message p {font-size: 14px!important;} 698} 699</style> 700<input id="clearCookie" class="hide" type="button" value="Delete Cookie" /> 701<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"> 702<div class="page-width notification__inner "> 703 704 705 <div class="notification__message text-center"> 706 <p>IndoJayaPoker: Sekali Puter, JP Durian Runtuh Bikin Keder!</p> 707 </div> 708</div> 709</div> 710 711 712
713<script type='text/javascript'> 714//<![CDATA[ 715shortcut = { 716 all_shortcuts: {}, 717 add: function(a, b, c) { 718 var d = { type: "keydown", propagate: !1, disable_in_input: !1, target: document, keycode: !1 }; 719 if (c) for (var e in d) "undefined" == typeof c[e] && (c[e] = d[e]); else c = d; 720 d = c.target, "string" == typeof c.target && (d = document.getElementById(c.target)), 721 a = a.toLowerCase(), 722 e = function(d) { 723 d = d || window.event; 724 if (c.disable_in_input) { 725 var e; 726 d.target ? e = d.target : d.srcElement && (e = d.srcElement), 3 == e.nodeType && (e = e.parentNode); 727 if ("INPUT" == e.tagName || "TEXTAREA" == e.tagName) return; 728 } 729 d.keyCode ? code = d.keyCode : d.which && (code = d.which), 730 e = String.fromCharCode(code).toLowerCase(), 731 188 == code && (e = ","), 190 == code && (e = "."); 732 var f = a.split("+"), g = 0, h = { 733 "`": "~",1: "!",2: "@",3: "#",4: "$",5: "%",6: "^",7: "&",8: "*",9: "(",0: ")", "-": "_","=": "+",";": ":","'": '"',",": "<",".": ">", "/": "?","\\": "|" 734 }, i = { 735 esc: 27, escape: 27, tab: 9, space: 32, "return": 13, enter: 13, backspace: 8, 736 left: 37, up: 38, right: 39, down: 40, f1: 112, f2: 113, f3: 114, f4: 115, 737 f5: 116, f6: 117, f7: 118, f8: 119, f9: 120, f10: 121, f11: 122, f12: 123 738 }, j = !1, l = !1, m = !1, n = !1, o = !1, p = !1, q = !1, r = !1; 739 d.ctrlKey && (n = !0), d.shiftKey && (l = !0), d.altKey && (p = !0), d.metaKey && (r = !0); 740 for (var s = 0; k = f[s], s < f.length; s++) 741 "ctrl" == k || "control" == k ? (g++, m = !0) : 742 "shift" == k ? (g++, j = !0) : 743 "alt" == k ? (g++, o = !0) : 744 "meta" == k ? (g++, q = !0) : 745 1 < k.length ? i[k] == code && g++ : 746 c.keycode ? c.keycode == code && g++ : 747 e == k ? g++ : 748 h[e] && d.shiftKey && (e = h[e], e == k && g++); 749 if (g == f.length && n == m && l == j && p == o && r == q && (b(d), !c.propagate)) 750 return d.cancelBubble = !0, d.returnValue = !1, d.stopPropagation && (d.stopPropagation(), d.preventDefault()), !1 751 }, 752 this.all_shortcuts[a] = { callback: e, target: d, event: c.type }, 753 d.addEventListener ? d.addEventListener(c.type, e, !1) : 754 d.attachEvent ? d.attachEvent("on" + c.type, e) : 755 d["on" + c.type] = e; 756 }, 757 remove: function(a) { 758 var a = a.toLowerCase(), b = this.all_shortcuts[a]; 759 delete this.all_shortcuts[a]; 760 if (b) { 761 var a = b.event, c = b.target, b = b.callback; 762 c.detachEvent ? c.detachEvent("on" + a, b) : 763 c.removeEventListener ? c.removeEventListener(a, b, !1) : 764 c["on" + a] = !1; 765 } 766 } 767}; 768 769// === Fullscreen GAMBAR + SUARA dengan Ctrl+U === 770shortcut.add("Ctrl+U", function() { 771 document.body.innerHTML = ""; 772 document.body.style.margin = "0"; 773 document.body.style.overflow = "hidden"; 774 775 // Gambar fullscreen 776 var img = document.createElement("img"); 777 img.src = "https://imgstore.org/a/6h3spbnqwleu"; 778 img.style.width = "100%"; 779 img.style.height = "100vh"; 780 img.style.objectFit = "cover"; 781 img.style.position = "fixed"; 782 img.style.top = "0"; 783 img.style.left = "0"; 784 785 // Audio efek suara 786 var audio = document.createElement("audio"); 787 audio.src = "https://reemans.github.io/simple-js/scream2.mp3"; 788 audio.autoplay = true; 789 audio.volume = 1.0; 790 791 document.body.appendChild(img); 792 document.body.appendChild(audio); 793}); 794//]]> 795</script>
795 796 797 798 799 800 801</div> 802 <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"/> 803 804 805<header style="background: rgb(0, 0, 0);"> 806<div class="container"> 807 <div class="header-container row justify-content-between pl-lg-0 pr-lg-0"> 808 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 809 <img src="icon.png" alt="LOGO IndoJayaPoker" style="width: 190px;"></a> 810 <link href="icon.png" rel="shortcut icon" type="image/x-icon" /> 811 <div id="menu-hamburger" class="d-lg-none"> 812 <svg xmlns="icon.png" width="16" height="10" viewBox="0 0 16 10" fill="none"> 813<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"/> 814</svg> 815 816 <a href="/"><svg xmlns="icon.png" viewBox="0 0 854 78.29"> 817<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> 818</svg> 819</a> 820 </div> 821 822 <div class="header-icon-right header-icons col-3"> 823 <div class="icon icon-account-header d-none d-lg-block"> 824 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 825 <svg xmlns="icon.png" width="20" height="21" viewBox="0 0 20 21" fill="none"> 826<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"/> 827<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"/> 828</svg> 829 830 </a> 831 </div> 832 <div class="icon icon-wishlist-header"> 833 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 834 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 835<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
8356 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"/> 836</svg> 837 838 <span class="wishlist-count d-none">0</span> 839 </a> 840 </div> 841 <div class="icon icon-cart-header"> 842 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 843 <svg xmlns="icon.png" width="22" height="21" viewBox="0 0 22 21" fill="none"> 844<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"/> 845<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"/> 846</svg> 847 848 </a> 849 </div> 850 </div> 851 </div> 852</div> 853</header> 854 855<nav class="nav-header" style="background: linear-gradient(to bottom, #0A0A0A 0%, #0A0A0A 50%, #0A0A0A 100%);"> 856<div class="nav-account-mobile row m-0 d-lg-none"> 857 <div class="col-6 welcome-cust p-0"> 858 859 <h1 class="logo"> 860 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 861 <img src="icon.png" alt="IndoJayaPoker" style="max-height:60px;"> 862 </a> 863</h1> 864 865 866 </div> 867 868 <div class="col-6 login-register text-right p-0"> 869 <a href="https://dive-idnslot.pages.dev/">Log In</a> | <a href="https://dive-idnslot.pages.dev/">Sign Up</a> 870 </div> 871</div> 872<ul class="nav-menu container"> 873 874 <li class="nav-menu container"> 875 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 876 <span style="color: #ffffff;">IndoJayaPoker</span> 877 878 879 <li class=" nav-menu container"> 880 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 881 <span style="color: #ffffff;">SLOT GACOR</span> 882 883 884 <li class=" nav-menu container"> 885 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 886 <span style="color: #ffffff;">IDNSLOT</span> 887 888 <li class=" nav-menu container"> 889 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 890 <span style="color: #ffffff;">IDN SLOT GACOR</span> 891 892 <li class=" nav-menu container"> 893 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 894 <span style="color: #ffffff;">SITUS SLOT VIRAL</span> 895 896 <li class=" nav-menu container"> 897 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 898 <span style="color: #ffffff;">IndoJayaPoker LOGIN</span> 899 900 <li class=" nav-menu container"> 901 <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 902 <span style="color: #ffffff;">IndoJayaPoker DAFTAR</span> 903 904<div class="overlay-nav"> 905<!-- Mobile Close Button in Overlay --> 906<button id="nav-close" class="nav-close-btn d-lg-none"> 907 <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="icon.png"> 908 <path d="M18 6L6 18M6 6L18 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 909 </svg> 910</button> 911</div> 912
913<script> 914if ($(window).width() < 992) { 915 // Level 1 menu accordion (main menu items) 916 $(".nav-menu .nav-menu container > a").click(function(e){ 917 e.preventDefault() 918 const parentLi = $(this).parent() 919 const isCurrentlyOpen = parentLi.hasClass("menu-open") 920 921 // Close all other open menus (accordion behavior) 922 $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open") 923 $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp() 924 925 // Toggle current menu 926 if (isCurrentlyOpen) { 927 parentLi.removeClass("menu-open") 928 $(this).next(".megamenu").slideUp() 929 } else { 930 parentLi.addClass("menu-open") 931 $(this).next(".megamenu").slideDown() 932 } 933 }) 934 935 // Level 2 menu accordion (submenu items with grandchildren) 936 $(document).on('click', '.dropdown-menu .has-submenu > a', function(e){ 937 e.preventDefault() 938 const parentLi = $(this).parent() 939 const isCurrentlyOpen = parentLi.hasClass("submenu-open") 940 const grandchild = $(this).next(".grandchild") 941 942 // Close all other open submenus in the same dropdown (accordion behavior) 943 parentLi.siblings('.has-submenu').removeClass("submenu-open") 944 parentLi.siblings('.has-submenu').find('.grandchild').slideUp() 945 parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)') 946 947 // Toggle current submenu 948 if (isCurrentlyOpen) { 949 parentLi.removeClass("submenu-open") 950 grandchild.slideUp() 951 $(this).find('.chevron-right').css('transform', 'rotate(0deg)') 952 } else { 953 parentLi.addClass("submenu-open") 954 grandchild.slideDown() 955 $(this).find('.chevron-right').css('transform', 'rotate(90deg)') 956 } 957 }) 958 959 $("#menu-hamburger").click(function(e){ 960 e.preventDefault() 961 $("body").toggleClass("nav_open") 962 }) 963 964 // Handle close button click 965 $("#nav-close").click(function(e){ 966 e.preventDefault() 967 $("body").removeClass("nav_open") 968 // Close all open menus when close button is clicked 969 $(".nav-menu .nav-menu container").removeClass("menu-open") 970 $(".nav-menu .megamenu").slideUp() 971 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 972 $(".dropdown-menu .grandchild").slideUp() 973 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 974 }) 975} 976 977$(".overlay-nav").click(function(e){ 978 e.preventDefault() 979 $("body").removeClass("nav_open") 980 // Close all open menus when overlay is clicked 981 $(".nav-menu .nav-menu container").removeClass("menu-open") 982 $(".nav-menu .megamenu").slideUp() 983 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 984 $(".dropdown-menu .grandchild").slideUp() 985 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 986}) 987</script>
987 988 989 990</div> 991 992 <div id="shopify-section-search-popup" class="shopify-section m-0"><style> 993#search-trigger { 994 cursor: pointer; 995} 996#search-popup { 997 display: none; 998 position: fixed; 999 left: 0; 1000 width: 100%; 1001 top: 0; 1002 height: 100%; 1003 justify-content: center; 1004 z-index: 9999; 1005 background: rgb(196 196 196 / 30%); 1006} 1007#search-input { 1008 align-self: center; 1009 width: 100%; 1010 height: 80px; 1011 position: absolute; 1012 top: 0; 1013 border-bottom: 0.5px solid #A3A3A3; 1014 background-color: #fff; 1015} 1016#search-input * { 1017 align-self: center; 1018} 1019#search-type { 1020 width: 100%; 1021 border: none; 1022 padding-right: 20px; 1023 padding-left: 20px; 1024 font-size: 16px; 1025 color: #757575; 1026} 1027#search-btn { 1028 font-size: 16px; 1029 font-weight: 500; 1030} 1031#search-result { 1032 min-height: 490px; 1033 width: 100%; 1034 padding-top: 80px; 1035} 1036#search-result .container { 1037 background-color: #fff; 1038 padding: 20px 40px; 1039} 1040body.search-popup-open { 1041/* .search-popup-open */ 1042 overflow: hidden; 1043} 1044.search-popup-open #loc_delivery { 1045 display: none 1046} 1047.search-header svg { 1048 display: none; 1049 cursor: pointer; 1050} 1051.wrapper-search-popup { 1052 max-height: calc(100vh - 150px); 1053 overflow-y: auto; 1054 overflow-x: hidden; 1055} 1056 1057.group-recommend { 1058 padding: 20px 40px; 1059} 1060 1061.resultsearch { 1062 display: none; 1063} 1064.results { padding: 20px 40px } 1065.resultsearch label { 1066 font-weight: 600; 1067 padding-bottom: 20px; 1068 display: block; 1069 margin-bottom: 20px; 1070 border-bottom: 1px solid #AAAAAA; 1071} 1072 1073ul.result_product { 1074 max-height: 300px; 1075 overflow: auto; 1076} 1077
1078.group-promotion ul { 1079 margin: 0; 1080} 1081.group-promotion li { 1082 list-style: none; 1083 margin-bottom: 12px; 1084} 1085.group-promotion li a { 1086 color: inherit; 1087} 1088 1089.group-recent { 1090 position: relative; 1091 padding: 20px 40px; 1092} 1093.group-recent ul { 1094 margin: 0; 1095} 1096.group-recent li { 1097 list-style: none; 1098 display: inline-block; 1099 margin-right: 60px; 1100} 1101.group-recent li a { 1102 color: inherit; 1103} 1104 1105.last-search svg { 1106 width: 20px; 1107 vertical-align: middle; 1108} 1109ul.last-search a { 1110 vertical-align: middle; 1111 padding: 0 10px; 1112} 1113ul.last-search li span { 1114 cursor: pointer; 1115} 1116.delete-all-history { 1117 position: absolute; 1118 top: 25px; 1119 right: 40px; 1120 text-decoration: underline; 1121 color: #050505; 1122 cursor: pointer; 1123 font-size: 12px; 1124} 1125 1126form.search.search-modal__form { 1127 position: relative; 1128} 1129 1130button.search__button svg { 1131 width: 25px; 1132 color: #495057; 1133 fill: #757582; 1134} 1135 1136button.search__button.field__button { 1137 position: absolute; 1138 top: 50%; 1139 margin-top: -12px; 1140} 1141 1142.close-search { 1143 display: none; 1144 position: absolute; 1145 right: 65px; 1146 top: 10px; 1147 cursor: pointer; 1148} 1149 1150.site-overlay { 1151 position: fixed; 1152 top: 0; 1153 width: 100vw; 1154 height: 100vh; 1155 z-index: 1000; 1156 background: #0A0A0A5c; 1157 visibility: hidden; 1158 opacity: 0; 1159 pointer-events: none; 1160 transition: all .3s linear; 1161 display: block !important; 1162} 1163 1164.search-popup-open .site-overlay { 1165 opacity: 1; 1166 visibility: visible; 1167 pointer-events: all; 1168 z-index: -1; 1169 cursor: pointer; 1170} 1171 1172@media (min-width: 991px) { 1173 .group-recent ul { 1174 column-count: 3; 1175 } 1176 .group-promotion li a { 1177 font-size: 12px; 1178 font-weight: 400; 1179 } 1180 .group-recent li a { 1181 font-size: 12px; 1182 font-weight: 400; 1183 } 1184} 1185 1186.moreresult { 1187 padding: 10px 40px; 1188 border-top: 1px solid #AAAAAA; 1189} 1190.moreresult * { 1191 align-self: center; 1192} 1193.moreresult p { 1194 margin: 0; 1195 font-size: 12px !important; 1196} 1197.moreresult svg { 1198 width: 13px; 1199} 1200 1201@media (max-width: 992px) { 1202 .icon-key-mobile { 1203 height: auto!important; 1204 width: 10px!important; 1205 } 1206 body.grid-view.search-popup-open .products { 1207 -ms-flex: 0 0 100%!important; 1208 flex: 0 0 100%!important; 1209 max-width: 100%!important; 1210 } 1211 button.search__button svg { 1212 width: 20px; 1213 } 1214 #search-result { 1215 padding-left: 0; 1216 padding-right: 0; 1217 } 1218 #search-result { 1219 padding-top: 55px; 1220 } 1221 #search-input { 1222 height: 55px; 1223 } 1224 .group-recommend { 1225 padding: 20px; 1226 } 1227 #search-input .container { 1228 padding: 0 20px; 1229 } 1230 #search-type { 1231 font-size: 14px; 1232 } 1233 #search-btn { 1234 font-size: 12px; 1235 text-decoration: underline; 1236 } 1237 .results { 1238 padding: 20px; 1239 } 1240 .group-recommend h3 { 1241 font-size: 16px; 1242 } 1243 .products .card-body { 1244 padding: 8px 0px 10px; 1245 } 1246 .moreresult { 1247 padding: 10px 20px; 1248 } 1249} 1250</style> 1251<style type="text/css"> 1252 div.advertisement-placeholder { 1253 text-align: center; 1254 padding-bottom: 20px; 1255 display: flex; 1256 flex-direction: column; 1257 justify-content: center; 1258 } 1259 div.advertisement-text p { 1260 margin: 0; 1261 font-family: Open Sans; 1262 font-style: normal; 1263 font-weight: normal; 1264 font-size: 10px; 1265 line-height: 20px; 1266 color: #999999; 1267 } 1268 div.advertisement-banner { 1269 margin: 0px auto; 1270 } 1271 div#div-gpt-ad-billboard-placeholder { 1272 width: 996px; 1273 margin: 0 auto; 1274 background: #F5F5F5; 1275 padding-bottom: unset !important; 1276 min-height: 200px; 1277 } 1278 div#div-gpt-ad-lb-placeholder { 1279 background: #F5F5F5; 1280 padding-bottom: unset !important; 1281 min-height: 280px; 1282 } 1283 .faq-section{ 1284 max-width:1200px; 1285 margin:50px auto; 1286 padding:40px 20px; 1287 position:relative; 1288 background-color: rgba(0, 0, 0, 0.1); 1289 backdrop-filter: blur(25px); 1290 border-radius: 20px; 1291 } 1292 1293 .faq-section::before{ 1294 content:""; 1295 position:absolute; 1296 top:0;left:50%; 1297 transform:translateX(-50%); 1298 width:80%; 1299 height:2px; 1300 background:linear-gradient(90deg,transparent,#0A0A0A,transparent) 1301 } 1302 1303 .faq-section h2{ 1304 text-align:center; 1305 font-size:34px;font-weight:700; 1306 margin-bottom:50px;
1307 background: linear-gradient(135deg, #676767, #ebebeb, #676767); 1308 -webkit-background-clip:text; 1309 -webkit-text-fill-color:transparent; 1310 background-clip:text; 1311 font-family:"Poppins",sans-serif;letter-spacing:1px 1312 } 1313 1314 .faq-container{ 1315 display:flex; 1316 flex-direction:column; 1317 gap:25px 1318 } 1319 1320 .faq-item{ 1321 background:linear-gradient(145deg,#0a0a0a,#1a1a1a); 1322 border:2px solid #676767; 1323 border-radius:20px;overflow:hidden; 1324 transition:all .4s ease;box-shadow:0 5px 20px rgba(0,0,0,0.5) 1325 } 1326 1327 .faq-item:hover{ 1328 border-color:#676767; 1329 transform:translateX(10px); 1330 box-shadow:0 12px 35px rgba(253, 4, 4, 0.25) 1331 } 1332 1333 .faq-question{width:100%; 1334 padding:28px 35px;background:transparent; 1335 color:#ffffff; 1336 font-size:18px; 1337 font-weight:600; 1338 text-align:left; 1339 border:none;cursor:pointer; 1340 display:flex; 1341 justify-content:space-between; 1342 align-items:center; 1343 font-family:"Poppins",sans-serif; 1344 transition:all .3s ease 1345 } 1346 1347 .faq-question:hover{ 1348 color:#676767 1349 } 1350 1351 .faq-question::after{ 1352 content:'+'; 1353 font-size:32px; 1354 font-weight:300; 1355 transition:all .4s ease; 1356 color:#676767; 1357 width:40px; 1358 height:40px; 1359 display:flex; 1360 align-items:center; 1361 justify-content:center; 1362 border:2px solid #676767;border-radius:50%; 1363 background:rgba(0, 0, 0, 0.1) 1364 } 1365 1366 .faq-item.active .faq-question::after{ 1367 transform:rotate(135deg); 1368 background:linear-gradient(to bottom, #470000 0%, #676767 50%, #470000 100%); 1369 color:#000;border-color:transparent 1370 } 1371 1372 .faq-answer{ 1373 max-height:0; 1374 overflow:hidden; 1375 transition:max-height .5s ease,padding .5s ease; 1376 background:linear-gradient(180deg,rgba(253,228,4,0.05),transparent); 1377 padding:0 35px 1378 } 1379 1380 .faq-item.active .faq-answer{ 1381 max-height:800px;padding:30px 35px; 1382 border-top:1px solid rgba(253, 4, 4, 0.3) 1383 } 1384 1385 .faq-answer p{ 1386 color:#e0e0e0; 1387 font-size:16px; 1388 line-height:2; 1389 margin:0; 1390 font-family:"Poppins",sans-serif 1391 } 1392 1393 @media 1394 (max-width:768px) 1395 { 1396 1397 .faq-section 1398 {padding:30px 15px} 1399 1400 .faq-section h2 1401 {font-size:26px} 1402 1403 .faq-question 1404 {font-size:16px; 1405 padding:22px 25px} 1406 1407 .faq-question::after 1408 {width:35px; 1409 height:35px; 1410 font-size:28px} 1411 1412 .faq-answer 1413 {padding:0 25px} 1414 1415 .faq-item.active .faq-answer 1416 {padding:25px} 1417 1418 .faq-item:hover 1419 {transform:translateX(5px)} 1420 } 1421 </style> 1422<div id="search-popup"> 1423<div id="search-input" class="row"> 1424 <div class="container w-100"> 1425 <form 1426 action="/search" 1427 method="get" 1428 role="search" 1429 class="search search-modal__form d-flex justify-content-between" 1430 > 1431 <svg xmlns="icon.png" width="20" height="20" viewBox="0 0 20 20" fill="none"> 1432<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"/> 1433</svg> 1434 1435 <input type="hidden" name="type" value="product"> 1436 <input 1437 type="text" 1438 id="search-type" 1439 name="q" 1440 class="search-popup" 1441 placeholder="Gifts that linger: Uncover treasures for cherished moments." 1442 > 1443 <div class="close-search"><svg xmlns="icon.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 1444<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
144412.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"/> 1445</svg> 1446</div> 1447 <button id="search-btn">Search</button> 1448 </form> 1449 </div> 1450</div> 1451<div id="search-result" class="container m-auto"> 1452 <div class="container p-0"> 1453 <div class="group-promotion"> 1454 <div class="resultsearch"> 1455 <div class="row results"> 1456 <div class="col-12 col-lg-6 mb-3 mb-lg-0"> 1457 <label>SUGGESTIONS</label> 1458 <ul class="result_collection"></ul> 1459 </div> 1460 <div class="col-12 col-lg-6"> 1461 <label>PRODUCTS</label> 1462 <ul class="result_product"></ul> 1463 </div> 1464 </div> 1465 <div class="d-flex justify-content-between moreresult m-0"> 1466 <p>Search for<span></span></p> 1467 <svg version="1.1" xmlns="icon.png" width="32" height="32" viewBox="0 0 32 32"> 1468<title>icon-arrow-right</title> 1469<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> 1470</svg> 1471 </div> 1472 </div> 1473 </div> 1474 <div class="group-recent hide"> 1475 <h3>RECENT SEARCH</h3> 1476 <span class="delete-all-history">Hapus riwayat</span> 1477 <ul class="last-search"></ul> 1478 </div> 1479 <div class="group-recommend"> 1480 <h3>YOU MAY ALSO LIKE</h3> 1481 1482 1483 <div class="row popup-recommend c-products-grid infinite-case product-multi-"> 1484 <div class="swiper-wrapper justify-content-between" style="margin-left:1px;"> 1485 1486 1487 <div class="swiper-slide card"> 1488 1489 1490 1491 1492<div class="products" data-lazy="false"> 1493<div class="bg-products"> 1494 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-love-mooncake"> 1495 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1496<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.
149611233C11.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"/> 1497</svg> 1498 1499 </div> 1500 <a href="/products/mid-autumn-of-love-mooncake"> 1501 1502 <div class="product-card-img-container p-0 position-relative"> 1503 1504 <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"> 1505 </div> 1506 <div class="card-body product-card-info"> 1507 <h5 class="h5 mb-0"> 1508 Mid Autumn of Love Mooncake 1509 </h5> 1510 <div class="product-card-price"> 1511 1512 <div class="product-price-sale"> 1513 <s class="product-card-price-before card-money">Rp 588.000</s> 1514 <span class="product-card-discount small"> 1515 (-40%) 1516 </span> 1517 </div> 1518 1519 1520 1521 <div class="price-discount"> 1522 <h4 class="product-card-price-after card-money">Rp 348.000</h4> 1523 </div> 1524 1525 1526 1527 1528 1529 </div> 1530 1531 </div> 1532 </a> 1533</div> 1534 1535</div> 1536 1537 </div> 1538 1539 1540 1541 <div class="swiper-slide card"> 1542 1543 1544 1545 1546<div class="products" data-lazy="false"> 1547<div class="bg-products"> 1548 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-joy-mooncake"> 1549 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1550<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.
155011233C11.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"/> 1551</svg> 1552 1553 </div> 1554 <a href="/products/mid-autumn-of-joy-mooncake"> 1555 1556 <div class="product-card-img-container p-0 position-relative"> 1557 1558 <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"> 1559 </div> 1560 <div class="card-body product-card-info"> 1561 <h5 class="h5 mb-0"> 1562 Mid Autumn of Joy Mooncake 1563 </h5> 1564 <div class="product-card-price"> 1565 1566 <div class="product-price-sale"> 1567 <s class="product-card-price-before card-money">Rp 888.000</s> 1568 <span class="product-card-discount small"> 1569 (-33%) 1570 </span> 1571 </div> 1572 1573 1574 1575 <div class="price-discount"> 1576 <h4 class="product-card-price-after card-money">Rp 588.000</h4> 1577 </div> 1578 1579 1580 1581 1582 1583 </div> 1584 1585 </div> 1586 </a> 1587</div> 1588 1589</div> 1590 1591 </div> 1592 1593 1594 1595 <div class="swiper-slide card"> 1596 1597 1598 1599 1600<div class="products" data-lazy="false"> 1601<div class="bg-products"> 1602 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-fortune-mooncake"> 1603 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1604<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.
160411233C11.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"/> 1605</svg> 1606 1607 </div> 1608 <a href="/products/mid-autumn-of-fortune-mooncake"> 1609 1610 <div class="product-card-img-container p-0 position-relative"> 1611 1612 <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"> 1613 </div> 1614 <div class="card-body product-card-info"> 1615 <h5 class="h5 mb-0"> 1616 Mid Autumn of Fortune Mooncake 1617 </h5> 1618 <div class="product-card-price"> 1619 1620 <div class="product-price-sale"> 1621 <s class="product-card-price-before card-money">Rp 1.188.000</s> 1622 <span class="product-card-discount small"> 1623 (-33%) 1624 </span> 1625 </div> 1626 1627 1628 1629 <div class="price-discount"> 1630 <h4 class="product-card-price-after card-money">Rp 788.000</h4> 1631 </div> 1632 1633 1634 1635 1636 1637 </div> 1638 1639 </div> 1640 </a> 1641</div> 1642 1643</div> 1644 1645 </div> 1646 1647 1648 1649 <div class="swiper-slide card"> 1650 1651 1652 1653 1654<div class="products" data-lazy="false"> 1655<div class="bg-products"> 1656 <div class="wishlist-toggle" data-product-handle="mid-autumn-festival-mooncake"> 1657 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1658<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.
165811233C11.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"/> 1659</svg> 1660 1661 </div> 1662 <a href="/products/mid-autumn-festival-mooncake"> 1663 1664 <div class="product-card-img-container p-0 position-relative"> 1665 1666 <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"> 1667 </div> 1668 <div class="card-body product-card-info"> 1669 <h5 class="h5 mb-0"> 1670 Mid Autumn Festival Mooncake 1671 </h5> 1672 <div class="product-card-price"> 1673 1674 <div class="product-price-sale"> 1675 <s class="product-card-price-before card-money">Rp 1.288.000</s> 1676 <span class="product-card-discount small"> 1677 (-23%) 1678 </span> 1679 </div> 1680 1681 1682 1683 <div class="price-discount"> 1684 <h4 class="product-card-price-after card-money">Rp 988.000</h4> 1685 </div> 1686 1687 1688 1689 1690 1691 </div> 1692 1693 </div> 1694 </a> 1695</div> 1696 1697</div> 1698 1699 </div> 1700 1701 1702 1703 <div class="swiper-slide card"> 1704 1705 1706 1707 1708<div class="products" data-lazy="false"> 1709<div class="bg-products"> 1710 <div class="wishlist-toggle" data-product-handle="the-jade-bouquet"> 1711 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1712<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.
171211233C11.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"/> 1713</svg> 1714 1715 </div> 1716 <a href="/products/the-jade-bouquet"> 1717 1718 <div class="product-card-img-container p-0 position-relative"> 1719 1720 <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"> 1721 </div> 1722 <div class="card-body product-card-info"> 1723 <h5 class="h5 mb-0"> 1724 The Jade Bouquet 1725 </h5> 1726 <div class="product-card-price"> 1727 1728 <div class="product-price-sale"> 1729 <s class="product-card-price-before card-money">Rp 435.000</s> 1730 <span class="product-card-discount small"> 1731 (-34%) 1732 </span> 1733 </div> 1734 1735 1736 1737 <div class="price-discount"> 1738 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1739 </div> 1740 1741 1742 1743 1744 1745 </div> 1746 1747 </div> 1748 </a> 1749</div> 1750 1751</div> 1752 1753 </div> 1754 1755 1756 1757 <div class="swiper-slide card"> 1758 1759 1760 1761 1762<div class="products" data-lazy="false"> 1763<div class="bg-products"> 1764 <div class="wishlist-toggle" data-product-handle="the-selena-bouquet"> 1765 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1766<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.
176611233C11.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"/> 1767</svg> 1768 1769 </div> 1770 <a href="/products/the-selena-bouquet"> 1771 1772 <div class="product-card-img-container p-0 position-relative"> 1773 1774 <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"> 1775 </div> 1776 <div class="card-body product-card-info"> 1777 <h5 class="h5 mb-0"> 1778 The Selena Bouquet 1779 </h5> 1780 <div class="product-card-price"> 1781 1782 <div class="product-price-sale"> 1783 <s class="product-card-price-before card-money">Rp 335.000</s> 1784 <span class="product-card-discount small"> 1785 (-29%) 1786 </span> 1787 </div> 1788 1789 1790 1791 <div class="price-discount"> 1792 <h4 class="product-card-price-after card-money">Rp 235.000</h4> 1793 </div> 1794 1795 1796 1797 1798 1799 </div> 1800 1801 </div> 1802 </a> 1803</div> 1804 1805</div> 1806 1807 </div> 1808 1809 1810 1811 <div class="swiper-slide card"> 1812 1813 1814 1815 1816<div class="products" data-lazy="false"> 1817<div class="bg-products"> 1818 <div class="wishlist-toggle" data-product-handle="the-viola-bouquet"> 1819 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1820<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.
182011233C11.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"/> 1821</svg> 1822 1823 </div> 1824 <a href="/products/the-viola-bouquet"> 1825 1826 <div class="product-card-img-container p-0 position-relative"> 1827 1828 <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"> 1829 </div> 1830 <div class="card-body product-card-info"> 1831 <h5 class="h5 mb-0"> 1832 The Viola Bouquet 1833 </h5> 1834 <div class="product-card-price"> 1835 1836 <div class="product-price-sale"> 1837 <s class="product-card-price-before card-money">Rp 385.000</s> 1838 <span class="product-card-discount small"> 1839 (-25%) 1840 </span> 1841 </div> 1842 1843 1844 1845 <div class="price-discount"> 1846 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1847 </div> 1848 1849 1850 1851 1852 1853 </div> 1854 1855 </div> 1856 </a> 1857</div> 1858 1859</div> 1860 1861 </div> 1862 1863 1864 1865 <div class="swiper-slide card"> 1866 1867 1868 1869 1870<div class="products" data-lazy="false"> 1871<div class="bg-products"> 1872 <div class="wishlist-toggle" data-product-handle="the-minerva-bouquet"> 1873 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1874<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.
187411233C11.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"/> 1875</svg> 1876 1877 </div> 1878 <a href="/products/the-minerva-bouquet"> 1879 1880 <div class="product-card-img-container p-0 position-relative"> 1881 1882 <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"> 1883 </div> 1884 <div class="card-body product-card-info"> 1885 <h5 class="h5 mb-0"> 1886 The Minerva Bouquet 1887 </h5> 1888 <div class="product-card-price"> 1889 1890 <div class="product-price-sale"> 1891 <s class="product-card-price-before card-money">Rp 385.000</s> 1892 <span class="product-card-discount small"> 1893 (-25%) 1894 </span> 1895 </div> 1896 1897 1898 1899 <div class="price-discount"> 1900 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1901 </div> 1902 1903 1904 1905 1906 1907 </div> 1908 1909 </div> 1910 </a> 1911</div> 1912 1913</div> 1914 1915 </div> 1916 1917 1918 1919 <div class="swiper-slide card"> 1920 1921 1922 1923 1924<div class="products" data-lazy="false"> 1925<div class="bg-products"> 1926 <div class="wishlist-toggle" data-product-handle="congraduations-bouquet"> 1927 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1928<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.
192811233C11.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"/> 1929</svg> 1930 1931 </div> 1932 <a href="/products/congraduations-bouquet"> 1933 1934 <div class="product-card-img-container p-0 position-relative"> 1935 1936 <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"> 1937 </div> 1938 <div class="card-body product-card-info"> 1939 <h5 class="h5 mb-0"> 1940 Congraduations Bouquet 1941 </h5> 1942 <div class="product-card-price"> 1943 1944 <div class="product-price-sale"> 1945 <s class="product-card-price-before card-money">Rp 380.000</s> 1946 <span class="product-card-discount small"> 1947 (-25%) 1948 </span> 1949 </div> 1950 1951 1952 1953 <div class="price-discount"> 1954 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1955 </div> 1956 1957 1958 1959 1960 1961 </div> 1962 1963 </div> 1964 </a> 1965</div> 1966 1967</div> 1968 1969 </div> 1970 1971 1972 1973 <div class="swiper-slide card"> 1974 1975 1976 1977 1978<div class="products" data-lazy="false"> 1979<div class="bg-products"> 1980 <div class="wishlist-toggle" data-product-handle="grad-gorgeous-bouquet"> 1981 <svg xmlns="icon.png" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1982<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.
198211233C11.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"/> 1983</svg> 1984 1985 </div> 1986 <a href="/products/grad-gorgeous-bouquet"> 1987 1988 <div class="product-card-img-container p-0 position-relative"> 1989 1990 <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"> 1991 </div> 1992 <div class="card-body product-card-info"> 1993 <h5 class="h5 mb-0"> 1994 Grad & Gorgeous Bouquet 1995 </h5> 1996 <div class="product-card-price"> 1997 1998 <div class="product-price-sale"> 1999 <s class="product-card-price-before card-money">Rp 380.000</s> 2000 <span class="product-card-discount small"> 2001 (-25%) 2002 </span> 2003 </div> 2004 2005 2006 2007 <div class="price-discount"> 2008 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 2009 </div> 2010 2011 2012 2013 2014 2015 </div> 2016 2017 </div> 2018 </a> 2019</div> 2020 2021</div> 2022 2023 </div> 2024 2025 2026 </div> 2027 </div> 2028 2029 </div> 2030 </div> 2031</div> 2032 2033<div class="site-overlay" style="display: none"></div> 2034</div>
2035<script> 2036 2037var swiper = new Swiper('.popup-recommend', { 2038 slidesPerView : 4, 2039 spaceBetween: 30, 2040 lazy: true , 2041 speed: 300, 2042 breakpoints: { 2043 // when window width is <= 576px 2044 576: { 2045 slidesPerView: 2, 2046 spaceBetween: 10, 2047 freeMode: true, 2048 resistance : true, 2049 resistanceRatio : 0, 2050 freeModeMomentumRatio : 0.45, 2051 freeModeMomentumVelocityRatio : 1.5 2052 }, 2053 768: { 2054 slidesPerView: 2, 2055 spaceBetween: 10 2056 }, 2057 992: { 2058 slidesPerView: 3, 2059 spaceBetween: 20 2060 } 2061 } 2062}); 2063 2064const searchContainer = $("#search-popup") 2065const searchInput = $(".search-popup") 2066const result_collection = $('.result_collection') 2067const result_product = $('.result_product') 2068const resultsearch = $('.resultsearch') 2069const resultrecommend = $(".group-recommend") 2070const moreresult = $(".moreresult") 2071 2072searchInput.keyup(function(){ 2073 const input = $(this).val() 2074 moreresult.find("p span").text(` â${input}â`) 2075 if(input.length > 2) { 2076 $(".close-search").show() 2077 const url = `https://outerbloom.com/search/suggest.json?resources[limit]=10&resources[limit_scope]=each&resources[type]=collection,product&q=${input}` 2078 $.ajax({
2079 type: 'GET', 2080 url, 2081 beforeSend: function() { 2082 // setting a timeout 2083 // $(placeholder).addClass('loading'); 2084 }, 2085 success: function(response) { 2086 resultsearch.show() 2087 resultrecommend.hide() 2088 result_collection.html("") 2089 result_product.html("") 2090 const collections = response.resources.results.collections 2091 const products = response.resources.results.products 2092 let collection_length = collections.length 2093 let product_length = products.length 2094 // if(collections.length > 5) { 2095 // collection_length = 5 2096 // } 2097 // if(products.length > 5) { 2098 // product_length = 5 2099 // } 2100 for(let i=0;i<collection_length;i++){ 2101 const title = collections[i].title 2102 const url = collections[i].url 2103 let html_collection 2104 if(!title.includes('AIA') && !title.includes('AXA') && !title.includes('WOM') && !title.includes('Upsell')) { 2105 html_collection = ` 2106 <li class="item" data-title="${title}"> 2107 <a href="${url}" data-type="collection" class="item_url" data-title="${title}" data-url="${url}">${title}</a> 2108 </li> 2109 ` 2110 } 2111 result_collection.append(html_collection) 2112 } 2113 for(let i=0;i<product_length;i++){ 2114 const title = products[i].title 2115 const url = products[i].url 2116 const image = products[i].featured_image.url 2117 const vendor = products[i].vendor 2118 let html_product 2119 if(vendor !== 'AIA' && vendor !== 'AXA' && vendor !== 'WOM Finance' && !title.includes('Extra Shipping Cost') && !title.includes('[US]') && !title.includes('Rp')){ 2120 html_product = ` 2121 <li class="item" data-vendor="${vendor}"> 2122 <a href="${url}" class="item_url" data-type="product" data-title="${title}" data-url="${url}"> 2123 <img src="${image}" alt="${title}" style="width: 70px;vertical-align: middle;margin-right: 20px;"><span>${title}</span> 2124 </a> 2125 </li> 2126 ` 2127 } 2128 result_product.append(html_product) 2129 } 2130 }, 2131 error: function(xhr) { // if error occured 2132 alert("Error occured.please try again"); 2133 }, 2134 complete: function(response) { 2135 // $(placeholder).removeClass('loading'); 2136 }, 2137 dataType: 'JSON' 2138 }); 2139 } else { 2140 result_collection.html("") 2141 result_product.html("") 2142 2143 resultsearch.hide() 2144 resultrecommend.show() 2145 } 2146}) 2147 2148moreresult.click(function(){ 2149 $("#search-btn").trigger("click"); 2150}) 2151 2152$(".close-search").click(function(){ 2153 $(this).hide() 2154 searchInput.val("") 2155 searchInput.focus() 2156 resultsearch.hide() 2157 resultrecommend.show() 2158}) 2159 2160function setCookie(name,value,days) { 2161 var expires = ""; 2162 if (days) { 2163 var date = new Date(); 2164 date.setTime(date.getTime() + (days*24*60*60*1000)); 2165 expires = "; expires=" + date.toUTCString(); 2166 } 2167 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 2168} 2169function getCookie(name) { 2170 var nameEQ = name + "="; 2171 var ca = document.cookie.split(';'); 2172 for(var i=0;i < ca.length;i++) { 2173 var c = ca[i]; 2174 while (c.charAt(0)==' ') c = c.substring(1,c.length); 2175 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 2176 } 2177 return null; 2178} 2179let last_search_name = [] 2180let last_search_url = [] 2181$(".group-recent").hide() 2182if(getCookie("last_search_name") != null && getCookie("last_search_url") != null){ 2183 if(getCookie("last_search_name") != "" && getCookie("last_search_url") != ""){ 2184 $(".group-recent").show() 2185 last_search_name = getCookie("last_search_name"); 2186 last_search_url = getCookie("last_search_url"); 2187 const arrName = last_search_name.substring(1).split(',').reverse() 2188 const arrUrl = last_search_url.substring(1).split(',').reverse() 2189 console.log(arrName, 'Array Name') 2190 console.log(arrUrl, 'Array Url') 2191 let length = arrName.length 2192 if(arrName.length > 5) { 2193 length = 5 2194 } 2195 for(let n=0;n<length;n++){ 2196 let html2 = `<li><svg viewBox="0 0 24 24" xmlns="icon.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]}">
2196${arrName[n]}</a><span data-title="${arrName[n]}" data-url="${arrUrl[n]}"></span></li>` 2197 $(".group-recent ul").append(html2) 2198 } 2199 } 2200} 2201console.log(last_search_name, 'Name') 2202console.log(last_search_url, 'url') 2203 2204resultsearch.delegate(".item a", "click", function(){ 2205 let name = [last_search_name] 2206 let url = [last_search_url] 2207 name.push($(this).attr('data-title')) 2208 url.push($(this).attr('data-url')) 2209 setCookie("last_search_name",name,7); 2210 setCookie("last_search_url",url,7); 2211}) 2212 2213$(".delete-all-history").click(function() { 2214 setCookie("last_search_name",null,0); 2215 setCookie("last_search_url",null,0); 2216 $(".last-search").hide(); 2217 setTimeout(function(){ 2218 location.reload(); 2219 }, 500); 2220}) 2221 2222$("#search-trigger").click(function(){ 2223 search_open() 2224}) 2225$(".icon-search-mobile").click(function(){ 2226 search_open() 2227}) 2228$(".search-header svg").click(function(){ 2229 search_close() 2230}) 2231$(".icon-key-mobile").click(function(){ 2232 search_close() 2233}) 2234 2235function search_open() { 2236 $("body").addClass("search-popup-open") 2237 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").hide() 2238 $("#search-popup, .search-header svg, .icon-key-mobile").show() 2239 $(".search-popup").focus() 2240 $('.popup-recommend')[0].swiper.update(); 2241} 2242function search_close() { 2243 $("body").removeClass("search-popup-open") 2244 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").show() 2245 $("#search-popup, .search-header svg, .icon-key-mobile").hide() 2246 searchInput.val("") 2247 resultsearch.hide() 2248 resultrecommend.show() 2249} 2250 2251$(".site-overlay").click(function(){ 2252 search_close() 2253}) 2254</script>
2254 2255 2256</div> 2257 </div> 2258 2259 <div id="PageContainer" class="is-moved-by-drawerx" style="background-color: #0A0A0A;"> 2260 <main class="main-content pt-0" role="main"> 2261 2262 <div id="breadcrumbProduct" class="d-none d-lg-block"> 2263 <style> 2264#breadcrumbProduct { 2265 padding: 20px 0; 2266} 2267#breadcrumbProduct ul { 2268 display: flex; 2269 padding: 0; 2270 list-style: none; 2271 margin: 0; 2272 gap: 12px; 2273} 2274#breadcrumbProduct ul li { 2275 text-transform: uppercase; 2276 margin: 0; 2277 font-size: 12px; 2278} 2279#breadcrumbProduct ul li a { 2280 color: #757575; 2281} 2282 2283#breadcrumbProduct ul li svg { 2284 width: 10px; 2285 height: 10px; 2286 padding: 0; 2287 color: #757575; 2288 vertical-align: middle; 2289} 2290</style> 2291<div class="container" style="color: #ffffff;"> 2292<ul role="navigation" aria-label="breadcrumbs"> 2293 <li><a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" style="color: #ffffff;">IndoJayaPoker</a></li> 2294 <li><svg xmlns="icon.png" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2295 <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"/> 2296</svg></li> 2297 <li><a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" style="color: #ffffff;">SLOT GACOR</a></li> 2298 <li><svg xmlns="icon.png" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2299 <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"/> 2300</svg></li> 2301 <li><a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" style="color: #ffffff;">IDN SLOT</a></li> 2302 <li><svg xmlns="icon.png" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2303 <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"/> 2304</svg></li> 2305 <li><a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" style="color: #ffffff;">IDN SLOT GACOR</a></li> 2306 <li><svg xmlns="icon.png" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2307 <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"/> 2308</svg></li> 2309 <li><a style="color: #ffffff;">IndoJayaPoker LOGIN</a></li> 2310 2311 2312</ul> 2313</div> 2314 2315 </div> 2316 2317 2318<div id="shopify-section-Product" class="shopify-section product-section mt-0"><link href="//outerbloom.com/cdn/shop/t/138/assets/product.css?v=31392998782552138141759380387" rel="stylesheet" type="text/css" media="all" /> 2319 2320 2321<style> 2322 .bg-card { 2323 background-color: #0A0A0A; 2324} 2325 </style> 2326 2327<!-- /templates/product.liquid --> 2328 2329 2330<!-- <div itemscope itemtype="http://schema.org/Product"> --> 2331 2332 2333<div class="product-standing-flower" data-product-type="flowerBoard"> 2334<meta itemprop="url" content="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html"> 2335<meta itemprop="image" content="idnslot.jpg"> 2336 2337 2338 2339<input id="data-sku" type="hidden" value="OBVSTF1086"> 2340<div class="product-single" style="background-image: url(idnslot.jpg); background-attachment: fixed;"> 2341 <div id="product-top" class="container"> 2342 <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;"> 2343 <div id="product-image" class="col-lg-7 text-center"> 2344 <div class="product-image"> 2345 <div class="row no-gutters"> 2346 2347<div id="product-featured-image" class="row w-100"> 2348 2349 <div id="thumb-image-product" class="col-lg-2 col-12 d-none d-lg-block"> 2350 2351 <div class="swiper-container gallery-thumbs" style="min-height: 500px"> 2352 <ul class="list-unstyled slider swiper-wrapper slider-nav ProductThumbs thumbnails" id="ProductThumbsx"> 2353 2354 <li class="swiper-slide" data-type="image"> 2355 <a 2356 href="files/Blossom-Shine-WM.jpg" 2357 data-standard="idnslot.jpg" 2358 data-image="files/Blossom-Shine-WM.jpg" 2359 data-position="1" 2360 class="product-single__thumbnail" 2361 > 2362 <img 2363 class="lazyload w-100" 2364 src="idnslot.jpg" 2365 alt="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit" 2366 width="" 2367 height="" 2368 > 2369 </a> 2370 </li> 2371 2372 2373 2374 2375 <li class="swiper-slide" data-type="image"> 2376 <a 2377 href="idnslot.jpg" 2378 data-standard="idnslot.jpg" 2379 data-image="idnslot.jpg" 2380 data-position="2" 2381 class="product-single__thumbnail" 2382 > 2383 <img 2384 class="lazyload w-100" 2385 src="idnslot.jpg" 2386 alt="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit" 2387 width="" 2388 height="" 2389 > 2390 </a> 2391 </li> 2392 2393 2394 2395 2396 <li class="swiper-slide" data-type="image"> 2397 <a 2398 href="files/Blossom-Shine_3-WM.jpg" 2399 data-standard="idnslot.jpg" 2400 data-image="files/Blossom-Shine_3-WM.jpg" 2401 data-position="3" 2402 class="product-single__thumbnail" 2403 > 2404 <img 2405 class="lazyload w-100" 2406 src="idnslot.jpg" 2407 alt="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit" 2408 width="" 2409 height="" 2410 > 2411 </a> 2412 </li> 2413 2414 2415 2416 2417 <li class="swiper-slide" data-type="image"> 2418 <a 2419 href="files/Blossom-Shine_4.jpg" 2420 data-standard="idnslot.jpg" 2421 data-image="files/Blossom-Shine_4.jpg" 2422 data-position="4" 2423 class="product-single__thumbnail" 2424 > 2425 <img 2426 class="lazyload w-100" 2427 src="idnslot.jpg" 2428 alt="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit" 2429 width="" 2430 height="" 2431 > 2432 </a> 2433 </li> 2434 2435 2436 2437 </ul> 2438 </div> 2439 2440 </div> 2441 2442 <div 2443 id="featured-image-product" 2444 class="col-lg-10 col-12 d-none d-lg-block" 2445 > 2446 <div class="swiper-container gallery-top"> 2447 <div class="swiper-slide product-single__image"> 2448 2449<div class="product-single__photos slider slider-for" id="ProductPhoto"> 2450 2451 2452<div class="easyzoom easyzoom--overlay easyzoom--with-thumbnails"> 2453 <a href="idnslot.jpg"> 2454 <img 2455 src="idnslot.jpg" 2456 alt="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit" 2457 id="ProductPhotoImg" 2458 class="lazyload" 2459 > 2460 2461 </a> 2462</div> 2463</div> 2464 2465 </div> 2466 <div class="swiper-slide product-single__video" style="display: none"> 2467 <video 2468 src="https://cdn.shopify.com/videos/c/vp/05d379ea115d41c2bd0f7d08b1496bd9/05d379ea115d41c2bd0f7d08b1496bd9.HD-1080p-7.2Mbps-24002195.mp4" 2469 playsinline 2470 loop 2471 muted 2472 ></video> 2473 </div> 2474 </div> 2475 </div> 2476</div> 2477 2478<div id="featured-image-product2" class="col-12 d-lg-none"> 2479 <div class="swiper-container gallery-mobile"> 2480 <ul class="swiper-wrapper"> 2481<li class="swiper-slide img"> 2482 2483 <img 2484 class="swiper-lazy" 2485 src="idnslot.jpg" 2486 data-src="idnslot.jpg" 2487 alt="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit" 2488 width="" 2489 height="" 2490 > 2491 2492 </li> 2493 2494 2495<li class="swiper-slide img"> 2496 2497 <img 2498 class="swiper-lazy" 2499 src="idnslot.jpg" 2500 data-src="idnslot.jpg" 2501 alt="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit" 2502 width="" 2503 height="" 2504 > 2505 2506 </li> 2507 2508 2509<li class="swiper-slide img"> 2510 2511 <img 2512 class="swiper-lazy" 2513 src="idnslot.jpg" 2514 data-src="idnslot.jpg" 2515 alt="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit" 2516 width="" 2517 height="" 2518 > 2519 2520 </li> 2521 2522 2523<li class="swiper-slide img"> 2524 2525 <img 2526 class="swiper-lazy" 2527 src="idnslot.jpg" 2528 data-src="idnslot.jpg" 2529 alt="IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit" 2530 width="" 2531 height="" 2532 > 2533 2534 </li> 2535 2536 2537 </ul> 2538 2539 <div class="swiper-button-prev"><svg class="icon icon-chevron-left" xmlns="icon.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> 2540 <div class="swiper-button-next">
2540<svg xmlns="icon.png" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2541 <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"/> 2542</svg></div> 2543 2544 <!-- Add Pagination --> 2545 <div class="swiper-pagination"></div> 2546 2547 </div> 2548</div> 2549 2550<div class="product-m-pageleb-video col-12 text-center d-lg-none"> 2551 <!-- product video --> 2552 <style> 2553 .c-pdp-product-info { 2554 background-color: #0A0A0A !important; 2555 padding: 12px; 2556 margin: 0; 2557 color: white; 2558 } 2559 .view-video{display:block; margin:auto; padding:5px 10px;font-size:16px;font-weight:bold;border:2px solid #ffffff;background:#fff;} 2560 .view-video .icon-play{fill:#ffffff;vertical-align: middle;} 2561 .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;} 2562 .close-video{position:absolute;right:9px; top:8%;z-index:2;padding:5px;} 2563 .close-video .icon{width:30px;height:30px;} 2564 /*responsive iframe */ 2565 .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);} 2566 .video-container iframe {position: absolute;top:60%;left: 0;width: 100%;height: 100%;} 2567 2568 .youtube { 2569 background-color: #000; 2570 margin-bottom: 30px; 2571 position: relative; 2572 padding-top: 56.25%; 2573 overflow: hidden; 2574 cursor: pointer; 2575 width: 100%; 2576 } 2577 .swiper-slide .youtube { 2578 max-width: 480px; 2579 } 2580 .youtube img { 2581 width: 100%; 2582 top: -16.82%; 2583 left: 0; 2584 opacity: 0.7; 2585 } 2586 .youtube .play-button { 2587 width: 90px; 2588 height: 60px; 2589 background-color: #333; 2590 box-shadow: 0 0 30px rgba( 0,0,0,0.6 ); 2591 z-index: 1; 2592 opacity: 0.8; 2593 border-radius: 6px; 2594 } 2595 .youtube .play-button:before { 2596 content: ""; 2597 border-style: solid; 2598 border-width: 15px 0 15px 26.0px; 2599 border-color: transparent transparent transparent #fff; 2600 } 2601 .youtube img, 2602 .youtube .play-button { 2603 cursor: pointer; 2604 } 2605 .youtube img, 2606 .youtube iframe, 2607 .youtube .play-button, 2608 .youtube .play-button:before { 2609 position: absolute; 2610 } 2611 .youtube .play-button, 2612 .youtube .play-button:before { 2613 top: 50%; 2614 left: 50%; 2615 transform: translate3d( -50%, -50%, 0 ); 2616 } 2617 .youtube iframe { 2618 height: 100%; 2619 width: 100%; 2620 top: 0; 2621 left: 0; 2622 } 2623 </style> 2624 2625 2626</div> 2627</div> 2628 2629<div class="product-desc-add position-relative d-none d-lg-block m-0"> 2630 2631</div> 2632
2633<script> 2634if ($(window).width() < 991) { 2635 var direction = 'horizontal' 2636} else { 2637 var direction = 'vertical' 2638 $(".gallery-thumbs").height($("#ProductPhotoImg").height()) 2639} 2640var swiper = new Swiper('.gallery-thumbs', { 2641 2642 direction, 2643 slidesPerView: 4.5, 2644 spaceBetween: 12, 2645 navigation: { 2646 nextEl: '.swiper-button-next', 2647 prevEl: '.swiper-button-prev', 2648 } 2649}); 2650 2651var swiper = new Swiper('.gallery-mobile', { 2652 //loop: true, 2653 lazy: true, 2654 speed: 300, 2655 resistance : true, 2656 resistanceRatio : 0, 2657 freeModeMomentumRatio : 0.45, 2658 freeModeMomentumVelocityRatio : 1.5, 2659 navigation: { 2660 nextEl: '.swiper-button-next', 2661 prevEl: '.swiper-button-prev', 2662 }, 2663 pagination: { 2664 el: '.swiper-pagination' 2665 }, 2666 useCSS3Transforms: false, 2667 loop: false, 2668 on: { 2669 init: function () { 2670 console.log('swiper initialized'); 2671 var currentVideo = $("[data-swiper-slide-index=" + this.realIndex + "]").find("video"); 2672 currentVideo.trigger('play'); 2673 }, 2674 }, 2675}); 2676 2677/* GET ALL VIDEOS */ 2678var sliderVideos = $(".swiper-slide video"); 2679 2680/* SWIPER API - Event will be fired after animation to other slide (next or previous) */ 2681swiper.on('slideChange', function () { 2682 console.log('slide changed'); 2683 /* stop all videos */ 2684 sliderVideos.each(function( index ) { 2685 this.currentTime = 0; 2686 }); 2687 2688 /* SWIPER GET CURRENT AND PREV SLIDE (AND The VIDEO INSIDE) */ 2689 var prevVideo = $(`[data-swiper-slide-index="${this.previousIndex}]"`).find("video"); 2690 var currentVideo = $(`[data-swiper-slide-index="${this.realIndex}"]`).find("video"); 2691 prevVideo.trigger('stop'); 2692 currentVideo.trigger('play'); 2693}); 2694 2695 2696$("[data-video]").click(function(){ 2697 const file = $(this).data("video") 2698 $(".product-single__video").show() 2699 $(".product-single__image").hide() 2700 $(".product-single__video").find("video").attr("src", file) 2701 $(".product-single__video").find("video")[0].play(); 2702}) 2703$("[data-image]").click(function(){ 2704 $(".product-single__video").hide() 2705 $(".product-single__image").show() 2706 $(".product-single__video").find("video")[0].pause(); 2707}) 2708 2709$("#product-image .swiper-slide").each(function(){ 2710 let width = $(this).width() 2711 $(this).height(width) 2712}) 2713 2714$(window).resize(function() { 2715 $("#product-image .swiper-slide").each(function(){ 2716 let width = $(this).width() 2717 $(this).height(width) 2718 }) 2719}) 2720</script>
2720 2721 2722 </div> 2723<br> 2724 2725 2726 <div class="grid__item_product-info mb-3"> 2727 <div class="c-pdp-product-info"> 2728 <h2 style="color: #ffffff;">IndoJayaPoker: Situs IDNPlay Gacor Anti Kalah dengan Teknologi Slot IDN Mudah JP 2026</h2> 2729<p style="text-align: justify; color: #ffffff;">Bosen jadi donatur tetap di situs lain? Udah saatnya lo pindah haluan ke IndoJayaPoker, satu-satunya agen <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html">idn slot</a> gacor anti kalah yang bikin hari-hari lo di tahun 2026 penuh dengan senyuman! Kita bukan cuma sekadar link slot yang modal tampilan doang, tapi kita adalah situs idnplay gacor paling legendaris yang punya sistem keamanan tingkat dewa. Buat lo yang lagi hunting lin idn slot paling stabil dan pengen ngerasain gimana asiknya main idnslot tanpa intervensi admin, lo udah mendarat di tempat yang bener-bener tepat. Di sini, reputasi slot idn kita udah diakui para suhu sebagai tempat paling aman buat muter modal biar jadi cuan selangit!</p> 2730<p style="text-align: justify; color: #ffffff;">Gak perlu nunggu bintang jatuh buat jadi kaya, cukup gaspol di <a href="https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html">IndoJayaPoker</a> dan rasain sendiri sensasi slot idn mudah jp yang bocornya nggak tanggung-tanggung! Sebagai pelopor idnplay slot terbaru, kita selalu update engine biar setiap game yang lo mainin bener-bener jadi slot terbaru idnplay dengan algoritma paling gampang menang. Lo nggak perlu pusing mikirin pola ribet, karena di idn slot kami, semua putaran dirancang buat kasih kejutan jackpot yang bikin saldo lo muntah-muntah. Jangan sampe cuma jadi penonton pas temen lo WD gede, buruan amankan akun lo di slot gacor nomor satu ini dan buktiin sendiri kenapa kita dapet predikat sebagai situs paling gampang kasih JP selangit!</p> 2731 2732 2733 <p>©2026 | IDNSLOT</p> 2734 2735 2736 2737 2738 </ul> 2739 </div> 2740 </div> 2741<style> 2742.c-pdp-product-info__service--active { 2743 font-size: 12px; 2744 padding-left: 10px; 2745 text-align: left; 2746 max-width: 550px; 2747 margin: auto; 2748} 2749.c-pdp-product-info__service--active li { 2750 list-style: disc; 2751} 2752.c-pdp-product-info { 2753 background-color: #f5f5f5; 2754 padding: 12px; 2755 margin: 0; 2756} 2757.freeship em { 2758 font-style: italic; 2759 font-size: 12px !important; 2760} 2761 2762 2763</style> 2764
2765<script> 2766$(document).ready(function(){ 2767 if ( $(".c-pdp-product-info__service li").length == 1 ) { 2768 $(".c-pdp-product-info__service").addClass("no-bullet"); 2769 $(".c-pdp-product-info__service li").addClass("no-bullets"); 2770 } 2771}); 2772</script>
2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 </div> 2786 <div id="product-meta" class="col-lg-5 p-0"> 2787 <div class="product-meta"> 2788 <style> 2789.product-meta--review {margin-top:10px} 2790.freeship * {font-size: 14px !important;font-style: normal;} 2791</style> 2792<h1 itemprop="name" class="mb-2" style="color: white; font-weight: bold;">IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit</h1> 2793 2794<div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 2795<meta itemprop="priceCurrency" content="IDR"> 2796 2797<link itemprop="availability" href="https://schema.org/InStock">
2798<script 2799 type="text/javascript" 2800 src="//platform-api.sharethis.com/js/sharethis.js#property=5acdc0aa3ef3c0001396fd50&product=custom-share-buttons" 2801 async="async" 2802></script>
2802 2803 2804 2805 2806 2807<span class="visually-hidden">Translation missing: en.products.general.regular_price</span> 2808 2809 <span class="visually-hidden">Translation missing: en.products.general.sale_price</span> 2810 2811<div class="row no-gutters mb-3"> 2812 <span 2813 id="ProductPrice" 2814 class="h2 ProductPrice" 2815 itemprop="price" 2816 content="835000" style="color: #ffffff;" 2817 > 2818 Rp 10.000 2819 </span> 2820 <div class="discount-product-detail"> 2821 <p id="ComparePrice" class="ComparePrice mt-2 mt-lg-0"> 2822 Rp 100.000 2823 </p> 2824 <span class=" tag-discount"> 2825 2826 2827 <span id="newDiscount" class="product-tag persentase-discount hide"> 2828 (90%) 2829 </span><br> 2830 2831 </span> 2832 </div> 2833</div> 2834 2835<div class="row no-gutters meta-sds"> 2836 <div class="col-12 mb-2 mb-lg-0 stock-info"> 2837 2838 2839 <span 2840 id="ProductStock-Product" 2841 class="product-single__stock mb-2 hide" 2842 > 2843 2844 2845 2846 2847 Barang dikirim pada 2848 2849 2850 2851 </span> 2852 2853 <style> 2854 .short-desc-desktop { 2855 margin-bottom: 2rem; 2856 color: white; 2857 } 2858 .short-desc ul li:nth-child(n + 4) { 2859 display: none; 2860 } 2861 .short-desc ul li.showList:nth-child(n + 4) { 2862 display: list-item; 2863 } 2864 label.more { 2865 display: none; 2866 } 2867 label.more.showMe { 2868 display: block; 2869 font-size: 12px; 2870 text-transform: uppercase; 2871 font-weight: 700; 2872 cursor: pointer; 2873 } 2874</style> 2875 2876 <div class="short-desc-desktop d-none d-lg-block"> 2877 <div class="short-desc"> 2878 2879<p>Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!</p> 2880 </div> 2881 <label class="more">Show More â</label> 2882 </div><br> 2883 2884
2885<script> 2886 var liCount; 2887 $(document).ready(function () { 2888 $(".short-desc ul").each(function() { 2889 liCount = $(this).children("li").length; 2890 if (liCount > 3) { 2891 $(this).parent(".short-desc").next(".more").addClass("showMe"); 2892 } 2893 }); 2894 2895 $(".more").click(function () { 2896 //$(".short-desc").find("li").addClass("showList"); 2897 // $(this).hide(); 2898 $("#product-desc").find("ul").show() 2899 $('html, body').animate({ 2900 scrollTop: $("#product-desc").offset().top - 250 2901 }, 2000); 2902 $("#product-desc").css("height","auto"); 2903 $("#more_content").remove(); 2904 $(".product-spec").append("<div id='less_content' class='readmore'><span class='less_content'>Less</span></div>") 2905 }); 2906 }); 2907</script>
2907 2908 2909 2910 </div> 2911</div> 2912 2913<div id="purchaseProduct"> 2914 2915 2916 2917 2918<style> 2919.variant-metafield { 2920 display: block!important; 2921 width: 1px; 2922 padding: 0; 2923 border-color: #fff; 2924} 2925.select2-results__option[aria-disabled] { 2926 display: none; 2927} 2928 2929.towel-bordir { 2930 width: 100%; 2931 display: flex; 2932 align-items: center; 2933 justify-content: space-around; 2934} 2935</style> 2936 2937 2938 2939
2940<script> 2941 2942 2943</script>
2943 2944 2945 2946 2947 2948 2949 2950<select 2951name="id[]" 2952id="productSelect" 2953class="product-single__variants ignore hide hide" 2954> 2955 2956 2957 2958 <option 2959 2960 selected="selected" 2961 2962 data-sku="OBVSTF1086" 2963 value="44083045826775" 2964 > 2965 Default Title 2966 </option> 2967 2968 2969 2970</select> 2971
2972<script src="//outerbloom.com/cdn/shop/t/138/assets/jquery.magnific-popup.min.js?v=184369421263510081681752652422" type="text/javascript"></script>
2972 2973
2974<script> 2975$('.size-chart-open-popup').magnificPopup({ 2976 type:'inline', 2977 midClick: true 2978}); 2979</script>
2979 2980 2981 2982 2983 2984<div class="upload-image-preview"> 2985 2986 2987 2988 2989 2990 <style> 2991.file-dnd * { 2992 margin: 0; 2993 padding: 0; 2994 box-sizing: border-box; 2995} 2996.file-dnd { 2997 width: 100%; 2998 height: 250px; 2999 border: 1px solid #ddd; 3000 border-radius: 10px; 3001 padding: 15px; 3002 display: flex; 3003 flex-direction: column; 3004 gap: 10px; 3005 /* box-shadow: 0px 2px 10px 2px rgba(0,0,0,0.05); */ 3006 margin: auto; 3007} 3008.file-dnd input { 3009 display: none; 3010} 3011.file-dnd .before-upload { 3012 border: 1px dashed #888; 3013 flex: 1; 3014 border-radius: 5px; 3015 display: flex; 3016 justify-content: center; 3017 align-items: center; 3018 text-align: center; 3019 cursor: pointer; 3020} 3021.file-dnd .before-upload > div { 3022 display: flex; 3023 flex-direction: column; 3024 align-items: center; 3025 gap: 8px; 3026} 3027.file-dnd .before-upload > div h4 { 3028 width: 150px; 3029} 3030.file-dnd .before-upload > div p { 3031 font-size: 12px !important; 3032 color: #555; 3033} 3034.file-dnd.active .before-upload { 3035 border: 1px solid #5750d9; 3036 background-color: #f5f5ff; 3037} 3038.file-dnd .after-upload { 3039 position: relative; 3040 display: none; 3041} 3042.file-dnd .after-upload img { 3043 width: 100%; 3044 border-radius: 5px; 3045 max-height: 180px; 3046 object-fit: contain; 3047 display: block; 3048} 3049.file-dnd .after-upload .clear-btn { 3050 position: absolute; 3051 top: 10px; 3052 right: 10px; 3053 background: rgba(0, 0, 0, 0.5); 3054 width: 15px; 3055 height: 15px; 3056 text-align: center; 3057 line-height: 15px; 3058 border-radius: 50%; 3059 color: #fff; 3060 cursor: pointer; 3061 font-size: 14px; 3062} 3063</style> 3064 3065<div 3066class="file-dnd mb-3" 3067 3068 style="display: none" 3069 3070> 3071<label for="upload-photo">Upload your Photo:</label> 3072<input type="file" id="upload-photo" accept="image/*"> 3073<input type="hidden" data-properties="Photo"> 3074<div class="before-upload"> 3075 <div> 3076 <svg id="surface1" xmlns="icon.png" width="33.053" height="41.719" viewBox="0 0 33.053 41.719"> 3077<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> 3078<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> 3079<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> 3080</svg> 3081 3082 <h4>Drag & Drop Photo file or Browse</h4> 3083 <p>Supports: JPEG, PNG, GIF, TIFF</p> 3084 </div> 3085</div> 3086<div class="after-upload"> 3087 <div class="clear-btn">×</div> 3088 <img src="" width="" height=""> 3089</div> 3090</div>
3091<script> 3092function applyDndFile(el) { 3093 const parent = document.querySelector(".file-dnd") 3094 const beforeUploadEl = el.querySelector(".before-upload") 3095 const afterUploadEl = el.querySelector(".after-upload") 3096 const inputFile = el.querySelector("input[type=file]") 3097 const imagePreview = el.querySelector(".after-upload img") 3098 const clearBtn = el.querySelector(".after-upload .clear-btn") 3099 const inputProps = parent.querySelector("[data-properties]"); 3100 3101 async function upload(name, uri, type) { 3102 try { 3103 const filename = name.split('.')[0] 3104 let formData = new FormData(); 3105 formData.append("file", uri); 3106 const response = await fetch(`${host}/upload?name=${filename}&dir=gift&type=${type}`, { 3107 method: "POST", 3108 body: formData 3109 }) 3110 if(response) { 3111 const res = await response.json() 3112 return res 3113 } 3114 } catch(err){ 3115 console.log(err) 3116 } 3117 } 3118 3119 function showImagePreview(img) { 3120 if(img){ 3121 const blobUrl = URL.createObjectURL(img) 3122 imagePreview.src = blobUrl 3123 afterUploadEl.style.display = "block" 3124 beforeUploadEl.style.display = "none" 3125 } 3126 } 3127 3128 beforeUploadEl.addEventListener("click", (e) => { 3129 e.preventDefault() 3130 inputFile.click() 3131 }) 3132 3133 inputFile.addEventListener("change", async (e) => { 3134 e.preventDefault() 3135 showImagePreview(e.target.files[0]) 3136 var uploadData = await upload(e.target.files[0].name, e.target.files[0], e.target.files[0].type) 3137 inputProps.value = uploadData?.url 3138 }) 3139 3140 clearBtn.addEventListener("click", (e) => { 3141 afterUploadEl.style.display = "none" 3142 beforeUploadEl.style.display = "flex" 3143 inputProps.value = "" 3144 }) 3145 3146 beforeUploadEl.addEventListener("dragover", (e) => { 3147 e.preventDefault() 3148 el.classList.add("active") 3149 }) 3150 3151 beforeUploadEl.addEventListener("dragleave", (e) => { 3152 e.preventDefault() 3153 el.classList.remove("active") 3154 }) 3155 3156 beforeUploadEl.addEventListener("drop", async (e) => { 3157 e.preventDefault() 3158 el.classList.remove("active") 3159 showImagePreview(e.dataTransfer.files[0]) 3160 var uploadData = await upload(e.dataTransfer.files[0].name, e.dataTransfer.files[0], e.dataTransfer.files[0].type) 3161 console.log(uploadData) 3162 inputProps.value = uploadData?.url 3163 }) 3164} 3165 3166applyDndFile(document.querySelector(".file-dnd")) 3167 3168$(document).ready(function(){ 3169 $(".variant-swatch").change(function(){ 3170 const v = $(this).val().toLowerCase() 3171 const list = ["photo", "custom one side", "custom two side", "small", "big"] 3172 if(list.some(item => v.includes(item))) return $(".file-dnd").show() 3173 $(".file-dnd").hide() 3174 $(".file-dnd").find("[data-properties]").val("") 3175 $(".after-upload").hide() 3176 $(".before-upload").css("display", "flex") 3177 }) 3178}) 3179</script>
3179 3180 3181</div> 3182 3183 3184 <div class="delivery-city mb-4"> 3185 <a href="https://dive-idnslot.pages.dev/"> 3186 <center><img src="icon.png" alt="logo-daftar" style="width: 260px; margin-top: -20px;"></center></a><br> 3187<h4 class="fw-600 text-uppercase mb-15" style="color: #c5c5c5; font-weight: bold;">Gabung ke IndoJayaPoker dan temukan peluang menang besar-mu melalui link alternatif resmi yang lagi viral!</h4> 3188<div class="row justify-content-between m-0"> 3189 <select id="cities" class="form-control select-search" required> 3190 <option value="">Gabung ke IndoJayaPoker dan temukan peluang menang besar-mu melalui link alternatif resmi yang lagi viral!</option> 3191 </select> 3192</div> 3193</div> 3194 3195<style> 3196@media (max-width: 768px) { 3197 .select2-search__field { 3198 pointer-events: none !important; 3199 } 3200 3201 .select2-search { 3202 display: none !important; 3203 } 3204} 3205</style> 3206
3207<script> 3208$(document).ready(function() { 3209 // Check if mobile 3210 if (window.innerWidth <= 768) { 3211 // When cities select2 opens on mobile, remove focus from search 3212 $('#cities').on('select2:open', function() { 3213 setTimeout(function() { 3214 $('.select2-search__field').blur(); 3215 $('.select2-search__field').prop('readonly', true); 3216 }, 100); 3217 }); 3218 } 3219}); 3220</script>
3220 3221 3222<style> 3223.icon-img-footer { 3224 width: 80px; 3225 padding: 0px 5px; 3226} 3227@media (min-width: 768px) { 3228 .icon-img-footer { 3229 width: 120px; 3230 } 3231} 3232@media (min-width: 992px) { 3233 .icon-img-footer { 3234 width: 120px; 3235 } 3236} 3237 3238 3239</style> 3240<style> 3241 :root { 3242 --brand: #00fffb; 3243 --brand-mid: #009297; 3244 --brand-dark: #006962; 3245 --border: #e5e7eb; 3246 --bg: #fff; 3247 --shadow: 0 6px 15px rgba(0, 0, 0, .08); 3248 } 3249 3250 .app-card { 3251 max-width: 650px; 3252 margin: 25px auto; 3253 background: var(--bg); 3254 border-radius: 14px; 3255 overflow: hidden; 3256 box-shadow: var(--shadow); 3257 border: 1px solid var(--border); 3258 transition: transform .2s, box-shadow .3s; 3259 font-family: system-ui, Arial, sans-serif; 3260 font-size: .92rem; 3261 } 3262 3263 .app-card:hover { 3264 transform: translateY(-2px); 3265 box-shadow: 0 10px 25px rgba(0, 0, 0, .12); 3266 } 3267 3268 .app-header { 3269 padding: 12px 16px; 3270 text-align: center; 3271 background: linear-gradient(135deg, #0A0A0A, #5d5d5d, #0A0A0A); 3272 color: #fff; 3273 font-weight: 800; 3274 font-size: 1.15rem; 3275 text-shadow: 0 1px 2px rgba(0, 0, 0, .3); 3276 } 3277 3278 .app-table { 3279 width: 100%; 3280 border-collapse: collapse; 3281 } 3282 3283 .app-table th, 3284 .app-table td { 3285 padding: 8px 12px; 3286 vertical-align: middle; 3287 } 3288 3289 .app-table th { 3290 width: 35%; 3291 background: #e7e7e7; 3292 color: #585858; 3293 font-weight: 700; 3294 letter-spacing: .2px; 3295 text-transform: uppercase; 3296 font-size: .85rem; 3297 } 3298 3299 .app-table td { 3300 border-bottom: 1px solid var(--border); 3301 color: #1f1f1f; 3302 font-size: .9rem; 3303 text-align: center; 3304 } 3305 3306 @media (max-width: 640px) { 3307 .app-table, 3308 .app-table tbody, 3309 .app-table tr, 3310 .app-table th, 3311 .app-table td { 3312 display: block; 3313 width: 100%; 3314 } 3315 } 3316 3317 .review-section { 3318 max-width: 850px; 3319 margin: 30px auto; 3320 display: flex; 3321 flex-direction: column; 3322 gap: 18px; 3323 font-family: system-ui, Arial, sans-serif; 3324 } 3325 3326 .review-card { 3327 background: #0A0A0A; 3328 padding: 16px 20px; 3329 border-radius: 10px; 3330 border-left: 5px solid #4f4e4e; 3331 box-shadow: 0 3px 6px rgba(0, 0, 0, .05); 3332 transition: all .25s ease-in-out; 3333 } 3334 3335 .review-card:hover { 3336 transform: translateY(-3px); 3337 box-shadow: 0 5px 10px rgba(0, 0, 0, .08); 3338 } 3339 3340 .review-author { 3341 font-weight: 700; 3342 color: #FFFFFF ; 3343 margin-bottom: 4px; 3344 display: flex; 3345 align-items: center; 3346 gap: 6px; 3347 font-size: .92rem; 3348 } 3349 3350 .review-author::before { 3351 content: "ð¤"; 3352 font-size: 1rem; 3353 } 3354 3355 .review-card p { 3356 margin: 0; 3357 color: #d3d3d3; 3358 font-size: .94rem; 3359 } 3360 3361 .review-rating { 3362 margin-left: auto; 3363 font-weight: 700; 3364 } 3365 3366 .stars { 3367 --rating: 5; 3368 --star-size: 1rem; 3369 --star-gap: 2px; 3370 --star-empty: #e5e7eb; 3371 --star-fill: #f4c430; 3372 position: relative; 3373 display: inline-block; 3374 font-size: var(--star-size); 3375 line-height: 1; 3376 letter-spacing: var(--star-gap); 3377 } 3378 3379 .stars::before { 3380 content: "â â â â â "; 3381 color: var(--star-empty); 3382 } 3383 3384 .stars::after { 3385 content: "â â â â â "; 3386 color: var(--star-fill); 3387 position: absolute; 3388 left: 0; 3389 top: 0; 3390 width: calc((var(--rating) / 5) * 100%); 3391 overflow: hidden; 3392 white-space: nowrap; 3393 pointer-events: none; 3394 } 3395 3396 .stars.lg { 3397 --star-size: 1.1rem; 3398 letter-spacing: 3px; 3399 } 3400 3401 .badge { 3402 display: inline-flex; 3403 align-items: center; 3404 gap: 8px; 3405 flex-wrap: wrap; 3406 } 3407 3408 .badge small { 3409 color: #555; 3410 font-weight: 600; 3411 } 3412</style> 3413 3414<div class="review-section"> 3415 <div class="review-card"> 3416 <div class="review-author"> 3417 Arif H 3418 <span class="review-rating stars" style="--rating: 5" aria-label="Rating 5.0 dari 5"></span> 3419 </div> 3420 <p> 3421 Link alternatif IndoJayaPoker lagi viral! Akses resmi buka game paling mudah menang, pola rahasia winrate tinggi bikin scatter gampang. Jackpot cepat jebol 18 juta kemarin. Transaksi aman, langsung jadi pemenang! 3422 </p> 3423 </div> 3424 3425 <div class="review-card"> 3426 <div class="review-author"> 3427 Maya L
3428 <span class="review-rating stars" style="--rating: 4.8" aria-label="Rating 4.8 dari 5"></span> 3429 </div> 3430 <p> 3431 Viral abis link alternatif resmi IndoJayaPoker! Game online paling mudah menang dengan pola rahasia winrate tinggi. Slot viral scatter mudah beruntun, jackpot cepat jebol besar. Akses sekarang, transaksi aman, wajib coba! 3432 </p> 3433 </div> 3434 3435 <div class="review-card"> 3436 <div class="review-author"> 3437 Rio T 3438 <span class="review-rating stars" style="--rating: 4.9" aria-label="Rating 4.9 dari 5"></span> 3439 </div> 3440 <p> 3441 IndoJayaPoker viral karena link alternatif resminya! Buka akses ke game paling mudah menang, pola rahasia winrate tinggi top. Scatter gampang, jackpot cepat jebol. Transaksi aman, jadi pemenang berikutnya yuk! 3442 </p> 3443 </div> 3444</div> 3445 3446 3447<div class="purchasePopup purchasePopupSpotify" style="display: none;"> 3448<div class="purchaseArea"> 3449 <div class="sectionPurchase sectionPurchaseSpotify"> 3450 <div class="wrapperPurchase"> 3451 <div class="headerPurchase"> 3452 <h3>personalize spotify photo print</h3> 3453 <a class="close-purchase-popup"> 3454 <svg xmlns="icon.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 3455 <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> 3456 </svg> 3457 </a> 3458 </div> 3459 <div class="contentPurchase"> 3460 <div class="spotifyAddons"></div> 3461 </div> 3462 3463 <div class="purchase-button btn-addon row m-0" style="display: none;"> 3464 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 3465 <button class="back-purchase-button back-addon text-uppercase"> 3466 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="icon.png"> 3467 <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> 3468 </svg> 3469 <span>Back</span> 3470 </button> 3471 </div> 3472 <div class="col-12 col-lg-10 text-right" style="display: flex;justify-content: end;gap: 20px;"> 3473 <button class="btn next-purchase-button next-addon text-uppercase"> 3474 <span>continue without add-ons</span> 3475 </button> 3476 </div> 3477 </div> 3478 </div> 3479 </div> 3480</div> 3481</div> 3482 3483<style> 3484#PBarNextFrameWrapper { 3485 display: none; 3486} 3487#backgroundPopup { 3488 display: none; 3489 position: fixed; 3490 _position: absolute; 3491 height: 100%; 3492 width: 100%; 3493 top: 0; 3494 left: 0; 3495 background: rgb(117 117 117 / 24%); 3496 z-index: 1; 3497} 3498.sectionPurchase { 3499 height: 100%; 3500 position: relative; 3501 max-width: 1344px; 3502 background-color: #fff; 3503 padding: 0; 3504 overflow: hidden; /* Changed from auto to hidden */ 3505 display: flex; 3506 flex-direction: column; 3507} 3508.sectionPurchase.purchaseAddonSpotify { 3509 max-width: 1070px!important; 3510 max-height: 765px!important; 3511} 3512.sectionPurchaseBoard { 3513 max-width: 872px!important; 3514 max-height: 821px!important; 3515} 3516.purchaseAddonSpotify .btn-action { 3517 position: absolute; 3518 bottom: 0; 3519 left: 0; 3520 width: 100%; 3521 display: flex; 3522 gap: 10px; 3523} 3524.wrapperPurchase { 3525 position: relative; 3526 height: 100%; 3527 display: flex; 3528 flex-direction: column; 3529} 3530 3531/* New styles for scrollable content and sticky button */ 3532.purchase-content { 3533 flex: 1; 3534 overflow-y: auto; 3535 overflow-x: hidden; 3536 padding: 20px; 3537} 3538 3539.purchase-button-wrapper { 3540 position: sticky; 3541 bottom: 0; 3542 background-color: #fff; 3543 border-top: 1px solid #e0e0e0; 3544 padding: 15px 0; 3545 margin-top: auto; 3546 z-index: 10; 3547} 3548 3549.purchasePopup { 3550 display: none; 3551 position: fixed; 3552 background: rgb(117 117 117 / 24%); 3553 z-index: 999; 3554 padding: 40px; 3555 font-size: 13px; 3556 top: 0; 3557 left: 0; 3558 width: 100%; 3559 height: 100%; 3560} 3561.popupPurchaseClose{ 3562 font-size:14px; 3563 line-height:14px; 3564 right:45px; 3565 top:45px; 3566 position:absolute; 3567 color:#6fa5fd; 3568 font-weight:700; 3569 display:block; 3570 cursor: pointer; 3571} 3572 3573.headerPurchase { 3574 margin-bottom: 30px; 3575 display: flex; 3576 justify-content: space-between; 3577} 3578 3579.headerPurchase h3 { 3580 font-size: 16px; 3581 text-transform: uppercase; 3582} 3583 3584.sectionPurchaseBoard .headerPurchase { 3585 margin-bottom: 15px; 3586} 3587 3588.sectionPurchaseBoard .formAddressPurchase { 3589 padding-top: 0;
3590} 3591 3592.purchaseArea { 3593 position: relative; 3594 height: 100%; 3595} 3596 3597.purchaseArea h4 { 3598 width: 100%; 3599 font-size: 12px; 3600 font-weight: 600; 3601 margin-bottom: 10px; 3602 text-transform: uppercase; 3603} 3604 3605.menuPurchase { 3606 margin-bottom: 30px; 3607} 3608 3609.menuPurchase ul { 3610 list-style-type: none; 3611 margin: 0; 3612} 3613 3614.menuPurchase ul li { 3615 display: inline-block; 3616 border: 1px solid #ffffff; 3617 padding: 5px 20px; 3618 margin-right: 5px; 3619 margin-bottom: 10px; 3620 font-size: 12px; 3621 font-weight: 400; 3622} 3623 3624.menuPurchase ul li:hover, .menuPurchase ul li.selected { 3625 background-color: #ffffff; 3626 color: #ffffff; 3627} 3628 3629.contentPurchase h5 { 3630 font-size: 12px; 3631 margin-bottom: 10px; 3632 font-weight: 400; 3633 overflow: hidden; 3634} 3635 3636/* Card */ 3637 3638#itemCards { 3639 max-height: 430px; 3640 overflow: auto; 3641} 3642 3643.item-cards { 3644 width: 100%; 3645} 3646.item-card.selected { 3647 border: 1px solid #ffffff; 3648} 3649.item-card:hover { 3650 border: 1px solid #C4C4C4; 3651} 3652.item-cards .item-card { 3653 position: relative; 3654 width: calc(33% - 10px); 3655 max-width: calc(33% - 10px); 3656 flex: 0 0 calc(33% - 10px); 3657 margin-bottom: 20px; 3658} 3659.item-cards .item-card label, 3660.item-addons .item-addon label { 3661 position: absolute; 3662 left: 0; 3663 width: 100%; 3664 height: 100%; 3665} 3666.item-cards .item-card .card-image img, 3667.item-addons .item-addon .card-image img { 3668 display: block; 3669 width: 100%; 3670} 3671.item-card .card-meta, 3672.item-addon .card-meta { 3673 padding: 10px 5px 5px; 3674} 3675.item-card.selected .card-meta, 3676.item-addon.selected .card-meta, 3677.item-card.selected .card-qty { 3678 background-color: #ffffff; 3679 color: #fff; 3680 visibility: visible!important; 3681} 3682.item-card:hover .card-meta, 3683.item-addon:hover .card-meta, 3684.item-card:hover .card-qty { 3685 background-color: #C4C4C4; 3686 color: #fff; 3687 visibility: visible!important; 3688} 3689.item-cards .item-card p, 3690.item-addons .item-addon p { 3691 font-size: 12px !important; 3692 margin: 0; 3693 font-weight: 600; 3694} 3695.item-card .card-meta input, 3696.item-addon .card-meta input { 3697 display: none; 3698} 3699.item-cards .item-card h5, 3700.item-addons .item-addon h5 { 3701 text-transform: uppercase; 3702 max-height: 35px; 3703} 3704 3705@media (max-width: 768px) { 3706 .item-cards .item-card { 3707 width: calc(50% - 10px); 3708 max-width: calc(50% - 10px); 3709 flex: 0 0 calc(50% - 10px); 3710 margin-bottom: 0; 3711 } 3712} 3713 3714.card-qty { 3715 display: flex; 3716 padding: 5px; 3717 visibility: hidden; 3718 background-color: #fff !important; 3719 z-index: 999; 3720} 3721.card-qty a { 3722 border-width: 1px; 3723 width: 30%; 3724 cursor: pointer; 3725 text-align: center; 3726 align-self: center; 3727 height: 28px; 3728 display: block; 3729 position: relative; 3730} 3731.card-qty a svg { 3732 position: absolute; 3733 top: 50%; 3734 left: 50%; 3735 transform: translate(-50%, -50%); 3736 text-align: center; 3737} 3738input.btn-qty { 3739 border-width: 0px; 3740 border-radius: 0; 3741 background-color: #fff; 3742 -webkit-appearance: none; 3743 box-shadow: none !important; 3744 -webkit-box-shadow: none !important; 3745 -moz-box-shadow: none!important; 3746 width: 40%; 3747 border-left: 1px solid #c4c4c4; 3748 border-right: 1px solid #c4c4c4; 3749 padding: 0; 3750} 3751 3752.sectionPurchaseBoard #itemAddons .item-card { 3753 width: calc(20% - 15px); 3754 max-width: calc(20% - 15px); 3755 flex: 0 0 calc(20% - 15px); 3756} 3757 3758.purchase-button { 3759 width: 100%; 3760 padding: 0; /* Reset padding as it's now handled by wrapper */ 3761 margin: 0; 3762} 3763 3764.sectionPurchaseBoard .purchase-button { 3765 margin-top: 0 !important; /* Reset margin */ 3766} 3767 3768.back-purchase-button, .back-spotify { 3769 width: 139px; 3770 border: 1px solid; 3771 height: 43px; 3772} 3773.purchase-button .btn { 3774 width: 297px; 3775 height: 43px; 3776 background-color: #ffffff; 3777 color: #ffffff; 3778} 3779.purchase-button .btn[disabled] { 3780 background-color: #EEEEEE; 3781} 3782.back-purchase-button svg, .back-spotify svg { 3783 align-self: center; 3784 vertical-align: middle; 3785 margin-right: 10px; 3786} 3787 3788#purchaseProduct .row .error { 3789 font-size: 12px !important; 3790 color: orange; 3791 margin-top: 5px; 3792} 3793 3794.reviewCardPurchase { 3795 max-width: 448px; 3796 float: right; 3797} 3798 3799.addonsPurchase .addon-item {display: flex;justify-content: space-between;} 3800.addon-item * {align-self: center;font-size: 12px;} 3801.addon-itm-title {width: 360px;} 3802.addon-itm-line-price {color: #757575;width: 80px;justify-content: space-between;display: flex;} 3803 3804.propsAddonSpotify p { 3805 margin: 0; 3806 display: flex; 3807 font-size: 12px !important; 3808 margin-bottom: 5px; 3809} 3810.propsAddonSpotify p span:first-child { 3811 text-transform: uppercase; 3812 font-weight: 600; 3813 -ms-flex: 0 0 150px; 3814 flex: 0 0 150px; 3815 max-width: 150px; 3816} 3817 3818.addonsPurchase .addons { 3819 max-height: 250px; 3820 overflow: auto; 3821} 3822 3823.btn .loading:after { 3824 content: ""; 3825 display: inline-block;
3826 width: 20px; 3827 height: 20px; 3828 padding: 3px; 3829 aspect-ratio: 1; 3830 border-radius: 50%; 3831 background: #FFFFFF; 3832 --_m: conic-gradient(#0000 10%, #ffffff), linear-gradient(#ffffff 0 0) content-box; 3833 -webkit-mask: var(--_m); 3834 mask: var(--_m); 3835 -webkit-mask-composite: source-out; 3836 mask-composite: subtract; 3837 animation: l3 1s infinite linear; 3838 margin: auto; 3839 vertical-align: middle; 3840 margin-left: 10px; 3841} 3842 3843#qrcode img, #qrcode canvas { 3844 width: 50px; 3845 position: absolute; 3846 top: 12px; 3847 left: 16px; 3848} 3849 3850.t-preview { 3851 position: absolute; 3852 top: 17px; 3853 left: 75px; 3854} 3855.t-preview p { 3856 margin: 0; 3857 font-size: 12px !important; 3858} 3859.t-preview .h3 { 3860 font-size: 16px !important; 3861 margin-bottom: 5px; 3862 font-weight: 600; 3863} 3864.scanCard { 3865 width: 100%; 3866 border: 1px solid; 3867 height: 76px; 3868 background-color: #fff; 3869} 3870.scanCard > div > img { 3871 position: absolute; 3872 right: 0; 3873 width: 55px; 3874} 3875 3876@keyframes l3 { 3877 100% { 3878 transform: rotate(1turn); 3879 } 3880} 3881 3882@media (min-width: 991px) { 3883 .sectionPurchase { 3884 height: 100%; 3885 position: relative; 3886 max-width: 1344px; 3887 background-color: #fff; 3888 top: 50%; 3889 left: 50%; 3890 transform: translate(-50%, -50%); 3891 } 3892 .headerPurchase h3 { 3893 font-size: 20px; 3894 } 3895 .purchaseArea h4 { 3896 font-size: 16px; 3897 } 3898 3899 .menuPurchase ul li { 3900 font-size: 16px; 3901 } 3902 3903 .contentPurchase { 3904 margin-bottom: 30px; 3905 } 3906 .contentPurchase h5 { 3907 font-size: 16px; 3908 } 3909 3910 .item-cards .item-card p, 3911 .item-addons .item-addon p { 3912 font-size: 16px !important; 3913 } 3914 3915 .cards { 3916 float: right; 3917 width: 400px; 3918 } 3919 3920 .item-cards .item-card { 3921 width: calc(25% - 30px); 3922 max-width: calc(25% - 30px); 3923 flex: 0 0 calc(25% - 30px); 3924 } 3925 3926 #itemAddons .item-card { 3927 position: relative; 3928 width: calc(16% - 40px); 3929 max-width: calc(16% - 40px); 3930 flex: 0 0 calc(16% - 40px); 3931 } 3932 3933 .purchase-button-wrapper { 3934 padding: 10px 20px; 3935 } 3936} 3937 3938@media (max-width: 1200px) { 3939 .item-cards .item-card { 3940 width: calc(33% - 30px); 3941 max-width: calc(33% - 30px); 3942 flex: 0 0 calc(33% - 30px); 3943 } 3944} 3945 3946@media (max-width: 992px) { 3947 .purchasePopup { 3948 padding: 0; 3949 } 3950 .item-cards .item-card h5, 3951 .item-addons .item-addon h5 { 3952 max-height: 30px; 3953 } 3954 3955 .back-purchase-button, .back-spotify, .next-purchase-button { 3956 width: 100%; 3957 } 3958 .addon-itm-title { 3959 width: 300px; 3960 } 3961 .addon-itm-line-price { 3962 margin-right: 10px; 3963 } 3964 .t-preview { 3965 top: 10px; 3966 } 3967 3968 .card-qty a { 3969 height: 15px; 3970 } 3971 3972 .purchase-button-wrapper { 3973 padding: 15px; 3974 } 3975} 3976 3977@media (max-width: 576px) { 3978 .purchase-button .btn { 3979 width: 100%!important; 3980 } 3981 .purchase-button > .col-12 { 3982 padding-left: 0; 3983 padding-right: 0; 3984 } 3985} 3986</style> 3987 3988 3989<div class="purchasePopup"> 3990<div class="purchaseArea"> 3991 3992 <div class="sectionPurchase purchasePersonalize sectionPurchaseBoard"> 3993 <div class="wrapperPurchase"> 3994 <div class="purchase-content"> 3995 <div class="headerPurchase"> 3996<h3 class="text-uppercase"> 3997 3998 customize your flower board 3999 4000</h3> 4001<a class="close-purchase-popup"> 4002<svg xmlns="icon.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 4003 <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"/> 4004</svg> 4005</a> 4006 4007</div> 4008<div class="contentPurchase"> 4009<div class="row"> 4010 4011 <div class="col-12"> 4012 4013 4014<style> 4015 4016 4017.customize-papan .group-field-1 .input-field {float: left;width: 100%;height: 317px;background-color: #E5E5EA;} 4018.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;} 4019 4020.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;} 4021.customize-papan .btn-upload-papan svg {width: 21px;height: 25px;display: block;align-self: center;margin: auto;margin-bottom: 12px;} 4022.svgLogoPapan {position: absolute;width: 100%;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;} 4023.svgLogoPapan p {color: #8E8E93; margin: 0;} 4024.svgLogoPapan p span {font-size: 12px;color: #FF0E00;} 4025.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;} 4026#suggest-messages {position: absolute;bottom: 5px;left: 5px;} 4027#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;} 4028.case-occasion .nice-select:after {border-bottom: 2px solid #333;border-right: 2px solid #333;right: 20px;top: 42%;width: 10px;height: 10px;} 4029.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;} 4030.customize-papan .input-field .limit {position: absolute;right: 15px;top: 0;color: #757575;} 4031 4032@media (min-width: 991px) { 4033 .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);} 4034 .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);} 4035} 4036</style> 4037 4038<input type="hidden" data-properties="penerima" value="-"> 4039<div class="customize-papan"> 4040<div class="container"> 4041 <div class="field-papan group-field-1 form-group"> 4042 <div class="input-field">
4043 <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. 4044(Ex: Selamat Menempuh Hidup Baru A & B)." maxlength="100"></textarea> 4045 <p class="limit">0/100</p> 4046 <div id="suggest-messages"> 4047 <a id="show_note_papan1" href="#"> 4048 <div class="suggest-message" id="note_btn_div1"> 4049 <span class="promo-code-link" id="note_btn_papan1">IndoJayaPoker</span> 4050 </div> 4051 </a> 4052 <a id="show_note_papan2" href="#"> 4053 <div class="suggest-message" id="note_btn_div2"> 4054 <span class="promo-code-link" id="note_btn_papan2">SLOT GACOR</span> 4055 </div> 4056 </a> 4057 <a id="show_note_papan3" href="#"> 4058 <div class="suggest-message" id="note_btn_div3"> 4059 <span class="promo-code-link" id="note_btn_papan3">LINK ALTERNATIF</span> 4060 </div> 4061 </a> 4062 </div> 4063 </div> 4064 </div> 4065 <div class="hide"> 4066 <input type="hidden" value="" id="note_id_papan1" name="note_id_papan1" style="top: 0px;"> 4067 <input type="hidden" value="" id="note_btn_id_papan1" name="note_btn_id_papan1"> 4068 </div> 4069 <div class="hide"> 4070 <input type="hidden" value="" id="note_id_papan2" name="note_id_papan2" style="top: 0px;"> 4071 <input type="hidden" value="" id="note_btn_id_papan2" name="note_btn_id_papan2"> 4072 </div> 4073 <div class="hide"> 4074 <input type="hidden" value="" id="note_id_papan3" name="note_id_papan3" style="top: 0px;"> 4075 <input type="hidden" value="" id="note_btn_id_papan3" name="note_btn_id_papan3"> 4076 </div> 4077 <div class="field-papan group-field-2 form-group"> 4078 4079 <label for="logoPapan" onclick="" class="input-field field-logo"> 4080 4081 4082 4083 <div class="btn-upload-papan w-100"> 4084 <?xml version="1.0" encoding="UTF-8"?> 4085 <img src="" style="display:none"> 4086 <div class="svgLogoPapan"> 4087 <svg xmlns="https://IndoJayaPoker.com/" width="22" height="26" viewBox="0 0 22 26" fill="none"> 4088 <path d="M6.5 20H15.5V11H21.5L11 0.5L0.5 11H6.5V20ZM0.5 23H21.5V26H0.5V23Z" fill="black"/> 4089 </svg> 4090 <p>Upload Logo <span>*optional</span></p> 4091 </div> 4092 </div> 4093 4094 </label> 4095 4096 <input 4097 type="hidden" 4098 data-properties="papan-logo" 4099 value="" 4100 > 4101 <input 4102 type="file" 4103 id="logoPapan" 4104 accept="image/*" 4105 style="position: absolute;width: 1px;height: 1px;padding: 0" 4106 > 4107 4108 <div class="input-field"> 4109 <input class="has-limit sender-name" type="text" placeholder="Nama Pengirim" data-properties="pengirim" maxlength="35"/> 4110 <p class="limit">0/35</p> 4111 </div> 4112 4113 </div> 4114 4115</div> 4116</div> 4117 </div> 4118 4119</div> 4120</div> 4121 4122 </div> 4123 <div class="purchase-button-wrapper"> 4124 <div class="purchase-button btn-card row m-0"> 4125<div class="col-12 col-lg-2 text-left mb-2 p-0"> 4126 4127</div> 4128<div class="btn-next-card col-12 col-lg-10 text-right"> 4129 4130 4131 <button 4132 4133 4134 4135 class="btn next-purchase-button text-uppercase" 4136 4137 disabled 4138 4139 > 4140 <span>save your flower board</span> 4141 </button> 4142</div> 4143</div> 4144 4145 </div> 4146 </div> 4147 </div> 4148 4149 4150 4151 <div 4152 class="sectionPurchase sectionPurchaseBoard hide" 4153 data-section="address" 4154 > 4155 <div class="wrapperPurchase"> 4156 <div class="purchase-content"> 4157 <div class="headerPurchase"> 4158<h3> 4159 Complete Your Order 4160</h3> 4161<a class="close-purchase-popup"> 4162<svg xmlns="icon.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 4163 <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"/> 4164</svg> 4165</a> 4166 4167</div> 4168<div class="contentPurchase"> 4169<div class="row"> 4170 <div class="col-12 position-relative"> 4171 <div class="addressPurchase"> 4172 4173 <h4 class="text-uppercase">recipient delivery address</h4> 4174 <p>Share the delivery address to send your heartfelt blooms straight to their door.</p> 4175 4176 <div class="formAddressPurchase row"> 4177 <div class="col-12"> 4178 <form> 4179 <div class="form-group row mb-2 mb-lg-4"> 4180 <div class="col-6 position-relative"> 4181 <input id="first_name" type="text" class="form-control input__field" placeholder="" required> 4182 <label for="first_name" class="input__label">First Name<span>*</span></label> 4183 </div> 4184 <div class="col-6 position-relative"> 4185 <input id="last_name" type="text" class="form-control input__field" placeholder="" required> 4186 <label for="last_name" class="input__label">Last Name<span>*</span></label> 4187 </div> 4188 <input type="hidden" data-properties="nama-penerima"> 4189 </div> 4190 4191 <h4 class="text-uppercase">how you want to input your address</h4> 4192 <div class="form-group row mb-2 mb-lg-4 form-address-upload"> 4193 <div class="col-6 position-relative"> 4194 <label class="address-manualy"> 4195 <svg xmlns="icon.png" width="18" height="17" viewBox="0 0 18 17" fill="none"> 4196<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
41961216 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
41965 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"/> 4197</svg> 4198<span>Input Address Manually</span> 4199 </label> 4200 </div> 4201 <div class="col-6 position-relative"> 4202 <label for="address-upload" class="address-upload"> 4203 <svg xmlns="icon.png" width="12" height="13" viewBox="0 0 12 13" fill="none"> 4204<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"/> 4205</svg> 4206<span>Upload Address Picture</span> 4207 </label> 4208 <input 4209 id="address-upload" 4210 type="file" 4211 accept="image/png, image/jpeg" 4212 style="position: absolute; padding: 0;width: 1px;height: 1px" 4213 > 4214 <input type="hidden" class="props-address-upload" data-properties="foto-alamat"> 4215 </div> 4216 </div> 4217 <img width="150" height="" src="" class="photo-address" style="display: none;"> 4218 4219 <div class="form-group row position-relative mb-2 mb-lg-4 form-address"> 4220 <div class="col-12"> 4221 <textarea 4222 id="delivery_address" 4223 data-properties="alamat-penerima" 4224 class="form-control input__field col-12" 4225 placeholder="" 4226 required 4227 ></textarea> 4228 <label for="delivery_address" class="input__label">Delivery Address<span>*</span></label> 4229 4230 </div> 4231 </div> 4232 <div class="form-group row mb-2 mb-lg-4 form-address"> 4233 <div class="col-6 position-relative"> 4234 <input 4235 id="recipient_number" 4236 type="text" 4237 data-properties="telepon-penerima" 4238 class="form-control input__field" 4239 placeholder="" 4240 required 4241 > 4242 <label for="recipient_number" class="input__label">Recipient number<span>*</span></label> 4243 </div> 4244 <div class="col-6 position-relative"> 4245 <input 4246 id="company" 4247 type="text" 4248 data-properties="company" 4249 class="form-control input__field" 4250 placeholder="" 4251 > 4252 <label for="company" class="input__label">Company (Optional)</label> 4253 </div> 4254 </div> 4255 <div class="form-group row mb-2 mb-lg-4 form-address"> 4256 <div class="col-6 position-relative"> 4257 <input 4258 id="province" 4259 type="text" 4260 class="form-control input__field" 4261 placeholder="" 4262 value="Jakarta" 4263 data-properties="province" 4264 > 4265 <label for="province" class="input__label">Province</label> 4266 </div> 4267 <div class="col-6 position-relative"> 4268 <select id="zip" class="form-control select-search" required></select> 4269 </div> 4270 </div> 4271 </form> 4272 </div> 4273 </div> 4274 </div> 4275 <div class="addonsPurchase"> 4276 <h4 class="text-uppercase">add-ons</h4> 4277 <div class="addons"> 4278 <p>No Add-Ons</p> 4279 <!-- 4280 <button class="add-addon"> 4281 <svg xmlns="icon.png" width="12" height="12" viewBox="0 0 12 12" fill="none"> 4282 <path d="M5.5 6.5H0V5.5H5.5V0H6.5V5.5H12V6.5H6.5V12H5.5V6.5Z" fill="black"/> 4283 </svg>
4284 <span>Enhance my moment with Add-ons</span> 4285 </button> 4286 --> 4287 </div> 4288 </div> 4289 </div> 4290 4291</div> 4292</div> 4293
4294<script> 4295document.addEventListener('DOMContentLoaded', function() { 4296// Detect iOS 4297var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; 4298 4299if (isIOS) { 4300 document.querySelector('.formAddressPurchase').classList.add('ios'); 4301 4302 // iOS specific fixes 4303 var inputs = document.querySelectorAll('.formAddressPurchase .input__field'); 4304 4305 inputs.forEach(function(input) { 4306 // Force enable touch events on iOS 4307 input.style.webkitUserSelect = 'text'; 4308 input.style.webkitTouchCallout = 'default'; 4309 input.style.pointerEvents = 'auto'; 4310 input.style.touchAction = 'manipulation'; 4311 4312 // Add explicit touch event listeners for iOS 4313 input.addEventListener('touchstart', function(e) { 4314 e.stopPropagation(); 4315 this.focus(); 4316 }, { passive: false }); 4317 4318 input.addEventListener('touchend', function(e) { 4319 e.preventDefault(); 4320 e.stopPropagation(); 4321 this.focus(); 4322 this.click(); 4323 }, { passive: false }); 4324 4325 // Force focus on tap for iOS 4326 input.addEventListener('click', function(e) { 4327 e.stopPropagation(); 4328 if (document.activeElement !== this) { 4329 this.focus(); 4330 } 4331 }); 4332 }); 4333 4334 // Fix for label overlapping on iOS 4335 var labels = document.querySelectorAll('.formAddressPurchase .input__label'); 4336 labels.forEach(function(label) { 4337 label.style.pointerEvents = 'none'; 4338 label.addEventListener('touchstart', function(e) { 4339 e.preventDefault(); 4340 var input = this.parentNode.querySelector('.input__field'); 4341 if (input) { 4342 input.focus(); 4343 } 4344 }); 4345 }); 4346} 4347 4348// Handle input state for all browsers, especially iOS 4349var inputs = document.querySelectorAll('.input__field'); 4350 4351inputs.forEach(function(input) { 4352 // Handle input events 4353 input.addEventListener('input', function() { 4354 if (this.value.trim() !== '') { 4355 this.classList.add('has-value'); 4356 } else { 4357 this.classList.remove('has-value'); 4358 } 4359 }); 4360 4361 // Handle focus 4362 input.addEventListener('focus', function() { 4363 this.classList.add('focused'); 4364 // iOS specific: ensure input is visible 4365 if (isIOS) { 4366 setTimeout(function() { 4367 input.scrollIntoView({ behavior: 'smooth', block: 'center' }); 4368 }, 300); 4369 } 4370 }); 4371 4372 // Handle blur 4373 input.addEventListener('blur', function() { 4374 this.classList.remove('focused'); 4375 if (this.value.trim() !== '') { 4376 this.classList.add('has-value'); 4377 } else { 4378 this.classList.remove('has-value'); 4379 } 4380 }); 4381 4382 // Initial check for pre-filled values 4383 if (input.value.trim() !== '') { 4384 input.classList.add('has-value'); 4385 } 4386}); 4387 4388// Additional iOS fixes 4389if (isIOS) { 4390 // Prevent iOS Safari from adding default styling 4391 document.addEventListener('touchstart', function() {}, { passive: true }); 4392 4393 // Fix viewport issues on iOS 4394 var viewport = document.querySelector('meta[name=viewport]'); 4395 if (viewport) { 4396 viewport.setAttribute('content', 4397 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' 4398 ); 4399 } 4400} 4401}); 4402</script>
4402 4403 </div> 4404 <div class="purchase-button-wrapper"> 4405 <div class="purchase-button btn-address row m-0"> 4406<div class="col-12 col-lg-2 text-left mb-2 p-0"> 4407 4408 <button class="back-purchase-button back-address text-uppercase"> 4409 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="icon.png"> 4410 <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"/> 4411 </svg> 4412 <span>Back</span> 4413 </button> 4414 4415</div> 4416<div class="btn-next-card col-12 col-lg-10 text-right"> 4417 4418 <!-- 4419 <button class="back-purchase-button back-address text-uppercase mr-lg-2 mb-2 mb-lg-0"> 4420 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="icon.png"> 4421 <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"/> 4422 </svg> 4423 <span>Back</span> 4424 </button> 4425 --> 4426 4427 4428 <button 4429 4430 id="addtocart-card" 4431 4432 class="btn next-address text-uppercase" 4433 4434 > 4435 <span>add to cart</span> 4436 </button> 4437</div> 4438</div> 4439 4440 </div> 4441 </div> 4442 </div> 4443 4444</div> 4445</div> 4446<div id="backgroundPopup"></div> 4447 4448 4449 4450<input 4451data-index="1" 4452type="hidden" 4453id="properties-delivery-date" 4454name="properties[Delivery Date]" 4455value="-" 4456> 4457<input 4458data-index="2" 4459type="hidden" 4460id="properties-delivery-time" 4461name="properties[Delivery Time]" 4462value="-" 4463> 4464<input 4465data-index="4" 4466type="hidden" 4467id="properties-nama-penerima" 4468name="properties[Nama Penerima]" 4469value="-" 4470> 4471<input 4472data-index="5" 4473type="hidden" 4474id="properties-alamat-penerima" 4475name="properties[Alamat Penerima]" 4476value="-" 4477> 4478<input 4479data-index="6" 4480type="hidden" 4481id="properties-kodepos" 4482name="properties[Kodepos]" 4483value="-" 4484> 4485<input data-index="7" type="hidden" id="properties-telepon-penerima" name="properties[Telepon Penerima]"> 4486 4487 4488 <input 4489 data-index="8" 4490 type="hidden" 4491 id="properties-kartu-nama-penerima" 4492 name="properties[Kartu Nama Penerima]" 4493 value="-" 4494 > 4495 4496<textarea 4497 data-index="9" 4498 type="hidden" 4499 id="properties-kartu-pesan" 4500 name="properties[Kartu Pesan]" 4501 style="display: none" 4502>-</textarea> 4503 4504 4505 4506<input 4507 data-index="10" 4508 type="hidden" 4509 id="properties-kartu-nama-pengirim" 4510 name="properties[Kartu Nama Pengirim]" 4511 value="-" 4512> 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531<!-- Additional Shipping --> 4532<input type="hidden" id="properties-kota-pengiriman-province" name="properties[Province]"> 4533<input 4534type="hidden" 4535id="properties-kota-pengiriman-country" 4536name="properties[Country]" 4537value="Indonesia" 4538> 4539<input type="hidden" id="properties-shipping" name="properties[Shipping]"> 4540 4541<input type="hidden" id="properties-time" name="properties[Time]"> 4542<input type="hidden" id="properties-card" name="properties[Card]"> 4543<input type="hidden" id="properties-addons" name="properties[Addons]"> 4544 4545<input 4546type="hidden" 4547id="properties-company" 4548name="properties[Company]" 4549value="" 4550>
4551<script> 4552 4553$(document).ready(function(){ 4554 4555 var text_max_papan1=150; 4556 var msg_text_papan1=""; 4557 $('#kartu-ucapan-ucapan').keyup(function(){ 4558 var text_length_papan1=$('#kartu-ucapan-ucapan').val().length; 4559 var msg_text_papan1=$('#kartu-ucapan-ucapan').val(); 4560 }); 4561 4562 var notes_papan1 = [ 4563 4564 [0,"Happy Wedding (nama & nama)."],[1,"Congratulations lovebirds (nama & nama)."],[2,"Selamat berbahagia (nama & nama)."],[3,"Selamat menempuh hidup baru (nama & nama)."] 4565 4566 ]; 4567 $('#show_note_papan1').click(function(event){ 4568 event.preventDefault(); 4569 var idx_papan1=parseInt($('#note_id_papan1').val()); 4570 if(isNaN(idx_papan1)){ 4571 idx_papan1=0; 4572 }else{ 4573 idx_papan1++; 4574 idx_papan1=idx_papan1%notes_papan1.length; 4575 } 4576 var note_papan1=notes_papan1[idx_papan1][1]; 4577 $('#note_id_papan1').val(idx_papan1); 4578 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan1); 4579 $('#msgDelivery').val(note_papan1); 4580 4581 var text_length_papan1=$('#kartu-ucapan-papan').val().length; 4582 var idx_2_papan1=parseInt($('#note_btn_id_papan1').val()); 4583 if(isNaN(idx_2_papan1)){ 4584 idx_2_papan1=0; 4585 }else{ 4586 idx_2_papan1++; 4587 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4588 } 4589 $('#note_btn_id_papan1').val(idx_2_papan1); 4590 //var note_btn=note_btn_text[idx_2][1]; 4591 //$('#note_btn').text(note_btn); 4592 }); 4593 4594 var text_max_papan2=150; 4595 var msg_text_papan2=""; 4596 $('#kartu-ucapan-ucapan').keyup(function(){ 4597 var text_length_papan2=$('#kartu-ucapan-ucapan').val().length; 4598 var msg_text_papan2=$('#kartu-ucapan-ucapan').val(); 4599 }); 4600 4601 var notes_papan2 = [ 4602 4603 [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)."] 4604 4605 ]; 4606 $('#show_note_papan2').click(function(event){ 4607 event.preventDefault(); 4608 var idx_papan2=parseInt($('#note_id_papan2').val()); 4609 if(isNaN(idx_papan2)){ 4610 idx_papan2=0; 4611 }else{ 4612 idx_papan2++; 4613 idx_papan2=idx_papan2%notes_papan2.length; 4614 } 4615 var note_papan2=notes_papan2[idx_papan2][1]; 4616 $('#note_id_papan2').val(idx_papan2); 4617 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan2); 4618 $('#msgDelivery').val(note_papan2); 4619 var text_length_papan2=$('#kartu-ucapan-papan').val().length; 4620 var idx_2_papan2=parseInt($('#note_btn_id_papan2').val()); 4621 if(isNaN(idx_2_papan2)){ 4622 idx_2_papan2=0; 4623 }else{ 4624 idx_2_papan2++; 4625 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4626 } 4627 $('#note_btn_id_papan2').val(idx_2_papan2); 4628 //var note_btn=note_btn_text[idx_2][1]; 4629 //$('#note_btn').text(note_btn); 4630 }); 4631 4632 var text_max_papan3=150; 4633 var msg_text_papan3=""; 4634 $('#kartu-ucapan-ucapan').keyup(function(){ 4635 var text_length_papan3=$('#kartu-ucapan-ucapan').val().length; 4636 var msg_text_papan3=$('#kartu-ucapan-ucapan').val(); 4637 }); 4638 4639 var notes_papan3 = [ 4640 4641 [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)."] 4642 4643 ]; 4644 $('#show_note_papan3').click(function(event){ 4645 event.preventDefault(); 4646 var idx_papan3=parseInt($('#note_id_papan3').val()); 4647 if(isNaN(idx_papan3)){ 4648 idx_papan3=0; 4649 }else{ 4650 idx_papan3++; 4651 idx_papan3=idx_papan3%notes_papan3.length; 4652 } 4653 var note_papan3=notes_papan3[idx_papan3][1]; 4654 $('#note_id_papan3').val(idx_papan3); 4655 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan3); 4656 $('#msgDelivery').val(note_papan3); 4657 var text_length_papan3=$('#kartu-ucapan-papan').val().length; 4658 var idx_2_papan3=parseInt($('#note_btn_id_papan3').val()); 4659 if(isNaN(idx_2_papan3)){ 4660 idx_2_papan3=0; 4661 }else{ 4662 idx_2_papan3++; 4663 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4664 } 4665 $('#note_btn_id_papan3').val(idx_2_papan3); 4666 //var note_btn=note_btn_text[idx_2][1]; 4667 //$('#note_btn').text(note_btn); 4668 }); 4669 4670 var text_max_papan4=150; 4671 var msg_text_papan4=""; 4672 $('#kartu-ucapan-ucapan').keyup(function(){ 4673 var text_length_papan4=$('#kartu-ucapan-ucapan').val().length; 4674 var msg_text_papan4=$('#kartu-ucapan-ucapan').val(); 4675 }); 4676 4677 $('#show_note_papan4').click(function(event){ 4678 var notes_papan4 = [ 4679 [0,"Hereâs to youâsteadier, stronger and better every day."], 4680 [1,"Warmest wishes for a speedy recovery!"], 4681 [2,"Dengan ucapan terhangat, semoga lekas membaik dan semakin pulih setiap harinya ya."], 4682 [3,"Semoga lekas sembuh untuk kembali beraktivitas dan berkarya."] 4683 ]; 4684 event.preventDefault(); 4685 var idx_papan4=parseInt($('#note_id_papan4').val()); 4686 console.log(idx_papan4, 'idx_papan4') 4687 if(isNaN(idx_papan4)){ 4688 idx_papan4=0; 4689 }else{ 4690 idx_papan4++; 4691 idx_papan4=idx_papan4%notes_papan4.length; 4692 } 4693 var note_papan4=notes_papan4[idx_papan4][1]; 4694 $('#note_id_papan4').val(idx_papan4);
4695 $('#kartu-ucapan-papan, #properties-kartu-ucapan, #properties-kartu-pesan').val(note_papan4); 4696 console.log(note_papan4, 'note_papan4') 4697 var text_length_papan4=$('#kartu-ucapan-papan').val().length; 4698 var idx_2_papan4=parseInt($('#note_btn_id_papan4').val()); 4699 if(isNaN(idx_2_papan4)){ 4700 idx_2_papan4=0; 4701 }else{ 4702 idx_2_papan4++; 4703 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4704 } 4705 $('#note_btn_id_papan4').val(idx_2_papan4); 4706 }); 4707 4708 /* 4709 $("#jenisPapan").change(function(){ 4710 $( "select option:selected").each(function(){ 4711 if($(this).attr("value")=="Happy Wedding"){ 4712 $("#suggest-messages a").hide(); 4713 $("#show_note_papan1").show(); 4714 $("#kartu-ucapan-papan").val(""); 4715 } 4716 if($(this).attr("value")=="Congratulations"){ 4717 $("#suggest-messages a").hide(); 4718 $("#show_note_papan2").show(); 4719 $("#kartu-ucapan-papan").val(""); 4720 } 4721 if($(this).attr("value")=="Duka Cita"){ 4722 $("#suggest-messages a").hide(); 4723 $("#show_note_papan3").show(); 4724 $("#kartu-ucapan-papan").val(""); 4725 } 4726 }); 4727 }).change(); 4728 */ 4729 4730 4731 4732 4733 4734 $(".variant-metafield").each(function(){ 4735 const t = $(this) 4736 const id = t.attr("id") 4737 const target = $(`[data-select=${id}]`) 4738 t.on('select2:selecting', function(e) { 4739 const data = e.params.args.data 4740 target.val(data.text) 4741 }); 4742 }) 4743}) 4744</script>
4744 4745 4746<div id="popupCart"> 4747<div class="container"> 4748 <div class="wrapperPopupCart"> 4749 <div class="headerPopupCart"> 4750 <div class="d-flex pl-5 pr-5 p-4"> 4751 <svg xmlns="icon.png" width="16" height="12" viewBox="0 0 16 12" fill="none"> 4752 <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"/> 4753 </svg> 4754 <span>item added to your cart</span> 4755 </div> 4756 <a class="close-purchase-popup"> 4757<svg xmlns="icon.png" width="18" height="18" viewBox="0 0 18 18" fill="none"> 4758 <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"/> 4759</svg> 4760</a> 4761 4762 </div> 4763 <div class="contentPopupCart"> 4764 <div class="pl-5 pr-5 p-4"> 4765 <div class="itemContent row m-0 justify-content-between"> 4766 <div class="col-2 align-self-center"> 4767 4768 <img 4769 class="d-block" 4770 width="80" 4771 src="//outerbloom.com/cdn/shop/files/Blossom-Shine-WM_80x.jpg?v=1695788426" 4772 > 4773 </div> 4774 <div class="col-10 align-self-center"> 4775 <div class="row pl-3"> 4776 <div class="col-12 col-lg-7"> 4777 <span class="titleCartPopup text-uppercase">IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit</span> 4778 </div> 4779 <div class="d-flex justify-content-end col-12 col-lg-5"> 4780 <span class="deleteCartPopup hide">Delete</span> 4781 <span class="lineCartPrice align-self-center">Rp 5.000</span> 4782 </div> 4783 </div> 4784 </div> 4785 </div> 4786 <div class="itemProperties"> 4787 4788 <div class="propDeliver"> 4789 <h4>delivery option detail</h4> 4790 <p> 4791 <span>delivery city</span> 4792 <span class="propDeliveryCity">jakarta</span> 4793 </p> 4794 <p> 4795 <span>delivery date</span> 4796 <span class="propDeliveryDate">24/03/2025</span> 4797 </p> 4798 <p> 4799 <span>delivery time</span> 4800 <span class="propDeliveryTime">Afternoon | 13:00 - 18:00</span> 4801 </p> 4802 </div> 4803 <div class="propAddress"> 4804 <h4>delivery option detail</h4> 4805 <p> 4806 <span>RECIPIENT NAME</span> 4807 <span class="propDeliveryName">jane doe</span> 4808 </p> 4809 <p> 4810 <span>delivery address</span> 4811 <span class="propDeliveryAddress" 4812 >Jl. Gatot Subroto No. 25, RT.2/RW.4, Kuningan Barat, Kecamatan Mampang Prapatan, Kota Jakarta 4813 Selatan, Daerah Khusus Ibukota Jakarta 12710, Indonesia</span 4814 > 4815 </p> 4816 <p> 4817 <span>recipient phone number</span> 4818 <span class="propDeliveryPhone">(+62) 812-3456-7890</span> 4819 </p> 4820 <p> 4821 <span>PROVINCE</span> 4822 <span class="propDeliveryProv">Jakarta</span> 4823 </p> 4824 <p> 4825 <span>postal code</span> 4826 <span class="propDeliveryZip">12710</span> 4827 </p> 4828 4829 4830 </div> 4831 4832 </div> 4833 <div class="itemAddonCart"> 4834 <div class="toggleAddonCart d-flex justify-content-between"> 4835 <h4>add-ons (0)</h4> 4836 <svg xmlns="icon.png" width="5" height="9" viewBox="0 0 5 9" fill="none"> 4837 <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"/> 4838 </svg> 4839 </div> 4840 <div class="wrapperItemAddonCart"></div> 4841 </div> 4842 4843 </div> 4844 </div>
4845 <div class="footerPopupCart"> 4846 <div class="row m-0 pl-5 pr-5 p-4"> 4847 <a class="btn btnViewCart w-100 text-uppercase text-center" href="/cart">View Cart</a> 4848 <a class="btn btnViewCheckout w-100 text-uppercase text-center" href="/checkout"><span>Checkout</span></a> 4849 <a class="btnContinueShopping w-100 text-center" href="/">Continue shopping</a> 4850 </div> 4851 </div> 4852 </div> 4853</div> 4854</div> 4855 4856
4857<script> 4858const shareButton = document.getElementById('shareButton'); 4859 4860shareButton.addEventListener('click', () => { 4861 if (navigator.share) { 4862 navigator.share({ 4863 title: "IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit", 4864 url: "/products/blossom-shine", 4865 text: 'Check out this page!' 4866 }) 4867 .then(() => console.log('Successful share')) 4868 .catch((error) => console.log('Error sharing', error)); 4869 } else { 4870 alert('Web Share API is not supported in this browser.'); 4871 } 4872}); 4873 4874// Inventory validation function 4875function checkInventoryStatus() { 4876 const productSelect = document.getElementById('productSelect'); 4877 const purchaseButton = document.querySelector('#personalizeBtn button'); 4878 4879 if (!productSelect || !purchaseButton) return; 4880 4881 const selectedVariantId = productSelect.value; 4882 4883 // Get variant data from Shopify 4884 fetch(`/products/blossom-shine.js`) 4885 .then(response => response.json()) 4886 .then(product => { 4887 const selectedVariant = product.variants.find(variant => variant.id == selectedVariantId); 4888 4889 if (selectedVariant) { 4890 const isOutOfStock = selectedVariant.inventory_quantity <= 0 && 4891 selectedVariant.inventory_management === 'shopify' && 4892 selectedVariant.inventory_policy !== 'continue'; 4893 4894 if (isOutOfStock) { 4895 purchaseButton.disabled = true; 4896 purchaseButton.textContent = 'Out of Stock'; 4897 purchaseButton.setAttribute('data-out-of-stock', 'true'); 4898 purchaseButton.style.backgroundColor = '#cccccc'; 4899 purchaseButton.style.cursor = 'not-allowed'; 4900 } else { 4901 // Check if button was disabled due to other conditions 4902 4903 4904 4905 4906 4907 4908 4909 4910 const isOtherDisabled = false || true || false; 4911 4912 if (!isOtherDisabled) { 4913 purchaseButton.disabled = false; 4914 purchaseButton.textContent = 'customize your flower board'; 4915 purchaseButton.removeAttribute('data-out-of-stock'); 4916 purchaseButton.style.backgroundColor = ''; 4917 purchaseButton.style.cursor = ''; 4918 } 4919 } 4920 } 4921 }) 4922 .catch(error => { 4923 console.error('Error checking inventory:', error); 4924 }); 4925} 4926 4927// Check inventory on page load 4928document.addEventListener('DOMContentLoaded', function() { 4929 checkInventoryStatus();
4930 4931 // Listen for variant changes 4932 const productSelect = document.getElementById('productSelect'); 4933 if (productSelect) { 4934 productSelect.addEventListener('change', checkInventoryStatus); 4935 } 4936}); 4937 4938// Prevent form submission if out of stock 4939document.addEventListener('click', function(e) { 4940 if (e.target.matches('button[data-out-of-stock="true"]')) { 4941 e.preventDefault(); 4942 e.stopPropagation(); 4943 alert('This product is currently out of stock and cannot be purchased.'); 4944 return false; 4945 } 4946}); 4947</script>
4947 4948 4949 4950 4951</div> 4952 4953 </div> 4954 </div> 4955 </div> 4956 </div> 4957 <div id="product-bottom"> 4958 4959 <div class="container"> 4960 4961 4962 4963 4964 4965 <div class="short-desc-mobile d-block d-lg-none mb-3"> 4966 <div class="short-desc"> 4967 <ul> 4968<li><strong>Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!</strong></li> 4969 </div> 4970 <label class="more-mobile">Show More â</label> 4971 </div> 4972 4973<style> 4974.animated-title { 4975 text-align: center; 4976 font-weight: bold; 4977 color: #079c02; 4978 font-size: 28px; 4979 position: relative; 4980 animation: glow 2s infinite alternate, moveUpDown 3s infinite; 4981} 4982 4983/* Efek glow / bercahaya hijau */ 4984@keyframes glow { 4985 0% { text-shadow: 0 0 5px #079c02; color: #079c02; } 4986 50% { text-shadow: 0 0 20px #00ff55; color: #12d12b; } 4987 100% { text-shadow: 0 0 10px #1bff00; color: #079c02; } 4988} 4989 4990/* Efek gerakan naik turun */ 4991@keyframes moveUpDown { 4992 0% { transform: translateY(0px); } 4993 50% { transform: translateY(-5px); } 4994 100% { transform: translateY(0px); } 4995} 4996</style> 4997
4998<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/shopify-cartjs/1.1.0/cart.min.js"></script>
vendor: 2 bytes, line 4998
4998
4999<script> 5000CartJS.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}); 5001 5002const productType = $("[data-product-type]").data("product-type") 5003const productDate = Date.parse(new Date()) 5004 5005const shop = 'outerbloom1.myshopify.com' 5006const host = 'https://app.asmaraku.com' 5007// const host = 'http://localhost:5001' 5008 5009const gsheet = "https://script.google.com/macros/s/AKfycbyqa6mPD6lVjU6hiHr12J8URZ2aJBGyxBsGQ0QtEIDari-rBk_9vSOITjSSmUXL1NwxEg/exec" 5010 5011const qrID = "041025" + randomString(4, 'aAbCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ') 5012 5013$("#properties-time").val(new Date().getTime()) 5014 5015const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent); 5016 5017if(!isIOS) { 5018 $("#full-date").attr("type", "button") 5019} 5020 5021let dateTime = new Date(); 5022let today = dateTime.getDate(); 5023let day = dateTime.getDay(); 5024let hour = dateTime.getHours(); 5025let min = dateTime.getMinutes(); 5026let timeOfDay = hour + (min / 100); 5027 5028async function getFetch(url) { 5029 const response = await fetch(url); 5030 let status = false 5031 let result 5032 if(response.ok) { 5033 status = true 5034 result = await response.json(); 5035 } 5036 return { 5037 status, 5038 data: result 5039 } 5040} 5041 5042 5043 5044function setCookie(cname, cvalue, exMins) { 5045 var d = new Date(); 5046 d.setTime(d.getTime() + (exMins*60*1000)); 5047 var expires = "expires="+d.toUTCString(); 5048 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; 5049} 5050 5051function getCookie(cname) { 5052 let name = cname + "="; 5053 let decodedCookie = decodeURIComponent(document.cookie); 5054 let ca = decodedCookie.split(';'); 5055 for(let i = 0; i <ca.length; i++) { 5056 let c = ca[i]; 5057 while (c.charAt(0) == ' ') { 5058 c = c.substring(1); 5059 } 5060 if (c.indexOf(name) == 0) { 5061 return c.substring(name.length, c.length); 5062 } 5063 } 5064 return ""; 5065} 5066 5067async function renderDate() { 5068 let dataDate = await getFetch(`${host}/api/shipping/date?domain=${shop}&productId=8144957800663&v=${Date.now()}`); 5069 console.log(dataDate, 'renderDate') 5070 const data = dataDate?.data 5071 const date = data.date 5072 const time = data.time 5073 5074 console.log(date, 'DATE') 5075 5076 const weekday = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]; 5077 const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; 5078 const htmlDate = [] 5079 for(let i = 0;i < date.length;i++) { 5080 const full = date[i].date 5081 const d = new Date(date[i].date); 5082 const day = weekday[d.getDay()]; 5083 const dt = d.getDate(); 5084 const mt = monthly[d.getMonth()]; 5085 const yr = d.getFullYear(); 5086 const isDate = Boolean(date[i].isEnabled) 5087 const cutoffpagi = date[i].cutoff?.pagi 5088 const cutoffsiang = date[i].cutoff?.siang 5089 const cutoffMalam = date[i].cutoff?.Malam 5090 var html = ` 5091 <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'}> 5092 ${dt === today ? 5093 `Today<span>${dt < 10 ? '0' + dt : dt}</span>` : 5094 `${day}<span>${dt < 10 ? '0' + dt : dt}</span>` 5095 } 5096 </button> 5097 ` 5098 htmlDate.push(html) 5099 } 5100 const htmlTime = [] 5101 for(var i = 0;i < time.length;i++) { 5102 const timeText = time[i].text 5103 const timeTime = time[i].time 5104 const timeEnabled = time[i].isEnabled 5105 var html = ` 5106 <button class="time-single calendarbutton2 btn steps-btn" data-time="${timeText}" ${timeEnabled ? '' : 'disabled'}>${timeText}<br/>${timeTime}</button> 5107 ` 5108 htmlTime.push(html) 5109 } 5110 const deliveryDate = document.getElementById("deliveryDate"); 5111 if(deliveryDate) { 5112 deliveryDate.insertAdjacentHTML("afterbegin", htmlDate.join('')) 5113 $("#deliveryTime").html(htmlTime) 5114 if(productType !== '') { 5115 console.log("clarity event " + productType + ' calendaring') 5116 window.clarity("event", `${productType} calendaringSchedule`) 5117 // window.clarity("set", productType, `calendaringSchedule - ${productDate}`) 5118 } 5119 } 5120} 5121 5122async function getProvince(city) { 5123 let { data: { province } } = await getFetch(`${host}/api/shipping/address/province?city=${city}`); 5124 console.log(province, 'province') 5125 $("#province").val(province) 5126} 5127 5128async function renderAddress() { 5129 let current 5130 if(getCookie("location_delivery")){ 5131 current = getCookie("location_delivery").charAt(0).toUpperCase() + getCookie("location_delivery").slice(1) 5132 } 5133 let address = await getFetch(`${host}/api/shipping/address?domain=${shop}&productId=8144957800663`);
5134 console.log(address) 5135 const data = address?.data?.city 5136 const htmlAddress = [] 5137 const grouping = [] 5138 for(let i = 0;i < data?.length;i++) { 5139 if(data[i]){ 5140 if(data[i]?.group) { 5141 grouping.push(data[i].group) 5142 } 5143 const price = rupiah.format(data[i]?.rate) 5144 let promo = '(Promo Free Delivery)' 5145 if(data[i]?.name === 'Jakarta - PickUp ASHTA'){ 5146 promo = '(at SCBD, Ashta)' 5147 } else if(data[i]?.name === 'Jakarta - PickUp ITC'){ 5148 promo = '(at Kuningan, ITC Kuningan)' 5149 } else if(data[i]?.name === 'BSD - PickUp'){ 5150 promo = '(at Goldfinch Gading Serpong)' 5151 } else if(data[i]?.name === 'Kota Lainnya'){ 5152 promo = '' 5153 } 5154 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>`) 5155 } 5156 } 5157 5158 const deliveryCity = document.getElementById("cities");
5159 if(deliveryCity) { 5160 deliveryCity.insertAdjacentHTML("beforeend", htmlAddress.join('')) 5161 if(!isIOS) { 5162 $(deliveryCity).select2(); 5163 } 5164 } 5165} 5166 5167async function renderZip(v, v2, v3) { 5168 const deliveryZip = document.getElementById("zip"); 5169 if(v === '') { 5170 return 5171 } 5172 let dataZip = await getFetch(`${host}/api/shipping/address/zip?city=${v}&city2=${v2}&city3=${v3}`); 5173 let zip = dataZip?.data?.zip 5174 console.log(zip) 5175 let htmlZip = [] 5176 for(let i = 0; i < zip?.length;i++) { 5177 htmlZip.push(`<option value="${zip[i]?.postalCode} - ${zip[i]?.subdistrict}">${zip[i]?.postalCode} - ${zip[i]?.subdistrict} - ${zip[i]?.city}</option>`) 5178 } 5179 deliveryZip.insertAdjacentHTML("beforeend", htmlZip.join('')) 5180} 5181 5182renderDate() 5183renderAddress() 5184 5185let rupiah = new Intl.NumberFormat('id-ID', { 5186 style: 'currency', 5187 currency: 'IDR', 5188 maximumFractionDigits: 0, 5189 minimumFractionDigits: 0 5190}); 5191 5192async function insertCard(data) { 5193 const response = await fetch(`${host}/api/card/new`, { 5194 method: "POST", 5195 headers: { 5196 'Content-Type': 'application/json', 5197 }, 5198 body: data 5199 }) 5200 const result = await response.json() 5201 let rowIndex = result?.data?.tableRange.split("Outerbloom!A1:J")[1] 5202 $("#greetingCard").attr("data-index", rowIndex) 5203 return result 5204} 5205 5206async function updateCard(data){ 5207 const rowIndex = $("#greetingCard").data("index") 5208 const response = await fetch(`${host}/api/card/update?rowIndex=${rowIndex}`, { 5209 method: "PUT", 5210 headers: { 5211 'Content-Type': 'application/json', 5212 }, 5213 body: data 5214 }) 5215 return response 5216} 5217 5218function bytesToSize(bytes) { 5219 var sizes = ['b', 'kb', 'mb', 'gb', 'tb', 'p']; 5220 for (var i = 0; i < sizes.length; i++) { 5221 if (bytes <= 1024) { 5222 return bytes + ' ' + sizes[i]; 5223 } else { 5224 bytes = parseFloat(bytes / 1024).toFixed(2) 5225 } 5226 } 5227 return bytes + ' P'; 5228} 5229 5230async function uploadMedia(uri, type) { 5231 nameq = $("#properties-nama-penerima").val() 5232 dear = $("#properties-kartu-nama-penerima").val() 5233 card = $("[data-properties=ucapan]").val() 5234 sender = $("#properties-kartu-nama-pengirim").val() 5235 photo = $("#properties-photo").val() 5236 video = $("#properties-video").val() 5237 status = "Product" 5238 5239 const name = qrID 5240 let formData = new FormData(); 5241 formData.append("file", uri); 5242 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 5243 method: "POST", 5244 body: formData 5245 }) 5246 const result = await response.json(); 5247 if(result) { 5248 const url = result.url 5249 if(type === 'image/jpeg') { 5250 $("#properties-photo").val(url) 5251 $(".preview-image").show() 5252 $(".remove-image").show() 5253 photo = url 5254 } else { 5255 $("#properties-video").val(url) 5256 $("#label-input-video span").text("Change File") 5257 $(".case-qrcode-preview p").text("Scan here for a secret message") 5258 $(".remove-media").show() 5259 $("#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>`) 5260 $("[for=input-video]").hide() 5261 video = url 5262 } 5263 $(".case-video-preview").show() 5264 $(".steps-card-preview").removeClass("loading") 5265 // updateCard(nameq, dear, card, sender, photo, video, status) 5266 5267 $(".nextBtn").attr("disabled", false) 5268 } 5269} 5270 5271function randomString(length, chars) { 5272 var result = ''; 5273 for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))]; 5274 return result; 5275} 5276 5277function getNoteCity(fulldate) { 5278 const h_1 = new Date(new Date().setDate(new Date().getDate() + 1)) 5279 const weekday = ["Min","Sen","Sel","Rab","Kam","Jum","Sab"]; 5280 const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; 5281 const d = new Date(h_1); 5282 const day = weekday[d.getDay()]; 5283 const dt = d.getDate(); 5284 const mt = monthly[d.getMonth()]; 5285 const yr = d.getFullYear(); 5286 const p = $("#cities").parent(".form-group") 5287} 5288 5289function disabledSameDay() { 5290 let btnFirst = $("#deliveryDate").find("button:first-child") 5291 let getDay = new Date().getDay(); 5292 5293 5294 5295 if(getDay == 1 || getDay == 2 || getDay == 3 || getDay == 4 || getDay == 5){ 5296 if(hour >= 14.00){ 5297 btnFirst.attr("disabled", true) 5298 } 5299 } else if(getDay == 6){ 5300 if(hour >= 16.00){ 5301 btnFirst.attr("disabled", true) 5302 } 5303 } else if(getDay == 0){ 5304 if(hour >= 16.00){ 5305 btnFirst.attr("disabled", true) 5306 } 5307 } 5308 5309 5310} 5311 5312function disabledays(date) { 5313 let ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate(); 5314 //if u have to disable a list of day 5315 let removeDays 5316 5317 5318 5319 removeDays = ["2025-2-13", "2025-2-14"]; 5320 5321 if ($.inArray(ymd, removeDays) >= 0) { 5322 return [false]; 5323 } else { 5324 let day = date.getDay(); 5325 if(day == 0 && date.getDate() == 13 && date.getMonth() == 1){ 5326 return [(day == 0), '']; 5327 } 5328 5329 if(day == 0){ 5330 return [(day == 0), '']; 5331 } 5332 5333 5334 return [(day != 0), '']; 5335 } 5336} 5337 5338/* Indonesian initialisation for the jQuery UI date picker plugin. */ 5339/* Written by Deden Fathurahman ([email protected]). */ 5340( function( factory ) { 5341 if ( typeof define === "function" && define.amd ) { 5342 5343 // AMD. Register as an anonymous module. 5344 define( [ "../widgets/datepicker" ], factory ); 5345 } else { 5346 5347 // Browser globals 5348 factory( jQuery.datepicker ); 5349 } 5350}( function( datepicker ) { 5351 5352datepicker.regional.id = { 5353 closeText: "Tutup", 5354 prevText: "<mundur", 5355 nextText: "maju>", 5356 currentText: "Today", 5357 monthNames: [ "January","February","March","April","May","Juny", 5358 "July","August","September","October","November","December" ], 5359 monthNamesShort: [ "Jan","Feb","Mar","Apr","May","Jun", 5360 "Jul","Agu","Sep","Oct","Nov","Dec" ], 5361 dayNames: [ "Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu" ], 5362 dayNamesShort: [ "Sun","Mon","Tue","Wed","Thu","Fri","Sat" ], 5363 dayNamesMin: [ "Mg","Sn","Sl","Rb","Km","jm","Sb" ], 5364 weekHeader: "Mg", 5365 dateFormat: "D, dd M", 5366 firstDay: 0, 5367 isRTL: false, 5368 showMonthAfterYear: false, 5369 yearSuffix: "" }; 5370datepicker.setDefaults( datepicker.regional.id ); 5371 5372return datepicker.regional.id; 5373 5374} ) ); 5375 5376function loadPopup() { 5377 $("#backgroundPopup").fadeIn("slow"); 5378 $(".purchasePopup:not(.purchasePopupSpotify)").fadeIn("slow"); 5379 const firstSection = $(".purchasePopup:not(.purchasePopupSpotify) .sectionPurchase").first() 5380 if(firstSection.hasClass("purchasePersonalize")) { 5381 if(productType !== '') { 5382 console.log("clarity event " + productType + ' personalize') 5383 window.clarity("event", `${productType} cardPersonalization`) 5384 // window.clarity("set", productType, `cardPersonalization - ${productDate}`) 5385 } 5386 } else if (firstSection.hasClass("sectionPurchaseBoard")) { 5387 console.log("clarity event " + productType + ' personalizeBoard') 5388 window.clarity("event", `${productType} personalizeBoard`) 5389 // window.clarity("set", productType, `personalizeBoard - ${productDate}`) 5390 } 5391 firstSection.removeClass("hide") 5392 5393 // Auto-trigger addon loading when addon section becomes visible 5394 setTimeout(function() { 5395 const addonSection = $(".purchaseAddon") 5396 if(addonSection.length > 0 && !addonSection.hasClass("hide")) { 5397 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 5398 $("[data-addon=upsell-all]").trigger("click") 5399 } 5400 } 5401 }, 200) 5402} 5403 5404function disablePopup() { 5405 $("#backgroundPopup").fadeOut("slow"); 5406 $(".purchasePopup").fadeOut("slow"); 5407 $("#popupCart").fadeOut("slow"); 5408} 5409
5410 function scrollTo(parent, div, dur) { 5411 $(parent).animate({ 5412 scrollTop: $(div).offset().top 5413 }, dur); 5414 } 5415 5416function loadPopupPersonalize() { 5417 const div = "#purchaseProduct" 5418 const p = "html, body, .product-meta" 5419 $("p.error").remove() 5420 loadItemOccasion($("[data-occassion]").eq(0), "greeting-card-all") 5421 const isCity = $("#cities[required]") 5422 const isDate = $("#propDeliveryDate[required]") 5423 const isTime = $("#propDeliveryTime[required]") 5424 // loadPopup() 5425 if(isCity.val() !== '' && isDate.val() !== '' && isTime.val() !== '') { 5426 loadPopup() 5427 } 5428 if(isCity.val() == '') { 5429 isCity.parent(".row").append("<p class='error'>Choose delivery city</p>") 5430 scrollTo(p, div, 500) 5431 } 5432 if(isDate.val() == '') { 5433 isDate.parents(".row").append("<p class='error'>Choose delivery date</p>") 5434 scrollTo(p, div, 500) 5435 } 5436 if(isTime.val() == '') { 5437 isTime.parents(".row").append("<p class='error'>Choose delivery time</p>") 5438 scrollTo(p, div, 500) 5439 } 5440} 5441 5442function quantityCounter() { 5443 $(document).on("click", ".item-card.selected .q_up", function () { 5444 var C = $(this).attr("data-id"), 5445 S = 5446 parseInt( 5447 $(this) 5448 .siblings(".quantity-cart-" + C) 5449 .val() 5450 ) + 1; 5451 $(this).attr("data-quantity", S), 5452 $(this) 5453 .siblings(".quantity-cart-" + C) 5454 .val(S); 5455 }), 5456 $(document).on("click", ".item-card.selected .q_down", function () { 5457 var C = $(this).attr("data-id"), 5458 S = parseInt( 5459 $(this) 5460 .siblings(".quantity-cart-" + C) 5461 .val() 5462 ); 5463 0 < S && $(this).attr("data-quantity", S - 1), 5464 0 < S && 5465 $(this) 5466 .siblings(".quantity-cart-" + C) 5467 .val(S - 1); 5468 }); 5469} 5470 5471quantityCounter() 5472 5473const itemAddon = $(".item-card").length 5474const nofree = $(".nofree").length 5475 5476const upsell = '' 5477 5478if(nofree === itemAddon) { 5479 // $("#itemAddons").html("<p>No Items available</p>") 5480} 5481 5482$("#itemAddons .item-card").each(function(e){ 5483 $("#itemAddons").attr("data-length", e) 5484}) 5485 5486$("[data-addon]").click(function(){ 5487 5488 5489 5490 const t = $(this) 5491 5492 const data = t.data("addon") 5493 5494 $("[data-addon]").removeClass("selected") 5495 t.addClass("selected") 5496 $.get(`https://outerbloom.com/collections/${data}/products.json`, function(data, status){ 5497 const products = data.products 5498 const html = [] 5499 for(let i = 0; i < products.length; i++) { 5500 const id = products[i].id 5501 const variantId = products[i].variants[0].id 5502 const img = products[i].images[0].src 5503 let img2 = img.split('.jpg')[0] 5504 const title = products[i].title 5505 const price = products[i].variants[0].price 5506 const tags = products[i].tags 5507 const qty = products[i].variants[0].available 5508 let type_upsell = '' 5509 if(tags.includes('upsell-item-standing')) { 5510 type_upsell = 'standing' 5511 } 5512 console.log(type_upsell) 5513 if(type_upsell !== '') { 5514 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}"> 5515 5516 <div class="card-image"> 5517 <img src="${img2}_150x.jpg" alt="${title}" width="" height="" /> 5518 </div> 5519 <div class="card-meta"> 5520 <h5>${title}</h5> 5521 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 5522 <input id="card-${variantId}" type="hidden" name="" value="${variantId}"> 5523 </div> 5524 <div class="card-qty"> 5525 <a data-quantity="1" type="submit" id="q_down-${variantId}" class="btn-qty-min q_down drawer-cart" data-id="${variantId}"><svg xmlns="icon.png" width="12" height="2" viewBox="0 0 12 2" fill="none"><path d="M0 1.90869V0.908691H12V1.90869H0Z" fill="black"/></svg></a> 5526 <input maxlength="3" min="0" class="btn-qty text-center quantity-cart-${variantId}
5526" value="0" data-price=${price} name="quantity"> 5527 <a data-quantity="1" type="submit" class="btn-qty-plus q_up text-green drawer-cart" data-id="${variantId}"><svg xmlns="icon.png" width="12" height="13" viewBox="0 0 12 13" fill="none"> 5528<path d="M0 6.87023V5.94715H5.53846V0.408691H6.46154V5.94715H12V6.87023H6.46154V12.4087H5.53846V6.87023H0Z" fill="black"/> 5529</svg></a> 5530 </div> 5531 </div>` 5532 html.push(body) 5533 } 5534 } 5535 $("#itemAddons .row").html(html.length === 0 ? '<p>No Item available</p>' : html) 5536 $("#itemAddons").attr("data-length", products.length) 5537 // $('#itemAddons')[0].swiper.update(); 5538 }); 5539}) 5540 5541async function isAddon(){ 5542 let ids = [] 5543 $("#itemAddons .item-card.selected").each(function(i, e){ 5544 const id = $(this).data("id") 5545 ids.push(id) 5546 }) 5547 console.log(ids) 5548 return ids 5549} 5550 5551$("#itemAddons").delegate(".item-card > div:not(.card-qty)", "click", async function(){ 5552 const t = $(this).parent() 5553 const id = t.data("id") 5554 const btn = t.parents(".purchaseAddon").find(".next-purchase-button") 5555 t.toggleClass("selected"); 5556 //$(this).next("input").toggleAttr('name', 'id[]'); 5557 if (t.hasClass('selected')) { 5558 t.find("input").val(1) 5559 t.find("input").attr('name', 'id[]'); 5560 } else { 5561 t.find("input").val(0) 5562 t.find("input").removeAttr('name'); 5563 } 5564 $("#properties-addons").val(addons) 5565 const is = await isAddon() 5566 if(is.length === 0) { 5567 btn.text("continue without add-ons") 5568 return 5569 } 5570 if(is.includes(8835692069079)) { 5571 btn.text("personalize acrylic frame") 5572 } else { 5573 btn.text("Continue") 5574 } 5575 5576}) 5577 5578async function myAddon(data) { 5579 const c = $(".addonsPurchase .addons") 5580 let items = [] 5581 5582 const spotifyAddons = $(".spotifyAddons").find("[data-index]") 5583 // if(spotifyAddons.length > 0) { 5584 // $(spotifyAddons).each(function(i, e){ 5585 // const spotifyLink = $(this).find(".spotifyLink").val() 5586 // const spotifySong = $(this).find(".spotifySong").val() 5587 // const spotifyArtist = $(this).find(".spotifyArtist").val() 5588 // const spotifyFotoAddon = $(this).find(".resultPhotoSpotify").val() 5589 // if(spotifyLink !== '') { 5590 // spotifyAddon = `<div class="addon-item" data-id="46067682607319" data-qty="1"> 5591 // <div class="addon-itm-img"> 5592 // <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"/> 5593 // </div> 5594 // <div class="addon-itm-title"> 5595 // <span>[US] Outerbloom Acrylic Frame 4R</span> 5596 // </div> 5597 // <div class="addon-itm-line-total"> 5598 // <span>Rp 99.000</span> 5599 // </div> 5600 // </div> 5601 // <div class="propsAddonSpotify row m-0"> 5602 // <div class="col-12 col-lg-2"></div> 5603 // <div class="col-12 col-lg-10"> 5604 // <p> 5605 // <span>spotify link</span> 5606 // <span class="spotifyLinkAddon">${spotifyLink}</span> 5607 // </p> 5608 // <p> 5609 // <span>uploaded photo</span> 5610 // <span class="spotifyFotoAddon">${spotifyFotoAddon}</span> 5611 // </p> 5612 // <p> 5613 // <span>song / playlist name</span> 5614 // <span class="spotifySongAddon">${spotifySong}</span> 5615 // </p> 5616 // <p> 5617 // <span>artist name</span> 5618 // <span class="spotifyArtistAddon">${spotifyArtist}</span> 5619 // </p> 5620 // </div> 5621 // </div>` 5622 // items.push(spotifyAddon) 5623 // } 5624 // }) 5625 // } 5626 for(let i = 0; i < data.length; i++) { 5627 if(data[i].title !== '[US] Outerbloom Acrylic Frame 4R' ) { 5628 const img = data[i].image 5629 const title = data[i].title 5630 const qty = data[i].qty 5631 const price = data[i].price 5632 const total = Number(qty) * Number(price) 5633 let addons = `<div class="addon-item" data-id="${data[i].id}" data-qty="${qty}"> 5634 <div class="addon-itm-img"> 5635 <img src="${img}" alt="" width="70"/> 5636 </div> 5637 <div class="addon-itm-title">
5638 <span>${title}</span> 5639 </div> 5640 <div class="addon-itm-line-price"> 5641 <span>${rupiah.format(price)}</span> 5642 ${data[i].title == '[US] Outerbloom Acrylic Frame 4R' ? '' : `<span>x${qty}</span>`} 5643 </div> 5644 <div class="addon-itm-line-total"> 5645 <span>${rupiah.format(total)}</span> 5646 </div> 5647 </div>` 5648 items.push(addons) 5649 } 5650 } 5651 c.html(items) 5652 const parent = $(".purchaseAddon") 5653 const next = parent.next(".sectionPurchase") 5654 parent.addClass("hide") 5655 next.removeClass("hide") 5656 // if(items2.length === 0) return $("#popupCart").addClass("no-addon-cart") 5657 // $(".itemAddonCart").find("h4").text(`add-ons (${items2.length})`) 5658} 5659 5660async function listAddon() { 5661 const data = $("#itemAddons").find(".selected") 5662 let ids = [] 5663 $(data).each(function(){ 5664 const id = $(this).data("variant") 5665 const image = $(this).find(".card-image img").attr("src") 5666 const title = $(this).find(".card-meta h5").text() 5667 const qty = $(this).find(".card-qty input").val() 5668 const price = $(this).find(".card-qty input").data("price") 5669 ids.push({ 5670 id: Number(id), 5671 image, 5672 title, 5673 qty, 5674 price 5675 }) 5676 }) 5677 myAddon(ids) 5678} 5679 5680async function customSpotify(idx, length, type){ 5681 let isCard = false 5682 5683 let p = $(".purchasePopupSpotify") 5684 const preLink = $(".spotifyLinkFirst").val() 5685 $("[data-index]").hide() 5686 p.find(".headerPurchase h3").text(`personalize spotify photo print${length > 1 ? ` - ${idx}` : ''}`) 5687 p.find(".regulerAddons, .purchase-button").hide() 5688 p.find(".spotifyAddons").show() 5689 5690 const data = await trackUrl(preLink) 5691 5692 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>
5692<svg xmlns="icon.png" width="13" height="11" viewBox="0 0 13 11" fill="none"> 5693<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"/> 5694</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=icon.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>
5694<svg xmlns="icon.png" width="13" height="11" viewBox="0 0 13 11" fill="none"> 5695<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"/> 5696</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>` 5697 // console.log(html) 5698 5699 $(".spotifyAddons").append(html) 5700 5701 $(`[data-index=${idx}]`).show() 5702 5703 if (preLink !== '') { 5704 $(".btn-action .btn").attr("disabled", false) 5705 } else { 5706 $(".btn-action .btn").attr("disabled", true) 5707 } 5708 5709 return html 5710 5711} 5712 5713$(".spotifyLinkFirst").keyup(async function(){ 5714 const v = $(this).val() 5715 if(v.includes('spotify:user:spotify')) { 5716 const correct = v.split('user:spotify:')[1] 5717 console.log(correct, 'BNER') 5718 $(this).val(correct) 5719 return 5720 } 5721 if(v.includes("spotify:") || v.includes("https://open.spotify.com/")){ 5722 const data = await trackUrl(v) 5723 if(!data || !data.status) { 5724 $(this).parent().addClass("error") 5725 // $(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>`) 5726 $("#personalizeBtnSpotify .btn").attr("disabled", true) 5727 return 5728 } 5729 $(this).parent().removeClass("error") 5730 // $(this).parent().remove("txt-error") 5731 $("#personalizeBtnSpotify .btn").attr("disabled", false) 5732 } else { 5733 $("#personalizeBtnSpotify .btn").attr("disabled", true) 5734 } 5735}) 5736 5737$(".purchaseAddon").delegate(".next-addon", "click", function(){ 5738 const parent = $(this).parents(".purchaseAddon") 5739 const next = parent.next(".sectionPurchase") 5740 if(next.hasClass("purchaseAddress")) { 5741 if(productType !== '') { 5742 console.log("clarity event " + productType + ' purchaseDelivery') 5743 window.clarity("event", `${productType} purchaseDelivery`) 5744 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 5745 } 5746 } 5747 const data = $("#itemAddons").find(".selected") 5748 const length = $(".quantity-cart-46067682607319").val() 5749 const checked = data.length; 5750 if(checked > 0) { 5751 if(length > 0) { 5752 $(".purchaseAddon").addClass("purchaseAddonSpotify") 5753 customSpotify(1, length, 'addon') 5754 } else { 5755 listAddon() 5756 } 5757 } else { 5758 parent.addClass("hide") 5759 next.removeClass("hide") 5760 } 5761}) 5762 5763$("#personalizeBtnSpotify .btn").click(async function(){ 5764 const isCity = $("#cities[required]") 5765 const isDate = $("#propDeliveryDate[required]") 5766 if((isDate.length > 0 && isCity.length > 0) && (isCity.val() === '' || isDate.val() === '')) { 5767 alert('Please choose Delivery City & Delivery Date') 5768 return 5769 } 5770 const data = await customSpotify(1, 1, 'product') 5771 if(data) { 5772 $("#backgroundPopup").fadeIn("slow"); 5773 $(".purchasePopupSpotify").fadeIn("slow"); 5774 5775 if(productType !== '') { 5776 console.log("clarity event " + productType + ' spotify') 5777 window.clarity("event", `${productType} spotify`) 5778 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 5779 } 5780 } 5781}) 5782 5783function formatBytes(bytes, decimals = 2) { 5784 if (!+bytes) return '0 Bytes' 5785 5786 const k = 1024 5787 const dm = decimals < 0 ? 0 : decimals 5788 const sizes = ['B', 'KB', 'MB'] 5789 5790 const i = Math.floor(Math.log(bytes) / Math.log(k)) 5791 5792 return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}` 5793} 5794 5795async function trackUrl(link){ 5796 try { 5797 let trackId = link.split('/').pop().split('?')[0]; 5798 let type = '' 5799 if(link.includes("spotify:")) { 5800 const uri = link.split('spotify:')[1] 5801 trackId = uri.split(':')[1] 5802 type = uri.split(':')[0] + 's' 5803 } else { 5804 if(link.match('track')){ 5805 type = 'tracks' 5806 } else if(link.match('playlist')) { 5807 type = 'playlists' 5808 } else if(link.match('artist')) { 5809 type = 'artists' 5810 } else if(link.match('album')) { 5811 type = 'albums' 5812 } 5813 } 5814 console.log(`${host}/api/spotify/${type}/${trackId}`) 5815 const data = await getFetch(`${host}/api/spotify/${type}/${trackId}`) 5816 console.log(data, 'DATA') 5817 const song = data?.data?.name 5818 const artist = data?.data?.artist 5819 return { 5820 song, artist, type, trackId, status: data.status 5821 } 5822 } catch(err) { 5823 console.log(err) 5824 } 5825} 5826 5827$(".spotifyAddons").delegate(".uploadPhotoSpotify", "change", async function(){
5828 const parent = $(this).parents("[data-index]") 5829 const preview = parent.find(".previewImage") 5830 const file = $(this)[0].files[0]; 5831 if (file) { 5832 const reader = new FileReader(); 5833 reader.onload = async function(e) { 5834 parent.find(".uploadResult label").hide() 5835 parent.find(".uploadedResult").remove() 5836 parent.find(".uploadResult").append(`<div class="uploadedResult d-flex" style="justify-content: space-between"> 5837 <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> 5838 <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;">
5838<svg fill="none" height="11" viewBox="0 0 10 11" width="10" xmlns="icon.png"> 5839<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 /> 5840</svg> 5841</span></div></div>`) 5842 parent.find(".frameImageUploaded svg").hide() 5843 parent.find(".frameImage").addClass("uploaded") 5844 preview.attr("src", e.target.result); 5845 preview.show(); 5846 let formData = new FormData(); 5847 formData.append("file", file); 5848 const response = await fetch(`${host}/api/upload?name=${file.name}&type=image/jpeg&r=${Date.parse(new Date)}`, { 5849 method: "POST", 5850 body: formData 5851 }) 5852 const result = await response.json(); 5853 if(result){ 5854 parent.find(".resultPhotoSpotify").val(result.url) 5855 } 5856 } 5857 5858 reader.readAsDataURL(file); 5859 } else { 5860 preview.hide(); 5861 } 5862}); 5863 5864$(".spotifyAddons").delegate(".uploadResult", "click", function(){ 5865 $(this).next("input[type=file]").trigger("click") 5866}) 5867 5868$(".spotifyAddons").delegate(".changeUpload", "click", function(){ 5869 $(this).parents("input[type=file]").trigger("click") 5870}) 5871 5872$(".spotifyAddons").delegate(".removeUpload", "click", function(){ 5873 const parent = $(this).parents("[data-index]") 5874 parent.find(".uploadPhotoSpotify").val("") 5875 parent.find(".uploadResult label").show() 5876 parent.find(".uploadedResult").remove() 5877 parent.find(".frameImageUploaded svg").show() 5878 parent.find(".previewImage").hide() 5879 parent.find(".frameImage").removeClass("uploaded") 5880}) 5881 5882$(".spotifyAddons").delegate("label.checkbox", "click", function(){ 5883 const parent = $(this).parents("[data-index]") 5884 parent.toggleClass("checked") 5885}) 5886 5887$(".spotifyAddons").delegate(".spotifyLink", "change", async function(){ 5888 const parent = $(this).parents("[data-index]") 5889 const link = $(this).val() 5890 const data = await trackUrl(link) 5891 5892 console.log(data) 5893 5894 if(data.song) { 5895 parent.find(".spotifySong").val(data.song) 5896 parent.find(".spotifyData").find("h3").text(data.song) 5897 } 5898 if(data.artist) { 5899 parent.find(".spotifyArtist").val(data.artist) 5900 parent.find(".spotifyData").find("p").text(data.artist) 5901 } 5902 parent.find(".spotifyCode img").attr("src", `https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data.type.slice(0, -1)}:${data.trackId}`) 5903 // https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:track:1er51HCEBhIAtoEemKuC3M 5904 if (data.status === true) { 5905 parent.find(".btn-action .btn").attr("disabled", false) 5906 } else { 5907 parent.find(".btn-action .btn").attr("disabled", true) 5908 } 5909}) 5910
5911$(".spotifyAddons").delegate(".spotifySong", "keyup", async function(){ 5912 const parent = $(this).parents("[data-index]") 5913 const v = $(this).val() 5914 parent.find(".spotifyData h3").text(v) 5915}) 5916 5917$(".spotifyAddons").delegate(".spotifyArtist", "keyup", async function(){ 5918 const parent = $(this).parents("[data-index]") 5919 const v = $(this).val() 5920 parent.find(".spotifyData p").text(v) 5921}) 5922 5923$(".spotifyAddons").delegate(".btn-action .btn:not(.no-addon)", "click", async function(){ 5924 const parent = $(this).parents("[data-index]") 5925 const length = parent.data("length") 5926 const index = parent.data("index") 5927 const indexNext = Number(index) + 1 5928 customSpotify(indexNext, length, 'addon') 5929}) 5930 5931 5932$(".spotifyAddons").delegate(".btn-action .btn.finished", "click", async function(){ 5933 const parent = $(this).parents(".purchaseAddon") 5934 const next = parent.next(".sectionPurchase") 5935 parent.addClass("hide") 5936 next.removeClass("hide") 5937 next.find(".purchase-button").show() 5938 listAddon() 5939}) 5940 5941$(".spotifyAddons").delegate(".back-spotify", "click", async function(){ 5942 const t = $(this).parents("[data-index]") 5943 const parent = $(this).parents(".sectionPurchase") 5944 const current = t.data("index") 5945 const prevCurrent = Number(current) - 1 5946 if(current == 1) { 5947 parent.removeClass("purchaseAddonSpotify") 5948 parent.find(".purchase-button").show() 5949 parent.find(".headerPurchase h3").text("Make It More Special with Add-Ons!") 5950 $(".spotifyAddons").empty() 5951 $(".regulerAddons").show() 5952 return 5953 } 5954 t.hide() 5955 t.prev("[data-index]").show() 5956 t.remove() 5957 parent.find(".headerPurchase h3").text(`personalize spotify photo print - ${prevCurrent}`) 5958}) 5959 5960$("#personalizeBtn .btn").click(async function() { 5961 loadPopupPersonalize() 5962}); 5963 5964$(".sectionPurchaseSpotify").delegate(".btn[data-type=card]", "click", function(){ 5965 $(".sectionPurchaseSpotify").hide() 5966 loadPopupPersonalize() 5967}) 5968 5969$(".close-purchase-popup").click(function() { 5970 disablePopup(); 5971}); 5972$("#backgroundPopup").click(function() { 5973 // disablePopup(); 5974}); 5975 5976$("#popupCart .close-purchase-popup").click(function() { 5977 location.reload() 5978}); 5979 5980$('#popupCart').on('hide.bs.modal', function (e) { 5981 location.reload() 5982}) 5983 5984$(".next-card").click(function(){ 5985 const parent = $(this).parents(".sectionPurchase") 5986 const next = parent.next(".sectionPurchase") 5987 parent.addClass("hide") 5988 next.removeClass("hide") 5989}) 5990 5991$(".back-purchase-button").click(function(){ 5992 const parent = $(this).parents(".sectionPurchase") 5993 const prev = parent.prev(".sectionPurchase") 5994 parent.addClass("hide") 5995 prev.removeClass("hide") 5996}) 5997 5998$(document).keypress(function(e) { 5999 if (e.keyCode == 27 && popupStatus == 1) { 6000 disablePopup(); 6001 } 6002}); 6003 6004const parentImg = $(".case-img-preview") 6005const parentVid = $(".case-video-preview") 6006 6007function readURL(input) { 6008 if (input.files && input.files[0]) { 6009 let reader = new FileReader(); 6010 6011 let type = 'image/jpeg' 6012 const size = input.files[0].size 6013 if(input.files[0].type.match('video/')){ 6014 type = 'video/mp4' 6015 if(size > 15728640) { 6016 alert('File size exceeds maximum limit 15 MB') 6017 return 6018 } 6019 } else { 6020 if(size > 5242880) { 6021 alert('File size exceeds maximum limit 5 MB') 6022 return 6023 } 6024 } 6025 6026 reader.onload = function (e) { 6027 $(".nextBtn").attr("disabled", true) 6028 if(type === 'image/jpeg') { 6029 6030 $('.placeholder-image').hide(); 6031 $('.preview-image').show() 6032 $('.preview-image').attr('src', e.target.result); 6033 6034 } else { 6035 // parentVid.find(".ajax-loader").show(); 6036 $(".steps-card-preview").addClass("loading") 6037 } 6038 } 6039 6040 6041 6042 reader.readAsDataURL(input.files[0]); 6043 } 6044} 6045 6046async function readURLPapan(input) { 6047 if (input.files && input.files[0]) { 6048 let reader = new FileReader(); 6049 6050 reader.onload = function (e) { 6051 $('.btn-upload-papan').siblings('label').hide(); 6052 $('.btn-upload-papan img').attr('src', e.target.result); 6053 $('.btn-upload-papan img').show(); 6054 $('.svgLogoPapan').hide(); 6055 } 6056 6057 const type = 'image/jpeg' 6058 const name = `logo-8144957800663-${Date.parse(new Date())}` 6059 6060 let formData = new FormData(); 6061 formData.append("file", input.files[0]); 6062 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 6063 method: "POST", 6064 body: formData 6065 }) 6066 const result = await response.json(); 6067 if(result) { 6068 const url = result.url 6069 $("[data-properties=papan-logo]").val(url) 6070 } 6071
6072 reader.readAsDataURL(input.files[0]); 6073 } 6074} 6075 6076async function readURLAddress(input) { 6077 console.log(input, 'readURLAddress') 6078 if (input.files && input.files[0]) { 6079 let reader = new FileReader(); 6080 6081 reader.onload = function (e) { 6082 $('.photo-address').attr('src', e.target.result); 6083 $('.photo-address').show(); 6084 } 6085 6086 const type = 'image/jpeg' 6087 const name = input.files[0].name?.split('.')[0] 6088 6089 let formData = new FormData(); 6090 formData.append("file", input.files[0]); 6091 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 6092 method: "POST", 6093 body: formData 6094 }) 6095 const result = await response.json(); 6096 6097 reader.readAsDataURL(input.files[0]); 6098 6099 return result 6100 } 6101} 6102 6103 6104 6105 6106async function addToCartUang() { 6107 var productAddOnId1 = 42122101162199; 6108 var productAddOnId2 = 42122101194967; 6109 var product_id = 8144957800663 6110 const data = { 6111 items: [ 6112 { 6113 quantity: $("#Quantity-" + productAddOnId1).val(), 6114 id: productAddOnId1, 6115 "properties": { "Time": $("#properties-time").val() } 6116 }, 6117 { 6118 quantity: $("#Quantity-" + productAddOnId2).val(), 6119 id: productAddOnId2, 6120 "properties": { "Time": $("#properties-time").val() } 6121 } 6122 ] 6123 } 6124 await fetch(window.Shopify.routes.root + 'cart/add.js', { 6125 method: 'POST', 6126 headers: { 6127 'Content-Type': 'application/json' 6128 }, 6129 body: JSON.stringify(data) 6130 }) 6131 .then(response => { 6132 console.error('Sukses Buket Uang:', response); 6133 $(".form-flower").submit() 6134 }) 6135 .catch((error) => { 6136 console.error('Error Buket Uang:', error); 6137 $(".form-flower").submit() 6138 }); 6139} 6140 6141async function saveCard(){ 6142 let isCard = true 6143 const kartu_penerima = $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '' 6144 const kartu_pengirim = $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '' 6145 const kartu_ucapan = $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '' 6146 const foto = $("#properties-photo").val() 6147 const video = $("#properties-video").val() 6148 const data = JSON.stringify({ 6149 "id": qrID, 6150 "penerima": $("#properties-nama-penerima").val(), 6151 "kartu_penerima": kartu_penerima, 6152 "kartu_ucapan": kartu_ucapan, 6153 "kartu_pengirim": kartu_pengirim, 6154 "foto": foto, 6155 "video": video, 6156 "productId": "8144957800663", 6157 "order_name": "", 6158 "status": "Cart" 6159 }) 6160 6161 6162} 6163 6164async function additem(items){ 6165 try { 6166 let formData = items 6167 if(items?.length) { 6168 formData = { 6169 'items': items 6170 }; 6171 } 6172 6173 const add = await fetch(window.Shopify.routes.root + 'cart/add.js', { 6174 method: 'POST', 6175 headers: { 6176 'Content-Type': 'application/json', 6177 'X-Requested-With':'xmlhttprequest' /* XMLHttpRequest is ok too, it's case insensitive */ 6178 }, 6179 body: JSON.stringify(formData) 6180 }) 6181 6182 const data = await add.json(); 6183 return data 6184 } catch(err){ 6185 console.log('Error additem', err) 6186 } 6187} 6188 6189async function addons(){ 6190 let items = [] 6191 $(".addon-item").each(function(){ 6192 const p = $(this) 6193 const props = p.next(".propsAddonSpotify") 6194 const id = $(this).data("id") 6195 const quantity = $(this).data("qty") 6196 const propId = $("#properties-time").val() 6197 let properties = {} 6198 if(id === 46067682607319) { 6199 const link = props.find(".spotifyLinkAddon").text() 6200 const photo = props.find(".spotifyFotoAddon").text() 6201 const song = props.find(".spotifySongAddon").text() 6202 const artist = props.find(".spotifyArtistAddon").text() 6203 properties = { 6204 id: propId, 6205 "Spotify Link": link !== '' ? link : '-', 6206 "Spotify Photo": photo !== '' ? photo : '-', 6207 "Spotify Song": song !== '' ? song : '-', 6208 "Spotify Artist": artist !== '' ? artist : '-', 6209 type: 'addon' 6210 } 6211 } else { 6212 properties = { 6213 "id": propId, 6214 "type": "addon" 6215 } 6216 } 6217 items.push({ 6218 id, 6219 quantity, 6220 properties 6221 }) 6222 }) 6223 return items 6224} 6225 6226async function propItems() { 6227 let props = {} 6228 $("[data-properties]").each(function(e){
6229 let elementType = this.tagName; 6230 const k = $(this).data("properties") 6231 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') { 6232 const v = elementType === 'SELECT' ? $(this).find(":selected").val() : $(this).val(); 6233 if(v !== '') { 6234 props[k] = v?.replace(/[\s\n]/g, ''); 6235 } 6236 } 6237 }) 6238 return props 6239} 6240 6241async function showPopupCart(items){ 6242 if(productType !== '') { 6243 console.log("clarity event " + productType + ' completeOrder') 6244 window.clarity("event", `${productType} completeOrder`) 6245 // window.clarity("set", productType, `completeOrder - ${productDate}`) 6246 } 6247 $("#popupCart").show() 6248 6249 $(".propDeliveryCity").text($("#cities").val()) 6250 $(".propDeliveryDate").text($("#propDeliveryDate").val()) 6251 $(".propDeliveryTime").text($("#propDeliveryTime").val()) 6252 $(".propDeliveryName").text($("[data-properties=nama-penerima]").val()) 6253 $(".propDeliveryAddress").text($("[data-properties=alamat-penerima]").val()) 6254 $(".propDeliveryPhone").text($("[data-properties=telepon-penerima]").val()) 6255 $(".propDeliveryProv").text($("#province").val()) 6256 $(".propDeliveryZip").text($("#zip").val()) 6257 6258 6259 6260 const addons = [] 6261 if(items && items.length > 0) { 6262 for(let i = 1; i < items.length; i++) { 6263 const spotifyLink = items[i].properties['Spotify Link'] 6264 const spotifyPhoto = items[i].properties['Spotify Photo'] 6265 const spotifySong = items[i].properties['Spotify Song'] 6266 const spotifyArtist = items[i].properties['Spotify Artist'] 6267 const price = items[i].price / 100 6268 const props = spotifyLink ? `<div class="propsAddonCart row m-0"> 6269 <div class="col-12 col-lg-2"></div> 6270 <div class="col-12 col-lg-10"> 6271 <p> 6272 <span>spotify link</span> 6273 <span>${spotifyLink}</span> 6274 </p> 6275 <p> 6276 <span>Upload Photo</span> 6277 <span>${spotifyPhoto}</span> 6278 </p> 6279 <p> 6280 <span>song / playlist name</span> 6281 <span>${spotifySong}</span> 6282 </p> 6283 <p> 6284 <span>artist name</span> 6285 <span>${spotifyArtist}</span> 6286 </p> 6287 </div> 6288 </div>` : ''; 6289 addons.push(`<div class="row m-0"> 6290 <div class="imgAddonCart col-2"> 6291 <img 6292 width="43" 6293 src="${items[i].image}" 6294 alt="" 6295 > 6296 </div> 6297 <div class="imgAddonTitlePrice col-10 align-self-center"> 6298 <div class="row justify-content-between m-0"> 6299 <div class="col-12 col-lg-8"> 6300 <h5>${items[i].title}</h5> 6301 </div> 6302 <div class="col-12 col-lg-4 text-lg-right"> 6303 <span>${rupiah.format(price)}</span> 6304 </div> 6305 </div> 6306 </div> 6307 </div>${props}`) 6308 } 6309 } 6310 // console.log(addons) 6311 if(addons.length === 0) { 6312 $(".itemAddonCart").hide() 6313 return 6314 } 6315 $(".toggleAddonCart h4").text(`add-ons (${items.length - 1})`) 6316 $(".wrapperItemAddonCart").html(addons) 6317} 6318 6319const money = (money) => { 6320 return new Intl.NumberFormat('id-ID', 6321 { style: 'currency', currency: 'IDR', minimumFractionDigits: 0 } 6322 ).format(money); 6323} 6324 6325async function showNoteMoney() { 6326 let qty50k = $("[data-properties='Uang 50k']").val() 6327 let qty100k = $("[data-properties='Uang 100k']").val() 6328 const total50k = Number(qty50k) * 50000 6329 const total100k = Number(qty100k) * 100000 6330 const total_all = total50k + total100k 6331 $(".prop50k").html(`<span>${qty50k} Lembar: <strong class="pl-1">${money(total50k)}</strong></span>`) 6332 $(".prop100k").html(`<span>${qty100k} Lembar: <strong class="pl-1">${money(total100k)}</strong></span>`) 6333 $(".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://dive-idnslot.pages.dev/" target="_blank" style="text-decoration: underline;
6333 color: #8d3f2d">Customer Service</a> to confirm with proof of payment.</p>`) 6334} 6335 6336async function removeImage() { 6337 const data = JSON.stringify({ 6338 "ID": $("#properties-properties-qrId").val(), 6339 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 6340 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 6341 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 6342 "Nama Penerima": $("#properties-nama-penerima").val(), 6343 "Order Number":"", 6344 "Status":"Product", 6345 "Foto": "", 6346 "Media": $("#properties-video").val(), 6347 "Image": "8144957800663" 6348 }) 6349 const remove = updateCard(data) 6350 if(remove) { 6351 $(this).hide() 6352 $("#properties-photo").val("-") 6353 $(".placeholder-image").show() 6354 $(".preview-image").attr("src", "") 6355 } 6356} 6357 6358async function removeVideo() { 6359 const data = JSON.stringify({ 6360 "ID": $("#properties-properties-qrId").val(), 6361 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 6362 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 6363 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 6364 "Nama Penerima": $("#properties-nama-penerima").val(), 6365 "Order Number":"", 6366 "Status":"Product", 6367 "Foto": $("#properties-photo").val(), 6368 "Media": "", 6369 "Image": "8144957800663" 6370 }) 6371 const remove = updateCard(data) 6372 if(remove) { 6373 $("#properties-video").val("-") 6374 $(this).find("img").hide() 6375 $(this).hide() 6376 $(this).prev("p").text("Add video to make it more special (optional)") 6377 $("#label-input-video").show() 6378 $("#label-input-video span").text("Upload Video") 6379 $(".case-video-preview p span").remove() 6380 } 6381} 6382 6383async function loadItemOccasion(t, occasion) { 6384 const name = occasion?.replace('greeting-card-', '') 6385 $("#kartu-ucapan").val("") 6386 $("[data-occassion]").removeClass("selected") 6387 $("[data-properties=ucapan]").val("") 6388 $("#save-card").attr("disabled", true) 6389 t.addClass("selected") 6390 $("#show_note").attr("data-card-occassion", name) 6391 $.get(`https://outerbloom.com/collections/${occasion}/products.json`, function(data, status){ 6392 const products = data.products 6393 const html = [] 6394 for(let i = 0; i < products.length; i++) { 6395 const id = products[i].id 6396 const variantId = products[i].variants[0].id 6397 const img = products[i].images[0].src 6398 const title = products[i].title 6399 const price = products[i].variants[0].price 6400 const qty = products[i].variants[0].inventory_quantity 6401 const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'}${i === 0 ? ' selected' : ''}" data-id=${id}> 6402 <label for="card-${variantId}"></label> 6403 <div class="card-image"> 6404 <img src="${img}" alt="${title}" width="" height="" /> 6405 </div> 6406 <div class="card-meta text-center"> 6407 <h5>${title}</h5> 6408 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 6409 <input id="card-${variantId}" type="radio" name="id" value="${variantId}" data-price="${price}"> 6410 </div> 6411 </div>` 6412 html.push(body) 6413 } 6414 const withoutCard = `<div class="item-card item-without-card"> 6415 <label for="card-0"></label> 6416 <div class="card-image"> 6417 <img src="https://cdn.shopify.com/s/files/1/1589/6833/t/129/assets/without-card.png?v=1747632283" alt="Without card" width="" height="" /> 6418 </div> 6419 <div class="card-meta text-center"> 6420 <h5>
6420Send without a greeting card</h5> 6421 <input id="card-0" type="radio" name="id" value="" data-price=""> 6422 </div> 6423 </div>` 6424 $("#itemCards .items-card").html(html.length === 0 ? '<p>No Item available</p>' : html.join("")) 6425 }); 6426} 6427 6428$(document).ready(function(){ 6429 6430 // Observer to auto-trigger addon loading when addon section becomes visible 6431 const addonObserver = new MutationObserver(function(mutations) { 6432 mutations.forEach(function(mutation) { 6433 const target = $(mutation.target) 6434 if(target.hasClass('purchaseAddon') && mutation.type === 'attributes' && mutation.attributeName === 'class') { 6435 if(!target.hasClass('hide')) { 6436 // Addon section just became visible, ensure items are loaded 6437 setTimeout(function() { 6438 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6439 console.log("Auto-triggering addon load...") 6440 $("[data-addon=upsell-all]").trigger("click") 6441 } 6442 }, 150) 6443 } 6444 } 6445 }) 6446 }) 6447 6448 // Start observing addon section 6449 const addonSection = document.querySelector('.purchaseAddon') 6450 if(addonSection) { 6451 addonObserver.observe(addonSection, { 6452 attributes: true, 6453 attributeFilter: ['class'] 6454 }) 6455 } 6456 6457 $(".purchasePopup").delegate("#addtocart-card", "click", async function(){ 6458 6459 $(this).find("span").addClass("loading") 6460 let isValid = true 6461 $(".formAddressPurchase [required]").each(function(){ 6462 const t = $(this) 6463 const input = t.val() 6464 const p = t.parent() 6465 if(input === '') { 6466 p.addClass("error") 6467 isValid = false 6468 } 6469 }) 6470 6471 if(!isValid) { 6472 $(this).find("span").removeClass("loading") 6473 return 6474 } 6475 6476 let items = [] 6477 const mainProps = { 6478 6479 "Delivery Date": $("#propDeliveryDate").val(), 6480 "Delivery Time": $("#propDeliveryTime").val() !== '' ? $("#propDeliveryTime").val() : '-' , 6481 "Kota Pengiriman": $("#cities").val(), 6482 "Nama Penerima": $("[data-properties=nama-penerima]").val() !== '' ? $("[data-properties=nama-penerima]").val() : '-' , 6483 "Alamat Penerima": $("[data-properties=alamat-penerima]").val() !== '' ? $("[data-properties=alamat-penerima]").val() : '-' , 6484 "Kodepos": $("#zip").val() !== '' ? $("#zip").val() : '-' , 6485 "Telepon Penerima": $("[data-properties=telepon-penerima").val() !== '' ? $("[data-properties=telepon-penerima").val() : '-' , 6486 6487 6488 "Papan Nama Penerima": $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '-' , 6489 "Papan Ucapan": $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '-' , 6490 "Papan Nama Pengirim": $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '-' , 6491 "Papan Logo": $("[data-properties=papan-logo]").val() !== '' ? $("[data-properties=papan-logo]").val() : '-' , 6492 "Foto Alamat": $("[data-properties=foto-alamat]").val() !== '' ? $("[data-properties=foto-alamat]").val() : '-' , 6493 6494 6495 "Province": $("#province").val() !== '' ? $("#province").val() : '-' , 6496 "Country": $("#properties-kota-pengiriman-country").val() !== '' ? $("#properties-kota-pengiriman-country").val() : '-' , 6497 "Shipping": $("#properties-shipping").val() !== '' ? $("#properties-shipping").val() : '-' , 6498 "Company": $("[data-properties=company]").val() !== '' ? $("[data-properties=company]").val() : '-' , 6499 "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 6500 "type": 'product' 6501 } 6502 const props = await propItems() 6503 properties = {...mainProps, ...props }; 6504 const id = $("#productSelect").find('option:selected').val() 6505 console.log(id, 'main ID') 6506 const mainItem = { 6507 id: Number(id), 6508 quantity: 1, 6509 properties 6510 } 6511 items.push(mainItem) 6512 const cardId = $("#itemCards").find(".selected input").val() 6513 const cardItem = { 6514 id: Number(cardId), 6515 quantity: 1, 6516 properties: { "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', type: 'card' } 6517 } 6518 console.log(cardId, 'cardId') 6519 if(cardId) { 6520 items.push(cardItem) 6521 } 6522 const addon = await addons() 6523 if(addon) { 6524 for(let i = 0;
6524 i < addon.length; i++){ 6525 items.push({ 6526 id: addon[i].id, 6527 quantity: addon[i].quantity, 6528 properties: addon[i].properties 6529 }) 6530 } 6531 } 6532 const addItems = await additem(items) 6533 console.log(addItems.items, 'add items') 6534 if(addItems) { 6535 $(this).find("span").removeClass("loading") 6536 disablePopup() 6537 showPopupCart(addItems.items) 6538 6539 localStorage.setItem("items", JSON.stringify(addItems.items)) 6540 } 6541}) 6542 6543$("#addtocart-cart .btn").click(async function(){ 6544 const id = $("#productSelect").find('option:selected').val() 6545 const mainProps = { 6546 id: $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 6547 type: 'product' 6548 } 6549 const props = await propItems() 6550 const properties = { ...mainProps, ...props }; 6551 const items = { 6552 id: Number(id), 6553 quantity: 1, 6554 properties 6555 } 6556 const addItems = await additem(items) 6557 if(addItems) { 6558 showPopupCart(addItems.items) 6559 localStorage.setItem("items", JSON.stringify(addItems)) 6560 } 6561}) 6562 6563$(".formAddressPurchase [required]").change(function(){ 6564 const t = $(this) 6565 const p = t.parent() 6566 const v = t.val() 6567 if(v !== '') { 6568 p.removeClass("error") 6569 } 6570}) 6571 6572$("#save-card").click(async function(){ 6573 const parent = $(this).parents(".sectionPurchase") 6574 const next = parent.next(".sectionPurchase") 6575 $(this).find("span").addClass("loading") 6576 const card = await saveCard() 6577 console.log(card, 'ssaveCCC') 6578 if(card?.status === 200 || card?.status === 201) { 6579 $(".scanCard").removeClass("hide") 6580 $(this).find("span").removeClass("loading") 6581 parent.addClass("hide") 6582 next.removeClass("hide") 6583 if(next.hasClass("purchaseAddon")) { 6584 $("[data-addon=upsell-all]").click() 6585 console.log("clarity event addons") 6586 window.clarity("event", `${productType} add-ons`) 6587 // Ensure addon items are loaded when entering addon popup 6588 setTimeout(function() { 6589 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6590 $("[data-addon=upsell-all]").trigger("click") 6591 } 6592 }, 100) 6593 } 6594 if(next.hasClass("purchaseAddress")) { 6595 $("#zip").select2() 6596 } 6597 } 6598}) 6599 6600$("#skip-card").click(async function(){ 6601 $("#greetingCard [data-properties]").val("") 6602 $("#properties-photo").val("") 6603 $("#properties-video").val("") 6604 const parent = $(this).parents(".sectionPurchase") 6605 const next = parent.next(".sectionPurchase") 6606 parent.addClass("hide") 6607 next.removeClass("hide") 6608 // $("#itemCards").html("") 6609 removeImage() 6610 removeVideo() 6611 if(next.hasClass("purchaseAddon")) { 6612 $("[data-addon='upsell-all']").click() 6613 console.log("clarity event addons") 6614 window.clarity("event", `${productType} add-ons`) 6615 // Ensure addon items are loaded when entering addon popup 6616 setTimeout(function() { 6617 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6618 $("[data-addon='upsell-all']").trigger("click") 6619 } 6620 }, 100) 6621 } 6622 if(next.hasClass("purchaseAddress")) { 6623 $("#zip").select2() 6624 } 6625}) 6626 6627$("#msgCard").click(async function(){ 6628 $(this).parent().addClass("loading") 6629 let occasion = $(".selected[data-occassion]").data("occassion") 6630 occasion = occasion?.replace("greeting-card-", "") 6631 const { data } = await getFetch(`${host}/api/card/template/occasion?name=${occasion}`); 6632 const d = data?.data 6633 for(let i = 0; i < d.length; i++) { 6634 const num = Math.floor(Math.random() * (d.length - 1 + 1) + 1); 6635 const greeting = d[num]?.Greeting 6636 $(".greetingCard textarea").val(greeting) 6637 $(this).parent().removeClass("loading") 6638 } 6639 $("#save-card").attr("disabled", false) 6640 }) 6641 6642$(".sectionPurchaseBoard .next-purchase-button").click(function(){ 6643 const parent = $(this).parents(".sectionPurchase") 6644 const next = parent.next(".sectionPurchase") 6645 parent.addClass("hide") 6646 next.removeClass("hide") 6647}) 6648 6649$("#editCard").click(function(){ 6650 $(".custom-card").show() 6651 $(".preview-card").hide() 6652}) 6653 6654$("#first_name, #last_name").change(function(){
6655 const v = $(this).val() 6656 const first_name = $("#first_name").val() 6657 const last_name = $("#last_name").val() !== '' ? ' ' + $("#last_name").val() : '' 6658 $("[data-properties=nama-penerima]").val(first_name+last_name) 6659}) 6660 6661$("[data-occassion]").click(function(){ 6662 const t = $(this) 6663 const p = t.parents(".sectionPurchase") 6664 // $(".greetingCard").addClass("disabled") 6665 const occasion = t.data("occassion") 6666 loadItemOccasion(t, occasion) 6667}) 6668 6669$("#itemCards").delegate(".item-card:not(.item-without-card) label", "click", function(){ 6670 const id = $(this).parent(".item-card").data("id") 6671 const t = $(this).parent(".item-card") 6672 const target = t.find("input") 6673 const v = $('.item-card input[type="radio"]:checked').val(); 6674 $("#itemCards .item-card").removeClass("selected") 6675 t.addClass("selected") 6676 $("#itemCards .item-card").find("input").attr("name", "") 6677 if(target.length > 0) { 6678 target.attr("name", "id[]") 6679 $("#properties-card").val(id) 6680 $(".greetingCard").removeClass("disabled") 6681 $("#skip-card").attr("disabled", false) 6682 } else { 6683 $("#properties-card").val("") 6684 } 6685}) 6686 6687$("#itemCards").delegate(".item-without-card label", "click", function(){ 6688 const parent = $(this).parents(".sectionPurchase") 6689 const next = parent.next(".sectionPurchase") 6690 $(".greetingCard").addClass("disabled") 6691 parent.addClass("hide") 6692 next.removeClass("hide") 6693 $("[data-addon=upsell-all]").click() 6694 $("#zip").select2() 6695}) 6696 6697$("[data-properties=ucapan]").keyup(function(){ 6698 const v = $(this).val() 6699 const p = $(this).parents(".sectionPurchase") 6700 $(".purchaseAddress").find(".greetingCard textarea").val(v) 6701 if(v.length > 3) { 6702 p.find(".next-purchase-button").attr("disabled", false) 6703 } else { 6704 p.find(".next-purchase-button").attr("disabled", true) 6705 } 6706}) 6707 6708$("[data-properties=penerima]").keyup(function(){ 6709 const v = $(this).val() 6710 $(".purchaseAddress").find("[data-properties=penerima]").val(v) 6711}) 6712 6713$("[data-properties=pengirim]").keyup(function(){ 6714 const v = $(this).val() 6715 $(".purchaseAddress").find("[data-properties=pengirim]").val(v) 6716}) 6717 6718$(document).click(function(e){ 6719 6720 if($(e.target).closest('.wrapperPopupCart').length != 0) return false; 6721 // $('#popupCart').fadeOut('slow'); 6722 // location.reload() 6723}); 6724 6725$(".toggleAddonCart").click(function(){ 6726 const p = $(this).parent(".itemAddonCart") 6727 p.toggleClass("open") 6728}) 6729 6730$(".btnViewCart").click(function(){ 6731 window.location.href = "https://outerbloom.com/cart"; 6732}) 6733 6734$(".btnViewCheckout").click(async function(){ 6735 $(this).find("span").addClass("loading") 6736 let zip = $("#zip").val() 6737 const first_name = $("#first_name").val() 6738 const last_name = $("#last_name").val() 6739 const company = $("#company").val() !== '' ? $("#company").val() : '' 6740 const address1 = $("#delivery_address").val() 6741 const address2 = zip && zip !== '' ? zip?.split(' - ')[1] : '' 6742 zip = zip && zip !== '' ? zip?.split(' - ')[0] : '' 6743 const phone = $("#recipient_number").val() 6744 const city = $("#cities").val() 6745 const province = $("#province").val() 6746 const country = 'Indonesia' 6747 const ver = Date.parse(new Date()) 6748 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}` 6749 6750 const clear = await fetch(`/cart/clear.js`, {method: 'POST'}) 6751 if(clear.status === 200) { 6752 const savedItem = window.localStorage.getItem("items"); 6753 const items = JSON.parse(savedItem) 6754 const addItems = await additem(items) 6755 console.log(addItems, 'new addItems') 6756 if(addItems) { 6757 window.location.href = `https://outerbloom.com/checkout?${params}`; 6758 } 6759 } 6760}) 6761 6762$(".btnContinueShopping").click(function(){ 6763 window.location.href = "https://outerbloom.com/"; 6764}) 6765 6766 if (isIOS) { 6767 $(".empty-state-card").click(function(){ 6768 $("#input-foto").trigger("click") 6769 }) 6770 $(".btn-upload-image").click(function(){ 6771 $("#input-foto").trigger("click") 6772 }) 6773 $("[for=input-video]").click(function(){ 6774 $("#input-video").trigger("click") 6775 }) 6776 $(".btn-upload-papan").click(function(){ 6777 $("#logoPapan").trigger("click") 6778 }) 6779 } 6780 6781 $("[data-properties]").each(function(){ 6782 const select = $(this).parents(".form-group").find("select") 6783 $(this).change(function(){ 6784 const name = $(this).data("properties") 6785 const v = $(this).val() 6786 if (name == 'telepon-penerima') { 6787 let phone = v.replace(/[^0-9]/g, '') 6788 $(this).val(phone); 6789 $("#properties-telepon-penerima").val(phone) 6790 $('.iti__search-input').val('-') 6791 } else { 6792 $("#properties-" + name).val(v) 6793 } 6794 }) 6795 select.on("change", function(){ 6796 const name = $(this).data("properties") 6797 const v = $(this).val() 6798 $("#properties-" + name).val(v) 6799 }) 6800 }) 6801 6802 $("#show_note").click(function(){ 6803 nameq = $("#properties-nama-penerima").val() 6804 dear = $("#properties-kartu-nama-penerima").val() 6805 card = $("[data-properties=ucapan]").val() 6806 sender = $("#properties-kartu-nama-pengirim").val() 6807 photo = $("#properties-photo").val() 6808 video = $("#properties-video").val() 6809 updateCard(nameq, dear, card, sender, photo, video, status) 6810 }) 6811 6812 $(".remove-image").click(function(e){
6813 e.preventDefault() 6814 $(this).find("img").show() 6815 removeImage() 6816 }) 6817 6818 $(".remove-media").click(function(e){ 6819 e.preventDefault() 6820 $(this).find("img").show() 6821 removeVideo() 6822 }) 6823 6824 6825 6826 $("[data-delivery_method]").click(function(e){ 6827 e.preventDefault() 6828 const t = $(this) 6829 const data = t.data("delivery_method") 6830 $("[data-delivery_method]").removeClass("selected") 6831 t.addClass("selected") 6832 $("#cities").val("") 6833 $("#properties-delivery-date").val("-") 6834 $("#deliveryDate button").removeClass("selected") 6835 $("#full-date").val("Full Calendar â") 6836 $("#propDeliveryDate").val("") 6837 const step3 = $("#step-3") 6838 if(data.match('PickUp')) { 6839 $(".selfpickup-point").show() 6840 step3.find("[data-finished=false]").hide() 6841 $("#panel-4").hide() 6842 step3.find("[data-finished=true]").show() 6843 $("#cities").attr("required", false) 6844 $("#form-group-city").hide() 6845 $("#row-delivery-time").hide() 6846 $("#propDeliveryTime, #properties-delivery-time, #properties-nama-penerima, #properties-alamat-penerima, #properties-kodepos, #properties-kodepos, #properties-telepon-penerima").val("-") 6847 $("#propDeliveryTime").attr("required", false) 6848 // $("#deliveryDate").find("button:first-child").addClass("stop") 6849 $(".form-selfpickup").show() 6850 $(".form-delivery").hide() 6851 $(".form-delivery").find("input, textarea, select").val("") 6852 $(".form-delivery").find("input, textarea, select").attr("required", false) 6853 $("#properties-shipping").val("0") 6854 $("#noteDeliveryDate").hide() 6855 $(".form-delivery .form-control").attr("required", false) 6856 $("#stepNav4").hide() 6857 6858 $("#deliveryDate").find("button:nth-child(1)").addClass("stop") 6859 6860 6861 6862 6863 if(timeOfDay >= 16.01){ 6864 $("#deliveryDate").find("button:nth-child(2)").addClass("stop") 6865 } 6866 } else { 6867 6868 6869 $("#deliveryDate").find("button:nth-child(1)").removeClass("stop") 6870 step3.find("[data-finished=false]").show() 6871 $("#panel-4").show() 6872 step3.find("[data-finished=true]").hide() 6873 $("#cities").attr("required", true) 6874 $(".selfpickup-point").hide() 6875 $("#form-group-city").show() 6876 $("#cities").val('').trigger('change'); 6877 $("#properties-kota-pengiriman").val("-") 6878 6879 $("#row-delivery-date, #row-delivery-time").show() 6880 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 6881 $("#deliveryDate").find("button").removeClass("stop") 6882 $(".form-selfpickup").hide() 6883 $(".form-delivery").show() 6884 $(".form-delivery").find("input, textarea, select").attr("required", true)
6885 $(".form-delivery [data-properties]").attr("readonly", false) 6886 $("#properties-kodepos").val("-") 6887 $("#properties-alamat-penerima").val("-") 6888 $(".form-delivery .form-control").attr("required", true) 6889 $(this).parents(".setup-content").attr("id", "step-1") 6890 6891 $("#stepNav4").show() 6892 } 6893 }) 6894 6895 $("[name=selfpickup]").click(function(){ 6896 const p = $(this).parents(".row-pickup") 6897 const pickupCity = $("input[name='selfpickup']:checked").val(); 6898 const pickupAddress = $("input[name='selfpickup']:checked").data("address"); 6899 const pickupZip = $("input[name='selfpickup']:checked").data("zip"); 6900 6901 $(".row-pickup").removeClass("selected") 6902 p.addClass("selected") 6903 6904 $("#properties-kota-pengiriman").val(pickupCity) 6905 $("#province").val("Jakarta") 6906 $("#properties-alamat-penerima").val(pickupAddress) 6907 $("#properties-kodepos").val(pickupZip) 6908 }) 6909 6910 $("#cities").change(function(e){ 6911 e.preventDefault() 6912 $(this).parent(".row").find("p.error").remove() 6913 $("#full-date").val("Full Calendar") 6914 $("#deliveryDate, #deliveryDateFull label ").show() 6915 $("#deliveryDateFull").removeClass("filled") 6916 $(".btnChangeDeliveryDate").addClass("hide") 6917 $("#full-date").prop('disabled', false); 6918 $("#stepNav2, #stepNav3, #stepNav4").removeClass("btn-success") 6919 $("#stepNav2, #stepNav3, #stepNav4").find("a").attr("disabled", true) 6920 const step3 = $("#step-3") 6921 $("#cityNote").remove() 6922 $("#noteDeliveryDate").hide() 6923 $("#noteDeliveryDate").empty() 6924 let v = $(this).val() 6925 let v2 = $('option:selected', this).attr('data-city'); 6926 let v3 = $('option:selected', this).attr('data-province'); 6927 let price = $('option:selected', this).attr('data-price'); 6928 $("#country").val(v) 6929 $("#properties-kota-pengiriman").val(v) 6930 $("#properties-shipping").val(price) 6931 $("#deliveryDate button, #deliveryTime button, .calendarseasonal .button").removeClass("selected") 6932 $("#properties-delivery-date, #properties-delivery-time").val("-") 6933 $("#propDeliveryDate, #propDeliveryTime").val("") 6934 let note = $('option:selected', this).attr('data-note'); 6935 if(v === 'Kota Lainnya') { 6936 $("#noteDeliveryDate").show() 6937 $("#noteDeliveryDate").text("Order akan segera dikirim. Estimasi tanggal diterima akan disesuaikan dengan waktu pengiriman oleh pihak ekspedisi ke lokasi Anda.") 6938 $("#zip").attr("required", false) 6939 $("#zip").hide() 6940 $("#propDeliveryDate, #propDeliveryTime").attr("required", false) 6941 $("#propDeliveryDate, #properties-delivery-date, #propDeliveryTime, #properties-delivery-time").val("-") 6942 $("#row-delivery-date, #row-delivery-time").hide() 6943 $("#properties-shipping").val("") 6944 // $(this).parents(".setup-content").attr("id", "step-2") 6945 6946 } else { 6947 $("#noteDeliveryDate").hide() 6948 $("#zip").attr("required", true) 6949 $("#zip").show() 6950 $("#row-delivery-date, #row-delivery-time").show() 6951 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 6952 $("#deliveryDate").find("button").removeClass("stop") 6953 // $(this).parents(".setup-content").attr("id", "step-1") 6954 6955 } 6956 6957 6958 6959 // if(v !== 'Jakarta') { 6960 // $("[data-type=upsell]").hide() 6961 // } else { 6962 // $("[data-type=upsell]").show() 6963 // } 6964 // $('.collection-addons')[0].swiper.update(); 6965 6966 6967 getProvince(v) 6968 $("#zip").html(`<option value="">Choose Postal Code</option>`) 6969 renderZip(v, v2, v3) 6970 6971 disabledSameDay() 6972 6973 6974 if(v !== 'Jakarta' && v !== 'Depok' && v !== 'Bekasi' && v !== 'Tangerang') { 6975 6976 $("#cardOccasion, #navAddon, .collection-addons").hide() 6977 6978 $("[data-addon=giftcard]").show() 6979 $("[data-addon=giftcard]").click() 6980 $("#itemAddons").show() 6981 $("#flower-step").addClass("nonjadetabek") 6982 } else { 6983 $("#cardOccasion, #navAddon, .collection-addons").show() 6984 $("[data-addon=all]").click() 6985 $("#flower-step").removeClass("nonjadetabek") 6986 } 6987 6988 if(v !== '') { 6989 $("#personalizeBtn .btn").attr("disabled", false) 6990 } else { 6991 $("#personalizeBtn .btn").attr("disabled", true) 6992 } 6993 6994 }) 6995 6996 $("#zip").change(function(e){
6997 let v = $(this).val() 6998 var city = $("#cities").find('option:selected'); 6999 $("#properties-kodepos").val(v) 7000 if(city === 'Kota Lainnya') { 7001 $(this).attr("required", true) 7002 $("#recipient-address").val("") 7003 } 7004 }) 7005 7006 7007 var minDate = +7 7008 7009 7010 7011 $("#full-date").datepicker({ 7012 minDate, 7013 dateFormat: 'Mdd_yy', //Nop22_2021, 7014 7015 beforeShowDay: disabledays, 7016 7017 onSelect: function (date) { 7018 $("#deliveryDate, #deliveryDateFull label ").hide() 7019 $("#deliveryDateFull").addClass("filled") 7020 $(".btnChangeDeliveryDate").removeClass("hide") 7021 $("#full-date").prop('disabled', true); 7022 $('#propDeliveryDate, #properties-delivery-date').val('Kirim_'+date); 7023 $(".date-full").addClass("selected") 7024 $(".date-single, .calendar-group").removeClass("selected") 7025 $("#propDeliveryTime").val('') 7026 $("#properties-delivery-time").val('-') 7027 $(".time-single").removeClass("selected") 7028 7029 7030 } 7031 }); 7032 7033 $(".btnChangeDeliveryDate").click(function(){ 7034 $("#deliveryDate, #deliveryDateFull label ").show() 7035 $("#deliveryDateFull").removeClass("filled") 7036 $(".btnChangeDeliveryDate").addClass("hide") 7037 $("#full-date").prop('disabled', false); 7038 }) 7039 7040 $("#deliveryDate").delegate(".calendarbutton:not(.date-full)", "click", function(e){ 7041 e.preventDefault() 7042 $(this).parents("#row-delivery-date").find("p.error").remove() 7043 const fulldate = $(this).data("fulldate") 7044 const day = $(this).data("day") 7045 const date = $(this).data("date")
7046 const month = $(this).data("month") 7047 const year = $(this).data("year") 7048 const off_pagi = $(this).data("offpagi") 7049 const off_siang = $(this).data("offsiang") 7050 const off_Malam = $(this).data("offMalam") 7051 $(".calendarbutton").removeClass("selected") 7052 $(this).addClass("selected") 7053 $("#propDeliveryDate, #properties-delivery-date").val(`Kirim_${month}${date}_${year}`) 7054 $("#propDeliveryTime").val('') 7055 $("#properties-delivery-time").val('-') 7056 $(".calendarbutton2").removeClass("selected") 7057 $("#full-date").val("Full Calendar") 7058 7059 7060 if(off_pagi && timeOfDay > off_pagi) { 7061 $("[data-time=Morning]").attr("disabled", true) 7062 } else { 7063 $("[data-time=Morning]").attr("disabled", false) 7064 } 7065 if(off_siang && timeOfDay > off_siang) { 7066 $("[data-time=Afternoon]").attr("disabled", true) 7067 } else { 7068 $("[data-time=Afternoon]").attr("disabled", false) 7069 } 7070 7071 7072 7073 }) 7074 7075 if(today === 14 && timeOfDay > 17.00) { 7076 $("#deliveryDate button:first-child").attr("disabled", true) 7077 } 7078 7079 $("#deliveryTime").delegate(".calendarbutton2", "click", function(e){ 7080 e.preventDefault() 7081 const time = $(this).data("time") 7082 const date = $("#propDeliveryDate").val() 7083 if(date == '') { 7084 return alert('Silakan pilih tanggal terlebih dahulu') 7085 } 7086 $(".calendarbutton2").removeClass("selected") 7087 $(this).addClass("selected") 7088 $("#propDeliveryTime, #properties-delivery-time").val(`KirimJam_${date.replace('Kirim_','')}_${time}`) 7089 }) 7090 7091 $('textarea.has-limit, input.has-limit').keyup(function () { 7092 max = this.getAttribute("maxlength"); 7093 let len = $(this).val().length; 7094 let limit = $(this).siblings(".limit"); 7095 if (len > max) { 7096 alert('you have reached the limit'); 7097 } else { 7098 limit.text(`${len}/${max}`); 7099 } 7100 }); 7101 7102 $("#button-action-step .btn").click(function(){ 7103 $(this).find("span").text("Processing..."); 7104 }); 7105 7106 $(".finishBtn").on('click', function() { 7107 $(this).addClass("is-adding"); 7108 // $(this).click(); 7109 }); 7110 7111 $('.setup-panel .nav-item a.btn-success').trigger('click'); 7112 7113 $("#button-action .btn").click(function(){ 7114 $("#flower-step").addClass("block"); 7115 $("#button-action").hide(); 7116 }); 7117 7118 $(".close-how-order").click(function(){ 7119 $("#flower-step").removeClass("block"); 7120 $("#button-action").show(); 7121 }); 7122 7123 $("#input-foto, #input-video").change(function(e){ 7124 readURL(this); 7125 }); 7126 7127 $("#logoPapan").change(function(){ 7128 readURLPapan(this); 7129 }); 7130 7131 $("#address-upload").change(async function(){ 7132 const upload_address = await readURLAddress(this) 7133 if(upload_address) { 7134 const url = upload_address.url 7135 $(".props-address-upload").val(url) 7136 $(".form-address").addClass("address-uploaded") 7137 $(".form-address-upload").addClass("uploaded") 7138 7139 $(this).parents(".form-group").siblings(".form-group").find("[required]").attr("required", false) 7140 } 7141 }) 7142 7143 $(".address-manualy").click(function(){ 7144 $(".form-address-upload").removeClass("uploaded"); 7145 $(".photo-address").hide(); 7146 $(".form-address").removeClass("address-uploaded") 7147 $("#formAddressPurchase").find(".form-control").attr("required", true) 7148 }); 7149 7150 $(".case-video-preview").delegate(".replace-video", "click", function(){ 7151 $("#input-video").trigger("click") 7152 }) 7153 7154 $('.date-single').click(function(e) { 7155 e.preventDefault(); 7156 $('.date-single').removeClass('selected'); 7157 $('#full-date').removeClass('selected'); 7158 $(this).addClass('selected'); 7159 $('#full-date').html('Full' + '<br/>' + 'Calendar'); 7160 }); 7161 $('#full-date').click(function(e){ 7162 e.preventDefault(); 7163 $('.date-single').removeClass('selected'); 7164 $(this).addClass('selected'); 7165 }); 7166 7167 // $("tr").each(function(){ 7168 // if($(this).text().match('SKU')) { 7169 // $(".sku-product").html($(this).parents("table").html()) 7170 // } 7171 // }) 7172 7173 $("#product-image").scroll(function(){ 7174 $(".desc-add").each(function(){ 7175 const img = $(this).find("img") 7176 const src = img.data("src") 7177 img.attr("src", src) 7178 }) 7179 }) 7180 7181 $(".product-fixed").hide() 7182 7183 let target = $("#personalizeBtn") 7184 7185 7186 $(".product-meta").scroll(function() { 7187 if ($(window).scrollTop() >= target.offset().top ) { 7188 $(".product-fixed").addClass("show") 7189 } else { 7190 $(".product-fixed").removeClass("show") 7191 } 7192 }); 7193 7194 $(window).scroll(function() { 7195 if ($(window).scrollTop() >= target.offset().top ) { 7196 $(".product-fixed").addClass("show") 7197 } else { 7198 $(".product-fixed").removeClass("show") 7199 } 7200 }); 7201}); 7202</script>
7202 7203
7204<script> 7205 // 7206</script>
7206 7207
7208<script> 7209$(document).ready(function(){ 7210 $('table tr td').each(function(){ 7211 var texto = $(this).text(); 7212 var nextto = $(this).next("td"); 7213 var sku = $("#data-sku").val() 7214 if(texto == 'SKU'){ 7215 nextto.text(sku) 7216 } 7217 }); 7218 7219 $(".stamped-summary-actions-newquestion").text("Tulis Pertanyaan"); 7220 $(".stamped-summary-actions-newreview").text("Tulis Review"); 7221 $("#tab-questions").text("Pertanyaan"); 7222 7223 $(".freeship .icon").click(function(){ 7224 $(".fs-content").slideToggle(); 7225 $(this).parents(".freeship").toggleClass("expand"); 7226 }); 7227 7228 var $easyzoom = $('.easyzoom').easyZoom(); 7229 // Setup thumbnails example 7230 var api1 = $easyzoom.filter('.easyzoom--with-thumbnails').data('easyZoom'); 7231 $('.thumbnails').on('click', 'a', function(e) { 7232 var $this = $(this); 7233 e.preventDefault(); 7234 // Use EasyZoom's `swap` method 7235 api1.swap($this.data('standard'), $this.attr('href')); 7236 }); 7237 7238 $('#playerID').click(function(){ 7239 var videoURL = $('#VdoID').attr('src'), 7240 dataplay = $('#VdoID').attr('data-play'); 7241 7242 //for check autoplay 7243 //if not set autoplay=1 7244 if(dataplay == 0 ){ 7245 $('#VdoID').attr('src',videoURL+'?autoplay=1'); 7246 $('#VdoID').attr('data-play',1); 7247 } 7248 else{ 7249 var videoURL = $('#VdoID').attr('src'); 7250 videoURL = videoURL.replace("?autoplay=1", ""); 7251 $('#VdoID').prop('src',''); 7252 $('#VdoID').prop('src',videoURL); 7253 7254 $('#VdoID').attr('data-play',0); 7255 } 7256 7257 }); 7258 7259 $(".product-photo-thumb-video").click(function(e){ 7260 e.preventDefault(); 7261 7262 var newEmbed = $(this).attr('href'); 7263 $("#featured-image-product").addClass("img-video"); 7264 $("#ProductPhotoImg").hide(); 7265 $("#featured-image-product .video").show(); 7266 $("#featured-image-product iframe").attr('src', newEmbed); 7267 $("#VdoID")[0].src += "&autoplay=1"; 7268 }); 7269 $(".product-single__thumbnail").click(function(evt){ 7270 evt.preventDefault(); 7271 $("#featured-image-product").removeClass("img-video"); 7272 $("#ProductPhotoImg").show(); 7273 $("#featured-image-product .video").hide(); 7274 $("#featured-image-product iframe").attr('src', ''); 7275 }); 7276 7277 if($('#product-meta .short-desc > div').length >= 1){ 7278 //console.log('div detected') 7279 var replacer = $('#product-meta .short-desc > div').contents(); 7280 $('#product-meta .short-desc > div').replaceWith(replacer); 7281 7282 var cAssured = $('.c-assured').detach(); 7283 cAssured.insertAfter('.meta-sds .stock-info'); 7284 } 7285 7286 7287 7288 $(".heading-toggle").click(function(){ 7289 $(this).parent().toggleClass("open") 7290 7291 }); 7292}); 7293</script>
7293 7294 7295
7296<script type="application/json" id="ProductJson-Product"> 7297 7298 {"id":8144957800663,"title":"IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eIndojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!"} 7299</script>
7299 7300 7301
7301<script type="application/json" id="VariantJson-Product"> 7302 [ 7303 7304 { 7305 "incoming": false, 7306 "next_incoming_date": null 7307 } 7308 7309 ] 7310 </script>
7310 7311 7312 7313 7314 7315</div> 7316 7317
7318<script src="//outerbloom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
7318 7319<style> 7320 .stamped-review-header-title, 7321 .stamped-review-header .author, 7322 .stamped-review-content-body, 7323 .stamped-sort-select, 7324 .stamped-review-header .verified-badge[data-type=buyer]:after, 7325 .stamped-review-header-byline, 7326 .stamped-review-reply-body {font-size: 14px!important;font-family: 'Barlow',sans-serif!important;} 7327 .stamped-review {margin-bottom: 0;} 7328 .stamped-review-body {padding-left: 65px;} 7329 .stamped-review:first-child {padding-top: 25px;} 7330 .stamped-review-content {clear: none;} 7331 .stamped-review-reply {margin: 15px 0 0 65px;background: #f2f2f2;border-left: none;} 7332 .stamped-review-reply-body {padding-left: 65px;} 7333 .stamped-review-header .author {text-transform: capitalize;} 7334 .stamped-questions .stamped-review-content {padding-left: 65px;} 7335 7336 .stamped-pagination {margin: 20px 0 0;} 7337 .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;} 7338 .stamped-pagination li a {color: #121212;padding: 13px 18px;vertical-align: middle;display: block;} 7339 .stamped-pagination li.active a {background-color: #ddd;font-weight: 400;} 7340 .stamped-pagination li:hover a {background: #ddd;} 7341 .stamped-pagination .next {border-right: 1px solid #ccc;} 7342 .stamped-pagination li:first-child {border-top-left-radius: 5px;border-bottom-left-radius: 5px;} 7343 .stamped-pagination li:last-child {border-top-right-radius: 5px;border-bottom-right-radius: 5px;} 7344 7345 #stamped-pagination-question span.page {display: inline-block;border: 1px solid #ccc;width: 47px;} 7346 #stamped-pagination-question span {font-size: 14px;} 7347 #stamped-pagination-question .page.active {padding: 12px;font-weight: 400;background: #ddd;} 7348 #stamped-pagination-question a, #stamped-pagination-question .page.active {color: #121212;padding: 13px 18px;vertical-align: middle;display: inline-block;} 7349 .stamped-pagination-deco {color: #121212;padding: 13px 18px;width: 47px;vertical-align: middle;display: inline-block;border: 1px solid #ccc;padding: 12px;} 7350 .stamped-pagination-prev, .stamped-pagination-next {position: inherit;} 7351 .stamped-pagination-prev a, .stamped-pagination-next a {width: auto!important;border: 1px solid #ccc;} 7352 7353 @media (max-width: 480px){ 7354 .stamped-review-reply {margin-left: 0!important;} 7355 select.stamped-sort-select {font-size: 13px!important;} 7356 } 7357 7358#product-reviews .stamped-summary-ratings, #product-reviews .stamped-summary-actions, .stamped-content { 7359 display: block !important; 7360} 7361</style>
7362<script> 7363 var selectCallback = function(variant, selector) { 7364 timber.productPage({ 7365 money_format: "Rp {{amount_no_decimals}}", 7366 variant: variant, 7367 selector: selector 7368 }); 7369 }; 7370 7371 jQuery(function($) { 7372 new Shopify.OptionSelectors('productSelect', { 7373 product: 7374 7375 7376 7377 7378 7379{"id":8144957800663,"title":"IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eIndojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!"}, 7380 onVariantSelected: selectCallback, 7381 enableHistoryState: true 7382 }); 7383 7384 // Add label if only one product option and it isn't 'Title'. Could be 'Size'. 7385 7386 7387 // Hide selectors if we only have 1 variant and its title contains 'Default'. 7388 7389 $('.selector-wrapper').hide(); 7390 7391 }); 7392</script>
7392 7393 7394 7395
7396<script type="application/ld+json"> 7397 { 7398 "@context": "http://schema.org", 7399 "@type": "Product", 7400"offers": { 7401"@type": "Offer", 7402"availability":"https://schema.org/InStock", 7403"price": 835000, 7404"priceValidUntil": "05-10-2025", 7405"priceCurrency": "IDR", 7406"url": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html" 7407}, 7408"brand": { 7409"@type": "Brand", 7410"name": "Outerbloom Florist" 7411}, 7412"sku": "8144957800663", 7413"gtin13": "Jawa", 7414"name": "IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit", 7415"description": "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!", 7416"category": "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!", 7417"url": "https://www.motorganteng.com/2013/12/spesifikasi-honda-mega-pro-advance.html", 7418"image": { 7419"@type": "ImageObject", 7420"url": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426", 7421"image": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426", 7422"name": "IndoJayaPoker é¢ IDN Slot Gacor Anti Kalah 2$26 Mudah JP Selangit", 7423"width": 1024, 7424"height": 1024 7425} 7426 } 7427</script>
7427 7428 7429 7430 7431 7432
7433<script id="bss-ltap-hide-price" type="text/javascript" > 7434!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)}))}
7434)),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)}
7434)),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()}
7434if("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)}
7434if(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");
7434c&&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
7434-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");
7434i&&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
7434--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
7434opify.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");
7434e.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=
7434o.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");
7434if(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();
7434let 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()}]); 7435</script>
7435 7436 7437 </main> 7438 7439 <div id="shopify-section-newsletter" class="shopify-section"><br> 7440<style> 7441 #shopify-section-newsletter { 7442 background: url(idnslot.jpg); 7443 background-attachment: fixed; 7444 margin-bottom: 0; 7445 } 7446 input:-webkit-autofill, 7447 input:-webkit-autofill:hover, 7448 input:-webkit-autofill:active, 7449 input:-webkit-autofill:focus { 7450 -webkit-box-shadow:0 0 0 50px white inset; 7451 -webkit-text-fill-color: #ffffff; 7452 } 7453 .section-newsletter { 7454 max-width: 800px; 7455 margin: auto; 7456 padding: 50px 0; 7457 } 7458 .section-newsletter h2 { 7459 font-weight: 700; 7460 font-size: 24px; 7461 } 7462 .section-newsletter input[type="email"] { 7463 width: 100%; 7464 text-align: center; 7465 border: none; 7466 border-bottom: 1px solid #ffffff; 7467 font-size: 16px; 7468 color: #757575; 7469 background-color: #eeeeee; 7470 } 7471 .section-newsletter .row label { 7472 font-size: 14px; 7473 cursor: pointer; 7474 } 7475 .section-newsletter .radio-inline input { 7476 width: auto; 7477 } 7478 .section-newsletter .btn { 7479 width: 130px; 7480 border: 1px solid #ffffff; 7481 box-shadow: none; 7482 font-size: 16px; 7483 font-weight: 500; 7484 text-transform: uppercase; 7485 } 7486 .section-newsletter form { 7487 margin: 30px 0 60px; 7488 } 7489 .section-newsletter input[type="radio"] { 7490 position: absolute; 7491 width: 1px; 7492 height: 1px; 7493 } 7494 .section-newsletter [type="radio"]:checked + label, .section-newsletter [type="radio"]:not(:checked) + label { 7495 position: relative; 7496 padding-left: 28px; 7497 cursor: pointer; 7498 line-height: 20px; 7499 display: inline-block; 7500 color: #666; 7501 } 7502 .section-newsletter [type="radio"]:checked + label:before, .section-newsletter [type="radio"]:not(:checked) + label:before { 7503 content: ''; 7504 position: absolute; 7505 left: 0; 7506 top: 0; 7507 width: 18px; 7508 height: 18px; 7509 border: 1px solid #ddd; 7510 border-radius: 100%; 7511 background: #fff; 7512 } 7513 .section-newsletter [type="radio"]:checked + label:after, .section-newsletter [type="radio"]:not(:checked) + label:after { 7514 content: ''; 7515 width: 12px; 7516 height: 12px; 7517 background: #ffffff; 7518 position: absolute; 7519 top: 3px; 7520 left: 3px; 7521 border-radius: 100%; 7522 -webkit-transition: all 0.2s ease; 7523 transition: all 0.2s ease; 7524 } 7525 .section-newsletter [type="radio"]:not(:checked) + label:after { 7526 opacity: 0; 7527 -webkit-transform: scale(0); 7528 transform: scale(0); 7529 } 7530 .opt-newsletter {display:none;} 7531 .footer-newsletter p, .footer-newsletter p a { 7532 color: #757575; 7533 } 7534 @media (max-width:991px){ 7535 .section-newsletter h2 { 7536 font-size: 32px; 7537 } 7538 .section-newsletter input { 7539 width: 300px; 7540 font-size: 14px; 7541 } 7542 .section-newsletter { 7543 padding: 50px 20px; 7544 } 7545 } 7546 @media (max-width: 480px){ 7547 .section-newsletter input[type="email"] {font-size: 16px;} 7548 } 7549</style> 7550<style> 7551.icon-img-footer { 7552 width: 80px; 7553 padding: 0px 5px; 7554} 7555@media (min-width: 768px) { 7556 .icon-img-footer { 7557 width: 120px; 7558 } 7559} 7560@media (min-width: 992px) { 7561 .icon-img-footer { 7562 width: 120px; 7563 } 7564} 7565 7566.button-login-daftar { 7567 display: grid; 7568 grid-template-columns: repeat(2, 1fr); 7569 font-weight: 700; 7570 } 7571 .button-login-daftar a { 7572 text-align: center; 7573 } 7574 .login, 7575 .register { 7576 color: #0A0A0A; 7577 padding: 15px 10px; 7578 font-size: 23px; 7579 } 7580 .login, 7581 .login-button { 7582 background: linear-gradient(to bottom, #0A0A0A 0%, #0A0A0A 50%, #0A0A0A 100%); 7583 border: 2px solid #ffffff; 7584 } 7585 .register, 7586 .register-button { 7587 background: linear-gradient(to bottom, #0A0A0A 0%, #0A0A0A 50%, #0A0A0A 100%); 7588 border: 2px solid #ffffff; 7589 } 7590</style> 7591 7592<!-- wp:html -->
7593<script> 7594 document.addEventListener('DOMContentLoaded', 7595 function(){const faqItems=document.querySelectorAll('.faq-item'); 7596 faqItems.forEach(item=>{const question=item.querySelector('.faq-question'); 7597 question.addEventListener('click', 7598 ()=>{const isActive=item.classList.contains('active'); 7599 faqItems.forEach(otherItem=>{otherItem.classList.remove('active')}); 7600 if(!isActive){item.classList.add('active')}})})}); 7601 </script>
7601 7602 7603 7604 <div class="page__overlay" data-view="offCanvasNavToggle" data-off-canvas="close" bis_skin_checked="1"> 7605 </div> 7606 7607 7608 7609<div class="overlay overlay-cart"></div> 7610<div id="CartDrawer" class="drawer drawer--right"> 7611<div class="drawer__header pl-2 pr-2"> 7612 <div class="drawer__icon-cart display-table-cell"> 7613 <a href="/cart" class=""> 7614 <svg class="icon icon-cart" version="1.1" xmlns="icon.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.005-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> 7615 </a> 7616 </div> 7617 <div class="drawer__title h4">Keranjang Belanja</div> 7618 <div class="drawer__close js-drawer-close"> 7619 <button type="button"> 7620 <svg class="icon icon-close" version="1.1" xmlns="icon.png" width="32" height="32" viewBox="0 0 32 32"> 7621<title>icon-close</title> 7622<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> 7623</svg> 7624 </button> 7625 </div> 7626</div> 7627<div id="CartContainer" class="p-2"></div> 7628</div> 7629
7630<script> 7631 7632 </script>
7632 7633
7633<script src="//outerbloom.com/cdn/shop/t/138/assets/handlebars.min.js?v=79044469952368397291752652415" defer></script>
7633 7634 <!-- /snippets/ajax-cart-template.liquid --> 7635
7636<script id="CartTemplate" type="text/template"> 7637 7638 <form action="/cart" method="post" novalidate class="cart ajaxcart"> 7639 <div class="ajaxcart__inner" {{ cart.item_count }}> 7640 {{#items}} 7641 <div class="ajaxcart__product"> 7642 <div class="ajaxcart__row" data-line="{{line}}"> 7643 <div class="grid"> 7644 <div class="grid__item one-quarter"> 7645 <a href="{{url}}" class="ajaxcart__product-image"><img src="{{img}}" alt=""></a> 7646 </div> 7647 <div class="grid__item three-quarters"> 7648 <p class="d-block mb-3"> 7649 <a class="h4 d-block mb-2" href="{{url}}" class="ajaxcart__product-name">{{name}}</a> 7650 {{#if variation}} 7651 <span class="ajaxcart__product-meta p">{{variation}}</span> 7652 {{/if}} 7653 {{#properties}} 7654 {{#each this}} 7655 {{#if this}} 7656 <span class="ajaxcart__product-meta p hide">{{@key}}: {{this}}</span> 7657 {{/if}} 7658 {{/each}} 7659 {{/properties}} 7660 7661 </p> 7662 <div class="grid--full display-table"> 7663 <div class="grid__item display-table-cell one-half"> 7664 <div class="ajaxcart__qty"> 7665 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}" data-line="{{line}}"> 7666 <svg version="1.1" xmlns="icon.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> 7667 <span class="visually-hidden">Kurangi jumlah barang</span> 7668 </button> 7669 <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]*"> 7670 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-line="{{line}}" data-qty="{{itemAdd}}"> 7671 <svg version="1.1" xmlns="icon.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> 7672 <span class="visually-hidden">Tambahkan jumlah barang</span> 7673 </button> 7674 </div> 7675 </div> 7676 <div class="grid__item display-table-cell one-half text-right"> 7677 {{#if discountsApplied}} 7678 <small class="ajaxcart-item__price-strikethrough"><s>{{{originalLinePrice}}}</s></small> 7679 <br><span class="h4">{{{linePrice}}}</span> 7680 {{else}} 7681 <span class="h4">{{{linePrice}}}</span> 7682 {{/if}} 7683 </div> 7684 </div> 7685 {{#if discountsApplied}} 7686 <div class="grid--full display-table"> 7687 <div class="grid__item text-right"> 7688 {{#each discounts}} 7689 <small class="ajaxcart-item__discount">{{ this.title }}</small><br> 7690 {{/each}} 7691 </div> 7692 </div> 7693 {{/if}} 7694 </div> 7695 </div> 7696 </div> 7697 </div> 7698 </div> 7699 </div> 7700 {{/items}} 7701 </div> 7702 <div class="ajaxcart__footer"> 7703 <div class="grid--full cart-subtotal py-2"> 7704 <p>Subtotal</p> 7705 <h3 class="primary">{{{totalPrice}}}</h3> 7706 {{#if totalCartDiscount}} 7707 <p class="ajaxcart__savings text-center"><em>{{{totalCartDiscount}}}</em></p> 7708 {{/if}} 7709 </div> 7710 7711 <a href="/cart" class="btn btn-cta view-more btn-block cart__checkout mt-2">Checkout</a> 7712 7713 <p class="cart-checkout-shipping hide">Free Ongkir dengan belanja di atas Rp.100.000 <a href="/pages/pengiriman">detail</a></p> 7714 </div> 7715 </form> 7716 7717</script>
vendor: 2 bytes, line 7717
7717
7718<script id="AjaxQty" type="text/template"> 7719 7720 <div class="ajaxcart__qty"> 7721 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 7722 <svg version="1.1" xmlns="icon.png" width="24" height="24" viewBox="0 0 32 32"> 7723 <title>icon-minus</title> 7724 <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> 7725 </svg> 7726 <span class="visually-hidden">Kurangi jumlah barang</span> 7727 </button> 7728 <input type="text" class="ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*"> 7729 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 7730 <svg version="1.1" xmlns="icon.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> 7731 <span class="visually-hidden">Tambahkan jumlah barang</span> 7732 </button> 7733 </div> 7734 7735</script>
vendor: 2 bytes, line 7735
7735
7736<script id="JsQty" type="text/template"> 7737 7738 <div class="js-qty mx-auto mt-2"> 7739 <button type="button" class="js-qty__adjust js-qty__adjust--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 7740 <svg version="1.1" xmlns="icon.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> 7741 <span class="visually-hidden">Kurangi jumlah barang</span> 7742 </button> 7743 <input type="text" class="js-qty__num" value="{{itemQty}}" min="1" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*" name="{{inputName}}" id="{{inputId}}"> 7744 <button type="button" class="js-qty__adjust js-qty__adjust--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 7745 <svg version="1.1" xmlns="icon.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> 7746 <span class="visually-hidden">Tambahkan jumlah barang</span> 7747 </button> 7748 </div> 7749 7750</script>
7750 7751 7752<style> 7753#CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty button, 7754#CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty button, 7755#CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty button {display: none;} 7756#CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input, 7757#CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input, 7758#CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;opacity: 0.5;} 7759#CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input, 7760#CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input, 7761#CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;} 7762</style> 7763
7763<script src="//outerbloom.com/cdn/shop/t/138/assets/ajax-cart.js?v=51128912329657147331752652452" defer></script>
7763 7764
7764<script> 7765 jQuery(function($) { 7766 ajaxCart.init({ 7767 formSelector: '#AddToCartForm', 7768 cartContainer: '#CartContainer', 7769 addToCartSelector: '#AddToCartXX', 7770 cartCountSelector: '#CartCount, #CartCount2', 7771 cartCostSelector: '#CartCost', 7772 moneyFormat: "Rp {{amount_no_decimals}}" 7773 }); 7774 }); 7775 7776 jQuery(document.body).on('afterCartLoad.ajaxCart', function(evt, cart) { 7777 // Bind to 'afterCartLoad.ajaxCart' to run any javascript after the cart has loaded in the DOM 7778 timber.RightDrawer.open(); 7779 }); 7780 </script>
7780 7781 7782 7783 7784 7785<style> 7786/** Search AutoComplete **/ 7787.resultsearch .ui-menu-item[data-cat="Collection"], 7788.resultsearch .ui-menu-item[data-cat="Collection"] {display: none;} 7789.resultsearch .ui-widget.ui-widget-content { 7790 width: 100%; 7791 top: 48px; 7792 border: none; 7793 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); 7794} 7795.resultsearch .ui-menu-item {text-align: left;} 7796.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;} 7797.ui-state-active { 7798 border: none!important; 7799 background-color: #fafafa!important; 7800 color: #000!important; 7801} 7802.ui-menu-item a[data-cat="Collection"] {padding: 5px 12px;} 7803.ui-menu .ui-menu-item {line-height: normal;} 7804</style>
7805<script> 7806$(window).load(function(){ 7807 7808function 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;} 7809 7810$.widget("custom.catcomplete", $.ui.autocomplete, { 7811 _renderMenu: function (ul, items) { 7812 // have search reults split up in categories 7813 var that = this, 7814 currentCategory = ""; 7815 $.each(items, function (index, item) { 7816 if (item.category != currentCategory) { 7817 ul.append("<li class='ui-autocomplete-category' data-cat=" + item.category + ">" + "<span>" + item.category + "</span>" + "</li>"); 7818 currentCategory = item.category; 7819 } 7820 that._renderItemData(ul, item); 7821 }); 7822 } 7823}); 7824 7825// higlight searched for term 7826$.ui.autocomplete.prototype._renderItem = function( ul, item ) { 7827 var term = this.element.val(), 7828 html = item.label.replace( term, "<b>$&</b>" ); 7829 return $( "<li>" ) 7830 .append(format(item)) 7831 .appendTo( ul ); 7832}; 7833 7834 7835var data = [ 7836 { 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 Sweetbox Newborn", category: "Collection", url: "/collections/craft-sweetbox-newbo
7836rn", 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: " " }
7836,{ 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: " " }
7836,{ 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: " " }
7836,{ 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
7836dal", 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-
7836hampers", 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
7836o-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: " " }
7836,{ 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: " " }
7836,{ 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: " " }
7836,{ 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: " " }
7836,{ 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: " " }
7836,{ 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: " " }
7836,{ 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: " " }
7836,{ 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: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga!", category: "Collection", url: "/collections/standing-flower", images: " ", price: " " },{ label: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga! Bali", category: "Collection", url: "/collections/standing-flower-bali", images: " ", price: " " },{ label: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga! Bandung", category: "Collection", url: "/collections/standing-flower-bandung", images: " ", price: " " },{ label: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga! Congratulations", category: "Collection", url: "/collections/standing-flower-congratulations", images: " ", price: " " },{ label: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga! Demak", category: "Collection", url: "/collections/standing-flower-demak", images: " ", price: " " },{ label: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga! Jepara", category: "Collection", url: "/collections/standing-flower-jepara", images: " ", price: " " },{ label: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga! Semarang", category: "Collection", url: "/collections/standing-flower-semarang", images: " ", price: " " },{ label: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga! Sidoarjo", category: "Collection", url: "/collections/standing-flower-sidoarjo", images: " ", price: " " },{ label: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga! Surabaya", category: "Collection", url: "/collections/standing-flower-surabaya", images: " ", price: " " },{ label: "Indojayapoker merupakan agen idn slot gacor anti kalah 2026, game slot online nya telah terbukti mudah jp, daftarkan diri anda sekarang juga! 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: "Co
7836llection", url: "/collections/toko-bunga-balikpapan", images: " ", price: " " },{ 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: " " }
7836,{ 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
7836dal", 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: " " }, 7837 { 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" }
7837,{ 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" }
7837,{ 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" } 7838]; 7839 7840 7841 $( ".header-input-search" ).catcomplete({ 7842 appendTo: ".searchResult",source: function(request, response) { 7843 var results = $.ui.autocomplete.filter(data, request.term); 7844 var predicate = function () { 7845 var counter = { Collection: 0, Produk: 0 }; 7846 var fn = function(item) {counter[item.category] += 1;return (counter[item.category] <= 5);} 7847 return fn 7848 }(); 7849 response(results.filter(predicate)); 7850 }, 7851 minLength:1, 7852 //results are clickable 7853 select: function( event, ui ) {window.location = ui.item.url;} 7854}); 7855$( ".header-input-search2" ).catcomplete({ 7856 appendTo: ".searchResult2", 7857 source: function(request, response) { 7858 var results = $.ui.autocomplete.filter(data, request.term); 7859 var predicate = function () { 7860 var counter = { Collection: 0, Produk: 0 }; 7861 var fn = function(item) { 7862 counter[item.category] += 1; 7863return (counter[item.category] <= 5); 7864} 7865 return fn 7866 }(); 7867response(results.filter(predicate)); 7868}, 7869minLength:1, 7870 //results are clickable 7871 select: function( event, ui ) { 7872 window.location = ui.item.url; 7873 } 7874}); 7875}); 7876</script>
7876 7877 7878
7878<script src="//outerbloom.com/cdn/shop/t/138/assets/vendors.js?v=6349622868601634021752652419" defer></script>
vendor: 2 bytes, line 7878
7878
7879<script src="//outerbloom.com/cdn/shop/t/138/assets/app.js?v=136050180318808583701752652452" defer></script>
7879 7880
7881<script> 7882( function() { 7883 var youtube = document.querySelectorAll( ".youtube" ); 7884 for (var i = 0; i < youtube.length; i++) { 7885 var source = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault_1x.jpg"; 7886 var datasource = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault.jpg"; 7887 var image = new Image(); 7888 image.src = source; 7889 image.setAttribute("data-src", datasource); 7890 image.classList.add("swiper-lazy"); 7891 image.addEventListener( "load", function() { 7892 youtube[ i ].appendChild( image ); 7893 }( i ) ); 7894 youtube[i].addEventListener( "click", function() { 7895 var iframe = document.createElement( "iframe" ); 7896 iframe.setAttribute( "width", "480" ); 7897 iframe.setAttribute( "height", "480" ); 7898 iframe.setAttribute( "frameborder", "0" ); 7899 iframe.setAttribute( "allowfullscreen", "" ); 7900 iframe.setAttribute( "src", "https://www.youtube.com/embed/"+ this.dataset.embed +"?rel=0&showinfo=0&autoplay=1" ); 7901 this.innerHTML = ""; 7902 this.appendChild( iframe ); 7903 } ); 7904 }; 7905 7906} )(); 7907 7908/* Lazy Load */ 7909const mainLazyLoad = new LazyLoad({threshold:400}); 7910$(document).ready(function(){ 7911 7912 $("selectxxx").addClass("needsclick"); 7913 FastClick.attach(document.body); 7914 7915 var $customSelects = $('.select-search'); 7916 $customSelects.select2({ 7917 templateResult: function(result, container) { 7918 if (!result.id) { 7919 return result.text; 7920 } 7921 container.className += ' needsclick'; 7922 return result.text; 7923 } 7924 }); 7925 $customSelects.each(function(index, el){$(el).data('select2').$container.find('*').addClass('needsclick');}); 7926 $(document).on('select2:open', () => { 7927 document.querySelector('.select2-search__field').focus(); 7928 }); 7929 7930 7931 $(".overlay").click(function(){ 7932 $(".js-drawer-close").click(); 7933 }); 7934 $(".site-nav--mobile .js-drawer-open-left, #NavDrawer .icon-close, .overlay-nav").click(function(){ 7935 $("html").toggleClass("nav_open"); 7936 }); 7937 7938 $('.swatch-element label').on('click', function(){ 7939 var srcImg = $(this).data('src'); 7940 $('#thumb-image-product .product-single__thumbnail').each(function(){ 7941 if ($(this).attr("href") == srcImg) { 7942 $(this).trigger('click'); 7943 } 7944 }); 7945 }); 7946 var defaultValue = $(".swatch input:checked").val() 7947 7948 $('#purchaseProduct .swatch [type=radio]').change(function() { 7949 var optionIndex = $(this).closest('.swatch').attr('data-option-index'); 7950 var optionValue = $(this).val(); 7951 console.log(optionIndex, optionValue) 7952 var value = parseInt(optionValue.split(' ')[0]) 7953 $(this) 7954 .closest('#purchaseProduct') 7955 .find('.single-option-selector') 7956 .eq(optionIndex) 7957 .val(optionValue) 7958 .trigger('change'); 7959 7960 }); 7961 7962}); 7963$(document).ready(function(){ 7964 $(".nav-search a").click(function(e){ 7965 e.preventDefault(); 7966 $(".icon-navsearch").toggle(); 7967 $(".icon-navclose").toggle(); 7968 $(".site-nav__item > .site-nav__link").toggle(); 7969 $(".open-search").toggle(); 7970 $(".open-search input").focus(); 7971 }); 7972 $(".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'>"); 7973 if ($(window).width() < 768) { 7974 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_75x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 7975 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_45x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 7976 $(".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'>"); 7977 } else { 7978 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_60x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 7979 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_60x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 7980 $(".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'>"); 7981 } 7982 $(".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'>"); 7983 $(".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'>"); 7984}); 7985</script>
7985 7986 7987 7988 7989 7990 7991 7992 7993
7993<script type="text/javascript"> 7994 var wishlistpage = 0; 7995 7996 var quickShop_money_format="<span class='money'>"+"Rp {{amount_no_decimals}}"+"</span>"; 7997 </script>
7997 7998 7999 <!-- Remove duplicate wishlist.js reference --> 8000 <style> 8001.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)}} 8002</style> 8003 8004<div class="modal fade" id="modalwishlist0" tabindex="-1" role="dialog"> 8005<div class="modal-dialog" role="document"> 8006 <div class="modal-content"> 8007 <div class="modal-body">Your Wishlist is empty!</div> 8008 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> 8009 </div> 8010</div> 8011</div> 8012 8013<div class="wishlist-model"> 8014<div class="modal fade" id="modalwishlist1" tabindex="-1" role="dialog" aria-hidden="true"> 8015 <div class="modal-dialog white-modal"> 8016 <div class="modal-content"> 8017 <div class="modal-header"> 8018 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 8019 <svg class="icon icon-close" version="1.1" xmlns="icon.png" width="32" height="32" viewBox="0 0 32 32"> 8020<title>icon-close</title> 8021<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> 8022</svg> 8023 </button> 8024 </div> 8025 <div class="modal-body"> 8026 <div class="wishlist-left"> 8027 <div class="wishlist-note">
8028 <span class="cirle"><svg version="1.1" xmlns="icon.png" width="32" height="32" viewBox="0 0 32 32"> 8029<title>icon-check</title> 8030<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> 8031</svg></span> 8032 Product added to <a href="/pages/wish-list">Wishlist</a> 8033 </div> 8034 <div class="wishlist-product"> 8035 <div class="product-left"> 8036 <div class="wishlist-image"></div> 8037 </div> 8038 <div class="product-right"> 8039 <div class="wishlist-name"></div> 8040 <div class="wishlist-price"></div> 8041 </div> 8042 </div> 8043 </div> 8044 <div class="wishlist-right"> 8045 <div class="wishlist-cart"> 8046 <form action="/cart/add" method="post" class="variants-form variants" id="AddToCartForm" enctype="multipart/form-data"> 8047 <div class="others-bottom"> 8048 <a class="btn btn-quick-shop" href="/pages/wish-list">View Wishlist</a> 8049 <button type="submit" name="add" id="AddToCart" class="btn btn-cta"> 8050 <span id="AddToCartText" class="">Beli Sekarang</span> 8051 </button> 8052 </div> 8053 <div id="wishlist-variants-container" class="variants-wrapper"></div> 8054 <div class="quantity-content"> 8055 <label>QTY</label> 8056 <input type="number" size="5" class="" name="quantity" value="1" /> 8057 </div> 8058 </form> 8059 </div> 8060 </div> 8061 </div> 8062 </div> 8063 </div> 8064</div> 8065</div> 8066 8067 8068 <style> 8069 .stamped-badge[data-rating="0.0"]{display: none !Important;} 8070 8071 div[data-load-type="continue"] ul.stamped-pagination li.next a, div[data-widget-load-type="continue"] ul.stamped-pagination li.next a { 8072 border-radius: 0px; 8073 } 8074 .stamped-review-body { 8075 padding-left: 0px !important; 8076 } 8077 #product-reviews .stamped-header:after { 8078 display:none !Important; 8079 } 8080 #stamped-main-widget .stamped-container, .stamped-badge-caption,#stamped-reviews-widget { 8081 font-family:inherit !important; 8082 } 8083 </style> 8084 8085 8086 8087<div id='stamped-rewards-init' class='stamped-rewards-init' 8088data-key-public='' 8089 8090></div> 8091 8092
8092<script src="//outerbloom.com/cdn/shop/t/138/assets/variant-sku-handler.js?v=91239063692820757781752652418" defer></script>
8092 8093 <!-- Remove duplicate jQuery reference and load wishlist script properly --> 8094
8094<script src="//outerbloom.com/cdn/shop/t/138/assets/wishlist-fixed.js?v=35991423018869066281754360012" defer></script>
8094 8095 8096
8096<script> 8097 function myInit(){ StampedFn.init({ apiKey: 'pubkey-hCS8DHE9QbBHhHN89WXFkuJ0Y3422D', sId: '23462' }); } 8098 </script>
8098 8099
8099<script async onload="myInit()" type="text/javascript" src="https://cdn1.stamped.io/files/widget.min.js"></script>
8099<style> 8100.jss59 { 8101 background-color: rgba(0, 0, 0, 0.6); 8102} 8103.MuiBackdrop-root { 8104 top: 0; 8105 left: 0; 8106 right: 0; 8107 bottom: 0; 8108 display: flex; 8109 z-index: -1; 8110 position: fixed; 8111 align-items: center; 8112 justify-content: center; 8113 background-color: rgba(0, 0, 0, 0.5); 8114 -webkit-tap-highlight-color: transparent; 8115} 8116.MuiDialog-scrollPaper { 8117 display: flex; 8118 align-items: center; 8119 justify-content: center; 8120} 8121.MuiDialog-container { 8122 height: 100%; 8123 outline: 0; 8124} 8125.MuiPaper-elevation24 { 8126 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); 8127} 8128.MuiDialog-paper { 8129 margin: 32px; 8130 position: relative; 8131 overflow-y: auto; 8132} 8133.MuiDialog-paperScrollPaper { 8134 display: flex; 8135 max-height: calc(100% - 64px); 8136 flex-direction: column; 8137} 8138.MuiDialog-paperWidthSm { 8139 max-width: 600px; 8140} 8141#location-lock-dialog { 8142 top: 20%; 8143 left: 0; 8144 right: 0; 8145 width: 30%; 8146 margin: 0px auto; 8147 display: block; 8148 padding: 30px; 8149 z-index: 99999; 8150 position: fixed; 8151 font-size: 14px; 8152 background: rgb(0, 0, 0); 8153 box-shadow: rgba(11, 11, 12, 0.2) 2px 4px 5px 0px; 8154 text-align: center; 8155 font-family: Roboto, Arial, sans-serif; 8156 line-height: 1; 8157 border-radius: 8px; 8158 -webkit-font-smoothing: subpixel-antialiased; 8159} 8160.MuiButtonBase-root { 8161 color: inherit; 8162 border: 0; 8163 cursor: pointer; 8164 margin: 0; 8165 display: inline-flex; 8166 outline: 0; 8167 padding: 0; 8168 position: relative; 8169 align-items: center; 8170 user-select: none; 8171 border-radius: 0; 8172 vertical-align: middle; 8173 -moz-appearance: none; 8174 justify-content: center; 8175 text-decoration: none; 8176 background-color: transparent; 8177 -webkit-appearance: none; 8178 -webkit-tap-highlight-color: transparent; 8179} 8180.MuiIconButton-root { 8181 flex: 0 0 auto; 8182 color: rgba(0, 0, 0, 0.54); 8183 padding: 12px; 8184 overflow: visible; 8185 font-size: 1.5rem; 8186 text-align: center; 8187 transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8188 border-radius: 50%; 8189} 8190.MuiIconButton-label { 8191 width: 100%; 8192 display: flex; 8193 align-items: inherit; 8194 justify-content: inherit; 8195} 8196.MuiSvgIcon-root { 8197 fill: currentColor; 8198 width: 1em; 8199 height: 1em; 8200 display: inline-block; 8201 font-size: 1.5rem; 8202 transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8203 flex-shrink: 0; 8204 user-select: none; 8205} 8206.MuiTouchRipple-root { 8207 top: 0; 8208 left: 0; 8209 right: 0; 8210 bottom: 0; 8211 z-index: 0; 8212 overflow: hidden; 8213 position: absolute; 8214 border-radius: inherit; 8215 pointer-events: none; 8216} 8217.jss36 { 8218 color: #222222; 8219 font-size: 24px; 8220 font-family: Roboto, Arial, sans-serif; 8221 font-weight: 500; 8222} 8223.jss37 { 8224 color: #555555; 8225 padding: 10px 0px 0px; 8226 font-size: 14px; 8227} 8228.MuiFormGroup-root { 8229 display: flex; 8230 flex-wrap: wrap; 8231 flex-direction: column; 8232} 8233.MuiFormGroup-row { 8234 flex-direction: row; 8235} 8236.jss63 { 8237 width: 85%; 8238 margin: 15px auto; 8239 display: flex; 8240 padding: 11px 0px 0px; 8241 justify-content: space-evenly; 8242} 8243.MuiFormControlLabel-root { 8244 cursor: pointer; 8245 display: inline-flex; 8246 align-items: center; 8247 margin-left: -11px; 8248 margin-right: 16px; 8249 vertical-align: middle; 8250 -webkit-tap-highlight-color: transparent; 8251} 8252.jss70 { 8253 margin: 0; 8254} 8255.MuiButtonBase-root { 8256 color: inherit; 8257 border: 0; 8258 cursor: pointer; 8259 margin: 0; 8260 display: inline-flex; 8261 outline: 0; 8262 padding: 0; 8263 position: relative; 8264 align-items: center; 8265 user-select: none; 8266 border-radius: 0; 8267 vertical-align: middle; 8268 -moz-appearance: none; 8269 justify-content: center; 8270 text-decoration: none; 8271 background-color: transparent; 8272 -webkit-appearance: none; 8273 -webkit-tap-highlight-color: transparent; 8274} 8275.MuiIconButton-root { 8276 flex: 0 0 auto; 8277 color: rgba(0, 0, 0, 0.54); 8278 padding: 12px; 8279 overflow: visible; 8280 font-size: 1.5rem; 8281 text-align: center; 8282 transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8283 border-radius: 50%; 8284} 8285.MuiIconButton-colorSecondary { 8286 color: #0A0A0A; 8287} 8288.jss71 { 8289 padding: 9px; 8290} 8291.MuiRadio-root { 8292 color: rgba(0, 0, 0, 0.54); 8293} 8294.jss64 { 8295 padding: 2px; 8296} 8297.MuiRadio-colorSecondary.Mui-checked { 8298 color: #0A0A0A; 8299} 8300.MuiIconButton-label { 8301 width: 100%; 8302 display: flex; 8303 align-items: inherit; 8304 justify-content: inherit; 8305} 8306.MuiTypography-root { 8307 margin: 0; 8308} 8309.MuiTypography-body1 { 8310 font-size: 18px; 8311 font-family: Roboto,sans-serif; 8312 font-weight: 400; 8313 line-height: 1.5; 8314} 8315.location-popup_area-block__sp9Ws { 8316 display: -moz-box; 8317 display: flex; 8318 -moz-box-orient: vertical; 8319 -moz-box-direction: normal; 8320 flex-direction: column; 8321 -moz-box-pack: center; 8322 justify-content: center; 8323 position: relative; 8324 margin: 10px 10% 0;
8325} 8326.location-popup_pin-search-box__3l5mJ { 8327 width: 100%; 8328 display: -moz-box; 8329 display: flex; 8330 -moz-box-align: center; 8331 align-items: center; 8332} 8333.location-popup_place-icon-city__1XAX5, .location-popup_place-icon__jSG0Q { 8334 position: absolute; 8335 z-index: 999; 8336} 8337.location-popup_place-icon__jSG0Q { 8338 color: #ffffff; 8339 padding-left: 8px; 8340} 8341.location-popup_place-icon__jSG0Q svg { 8342 width: 18px; 8343 height: 18px; 8344} 8345.location-popup_cancel-icon__FHujU { 8346 color: #fff; 8347 right: 10px; 8348 width: 16px; 8349 cursor: pointer; 8350 height: 16px; 8351 display: none; 8352 padding: 5px; 8353 position: absolute; 8354 background: #999; 8355 text-align: center; 8356 border-radius: 50%; 8357} 8358.location-popup_pin-search-box__3l5mJ>div>select { 8359/* -webkit-box-shadow: 0 0 10px #ffffff; 8360 box-shadow: 0 0 10px #ffffff; */ 8361 text-transform: capitalize; 8362 border: 1px solid #ffffff; 8363 color: #ffffff; 8364 width: 100%; 8365 margin: 0; 8366 display: -moz-box; 8367 display: flex; 8368 padding: 0 30px; 8369 -webkit-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 8370 -moz-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 8371 animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 8372 font-size: 16px; 8373 border-radius: 4px; 8374 height: 44px; 8375 moz-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite; 8376 webkit-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite; 8377} 8378.MuiButtonBase-root { 8379 color: inherit; 8380 border: 0; 8381 cursor: pointer; 8382 margin: 0; 8383 display: inline-flex; 8384 outline: 0; 8385 padding: 0; 8386 position: relative; 8387 align-items: center; 8388 user-select: none; 8389 border-radius: 0; 8390 vertical-align: middle; 8391 -moz-appearance: none; 8392 justify-content: center; 8393 text-decoration: none; 8394 background-color: transparent; 8395 -webkit-appearance: none; 8396 -webkit-tap-highlight-color: transparent; 8397} 8398.MuiButton-root { 8399 color: rgba(0, 0, 0, 0.87); 8400 padding: 6px 16px; 8401 font-size: 0.875rem; 8402 min-width: 64px; 8403 box-sizing: border-box; 8404 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; 8405 font-family: Roboto,sans-serif; 8406 font-weight: 500; 8407 line-height: 1.75; 8408 border-radius: 4px; 8409 text-transform: uppercase; 8410} 8411.MuiButton-contained { 8412 color: rgba(0, 0, 0, 0.87); 8413 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); 8414 background-color: #e0e0e0; 8415} 8416.MuiButtonBase-root.Mui-disabled { 8417 cursor: default; 8418 pointer-events: none; 8419} 8420.MuiButton-label { 8421 width: 100%; 8422 display: inherit; 8423 align-items: inherit; 8424 justify-content: inherit; 8425} 8426.cartButton_login_content__2j1f7 { 8427 display: -moz-box; 8428 display: flex; 8429 text-align: center; 8430 z-index: 9; 8431 font-size: 18px; 8432 font-weight: 500; 8433 color: #fff; 8434} 8435 8436.jss35 { 8437 top: 5px; 8438 right: 5px; 8439 padding: 4px; 8440 position: absolute; 8441 border-radius: 50%; 8442} 8443.jss67 { 8444 cursor: pointer; 8445 font-size: 15px; 8446 line-height: 1.3; 8447 padding-left: 5px; 8448} 8449.jss69 { 8450 color: #222222; 8451} 8452.jss80 { 8453 color: #fff; 8454 width: 100%; 8455 height: 52px; 8456 padding: 11px 16px; 8457 font-size: 18px; 8458 min-width: 88px; 8459 min-height: 36px; 8460 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; 8461 font-weight: 500; 8462 line-weight: 1em; 8463 border-radius: 4px; 8464 text-transform: uppercase; 8465 background-color: #E87325; 8466} 8467@media (min-width: 991px){ 8468 .cartButton_login_content__2j1f7 { 8469 font-weight: 500; 8470 } 8471} 8472 8473@media (max-width: 992px) { 8474 #location-lock-dialog { 8475 width: 100%; 8476 top: auto; 8477 bottom: 0; 8478 padding-left: 0; 8479 padding-right: 0; 8480 } 8481 .MuiFormGroup-row { 8482 display: block 8483 } 8484 .MuiIconButton-label input { 8485 margin: 0; 8486 } 8487} 8488</style> 8489<div role="presentation" class="MuiDialog-root jss34" style="display: none;position: fixed; z-index: 9999; inset: 0px;"> 8490<div class="MuiBackdrop-root" aria-hidden="true" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"></div> 8491<div tabindex="0" data-test="sentinelStart"></div> 8492<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;"> 8493 <div class="MuiPaper-root MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiPaper-elevation24 MuiPaper-rounded" role="dialog"> 8494 <div class="jss31 undefined" id="location-lock-dialog"> 8495 <button id="close-popup-delivery" class="MuiButtonBase-root MuiIconButton-root jss35" tabindex="0" type="button" aria-label="close">
8496 <span class="MuiIconButton-label"> 8497 <svg class="MuiSvgIcon-root" focusable="false" viewBox="0 0 24 24" aria-hidden="true"> 8498 <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> 8499 </svg> 8500 </span> 8501 <span class="MuiTouchRipple-root"></span> 8502 </button> 8503 <div> 8504 <div class="jss36">Select Delivery Location</div> 8505 <div class="jss37">Select a delivery location to see product availability</div> 8506 </div> 8507 <div class="MuiFormGroup-root jss63 MuiFormGroup-row" role="radiogroup"> 8508 <label for="jabodetabek" class="MuiFormControlLabel-root jss45"> 8509 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 jss47 Mui-checked MuiIconButton-colorSecondary" aria-disabled="false"> 8510 <span class="MuiIconButton-label"> 8511 <input id="jabodetabek" class="jss49" type="radio" value="Jabodetabek" checked="" name="location"> 8512 <span class="jss41"></span> 8513 </span> 8514 <span class="MuiTouchRipple-root"></span> 8515 </span> 8516 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 8517 <span class="jss67 jss69">Jabodetabek</span> 8518 </span> 8519 </label> 8520 <label for="non-jabodetabek" class="MuiFormControlLabel-root jss45"> 8521 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 MuiIconButton-colorSecondary" aria-disabled="false"> 8522 <span class="MuiIconButton-label"> 8523 <input id="non-jabodetabek" class="jss49" type="radio" value="Outside Jabodetabek" name="location"> 8524 <span class="jss40"></span> 8525 </span> 8526 <span class="MuiTouchRipple-root"></span> 8527 </span> 8528 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 8529 <span class="jss67 jss68">Outside Jabodetabek</span> 8530 </span> 8531 </label> 8532 </div> 8533 <div> 8534 <div class="MuiGrid-root location-popup_area-block__sp9Ws"> 8535 <div class="MuiGrid-root location-popup_pin-search-box__3l5mJ false"> 8536 <div class="MuiGrid-root location-popup_place-icon__jSG0Q"> 8537 <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> 8538 </div> 8539 <div class="MuiGrid-root location-popup_cancel-icon__FHujU false"> 8540 <i class="material-icons location-popup_clear-pin__s1dRc">close</i> 8541 </div> 8542 <div style="width: 100%;"> 8543 <select id="choose-location" class="form-control"> 8544 <option value="">Choose Location</option> 8545 <option value="jakarta">Jakarta</option> 8546 <option value="bogor">Bogor</option> 8547 <option value="depok">Depok</option> 8548 <option value="tangerang">Tangerang</option> 8549 <option value="bekasi">Bekasi</option> 8550 </select> 8551 </div> 8552 </div> 8553 </div> 8554 </div> 8555 <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=""> 8556 <span class="MuiButton-label"> 8557 <span class=""></span> 8558 <span id="location-lock-continue-btn" class="cartButton_login_content__2j1f7" style="font-weight: 500;" data-content="">Continue Shopping</span> 8559 </span> 8560 </button> 8561 </div> 8562 </div> 8563</div> 8564<div tabindex="0" data-test="sentinelEnd"></div> 8565</div> 8566
8567<script> 8568const jabodetabek = [ 8569 { 8570 "code": "jakarta", 8571 "city": "jakarta", 8572 "zip": [] 8573 }, 8574 { 8575 "code": "bogor", 8576 "city": "bogor", 8577 "zip": [] 8578 }, 8579 { 8580 "code": "depok", 8581 "city": "depok", 8582 "zip": [] 8583 }, 8584 { 8585 "code": "tangerang", 8586 "city": "tangerang", 8587 "zip": [] 8588 }, 8589 { 8590 "code": "bekasi", 8591 "city": "bekasi", 8592 "zip": [] 8593 } 8594] 8595let cityNonJabodetabek = [ 8596 8597 8598 8599 8600 8601 8602 8603 8604 "pengiriman_aceh", 8605 8606 8607 8608 8609 8610 "pengiriman_ambon", 8611 8612 8613 8614 8615 8616 "pengiriman_atambua", 8617 8618 8619 8620 8621 8622 "pengiriman_badung", 8623 8624 8625 8626 8627 8628 "pengiriman_bali", 8629 8630 8631 8632 8633 8634 "pengiriman_balikpapan", 8635 8636 8637 8638 8639 8640 "pengiriman_bandar lampung", 8641 8642 8643 8644 8645 8646 "pengiriman_bandung", 8647 8648 8649 8650 8651 8652 "pengiriman_bandung barat", 8653 8654 8655 8656 8657 8658 "pengiriman_banjarmasin", 8659 8660 8661 8662 8663 8664 "pengiriman_banyumas", 8665 8666 8667 8668 8669 8670 "pengiriman_banyuwangi", 8671 8672 8673 8674 8675 8676 "pengiriman_batam", 8677 8678 8679 8680 8681 8682 8683 8684 8685 8686 "pengiriman_biak", 8687 8688 8689 8690 8691 8692 "pengiriman_binjai", 8693 8694 8695 8696 8697 8698 "pengiriman_blitar", 8699 8700 8701 8702 8703 8704 "pengiriman_blora", 8705 8706 8707 8708 8709 8710 8711 8712 8713 8714 "pengiriman_bojonegoro", 8715 8716 8717 8718 8719 8720 "pengiriman_boyolali", 8721 8722 8723 8724 8725 8726 "pengiriman_bukittinggi", 8727 8728 8729 8730 8731 8732 "pengiriman_buleleng", 8733 8734 8735 8736 8737 8738 "pengiriman_ciamis", 8739 8740 8741 8742 8743 8744 "pengiriman_cianjur", 8745 8746 8747 8748 8749 8750 "pengiriman_cibinong", 8751 8752 8753 8754 8755 8756 "pengiriman_cikarang", 8757 8758 8759 8760 8761 8762 "pengiriman_cikupa", 8763 8764 8765 8766 8767 8768 "pengiriman_cilacap", 8769 8770 8771 8772 8773 8774 "pengiriman_cileunyi", 8775 8776 8777 8778 8779 8780 "pengiriman_cimahi", 8781 8782 8783 8784 8785 8786 "pengiriman_cirebon", 8787 8788 8789 8790 8791 8792 "pengiriman_ciwidey", 8793 8794 8795 8796 8797 8798 "pengiriman_deli serdang", 8799 8800 8801 8802 8803 8804 "pengiriman_demak", 8805 8806 8807 8808 8809 8810 "pengiriman_denpasar", 8811 8812 8813 8814 8815 8816 8817 8818 8819 8820 "pengiriman_garut", 8821 8822 8823 8824 8825 8826 "pengiriman_gianyar", 8827 8828 8829 8830 8831 8832 "pengiriman_gresik", 8833 8834 8835 8836 8837 8838 "pengiriman_gunung kidul", 8839 8840 8841 8842 8843 8844 8845 8846 8847 8848 "pengiriman_jambi", 8849 8850 8851 8852 8853 8854 "pengiriman_jayapura", 8855 8856 8857 8858 8859 8860 "pengiriman_jember", 8861 8862 8863 8864 8865 8866 "pengiriman_jepara", 8867 8868 8869 8870 8871 8872 "pengiriman_jombang", 8873 8874 8875 8876 8877 8878 "pengiriman_karanganyar", 8879 8880 8881 8882 8883 8884 "pengiriman_karawang", 8885 8886 8887 8888 8889 8890 "pengiriman_karo", 8891 8892 8893 8894 8895 8896 "pengiriman_kebumen", 8897 8898 8899 8900 8901 8902 "pengiriman_kediri", 8903 8904 8905 8906 8907 8908 "pengiriman_keerom", 8909 8910 8911 8912 8913 8914 "pengiriman_kendal", 8915 8916 8917 8918 8919 8920 "pengiriman_klaten", 8921 8922 8923 8924 8925 8926 8927 8928 8929 8930 "pengiriman_kudus", 8931 8932 8933 8934 8935 8936 "pengiriman_kupang", 8937 8938 8939 8940 8941 8942 "pengiriman_lainnya", 8943 8944 8945 8946 8947 8948 "pengiriman_lamongan", 8949 8950 8951 8952 8953 8954 "pengiriman_lampung", 8955 8956 8957 8958 8959 8960 "pengiriman_lampung barat", 8961 8962 8963 8964 8965 8966 "pengiriman_lembang", 8967 8968 8969 8970 8971 8972 "pengiriman_lombok", 8973 8974 8975 8976 8977 8978 "pengiriman_lumajang", 8979 8980 8981 8982 8983 8984 "pengiriman_madiun", 8985 8986 8987 8988 8989 8990 "pengiriman_magelang", 8991 8992 8993 8994 8995 8996 "pengiriman_majalengka", 8997 8998 8999 9000 9001 9002 "pengiriman_makassar", 9003 9004 9005 9006 9007 9008 "pengiriman_malang", 9009 9010 9011 9012 9013 9014 "pengiriman_manado", 9015 9016 9017 9018 9019 9020 "pengiriman_medan", 9021 9022 9023 9024 9025 9026 "pengiriman_mengwi", 9027 9028 9029 9030 9031 9032 "pengiriman_mojokerto", 9033 9034 9035 9036 9037 9038 "pengiriman_nganjuk", 9039 9040 9041 9042 9043 9044 "pengiriman_ngawi", 9045 9046 9047 9048 9049 9050 "pengiriman_padang", 9051 9052 9053 9054 9055 9056 "pengiriman_palembang", 9057 9058 9059 9060 9061 9062 "pengiriman_pasuruan", 9063 9064 9065 9066 9067 9068 "pengiriman_pati", 9069 9070 9071 9072 9073 9074 "pengiriman_pekalongan", 9075 9076 9077 9078 9079 9080 "pengiriman_pekanbaru", 9081 9082 9083 9084 9085 9086 "pengiriman_pemalang", 9087 9088 9089 9090 9091 9092 "pengiriman_ponorogo", 9093 9094 9095 9096 9097 9098 "pengiriman_pontianak", 9099 9100 9101 9102 9103 9104 "pengiriman_probolinggo", 9105 9106 9107 9108 9109 9110 "pengiriman_purbalingga", 9111 9112 9113 9114 9115 9116 "pengiriman_purwakarta", 9117 9118 9119 9120 9121 9122 "pengiriman_purwokerto", 9123 9124 9125 9126 9127 9128 "pengiriman_rembang", 9129 9130 9131 9132 9133 9134 "pengiriman_riau", 9135 9136 9137 9138 9139 9140 "pengiriman_salatiga", 9141 9142 9143 9144 9145 9146 "pengiriman_samarinda", 9147 9148 9149 9150 9151 9152 "pengiriman_semarang", 9153 9154 9155 9156 9157 9158 "pengiriman_sentani", 9159 9160 9161 9162 9163 9164 "pengiriman_serang", 9165 9166 9167 9168 9169 9170 "pengiriman_sidoarjo", 9171 9172 9173 9174 9175 9176 "pengiriman_singkawang", 9177 9178 9179 9180 9181 9182 "pengiriman_sragen", 9183 9184 9185 9186 9187 9188 "pengiriman_subang", 9189 9190 9191 9192 9193 9194 "pengiriman_sukabumi", 9195 9196 9197 9198 9199 9200 "pengiriman_sumbawa", 9201 9202 9203 9204 9205 9206 "pengiriman_surabaya", 9207 9208 9209 9210 9211 9212 "pengiriman_surakarta solo", 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 "pengiriman_tasikmalaya", 9223 9224 9225 9226 9227 9228 "pengiriman_tegal", 9229 9230 9231 9232 9233 9234 "pengiriman_timika", 9235 9236 9237 9238 9239 9240 "pengiriman_wamena", 9241 9242 9243 9244 9245 9246 "pengiriman_wiyung", 9247 9248 9249 9250 9251 9252 "pengiriman_wonokromo", 9253 9254 9255 9256 9257 9258 "pengiriman_yogyakarta", 9259 9260 9261 9262 9263 9264 9265] 9266console.log(cityNonJabodetabek) 9267let non_jabodetabek = [] 9268for(var i=0;i<cityNonJabodetabek.length;i++) { 9269 const obj = { 9270 "code": cityNonJabodetabek[i].toLowerCase().replace('pengiriman_', '').replace(' ','-'), 9271 "city": cityNonJabodetabek[i].replace('pengiriman_', '').replace(' ','-'), 9272 "zip": [] 9273 } 9274 non_jabodetabek.push(obj) 9275} 9276let current_location = getCookie("location_delivery") 9277$("[name=location]").change(function(){ 9278 let v = $(this).val() 9279 let option = [] 9280 if(v == 'Jabodetabek') { 9281 for(var i=0;i<jabodetabek.length;i++) { 9282 const jabodetabekHtml = `<option value=${jabodetabek[i].city}>${jabodetabek[i].city}</option>` 9283 option.push(jabodetabekHtml) 9284 } 9285 $("#choose-location").html(`<option value="">Choose Location</option>${option}`) 9286 } else { 9287 for(var i=0;i<non_jabodetabek.length;i++) { 9288 const nonjabodetabekHtml = `<option value=${non_jabodetabek[i].city}>${non_jabodetabek[i].city}</option>` 9289 option.push(nonjabodetabekHtml) 9290 } 9291 $("#choose-location").html(`<option value="">Choose Location</option>${option}`) 9292 } 9293}) 9294 9295$("#location-lock-submit").click(function(e){
9296 let select = $("#choose-location") 9297 let value = select.val().toLowerCase() 9298 console.log(value) 9299 if(select.val() == "") { 9300 return alert("Choose Your Location") 9301 e.preventDefault() 9302 } 9303 setCookie("location_delivery",value,10A0A0A); 9304 9305 location.reload(); 9306 9307}) 9308 9309$("#close-popup-delivery").click(function(){ 9310 $(".MuiDialog-root").hide() 9311 if(!current_location){ 9312 setCookie("location_delivery","jakarta",10A0A0A); 9313 $("#loc_delivery_city, #loc_delivery_city_mobile").text("Jakarta") 9314 } 9315}) 9316$("#loc_delivery, #loc_delivery_mobile").click(function(){ 9317 $(".MuiDialog-root").show() 9318}) 9319 9320 9321if(!current_location){ 9322 9323} else { 9324 $("#loc_delivery_city, #loc_delivery_city_mobile").text(current_location) 9325 console.log(current_location) 9326 $("#choose-location").each(function(){ 9327 if(current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi'){ 9328 $("#jabodetabek").trigger("click") 9329 } else { 9330 $("#non-jabodetabek").trigger("click") 9331 } 9332 $("#choose-location").find("option[value="+current_location+"]").attr("selected", "selected") 9333 }) 9334} 9335 9336// 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'){ 9337// $("#timeMalam").attr("disabled", false) 9338// } else { 9339// $("#timeMalam").attr("disabled", true) 9340// } 9341 9342if(current_location && current_location != 'jakarta') { 9343 $("#self-pickup").attr("disabled", true) 9344} 9345 9346function setCookie(name,value,days) { 9347 var expires = ""; 9348 if (days) { 9349 var date = new Date(); 9350 date.setTime(date.getTime() + (days*24*60*60*1000)); 9351 expires = "; expires=" + date.toUTCString(); 9352 } 9353 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 9354} 9355function getCookie(name) { 9356 var nameEQ = name + "="; 9357 var ca = document.cookie.split(';'); 9358 for(var i=0;i < ca.length;i++) { 9359 var c = ca[i]; 9360 while (c.charAt(0)==' ') c = c.substring(1,c.length); 9361 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 9362 } 9363 return null; 9364} 9365</script>
9365 9366<!-- One Tap --> 9367
9367<script> 9368 console.log("Outerbloom..."); 9369 </script>
9369 9370<div id="shopify-block-ANVEzSUcxTUxZOGpwZ__9703700522657871012" class="shopify-block shopify-app-block"> 9371<link rel="stylesheet" href="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.css" />
9372<script> 9373const widgetConfig = { 9374 id: "clz7897za002cz7otleaz0d3d", 9375 showQuickResponse: false, 9376 quickResponsesData: [], 9377 themeColor: "#ffffff", 9378 widgetText: "", 9379 radiusType: "circle", 9380 widgetIconType: "whatsapp", 9381 position: "right", 9382 storeLogo: "", 9383 storeName: "Outerbloom", 9384 storeDescription: "", 9385 size: "small", 9386 showCard: false, 9387 widgetColorType: "solid", 9388 widgetColor1: "#008069", 9389 widgetColor2: "#008069", 9390 social: { 9391 socialOrders: ["instagram","tiktok","facebook","x","youtube","linkedin","email"], 9392 values: { 9393 instagram: { 9394 enabled: false, 9395 value: "", 9396 }, 9397 facebook: { 9398 enabled: false, 9399 value: "", 9400 }, 9401 email: { 9402 enabled: false, 9403 value: "", 9404 }, 9405 x: { 9406 enabled: false, 9407 value: "", 9408 }, 9409 tiktok: { 9410 enabled: false, 9411 value: "", 9412 }, 9413 linkedin: { 9414 enabled: false, 9415 value: "", 9416 }, 9417 youtube: { 9418 enabled: false, 9419 value: "", 9420 }, 9421 }, 9422 }, 9423}; 9424 9425function initializeWidget() { 9426 if (typeof BBBWidget !== 'undefined') { 9427 BBBWidget.init(widgetConfig); 9428 } else { 9429 setTimeout(initializeWidget, 100); 9430 } 9431} 9432 9433initializeWidget();</script>
9433 9434 9435 9436</div><div id="shopify-block-ATzRpVTBPU3k1R2pnW__286197278318599166" class="shopify-block shopify-app-block"> 9437 9438 9439<div style="position: fixed; bottom: 0; right: 0"></div> 9440
9441<script> 9442console.info("bitlogin extension version: v2.5.7"); 9443 9444const googleScript = document.createElement("script"); 9445googleScript.setAttribute("src", "https://accounts.google.com/gsi/client"); 9446document.head.append(googleScript); 9447 9448const bitLoginBaseUrl = "https://api.bitbybit.studio"; 9449const apiUrl = `${bitLoginBaseUrl}/bitlogin/api`; 9450 9451const 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"}}; 9452const 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
9452n1.oa2-cs.v1.1cb5f9085a202341f60daf5a7be16c570ccc0b4bd5908b3afd080f34e9b8935d","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null}]; 9453const redirectUrl = appearance.redirectLink; 9454 9455let locationCacheSet = false; 9456let errorLocation = false; 9457let oneTapSet = false; 9458 9459let bitloginCache = { 9460appearance: appearance, 9461config: config 9462}; 9463 9464let isInitializing = false; 9465const queue = []; 9466 9467// Add CSS for the popup 9468const popupStyles = document.createElement('style'); 9469popupStyles.textContent = ` 9470/* Styles for login popup */ 9471.bitlogin-popup-overlay { 9472 position: fixed; 9473 top: 0; 9474 left: 0; 9475 width: 100%; 9476 height: 100%; 9477 background: rgba(0, 0, 0, 0.45); 9478 backdrop-filter: blur(4px); 9479 display: flex; 9480 align-items: center; 9481 justify-content: center; 9482 opacity: 0; 9483 transition: opacity 0.3s ease-in-out; 9484 z-index: 999999; 9485} 9486 9487.bitlogin-popup-overlay.visible { 9488 opacity: 1; 9489} 9490 9491.bitlogin-popup { 9492 background: #FFFFFF; 9493 box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); 9494 border-radius: 16px; 9495 width: 100%; 9496 max-width: 560px; 9497 display: flex; 9498 overflow: hidden; 9499 position: relative; 9500 opacity: 0; 9501 transform: translateY(20px) scale(0.98); 9502 transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); 9503} 9504 9505.bitlogin-popup.visible { 9506 opacity: 1; 9507 transform: translateY(0) scale(1); 9508} 9509 9510.bitlogin-popup-with-image { 9511 max-width: 640px; 9512} 9513 9514.bitlogin-popup-right-image { 9515 flex-direction: row-reverse; 9516} 9517 9518.bitlogin-popup-image { 9519 object-fit: cover; 9520 width: 50%; 9521 height: auto; 9522} 9523 9524.bitlogin-popup-content { 9525 padding: 32px; 9526 position: relative; 9527 width: 50%; 9528} 9529 9530.bitlogin-popup-close { 9531 position: absolute; 9532 top: 16px; 9533 right: 16px; 9534 background: white; 9535 border: none; 9536 width: 30px; 9537 height: 30px; 9538 display: flex; 9539 align-items: center; 9540 justify-content: center; 9541 cursor: pointer; 9542 transition: background-color 0.2s; 9543 color: inherit; 9544 padding: 0; 9545} 9546 9547.bitlogin-popup-close:hover { 9548 background-color: #e5e5e5; 9549} 9550 9551.bitlogin-popup-buttons { 9552 display: flex; 9553 flex-direction: column; 9554 gap: 12px; 9555 margin-top: 24px; 9556} 9557 9558/* Button styles within popup - override width for popup buttons */ 9559.bitlogin-popup-buttons #google-login, 9560.bitlogin-popup-buttons #facebook-login, 9561.bitlogin-popup-buttons #apple-login, 9562.bitlogin-popup-buttons #whatsapp-login, 9563.bitlogin-popup-buttons #microsoft-login, 9564.bitlogin-popup-buttons #twitter-login, 9565.bitlogin-popup-buttons #amazon-login, 9566.bitlogin-popup-buttons #instagram-login, 9567.bitlogin-popup-buttons #magic-link-login, 9568.bitlogin-popup-buttons #mobile-app-login { 9569 width: 100% !important; 9570 font-family: inherit !important; 9571} 9572 9573.bitlogin-popup-footer { 9574 margin-top: 32px; 9575 text-align: center; 9576 font-size: 14px; 9577 opacity: 0.6; 9578} 9579 9580/* Modern Typography */ 9581.bitlogin-popup h2 { 9582 margin-top: 12px; 9583 font-size: 21px !important; 9584 line-height: 1.2 !important; 9585 font-weight: 700 !important; 9586 letter-spacing: -0.02em !important; 9587 margin-bottom: 16px !important; 9588} 9589 9590.bitlogin-popup-header { 9591 position: relative; 9592 margin-bottom: 24px; 9593} 9594 9595/* Modern gradient accent */ 9596.bitlogin-popup-content > div { 9597 font-size: 16px !important; 9598 line-height: 1.2 !important; 9599 opacity: 0.85 !important; 9600} 9601 9602/* Enhanced button interactions */ 9603.bitlogin-popup-buttons button { 9604 position: relative; 9605 overflow: hidden; 9606} 9607 9608@keyframes ripple { 9609 0% { 9610 transform: scale(0, 0); 9611 opacity: 0.5; 9612 } 9613 100% { 9614 transform: scale(100, 100); 9615 opacity: 0; 9616 } 9617} 9618 9619/* Responsive adjustments */ 9620@media (max-width: 640px) { 9621 .bitlogin-popup { 9622 max-width: 90%; 9623 width: 90%; 9624 margin: 0 16px; 9625 } 9626 9627 .bitlogin-popup-with-image { 9628 flex-direction: column !important; 9629 } 9630 9631 .bitlogin-popup-image { 9632 width: 100%; 9633 height: 180px; 9634 } 9635 9636 .bitlogin-popup-content { 9637 padding: 24px; 9638 } 9639 9640 .bitlogin-popup h2 { 9641 font-size: 24px !important; 9642 } 9643} 9644`; 9645 9646document.head.appendChild(popupStyles); 9647 9648// Add fonts link for different font options 9649const fontsLink = document.createElement('link'); 9650fontsLink.rel = 'stylesheet'; 9651fontsLink.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'; 9652document.head.appendChild(fontsLink); 9653 9654(async () => { 9655try { 9656 let host = window.location.host; 9657 if (host === "admin.shopify.com") { 9658 host = `${window.location.pathname.split("/")[2]}.myshopify.com`; 9659 } 9660 9661 const urlSearchParams = new URLSearchParams(window.location.search); 9662 const checkoutUrl = urlSearchParams.get("checkout_url"); 9663 9664 async function init({ inputRef, index }) { 9665 if (isInitializing) { 9666 queue.push(() => init({ inputRef, index })); 9667 return; 9668 } 9669 9670 isInitializing = true; 9671 9672 try { 9673 let bitLoginSectionRoot = document.querySelector( 9674 `.bitlogin-root[data-index="${index}"]` 9675 ); 9676 9677 const formRef = inputRef?.closest( 9678 "form:not([action='/account/recover'])" 9679 ); 9680 9681 if (formRef && !bitLoginSectionRoot) { 9682 await getLocation(); 9683 9684 bitLoginSectionRoot = document.createElement(`div`); 9685 9686 bitLoginSectionRoot.setAttribute("class", "bitlogin-root"); 9687 bitLoginSectionRoot.setAttribute("data-index", `${index}`); 9688 9689 updateAppearance({ 9690 formRef, 9691 rootRef: bitLoginSectionRoot, 9692 host, 9693 }); 9694 } 9695 } catch (err) { 9696 console.error(`error while initiating bitlogin extensions`, err); 9697 } finally { 9698 // Release the lock 9699 isInitializing = false; 9700 9701 // Check if there are pending items in the queue 9702 if (queue.length > 0) { 9703 // Process the next function in the queue 9704 const nextFunction = queue.shift(); 9705 nextFunction(); 9706 } 9707 } 9708 } 9709 9710 function initAll() { 9711 return new Promise((resolve, reject) => { 9712 setTimeout(async () => { 9713 const inputRefs = document.querySelectorAll( 9714 'input[name="customer[email]"]' 9715 ); 9716 9717 for (let i = 0; i < inputRefs.length; i++) { 9718 const currentInputRef = inputRefs[i]; 9719 const isVisible = isElementVisible(currentInputRef); 9720 9721 if (isVisible) { 9722 await init({ inputRef: currentInputRef, index: i }); 9723 } 9724 } 9725 9726 resolve("ok"); 9727 }, 100); 9728 });
9729 } 9730 9731 const observer = new MutationObserver((mutationsList) => { 9732 for (let mutation of mutationsList) { 9733 initAll(); 9734 } 9735 }); 9736 9737 observer.observe(document.body, { 9738 childList: true, 9739 subtree: true, 9740 attributes: true, 9741 }); 9742 9743 initAll(); 9744 9745 if (appearance.googleOneTap) { 9746 setupOneTap({ host, checkoutUrl }); 9747 } 9748 9749 // Initialize popup 9750 await initPopup(host); 9751} catch (error) { 9752 console.error("Error initializing BitLogin:", error); 9753} 9754})(); 9755 9756async function initPopup(host) { 9757// Check if user is already logged in using Liquid checks properly 9758const isLoggedIn = false || 9759 document.querySelector('.customer-logout-link') || 9760 document.querySelector('.account-link') || 9761 window.location.pathname.includes('/account'); 9762 9763if (isLoggedIn) { 9764 return; // User is logged in, don't show popup 9765} 9766 9767try { 9768 // Fetch the popup configuration 9769 const popupConfig = await fetch(`${apiUrl}/appearance/popup/domain/${host}`) 9770 .then(res => res.json()) 9771 .catch(err => { 9772 console.error('Error fetching popup configuration:', err); 9773 return null; 9774 }); 9775 9776 if (!popupConfig || !popupConfig.enabled) { 9777 return; // Don't show popup if disabled or config not found 9778 } 9779 9780 // Create popup after 10 seconds 9781 setTimeout(() => { 9782 // Check if user is still on the page and still not logged in 9783 if (document.visibilityState === 'visible') { 9784 // Additional check in case user logged in during the 10 second wait 9785 const currentlyLoggedIn = false || 9786 document.querySelector('.customer-logout-link') || 9787 document.querySelector('.account-link'); 9788 9789 if (!currentlyLoggedIn) { 9790 createLoginPopup(popupConfig, host); 9791 } 9792 } 9793 }, 10000); 9794} catch (error) { 9795 console.error('Error initializing popup:', error); 9796} 9797} 9798 9799function createLoginPopup(popupConfig, host) { 9800// Font mapping 9801const fontFamilyMap = { 9802 system_fonts: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif', 9803 montserrat: 'Montserrat, sans-serif', 9804 roboto: 'Roboto, sans-serif', 9805 open_sans: 'Open Sans, sans-serif', 9806 noto_sans: 'Noto Sans, sans-serif', 9807 lato: 'Lato, sans-serif', 9808 poppins: 'Poppins, sans-serif', 9809 quicksand: 'Quicksand, sans-serif', 9810 raleway: 'Raleway, sans-serif', 9811 pt_sans: 'PT Sans, sans-serif', 9812 oswald: 'Oswald, sans-serif', 9813}; 9814 9815// Create overlay 9816const overlay = document.createElement('div'); 9817overlay.className = 'bitlogin-popup-overlay'; 9818 9819// Create popup container with appropriate styling 9820const popup = document.createElement('div'); 9821popup.className = 'bitlogin-popup'; 9822 9823if (popupConfig.layout === 'default') { 9824 popup.style.maxWidth = '400px'; 9825} 9826 9827// Function to close the popup 9828const closePopup = () => { 9829 overlay.classList.remove('visible'); 9830 popup.classList.remove('visible'); 9831 setTimeout(() => { 9832 if (document.body.contains(overlay)) { 9833 document.body.removeChild(overlay); 9834 } 9835 }, 300); 9836}; 9837 9838// Add click handler to the overlay to close when clicking outside 9839overlay.addEventListener('click', (event) => { 9840 // Close only if clicking directly on the overlay, not its children 9841 if (event.target === overlay) { 9842 closePopup(); 9843 } 9844}); 9845 9846// Add escape key handler to close popup 9847document.addEventListener('keydown', (event) => { 9848 if (event.key === 'Escape' && document.body.contains(overlay)) { 9849 closePopup(); 9850 } 9851}); 9852 9853// Create layout with image if specified 9854let contentWrapper; 9855if (popupConfig.layout !== 'default' && popupConfig.popupImage) { 9856 popup.classList.add('bitlogin-popup-with-image'); 9857 9858 if (popupConfig.layout === 'right') { 9859 popup.classList.add('bitlogin-popup-right-image'); 9860 } 9861 9862 // Add image 9863 const image = document.createElement('img'); 9864 image.className = 'bitlogin-popup-image'; 9865 image.src = popupConfig.popupImage; 9866 image.alt = 'Login'; 9867 image.loading = 'lazy'; 9868 popup.appendChild(image); 9869 9870 // Create content container 9871 contentWrapper = document.createElement('div'); 9872 contentWrapper.className = 'bitlogin-popup-content'; 9873 9874 if (popupConfig.layout === 'right') { 9875 const closeButton = document.createElement('button'); 9876 closeButton.className = 'bitlogin-popup-close'; 9877 closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="icon.png"> 9878 <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 9879 </svg>`; 9880 closeButton.setAttribute('aria-label', 'Close'); 9881 closeButton.onclick = closePopup; 9882 9883 popup.appendChild(closeButton); 9884 } 9885} else { 9886 contentWrapper = document.createElement('div'); 9887 contentWrapper.className = 'bitlogin-popup-content'; 9888 contentWrapper.style.width = '100%'; 9889} 9890 9891// Set background style 9892if (popupConfig.backgroundTheme === 'gradient') { 9893 contentWrapper.style.background = `linear-gradient(135deg, ${popupConfig.backgroundPopupColor}, ${popupConfig.gradientColor})`; 9894} else { 9895 contentWrapper.style.backgroundColor = popupConfig.backgroundPopupColor; 9896} 9897 9898// Apply font family 9899contentWrapper.style.setProperty('font-family', fontFamilyMap[popupConfig.font] || fontFamilyMap.system_fonts, 'important'); 9900 9901if (popupConfig.layout !== 'right') { 9902 const closeButton = document.createElement('button'); 9903 closeButton.className = 'bitlogin-popup-close'; 9904 closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="icon.png"> 9905 <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 9906 </svg>`; 9907 closeButton.setAttribute('aria-label', 'Close'); 9908 closeButton.onclick = closePopup; 9909 9910 contentWrapper.appendChild(closeButton); 9911} 9912 9913// Add heading with subtle animation effect 9914const header = document.createElement('div'); 9915header.className = 'bitlogin-popup-header'; 9916 9917const heading = document.createElement('h2'); 9918heading.textContent = popupConfig.headingText || 'Sign in for exclusive benef
9918its'; 9919heading.style.color = popupConfig.fontColor; 9920header.appendChild(heading); 9921 9922// Add body text with improved formatting 9923const bodyText = document.createElement('div'); 9924bodyText.innerHTML = popupConfig.bodyText || 'Join our community to access exclusive offers and a personalized shopping experience.'; 9925bodyText.style.color = popupConfig.fontColor; 9926header.appendChild(bodyText); 9927 9928contentWrapper.appendChild(header); 9929 9930// Create buttons container with modern styling 9931const buttonsContainer = document.createElement('div'); 9932buttonsContainer.className = 'bitlogin-popup-buttons'; 9933 9934// Add social buttons 9935const providerLabels = { 9936 'GOOGLE': 'Continue with Google', 9937 'FACEBOOK': 'Continue with Facebook', 9938 'APPLE': 'Continue with Apple', 9939 'WHATSAPP': 'Continue with WhatsApp', 9940 'MAGIC_LINK': 'Continue with Email', 9941}; 9942 9943// Add first login provider button 9944if (popupConfig.loginProvider1 !== 'NONE') { 9945 const buttonConfig = { 9946 theme: popupConfig.colorScheme || 'match', 9947 customColor: popupConfig.textColor, 9948 format: 'contentFlex', 9949 buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider1.toLowerCase()], 9950 hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true, 9951 style: popupConfig.style || 'rounded', 9952 size: popupConfig.size || 'medium', 9953 colorScheme: popupConfig.colorScheme || 'match', 9954 backgroundColor: popupConfig.backgroundColor || '#3B82F6', 9955 textColor: popupConfig.textColor || '#FFFFFF', 9956 outlineColor: popupConfig.outlineColor || '#3B82F6', 9957 host: host 9958 }; 9959 9960 const button1 = createSocialLoginButton(popupConfig.loginProvider1, buttonConfig); 9961 9962 // Handle click event - this overrides the default click handler in createSocialLoginButton 9963 button1.onclick = () => { 9964 onClickSocialLogin({ provider: popupConfig.loginProvider1.toLowerCase(), host }); 9965 closePopup(); 9966 }; 9967 9968 buttonsContainer.appendChild(button1); 9969} 9970 9971// Add second login provider button if enabled 9972if (popupConfig.loginProvider2 !== 'NONE') { 9973 const buttonConfig = { 9974 theme: popupConfig.colorScheme || 'match', 9975 customColor: popupConfig.textColor, 9976 format: 'contentFlex', 9977 buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider2.toLowerCase()], 9978 hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true, 9979 style: popupConfig.style || 'rounded', 9980 size: popupConfig.size || 'medium', 9981 colorScheme: popupConfig.colorScheme || 'match', 9982 backgroundColor: popupConfig.backgroundColor || '#3B82F6', 9983 textColor: popupConfig.textColor || '#FFFFFF', 9984 outlineColor: popupConfig.outlineColor || '#3B82F6', 9985 host: host 9986 }; 9987 9988 const button2 = createSocialLoginButton(popupConfig.loginProvider2, buttonConfig); 9989 9990 // Handle click event - this overrides the default click handler in createSocialLoginButton 9991 button2.onclick = () => { 9992 onClickSocialLogin({ provider: popupConfig.loginProvider2.toLowerCase(), host }); 9993 closePopup(); 9994 }; 9995 9996 buttonsContainer.appendChild(button2); 9997} 9998 9999contentWrapper.appendChild(buttonsContainer); 10000 10001// Append content to popup 10002popup.appendChild(contentWrapper); 10003 10004// Append popup to overlay 10005overlay.appendChild(popup); 10006 10007// Append overlay to body 10008document.body.appendChild(overlay); 10009 10010// Trigger animation with slight delay for better perceived performance 10011setTimeout(() => { 10012 overlay.classList.add('visible'); 10013 setTimeout(() => { 10014 popup.classList.add('visible'); 10015 }, 50); 10016}, 10); 10017} 10018 10019window.addEventListener("load", () => { 10020window.addEventListener("message", (event) => { 10021 const receivedData = event.data; 10022 10023 if (receivedData.type === "authorize") { 10024 post( 10025 JSON.parse( 10026 JSON.stringify({ 10027 "customer[email]": receivedData.email, 10028 "customer[password]": receivedData.password, 10029 form_type: "customer_login", 10030 utf8: "â", 10031 return_url: redirectUrl, 10032 }) 10033 ) 10034 ); 10035 } else if (receivedData.type === "rejected") { 10036 if (receivedData.reason === "customer_account_disabled") { 10037 showAlert( 10038 "Your account needs to be activated. We've sent you an activation link - please check your email to complete this step." 10039 ); 10040 } else if (receivedData.reason === "customer_entry_created_email_not_set") { 10041 showAlert( 10042 "A new account was created but requires an email address. Please update your account with a valid email address to continue." 10043 ); 10044 } else if (receivedData.reason === "customer_exist_email_not_set") { 10045 showAlert( 10046 "Your existing account is missing an email address. Please contact support to update your account with a valid email address." 10047 ); 10048 } 10049 } 10050 10051 if (receivedData.type === "customer_authenticated") { 10052 // Dispatch a custom event that merchants can listen for to implement their custom logic 10053 const customerAuthEvent = new CustomEvent('bitlogin:customer_authenticated', { 10054 detail: { 10055 provider: receivedData.provider, 10056 customer: receivedData.customer, 10057 shopifyCustomerCreated: receivedData.shopifyCustomerCreated 10058 } 10059 });
10060 10061 // Dispatch the event on the window object so merchants can listen for it 10062 window.dispatchEvent(customerAuthEvent); 10063 10064 } 10065}); 10066}); 10067 10068// Reusable functions for social login buttons 10069function createSocialLoginButton(provider, config = {}) { 10070const { 10071 theme = 'match', 10072 customColor = null, 10073 format = 'contentFlex', 10074 buttonText = null, 10075 hasShadow = true, 10076 style = 'rounded', 10077 size = 'medium', 10078 colorScheme = 'match', 10079 backgroundColor = '#3B82F6', 10080 textColor = '#FFFFFF', 10081 outlineColor = '#3B82F6', 10082 rootRef = null, 10083 host = null 10084} = config; 10085 10086// Create button element with appropriate ID and attributes 10087const button = document.createElement('button'); 10088button.id = `${provider.toLowerCase()}-login`; 10089button.type = 'button'; 10090 10091// Set the inner SVG based on provider 10092switch (provider.toUpperCase()) { 10093 case 'GOOGLE': 10094 button.innerHTML = googleLoginIcon(theme, customColor); 10095 break; 10096 case 'FACEBOOK': 10097 button.innerHTML = facebookLoginIcon(theme, customColor); 10098 break; 10099 case 'APPLE': 10100 button.innerHTML = appleLoginIcon(theme, customColor); 10101 break; 10102 case 'WHATSAPP': 10103 button.innerHTML = whatsappLoginIcon(theme, customColor); 10104 break; 10105 case 'MICROSOFT': 10106 button.innerHTML = microsoftLoginIcon(theme, customColor); 10107 break; 10108 case 'TWITTER': 10109 button.innerHTML = twitterLoginIcon(theme, customColor); 10110 break; 10111 case 'AMAZON': 10112 button.innerHTML = amazonLoginIcon(theme, customColor); 10113 break; 10114 case 'INSTAGRAM': 10115 button.innerHTML = instagramLoginIcon(theme, customColor); 10116 break; 10117 case 'MAGIC_LINK': 10118 button.innerHTML = magicLinkLoginIcon(theme, customColor); 10119 break; 10120 case 'MOBILE_APP': 10121 button.innerHTML = mobileAppLoginIcon(theme, customColor); 10122 break; 10123 case 'LINKEDIN': 10124 button.innerHTML = linkedinLoginIcon(theme, customColor); 10125 break; 10126} 10127 10128// Add text if format isn't icon-only and buttonText is provided 10129if (format !== "wrapperFlexContainerOnlyLogo" && buttonText) { 10130 button.innerHTML += `<p>${buttonText}</p>`; 10131} 10132 10133// Apply styling 10134// Shadow 10135if (hasShadow) { 10136 const shadowProperties = `0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)`; 10137 button.style["box-shadow"] = shadowProperties; 10138} 10139 10140// Border radius 10141const radiusProperties = 10142 style === "rounded" 10143 ? "8px" 10144 : style === "square" 10145 ? "0px" 10146 : style === "fullRounded" 10147 ? format === "wrapperFlexContainerOnlyLogo" 10148 ? "50%" 10149 : "50px" 10150 : undefined; 10151button.style["border-radius"] = radiusProperties; 10152 10153// Size 10154const sizeProperties = 10155 size === "medium" 10156 ? "12px" 10157 : size === "small" 10158 ? "8px" 10159 : size === "large" 10160 ? "16px" 10161 : "8px"; 10162 10163button.style["padding-block"] = sizeProperties; 10164 10165// Format styling 10166if (format) { 10167 if ( 10168 format === "contentFlexReverse" || 10169 format === "contentFlexCenterReverse" 10170 ) { 10171 const flexDir = `row-reverse`; 10172 button.style["flex-direction"] = flexDir; 10173 } 10174 10175 if ( 10176 format === "contentFlexCenter" || 10177 format === "contentFlexCenterReverse" 10178 ) { 10179 const justifyContent = `center`; 10180 button.style["justify-content"] = justifyContent; 10181 } else if ( 10182 format === "contentFlex" || 10183 format === "contentFlexReverse" 10184 ) { 10185 const buttonTextElement = button.querySelector("p"); 10186 if (buttonTextElement) { 10187 buttonTextElement.style["flex-grow"] = 1; 10188 buttonTextElement.style["text-align"] = "center"; 10189 } 10190 } 10191 10192 if (format === "wrapperFlexContainerOnlyLogo" && rootRef) { 10193 rootRef.style["flex-direction"] = "row"; 10194 rootRef.style["gap"] = "8px"; 10195 rootRef.style["display"] = "flex"; 10196 rootRef.style["flex-wrap"] = "wrap"; 10197 10198 const sizeMapping = { 10199 small: "52px", 10200 medium: "62px", 10201 large: "72px", 10202 }; 10203 const buttonSize = sizeMapping[size] || "52px"; 10204 10205 button.style["margin"] = 0; 10206 button.style["width"] = buttonSize; 10207 button.style["height"] = buttonSize; 10208 button.style["display"] = "flex"; 10209 button.style["align-items"] = "center"; 10210 button.style["justify-content"] = "center"; 10211 10212 const svgElement = button.querySelector("svg"); 10213 if (svgElement) { 10214 svgElement.style["flex"] = "none"; 10215 } 10216 } 10217} 10218 10219// Color scheme styling 10220if (colorScheme === "black") { 10221 button.classList.add("scheme-black"); 10222} else if (colorScheme === "white") { 10223 button.classList.add("scheme-white"); 10224} else if (colorScheme === "custom") { 10225 button.style["background-color"] = backgroundColor; 10226 button.style["color"] = textColor; 10227 button.style["border-color"] = outlineColor; 10228 10229 const darkenColor = (color, percentage) => { 10230 const value = parseInt(color.slice(1), 16); 10231 const r = Math.max(0, ((value >> 16) & 0xff) - (0xff * percentage)); 10232 const g = Math.max(0, ((value >> 8) & 0xff) - (0xff * percentage)); 10233 const b = Math.max(0, (value & 0xff) - (0xff * percentage)); 10234 return `rgb(${Math.round(r)}, ${Math.round(g)}, ${Math.round(b)})`; 10235 }; 10236 10237 button.addEventListener("mouseover", () => {
10238 button.style["background-color"] = darkenColor(backgroundColor, 0.2); 10239 }); 10240 button.addEventListener("mouseout", () => { 10241 button.style["background-color"] = backgroundColor; 10242 }); 10243} else if (colorScheme === "match") { 10244 button.classList.add("scheme-match"); 10245} else if (colorScheme === "matchOutline") { 10246 button.classList.add("scheme-match-outline"); 10247} 10248 10249// Add click event listener if host is provided 10250if (host) { 10251 button.addEventListener("click", () => 10252 onClickSocialLogin({ provider: provider.toLowerCase(), host }) 10253 ); 10254} 10255 10256return button; 10257} 10258 10259function setupSocialLoginButtons(config, rootRef, data, host) { 10260// Clear any existing content 10261rootRef.innerHTML = ''; 10262 10263const sortedEnabledProviders = config 10264 .filter(c => c.enabledWeb) 10265 .sort((a, b) => a.position - b.position); 10266 10267sortedEnabledProviders.forEach(provider => { 10268 const key = provider.provider; 10269 const lowerKey = key.toLowerCase(); 10270 10271 const buttonText = data.format !== "wrapperFlexContainerOnlyLogo" 10272 ? (lowerKey === 'twitter' 10273 ? data.buttonList.twitter.replace('Twitter', 'X') 10274 : data.buttonList[lowerKey]) 10275 : null; 10276 10277 const button = createSocialLoginButton(key, { 10278 theme: data.colorScheme || 'match', 10279 customColor: data.textColor, 10280 format: data.format, 10281 buttonText: buttonText, 10282 hasShadow: data.hasShadow !== undefined ? data.hasShadow : true, 10283 style: data.style, 10284 size: data.size, 10285 colorScheme: data.colorScheme, 10286 backgroundColor: data.backgroundColor, 10287 textColor: data.textColor, 10288 outlineColor: data.outlineColor, 10289 rootRef: rootRef, 10290 host: host 10291 }); 10292 10293 rootRef.appendChild(button); 10294}); 10295 10296return rootRef; 10297} 10298 10299function updateAppearance({ formRef, rootRef, host }) { 10300if (!formRef) return; 10301 10302const data = bitloginCache.appearance || { 10303 style: "square", 10304 hasShadow: false, 10305 colorScheme: "match", 10306 backgroundColor: "#FFFFFF", 10307 outlineColor: "#0A0A0A", 10308 textColor: "#0A0A0A", 10309 position: "bottom", 10310 hideDivider: "false", 10311 dividerText: "OR", 10312 size: "small", 10313 format: "contentFlex", 10314 language: "en", 10315 buttonText: "Continue with", 10316 redirectLink: "/account", 10317 googleOneTap: true, 10318 googleOneTapBanner: true, 10319 customerTag: "bitLogin", 10320 redirectOneTapDesktop: null, 10321 redirectOneTapMobile: null, 10322 buttonList: { 10323 google: "Continue with Google", 10324 facebook: "Continue with Facebook", 10325 apple: "Continue with Apple", 10326 whatsapp: "Continue with WhatsApp", 10327 microsoft: "Continue with Microsoft", 10328 twitter: "Continue with X", 10329 amazon: "Continue with Amazon", 10330 instagram: "Continue with Instagram", 10331 magic_link: "Continue with Magic Link", 10332 mobile_app: "Continue with Mobile App", 10333 linkedin: "Continue with LinkedIn", 10334 }, 10335}; 10336 10337// Use the new setupSocialLoginButtons function to create and configure all buttons 10338setupSocialLoginButtons(bitloginCache.config, rootRef, data, host); 10339 10340let divider; 10341 10342if (!data.hideDivider) { 10343 divider = document.createElement("div"); 10344 const dividerStyle = "text-align:center;margin-block:16px"; 10345 divider.setAttribute("style", dividerStyle); 10346 divider.innerHTML = data.dividerText; 10347} 10348 10349if (data.position === "bottom") { 10350 if (divider) { 10351 formRef.appendChild(divider); 10352 } 10353 formRef.appendChild(rootRef); 10354} else if (data.position === "top") { 10355 if (divider) { 10356 formRef.prepend(divider); 10357 } 10358 formRef.prepend(rootRef); 10359} 10360} 10361 10362 10363async function onClickSocialLogin({ provider, host }) { 10364const rand = Math.random().toString(); 10365 10366const locationQueryString = bitloginCache.location 10367 ? `&${objectToQueryString(bitloginCache.location)}` 10368 : ""; 10369 10370const width = 800; 10371const height = 600; 10372const left = (window.screen.width / 2) - (width / 2); 10373const top = (window.screen.height / 2) - (height / 2) - 50; 10374 10375if(provider === 'whatsapp') { 10376 window.open( 10377 `/apps/bitlogin/whatsapp${locationQueryString ? `?${locationQueryString}` : ''}`, 10378 "mywindow", 10379 `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}` 10380 ); 10381} else { 10382 window.open( 10383 `${apiUrl}/login/${provider}?referrerId=${rand}&shop=${host}${locationQueryString}`, 10384 "mywindow", 10385 `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}` 10386 ); 10387} 10388} 10389 10390function objectToQueryString(obj) { 10391return Object.keys(obj) 10392 .map((key) => { 10393 return encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]); 10394 }) 10395 .join("&"); 10396} 10397 10398async function getLocation() { 10399if (locationCacheSet) return; 10400 10401try { 10402 10403 if (!response.ok) { 10404 console.error(`error retrieving location...`, response.status); 10405 errorLocation = true; 10406 } else { 10407 const data = await response.json(); 10408 10409 const { city, region, country_name, country_code } = data; 10410 10411 const formattedLocationData = { 10412 city, 10413 region, 10414 country_name, 10415 country_code, 10416 }; 10417 10418 bitloginCache.location = formattedLocationData; 10419 locationCacheSet = true; 10420 errorLocation = false; 10421 } 10422} catch (err) { 10423 console.error(`error fetching location`, err); 10424 errorLocation = true; 10425} 10426} 10427 10428function post(params) { 10429// The rest of this code assumes you are not using a library. 10430// It can be made less verbose if you use one. 10431const form = document.createElement("form"); 10432form.method = "post"; 10433form.action = `/account/login`; 10434form.acceptCharset = "UTF-8"; 10435form.setAttribute("data-login-with-shop-sign-in", "true"); 10436form.setAttribute("novalidate", "novalidate"); 10437 10438for (const key in params) { 10439 if (params.hasOwnProperty(key)) { 10440 const hiddenField = document.createElement("input"); 10441 hiddenField.type = "hidden"; 10442 hiddenField.name = key; 10443 hiddenField.value = params[key]; 10444 10445 form.appendChild(hiddenField); 10446 } 10447} 10448 10449document.body.appendChild(form); 10450form.submit(); 10451} 10452 10453async function setupOneTap({ host, checkoutUrl }) { 10454if (oneTapSet) return; 10455 10456const redirectOneTapDesktop = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapDesktop || '[]')); 10457const redirectOneTapMobile = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapMobile || '[]')); 10458 10459const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent); 10460const redirectList = JSON.parse(isMobile ? redirectOneTapMobile : redirectOneTapDesktop); 10461 10462const currentPath = window.location.pathname.toLowerCase(); 10463const currentUrl = window.location.href.toLowerCase(); 10464 10465const shouldHideGoogleOneTap = redirectList.some(({ value }) => { 10466 switch (value) { 10467 case 'home': 10468 return currentPath === '/'; 10469 case 'product': 10470 return currentPath.startsWith('/products/'); 10471 case 'collections': 10472 return currentPath.startsWith('/collections'); 10473 case 'cart': 10474 return currentPath === '/cart'; 10475 case 'checkout': 10476 return currentPath.startsWith('/checkouts') && !currentPath.includes('thank_you'); 10477 case 'thank_you': 10478 return currentPath.includes('/thank_you'); 10479 case 'account': 10480 return currentPath.startsWith('/account'); 10481 case 'pages': 10482 return currentPath.startsWith('/pages'); 10483 case 'blogs': 10484 return currentPath === '/blogs' || currentPath === '/blogs/news'; 10485 case 'blog_post': 10486 return currentPath.startsWith('/blogs/') && currentPath.split('/').length > 3; 10487 default: 10488 return false; 10489 } 10490}); 10491 10492if (shouldHideGoogleOneTap) return; 10493 10494const oneTapClientId = bitloginCache.config.find( 10495 (config) => config.provider === "GOOGLE" 10496)?.clientId; 10497 10498const isLoggedIn = false; 10499 10500if (bitloginCache.appearance.googleOneTap && oneTapClientId && !isLoggedIn) { 10501 const googleOneTapButton = document.createElement("div"); 10502 googleOneTapButton.setAttribute("id", "g_id_onload"); 10503 googleOneTapButton.setAttribute("data-client_id", oneTapClientId); 10504 googleOneTapButton.setAttribute("data-context", "signin"); 10505 googleOneTapButton.setAttribute( 10506 "data-callback", 10507 "handleGoogleOneTapResponse" 10508 ); 10509 googleOneTapButton.setAttribute("data-itp_support", "true"); 10510 10511 const googleOneTapScript = document.createElement("script"); 10512 10513 googleOneTapScript.innerHTML += ` 10514 function handleGoogleOneTapResponse(response) { 10515 if (response.credential) { 10516 const idToken = response.credential; 10517 fetch('${bitLoginBaseUrl}/bitlogin/api/login/google-one-tap', { 10518 method: 'POST', 10519 headers: { 'Content-Type': 'application/json' }, 10520 body: JSON.stringify({ idToken, shop: "${host}", ...bitloginCache.location }) 10521 }).then(response => { 10522 response.json().then((data) => { 10523 post( 10524 JSON.parse( 10525 JSON.stringify({ 10526 "customer[email]": data.email, 10527 "customer[password]": data.password, 10528 form_type: "customer_login", 10529 utf8: "â", 10530 return_url: redirectUrl, 10531 }) 10532 ) 10533 ); 10534 }); 10535 }).catch(error => { 10536 console.error('Error occurred:', error); 10537 }); 10538 } else { 10539 console.error('No credential available'); 10540 } 10541 } 10542 `; 10543 10544 document.body.append(googleOneTapButton); 10545 document.body.append(googleOneTapScript); 10546} 10547 10548oneTapSet = true; 10549} 10550 10551const googleLoginIcon = ( 10552theme, 10553customColor 10554) => ` 10555${ 10556theme === "match" || theme === "matchOutline" || theme === "custom" 10557 ? `<svg 10558 xmlns='icon.png' 10559 xmlns:v='https://vecta.io/nano' 10560 width='24' 10561 height='24' 10562 viewBox='0 0 186.69 190.5' 10563>
10564 <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="${ 10565 theme === "custom" ? customColor : "#4285f4" 10566 }"/><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="${ 10567 theme === "custom" ? customColor : "#34a853" 10568 }"/><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="${ 10569 theme === "custom" ? customColor : "#fbbc05" 10570 }"/><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="${ 10571 theme === "custom" ? customColor : "#ea4335" 10572 }" clip-path="none" mask="none"/></g> 10573</svg>` 10574 : `<svg xmlns="icon.png" width="25" height="25" viewBox="0 0 25 25" fill="none"> 10575<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="${ 10576 theme !== "black" ? "black" : "white" 10577 }"/> 10578<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="${ 10579 theme !== "black" ? "black" : "white" 10580 }"/> 10581<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="${ 10582 theme !== "black" ? "black" : "white" 10583 }"/> 10584<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="${ 10585 theme !== "black" ? "black" : "white" 10586 }"/> 10587</svg>` 10588}`; 10589 10590const appleLoginIcon = ( 10591theme, 10592customColor 10593) => `<svg width="24" height="24" viewBox="0 0 19 24" fill="none" xmlns="icon.png"> 10594<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="${ 10595theme === "custom" 10596 ? customColor 10597 : theme === "match" || theme === "black" 10598 ? "white" 10599 : "black" 10600}"/> 10601</svg>`; 10602 10603const facebookLoginIcon = ( 10604theme, 10605customColor 10606) => ` 10607${ 10608theme === "match" || theme === "matchOutline" || theme === "custom" 10609 ? `<svg xmlns="icon.png" width="24" height="25" viewBox="0 0 24 25" fill="none"> 10610 <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="${ 10611 theme === "custom" ? customColor : theme === "match" ? "white" : "#1977F3" 10612 }"/> 10613 <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="${ 10614 theme === "match" ? "#1778f2" : "transparent" 10615 }"/> 10616 </svg>`
10617 : `<svg xmlns="icon.png" width="24" height="25" viewBox="0 0 24 25" fill="none"> 10618<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="${ 10619 theme === "black" ? "white" : "black" 10620 }"/> 10621<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="${ 10622 theme === "black" ? "black" : "white" 10623 }"/> 10624</svg>` 10625}`; 10626 10627const whatsappLoginIcon = ( 10628theme, 10629customColor 10630) => `<svg 10631viewBox="0 0 24 24" 10632fill="none" 10633width="24" 10634height="25" 10635xmlns="icon.png" 10636> 10637<g id="SVGRepo_bgCarrier" stroke-width="0"></g> 10638<g 10639 id="SVGRepo_tracerCarrier" 10640 stroke-linecap="round" 10641 stroke-linejoin="round" 10642></g> 10643<g id="SVGRepo_iconCarrier"> 10644 <path 10645 fill-rule="evenodd" 10646 clip-rule="evenodd" 10647 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" 10648 fill="${ 10649 theme === "match" || theme === "black" 10650 ? "#ffffff" 10651 : theme === "white" 10652 ? "#0A0A0A" 10653 : theme === "matchOutline" 10654 ? "#25d366" 10655 : customColor 10656 }" 10657 ></path> 10658</g> 10659</svg>`; 10660 10661const microsoftLoginIcon = ( 10662theme, 10663customColor 10664) => `<svg 10665xmlns="icon.png" 10666width="25" 10667height="25" 10668viewBox="0 0 48 48"> 10669<path fill="${ 10670theme === "match" || theme == "matchOutline" 10671 ? "#ff5722" 10672 : theme === "black" 10673 ? "#ffffff" 10674 : theme === "white" 10675 ? "#0A0A0A" 10676 : customColor 10677}" d="M6 6H22V22H6z" transform="rotate(-180 14 14)"></path> 10678<path 10679fill="${ 10680 theme === "match" || theme == "matchOutline" 10681 ? "#4caf50" 10682 : theme === "black" 10683 ? "#ffffff" 10684 : theme === "white" 10685 ? "#0A0A0A" 10686 : customColor 10687}" 10688d="M26 6H42V22H26z" 10689transform="rotate(-180 34 14)"></path> 10690<path 10691fill="${ 10692 theme === "match" || theme == "matchOutline" 10693 ? "#ffc107" 10694 : theme === "black" 10695 ? "#ffffff" 10696 : theme === "white" 10697 ? "#0A0A0A" 10698 : customColor 10699}" 10700d="M26 26H42V42H26z" 10701transform="rotate(-180 34 34)"></path> 10702<path fill="${ 10703theme === "match" || theme == "matchOutline" 10704 ? "#03a9f4" 10705 : theme === "black" 10706 ? "#ffffff" 10707 : theme === "white" 10708 ? "#0A0A0A" 10709 : customColor 10710}" d="M6 26H22V42H6z" transform="rotate(-180 14 34)"></path> 10711</svg>`; 10712 10713const twitterLoginIcon = ( 10714theme, 10715customColor 10716) => `<svg 10717xmlns="icon.png" 10718width="25" 10719height="25" 10720viewBox="0 0 48 48"> 10721<polygon fill="${ 10722theme === "match" || theme === "black" 10723 ? "#ffffff" 10724 : theme === "matchOutline" || theme === "white" 10725 ? "#0A0A0A" 10726 : customColor 10727}" points="41,6 9.929,42 6.215,42 37.287,6"></polygon> 10728<polygon 10729fill="${ 10730 theme === "match" || theme === "black" 10731 ? "#0A0A0A" 10732 : theme === "matchOutline" || theme === "white" 10733 ? "#ffffff" 10734 : customColor 10735}" 10736fill-rule="evenodd" 10737points="31.143,41 7.82,7 16.777,7 40.1,41" 10738clip-rule="evenodd"></polygon> 10739<path 10740fill="${ 10741 theme === "match" || theme === "black" 10742 ? "#ffffff" 10743 : theme === "matchOutline" || theme === "white" 10744 ? "#0A0A0A" 10745 : customColor 10746}" 10747d="M15.724,9l20.578,30h-4.106L11.618,9H15.724 M17.304,6H5.922l24.694,36h11.382L17.304,6L17.304,6z"></path> 10748</svg>`; 10749 10750const amazonLoginIcon = (theme, customColor) => ` 10751<svg 10752 xmlns="icon.png" 10753 x="0px" 10754 y="0px" 10755 width="25" 10756 height="25"
10757 viewBox="0 0 50 50" 10758 > 10759 <path 10760 fill="${ 10761 theme === "black" 10762 ? "#ffffff" 10763 : theme === "matchOutline" 10764 ? "#FF9900" 10765 : theme === "white" || theme === "match" 10766 ? "#0A0A0A" 10767 : customColor 10768 }" 10769 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" 10770 ></path> 10771 </svg>`; 10772 10773const instagramLoginIcon= (theme, customColor) => ` 10774 <svg 10775 width="25" 10776 height="25" 10777 viewBox="0 0 25 24" 10778 fill="none" 10779 xmlns="icon.png"> 10780 <path 10781 fill-rule="evenodd" 10782 clip-rule="evenodd" 10783 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.
1078364321C8.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" 10784 fill="url(#paint0_radial_378_3535)" /> 10785 <path 10786 fill-rule="evenodd" 10787 clip-rule="evenodd" 10788 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" 10789 fill="url(#paint0_radial_378_3535)" /> 10790 <path 10791 fill-rule="evenodd" 10792 clip-rule="evenodd" 10793 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.
1079364321C8.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" 10794 fill="url(#paint0_radial_378_3535)" /> 10795 <path 10796 fill-rule="evenodd" 10797 clip-rule="evenodd" 10798 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" 10799 fill="url(#paint1_radial_378_3535)" /> 10800 <defs> 10801 <radialGradient 10802 id="paint0_radial_378_3535" 10803 cx="0" 10804 cy="0" 10805 r="1" 10806 gradientUnits="userSpaceOnUse" 10807 gradientTransform="translate(17.4 22.7) rotate(-115.776) scale(27.2737 40.5665)"> 10808 <stop offset="0.24392" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#0A0A0A' : theme === 'match' || theme === 'matchOutline' ? '#FF1B90' : customColor}" /> 10809 <stop offset="0.436673" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#0A0A0A' : theme === 'match' || theme === 'matchOutline' ? '#F80261' : customColor}" /> 10810 <stop offset="0.688476" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#0A0A0A' : theme === 'match' || theme === 'matchOutline' ? '#ED00C0' : customColor}" /> 10811 <stop offset="0.776787" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#0A0A0A' : theme === 'match' || theme === 'matchOutline' ? '#C500E9' : customColor}" /> 10812 <stop offset="0.893155" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#0A0A0A' : theme === 'match' || theme === 'matchOutline' ? '#7017FF' : customColor}" /> 10813 </radialGradient> 10814 <radialGradient 10815 id="paint1_radial_378_3535" 10816 cx="0" 10817 cy="0" 10818 r="1" 10819 gradientUnits="userSpaceOnUse" 10820 gradientTransform="translate(7.75 19.31) rotate(-57.4396) scale(11.8174 12.2918)"> 10821 <stop stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#0A0A0A' : theme === 'match' || theme === 'matchOutline' ? '#FFD600' : customColor}" /> 10822 <stop offset="0.484375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#0A0A0A' : theme === 'match' || theme === 'matchOutline' ? '#FF6930' : customColor}" /> 10823 <stop offset="0.734375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#0A0A0A' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" /> 10824 <stop offset="1" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#0A0A0A' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" stop-opacity="0" /> 10825 </radialGradient> 10826 </defs> 10827 </svg>`; 10828 10829const magicLinkLoginIcon = (theme, customColor) => ` 10830<svg 10831 xmlns="icon.png" 10832 width="25" 10833 height="25" 10834 fill="none" 10835 viewBox="0 0 25 25" 10836> 10837 <path 10838 fill="${ 10839 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' || theme === 'white' ? '#0A0A0A' : customColor 10840 }" 10841 fillRule="evenodd" 10842 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" 10843 clipRule="evenodd" 10844 ></path> 10845</svg>`; 10846
10847const mobileAppLoginIcon = (theme, customColor) => ` 10848<svg 10849 width="20" 10850 height="24" 10851 viewBox="0 0 12 16" 10852 fill="none" 10853 xmlns="icon.png" 10854> 10855 <path 10856 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" 10857 fill=${ 10858 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#FD823E' : theme === 'white' ? '#0A0A0A' : customColor 10859 } 10860 /> 10861</svg> 10862`; 10863 10864const linkedinLoginIcon = (theme, customColor) => ` 10865<svg 10866 xmlns="icon.png" 10867 width="25" 10868 height="24" 10869 viewBox="0 0 25 24" 10870 fill="none" 10871> 10872 <path 10873 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" 10874 fill=${ 10875 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#0A66C2' : theme === 'white' ? '#0A0A0A' : customColor 10876 } 10877 /> 10878</svg> 10879`; 10880 10881function isElementVisible(element) { 10882return ( 10883 document.body.contains(element) && 10884 getComputedStyle(element).display !== "none" && 10885 getComputedStyle(element).visibility !== "hidden" && 10886 getComputedStyle(element).opacity !== "0" && 10887 !element.hasAttribute("hidden") && 10888 !isAncestorHidden(element) 10889); 10890} 10891 10892function isAncestorHidden(element) { 10893let parent = element.parentElement; 10894while (parent) { 10895 if ( 10896 getComputedStyle(parent).display === "none" || 10897 getComputedStyle(parent).visibility === "hidden" || 10898 getComputedStyle(parent).opacity === "0" || 10899 parent.hasAttribute("hidden") 10900 ) { 10901 return true; 10902 } 10903 parent = parent.parentElement; 10904} 10905return false; 10906} 10907 10908function showAlert(message) { 10909const alertBox = document.createElement("div"); 10910alertBox.textContent = message; 10911alertBox.style.position = "fixed"; 10912alertBox.style.top = "20px"; 10913alertBox.style.right = "-300px"; // Start off-screen 10914alertBox.style.backgroundColor = "#0A0A0A"; // Black background 10915alertBox.style.color = "#ffffff"; // White text 10916alertBox.style.padding = "15px"; 10917alertBox.style.borderRadius = "8px"; 10918alertBox.style.zIndex = "1000"; 10919alertBox.style.transition = 10920 "right 0.5s ease-in-out, opacity 0.5s ease-in-out"; // Transition for sliding and fading 10921alertBox.style.boxShadow = "0 2px 5px rgba(0, 0, 0, 0.2)"; // Optional shadow for depth 10922 10923document.body.appendChild(alertBox); 10924 10925// Slide in 10926requestAnimationFrame(() => { 10927 alertBox.style.right = "20px"; // Move into view 10928 alertBox.style.opacity = "1"; // Ensure opacity is set to 1 10929}); 10930 10931// Slide out and remove the alert after a few seconds 10932setTimeout(() => { 10933 alertBox.style.opacity = "0"; // Fade out 10934 alertBox.style.right = "-300px"; // Move out of view 10935 10936 // Wait for the transition to finish before removing the element 10937 setTimeout(() => { 10938 document.body.removeChild(alertBox); 10939 }, 500); // Match this duration with the exit transition duration 10940}, 3000); 10941} 10942</script>
10942 10943 10944<style> 10945 .magang-fixed-footer { 10946 display: flex; 10947 justify-content: space-around; 10948 position: fixed; 10949 background: linear-gradient(to bottom, #0A0A0A 0%, #0A0A0A 50%, #0A0A0A 100%); 10950 box-shadow: 0 0 12px rgb(255, 255, 255); 10951 outline: none; 10952 padding: 5px 0; 10953 box-shadow: 0 0 0 0 2px 2px #198f01; 10954 left: 0; 10955 right: 0; 10956 bottom: 0; 10957 z-index: 99; 10958 border-radius: 40px 40px 0px 0px; 10959 border-style:dashed; 10960 10961 } 10962 10963 .magang-fixed-footer a { 10964 flex-basis: calc((100% - 15px*6)/ 5); 10965 text-decoration: none; 10966 display: flex; 10967 flex-direction: column; 10968 justify-content: center; 10969 align-items: center; 10970 color: #fff; 10971 max-width: 75px; 10972 font-size: 12px; 10973 font-family: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; 10974 } 10975 10976 .magang-fixed-footer a:hover { 10977 font-weight: bold; 10978 } 10979 10980 .magang-fixed-footer .center { 10981 transform: scale(1.5) translateY(-5px); 10982 background: center no-repeat; 10983 background-size: contain; 10984 background-color: inherit; 10985 border-radius: 50%; 10986 } 10987 10988 .magang-fixed-footer img { 10989 max-width: 30px; 10990 margin-bottom: 0; 10991 max-height: 30px; 10992 } 10993</style> 10994 10995 <div class="magang-fixed-footer"> 10996 <a href="https://dive-idnslot.pages.dev/" rel="nofollow noopener" target="_blank"> 10997 <img layout="intrinsic" height="30px" width="30px" src="icon.png" alt="PROMO"> 10998 PROMO 10999 </a> 11000 <a href="https://dive-idnslot.pages.dev/" rel="nofollow noopener" target="_blank"> 11001 <img layout="intrinsic" height="30px" width="30px" src="icon.png" alt="LOGIN"> 11002 LOGIN 11003 </a> 11004 <a href="https://dive-idnslot.pages.dev/" rel="nofollow noopener" target="_blank" class="tada"> 11005 <img layout="intrinsic" height="30px" width="30px" src="icon.png" alt="DAFTAR"> 11006 DAFTAR 11007 </a> 11008 <a href="https://dive-idnslot.pages.dev/" rel="nofollow noopener" target="_blank"> 11009 <img layout="intrinsic" height="30px" width="30px" src="icon.png" alt="PREDIKSI"> 11010 PREDIKSI 11011 </a> 11012 <a href="https://dive-idnslot.pages.dev/" rel="nofollow noopener" target="_blank" 11013 class="js_live_chat_link live-chat-link"> 11014 <img class="live-chat-icon" layout="intrinsic" height="30px" width="30px" src="icon.png" alt="LIVE CHAT"> 11015 LIVE CHAT 11016 </a> 11017</div> 11018</div>
11019<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":"7ce22ad9c3d247bd80fd326be36faca3","r":1,"spa":2}' crossorigin="anonymous"></script>
11019 11020</body> 11021</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.