text: /*
   angular-file-upload v1.2.0
   https://github.com/nervgh/angular-file-upload
  */
  
  !function (e, t) { "object" == typeof exports && "object" == typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : "object" == typeof exports ? exports["angular-file-upload"] = t() : e["angular-file-upload"] = t() }(this, function () { return function (e) { function t(r) { if (n[r]) return n[r].exports; var i = n[r] = { exports: {}, id: r, loaded: !1 }; return e[r].call(i.exports, i, i.exports, t), i.loaded = !0, i.exports } var n = {}; return t.m = e, t.c = n, t.p = "", t(0) }([function (e, t, n) { "use strict"; var r = function (e) { return e && e.__esModule ? e["default"] : e }, i = r(n(2)), o = r(n(3)), s = r(n(4)), a = r(n(5)), u = r(n(6)), l = r(n(7)), c = r(n(1)), f = r(n(8)), p = r(n(9)), d = r(n(10)), h = r(n(11)), v = r(n(12)); angular.module(i.name, []).value("fileUploaderOptions", o).factory("FileUploader", s).factory("FileLikeObject", a).factory("FileItem", u).factory("FileDirective", l).factory("FileSelect", c).factory("FileDrop", f).factory("FileOver", p).directive("nvFileSelect", d).directive("nvFileDrop", h).directive("nvFileOver", v).run(["FileUploader", "FileLikeObject", "FileItem", "FileDirective", "FileSelect", "FileDrop", "FileOver", function (e, t, n, r, i, o, s) { e.FileLikeObject = t, e.FileItem = n, e.FileDirective = r, e.FileSelect = i, e.FileDrop = o, e.FileOver = s }]) }, function (e, t, n) { "use strict"; function r(e) { var t = function (e) { function t(e) { u(this, t), this.events = { $destroy: "destroy", change: "onChange" }, this.prop = "select", s(Object.getPrototypeOf(t.prototype), "constructor", this).call(this, e), this.uploader.isHTML5 || this.element.removeAttr("multiple"), this.element.prop("value", null) } return a(t, e), o(t, { getOptions: { value: function () { } }, getFilters: { value: function () { } }, isEmptyAfterSelection: { value: function () { return !!this.element.attr("multiple") } }, onChange: { value: function () { var e = this.uploader.isHTML5 ? this.element[0].files : this.element[0], t = this.getOptions(), n = this.getFilters(); this.uploader.isHTML5 || this.destroy(), this.uploader.addToQueue(e, t, n), this.isEmptyAfterSelection() && this.element.prop("value", null) } } }), t }(e); return t } var i = function (e) { return e && e.__esModule ? e["default"] : e }, o = function () { function e(e, t) { for (var n in t) { var r = t[n]; r.configurable = !0, r.value && (r.writable = !0) } Object.defineProperties(e, t) } return function (t, n, r) { return n && e(t.prototype, n), r && e(t, r), t } }(), s = function l(e, t, n) { var r = Object.getOwnPropertyDescriptor(e, t); if (void 0 === r) { var i = Object.getPrototypeOf(e); return null === i ? void 0 : l(i, t, n) } if ("value" in r && r.writable) return r.value; var o = r.get; return void 0 === o ? void 0 : o.call(n) }, a = function (e, t) { if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t); e.prototype = Object.create(t && t.prototype, { constructor: { value: e, enumerable: !1, writable: !0, configurable: !0 } }), t && (e.__proto__ = t) }, u = function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }; e.exports = r; i(n(2)); r.$inject = ["FileDirective"] }, function (e, t) { e.exports = { name: "angularFileUpload" } }, function (e, t) { "use strict"; e.exports = { url: "/", alias: "file", headers: {}, queue: [], progress: 0, autoUpload: !1, removeAfterUpload: !1, method: "POST", filters: [], formData: [], queueLimit: Number.MAX_VALUE, withCredentials: !1 } }, function (e, t, n) { "use strict"; function r(e, t, n, r, i, v) { var m = r.File, _ = r.FormData, g = function () { function r(t) { s(this, r); var n = a(e); u(this, n, t, { isUploading: !1, _nextIndex: 0, _failFilterIndex: -1, _directives: { select: [], drop: [], over: [] } }), this.filters.unshift({ name: "queueLimit", fn: this._queueLimitFilter }), this.filters.unshift({ name: "folder", fn: this._folderFilter }) } return o(r, { addToQueue: { value: function (e, t, n) { var r = this.isArrayLikeObject(e) ? e : [e], o = this._getFilters(n), s = this.queue.length, a = []; l(r, function (e) { var n = new i(e); if (this._isValidFile(n, o, t)) { var r = new v(this, e, t); a.push(r), this.queue.push(r), this._onAfterAddingFile(r) } else { var s = o[this._failFilterIndex]; this._onWhenAddingFileFailed(n, s, t) } }, this), this.queue.length !== s && (this._onAfterAddingAll(a), this.progress = this._getTotalProgress()), this._render(), this.autoUpload && this.uploadAll() } }, removeFromQueue: { value: function (e) { var t = this.getIndexOfItem(e), n = this.queue[t]; n.isUploading && n.cancel(), this.queue.splice(t, 1), n._destroy(), this.progress = this._getTotalProgress() } }, clearQueue: { value: function () { for (; this.queue.length;) this.queue[0].remove(); this.progress = 0 } }, uploadItem: { value: function (e) { var t = this.getIndexOfItem(e), n = this.queue[t], r = this.isHTML5 ? "_xhrTransport" : "_iframeTransport"; n._prepareToUploading(), this.isUploading || (this.isUploading = !0, this[r](n)) } }, cancelItem: { value: function (e) { var t = this.getIndexOfItem(e), n = this.queue[t], r = this.isHTML5 ? "_xhr" : "_form"; n && n.isUploading && n[r].abort() } }, uploadAll: { value: function () { var e = this.getNotUploadedItems().filter(function (e) { return !e.isUploading }); e.length && (l(e, function (e) { e._prepareToUploading() }), e[0].upload()) } }, cancelAll: { value: function () { var e = this.getNotUploadedItems(); l(e, function (e) { e.cancel() }) } }, isFile: { value: function (e) { return this.constructor.isFile(e) } }, isFileLikeObject: { value: function (e) { return this.constructor.isFileLikeObject(e) } }, isArrayLikeObject: { value: function (e) { return this.constructor.isArrayLikeObject(e) } }, getIndexOfItem: { value: function (e) { return f(e) ? e : this.queue.indexOf(e) } }, getNotUploadedItems: { value: function () { return this.queue.filter(function (e) { return !e.isUploaded }) } }, getReadyItems: { value: function () { return this.queue.filter(function (e) { return e.isReady && !e.isUploading }).sort(function (e, t) { return e.index - t.index }) } }, destroy: { value: function () { l(this._directives, function (e) { l(this._directives[e], function (e) { e.destroy() }, this) }, this) } }, onAfterAddingAll: { value: function (e) { } }, onAfterAddingFile: { value: function (e) { } }, onWhenAddingFileFailed: { value: function (e, t, n) { } }, onBeforeUploadItem: { value: function (e) { } }, onProgressItem: { value: function (e, t) { } }, onProgressAll: { value: function (e) { } }, onSuccessItem: { value: function (e, t, n, r) { } }, onErrorItem: { value: function (e, t, n, r) { } }, onCancelItem: { value: function (e, t, n, r) { } }, onCompleteItem: { value: function (e, t, n, r) { } }, onCompleteAll: { value: function () { } }, _getTotalProgress: { value: function (e) { if (this.removeAfterUpload) return e || 0; var t = this.getNotUploadedItems().length, n = t ? this.queue.length - t : this.queue.length, r = 100 / this.queue.length, i = (e || 0) * r / 100; return Math.round(n * r + i) } }, _getFilters: { value: function (e) { if (!e) return this.filters; if (d(e)) return e; var t = e.match(/[^\s,]+/g); return this.filters.filter(function (e) { return -1 !== t.indexOf(e.name) }, this) } }, _render: { value: function () { t.$$phase || t.$apply() } }, _folderFilter: { value: function (e) { return !(!e.size && !e.type) } }, _queueLimitFilter: { value: function () { return this.queue.length < this.queueLimit } }, _isValidFile: { value: function (e, t, n) { return this._failFilterIndex = -1, t.length ? t.every(function (t) { return this._failFilterIndex++, t.fn.call(this, e, n) }, this) : !0 } }, _isSuccessCode: { value: function (e) { return e >= 200 && 300 > e || 304 === e } }, _transformResponse: { value: function (e, t) { var r = this._headersGetter(t); return l(n.defaults.transformResponse, function (t) { e = t(e, r) }), e } }, _parseHeaders: { value: function (e) { var t, n, r, i = {}; return e ? (l(e.split("\n"), function (e) { r = e.indexOf(":"), t = e.slice(0, r).trim().toLowerCase(), n = e.slice(r + 1).trim(), t && (i[t] = i[t] ? i[t] + ", " + n : n) }), i) : i } }, _headersGetter: { value: function (e) { return function (t) { return t ? e[t.toLowerCase()] || null : e } } }, _xhrTransport: { value: function (e) { var t = e._xhr = new XMLHttpRequest, n = new _, r = this; if (r._onBeforeUploadItem(e), l(e.formData, function (e) { l(e, function (e, t) { n.append(t, e) }) }), "number" != typeof e._file.size) throw new TypeError("The file specified is no longer valid"); n.append(e.alias, e._file, e.file.name), t.upload.onprogress = function (t) { var n = Math.round(t.lengthComputable ? 100 * t.loaded / t.total : 0); r._onProgressItem(e, n) }, t.onload = function () { var n = r._parseHeaders(t.getAllResponseHeaders()), i = r._transformResponse(t.response, n), o = r._isSuccessCode(t.status) ? "Success" : "Error", s = "_on" + o + "Item"; r[s](e, i, t.status, n), r._onCompleteItem(e, i, t.status, n) }, t.onerror = function () { var n = r._parseHeaders(t.getAllResponseHeaders()), i = r._transformResponse(t.response, n); r._onErrorItem(e, i, t.status, n), r._onCompleteItem(e, i, t.status, n) }, t.onabort = function () { var n = r._parseHeaders(t.getAllResponseHeaders()), i = r._transformResponse(t.response, n); r._onCancelItem(e, i, t.status, n), r._onCompleteItem(e, i, t.status, n) }, t.open(e.method, e.url, !0), t.withCredentials = e.withCredentials, l(e.headers, function (e, n) { t.setRequestHeader(n, e) }), t.send(n), this._render() } }, _iframeTransport: { value: function (e) { var t = h('<form style="display: none;" />'), n = h('<iframe name="iframeTransport' + Date.now() + '">'), r = e._input, i = this; e._form && e._form.replaceWith(r), e._form = t, i._onBeforeUploadItem(e), r.prop("name", e.alias), l(e.formData, function (e) { l(e, function (e, n) { var r = r('<input type="hidden" name="' + n + '" />'); r.val(e), t.append(r) }) }), t.prop({ action: e.url, method: "POST", target: n.prop("name"), enctype: "multipart/form-data", encoding: "multipart/form-data" }), n.bind("load", function () { var t = "", r = 200; try { t = n[0].contentDocument.body.innerHTML } catch (o) { r = 500 } var s = { response: t, status: r, dummy: !0 }, a = {}, u = i._transformResponse(s.response, a); i._onSuccessItem(e, u, s.status, a), i._onCompleteItem(e, u, s.status, a) }), t.abort = function () { var o, s = { status: 0, dummy: !0 }, a = {}; n.unbind("load").prop("src", "javascript:false;"), t.replaceWith(r), i._onCancelItem(e, o, s.status, a), i._onCompleteItem(e, o, s.status, a) }, r.after(t), t.append(r).append(n), t[0].submit(), this._render() } }, _onWhenAddingFileFailed: { value: function (e, t, n) { this.onWhenAddingFileFailed(e, t, n) } }, _onAfterAddingFile: { value: function (e) { this.onAfterAddingFile(e) } }, _onAfterAddingAll: { value: function (e) { this.onAfterAddingAll(e) } }, _onBeforeUploadItem: { value: function (e) { e._onBeforeUpload(), this.onBeforeUploadItem(e) } }, _onProgressItem: { value: function (e, t) { var n = this._getTotalProgress(t); this.progress = n, e._onProgress(t), this.onProgressItem(e, t), this.onProgressAll(n), this._render() } }, _onSuccessItem: { value: function (e, t, n, r) { e._onSuccess(t, n, r), this.onSuccessItem(e, t, n, r) } }, _onErrorItem: { value: function (e, t, n, r) { e._onError(t, n, r), this.onErrorItem(e, t, n, r) } }, _onCancelItem: { value: function (e, t, n, r) { e._onCancel(t, n, r), this.onCancelItem(e, t, n, r) } }, _onCompleteItem: { value: function (e, t, n, r) { e._onComplete(t, n, r), this.onCompleteItem(e, t, n, r); var i = this.getReadyItems()[0]; return this.isUploading = !1, p(i) ? void i.upload() : (this.onCompleteAll(), this.progress = this._getTotalProgress(), void this._render()) } } }, { isFile: { value: function (e) { return m && e instanceof m } }, isFileLikeObject: { value: function (e) { return e instanceof this.constructor.FileLikeObject } }, isArrayLikeObject: { value: function (e) { return c(e) && "length" in e } }, inherit: { value: function (e, t) { e.prototype = Object.create(t.prototype), e.prototype.constructor = e, e.super_ = t } } }), r }(); return g.prototype.isHTML5 = !(!m || !_), g.isHTML5 = g.prototype.isHTML5, g } var i = function (e) { return e && e.__esModule ? e["default"] : e }, o = function () { function e(e, t) { for (var n in t) { var r = t[n]; r.configurable = !0, r.value && (r.writable = !0) } Object.defineProperties(e, t) } return function (t, n, r) { return n && e(t.prototype, n), r && e(t, r), t } }(), s = function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }; e.exports = r; var a = (i(n(2)), angular.copy), u = angular.extend, l = angular.forEach, c = angular.isObject, f = angular.isNumber, p = angular.isDefined, d = angular.isArray, h = angular.element; r.$inject = ["fileUploaderOptions", "$rootScope", "$http", "$window", "FileLikeObject", "FileItem"] }, function (e, t, n) { "use strict"; function r() { var e = function () { function e(t) { s(this, e); var n = u(t), r = n ? t.value : t, i = l(r) ? "FakePath" : "Object", o = "_createFrom" + i; this[o](r) } return o(e, { _createFromFakePath: { value: function (e) { this.lastModifiedDate = null, this.size = null, this.type = "like/" + e.slice(e.lastIndexOf(".") + 1).toLowerCase(), this.name = e.slice(e.lastIndexOf("/") + e.lastIndexOf("\\") + 2) } }, _createFromObject: { value: function (e) { this.lastModifiedDate = a(e.lastModifiedDate), this.size = e.size, this.type = e.type, this.name = e.name } } }), e }(); return e } var i = function (e) { return e && e.__esModule ? e["default"] : e }, o = function () { function e(e, t) { for (var n in t) { var r = t[n]; r.configurable = !0, r.value && (r.writable = !0) } Object.defineProperties(e, t) } return function (t, n, r) { return n && e(t.prototype, n), r && e(t, r), t } }(), s = function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }; e.exports = r; var a = (i(n(2)), angular.copy), u = angular.isElement, l = angular.isString; r.$inject = [] }, function (e, t, n) { "use strict"; function r(e, t) { var n = function () { function n(e, r, i) { s(this, n); var o = c(r), f = o ? l(r) : null, p = o ? null : r; u(this, { url: e.url, alias: e.alias, headers: a(e.headers), formData: a(e.formData), removeAfterUpload: e.removeAfterUpload, withCredentials: e.withCredentials, method: e.method }, i, { uploader: e, file: new t(r), isReady: !1, isUploading: !1, isUploaded: !1, isSuccess: !1, isCancel: !1, isError: !1, progress: 0, index: null, _file: p, _input: f }), f && this._replaceNode(f) } return o(n, { upload: { value: function () { try { this.uploader.uploadItem(this) } catch (e) { this.uploader._onCompleteItem(this, "", 0, []), this.uploader._onErrorItem(this, "", 0, []) } } }, cancel: { value: function () { this.uploader.cancelItem(this) } }, remove: { value: function () { this.uploader.removeFromQueue(this) } }, onBeforeUpload: { value: function () { } }, onProgress: { value: function (e) { } }, onSuccess: { value: function (e, t, n) { } }, onError: { value: function (e, t, n) { } }, onCancel: { value: function (e, t, n) { } }, onComplete: { value: function (e, t, n) { } }, _onBeforeUpload: { value: function () { this.isReady = !0, this.isUploading = !0, this.isUploaded = !1, this.isSuccess = !1, this.isCancel = !1, this.isError = !1, this.progress = 0, this.onBeforeUpload() } }, _onProgress: { value: function (e) { this.progress = e, this.onProgress(e) } }, _onSuccess: { value: function (e, t, n) { this.isReady = !1, this.isUploading = !1, this.isUploaded = !0, this.isSuccess = !0, this.isCancel = !1, this.isError = !1, this.progress = 100, this.index = null, this.onSuccess(e, t, n) } }, _onError: { value: function (e, t, n) { this.isReady = !1, this.isUploading = !1, this.isUploaded = !0, this.isSuccess = !1, this.isCancel = !1, this.isError = !0, this.progress = 0, this.index = null, this.onError(e, t, n) } }, _onCancel: { value: function (e, t, n) { this.isReady = !1, this.isUploading = !1, this.isUploaded = !1, this.isSuccess = !1, this.isCancel = !0, this.isError = !1, this.progress = 0, this.index = null, this.onCancel(e, t, n) } }, _onComplete: { value: function (e, t, n) { this.onComplete(e, t, n), this.removeAfterUpload && this.remove() } }, _destroy: { value: function () { this._input && this._input.remove(), this._form && this._form.remove(), delete this._form, delete this._input } }, _prepareToUploading: { value: function () { this.index = this.index || ++this.uploader._nextIndex, this.isReady = !0 } }, _replaceNode: { value: function (t) { var n = e(t.clone())(t.scope()); n.prop("value", null), t.css("display", "none"), t.after(n) } } }), n }(); return n } var i = function (e) { return e && e.__esModule ? e["default"] : e }, o = function () { function e(e, t) { for (var n in t) { var r = t[n]; r.configurable = !0, r.value && (r.writable = !0) } Object.defineProperties(e, t) } return function (t, n, r) { return n && e(t.prototype, n), r && e(t, r), t } }(), s = function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }; e.exports = r; var a = (i(n(2)), angular.copy), u = angular.extend, l = angular.element, c = angular.isElement; r.$inject = ["$compile", "FileLikeObject"] }, function (e, t, n) { "use strict"; function r() { var e = function () { function e(t) { s(this, e), a(this, t), this.uploader._directives[this.prop].push(this), this._saveLinks(), this.bind() } return o(e, { bind: { value: function () { for (var e in this.events) { var t = this.events[e]; this.element.bind(e, this[t]) } } }, unbind: { value: function () { for (var e in this.events) this.element.unbind(e, this.events[e]) } }, destroy: { value: function () { var e = this.uploader._directives[this.prop].indexOf(this); this.uploader._directives[this.prop].splice(e, 1), this.unbind() } }, _saveLinks: { value: function () { for (var e in this.events) { var t = this.events[e]; this[t] = this[t].bind(this) } } } }), e }(); return e.prototype.events = {}, e } var i = function (e) { return e && e.__esModule ? e["default"] : e }, o = function () { function e(e, t) { for (var n in t) { var r = t[n]; r.configurable = !0, r.value && (r.writable = !0) } Object.defineProperties(e, t) } return function (t, n, r) { return n && e(t.prototype, n), r && e(t, r), t } }(), s = function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }; e.exports = r; var a = (i(n(2)), angular.extend); r.$inject = [] }, function (e, t, n) { "use strict"; function r(e) { var t = function (e) { function t(e) { u(this, t), this.events = { $destroy: "destroy", drop: "onDrop", dragover: "onDragOver", dragleave: "onDragLeave" }, this.prop = "drop", s(Object.getPrototypeOf(t.prototype), "constructor", this).call(this, e) } return a(t, e), o(t, { getOptions: { value: function () { } }, getFilters: { value: function () { } }, onDrop: { value: function (e) { var t = this._getTransfer(e); if (t) { var n = this.getOptions(), r = this.getFilters(); this._preventAndStop(e), l(this.uploader._directives.over, this._removeOverClass, this), this.uploader.addToQueue(t.files, n, r) } } }, onDragOver: { value: function (e) { var t = this._getTransfer(e); this._haveFiles(t.types) && (t.dropEffect = "copy", this._preventAndStop(e), l(this.uploader._directives.over, this._addOverClass, this)) } }, onDragLeave: { value: function (e) { e.currentTarget !== this.element[0] && (this._preventAndStop(e), l(this.uploader._directives.over, this._removeOverClass, this)) } }, _getTransfer: { value: function (e) { return e.dataTransfer ? e.dataTransfer : e.originalEvent.dataTransfer } }, _preventAndStop: { value: function (e) { e.preventDefault(), e.stopPropagation() } }, _haveFiles: { value: function (e) { return e ? e.indexOf ? -1 !== e.indexOf("Files") : e.contains ? e.contains("Files") : !1 : !1 } }, _addOverClass: { value: function (e) { e.addOverClass() } }, _removeOverClass: { value: function (e) { e.removeOverClass() } } }), t }(e); return t } var i = function (e) { return e && e.__esModule ? e["default"] : e }, o = function () { function e(e, t) { for (var n in t) { var r = t[n]; r.configurable = !0, r.value && (r.writable = !0) } Object.defineProperties(e, t) } return function (t, n, r) { return n && e(t.prototype, n), r && e(t, r), t } }(), s = function c(e, t, n) { var r = Object.getOwnPropertyDescriptor(e, t); if (void 0 === r) { var i = Object.getPrototypeOf(e); return null === i ? void 0 : c(i, t, n) } if ("value" in r && r.writable) return r.value; var o = r.get; return void 0 === o ? void 0 : o.call(n) }, a = function (e, t) { if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t); e.prototype = Object.create(t && t.prototype, { constructor: { value: e, enumerable: !1, writable: !0, configurable: !0 } }), t && (e.__proto__ = t) }, u = function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }; e.exports = r; var l = (i(n(2)), angular.forEach); r.$inject = ["FileDirective"] }, function (e, t, n) { "use strict"; function r(e) { var t = function (e) { function t(e) { u(this, t), this.events = { $destroy: "destroy" }, this.prop = "over", this.overClass = "nv-file-over", s(Object.getPrototypeOf(t.prototype), "constructor", this).call(this, e) } return a(t, e), o(t, { addOverClass: { value: function () { this.element.addClass(this.getOverClass()) } }, removeOverClass: { value: function () { this.element.removeClass(this.getOverClass()) } }, getOverClass: { value: function () { return this.overClass } } }), t }(e); return t } var i = function (e) { return e && e.__esModule ? e["default"] : e }, o = function () { function e(e, t) { for (var n in t) { var r = t[n]; r.configurable = !0, r.value && (r.writable = !0) } Object.defineProperties(e, t) } return function (t, n, r) { return n && e(t.prototype, n), r && e(t, r), t } }(), s = function l(e, t, n) { var r = Object.getOwnPropertyDescriptor(e, t); if (void 0 === r) { var i = Object.getPrototypeOf(e); return null === i ? void 0 : l(i, t, n) } if ("value" in r && r.writable) return r.value; var o = r.get; return void 0 === o ? void 0 : o.call(n) }, a = function (e, t) { if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t); e.prototype = Object.create(t && t.prototype, { constructor: { value: e, enumerable: !1, writable: !0, configurable: !0 } }), t && (e.__proto__ = t) }, u = function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }; e.exports = r; i(n(2)); r.$inject = ["FileDirective"] }, function (e, t, n) { "use strict"; function r(e, t, n) { return { link: function (r, i, o) { var s = r.$eval(o.uploader); if (!(s instanceof t)) throw new TypeError('"Uploader" must be an instance of FileUploader'); var a = new n({ uploader: s, element: i }); a.getOptions = e(o.options).bind(a, r), a.getFilters = function () { return o.filters } } } } var i = function (e) { return e && e.__esModule ? e["default"] : e }; e.exports = r; i(n(2)); r.$inject = ["$parse", "FileUploader", "FileSelect"] }, function (e, t, n) { "use strict"; function r(e, t, n) { return { link: function (r, i, o) { var s = r.$eval(o.uploader); if (!(s instanceof t)) throw new TypeError('"Uploader" must be an instance of FileUploader'); if (s.isHTML5) { var a = new n({ uploader: s, element: i }); a.getOptions = e(o.options).bind(a, r), a.getFilters = function () { return o.filters } } } } } var i = function (e) { return e && e.__esModule ? e["default"] : e }; e.exports = r; i(n(2)); r.$inject = ["$parse", "FileUploader", "FileDrop"] }, function (e, t, n) { "use strict"; function r(e, t) { return { link: function (n, r, i) { var o = n.$eval(i.uploader); if (!(o instanceof e)) throw new TypeError('"Uploader" must be an instance of FileUploader'); var s = new t({ uploader: o, element: r }); s.getOverClass = function () { return i.overClass || this.overClass } } } } var i = function (e) { return e && e.__esModule ? e["default"] : e }; e.exports = r; i(n(2)); r.$inject = ["FileUploader", "FileOver"] }]) });
  //# sourceMappingURL=angular-file-upload.min.js.map