Socket
Socket
Sign inDemoInstall

angular-virtual-keyboard

Package Overview
Dependencies
0
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.4.2 to 0.4.3

7

bower.json
{
"name": "angular-virtual-keyboard",
"version": "0.4.2",
"version": "0.4.3",
"homepage": "https://github.com/the-darc/angular-virtual-keyboard",
"author": "the-darc <darc.tec@gmail.com>",
"description": "An AngularJs Virtual Keyboard Interface based on GreyWyvern VKI",
"main": "release/angular-virtual-keyboard.min.js",
"main": [
"release/angular-virtual-keyboard.min.js",
"release/angular-virtual-keyboard.css"
],
"keywords": [

@@ -9,0 +12,0 @@ "Keyboard",

@@ -0,1 +1,16 @@

<a name"0.4.3"></a>
### 0.4.3 (2015-11-19)
#### Bug Fixes
* **VKI_insert:** trim button text before insert in the input field ([52956b40](https://github.com/the-darc/angular-virtual-keyboard/commit/52956b40))
* **bower:** include css in main section of bower ([05e9899](https://github.com/the-darc/angular-virtual-keyboard/commit/05e9899))
* **UAParser:** Windows Phone added to supported mobile platforms ([9143622](https://github.com/the-darc/angular-virtual-keyboard/commit/9143622))
#### Features
* **custom-class:** add support to custom-class configuration ([b2477cd5](https://github.com/the-darc/angular-virtual-keyboard/commit/b2477cd5))
<a name"0.4.2"></a>

@@ -2,0 +17,0 @@ ### 0.4.2 (2015-07-21)

{
"name": "angular-virtual-keyboard",
"version": "0.4.2",
"description": "",
"version": "0.4.3",
"description": "An AngularJs Virtual Keyboard Interface based on GreyWyvern VKI",
"main": "index.js",

@@ -15,2 +15,7 @@ "scripts": {

"license": "MIT",
"keywords": [
"Keyboard",
"Virtual",
"VKI"
],
"bugs": {

@@ -17,0 +22,0 @@ "url": "https://github.com/the-darc/angular-virtual-keyboard/issues"

@@ -1,4 +0,6 @@

[![Bower version](https://badge.fury.io/bo/angular-virtual-keyboard.svg)](http://badge.fury.io/bo/angular-virtual-keyboard)
angular-virtual-keyboard
========================
[![npm version](https://badge.fury.io/js/angular-virtual-keyboard.svg)](http://badge.fury.io/js/angular-virtual-keyboard)
[![Bower version](https://badge.fury.io/bo/angular-virtual-keyboard.svg)](http://badge.fury.io/bo/angular-virtual-keyboard)
An AngularJs Virtual Keyboard Interface based on [GreyWyvern VKI](http://www.greywyvern.com/code/javascript/keyboard). See example in the [Demo page](http://the-darc.github.io/angular-virtual-keyboard).

@@ -8,4 +10,6 @@

## Bower install
## Install
### With bower
```sh

@@ -15,5 +19,11 @@ $ bower install angular-virtual-keyboard

### With npm
```sh
$ npm install angular-virtual-keyboard
```
## Dependencies
- Optional: [angular-useragent-parser](https://github.com/the-darc/angular-useragent-parser)
- Optional: [angular-useragent-parser](https://github.com/the-darc/angular-useragent-parser)
_Obs.: Required to auto-hide the keyboard interface in mobile devices or to use the 'vk-force-mobile' configuration._

@@ -41,8 +51,9 @@

- __Keyboard layouts configurations__ ``VKI_CONFIG.layout`` Array of Keyboard Layout configurations. See [vki-layouts.js](https://github.com/the-darc/angular-virtual-keyboard/blob/master/src/vki-layouts.js) for keyboard layout configuration examples.
- __Deadkeys configurations__ ``VKI_CONFIG.deadkey`` Array of Deadkeys configurations. See [vki-deadkeys.js](https://github.com/the-darc/angular-virtual-keyboard/blob/master/src/vki-deadkeys.js) for deadkeys configuration examples.
- __Keyboard layouts configurations__ ``VKI_CONFIG.layout`` Array of Keyboard Layout configurations. See [vki-layouts.js](https://github.com/the-darc/angular-virtual-keyboard/blob/master/src/vki-layouts.js) for keyboard layout configuration examples.
- __Deadkeys configurations__ ``VKI_CONFIG.deadkey`` Array of Deadkeys configurations. See [vki-deadkeys.js](https://github.com/the-darc/angular-virtual-keyboard/blob/master/src/vki-deadkeys.js) for deadkeys configuration examples.
- __Default keyboard layout__ ``VKI_CONFIG.kt`` Name of the layout configuration to be used as default (if no specific layout configuration is provided in the directive instance configuration). _Default: 'US International'_
- __Relative position__ ``VKI_CONFIG.relative`` Use ``true`` to position the keyboard next to the input, ``false`` to place in the bottom of page. _Default: ``true``_
- __Adjust keyboard size__ ``VKI_CONFIG.sizeAdj`` Allow user to adjust keyboard size. _Default: ``true``_
- __i18n configuration__ ``VKI_CONFIG.i18n`` An array to replace the default labels of the keyboard interface. See example below:
- __i18n configuration__ ``VKI_CONFIG.i18n`` An array to replace the default labels of the keyboard interface. See example below:
- __Custom CSS Class__ ``VKI_CONFIG.customClass`` A CSS class name to add in the first html element of the keyboard
```javascript

@@ -80,2 +91,3 @@ VKI_CONFIG.i18n = {

- __Adjust keyboard size__ ``sizeAdj`` Allow user to adjust keyboard size. _Default: ``true``_
- __Custom CSS Class__ ``customClass`` A CSS class name to add in the first html element of the keyboard

@@ -82,0 +94,0 @@ ### Example of use

/**
* angular-virtual-keyboard
* An AngularJs Virtual Keyboard Interface based on GreyWyvern VKI
* @version v0.4.2
* @version v0.4.3
* @author the-darc <darc.tec@gmail.com>

@@ -90,2 +90,3 @@ * @link https://github.com/the-darc/angular-virtual-keyboard

this.VKI_relative = config.relative === false ? false : true;
this.VKI_customClass = config.customClass || false;

@@ -293,2 +294,5 @@ this.VKI_isIE = /*@cc_on!@*/false;

}
if (this.VKI_customClass) {
self.VKI_keyboard.className += ' ' + this.VKI_customClass;
}
this.VKI_keyboard.dir = "ltr";

@@ -753,2 +757,5 @@ this.VKI_keyboard.cellSpacing = "0";

this.VKI_target.focus();
if (text && text.length > 1 && text.trim) {
text = text.trim();
}
if (this.VKI_target.maxLength) this.VKI_target.maxlength = this.VKI_target.maxLength;

@@ -1068,3 +1075,4 @@ if (typeof this.VKI_target.maxlength == "undefined" ||

relative: true,
sizeAdj: true
sizeAdj: true,
customClass: false
})

@@ -1081,2 +1089,3 @@ .service('ngVirtualKeyboardService', ['VKI_CONFIG', function(VKI_CONFIG) {

config.sizeAdj = config.sizeAdj === false ? false : VKI_CONFIG.sizeAdj;
config.customClass = config.customClass || VKI_CONFIG.customClass;

@@ -1106,4 +1115,6 @@ var vki = new VKI(config, VKI_CONFIG.layout, VKI_CONFIG.deadkey, inputCallback);

var isMobile = results.device.type === 'mobile' || results.device.type === 'tablet';
isMobile = isMobile || (results.os && (results.os.name === 'Android'));
isMobile = isMobile || (results.os && (results.os.name === 'iOS'));
isMobile = isMobile || (results.os && (results.os.name === 'Android'));
isMobile = isMobile || (results.os && (results.os.name === 'iOS'));
isMobile = isMobile || (results.os && (results.os.name === 'Windows Phone'));
isMobile = isMobile || (results.os && (results.os.name === 'Windows Mobile'));
if (isMobile && scope.config.showInMobile !== true) {

@@ -1110,0 +1121,0 @@ return;

@@ -1,1 +0,1 @@

!function(e){var t=function(t,i,a,s){function n(e){var t=!1;try{t=!isNaN(e.selectionStart)&&!isNaN(e.selectionEnd)}catch(i){}return t}function r(e){"TD"==e.nodeName&&(e.click||(e.click=function(){var e=this.ownerDocument.createEvent("MouseEvents");e.initMouseEvent("click",!0,!0,this.ownerDocument.defaultView,1,0,0,0,0,!1,!1,!1,!1,0,null),this.dispatchEvent(e)}),e.VKI_clickless=0,l(e,"dblclick",function(){return!1},!1)),l(e,"mouseover",function(){if("TD"==this.nodeName&&V.VKI_clickless){var e=this;clearTimeout(this.VKI_clickless),this.VKI_clickless=setTimeout(function(){e.click()},V.VKI_clickless)}V.VKI_isIE&&(this.className+=" hover")},!1),l(e,"mouseout",function(){"TD"==this.nodeName&&clearTimeout(this.VKI_clickless),V.VKI_isIE&&(this.className=this.className.replace(/ ?(hover|pressed) ?/g,""))},!1),l(e,"mousedown",function(){"TD"==this.nodeName&&clearTimeout(this.VKI_clickless),V.VKI_isIE&&(this.className+=" pressed")},!1),l(e,"mouseup",function(){"TD"==this.nodeName&&clearTimeout(this.VKI_clickless),V.VKI_isIE&&(this.className=this.className.replace(/ ?pressed ?/g,""))},!1)}function o(){var e=!1,t=" ";if("small"!=this.firstChild.nodeName.toLowerCase()){if(" "==(t=this.firstChild.nodeValue))return!1}else t=this.firstChild.getAttribute("char");return V.VKI_deadkeysOn.checked&&V.VKI_dead&&(V.VKI_dead!=t?" "!=t?V.VKI_deadkey[V.VKI_dead][t]&&(V.VKI_insert(V.VKI_deadkey[V.VKI_dead][t]),e=!0):(V.VKI_insert(V.VKI_dead),e=!0):e=!0),V.VKI_dead=!1,e||(V.VKI_deadkeysOn.checked&&V.VKI_deadkey[t]?(V.VKI_dead=t,this.className+=" dead",V.VKI_shift&&V.VKI_modify("Shift"),V.VKI_altgr&&V.VKI_modify("AltGr")):V.VKI_insert(t)),V.VKI_modify(""),!1}function l(e,t,i,a){e.addEventListener?e.addEventListener(t,function(t){i.call(e,t)},a):e.attachEvent&&e.attachEvent("on"+t,function(){i.call(e)})}function d(e){for(var t=curtop=0,i=e;(i=i.parentNode)&&i!=document.body;)t-=i.scrollLeft||0,curtop-=i.scrollTop||0;do t+=e.offsetLeft,curtop+=e.offsetTop;while(e=e.offsetParent);return[t,curtop]}function h(){return V.innerHeight?[V.innerWidth,V.innerHeight]:document.documentElement&&document.documentElement.clientHeight?[document.documentElement.clientWidth,document.documentElement.clientHeight]:document.body?[document.body.clientWidth,document.body.clientHeight]:[0,0]}function c(){var e=document.getElementsByTagName("html")[0];return e.scrollTop&&document.documentElement.scrollTop?[e.scrollLeft,e.scrollTop]:e.scrollTop||document.documentElement.scrollTop?[e.scrollLeft+document.documentElement.scrollLeft,e.scrollTop+document.documentElement.scrollTop]:document.body.scrollTop?[document.body.scrollLeft,document.body.scrollTop]:[0,0]}function I(e,t){if(e.currentStyle)var i=e.currentStyle[t];else if(window.getComputedStyle)var i=window.getComputedStyle(e,null)[t];return i}var V=this,K=t||{};if(V.keyInputCallback=s||function(){},this.VKI_version="1.49",this.VKI_showVersion=void 0!==K.showVersion?K.showVersion:!1,this.VKI_target=!1,this.VKI_shift=this.VKI_shiftlock=!1,this.VKI_altgr=this.VKI_altgrlock=!1,this.VKI_dead=!1,this.VKI_deadBox=!0,this.VKI_deadkeysOn=void 0!==K.deadkeysOn?K.deadkeysOn:!0,this.VKI_numberPad=void 0!==K.numberPad?K.numberPad:!1,this.VKI_numberPadOn=!1,this.VKI_kts=this.VKI_kt=K.kt||"US International",this.VKI_langAdapt=!K.kt,this.VKI_size=K.size>=1&&K.size<=5?K.size:3,this.VKI_sizeAdj=K.sizeAdj===!1?!1:!0,this.VKI_clearPasswords=!1,this.VKI_imageURI=void 0!==K.imageURI?K.imageURI:"",this.VKI_clickless=0,this.VKI_activeTab=0,this.VKI_keyCenter=K.keyCenter||3,this.VKI_forcePosition=K.forcePosition||!1,this.VKI_relative=K.relative===!1?!1:!0,this.VKI_isIE=!1,this.VKI_isIE6=!1,this.VKI_isIElt8=!1,this.VKI_isWebKit=RegExp("KHTML").test(navigator.userAgent),this.VKI_isOpera=RegExp("Opera").test(navigator.userAgent),this.VKI_isMoz=!this.VKI_isWebKit&&"Gecko"==navigator.product,this.VKI_enterSubmit=K.enterSubmit||!1,this.VKI_showKbSelect=K.showKbSelect||!1,this.VKI_i18n=K.i18n,this.VKI_layout=i,this.VKI_deadkey=a,this.VKI_symbol={" ":"NB\nSP","​":"ZW\nSP","‌":"ZW\nNJ","‍":"ZW\nJ"},this.VKI_numpad=[[["$"],["£"],["€"],["¥"]],[["7"],["8"],["9"],["/"]],[["4"],["5"],["6"],["*"]],[["1"],["2"],["3"],["-"]],[["0"],["."],["="],["+"]]],V.attachVki=function(t){if(t.getAttribute("VKI_attached"))return!1;if(V.VKI_imageURI){var i=document.createElement("img");i.src=V.VKI_imageURI,i.alt=V.VKI_i18n["01"],i.className="keyboardInputInitiator",i.title=V.VKI_i18n["01"],i.elem=t,i.onclick=function(e){e=e||event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,V.VKI_show(this.elem)},t.parentNode.insertBefore(i,"rtl"==t.dir?t:t.nextSibling)}else t.onfocus=function(){V.VKI_target!=this&&(V.VKI_target&&V.VKI_close(!1),V.VKI_show(this))},t.onclick=function(){V.VKI_target||V.VKI_show(this)};t.setAttribute("VKI_attached","true"),V.VKI_isIE&&(t.onclick=t.onselect=t.onkeyup=function(e){"keyup"==(e||event).type&&this.readOnly||(this.range=document.selection.createRange())}),l(t,"click",function(e){return V.VKI_target==this&&(e=e||event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0),!1},!1),V.VKI_isMoz&&t.addEventListener("blur",function(){this.setAttribute("_scrollTop",this.scrollTop)},!1),l(document.documentElement,"click",function(){V.VKI_close(!1)},!1),e.element(t).bind("VKI_close",function(){V.VKI_close(!1)})},this.VKI_keyboard=document.createElement("table"),this.VKI_keyboard.className="keyboardInputMaster",this.VKI_relative&&(V.VKI_keyboard.className+=" relativeKeyboard"),this.VKI_keyboard.dir="ltr",this.VKI_keyboard.cellSpacing="0",this.VKI_keyboard.reflow=function(){this.style.width="50px";this.offsetWidth;this.style.width=""},l(this.VKI_keyboard,"click",function(e){return e=e||event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,!1},!1),!this.VKI_layout[this.VKI_kt])return alert('No keyboard named "'+this.VKI_kt+'"');this.VKI_langCode={};var _=document.createElement("thead"),u=document.createElement("tr"),f=document.createElement("th");if(f.colSpan="2",V.VKI_showKbSelect){var m=document.createElement("div");m.title=this.VKI_i18n["02"],l(m,"click",function(){var e=this.getElementsByTagName("ol")[0];if(e.style.display)e.style.display="";else{e.style.display="block";for(var t=e.getElementsByTagName("li"),i=0,a=0;i<t.length;i++)VKI_kt==t[i].firstChild.nodeValue?(t[i].className="selected",a=t[i].offsetTop-2*t[i].offsetHeight):t[i].className="";setTimeout(function(){e.scrollTop=a},0)}},!1),m.appendChild(document.createTextNode(this.VKI_kt)),m.appendChild(document.createTextNode(this.VKI_isIElt8?" ↓":" ▾")),m.langCount=0;var g=document.createElement("ol");for(ktype in this.VKI_layout)if("object"==typeof this.VKI_layout[ktype]){this.VKI_layout[ktype].lang||(this.VKI_layout[ktype].lang=[]);for(var p=0;p<this.VKI_layout[ktype].lang.length;p++)this.VKI_langCode[this.VKI_layout[ktype].lang[p].toLowerCase().replace(/-/g,"_")]=ktype;var y=document.createElement("li");y.title=this.VKI_layout[ktype].name,l(y,"click",function(e){e=e||event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,this.parentNode.style.display="",V.VKI_kts=V.VKI_kt=m.firstChild.nodeValue=this.firstChild.nodeValue,V.VKI_buildKeys(),V.VKI_position(!0)},!1),r(y),y.appendChild(document.createTextNode(ktype)),g.appendChild(y),m.langCount++}m.appendChild(g),m.langCount>1&&f.appendChild(m),this.VKI_langCode.index=[];for(prop in this.VKI_langCode)"index"!=prop&&"string"==typeof this.VKI_langCode[prop]&&this.VKI_langCode.index.push(prop);this.VKI_langCode.index.sort(),this.VKI_langCode.index.reverse()}if(this.VKI_numberPad){var k=document.createElement("span");k.appendChild(document.createTextNode("#")),k.title=this.VKI_i18n["00"],l(k,"click",function(){z.style.display=z.style.display?"":"none",V.VKI_position(!0),V.VKI_target.focus()},!1),r(k),f.appendChild(k)}if(this.VKI_kbsize=function(){V.VKI_size=Math.min(5,Math.max(1,V.VKI_size)),V.VKI_keyboard.className=V.VKI_keyboard.className.replace(/ ?keyboardInputSize\d ?/,""),2!=V.VKI_size&&(V.VKI_keyboard.className+=" keyboardInputSize"+V.VKI_size),V.VKI_position(!0),V.VKI_isOpera&&V.VKI_keyboard.reflow()},this.VKI_sizeAdj){var b=document.createElement("small");b.title=this.VKI_i18n[10],l(b,"click",function(){--V.VKI_size,V.VKI_kbsize(),V.VKI_target.focus()},!1),r(b),b.appendChild(document.createTextNode(this.VKI_isIElt8?"↓":"⇓")),f.appendChild(b);var v=document.createElement("big");v.title=this.VKI_i18n[11],l(v,"click",function(){++V.VKI_size,V.VKI_kbsize(),V.VKI_target.focus()},!1),r(v),v.appendChild(document.createTextNode(this.VKI_isIElt8?"↑":"⇑")),f.appendChild(v)}var k=document.createElement("span");k.appendChild(document.createTextNode(this.VKI_i18n["07"])),k.title=this.VKI_i18n["08"],l(k,"click",function(){return V.VKI_target.value="",V.VKI_target.focus(),V.keyInputCallback(),!1},!1),r(k),f.appendChild(k);var C=document.createElement("strong");C.appendChild(document.createTextNode("X")),C.title=this.VKI_i18n["06"],l(C,"click",function(){V.VKI_close(!0)},!1),r(C),f.appendChild(C),u.appendChild(f),_.appendChild(u),this.VKI_keyboard.appendChild(_);var E=document.createElement("tbody"),u=document.createElement("tr"),N=document.createElement("td");N.className="keyboardsArea";var T=document.createElement("table"),x=document.createElement("tr"),w=document.createElement("td");w.className="keyboardInputTextPad";var A=document.createElement("div");if(this.VKI_deadBox){var S=document.createElement("label"),O=document.createElement("input");O.type="checkbox",O.title=this.VKI_i18n["03"]+": "+(this.VKI_deadkeysOn?this.VKI_i18n["04"]:this.VKI_i18n["05"]),O.defaultChecked=this.VKI_deadkeysOn,l(O,"click",function(){return this.title=V.VKI_i18n["03"]+": "+(this.checked?V.VKI_i18n["04"]:V.VKI_i18n["05"]),V.VKI_modify(""),!0},!1),S.appendChild(O),O.checked=this.VKI_deadkeysOn,A.appendChild(S),this.VKI_deadkeysOn=O}else this.VKI_deadkeysOn.checked=this.VKI_deadkeysOn;if(this.VKI_showVersion){var P=document.createElement("var");P.title=this.VKI_i18n["09"]+" "+this.VKI_version,P.appendChild(document.createTextNode("v"+this.VKI_version)),A.appendChild(P)}w.appendChild(A);var z=document.createElement("td");z.className="keyboardInputNumpad",this.VKI_numberPadOn||(z.style.display="none");var B=document.createElement("table");B.cellSpacing="0";for(var L=document.createElement("tbody"),p=0;p<this.VKI_numpad.length;p++){for(var R=document.createElement("tr"),H=0;H<this.VKI_numpad[p].length;H++){var W=document.createElement("td");l(W,"click",o,!1),r(W),W.appendChild(document.createTextNode(this.VKI_numpad[p][H])),R.appendChild(W)}L.appendChild(R)}return B.appendChild(L),z.appendChild(B),x.appendChild(w),x.appendChild(z),T.appendChild(x),N.appendChild(T),u.appendChild(N),E.appendChild(u),this.VKI_keyboard.appendChild(E),this.VKI_isIE6&&(this.VKI_iframe=document.createElement("iframe"),this.VKI_iframe.style.position="absolute",this.VKI_iframe.style.border="0px none",this.VKI_iframe.style.filter="mask()",this.VKI_iframe.style.zIndex="999999",this.VKI_iframe.src=this.VKI_imageURI),this.VKI_buildKeys=function(){this.VKI_shift=this.VKI_shiftlock=this.VKI_altgr=this.VKI_altgrlock=this.VKI_dead=!1;for(var e=this.VKI_keyboard.tBodies[0].getElementsByTagName("div")[0],t=e.getElementsByTagName("table"),i=t.length-1;i>=0;i--)e.removeChild(t[i]);for(var a,i=0,s=!1;a=this.VKI_layout[this.VKI_kt].keys[i++];){var d=document.createElement("table");d.cellSpacing="0",a.length<=this.VKI_keyCenter&&(d.className="keyboardInputCenter");for(var h,c=document.createElement("tbody"),I=document.createElement("tr"),K=0;h=a[K++];){var _=document.createElement("td");if(this.VKI_symbol[h[0]]){var u=this.VKI_symbol[h[0]].split("\n"),f=document.createElement("small");f.setAttribute("char",h[0]);for(var m=0;m<u.length;m++)m&&f.appendChild(document.createElement("br")),f.appendChild(document.createTextNode(u[m]));_.appendChild(f)}else _.appendChild(document.createTextNode(h[0]||" "));var g=[];if(this.VKI_deadkeysOn.checked)for(key in this.VKI_deadkey)if(key===h[0]){g.push("deadkey");break}switch(a.length>this.VKI_keyCenter&&K==a.length&&g.push("last"),(" "==h[0]||" "==h[1])&&g.push("space"),_.className=g.join(" "),h[1]){case"Caps":case"Shift":case"Alt":case"AltGr":case"AltLk":l(_,"click",function(e){return function(){return V.VKI_modify(e),!1}}(h[1]),!1);break;case"Tab":l(_,"click",function(){if(V.VKI_activeTab)if(V.VKI_target.form){var e=V.VKI_target,t=e.form.elements;V.VKI_close(!1);for(var i=0,a=!1,s=-1;i<t.length;i++)if(-1==s&&t[i].getAttribute("VKI_attached")&&(s=i),a){if(1==V.VKI_activeTab&&t[i])break;if(t[i].getAttribute("VKI_attached"))break}else t[i]==e&&(a=!0);i==t.length&&(i=Math.max(s,0)),t[i].getAttribute("VKI_attached")?V.VKI_show(t[i]):t[i].focus()}else V.VKI_target.focus();else V.VKI_insert(" ");return!1},!1);break;case"Bksp":l(_,"click",function(){if(V.VKI_target.focus(),V.VKI_target.setSelectionRange&&n(V.VKI_target)&&!V.VKI_target.readOnly){var e=[V.VKI_target.selectionStart,V.VKI_target.selectionEnd];e[0]<e[1]&&e[0]++,V.VKI_target.value=V.VKI_target.value.substr(0,e[0]-1)+V.VKI_target.value.substr(e[1]),V.VKI_target.setSelectionRange(e[0]-1,e[0]-1)}else if(V.VKI_target.createTextRange&&!V.VKI_target.readOnly){try{V.VKI_target.range.select()}catch(t){V.VKI_target.range=document.selection.createRange()}V.VKI_target.range.text.length||V.VKI_target.range.moveStart("character",-1),V.VKI_target.range.text=""}else V.VKI_target.value=V.VKI_target.value.substr(0,V.VKI_target.value.length-1);return V.VKI_shift&&V.VKI_modify("Shift"),V.VKI_altgr&&V.VKI_modify("AltGr"),V.VKI_target.focus(),V.keyInputCallback(),!0},!1);break;case"Enter":l(_,"click",function(){if("TEXTAREA"!=V.VKI_target.nodeName){if("function"==typeof V.VKI_enterSubmit)V.VKI_enterSubmit.apply({},[V.VKI_target.value]);else if(V.VKI_enterSubmit&&V.VKI_target.form){for(var e=0,t=!1;e<V.VKI_target.form.elements.length;e++)"submit"==V.VKI_target.form.elements[e].type&&(t=!0);t||V.VKI_target.form.submit()}V.VKI_close(!1)}else V.VKI_insert("\n");return!0},!1);break;default:l(_,"click",o,!1)}r(_),I.appendChild(_);for(var m=0;4>m;m++)this.VKI_deadkey[h[m]=h[m]||""]&&(s=!0)}c.appendChild(I),d.appendChild(c),e.appendChild(d)}this.VKI_deadBox&&(this.VKI_deadkeysOn.style.display=s?"inline":"none"),this.VKI_isIE6&&(this.VKI_iframe.style.width=this.VKI_keyboard.offsetWidth+"px",this.VKI_iframe.style.height=this.VKI_keyboard.offsetHeight+"px")},this.VKI_buildKeys(),l(this.VKI_keyboard,"selectstart",function(){return!1},!1),this.VKI_keyboard.unselectable="on",this.VKI_isOpera&&l(this.VKI_keyboard,"mousedown",function(){return!1},!1),this.VKI_modify=function(e){switch(e){case"Alt":case"AltGr":this.VKI_altgr=!this.VKI_altgr;break;case"AltLk":this.VKI_altgr=0,this.VKI_altgrlock=!this.VKI_altgrlock;break;case"Caps":this.VKI_shift=0,this.VKI_shiftlock=!this.VKI_shiftlock;break;case"Shift":this.VKI_shift=!this.VKI_shift}var t=0;!this.VKI_shift!=!this.VKI_shiftlock&&(t+=1),!this.VKI_altgr!=!this.VKI_altgrlock&&(t+=2);for(var i=this.VKI_keyboard.tBodies[0].getElementsByTagName("div")[0].getElementsByTagName("table"),a=0;a<i.length;a++)for(var s=i[a].getElementsByTagName("td"),n=0;n<s.length;n++){var r=[],o=this.VKI_layout[this.VKI_kt].keys[a][n];switch(o[1]){case"Alt":case"AltGr":this.VKI_altgr&&r.push("pressed"),V.VKI_target.focus();break;case"AltLk":this.VKI_altgrlock&&r.push("pressed"),V.VKI_target.focus();break;case"Shift":this.VKI_shift&&r.push("pressed"),V.VKI_target.focus();break;case"Caps":this.VKI_shiftlock&&r.push("pressed"),V.VKI_target.focus();break;case"Tab":case"Bksp":V.VKI_target.focus();case"Enter":break;default:if(e)if(s[n].removeChild(s[n].firstChild),this.VKI_symbol[o[t]]){var l=this.VKI_symbol[o[t]].split("\n"),d=document.createElement("small");d.setAttribute("char",o[t]);for(var h=0;h<l.length;h++)h&&d.appendChild(document.createElement("br")),d.appendChild(document.createTextNode(l[h]));s[n].appendChild(d)}else s[n].appendChild(document.createTextNode(o[t]||" "));if(this.VKI_deadkeysOn.checked){var c=s[n].firstChild.nodeValue||s[n].firstChild.className;this.VKI_dead&&(c==this.VKI_dead&&r.push("pressed"),this.VKI_deadkey[this.VKI_dead][c]&&r.push("target")),this.VKI_deadkey[c]&&r.push("deadkey")}}n==s.length-1&&s.length>this.VKI_keyCenter&&r.push("last"),(" "==o[0]||" "==o[1])&&r.push("space"),s[n].className=r.join(" ")}},this.VKI_insert=function(e){if(this.VKI_target.focus(),this.VKI_target.maxLength&&(this.VKI_target.maxlength=this.VKI_target.maxLength),"undefined"==typeof this.VKI_target.maxlength||this.VKI_target.maxlength<0||this.VKI_target.value.length<this.VKI_target.maxlength){if(this.VKI_target.setSelectionRange&&n(this.VKI_target)&&!this.VKI_target.readOnly&&!this.VKI_isIE){var t=[this.VKI_target.selectionStart,this.VKI_target.selectionEnd];this.VKI_target.value=this.VKI_target.value.substr(0,t[0])+e+this.VKI_target.value.substr(t[1]),"\n"==e&&this.VKI_isOpera&&t[0]++,this.VKI_target.setSelectionRange(t[0]+e.length,t[0]+e.length)}else if(this.VKI_target.createTextRange&&!this.VKI_target.readOnly){try{this.VKI_target.range.select()}catch(i){this.VKI_target.range=document.selection.createRange()}this.VKI_target.range.text=e,this.VKI_target.range.collapse(!0),this.VKI_target.range.select()}else this.VKI_target.value+=e;this.VKI_shift&&this.VKI_modify("Shift"),this.VKI_altgr&&this.VKI_modify("AltGr"),this.VKI_target.focus(),this.keyInputCallback()}else this.VKI_target.createTextRange&&this.VKI_target.range&&this.VKI_target.range.select()},this.VKI_show=function(e){if(this.VKI_target)this.VKI_close(!1);else{if(this.VKI_target=e,this.VKI_langAdapt&&this.VKI_target.lang){for(var t=!1,i=this.VKI_target.lang.toLowerCase().replace(/-/g,"_"),a=0,t=!1;!t&&a<this.VKI_langCode.index.length;a++)0==i.indexOf(this.VKI_langCode.index[a])&&V.VKI_showKbSelect&&(t=m.firstChild.nodeValue=this.VKI_kt=this.VKI_langCode[this.VKI_langCode.index[a]]);t&&this.VKI_buildKeys()}this.VKI_isIE&&(this.VKI_target.range||(this.VKI_target.range=this.VKI_target.createTextRange(),this.VKI_target.range.moveStart("character",this.VKI_target.value.length)),this.VKI_target.range.select());try{this.VKI_keyboard.parentNode.removeChild(this.VKI_keyboard)}catch(s){}this.VKI_clearPasswords&&"password"==this.VKI_target.type&&(this.VKI_target.value="");var e=this.VKI_target;this.VKI_target.keyboardPosition="absolute";do if("fixed"==I(e,"position")){this.VKI_target.keyboardPosition="fixed";break}while(e=e.offsetParent);this.VKI_isIE6&&document.body.appendChild(this.VKI_iframe),document.body.appendChild(this.VKI_keyboard),this.VKI_keyboard.style.position=this.VKI_target.keyboardPosition,this.VKI_isOpera&&this.VKI_keyboard.reflow(),this.VKI_position(!0),(V.VKI_isMoz||V.VKI_isWebKit)&&this.VKI_position(!0),this.VKI_target.blur(),this.VKI_target.focus(),this.VKI_closeOthers()}},this.VKI_closeOthers=function(){function t(t){if("true"===t.getAttribute("VKI_attached")&&!e.equals(V.VKI_target,t)){var i=e.element(t);i.triggerHandler("VKI_close")}}e.forEach(e.element(document).find("input"),t),e.forEach(e.element(document).find("textarea"),t)},this.VKI_position=function(e){if(!V.VKI_relative)return V.VKI_keyboard.style.position="fixed",V.VKI_keyboard.style.bottom="0px",V.VKI_keyboard.style.left="0px",void(V.VKI_keyboard.style.width="100%");if(V.VKI_target){var t=d(V.VKI_keyboard),i=h(),a=c(),s=!1,n=V.VKI_target.offsetHeight+3;if("top"===V.VKI_forcePosition&&(n=-V.VKI_keyboard.offsetHeight-3),e!==!0&&(t[1]+V.VKI_keyboard.offsetHeight-a[1]-i[1]>0&&"bottom"!==V.VKI_forcePosition?(s=!0,n=-V.VKI_keyboard.offsetHeight-3):t[1]-a[1]<0&&(s=!0)),s||e===!0){for(var r=d(V.VKI_target),o=V.VKI_target;(o=o.parentNode)&&o!=document.body;)if(o.scrollHeight>o.offsetHeight||o.scrollWidth>o.offsetWidth){o.getAttribute("VKI_scrollListener")||(o.setAttribute("VKI_scrollListener",!0),l(o,"scroll",function(){V.VKI_position(!0)},!1));var I=d(o),K=r[1]-I[1],_=r[0]-I[0],u=K+V.VKI_target.offsetHeight,f=_+V.VKI_target.offsetWidth,m=o.offsetHeight-K-V.VKI_target.offsetHeight,g=o.offsetWidth-_-V.VKI_target.offsetWidth;V.VKI_keyboard.style.display=0>u||0>f||0>m||0>g?"none":"",V.VKI_isIE6&&(V.VKI_iframe.style.display=0>u||0>f||0>m||0>g?"none":"")}V.VKI_keyboard.style.top=r[1]-("fixed"!=V.VKI_target.keyboardPosition||V.VKI_isIE||V.VKI_isMoz?0:a[1])+n+"px",V.VKI_keyboard.style.left=Math.max(10,Math.min(i[0]-V.VKI_keyboard.offsetWidth-25,r[0]))+"px",V.VKI_isIE6&&(V.VKI_iframe.style.width=V.VKI_keyboard.offsetWidth+"px",V.VKI_iframe.style.height=V.VKI_keyboard.offsetHeight+"px",V.VKI_iframe.style.top=V.VKI_keyboard.style.top,V.VKI_iframe.style.left=V.VKI_keyboard.style.left)}e===!0&&V.VKI_position()}},this.VKI_close=function(e){if(this.VKI_target){try{this.VKI_keyboard.parentNode.removeChild(this.VKI_keyboard),this.VKI_isIE6&&this.VKI_iframe.parentNode.removeChild(this.VKI_iframe)}catch(t){}this.VKI_showKbSelect&&(this.VKI_kt!=this.VKI_kts&&(m.firstChild.nodeValue=this.VKI_kt=this.VKI_kts,this.VKI_buildKeys()),m.getElementsByTagName("ol")[0].style.display=""),e&&this.VKI_target.focus(),this.VKI_isIE?setTimeout(function(){V.VKI_target=!1},0):this.VKI_target=!1}},l(window,"resize",this.VKI_position,!1),l(window,"scroll",this.VKI_position,!1),this.VKI_kbsize(),V};e.module("angular-virtual-keyboard",[]).constant("VKI_CONFIG",{layout:{"US International":{name:"US International",keys:[[["`","~"],["1","!","¡","¹"],["2","@","²"],["3","#","³"],["4","$","¤","£"],["5","%","€"],["6","^","¼"],["7","&","½"],["8","*","¾"],["9","(","‘"],["0",")","’"],["-","_","¥"],["=","+","×","÷"],["Bksp","Bksp"]],[["Tab","Tab"],["q","Q","ä","Ä"],["w","W","å","Å"],["e","E","é","É"],["r","R","®"],["t","T","þ","Þ"],["y","Y","ü","Ü"],["u","U","ú","Ú"],["i","I","í","Í"],["o","O","ó","Ó"],["p","P","ö","Ö"],["[","{","«"],["]","}","»"],["\\","|","¬","¦"]],[["Caps","Caps"],["a","A","á","Á"],["s","S","ß","§"],["d","D","ð","Ð"],["f","F"],["g","G"],["h","H"],["j","J"],["k","K"],["l","L","ø","Ø"],[";",":","¶","°"],["'",'"',"´","¨"],["Enter","Enter"]],[["Shift","Shift"],["z","Z","æ","Æ"],["x","X"],["c","C","©","¢"],["v","V"],["b","B"],["n","N","ñ","Ñ"],["m","M","µ"],[",","<","ç","Ç"],[".",">"],["/","?","¿"],["Shift","Shift"]],[[" "," "," "," "],["Alt","Alt"]]],lang:["en"]}},deadkey:{"~":{a:"ã",l:"ł",n:"ñ",o:"õ",A:"Ã",L:"Ł",N:"Ñ",O:"Õ"},"^":{a:"â",e:"ê",i:"î",o:"ô",u:"û",w:"ŵ",y:"ŷ",A:"Â",E:"Ê",I:"Î",O:"Ô",U:"Û",W:"Ŵ",Y:"Ŷ"},"`":{a:"à",e:"è",i:"ì",o:"ò",u:"ù","ü":"ǜ",A:"À",E:"È",I:"Ì",O:"Ò",U:"Ù","Ü":"Ǜ"},"'":{a:"á",e:"é",i:"í",o:"ó",u:"ú",y:"ý","α":"ά","ε":"έ","η":"ή","ι":"ί","ο":"ό","υ":"ύ","ω":"ώ","ü":"ǘ",A:"Á",E:"É",I:"Í",O:"Ó",U:"Ú",Y:"Ý","Α":"Ά","Ε":"Έ","Η":"Ή","Ι":"Ί","Ο":"Ό","Υ":"Ύ","Ω":"Ώ","Ü":"Ǘ"},"´":{a:"á",e:"é",i:"í",o:"ó",u:"ú",y:"ý","α":"ά","ε":"έ","η":"ή","ι":"ί","ο":"ό","υ":"ύ","ω":"ώ","ü":"ǘ",A:"Á",E:"É",I:"Í",O:"Ó",U:"Ú",Y:"Ý","Α":"Ά","Ε":"Έ","Η":"Ή","Ι":"Ί","Ο":"Ό","Υ":"Ύ","Ω":"Ώ","Ü":"Ǘ"},"¨":{a:"ä",e:"ë",i:"ï",o:"ö",u:"ü",y:"ÿ","ι":"ϊ","υ":"ϋ","ū":"ǖ","ú":"ǘ","ǔ":"ǚ","ù":"ǜ",A:"Ä",E:"Ë",I:"Ï",O:"Ö",U:"Ü",Y:"Ÿ","Ι":"Ϊ","Υ":"Ϋ","Ū":"Ǖ","Ú":"Ǘ","Ǔ":"Ǚ","Ù":"Ǜ","か":"が","き":"ぎ","く":"ぐ","け":"げ","こ":"ご","た":"だ","ち":"ぢ","つ":"づ","て":"で","と":"ど","さ":"ざ","し":"じ","す":"ず","せ":"ぜ","そ":"ぞ","は":"ば","ひ":"び","ふ":"ぶ","へ":"べ","ほ":"ぼ","カ":"ガ","キ":"ギ","ク":"グ","ケ":"ゲ","コ":"ゴ","タ":"ダ","チ":"ヂ","ツ":"ヅ","テ":"デ","ト":"ド","サ":"ザ","シ":"ジ","ス":"ズ","セ":"ゼ","ソ":"ゾ","ハ":"バ","ヒ":"ビ","フ":"ブ","ヘ":"ベ","ホ":"ボ"}},kt:"US International",i18n:{"00":"Display Number Pad","01":"Display virtual keyboard interface","02":"Select keyboard layout","03":"Dead keys","04":"On","05":"Off","06":"Close the keyboard","07":"Clear","08":"Clear this input","09":"Version",10:"Decrease keyboard size",11:"Increase keyboard size"},relative:!0,sizeAdj:!0}).service("ngVirtualKeyboardService",["VKI_CONFIG",function(e){return{attach:function(i,a,s){a=a||{},a.i18n=a.i18n||e.i18n,a.kt=a.kt||e.kt,a.relative=a.relative===!1?!1:e.relative,a.keyCenter=a.keyCenter||e.keyCenter,a.sizeAdj=a.sizeAdj===!1?!1:e.sizeAdj;var n=new t(a,e.layout,e.deadkey,s);n.attachVki(i)}}}]).directive("ngVirtualKeyboard",["ngVirtualKeyboardService","$timeout","$injector",function(e,t,i){return{restrict:"A",require:"?ngModel",scope:{config:"=ngVirtualKeyboard"},link:function(a,s,n,r){if(r){if(i.has("UAParser")){var o=i.get("UAParser"),l=(new o).getResult(),d="mobile"===l.device.type||"tablet"===l.device.type;if(d=d||l.os&&"Android"===l.os.name,d=d||l.os&&"iOS"===l.os.name,d&&a.config.showInMobile!==!0)return}e.attach(s[0],a.config,function(){t(function(){r.$setViewValue(s[0].value)})})}}}}])}(angular);
!function(e){var t=function(t,i,s,a){function n(e){var t=!1;try{t=!isNaN(e.selectionStart)&&!isNaN(e.selectionEnd)}catch(i){}return t}function r(e){"TD"==e.nodeName&&(e.click||(e.click=function(){var e=this.ownerDocument.createEvent("MouseEvents");e.initMouseEvent("click",!0,!0,this.ownerDocument.defaultView,1,0,0,0,0,!1,!1,!1,!1,0,null),this.dispatchEvent(e)}),e.VKI_clickless=0,l(e,"dblclick",function(){return!1},!1)),l(e,"mouseover",function(){if("TD"==this.nodeName&&V.VKI_clickless){var e=this;clearTimeout(this.VKI_clickless),this.VKI_clickless=setTimeout(function(){e.click()},V.VKI_clickless)}V.VKI_isIE&&(this.className+=" hover")},!1),l(e,"mouseout",function(){"TD"==this.nodeName&&clearTimeout(this.VKI_clickless),V.VKI_isIE&&(this.className=this.className.replace(/ ?(hover|pressed) ?/g,""))},!1),l(e,"mousedown",function(){"TD"==this.nodeName&&clearTimeout(this.VKI_clickless),V.VKI_isIE&&(this.className+=" pressed")},!1),l(e,"mouseup",function(){"TD"==this.nodeName&&clearTimeout(this.VKI_clickless),V.VKI_isIE&&(this.className=this.className.replace(/ ?pressed ?/g,""))},!1)}function o(){var e=!1,t=" ";if("small"!=this.firstChild.nodeName.toLowerCase()){if(" "==(t=this.firstChild.nodeValue))return!1}else t=this.firstChild.getAttribute("char");return V.VKI_deadkeysOn.checked&&V.VKI_dead&&(V.VKI_dead!=t?" "!=t?V.VKI_deadkey[V.VKI_dead][t]&&(V.VKI_insert(V.VKI_deadkey[V.VKI_dead][t]),e=!0):(V.VKI_insert(V.VKI_dead),e=!0):e=!0),V.VKI_dead=!1,e||(V.VKI_deadkeysOn.checked&&V.VKI_deadkey[t]?(V.VKI_dead=t,this.className+=" dead",V.VKI_shift&&V.VKI_modify("Shift"),V.VKI_altgr&&V.VKI_modify("AltGr")):V.VKI_insert(t)),V.VKI_modify(""),!1}function l(e,t,i,s){e.addEventListener?e.addEventListener(t,function(t){i.call(e,t)},s):e.attachEvent&&e.attachEvent("on"+t,function(){i.call(e)})}function d(e){for(var t=curtop=0,i=e;(i=i.parentNode)&&i!=document.body;)t-=i.scrollLeft||0,curtop-=i.scrollTop||0;do t+=e.offsetLeft,curtop+=e.offsetTop;while(e=e.offsetParent);return[t,curtop]}function c(){return V.innerHeight?[V.innerWidth,V.innerHeight]:document.documentElement&&document.documentElement.clientHeight?[document.documentElement.clientWidth,document.documentElement.clientHeight]:document.body?[document.body.clientWidth,document.body.clientHeight]:[0,0]}function h(){var e=document.getElementsByTagName("html")[0];return e.scrollTop&&document.documentElement.scrollTop?[e.scrollLeft,e.scrollTop]:e.scrollTop||document.documentElement.scrollTop?[e.scrollLeft+document.documentElement.scrollLeft,e.scrollTop+document.documentElement.scrollTop]:document.body.scrollTop?[document.body.scrollLeft,document.body.scrollTop]:[0,0]}function I(e,t){if(e.currentStyle)var i=e.currentStyle[t];else if(window.getComputedStyle)var i=window.getComputedStyle(e,null)[t];return i}var V=this,K=t||{};if(V.keyInputCallback=a||function(){},this.VKI_version="1.49",this.VKI_showVersion=void 0!==K.showVersion?K.showVersion:!1,this.VKI_target=!1,this.VKI_shift=this.VKI_shiftlock=!1,this.VKI_altgr=this.VKI_altgrlock=!1,this.VKI_dead=!1,this.VKI_deadBox=!0,this.VKI_deadkeysOn=void 0!==K.deadkeysOn?K.deadkeysOn:!0,this.VKI_numberPad=void 0!==K.numberPad?K.numberPad:!1,this.VKI_numberPadOn=!1,this.VKI_kts=this.VKI_kt=K.kt||"US International",this.VKI_langAdapt=!K.kt,this.VKI_size=K.size>=1&&K.size<=5?K.size:3,this.VKI_sizeAdj=K.sizeAdj===!1?!1:!0,this.VKI_clearPasswords=!1,this.VKI_imageURI=void 0!==K.imageURI?K.imageURI:"",this.VKI_clickless=0,this.VKI_activeTab=0,this.VKI_keyCenter=K.keyCenter||3,this.VKI_forcePosition=K.forcePosition||!1,this.VKI_relative=K.relative===!1?!1:!0,this.VKI_customClass=K.customClass||!1,this.VKI_isIE=!1,this.VKI_isIE6=!1,this.VKI_isIElt8=!1,this.VKI_isWebKit=RegExp("KHTML").test(navigator.userAgent),this.VKI_isOpera=RegExp("Opera").test(navigator.userAgent),this.VKI_isMoz=!this.VKI_isWebKit&&"Gecko"==navigator.product,this.VKI_enterSubmit=K.enterSubmit||!1,this.VKI_showKbSelect=K.showKbSelect||!1,this.VKI_i18n=K.i18n,this.VKI_layout=i,this.VKI_deadkey=s,this.VKI_symbol={" ":"NB\nSP","​":"ZW\nSP","‌":"ZW\nNJ","‍":"ZW\nJ"},this.VKI_numpad=[[["$"],["£"],["€"],["¥"]],[["7"],["8"],["9"],["/"]],[["4"],["5"],["6"],["*"]],[["1"],["2"],["3"],["-"]],[["0"],["."],["="],["+"]]],V.attachVki=function(t){if(t.getAttribute("VKI_attached"))return!1;if(V.VKI_imageURI){var i=document.createElement("img");i.src=V.VKI_imageURI,i.alt=V.VKI_i18n["01"],i.className="keyboardInputInitiator",i.title=V.VKI_i18n["01"],i.elem=t,i.onclick=function(e){e=e||event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,V.VKI_show(this.elem)},t.parentNode.insertBefore(i,"rtl"==t.dir?t:t.nextSibling)}else t.onfocus=function(){V.VKI_target!=this&&(V.VKI_target&&V.VKI_close(!1),V.VKI_show(this))},t.onclick=function(){V.VKI_target||V.VKI_show(this)};t.setAttribute("VKI_attached","true"),V.VKI_isIE&&(t.onclick=t.onselect=t.onkeyup=function(e){"keyup"==(e||event).type&&this.readOnly||(this.range=document.selection.createRange())}),l(t,"click",function(e){return V.VKI_target==this&&(e=e||event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0),!1},!1),V.VKI_isMoz&&t.addEventListener("blur",function(){this.setAttribute("_scrollTop",this.scrollTop)},!1),l(document.documentElement,"click",function(){V.VKI_close(!1)},!1),e.element(t).bind("VKI_close",function(){V.VKI_close(!1)})},this.VKI_keyboard=document.createElement("table"),this.VKI_keyboard.className="keyboardInputMaster",this.VKI_relative&&(V.VKI_keyboard.className+=" relativeKeyboard"),this.VKI_customClass&&(V.VKI_keyboard.className+=" "+this.VKI_customClass),this.VKI_keyboard.dir="ltr",this.VKI_keyboard.cellSpacing="0",this.VKI_keyboard.reflow=function(){this.style.width="50px";this.offsetWidth;this.style.width=""},l(this.VKI_keyboard,"click",function(e){return e=e||event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,!1},!1),!this.VKI_layout[this.VKI_kt])return alert('No keyboard named "'+this.VKI_kt+'"');this.VKI_langCode={};var _=document.createElement("thead"),u=document.createElement("tr"),m=document.createElement("th");if(m.colSpan="2",V.VKI_showKbSelect){var f=document.createElement("div");f.title=this.VKI_i18n["02"],l(f,"click",function(){var e=this.getElementsByTagName("ol")[0];if(e.style.display)e.style.display="";else{e.style.display="block";for(var t=e.getElementsByTagName("li"),i=0,s=0;i<t.length;i++)VKI_kt==t[i].firstChild.nodeValue?(t[i].className="selected",s=t[i].offsetTop-2*t[i].offsetHeight):t[i].className="";setTimeout(function(){e.scrollTop=s},0)}},!1),f.appendChild(document.createTextNode(this.VKI_kt)),f.appendChild(document.createTextNode(this.VKI_isIElt8?" ↓":" ▾")),f.langCount=0;var g=document.createElement("ol");for(ktype in this.VKI_layout)if("object"==typeof this.VKI_layout[ktype]){this.VKI_layout[ktype].lang||(this.VKI_layout[ktype].lang=[]);for(var p=0;p<this.VKI_layout[ktype].lang.length;p++)this.VKI_langCode[this.VKI_layout[ktype].lang[p].toLowerCase().replace(/-/g,"_")]=ktype;var y=document.createElement("li");y.title=this.VKI_layout[ktype].name,l(y,"click",function(e){e=e||event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,this.parentNode.style.display="",V.VKI_kts=V.VKI_kt=f.firstChild.nodeValue=this.firstChild.nodeValue,V.VKI_buildKeys(),V.VKI_position(!0)},!1),r(y),y.appendChild(document.createTextNode(ktype)),g.appendChild(y),f.langCount++}f.appendChild(g),f.langCount>1&&m.appendChild(f),this.VKI_langCode.index=[];for(prop in this.VKI_langCode)"index"!=prop&&"string"==typeof this.VKI_langCode[prop]&&this.VKI_langCode.index.push(prop);this.VKI_langCode.index.sort(),this.VKI_langCode.index.reverse()}if(this.VKI_numberPad){var k=document.createElement("span");k.appendChild(document.createTextNode("#")),k.title=this.VKI_i18n["00"],l(k,"click",function(){z.style.display=z.style.display?"":"none",V.VKI_position(!0),V.VKI_target.focus()},!1),r(k),m.appendChild(k)}if(this.VKI_kbsize=function(){V.VKI_size=Math.min(5,Math.max(1,V.VKI_size)),V.VKI_keyboard.className=V.VKI_keyboard.className.replace(/ ?keyboardInputSize\d ?/,""),2!=V.VKI_size&&(V.VKI_keyboard.className+=" keyboardInputSize"+V.VKI_size),V.VKI_position(!0),V.VKI_isOpera&&V.VKI_keyboard.reflow()},this.VKI_sizeAdj){var b=document.createElement("small");b.title=this.VKI_i18n[10],l(b,"click",function(){--V.VKI_size,V.VKI_kbsize(),V.VKI_target.focus()},!1),r(b),b.appendChild(document.createTextNode(this.VKI_isIElt8?"↓":"⇓")),m.appendChild(b);var v=document.createElement("big");v.title=this.VKI_i18n[11],l(v,"click",function(){++V.VKI_size,V.VKI_kbsize(),V.VKI_target.focus()},!1),r(v),v.appendChild(document.createTextNode(this.VKI_isIElt8?"↑":"⇑")),m.appendChild(v)}var k=document.createElement("span");k.appendChild(document.createTextNode(this.VKI_i18n["07"])),k.title=this.VKI_i18n["08"],l(k,"click",function(){return V.VKI_target.value="",V.VKI_target.focus(),V.keyInputCallback(),!1},!1),r(k),m.appendChild(k);var C=document.createElement("strong");C.appendChild(document.createTextNode("X")),C.title=this.VKI_i18n["06"],l(C,"click",function(){V.VKI_close(!0)},!1),r(C),m.appendChild(C),u.appendChild(m),_.appendChild(u),this.VKI_keyboard.appendChild(_);var E=document.createElement("tbody"),u=document.createElement("tr"),N=document.createElement("td");N.className="keyboardsArea";var T=document.createElement("table"),x=document.createElement("tr"),w=document.createElement("td");w.className="keyboardInputTextPad";var A=document.createElement("div");if(this.VKI_deadBox){var S=document.createElement("label"),O=document.createElement("input");O.type="checkbox",O.title=this.VKI_i18n["03"]+": "+(this.VKI_deadkeysOn?this.VKI_i18n["04"]:this.VKI_i18n["05"]),O.defaultChecked=this.VKI_deadkeysOn,l(O,"click",function(){return this.title=V.VKI_i18n["03"]+": "+(this.checked?V.VKI_i18n["04"]:V.VKI_i18n["05"]),V.VKI_modify(""),!0},!1),S.appendChild(O),O.checked=this.VKI_deadkeysOn,A.appendChild(S),this.VKI_deadkeysOn=O}else this.VKI_deadkeysOn.checked=this.VKI_deadkeysOn;if(this.VKI_showVersion){var P=document.createElement("var");P.title=this.VKI_i18n["09"]+" "+this.VKI_version,P.appendChild(document.createTextNode("v"+this.VKI_version)),A.appendChild(P)}w.appendChild(A);var z=document.createElement("td");z.className="keyboardInputNumpad",this.VKI_numberPadOn||(z.style.display="none");var B=document.createElement("table");B.cellSpacing="0";for(var L=document.createElement("tbody"),p=0;p<this.VKI_numpad.length;p++){for(var R=document.createElement("tr"),W=0;W<this.VKI_numpad[p].length;W++){var H=document.createElement("td");l(H,"click",o,!1),r(H),H.appendChild(document.createTextNode(this.VKI_numpad[p][W])),R.appendChild(H)}L.appendChild(R)}return B.appendChild(L),z.appendChild(B),x.appendChild(w),x.appendChild(z),T.appendChild(x),N.appendChild(T),u.appendChild(N),E.appendChild(u),this.VKI_keyboard.appendChild(E),this.VKI_isIE6&&(this.VKI_iframe=document.createElement("iframe"),this.VKI_iframe.style.position="absolute",this.VKI_iframe.style.border="0px none",this.VKI_iframe.style.filter="mask()",this.VKI_iframe.style.zIndex="999999",this.VKI_iframe.src=this.VKI_imageURI),this.VKI_buildKeys=function(){this.VKI_shift=this.VKI_shiftlock=this.VKI_altgr=this.VKI_altgrlock=this.VKI_dead=!1;for(var e=this.VKI_keyboard.tBodies[0].getElementsByTagName("div")[0],t=e.getElementsByTagName("table"),i=t.length-1;i>=0;i--)e.removeChild(t[i]);for(var s,i=0,a=!1;s=this.VKI_layout[this.VKI_kt].keys[i++];){var d=document.createElement("table");d.cellSpacing="0",s.length<=this.VKI_keyCenter&&(d.className="keyboardInputCenter");for(var c,h=document.createElement("tbody"),I=document.createElement("tr"),K=0;c=s[K++];){var _=document.createElement("td");if(this.VKI_symbol[c[0]]){var u=this.VKI_symbol[c[0]].split("\n"),m=document.createElement("small");m.setAttribute("char",c[0]);for(var f=0;f<u.length;f++)f&&m.appendChild(document.createElement("br")),m.appendChild(document.createTextNode(u[f]));_.appendChild(m)}else _.appendChild(document.createTextNode(c[0]||" "));var g=[];if(this.VKI_deadkeysOn.checked)for(key in this.VKI_deadkey)if(key===c[0]){g.push("deadkey");break}switch(s.length>this.VKI_keyCenter&&K==s.length&&g.push("last"),(" "==c[0]||" "==c[1])&&g.push("space"),_.className=g.join(" "),c[1]){case"Caps":case"Shift":case"Alt":case"AltGr":case"AltLk":l(_,"click",function(e){return function(){return V.VKI_modify(e),!1}}(c[1]),!1);break;case"Tab":l(_,"click",function(){if(V.VKI_activeTab)if(V.VKI_target.form){var e=V.VKI_target,t=e.form.elements;V.VKI_close(!1);for(var i=0,s=!1,a=-1;i<t.length;i++)if(-1==a&&t[i].getAttribute("VKI_attached")&&(a=i),s){if(1==V.VKI_activeTab&&t[i])break;if(t[i].getAttribute("VKI_attached"))break}else t[i]==e&&(s=!0);i==t.length&&(i=Math.max(a,0)),t[i].getAttribute("VKI_attached")?V.VKI_show(t[i]):t[i].focus()}else V.VKI_target.focus();else V.VKI_insert(" ");return!1},!1);break;case"Bksp":l(_,"click",function(){if(V.VKI_target.focus(),V.VKI_target.setSelectionRange&&n(V.VKI_target)&&!V.VKI_target.readOnly){var e=[V.VKI_target.selectionStart,V.VKI_target.selectionEnd];e[0]<e[1]&&e[0]++,V.VKI_target.value=V.VKI_target.value.substr(0,e[0]-1)+V.VKI_target.value.substr(e[1]),V.VKI_target.setSelectionRange(e[0]-1,e[0]-1)}else if(V.VKI_target.createTextRange&&!V.VKI_target.readOnly){try{V.VKI_target.range.select()}catch(t){V.VKI_target.range=document.selection.createRange()}V.VKI_target.range.text.length||V.VKI_target.range.moveStart("character",-1),V.VKI_target.range.text=""}else V.VKI_target.value=V.VKI_target.value.substr(0,V.VKI_target.value.length-1);return V.VKI_shift&&V.VKI_modify("Shift"),V.VKI_altgr&&V.VKI_modify("AltGr"),V.VKI_target.focus(),V.keyInputCallback(),!0},!1);break;case"Enter":l(_,"click",function(){if("TEXTAREA"!=V.VKI_target.nodeName){if("function"==typeof V.VKI_enterSubmit)V.VKI_enterSubmit.apply({},[V.VKI_target.value]);else if(V.VKI_enterSubmit&&V.VKI_target.form){for(var e=0,t=!1;e<V.VKI_target.form.elements.length;e++)"submit"==V.VKI_target.form.elements[e].type&&(t=!0);t||V.VKI_target.form.submit()}V.VKI_close(!1)}else V.VKI_insert("\n");return!0},!1);break;default:l(_,"click",o,!1)}r(_),I.appendChild(_);for(var f=0;4>f;f++)this.VKI_deadkey[c[f]=c[f]||""]&&(a=!0)}h.appendChild(I),d.appendChild(h),e.appendChild(d)}this.VKI_deadBox&&(this.VKI_deadkeysOn.style.display=a?"inline":"none"),this.VKI_isIE6&&(this.VKI_iframe.style.width=this.VKI_keyboard.offsetWidth+"px",this.VKI_iframe.style.height=this.VKI_keyboard.offsetHeight+"px")},this.VKI_buildKeys(),l(this.VKI_keyboard,"selectstart",function(){return!1},!1),this.VKI_keyboard.unselectable="on",this.VKI_isOpera&&l(this.VKI_keyboard,"mousedown",function(){return!1},!1),this.VKI_modify=function(e){switch(e){case"Alt":case"AltGr":this.VKI_altgr=!this.VKI_altgr;break;case"AltLk":this.VKI_altgr=0,this.VKI_altgrlock=!this.VKI_altgrlock;break;case"Caps":this.VKI_shift=0,this.VKI_shiftlock=!this.VKI_shiftlock;break;case"Shift":this.VKI_shift=!this.VKI_shift}var t=0;!this.VKI_shift!=!this.VKI_shiftlock&&(t+=1),!this.VKI_altgr!=!this.VKI_altgrlock&&(t+=2);for(var i=this.VKI_keyboard.tBodies[0].getElementsByTagName("div")[0].getElementsByTagName("table"),s=0;s<i.length;s++)for(var a=i[s].getElementsByTagName("td"),n=0;n<a.length;n++){var r=[],o=this.VKI_layout[this.VKI_kt].keys[s][n];switch(o[1]){case"Alt":case"AltGr":this.VKI_altgr&&r.push("pressed"),V.VKI_target.focus();break;case"AltLk":this.VKI_altgrlock&&r.push("pressed"),V.VKI_target.focus();break;case"Shift":this.VKI_shift&&r.push("pressed"),V.VKI_target.focus();break;case"Caps":this.VKI_shiftlock&&r.push("pressed"),V.VKI_target.focus();break;case"Tab":case"Bksp":V.VKI_target.focus();case"Enter":break;default:if(e)if(a[n].removeChild(a[n].firstChild),this.VKI_symbol[o[t]]){var l=this.VKI_symbol[o[t]].split("\n"),d=document.createElement("small");d.setAttribute("char",o[t]);for(var c=0;c<l.length;c++)c&&d.appendChild(document.createElement("br")),d.appendChild(document.createTextNode(l[c]));a[n].appendChild(d)}else a[n].appendChild(document.createTextNode(o[t]||" "));if(this.VKI_deadkeysOn.checked){var h=a[n].firstChild.nodeValue||a[n].firstChild.className;this.VKI_dead&&(h==this.VKI_dead&&r.push("pressed"),this.VKI_deadkey[this.VKI_dead][h]&&r.push("target")),this.VKI_deadkey[h]&&r.push("deadkey")}}n==a.length-1&&a.length>this.VKI_keyCenter&&r.push("last"),(" "==o[0]||" "==o[1])&&r.push("space"),a[n].className=r.join(" ")}},this.VKI_insert=function(e){if(this.VKI_target.focus(),e&&e.length>1&&e.trim&&(e=e.trim()),this.VKI_target.maxLength&&(this.VKI_target.maxlength=this.VKI_target.maxLength),"undefined"==typeof this.VKI_target.maxlength||this.VKI_target.maxlength<0||this.VKI_target.value.length<this.VKI_target.maxlength){if(this.VKI_target.setSelectionRange&&n(this.VKI_target)&&!this.VKI_target.readOnly&&!this.VKI_isIE){var t=[this.VKI_target.selectionStart,this.VKI_target.selectionEnd];this.VKI_target.value=this.VKI_target.value.substr(0,t[0])+e+this.VKI_target.value.substr(t[1]),"\n"==e&&this.VKI_isOpera&&t[0]++,this.VKI_target.setSelectionRange(t[0]+e.length,t[0]+e.length)}else if(this.VKI_target.createTextRange&&!this.VKI_target.readOnly){try{this.VKI_target.range.select()}catch(i){this.VKI_target.range=document.selection.createRange()}this.VKI_target.range.text=e,this.VKI_target.range.collapse(!0),this.VKI_target.range.select()}else this.VKI_target.value+=e;this.VKI_shift&&this.VKI_modify("Shift"),this.VKI_altgr&&this.VKI_modify("AltGr"),this.VKI_target.focus(),this.keyInputCallback()}else this.VKI_target.createTextRange&&this.VKI_target.range&&this.VKI_target.range.select()},this.VKI_show=function(e){if(this.VKI_target)this.VKI_close(!1);else{if(this.VKI_target=e,this.VKI_langAdapt&&this.VKI_target.lang){for(var t=!1,i=this.VKI_target.lang.toLowerCase().replace(/-/g,"_"),s=0,t=!1;!t&&s<this.VKI_langCode.index.length;s++)0==i.indexOf(this.VKI_langCode.index[s])&&V.VKI_showKbSelect&&(t=f.firstChild.nodeValue=this.VKI_kt=this.VKI_langCode[this.VKI_langCode.index[s]]);t&&this.VKI_buildKeys()}this.VKI_isIE&&(this.VKI_target.range||(this.VKI_target.range=this.VKI_target.createTextRange(),this.VKI_target.range.moveStart("character",this.VKI_target.value.length)),this.VKI_target.range.select());try{this.VKI_keyboard.parentNode.removeChild(this.VKI_keyboard)}catch(a){}this.VKI_clearPasswords&&"password"==this.VKI_target.type&&(this.VKI_target.value="");var e=this.VKI_target;this.VKI_target.keyboardPosition="absolute";do if("fixed"==I(e,"position")){this.VKI_target.keyboardPosition="fixed";break}while(e=e.offsetParent);this.VKI_isIE6&&document.body.appendChild(this.VKI_iframe),document.body.appendChild(this.VKI_keyboard),this.VKI_keyboard.style.position=this.VKI_target.keyboardPosition,this.VKI_isOpera&&this.VKI_keyboard.reflow(),this.VKI_position(!0),(V.VKI_isMoz||V.VKI_isWebKit)&&this.VKI_position(!0),this.VKI_target.blur(),this.VKI_target.focus(),this.VKI_closeOthers()}},this.VKI_closeOthers=function(){function t(t){if("true"===t.getAttribute("VKI_attached")&&!e.equals(V.VKI_target,t)){var i=e.element(t);i.triggerHandler("VKI_close")}}e.forEach(e.element(document).find("input"),t),e.forEach(e.element(document).find("textarea"),t)},this.VKI_position=function(e){if(!V.VKI_relative)return V.VKI_keyboard.style.position="fixed",V.VKI_keyboard.style.bottom="0px",V.VKI_keyboard.style.left="0px",void(V.VKI_keyboard.style.width="100%");if(V.VKI_target){var t=d(V.VKI_keyboard),i=c(),s=h(),a=!1,n=V.VKI_target.offsetHeight+3;if("top"===V.VKI_forcePosition&&(n=-V.VKI_keyboard.offsetHeight-3),e!==!0&&(t[1]+V.VKI_keyboard.offsetHeight-s[1]-i[1]>0&&"bottom"!==V.VKI_forcePosition?(a=!0,n=-V.VKI_keyboard.offsetHeight-3):t[1]-s[1]<0&&(a=!0)),a||e===!0){for(var r=d(V.VKI_target),o=V.VKI_target;(o=o.parentNode)&&o!=document.body;)if(o.scrollHeight>o.offsetHeight||o.scrollWidth>o.offsetWidth){o.getAttribute("VKI_scrollListener")||(o.setAttribute("VKI_scrollListener",!0),l(o,"scroll",function(){V.VKI_position(!0)},!1));var I=d(o),K=r[1]-I[1],_=r[0]-I[0],u=K+V.VKI_target.offsetHeight,m=_+V.VKI_target.offsetWidth,f=o.offsetHeight-K-V.VKI_target.offsetHeight,g=o.offsetWidth-_-V.VKI_target.offsetWidth;V.VKI_keyboard.style.display=0>u||0>m||0>f||0>g?"none":"",V.VKI_isIE6&&(V.VKI_iframe.style.display=0>u||0>m||0>f||0>g?"none":"")}V.VKI_keyboard.style.top=r[1]-("fixed"!=V.VKI_target.keyboardPosition||V.VKI_isIE||V.VKI_isMoz?0:s[1])+n+"px",V.VKI_keyboard.style.left=Math.max(10,Math.min(i[0]-V.VKI_keyboard.offsetWidth-25,r[0]))+"px",V.VKI_isIE6&&(V.VKI_iframe.style.width=V.VKI_keyboard.offsetWidth+"px",V.VKI_iframe.style.height=V.VKI_keyboard.offsetHeight+"px",V.VKI_iframe.style.top=V.VKI_keyboard.style.top,V.VKI_iframe.style.left=V.VKI_keyboard.style.left)}e===!0&&V.VKI_position()}},this.VKI_close=function(e){if(this.VKI_target){try{this.VKI_keyboard.parentNode.removeChild(this.VKI_keyboard),this.VKI_isIE6&&this.VKI_iframe.parentNode.removeChild(this.VKI_iframe)}catch(t){}this.VKI_showKbSelect&&(this.VKI_kt!=this.VKI_kts&&(f.firstChild.nodeValue=this.VKI_kt=this.VKI_kts,this.VKI_buildKeys()),f.getElementsByTagName("ol")[0].style.display=""),e&&this.VKI_target.focus(),this.VKI_isIE?setTimeout(function(){V.VKI_target=!1},0):this.VKI_target=!1}},l(window,"resize",this.VKI_position,!1),l(window,"scroll",this.VKI_position,!1),this.VKI_kbsize(),V};e.module("angular-virtual-keyboard",[]).constant("VKI_CONFIG",{layout:{"US International":{name:"US International",keys:[[["`","~"],["1","!","¡","¹"],["2","@","²"],["3","#","³"],["4","$","¤","£"],["5","%","€"],["6","^","¼"],["7","&","½"],["8","*","¾"],["9","(","‘"],["0",")","’"],["-","_","¥"],["=","+","×","÷"],["Bksp","Bksp"]],[["Tab","Tab"],["q","Q","ä","Ä"],["w","W","å","Å"],["e","E","é","É"],["r","R","®"],["t","T","þ","Þ"],["y","Y","ü","Ü"],["u","U","ú","Ú"],["i","I","í","Í"],["o","O","ó","Ó"],["p","P","ö","Ö"],["[","{","«"],["]","}","»"],["\\","|","¬","¦"]],[["Caps","Caps"],["a","A","á","Á"],["s","S","ß","§"],["d","D","ð","Ð"],["f","F"],["g","G"],["h","H"],["j","J"],["k","K"],["l","L","ø","Ø"],[";",":","¶","°"],["'",'"',"´","¨"],["Enter","Enter"]],[["Shift","Shift"],["z","Z","æ","Æ"],["x","X"],["c","C","©","¢"],["v","V"],["b","B"],["n","N","ñ","Ñ"],["m","M","µ"],[",","<","ç","Ç"],[".",">"],["/","?","¿"],["Shift","Shift"]],[[" "," "," "," "],["Alt","Alt"]]],lang:["en"]}},deadkey:{"~":{a:"ã",l:"ł",n:"ñ",o:"õ",A:"Ã",L:"Ł",N:"Ñ",O:"Õ"},"^":{a:"â",e:"ê",i:"î",o:"ô",u:"û",w:"ŵ",y:"ŷ",A:"Â",E:"Ê",I:"Î",O:"Ô",U:"Û",W:"Ŵ",Y:"Ŷ"},"`":{a:"à",e:"è",i:"ì",o:"ò",u:"ù","ü":"ǜ",A:"À",E:"È",I:"Ì",O:"Ò",U:"Ù","Ü":"Ǜ"},"'":{a:"á",e:"é",i:"í",o:"ó",u:"ú",y:"ý","α":"ά","ε":"έ","η":"ή","ι":"ί","ο":"ό","υ":"ύ","ω":"ώ","ü":"ǘ",A:"Á",E:"É",I:"Í",O:"Ó",U:"Ú",Y:"Ý","Α":"Ά","Ε":"Έ","Η":"Ή","Ι":"Ί","Ο":"Ό","Υ":"Ύ","Ω":"Ώ","Ü":"Ǘ"},"´":{a:"á",e:"é",i:"í",o:"ó",u:"ú",y:"ý","α":"ά","ε":"έ","η":"ή","ι":"ί","ο":"ό","υ":"ύ","ω":"ώ","ü":"ǘ",A:"Á",E:"É",I:"Í",O:"Ó",U:"Ú",Y:"Ý","Α":"Ά","Ε":"Έ","Η":"Ή","Ι":"Ί","Ο":"Ό","Υ":"Ύ","Ω":"Ώ","Ü":"Ǘ"},"¨":{a:"ä",e:"ë",i:"ï",o:"ö",u:"ü",y:"ÿ","ι":"ϊ","υ":"ϋ","ū":"ǖ","ú":"ǘ","ǔ":"ǚ","ù":"ǜ",A:"Ä",E:"Ë",I:"Ï",O:"Ö",U:"Ü",Y:"Ÿ","Ι":"Ϊ","Υ":"Ϋ","Ū":"Ǖ","Ú":"Ǘ","Ǔ":"Ǚ","Ù":"Ǜ","か":"が","き":"ぎ","く":"ぐ","け":"げ","こ":"ご","た":"だ","ち":"ぢ","つ":"づ","て":"で","と":"ど","さ":"ざ","し":"じ","す":"ず","せ":"ぜ","そ":"ぞ","は":"ば","ひ":"び","ふ":"ぶ","へ":"べ","ほ":"ぼ","カ":"ガ","キ":"ギ","ク":"グ","ケ":"ゲ","コ":"ゴ","タ":"ダ","チ":"ヂ","ツ":"ヅ","テ":"デ","ト":"ド","サ":"ザ","シ":"ジ","ス":"ズ","セ":"ゼ","ソ":"ゾ","ハ":"バ","ヒ":"ビ","フ":"ブ","ヘ":"ベ","ホ":"ボ"}},kt:"US International",i18n:{"00":"Display Number Pad","01":"Display virtual keyboard interface","02":"Select keyboard layout","03":"Dead keys","04":"On","05":"Off","06":"Close the keyboard","07":"Clear","08":"Clear this input","09":"Version",10:"Decrease keyboard size",11:"Increase keyboard size"},relative:!0,sizeAdj:!0,customClass:!1}).service("ngVirtualKeyboardService",["VKI_CONFIG",function(e){return{attach:function(i,s,a){s=s||{},s.i18n=s.i18n||e.i18n,s.kt=s.kt||e.kt,s.relative=s.relative===!1?!1:e.relative,s.keyCenter=s.keyCenter||e.keyCenter,s.sizeAdj=s.sizeAdj===!1?!1:e.sizeAdj,s.customClass=s.customClass||e.customClass;var n=new t(s,e.layout,e.deadkey,a);n.attachVki(i)}}}]).directive("ngVirtualKeyboard",["ngVirtualKeyboardService","$timeout","$injector",function(e,t,i){return{restrict:"A",require:"?ngModel",scope:{config:"=ngVirtualKeyboard"},link:function(s,a,n,r){if(r){if(i.has("UAParser")){var o=i.get("UAParser"),l=(new o).getResult(),d="mobile"===l.device.type||"tablet"===l.device.type;if(d=d||l.os&&"Android"===l.os.name,d=d||l.os&&"iOS"===l.os.name,d=d||l.os&&"Windows Phone"===l.os.name,d=d||l.os&&"Windows Mobile"===l.os.name,d&&s.config.showInMobile!==!0)return}e.attach(a[0],s.config,function(){t(function(){r.$setViewValue(a[0].value)})})}}}}])}(angular);

@@ -64,3 +64,4 @@ angular.module('angular-virtual-keyboard', [])

relative: true,
sizeAdj: true
sizeAdj: true,
customClass: false
})

@@ -77,2 +78,3 @@ .service('ngVirtualKeyboardService', ['VKI_CONFIG', function(VKI_CONFIG) {

config.sizeAdj = config.sizeAdj === false ? false : VKI_CONFIG.sizeAdj;
config.customClass = config.customClass || VKI_CONFIG.customClass;

@@ -102,4 +104,6 @@ var vki = new VKI(config, VKI_CONFIG.layout, VKI_CONFIG.deadkey, inputCallback);

var isMobile = results.device.type === 'mobile' || results.device.type === 'tablet';
isMobile = isMobile || (results.os && (results.os.name === 'Android'));
isMobile = isMobile || (results.os && (results.os.name === 'iOS'));
isMobile = isMobile || (results.os && (results.os.name === 'Android'));
isMobile = isMobile || (results.os && (results.os.name === 'iOS'));
isMobile = isMobile || (results.os && (results.os.name === 'Windows Phone'));
isMobile = isMobile || (results.os && (results.os.name === 'Windows Mobile'));
if (isMobile && scope.config.showInMobile !== true) {

@@ -106,0 +110,0 @@ return;

@@ -80,2 +80,3 @@ /* jshint ignore:start */

this.VKI_relative = config.relative === false ? false : true;
this.VKI_customClass = config.customClass || false;

@@ -283,2 +284,5 @@ this.VKI_isIE = /*@cc_on!@*/false;

}
if (this.VKI_customClass) {
self.VKI_keyboard.className += ' ' + this.VKI_customClass;
}
this.VKI_keyboard.dir = "ltr";

@@ -743,2 +747,5 @@ this.VKI_keyboard.cellSpacing = "0";

this.VKI_target.focus();
if (text && text.length > 1 && text.trim) {
text = text.trim();
}
if (this.VKI_target.maxLength) this.VKI_target.maxlength = this.VKI_target.maxLength;

@@ -745,0 +752,0 @@ if (typeof this.VKI_target.maxlength == "undefined" ||

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc