primeng 22.1.1 → 22.1.2

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 (850) hide show
  1. package/fesm2022/primeng-accordion.mjs +998 -594
  2. package/fesm2022/primeng-accordion.mjs.map +1 -1
  3. package/fesm2022/primeng-animateonscroll.mjs +266 -174
  4. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  5. package/fesm2022/primeng-api.mjs +888 -848
  6. package/fesm2022/primeng-api.mjs.map +1 -1
  7. package/fesm2022/primeng-autocomplete.mjs +2534 -1631
  8. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  9. package/fesm2022/primeng-autofocus.mjs +114 -77
  10. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  11. package/fesm2022/primeng-avatar.mjs +330 -189
  12. package/fesm2022/primeng-avatar.mjs.map +1 -1
  13. package/fesm2022/primeng-avatargroup.mjs +178 -95
  14. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  15. package/fesm2022/primeng-badge.mjs +290 -156
  16. package/fesm2022/primeng-badge.mjs.map +1 -1
  17. package/fesm2022/primeng-base.mjs +95 -83
  18. package/fesm2022/primeng-base.mjs.map +1 -1
  19. package/fesm2022/primeng-basecomponent.mjs +528 -478
  20. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  21. package/fesm2022/primeng-baseeditableholder.mjs +131 -74
  22. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  23. package/fesm2022/primeng-baseinput.mjs +214 -99
  24. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  25. package/fesm2022/primeng-basemodelholder.mjs +39 -26
  26. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  27. package/fesm2022/primeng-bind.mjs +156 -97
  28. package/fesm2022/primeng-bind.mjs.map +1 -1
  29. package/fesm2022/primeng-blockui.mjs +360 -225
  30. package/fesm2022/primeng-blockui.mjs.map +1 -1
  31. package/fesm2022/primeng-breadcrumb.mjs +458 -220
  32. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  33. package/fesm2022/primeng-button.mjs +1568 -710
  34. package/fesm2022/primeng-button.mjs.map +1 -1
  35. package/fesm2022/primeng-buttongroup.mjs +125 -73
  36. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  37. package/fesm2022/primeng-card.mjs +389 -178
  38. package/fesm2022/primeng-card.mjs.map +1 -1
  39. package/fesm2022/primeng-carousel.mjs +2393 -1772
  40. package/fesm2022/primeng-carousel.mjs.map +1 -1
  41. package/fesm2022/primeng-cascadeselect.mjs +2373 -1399
  42. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  43. package/fesm2022/primeng-chart.mjs +402 -231
  44. package/fesm2022/primeng-chart.mjs.map +1 -1
  45. package/fesm2022/primeng-checkbox.mjs +650 -351
  46. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  47. package/fesm2022/primeng-chip.mjs +411 -224
  48. package/fesm2022/primeng-chip.mjs.map +1 -1
  49. package/fesm2022/primeng-classnames.mjs +95 -48
  50. package/fesm2022/primeng-classnames.mjs.map +1 -1
  51. package/fesm2022/primeng-colorpicker.mjs +890 -635
  52. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  53. package/fesm2022/primeng-commandmenu.mjs +568 -313
  54. package/fesm2022/primeng-commandmenu.mjs.map +1 -1
  55. package/fesm2022/primeng-compare.mjs +843 -481
  56. package/fesm2022/primeng-compare.mjs.map +1 -1
  57. package/fesm2022/primeng-config.mjs +415 -321
  58. package/fesm2022/primeng-config.mjs.map +1 -1
  59. package/fesm2022/primeng-confirmdialog.mjs +1188 -536
  60. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  61. package/fesm2022/primeng-confirmpopup.mjs +810 -518
  62. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  63. package/fesm2022/primeng-contextmenu.mjs +1862 -1082
  64. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  65. package/fesm2022/primeng-dataview.mjs +1130 -550
  66. package/fesm2022/primeng-dataview.mjs.map +1 -1
  67. package/fesm2022/primeng-datepicker.mjs +3750 -3356
  68. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  69. package/fesm2022/primeng-dialog.mjs +1635 -975
  70. package/fesm2022/primeng-dialog.mjs.map +1 -1
  71. package/fesm2022/primeng-divider.mjs +272 -146
  72. package/fesm2022/primeng-divider.mjs.map +1 -1
  73. package/fesm2022/primeng-dock.mjs +609 -391
  74. package/fesm2022/primeng-dock.mjs.map +1 -1
  75. package/fesm2022/primeng-dom.mjs +599 -767
  76. package/fesm2022/primeng-dom.mjs.map +1 -1
  77. package/fesm2022/primeng-dragdrop.mjs +323 -312
  78. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  79. package/fesm2022/primeng-drawer.mjs +913 -484
  80. package/fesm2022/primeng-drawer.mjs.map +1 -1
  81. package/fesm2022/primeng-dynamicdialog.mjs +828 -917
  82. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  83. package/fesm2022/primeng-editor.mjs +547 -391
  84. package/fesm2022/primeng-editor.mjs.map +1 -1
  85. package/fesm2022/primeng-fieldset.mjs +559 -271
  86. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  87. package/fesm2022/primeng-fileupload.mjs +1836 -1054
  88. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  89. package/fesm2022/primeng-floatlabel.mjs +187 -102
  90. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  91. package/fesm2022/primeng-fluid.mjs +156 -85
  92. package/fesm2022/primeng-fluid.mjs.map +1 -1
  93. package/fesm2022/primeng-focustrap.mjs +150 -112
  94. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  95. package/fesm2022/primeng-galleria.mjs +2589 -1410
  96. package/fesm2022/primeng-galleria.mjs.map +1 -1
  97. package/fesm2022/primeng-gallery.mjs +2768 -1796
  98. package/fesm2022/primeng-gallery.mjs.map +1 -1
  99. package/fesm2022/primeng-iconfield.mjs +192 -93
  100. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  101. package/fesm2022/primeng-icons-angledoubledown.mjs +41 -23
  102. package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -1
  103. package/fesm2022/primeng-icons-angledoubleleft.mjs +41 -23
  104. package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -1
  105. package/fesm2022/primeng-icons-angledoubleright.mjs +41 -23
  106. package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -1
  107. package/fesm2022/primeng-icons-angledoubleup.mjs +41 -23
  108. package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -1
  109. package/fesm2022/primeng-icons-angledown.mjs +41 -23
  110. package/fesm2022/primeng-icons-angledown.mjs.map +1 -1
  111. package/fesm2022/primeng-icons-angleleft.mjs +41 -23
  112. package/fesm2022/primeng-icons-angleleft.mjs.map +1 -1
  113. package/fesm2022/primeng-icons-angleright.mjs +41 -23
  114. package/fesm2022/primeng-icons-angleright.mjs.map +1 -1
  115. package/fesm2022/primeng-icons-angleup.mjs +41 -23
  116. package/fesm2022/primeng-icons-angleup.mjs.map +1 -1
  117. package/fesm2022/primeng-icons-arrowdown.mjs +46 -28
  118. package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
  119. package/fesm2022/primeng-icons-arrowdownleft.mjs +41 -23
  120. package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -1
  121. package/fesm2022/primeng-icons-arrowdownright.mjs +41 -23
  122. package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -1
  123. package/fesm2022/primeng-icons-arrowleft.mjs +46 -28
  124. package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
  125. package/fesm2022/primeng-icons-arrowright.mjs +41 -23
  126. package/fesm2022/primeng-icons-arrowright.mjs.map +1 -1
  127. package/fesm2022/primeng-icons-arrowup.mjs +46 -28
  128. package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
  129. package/fesm2022/primeng-icons-ban.mjs +46 -28
  130. package/fesm2022/primeng-icons-ban.mjs.map +1 -1
  131. package/fesm2022/primeng-icons-bars.mjs +41 -23
  132. package/fesm2022/primeng-icons-bars.mjs.map +1 -1
  133. package/fesm2022/primeng-icons-baseicon.mjs +111 -67
  134. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
  135. package/fesm2022/primeng-icons-blank.mjs +40 -22
  136. package/fesm2022/primeng-icons-blank.mjs.map +1 -1
  137. package/fesm2022/primeng-icons-calendar.mjs +41 -23
  138. package/fesm2022/primeng-icons-calendar.mjs.map +1 -1
  139. package/fesm2022/primeng-icons-caretleft.mjs +41 -23
  140. package/fesm2022/primeng-icons-caretleft.mjs.map +1 -1
  141. package/fesm2022/primeng-icons-caretright.mjs +41 -23
  142. package/fesm2022/primeng-icons-caretright.mjs.map +1 -1
  143. package/fesm2022/primeng-icons-check.mjs +41 -23
  144. package/fesm2022/primeng-icons-check.mjs.map +1 -1
  145. package/fesm2022/primeng-icons-chevrondown.mjs +41 -23
  146. package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -1
  147. package/fesm2022/primeng-icons-chevronleft.mjs +41 -23
  148. package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -1
  149. package/fesm2022/primeng-icons-chevronright.mjs +41 -23
  150. package/fesm2022/primeng-icons-chevronright.mjs.map +1 -1
  151. package/fesm2022/primeng-icons-chevronup.mjs +41 -23
  152. package/fesm2022/primeng-icons-chevronup.mjs.map +1 -1
  153. package/fesm2022/primeng-icons-exclamationtriangle.mjs +46 -28
  154. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
  155. package/fesm2022/primeng-icons-eye.mjs +41 -23
  156. package/fesm2022/primeng-icons-eye.mjs.map +1 -1
  157. package/fesm2022/primeng-icons-eyeslash.mjs +46 -28
  158. package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
  159. package/fesm2022/primeng-icons-filter.mjs +46 -28
  160. package/fesm2022/primeng-icons-filter.mjs.map +1 -1
  161. package/fesm2022/primeng-icons-filterfill.mjs +41 -23
  162. package/fesm2022/primeng-icons-filterfill.mjs.map +1 -1
  163. package/fesm2022/primeng-icons-filterslash.mjs +46 -28
  164. package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
  165. package/fesm2022/primeng-icons-home.mjs +46 -28
  166. package/fesm2022/primeng-icons-home.mjs.map +1 -1
  167. package/fesm2022/primeng-icons-infocircle.mjs +46 -28
  168. package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
  169. package/fesm2022/primeng-icons-minus.mjs +41 -23
  170. package/fesm2022/primeng-icons-minus.mjs.map +1 -1
  171. package/fesm2022/primeng-icons-pencil.mjs +46 -28
  172. package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
  173. package/fesm2022/primeng-icons-plus.mjs +46 -28
  174. package/fesm2022/primeng-icons-plus.mjs.map +1 -1
  175. package/fesm2022/primeng-icons-refresh.mjs +46 -28
  176. package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
  177. package/fesm2022/primeng-icons-search.mjs +46 -28
  178. package/fesm2022/primeng-icons-search.mjs.map +1 -1
  179. package/fesm2022/primeng-icons-searchminus.mjs +46 -28
  180. package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
  181. package/fesm2022/primeng-icons-searchplus.mjs +46 -28
  182. package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
  183. package/fesm2022/primeng-icons-sortalt.mjs +46 -28
  184. package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
  185. package/fesm2022/primeng-icons-sortamountdown.mjs +46 -28
  186. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
  187. package/fesm2022/primeng-icons-sortamountupalt.mjs +46 -28
  188. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
  189. package/fesm2022/primeng-icons-spinner.mjs +46 -28
  190. package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
  191. package/fesm2022/primeng-icons-star.mjs +46 -28
  192. package/fesm2022/primeng-icons-star.mjs.map +1 -1
  193. package/fesm2022/primeng-icons-starfill.mjs +46 -28
  194. package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
  195. package/fesm2022/primeng-icons-thlarge.mjs +46 -28
  196. package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
  197. package/fesm2022/primeng-icons-times.mjs +41 -23
  198. package/fesm2022/primeng-icons-times.mjs.map +1 -1
  199. package/fesm2022/primeng-icons-timescircle.mjs +46 -28
  200. package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
  201. package/fesm2022/primeng-icons-trash.mjs +46 -28
  202. package/fesm2022/primeng-icons-trash.mjs.map +1 -1
  203. package/fesm2022/primeng-icons-undo.mjs +46 -28
  204. package/fesm2022/primeng-icons-undo.mjs.map +1 -1
  205. package/fesm2022/primeng-icons-upload.mjs +46 -28
  206. package/fesm2022/primeng-icons-upload.mjs.map +1 -1
  207. package/fesm2022/primeng-icons-windowmaximize.mjs +46 -28
  208. package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
  209. package/fesm2022/primeng-icons-windowminimize.mjs +46 -28
  210. package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
  211. package/fesm2022/primeng-icons.mjs +53 -63
  212. package/fesm2022/primeng-iftalabel.mjs +153 -86
  213. package/fesm2022/primeng-iftalabel.mjs.map +1 -1
  214. package/fesm2022/primeng-image.mjs +1006 -532
  215. package/fesm2022/primeng-image.mjs.map +1 -1
  216. package/fesm2022/primeng-imagecompare.mjs +325 -165
  217. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  218. package/fesm2022/primeng-inplace.mjs +401 -199
  219. package/fesm2022/primeng-inplace.mjs.map +1 -1
  220. package/fesm2022/primeng-inputcolor.mjs +2631 -2189
  221. package/fesm2022/primeng-inputcolor.mjs.map +1 -1
  222. package/fesm2022/primeng-inputgroup.mjs +159 -91
  223. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  224. package/fesm2022/primeng-inputgroupaddon.mjs +153 -68
  225. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  226. package/fesm2022/primeng-inputicon.mjs +173 -72
  227. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  228. package/fesm2022/primeng-inputmask.mjs +1607 -1387
  229. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  230. package/fesm2022/primeng-inputnumber.mjs +1646 -1305
  231. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  232. package/fesm2022/primeng-inputotp.mjs +571 -376
  233. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  234. package/fesm2022/primeng-inputpassword.mjs +179 -96
  235. package/fesm2022/primeng-inputpassword.mjs.map +1 -1
  236. package/fesm2022/primeng-inputtags.mjs +1212 -588
  237. package/fesm2022/primeng-inputtags.mjs.map +1 -1
  238. package/fesm2022/primeng-inputtext.mjs +325 -175
  239. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  240. package/fesm2022/primeng-keyfilter.mjs +268 -244
  241. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  242. package/fesm2022/primeng-knob.mjs +627 -405
  243. package/fesm2022/primeng-knob.mjs.map +1 -1
  244. package/fesm2022/primeng-label.mjs +143 -81
  245. package/fesm2022/primeng-label.mjs.map +1 -1
  246. package/fesm2022/primeng-license.mjs +10 -36
  247. package/fesm2022/primeng-license.mjs.map +1 -1
  248. package/fesm2022/primeng-listbox.mjs +2409 -1608
  249. package/fesm2022/primeng-listbox.mjs.map +1 -1
  250. package/fesm2022/primeng-megamenu.mjs +2006 -1137
  251. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  252. package/fesm2022/primeng-menu.mjs +1437 -848
  253. package/fesm2022/primeng-menu.mjs.map +1 -1
  254. package/fesm2022/primeng-menubar.mjs +1832 -994
  255. package/fesm2022/primeng-menubar.mjs.map +1 -1
  256. package/fesm2022/primeng-message.mjs +474 -239
  257. package/fesm2022/primeng-message.mjs.map +1 -1
  258. package/fesm2022/primeng-metergroup.mjs +663 -331
  259. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  260. package/fesm2022/primeng-motion.mjs +1179 -690
  261. package/fesm2022/primeng-motion.mjs.map +1 -1
  262. package/fesm2022/primeng-multiselect.mjs +3406 -1932
  263. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  264. package/fesm2022/primeng-orderlist.mjs +1308 -664
  265. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  266. package/fesm2022/primeng-organizationchart.mjs +912 -595
  267. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  268. package/fesm2022/primeng-overlay.mjs +929 -624
  269. package/fesm2022/primeng-overlay.mjs.map +1 -1
  270. package/fesm2022/primeng-overlaybadge.mjs +291 -107
  271. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  272. package/fesm2022/primeng-paginator.mjs +959 -503
  273. package/fesm2022/primeng-paginator.mjs.map +1 -1
  274. package/fesm2022/primeng-panel.mjs +668 -343
  275. package/fesm2022/primeng-panel.mjs.map +1 -1
  276. package/fesm2022/primeng-panelmenu.mjs +1842 -998
  277. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  278. package/fesm2022/primeng-passthrough.mjs +8 -16
  279. package/fesm2022/primeng-passthrough.mjs.map +1 -1
  280. package/fesm2022/primeng-password.mjs +1518 -866
  281. package/fesm2022/primeng-password.mjs.map +1 -1
  282. package/fesm2022/primeng-picklist.mjs +2270 -1256
  283. package/fesm2022/primeng-picklist.mjs.map +1 -1
  284. package/fesm2022/primeng-popover.mjs +656 -436
  285. package/fesm2022/primeng-popover.mjs.map +1 -1
  286. package/fesm2022/primeng-progressbar.mjs +346 -168
  287. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  288. package/fesm2022/primeng-progressspinner.mjs +338 -188
  289. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  290. package/fesm2022/primeng-radiobutton.mjs +499 -292
  291. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  292. package/fesm2022/primeng-rating.mjs +583 -352
  293. package/fesm2022/primeng-rating.mjs.map +1 -1
  294. package/fesm2022/primeng-ripple.mjs +194 -184
  295. package/fesm2022/primeng-ripple.mjs.map +1 -1
  296. package/fesm2022/primeng-scrollarea.mjs +1018 -721
  297. package/fesm2022/primeng-scrollarea.mjs.map +1 -1
  298. package/fesm2022/primeng-scroller.mjs +1386 -1083
  299. package/fesm2022/primeng-scroller.mjs.map +1 -1
  300. package/fesm2022/primeng-scrollpanel.mjs +568 -480
  301. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  302. package/fesm2022/primeng-scrolltop.mjs +509 -260
  303. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  304. package/fesm2022/primeng-select.mjs +2948 -1765
  305. package/fesm2022/primeng-select.mjs.map +1 -1
  306. package/fesm2022/primeng-selectbutton.mjs +629 -339
  307. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  308. package/fesm2022/primeng-sidebar.mjs +2561 -1416
  309. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  310. package/fesm2022/primeng-skeleton.mjs +300 -157
  311. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  312. package/fesm2022/primeng-slider.mjs +841 -604
  313. package/fesm2022/primeng-slider.mjs.map +1 -1
  314. package/fesm2022/primeng-speeddial.mjs +1115 -717
  315. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  316. package/fesm2022/primeng-splitbutton.mjs +889 -339
  317. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  318. package/fesm2022/primeng-splitter.mjs +997 -759
  319. package/fesm2022/primeng-splitter.mjs.map +1 -1
  320. package/fesm2022/primeng-stepper.mjs +1355 -641
  321. package/fesm2022/primeng-stepper.mjs.map +1 -1
  322. package/fesm2022/primeng-steps.mjs +397 -304
  323. package/fesm2022/primeng-steps.mjs.map +1 -1
  324. package/fesm2022/primeng-styleclass.mjs +446 -334
  325. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  326. package/fesm2022/primeng-table.mjs +9763 -5870
  327. package/fesm2022/primeng-table.mjs.map +1 -1
  328. package/fesm2022/primeng-tabs.mjs +1357 -831
  329. package/fesm2022/primeng-tabs.mjs.map +1 -1
  330. package/fesm2022/primeng-tag.mjs +305 -151
  331. package/fesm2022/primeng-tag.mjs.map +1 -1
  332. package/fesm2022/primeng-terminal.mjs +368 -216
  333. package/fesm2022/primeng-terminal.mjs.map +1 -1
  334. package/fesm2022/primeng-textarea.mjs +345 -208
  335. package/fesm2022/primeng-textarea.mjs.map +1 -1
  336. package/fesm2022/primeng-tieredmenu.mjs +1917 -1125
  337. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  338. package/fesm2022/primeng-timeline.mjs +304 -165
  339. package/fesm2022/primeng-timeline.mjs.map +1 -1
  340. package/fesm2022/primeng-toast.mjs +1369 -922
  341. package/fesm2022/primeng-toast.mjs.map +1 -1
  342. package/fesm2022/primeng-togglebutton.mjs +563 -309
  343. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  344. package/fesm2022/primeng-toggleswitch.mjs +464 -237
  345. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  346. package/fesm2022/primeng-toolbar.mjs +299 -129
  347. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  348. package/fesm2022/primeng-tooltip.mjs +1018 -778
  349. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  350. package/fesm2022/primeng-tree.mjs +2679 -1875
  351. package/fesm2022/primeng-tree.mjs.map +1 -1
  352. package/fesm2022/primeng-treeselect.mjs +1678 -939
  353. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  354. package/fesm2022/primeng-treetable.mjs +5849 -3754
  355. package/fesm2022/primeng-treetable.mjs.map +1 -1
  356. package/fesm2022/primeng-ts-helpers.mjs +0 -4
  357. package/fesm2022/primeng-types-accordion.mjs +0 -4
  358. package/fesm2022/primeng-types-autocomplete.mjs +0 -4
  359. package/fesm2022/primeng-types-avatar.mjs +0 -4
  360. package/fesm2022/primeng-types-avatargroup.mjs +0 -4
  361. package/fesm2022/primeng-types-badge.mjs +0 -4
  362. package/fesm2022/primeng-types-blockui.mjs +0 -4
  363. package/fesm2022/primeng-types-breadcrumb.mjs +0 -4
  364. package/fesm2022/primeng-types-button.mjs +0 -4
  365. package/fesm2022/primeng-types-card.mjs +0 -4
  366. package/fesm2022/primeng-types-carousel.mjs +0 -4
  367. package/fesm2022/primeng-types-cascadeselect.mjs +0 -4
  368. package/fesm2022/primeng-types-chart.mjs +0 -4
  369. package/fesm2022/primeng-types-checkbox.mjs +0 -4
  370. package/fesm2022/primeng-types-chip.mjs +0 -4
  371. package/fesm2022/primeng-types-colorpicker.mjs +0 -4
  372. package/fesm2022/primeng-types-commandmenu.mjs +0 -4
  373. package/fesm2022/primeng-types-compare.mjs +0 -4
  374. package/fesm2022/primeng-types-confirmdialog.mjs +0 -4
  375. package/fesm2022/primeng-types-confirmpopup.mjs +0 -4
  376. package/fesm2022/primeng-types-contextmenu.mjs +0 -4
  377. package/fesm2022/primeng-types-dataview.mjs +0 -4
  378. package/fesm2022/primeng-types-datepicker.mjs +0 -4
  379. package/fesm2022/primeng-types-dialog.mjs +0 -4
  380. package/fesm2022/primeng-types-divider.mjs +0 -4
  381. package/fesm2022/primeng-types-dock.mjs +0 -4
  382. package/fesm2022/primeng-types-drawer.mjs +0 -4
  383. package/fesm2022/primeng-types-editor.mjs +0 -4
  384. package/fesm2022/primeng-types-fieldset.mjs +0 -4
  385. package/fesm2022/primeng-types-fileupload.mjs +0 -4
  386. package/fesm2022/primeng-types-floatlabel.mjs +0 -4
  387. package/fesm2022/primeng-types-fluid.mjs +0 -4
  388. package/fesm2022/primeng-types-galleria.mjs +0 -4
  389. package/fesm2022/primeng-types-gallery.mjs +0 -4
  390. package/fesm2022/primeng-types-iconfield.mjs +0 -4
  391. package/fesm2022/primeng-types-iftalabel.mjs +0 -4
  392. package/fesm2022/primeng-types-image.mjs +0 -4
  393. package/fesm2022/primeng-types-imagecompare.mjs +0 -4
  394. package/fesm2022/primeng-types-inplace.mjs +0 -4
  395. package/fesm2022/primeng-types-inputcolor.mjs +0 -4
  396. package/fesm2022/primeng-types-inputgroup.mjs +0 -4
  397. package/fesm2022/primeng-types-inputgroupaddon.mjs +0 -4
  398. package/fesm2022/primeng-types-inputicon.mjs +0 -4
  399. package/fesm2022/primeng-types-inputmask.mjs +0 -4
  400. package/fesm2022/primeng-types-inputnumber.mjs +0 -4
  401. package/fesm2022/primeng-types-inputotp.mjs +0 -4
  402. package/fesm2022/primeng-types-inputpassword.mjs +0 -4
  403. package/fesm2022/primeng-types-inputtags.mjs +0 -4
  404. package/fesm2022/primeng-types-inputtext.mjs +0 -4
  405. package/fesm2022/primeng-types-knob.mjs +0 -4
  406. package/fesm2022/primeng-types-label.mjs +0 -4
  407. package/fesm2022/primeng-types-listbox.mjs +0 -4
  408. package/fesm2022/primeng-types-megamenu.mjs +0 -4
  409. package/fesm2022/primeng-types-menu.mjs +0 -4
  410. package/fesm2022/primeng-types-menubar.mjs +0 -4
  411. package/fesm2022/primeng-types-message.mjs +0 -4
  412. package/fesm2022/primeng-types-metergroup.mjs +0 -4
  413. package/fesm2022/primeng-types-motion.mjs +0 -4
  414. package/fesm2022/primeng-types-multiselect.mjs +0 -4
  415. package/fesm2022/primeng-types-orderlist.mjs +0 -4
  416. package/fesm2022/primeng-types-organizationchart.mjs +0 -4
  417. package/fesm2022/primeng-types-overlay.mjs +0 -4
  418. package/fesm2022/primeng-types-overlaybadge.mjs +0 -4
  419. package/fesm2022/primeng-types-paginator.mjs +0 -4
  420. package/fesm2022/primeng-types-panel.mjs +0 -4
  421. package/fesm2022/primeng-types-panelmenu.mjs +0 -4
  422. package/fesm2022/primeng-types-password.mjs +0 -4
  423. package/fesm2022/primeng-types-picklist.mjs +0 -4
  424. package/fesm2022/primeng-types-popover.mjs +0 -4
  425. package/fesm2022/primeng-types-progressbar.mjs +0 -4
  426. package/fesm2022/primeng-types-progressspinner.mjs +0 -4
  427. package/fesm2022/primeng-types-radiobutton.mjs +0 -4
  428. package/fesm2022/primeng-types-rating.mjs +0 -4
  429. package/fesm2022/primeng-types-scrollarea.mjs +0 -4
  430. package/fesm2022/primeng-types-scroller.mjs +0 -4
  431. package/fesm2022/primeng-types-scrollpanel.mjs +0 -4
  432. package/fesm2022/primeng-types-scrolltop.mjs +0 -4
  433. package/fesm2022/primeng-types-select.mjs +0 -4
  434. package/fesm2022/primeng-types-selectbutton.mjs +0 -4
  435. package/fesm2022/primeng-types-shared.mjs +0 -4
  436. package/fesm2022/primeng-types-sidebar.mjs +0 -4
  437. package/fesm2022/primeng-types-skeleton.mjs +0 -4
  438. package/fesm2022/primeng-types-slider.mjs +0 -4
  439. package/fesm2022/primeng-types-speeddial.mjs +0 -4
  440. package/fesm2022/primeng-types-splitbutton.mjs +0 -4
  441. package/fesm2022/primeng-types-splitter.mjs +0 -4
  442. package/fesm2022/primeng-types-stepper.mjs +0 -4
  443. package/fesm2022/primeng-types-table.mjs +0 -4
  444. package/fesm2022/primeng-types-tabs.mjs +0 -4
  445. package/fesm2022/primeng-types-tag.mjs +0 -4
  446. package/fesm2022/primeng-types-terminal.mjs +0 -4
  447. package/fesm2022/primeng-types-textarea.mjs +0 -4
  448. package/fesm2022/primeng-types-tieredmenu.mjs +0 -4
  449. package/fesm2022/primeng-types-timeline.mjs +0 -4
  450. package/fesm2022/primeng-types-toast.mjs +0 -4
  451. package/fesm2022/primeng-types-togglebutton.mjs +0 -4
  452. package/fesm2022/primeng-types-toggleswitch.mjs +0 -4
  453. package/fesm2022/primeng-types-toolbar.mjs +0 -4
  454. package/fesm2022/primeng-types-tooltip.mjs +0 -4
  455. package/fesm2022/primeng-types-tree.mjs +0 -4
  456. package/fesm2022/primeng-types-treeselect.mjs +0 -4
  457. package/fesm2022/primeng-types-treetable.mjs +0 -4
  458. package/fesm2022/primeng-usestyle.mjs +105 -113
  459. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  460. package/fesm2022/primeng-utils.mjs +236 -317
  461. package/fesm2022/primeng-utils.mjs.map +1 -1
  462. package/fesm2022/primeng.mjs +1 -5
  463. package/fesm2022/primeng.mjs.map +1 -1
  464. package/package.json +6 -1
  465. package/types/primeng-accordion.d.ts +289 -219
  466. package/types/primeng-animateonscroll.d.ts +89 -61
  467. package/types/primeng-api.d.ts +1754 -1790
  468. package/types/primeng-autocomplete.d.ts +1053 -754
  469. package/types/primeng-autofocus.d.ts +27 -24
  470. package/types/primeng-avatar.d.ts +152 -114
  471. package/types/primeng-avatargroup.d.ts +45 -40
  472. package/types/primeng-badge.d.ts +104 -78
  473. package/types/primeng-base.d.ts +49 -52
  474. package/types/primeng-basecomponent.d.ts +191 -174
  475. package/types/primeng-baseeditableholder.d.ts +63 -45
  476. package/types/primeng-baseinput.d.ts +122 -74
  477. package/types/primeng-basemodelholder.d.ts +9 -12
  478. package/types/primeng-bind.d.ts +36 -32
  479. package/types/primeng-blockui.d.ts +99 -80
  480. package/types/primeng-breadcrumb.d.ts +159 -133
  481. package/types/primeng-button.d.ts +690 -425
  482. package/types/primeng-buttongroup.d.ts +26 -30
  483. package/types/primeng-card.d.ts +130 -119
  484. package/types/primeng-carousel.d.ts +799 -629
  485. package/types/primeng-cascadeselect.d.ts +753 -562
  486. package/types/primeng-chart.d.ts +158 -112
  487. package/types/primeng-checkbox.d.ts +298 -208
  488. package/types/primeng-chip.d.ts +187 -143
  489. package/types/primeng-classnames.d.ts +23 -21
  490. package/types/primeng-colorpicker.d.ts +324 -269
  491. package/types/primeng-commandmenu.d.ts +213 -165
  492. package/types/primeng-compare.d.ts +267 -189
  493. package/types/primeng-config.d.ts +294 -304
  494. package/types/primeng-confirmdialog.d.ts +504 -325
  495. package/types/primeng-confirmpopup.d.ts +253 -207
  496. package/types/primeng-contextmenu.d.ts +522 -366
  497. package/types/primeng-dataview.d.ts +497 -342
  498. package/types/primeng-datepicker.d.ts +1268 -969
  499. package/types/primeng-dialog.d.ts +667 -462
  500. package/types/primeng-divider.d.ts +112 -96
  501. package/types/primeng-dock.d.ts +206 -172
  502. package/types/primeng-dom.d.ts +97 -100
  503. package/types/primeng-dragdrop.d.ts +142 -107
  504. package/types/primeng-drawer.d.ts +354 -254
  505. package/types/primeng-dynamicdialog.d.ts +527 -535
  506. package/types/primeng-editor.d.ts +210 -162
  507. package/types/primeng-fieldset.d.ts +198 -163
  508. package/types/primeng-fileupload.d.ts +726 -523
  509. package/types/primeng-floatlabel.d.ts +54 -48
  510. package/types/primeng-fluid.d.ts +36 -36
  511. package/types/primeng-focustrap.d.ts +30 -27
  512. package/types/primeng-galleria.d.ts +569 -430
  513. package/types/primeng-gallery.d.ts +754 -552
  514. package/types/primeng-iconfield.d.ts +53 -42
  515. package/types/primeng-icons-angledoubledown.d.ts +6 -9
  516. package/types/primeng-icons-angledoubleleft.d.ts +6 -9
  517. package/types/primeng-icons-angledoubleright.d.ts +6 -9
  518. package/types/primeng-icons-angledoubleup.d.ts +6 -9
  519. package/types/primeng-icons-angledown.d.ts +6 -9
  520. package/types/primeng-icons-angleleft.d.ts +6 -9
  521. package/types/primeng-icons-angleright.d.ts +6 -9
  522. package/types/primeng-icons-angleup.d.ts +6 -9
  523. package/types/primeng-icons-arrowdown.d.ts +8 -11
  524. package/types/primeng-icons-arrowdownleft.d.ts +6 -9
  525. package/types/primeng-icons-arrowdownright.d.ts +6 -9
  526. package/types/primeng-icons-arrowleft.d.ts +8 -11
  527. package/types/primeng-icons-arrowright.d.ts +6 -9
  528. package/types/primeng-icons-arrowup.d.ts +8 -11
  529. package/types/primeng-icons-ban.d.ts +8 -11
  530. package/types/primeng-icons-bars.d.ts +6 -9
  531. package/types/primeng-icons-baseicon.d.ts +23 -22
  532. package/types/primeng-icons-blank.d.ts +6 -9
  533. package/types/primeng-icons-calendar.d.ts +6 -9
  534. package/types/primeng-icons-caretleft.d.ts +6 -9
  535. package/types/primeng-icons-caretright.d.ts +6 -9
  536. package/types/primeng-icons-check.d.ts +6 -9
  537. package/types/primeng-icons-chevrondown.d.ts +6 -9
  538. package/types/primeng-icons-chevronleft.d.ts +6 -9
  539. package/types/primeng-icons-chevronright.d.ts +6 -9
  540. package/types/primeng-icons-chevronup.d.ts +6 -9
  541. package/types/primeng-icons-exclamationtriangle.d.ts +8 -11
  542. package/types/primeng-icons-eye.d.ts +6 -9
  543. package/types/primeng-icons-eyeslash.d.ts +8 -11
  544. package/types/primeng-icons-filter.d.ts +8 -11
  545. package/types/primeng-icons-filterfill.d.ts +6 -9
  546. package/types/primeng-icons-filterslash.d.ts +8 -11
  547. package/types/primeng-icons-home.d.ts +8 -11
  548. package/types/primeng-icons-infocircle.d.ts +8 -11
  549. package/types/primeng-icons-minus.d.ts +6 -9
  550. package/types/primeng-icons-pencil.d.ts +8 -11
  551. package/types/primeng-icons-plus.d.ts +8 -11
  552. package/types/primeng-icons-refresh.d.ts +8 -11
  553. package/types/primeng-icons-search.d.ts +8 -11
  554. package/types/primeng-icons-searchminus.d.ts +8 -11
  555. package/types/primeng-icons-searchplus.d.ts +8 -11
  556. package/types/primeng-icons-sortalt.d.ts +8 -11
  557. package/types/primeng-icons-sortamountdown.d.ts +8 -11
  558. package/types/primeng-icons-sortamountupalt.d.ts +8 -11
  559. package/types/primeng-icons-spinner.d.ts +8 -11
  560. package/types/primeng-icons-star.d.ts +8 -11
  561. package/types/primeng-icons-starfill.d.ts +8 -11
  562. package/types/primeng-icons-thlarge.d.ts +8 -11
  563. package/types/primeng-icons-times.d.ts +6 -9
  564. package/types/primeng-icons-timescircle.d.ts +8 -11
  565. package/types/primeng-icons-trash.d.ts +8 -11
  566. package/types/primeng-icons-undo.d.ts +8 -11
  567. package/types/primeng-icons-upload.d.ts +8 -11
  568. package/types/primeng-icons-windowmaximize.d.ts +8 -11
  569. package/types/primeng-icons-windowminimize.d.ts +8 -11
  570. package/types/primeng-icons.d.ts +53 -53
  571. package/types/primeng-iftalabel.d.ts +37 -37
  572. package/types/primeng-image.d.ts +403 -308
  573. package/types/primeng-imagecompare.d.ts +93 -77
  574. package/types/primeng-inplace.d.ts +125 -111
  575. package/types/primeng-inputcolor.d.ts +646 -507
  576. package/types/primeng-inputgroup.d.ts +41 -41
  577. package/types/primeng-inputgroupaddon.d.ts +31 -31
  578. package/types/primeng-inputicon.d.ts +38 -32
  579. package/types/primeng-inputmask.d.ts +519 -362
  580. package/types/primeng-inputnumber.d.ts +572 -405
  581. package/types/primeng-inputotp.d.ts +205 -156
  582. package/types/primeng-inputpassword.d.ts +59 -43
  583. package/types/primeng-inputtags.d.ts +451 -297
  584. package/types/primeng-inputtext.d.ts +129 -93
  585. package/types/primeng-keyfilter.d.ts +62 -53
  586. package/types/primeng-knob.d.ts +256 -183
  587. package/types/primeng-label.d.ts +36 -36
  588. package/types/primeng-license.d.ts +1 -3
  589. package/types/primeng-listbox.d.ts +1040 -786
  590. package/types/primeng-megamenu.d.ts +535 -383
  591. package/types/primeng-menu.d.ts +478 -361
  592. package/types/primeng-menubar.d.ts +495 -354
  593. package/types/primeng-message.d.ts +191 -148
  594. package/types/primeng-metergroup.d.ts +249 -187
  595. package/types/primeng-motion.d.ts +602 -384
  596. package/types/primeng-multiselect.d.ts +1192 -858
  597. package/types/primeng-orderlist.d.ts +538 -390
  598. package/types/primeng-organizationchart.d.ts +235 -192
  599. package/types/primeng-overlay.d.ts +394 -294
  600. package/types/primeng-overlaybadge.d.ts +95 -64
  601. package/types/primeng-paginator.d.ts +409 -309
  602. package/types/primeng-panel.d.ts +267 -217
  603. package/types/primeng-panelmenu.d.ts +254 -228
  604. package/types/primeng-passthrough.d.ts +5 -7
  605. package/types/primeng-password.d.ts +605 -430
  606. package/types/primeng-picklist.d.ts +1041 -756
  607. package/types/primeng-popover.d.ts +235 -176
  608. package/types/primeng-progressbar.d.ts +130 -99
  609. package/types/primeng-progressspinner.d.ts +144 -108
  610. package/types/primeng-radiobutton.d.ts +218 -168
  611. package/types/primeng-rating.d.ts +239 -189
  612. package/types/primeng-ripple.d.ts +38 -42
  613. package/types/primeng-scrollarea.d.ts +290 -239
  614. package/types/primeng-scroller.d.ts +522 -387
  615. package/types/primeng-scrollpanel.d.ts +134 -128
  616. package/types/primeng-scrolltop.d.ts +169 -123
  617. package/types/primeng-select.d.ts +1013 -738
  618. package/types/primeng-selectbutton.d.ts +238 -164
  619. package/types/primeng-sidebar.d.ts +794 -561
  620. package/types/primeng-skeleton.d.ts +114 -83
  621. package/types/primeng-slider.d.ts +375 -306
  622. package/types/primeng-speeddial.d.ts +492 -370
  623. package/types/primeng-splitbutton.d.ts +381 -240
  624. package/types/primeng-splitter.d.ts +392 -299
  625. package/types/primeng-stepper.d.ts +422 -250
  626. package/types/primeng-steps.d.ts +157 -134
  627. package/types/primeng-styleclass.d.ts +163 -105
  628. package/types/primeng-table.d.ts +2898 -1911
  629. package/types/primeng-tabs.d.ts +467 -301
  630. package/types/primeng-tag.d.ts +106 -85
  631. package/types/primeng-terminal.d.ts +131 -117
  632. package/types/primeng-textarea.d.ts +145 -107
  633. package/types/primeng-tieredmenu.d.ts +572 -398
  634. package/types/primeng-timeline.d.ts +125 -109
  635. package/types/primeng-toast.d.ts +310 -247
  636. package/types/primeng-togglebutton.d.ts +254 -182
  637. package/types/primeng-toggleswitch.d.ts +188 -140
  638. package/types/primeng-toolbar.d.ts +82 -76
  639. package/types/primeng-tooltip.d.ts +334 -232
  640. package/types/primeng-tree.d.ts +762 -559
  641. package/types/primeng-treeselect.d.ts +749 -547
  642. package/types/primeng-treetable.d.ts +1839 -1313
  643. package/types/primeng-ts-helpers.d.ts +4 -6
  644. package/types/primeng-types-accordion.d.ts +58 -62
  645. package/types/primeng-types-autocomplete.d.ts +230 -233
  646. package/types/primeng-types-avatar.d.ts +25 -28
  647. package/types/primeng-types-avatargroup.d.ts +11 -14
  648. package/types/primeng-types-badge.d.ts +13 -16
  649. package/types/primeng-types-blockui.d.ts +18 -21
  650. package/types/primeng-types-breadcrumb.d.ts +65 -68
  651. package/types/primeng-types-button.d.ts +106 -109
  652. package/types/primeng-types-card.d.ts +54 -57
  653. package/types/primeng-types-carousel.d.ts +143 -146
  654. package/types/primeng-types-cascadeselect.d.ts +186 -192
  655. package/types/primeng-types-chart.d.ts +34 -39
  656. package/types/primeng-types-checkbox.d.ts +52 -55
  657. package/types/primeng-types-chip.d.ts +48 -51
  658. package/types/primeng-types-colorpicker.d.ts +59 -62
  659. package/types/primeng-types-commandmenu.d.ts +98 -101
  660. package/types/primeng-types-compare.d.ts +33 -36
  661. package/types/primeng-types-confirmdialog.d.ts +124 -127
  662. package/types/primeng-types-confirmpopup.d.ts +75 -78
  663. package/types/primeng-types-contextmenu.d.ts +100 -103
  664. package/types/primeng-types-dataview.d.ts +180 -183
  665. package/types/primeng-types-datepicker.d.ts +442 -445
  666. package/types/primeng-types-dialog.d.ts +93 -96
  667. package/types/primeng-types-divider.d.ts +14 -17
  668. package/types/primeng-types-dock.d.ts +45 -48
  669. package/types/primeng-types-drawer.d.ts +62 -65
  670. package/types/primeng-types-editor.d.ts +143 -146
  671. package/types/primeng-types-fieldset.d.ts +83 -87
  672. package/types/primeng-types-fileupload.d.ts +296 -301
  673. package/types/primeng-types-floatlabel.d.ts +12 -15
  674. package/types/primeng-types-fluid.d.ts +11 -14
  675. package/types/primeng-types-galleria.d.ts +209 -212
  676. package/types/primeng-types-gallery.d.ts +195 -198
  677. package/types/primeng-types-iconfield.d.ts +12 -15
  678. package/types/primeng-types-iftalabel.d.ts +11 -14
  679. package/types/primeng-types-image.d.ts +118 -121
  680. package/types/primeng-types-imagecompare.d.ts +22 -25
  681. package/types/primeng-types-inplace.d.ts +46 -49
  682. package/types/primeng-types-inputcolor.d.ts +86 -89
  683. package/types/primeng-types-inputgroup.d.ts +11 -14
  684. package/types/primeng-types-inputgroupaddon.d.ts +11 -14
  685. package/types/primeng-types-inputicon.d.ts +11 -14
  686. package/types/primeng-types-inputmask.d.ts +30 -33
  687. package/types/primeng-types-inputnumber.d.ts +72 -75
  688. package/types/primeng-types-inputotp.d.ts +67 -70
  689. package/types/primeng-types-inputpassword.d.ts +7 -10
  690. package/types/primeng-types-inputtags.d.ts +122 -125
  691. package/types/primeng-types-inputtext.d.ts +7 -10
  692. package/types/primeng-types-knob.d.ts +23 -26
  693. package/types/primeng-types-label.d.ts +7 -10
  694. package/types/primeng-types-listbox.d.ts +262 -266
  695. package/types/primeng-types-megamenu.d.ts +135 -138
  696. package/types/primeng-types-menu.d.ts +98 -101
  697. package/types/primeng-types-menubar.d.ts +122 -125
  698. package/types/primeng-types-message.d.ts +69 -72
  699. package/types/primeng-types-metergroup.d.ts +137 -140
  700. package/types/primeng-types-motion.d.ts +11 -14
  701. package/types/primeng-types-multiselect.d.ts +329 -333
  702. package/types/primeng-types-orderlist.d.ts +126 -129
  703. package/types/primeng-types-organizationchart.d.ts +147 -153
  704. package/types/primeng-types-overlay.d.ts +31 -34
  705. package/types/primeng-types-overlaybadge.d.ts +17 -20
  706. package/types/primeng-types-paginator.d.ts +131 -134
  707. package/types/primeng-types-panel.d.ts +91 -95
  708. package/types/primeng-types-panelmenu.d.ts +150 -153
  709. package/types/primeng-types-password.d.ts +94 -97
  710. package/types/primeng-types-picklist.d.ts +250 -260
  711. package/types/primeng-types-popover.d.ts +33 -36
  712. package/types/primeng-types-progressbar.d.ts +33 -36
  713. package/types/primeng-types-progressspinner.d.ts +27 -30
  714. package/types/primeng-types-radiobutton.d.ts +29 -32
  715. package/types/primeng-types-rating.d.ts +62 -65
  716. package/types/primeng-types-scrollarea.d.ts +35 -38
  717. package/types/primeng-types-scroller.d.ts +142 -146
  718. package/types/primeng-types-scrollpanel.d.ts +31 -34
  719. package/types/primeng-types-scrolltop.d.ts +37 -40
  720. package/types/primeng-types-select.d.ts +251 -254
  721. package/types/primeng-types-selectbutton.d.ts +56 -59
  722. package/types/primeng-types-shared.d.ts +6 -9
  723. package/types/primeng-types-sidebar.d.ts +105 -108
  724. package/types/primeng-types-skeleton.d.ts +11 -14
  725. package/types/primeng-types-slider.d.ts +59 -62
  726. package/types/primeng-types-speeddial.d.ts +71 -74
  727. package/types/primeng-types-splitbutton.d.ts +35 -38
  728. package/types/primeng-types-splitter.d.ts +58 -63
  729. package/types/primeng-types-stepper.d.ts +77 -80
  730. package/types/primeng-types-table.d.ts +743 -749
  731. package/types/primeng-types-tabs.d.ts +48 -51
  732. package/types/primeng-types-tag.d.ts +27 -30
  733. package/types/primeng-types-terminal.d.ts +43 -46
  734. package/types/primeng-types-textarea.d.ts +11 -14
  735. package/types/primeng-types-tieredmenu.d.ts +154 -157
  736. package/types/primeng-types-timeline.d.ts +60 -63
  737. package/types/primeng-types-toast.d.ts +92 -95
  738. package/types/primeng-types-togglebutton.d.ts +52 -55
  739. package/types/primeng-types-toggleswitch.d.ts +41 -44
  740. package/types/primeng-types-toolbar.d.ts +34 -37
  741. package/types/primeng-types-tooltip.d.ts +17 -20
  742. package/types/primeng-types-tree.d.ts +237 -246
  743. package/types/primeng-types-treeselect.d.ts +198 -202
  744. package/types/primeng-types-treetable.d.ts +492 -497
  745. package/types/primeng-usestyle.d.ts +28 -31
  746. package/types/primeng-utils.d.ts +37 -40
  747. package/types/primeng.d.ts +2 -2
  748. package/fesm2022/primeng-icons.mjs.map +0 -1
  749. package/fesm2022/primeng-ts-helpers.mjs.map +0 -1
  750. package/fesm2022/primeng-types-accordion.mjs.map +0 -1
  751. package/fesm2022/primeng-types-autocomplete.mjs.map +0 -1
  752. package/fesm2022/primeng-types-avatar.mjs.map +0 -1
  753. package/fesm2022/primeng-types-avatargroup.mjs.map +0 -1
  754. package/fesm2022/primeng-types-badge.mjs.map +0 -1
  755. package/fesm2022/primeng-types-blockui.mjs.map +0 -1
  756. package/fesm2022/primeng-types-breadcrumb.mjs.map +0 -1
  757. package/fesm2022/primeng-types-button.mjs.map +0 -1
  758. package/fesm2022/primeng-types-card.mjs.map +0 -1
  759. package/fesm2022/primeng-types-carousel.mjs.map +0 -1
  760. package/fesm2022/primeng-types-cascadeselect.mjs.map +0 -1
  761. package/fesm2022/primeng-types-chart.mjs.map +0 -1
  762. package/fesm2022/primeng-types-checkbox.mjs.map +0 -1
  763. package/fesm2022/primeng-types-chip.mjs.map +0 -1
  764. package/fesm2022/primeng-types-colorpicker.mjs.map +0 -1
  765. package/fesm2022/primeng-types-commandmenu.mjs.map +0 -1
  766. package/fesm2022/primeng-types-compare.mjs.map +0 -1
  767. package/fesm2022/primeng-types-confirmdialog.mjs.map +0 -1
  768. package/fesm2022/primeng-types-confirmpopup.mjs.map +0 -1
  769. package/fesm2022/primeng-types-contextmenu.mjs.map +0 -1
  770. package/fesm2022/primeng-types-dataview.mjs.map +0 -1
  771. package/fesm2022/primeng-types-datepicker.mjs.map +0 -1
  772. package/fesm2022/primeng-types-dialog.mjs.map +0 -1
  773. package/fesm2022/primeng-types-divider.mjs.map +0 -1
  774. package/fesm2022/primeng-types-dock.mjs.map +0 -1
  775. package/fesm2022/primeng-types-drawer.mjs.map +0 -1
  776. package/fesm2022/primeng-types-editor.mjs.map +0 -1
  777. package/fesm2022/primeng-types-fieldset.mjs.map +0 -1
  778. package/fesm2022/primeng-types-fileupload.mjs.map +0 -1
  779. package/fesm2022/primeng-types-floatlabel.mjs.map +0 -1
  780. package/fesm2022/primeng-types-fluid.mjs.map +0 -1
  781. package/fesm2022/primeng-types-galleria.mjs.map +0 -1
  782. package/fesm2022/primeng-types-gallery.mjs.map +0 -1
  783. package/fesm2022/primeng-types-iconfield.mjs.map +0 -1
  784. package/fesm2022/primeng-types-iftalabel.mjs.map +0 -1
  785. package/fesm2022/primeng-types-image.mjs.map +0 -1
  786. package/fesm2022/primeng-types-imagecompare.mjs.map +0 -1
  787. package/fesm2022/primeng-types-inplace.mjs.map +0 -1
  788. package/fesm2022/primeng-types-inputcolor.mjs.map +0 -1
  789. package/fesm2022/primeng-types-inputgroup.mjs.map +0 -1
  790. package/fesm2022/primeng-types-inputgroupaddon.mjs.map +0 -1
  791. package/fesm2022/primeng-types-inputicon.mjs.map +0 -1
  792. package/fesm2022/primeng-types-inputmask.mjs.map +0 -1
  793. package/fesm2022/primeng-types-inputnumber.mjs.map +0 -1
  794. package/fesm2022/primeng-types-inputotp.mjs.map +0 -1
  795. package/fesm2022/primeng-types-inputpassword.mjs.map +0 -1
  796. package/fesm2022/primeng-types-inputtags.mjs.map +0 -1
  797. package/fesm2022/primeng-types-inputtext.mjs.map +0 -1
  798. package/fesm2022/primeng-types-knob.mjs.map +0 -1
  799. package/fesm2022/primeng-types-label.mjs.map +0 -1
  800. package/fesm2022/primeng-types-listbox.mjs.map +0 -1
  801. package/fesm2022/primeng-types-megamenu.mjs.map +0 -1
  802. package/fesm2022/primeng-types-menu.mjs.map +0 -1
  803. package/fesm2022/primeng-types-menubar.mjs.map +0 -1
  804. package/fesm2022/primeng-types-message.mjs.map +0 -1
  805. package/fesm2022/primeng-types-metergroup.mjs.map +0 -1
  806. package/fesm2022/primeng-types-motion.mjs.map +0 -1
  807. package/fesm2022/primeng-types-multiselect.mjs.map +0 -1
  808. package/fesm2022/primeng-types-orderlist.mjs.map +0 -1
  809. package/fesm2022/primeng-types-organizationchart.mjs.map +0 -1
  810. package/fesm2022/primeng-types-overlay.mjs.map +0 -1
  811. package/fesm2022/primeng-types-overlaybadge.mjs.map +0 -1
  812. package/fesm2022/primeng-types-paginator.mjs.map +0 -1
  813. package/fesm2022/primeng-types-panel.mjs.map +0 -1
  814. package/fesm2022/primeng-types-panelmenu.mjs.map +0 -1
  815. package/fesm2022/primeng-types-password.mjs.map +0 -1
  816. package/fesm2022/primeng-types-picklist.mjs.map +0 -1
  817. package/fesm2022/primeng-types-popover.mjs.map +0 -1
  818. package/fesm2022/primeng-types-progressbar.mjs.map +0 -1
  819. package/fesm2022/primeng-types-progressspinner.mjs.map +0 -1
  820. package/fesm2022/primeng-types-radiobutton.mjs.map +0 -1
  821. package/fesm2022/primeng-types-rating.mjs.map +0 -1
  822. package/fesm2022/primeng-types-scrollarea.mjs.map +0 -1
  823. package/fesm2022/primeng-types-scroller.mjs.map +0 -1
  824. package/fesm2022/primeng-types-scrollpanel.mjs.map +0 -1
  825. package/fesm2022/primeng-types-scrolltop.mjs.map +0 -1
  826. package/fesm2022/primeng-types-select.mjs.map +0 -1
  827. package/fesm2022/primeng-types-selectbutton.mjs.map +0 -1
  828. package/fesm2022/primeng-types-shared.mjs.map +0 -1
  829. package/fesm2022/primeng-types-sidebar.mjs.map +0 -1
  830. package/fesm2022/primeng-types-skeleton.mjs.map +0 -1
  831. package/fesm2022/primeng-types-slider.mjs.map +0 -1
  832. package/fesm2022/primeng-types-speeddial.mjs.map +0 -1
  833. package/fesm2022/primeng-types-splitbutton.mjs.map +0 -1
  834. package/fesm2022/primeng-types-splitter.mjs.map +0 -1
  835. package/fesm2022/primeng-types-stepper.mjs.map +0 -1
  836. package/fesm2022/primeng-types-table.mjs.map +0 -1
  837. package/fesm2022/primeng-types-tabs.mjs.map +0 -1
  838. package/fesm2022/primeng-types-tag.mjs.map +0 -1
  839. package/fesm2022/primeng-types-terminal.mjs.map +0 -1
  840. package/fesm2022/primeng-types-textarea.mjs.map +0 -1
  841. package/fesm2022/primeng-types-tieredmenu.mjs.map +0 -1
  842. package/fesm2022/primeng-types-timeline.mjs.map +0 -1
  843. package/fesm2022/primeng-types-toast.mjs.map +0 -1
  844. package/fesm2022/primeng-types-togglebutton.mjs.map +0 -1
  845. package/fesm2022/primeng-types-toggleswitch.mjs.map +0 -1
  846. package/fesm2022/primeng-types-toolbar.mjs.map +0 -1
  847. package/fesm2022/primeng-types-tooltip.mjs.map +0 -1
  848. package/fesm2022/primeng-types-tree.mjs.map +0 -1
  849. package/fesm2022/primeng-types-treeselect.mjs.map +0 -1
  850. package/fesm2022/primeng-types-treetable.mjs.map +0 -1
