Assessor_2.0/src/platform/browser/browser-download-adapter.ts

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);
}
};