Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI
Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag VOCOSI VOCOSI

Women's Cowhide Handbag Niche Commuter Shoulder Underarm Bag

Fashion / Capacity / Durable / Smooth
COLOR — Milky Apricot
Please select a color
SIZE
Please select a size
Price
$69.00
$69.00
Save  0%
Quantity
Vendor by: VOCOSI
SKU: XL-F8250-Milky-Apricot
Please check our size chart before ordering
Shipping time: 10-18 working days (excluding production time)
Any question, you can contact service@vocosi.com
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.

*Color blue caramel black green yellow white

*Back method: single shoulder/portable/diagonal span

*Size: length 28CM/width 10CM/height 19CM

*Shoulder strap: 43-48cm, portable 21cm

*material leather/inner microfiber

*Capacity: glasses, mobile phones, cosmetics, etc.

*Structure Main pocket

*Inner zipper pocket*Inner patch pocket