const template_name = SHOPLAZZA?.meta?.page?.template_name || ''; const SEARCH_URL = '/search'; const TAG = 'spz-custom-smart-search-location'; const SMART_PRODUCR_SEARCH_WRAP_CLASSNAME = 'app-smart-product-search-container'; const THEME_NAME = window.SHOPLAZZA.theme.merchant_theme_name.replace(/ /g,''); const BREAKPOINT = 960; const DELAY = 300; function diffThemeName(themeNameA, themeNameB){ return themeNameA.toLocaleLowerCase().includes(themeNameB.toLocaleLowerCase()) } const HEADER_DOM_MAP = { eva: 'header .header_grid_layout', geek: `.header-mobile-inner-container`, onePage: 'header .header', wind: 'header #header-nav', nova: 'header .header', hero: 'header .header__nav', 'flash': '#shoplaza-section-header>div>div', 'lifestyle': '#shoplaza-section-header .header__wrapper' } let HEADER_DOM = 'header'; Object.keys(HEADER_DOM_MAP) .map(themeName=>{ if (diffThemeName(THEME_NAME, themeName)) { HEADER_DOM = HEADER_DOM_MAP[themeName]; } }) const SEARCH_ICON_CLASS_MAP = { 'flash': 'app-smart-icon-search-large-flash', 'hero': 'app-smart-icon-search-large-hero', 'geek': 'app-smart-icon-search-large-geek', 'nova': 'app-smart-icon-search-large-nova', }; let SEARCH_ICON_CLASS = 'app-smart-icon-search-large-default'; Object.keys(SEARCH_ICON_CLASS_MAP) .map(themeName=>{ if (diffThemeName(THEME_NAME, themeName)) { SEARCH_ICON_CLASS = SEARCH_ICON_CLASS_MAP[themeName]; } }) class SpzCustomSmartSearchLocation extends SPZ.BaseElement { constructor(element) { super(element); this.mobileHeaderPluginParentEle = null; this.outsideCarouselIndex = 0; this.insideCarouselIndex = 0; this.searchItemType = 'icon'; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.init(); this.listenerResize(); this.initRegisterActions(); } addIconClass(){ document.querySelectorAll('.app-smart-icon-search-large').forEach(e=>{ e.classList.add(SEARCH_ICON_CLASS) }); } moveIcon(){ if (!diffThemeName(THEME_NAME, 'lifestyle')) return; if (this.searchItemType === 'input') return; if (this.isDesktop()) return; const smart_search_dom = document.querySelector('#app-smart-product-search-container-917'); if (!smart_search_dom) return; const hasMovedIcon = !!document.querySelector('.header__wrapper .container .row.header>div>#app-smart-product-search-container-917'); if (hasMovedIcon) return; const headerDivList = document.querySelectorAll('.header__wrapper .container .row.header>div'); const iconBoxDom = headerDivList[headerDivList.length-1] iconBoxDom.appendChild(smart_search_dom, iconBoxDom.firstChild); } init() { this.addIconClass(); this.moveIcon(); if ( this.searchItemType === 'input' ) { document.querySelectorAll('.app-smart-icon-search-large').forEach(e=>e.style.display = 'none'); const mobileSmartSearchDom = document.querySelector(`.smart-search-mobile-container .app-smart-product-search-wrap`); if ( this.isDesktop() ) { document.querySelector(`#app-smart-product-search-container-917`).style="display: block"; if (mobileSmartSearchDom) { document.querySelector(`#app-smart-product-search-container-917`).appendChild(mobileSmartSearchDom); } }else{ if( template_name=='search' ) return; if (!document.querySelector(`.smart-search-mobile-container`)) { const appSmartSearchContainer = document.createElement('div'); appSmartSearchContainer.classList.add('smart-search-mobile-container'); appSmartSearchContainer.classList.add('smart-search-mobile-container-'+THEME_NAME.toLocaleLowerCase()); document.querySelector(HEADER_DOM).appendChild(appSmartSearchContainer); } if (!mobileSmartSearchDom) { document.querySelector(`.smart-search-mobile-container`).appendChild( document.querySelector(`.app-smart-product-search-wrap`) ) } } }else{ document.querySelectorAll('.app-smart-icon-search-large').forEach(e=>e.style.display = 'flex'); } // PC-end not load if (this.isDesktop()) { return; } if (!window.__isLoadAppSmartSearch__) { this.initSmartSearch(); console.log('__isLoadAppSmartSearch__'); } // B-end must reload if (window.self === window.top && !window.__isLoadAppSmartSearch__) { window.__isLoadAppSmartSearch__ = true; } } initSmartSearch() { if (this.hasMobileUpperRightPlugin()) { this.showMobileSmartSearch(); } else { this.addMobileSmartSearch(); } } initRegisterActions(){ this.registOnSearchInputChange(); this.registOnSearchFormSubmit(); this.registOnOutsideCarouselIndexChange(); this.registOnInsideCarouselIndexChange(); this.registGetSearchItemType(); this.registGenerateHotKeywordList(); this.registerAction('onTapHotWord',(invocation)=>{ this.onTapHotWord(invocation.args.type); }); } registOnSearchInputChange(){ this.registerAction('onSearchInputChange',(invocation)=>{ const keyword = invocation.args.keyword; if (keyword === null || !keyword.length) { document.querySelectorAll('.hot-words-carousel-inner-container').forEach(e=>{ e.style='display: block'; }); } else { document.querySelectorAll('.hot-words-carousel-inner-container').forEach(e=>{ e.style='display: none'; }); } }) } registOnSearchFormSubmit(){ this.registerAction('onSearchFormSubmit',(invocation)=>{ const event = invocation.args.event; const keywordArray = event.q || []; const keyword = keywordArray[0]; if (keyword!==null && keyword.length) { this.handleSearchSubmit_(keywordArray,1); } else { this.onTapHotWord('inside') } }) } handleSearchSubmit_(value, retryNum){ SPZ.whenApiDefined(document.getElementById('app-smart-search-917')) .then((ljsSearch) => { try{ ljsSearch.handleSearchSubmit_({ value: value }) }catch(e){ console.log('catch error',retryNum) if( 3 > retryNum ){ this.handleSearchSubmit_(value, retryNum + 1); return; } const searchStr = value[0] || ''; const searchResult = ljsSearch.setThinkSearchData_(searchStr); ljsSearch.afterSearching({ query: searchResult.query, url: `${SEARCH_URL}?q=${searchStr}`, queryType: searchResult.queryType, }) } }) } registOnOutsideCarouselIndexChange(){ this.registerAction('onOutsideCarouselIndexChange',(invocation)=>{ this.outsideCarouselIndex = invocation.args.index || 0; }) } registOnInsideCarouselIndexChange(){ this.registerAction('onInsideCarouselIndexChange',(invocation)=>{ this.insideCarouselIndex = invocation.args.index || 0; }) } registGetSearchItemType(searchItemType){ this.registerAction('getSearchItemType',(invocation)=>{ SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-917')) .then((appSmartSearchOutsideItem) => { const search_item_type = appSmartSearchOutsideItem.getData()?.search_item_type; this.searchItemType = search_item_type || this.searchItemType; this.init(); }) }) } registGenerateHotKeywordList(){ this.registerAction('generateHotKeywordList',(invocation)=>{ const search_keywords = invocation.args?.data?.data?.hotKeywordList || []; const isShowHotKeyword = invocation.args?.data?.data?.isShowHotKeyword || false; SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-917')) .then((appSmartSearchOutsideItem) => { const hotwords = appSmartSearchOutsideItem.getData()?.search_keywords || []; const new_search_keywords = search_keywords.map((item, index) => { item.url_obj = item.url_obj || {}; const hotwordItem = hotwords.find(e=>e.word === item.word); if (hotwordItem) { item.icon = hotwordItem.icon || ''; } if (!item.urlObj || !item.urlObj.url) { item.urlObj = { ...item.url_obj, url: item.url_obj.type === 'search' ? `${SEARCH_URL}?q=${item.word}` : item.url_obj.url, }; } return item; }); document.querySelectorAll('.app-hot-keyword-render-child') .forEach((ele) => { SPZ.whenApiDefined(ele) .then((hotWordsChildDom) => { hotWordsChildDom.render({ list: new_search_keywords, isShowHotKeyword: isShowHotKeyword, }); }) }); }) }); } onTapHotWord(type){ const index = type === 'inside' ? this.insideCarouselIndex : this.outsideCarouselIndex; SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-917')) .then((appSmartSearchOutsideItem) => { const hotwords = appSmartSearchOutsideItem.getData()?.search_keywords || []; const currentHotwordItem = hotwords[index] || null; if (currentHotwordItem && currentHotwordItem.url_obj) { currentHotwordItem.url_obj.url = currentHotwordItem.url_obj.type === 'search' ? `${SEARCH_URL}?q=${currentHotwordItem.word}` : currentHotwordItem.url_obj.url; } SPZ.whenApiDefined(document.getElementById('app-smart-search-917')) .then((ljsSearch) => { if (currentHotwordItem) { ljsSearch.handleHotKeyword_({ word: currentHotwordItem.word, query_type: currentHotwordItem.type, url: currentHotwordItem.url_obj?.url, }); } else { this.handleSearchSubmit_([''],1); } }) }) } getOutsideCarouselConfig(){ return SPZ.whenApiDefined(document.getElementById('app-smart-search-outside-item-917')) .then((appSmartSearchOutsideItem) => { return { ...appSmartSearchOutsideItem.getData(), outsideCarouselIndex: this.outsideCarouselIndex, } }) } listenerResize() { window.removeEventListener('resize', window.smartSearchResizeCallback); window.smartSearchResizeCallback = SPZCore.Types.debounce( this.win, () => { this.init(); }, DELAY ); window.addEventListener('resize', window.smartSearchResizeCallback); } isDesktop() { const mediaQueryList = window.matchMedia(`(min-width: ${BREAKPOINT}px)`); return mediaQueryList.matches; } hasMobileUpperRightPlugin() { return !['geek', 'flash', 'boost'].includes(THEME_NAME.toLocaleLowerCase()); } showMobileSmartSearch() { this.mobileHeaderPluginParentEle = this.getMobileHeaderPluginParentEle(); this.setMobileHeaderIconsPluginStyle(this.mobileHeaderPluginParentEle); } getMobileHeaderPluginParentEle() { const MOBILE_HEADER_PLUGIN_PARENT_ELE_MAP = { nova: '.header__mobile #header__plugin-container', hero: '.header__icons .tw-flex.tw-justify-end.tw-items-center.tw-space-x-7', onePage: '.header__mobile #header__plugin-container', wind: '#header-icons .flex.justify-end.items-center', eva: '#header__icons .plugin_content' }; const headerPluginParentSelector = this.combineMultipleSelectors( Object.values(MOBILE_HEADER_PLUGIN_PARENT_ELE_MAP) ); return document.querySelector(headerPluginParentSelector); } setMobileHeaderIconsPluginStyle(pluginParentEle) { if (!pluginParentEle) { return; } const containHidden = pluginParentEle.classList.contains('md:hidden'); const containTwHidden = pluginParentEle.classList.contains('md:tw-hidden'); if (containHidden || containTwHidden) { Array.from(pluginParentEle.children).forEach((pluginElement) => { if (!this.hasSmartSearchPlugin(pluginElement)) { pluginElement.style.display = 'none'; } }); pluginParentEle.classList.remove('md:hidden', 'md:tw-hidden'); } else { const smartSearchPluginElement = Array.from(pluginParentEle.children).find( (pluginElement) => { return this.hasSmartSearchPlugin(pluginElement); } ); smartSearchPluginElement.style.display = 'block'; } } hasSmartSearchPlugin(pluginElement) { return ( pluginElement.classList.contains(`${SMART_PRODUCR_SEARCH_WRAP_CLASSNAME}`) || pluginElement.querySelectorAll(`.${SMART_PRODUCR_SEARCH_WRAP_CLASSNAME}`).length > 0 ); } addMobileSmartSearch() { this.mobileHeaderIconsEle = this.getMobileHeaderIconsEle(); this.smartSearchWrapEle = this.getSmartSearchWrapEle(); this.appendSmartSearchToHeader(); } getMobileHeaderIconsEle() { // Must be the parent element of the plugin const MOBILE_HEADER_ICONS_ELE_MAP = { geek: '#header-mobile-container .flex.items-center.justify-end.flex-shrink-0', flash: '#header-layout .header__icons', boost: '.header__mobile-bottom .tw-flex.tw-items-center.tw-justify-end.tw-flex-1' }; const headerIconsSelector = this.combineMultipleSelectors( Object.values(MOBILE_HEADER_ICONS_ELE_MAP) ); return document.querySelector(headerIconsSelector); } getSmartSearchWrapEle() { const smartSearchWrapEle = document.querySelector(this.getSmartSearchWrapSelector()); if (!smartSearchWrapEle) { return null; } return smartSearchWrapEle; } appendSmartSearchToHeader() { if (!this.smartSearchWrapEle) { return; } this.mobileHeaderIconsEle.insertAdjacentElement('afterbegin', this.smartSearchWrapEle); } getSmartSearchWrapSelector() { const PLUGIN_POSITION = { DRAWER: 'drawer', HEADER_TOP: 'headerTop' }; // only one this plugin of ancestor element const MOBILE_PLUGIN_POSITION_ELE_MAP = { [PLUGIN_POSITION.DRAWER]: { geek: '#header-menu-mobile #menu-drawer', flash: '#menu-drawer .plugin__header-content', boost: '.header__drawer' }, [PLUGIN_POSITION.HEADER_TOP]: { geek: '#header-menu-mobile #menu-drawer', flash: '#menu-drawer .plugin__header-content', boost: '.header-content .logo-wrap' } }; const MbPluginPositionInTheme = [ ...Object.values(MOBILE_PLUGIN_POSITION_ELE_MAP[PLUGIN_POSITION.DRAWER]), ...Object.values(MOBILE_PLUGIN_POSITION_ELE_MAP[PLUGIN_POSITION.HEADER_TOP]) ]; return Object.values(MbPluginPositionInTheme).reduce((pre, ancestor) => { if (pre === '') { return `${ancestor} .app-smart-product-search-container`; } if (pre.includes(ancestor)) { return pre; } return `${pre},${ancestor} .app-smart-product-search-container`; }, ''); } combineMultipleSelectors(selectorList) { return selectorList.reduce((pre, selector) => { if (pre === '') { return `${selector}`; } if (pre.includes(selector)) { return pre; } return `${pre},${selector}`; }, ''); } } SPZ.defineElement(TAG, SpzCustomSmartSearchLocation);
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
1/10
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)
1/10

Christmas Tree Crystal Diamond Ornament Handmade Home Decoration (#1)

£13.73
£27.46
Save 50%
Quantity
Free Shipping Over £50【Uk (After Discount )】
£5.99 Shipping Fee【Uk】
Secure payments
Specification:
Origin: Mainland China
Style: Modern Style
Diamond Shape: Special-shaped
Pasting Area: Full
Product size: 230.00x180.00x10.00mm/ 9.06x7.09x0.39inch
Product: DIY diamond painting ornaments
Material: high-quality acrylic + round diamonds + special-shaped diamonds
Size: about 18x23cm
Color: As picture shown
Space: living room/bedroom/classroom
DIY diamond painting production steps:
1. Open the packing box and check whether the diamond painting tools are complete;
2. According to the resin diamond color code, choose a color on the plate, if you paste the same color at one time, you can increase the speed;
3. Find the corresponding color code on the decoration, and start pasting until it is completed;
4. After the completion, in order to make the diamond stable, you can take some books and put it on the diamond sticking part for a while;
5. After pasting the drill, paste 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 with a rope, and hang it on the Christmas tree

Precautions for DIY Diamond Painting:
1. Refer to previous steps
2. If you don't know what color to use, please refer to the color chart

Notice:
1. This is a diy dot drill art decoration, it is not finished, you need to finish it by yourself. All products are measured by hand, please allow 1-2cm deviation
2. Due to different lighting and screens, the color of the item may be slightly different from the picture. Please understand that
Washing will affect the viscosity of the , 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*Acrylic Plate
1*Acrylic base
1 set*Drill kit (Rhinestones need to be attached)( Drill pen*1Drill disc*1Drill clay*1)

Selling point content

Christmas Theme Crystal Diamond Ornament Handmade Diamond Mosaic Ornaments Paint by Number Art Craft Round Drill Home Decoration

Features:

1. DIY Diamond Painting Art:Unleash your creativity with this DIY diamond painting figurine. It allows you to create exquisite artwork using high-quality acrylic, round, and special-shaped diamonds. The vibrant colors and sparkling diamonds bring the Christmas atmosphere figurine to life, making it a captivating decoration or handmade gift.
2. Easy-to-Follow DIY Process:The DIY diamond painting steps are simple to follow:
Open the packaging and check if all the tools are included.Select a color of resin diamond based on the color-coded chart, which helps improve efficiency if sticking multiple diamonds of the same color at once.Match the corresponding color code on the figurine and start sticking the diamonds until complete.To ensure the diamonds are securely in place, press down gently with books for a while.
Attach double-sided adhesive to the bottom of the figurine, insert into the base, and hang the small pendant with a string on the Christmas tree.
3. Versatile Decoration:This diamond painting Christmas figurine is suitable for various spaces such as the living room, bedroom, or classroom. Its size of approximately 18x23cm (9.06x7.09 inches) makes it a perfect decorative piece that adds a festive touch to any environment.
4. Relaxing and Therapeutic Craft:Engaging in DIY diamond painting provides a therapeutic and relaxing experience. Similar to paint-by-numbers, this 5D diamond art requires picking up colored resin gems with a tool and placing them onto the corresponding numbered dots. It's a craft suitable for adults and children (above 6 years old), offering a sense of accomplishment and creating stunning crystal artworks.
5. Personalized Home Decor or Gift:Create beautiful diamond art to decorate your home or give it as a handmade gift. Each design comes with a numbered adhesive template, allowing you to easily pick and place the colored resin gems. The end result is a stunning crystal artwork that can be proudly displayed or gifted to loved ones.

Standard shipping fee is £4.99(UK)

Shipment takes 7 to 20 business days(UK)

Shipping and Delivery time

At uk.diamondpaintinggifts.com, we care about the speed of delivery. We understand that the delivery of goods to your hand nimbly is important.

About Shipping
Receiving time = Processing time +Shipping time 
Processing time: 1-2 business days.This typically takes 1 to 2 days; however, it may take longer time due to order surge.
Free Shipping:7-20 business days

NOTES:

1.Order Processing: The amount of time it takes for us to prepare your order for shipping. This typically takes 1 to 2 days; however, it may take longer time due to order surge.
2. Delivery time: The amount of time it takes to receive your order after your order has been shipped. Delivery times can vary depending on your location and shipping methods. Please check details below.
3. We offer free shipping world without checking number. Direct Line delivery and Express delivery if your order reach certain amount, check details below.
4. Direct Line delivery and Express delivery have specific tracking information and can be tracked through “My Order” section in your account or “Order Status” on the top of uk.diamondpaintinggifts.com website.

Track Your Order

It may take up to 5 business days after your order has shipped for your tracking information to become available online (it might take longer depending on how fast the postal services are processing shipments).

We accept the following payment method:

-PayPal

PayPal: the most convenient payment method in the world

We primarily uses PayPal to process secure payments. Through PayPal, we accept MasterCard, VISA, American Express, Discover, and bank transfer (debit card).You can connect your PayPal, credit card, debit card or bank account to PayPal for purchasing some of our products. After submitting an order, you will be redirected to PayPal to complete the transaction.
1.Log in to your PayPal account or use Credit Card Express;
2.Enter your card details and the order will be shipped to your PayPal address. Then click “Submit”;
3.Your payment will be processed and an invoice will be sent to your e-mail address;
NOTE: Your order will be shipped to your PayPal address. Please ensure that it is correct and complete.

About Diamond Painting:


What is Diamond Painting?
Similar to both cross-stitch and paint-by-numbers, diamond painting is a new creative hobby that has taken the world by storm, especially fans of DIY crafts. Crafters all around the world have fallen in love with this activity because it is easy to learn and incredibly rewarding. Even novices and people who struggle with other crafts find diamond painting relaxing and enjoyable. Mastering the basics is a breeze, and people of all ages and skill levels can create breathtaking artworks.

What’s Included in a Diamond Painting Kit?
Our Diamond Painting kits include a canvas and a set of painting tools (Pen, Tray, Wax , Rhinestones)【Without Frame】

How do I get started?
Really, any of our diamond painting kits are a great way to get started, because they come with everything you need!
What we recommend to start with is a smaller sized diamond painting, so you can make sure it's something you enjoy and that you don't bite off more than you can chew. Some diamond paintings take weeks!

How to Use Discount Code?
The discount can be applied on the payment page. Just copy and paste your code and select "Apply" to redeem.

What is the best size for diamond painting?

There are different sizes of diamond painting Kits. The bigger the size of a canvas, the better the effect you will get at the end. Smaller canvas can give a “Lego brick” effect, while bigger canvas give a more realistic piece of art.

Note:The size indicated in our title are canvas dimensions and not picture size.

About Delivery:

How much will delivery cost?(To UK)

Delivery fees costs vary based on the delivery window.
For Standard Shipping(7-25 days), Order Value below £50, shipping fee is £5.99;Order Value over £50, free shipping.
IMPORTANT:Shipping fee is calculated at the discounted price

For Fast Shipping (7-10days),Shipping fee on all orders is £46.99.(If you choose Fast Shipping, in order to deliver faster, please leave a message to note "Fast Shipping")

How can I qualify for free delivery?

Free delivery on purchases over £50 (after discount)*

How do I place a Standard Delivery order?

To place a standard shipping order, simply add the product to your cart, select your shipping address and fill in the information. Follow the checkout process to complete your order.

How do I place a Fast Delivery order?

To place a Fast Shipping order, simply add the product to your cart, select your shipping address and fill in the information. Follow the checkout process to complete your order.(in order to deliver faster, please leave a message to note "Fast Shipping")

Hot Sale Collection List