primeng 11.1.0 → 11.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (234) hide show
  1. package/README.md +1 -0
  2. package/api/confirmaeventtype.d.ts +5 -0
  3. package/api/filtermatchmode.d.ts +4 -0
  4. package/api/filterservice.d.ts +4 -0
  5. package/api/primeng-api.metadata.json +1 -1
  6. package/api/public_api.d.ts +1 -0
  7. package/api/translation.d.ts +4 -0
  8. package/autocomplete/autocomplete.d.ts +8 -1
  9. package/autocomplete/primeng-autocomplete.metadata.json +1 -1
  10. package/avatar/primeng-avatar.metadata.json +1 -1
  11. package/bundles/primeng-api.umd.js +56 -6
  12. package/bundles/primeng-api.umd.js.map +1 -1
  13. package/bundles/primeng-api.umd.min.js +1 -1
  14. package/bundles/primeng-api.umd.min.js.map +1 -1
  15. package/bundles/primeng-autocomplete.umd.js +86 -17
  16. package/bundles/primeng-autocomplete.umd.js.map +1 -1
  17. package/bundles/primeng-autocomplete.umd.min.js +1 -1
  18. package/bundles/primeng-autocomplete.umd.min.js.map +1 -1
  19. package/bundles/primeng-avatar.umd.js +1 -1
  20. package/bundles/primeng-avatar.umd.min.js +1 -1
  21. package/bundles/primeng-avatar.umd.min.js.map +1 -1
  22. package/bundles/primeng-calendar.umd.js +6 -0
  23. package/bundles/primeng-calendar.umd.js.map +1 -1
  24. package/bundles/primeng-calendar.umd.min.js +1 -1
  25. package/bundles/primeng-calendar.umd.min.js.map +1 -1
  26. package/bundles/primeng-cascadeselect.umd.js +8 -5
  27. package/bundles/primeng-cascadeselect.umd.js.map +1 -1
  28. package/bundles/primeng-cascadeselect.umd.min.js +2 -2
  29. package/bundles/primeng-cascadeselect.umd.min.js.map +1 -1
  30. package/bundles/primeng-colorpicker.umd.js.map +1 -1
  31. package/bundles/primeng-colorpicker.umd.min.js.map +1 -1
  32. package/bundles/primeng-confirmdialog.umd.js +11 -8
  33. package/bundles/primeng-confirmdialog.umd.js.map +1 -1
  34. package/bundles/primeng-confirmdialog.umd.min.js +1 -1
  35. package/bundles/primeng-confirmdialog.umd.min.js.map +1 -1
  36. package/bundles/primeng-contextmenu.umd.js +2 -2
  37. package/bundles/primeng-contextmenu.umd.js.map +1 -1
  38. package/bundles/primeng-contextmenu.umd.min.js +1 -1
  39. package/bundles/primeng-contextmenu.umd.min.js.map +1 -1
  40. package/bundles/primeng-dialog.umd.js +1 -1
  41. package/bundles/primeng-dialog.umd.min.js +1 -1
  42. package/bundles/primeng-dialog.umd.min.js.map +1 -1
  43. package/bundles/primeng-dom.umd.js +3 -0
  44. package/bundles/primeng-dom.umd.js.map +1 -1
  45. package/bundles/primeng-dom.umd.min.js +1 -1
  46. package/bundles/primeng-dom.umd.min.js.map +1 -1
  47. package/bundles/primeng-dropdown.umd.js +1 -1
  48. package/bundles/primeng-dropdown.umd.js.map +1 -1
  49. package/bundles/primeng-dropdown.umd.min.js +1 -1
  50. package/bundles/primeng-dropdown.umd.min.js.map +1 -1
  51. package/bundles/primeng-dynamicdialog.umd.js +1 -1
  52. package/bundles/primeng-dynamicdialog.umd.min.js +1 -1
  53. package/bundles/primeng-dynamicdialog.umd.min.js.map +1 -1
  54. package/bundles/primeng-inputmask.umd.js +5 -2
  55. package/bundles/primeng-inputmask.umd.js.map +1 -1
  56. package/bundles/primeng-inputmask.umd.min.js +1 -1
  57. package/bundles/primeng-inputmask.umd.min.js.map +1 -1
  58. package/bundles/primeng-inputnumber.umd.js +16 -2
  59. package/bundles/primeng-inputnumber.umd.js.map +1 -1
  60. package/bundles/primeng-inputnumber.umd.min.js +1 -1
  61. package/bundles/primeng-inputnumber.umd.min.js.map +1 -1
  62. package/bundles/primeng-knob.umd.js +1 -1
  63. package/bundles/primeng-knob.umd.js.map +1 -1
  64. package/bundles/primeng-knob.umd.min.js +1 -1
  65. package/bundles/primeng-knob.umd.min.js.map +1 -1
  66. package/bundles/primeng-lightbox.umd.js +1 -1
  67. package/bundles/primeng-lightbox.umd.min.js +1 -1
  68. package/bundles/primeng-lightbox.umd.min.js.map +1 -1
  69. package/bundles/primeng-listbox.umd.js +133 -34
  70. package/bundles/primeng-listbox.umd.js.map +1 -1
  71. package/bundles/primeng-listbox.umd.min.js +1 -1
  72. package/bundles/primeng-listbox.umd.min.js.map +1 -1
  73. package/bundles/primeng-multiselect.umd.js +146 -32
  74. package/bundles/primeng-multiselect.umd.js.map +1 -1
  75. package/bundles/primeng-multiselect.umd.min.js +2 -2
  76. package/bundles/primeng-multiselect.umd.min.js.map +1 -1
  77. package/bundles/primeng-sidebar.umd.js.map +1 -1
  78. package/bundles/primeng-sidebar.umd.min.js.map +1 -1
  79. package/bundles/primeng-slider.umd.js +1 -0
  80. package/bundles/primeng-slider.umd.js.map +1 -1
  81. package/bundles/primeng-slider.umd.min.js +1 -1
  82. package/bundles/primeng-slider.umd.min.js.map +1 -1
  83. package/bundles/primeng-table.umd.js +117 -16
  84. package/bundles/primeng-table.umd.js.map +1 -1
  85. package/bundles/primeng-table.umd.min.js +1 -1
  86. package/bundles/primeng-table.umd.min.js.map +1 -1
  87. package/bundles/primeng-tabview.umd.js +25 -3
  88. package/bundles/primeng-tabview.umd.js.map +1 -1
  89. package/bundles/primeng-tabview.umd.min.js +1 -1
  90. package/bundles/primeng-tabview.umd.min.js.map +1 -1
  91. package/bundles/primeng-treetable.umd.js +1 -1
  92. package/bundles/primeng-treetable.umd.js.map +1 -1
  93. package/bundles/primeng-treetable.umd.min.js +1 -1
  94. package/bundles/primeng-treetable.umd.min.js.map +1 -1
  95. package/bundles/primeng-virtualscroller.umd.js +3 -2
  96. package/bundles/primeng-virtualscroller.umd.js.map +1 -1
  97. package/bundles/primeng-virtualscroller.umd.min.js +1 -1
  98. package/bundles/primeng-virtualscroller.umd.min.js.map +1 -1
  99. package/calendar/primeng-calendar.metadata.json +1 -1
  100. package/cascadeselect/cascadeselect.d.ts +3 -3
  101. package/cascadeselect/primeng-cascadeselect.metadata.json +1 -1
  102. package/colorpicker/colorpicker.d.ts +1 -1
  103. package/confirmdialog/confirmdialog.d.ts +3 -2
  104. package/confirmdialog/primeng-confirmdialog.metadata.json +1 -1
  105. package/dialog/primeng-dialog.metadata.json +1 -1
  106. package/dom/primeng-dom.metadata.json +1 -1
  107. package/dropdown/primeng-dropdown.metadata.json +1 -1
  108. package/dynamicdialog/primeng-dynamicdialog.metadata.json +1 -1
  109. package/esm2015/api/confirmaeventtype.js +7 -0
  110. package/esm2015/api/filtermatchmode.js +5 -1
  111. package/esm2015/api/filterservice.js +39 -3
  112. package/esm2015/api/primengconfig.js +9 -5
  113. package/esm2015/api/public_api.js +2 -1
  114. package/esm2015/api/translation.js +1 -1
  115. package/esm2015/autocomplete/autocomplete.js +105 -22
  116. package/esm2015/avatar/avatar.js +1 -1
  117. package/esm2015/calendar/calendar.js +7 -1
  118. package/esm2015/cascadeselect/cascadeselect.js +9 -6
  119. package/esm2015/colorpicker/colorpicker.js +1 -1
  120. package/esm2015/confirmdialog/confirmdialog.js +14 -11
  121. package/esm2015/contextmenu/contextmenu.js +3 -3
  122. package/esm2015/dialog/dialog.js +1 -1
  123. package/esm2015/dom/domhandler.js +4 -1
  124. package/esm2015/dropdown/dropdown.js +2 -2
  125. package/esm2015/dynamicdialog/dynamicdialog.js +1 -1
  126. package/esm2015/inputmask/inputmask.js +6 -3
  127. package/esm2015/inputnumber/inputnumber.js +13 -3
  128. package/esm2015/knob/knob.js +2 -2
  129. package/esm2015/lightbox/lightbox.js +1 -1
  130. package/esm2015/listbox/listbox.js +134 -42
  131. package/esm2015/multiselect/multiselect.js +149 -42
  132. package/esm2015/sidebar/sidebar.js +1 -1
  133. package/esm2015/slider/slider.js +2 -1
  134. package/esm2015/table/table.js +127 -17
  135. package/esm2015/tabview/tabview.js +18 -4
  136. package/esm2015/treetable/treetable.js +2 -2
  137. package/esm2015/virtualscroller/virtualscroller.js +4 -3
  138. package/fesm2015/primeng-api.js +58 -7
  139. package/fesm2015/primeng-api.js.map +1 -1
  140. package/fesm2015/primeng-autocomplete.js +104 -21
  141. package/fesm2015/primeng-autocomplete.js.map +1 -1
  142. package/fesm2015/primeng-avatar.js +1 -1
  143. package/fesm2015/primeng-calendar.js +6 -0
  144. package/fesm2015/primeng-calendar.js.map +1 -1
  145. package/fesm2015/primeng-cascadeselect.js +8 -5
  146. package/fesm2015/primeng-cascadeselect.js.map +1 -1
  147. package/fesm2015/primeng-colorpicker.js.map +1 -1
  148. package/fesm2015/primeng-confirmdialog.js +13 -10
  149. package/fesm2015/primeng-confirmdialog.js.map +1 -1
  150. package/fesm2015/primeng-contextmenu.js +2 -2
  151. package/fesm2015/primeng-contextmenu.js.map +1 -1
  152. package/fesm2015/primeng-dialog.js +1 -1
  153. package/fesm2015/primeng-dom.js +3 -0
  154. package/fesm2015/primeng-dom.js.map +1 -1
  155. package/fesm2015/primeng-dropdown.js +1 -1
  156. package/fesm2015/primeng-dropdown.js.map +1 -1
  157. package/fesm2015/primeng-dynamicdialog.js +1 -1
  158. package/fesm2015/primeng-inputmask.js +5 -2
  159. package/fesm2015/primeng-inputmask.js.map +1 -1
  160. package/fesm2015/primeng-inputnumber.js +12 -2
  161. package/fesm2015/primeng-inputnumber.js.map +1 -1
  162. package/fesm2015/primeng-knob.js +1 -1
  163. package/fesm2015/primeng-knob.js.map +1 -1
  164. package/fesm2015/primeng-lightbox.js +1 -1
  165. package/fesm2015/primeng-listbox.js +133 -41
  166. package/fesm2015/primeng-listbox.js.map +1 -1
  167. package/fesm2015/primeng-multiselect.js +148 -41
  168. package/fesm2015/primeng-multiselect.js.map +1 -1
  169. package/fesm2015/primeng-sidebar.js.map +1 -1
  170. package/fesm2015/primeng-slider.js +1 -0
  171. package/fesm2015/primeng-slider.js.map +1 -1
  172. package/fesm2015/primeng-table.js +126 -16
  173. package/fesm2015/primeng-table.js.map +1 -1
  174. package/fesm2015/primeng-tabview.js +17 -3
  175. package/fesm2015/primeng-tabview.js.map +1 -1
  176. package/fesm2015/primeng-treetable.js +1 -1
  177. package/fesm2015/primeng-treetable.js.map +1 -1
  178. package/fesm2015/primeng-virtualscroller.js +3 -2
  179. package/fesm2015/primeng-virtualscroller.js.map +1 -1
  180. package/inputmask/inputmask.d.ts +2 -1
  181. package/inputmask/primeng-inputmask.metadata.json +1 -1
  182. package/inputnumber/inputnumber.d.ts +3 -1
  183. package/inputnumber/primeng-inputnumber.metadata.json +1 -1
  184. package/knob/primeng-knob.metadata.json +1 -1
  185. package/lightbox/primeng-lightbox.metadata.json +1 -1
  186. package/listbox/listbox.d.ts +7 -1
  187. package/listbox/primeng-listbox.metadata.json +1 -1
  188. package/multiselect/multiselect.d.ts +8 -1
  189. package/multiselect/primeng-multiselect.metadata.json +1 -1
  190. package/package.json +1 -1
  191. package/resources/components/avatar/avatar.css +3 -2
  192. package/resources/components/dialog/dialog.css +2 -0
  193. package/resources/components/virtualscroller/virtualscroller.css +2 -16
  194. package/resources/themes/arya-blue/theme.css +26 -38
  195. package/resources/themes/arya-green/theme.css +26 -38
  196. package/resources/themes/arya-orange/theme.css +26 -38
  197. package/resources/themes/arya-purple/theme.css +26 -38
  198. package/resources/themes/bootstrap4-dark-blue/theme.css +26 -38
  199. package/resources/themes/bootstrap4-dark-purple/theme.css +26 -38
  200. package/resources/themes/bootstrap4-light-blue/theme.css +26 -38
  201. package/resources/themes/bootstrap4-light-purple/theme.css +26 -38
  202. package/resources/themes/fluent-light/theme.css +26 -38
  203. package/resources/themes/luna-amber/theme.css +26 -38
  204. package/resources/themes/luna-blue/theme.css +26 -38
  205. package/resources/themes/luna-green/theme.css +26 -38
  206. package/resources/themes/luna-pink/theme.css +26 -38
  207. package/resources/themes/md-dark-deeppurple/theme.css +89 -69
  208. package/resources/themes/md-dark-indigo/theme.css +89 -69
  209. package/resources/themes/md-light-deeppurple/theme.css +293 -273
  210. package/resources/themes/md-light-indigo/theme.css +293 -273
  211. package/resources/themes/mdc-dark-deeppurple/theme.css +89 -69
  212. package/resources/themes/mdc-dark-indigo/theme.css +89 -69
  213. package/resources/themes/mdc-light-deeppurple/theme.css +293 -273
  214. package/resources/themes/mdc-light-indigo/theme.css +293 -273
  215. package/resources/themes/nova/theme.css +26 -38
  216. package/resources/themes/nova-accent/theme.css +26 -38
  217. package/resources/themes/nova-alt/theme.css +26 -38
  218. package/resources/themes/rhea/theme.css +26 -38
  219. package/resources/themes/saga-blue/theme.css +26 -38
  220. package/resources/themes/saga-green/theme.css +26 -38
  221. package/resources/themes/saga-orange/theme.css +26 -38
  222. package/resources/themes/saga-purple/theme.css +26 -38
  223. package/resources/themes/vela-blue/theme.css +26 -38
  224. package/resources/themes/vela-green/theme.css +26 -38
  225. package/resources/themes/vela-orange/theme.css +26 -38
  226. package/resources/themes/vela-purple/theme.css +26 -38
  227. package/sidebar/sidebar.d.ts +1 -1
  228. package/slider/primeng-slider.metadata.json +1 -1
  229. package/table/primeng-table.metadata.json +1 -1
  230. package/table/table.d.ts +12 -0
  231. package/tabview/primeng-tabview.metadata.json +1 -1
  232. package/tabview/tabview.d.ts +6 -2
  233. package/treetable/primeng-treetable.metadata.json +1 -1
  234. package/virtualscroller/primeng-virtualscroller.metadata.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/app/components/inputmask/inputmask.ts"],"names":["INPUTMASK_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","InputMask","multi","el","cd","this","type","slotChar","autoClear","characterPattern","onComplete","EventEmitter","onFocus","onBlur","onInput","onModelChange","onModelTouched","prototype","ngOnInit","ua","DomHandler","getUserAgent","androidChrome","test","initMask","Object","defineProperty","_mask","val","writeValue","value","tests","partialPosition","mask","length","len","firstNonMaskPos","defs","9","a","*","maskTokens","split","i","c","push","RegExp","lastRequiredNonMaskPos","buffer","getPlaceholder","defaultBuffer","join","inputViewChild","nativeElement","undefined","checkVal","focusText","updateFilledState","registerOnChange","fn","registerOnTouched","setDisabledState","disabled","markForCheck","caret","first","last","range","begin","end","offsetParent","ownerDocument","activeElement","setSelectionRange","selectionStart","selectionEnd","document","createRange","duplicate","moveStart","text","collapse","moveEnd","select","isCompleted","charAt","seekNext","pos","seekPrev","shiftL","j","writeBuffer","Math","max","shiftR","t","handleAndroidInput","e","_this","curVal","oldVal","setTimeout","updateModel","emit","onInputBlur","focused","event","createEvent","initEvent","dispatchEvent","onKeyDown","readonly","k","which","keyCode","iPhone","clearBuffer","preventDefault","onKeyPress","p","next","completed","ctrlKey","altKey","metaKey","String","fromCharCode","start","allow","lastMatch","substring","onInputFocus","clearTimeout","caretTimeoutId","replace","onInputChange","handleInputChange","getUnmaskedValue","unmaskedBuffer","updatedValue","unmask","target","filled","focus","ngOnDestroy","Component","args","selector","template","host","[class.p-inputwrapper-filled]","[class.p-inputwrapper-focus]","providers","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","ElementRef","ChangeDetectorRef","Input","ViewChild","static","Output","NgModule","imports","CommonModule","InputTextModule","exports","declarations"],"mappings":"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","sourcesContent":["/*\n Port of jQuery MaskedInput by DigitalBush as a Native Angular2 Component in Typescript without jQuery\n https://github.com/digitalBush/jquery.maskedinput/\n\n Copyright (c) 2007-2014 Josh Bush (digitalbush.com)\n\n Permission is hereby granted, free of charge, to any person\n obtaining a copy of this software and associated documentation\n files (the \"Software\"), to deal in the Software without\n restriction, including without limitation the rights to use,\n copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the\n Software is furnished to do so, subject to the following\n conditions:\n\n The above copyright notice and this permission notice shall be\n included in all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n OTHER DEALINGS IN THE SOFTWARE.\n*/\nimport {NgModule,Component,ElementRef,OnInit,OnDestroy,Input,forwardRef,Output,EventEmitter,ViewChild,ChangeDetectionStrategy, ViewEncapsulation, ChangeDetectorRef} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {DomHandler} from 'primeng/dom';\nimport {InputTextModule} from 'primeng/inputtext';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\n\nexport const INPUTMASK_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputMask),\n multi: true\n};\n\n@Component({\n selector: 'p-inputMask',\n template: `<input #input pInputText class=\"p-inputmask\" [attr.id]=\"inputId\" [attr.type]=\"type\" [attr.name]=\"name\" [ngStyle]=\"style\" [ngClass]=\"styleClass\" [attr.placeholder]=\"placeholder\" [attr.title]=\"title\"\n [attr.size]=\"size\" [attr.autocomplete]=\"autocomplete\" [attr.maxlength]=\"maxlength\" [attr.tabindex]=\"tabindex\" [attr.aria-label]=\"ariaLabel\" [attr.aria-required]=\"ariaRequired\" [disabled]=\"disabled\" [readonly]=\"readonly\" [attr.required]=\"required\"\n (focus)=\"onInputFocus($event)\" (blur)=\"onInputBlur($event)\" (keydown)=\"onKeyDown($event)\" (keypress)=\"onKeyPress($event)\" [attr.autofocus]=\"autoFocus\"\n (input)=\"onInputChange($event)\" (paste)=\"handleInputChange($event)\">`,\n host: {\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focused'\n },\n providers: [INPUTMASK_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class InputMask implements OnInit,OnDestroy,ControlValueAccessor {\n\n @Input() type: string = 'text';\n\n @Input() slotChar: string = '_';\n\n @Input() autoClear: boolean = true;\n\n @Input() style: any;\n\n @Input() inputId: string;\n\n @Input() styleClass: string;\n\n @Input() placeholder: string;\n\n @Input() size: number;\n\n @Input() maxlength: number;\n\n @Input() tabindex: string;\n\n @Input() title: string;\n\n @Input() ariaLabel: string;\n\n @Input() ariaRequired: boolean;\n\n @Input() disabled: boolean;\n\n @Input() readonly: boolean;\n\n @Input() unmask: boolean;\n\n @Input() name: string;\n\n @Input() required: boolean;\n\n @Input() characterPattern: string = '[A-Za-z]';\n\n @Input() autoFocus: boolean;\n\n @Input() autocomplete: string;\n\n @ViewChild('input', { static: true }) inputViewChild: ElementRef;\n\n @Output() onComplete: EventEmitter<any> = new EventEmitter();\n\n @Output() onFocus: EventEmitter<any> = new EventEmitter();\n\n @Output() onBlur: EventEmitter<any> = new EventEmitter();\n\n @Output() onInput: EventEmitter<any> = new EventEmitter();\n\n value: any;\n\n _mask: string;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n input: HTMLInputElement;\n\n filled: boolean;\n\n defs: any;\n\n tests: any[];\n\n partialPosition: any;\n\n firstNonMaskPos: number;\n\n lastRequiredNonMaskPos: any;\n\n len: number;\n\n oldVal: string;\n\n buffer: any;\n\n defaultBuffer: string;\n\n focusText: string;\n\n caretTimeoutId: any;\n\n androidChrome: boolean;\n\n focused: boolean;\n\n constructor(public el: ElementRef, private cd: ChangeDetectorRef) {}\n\n ngOnInit() {\n let ua = DomHandler.getUserAgent();\n this.androidChrome = /chrome/i.test(ua) && /android/i.test(ua);\n\n this.initMask();\n }\n\n @Input() get mask(): string {\n return this._mask;\n }\n\n set mask(val:string) {\n this._mask = val;\n\n this.initMask();\n this.writeValue('');\n this.onModelChange(this.value);\n }\n\n initMask() {\n this.tests = [];\n this.partialPosition = this.mask.length;\n this.len = this.mask.length;\n this.firstNonMaskPos = null;\n this.defs = {\n '9': '[0-9]',\n 'a': this.characterPattern,\n '*': `${this.characterPattern}|[0-9]`\n };\n\n let maskTokens = this.mask.split('');\n for(let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n if (c == '?') {\n\t\t\t\tthis.len--;\n\t\t\t\tthis.partialPosition = i;\n\t\t\t}\n else if (this.defs[c]) {\n\t\t\t\tthis.tests.push(new RegExp(this.defs[c]));\n\t\t\t\tif (this.firstNonMaskPos === null) {\n\t this.firstNonMaskPos = this.tests.length - 1;\n\t\t\t\t}\n if (i < this.partialPosition){\n this.lastRequiredNonMaskPos = this.tests.length - 1;\n }\n\t\t\t}\n else {\n\t\t\t\tthis.tests.push(null);\n\t\t\t}\n }\n\n this.buffer = [];\n for(let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n if (c != '?') {\n if (this.defs[c])\n this.buffer.push(this.getPlaceholder(i));\n else\n this.buffer.push(c);\n }\n }\n this.defaultBuffer = this.buffer.join('');\n }\n\n writeValue(value: any) : void {\n this.value = value;\n\n if (this.inputViewChild && this.inputViewChild.nativeElement) {\n if (this.value == undefined || this.value == null)\n this.inputViewChild.nativeElement.value = '';\n else\n this.inputViewChild.nativeElement.value = this.value;\n\n this.checkVal();\n this.focusText = this.inputViewChild.nativeElement.value;\n this.updateFilledState();\n }\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n caret(first?: number, last?: number) {\n let range, begin, end;\n\n if (!this.inputViewChild.nativeElement.offsetParent||this.inputViewChild.nativeElement !== this.inputViewChild.nativeElement.ownerDocument.activeElement) {\n return;\n }\n\n if (typeof first == 'number') {\n begin = first;\n end = (typeof last === 'number') ? last : begin;\n if (this.inputViewChild.nativeElement.setSelectionRange) {\n this.inputViewChild.nativeElement.setSelectionRange(begin, end);\n }\n else if (this.inputViewChild.nativeElement['createTextRange']) {\n range = this.inputViewChild.nativeElement['createTextRange']();\n range.collapse(true);\n range.moveEnd('character', end);\n range.moveStart('character', begin);\n range.select();\n }\n }\n else {\n if (this.inputViewChild.nativeElement.setSelectionRange) {\n \t\t\tbegin = this.inputViewChild.nativeElement.selectionStart;\n \t\t\tend = this.inputViewChild.nativeElement.selectionEnd;\n \t\t}\n else if (document['selection'] && document['selection'].createRange) {\n \t\t\trange = document['selection'].createRange();\n \t\t\tbegin = 0 - range.duplicate().moveStart('character', -100000);\n \t\t\tend = begin + range.text.length;\n \t\t}\n\n \t\treturn {begin: begin, end: end};\n }\n }\n\n isCompleted(): boolean {\n let completed: boolean;\n for (let i = this.firstNonMaskPos; i <= this.lastRequiredNonMaskPos; i++) {\n if (this.tests[i] && this.buffer[i] === this.getPlaceholder(i)) {\n return false;\n }\n }\n\n return true;\n }\n\n getPlaceholder(i: number) {\n if (i < this.slotChar.length) {\n return this.slotChar.charAt(i);\n }\n return this.slotChar.charAt(0);\n }\n\n seekNext(pos) {\n while (++pos < this.len && !this.tests[pos]);\n return pos;\n }\n\n seekPrev(pos) {\n while (--pos >= 0 && !this.tests[pos]);\n return pos;\n }\n\n shiftL(begin:number,end:number) {\n let i, j;\n\n if (begin<0) {\n return;\n }\n\n for (i = begin, j = this.seekNext(end); i < this.len; i++) {\n if (this.tests[i]) {\n if (j < this.len && this.tests[i].test(this.buffer[j])) {\n this.buffer[i] = this.buffer[j];\n this.buffer[j] = this.getPlaceholder(j);\n } else {\n break;\n }\n\n j = this.seekNext(j);\n }\n }\n this.writeBuffer();\n this.caret(Math.max(this.firstNonMaskPos, begin));\n }\n\n shiftR(pos) {\n let i, c, j, t;\n\n for (i = pos, c = this.getPlaceholder(pos); i < this.len; i++) {\n if (this.tests[i]) {\n j = this.seekNext(i);\n t = this.buffer[i];\n this.buffer[i] = c;\n if (j < this.len && this.tests[j].test(t)) {\n c = t;\n } else {\n break;\n }\n }\n }\n }\n\n handleAndroidInput(e) {\n var curVal = this.inputViewChild.nativeElement.value;\n var pos = this.caret();\n if (this.oldVal && this.oldVal.length && this.oldVal.length > curVal.length ) {\n // a deletion or backspace happened\n this.checkVal(true);\n while (pos.begin > 0 && !this.tests[pos.begin-1])\n pos.begin--;\n if (pos.begin === 0)\n {\n while (pos.begin < this.firstNonMaskPos && !this.tests[pos.begin])\n pos.begin++;\n }\n\n setTimeout(() => {\n this.caret(pos.begin, pos.begin);\n this.updateModel(e);\n if (this.isCompleted()) {\n this.onComplete.emit();\n }\n }, 0);\n }\n else {\n this.checkVal(true);\n while (pos.begin < this.len && !this.tests[pos.begin])\n pos.begin++;\n\n setTimeout(() => {\n this.caret(pos.begin, pos.begin);\n this.updateModel(e);\n if (this.isCompleted()) {\n this.onComplete.emit();\n }\n }, 0);\n }\n }\n\n onInputBlur(e) {\n this.focused = false;\n this.onModelTouched();\n this.checkVal();\n this.updateFilledState();\n this.onBlur.emit(e);\n\n if (this.inputViewChild.nativeElement.value != this.focusText || this.inputViewChild.nativeElement.value != this.value) {\n this.updateModel(e);\n let event = document.createEvent('HTMLEvents');\n event.initEvent('change', true, false);\n this.inputViewChild.nativeElement.dispatchEvent(event);\n }\n }\n\n onKeyDown(e) {\n if (this.readonly) {\n return;\n }\n\n let k = e.which||e.keyCode,\n pos,\n begin,\n end;\n let iPhone = /iphone/i.test(DomHandler.getUserAgent());\n this.oldVal = this.inputViewChild.nativeElement.value;\n\n //backspace, delete, and escape get special treatment\n if (k === 8 || k === 46 || (iPhone && k === 127)) {\n pos = this.caret();\n begin = pos.begin;\n end = pos.end;\n\n if (end - begin === 0) {\n begin=k!==46?this.seekPrev(begin):(end=this.seekNext(begin-1));\n end=k===46?this.seekNext(end):end;\n }\n\n this.clearBuffer(begin, end);\n\t\t\tthis.shiftL(begin, end - 1);\n this.updateModel(e);\n this.onInput.emit(e);\n\n e.preventDefault();\n }\n else if ( k === 13 ) { // enter\n this.onInputBlur(e);\n this.updateModel(e);\n }\n else if (k === 27) { // escape\n this.inputViewChild.nativeElement.value = this.focusText;\n this.caret(0, this.checkVal());\n this.updateModel(e);\n\n e.preventDefault();\n }\n }\n\n onKeyPress(e) {\n if (this.readonly){\n return;\n }\n\n var k = e.which || e.keyCode,\n pos = this.caret(),\n p,\n c,\n next,\n completed;\n\n if (e.ctrlKey || e.altKey || e.metaKey || k < 32 || (k > 34 && k < 41)) {//Ignore\n return;\n } else if ( k && k !== 13 ) {\n if (pos.end - pos.begin !== 0){\n this.clearBuffer(pos.begin, pos.end);\n this.shiftL(pos.begin, pos.end-1);\n }\n\n p = this.seekNext(pos.begin - 1);\n if (p < this.len) {\n c = String.fromCharCode(k);\n if (this.tests[p].test(c)) {\n this.shiftR(p);\n\n this.buffer[p] = c;\n this.writeBuffer();\n next = this.seekNext(p);\n\n if (/android/i.test(DomHandler.getUserAgent())) {\n //Path for CSP Violation on FireFox OS 1.1\n let proxy = () => {\n this.caret(next);\n };\n\n setTimeout(proxy,0);\n }\n else {\n this.caret(next);\n }\n\n if (pos.begin <= this.lastRequiredNonMaskPos) {\n completed = this.isCompleted();\n }\n\n this.onInput.emit(e);\n }\n }\n e.preventDefault();\n }\n\n this.updateModel(e);\n\n this.updateFilledState();\n\n if (completed) {\n this.onComplete.emit();\n }\n }\n\n clearBuffer(start, end) {\n let i;\n for (i = start; i < end && i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n }\n }\n }\n\n writeBuffer() {\n this.inputViewChild.nativeElement.value = this.buffer.join('');\n }\n\n checkVal(allow?: boolean) {\n //try to place characters where they belong\n let test = this.inputViewChild.nativeElement.value,\n lastMatch = -1,\n i,\n c,\n pos;\n\n for (i = 0, pos = 0; i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n while (pos++ < test.length) {\n c = test.charAt(pos - 1);\n if (this.tests[i].test(c)) {\n this.buffer[i] = c;\n lastMatch = i;\n break;\n }\n }\n if (pos > test.length) {\n this.clearBuffer(i + 1, this.len);\n break;\n }\n } else {\n if (this.buffer[i] === test.charAt(pos)) {\n pos++;\n }\n if ( i < this.partialPosition){\n lastMatch = i;\n }\n }\n }\n if (allow) {\n this.writeBuffer();\n } else if (lastMatch + 1 < this.partialPosition) {\n if (this.autoClear || this.buffer.join('') === this.defaultBuffer) {\n // Invalid value. Remove it and replace it with the\n // mask, which is the default behavior.\n if (this.inputViewChild.nativeElement.value) this.inputViewChild.nativeElement.value = '';\n this.clearBuffer(0, this.len);\n } else {\n // Invalid value, but we opt to show the value to the\n // user and allow them to correct their mistake.\n this.writeBuffer();\n }\n } else {\n this.writeBuffer();\n this.inputViewChild.nativeElement.value = this.inputViewChild.nativeElement.value.substring(0, lastMatch + 1);\n }\n return (this.partialPosition ? i : this.firstNonMaskPos);\n }\n\n onInputFocus(event) {\n if (this.readonly){\n return;\n }\n\n this.focused = true;\n\n clearTimeout(this.caretTimeoutId);\n let pos;\n\n this.focusText = this.inputViewChild.nativeElement.value;\n\n pos = this.checkVal();\n\n this.caretTimeoutId = setTimeout(() => {\n if (this.inputViewChild.nativeElement !== this.inputViewChild.nativeElement.ownerDocument.activeElement){\n return;\n }\n this.writeBuffer();\n if (pos == this.mask.replace(\"?\",\"\").length) {\n this.caret(0, pos);\n } else {\n this.caret(pos);\n }\n }, 10);\n\n this.onFocus.emit(event);\n }\n\n onInputChange(event) {\n if (this.androidChrome)\n this.handleAndroidInput(event);\n else\n this.handleInputChange(event);\n\n this.onInput.emit(event);\n }\n\n handleInputChange(event) {\n if (this.readonly){\n return;\n }\n\n setTimeout(() => {\n var pos = this.checkVal(true);\n this.caret(pos);\n this.updateModel(event);\n if (this.isCompleted()) {\n this.onComplete.emit();\n }\n }, 0);\n }\n\n getUnmaskedValue() {\n let unmaskedBuffer = [];\n for(let i = 0; i < this.buffer.length; i++) {\n let c = this.buffer[i];\n if (this.tests[i] && c != this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n }\n\n updateModel(e) {\n const updatedValue = this.unmask ? this.getUnmaskedValue() : e.target.value;\n if (updatedValue !== null || updatedValue !== undefined) {\n this.value = updatedValue;\n this.onModelChange(this.value);\n }\n }\n\n updateFilledState() {\n this.filled = this.inputViewChild.nativeElement && this.inputViewChild.nativeElement.value != '';\n }\n\n focus() {\n this.inputViewChild.nativeElement.focus();\n }\n\n ngOnDestroy() {\n\n }\n}\n\n@NgModule({\n imports: [CommonModule,InputTextModule],\n exports: [InputMask],\n declarations: [InputMask]\n})\nexport class InputMaskModule { }\n"]}
1
+ {"version":3,"sources":["../../src/app/components/inputmask/inputmask.ts"],"names":["INPUTMASK_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","InputMask","multi","el","cd","this","type","slotChar","autoClear","characterPattern","onComplete","EventEmitter","onFocus","onBlur","onInput","onKeydown","onModelChange","onModelTouched","prototype","ngOnInit","ua","DomHandler","getUserAgent","androidChrome","test","initMask","Object","defineProperty","_mask","val","writeValue","value","tests","partialPosition","mask","length","len","firstNonMaskPos","defs","9","a","*","maskTokens","split","i","c","push","RegExp","lastRequiredNonMaskPos","buffer","getPlaceholder","defaultBuffer","join","inputViewChild","nativeElement","undefined","checkVal","focusText","updateFilledState","registerOnChange","fn","registerOnTouched","setDisabledState","disabled","markForCheck","caret","first","last","range","begin","end","offsetParent","ownerDocument","activeElement","setSelectionRange","selectionStart","selectionEnd","document","createRange","duplicate","moveStart","text","collapse","moveEnd","select","isCompleted","charAt","seekNext","pos","seekPrev","shiftL","j","writeBuffer","Math","max","shiftR","t","handleAndroidInput","e","_this","curVal","oldVal","setTimeout","updateModel","emit","onInputBlur","focused","event","createEvent","initEvent","dispatchEvent","onInputKeydown","readonly","k","which","keyCode","iPhone","clearBuffer","preventDefault","onKeyPress","p","next","completed","ctrlKey","altKey","metaKey","String","fromCharCode","start","allow","lastMatch","substring","onInputFocus","clearTimeout","caretTimeoutId","replace","onInputChange","handleInputChange","getUnmaskedValue","unmaskedBuffer","updatedValue","unmask","target","filled","focus","ngOnDestroy","Component","args","selector","template","host","[class.p-inputwrapper-filled]","[class.p-inputwrapper-focus]","providers","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","ElementRef","ChangeDetectorRef","Input","ViewChild","static","Output","NgModule","imports","CommonModule","InputTextModule","exports","declarations"],"mappings":"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","sourcesContent":["/*\n Port of jQuery MaskedInput by DigitalBush as a Native Angular2 Component in Typescript without jQuery\n https://github.com/digitalBush/jquery.maskedinput/\n\n Copyright (c) 2007-2014 Josh Bush (digitalbush.com)\n\n Permission is hereby granted, free of charge, to any person\n obtaining a copy of this software and associated documentation\n files (the \"Software\"), to deal in the Software without\n restriction, including without limitation the rights to use,\n copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the\n Software is furnished to do so, subject to the following\n conditions:\n\n The above copyright notice and this permission notice shall be\n included in all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n OTHER DEALINGS IN THE SOFTWARE.\n*/\nimport {NgModule,Component,ElementRef,OnInit,OnDestroy,Input,forwardRef,Output,EventEmitter,ViewChild,ChangeDetectionStrategy, ViewEncapsulation, ChangeDetectorRef} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {DomHandler} from 'primeng/dom';\nimport {InputTextModule} from 'primeng/inputtext';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\n\nexport const INPUTMASK_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputMask),\n multi: true\n};\n\n@Component({\n selector: 'p-inputMask',\n template: `<input #input pInputText class=\"p-inputmask\" [attr.id]=\"inputId\" [attr.type]=\"type\" [attr.name]=\"name\" [ngStyle]=\"style\" [ngClass]=\"styleClass\" [attr.placeholder]=\"placeholder\" [attr.title]=\"title\"\n [attr.size]=\"size\" [attr.autocomplete]=\"autocomplete\" [attr.maxlength]=\"maxlength\" [attr.tabindex]=\"tabindex\" [attr.aria-label]=\"ariaLabel\" [attr.aria-required]=\"ariaRequired\" [disabled]=\"disabled\" [readonly]=\"readonly\" [attr.required]=\"required\"\n (focus)=\"onInputFocus($event)\" (blur)=\"onInputBlur($event)\" (keydown)=\"onInputKeydown($event)\" (keypress)=\"onKeyPress($event)\" [attr.autofocus]=\"autoFocus\"\n (input)=\"onInputChange($event)\" (paste)=\"handleInputChange($event)\">`,\n host: {\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focused'\n },\n providers: [INPUTMASK_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class InputMask implements OnInit,OnDestroy,ControlValueAccessor {\n\n @Input() type: string = 'text';\n\n @Input() slotChar: string = '_';\n\n @Input() autoClear: boolean = true;\n\n @Input() style: any;\n\n @Input() inputId: string;\n\n @Input() styleClass: string;\n\n @Input() placeholder: string;\n\n @Input() size: number;\n\n @Input() maxlength: number;\n\n @Input() tabindex: string;\n\n @Input() title: string;\n\n @Input() ariaLabel: string;\n\n @Input() ariaRequired: boolean;\n\n @Input() disabled: boolean;\n\n @Input() readonly: boolean;\n\n @Input() unmask: boolean;\n\n @Input() name: string;\n\n @Input() required: boolean;\n\n @Input() characterPattern: string = '[A-Za-z]';\n\n @Input() autoFocus: boolean;\n\n @Input() autocomplete: string;\n\n @ViewChild('input', { static: true }) inputViewChild: ElementRef;\n\n @Output() onComplete: EventEmitter<any> = new EventEmitter();\n\n @Output() onFocus: EventEmitter<any> = new EventEmitter();\n\n @Output() onBlur: EventEmitter<any> = new EventEmitter();\n\n @Output() onInput: EventEmitter<any> = new EventEmitter();\n \n @Output() onKeydown: EventEmitter<any> = new EventEmitter();\n\n value: any;\n\n _mask: string;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n input: HTMLInputElement;\n\n filled: boolean;\n\n defs: any;\n\n tests: any[];\n\n partialPosition: any;\n\n firstNonMaskPos: number;\n\n lastRequiredNonMaskPos: any;\n\n len: number;\n\n oldVal: string;\n\n buffer: any;\n\n defaultBuffer: string;\n\n focusText: string;\n\n caretTimeoutId: any;\n\n androidChrome: boolean;\n\n focused: boolean;\n\n constructor(public el: ElementRef, private cd: ChangeDetectorRef) {}\n\n ngOnInit() {\n let ua = DomHandler.getUserAgent();\n this.androidChrome = /chrome/i.test(ua) && /android/i.test(ua);\n\n this.initMask();\n }\n\n @Input() get mask(): string {\n return this._mask;\n }\n\n set mask(val:string) {\n this._mask = val;\n\n this.initMask();\n this.writeValue('');\n this.onModelChange(this.value);\n }\n\n initMask() {\n this.tests = [];\n this.partialPosition = this.mask.length;\n this.len = this.mask.length;\n this.firstNonMaskPos = null;\n this.defs = {\n '9': '[0-9]',\n 'a': this.characterPattern,\n '*': `${this.characterPattern}|[0-9]`\n };\n\n let maskTokens = this.mask.split('');\n for(let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n if (c == '?') {\n\t\t\t\tthis.len--;\n\t\t\t\tthis.partialPosition = i;\n\t\t\t}\n else if (this.defs[c]) {\n\t\t\t\tthis.tests.push(new RegExp(this.defs[c]));\n\t\t\t\tif (this.firstNonMaskPos === null) {\n\t this.firstNonMaskPos = this.tests.length - 1;\n\t\t\t\t}\n if (i < this.partialPosition){\n this.lastRequiredNonMaskPos = this.tests.length - 1;\n }\n\t\t\t}\n else {\n\t\t\t\tthis.tests.push(null);\n\t\t\t}\n }\n\n this.buffer = [];\n for(let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n if (c != '?') {\n if (this.defs[c])\n this.buffer.push(this.getPlaceholder(i));\n else\n this.buffer.push(c);\n }\n }\n this.defaultBuffer = this.buffer.join('');\n }\n\n writeValue(value: any) : void {\n this.value = value;\n\n if (this.inputViewChild && this.inputViewChild.nativeElement) {\n if (this.value == undefined || this.value == null)\n this.inputViewChild.nativeElement.value = '';\n else\n this.inputViewChild.nativeElement.value = this.value;\n\n this.checkVal();\n this.focusText = this.inputViewChild.nativeElement.value;\n this.updateFilledState();\n }\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n caret(first?: number, last?: number) {\n let range, begin, end;\n\n if (!this.inputViewChild.nativeElement.offsetParent||this.inputViewChild.nativeElement !== this.inputViewChild.nativeElement.ownerDocument.activeElement) {\n return;\n }\n\n if (typeof first == 'number') {\n begin = first;\n end = (typeof last === 'number') ? last : begin;\n if (this.inputViewChild.nativeElement.setSelectionRange) {\n this.inputViewChild.nativeElement.setSelectionRange(begin, end);\n }\n else if (this.inputViewChild.nativeElement['createTextRange']) {\n range = this.inputViewChild.nativeElement['createTextRange']();\n range.collapse(true);\n range.moveEnd('character', end);\n range.moveStart('character', begin);\n range.select();\n }\n }\n else {\n if (this.inputViewChild.nativeElement.setSelectionRange) {\n \t\t\tbegin = this.inputViewChild.nativeElement.selectionStart;\n \t\t\tend = this.inputViewChild.nativeElement.selectionEnd;\n \t\t}\n else if (document['selection'] && document['selection'].createRange) {\n \t\t\trange = document['selection'].createRange();\n \t\t\tbegin = 0 - range.duplicate().moveStart('character', -100000);\n \t\t\tend = begin + range.text.length;\n \t\t}\n\n \t\treturn {begin: begin, end: end};\n }\n }\n\n isCompleted(): boolean {\n let completed: boolean;\n for (let i = this.firstNonMaskPos; i <= this.lastRequiredNonMaskPos; i++) {\n if (this.tests[i] && this.buffer[i] === this.getPlaceholder(i)) {\n return false;\n }\n }\n\n return true;\n }\n\n getPlaceholder(i: number) {\n if (i < this.slotChar.length) {\n return this.slotChar.charAt(i);\n }\n return this.slotChar.charAt(0);\n }\n\n seekNext(pos) {\n while (++pos < this.len && !this.tests[pos]);\n return pos;\n }\n\n seekPrev(pos) {\n while (--pos >= 0 && !this.tests[pos]);\n return pos;\n }\n\n shiftL(begin:number,end:number) {\n let i, j;\n\n if (begin<0) {\n return;\n }\n\n for (i = begin, j = this.seekNext(end); i < this.len; i++) {\n if (this.tests[i]) {\n if (j < this.len && this.tests[i].test(this.buffer[j])) {\n this.buffer[i] = this.buffer[j];\n this.buffer[j] = this.getPlaceholder(j);\n } else {\n break;\n }\n\n j = this.seekNext(j);\n }\n }\n this.writeBuffer();\n this.caret(Math.max(this.firstNonMaskPos, begin));\n }\n\n shiftR(pos) {\n let i, c, j, t;\n\n for (i = pos, c = this.getPlaceholder(pos); i < this.len; i++) {\n if (this.tests[i]) {\n j = this.seekNext(i);\n t = this.buffer[i];\n this.buffer[i] = c;\n if (j < this.len && this.tests[j].test(t)) {\n c = t;\n } else {\n break;\n }\n }\n }\n }\n\n handleAndroidInput(e) {\n var curVal = this.inputViewChild.nativeElement.value;\n var pos = this.caret();\n if (this.oldVal && this.oldVal.length && this.oldVal.length > curVal.length ) {\n // a deletion or backspace happened\n this.checkVal(true);\n while (pos.begin > 0 && !this.tests[pos.begin-1])\n pos.begin--;\n if (pos.begin === 0)\n {\n while (pos.begin < this.firstNonMaskPos && !this.tests[pos.begin])\n pos.begin++;\n }\n\n setTimeout(() => {\n this.caret(pos.begin, pos.begin);\n this.updateModel(e);\n if (this.isCompleted()) {\n this.onComplete.emit();\n }\n }, 0);\n }\n else {\n this.checkVal(true);\n while (pos.begin < this.len && !this.tests[pos.begin])\n pos.begin++;\n\n setTimeout(() => {\n this.caret(pos.begin, pos.begin);\n this.updateModel(e);\n if (this.isCompleted()) {\n this.onComplete.emit();\n }\n }, 0);\n }\n }\n\n onInputBlur(e) {\n this.focused = false;\n this.onModelTouched();\n this.checkVal();\n this.updateFilledState();\n this.onBlur.emit(e);\n\n if (this.inputViewChild.nativeElement.value != this.focusText || this.inputViewChild.nativeElement.value != this.value) {\n this.updateModel(e);\n let event = document.createEvent('HTMLEvents');\n event.initEvent('change', true, false);\n this.inputViewChild.nativeElement.dispatchEvent(event);\n }\n }\n\n onInputKeydown(e) {\n if (this.readonly) {\n return;\n }\n\n let k = e.which||e.keyCode,\n pos,\n begin,\n end;\n let iPhone = /iphone/i.test(DomHandler.getUserAgent());\n this.oldVal = this.inputViewChild.nativeElement.value;\n \n this.onKeydown.emit(e);\n\n //backspace, delete, and escape get special treatment\n if (k === 8 || k === 46 || (iPhone && k === 127)) {\n pos = this.caret();\n begin = pos.begin;\n end = pos.end;\n\n if (end - begin === 0) {\n begin=k!==46?this.seekPrev(begin):(end=this.seekNext(begin-1));\n end=k===46?this.seekNext(end):end;\n }\n\n this.clearBuffer(begin, end);\n\t\t\tthis.shiftL(begin, end - 1);\n this.updateModel(e);\n this.onInput.emit(e);\n\n e.preventDefault();\n }\n else if ( k === 13 ) { // enter\n this.onInputBlur(e);\n this.updateModel(e);\n }\n else if (k === 27) { // escape\n this.inputViewChild.nativeElement.value = this.focusText;\n this.caret(0, this.checkVal());\n this.updateModel(e);\n\n e.preventDefault();\n }\n }\n\n onKeyPress(e) {\n if (this.readonly){\n return;\n }\n\n var k = e.which || e.keyCode,\n pos = this.caret(),\n p,\n c,\n next,\n completed;\n\n if (e.ctrlKey || e.altKey || e.metaKey || k < 32 || (k > 34 && k < 41)) {//Ignore\n return;\n } else if ( k && k !== 13 ) {\n if (pos.end - pos.begin !== 0){\n this.clearBuffer(pos.begin, pos.end);\n this.shiftL(pos.begin, pos.end-1);\n }\n\n p = this.seekNext(pos.begin - 1);\n if (p < this.len) {\n c = String.fromCharCode(k);\n if (this.tests[p].test(c)) {\n this.shiftR(p);\n\n this.buffer[p] = c;\n this.writeBuffer();\n next = this.seekNext(p);\n\n if (/android/i.test(DomHandler.getUserAgent())) {\n //Path for CSP Violation on FireFox OS 1.1\n let proxy = () => {\n this.caret(next);\n };\n\n setTimeout(proxy,0);\n }\n else {\n this.caret(next);\n }\n\n if (pos.begin <= this.lastRequiredNonMaskPos) {\n completed = this.isCompleted();\n }\n\n this.onInput.emit(e);\n }\n }\n e.preventDefault();\n }\n\n this.updateModel(e);\n\n this.updateFilledState();\n\n if (completed) {\n this.onComplete.emit();\n }\n }\n\n clearBuffer(start, end) {\n let i;\n for (i = start; i < end && i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n }\n }\n }\n\n writeBuffer() {\n this.inputViewChild.nativeElement.value = this.buffer.join('');\n }\n\n checkVal(allow?: boolean) {\n //try to place characters where they belong\n let test = this.inputViewChild.nativeElement.value,\n lastMatch = -1,\n i,\n c,\n pos;\n\n for (i = 0, pos = 0; i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n while (pos++ < test.length) {\n c = test.charAt(pos - 1);\n if (this.tests[i].test(c)) {\n this.buffer[i] = c;\n lastMatch = i;\n break;\n }\n }\n if (pos > test.length) {\n this.clearBuffer(i + 1, this.len);\n break;\n }\n } else {\n if (this.buffer[i] === test.charAt(pos)) {\n pos++;\n }\n if ( i < this.partialPosition){\n lastMatch = i;\n }\n }\n }\n if (allow) {\n this.writeBuffer();\n } else if (lastMatch + 1 < this.partialPosition) {\n if (this.autoClear || this.buffer.join('') === this.defaultBuffer) {\n // Invalid value. Remove it and replace it with the\n // mask, which is the default behavior.\n if (this.inputViewChild.nativeElement.value) this.inputViewChild.nativeElement.value = '';\n this.clearBuffer(0, this.len);\n } else {\n // Invalid value, but we opt to show the value to the\n // user and allow them to correct their mistake.\n this.writeBuffer();\n }\n } else {\n this.writeBuffer();\n this.inputViewChild.nativeElement.value = this.inputViewChild.nativeElement.value.substring(0, lastMatch + 1);\n }\n return (this.partialPosition ? i : this.firstNonMaskPos);\n }\n\n onInputFocus(event) {\n if (this.readonly){\n return;\n }\n\n this.focused = true;\n\n clearTimeout(this.caretTimeoutId);\n let pos;\n\n this.focusText = this.inputViewChild.nativeElement.value;\n\n pos = this.checkVal();\n\n this.caretTimeoutId = setTimeout(() => {\n if (this.inputViewChild.nativeElement !== this.inputViewChild.nativeElement.ownerDocument.activeElement){\n return;\n }\n this.writeBuffer();\n if (pos == this.mask.replace(\"?\",\"\").length) {\n this.caret(0, pos);\n } else {\n this.caret(pos);\n }\n }, 10);\n\n this.onFocus.emit(event);\n }\n\n onInputChange(event) {\n if (this.androidChrome)\n this.handleAndroidInput(event);\n else\n this.handleInputChange(event);\n\n this.onInput.emit(event);\n }\n\n handleInputChange(event) {\n if (this.readonly){\n return;\n }\n\n setTimeout(() => {\n var pos = this.checkVal(true);\n this.caret(pos);\n this.updateModel(event);\n if (this.isCompleted()) {\n this.onComplete.emit();\n }\n }, 0);\n }\n\n getUnmaskedValue() {\n let unmaskedBuffer = [];\n for(let i = 0; i < this.buffer.length; i++) {\n let c = this.buffer[i];\n if (this.tests[i] && c != this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n }\n\n updateModel(e) {\n const updatedValue = this.unmask ? this.getUnmaskedValue() : e.target.value;\n if (updatedValue !== null || updatedValue !== undefined) {\n this.value = updatedValue;\n this.onModelChange(this.value);\n }\n }\n\n updateFilledState() {\n this.filled = this.inputViewChild.nativeElement && this.inputViewChild.nativeElement.value != '';\n }\n\n focus() {\n this.inputViewChild.nativeElement.focus();\n }\n\n ngOnDestroy() {\n\n }\n}\n\n@NgModule({\n imports: [CommonModule,InputTextModule],\n exports: [InputMask],\n declarations: [InputMask]\n})\nexport class InputMaskModule { }\n"]}
@@ -450,6 +450,20 @@
450
450
  enumerable: false,
451
451
  configurable: true
452
452
  });
453
+ Object.defineProperty(InputNumber.prototype, "disabled", {
454
+ get: function () {
455
+ return this._disabled;
456
+ },
457
+ set: function (disabled) {
458
+ if (disabled)
459
+ this.focused = false;
460
+ this._disabled = disabled;
461
+ if (this.timer)
462
+ this.clearTimer();
463
+ },
464
+ enumerable: false,
465
+ configurable: true
466
+ });
453
467
  InputNumber.prototype.ngOnInit = function () {
454
468
  this.constructParser();
455
469
  this.initialized = true;
@@ -1083,7 +1097,6 @@
1083
1097
  showButtons: [{ type: core.Input }],
1084
1098
  format: [{ type: core.Input }],
1085
1099
  buttonLayout: [{ type: core.Input }],
1086
- disabled: [{ type: core.Input }],
1087
1100
  inputId: [{ type: core.Input }],
1088
1101
  styleClass: [{ type: core.Input }],
1089
1102
  style: [{ type: core.Input }],
@@ -1120,7 +1133,8 @@
1120
1133
  minFractionDigits: [{ type: core.Input }],
1121
1134
  maxFractionDigits: [{ type: core.Input }],
1122
1135
  prefix: [{ type: core.Input }],
1123
- suffix: [{ type: core.Input }]
1136
+ suffix: [{ type: core.Input }],
1137
+ disabled: [{ type: core.Input }]
1124
1138
  };
1125
1139
  var InputNumberModule = /** @class */ (function () {
1126
1140
  function InputNumberModule() {