Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
the length of Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
Bohemian Moon Dream Macrame Woven Wall Decor
the length of Bohemian Moon Dream Macrame Woven Wall Decor

Olivenorma Bohemian Moon Dream Macrame Woven Wall Decor

This is unique piece of art combines the beauty of macrame weaving with the mystical symbol of the moon, making it perfect for adding a touch of bohemian elegance to any room or as a gift for the ones you love..
Price
$50.14
$31.59
Save  $18.55
style
Please select a style
Quantity

🌙BEAUTIFUL LEGEND OF DREAM CATCHERS: Whether it is reality or the dream catcher in your heart, it carries your yearning for a beautiful dream. It is a spiritual sustenance. The beautiful and colorful dream catcher has brought more and more good wishes to people.I hope you can send it Give a blessing to yourself or your dearest friend: Good people,good dreams.

🌙100% HANDMADE:This dream catcher is made of metal circle,wood beads,cotton cord and wood moon design ornament,these materials make up the beautiful half moon dream catcher.
🌙WALL ART DECOR:This moon macrame wall hanging is created to fit in any space and budget.Beautiful wall art creates a sense of harmony and comfort for your room.It is great for a bedroom,dorm room,living area,baby nursery,workspace or anywhere where you'd like to bring some texture and interest to your walls.

🌙PERFECT GIFT:With elegant and attactive design,meticulously handcrafted,as an eye-catching work of art,the gentle dream catchers is not only the best gift for girlfriend,wife's wedding anniversary,child's birthday,mother's birthday,or Mother's Day,Father's Day,Thanksgiving Day,Valentine's Day and Christmas,but also the high-quality interesting home gift for anniversaries.

SPECIFICATIONS

  • Category: Wall Decor
  • Origin: India
  • Size: 37.8"(96cm) Length

Why Choose Us:

Great quality guarantee
Safe payment and multiple payment methods
Responsible shipping and customer service
Orders will be processed within one business day

Customer Reviews

Here are what our customers say.

Write a Review
Customer Reviews
Wow you reached the bottom
Newest
Most liked
Highest ratings
Lowest ratings
×
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.