File: D:/HostingSpaces/SBogers10/vebon.komma.pro/wwwroot/js/lib.js
!window.XMLHttpRequest||window.FileAPI&&FileAPI.shouldLoad||(window.XMLHttpRequest.prototype.setRequestHeader=function(e){return function(t,n){if("__setXHR_"===t){var r=n(this);r instanceof Function&&r(this)}else e.apply(this,arguments)}}(window.XMLHttpRequest.prototype.setRequestHeader));var ngFileUpload=angular.module("ngFileUpload",[]);ngFileUpload.version="12.0.4",ngFileUpload.service("UploadBase",["$http","$q","$timeout",function(e,t,n){function r(r){function i(e){u.notify&&u.notify(e),c.progressFunc&&n(function(){c.progressFunc(e)})}function l(e){return null!=r._start&&o?{loaded:e.loaded+r._start,total:r._file&&r._file.size||e.total,type:e.type,config:r,lengthComputable:!0,target:e.target}:e}function s(){e(r).then(function(e){o&&r._chunkSize&&!r._finished&&r._file?(i({loaded:r._end,total:r._file&&r._file.size,config:r,type:"progress"}),a.upload(r,!0)):(r._finished&&delete r._finished,u.resolve(e))},function(e){u.reject(e)},function(e){u.notify(e)})}r.method=r.method||"POST",r.headers=r.headers||{};var u=r._deferred=r._deferred||t.defer(),c=u.promise;return r.disableProgress||(r.headers.__setXHR_=function(){return function(e){e&&e.upload&&e.upload.addEventListener&&(r.__XHR=e,r.xhrFn&&r.xhrFn(e),e.upload.addEventListener("progress",function(e){e.config=r,i(l(e))},!1),e.upload.addEventListener("load",function(e){e.lengthComputable&&(e.config=r,i(l(e)))},!1))}}),o?r._chunkSize&&r._end&&!r._finished?(r._start=r._end,r._end+=r._chunkSize,s()):r.resumeSizeUrl?e.get(r.resumeSizeUrl).then(function(e){r.resumeSizeResponseReader?r._start=r.resumeSizeResponseReader(e.data):r._start=parseInt((null==e.data.size?e.data:e.data.size).toString()),r._chunkSize&&(r._end=r._start+r._chunkSize),s()},function(e){throw e}):r.resumeSize?r.resumeSize().then(function(e){r._start=e,s()},function(e){throw e}):(r._chunkSize&&(r._start=0,r._end=r._start+r._chunkSize),s()):s(),c.success=function(e){return c.then(function(t){e(t.data,t.status,t.headers,r)}),c},c.error=function(e){return c.then(null,function(t){e(t.data,t.status,t.headers,r)}),c},c.progress=function(e){return c.progressFunc=e,c.then(null,null,function(t){e(t)}),c},c.abort=c.pause=function(){return r.__XHR&&n(function(){r.__XHR.abort()}),c},c.xhr=function(e){return r.xhrFn=function(t){return function(){t&&t.apply(c,arguments),e.apply(c,arguments)}}(r.xhrFn),c},a.promisesCount++,c["finally"](function(){a.promisesCount--}),c}function i(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}var a=this;a.promisesCount=0,this.isResumeSupported=function(){return window.Blob&&window.Blob.prototype.slice};var o=this.isResumeSupported();this.isUploadInProgress=function(){return a.promisesCount>0},this.rename=function(e,t){return e.ngfName=t,e},this.jsonBlob=function(e){null==e||angular.isString(e)||(e=JSON.stringify(e));var t=new window.Blob([e],{type:"application/json"});return t._ngfBlob=!0,t},this.json=function(e){return angular.toJson(e)},this.isFile=function(e){return null!=e&&(e instanceof window.Blob||e.flashId&&e.name&&e.size)},this.upload=function(e,t){function n(t,n){if(t._ngfBlob)return t;if(e._file=e._file||t,null!=e._start&&o){e._end&&e._end>=t.size&&(e._finished=!0,e._end=t.size);var r=t.slice(e._start,e._end||t.size);return r.name=t.name,r.ngfName=t.ngfName,e._chunkSize&&(n.append("_chunkSize",e._chunkSize),n.append("_currentChunkSize",e._end-e._start),n.append("_chunkNumber",Math.floor(e._start/e._chunkSize)),n.append("_totalSize",e._file.size)),r}return t}function l(t,r,i){if(void 0!==r)if(angular.isDate(r)&&(r=r.toISOString()),angular.isString(r))t.append(i,r);else if(a.isFile(r)){var o=n(r,t),s=i.split(",");s[1]&&(o.ngfName=s[1].replace(/^\s+|\s+$/g,""),i=s[0]),e._fileKey=e._fileKey||i,t.append(i,o,o.ngfName||o.name)}else if(angular.isObject(r)){if(r.$$ngfCircularDetection)throw"ngFileUpload: Circular reference in config.data. Make sure specified data for Upload.upload() has no circular reference: "+i;r.$$ngfCircularDetection=!0;try{for(var u in r)if(r.hasOwnProperty(u)&&"$$ngfCircularDetection"!==u){var c=null==e.objectKey?"[i]":e.objectKey;r.length&&parseInt(u)>-1&&(c=null==e.arrayKey?c:e.arrayKey),l(t,r[u],i+c.replace(/[ik]/g,u))}}finally{delete r.$$ngfCircularDetection}}else t.append(i,r)}function s(){e._chunkSize=a.translateScalars(e.resumeChunkSize),e._chunkSize=e._chunkSize?parseInt(e._chunkSize.toString()):null,e.headers=e.headers||{},e.headers["Content-Type"]=void 0,e.transformRequest=e.transformRequest?angular.isArray(e.transformRequest)?e.transformRequest:[e.transformRequest]:[],e.transformRequest.push(function(t){var n,r=new window.FormData;t=t||e.fields||{},e.file&&(t.file=e.file);for(n in t)if(t.hasOwnProperty(n)){var i=t[n];e.formDataAppender?e.formDataAppender(r,n,i):l(r,i,n)}return r})}return t||(e=i(e)),e._isDigested||(e._isDigested=!0,s()),r(e)},this.http=function(t){return t=i(t),t.transformRequest=t.transformRequest||function(t){return window.ArrayBuffer&&t instanceof window.ArrayBuffer||t instanceof window.Blob?t:e.defaults.transformRequest[0].apply(this,arguments)},t._chunkSize=a.translateScalars(t.resumeChunkSize),t._chunkSize=t._chunkSize?parseInt(t._chunkSize.toString()):null,r(t)},this.translateScalars=function(e){if(angular.isString(e)){if(e.search(/kb/i)===e.length-2)return parseFloat(1024*e.substring(0,e.length-2));if(e.search(/mb/i)===e.length-2)return parseFloat(1048576*e.substring(0,e.length-2));if(e.search(/gb/i)===e.length-2)return parseFloat(1073741824*e.substring(0,e.length-2));if(e.search(/b/i)===e.length-1)return parseFloat(e.substring(0,e.length-1));if(e.search(/s/i)===e.length-1)return parseFloat(e.substring(0,e.length-1));if(e.search(/m/i)===e.length-1)return parseFloat(60*e.substring(0,e.length-1));if(e.search(/h/i)===e.length-1)return parseFloat(3600*e.substring(0,e.length-1))}return e},this.urlToBlob=function(n){var r=t.defer();return e({url:n,method:"get",responseType:"arraybuffer"}).then(function(e){var t=new Uint8Array(e.data),n=e.headers("content-type")||"image/WebP",i=new window.Blob([t],{type:n});r.resolve(i)},function(e){r.reject(e)}),r.promise},this.setDefaults=function(e){this.defaults=e||{}},this.defaults={},this.version=ngFileUpload.version}]),ngFileUpload.service("Upload",["$parse","$timeout","$compile","$q","UploadExif",function(e,t,n,r,i){function a(e,t,n){var i=[s.emptyPromise()];return angular.forEach(e,function(r,a){0===r.type.indexOf("image/jpeg")&&s.attrGetter("ngfFixOrientation",t,n,{$file:r})&&i.push(s.happyPromise(s.applyExifRotation(r),r).then(function(t){e.splice(a,1,t)}))}),r.all(i)}function o(e,t,n){var i=s.attrGetter("ngfResize",t,n);if(!i||!s.isResizeSupported()||!e.length)return s.emptyPromise();if(!(i instanceof Function))return l(i,e,t,n);var a=r.defer();i(e).then(function(r){l(r,e,t,n).then(function(e){a.resolve(e)},function(e){a.reject(e)})},function(e){a.reject(e)})}function l(e,t,n,i){function a(r,a){if(0===r.type.indexOf("image")){if(e.pattern&&!s.validatePattern(r,e.pattern))return;var l=s.resize(r,e.width,e.height,e.quality,e.type,e.ratio,e.centerCrop,function(e,t){return s.attrGetter("ngfResizeIf",n,i,{$width:e,$height:t,$file:r})},e.restoreExif!==!1);o.push(l),l.then(function(e){t.splice(a,1,e)},function(e){r.$error="resize",r.$errorParam=(e?(e.message?e.message:e)+": ":"")+(r&&r.name)})}}for(var o=[s.emptyPromise()],l=0;l<t.length;l++)a(t[l],l);return r.all(o)}var s=i;return s.getAttrWithDefaults=function(e,t){if(null!=e[t])return e[t];var n=s.defaults[t];return null==n?n:angular.isString(n)?n:JSON.stringify(n)},s.attrGetter=function(t,n,r,i){var a=this.getAttrWithDefaults(n,t);if(!r)return a;try{return i?e(a)(r,i):e(a)(r)}catch(o){if(t.search(/min|max|pattern/i))return a;throw o}},s.shouldUpdateOn=function(e,t,n){var r=s.attrGetter("ngModelOptions",t,n);return!r||!r.updateOn||r.updateOn.split(" ").indexOf(e)>-1},s.emptyPromise=function(){var e=r.defer(),n=arguments;return t(function(){e.resolve.apply(e,n)}),e.promise},s.rejectPromise=function(){var e=r.defer(),n=arguments;return t(function(){e.reject.apply(e,n)}),e.promise},s.happyPromise=function(e,n){var i=r.defer();return e.then(function(e){i.resolve(e)},function(e){t(function(){throw e}),i.resolve(n)}),i.promise},s.updateModel=function(n,r,i,l,u,c,f){function d(a,o,u,f,d){r.$$ngfPrevValidFiles=a,r.$$ngfPrevInvalidFiles=o;var g=a&&a.length?a[0]:null,p=o&&o.length?o[0]:null;n&&(s.applyModelValidation(n,a),n.$setViewValue(d?g:a)),l&&e(l)(i,{$files:a,$file:g,$newFiles:u,$duplicateFiles:f,$invalidFiles:o,$invalidFile:p,$event:c});var h=s.attrGetter("ngfModelInvalid",r);h&&t(function(){e(h).assign(i,d?p:o)}),t(function(){})}function g(){function e(e,t){return e.name===t.name&&(e.$ngfOrigSize||e.size)===(t.$ngfOrigSize||t.size)&&e.type===t.type}function t(t){var n;for(n=0;n<y.length;n++)if(e(t,y[n]))return!0;for(n=0;n<b.length;n++)if(e(t,b[n]))return!0;return!1}if(u){v=[],$=[];for(var n=0;n<u.length;n++)t(u[n])?$.push(u[n]):v.push(u[n])}}function p(e){return angular.isArray(e)?e:[e]}function h(){w=[],D=[],angular.forEach(v,function(e){e.$error?D.push(e):w.push(e)})}function m(){function e(){t(function(){d(C?y.concat(w):w,C?b.concat(D):D,u,$,S)},A&&A.debounce?A.debounce.change||A.debounce:0)}o(U?v:w,r,i).then(function(){U?s.validate(v,y.length,n,r,i).then(function(){h(),e()}):e()},function(e){throw"Could not resize files "+e})}var v,y,b,$=[],D=[],w=[];y=r.$$ngfPrevValidFiles||[],b=r.$$ngfPrevInvalidFiles||[],n&&n.$modelValue&&(y=p(n.$modelValue));var C=s.attrGetter("ngfKeep",r,i);v=(u||[]).slice(0),"distinct"!==C&&s.attrGetter("ngfKeepDistinct",r,i)!==!0||g(r,i);var S=!C&&!s.attrGetter("ngfMultiple",r,i)&&!s.attrGetter("multiple",r);if(!C||v.length){s.attrGetter("ngfBeforeModelChange",r,i,{$files:u,$file:u&&u.length?u[0]:null,$newFiles:v,$duplicateFiles:$,$event:c});var U=s.attrGetter("ngfValidateAfterResize",r,i),A=s.attrGetter("ngModelOptions",r,i);s.validate(v,y.length,n,r,i).then(function(){f?d(v,[],u,$,S):(A&&A.allowInvalid||U?w=v:h(),s.attrGetter("ngfFixOrientation",r,i)&&s.isExifSupported()?a(w,r,i).then(function(){m()}):m())})}},s}]),ngFileUpload.directive("ngfSelect",["$parse","$timeout","$compile","Upload",function(e,t,n,r){function i(e){var t=e.match(/Android[^\d]*(\d+)\.(\d+)/);if(t&&t.length>2){var n=r.defaults.androidFixMinorVersion||4;return parseInt(t[1])<4||parseInt(t[1])===n&&parseInt(t[2])<n}return e.indexOf("Chrome")===-1&&/.*Windows.*Safari.*/.test(e)}function a(e,t,n,r,a,l,s,u){function c(){return"input"===t[0].tagName.toLowerCase()&&n.type&&"file"===n.type.toLowerCase()}function f(){return b("ngfChange")||b("ngfSelect")}function d(t){if(u.shouldUpdateOn("change",n,e)){for(var i=t.__files_||t.target&&t.target.files,a=[],o=0;o<i.length;o++)a.push(i[o]);u.updateModel(r,n,e,f(),a.length?a:null,t)}}function g(e){if(t!==e)for(var n=0;n<t[0].attributes.length;n++){var r=t[0].attributes[n];"type"!==r.name&&"class"!==r.name&&"style"!==r.name&&(null!=r.value&&""!==r.value||("required"===r.name&&(r.value="required"),"multiple"===r.name&&(r.value="multiple")),e.attr(r.name,"id"===r.name?"ngf-"+r.value:r.value))}}function p(){if(c())return t;var e=angular.element('<input type="file">');g(e);var n=angular.element("<label>upload</label>");return n.css("visibility","hidden").css("position","absolute").css("overflow","hidden").css("width","0px").css("height","0px").css("border","none").css("margin","0px").css("padding","0px").attr("tabindex","-1"),o.push({el:t,ref:n}),document.body.appendChild(n.append(e)[0]),e}function h(n){if(t.attr("disabled"))return!1;if(!b("ngfSelectDisabled",e)){var r=m(n);if(null!=r)return r;v(n);try{c()||document.body.contains(w[0])||(o.push({el:t,ref:w.parent()}),document.body.appendChild(w.parent()[0]),w.bind("change",d))}catch(a){}return i(navigator.userAgent)?setTimeout(function(){w[0].click()},0):w[0].click(),!1}}function m(e){var t=e.changedTouches||e.originalEvent&&e.originalEvent.changedTouches;if("touchstart"===e.type)return D=t?t[0].clientY:0,!0;if(e.stopPropagation(),e.preventDefault(),"touchend"===e.type){var n=t?t[0].clientY:0;if(Math.abs(n-D)>20)return!1}}function v(t){u.shouldUpdateOn("click",n,e)&&w.val()&&(w.val(null),u.updateModel(r,n,e,f(),null,t,!0))}function y(e){if(w&&!w.attr("__ngf_ie10_Fix_")){if(!w[0].parentNode)return void(w=null);e.preventDefault(),e.stopPropagation(),w.unbind("click");var t=w.clone();return w.replaceWith(t),w=t,w.attr("__ngf_ie10_Fix_","true"),w.bind("change",d),w.bind("click",y),w[0].click(),!1}w.removeAttr("__ngf_ie10_Fix_")}var b=function(e,t){return u.attrGetter(e,n,t)};u.registerModelChangeValidator(r,n,e);var $=[];$.push(e.$watch(b("ngfMultiple"),function(){w.attr("multiple",b("ngfMultiple",e))})),$.push(e.$watch(b("ngfCapture"),function(){w.attr("capture",b("ngfCapture",e))})),$.push(e.$watch(b("ngfAccept"),function(){w.attr("accept",b("ngfAccept",e))})),n.$observe("accept",function(){w.attr("accept",b("accept"))}),$.push(function(){n.$$observers&&delete n.$$observers.accept});var D=0,w=t;c()||(w=p()),w.bind("change",d),c()?t.bind("click",v):t.bind("click touchstart touchend",h),navigator.appVersion.indexOf("MSIE 10")!==-1&&w.bind("click",y),r&&r.$formatters.push(function(e){return null!=e&&0!==e.length||w.val()&&w.val(null),e}),e.$on("$destroy",function(){c()||w.parent().remove(),angular.forEach($,function(e){e()})}),l(function(){for(var e=0;e<o.length;e++){var t=o[e];document.body.contains(t.el[0])||(o.splice(e,1),t.ref.remove())}}),window.FileAPI&&window.FileAPI.ngfFixIE&&window.FileAPI.ngfFixIE(t,w,d)}var o=[];return{restrict:"AEC",require:"?ngModel",link:function(i,o,l,s){a(i,o,l,s,e,t,n,r)}}}]),function(){function e(e){return"img"===e.tagName.toLowerCase()?"image":"audio"===e.tagName.toLowerCase()?"audio":"video"===e.tagName.toLowerCase()?"video":/./}function t(t,n,r,i,a,o,l,s){function u(e){var o=t.attrGetter("ngfNoObjectUrl",a,r);t.dataUrl(e,o)["finally"](function(){n(function(){var t=(o?e.$ngfDataUrl:e.$ngfBlobUrl)||e.$ngfDataUrl;s?i.css("background-image","url('"+(t||"")+"')"):i.attr("src",t),t?i.removeClass("ng-hide"):i.addClass("ng-hide")})})}n(function(){var n=r.$watch(a[o],function(n){var r=l;if("ngfThumbnail"===o&&(r||(r={width:i[0].clientWidth,height:i[0].clientHeight}),0===r.width&&window.getComputedStyle)){var a=getComputedStyle(i[0]);r={width:parseInt(a.width.slice(0,-2)),height:parseInt(a.height.slice(0,-2))}}return angular.isString(n)?(i.removeClass("ng-hide"),s?i.css("background-image","url('"+n+"')"):i.attr("src",n)):void(!n||!n.type||0!==n.type.search(e(i[0]))||s&&0!==n.type.indexOf("image")?i.addClass("ng-hide"):r&&t.isResizeSupported()?t.resize(n,r.width,r.height,r.quality).then(function(e){u(e)},function(e){throw e}):u(n))});r.$on("$destroy",function(){n()})})}ngFileUpload.service("UploadDataUrl",["UploadBase","$timeout","$q",function(e,t,n){var r=e;return r.base64DataUrl=function(e){if(angular.isArray(e)){var t=n.defer(),i=0;return angular.forEach(e,function(n){r.dataUrl(n,!0)["finally"](function(){if(i++,i===e.length){var n=[];angular.forEach(e,function(e){n.push(e.$ngfDataUrl)}),t.resolve(n,e)}})}),t.promise}return r.dataUrl(e,!0)},r.dataUrl=function(e,i){if(!e)return r.emptyPromise(e,e);if(i&&null!=e.$ngfDataUrl||!i&&null!=e.$ngfBlobUrl)return r.emptyPromise(i?e.$ngfDataUrl:e.$ngfBlobUrl,e);var a=i?e.$$ngfDataUrlPromise:e.$$ngfBlobUrlPromise;if(a)return a;var o=n.defer();return t(function(){if(window.FileReader&&e&&(!window.FileAPI||navigator.userAgent.indexOf("MSIE 8")===-1||e.size<2e4)&&(!window.FileAPI||navigator.userAgent.indexOf("MSIE 9")===-1||e.size<4e6)){var n=window.URL||window.webkitURL;if(n&&n.createObjectURL&&!i){var a;try{a=n.createObjectURL(e)}catch(l){return void t(function(){e.$ngfBlobUrl="",o.reject()})}t(function(){if(e.$ngfBlobUrl=a,a){o.resolve(a,e),r.blobUrls=r.blobUrls||[],r.blobUrlsTotalSize=r.blobUrlsTotalSize||0,r.blobUrls.push({url:a,size:e.size}),r.blobUrlsTotalSize+=e.size||0;for(var t=r.defaults.blobUrlsMaxMemory||268435456,i=r.defaults.blobUrlsMaxQueueSize||200;(r.blobUrlsTotalSize>t||r.blobUrls.length>i)&&r.blobUrls.length>1;){var l=r.blobUrls.splice(0,1)[0];n.revokeObjectURL(l.url),r.blobUrlsTotalSize-=l.size}}})}else{var s=new FileReader;s.onload=function(n){t(function(){e.$ngfDataUrl=n.target.result,o.resolve(n.target.result,e),t(function(){delete e.$ngfDataUrl},1e3)})},s.onerror=function(){t(function(){e.$ngfDataUrl="",o.reject()})},s.readAsDataURL(e)}}else t(function(){e[i?"$ngfDataUrl":"$ngfBlobUrl"]="",o.reject()})}),a=i?e.$$ngfDataUrlPromise=o.promise:e.$$ngfBlobUrlPromise=o.promise,a["finally"](function(){delete e[i?"$$ngfDataUrlPromise":"$$ngfBlobUrlPromise"]}),a},r}]),ngFileUpload.directive("ngfSrc",["Upload","$timeout",function(e,n){return{restrict:"AE",link:function(r,i,a){t(e,n,r,i,a,"ngfSrc",e.attrGetter("ngfResize",a,r),!1)}}}]),ngFileUpload.directive("ngfBackground",["Upload","$timeout",function(e,n){return{restrict:"AE",link:function(r,i,a){t(e,n,r,i,a,"ngfBackground",e.attrGetter("ngfResize",a,r),!0)}}}]),ngFileUpload.directive("ngfThumbnail",["Upload","$timeout",function(e,n){return{restrict:"AE",link:function(r,i,a){var o=e.attrGetter("ngfSize",a,r);t(e,n,r,i,a,"ngfThumbnail",o,e.attrGetter("ngfAsBackground",a,r))}}}]),ngFileUpload.config(["$compileProvider",function(e){e.imgSrcSanitizationWhitelist&&e.imgSrcSanitizationWhitelist(/^\s*(https?|ftp|mailto|tel|local|file|data|blob):/),e.aHrefSanitizationWhitelist&&e.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|tel|local|file|data|blob):/)}]),ngFileUpload.filter("ngfDataUrl",["UploadDataUrl","$sce",function(e,t){return function(n,r,i){if(angular.isString(n))return t.trustAsResourceUrl(n);var a=n&&((r?n.$ngfDataUrl:n.$ngfBlobUrl)||n.$ngfDataUrl);return n&&!a?(!n.$ngfDataUrlFilterInProgress&&angular.isObject(n)&&(n.$ngfDataUrlFilterInProgress=!0,e.dataUrl(n,r)),""):(n&&delete n.$ngfDataUrlFilterInProgress,(n&&a?i?t.trustAsResourceUrl(a):a:n)||"")}}])}(),ngFileUpload.service("UploadValidate",["UploadDataUrl","$q","$timeout",function(e,t,n){function r(e){var t="",n=[];if(e.length>2&&"/"===e[0]&&"/"===e[e.length-1])t=e.substring(1,e.length-1);else{var i=e.split(",");if(i.length>1)for(var a=0;a<i.length;a++){var o=r(i[a]);o.regexp?(t+="("+o.regexp+")",a<i.length-1&&(t+="|")):n=n.concat(o.excludes)}else 0===e.indexOf("!")?n.push("^((?!"+r(e.substring(1)).regexp+").)*$"):(0===e.indexOf(".")&&(e="*"+e),t="^"+e.replace(new RegExp("[.\\\\+*?\\[\\^\\]$(){}=!<>|:\\-]","g"),"\\$&")+"$",t=t.replace(/\\\*/g,".*").replace(/\\\?/g,"."))}return{regexp:t,excludes:n}}function i(e,t){null==t||e.$dirty||(e.$setDirty?e.$setDirty():e.$dirty=!0)}var a=e;return a.validatePattern=function(e,t){if(!t)return!0;var n=r(t),i=!0;if(n.regexp&&n.regexp.length){var a=new RegExp(n.regexp,"i");i=null!=e.type&&a.test(e.type)||null!=e.name&&a.test(e.name)}for(var o=n.excludes.length;o--;){var l=new RegExp(n.excludes[o],"i");i=i&&(null==e.type||l.test(e.type))&&(null==e.name||l.test(e.name))}return i},a.ratioToFloat=function(e){var t=e.toString(),n=t.search(/[x:]/i);return t=n>-1?parseFloat(t.substring(0,n))/parseFloat(t.substring(n+1)):parseFloat(t)},a.registerModelChangeValidator=function(e,t,n){e&&e.$formatters.push(function(r){e.$dirty&&(r&&!angular.isArray(r)&&(r=[r]),a.validate(r,0,e,t,n).then(function(){a.applyModelValidation(e,r)}))})},a.applyModelValidation=function(e,t){i(e,t),angular.forEach(e.$ngfValidations,function(t){e.$setValidity(t.name,t.valid)})},a.getValidationAttr=function(e,t,n,r,i){var o="ngf"+n[0].toUpperCase()+n.substr(1),l=a.attrGetter(o,e,t,{$file:i});if(null==l&&(l=a.attrGetter("ngfValidate",e,t,{$file:i}))){var s=(r||n).split(".");l=l[s[0]],s.length>1&&(l=l&&l[s[1]])}return l},a.validate=function(e,n,r,i,o){function l(t,n,l){if(e){for(var s=e.length,u=null;s--;){var c=e[s];if(c){var f=a.getValidationAttr(i,o,t,n,c);null!=f&&(l(c,f,s)||(c.$error=t,(c.$errorMessages=c.$errorMessages||{})[t]=!0,c.$errorParam=f,e.splice(s,1),u=!1))}}null!==u&&r.$ngfValidations.push({name:t,valid:u})}}function s(n,l,s,c,f){function d(e,t,r){null!=r?c(t,r).then(function(i){f(i,r)?e.resolve():(t.$error=n,(t.$errorMessages=t.$errorMessages||{})[n]=!0,t.$errorParam=r,e.reject())},function(){u("ngfValidateForce",{$file:t})?(t.$error=n,(t.$errorMessages=t.$errorMessages||{})[n]=!0,t.$errorParam=r,e.reject()):e.resolve()}):e.resolve()}var g=[a.emptyPromise()];if(e)return e=void 0===e.length?[e]:e,angular.forEach(e,function(e){var r=t.defer();return g.push(r.promise),!s||null!=e.type&&0===e.type.search(s)?void("dimensions"===n&&null!=a.attrGetter("ngfDimensions",i)?a.imageDimensions(e).then(function(t){d(r,e,u("ngfDimensions",{$file:e,$width:t.width,$height:t.height}))},function(){r.reject()}):"duration"===n&&null!=a.attrGetter("ngfDuration",i)?a.mediaDuration(e).then(function(t){d(r,e,u("ngfDuration",{$file:e,$duration:t}))},function(){r.reject()}):d(r,e,a.getValidationAttr(i,o,n,l,e))):void r.resolve()}),t.all(g).then(function(){r.$ngfValidations.push({name:n,valid:!0})},function(){r.$ngfValidations.push({name:n,valid:!1})})}r=r||{},r.$ngfValidations=r.$ngfValidations||[],angular.forEach(r.$ngfValidations,function(e){e.valid=!0});var u=function(e,t){return a.attrGetter(e,i,o,t)};if(null==e||0===e.length)return a.emptyPromise(r);e=void 0===e.length?[e]:e.slice(0),l("maxFiles",null,function(e,t,r){return n+r<t}),l("pattern",null,a.validatePattern),l("minSize","size.min",function(e,t){return e.size+.1>=a.translateScalars(t)}),l("maxSize","size.max",function(e,t){return e.size-.1<=a.translateScalars(t)});var c=0;if(l("maxTotalSize",null,function(t,n){return c+=t.size,!(c>a.translateScalars(n))||(e.splice(0,e.length),!1)}),l("validateFn",null,function(e,t){return t===!0||null===t||""===t}),!e.length)return a.emptyPromise(r,r.$ngfValidations);var f=t.defer(),d=[];return d.push(a.happyPromise(s("maxHeight","height.max",/image/,this.imageDimensions,function(e,t){return e.height<=t}))),d.push(a.happyPromise(s("minHeight","height.min",/image/,this.imageDimensions,function(e,t){return e.height>=t}))),d.push(a.happyPromise(s("maxWidth","width.max",/image/,this.imageDimensions,function(e,t){return e.width<=t}))),d.push(a.happyPromise(s("minWidth","width.min",/image/,this.imageDimensions,function(e,t){return e.width>=t}))),d.push(a.happyPromise(s("dimensions",null,/image/,function(e,t){return a.emptyPromise(t)},function(e){return e}))),d.push(a.happyPromise(s("ratio",null,/image/,this.imageDimensions,function(e,t){for(var n=t.toString().split(","),r=!1,i=0;i<n.length;i++)Math.abs(e.width/e.height-a.ratioToFloat(n[i]))<1e-4&&(r=!0);return r}))),d.push(a.happyPromise(s("maxRatio","ratio.max",/image/,this.imageDimensions,function(e,t){return e.width/e.height-a.ratioToFloat(t)<1e-4}))),d.push(a.happyPromise(s("minRatio","ratio.min",/image/,this.imageDimensions,function(e,t){return e.width/e.height-a.ratioToFloat(t)>-1e-4}))),d.push(a.happyPromise(s("maxDuration","duration.max",/audio|video/,this.mediaDuration,function(e,t){return e<=a.translateScalars(t)}))),d.push(a.happyPromise(s("minDuration","duration.min",/audio|video/,this.mediaDuration,function(e,t){return e>=a.translateScalars(t)}))),d.push(a.happyPromise(s("duration",null,/audio|video/,function(e,t){return a.emptyPromise(t)},function(e){return e}))),d.push(a.happyPromise(s("validateAsyncFn",null,null,function(e,t){return t},function(e){return e===!0||null===e||""===e}))),t.all(d).then(function(){f.resolve(r,r.$ngfValidations)})},a.imageDimensions=function(e){if(e.$ngfWidth&&e.$ngfHeight){var r=t.defer();return n(function(){r.resolve({width:e.$ngfWidth,height:e.$ngfHeight})}),r.promise}if(e.$ngfDimensionPromise)return e.$ngfDimensionPromise;var i=t.defer();return n(function(){return 0!==e.type.indexOf("image")?void i.reject("not image"):void a.dataUrl(e).then(function(t){function r(){var t=l[0].clientWidth,n=l[0].clientHeight;l.remove(),e.$ngfWidth=t,e.$ngfHeight=n,i.resolve({width:t,height:n})}function a(){l.remove(),i.reject("load error")}function o(){n(function(){l[0].parentNode&&(l[0].clientWidth?r():s>10?a():o())},1e3)}var l=angular.element("<img>").attr("src",t).css("visibility","hidden").css("position","fixed").css("max-width","none !important").css("max-height","none !important");l.on("load",r),l.on("error",a);var s=0;o(),angular.element(document.getElementsByTagName("body")[0]).append(l)},function(){i.reject("load error")})}),e.$ngfDimensionPromise=i.promise,e.$ngfDimensionPromise["finally"](function(){delete e.$ngfDimensionPromise}),e.$ngfDimensionPromise},a.mediaDuration=function(e){if(e.$ngfDuration){var r=t.defer();return n(function(){r.resolve(e.$ngfDuration)}),r.promise}if(e.$ngfDurationPromise)return e.$ngfDurationPromise;var i=t.defer();return n(function(){return 0!==e.type.indexOf("audio")&&0!==e.type.indexOf("video")?void i.reject("not media"):void a.dataUrl(e).then(function(t){function r(){var t=l[0].duration;e.$ngfDuration=t,l.remove(),i.resolve(t)}function a(){l.remove(),i.reject("load error")}function o(){n(function(){l[0].parentNode&&(l[0].duration?r():s>10?a():o())},1e3)}var l=angular.element(0===e.type.indexOf("audio")?"<audio>":"<video>").attr("src",t).css("visibility","none").css("position","fixed");l.on("loadedmetadata",r),l.on("error",a);var s=0;o(),angular.element(document.body).append(l)},function(){i.reject("load error")})}),e.$ngfDurationPromise=i.promise,e.$ngfDurationPromise["finally"](function(){delete e.$ngfDurationPromise}),e.$ngfDurationPromise},a}]),ngFileUpload.service("UploadResize",["UploadValidate","$q",function(e,t){var n=e,r=function(e,t,n,r,i){var a=i?Math.max(n/e,r/t):Math.min(n/e,r/t);return{width:e*a,height:t*a,marginX:e*a-n,marginY:t*a-r}},i=function(e,i,a,o,l,s,u,c){var f=t.defer(),d=document.createElement("canvas"),g=document.createElement("img");return g.onload=function(){if(null!=c&&c(g.width,g.height)===!1)return void f.reject("resizeIf");try{if(s){var e=n.ratioToFloat(s),t=g.width/g.height;t<e?(i=g.width,a=i/e):(a=g.height,i=a*e)}i||(i=g.width),a||(a=g.height);var p=r(g.width,g.height,i,a,u);d.width=Math.min(p.width,i),d.height=Math.min(p.height,a);var h=d.getContext("2d");h.drawImage(g,Math.min(0,-p.marginX/2),Math.min(0,-p.marginY/2),p.width,p.height),f.resolve(d.toDataURL(l||"image/WebP",o||.934))}catch(m){f.reject(m)}},g.onerror=function(){f.reject()},g.src=e,f.promise};return n.dataUrltoBlob=function(e,t,n){for(var r=e.split(","),i=r[0].match(/:(.*?);/)[1],a=atob(r[1]),o=a.length,l=new Uint8Array(o);o--;)l[o]=a.charCodeAt(o);var s=new window.Blob([l],{type:i});return s.name=t,s.$ngfOrigSize=n,s},n.isResizeSupported=function(){var e=document.createElement("canvas");return window.atob&&e.getContext&&e.getContext("2d")&&window.Blob},n.isResizeSupported()&&Object.defineProperty(window.Blob.prototype,"name",{get:function(){return this.$ngfName},set:function(e){this.$ngfName=e},configurable:!0}),n.resize=function(e,r,a,o,l,s,u,c,f){if(0!==e.type.indexOf("image"))return n.emptyPromise(e);var d=t.defer();return n.dataUrl(e,!0).then(function(t){i(t,r,a,o,l||e.type,s,u,c).then(function(r){if("image/jpeg"===e.type&&f)try{r=n.restoreExif(t,r)}catch(i){setTimeout(function(){throw i},1)}try{var a=n.dataUrltoBlob(r,e.name,e.size);d.resolve(a)}catch(i){d.reject(i)}},function(t){"resizeIf"===t&&d.resolve(e),d.reject(t)})},function(e){d.reject(e)}),d.promise},n}]),function(){function e(e,n,r,i,a,o,l,s,u,c){function f(){return n.attr("disabled")||v("ngfDropDisabled",e)}function d(t,n){s.updateModel(i,r,e,v("ngfChange")||v("ngfDrop"),t,n)}function g(t,n){if(!s.shouldUpdateOn(t,r,e)||!n)return s.rejectPromise([]);var i=[];n.replace(/<(img src|img [^>]* src) *=\"([^\"]*)\"/gi,function(e,t,n){i.push(n)});var a=[],o=[];if(i.length){angular.forEach(i,function(e){a.push(s.urlToBlob(e).then(function(e){o.push(e)}))});var l=c.defer();return c.all(a).then(function(){l.resolve(o)},function(e){l.reject(e)}),l.promise}return s.emptyPromise()}function p(e,t,n,r){var i=v("ngfDragOverClass",e,{$event:n}),a="dragover";if(angular.isString(i))a=i;else if(i&&(i.delay&&(D=i.delay),i.accept||i.reject)){var o=n.dataTransfer.items;if(null!=o&&o.length)for(var l=i.pattern||v("ngfPattern",e,{$event:n}),u=o.length;u--;){if(!s.validatePattern(o[u],l)){a=i.reject;break}a=i.accept}else a=i.accept}r(a)}function h(t,n,i,a){function o(e,t){var n=c.defer();if(null!=e)if(e.isDirectory){var r=[s.emptyPromise()];if(d){var i={type:"directory"};i.name=i.path=(t||"")+e.name+e.name,g.push(i)}var a=e.createReader(),l=[],h=function(){a.readEntries(function(i){try{i.length?(l=l.concat(Array.prototype.slice.call(i||[],0)),h()):(angular.forEach(l.slice(0),function(n){g.length<=u&&p<=f&&r.push(o(n,(t?t:"")+e.name+"/"))}),c.all(r).then(function(){n.resolve()},function(e){n.reject(e)}))}catch(a){n.reject(a)}},function(e){n.reject(e)})};h()}else e.file(function(e){try{e.path=(t?t:"")+e.name,d&&(e=s.rename(e,e.path)),g.push(e),p+=e.size,n.resolve()}catch(r){n.reject(r)}},function(e){n.reject(e)});return n.promise}var u=s.getValidationAttr(r,e,"maxFiles")||Number.MAX_VALUE,f=s.getValidationAttr(r,e,"maxTotalSize")||Number.MAX_VALUE,d=v("ngfIncludeDir",e),g=[],p=0,h=[s.emptyPromise()];if(t&&t.length>0&&"file"!==l.protocol())for(var m=0;m<t.length;m++){if(t[m].webkitGetAsEntry&&t[m].webkitGetAsEntry()&&t[m].webkitGetAsEntry().isDirectory){var y=t[m].webkitGetAsEntry();if(y.isDirectory&&!i)continue;null!=y&&h.push(o(y))}else{var b=t[m].getAsFile();null!=b&&(g.push(b),p+=b.size)}if(g.length>u||p>f||!a&&g.length>0)break}else if(null!=n)for(var $=0;$<n.length;$++){var D=n.item($);if((D.type||D.size>0)&&(g.push(D),p+=D.size),g.length>u||p>f||!a&&g.length>0)break}var w=c.defer();return c.all(h).then(function(){if(a||d||!g.length)w.resolve(g);else{for(var e=0;g[e]&&"directory"===g[e].type;)e++;w.resolve([g[e]])}},function(e){w.reject(e)}),w.promise}var m=t(),v=function(e,t,n){return s.attrGetter(e,r,t,n)};if(v("dropAvailable")&&o(function(){e[v("dropAvailable")]?e[v("dropAvailable")].value=m:e[v("dropAvailable")]=m}),!m)return void(v("ngfHideOnDropNotAvailable",e)===!0&&n.css("display","none"));null==v("ngfSelect")&&s.registerModelChangeValidator(i,r,e);var y,b=null,$=a(v("ngfStopPropagation")),D=1;n[0].addEventListener("dragover",function(t){if(!f()&&s.shouldUpdateOn("drop",r,e)){if(t.preventDefault(),$(e)&&t.stopPropagation(),navigator.userAgent.indexOf("Chrome")>-1){var i=t.dataTransfer.effectAllowed;t.dataTransfer.dropEffect="move"===i||"linkMove"===i?"move":"copy"}o.cancel(b),y||(y="C",p(e,r,t,function(r){y=r,n.addClass(y),v("ngfDrag",e,{$isDragging:!0,$class:y,$event:t})}))}},!1),n[0].addEventListener("dragenter",function(t){!f()&&s.shouldUpdateOn("drop",r,e)&&(t.preventDefault(),$(e)&&t.stopPropagation())},!1),n[0].addEventListener("dragleave",function(t){!f()&&s.shouldUpdateOn("drop",r,e)&&(t.preventDefault(),$(e)&&t.stopPropagation(),b=o(function(){y&&n.removeClass(y),y=null,v("ngfDrag",e,{$isDragging:!1,$event:t})},D||100))},!1),n[0].addEventListener("drop",function(t){if(!f()&&s.shouldUpdateOn("drop",r,e)){t.preventDefault(),$(e)&&t.stopPropagation(),y&&n.removeClass(y),y=null;var i,a=t.dataTransfer.items;try{i=t.dataTransfer&&t.dataTransfer.getData&&t.dataTransfer.getData("text/html")}catch(o){}h(a,t.dataTransfer.files,v("ngfAllowDir",e)!==!1,v("multiple")||v("ngfMultiple",e)).then(function(e){e.length?d(e,t):g("dropUrl",i).then(function(e){d(e,t)})})}},!1),n[0].addEventListener("paste",function(t){if(navigator.userAgent.toLowerCase().indexOf("firefox")>-1&&v("ngfEnableFirefoxPaste",e)&&t.preventDefault(),!f()&&s.shouldUpdateOn("paste",r,e)){var n=[],i=t.clipboardData||t.originalEvent.clipboardData;if(i&&i.items)for(var a=0;a<i.items.length;a++)i.items[a].type.indexOf("image")!==-1&&n.push(i.items[a].getAsFile());n.length?d(n,t):g("pasteUrl",i).then(function(e){d(e,t)})}},!1),navigator.userAgent.toLowerCase().indexOf("firefox")>-1&&v("ngfEnableFirefoxPaste",e)&&(n.attr("contenteditable",!0),n.on("keypress",function(e){e.metaKey||e.ctrlKey||e.preventDefault()}))}function t(){var e=document.createElement("div");return"draggable"in e&&"ondrop"in e&&!/Edge\/12./i.test(navigator.userAgent)}ngFileUpload.directive("ngfDrop",["$parse","$timeout","$location","Upload","$http","$q",function(t,n,r,i,a,o){
return{restrict:"AEC",require:"?ngModel",link:function(l,s,u,c){e(l,s,u,c,t,n,r,i,a,o)}}}]),ngFileUpload.directive("ngfNoFileDrop",function(){return function(e,n){t()&&n.css("display","none")}}),ngFileUpload.directive("ngfDropAvailable",["$parse","$timeout","Upload",function(e,n,r){return function(i,a,o){if(t()){var l=e(r.attrGetter("ngfDropAvailable",o));n(function(){l(i),l.assign&&l.assign(i,!0)})}}}])}(),ngFileUpload.service("UploadExif",["UploadResize","$q",function(e,t){function n(e,t,n,r){switch(t){case 2:return e.transform(-1,0,0,1,n,0);case 3:return e.transform(-1,0,0,-1,n,r);case 4:return e.transform(1,0,0,-1,0,r);case 5:return e.transform(0,1,1,0,0,0);case 6:return e.transform(0,1,-1,0,r,0);case 7:return e.transform(0,-1,-1,0,r,n);case 8:return e.transform(0,-1,1,0,0,n)}}function r(e){for(var t="",n=new Uint8Array(e),r=n.byteLength,i=0;i<r;i++)t+=String.fromCharCode(n[i]);return window.btoa(t)}var i=e;return i.isExifSupported=function(){return window.FileReader&&(new FileReader).readAsArrayBuffer&&i.isResizeSupported()},i.readOrientation=function(e){var n=t.defer(),r=new FileReader,i=e.slice?e.slice(0,65536):e;return r.readAsArrayBuffer(i),r.onerror=function(e){return n.reject(e)},r.onload=function(e){var t={orientation:1},r=new DataView(this.result);if(65496!==r.getUint16(0,!1))return n.resolve(t);for(var i=r.byteLength,a=2;a<i;){var o=r.getUint16(a,!1);if(a+=2,65505===o){if(1165519206!==r.getUint32(a+=2,!1))return n.resolve(t);var l=18761===r.getUint16(a+=6,!1);a+=r.getUint32(a+4,l);var s=r.getUint16(a,l);a+=2;for(var u=0;u<s;u++)if(274===r.getUint16(a+12*u,l)){var c=r.getUint16(a+12*u+8,l);return c>=2&&c<=8&&(r.setUint16(a+12*u+8,1,l),t.fixedArrayBuffer=e.target.result),t.orientation=c,n.resolve(t)}}else{if(65280!==(65280&o))break;a+=r.getUint16(a,!1)}}return n.resolve(t)},n.promise},i.applyExifRotation=function(e){if(0!==e.type.indexOf("image/jpeg"))return i.emptyPromise(e);var a=t.defer();return i.readOrientation(e).then(function(t){return t.orientation<2||t.orientation>8?a.resolve(e):void i.dataUrl(e,!0).then(function(o){var l=document.createElement("canvas"),s=document.createElement("img");s.onload=function(){try{l.width=t.orientation>4?s.height:s.width,l.height=t.orientation>4?s.width:s.height;var o=l.getContext("2d");n(o,t.orientation,s.width,s.height),o.drawImage(s,0,0);var u=l.toDataURL(e.type||"image/WebP",.934);u=i.restoreExif(r(t.fixedArrayBuffer),u);var c=i.dataUrltoBlob(u,e.name);a.resolve(c)}catch(f){return a.reject(f)}},s.onerror=function(){a.reject()},s.src=o},function(e){a.reject(e)})},function(e){a.reject(e)}),a.promise},i.restoreExif=function(e,t){var n={};return n.KEY_STR="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n.encode64=function(e){var t,n,r,i,a,o="",l="",s="",u=0;do t=e[u++],n=e[u++],l=e[u++],r=t>>2,i=(3&t)<<4|n>>4,a=(15&n)<<2|l>>6,s=63&l,isNaN(n)?a=s=64:isNaN(l)&&(s=64),o=o+this.KEY_STR.charAt(r)+this.KEY_STR.charAt(i)+this.KEY_STR.charAt(a)+this.KEY_STR.charAt(s),t=n=l="",r=i=a=s="";while(u<e.length);return o},n.restore=function(e,t){e.match("data:image/jpeg;base64,")&&(e=e.replace("data:image/jpeg;base64,",""));var n=this.decode64(e),r=this.slice2Segments(n),i=this.exifManipulation(t,r);return"data:image/jpeg;base64,"+this.encode64(i)},n.exifManipulation=function(e,t){var n=this.getExifArray(t),r=this.insertExif(e,n);return new Uint8Array(r)},n.getExifArray=function(e){for(var t,n=0;n<e.length;n++)if(t=e[n],255===t[0]&225===t[1])return t;return[]},n.insertExif=function(e,t){var n=e.replace("data:image/jpeg;base64,",""),r=this.decode64(n),i=r.indexOf(255,3),a=r.slice(0,i),o=r.slice(i),l=a;return l=l.concat(t),l=l.concat(o)},n.slice2Segments=function(e){for(var t=0,n=[];;){if(255===e[t]&218===e[t+1])break;if(255===e[t]&216===e[t+1])t+=2;else{var r=256*e[t+2]+e[t+3],i=t+r+2,a=e.slice(t,i);n.push(a),t=i}if(t>e.length)break}return n},n.decode64=function(e){var t,n,r,i,a,o="",l="",s=0,u=[],c=/[^A-Za-z0-9\+\/\=]/g;c.exec(e)&&console.log("There were invalid base64 characters in the input text.\nValid base64 characters are A-Z, a-z, 0-9, NaNExpect errors in decoding."),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");do r=this.KEY_STR.indexOf(e.charAt(s++)),i=this.KEY_STR.indexOf(e.charAt(s++)),a=this.KEY_STR.indexOf(e.charAt(s++)),l=this.KEY_STR.indexOf(e.charAt(s++)),t=r<<2|i>>4,n=(15&i)<<4|a>>2,o=(3&a)<<6|l,u.push(t),64!==a&&u.push(n),64!==l&&u.push(o),t=n=o="",r=i=a=l="";while(s<e.length);return u},n.restore(e,t)},i}]),!function(e,t){"undefined"!=typeof module&&module.exports?(t("undefined"==typeof angular?require("angular"):angular),module.exports="ngDialog"):"function"==typeof define&&define.amd?define(["angular"],t):t(e.angular)}(this,function(e){"use strict";var t=e.module("ngDialog",[]),n=e.element,r=e.isDefined,i=(document.body||document.documentElement).style,a=r(i.animation)||r(i.WebkitAnimation)||r(i.MozAnimation)||r(i.MsAnimation)||r(i.OAnimation),o="animationend webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend",l="a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]",s="ngdialog-disabled-animation",u={html:!1,body:!1},c={},f=[],d=!1,g=!1;return t.provider("ngDialog",function(){var t=this.defaults={className:"ngdialog-theme-default",appendClassName:"",disableAnimation:!1,plain:!1,showClose:!0,closeByDocument:!0,closeByEscape:!0,closeByNavigation:!1,appendTo:!1,preCloseCallback:!1,overlay:!0,cache:!0,trapFocus:!0,preserveFocus:!0,ariaAuto:!0,ariaRole:null,ariaLabelledById:null,ariaLabelledBySelector:null,ariaDescribedById:null,ariaDescribedBySelector:null,bodyClassName:"ngdialog-open",width:null,height:null};this.setForceHtmlReload=function(e){u.html=e||!1},this.setForceBodyReload=function(e){u.body=e||!1},this.setDefaults=function(n){e.extend(t,n)},this.setOpenOnePerName=function(e){g=e||!1};var r,i=0,p=0,h={};this.$get=["$document","$templateCache","$compile","$q","$http","$rootScope","$timeout","$window","$controller","$injector",function(m,v,y,b,$,D,w,C,S,U){var A=[],x={onDocumentKeydown:function(e){27===e.keyCode&&E.close("$escape")},activate:function(e){var t=e.data("$ngDialogOptions");t.trapFocus&&(e.on("keydown",x.onTrapFocusKeydown),A.body.on("keydown",x.onTrapFocusKeydown))},deactivate:function(e){e.off("keydown",x.onTrapFocusKeydown),A.body.off("keydown",x.onTrapFocusKeydown)},deactivateAll:function(t){e.forEach(t,function(t){var n=e.element(t);x.deactivate(n)})},setBodyPadding:function(e){var t=parseInt(A.body.css("padding-right")||0,10);A.body.css("padding-right",t+e+"px"),A.body.data("ng-dialog-original-padding",t),D.$broadcast("ngDialog.setPadding",e)},resetBodyPadding:function(){var e=A.body.data("ng-dialog-original-padding");e?A.body.css("padding-right",e+"px"):A.body.css("padding-right",""),D.$broadcast("ngDialog.setPadding",0)},performCloseDialog:function(e,t){var n=e.data("$ngDialogOptions"),i=e.attr("id"),l=c[i];if(l){if("undefined"!=typeof C.Hammer){var s=l.hammerTime;s.off("tap",r),s.destroy&&s.destroy(),delete l.hammerTime}else e.unbind("click");1===p&&A.body.unbind("keydown",x.onDocumentKeydown),e.hasClass("ngdialog-closing")||(p-=1);var u=e.data("$ngDialogPreviousFocus");u&&u.focus&&u.focus(),D.$broadcast("ngDialog.closing",e,t),p=p<0?0:p,a&&!n.disableAnimation?(l.$destroy(),e.unbind(o).bind(o,function(){x.closeDialogElement(e,t)}).addClass("ngdialog-closing")):(l.$destroy(),x.closeDialogElement(e,t)),h[i]&&(h[i].resolve({id:i,value:t,$dialog:e,remainingDialogs:p}),delete h[i]),c[i]&&delete c[i],f.splice(f.indexOf(i),1),f.length||(A.body.unbind("keydown",x.onDocumentKeydown),d=!1)}},closeDialogElement:function(e,t){var n=e.data("$ngDialogOptions");e.remove(),0===p&&(A.html.removeClass(n.bodyClassName),A.body.removeClass(n.bodyClassName),x.resetBodyPadding()),D.$broadcast("ngDialog.closed",e,t)},closeDialog:function(t,n){var r=t.data("$ngDialogPreCloseCallback");if(r&&e.isFunction(r)){var i=r.call(t,n);if(e.isObject(i))i.closePromise?i.closePromise.then(function(){x.performCloseDialog(t,n)},function(){return!1}):i.then(function(){x.performCloseDialog(t,n)},function(){return!1});else{if(i===!1)return!1;x.performCloseDialog(t,n)}}else x.performCloseDialog(t,n)},onTrapFocusKeydown:function(t){var n,r=e.element(t.currentTarget);if(r.hasClass("ngdialog"))n=r;else if(n=x.getActiveDialog(),null===n)return;var i=9===t.keyCode,a=t.shiftKey===!0;i&&x.handleTab(n,t,a)},handleTab:function(e,t,n){var r=x.getFocusableElements(e);if(0===r.length)return void(document.activeElement&&document.activeElement.blur&&document.activeElement.blur());var i=document.activeElement,a=Array.prototype.indexOf.call(r,i),o=a===-1,l=0===a,s=a===r.length-1,u=!1;n?(o||l)&&(r[r.length-1].focus(),u=!0):(o||s)&&(r[0].focus(),u=!0),u&&(t.preventDefault(),t.stopPropagation())},autoFocus:function(e){var t=e[0],r=t.querySelector("*[autofocus]");if(null===r||(r.focus(),document.activeElement!==r)){var i=x.getFocusableElements(e);if(i.length>0)return void i[0].focus();var a=x.filterVisibleElements(t.querySelectorAll("h1,h2,h3,h4,h5,h6,p,span"));if(a.length>0){var o=a[0];n(o).attr("tabindex","-1").css("outline","0"),o.focus()}}},getFocusableElements:function(e){var t=e[0],n=t.querySelectorAll(l),r=x.filterTabbableElements(n);return x.filterVisibleElements(r)},filterTabbableElements:function(e){for(var t=[],r=0;r<e.length;r++){var i=e[r];"-1"!==n(i).attr("tabindex")&&t.push(i)}return t},filterVisibleElements:function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];(r.offsetWidth>0||r.offsetHeight>0)&&t.push(r)}return t},getActiveDialog:function(){var e=document.querySelectorAll(".ngdialog");return 0===e.length?null:n(e[e.length-1])},applyAriaAttributes:function(e,t){if(t.ariaAuto){if(!t.ariaRole){var n=x.getFocusableElements(e).length>0?"dialog":"alertdialog";t.ariaRole=n}t.ariaLabelledBySelector||(t.ariaLabelledBySelector="h1,h2,h3,h4,h5,h6"),t.ariaDescribedBySelector||(t.ariaDescribedBySelector="article,section,p")}t.ariaRole&&e.attr("role",t.ariaRole),x.applyAriaAttribute(e,"aria-labelledby",t.ariaLabelledById,t.ariaLabelledBySelector),x.applyAriaAttribute(e,"aria-describedby",t.ariaDescribedById,t.ariaDescribedBySelector)},applyAriaAttribute:function(e,t,r,i){if(r&&e.attr(t,r),i){var a=e.attr("id"),o=e[0].querySelector(i);if(!o)return;var l=a+"-"+t;return n(o).attr("id",l),e.attr(t,l),l}},detectUIRouter:function(){try{return e.module("ui.router"),!0}catch(t){return!1}},getRouterLocationEventName:function(){return x.detectUIRouter()?"$stateChangeStart":"$locationChangeStart"}},E={__PRIVATE__:x,open:function(a){function o(e,t){return D.$broadcast("ngDialog.templateLoading",e),$.get(e,t||{}).then(function(t){return D.$broadcast("ngDialog.templateLoaded",e),t.data||""})}function l(t){return t?e.isString(t)&&m.plain?t:"boolean"!=typeof m.cache||m.cache?o(t,{cache:v}):o(t,{cache:!1}):"Empty template"}var u=null;if(a=a||{},!(g&&a.name&&(u=a.name.toLowerCase().replace(/\s/g,"-")+"-dialog",this.isOpen(u)))){var m=e.copy(t),F=++i;u=u||"ngdialog"+F,f.push(u),"undefined"!=typeof m.data&&("undefined"==typeof a.data&&(a.data={}),a.data=e.merge(e.copy(m.data),a.data)),e.extend(m,a);var P;h[u]=P=b.defer();var _;c[u]=_=e.isObject(m.scope)?m.scope.$new():D.$new();var z,k,R,O=e.extend({},m.resolve);return e.forEach(O,function(t,n){O[n]=e.isString(t)?U.get(t):U.invoke(t,null,null,n)}),b.all({template:l(m.template||m.templateUrl),locals:b.all(O)}).then(function(t){var i=t.template,a=t.locals;m.showClose&&(i+='<div class="ngdialog-close"></div>');var o=m.overlay?"":" ngdialog-no-overlay";if(z=n('<div id="'+u+'" class="ngdialog'+o+'"></div>'),z.html(m.overlay?'<div class="ngdialog-overlay"></div><div class="ngdialog-content" role="document">'+i+"</div>":'<div class="ngdialog-content" role="document">'+i+"</div>"),z.data("$ngDialogOptions",m),_.ngDialogId=u,m.data&&e.isString(m.data)){var l=m.data.replace(/^\s*/,"")[0];_.ngDialogData="{"===l||"["===l?e.fromJson(m.data):new String(m.data),_.ngDialogData.ngDialogId=u}else m.data&&e.isObject(m.data)&&(_.ngDialogData=m.data,_.ngDialogData.ngDialogId=u);if(m.className&&z.addClass(m.className),m.appendClassName&&z.addClass(m.appendClassName),m.width&&(R=z[0].querySelector(".ngdialog-content"),e.isString(m.width)?R.style.width=m.width:R.style.width=m.width+"px"),m.height&&(R=z[0].querySelector(".ngdialog-content"),e.isString(m.height)?R.style.height=m.height:R.style.height=m.height+"px"),m.disableAnimation&&z.addClass(s),k=m.appendTo&&e.isString(m.appendTo)?e.element(document.querySelector(m.appendTo)):A.body,x.applyAriaAttributes(z,m),m.preCloseCallback){var c;e.isFunction(m.preCloseCallback)?c=m.preCloseCallback:e.isString(m.preCloseCallback)&&_&&(e.isFunction(_[m.preCloseCallback])?c=_[m.preCloseCallback]:_.$parent&&e.isFunction(_.$parent[m.preCloseCallback])?c=_.$parent[m.preCloseCallback]:D&&e.isFunction(D[m.preCloseCallback])&&(c=D[m.preCloseCallback])),c&&z.data("$ngDialogPreCloseCallback",c)}if(_.closeThisDialog=function(e){x.closeDialog(z,e)},m.controller&&(e.isString(m.controller)||e.isArray(m.controller)||e.isFunction(m.controller))){var f;m.controllerAs&&e.isString(m.controllerAs)&&(f=m.controllerAs);var g=S(m.controller,e.extend(a,{$scope:_,$element:z}),!0,f);m.bindToController&&e.extend(g.instance,{ngDialogId:_.ngDialogId,ngDialogData:_.ngDialogData,closeThisDialog:_.closeThisDialog,confirm:_.confirm}),"function"==typeof g?z.data("$ngDialogControllerController",g()):z.data("$ngDialogControllerController",g)}if(w(function(){var e=document.querySelectorAll(".ngdialog");x.deactivateAll(e),y(z)(_);var t=C.innerWidth-A.body.prop("clientWidth");A.html.addClass(m.bodyClassName),A.body.addClass(m.bodyClassName);var n=t-(C.innerWidth-A.body.prop("clientWidth"));n>0&&x.setBodyPadding(n),k.append(z),x.activate(z),m.trapFocus&&x.autoFocus(z),m.name?D.$broadcast("ngDialog.opened",{dialog:z,name:m.name}):D.$broadcast("ngDialog.opened",z)}),d||(A.body.bind("keydown",x.onDocumentKeydown),d=!0),m.closeByNavigation){var h=x.getRouterLocationEventName();D.$on(h,function(e){x.closeDialog(z)===!1&&e.preventDefault()})}if(m.preserveFocus&&z.data("$ngDialogPreviousFocus",document.activeElement),r=function(e){var t=!!m.closeByDocument&&n(e.target).hasClass("ngdialog-overlay"),r=n(e.target).hasClass("ngdialog-close");(t||r)&&E.close(z.attr("id"),r?"$closeButton":"$document")},"undefined"!=typeof C.Hammer){var v=_.hammerTime=C.Hammer(z[0]);v.on("tap",r)}else z.bind("click",r);return p+=1,E}),{id:u,closePromise:P.promise,close:function(e){x.closeDialog(z,e)}}}},openConfirm:function(r){var i=b.defer(),a=e.copy(t);r=r||{},"undefined"!=typeof a.data&&("undefined"==typeof r.data&&(r.data={}),r.data=e.merge(e.copy(a.data),r.data)),e.extend(a,r),a.scope=e.isObject(a.scope)?a.scope.$new():D.$new(),a.scope.confirm=function(e){i.resolve(e);var t=n(document.getElementById(o.id));x.performCloseDialog(t,e)};var o=E.open(a);if(o)return o.closePromise.then(function(e){return e?i.reject(e.value):i.reject()}),i.promise},isOpen:function(e){var t=n(document.getElementById(e));return t.length>0},close:function(e,t){var r=n(document.getElementById(e));if(r.length)x.closeDialog(r,t);else if("$escape"===e){var i=f[f.length-1];r=n(document.getElementById(i)),r.data("$ngDialogOptions").closeByEscape&&x.closeDialog(r,"$escape")}else E.closeAll(t);return E},closeAll:function(e){for(var t=document.querySelectorAll(".ngdialog"),r=t.length-1;r>=0;r--){var i=t[r];x.closeDialog(n(i),e)}},getOpenDialogs:function(){return f},getDefaults:function(){return t}};return e.forEach(["html","body"],function(e){if(A[e]=m.find(e),u[e]){var t=x.getRouterLocationEventName();D.$on(t,function(){A[e]=m.find(e)})}}),E}]}),t.directive("ngDialog",["ngDialog",function(t){return{restrict:"A",scope:{ngDialogScope:"="},link:function(n,r,i){r.on("click",function(r){r.preventDefault();var a=e.isDefined(n.ngDialogScope)?n.ngDialogScope:"noScope";e.isDefined(i.ngDialogClosePrevious)&&t.close(i.ngDialogClosePrevious);var o=t.getDefaults();t.open({template:i.ngDialog,className:i.ngDialogClass||o.className,appendClassName:i.ngDialogAppendClass,controller:i.ngDialogController,controllerAs:i.ngDialogControllerAs,bindToController:i.ngDialogBindToController,scope:a,data:i.ngDialogData,showClose:"false"!==i.ngDialogShowClose&&("true"===i.ngDialogShowClose||o.showClose),closeByDocument:"false"!==i.ngDialogCloseByDocument&&("true"===i.ngDialogCloseByDocument||o.closeByDocument),closeByEscape:"false"!==i.ngDialogCloseByEscape&&("true"===i.ngDialogCloseByEscape||o.closeByEscape),overlay:"false"!==i.ngDialogOverlay&&("true"===i.ngDialogOverlay||o.overlay),preCloseCallback:i.ngDialogPreCloseCallback||o.preCloseCallback,bodyClassName:i.ngDialogBodyClass||o.bodyClassName})})}}}]),t});