自用
Этот скрипт недоступен для установки пользователем. Он является библиотекой, которая подключается к другим скриптам мета-ключом // @require https://update.greasyfork.org/scripts/498746/1399668/FileSaver.js
(function (a, b) { if ("function" == typeof define && define.amd) define([], b); else if ("undefined" != typeof exports) b(); else { b(), (a.FileSaver = { exports: {} }.exports); } })(this, function () { "use strict"; function b(a, b) { return ( "undefined" == typeof b ? (b = { autoBom: !1 }) : "object" != typeof b && (console.warn("Deprecated: Expected third argument to be a object"), (b = { autoBom: !b })), b.autoBom && /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test( a.type ) ? new Blob(["\uFEFF", a], { type: a.type }) : a ); } function c(a, b, c) { var d = new XMLHttpRequest(); d.open("GET", a), (d.responseType = "blob"), (d.onload = function () { g(d.response, b, c); }), (d.onerror = function () { console.error("could not download file"); }), d.send(); } function d(a) { var b = new XMLHttpRequest(); b.open("HEAD", a, !1); try { b.send(); } catch (a) {} return 200 <= b.status && 299 >= b.status; } function e(a) { try { a.dispatchEvent(new MouseEvent("click")); } catch (c) { var b = document.createEvent("MouseEvents"); b.initMouseEvent( "click", !0, !0, window, 0, 0, 0, 80, 20, !1, !1, !1, !1, 0, null ), a.dispatchEvent(b); } } var f = "object" == typeof window && window.window === window ? window : "object" == typeof self && self.self === self ? self : "object" == typeof global && global.global === global ? global : void 0, a = f.navigator && /Macintosh/.test(navigator.userAgent) && /AppleWebKit/.test(navigator.userAgent) && !/Safari/.test(navigator.userAgent), g = f.saveAs || ("object" != typeof window || window !== f ? function () {} : "download" in HTMLAnchorElement.prototype && !a ? function (b, g, h) { var i = f.URL || f.webkitURL, j = document.createElement("a"); (g = g || b.name || "download"), (j.download = g), (j.rel = "noopener"), "string" == typeof b ? ((j.href = b), j.origin === location.origin ? e(j) : d(j.href) ? c(b, g, h) : e(j, (j.target = "_blank"))) : ((j.href = i.createObjectURL(b)), setTimeout(function () { i.revokeObjectURL(j.href); }, 4e4), setTimeout(function () { e(j); }, 0)); } : "msSaveOrOpenBlob" in navigator ? function (f, g, h) { if (((g = g || f.name || "download"), "string" != typeof f)) navigator.msSaveOrOpenBlob(b(f, h), g); else if (d(f)) c(f, g, h); else { var i = document.createElement("a"); (i.href = f), (i.target = "_blank"), setTimeout(function () { e(i); }); } } : function (b, d, e, g) { if ( ((g = g || open("", "_blank")), g && (g.document.title = g.document.body.innerText = "downloading..."), "string" == typeof b) ) return c(b, d, e); var h = "application/octet-stream" === b.type, i = /constructor/i.test(f.HTMLElement) || f.safari, j = /CriOS\/[\d]+/.test(navigator.userAgent); if ((j || (h && i) || a) && "undefined" != typeof FileReader) { var k = new FileReader(); (k.onloadend = function () { var a = k.r###lt; (a = j ? a : a.replace(/^data:[^;]*;/, "data:attachment/file;")), g ? (g.location.href = a) : (location = a), (g = null); }), k.readAsDataURL(b); } else { var l = f.URL || f.webkitURL, m = l.createObjectURL(b); g ? (g.location = m) : (location.href = m), (g = null), setTimeout(function () { l.revokeObjectURL(m); }, 4e4); } }); (f.saveAs = g.saveAs = g), "undefined" != typeof module && (module.exports = g); }); //# sourceMappingURL=FileSaver.min.js.map