/** @module fontScale */ /** * Scale an element's font size to fit inside the given width. * @param {HTMLElement} element * @param {Int} width defaults to `window.innerWidth` * @returns {Promise} resulting font size in px */ export function fontScale(element,width=innerWidth){ return new Promise(function(resolve){ let fontSize=0 element.style.fontSize=fontSize+'px' width-=element.clientWidth function down(){ if(element.clientWidth>=width){ fontSize-=1 element.style.fontSize=fontSize+'px' requestAnimationFrame(down) }else{ resolve(fontSize) } } function up(){ if(element.clientWidth