Free shipping on orders over $34
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
7 / 8
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets
0% OFF

Youthway Exquisite Fashion Stainless Steel PVD Plated 18K Gold Baroque Drop Earrings Necklace Set Waterproof Jewelry Sets

$23.36
0 sold
Metal color
Qty 77637 in stock
Pearl Type : Freshwater Pearls
Shape\pattern : Round
Occasion : Party
Material : PEARL
Gender : Women
Style : Classic
Jewelry Sets Type : Necklace/Earrings
Metals Type : Stainless Steel

Fine or Fashion : Fashion
Item Type : Jewelry Sets

Planets
Planets
Planets













Planets



const TAG = 'spz-custom-painter-button-animation'; const MAX_ITERATION_COUNT = 99999999; const SITE = (window.C_SETTINGS && window.C_SETTINGS.routes && window.C_SETTINGS.routes.root) || ''; const ADD_TO_CART_ANIMATION_SETTING = `${SITE}/api/marketing_atmosphere_app/add_to_cart_btn_animation/setting`; class SpzCustomPainterButtonAnimation extends SPZ.BaseElement { /**@override */ static deferredMount() { return false; } /** @param {!SpzElement} element */ constructor(element) { super(element); /** @private {!../../src/service/xhr-impl.Xhr} */ this.xhr_ = SPZServices.xhrFor(this.win); /** @private {Object} */ this.data_ = null; /** @private {Element} */ this.addToCartButton_ = null; /** @private {boolean} */ this.productAvailable_ = true; /** @private {number} */ this.timerId_ = null; /** @private {number} */ this.animationExecutionCount_ = 0; /** @private {boolean} */ this.selectedVariantAvailable_ = true; /** @private {number} */ this.delay_ = 5000; /** @private {number} */ this.iterationCount_ = 5; /** @private {string} */ this.animationClass_ = ''; } /** @override */ isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } /** @override */ buildCallback() { this.productAvailable_ = this.element.hasAttribute('product-available'); this.selectedVariantAvailable_ = this.element.hasAttribute('selected-variant-available'); } /** @override */ mountCallback() { this.render_(); } /** @private */ render_() { if (!this.productAvailable_) { return; } this.fetch_().then((data) => { if (!data) { return; } this.data_ = data; this.animationClass_ = `painter-${data.animation_name}-animation`; this.iterationCount_ = data.animation_iteration_count === 'infinite' ? MAX_ITERATION_COUNT : data.animation_iteration_count; const animationDuration = 1; const animationDelay = data.animation_delay || 5; this.delay_ = (animationDuration + animationDelay) * 1000; this.handleButtonEffect_(); }); } /** * @param {JsonObject} data * @return {(null|Object)} * @private */ parseJson_(data) { try { return JSON.parse(data); } catch (e) { return null; } } /** * @return {Promise} * @private */ fetch_() { return this.xhr_.fetchJson(ADD_TO_CART_ANIMATION_SETTING).then((data) => { if (!data || !data.enabled) { return null; } return this.parseJson_(data.detail); }); } /** @private */ getAddToCartButton_() { this.addToCartButton_ = SPZCore.Dom.scopedQuerySelector( document.body, '[data-section-type="product"] [role="addToCart"], [data-section-type="product_detail"] [role="addToCart"], [data-section-type="product_detail"] [data-click="addToCart"], [data-section-type="product"] [data-click="addToCart"]' ); } /** @private */ restartAnimation_() { this.addToCartButton_.classList.remove(this.animationClass_); this.addToCartButton_./* OK */ offsetWidth; this.addToCartButton_.classList.add(this.animationClass_); this.animationExecutionCount_++; } /** @private */ clearTimer_() { this.win.clearInterval(this.timerId_); this.timerId_ = null; } /** @private */ setupTimer_() { this.timerId_ = this.win.setInterval(() => { this.restartAnimation_(); if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); this.clearTimer_(); } }, this.delay_); } /** @private */ restartTimer_() { if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); return; } this.setupTimer_(); } /** @private */ listenVariantChange_() { SPZUtils.Event.listen(self.document, 'dj.variantChange', (e) => { const selectedVariant = e.detail && e.detail.selected; if (!selectedVariant) { return; } const {available} = selectedVariant; if (this.selectedVariantAvailable_ !== available) { this.selectedVariantAvailable_ = available; this.clearTimer_(); if (available) { this.restartTimer_(); } } }); } /** @private */ removeAnimationClass_() { this.win.setTimeout(() => { this.addToCartButton_.classList.remove(this.animationClass_); }, 1000); } /** @private */ handleButtonEffect_() { this.getAddToCartButton_(); if (!this.addToCartButton_) { return; } if (this.selectedVariantAvailable_) { ++this.animationExecutionCount_; this.addToCartButton_.classList.add(this.animationClass_); if (this.iterationCount_ === 1) { this.removeAnimationClass_(); return; } this.setupTimer_(); } this.listenVariantChange_(); } } SPZ.defineElement(TAG, SpzCustomPainterButtonAnimation);