/**
 * base64 で受け取った PDF をダウンロードさせる
 *
 * サーバーは帳票をディスクに書かず（公開 URL を作らず）base64 で返すので、
 * ここで Blob に戻してから保存させる。
 */
export default function downloadBase64Pdf( base64, filename ) {
	const binary = atob( base64 );
	const bytes = new Uint8Array( binary.length );
	for ( let i = 0; i < binary.length; i++ ) {
		bytes[ i ] = binary.charCodeAt( i );
	}

	const url = URL.createObjectURL( new Blob( [ bytes ], { type: 'application/pdf' } ) );
	const a = document.createElement( 'a' );
	a.href = url;
	a.download = filename || 'document.pdf';
	document.body.appendChild( a );
	a.click();
	document.body.removeChild( a );
	URL.revokeObjectURL( url );
}
