Product Description
/**
* Common event handler for click and keydown events.
* @param {Event} event - The event object.
* @param {Function} handleClickOrEnter - Function to handle click or Enter key events.
* @param {Function} handleEsc - Function to handle Esc key events.
*/
// [TODO][AplusMantle-8064] Create common event handler util(key events, click events) in AplusModuleResources
function handleClickAndKeyEvents(event, handleClickOrEnterOrSpace) {
const ENTER_KEY_CODE = 13;
const ESCAPE_KEY_CODE = 27;
const SPACE_KEY_CODE = 32;
const isClick = event.type === 'click';
const isKeydown = event.type === 'keydown';
const isEnter = isKeydown && event.keyCode === ENTER_KEY_CODE;
const isSpace = isKeydown && event.keyCode === SPACE_KEY_CODE;
const isEsc = isKeydown && event.keyCode === ESCAPE_KEY_CODE;
if (isClick || isEnter || isSpace) {
handleClickOrEnterOrSpace();
} else if (isEsc) {
handleEsc(event);
}
}
/**
* Function to handle esc key event.
* @param {Event} event - The event object.
*/
function handleEsc(event) {
event.target.blur()// force remove focus
}

{"clickstreamNexusMetricsConfig":{"actionType":"DISCOVERY","productId":"","eventOwner":"vsemetrics_playercards","schemaId":"clickstream.CustomerEvent.4","producerId":"vsemetrics_playercards","eventType":"IVEVideoView"},"clientPrefix":"aplus-705811","closedCaptionsConfig":{"captionsOnTexts":{"en":"English (Automated)"},"captionsOffText":"Captions off","languageToLabelTexts":{"English":"English"}},"sushiMetricsConfig":{"isRobot":false,"clientId":"VSE-US","videoAsinList":"","weblabIds":"","eventSource":"Player","sessionId":"000-5533355-8888303","refMarkers":"aplus-705811_ref","placementContext":"AplusWidget","marketplaceId":"ATVPDKIKX0DER","isInternal":false,"endpoint":"https://unagi-na.amazon.com/1/events/com.amazon.eel.vse.metrics.prod.events.test","requestId":"C406830D574142D4B226","customerId":"0","sessionType":1},"mimeType":"video/mp4","nexusMetricsConfig":{"isInternal":false,"widgetMetricsSchemaId":"vse.VSECardsEvents.8","clientId":"VSE-US","videoAsinList":"","weblabIds":"","eventSource":"Player","videoAsin":"hero-video","producerId":"vsemetrics_playercards","refMarkers":"aplus-705811_ref","placementContext":"AplusWidget","playerTSMMetricsSchemaId":"vse.VSECardsPlayerEvents.7"},"videoHeight":0,"videoWidth":0,"videoUrl":"https://m.media-amazon.com/images/S/aplus-media/sc/45471648-9050-416e-bce2-0c02bce01fde.mp4","metricsEmissionMethod":"nexus","imageUrl":"https://m.media-amazon.com/images/S/aplus-media/sc/ad9a97da-a1ff-4d93-9e45-00397bc94e52.__CR0,0,1464,600_PT0_SX1464_V1___.jpg","awaConfig":{"useUpNextComponent":false,"clickstreamNexusMetricsConfig":{"actionType":"DISCOVERY","productId":"","eventOwner":"vsemetrics_playercards","schemaId":"clickstream.CustomerEvent.4","producerId":"vsemetrics_playercards","eventType":"IVEVideoView"},"initialVideo":"hero-video","shouldPreload":true,"enableClickBasedAttribution":false,"isChromelessPlayer":false,"closedCaptionsConfig":{"captionsOnTexts":{"en":"English (Automated)"},"captionsOffText":"Captions off","languageToLabelTexts":{"English":"English"}},"showPlayerPlayButton":false,"isVideoImmersivePlayer":false,"metricsEmissionMethod":"nexus","skipInitialFocus":false,"playerSkin":"none","disabledViewIds":["replayHint"],"includeEarnsComissionDisclosure":false,"customerId":"0","containerId":"aplus-705811-player-103e703b-28a8-4e10-a184-ef32e6c43cac","allowCrossOrigin":false,"requestMetadata":{"marketplaceId":"ATVPDKIKX0DER","clientId":"VSE-US","method":"AplusWidget","requestId":"C406830D574142D4B226","pageAsin":"","sessionId":"000-5533355-8888303"},"shouldLoop":false,"shouldDisableControls":false,"alwaysSetInitialVideo":true,"showPlayerCloseButton":false,"clientPrefix":"","useAutoplayFallback":false,"sushiMetricsConfig":{"isRobot":false,"clientId":"VSE-US","videoAsinList":"","weblabIds":"","eventSource":"Player","sessionId":"000-5533355-8888303","refMarkers":"aplus-705811_ref","placementContext":"AplusWidget","marketplaceId":"ATVPDKIKX0DER","isInternal":false,"endpoint":"https://unagi-na.amazon.com/1/events/com.amazon.eel.vse.metrics.prod.events.test","requestId":"C406830D574142D4B226","customerId":"0","sessionType":1},"ospLinkCode":"","showPosterImage":true,"languageCode":"en","version":"","nexusMetricsConfig":{"isInternal":false,"widgetMetricsSchemaId":"vse.VSECardsEvents.8","clientId":"VSE-US","videoAsinList":"","weblabIds":"","eventSource":"Player","videoAsin":"hero-video","producerId":"vsemetrics_playercards","refMarkers":"aplus-705811_ref","placementContext":"AplusWidget","playerTSMMetricsSchemaId":"vse.VSECardsPlayerEvents.7"},"shouldStartMuted":false,"airyVersion":"VideoJS","languagePreferenceStrings":{},"enableInactiveFocus":true,"isReactFactory":false,"enableDelphiAttribution":false,"includeReportWidget":false,"shouldAutoplay":false},"needPlayerFactory":false,"isMobile":false}
Clean
Superfruits & Sea Kelp facial cleanser gently cleanses and supports combination and oily skin.
Prep
Our Luxury Face oils help skin look plump, smooth, and glowing.
Roll
Enhance your daily routine with our naturally soothing jade roller.
Hydrate
Hyaluronic acid works to smooth the skin and is a serious wrinkle fighter.
Follow through with your skincare regimen
1 CLEAN 2 PREP 3 ROLL 4 HYDRATE


Jade Roller
Skincare Tools Showdown
Contains Minerals
Jade
Key Ingredients
Rose Quartz
Cryotherapy
Stays Cold
Vegan/Cruelty Free
Contains Minerals
Jade
Key Ingredients
Jade
Cryotherapy
Stays Cold
Vegan/Cruelty Free
Contains Minerals
Jade
Key Ingredients
Gel
Cryotherapy