, but this code // executes before the first paint, when

ÃÛÌÒapp

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Esther (Eunbie) Lee | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Ms. Esther (Eunbie) Lee

Senior International Admissions Counselor (Serving: Asia, Oceania, and Americans Living Abroad)

Biography

Experience

I’m a Korean missionary kid, born in New Zealand but raised primarily in Kyrgyzstan, Uzbekistan, and Canada. Upon graduating from ÃÛÌÒapp with a bachelor’s degree in psychology, I joined the international admissions team at ÃÛÌÒapp. This role allows me to learn about the countries I serve and beyond. Over the past few years, I’ve had the opportunity to travel to Indonesia, Japan, Taiwan, Thailand, Vietnam, and Hong Kong for the first time. I love meeting new people, enjoying good food, and having engaging conversations—especially about desserts and cartoon animations.

Favorite Food

A Korean dish called Soon-doo-boo Jjigae (Soft Tofu Spicy Soup)

Most Memorable ÃÛÌÒapp Experience

I will never forget the enthusiasm from ÃÛÌÒapp staff and other incoming students during International Welcome, which was my first week as an international student. Exploring Grand Rapids, making friends with shared energy and unique stories, and collectively adjusting to our new environment created heartwarming memories and lasting friendships.