Free shipping on orders over $34
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
7 / 15
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift
0% OFF

New Goth Vintage Colorful Stones Flower Pendant Necklace for Women Trendy Punk Collier Hippie Aesthetic Jewelry Christmas Gift

$9.39
0 sold
Metal color
Qty 8920 in stock
Compatibility : All Compatible
Function : Mood Tracker
Shape\pattern : Round
Style : Classic
Material : Metal
Pendants Type : Circle
Metals Type : Zinc alloy
Gender : Women


Fine or Fashion : Fashion
Item Type : Pendants













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);