UNPKG

2.13 kBJavaScriptView Raw
1/**
2 * ag-grid - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
3 * @version v18.1.2
4 * @link http://www.ag-grid.com/
5 * @license MIT
6 */
7"use strict";
8var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
9 var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
10 if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11 else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
12 return c > 3 && r && Object.defineProperty(target, key, r), r;
13};
14Object.defineProperty(exports, "__esModule", { value: true });
15var context_1 = require("./context/context");
16var Downloader = (function () {
17 function Downloader() {
18 }
19 Downloader.prototype.download = function (fileName, content, mimeType) {
20 // for Excel, we need \ufeff at the start
21 // http://stackoverflow.com/questions/17879198/adding-utf-8-bom-to-string-blob
22 // Internet Explorer
23 if (window.navigator.msSaveOrOpenBlob) {
24 var blobObject = new Blob(["\ufeff", content], {
25 type: mimeType
26 });
27 window.navigator.msSaveOrOpenBlob(blobObject, fileName);
28 }
29 else {
30 // Chrome
31 var element = document.createElement("a");
32 var blob = new Blob(["\ufeff", content], { type: "octet/stream" });
33 var url = window.URL.createObjectURL(blob);
34 element.setAttribute("href", url);
35 element.setAttribute("download", fileName);
36 element.style.display = "none";
37 document.body.appendChild(element);
38 element.click();
39 window.URL.revokeObjectURL(url);
40 document.body.removeChild(element);
41 }
42 };
43 Downloader = __decorate([
44 context_1.Bean("downloader")
45 ], Downloader);
46 return Downloader;
47}());
48exports.Downloader = Downloader;