DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)
DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)

DIY Diamond Painting Special-Shaped Home Desk Decor Christmas Craft (BJP02)

SKU: 596583.02
Price
$0.00
$15.99
Save  0%
1 sold
Quantity
const TAG = "spz-custom-product-automatic"; class SpzCustomProductAutomatic extends SPZ.BaseElement { constructor(element) { super(element); this.variant_id = '9de4b52d-79cf-4c58-a426-9e176a25be12'; this.debounceRenderDiscountList = this.win.SPZCore.Types.debounce(this.win,this.renderDiscountList.bind(this), 500); } 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(); console.log('promotion_complex',{"downgrade":false,"automatic_discount_list":[]}); // 监听事件 this.bindEvent_(); } init() { this.handleFitTheme(); // 兜底方案, downgrade == true; 需要降级 则要请求接口 this.doRender_({}).then(async () => { const downgrade = 'false'; if(downgrade != 'false') { this.renderDiscountList(); } }); } async getDiscountList() { const productId = 'c9dc44c8-8508-4ef5-8545-47457684e7b5'; const variantId = this.variant_id; 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 } } 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); // 重新渲染 抖动问题处理 const parentDiv = document.querySelector('.automatic_discount_container'); const oldDom = parentDiv.querySelector('.automatic_discount_wrapper'); const newTplDom = await this.getRenderTemplate(data); if(oldDom){ parentDiv.replaceChild(newTplDom, oldDom); } else { parentDiv.appendChild(newTplDom); } } doRender_(data) { const renderData = data || {}; return this.templates_ .findAndRenderTemplate(this.element, renderData) .then((el) => { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); this.element.appendChild(el); }); } async getRenderTemplate(data) { const renderData = data || {}; return this.templates_ .findAndRenderTemplate(this.element, renderData) .then((el) => { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); return el; }); } setContainerDisabled(isDisable) { const automaticDiscountEl = document.querySelector('.automatic_discount_container'); 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 == 'c9dc44c8-8508-4ef5-8545-47457684e7b5') { this.variant_id = variant.id; } await this.debounceRenderDiscountList(); }); } // 兼容主题 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);
DIY Diamond Painting Crystal Special-Shaped Table Christmas Home Desktop Ornaments New Year Decor Xmas Gift
Description:
Our crystal art ornaments enable you to create exquisite works of art to decorate your house or give it as a handmade gift.
The concept is similar to digital painting, also known as 5D diamond painting.
Each design has a numbered sticky template. Use this tool to lift the colored resin gem and place it on the corresponding number point. This technology is a relaxing and therapeutic handicraft activity, suitable for adults and children (over 6 years old).
The result is an amazing work of Rhinestone art that you can decorate your home or give as a gift to your loved ones.

Specification:
Product: Desktop Decoration Christmas Tree
Weight: 280g
Material: PVC
Packing: color box
Drill on both sides: No
Color: as shown
Space: living room/bedroom/classroom
Model: BJP01-BJP05

DIY diamond painting steps:
1. Open the box, check the kits whether complete;
2. According to the color code, choose a color into the plate;If you paste the same color at the same time, you can increase the speed;
3. Find the symbols in picture, beginning paste until finish it;
4. When you finish it,put some books on top, let it more firmly;
5. After finishing the drill, stick the double-sided tape on the bottom of the Christmas tree decoration, tear off the double-sided tape, insert it into the base, string the small pendant on the rope, and hang it on the Christmas tree.

Preventive measures of DIY diamond painting:
1. Refer to the previous operation steps.
2. If you don\'t know what the color, please refer to the color chart.

Tips:
This is DIY diamond painting. It\'s not finished. You need to do it yourself.
Cleaning will affect the viscosity of the adhesive. Please do not wash with water.

Note:
Due to the different monitor and light effect, the actual color of the item might be slightly different from the color showed on the pictures. Thank you!
Please allow 1-2cm measuring deviation due to manual measurement.

Package Content:
1 Set X Diamond Painting PVC Board (Rhinestone needs to be pasted)
1 Set X Diamond Bag Tools