19 lines
568 B
TypeScript
19 lines
568 B
TypeScript
import type { DownloadAdapter } from '../../exports/download-adapter';
|
|
|
|
export function downloadBrowserBlob(blob: Blob, fileName: string): void {
|
|
const link = document.createElement('a');
|
|
link.href = URL.createObjectURL(blob);
|
|
link.download = fileName;
|
|
link.hidden = true;
|
|
document.body.appendChild(link);
|
|
link.click();
|
|
URL.revokeObjectURL(link.href);
|
|
link.remove();
|
|
}
|
|
|
|
export const browserDownloadAdapter: DownloadAdapter = {
|
|
download({ fileName, text, mediaType }) {
|
|
downloadBrowserBlob(new Blob([text], { type: mediaType }), fileName);
|
|
}
|
|
};
|