@@ -1,253 +1,277 @@
1
- import { DOCUMENT, isPlatformBrowser } from '@angular/common';
2
- import * as i0 from '@angular/core';
3
- import { forwardRef, input, booleanAttribute, output, inject, PLATFORM_ID, ElementRef, effect, Directive, NgModule } from '@angular/core';
4
- import { NG_VALIDATORS } from '@angular/forms';
5
- import { isAndroid, getBrowser } from '@primeuix/utils';
6
-
1
+ import { DOCUMENT, isPlatformBrowser } from "@angular/common";
2
+ import * as i0 from "@angular/core";
3
+ import { Directive, ElementRef, NgModule, PLATFORM_ID, booleanAttribute, effect, forwardRef, inject, input, output } from "@angular/core";
4
+ import { NG_VALIDATORS } from "@angular/forms";
5
+ import { getBrowser, isAndroid } from "@primeuix/utils";
7
6
  const KEYFILTER_VALIDATOR = {
8
- provide: NG_VALIDATORS,
9
- useExisting: forwardRef(() => KeyFilter),
10
- multi: true
7
+ provide: NG_VALIDATORS,
8
+ useExisting: forwardRef(() => KeyFilter),
9
+ multi: true
11
10
  };
12
11
  const DEFAULT_MASKS = {
13
- pint: /^[\d]*$/,
14
- int: /^[-]?[\d]*$/,
15
- pnum: /^[\d.]*$/,
16
- money: /^[\d.\s,]*$/,
17
- num: /^[-]?[\d.]*$/,
18
- hex: /^[0-9a-f]*$/i,
19
- email: /^[a-z0-9_.\-@]*$/i,
20
- alpha: /^[a-z_]*$/i,
21
- alphanum: /^[a-z0-9_]*$/i
12
+ pint: /^[\d]*$/,
13
+ int: /^[-]?[\d]*$/,
14
+ pnum: /^[\d.]*$/,
15
+ money: /^[\d.\s,]*$/,
16
+ num: /^[-]?[\d.]*$/,
17
+ hex: /^[0-9a-f]*$/i,
18
+ email: /^[a-z0-9_.\-@]*$/i,
19
+ alpha: /^[a-z_]*$/i,
20
+ alphanum: /^[a-z0-9_]*$/i
22
21
  };
