async function blur( target ) {
	await nextTickPromise();

	const element = getElement( target );
	if ( !element ) {
		throw new Error( `Element not found when calling \`blur('${target}')\`.` );
	}

	if ( !isFocusable( element ) ) {
		throw new Error( `${target} is not focusable` );
	}

	element.blur();
	const event = fireEvent( element, "blur" , { bubbles: false } );
	fireEvent( element, "focusout" );

	await settled();

	return event;
}
Custom blur event helper based on @ember/test-helpers
but always triggers custom `blur` and `focusout` events
and also returns the blur event
@param {HTMLElement|string} target
@returns {Promise<Event>}