Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
Sukestyle Vintage Vest Casual Jacket
9 / 10

Sukestyle Vintage Vest Casual Jacket

Size
Please select a size
Color - Brown
Please select a color
Price
$38.99
$38.99

Quantity

/** @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-1539149753700').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);
  • Color: army green, blue, brown, black
  • Size: S, M, L, XL, XXL, XXXL
  • Version: Slim fit
  • Thickness: Normal
SIZE(inch) CHEST LENGTH SHOULDER WIDTH
S 40.6  25.6  14.6 
M 42.1  26.0  15.0 
L 43.7  26.4  15.4 
XL 45.3  26.8  15.7 
2XL 46.9  27.2  16.1 
3XL 48.4  27.6  16.5 
SIZE(CM) CHEST LENGTH SHOULDER WIDTH
S 103 65 37
M 107 66 38
L 111 67 39
XL 115 68 40
2XL 119 69 41
3XL 123 70 42