23
22
  const KEYS = {
24
- TAB: 9,
25
- RETURN: 13,
26
- ESC: 27,
27
- BACKSPACE: 8,
28
- DELETE: 46
23
+ TAB: 9,
24
+ RETURN: 13,
25
+ ESC: 27,
26
+ BACKSPACE: 8,
27
+ DELETE: 46
29
28
  };
30
29
  const SAFARI_KEYS = {
31
- 63234: 37, // left
32
- 63235: 39, // right
33
- 63232: 38, // up
34
- 63233: 40, // down
35
- 63276: 33, // page up
36
- 63277: 34, // page down
37
- 63272: 46, // delete
38
- 63273: 36, // home
39
- 63275: 35 // end
30
+ 63234: 37,
31
+ 63235: 39,
32
+ 63232: 38,
33
+ 63233: 40,
34
+ 63276: 33,
35
+ 63277: 34,
36
+ 63272: 46,
37
+ 63273: 36,
38
+ 63275: 35
40
39
  };
41
- /**
42
- * KeyFilter Directive is a built-in feature of InputText to restrict user input based on a regular expression.
43
- * @group Components
44
- */
45
- class KeyFilter {
46
- /**
47
- * When enabled, instead of blocking keys, input is validated internally to test against the regular expression.
48
- * @group Props
49
- */
50
- pValidateOnly = input(false, { ...(ngDevMode ? { debugName: "pValidateOnly" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
51
- /**
52
- * Sets the pattern for key filtering.
53
- * @group Props
54
- */
55
- pattern = input(undefined, { ...(ngDevMode ? { debugName: "pattern" } : /* istanbul ignore next */ {}), alias: 'pKeyFilter' });
56
- /**
57
- * Emits a value whenever the ngModel of the component changes.
58
- * @param {string} modelValue - Custom model change event.
59
- * @group Emits
60
- */
61
- ngModelChange = output();
62
- regex = /./;
63
- isAndroid;
64
- lastValue;
65
- document = inject(DOCUMENT);
66
- platformId = inject(PLATFORM_ID);
67
- el = inject(ElementRef);
68
- constructor() {
69
- if (isPlatformBrowser(this.platformId)) {
70
- this.isAndroid = isAndroid();
71
- }
72
- else {
73
- this.isAndroid = false;
74
- }
75
- effect(() => {
76
- const _pattern = this.pattern();
77
- if (_pattern instanceof RegExp) {
78
- this.regex = _pattern;
79
- }
80
- else if (_pattern && _pattern in DEFAULT_MASKS) {
81
- this.regex = DEFAULT_MASKS[_pattern];
82
- }
83
- else {
84
- this.regex = /./;
85
- }
86
- });
87
- }
88
- isNavKeyPress(e) {
89
- let k = e.keyCode;
90
- k = getBrowser().safari ? SAFARI_KEYS[k] || k : k;
91
- return (k >= 33 && k <= 40) || k == KEYS.RETURN || k == KEYS.TAB || k == KEYS.ESC;
92
- }
93
- isSpecialKey(e) {
94
- let k = e.keyCode || e.charCode;
95
- return k == 9 || k == 13 || k == 27 || k == 16 || k == 17 || (k >= 18 && k <= 20) || (getBrowser().opera && !e.shiftKey && (k == 8 || (k >= 33 && k <= 35) || (k >= 36 && k <= 39) || (k >= 44 && k <= 45)));
96
- }
97
- getKey(e) {
98
- let k = e.keyCode || e.charCode;
99
- return getBrowser().safari ? SAFARI_KEYS[k] || k : k;
100
- }
101
- getCharCode(e) {
102
- return e.charCode || e.keyCode || e.which;
103
- }
104
- findDelta(value, prevValue) {
105
- let delta = '';
106
- for (let i = 0; i < value.length; i++) {
107
- let str = value.substr(0, i) + value.substr(i + value.length - prevValue.length);
108
- if (str === prevValue)
109
- delta = value.substr(i, value.length - prevValue.length);
110
- }
111
- return delta;
112
- }
113
- isValidChar(c) {
114
- return this.regex.test(c);
115
- }
116
- isValidString(str) {
117
- for (let i = 0; i < str.length; i++) {
118
- if (!this.isValidChar(str.substr(i, 1))) {
119
- return false;
120
- }
121
- }
122
- return true;
123
- }
124
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
125
- onInput(e) {
126
- if (this.isAndroid && !this.pValidateOnly()) {
127
- let val = this.el.nativeElement.value;
128
- let lastVal = this.lastValue || '';
129
- let inserted = this.findDelta(val, lastVal);
130
- let removed = this.findDelta(lastVal, val);
131
- let pasted = inserted.length > 1 || (!inserted && !removed);
132
- if (pasted) {
133
- if (!this.isValidString(val)) {
134
- this.el.nativeElement.value = lastVal;
135
- this.ngModelChange.emit(lastVal);
136
- }
137
- }
138
- else if (!removed) {
139
- if (!this.isValidChar(inserted)) {
140
- this.el.nativeElement.value = lastVal;
141
- this.ngModelChange.emit(lastVal);
142
- }
143
- }
144
- val = this.el.nativeElement.value;
145
- if (this.isValidString(val)) {
146
- this.lastValue = val;
147
- }
148
- }
149
- }
150
- onKeyPress(e) {
151
- if (this.isAndroid || this.pValidateOnly()) {
152
- return;
153
- }
154
- let browser = getBrowser();
155
- let k = this.getKey(e);
156
- if (browser.mozilla && (e.ctrlKey || e.altKey)) {
157
- return;
158
- }
159
- else if (k == 17 || k == 18) {
160
- return;
161
- }
162
- // Enter key
163
- if (k == 13) {
164
- return;
165
- }
166
- let c = this.getCharCode(e);
167
- let cc = String.fromCharCode(c);
168
- let ok = true;
169
- if (!browser.mozilla && (this.isSpecialKey(e) || !cc)) {
170
- return;
171
- }
172
- let existingValue = this.el.nativeElement.value || '';
173
- let combinedValue = existingValue + cc;
174
- ok = this.regex.test(combinedValue);
175
- if (!ok) {
176
- e.preventDefault();
177
- }
178
- }
179
- onPaste(e) {
180
- let clipboardData = e.clipboardData;
181
- // Fallback for older browsers
182
- if (!clipboardData && this.document.defaultView) {
183
- const windowClipboard = this.document.defaultView.clipboardData;
184
- if (windowClipboard) {
185
- clipboardData = {
186
- getData: () => windowClipboard.getData('text')
187
- };
188
- }
189
- }
190
- if (clipboardData) {
191
- let pattern = /\{[0-9]+\}/;
192
- const pastedText = clipboardData.getData('text');
193
- if (pattern.test(this.regex.toString())) {
194
- if (!this.regex.test(pastedText)) {
195
- e.preventDefault();
196
- return;
197
- }
198
- }
199
- else {
200
- for (let char of pastedText.toString()) {
201
- if (!this.regex.test(char)) {
202
- e.preventDefault();
203
- return;
204
- }
205
- }
206
- }
207
- }
208
- }
209
- validate(_c) {
210
- if (this.pValidateOnly()) {
211
- let value = this.el.nativeElement.value;
212
- if (value && !this.regex.test(value)) {
213
- return {
214
- validatePattern: false
215
- };
216
- }
217
- }
218
- }
219
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: KeyFilter, deps: [], target: i0.ɵɵFactoryTarget.Directive });
220
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.5", type: KeyFilter, isStandalone: true, selector: "[pKeyFilter]", inputs: { pValidateOnly: { classPropertyName: "pValidateOnly", publicName: "pValidateOnly", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pKeyFilter", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ngModelChange: "ngModelChange" }, host: { listeners: { "input": "onInput($event)", "keypress": "onKeyPress($event)", "paste": "onPaste($event)" } }, providers: [KEYFILTER_VALIDATOR], ngImport: i0 });
221
- }
222
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: KeyFilter, decorators: [{
223
- type: Directive,
224
- args: [{
225
- selector: '[pKeyFilter]',
226
- standalone: true,
227
- providers: [KEYFILTER_VALIDATOR],
228
- host: {
229
- '(input)': 'onInput($event)',
230
- '(keypress)': 'onKeyPress($event)',
231
- '(paste)': 'onPaste($event)'
232
- }
233
- }]
234
- }], ctorParameters: () => [], propDecorators: { pValidateOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "pValidateOnly", required: false }] }], pattern: [{ type: i0.Input, args: [{ isSignal: true, alias: "pKeyFilter", required: false }] }], ngModelChange: [{ type: i0.Output, args: ["ngModelChange"] }] } });
235
- class KeyFilterModule {
236
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: KeyFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
237
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.5", ngImport: i0, type: KeyFilterModule, imports: [KeyFilter], exports: [KeyFilter] });
238
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: KeyFilterModule });
239
- }
240
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: KeyFilterModule, decorators: [{
241
- type: NgModule,
242
- args: [{
243
- imports: [KeyFilter],
244
- exports: [KeyFilter]
245
- }]
246
- }] });
247
-
248
- /**
249
- * Generated bundle index. Do not edit.
250
- */
251
-
40
+ var KeyFilter = class KeyFilter {
41
+ pValidateOnly = input(false, {
42
+ ...ngDevMode ? { debugName: "pValidateOnly" } : /* istanbul ignore next */ {},
43
+ transform: booleanAttribute
44
+ });
45
+ pattern = input(void 0, {
46
+ ...ngDevMode ? { debugName: "pattern" } : /* istanbul ignore next */ {},
47
+ alias: "pKeyFilter"
48
+ });
49
+ ngModelChange = output();
50
+ regex = /./;
51
+ isAndroid;
52
+ lastValue;
53
+ document = inject(DOCUMENT);
54
+ platformId = inject(PLATFORM_ID);
55
+ el = inject(ElementRef);
56
+ constructor() {
57
+ if (isPlatformBrowser(this.platformId)) this.isAndroid = isAndroid();
58
+ else this.isAndroid = false;
59
+ effect(() => {
60
+ const _pattern = this.pattern();
61
+ if (_pattern instanceof RegExp) this.regex = _pattern;
62
+ else if (_pattern && _pattern in DEFAULT_MASKS) this.regex = DEFAULT_MASKS[_pattern];
63
+ else this.regex = /./;
64
+ });
65
+ }
66
+ isNavKeyPress(e) {
67
+ let k = e.keyCode;
68
+ k = getBrowser().safari ? SAFARI_KEYS[k] || k : k;
69
+ return k >= 33 && k <= 40 || k == KEYS.RETURN || k == KEYS.TAB || k == KEYS.ESC;
70
+ }
71
+ isSpecialKey(e) {
72
+ let k = e.keyCode || e.charCode;
73
+ return k == 9 || k == 13 || k == 27 || k == 16 || k == 17 || k >= 18 && k <= 20 || getBrowser().opera && !e.shiftKey && (k == 8 || k >= 33 && k <= 35 || k >= 36 && k <= 39 || k >= 44 && k <= 45);
74
+ }
75
+ getKey(e) {
76
+ let k = e.keyCode || e.charCode;
77
+ return getBrowser().safari ? SAFARI_KEYS[k] || k : k;
78
+ }
79
+ getCharCode(e) {
80
+ return e.charCode || e.keyCode || e.which;
81
+ }
82
+ findDelta(value, prevValue) {
83
+ let delta = "";
84
+ for (let i = 0; i < value.length; i++) if (value.substr(0, i) + value.substr(i + value.length - prevValue.length) === prevValue) delta = value.substr(i, value.length - prevValue.length);
85
+ return delta;
86
+ }
87
+ isValidChar(c) {
88
+ return this.regex.test(c);
89
+ }
90
+ isValidString(str) {
91
+ for (let i = 0; i < str.length; i++) if (!this.isValidChar(str.substr(i, 1))) return false;
92
+ return true;
93
+ }
94
+ onInput(e) {
95
+ if (this.isAndroid && !this.pValidateOnly()) {
96
+ let val = this.el.nativeElement.value;
97
+ let lastVal = this.lastValue || "";
98
+ let inserted = this.findDelta(val, lastVal);
99
+ let removed = this.findDelta(lastVal, val);
100
+ if (inserted.length > 1 || !inserted && !removed) {
101
+ if (!this.isValidString(val)) {
102
+ this.el.nativeElement.value = lastVal;
103
+ this.ngModelChange.emit(lastVal);
104
+ }
105
+ } else if (!removed) {
106
+ if (!this.isValidChar(inserted)) {
107
+ this.el.nativeElement.value = lastVal;
108
+ this.ngModelChange.emit(lastVal);
109
+ }
110
+ }
111
+ val = this.el.nativeElement.value;
112
+ if (this.isValidString(val)) this.lastValue = val;
113
+ }
114
+ }
115
+ onKeyPress(e) {
116
+ if (this.isAndroid || this.pValidateOnly()) return;
117
+ let browser = getBrowser();
118
+ let k = this.getKey(e);
119
+ if (browser.mozilla && (e.ctrlKey || e.altKey)) return;
120
+ else if (k == 17 || k == 18) return;
121
+ if (k == 13) return;
122
+ let c = this.getCharCode(e);
123
+ let cc = String.fromCharCode(c);
124
+ let ok = true;
125
+ if (!browser.mozilla && (this.isSpecialKey(e) || !cc)) return;
126
+ let combinedValue = (this.el.nativeElement.value || "") + cc;
127
+ ok = this.regex.test(combinedValue);
128
+ if (!ok) e.preventDefault();
129
+ }
130
+ onPaste(e) {
131
+ let clipboardData = e.clipboardData;
132
+ if (!clipboardData && this.document.defaultView) {
133
+ const windowClipboard = this.document.defaultView.clipboardData;
134
+ if (windowClipboard) clipboardData = { getData: () => windowClipboard.getData("text") };
135
+ }
136
+ if (clipboardData) {
137
+ let pattern = /\{[0-9]+\}/;
138
+ const pastedText = clipboardData.getData("text");
139
+ if (pattern.test(this.regex.toString())) {
140
+ if (!this.regex.test(pastedText)) {
141
+ e.preventDefault();
142
+ return;
143
+ }
144
+ } else for (let char of pastedText.toString()) if (!this.regex.test(char)) {
145
+ e.preventDefault();
146
+ return;
147
+ }
148
+ }
149
+ }
150
+ validate(_c) {
151
+ if (this.pValidateOnly()) {
152
+ let value = this.el.nativeElement.value;
153
+ if (value && !this.regex.test(value)) return { validatePattern: false };
154
+ }
155
+ }
156
+ static ɵfac = i0.ɵɵngDeclareFactory({
157
+ minVersion: "12.0.0",
158
+ version: "22.2.0",
159
+ ngImport: i0,
160
+ type: KeyFilter,
161
+ deps: [],
162
+ target: i0.ɵɵFactoryTarget.Directive
163
+ });
164
+ static ɵdir = i0.ɵɵngDeclareDirective({
165
+ minVersion: "17.1.0",
166
+ version: "22.2.0",
167
+ type: KeyFilter,
168
+ isStandalone: true,
169
+ selector: "[pKeyFilter]",
170
+ inputs: {
171
+ pValidateOnly: {
172
+ classPropertyName: "pValidateOnly",
173
+ publicName: "pValidateOnly",
174
+ isSignal: true,
175
+ isRequired: false,
176
+ transformFunction: null
177
+ },
178
+ pattern: {
179
+ classPropertyName: "pattern",
180
+ publicName: "pKeyFilter",
181
+ isSignal: true,
182
+ isRequired: false,
183
+ transformFunction: null
184
+ }
185
+ },
186
+ outputs: { ngModelChange: "ngModelChange" },
187
+ host: { listeners: {
188
+ "input": "onInput($event)",
189
+ "keypress": "onKeyPress($event)",
190
+ "paste": "onPaste($event)"
191
+ } },
192
+ providers: [KEYFILTER_VALIDATOR],
193
+ ngImport: i0
194
+ });
195
+ };
196
+ i0.ɵɵngDeclareClassMetadata({
197
+ minVersion: "12.0.0",
198
+ version: "22.2.0",
199
+ ngImport: i0,
200
+ type: KeyFilter,
201
+ decorators: [{
202
+ type: Directive,
203
+ args: [{
204
+ selector: "[pKeyFilter]",
205
+ standalone: true,
206
+ providers: [KEYFILTER_VALIDATOR],
207
+ host: {
208
+ "(input)": "onInput($event)",
209
+ "(keypress)": "onKeyPress($event)",
210
+ "(paste)": "onPaste($event)"
211
+ }
212
+ }]
213
+ }],
214
+ ctorParameters: () => [],
215
+ propDecorators: {
216
+ pValidateOnly: [{
217
+ type: i0.Input,
218
+ args: [{
219
+ isSignal: true,
220
+ alias: "pValidateOnly",
221
+ required: false
222
+ }]
223
+ }],
224
+ pattern: [{
225
+ type: i0.Input,
226
+ args: [{
227
+ isSignal: true,
228
+ alias: "pKeyFilter",
229
+ required: false
230
+ }]
231
+ }],
232
+ ngModelChange: [{
233
+ type: i0.Output,
234
+ args: ["ngModelChange"]
235
+ }]
236
+ }
237
+ });
238
+ var KeyFilterModule = class KeyFilterModule {
239
+ static ɵfac = i0.ɵɵngDeclareFactory({
240
+ minVersion: "12.0.0",
241
+ version: "22.2.0",
242
+ ngImport: i0,
243
+ type: KeyFilterModule,
244
+ deps: [],
245
+ target: i0.ɵɵFactoryTarget.NgModule
246
+ });
247
+ static ɵmod = i0.ɵɵngDeclareNgModule({
248
+ minVersion: "14.0.0",
249
+ version: "22.2.0",
250
+ ngImport: i0,
251
+ type: KeyFilterModule,
252
+ imports: [KeyFilter],
253
+ exports: [KeyFilter]
254
+ });
255
+ static ɵinj = i0.ɵɵngDeclareInjector({
256
+ minVersion: "12.0.0",
257
+ version: "22.2.0",
258
+ ngImport: i0,
259
+ type: KeyFilterModule
260
+ });
261
+ };
262
+ i0.ɵɵngDeclareClassMetadata({
263
+ minVersion: "12.0.0",
264
+ version: "22.2.0",
265
+ ngImport: i0,
266
+ type: KeyFilterModule,
267
+ decorators: [{
268
+ type: NgModule,
269
+ args: [{
270
+ imports: [KeyFilter],
271
+ exports: [KeyFilter]
272
+ }]
273
+ }]
274
+ });
252
275
  export { KEYFILTER_VALIDATOR, KeyFilter, KeyFilterModule };
