| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 | /** * @licstart The following is the entire license notice for the * Javascript code in this page * * Copyright 2020 Mozilla Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * *     http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * @licend The above is the entire license notice for the * Javascript code in this page */"use strict";Object.defineProperty(exports, "__esModule", {  value: true});exports.DownloadManager = void 0;var _pdf = require("../pdf");var _viewer_compatibility = require("./viewer_compatibility.js");;function download(blobUrl, filename) {  const a = document.createElement("a");  if (!a.click) {    throw new Error('DownloadManager: "a.click()" is not supported.');  }  a.href = blobUrl;  a.target = "_parent";  if ("download" in a) {    a.download = filename;  }  (document.body || document.documentElement).appendChild(a);  a.click();  a.remove();}class DownloadManager {  downloadUrl(url, filename) {    if (!(0, _pdf.createValidAbsoluteUrl)(url, "http://example.com")) {      return;    }    download(url + "#pdfjs.action=download", filename);  }  downloadData(data, filename, contentType) {    if (navigator.msSaveBlob) {      navigator.msSaveBlob(new Blob([data], {        type: contentType      }), filename);      return;    }    const blobUrl = (0, _pdf.createObjectURL)(data, contentType, _viewer_compatibility.viewerCompatibilityParams.disableCreateObjectURL);    download(blobUrl, filename);  }  download(blob, url, filename, sourceEventType = "download") {    if (navigator.msSaveBlob) {      if (!navigator.msSaveBlob(blob, filename)) {        this.downloadUrl(url, filename);      }      return;    }    if (_viewer_compatibility.viewerCompatibilityParams.disableCreateObjectURL) {      this.downloadUrl(url, filename);      return;    }    const blobUrl = URL.createObjectURL(blob);    download(blobUrl, filename);  }}exports.DownloadManager = DownloadManager;
 |