🔥Black Friday - Save Up To 20% Off🔥
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
1 / 19
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster
0% OFF

8pcs Sun and Moon DIY Diamond Painting Coasters Kits with Holder Wooden Coaster

1527038.04

$26.99
0 sold
Qty 1 in stock
Specification:
Origin: Mainland China
Product size: 97.00x97.00x10.00mm/3.82x3.82x0.39inch
Material: Wood
Product shape: Round

Note:
Due to different monitor settings and lighting conditions, the actual color of the item may vary slightly from the pictures. Thanks for your understanding!
Please allow a 1-2 cm difference in measurements due to manual measuring.



Package Content:
1 Set x Coasters
1 x Storage Shelf
1 Set x Drill Bag And Drill Tool
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1736477762476').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);