253
- //# sourceMappingURL=primeng-keyfilter.mjs.map
276
+
277
+ //# sourceMappingURL=primeng-keyfilter.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-keyfilter.mjs","sources":["../../src/keyfilter/keyfilter.ts","../../src/keyfilter/primeng-keyfilter.ts"],"sourcesContent":["import { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, Directive, effect, ElementRef, forwardRef, inject, input, NgModule, output, PLATFORM_ID, Provider } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\nimport { getBrowser, isAndroid } from '@primeuix/utils';\n\nexport type KeyFilterPattern = 'pint' | 'int' | 'pnum' | 'money' | 'num' | 'hex' | 'email' | 'alpha' | 'alphanum';\n\nexport const KEYFILTER_VALIDATOR: Provider = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => KeyFilter),\n multi: true\n};\n\ntype SafariKeys = {\n 63234: number;\n 63235: number;\n 63232: number;\n 63233: number;\n 63276: number;\n 63277: number;\n 63272: number;\n 63273: number;\n 63275: number;\n};\n\ntype Keys = {\n TAB: number;\n RETURN: number;\n ESC: number;\n BACKSPACE: number;\n DELETE: number;\n};\n\nconst DEFAULT_MASKS: Record<KeyFilterPattern, RegExp> = {\n pint: /^[\\d]*$/,\n int: /^[-]?[\\d]*$/,\n pnum: /^[\\d.]*$/,\n money: /^[\\d.\\s,]*$/,\n num: /^[-]?[\\d.]*$/,\n hex: /^[0-9a-f]*$/i,\n email: /^[a-z0-9_.\\-@]*$/i,\n alpha: /^[a-z_]*$/i,\n alphanum: /^[a-z0-9_]*$/i\n};\n\nconst KEYS: Keys = {\n TAB: 9,\n RETURN: 13,\n ESC: 27,\n BACKSPACE: 8,\n DELETE: 46\n};\n\nconst SAFARI_KEYS: SafariKeys = {\n 63234: 37, // left\n 63235: 39, // right\n 63232: 38, // up\n 63233: 40, // down\n 63276: 33, // page up\n 63277: 34, // page down\n 63272: 46, // delete\n 63273: 36, // home\n 63275: 35 // end\n};\n\n/**\n * KeyFilter Directive is a built-in feature of InputText to restrict user input based on a regular expression.\n * @group Components\n */\n@Directive({\n selector: '[pKeyFilter]',\n standalone: true,\n providers: [KEYFILTER_VALIDATOR],\n host: {\n '(input)': 'onInput($event)',\n '(keypress)': 'onKeyPress($event)',\n '(paste)': 'onPaste($event)'\n }\n})\nexport class KeyFilter implements Validator {\n /**\n * When enabled, instead of blocking keys, input is validated internally to test against the regular expression.\n * @group Props\n */\n pValidateOnly = input(false, { transform: booleanAttribute });\n /**\n * Sets the pattern for key filtering.\n * @group Props\n */\n pattern = input<RegExp | KeyFilterPattern | null | undefined>(undefined, { alias: 'pKeyFilter' });\n\n /**\n * Emits a value whenever the ngModel of the component changes.\n * @param {string} modelValue - Custom model change event.\n * @group Emits\n */\n ngModelChange = output<string>();\n\n regex: RegExp = /./;\n\n isAndroid: boolean;\n\n lastValue: any;\n\n private document = inject(DOCUMENT);\n\n private platformId = inject(PLATFORM_ID);\n\n el = inject(ElementRef);\n\n constructor() {\n if (isPlatformBrowser(this.platformId)) {\n this.isAndroid = isAndroid();\n } else {\n this.isAndroid = false;\n }\n\n effect(() => {\n const _pattern = this.pattern();\n\n if (_pattern instanceof RegExp) {\n this.regex = _pattern;\n } else if (_pattern && _pattern in DEFAULT_MASKS) {\n this.regex = DEFAULT_MASKS[_pattern as keyof typeof DEFAULT_MASKS];\n } else {\n this.regex = /./;\n }\n });\n }\n\n isNavKeyPress(e: KeyboardEvent) {\n let k = e.keyCode;\n\n k = getBrowser().safari ? (SAFARI_KEYS as any)[k] || k : k;\n\n return (k >= 33 && k <= 40) || k == KEYS.RETURN || k == KEYS.TAB || k == KEYS.ESC;\n }\n\n isSpecialKey(e: KeyboardEvent) {\n let k = e.keyCode || e.charCode;\n\n return k == 9 || k == 13 || k == 27 || k == 16 || k == 17 || (k >= 18 && k <= 20) || (getBrowser().opera && !e.shiftKey && (k == 8 || (k >= 33 && k <= 35) || (k >= 36 && k <= 39) || (k >= 44 && k <= 45)));\n }\n\n getKey(e: KeyboardEvent) {\n let k = e.keyCode || e.charCode;\n\n return getBrowser().safari ? (SAFARI_KEYS as any)[k] || k : k;\n }\n\n getCharCode(e: KeyboardEvent) {\n return e.charCode || e.keyCode || e.which;\n }\n\n findDelta(value: string, prevValue: string) {\n let delta = '';\n\n for (let i = 0; i < value.length; i++) {\n let str = value.substr(0, i) + value.substr(i + value.length - prevValue.length);\n\n if (str === prevValue) delta = value.substr(i, value.length - prevValue.length);\n }\n\n return delta;\n }\n\n isValidChar(c: string) {\n return (<RegExp>this.regex).test(c);\n }\n\n isValidString(str: string) {\n for (let i = 0; i < str.length; i++) {\n if (!this.isValidChar(str.substr(i, 1))) {\n return false;\n }\n }\n\n return true;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onInput(e: Event) {\n if (this.isAndroid && !this.pValidateOnly()) {\n let val = this.el.nativeElement.value;\n let lastVal = this.lastValue || '';\n\n let inserted = this.findDelta(val, lastVal);\n let removed = this.findDelta(lastVal, val);\n let pasted = inserted.length > 1 || (!inserted && !removed);\n\n if (pasted) {\n if (!this.isValidString(val)) {\n this.el.nativeElement.value = lastVal;\n this.ngModelChange.emit(lastVal);\n }\n } else if (!removed) {\n if (!this.isValidChar(inserted)) {\n this.el.nativeElement.value = lastVal;\n this.ngModelChange.emit(lastVal);\n }\n }\n\n val = this.el.nativeElement.value;\n\n if (this.isValidString(val)) {\n this.lastValue = val;\n }\n }\n }\n\n onKeyPress(e: KeyboardEvent) {\n if (this.isAndroid || this.pValidateOnly()) {\n return;\n }\n\n let browser = getBrowser();\n let k = this.getKey(e);\n\n if (browser.mozilla && (e.ctrlKey || e.altKey)) {\n return;\n } else if (k == 17 || k == 18) {\n return;\n }\n\n // Enter key\n if (k == 13) {\n return;\n }\n\n let c = this.getCharCode(e);\n let cc = String.fromCharCode(c);\n let ok = true;\n\n if (!browser.mozilla && (this.isSpecialKey(e) || !cc)) {\n return;\n }\n\n let existingValue = this.el.nativeElement.value || '';\n let combinedValue = existingValue + cc;\n\n ok = (<RegExp>this.regex).test(combinedValue);\n\n if (!ok) {\n e.preventDefault();\n }\n }\n\n onPaste(e: ClipboardEvent) {\n let clipboardData = e.clipboardData;\n\n // Fallback for older browsers\n if (!clipboardData && this.document.defaultView) {\n const windowClipboard = (<any>this.document.defaultView).clipboardData;\n\n if (windowClipboard) {\n clipboardData = {\n getData: () => windowClipboard.getData('text')\n } as unknown as DataTransfer;\n }\n }\n\n if (clipboardData) {\n let pattern = /\\{[0-9]+\\}/;\n const pastedText = clipboardData.getData('text');\n\n if (pattern.test(this.regex.toString())) {\n if (!this.regex.test(pastedText)) {\n e.preventDefault();\n\n return;\n }\n } else {\n for (let char of pastedText.toString()) {\n if (!this.regex.test(char)) {\n e.preventDefault();\n\n return;\n }\n }\n }\n }\n }\n\n validate(_c: AbstractControl): { [key: string]: any } | any {\n if (this.pValidateOnly()) {\n let value = this.el.nativeElement.value;\n\n if (value && !this.regex.test(value)) {\n return {\n validatePattern: false\n };\n }\n }\n }\n}\n\n@NgModule({\n imports: [KeyFilter],\n exports: [KeyFilter]\n})\nexport class KeyFilterModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primeng-keyfilter.mjs","names":[],"sources":["../../src/keyfilter/keyfilter.ts"],"sourcesContent":["import { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, Directive, effect, ElementRef, forwardRef, inject, input, NgModule, output, PLATFORM_ID, Provider } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\nimport { getBrowser, isAndroid } from '@primeuix/utils';\n\nexport type KeyFilterPattern = 'pint' | 'int' | 'pnum' | 'money' | 'num' | 'hex' | 'email' | 'alpha' | 'alphanum';\n\nexport const KEYFILTER_VALIDATOR: Provider = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => KeyFilter),\n multi: true\n};\n\ntype SafariKeys = {\n 63234: number;\n 63235: number;\n 63232: number;\n 63233: number;\n 63276: number;\n 63277: number;\n 63272: number;\n 63273: number;\n 63275: number;\n};\n\ntype Keys = {\n TAB: number;\n RETURN: number;\n ESC: number;\n BACKSPACE: number;\n DELETE: number;\n};\n\nconst DEFAULT_MASKS: Record<KeyFilterPattern, RegExp> = {\n pint: /^[\\d]*$/,\n int: /^[-]?[\\d]*$/,\n pnum: /^[\\d.]*$/,\n money: /^[\\d.\\s,]*$/,\n num: /^[-]?[\\d.]*$/,\n hex: /^[0-9a-f]*$/i,\n email: /^[a-z0-9_.\\-@]*$/i,\n alpha: /^[a-z_]*$/i,\n alphanum: /^[a-z0-9_]*$/i\n};\n\nconst KEYS: Keys = {\n TAB: 9,\n RETURN: 13,\n ESC: 27,\n BACKSPACE: 8,\n DELETE: 46\n};\n\nconst SAFARI_KEYS: SafariKeys = {\n 63234: 37, // left\n 63235: 39, // right\n 63232: 38, // up\n 63233: 40, // down\n 63276: 33, // page up\n 63277: 34, // page down\n 63272: 46, // delete\n 63273: 36, // home\n 63275: 35 // end\n};\n\n/**\n * KeyFilter Directive is a built-in feature of InputText to restrict user input based on a regular expression.\n * @group Components\n */\n@Directive({\n selector: '[pKeyFilter]',\n standalone: true,\n providers: [KEYFILTER_VALIDATOR],\n host: {\n '(input)': 'onInput($event)',\n '(keypress)': 'onKeyPress($event)',\n '(paste)': 'onPaste($event)'\n }\n})\nexport class KeyFilter implements Validator {\n /**\n * When enabled, instead of blocking keys, input is validated internally to test against the regular expression.\n * @group Props\n */\n pValidateOnly = input(false, { transform: booleanAttribute });\n /**\n * Sets the pattern for key filtering.\n * @group Props\n */\n pattern = input<RegExp | KeyFilterPattern | null | undefined>(undefined, { alias: 'pKeyFilter' });\n\n /**\n * Emits a value whenever the ngModel of the component changes.\n * @param {string} modelValue - Custom model change event.\n * @group Emits\n */\n ngModelChange = output<string>();\n\n regex: RegExp = /./;\n\n isAndroid: boolean;\n\n lastValue: any;\n\n private document = inject(DOCUMENT);\n\n private platformId = inject(PLATFORM_ID);\n\n el = inject(ElementRef);\n\n constructor() {\n if (isPlatformBrowser(this.platformId)) {\n this.isAndroid = isAndroid();\n } else {\n this.isAndroid = false;\n }\n\n effect(() => {\n const _pattern = this.pattern();\n\n if (_pattern instanceof RegExp) {\n this.regex = _pattern;\n } else if (_pattern && _pattern in DEFAULT_MASKS) {\n this.regex = DEFAULT_MASKS[_pattern as keyof typeof DEFAULT_MASKS];\n } else {\n this.regex = /./;\n }\n });\n }\n\n isNavKeyPress(e: KeyboardEvent) {\n let k = e.keyCode;\n\n k = getBrowser().safari ? (SAFARI_KEYS as any)[k] || k : k;\n\n return (k >= 33 && k <= 40) || k == KEYS.RETURN || k == KEYS.TAB || k == KEYS.ESC;\n }\n\n isSpecialKey(e: KeyboardEvent) {\n let k = e.keyCode || e.charCode;\n\n return k == 9 || k == 13 || k == 27 || k == 16 || k == 17 || (k >= 18 && k <= 20) || (getBrowser().opera && !e.shiftKey && (k == 8 || (k >= 33 && k <= 35) || (k >= 36 && k <= 39) || (k >= 44 && k <= 45)));\n }\n\n getKey(e: KeyboardEvent) {\n let k = e.keyCode || e.charCode;\n\n return getBrowser().safari ? (SAFARI_KEYS as any)[k] || k : k;\n }\n\n getCharCode(e: KeyboardEvent) {\n return e.charCode || e.keyCode || e.which;\n }\n\n findDelta(value: string, prevValue: string) {\n let delta = '';\n\n for (let i = 0; i < value.length; i++) {\n let str = value.substr(0, i) + value.substr(i + value.length - prevValue.length);\n\n if (str === prevValue) delta = value.substr(i, value.length - prevValue.length);\n }\n\n return delta;\n }\n\n isValidChar(c: string) {\n return (<RegExp>this.regex).test(c);\n }\n\n isValidString(str: string) {\n for (let i = 0; i < str.length; i++) {\n if (!this.isValidChar(str.substr(i, 1))) {\n return false;\n }\n }\n\n return true;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onInput(e: Event) {\n if (this.isAndroid && !this.pValidateOnly()) {\n let val = this.el.nativeElement.value;\n let lastVal = this.lastValue || '';\n\n let inserted = this.findDelta(val, lastVal);\n let removed = this.findDelta(lastVal, val);\n let pasted = inserted.length > 1 || (!inserted && !removed);\n\n if (pasted) {\n if (!this.isValidString(val)) {\n this.el.nativeElement.value = lastVal;\n this.ngModelChange.emit(lastVal);\n }\n } else if (!removed) {\n if (!this.isValidChar(inserted)) {\n this.el.nativeElement.value = lastVal;\n this.ngModelChange.emit(lastVal);\n }\n }\n\n val = this.el.nativeElement.value;\n\n if (this.isValidString(val)) {\n this.lastValue = val;\n }\n }\n }\n\n onKeyPress(e: KeyboardEvent) {\n if (this.isAndroid || this.pValidateOnly()) {\n return;\n }\n\n let browser = getBrowser();\n let k = this.getKey(e);\n\n if (browser.mozilla && (e.ctrlKey || e.altKey)) {\n return;\n } else if (k == 17 || k == 18) {\n return;\n }\n\n // Enter key\n if (k == 13) {\n return;\n }\n\n let c = this.getCharCode(e);\n let cc = String.fromCharCode(c);\n let ok = true;\n\n if (!browser.mozilla && (this.isSpecialKey(e) || !cc)) {\n return;\n }\n\n let existingValue = this.el.nativeElement.value || '';\n let combinedValue = existingValue + cc;\n\n ok = (<RegExp>this.regex).test(combinedValue);\n\n if (!ok) {\n e.preventDefault();\n }\n }\n\n onPaste(e: ClipboardEvent) {\n let clipboardData = e.clipboardData;\n\n // Fallback for older browsers\n if (!clipboardData && this.document.defaultView) {\n const windowClipboard = (<any>this.document.defaultView).clipboardData;\n\n if (windowClipboard) {\n clipboardData = {\n getData: () => windowClipboard.getData('text')\n } as unknown as DataTransfer;\n }\n }\n\n if (clipboardData) {\n let pattern = /\\{[0-9]+\\}/;\n const pastedText = clipboardData.getData('text');\n\n if (pattern.test(this.regex.toString())) {\n if (!this.regex.test(pastedText)) {\n e.preventDefault();\n\n return;\n }\n } else {\n for (let char of pastedText.toString()) {\n if (!this.regex.test(char)) {\n e.preventDefault();\n\n return;\n }\n }\n }\n }\n }\n\n validate(_c: AbstractControl): { [key: string]: any } | any {\n if (this.pValidateOnly()) {\n let value = this.el.nativeElement.value;\n\n if (value && !this.regex.test(value)) {\n return {\n validatePattern: false\n };\n }\n }\n }\n}\n\n@NgModule({\n imports: [KeyFilter],\n exports: [KeyFilter]\n})\nexport class KeyFilterModule {}\n"],"mappings":"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"}