a’,panel.elem());var size=$subCatLinks.size;if(size>0){var firstElementLeftPos=$subCatLinks.eq(0).offset().left;for(var i=1;i’+ catTitle+”);panel.elem().prepend($subPanelTitle);}} $hyperlink.addClass(‘nav-active’);});panel.onHide(operate(){$hyperlink.removeClass(‘nav-active’);hideParent();a11y.disable();sloppyTrigger.disable();});panel.onShow(operate(){a11y.elems($(‘a, space’,panel.elem()));});sloppyTrigger.register($hyperlink,panel);if(flyoutDebug){$hyperlink.click on(operate(){if(panel.isVisible()){panel.conceal();}else{panel.present();}});} var panelKeyHandler=onKey($hyperlink,operate(){if(this.isEnter()||this.isSpace()){panel.present();}},’keydown’,false);$hyperlink.focus(operate(){panelKeyHandler.bind();}).blur(operate(){panelKeyHandler.unbind();});panel.elem().appendTo($father or mother);};var hideParentAndResetTrigger=operate(){hideParent();sloppyTrigger.disable();};for(var i=0;i Skip to principal content material “},”url”:”/cart/ewc/compact?hostPageType=CustomerReviews&hostSubPageType=remoteSingleReviewPage&hostPageRID=RCJBM4T2QY8FNZ5B5V9E&prerender=0″,”cartCount”:0,”freshCartCount”:0,”almCartCount”:0,”primeWardrobeCartCount”:0,”isCompactViewEnabled”:true,”isCompactEWCRendered”:true,”isWiderCompactEWCRendered”:true,”EWCBrowserCacheKey”:”EWC_Cache_134-8580913-4499857__USD_en_US”,”isContentRepainted”:false,”clearCache”:false}; var hasAui = window.P && window.P.AUI_BUILD_DATE; var isRTLEnabled = (doc.dir === ‘rtl’); config.pinnable = config.pinnable && hasAui; config.isMigrationTreatment = true; config.flyout = (operate() { var navbelt = doc.getElementById(‘nav-belt’); var navCart = doc.getElementById(‘nav-cart’); var ewcFlyout = doc.getElementById(‘nav-flyout-ewc’); var persistentClassOnBody = ‘nav-ewc-persistent-hover nav-ewc-full-height-persistent-hover’; var flyout = {}; var getDocumentScrollTop = operate() ; var isWindow = operate(obj) { return obj != null && obj === obj.window; }; var getWindow = operate(elem) { return isWindow(elem) ? elem : elem.nodeType === 9 && elem.defaultView; }; var getOffset = operate(elem) { if (elem.getClientRects && !elem.getClientRects().size) { return {prime: 0}; } var rect = elem.getBoundingClientRect ? elem.getBoundingClientRect() : {prime: 0}; if (rect.width || rect.peak) { var doc = elem.ownerDocument; var win = getWindow(doc); return { prime: rect.prime + win.pageYOffset – doc.documentElement.clientTop }; } return rect; }; flyout.align = operate() { var newTop = getOffset(navbelt).prime – getDocumentScrollTop(); ewcFlyout.fashion.prime = (newTop > 0 ? newTop + ‘px’ : 0); }; flyout.conceal = operate() { isRTLEnabled ? (ewcFlyout.fashion.left = ”) : (ewcFlyout.fashion.proper = ”); }; if(typeof config.isCompactEWCRendered === ‘undefined’) { if ( (config.isSmallScreenEnabled && viewportWidth() = 1400) ) { config.isCompactEWCRendered = true; config.isEWCStateExpanded = true; config.url = config.url.change(“/gp/navcart/sidebar”, “/cart/ewc/compact”); } else { config.isCompactEWCRendered = false; } } var viewportQualifyForPersistent = operate () { return (config.isCompactEWCRendered) ? true : viewportWidth() >= 1400; } flyout.hasQualifiedViewportForPersistent = viewportQualifyForPersistent; var getEWCRightOffset = operate() { if (!config.isCompactEWCRendered) { return 0; } var $navbelt = doc.getElementById(‘nav-belt’); if ($navbelt === undefined || $navbelt === null) { return 0; } var EWCCompactViewWidth = (config.isWiderCompactEWCRendered && viewportWidth() >= 1280) ? 130 : 100; var scrollLeft = (window.pageXOffset !== undefined) ? window.pageXOffset : (doc.documentElement || doc.physique.parentNode || doc.physique).scrollLeft; var scrollXAxis = Math.abs(scrollLeft); var windowWidth = doc.documentElement.clientWidth; var navbeltWidth = $navbelt.offsetWidth; var isPartOfNavbarNotVisible = (navbeltWidth + EWCCompactViewWidth) > windowWidth; if (isPartOfNavbarNotVisible) { return 0 – (navbeltWidth – scrollXAxis – windowWidth + EWCCompactViewWidth); } else { return 0; } } flyout.getEWCRightOffsetCssProperty = operate () { return getEWCRightOffset() + ‘px’; } if (config.isCompactEWCRendered) { persistentClassOnBody = ‘nav-ewc-persistent-hover nav-ewc-compact-view’; if (config.isWiderCompactEWCRendered) { persistentClassOnBody += ‘ nav-ewc-wider-compact-view’; } } flyout.present = operate() { isRTLEnabled ? (ewcFlyout.fashion.left = flyout.getEWCRightOffsetCssProperty()) : (ewcFlyout.fashion.proper = flyout.getEWCRightOffsetCssProperty()); }; var isIOSDevice = operate() iPhone var checkForPersistent = operate() { if (!hasAui) { return { outcome: false, purpose: ‘noAui’ }; } if (!config.enablePersistent) { return { outcome: false, purpose: ‘config’ }; } if (!viewportQualifyForPersistent()) { return { outcome: false, purpose: ‘viewport’ }; } if (isIOSDevice()) { return { outcome: false, purpose: ‘iOS’ }; } if (!config.cartCount > 0) { return { outcome: false, purpose: ’emptycart’ }; } return { outcome: true }; }; flyout.ableToPersist = operate() { return checkForPersistent().outcome; }; var persistentClassRegExp = ‘(?:^|s)’ + persistentClassOnBody + ‘(?!S)’; flyout.applyPageLayoutForPersistent = operate() { if (!doc.documentElement.className.match( new RegExp(persistentClassRegExp) )) { doc.documentElement.className += ‘ ‘ + persistentClassOnBody; } }; flyout.unapplyPageLayoutForPersistent = operate() { doc.documentElement.className = doc.documentElement.className.change( new RegExp(persistentClassRegExp, ‘g’), ”); }; flyout.persist = operate() { flyout.applyPageLayoutForPersistent(); flyout.present(); if (config.isCompactEWCRendered) { flyout.align(); } }; flyout.unpersist = operate() { flyout.unapplyPageLayoutForPersistent(); flyout.conceal(); }; var persistentCheck = checkForPersistent(); var resizeCallback = operate() { if (flyout.ableToPersist()) { flyout.persist(); } else { flyout.unpersist(); } }; flyout.bindEvents = operate() { if (window.addEventListener) { window.addEventListener(‘resize’, resizeCallback, false); if (config.isCompactEWCRendered) { window.addEventListener(‘scroll’, flyout.align, false); } } }; flyout.unbindEvents = operate() { if (window.removeEventListener) { window.removeEventListener(‘resize’, resizeCallback, false); if (config.isCompactEWCRendered) { window.removeEventListener(‘scroll’, flyout.align, false); } } }; var ewcDefaultPersistence = operate() { if (persistentCheck.outcome) { flyout.persist(); if (window.ue && ue.tag) { ue.tag(‘ewc:persist’); } } else { if (window.ue && ue.tag) { ue.tag(‘ewc:unpersist’); if (persistentCheck.purpose === ‘noAui’) { ue.tag(‘ewc:unpersist:noAui’); } if (persistentCheck.purpose === ‘viewport’) { ue.tag(‘ewc:unpersist:viewport’); } if (persistentCheck.purpose === ’emptycart’) { ue.tag(‘ewc:unpersist:emptycart’); } if (persistentCheck.purpose === ‘iOS’) { ue.tag(‘ewc:unpersist:iOS’); } } } }; ewcDefaultPersistence(); if (window.ue && ue.tag) { if (flyout.hasQualifiedViewportForPersistent()) { ue.tag(‘ewc:bview’); } else { ue.tag(‘ewc:sview’); } } flyout.bindEvents(); flyout.cache = operate () { const cache = window.sessionStorage; const CACHE_KEY = “EWCBrowserCacheKey”; const CACHE_EXPIRY = “EWCBrowserCacheExpiry”; const CACHE_VALUE = “EWCBrowserCacheValue”; const isSessionStorageValid = operate () { return window && cache && cache instanceof Storage; }; const isCachePresent = operate (key) { return cache.size > 0 && cache.getItem(key); } const isValidType = operate (worth) { // Prevents accessing empty key-value and inner strategies(prototypes) of storage // TODO: Log metrics for invalid entry; return worth && worth.constructor == String; } return { getCache: operate (key) { const worth = isCachePresent(key); return (isValidType(worth)) ? worth : null; }, setCache: operate (key, worth) { const oldValue = isCachePresent(key); const cacheExpiryTime = isCachePresent(CACHE_EXPIRY); // Set the expiry when there is no current cache – to stop resetting expiry on web page navigation if (!cacheExpiryTime) { var currentTime = new Date(); cache.setItem(CACHE_EXPIRY, new Date(currentTime.getTime() + 5 * 60000)) } // TODO: Log size of outdated and new cache values when logMetrics is true cache.setItem(key, worth); }, updateCacheAndEwcContainer: operate (cacheKey, newEwcContent) { const $ = $Nav.getNow(“$”); const $currentEwc = $(“#ewc-content”); if (!$currentEwc.size) { var $content material = $(‘#nav-flyout-ewc .nav-ewc-content’); $content material.html(newEwcContent); this.setCache(CACHE_KEY, cacheKey); if (window.ue && window.ue.depend) } else { var $newEwcContent = $(”); var EWC_CONTENT_BODY_SCROLL_SELECTOR = “.ewc-scroller–selected”; if (newEwcContent) { // 1. Updates EWC container with new HTML const $newEwcHtml = $newEwcContent.html(newEwcContent).discover(“#ewc-content”); const offSet = $currentEwc.discover(EWC_CONTENT_BODY_SCROLL_SELECTOR).place().prime – $currentEwc.discover(“.ewc-active-cart–selected”).place().prime; $currentEwc.html($newEwcHtml.html()); $currentEwc.discover(EWC_CONTENT_BODY_SCROLL_SELECTOR).scrollTop(offSet); if (typeof window.uex === ‘operate’) { window.uex(‘ld’, ‘ewc-reflect-new-state’, {wb: 1}); } } else { // 2. Fetches cached response and updates it is html with new state on EWC Replace const cachedEwc = this.getCache(CACHE_VALUE); $newEwcContent = $newEwcContent[0]; $(cachedEwc).map(operate (elementIndex, component) { $newEwcContent.appendChild((component.id === “ewc-content”) ? $currentEwc.clone()[0] : component); }); newEwcContent = $newEwcContent.innerHTML; if (window.ue && window.ue.depend) 0; window.ue.depend(“ewc-update-cache”, present + 1); } $newEwcContent.take away(); } this.setCache(CACHE_VALUE, newEwcContent); }, removeCache: operate (key) { return cache.removeItem(key); } } } ; return flyout; }()); const CACHE_KEY = “EWCBrowserCacheKey”; const CACHE_VALUE = “EWCBrowserCacheValue”; const CACHE_EXPIRY = “EWCBrowserCacheExpiry”; var cache = config.flyout.cache(); const isCacheValid = operate () { // Examine for web page sorts and tenure of the cache const clearCache = config.clearCache; const cacheExpiryTime = cache.getCache(CACHE_EXPIRY); const isCacheExpired = new Date() > new Date(cacheExpiryTime); const cacheKey = config.EWCBrowserCacheKey; const oldCacheKey = cache.getCache(CACHE_KEY); const isCacheValid = !clearCache && !isCacheExpired && cacheKey == oldCacheKey; if (!isCacheValid && window.ue && window.ue.depend) return isCacheValid; } if (cache) { if (isCacheValid()) { var content material = cache.getCache(CACHE_VALUE); if (content material) { var $ewcContainer = doc.getElementById(“nav-flyout-ewc”).getElementsByClassName(“nav-ewc-content”)[0]; if ($ewcContainer) { $ewcContainer.innerHTML = content material; // Execute scripts from cache const ewcJavascript = doc.getElementById(“ewc-content”).parentNode.querySelectorAll(‘:scope > script’); ewcJavascript.forEach(operate (script) { var scriptTag = doc.createElement(“script”); scriptTag.innerHTML = script.innerHTML; doc.physique.appendChild(scriptTag); }); if (typeof window.uex === ‘operate’) { window.uex(‘ld’, ‘ewc-loaded-from-cache’, {wb: 1}); } } } } else { cache.removeCache(CACHE_VALUE); cache.removeCache(CACHE_KEY); cache.removeCache(CACHE_EXPIRY); } } return config; }())); if (typeof uet === ‘operate’) { uet(‘x2’, ‘ewc’, {wb: 1}); if( undefined){ (window.P && window.P.AUI_BUILD_DATE) && (window.AmazonUIPageJS ? AmazonUIPageJS : P) .when(‘atf’).execute(operate() { uet(‘bb’, ‘ewc’, {wb: 1}); }); } else { (window.AmazonUIPageJS ? AmazonUIPageJS : P).when(‘navCF’).execute(operate() { uet(‘bb’, ‘ewc’, {wb: 1}); }); } } if (window.ue && ue.tag) { ue.tag(‘ewc’); ue.tag(‘ewc:unrec’); ue.tag(‘ewc:cartsize:0’); if ( window.P && window.P.AUI_BUILD_DATE ) { ue.tag(‘ewc:aui’); } else { ue.tag(‘ewc:noAui’); } } }());