, 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); })(); Support Van Lunen Center | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Support

A gift to the Van Lunen Center has broad outreach

We invite you to join this important work by making a financial gift to the Van Lunen Center. Your generosity will have broad and significant influence on Christian education and will help secure strong leadership for thousands of students in our Christian schools.


Why give to Van Lunen?

Through its three executive management programs, the Van Lunen Center serves more than 500 Christian school leaders, which impacts more than 500,000 Christian school students worldwide. Financial gifts, prayer, engagement, and program endorsement support the mission of the Van Lunen Center to provide a world-class program of executive management training for these Christian school leaders.

Ìý

How to give

Give online

Use our secure donation page to make a gift online for the Van Lunen Center.

Send a gift

Please make checks out to Van Lunen Center and send to:

The Van Lunen Center
ÃÛÌÒapp
3201 Burton Street SE
Grand Rapids, MI 49546

Questions?

Thank you for your support. Please contact us if you have questions!

616-526-8300 | info@vanlunencenter.org