Seaside Colorblock Patchwork Dress 9281

Seaside Colorblock Patchwork Dress 9281

const TAG = "spz-custom-product-automatic"; class SpzCustomProductAutomatic extends SPZ.BaseElement { constructor(element) { super(element); this.variant_id = '40f03211-e977-4245-8cce-b9fa79e97ea9'; this.isRTL = SPZ.win.document.dir === 'rtl'; } 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 = '85cfea84-9d15-47e6-8985-5a1af324623f'; 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 == '85cfea84-9d15-47e6-8985-5a1af324623f' && 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(); }); } 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);

Price

$0.00 $38.99
Save $-38.99

size

Please select a size

Quantity

Free worldwide shipping
Sustainably made
Secure payments
SKU:708dps-250715001-S

Description

Exquisite material: 60% cotton, 30% linen,10% spandex

  • Please note that variations in color and texture are part of the story. This is an original design created by our designer for "Beach Vacation by the Sea" - a colorful casual dress with a unique and elegant design. We photographed in daylight to try to be as accurate as possible to the colors, but the design and colors may vary slightly due to the lighting in the photo.

    I chose these dresses because I like its unique style, simple tailoring, and the perfect combination of multiple colors. He enhances the texture of the clothes with color and unique exquisite taste, thinking about real women, unique, pure, strong, powerful, and fearless to show these qualities. Showing a casual, exquisite, unique and sunny femininity.

    size guide:

    Size
    US
    UK
    EUR
    BustShoulderWaist
    cminchcminchcminch
    S610369838.64015.76826.5
    M8123810340.64116.17228.1
    L10144010842.54216.57629.6
    XL12164211344.54316.98031.2
    2XL14184411846.54417.38432.8
    3XL16204612348.44517.78834.3
    4XL18224812850.44618.19235.9
    5XL20245013352.44718.59637.4

    sizing guides measurement

    Ladies Bust

    Measure at the fullest part of your bust, by placing the tape measure under your arms and across your shoulder blades. Remember to breathe out when taking this measurement.

    Waist

    Decide where you want your trousers to sit (on the hips, above the hips) and measure at this position. Ensure that the tape is horizontal to the ground.

    Hip

    Measure around the fullest part of your bottom, about 20cm below your natural waist, at the top of your legs.

Payment Methods

Payment
1.PayPal

If you have a PayPal account, you can pay directly by logging into your PayPal account. 

2. How to use credit card payment ?

Paying at PayPal without a PayPal account

just do as follows:


Exquisite material: 60% cotton, 30% linen,10% spandexPlease note that variations in color and texture are part of the story. This is an original design created by our designer for "Beach Vacation by the Sea" - a colorful casual dress with a unique and elegant design. We photographed in daylight to try to be as accurate as possible to the colors, but the design and colors may vary slightly due to the lighting in the photo.I chose these dresses because I like its unique style, simple tailoring, and the perfect combination of multiple colors. He enhances the texture of the clothes with color and unique exquisite taste, thinking about real women, unique, pure, strong, powerful, and fearless to show these qualities. Showing a casual, exquisite, unique and sunny femininity.size guide:SizeUSUKEURBustShoulderWaistcminchcminchcminchS610369838.64015.76826.5M8123810340.64116.17228.1L10144010842.54216.57629.6XL12164211344.54316.98031.22XL14184411846.54417.38432.83XL16204612348.44517.78834.34XL18224812850.44618.19235.95XL20245013352.44718.59637.4Ladies BustMeasure at the fullest part of your bust, by placing the tape measure under your arms and across your shoulder blades. Remember to breathe out when taking this measurement.WaistDecide where you want your trousers to sit (on the hips, above the hips) and measure at this position. Ensure that the tape is horizontal to the ground.HipMeasure around the fullest part of your bottom, about 20cm below your natural waist, at the top of your legs.