Beate Flower Embellished Mini Dress

$139.00
const TAG = "spz-custom-product-automatic"; class SpzCustomProductAutomatic extends SPZ.BaseElement { constructor(element) { super(element); this.variant_id = '75e6a5c6-392d-425f-a263-af575527df5f'; this.isRTL = SPZ.win.document.dir === 'rtl'; this.isAddingToCart_ = false; // 加购中状态 } static deferredMount() { return false; } buildCallback() { this.action_ = SPZServices.actionServiceForDoc(this.element); this.templates_ = SPZServices.templatesForDoc(this.element); this.xhr_ = SPZServices.xhrFor(this.win); this.setupAction_(); this.viewport_ = this.getViewport(); } mountCallback() { this.init(); // 监听事件 this.bindEvent_(); } async init() { this.handleFitTheme(); const data = await this.getDiscountList(); this.renderApiData_(data); } async getDiscountList() { const productId = 'dc04b00a-11f7-4c3d-91c7-e50ab6e20dc9'; const variantId = this.variant_id; const productType = 'default'; const reqBody = { product_id: productId, variant_id: variantId, discount_method: "DM_AUTOMATIC", customer: { customer_id: window.C_SETTINGS.customer.customer_id, email: window.C_SETTINGS.customer.customer_email }, product_type: productType } const url = `/api/storefront/promotion/display_setting/text/list`; const data = await this.xhr_.fetchJson(url, { method: "post", body: reqBody }).then(res => { return res; }).catch(err => { this.setContainerDisabled(false); }) return data; } async renderDiscountList() { this.setContainerDisabled(true); const data = await this.getDiscountList(); this.setContainerDisabled(false); // 重新渲染 抖动问题处理 this.renderApiData_(data); } clearDom() { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); } async renderApiData_(data) { const parentDiv = document.querySelector('.automatic_discount_container'); const newTplDom = await this.getRenderTemplate(data); if (parentDiv) { parentDiv.innerHTML = ''; parentDiv.appendChild(newTplDom); } else { console.log('automatic_discount_container is null'); } } doRender_(data) { const renderData = data || {}; return this.templates_ .findAndRenderTemplate(this.element, renderData) .then((el) => { this.clearDom(); this.element.appendChild(el); }); } async getRenderTemplate(data) { const renderData = data || {}; return this.templates_ .findAndRenderTemplate(this.element, { ...renderData, isRTL: this.isRTL }) .then((el) => { this.clearDom(); return el; }); } setContainerDisabled(isDisable) { const automaticDiscountEl = document.querySelector('.automatic_discount_container_outer'); if(isDisable) { automaticDiscountEl.setAttribute('disabled', ''); } else { automaticDiscountEl.removeAttribute('disabled'); } } // 绑定事件 bindEvent_() { window.addEventListener('click', (e) => { let containerNodes = document.querySelectorAll(".automatic-container .panel"); let bool; Array.from(containerNodes).forEach((node) => { if(node.contains(e.target)){ bool = true; } }) // 是否popover面板点击范围 if (bool) { return; } if(e.target.classList.contains('drowdown-icon') || e.target.parentNode.classList.contains('drowdown-icon')){ return; } const nodes = document.querySelectorAll('.automatic-container'); Array.from(nodes).forEach((node) => { node.classList.remove('open-dropdown'); }) // 兼容主题 this.toggleProductSticky(true); }) // 监听变体变化 document.addEventListener('dj.variantChange', async(event) => { // 重新渲染 const variant = event.detail.selected; if (variant.product_id == 'dc04b00a-11f7-4c3d-91c7-e50ab6e20dc9' && variant.id != this.variant_id) { this.variant_id = variant.id; this.renderDiscountList(); } }); } // 兼容主题 handleFitTheme() { // top 属性影响抖动 let productInfoEl = null; if (window.SHOPLAZZA.theme.merchant_theme_name === 'Wind' || window.SHOPLAZZA.theme.merchant_theme_name === 'Flash') { productInfoEl = document.querySelector('.product-info-body .product-sticky-container'); } else if (window.SHOPLAZZA.theme.merchant_theme_name === 'Hero') { productInfoEl = document.querySelector('.product__info-wrapper .properties-content'); } if(productInfoEl){ productInfoEl.classList.add('force-top-auto'); } } // 兼容 wind/flash /hero 主题 (sticky属性影响 popover 层级展示, 会被其他元素覆盖) toggleProductSticky(isSticky) { let productInfoEl = null; if (window.SHOPLAZZA.theme.merchant_theme_name === 'Wind' || window.SHOPLAZZA.theme.merchant_theme_name === 'Flash') { productInfoEl = document.querySelector('.product-info-body .product-sticky-container'); } else if (window.SHOPLAZZA.theme.merchant_theme_name === 'Hero') { productInfoEl = document.querySelector('.product__info-wrapper .properties-content'); } if(productInfoEl){ if(isSticky) { // 还原该主题原有的sticky属性值 productInfoEl.classList.remove('force-position-static'); return; } productInfoEl.classList.toggle('force-position-static'); } } setupAction_() { this.registerAction('handleDropdown', (invocation) => { const discount_id = invocation.args.discount_id; const nodes = document.querySelectorAll('.automatic-container'); Array.from(nodes).forEach((node) => { if(node.getAttribute('id') != `automatic-${discount_id}`) { node.classList.remove('open-dropdown'); } }) const $discount_item = document.querySelector(`#automatic-${discount_id}`); $discount_item && $discount_item.classList.toggle('open-dropdown'); // 兼容主题 this.toggleProductSticky(); }); // 加购事件 this.registerAction('handleAddToCart', (invocation) => { // 阻止事件冒泡 const event = invocation.event; if (event) { event.stopPropagation(); event.preventDefault(); } // 如果正在加购中,直接返回 if (this.isAddingToCart_) { return; } const quantity = invocation.args.quantity || 1; this.addToCart(quantity); }); } // 加购方法 async addToCart(quantity) { // 设置加购中状态 this.isAddingToCart_ = true; const productId = 'dc04b00a-11f7-4c3d-91c7-e50ab6e20dc9'; const variantId = this.variant_id; const url = '/api/cart'; const reqBody = { product_id: productId, variant_id: variantId, quantity: quantity }; try { const data = await this.xhr_.fetchJson(url, { method: 'POST', body: reqBody }); // 触发加购成功提示 this.triggerAddToCartToast_(); return data; } catch (error) { error.then(err=>{ this.showToast_(err?.message || err?.errors?.[0] || 'Unknown error'); }) } finally { // 无论成功失败,都重置加购状态 this.isAddingToCart_ = false; } } showToast_(message) { const toastEl = document.querySelector("#apps-match-drawer-add_to_cart_toast"); if (toastEl) { SPZ.whenApiDefined(toastEl).then((apis) => { apis.showToast(message); }); } } // 触发加购成功提示 triggerAddToCartToast_() { // 如果主题有自己的加购提示,则不显示 const themeAddToCartToastEl = document.querySelector('#add-cart-event-proxy'); if (themeAddToCartToastEl) return; // 显示应用的加购成功提示 this.showToast_("Added successfully"); } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, `${ TAG }.${ name }`, data || {}); this.action_.trigger(this.element, name, event); } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } } SPZ.defineElement(TAG, SpzCustomProductAutomatic);
class SpzCustomDiscountBundle extends SPZ.BaseElement { constructor(element) { super(element); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } mountCallback() {} unmountCallback() {} setupAction_() { this.registerAction('showAddToCartToast', () => { const themeAddToCartToastEl = document.querySelector('#add-cart-event-proxy') if(themeAddToCartToastEl) return const toastEl = document.querySelector('#apps-match-drawer-add_to_cart_toast') SPZ.whenApiDefined(toastEl).then((apis) => { apis.showToast("Added successfully"); }); }); } buildCallback() { this.setupAction_(); }; } SPZ.defineElement('spz-custom-discount-toast', SpzCustomDiscountBundle);
Size:  S
Quantity
Payment Methods

Worldwide Shipping
30 Days Return & Exchange
Secure Payments

Description

Experience elegance and sophistication with our BEATE FLOWER EMBELLISHED MINI DRESS. Featuring delicate floral embellishments, this dress is sure to make a statement at any event. Crafted with high-quality materials, its intricate design and flattering silhouette will elevate your style. Perfect for any special occasion.

Gentle Dry Clean Only

Colour may vary due to lighting on images. The product images (without model) are closest to the true colour of the product.

Item runs true to size chart and is cut to suit our size chart. Please refer to our size chart for the best fit. Do not size up or down.

Shipping Policy

The time frame for order delivery is divided into two parts:

Processing time: Order verification, quality check and packaging. All orders will be sent to the fulfillment center for dispatch within 1-3 business days after the order is placed.We ship most of our items within 48 hours. However, please note that the processing time can also be affected by the stock status of individual items, the time of the year, national holidays, etc. If your order includes very popular items that are experiencing stock availability issues, then the order can take 2-5 business days to process and dispatch. We apologize in advance for any inconvenience caused by these delays and thank you for your patience.

*If you need to cancel your order, please contact us within 10 hours, otherwise the order will not be cancelled

Shipping time: This refers to the time it takes for items to be shipped from our fulfillment center to the destination. International delivery usually takes about 9–15 business days. US orders are shipped by e-packet, which is a US Postal Service. After processing and leaving the warehouse, items usually take between 9 and 15 days to arrive at their destination but may take longer sometimes. If your order is shipping to Brazil or Russia or other continents, it will take about 25 days to arrive at their destination but may take longer from time to time. Express shipping may take 3-8 business days to arrive in the destination. The delivery date on all order is an estimate only, and is not considered a formal guarantee. 

If an order is selected for express delivery and is divided into two or more packages, the first package will be shipped via express delivery and the remaining packages will be shipped via standard delivery.

Return & Refund Policy

RETURN

Please contact us before returning a defective item in order to receive the return shipping address and other instructions.

For hygiene reasons and for your protection, we do not accept returns on the following items:

Bikini

Swimwear/Swimsuit

Underwear

Some ACC(eg:earrings / stockings / Body piercing ect. )

It does not allow to return if the label on the clothings is cutted off.

30 DAY PRODUCT GUARANTEE

If you are not satisfied with the item you received and want to return it, you can file a claim for compensation with the following procedure.

Within 30 days of receiving the product contact us with a photo or video explaining the issue and whether you want a refund or replacement.And you need to send back the items within 30 days after receiving the product.(We assume that the time when you receive the items is the time when the logistics track delivery).

We will review the claim and contact you if we need more information.

If Approved, we will refund or resend the item, you may also be asked to return the product.

After receiving the returned item and checking that it do not affect secondary sales, we will refund (the shipping costs except).

If a defective/incorrect item is received, our responsibility is to replace the item with a new/correct one.

If a package is returned for destruction due to incorrect address/unclaimed, please send email to  support@floweringgirl.com to verify the package status and get the appropriate solution.

Refunds (if applicable)

Once your return is received and inspected, we will send you an email to notify you that we have received your returned item. We will also notify you of the approval or rejection of your refund.

If you are approved, then your refund will be processed, and a credit will automatically be applied to your credit card or original method of payment, within a certain amount of days.

If the return is caused by the consumer, consumer should be responsible for the shipping fee. The specific fee should be based on the express company you choose. And we do not pay tax on returns.

No restocking fee to be charged to the consumers for the return of a product.

 

Email:  support@fashionslee.com