All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.resources.bower_components.textAngular.src.taBind.min.js Maven / Gradle / Ivy


angular.module("textAngular.taBind",["textAngular.factories","textAngular.DOM"]).service("_taBlankTest",[function(){return function(b){if(!b){return true}var a=stripHtmlToText(b);if(a===""){if(/]+>/.test(b)){return false}return true}else{return false}}}]).directive("taButton",[function(){return{link:function(c,b,a){b.attr("unselectable","on");b.on("mousedown",function(f,d){if(d){angular.extend(f,d)}f.preventDefault();return false})}}}]).directive("taBind",["taSanitize","$timeout","$document","taFixChrome","taBrowserTag","taSelection","taSelectableElements","taApplyCustomRenderers","taOptions","_taBlankTest","$parse","taDOM","textAngularManager",function(k,b,d,f,a,g,l,j,e,m,c,i,h){return{priority:2,require:["ngModel","?ngModelOptions"],link:function(W,E,B,ah){var C=ah[0];var s=ah[1]||{};var t=E.attr("contenteditable")!==undefined&&E.attr("contenteditable");var af=t||E[0].tagName.toLowerCase()==="textarea"||E[0].tagName.toLowerCase()==="input";var am=false;var V=false;var R=false;var P=B.taUnsafeSanitizer||e.disableSanitizer;var o=B.taKeepStyles||e.keepStyles;var n;var X=/^(9|19|20|27|33|34|35|36|37|38|39|40|45|112|113|114|115|116|117|118|119|120|121|122|123|144|145)$/i;var x=/^(8|13|32|46|59|61|107|109|173|186|187|188|189|190|191|192|219|220|221|222)$/i;var p;var z,y;var G=1;var u=2;var U=4;var aj=8;var al=13;var Z=16;var aa=9;var Y=37;var ai=39;var J=[{specialKey:"UndoKey",forbiddenModifiers:U+aj,mustHaveModifiers:[u+G],keyCode:90},{specialKey:"RedoKey",forbiddenModifiers:U,mustHaveModifiers:[u+G,aj],keyCode:90},{specialKey:"RedoKey",forbiddenModifiers:U+aj,mustHaveModifiers:[u+G],keyCode:89},{specialKey:"TabKey",forbiddenModifiers:u+aj+U+G,mustHaveModifiers:[],keyCode:aa},{specialKey:"ShiftTabKey",forbiddenModifiers:u+U+G,mustHaveModifiers:[aj],keyCode:aa}];function Q(an){var ao;J.forEach(function(aq){if(aq.keyCode===an.keyCode){var ap=(an.metaKey?u:0)+(an.ctrlKey?G:0)+(an.shiftKey?aj:0)+(an.altKey?U:0);if(aq.forbiddenModifiers&ap){return}if(aq.mustHaveModifiers.every(function(ar){return ap&ar})){ao=aq.specialKey}}});return ao}if(B.taDefaultWrap===undefined){B.taDefaultWrap="p"}if(B.taDefaultWrap===""){z="";y=(_browserDetect.ie===undefined)?"

":(_browserDetect.ie>=11)?"


":(_browserDetect.ie<=8)?"

 

":"

 

"}else{z=(_browserDetect.ie===undefined||_browserDetect.ie>=11)?(B.taDefaultWrap.toLowerCase()==="br"?"

":"<"+B.taDefaultWrap+">
"):(_browserDetect.ie<=8)?"<"+B.taDefaultWrap.toUpperCase()+">":"<"+B.taDefaultWrap+">";y=(_browserDetect.ie===undefined||_browserDetect.ie>=11)?(B.taDefaultWrap.toLowerCase()==="br"?"

":"<"+B.taDefaultWrap+">
"):(_browserDetect.ie<=8)?"<"+B.taDefaultWrap.toUpperCase()+"> ":"<"+B.taDefaultWrap+"> "}if(!s.$options){s.$options={}}var M=function(au){if(m(au)){return au}var ar=angular.element("
"+au+"
");if(ar.children().length===0){au="<"+B.taDefaultWrap+">"+au+""}else{var ap=ar[0].childNodes;var aq;var av=false;for(aq=0;aq"+au+""}else{au="";for(aq=0;aq"}else{if(at==="#text"){var aw=ao.textContent;if(!aw.trim()){au+=aw}else{au+="<"+B.taDefaultWrap+">"+aw+""}}else{if(!at.match(BLOCKELEMENTS)){var an=(ao.outerHTML||ao.nodeValue);if(an.trim()!==""){au+="<"+B.taDefaultWrap+">"+an+""}else{au+=an}}else{au+=ao.outerHTML}}}}}}return au};if(B.taPaste){p=c(B.taPaste)}E.addClass("ta-bind");var I;W["$undoManager"+(B.id||"")]=C.$undoManager={_stack:[],_index:0,_max:1000,push:function(an){if((typeof an==="undefined"||an===null)||((typeof this.current()!=="undefined"&&this.current()!==null)&&an===this.current())){return an}if(this._indexthis._max){this._stack.shift()}this._index=this._stack.length-1;return an},undo:function(){return this.setToIndex(this._index-1)},redo:function(){return this.setToIndex(this._index+1)},setToIndex:function(an){if(an<0||an>this._stack.length-1){return undefined}this._index=an;return this.current()},current:function(){return this._stack[this._index]}};var L=function(){if(t){return E[0].innerHTML}if(af){return E.val()}throw ("textAngular Error: attempting to update non-editable taBind")};var O=function(an){W.$emit("ta-element-select",this);an.preventDefault();return false};var D=W["reApplyOnSelectorHandlers"+(B.id||"")]=function(){if(!am){angular.forEach(l,function(an){E.find(an).off("click",O).on("click",O)})}};var ad=function(ap,ao,an){R=an||false;if(typeof ao==="undefined"||ao===null){ao=true&&t}if(typeof ap==="undefined"||ap===null){ap=L()}if(m(ap)){if(C.$viewValue!==""){C.$setViewValue("")}if(ao&&C.$undoManager.current()!==""){C.$undoManager.push("")}}else{D();if(C.$viewValue!==ap){C.$setViewValue(ap);if(ao){C.$undoManager.push(ap)}}}C.$render()};var S=function(an){E[0].innerHTML=an};var T;var N=W["$undoTaBind"+(B.id||"")]=function(){if(!am&&t){var an=C.$undoManager.undo();if(typeof an!=="undefined"&&an!==null){S(an);ad(an,false);if(T){b.cancel(T)}T=b(function(){E[0].focus();g.setSelectionToElementEnd(E[0])},1)}}};var F=W["$redoTaBind"+(B.id||"")]=function(){if(!am&&t){var an=C.$undoManager.redo();if(typeof an!=="undefined"&&an!==null){S(an);ad(an,false);if(T){b.cancel(T)}T=b(function(){E[0].focus();g.setSelectionToElementEnd(E[0])},1)}}};W["updateTaBind"+(B.id||"")]=function(){if(!am){ad(undefined,undefined,true)}};var H=function(an){return(C.$oldViewValue=k(f(an,o),C.$oldViewValue,P))};if(E.attr("required")){C.$validators.required=function(an,ao){return !m(an||ao)}}C.$parsers.push(H);C.$parsers.unshift(M);C.$formatters.push(H);C.$formatters.unshift(M);C.$formatters.unshift(function(an){return C.$undoManager.push(an||"")});if(af){W.events={};if(!t){E.on("change blur",W.events.change=W.events.blur=function(){if(!am){C.$setViewValue(L())}});E.on("keydown",W.events.keydown=function(ar,aq){if(aq){angular.extend(ar,aq)}if(ar.keyCode===aa){var au=this.selectionStart;var an=this.selectionEnd;var at=E.val();if(ar.shiftKey){var ao=at.lastIndexOf("\n",au),ap=at.lastIndexOf("\t",au);if(ap!==-1&&ap>=ao){E.val(at.substring(0,ap)+at.substring(ap+1));this.selectionStart=this.selectionEnd=au-1}}else{E.val(at.substring(0,au)+"\t"+at.substring(an));this.selectionStart=this.selectionEnd=au+1}ar.preventDefault()}});var ae=function(ap,aq){var an="";for(var ao=0;ao";return}if(au==="#text"){ao+=at.textContent;return}if(!at.outerHTML){return}if(au==="ul"||au==="ol"){ao+="\n"+A(at,an)}else{ao+="\n"+ae("\t",an)+at.outerHTML}});ao+="\n"+ae("\t",an-1)+ap.outerHTML.substring(ap.outerHTML.lastIndexOf("<"));return ao};C.$formatters.unshift(function(an){var ao=angular.element("
"+an+"
")[0].childNodes;if(ao.length>0){an="";q(ao,function(ap,aq){var ar=aq.nodeName.toLowerCase();if(ar==="#comment"){an+="";return}if(ar==="#text"){an+=aq.textContent;return}if(!aq.outerHTML){return}if(an.length>0){an+="\n"}if(ar==="ul"||ar==="ol"){an+=""+A(aq,0)}else{an+=""+aq.outerHTML}})}return an})}else{var K=false;var ac=function(ax){var au=ax!==undefined?ax.match(/content=["']*OneNote.File/i):false;if(ax&&ax.trim().length){if(ax.match(/class=["']*Mso(Normal|List)/i)||ax.match(/content=["']*Word.Document/i)||ax.match(/content=["']*OneNote.File/i)){var ar=ax.match(/([\s\S]*?)/i);if(!ar){ar=ax}else{ar=ar[1]}ar=ar.replace(/[\s\S]*?<\/o:p>/ig,"").replace(/class=(["']|)MsoNormal(["']|)/ig,"");var aD=angular.element("
"+ar+"
");var az=angular.element("
");var av={element:null,lastIndent:[],lastLi:null,isUl:false};av.lastIndent.peek=function(){var aI=this.length;if(aI>0){return this[aI-1]}};var aA=function(aI){av.isUl=aI;av.element=angular.element(aI?"
    ":"
      ");av.lastIndent=[];av.lastIndent.peek=function(){var aJ=this.length;if(aJ>0){return this[aJ-1]}};av.lastLevelMatch=null};for(var aC=0;aC<=aD[0].childNodes.length;aC++){if(!aD[0].childNodes[aC]||aD[0].childNodes[aC].nodeName==="#text"){continue}else{var ao=aD[0].childNodes[aC].tagName.toLowerCase();if(ao!=="p"&&ao!=="ul"&&ao!=="h1"&&ao!=="h2"&&ao!=="h3"&&ao!=="h4"&&ao!=="h5"&&ao!=="h6"&&ao!=="table"){continue}}var an=angular.element(aD[0].childNodes[aC]);var aB=(an.attr("class")||"").match(/MsoList(Bullet|Number|Paragraph)(CxSp(First|Middle|Last)|)/i);if(aB){if(an[0].childNodes.length<2||an[0].childNodes[1].childNodes.length<1){continue}var aF=aB[1].toLowerCase()==="bullet"||(aB[1].toLowerCase()!=="number"&&!(/^[^0-9a-z<]*[0-9a-z]+[^0-9a-z<>]]":"
        ");av.lastLi.append(av.element)}else{if(av.lastIndent.peek()!=null&&av.lastIndent.peek()>aw){while(av.lastIndent.peek()!=null&&av.lastIndent.peek()>aw){if(av.element.parent()[0].tagName.toLowerCase()==="li"){av.element=av.element.parent();continue}else{if(/[uo]l/i.test(av.element.parent()[0].tagName.toLowerCase())){av.element=av.element.parent()}else{break}}av.lastIndent.pop()}av.isUl=av.element[0].tagName.toLowerCase()==="ul";if(aF!==av.isUl){aA(aF);az.append(av.element)}}}}av.lastLevelMatch=aG;if(aw!==av.lastIndent.peek()){av.lastIndent.push(aw)}av.lastLi=angular.element("
      1. ");av.element.append(av.lastLi);av.lastLi.html(an.html().replace(/[\s\S]*?/ig,""));an.remove()}else{aA(false);az.append(an)}}var aH=function(aJ){aJ=angular.element(aJ);for(var aI=aJ[0].childNodes.length-1;aI>=0;aI--){aJ.after(aJ[0].childNodes[aI])}aJ.remove()};angular.forEach(az.find("span"),function(aI){aI.removeAttribute("lang");if(aI.attributes.length<=0){aH(aI)}});angular.forEach(az.find("font"),aH);ax=az.html();if(au){ax=az.html()||aD.html()}ax=ax.replace(/\n/g," ")}else{ax=ax.replace(/<(|\/)meta[^>]*?>/ig,"");if(ax.match(/<[^>]*?(ta-bind)[^>]*?>/)){if(ax.match(/<[^>]*?(text-angular)[^>]*?>/)){var ay=angular.element("
        "+ax+"
        ");ay.find("textarea").remove();for(var aq=0;aq',"")}}else{if(ax.match(/^.<\/span>/ig)){ax=ax.replace(/<(|\/)span[^>]*?>/ig,"")}}}ax=ax.replace(/
        ]*?>/ig,"").replace(/( | )<\/span>/ig," ")}if(//i.test(ax)&&/(|).*/i.test(ax)===false){ax=ax.replace(/.*<\/li(\s.*)?>/i,"
          $&
        ")}ax=ax.replace(/^[ |\u00A0]+/gm,function(aJ){var aI="";for(var aK=0;aK").replace(/\t/g,"    ");if(p){ax=p(W,{$html:ax})||ax}ax=ax.replace(/]*?)("|')>([^<]+?)<\/span>/g,"$5");ax=k(ax,"",P);g.insertHtml(ax,E[0]);b(function(){C.$setViewValue(L());K=false;E.removeClass("processing-paste")},0)}else{K=false;E.removeClass("processing-paste")}};E.on("paste",W.events.paste=function(aq,ao){if(ao){angular.extend(aq,ao)}if(am||K){aq.stopPropagation();aq.preventDefault();return false}K=true;E.addClass("processing-paste");var av;var au=(aq.originalEvent||aq).clipboardData;if(!au&&window.clipboardData&&window.clipboardData.getData){av=window.clipboardData.getData("Text");ac(av);aq.stopPropagation();aq.preventDefault();return false}if(au&&au.getData&&au.types.length>0){var at="";for(var ap=0;ap
');d.find("body").append(an);an[0].focus();b(function(){rangy.restoreSelection(ar);ac(an[0].innerHTML);E[0].focus();an.remove()},0)}});E.on("cut",W.events.cut=function(an){if(!am){b(function(){C.$setViewValue(L())},0)}else{an.preventDefault()}});E.on("keydown",W.events.keydown=function(an,aw){if(aw){angular.extend(an,aw)}if(an.keyCode===Z){g.setStateShiftKey(true)}else{g.setStateShiftKey(false)}an.specialKey=Q(an);var ar;e.keyMappings.forEach(function(ax){if(an.specialKey===ax.commandKeyCode){an.specialKey=undefined}if(ax.testForKey(an)){ar=ax.commandKeyCode}if((ax.commandKeyCode==="UndoKey")||(ax.commandKeyCode==="RedoKey")){if(!ax.enablePropagation){an.preventDefault()}}});if(typeof ar!=="undefined"){an.specialKey=ar}if((typeof an.specialKey!=="undefined")&&(an.specialKey!=="UndoKey"||an.specialKey!=="RedoKey")){an.preventDefault();h.sendKeyCommand(W,an)}if(!am){if(an.specialKey==="UndoKey"){N();an.preventDefault()}if(an.specialKey==="RedoKey"){F();an.preventDefault()}if(an.keyCode===al&&!an.shiftKey&&!an.ctrlKey&&!an.metaKey&&!an.altKey){var aq=function(ax,az){for(var ay=0;ay$/i.test(av.innerHTML.trim())&&!av.nextSibling){at=angular.element(av);var ap=at.parent();ap.after(au);at.remove();if(ap.children().length===0){ap.remove()}g.setSelectionToElementStart(au[0]);an.preventDefault()}if(/^<[^>]+><\/[^>]+>$/i.test(av.innerHTML.trim())){at=angular.element(av);at.after(au);at.remove();g.setSelectionToElementStart(au[0]);an.preventDefault()}}}}});var ag;E.on("keyup",W.events.keyup=function(ao,aw){if(aw){angular.extend(ao,aw)}g.setStateShiftKey(false);if(ao.keyCode===aa){var at=g.getSelection();if(at.start.element===E[0]&&E.children().length){g.setSelectionToElementStart(E.children()[0])}return}if(ao.keyCode===Y&&!ao.shiftKey){g.updateLeftArrowKey(E)}if(ao.keyCode===ai&&!ao.shiftKey){g.updateRightArrowKey(E)}if(I){b.cancel(I)}if(!am&&!X.test(ao.keyCode)){if(ao.keyCode===al&&(ao.ctrlKey||ao.metaKey||ao.altKey)){}else{if(z!==""&&z!=="

"&&ao.keyCode===al&&!ao.ctrlKey&&!ao.metaKey&&!ao.altKey){var av=g.getSelectionElement();while(!av.nodeName.match(VALIDELEMENTS)&&av!==E[0]){av=av.parentNode}if(!ao.shiftKey){if(av.tagName.toLowerCase()!==B.taDefaultWrap&&av.nodeName.toLowerCase()!=="li"&&(av.innerHTML.trim()===""||av.innerHTML.trim()==="
")){var au=angular.element(z);angular.element(av).replaceWith(au);g.setSelectionToElementStart(au[0])}}else{var aq=av.tagName.toLowerCase();if((aq===B.taDefaultWrap||aq==="li"||aq==="pre"||aq==="div")&&!/.+

/.test(av.innerHTML.trim())){var an=av.previousSibling;if(an){an.innerHTML=an.innerHTML+"

";angular.element(av).remove();g.setSelectionToElementEnd(an)}}}}var ap=L();if(z!==""&&(ap.trim()===""||ap.trim()==="
")){S(z);g.setSelectionToElementStart(E.children()[0])}else{if(ap.substring(0,1)!=="<"&&B.taDefaultWrap!==""){}}var ar=n!==ao.keyCode&&x.test(ao.keyCode);if(ag){b.cancel(ag)}ag=b(function(){ad(ap,ar,true)},s.$options.debounce||400);if(!ar){I=b(function(){C.$undoManager.push(ap)},250)}n=ao.keyCode}}});var w;E.on("input",function(){if(L()!==C.$viewValue){if(w){b.cancel(w)}w=b(function(){var an=rangy.saveSelection();var ao=L();if(ao!==C.$viewValue){ad(ao,true)}if(C.$viewValue.length!==0){rangy.restoreSelection(an)}},1000)}});E.on("blur",W.events.blur=function(){V=false;if(!am){ad(undefined,undefined,true)}else{R=true;C.$render()}});if(B.placeholder&&(_browserDetect.ie>8||_browserDetect.ie===undefined)){var ak;if(B.id){ak=addCSSRule("#"+B.id+".placeholder-text:before",'content: "'+B.placeholder+'"')}else{throw ("textAngular Error: An unique ID is required for placeholders to work")}W.$on("$destroy",function(){removeCSSRule(ak)})}E.on("focus",W.events.focus=function(){V=true;E.removeClass("placeholder-text");D()});E.on("mouseup",W.events.mouseup=function(){var an=g.getSelection();if(an&&an.start.element===E[0]&&E.children().length){g.setSelectionToElementStart(E.children()[0])}});E.on("mousedown",W.events.mousedown=function(ao,an){if(an){angular.extend(ao,an)}ao.stopPropagation()})}}var r=function(ao,an){if(an){angular.extend(ao,an)}if(!dropFired&&!am){dropFired=true;var ap;if(ao.originalEvent){ap=ao.originalEvent.dataTransfer}else{ap=ao.dataTransfer}W.$emit("ta-drop-event",this,ao,ap);b(function(){dropFired=false;ad(undefined,undefined,true)},100)}};var v;var ab=false;C.$render=function(){if(ab){return}else{ab=true}var an=C.$viewValue||"";if(!R){if(t&&V){E.removeClass("placeholder-text");if(v){b.cancel(v)}v=b(function(){if(!V){E[0].focus();g.setSelectionToElementEnd(E.children()[E.children().length-1])}v=undefined},1)}if(t){if(B.placeholder){if(an===""){S(z)}else{S(an)}}else{S((an==="")?z:an)}if(!am){D();E.on("drop",r)}else{E.off("drop",r)}}else{if(E[0].tagName.toLowerCase()!=="textarea"&&E[0].tagName.toLowerCase()!=="input"){S(j(an))}else{E.val(an)}}}if(t&&B.placeholder){if(an===""){if(V){E.removeClass("placeholder-text")}else{E.addClass("placeholder-text")}}else{E.removeClass("placeholder-text")}}ab=R=false};if(B.taReadonly){am=W.$eval(B.taReadonly);if(am){E.addClass("ta-readonly");if(E[0].tagName.toLowerCase()==="textarea"||E[0].tagName.toLowerCase()==="input"){E.attr("disabled","disabled")}if(E.attr("contenteditable")!==undefined&&E.attr("contenteditable")){E.removeAttr("contenteditable")}}else{E.removeClass("ta-readonly");if(E[0].tagName.toLowerCase()==="textarea"||E[0].tagName.toLowerCase()==="input"){E.removeAttr("disabled")}else{if(t){E.attr("contenteditable","true")}}}W.$watch(B.taReadonly,function(ao,an){if(an===ao){return}if(ao){E.addClass("ta-readonly");if(E[0].tagName.toLowerCase()==="textarea"||E[0].tagName.toLowerCase()==="input"){E.attr("disabled","disabled")}if(E.attr("contenteditable")!==undefined&&E.attr("contenteditable")){E.removeAttr("contenteditable")}angular.forEach(l,function(ap){E.find(ap).on("click",O)});E.off("drop",r)}else{E.removeClass("ta-readonly");if(E[0].tagName.toLowerCase()==="textarea"||E[0].tagName.toLowerCase()==="input"){E.removeAttr("disabled")}else{if(t){E.attr("contenteditable","true")}}angular.forEach(l,function(ap){E.find(ap).off("click",O)});E.on("drop",r)}am=ao})}if(t&&!am){angular.forEach(l,function(an){E.find(an).on("click",O)});E.on("drop",r)}}}}]);




© 2015 - 2025 Weber Informatics LLC | Privacy Policy