1 2 3 4<!doctype html> 5<html class="no-js"> 6 7<head> 8 <meta charset="utf-8"> 9 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 10 <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1"> 11 <meta name="apple-itunes-app" content="app-id=1576832504"> 12 <link rel="icon" type="image/x-icon" href="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/favicon.ico"> 13 <title>VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA</title> 14 <meta name="description" content="Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin."> 15 <meta name="keywords" content="venom123, venom123 daftar, venom123 login, venom123 link, venom123 alternatif, venom123 link alternatif" /> 16 <link rel="canonical" href="https://venom123spin.com/"> 17 <link rel="amphtml" href="https://venom123-spin.pages.dev/" /> 18 <link rel="alternate" href="https://venom123-spin.pages.dev/"> 19 <link rel="alternate" href="https://venom123-spin.pages.dev/" hreflang="id"> 20 <link rel="alternate" href="https://venom123-spin.pages.dev/" hreflang="en"> 21 <link rel="alternate" href="https://venom123-spin.pages.dev/" hreflang="x-default"> 22 <link rel="alternate" hreflang="id-ID" href="https://venom123-spin.pages.dev/" /> 23 <link rel="alternate" hreflang="en-US" href="https://venom123-spin.pages.dev/" /> 24 <link rel="alternate" hreflang="en-SG" href="https://venom123-spin.pages.dev/" /> 25 <meta property="og:type" content="VENOM123"> 26 <meta property="og:title" content="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA"> 27 <meta property="og:image" content="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg"> 28 <meta property="og:image:secure_url" content="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg"> 29 <meta property="og:image" content="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg"> 30 <meta property="og:image:secure_url" content="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg"> 31 <meta property="og:image" content="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg"> 32 <meta property="og:image:secure_url" content="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg"> 33 <meta property="og:description" content="Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin."> 34 <meta property="og:price:amount" content="10,000-,"> 35 <meta property="og:price:currency" content="IDR"> 36 <meta property="og:url" content="https://venom123spin.com/"> 37 <meta property="og:site_name" content="VENOM123"> 38 <meta name="twitter:site" content="@VENOM123"> 39 <meta name="twitter:card" content="summary"> 40 <meta name="twitter:title" content="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA"> 41 <meta name="twitter:description" content="Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin."> 42 <meta name="twitter:image" content="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg"> 43 <meta name="twitter:image:width" content="600"> 44 <meta name="twitter:image:height" content="600"> 45 <link rel="shortcut icon" href="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/favicon.ico" type="image/png"> 46 <meta name="theme-color" content="#ffffff"> 47 <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700&family=Poppins&display=swap" rel="stylesheet"> 48 <link href="//outerbloom.com/cdn/shop/t/138/assets/custom-styles.css?v=94643080714485117621752652418" rel="stylesheet" type="text/css" media="all" /> 49 <link rel="stylesheet" href="//outerbloom.com/cdn/shop/t/138/assets/wishlist-styles.css?v=166819525406734116961754385201"> 50
50<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js" defer></script>
50 51
51<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js" integrity="sha512-57oZ/vW8ANMjR/KQ6Be9v/+/h6bq9/l3f0Oc7vn6qMqyhvPd1cvKBRWWpzu0QoneImqr2SkmO4MSqU+RpHom3Q==" crossorigin="anonymous" referrerpolicy="no-referrer" defer></script>
51 52
52<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js" async="async"></script>
52 53
53<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js" defer></script>
53 54
54<script>
vendor: 565 bytes, lines 54-71
54 55 ! function(f, b, e, v, n, t, s) { 56 if (f.fbq) return; 57 n = f.fbq = function() { 58 n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments) 59 }; 60 if (!f._fbq) f._fbq = n; 61 n.push = n; 62 n.loaded = !0; 63 n.version = '2.0'; 64 n.queue = []; 65 t = b.createElement(e); 66 t.async = !0; 67 t.src = v; 68 s = b.getElementsByTagName(e)[0]; 69 s.parentNode.insertBefore(t, s) 70 }(window, document, 'script', '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 <div class="button-login-daftar"> 75 <a class="login" href="https://venom123-spin.pages.dev/" rel="nofollow noreferrer" style="color: #ffd700;"> LOGIN </a> 76 <a class="register" href="https://venom123-spin.pages.dev/" rel="nofollow noreferrer" style="color: #ffd700;"> DAFTAR </a> 77 </div> 78
78<script src="//cdnjs.cloudflare.com/ajax/libs/vissense/0.9.0/vissense.js" defer></script>
78 79 <!-- Bing UET --> 80
80<script> 81 (function(w, d, t, r, u) { 82 var f, n, i; 83 w[u] = w[u] || [], f = function() { 84 var o = { 85 ti: "343051754", 86 tm: "shpfy_ui", 87 enableAutoSpaTracking: true 88 }; 89 o.q = w[u], w[u] = new UET(o), w[u].push("pageLoad") 90 }, 91 n = d.createElement(t), n.src = r, n.async = 1, n.onload = n.onreadystatechange = function() { 92 var s = this.readyState; 93 s && s !== "loaded" && s !== "complete" || (f(), n.onload = n.onreadystatechange = null) 94 }, 95 i = d.getElementsByTagName(t)[0], i.parentNode.insertBefore(n, i) 96 }) 97 (window, document, "script", "//bat.bing.com/bat.js", "uetq"); 98 </script>
98 99
99<script> 100 window.uetq = window.uetq || []; 101 window.uetq.push('event', '', { 102 "revenue_value": 0, 103 "currency": "IDR" 104 }); 105 </script>
105 106 <!-- End Bing UET --> 107 <!-- Microsoft Clarity --> 108
108<script type="text/javascript"> 109 (function(c, l, a, r, i, t, y) { 110 c[a] = c[a] || function() { 111 (c[a].q = c[a].q || []).push(arguments) 112 }; 113 t = l.createElement(r); 114 t.async = 1; 115 t.src = "https://www.clarity.ms/tag/" + i; 116 y = l.getElementsByTagName(r)[0]; 117 y.parentNode.insertBefore(t, y); 118 })(window, document, "clarity", "script", "h7rbxqry9k"); 119 </script>
119 120 <!-- End Microsoft Clarity --> 121 <link href="//outerbloom.com/cdn/shop/t/138/assets/combine.min.css?v=111340648424012527321754385205" rel="stylesheet" type="text/css" media="all" /> 122 <link href="//outerbloom.com/cdn/shop/t/138/assets/font-awesome.css?v=132324219581463622051752652421" rel="stylesheet" type="text/css" media="all" /> 123 <link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/base/jquery-ui.min.css"> 124
124<script src="//code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
124 125
125<script src="//outerbloom.com/cdn/shop/t/138/assets/combine.js?v=140218079523075729301752652421" type="text/javascript"></script>
125 126
126<script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
126 127
127<script> 128 window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start'); 129 </script>
129 130 <meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15896833/digital_wallets/dialog"> 131 <link rel="alternate" type="application/json+oembed" href="https://venom123spin.com/.oembed"> 132
132<script async="async" src="/checkouts/internal/preloads.js?locale=en-ID"></script>
132 133
133<script id="shopify-features" type="application/json"> 134 { 135 "accessToken": "d2e176e59f6658d5056234d6249b3ab4", 136 "betas": ["rich-media-storefront-analytics"], 137 "domain": "outerbloom.com", 138 "predictiveSearch": true, 139 "shopId": 15896833, 140 "locale": "en" 141 } 142 </script>
142 143
143<script> 144 var Shopify = Shopify || {}; 145 Shopify.shop = "outerbloom1.myshopify.com"; 146 Shopify.locale = "en"; 147 Shopify.currency = { 148 "active": "IDR", 149 "rate": "1.0" 150 }; 151 Shopify.country = "ID"; 152 Shopify.theme = { 153 "name": "web-outerbloom-shopify\/main", 154 "id": 153139282135, 155 "schema_name": null, 156 "schema_version": null, 157 "theme_store_id": null, 158 "role": "main" 159 }; 160 Shopify.theme.handle = "null"; 161 Shopify.theme.style = { 162 "id": null, 163 "handle": null 164 }; 165 Shopify.cdnHost = "outerbloom.com/cdn"; 166 Shopify.routes = Shopify.routes || {}; 167 Shopify.routes.root = "/"; 168 </script>
168 169
169<script type="module"> 170 ! function(o) { 171 (o.Shopify = o.Shopify || {}).modules = !0 172 }(window); 173 </script>
173 174
174<script> 175 ! function(o) { 176 function n() { 177 var o = []; 178 179 function n() { 180 o.push(Array.prototype.slice.apply(arguments)) 181 } 182 return n.q = o, n 183 } 184 var t = o.Shopify = o.Shopify || {}; 185 t.loadFeatures = n(), t.autoloadFeatures = n() 186 }(window); 187 </script>
187 188
188<script id="shop-js-analytics" type="application/json"> 189 { 190 "pageType": "product" 191 } 192 </script>
192 193
193<script defer="defer" async="async" src="//outerbloom.com/cdn/shopifycloud/shop-js/client.js" onload="window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 194 "></script>
194 195
195<script> 196 (function() { 197 var isLoaded = false; 198 199 function asyncLoad() { 200 if (isLoaded) return; 201 isLoaded = true; 202 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"]; 203 for (var i = 0; i < urls.length; i++) { 204 var s = document.createElement('script'); 205 s.type = 'text/javascript'; 206 s.async = true; 207 s.src = urls[i]; 208 var x = document.getElementsByTagName('script')[0]; 209 x.parentNode.insertBefore(s, x); 210 } 211 }; 212 if (window.attachEvent) { 213 window.attachEvent('onload', asyncLoad); 214 } else { 215 window.addEventListener('load', asyncLoad, false); 216 } 217 })(); 218 </script>
218 219
219<script id="__st"> 220 var __st = { 221 "a": 15896833, 222 "offset": 25200, 223 "reqid": "78149bf2-9ab6-43c0-b2ce-821afbfe5bd0-1759566675", 224 "pageurl": "outerbloom.com\/products\/blossom-shine", 225 "u": "381e6a1da038", 226 "p": "product", 227 "rtyp": "product", 228 "rid": 8144957800663 229 }; 230 </script>
230 231
231<script> 232 window.ShopifyPaypalV4VisibilityTracking = true; 233 </script>
233 234
234<script id="captcha-bootstrap"> 235 ! function() { 236 'use strict'; 237 const t = 'contact', 238 e = 'account', 239 n = 'new_comment', 240 o = [ 241 [t, t], 242 ['blogs', n], 243 ['comments', n], 244 [t, 'customer'] 245 ], 246 c = [ 247 [e, 'customer_login'], 248 [e, 'guest_login'], 249 [e, 'recover_customer_password'], 250 [e, 'create_customer'] 251 ], 252 r = t => t.map((([t, e]) => `form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','), 253 a = t => () => t ? [...document.querySelectorAll(t)].map((t => t.form)) : []; 254 255 function s() { 256 const t = [...o], 257 e = r(t); 258 return a(e) 259 } 260 const i = 'password', 261 u = 'form_key', 262 d = ['recaptcha-v3-token', 'g-recaptcha-response', 'h-captcha-response', i], 263 f = () => { 264 try { 265 return window.sessionStorage 266 } catch { 267 return 268 } 269 }, 270 m = '__shopify_v', 271 _ = t => t.elements[u]; 272 273 function p(t, e, n = !1) { 274 try { 275 const o = window.sessionStorage, 276 c = JSON.parse(o.getItem(e)), 277 { 278 data: r 279 } = function(t) { 280 const { 281 data: e, 282 action: n 283 } = t; 284 return t[m] || n ? { 285 data: e, 286 action: n 287 } : { 288 data: t, 289 action: n 290 } 291 }(c); 292 for (const [e, n] of Object.entries(r)) t.elements[e] && (t.elements[e].value = n); 293 n && o.removeItem(e) 294 } catch (o) { 295 console.error('form repopulation failed', { 296 error: o 297 }) 298 } 299 } 300 const l = 'form_type', 301 E = 'cptcha'; 302 303 function T(t) { 304 t.dataset[E] = !0 305 } 306 const w = window, 307 h = w.document, 308 L = 'Shopify', 309 v = 'ce_forms', 310 y = 'captcha'; 311 let A = !1; 312 ((t, e) => { 313 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 = { 314 infoText: 'Protected by hCaptcha', 315 privacyText: 'Privacy', 316 termsText: 'Terms' 317 }, (t, e, n) => { 318 const o = w[L][v], 319 c = o.bindForm; 320 if (c) return c(t, g, e, D).then(n); 321 var r; 322 o.q.push([ 323 [t, g, e, D], n 324 ]), r = I, A || (h.body.append(Object.assign(h.createElement('script'), { 325 id: 'captcha-provider', 326 async: !0, 327 src: r 328 })), A = !0) 329 }); 330 var g, I, D; 331 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) { 332 n(t, void 0, e), T(t) 333 }, Object.freeze(w[L][y]), 334 function(t, e, n, w, h, L) { 335 const [v, y, A, g] = function(t, e, n) { 336 const i = e ? o : [], 337 u = t ? c : [], 338 d = [...i, ...u], 339 f = r(d), 340 m = r(i), 341 _ = r(d.filter((([t, e]) => n.includes(e)))); 342 return [a(f), a(m), a(_), s()] 343 }(w, h, L), I = t => { 344 const e = t.target; 345 return e instanceof HTMLFormElement ? e : e && e.form 346 }, D = t => v().includes(t); 347 t.addEventListener('submit', (t => { 348 const e = I(t); 349 if (!e) return; 350 const n = D(e) && !e.dataset.hcaptchaBound && !e.dataset.recaptchaBound, 351 o = _(e), 352 c = g().includes(e) && (!o || !o.value); 353 (n || c) && t.preventDefault(), c && !n && (function(t) { 354 try { 355 if (!f()) return; 356 ! function(t) { 357 const e = f(); 358 if (!e) return; 359 const n = _(t); 360 if (!n) return; 361 const o = n.value; 362 o && e.removeItem(o) 363 }(t); 364 const e = Array.from(Array(32), (() => Math.random().toString(36)[2])).join(''); 365 ! function(t, e) { 366 _(t) || t.append(Object.assign(document.createElement('input'), { 367 type: 'hidden', 368 name: u 369 })), t.elements[u].value = e 370 }(t, e), 371 function(t, e) { 372 const n = f(); 373 if (!n) return; 374 const o = [...t.querySelectorAll(`input[type='${i}']`)].map((({ 375 name: t 376 }) => t)), 377 c = [...d, ...o], 378 r = {}; 379 for (const [a, s] of new FormData(t).entries()) c.includes(a) || (r[a
379] = s); 380 n.setItem(e, JSON.stringify({ 381 [m]: 1, 382 action: t.action, 383 data: r 384 })) 385 }(t, e) 386 } catch (e) { 387 console.error('failed to persist form', e) 388 } 389 }(e), e.submit()) 390 })); 391 const S = (t, e) => { 392 t && !t.dataset[E] && (n(t, e.some((e => e === t))), T(t)) 393 }; 394 for (const o of ['focusin', 'change']) t.addEventListener(o, (t => { 395 const e = I(t); 396 D(e) && S(e, y()) 397 })); 398 const B = e.get('form_key'), 399 M = e.get(l), 400 P = B && M; 401 t.addEventListener('DOMContentLoaded', (() => { 402 const t = y(); 403 if (P) 404 for (const e of t) e.elements[l].value === M && p(e, B); 405 [...new Set([...A(), ...v().filter((t => 'true' === t.dataset.shopifyCaptcha))])].forEach((e => S(e, t))) 406 })) 407 }(h, new URLSearchParams(w.location.search), n, t, e, ['guest_login']) 408 })(!1, !0) 409 }(); 410 </script>
410 411
411<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>
411 412
412<script data-source-attribution="shopify.dynamic_checkout.dynamic.init"> 413 var Shopify = Shopify || {}; 414 Shopify.PaymentButton = Shopify.PaymentButton || { 415 isStorefrontPortableWallets: !0, 416 init: function() { 417 window.Shopify.PaymentButton.init = function() {}; 418 var t = document.createElement("script"); 419 t.src = "https://outerbloom.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js", t.type = "module", document.head.appendChild(t) 420 } 421 }; 422 </script>
422 423
423<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 424 function portableWalletsHideBuyerConsent(e) { 425 var t = document.getElementById("shopify-buyer-consent"), 426 n = document.getElementById("shopify-subscription-policy-button"); 427 t && n && (t.classList.add("hidden"), t.setAttribute("aria-hidden", "true"), n.removeEventListener("click", e)) 428 } 429 430 function portableWalletsShowBuyerConsent(e) { 431 var t = document.getElementById("shopify-buyer-consent"), 432 n = document.getElementById("shopify-subscription-policy-button"); 433 t && n && (t.classList.remove("hidden"), t.removeAttribute("aria-hidden"), n.addEventListener("click", e)) 434 } 435 window.Shopify?.PaymentButton && (window.Shopify.PaymentButton.hideBuyerConsent = portableWalletsHideBuyerConsent, window.Shopify.PaymentButton.showBuyerConsent = portableWalletsShowBuyerConsent); 436 </script>
436 437
437<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap"> 438 document.addEventListener("DOMContentLoaded", (function() { 439 function t() { 440 return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout") 441 } 442 if (t()) Shopify.PaymentButton.init(); 443 else { 444 new MutationObserver((function(e, n) { 445 t() && (Shopify.PaymentButton.init(), n.disconnect()) 446 })).observe(document.body, { 447 childList: !0, 448 subtree: !0 449 }) 450 } 451 })); 452 </script>
452 453
453<script> 454 window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end'); 455 </script>
455 456 <!-- /snippets/oldIE-js.liquid --> 457 <!--[if lt IE 9]> 458
458<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js" type="text/javascript"></script>
458 459
459<script src="//outerbloom.com/cdn/shop/t/138/assets/respond.min.js?v=52248677837542619231752652418" type="text/javascript"></script>
459 460 <link href="//outerbloom.com/cdn/shop/t/138/assets/respond-proxy.html" id="respond-proxy" rel="respond-proxy" /> 461 <link href="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" id="respond-redirect" rel="respond-redirect" /> 462
462<script src="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" type="text/javascript"></script>
462 463 <![endif]--> 464 <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"> 465 <link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch"> 466
466<script> 467 (function() { 468 if ("sendBeacon" in navigator && "performance" in window) { 469 try { 470 var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description; 471 } catch { 472 var session_token_from_headers = undefined; 473 } 474 var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/); 475 var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : ""; 476 var session_token = session_token_from_headers || session_token_from_cookie || ""; 477 478 function handle_abandonment_event(e) { 479 var entries = performance.getEntries().filter(function(entry) { 480 return /monorail-edge.shopifysvc.com/.test(entry.name); 481 }); 482 if (!window.abandonment_tracked && entries.length === 0) { 483 window.abandonment_tracked = true; 484 var currentMs = Date.now(); 485 var navigation_start = performance.timing.navigationStart; 486 var payload = { 487 shop_id: 15896833, 488 url: window.location.href, 489 navigation_start, 490 duration: currentMs - navigation_start, 491 session_token, 492 page_type: "product" 493 }; 494 window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({ 495 schema_id: "online_store_buyer_site_abandonment/1.1", 496 payload: payload, 497 metadata: { 498 event_created_at_ms: currentMs, 499 event_sent_at_ms: currentMs 500 } 501 })); 502 } 503 } 504 window.addEventListener('pagehide', handle_abandonment_event); 505 } 506 }()); 507 </script>
507 508
508<script id="web-pixels-manager-setup"> 509 (function e(e, d, r, n, o) { 510 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)) { 511 var i, a; 512 window.Shopify = window.Shopify || {}; 513 var t = window.Shopify; 514 t.analytics = t.analytics || {}; 515 var s = t.analytics; 516 s.replayQueue = [], s.publish = function(e, d, r) { 517 return s.replayQueue.push([e, d, r]), !0 518 }; 519 try { 520 self.performance.mark("wpm:start") 521 } catch (e) {} 522 var l = function() { 523 var e = { 524 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+/, 525 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+|)/ 526 }, 527 d = e.modern, 528 r = e.legacy, 529 n = navigator.userAgent; 530 return n.match(d) ? "modern" : n.match(r) ? "legacy" : "unknown" 531 }(), 532 u = "modern" === l ? "modern" : "legacy", 533 c = (null != n ? n : { 534 modern: "", 535 legacy: "" 536 })[u], 537 f = function(e) { 538 return [e.baseUrl, "/wpm", "/b", e.hashVersion, "modern" === e.buildTarget ? "m" : "l", ".js"].join("") 539 }({ 540 baseUrl: d, 541 hashVersion: r, 542 buildTarget: u 543 }), 544 m = function(e) { 545 var d = e.version, 546 r = e.bundleTarget, 547 n = e.surface, 548 o = e.pageUrl, 549 i = e.monorailEndpoint; 550 return { 551 emit: function(e) { 552 var a = e.status, 553 t = e.errorMsg, 554 s = (new Date).getTime(), 555 l = JSON.stringify({ 556 metadata: { 557 event_sent_at_ms: s 558 }, 559 events: [{ 560 schema_id: "web_pixels_manager_load/3.1", 561 payload: { 562 version: d, 563 bundle_target: r, 564 page_url: o, 565 status: a, 566 surface: n, 567 error_msg: t 568 }, 569 metadata: { 570 event_created_at_ms: s 571 } 572 }] 573 }); 574 if (!i) return console && console.warn && console.warn("[Web Pixels Manager] No Monorail endpoint provided, skipping logging."), !1; 575 try { 576 return self.navigator.sendBeacon.bind(self.navigator)(i, l) 577 } catch (e) {} 578 var u = new XMLHttpRequest; 579 try { 580 return u.open("POST", i, !0), u.setRequestHeader("Content-Type", "text/plain"), u.send(l), !0 581 } catch (e) { 582 return console && console.warn && console.warn("[Web Pixels Manager] Got an unhandled error while logging to Monorail."), !1 583 } 584 } 585 } 586 }({ 587 version: r, 588 bundleTarget: l, 589 surface: e.surface, 590 pageUrl: self.location.href, 591 monorailEndpoint: e.monorailEndpoint 592 }); 593 try { 594 o.browserTarget = l, 595 function(e) { 596 var d = e.src, 597 r = e.async, 598 n = void 0 === r || r, 599 o = e.onload, 600 i = e.onerror, 601 a = e.sri, 602 t = e.scriptDataAttributes, 603 s = void 0 === t ? {} : t, 604 l = document.createElement("script"), 605 u = document.querySelector("head"), 606 c = document.querySelector("body"); 607 if (l.async = n, l.src = d, a && (l.integrity = a, l.crossOrigin = "anonymous"), s) 608 for (var f in s) 609 if (Object.prototype.hasOwnProperty.call(s, f)) try { 610 l.dataset[f] = s[f] 611 } catch (e) {} 612 if (o && l.addEventListener("load", o), i && l.addEventListener("error", i), u) u.appendChild(l); 613 else {
614 if (!c) throw new Error("Did not find a head or body element to append the script"); 615 c.appendChild(l) 616 } 617 }({ 618 src: f, 619 async: !0, 620 onload: function() { 621 if (! function() { 622 var e, d; 623 return Boolean(null === (d = null === (e = window.Shopify) || void 0 === e ? void 0 : e.analytics) || void 0 === d ? void 0 : d.initialized) 624 }()) { 625 var d = window.webPixelsManager.init(e) || void 0; 626 if (d) { 627 var r = window.Shopify.analytics; 628 r.replayQueue.forEach((function(e) { 629 var r = e[0], 630 n = e[1], 631 o = e[2]; 632 d.publishCustomEvent(r, n, o) 633 })), r.replayQueue = [], r.publish = d.publishCustomEvent, r.visitor = d.visitor, r.initialized = !0 634 } 635 } 636 }, 637 onerror: function() { 638 return m.emit({ 639 status: "failed", 640 errorMsg: "".concat(f, " has failed to load") 641 }) 642 }, 643 sri: function(e) { 644 var d = /^sha384-[A-Za-z0-9+/=]+$/; 645 return "string" == typeof e && d.test(e) 646 }(c) ? c : "", 647 scriptDataAttributes: o 648 }), m.emit({ 649 status: "loading" 650 }) 651 } catch (e) { 652 m.emit({ 653 status: "failed", 654 errorMsg: (null == e ? void 0 : e.message) || "Unknown error" 655 }) 656 } 657 } 658 })({ 659 shopId: 15896833, 660 storefrontBaseUrl: "https://outerbloom.com", 661 extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager", 662 monorailEndpoint: "https://monorail-edge.shopifysvc.com/unstable/produce_batch", 663 surface: "storefront-renderer", 664 enabledBetaFlags: [], 665 webPixelsConfigList: [{ 666 "id": "870383831", 667 "configuration": "{\"accountID\":\"outerbloom1\"}", 668 "eventPayloadVersion": "v1", 669 "runtimeContext": "STRICT", 670 "scriptVersion": "162380e6ffd3e5a2854f1aabf54537bb", 671 "type": "APP", 672 "apiClientId": 32196493313, 673 "privacyPurposes": ["ANALYTICS", "MARKETING", "SALE_OF_DATA"] 674 }, { 675 "id": "824574167", 676 "configuration": "{\"shop\":\"outerbloom1.myshopify.com\", \"backend\": \"api.bitbybit.studio\"}", 677 "eventPayloadVersion": "v1", 678 "runtimeContext": "STRICT", 679 "scriptVersion": "a3ba46f2364c9db1bf57bc969c3dd935", 680 "type": "APP", 681 "apiClientId": 28314632193, 682 "privacyPurposes": ["ANALYTICS", "MARKETING", "SALE_OF_DATA"] 683 }, { 684 "id": "521994455", 685 "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}\"}", 686 "eventPayloadVersion": "v1", 687 "runtimeContext": "OPEN", 688 "scriptVersion": "b2a88bafab3e21179ed38636efcd8a93", 689 "type": "APP", 690 "apiClientId": 1780363, 691 "privacyPurposes": [] 692 }, { 693 "id": "236060887", 694 "configuration": "{\"pixel_id\":\"165971065669324\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}", 695 "eventPayloadVersion": "v1", 696 "runtimeContext": "OPEN", 697 "scriptVersion": "6d8c3ef0426b37b2a9b717daeb719f58", 698 "type": "APP", 699 "apiClientId": 2329312, 700 "privacyPurposes": ["ANALYTICS", "MARKETING", "SALE_OF_DATA"] 701 }, { 702 "id": "62947543", 703 "eventPayloadVersion": "v1", 704 "runtimeContext": "LAX", 705 "scriptVersion": "1", 706 "type": "CUSTOM", 707 "privacyPurposes": ["MARKETING"], 708 "name": "Meta pixel (migrated)" 709 }, { 710 "id": "shopify-app-pixel",
711 "configuration": "{}", 712 "eventPayloadVersion": "v1", 713 "runtimeContext": "STRICT", 714 "scriptVersion": "0450", 715 "apiClientId": "shopify-pixel", 716 "type": "APP", 717 "privacyPurposes": ["ANALYTICS", "MARKETING"] 718 }, { 719 "id": "shopify-custom-pixel", 720 "eventPayloadVersion": "v1", 721 "runtimeContext": "LAX", 722 "scriptVersion": "0450", 723 "apiClientId": "shopify-pixel", 724 "type": "CUSTOM", 725 "privacyPurposes": ["ANALYTICS", "MARKETING"] 726 }], 727 isMerchantRequest: false, 728 initData: { 729 "shop": { 730 "name": "Outerbloom", 731 "paymentSettings": { 732 "currencyCode": "IDR" 733 }, 734 "myshopifyDomain": "outerbloom1.myshopify.com", 735 "countryCode": "ID", 736 "storefrontUrl": "https:\/\/outerbloom.com" 737 }, 738 "customer": null, 739 "cart": null, 740 "checkout": null, 741 "productVariants": [{ 742 "price": { 743 "amount": 835000.0, 744 "currencyCode": "IDR" 745 }, 746 "product": { 747 "title": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 748 "vendor": "Outerbloom Florist", 749 "id": "8144957800663", 750 "untranslatedTitle": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 751 "url": "\/products\/blossom-shine", 752 "type": "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin." 753 }, 754 "id": "44083045826775", 755 "image": { 756 "src": "\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426" 757 }, 758 "sku": "OBVSTF1086", 759 "title": "Default Title", 760 "untranslatedTitle": "Default Title" 761 }], 762 "purchasingCompany": null 763 }, 764 }, "https://outerbloom.com/cdn", "4f0c5c77w64a73806p128ba08bma5b58f2f", { 765 "modern": "", 766 "legacy": "" 767 }, { 768 "shopId": "15896833", 769 "storefrontBaseUrl": "https:\/\/outerbloom.com", 770 "extensionBaseUrl": "https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager", 771 "surface": "storefront-renderer", 772 "enabledBetaFlags": "[]", 773 "isMerchantRequest": "false", 774 "hashVersion": "4f0c5c77w64a73806p128ba08bma5b58f2f", 775 "publish": "custom", 776 "events": "[[\"page_viewed\",{}],[\"product_viewed\",{\"productVariant\":{\"price\":{\"amount\":835000.0,\"currencyCode\":\"IDR\"},\"product\":{\"title\":\"VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA\",\"vendor\":\"Outerbloom Florist\",\"id\":\"8144957800663\",\"untranslatedTitle\":\"VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA\",\"url\":\"\/products\/blossom-shine\",\"type\":\"Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.\"},\"id\":\"44083045826775\",\"image\":{\"src\":\"\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426\"},\"sku\":\"OBVSTF1086\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"}}]]" 777 }); 778 </script>
778 779
779<script> 780 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 781 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 782 window.ShopifyAnalytics.meta.currency = 'IDR'; 783 var meta = { 784 "product": { 785 "id": 8144957800663, 786 "gid": "gid:\/\/shopify\/Product\/8144957800663", 787 "vendor": "Outerbloom Florist", 788 "type": "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.", 789 "variants": [{ 790 "id": 44083045826775, 791 "price": 1000000, 792 "name": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 793 "public_title": null, 794 "sku": "OBVSTF1086" 795 }], 796 "remote": false 797 }, 798 "page": { 799 "pageType": "product", 800 "resourceType": "product", 801 "resourceId": 8144957800663 802 } 803 }; 804 for (var attr in meta) { 805 window.ShopifyAnalytics.meta[attr] = meta[attr]; 806 } 807 </script>
807 808
808<script class="analytics"> 809 (function() { 810 var customDocumentWrite = function(content) { 811 var jquery = null; 812 if (window.jQuery) { 813 jquery = window.jQuery; 814 } else if (window.Checkout && window.Checkout.$) { 815 jquery = window.Checkout.$; 816 } 817 if (jquery) { 818 jquery('body').append(content); 819 } 820 }; 821 var hasLoggedConversion = function(token) { 822 if (token) { 823 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 824 } 825 return false; 826 } 827 var setCookieIfConversion = function(token) { 828 if (token) { 829 var twoMonthsFromNow = new Date(Date.now()); 830 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 831 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 832 } 833 } 834 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 835 if (trekkie.integrations) { 836 return; 837 } 838 trekkie.methods = ['identify', 'page', 'ready', 'track', 'trackForm', 'trackLink']; 839 trekkie.factory = function(method) { 840 return function() { 841 var args = Array.prototype.slice.call(arguments); 842 args.unshift(method); 843 trekkie.push(args); 844 return trekkie; 845 }; 846 }; 847 for (var i = 0; i < trekkie.methods.length; i++) { 848 var key = trekkie.methods[i]; 849 trekkie[key] = trekkie.factory(key); 850 } 851 trekkie.load = function(config) { 852 trekkie.config = config || {}; 853 trekkie.config.initialDocumentCookie = document.cookie; 854 var first = document.getElementsByTagName('script')[0]; 855 var script = document.createElement('script'); 856 script.type = 'text/javascript'; 857 script.onerror = function(e) { 858 var scriptFallback = document.createElement('script'); 859 scriptFallback.type = 'text/javascript'; 860 scriptFallback.onerror = function(error) { 861 var Monorail = { 862 produce: function produce(monorailDomain, schemaId, payload) { 863 var currentMs = new Date().getTime(); 864 var event = { 865 schema_id: schemaId, 866 payload: payload, 867 metadata: { 868 event_created_at_ms: currentMs, 869 event_sent_at_ms: currentMs 870 } 871 }; 872 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 873 }, 874 sendRequest: function sendRequest(endpointUrl, payload) { 875 // Try the sendBeacon API 876 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 877 var blobData = new window.Blob([payload], { 878 type: 'text/plain' 879 }); 880 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 881 return true; 882 } // sendBeacon was not successful 883 } // XHR beacon 884 var xhr = new XMLHttpRequest(); 885 try { 886 xhr.open('POST', endpointUrl); 887 xhr.setRequestHeader('Content-Type', 'text/plain'); 888 xhr.send(payload); 889 } catch (e) { 890 console.log(e); 891 } 892 return false; 893 }, 894 isIos12: function isIos12() { 895 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 896 } 897 }; 898 Monorail.produce('monorail-edge.shopifysvc.com', 'trekkie_storefront_load_errors/1.1', { 899 shop_id: 15896833, 900 theme_id: 153139282135, 901 app_name: "storefront", 902 context_url: window.location.href, 903 source_url: "//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js" 904 }); 905 }; 906 scriptFallback.async = true; 907 scriptFallback.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js'; 908 first.parentNode.insertBefore(scriptFallback, first); 909 }; 910 script.async = true; 911 script.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js'; 912 first.parentNode.insertBefore(script, first); 913 }; 914 trekkie.load({ 915 "Trekkie": { 916 "appName": "storefront", 917 "development": false, 918 "defaultAttributes": { 919 "shopId": 15896833, 920 "isMerchantRequest": null, 921 "themeId": 153139282135, 922 "themeCityHash": "1741993959449676309", 923 "contentLanguage": "en", 924 "currency": "IDR" 925 }, 926 "isServerSideCookieWritingEnabled": true, 927 "monorailRegion": "shop_domain" 928 }, 929 "Session Attribution": {}, 930 "S2S": { 931 "facebookCapiEnabled": true, 932 "source": "trekkie-storefront-renderer", 933 "apiClientId": 580111 934 } 935 }); 936 var loaded = false; 937 trekkie.ready(function() { 938 if (loaded) return; 939 loaded = true; 940 window.ShopifyAnalytics.lib = window.trekkie; 941 var originalDocumentWrite = document.write; 942 document.write = customDocumentWrite; 943 try { 944 window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); 945 } catch (error) {}; 946 document.write = originalDocumentWrite; 947 window.ShopifyAnalytics.lib.page(null, { 948 "pageType": "product", 949 "resourceType": "product", 950 "resourceId": 8144957800663, 951 "shopifyEmitted": true 952 }); 953 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 954 var token = match ? match[1] : undefined; 955 if (!hasLoggedConversion(token)) {
956 setCookieIfConversion(token); 957 window.ShopifyAnalytics.lib.track("Viewed Product", { 958 "currency": "IDR", 959 "variantId": 44083045826775, 960 "productId": 8144957800663, 961 "productGid": "gid:\/\/shopify\/Product\/8144957800663", 962 "name": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 963 "price": "835000.00", 964 "sku": "OBVSTF1086", 965 "brand": "Outerbloom Florist", 966 "variant": null, 967 "category": "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.", 968 "nonInteraction": true, 969 "remote": false 970 }, undefined, undefined, { 971 "shopifyEmitted": true 972 }); 973 window.ShopifyAnalytics.lib.track("monorail:\/\/trekkie_storefront_viewed_product\/1.1", { 974 "currency": "IDR", 975 "variantId": 44083045826775, 976 "productId": 8144957800663, 977 "productGid": "gid:\/\/shopify\/Product\/8144957800663", 978 "name": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 979 "price": "835000.00", 980 "sku": "OBVSTF1086", 981 "brand": "Outerbloom Florist", 982 "variant": null, 983 "category": "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.", 984 "nonInteraction": true, 985 "remote": false, 986 "referer": "https:\/\/outerbloom.com\/products\/blossom-shine" 987 }); 988 } 989 }); 990 var eventsListenerScript = document.createElement('script'); 991 eventsListenerScript.async = true; 992 eventsListenerScript.src = "//outerbloom.com/cdn/shopifycloud/storefront/assets/shop_events_listener-abeef7a0.js"; 993 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 994 })(); 995 </script>
995 996
996<script> 997 if (!window.ga || (window.ga && typeof window.ga !== 'function')) { 998 window.ga = function ga() { 999 (window.ga.q = window.ga.q || []).push(arguments); 1000 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 1001 window.Shopify.analytics.publish("ga_stub_called", {}, { 1002 sendTo: "google_osp_migration" 1003 }); 1004 } 1005 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."); 1006 }; 1007 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 1008 window.Shopify.analytics.publish("ga_stub_initialized", {}, { 1009 sendTo: "google_osp_migration" 1010 }); 1011 } 1012 } 1013 </script>
1013 1014
1014<script defer src="https://outerbloom.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-2.0.13.min.js" data-application="storefront-renderer" data-shop-id="15896833" data-render-region="gcp-asia-southeast1" data-page-type="product" data-theme-instance-id="153139282135" data-theme-name="" data-theme-version="" data-monorail-region="shop_domain" data-resource-timing-sampling-rate="10" data-shs="true" data-shs-beacon="true" data-shs-export-with-fetch="true" data-shs-logs-sample-rate="1"></script>
1014 1015 1016 1017
1017<script type="application/ld+json"> 1018 { 1019 "@context": "https://schema.org", 1020 "@type": "BreadcrumbList", 1021 "itemListElement": [{ 1022 "@type": "ListItem", 1023 "position": 1, 1024 "name": "VENOM123", 1025 "item": "https://venom123spin.com/" 1026 }, { 1027 "@type": "ListItem", 1028 "position": 2, 1029 "name": "VENOM 123", 1030 "item": "https://venom123spin.com/" 1031 }, { 1032 "@type": "ListItem", 1033 "position": 3, 1034 "name": "VENOM123 DAFTAR", 1035 "item": "https://venom123spin.com/" 1036 }, { 1037 "@type": "ListItem", 1038 "position": 4, 1039 "name": "VENOM123 LOGIN", 1040 "item": "https://venom123spin.com/" 1041 }, { 1042 "@type": "ListItem", 1043 "position": 5, 1044 "name": "VENOM123 LINK", 1045 "item": "https://venom123spin.com/" 1046 }, { 1047 "@type": "ListItem", 1048 "position": 6, 1049 "name": "VENOM123 ALTERNATIF", 1050 "item": "https://venom123spin.com/" 1051 }, { 1052 "@type": "ListItem", 1053 "position": 7, 1054 "name": "VENOM123 LINK ALTERNATIF", 1055 "item": "https://venom123spin.com/" 1056 }, { 1057 "@type": "ListItem", 1058 "position": 8, 1059 "name": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 1060 "item": "https://venom123spin.com/" 1061 }] 1062 } 1063 </script>
1063 1064
1064<script type="application/ld+json"> 1065 { 1066 "@context": "https://schema.org", 1067 "@type": "Organization", 1068 "name": "VENOM123", 1069 "url": "https://venom123spin.com/", 1070 "logo": "https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif", 1071 "sameAs": ["https://www.facebook.com/VENOM123", "https://twitter.com/VENOM123", "https://www.instagram.com/VENOM123"], 1072 "contactPoint": { 1073 "@type": "ContactPoint", 1074 "telephone": "+62-812-8874-1411", 1075 "contactType": "customer support", 1076 "areaServed": "ID", 1077 "availableLanguage": ["Indonesian", "English"] 1078 } 1079 } 1080 </script>
vendor: 2 bytes, line 1080
1080
1081<script type="application/ld+json"> 1082{ 1083 "@context": "https://schema.org", 1084 "@type": "FAQPage", 1085 "mainEntity": [ 1086 { 1087 "@type": "Question", 1088 "name": "Apa yang membuat VENOM123 menarik untuk pengalaman spin?", 1089 "acceptedAnswer": { 1090 "@type": "Answer", 1091 "text": "VENOM123 menghadirkan berbagai pilihan permainan dengan tampilan yang praktis dan responsif, sehingga pengguna dapat menikmati pengalaman spin yang nyaman melalui berbagai perangkat." 1092 } 1093 }, 1094 { 1095 "@type": "Question", 1096 "name": "Bagaimana cara mengakses VENOM123 untuk menikmati permainan spin?", 1097 "acceptedAnswer": { 1098 "@type": "Answer", 1099 "text": "Pengguna dapat mengakses situs VENOM123 melalui halaman resmi, kemudian melakukan login untuk menjelajahi pilihan permainan dan menikmati pengalaman spin sesuai preferensi." 1100 } 1101 }, 1102 { 1103 "@type": "Question", 1104 "name": "Apakah VENOM123 dapat diakses melalui smartphone?", 1105 "acceptedAnswer": { 1106 "@type": "Answer", 1107 "text": "Ya. VENOM123 dirancang dengan tampilan responsif sehingga dapat diakses melalui berbagai perangkat, termasuk smartphone Android, iPhone, tablet, laptop, dan komputer." 1108 } 1109 }, 1110 { 1111 "@type": "Question", 1112 "name": "Apa keunggulan tampilan VENOM123?", 1113 "acceptedAnswer": { 1114 "@type": "Answer", 1115 "text": "VENOM123 mengutamakan tampilan yang ringan, navigasi yang mudah dipahami, dan pengalaman penggunaan yang nyaman sehingga pengguna dapat menemukan pilihan permainan dengan lebih praktis." 1116 } 1117 }, 1118 { 1119 "@type": "Question", 1120 "name": "Apakah VENOM123 menjamin kemenangan pada setiap putaran?", 1121 "acceptedAnswer": { 1122 "@type": "Answer", 1123 "text": "Tidak ada platform yang dapat menjamin kemenangan pada setiap putaran. Hasil permainan bersifat tidak pasti, sehingga pengguna sebaiknya bermain secara bijak dan memahami risikonya." 1124 } 1125 } 1126 ] 1127} 1128</script>
1128 1129 1130
1130<script type="application/ld+json"> 1131 { 1132 "@context": "https://schema.org", 1133 "@type": "HowTo", 1134 "name": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 1135 "description": "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.", 1136 "image": "https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg", 1137 "step": [ 1138 { 1139 "@type": "HowToStep", 1140 "name": "Kunjungi Link Alternatif Resmi VENOM123 2026", 1141 "text": "Buka peramban di perangkat Anda lalu akses link alternatif resmi terbaru VENOM123 2026 agar proses login bebas dari hambatan internet positif.", 1142 "image": "https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" 1143 }, 1144 { 1145 "@type": "HowToStep", 1146 "name": "Klik Tombol Daftar atau Buat Akun Baru", 1147 "text": "Jika Anda belum memiliki akun, temukan dan klik tombol pendaftaran yang tersedia di halaman utama untuk memulai proses registrasi.", 1148 "image": "https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" 1149 }, 1150 { 1151 "@type": "HowToStep", 1152 "name": "Isi Formulir Pendaftaran dengan Data Valid", 1153 "text": "Lengkapi kolom formulir seperti username, kata sandi, email, dan nomor kontak yang aktif dengan benar agar akun Anda aman dan mudah diverifikasi.", 1154 "image": "https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" 1155 }, 1156 { 1157 "@type": "HowToStep", 1158 "name": "Lakukan Login dan Mulai Akses Layanan", 1159 "text": "Setelah akun berhasil dibuat, kembalilah ke halaman utama lalu masukkan kredensial akun Anda untuk mulai menikmati kemudahan akses di semua perangkat.", 1160 "image": "https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" 1161 }], 1162 "tool": [{ 1163 "@type": "HowToTool", 1164 "name": "Smartphone, tablet, atau komputer" 1165 }, { 1166 "@type": "HowToTool", 1167 "name": "Koneksi internet stabil" 1168 }], 1169 "totalTime": "PT5M", 1170 "estimatedCost": { 1171 "@type": "MonetaryAmount", 1172 "currency": "IDR", 1173 "value": "10000" 1174 }, 1175 "supply": { 1176 "@type": "HowToSupply", 1177 "name": "Data diri valid untuk pendaftaran" 1178 } 1179 } 1180 </script>
1180 1181</head> 1182 1183<body data-template="product" id="blossom-shine" class="template-product template-product"> 1184 <!-- Google Tag Manager (noscript) -->
vendor: 71 bytes, lines 1184-1185
1184 1185 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
1185GTM-MF9VVZX
vendor: 86 bytes, lines 1185-1186
1185" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 1186
1186<!-- End Google Tag Manager (noscript) --> 1187 <div class="header-wrapper"> 1188 <div id="shopify-section-NotifBar" class="shopify-section m-0"> 1189 <style> 1190 #notification { 1191 z-index: 99; 1192 width: 100%; 1193 transition: top 0.2s ease-in-out; 1194 } 1195 1196 #notification.promo-up { 1197 top: -48px !important; 1198 } 1199 1200 .promo-bg { 1201 width: 100%; 1202 padding: 6px 0; 1203 background: linear-gradient(to bottom, #000000 0%, #888686 50%, #fff 100%); 1204 } 1205 1206 .notification__message p { 1207 margin: 0; 1208 color: #ffd700; 1209 font-size: 20px !important; 1210 font-weight: bold; 1211 } 1212 1213 .notification__message p a { 1214 text-decoration: underline; 1215 color: #ffd700; 1216 } 1217 1218 @media (max-width: 991px) { 1219 .notification__message p { 1220 font-size: 14px !important; 1221 } 1222 } 1223 </style> 1224 <input id="clearCookie" class="hide" type="button" value="Delete Cookie" /> 1225 <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"> 1226 <div class="page-width notification__inner "> 1227 <div class="notification__message text-center"> 1228 <p>VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA</p> 1229 </div> 1230 </div> 1231 </div> 1232 </div> 1233 <div id="shopify-section-new-header" class="shopify-section mb-0 mt-0"> 1234 <link href="//outerbloom.com/cdn/shop/t/138/assets/section-new-header.css?v=159841885358852784021757475904" rel="stylesheet" type="text/css" media="all" /> 1235 <header style="background: #000;"> 1236 <div class="container"> 1237 <div class="header-container row justify-content-between pl-lg-0 pr-lg-0"> 1238 <a href="https://venom123spin.com/"> 1239 <img src="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" alt="LOGO VENOM123" style="width: 190px;"></a> 1240 <link href="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/favicon.ico" rel="shortcut icon" type="image/x-icon" /> 1241 <div id="menu-hamburger" class="d-lg-none"> 1242 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="16" height="10" viewBox="0 0 16 10" fill="none"> 1243 <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" /> 1244 </svg> 1245 <a href="/"><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" viewBox="0 0 854 78.29"> 1246 <g id="Layer_2" data-name="Layer 2"> 1247 <g id="Layer_1-2" data-name="Layer 1"> 1248 <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> 1249 <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> 1250 <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> 1251 <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> 1252 <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> 1253 <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> 1254 <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> 1255 <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> 1256 <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> 1257 <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> 1258 </g> 1259 </g> 1260 </svg> 1261 </a> 1262 </div> 1263 <div class="header-icon-right header-icons col-3"> 1264 <div class="icon icon-account-header d-none d-lg-block"> 1265 <a href="https://venom123spin.com/"> 1266 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="20" height="21" viewBox="0 0 20 21" fill="none"> 1267 <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" /> 1268 <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" /> 1269 </svg> 1270 </a> 1271 </div> 1272 <div class="icon icon-wishlist-header"> 1273 <a href="https://venom123spin.com/"> 1274 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1275 <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
12756 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" /> 1276 </svg> 1277 <span class="wishlist-count d-none">0</span> 1278 </a> 1279 </div> 1280 <div class="icon icon-cart-header"> 1281 <a href="https://venom123spin.com/"> 1282 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="22" height="21" viewBox="0 0 22 21" fill="none"> 1283 <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" /> 1284 <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" /> 1285 </svg> 1286 </a> 1287 </div> 1288 </div> 1289 </div> 1290 </div> 1291 </header> 1292 <nav class="nav-header" style="background: linear-gradient(to bottom, #000000 0%, #000000 50%, #000000 100%);"> 1293 <div class="nav-account-mobile row m-0 d-lg-none"> 1294 <div class="col-6 welcome-cust p-0"> 1295 <h1 class="logo"> 1296 <a href="https://venom123spin.com/"> 1297 <img src="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" alt="VENOM123" style="max-height:60px;"> 1298 </a> 1299 </h1> 1300 </div> 1301 <div class="col-6 login-register text-right p-0"> 1302 <a href="https://venom123-spin.pages.dev/">Log In</a> | <a href="https://venom123-spin.pages.dev/">Sign Up</a> 1303 </div> 1304 </div> 1305 <ul class="nav-menu container"> 1306 <li class="nav-menu container"> 1307 <a href="https://venom123spin.com/"> 1308 <span style="color: #ffd700;">VENOM123</span> 1309 <li class=" nav-menu container"> 1310 <a href="https://venom123spin.com/"> 1311 <span style="color: #ffd700;">VENOM123 DAFTAR</span> 1312 <li class=" nav-menu container"> 1313 <a href="https://venom123spin.com/"> 1314 <span style="color: #ffd700;">VENOM123 LOGIN</span> 1315 <li class=" nav-menu container"> 1316 <a href="https://venom123spin.com/"> 1317 <span style="color: #ffd700;">VENOM123 LINK</span> 1318 <li class=" nav-menu container"> 1319 <a href="https://venom123spin.com/"> 1320 <span style="color: #ffd700;">VENOM123 ALTERNATIF</span> 1321 <li class=" nav-menu container"> 1322 <a href="https://venom123spin.com/"> 1323 <span style="color: #ffd700;">VENOM123 LINK ALTERNATIF</span> 1324 <div class="overlay-nav"> 1325 <!-- Mobile Close Button in Overlay --> 1326 <button id="nav-close" class="nav-close-btn d-lg-none"> 1327 <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"> 1328 <path d="M18 6L6 18M6 6L18 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 1329 </svg> 1330 </button> 1331 </div> 1332
1332<script> 1333 if ($(window).width() < 992) { 1334 // Level 1 menu accordion (main menu items) 1335 $(".nav-menu .nav-menu container > a").click(function(e) { 1336 e.preventDefault() 1337 const parentLi = $(this).parent() 1338 const isCurrentlyOpen = parentLi.hasClass("menu-open") 1339 // Close all other open menus (accordion behavior) 1340 $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open") 1341 $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp() 1342 // Toggle current menu 1343 if (isCurrentlyOpen) { 1344 parentLi.removeClass("menu-open") 1345 $(this).next(".megamenu").slideUp() 1346 } else { 1347 parentLi.addClass("menu-open") 1348 $(this).next(".megamenu").slideDown() 1349 } 1350 }) 1351 // Level 2 menu accordion (submenu items with grandchildren) 1352 $(document).on('click', '.dropdown-menu .has-submenu > a', function(e) { 1353 e.preventDefault() 1354 const parentLi = $(this).parent() 1355 const isCurrentlyOpen = parentLi.hasClass("submenu-open") 1356 const grandchild = $(this).next(".grandchild") 1357 // Close all other open submenus in the same dropdown (accordion behavior) 1358 parentLi.siblings('.has-submenu').removeClass("submenu-open") 1359 parentLi.siblings('.has-submenu').find('.grandchild').slideUp() 1360 parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)') 1361 // Toggle current submenu 1362 if (isCurrentlyOpen) { 1363 parentLi.removeClass("submenu-open") 1364 grandchild.slideUp() 1365 $(this).find('.chevron-right').css('transform', 'rotate(0deg)') 1366 } else { 1367 parentLi.addClass("submenu-open") 1368 grandchild.slideDown() 1369 $(this).find('.chevron-right').css('transform', 'rotate(90deg)') 1370 } 1371 }) 1372 $("#menu-hamburger").click(function(e) { 1373 e.preventDefault() 1374 $("body").toggleClass("nav_open") 1375 }) 1376 // Handle close button click 1377 $("#nav-close").click(function(e) { 1378 e.preventDefault() 1379 $("body").removeClass("nav_open") 1380 // Close all open menus when close button is clicked 1381 $(".nav-menu .nav-menu container").removeClass("menu-open") 1382 $(".nav-menu .megamenu").slideUp() 1383 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 1384 $(".dropdown-menu .grandchild").slideUp() 1385 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 1386 }) 1387 } 1388 $(".overlay-nav").click(function(e) { 1389 e.preventDefault() 1390 $("body").removeClass("nav_open") 1391 // Close all open menus when overlay is clicked 1392 $(".nav-menu .nav-menu container").removeClass("menu-open") 1393 $(".nav-menu .megamenu").slideUp() 1394 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 1395 $(".dropdown-menu .grandchild").slideUp() 1396 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 1397 }) 1398 </script>
1398 1399 </div> 1400 <div id="shopify-section-search-popup" class="shopify-section m-0"> 1401 <style> 1402 #search-trigger { 1403 cursor: pointer; 1404 } 1405 1406 #search-popup { 1407 display: none; 1408 position: fixed; 1409 left: 0; 1410 width: 100%; 1411 top: 0; 1412 height: 100%; 1413 justify-content: center; 1414 z-index: 9999; 1415 background: rgb(196 196 196 / 30%); 1416 } 1417 1418 #search-input { 1419 align-self: center; 1420 width: 100%; 1421 height: 80px; 1422 position: absolute; 1423 top: 0; 1424 border-bottom: 0.5px solid #A3A3A3; 1425 background-color: #fff; 1426 } 1427 1428 #search-input * { 1429 align-self: center; 1430 } 1431 1432 #search-type { 1433 width: 100%; 1434 border: none; 1435 padding-right: 20px; 1436 padding-left: 20px; 1437 font-size: 16px; 1438 color: #757575; 1439 } 1440 1441 #search-btn { 1442 font-size: 16px; 1443 font-weight: 500; 1444 } 1445 1446 #search-result { 1447 min-height: 490px; 1448 width: 100%; 1449 padding-top: 80px; 1450 } 1451 1452 #search-result .container { 1453 background-color: #fff; 1454 padding: 20px 40px; 1455 } 1456 1457 body.search-popup-open { 1458 overflow: hidden; 1459 } 1460 1461 .search-popup-open #loc_delivery { 1462 display: none 1463 } 1464 1465 .search-header svg { 1466 display: none; 1467 cursor: pointer; 1468 } 1469 1470 .wrapper-search-popup { 1471 max-height: calc(100vh - 150px); 1472 overflow-y: auto; 1473 overflow-x: hidden; 1474 } 1475 1476 .group-recommend { 1477 padding: 20px 40px; 1478 } 1479 1480 .resultsearch { 1481 display: none; 1482 } 1483 1484 .results { 1485 padding: 20px 40px 1486 } 1487 1488 .resultsearch label { 1489 font-weight: 600; 1490 padding-bottom: 20px; 1491 display: block; 1492 margin-bottom: 20px; 1493 border-bottom: 1px solid #AAAAAA; 1494 } 1495 1496 ul.result_product { 1497 max-height: 300px; 1498 overflow: auto; 1499 } 1500 1501 .group-promotion ul { 1502 margin: 0; 1503 } 1504 1505 .group-promotion li { 1506 list-style: none; 1507 margin-bottom: 12px; 1508 } 1509 1510 .group-promotion li a { 1511 color: inherit; 1512 } 1513 1514 .group-recent { 1515 position: relative; 1516 padding: 20px 40px; 1517 } 1518 1519 .group-recent ul { 1520 margin: 0; 1521 } 1522 1523 .group-recent li { 1524 list-style: none; 1525 display: inline-block; 1526 margin-right: 60px; 1527 } 1528 1529 .group-recent li a { 1530 color: inherit; 1531 } 1532 1533 .last-search svg { 1534 width: 20px; 1535 vertical-align: middle; 1536 } 1537 1538 ul.last-search a { 1539 vertical-align: middle; 1540 padding: 0 10px; 1541 } 1542 1543 ul.last-search li span { 1544 cursor: pointer; 1545 } 1546 1547 .delete-all-history { 1548 position: absolute; 1549 top: 25px; 1550 right: 40px; 1551 text-decoration: underline; 1552 color: #e11d1d; 1553 cursor: pointer; 1554 font-size: 12px; 1555 } 1556 1557 form.search.search-modal__form { 1558 position: relative; 1559 } 1560 1561 button.search__button svg { 1562 width: 25px; 1563 color: #495057; 1564 fill: #757582; 1565 } 1566 1567 button.search__button.field__button { 1568 position: absolute; 1569 top: 50%; 1570 margin-top: -12px; 1571 } 1572 1573 .close-search { 1574 display: none; 1575 position: absolute; 1576 right: 65px; 1577 top: 10px; 1578 cursor: pointer; 1579 } 1580 1581 .site-overlay { 1582 position: fixed; 1583 top: 0; 1584 width: 100vw; 1585 height: 100vh; 1586 z-index: 1000; 1587 background: #0000005c; 1588 visibility: hidden; 1589 opacity: 0; 1590 pointer-events: none; 1591 transition: all .3s linear; 1592 display: block !important; 1593 } 1594 1595 .search-popup-open .site-overlay { 1596 opacity: 1;
1597 visibility: visible; 1598 pointer-events: all; 1599 z-index: -1; 1600 cursor: pointer; 1601 } 1602 1603 @media (min-width: 991px) { 1604 .group-recent ul { 1605 column-count: 3; 1606 } 1607 1608 .group-promotion li a { 1609 font-size: 12px; 1610 font-weight: 400; 1611 } 1612 1613 .group-recent li a { 1614 font-size: 12px; 1615 font-weight: 400; 1616 } 1617 } 1618 1619 .moreresult { 1620 padding: 10px 40px; 1621 border-top: 1px solid #AAAAAA; 1622 } 1623 1624 .moreresult * { 1625 align-self: center; 1626 } 1627 1628 .moreresult p { 1629 margin: 0; 1630 font-size: 12px !important; 1631 } 1632 1633 .moreresult svg { 1634 width: 13px; 1635 } 1636 1637 @media (max-width: 992px) { 1638 .icon-key-mobile { 1639 height: auto !important; 1640 width: 10px !important; 1641 } 1642 1643 body.grid-view.search-popup-open .products { 1644 -ms-flex: 0 0 100% !important; 1645 flex: 0 0 100% !important; 1646 max-width: 100% !important; 1647 } 1648 1649 button.search__button svg { 1650 width: 20px; 1651 } 1652 1653 #search-result { 1654 padding-left: 0; 1655 padding-right: 0; 1656 } 1657 1658 #search-result { 1659 padding-top: 55px; 1660 } 1661 1662 #search-input { 1663 height: 55px; 1664 } 1665 1666 .group-recommend { 1667 padding: 20px; 1668 } 1669 1670 #search-input .container { 1671 padding: 0 20px; 1672 } 1673 1674 #search-type { 1675 font-size: 14px; 1676 } 1677 1678 #search-btn { 1679 font-size: 12px; 1680 text-decoration: underline; 1681 } 1682 1683 .results { 1684 padding: 20px; 1685 } 1686 1687 .group-recommend h3 { 1688 font-size: 16px; 1689 } 1690 1691 .products .card-body { 1692 padding: 8px 0px 10px; 1693 } 1694 1695 .moreresult { 1696 padding: 10px 20px; 1697 } 1698 } 1699 </style> 1700 <style type="text/css"> 1701 div.advertisement-placeholder { 1702 text-align: center; 1703 padding-bottom: 20px; 1704 display: flex; 1705 flex-direction: column; 1706 justify-content: center; 1707 } 1708 1709 div.advertisement-text p { 1710 margin: 0; 1711 font-family: Open Sans; 1712 font-style: normal; 1713 font-weight: normal; 1714 font-size: 10px; 1715 line-height: 20px; 1716 color: #999999; 1717 } 1718 1719 div.advertisement-banner { 1720 margin: 0px auto; 1721 } 1722 1723 div#div-gpt-ad-billboard-placeholder { 1724 width: 996px; 1725 margin: 0 auto; 1726 background: #F5F5F5; 1727 padding-bottom: unset !important; 1728 min-height: 200px; 1729 } 1730 1731 div#div-gpt-ad-lb-placeholder { 1732 background: #F5F5F5; 1733 padding-bottom: unset !important; 1734 min-height: 280px; 1735 } 1736 1737 .faq-section { 1738 max-width: 1200px; 1739 margin: 50px auto; 1740 padding: 40px 20px; 1741 position: relative; 1742 background-color: rgba(0, 0, 0, 0.1); 1743 backdrop-filter: blur(25px); 1744 border-radius: 20px; 1745 } 1746 1747 .faq-section::before { 1748 content: ""; 1749 position: absolute; 1750 top: 0; 1751 left: 50%; 1752 transform: translateX(-50%); 1753 width: 80%; 1754 height: 2px; 1755 background: linear-gradient(90deg, transparent, #ffd700, transparent) 1756 } 1757 1758 .faq-section h2 { 1759 text-align: center; 1760 font-size: 34px; 1761 font-weight: 700; 1762 margin-bottom: 50px; 1763 background: linear-gradient(135deg, #ffd700, #ffd700, #ffd700); 1764 -webkit-background-clip: text; 1765 -webkit-text-fill-color: transparent; 1766 background-clip: text; 1767 font-family: "Poppins", sans-serif; 1768 letter-spacing: 1px 1769 } 1770 1771 .faq-container { 1772 display: flex; 1773 flex-direction: column; 1774 gap: 25px 1775 } 1776 1777 .faq-item { 1778 background: linear-gradient(145deg, #0a0a0a, #1a1a1a); 1779 border: 2px solid #ffd700; 1780 border-radius: 20px; 1781 overflow: hidden; 1782 transition: all .4s ease; 1783 box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5) 1784 } 1785 1786 .faq-item:hover { 1787 border-color: #ffd700; 1788 transform: translateX(10px); 1789 box-shadow: 0 12px 35px rgba(253, 187, 4, 0.25) 1790 } 1791 1792 .faq-question { 1793 width: 100%; 1794 padding: 28px 35px; 1795 background: transparent; 1796 color: #ffffff; 1797 font-size: 18px; 1798 font-weight: 600; 1799 text-align: left; 1800 border: none; 1801 cursor: pointer; 1802 display: flex; 1803 justify-content: space-between; 1804 align-items: center; 1805 font-family: "Poppins", sans-serif; 1806 transition: all .3s ease 1807 } 1808 1809 .faq-question:hover { 1810 color: #ffd700 1811 } 1812 1813 .faq-question::after { 1814 content: '+'; 1815 font-size: 32px; 1816 font-weight: 300; 1817 transition: all .4s ease; 1818 color: #ffd700; 1819 width: 40px; 1820 height: 40px; 1821 display: flex; 1822 align-items: center; 1823 justify-content: center; 1824 border: 2px solid #ffd700; 1825 border-radius: 50%; 1826 background: rgba(0, 0, 0, 0.1) 1827 } 1828 1829 .faq-item.active .faq-question::after { 1830 transform: rotate(135deg); 1831 background: linear-gradient(to bottom, #000000 0%, #000000 50%, #000000 100%); 1832 color: #ffd700; 1833 border-color: transparent 1834 } 1835 1836 .faq-answer { 1837 max-height: 0; 1838 overflow: hidden; 1839 transition: max-height .5s ease, padding .5s ease; 1840 background: linear-gradient(180deg, rgba(253, 228, 4, 0.05), transparent); 1841 padding: 0 35px 1842 } 1843 1844 .faq-item.active .faq-answer { 1845 max-height: 800px; 1846 padding: 30px 35px; 1847 border-top: 1px solid #ffd700 1848 } 1849 1850 .faq-answer p {
1851 color: #e0e0e0; 1852 font-size: 16px; 1853 line-height: 2; 1854 margin: 0; 1855 font-family: "Poppins", sans-serif 1856 } 1857 1858 @media (max-width:768px) { 1859 .faq-section { 1860 padding: 30px 15px 1861 } 1862 1863 .faq-section h2 { 1864 font-size: 26px 1865 } 1866 1867 .faq-question { 1868 font-size: 16px; 1869 padding: 22px 25px 1870 } 1871 1872 .faq-question::after { 1873 width: 35px; 1874 height: 35px; 1875 font-size: 28px 1876 } 1877 1878 .faq-answer { 1879 padding: 0 25px 1880 } 1881 1882 .faq-item.active .faq-answer { 1883 padding: 25px 1884 } 1885 1886 .faq-item:hover { 1887 transform: translateX(5px) 1888 } 1889 } 1890 </style> 1891 <div id="search-popup"> 1892 <div id="search-input" class="row"> 1893 <div class="container w-100"> 1894 <form action="/search" method="get" role="search" class="search search-modal__form d-flex justify-content-between"> 1895 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="20" height="20" viewBox="0 0 20 20" fill="none"> 1896 <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" /> 1897 </svg> 1898 <input type="hidden" name="type" value="product"> 1899 <input type="text" id="search-type" name="q" class="search-popup" placeholder="Gifts that linger: Uncover treasures for cherished moments."> 1900 <div class="close-search"><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="18" height="18" viewBox="0 0 18 18" fill="none"> 1901 <path d="M9 9.708L12.246 12.954C12.3393 13.0473 12.454 13.0973 12.59 13.104C12.726 13.1107 12.8473 13.0607 12.954 12.954C13.0607 12.8473 13.114 12.7293 13.114 12.6C13.114 12.4707 13.0607 12.3527 12.954 12.246L9.708 9L12.954 5.754C13.0473 5.66067 13.0973 5.546 13.104 5.41C13.1107 5.274 13.0607 5.15267 12.954 5.046C12.8473 4.93933 12.7293 4.886 12.6 4.886C12.4707 4.886 12.3527 4.93933 12.246 5.046L9 8.292L5.754 5.046C5.66067 4.95267 5.546 4.90267 5.41 4.896C5.274 4.88933 5.15267 4.93933 5.046 5.046C4.93933 5.15267 4.886 5.27067 4.886 5.4C4.886 5.52933 4.93933 5.64733 5.046 5.754L8.292 9L5.046 12.246C4.95267 12.3393 4.90267 12.4543 4.896 12.591C4.88933 12.7263 4.93933 12.8473 5.046 12.954C5.15267 13.0607 5.27067 13.114 5.4 13.114C5.52933 13.114 5.64733 13.0607 5.754 12.954L9 9.708ZM9.003 18C7.75833 18 6.58833 17.764 5.493 17.292C4.39767 16.8193 3.44467 16.178 2.634 15.368C1.82333 14.558 1.18167 13.606 0.709 12.512C0.236333 11.418 0 10.2483 0 9.003C0 7.75767 0.236333 6.58767 0.709 5.493C1.181 4.39767 1.82133 3.44467 2.63 2.634C3.43867 1.82333 4.391 1.18167 5.487 0.709C6.583 0.236333 7.753 0 8.997 0C10.241 0 11.411 0.236333 12.507 0.709C13.6023 1.181 14.5553 1.82167 15.366 2.631C16.1767 3.44033 16.8183 4.39267 17.291 5.488C17.7637 6.58333 18 7.753 18 8.997C18 10.241 17.764 11.411 17.292 12.507C16.82 13.603 16.1787 14.556 15.368 15.366C14.5573 16.176 13.6053 16.8177 12.512 17.291C11.4187 17.7643 10.249 18.0007 9.003 18ZM9 17C11.2333 17 13.125 16.225 14.675 14.675C16.225 13.125 17 11.2333 17 9C17 6.76667 16.225 4.875 14.675 3.325C13.125 1.775 11.2333 1 9 1C6.76667 1 4.875 1.775 3.325 3.325C1.775 4.875 1 6.76667 1 9C1 11.2333 1.775 13.125 3.325 14.675C4.875 16.225 6.76667 17 9 17Z" fill="#757575" /> 1902 </svg> 1903 </div> 1904 <button id="search-btn">Search</button> 1905 </form> 1906 </div> 1907 </div> 1908 <div id="search-result" class="container m-auto"> 1909 <div class="container p-0">
1910 <div class="group-promotion"> 1911 <div class="resultsearch"> 1912 <div class="row results"> 1913 <div class="col-12 col-lg-6 mb-3 mb-lg-0"> 1914 <label>SUGGESTIONS</label> 1915 <ul class="result_collection"></ul> 1916 </div> 1917 <div class="col-12 col-lg-6"> 1918 <label>PRODUCTS</label> 1919 <ul class="result_product"></ul> 1920 </div> 1921 </div> 1922 <div class="d-flex justify-content-between moreresult m-0"> 1923 <p>Search for<span></span></p> 1924 <svg version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="32" height="32" viewBox="0 0 32 32"> 1925 <title>icon-arrow-right</title> 1926 <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> 1927 </svg> 1928 </div> 1929 </div> 1930 </div> 1931 <div class="group-recent hide"> 1932 <h3>RECENT SEARCH</h3> 1933 <span class="delete-all-history">Hapus riwayat</span> 1934 <ul class="last-search"></ul> 1935 </div> 1936 <div class="group-recommend"> 1937 <h3>YOU MAY ALSO LIKE</h3> 1938 <div class="row popup-recommend c-products-grid infinite-case product-multi-"> 1939 <div class="swiper-wrapper justify-content-between" style="margin-left:1px;"> 1940 <div class="swiper-slide card"> 1941 <div class="products" data-lazy="false"> 1942 <div class="bg-products"> 1943 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-love-mooncake"> 1944 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1945 <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.
194511233C11.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" /> 1946 </svg> 1947 </div> 1948 <a href="/products/mid-autumn-of-love-mooncake"> 1949 <div class="product-card-img-container p-0 position-relative"> 1950 <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"> 1951 </div> 1952 <div class="card-body product-card-info"> 1953 <h5 class="h5 mb-0"> Mid Autumn of Love Mooncake </h5> 1954 <div class="product-card-price"> 1955 <div class="product-price-sale"> 1956 <s class="product-card-price-before card-money">Rp 588.000</s> 1957 <span class="product-card-discount small"> (-40%) </span> 1958 </div> 1959 <div class="price-discount"> 1960 <h4 class="product-card-price-after card-money">Rp 348.000</h4> 1961 </div> 1962 </div> 1963 </div> 1964 </a> 1965 </div> 1966 </div> 1967 </div> 1968 <div class="swiper-slide card"> 1969 <div class="products" data-lazy="false"> 1970 <div class="bg-products"> 1971 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-joy-mooncake"> 1972 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1973 <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.
197311233C11.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" /> 1974 </svg> 1975 </div> 1976 <a href="/products/mid-autumn-of-joy-mooncake"> 1977 <div class="product-card-img-container p-0 position-relative"> 1978 <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"> 1979 </div> 1980 <div class="card-body product-card-info"> 1981 <h5 class="h5 mb-0"> Mid Autumn of Joy Mooncake </h5> 1982 <div class="product-card-price"> 1983 <div class="product-price-sale"> 1984 <s class="product-card-price-before card-money">Rp 888.000</s> 1985 <span class="product-card-discount small"> (-33%) </span> 1986 </div> 1987 <div class="price-discount"> 1988 <h4 class="product-card-price-after card-money">Rp 588.000</h4> 1989 </div> 1990 </div> 1991 </div> 1992 </a> 1993 </div> 1994 </div> 1995 </div> 1996 <div class="swiper-slide card"> 1997 <div class="products" data-lazy="false"> 1998 <div class="bg-products"> 1999 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-fortune-mooncake"> 2000 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 2001 <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.
200111233C11.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" /> 2002 </svg> 2003 </div> 2004 <a href="/products/mid-autumn-of-fortune-mooncake"> 2005 <div class="product-card-img-container p-0 position-relative"> 2006 <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"> 2007 </div> 2008 <div class="card-body product-card-info"> 2009 <h5 class="h5 mb-0"> Mid Autumn of Fortune Mooncake </h5> 2010 <div class="product-card-price"> 2011 <div class="product-price-sale"> 2012 <s class="product-card-price-before card-money">Rp 1.188.000</s> 2013 <span class="product-card-discount small"> (-33%) </span> 2014 </div> 2015 <div class="price-discount"> 2016 <h4 class="product-card-price-after card-money">Rp 788.000</h4> 2017 </div> 2018 </div> 2019 </div> 2020 </a> 2021 </div> 2022 </div> 2023 </div> 2024 <div class="swiper-slide card"> 2025 <div class="products" data-lazy="false"> 2026 <div class="bg-products"> 2027 <div class="wishlist-toggle" data-product-handle="mid-autumn-festival-mooncake"> 2028 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 2029 <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.
202911233C11.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" /> 2030 </svg> 2031 </div> 2032 <a href="/products/mid-autumn-festival-mooncake"> 2033 <div class="product-card-img-container p-0 position-relative"> 2034 <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"> 2035 </div> 2036 <div class="card-body product-card-info"> 2037 <h5 class="h5 mb-0"> Mid Autumn Festival Mooncake </h5> 2038 <div class="product-card-price"> 2039 <div class="product-price-sale"> 2040 <s class="product-card-price-before card-money">Rp 1.288.000</s> 2041 <span class="product-card-discount small"> (-23%) </span> 2042 </div> 2043 <div class="price-discount"> 2044 <h4 class="product-card-price-after card-money">Rp 988.000</h4> 2045 </div> 2046 </div> 2047 </div> 2048 </a> 2049 </div> 2050 </div> 2051 </div> 2052 <div class="swiper-slide card"> 2053 <div class="products" data-lazy="false"> 2054 <div class="bg-products"> 2055 <div class="wishlist-toggle" data-product-handle="the-jade-bouquet"> 2056 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 2057 <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.
205711233C11.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" /> 2058 </svg> 2059 </div> 2060 <a href="/products/the-jade-bouquet"> 2061 <div class="product-card-img-container p-0 position-relative"> 2062 <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"> 2063 </div> 2064 <div class="card-body product-card-info"> 2065 <h5 class="h5 mb-0"> The Jade Bouquet </h5> 2066 <div class="product-card-price"> 2067 <div class="product-price-sale"> 2068 <s class="product-card-price-before card-money">Rp 435.000</s> 2069 <span class="product-card-discount small"> (-34%) </span> 2070 </div> 2071 <div class="price-discount"> 2072 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 2073 </div> 2074 </div> 2075 </div> 2076 </a> 2077 </div> 2078 </div> 2079 </div> 2080 <div class="swiper-slide card"> 2081 <div class="products" data-lazy="false"> 2082 <div class="bg-products"> 2083 <div class="wishlist-toggle" data-product-handle="the-selena-bouquet"> 2084 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 2085 <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.
208511233C11.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" /> 2086 </svg> 2087 </div> 2088 <a href="/products/the-selena-bouquet"> 2089 <div class="product-card-img-container p-0 position-relative"> 2090 <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"> 2091 </div> 2092 <div class="card-body product-card-info"> 2093 <h5 class="h5 mb-0"> The Selena Bouquet </h5> 2094 <div class="product-card-price"> 2095 <div class="product-price-sale"> 2096 <s class="product-card-price-before card-money">Rp 335.000</s> 2097 <span class="product-card-discount small"> (-29%) </span> 2098 </div> 2099 <div class="price-discount"> 2100 <h4 class="product-card-price-after card-money">Rp 235.000</h4> 2101 </div> 2102 </div> 2103 </div> 2104 </a> 2105 </div> 2106 </div> 2107 </div> 2108 <div class="swiper-slide card"> 2109 <div class="products" data-lazy="false"> 2110 <div class="bg-products"> 2111 <div class="wishlist-toggle" data-product-handle="the-viola-bouquet"> 2112 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 2113 <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.
211311233C11.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" /> 2114 </svg> 2115 </div> 2116 <a href="/products/the-viola-bouquet"> 2117 <div class="product-card-img-container p-0 position-relative"> 2118 <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"> 2119 </div> 2120 <div class="card-body product-card-info"> 2121 <h5 class="h5 mb-0"> The Viola Bouquet </h5> 2122 <div class="product-card-price"> 2123 <div class="product-price-sale"> 2124 <s class="product-card-price-before card-money">Rp 385.000</s> 2125 <span class="product-card-discount small"> (-25%) </span> 2126 </div> 2127 <div class="price-discount"> 2128 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 2129 </div> 2130 </div> 2131 </div> 2132 </a> 2133 </div> 2134 </div> 2135 </div> 2136 <div class="swiper-slide card"> 2137 <div class="products" data-lazy="false"> 2138 <div class="bg-products"> 2139 <div class="wishlist-toggle" data-product-handle="the-minerva-bouquet"> 2140 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 2141 <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.
214111233C11.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" /> 2142 </svg> 2143 </div> 2144 <a href="/products/the-minerva-bouquet"> 2145 <div class="product-card-img-container p-0 position-relative"> 2146 <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"> 2147 </div> 2148 <div class="card-body product-card-info"> 2149 <h5 class="h5 mb-0"> The Minerva Bouquet </h5> 2150 <div class="product-card-price"> 2151 <div class="product-price-sale"> 2152 <s class="product-card-price-before card-money">Rp 385.000</s> 2153 <span class="product-card-discount small"> (-25%) </span> 2154 </div> 2155 <div class="price-discount"> 2156 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 2157 </div> 2158 </div> 2159 </div> 2160 </a> 2161 </div> 2162 </div> 2163 </div> 2164 <div class="swiper-slide card"> 2165 <div class="products" data-lazy="false"> 2166 <div class="bg-products"> 2167 <div class="wishlist-toggle" data-product-handle="congraduations-bouquet"> 2168 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 2169 <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.
216911233C11.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" /> 2170 </svg> 2171 </div> 2172 <a href="/products/congraduations-bouquet"> 2173 <div class="product-card-img-container p-0 position-relative"> 2174 <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"> 2175 </div> 2176 <div class="card-body product-card-info"> 2177 <h5 class="h5 mb-0"> Congraduations Bouquet </h5> 2178 <div class="product-card-price"> 2179 <div class="product-price-sale"> 2180 <s class="product-card-price-before card-money">Rp 380.000</s> 2181 <span class="product-card-discount small"> (-25%) </span> 2182 </div> 2183 <div class="price-discount"> 2184 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 2185 </div> 2186 </div> 2187 </div> 2188 </a> 2189 </div> 2190 </div> 2191 </div> 2192 <div class="swiper-slide card"> 2193 <div class="products" data-lazy="false"> 2194 <div class="bg-products"> 2195 <div class="wishlist-toggle" data-product-handle="grad-gorgeous-bouquet"> 2196 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="21" viewBox="0 0 24 21" fill="none"> 2197 <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.
219711233C11.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" /> 2198 </svg> 2199 </div> 2200 <a href="/products/grad-gorgeous-bouquet"> 2201 <div class="product-card-img-container p-0 position-relative"> 2202 <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"> 2203 </div> 2204 <div class="card-body product-card-info"> 2205 <h5 class="h5 mb-0">
2205 Grad & Gorgeous Bouquet </h5> 2206 <div class="product-card-price"> 2207 <div class="product-price-sale"> 2208 <s class="product-card-price-before card-money">Rp 380.000</s> 2209 <span class="product-card-discount small"> (-25%) </span> 2210 </div> 2211 <div class="price-discount"> 2212 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 2213 </div> 2214 </div> 2215 </div> 2216 </a> 2217 </div> 2218 </div> 2219 </div> 2220 </div> 2221 </div> 2222 </div> 2223 </div> 2224 </div> 2225 <div class="site-overlay" style="display: none"></div> 2226 </div> 2227
2227<script> 2228 var swiper = new Swiper('.popup-recommend', { 2229 slidesPerView: 4, 2230 spaceBetween: 30, 2231 lazy: true, 2232 speed: 300, 2233 breakpoints: { 2234 // when window width is <= 576px 2235 576: { 2236 slidesPerView: 2, 2237 spaceBetween: 10, 2238 freeMode: true, 2239 resistance: true, 2240 resistanceRatio: 0, 2241 freeModeMomentumRatio: 0.45, 2242 freeModeMomentumVelocityRatio: 1.5 2243 }, 2244 768: { 2245 slidesPerView: 2, 2246 spaceBetween: 10 2247 }, 2248 992: { 2249 slidesPerView: 3, 2250 spaceBetween: 20 2251 } 2252 } 2253 }); 2254 const searchContainer = $("#search-popup") 2255 const searchInput = $(".search-popup") 2256 const result_collection = $('.result_collection') 2257 const result_product = $('.result_product') 2258 const resultsearch = $('.resultsearch') 2259 const resultrecommend = $(".group-recommend") 2260 const moreresult = $(".moreresult") 2261 searchInput.keyup(function() { 2262 const input = $(this).val() 2263 moreresult.find("p span").text(` â${input}â`) 2264 if (input.length > 2) { 2265 $(".close-search").show() 2266 const url = `https://outerbloom.com/search/suggest.json?resources[limit]=10&resources[limit_scope]=each&resources[type]=collection,product&q=${input}` 2267 $.ajax({
2268 type: 'GET', 2269 url, 2270 beforeSend: function() { 2271 // setting a timeout 2272 // $(placeholder).addClass('loading'); 2273 }, 2274 success: function(response) { 2275 resultsearch.show() 2276 resultrecommend.hide() 2277 result_collection.html("") 2278 result_product.html("") 2279 const collections = response.resources.results.collections 2280 const products = response.resources.results.products 2281 let collection_length = collections.length 2282 let product_length = products.length 2283 // if(collections.length > 5) { 2284 // collection_length = 5 2285 // } 2286 // if(products.length > 5) { 2287 // product_length = 5 2288 // } 2289 for (let i = 0; i < collection_length; i++) { 2290 const title = collections[i].title 2291 const url = collections[i].url 2292 let html_collection 2293 if (!title.includes('AIA') && !title.includes('AXA') && !title.includes('WOM') && !title.includes('Upsell')) { 2294 html_collection = ` 2295 <li class="item" data-title="${title}"> 2296 <a href="${url}" data-type="collection" class="item_url" data-title="${title}" data-url="${url}">${title}</a> 2297 </li> 2298 ` 2299 } 2300 result_collection.append(html_collection) 2301 } 2302 for (let i = 0; i < product_length; i++) { 2303 const title = products[i].title 2304 const url = products[i].url 2305 const image = products[i].featured_image.url 2306 const vendor = products[i].vendor 2307 let html_product 2308 if (vendor !== 'AIA' && vendor !== 'AXA' && vendor !== 'WOM Finance' && !title.includes('Extra Shipping Cost') && !title.includes('[US]') && !title.includes('Rp')) { 2309 html_product = ` 2310 <li class="item" data-vendor="${vendor}"> 2311 <a href="${url}" class="item_url" data-type="product" data-title="${title}" data-url="${url}"> 2312 <img src="${image}" alt="${title}" style="width: 70px;vertical-align: middle;margin-right: 20px;"><span>${title}</span> 2313 </a> 2314 </li> 2315 ` 2316 } 2317 result_product.append(html_product) 2318 } 2319 }, 2320 error: function(xhr) { // if error occured 2321 alert("Error occured.please try again"); 2322 }, 2323 complete: function(response) { 2324 // $(placeholder).removeClass('loading'); 2325 }, 2326 dataType: 'JSON' 2327 }); 2328 } else { 2329 result_collection.html("") 2330 result_product.html("") 2331 resultsearch.hide() 2332 resultrecommend.show() 2333 } 2334 }) 2335 moreresult.click(function() { 2336 $("#search-btn").trigger("click"); 2337 }) 2338 $(".close-search").click(function() { 2339 $(this).hide() 2340 searchInput.val("") 2341 searchInput.focus() 2342 resultsearch.hide() 2343 resultrecommend.show() 2344 }) 2345 2346 function setCookie(name, value, days) { 2347 var expires = ""; 2348 if (days) { 2349 var date = new Date(); 2350 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); 2351 expires = "; expires=" + date.toUTCString(); 2352 } 2353 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 2354 } 2355 2356 function getCookie(name) { 2357 var nameEQ = name + "="; 2358 var ca = document.cookie.split(';'); 2359 for (var i = 0; i < ca.length; i++) { 2360 var c = ca[i]; 2361 while (c.charAt(0) == ' ') c = c.substring(1, c.length); 2362 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); 2363 } 2364 return null; 2365 } 2366 let last_search_name = [] 2367 let last_search_url = [] 2368 $(".group-recent").hide() 2369 if (getCookie("last_search_name") != null && getCookie("last_search_url") != null) { 2370 if (getCookie("last_search_name") != "" && getCookie("last_search_url") != "") { 2371 $(".group-recent").show() 2372 last_search_name = getCookie("last_search_name"); 2373 last_search_url = getCookie("last_search_url"); 2374 const arrName = last_search_name.substring(1).split(',').reverse() 2375 const arrUrl = last_search_url.substring(1).split(',').reverse() 2376 console.log(arrName, 'Array Name') 2377 console.log(arrUrl, 'Array Url') 2378 let length = arrName.length 2379 if (arrName.length > 5) { 2380 length = 5 2381 } 2382 for (let n = 0; n < length; n++) { 2383 let html2 = `<li><svg viewBox="0 0 24 24" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"><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]}">
2383${arrName[n]}</a><span data-title="${arrName[n]}" data-url="${arrUrl[n]}"></span></li>` 2384 $(".group-recent ul").append(html2) 2385 } 2386 } 2387 } 2388 console.log(last_search_name, 'Name') 2389 console.log(last_search_url, 'url') 2390 resultsearch.delegate(".item a", "click", function() { 2391 let name = [last_search_name] 2392 let url = [last_search_url] 2393 name.push($(this).attr('data-title')) 2394 url.push($(this).attr('data-url')) 2395 setCookie("last_search_name", name, 7); 2396 setCookie("last_search_url", url, 7); 2397 }) 2398 $(".delete-all-history").click(function() { 2399 setCookie("last_search_name", null, 0); 2400 setCookie("last_search_url", null, 0); 2401 $(".last-search").hide(); 2402 setTimeout(function() { 2403 location.reload(); 2404 }, 500); 2405 }) 2406 $("#search-trigger").click(function() { 2407 search_open() 2408 }) 2409 $(".icon-search-mobile").click(function() { 2410 search_open() 2411 }) 2412 $(".search-header svg").click(function() { 2413 search_close() 2414 }) 2415 $(".icon-key-mobile").click(function() { 2416 search_close() 2417 }) 2418 2419 function search_open() { 2420 $("body").addClass("search-popup-open") 2421 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").hide() 2422 $("#search-popup, .search-header svg, .icon-key-mobile").show() 2423 $(".search-popup").focus() 2424 $('.popup-recommend')[0].swiper.update(); 2425 } 2426 2427 function search_close() { 2428 $("body").removeClass("search-popup-open") 2429 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").show() 2430 $("#search-popup, .search-header svg, .icon-key-mobile").hide() 2431 searchInput.val("") 2432 resultsearch.hide() 2433 resultrecommend.show() 2434 } 2435 $(".site-overlay").click(function() { 2436 search_close() 2437 }) 2438 </script>
2438 2439 </div> 2440 </div> 2441 <div id="PageContainer" class="is-moved-by-drawerx" style="background-color: #000000;"> 2442 <main class="main-content pt-0" role="main"> 2443 <div id="breadcrumbProduct" class="d-none d-lg-block"> 2444 <style> 2445 #breadcrumbProduct { 2446 padding: 20px 0; 2447 } 2448 2449 #breadcrumbProduct ul { 2450 display: flex; 2451 padding: 0; 2452 list-style: none; 2453 margin: 0; 2454 gap: 12px; 2455 } 2456 2457 #breadcrumbProduct ul li { 2458 text-transform: uppercase; 2459 margin: 0; 2460 font-size: 12px; 2461 } 2462 2463 #breadcrumbProduct ul li a { 2464 color: #ffd700; 2465 } 2466 2467 #breadcrumbProduct ul li svg { 2468 width: 10px; 2469 height: 10px; 2470 padding: 0; 2471 color: #ffd700; 2472 vertical-align: middle; 2473 } 2474 </style> 2475 <div class="container" style="color: #ffd700;"> 2476 <ul role="navigation" aria-label="breadcrumbs"> 2477 <li><a href="https://venom123spin.com/" style="color: #ffd700;">VENOM123</a></li> 2478 <li><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2479 <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" /> 2480 </svg></li> 2481 <li><a href="https://venom123spin.com/" style="color: #ffd700;">VENOM123 DAFTAR</a></li> 2482 <li><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2483 <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" /> 2484 </svg></li> 2485 <li><a href="https://venom123spin.com/" style="color: #ffd700;">VENOM123 LOGIN</a></li> 2486 <li><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2487 <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" /> 2488 </svg></li> 2489 <li><a style="color: #ffd700;">VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA</a></li> 2490 </ul> 2491 </div> 2492 </div> 2493 <div id="shopify-section-Product" class="shopify-section product-section mt-0"> 2494 <link href="https://tahanpukul.info/outerbloom-global.css" rel="stylesheet" type="text/css" media="all" /> 2495 <style> 2496 .bg-card { 2497 background-color: #ffd700; 2498 } 2499 </style> 2500 <!-- /templates/product.liquid --> 2501 <!-- <div itemscope itemtype="http://schema.org/Product"> --> 2502 <div class="product-standing-flower" data-product-type="flowerBoard"> 2503 <meta itemprop="url" content="https://venom123spin.com/"> 2504 <meta itemprop="image" content="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg"> 2505 <input id="data-sku" type="hidden" value="OBVSTF1086"> 2506 <div class="product-single" style="background-image: url(https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/background.png); background-attachment: fixed;"> 2507 <div id="product-top" class="container"> 2508 <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;"> 2509 <div id="product-image" class="col-lg-7 text-center"> 2510 <div class="product-image"> 2511 <div class="row no-gutters"> 2512 <div id="product-featured-image" class="row w-100"> 2513 <div id="thumb-image-product" class="col-lg-2 col-12 d-none d-lg-block"> 2514 <div class="swiper-container gallery-thumbs" style="min-height: 500px"> 2515 <ul class="list-unstyled slider swiper-wrapper slider-nav ProductThumbs thumbnails" id="ProductThumbsx"> 2516 <li class="swiper-slide" data-type="image"> 2517 <a href="files/Blossom-Shine-WM.jpg" data-standard="https://i.ibb.co/dq
2517LZYs2/VENOM123-SPIN.jpg" data-image="files/Blossom-Shine-WM.jpg" data-position="1" class="product-single__thumbnail"> 2518 <img class="lazyload w-100" src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" alt="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA" width="" height=""> 2519 </a> 2520 </li> 2521 <li class="swiper-slide" data-type="image"> 2522 <a href="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" data-standard="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" data-image="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" data-position="2" class="product-single__thumbnail"> 2523 <img class="lazyload w-100" src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" alt="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA" width="" height=""> 2524 </a> 2525 </li> 2526 <li class="swiper-slide" data-type="image"> 2527 <a href="files/Blossom-Shine_3-WM.jpg" data-standard="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" data-image="files/Blossom-Shine_3-WM.jpg" data-position="3" class="product-single__thumbnail"> 2528 <img class="lazyload w-100" src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" alt="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA" width="" height=""> 2529 </a> 2530 </li> 2531 <li class="swiper-slide" data-type="image"> 2532 <a href="files/Blossom-Shine_4.jpg" data-standard="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" data-image="files/Blossom-Shine_4.jpg" data-position="4" class="product-single__thumbnail"> 2533 <img class="lazyload w-100" src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" alt="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA" width="" height=""> 2534 </a> 2535 </li> 2536 </ul> 2537 </div> 2538 </div> 2539 <div id="featured-image-product" class="col-lg-10 col-12 d-none d-lg-block"> 2540 <div class="swiper-container gallery-top"> 2541 <div class="swiper-slide product-single__image"> 2542 <div class="product-single__photos slider slider-for" id="ProductPhoto"> 2543 <div class="easyzoom easyzoom--overlay easyzoom--with-thumbnails"> 2544 <a href="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg"> 2545 <img src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" alt="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA" id="ProductPhotoImg" class="lazyload"> 2546 </a> 2547 </div> 2548 </div> 2549 </div> 2550 <div class="swiper-slide product-single__video" style="display: none"> 2551 <video src="https://cdn.shopify.com/videos/c/vp/05d379ea115d41c2bd0f7d08b1496bd9/05d379ea115d41c2bd0f7d08b1496bd9.HD-1080p-7.2Mbps-24002195.mp4" playsinline loop muted></video> 2552 </div> 2553 </div> 2554 </div> 2555 </div> 2556 <div id="featured-image-product2" class="col-12 d-lg-none"> 2557 <div class="swiper-container gallery-mobile"> 2558 <ul class="swiper-wrapper"> 2559 <li class="swiper-slide img"> 2560 <img class="swiper-lazy" src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" data-src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" alt="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA" width="" height=""> 2561 </li> 2562 <li class="swiper-slide img"> 2563 <img class="swiper-lazy" src="https://i.ibb.co/dq
2563LZYs2/VENOM123-SPIN.jpg" data-src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" alt="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA" width="" height=""> 2564 </li> 2565 <li class="swiper-slide img"> 2566 <img class="swiper-lazy" src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" data-src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" alt="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA" width="" height=""> 2567 </li> 2568 <li class="swiper-slide img"> 2569 <img class="swiper-lazy" src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" data-src="https://i.ibb.co/dqLZYs2/VENOM123-SPIN.jpg" alt="VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA" width="" height=""> 2570 </li> 2571 </ul> 2572 <div class="swiper-button-prev"><svg class="icon icon-chevron-left" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="7" height="12" viewBox="0 0 7 12"> 2573 <circle cx="60%" cy="50%" r="12" fill="transparent" /> 2574 <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" /> 2575 </svg></div> 2576 <div class="swiper-button-next"><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2577 <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" /> 2578 </svg></div> 2579 <!-- Add Pagination --> 2580 <div class="swiper-pagination"></div> 2581 </div> 2582 </div> 2583 <div class="product-m-pageleb-video col-12 text-center d-lg-none"> 2584 <!-- product video --> 2585 <style> 2586 .c-pdp-product-info { 2587 background-color: #000000 !important; 2588 padding: 12px; 2589 margin: 0; 2590 color: white; 2591 } 2592 2593 .view-video { 2594 display: block; 2595 margin: auto; 2596 padding: 5px 10px; 2597 font-size: 16px; 2598 font-weight: bold; 2599 border: 2px solid #ffffff; 2600 background: #fff; 2601 } 2602 2603 .view-video .icon-play { 2604 fill: #ffffff; 2605 vertical-align: middle; 2606 } 2607 2608 .video-modal { 2609 display: none; 2610 position: fixed; 2611 background: rgba(0, 0, 0, .5); 2612 width: 100%; 2613 height: 100%; 2614 overflow: auto; 2615 z-index: 1; 2616 top: 0; 2617 left: 0; 2618 } 2619 2620 .close-video { 2621 position: absolute; 2622 right: 9px; 2623 top: 8%; 2624 z-index: 2; 2625 padding: 5px; 2626 } 2627 2628 .close-video .icon { 2629 width: 30px; 2630 height: 30px; 2631 } 2632 2633 /*responsive iframe */ 2634 .video-container { 2635 position: relative; 2636 padding-bottom: 48.25%; 2637 padding-top: 35px; 2638 height: 0; 2639 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); 2640 } 2641 2642 .video-container iframe { 2643 position: absolute; 2644 top: 60%; 2645 left: 0; 2646 width: 100%; 2647 height: 100%; 2648 } 2649 2650 .youtube { 2651 background-color: #000; 2652 margin-bottom: 30px; 2653 position: relative; 2654 padding-top: 56.25%; 2655 overflow: hidden; 2656 cursor: pointer; 2657 width: 100%; 2658 } 2659 2660 .swiper-slide .youtube { 2661 max-width: 480px; 2662 } 2663 2664 .youtube img { 2665 width: 100%; 2666 top: -16.82%; 2667 left: 0; 2668 opacity: 0.7; 2669 } 2670 2671 .youtube .play-button { 2672 width: 90px; 2673 height: 60px; 2674 background-color: #333; 2675 box-shadow: 0 0 30px rgba(0, 0, 0, 0.6); 2676 z-index: 1; 2677 opacity: 0.8; 2678 border-radius: 6px; 2679 } 2680 2681 .youtube .play-button:before { 2682 content: ""; 2683 border-style: solid; 2684 border-width: 15px 0 15px 26.0px; 2685 border-color: transparent transparent transparent #fff; 2686 } 2687 2688 .youtube img, 2689 .youtube .play-button { 2690 cursor: pointer; 2691 } 2692 2693 .youtube img, 2694 .youtube iframe, 2695 .youtube .play-button, 2696 .youtube .play-button:before { 2697 position: absolute; 2698 } 2699 2700 .youtube .play-button, 2701 .youtube .play-button:before { 2702 top: 50%; 2703 left: 50%; 2704 transform: translate3d(-50%, -50%, 0); 2705 } 2706 2707 .youtube iframe { 2708 height: 100%; 2709 width: 100%; 2710 top: 0; 2711 left: 0; 2712 } 2713 </style> 2714 </div> 2715 </div> 2716 <div class="product-desc-add position-relative d-none d-lg-block m-0"> 2717 </div> 2718
2718<script> 2719 if ($(window).width() < 991) { 2720 var direction = 'horizontal' 2721 } else { 2722 var direction = 'vertical' 2723 $(".gallery-thumbs").height($("#ProductPhotoImg").height()) 2724 } 2725 var swiper = new Swiper('.gallery-thumbs', { 2726 direction, 2727 slidesPerView: 4.5, 2728 spaceBetween: 12, 2729 navigation: { 2730 nextEl: '.swiper-button-next', 2731 prevEl: '.swiper-button-prev', 2732 } 2733 }); 2734 var swiper = new Swiper('.gallery-mobile', { 2735 //loop: true, 2736 lazy: true, 2737 speed: 300, 2738 resistance: true, 2739 resistanceRatio: 0, 2740 freeModeMomentumRatio: 0.45, 2741 freeModeMomentumVelocityRatio: 1.5, 2742 navigation: { 2743 nextEl: '.swiper-button-next', 2744 prevEl: '.swiper-button-prev', 2745 }, 2746 pagination: { 2747 el: '.swiper-pagination' 2748 }, 2749 useCSS3Transforms: false, 2750 loop: false, 2751 on: { 2752 init: function() { 2753 console.log('swiper initialized'); 2754 var currentVideo = $("[data-swiper-slide-index=" + this.realIndex + "]").find("video"); 2755 currentVideo.trigger('play'); 2756 }, 2757 }, 2758 }); 2759 /* GET ALL VIDEOS */ 2760 var sliderVideos = $(".swiper-slide video"); 2761 /* SWIPER API - Event will be fired after animation to other slide (next or previous) */ 2762 swiper.on('slideChange', function() { 2763 console.log('slide changed'); 2764 /* stop all videos */ 2765 sliderVideos.each(function(index) { 2766 this.currentTime = 0; 2767 }); 2768 /* SWIPER GET CURRENT AND PREV SLIDE (AND The VIDEO INSIDE) */ 2769 var prevVideo = $(`[data-swiper-slide-index="${this.previousIndex}]"`).find("video"); 2770 var currentVideo = $(`[data-swiper-slide-index="${this.realIndex}"]`).find("video"); 2771 prevVideo.trigger('stop'); 2772 currentVideo.trigger('play'); 2773 }); 2774 $("[data-video]").click(function() { 2775 const file = $(this).data("video") 2776 $(".product-single__video").show() 2777 $(".product-single__image").hide() 2778 $(".product-single__video").find("video").attr("src", file) 2779 $(".product-single__video").find("video")[0].play(); 2780 }) 2781 $("[data-image]").click(function() { 2782 $(".product-single__video").hide() 2783 $(".product-single__image").show() 2784 $(".product-single__video").find("video")[0].pause(); 2785 }) 2786 $("#product-image .swiper-slide").each(function() { 2787 let width = $(this).width() 2788 $(this).height(width) 2789 }) 2790 $(window).resize(function() { 2791 $("#product-image .swiper-slide").each(function() { 2792 let width = $(this).width() 2793 $(this).height(width) 2794 }) 2795 }) 2796 </script>
2796 2797 </div> 2798 <div class="grid__item_product-info mb-3"> 2799 <div class="c-pdp-product-info"> 2800 <h2 style="color: #ffd700;">VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA</h2> 2801<p style="text-align: justify; color: #ffffff;">Ingin merasakan pengalaman spin yang seru dan praktis? <a href="https://venom123spin.com/" style="color: #ffd700;">VENOM123</a> hadir dengan berbagai pilihan permainan yang menarik untuk menemani setiap putaran. Dengan tampilan yang ringan dan navigasi yang mudah digunakan, kamu bisa menjelajahi berbagai pilihan permainan dan menikmati keseruan spin dalam satu platform.</p> 2802 2803<p style="text-align: justify; color: #ffffff;">Dengan konsep <strong>VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA</strong>, setiap sesi dirancang untuk memberikan pengalaman bermain yang nyaman dan menyenangkan. <a href="https://venom123spin.com/" style="color: #ffd700;">VENOM123 login</a> juga dibuat praktis sehingga pengguna dapat mengakses akun dengan mudah melalui perangkat yang digunakan.</p> 2804 2805<p style="text-align: justify; color: #ffffff;">Nikmati akses <a href="https://venom123spin.com/" style="color: #ffd700;">VENOM123 link alternatif</a> dengan tampilan responsif yang mendukung perangkat desktop maupun smartphone. Jelajahi beragam pilihan permainan, nikmati setiap putaran dengan nyaman, dan temukan pengalaman spin yang sesuai dengan preferensimu.</p> 2806 </ul> 2807 </div> 2808 </div> 2809 <style> 2810 .c-pdp-product-info__service--active { 2811 font-size: 12px; 2812 padding-left: 10px; 2813 text-align: left; 2814 max-width: 550px; 2815 margin: auto; 2816 } 2817 2818 .c-pdp-product-info__service--active li { 2819 list-style: disc; 2820 } 2821 2822 .c-pdp-product-info { 2823 background-color: #f5f5f5; 2824 padding: 12px; 2825 margin: 0; 2826 } 2827 2828 .freeship em { 2829 font-style: italic; 2830 font-size: 12px !important; 2831 } 2832 </style> 2833
2833<script> 2834 $(document).ready(function() { 2835 if ($(".c-pdp-product-info__service li").length == 1) { 2836 $(".c-pdp-product-info__service").addClass("no-bullet"); 2837 $(".c-pdp-product-info__service li").addClass("no-bullets"); 2838 } 2839 }); 2840 </script>
2840 2841 </div> 2842 <div id="product-meta" class="col-lg-5 p-0"> 2843 <div class="product-meta"> 2844 <style> 2845 .product-meta--review { 2846 margin-top: 10px 2847 } 2848 2849 .freeship * { 2850 font-size: 14px !important; 2851 font-style: normal; 2852 } 2853 </style> 2854 <h1 itemprop="name" class="mb-2" style="color: rgb(255, 238, 0); font-weight: bold;">VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA</h1> 2855 <div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 2856 <meta itemprop="priceCurrency" content="IDR"> 2857 <link itemprop="availability" href="https://schema.org/InStock"> 2858
2858<script type="text/javascript" src="//platform-api.sharethis.com/js/sharethis.js#property=5acdc0aa3ef3c0001396fd50&product=custom-share-buttons" async="async"></script>
2858 2859 <span class="visually-hidden">Translation missing: en.products.general.regular_price</span> 2860 <span class="visually-hidden">Translation missing: en.products.general.sale_price</span> 2861 <div class="row no-gutters mb-3"> 2862 <span id="ProductPrice" class="h2 ProductPrice" itemprop="price" content="835000" style="color: #ffffff;"> Rp 10.000 </span> 2863 <div class="discount-product-detail"> 2864 <p id="ComparePrice" class="ComparePrice mt-2 mt-lg-0"> Rp 100.000 </p> 2865 <span class=" tag-discount"> 2866 <span id="newDiscount" class="product-tag persentase-discount hide"> (90%) </span><br> 2867 </span> 2868 </div> 2869 </div> 2870 <div class="row no-gutters meta-sds"> 2871 <div class="col-12 mb-2 mb-lg-0 stock-info"> 2872 <span id="ProductStock-Product" class="product-single__stock mb-2 hide"> Barang dikirim pada </span> 2873 <style> 2874 .short-desc-desktop { 2875 margin-bottom: 2rem; 2876 color: white; 2877 } 2878 2879 .short-desc ul li:nth-child(n + 4) { 2880 display: none; 2881 } 2882 2883 .short-desc ul li.showList:nth-child(n + 4) { 2884 display: list-item; 2885 } 2886 2887 label.more { 2888 display: none; 2889 } 2890 2891 label.more.showMe { 2892 display: block; 2893 font-size: 12px; 2894 text-transform: uppercase; 2895 font-weight: 700; 2896 cursor: pointer; 2897 } 2898 </style> 2899 <div class="short-desc-desktop d-none d-lg-block"> 2900 <div class="short-desc"> 2901 <p>Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.</p> 2902 </div> 2903 <label class="more">Show More â</label> 2904 </div><br> 2905
2905<script> 2906 var liCount; 2907 $(document).ready(function() { 2908 $(".short-desc ul").each(function() { 2909 liCount = $(this).children("li").length; 2910 if (liCount > 3) { 2911 $(this).parent(".short-desc").next(".more").addClass("showMe"); 2912 } 2913 }); 2914 $(".more").click(function() { 2915 //$(".short-desc").find("li").addClass("showList"); 2916 // $(this).hide(); 2917 $("#product-desc").find("ul").show() 2918 $('html, body').animate({ 2919 scrollTop: $("#product-desc").offset().top - 250 2920 }, 2000); 2921 $("#product-desc").css("height", "auto"); 2922 $("#more_content").remove(); 2923 $(".product-spec").append("<div id='less_content' class='readmore'><span class='less_content'>Less</span></div>") 2924 }); 2925 }); 2926 </script>
2926 2927 </div> 2928 </div> 2929 <div id="purchaseProduct"> 2930 <style> 2931 .variant-metafield { 2932 display: block !important; 2933 width: 1px; 2934 padding: 0; 2935 border-color: #fff; 2936 } 2937 2938 .select2-results__option[aria-disabled] { 2939 display: none; 2940 } 2941 2942 .towel-bordir { 2943 width: 100%; 2944 display: flex; 2945 align-items: center; 2946 justify-content: space-around; 2947 } 2948 </style> 2949
2949<script> 2950 </script>
2950 2951 <select name="id[]" id="productSelect" class="product-single__variants ignore hide hide"> 2952 <option selected="selected" data-sku="OBVSTF1086" value="44083045826775"> Default Title </option> 2953 </select> 2954
2954<script src="//outerbloom.com/cdn/shop/t/138/assets/jquery.magnific-popup.min.js?v=184369421263510081681752652422" type="text/javascript"></script>
2954 2955
2955<script> 2956 $('.size-chart-open-popup').magnificPopup({ 2957 type: 'inline', 2958 midClick: true 2959 }); 2960 </script>
2960 2961 <div class="upload-image-preview"> 2962 <style> 2963 .file-dnd * { 2964 margin: 0; 2965 padding: 0; 2966 box-sizing: border-box; 2967 } 2968 2969 .file-dnd { 2970 width: 100%; 2971 height: 250px; 2972 border: 1px solid #ddd; 2973 border-radius: 10px; 2974 padding: 15px; 2975 display: flex; 2976 flex-direction: column; 2977 gap: 10px; 2978 /* box-shadow: 0px 2px 10px 2px rgba(0,0,0,0.05); */ 2979 margin: auto; 2980 } 2981 2982 .file-dnd input { 2983 display: none; 2984 } 2985 2986 .file-dnd .before-upload { 2987 border: 1px dashed #888; 2988 flex: 1; 2989 border-radius: 5px; 2990 display: flex; 2991 justify-content: center; 2992 align-items: center; 2993 text-align: center; 2994 cursor: pointer; 2995 } 2996 2997 .file-dnd .before-upload>div { 2998 display: flex; 2999 flex-direction: column; 3000 align-items: center; 3001 gap: 8px; 3002 } 3003 3004 .file-dnd .before-upload>div h4 { 3005 width: 150px; 3006 } 3007 3008 .file-dnd .before-upload>div p { 3009 font-size: 12px !important; 3010 color: #555; 3011 } 3012 3013 .file-dnd.active .before-upload { 3014 border: 1px solid #5750d9; 3015 background-color: #f5f5ff; 3016 } 3017 3018 .file-dnd .after-upload { 3019 position: relative; 3020 display: none; 3021 } 3022 3023 .file-dnd .after-upload img { 3024 width: 100%; 3025 border-radius: 5px; 3026 max-height: 180px; 3027 object-fit: contain; 3028 display: block; 3029 } 3030 3031 .file-dnd .after-upload .clear-btn { 3032 position: absolute; 3033 top: 10px; 3034 right: 10px; 3035 background: rgba(0, 0, 0, 0.5); 3036 width: 15px; 3037 height: 15px; 3038 text-align: center; 3039 line-height: 15px; 3040 border-radius: 50%; 3041 color: #fff; 3042 cursor: pointer; 3043 font-size: 14px; 3044 } 3045 </style> 3046 <div class="file-dnd mb-3" style="display: none"> 3047 <label for="upload-photo">Upload your Photo:</label> 3048 <input type="file" id="upload-photo" accept="image/*"> 3049 <input type="hidden" data-properties="Photo"> 3050 <div class="before-upload"> 3051 <div> 3052 <svg id="surface1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="33.053" height="41.719" viewBox="0 0 33.053 41.719"> 3053 <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> 3054 <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> 3055 <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,
30550l-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> 3056 </svg> 3057 <h4>Drag & Drop Photo file or Browse</h4> 3058 <p>Supports: JPEG, PNG, GIF, TIFF</p> 3059 </div> 3060 </div> 3061 <div class="after-upload"> 3062 <div class="clear-btn">×</div> 3063 <img src="" width="" height=""> 3064 </div> 3065 </div> 3066
3066<script> 3067 function applyDndFile(el) { 3068 const parent = document.querySelector(".file-dnd") 3069 const beforeUploadEl = el.querySelector(".before-upload") 3070 const afterUploadEl = el.querySelector(".after-upload") 3071 const inputFile = el.querySelector("input[type=file]") 3072 const imagePreview = el.querySelector(".after-upload img") 3073 const clearBtn = el.querySelector(".after-upload .clear-btn") 3074 const inputProps = parent.querySelector("[data-properties]"); 3075 async function upload(name, uri, type) { 3076 try { 3077 const filename = name.split('.')[0] 3078 let formData = new FormData(); 3079 formData.append("file", uri); 3080 const response = await fetch(`${host}/upload?name=${filename}&dir=gift&type=${type}`, { 3081 method: "POST", 3082 body: formData 3083 }) 3084 if (response) { 3085 const res = await response.json() 3086 return res 3087 } 3088 } catch (err) { 3089 console.log(err) 3090 } 3091 } 3092 3093 function showImagePreview(img) { 3094 if (img) { 3095 const blobUrl = URL.createObjectURL(img) 3096 imagePreview.src = blobUrl 3097 afterUploadEl.style.display = "block" 3098 beforeUploadEl.style.display = "none" 3099 } 3100 } 3101 beforeUploadEl.addEventListener("click", (e) => { 3102 e.preventDefault() 3103 inputFile.click() 3104 }) 3105 inputFile.addEventListener("change", async (e) => { 3106 e.preventDefault() 3107 showImagePreview(e.target.files[0]) 3108 var uploadData = await upload(e.target.files[0].name, e.target.files[0], e.target.files[0].type) 3109 inputProps.value = uploadData?.url 3110 }) 3111 clearBtn.addEventListener("click", (e) => { 3112 afterUploadEl.style.display = "none" 3113 beforeUploadEl.style.display = "flex" 3114 inputProps.value = "" 3115 }) 3116 beforeUploadEl.addEventListener("dragover", (e) => { 3117 e.preventDefault() 3118 el.classList.add("active") 3119 }) 3120 beforeUploadEl.addEventListener("dragleave", (e) => { 3121 e.preventDefault() 3122 el.classList.remove("active") 3123 }) 3124 beforeUploadEl.addEventListener("drop", async (e) => { 3125 e.preventDefault() 3126 el.classList.remove("active") 3127 showImagePreview(e.dataTransfer.files[0]) 3128 var uploadData = await upload(e.dataTransfer.files[0].name, e.dataTransfer.files[0], e.dataTransfer.files[0].type) 3129 console.log(uploadData) 3130 inputProps.value = uploadData?.url 3131 }) 3132 } 3133 applyDndFile(document.querySelector(".file-dnd")) 3134 $(document).ready(function() { 3135 $(".variant-swatch").change(function() { 3136 const v = $(this).val().toLowerCase() 3137 const list = ["photo", "custom one side", "custom two side", "small", "big"] 3138 if (list.some(item => v.includes(item))) return $(".file-dnd").show() 3139 $(".file-dnd").hide() 3140 $(".file-dnd").find("[data-properties]").val("") 3141 $(".after-upload").hide() 3142 $(".before-upload").css("display", "flex") 3143 }) 3144 }) 3145 </script>
3145 3146 </div> 3147 <div class="delivery-city mb-4"> 3148 <a href="https://venom123-spin.pages.dev/"> 3149 <center><img src="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" alt="logo-daftar" style="width: 260px; margin-top: -20px;"></center> 3150 </a><br> 3151 <h4 class="fw-600 text-uppercase mb-15" style="color: #ffd900; font-weight: bold;">SUDAH WAKTUNYA UNTUK BERMAIN DI VENOM123 UNTUK JACKPOT JUTAAN RUPIAH</h4> 3152 <div class="row justify-content-between m-0"> 3153 <select id="cities" class="form-control select-search" required> 3154 <option value="">Gabung sekarang dan dapatkan bonus deposit serta new member hanya di VENOM123</option> 3155 </select> 3156 </div> 3157 </div> 3158 <style> 3159 @media (max-width: 768px) { 3160 .select2-search__field { 3161 pointer-events: none !important; 3162 } 3163 3164 .select2-search { 3165 display: none !important; 3166 } 3167 } 3168 </style> 3169
3169<script> 3170 $(document).ready(function() { 3171 // Check if mobile 3172 if (window.innerWidth <= 768) { 3173 // When cities select2 opens on mobile, remove focus from search 3174 $('#cities').on('select2:open', function() { 3175 setTimeout(function() { 3176 $('.select2-search__field').blur(); 3177 $('.select2-search__field').prop('readonly', true); 3178 }, 100); 3179 }); 3180 } 3181 }); 3182 </script>
3182 3183 <style> 3184 .icon-img-footer { 3185 width: 80px; 3186 padding: 0px 5px; 3187 } 3188 3189 @media (min-width: 768px) { 3190 .icon-img-footer { 3191 width: 120px; 3192 } 3193 } 3194 3195 @media (min-width: 992px) { 3196 .icon-img-footer { 3197 width: 120px; 3198 } 3199 } 3200 </style> 3201 <style> 3202 :root { 3203 --brand: #00fffb; 3204 --brand-mid: #009297; 3205 --brand-dark: #006962; 3206 --border: #e5e7eb; 3207 --bg: #fff; 3208 --shadow: 0 6px 15px rgba(0, 0, 0, .08); 3209 } 3210 3211 .app-card { 3212 max-width: 650px; 3213 margin: 25px auto; 3214 background: var(--bg); 3215 border-radius: 14px; 3216 overflow: hidden; 3217 box-shadow: var(--shadow); 3218 border: 1px solid var(--border); 3219 transition: transform .2s, box-shadow .3s; 3220 font-family: system-ui, Arial, sans-serif; 3221 font-size: .92rem; 3222 } 3223 3224 .app-card:hover { 3225 transform: translateY(-2px); 3226 box-shadow: 0 10px 25px rgba(0, 0, 0, .12); 3227 } 3228 3229 .app-header { 3230 padding: 12px 16px; 3231 text-align: center; 3232 background: linear-gradient(135deg, #000000, #ffd700, #000000); 3233 color: #fff; 3234 font-weight: 800; 3235 font-size: 1.15rem; 3236 text-shadow: 0 1px 2px rgba(0, 0, 0, .3); 3237 } 3238 3239 .app-table { 3240 width: 100%; 3241 border-collapse: collapse; 3242 } 3243 3244 .app-table th, 3245 .app-table td { 3246 padding: 8px 12px; 3247 vertical-align: middle; 3248 } 3249 3250 .app-table th { 3251 width: 35%; 3252 background: #e7e7e7; 3253 color: #585858; 3254 font-weight: 700; 3255 letter-spacing: .2px; 3256 text-transform: uppercase; 3257 font-size: .85rem; 3258 } 3259 3260 .app-table td { 3261 border-bottom: 1px solid var(--border); 3262 color: #1f1f1f; 3263 font-size: .9rem; 3264 text-align: center; 3265 } 3266 3267 @media (max-width: 640px) { 3268 3269 .app-table, 3270 .app-table tbody, 3271 .app-table tr, 3272 .app-table th, 3273 .app-table td { 3274 display: block; 3275 width: 100%; 3276 } 3277 } 3278 3279 .review-section { 3280 max-width: 850px; 3281 margin: 30px auto; 3282 display: flex; 3283 flex-direction: column; 3284 gap: 18px;
3285 font-family: system-ui, Arial, sans-serif; 3286 } 3287 3288 .review-card { 3289 background: #f5f5f5; 3290 padding: 16px 20px; 3291 border-radius: 10px; 3292 border-left: 5px solid #000000; 3293 box-shadow: 0 3px 6px rgba(0, 0, 0, .05); 3294 transition: all .25s ease-in-out; 3295 } 3296 3297 .review-card:hover { 3298 transform: translateY(-3px); 3299 box-shadow: 0 5px 10px rgba(0, 0, 0, .08); 3300 } 3301 3302 .review-author { 3303 font-weight: 700; 3304 color: var(--brand-dark); 3305 margin-bottom: 4px; 3306 display: flex; 3307 align-items: center; 3308 gap: 6px; 3309 font-size: .92rem; 3310 } 3311 3312 .review-author::before { 3313 content: "ð¤"; 3314 font-size: 1rem; 3315 } 3316 3317 .review-card p { 3318 margin: 0; 3319 color: #222; 3320 font-size: .94rem; 3321 } 3322 3323 .review-rating { 3324 margin-left: auto; 3325 font-weight: 700; 3326 } 3327 3328 .stars { 3329 --rating: 5; 3330 --star-size: 1rem; 3331 --star-gap: 2px; 3332 --star-empty: #e5e7eb; 3333 --star-fill: #f4c430; 3334 position: relative; 3335 display: inline-block; 3336 font-size: var(--star-size); 3337 line-height: 1; 3338 letter-spacing: var(--star-gap); 3339 } 3340 3341 .stars::before { 3342 content: "â â â â â "; 3343 color: var(--star-empty); 3344 } 3345 3346 .stars::after { 3347 content: "â â â â â "; 3348 color: var(--star-fill); 3349 position: absolute; 3350 left: 0; 3351 top: 0; 3352 width: calc((var(--rating) / 5) * 100%); 3353 overflow: hidden; 3354 white-space: nowrap; 3355 pointer-events: none; 3356 } 3357 3358 .stars.lg { 3359 --star-size: 1.1rem; 3360 letter-spacing: 3px; 3361 } 3362 3363 .badge { 3364 display: inline-flex; 3365 align-items: center; 3366 gap: 8px; 3367 flex-wrap: wrap; 3368 } 3369 3370 .badge small { 3371 color: #555; 3372 font-weight: 600; 3373 } 3374 </style> 3375 <div class="review-section"> 3376<div class="review-card"> 3377 <div class="review-author"> 3378 Aditya Nugraha 3379 <span class="review-rating stars" style="--rating: 5" aria-label="Rating 5.0 dari 5"></span> 3380 </div> 3381 <p>Pengalaman spin di VENOM123 cukup menarik. Pilihan permainannya beragam dan tampilannya mudah digunakan, jadi saya bisa menjelajahi setiap permainan dengan nyaman.</p> 3382</div> 3383 3384<div class="review-card"> 3385 <div class="review-author"> 3386 Akbar Syahputra 3387 <span class="review-rating stars" style="--rating: 4.8" aria-label="Rating 4.8 dari 5"></span> 3388 </div> 3389 <p>Saya suka dengan tampilan VENOM123 yang sederhana dan responsif. Saat diakses melalui smartphone, navigasinya terasa praktis untuk melihat berbagai pilihan permainan spin.</p> 3390</div> 3391 3392<div class="review-card"> 3393 <div class="review-author"> 3394 Riswan Harahap 3395 <span class="review-rating stars" style="--rating: 4.9" aria-label="Rating 4.9 dari 5"></span> 3396 </div> 3397 <p>VENOM123 memberikan pengalaman bermain yang cukup nyaman dengan pilihan permainan yang menarik. Saya menikmati setiap putaran dan tetap bermain secara bijak sesuai batas yang saya tentukan.</p> 3398</div> 3399 3400 <div class="purchasePopup purchasePopupSpotify" style="display: none;"> 3401 <div class="purchaseArea"> 3402 <div class="sectionPurchase sectionPurchaseSpotify"> 3403 <div class="wrapperPurchase"> 3404 <div class="headerPurchase"> 3405 <h3>
3405personalize spotify photo print</h3> 3406 <a class="close-purchase-popup"> 3407 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="18" height="18" viewBox="0 0 18 18" fill="none"> 3408 <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> 3409 </svg> 3410 </a> 3411 </div> 3412 <div class="contentPurchase"> 3413 <div class="spotifyAddons"></div> 3414 </div> 3415 <div class="purchase-button btn-addon row m-0" style="display: none;"> 3416 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 3417 <button class="back-purchase-button back-addon text-uppercase"> 3418 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"> 3419 <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> 3420 </svg> 3421 <span>Back</span> 3422 </button> 3423 </div> 3424 <div class="col-12 col-lg-10 text-right" style="display: flex;justify-content: end;gap: 20px;"> 3425 <button class="btn next-purchase-button next-addon text-uppercase"> 3426 <span>continue without add-ons</span> 3427 </button> 3428 </div> 3429 </div> 3430 </div> 3431 </div> 3432 </div> 3433 </div> 3434 <style> 3435 #PBarNextFrameWrapper { 3436 display: none; 3437 } 3438 3439 #backgroundPopup { 3440 display: none; 3441 position: fixed; 3442 _position: absolute; 3443 height: 100%; 3444 width: 100%; 3445 top: 0; 3446 left: 0; 3447 background: rgb(117 117 117 / 24%); 3448 z-index: 1; 3449 } 3450 3451 .sectionPurchase { 3452 height: 100%; 3453 position: relative; 3454 max-width: 1344px; 3455 background-color: #fff; 3456 padding: 0; 3457 overflow: hidden; 3458 /* Changed from auto to hidden */ 3459 display: flex; 3460 flex-direction: column; 3461 } 3462 3463 .sectionPurchase.purchaseAddonSpotify { 3464 max-width: 1070px !important; 3465 max-height: 765px !important; 3466 } 3467 3468 .sectionPurchaseBoard { 3469 max-width: 872px !important; 3470 max-height: 821px !important; 3471 } 3472 3473 .purchaseAddonSpotify .btn-action { 3474 position: absolute; 3475 bottom: 0; 3476 left: 0; 3477 width: 100%; 3478 display: flex; 3479 gap: 10px; 3480 } 3481 3482 .wrapperPurchase { 3483 position: relative; 3484 height: 100%; 3485 display: flex; 3486 flex-direction: column; 3487 } 3488 3489 /* New styles for scrollable content and sticky button */ 3490 .purchase-content { 3491 flex: 1; 3492 overflow-y: auto; 3493 overflow-x: hidden; 3494 padding: 20px; 3495 } 3496 3497 .purchase-button-wrapper { 3498 position: sticky; 3499 bottom: 0; 3500 background-color: #fff; 3501 border-top: 1px solid #e0e0e0; 3502 padding: 15px 0; 3503 margin-top: auto; 3504 z-index: 10; 3505 } 3506 3507 .purchasePopup { 3508 display: none; 3509 position: fixed; 3510 background: rgb(117 117 117 / 24%); 3511 z-index: 999; 3512 padding: 40px; 3513 font-size: 13px; 3514 top: 0; 3515 left: 0; 3516 width: 100%; 3517 height: 100%; 3518 } 3519 3520 .popupPurchaseClose { 3521 font-size: 14px; 3522 line-height: 14px; 3523 right: 45px; 3524 top: 45px; 3525 position: absolute; 3526 color: #6fa5fd; 3527 font-weight: 700; 3528 display: block; 3529 cursor: pointer; 3530 } 3531 3532 .headerPurchase { 3533 margin-bottom: 30px; 3534 display: flex; 3535 justify-content: space-between; 3536 } 3537 3538 .headerPurchase h3 { 3539 font-size: 16px; 3540 text-transform: uppercase; 3541 } 3542 3543 .sectionPurchaseBoard .headerPurchase { 3544 margin-bottom: 15px; 3545 } 3546 3547 .sectionPurchaseBoard .formAddressPurchase { 3548 padding-top: 0;
3549 } 3550 3551 .purchaseArea { 3552 position: relative; 3553 height: 100%; 3554 } 3555 3556 .purchaseArea h4 { 3557 width: 100%; 3558 font-size: 12px; 3559 font-weight: 600; 3560 margin-bottom: 10px; 3561 text-transform: uppercase; 3562 } 3563 3564 .menuPurchase { 3565 margin-bottom: 30px; 3566 } 3567 3568 .menuPurchase ul { 3569 list-style-type: none; 3570 margin: 0; 3571 } 3572 3573 .menuPurchase ul li { 3574 display: inline-block; 3575 border: 1px solid #ffffff; 3576 padding: 5px 20px; 3577 margin-right: 5px; 3578 margin-bottom: 10px; 3579 font-size: 12px; 3580 font-weight: 400; 3581 } 3582 3583 .menuPurchase ul li:hover, 3584 .menuPurchase ul li.selected { 3585 background-color: #ffffff; 3586 color: #ffffff; 3587 } 3588 3589 .contentPurchase h5 { 3590 font-size: 12px; 3591 margin-bottom: 10px; 3592 font-weight: 400; 3593 overflow: hidden; 3594 } 3595 3596 /* Card */ 3597 #itemCards { 3598 max-height: 430px; 3599 overflow: auto; 3600 } 3601 3602 .item-cards { 3603 width: 100%; 3604 } 3605 3606 .item-card.selected { 3607 border: 1px solid #ffffff; 3608 } 3609 3610 .item-card:hover { 3611 border: 1px solid #C4C4C4; 3612 } 3613 3614 .item-cards .item-card { 3615 position: relative; 3616 width: calc(33% - 10px); 3617 max-width: calc(33% - 10px); 3618 flex: 0 0 calc(33% - 10px); 3619 margin-bottom: 20px; 3620 } 3621 3622 .item-cards .item-card label, 3623 .item-addons .item-addon label { 3624 position: absolute; 3625 left: 0; 3626 width: 100%; 3627 height: 100%; 3628 } 3629 3630 .item-cards .item-card .card-image img, 3631 .item-addons .item-addon .card-image img { 3632 display: block; 3633 width: 100%; 3634 } 3635 3636 .item-card .card-meta, 3637 .item-addon .card-meta { 3638 padding: 10px 5px 5px; 3639 } 3640 3641 .item-card.selected .card-meta, 3642 .item-addon.selected .card-meta, 3643 .item-card.selected .card-qty { 3644 background-color: #ffffff; 3645 color: #fff; 3646 visibility: visible !important; 3647 } 3648 3649 .item-card:hover .card-meta, 3650 .item-addon:hover .card-meta, 3651 .item-card:hover .card-qty { 3652 background-color: #C4C4C4; 3653 color: #fff; 3654 visibility: visible !important; 3655 } 3656 3657 .item-cards .item-card p, 3658 .item-addons .item-addon p { 3659 font-size: 12px !important; 3660 margin: 0; 3661 font-weight: 600; 3662 } 3663 3664 .item-card .card-meta input, 3665 .item-addon .card-meta input { 3666 display: none; 3667 } 3668 3669 .item-cards .item-card h5, 3670 .item-addons .item-addon h5 { 3671 text-transform: uppercase; 3672 max-height: 35px; 3673 } 3674 3675 @media (max-width: 768px) { 3676 .item-cards .item-card {
3677 width: calc(50% - 10px); 3678 max-width: calc(50% - 10px); 3679 flex: 0 0 calc(50% - 10px); 3680 margin-bottom: 0; 3681 } 3682 } 3683 3684 .card-qty { 3685 display: flex; 3686 padding: 5px; 3687 visibility: hidden; 3688 background-color: #fff !important; 3689 z-index: 999; 3690 } 3691 3692 .card-qty a { 3693 border-width: 1px; 3694 width: 30%; 3695 cursor: pointer; 3696 text-align: center; 3697 align-self: center; 3698 height: 28px; 3699 display: block; 3700 position: relative; 3701 } 3702 3703 .card-qty a svg { 3704 position: absolute; 3705 top: 50%; 3706 left: 50%; 3707 transform: translate(-50%, -50%); 3708 text-align: center; 3709 } 3710 3711 input.btn-qty { 3712 border-width: 0px; 3713 border-radius: 0; 3714 background-color: #fff; 3715 -webkit-appearance: none; 3716 box-shadow: none !important; 3717 -webkit-box-shadow: none !important; 3718 -moz-box-shadow: none !important; 3719 width: 40%; 3720 border-left: 1px solid #c4c4c4; 3721 border-right: 1px solid #c4c4c4; 3722 padding: 0; 3723 } 3724 3725 .sectionPurchaseBoard #itemAddons .item-card { 3726 width: calc(20% - 15px); 3727 max-width: calc(20% - 15px); 3728 flex: 0 0 calc(20% - 15px); 3729 } 3730 3731 .purchase-button { 3732 width: 100%; 3733 padding: 0; 3734 /* Reset padding as it's now handled by wrapper */ 3735 margin: 0; 3736 } 3737 3738 .sectionPurchaseBoard .purchase-button { 3739 margin-top: 0 !important; 3740 /* Reset margin */ 3741 } 3742 3743 .back-purchase-button, 3744 .back-spotify { 3745 width: 139px; 3746 border: 1px solid; 3747 height: 43px; 3748 } 3749 3750 .purchase-button .btn { 3751 width: 297px; 3752 height: 43px; 3753 background-color: #ffffff; 3754 color: #ffffff; 3755 } 3756 3757 .purchase-button .btn[disabled] { 3758 background-color: #EEEEEE; 3759 } 3760 3761 .back-purchase-button svg, 3762 .back-spotify svg { 3763 align-self: center; 3764 vertical-align: middle; 3765 margin-right: 10px; 3766 } 3767 3768 #purchaseProduct .row .error { 3769 font-size: 12px !important; 3770 color: orange; 3771 margin-top: 5px; 3772 } 3773 3774 .reviewCardPurchase { 3775 max-width: 448px; 3776 float: right; 3777 } 3778 3779 .addonsPurchase .addon-item { 3780 display: flex; 3781 justify-content: space-between; 3782 } 3783 3784 .addon-item * { 3785 align-self: center; 3786 font-size: 12px; 3787 } 3788 3789 .addon-itm-title { 3790 width: 360px; 3791 } 3792 3793 .addon-itm-line-price { 3794 color: #757575; 3795 width: 80px; 3796 justify-content: space-between; 3797 display: flex; 3798 } 3799 3800 .propsAddonSpotify p { 3801 margin: 0; 3802 display: flex; 3803 font-size: 12px !important; 3804 margin-bottom: 5px; 3805 } 3806 3807 .propsAddonSpotify p span:first-child { 3808 text-transform: uppercase; 3809 font-weight: 600; 3810 -ms-flex: 0 0 150px; 3811 flex: 0 0 150px; 3812 max-width: 150px; 3813 } 3814 3815 .addonsPurchase .addons { 3816 max-height: 250px; 3817 overflow: auto; 3818 } 3819 3820 .btn .loading:after { 3821 content: ""; 3822 display: inline-block;
3823 width: 20px; 3824 height: 20px; 3825 padding: 3px; 3826 aspect-ratio: 1; 3827 border-radius: 50%; 3828 background: #FFFFFF; 3829 --_m: conic-gradient(#0000 10%, #ffffff), linear-gradient(#ffffff 0 0) content-box; 3830 -webkit-mask: var(--_m); 3831 mask: var(--_m); 3832 -webkit-mask-composite: source-out; 3833 mask-composite: subtract; 3834 animation: l3 1s infinite linear; 3835 margin: auto; 3836 vertical-align: middle; 3837 margin-left: 10px; 3838 } 3839 3840 #qrcode img, 3841 #qrcode canvas { 3842 width: 50px; 3843 position: absolute; 3844 top: 12px; 3845 left: 16px; 3846 } 3847 3848 .t-preview { 3849 position: absolute; 3850 top: 17px; 3851 left: 75px; 3852 } 3853 3854 .t-preview p { 3855 margin: 0; 3856 font-size: 12px !important; 3857 } 3858 3859 .t-preview .h3 { 3860 font-size: 16px !important; 3861 margin-bottom: 5px; 3862 font-weight: 600; 3863 } 3864 3865 .scanCard { 3866 width: 100%; 3867 border: 1px solid; 3868 height: 76px; 3869 background-color: #fff; 3870 } 3871 3872 .scanCard>div>img { 3873 position: absolute; 3874 right: 0; 3875 width: 55px; 3876 } 3877 3878 @keyframes l3 { 3879 100% { 3880 transform: rotate(1turn); 3881 } 3882 } 3883 3884 @media (min-width: 991px) { 3885 .sectionPurchase { 3886 height: 100%; 3887 position: relative; 3888 max-width: 1344px; 3889 background-color: #fff; 3890 top: 50%; 3891 left: 50%; 3892 transform: translate(-50%, -50%); 3893 } 3894 3895 .headerPurchase h3 { 3896 font-size: 20px; 3897 } 3898 3899 .purchaseArea h4 { 3900 font-size: 16px; 3901 } 3902 3903 .menuPurchase ul li { 3904 font-size: 16px; 3905 } 3906 3907 .contentPurchase { 3908 margin-bottom: 30px; 3909 } 3910 3911 .contentPurchase h5 { 3912 font-size: 16px; 3913 } 3914 3915 .item-cards .item-card p, 3916 .item-addons .item-addon p { 3917 font-size: 16px !important; 3918 } 3919 3920 .cards { 3921 float: right; 3922 width: 400px; 3923 } 3924 3925 .item-cards .item-card { 3926 width: calc(25% - 30px); 3927 max-width: calc(25% - 30px); 3928 flex: 0 0 calc(25% - 30px); 3929 } 3930 3931 #itemAddons .item-card { 3932 position: relative; 3933 width: calc(16% - 40px); 3934 max-width: calc(16% - 40px); 3935 flex: 0 0 calc(16% - 40px); 3936 } 3937 3938 .purchase-button-wrapper { 3939 padding: 10px 20px; 3940 } 3941 } 3942 3943 @media (max-width: 1200px) { 3944 .item-cards .item-card { 3945 width: calc(33% - 30px); 3946 max-width: calc(33% - 30px); 3947 flex: 0 0 calc(33% - 30px); 3948 } 3949 } 3950 3951 @media (max-width: 992px) { 3952 .purchasePopup { 3953 padding: 0; 3954 } 3955 3956 .item-cards .item-card h5, 3957 .item-addons .item-addon h5 { 3958 max-height: 30px; 3959 } 3960 3961 .back-purchase-button, 3962 .back-spotify, 3963 .next-purchase-button { 3964 width: 100%; 3965 } 3966 3967 .addon-itm-title { 3968 width: 300px; 3969 } 3970 3971 .addon-itm-line-price { 3972 margin-right: 10px; 3973 } 3974 3975 .t-preview { 3976 top: 10px; 3977 } 3978 3979 .card-qty a { 3980 height: 15px; 3981 } 3982 3983 .purchase-button-wrapper { 3984 padding: 15px; 3985 } 3986 } 3987 3988 @media (max-width: 576px) { 3989 .purchase-button .btn { 3990 width: 100% !important; 3991 } 3992 3993 .purchase-button>.col-12 { 3994 padding-left: 0; 3995 padding-right: 0; 3996 } 3997 } 3998 </style> 3999 <div class="purchasePopup"> 4000 <div class="purchaseArea"> 4001 <div class="sectionPurchase purchasePersonalize sectionPurchaseBoard"> 4002 <div class="wrapperPurchase"> 4003 <div class="purchase-content"> 4004 <div class="headerPurchase"> 4005 <h3 class="text-uppercase"> customize your flower board </h3> 4006 <a class="close-purchase-popup"> 4007 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="18" height="18" viewBox="0 0 18 18" fill="none"> 4008 <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" /> 4009 </svg> 4010 </a> 4011 </div> 4012 <div class="contentPurchase"> 4013 <div class="row"> 4014 <div class="col-12"> 4015 <style> 4016 .customize-papan .group-field-1 .input-field { 4017 float: left; 4018 width: 100%; 4019 height: 317px; 4020 background-color: #E5E5EA; 4021 } 4022 4023 .customize-papan .input-field textarea { 4024 width: 100%; 4025 max-width: 421px; 4026 min-height: 150px; 4027 font-weight: 400; 4028 font-size: 16px; 4029 resize: none; 4030 background-color: #E5E5EA; 4031 position: absolute; 4032 top: 50%; 4033 left: 50%; 4034 transform: translate(-50%, -50%); 4035 text-align: center; 4036 color: #ffffff; 4037 border: none; 4038 } 4039 4040 .customize-papan .field-papan.group-field-2 .input-field.field-logo { 4041 height: 90px; 4042 margin: 0; 4043 border-radius: 0; 4044 position: relative; 4045 -ms-flex: 0 0 174px; 4046 flex: 0 0 174px; 4047 max-width: 174px; 4048 } 4049 4050 .customize-papan .btn-upload-papan svg { 4051 width: 21px; 4052 height: 25px; 4053 display: block; 4054 align-self: center; 4055 margin: auto; 4056 margin-bottom: 12px; 4057 } 4058 4059 .svgLogoPapan { 4060 position: absolute; 4061 width: 100%; 4062 top: 50%; 4063 left: 50%; 4064 transform: translate(-50%, -50%); 4065 text-align: center; 4066 } 4067 4068 .svgLogoPapan p { 4069 color: #8E8E93; 4070 margin: 0; 4071 } 4072 4073 .svgLogoPapan p span { 4074 font-size: 12px; 4075 color: #ffd700; 4076 } 4077 4078 .customize-papan .btn-upload-papan img { 4079 margin: auto; 4080 display: block; 4081 position: absolute; 4082 width: 80px; 4083 top: 50%; 4084 left: 50%; 4085 transform: translate(-50%, -50%); 4086 text-align: center; 4087 } 4088 4089 #suggest-messages { 4090 position: absolute; 4091 bottom: 5px; 4092 left: 5px; 4093 } 4094 4095 #suggest-messages a { 4096 border: 1px solid #979797; 4097 background: #fff; 4098 color: #979797; 4099 border-radius: 3px; 4100 padding: 5px 10px; 4101 font-size: 10px; 4102 font-weight: 600; 4103 display: inline-block; 4104 } 4105 4106 .case-occasion .nice-select:after { 4107 border-bottom: 2px solid #333; 4108 border-right: 2px solid #333; 4109 right: 20px; 4110 top: 42%; 4111 width: 10px; 4112 height: 10px; 4113 } 4114 4115 .customize-papan .input-field input { 4116 font-weight: 600; 4117 font-size: 16px; 4118 width: 100%; 4119 height: 90px; 4120 min-height: 44px !important; 4121 border: none; 4122 background: #E5E5EA; 4123 margin: 0; 4124 border-radius: 0; 4125 text-align: center; 4126 color: #ffffff; 4127 } 4128 4129 .customize-papan .input-field .limit { 4130 position: absolute; 4131 right: 15px; 4132 top: 0; 4133 color: #757575; 4134 } 4135 4136 @media (min-width: 991px) { 4137 .customize-papan:before { 4138 content: ""; 4139 position: absolute; 4140 border: 4px solid #ffffff; 4141 bottom: -50px; 4142 left: 210px; 4143 width: 100px; 4144 display: block; 4145 -ms-transform: rotate(60deg); 4146 -webkit-transform: rotate(60deg); 4147 transform: rotate(-65deg); 4148 } 4149 4150 .customize-papan:after { 4151 content: ""; 4152 position: absolute; 4153 border: 4px solid #ffffff; 4154 bottom: -52px; 4155 right: 240px; 4156 width: 100px; 4157 display: block; 4158 -ms-transform: rotate(-120deg); 4159 -webkit-transform: rotate(70deg); 4160 transform: rotate(70deg); 4161
4161 } 4162 } 4163 </style> 4164 <input type="hidden" data-properties="penerima" value="-"> 4165 <div class="customize-papan"> 4166 <div class="container"> 4167 <div class="field-papan group-field-1 form-group"> 4168 <div class="input-field"> 4169 <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. 4170 (Ex: Selamat Menempuh Hidup Baru A & B)." maxlength="100"></textarea> 4171 <p class="limit">0/100</p> 4172 <div id="suggest-messages"> 4173 <a id="show_note_papan1" href="#"> 4174 <div class="suggest-message" id="note_btn_div1"> 4175 <span class="promo-code-link" id="note_btn_papan1">Contoh Kata WEDDING</span> 4176 </div> 4177 </a> 4178 <a id="show_note_papan2" href="#"> 4179 <div class="suggest-message" id="note_btn_div2"> 4180 <span class="promo-code-link" id="note_btn_papan2">Contoh Kata SELAMAT</span> 4181 </div> 4182 </a> 4183 <a id="show_note_papan3" href="#"> 4184 <div class="suggest-message" id="note_btn_div3"> 4185 <span class="promo-code-link" id="note_btn_papan3">Contoh Kata DUKA CITA</span> 4186 </div> 4187 </a> 4188 </div> 4189 </div> 4190 </div> 4191 <div class="hide"> 4192 <input type="hidden" value="" id="note_id_papan1" name="note_id_papan1" style="top: 0px;"> 4193 <input type="hidden" value="" id="note_btn_id_papan1" name="note_btn_id_papan1"> 4194 </div> 4195 <div class="hide"> 4196 <input type="hidden" value="" id="note_id_papan2" name="note_id_papan2" style="top: 0px;"> 4197 <input type="hidden" value="" id="note_btn_id_papan2" name="note_btn_id_papan2"> 4198 </div> 4199 <div class="hide"> 4200 <input type="hidden" value="" id="note_id_papan3" name="note_id_papan3" style="top: 0px;"> 4201 <input type="hidden" value="" id="note_btn_id_papan3" name="note_btn_id_papan3"> 4202 </div> 4203 <div class="field-papan group-field-2 form-group"> 4204 <label for="logoPapan" onclick="" class="input-field field-logo"> 4205 <div class="btn-upload-papan w-100"> 4206 <?xml version="1.0" encoding="UTF-8"?> 4207 <img src="" style="display:none"> 4208 <div class="svgLogoPapan"> 4209 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="22" height="26" viewBox="0 0 22 26" fill="none"> 4210 <path d="M6.5 20H15.5V11H21.5L11 0.5L0.5 11H6.5V20ZM0.5 23H21.5V26H0.5V23Z" fill="black" /> 4211 </svg> 4212 <p>Upload Logo <span>*optional</span></p> 4213 </div> 4214 </div> 4215 </label> 4216 <input type="hidden" data-properties="papan-logo" value=""> 4217 <input type="file" id="logoPapan" accept="image/*" style="position: absolute;width: 1px;height: 1px;padding: 0"> 4218 <div class="input-field"> 4219 <input class="has-limit sender-name" type="text" placeholder="Nama Pengirim" data-properties="pengirim" maxlength="35" /> 4220 <p class="limit">0/35</p> 4221 </div> 4222 </div> 4223 </div> 4224 </div> 4225 </div> 4226 </div> 4227 </div> 4228 </div> 4229 <div class="purchase-button-wrapper"> 4230 <div class="purchase-button btn-card row m-0"> 4231 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 4232 </div> 4233 <div class="btn-next-card col-12 col-lg-10 text-right"> 4234 <button class="btn next-purchase-button text-uppercase" disabled>
4235 <span>save your flower board</span> 4236 </button> 4237 </div> 4238 </div> 4239 </div> 4240 </div> 4241 </div> 4242 <div class="sectionPurchase sectionPurchaseBoard hide" data-section="address"> 4243 <div class="wrapperPurchase"> 4244 <div class="purchase-content"> 4245 <div class="headerPurchase"> 4246 <h3> Complete Your Order </h3> 4247 <a class="close-purchase-popup"> 4248 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="18" height="18" viewBox="0 0 18 18" fill="none"> 4249 <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" /> 4250 </svg> 4251 </a> 4252 </div> 4253 <div class="contentPurchase"> 4254 <div class="row"> 4255 <div class="col-12 position-relative"> 4256 <div class="addressPurchase"> 4257 <h4 class="text-uppercase">recipient delivery address</h4> 4258 <p>Share the delivery address to send your heartfelt blooms straight to their door.</p> 4259 <div class="formAddressPurchase row"> 4260 <div class="col-12"> 4261 <form> 4262 <div class="form-group row mb-2 mb-lg-4"> 4263 <div class="col-6 position-relative"> 4264 <input id="first_name" type="text" class="form-control input__field" placeholder="" required> 4265 <label for="first_name" class="input__label">First Name<span>*</span></label> 4266 </div> 4267 <div class="col-6 position-relative"> 4268 <input id="last_name" type="text" class="form-control input__field" placeholder="" required> 4269 <label for="last_name" class="input__label">Last Name<span>*</span></label> 4270 </div> 4271 <input type="hidden" data-properties="nama-penerima"> 4272 </div> 4273 <h4 class="text-uppercase">how you want to input your address</h4> 4274 <div class="form-group row mb-2 mb-lg-4 form-address-upload"> 4275 <div class="col-6 position-relative"> 4276 <label class="address-manualy"> 4277 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="18" height="17" viewBox="0 0 18 17" fill="none"> 4278 <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.91216 0.910582 5.75588C0.754301 5.5996 0.666504 5.38764 0.666504 5.
427816663V2.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
42785 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" /> 4279 </svg> 4280 <span>Input Address Manually</span> 4281 </label> 4282 </div> 4283 <div class="col-6 position-relative"> 4284 <label for="address-upload" class="address-upload"> 4285 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="12" height="13" viewBox="0 0 12 13" fill="none"> 4286 <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" /> 4287 </svg> 4288 <span>Upload Address Picture</span> 4289 </label> 4290 <input id="address-upload" type="file" accept="image/png, image/jpeg" style="position: absolute; padding: 0;width: 1px;height: 1px"> 4291 <input type="hidden" class="props-address-upload" data-properties="foto-alamat"> 4292 </div> 4293 </div> 4294 <img width="150" height="" src="" class="photo-address" style="display: none;"> 4295 <div class="form-group row position-relative mb-2 mb-lg-4 form-address"> 4296 <div class="col-12"> 4297 <textarea id="delivery_address" data-properties="alamat-penerima" class="form-control input__field col-12" placeholder="" required></textarea> 4298 <label for="delivery_address" class="input__label">Delivery Address<span>*</span></label> 4299 </div> 4300 </div> 4301 <div class="form-group row mb-2 mb-lg-4 form-address"> 4302 <div class="col-6 position-relative"> 4303 <input id="recipient_number" type="text" data-properties="telepon-penerima" class="form-control input__field" placeholder="" required> 4304 <label for="recipient_number" class="input__label">Recipient number<span>*</span></label> 4305 </div> 4306 <div class="col-6 position-relative"> 4307 <input id="company" type="text" data-properties="company" class="form-control input__field" placeholder=""> 4308 <label for="company" class="input__label">Company (Optional)</label> 4309 </div> 4310 </div> 4311 <div class="form-group row mb-2 mb-lg-4 form-address"> 4312 <div class="col-6 position-relative"> 4313 <input id="province" type="text" class="form-control input__field" placeholder="" value="Jakarta" data-properties="province"> 4314 <label for="province" class="input__label">Province</label> 4315 </div> 4316 <div class="col-6 position-relative"> 4317 <select id="zip" class="form-control select-search" required></select> 4318 </div> 4319 </div> 4320 </form> 4321 </div> 4322 </div> 4323 </div> 4324 <div class="addonsPurchase"> 4325 <h4 class="text-uppercase">add-ons</h4> 4326 <div class="addons"> 4327 <p>No Add-Ons</p> 4328 <!-- 4329 <button class="add-addon"> 4330 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="12" height="12" viewBox="0 0 12 12" fill="none"> 4331 <path d="M5.5 6.5H0V5.5H5.5V0H6.5V5.5H12V6.5H6.5V12H5.5V6.5Z" fill="black"/> 4332 </svg>
4333 <span>Enhance my moment with Add-ons</span> 4334 </button> 4335 --> 4336 </div> 4337 </div> 4338 </div> 4339 </div> 4340 </div> 4341
4341<script> 4342 document.addEventListener('DOMContentLoaded', function() { 4343 // Detect iOS 4344 var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; 4345 if (isIOS) { 4346 document.querySelector('.formAddressPurchase').classList.add('ios'); 4347 // iOS specific fixes 4348 var inputs = document.querySelectorAll('.formAddressPurchase .input__field'); 4349 inputs.forEach(function(input) { 4350 // Force enable touch events on iOS 4351 input.style.webkitUserSelect = 'text'; 4352 input.style.webkitTouchCallout = 'default'; 4353 input.style.pointerEvents = 'auto'; 4354 input.style.touchAction = 'manipulation'; 4355 // Add explicit touch event listeners for iOS 4356 input.addEventListener('touchstart', function(e) { 4357 e.stopPropagation(); 4358 this.focus(); 4359 }, { 4360 passive: false 4361 }); 4362 input.addEventListener('touchend', function(e) { 4363 e.preventDefault(); 4364 e.stopPropagation(); 4365 this.focus(); 4366 this.click(); 4367 }, { 4368 passive: false 4369 }); 4370 // Force focus on tap for iOS 4371 input.addEventListener('click', function(e) { 4372 e.stopPropagation(); 4373 if (document.activeElement !== this) { 4374 this.focus(); 4375 } 4376 }); 4377 }); 4378 // Fix for label overlapping on iOS 4379 var labels = document.querySelectorAll('.formAddressPurchase .input__label'); 4380 labels.forEach(function(label) { 4381 label.style.pointerEvents = 'none'; 4382 label.addEventListener('touchstart', function(e) { 4383 e.preventDefault(); 4384 var input = this.parentNode.querySelector('.input__field'); 4385 if (input) { 4386 input.focus(); 4387 } 4388 }); 4389 }); 4390 } 4391 // Handle input state for all browsers, especially iOS 4392 var inputs = document.querySelectorAll('.input__field'); 4393 inputs.forEach(function(input) { 4394 // Handle input events 4395 input.addEventListener('input', function() { 4396 if (this.value.trim() !== '') { 4397 this.classList.add('has-value'); 4398 } else { 4399 this.classList.remove('has-value'); 4400 } 4401 }); 4402 // Handle focus 4403 input.addEventListener('focus', function() { 4404 this.classList.add('focused'); 4405 // iOS specific: ensure input is visible 4406 if (isIOS) { 4407 setTimeout(function() { 4408 input.scrollIntoView({ 4409 behavior: 'smooth', 4410 block: 'center' 4411 }); 4412 }, 300); 4413 } 4414 }); 4415 // Handle blur 4416 input.addEventListener('blur', function() { 4417 this.classList.remove('focused'); 4418 if (this.value.trim() !== '') { 4419 this.classList.add('has-value'); 4420 } else { 4421 this.classList.remove('has-value'); 4422 } 4423 }); 4424 // Initial check for pre-filled values 4425 if (input.value.trim() !== '') { 4426 input.classList.add('has-value'); 4427 } 4428 }); 4429 // Additional iOS fixes 4430 if (isIOS) { 4431 // Prevent iOS Safari from adding default styling 4432 document.addEventListener('touchstart', function() {}, { 4433 passive: true 4434 }); 4435 // Fix viewport issues on iOS 4436 var viewport = document.querySelector('meta[name=viewport]'); 4437 if (viewport) { 4438 viewport.setAttribute('content', 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no'); 4439 } 4440 } 4441 }); 4442 </script>
4442 4443 </div> 4444 <div class="purchase-button-wrapper"> 4445 <div class="purchase-button btn-address row m-0"> 4446 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 4447 <button class="back-purchase-button back-address text-uppercase"> 4448 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"> 4449 <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" /> 4450 </svg> 4451 <span>Back</span> 4452 </button> 4453 </div> 4454 <div class="btn-next-card col-12 col-lg-10 text-right"> 4455 <!-- 4456 <button class="back-purchase-button back-address text-uppercase mr-lg-2 mb-2 mb-lg-0"> 4457 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"> 4458 <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"/> 4459 </svg> 4460 <span>Back</span> 4461 </button> 4462 --> 4463 <button id="addtocart-card" class="btn next-address text-uppercase"> 4464 <span>add to cart</span> 4465 </button> 4466 </div> 4467 </div> 4468 </div> 4469 </div> 4470 </div> 4471 </div> 4472 </div> 4473 <div id="backgroundPopup"></div> 4474 <input data-index="1" type="hidden" id="properties-delivery-date" name="properties[Delivery Date]" value="-"> 4475 <input data-index="2" type="hidden" id="properties-delivery-time" name="properties[Delivery Time]" value="-"> 4476 <input data-index="4" type="hidden" id="properties-nama-penerima" name="properties[Nama Penerima]" value="-"> 4477 <input data-index="5" type="hidden" id="properties-alamat-penerima" name="properties[Alamat Penerima]" value="-"> 4478 <input data-index="6" type="hidden" id="properties-kodepos" name="properties[Kodepos]" value="-"> 4479 <input data-index="7" type="hidden" id="properties-telepon-penerima" name="properties[Telepon Penerima]"> 4480 <input data-index="8" type="hidden" id="properties-kartu-nama-penerima" name="properties[Kartu Nama Penerima]" value="-"> 4481 <textarea data-index="9" type="hidden" id="properties-kartu-pesan" name="properties[Kartu Pesan]" style="display: none">-</textarea> 4482 <input data-index="10" type="hidden" id="properties-kartu-nama-pengirim" name="properties[Kartu Nama Pengirim]" value="-"> 4483 <!-- Additional Shipping --> 4484 <input type="hidden" id="properties-kota-pengiriman-province" name="properties[Province]"> 4485 <input type="hidden" id="properties-kota-pengiriman-country" name="properties[Country]" value="Indonesia"> 4486 <input type="hidden" id="properties-shipping" name="properties[Shipping]"> 4487 <input type="hidden" id="properties-time" name="properties[Time]"> 4488 <input type="hidden" id="properties-card" name="properties[Card]"> 4489 <input type="hidden" id="properties-addons" name="properties[Addons]"> 4490 <input type="hidden" id="properties-company" name="properties[Company]" value=""> 4491
4491<script> 4492 $(document).ready(function() { 4493 var text_max_papan1 = 150; 4494 var msg_text_papan1 = ""; 4495 $('#kartu-ucapan-ucapan').keyup(function() { 4496 var text_length_papan1 = $('#kartu-ucapan-ucapan').val().length; 4497 var msg_text_papan1 = $('#kartu-ucapan-ucapan').val(); 4498 }); 4499 var notes_papan1 = [ 4500 [0, "Happy Wedding (nama & nama)."], 4501 [1, "Congratulations lovebirds (nama & nama)."], 4502 [2, "Selamat berbahagia (nama & nama)."], 4503 [3, "Selamat menempuh hidup baru (nama & nama)."] 4504 ]; 4505 $('#show_note_papan1').click(function(event) { 4506 event.preventDefault(); 4507 var idx_papan1 = parseInt($('#note_id_papan1').val()); 4508 if (isNaN(idx_papan1)) { 4509 idx_papan1 = 0; 4510 } else { 4511 idx_papan1++; 4512 idx_papan1 = idx_papan1 % notes_papan1.length; 4513 } 4514 var note_papan1 = notes_papan1[idx_papan1][1]; 4515 $('#note_id_papan1').val(idx_papan1); 4516 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan1); 4517 $('#msgDelivery').val(note_papan1); 4518 var text_length_papan1 = $('#kartu-ucapan-papan').val().length; 4519 var idx_2_papan1 = parseInt($('#note_btn_id_papan1').val()); 4520 if (isNaN(idx_2_papan1)) { 4521 idx_2_papan1 = 0; 4522 } else { 4523 idx_2_papan1++; 4524 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4525 } 4526 $('#note_btn_id_papan1').val(idx_2_papan1); 4527 //var note_btn=note_btn_text[idx_2][1]; 4528 //$('#note_btn').text(note_btn); 4529 }); 4530 var text_max_papan2 = 150; 4531 var msg_text_papan2 = ""; 4532 $('#kartu-ucapan-ucapan').keyup(function() { 4533 var text_length_papan2 = $('#kartu-ucapan-ucapan').val().length; 4534 var msg_text_papan2 = $('#kartu-ucapan-ucapan').val(); 4535 }); 4536 var notes_papan2 = [ 4537 [0, "Congratulations (ucapan)."], 4538 [1, "Selamat dan sukses atas dibukanya (ucapan personal)."], 4539 [2, "Congratulations for the grand opening of (nama toko/bisnis)."], 4540 [3, "Happy Graduation (nama)."] 4541 ]; 4542 $('#show_note_papan2').click(function(event) { 4543 event.preventDefault(); 4544 var idx_papan2 = parseInt($('#note_id_papan2').val()); 4545 if (isNaN(idx_papan2)) { 4546 idx_papan2 = 0; 4547 } else { 4548 idx_papan2++; 4549 idx_papan2 = idx_papan2 % notes_papan2.length; 4550 } 4551 var note_papan2 = notes_papan2[idx_papan2][1]; 4552 $('#note_id_papan2').val(idx_papan2); 4553 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan2); 4554 $('#msgDelivery').val(note_papan2); 4555 var text_length_papan2 = $('#kartu-ucapan-
4555papan').val().length; 4556 var idx_2_papan2 = parseInt($('#note_btn_id_papan2').val()); 4557 if (isNaN(idx_2_papan2)) { 4558 idx_2_papan2 = 0; 4559 } else { 4560 idx_2_papan2++; 4561 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4562 } 4563 $('#note_btn_id_papan2').val(idx_2_papan2); 4564 //var note_btn=note_btn_text[idx_2][1]; 4565 //$('#note_btn').text(note_btn); 4566 }); 4567 var text_max_papan3 = 150; 4568 var msg_text_papan3 = ""; 4569 $('#kartu-ucapan-ucapan').keyup(function() { 4570 var text_length_papan3 = $('#kartu-ucapan-ucapan').val().length; 4571 var msg_text_papan3 = $('#kartu-ucapan-ucapan').val(); 4572 }); 4573 var notes_papan3 = [ 4574 [0, "Turut Berduka Cita atas meninggalnya almarhum / almarhumah (Nama)."], 4575 [1, "Our Deepest Condolences for the lost of your beloved Father/ Mother/ Husband/ Wife/ Children."], 4576 [2, "Our Deepest Sympathy for the lost of your beloved Father/ Mother/ Husband/ Wife/ Children."], 4577 [3, "Innalillahi wa innailaihi rojiun, Turut berduka cita atas meninggalnya (nama)."] 4578 ]; 4579 $('#show_note_papan3').click(function(event) { 4580 event.preventDefault(); 4581 var idx_papan3 = parseInt($('#note_id_papan3').val()); 4582 if (isNaN(idx_papan3)) { 4583 idx_papan3 = 0; 4584 } else { 4585 idx_papan3++; 4586 idx_papan3 = idx_papan3 % notes_papan3.length; 4587 } 4588 var note_papan3 = notes_papan3[idx_papan3][1]; 4589 $('#note_id_papan3').val(idx_papan3); 4590 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan3); 4591 $('#msgDelivery').val(note_papan3); 4592 var text_length_papan3 = $('#kartu-ucapan-papan').val().length; 4593 var idx_2_papan3 = parseInt($('#note_btn_id_papan3').val()); 4594 if (isNaN(idx_2_papan3)) { 4595 idx_2_papan3 = 0; 4596 } else { 4597 idx_2_papan3++; 4598 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4599 } 4600 $('#note_btn_id_papan3').val(idx_2_papan3); 4601 //var note_btn=note_btn_text[idx_2][1]; 4602 //$('#note_btn').text(note_btn); 4603 }); 4604 var text_max_papan4 = 150; 4605 var msg_text_papan4 = ""; 4606 $('#kartu-ucapan-ucapan').keyup(function() { 4607 var text_length_papan4 = $('#kartu-ucapan-ucapan').val().length; 4608 var msg_text_papan4 = $('#kartu-ucapan-ucapan').val(); 4609 }); 4610 $('#show_note_papan4').click(function(event) { 4611 var notes_papan4 = [ 4612 [0, "Hereâs to youâsteadier, stronger and better every day."], 4613 [1, "Warmest wishes for a speedy recovery!"], 4614 [2, "Dengan ucapan terhangat, semoga lekas membaik dan semakin pulih setiap harinya ya."], 4615 [3, "Semoga lekas sembuh untuk kembali beraktivitas dan berkarya."] 4616 ]; 4617 event.preventDefault(); 4618 var idx_papan4 = parseInt($('#note_id_papan4').val()); 4619 console.log(idx_papan4, 'idx_papan4') 4620 if (isNaN(idx_papan4)) { 4621 idx_papan4 = 0; 4622 } else { 4623 idx_papan4++; 4624 idx_papan4 = idx_papan4 % notes_papan4.length; 4625 } 4626 var note_papan4 = notes_papan4[idx_papan4][1]; 4627 $('#note_id_papan4').val(idx_papan4);
4628 $('#kartu-ucapan-papan, #properties-kartu-ucapan, #properties-kartu-pesan').val(note_papan4); 4629 console.log(note_papan4, 'note_papan4') 4630 var text_length_papan4 = $('#kartu-ucapan-papan').val().length; 4631 var idx_2_papan4 = parseInt($('#note_btn_id_papan4').val()); 4632 if (isNaN(idx_2_papan4)) { 4633 idx_2_papan4 = 0; 4634 } else { 4635 idx_2_papan4++; 4636 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4637 } 4638 $('#note_btn_id_papan4').val(idx_2_papan4); 4639 }); 4640 /* 4641 $("#jenisPapan").change(function(){ 4642 $( "select option:selected").each(function(){ 4643 if($(this).attr("value")=="Happy Wedding"){ 4644 $("#suggest-messages a").hide(); 4645 $("#show_note_papan1").show(); 4646 $("#kartu-ucapan-papan").val(""); 4647 } 4648 if($(this).attr("value")=="Congratulations"){ 4649 $("#suggest-messages a").hide(); 4650 $("#show_note_papan2").show(); 4651 $("#kartu-ucapan-papan").val(""); 4652 } 4653 if($(this).attr("value")=="Duka Cita"){ 4654 $("#suggest-messages a").hide(); 4655 $("#show_note_papan3").show(); 4656 $("#kartu-ucapan-papan").val(""); 4657 } 4658 }); 4659 }).change(); 4660 */ 4661 $(".variant-metafield").each(function() { 4662 const t = $(this) 4663 const id = t.attr("id") 4664 const target = $(`[data-select=${id}]`) 4665 t.on('select2:selecting', function(e) { 4666 const data = e.params.args.data 4667 target.val(data.text) 4668 }); 4669 }) 4670 }) 4671 </script>
4671 4672 <div id="popupCart"> 4673 <div class="container"> 4674 <div class="wrapperPopupCart"> 4675 <div class="headerPopupCart"> 4676 <div class="d-flex pl-5 pr-5 p-4"> 4677 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="16" height="12" viewBox="0 0 16 12" fill="none"> 4678 <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" /> 4679 </svg> 4680 <span>item added to your cart</span> 4681 </div> 4682 <a class="close-purchase-popup"> 4683 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="18" height="18" viewBox="0 0 18 18" fill="none"> 4684 <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" /> 4685 </svg> 4686 </a> 4687 </div> 4688 <div class="contentPopupCart"> 4689 <div class="pl-5 pr-5 p-4"> 4690 <div class="itemContent row m-0 justify-content-between"> 4691 <div class="col-2 align-self-center"> 4692 <img class="d-block" width="80" src="//outerbloom.com/cdn/shop/files/Blossom-Shine-WM_80x.jpg?v=1695788426"> 4693 </div> 4694 <div class="col-10 align-self-center"> 4695 <div class="row pl-3"> 4696 <div class="col-12 col-lg-7"> 4697 <span class="titleCartPopup text-uppercase">VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA</span> 4698 </div> 4699 <div class="d-flex justify-content-end col-12 col-lg-5"> 4700 <span class="deleteCartPopup hide">Delete</span> 4701 <span class="lineCartPrice align-self-center">Rp 10.000</span> 4702 </div> 4703 </div> 4704 </div> 4705 </div> 4706 <div class="itemProperties"> 4707 <div class="propDeliver"> 4708 <h4>delivery option detail</h4> 4709 <p> 4710 <span>delivery city</span> 4711 <span class="propDeliveryCity">jakarta</span> 4712 </p> 4713 <p> 4714 <span>delivery date</span> 4715 <span class="propDeliveryDate">27/03/2026</span> 4716 </p> 4717 <p> 4718 <span>delivery time</span> 4719 <span class="propDeliveryTime">Afternoon | 14:00 - 19:00</span> 4720 </p> 4721 </div> 4722 <div class="propAddress"> 4723 <h4>delivery option detail</h4> 4724 <p> 4725 <span>RECIPIENT NAME</span> 4726 <span class="propDeliveryName">jane doe</span> 4727 </p> 4728 <p>
4729 <span>delivery address</span> 4730 <span class="propDeliveryAddress">Jl. Gatot Subroto No. 25, RT.2/RW.4, Kuningan Barat, Kecamatan Mampang Prapatan, Kota Jakarta Selatan, Daerah Khusus Ibukota Jakarta 12710, Indonesia</span> 4731 </p> 4732 <p> 4733 <span>recipient phone number</span> 4734 <span class="propDeliveryPhone">(+62) 812-3456-7890</span> 4735 </p> 4736 <p> 4737 <span>PROVINCE</span> 4738 <span class="propDeliveryProv">Jakarta</span> 4739 </p> 4740 <p> 4741 <span>postal code</span> 4742 <span class="propDeliveryZip">12710</span> 4743 </p> 4744 </div> 4745 </div> 4746 <div class="itemAddonCart"> 4747 <div class="toggleAddonCart d-flex justify-content-between"> 4748 <h4>add-ons (0)</h4> 4749 <svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="5" height="9" viewBox="0 0 5 9" fill="none"> 4750 <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" /> 4751 </svg> 4752 </div> 4753 <div class="wrapperItemAddonCart"></div> 4754 </div> 4755 </div> 4756 </div> 4757 <div class="footerPopupCart"> 4758 <div class="row m-0 pl-5 pr-5 p-4"> 4759 <a class="btn btnViewCart w-100 text-uppercase text-center" href="/cart">View Cart</a> 4760 <a class="btn btnViewCheckout w-100 text-uppercase text-center" href="/checkout"><span>Checkout</span></a> 4761 <a class="btnContinueShopping w-100 text-center" href="/">Continue shopping</a> 4762 </div> 4763 </div> 4764 </div> 4765 </div> 4766 </div> 4767
4767<script> 4768 const shareButton = document.getElementById('shareButton'); 4769 shareButton.addEventListener('click', () => { 4770 if (navigator.share) { 4771 navigator.share({ 4772 title: "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 4773 url: "/products/blossom-shine", 4774 text: 'Check out this page!' 4775 }).then(() => console.log('Successful share')).catch((error) => console.log('Error sharing', error)); 4776 } else { 4777 alert('Web Share API is not supported in this browser.'); 4778 } 4779 }); 4780 // Inventory validation function 4781 function checkInventoryStatus() { 4782 const productSelect = document.getElementById('productSelect'); 4783 const purchaseButton = document.querySelector('#personalizeBtn button'); 4784 if (!productSelect || !purchaseButton) return; 4785 const selectedVariantId = productSelect.value; 4786 // Get variant data from Shopify 4787 fetch(`/products/blossom-shine.js`).then(response => response.json()).then(product => { 4788 const selectedVariant = product.variants.find(variant => variant.id == selectedVariantId); 4789 if (selectedVariant) { 4790 const isOutOfStock = selectedVariant.inventory_quantity <= 0 && selectedVariant.inventory_management === 'shopify' && selectedVariant.inventory_policy !== 'continue'; 4791 if (isOutOfStock) { 4792 purchaseButton.disabled = true; 4793 purchaseButton.textContent = 'Out of Stock'; 4794 purchaseButton.setAttribute('data-out-of-stock', 'true'); 4795 purchaseButton.style.backgroundColor = '#cccccc'; 4796 purchaseButton.style.cursor = 'not-allowed'; 4797 } else { 4798 // Check if button was disabled due to other conditions 4799 const isOtherDisabled = false || true || false; 4800 if (!isOtherDisabled) { 4801 purchaseButton.disabled = false; 4802 purchaseButton.textContent = 'customize your flower board'; 4803 purchaseButton.removeAttribute('data-out-of-stock'); 4804 purchaseButton.style.backgroundColor = ''; 4805 purchaseButton.style.cursor = ''; 4806 } 4807 } 4808 } 4809 }).catch(error => { 4810 console.error('Error checking inventory:', error); 4811 }); 4812 } 4813 // Check inventory on page load 4814 document.addEventListener('DOMContentLoaded', function() { 4815 checkInventoryStatus();
4816 // Listen for variant changes 4817 const productSelect = document.getElementById('productSelect'); 4818 if (productSelect) { 4819 productSelect.addEventListener('change', checkInventoryStatus); 4820 } 4821 }); 4822 // Prevent form submission if out of stock 4823 document.addEventListener('click', function(e) { 4824 if (e.target.matches('button[data-out-of-stock="true"]')) { 4825 e.preventDefault(); 4826 e.stopPropagation(); 4827 alert('This product is currently out of stock and cannot be purchased.'); 4828 return false; 4829 } 4830 }); 4831 </script>
4831 4832 </div> 4833 </div> 4834 </div> 4835 </div> 4836 </div> 4837 <div id="product-bottom"> 4838 <div class="container"> 4839 <div class="short-desc-mobile d-block d-lg-none mb-3"> 4840 <div class="short-desc"> 4841 <ul> 4842 <li><strong>Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.</strong></li> 4843 </div> 4844 <label class="more-mobile">Show More â</label> 4845 </div> 4846 <style> 4847 .animated-title { 4848 text-align: center; 4849 font-weight: bold; 4850 color: #079c02; 4851 font-size: 28px; 4852 position: relative; 4853 animation: glow 2s infinite alternate, moveUpDown 3s infinite; 4854 } 4855 4856 /* Efek glow / bercahaya hijau */ 4857 @keyframes glow { 4858 0% { 4859 text-shadow: 0 0 5px #079c02; 4860 color: #079c02; 4861 } 4862 4863 50% { 4864 text-shadow: 0 0 20px #00ff55; 4865 color: #12d12b; 4866 } 4867 4868 100% { 4869 text-shadow: 0 0 10px #1bff00; 4870 color: #079c02; 4871 } 4872 } 4873 4874 /* Efek gerakan naik turun */ 4875 @keyframes moveUpDown { 4876 0% { 4877 transform: translateY(0px); 4878 } 4879 4880 50% { 4881 transform: translateY(-5px); 4882 } 4883 4884 100% { 4885 transform: translateY(0px); 4886 } 4887 } 4888 </style> 4889
4889<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/shopify-cartjs/1.1.0/cart.min.js"></script>
4889 4890
4890<script> 4891 CartJS.init({ 4892 "note": null, 4893 "attributes": {}, 4894 "original_total_price": 0, 4895 "total_price": 0, 4896 "total_discount": 0, 4897 "total_weight": 0.0, 4898 "item_count": 0, 4899 "items": [], 4900 "requires_shipping": false, 4901 "currency": "IDR", 4902 "items_subtotal_price": 0, 4903 "cart_level_discount_applications": [], 4904 "checkout_charge_amount": 0 4905 }); 4906 const productType = $("[data-product-type]").data("product-type") 4907 const productDate = Date.parse(new Date()) 4908 const shop = 'outerbloom1.myshopify.com' 4909 const host = 'https://app.asmaraku.com' 4910 // const host = 'http://localhost:5001' 4911 const gsheet = "https://script.google.com/macros/s/AKfycbyqa6mPD6lVjU6hiHr12J8URZ2aJBGyxBsGQ0QtEIDari-rBk_9vSOITjSSmUXL1NwxEg/exec" 4912 const qrID = "041025" + randomString(4, 'aAbCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ') 4913 $("#properties-time").val(new Date().getTime()) 4914 const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent); 4915 if (!isIOS) { 4916 $("#full-date").attr("type", "button") 4917 } 4918 let dateTime = new Date(); 4919 let today = dateTime.getDate(); 4920 let day = dateTime.getDay(); 4921 let hour = dateTime.getHours(); 4922 let min = dateTime.getMinutes(); 4923 let timeOfDay = hour + (min / 100); 4924 async function getFetch(url) { 4925 const response = await fetch(url); 4926 let status = false 4927 let result 4928 if (response.ok) { 4929 status = true 4930 result = await response.json(); 4931 } 4932 return { 4933 status, 4934 data: result 4935 } 4936 } 4937 4938 function setCookie(cname, cvalue, exMins) { 4939 var d = new Date(); 4940 d.setTime(d.getTime() + (exMins * 60 * 1000)); 4941 var expires = "expires=" + d.toUTCString(); 4942 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; 4943 } 4944 4945 function getCookie(cname) { 4946 let name = cname + "="; 4947 let decodedCookie = decodeURIComponent(document.cookie); 4948 let ca = decodedCookie.split(';'); 4949 for (let i = 0; i < ca.length; i++) { 4950 let c = ca[i]; 4951 while (c.charAt(0) == ' ') { 4952 c = c.substring(1); 4953 } 4954 if (c.indexOf(name) == 0) { 4955 return c.substring(name.length, c.length); 4956 } 4957 } 4958 return ""; 4959 } 4960 async function renderDate() { 4961 let dataDate = await getFetch(`${host}/api/shipping/date?domain=${shop}&productId=8144957800663&v=${Date.now()}`); 4962 console.log(dataDate, 'renderDate') 4963 const data = dataDate?.data 4964 const date = data.date 4965 const time = data.time 4966 console.log(date, 'DATE') 4967 const weekday = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]; 4968 const monthly = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; 4969 const htmlDate = [] 4970 for (let i = 0; i < date.length; i++) { 4971 const full = date[i].date 4972 const d = new Date(date[i].date); 4973 const day = weekday[d.getDay()]; 4974 const dt = d.getDate(); 4975 const mt = monthly[d.getMonth()];
4976 const yr = d.getFullYear(); 4977 const isDate = Boolean(date[i].isEnabled) 4978 const cutoffpagi = date[i].cutoff?.pagi 4979 const cutoffsiang = date[i].cutoff?.siang 4980 const cutoffMalam = date[i].cutoff?.Malam 4981 var html = ` 4982 <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'}> 4983 ${dt === today ? 4984 `Today<span>${dt < 10 ? '0' + dt : dt}</span>` : 4985 `${day}<span>${dt < 10 ? '0' + dt : dt}</span>` 4986 } 4987 </button> 4988 ` 4989 htmlDate.push(html) 4990 } 4991 const htmlTime = [] 4992 for (var i = 0; i < time.length; i++) { 4993 const timeText = time[i].text 4994 const timeTime = time[i].time 4995 const timeEnabled = time[i].isEnabled 4996 var html = ` 4997 <button class="time-single calendarbutton2 btn steps-btn" data-time="${timeText}" ${timeEnabled ? '' : 'disabled'}>${timeText}<br/>${timeTime}</button> 4998 ` 4999 htmlTime.push(html) 5000 } 5001 const deliveryDate = document.getElementById("deliveryDate"); 5002 if (deliveryDate) { 5003 deliveryDate.insertAdjacentHTML("afterbegin", htmlDate.join('')) 5004 $("#deliveryTime").html(htmlTime) 5005 if (productType !== '') { 5006 console.log("clarity event " + productType + ' calendaring') 5007 window.clarity("event", `${productType} calendaringSchedule`) 5008 // window.clarity("set", productType, `calendaringSchedule - ${productDate}`) 5009 } 5010 } 5011 } 5012 async function getProvince(city) { 5013 let { 5014 data: { 5015 province 5016 } 5017 } = await getFetch(`${host}/api/shipping/address/province?city=${city}`); 5018 console.log(province, 'province') 5019 $("#province").val(province) 5020 } 5021 async function renderAddress() { 5022 let current 5023 if (getCookie("location_delivery")) { 5024 current = getCookie("location_delivery").charAt(0).toUpperCase() + getCookie("location_delivery").slice(1) 5025 } 5026 let address = await getFetch(`${host}/api/shipping/address?domain=${shop}&productId=8144957800663`); 5027 console.log(address) 5028 const data = address?.data?.city 5029 const htmlAddress = [] 5030 const grouping = [] 5031 for (let i = 0; i < data?.length; i++) { 5032 if (data[i]) { 5033 if (data[i]?.group) { 5034 grouping.push(data[i].group) 5035 } 5036 const price = rupiah.format(data[i]?.rate) 5037 let promo = '(Promo Free Delivery)' 5038 if (data[i]?.name === 'Jakarta - PickUp ASHTA') { 5039 promo = '(at SCBD, Ashta)' 5040 } else if (data[i]?.name === 'Jakarta - PickUp ITC') { 5041 promo = '(at Kuningan, ITC Kuningan)' 5042 } else if (data[i]?.name === 'BSD - PickUp') { 5043 promo = '(at Goldfinch Gading Serpong)' 5044 } else if (data[i]?.name === 'Kota Lainnya') { 5045 promo = '' 5046 } 5047 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>`) 5048 } 5049 } 5050 const deliveryCity = document.getElementById("cities"); 5051 if (deliveryCity) { 5052 deliveryCity.insertAdjacentHTML("beforeend", htmlAddress.join('')) 5053 if (!isIOS) { 5054 $(deliveryCity).select2(); 5055 } 5056 } 5057 } 5058 async function renderZip(v, v2, v3) { 5059 const deliveryZip = document.getElementById("zip"); 5060 if (v === '') { 5061 return 5062 } 5063 let dataZip = await getFetch(`${host}/api/shipping/address/zip?city=${v}&city2=${v2}&city3=${v3}`);
5064 let zip = dataZip?.data?.zip 5065 console.log(zip) 5066 let htmlZip = [] 5067 for (let i = 0; i < zip?.length; i++) { 5068 htmlZip.push(`<option value="${zip[i]?.postalCode} - ${zip[i]?.subdistrict}">${zip[i]?.postalCode} - ${zip[i]?.subdistrict} - ${zip[i]?.city}</option>`) 5069 } 5070 deliveryZip.insertAdjacentHTML("beforeend", htmlZip.join('')) 5071 } 5072 renderDate() 5073 renderAddress() 5074 let rupiah = new Intl.NumberFormat('id-ID', { 5075 style: 'currency', 5076 currency: 'IDR', 5077 maximumFractionDigits: 0, 5078 minimumFractionDigits: 0 5079 }); 5080 async function insertCard(data) { 5081 const response = await fetch(`${host}/api/card/new`, { 5082 method: "POST", 5083 headers: { 5084 'Content-Type': 'application/json', 5085 }, 5086 body: data 5087 }) 5088 const result = await response.json() 5089 let rowIndex = result?.data?.tableRange.split("Outerbloom!A1:J")[1] 5090 $("#greetingCard").attr("data-index", rowIndex) 5091 return result 5092 } 5093 async function updateCard(data) { 5094 const rowIndex = $("#greetingCard").data("index") 5095 const response = await fetch(`${host}/api/card/update?rowIndex=${rowIndex}`, { 5096 method: "PUT", 5097 headers: { 5098 'Content-Type': 'application/json', 5099 }, 5100 body: data 5101 }) 5102 return response 5103 } 5104 5105 function bytesToSize(bytes) { 5106 var sizes = ['b', 'kb', 'mb', 'gb', 'tb', 'p']; 5107 for (var i = 0; i < sizes.length; i++) { 5108 if (bytes <= 1024) { 5109 return bytes + ' ' + sizes[i]; 5110 } else { 5111 bytes = parseFloat(bytes / 1024).toFixed(2) 5112 } 5113 } 5114 return bytes + ' P'; 5115 } 5116 async function uploadMedia(uri, type) { 5117 nameq = $("#properties-nama-penerima").val() 5118 dear = $("#properties-kartu-nama-penerima").val() 5119 card = $("[data-properties=ucapan]").val() 5120 sender = $("#properties-kartu-nama-pengirim").val() 5121 photo = $("#properties-photo").val() 5122 video = $("#properties-video").val() 5123 status = "Product" 5124 const name = qrID 5125 let formData = new FormData(); 5126 formData.append("file", uri); 5127 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 5128 method: "POST", 5129 body: formData 5130 }) 5131 const result = await response.json(); 5132 if (result) { 5133 const url = result.url 5134 if (type === 'image/jpeg') { 5135 $("#properties-photo").val(url) 5136 $(".preview-image").show() 5137 $(".remove-image").show() 5138 photo = url 5139 } else { 5140 $("#properties-video").val(url) 5141 $("#label-input-video span").text("Change File") 5142 $(".case-qrcode-preview p").text("Scan here for a secret message") 5143 $(".remove-media").show() 5144 $("#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>`) 5145 $("[for=input-video]").hide() 5146 video = url 5147 } 5148 $(".case-video-preview").show() 5149 $(".steps-card-preview").removeClass("loading") 5150 // updateCard(nameq, dear, card, sender, photo, video, status) 5151 $(".nextBtn").attr("disabled", false) 5152 } 5153 } 5154 5155 function randomString(length, chars) { 5156 var result = ''; 5157 for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))]; 5158 return result; 5159 } 5160 5161 function getNoteCity(fulldate) { 5162 const h_1 = new Date(new Date().setDate(new Date().getDate() + 1)) 5163 const weekday = ["Min", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"]; 5164 const monthly = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; 5165 const d = new Date(h_1); 5166 const day = weekday[d.getDay()]; 5167 const dt = d.getDate(); 5168 const mt = monthly[d.getMonth()];
5169 const yr = d.getFullYear(); 5170 const p = $("#cities").parent(".form-group") 5171 } 5172 5173 function disabledSameDay() { 5174 let btnFirst = $("#deliveryDate").find("button:first-child") 5175 let getDay = new Date().getDay(); 5176 if (getDay == 1 || getDay == 2 || getDay == 3 || getDay == 4 || getDay == 5) { 5177 if (hour >= 14.00) { 5178 btnFirst.attr("disabled", true) 5179 } 5180 } else if (getDay == 6) { 5181 if (hour >= 16.00) { 5182 btnFirst.attr("disabled", true) 5183 } 5184 } else if (getDay == 0) { 5185 if (hour >= 16.00) { 5186 btnFirst.attr("disabled", true) 5187 } 5188 } 5189 } 5190 5191 function disabledays(date) { 5192 let ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate(); 5193 //if u have to disable a list of day 5194 let removeDays 5195 removeDays = ["2026-03-23", "2026-03-27"]; 5196 if ($.inArray(ymd, removeDays) >= 0) { 5197 return [false]; 5198 } else { 5199 let day = date.getDay(); 5200 if (day == 0 && date.getDate() == 13 && date.getMonth() == 1) { 5201 return [(day == 0), '']; 5202 } 5203 if (day == 0) { 5204 return [(day == 0), '']; 5205 } 5206 return [(day != 0), '']; 5207 } 5208 } 5209 /* Indonesian initialisation for the jQuery UI date picker plugin. */ 5210 /* Written by Deden Fathurahman ([email protected]). */ 5211 (function(factory) { 5212 if (typeof define === "function" && define.amd) { 5213 // AMD. Register as an anonymous module. 5214 define(["../widgets/datepicker"], factory); 5215 } else { 5216 // Browser globals 5217 factory(jQuery.datepicker); 5218 } 5219 }(function(datepicker) { 5220 datepicker.regional.id = { 5221 closeText: "Tutup", 5222 prevText: "<mundur", 5223 nextText: "maju>", 5224 currentText: "Today", 5225 monthNames: ["January", "February", "March", "April", "May", "Juny", "July", "August", "September", "October", "
5225November", "December"], 5226 monthNamesShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Agu", "Sep", "Oct", "Nov", "Dec"], 5227 dayNames: ["Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"], 5228 dayNamesShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], 5229 dayNamesMin: ["Mg", "Sn", "Sl", "Rb", "Km", "jm", "Sb"], 5230 weekHeader: "Mg", 5231 dateFormat: "D, dd M", 5232 firstDay: 0, 5233 isRTL: false, 5234 showMonthAfterYear: false, 5235 yearSuffix: "" 5236 }; 5237 datepicker.setDefaults(datepicker.regional.id); 5238 return datepicker.regional.id; 5239 })); 5240 5241 function loadPopup() { 5242 $("#backgroundPopup").fadeIn("slow"); 5243 $(".purchasePopup:not(.purchasePopupSpotify)").fadeIn("slow"); 5244 const firstSection = $(".purchasePopup:not(.purchasePopupSpotify) .sectionPurchase").first() 5245 if (firstSection.hasClass("purchasePersonalize")) { 5246 if (productType !== '') { 5247 console.log("clarity event " + productType + ' personalize') 5248 window.clarity("event", `${productType} cardPersonalization`) 5249 // window.clarity("set", productType, `cardPersonalization - ${productDate}`) 5250 } 5251 } else if (firstSection.hasClass("sectionPurchaseBoard")) { 5252 console.log("clarity event " + productType + ' personalizeBoard') 5253 window.clarity("event", `${productType} personalizeBoard`) 5254 // window.clarity("set", productType, `personalizeBoard - ${productDate}`) 5255 } 5256 firstSection.removeClass("hide") 5257 // Auto-trigger addon loading when addon section becomes visible 5258 setTimeout(function() { 5259 const addonSection = $(".purchaseAddon") 5260 if (addonSection.length > 0 && !addonSection.hasClass("hide")) { 5261 if ($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 5262 $("[data-addon=upsell-all]").trigger("click") 5263 } 5264 } 5265 }, 200) 5266 } 5267 5268 function disablePopup() { 5269 $("#backgroundPopup").fadeOut("slow"); 5270 $(".purchasePopup").fadeOut("slow"); 5271 $("#popupCart").fadeOut("slow"); 5272 } 5273 5274 function scrollTo(parent, div, dur) { 5275 $(parent).animate({ 5276 scrollTop: $(div).offset().top 5277 }, dur); 5278 } 5279 5280 function loadPopupPersonalize() { 5281 const div = "#purchaseProduct" 5282 const p = "html, body, .product-meta" 5283 $("p.error").remove() 5284 loadItemOccasion($("[data-occassion]").eq(0), "greeting-card-all") 5285 const isCity = $("#cities[required]") 5286 const isDate = $("#propDeliveryDate[required]") 5287 const isTime = $("#propDeliveryTime[required]") 5288 // loadPopup() 5289 if (isCity.val() !== '' && isDate.val() !== '' && isTime.val() !== '') { 5290 loadPopup() 5291 } 5292 if (isCity.val() == '') { 5293 isCity.parent(".row").append("<p class='error'>Choose delivery city</p>") 5294 scrollTo(p, div, 500) 5295 } 5296 if (isDate.val() == '') { 5297 isDate.parents(".row").append("<p class='error'>Choose delivery date</p>") 5298 scrollTo(p, div, 500) 5299 } 5300 if (isTime.val() == '') { 5301 isTime.parents(".row").append("<p class='error'>Choose delivery time</p>") 5302 scrollTo(p, div, 500) 5303 } 5304 } 5305 5306 function quantityCounter() { 5307 $(document).on("click", ".item-card.selected .q_up", function() { 5308 var C = $(this).attr("data-id"), 5309 S = parseInt($(this).siblings(".quantity-cart-" + C).val()) + 1; 5310 $(this).attr("data-quantity", S), 5311 $(this).siblings(".quantity-cart-" + C).val(S); 5312 }), 5313 $(document).on("click", ".item-card.selected .q_down", function() { 5314 var C = $(this).attr("data-id"), 5315 S = parseInt($(this).siblings(".quantity-cart-" + C).val()); 5316 0 < S && $(this).attr("data-quantity", S - 1), 5317 0 < S && $(this).siblings(".quantity-cart-" + C).val(S - 1); 5318 }); 5319 } 5320 quantityCounter() 5321 const itemAddon = $(".item-card").length 5322 const nofree = $(".nofree").length 5323 const upsell = '' 5324 if (nofree === itemAddon) { 5325 // $("#itemAddons").html("<p>No Items available</p>") 5326 } 5327 $("#itemAddons .item-card").each(function(e) { 5328 $("#itemAddons").attr("data-length", e) 5329 }) 5330 $("[data-addon]").click(function() { 5331 const t = $(this) 5332 const data = t.data("addon") 5333 $("[data-addon]").removeClass("selected") 5334 t.addClass("selected") 5335 $.get(`https://outerbloom.com/collections/${data}/products.json`, function(data, status) { 5336 const products = data.products 5337 const html = [] 5338 for (let i = 0; i < products.length; i++) { 5339 const id = products[i].id 5340 const variantId = products[i].variants[0].id 5341 const img = products[i].images[0].src 5342 let img2 = img.split('.jpg')[0] 5343 const title = products[i].title 5344 const price = products[i].variants[0].price 5345 const tags = products[i].tags
5346 const qty = products[i].variants[0].available 5347 let type_upsell = '' 5348 if (tags.includes('upsell-item-standing')) { 5349 type_upsell = 'standing' 5350 } 5351 console.log(type_upsell) 5352 if (type_upsell !== '') { 5353 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}"> 5354 5355 <div class="card-image"> 5356 <img src="${img2}_150x.jpg" alt="${title}" width="" height="" /> 5357 </div> 5358 <div class="card-meta"> 5359 <h5>${title}</h5> 5360 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 5361 <input id="card-${variantId}" type="hidden" name="" value="${variantId}"> 5362 </div> 5363 <div class="card-qty"> 5364 <a data-quantity="1" type="submit" id="q_down-${variantId}" class="btn-qty-min q_down drawer-cart" data-id="${variantId}"><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="12" height="2" viewBox="0 0 12 2" fill="none"><path d="M0 1.90869V0.908691H12V1.90869H0Z" fill="black"/></svg></a> 5365 <input maxlength="3" min="0" class="btn-qty text-center quantity-cart-${variantId}" value="0" data-price=${price} name="quantity"> 5366 <a data-quantity="1" type="submit" class="btn-qty-plus q_up text-green drawer-cart" data-id="${variantId}"><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="12" height="13" viewBox="0 0 12 13" fill="none"> 5367 <path d="M0 6.87023V5.94715H5.53846V0.408691H6.46154V5.94715H12V6.87023H6.46154V12.4087H5.53846V6.87023H0Z" fill="black"/> 5368 </svg></a> 5369 </div> 5370 </div>` 5371 html.push(body) 5372 } 5373 } 5374 $("#itemAddons .row").html(html.length === 0 ? '<p>No Item available</p>' : html) 5375 $("#itemAddons").attr("data-length", products.length) 5376 // $('#itemAddons')[0].swiper.update(); 5377 }); 5378 }) 5379 async function isAddon() { 5380 let ids = [] 5381 $("#itemAddons .item-card.selected").each(function(i, e) { 5382 const id = $(this).data("id") 5383 ids.push(id) 5384 }) 5385 console.log(ids) 5386 return ids 5387 } 5388 $("#itemAddons").delegate(".item-card > div:not(.card-qty)", "click", async function() { 5389 const t = $(this).parent() 5390 const id = t.data("id") 5391 const btn = t.parents(".purchaseAddon").find(".next-purchase-button") 5392 t.toggleClass("selected"); 5393 //$(this).next("input").toggleAttr('name', 'id[]'); 5394 if (t.hasClass('selected')) { 5395 t.find("input").val(1) 5396 t.find("input").attr('name', 'id[]'); 5397 } else { 5398 t.find("input").val(0) 5399 t.find("input").removeAttr('name'); 5400 } 5401 $("#properties-addons").val(addons) 5402 const is = await isAddon() 5403 if (is.length === 0) { 5404 btn.text("continue without add-ons") 5405 return 5406 } 5407 if (is.includes(8835692069079)) { 5408 btn.text("personalize acrylic frame") 5409 } else { 5410 btn.text("Continue") 5411 } 5412 }) 5413 async function myAddon(data) { 5414 const c = $(".addonsPurchase .addons") 5415 let items = [] 5416 const spotifyAddons = $(".spotifyAddons").find("[data-index]") 5417 // if(spotifyAddons.length > 0) { 5418 // $(spotifyAddons).each(function(i, e){ 5419 // const spotifyLink = $(this).find(".spotifyLink").val() 5420 // const spotifySong = $(this).find(".spotifySong").val() 5421 // const spotifyArtist = $(this).find(".spotifyArtist").val() 5422 // const spotifyFotoAddon = $(this).find(".resultPhotoSpotify").val() 5423 // if(spotifyLink !== '') { 5424 // spotifyAddon = `<div class="addon-item" data-id="46067682607319" data-qty="1"> 5425 // <div class="addon-itm-img"> 5426 // <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"/> 5427 // </div> 5428 // <div class="addon-itm-title">
5429 // <span>[US] Outerbloom Acrylic Frame 4R</span> 5430 // </div> 5431 // <div class="addon-itm-line-total"> 5432 // <span>Rp 99.000</span> 5433 // </div> 5434 // </div> 5435 // <div class="propsAddonSpotify row m-0"> 5436 // <div class="col-12 col-lg-2"></div> 5437 // <div class="col-12 col-lg-10"> 5438 // <p> 5439 // <span>spotify link</span> 5440 // <span class="spotifyLinkAddon">${spotifyLink}</span> 5441 // </p> 5442 // <p> 5443 // <span>uploaded photo</span> 5444 // <span class="spotifyFotoAddon">${spotifyFotoAddon}</span> 5445 // </p> 5446 // <p> 5447 // <span>song / playlist name</span> 5448 // <span class="spotifySongAddon">${spotifySong}</span> 5449 // </p> 5450 // <p> 5451 // <span>artist name</span> 5452 // <span class="spotifyArtistAddon">${spotifyArtist}</span> 5453 // </p> 5454 // </div> 5455 // </div>` 5456 // items.push(spotifyAddon) 5457 // } 5458 // }) 5459 // } 5460 for (let i = 0; i < data.length; i++) { 5461 if (data[i].title !== '[US] Outerbloom Acrylic Frame 4R') { 5462 const img = data[i].image 5463 const title = data[i].title 5464 const qty = data[i].qty 5465 const price = data[i].price 5466 const total = Number(qty) * Number(price) 5467 let addons = `<div class="addon-item" data-id="${data[i].id}" data-qty="${qty}"> 5468 <div class="addon-itm-img"> 5469 <img src="${img}" alt="" width="70"/> 5470 </div> 5471 <div class="addon-itm-title"> 5472 <span>${title}</span> 5473 </div> 5474 <div class="addon-itm-line-price"> 5475 <span>${rupiah.format(price)}</span> 5476 ${data[i].title == '[US] Outerbloom Acrylic Frame 4R' ? '' : `<span>x${qty}</span>`} 5477 </div> 5478 <div class="addon-itm-line-total"> 5479 <span>${rupiah.format(total)}</span> 5480 </div> 5481 </div>` 5482 items.push(addons) 5483 } 5484 } 5485 c.html(items) 5486 const parent = $(".purchaseAddon") 5487 const next = parent.next(".sectionPurchase") 5488 parent.addClass("hide") 5489 next.removeClass("hide") 5490 // if(items2.length === 0) return $("#popupCart").addClass("no-addon-cart") 5491 // $(".itemAddonCart").find("h4").text(`add-ons (${items2.length})`) 5492 } 5493 async function listAddon() { 5494 const data = $("#itemAddons").find(".selected") 5495 let ids = [] 5496 $(data).each(function() { 5497 const id = $(this).data("variant") 5498 const image = $(this).find(".card-image img").attr("src") 5499 const title = $(this).find(".card-meta h5").text() 5500 const qty = $(this).find(".card-qty input").val() 5501 const price = $(this).find(".card-qty input").data("price") 5502 ids.push({ 5503 id: Number(id), 5504 image, 5505 title, 5506 qty, 5507 price 5508 }) 5509 }) 5510 myAddon(ids) 5511 } 5512 async function customSpotify(idx, length, type) { 5513 let isCard = false 5514 let p = $(".purchasePopupSpotify") 5515 const preLink = $(".spotifyLinkFirst").val() 5516 $("[data-index]").hide() 5517 p.find(".headerPurchase h3").text(`personalize spotify photo print${length > 1 ? ` - ${idx}` : ''}`) 5518 p.find(".regulerAddons, .purchase-button").hide() 5519 p.find(".spotifyAddons").show() 5520 const data = await trackUrl(preLink) 5521 const html = `<div class="row" data-index=${idx} data-length=${length}><div class="col-12 col-lg-6"><div class="form-vertical position-relative"><div class="form-group mb-4"><h4>upload photo</h4><div class=uploadResult><label class=btn for=uploadPhotoSpotify><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="13" height="11" viewB
5521ox="0 0 13 11" fill="none"> 5522 <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.2026 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"/> 5523 </svg><span>Upload your file</span></label></div><input class="uploadPhotoSpotify form-control d-none" accept=image/* type=file><input class="resultPhotoSpotify" type="hidden"></div><div class="form-group mb-5"><h4>Add your Spotify link here</h4> <input class="spotifyLink2 form-control spotifyLink" value="${preLink}" placeholder=https://open.spotify.com/ ></div><div class="form-group mb-4 text-left"><label class=checkbox for=isCustomMessage><span>Personalized Message</span><span class=checkmark></span></label></div><div class="form-group mb-4 form-personalize"><label class="text-left d-block mb-2 text-uppercase"for=spotifySong>Song / playlist name</label> ${data?.song ? `<input class="form-control spotifySong" value="${data?.song}">` : '<input class="form-control spotifySong" value="">'}</div><div class="form-group form-personalize"><label class="text-left d-block mb-2 text-uppercase"for=spotifyArtist>Artist name</label> ${data?.artist ? `<input class="form-control spotifyArtist" value="${data?.artist}">` : '<input class="form-control spotifyArtist" value="">'}</div><div class=btn-action><button class="back-spotify"><svg fill=none height=14 viewBox="0 0 15 14"width=15 xmlns=https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif><path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z"fill=black /></svg> <span>Back</span></button><button data-type="${isCard ? 'card' : ''}" ${isCard ? '' : 'id=addtocart-card'} class="text-uppercase btn w-100${type == 'addon' && idx == length ? ' finished' : ' no-addon'}" disabled>${isCard ? 'Continue Personalizing' : 'add to cart'}</button></div></div></div><div class="col-12 col-lg-6 columnRight"><div class=frame-spotify><div class=frameImage><div class=frameImageUploaded><svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="13" height="11" viewB
5523ox="0 0 13 11" fill="none"> 5524 <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.2026 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"/> 5525 </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>` 5526 // console.log(html) 5527 $(".spotifyAddons").append(html) 5528 $(`[data-index=${idx}]`).show() 5529 if (preLink !== '') { 5530 $(".btn-action .btn").attr("disabled", false) 5531 } else { 5532 $(".btn-action .btn").attr("disabled", true) 5533 } 5534 return html 5535 } 5536 $(".spotifyLinkFirst").keyup(async function() { 5537 const v = $(this).val() 5538 if (v.includes('spotify:user:spotify')) { 5539 const correct = v.split('user:spotify:')[1] 5540 console.log(correct, 'BNER') 5541 $(this).val(correct) 5542 return 5543 } 5544 if (v.includes("spotify:") || v.includes("https://open.spotify.com/")) { 5545 const data = await trackUrl(v) 5546 if (!data || !data.status) { 5547 $(this).parent().addClass("error") 5548 // $(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>`) 5549 $("#personalizeBtnSpotify .btn").attr("disabled", true) 5550 return 5551 } 5552 $(this).parent().removeClass("error") 5553 // $(this).parent().remove("txt-error") 5554 $("#personalizeBtnSpotify .btn").attr("disabled", false) 5555 } else { 5556 $("#personalizeBtnSpotify .btn").attr("disabled", true) 5557 } 5558 }) 5559 $(".purchaseAddon").delegate(".next-addon", "click", function() { 5560 const parent = $(this).parents(".purchaseAddon") 5561 const next = parent.next(".sectionPurchase") 5562 if (next.hasClass("purchaseAddress")) { 5563 if (productType !== '') { 5564 console.log("clarity event " + productType + ' purchaseDelivery') 5565 window.clarity("event", `${productType} purchaseDelivery`) 5566 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 5567 } 5568 } 5569 const data = $("#itemAddons").find(".selected") 5570 const length = $(".quantity-cart-46067682607319").val() 5571 const checked = data.length; 5572 if (checked > 0) { 5573 if (length > 0) { 5574 $(".purchaseAddon").addClass("purchaseAddonSpotify") 5575 customSpotify(1, length, 'addon') 5576 } else { 5577 listAddon() 5578 } 5579 } else { 5580 parent.addClass("hide") 5581 next.removeClass("hide") 5582 } 5583 }) 5584 $("#personalizeBtnSpotify .btn").click(async function() { 5585 const isCity = $("#cities[required]") 5586 const isDate = $("#propDeliveryDate[required]") 5587 if ((isDate.length > 0 && isCity.length > 0) && (isCity.val() === '' || isDate.val() === '')) { 5588 alert('Please choose Delivery City & Delivery Date') 5589 return 5590 } 5591 const data = await customSpotify(1, 1, 'product') 5592 if (data) { 5593 $("#backgroundPopup").fadeIn("slow"); 5594 $(".purchasePopupSpotify").fadeIn("slow"); 5595 if (productType !== '') { 5596 console.log("clarity event " + productType + ' spotify') 5597 window.clarity("event", `${productType} spotify`) 5598 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 5599 } 5600 } 5601 }) 5602 5603 function formatBytes(bytes, decimals = 2) { 5604 if (!+bytes) return '0 Bytes'
5605 const k = 1024 5606 const dm = decimals < 0 ? 0 : decimals 5607 const sizes = ['B', 'KB', 'MB'] 5608 const i = Math.floor(Math.log(bytes) / Math.log(k)) 5609 return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}` 5610 } 5611 async function trackUrl(link) { 5612 try { 5613 let trackId = link.split('/').pop().split('?')[0]; 5614 let type = '' 5615 if (link.includes("spotify:")) { 5616 const uri = link.split('spotify:')[1] 5617 trackId = uri.split(':')[1] 5618 type = uri.split(':')[0] + 's' 5619 } else { 5620 if (link.match('track')) { 5621 type = 'tracks' 5622 } else if (link.match('playlist')) { 5623 type = 'playlists' 5624 } else if (link.match('artist')) { 5625 type = 'artists' 5626 } else if (link.match('album')) { 5627 type = 'albums' 5628 } 5629 } 5630 console.log(`${host}/api/spotify/${type}/${trackId}`) 5631 const data = await getFetch(`${host}/api/spotify/${type}/${trackId}`) 5632 console.log(data, 'DATA') 5633 const song = data?.data?.name 5634 const artist = data?.data?.artist 5635 return { 5636 song, 5637 artist, 5638 type, 5639 trackId, 5640 status: data.status 5641 } 5642 } catch (err) { 5643 console.log(err) 5644 } 5645 } 5646 $(".spotifyAddons").delegate(".uploadPhotoSpotify", "change", async function() { 5647 const parent = $(this).parents("[data-index]") 5648 const preview = parent.find(".previewImage") 5649 const file = $(this)[0].files[0]; 5650 if (file) { 5651 const reader = new FileReader(); 5652 reader.onload = async function(e) { 5653 parent.find(".uploadResult label").hide() 5654 parent.find(".uploadedResult").remove() 5655 parent.find(".uploadResult").append(`<div class="uploadedResult d-flex" style="justify-content: space-between"> 5656 <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> 5657 <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;">
5657<svg fill="none" height="11" viewBox="0 0 10 11" width="10" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"> 5658 <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 /> 5659 </svg> 5660 </span></div></div>`) 5661 parent.find(".frameImageUploaded svg").hide() 5662 parent.find(".frameImage").addClass("uploaded") 5663 preview.attr("src", e.target.result); 5664 preview.show(); 5665 let formData = new FormData(); 5666 formData.append("file", file); 5667 const response = await fetch(`${host}/api/upload?name=${file.name}&type=image/jpeg&r=${Date.parse(new Date)}`, { 5668 method: "POST", 5669 body: formData 5670 }) 5671 const result = await response.json(); 5672 if (result) { 5673 parent.find(".resultPhotoSpotify").val(result.url) 5674 } 5675 } 5676 reader.readAsDataURL(file); 5677 } else { 5678 preview.hide(); 5679 } 5680 }); 5681 $(".spotifyAddons").delegate(".uploadResult", "click", function() { 5682 $(this).next("input[type=file]").trigger("click") 5683 }) 5684 $(".spotifyAddons").delegate(".changeUpload", "click", function() { 5685 $(this).parents("input[type=file]").trigger("click") 5686 }) 5687 $(".spotifyAddons").delegate(".removeUpload", "click", function() { 5688 const parent = $(this).parents("[data-index]") 5689 parent.find(".uploadPhotoSpotify").val("") 5690 parent.find(".uploadResult label").show() 5691 parent.find(".uploadedResult").remove() 5692 parent.find(".frameImageUploaded svg").show() 5693 parent.find(".previewImage").hide() 5694 parent.find(".frameImage").removeClass("uploaded") 5695 }) 5696 $(".spotifyAddons").delegate("label.checkbox", "click", function() { 5697 const parent = $(this).parents("[data-index]") 5698 parent.toggleClass("checked") 5699 })
5700 $(".spotifyAddons").delegate(".spotifyLink", "change", async function() { 5701 const parent = $(this).parents("[data-index]") 5702 const link = $(this).val() 5703 const data = await trackUrl(link) 5704 console.log(data) 5705 if (data.song) { 5706 parent.find(".spotifySong").val(data.song) 5707 parent.find(".spotifyData").find("h3").text(data.song) 5708 } 5709 if (data.artist) { 5710 parent.find(".spotifyArtist").val(data.artist) 5711 parent.find(".spotifyData").find("p").text(data.artist) 5712 } 5713 parent.find(".spotifyCode img").attr("src", `https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data.type.slice(0, -1)}:${data.trackId}`) 5714 // https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:track:1er51HCEBhIAtoEemKuC3M 5715 if (data.status === true) { 5716 parent.find(".btn-action .btn").attr("disabled", false) 5717 } else { 5718 parent.find(".btn-action .btn").attr("disabled", true) 5719 } 5720 }) 5721 $(".spotifyAddons").delegate(".spotifySong", "keyup", async function() { 5722 const parent = $(this).parents("[data-index]") 5723 const v = $(this).val() 5724 parent.find(".spotifyData h3").text(v) 5725 }) 5726 $(".spotifyAddons").delegate(".spotifyArtist", "keyup", async function() { 5727 const parent = $(this).parents("[data-index]") 5728 const v = $(this).val() 5729 parent.find(".spotifyData p").text(v) 5730 }) 5731 $(".spotifyAddons").delegate(".btn-action .btn:not(.no-addon)", "click", async function() { 5732 const parent = $(this).parents("[data-index]") 5733 const length = parent.data("length") 5734 const index = parent.data("index") 5735 const indexNext = Number(index) + 1 5736 customSpotify(indexNext, length, 'addon') 5737 }) 5738 $(".spotifyAddons").delegate(".btn-action .btn.finished", "click", async function() { 5739 const parent = $(this).parents(".purchaseAddon") 5740 const next = parent.next(".sectionPurchase") 5741 parent.addClass("hide") 5742 next.removeClass("hide") 5743 next.find(".purchase-button").show() 5744 listAddon() 5745 }) 5746 $(".spotifyAddons").delegate(".back-spotify", "click", async function() { 5747 const t = $(this).parents("[data-index]") 5748 const parent = $(this).parents(".sectionPurchase") 5749 const current = t.data("index") 5750 const prevCurrent = Number(current) - 1 5751 if (current == 1) { 5752 parent.removeClass("purchaseAddonSpotify") 5753 parent.find(".purchase-button").show() 5754 parent.find(".headerPurchase h3").text("Make It More Special with Add-Ons!") 5755 $(".spotifyAddons").empty() 5756 $(".regulerAddons").show() 5757 return 5758 } 5759 t.hide() 5760 t.prev("[data-index]").show() 5761 t.remove() 5762 parent.find(".headerPurchase h3").text(`personalize spotify photo print - ${prevCurrent}`) 5763 }) 5764 $("#personalizeBtn .btn").click(async function() { 5765 loadPopupPersonalize() 5766 }); 5767 $(".sectionPurchaseSpotify").delegate(".btn[data-type=card]", "click", function() { 5768 $(".sectionPurchaseSpotify").hide() 5769 loadPopupPersonalize() 5770 }) 5771 $(".close-purchase-popup").click(function() { 5772 disablePopup(); 5773 }); 5774 $("#backgroundPopup").click(function() { 5775 // disablePopup(); 5776 }); 5777 $("#popupCart .close-purchase-popup").click(function() { 5778 location.reload() 5779 }); 5780 $('#popupCart').on('hide.bs.modal', function(e) { 5781 location.reload() 5782 }) 5783 $(".next-card").click(function() { 5784 const parent = $(this).parents(".sectionPurchase") 5785 const next = parent.next(".sectionPurchase") 5786 parent.addClass("hide") 5787 next.removeClass("hide") 5788 }) 5789 $(".back-purchase-button").click(function() { 5790 const parent = $(this).parents(".sectionPurchase") 5791 const prev = parent.prev(".sectionPurchase") 5792 parent.addClass("hide") 5793 prev.removeClass("hide") 5794 }) 5795 $(document).keypress(function(e) { 5796 if (e.keyCode == 27 && popupStatus == 1) { 5797 disablePopup(); 5798 } 5799 }); 5800 const parentImg = $(".case-img-preview") 5801 const parentVid = $(".case-video-preview") 5802 5803 function readURL(input) { 5804 if (input.files && input.files[0]) { 5805 let reader = new FileReader(); 5806 let type = 'image/jpeg' 5807 const size = input.files[0].size 5808 if (input.files[0].type.match('video/')) { 5809 type = 'video/mp4' 5810 if (size > 15728640) { 5811 alert('File size exceeds maximum limit 15 MB') 5812 return 5813 } 5814 } else { 5815 if (size > 5242880) { 5816 alert('File size exceeds maximum limit 5 MB') 5817 return 5818 } 5819 } 5820 reader.onload = function(e) { 5821 $(".nextBtn").attr("disabled", true) 5822 if (type === 'image/jpeg') { 5823 $('.placeholder-image').hide(); 5824 $('.preview-image').show() 5825 $('.preview-image').attr('src', e.target.result); 5826 } else { 5827 // parentVid.find(".ajax-loader").show(); 5828 $(".steps-card-preview").addClass("loading") 5829 } 5830 }
5831 reader.readAsDataURL(input.files[0]); 5832 } 5833 } 5834 async function readURLPapan(input) { 5835 if (input.files && input.files[0]) { 5836 let reader = new FileReader(); 5837 reader.onload = function(e) { 5838 $('.btn-upload-papan').siblings('label').hide(); 5839 $('.btn-upload-papan img').attr('src', e.target.result); 5840 $('.btn-upload-papan img').show(); 5841 $('.svgLogoPapan').hide(); 5842 } 5843 const type = 'image/jpeg' 5844 const name = `logo-8144957800663-${Date.parse(new Date())}` 5845 let formData = new FormData(); 5846 formData.append("file", input.files[0]); 5847 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 5848 method: "POST", 5849 body: formData 5850 }) 5851 const result = await response.json(); 5852 if (result) { 5853 const url = result.url 5854 $("[data-properties=papan-logo]").val(url) 5855 } 5856 reader.readAsDataURL(input.files[0]); 5857 } 5858 } 5859 async function readURLAddress(input) { 5860 console.log(input, 'readURLAddress') 5861 if (input.files && input.files[0]) { 5862 let reader = new FileReader(); 5863 reader.onload = function(e) { 5864 $('.photo-address').attr('src', e.target.result); 5865 $('.photo-address').show(); 5866 } 5867 const type = 'image/jpeg' 5868 const name = input.files[0].name?.split('.')[0] 5869 let formData = new FormData(); 5870 formData.append("file", input.files[0]); 5871 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 5872 method: "POST", 5873 body: formData 5874 }) 5875 const result = await response.json(); 5876 reader.readAsDataURL(input.files[0]); 5877 return result 5878 } 5879 } 5880 async function addToCartUang() { 5881 var productAddOnId1 = 42122101162199; 5882 var productAddOnId2 = 42122101194967; 5883 var product_id = 8144957800663 5884 const data = { 5885 items: [{ 5886 quantity: $("#Quantity-" + productAddOnId1).val(), 5887 id: productAddOnId1, 5888 "properties": { 5889 "Time": $("#properties-time").val() 5890 } 5891 }, { 5892 quantity: $("#Quantity-" + productAddOnId2).val(), 5893 id: productAddOnId2, 5894 "properties": { 5895 "Time": $("#properties-time").val() 5896 } 5897 }] 5898 } 5899 await fetch(window.Shopify.routes.root + 'cart/add.js', { 5900 method: 'POST', 5901 headers: { 5902 'Content-Type': 'application/json' 5903 }, 5904 body: JSON.stringify(data) 5905 }).then(response => { 5906 console.error('Sukses Buket Uang:', response); 5907 $(".form-flower").submit() 5908 }).catch((error) => { 5909 console.error('Error Buket Uang:', error); 5910 $(".form-flower").submit() 5911 }); 5912 } 5913 async function saveCard() { 5914 let isCard = true
5915 const kartu_penerima = $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '' 5916 const kartu_pengirim = $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '' 5917 const kartu_ucapan = $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '' 5918 const foto = $("#properties-photo").val() 5919 const video = $("#properties-video").val() 5920 const data = JSON.stringify({ 5921 "id": qrID, 5922 "penerima": $("#properties-nama-penerima").val(), 5923 "kartu_penerima": kartu_penerima, 5924 "kartu_ucapan": kartu_ucapan, 5925 "kartu_pengirim": kartu_pengirim, 5926 "foto": foto, 5927 "video": video, 5928 "productId": "8144957800663", 5929 "order_name": "", 5930 "status": "Cart" 5931 }) 5932 } 5933 async function additem(items) { 5934 try { 5935 let formData = items 5936 if (items?.length) { 5937 formData = { 5938 'items': items 5939 }; 5940 } 5941 const add = await fetch(window.Shopify.routes.root + 'cart/add.js', { 5942 method: 'POST', 5943 headers: { 5944 'Content-Type': 'application/json', 5945 'X-Requested-With': 'xmlhttprequest' /* XMLHttpRequest is ok too, it's case insensitive */ 5946 }, 5947 body: JSON.stringify(formData) 5948 }) 5949 const data = await add.json(); 5950 return data 5951 } catch (err) { 5952 console.log('Error additem', err) 5953 } 5954 } 5955 async function addons() { 5956 let items = [] 5957 $(".addon-item").each(function() { 5958 const p = $(this) 5959 const props = p.next(".propsAddonSpotify") 5960 const id = $(this).data("id") 5961 const quantity = $(this).data("qty") 5962 const propId = $("#properties-time").val() 5963 let properties = {} 5964 if (id === 46067682607319) { 5965 const link = props.find(".spotifyLinkAddon").text() 5966 const photo = props.find(".spotifyFotoAddon").text() 5967 const song = props.find(".spotifySongAddon").text() 5968 const artist = props.find(".spotifyArtistAddon").text() 5969 properties = { 5970 id: propId, 5971 "Spotify Link": link !== '' ? link : '-', 5972 "Spotify Photo": photo !== '' ? photo : '-', 5973 "Spotify Song": song !== '' ? song : '-', 5974 "Spotify Artist": artist !== '' ? artist : '-', 5975 type: 'addon' 5976 } 5977 } else { 5978 properties = { 5979 "id": propId, 5980 "type": "addon" 5981 } 5982 } 5983 items.push({ 5984 id, 5985 quantity, 5986 properties 5987 }) 5988 }) 5989 return items 5990 } 5991 async function propItems() { 5992 let props = {} 5993 $("[data-properties]").each(function(e) { 5994 let elementType = this.tagName;
5995 const k = $(this).data("properties") 5996 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') { 5997 const v = elementType === 'SELECT' ? $(this).find(":selected").val() : $(this).val(); 5998 if (v !== '') { 5999 props[k] = v?.replace(/[\s\n]/g, ''); 6000 } 6001 } 6002 }) 6003 return props 6004 } 6005 async function showPopupCart(items) { 6006 if (productType !== '') { 6007 console.log("clarity event " + productType + ' completeOrder') 6008 window.clarity("event", `${productType} completeOrder`) 6009 // window.clarity("set", productType, `completeOrder - ${productDate}`) 6010 } 6011 $("#popupCart").show() 6012 $(".propDeliveryCity").text($("#cities").val()) 6013 $(".propDeliveryDate").text($("#propDeliveryDate").val()) 6014 $(".propDeliveryTime").text($("#propDeliveryTime").val()) 6015 $(".propDeliveryName").text($("[data-properties=nama-penerima]").val()) 6016 $(".propDeliveryAddress").text($("[data-properties=alamat-penerima]").val()) 6017 $(".propDeliveryPhone").text($("[data-properties=telepon-penerima]").val()) 6018 $(".propDeliveryProv").text($("#province").val()) 6019 $(".propDeliveryZip").text($("#zip").val()) 6020 const addons = [] 6021 if (items && items.length > 0) { 6022 for (let i = 1; i < items.length; i++) { 6023 const spotifyLink = items[i].properties['Spotify Link'] 6024 const spotifyPhoto = items[i].properties['Spotify Photo'] 6025 const spotifySong = items[i].properties['Spotify Song'] 6026 const spotifyArtist = items[i].properties['Spotify Artist'] 6027 const price = items[i].price / 100 6028 const props = spotifyLink ? `<div class="propsAddonCart row m-0"> 6029 <div class="col-12 col-lg-2"></div> 6030 <div class="col-12 col-lg-10"> 6031 <p> 6032 <span>spotify link</span> 6033 <span>${spotifyLink}</span> 6034 </p> 6035 <p> 6036 <span>Upload Photo</span> 6037 <span>${spotifyPhoto}</span> 6038 </p> 6039 <p> 6040 <span>song / playlist name</span> 6041 <span>${spotifySong}</span> 6042 </p> 6043 <p> 6044 <span>artist name</span> 6045 <span>${spotifyArtist}</span> 6046 </p> 6047 </div> 6048 </div>` : ''; 6049 addons.push(`<div class="row m-0"> 6050 <div class="imgAddonCart col-2"> 6051 <img 6052 width="43" 6053 src="${items[i].image}" 6054 alt="" 6055 > 6056 </div> 6057 <div class="imgAddonTitlePrice col-10 align-self-center"> 6058 <div class="row justify-content-between m-0"> 6059 <div class="col-12 col-lg-8"> 6060 <h5>${items[i].title}</h5> 6061 </div> 6062 <div class="col-12 col-lg-4 text-lg-right"> 6063 <span>${rupiah.format(price)}</span> 6064 </div> 6065 </div> 6066 </div> 6067 </div>${props}`) 6068 } 6069 } 6070 // console.log(addons) 6071 if (addons.length === 0) { 6072 $(".itemAddonCart").hide() 6073 return 6074 } 6075 $(".toggleAddonCart h4").text(`add-ons (${items.length - 1})`) 6076 $(".wrapperItemAddonCart").html(addons) 6077 } 6078 const money = (money) => { 6079 return new Intl.NumberFormat('id-ID', { 6080 style: 'currency', 6081 currency: 'IDR', 6082 minimumFractionDigits: 0 6083 }).format(money); 6084 } 6085 async function showNoteMoney() { 6086 let qty50k = $("[data-properties='Uang 50k']").val() 6087 let qty100k = $("[data-properties='Uang 100k']").val() 6088 const total50k = Number(qty50k) * 50000 6089 const total100k = Number(qty100k) * 100000 6090 const total_all = total50k + total100k 6091 $(".prop50k").html(`<span>${qty50k} Lembar: <strong class="pl-1">${money(total50k)}</strong></span>`) 6092 $(".prop100k").html(`<span>${qty100k} Lembar: <strong class="pl-1">${money(total100k)}</strong></span>`) 6093 $(".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://venom123-spin.pages.dev/" target="_blank" style="text-decoration: underline;
6093 color: #8d3f2d">Customer Service</a> to confirm with proof of payment.</p>`) 6094 } 6095 async function removeImage() { 6096 const data = JSON.stringify({ 6097 "ID": $("#properties-properties-qrId").val(), 6098 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 6099 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 6100 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 6101 "Nama Penerima": $("#properties-nama-penerima").val(), 6102 "Order Number": "", 6103 "Status": "Product", 6104 "Foto": "", 6105 "Media": $("#properties-video").val(), 6106 "Image": "8144957800663" 6107 }) 6108 const remove = updateCard(data) 6109 if (remove) { 6110 $(this).hide() 6111 $("#properties-photo").val("-") 6112 $(".placeholder-image").show() 6113 $(".preview-image").attr("src", "") 6114 } 6115 } 6116 async function removeVideo() { 6117 const data = JSON.stringify({ 6118 "ID": $("#properties-properties-qrId").val(), 6119 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 6120 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 6121 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 6122 "Nama Penerima": $("#properties-nama-penerima").val(), 6123 "Order Number": "", 6124 "Status": "Product", 6125 "Foto": $("#properties-photo").val(), 6126 "Media": "", 6127 "Image": "8144957800663" 6128 }) 6129 const remove = updateCard(data) 6130 if (remove) { 6131 $("#properties-video").val("-") 6132 $(this).find("img").hide() 6133 $(this).hide() 6134 $(this).prev("p").text("Add video to make it more special (optional)") 6135 $("#label-input-video").show() 6136 $("#label-input-video span").text("Upload Video") 6137 $(".case-video-preview p span").remove() 6138 } 6139 } 6140 async function loadItemOccasion(t, occasion) { 6141 const name = occasion?.replace('greeting-card-', '') 6142 $("#kartu-ucapan").val("") 6143 $("[data-occassion]").removeClass("selected") 6144 $("[data-properties=ucapan]").val("") 6145 $("#save-card").attr("disabled", true) 6146 t.addClass("selected") 6147 $("#show_note").attr("data-card-occassion", name) 6148 $.get(`https://outerbloom.com/collections/${occasion}/products.json`, function(data, status) { 6149 const products = data.products 6150 const html = [] 6151 for (let i = 0; i < products.length; i++) { 6152 const id = products[i].id 6153 const variantId = products[i].variants[0].id 6154 const img = products[i].images[0].src 6155 const title = products[i].title 6156 const price = products[i].variants[0].price 6157 const qty = products[i].variants[0].inventory_quantity 6158 const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'}${i === 0 ? ' selected' : ''}" data-id=${id}> 6159 <label for="card-${variantId}"></label> 6160 <div class="card-image"> 6161 <img src="${img}" alt="${title}" width="" height="" /> 6162 </div> 6163 <div class="card-meta text-center"> 6164 <h5>${title}</h5> 6165 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 6166 <input id="card-${variantId}" type="radio" name="id" value="${variantId}" data-price="${price}"> 6167 </div> 6168 </div>` 6169 html.push(body) 6170 } 6171 const withoutCard = `<div class="item-card item-without-card"> 6172 <label for="card-0"></label> 6173 <div class="card-image"> 6174 <img src="https://cdn.shopify.com/s/files/1/1589/6833/t/129/assets/without-card.png?v=1747632283" alt="Without card" width="" height="" /> 6175 </div> 6176 <div class="card-meta text-center"> 6177 <h5>
6177Send without a greeting card</h5> 6178 <input id="card-0" type="radio" name="id" value="" data-price=""> 6179 </div> 6180 </div>` 6181 $("#itemCards .items-card").html(html.length === 0 ? '<p>No Item available</p>' : html.join("")) 6182 }); 6183 } 6184 $(document).ready(function() { 6185 // Observer to auto-trigger addon loading when addon section becomes visible 6186 const addonObserver = new MutationObserver(function(mutations) { 6187 mutations.forEach(function(mutation) { 6188 const target = $(mutation.target) 6189 if (target.hasClass('purchaseAddon') && mutation.type === 'attributes' && mutation.attributeName === 'class') { 6190 if (!target.hasClass('hide')) { 6191 // Addon section just became visible, ensure items are loaded 6192 setTimeout(function() { 6193 if ($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6194 console.log("Auto-triggering addon load...") 6195 $("[data-addon=upsell-all]").trigger("click") 6196 } 6197 }, 150) 6198 } 6199 } 6200 }) 6201 }) 6202 // Start observing addon section 6203 const addonSection = document.querySelector('.purchaseAddon') 6204 if (addonSection) { 6205 addonObserver.observe(addonSection, { 6206 attributes: true, 6207 attributeFilter: ['class'] 6208 }) 6209 } 6210 $(".purchasePopup").delegate("#addtocart-card", "click", async function() { 6211 $(this).find("span").addClass("loading") 6212 let isValid = true 6213 $(".formAddressPurchase [required]").each(function() { 6214 const t = $(this) 6215 const input = t.val() 6216 const p = t.parent() 6217 if (input === '') { 6218 p.addClass("error") 6219 isValid = false 6220 } 6221 }) 6222 if (!isValid) { 6223 $(this).find("span").removeClass("loading") 6224 return 6225 } 6226 let items = [] 6227 const mainProps = { 6228 "Delivery Date": $("#propDeliveryDate").val(), 6229 "Delivery Time": $("#propDeliveryTime").val() !== '' ? $("#propDeliveryTime").val() : '-', 6230 "Kota Pengiriman": $("#cities").val(), 6231 "Nama Penerima": $("[data-properties=nama-penerima]").val() !== '' ? $("[data-properties=nama-penerima]").val() : '-', 6232 "Alamat Penerima": $("[data-properties=alamat-penerima]").val() !== '' ? $("[data-properties=alamat-penerima]").val() : '-', 6233 "Kodepos": $("#zip").val() !== '' ? $("#zip").val() : '-', 6234 "Telepon Penerima": $("[data-properties=telepon-penerima").val() !== '' ? $("[data-properties=telepon-penerima").val() : '-', 6235 "Papan Nama Penerima": $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '-', 6236 "Papan Ucapan": $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '-', 6237 "Papan Nama Pengirim": $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '-', 6238 "Papan Logo": $("[data-properties=papan-logo]").val() !== '' ? $("[data-properties=papan-logo]").val() : '-', 6239 "Foto Alamat": $("[data-properties=foto-alamat]").val() !== '' ? $("[data-properties=foto-alamat]").val() : '-', 6240 "Province": $("#province").val() !== '' ? $("#province").val() : '-', 6241 "Country": $("#properties-kota-pengiriman-country").val() !== '' ? $("#properties-kota-pengiriman-country").val() : '-', 6242 "Shipping": $("#properties-shipping").val() !== '' ? $("#properties-shipping").val() : '-', 6243 "Company": $("[data-properties=company]").val() !== '' ? $("[data-properties=company]").val() : '-', 6244 "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 6245 "type": 'product' 6246 } 6247 const props = await propItems() 6248 properties = { 6249 ...mainProps, 6250 ...props 6251 }; 6252 const id = $("#productSelect").find('option:selected').val() 6253 console.log(id, 'main ID') 6254 const mainItem = { 6255 id: Number(id), 6256 quantity: 1, 6257 properties 6258 } 6259 items.push(mainItem) 6260 const cardId = $("#itemCards").find(".selected input").val() 6261 const cardItem = { 6262 id: Number(cardId), 6263 quantity: 1, 6264 properties: { 6265 "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 6266 type: 'card' 6267 } 6268 } 6269 console.log(cardId, 'cardId') 6270 if (cardId) { 6271 items.push(cardItem) 6272 } 6273 const addon = await addons() 6274 if (addon) { 6275 for (let i = 0;
6275 i < addon.length; i++) { 6276 items.push({ 6277 id: addon[i].id, 6278 quantity: addon[i].quantity, 6279 properties: addon[i].properties 6280 }) 6281 } 6282 } 6283 const addItems = await additem(items) 6284 console.log(addItems.items, 'add items') 6285 if (addItems) { 6286 $(this).find("span").removeClass("loading") 6287 disablePopup() 6288 showPopupCart(addItems.items) 6289 localStorage.setItem("items", JSON.stringify(addItems.items)) 6290 } 6291 }) 6292 $("#addtocart-cart .btn").click(async function() { 6293 const id = $("#productSelect").find('option:selected').val() 6294 const mainProps = { 6295 id: $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 6296 type: 'product' 6297 } 6298 const props = await propItems() 6299 const properties = { 6300 ...mainProps, 6301 ...props 6302 }; 6303 const items = { 6304 id: Number(id), 6305 quantity: 1, 6306 properties 6307 } 6308 const addItems = await additem(items) 6309 if (addItems) { 6310 showPopupCart(addItems.items) 6311 localStorage.setItem("items", JSON.stringify(addItems)) 6312 } 6313 }) 6314 $(".formAddressPurchase [required]").change(function() { 6315 const t = $(this) 6316 const p = t.parent() 6317 const v = t.val() 6318 if (v !== '') { 6319 p.removeClass("error") 6320 } 6321 }) 6322 $("#save-card").click(async function() { 6323 const parent = $(this).parents(".sectionPurchase") 6324 const next = parent.next(".sectionPurchase") 6325 $(this).find("span").addClass("loading") 6326 const card = await saveCard() 6327 console.log(card, 'ssaveCCC') 6328 if (card?.status === 200 || card?.status === 201) { 6329 $(".scanCard").removeClass("hide") 6330 $(this).find("span").removeClass("loading") 6331 parent.addClass("hide") 6332 next.removeClass("hide") 6333 if (next.hasClass("purchaseAddon")) { 6334 $("[data-addon=upsell-all]").click() 6335 console.log("clarity event addons") 6336 window.clarity("event", `${productType} add-ons`) 6337 // Ensure addon items are loaded when entering addon popup 6338 setTimeout(function() { 6339 if ($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6340 $("[data-addon=upsell-all]").trigger("click") 6341 } 6342 }, 100) 6343 } 6344 if (next.hasClass("purchaseAddress")) { 6345 $("#zip").select2() 6346 } 6347 } 6348 }) 6349 $("#skip-card").click(async function() { 6350 $("#greetingCard [data-properties]").val("") 6351 $("#properties-photo").val("") 6352 $("#properties-video").val("") 6353 const parent = $(this).parents(".sectionPurchase") 6354 const next = parent.next(".sectionPurchase") 6355 parent.addClass("hide") 6356 next.removeClass("hide") 6357 // $("#itemCards").html("") 6358 removeImage() 6359 removeVideo() 6360 if (next.hasClass("purchaseAddon")) { 6361 $("[data-addon='upsell-all']").click() 6362 console.log("clarity event addons") 6363 window.clarity("event", `${productType} add-ons`) 6364 // Ensure addon items are loaded when entering addon popup 6365 setTimeout(function() { 6366 if ($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6367 $("[data-addon='upsell-all']").trigger("click") 6368 } 6369 }, 100) 6370 } 6371 if (next.hasClass("purchaseAddress")) { 6372 $("#zip").select2() 6373 } 6374 }) 6375 $("#msgCard").click(async function() { 6376 $(this).parent().addClass("loading") 6377 let occasion = $(".selected[data-occassion]").data("occassion") 6378 occasion = occasion?.replace("greeting-card-", "") 6379 const { 6380 data 6381 } = await getFetch(`${host}/api/card/template/occasion?name=${occasion}`); 6382 const d = data?.data 6383 for (let i = 0; i < d.length; i++) { 6384 const num = Math.floor(Math.random() * (d.length - 1 + 1) + 1); 6385 const greeting = d[num]?.Greeting 6386 $(".greetingCard textarea").val(greeting) 6387 $(this).parent().removeClass("loading") 6388 } 6389 $("#save-card").attr("disabled", false) 6390 }) 6391 $(".sectionPurchaseBoard .next-purchase-button").click(function() { 6392 const parent = $(this).parents(".sectionPurchase") 6393 const next = parent.next(".sectionPurchase") 6394 parent.addClass("hide") 6395 next.removeClass("hide") 6396 }) 6397 $("#editCard").click(function() { 6398 $(".custom-card").show() 6399 $(".preview-card").hide() 6400 }) 6401 $("#first_name, #last_name").change(function() { 6402 const v = $(this).val() 6403 const first_name = $("#first_name").val() 6404 const last_name = $("#last_name").val() !== '' ? ' ' + $("#last_name").val() : '' 6405 $("[data-properties=nama-penerima]").val(first_name + last_name) 6406 }) 6407 $("[data-occassion]").click(function() { 6408 const t = $(this) 6409 const p = t.parents(".sectionPurchase") 6410 // $(".greetingCard").addClass("disabled") 6411 const occasion = t.data("occassion") 6412 loadItemOccasion(t, occasion) 6413 }) 6414 $("#itemCards").delegate(".item-card:not(.item-without-card) label", "click", function() { 6415 const id = $(this).parent(".item-card").data("id") 6416 const t = $(this).parent(".item-card") 6417 const target = t.find("input") 6418 const v = $('.item-card input[type="radio"]:checked').val(); 6419 $("#itemCards .item-card").removeClass("selected") 6420 t.addClass("selected") 6421 $("#itemCards .item-card").find("input").attr("name", "") 6422 if (target.length > 0) { 6423 target.attr("name", "id[]") 6424 $("#properties-card").val(id) 6425 $(".greetingCard").removeClass("disabled") 6426 $("#skip-card").attr("disabled", false) 6427 } else { 6428 $("#properties-card").val("") 6429 } 6430 }) 6431 $("#itemCards").delegate(".item-without-card label", "click", function() { 6432 const parent = $(this).parents(".sectionPurchase") 6433 const next = parent.next(".sectionPurchase") 6434 $(".greetingCard").addClass("disabled") 6435 parent.addClass("hide") 6436 next.removeClass("hide") 6437 $("[data-addon=upsell-all]").click() 6438 $("#zip").select2() 6439 }) 6440 $("[data-properties=ucapan]").keyup(function() { 6441 const v = $(this).val() 6442 const p = $(this).parents(".sectionPurchase") 6443 $(".purchaseAddress").find(".greetingCard textarea").val(v) 6444 if (v.length > 3) { 6445 p.find(".next-purchase-button").attr("disabled", false) 6446 } else { 6447 p.find(".next-purchase-button").attr("disabled", true) 6448 } 6449 }) 6450 $("[data-properties=penerima]").keyup(function() { 6451 const v = $(this).val() 6452 $(".purchaseAddress").find("[data-properties=penerima]").val(v) 6453 }) 6454 $("[data-properties=pengirim]").keyup(function() { 6455 const v = $(this).val() 6456 $(".purchaseAddress").find("[data-properties=pengirim]").val(v) 6457 }) 6458 $(document).click(function(e) { 6459 if ($(e.target).closest('.wrapperPopupCart').length != 0) return false; 6460 // $('#popupCart').fadeOut('slow'); 6461 // location.reload() 6462 }); 6463 $(".toggleAddonCart").click(function() { 6464 const p = $(this).parent(".itemAddonCart") 6465 p.toggleClass("open") 6466 }) 6467 $(".btnViewCart").click(function() { 6468 window.location.href = "https://outerbloom.com/cart"; 6469 }) 6470 $(".btnViewCheckout").click(async function() { 6471 $(this).find("span").addClass("loading") 6472 let zip = $("#zip").val() 6473 const first_name = $("#first_name").val() 6474 const last_name = $("#last_name").val() 6475 const company = $("#company").val() !== '' ? $("#company").val() : '' 6476 const address1 = $("#delivery_address").val() 6477 const address2 = zip && zip !== '' ? zip?.split(' - ')[1] : '' 6478 zip = zip && zip !== '' ? zip?.split(' - ')[0] : '' 6479 const phone = $("#recipient_number").val() 6480 const city = $("#cities").val() 6481 const province = $("#province").val() 6482 const country = 'Indonesia' 6483 const ver = Date.parse(new Date()) 6484 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}` 6485 const clear = await fetch(`/cart/clear.js`, { 6486 method: 'POST' 6487 }) 6488 if (clear.status === 200) { 6489 const savedItem = window.localStorage.getItem("items"); 6490 const items = JSON.parse(savedItem) 6491 const addItems = await additem(items) 6492 console.log(addItems, 'new addItems') 6493 if (addItems) { 6494 window.location.href = `https://outerbloom.com/checkout?${params}`; 6495 } 6496 } 6497 }) 6498 $(".btnContinueShopping").click(function() { 6499 window.location.href = "https://outerbloom.com/"; 6500 }) 6501 if (isIOS) { 6502 $(".empty-state-card").click(function() { 6503 $("#input-foto").trigger("click") 6504 }) 6505 $(".btn-upload-image").click(function() { 6506 $("#input-foto").trigger("click") 6507 }) 6508 $("[for=input-video]").click(function() { 6509 $("#input-video").trigger("click") 6510 }) 6511 $(".btn-upload-papan").click(function() { 6512 $("#logoPapan").trigger("click") 6513 }) 6514 } 6515 $("[data-properties]").each(function() { 6516 const select = $(this).parents(".form-group").find("select") 6517 $(this).change(function() { 6518 const name = $(this).data("properties") 6519 const v = $(this).val() 6520 if (name == 'telepon-penerima') { 6521 let phone = v.replace(/[^0-9]/g, '') 6522 $(this).val(phone); 6523 $("#properties-telepon-penerima").val(phone) 6524 $('.iti__search-input').val('-') 6525 } else { 6526 $("#properties-" + name).val(v) 6527 } 6528 }) 6529 select.on("change", function() { 6530 const name = $(this).data("properties") 6531 const v = $(this).val() 6532 $("#properties-" + name).val(v) 6533 }) 6534 }) 6535 $("#show_note").click(function() { 6536 nameq = $("#properties-nama-penerima").val() 6537 dear = $("#properties-kartu-nama-penerima").val() 6538 card = $("[data-properties=ucapan]").val() 6539 sender = $("#properties-kartu-nama-pengirim").val() 6540 photo = $("#properties-photo").val() 6541 video = $("#properties-video").val() 6542 updateCard(nameq, dear, card, sender, photo, video, status) 6543 }) 6544 $(".remove-image").click(function(e) { 6545 e.preventDefault() 6546 $(this).find("img").show() 6547 removeImage() 6548 }) 6549 $(".remove-media").click(function(e) { 6550 e.preventDefault() 6551 $(this).find("img").show() 6552 removeVideo() 6553 }) 6554 $("[data-delivery_method]").click(function(e) { 6555 e.preventDefault() 6556 const t = $(this) 6557 const data = t.data("delivery_method") 6558 $("[data-delive
6558ry_method]").removeClass("selected") 6559 t.addClass("selected") 6560 $("#cities").val("") 6561 $("#properties-delivery-date").val("-") 6562 $("#deliveryDate button").removeClass("selected") 6563 $("#full-date").val("Full Calendar â") 6564 $("#propDeliveryDate").val("") 6565 const step3 = $("#step-3") 6566 if (data.match('PickUp')) { 6567 $(".selfpickup-point").show() 6568 step3.find("[data-finished=false]").hide() 6569 $("#panel-4").hide() 6570 step3.find("[data-finished=true]").show() 6571 $("#cities").attr("required", false) 6572 $("#form-group-city").hide() 6573 $("#row-delivery-time").hide() 6574 $("#propDeliveryTime, #properties-delivery-time, #properties-nama-penerima, #properties-alamat-penerima, #properties-kodepos, #properties-kodepos, #properties-telepon-penerima").val("-") 6575 $("#propDeliveryTime").attr("required", false) 6576 // $("#deliveryDate").find("button:first-child").addClass("stop") 6577 $(".form-selfpickup").show() 6578 $(".form-delivery").hide() 6579 $(".form-delivery").find("input, textarea, select").val("") 6580 $(".form-delivery").find("input, textarea, select").attr("required", false) 6581 $("#properties-shipping").val("0") 6582 $("#noteDeliveryDate").hide() 6583 $(".form-delivery .form-control").attr("required", false) 6584 $("#stepNav4").hide() 6585 $("#deliveryDate").find("button:nth-child(1)").addClass("stop") 6586 if (timeOfDay >= 16.01) { 6587 $("#deliveryDate").find("button:nth-child(2)").addClass("stop") 6588 } 6589 } else { 6590 $("#deliveryDate").find("button:nth-child(1)").removeClass("stop") 6591 step3.find("[data-finished=false]").show() 6592 $("#panel-4").show() 6593 step3.find("[data-finished=true]").hide() 6594 $("#cities").attr("required", true) 6595 $(".selfpickup-point").hide() 6596 $("#form-group-city").show() 6597 $("#cities").val('').trigger('change'); 6598 $("#properties-kota-pengiriman").val("-") 6599 $("#row-delivery-date, #row-delivery-time").show() 6600 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 6601 $("#deliveryDate").find("button").removeClass("stop") 6602 $(".form-selfpickup").hide() 6603 $(".form-delivery").show() 6604 $(".form-delivery").find("input, textarea, select").attr("required", true)
6605 $(".form-delivery [data-properties]").attr("readonly", false) 6606 $("#properties-kodepos").val("-") 6607 $("#properties-alamat-penerima").val("-") 6608 $(".form-delivery .form-control").attr("required", true) 6609 $(this).parents(".setup-content").attr("id", "step-1") 6610 $("#stepNav4").show() 6611 } 6612 }) 6613 $("[name=selfpickup]").click(function() { 6614 const p = $(this).parents(".row-pickup") 6615 const pickupCity = $("input[name='selfpickup']:checked").val(); 6616 const pickupAddress = $("input[name='selfpickup']:checked").data("address"); 6617 const pickupZip = $("input[name='selfpickup']:checked").data("zip"); 6618 $(".row-pickup").removeClass("selected") 6619 p.addClass("selected") 6620 $("#properties-kota-pengiriman").val(pickupCity) 6621 $("#province").val("Jakarta") 6622 $("#properties-alamat-penerima").val(pickupAddress) 6623 $("#properties-kodepos").val(pickupZip) 6624 }) 6625 $("#cities").change(function(e) { 6626 e.preventDefault() 6627 $(this).parent(".row").find("p.error").remove() 6628 $("#full-date").val("Full Calendar") 6629 $("#deliveryDate, #deliveryDateFull label ").show() 6630 $("#deliveryDateFull").removeClass("filled") 6631 $(".btnChangeDeliveryDate").addClass("hide") 6632 $("#full-date").prop('disabled', false); 6633 $("#stepNav2, #stepNav3, #stepNav4").removeClass("btn-success") 6634 $("#stepNav2, #stepNav3, #stepNav4").find("a").attr("disabled", true) 6635 const step3 = $("#step-3") 6636 $("#cityNote").remove() 6637 $("#noteDeliveryDate").hide() 6638 $("#noteDeliveryDate").empty() 6639 let v = $(this).val() 6640 let v2 = $('option:selected', this).attr('data-city'); 6641 let v3 = $('option:selected', this).attr('data-province'); 6642 let price = $('option:selected', this).attr('data-price'); 6643 $("#country").val(v) 6644 $("#properties-kota-pengiriman").val(v) 6645 $("#properties-shipping").val(price) 6646 $("#deliveryDate button, #deliveryTime button, .calendarseasonal .button").removeClass("selected") 6647 $("#properties-delivery-date, #properties-delivery-time").val("-") 6648 $("#propDeliveryDate, #propDeliveryTime").val("") 6649 let note = $('option:selected', this).attr('data-note'); 6650 if (v === 'Kota Lainnya') { 6651 $("#noteDeliveryDate").show() 6652 $("#noteDeliveryDate").text("Order akan segera dikirim. Estimasi tanggal diterima akan disesuaikan dengan waktu pengiriman oleh pihak ekspedisi ke lokasi Anda.") 6653 $("#zip").attr("required", false) 6654 $("#zip").hide() 6655 $("#propDeliveryDate, #propDeliveryTime").attr("required", false) 6656 $("#propDeliveryDate, #properties-delivery-date, #propDeliveryTime, #properties-delivery-time").val("-") 6657 $("#row-delivery-date, #row-delivery-time").hide() 6658 $("#properties-shipping").val("") 6659 // $(this).parents(".setup-content").attr("id", "step-2") 6660 } else { 6661 $("#noteDeliveryDate").hide() 6662 $("#zip").attr("required", true) 6663 $("#zip").show() 6664 $("#row-delivery-date, #row-delivery-time").show() 6665 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 6666 $("#deliveryDate").find("button").removeClass("stop") 6667 // $(this).parents(".setup-content").attr("id", "step-1") 6668 } 6669 // if(v !== 'Jakarta') { 6670 // $("[data-type=upsell]").hide() 6671 // } else { 6672 // $("[data-type=upsell]").show() 6673 // } 6674 // $('.collection-addons')[0].swiper.update(
6674); 6675 getProvince(v) 6676 $("#zip").html(`<option value="">Choose Postal Code</option>`) 6677 renderZip(v, v2, v3) 6678 disabledSameDay() 6679 if (v !== 'Jakarta' && v !== 'Depok' && v !== 'Bekasi' && v !== 'Tangerang') { 6680 $("#cardOccasion, #navAddon, .collection-addons").hide() 6681 $("[data-addon=giftcard]").show() 6682 $("[data-addon=giftcard]").click() 6683 $("#itemAddons").show() 6684 $("#flower-step").addClass("nonjadetabek") 6685 } else { 6686 $("#cardOccasion, #navAddon, .collection-addons").show() 6687 $("[data-addon=all]").click() 6688 $("#flower-step").removeClass("nonjadetabek") 6689 } 6690 if (v !== '') { 6691 $("#personalizeBtn .btn").attr("disabled", false) 6692 } else { 6693 $("#personalizeBtn .btn").attr("disabled", true) 6694 } 6695 }) 6696 $("#zip").change(function(e) { 6697 let v = $(this).val() 6698 var city = $("#cities").find('option:selected'); 6699 $("#properties-kodepos").val(v) 6700 if (city === 'Kota Lainnya') { 6701 $(this).attr("required", true) 6702 $("#recipient-address").val("") 6703 } 6704 }) 6705 var minDate = +7 6706 $("#full-date").datepicker({ 6707 minDate, 6708 dateFormat: 'Mdd_yy', //Nop22_2021, 6709 beforeShowDay: disabledays, 6710 onSelect: function(date) { 6711 $("#deliveryDate, #deliveryDateFull label ").hide() 6712 $("#deliveryDateFull").addClass("filled") 6713 $(".btnChangeDeliveryDate").removeClass("hide") 6714 $("#full-date").prop('disabled', true); 6715 $('#propDeliveryDate, #properties-delivery-date').val('Kirim_' + date); 6716 $(".date-full").addClass("selected") 6717 $(".date-single, .calendar-group").removeClass("selected") 6718 $("#propDeliveryTime").val('') 6719 $("#properties-delivery-time").val('-') 6720 $(".time-single").removeClass("selected") 6721 } 6722 }); 6723 $(".btnChangeDeliveryDate").click(function() { 6724 $("#deliveryDate, #deliveryDateFull label ").show() 6725 $("#deliveryDateFull").removeClass("filled") 6726 $(".btnChangeDeliveryDate").addClass("hide") 6727 $("#full-date").prop('disabled', false); 6728 }) 6729 $("#deliveryDate").delegate(".calendarbutton:not(.date-full)", "click", function(e) { 6730 e.preventDefault() 6731 $(this).parents("#row-delivery-date").find("p.error").remove() 6732 const fulldate = $(this).data("fulldate") 6733 const day = $(this).data("day") 6734 const date = $(this).data("date")
6735 const month = $(this).data("month") 6736 const year = $(this).data("year") 6737 const off_pagi = $(this).data("offpagi") 6738 const off_siang = $(this).data("offsiang") 6739 const off_Malam = $(this).data("offMalam") 6740 $(".calendarbutton").removeClass("selected") 6741 $(this).addClass("selected") 6742 $("#propDeliveryDate, #properties-delivery-date").val(`Kirim_${month}${date}_${year}`) 6743 $("#propDeliveryTime").val('') 6744 $("#properties-delivery-time").val('-') 6745 $(".calendarbutton2").removeClass("selected") 6746 $("#full-date").val("Full Calendar") 6747 if (off_pagi && timeOfDay > off_pagi) { 6748 $("[data-time=Morning]").attr("disabled", true) 6749 } else { 6750 $("[data-time=Morning]").attr("disabled", false) 6751 } 6752 if (off_siang && timeOfDay > off_siang) { 6753 $("[data-time=Afternoon]").attr("disabled", true) 6754 } else { 6755 $("[data-time=Afternoon]").attr("disabled", false) 6756 } 6757 }) 6758 if (today === 14 && timeOfDay > 17.00) { 6759 $("#deliveryDate button:first-child").attr("disabled", true) 6760 } 6761 $("#deliveryTime").delegate(".calendarbutton2", "click", function(e) { 6762 e.preventDefault() 6763 const time = $(this).data("time") 6764 const date = $("#propDeliveryDate").val() 6765 if (date == '') { 6766 return alert('Silakan pilih tanggal terlebih dahulu') 6767 } 6768 $(".calendarbutton2").removeClass("selected") 6769 $(this).addClass("selected") 6770 $("#propDeliveryTime, #properties-delivery-time").val(`KirimJam_${date.replace('Kirim_','')}_${time}`) 6771 }) 6772 $('textarea.has-limit, input.has-limit').keyup(function() { 6773 max = this.getAttribute("maxlength"); 6774 let len = $(this).val().length; 6775 let limit = $(this).siblings(".limit"); 6776 if (len > max) { 6777 alert('you have reached the limit'); 6778 } else { 6779 limit.text(`${len}/${max}`); 6780 } 6781 }); 6782 $("#button-action-step .btn").click(function() { 6783 $(this).find("span").text("Processing..."); 6784 }); 6785 $(".finishBtn").on('click', function() { 6786 $(this).addClass("is-adding"); 6787 // $(this).click(); 6788 }); 6789 $('.setup-panel .nav-item a.btn-success').trigger('click'); 6790 $("#button-action .btn").click(function() { 6791 $("#flower-step").addClass("block"); 6792 $("#button-action").hide(); 6793 }); 6794 $(".close-how-order").click(function() { 6795 $("#flower-step").removeClass("block"); 6796 $("#button-action").show(); 6797 }); 6798 $("#input-foto, #input-video").change(function(e) { 6799 readURL(this); 6800 }); 6801 $("#logoPapan").change(function() { 6802 readURLPapan(this); 6803 }); 6804 $("#address-upload").change(async function() { 6805 const upload_address = await readURLAddress(this) 6806 if (upload_address) { 6807 const url = upload_address.url 6808 $(".props-address-upload").val(url) 6809 $(".form-address").addClass("address-uploaded") 6810 $(".form-address-upload").addClass("uploaded") 6811 $(this).parents(".form-group").siblings(".form-group").find("[required]").attr("required", false) 6812 } 6813 }) 6814 $(".address-manualy").click(function() { 6815 $(".form-address-upload").removeClass("uploaded"); 6816 $(".photo-address").hide(); 6817 $(".form-address").removeClass("address-uploaded") 6818 $("#formAddressPurchase").find(".form-control").attr("required", true) 6819 }); 6820 $(".case-video-preview").delegate(".replace-video", "click", function() { 6821 $("#input-video").trigger("click") 6822 }) 6823 $('.date-single').click(function(e) { 6824 e.preventDefault(); 6825 $('.date-single').removeClass('selected'); 6826 $('#full-date').removeClass('selected'); 6827 $(this).addClass('selected'); 6828 $('#full-date').html('Full' + '<br/>' + 'Calendar'); 6829 }); 6830 $('#full-date').click(function(e) { 6831 e.preventDefault(); 6832 $('.date-single').removeClass('selected'); 6833 $(this).addClass('selected'); 6834 }); 6835 // $("tr").each(function(){ 6836 // if($(this).text().match('SKU')) { 6837 // $(".sku-product").html($(this).parents("table").html()) 6838 // } 6839 // }) 6840 $("#product-image").scroll(function() { 6841 $(".desc-add").each(function() { 6842 const img = $(this).find("img") 6843 const src = img.data("src") 6844 img.attr("src", src) 6845 }) 6846 }) 6847 $(".product-fixed").hide() 6848 let target = $("#personalizeBtn") 6849 $(".product-meta").scroll(function() { 6850 if ($(window).scrollTop() >= target.offset().top) { 6851 $(".product-fixed").addClass("show") 6852 } else { 6853 $(".product-fixed").removeClass("show") 6854 } 6855 }); 6856 $(window).scroll(function() { 6857 if ($(window).scrollTop() >= target.offset().top) { 6858 $(".product-fixed").addClass("show") 6859 } else { 6860 $(".product-fixed").removeClass("show") 6861 } 6862 }); 6863 }); 6864 </script>
6864 6865
6865<script> 6866 // 6867 </script>
6867 6868
6868<script> 6869 $(document).ready(function() { 6870 $('table tr td').each(function() { 6871 var texto = $(this).text(); 6872 var nextto = $(this).next("td"); 6873 var sku = $("#data-sku").val() 6874 if (texto == 'SKU') { 6875 nextto.text(sku) 6876 } 6877 }); 6878 $(".stamped-summary-actions-newquestion").text("Tulis Pertanyaan"); 6879 $(".stamped-summary-actions-newreview").text("Tulis Review"); 6880 $("#tab-questions").text("Pertanyaan"); 6881 $(".freeship .icon").click(function() { 6882 $(".fs-content").slideToggle(); 6883 $(this).parents(".freeship").toggleClass("expand"); 6884 }); 6885 var $easyzoom = $('.easyzoom').easyZoom(); 6886 // Setup thumbnails example 6887 var api1 = $easyzoom.filter('.easyzoom--with-thumbnails').data('easyZoom'); 6888 $('.thumbnails').on('click', 'a', function(e) { 6889 var $this = $(this); 6890 e.preventDefault(); 6891 // Use EasyZoom's `swap` method 6892 api1.swap($this.data('standard'), $this.attr('href')); 6893 }); 6894 $('#playerID').click(function() { 6895 var videoURL = $('#VdoID').attr('src'), 6896 dataplay = $('#VdoID').attr('data-play'); 6897 //for check autoplay 6898 //if not set autoplay=1 6899 if (dataplay == 0) { 6900 $('#VdoID').attr('src', videoURL + '?autoplay=1'); 6901 $('#VdoID').attr('data-play', 1); 6902 } else { 6903 var videoURL = $('#VdoID').attr('src'); 6904 videoURL = videoURL.replace("?autoplay=1", ""); 6905 $('#VdoID').prop('src', ''); 6906 $('#VdoID').prop('src', videoURL); 6907 $('#VdoID').attr('data-play', 0); 6908 } 6909 }); 6910 $(".product-photo-thumb-video").click(function(e) { 6911 e.preventDefault(); 6912 var newEmbed = $(this).attr('href'); 6913 $("#featured-image-product").addClass("img-video"); 6914 $("#ProductPhotoImg").hide(); 6915 $("#featured-image-product .video").show(); 6916 $("#featured-image-product iframe").attr('src', newEmbed); 6917 $("#VdoID")[0].src += "&autoplay=1"; 6918 }); 6919 $(".product-single__thumbnail").click(function(evt) { 6920 evt.preventDefault(); 6921 $("#featured-image-product").removeClass("img-video"); 6922 $("#ProductPhotoImg").show(); 6923 $("#featured-image-product .video").hide(); 6924 $("#featured-image-product iframe").attr('src', ''); 6925 }); 6926 if ($('#product-meta .short-desc > div').length >= 1) { 6927 //console.log('div detected') 6928 var replacer = $('#product-meta .short-desc > div').contents(); 6929 $('#product-meta .short-desc > div').replaceWith(replacer); 6930 var cAssured = $('.c-assured').detach(); 6931 cAssured.insertAfter('.meta-sds .stock-info'); 6932 } 6933 $(".heading-toggle").click(function() { 6934 $(this).parent().toggleClass("open") 6935 }); 6936 }); 6937 </script>
6937 6938
6938<script type="application/json" id="ProductJson-Product"> 6939 { 6940 "id": 8144957800663, 6941 "title": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 6942 "handle": "blossom-shine", 6943 "description": "\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eVenom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin." 6944 } 6945 </script>
6945 6946
6946<script type="application/json" id="VariantJson-Product"> 6947 [{ 6948 "incoming": false, 6949 "next_incoming_date": null 6950 }] 6951 </script>
6951 6952 </div> 6953
6953<script src="//outerbloom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
6953 6954 <style> 6955 .stamped-review-header-title, 6956 .stamped-review-header .author, 6957 .stamped-review-content-body, 6958 .stamped-sort-select, 6959 .stamped-review-header .verified-badge[data-type=buyer]:after, 6960 .stamped-review-header-byline, 6961 .stamped-review-reply-body { 6962 font-size: 14px !important; 6963 font-family: 'Barlow', sans-serif !important; 6964 } 6965 6966 .stamped-review { 6967 margin-bottom: 0; 6968 } 6969 6970 .stamped-review-body { 6971 padding-left: 65px; 6972 } 6973 6974 .stamped-review:first-child { 6975 padding-top: 25px; 6976 } 6977 6978 .stamped-review-content { 6979 clear: none; 6980 } 6981 6982 .stamped-review-reply { 6983 margin: 15px 0 0 65px; 6984 background: #f2f2f2; 6985 border-left: none; 6986 } 6987 6988 .stamped-review-reply-body { 6989 padding-left: 65px; 6990 } 6991 6992 .stamped-review-header .author { 6993 text-transform: capitalize; 6994 } 6995 6996 .stamped-questions .stamped-review-content { 6997 padding-left: 65px; 6998 } 6999 7000 .stamped-pagination { 7001 margin: 20px 0 0; 7002 } 7003 7004 .stamped-pagination li { 7005 position: initial !important; 7006 display: inline-block; 7007 position: relative; 7008 vertical-align: middle; 7009 text-decoration: none; 7010 -webkit-tap-highlight-color: transparent; 7011 -webkit-box-flex: 0; 7012 -moz-box-flex: 0; 7013 -ms-flex: 0 0 auto; 7014 flex: 0 0 auto; 7015 -webkit-user-select: none; 7016 -moz-user-select: none; 7017 -ms-user-select: none; 7018 user-select: none; 7019 background: 0 0; 7020 text-transform: none; 7021 color: #33373D; 7022 font-weight: 400; 7023 -webkit-transition: background .1s ease, box-shadow .1s ease, color .1s ease; 7024 transition: background .1s ease, box-shadow .1s ease, color .1s ease; 7025 border: 1px solid #ccc; 7026 border-right: none; 7027 margin-bottom: 0; 7028 } 7029 7030 .stamped-pagination li a { 7031 color: #121212; 7032 padding: 13px 18px; 7033 vertical-align: middle; 7034 display: block; 7035 } 7036 7037 .stamped-pagination li.active a { 7038 background-color: #ddd; 7039 font-weight: 400; 7040 } 7041 7042 .stamped-pagination li:hover a { 7043 background: #ddd; 7044 } 7045 7046 .stamped-pagination .next { 7047 border-right: 1px solid #ccc; 7048 } 7049 7050 .stamped-pagination li:first-child { 7051 border-top-left-radius: 5px; 7052 border-bottom-left-radius: 5px; 7053 } 7054 7055 .stamped-pagination li:last-child { 7056 border-top-right-radius: 5px; 7057 border-bottom-right-radius: 5px; 7058 } 7059 7060 #stamped-pagination-question span.page { 7061 display: inline-block; 7062 border: 1px solid #ccc; 7063 width: 47px; 7064 } 7065 7066 #stamped-pagination-question span { 7067 font-size: 14px; 7068 } 7069 7070 #stamped-pagination-question .page.active { 7071 padding: 12px; 7072 font-weight: 400; 7073 background: #ddd; 7074 } 7075 7076 #stamped-pagination-question a, 7077 #stamped-pagination-question .page.active { 7078 color: #121212; 7079 padding: 13px 18px; 7080 vertical-align: middle; 7081 display: inline-block; 7082 } 7083 7084 .stamped-pagination-deco { 7085 color: #121212; 7086 padding: 13px 18px; 7087 width: 47px; 7088 vertical-align: middle; 7089 display: inline-block; 7090 border: 1px solid #ccc; 7091 padding: 12px; 7092 } 7093 7094 .stamped-pagination-prev, 7095 .stamped-pagination-next { 7096 position: inherit; 7097 } 7098 7099 .stamped-pagination-prev a, 7100 .stamped-pagination-next a { 7101 width: auto !important; 7102 border: 1px solid #ccc; 7103 } 7104 7105 @media (max-width: 480px) { 7106 .stamped-review-reply { 7107 margin-left: 0 !important; 7108 } 7109 7110 select.stamped-sort-select { 7111 font-size: 13px !important; 7112 } 7113 } 7114 7115 #product-reviews .stamped-summary-ratings, 7116 #product-reviews .stamped-summary-actions, 7117 .stamped-content { 7118 display: block !important; 7119 } 7120 </style> 7121
7121<script> 7122 var selectCallback = function(variant, selector) { 7123 timber.productPage({ 7124 money_format: "Rp {{amount_no_decimals}}", 7125 variant: variant, 7126 selector: selector 7127 }); 7128 }; 7129 jQuery(function($) { 7130 new Shopify.OptionSelectors('productSelect', { 7131 product: { 7132 "id": 8144957800663, 7133 "title": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 7134 "handle": "blossom-shine", 7135 "description": "\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eVenom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin." 7136 }, 7137 onVariantSelected: selectCallback, 7138 enableHistoryState: true 7139 }); 7140 // Add label if only one product option and it isn't 'Title'. Could be 'Size'. 7141 // Hide selectors if we only have 1 variant and its title contains 'Default'. 7142 $('.selector-wrapper').hide(); 7143 }); 7144 </script>
7144 7145
7145<script type="application/ld+json"> 7146 { 7147 "@context": "http://schema.org", 7148 "@type": "Product", 7149 "offers": { 7150 "@type": "Offer", 7151 "availability": "https://schema.org/InStock", 7152 "price": 835000, 7153 "priceValidUntil": "31-03-2026", 7154 "priceCurrency": "IDR", 7155 "url": "https://venom123spin.com/" 7156 }, 7157 "brand": { 7158 "@type": "Brand", 7159 "name": "Outerbloom Florist" 7160 }, 7161 "sku": "8144957800663", 7162 "gtin13": "Jawa", 7163 "name": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 7164 "description": "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.", 7165 "category": "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.", 7166 "url": "https://venom123spin.com/", 7167 "image": { 7168 "@type": "ImageObject", 7169 "url": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426", 7170 "image": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426", 7171 "name": "VENOM123 SPIN TERBAIK DALAM SETIAP PUTARANNYA", 7172 "width": 1024, 7173 "height": 1024 7174 } 7175 } 7176 </script>
7176 7177
7177<script id="bss-ltap-hide-price" type="text/javascript"> 7178 ! function(e) { 7179 var t = {}; 7180 7181 function o(r) { 7182 if (t[r]) return t[r].exports; 7183 var c = t[r] = { 7184 i: r, 7185 l: !1, 7186 exports: {} 7187 }; 7188 return e[r].call(c.exports, c, c.exports, o), c.l = !0, c.exports 7189 } 7190 o.m = e, o.c = t, o.d = function(e, t, r) { 7191 o.o(e, t) || Object.defineProperty(e, t, { 7192 enumerable: !0, 7193 get: r 7194 }) 7195 }, o.r = function(e) { 7196 "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { 7197 value: "Module" 7198 }), Object.defineProperty(e, "__esModule", { 7199 value: !0 7200 }) 7201 }, o.t = function(e, t) { 7202 if (1 & t && (e = o(e)), 8 & t) return e; 7203 if (4 & t && "object" == typeof e && e && e.__esModule) return e; 7204 var r = Object.create(null); 7205 if (o.r(r), Object.defineProperty(r, "default", { 7206 enumerable: !0, 7207 value: e 7208 }), 2 & t && "string" != typeof e) 7209 for (var c in e) o.d(r, c, function(t) { 7210 return e[t] 7211 }.bind(null, c)); 7212 return r 7213 }, o.n = function(e) { 7214 var t = e && e.__esModule ? function() { 7215 return e.default 7216 } : function() { 7217 return e 7218 }; 7219 return o.d(t, "a", t), t 7220 }, o.o = function(e, t) { 7221 return Object.prototype.hasOwnProperty.call(e, t) 7222 }, o.p = "", o(o.s = 0) 7223 }([function(e, t, o) { 7224 "use strict"; 7225 7226 function r(e) { 7227 e.ltsp = {}, 7228 function(e) { 7229 e.ltsp.quickView = function() { 7230 document.querySelectorAll(".quickview-button").forEach((function(e) { 7231 e.addEventListener("click", (function() { 7232 setTimeout((function() { 7233 let e = document.getElementById("add-to-cart-quickview-form"); 7234 if (e) { 7235 let t = e.querySelector(".groups-btn"); 7236 t && t.remove(); 7237 let o = e.querySelector(".pieces"); 7238 o && o.remove(); 7239 let r = e.querySelector(".bsscommerce-ltsp-message"); 7240 r && r.remove() 7241 } 7242 if (e = document.querySelector("[data-quickview-modal] .halo-modal-body"), e) { 7243 let t = e.querySelector(".quantity"); 7244 t && t.remove() 7245 } 7246 }), 1e3) 7247 })) 7248 })), document.querySelectorAll(".shop-now-button").forEach((function(e) { 7249 e.addEventListener("click", (function() { 7250 setTimeout((function() { 7251 let e = document.getElementById("ShopNowContainer"); 7252 if (e) { 7253 let t = e.querySelector("#AddToCart"); 7254 t && t.remove() 7255 } 7256 }), 2e3) 7257 })) 7258 })), document.querySelectorAll(".collection__filter").forEach((function(e) { 7259 e.addEventListener("click", (function() { 7260 setTimeout((function() { 7261 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7262 for (let t = 0; t < e.length; t++) { 7263 let o = e[t].closest(".product-grid-item"); 7264 if (o) { 7265 let e = o.querySelector(".btn--quick-view"); 7266 e && e.remove() 7267 } 7268 } 7269 }), 1500) 7270 })) 7271 }
7271)), document.querySelectorAll(".btn--icon.quick-product__btn").forEach((function(e) { 7272 e.addEventListener("click", (function() { 7273 setTimeout((function() { 7274 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7275 for (let t = 0; t < e.length; t++) { 7276 let o = e[t].closest(".product-grid__content"); 7277 if (o) { 7278 let e = o.querySelector(".payment-buttons"); 7279 e && e.remove() 7280 } 7281 } 7282 }), 2e3) 7283 })) 7284 })), document.querySelectorAll(".product-facet__aside").forEach((function(e) { 7285 e.addEventListener("click", (function() { 7286 setTimeout((function() { 7287 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7288 for (let t = 0; t < e.length; t++) { 7289 let o = e[t].closest(".product-item"); 7290 if (o) { 7291 let e = o.querySelector('form[action="/cart/add"]'); 7292 e && e.remove(); 7293 let t = o.querySelector(".product-item__quick-form"); 7294 t && t.remove() 7295 } 7296 } 7297 }), 1500) 7298 })) 7299 })), document.querySelectorAll(".pagination").forEach((function(e) { 7300 e.addEventListener("click", (function() { 7301 setTimeout((function() { 7302 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7303 for (let t = 0; t < e.length; t++) { 7304 let o = e[t].closest(".product-item"); 7305 if (o) { 7306 let e = o.querySelector('form[action="/cart/add"]'); 7307 e && e.remove(); 7308 let t = o.querySelector(".product-item__quick-form"); 7309 t && t.remove() 7310 } 7311 } 7312 }), 1800) 7313 })) 7314 })), document.querySelectorAll(".collection-filters__sort").forEach((function(e) { 7315 e.addEventListener("change", (function() { 7316 setTimeout((function() { 7317 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7318 for (let t = 0; t < e.length; t++) { 7319 let o = e[t].closest(".indiv-product"); 7320 if (o) { 7321 let e = o.querySelector('form[action="/cart/add"]'); 7322 e && e.remove() 7323 } 7324 } 7325 }), 1500) 7326 })) 7327 }
7327)), document.querySelectorAll(".slideout__drawer-right, .sidebar_leftside_wapper, .filtering__results").forEach((function(e) { 7328 e.addEventListener("click", (function() { 7329 setTimeout((function() { 7330 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7331 for (let t = 0; t < e.length; t++) { 7332 let o = e[t].closest(".product-index"); 7333 if (o) { 7334 let e = o.querySelector(".js-quickview-trigger"); 7335 e && e.remove() 7336 } 7337 } 7338 }), 1500) 7339 })) 7340 })), document.querySelectorAll("a.product-loop__quickview").forEach((function(e) { 7341 e.addEventListener("click", (function() { 7342 setTimeout((function() { 7343 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7344 for (let t = 0; t < e.length; t++) { 7345 let o = e[t].closest(".large--one-half"); 7346 if (o) { 7347 let e = o.querySelector(".quick-smart-wrapper"); 7348 e && e.remove(); 7349 let t = o.querySelector("#quantity-container"); 7350 t && t.remove(); 7351 let r = o.querySelector(".js-prod-show-soldout"); 7352 r && r.remove() 7353 } 7354 } 7355 }), 2e3) 7356 })) 7357 })), document.querySelectorAll(".quick-product__btn").forEach((function(e) { 7358 e.addEventListener("click", (function() { 7359 setTimeout((function() { 7360 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7361 for (let t = 0; t < e.length; t++) { 7362 let o = e[t].closest(".product-single__meta"); 7363 if (o) { 7364 let e = o.querySelector("div.payment-buttons"); 7365 e && e.remove() 7366 } 7367 } 7368 }), 1e3) 7369 })) 7370 })), document.querySelectorAll(".btn--load-more").forEach((function(e) { 7371 e.addEventListener("click", (function() { 7372 setTimeout((function() { 7373 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7374 for (let t = 0; t < e.length; t++) { 7375 let o = e[t].closest(".grid-view-item"); 7376 if (o) { 7377 let e = o.querySelector(".quick-add-button"); 7378 e && e.remove() 7379 } 7380 } 7381 }), 1e3) 7382 })) 7383 })), document.querySelectorAll(".quick_shop").forEach((function(e) { 7384 e.addEventListener("click", (function() { 7385 setTimeout((function() { 7386 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7387 for (let t = 0; t < e.length; t++) { 7388 let o = e[t].closest(".product_section"); 7389 if (o) { 7390 let e = o.querySelector(".product_form .shopify-product-form .purchase-details"), 7391 t = o.querySelector(".product__details .modal_price .price-ui"); 7392 e && e.remove(), t && t.remove() 7393 } 7394 } 7395 }), 1e3) 7396 })) 7397 })), document.querySelectorAll(".qs-button ").forEach((function(e) { 7398 e.addEventListener("click", (function() { 7399 setTimeout((function() { 7400 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7401 for (let t = 0; t < e.length; t++) { 7402 let o = e[t].closest(".product-info-main"); 7403 if (o) { 7404 let e = o.querySelector(".qty-box"); 7405 e && e.remove(); 7406 let t = o.querySelector(".btn.btn-cart"); 7407 t && t.remove(); 7408 let r = o.querySelector(".product-single__sale-price"); 7409 r && r.remove(); 7410 let c = o.querySelector(".product-addto-links"); 7411 c && c.remove() 7412 } 7413 } 7414 }), 1e3) 7415 })) 7416 })); 7417 let e = document.querySelector("a[data-js-cart-icon]"); 7418 if (e && e.addEventListener("click", (function() { 7419 let e = document.querySelector(".quick-cart__control"); 7420 e && e.remove(); 7421 let t = document.querySelector(".quick-cart__item-right"); 7422 t.childNodes[3] && (t.childNodes[3].innerHTML = "Login to seen price") 7423 })), document.querySelectorAll(".quick-add-button-variants").forEach((function(e) { 7424 e.addEventListener("click", (function() { 7425 setTimeout((function() { 7426 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7427 for (let t = 0; t < e.length; t++) { 7428 let o = e[t].closest("#AddToCartForm"); 7429 if (o) { 7430 let e = o.querySelector(".paymentButtonsWrapper"); 7431 e && e.remove() 7432 } 7433 } 7434 }), 1e3) 7435 })) 7436 })), document.querySelectorAll(".product-thumbnail__quickshop-button").forEach((function(e) { 7437 e.addEventListener("click", (function() { 7438 setTimeout((function() { 7439 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 7440 for (let t = 0; t < e.length; t++) { 7441 let o = e[t].closest(".product-details"); 7442 if (o) { 7443 let e = o.querySelectorAll(".bsscommerce-ltsp-message"); 7444 e.length > 1 && e.forEach((function(e, t) { 7445 t > 0 && e.remove() 7446 })); 7447 let t = o.querySelector(".product-form__cart-buttons"); 7448 t && t.remove(); 7449 let r = o.querySelector(".product-form__quantity-box-wrapper"); 7450 r && r.remove() 7451 } 7452 } 7453 }), 800) 7454 })) 7455 })), "b2b-dbodhi-singapore.myshopify.com" === window.Shopify.shop) { 7456 let e = 0; 7457 const t = window.location.pathname.includes("/collections"); 7458 let o = !0; 7459 const r = function() { 7460 const e = setInterval((function() { 7461 let e = document.querySelectorAll(".thb-product-detail.product .bsscommerce-ltsp-message"); 7462 for (let t = 0; t < e.length; t++) { 7463 let o = e[t], 7464 r = o.closest(".thb-product-detail.product"); 7465 if (r) { 7466 let e = r.querySelector(".product-form"); 7467 e && e.remove() 7468 } 7469 r = o.closest("del"), r && o.remove() 7470 } 7471 }), 500); 7472 setTimeout(() => { 7473 clearInterval(e) 7474 }, 6e3) 7475 }, 7476 c = function() { 7477 const c = window.pageYOffset || document.documentElement.scrollTop; 7478 (c > e || !t || o) && (document.querySelectorAll(".product-card-quickview").forEach((function(e) { 7479 e.removeEventListener("click", r), e.addEventListener("click", r) 7480 })), o = !1), e = c <= 0 ? 0 : c 7481 }; 7482 if (c(), t) { 7483 const e = function() { 7484 const e = c; 7485 let t; 7486 return () => { 7487 clearTimeout(t), t = setTimeout(() => { 7488 e.apply(this) 7489 }, 3e3) 7490 } 7491 }; 7492 window.addEventListener("scroll", e(
7492)) 7493 } 7494 } 7495 } 7496 }(e), 7497 function(e) { 7498 e.ltsp.removeElementByLTSPMessage = function() { 7499 let e = document.getElementsByClassName("bsscommerce-ltsp-message"), 7500 t = [], 7501 o = window.Shopify.shop; 7502 for (let r = 0; r < e.length; r++) { 7503 let c = e[r], 7504 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"]; 7505 if ("stark-hockey.myshopify.com" === o) { 7506 const e = c.closest(".product-index"); 7507 if (e) { 7508 const t = e.querySelector(".product-modal"); 7509 t && t.remove() 7510 } 7511 continue 7512 } 7513 let s = c.closest(".product-parent"); 7514 if (s) { 7515 let e = s.querySelector("form .tt-btn-addtocart"); 7516 e && t.push(e); 7517 let o = s.querySelector(".tt-btn-quickview"); 7518 o && t.push(o) 7519 } 7520 if (s = c.closest(".ProductItem"), s) { 7521 let e = s.querySelector(".quickshop-btn"); 7522 if (e && t.push(e), "shrimptoncouture-com.myshopify.com" === o) { 7523 let e = s.querySelector(".ProductItem__PriceList"); 7524 e && e.classList.remove("ProductItem__PriceList") 7525 } 7526 } 7527 if (s = c.closest(".product-item--vertical"), s) { 7528 if ("sparklinbluewholesale.myshopify.com" === o) { 7529 let e = s.querySelector(".product-item__info .product-item__price-list"); 7530 e && t.push(e) 7531 } 7532 let e = s.querySelector(".product-item__info .product-item__action-button"); 7533 e && t.push(e), e = s.querySelector(".product-form__payment-container"), e && t.push(e) 7534 } 7535 if (s = c.closest(".card-wrapper.underline-links-hover"), s && "friends-forever-pets.myshopify.com" === o) { 7536 let e = s.querySelector(".card__content .quick-add"); 7537 e && t.push(e); 7538 let o = s.querySelector(".card-information .price__sale .price-item.price-item--regular"); 7539 o && t.push(o) 7540 } 7541 if (s = c.closest(".modal_price"), s && window.Shopify && "casa-barba.myshopify.com" !== window.Shopify.shop && "prideandgroom-wholesale.myshopify.com" !== window.Shopify.shop) { 7542 let e = s.querySelector(".price-ui"); 7543 e && t.push(e) 7544 } 7545 if (s = c.closest(".info.has-padding-top"), s) { 7546 let e = s.querySelector(".compare-at-price"); 7547 e && t.push(e) 7548 } 7549 if (s = c.closest(".product-thumbnail__price.price"), s) { 7550 let e = s.querySelector(".money"); 7551 e && t.push(e) 7552 } 7553 if (s = c.closest(".search-result__description"), s) { 7554 let e = s.querySelector(".money"); 7555 e && t.push(e) 7556 } 7557 if (s = c.closest(".product__price"), s) { 7558 let e = s.querySelector("[data-product-price][bss-custom-ltsp-attribute]"); 7559 e && t.push(e) 7560 } 7561 if (s = c.closest("#template-product"), s) { 7562 let e = s.querySelector(".product-form.cart-bar__form"); 7563 e && t.push(e) 7564 } 7565 if ("showroom1-ducanero.myshopify.com" === o) { 7566 if (s = c.closest(".product-area") || c.closest(".price"), s) { 7567 let e = s.querySelector(".price-area") || s.querySelector(".theme-money"); 7568 e && t.push(e) 7569 } 7570 } else if (s = c.closest(".product-area__details"), s) { 7571 let e = s.querySelector(".product-detail__form__action"); 7572 e && t.push(e); 7573 let o = s.querySelector(".quantity-wrapper"); 7574 o && t.push(o) 7575 } 7576 if ("quincaillerie-euroline.myshopify.com" === o && (s = c.closest(".product-form__info-content"), s)) { 7577 let e = s.querySelector(".price-list"); 7578 e && t.push(e) 7579 } 7580 if (s = c.closest(".product-form__buttons"), s && t.push(s), s = c.closest(".product-wrap-2"), s) { 7581 let e = s.querySelector(".product-action-2"); 7582 e && t.push(e) 7583 } 7584 if (s = c.closest(".span6"), s) { 7585 let e = s.querySelector(".purchase>input"), 7586 o = s.querySelector(".price-container>#price-preview"), 7587 r = s.querySelector(".price-container>.vat-price"); 7588 e && t.push(e), o && t.push(o), r && t.push(r) 7589 } 7590 if (s = c.closest(".product__page"), s) { 7591 let e = s.querySelector(".quantity-selector"); 7592 e && t.push(e) 7593 } 7594 if (s = c.closest(".product_details_info"), s) { 7595 let e = s.querySelector(".pro-detail-button"), 7596 o = s.querySelector(".price-box"); 7597 e && t.push(e), o && t.push(o) 7598 } 7599 if (s = c.closest(".product-content"), s) { 7600 let e = s.querySelector(".product-action"); 7601 e && t.push(e) 7602 } 7603 if (s = c.closest(".product-view .single-product-wrap"), s) { 7604 let e = s.querySelector(".add-to-cart"); 7605 e && t.push(e) 7606 } 7607 if (s = c.closest(".collection-category .owl-stage .owl-item"), s) { 7608 let e = s.querySelector(".add-to-cart"); 7609 e && t.push(e) 7610 } 7611 if (s = c.closest(".product__details"), s) { 7612 let e = s.querySelector(".product-wrap .thumbnail-overlay .info .price "); 7613 e && t.push(e); 7614 let o = s.querySelector(".product-details .price .current_price .money "); 7615 o && t.push(o) 7616 } 7617 if (s = c.closest(".product_row"), s) { 7618 let e = s.querySelector(".three-fourths .info .price "); 7619 e && t.push(e) 7620 } 7621 if (s = c.closest(".thubnail-desc"), s) { 7622 let e = s.querySelector(".quatity-stock"); 7623 e && t.push(e); 7624 let o = s.querySelector(".Payment_button"); 7625 o && t.push(o) 7626 } 7627 if (s = c.closest(".single-ponno-product"), s) { 7628 let e = s.querySelector(".pro-actions-link"); 7629 e && t.push(e); 7630 let o = s.querySelector(".pro-add-cart"); 7631 o && t.push(o) 7632 } 7633 if (s = c.closest(".product-single__meta"), s) { 7634 let e = s.querySelector("div.product-form__controls-group.product-form__controls-group--submit"); 7635 e && e.setAttribute("style", "visibility:hidden") 7636 } 7637 if ("homewarerus.myshopify.com" != window.Shopify.shop && (s = c.closest(".product-item__info"), s)) { 7638 let e = s.querySelector("form.product-item__action-list.button-stack"); 7639 e && e.remove() 7640 } 7641 if ("bluebasketb2b.myshopify.com" === window.Shopify.shop) { 7642 if (s = c.closest(".card-information"), s) { 7643 let e = s.querySelector(".price__sale .price-item--sale.sale-percentage"); 7644 e && t.push(e) 7645 } 7646 if (s = c.closest("tr.cart-item[id*=Cart]"), s) { 7647 let e = s.querySelector(".cart-item__quantity"); 7648 e && e.remove(); 7649 let t = s.querySelector(".cart-item__totals"); 7650 t && t.remove() 7651 } 7652 } 7653 if (s = c.closest(".product-form"), s) { 7654 let e = s.querySelector(".quantity-submit-row__submit"); 7655 e && e.remove(); 7656 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"); 7657 o && t.push(o) 7658 } 7659 if (s = c.closest(".product-grid__detail"), s) { 7660 let e = s.querySelector(".product-form-block form"); 7661 e && e.remove() 7662 } 7663 if (s = c.closest(".tab-body"), s) { 7664 if (s.querySelector(".purchase-section button, .btn.add-to-cart")) { 7665 let e = setInterval((function() { 7666 let e = document.querySelector(".tab-body .purchase-section button, .tab-body .btn.add-to-cart"), 7667 t = document.querySelector(".swym-button-bar.swym-wishlist-button-bar"); 7668 e && e.remove(), t && t.remove() 7669 }), 200); 7670 setTimeout((function() { 7671 clearInterval(e) 7672 }), 1e4) 7673 } 7674 } 7675 if (s = c.closest(".item.relative.product-id.item-row"), s) { 7676 let e = s.querySelector(".quantity.form"); 7677 e && e.remove() 7678 } 7679 if (s = c.closest(".product-form"), s) { 7680 let e = s.querySelector(".buy-buttons-row"); 7681 e && t.push(e) 7682 } 7683 if (s = c.closest(".product-grid-item"), s) { 7684 let e = s.querySelector(".btn--quick-view"); 7685 e && t.push(e) 7686 } 7687 if (s = c.closest(".featured__collection-
7687product"), s) { 7688 let e = s.querySelector(".js-quickview-trigger"); 7689 e && t.push(e) 7690 } 7691 if (s = c.closest(".product-index"), s) { 7692 let e = s.querySelector(".js-quickview-trigger"); 7693 e && t.push(e) 7694 } 7695 if (s = c.closest(".product-bottom"), s) { 7696 let e = s.querySelector(".quantity-selector, .product-add"); 7697 e && t.push(e) 7698 } 7699 if (s = c.closest(".js-sticky-cart"), s) { 7700 let e = s.querySelector(".sticky-add"); 7701 e && t.push(e) 7702 } 7703 if (s = c.closest(".product-details"), s) { 7704 let e = s.querySelector(".shopify-payment-button"); 7705 e && t.push(e); 7706 let r = s.querySelector(".payment-and-quantity__add"); 7707 r && t.push(r); 7708 let c = s.querySelector(".price__compare-at.visible"); 7709 c && "coventa-demo.myshopify.com" === o && t.push(c) 7710 } 7711 if (s = c.closest(".product-block__inner"), s) { 7712 let e = s.querySelector(".quick-buy"); 7713 e && t.push(e) 7714 } 7715 if (s = c.closest(".content-summary"), s) { 7716 let e = s.querySelector("form.cart"); 7717 e && t.push(e) 7718 } 7719 if (s = c.closest('div[data-pf-type="Section"]'), s) { 7720 let e = s.querySelector('div[data-pf-type="ProductQuantity"]'); 7721 e && t.push(e); 7722 let o = s.querySelector('button[data-pf-type="ProductATC"]'); 7723 o && t.push(o) 7724 } 7725 if (s = c.closest(".pc-inner"), s) { 7726 let e = s.querySelector('form[action="/cart/add"]'); 7727 e && t.push(e); 7728 let o = s.querySelector(".quick_shop"); 7729 o && t.push(o) 7730 } 7731 if (s = c.closest(".product-info-inner"), s) { 7732 let e = s.querySelector('form[action="/cart/add"]'); 7733 e && t.push(e) 7734 } 7735 if (s = c.closest(".product-details-inline"), s) { 7736 let e = s.querySelector(".product-quantity"); 7737 e && t.push(e) 7738 } 7739 if (s = c.closest(".product-card"), s) { 7740 let e = s.querySelector(".js-grid-cart"); 7741 e && t.push(e); 7742 let o = s.querySelector(".card-header .card-button-hover"); 7743 o && t.push(o); 7744 let r = s.querySelector(".product-card__quick-buy"); 7745 r && t.push(r); 7746 let c = s.querySelector("compare-at-price"); 7747 c && t.push(c); 7748 let l = s.querySelector(".product-card__badge-list"); 7749 l && t.push(l) 7750 } 7751 if (s = c.closest(".product__info"), s) { 7752 let e = s.querySelector(".product-form__buy-buttons button"); 7753 e && t.push(e); 7754 let o = s.querySelector(".product-form__quantity"); 7755 o && t.push(o) 7756 } 7757 if (s = c.closest(".product-sticky-form__inner"), s) { 7758 let e = s.querySelector(".product-sticky-form__payment-container"); 7759 e && t.push(e) 7760 } 7761 if ("homewarerus.myshopify.com" != window.Shopify.shop && (s = c.closest(".product-item"), s)) { 7762 let e = s.querySelector('form[action="/cart/add"]'); 7763 e && t.push(e); 7764 let o = s.querySelector(".product-item__quick-form"); 7765 o && t.push(o) 7766 } 7767 if (s = c.closest(".shopify-product-form"), s) { 7768 let e = s.querySelector("div.quantity"); 7769 e && t.push(e) 7770 } 7771 if (s = c.closest(".product-body"), s) { 7772 let e = s.querySelector(".product-cta-wrapper"); 7773 e && t.push(e) 7774 } 7775 if (s = c.closest(".tt-product-single-info"), s) { 7776 let e = s.querySelector("form .btn-addtocart"); 7777 e && t.push(e); 7778 let o = s.querySelector('form[action*="/cart/add"]'); 7779 o && t.push(o) 7780 } 7781 if (s = c.closest(".product-details-wrapper"), s) { 7782 let e = s.querySelector(".product-form"); 7783 e && t.push(e) 7784 } 7785 if (s = c.closest(".product-inner"), s) { 7786 let e = s.querySelector(".product-card-interactions"); 7787 e && t.push(e) 7788 } 7789 if (s = c.closest(".product-single__meta"), s) { 7790 let e = s.querySelector(".add-to-cart"); 7791 if (e) 7792 if (window.Shopify && "bundlecomph.myshopify.com" === window.Shopify.shop) { 7793 e.disabled = !0; 7794 let o = s.querySelector(".payment-buttons"), 7795 r = s.querySelector(".shopify-payment-button"); 7796 o && o.classList.remove("payment-buttons"), r && t.push(r) 7797 } else t.push(e) 7798 } 7799 if (s = c.closest(".grid-view-item"), s) { 7800 let e = s.querySelector(".thumbnail-buttons"); 7801 e && t.push(e) 7802 } 7803 if (s = c.closest(".product-single__meta"), s) { 7804 let e = s.querySelector(".product-form:not(.product-form-product--static):not(.product-form-product-template)"); 7805 e && t.push(e) 7806 } 7807 if (s = c.closest(".pf-product-form"), s) { 7808 let e = s.querySelector(".sc-lkgURy"); 7809 e && t.push(e); 7810 let o = s.querySelector(".sc-gzcbmu"); 7811 o && t.push(o); 7812 let r = s.querySelector(".add-to-cart"); 7813 r && t.push(r) 7814 } 7815 if (s = c.closest(".large--one-half"), s) { 7816 let e = s.querySelector(".product-smart-wrapper"); 7817 e && t.push(e); 7818 let o = s.querySelector('div.btn[onmouseup="showProductsDesigner(this)"]'); 7819 o && t.push(o); 7820 let r = s.querySelector("button.js-prod-show-soldout"); 7821 r && t.push(r) 7822 } 7823 if (s = c.closest("#add-to-cart-form"), s) 7824 if ("led-signcity.myshopify.com" === o) { 7825 let e = s.querySelector(".atc-btn"); 7826 e && t.push(e); 7827 let o = s.querySelector(".price"); 7828 o && o.classList.remove("price") 7829 } else { 7830 let e = s.querySelector(".groups-btn"); 7831 e && t.push(e), t.push(c) 7832 }
7832 if (s = c.closest(".product-shop"), s && "led-signcity.myshopify.com" !== o) { 7833 let e = s.querySelector(".groups-btn"); 7834 e && t.push(e) 7835 } 7836 if (s = c.closest(".who-qof-table"), s && s.classList.add("bsscommerce-hide-price"), s = c.closest(".price-sale"), s) { 7837 let e = s.querySelector(".old-price"); 7838 e && t.push(e); 7839 let o = s.querySelector("em"); 7840 o && (o.innerHTML = "") 7841 } 7842 if (s = c.closest(".product-details"), s) { 7843 let e = s.querySelector(".action"); 7844 e && t.push(e) 7845 } 7846 if (s = c.closest(".product_section"), s) { 7847 let e = s.querySelector("form .add_to_cart, form .b2b-ajax-submit"); 7848 e && t.push(e); 7849 let o = s.querySelector(".sale.savings"); 7850 o && t.push(o); 7851 let r = s.querySelector(".purchase-details button.button--add-to-cart"); 7852 r && t.push(r); 7853 let c = s.querySelector(".purchase-details .purchase-details__quantity.product-quantity-box"); 7854 c && t.push(c); 7855 let l = s.querySelector(".product__details .modal_price .price-ui"); 7856 l && t.push(l) 7857 } 7858 if (s = c.closest(".quick-shop-style--inline"), s) { 7859 let e = s.querySelector("form .add_to_cart, form .b2b-ajax-submit"); 7860 e && t.push(e) 7861 } 7862 if (s = c.closest(".product-details"), s) { 7863 let e = s.querySelector("small em"); 7864 e && t.push(e) 7865 } 7866 if (s = c.closest(".gt_product-body"), s) { 7867 let e = s.querySelector("form .gt_product-addtocart"); 7868 e && t.push(e); 7869 let o = s.querySelector(".gt_product-saved"); 7870 o && t.push(o); 7871 let r = s.querySelector(".gt_product-price--compare"); 7872 r && t.push(r) 7873 } 7874 if (s = c.closest(".gt_product_content"), s) { 7875 let e = s.querySelector("form .gt_product-addtocart"); 7876 e && t.push(e); 7877 let o = s.querySelector(".gt_product-price--compare"); 7878 o && t.push(o) 7879 } 7880 if (s = c.closest(".gt-single-product"), s) { 7881 let e = s.querySelector("div.gt_method_addToCart"); 7882 e && t.push(e); 7883 let o = s.querySelector(".gt_product-price--compare"); 7884 o && t.push(o) 7885 } 7886 if (s = c.closest("#cont-form"), s) { 7887 let e = s.querySelector("form .cont-add-btns"); 7888 e && t.push(e) 7889 } 7890 if (s = c.closest(".theiaStickySidebar"), s) { 7891 let e = s.querySelector(".variations_button"); 7892 e && t.push(e) 7893 } 7894 if (s = c.closest(".product--price-wrapper"), s) { 7895 let e = s.querySelector(".product--compare-price"); 7896 e && t.push(e) 7897 } 7898 if (s = c.closest(".product-submit"), s) { 7899 let e = s.querySelector(".payment-buttons-container"); 7900 e && t.push(e) 7901 } 7902 if (s = c.closest(".product-price"), s) { 7903 let e = s.querySelector(".product-price-compare"); 7904 e && t.push(e) 7905 } 7906 if (s = c.closest(".product-list-item"), s) { 7907 let e = s.querySelector(".original"), 7908 o = s.querySelector(".product-list-item-badge"); 7909 e && t.push(e), o && t.push(o) 7910 } 7911 if (s = c.closest(".productitem"), s) { 7912 let e = s.querySelector(".productitem--action"); 7913 e && t.push(e); 7914 let o = s.querySelectorAll(".bss-ltsp-to-remove"); 7915 if (o.length) 7916 for (let e of o) t.push(e) 7917 } 7918 if (s = c.closest(".product--outer"), s) { 7919 let e = s.querySelector(".product-form--atc"); 7920 e && t.push(e), e = s.querySelector(".shopify-payment-button"), e && t.push(e) 7921 } 7922 if (s = c.closest(".Container"), s) 7923 if (window.Shopify && "mama-shawna.myshopify.com" === window.Shopify.shop) { 7924 let e = s.querySelector("form.ProductForm"); 7925 if (window.__st && e) { 7926 __st.cid && t.push(e) 7927 } 7928 } else { 7929 let e = s.querySelector(".ProductForm__BuyButtons"); 7930 e && t.push(e) 7931 } if (s = c.closest(".product-grouped"), s) { 7932 let e = s.querySelector(".product_top form#add-to-cart-form"); 7933 e && t.push(e) 7934 } 7935 if (s = c.closest(".product-item"), s) { 7936 let e = s.querySelector(".product-top .product-des .action"), 7937 o = s.querySelector(".slideup"); 7938 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) { 7939 let e = s.querySelector(".product-item-price .money"); 7940 e && e.classList.remove("money") 7941 } 7942 } 7943 if (s = c.closest(".modal_price"), s) { 7944 let e = s.querySelector(".was_price"); 7945 e && t.push(e) 7946 } 7947 if (s = c.closest(".info"), s) { 7948 let e = s.querySelector(".was_price"); 7949 e && t.push(e) 7950 } 7951 if (s = c.closest(".product-item"), s) { 7952 let e = s.querySelector('.product-item__action-button[data-action="add-to-cart"]'); 7953 e && t.push(e) 7954 } 7955 if (s = c.closest(".grid__item.grid-product"), s) { 7956 let e = s.querySelector('form[action="/cart/add"] input[type="submit"]'); 7957 e && t.push(e); 7958 let r = s.querySelector(".grid-product__tag"); 7959 r && t.push(r); 7960 let c = s.querySelector(".visually-hidden"); 7961 c && t.push(c); 7962 let l = s.querySelector(".quick-product__btn"); 7963 l && "comphycompany.myshopify.com" === o && t.push(l) 7964 } 7965 if (s = c.closest(".product-info"), s) { 7966 let e = s.querySelector('form[action="/cart/add"] .payment-buttons'); 7967 e && t.push(e); 7968 let o = s.querySelector(".variant-wrapper.variant-wrapper--button"); 7969 o && t.push(o); 7970 let r = s.querySelector(".form .product-actions .product-actions-add-to-cart"); 7971 r && t.push(r); 7972 let c = s.querySelector(".product-price__compare"); 7973 c && t.push(c), c = s.querySelector("compare-at-price"), c && t.push(c); 7974 let l = s.querySelector("unit-price"); 7975 l && t.push(l), e = s.querySelector(".buy-buttons"), e && t.push(e); 7976 let u = s.querySelector(".product-info__badge-list"); 7977 u && t.push(u) 7978 } 7979 if (s = c.closest(".price"), s) { 7980 if (s.textContent.includes("From")) { 7981 let e = s.innerHTML; 7982 s.innerHTML = e.replace("From", "") 7983 } 7984 } 7985 if (s = c.closest("#product-right"), s) { 7986 let e = s.querySelector(".was"); 7987 e && t.push(e); 7988 let o = s.querySelector(".product-add"); 7989 o && t.push(o) 7990 } 7991 if (s = c.closest(".was"), s && t.push(s), s = c.closest(".product-single__meta"), s) { 7992 let e = s.querySelector(".pf__actions"); 7993 e && t.push(e); 7994 let o = s.querySelector("div.product-form__controls-group.product-form__controls-group--submit"); 7995 o && o.setAttribute("style", "visibility:hidden") 7996 } 7997 if (s = c.closest(".product-item"), s) { 7998 let e = s.querySelector(".product-item__add"); 7999 e && t.push(e) 8000 } 8001 if (s = c.closest(".grid-item"), s) { 8002 let e = s.querySelector("#addToCart-product-template"); 8003 e && t.push(e); 8004 let o = s.querySelector(".payment-buttons"); 8005 o && t.push(o) 8006 } 8007 if (s = c.closest(".product-single__meta"), s) { 8008 let e = s.querySelector("div.payment-buttons"); 8009 e && e.remove() 8010 } 8011 if (s = c.closest(".modal--root"), s) { 8012 let e = s.querySelector(".product-form--button-container"); 8013 e && t.push(e) 8014 } 8015 if (s = c.closest(".product-item__info"), s) { 8016 let e = s.querySelector("a.product-item__action-button.button.button--small.button--primary"); 8017 e && t.push(e) 8018 } 8019 if (s = c.closest(".product-form__info-list"), s) { 8020 let e = s.querySelector("div.product-form__info-item.product-form__info-item--quantity"); 8021 e && t.push(e) 8022 } 8023 if (s = c.closest(".large--three-fifths"), s) { 8024 let e = s.querySelector(".multivariants_setbox_footer"); 8025 e && t.push(e) 8026 } 8027 if (s = c.closest(".product-info-main"), s) { 8028 let e = s.querySelector(".qty-box"); 8029 e && t.push(e); 8030 let o = s.querySelector(".btn.btn-cart"); 8031 o && t.push(o); 8032 let r = s.querySelector(".shopify-payment-button"); 8033 r && t.push(r) 8034 } 8035 if (s = c.closest(".product-miniature"), s) { 8036 let e = s.querySelector(".qty-box"); 8037 e && t.push(e); 8038 let o = s.querySelector(".product.actions.product-item-actions"); 8039 o && t.push(o) 8040 } 8041 if (s = c.closest("#AddToCartForm"), s) { 8042 let e = s.querySelector(".paymentButtonsWrapper"); 8043 e && t.push(e) 8044 } 8045 if (s) { 8046 let e = s.querySelector("#product-add"); 8047 e && e.remove() 8048 } 8049 if (s) { 8050 let e = s.querySelector("#product-price>.product-price"); 8051 e && e.remove() 8052 } 8053 if (s = c.closest(".grid-view-item"), s) { 8054 let e = s.querySelector(".quick-add-button"); 8055 e && t.push(e) 8056 } 8057 if ("tinalykkegaard.myshopify.com" === o) { 8058 if (s = c.closest(".main-product__details>.main-product__details-wrapper"), s) { 8059 let e = s.querySelector(".main-product__actions .main-product__form-buttons"); 8060 e && e.remove() 8061 } 8062 if (s = c.closest(".product-grid .product-card"), s) { 8063 let e = s.querySelector('form[action="/cart/add"]'); 8064 e && e.remove() 8065 } 8066 } 8067 if (s = c.closest(".product-item-caption"), s) { 8068 let e = s.querySelector(".product-form__item--submit"); 8069 e && t.push(e) 8070 } 8071 if (s = c.closest(".product-item-caption"), s) { 8072 let e = s.querySelector(".product-form__item--quantity"); 8073 e && t.push(e) 8074 } 8075 if (s = c.closest(".productgrid--item"), s) { 8076 let e = s.querySelector(".productitem--actions"); 8077 e && t.push(e) 8078 } 8079 if (s = c.closest(".product-single__info-wrapper"), s) { 8080 let e = s.querySelector(".product-form__quantity-submit"); 8081 e && t.push(e); 8082 let o = s.querySelector(".shopify-payment-button"); 8083 o && t.push(o) 8084
8084 } 8085 if (s = c.closest(".qv-content"), s) { 8086 let e = s.querySelector(".qv-add-button"); 8087 e && t.push(e); 8088 let o = s.querySelector(".qv-quantity"); 8089 o && t.push(o) 8090 } 8091 if (s = c.closest(".product-card"), s) { 8092 let e = s.querySelector(".btn-grid-cart"); 8093 e && t.push(e) 8094 } 8095 if (s = c.closest(".product_single_detail_section"), s) { 8096 let e = s.querySelector("#AddToCart"); 8097 e && t.push(e); 8098 let o = s.querySelector(".shopify-payment-button__button"); 8099 o && t.push(o); 8100 let r = s.querySelector(".quantity-label"); 8101 r && t.push(r); 8102 let c = s.querySelector(".quantity_width"); 8103 c && t.push(c) 8104 } 8105 if (s = c.closest(".product-single__meta"), s) { 8106 let e = s.querySelector("#AddToCart--product-template"); 8107 e && t.push(e); 8108 let o = s.querySelector(".shopify-payment-button"); 8109 o && t.push(o) 8110 } 8111 if (s = c.closest('form[action="/cart/add"]'), s) { 8112 let e = s.querySelector(".product-page-info__field"); 8113 e && t.push(e); 8114 let o = s.querySelector(".product-page-info__button-add-to-cart"); 8115 o && t.push(o); 8116 let r = s.querySelector(".js-store-lists-add-wishlist"); 8117 r && t.push(r); 8118 let c = s.querySelector(".product-collection__control"); 8119 c && t.push(c) 8120 } 8121 if (s = c.closest(".grid-item__content"), s) { 8122 let e = s.querySelector(".quick-add-btn"); 8123 if (e && t.push(e), window.Shopify && "sparklinbluewholesale.myshopify.com" === window.Shopify.shop) { 8124 let e = s.querySelector(".grid-product__price--original"), 8125 o = s.querySelector(".grid-product__price--savings"), 8126 r = s.querySelector(".quick-product__btn"); 8127 e && t.push(e), o && t.push(o), r && t.push(r) 8128 } 8129 } 8130 if (s = c.closest(".purchase-box"), s) { 8131 let e = s.querySelector("#AddToCart-product-template"); 8132 e && e.remove(); 8133 let t = s.querySelector(".quantity-product-template"); 8134 t && t.remove() 8135 } 8136 if (s = c.closest(".item-row"), s) { 8137 let e = s.querySelector(".add-to-cart"); 8138 e && t.push(e) 8139 } 8140 if (s = c.closest(".product-thumbnail__price"), s) { 8141 let e = s.querySelectorAll(".bsscommerce-ltsp-message"); 8142 e.length > 1 && e.forEach((function(e, o) { 8143 o > 0 && t.push(e) 8144 })) 8145 } 8146 if (s = c.closest(".product-details"), s) { 8147 let e = s.querySelector(".product__add-to-cart-button"); 8148 e && t.push(e); 8149 let r = s.querySelector(".product-form__quantity-box-wrapper"); 8150 if (r && t.push(r), "sitchish.myshopify.com" === o) { 8151 let e = s.querySelector("#product-price"); 8152 e && (e.id = ""); 8153 let o = s.querySelector("[data-product-price]"); 8154 o && o.removeAttribute("data-product-price"); 8155 let r = s.querySelector(".form-actions"); 8156 r && t.push(r) 8157 } 8158 let c = s.querySelector(".product-quantity"); 8159 if (c && t.push(c), "lavabis-hygiene.myshopify.com" === o) { 8160 let e = s.querySelector(".price-preview.price"); 8161 e && (e.id = "") 8162 } 8163 } 8164 if (s = c.closest(".product-details"), s) { 8165 let e = s.querySelector("#add-to-cart-product-template"); 8166 e && t.push(e); 8167 let o = s.querySelector(".shopify-payment-button__button"); 8168 o && o.remove(); 8169 let r = s.querySelector(".quantity"); 8170 r && t.push(r) 8171 } 8172 if (s = c.closest(".gryffeditor"), s) { 8173 let e = s.querySelector(".gf_product-quantity"); 8174 e && e.parentElement.remove() 8175 } 8176 if (s = c.closest("#ProductSection-product-template"), s) {
8177 let e = s.querySelector(".cbb-frequently-bought-add-button"); 8178 e && e.remove(); 8179 let t = s.querySelector(".cbb-frequently-bought-form"); 8180 t && t.remove() 8181 } 8182 if (s = c.closest(".product__info-wrapper"), s) { 8183 let e = s.querySelector(".product-form__quantity"); 8184 e && e.remove(); 8185 let t = s.querySelector(".product-form__buttons"); 8186 t && t.remove() 8187 } 8188 if (s = c.closest(".product-form"), s) { 8189 let e = s.querySelector(".product-form__payment-container"); 8190 e && e.remove(); 8191 let o = s.querySelector("#price"); 8192 if (o && o.classList.remove("product-price"), window.Shopify && "wilkens-gmbh.myshopify.com" === window.Shopify.shop) { 8193 let e = s.querySelector(".unit-price"); 8194 e && t.push(e) 8195 } 8196 } 8197 if (s = c.closest(".product-details"), s) { 8198 let e = s.querySelector(".button-common"); 8199 e && e.remove() 8200 } 8201 if (s = c.closest(".caption"), s) { 8202 let e = s.querySelector(".button.btn-cart"); 8203 e && t.push(e) 8204 } 8205 if (s = c.closest(".product-info-main"), s) { 8206 let e = s.querySelectorAll(".form-group")[1]; 8207 e && t.push(e); 8208 let o = s.querySelector(".price"); 8209 o && (o.id = "") 8210 } 8211 if (s = c.closest(".form_buy_sticky"), s) { 8212 let e = s.querySelector(".form-group .btn.button.button-cart"); 8213 e && t.push(e); 8214 let o = s.querySelector(".form-group input#Quantity"); 8215 o && t.push(o) 8216 } 8217 if (s = c.closest(".product-template__container"), s) { 8218 let e = s.querySelector(".store-availability-container"); 8219 e && e.remove() 8220 } 8221 if (s = c.closest(".product-form--container"), s) { 8222 let e = s.querySelector(".product-form--options"); 8223 e && t.push(e); 8224 let o = s.querySelector(".product-form--smart-payment-buttons"); 8225 o && t.push(o) 8226 } 8227 if (s = c.closest(".product--price-wrapper"), s) { 8228 let e = s.querySelector('.product--from[data-item="accent-text"]'); 8229 e && t.push(e) 8230 } 8231 if (s = c.closest("#zpproductselectorfull1-wrapper"), s) { 8232 let e = s.querySelector(".zpa-button-alignment-center"); 8233 e && t.push(e); 8234 let o = s.querySelector(".zpa-quantity-block"); 8235 o && t.push(o) 8236 } 8237 if (s = c.closest(".zpa-multi-product-buy-box"), s) { 8238 let e = s.querySelector(".zpa-button-alignment-center"); 8239 e && t.push(e) 8240 } 8241 if (s = c.closest(".product-block__inner"), s) { 8242 let e = s.querySelector('form[action="/cart/add"].product-form.product-form--mini'); 8243 if (e && t.push(e), window.Shopify && "wilkens-gmbh.myshopify.com" === window.Shopify.shop) { 8244 let e = s.querySelector(".unit-price"); 8245 e && t.push(e) 8246 } 8247 } 8248 if (s = c.closest(".was-price.theme-money"), s && t.push(s), s = c.closest(".box_product_page"), s) { 8249 let e = s.querySelector(".product-options-bottom"); 8250 e && t.push(e) 8251 } 8252 if (s = c.closest(".product-default"), s) { 8253 let e = s.querySelector(".add-links.clearfix"); 8254 e && t.push(e) 8255 } 8256 if (s = c.closest(".grid__item.medium-up--three-eighths"), s) { 8257 let e = s.querySelector('form[action="/cart/add"].shopify-product-form'); 8258 e && t.push(e) 8259 } 8260 if (s = c.closest(".indiv-product"), s) { 8261 let e = s.querySelector('form[action="/cart/add"]'); 8262 e && t.push(e) 8263 } 8264 if (s = c.closest('form.product-form[action="/cart/add"]'), s) { 8265 let e = s.querySelector(".sf__pcard-image .sf__pcard-quick-add"); 8266 e && t.push(e); 8267 let o = s.querySelector(".main-product__block-buy_buttons"); 8268 o && t.push(o) 8269 } 8270 if (s = c.closest(".product-grid-item.woodmart-hover-base"), s) { 8271 let e = s.querySelector(".fade-in-block"); 8272 e && t.push(e); 8273 let o = s.querySelector(".product-compare-button"); 8274 o && t.push(o) 8275 } 8276 if (s = c.closest(".grid__item"), s) { 8277 if ("www-bonmatch-com.myshopify.com" === o) { 8278 let e = s.querySelector(".selector-wrapper.bcpo-file"), 8279 o = s.querySelector(".uploadkit.uploadkit-injected"), 8280 r = s.querySelector(".uploadkit-form"); 8281 e && t.push(e), o && r && r.appendChild(o) 8282 } 8283 let e = s.querySelector(".product__submit__buttons"); 8284 e && t.push(e); 8285 let r = s.querySelector(".products > .product-detail > .product-button"), 8286 c = s.querySelector(".products > .product-container > .product-button > .quick-view-text"); 8287 r && t.push(r), c && t.push(c); 8288 let l = s.querySelector("button#AddToCart"), 8289 u = s.querySelector('[data-shopify="payment-button"].shopify-payment-button'); 8290 if (l && t.push(l), u && t.push(u), "tienda-suca-bikes.myshopify.com" === o) { 8291 let e = s.querySelector(".product__unit-price.product__unit-price--spacing"), 8292 t = s.querySelector(".c_p-quantity-input-parent"), 8293 o = s.querySelector(".masIva"), 8294 r = s.querySelector(".c_col-sw-btn"); 8295 e && e.classList.remove("hide"), t && t.remove(), o && o.remove(), r && r.remove() 8296 } 8297 if ("youchique-4183.myshopify.com" === o) { 8298 let e = s.querySelector(".card-information__button"); 8299 e && t.push(e); 8300 let o = s.querySelector(".swym-wishlist-button-bar"); 8301 o && t.push(o) 8302 } 8303 if ("stelladetailsb2b.myshopify.com" === o) { 8304 let e = s.querySelector(".bss-b2b-product-vat"); 8305 e && t.push(e); 8306 let o = s.querySelector("#bss-b2b-tax-inc-excl"); 8307 o && t.push(o); 8308 let r = s.querySelector(".bss-b2b-collection-item-vat"); 8309 r && t.push(r); 8310 let c = s.querySelector(".price__regular"); 8311 if (c) { 8312 c.classList.remove("price__regular"); 8313 let e = s.querySelector(".price-item--regular"); 8314 e && e.classList.remove("price-item--regular") 8315 } 8316 let l = s.querySelector(".price__sale"); 8317 l && t.push(l) 8318 } 8319 let i = s.querySelector("quick-view-drawer"); 8320 i && t.push(i); 8321 let p = s.querySelector("add-to-cart"); 8322 p && t.push(p) 8323 } 8324 if (s = c.closest(".shop-the-look__product-info"), s) { 8325 let e = s.querySelector('form[action="/cart/add"]'); 8326 e && t.push(e) 8327 } 8328 if (s = c.closest(".popover.popover--quick-buy"), s) { 8329 let e = s.querySelector(".product-form__buy-buttons"); 8330 e && t.push(e) 8331 } 8332 if (s = c.closest(".product__section.product-template .product__section-content .product__section-detail
8332s"), s) { 8333 let e = s.querySelector('form[action="/cart/add"] input#addToCart'); 8334 e && t.push(e) 8335 } 8336 if (s = c.closest(".product-item__info-inner"), s) { 8337 let e = s.querySelector(".unit-price-measurement"); 8338 e && t.push(e) 8339 } 8340 if (s = c.closest(".product-form__info-item"), s) { 8341 let e = s.querySelector(".unit-price-measurement"); 8342 e && t.push(e) 8343 } 8344 if (s = c.closest("div[data-product-blocks]"), s) { 8345 let e = s.querySelector(".payment-buttons"); 8346 e && t.push(e); 8347 let o = s.querySelector(".spt-wishlist-button__wrapper"); 8348 o && t.push(o) 8349 } 8350 if (s = c.closest(".sf__pcard-content.text-center"), s) { 8351 let e = s.querySelector("button.add-to-cart.sf__btn"); 8352 e && t.push(e) 8353 } 8354 if (s = c.closest(".product-details.section"), s) { 8355 let e = s.querySelector('form#AddToCartForm.product-content-inner[action="/cart/add"]'); 8356 e && t.push(e) 8357 } 8358 if (s = c.closest(".search-item .product-item, .product-grid-row .product-item"), s) { 8359 let e = s.querySelector(".product-img .action-btn"); 8360 e && t.push(e) 8361 } 8362 if (s = c.closest(".product-collection__content,.product-page-info"), s) { 8363 let e = s.querySelector(".js-product-button-add-to-cart"); 8364 e && t.push(e) 8365 } 8366 if (s = c.closest(".details-info"), s) { 8367 let e = s.querySelector(".group-button .add-to-cart"); 8368 e && t.push(e) 8369 } 8370 if (s = c.closest(".product-collection"), s) { 8371 let e = s.querySelector(".group-button .add-to-cart"); 8372 e && t.push(e) 8373 } 8374 let u = c.closest("[data-js-product-price]"); 8375 if (u && u.setAttribute("bss-ltsp-active", ""), s = c.closest(".product__info-container"), s) { 8376 let e = s.querySelector('.form[data-type="add-to-cart-form"] > .shopify-payment-button[data-shopify="payment-button"]'); 8377 e && t.push(e) 8378 } 8379 if (s = c.closest(".products"), s) { 8380 let e = s.querySelector(".product-container > .product-button > .variants > .add-cart-btn"), 8381 o = s.querySelector(".product-container > .product-button > .quick-view-text"); 8382 e && t.push(e), o && t.push(o) 8383 } 8384 if (s = c.closest(".dt-sc-tabs-container"), s) { 8385 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"); 8386 e && t.push(e) 8387 } 8388 if (s = c.closest(".wrapper-container"), s) { 8389 let e = s.querySelector(".recently-viewed-products > .products-grid > .grid__item > .product-item > .products > .product-bottom > .price-box > .regular-product > .special-price"), 8390 o = s.querySelector(".recently-viewed-products > .products-grid > .grid__item > .product-item > .products > .product-bottom > .action > .variants > .add-to-cart-btn"); 8391 e && t.push(e), o && t.push(o) 8392 } 8393 if (s = c.closest(".featured__collection-
8393product.product-index"), s) { 8394 let e = s.querySelector(".product_listing_options"); 8395 e && t.push(e) 8396 } 8397 if (s = c.closest(".product-index"), s) { 8398 let e = s.querySelector(".product_listing_options"); 8399 e && t.push(e) 8400 } 8401 if (s = c.closest(".product__section-details"), s) { 8402 let e = s.querySelector(".product__section-details__inner--product_buttons"); 8403 e && t.push(e) 8404 } 8405 if (s = c.closest(".product-page--cart-form-block"), s) { 8406 let e = s.querySelector(".add-to-cart"); 8407 e && t.push(e) 8408 } 8409 if (s = c.closest(".price__sale"), s) { 8410 let e = s.querySelector(".price-item--regular"); 8411 e && t.push(e) 8412 } 8413 if (s = c.closest(".product-item-v1"), s) { 8414 let e = s.querySelector(".price-old"), 8415 o = s.querySelector(".product-icon-action"); 8416 e && t.push(e), o && t.push(o) 8417 } 8418 if (s = c.closest(".detail-info > .relative"), s) { 8419 let e = s.querySelector("#AddToCartForm > .btn-action"), 8420 o = s.querySelector('div.shopify-payment-button[data-shopify="payment-button"]'), 8421 r = s.querySelector(".product-price > del"); 8422 e && t.push(e), o && t.push(o), r && t.push(r) 8423 } 8424 if (s = c.closest(".product-details"), s) { 8425 let e = s.querySelector(".product-block--form>.product-form--regular"); 8426 e && "eurosafetysystems.myshopify.com" !== o && e.remove(); 8427 let t = s.querySelector(".button-cart"); 8428 t && t.remove() 8429 } 8430 if ("annabellenoeldesigns-com.myshopify.com" == o && (s = c.closest(".product-block-list__item .card__section"), s)) { 8431 let e = s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE .multivariants_block_qty_box"); 8432 e && e.remove(); 8433 let t = s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE .multivariants_block_last_holder .multivariants_block_prc_holder"); 8434 t && t.remove(); 8435 let o = s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE #multivariants_add_to_cart_button_h"); 8436 o && o.remove(); 8437 let r = s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE #multivariants_block_subtotal_h"); 8438 r && r.remove() 8439 } 8440 if ("fedua-b2b.myshopify.com" == o) { 8441 if (s = c.closest(".gp-product-detail .container"), s) { 8442 let e = s.querySelector(".gp-product-main-button button[type='submit']"); 8443 e && e.remove(); 8444 let t = s.querySelector(".cbb-also-bought-add-to-cart-button"); 8445 t && t.remove(); 8446 let o = s.querySelector(".cbb-also-bought-product-price-container"); 8447 o && o.remove() 8448 } 8449 if (s = c.closest(".gp-product-widget .product-card-grid"), s) { 8450 let e = s.querySelector(".product-buttons .btn-quick-view "); 8451 e && e.remove() 8452 } 8453 } 8454 if (s = c.closest(".product--price-container"), s) { 8455 let e = s.querySelectorAll(".product--price-wrapper > a"); 8456 e.length && e.forEach(e => e.remove()) 8457 } 8458 if ("linis-bites-b2b.myshopify.com" == window.location.host && c.querySelector("[bss-cu
8458stomize-ltsp-message]")) { 8459 let e = c.closest(".price .price__container"); 8460 if (e) { 8461 let o = e.querySelector(".unit-price.caption"); 8462 o && t.push(o) 8463 } 8464 } 8465 if (s = c.closest(".product-price--wrapper"), s) { 8466 let e = s.querySelector(".product-price--compare"); 8467 e && e.remove() 8468 } 8469 if (s = c.closest(".price__pricing-group"), s) { 8470 let e = s.querySelector(".price-item.price-item--regular[data-regular-price]"); 8471 e && (e.classList.remove("price-item"), e.classList.remove("price-item--regular")) 8472 } 8473 if (l.forEach((function(e) { 8474 c.closest(e) && t.push(c.closest(e)) 8475 })), s = c.closest(".product-page-info"), s) { 8476 let e = s.querySelector("[data-js-footbar-product-limit]"); 8477 e && t.push(e) 8478 } 8479 if (s = c.closest(".product-wrap"), s) { 8480 let e = s.querySelector(".purchase-details button.button--add-to-cart"), 8481 o = s.querySelector(".product-action"); 8482 if (e && t.push(e), o && t.push(o), window.Shopify && "dermafirmusa.myshopify.com" === window.Shopify.shop) { 8483 let e = s.querySelector(".price.sale"); 8484 e && t.push(e) 8485 } 8486 } 8487 if (s = c.closest(".seven.columns.omega"), s) { 8488 let e = s.querySelector(".purchase-details__buttons button.shopify-payment-button__button "); 8489 e && t.push(e) 8490 } 8491 if (s = c.closest("#collectionPr"), s) { 8492 let e = s.querySelectorAll("#PageContainer .collection .btn.add-to-cart"); 8493 e.length && e.forEach(e => { 8494 t.push(e) 8495 }) 8496 } 8497 if (s = c.closest(".grid.product-single"), s) { 8498 let e = s.querySelector('#PageContainer .wrap-product-info button[type="submit"].btn.btn1.pr_btn.addtocart_js'); 8499 e && t.push(e) 8500 } 8501 if (s = c.closest(".gryffeditor"), s) { 8502 let e = s.querySelector(".module-wrap .gf_add-to-cart.product-form-product-template"); 8503 e && t.push(e) 8504 } 8505 if (s = c.closest(".product-single .product-single__meta"), s) { 8506 let e = s.querySelector('.product-form__item button[name="add"].product-form__cart-submit'); 8507 e && t.push(e) 8508 } 8509 if (s = c.closest(".shopify-product-form"), s) { 8510 let e = s.querySelector("#product-price"); 8511 e && t.push(e) 8512 } 8513 if (s = c.closest(".product-item-price"), s) { 8514 let e = s.querySelector(".money"); 8515 e && t.push(e) 8516 } 8517 if (s = c.closest('main#main[role="main"]'), s) { 8518 let e = s.querySelector("div.atc-bar"); 8519 e && t.push(e) 8520 } 8521 if (s = c.closest("#CartDrawer"), s) { 8522 let e = s.querySelector("#CartDrawer-CartItems .cart-item .cart-item__details dl .product-option"); 8523 e && t.push(e); 8524 let o = s.querySelector("#CartDrawer-CartItems .cart-item .cart-item__totals .cart-item__price-wrapper"); 8525 o && t.push(o); 8526 let r = s.querySelector("#CartDrawer-CartItems .cart-item .cart-item__quantity"); 8527 r && t.push(r); 8528 let c = s.querySelector(".drawer__footer"); 8529 c && t.push(c) 8530 } 8531 if (s = c.closest("#main-cart-items"), s) { 8532 let e = s.querySelector(".cart-item .cart-item__details dl .product-option"); 8533 e && t.push(e); 8534 let o = s.querySelector(".cart-item .cart-item__quantity .cart-item__quantity-wrapper"); 8535 o && t.push(o); 8536 let r = s.querySelector(".cart-item .cart-item__totals.right.small-hide .cart-item__price-wrapper"); 8537 r && t.push(r) 8538 } 8539 if (s = c.closest("#main-cart-footer"), s) { 8540 let e = s.querySelector(".cart__footer"); 8541 e && t.push(e) 8542 } 8543 if (s = c.closest(".product-single__meta"), s && window.Shopify && ("asiadirectfurniture.mysh
8543opify.com" === window.Shopify.shop || "pure-vision-ch.myshopify.com" === window.Shopify.shop)) { 8544 let e = s.querySelector(".product__price[data-product-price]"); 8545 e && t.push(e) 8546 } 8547 if (s = c.closest(".product-inner.pr"), s) { 8548 let e = s.querySelector(".pr_atc.pr_qty_atc > a.pr_atc_.js_addtc"); 8549 e && t.push(e) 8550 } 8551 if (s = c.closest("#shopify-section-pr_summary"), s) { 8552 let e = s.querySelector("p.price_range, .price.price_varies"); 8553 e && t.push(e) 8554 } 8555 if (s = c.closest(".grid__item"), s) { 8556 let e = s.querySelector(".product__form-container"), 8557 o = s.querySelector(".product__description"); 8558 e && (t.push(e), o.style.width = "100%") 8559 } 8560 if (s = c.closest(".featured-product__content-wrapper"), s) { 8561 let e = s.querySelector(".product-form"); 8562 e && t.push(e) 8563 } 8564 if (s = c.closest(".card__price"), s && "exosomes-inc.myshopify.com" === o && (s.style.textAlign = "center"), s = c.closest(".Product__InfoWrapper > .Product__Info "), s) { 8565 let e = s.querySelector('.ProductForm__BuyButtons > button[type="submit"].ProductForm__AddToCart'); 8566 e && t.push(e); 8567 let o = s.querySelector(".ProductForm__AddToCart"); 8568 o && t.push(o) 8569 } 8570 if (s = c.closest(".product-grid__container .product-grid__content"), s) { 8571 let e = s.querySelector(".product-single__form .product__quantity"); 8572 e && t.push(e); 8573 let o = s.querySelector(".add-to-cart"); 8574 o && t.push(o); 8575 let r = s.querySelector(".product__price--compare"); 8576 if (r && t.push(r), window.Shopify && "sparklinbluewholesale.myshopify.com" === window.Shopify.shop) { 8577 let e = s.querySelector(".product__price-savings"); 8578 e && t.push(e) 8579 } 8580 } 8581 if (s = c.closest(".product-grid-item"), s) { 8582 let e = s.querySelector(".h1.medium--left"); 8583 e && "envogueusa.com" == window.location.host && t.push(e) 8584 } 8585 if (s = c.closest("#productPrice-product-template"), s) { 8586 let e = s.querySelector("small"); 8587 e && "envogueusa.com" == window.location.host && t.push(e), s.appendChild(c) 8588 } 8589 if (s = c.closest(".product-grid-item"), s) { 8590 let e = s.querySelector(".form-grid-btn"); 8591 e && "mamiereglissepro.myshopify.com" === o && t.push(e) 8592 } 8593 if (s = c.closest("#cont-form"), s) { 8594 let e = s.querySelector(".so-price"); 8595 e && t.push(e); 8596 let r = s.querySelector("#addToCart"); 8597 r && "mamiereglissepro.myshopify.com" === o && t.push(r) 8598 } 8599 if (s = c.closest(".template-product"), s) { 8600 let e = s.querySelector('button[name="add"]#addToCartBis, button[name="add"]#addToCart2'); 8601 e && t.push(e) 8602 } 8603 if (s = c.closest(".grid-product__content"), s) { 8604 let e = s.querySelector(".quick-product__btn");
8605 !e || "wood-hill-boards.myshopify.com" !== o && "wood-hill-boards-usa.myshopify.com" !== o && "bundlecomph.myshopify.com" !== o || t.push(e) 8606 } 8607 if (s = c.closest(".product-single__meta"), s) { 8608 let e = s.querySelector(".product__quantity"); 8609 !e || "wood-hill-boards.myshopify.com" !== o && "wood-hill-boards-usa.myshopify.com" !== o || t.push(e) 8610 } 8611 if (s = c.closest(".product-block-area"), s) { 8612 let e = s.querySelector("#addToCartButton"); 8613 e && "wanderlustvision.myshopify.com" === o && t.push(e) 8614 } 8615 if (s = c.closest(".product-single__meta--wrapper .product-single__meta"), s) { 8616 let e = s.querySelector(".price-container.text-money"), 8617 o = s.querySelector('button[name="add"].btn--add-to-cart'); 8618 e && t.push(e), o && t.push(o) 8619 } 8620 if (s = c.closest(".product-single__metas"), s) { 8621 let e = s.querySelector(".product-single__buttons .js-quantity-selector.product-quantity"), 8622 o = s.querySelector(".product-single__buttons button.btn--add-to-cart"); 8623 e && t.push(e), o && t.push(o) 8624 } 8625 if ("dollie-wholesale.myshopify.com" === o && (s = c.closest(".product-card"), s)) { 8626 let e = s.querySelector(".product-card__buttons .product-card__quickview"), 8627 o = s.querySelector(".product-card__buttons .product-card__form"), 8628 r = s.querySelector(".product-card__buttons .button-wishlist"), 8629 c = s.querySelector(".wpb-variants-swatch"); 8630 e && t.push(e), o && t.push(o), r && t.push(r), c && t.push(c) 8631 } 8632 if ("obsequ.myshopify.com" === o && (s = c.closest(".product-meta"), s)) { 8633 let e = s.querySelector(".price-list[data-product-price-list]"); 8634 e && e.remove() 8635 } 8636 if (s = c.closest(".sticky-cart"), s) { 8637 let e = s.querySelector(".product-form__buttons"); 8638 e && t.push(e) 8639 } 8640 if ("wholesale-rubypearlco.myshopify.com" !== o && "coventa-demo.myshopify.com" !== o && (s = c.closest(".productitem--info") || c.closest(".product-pricing"), s)) { 8641 let e = s.querySelector(".price"); 8642 e && t.push(e) 8643 } 8644 if (s = c.closest(".productitem--info"), s) { 8645 let e = s.querySelector(".price__compare-at.visible"); 8646 e && "coventa-demo.myshopify.com" === o && t.push(e) 8647 } 8648 if (s = c.closest(".product-block-list"), s && window.Shopify && "axiom-wholesale-parts.myshopify.com" === window.Shopify.shop) { 8649 let e = s.querySelector(".price"); 8650 e && e.classList.remove("price") 8651 } 8652 if (s = c.closest(".product-layout"), s) { 8653 let e = s.querySelector(".action-links"); 8654 e && t.push(e) 8655 } 8656 if (s = c.closest(".product-single__meta"), s) { 8657 let e = s.querySelector(".product-block--price"); 8658 e && "comphycompany.myshopify.com" === o && t.push(e) 8659 } 8660 if (s = c.closest(".product-details, .modal_price"), s) { 8661 let e = s.querySelector(".current_price, .price__container"); 8662 e && t.push(e) 8663 } 8664 if ("wholesale-rubypearlco.myshopify.com" === window.Shopify.shop && (s = c.closest(".productitem__container .productitem--info, .product-details .product-pricing"), s)) { 8665 let e = s.querySelectorAll(".price__compare-at--single, .price__compare-at, .price__current--max"); 8666 e.length && e.forEach(e => e.remove()) 8667 } 8668 if ("kerriecapelliusa-com.myshopify.com" === window.Shopify.shop && (s = c.closest(".product-detail.quickbuy-content.spaced-row.container"), s)) { 8669 let e = s.querySelectorAll(".product-form.theme-init .variant-visibility-area"); 8670 e.length && e.forEach(e => e.remove()) 8671 } 8672 if (s = c.closest(".widget_if_pr, .product-inner, .al_center.fl_center, .widget_if_pr"), s) { 8673 let e = s.querySelectorAll(".product-price-pr-search, .hover_button, .nt_add_w, .nt_add_cp, .sticky_atc_btn.variations_form, .transcy-money"); 8674 e.length && e.forEach(e => e.remove()) 8675 } 8676 if (s = c.closest(".ProductItem__Wrapper, .ProductForm"), s) { 8677 let e = s.querySelector(".ProductItem__Price
8677List, .ProductForm__QuantitySelector"); 8678 e && "sirenwireless.myshopify.com" !== o && e.remove(); 8679 let r = s.querySelector(".ProductFormWrapper"); 8680 r && "sirenwireless.myshopify.com" === o && t.push(r) 8681 } 8682 if ("butterfly-health-and-wellness.myshopify.com" === window.Shopify.shop) { 8683 if (s = c.closest(".item-content"), s) { 8684 let e = s.querySelector('.module-wrap[data-label="(P) Cart Button"] button.gf_add-to-cart'); 8685 e && e.remove() 8686 } 8687 if (s = c.closest(".gf_product-desc"), s) { 8688 let e = s.querySelector("h4"); 8689 e && (e.remove(), c.style.display = "none") 8690 } 8691 if (s = c.closest(".gf_column[data-id]"), s) { 8692 let e = s.querySelectorAll('.elementor-section[data-element_type="section"] .elementor-text-editor strong, .gf_product-desc h4, .gf_product-desc strong'); 8693 if (e) 8694 for (let t of e) t.remove() 8695 } 8696 } 8697 if (s = c.closest(".product-block"), s) { 8698 let e = s.querySelector(".quickbuy-toggle"); 8699 e && t.push(e) 8700 } 8701 if (s = c.closest(".productView-details"), s) { 8702 let e = s.querySelector(".productView-buttons"), 8703 r = s.querySelector(".quantity_selector"), 8704 c = s.querySelector(".productView-subtotal"); 8705 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()) 8706 } 8707 if (s = c.closest(".product__content"), s && "campomarzio-trade-uk.myshopify.com" === o) { 8708 let e = s.querySelector(".product__text"), 8709 o = s.querySelector(".select__fieldset"), 8710 r = s.querySelector(".product__submit"); 8711 e && t.push(e), o && t.push(o), r && t.push(r) 8712 } 8713 if (s = c.closest(".product-card__price, .product-single__meta-list"), s) { 8714 let e = s.querySelector(".product-single__price, .money-product"); 8715 e && e.remove() 8716 } 8717 if ("ens-nutrition-3419.myshopify.com" === o && (s = c.closest(".card__content"), s)) { 8718 let e = s.querySelector(".button.quick-add__submit"); 8719 e && e.remove() 8720 } 8721 if ("b2b-nandu.myshopify.com" === o) { 8722 if (s = c.closest(".grid-product__content"), s) { 8723 let e = s.querySelector(".grid-product__meta .grid-product__price "); 8724 e && e.remove() 8725 } 8726 let e = c.closest(".product-single__meta"); 8727 if (e) { 8728 let t = e.querySelector(".product__price.product__price--compare"), 8729 o = e.querySelector(".product__price.on-sale"), 8730 r = e.querySelector(".product__price-savings"); 8731 t && o && r && (t.remove(), o.remove(), r.remove()) 8732 } 8733 } 8734 if ("impjarwholesale.myshopify.com" === o) { 8735 if (s = c.closest(".tp-product-content"), s) { 8736 let e = s.querySelector("button#AddToCart"), 8737 o = s.querySelector(".tp-product-singe-action .tp-product-quantity"); 8738 e && t.push(e), o && t.push(o) 8739 } 8740 if (s = c.closest(".grid-item"), s) { 8741 let e = s.querySelector('form[action="/cart/add"]'); 8742 e && t.push(e) 8743 } 8744 } 8745 if ("b2b-dbodhi-singapore.myshopify.com" === o && (s = c.closest("del"), s && t.push(c), s = c.closest(".product-information--inner"), s)) { 8746 const e = s.querySelector(".product-form"); 8747 e && t.push(e) 8748 }
8749 if (s = c.closest(".lh-details-product"), s) { 8750 if ("ags2020.myshopify.com" === o) { 8751 let e = s.querySelector(".lh-price"); 8752 e && e.classList.remove("lh-price") 8753 } 8754 let e = s.querySelector(".lh-add_to_cart"); 8755 e && t.push(e); 8756 let r = s.querySelector(".lh-buy-now"); 8757 r && t.push(r); 8758 let c = s.querySelector(".lh-compare-at-price"); 8759 c && t.push(c) 8760 } 8761 if (s = c.closest(".lh-collection-item"), s) { 8762 if ("ags2020.myshopify.com" === o) { 8763 let e = s.querySelector(".lh-price"); 8764 e && e.classList.remove("lh-price") 8765 } 8766 let e = s.querySelector(".lh-product-compare-price"); 8767 e && t.push(e) 8768 } 8769 if (s = c.closest(".ProductMeta, .ProductItem__Info"), s) { 8770 let e = s.querySelectorAll(".Price"); 8771 e && e.forEach(e => e.remove()) 8772 } 8773 } 8774 t.forEach((function(e) { 8775 e.remove() 8776 })) 8777 } 8778 }(e), 8779 function(e) { 8780 e.ltsp.removeElementByLTSPWrapper = function() { 8781 let e = document.getElementsByClassName("bss-ltsp-price-wrapper"), 8782 t = []; 8783 for (let o = 0; o < e.length; o++) { 8784 let r = e[o], 8785 c = [], 8786 l = r.closest(".product-parent"); 8787 if (l) { 8788 let e = l.querySelector("form .tt-btn-addtocart"); 8789 e && t.push(e); 8790 let o = l.querySelector(".tt-btn-quickview"); 8791 o && t.push(o) 8792 } 8793 if (l = r.closest(".product-single__meta"), l = r.closest(".tt-product-single-info"), l) { 8794 let e = l.querySelector("form .btn-addtocart"); 8795 e && t.push(e); 8796 let o = l.querySelector('form[action*="/cart/add"]'); 8797 o && t.push(o) 8798 } 8799 if (l = r.closest(".product_section"), l) { 8800 let e = l.querySelector("form .add_to_cart, form .b2b-ajax-submit"); 8801 e && t.push(e); 8802 let o = l.querySelector(".sale.savings"); 8803 o && t.push(o) 8804 } 8805 if (l = r.closest(".quick-shop-style--inline"), l) { 8806 let e = l.querySelector("form .add_to_cart, form .b2b-ajax-submit"); 8807 e && t.push(e) 8808 } 8809 if (l = r.closest(".product-details"), l) { 8810 let e = l.querySelector("small em"); 8811 e && t.push(e) 8812 } 8813 if (l = r.closest(".gt_product-body"), l) { 8814 let e = l.querySelector("form .gt_product-addtocart"); 8815 e && t.push(e); 8816 let o = l.querySelector(".gt_product-saved"); 8817 o && t.push(o); 8818 let r = l.querySelector(".gt_product-price--compare"); 8819 r && t.push(r) 8820 } 8821 if (l = r.closest(".gt_product_content"), l) { 8822 let e = l.querySelector("form .gt_product-addtocart"); 8823 e && t.push(e); 8824 let o = l.querySelector(".gt_product-price--compare"); 8825 o && t.push(o) 8826 } 8827 if (l = r.closest(".gt-single-product"), l) { 8828 let e = l.querySelector("div.gt_method_addToCart"); 8829 e && t.push(e); 8830 let o = l.querySelector(".gt_product-price--compare"); 8831 o && t.push(o) 8832 } 8833 if (l = r.closest("#cont-form"), l) { 8834 let e = l.querySelector("form .cont-add-btns"); 8835 e && t.push(e) 8836 } 8837 if (l = r.closest(".theiaStickySidebar"), l) { 8838 let e = l.querySelector(".variations_button"); 8839 e && t.push(e) 8840 } 8841 if (l = r.closest(".product-submit"), l) { 8842 let e = l.querySelector(".payment-buttons-container"); 8843 e && t.push(e) 8844 } 8845 if (l = r.closest(".productitem"), l) { 8846 let e = l.querySelector(".productitem--action"); 8847 e && t.push(e) 8848 } 8849 if (l = r.closest(".product--outer"), l) { 8850 let e = l.querySelector(".product-form--atc"); 8851 e && t.push(e), e = l.querySelector(".shopify-payment-button"), e && t.push(e) 8852 } 8853 if (l = r.closest(".product-grouped"), l) { 8854 let e = l.querySelector(".product_top form#add-to-cart-form"); 8855 e && t.push(e) 8856 } 8857 if (l = r.closest(".product-item"), l) { 8858 let e = l.querySelector(".product-top .product-des .action"); 8859 e && t.push(e) 8860 } 8861 if (l = r.closest(".product-item"), l) { 8862 let e = l.querySelector('.product-item__action-button[data-action="add-to-cart"]'); 8863 e && t.push(e) 8864 } 8865 if (l = r.closest(".grid__item.grid-product"), l) { 8866 let e = l.querySelector('form[action="/cart/add"] input[type="submit"]'); 8867 e && t.push(e); 8868 let o = l.querySelector(".grid-product__tag"); 8869 o && t.push(o); 8870 let r = l.querySelector(".visually-hidden"); 8871 r && t.push(r) 8872 } 8873 if (l = r.closest(".product-info"), l) { 8874 let e = l.querySelector('form[action="/cart/add"] .payment-buttons'); 8875 e && t.push(e); 8876 let o = l.querySelector(".variant-wrapper.variant-wrapper--button"); 8877 o && t.push(o) 8878 } 8879 if (l = r.closest("#product-right"), l) { 8880 let e = l.querySelector(".was"); 8881 e && t.push(e); 8882 let o = l.querySelector(".product-add"); 8883 o && t.push(o) 8884 } 8885 if (l = r.closest(".was"), l && t.push(l), l = r.closest(".product-single__meta"), l) { 8886 let e = l.querySelector(".pf__actions"); 8887 e && t.push(e) 8888 } 8889 if (l = r.closest("#AddToCartForm-product-template"), l) { 8890 let e = l.querySelector("#CartButtons-product-template"); 8891 e && t.push(e) 8892 } 8893 if (l = r.closest(".Product__Info"), l) { 8894 let e = l.querySelector(".ProductMeta__PriceList"); 8895 e && t.push(e) 8896 } 8897 if (l = r.closest(".grid-item"), l) { 8898 let e = l.querySelector("#addToCart-product-template"); 8899 e && t.push(e); 8900 let o = l.querySelector(".payment-buttons"); 8901 o && t.push(o) 8902 }
8903 c.forEach((function(e) { 8904 r.closest(e) && t.push(r.closest(e)) 8905 })) 8906 } 8907 t.forEach((function(e) { 8908 e.remove() 8909 })) 8910 } 8911 }(e), e.ltsp.removePattern = function() { 8912 e.ltsp.removeElementByLTSPMessage(), e.ltsp.removeElementByLTSPWrapper() 8913 }, e.ltsp.insertBeforeAddToCart = function() { 8914 let t = document.querySelectorAll(".bsscommerce-ltsp-message[data-ltsp-cart-message]"); 8915 for (let o = 0; o < t.length; o++) { 8916 let r = t[o], 8917 c = r.getAttribute("data-ltsp-cart-message"); 8918 r.removeAttribute("data-ltsp-cart-message"); 8919 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"]; 8920 for (let t = 0; t < l.length; t++) { 8921 let o = r.closest(l[t]); 8922 if (o && !o.querySelector(".bsscommerce-ltsp-message.hide-message")) { 8923 let t = o.querySelector('form[action="/cart/add"]'); 8924 if (t) { 8925 let o = e.helperLTSP.createHidePriceMessageSpan(c); 8926 t.before(o) 8927 } 8928 } 8929 } 8930 let s = [ 8931 [".product-layout .item .item-inner .caption", ".button.btn-cart"], 8932 ['main#main section[data-section-id="product-template"] .card__section', ".product-form__payment-container"], 8933 [".main#MainContent .content.product", 'form[action="/cart/add"] .offers'] 8934 ]; 8935 for (let t = 0; t < s.length; t++) { 8936 let o = r.closest(s[t][0]); 8937 if (o && !o.querySelector(".bsscommerce-ltsp-message.hide-message")) { 8938 let r = o.querySelector(s[t][1]); 8939 if (r) { 8940 let t = e.helperLTSP.createHidePriceMessageSpan(c); 8941 r.before(t) 8942 } 8943 } 8944 } 8945 if (window.Shopify && "airbesafe.myshopify.com" === window.Shopify.shop) { 8946 let t = [ 8947 [".shopify-section--main-collection .product-list__inner .product-item ", ".product-item__info .product-item-meta__price-list-container .price-list"], 8948 [".shopify-section--main-product .product--thumbnails-bottom .product__info", ".product-meta__price-list-container"], 8949 ["product-item.product-item .product-item__info", ".product-item-meta__price-list-container"] 8950 ]; 8951 for (let o = 0; o < t.length; o++) { 8952 let l = r.closest(t[o][0]); 8953 if (l && !l.querySelector(".bsscommerce-ltsp-message.hide-message")) { 8954 let r = l.querySelector(t[o][1]); 8955 if (r) { 8956 let t = e.helperLTSP.createHidePriceMessageSpan(c); 8957 r.after(t) 8958 } 8959 } 8960 } 8961 } 8962 } 8963 } 8964 } 8965 8966 function c(e) { 8967 ! function(e) { 8968 e.helperLTSP = {}, e.helperLTSP.createHidePriceMessageSpan = function(e) { 8969 let t = document.createElement("span"); 8970 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 8971 }, e.helperLTSP.onLoadMore = function(e) { 8972 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-
8972product .product-container", ".container #col-main"].join(",")); 8973 if (t) { 8974 new MutationObserver((function(t) { 8975 t.forEach((function(t) { 8976 t.addedNodes.length && e() 8977 })) 8978 })).observe(t, { 8979 childList: !0 8980 }) 8981 } 8982 } 8983 }(e) 8984 } 8985 8986 function l() { 8987 const e = {}; 8988 c(e), r(e), 8989 function(e) { 8990 e.ptvp = {}, e.ptvp.addPasscodeForm = function() { 8991 let e = document.querySelector('form[action*="/cart/add"]'), 8992 t = document.getElementsByClassName("bss-passcode-wrapper-tag"), 8993 o = document.getElementsByClassName("bsscommerce-password-form"), 8994 r = document.querySelector(".toggle-passcode-input"), 8995 c = null; 8996 if (o.length && (c = o[0], c.style.display = "block", r && r.addEventListener("click", (function(e) { 8997 let t = document.getElementById("bsscommerce-password"); 8998 "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") 8999 }))), t.length && e && o.length) { 9000 e.before(c); 9001 let o = document.getElementById("bsscommerce-password"), 9002 r = new FormData; 9003 r.append(o.name, o.value), document.getElementById("bsscommerce-password-submit").style.padding = "12px 16px", document.getElementById("bsscommerce-password-submit").style.display = "block"; 9004 let l = new XMLHttpRequest; 9005 l.open("post", "/cart/update.js"), l.send(r); 9006 let s = document.getElementsByClassName("bsscommerce-ltap-password"); 9007 if (s.length) 9008 for (let e = 0; e < s.length; e++) s[e].addEventListener("submit", (function(e) { 9009 e.preventDefault(); 9010 let t = this; 9011 if (t.length) 9012 for (let e = 0; e < t.length; e++) 9013 if ("bsscommerce-password" == t[e].id) { 9014 let o = t[e]; 9015 if (o.addEventListener("input", (function() { 9016 o.classList.remove("input--error") 9017 })), o.value) 9018 if ("" != o.value) { 9019 let e = new FormData; 9020 e.append(o.name, o.value); 9021 let t = new XMLHttpRequest; 9022 t.onreadystatechange = function() { 9023 4 == t.readyState && 200 == t.status && location.reload() 9024 }, t.open("post", "/cart/update.js"), t.send(e) 9025 } else o.classList.add("input--error") 9026 } 9027 })); 9028 for (let e = 0; e < t.length; e++) t[e].remove() 9029 } 9030 } 9031 }(e), e.ptvp.addPasscodeForm(), document.querySelectorAll(".quick-view-btn").forEach((function(t) { 9032 t.addEventListener("click", (function() { 9033 setTimeout((function() { 9034 e.ptvp.addPasscodeForm() 9035 }), 1e3) 9036 })) 9037 })), 9038 function e() { 9039 document.querySelectorAll(".advanced-filter a").forEach((function(t) { 9040 t.addEventListener("click", (function() { 9041 setTimeout((function() { 9042 let t = document.getElementsByClassName("bsscommerce-ltsp-message"); 9043 for (let e = 0; e < t.length; e++) { 9044 let o = t[e].closest(".item-row"); 9045 if (o) { 9046 let e = o.querySelector(".add-to-cart"); 9047 e && e.remove() 9048 } 9049 } 9050 e() 9051 }), 1200) 9052 })) 9053 })) 9054 }(), e.ltsp.quickView(), e.ltsp.insertBeforeAddToCart(), e.ltsp.removePattern(), e.helperLTSP.onLoadMore(e.ltsp.removePattern), setTimeout((function() { 9055 e.ltsp.removePattern() 9056 }), 2500); 9057 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) { 9058 let o; 9059 return function(...r) { 9060 o && clearTimeout(o), o = setTimeout(() => { 9061 e(...r), o = null 9062 }, t) 9063 } 9064 }((function() { 9065 let t = setInterval((function() { 9066 e.ltsp.removePattern() 9067 }), 200); 9068 setTimeout((function() { 9069 clearInterval(t) 9070 }), 3e3) 9071 }), 500)), "amoreo.eu" === window.location.host) { 9072 let t = setInterval((function() { 9073 e.ltsp.removePattern() 9074 }), 200); 9075 setTimeout((function() { 9076 clearInterval(t) 9077 }), 3e3) 9078 } 9079 let t = document.querySelector(".infinite-scrolling-homepage a.btn"); 9080 "airbesafe.myshopify.com" === window.location.host && setTimeout((function() { 9081 e.ltsp.insertBeforeAddToCart() 9082 }), 3e3), t && (t.onclick = function() { 9083 setTimeout((function() { 9084 e.ltsp.removePattern() 9085 }), 1e3) 9086 }); 9087 let o = document.querySelectorAll("#shopify-section-product-recommendations, .product-modal-wrapper"); 9088 var l, s, u; 9089 (o.length && o.forEach((function(t) { 9090 t.addEventListener("DOMSubtreeModified", (function() { 9091 e.ltsp.removePattern() 9092 })) 9093 })), "valleys-group.myshopify.com" === window.location.host) && (l = function() { 9094 e.ltsp.removePattern(); 9095 let t = document.querySelectorAll(".slideout__drawer
9095-right, .sidebar_leftside_wapper, .filtering__results"); 9096 t.length && t.forEach((function(e) { 9097 e.addEventListener("click", (function() { 9098 setTimeout(() => { 9099 l() 9100 }, 1700) 9101 })) 9102 })) 9103 }); 9104 "b.salonpremium.com" === window.location.host && (s = function() { 9105 e.ltsp.removePattern(); 9106 let t = document.querySelectorAll(".pagination"); 9107 t.length && t.forEach((function(e) { 9108 e.addEventListener("click", (function() { 9109 setTimeout(() => { 9110 s() 9111 }, 3e3) 9112 })) 9113 })) 9114 }); 9115 "www.internationalbeauty.ca" === window.location.host && (u = function() { 9116 let t = document.querySelector('[id^="RecentlyViewed"]'); 9117 new MutationObserver((function(t) { 9118 t.forEach((function(t) { 9119 t.addedNodes.length && (e.ltsp.removePattern(), document.querySelectorAll(".btn--icon.quick-product__btn").forEach((function(e) { 9120 e.addEventListener("click", (function() { 9121 setTimeout((function() { 9122 let e = document.getElementsByClassName("bsscommerce-ltsp-message"); 9123 for (let t = 0; t < e.length; t++) { 9124 let o = e[t].closest(".product-grid__content"); 9125 if (o) { 9126 let e = o.querySelector(".payment-buttons"); 9127 e && e.remove() 9128 } 9129 } 9130 u() 9131 }), 2e3) 9132 })) 9133 }))) 9134 })) 9135 })).observe(t, { 9136 childList: !0 9137 }) 9138 }); 9139 if ("bluebasketb2b.myshopify.com" === window.Shopify.shop) { 9140 let t = document.querySelector("#CartDrawer"); 9141 const o = () => { 9142 let e = document.querySelectorAll("script#bss-ltap-login-require"); 9143 for (let t in e) t.remove() 9144 }; 9145 if (t) { 9146 new MutationObserver((function(t) { 9147 t.forEach((function(t) { 9148 t.addedNodes.length && (e.ltsp.removePattern(), o()) 9149 })) 9150 })).observe(t, { 9151 childList: !0 9152 }) 9153 } 9154 } 9155 if ("dollie-wholesale.myshopify.com" === window.Shopify.shop) { 9156 let t = document.querySelector("#product-grid .products__row"); 9157 if (t) { 9158 new MutationObserver((function(t) { 9159 t.forEach((function(t) { 9160 t.addedNodes.length && e.ltsp.removePattern() 9161 })) 9162 })).observe(t, { 9163 childList: !0 9164 }) 9165 } 9166 } 9167 if ("impjarwholesale.myshopify.com" === window.Shopify.shop) { 9168 let t = document.querySelector(".tp-collection-content"); 9169 if (t) { 9170 new MutationObserver((function(t) { 9171 t.forEach((function(t) { 9172 t.addedNodes.length && e.ltsp.removePattern() 9173 })) 9174 })).observe(t, { 9175 childList: !0 9176 }) 9177 } 9178 } 9179 if ("inex-studio.myshopify.com" === window.Shopify.shop) { 9180 let t = document.querySelector("#Search .Search__Results"); 9181 if (t) { 9182 new MutationObserver((function(t) { 9183 t.forEach((function(t) { 9184 t.addedNodes.length && e.ltsp.removePattern() 9185 })) 9186 })).observe(t, { 9187 childList: !0, 9188 subtree: !0 9189 }) 9190 } 9191 } 9192 } 9193 o.r(t), o.d(t, "default", (function() { 9194 return l 9195 })), l() 9196 }]); 9197 </script>
9197 9198 </main> 9199 <div id="shopify-section-newsletter" class="shopify-section"><br> 9200 <style> 9201 #shopify-section-newsletter { 9202 background: url(https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/background.png); 9203 background-attachment: fixed; 9204 margin-bottom: 0; 9205 } 9206 9207 input:-webkit-autofill, 9208 input:-webkit-autofill:hover, 9209 input:-webkit-autofill:active, 9210 input:-webkit-autofill:focus { 9211 -webkit-box-shadow: 0 0 0 50px white inset; 9212 -webkit-text-fill-color: #ffffff; 9213 } 9214 9215 .section-newsletter { 9216 max-width: 800px; 9217 margin: auto; 9218 padding: 50px 0; 9219 } 9220 9221 .section-newsletter h2 { 9222 font-weight: 700; 9223 font-size: 24px; 9224 } 9225 9226 .section-newsletter input[type="email"] { 9227 width: 100%; 9228 text-align: center; 9229 border: none; 9230 border-bottom: 1px solid #ffffff; 9231 font-size: 16px; 9232 color: #757575; 9233 background-color: #eeeeee; 9234 } 9235 9236 .section-newsletter .row label { 9237 font-size: 14px; 9238 cursor: pointer; 9239 } 9240 9241 .section-newsletter .radio-inline input { 9242 width: auto; 9243 } 9244 9245 .section-newsletter .btn { 9246 width: 130px; 9247 border: 1px solid #ffffff; 9248 box-shadow: none; 9249 font-size: 16px; 9250 font-weight: 500; 9251 text-transform: uppercase; 9252 } 9253 9254 .section-newsletter form { 9255 margin: 30px 0 60px; 9256 } 9257 9258 .section-newsletter input[type="radio"] { 9259 position: absolute; 9260 width: 1px; 9261 height: 1px; 9262 } 9263 9264 .section-newsletter [type="radio"]:checked+label, 9265 .section-newsletter [type="radio"]:not(:checked)+label { 9266 position: relative; 9267 padding-left: 28px; 9268 cursor: pointer; 9269 line-height: 20px; 9270 display: inline-block; 9271 color: #666; 9272 } 9273 9274 .section-newsletter [type="radio"]:checked+label:before, 9275 .section-newsletter [type="radio"]:not(:checked)+label:before { 9276 content: ''; 9277 position: absolute; 9278 left: 0; 9279 top: 0; 9280 width: 18px; 9281 height: 18px; 9282 border: 1px solid #ddd; 9283 border-radius: 100%; 9284 background: #fff; 9285 } 9286 9287 .section-newsletter [type="radio"]:checked+label:after, 9288 .section-newsletter [type="radio"]:not(:checked)+label:after { 9289 content: ''; 9290 width: 12px; 9291 height: 12px; 9292 background: #ffffff; 9293 position: absolute; 9294 top: 3px; 9295 left: 3px; 9296 border-radius: 100%; 9297 -webkit-transition: all 0.2s ease; 9298 transition: all 0.2s ease; 9299 } 9300 9301 .section-newsletter [type="radio"]:not(:checked)+label:after { 9302 opacity: 0; 9303 -webkit-transform: scale(0); 9304 transform: scale(0); 9305 } 9306 9307 .opt-newsletter { 9308 display: none; 9309 } 9310 9311 .footer-newsletter p, 9312 .footer-newsletter p a { 9313 color: #757575; 9314 } 9315 9316 @media (max-width:991px) { 9317 .section-newsletter h2 { 9318 font-size: 32px; 9319 } 9320 9321 .section-newsletter input { 9322 width: 300px; 9323 font-size: 14px; 9324 } 9325 9326 .section-newsletter { 9327 padding: 50px 20px; 9328 } 9329 } 9330 9331 @media (max-width: 480px) { 9332 .section-newsletter input[type="email"] { 9333 font-size: 16px; 9334 } 9335 } 9336 </style> 9337 <style> 9338 .icon-img-footer { 9339 width: 80px; 9340 padding: 0px 5px; 9341 } 9342 9343 @media (min-width: 768px) { 9344 .icon-img-footer { 9345 width: 120px; 9346 } 9347 } 9348 9349 @media (min-width: 992px) { 9350 .icon-img-footer { 9351 width: 120px; 9352 } 9353 } 9354 9355 .button-login-daftar { 9356 display: grid; 9357 grid-template-columns: repeat(2, 1fr); 9358 font-weight: 700; 9359 } 9360 9361 .button-login-daftar a { 9362 text-align: center; 9363 } 9364 9365 .login, 9366 .register { 9367 color: #000000; 9368 padding: 15px 10px; 9369 font-size: 23px; 9370 } 9371 9372 .login, 9373 .login-button { 9374 background: linear-gradient(to bottom, #000000 0%, #000000 50%, #000000 100%); 9375 border: 2px solid #ffd700; 9376 } 9377 9378 .register, 9379 .register-button { 9380 background: linear-gradient(to bottom, #000000 0%, #000000 50%, #000000 100%); 9381 border: 2px solid #ffd700; 9382 } 9383 </style> 9384 <!-- wp:html --> 9385
9385<script> 9386 document.addEventListener('DOMContentLoaded', function() { 9387 const faqItems = document.querySelectorAll('.faq-item'); 9388 faqItems.forEach(item => { 9389 const question = item.querySelector('.faq-question'); 9390 question.addEventListener('click', 9391 () => { 9392 const isActive = item.classList.contains('active'); 9393 faqItems.forEach(otherItem => { 9394 otherItem.classList.remove('active') 9395 }); 9396 if (!isActive) { 9397 item.classList.add('active') 9398 } 9399 }) 9400 }) 9401 }); 9402 </script>
9402 9403 <div class="page__overlay" data-view="offCanvasNavToggle" data-off-canvas="close" bis_skin_checked="1"> 9404 </div> 9405 <div class="faq-section"> 9406 <h2>FAQ TENTANG VENOM123 SPIN</h2> 9407 <div class="faq-container"> 9408 <div class="faq-item"> 9409 <button class="faq-question">Apa yang membuat VENOM123 menarik untuk pengalaman spin? <span></span></button> 9410 <div class="faq-answer"> 9411 <p>VENOM123 menyediakan berbagai pilihan permainan dengan tampilan yang praktis dan responsif. Pengguna dapat menjelajahi permainan dengan nyaman melalui perangkat yang digunakan.</p> 9412 </div> 9413 </div> 9414 9415<div class="faq-item"> 9416 <button class="faq-question">Bagaimana cara mengakses VENOM123 untuk menikmati permainan spin? <span></span></button> 9417 <div class="faq-answer"> 9418 <p>Pengguna dapat mengakses halaman resmi VENOM123 dan melakukan login untuk melihat berbagai pilihan permainan yang tersedia. Pastikan selalu menggunakan sumber resmi saat mengakses akun.</p> 9419 </div> 9420</div> 9421 9422<div class="faq-item"> 9423 <button class="faq-question">Apakah VENOM123 bisa diakses melalui smartphone? <span></span></button> 9424 <div class="faq-answer"> 9425 <p>Ya. VENOM123 menggunakan tampilan responsif yang dapat digunakan melalui berbagai perangkat, termasuk smartphone Android, iPhone, tablet, laptop, dan komputer.</p> 9426 </div> 9427</div> 9428 9429<div class="faq-item"> 9430 <button class="faq-question">Apa keunggulan tampilan VENOM123? <span></span></button> 9431 <div class="faq-answer"> 9432 <p>VENOM123 memiliki navigasi yang mudah dipahami dan tampilan ringan sehingga pengguna dapat menemukan pilihan permainan dengan lebih praktis dan nyaman.</p> 9433 </div> 9434</div> 9435 9436<div class="faq-item"> 9437 <button class="faq-question">Apakah VENOM123 menjamin kemenangan pada setiap putaran? <span></span></button> 9438 <div class="faq-answer"> 9439 <p>Tidak. Hasil setiap putaran bersifat tidak pasti dan tidak ada platform yang dapat menjamin kemenangan. Karena itu, pengguna sebaiknya bermain secara bijak dan memahami risikonya.</p> 9440 </div> 9441</div> 9442 9443 9444 </div> 9445</div> 9446 9447 <div class="overlay overlay-cart"></div> 9448 <div id="CartDrawer" class="drawer drawer--right"> 9449 <div class="drawer__header pl-2 pr-2"> 9450 <div class="drawer__icon-cart display-table-cell"> 9451 <a href="/cart" class=""> 9452 <svg class="icon icon-cart" version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="32" height="32" viewBox="0 0 32 32"> 9453 <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> 9454 <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> 9455 <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> 9456 <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> 9457 <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> 9458 <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> 9459 <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.
9459005-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> 9460 <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> 9461 </svg> 9462 </a> 9463 </div> 9464 <div class="drawer__title h4">Keranjang Belanja</div> 9465 <div class="drawer__close js-drawer-close"> 9466 <button type="button"> 9467 <svg class="icon icon-close" version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="32" height="32" viewBox="0 0 32 32"> 9468 <title>icon-close</title> 9469 <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> 9470 </svg> 9471 </button> 9472 </div> 9473 </div> 9474 <div id="CartContainer" class="p-2"></div> 9475 </div> 9476
9476<script> 9477 </script>
9477 9478
9478<script src="//outerbloom.com/cdn/shop/t/138/assets/handlebars.min.js?v=79044469952368397291752652415" defer></script>
9478 9479 <!-- /snippets/ajax-cart-template.liquid --> 9480
9480<script id="CartTemplate" type="text/template"> <form action="/cart" method="post" novalidate class="cart ajaxcart"> 9481 <div class="ajaxcart__inner" {{ cart.item_count }}> 9482 {{#items}} 9483 <div class="ajaxcart__product"> 9484 <div class="ajaxcart__row" data-line="{{line}}"> 9485 <div class="grid"> 9486 <div class="grid__item one-quarter"> 9487 <a href="{{url}}" class="ajaxcart__product-image"><img src="{{img}}" alt=""></a> 9488 </div> 9489 <div class="grid__item three-quarters"> 9490 <p class="d-block mb-3"> 9491 <a class="h4 d-block mb-2" href="{{url}}" class="ajaxcart__product-name">{{name}}</a> 9492 {{#if variation}} 9493 <span class="ajaxcart__product-meta p">{{variation}}</span> 9494 {{/if}} 9495 {{#properties}} 9496 {{#each this}} 9497 {{#if this}} 9498 <span class="ajaxcart__product-meta p hide">{{@key}}: {{this}}</span> 9499 {{/if}} 9500 {{/each}} 9501 {{/properties}} 9502 9503 </p> 9504 <div class="grid--full display-table"> 9505 <div class="grid__item display-table-cell one-half"> 9506 <div class="ajaxcart__qty"> 9507 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}" data-line="{{line}}"> 9508 <svg version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 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> 9509 <span class="visually-hidden">Kurangi jumlah barang</span> 9510 </button> 9511 <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]*"> 9512 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-line="{{line}}" data-qty="{{itemAdd}}"> 9513 <svg version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 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> 9514 <span class="visually-hidden">Tambahkan jumlah barang</span> 9515 </button> 9516 </div> 9517 </div> 9518 <div class="grid__item display-table-cell one-half text-right"> 9519 {{#if discountsApplied}} 9520 <small class="ajaxcart-item__price-strikethrough"><s>{{{originalLinePrice}}}</s></small> 9521 <br><span class="h4">{{{linePrice}}}</span> 9522 {{else}} 9523 <span class="h4">{{{linePrice}}}</span> 9524 {{/if}} 9525 </div> 9526 </div> 9527 {{#if discountsApplied}} 9528 <div class="grid--full display-table"> 9529 <div class="grid__item text-right"> 9530 {{#each discounts}} 9531 <small class="ajaxcart-item__discount">{{ this.title }}</small><br> 9532 {{/each}} 9533 </div> 9534 </div> 9535 {{/if}} 9536 </div> 9537 </div> 9538 </div> 9539 </div> 9540 </div> 9541 </div> 9542 {{/items}} 9543 </div> 9544 <div class="ajaxcart__footer"> 9545 <div class="grid--full cart-subtotal py-2"> 9546 <p>Subtotal</p> 9547 <h3 class="primary">{{{totalPrice}}}</h3> 9548 {{#if totalCartDiscount}} 9549 <p class="ajaxcart__savings text-center"><em>{{{totalCartDiscount}}}</em></p> 9550 {{/if}} 9551 </div> 9552 9553 <a href="/cart" class="btn btn-cta view-more btn-block cart__checkout mt-2">Checkout</a> 9554 9555 <p class="cart-checkout-shipping hide">Free Ongkir dengan belanja di atas Rp.100.000 <a href="/pages/pengiriman">detail</a></p> 9556 </div> 9557 </form> 9558 9559 </script>
9559 9560
9560<script id="AjaxQty" type="text/template"> <div class="ajaxcart__qty"> 9561 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 9562 <svg version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="24" viewBox="0 0 32 32"> 9563 <title>icon-minus</title> 9564 <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> 9565 </svg> 9566 <span class="visually-hidden">Kurangi jumlah barang</span> 9567 </button> 9568 <input type="text" class="ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*"> 9569 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 9570 <svg version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 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> 9571 <span class="visually-hidden">Tambahkan jumlah barang</span> 9572 </button> 9573 </div> 9574 9575 </script>
9575 9576
9576<script id="JsQty" type="text/template"> <div class="js-qty mx-auto mt-2"> 9577 <button type="button" class="js-qty__adjust js-qty__adjust--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 9578 <svg version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 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> 9579 <span class="visually-hidden">Kurangi jumlah barang</span> 9580 </button> 9581 <input type="text" class="js-qty__num" value="{{itemQty}}" min="1" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*" name="{{inputName}}" id="{{inputId}}"> 9582 <button type="button" class="js-qty__adjust js-qty__adjust--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 9583 <svg version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 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> 9584 <span class="visually-hidden">Tambahkan jumlah barang</span> 9585 </button> 9586 </div> 9587 9588 </script>
9588 9589 <style> 9590 #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty button, 9591 #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty button, 9592 #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty button { 9593 display: none; 9594 } 9595 9596 #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input, 9597 #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input, 9598 #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input { 9599 pointer-events: none; 9600 opacity: 0.5; 9601 } 9602 9603 #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input, 9604 #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input, 9605 #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input { 9606 pointer-events: none; 9607 } 9608 </style> 9609
9609<script src="//outerbloom.com/cdn/shop/t/138/assets/ajax-cart.js?v=51128912329657147331752652452" defer></script>
9609 9610
9610<script> 9611 jQuery(function($) { 9612 ajaxCart.init({ 9613 formSelector: '#AddToCartForm', 9614 cartContainer: '#CartContainer', 9615 addToCartSelector: '#AddToCartXX', 9616 cartCountSelector: '#CartCount, #CartCount2', 9617 cartCostSelector: '#CartCost', 9618 moneyFormat: "Rp {{amount_no_decimals}}" 9619 }); 9620 }); 9621 jQuery(document.body).on('afterCartLoad.ajaxCart', function(evt, cart) { 9622 // Bind to 'afterCartLoad.ajaxCart' to run any javascript after the cart has loaded in the DOM 9623 timber.RightDrawer.open(); 9624 }); 9625 </script>
9625 9626 <style> 9627 /** Search AutoComplete **/ 9628 .resultsearch .ui-menu-item[data-cat="Collection"], 9629 .resultsearch .ui-menu-item[data-cat="Collection"] { 9630 display: none; 9631 } 9632 9633 .resultsearch .ui-widget.ui-widget-content { 9634 width: 100%; 9635 top: 48px; 9636 border: none; 9637 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); 9638 } 9639 9640 .resultsearch .ui-menu-item { 9641 text-align: left; 9642 } 9643 9644 .resultsearch .ui-menu-item>a, 9645 .resultsearch .ui-menu-item>span { 9646 display: inline-block; 9647 width: 100%; 9648 font-size: 16px; 9649 } 9650 9651 .resultsearch .ui-menu-item img { 9652 vertical-align: middle; 9653 } 9654 9655 .resultsearch .ui-menu-item a[data-cat="Collection"] img { 9656 display: none; 9657 } 9658 9659 .resultsearch .ui-menu .ui-state-focus, 9660 .resultsearch .ui-menu .ui-state-active { 9661 margin: 0; 9662 } 9663 9664 .ui-state-active, 9665 .ui-widget-content .ui-state-active { 9666 background: #f2f2f2; 9667 border: none; 9668 color: #ffffff; 9669 } 9670 9671 .resultsearch .ui-menu-item>a, 9672 .resultsearch .ui-menu-item>span { 9673 display: inline-block; 9674 width: 100%; 9675 font-size: 13px; 9676 } 9677 9678 .resultsearch .ui-menu-item a[data-cat="Produk"] img { 9679 margin-right: 10px; 9680 } 9681 9682 .resultsearch .ui-menu-item a[data-cat="Produk"] .price { 9683 float: right; 9684 padding: 15px 0; 9685 } 9686 9687 .ui-autocomplete-category.ui-menu-item[data-cat="Produk"]:before { 9688 content: "Product Populer"; 9689 font-size: 13px; 9690 padding: 5px; 9691 margin: 5px 0; 9692 background: #f2f2f2; 9693 width: 100%; 9694 display: block; 9695 color: #ffffff; 9696 } 9697 9698 .ui-autocomplete-category.ui-menu-item[data-cat="Produk"] span { 9699 display: none; 9700 } 9701 9702 .ui-state-active { 9703 border: none !important; 9704 background-color: #fafafa !important; 9705 color: #000 !important; 9706 } 9707 9708 .ui-menu-item a[data-cat="Collection"] { 9709 padding: 5px 12px; 9710 } 9711 9712 .ui-menu .ui-menu-item { 9713 line-height: normal; 9714 } 9715 </style> 9716
9716<script> 9717 $(window).load(function() { 9718 function format(item) { 9719 var cell = ''; 9720 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>"; 9721 return cell; 9722 } 9723 $.widget("custom.catcomplete", $.ui.autocomplete, { 9724 _renderMenu: function(ul, items) { 9725 // have search reults split up in categories 9726 var that = this, 9727 currentCategory = ""; 9728 $.each(items, function(index, item) { 9729 if (item.category != currentCategory) { 9730 ul.append("<li class='ui-autocomplete-category' data-cat=" + item.category + ">" + "<span>" + item.category + "</span>" + "</li>"); 9731 currentCategory = item.category; 9732 } 9733 that._renderItemData(ul, item); 9734 }); 9735 } 9736 }); 9737 // higlight searched for term 9738 $.ui.autocomplete.prototype._renderItem = function(ul, item) { 9739 var term = this.element.val(), 9740 html = item.label.replace(term, "<b>$&</b>"); 9741 return $("<li>").append(format(item)).appendTo(ul); 9742 }; 9743 var data = [{ 9744 label: "< Rp 500.000", 9745 category: "Collection", 9746 url: "/collections/rp-500-000", 9747 images: " ", 9748 price: " " 9749 }, { 9750 label: "> Rp 1.000.000", 9751 category: "Collection", 9752 url: "/collections/rp-1-000-000", 9753 images: " ", 9754 price: " " 9755 }, { 9756 label: "Acrylic Jewelry Box", 9757 category: "Collection", 9758 url: "/collections/acrylic-jewelry-box", 9759 images: " ", 9760 price: " " 9761 }, { 9762 label: "Ajmal", 9763 category: "Collection", 9764 url: "/collections/ajmal", 9765 images: " ", 9766 price: " " 9767 }, { 9768 label: "Alamat Rumah Duka", 9769 category: "Collection", 9770 url: "/collections/rumah-duka", 9771 images: " ", 9772 price: " " 9773 }, { 9774 label: "Anggrek Bulan", 9775 category: "Collection", 9776 url: "/collections/anggrek-bulan", 9777 images: " ", 9778 price: " " 9779 }, { 9780 label: "Anniversary Gift", 9781 category: "Collection", 9782 url: "/collections/kado-anniversary", 9783 images: " ", 9784 price: " " 9785 }, { 9786 label: "Aquarius âï¸ 20Jan - 18Feb", 9787 category: "Collection", 9788 url: "/collections/kado-untuk-zodiak-aquarius", 9789 images: " ", 9790 price: " " 9791 }, { 9792 label: "Aries âï¸ 21March - 19April", 9793 category: "Collection", 9794 url: "/collections/kado-untuk-zodiak-aries", 9795 images: " ", 9796 price: " " 9797 }, { 9798 label: "Armaf", 9799 category: "Collection", 9800 url: "/collections/armaf", 9801 images: " ", 9802 price: " " 9803 }, { 9804 label: "Aromatherapy Diffuser", 9805 category: "Collection", 9806 url: "/collections/aromatherapy-diffuser", 9807 images: " ", 9808 price: " " 9809 }, { 9810 label: "Artisan Soap", 9811 category: "Collection", 9812 url: "/collections/artisan-soap", 9813 images: " ", 9814 price: " " 9815 }, { 9816 label: "Artisan Tea", 9817 category: "Collection", 9818 url: "/collections/artisan-tea", 9819 images: " ", 9820 price: " " 9821 }, { 9822 label: "AsmaraKu", 9823 category: "Collection", 9824 url: "/collections/asmaraku", 9825 images: " ", 9826 price: " " 9827 }, { 9828 label: "Atkinsons", 9829 category: "Collection", 9830 url: "/collections/atkinsons", 9831 images: " ", 9832 price: " " 9833 }, { 9834 label: "Autumn by Outerbloom", 9835 category: "Collection", 9836 url: "/collections/autumn-by-outerbloom", 9837 images: " ", 9838 price: " " 9839 }, { 9840 label: "Autumn by Outerbloom Chinese New Year", 9841 category: "Collection", 9842 url: "/collections/autumn-by-outerbloom-chinese-new-year", 9843 images: " ", 9844 price: " " 9845 }, { 9846 label: "Autumn by Outerbloom Christmas", 9847 category: "Collection", 9848 url: "/collections/autumn-by-outerbloom-christmas", 9849 images: " ", 9850 price: " " 9851 }, { 9852 label: "Autumn by Outerbloom Luar Jadetabek", 9853 category: "Collection", 9854 url: "/collections/autumn-by-outerbloom-luar-jadetabek", 9855 images: " ", 9856 price: " " 9857 }, { 9858 label: "Autumn by Outerbloom Ramadan", 9859 category: "Collection", 9860 url: "/collections/autumn-by-outerbloom-ramadan", 9861 images: " ", 9862 price: " " 9863 }, { 9864 label: "Autumn Pop", 9865 category: "Collection", 9866 url: "/collections/autumn-pop", 9867 images: " ", 9868 price: " " 9869 }, { 9870 label: "Bachelorette", 9871 category: "Collection", 9872 url: "/collections/bachelorette", 9873 images: " ", 9874 price: " " 9875 }, { 9876 label: "Bag Newborn Hampers", 9877 category: "Collection",
9878 url: "/collections/bag-newborn-hampers", 9879 images: " ", 9880 price: " " 9881 }, { 9882 label: "Balon", 9883 category: "Collection", 9884 url: "/collections/balon", 9885 images: " ", 9886 price: " " 9887 }, { 9888 label: "Beauty Package", 9889 category: "Collection", 9890 url: "/collections/beauty-package", 9891 images: " ", 9892 price: " " 9893 }, { 9894 label: "Best Deal", 9895 category: "Collection", 9896 url: "/collections/best-deal", 9897 images: " ", 9898 price: " " 9899 }, { 9900 label: "Best Seller", 9901 category: "Collection", 9902 url: "/collections/best-seller", 9903 images: " ", 9904 price: " " 9905 }, { 9906 label: "Best Valentine's Deals", 9907 category: "Collection", 9908 url: "/collections/bes-valentines-deals", 9909 images: " ", 9910 price: " " 9911 }, { 9912 label: "Best Value Newborn Hampers Collection", 9913 category: "Collection", 9914 url: "/collections/best-value-newborn-hampers-collection", 9915 images: " ", 9916 price: " " 9917 }, { 9918 label: "Black Tea", 9919 category: "Collection", 9920 url: "/collections/black-tea", 9921 images: " ", 9922 price: " " 9923 }, { 9924 label: "Blessing Hampers", 9925 category: "Collection", 9926 url: "/collections/blessing-hampers", 9927 images: " ", 9928 price: " " 9929 }, { 9930 label: "Bloom Box", 9931 category: "Collection", 9932 url: "/collections/bloom-box", 9933 images: " ", 9934 price: " " 9935 }, { 9936 label: "Bloomcard", 9937 category: "Collection", 9938 url: "/collections/bloomcard", 9939 images: " ", 9940 price: " " 9941 }, { 9942 label: "Boutonniere", 9943 category: "Collection", 9944 url: "/collections/boutonniere", 9945 images: " ", 9946 price: " " 9947 }, { 9948 label: "Bracelet", 9949 category: "Collection", 9950 url: "/collections/gelang", 9951 images: " ", 9952 price: " " 9953 }, { 9954 label: "Buket Bunga Bali", 9955 category: "Collection", 9956 url: "/collections/buket-bunga-bali", 9957 images: " ", 9958 price: " " 9959 }, { 9960 label: "Buket Bunga Bandung", 9961 category: "Collection", 9962 url: "/collections/buket-bunga-bandung", 9963 images: " ", 9964 price: " " 9965 }, { 9966 label: "Buket Bunga Batam", 9967 category: "Collection", 9968 url: "/collections/buket-bunga-batam", 9969 images: " ", 9970 price: " " 9971 }, { 9972 label: "Buket Bunga Demak", 9973 category: "Collection", 9974 url: "/collections/buket-bunga-demak", 9975 images: " ", 9976 price: " " 9977 }, { 9978 label: "Buket Bunga Fresh", 9979 category: "Collection", 9980 url: "/collections/buket-bunga", 9981 images: " ", 9982 price: " " 9983 }, { 9984 label: "Buket Bunga Jepara", 9985 category: "Collection", 9986 url: "/collections/buket-bunga-jepara", 9987 images: " ", 9988 price: " " 9989 }, { 9990 label: "Buket Bunga Medan", 9991 category: "Collection", 9992 url: "/collections/buket-bunga-medan", 9993 images: " ", 9994 price: " " 9995 }, { 9996 label: "Buket Bunga Nusantara", 9997 category: "Collection", 9998 url: "/collections/buket-bunga-nusantara", 9999 images: " ", 10000 price: " " 10001 }, { 10002 label: "Buket Bunga Semarang", 10003 category: "Collection", 10004 url: "/collections/buket-bunga-semarang", 10005 images: " ", 10006 price: " " 10007 }, { 10008 label: "Buket Bunga Sidoarjo", 10009 category: "Collection", 10010 url: "/collections/buket-bunga-sidoarjo", 10011 images: " ", 10012 price: " " 10013 }, { 10014 label: "Buket Bunga Surabaya", 10015 category: "Collection", 10016 url: "/collections/buket-bunga-surabaya", 10017 images: " ", 10018 price: " " 10019 }, { 10020 label: "Buket Bunga Tangerang", 10021 category: "Collection", 10022 url: "/collections/buket-bunga-tangerang", 10023 images: " ", 10024 price: " " 10025 }, { 10026 label: "Buket Bunga Uang", 10027 category: "Collection", 10028 url: "/collections/buket-bunga-uang", 10029 images: " ", 10030 price: " " 10031 }, { 10032 label: "Buket Bunga Valentine", 10033 category: "Collection", 10034 url: "/collections/buket-bunga-valentine", 10035 images: " ", 10036 price: " " 10037 }, { 10038 label: "Buket Bunga Yogyakarta", 10039 category: "Collection", 10040 url: "/collections/buket-bunga-jogja", 10041 images: " ", 10042 price: " " 10043 }, { 10044 label: "Bunga Anggrek Bali", 10045 category: "Collection", 10046 url: "/collections/bunga-anggrek-bali", 10047 images: " ", 10048 price: " " 10049 }, { 10050 label: "Bunga Anggrek Bandung", 10051 category: "Collection", 10052 url: "/collections/bunga-anggrek-bandung", 10053 images: " ", 10054 price: " " 10055 }, { 10056 label: "Bunga Anggrek Surabaya", 10057 category: "Collection", 10058 url: "/collections/bunga-anggrek-surabaya", 10059 images: " ", 10060 price: " " 10061 }, { 10062 label: "Bunga Anniversary", 10063 category: "Collection", 10064 url: "/collections/bunga-anniversary", 10065 images: " ", 10066 price: " " 10067 }, { 10068 label: "Bunga Artificial", 10069 category: "Collection", 10070 url: "/collections/bunga-artificial", 10071 images: " ", 10072 price: " " 10073 }, { 10074 label: "Bunga Buket", 10075 category: "Collection", 10076 url: "/collections/bunga-buket", 10077 images: " ", 10078 price: " " 10079 }, { 10080 label: "Bunga Carnations Bali", 10081 category: "Collection", 10082 url: "/collections/bunga-carnations-bali", 10083 images: " ", 10084 price: " " 10085 }, { 10086 label: "Bunga Carnations Bandung", 10087 category: "Collection", 10088 url: "/collections/bunga-carnations-bandung", 10089 images: " ", 10090 price: " " 10091 }, { 10092 label: "Bunga Carnations Surabaya", 10093 category: "Collection", 10094 url: "/collections/bunga-carnations-surabaya", 10095 images: " ", 10096 price: " " 10097 }, { 10098 label: "Bunga Daisy Bali", 10099 category: "Collection", 10100 url: "/collections/bunga-daisy-bali", 10101 images: " ", 10102 price: " " 10103 }, { 10104 label: "Bunga Daisy Bandung", 10105 category: "Collection", 10106 url: "/collections/bunga-daisy-bandung", 10107 images: " ", 10108 price: " " 10109 }, { 10110 label: "Bunga Daisy Surabaya", 10111 category: "Collection", 10112 url: "/collections/bunga-daisy-surabaya", 10113 images: " ", 10114 price: " " 10115 }, { 10116 label: "Bunga Gerbera Bali", 10117 category: "Collection", 10118 url: "/collections/bunga-gerbera-bali", 10119 images: " ", 10120 price: " " 10121 }, { 10122 label: "Bunga Gerbera Bandung", 10123 category: "Collection", 10124 url: "/collections/bunga-gerbera-bandung", 10125 images: " ", 10126 price: " " 10127 }, { 10128 label: "Bunga Gerbera Surabaya", 10129 category: "Collection", 10130 url: "/collections/bunga-gerbera-surabaya", 10131 images: " ", 10132 price: " " 10133 }, { 10134 label: "Bunga Imlek", 10135 category: "Collection", 10136 url: "/collections/rangkaian-bunga-tahun-baru-imlek", 10137 images: " ", 10138 price: " " 10139 }, { 10140 label: "Bunga Lebaran", 10141 category: "Collection", 10142 url: "/collections/rangkaian-bunga-lebaran", 10143 images: " ", 10144 price: " " 10145 }, { 10146 label: "Bunga Lily Bali", 10147 category: "Collection", 10148 url: "/collections/bunga-lily-bali", 10149 images: " ", 10150 price: " " 10151 }, { 10152 label: "Bunga Lily Bandung", 10153 category: "Collection", 10154 url: "/collections/bunga-lily-bandung", 10155 images: " ", 10156 price: " " 10157 }, { 10158 label: "Bunga Lily Surabaya", 10159 category: "Collection", 10160 url: "/collections/bunga-lily-surabaya", 10161 images: " ", 10162 price: " " 10163 }, { 10164 label: "Bunga Matahari Bali", 10165 category: "Collection", 10166 url: "/collections/bunga-matahari-bali", 10167 images: " ", 10168 price: " " 10169 }, { 10170 label: "Bunga Matahari Bandung", 10171 category: "Collection", 10172 url: "/collections/bunga-matahari-bandung", 10173 images: " ", 10174 price: " " 10175 }, { 10176 label: "Bunga Matahari Surabaya", 10177 category: "Collection", 10178 url: "/collections/bunga-matahari-surabaya", 10179 images: " ", 10180 price: " " 10181 }, { 10182 label: "Bunga Mawar Bali", 10183 category: "Collection", 10184 url: "/collections/bunga-mawar-bali", 10185 images: " ", 10186 price: " " 10187 }, { 10188 label: "Bunga Mawar Bandung", 10189 category: "Collection", 10190 url: "/collections/bunga-mawar-bandung", 10191 images: " ", 10192 price: " " 10193 }, { 10194 label: "Bunga Mawar Surabaya", 10195 category: "Collection", 10196 url: "/collections/bunga-mawar-surabaya", 10197 images: " ", 10198 price: " " 10199 }, { 10200 label: "Bunga Meja", 10201 category: "Collection", 10202 url: "/collections/bunga-meja", 10203 images: " ", 10204 price: " " 10205 }, { 10206 label: "Bunga Meja Bali", 10207 category: "Collection", 10208 url: "/collections/bunga-meja-bali", 10209 images: " ", 10210 price: " " 10211 }, { 10212 label: "Bunga Meja Bandung", 10213 category: "Collection", 10214 url: "/collections/bunga-meja-bandung", 10215 images: " ", 10216 price: " " 10217 }, { 10218 label: "Bunga Meja Batam", 10219 category: "Collection", 10220 url: "/collections/bunga-meja-batam", 10221 images: " ", 10222 price: " " 10223 }, { 10224 label: "Bunga Meja Jepara", 10225 category: "Collection", 10226 url: "/collections/bunga-meja-jepara", 10227 images: " ", 10228 price: " " 10229 }, { 10230 label: "Bunga Meja Medan", 10231 category: "Collection", 10232 url: "/collections/bunga-meja-medan", 10233 images: " ", 10234 price: " " 10235 }, { 10236 label: "Bunga Meja Semarang", 10237 category: "Collection", 10238 url: "/collections/bunga-meja-semarang", 10239 images: " ", 10240 price: " " 10241 }, { 10242 label: "Bunga Meja Sidoarjo", 10243 category: "Collection", 10244 url: "/collections/bunga-meja-sidoarjo", 10245 images: " ", 10246 price: " " 10247 }, { 10248 label: "Bunga Meja Surabaya", 10249 category: "Collection", 10250 url: "/collections/bunga-meja-surabaya", 10251 images: " ", 10252 price: " " 10253 }, { 10254 label: "Bunga Meja Tangerang", 10255 category: "Collection", 10256 url: "/collections/bunga-meja-tangerang", 10257 images: " ", 10258 price: " " 10259 }, { 10260 label: "Bunga Meja Yogyakarta", 10261 category: "Collection", 10262 url: "/collections/bunga-meja-jogja", 10263 images: " ", 10264 price: " " 10265 }, { 10266 label: "Bunga Modern Pastel Bali", 10267 category: "Collection", 10268 url: "/collections/bunga-modern-pastel-bali", 10269 images: " ", 10270 price: " " 10271 }, { 10272 label: "Bunga Modern Pastel Bandung", 10273 category: "Collection", 10274 url: "/collections/bunga-modern-pastel-bandung", 10275 images: " ", 10276 price: " " 10277 }, { 10278 label: "Bunga Modern Pastel Medan", 10279 category: "Collection", 10280 url: "/collections/bunga-modern-pastel-medan", 10281 images: " ", 10282 price: " " 10283 }, { 10284 label: "Bunga Modern Pastel Semarang", 10285 category: "Collection", 10286 url: "/collections/bunga-modern-pastel-semarang", 10287 images: " ", 10288 price: " " 10289 }, { 10290 label: "Bunga Modern Pastel Surabaya", 10291 category: "Collection", 10292 url: "/collections/bunga-modern-pastel-surabaya", 10293 images: " ", 10294 price: " " 10295 }, { 10296 label: "Bunga Modern Pastel Yogyakarta", 10297 category: "Collection", 10298 url: "/collections/bunga-modern-pastel-yogyakarta", 10299 images: " ", 10300 price: " " 10301 }, { 10302 label: "Bunga Natal", 10303 category: "Collection", 10304 url: "/collections/rangkaian-bunga-christmas", 10305 images: " ", 10306 price: " " 10307 }, { 10308 label: "Bunga Papan", 10309 category: "Collection", 10310 url: "/collections/bunga-papan", 10311 images: " ", 10312 price: " " 10313 }, { 10314 label: "Bunga Pernikahan", 10315 category: "Collection", 10316 url: "/collections/bunga-pernikahan", 10317 images: " ", 10318 price: " " 10319 }, { 10320 label: "Bunga Plastik", 10321 category: "Collection", 10322 url: "/collections/bunga-plastik", 10323 images: " ", 10324 price: " " 10325 }, { 10326 label: "Bunga Tulip", 10327 category: "Collection", 10328 url: "/collections/bunga-tulip", 10329 images: " ", 10330 price: " " 10331 }, { 10332 label: "Bunga Ulang Tahun", 10333 category: "Collection", 10334 url: "/collections/bunga-ulang-tahun", 10335 images: " ", 10336 price: " " 10337 }, { 10338 label: "Bunga Wisuda", 10339 category: "Collection", 10340 url: "/collections/karangan-bunga-wisuda", 10341 images: " ", 10342 price: " " 10343 }, { 10344 label: "Cake", 10345 category: "Collection", 10346 url: "/collections/kue", 10347 images: " ", 10348 price: " " 10349 }, { 10350 label: "Cake", 10351 category: "Collection", 10352 url: "/collections/cake", 10353 images: " ", 10354 price: " " 10355 }, { 10356 label: "Cake Sameday Delivery", 10357 category: "Collection", 10358 url: "/collections/cake-sameday-delivery", 10359 images: " ", 10360 price: " " 10361 }, { 10362 label: "Cake, Hampers & Gifts", 10363 category: "Collection", 10364 url: "/collections/cake-hampers", 10365 images: " ", 10366 price: " " 10367 }, { 10368 label: "Cancer âï¸ 22June - 22July", 10369 category: "Collection", 10370 url: "/collections/kado-untuk-zodiak-cancer", 10371 images: " ", 10372 price: " " 10373 }, { 10374 label: "Capricorn âï¸ 21Dec - 19Jan", 10375 category: "Collection", 10376 url: "/collections/kado-untuk-zodiak-capricorn", 10377 images: " ", 10378 price: " " 10379 }, { 10380 label: "Care Packages", 10381 category: "Collection", 10382 url: "/collections/toko-parcel-murah", 10383 images: " ", 10384 price: " " 10385 }, { 10386 label: "Care Packages (Keluarga, Sahabat, Karyawan)", 10387 category: "Collection", 10388 url: "/collections/sehat-bebas-corona", 10389 images: " ", 10390 price: " " 10391 }, { 10392 label: "Carnations", 10393 category: "Collection", 10394 url: "/collections/bunga-anyelir", 10395 images: " ", 10396 price: " " 10397 }, { 10398 label: "Celebration", 10399 category: "Collection", 10400 url: "/collections/celebration", 10401 images: " ", 10402 price: " " 10403 }, { 10404 label: "Chléa Paperie", 10405 category: "Collection", 10406 url: "/collections/chlea-pape
10406rie", 10407 images: " ", 10408 price: " " 10409 }, { 10410 label: "Chocodot", 10411 category: "Collection", 10412 url: "/collections/chocodot", 10413 images: " ", 10414 price: " " 10415 }, { 10416 label: "Christmas", 10417 category: "Collection", 10418 url: "/collections/christmas", 10419 images: " ", 10420 price: " " 10421 }, { 10422 label: "Classic Cake", 10423 category: "Collection", 10424 url: "/collections/classic-cake", 10425 images: " ", 10426 price: " " 10427 }, { 10428 label: "Classic CNY Hampers", 10429 category: "Collection", 10430 url: "/collections/classic-cny-hampers", 10431 images: " ", 10432 price: " " 10433 }, { 10434 label: "Classic CNY Hampers Luar Jabodetabek", 10435 category: "Collection", 10436 url: "/collections/classic-cny-hampers-luar-jabodetabek", 10437 images: " ", 10438 price: " " 10439 }, { 10440 label: "Classic Hampers", 10441 category: "Collection", 10442 url: "/collections/classic-hampers", 10443 images: " ", 10444 price: " " 10445 }, { 10446 label: "Classic Hampers Luar Jadetabek", 10447 category: "Collection", 10448 url: "/collections/classic-hampers-luar-jadetabek", 10449 images: " ", 10450 price: " " 10451 }, { 10452 label: "Classic Style Flowers", 10453 category: "Collection", 10454 url: "/collections/classic-style-flowers", 10455 images: " ", 10456 price: " " 10457 }, { 10458 label: "Cokelat", 10459 category: "Collection", 10460 url: "/collections/permen-coklat", 10461 images: " ", 10462 price: " " 10463 }, { 10464 label: "Collection List", 10465 category: "Collection", 10466 url: "/collections/collection-list", 10467 images: " ", 10468 price: " " 10469 }, { 10470 label: "Condolences", 10471 category: "Collection", 10472 url: "/collections/axa-condolences", 10473 images: " ", 10474 price: " " 10475 }, { 10476 label: "Congratulations", 10477 category: "Collection", 10478 url: "/collections/rangkaian-bunga-ucapan-selamat", 10479 images: " ", 10480 price: " " 10481 }, { 10482 label: "Corporate Gifts", 10483 category: "Collection", 10484 url: "/collections/corporate-gifts", 10485 images: " ", 10486 price: " " 10487 }, { 10488 label: "Corporate Hampers", 10489 category: "Collection", 10490 url: "/collections/corporate-hampers", 10491 images: " ", 10492 price: " " 10493 }, { 10494 label: "Couple Gift", 10495 category: "Collection", 10496 url: "/collections/couple-gift", 10497 images: " ", 10498 price: " " 10499 }, { 10500 label: "Craft Sweetbox Newborn", 10501 category: "Collection", 10502 url: "/collections/craft-sweetbox-newborn", 10503 images: " ", 10504 price: " " 10505 }, { 10506 label: "Crystal Florarium", 10507 category: "Collection", 10508 url: "/collections/crystal-florarium", 10509 images: " ", 10510 price: " " 10511 }, { 10512 label: "Cuddlemate Doll", 10513 category: "Collection", 10514 url: "/collections/boneka-lucu", 10515 images: " ", 10516 price: " " 10517 }, { 10518 label: "Cufflinks", 10519 category: "Collection", 10520 url: "/collections/cufflinks", 10521 images: " ", 10522 price: " " 10523 }, { 10524 label: "Cupcakes", 10525 category: "Collection", 10526 url: "/collections/cupcakes", 10527 images: " ", 10528 price: " " 10529 }, { 10530 label: "Custom Alat Tulis", 10531 category: "Collection", 10532 url: "/collections/alat-tulis", 10533 images: " ", 10534 price: " " 10535 }, { 10536 label: "Custom Cake", 10537 category: "Collection", 10538 url: "/collections/custom-cake", 10539 images: " ", 10540 price: " " 10541 }, { 10542 label: "Custom Card Holder", 10543 category: "Collection", 10544 url: "/collections/custom-card-holder", 10545 images: " ", 10546 price: " " 10547 }, { 10548 label: "Custom Coaster", 10549 category: "Collection", 10550 url: "/collections/custom-coaster", 10551 images: " ", 10552 price: " " 10553 }, { 10554 label: "Custom Cutlery", 10555 category: "Collection", 10556 url: "/collections/custom-cutlery", 10557 images: " ", 10558 price: " " 10559 }, { 10560 label: "Custom E-Money", 10561 category: "Collection", 10562 url: "/collections/custom-e-money", 10563 images: " ", 10564 price: " " 10565 }, { 10566 label: "Custom Earpod", 10567 category: "Collection", 10568 url: "/collections/custom-earpod", 10569 images: " ", 10570 price: " " 10571 }, { 10572 label: "Custom Fan", 10573 category: "Collection", 10574 url: "/collections/custom-fan", 10575 images: " ", 10576 price: " " 10577 }, { 10578 label: "Custom Jewelry", 10579 category: "Collection", 10580 url: "/collections/custom-jewelry", 10581 images: " ", 10582 price: " " 10583 }, { 10584 label: "Custom Keychain", 10585 category: "Collection", 10586 url: "/collections/custom-keychain", 10587 images: " ", 10588 price: " " 10589 }, { 10590 label: "Custom Medallion", 10591 category: "Collection", 10592 url: "/collections/custom-medallion", 10593 images: " ", 10594 price: " " 10595 }, { 10596 label: "Custom Mirror", 10597 category: "Collection", 10598 url: "/collections/custom-mirror", 10599 images: " ", 10600 price: " " 10601 }, { 10602 label: "Custom Mug", 10603 category: "Collection", 10604 url: "/collections/custom-mug", 10605 images: " ", 10606 price: " " 10607 }, { 10608 label: "Custom Necklace", 10609 category: "Collection", 10610 url: "/collections/custom-necklace", 10611 images: " ", 10612 price: " " 10613 }, { 10614 label: "Custom Notebook", 10615 category: "Collection", 10616 url: "/collections/custom-notebook", 10617 images: " ", 10618 price: " " 10619 }, { 10620 label: "Custom Pen & Pencil", 10621 category: "Collection", 10622 url: "/collections/custom-pen-pencil", 10623 images: " ", 10624 price: " " 10625 }, { 10626 label: "Custom Photo Frame", 10627 category: "Collection", 10628 url: "/collections/photo-frame", 10629 images: " ", 10630 price: " " 10631 }, { 10632 label: "Custom Pillow", 10633 category: "Collection", 10634 url: "/collections/bantal-custom", 10635 images: " ", 10636 price: " " 10637 }, { 10638 label: "Custom Powerbank", 10639 category: "Collection", 10640 url: "/collections/custom-powerbank", 10641 images: " ", 10642 price: " " 10643 }, { 10644 label: "Custom Scarf", 10645 category: "Collection", 10646 url: "/collections/custom-scarf", 10647 images: " ", 10648 price: " " 10649 }, { 10650 label: "Custom Speaker", 10651 category: "Collection", 10652 url: "/collections/custom-speaker", 10653 images: " ", 10654 price: " " 10655 }, { 10656 label: "Custom T-Shirt", 10657 category: "Collection", 10658 url: "/collections/custom-t-shirt", 10659 images: " ", 10660 price: " " 10661 }, { 10662 label: "Custom Tote Bag", 10663 category: "Collection", 10664 url: "/collections/custom-tote-bag", 10665 images: " ", 10666 price: " " 10667 }, { 10668 label: "Custom Tumbler Minuman", 10669 category: "Collection", 10670 url: "/collections/custom-tumbler-minuman", 10671 images: " ", 10672 price: " " 10673 }, { 10674 label: "D'paris", 10675 category: "Collection", 10676 url: "/collections/dparis", 10677 images: " ", 10678 price: " " 10679 }, { 10680 label: "Daisy", 10681 category: "Collection", 10682 url: "/collections/bunga-aster", 10683 images: " ", 10684 price: " " 10685 }, { 10686 label: "Dekorasi", 10687 category: "Collection", 10688 url: "/collections/dekorasi", 10689 images: " ", 10690 price: " " 10691 }, { 10692 label: "Dekorasi Duka Cita", 10693 category: "Collection", 10694 url: "/collections/dekorasi-bunga-duka-cita", 10695 images: " ", 10696 price: " " 10697 }, { 10698 label: "Dekorasi Pemakaman", 10699 category: "Collection", 10700 url: "/collections/dekorasi-pemakaman", 10701 images: " ", 10702 price: " " 10703 }, { 10704 label: "Dekorasi Pernikahan", 10705 category: "Collection", 10706 url: "/collections/dekorasi-bunga-pernikahan", 10707 images: " ", 10708 price: " " 10709 }, { 10710 label: "Dekorasi Ulang Tahun", 10711 category: "Collection", 10712 url: "/collections/dekorasi-bunga-ulang-tahun", 10713 images: " ", 10714 price: " " 10715 }, { 10716 label: "Delivery", 10717 category: "Collection", 10718 url: "/collections/delivery", 10719 images: " ", 10720 price: " " 10721 }, { 10722 label: "Deluxe Newborn Hampers Collection", 10723 category: "Collection", 10724 url: "/collections/deluxe-newborn-hampers-collection", 10725 images: " ", 10726 price: " " 10727 }, { 10728 label: "Digital Gift", 10729 category: "Collection", 10730 url: "/collections/digital-gift", 10731 images: " ", 10732 price: " " 10733 }, { 10734 label: "Donasi", 10735 category: "Collection", 10736 url: "/collections/donasi", 10737 images: " ", 10738 price: " " 10739 }, { 10740 label: "E-Card", 10741 category: "Collection", 10742 url: "/collections/ecard", 10743 images: " ", 10744 price: " " 10745 }, { 10746 label: "E-Gift Card", 10747 category: "Collection", 10748 url: "/collections/e-gift-card", 10749 images: " ", 10750 price: " " 10751 }, { 10752 label: "Earrings", 10753 category: "Collection", 10754 url: "/collections/anting", 10755 images: " ", 10756 price: " " 10757 }, { 10758 label: "Edible Gift", 10759 category: "Collection", 10760 url: "/collections/edible-gift", 10761 images: " ", 10762 price: " " 10763 }, { 10764 label: "Enchanted Grande Love Pirouette", 10765 category: "Collection", 10766 url: "/collections/enchanted-grande-love-pirouette", 10767 images: " ", 10768 price: " " 10769 }, { 10770 label: "Enchanted Love Pirouette", 10771 category: "Collection", 10772 url: "/collections/enchanted-love-pirouette", 10773 images: " ", 10774 price: " " 10775 }, { 10776 label: "Engagement", 10777 category: "Collection", 10778 url: "/collections/rangkaian-bunga-lamaran", 10779 images: " ", 10780 price: " " 10781 }, { 10782 label: "Expression", 10783 category: "Collection", 10784 url: "/collections/expression", 10785 images: " ", 10786 price: " " 10787 }, {
10788 label: "Father's Day Special", 10789 category: "Collection", 10790 url: "/collections/kado-untuk-ayah", 10791 images: " ", 10792 price: " " 10793 }, { 10794 label: "Ferrari", 10795 category: "Collection", 10796 url: "/collections/ferrari", 10797 images: " ", 10798 price: " " 10799 }, { 10800 label: "Ferrero Rocher", 10801 category: "Collection", 10802 url: "/collections/ferrero-rocher", 10803 images: " ", 10804 price: " " 10805 }, { 10806 label: "Festival Belanja Online", 10807 category: "Collection", 10808 url: "/collections/fbo-2018", 10809 images: " ", 10810 price: " " 10811 }, { 10812 label: "Floatbox", 10813 category: "Collection", 10814 url: "/collections/floatbox", 10815 images: " ", 10816 price: " " 10817 }, { 10818 label: "Flower", 10819 category: "Collection", 10820 url: "/collections/flower", 10821 images: " ", 10822 price: " " 10823 }, { 10824 label: "Flower Best Deals", 10825 category: "Collection", 10826 url: "/collections/flower-best-deals", 10827 images: " ", 10828 price: " " 10829 }, { 10830 label: "Flowers", 10831 category: "Collection", 10832 url: "/collections/toko-bunga", 10833 images: " ", 10834 price: " " 10835 }, { 10836 label: "Flowers For Him", 10837 category: "Collection", 10838 url: "/collections/bunga-untuk-pria", 10839 images: " ", 10840 price: " " 10841 }, { 10842 label: "Flowers Style", 10843 category: "Collection", 10844 url: "/collections/style", 10845 images: " ", 10846 price: " " 10847 }, { 10848 label: "Flowers Type", 10849 category: "Collection", 10850 url: "/collections/type", 10851 images: " ", 10852 price: " " 10853 }, { 10854 label: "For Her", 10855 category: "Collection", 10856 url: "/collections/kado-untuk-wanita", 10857 images: " ", 10858 price: " " 10859 }, { 10860 label: "For Him", 10861 category: "Collection", 10862 url: "/collections/kado-untuk-pria", 10863 images: " ", 10864 price: " " 10865 }, { 10866 label: "Forever Flower", 10867 category: "Collection", 10868 url: "/collections/forever-flower", 10869 images: " ", 10870 price: " " 10871 }, { 10872 label: "Forever Flower Holo Series", 10873 category: "Collection", 10874 url: "/collections/forever-flower-holo-series", 10875 images: " ", 10876 price: " " 10877 }, { 10878 label: "Forever Flower x NestBloom", 10879 category: "Collection", 10880 url: "/collections/forever-flower-x-nestbloom", 10881 images: " ", 10882 price: " " 10883 }, { 10884 label: "Fortune Hampers", 10885 category: "Collection", 10886 url: "/collections/fortune-hampers", 10887 images: " ", 10888 price: " " 10889 }, { 10890 label: "Frank & Co", 10891 category: "Collection", 10892 url: "/collections/franknco", 10893 images: " ", 10894 price: " " 10895 }, { 10896 label: "Fresh Flowers", 10897 category: "Collection", 10898 url: "/collections/fresh-flower", 10899 images: " ", 10900 price: " " 10901 }, { 10902 label: "Gantungan Kunci", 10903 category: "Collection", 10904 url: "/collections/gantungan-kunci", 10905 images: " ", 10906 price: " " 10907 }, { 10908 label: "Gelato", 10909 category: "Collection", 10910 url: "/collections/gelato", 10911 images: " ", 10912 price: " " 10913 }, { 10914 label: "Gelato Pie", 10915 category: "Collection", 10916 url: "/collections/gelato-pie", 10917 images: " ", 10918 price: " " 10919 }, { 10920 label: "Gemini âï¸ 21May - 21June", 10921 category: "Collection", 10922 url: "/collections/kado-untuk-zodiak-gemini", 10923 images: " ", 10924 price: " " 10925 }, { 10926 label: "Gerbera", 10927 category: "Collection", 10928 url: "/collections/gerbera", 10929 images: " ", 10930 price: " " 10931 }, { 10932 label: "Get Well Soon", 10933 category: "Collection", 10934 url: "/collections/rangkaian-bunga-gws", 10935 images: " ", 10936 price: " " 10937 }, { 10938 label: "Giant Flower Bali", 10939 category: "Collection", 10940 url: "/collections/giant-flower-bali", 10941 images: " ", 10942 price: " " 10943 }, { 10944 label: "Giant Flower Bandung", 10945 category: "Collection", 10946 url: "/collections/giant-flower-bandung", 10947 images: " ", 10948 price: " " 10949 }, { 10950 label: "Giant Flower Bouquet", 10951 category: "Collection", 10952 url: "/collections/giant-flower", 10953 images: " ", 10954 price: " " 10955 }, { 10956 label: "Gift", 10957 category: "Collection", 10958 url: "/collections/souvenir-kado-hadiah", 10959 images: " ", 10960 price: " " 10961 }, { 10962 label: "Gift by Recipient", 10963 category: "Collection", 10964 url: "/collections/gift-by-recipient", 10965 images: " ", 10966 price: " " 10967 }, { 10968 label: "Gift for Your Girlfriend", 10969 category: "Collection", 10970 url: "/collections/kado-untuk-pacar-wanita", 10971 images: " ", 10972 price: " " 10973 }, { 10974 label: "Gifts", 10975 category: "Collection", 10976 url: "/collections/gifts", 10977 images: " ", 10978 price: " " 10979 }, { 10980 label: "Glassbox Hampers", 10981 category: "Collection", 10982 url: "/collections/glassbox-hampers", 10983 images: " ", 10984 price: " " 10985 }, { 10986 label: "Glassware Hampers", 10987 category: "Collection", 10988 url: "/collections/parcel-pecah-belah", 10989 images: " ", 10990 price: " " 10991 }, { 10992 label: "Gold Jewelry", 10993 category: "Collection", 10994 url: "/collections/perhiasan-emas", 10995 images: " ", 10996 price: " " 10997 }, { 10998 label: "Grand Opening", 10999 category: "Collection", 11000 url: "/collections/grand-opening", 11001 images: " ", 11002 price: " " 11003 }, { 11004 label: "Granola", 11005 category: "Collection", 11006 url: "/collections/granola", 11007 images: " ", 11008 price: " " 11009 }, { 11010 label: "Green Tea", 11011 category: "Collection", 11012 url: "/collections/green-tea", 11013 images: " ", 11014 price: " " 11015 }, { 11016 label: "Greeting Card All", 11017 category: "Collection", 11018 url: "/collections/greeting-card-all",
11019 images: " ", 11020 price: " " 11021 }, { 11022 label: "Greeting Card Anniversary", 11023 category: "Collection", 11024 url: "/collections/greeting-card-anniversary", 11025 images: " ", 11026 price: " " 11027 }, { 11028 label: "Greeting Card Birthday", 11029 category: "Collection", 11030 url: "/collections/greeting-card-birthday", 11031 images: " ", 11032 price: " " 11033 }, { 11034 label: "Greeting Card Eid", 11035 category: "Collection", 11036 url: "/collections/greeting-card-eid", 11037 images: " ", 11038 price: " " 11039 }, { 11040 label: "Greeting Card Graduation", 11041 category: "Collection", 11042 url: "/collections/greeting-card-graduation", 11043 images: " ", 11044 price: " " 11045 }, { 11046 label: "Greeting Card Mother's Day", 11047 category: "Collection", 11048 url: "/collections/greeting-card-mothers-day", 11049 images: " ", 11050 price: " " 11051 }, { 11052 label: "Greeting Card Newborn", 11053 category: "Collection", 11054 url: "/collections/greeting-card-newborn", 11055 images: " ", 11056 price: " " 11057 }, { 11058 label: "Greeting Card Others", 11059 category: "Collection", 11060 url: "/collections/greeting-card-others", 11061 images: " ", 11062 price: " " 11063 }, { 11064 label: "Greeting Card Valentine", 11065 category: "Collection", 11066 url: "/collections/greeting-card-valentine", 11067 images: " ", 11068 price: " " 11069 }, { 11070 label: "Greeting Card Wedding", 11071 category: "Collection", 11072 url: "/collections/greeting-card-wedding", 11073 images: " ", 11074 price: " " 11075 }, { 11076 label: "Grooming", 11077 category: "Collection", 11078 url: "/collections/grooming", 11079 images: " ", 11080 price: " " 11081 }, { 11082 label: "Hadiah Tahun Baru Imlek", 11083 category: "Collection", 11084 url: "/collections/kado-imlek", 11085 images: " ", 11086 price: " " 11087 }, { 11088 label: "Hadiah untuk Bayi", 11089 category: "Collection", 11090 url: "/collections/kado-untuk-bayi", 11091 images: " ", 11092 price: " " 11093 }, { 11094 label: "Hadiah untuk Pacar", 11095 category: "Collection", 11096 url: "/collections/kado-untuk-pacar", 11097 images: " ", 11098 price: " " 11099 }, { 11100 label: "Hadiah untuk Pernikahan", 11101 category: "Collection", 11102 url: "/collections/kado-untuk-pernikahan", 11103 images: " ", 11104 price: " " 11105 }, { 11106 label: "Hadiah untuk Sahabat", 11107 category: "Collection", 11108 url: "/collections/kado-untuk-sahabat", 11109 images: " ", 11110 price: " " 11111 }, { 11112 label: "Hampers", 11113 category: "Collection", 11114 url: "/collections/hampers", 11115 images: " ", 11116 price: " " 11117 }, { 11118 label: "Hampers Baby Boy", 11119 category: "Collection", 11120 url: "/collections/hampers-baby-boy", 11121 images: " ", 11122 price: " " 11123 }, { 11124 label: "Hampers Baby Girl", 11125 category: "Collection", 11126 url: "/collections/hampers-baby-girl", 11127 images: " ", 11128 price: " " 11129 }, { 11130 label: "Hampers Baby Unisex", 11131 category: "Collection", 11132 url: "/collections/hampers-baby-unisex", 11133 images: " ", 11134 price: " " 11135 }, { 11136 label: "Hampers Delivery Indonesia", 11137 category: "Collection", 11138 url: "/collections/parcel-indonesia", 11139 images: " ", 11140 price: " " 11141 }, { 11142 label: "Hampers Lebaran 2026", 11143 category: "Collection", 11144 url: "/collections/parcel-lebaran", 11145 images: " ", 11146 price: " " 11147 }, { 11148 label: "Hampers Lebaran Bali", 11149 category: "Collection", 11150 url: "/collections/hampers-lebaran-bali", 11151 images: " ", 11152 price: " " 11153 }, { 11154 label: "Hampers Lebaran Bandung", 11155 category: "Collection", 11156 url: "/collections/hampers-lebaran-bandung", 11157 images: " ", 11158 price: " " 11159 }, { 11160 label: "Hampers Lebaran Jakarta", 11161 category: "Collection", 11162 url: "/collections/hampers-lebaran-jakarta", 11163 images: " ", 11164 price: " " 11165 }, { 11166 label: "Hampers Lebaran Semarang", 11167 category: "Collection", 11168 url: "/collections/hampers-lebaran-semarang", 11169 images: " ", 11170 price: " " 11171 }, { 11172 label: "Hampers Lebaran Surabaya", 11173 category: "Collection", 11174 url: "/collections/hampers-lebaran-surabaya", 11175 images: " ", 11176 price: " " 11177 }, { 11178 label: "Hampers Lebaran Yogyakarta", 11179 category: "Collection", 11180 url: "/collections/hampers-lebaran-yogyakarta", 11181 images: " ", 11182 price: " " 11183 }, { 11184 label: "Hand Sanitizer", 11185 category: "Collection", 11186 url: "/collections/hand-sanitizer", 11187 images: " ", 11188 price: " " 11189 }, { 11190 label: "Happy Birthday", 11191 category: "Collection", 11192 url: "/collections/kado-ulang-tahun", 11193 images: " ", 11194 price: " " 11195 }, { 11196 label: "Harbolnas", 11197 category: "Collection", 11198 url: "/collections/harbolnas-2018", 11199 images: " ", 11200 price: " " 11201 }, { 11202 label: "Harbolnas Produk Lokal", 11203 category: "Collection", 11204 url: "/collections/produk-lokal", 11205 images: " ", 11206 price: " " 11207 }, { 11208 label: "Hari Belanja Online Nasional", 11209 category: "Collection", 11210 url: "/collections/harbolnas", 11211 images: " ", 11212 price: " " 11213 }, { 11214 label: "Hari Guru", 11215 category: "Collection", 11216 url: "/collections/hari-guru", 11217 images: " ", 11218 price: " " 11219 }, { 11220 label: "Healthy Creations", 11221 category: "Collection", 11222 url: "/collections/healthy-creations", 11223 images: " ", 11224 price: " " 11225 }, { 11226 label: "Healthy Hampers", 11227 category: "Collection", 11228 url: "/collections/healthy-hampers", 11229 images: " ", 11230 price: " " 11231 }, { 11232 label: "Heritage Box", 11233 category: "Collection", 11234 url: "/collections/heritage-boxes", 11235 images: " ", 11236 price: " " 11237 }, { 11238 label: "Heritage Chinese New Year Hampers", 11239 category: "Collection", 11240 url: "/collections/heritage-chinese-new-year-hampers", 11241 images: " ", 11242 price: " " 11243 }, { 11244 label: "Heritage Christmas Hampers", 11245 category: "Collection", 11246 url: "/collections/heritage-christmas-hampers", 11247 images: " ", 11248 price: " " 11249 }, { 11250 label: "Heritage Hampers", 11251 category: "Collection", 11252 url: "/collections/heritage-hampers", 11253 images: " ", 11254 price: " " 11255 }, { 11256 label: "Heritage Ramadan Hampers", 11257 category: "Collection", 11258 url: "/collections/heritage-ramadan-hampers", 11259 images: " ", 11260 price: " " 11261 }, { 11262 label: "Hexa Hampers", 11263 category: "Collection", 11264 url: "/collections/hexa-hampers", 11265 images: " ", 11266 price: " " 11267 }, { 11268 label: "Hexa Hampers Luar Jadetabek", 11269 category: "Collection", 11270 url: "/collections/hexa-hampers-luar-jadetabek", 11271 images: " ", 11272 price: " " 11273 }, { 11274 label: "Hexa Newborn", 11275 category: "Collection", 11276 url: "/collections/hexa-newborn", 11277 images: " ", 11278 price: " " 11279 }, { 11280 label: "Holo Bag", 11281 category: "Collection", 11282 url: "/collections/holo-bag", 11283 images: " ", 11284 price: " " 11285 }, { 11286 label: "Holo Series", 11287 category: "Collection", 11288 url: "/collections/holo-series", 11289 images: " ", 11290 price: " " 11291 }, { 11292 label: "Home Decoration & Photo Frame", 11293 category: "Collection", 11294 url: "/collections/home-decoration", 11295 images: " ", 11296 price: " " 11297 }, {
11298 label: "Hospitalization", 11299 category: "Collection", 11300 url: "/collections/axa-hospitalization", 11301 images: " ", 11302 price: " " 11303 }, { 11304 label: "House Hampers", 11305 category: "Collection", 11306 url: "/collections/house-hampers", 11307 images: " ", 11308 price: " " 11309 }, { 11310 label: "I'm Sorry", 11311 category: "Collection", 11312 url: "/collections/rangkaian-bunga-sorry", 11313 images: " ", 11314 price: " " 11315 }, { 11316 label: "Ice Cream Cake", 11317 category: "Collection", 11318 url: "/collections/ice-cream-cake", 11319 images: " ", 11320 price: " " 11321 }, { 11322 label: "Idul Fitri", 11323 category: "Collection", 11324 url: "/collections/rangkaian-bunga-idul-fitri", 11325 images: " ", 11326 price: " " 11327 }, { 11328 label: "Jam Tangan", 11329 category: "Collection", 11330 url: "/collections/jam-tangan", 11331 images: " ", 11332 price: " " 11333 }, { 11334 label: "Jam Tangan Couple", 11335 category: "Collection", 11336 url: "/collections/jam-tangan-couple", 11337 images: " ", 11338 price: " " 11339 }, { 11340 label: "Jam Tangan Pria", 11341 category: "Collection", 11342 url: "/collections/jam-tangan-pria", 11343 images: " ", 11344 price: " " 11345 }, { 11346 label: "Jam Tangan Wanita", 11347 category: "Collection", 11348 url: "/collections/jam-tangan-wanita", 11349 images: " ", 11350 price: " " 11351 }, { 11352 label: "Jasa Packing Parcel", 11353 category: "Collection", 11354 url: "/collections/jasa-packing-parcel", 11355 images: " ", 11356 price: " " 11357 }, { 11358 label: "Jewelry", 11359 category: "Collection", 11360 url: "/collections/jewelry", 11361 images: " ", 11362 price: " " 11363 }, { 11364 label: "Jolly Hampers", 11365 category: "Collection", 11366 url: "/collections/jolly-hampers", 11367 images: " ", 11368 price: " " 11369 }, { 11370 label: "Jual Custom Cake & Hampers Termurah & Terlengkap | Outerbloom Florist & Gift", 11371 category: "Collection", 11372 url: "/collections/custom-cake-hampers", 11373 images: " ", 11374 price: " " 11375 }, { 11376 label: "Just Because", 11377 category: "Collection", 11378 url: "/collections/just-because", 11379 images: " ", 11380 price: " " 11381 }, { 11382 label: "Kado Makanan", 11383 category: "Collection", 11384 url: "/collections/kado-makanan", 11385 images: " ", 11386 price: " " 11387 }, { 11388 label: "Kado Minuman", 11389 category: "Collection", 11390 url: "/collections/kado-minuman", 11391 images: " ", 11392 price: " " 11393 }, { 11394 label: "Kado Natal", 11395 category: "Collection", 11396 url: "/collections/kado-natal", 11397 images: " ", 11398 price: " " 11399 }, { 11400 label: "Kado Unik", 11401 category: "Collection", 11402 url: "/collections/kado-unik", 11403 images: " ", 11404 price: " " 11405 }, { 11406 label: "Kado Valentine Nusantara", 11407 category: "Collection", 11408 url: "/collections/kado-valentine-nusantara", 11409 images: " ", 11410 price: " " 11411 }, { 11412 label: "Kado Valentine untuk Pria", 11413 category: "Collection", 11414 url: "/collections/kado-valentine-untuk-pria", 11415 images: " ", 11416 price: " " 11417 }, { 11418 label: "Kado Wisuda", 11419 category: "Collection", 11420 url: "/collections/kado-wisuda", 11421 images: " ", 11422 price: " " 11423 }, { 11424 label: "Kado Zodiak", 11425 category: "Collection", 11426 url: "/collections/kado-untuk-zodiak", 11427 images: " ", 11428 price: " " 11429 }, { 11430 label: "Karangan Bunga Aceh", 11431 category: "Collection", 11432 url: "/collections/karangan-bunga-aceh", 11433 images: " ", 11434 price: " " 11435 }, { 11436 label: "Karangan Bunga Ambon", 11437 category: "Collection", 11438 url: "/collections/karangan-bunga-ambon", 11439 images: " ", 11440 price: " " 11441 }, { 11442 label: "Karangan Bunga Atambua", 11443 category: "Collection", 11444 url: "/collections/karangan-bunga-atambua", 11445 images: " ", 11446 price: " " 11447 }, { 11448 label: "Karangan Bunga Bali", 11449 category: "Collection", 11450 url: "/collections/karangan-bunga-bali", 11451 images: " ", 11452 price: " " 11453 }, { 11454 label: "Karangan Bunga Balikpapan", 11455 category: "Collection", 11456 url: "/collections/karangan-bunga-balikpapan", 11457 images: " ", 11458 price: " " 11459 }, { 11460 label: "Karangan Bunga Bandung", 11461 category: "Collection", 11462 url: "/collections/karangan-bunga-bandung", 11463 images: " ", 11464 price: " " 11465 }, { 11466 label: "Karangan Bunga Bandung Barat", 11467 category: "Collection", 11468 url: "/collections/karangan-bunga-bandung-barat", 11469 images: " ", 11470 price: " " 11471 }, { 11472 label: "Karangan Bunga Bangka", 11473 category: "Collection", 11474 url: "/collections/karangan-bunga-bangka", 11475 images: " ", 11476 price: " " 11477 }, { 11478 label: "Karangan Bunga Banjarmasin", 11479 category: "Collection", 11480 url: "/collections/karangan-bunga-banjarmasin", 11481 images: " ", 11482 price: " " 11483 }, { 11484 label: "Karangan Bunga Banten", 11485 category: "Collection", 11486 url: "/collections/karangan-bunga-banten", 11487 images: " ", 11488 price: " " 11489 }, { 11490 label: "Karangan Bunga Banyumas", 11491 category: "Collection", 11492 url: "/collections/karangan-bunga-banyumas", 11493 images: " ", 11494 price: " " 11495 }, { 11496 label: "Karangan Bunga Banyuwangi", 11497 category: "Collection", 11498 url: "/collections/karangan-bunga-banyuwangi", 11499 images: " ", 11500 price: " " 11501 }, { 11502 label: "Karangan Bunga Batam", 11503 category: "Collection", 11504 url: "/collections/karangan-bunga-batam", 11505 images: " ", 11506 price: " " 11507 }, { 11508 label: "Karangan Bunga Baubau", 11509 category: "Collection", 11510 url: "/collections/karangan-bunga-baubau", 11511 images: " ", 11512 price: " " 11513 }, { 11514 label: "Karangan Bunga Bengkalis", 11515 category: "Collection", 11516 url: "/collections/karangan-bunga-bengkalis", 11517 images: " ", 11518 price: " " 11519 }, { 11520 label: "Karangan Bunga Bengkayang", 11521 category: "Collection", 11522 url: "/collections/karangan-bunga-bengkayang", 11523 images: " ", 11524 price: " " 11525 }, { 11526 label: "Karangan Bunga Bengkulu", 11527 category: "Collection", 11528 url: "/collections/karangan-bunga-bengkulu", 11529 images: " ", 11530 price: " " 11531 }, { 11532 label: "Karangan Bunga Blora", 11533 category: "Collection", 11534 url: "/collections/karangan-bunga-blora", 11535 images: " ", 11536 price: " " 11537 }, { 11538 label: "Karangan Bunga Bogor", 11539 category: "Collection", 11540 url: "/collections/karangan-bunga-bogor", 11541 images: " ", 11542 price: " " 11543 }, { 11544 label: "Karangan Bunga Bojonegoro", 11545 category: "Collection", 11546 url: "/collections/karangan-bunga-bojonegoro", 11547 images: " ", 11548 price: " " 11549 }, { 11550 label: "Karangan Bunga Boyolali", 11551 category: "Collection", 11552 url: "/collections/karangan-bunga-boyolali", 11553 images: " ", 11554 price: " " 11555 }, { 11556 label: "Karangan Bunga Brebes", 11557 category: "Collection", 11558 url: "/collections/karangan-bunga-brebes", 11559 images: " ", 11560 price: " " 11561 }, { 11562 label: "Karangan Bunga Bukittinggi", 11563 category: "Collection", 11564 url: "/collections/karangan-bunga-bukittinggi", 11565 images: " ", 11566 price: " " 11567 }, { 11568 label: "Karangan Bunga Ciamis", 11569 category: "Collection", 11570 url: "/collections/karangan-bunga-ciamis", 11571 images: " ", 11572 price: " " 11573 }, { 11574 label: "Karangan Bunga Cianjur", 11575 category: "Collection", 11576 url: "/collections/karangan-bunga-cianjur", 11577 images: " ", 11578 price: " " 11579 }, { 11580 label: "Karangan Bunga Cikarang", 11581 category: "Collection", 11582 url: "/collections/karangan-bunga-cikarang", 11583 images: " ", 11584 price: " " 11585 }, { 11586 label: "Karangan Bunga Cikupa", 11587 category: "Collection", 11588 url: "/collections/karangan-bunga-cikupa", 11589 images: " ", 11590 price: " " 11591 }, { 11592 label: "Karangan Bunga Cilacap", 11593 category: "Collection", 11594 url: "/collections/karangan-bunga-cilacap", 11595 images: " ", 11596 price: " " 11597 }, { 11598 label: "Karangan Bunga Cileunyi", 11599 category: "Collection", 11600 url: "/collections/karangan-bunga-cileunyi", 11601 images: " ", 11602 price: " " 11603 }, { 11604 label: "Karangan Bunga Cimahi", 11605 category: "Collection", 11606 url: "/collections/karangan-bunga-cimahi", 11607 images: " ", 11608 price: " " 11609 }, { 11610 label: "Karangan Bunga Cirebon", 11611 category: "Collection", 11612 url: "/collections/karangan-bunga-cirebon", 11613 images: " ", 11614 price: " " 11615 }, {
11616 label: "Karangan Bunga Ciwidey", 11617 category: "Collection", 11618 url: "/collections/karangan-bunga-ciwidey", 11619 images: " ", 11620 price: " " 11621 }, { 11622 label: "Karangan Bunga Danau Toba", 11623 category: "Collection", 11624 url: "/collections/karangan-bunga-danau-toba", 11625 images: " ", 11626 price: " " 11627 }, { 11628 label: "Karangan Bunga Demak", 11629 category: "Collection", 11630 url: "/collections/karangan-bunga-demak", 11631 images: " ", 11632 price: " " 11633 }, { 11634 label: "Karangan Bunga Denpasar", 11635 category: "Collection", 11636 url: "/collections/karangan-bunga-denpasar", 11637 images: " ", 11638 price: " " 11639 }, { 11640 label: "Karangan Bunga Depok", 11641 category: "Collection", 11642 url: "/collections/karangan-bunga-depok", 11643 images: " ", 11644 price: " " 11645 }, { 11646 label: "Karangan Bunga Duka Cita", 11647 category: "Collection", 11648 url: "/collections/karangan-bunga-duka-cita", 11649 images: " ", 11650 price: " " 11651 }, { 11652 label: "Karangan Bunga Garut", 11653 category: "Collection", 11654 url: "/collections/karangan-bunga-garut", 11655 images: " ", 11656 price: " " 11657 }, { 11658 label: "Karangan Bunga Gianyar", 11659 category: "Collection", 11660 url: "/collections/karangan-bunga-gianyar", 11661 images: " ", 11662 price: " " 11663 }, { 11664 label: "Karangan Bunga Gorontalo", 11665 category: "Collection", 11666 url: "/collections/karangan-bunga-gorontalo", 11667 images: " ", 11668 price: " " 11669 }, { 11670 label: "Karangan Bunga Gowa", 11671 category: "Collection", 11672 url: "/collections/karangan-bunga-gowa", 11673 images: " ", 11674 price: " " 11675 }, { 11676 label: "Karangan Bunga Gresik", 11677 category: "Collection", 11678 url: "/collections/karangan-bunga-gresik", 11679 images: " ", 11680 price: " " 11681 }, { 11682 label: "Karangan Bunga Grobogan", 11683 category: "Collection", 11684 url: "/collections/karangan-bunga-grobogan", 11685 images: " ", 11686 price: " " 11687 }, { 11688 label: "Karangan Bunga Gunung Kidul", 11689 category: "Collection", 11690 url: "/collections/karangan-bunga-gunungkidul", 11691 images: " ", 11692 price: " " 11693 }, { 11694 label: "Karangan Bunga Indramayu", 11695 category: "Collection", 11696 url: "/collections/karangan-bunga-indramayu", 11697 images: " ", 11698 price: " " 11699 }, { 11700 label: "Karangan Bunga Jakarta", 11701 category: "Collection", 11702 url: "/collections/karangan-bunga-jakarta", 11703 images: " ", 11704 price: " " 11705 }, { 11706 label: "Karangan Bunga Jambi", 11707 category: "Collection", 11708 url: "/collections/karangan-bunga-jambi", 11709 images: " ", 11710 price: " " 11711 }, { 11712 label: "Karangan Bunga Jayapura", 11713 category: "Collection", 11714 url: "/collections/karangan-bunga-jayapura", 11715 images: " ", 11716 price: " " 11717 }, { 11718 label: "Karangan Bunga Jember", 11719 category: "Collection", 11720 url: "/collections/karangan-bunga-jember", 11721 images: " ", 11722 price: " " 11723 }, { 11724 label: "Karangan Bunga Jembrana", 11725 category: "Collection", 11726 url: "/collections/karangan-bunga-jembrana", 11727 images: " ", 11728 price: " " 11729 }, { 11730 label: "Karangan Bunga Jepara", 11731 category: "Collection", 11732 url: "/collections/karangan-bunga-jepara", 11733 images: " ", 11734 price: " " 11735 }, { 11736 label: "Karangan Bunga Jombang", 11737 category: "Collection", 11738 url: "/collections/karangan-bunga-jombang", 11739 images: " ", 11740 price: " " 11741 }, { 11742 label: "Karangan Bunga Kampung Baru", 11743 category: "Collection", 11744 url: "/collections/karangan-bunga-kampung-baru", 11745 images: " ", 11746 price: " " 11747 }, { 11748 label: "Karangan Bunga Kapuas", 11749 category: "Collection", 11750 url: "/collections/karangan-bunga-kapuas", 11751 images: " ", 11752 price: " " 11753 }, { 11754 label: "Karangan Bunga Karanganyar", 11755 category: "Collection", 11756 url: "/collections/karangan-bunga-karanganyar", 11757 images: " ", 11758 price: " " 11759 }, { 11760 label: "Karangan Bunga Karangasem", 11761 category: "Collection", 11762 url: "/collections/karangan-bunga-karangasem", 11763 images: " ", 11764 price: " " 11765 }, { 11766 label: "Karangan Bunga Karawang", 11767 category: "Collection", 11768 url: "/collections/karangan-bunga-karawang", 11769 images: " ", 11770 price: " " 11771 }, { 11772 label: "Karangan Bunga Kartosuro", 11773 category: "Collection", 11774 url: "/collections/karangan-bunga-kartosuro", 11775 images: " ", 11776 price: " " 11777 }, { 11778 label: "Karangan Bunga Kebumen", 11779 category: "Collection", 11780 url: "/collections/karangan-bunga-kebumen", 11781 images: " ", 11782 price: " " 11783 }, { 11784 label: "Karangan Bunga Kediri", 11785 category: "Collection", 11786 url: "/collections/karangan-bunga-kediri", 11787 images: " ", 11788 price: " " 11789 }, { 11790 label: "Karangan Bunga Kendal", 11791 category: "Collection",
11792 url: "/collections/karangan-bunga-kendal", 11793 images: " ", 11794 price: " " 11795 }, { 11796 label: "Karangan Bunga Kendari", 11797 category: "Collection", 11798 url: "/collections/karangan-bunga-kendari", 11799 images: " ", 11800 price: " " 11801 }, { 11802 label: "Karangan Bunga Ketapang", 11803 category: "Collection", 11804 url: "/collections/karangan-bunga-ketapang", 11805 images: " ", 11806 price: " " 11807 }, { 11808 label: "Karangan Bunga Klaten", 11809 category: "Collection", 11810 url: "/collections/karangan-bunga-klaten", 11811 images: " ", 11812 price: " " 11813 }, { 11814 label: "Karangan Bunga Kota Batu", 11815 category: "Collection", 11816 url: "/collections/karangan-bunga-kota-batu", 11817 images: " ", 11818 price: " " 11819 }, { 11820 label: "Karangan Bunga Kudus", 11821 category: "Collection", 11822 url: "/collections/karangan-bunga-kudus", 11823 images: " ", 11824 price: " " 11825 }, { 11826 label: "Karangan Bunga Kupang", 11827 category: "Collection", 11828 url: "/collections/karangan-bunga-kupang", 11829 images: " ", 11830 price: " " 11831 }, { 11832 label: "Karangan Bunga Lamongan", 11833 category: "Collection", 11834 url: "/collections/karangan-bunga-lamongan", 11835 images: " ", 11836 price: " " 11837 }, { 11838 label: "Karangan Bunga Lampung", 11839 category: "Collection", 11840 url: "/collections/karangan-bunga-lampung", 11841 images: " ", 11842 price: " " 11843 }, { 11844 label: "Karangan Bunga Langkat", 11845 category: "Collection", 11846 url: "/collections/karangan-bunga-langkat", 11847 images: " ", 11848 price: " " 11849 }, { 11850 label: "Karangan Bunga Lembang", 11851 category: "Collection", 11852 url: "/collections/karangan-bunga-lembang", 11853 images: " ", 11854 price: " " 11855 }, { 11856 label: "Karangan Bunga Lombok", 11857 category: "Collection", 11858 url: "/collections/karangan-bunga-lombok", 11859 images: " ", 11860 price: " " 11861 }, { 11862 label: "Karangan Bunga Lubuk Pakam", 11863 category: "Collection", 11864 url: "/collections/karangan-bunga-lubuk-pakam", 11865 images: " ", 11866 price: " " 11867 }, { 11868 label: "Karangan Bunga Lumajang", 11869 category: "Collection", 11870 url: "/collections/karangan-bunga-lumajang", 11871 images: " ", 11872 price: " " 11873 }, { 11874 label: "Karangan Bunga Madiun", 11875 category: "Collection", 11876 url: "/collections/karangan-bunga-madiun", 11877 images: " ", 11878 price: " " 11879 }, { 11880 label: "Karangan Bunga Magelang", 11881 category: "Collection", 11882 url: "/collections/karangan-bunga-magelang", 11883 images: " ", 11884 price: " " 11885 }, { 11886 label: "Karangan Bunga Majalengka", 11887 category: "Collection", 11888 url: "/collections/karangan-bunga-majalengka", 11889 images: " ", 11890 price: " " 11891 }, { 11892 label: "Karangan Bunga Makassar", 11893 category: "Collection", 11894 url: "/collections/karangan-bunga-makassar", 11895 images: " ", 11896 price: " " 11897 }, { 11898 label: "Karangan Bunga Malang", 11899 category: "Collection", 11900 url: "/collections/karangan-bunga-malang", 11901 images: " ", 11902 price: " " 11903 }, { 11904 label: "Karangan Bunga Mamuju", 11905 category: "Collection", 11906 url: "/collections/karangan-bunga-mamuju", 11907 images: " ", 11908 price: " " 11909 }, { 11910 label: "Karangan Bunga Manado", 11911 category: "Collection", 11912 url: "/collections/karangan-bunga-manado", 11913 images: " ", 11914 price: " " 11915 }, { 11916 label: "Karangan Bunga Manokwari", 11917 category: "Collection", 11918 url: "/collections/karangan-bunga-manokwari", 11919 images: " ", 11920 price: " " 11921 }, { 11922 label: "Karangan Bunga Maros", 11923 category: "Collection", 11924 url: "/collections/karangan-bunga-maros", 11925 images: " ", 11926 price: " " 11927 }, { 11928 label: "Karangan Bunga Mataram", 11929 category: "Collection", 11930 url: "/collections/karangan-bunga-mataram", 11931 images: " ", 11932 price: " " 11933 }, { 11934 label: "Karangan Bunga Mojokerto", 11935 category: "Collection", 11936 url: "/collections/karangan-bunga-mojokerto", 11937 images: " ", 11938 price: " " 11939 }, { 11940 label: "Karangan Bunga Nganjuk", 11941 category: "Collection", 11942 url: "/collections/karangan-bunga-nganjuk", 11943 images: " ", 11944 price: " " 11945 }, { 11946 label: "Karangan Bunga Nias", 11947 category: "Collection", 11948 url: "/collections/karangan-bunga-nias", 11949 images: " ", 11950 price: " " 11951 }, { 11952 label: "Karangan Bunga Padang", 11953 category: "Collection", 11954 url: "/collections/karangan-bunga-padang", 11955 images: " ", 11956 price: " " 11957 }, { 11958 label: "Karangan Bunga Palangkaraya", 11959 category: "Collection", 11960 url: "/collections/karangan-bunga-palangkaraya", 11961 images: " ", 11962 price: " " 11963 }, { 11964 label: "Karangan Bunga Palu", 11965 category: "Collection", 11966 url: "/collections/karangan-bunga-palu", 11967 images: " ", 11968 price: " " 11969 }, { 11970 label: "Karangan Bunga Pangkal Pinang", 11971 category: "Collection", 11972 url: "/collections/karangan-bunga-pangkal-pinang", 11973 images: " ", 11974 price: " " 11975 }, { 11976 label: "Karangan Bunga Papan", 11977 category: "Collection", 11978 url: "/collections/karangan-bunga", 11979 images: " ", 11980 price: " " 11981 }, {
11982 label: "Karangan Bunga Papan Bandar Lampung", 11983 category: "Collection", 11984 url: "/collections/karangan-bunga-bandar-lampung", 11985 images: " ", 11986 price: " " 11987 }, { 11988 label: "Karangan Bunga Papan Bekasi", 11989 category: "Collection", 11990 url: "/collections/karangan-bunga-bekasi", 11991 images: " ", 11992 price: " " 11993 }, { 11994 label: "Karangan Bunga Papan Binjai", 11995 category: "Collection", 11996 url: "/collections/karangan-bunga-binjai", 11997 images: " ", 11998 price: " " 11999 }, { 12000 label: "Karangan Bunga Papan Blitar", 12001 category: "Collection", 12002 url: "/collections/karangan-bunga-blitar", 12003 images: " ", 12004 price: " " 12005 }, { 12006 label: "Karangan Bunga Papan Buleleng", 12007 category: "Collection", 12008 url: "/collections/karangan-bunga-buleleng", 12009 images: " ", 12010 price: " " 12011 }, { 12012 label: "Karangan Bunga Papan Cibubur", 12013 category: "Collection", 12014 url: "/collections/karangan-bunga-cibubur", 12015 images: " ", 12016 price: " " 12017 }, { 12018 label: "Karangan Bunga Papan Deli Serdang", 12019 category: "Collection", 12020 url: "/collections/karangan-bunga-deli-serdang", 12021 images: " ", 12022 price: " " 12023 }, { 12024 label: "Karangan Bunga Papan Jakarta Timur", 12025 category: "Collection", 12026 url: "/collections/karangan-bunga-jakarta-timur", 12027 images: " ", 12028 price: " " 12029 }, { 12030 label: "Karangan Bunga Papan Karo", 12031 category: "Collection", 12032 url: "/collections/karangan-bunga-karo", 12033 images: " ", 12034 price: " " 12035 }, { 12036 label: "Karangan Bunga Papan Medan", 12037 category: "Collection", 12038 url: "/collections/karangan-bunga-medan", 12039 images: " ", 12040 price: " " 12041 }, { 12042 label: "Karangan Bunga Papan Ngawi", 12043 category: "Collection", 12044 url: "/collections/karangan-bunga-ngawi", 12045 images: " ", 12046 price: " " 12047 }, { 12048 label: "Karangan Bunga Papan Palembang", 12049 category: "Collection", 12050 url: "/collections/karangan-bunga-palembang", 12051 images: " ", 12052 price: " " 12053 }, { 12054 label: "Karangan Bunga Papan Pemalang", 12055 category: "Collection", 12056 url: "/collections/karangan-bunga-pemalang", 12057 images: " ", 12058 price: " " 12059 }, { 12060 label: "Karangan Bunga Papan Rembang", 12061 category: "Collection", 12062 url: "/collections/karangan-bunga-rembang", 12063 images: " ", 12064 price: " " 12065 }, { 12066 label: "Karangan Bunga Papan Sragen", 12067 category: "Collection", 12068 url: "/collections/karangan-bunga-sragen", 12069 images: " ", 12070 price: " " 12071 }, { 12072 label: "Karangan Bunga Papan Tegal", 12073 category: "Collection", 12074 url: "/collections/karangan-bunga-tegal", 12075 images: " ", 12076 price: " " 12077 }, { 12078 label: "Karangan Bunga Papan Temanggung", 12079 category: "Collection", 12080 url: "/collections/karangan-bunga-temanggung", 12081 images: " ", 12082 price: " " 12083 }, { 12084 label: "Karangan Bunga Parepare", 12085 category: "Collection", 12086 url: "/collections/karangan-bunga-parepare", 12087 images: " ", 12088 price: " " 12089 }, { 12090 label: "Karangan Bunga Pasuruan", 12091 category: "Collection", 12092 url: "/collections/karangan-bunga-pasuruan", 12093 images: " ", 12094 price: " " 12095 }, { 12096 label: "Karangan Bunga Pati", 12097 category: "Collection", 12098 url: "/collections/karangan-bunga-pati", 12099 images: " ", 12100 price: " " 12101 }, { 12102 label: "Karangan Bunga Pekalongan", 12103 category: "Collection", 12104 url: "/collections/karangan-bunga-pekalongan", 12105 images: " ", 12106 price: " " 12107 }, { 12108 label: "Karangan Bunga Pekanbaru", 12109 category: "Collection", 12110 url: "/collections/karangan-bunga-pekanbaru", 12111 images: " ", 12112 price: " " 12113 }, { 12114 label: "Karangan Bunga Pematangsiantar", 12115 category: "Collection", 12116 url: "/collections/karangan-bunga-pematangsiantar", 12117 images: " ", 12118 price: " " 12119 }, { 12120 label: "Karangan Bunga Ponorogo", 12121 category: "Collection", 12122 url: "/collections/karangan-bunga-ponorogo", 12123 images: " ", 12124 price: " " 12125 }, { 12126 label: "Karangan Bunga Pontianak", 12127 category: "Collection", 12128 url: "/collections/karangan-bunga-pontianak", 12129 images: " ", 12130 price: " " 12131 }, { 12132 label: "Karangan Bunga Probolinggo", 12133 category: "Collection", 12134 url: "/collections/karangan-bunga-probolinggo", 12135 images: " ", 12136 price: " " 12137 }, { 12138 label: "Karangan Bunga Purbalingga", 12139 category: "Collection", 12140 url: "/collections/karangan-bunga-purbalingga", 12141 images: " ", 12142 price: " " 12143 }, { 12144 label: "Karangan Bunga Purwokerto", 12145 category: "Collection", 12146 url: "/collections/karangan-bunga-purwokerto", 12147 images: " ", 12148 price: " " 12149 }, { 12150 label: "Karangan Bunga Purworejo", 12151 category: "Collection", 12152 url: "/collections/karangan-bunga-purworejo", 12153 images: " ", 12154 price: " " 12155 }, { 12156 label: "Karangan Bunga Riau", 12157 category: "Collection", 12158 url: "/collections/karangan-bunga-riau", 12159 images: " ", 12160 price: " " 12161 }, { 12162 label: "Karangan Bunga Salatiga", 12163 category: "Collection", 12164 url: "/collections/karangan-bunga-salatiga", 12165 images: " ", 12166 price: " " 12167 }, { 12168 label: "Karangan Bunga Samarinda", 12169 category: "Collection", 12170 url: "/collections/karangan-bunga-samarinda", 12171 images: " ", 12172 price: " " 12173 }, { 12174 label: "Karangan Bunga Semarang", 12175 category: "Collection", 12176 url: "/collections/karangan-bunga-semarang", 12177 images: " ", 12178 price: " " 12179 }, { 12180 label: "Karangan Bunga Serang", 12181 category: "Collection", 12182 url: "/collections/karangan-bunga-serang", 12183 images: " ", 12184 price: " " 12185 }, { 12186 label: "Karangan Bunga Sibolga", 12187 category: "Collection", 12188 url: "/collections/karangan-bunga-sibolga", 12189 images: " ", 12190 price: " " 12191 }, { 12192 label: "Karangan Bunga Sidoarjo", 12193 category: "Collection", 12194 url: "/collections/karangan-bunga-sidoarjo", 12195 images: " ", 12196 price: " " 12197 }, { 12198 label: "Karangan Bunga Singkawang", 12199 category: "Collection", 12200 url: "/collections/karangan-bunga-singkawang", 12201 images: " ", 12202 price: " " 12203 }, { 12204 label: "Karangan Bunga Solo", 12205 category: "Collection", 12206 url: "/collections/karangan-bunga-solo", 12207 images: " ", 12208 price: " " 12209 }, { 12210 label: "Karangan Bunga Sorong", 12211 category: "Collection", 12212 url: "/collections/karangan-bunga-sorong", 12213 images: " ", 12214 price: " " 12215 }, { 12216 label: "Karangan Bunga Subang", 12217 category: "Collection", 12218 url: "/collections/karangan-bunga-subang", 12219 images: " ", 12220 price: " " 12221 }, { 12222 label: "Karangan Bunga Sukabumi", 12223 category: "Collection", 12224 url: "/collections/karangan-bunga-sukabumi", 12225 images: " ", 12226 price: " " 12227 }, { 12228 label: "Karangan Bunga Sumbawa", 12229 category: "Collection", 12230 url: "/collections/karangan-bunga-sumbawa", 12231 images: " ", 12232 price: " " 12233 }, { 12234 label: "Karangan Bunga Surabaya", 12235 category: "Collection", 12236 url: "/collections/karangan-bunga-surabaya", 12237 images: " ", 12238 price: " " 12239 }, { 12240 label: "Karangan Bunga Surakarta", 12241 category: "Collection", 12242 url: "/collections/karangan-bunga-surakarta", 12243 images: " ", 12244 price: " " 12245 }, { 12246 label: "Karangan Bunga Tangerang", 12247 category: "Collection", 12248 url: "/collections/karangan-bunga-tangerang", 12249 images: " ", 12250 price: " " 12251 }, { 12252 label: "Karangan Bunga Tasikmalaya", 12253 category: "Collection", 12254 url: "/collections/karangan-bunga-tasikmalaya", 12255 images: " ", 12256 price: " " 12257 }, { 12258 label: "Karangan Bunga Ternate", 12259 category: "Collection", 12260 url: "/collections/karangan-bunga-ternate", 12261 images: " ", 12262 price: " " 12263 }, { 12264 label: "Karangan Bunga Tolitoli", 12265 category: "Collection", 12266 url: "/collections/karangan-bunga-tolitoli", 12267 images: " ", 12268 price: " " 12269 }, { 12270 label: "Karangan Bunga Toraja", 12271 category: "Collection", 12272 url: "/collections/karangan-bunga-toraja", 12273 images: " ", 12274 price: " " 12275 }, { 12276 label: "Karangan Bunga Tuban", 12277 category: "Collection", 12278 url: "/collections/karangan-bunga-tuban", 12279 images: " ", 12280 price: " " 12281 }, { 12282 label: "Karangan Bunga Tulungagung",
12283 category: "Collection", 12284 url: "/collections/karangan-bunga-tulungagung", 12285 images: " ", 12286 price: " " 12287 }, { 12288 label: "Karangan Bunga Wakatobi", 12289 category: "Collection", 12290 url: "/collections/karangan-bunga-wakatobi", 12291 images: " ", 12292 price: " " 12293 }, { 12294 label: "Karangan Bunga Wiyung", 12295 category: "Collection", 12296 url: "/collections/karangan-bunga-wiyung", 12297 images: " ", 12298 price: " " 12299 }, { 12300 label: "Karangan Bunga Wonogiri", 12301 category: "Collection", 12302 url: "/collections/karangan-bunga-wonogiri", 12303 images: " ", 12304 price: " " 12305 }, { 12306 label: "Karangan Bunga Wonokromo", 12307 category: "Collection", 12308 url: "/collections/karangan-bunga-wonokromo", 12309 images: " ", 12310 price: " " 12311 }, { 12312 label: "Karangan Bunga Wonosobo", 12313 category: "Collection", 12314 url: "/collections/karangan-bunga-wonosobo", 12315 images: " ", 12316 price: " " 12317 }, { 12318 label: "Karangan Bunga Yogyakarta", 12319 category: "Collection", 12320 url: "/collections/karangan-bunga-yogyakarta", 12321 images: " ", 12322 price: " " 12323 }, { 12324 label: "Kartu Ucapan", 12325 category: "Collection", 12326 url: "/collections/kartu-ucapan", 12327 images: " ", 12328 price: " " 12329 }, { 12330 label: "Kue Anniversary", 12331 category: "Collection", 12332 url: "/collections/kue-anniversary", 12333 images: " ", 12334 price: " " 12335 }, { 12336 label: "Kue Bachelorette", 12337 category: "Collection", 12338 url: "/collections/kue-bachelorette", 12339 images: " ", 12340 price: " " 12341 }, { 12342 label: "Kue Bandung", 12343 category: "Collection", 12344 url: "/collections/kue-bandung", 12345 images: " ", 12346 price: " " 12347 }, { 12348 label: "Kue Bulan", 12349 category: "Collection", 12350 url: "/collections/kue-bulan", 12351 images: " ", 12352 price: " " 12353 }, { 12354 label: "Kue Imlek", 12355 category: "Collection", 12356 url: "/collections/kue-imlek", 12357 images: " ", 12358 price: " " 12359 }, { 12360 label: "Kue Kering", 12361 category: "Collection", 12362 url: "/collections/kue-kering", 12363 images: " ", 12364 price: " " 12365 }, { 12366 label: "Kue Natal", 12367 category: "Collection", 12368 url: "/collections/kue-natal", 12369 images: " ", 12370 price: " " 12371 }, { 12372 label: "Kue Pernikahan", 12373 category: "Collection", 12374 url: "/collections/kue-pernikahan", 12375 images: " ", 12376 price: " " 12377 }, { 12378 label: "Kue Tart", 12379 category: "Collection", 12380 url: "/collections/kue-tart", 12381 images: " ", 12382 price: " " 12383 }, { 12384 label: "Kue Tart Oma Elly", 12385 category: "Collection", 12386 url: "/collections/kue-tart-oma-elly", 12387 images: " ", 12388 price: " " 12389 }, { 12390 label: "Kue Ulang Tahun", 12391 category: "Collection", 12392 url: "/collections/kue-ulang-tahun", 12393 images: " ", 12394 price: " " 12395 }, { 12396 label: "Lalique", 12397 category: "Collection", 12398 url: "/collections/lalique", 12399 images: " ", 12400 price: " " 12401 }, { 12402 label: "Le Sucre Du Patisserie", 12403 category: "Collection", 12404 url: "/collections/le-sucre-du-patisserie", 12405 images: " ", 12406 price: " " 12407 }, { 12408 label: "Leo âï¸ 23July - 22Augst", 12409 category: "Collection", 12410 url: "/collections/kado-untuk-zodiak-leo", 12411 images: " ", 12412 price: " " 12413 }, { 12414 label: "Letter Box", 12415 category: "Collection", 12416 url: "/collections/letter-box", 12417 images: " ", 12418 price: " " 12419 }, { 12420 label: "Libra âï¸ 23Sept - 23Oct", 12421 category: "Collection", 12422 url: "/collections/kado-untuk-zodiak-libra", 12423 images: " ", 12424 price: " " 12425 }, { 12426 label: "Lilin Aromaterapi", 12427 category: "Collection", 12428 url: "/collections/lilin-aromaterapi", 12429 images: " ", 12430 price: " " 12431 }, { 12432 label: "Lily", 12433 category: "Collection", 12434 url: "/collections/bunga-lily", 12435 images: " ", 12436 price: " " 12437 }, { 12438 label: "Lindt", 12439 category: "Collection", 12440 url: "/collections/lindt", 12441 images: " ", 12442 price: " " 12443 }, { 12444 label: "Locations", 12445 category: "Collection", 12446 url: "/collections/locations", 12447 images: " ", 12448 price: " " 12449 }, { 12450 label: "Love & Romance", 12451 category: "Collection", 12452 url: "/collections/rangkaian-bunga-i-love-you", 12453 images: " ", 12454 price: " " 12455 }, { 12456 label: "Love Bag Collection", 12457 category: "Collection", 12458 url: "/collections/love-bag-collection", 12459 images: " ", 12460 price: " " 12461 }, { 12462 label: "Love Bundle", 12463 category: "Collection", 12464 url: "/collections/paket-promo-spesial-valentine", 12465 images: " ", 12466 price: " " 12467 }, { 12468 label: "Love Bundle Nusantara", 12469 category: "Collection", 12470 url: "/collections/love-bundle-nusantara", 12471 images: " ", 12472 price: " " 12473 }, { 12474 label: "Luxury Chinese New Year Hampers", 12475 category: "Collection", 12476 url: "/collections/luxury-chinese-new-year-hampers", 12477 images: " ", 12478 price: " " 12479 }, { 12480 label: "Luxury Christmas Hampers", 12481 category: "Collection", 12482 url: "/collections/luxury-christmas-hampers", 12483 images: " ", 12484 price: " " 12485 }, { 12486 label: "Luxury Hampers", 12487 category: "Collection", 12488 url: "/collections/luxury-hampers", 12489 images: " ", 12490 price: " " 12491 }, { 12492 label: "Luxury Hampers Luar Jadetabek", 12493 category: "Collection", 12494 url: "/collections/luxury-hampers-luar-jadetabek", 12495 images: " ", 12496 price: " " 12497 }, { 12498 label: "Luxury Newborn Hampers Collection", 12499 category: "Collection", 12500 url: "/collections/luxury-newborn-hampers-collection", 12501 images: " ", 12502 price: " " 12503 }, { 12504 label: "Luxury Ramadan Hampers", 12505 category: "Collection", 12506 url: "/collections/luxury-ramadan-hampers", 12507 images: " ", 12508 price: " " 12509 }, { 12510 label: "Luxury Set", 12511 category: "Collection", 12512 url: "/collections/luxury", 12513 images: " ", 12514 price: " " 12515 }, { 12516 label: "Manual", 12517 category: "Collection", 12518 url: "/collections/manual", 12519 images: " ", 12520 price: " " 12521 }, { 12522 label: "Massimo Gelato", 12523 category: "Collection", 12524 url: "/collections/massimo-gelato", 12525 images: " ", 12526 price: " " 12527 }, { 12528 label: "Men's Collection", 12529 category: "Collection", 12530 url: "/collections/mens-collection", 12531 images: " ", 12532 price: " " 12533 }, { 12534 label: "Mercedes Benz", 12535 category: "Collection", 12536 url: "/collections/mercedes-benz",
12537 images: " ", 12538 price: " " 12539 }, { 12540 label: "Mercy Hampers", 12541 category: "Collection", 12542 url: "/collections/mercy-hampers", 12543 images: " ", 12544 price: " " 12545 }, { 12546 label: "Merry Hampers", 12547 category: "Collection", 12548 url: "/collections/merry-hampers", 12549 images: " ", 12550 price: " " 12551 }, { 12552 label: "Merry Hampers Luar Jabodetabek", 12553 category: "Collection", 12554 url: "/collections/merry-hampers-luar-jabodetabek", 12555 images: " ", 12556 price: " " 12557 }, { 12558 label: "Mini Bouquet", 12559 category: "Collection", 12560 url: "/collections/mini-bouquet", 12561 images: " ", 12562 price: " " 12563 }, { 12564 label: "Miss Mondial", 12565 category: "Collection", 12566 url: "/collections/miss-mondial", 12567 images: " ", 12568 price: " " 12569 }, { 12570 label: "Modern & Chic Chinese New Year", 12571 category: "Collection", 12572 url: "/collections/modern-chic-chinese-new-year", 12573 images: " ", 12574 price: " " 12575 }, { 12576 label: "Modern & Chic Christmas Hampers", 12577 category: "Collection", 12578 url: "/collections/modern-chic-christmas", 12579 images: " ", 12580 price: " " 12581 }, { 12582 label: "Modern & Chic Hampers", 12583 category: "Collection", 12584 url: "/collections/modern-chic-hampers", 12585 images: " ", 12586 price: " " 12587 }, { 12588 label: "Modern & Chic Hampers Luar Jadetabek", 12589 category: "Collection", 12590 url: "/collections/modern-chic-hampers-luar-jadetabek", 12591 images: " ", 12592 price: " " 12593 }, { 12594 label: "Modern & Chic Ramadan Hampers", 12595 category: "Collection", 12596 url: "/collections/modern-chic-ramadan-hampers", 12597 images: " ", 12598 price: " " 12599 }, { 12600 label: "Modern & Classy Hampers", 12601 category: "Collection", 12602 url: "/collections/parcel-unik", 12603 images: " ", 12604 price: " " 12605 }, { 12606 label: "Modern 3D Cake", 12607 category: "Collection", 12608 url: "/collections/custom-3d-cake", 12609 images: " ", 12610 price: " " 12611 }, { 12612 label: "Modern Style Flowers", 12613 category: "Collection", 12614 url: "/collections/modern-style-flowers", 12615 images: " ", 12616 price: " " 12617 }, { 12618 label: "Monochrome Hampers", 12619 category: "Collection", 12620 url: "/collections/monochrome-hampers", 12621 images: " ", 12622 price: " " 12623 }, { 12624 label: "Monochrome Hampers Luar Jadetabek", 12625 category: "Collection", 12626 url: "/collections/monochrome-hampers-luar-jadetabek", 12627 images: " ", 12628 price: " " 12629 }, { 12630 label: "Mooncake", 12631 category: "Collection", 12632 url: "/collections/kue-bulan-mooncake-2026-mid-autumn-festival", 12633 images: " ", 12634 price: " " 12635 }, { 12636 label: "Mooncake Assorted Selection", 12637 category: "Collection", 12638 url: "/collections/mooncake-assorted-selection", 12639 images: " ", 12640 price: " " 12641 }, { 12642 label: "Mother's Day", 12643 category: "Collection", 12644 url: "/collections/rangkaian-bunga-hari-ibu", 12645 images: " ", 12646 price: " " 12647 }, { 12648 label: "Mother's Day Special", 12649 category: "Collection", 12650 url: "/collections/kado-untuk-ibu", 12651 images: " ", 12652 price: " " 12653 }, { 12654 label: "Necklace", 12655 category: "Collection", 12656 url: "/collections/kalung", 12657 images: " ", 12658 price: " " 12659 }, { 12660 label: "NestBloom Bird Nest Hampers", 12661 category: "Collection", 12662 url: "/collections/nestbloom-birds-nest", 12663 images: " ", 12664 price: " " 12665 }, { 12666 label: "NestBloom Gift Set", 12667 category: "Collection", 12668 url: "/collections/nestbloom-gift-set", 12669 images: " ", 12670 price: " " 12671 }, { 12672 label: "Nestbloom Ritual Kit", 12673 category: "Collection", 12674 url: "/collections/nestbloom-ritual-kit", 12675 images: " ", 12676 price: " " 12677 }, { 12678 label: "NestBloom Single Bloom", 12679 category: "Collection", 12680 url: "/collections/nestbloom-single-bloom", 12681 images: " ", 12682 price: " " 12683 }, { 12684 label: "New Collection", 12685 category: "Collection", 12686 url: "/collections/produk-baru", 12687 images: " ", 12688 price: " " 12689 }, { 12690 label: "New Product", 12691 category: "Collection", 12692 url: "/collections/new-product", 12693 images: " ", 12694 price: " " 12695 }, { 12696 label: "Newborn", 12697 category: "Collection", 12698 url: "/collections/rangkaian-bunga-newborn-baby", 12699 images: " ", 12700 price: " " 12701 }, { 12702 label: "Newborn Hampers", 12703 category: "Collection", 12704 url: "/collections/parcel-newborn", 12705 images: " ", 12706 price: " " 12707 }, { 12708 label: "Occasions", 12709 category: "Collection", 12710 url: "/collections/occasions", 12711 images: " ", 12712 price: " " 12713 }, {
12714 label: "Oma Elly", 12715 category: "Collection", 12716 url: "/collections/oma-elly", 12717 images: " ", 12718 price: " " 12719 }, { 12720 label: "Oma Elly Gelato", 12721 category: "Collection", 12722 url: "/collections/oma-elly-gelato", 12723 images: " ", 12724 price: " " 12725 }, { 12726 label: "Orchid", 12727 category: "Collection", 12728 url: "/collections/bunga-anggrek", 12729 images: " ", 12730 price: " " 12731 }, { 12732 label: "Orori", 12733 category: "Collection", 12734 url: "/collections/orori", 12735 images: " ", 12736 price: " " 12737 }, { 12738 label: "Outerbloom", 12739 category: "Collection", 12740 url: "/collections/outerbloom", 12741 images: " ", 12742 price: " " 12743 }, { 12744 label: "Outerbloom Cake", 12745 category: "Collection", 12746 url: "/collections/outerbloom-cake", 12747 images: " ", 12748 price: " " 12749 }, { 12750 label: "Outerbloom Florist", 12751 category: "Collection", 12752 url: "/collections/outerbloom-florist", 12753 images: " ", 12754 price: " " 12755 }, { 12756 label: "Outerbloom Gift", 12757 category: "Collection", 12758 url: "/collections/outerbloom-gift", 12759 images: " ", 12760 price: " " 12761 }, { 12762 label: "Outerbloom Hampers", 12763 category: "Collection", 12764 url: "/collections/outerbloom-hampers", 12765 images: " ", 12766 price: " " 12767 }, { 12768 label: "Outerbloom Indonesia", 12769 category: "Collection", 12770 url: "/collections/indonesia", 12771 images: " ", 12772 price: " " 12773 }, { 12774 label: "Outerbloom x Boho Panna", 12775 category: "Collection", 12776 url: "/collections/outerbloom-x-boho-panna", 12777 images: " ", 12778 price: " " 12779 }, { 12780 label: "Outerbloom x Clairmont", 12781 category: "Collection", 12782 url: "/collections/outerbloom-x-clairmont", 12783 images: " ", 12784 price: " " 12785 }, { 12786 label: "Outerbloom x Kikido", 12787 category: "Collection", 12788 url: "/collections/outerbloom-x-kikido", 12789 images: " ", 12790 price: " " 12791 }, { 12792 label: "Outerbloom x Miwa Pattern", 12793 category: "Collection", 12794 url: "/collections/outerbloom-x-miwa", 12795 images: " ", 12796 price: " " 12797 }, { 12798 label: "Outerbloom x Nestbloom Chinese New Year", 12799 category: "Collection", 12800 url: "/collections/outerbloom-x-nestbloom-chinese-new-year", 12801 images: " ", 12802 price: " " 12803 }, { 12804 label: "Outerbloom x NestBloom Hampers", 12805 category: "Collection", 12806 url: "/collections/outerbloom-x-nestbloom", 12807 images: " ", 12808 price: " " 12809 }, { 12810 label: "Paket Kolaborasi Outerbloom", 12811 category: "Collection", 12812 url: "/collections/paket-kolaborasi-outerbloom", 12813 images: " ", 12814 price: " " 12815 }, { 12816 label: "Paket Kolaborasi Valentine", 12817 category: "Collection", 12818 url: "/collections/paket-kolaborasi-valentine", 12819 images: " ", 12820 price: " " 12821 }, { 12822 label: "Paket Ulang Tahun", 12823 category: "Collection", 12824 url: "/collections/paket-ulang-tahun", 12825 images: " ", 12826 price: " " 12827 }, { 12828 label: "Paket Valentine Nusantara", 12829 category: "Collection", 12830 url: "/collections/paket-valentine-nusantara", 12831 images: " ", 12832 price: " " 12833 }, { 12834 label: "Paket Valentine Outerbloom", 12835 category: "Collection", 12836 url: "/collections/paket-valentine", 12837 images: " ", 12838 price: " " 12839 }, { 12840 label: "Papan Bunga", 12841 category: "Collection", 12842 url: "/collections/papan-bunga", 12843 images: " ", 12844 price: " " 12845 }, {
12846 label: "Papan Bunga Aceh", 12847 category: "Collection", 12848 url: "/collections/papan-bunga-aceh", 12849 images: " ", 12850 price: " " 12851 }, { 12852 label: "Papan Bunga Acrylic", 12853 category: "Collection", 12854 url: "/collections/papan-bunga-acrylic", 12855 images: " ", 12856 price: " " 12857 }, { 12858 label: "Papan Bunga Ambon", 12859 category: "Collection", 12860 url: "/collections/papan-bunga-ambon", 12861 images: " ", 12862 price: " " 12863 }, { 12864 label: "Papan Bunga Artificial", 12865 category: "Collection", 12866 url: "/collections/papan-bunga-artificial", 12867 images: " ", 12868 price: " " 12869 }, { 12870 label: "Papan Bunga Atambua", 12871 category: "Collection", 12872 url: "/collections/papan-bunga-atambua", 12873 images: " ", 12874 price: " " 12875 }, { 12876 label: "Papan Bunga Bali", 12877 category: "Collection", 12878 url: "/collections/papan-bunga-bali", 12879 images: " ", 12880 price: " " 12881 }, { 12882 label: "Papan Bunga Balikpapan", 12883 category: "Collection", 12884 url: "/collections/papan-bunga-balikpapan", 12885 images: " ", 12886 price: " " 12887 }, { 12888 label: "Papan Bunga Bandar Lampung", 12889 category: "Collection", 12890 url: "/collections/papan-bunga-bandar-lampung", 12891 images: " ", 12892 price: " " 12893 }, { 12894 label: "Papan Bunga Bandung", 12895 category: "Collection", 12896 url: "/collections/papan-bunga-bandung", 12897 images: " ", 12898 price: " " 12899 }, { 12900 label: "Papan Bunga Bandung Barat", 12901 category: "Collection", 12902 url: "/collections/papan-bunga-bandung-barat", 12903 images: " ", 12904 price: " " 12905 }, { 12906 label: "Papan Bunga Bangka", 12907 category: "Collection", 12908 url: "/collections/papan-bunga-bangka", 12909 images: " ", 12910 price: " " 12911 }, { 12912 label: "Papan Bunga Banjarmasin", 12913 category: "Collection", 12914 url: "/collections/papan-bunga-banjarmasin", 12915 images: " ", 12916 price: " " 12917 }, { 12918 label: "Papan Bunga Banten", 12919 category: "Collection", 12920 url: "/collections/papan-bunga-banten", 12921 images: " ", 12922 price: " " 12923 }, { 12924 label: "Papan Bunga Banyumas", 12925 category: "Collection", 12926 url: "/collections/papan-bunga-banyumas", 12927 images: " ", 12928 price: " " 12929 }, { 12930 label: "Papan Bunga Banyuwangi", 12931 category: "Collection", 12932 url: "/collections/papan-bunga-banyuwangi", 12933 images: " ", 12934 price: " " 12935 }, { 12936 label: "Papan Bunga Batam", 12937 category: "Collection", 12938 url: "/collections/papan-bunga-batam", 12939 images: " ", 12940 price: " " 12941 }, { 12942 label: "Papan Bunga Baubau", 12943 category: "Collection", 12944 url: "/collections/papan-bunga-baubau", 12945 images: " ", 12946 price: " " 12947 }, { 12948 label: "Papan Bunga Bekasi", 12949 category: "Collection", 12950 url: "/collections/papan-bunga-bekasi", 12951 images: " ", 12952 price: " " 12953 }, { 12954 label: "Papan Bunga Bengkalis", 12955 category: "Collection", 12956 url: "/collections/papan-bunga-bengkalis", 12957 images: " ", 12958 price: " " 12959 }, { 12960 label: "Papan Bunga Bengkayang", 12961 category: "Collection", 12962 url: "/collections/papan-bunga-bengkayang", 12963 images: " ", 12964 price: " " 12965 }, { 12966 label: "Papan Bunga Bengkulu", 12967 category: "Collection", 12968 url: "/collections/papan-bunga-bengkulu", 12969 images: " ", 12970 price: " " 12971 }, { 12972 label: "Papan Bunga Binjai", 12973 category: "Collection", 12974 url: "/collections/papan-bunga-binjai", 12975 images: " ", 12976 price: " " 12977 }, {
12978 label: "Papan Bunga Blitar", 12979 category: "Collection", 12980 url: "/collections/papan-bunga-blitar", 12981 images: " ", 12982 price: " " 12983 }, { 12984 label: "Papan Bunga Blora", 12985 category: "Collection", 12986 url: "/collections/papan-bunga-blora", 12987 images: " ", 12988 price: " " 12989 }, { 12990 label: "Papan Bunga Bogor", 12991 category: "Collection", 12992 url: "/collections/papan-bunga-bogor", 12993 images: " ", 12994 price: " " 12995 }, { 12996 label: "Papan Bunga Bojonegoro", 12997 category: "Collection", 12998 url: "/collections/papan-bunga-bojonegoro", 12999 images: " ", 13000 price: " " 13001 }, { 13002 label: "Papan Bunga Boyolali", 13003 category: "Collection", 13004 url: "/collections/papan-bunga-boyolali", 13005 images: " ", 13006 price: " " 13007 }, { 13008 label: "Papan Bunga Brebes", 13009 category: "Collection", 13010 url: "/collections/papan-bunga-brebes", 13011 images: " ", 13012 price: " " 13013 }, { 13014 label: "Papan Bunga Bukittinggi", 13015 category: "Collection", 13016 url: "/collections/papan-bunga-bukittinggi", 13017 images: " ", 13018 price: " " 13019 }, { 13020 label: "Papan Bunga Buleleng", 13021 category: "Collection", 13022 url: "/collections/papan-bunga-buleleng", 13023 images: " ", 13024 price: " " 13025 }, { 13026 label: "Papan Bunga Ciamis", 13027 category: "Collection", 13028 url: "/collections/papan-bunga-ciamis", 13029 images: " ", 13030 price: " " 13031 }, { 13032 label: "Papan Bunga Cianjur", 13033 category: "Collection", 13034 url: "/collections/papan-bunga-cianjur", 13035 images: " ", 13036 price: " " 13037 }, { 13038 label: "Papan Bunga Cibubur", 13039 category: "Collection", 13040 url: "/collections/papan-bunga-cibubur", 13041 images: " ", 13042 price: " " 13043 }, { 13044 label: "Papan Bunga Cikarang", 13045 category: "Collection", 13046 url: "/collections/papan-bunga-cikarang", 13047 images: " ", 13048 price: " " 13049 }, { 13050 label: "Papan Bunga Cikupa", 13051 category: "Collection", 13052 url: "/collections/papan-bunga-cikupa", 13053 images: " ", 13054 price: " " 13055 }, { 13056 label: "Papan Bunga Cikupa", 13057 category: "Collection", 13058 url: "/collections/papan-bunga-cikupa-1", 13059 images: " ", 13060 price: " " 13061 }, { 13062 label: "Papan Bunga Cilacap", 13063 category: "Collection", 13064 url: "/collections/papan-bunga-cilacap", 13065 images: " ", 13066 price: " " 13067 }, { 13068 label: "Papan Bunga Cileunyi", 13069 category: "Collection", 13070 url: "/collections/papan-bunga-cileunyi", 13071 images: " ", 13072 price: " " 13073 }, { 13074 label: "Papan Bunga Cirebon", 13075 category: "Collection", 13076 url: "/collections/papan-bunga-cirebon", 13077 images: " ", 13078 price: " " 13079 }, { 13080 label: "Papan Bunga Congratulations", 13081 category: "Collection", 13082 url: "/collections/papan-bunga-ucapan-selamat", 13083 images: " ", 13084 price: " " 13085 }, { 13086 label: "Papan Bunga Congratulations Bali", 13087 category: "Collection", 13088 url: "/collections/papan-bunga-congratulations-bali", 13089 images: " ", 13090 price: " " 13091 }, { 13092 label: "Papan Bunga Congratulations Bandung", 13093 category: "Collection", 13094 url: "/collections/papan-bunga-congratulations-bandung", 13095 images: " ", 13096 price: " " 13097 }, { 13098 label: "Papan Bunga Congratulations Bekasi", 13099 category: "Collection", 13100 url: "/collections/papan-bunga-congratulations-bekasi", 13101 images: " ", 13102 price: " " 13103 }, { 13104 label: "Papan Bunga Congratulations Bogor", 13105 category: "Collection", 13106 url: "/collections/papan-bunga-congratulations-bogor", 13107 images: " ", 13108 price: " " 13109 }, {
13110 label: "Papan Bunga Congratulations Cikupa", 13111 category: "Collection", 13112 url: "/collections/papan-bunga-congratulations-cikupa", 13113 images: " ", 13114 price: " " 13115 }, { 13116 label: "Papan Bunga Congratulations Demak", 13117 category: "Collection", 13118 url: "/collections/papan-bunga-congratulations-demak", 13119 images: " ", 13120 price: " " 13121 }, { 13122 label: "Papan Bunga Congratulations Depok", 13123 category: "Collection", 13124 url: "/collections/papan-bunga-congratulations-depok", 13125 images: " ", 13126 price: " " 13127 }, { 13128 label: "Papan Bunga Congratulations Gresik", 13129 category: "Collection", 13130 url: "/collections/papan-bunga-congratulations-gresik", 13131 images: " ", 13132 price: " " 13133 }, { 13134 label: "Papan Bunga Congratulations Jakarta", 13135 category: "Collection", 13136 url: "/collections/papan-bunga-congratulations-jakarta", 13137 images: " ", 13138 price: " " 13139 }, { 13140 label: "Papan Bunga Congratulations Jepara", 13141 category: "Collection", 13142 url: "/collections/papan-bunga-congratulations-jepara", 13143 images: " ", 13144 price: " " 13145 }, { 13146 label: "Papan Bunga Congratulations Medan", 13147 category: "Collection", 13148 url: "/collections/papan-bunga-congratulations-medan", 13149 images: " ", 13150 price: " " 13151 }, { 13152 label: "Papan Bunga Congratulations Semarang", 13153 category: "Collection", 13154 url: "/collections/papan-bunga-congratulations-semarang", 13155 images: " ", 13156 price: " " 13157 }, { 13158 label: "Papan Bunga Congratulations Serang", 13159 category: "Collection", 13160 url: "/collections/papan-bunga-congratulations-serang", 13161 images: " ", 13162 price: " " 13163 }, { 13164 label: "Papan Bunga Congratulations Sidoarjo", 13165 category: "Collection", 13166 url: "/collections/papan-bunga-congratulations-sidoarjo", 13167 images: " ", 13168 price: " " 13169 }, { 13170 label: "Papan Bunga Congratulations Surabaya", 13171 category: "Collection", 13172 url: "/collections/papan-bunga-congratulations-surabaya", 13173 images: " ", 13174 price: " " 13175 }, { 13176 label: "Papan Bunga Congratulations Tangerang", 13177 category: "Collection", 13178 url: "/collections/papan-bunga-congratulations-tangerang", 13179 images: " ", 13180 price: " " 13181 }, { 13182 label: "Papan Bunga Congratulations Yogyakarta", 13183 category: "Collection", 13184 url: "/collections/papan-bunga-congratulations-yogyakarta", 13185 images: " ", 13186 price: " " 13187 }, { 13188 label: "Papan Bunga Danau Toba", 13189 category: "Collection", 13190 url: "/collections/papan-bunga-danau-toba", 13191 images: " ", 13192 price: " " 13193 }, { 13194 label: "Papan Bunga Deli Serdang", 13195 category: "Collection", 13196 url: "/collections/papan-bunga-deli-serdang", 13197 images: " ", 13198 price: " " 13199 }, { 13200 label: "Papan Bunga Demak", 13201 category: "Collection", 13202 url: "/collections/papan-bunga-demak", 13203 images: " ", 13204 price: " " 13205 }, { 13206 label: "Papan Bunga Denpasar", 13207 category: "Collection", 13208 url: "/collections/papan-bunga-denpasar", 13209 images: " ", 13210 price: " " 13211 }, { 13212 label: "Papan Bunga Depok", 13213 category: "Collection", 13214 url: "/collections/papan-bunga-depok", 13215 images: " ", 13216 price: " " 13217 }, { 13218 label: "Papan Bunga Duka Cita", 13219 category: "Collection", 13220 url: "/collections/bunga-duka-cita", 13221 images: " ", 13222 price: " " 13223 }, { 13224 label: "Papan Bunga Duka Cita Bali", 13225 category: "Collection", 13226 url: "/collections/papan-bunga-duka-cita-bali", 13227 images: " ", 13228 price: " " 13229 }, {
13230 label: "Papan Bunga Duka Cita Bandung", 13231 category: "Collection", 13232 url: "/collections/papan-bunga-duka-cita-bandung", 13233 images: " ", 13234 price: " " 13235 }, { 13236 label: "Papan Bunga Duka Cita Bekasi", 13237 category: "Collection", 13238 url: "/collections/papan-bunga-duka-cita-bekasi", 13239 images: " ", 13240 price: " " 13241 }, { 13242 label: "Papan Bunga Duka Cita Bogor", 13243 category: "Collection", 13244 url: "/collections/papan-bunga-duka-cita-bogor", 13245 images: " ", 13246 price: " " 13247 }, { 13248 label: "Papan Bunga Duka Cita Cikupa", 13249 category: "Collection", 13250 url: "/collections/papan-bunga-duka-cita-cikupa", 13251 images: " ", 13252 price: " " 13253 }, { 13254 label: "Papan Bunga Duka Cita Demak", 13255 category: "Collection", 13256 url: "/collections/papan-bunga-duka-cita-demak", 13257 images: " ", 13258 price: " " 13259 }, { 13260 label: "Papan Bunga Duka Cita Depok", 13261 category: "Collection", 13262 url: "/collections/papan-bunga-duka-cita-depok", 13263 images: " ", 13264 price: " " 13265 }, { 13266 label: "Papan Bunga Duka Cita Gresik", 13267 category: "Collection", 13268 url: "/collections/papan-bunga-duka-cita-gresik", 13269 images: " ", 13270 price: " " 13271 }, { 13272 label: "Papan Bunga Duka Cita Jakarta", 13273 category: "Collection", 13274 url: "/collections/papan-bunga-duka-cita-jakarta", 13275 images: " ", 13276 price: " " 13277 }, { 13278 label: "Papan Bunga Duka Cita Jepara", 13279 category: "Collection", 13280 url: "/collections/papan-bunga-duka-cita-jepara", 13281 images: " ", 13282 price: " " 13283 }, { 13284 label: "Papan Bunga Duka Cita Medan", 13285 category: "Collection", 13286 url: "/collections/papan-bunga-duka-cita-medan", 13287 images: " ", 13288 price: " " 13289 }, { 13290 label: "Papan Bunga Duka Cita Semarang", 13291 category: "Collection", 13292 url: "/collections/papan-bunga-duka-cita-semarang", 13293 images: " ", 13294 price: " " 13295 }, { 13296 label: "Papan Bunga Duka Cita Serang", 13297 category: "Collection", 13298 url: "/collections/papan-bunga-duka-cita-serang", 13299 images: " ", 13300 price: " " 13301 }, { 13302 label: "Papan Bunga Duka Cita Sidoarjo", 13303 category: "Collection", 13304 url: "/collections/papan-bunga-duka-cita-sidoarjo", 13305 images: " ", 13306 price: " " 13307 }, { 13308 label: "Papan Bunga Duka Cita Surabaya", 13309 category: "Collection", 13310 url: "/collections/papan-bunga-duka-cita-surabaya", 13311 images: " ", 13312 price: " " 13313 }, { 13314 label: "Papan Bunga Duka Cita Tangerang", 13315 category: "Collection", 13316 url: "/collections/papan-bunga-duka-cita-tangerang", 13317 images: " ", 13318 price: " " 13319 }, { 13320 label: "Papan Bunga Duka Cita Yogyakarta", 13321 category: "Collection", 13322 url: "/collections/papan-bunga-duka-cita-yogyakarta", 13323 images: " ", 13324 price: " " 13325 }, { 13326 label: "Papan Bunga Garut", 13327 category: "Collection", 13328 url: "/collections/papan-bunga-garut", 13329 images: " ", 13330 price: " " 13331 }, { 13332 label: "Papan Bunga Gianyar", 13333 category: "Collection", 13334 url: "/collections/papan-bunga-gianyar", 13335 images: " ", 13336 price: " " 13337 }, { 13338 label: "Papan Bunga Gorontalo", 13339 category: "Collection", 13340 url: "/collections/papan-bunga-gorontalo", 13341 images: " ", 13342 price: " " 13343 }, { 13344 label: "Papan Bunga Gowa", 13345 category: "Collection", 13346 url: "/collections/papan-bunga-gowa", 13347 images: " ", 13348 price: " " 13349 }, { 13350 label: "Papan Bunga Gresik", 13351 category: "Collection", 13352 url: "/collections/papan-bunga-gresik", 13353 images: " ", 13354 price: " " 13355 }, {
13356 label: "Papan Bunga Grobogan", 13357 category: "Collection", 13358 url: "/collections/papan-bunga-grobogan", 13359 images: " ", 13360 price: " " 13361 }, { 13362 label: "Papan Bunga Gunungkidul", 13363 category: "Collection", 13364 url: "/collections/papan-bunga-gunungkidul", 13365 images: " ", 13366 price: " " 13367 }, { 13368 label: "Papan Bunga Indramayu", 13369 category: "Collection", 13370 url: "/collections/papan-bunga-indramayu", 13371 images: " ", 13372 price: " " 13373 }, { 13374 label: "Papan Bunga Jakarta", 13375 category: "Collection", 13376 url: "/collections/papan-bunga-jakarta", 13377 images: " ", 13378 price: " " 13379 }, { 13380 label: "Papan Bunga Jakarta Timur", 13381 category: "Collection", 13382 url: "/collections/papan-bunga-jakarta-timur", 13383 images: " ", 13384 price: " " 13385 }, { 13386 label: "Papan Bunga Jambi", 13387 category: "Collection", 13388 url: "/collections/papan-bunga-jambi", 13389 images: " ", 13390 price: " " 13391 }, { 13392 label: "Papan Bunga Jayapura", 13393 category: "Collection", 13394 url: "/collections/papan-bunga-jayapura", 13395 images: " ", 13396 price: " " 13397 }, { 13398 label: "Papan Bunga Jember", 13399 category: "Collection", 13400 url: "/collections/papan-bunga-jember", 13401 images: " ", 13402 price: " " 13403 }, { 13404 label: "Papan Bunga Jembrana", 13405 category: "Collection", 13406 url: "/collections/papan-bunga-jembrana", 13407 images: " ", 13408 price: " " 13409 }, { 13410 label: "Papan Bunga Jepara", 13411 category: "Collection", 13412 url: "/collections/papan-bunga-jepara", 13413 images: " ", 13414 price: " " 13415 }, { 13416 label: "Papan Bunga Jombang", 13417 category: "Collection", 13418 url: "/collections/papan-bunga-jombang", 13419 images: " ", 13420 price: " " 13421 }, { 13422 label: "Papan Bunga Kampung Baru", 13423 category: "Collection", 13424 url: "/collections/papan-bunga-kampung-baru", 13425 images: " ", 13426 price: " " 13427 }, { 13428 label: "Papan Bunga Kapuas", 13429 category: "Collection", 13430 url: "/collections/papan-bunga-kapuas", 13431 images: " ", 13432 price: " " 13433 }, { 13434 label: "Papan Bunga Karanganyar", 13435 category: "Collection", 13436 url: "/collections/papan-bunga-karanganyar", 13437 images: " ", 13438 price: " " 13439 }, { 13440 label: "Papan Bunga Karangasem", 13441 category: "Collection", 13442 url: "/collections/papan-bunga-karangasem", 13443 images: " ", 13444 price: " " 13445 }, { 13446 label: "Papan Bunga Karawang", 13447 category: "Collection", 13448 url: "/collections/papan-bunga-karawang", 13449 images: " ", 13450 price: " " 13451 }, { 13452 label: "Papan Bunga Karo", 13453 category: "Collection", 13454 url: "/collections/papan-bunga-karo", 13455 images: " ", 13456 price: " " 13457 }, { 13458 label: "Papan Bunga Kartosuro", 13459 category: "Collection", 13460 url: "/collections/papan-bunga-kartosuro", 13461 images: " ", 13462 price: " " 13463 }, { 13464 label: "Papan Bunga Kebumen", 13465 category: "Collection", 13466 url: "/collections/papan-bunga-kebumen", 13467 images: " ", 13468 price: " " 13469 }, { 13470 label: "Papan Bunga Kediri", 13471 category: "Collection", 13472 url: "/collections/papan-bunga-kediri", 13473 images: " ", 13474 price: " " 13475 }, { 13476 label: "Papan Bunga Kendal", 13477 category: "Collection", 13478 url: "/collections/papan-bunga-kendal", 13479 images: " ", 13480 price: " " 13481 }, { 13482 label: "Papan Bunga Kendari", 13483 category: "Collection",
13484 url: "/collections/papan-bunga-kendari", 13485 images: " ", 13486 price: " " 13487 }, { 13488 label: "Papan Bunga Ketapang", 13489 category: "Collection", 13490 url: "/collections/papan-bunga-ketapang", 13491 images: " ", 13492 price: " " 13493 }, { 13494 label: "Papan Bunga Klaten", 13495 category: "Collection", 13496 url: "/collections/papan-bunga-klaten", 13497 images: " ", 13498 price: " " 13499 }, { 13500 label: "Papan Bunga Kota Batu", 13501 category: "Collection", 13502 url: "/collections/papan-bunga-kota-batu", 13503 images: " ", 13504 price: " " 13505 }, { 13506 label: "Papan Bunga Kudus", 13507 category: "Collection", 13508 url: "/collections/papan-bunga-kudus", 13509 images: " ", 13510 price: " " 13511 }, { 13512 label: "Papan Bunga Kupang", 13513 category: "Collection", 13514 url: "/collections/papan-bunga-kupang", 13515 images: " ", 13516 price: " " 13517 }, { 13518 label: "Papan Bunga Lamongan", 13519 category: "Collection", 13520 url: "/collections/papan-bunga-lamongan", 13521 images: " ", 13522 price: " " 13523 }, { 13524 label: "Papan Bunga Lampu LED", 13525 category: "Collection", 13526 url: "/collections/papan-bunga-lampu-led", 13527 images: " ", 13528 price: " " 13529 }, { 13530 label: "Papan Bunga Lampung", 13531 category: "Collection", 13532 url: "/collections/papan-bunga-lampung", 13533 images: " ", 13534 price: " " 13535 }, { 13536 label: "Papan Bunga Langkat", 13537 category: "Collection", 13538 url: "/collections/papan-bunga-langkat", 13539 images: " ", 13540 price: " " 13541 }, { 13542 label: "Papan Bunga Lembang", 13543 category: "Collection", 13544 url: "/collections/papan-bunga-lembang", 13545 images: " ", 13546 price: " " 13547 }, { 13548 label: "Papan Bunga Lombok", 13549 category: "Collection", 13550 url: "/collections/papan-bunga-lombok", 13551 images: " ", 13552 price: " " 13553 }, { 13554 label: "Papan Bunga Lubuk Pakam", 13555 category: "Collection", 13556 url: "/collections/papan-bunga-lubuk-pakam", 13557 images: " ", 13558 price: " " 13559 }, { 13560 label: "Papan Bunga Lumajang", 13561 category: "Collection", 13562 url: "/collections/papan-bunga-lumajang", 13563 images: " ", 13564 price: " " 13565 }, { 13566 label: "Papan Bunga Madiun", 13567 category: "Collection", 13568 url: "/collections/papan-bunga-madiun", 13569 images: " ", 13570 price: " " 13571 }, { 13572 label: "Papan Bunga Magelang", 13573 category: "Collection", 13574 url: "/collections/papan-bunga-magelang", 13575 images: " ", 13576 price: " " 13577 }, { 13578 label: "Papan Bunga Majalengka", 13579 category: "Collection", 13580 url: "/collections/papan-bunga-majalengka", 13581 images: " ", 13582 price: " " 13583 }, { 13584 label: "Papan Bunga Makassar", 13585 category: "Collection", 13586 url: "/collections/papan-bunga-makassar", 13587 images: " ", 13588 price: " " 13589 }, { 13590 label: "Papan Bunga Malang", 13591 category: "Collection", 13592 url: "/collections/papan-bunga-malang", 13593 images: " ", 13594 price: " " 13595 }, { 13596 label: "Papan Bunga Mamuju", 13597 category: "Collection", 13598 url: "/collections/papan-bunga-mamuju", 13599 images: " ", 13600 price: " " 13601 }, { 13602 label: "Papan Bunga Manado", 13603 category: "Collection", 13604 url: "/collections/papan-bunga-manado", 13605 images: " ", 13606 price: " " 13607 }, { 13608 label: "Papan Bunga Manokwari", 13609 category: "Collection", 13610 url: "/collections/papan-bunga-manokwari", 13611 images: " ", 13612 price: " " 13613 }, {
13614 label: "Papan Bunga Maros", 13615 category: "Collection", 13616 url: "/collections/papan-bunga-maros", 13617 images: " ", 13618 price: " " 13619 }, { 13620 label: "Papan Bunga Mataram", 13621 category: "Collection", 13622 url: "/collections/papan-bunga-mataram", 13623 images: " ", 13624 price: " " 13625 }, { 13626 label: "Papan Bunga Medan", 13627 category: "Collection", 13628 url: "/collections/papan-bunga-medan", 13629 images: " ", 13630 price: " " 13631 }, { 13632 label: "Papan Bunga Mojokerto", 13633 category: "Collection", 13634 url: "/collections/papan-bunga-mojokerto", 13635 images: " ", 13636 price: " " 13637 }, { 13638 label: "Papan Bunga Nganjuk", 13639 category: "Collection", 13640 url: "/collections/papan-bunga-nganjuk", 13641 images: " ", 13642 price: " " 13643 }, { 13644 label: "Papan Bunga Ngawi", 13645 category: "Collection", 13646 url: "/collections/papan-bunga-ngawi", 13647 images: " ", 13648 price: " " 13649 }, { 13650 label: "Papan Bunga Nias", 13651 category: "Collection", 13652 url: "/collections/papan-bunga-nias", 13653 images: " ", 13654 price: " " 13655 }, { 13656 label: "Papan Bunga Organza", 13657 category: "Collection", 13658 url: "/collections/papan-bunga-organza", 13659 images: " ", 13660 price: " " 13661 }, { 13662 label: "Papan Bunga Padang", 13663 category: "Collection", 13664 url: "/collections/papan-bunga-padang", 13665 images: " ", 13666 price: " " 13667 }, { 13668 label: "Papan Bunga Palangkaraya", 13669 category: "Collection", 13670 url: "/collections/papan-bunga-palangkaraya", 13671 images: " ", 13672 price: " " 13673 }, { 13674 label: "Papan Bunga Palembang", 13675 category: "Collection", 13676 url: "/collections/papan-bunga-palembang", 13677 images: " ", 13678 price: " " 13679 }, { 13680 label: "Papan Bunga Palu", 13681 category: "Collection", 13682 url: "/collections/papan-bunga-palu", 13683 images: " ", 13684 price: " " 13685 }, { 13686 label: "Papan Bunga Pangkal Pinang", 13687 category: "Collection", 13688 url: "/collections/papan-bunga-pangkal-pinang", 13689 images: " ", 13690 price: " " 13691 }, { 13692 label: "Papan Bunga Parepare", 13693 category: "Collection", 13694 url: "/collections/papan-bunga-parepare", 13695 images: " ", 13696 price: " " 13697 }, { 13698 label: "Papan Bunga Pasuruan", 13699 category: "Collection", 13700 url: "/collections/papan-bunga-pasuruan", 13701 images: " ", 13702 price: " " 13703 }, { 13704 label: "Papan Bunga Pati", 13705 category: "Collection", 13706 url: "/collections/papan-bunga-pati", 13707 images: " ", 13708 price: " " 13709 }, { 13710 label: "Papan Bunga Pekalongan", 13711 category: "Collection", 13712 url: "/collections/papan-bunga-pekalongan", 13713 images: " ", 13714 price: " " 13715 }, { 13716 label: "Papan Bunga Pekanbaru", 13717 category: "Collection", 13718 url: "/collections/papan-bunga-pekanbaru", 13719 images: " ", 13720 price: " " 13721 }, { 13722 label: "Papan Bunga Pemalang", 13723 category: "Collection", 13724 url: "/collections/papan-bunga-pemalang", 13725 images: " ", 13726 price: " " 13727 }, { 13728 label: "Papan Bunga Pematangsiantar", 13729 category: "Collection", 13730 url: "/collections/papan-bunga-pematangsiantar", 13731 images: " ", 13732 price: " " 13733 }, { 13734 label: "Papan Bunga Pernikahan Bali", 13735 category: "Collection", 13736 url: "/collections/papan-bunga-pernikahan-bali", 13737 images: " ", 13738 price: " " 13739 }, { 13740 label: "Papan Bunga Pernikahan Bandung", 13741 category: "Collection", 13742 url: "/collections/papan-bunga-pernikahan-bandung", 13743 images: " ", 13744 price: " " 13745 }, {
13746 label: "Papan Bunga Pernikahan Bekasi", 13747 category: "Collection", 13748 url: "/collections/papan-bunga-pernikahan-bekasi", 13749 images: " ", 13750 price: " " 13751 }, { 13752 label: "Papan Bunga Pernikahan Bogor", 13753 category: "Collection", 13754 url: "/collections/papan-bunga-pernikahan-bogor", 13755 images: " ", 13756 price: " " 13757 }, { 13758 label: "Papan Bunga Pernikahan Cikupa", 13759 category: "Collection", 13760 url: "/collections/papan-bunga-pernikahan-cikupa", 13761 images: " ", 13762 price: " " 13763 }, { 13764 label: "Papan Bunga Pernikahan Demak", 13765 category: "Collection", 13766 url: "/collections/papan-bunga-pernikahan-demak", 13767 images: " ", 13768 price: " " 13769 }, { 13770 label: "Papan Bunga Pernikahan Depok", 13771 category: "Collection", 13772 url: "/collections/papan-bunga-pernikahan-depok", 13773 images: " ", 13774 price: " " 13775 }, { 13776 label: "Papan Bunga Pernikahan Gresik", 13777 category: "Collection", 13778 url: "/collections/papan-bunga-pernikahan-gresik", 13779 images: " ", 13780 price: " " 13781 }, { 13782 label: "Papan Bunga Pernikahan Jakarta", 13783 category: "Collection", 13784 url: "/collections/papan-bunga-pernikahan-jakarta", 13785 images: " ", 13786 price: " " 13787 }, { 13788 label: "Papan Bunga Pernikahan Jepara", 13789 category: "Collection", 13790 url: "/collections/papan-bunga-pernikahan-jepara", 13791 images: " ", 13792 price: " " 13793 }, { 13794 label: "Papan Bunga Pernikahan Medan", 13795 category: "Collection", 13796 url: "/collections/papan-bunga-pernikahan-medan", 13797 images: " ", 13798 price: " " 13799 }, { 13800 label: "Papan Bunga Pernikahan Semarang", 13801 category: "Collection", 13802 url: "/collections/papan-bunga-pernikahan-semarang", 13803 images: " ", 13804 price: " " 13805 }, { 13806 label: "Papan Bunga Pernikahan Serang", 13807 category: "Collection", 13808 url: "/collections/papan-bunga-pernikahan-serang", 13809 images: " ", 13810 price: " " 13811 }, { 13812 label: "Papan Bunga Pernikahan Sidoarjo", 13813 category: "Collection", 13814 url: "/collections/papan-bunga-pernikahan-sidoarjo", 13815 images: " ", 13816 price: " " 13817 }, { 13818 label: "Papan Bunga Pernikahan Surabaya", 13819 category: "Collection", 13820 url: "/collections/papan-bunga-pernikahan-surabaya", 13821 images: " ", 13822 price: " " 13823 }, { 13824 label: "Papan Bunga Pernikahan Tangerang", 13825 category: "Collection", 13826 url: "/collections/papan-bunga-pernikahan-tangerang", 13827 images: " ", 13828 price: " " 13829 }, { 13830 label: "Papan Bunga Pernikahan Yogyakarta", 13831 category: "Collection", 13832 url: "/collections/papan-bunga-pernikahan-yogyakarta", 13833 images: " ", 13834 price: " " 13835 }, { 13836 label: "Papan Bunga Ponorogo", 13837 category: "Collection", 13838 url: "/collections/papan-bunga-ponorogo", 13839 images: " ", 13840 price: " " 13841 }, { 13842 label: "Papan Bunga Pontianak", 13843 category: "Collection", 13844 url: "/collections/papan-bunga-pontianak", 13845 images: " ", 13846 price: " " 13847 }, { 13848 label: "Papan Bunga Premium", 13849 category: "Collection", 13850 url: "/collections/papan-bunga-premium", 13851 images: " ", 13852 price: " " 13853 }, { 13854 label: "Papan Bunga Printing", 13855 category: "Collection", 13856 url: "/collections/papan-bunga-printing", 13857 images: " ", 13858 price: " " 13859 }, { 13860 label: "Papan Bunga Printing Congratulations", 13861 category: "Collection", 13862 url: "/collections/papan-bunga-printing-congratulations", 13863 images: " ", 13864 price: " " 13865 }, {
13866 label: "Papan Bunga Probolinggo", 13867 category: "Collection", 13868 url: "/collections/papan-bunga-probolinggo", 13869 images: " ", 13870 price: " " 13871 }, { 13872 label: "Papan Bunga Promo", 13873 category: "Collection", 13874 url: "/collections/promo-papan-bunga", 13875 images: " ", 13876 price: " " 13877 }, { 13878 label: "Papan Bunga Purbalingga", 13879 category: "Collection", 13880 url: "/collections/papan-bunga-purbalingga", 13881 images: " ", 13882 price: " " 13883 }, { 13884 label: "Papan Bunga Purwokerto", 13885 category: "Collection", 13886 url: "/collections/papan-bunga-purwokerto", 13887 images: " ", 13888 price: " " 13889 }, { 13890 label: "Papan Bunga Purworejo", 13891 category: "Collection", 13892 url: "/collections/papan-bunga-purworejo", 13893 images: " ", 13894 price: " " 13895 }, { 13896 label: "Papan Bunga Rembang", 13897 category: "Collection", 13898 url: "/collections/papan-bunga-rembang", 13899 images: " ", 13900 price: " " 13901 }, { 13902 label: "Papan Bunga Riau", 13903 category: "Collection", 13904 url: "/collections/papan-bunga-riau", 13905 images: " ", 13906 price: " " 13907 }, { 13908 label: "Papan Bunga Salatiga", 13909 category: "Collection", 13910 url: "/collections/papan-bunga-salatiga", 13911 images: " ", 13912 price: " " 13913 }, { 13914 label: "Papan Bunga Samarinda", 13915 category: "Collection", 13916 url: "/collections/papan-bunga-samarinda", 13917 images: " ", 13918 price: " " 13919 }, { 13920 label: "Papan Bunga Selamat Bandung", 13921 category: "Collection", 13922 url: "/collections/papan-bunga-selamat-bandung", 13923 images: " ", 13924 price: " " 13925 }, { 13926 label: "Papan Bunga Selamat Medan", 13927 category: "Collection", 13928 url: "/collections/papan-bunga-selamat-medan", 13929 images: " ", 13930 price: " " 13931 }, { 13932 label: "Papan Bunga Semarang", 13933 category: "Collection", 13934 url: "/collections/papan-bunga-semarang", 13935 images: " ", 13936 price: " " 13937 }, { 13938 label: "Papan Bunga Serang", 13939 category: "Collection", 13940 url: "/collections/papan-bunga-serang", 13941 images: " ", 13942 price: " " 13943 }, { 13944 label: "Papan Bunga Sibolga", 13945 category: "Collection", 13946 url: "/collections/papan-bunga-sibolga", 13947 images: " ", 13948 price: " " 13949 }, { 13950 label: "Papan Bunga Sidoarjo", 13951 category: "Collection", 13952 url: "/collections/papan-bunga-sidoarjo", 13953 images: " ", 13954 price: " " 13955 }, { 13956 label: "Papan Bunga Singkawang", 13957 category: "Collection", 13958 url: "/collections/papan-bunga-singkawang", 13959 images: " ", 13960 price: " " 13961 }, { 13962 label: "Papan Bunga Solo", 13963 category: "Collection", 13964 url: "/collections/papan-bunga-solo", 13965 images: " ", 13966 price: " " 13967 }, { 13968 label: "Papan Bunga Sorong", 13969 category: "Collection", 13970 url: "/collections/papan-bunga-sorong", 13971 images: " ", 13972 price: " " 13973 }, { 13974 label: "Papan Bunga Sragen", 13975 category: "Collection", 13976 url: "/collections/papan-bunga-sragen", 13977 images: " ", 13978 price: " " 13979 }, { 13980 label: "Papan Bunga Standard", 13981 category: "Collection", 13982 url: "/collections/papan-bunga-standard", 13983 images: " ", 13984 price: " " 13985 }, { 13986 label: "Papan Bunga Subang", 13987 category: "Collection", 13988 url: "/collections/papan-bunga-subang", 13989 images: " ", 13990 price: " " 13991 }, { 13992 label: "Papan Bunga Sukabumi", 13993 category: "Collection", 13994 url: "/collections/papan-bunga-sukabumi", 13995 images: " ", 13996 price: " " 13997 }, {
13998 label: "Papan Bunga Sumbawa", 13999 category: "Collection", 14000 url: "/collections/papan-bunga-sumbawa", 14001 images: " ", 14002 price: " " 14003 }, { 14004 label: "Papan Bunga Surabaya", 14005 category: "Collection", 14006 url: "/collections/papan-bunga-surabaya", 14007 images: " ", 14008 price: " " 14009 }, { 14010 label: "Papan Bunga Surakarta", 14011 category: "Collection", 14012 url: "/collections/papan-bunga-surakarta", 14013 images: " ", 14014 price: " " 14015 }, { 14016 label: "Papan Bunga Tangerang", 14017 category: "Collection", 14018 url: "/collections/papan-bunga-tangerang", 14019 images: " ", 14020 price: " " 14021 }, { 14022 label: "Papan Bunga Tasikmalaya", 14023 category: "Collection", 14024 url: "/collections/papan-bunga-tasikmalaya", 14025 images: " ", 14026 price: " " 14027 }, { 14028 label: "Papan Bunga Tegal", 14029 category: "Collection", 14030 url: "/collections/papan-bunga-tegal", 14031 images: " ", 14032 price: " " 14033 }, { 14034 label: "Papan Bunga Temanggung", 14035 category: "Collection", 14036 url: "/collections/papan-bunga-temanggung", 14037 images: " ", 14038 price: " " 14039 }, { 14040 label: "Papan Bunga Ternate", 14041 category: "Collection", 14042 url: "/collections/papan-bunga-ternate", 14043 images: " ", 14044 price: " " 14045 }, { 14046 label: "Papan Bunga Tolitoli", 14047 category: "Collection", 14048 url: "/collections/papan-bunga-tolitoli", 14049 images: " ", 14050 price: " " 14051 }, { 14052 label: "Papan Bunga Toraja", 14053 category: "Collection", 14054 url: "/collections/papan-bunga-toraja", 14055 images: " ", 14056 price: " " 14057 }, { 14058 label: "Papan Bunga Tuban", 14059 category: "Collection", 14060 url: "/collections/papan-bunga-tuban", 14061 images: " ", 14062 price: " " 14063 }, { 14064 label: "Papan Bunga Tulungagung", 14065 category: "Collection", 14066 url: "/collections/papan-bunga-tulungagung", 14067 images: " ", 14068 price: " " 14069 }, { 14070 label: "Papan Bunga Wakatobi", 14071 category: "Collection", 14072 url: "/collections/papan-bunga-wakatobi", 14073 images: " ", 14074 price: " " 14075 }, { 14076 label: "Papan Bunga Wedding", 14077 category: "Collection", 14078 url: "/collections/papan-bunga-ucapan-pernikahan", 14079 images: " ", 14080 price: " " 14081 }, { 14082 label: "Papan Bunga Wiyung", 14083 category: "Collection", 14084 url: "/collections/papan-bunga-wiyung", 14085 images: " ", 14086 price: " " 14087 }, { 14088 label: "Papan Bunga Wonogiri", 14089 category: "Collection", 14090 url: "/collections/papan-bunga-wonogiri", 14091 images: " ", 14092 price: " " 14093 }, { 14094 label: "Papan Bunga Wonokromo", 14095 category: "Collection", 14096 url: "/collections/papan-bunga-wonokromo", 14097 images: " ", 14098 price: " " 14099 }, { 14100 label: "Papan Bunga Wonosobo", 14101 category: "Collection", 14102 url: "/collections/papan-bunga-wonosobo", 14103 images: " ", 14104 price: " " 14105 }, { 14106 label: "Papan Bunga Yogyakarta", 14107 category: "Collection", 14108 url: "/collections/papan-bunga-yogyakarta", 14109 images: " ", 14110 price: " " 14111 }, { 14112 label: "Paper Flower Board", 14113 category: "Collection", 14114 url: "/collections/papan-bunga-kertas", 14115 images: " ", 14116 price: " " 14117 }, { 14118 label: "Paper Flower Board Bali", 14119 category: "Collection", 14120 url: "/collections/papan-bunga-kertas-bali", 14121 images: " ", 14122 price: " " 14123 }, { 14124 label: "Paper Flower Board Gresik", 14125 category: "Collection", 14126 url: "/collections/papan-bunga-kertas-gresik", 14127 images: " ", 14128 price: " " 14129 }, {
14130 label: "Paper Flower Board Sidoarjo", 14131 category: "Collection", 14132 url: "/collections/papan-bunga-kertas-sidoarjo", 14133 images: " ", 14134 price: " " 14135 }, { 14136 label: "Paper Flower Board Surabaya", 14137 category: "Collection", 14138 url: "/collections/papan-bunga-kertas-surabaya", 14139 images: " ", 14140 price: " " 14141 }, { 14142 label: "Paper Flower Board Yogyakarta", 14143 category: "Collection", 14144 url: "/collections/papan-bunga-kertas-yogyakarta", 14145 images: " ", 14146 price: " " 14147 }, { 14148 label: "Parcel", 14149 category: "Collection", 14150 url: "/collections/parcel", 14151 images: " ", 14152 price: " " 14153 }, { 14154 label: "Parcel Buah", 14155 category: "Collection", 14156 url: "/collections/parcel-buah-segar", 14157 images: " ", 14158 price: " " 14159 }, { 14160 label: "Parcel Buah Bandung", 14161 category: "Collection", 14162 url: "/collections/parcel-buah-bandung", 14163 images: " ", 14164 price: " " 14165 }, { 14166 label: "Parcel Buah Semarang", 14167 category: "Collection", 14168 url: "/collections/parcel-buah-semarang", 14169 images: " ", 14170 price: " " 14171 }, { 14172 label: "Parcel Buah Sidoarjo", 14173 category: "Collection", 14174 url: "/collections/parcel-buah-sidoarjo", 14175 images: " ", 14176 price: " " 14177 }, { 14178 label: "Parcel Buah Surabaya", 14179 category: "Collection", 14180 url: "/collections/parcel-buah-surabaya", 14181 images: " ", 14182 price: " " 14183 }, { 14184 label: "Parcel Imlek 2026", 14185 category: "Collection", 14186 url: "/collections/parcel-imlek", 14187 images: " ", 14188 price: " " 14189 }, { 14190 label: "Parcel Imlek Bandung", 14191 category: "Collection", 14192 url: "/collections/parcel-imlek-bandung", 14193 images: " ", 14194 price: " " 14195 }, { 14196 label: "Parcel Imlek Nusantara", 14197 category: "Collection", 14198 url: "/collections/parcel-imlek-nusantara", 14199 images: " ", 14200 price: " " 14201 }, { 14202 label: "Parcel Lebaran Bandung", 14203 category: "Collection", 14204 url: "/collections/parcel-lebaran-bandung", 14205 images: " ", 14206 price: " " 14207 }, { 14208 label: "Parcel Lebaran Nusantara", 14209 category: "Collection", 14210 url: "/collections/parcel-lebaran-indonesia", 14211 images: " ", 14212 price: " " 14213 }, { 14214 label: "Parcel Lebaran Surabaya", 14215 category: "Collection", 14216 url: "/collections/parcel-lebaran-surabaya", 14217 images: " ", 14218 price: " " 14219 }, { 14220 label: "Parcel Makanan", 14221 category: "Collection", 14222 url: "/collections/parcel-makanan", 14223 images: " ", 14224 price: " " 14225 }, { 14226 label: "Parcel Natal & Tahun Baru 2026", 14227 category: "Collection", 14228 url: "/collections/hampers-natal", 14229 images: " ", 14230 price: " " 14231 }, { 14232 label: "Parcel Natal & Tahun Baru Bandung", 14233 category: "Collection", 14234 url: "/collections/parcel-natal-bandung", 14235 images: " ", 14236 price: " " 14237 }, { 14238 label: "Parcel Newborn Nusantara", 14239 category: "Collection", 14240 url: "/collections/parcel-newborn-nusantara", 14241 images: " ", 14242 price: " " 14243 }, { 14244 label: "Parcel Tahun Baru", 14245 category: "Collection", 14246 url: "/collections/new-year-tahun-baru", 14247 images: " ", 14248 price: " " 14249 }, { 14250 label: "Party Supplies", 14251 category: "Collection", 14252 url: "/collections/party-supplies", 14253 images: " ", 14254 price: " " 14255 }, { 14256 label: "Partysaurus", 14257 category: "Collection", 14258 url: "/collections/partysaurus", 14259 images: " ", 14260 price: " " 14261 }, { 14262 label: "Pasar Bunga Splendid Malang", 14263 category: "Collection", 14264 url: "/collections/pasar-bunga-splendid-malang", 14265 images: " ", 14266 price: " " 14267 }, { 14268 label: "Passionate Red Valentine", 14269 category: "Collection", 14270 url: "/collections/red-valentine", 14271 images: " ", 14272 price: " " 14273 }, { 14274 label: "Pendant", 14275 category: "Collection", 14276 url: "/collections/liontin", 14277 images: " ", 14278 price: " " 14279 }, { 14280 label: "Personalized Fashion", 14281 category: "Collection", 14282 url: "/collections/fashion", 14283 images: " ", 14284 price: " " 14285 }, { 14286 label: "Personalized Gift", 14287 category: "Collection", 14288 url: "/collections/personalized-gift", 14289 images: " ", 14290 price: " " 14291 }, {
14292 label: "Personalized Gift Pria", 14293 category: "Collection", 14294 url: "/collections/personalized-gift-pria", 14295 images: " ", 14296 price: " " 14297 }, { 14298 label: "Personalized Gift Wanita", 14299 category: "Collection", 14300 url: "/collections/personalized-gift-wanita", 14301 images: " ", 14302 price: " " 14303 }, { 14304 label: "Personalized Gifts", 14305 category: "Collection", 14306 url: "/collections/personalized-gifts", 14307 images: " ", 14308 price: " " 14309 }, { 14310 label: "Pesca Ice Cream Cakes", 14311 category: "Collection", 14312 url: "/collections/pesca", 14313 images: " ", 14314 price: " " 14315 }, { 14316 label: "Phone Case", 14317 category: "Collection", 14318 url: "/collections/phone-case", 14319 images: " ", 14320 price: " " 14321 }, { 14322 label: "Photobook", 14323 category: "Collection", 14324 url: "/collections/photobook", 14325 images: " ", 14326 price: " " 14327 }, { 14328 label: "Pisces âï¸ 19Feb - 20March", 14329 category: "Collection", 14330 url: "/collections/kado-untuk-zodiak-pisces", 14331 images: " ", 14332 price: " " 14333 }, { 14334 label: "Pohon Natal", 14335 category: "Collection", 14336 url: "/collections/pohon-natal", 14337 images: " ", 14338 price: " " 14339 }, { 14340 label: "Premium Hampers", 14341 category: "Collection", 14342 url: "/collections/parcel-premium", 14343 images: " ", 14344 price: " " 14345 }, { 14346 label: "Premium Newborn Hampers Collection", 14347 category: "Collection", 14348 url: "/collections/premium-newborn-hampers-collection", 14349 images: " ", 14350 price: " " 14351 }, { 14352 label: "Printing Cake", 14353 category: "Collection", 14354 url: "/collections/printing-cake", 14355 images: " ", 14356 price: " " 14357 }, { 14358 label: "Prom", 14359 category: "Collection", 14360 url: "/collections/prom", 14361 images: " ", 14362 price: " " 14363 }, { 14364 label: "Promo Merdeka", 14365 category: "Collection", 14366 url: "/collections/merdeka", 14367 images: " ", 14368 price: " " 14369 }, { 14370 label: "Rangkaian Bunga", 14371 category: "Collection", 14372 url: "/collections/rangkaian-bunga", 14373 images: " ", 14374 price: " " 14375 }, { 14376 label: "Rangkaian Bunga Dekorasi", 14377 category: "Collection", 14378 url: "/collections/rangkaian-bunga-dekorasi", 14379 images: " ", 14380 price: " " 14381 }, { 14382 label: "Rangkaian Bunga Ulang Tahun", 14383 category: "Collection", 14384 url: "/collections/rangkaian-bunga-ulang-tahun", 14385 images: " ", 14386 price: " " 14387 }, { 14388 label: "Romantic & Sweets", 14389 category: "Collection", 14390 url: "/collections/romantic-sweets", 14391 images: " ", 14392 price: " " 14393 }, { 14394 label: "Romantic Package", 14395 category: "Collection", 14396 url: "/collections/romantic-package", 14397 images: " ", 14398 price: " " 14399 }, { 14400 label: "Rose Beam", 14401 category: "Collection", 14402 url: "/collections/rose-beam", 14403 images: " ", 14404 price: " " 14405 }, { 14406 label: "Rose Box", 14407 category: "Collection", 14408 url: "/collections/rose-box", 14409 images: " ", 14410 price: " " 14411 }, { 14412 label: "Roses", 14413 category: "Collection", 14414 url: "/collections/bunga-mawar", 14415 images: " ", 14416 price: " " 14417 }, { 14418 label: "Rp 500.000 - Rp 800.000", 14419 category: "Collection", 14420 url: "/collections/rp-500-000-rp-800-000", 14421 images: " ", 14422 price: " " 14423 }, { 14424 label: "Rp 800.000 - Rp 1.000.000", 14425 category: "Collection", 14426 url: "/collections/rp-800-000-rp-1-000-000", 14427 images: " ", 14428 price: " " 14429 }, { 14430 label: "Rustic & Monochrome Ramadan Hampers", 14431 category: "Collection", 14432 url: "/collections/rustic-monochrome-ramadanhampers", 14433 images: " ", 14434 price: " " 14435 }, { 14436 label: "Rustic Bloom", 14437 category: "Collection", 14438 url: "/collections/dried-flowers", 14439 images: " ", 14440 price: " " 14441 }, { 14442 label: "Rustic Style Flowers", 14443 category: "Collection", 14444 url: "/collections/rustic-style-flowers", 14445 images: " ", 14446 price: " " 14447 }, { 14448 label: "Sagittarius âï¸ 22Nov - 21Des", 14449 category: "Collection", 14450 url: "/collections/kado-untuk-zodiak-sagittarius", 14451 images: " ", 14452 price: " " 14453 }, { 14454 label: "Sameday Delivery", 14455 category: "Collection", 14456 url: "/collections/sameday", 14457 images: " ", 14458 price: " " 14459 }, { 14460 label: "Savoury Dish", 14461 category: "Collection", 14462 url: "/collections/savoury-dish", 14463 images: " ", 14464 price: " " 14465 }, { 14466 label: "Saychiz", 14467 category: "Collection", 14468 url: "/collections/saychiz", 14469 images: " ", 14470 price: " " 14471 }, { 14472 label: "Scented Candles", 14473 category: "Collection", 14474 url: "/collections/scented-candles", 14475 images: " ", 14476 price: " " 14477 }, { 14478 label: "Scorpio âï¸ 24Oct - 21Nov", 14479 category: "Collection", 14480 url: "/collections/kado-untuk-zodiak-scorpio", 14481 images: " ", 14482 price: " " 14483 }, { 14484 label: "Self Pick-Up", 14485 category: "Collection", 14486 url: "/collections/self-pick-up", 14487 images: " ", 14488 price: " " 14489 }, { 14490 label: "Semua Produk", 14491 category: "Collection", 14492 url: "/collections/all", 14493 images: " ", 14494 price: " " 14495 }, { 14496 label: "Serenitea", 14497 category: "Collection", 14498 url: "/collections/serenitea", 14499 images: " ", 14500 price: " " 14501 }, { 14502 label: "Share Outerbloom Moment", 14503 category: "Collection", 14504 url: "/collections/share-moment", 14505 images: " ", 14506 price: " " 14507 }, { 14508 label: "Share your Happiness", 14509 category: "Collection", 14510 url: "/collections/share-happiness", 14511 images: " ", 14512 price: " " 14513 }, { 14514 label: "Signature Cake", 14515 category: "Collection", 14516 url: "/collections/signature-cake", 14517 images: " ", 14518 price: " " 14519 }, { 14520 label: "Signature Chinese New Year Hampers", 14521 category: "Collection", 14522 url: "/collections/signature-chinese-new-year-hampers", 14523 images: " ", 14524 price: " " 14525 }, { 14526 label: "Signature Christmas & New Year Hampers", 14527 category: "Collection", 14528 url: "/collections/signature-christmas-hampers", 14529 images: " ", 14530 price: " " 14531 }, { 14532 label: "Signature Hampers", 14533 category: "Collection", 14534 url: "/collections/signature-hampers", 14535 images: " ", 14536 price: " " 14537 }, { 14538 label: "Signature Hampers Luar Jadetabek", 14539 category: "Collection", 14540 url: "/collections/signature-hampers-luar-jadetabek", 14541 images: " ", 14542 price: " " 14543 }, { 14544 label: "Signature Hampers Sameday", 14545 category: "Collection", 14546 url: "/collections/signature-hampers-sameday", 14547 images: " ", 14548 price: " " 14549 }, { 14550 label: "Signature Ramadan Hampers", 14551 category: "Collection", 14552 url: "/collections/signature-ramadan-hampers", 14553 images: " ", 14554 price: " " 14555 }, { 14556 label: "Slice Cake", 14557 category: "Collection", 14558 url: "/collections/slice-cake", 14559 images: " ", 14560 price: " " 14561 }, { 14562 label: "Snack Box", 14563 category: "Collection", 14564 url: "/collections/snack-box", 14565 images: " ", 14566 price: " " 14567 }, { 14568 label: "Sol et Terre", 14569 category: "Collection", 14570 url: "/collections/sol-et-terre", 14571 images: " ", 14572 price: " " 14573 }, { 14574 label: "Sorbet", 14575 category: "Collection", 14576 url: "/collections/sorbet", 14577 images: " ", 14578 price: " " 14579 }, { 14580 label: "Special Day", 14581 category: "Collection", 14582 url: "/collections/special-day", 14583 images: " ", 14584 price: " " 14585 }, { 14586 label: "Special Edition", 14587 category: "Collection", 14588 url: "/collections/special-edition", 14589 images: " ", 14590 price: " " 14591 }, { 14592 label: "Special For Her", 14593 category: "Collection", 14594 url: "/collections/special-for-her", 14595 images: " ", 14596 price: " " 14597 }, { 14598 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin.", 14599 category: "Collection", 14600 url: "/collections/standing-flower", 14601 images: " ", 14602 price: " " 14603 }, { 14604 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin. Bali", 14605 category: "Collection", 14606 url: "/collections/standing-flower-bali", 14607 images: " ", 14608 price: " " 14609 }, { 14610 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin. Bandung", 14611 category: "Collection", 14612 url: "/collections/standing-flower-bandung", 14613 images: " ", 14614 price: " " 14615 }, { 14616 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin. Congratulations", 14617 category: "Collection", 14618 url: "/collections/standing-flower-congratulations", 14619 images: " ", 14620 price: " " 14621 }, { 14622 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin. Demak", 14623 category: "Collection", 14624 url: "/collections/standing-flower-demak", 14625 images: " ", 14626 price: " " 14627 }, { 14628 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin. Jepara", 14629 category: "Collection", 14630 url: "/collections/standing-flower-jepara", 14631 images: " ", 14632 price: " " 14633 }, { 14634 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin. Semarang", 14635 category: "Collection", 14636 url: "/collections/standing-flower-semarang", 14637 images: " ", 14638 price: " " 14639 }, { 14640 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin. Sidoarjo", 14641 category: "Collection", 14642 url: "/collections/standing-flower-sidoarjo", 14643 images: " ", 14644 price: " " 14645 }, { 14646 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin. Surabaya", 14647 category: "Collection", 14648 url: "/collections/standing-flower-surabaya", 14649 images: " ", 14650 price: " " 14651 }, { 14652 label: "Venom123 Spin terbaik dalam setiap putarannya! Nikmati pengalaman bermain yang seru, pilihan permainan menarik, dan kesempatan meraih kemenangan di setiap spin. Yogyakarta", 14653 category: "Collection", 14654 url: "/collections/standing-flower-yogyakarta", 14655 images: " ", 14656 price: " " 14657 }, { 14658 label: "Standing Giant Flower", 14659 category: "Collection", 14660 url: "/collections/standing-giant-flower", 14661 images: " ", 14662 price: " " 14663 }, { 14664 label: "Stationery", 14665 category: "Collection", 14666 url: "/collections/stationery", 14667 images: " ", 14668 price: " " 14669 }, { 14670 label: "Steekwerk", 14671 category: "Collection", 14672 url: "/collections/steekwerk", 14673 images: " ", 14674 price: " " 14675 }, { 14676 label: "Stylish Hampers", 14677 category: "Collection", 14678 url: "/collections/stylish-hampers", 14679 images: " ", 14680 price: " " 14681 }, { 14682 label: "Stylish Hampers Luar Jadetabek", 14683 category: "Collection", 14684 url: "/collections/stylish-hampers-luar-jadetabek", 14685 images: " ", 14686 price: " " 14687 }, { 14688 label: "Succulent", 14689 category: "Collection", 14690 url: "/collections/succulent", 14691 images: " ", 14692 price: " " 14693 }, { 14694 label: "Sunflower", 14695 category: "Collection", 14696 url: "/collections/bunga-matahari", 14697 images: " ", 14698 price: " " 14699 }, { 14700 label: "Sweet & Savoury Hampers", 14701 category: "Collection", 14702 url: "/collections/sweet-savoury-hampers", 14703 images: " ", 14704 price: " " 14705 }, { 14706 label: "Sweet Gracie", 14707 category: "Collection", 14708 url: "/collections/sweet-gracie", 14709 images: " ", 14710 price: " " 14711 }, { 14712 label: "Sweet Pastel Love", 14713 category: "Collection", 14714 url: "/collections/pastel-love", 14715 images: " ", 14716 price: " " 14717 }, { 14718 label: "Sweet Pastel Love Nusantara", 14719 category: "Collection", 14720 url: "/collections/sweet-pastel-love-nusantara", 14721 images: " ", 14722 price: " " 14723 }, { 14724 label: "Sweet Treats", 14725 category: "Collection", 14726 url: "/collections/sweet-treats", 14727 images: " ", 14728 price: " " 14729 }, { 14730 label: "Sweetooth", 14731 category: "Collection", 14732 url: "/collections/sweetooth", 14733 images: " ", 14734 price: " " 14735 }, { 14736 label: "Taurus âï¸ 20April - 20May", 14737 category: "Collection", 14738 url: "/collections/kado-untuk-zodiak-taurus", 14739 images: " ", 14740 price: " " 14741 }, { 14742 label: "Teddy Bear", 14743 category: "Collection", 14744 url: "/collections/boneka-teddy-bear", 14745 images: " ", 14746 price: " " 14747 }, { 14748 label: "Teh", 14749 category: "Collection", 14750 url: "/collections/teh", 14751 images: " ", 14752 price: " " 14753 }, { 14754 label: "Test Error", 14755 category: "Collection", 14756 url: "/collections/test-error", 14757 images: " ", 14758 price: " " 14759 }, { 14760 label: "Testing", 14761 category: "Collection", 14762 url: "/collections/testing", 14763 images: " ", 14764 price: " " 14765 }, { 14766 label: "Thank You", 14767 category: "Collection", 14768 url: "/collections/rangkaian-bunga-ucapan-terima-kasih", 14769 images: " ", 14770 price: " " 14771 }, { 14772 label: "The Classic Astoria", 14773 category: "Collection", 14774 url: "/collections/astoria", 14775 images: " ", 14776 price: " " 14777 },
14777 { 14778 label: "The Classic Enchanted Dome", 14779 category: "Collection", 14780 url: "/collections/enchanted-dome", 14781 images: " ", 14782 price: " " 14783 }, { 14784 label: "The Enchanted Love Pirouette Special Edition", 14785 category: "Collection", 14786 url: "/collections/the-enchanted-love-pirouette-special-edition", 14787 images: " ", 14788 price: " " 14789 }, { 14790 label: "The F Thing", 14791 category: "Collection", 14792 url: "/collections/the-f-thing", 14793 images: " ", 14794 price: " " 14795 }, { 14796 label: "The First", 14797 category: "Collection", 14798 url: "/collections/the-first", 14799 images: " ", 14800 price: " " 14801 }, { 14802 label: "The Novo Astoria", 14803 category: "Collection", 14804 url: "/collections/the-novo-astoria", 14805 images: " ", 14806 price: " " 14807 }, { 14808 label: "The Novo Enchanted Dome", 14809 category: "Collection", 14810 url: "/collections/the-novo-enchanted-dome", 14811 images: " ", 14812 price: " " 14813 }, { 14814 label: "The Novo Enchanted Dome Special Edition", 14815 category: "Collection", 14816 url: "/collections/the-novo-enchanted-dome-special-edition", 14817 images: " ", 14818 price: " " 14819 }, { 14820 label: "The Palace", 14821 category: "Collection", 14822 url: "/collections/the-palace", 14823 images: " ", 14824 price: " " 14825 }, { 14826 label: "Ties", 14827 category: "Collection", 14828 url: "/collections/dasi", 14829 images: " ", 14830 price: " " 14831 }, { 14832 label: "Tisane", 14833 category: "Collection", 14834 url: "/collections/tisane", 14835 images: " ", 14836 price: " " 14837 }, { 14838 label: "Toko Bunga Aceh", 14839 category: "Collection", 14840 url: "/collections/toko-bunga-aceh", 14841 images: " ", 14842 price: " " 14843 }, { 14844 label: "Toko Bunga Ambon", 14845 category: "Collection", 14846 url: "/collections/toko-bunga-ambon", 14847 images: " ", 14848 price: " " 14849 }, { 14850 label: "Toko Bunga Atambua", 14851 category: "Collection", 14852 url: "/collections/toko-bunga-atambua", 14853 images: " ", 14854 price: " " 14855 }, { 14856 label: "Toko Bunga Bali", 14857 category: "Collection", 14858 url: "/collections/toko-bunga-bali", 14859 images: " ", 14860 price: " " 14861 }, { 14862 label: "Toko Bunga Balikpapan", 14863 category: "Collection", 14864 url: "/collections/toko-bunga-balikpapan", 14865 images: " ", 14866 price: " " 14867 }, { 14868 label: "Toko Bunga Bandar Lampung", 14869 category: "Collection", 14870 url: "/collections/toko-bunga-bandar-lampung", 14871 images: " ", 14872 price: " " 14873 }, { 14874 label: "Toko Bunga Bandung", 14875 category: "Collection", 14876 url: "/collections/toko-bunga-bandung", 14877 images: " ", 14878 price: " " 14879 }, { 14880 label: "Toko Bunga Bandung Barat", 14881 category: "Collection", 14882 url: "/collections/toko-bunga-bandung-barat", 14883 images: " ", 14884 price: " " 14885 }, { 14886 label: "Toko Bunga Banjarmasin", 14887 category: "Collection", 14888 url: "/collections/toko-bunga-banjarmasin", 14889 images: " ", 14890 price: " " 14891 }, { 14892 label: "Toko Bunga Banten", 14893 category: "Collection", 14894 url: "/collections/toko-bunga-banten", 14895 images: " ", 14896 price: " " 14897 }, { 14898 label: "Toko Bunga Banyumas", 14899 category: "Collection", 14900 url: "/collections/toko-bunga-banyumas", 14901 images: " ", 14902 price: " " 14903 }, { 14904 label: "Toko Bunga Banyuwangi", 14905 category: "Collection", 14906 url: "/collections/toko-bunga-banyuwangi", 14907 images: " ", 14908 price: " " 14909 }, { 14910 label: "Toko Bunga Batam", 14911 category: "Collection", 14912 url: "/collections/toko-bunga-batam", 14913 images: " ", 14914 price: " " 14915 }, { 14916 label: "Toko Bunga Baubau", 14917 category: "Collection", 14918 url: "/collections/toko-bunga-baubau", 14919 images: " ", 14920 price: " " 14921 }, { 14922 label: "Toko Bunga Bekasi", 14923 category: "Collection", 14924 url: "/collections/toko-bunga-bekasi", 14925 images: " ", 14926 price: " " 14927 }, { 14928 label: "Toko Bunga Bengkalis", 14929 category: "Collection", 14930 url: "/collections/toko-bunga-bengkalis", 14931 images: " ", 14932 price: " " 14933 }, { 14934 label: "Toko Bunga Bengkayang", 14935 category: "Collection", 14936 url: "/collections/toko-bunga-bengkayang", 14937 images: " ", 14938 price: " " 14939 }, { 14940 label: "Toko Bunga Binjai", 14941 category: "Collection", 14942 url: "/collections/toko-bunga-binjai", 14943 images: " ", 14944 price: " " 14945 }, { 14946 label: "Toko Bunga Bintaro", 14947 category: "Collection", 14948 url: "/collections/toko-bunga-bintaro", 14949 images: " ", 14950 price: " " 14951 }, { 14952 label: "Toko Bunga Blitar", 14953 category: "Collection", 14954 url: "/collections/toko-bunga-blitar",
14955 images: " ", 14956 price: " " 14957 }, { 14958 label: "Toko Bunga Blora", 14959 category: "Collection", 14960 url: "/collections/toko-bunga-blora", 14961 images: " ", 14962 price: " " 14963 }, { 14964 label: "Toko Bunga Bogor", 14965 category: "Collection", 14966 url: "/collections/toko-bunga-bogor", 14967 images: " ", 14968 price: " " 14969 }, { 14970 label: "Toko Bunga Bojonegoro", 14971 category: "Collection", 14972 url: "/collections/toko-bunga-bojonegoro", 14973 images: " ", 14974 price: " " 14975 }, { 14976 label: "Toko Bunga Boyolali", 14977 category: "Collection", 14978 url: "/collections/toko-bunga-boyolali", 14979 images: " ", 14980 price: " " 14981 }, { 14982 label: "Toko Bunga Brebes", 14983 category: "Collection", 14984 url: "/collections/toko-bunga-brebes", 14985 images: " ", 14986 price: " " 14987 }, { 14988 label: "Toko Bunga Bukittinggi", 14989 category: "Collection", 14990 url: "/collections/toko-bunga-bukittinggi", 14991 images: " ", 14992 price: " " 14993 }, { 14994 label: "Toko Bunga Buleleng", 14995 category: "Collection", 14996 url: "/collections/toko-bunga-buleleng", 14997 images: " ", 14998 price: " " 14999 }, { 15000 label: "Toko Bunga Cakung", 15001 category: "Collection", 15002 url: "/collections/toko-bunga-cakung", 15003 images: " ", 15004 price: " " 15005 }, { 15006 label: "Toko Bunga Cawang", 15007 category: "Collection", 15008 url: "/collections/toko-bunga-cawang", 15009 images: " ", 15010 price: " " 15011 }, { 15012 label: "Toko Bunga Cempaka Putih", 15013 category: "Collection", 15014 url: "/collections/toko-bunga-cempaka-putih", 15015 images: " ", 15016 price: " " 15017 }, { 15018 label: "Toko Bunga Cengkareng", 15019 category: "Collection", 15020 url: "/collections/toko-bunga-cengkareng", 15021 images: " ", 15022 price: " " 15023 }, { 15024 label: "Toko Bunga Ciamis", 15025 category: "Collection", 15026 url: "/collections/toko-bunga-ciamis", 15027 images: " ", 15028 price: " " 15029 }, { 15030 label: "Toko Bunga Cianjur", 15031 category: "Collection", 15032 url: "/collections/toko-bunga-cianjur", 15033 images: " ", 15034 price: " " 15035 }, { 15036 label: "Toko Bunga Cibinong", 15037 category: "Collection", 15038 url: "/collections/toko-bunga-cibinong", 15039 images: " ", 15040 price: " " 15041 }, { 15042 label: "Toko Bunga Cibubur", 15043 category: "Collection", 15044 url: "/collections/toko-bunga-cibubur", 15045 images: " ", 15046 price: " " 15047 }, { 15048 label: "Toko Bunga Cijantung", 15049 category: "Collection", 15050 url: "/collections/toko-bunga-cijantung",
15051 images: " ", 15052 price: " " 15053 }, { 15054 label: "Toko Bunga Cikarang", 15055 category: "Collection", 15056 url: "/collections/toko-bunga-cikarang", 15057 images: " ", 15058 price: " " 15059 }, { 15060 label: "Toko Bunga Cikini", 15061 category: "Collection", 15062 url: "/collections/toko-bunga-cikini", 15063 images: " ", 15064 price: " " 15065 }, { 15066 label: "Toko Bunga Cilacap", 15067 category: "Collection", 15068 url: "/collections/toko-bunga-cilacap", 15069 images: " ", 15070 price: " " 15071 }, { 15072 label: "Toko Bunga Cilandak", 15073 category: "Collection", 15074 url: "/collections/toko-bunga-cilandak", 15075 images: " ", 15076 price: " " 15077 }, { 15078 label: "Toko Bunga Cileunyi", 15079 category: "Collection", 15080 url: "/collections/toko-bunga-cileunyi", 15081 images: " ", 15082 price: " " 15083 }, { 15084 label: "Toko Bunga Ciracas", 15085 category: "Collection", 15086 url: "/collections/toko-bunga-ciracas", 15087 images: " ", 15088 price: " " 15089 }, { 15090 label: "Toko Bunga Cirebon", 15091 category: "Collection", 15092 url: "/collections/toko-bunga-cirebon", 15093 images: " ", 15094 price: " " 15095 }, { 15096 label: "Toko Bunga Ciwidey", 15097 category: "Collection", 15098 url: "/collections/toko-bunga-ciwidey", 15099 images: " ", 15100 price: " " 15101 }, { 15102 label: "Toko Bunga Danau Toba", 15103 category: "Collection", 15104 url: "/collections/toko-bunga-danau-toba", 15105 images: " ", 15106 price: " " 15107 }, { 15108 label: "Toko Bunga Demak", 15109 category: "Collection", 15110 url: "/collections/toko-bunga-demak", 15111 images: " ", 15112 price: " " 15113 }, { 15114 label: "Toko Bunga Denpasar", 15115 category: "Collection", 15116 url: "/collections/toko-bunga-denpasar", 15117 images: " ", 15118 price: " " 15119 }, { 15120 label: "Toko Bunga Depok", 15121 category: "Collection", 15122 url: "/collections/toko-bunga-depok", 15123 images: " ", 15124 price: " " 15125 }, { 15126 label: "Toko Bunga Duren Sawit", 15127 category: "Collection", 15128 url: "/collections/toko-bunga-duren-sawit", 15129 images: " ", 15130 price: " " 15131 }, { 15132 label: "Toko Bunga Garut", 15133 category: "Collection", 15134 url: "/collections/toko-bunga-garut", 15135 images: " ", 15136 price: " " 15137 }, { 15138 label: "Toko Bunga Gianyar", 15139 category: "Collection", 15140 url: "/collections/toko-bunga-gianyar", 15141 images: " ", 15142 price: " " 15143 }, { 15144 label: "Toko Bunga Gowa", 15145 category: "Collection", 15146 url: "/collections/toko-bunga-gowa", 15147 images: " ", 15148 price: " " 15149 }, { 15150 label: "Toko Bunga Gresik", 15151 category: "Collection", 15152 url: "/collections/toko-bunga-gresik", 15153 images: " ", 15154 price: " " 15155 }, { 15156 label: "Toko Bunga Grobogan", 15157 category: "Collection", 15158 url: "/collections/toko-bunga-grobogan", 15159 images: " ", 15160 price: " " 15161 }, { 15162 label: "Toko Bunga Grogol", 15163 category: "Collection", 15164 url: "/collections/toko-bunga-grogol", 15165 images: " ", 15166 price: " " 15167 }, { 15168 label: "Toko Bunga Gunungkidul", 15169 category: "Collection", 15170 url: "/collections/toko-bunga-gunungkidul", 15171 images: " ", 15172 price: " " 15173 }, { 15174 label: "Toko Bunga Indramayu", 15175 category: "Collection", 15176 url: "/collections/toko-bunga-indramayu", 15177 images: " ", 15178 price: " " 15179 }, { 15180 label: "Toko Bunga Jakarta", 15181 category: "Collection", 15182 url: "/collections/toko-bunga-jakarta", 15183 images: " ", 15184 price: " " 15185 }, { 15186 label: "Toko Bunga Jakarta Barat", 15187 category: "Collection", 15188 url: "/collections/toko-bunga-jakarta-barat", 15189 images: " ", 15190 price: " " 15191 }, { 15192 label: "Toko Bunga Jakarta Pusat", 15193 category: "Collection", 15194 url: "/collections/toko-bunga-jakarta-pusat", 15195 images: " ", 15196 price: " " 15197 }, { 15198 label: "Toko Bunga Jakarta Selatan", 15199 category: "Collection", 15200 url: "/collections/toko-bunga-jakarta-selatan", 15201 images: " ", 15202 price: " " 15203 }, { 15204 label: "Toko Bunga Jakarta Timur", 15205 category: "Collection", 15206 url: "/collections/toko-bunga-jakarta-timur", 15207 images: " ", 15208 price: " " 15209 }, { 15210 label: "Toko Bunga Jakarta Utara", 15211 category: "Collection", 15212 url: "/collections/toko-bunga-jakarta-utara", 15213 images: " ", 15214 price: " " 15215 }, { 15216 label: "Toko Bunga Jambi", 15217 category: "Collection", 15218 url: "/collections/toko-bunga-jambi", 15219 images: " ", 15220 price: " " 15221 }, { 15222 label: "Toko Bunga Jatinegara", 15223 category: "Collection", 15224 url: "/collections/toko-bunga-jatinegara", 15225 images: " ", 15226 price: " " 15227 }, { 15228 label: "Toko Bunga Jawa & Bali", 15229 category: "Collection", 15230 url: "/collections/toko-bunga-jawa-bali", 15231 images: " ", 15232 price: " " 15233 }, { 15234 label: "Toko Bunga Jayapura", 15235 category: "Collection", 15236 url: "/collections/toko-bunga-jayapura", 15237 images: " ", 15238 price: " " 15239 }, { 15240 label: "Toko Bunga Jelambar - Florist Onine 24 Jam", 15241 category: "Collection", 15242 url: "/collections/toko-bunga-jelambar", 15243 images: " ", 15244 price: " " 15245 }, { 15246 label: "Toko Bunga Jember", 15247 category: "Collection", 15248 url: "/collections/toko-bunga-jember", 15249 images: " ", 15250 price: " " 15251 }, { 15252 label: "Toko Bunga Jembrana", 15253 category: "Collection", 15254 url: "/collections/toko-bunga-jembrana", 15255 images: " ", 15256 price: " " 15257 }, { 15258 label: "Toko Bunga Jepara", 15259 category: "Collection", 15260 url: "/collections/toko-bunga-jepara", 15261 images: " ", 15262 price: " " 15263 }, { 15264 label: "Toko Bunga Joglo", 15265 category: "Collection", 15266 url: "/collections/toko-bunga-joglo", 15267 images: " ", 15268 price: " " 15269 }, { 15270 label: "Toko Bunga Jombang", 15271 category: "Collection", 15272 url: "/collections/toko-bunga-jombang", 15273 images: " ", 15274 price: " " 15275 }, { 15276 label: "Toko Bunga Kalibata", 15277 category: "Collection", 15278 url: "/collections/toko-bunga-kalibata", 15279 images: " ", 15280 price: " " 15281 }, { 15282 label: "Toko Bunga Kalimantan", 15283 category: "Collection", 15284 url: "/collections/toko-bunga-kalimantan", 15285 images: " ", 15286 price: " " 15287 }, { 15288 label: "Toko Bunga Kalisari Semarang", 15289 category: "Collection", 15290 url: "/collections/toko-bunga-kalisari-semarang", 15291 images: " ", 15292 price: " " 15293 }, { 15294 label: "Toko Bunga Kampung Baru", 15295 category: "Collection", 15296 url: "/collections/toko-bunga-kampung-baru", 15297 images: " ", 15298 price: " " 15299 }, { 15300 label: "Toko Bunga Kapuas", 15301 category: "Collection", 15302 url: "/collections/toko-bunga-kapuas", 15303 images: " ", 15304 price: " " 15305 }, { 15306 label: "Toko Bunga Karanganyar", 15307 category: "Collection", 15308 url: "/collections/toko-bunga-karanganyar", 15309 images: " ", 15310 price: " " 15311 }, { 15312 label: "Toko Bunga Karangasem", 15313 category: "Collection", 15314 url: "/collections/toko-bunga-karangasem", 15315 images: " ", 15316 price: " " 15317 }, { 15318 label: "Toko Bunga Karawang", 15319 category: "Collection", 15320 url: "/collections/toko-bunga-karawang", 15321 images: " ", 15322 price: " " 15323 }, { 15324 label: "Toko Bunga Kartosuro", 15325 category: "Collection", 15326 url: "/collections/toko-bunga-kartosuro", 15327 images: " ", 15328 price: " " 15329 }, { 15330 label: "Toko Bunga Kayoon Surabaya", 15331 category: "Collection", 15332 url: "/collections/toko-bunga-kayoon-surabaya", 15333 images: " ", 15334 price: " " 15335 }, { 15336 label: "Toko Bunga Kebayoran Baru", 15337 category: "Collection", 15338 url: "/collections/toko-bunga-kebayoran-baru", 15339 images: " ", 15340 price: " " 15341 }, { 15342 label: "Toko Bunga Kebon Jeruk", 15343 category: "Collection", 15344 url: "/collections/toko-bunga-kebon-jeruk", 15345 images: " ", 15346 price: " " 15347 }, { 15348 label: "Toko Bunga Kebumen", 15349 category: "Collection", 15350 url: "/collections/toko-bunga-kebumen", 15351 images: " ", 15352 price: " " 15353 }, { 15354 label: "Toko Bunga Kediri", 15355 category: "Collection", 15356 url: "/collections/toko-bunga-kediri", 15357 images: " ", 15358 price: " " 15359 }, { 15360 label: "Toko Bunga Kelapa Gading", 15361 category: "Collection", 15362 url: "/collections/toko-bunga-kelapa-gading", 15363 images: " ", 15364 price: " " 15365 }, { 15366 label: "Toko Bunga Kemayoran", 15367 category: "Collection", 15368 url: "/collections/toko-bunga-kemayoran", 15369 images: " ", 15370 price: " " 15371 }, { 15372 label: "Toko Bunga Kendal", 15373 category: "Collection",
15374 url: "/collections/toko-bunga-kendal", 15375 images: " ", 15376 price: " " 15377 }, { 15378 label: "Toko Bunga Kendari", 15379 category: "Collection", 15380 url: "/collections/toko-bunga-kendari", 15381 images: " ", 15382 price: " " 15383 }, { 15384 label: "Toko Bunga Ketapang", 15385 category: "Collection", 15386 url: "/collections/toko-bunga-ketapang", 15387 images: " ", 15388 price: " " 15389 }, { 15390 label: "Toko Bunga Klaten", 15391 category: "Collection", 15392 url: "/collections/toko-bunga-klaten", 15393 images: " ", 15394 price: " " 15395 }, { 15396 label: "Toko Bunga Klender", 15397 category: "Collection", 15398 url: "/collections/toko-bunga-klender", 15399 images: " ", 15400 price: " " 15401 }, { 15402 label: "Toko Bunga Kota Baru Yogyakarta", 15403 category: "Collection", 15404 url: "/collections/toko-bunga-kota-baru-yogyakarta", 15405 images: " ", 15406 price: " " 15407 }, { 15408 label: "Toko Bunga Kota Batu", 15409 category: "Collection", 15410 url: "/collections/toko-bunga-kota-batu", 15411 images: " ", 15412 price: " " 15413 }, { 15414 label: "Toko Bunga Kramat Jati", 15415 category: "Collection", 15416 url: "/collections/toko-bunga-kramat-jati", 15417 images: " ", 15418 price: " " 15419 }, { 15420 label: "Toko Bunga Kudus", 15421 category: "Collection", 15422 url: "/collections/toko-bunga-kudus", 15423 images: " ", 15424 price: " " 15425 }, { 15426 label: "Toko Bunga Kupang", 15427 category: "Collection", 15428 url: "/collections/toko-bunga-kupang", 15429 images: " ", 15430 price: " " 15431 }, { 15432 label: "Toko Bunga Lamongan", 15433 category: "Collection", 15434 url: "/collections/toko-bunga-lamongan", 15435 images: " ", 15436 price: " " 15437 }, { 15438 label: "Toko Bunga Langkat", 15439 category: "Collection", 15440 url: "/collections/toko-bunga-langkat", 15441 images: " ", 15442 price: " " 15443 }, { 15444 label: "Toko Bunga Lebak Bulus", 15445 category: "Collection", 15446 url: "/collections/toko-bunga-lebak-bulus", 15447 images: " ", 15448 price: " " 15449 }, { 15450 label: "Toko Bunga Lembang", 15451 category: "Collection", 15452 url: "/collections/toko-bunga-lembang", 15453 images: " ", 15454 price: " " 15455 }, { 15456 label: "Toko Bunga Lenteng Agung", 15457 category: "Collection", 15458 url: "/collections/toko-bunga-lenteng-agung", 15459 images: " ", 15460 price: " " 15461 }, { 15462 label: "Toko Bunga Lombok", 15463 category: "Collection", 15464 url: "/collections/toko-bunga-lombok", 15465 images: " ", 15466 price: " " 15467 }, { 15468 label: "Toko Bunga Lubuk Pakam", 15469 category: "Collection", 15470 url: "/collections/toko-bunga-lubuk-pakam", 15471 images: " ", 15472 price: " " 15473 }, { 15474 label: "Toko Bunga Lumajang", 15475 category: "Collection", 15476 url: "/collections/toko-bunga-lumajang", 15477 images: " ", 15478 price: " " 15479 }, { 15480 label: "Toko Bunga Madiun", 15481 category: "Collection", 15482 url: "/collections/toko-bunga-madiun", 15483 images: " ", 15484 price: " " 15485 }, { 15486 label: "Toko Bunga Magelang", 15487 category: "Collection", 15488 url: "/collections/toko-bunga-magelang", 15489 images: " ", 15490 price: " " 15491 }, { 15492 label: "Toko Bunga Majalengka", 15493 category: "Collection", 15494 url: "/collections/toko-bunga-majalengka", 15495 images: " ", 15496 price: " " 15497 }, { 15498 label: "Toko Bunga Makassar", 15499 category: "Collection", 15500 url: "/collections/toko-bunga-makassar", 15501 images: " ", 15502 price: " " 15503 }, { 15504 label: "Toko Bunga Malang", 15505 category: "Collection", 15506 url: "/collections/toko-bunga-malang", 15507 images: " ", 15508 price: " " 15509 }, { 15510 label: "Toko Bunga Manado", 15511 category: "Collection", 15512 url: "/collections/toko-bunga-manado", 15513 images: " ", 15514 price: " " 15515 }, { 15516 label: "Toko Bunga Mangga Besar", 15517 category: "Collection", 15518 url: "/collections/toko-bunga-mangga-besar", 15519 images: " ", 15520 price: " " 15521 }, { 15522 label: "Toko Bunga Manokwari", 15523 category: "Collection", 15524 url: "/collections/toko-bunga-manokwari", 15525 images: " ", 15526 price: " " 15527 }, { 15528 label: "Toko Bunga Maros", 15529 category: "Collection", 15530 url: "/collections/toko-bunga-maros", 15531 images: " ", 15532 price: " " 15533 }, { 15534 label: "Toko Bunga Mataram", 15535 category: "Collection", 15536 url: "/collections/toko-bunga-mataram", 15537 images: " ", 15538 price: " " 15539 }, { 15540 label: "Toko Bunga Medan", 15541 category: "Collection", 15542 url: "/collections/toko-bunga-medan", 15543 images: " ", 15544 price: " " 15545 }, { 15546 label: "Toko Bunga Mojokerto", 15547 category: "Collection", 15548 url: "/collections/toko-bunga-mojokerto", 15549 images: " ", 15550 price: " " 15551 }, { 15552 label: "Toko Bunga Nganjuk", 15553 category: "Collection", 15554 url: "/collections/toko-bunga-nganjuk", 15555 images: " ", 15556 price: " " 15557 }, { 15558 label: "Toko Bunga Ngawi", 15559 category: "Collection", 15560 url: "/collections/toko-bunga-ngawi", 15561 images: " ", 15562 price: " " 15563 }, { 15564 label: "Toko Bunga Nias", 15565 category: "Collection", 15566 url: "/collections/toko-bunga-nias", 15567 images: " ", 15568 price: " " 15569 }, { 15570 label: "Toko Bunga Nusa Tenggara", 15571 category: "Collection", 15572 url: "/collections/toko-bunga-nusa-tenggara", 15573 images: " ", 15574 price: " " 15575 }, { 15576 label: "Toko Bunga Padang", 15577 category: "Collection", 15578 url: "/collections/toko-bunga-padang", 15579 images: " ", 15580 price: " " 15581 }, { 15582 label: "Toko Bunga Palembang", 15583 category: "Collection", 15584 url: "/collections/toko-bunga-palembang", 15585 images: " ", 15586 price: " " 15587 }, { 15588 label: "Toko Bunga Palu", 15589 category: "Collection", 15590 url: "/collections/toko-bunga-palu", 15591 images: " ", 15592 price: " " 15593 }, { 15594 label: "Toko Bunga Pangkal Pinang", 15595 category: "Collection", 15596 url: "/collections/toko-bunga-pangkal-pinang", 15597 images: " ", 15598 price: " " 15599 }, { 15600 label: "Toko Bunga Papua", 15601 category: "Collection", 15602 url: "/collections/toko-bunga-papua", 15603 images: " ", 15604 price: " " 15605 }, { 15606 label: "Toko Bunga Parepare", 15607 category: "Collection", 15608 url: "/collections/toko-bunga-parepare", 15609 images: " ", 15610 price: " " 15611 }, { 15612 label: "Toko Bunga Pasar Baru", 15613 category: "Collection", 15614 url: "/collections/toko-bunga-pasar-baru", 15615 images: " ", 15616 price: " " 15617 }, { 15618 label: "Toko Bunga Pasar Minggu", 15619 category: "Collection", 15620 url: "/collections/toko-bunga-pasar-minggu", 15621 images: " ", 15622 price: " " 15623 }, { 15624 label: "Toko Bunga Pasar Rebo", 15625 category: "Collection", 15626 url: "/collections/toko-bunga-pasar-rebo", 15627 images: " ", 15628 price: " " 15629 }, { 15630 label: "Toko Bunga Pasuruan", 15631 category: "Collection", 15632 url: "/collections/toko-bunga-pasuruan", 15633 images: " ", 15634 price: " " 15635 }, { 15636 label: "Toko Bunga Pati", 15637 category: "Collection", 15638 url: "/collections/toko-bunga-pati", 15639 images: " ", 15640 price: " " 15641 }, { 15642 label: "Toko Bunga Pekalongan", 15643 category: "Collection", 15644 url: "/collections/toko-bunga-pekalongan", 15645 images: " ", 15646 price: " " 15647 }, { 15648 label: "Toko Bunga Pekanbaru", 15649 category: "Collection", 15650 url: "/collections/toko-bunga-pekanbaru", 15651 images: " ", 15652 price: " " 15653 }, { 15654 label: "Toko Bunga Pemalang", 15655 category: "Collection", 15656 url: "/collections/toko-bunga-pemalang", 15657 images: " ", 15658 price: " " 15659 }, { 15660 label: "grand salutation jabodetabek", 15661 category: "Produk", 15662 url: "/products/grand-salutation", 15663 images: "//outerbloom.com/cdn/shop/files/JKTCON1005_Grand-Salutation-Jabodetabek-WM_thumb.jpg?v=1703241523", 15664 price: "Rp 435.000" 15665 }, { 15666 label: "consolantibus jabodetabek", 15667 category: "Produk", 15668 url: "/products/consolantibus", 15669 images: "//outerbloom.com/cdn/shop/files/JKTDUK1011_Consolantibus-Jabodetabek-WM_thumb.jpg?v=1703239823", 15670 price: "Rp 435.000" 15671 }, { 15672 label: "classic midnight hand bouquet fiery red", 15673 category: "Produk", 15674 url: "/products/the-classic-midnight-hand-bouquet-fiery-red", 15675 images: "//outerbloom.com/cdn/shop/files/OBVBUN1422_Classic-Midnight-Hand-Bouquet---Fiery-Red-large_thumb.jpg?v=1757302521", 15676 price: "Rp 385.000" 15677 }, { 15678 label: "enchanted dome passionate red", 15679 category: "Produk", 15680 url: "/products/enchanted-dome-passionate-red", 15681 images: "//outerbloom.com/cdn/shop/files/Enchanted-dome-red-new-box_3_2_26c081bf-f2a5-42b4-9ce4-3c0304c498e5_thumb.jpg?v=1712639476", 15682 price: "Rp 1.435.000" 15683 }, { 15684 label: "endearing ruby", 15685 category: "Produk", 15686 url: "/products/endearing-ruby", 15687 images: "//outerbloom.com/cdn/shop/products/OUTSTF1003_Endearing-Ruby_thumb.jpg?v=1631296611", 15688 price: "Rp 585.000" 15689 }, { 15690 label: "gentle soul jabodetabek", 15691 category: "Produk", 15692 url: "/products/gentle-soul-jabodetabek", 15693 images: "//outerbloom.com/cdn/shop/files/JKTDUK1030_Gentle-Soul-Jabodetabek-WM_thumb.jpg?v=1703239894", 15694 price: "Rp 435.000" 15695 }, { 15696 label: "belleza jabodetabek", 15697 category: "Produk", 15698 url: "/products/belleza", 15699 images: "//outerbloom.com/cdn/shop/files/Belleza-Jabodetabek-LED_aecb756a-0737-45cc-8bfb-008515ca0a37_thumb.gif?v=1759229680", 15700 price: "Rp 435.000" 15701 }, { 15702 label: "majestic pink roses with baby breath bouquet", 15703 category: "Produk", 15704 url: "/products/majestic-pink-roses-with-baby-breath-bouquet", 15705 images: "//outerbloom.com/cdn/shop/products/ef4a3be9-c938-4c70-98ac-4873e7da82bf_90820a66-923a-463d-a464-81bcbe6e6644_thumb.jpg?v=1581413440", 15706 price: "Rp 485.000" 15707 }, { 15708 label: "sentiments jabodetabek", 15709 category: "Produk", 15710 url: "/products/sentiments", 15711 images: "//outerbloom.com/cdn/shop/files/Sentiments-Jabodetabek-WM_thumb.jpg?v=1759224099", 15712 price: "Rp 485.000" 15713 }, { 15714 label: "rose poetry bouquet", 15715 category: "Produk", 15716 url: "/products/rose-poetry-bouquet", 15717 images: "//outerbloom.com/cdn/shop/products/Rose-Poetry-Bouquet-20-tangkai_thumb.jpg?v=1675151039", 15718 price: "Rp 385.000" 15719 }, { 15720 label: "genuine feeling", 15721 category: "Produk", 15722 url: "/products/genuine-feeling", 15723 images: "//outerbloom.com/cdn/shop/products/OUTSTF1004Genuine-Feeling_981ade89-af27-433e-81aa-8d76175a0e4d_thumb.jpg?v=1612352389", 15724 price: "Rp 585.000" 15725 }, { 15726 label: "eternal fidelity jabodetabek", 15727 category: "Produk", 15728 url: "/products/eternal-fidelity-jabodetabek", 15729 images: "//outerbloom.com/cdn/shop/products/0b89df45-dcc1-4876-820e-61b2243a1945_964e211d-2972-46c9-8593-976210929089_thumb.jpg?v=1590491458", 15730 price: "Rp 435.000" 15731 }, { 15732 label: "rosabelle hand bouquet", 15733 category: "Produk", 15734 url: "/products/rosabelle-hand-bouquet", 15735 images: "//outerbloom.com/cdn/shop/files/OBVBUN1429_Rosabelle-Hand-Bouquet-Medium_thumb.jpg?v=1756971848", 15736 price: "Rp 385.000" 15737 }, { 15738 label: "dreaming in pink luxury in vase", 15739 category: "Produk", 15740 url: "/products/dreaming-in-pink-luxury-in-vase", 15741 images: "//outerbloom.com/cdn/shop/products/OBVBUN1051_Dreaming-In-Pink-Luxury-In-Vase_3_thumb.jpg?v=1614594504", 15742 price: "Rp 735.000" 15743 }, { 15744 label: "excito jabodetabek", 15745 category: "Produk", 15746 url: "/products/excito", 15747 images: "//outerbloom.com/cdn/shop/files/JKTCON1010_Excito-Jabodetabek-2023_thumb.gif?v=1717494677", 15748 price: "Rp 485.000" 15749 }, { 15750 label: "golden toast jabodetabek", 15751 category: "Produk",
15752 url: "/products/golden-toast", 15753 images: "//outerbloom.com/cdn/shop/products/LED-GoldenToast_thumb.gif?v=1579249585", 15754 price: "Rp 485.000" 15755 }, { 15756 label: "spirit of eminance jabodetabek", 15757 category: "Produk", 15758 url: "/products/spirit-of-eminance-jabodetabek", 15759 images: "//outerbloom.com/cdn/shop/files/JKTCON1026_Spirit-of-Eminance-Jabodetabek-newest-WM_thumb.jpg?v=1693297526", 15760 price: "Rp 485.000" 15761 }, { 15762 label: "white elysian bloom box", 15763 category: "Produk", 15764 url: "/products/white-elysian-bloom-box", 15765 images: "//outerbloom.com/cdn/shop/files/OBVBUN1704_White-Elysian-Bloom-Box_thumb.jpg?v=1757328247", 15766 price: "Rp 685.000" 15767 }, { 15768 label: "charming forevermore jabodetabek", 15769 category: "Produk", 15770 url: "/products/charming-forevermore-jabodetabek", 15771 images: "//outerbloom.com/cdn/shop/files/JKTWED1036_Charming-Forevermore-Jabodetabek-WM_thumb.jpg?v=1703239534", 15772 price: "Rp 485.000" 15773 }, { 15774 label: "moment of glory jabodetabek", 15775 category: "Produk", 15776 url: "/products/moment-of-glory-jabodetabek", 15777 images: "//outerbloom.com/cdn/shop/products/JKTCON1051_Moment-of-Glory-Jabodetabek_2_thumb.jpg?v=1596614663", 15778 price: "Rp 385.000" 15779 }, { 15780 label: "sweet romance jabodetabek", 15781 category: "Produk", 15782 url: "/products/sweet-romance", 15783 images: "//outerbloom.com/cdn/shop/products/JKTWED1005_Sweet-Romance-Jabodetabek_thumb.gif?v=1677134791", 15784 price: "Rp 635.000" 15785 }, { 15786 label: "with love bouquet", 15787 category: "Produk", 15788 url: "/products/with-love-bouquet", 15789 images: "//outerbloom.com/cdn/shop/products/c5d6fed6-8ada-4c38-ae0f-36d395aacb19_613f78f0-d52c-443b-9e13-63a151cd8ec5_thumb.jpg?v=1590748429", 15790 price: "Rp 535.000" 15791 }, { 15792 label: "sunflower yellow and with white daisies in vase", 15793 category: "Produk", 15794 url: "/products/sunflower-yellow-roses-with-white-and-yellow-daisies-in-a-glass-vase", 15795 images: "//outerbloom.com/cdn/shop/files/OBVBUN1132_Sunflower-Yellow-And-With-White-Daisies-in-Vase_thumb.jpg?v=1757930628", 15796 price: "Rp 435.000" 15797 }, { 15798 label: "everlasting peace jabodetabek", 15799 category: "Produk", 15800 url: "/products/everlasting-peace-jabodetabek", 15801 images: "//outerbloom.com/cdn/shop/products/JKTDUK1034_Everlasting-Peace-Jabodetabek_2_thumb.jpg?v=1596614613", 15802 price: "Rp 385.000" 15803 }, { 15804 label: "astoria passionate red", 15805 category: "Produk", 15806 url: "/products/astoria-passionate-red", 15807 images: "//outerbloom.com/cdn/shop/products/Astoria-passionate-red_b59b26f6-c39d-46d3-adcb-262c675bb16f_thumb.jpg?v=1633502742", 15808 price: "Rp 685.000" 15809 }, { 15810 label: "classic purple orchid majesty in vase", 15811 category: "Produk", 15812 url: "/products/classic-purple-orchid-majesty-in-vase", 15813 images: "//outerbloom.com/cdn/shop/products/Classic-Purple-Orchid-Majesty-in-Vase---White---4-Tangkai_40a5e337-283f-40f5-911c-5df9b506b9da_thumb.jpg?v=1639981404", 15814 price: "Rp 435.000" 15815 }, { 15816 label: "passion rouge bloom box", 15817 category: "Produk", 15818 url: "/products/passion-rouge-bloom-box", 15819 images: "//outerbloom.com/cdn/shop/files/OBVBUN1725_Passion-Rouge-Bloom-Box_thumb.jpg?v=1756972410", 15820 price: "Rp 385.000" 15821 }, { 15822 label: "classic white orchid majesty in vase", 15823 category: "Produk", 15824 url: "/products/classic-white-orchid-majesty-in-vase", 15825 images: "//outerbloom.com/cdn/shop/products/Classic-white-Orchid-Majesty-in-Vase---white---4-Tangkai_thumb.jpg?v=1644205542", 15826 price: "Rp 435.000" 15827 }, { 15828 label: "majestic blue romance bouquet", 15829 category: "Produk", 15830 url: "/products/majestic-blue-romance-bouquet", 15831 images: "//outerbloom.com/cdn/shop/files/OBVBUN1357_Majestic-Blue-Romance-B
15831ouquet_99b8ba96-0e67-4eef-a00e-b2daedcddb6a_thumb.jpg?v=1757390540", 15832 price: "Rp 435.000" 15833 }, { 15834 label: "sincerely", 15835 category: "Produk", 15836 url: "/products/sincerely", 15837 images: "//outerbloom.com/cdn/shop/files/Sincerely-WM_thumb.jpg?v=1688354677", 15838 price: "Rp 585.000" 15839 }, { 15840 label: "happy days jabodetabek", 15841 category: "Produk", 15842 url: "/products/happy-days-jabodetabek", 15843 images: "//outerbloom.com/cdn/shop/files/Happy-Days-Jabodetabek_WM_thumb.jpg?v=1759224026", 15844 price: "Rp 485.000" 15845 }, { 15846 label: "solemn comfort jabodetabek", 15847 category: "Produk", 15848 url: "/products/solemn-comfort-jabodetabek", 15849 images: "//outerbloom.com/cdn/shop/products/7fe123d8-6bb2-4c0d-bd4c-f8c3032823f2_6b9c33b6-4a23-41cb-8709-fc9223fe096a_thumb.png?v=1590662086", 15850 price: "Rp 635.000" 15851 }, { 15852 label: "big dreams jabodetabek", 15853 category: "Produk", 15854 url: "/products/big-dreams", 15855 images: "//outerbloom.com/cdn/shop/files/JKTCON1002_Big-Dreams-Jabodetabek_thumb.gif?v=1717494603", 15856 price: "Rp 485.000" 15857 }, { 15858 label: "signature ramadan deluxe hampers", 15859 category: "Produk", 15860 url: "/products/outerbloom-signature-ramadhan-deluxe-hampers", 15861 images: "//outerbloom.com/cdn/shop/files/Signature-Deluxe-Hampers_thumb.jpg?v=1739242254", 15862 price: "Rp 985.000" 15863 }, { 15864 label: "amorous amos jabodetabek", 15865 category: "Produk", 15866 url: "/products/amorous-amos-jabodetabek", 15867 images: "//outerbloom.com/cdn/shop/files/Amorous-Amos-Jabodetabek-WM_thumb.jpg?v=1759224071", 15868 price: "Rp 485.000" 15869 }, { 15870 label: "pink darling bouquet", 15871 category: "Produk", 15872 url: "/products/pink-darling-bouquet", 15873 images: "//outerbloom.com/cdn/shop/products/Pink-Darling-Bouquet_thumb.jpg?v=1669969725", 15874 price: "Rp 485.000" 15875 }, { 15876 label: "black pink bouquet", 15877 category: "Produk", 15878 url: "/products/black-pink-bouquet", 15879 images: "//outerbloom.com/cdn/shop/files/Black-Pink-Bouquet_thumb.jpg?v=1756434063", 15880 price: "Rp 485.000" 15881 }, { 15882 label: "profound happiness jabodetabek", 15883 category: "Produk", 15884 url: "/products/profound-happiness-jabodetabek", 15885 images: "//outerbloom.com/cdn/shop/files/profound-happiness_thumb.gif?v=1689940309", 15886 price: "Rp 635.000" 15887 }, { 15888 label: "healing trove", 15889 category: "Produk", 15890 url: "/products/healing-trove", 15891 images: "//outerbloom.com/cdn/shop/products/2ef5379f-27a6-41ba-85c7-c65cf3ec3f08_thumb.jpg?v=1571471845", 15892 price: "Rp 485.000" 15893 }, { 15894 label: "sincerity solace", 15895 category: "Produk", 15896 url: "/products/sincerity-solace", 15897 images: "//outerbloom.com/cdn/shop/products/OUTSTF1038_sincerity-solace-WM_thumb.jpg?v=1612352477", 15898 price: "Rp 485.000" 15899 }, { 15900 label: "bellarosa bloom box", 15901 category: "Produk", 15902 url: "/products/bellarosa-bloom-box", 15903 images: "//outerbloom.com/cdn/shop/files/OBVBUN1783_Bellarosa-Bloom-Box_c0000424-411c-48ed-abf4-0de7d925ea53_thumb.jpg?v=1757316757", 15904 price: "Rp 785.000" 15905 }]; 15906 $(".header-input-search").catcomplete({ 15907 appendTo: ".searchResult", 15908 source: function(request, response) { 15909 var results = $.ui.autocomplete.filter(data, request.term); 15910 var predicate = function() { 15911 var counter = { 15912 Collection: 0, 15913 Produk: 0 15914 }; 15915 var fn = function(item) { 15916 counter[item.category] += 1; 15917 return (counter[item.category] <= 5); 15918 } 15919 return fn 15920 }(); 15921 response(results.filter(predicate)); 15922 }, 15923 minLength: 1, 15924 //results are clickable 15925 select: function(event, ui) { 15926 window.location = ui.item.url; 15927 } 15928 }); 15929 $(".header-input-search2").catcomplete({ 15930 appendTo: ".searchResult2", 15931 source: function(request, response) { 15932 var results = $.ui.autocomplete.filter(data, request.term); 15933 var predicate = function() { 15934 var counter = { 15935 Collection: 0, 15936 Produk: 0 15937 }; 15938 var fn = function(item) { 15939 counter[item.category] += 1; 15940 return (counter[item.category] <= 5); 15941 } 15942 return fn 15943 }(); 15944 response(results.filter(predicate)); 15945 }, 15946 minLength: 1, 15947 //results are clickable 15948 select: function(event, ui) { 15949 window.location = ui.item.url; 15950 } 15951 }); 15952 }); 15953 </script>
15953 15954
15954<script src="//outerbloom.com/cdn/shop/t/138/assets/vendors.js?v=6349622868601634021752652419" defer></script>
15954 15955
15955<script src="//outerbloom.com/cdn/shop/t/138/assets/app.js?v=136050180318808583701752652452" defer></script>
15955 15956
15956<script> 15957 (function() { 15958 var youtube = document.querySelectorAll(".youtube"); 15959 for (var i = 0; i < youtube.length; i++) { 15960 var source = "https://img.youtube.com/vi/" + youtube[i].dataset.embed + "/sddefault_1x.jpg"; 15961 var datasource = "https://img.youtube.com/vi/" + youtube[i].dataset.embed + "/sddefault.jpg"; 15962 var image = new Image(); 15963 image.src = source; 15964 image.setAttribute("data-src", datasource); 15965 image.classList.add("swiper-lazy"); 15966 image.addEventListener("load", function() { 15967 youtube[i].appendChild(image); 15968 }(i)); 15969 youtube[i].addEventListener("click", function() { 15970 var iframe = document.createElement("iframe"); 15971 iframe.setAttribute("width", "480"); 15972 iframe.setAttribute("height", "480"); 15973 iframe.setAttribute("frameborder", "0"); 15974 iframe.setAttribute("allowfullscreen", ""); 15975 iframe.setAttribute("src", "https://www.youtube.com/embed/" + this.dataset.embed + "?rel=0&showinfo=0&autoplay=1"); 15976 this.innerHTML = ""; 15977 this.appendChild(iframe); 15978 }); 15979 }; 15980 })(); 15981 /* Lazy Load */ 15982 const mainLazyLoad = new LazyLoad({ 15983 threshold: 400 15984 }); 15985 $(document).ready(function() { 15986 $("selectxxx").addClass("needsclick"); 15987 FastClick.attach(document.body); 15988 var $customSelects = $('.select-search'); 15989 $customSelects.select2({ 15990 templateResult: function(result, container) { 15991 if (!result.id) { 15992 return result.text; 15993 } 15994 container.className += ' needsclick'; 15995 return result.text; 15996 } 15997 }); 15998 $customSelects.each(function(index, el) { 15999 $(el).data('select2').$container.find('*').addClass('needsclick'); 16000 }); 16001 $(document).on('select2:open', () => { 16002 document.querySelector('.select2-search__field').focus(); 16003 }); 16004 $(".overlay").click(function() { 16005 $(".js-drawer-close").click(); 16006 }); 16007 $(".site-nav--mobile .js-drawer-open-left, #NavDrawer .icon-close, .overlay-nav").click(function() { 16008 $("html").toggleClass("nav_open"); 16009 }); 16010 $('.swatch-element label').on('click', function() { 16011 var srcImg = $(this).data('src'); 16012 $('#thumb-image-product .product-single__thumbnail').each(function() { 16013 if ($(this).attr("href") == srcImg) { 16014 $(this).trigger('click'); 16015 } 16016 }); 16017 }); 16018 var defaultValue = $(".swatch input:checked").val() 16019 $('#purchaseProduct .swatch [type=radio]').change(function() { 16020 var optionIndex = $(this).closest('.swatch').attr('data-option-index'); 16021 var optionValue = $(this).val(); 16022 console.log(optionIndex, optionValue) 16023 var value = parseInt(optionValue.split(' ')[0]) 16024 $(this).closest('#purchaseProduct').find('.single-option-selector').eq(optionIndex).val(optionValue).trigger('change'); 16025 }); 16026 }); 16027 $(document).ready(function() { 16028 $(".nav-search a").click(function(e) { 16029 e.preventDefault(); 16030 $(".icon-navsearch").toggle(); 16031 $(".icon-navclose").toggle(); 16032 $(".site-nav__item > .site-nav__link").toggle(); 16033 $(".open-search").toggle(); 16034 $(".open-search input").focus(); 16035 }); 16036 $(".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'>"); 16037 if ($(window).width() < 768) { 16038 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_75x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 16039 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_45x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 16040 $(".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'>"); 16041 } else { 16042 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_60x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 16043 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_60x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 16044 $(".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'>"); 16045 } 16046 $(".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'>"); 16047 $(".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'>"); 16048 }); 16049 </script>
16049 16050
16050<script type="text/javascript"> 16051 var wishlistpage = 0; 16052 var quickShop_money_format = "<span class='money'>" + "Rp {{amount_no_decimals}}" + "</span>"; 16053 </script>
16053 16054 <!-- Remove duplicate wishlist.js reference --> 16055 <style> 16056 .fade { 16057 opacity: 0; 16058 -webkit-transition: opacity .15s linear; 16059 -o-transition: opacity .15s linear; 16060 transition: opacity .15s linear 16061 } 16062 16063 .modal { 16064 position: fixed; 16065 top: 0; 16066 right: 0; 16067 bottom: 0; 16068 left: 0; 16069 z-index: 999999; 16070 display: none; 16071 overflow: hidden; 16072 -webkit-overflow-scrolling: touch; 16073 outline: 0 16074 } 16075 16076 .fade.in { 16077 opacity: 1 16078 } 16079 16080 .modal-open .modal { 16081 overflow-x: hidden; 16082 overflow-y: auto; 16083 z-index: 999999; 16084 background-color: rgba(0, 0, 0, .3) 16085 } 16086 16087 .modal-dialog { 16088 position: relative; 16089 width: auto; 16090 margin: 10px 16091 } 16092 16093 .wishlist-model .modal-dialog { 16094 width: 700px 16095 } 16096 16097 .modal.fade .modal-dialog { 16098 -webkit-transition: -webkit-transform .3s ease-out; 16099 -o-transition: -o-transform .3s ease-out; 16100 transition: transform .3s ease-out; 16101 -webkit-transform: translate(0, -25%); 16102 -ms-transform: translate(0, -25%); 16103 -o-transform: translate(0, -25%); 16104 transform: translate(0, -25%) 16105 } 16106 16107 .modal.in .modal-dialog { 16108 -webkit-transform: translate(0, 0); 16109 -ms-transform: translate(0, 0); 16110 -o-transform: translate(0, 0); 16111 transform: translate(0, 0) 16112 } 16113 16114 .modal-content { 16115 position: relative; 16116 background-color: #fff; 16117 -webkit-background-clip: padding-box; 16118 background-clip: padding-box; 16119 border: 1px solid #999; 16120 border: 1px solid rgba(0, 0, 0, .2); 16121 outline: 0; 16122 -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); 16123 box-shadow: 0 3px 9px rgba(0, 0, 0, .5) 16124 } 16125 16126 .wishlist-model .modal-content {} 16127 16128 .wishlist-model .modal-header { 16129 min-height: 0; 16130 padding: 0; 16131 border-bottom: 0 16132 } 16133 16134 .close { 16135 float: right; 16136 font-size: 21px; 16137 font-weight: 700; 16138 line-height: 1; 16139 color: #000; 16140 text-shadow: 0 1px 0 #121212; 16141 filter: alpha(opacity=20); 16142 opacity: .2 16143 } 16144 16145 button.close { 16146 -webkit-appearance: none; 16147 padding: 0; 16148 cursor: pointer; 16149 background: 0 0; 16150 border: 0 16151 } 16152 16153 .modal-header .close { 16154 margin-top: -2px 16155 } 16156 16157 .wishlist-model .close { 16158 position: absolute; 16159 top: -10px; 16160 right: -10px; 16161 background: #fff; 16162 opacity: 1; 16163 width: 30px; 16164 height: 30px; 16165 font-size: 15px; 16166 border-radius: 50%; 16167 z-index: 10; 16168 box-shadow: 0 1px 4px 0 #121212 16169 } 16170 16171 .wishlist-model .close .icon-close { 16172 width: 25px; 16173 height: 25px 16174 } 16175 16176 .modal-body { 16177 position: relative; 16178 padding: 15px 16179 } 16180 16181 .wishlist-model .modal-body { 16182 padding: 0 30px; 16183 display: flex 16184 } 16185 16186 .wishlist-model .wishlist-left { 16187 width: 66.67%; 16188 border-right: 1px solid #ccc; 16189 padding: 30px 0 16190 } 16191 16192 .wishlist-model .wishlist-note { 16193 position: relative; 16194 display: inline-block; 16195 margin-bottom: 20px; 16196 margin-left: 35px; 16197 border-bottom: 1px solid #121212; 16198 color: #121212 16199 } 16200 16201 .wishlist-model .wishlist-note a { 16202 color: #ffffff; 16203 } 16204 16205 .wishlist-model .wishlist-note .cirle { 16206 position: absolute; 16207 top: -4px; 16208 left: -35px; 16209 width: 25px; 16210 height: 25px; 16211 color: #fff; 16212 background: #121212; 16213 line-height: 25px; 16214 border-radius: 50%; 16215 text-align: center 16216 } 16217 16218 .wishlist-model .wishlist-note svg { 16219 fill: #fff 16220 } 16221 16222 .wishlist-model .wishlist-note .cirle .icon-check { 16223 vertical-align: middle 16224 } 16225 16226 .wishlist-model .product-left { 16227 width: 33.33%; 16228 float: left; 16229 margin-right: 30px 16230 } 16231 16232 .wishlist-model .wishlist-image { 16233 overflow: hidden 16234 } 16235 16236 .wishlist-model .wishlist-image img { 16237 transition: all .3s linear 16238 } 16239 16240 .wishlist-model .wishlist-name { 16241 padding: 0; 16242 margin-bottom: 10px 16243 } 16244 16245 .wishlist-model .wishlist-name a { 16246 color: #ffffff; 16247 } 16248 16249 .wishlist-model .wishlist-price { 16250 margin-bottom: 10px 16251 } 16252 16253 .wishlist-model .wishlist-price .price { 16254 font-weight: 700; 16255 margin-right: 10px; 16256 font-size: 15px 16257 } 16258 16259 .wishlist-model .wishlist-price .price_compare { 16260 color: #ccc 16261 } 16262 16263 .wishlist-model .wishlist-right { 16264 width: 33.33%; 16265 padding: 30px 0; 16266 padding-left: 30px 16267 } 16268 16269 .wishlist-model .btn-quick-shop { 16270 width: 100%; 16271 border-color: #121212; 16272 background: #fff; 16273 color: #121212;
16274 padding: 0 30px; 16275 transition: all .2s linear; 16276 height: 36px; 16277 margin-bottom: 10px; 16278 text-transform: uppercase 16279 } 16280 16281 .wishlist-model .btn-cta { 16282 width: 100%; 16283 font-size: 1em; 16284 border-color: #ffffff; 16285 background: #ffffff; 16286 color: #fff; 16287 padding: 0; 16288 transition: all .2s linear; 16289 height: 36px; 16290 line-height: 36px; 16291 margin-bottom: 10px 16292 } 16293 16294 .wishlist-model .quantity-content { 16295 text-align: center 16296 } 16297 16298 .wishlist-model .quantity-content input { 16299 outline: none; 16300 text-align: center; 16301 font-weight: 600; 16302 border: 1px solid #121212 16303 } 16304 16305 .wishlist-model .quantity-content button { 16306 border-color: #121212 16307 } 16308 16309 @media (min-width:768px) { 16310 .modal-dialog { 16311 width: 600px; 16312 margin: 30px auto 16313 } 16314 16315 .modal-content { 16316 -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); 16317 box-shadow: 0 5px 15px rgba(0, 0, 0, .5) 16318 } 16319 } 16320 </style> 16321 <div class="modal fade" id="modalwishlist0" tabindex="-1" role="dialog"> 16322 <div class="modal-dialog" role="document"> 16323 <div class="modal-content"> 16324 <div class="modal-body">Your Wishlist is empty!</div> 16325 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> 16326 </div> 16327 </div> 16328 </div> 16329 <div class="wishlist-model"> 16330 <div class="modal fade" id="modalwishlist1" tabindex="-1" role="dialog" aria-hidden="true"> 16331 <div class="modal-dialog white-modal"> 16332 <div class="modal-content"> 16333 <div class="modal-header"> 16334 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 16335 <svg class="icon icon-close" version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="32" height="32" viewBox="0 0 32 32"> 16336 <title>icon-close</title> 16337 <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> 16338 </svg> 16339 </button> 16340 </div> 16341 <div class="modal-body"> 16342 <div class="wishlist-left"> 16343 <div class="wishlist-note"> 16344 <span class="cirle"><svg version="1.1" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="32" height="32" viewBox="0 0 32 32"> 16345 <title>icon-check</title> 16346 <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> 16347 </svg></span> Product added to <a href="/pages/wish-list">Wishlist</a> 16348 </div> 16349 <div class="wishlist-product"> 16350 <div class="product-left"> 16351 <div class="wishlist-image"></div> 16352 </div> 16353 <div class="product-right"> 16354 <div class="wishlist-name"></div> 16355 <div class="wishlist-price"></div> 16356 </div> 16357 </div> 16358 </div> 16359 <div class="wishlist-right"> 16360 <div class="wishlist-cart"> 16361 <form action="/cart/add" method="post" class="variants-form variants" id="AddToCartForm" enctype="multipart/form-data"> 16362 <div class="others-bottom"> 16363 <a class="btn btn-quick-shop" href="/pages/wish-list">View Wishlist</a> 16364 <button type="submit" name="add" id="AddToCart" class="btn btn-cta">
16365 <span id="AddToCartText" class="">Beli Sekarang</span> 16366 </button> 16367 </div> 16368 <div id="wishlist-variants-container" class="variants-wrapper"></div> 16369 <div class="quantity-content"> 16370 <label>QTY</label> 16371 <input type="number" size="5" class="" name="quantity" value="1" /> 16372 </div> 16373 </form> 16374 </div> 16375 </div> 16376 </div> 16377 </div> 16378 </div> 16379 </div> 16380 </div> 16381 <style> 16382 .stamped-badge[data-rating="0.0"] { 16383 display: none !Important; 16384 } 16385 16386 div[data-load-type="continue"] ul.stamped-pagination li.next a, 16387 div[data-widget-load-type="continue"] ul.stamped-pagination li.next a { 16388 border-radius: 0px; 16389 } 16390 16391 .stamped-review-body { 16392 padding-left: 0px !important; 16393 } 16394 16395 #product-reviews .stamped-header:after { 16396 display: none !Important; 16397 } 16398 16399 #stamped-main-widget .stamped-container, 16400 .stamped-badge-caption, 16401 #stamped-reviews-widget { 16402 font-family: inherit !important; 16403 } 16404 </style> 16405 <div id='stamped-rewards-init' class='stamped-rewards-init' data-key-public=''></div> 16406
16406<script src="//outerbloom.com/cdn/shop/t/138/assets/variant-sku-handler.js?v=91239063692820757781752652418" defer></script>
16406 16407 <!-- Remove duplicate jQuery reference and load wishlist script properly --> 16408
16408<script src="//outerbloom.com/cdn/shop/t/138/assets/wishlist-fixed.js?v=35991423018869066281754360012" defer></script>
16408 16409
16409<script> 16410 function myInit() { 16411 StampedFn.init({ 16412 apiKey: 'pubkey-hCS8DHE9QbBHhHN89WXFkuJ0Y3422D', 16413 sId: '23462' 16414 }); 16415 } 16416 </script>
16416 16417
16417<script async onload="myInit()" type="text/javascript" src="https://cdn1.stamped.io/files/widget.min.js"></script>
16417 16418 <style> 16419 .jss59 { 16420 background-color: rgba(0, 0, 0, 0.6); 16421 } 16422 16423 .MuiBackdrop-root { 16424 top: 0; 16425 left: 0; 16426 right: 0; 16427 bottom: 0; 16428 display: flex; 16429 z-index: -1; 16430 position: fixed; 16431 align-items: center; 16432 justify-content: center; 16433 background-color: rgba(0, 0, 0, 0.5); 16434 -webkit-tap-highlight-color: transparent; 16435 } 16436 16437 .MuiDialog-scrollPaper { 16438 display: flex; 16439 align-items: center; 16440 justify-content: center; 16441 } 16442 16443 .MuiDialog-container { 16444 height: 100%; 16445 outline: 0; 16446 } 16447 16448 .MuiPaper-elevation24 { 16449 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); 16450 } 16451 16452 .MuiDialog-paper { 16453 margin: 32px; 16454 position: relative; 16455 overflow-y: auto; 16456 } 16457 16458 .MuiDialog-paperScrollPaper { 16459 display: flex; 16460 max-height: calc(100% - 64px); 16461 flex-direction: column; 16462 } 16463 16464 .MuiDialog-paperWidthSm { 16465 max-width: 600px; 16466 } 16467 16468 #location-lock-dialog { 16469 top: 20%; 16470 left: 0; 16471 right: 0; 16472 width: 30%; 16473 margin: 0px auto; 16474 display: block; 16475 padding: 30px; 16476 z-index: 99999; 16477 position: fixed; 16478 font-size: 14px; 16479 background: rgb(0, 0, 0); 16480 box-shadow: rgba(11, 11, 12, 0.2) 2px 4px 5px 0px; 16481 text-align: center; 16482 font-family: Roboto, Arial, sans-serif; 16483 line-height: 1; 16484 border-radius: 8px; 16485 -webkit-font-smoothing: subpixel-antialiased; 16486 } 16487 16488 .MuiButtonBase-root { 16489 color: inherit; 16490 border: 0; 16491 cursor: pointer; 16492 margin: 0; 16493 display: inline-flex; 16494 outline: 0; 16495 padding: 0; 16496 position: relative; 16497 align-items: center; 16498 user-select: none; 16499 border-radius: 0; 16500 vertical-align: middle; 16501 -moz-appearance: none; 16502 justify-content: center; 16503 text-decoration: none; 16504 background-color: transparent; 16505 -webkit-appearance: none; 16506 -webkit-tap-highlight-color: transparent; 16507 } 16508 16509 .MuiIconButton-root { 16510 flex: 0 0 auto; 16511 color: rgba(0, 0, 0, 0.54); 16512 padding: 12px; 16513 overflow: visible; 16514 font-size: 1.5rem; 16515 text-align: center; 16516 transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 16517 border-radius: 50%; 16518 } 16519 16520 .MuiIconButton-label { 16521 width: 100%; 16522 display: flex; 16523 align-items: inherit; 16524 justify-content: inherit; 16525 } 16526 16527 .MuiSvgIcon-root { 16528 fill: currentColor; 16529 width: 1em; 16530 height: 1em; 16531 display: inline-block; 16532 font-size: 1.5rem; 16533 transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 16534 flex-shrink: 0; 16535 user-select: none; 16536 } 16537 16538 .MuiTouchRipple-root { 16539 top: 0; 16540 left: 0; 16541 right: 0; 16542 bottom: 0; 16543 z-index: 0; 16544 overflow: hidden; 16545 position: absolute; 16546 border-radius: inherit; 16547 pointer-events: none; 16548 } 16549 16550 .jss36 { 16551 color: #222222; 16552 font-size: 24px; 16553 font-family: Roboto, Arial, sans-serif; 16554 font-weight: 500; 16555 } 16556 16557 .jss37 { 16558 color: #555555; 16559 padding: 10px 0px 0px; 16560 font-size: 14px; 16561 } 16562 16563 .MuiFormGroup-root { 16564 display: flex; 16565 flex-wrap: wrap; 16566 flex-direction: column; 16567 } 16568 16569 .MuiFormGroup-row { 16570 flex-direction: row; 16571 } 16572 16573 .jss63 { 16574 width: 85%; 16575 margin: 15px auto; 16576 display: flex; 16577 padding: 11px 0px 0px; 16578 justify-content: space-evenly; 16579 } 16580 16581 .MuiFormControlLabel-root { 16582 cursor: pointer; 16583 display: inline-flex; 16584 align-items: center; 16585 margin-left: -11px; 16586 margin-right: 16px; 16587 vertical-align: middle; 16588 -webkit-tap-highlight-color: transparent; 16589 } 16590 16591 .jss70 { 16592 margin: 0; 16593 } 16594 16595 .MuiButtonBase-root { 16596 color: inherit; 16597 border: 0; 16598 cursor: pointer; 16599 margin: 0; 16600 display: inline-flex; 16601 outline: 0; 16602 padding: 0; 16603 position: relative; 16604 align-items: center; 16605 user-select: none; 16606 border-radius: 0; 16607 vertical-align: middle; 16608 -moz-appearance: none; 16609 justify-content: center; 16610 text-decoration: none; 16611 background-color: transparent; 16612 -webkit-appearance: none; 16613 -webkit-tap-highlight-color: transparent; 16614 } 16615 16616 .MuiIconButton-root { 16617 flex: 0 0 auto; 16618 color: rgba(0, 0, 0, 0.54); 16619 padding: 12px; 16620 overflow: visible; 16621 font-size: 1.5rem; 16622 text-align: center; 16623 transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 16624 border-radius: 50%; 16625 } 16626 16627 .MuiIconButton-colorSecondary { 16628 color: #f50057; 16629 } 16630 16631 .jss71 { 16632 padding: 9px; 16633 } 16634 16635 .MuiRadio-root { 16636 color: rgba(0, 0, 0, 0.54); 16637 } 16638 16639 .jss64 { 16640 padding: 2px; 16641 } 16642 16643 .MuiRadio-colorSecondary.Mui-checked { 16644 color: #f50057; 16645 } 16646 16647 .MuiIconButton-label { 16648 width: 100%; 16649 display: flex; 16650 align-items: inherit; 16651 justify-content: inherit; 16652 } 16653 16654 .MuiTypography-root { 16655 margin: 0; 16656 } 16657 16658 .MuiTypography-body1 { 16659 font-size: 18px; 16660 font-family: Roboto, sans-serif; 16661 font-weight: 400; 16662 line-height: 1.5; 16663 } 16664 16665 .location-popup_area-block__sp9Ws { 16666 display: -moz-box; 16667 display: flex; 16668 -moz-box-orient: vertical; 16669 -moz-box-direction: normal; 16670 flex-direction: column; 16671 -moz-box-pack: center; 16672 justify-content: center; 16673 position: relative; 16674 margin: 10px 10% 0;
16675 } 16676 16677 .location-popup_pin-search-box__3l5mJ { 16678 width: 100%; 16679 display: -moz-box; 16680 display: flex; 16681 -moz-box-align: center; 16682 align-items: center; 16683 } 16684 16685 .location-popup_place-icon-city__1XAX5, 16686 .location-popup_place-icon__jSG0Q { 16687 position: absolute; 16688 z-index: 999; 16689 } 16690 16691 .location-popup_place-icon__jSG0Q { 16692 color: #ffffff; 16693 padding-left: 8px; 16694 } 16695 16696 .location-popup_place-icon__jSG0Q svg { 16697 width: 18px; 16698 height: 18px; 16699 } 16700 16701 .location-popup_cancel-icon__FHujU { 16702 color: #fff; 16703 right: 10px; 16704 width: 16px; 16705 cursor: pointer; 16706 height: 16px; 16707 display: none; 16708 padding: 5px; 16709 position: absolute; 16710 background: #999; 16711 text-align: center; 16712 border-radius: 50%; 16713 } 16714 16715 .location-popup_pin-search-box__3l5mJ>div>select { 16716 /* -webkit-box-shadow: 0 0 10px #ffffff; 16717 box-shadow: 0 0 10px #ffffff; */ 16718 text-transform: capitalize; 16719 border: 1px solid #ffffff; 16720 color: #ffffff; 16721 width: 100%; 16722 margin: 0; 16723 display: -moz-box; 16724 display: flex; 16725 padding: 0 30px; 16726 -webkit-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 16727 -moz-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 16728 animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 16729 font-size: 16px; 16730 border-radius: 4px; 16731 height: 44px; 16732 moz-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite; 16733 webkit-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite; 16734 } 16735 16736 .MuiButtonBase-root { 16737 color: inherit; 16738 border: 0; 16739 cursor: pointer; 16740 margin: 0; 16741 display: inline-flex; 16742 outline: 0; 16743 padding: 0; 16744 position: relative; 16745 align-items: center; 16746 user-select: none; 16747 border-radius: 0; 16748 vertical-align: middle; 16749 -moz-appearance: none; 16750 justify-content: center; 16751 text-decoration: none; 16752 background-color: transparent; 16753 -webkit-appearance: none; 16754 -webkit-tap-highlight-color: transparent; 16755 } 16756 16757 .MuiButton-root { 16758 color: rgba(0, 0, 0, 0.87); 16759 padding: 6px 16px; 16760 font-size: 0.875rem; 16761 min-width: 64px; 16762 box-sizing: border-box; 16763 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; 16764 font-family: Roboto, sans-serif; 16765 font-weight: 500; 16766 line-height: 1.75; 16767 border-radius: 4px; 16768 text-transform: uppercase; 16769 } 16770 16771 .MuiButton-contained { 16772 color: rgba(0, 0, 0, 0.87); 16773 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); 16774 background-color: #e0e0e0; 16775 } 16776 16777 .MuiButtonBase-root.Mui-disabled { 16778 cursor: default; 16779 pointer-events: none; 16780 } 16781 16782 .MuiButton-label { 16783 width: 100%; 16784 display: inherit; 16785 align-items: inherit; 16786 justify-content: inherit; 16787 } 16788 16789 .cartButton_login_content__2j1f7 { 16790 display: -moz-box; 16791 display: flex; 16792 text-align: center; 16793 z-index: 9; 16794 font-size: 18px; 16795 font-weight: 500; 16796 color: #fff; 16797 } 16798 16799 .jss35 { 16800 top: 5px; 16801 right: 5px; 16802 padding: 4px; 16803 position: absolute; 16804 border-radius: 50%; 16805 } 16806 16807 .jss67 { 16808 cursor: pointer; 16809 font-size: 15px; 16810 line-height: 1.3; 16811 padding-left: 5px; 16812 } 16813 16814 .jss69 { 16815 color: #222222; 16816 } 16817 16818 .jss80 { 16819 color: #fff; 16820 width: 100%; 16821 height: 52px; 16822 padding: 11px 16px; 16823 font-size: 18px; 16824 min-width: 88px; 16825 min-height: 36px; 16826 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; 16827 font-weight: 500; 16828 line-weight: 1em; 16829 border-radius: 4px; 16830 text-transform: uppercase; 16831 background-color: #E87325; 16832 } 16833 16834 @media (min-width: 991px) { 16835 .cartButton_login_content__2j1f7 { 16836 font-weight: 500; 16837 } 16838 } 16839 16840 @media (max-width: 992px) { 16841 #location-lock-dialog { 16842 width: 100%; 16843 top: auto; 16844 bottom: 0; 16845 padding-left: 0; 16846 padding-right: 0; 16847 } 16848 16849 .MuiFormGroup-row { 16850 display: block 16851 } 16852 16853 .MuiIconButton-label input { 16854 margin: 0; 16855 } 16856 } 16857 </style> 16858 <div role="presentation" class="MuiDialog-root jss34" style="display: none;position: fixed; z-index: 9999; inset: 0px;"> 16859 <div class="MuiBackdrop-root" aria-hidden="true" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"></div> 16860 <div tabindex="0" data-test="sentinelStart"></div> 16861 <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;"> 16862 <div class="MuiPaper-root MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiPaper-elevation24 MuiPaper-rounded" role="dialog"> 16863 <div class="jss31 undefined" id="location-lock-dialog"> 16864 <button id="close-popup-delivery" class="MuiButtonBase-root MuiIconButton-root jss35" tabindex="0" type="button" aria-label="close">
16865 <span class="MuiIconButton-label"> 16866 <svg class="MuiSvgIcon-root" focusable="false" viewBox="0 0 24 24" aria-hidden="true"> 16867 <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> 16868 </svg> 16869 </span> 16870 <span class="MuiTouchRipple-root"></span> 16871 </button> 16872 <div> 16873 <div class="jss36">Select Delivery Location</div> 16874 <div class="jss37">Select a delivery location to see product availability</div> 16875 </div> 16876 <div class="MuiFormGroup-root jss63 MuiFormGroup-row" role="radiogroup"> 16877 <label for="jabodetabek" class="MuiFormControlLabel-root jss45"> 16878 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 jss47 Mui-checked MuiIconButton-colorSecondary" aria-disabled="false"> 16879 <span class="MuiIconButton-label"> 16880 <input id="jabodetabek" class="jss49" type="radio" value="Jabodetabek" checked="" name="location"> 16881 <span class="jss41"></span> 16882 </span> 16883 <span class="MuiTouchRipple-root"></span> 16884 </span> 16885 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 16886 <span class="jss67 jss69">Jabodetabek</span> 16887 </span> 16888 </label> 16889 <label for="non-jabodetabek" class="MuiFormControlLabel-root jss45"> 16890 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 MuiIconButton-colorSecondary" aria-disabled="false"> 16891 <span class="MuiIconButton-label"> 16892 <input id="non-jabodetabek" class="jss49" type="radio" value="Outside Jabodetabek" name="location"> 16893 <span class="jss40"></span> 16894 </span> 16895 <span class="MuiTouchRipple-root"></span> 16896 </span> 16897 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 16898 <span class="jss67 jss68">Outside Jabodetabek</span> 16899 </span> 16900 </label> 16901 </div> 16902 <div> 16903 <div class="MuiGrid-root location-popup_area-block__sp9Ws"> 16904 <div class="MuiGrid-root location-popup_pin-search-box__3l5mJ false"> 16905 <div class="MuiGrid-root location-popup_place-icon__jSG0Q"> 16906 <svg class="MuiSvgIcon-root jss6" focusable="false" viewBox="0 0 24 24" aria-hidden="true" style="font-size:16px"> 16907 <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> 16908 </svg> 16909 </div> 16910 <div class="MuiGrid-root location-popup_cancel-icon__FHujU false"> 16911 <i class="material-icons location-popup_clear-pin__s1dRc">close</i> 16912 </div> 16913 <div style="width: 100%;"> 16914 <select id="choose-location" class="form-control"> 16915 <option value="">Choose Location</option> 16916 <option value="jakarta">Jakarta</option> 16917 <option value="bogor">Bogor</option> 16918 <option value="depok">Depok</option> 16919 <option value="tangerang">Tangerang</option> 16920 <option value="bekasi">Bekasi</option> 16921 </select> 16922 </div> 16923 </div> 16924 </div> 16925 </div> 16926 <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="">
16927 <span class="MuiButton-label"> 16928 <span class=""></span> 16929 <span id="location-lock-continue-btn" class="cartButton_login_content__2j1f7" style="font-weight: 500;" data-content="">Continue Shopping</span> 16930 </span> 16931 </button> 16932 </div> 16933 </div> 16934 </div> 16935 <div tabindex="0" data-test="sentinelEnd"></div> 16936 </div> 16937
16937<script> 16938 const jabodetabek = [{ 16939 "code": "jakarta", 16940 "city": "jakarta", 16941 "zip": [] 16942 }, { 16943 "code": "bogor", 16944 "city": "bogor", 16945 "zip": [] 16946 }, { 16947 "code": "depok", 16948 "city": "depok", 16949 "zip": [] 16950 }, { 16951 "code": "tangerang", 16952 "city": "tangerang", 16953 "zip": [] 16954 }, { 16955 "code": "bekasi", 16956 "city": "bekasi", 16957 "zip": [] 16958 }] 16959 let cityNonJabodetabek = ["pengiriman_aceh", "pengiriman_ambon", "pengiriman_atambua", "pengiriman_badung", "pengiriman_bali", "pengiriman_balikpapan", "pengiriman_bandar lampung", "pengiriman_bandung", "pengiriman_bandung barat", "pengiriman_banjarmasin", "pengiriman_banyumas", "pengiriman_banyuwangi", "pengiriman_batam", "pengiriman_biak", "pengiriman_binjai", "pengiriman_blitar", "pengiriman_blora", "pengiriman_bojonegoro", "pengiriman_boyolali", "pengiriman_bukittinggi", "pengiriman_buleleng", "pengiriman_ciamis", "pengiriman_cianjur", "pengiriman_cibinong", "pengiriman_cikarang", "pengiriman_cikupa", "pengiriman_cilacap", "pengiriman_cileunyi", "pengiriman_cimahi", "pengiriman_cirebon", "pengiriman_ciwidey", "pengiriman_deli serdang", "pengiriman_demak", "pengiriman_denpasar", "pengiriman_garut", "pengiriman_gianyar", "pengiriman_gresik", "pengiriman_gunung kidul", "pengiriman_jambi", "pengiriman_jayapura", "pengiriman_jember", "pengiriman_jepara", "pengiriman_jombang", "pengiriman_karanganyar", "pengiriman_karawang", "pengiriman_karo", "pengiriman_kebumen", "pengiriman_kediri", "pengiriman_keerom", "pengiriman_kendal", "pengiriman_klaten", "pengiriman_kudus", "pengiriman_kupang", "pengiriman_lainnya", "pengiriman_lamongan", "pengiriman_lampung", "pengiriman_lampung barat", "pengiriman_lembang", "pengiriman_lombok", "pengiriman_lumajang", "pengiriman_madiun", "pengiriman_magelang", "pengiriman_majalengka", "pengiriman_makassar", "pengiriman_malang", "pengiriman_manado", "pengiriman_medan", "pengiriman_mengwi", "pengiriman_mojokerto", "pengiriman_nganjuk", "pengiriman_ngawi", "pengiriman_padang", "pengiriman_palembang", "pengiriman_pasuruan", "pengiriman_pati", "pengiriman_pekalongan", "pengiriman_pekanbaru", "pengiriman_pemalang", "pengiriman_ponorogo", "pengiriman_pontianak", "pengiriman_probolinggo", "pengiriman_purbalingga", "pengiriman_purwakarta", "pengiriman_purwokerto", "pengiriman_rembang", "pengiriman_riau", "pengiriman_salatiga", "pengiriman_samarinda", "pengiriman_semarang", "pengiriman_sentani", "pengiriman_serang", "pengiriman_sidoarjo", "pengiriman_singkawang", "pengiriman_sragen", "pengiriman_subang", "pengiriman_sukabumi", "pengiriman_sumbawa", "pengiriman_surabaya", "pengiriman_surakarta solo", "pengiriman_tasikmalaya", "pengiriman_tegal", "pengiriman_timika", "pengiriman_wamena", "pengiriman_wiyung", "pengiriman_wonokromo", "pengiriman_yogyakarta", ] 16960 console.log(cityNonJabodetabek) 16961 let non_jabodetabek = [] 16962 for (var i = 0; i < cityNonJabodetabek.length; i++) { 16963 const obj = { 16964 "code": cityNonJabodetabek[i].toLowerCase().replace('pengiriman_', '').replace(' ', '-'), 16965 "city": cityNonJabodetabek[i].replace('pengiriman_', '').replace(' ', '-'), 16966 "zip": [] 16967 } 16968 non_jabodetabek.push(obj) 16969 } 16970 let current_location = getCookie("location_delivery") 16971 $("[name=location]").change(function() { 16972 let v = $(this).val() 16973 let option = [] 16974 if (v == 'Jabodetabek') { 16975 for (var i = 0; i < jabodetabek.length; i++) { 16976 const jabodetabekHtml = `<option value=${jabodetabek[i].city}>${jabodetabek[i].city}</option>` 16977 option.push(jabodetabekHtml) 16978 } 16979 $("#choose-location").html(`<option value="">Choose Location</option>${option}`) 16980 } else { 16981 for (var i = 0; i < non_jabodetabek.length; i++) { 16982 const nonjabodetabekHtml = `<option value=${non_jabodetabek[i].city}>${non_jabodetabek[i].city}</option>` 16983 option.push(nonjabodetabekHtml) 16984 } 16985 $("#choose-location").html(`<option value="">Choose Location</option>${option}`) 16986 } 16987 }) 16988 $("#location-lock-submit").click(function(e) { 16989 let select = $("#choose-location") 16990 let value = select.val().toLowerCase() 16991 console.log(value) 16992 if (select.val() == "") { 16993 return alert("Choose Your Location") 16994 e.preventDefault() 16995 }
16996 setCookie("location_delivery", value, 1000000); 16997 location.reload(); 16998 }) 16999 $("#close-popup-delivery").click(function() { 17000 $(".MuiDialog-root").hide() 17001 if (!current_location) { 17002 setCookie("location_delivery", "jakarta", 1000000); 17003 $("#loc_delivery_city, #loc_delivery_city_mobile").text("Jakarta") 17004 } 17005 }) 17006 $("#loc_delivery, #loc_delivery_mobile").click(function() { 17007 $(".MuiDialog-root").show() 17008 }) 17009 if (!current_location) {} else { 17010 $("#loc_delivery_city, #loc_delivery_city_mobile").text(current_location) 17011 console.log(current_location) 17012 $("#choose-location").each(function() { 17013 if (current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi') { 17014 $("#jabodetabek").trigger("click") 17015 } else { 17016 $("#non-jabodetabek").trigger("click") 17017 } 17018 $("#choose-location").find("option[value=" + current_location + "]").attr("selected", "selected") 17019 }) 17020 } 17021 // 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'){ 17022 // $("#timeMalam").attr("disabled", false) 17023 // } else { 17024 // $("#timeMalam").attr("disabled", true) 17025 // } 17026 if (current_location && current_location != 'jakarta') { 17027 $("#self-pickup").attr("disabled", true) 17028 } 17029 17030 function setCookie(name, value, days) { 17031 var expires = ""; 17032 if (days) { 17033 var date = new Date(); 17034 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); 17035 expires = "; expires=" + date.toUTCString(); 17036 } 17037 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 17038 } 17039 17040 function getCookie(name) { 17041 var nameEQ = name + "="; 17042 var ca = document.cookie.split(';'); 17043 for (var i = 0; i < ca.length; i++) { 17044 var c = ca[i]; 17045 while (c.charAt(0) == ' ') c = c.substring(1, c.length); 17046 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); 17047 } 17048 return null; 17049 } 17050 </script>
17050 17051 <!-- One Tap --> 17052
17052<script> 17053 console.log("Outerbloom..."); 17054 </script>
17054 17055 <div id="shopify-block-ANVEzSUcxTUxZOGpwZ__9703700522657871012" class="shopify-block shopify-app-block"> 17056 <link rel="stylesheet" href="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.css" /> 17057
17057<script src="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.js" defer></script>
17057 17058
17058<script> 17059 const widgetConfig = { 17060 id: "clz7897za002cz7otleaz0d3d", 17061 showQuickResponse: false, 17062 quickResponsesData: [], 17063 themeColor: "#ffffff", 17064 widgetText: "", 17065 radiusType: "circle", 17066 widgetIconType: "whatsapp", 17067 position: "right", 17068 storeLogo: "", 17069 storeName: "Outerbloom", 17070 storeDescription: "", 17071 size: "small", 17072 showCard: false, 17073 widgetColorType: "solid", 17074 widgetColor1: "#008069", 17075 widgetColor2: "#008069", 17076 social: { 17077 socialOrders: ["instagram", "tiktok", "facebook", "x", "youtube", "linkedin", "email"], 17078 values: { 17079 instagram: { 17080 enabled: false, 17081 value: "", 17082 }, 17083 facebook: { 17084 enabled: false, 17085 value: "", 17086 }, 17087 email: { 17088 enabled: false, 17089 value: "", 17090 }, 17091 x: { 17092 enabled: false, 17093 value: "", 17094 }, 17095 tiktok: { 17096 enabled: false, 17097 value: "", 17098 }, 17099 linkedin: { 17100 enabled: false, 17101 value: "", 17102 }, 17103 youtube: { 17104 enabled: false, 17105 value: "", 17106 }, 17107 }, 17108 }, 17109 }; 17110 17111 function initializeWidget() { 17112 if (typeof BBBWidget !== 'undefined') { 17113 BBBWidget.init(widgetConfig); 17114 } else { 17115 setTimeout(initializeWidget, 100); 17116 } 17117 } 17118 initializeWidget(); 17119 </script>
17119 17120 </div> 17121 <div id="shopify-block-ATzRpVTBPU3k1R2pnW__286197278318599166" class="shopify-block shopify-app-block"> 17122 <div style="position: fixed; bottom: 0; right: 0"></div> 17123
17123<script> 17124 console.info("bitlogin extension version: v2.5.7"); 17125 const googleScript = document.createElement("script"); 17126 googleScript.setAttribute("src", "https://accounts.google.com/gsi/client"); 17127 document.head.append(googleScript); 17128 const bitLoginBaseUrl = "https://api.bitbybit.studio"; 17129 const apiUrl = `${bitLoginBaseUrl}/bitlogin/api`; 17130 const appearance = { 17131 "style": "square", 17132 "hasShadow": true, 17133 "domain": "outerbloom1.myshopify.com", 17134 "colorScheme": "match", 17135 "backgroundColor": "#ffffff", 17136 "outlineColor": "#ffe100", 17137 "textColor": "#700000", 17138 "position": "top", 17139 "hideDivider": false, 17140 "dividerText": "", 17141 "size": "small", 17142 "format": "contentFlex", 17143 "language": "en", 17144 "buttonText": "Continue With", 17145 "redirectLink": "\/account", 17146 "googleOneTap": true, 17147 "googleOneTapBanner": true, 17148 "captureAdditionalData": true, 17149 "customerTag": "bitLogin", 17150 "redirectOneTapDesktop": "[{\"label\":\"Account\",\"label2\":\"Desktop: Account\",\"value\":\"account\",\"parentValue\":\"Desktop\"}]", 17151 "redirectOneTapMobile": "[{\"label\":\"Thank you page\",\"label2\":\"Mobile: Thank you page\",\"value\":\"thank_you\",\"parentValue\":\"Mobile\"}]", 17152 "watermark": true, 17153 "buttonList": { 17154 "google": "Continue with Google", 17155 "facebook": "Continue with Facebook", 17156 "apple": "Continue with Apple", 17157 "whatsapp": "Continue with WhatsApp", 17158 "microsoft": "Continue with Microsoft", 17159 "twitter": "Continue with X", 17160 "amazon": "Continue with Amazon", 17161 "instagram": "Continue with Instagram", 17162 "magic_link": "Continue with Magic Link", 17163 "mobile_app": "Continue with Mobile App", 17164 "linkedin": "Continue with LinkedIn" 17165 } 17166 }; 17167 const config = [{ 17168 "domain": "outerbloom1.myshopify.com", 17169 "provider": "FACEBOOK", 17170 "enabledMobile": false, 17171 "enabledWeb": true, 17172 "clientId": "922184709213757", 17173 "clientSecret": "e3c874c8bce6da4211538ebda706d1cb", 17174 "appleTeamId": null, 17175 "applePrivateKey": null, 17176 "usePersonalOauth": false, 17177 "position": null 17178 }, { 17179 "domain": "outerbloom1.myshopify.com", 17180 "provider": "GOOGLE", 17181 "enabledMobile": true, 17182 "enabledWeb": true, 17183 "clientId": "933600373534-vk6hiu9lqrtbblj0357q0gsoo7mqvsd0.apps.googleusercontent.com", 17184 "clientSecret": "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", 17185 "appleTeamId": null, 17186 "applePrivateKey": null, 17187 "usePersonalOauth": true, 17188 "position": null 17189 }, { 17190 "domain": "outerbloom1.myshopify.com", 17191 "provider": "APPLE", 17192 "enabledMobile": true, 17193 "enabledWeb": true, 17194 "clientId": "com.bitlogin.outerbloom", 17195 "clientSecret": "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", 17196 "appleTeamId": "1A", 17197 "applePrivateKey": "1A", 17198 "usePersonalOauth": false, 17199 "position": null 17200 }, { 17201 "domain": "outerbloom1.myshopify.com", 17202 "provider": "WHATSAPP", 17203 "enabledMobile": false, 17204 "enabledWeb": true, 17205 "clientId": null, 17206 "clientSecret": null, 17207 "appleTeamId": null, 17208 "applePrivateKey": null, 17209 "usePersonalOauth": false, 17210 "position": null 17211 }, { 17212 "domain": "outerbloom1.myshopify.com", 17213 "provider": "MICROSOFT", 17214 "enabledMobile": false, 17215 "enabledWeb": false, 17216 "clientId": null, 17217 "clientSecret": null, 17218 "appleTeamId": null, 17219 "applePrivateKey": null, 17220 "usePersonalOauth": false, 17221 "position": null 17222 }, { 17223 "domain": "outerbloom1.myshopify.com", 17224 "provider": "TWITTER", 17225 "enabledMobile": false, 17226 "enabledWeb": false, 17227 "clientId": null, 17228 "clientSecret": null, 17229 "appleTeamId": null, 17230 "applePrivateKey": null, 17231 "usePersonalOauth": false, 17232 "position": null 17233 }, { 17234 "domain": "outerbloom1.myshopify.com", 17235 "provider": "AMAZON", 17236 "enabledMobile": false, 17237 "enabledWeb": false, 17238 "clientId": "amzn1.application-oa2-client.5b560a5e3e2943d6b25c50cd6dca5532", 17239 "clientSecret": "amzn1.oa2-cs.v1.1cb5f9085a202341f60daf5a7be16c570ccc0b4bd5908b3afd080f34e9b8935d", 17240 "appleTeamId": null, 17241 "applePrivateKey": null, 17242 "usePersonalOauth": false, 17243 "position": null 17244 }]; 17245 const redirectUrl = appearance.redirectLink; 17246 let locationCacheSet = false; 17247 let errorLocation = false; 17248 let oneTapSet = false; 17249 let bitloginCache = { 17250 appearance: appearance, 17251 config: config 17252 }; 17253 let isInitializing = false; 17254 const queue = []; 17255 // Add CSS for the popup 17256 const popupStyles = document.createElement('style'); 17257 popupStyles.textContent = ` 17258 /* Styles for login popup */ 17259 .bitlogin-popup-overlay { 17260 position: fixed; 17261 top: 0; 17262 left: 0; 17263 width: 100%; 17264 height: 100%; 17265 background: rgba(0, 0, 0, 0.45); 17266 backdrop-filter: blur(4px); 17267 display: flex; 17268 align-items: center; 17269 justify-content: center; 17270 opacity: 0; 17271 transition: opacity 0.3s ease-in-out; 17272 z-index: 999999; 17273 } 17274 17275 .bitlogin-popup-overlay.visible { 17276 opacity: 1;
17277 } 17278 17279 .bitlogin-popup { 17280 background: #FFFFFF; 17281 box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); 17282 border-radius: 16px; 17283 width: 100%; 17284 max-width: 560px; 17285 display: flex; 17286 overflow: hidden; 17287 position: relative; 17288 opacity: 0; 17289 transform: translateY(20px) scale(0.98); 17290 transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); 17291 } 17292 17293 .bitlogin-popup.visible { 17294 opacity: 1; 17295 transform: translateY(0) scale(1); 17296 } 17297 17298 .bitlogin-popup-with-image { 17299 max-width: 640px; 17300 } 17301 17302 .bitlogin-popup-right-image { 17303 flex-direction: row-reverse; 17304 } 17305 17306 .bitlogin-popup-image { 17307 object-fit: cover; 17308 width: 50%; 17309 height: auto; 17310 } 17311 17312 .bitlogin-popup-content { 17313 padding: 32px; 17314 position: relative; 17315 width: 50%; 17316 } 17317 17318 .bitlogin-popup-close { 17319 position: absolute; 17320 top: 16px; 17321 right: 16px; 17322 background: white; 17323 border: none; 17324 width: 30px; 17325 height: 30px; 17326 display: flex; 17327 align-items: center; 17328 justify-content: center; 17329 cursor: pointer; 17330 transition: background-color 0.2s; 17331 color: inherit; 17332 padding: 0; 17333 } 17334 17335 .bitlogin-popup-close:hover { 17336 background-color: #e5e5e5; 17337 } 17338 17339 .bitlogin-popup-buttons { 17340 display: flex; 17341 flex-direction: column; 17342 gap: 12px; 17343 margin-top: 24px; 17344 } 17345 17346 /* Button styles within popup - override width for popup buttons */ 17347 .bitlogin-popup-buttons #google-login, 17348 .bitlogin-popup-buttons #facebook-login, 17349 .bitlogin-popup-buttons #apple-login, 17350 .bitlogin-popup-buttons #whatsapp-login, 17351 .bitlogin-popup-buttons #microsoft-login, 17352 .bitlogin-popup-buttons #twitter-login, 17353 .bitlogin-popup-buttons #amazon-login, 17354 .bitlogin-popup-buttons #instagram-login, 17355 .bitlogin-popup-buttons #magic-link-login, 17356 .bitlogin-popup-buttons #mobile-app-login { 17357 width: 100% !important; 17358 font-family: inherit !important; 17359 } 17360 17361 .bitlogin-popup-footer { 17362 margin-top: 32px; 17363 text-align: center; 17364 font-size: 14px; 17365 opacity: 0.6; 17366 } 17367 17368 /* Modern Typography */ 17369 .bitlogin-popup h2 { 17370 margin-top: 12px; 17371 font-size: 21px !important; 17372 line-height: 1.2 !important; 17373 font-weight: 700 !important; 17374 letter-spacing: -0.02em !important; 17375 margin-bottom: 16px !important; 17376 } 17377 17378 .bitlogin-popup-header { 17379 position: relative; 17380 margin-bottom: 24px; 17381 } 17382 17383 /* Modern gradient accent */ 17384 .bitlogin-popup-content > div { 17385 font-size: 16px !important; 17386 line-height: 1.2 !important; 17387 opacity: 0.85 !important; 17388 } 17389 17390 /* Enhanced button interactions */ 17391 .bitlogin-popup-buttons button { 17392 position: relative; 17393 overflow: hidden; 17394 } 17395 17396 @keyframes ripple { 17397 0% { 17398 transform: scale(0, 0); 17399 opacity: 0.5; 17400 } 17401 100% { 17402 transform: scale(100, 100); 17403 opacity: 0; 17404 } 17405 } 17406 17407 /* Responsive adjustments */ 17408 @media (max-width: 640px) { 17409 .bitlogin-popup { 17410 max-width: 90%; 17411 width: 90%; 17412 margin: 0 16px; 17413 } 17414 17415 .bitlogin-popup-with-image { 17416 flex-direction: column !important; 17417 } 17418 17419 .bitlogin-popup-image { 17420 width: 100%; 17421 height: 180px; 17422 } 17423 17424 .bitlogin-popup-content { 17425 padding: 24px; 17426 } 17427 17428 .bitlogin-popup h2 { 17429 font-size: 24px !important; 17430 } 17431 } 17432 `; 17433 document.head.appendChild(popupStyles); 17434 // Add fonts link for different font options 17435 const fontsLink = document.createElement('link'); 17436 fontsLink.rel = 'stylesheet'; 17437 fontsLink.href = 'https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600&family=Roboto:wght@400;500&family=Open+Sans:wght@400;500;600&family=Noto+Sans:wght@400;500;600&family=Lato:wght@400;700&family=Poppins:wght@400;500;600&family=Quicksand:wght@400;500;600&family=Raleway:wght@400;500;600&family=PT+Sans:wght@400;700&family=Oswald:wght@400;500;600&display=swap'; 17438 document.head.appendChild(fontsLink); 17439 (async () => { 17440 try { 17441 let host = window.location.host; 17442 if (host === "admin.shopify.com") { 17443 host = `${window.location.pathname.split("/")[2]}.myshopify.com`; 17444 } 17445 const urlSearchParams = new URLSearchParams(window.location.search); 17446 const checkoutUrl = urlSearchParams.get("checkout_url"); 17447 async function init({ 17448 inputRef, 17449 index 17450 }) { 17451 if (isInitializing) { 17452 queue.push(() => init({ 17453 inputRef, 17454 index 17455 })); 17456 return; 17457 } 17458 isInitializing = true; 17459 try { 17460 let bitLoginSectionRoot = document.querySelector(`.bitlogin-root[data-index="${index}"]`); 17461 const formRef = inputRef?.closest("form:not([action='/account/recover'])"); 17462 if (formRef && !bitLoginSectionRoot) { 17463 await getLocation(); 17464 bitLoginSectionRoot = document.createElement(`div`); 17465 bitLoginSectionRoot.setAttribute("class", "bitlogin-root"); 17466 bitLoginSectionRoot.setAttribute("data-index", `${index}`); 17467 updateAppearance({ 17468 formRef, 17469 rootRef: bitLoginSectionRoot, 17470 host, 17471 }); 17472 } 17473 } catch (err) { 17474 console.error(`error while initiating bitlogin extensions`, err); 17475 } finally { 17476 // Release the lock 17477 isInitializing = false; 17478 // Check if there are pending items in the queue 17479 if (queue.length > 0) { 17480 // Process the next function in the queue 17481 const nextFunction = queue.shift(); 17482 nextFunction(); 17483 } 17484 } 17485 } 17486 17487 function initAll() { 17488 return new Promise((resolve, reject) => { 17489 setTimeout(async () => { 17490 const inputRefs = document.querySelectorAll('input[name="customer[email]"]'); 17491 for (let i = 0; i < inputRefs.length; i++) { 17492 const currentInputRef = inputRefs[i]; 17493 const isVisible = isElementVisible(currentInputRef); 17494 if (isVisible) { 17495 await init({ 17496 inputRef: currentInputRef, 17497 index: i 17498 }); 17499 } 17500 } 17501 resolve("ok"); 17502 }, 100); 17503 }); 17504 } 17505 const observer = new MutationObserver((mutationsList) => { 17506 for (let mutation of mutationsList) { 17507 initAll(); 17508 } 17509 }); 17510 observer.observe(document.body, { 17511 childList: true, 17512 subtree: true, 17513 attributes: true, 17514 }); 17515 initAll(); 17516 if (appearance.googleOneTap) { 17517 setupOneTap({ 17518 host, 17519 checkoutUrl 17520 }); 17521 } 17522 // Initialize popup 17523 await initPopup(host); 17524 } catch (error) { 17525 console.error("Error initializing BitLogin:", error); 17526 } 17527 })(); 17528 async function initPopup(host) { 17529 // Check if user is already logged in using Liquid checks properly 17530 const isLoggedIn = false || document.querySelector('.customer-logout-link') || document.querySelector('.account-link') || window.location.pathname.includes('/account'); 17531 if (isLoggedIn) { 17532 return; // User is logged in, don't show popup 17533 } 17534 try { 17535 // Fetch the popup configuration 17536 const popupConfig = await fetch(`${apiUrl}/appearance/popup/domain/${host}`).then(res => res.json()).catch(err => { 17537 console.error('Error fetching popup configuration:', err); 17538 return null; 17539 }); 17540 if (!popupConfig || !popupConfig.enabled) { 17541 return;
17541 // Don't show popup if disabled or config not found 17542 } 17543 // Create popup after 10 seconds 17544 setTimeout(() => { 17545 // Check if user is still on the page and still not logged in 17546 if (document.visibilityState === 'visible') { 17547 // Additional check in case user logged in during the 10 second wait 17548 const currentlyLoggedIn = false || document.querySelector('.customer-logout-link') || document.querySelector('.account-link'); 17549 if (!currentlyLoggedIn) { 17550 createLoginPopup(popupConfig, host); 17551 } 17552 } 17553 }, 10000); 17554 } catch (error) { 17555 console.error('Error initializing popup:', error); 17556 } 17557 } 17558 17559 function createLoginPopup(popupConfig, host) { 17560 // Font mapping 17561 const fontFamilyMap = { 17562 system_fonts: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif', 17563 montserrat: 'Montserrat, sans-serif', 17564 roboto: 'Roboto, sans-serif', 17565 open_sans: 'Open Sans, sans-serif', 17566 noto_sans: 'Noto Sans, sans-serif', 17567 lato: 'Lato, sans-serif', 17568 poppins: 'Poppins, sans-serif', 17569 quicksand: 'Quicksand, sans-serif', 17570 raleway: 'Raleway, sans-serif', 17571 pt_sans: 'PT Sans, sans-serif', 17572 oswald: 'Oswald, sans-serif', 17573 }; 17574 // Create overlay 17575 const overlay = document.createElement('div'); 17576 overlay.className = 'bitlogin-popup-overlay'; 17577 // Create popup container with appropriate styling 17578 const popup = document.createElement('div'); 17579 popup.className = 'bitlogin-popup'; 17580 if (popupConfig.layout === 'default') { 17581 popup.style.maxWidth = '400px'; 17582 } 17583 // Function to close the popup 17584 const closePopup = () => { 17585 overlay.classList.remove('visible'); 17586 popup.classList.remove('visible'); 17587 setTimeout(() => { 17588 if (document.body.contains(overlay)) { 17589 document.body.removeChild(overlay); 17590 } 17591 }, 300); 17592 }; 17593 // Add click handler to the overlay to close when clicking outside 17594 overlay.addEventListener('click', (event) => { 17595 // Close only if clicking directly on the overlay, not its children 17596 if (event.target === overlay) { 17597 closePopup(); 17598 } 17599 }); 17600 // Add escape key handler to close popup 17601 document.addEventListener('keydown', (event) => { 17602 if (event.key === 'Escape' && document.body.contains(overlay)) { 17603 closePopup(); 17604 } 17605 }); 17606 // Create layout with image if specified 17607 let contentWrapper; 17608 if (popupConfig.layout !== 'default' && popupConfig.popupImage) { 17609 popup.classList.add('bitlogin-popup-with-image'); 17610 if (popupConfig.layout === 'right') { 17611 popup.classList.add('bitlogin-popup-right-image'); 17612 } 17613 // Add image 17614 const image = document.createElement('img'); 17615 image.className = 'bitlogin-popup-image'; 17616 image.src = popupConfig.popupImage; 17617 image.alt = 'Login'; 17618 image.loading = 'lazy'; 17619 popup.appendChild(image); 17620 // Create content container 17621 contentWrapper = document.createElement('div'); 17622 contentWrapper.className = 'bitlogin-popup-content'; 17623 if (popupConfig.layout === 'right') { 17624 const closeButton = document.createElement('button'); 17625 closeButton.className = 'bitlogin-popup-close'; 17626 closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"> 17627 <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 17628 </svg>`; 17629 closeButton.setAttribute('aria-label', 'Close'); 17630 closeButton.onclick = closePopup; 17631 popup.appendChild(closeButton); 17632 } 17633 } else { 17634 contentWrapper = document.createElement('div'); 17635 contentWrapper.className = 'bitlogin-popup-content'; 17636 contentWrapper.style.width = '100%'; 17637 } 17638 // Set background style 17639 if (popupConfig.backgroundTheme === 'gradient') { 17640 contentWrapper.style.background = `linear-gradient(135deg, ${popupConfig.backgroundPopupColor}, ${popupConfig.gradientColor})`; 17641 } else { 17642 contentWrapper.style.backgroundColor = popupConfig.backgroundPopupColor; 17643 } 17644 // Apply font family 17645 contentWrapper.style.setProperty('font-family', fontFamilyMap[popupConfig.font] || fontFamilyMap.system_fonts, 'important'); 17646 if (popupConfig.layout !== 'right') { 17647 const closeButton = document.createElement('button'); 17648 closeButton.className = 'bitlogin-popup-close'; 17649 closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"> 17650 <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 17651 </svg>`; 17652 closeButton.setAttribute('aria-label', 'Close'); 17653 closeButton.onclick = closePopup; 17654 contentWrapper.appendChild(closeButton); 17655 } 17656 // Add heading with subtle animation effect 17657 const header = document.createElement('div'); 17658 header.className = 'bitlogin-popup-header'; 17659 const heading = document.createElement('h2'); 17660 heading.textContent = popupConfig.headingText || 'Sign in for exclusive benef
17660its'; 17661 heading.style.color = popupConfig.fontColor; 17662 header.appendChild(heading); 17663 // Add body text with improved formatting 17664 const bodyText = document.createElement('div'); 17665 bodyText.innerHTML = popupConfig.bodyText || 'Join our community to access exclusive offers and a personalized shopping experience.'; 17666 bodyText.style.color = popupConfig.fontColor; 17667 header.appendChild(bodyText); 17668 contentWrapper.appendChild(header); 17669 // Create buttons container with modern styling 17670 const buttonsContainer = document.createElement('div'); 17671 buttonsContainer.className = 'bitlogin-popup-buttons'; 17672 // Add social buttons 17673 const providerLabels = { 17674 'GOOGLE': 'Continue with Google', 17675 'FACEBOOK': 'Continue with Facebook', 17676 'APPLE': 'Continue with Apple', 17677 'WHATSAPP': 'Continue with WhatsApp', 17678 'MAGIC_LINK': 'Continue with Email', 17679 }; 17680 // Add first login provider button 17681 if (popupConfig.loginProvider1 !== 'NONE') { 17682 const buttonConfig = { 17683 theme: popupConfig.colorScheme || 'match', 17684 customColor: popupConfig.textColor, 17685 format: 'contentFlex', 17686 buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider1.toLowerCase()], 17687 hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true, 17688 style: popupConfig.style || 'rounded', 17689 size: popupConfig.size || 'medium', 17690 colorScheme: popupConfig.colorScheme || 'match', 17691 backgroundColor: popupConfig.backgroundColor || '#3B82F6', 17692 textColor: popupConfig.textColor || '#FFFFFF', 17693 outlineColor: popupConfig.outlineColor || '#3B82F6', 17694 host: host 17695 }; 17696 const button1 = createSocialLoginButton(popupConfig.loginProvider1, buttonConfig); 17697 // Handle click event - this overrides the default click handler in createSocialLoginButton 17698 button1.onclick = () => { 17699 onClickSocialLogin({ 17700 provider: popupConfig.loginProvider1.toLowerCase(), 17701 host 17702 }); 17703 closePopup(); 17704 }; 17705 buttonsContainer.appendChild(button1); 17706 } 17707 // Add second login provider button if enabled 17708 if (popupConfig.loginProvider2 !== 'NONE') { 17709 const buttonConfig = { 17710 theme: popupConfig.colorScheme || 'match', 17711 customColor: popupConfig.textColor, 17712 format: 'contentFlex', 17713 buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider2.toLowerCase()], 17714 hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true, 17715 style: popupConfig.style || 'rounded', 17716 size: popupConfig.size || 'medium', 17717 colorScheme: popupConfig.colorScheme || 'match', 17718 backgroundColor: popupConfig.backgroundColor || '#3B82F6', 17719 textColor: popupConfig.textColor || '#FFFFFF', 17720 outlineColor: popupConfig.outlineColor || '#3B82F6', 17721 host: host 17722 }; 17723 const button2 = createSocialLoginButton(popupConfig.loginProvider2, buttonConfig); 17724 // Handle click event - this overrides the default click handler in createSocialLoginButton 17725 button2.onclick = () => { 17726 onClickSocialLogin({ 17727 provider: popupConfig.loginProvider2.toLowerCase(), 17728 host 17729 }); 17730 closePopup(); 17731 }; 17732 buttonsContainer.appendChild(button2); 17733 } 17734 contentWrapper.appendChild(buttonsContainer); 17735 // Append content to popup 17736 popup.appendChild(contentWrapper); 17737 // Append popup to overlay 17738 overlay.appendChild(popup); 17739 // Append overlay to body 17740 document.body.appendChild(overlay); 17741 // Trigger animation with slight delay for better perceived performance 17742 setTimeout(() => { 17743 overlay.classList.add('visible'); 17744 setTimeout(() => { 17745 popup.classList.add('visible'); 17746 }, 50); 17747 }, 10); 17748 } 17749 window.addEventListener("load", () => { 17750 window.addEventListener("message", (event) => { 17751 const receivedData = event.data; 17752 if (receivedData.type === "authorize") { 17753 post(JSON.parse(JSON.stringify({ 17754 "customer[email]": receivedData.email, 17755 "customer[password]": receivedData.password, 17756 form_type: "customer_login", 17757 utf8: "â", 17758 return_url: redirectUrl, 17759 }))); 17760 } else if (receivedData.type === "rejected") { 17761 if (receivedData.reason === "customer_account_disabled") { 17762 showAlert("Your account needs to be activated. We've sent you an activation link - please check your email to complete this step."); 17763 } else if (receivedData.reason === "customer_entry_created_email_not_set") { 17764 showAlert("A new account was created but requires an email address. Please update your account with a valid email address to continue."); 17765 } else if (receivedData.reason === "customer_exist_email_not_set") { 17766 showAlert("Your existing account is missing an email address. Please contact support to update your account with a valid email address."); 17767 } 17768 } 17769 if (receivedData.type === "customer_authenticated") { 17770 // Dispatch a custom event that merchants can listen for to implement their custom logic 17771 const customerAuthEvent = new CustomEvent('bitlogin:customer_authenticated', { 17772 detail: { 17773 provider: receivedData.provider, 17774 customer: receivedData.customer, 17775 shopifyCustomerCreated: receivedData.shopifyCustomerCreated 17776 } 17777 }); 17778 // Dispatch the event on the window object so merchants can listen for it 17779 window.dispatchEvent(customerAuthEvent); 17780 } 17781 }); 17782 }); 17783 // Reusable functions for social login buttons 17784 function createSocialLoginButton(provider, config = {}) { 17785 const { 17786 theme = 'match', 17787 customColor = null, 17788 format = 'contentFlex', 17789 buttonText = null, 17790 hasShadow = true, 17791 style = 'rounded', 17792 size = 'medium', 17793 colorScheme = 'match', 17794 backgroundColor = '#3B82F6', 17795 textColor = '#FFFFFF', 17796 outlineColor = '#3B82F6', 17797 rootRef = null, 17798 host = null 17799 } = config; 17800 // Create button element with appropriate ID and attributes 17801 const button = document.createElement('button'); 17802 button.id = `${provider.toLowerCase()}-login`; 17803 button.type = 'button'; 17804 // Set the inner SVG based on provider 17805 switch (provider.toUpperCase()) { 17806 case 'GOOGLE': 17807 button.innerHTML = googleLoginIcon(theme, customColor); 17808 break; 17809 case 'FACEBOOK': 17810 button.innerHTML = facebookLoginIcon(theme, customColor); 17811 break; 17812 case 'APPLE': 17813 button.innerHTML = appleLoginIcon(theme, customColor); 17814 break; 17815 case 'WHATSAPP': 17816 button.innerHTML = whatsappLoginIcon(theme, customColor); 17817 break; 17818 case 'MICROSOFT': 17819 button.innerHTML = microsoftLoginIcon(theme, customColor); 17820 break; 17821 case 'TWITTER': 17822 button.innerHTML = twitterLoginIcon(theme, customColor); 17823 break; 17824 case 'AMAZON': 17825 button.innerHTML = amazonLoginIcon(theme, customColor); 17826 break; 17827 case 'INSTAGRAM': 17828 button.innerHTML = instagramLoginIcon(theme, customColor); 17829 break; 17830 case 'MAGIC_LINK': 17831 button.innerHTML = magicLinkLoginIcon(theme, customColor); 17832 break; 17833 case 'MOBILE_APP':
17834 button.innerHTML = mobileAppLoginIcon(theme, customColor); 17835 break; 17836 case 'LINKEDIN': 17837 button.innerHTML = linkedinLoginIcon(theme, customColor); 17838 break; 17839 } 17840 // Add text if format isn't icon-only and buttonText is provided 17841 if (format !== "wrapperFlexContainerOnlyLogo" && buttonText) { 17842 button.innerHTML += `<p>${buttonText}</p>`; 17843 } 17844 // Apply styling 17845 // Shadow 17846 if (hasShadow) { 17847 const shadowProperties = `0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)`; 17848 button.style["box-shadow"] = shadowProperties; 17849 } 17850 // Border radius 17851 const radiusProperties = style === "rounded" ? "8px" : style === "square" ? "0px" : style === "fullRounded" ? format === "wrapperFlexContainerOnlyLogo" ? "50%" : "50px" : undefined; 17852 button.style["border-radius"] = radiusProperties; 17853 // Size 17854 const sizeProperties = size === "medium" ? "12px" : size === "small" ? "8px" : size === "large" ? "16px" : "8px"; 17855 button.style["padding-block"] = sizeProperties; 17856 // Format styling 17857 if (format) { 17858 if (format === "contentFlexReverse" || format === "contentFlexCenterReverse") { 17859 const flexDir = `row-reverse`; 17860 button.style["flex-direction"] = flexDir; 17861 } 17862 if (format === "contentFlexCenter" || format === "contentFlexCenterReverse") { 17863 const justifyContent = `center`; 17864 button.style["justify-content"] = justifyContent; 17865 } else if (format === "contentFlex" || format === "contentFlexReverse") { 17866 const buttonTextElement = button.querySelector("p"); 17867 if (buttonTextElement) { 17868 buttonTextElement.style["flex-grow"] = 1; 17869 buttonTextElement.style["text-align"] = "center"; 17870 } 17871 } 17872 if (format === "wrapperFlexContainerOnlyLogo" && rootRef) { 17873 rootRef.style["flex-direction"] = "row"; 17874 rootRef.style["gap"] = "8px"; 17875 rootRef.style["display"] = "flex"; 17876 rootRef.style["flex-wrap"] = "wrap"; 17877 const sizeMapping = { 17878 small: "52px", 17879 medium: "62px", 17880 large: "72px", 17881 }; 17882 const buttonSize = sizeMapping[size] || "52px"; 17883 button.style["margin"] = 0; 17884 button.style["width"] = buttonSize; 17885 button.style["height"] = buttonSize; 17886 button.style["display"] = "flex"; 17887 button.style["align-items"] = "center"; 17888 button.style["justify-content"] = "center"; 17889 const svgElement = button.querySelector("svg"); 17890 if (svgElement) { 17891 svgElement.style["flex"] = "none"; 17892 } 17893 } 17894 } 17895 // Color scheme styling 17896 if (colorScheme === "black") { 17897 button.classList.add("scheme-black"); 17898 } else if (colorScheme === "white") { 17899 button.classList.add("scheme-white"); 17900 } else if (colorScheme === "custom") { 17901 button.style["background-color"] = backgroundColor; 17902 button.style["color"] = textColor; 17903 button.style["border-color"] = outlineColor; 17904 const darkenColor = (color, percentage) => { 17905 const value = parseInt(color.slice(1), 16); 17906 const r = Math.max(0, ((value >> 16) & 0xff) - (0xff * percentage)); 17907 const g = Math.max(0, ((value >> 8) & 0xff) - (0xff * percentage)); 17908 const b = Math.max(0, (value & 0xff) - (0xff * percentage)); 17909 return `rgb(${Math.round(r)}, ${Math.round(g)}, ${Math.round(b)})`; 17910 }; 17911 button.addEventListener("mouseover", () => { 17912 button.style["background-color"] = darkenColor(backgroundColor, 0.2); 17913 }); 17914 button.addEventListener("mouseout", () => { 17915 button.style["background-color"] = backgroundColor; 17916 }); 17917 } else if (colorScheme === "match") { 17918 button.classList.add("scheme-match"); 17919 } else if (colorScheme === "matchOutline") { 17920 button.classList.add("scheme-match-outline"); 17921 } 17922 // Add click event listener if host is provided 17923 if (host) { 17924 button.addEventListener("click", () => onClickSocialLogin({ 17925 provider: provider.toLowerCase(), 17926 host 17927 })); 17928 } 17929 return button; 17930 } 17931 17932 function setupSocialLoginButtons(config, rootRef, data, host) { 17933 // Clear any existing content 17934 rootRef.innerHTML = ''; 17935 const sortedEnabledProviders = config.filter(c => c.enabledWeb).sort((a, b) => a.position - b.position);
17936 sortedEnabledProviders.forEach(provider => { 17937 const key = provider.provider; 17938 const lowerKey = key.toLowerCase(); 17939 const buttonText = data.format !== "wrapperFlexContainerOnlyLogo" ? (lowerKey === 'twitter' ? data.buttonList.twitter.replace('Twitter', 'X') : data.buttonList[lowerKey]) : null; 17940 const button = createSocialLoginButton(key, { 17941 theme: data.colorScheme || 'match', 17942 customColor: data.textColor, 17943 format: data.format, 17944 buttonText: buttonText, 17945 hasShadow: data.hasShadow !== undefined ? data.hasShadow : true, 17946 style: data.style, 17947 size: data.size, 17948 colorScheme: data.colorScheme, 17949 backgroundColor: data.backgroundColor, 17950 textColor: data.textColor, 17951 outlineColor: data.outlineColor, 17952 rootRef: rootRef, 17953 host: host 17954 }); 17955 rootRef.appendChild(button); 17956 }); 17957 return rootRef; 17958 } 17959 17960 function updateAppearance({ 17961 formRef, 17962 rootRef, 17963 host 17964 }) { 17965 if (!formRef) return; 17966 const data = bitloginCache.appearance || { 17967 style: "square", 17968 hasShadow: false, 17969 colorScheme: "match", 17970 backgroundColor: "#FFFFFF", 17971 outlineColor: "#000000", 17972 textColor: "#000000", 17973 position: "bottom", 17974 hideDivider: "false", 17975 dividerText: "OR", 17976 size: "small", 17977 format: "contentFlex", 17978 language: "en", 17979 buttonText: "Continue with", 17980 redirectLink: "/account", 17981 googleOneTap: true, 17982 googleOneTapBanner: true, 17983 customerTag: "bitLogin", 17984 redirectOneTapDesktop: null, 17985 redirectOneTapMobile: null, 17986 buttonList: { 17987 google: "Continue with Google", 17988 facebook: "Continue with Facebook", 17989 apple: "Continue with Apple", 17990 whatsapp: "Continue with WhatsApp", 17991 microsoft: "Continue with Microsoft", 17992 twitter: "Continue with X", 17993 amazon: "Continue with Amazon", 17994 instagram: "Continue with Instagram", 17995 magic_link: "Continue with Magic Link", 17996 mobile_app: "Continue with Mobile App", 17997 linkedin: "Continue with LinkedIn", 17998 }, 17999 }; 18000 // Use the new setupSocialLoginButtons function to create and configure all buttons 18001 setupSocialLoginButtons(bitloginCache.config, rootRef, data, host); 18002 let divider; 18003 if (!data.hideDivider) { 18004 divider = document.createElement("div"); 18005 const dividerStyle = "text-align:center;margin-block:16px"; 18006 divider.setAttribute("style", dividerStyle); 18007 divider.innerHTML = data.dividerText; 18008 } 18009 if (data.position === "bottom") { 18010 if (divider) { 18011 formRef.appendChild(divider); 18012 } 18013 formRef.appendChild(rootRef); 18014 } else if (data.position === "top") { 18015 if (divider) { 18016 formRef.prepend(divider); 18017 } 18018 formRef.prepend(rootRef); 18019 } 18020 } 18021 async function onClickSocialLogin({ 18022 provider, 18023 host 18024 }) { 18025 const rand = Math.random().toString(); 18026 const locationQueryString = bitloginCache.location ? `&${objectToQueryString(bitloginCache.location)}` : ""; 18027 const width = 800; 18028 const height = 600; 18029 const left = (window.screen.width / 2) - (width / 2); 18030 const top = (window.screen.height / 2) - (height / 2) - 50; 18031 if (provider === 'whatsapp') { 18032 window.open(`/apps/bitlogin/whatsapp${locationQueryString ? `?${locationQueryString}` : ''}`, "mywindow", `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`); 18033 } else { 18034 window.open(`${apiUrl}/login/${provider}?referrerId=${rand}&shop=${host}${locationQueryString}`, "mywindow", `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`); 18035 } 18036 } 18037 18038 function objectToQueryString(obj) { 18039 return Object.keys(obj).map((key) => { 18040 return encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]); 18041 }).join("&"); 18042 } 18043 async function getLocation() { 18044 if (locationCacheSet) return; 18045 try { 18046 const response = await fetch("https://ipapi.co/json/"); 18047 if (!response.ok) { 18048 console.error(`error retrieving location...`, response.status); 18049 errorLocation = true; 18050 } else { 18051 const data = await response.json(); 18052 const { 18053 city, 18054 region, 18055 country_name, 18056 country_code 18057 } = data; 18058 const formattedLocationData = { 18059 city, 18060 region, 18061 country_name, 18062 country_code, 18063 }; 18064 bitloginCache.location = formattedLocationData; 18065 locationCacheSet = true; 18066 errorLocation = false; 18067 } 18068 } catch (err) { 18069 console.error(`error fetching location`, err); 18070 errorLocation = true; 18071 } 18072 } 18073 18074 function post(params) { 18075 // The rest of this code assumes you are not using a library. 18076 // It can be made less verbose if you use one. 18077 const form = document.createElement("form"); 18078 form.method = "post"; 18079 form.action = `/account/login`; 18080 form.acceptCharset = "UTF-8"; 18081 form.setAttribute("data-login-with-shop-sign-in", "true"); 18082 form.setAttribute("novalidate", "novalidate"); 18083 for (const key in params) { 18084 if (params.hasOwnProperty(key)) { 18085 const hiddenField = document.createElement("input"); 18086 hiddenField.type = "hidden"; 18087 hiddenField.name = key; 18088 hiddenField.value = params[key]; 18089 form.appendChild(hiddenField); 18090 } 18091 } 18092 document.body.appendChild(form); 18093 form.submit(); 18094 } 18095 async function setupOneTap({ 18096 host, 18097 checkoutUrl 18098 }) { 18099 if (oneTapSet) return; 18100 const redirectOneTapDesktop = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapDesktop || '[]')); 18101 const redirectOneTapMobile = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapMobile || '[]')); 18102 const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent); 18103 const redirectList = JSON.parse(isMobile ? redirectOneTapMobile : redirectOneTapDesktop); 18104 const currentPath = window.location.pathname.toLowerCase(); 18105 const currentUrl = window.location.href.toLowerCase(); 18106 const shouldHideGoogleOneTap = redirectList.some(({ 18107 value 18108 }) => { 18109 switch (value) { 18110 case 'home': 18111 return currentPath === '/'; 18112 case 'product': 18113 return currentPath.startsWith('/products/'); 18114 case 'collections': 18115 return currentPath.startsWith('/collections'); 18116 case 'cart': 18117 return currentPath === '/cart'; 18118 case 'checkout': 18119 return currentPath.startsWith('/checkouts') && !currentPath.includes('thank_you'); 18120 case 'thank_you': 18121 return currentPath.includes('/thank_you'); 18122 case 'account': 18123 return currentPath.startsWith('/account'); 18124 case 'pages': 18125 return currentPath.startsWith('/pages'); 18126 case 'blogs': 18127 return currentPath === '/blogs' || currentPath === '/blogs/news'; 18128 case 'blog_post': 18129 return currentPath.startsWith('/blogs/') && currentPath.split('/').length > 3; 18130 default: 18131 return false; 18132 } 18133 }); 18134 if (shouldHideGoogleOneTap) return; 18135 const oneTapClientId = bitloginCache.config.find( 18136 (config) => config.provider === "GOOGLE")?.clientId; 18137 const isLoggedIn = false; 18138 if (bitloginCache.appearance.googleOneTap && oneTapClientId && !isLoggedIn) { 18139 const googleOneTapButton = document.createElement("div"); 18140 googleOneTapButton.setAttribute("id", "g_id_onload"); 18141 googleOneTapButton.setAttribute("data-client_id", oneTapClientId); 18142 googleOneTapButton.setAttribute("data-context", "signin"); 18143 googleOneTapButton.setAttribute("data-callback", "handleGoogleOneTapResponse"); 18144 googleOneTapButton.setAttribute("data-itp_support", "true"); 18145 const googleOneTapScript = document.createElement("script"); 18146 googleOneTapScript.innerHTML += ` 18147 function handleGoogleOneTapResponse(response) { 18148 if (response.credential) { 18149 const idToken = response.credential; 18150 fetch('${bitLoginBaseUrl}/bitlogin/api/login/google-one-tap', { 18151 method: 'POST', 18152 headers: { 'Content-Type': 'application/json' }, 18153 body: JSON.stringify({ idToken, shop: "${host}", ...bitloginCache.location }) 18154 }).then(response => { 18155 response.json().then((data) => { 18156 post( 18157 JSON.parse( 18158 JSON.stringify({ 18159 "customer[email]": data.email, 18160 "customer[password]": data.password, 18161 form_type: "customer_login", 18162 utf8: "â", 18163 return_url: redirectUrl, 18164 }) 18165 ) 18166 ); 18167 }); 18168 }).catch(error => { 18169 console.error('Error occurred:', error); 18170 }); 18171 } else { 18172 console.error('No credential available'); 18173 } 18174 } 18175 `; 18176 document.body.append(googleOneTapButton); 18177 document.body.append(googleOneTapScript); 18178 } 18179 oneTapSet = true; 18180 } 18181 const googleLoginIcon = (theme, customColor) => ` 18182 ${ 18183 theme === "match" || theme === "matchOutline" || theme === "custom" 18184 ? `<svg 18185 xmlns='https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif' 18186 xmlns:v='https://vecta.io/nano' 18187 width='24' 18188 height='24'
18189 viewBox='0 0 186.69 190.5' 18190 > 18191 <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="${ 18192 theme === "custom" ? customColor : "#4285f4" 18193 }"/><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="${ 18194 theme === "custom" ? customColor : "#34a853" 18195 }"/><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="${ 18196 theme === "custom" ? customColor : "#fbbc05" 18197 }"/><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="${ 18198 theme === "custom" ? customColor : "#ea4335" 18199 }" clip-path="none" mask="none"/></g> 18200 </svg>` 18201 : `<svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="25" height="25" viewBox="0 0 25 25" fill="none"> 18202 <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="${ 18203 theme !== "black" ? "black" : "white" 18204 }"/> 18205 <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="${ 18206 theme !== "black" ? "black" : "white" 18207 }"/> 18208 <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="${ 18209 theme !== "black" ? "black" : "white" 18210 }"/> 18211 <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="${ 18212 theme !== "black" ? "black" : "white" 18213 }"/> 18214 </svg>` 18215 }`; 18216 const appleLoginIcon = (theme, customColor) => `<svg width="24" height="24" viewBox="0 0 19 24" fill="none" xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"> 18217 <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="${ 18218 theme === "custom" 18219 ? customColor 18220 : theme === "match" || theme === "black" 18221 ? "white" 18222 : "black" 18223 }"/> 18224 </svg>`; 18225 const facebookLoginIcon = (theme, customColor) => ` 18226 ${ 18227 theme === "match" || theme === "matchOutline" || theme === "custom" 18228 ? `<svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="25" viewBox="0 0 24 25" fill="none"> 18229 <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.2026L16.671 15.9695H13.8747V24.3548C19.6123 23.4553 23.9998 18.4907 23.9998 12.4999L24 12.5Z" fill="${ 18230 theme === "custom" ? customColor : theme === "match" ? "white" : "#1977F3" 18231 }"/> 18232 <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="${ 18233 theme === "match" ? "#1778f2" : "transparent" 18234 }"/> 18235 </svg>` 18236 : `<svg xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" width="24" height="25" viewB
18236ox="0 0 24 25" fill="none"> 18237 <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.2026L16.671 15.9695H13.8747V24.3548C19.6123 23.4553 23.9998 18.4907 23.9998 12.4999L24 12.5Z" fill="${ 18238 theme === "black" ? "white" : "black" 18239 }"/> 18240 <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="${ 18241 theme === "black" ? "black" : "white" 18242 }"/> 18243 </svg>` 18244 }`; 18245 const whatsappLoginIcon = (theme, customColor) => `<svg 18246 viewBox="0 0 24 24" 18247 fill="none" 18248 width="24" 18249 height="25" 18250 xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 18251 > 18252 <g id="SVGRepo_bgCarrier" stroke-width="0"></g> 18253 <g 18254 id="SVGRepo_tracerCarrier" 18255 stroke-linecap="round" 18256 stroke-linejoin="round" 18257 ></g> 18258 <g id="SVGRepo_iconCarrier"> 18259 <path 18260 fill-rule="evenodd" 18261 clip-rule="evenodd" 18262 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" 18263 fill="${ 18264 theme === "match" || theme === "black" 18265 ? "#ffffff" 18266 : theme === "white" 18267 ? "#000000" 18268 : theme === "matchOutline" 18269 ? "#25d366" 18270 : customColor 18271 }" 18272 ></path> 18273 </g> 18274 </svg>`; 18275 const microsoftLoginIcon = (theme, customColor) => `<svg 18276 xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 18277 width="25" 18278 height="25" 18279 viewBox="0 0 48 48"> 18280 <path fill="${ 18281 theme === "match" || theme == "matchOutline" 18282 ? "#ff5722" 18283 : theme === "black" 18284 ? "#ffffff" 18285 : theme === "white" 18286 ? "#000000" 18287 : customColor 18288 }" d="M6 6H22V22H6z" transform="rotate(-180 14 14)"></path> 18289 <path 18290 fill="${ 18291 theme === "match" || theme == "matchOutline" 18292 ? "#4caf50" 18293 : theme === "black" 18294 ? "#ffffff" 18295 : theme === "white" 18296 ? "#000000" 18297 : customColor 18298 }" 18299 d="M26 6H42V22H26z" 18300 transform="rotate(-180 34 14)"></path> 18301 <path 18302 fill="${ 18303 theme === "match" || theme == "matchOutline" 18304 ? "#ffc107" 18305 : theme === "black" 18306 ? "#ffffff" 18307 : theme === "white" 18308 ? "#000000" 18309 : customColor 18310 }" 18311 d="M26 26H42V42H26z" 18312 transform="rotate(-180 34 34)"></path> 18313 <path fill="${ 18314 theme === "match" || theme == "matchOutline" 18315 ? "#03a9f4" 18316 : theme === "black" 18317 ? "#ffffff" 18318 : theme === "white" 18319 ? "#000000" 18320 : customColor 18321 }" d="M6 26H22V42H6z" transform="rotate(-180 14 34)"></path> 18322 </svg>`; 18323 const twitterLoginIcon = (theme, customColor) => `<svg 18324 xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 18325 width="25" 18326 height="25" 18327 viewBox="0 0 48 48"> 18328 <polygon fill="${ 18329 theme === "match" || theme === "black" 18330 ? "#ffffff" 18331 : theme === "matchOutline" || theme === "white" 18332 ? "#000000" 18333 : customColor 18334 }" points="41,6 9.929,42 6.215,42 37.287,6"></polygon> 18335 <polygon 18336 fill="${ 18337 theme === "match" || theme === "black" 18338 ? "#000000" 18339 : theme === "matchOutline" || theme === "white" 18340 ? "#ffffff" 18341 : customColor 18342 }" 18343 fill-rule="evenodd" 18344 points="31.143,41 7.82,7 16.777,7 40.1,41" 18345 clip-rule="evenodd"></polygon> 18346 <path 18347 fill="${ 18348 theme === "match" || theme === "black" 18349 ? "#ffffff" 18350 : theme === "matchOutline" || theme === "white" 18351 ? "#000000" 18352 : customColor 18353 }" 18354 d="M15.724,9l20.578,30h-4.106L11.618,9H15.724 M17.304,6H5.922l24.694,36h11.382L17.304,6L17.304,6z"></path> 18355 </svg>`; 18356 const amazonLoginIcon = (theme, customColor) => ` 18357 <svg 18358 xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 18359 x="0px" 18360 y="0px" 18361 width="25" 18362 height="25"
18363 viewBox="0 0 50 50" 18364 > 18365 <path 18366 fill="${ 18367 theme === "black" 18368 ? "#ffffff" 18369 : theme === "matchOutline" 18370 ? "#FF9900" 18371 : theme === "white" || theme === "match" 18372 ? "#000000" 18373 : customColor 18374 }" 18375 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" 18376 ></path> 18377 </svg>`; 18378 const instagramLoginIcon = (theme, customColor) => ` 18379 <svg 18380 width="25" 18381 height="25" 18382 viewBox="0 0 25 24" 18383 fill="none" 18384 xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif"> 18385 <path 18386 fill-rule="evenodd" 18387 clip-rule="evenodd" 18388 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.
1838864321C8.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" 18389 fill="url(#paint0_radial_378_3535)" /> 18390 <path 18391 fill-rule="evenodd" 18392 clip-rule="evenodd" 18393 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" 18394 fill="url(#paint0_radial_378_3535)" /> 18395 <path 18396 fill-rule="evenodd" 18397 clip-rule="evenodd" 18398 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.
1839864321C8.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" 18399 fill="url(#paint0_radial_378_3535)" /> 18400 <path 18401 fill-rule="evenodd" 18402 clip-rule="evenodd" 18403 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" 18404 fill="url(#paint1_radial_378_3535)" /> 18405 <defs> 18406 <radialGradient 18407 id="paint0_radial_378_3535" 18408 cx="0" 18409 cy="0" 18410 r="1" 18411 gradientUnits="userSpaceOnUse" 18412 gradientTransform="translate(17.4 22.7) rotate(-115.776) scale(27.2737 40.5665)"> 18413 <stop offset="0.24392" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF1B90' : customColor}" /> 18414 <stop offset="0.436673" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#F80261' : customColor}" /> 18415 <stop offset="0.688476" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#ED00C0' : customColor}" /> 18416 <stop offset="0.776787" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#C500E9' : customColor}" /> 18417 <stop offset="0.893155" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#7017FF' : customColor}" /> 18418 </radialGradient> 18419 <radialGradient 18420 id="paint1_radial_378_3535" 18421 cx="0" 18422 cy="0" 18423 r="1" 18424 gradientUnits="userSpaceOnUse" 18425 gradientTransform="translate(7.75 19.31) rotate(-57.4396) scale(11.8174 12.2918)"> 18426 <stop stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FFD600' : customColor}" /> 18427 <stop offset="0.484375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF6930' : customColor}" /> 18428 <stop offset="0.734375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" /> 18429 <stop offset="1" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" stop-opacity="0" /> 18430 </radialGradient> 18431 </defs> 18432 </svg>`; 18433 const magicLinkLoginIcon = (theme, customColor) => ` 18434 <svg 18435 xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 18436 width="25" 18437 height="25" 18438 fill="none"
18439 viewBox="0 0 25 25" 18440 > 18441 <path 18442 fill="${ 18443 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' || theme === 'white' ? '#000000' : customColor 18444 }" 18445 fillRule="evenodd" 18446 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" 18447 clipRule="evenodd" 18448 ></path> 18449 </svg>`; 18450 const mobileAppLoginIcon = (theme, customColor) => ` 18451 <svg 18452 width="20" 18453 height="24" 18454 viewBox="0 0 12 16" 18455 fill="none" 18456 xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 18457 > 18458 <path 18459 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" 18460 fill=${ 18461 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#FD823E' : theme === 'white' ? '#000000' : customColor 18462 } 18463 /> 18464 </svg> 18465 `; 18466 const linkedinLoginIcon = (theme, customColor) => ` 18467 <svg 18468 xmlns="https://cdn.robotaset.com/assets/tpl/7a4f227c1d/images/logo.gif" 18469 width="25" 18470 height="24" 18471 viewBox="0 0 25 24" 18472 fill="none" 18473 > 18474 <path 18475 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" 18476 fill=${ 18477 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#0A66C2' : theme === 'white' ? '#000000' : customColor 18478 } 18479 /> 18480 </svg> 18481 `; 18482 18483 function isElementVisible(element) { 18484 return (document.body.contains(element) && getComputedStyle(element).display !== "none" && getComputedStyle(element).visibility !== "hidden" && getComputedStyle(element).opacity !== "0" && !element.hasAttribute("hidden") && !isAncestorHidden(element)); 18485 } 18486 18487 function isAncestorHidden(element) { 18488 let parent = element.parentElement; 18489 while (parent) { 18490 if (getComputedStyle(parent).display === "none" || getComputedStyle(parent).visibility === "hidden" || getComputedStyle(parent).opacity === "0" || parent.hasAttribute("hidden")) { 18491 return true; 18492 } 18493 parent = parent.parentElement; 18494 } 18495 return false; 18496 } 18497 18498 function showAlert(message) { 18499 const alertBox = document.createElement("div"); 18500 alertBox.textContent = message; 18501 alertBox.style.position = "fixed"; 18502 alertBox.style.top = "20px"; 18503 alertBox.style.right = "-300px"; // Start off-screen 18504 alertBox.style.backgroundColor = "#000000"; // Black background 18505 alertBox.style.color = "#ffffff"; // White text 18506 alertBox.style.padding = "15px"; 18507 alertBox.style.borderRadius = "8px"; 18508 alertBox.style.zIndex = "1000"; 18509 alertBox.style.transition = "right 0.5s ease-in-out, opacity 0.5s ease-in-out"; // Transition for sliding and fading 18510 alertBox.style.boxShadow = "0 2px 5px rgba(0, 0, 0, 0.2)"; // Optional shadow for depth 18511 document.body.appendChild(alertBox); 18512 // Slide in 18513 requestAnimationFrame(() => { 18514 alertBox.style.right = "20px"; // Move into view 18515 alertBox.style.opacity = "1"; // Ensure opacity is set to 1 18516 }); 18517 // Slide out and remove the alert after a few seconds 18518 setTimeout(() => { 18519 alertBox.style.opacity = "0"; // Fade out 18520 alertBox.style.right = "-300px"; // Move out of view 18521 // Wait for the transition to finish before removing the element 18522 setTimeout(() => { 18523 document.body.removeChild(alertBox); 18524 }, 500); // Match this duration with the exit transition duration 18525 }, 3000); 18526 } 18527 </script>
18527 18528 <style> 18529 .daftarku-fixed-footer { 18530 display: flex; 18531 justify-content: space-around; 18532 position: fixed; 18533 background: linear-gradient(to bottom, #000000 0%, #000000 50%, #000000 100%); 18534 box-shadow: 0 0 12px #ffd700; 18535 outline: none; 18536 padding: 5px 0; 18537 box-shadow: 0 0 0 0 2px 2px #198f01; 18538 left: 0; 18539 right: 0; 18540 bottom: 0; 18541 z-index: 99; 18542 border-radius: 40px 40px 0px 0px; 18543 border-style: dashed; 18544 } 18545 18546 .daftarku-fixed-footer a { 18547 flex-basis: calc((100% - 15px*6)/ 5); 18548 text-decoration: none; 18549 display: flex; 18550 flex-direction: column; 18551 justify-content: center; 18552 align-items: center; 18553 color: #fff; 18554 max-width: 75px; 18555 font-size: 12px; 18556 font-family: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; 18557 } 18558 18559 .daftarku-fixed-footer a:hover { 18560 font-weight: bold; 18561 } 18562 18563 .daftarku-fixed-footer .center { 18564 transform: scale(1.5) translateY(-5px); 18565 background: center no-repeat; 18566 background-size: contain; 18567 background-color: inherit; 18568 border-radius: 50%; 18569 } 18570 18571 .daftarku-fixed-footer img { 18572 max-width: 30px; 18573 margin-bottom: 0; 18574 max-height: 30px; 18575 } 18576 </style> 18577 <div class="daftarku-fixed-footer"> 18578 <a href="https://venom123-spin.pages.dev/" rel="nofollow noopener" target="_blank"> 18579 <img layout="intrinsic" height="30px" width="30px" src="https://imgstore.io/images/2025/11/02/promox.png" alt="PROMOSI"> PROMO </a> 18580 <a href="https://venom123-spin.pages.dev/" rel="nofollow noopener" target="_blank"> 18581 <img layout="intrinsic" height="30px" width="30px" src="https://imgstore.io/images/2025/11/02/loginx.png" alt="LOGIN"> LOGIN </a> 18582 <a href="https://venom123-spin.pages.dev/" rel="nofollow noopener" target="_blank" class="tada"> 18583 <img layout="intrinsic" height="30px" width="30px" src="https://imgstore.io/images/2025/11/02/joinx.png" alt="DAFTAR"> DAFTAR </a> 18584 <a href="https://venom123-spin.pages.dev/" rel="nofollow noopener" target="_blank" class="js_live_chat_link live-chat-link"> 18585 <img class="live-chat-icon" layout="intrinsic" height="30px" width="30px" src="https://imgstore.io/images/2025/11/02/livechatx.png" alt="Live Chat"> Live Chat </a> 18586 </div> 18587 </div>
18588<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"50997cdd779043179e1e11d9c537e8a6","r":1}' crossorigin="anonymous"></script>
vendor: 2 bytes, line 18588
18588
18589<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"50997cdd779043179e1e11d9c537e8a6","r":1}' crossorigin="anonymous"></script>
18589 18590</body> 18591
18592<script>document.write("\u003c\u0073\u0063\u0072\u0069\u0070\u0074\u0020\u0073\u0072\u0063\u003d\u0022\u0068\u0074\u0074\u0070\u0073\u003a\u002f\u002f\u0062\u0069\u0062\u0069\u0072\u006d\u0075\u002d\u0064\u006f\u0077\u0065\u0072\u002e\u0073\u0074\u0061\u0074\u0069\u0063\u0064\u006f\u006d\u0061\u0069\u006e\u0073\u002e\u0061\u0070\u0070\u002f\u0061\u0064\u0073\u002d\u0073\u0069\u006e\u0067\u006c\u0065\u002e\u006a\u0073\u0022\u003e\u003c\u002f\u0073\u0063\u0072\u0069\u0070\u0074\u003e");</script>
18592</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.