primeng 18.0.0-beta.5 → 18.0.0-rc.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 (389) hide show
  1. package/accordion/accordion.d.ts +2 -4
  2. package/api/primeicons.d.ts +3 -3
  3. package/api/scrolleroptions.d.ts +10 -0
  4. package/api/selectitemgroup.d.ts +2 -2
  5. package/api/shared.d.ts +2 -2
  6. package/autocomplete/autocomplete.d.ts +11 -12
  7. package/badge/badge.d.ts +16 -2
  8. package/blockui/blockui.d.ts +2 -2
  9. package/breadcrumb/breadcrumb.d.ts +3 -4
  10. package/button/button.d.ts +3 -4
  11. package/calendar/calendar.d.ts +12 -12
  12. package/card/card.d.ts +2 -2
  13. package/carousel/carousel.d.ts +3 -3
  14. package/cascadeselect/cascadeselect.d.ts +31 -15
  15. package/cascadeselect/style/cascadeselectstyle.d.ts +8 -1
  16. package/checkbox/checkbox.d.ts +2 -2
  17. package/chip/chip.d.ts +2 -2
  18. package/confirmdialog/confirmdialog.d.ts +3 -3
  19. package/confirmpopup/confirmpopup.d.ts +3 -4
  20. package/contextmenu/contextmenu.d.ts +2 -2
  21. package/dataview/dataview.d.ts +9 -10
  22. package/datepicker/datepicker.d.ts +8 -8
  23. package/defer/defer.d.ts +2 -0
  24. package/dialog/dialog.d.ts +4 -4
  25. package/drawer/drawer.d.ts +2 -2
  26. package/dropdown/dropdown.d.ts +0 -23
  27. package/editor/editor.d.ts +2 -2
  28. package/esm2022/accordion/accordion.mjs +9 -35
  29. package/esm2022/accordion/style/accordionstyle.mjs +9 -7
  30. package/esm2022/api/primeicons.mjs +4 -4
  31. package/esm2022/api/scrolleroptions.mjs +1 -1
  32. package/esm2022/api/selectitemgroup.mjs +1 -1
  33. package/esm2022/api/shared.mjs +6 -6
  34. package/esm2022/autocomplete/autocomplete.mjs +277 -311
  35. package/esm2022/autocomplete/style/autocompletestyle.mjs +12 -12
  36. package/esm2022/avatar/avatar.mjs +3 -3
  37. package/esm2022/avatar/style/avatarstyle.mjs +3 -3
  38. package/esm2022/badge/badge.mjs +33 -3
  39. package/esm2022/badge/style/badgestyle.mjs +3 -3
  40. package/esm2022/base/style/basestyle.mjs +6 -4
  41. package/esm2022/basecomponent/basecomponent.mjs +8 -2
  42. package/esm2022/blockui/blockui.mjs +6 -6
  43. package/esm2022/breadcrumb/breadcrumb.mjs +94 -101
  44. package/esm2022/breadcrumb/style/breadcrumbstyle.mjs +5 -1
  45. package/esm2022/button/button.mjs +19 -37
  46. package/esm2022/button/style/buttonstyle.mjs +17 -7
  47. package/esm2022/buttongroup/style/buttongroupstyle.mjs +9 -9
  48. package/esm2022/calendar/calendar.mjs +114 -114
  49. package/esm2022/calendar/style/calendarstyle.mjs +5 -5
  50. package/esm2022/card/card.mjs +10 -9
  51. package/esm2022/carousel/carousel.mjs +20 -19
  52. package/esm2022/carousel/style/carouselstyle.mjs +10 -1
  53. package/esm2022/cascadeselect/cascadeselect.mjs +182 -107
  54. package/esm2022/cascadeselect/style/cascadeselectstyle.mjs +37 -22
  55. package/esm2022/checkbox/checkbox.mjs +8 -8
  56. package/esm2022/chip/chip.mjs +10 -10
  57. package/esm2022/chip/style/chipstyle.mjs +2 -2
  58. package/esm2022/colorpicker/style/colorpickerstyle.mjs +29 -1
  59. package/esm2022/confirmdialog/confirmdialog.mjs +17 -14
  60. package/esm2022/confirmpopup/confirmpopup.mjs +45 -36
  61. package/esm2022/contextmenu/contextmenu.mjs +12 -12
  62. package/esm2022/contextmenu/style/contextmenustyle.mjs +11 -1
  63. package/esm2022/dataview/dataview.mjs +39 -113
  64. package/esm2022/datepicker/datepicker.mjs +91 -91
  65. package/esm2022/datepicker/style/datepickerstyle.mjs +23 -16
  66. package/esm2022/defer/defer.mjs +7 -1
  67. package/esm2022/dialog/dialog.mjs +29 -28
  68. package/esm2022/dialog/style/dialogstyle.mjs +22 -1
  69. package/esm2022/divider/style/dividerstyle.mjs +18 -14
  70. package/esm2022/dock/style/dockstyle.mjs +11 -1
  71. package/esm2022/drawer/drawer.mjs +8 -8
  72. package/esm2022/drawer/style/drawerstyle.mjs +5 -1
  73. package/esm2022/dropdown/dropdown.mjs +4 -18
  74. package/esm2022/dropdown/style/dropdownstyle.mjs +4 -4
  75. package/esm2022/editor/editor.mjs +1 -1
  76. package/esm2022/editor/style/editorstyle.mjs +52 -158
  77. package/esm2022/fieldset/fieldset.mjs +20 -21
  78. package/esm2022/fileupload/fileupload.mjs +108 -68
  79. package/esm2022/floatlabel/style/floatlabelstyle.mjs +5 -5
  80. package/esm2022/galleria/galleria.mjs +6 -1
  81. package/esm2022/galleria/style/galleriastyle.mjs +18 -1
  82. package/esm2022/iconfield/style/iconfieldstyle.mjs +2 -2
  83. package/esm2022/iftalabel/iftalabel.mjs +6 -6
  84. package/esm2022/iftalabel/style/iftalabelstyle.mjs +5 -5
  85. package/esm2022/image/image.mjs +36 -69
  86. package/esm2022/image/style/imagestyle.mjs +7 -7
  87. package/esm2022/imagecompare/imagecompare.mjs +158 -0
  88. package/esm2022/imagecompare/primeng-imagecompare.mjs +5 -0
  89. package/esm2022/imagecompare/public_api.mjs +3 -0
  90. package/esm2022/imagecompare/style/imagecomparestyle.mjs +124 -0
  91. package/esm2022/inplace/inplace.mjs +8 -8
  92. package/esm2022/inputmask/inputmask.mjs +10 -10
  93. package/esm2022/inputmask/style/inputmaskstyle.mjs +14 -7
  94. package/esm2022/inputnumber/inputnumber.mjs +41 -43
  95. package/esm2022/inputnumber/style/inputnumberstyle.mjs +27 -19
  96. package/esm2022/inputotp/inputotp.mjs +1 -13
  97. package/esm2022/inputtext/style/inputtextstyle.mjs +15 -9
  98. package/esm2022/keyfilter/keyfilter.mjs +4 -3
  99. package/esm2022/listbox/listbox.mjs +8 -53
  100. package/esm2022/megamenu/megamenu.mjs +18 -18
  101. package/esm2022/megamenu/style/megamenustyle.mjs +17 -1
  102. package/esm2022/menu/menu.mjs +46 -28
  103. package/esm2022/menubar/menubar.mjs +25 -25
  104. package/esm2022/menubar/style/menubarstyle.mjs +22 -2
  105. package/esm2022/message/message.mjs +12 -12
  106. package/esm2022/messages/messages.mjs +2 -1
  107. package/esm2022/metergroup/style/metergroupstyle.mjs +9 -9
  108. package/esm2022/multiselect/multiselect.mjs +214 -202
  109. package/esm2022/multiselect/style/multiselectstyle.mjs +13 -15
  110. package/esm2022/orderlist/orderlist.mjs +38 -80
  111. package/esm2022/organizationchart/style/organizationchartstyle.mjs +11 -22
  112. package/esm2022/overlaypanel/overlaypanel.mjs +24 -24
  113. package/esm2022/paginator/paginator.mjs +48 -48
  114. package/esm2022/paginator/style/paginatorstyle.mjs +10 -3
  115. package/esm2022/panel/panel.mjs +17 -37
  116. package/esm2022/panelmenu/panelmenu.mjs +32 -43
  117. package/esm2022/panelmenu/style/panelmenustyle.mjs +13 -5
  118. package/esm2022/password/password.mjs +26 -26
  119. package/esm2022/password/style/passwordstyle.mjs +14 -6
  120. package/esm2022/picklist/picklist.mjs +5 -5
  121. package/esm2022/popover/popover.mjs +21 -25
  122. package/esm2022/progressbar/style/progressbarstyle.mjs +29 -29
  123. package/esm2022/radiobutton/style/radiobuttonstyle.mjs +2 -2
  124. package/esm2022/rating/rating.mjs +12 -12
  125. package/esm2022/scroller/scroller.mjs +9 -9
  126. package/esm2022/scrollpanel/scrollpanel.mjs +4 -4
  127. package/esm2022/scrollpanel/style/scrollpanelstyle.mjs +3 -2
  128. package/esm2022/scrolltop/style/scrolltopstyle.mjs +7 -2
  129. package/esm2022/select/select.mjs +66 -113
  130. package/esm2022/select/style/selectstyle.mjs +14 -20
  131. package/esm2022/selectbutton/style/selectbuttonstyle.mjs +5 -5
  132. package/esm2022/skeleton/style/skeletonstyle.mjs +15 -2
  133. package/esm2022/slider/slider.mjs +18 -11
  134. package/esm2022/slider/style/sliderstyle.mjs +6 -6
  135. package/esm2022/speeddial/speeddial.mjs +1 -16
  136. package/esm2022/speeddial/style/speeddialstyle.mjs +2 -2
  137. package/esm2022/splitbutton/splitbutton.mjs +8 -8
  138. package/esm2022/splitbutton/style/splitbuttonstyle.mjs +9 -9
  139. package/esm2022/splitter/splitter.mjs +58 -18
  140. package/esm2022/stepper/style/stepperstyle.mjs +6 -1
  141. package/esm2022/styleclass/styleclass.mjs +2 -2
  142. package/esm2022/table/style/tablestyle.mjs +14 -7
  143. package/esm2022/table/table.mjs +411 -278
  144. package/esm2022/tabmenu/tabmenu.mjs +15 -33
  145. package/esm2022/tabs/tab.mjs +4 -3
  146. package/esm2022/tabs/tablist.mjs +9 -6
  147. package/esm2022/tabview/tabview.mjs +72 -64
  148. package/esm2022/terminal/style/terminalstyle.mjs +2 -2
  149. package/esm2022/textarea/style/textareastyle.mjs +9 -7
  150. package/esm2022/tieredmenu/style/tieredmenustyle.mjs +6 -1
  151. package/esm2022/tieredmenu/tieredmenu.mjs +12 -12
  152. package/esm2022/timeline/style/timelinestyle.mjs +2 -1
  153. package/esm2022/timeline/timeline.mjs +1 -16
  154. package/esm2022/toast/style/toaststyle.mjs +7 -1
  155. package/esm2022/togglebutton/style/togglebuttonstyle.mjs +2 -2
  156. package/esm2022/toggleswitch/toggleswitch.mjs +1 -10
  157. package/esm2022/tooltip/tooltip.mjs +33 -25
  158. package/esm2022/tree/style/treestyle.mjs +8 -6
  159. package/esm2022/tree/tree.mjs +44 -44
  160. package/esm2022/treeselect/style/treeselectstyle.mjs +15 -12
  161. package/esm2022/treeselect/treeselect.mjs +49 -49
  162. package/esm2022/treetable/style/treetablestyle.mjs +4 -4
  163. package/esm2022/treetable/treetable.mjs +20 -4
  164. package/esm2022/usestyle/usestyle.mjs +3 -2
  165. package/fesm2022/primeng-accordion.mjs +16 -40
  166. package/fesm2022/primeng-accordion.mjs.map +1 -1
  167. package/fesm2022/primeng-api.mjs +8 -8
  168. package/fesm2022/primeng-api.mjs.map +1 -1
  169. package/fesm2022/primeng-autocomplete.mjs +287 -321
  170. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  171. package/fesm2022/primeng-avatar.mjs +4 -4
  172. package/fesm2022/primeng-avatar.mjs.map +1 -1
  173. package/fesm2022/primeng-badge.mjs +34 -4
  174. package/fesm2022/primeng-badge.mjs.map +1 -1
  175. package/fesm2022/primeng-base.mjs +5 -3
  176. package/fesm2022/primeng-base.mjs.map +1 -1
  177. package/fesm2022/primeng-basecomponent.mjs +7 -1
  178. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  179. package/fesm2022/primeng-blockui.mjs +5 -5
  180. package/fesm2022/primeng-blockui.mjs.map +1 -1
  181. package/fesm2022/primeng-breadcrumb.mjs +97 -100
  182. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  183. package/fesm2022/primeng-button.mjs +34 -42
  184. package/fesm2022/primeng-button.mjs.map +1 -1
  185. package/fesm2022/primeng-buttongroup.mjs +8 -8
  186. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  187. package/fesm2022/primeng-calendar.mjs +117 -117
  188. package/fesm2022/primeng-calendar.mjs.map +1 -1
  189. package/fesm2022/primeng-card.mjs +9 -8
  190. package/fesm2022/primeng-card.mjs.map +1 -1
  191. package/fesm2022/primeng-carousel.mjs +28 -18
  192. package/fesm2022/primeng-carousel.mjs.map +1 -1
  193. package/fesm2022/primeng-cascadeselect.mjs +218 -128
  194. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  195. package/fesm2022/primeng-checkbox.mjs +7 -7
  196. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  197. package/fesm2022/primeng-chip.mjs +10 -10
  198. package/fesm2022/primeng-chip.mjs.map +1 -1
  199. package/fesm2022/primeng-colorpicker.mjs +28 -0
  200. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  201. package/fesm2022/primeng-confirmdialog.mjs +16 -13
  202. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  203. package/fesm2022/primeng-confirmpopup.mjs +44 -35
  204. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  205. package/fesm2022/primeng-contextmenu.mjs +21 -11
  206. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  207. package/fesm2022/primeng-dataview.mjs +38 -112
  208. package/fesm2022/primeng-dataview.mjs.map +1 -1
  209. package/fesm2022/primeng-datepicker.mjs +112 -105
  210. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  211. package/fesm2022/primeng-defer.mjs +6 -0
  212. package/fesm2022/primeng-defer.mjs.map +1 -1
  213. package/fesm2022/primeng-dialog.mjs +49 -27
  214. package/fesm2022/primeng-dialog.mjs.map +1 -1
  215. package/fesm2022/primeng-divider.mjs +17 -13
  216. package/fesm2022/primeng-divider.mjs.map +1 -1
  217. package/fesm2022/primeng-dock.mjs +10 -0
  218. package/fesm2022/primeng-dock.mjs.map +1 -1
  219. package/fesm2022/primeng-drawer.mjs +11 -7
  220. package/fesm2022/primeng-drawer.mjs.map +1 -1
  221. package/fesm2022/primeng-dropdown.mjs +6 -20
  222. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  223. package/fesm2022/primeng-editor.mjs +51 -157
  224. package/fesm2022/primeng-editor.mjs.map +1 -1
  225. package/fesm2022/primeng-fieldset.mjs +19 -20
  226. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  227. package/fesm2022/primeng-fileupload.mjs +107 -67
  228. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  229. package/fesm2022/primeng-floatlabel.mjs +4 -4
  230. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  231. package/fesm2022/primeng-galleria.mjs +22 -0
  232. package/fesm2022/primeng-galleria.mjs.map +1 -1
  233. package/fesm2022/primeng-iconfield.mjs +1 -1
  234. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  235. package/fesm2022/primeng-iftalabel.mjs +9 -9
  236. package/fesm2022/primeng-iftalabel.mjs.map +1 -1
  237. package/fesm2022/primeng-image.mjs +41 -74
  238. package/fesm2022/primeng-image.mjs.map +1 -1
  239. package/fesm2022/primeng-imagecompare.mjs +286 -0
  240. package/fesm2022/primeng-imagecompare.mjs.map +1 -0
  241. package/fesm2022/primeng-inplace.mjs +7 -7
  242. package/fesm2022/primeng-inplace.mjs.map +1 -1
  243. package/fesm2022/primeng-inputmask.mjs +22 -15
  244. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  245. package/fesm2022/primeng-inputnumber.mjs +66 -60
  246. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  247. package/fesm2022/primeng-inputotp.mjs +0 -12
  248. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  249. package/fesm2022/primeng-inputtext.mjs +14 -8
  250. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  251. package/fesm2022/primeng-keyfilter.mjs +3 -2
  252. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  253. package/fesm2022/primeng-listbox.mjs +7 -52
  254. package/fesm2022/primeng-listbox.mjs.map +1 -1
  255. package/fesm2022/primeng-megamenu.mjs +33 -17
  256. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  257. package/fesm2022/primeng-menu.mjs +45 -27
  258. package/fesm2022/primeng-menu.mjs.map +1 -1
  259. package/fesm2022/primeng-menubar.mjs +45 -25
  260. package/fesm2022/primeng-menubar.mjs.map +1 -1
  261. package/fesm2022/primeng-message.mjs +11 -11
  262. package/fesm2022/primeng-message.mjs.map +1 -1
  263. package/fesm2022/primeng-messages.mjs +1 -0
  264. package/fesm2022/primeng-messages.mjs.map +1 -1
  265. package/fesm2022/primeng-metergroup.mjs +8 -8
  266. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  267. package/fesm2022/primeng-multiselect.mjs +225 -215
  268. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  269. package/fesm2022/primeng-orderlist.mjs +37 -79
  270. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  271. package/fesm2022/primeng-organizationchart.mjs +10 -21
  272. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  273. package/fesm2022/primeng-overlaypanel.mjs +23 -23
  274. package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
  275. package/fesm2022/primeng-paginator.mjs +56 -49
  276. package/fesm2022/primeng-paginator.mjs.map +1 -1
  277. package/fesm2022/primeng-panel.mjs +16 -36
  278. package/fesm2022/primeng-panel.mjs.map +1 -1
  279. package/fesm2022/primeng-panelmenu.mjs +43 -46
  280. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  281. package/fesm2022/primeng-password.mjs +38 -30
  282. package/fesm2022/primeng-password.mjs.map +1 -1
  283. package/fesm2022/primeng-picklist.mjs +4 -4
  284. package/fesm2022/primeng-picklist.mjs.map +1 -1
  285. package/fesm2022/primeng-popover.mjs +20 -24
  286. package/fesm2022/primeng-popover.mjs.map +1 -1
  287. package/fesm2022/primeng-progressbar.mjs +28 -28
  288. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  289. package/fesm2022/primeng-radiobutton.mjs +1 -1
  290. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  291. package/fesm2022/primeng-rating.mjs +11 -11
  292. package/fesm2022/primeng-rating.mjs.map +1 -1
  293. package/fesm2022/primeng-scroller.mjs +8 -8
  294. package/fesm2022/primeng-scroller.mjs.map +1 -1
  295. package/fesm2022/primeng-scrollpanel.mjs +5 -4
  296. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  297. package/fesm2022/primeng-scrolltop.mjs +6 -1
  298. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  299. package/fesm2022/primeng-select.mjs +78 -131
  300. package/fesm2022/primeng-select.mjs.map +1 -1
  301. package/fesm2022/primeng-selectbutton.mjs +4 -4
  302. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  303. package/fesm2022/primeng-skeleton.mjs +14 -1
  304. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  305. package/fesm2022/primeng-slider.mjs +22 -15
  306. package/fesm2022/primeng-slider.mjs.map +1 -1
  307. package/fesm2022/primeng-speeddial.mjs +1 -16
  308. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  309. package/fesm2022/primeng-splitbutton.mjs +15 -15
  310. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  311. package/fesm2022/primeng-splitter.mjs +59 -19
  312. package/fesm2022/primeng-splitter.mjs.map +1 -1
  313. package/fesm2022/primeng-stepper.mjs +5 -0
  314. package/fesm2022/primeng-stepper.mjs.map +1 -1
  315. package/fesm2022/primeng-styleclass.mjs +1 -1
  316. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  317. package/fesm2022/primeng-table.mjs +424 -284
  318. package/fesm2022/primeng-table.mjs.map +1 -1
  319. package/fesm2022/primeng-tabmenu.mjs +14 -32
  320. package/fesm2022/primeng-tabmenu.mjs.map +1 -1
  321. package/fesm2022/primeng-tabs.mjs +11 -7
  322. package/fesm2022/primeng-tabs.mjs.map +1 -1
  323. package/fesm2022/primeng-tabview.mjs +71 -63
  324. package/fesm2022/primeng-tabview.mjs.map +1 -1
  325. package/fesm2022/primeng-terminal.mjs +1 -1
  326. package/fesm2022/primeng-terminal.mjs.map +1 -1
  327. package/fesm2022/primeng-textarea.mjs +8 -6
  328. package/fesm2022/primeng-textarea.mjs.map +1 -1
  329. package/fesm2022/primeng-tieredmenu.mjs +16 -11
  330. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  331. package/fesm2022/primeng-timeline.mjs +1 -15
  332. package/fesm2022/primeng-timeline.mjs.map +1 -1
  333. package/fesm2022/primeng-toast.mjs +6 -0
  334. package/fesm2022/primeng-toast.mjs.map +1 -1
  335. package/fesm2022/primeng-togglebutton.mjs +1 -1
  336. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  337. package/fesm2022/primeng-toggleswitch.mjs +0 -9
  338. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  339. package/fesm2022/primeng-tooltip.mjs +32 -24
  340. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  341. package/fesm2022/primeng-tree.mjs +50 -48
  342. package/fesm2022/primeng-tree.mjs.map +1 -1
  343. package/fesm2022/primeng-treeselect.mjs +62 -59
  344. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  345. package/fesm2022/primeng-treetable.mjs +22 -6
  346. package/fesm2022/primeng-treetable.mjs.map +1 -1
  347. package/fesm2022/primeng-usestyle.mjs +2 -1
  348. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  349. package/fieldset/fieldset.d.ts +3 -3
  350. package/fileupload/fileupload.d.ts +21 -5
  351. package/iftalabel/iftalabel.d.ts +2 -2
  352. package/image/image.d.ts +6 -7
  353. package/imagecompare/imagecompare.d.ts +52 -0
  354. package/imagecompare/index.d.ts +5 -0
  355. package/imagecompare/public_api.d.ts +2 -0
  356. package/imagecompare/style/imagecomparestyle.d.ts +35 -0
  357. package/inplace/inplace.d.ts +2 -2
  358. package/inputmask/inputmask.d.ts +2 -2
  359. package/inputnumber/inputnumber.d.ts +4 -5
  360. package/inputotp/inputotp.d.ts +1 -2
  361. package/listbox/listbox.d.ts +2 -3
  362. package/megamenu/megamenu.d.ts +4 -4
  363. package/menu/menu.d.ts +10 -4
  364. package/menubar/menubar.d.ts +5 -5
  365. package/message/message.d.ts +2 -2
  366. package/multiselect/multiselect.d.ts +16 -16
  367. package/orderlist/orderlist.d.ts +10 -11
  368. package/overlaypanel/overlaypanel.d.ts +3 -4
  369. package/package.json +219 -213
  370. package/paginator/paginator.d.ts +6 -6
  371. package/panel/panel.d.ts +3 -4
  372. package/panelmenu/panelmenu.d.ts +2 -3
  373. package/password/password.d.ts +4 -4
  374. package/popover/popover.d.ts +7 -5
  375. package/rating/rating.d.ts +4 -4
  376. package/scroller/scroller.d.ts +2 -2
  377. package/select/select.d.ts +12 -13
  378. package/speeddial/speeddial.d.ts +2 -3
  379. package/splitbutton/splitbutton.d.ts +2 -2
  380. package/splitter/splitter.d.ts +9 -2
  381. package/table/table.d.ts +47 -6
  382. package/tabmenu/tabmenu.d.ts +5 -6
  383. package/tabview/tabview.d.ts +4 -5
  384. package/tieredmenu/tieredmenu.d.ts +2 -2
  385. package/timeline/timeline.d.ts +0 -1
  386. package/toggleswitch/toggleswitch.d.ts +0 -1
  387. package/tooltip/tooltip.d.ts +2 -1
  388. package/tree/tree.d.ts +6 -6
  389. package/treeselect/treeselect.d.ts +9 -9
@@ -194,18 +194,6 @@ class InputOtp extends BaseComponent {
194
194
  * @group Templates
195
195
  */
196
196
  inputTemplate;
197
- ngAfterContentInit() {
198
- this.templates?.forEach((item) => {
199
- switch (item.getType()) {
200
- case 'input':
201
- this.inputTemplate = item.template;
202
- break;
203
- default:
204
- this.inputTemplate = item.template;
205
- break;
206
- }
207
- });
208
- }
209
197
  tokens = [];
210
198
  onModelChange = () => { };
211
199
  onModelTouched = () => { };
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-inputotp.mjs","sources":["../../src/inputotp/style/inputotpstyle.ts","../../src/inputotp/inputotp.ts","../../src/inputotp/primeng-inputotp.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-inputotp {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.p-inputotp-input {\n text-align: center;\n width: 2.5rem;\n}\n\n.p-inputotp-input.p-inputtext-sm {\n text-align: center;\n width: ${dt('inputotp.input.sm.width')};\n}\n\n.p-inputotp-input.p-inputtext-lg {\n text-align: center;\n width: ${dt('inputotp.input.lg.width')};\n}\n`;\n\nconst classes = {\n root: 'p-inputotp p-component',\n pcInput: 'p-inputotp-input'\n};\n\n@Injectable()\nexport class InputOtpStyle extends BaseStyle {\n name = 'inputotp';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * InputOtp is used to enter one time passwords.\n *\n * [Live Demo](https://www.primeng.org/inputotp/)\n *\n * @module inputotpstyle\n *\n */\n\nexport enum InputOtpClasses {\n /**\n * Class name of the root element\n */\n root = 'p-inputotp',\n /**\n * Class name of the input element\n */\n pcInput = 'p-inputotp-input'\n}\n\nexport interface InputOtpStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { AfterContentInit, booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, EventEmitter, forwardRef, inject, Input, NgModule, Output, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SharedModule } from 'primeng/api';\nimport { AutoFocus } from 'primeng/autofocus';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { InputText } from 'primeng/inputtext';\nimport { InputOtpStyle } from './style/inputotpstyle';\n\nexport const INPUT_OTP_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputOtp),\n multi: true\n};\n\n/**\n * Input change event.\n * @property {Event} originalEvent - browser event.\n * @property {any} value - updated value.\n * @group Interface\n */\nexport interface InputOtpChangeEvent {\n originalEvent: Event;\n value: any;\n}\n\n/**\n * Context interface for the input template events.\n * @property {(event: Event, index: number) => void} input - input event.\n * @property {(event: Event)} keydown - keydown event.\n * @property {(event: Event)} focus - focus event.\n * @property {(event: Event)} blur - blur event.\n * @property {(event: Event)} paste - paste event.\n * @group Interface\n */\nexport interface InputOtpTemplateEvents {\n input: (event: Event, index: number) => void;\n keydown: (event: Event) => void;\n focus: (event: Event) => void;\n blur: (event: Event) => void;\n paste: (event: Event) => void;\n}\n\n/**\n * Context of the input template.\n * @property {number | string} $implicit - token value.\n * @property {InputOtpTemplateEvents} events - Browser events of the template.\n * @property {number} index - index of the token.\n * @group Interface\n */\nexport interface InputOtpInputTemplateContext {\n $implicit: number | string;\n events: InputOtpTemplateEvents;\n index: number;\n}\n\n/**\n * Input Otp is used to enter one time passwords.\n * @group Components\n */\n@Component({\n selector: 'p-inputOtp, p-inputotp, p-input-otp',\n standalone: true,\n imports: [CommonModule, InputText, AutoFocus, SharedModule],\n template: `\n <ng-container *ngFor=\"let i of getRange(length); trackBy: trackByFn\">\n <ng-container *ngIf=\"!inputTemplate\">\n <input\n type=\"text\"\n pInputText\n [value]=\"getModelValue(i)\"\n [maxLength]=\"1\"\n [type]=\"inputType\"\n class=\"p-inputotp-input\"\n [size]=\"size\"\n [variant]=\"variant\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [tabindex]=\"tabindex\"\n (input)=\"onInput($event, i - 1)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onPaste($event)\"\n (keydown)=\"onKeyDown($event)\"\n [pAutoFocus]=\"getAutofocus(i)\"\n [ngClass]=\"styleClass\"\n />\n </ng-container>\n <ng-container *ngIf=\"inputTemplate\">\n <ng-container *ngTemplateOutlet=\"inputTemplate; context: { $implicit: getToken(i - 1), events: getTemplateEvents(i - 1), index: i }\"> </ng-container>\n </ng-container>\n </ng-container>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [INPUT_OTP_VALUE_ACCESSOR, InputOtpStyle],\n host: {\n class: 'p-inputotp p-component'\n }\n})\nexport class InputOtp extends BaseComponent implements AfterContentInit {\n /**\n * When present, it specifies that the component should have invalid state style.\n * @group Props\n */\n @Input() invalid: boolean = false;\n /**\n * When present, it specifies that the component should be disabled.\n * @group Props\n */\n @Input() disabled: boolean = false;\n /**\n * When present, it specifies that an input field is read-only.\n * @group Props\n */\n @Input() readonly: boolean = false;\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input() tabindex: number | null = null;\n /**\n * Number of characters to initiate.\n * @group Props\n */\n @Input() length: number = 4;\n /**\n * Style class of the input element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Mask pattern.\n * @group Props\n */\n @Input() mask: boolean = false;\n /**\n * When present, it specifies that an input field is integer-only.\n * @group Props\n */\n @Input() integerOnly: boolean = false;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() size: 'large' | 'small';\n /**\n * Callback to invoke on value change.\n * @group Emits\n */\n @Output() onChange: EventEmitter<InputOtpChangeEvent> = new EventEmitter<InputOtpChangeEvent>();\n /**\n * Callback to invoke when the component receives focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onFocus: EventEmitter<Event> = new EventEmitter();\n /**\n * Callback to invoke when the component loses focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onBlur: EventEmitter<Event> = new EventEmitter();\n\n /**\n * Input template.\n * @param {InputOtpInputTemplateContext} context - Context of the template\n * @see {@link InputOtpInputTemplateContext}\n * @group Templates\n */\n @ContentChild('input') inputTemplate: TemplateRef<InputOtpInputTemplateContext>;\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'input':\n this.inputTemplate = item.template;\n break;\n\n default:\n this.inputTemplate = item.template;\n break;\n }\n });\n }\n\n tokens: any = [];\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n value: any;\n\n get inputMode(): string {\n return this.integerOnly ? 'numeric' : 'text';\n }\n\n get inputType(): string {\n return this.mask ? 'password' : 'text';\n }\n\n _componentStyle = inject(InputOtpStyle);\n\n getToken(index) {\n return this.tokens[index];\n }\n\n getTemplateEvents(index) {\n return {\n input: (event) => this.onInput(event, index),\n keydown: (event) => this.onKeyDown(event),\n focus: (event) => this.onFocus.emit(event),\n blur: (event) => this.onBlur.emit(event),\n paste: (event) => this.onPaste(event)\n };\n }\n\n onInput(event, index) {\n this.tokens[index] = event.target.value;\n this.updateModel(event);\n\n if (event.inputType === 'deleteContentBackward') {\n this.moveToPrev(event);\n } else if (event.inputType === 'insertText' || event.inputType === 'deleteContentForward') {\n this.moveToNext(event);\n }\n }\n\n updateModel(event: any) {\n const newValue = this.tokens.join('');\n this.onModelChange(newValue);\n\n this.onChange.emit({\n originalEvent: event,\n value: newValue\n });\n }\n\n writeValue(value: any): void {\n if (value) {\n if (Array.isArray(value) && value.length > 0) {\n this.value = value.slice(0, this.length);\n } else {\n this.value = value.toString().split('').slice(0, this.length);\n }\n } else {\n this.value = value;\n }\n this.updateTokens();\n this.cd.markForCheck();\n }\n\n updateTokens() {\n if (this.value !== null && this.value !== undefined) {\n if (Array.isArray(this.value)) {\n this.tokens = [...this.value];\n } else {\n this.tokens = this.value.toString().split('');\n }\n } else {\n this.tokens = [];\n }\n }\n\n getModelValue(i: number) {\n return this.tokens[i - 1] || '';\n }\n\n getAutofocus(i: number): boolean {\n if (i === 1) {\n return this.autofocus;\n }\n return false;\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 moveToPrev(event) {\n let prevInput = this.findPrevInput(event.target);\n\n if (prevInput) {\n prevInput.focus();\n prevInput.select();\n }\n }\n\n moveToNext(event) {\n let nextInput = this.findNextInput(event.target);\n\n if (nextInput) {\n nextInput.focus();\n nextInput.select();\n }\n }\n\n findNextInput(element) {\n let nextElement = element.nextElementSibling;\n\n if (!nextElement) return;\n\n return nextElement.nodeName === 'INPUT' ? nextElement : this.findNextInput(nextElement);\n }\n\n findPrevInput(element) {\n let prevElement = element.previousElementSibling;\n\n if (!prevElement) return;\n\n return prevElement.nodeName === 'INPUT' ? prevElement : this.findPrevInput(prevElement);\n }\n\n onInputFocus(event) {\n event.target.select();\n this.onFocus.emit(event);\n }\n\n onInputBlur(event) {\n this.onBlur.emit(event);\n }\n\n onKeyDown(event) {\n if (event.altKey || event.ctrlKey || event.metaKey) {\n return;\n }\n\n switch (event.code) {\n case 'ArrowLeft':\n this.moveToPrev(event);\n event.preventDefault();\n\n break;\n\n case 'ArrowUp':\n case 'ArrowDown':\n event.preventDefault();\n\n break;\n\n case 'Backspace':\n if (event.target.value.length === 0) {\n this.moveToPrev(event);\n event.preventDefault();\n }\n\n break;\n\n case 'ArrowRight':\n this.moveToNext(event);\n event.preventDefault();\n\n break;\n\n default:\n if ((this.integerOnly && !((event.code.startsWith('Digit') || event.code.startsWith('Numpad')) && Number(event.key) >= 0 && Number(event.key) <= 9)) || (this.tokens.join('').length >= this.length && event.code !== 'Delete')) {\n event.preventDefault();\n }\n\n break;\n }\n }\n\n onPaste(event) {\n if (!this.disabled && !this.readonly) {\n let paste = event.clipboardData.getData('text');\n\n if (paste.length) {\n let pastedCode = paste.substring(0, this.length + 1);\n\n if (!this.integerOnly || !isNaN(pastedCode)) {\n this.tokens = pastedCode.split('');\n this.updateModel(event);\n }\n }\n\n event.preventDefault();\n }\n }\n\n getRange(n: number): number[] {\n return Array.from({ length: n }, (_, index) => index + 1);\n }\n\n trackByFn(index: number) {\n return index;\n }\n}\n\n@NgModule({\n imports: [InputOtp, SharedModule],\n exports: [InputOtp, SharedModule]\n})\nexport class InputOtpModule {}\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-inputotp.mjs","sources":["../../src/inputotp/style/inputotpstyle.ts","../../src/inputotp/inputotp.ts","../../src/inputotp/primeng-inputotp.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-inputotp {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.p-inputotp-input {\n text-align: center;\n width: 2.5rem;\n}\n\n.p-inputotp-input.p-inputtext-sm {\n text-align: center;\n width: ${dt('inputotp.input.sm.width')};\n}\n\n.p-inputotp-input.p-inputtext-lg {\n text-align: center;\n width: ${dt('inputotp.input.lg.width')};\n}\n`;\n\nconst classes = {\n root: 'p-inputotp p-component',\n pcInput: 'p-inputotp-input'\n};\n\n@Injectable()\nexport class InputOtpStyle extends BaseStyle {\n name = 'inputotp';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * InputOtp is used to enter one time passwords.\n *\n * [Live Demo](https://www.primeng.org/inputotp/)\n *\n * @module inputotpstyle\n *\n */\n\nexport enum InputOtpClasses {\n /**\n * Class name of the root element\n */\n root = 'p-inputotp',\n /**\n * Class name of the input element\n */\n pcInput = 'p-inputotp-input'\n}\n\nexport interface InputOtpStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { AfterContentInit, booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, EventEmitter, forwardRef, inject, Input, NgModule, Output, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SharedModule } from 'primeng/api';\nimport { AutoFocus } from 'primeng/autofocus';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { InputText } from 'primeng/inputtext';\nimport { InputOtpStyle } from './style/inputotpstyle';\n\nexport const INPUT_OTP_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputOtp),\n multi: true\n};\n\n/**\n * Input change event.\n * @property {Event} originalEvent - browser event.\n * @property {any} value - updated value.\n * @group Interface\n */\nexport interface InputOtpChangeEvent {\n originalEvent: Event;\n value: any;\n}\n\n/**\n * Context interface for the input template events.\n * @property {(event: Event, index: number) => void} input - input event.\n * @property {(event: Event)} keydown - keydown event.\n * @property {(event: Event)} focus - focus event.\n * @property {(event: Event)} blur - blur event.\n * @property {(event: Event)} paste - paste event.\n * @group Interface\n */\nexport interface InputOtpTemplateEvents {\n input: (event: Event, index: number) => void;\n keydown: (event: Event) => void;\n focus: (event: Event) => void;\n blur: (event: Event) => void;\n paste: (event: Event) => void;\n}\n\n/**\n * Context of the input template.\n * @property {number | string} $implicit - token value.\n * @property {InputOtpTemplateEvents} events - Browser events of the template.\n * @property {number} index - index of the token.\n * @group Interface\n */\nexport interface InputOtpInputTemplateContext {\n $implicit: number | string;\n events: InputOtpTemplateEvents;\n index: number;\n}\n\n/**\n * Input Otp is used to enter one time passwords.\n * @group Components\n */\n@Component({\n selector: 'p-inputOtp, p-inputotp, p-input-otp',\n standalone: true,\n imports: [CommonModule, InputText, AutoFocus, SharedModule],\n template: `\n <ng-container *ngFor=\"let i of getRange(length); trackBy: trackByFn\">\n <ng-container *ngIf=\"!inputTemplate\">\n <input\n type=\"text\"\n pInputText\n [value]=\"getModelValue(i)\"\n [maxLength]=\"1\"\n [type]=\"inputType\"\n class=\"p-inputotp-input\"\n [size]=\"size\"\n [variant]=\"variant\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [tabindex]=\"tabindex\"\n (input)=\"onInput($event, i - 1)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (paste)=\"onPaste($event)\"\n (keydown)=\"onKeyDown($event)\"\n [pAutoFocus]=\"getAutofocus(i)\"\n [ngClass]=\"styleClass\"\n />\n </ng-container>\n <ng-container *ngIf=\"inputTemplate\">\n <ng-container *ngTemplateOutlet=\"inputTemplate; context: { $implicit: getToken(i - 1), events: getTemplateEvents(i - 1), index: i }\"> </ng-container>\n </ng-container>\n </ng-container>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [INPUT_OTP_VALUE_ACCESSOR, InputOtpStyle],\n host: {\n class: 'p-inputotp p-component'\n }\n})\nexport class InputOtp extends BaseComponent implements AfterContentInit {\n /**\n * When present, it specifies that the component should have invalid state style.\n * @group Props\n */\n @Input() invalid: boolean = false;\n /**\n * When present, it specifies that the component should be disabled.\n * @group Props\n */\n @Input() disabled: boolean = false;\n /**\n * When present, it specifies that an input field is read-only.\n * @group Props\n */\n @Input() readonly: boolean = false;\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input() tabindex: number | null = null;\n /**\n * Number of characters to initiate.\n * @group Props\n */\n @Input() length: number = 4;\n /**\n * Style class of the input element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Mask pattern.\n * @group Props\n */\n @Input() mask: boolean = false;\n /**\n * When present, it specifies that an input field is integer-only.\n * @group Props\n */\n @Input() integerOnly: boolean = false;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() size: 'large' | 'small';\n /**\n * Callback to invoke on value change.\n * @group Emits\n */\n @Output() onChange: EventEmitter<InputOtpChangeEvent> = new EventEmitter<InputOtpChangeEvent>();\n /**\n * Callback to invoke when the component receives focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onFocus: EventEmitter<Event> = new EventEmitter();\n /**\n * Callback to invoke when the component loses focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onBlur: EventEmitter<Event> = new EventEmitter();\n\n /**\n * Input template.\n * @param {InputOtpInputTemplateContext} context - Context of the template\n * @see {@link InputOtpInputTemplateContext}\n * @group Templates\n */\n @ContentChild('input') inputTemplate: TemplateRef<any>;\n\n tokens: any = [];\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n value: any;\n\n get inputMode(): string {\n return this.integerOnly ? 'numeric' : 'text';\n }\n\n get inputType(): string {\n return this.mask ? 'password' : 'text';\n }\n\n _componentStyle = inject(InputOtpStyle);\n\n getToken(index) {\n return this.tokens[index];\n }\n\n getTemplateEvents(index) {\n return {\n input: (event) => this.onInput(event, index),\n keydown: (event) => this.onKeyDown(event),\n focus: (event) => this.onFocus.emit(event),\n blur: (event) => this.onBlur.emit(event),\n paste: (event) => this.onPaste(event)\n };\n }\n\n onInput(event, index) {\n this.tokens[index] = event.target.value;\n this.updateModel(event);\n\n if (event.inputType === 'deleteContentBackward') {\n this.moveToPrev(event);\n } else if (event.inputType === 'insertText' || event.inputType === 'deleteContentForward') {\n this.moveToNext(event);\n }\n }\n\n updateModel(event: any) {\n const newValue = this.tokens.join('');\n this.onModelChange(newValue);\n\n this.onChange.emit({\n originalEvent: event,\n value: newValue\n });\n }\n\n writeValue(value: any): void {\n if (value) {\n if (Array.isArray(value) && value.length > 0) {\n this.value = value.slice(0, this.length);\n } else {\n this.value = value.toString().split('').slice(0, this.length);\n }\n } else {\n this.value = value;\n }\n this.updateTokens();\n this.cd.markForCheck();\n }\n\n updateTokens() {\n if (this.value !== null && this.value !== undefined) {\n if (Array.isArray(this.value)) {\n this.tokens = [...this.value];\n } else {\n this.tokens = this.value.toString().split('');\n }\n } else {\n this.tokens = [];\n }\n }\n\n getModelValue(i: number) {\n return this.tokens[i - 1] || '';\n }\n\n getAutofocus(i: number): boolean {\n if (i === 1) {\n return this.autofocus;\n }\n return false;\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 moveToPrev(event) {\n let prevInput = this.findPrevInput(event.target);\n\n if (prevInput) {\n prevInput.focus();\n prevInput.select();\n }\n }\n\n moveToNext(event) {\n let nextInput = this.findNextInput(event.target);\n\n if (nextInput) {\n nextInput.focus();\n nextInput.select();\n }\n }\n\n findNextInput(element) {\n let nextElement = element.nextElementSibling;\n\n if (!nextElement) return;\n\n return nextElement.nodeName === 'INPUT' ? nextElement : this.findNextInput(nextElement);\n }\n\n findPrevInput(element) {\n let prevElement = element.previousElementSibling;\n\n if (!prevElement) return;\n\n return prevElement.nodeName === 'INPUT' ? prevElement : this.findPrevInput(prevElement);\n }\n\n onInputFocus(event) {\n event.target.select();\n this.onFocus.emit(event);\n }\n\n onInputBlur(event) {\n this.onBlur.emit(event);\n }\n\n onKeyDown(event) {\n if (event.altKey || event.ctrlKey || event.metaKey) {\n return;\n }\n\n switch (event.code) {\n case 'ArrowLeft':\n this.moveToPrev(event);\n event.preventDefault();\n\n break;\n\n case 'ArrowUp':\n case 'ArrowDown':\n event.preventDefault();\n\n break;\n\n case 'Backspace':\n if (event.target.value.length === 0) {\n this.moveToPrev(event);\n event.preventDefault();\n }\n\n break;\n\n case 'ArrowRight':\n this.moveToNext(event);\n event.preventDefault();\n\n break;\n\n default:\n if ((this.integerOnly && !((event.code.startsWith('Digit') || event.code.startsWith('Numpad')) && Number(event.key) >= 0 && Number(event.key) <= 9)) || (this.tokens.join('').length >= this.length && event.code !== 'Delete')) {\n event.preventDefault();\n }\n\n break;\n }\n }\n\n onPaste(event) {\n if (!this.disabled && !this.readonly) {\n let paste = event.clipboardData.getData('text');\n\n if (paste.length) {\n let pastedCode = paste.substring(0, this.length + 1);\n\n if (!this.integerOnly || !isNaN(pastedCode)) {\n this.tokens = pastedCode.split('');\n this.updateModel(event);\n }\n }\n\n event.preventDefault();\n }\n }\n\n getRange(n: number): number[] {\n return Array.from({ length: n }, (_, index) => index + 1);\n }\n\n trackByFn(index: number) {\n return index;\n }\n}\n\n@NgModule({\n imports: [InputOtp, SharedModule],\n exports: [InputOtp, SharedModule]\n})\nexport class InputOtpModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -12,7 +12,8 @@ const theme = ({ dt }) => `
12
12
  font-size: 1rem;
13
13
  color: ${dt('inputtext.color')};
14
14
  background: ${dt('inputtext.background')};
15
- padding: ${dt('inputtext.padding.y')} ${dt('inputtext.padding.x')};
15
+ padding-block: ${dt('inputtext.padding.y')};
16
+ padding-inline: ${dt('inputtext.padding.x')};
16
17
  border: 1px solid ${dt('inputtext.border.color')};
17
18
  transition: background ${dt('inputtext.transition.duration')}, color ${dt('inputtext.transition.duration')}, border-color ${dt('inputtext.transition.duration')}, outline-color ${dt('inputtext.transition.duration')}, box-shadow ${dt('inputtext.transition.duration')};
18
19
  appearance: none;
@@ -21,6 +22,10 @@ const theme = ({ dt }) => `
21
22
  box-shadow: ${dt('inputtext.shadow')};
22
23
  }
23
24
 
25
+ .p-inputtext.ng-invalid.ng-dirty {
26
+ border-color: ${dt('inputtext.invalid.border.color')};
27
+ }
28
+
24
29
  .p-inputtext:enabled:hover {
25
30
  border-color: ${dt('inputtext.hover.border.color')};
26
31
  }
@@ -54,24 +59,25 @@ const theme = ({ dt }) => `
54
59
  color: ${dt('inputtext.placeholder.color')};
55
60
  }
56
61
 
62
+ .p-inputtext.ng-invalid.ng-dirty::placeholder {
63
+ color: ${dt('inputtext.invalid.placeholder.color')};
64
+ }
65
+
57
66
  .p-inputtext-sm {
58
67
  font-size: ${dt('inputtext.sm.font.size')};
59
- padding: ${dt('inputtext.sm.padding.y')} ${dt('inputtext.sm.padding.x')};
68
+ padding-block: ${dt('inputtext.sm.padding.y')};
69
+ padding-inline: ${dt('inputtext.sm.padding.x')};
60
70
  }
61
71
 
62
72
  .p-inputtext-lg {
63
73
  font-size: ${dt('inputtext.lg.font.size')};
64
- padding: ${dt('inputtext.lg.padding.y')} ${dt('inputtext.lg.padding.x')};
74
+ padding-block: ${dt('inputtext.lg.padding.y')};
75
+ padding-inline: ${dt('inputtext.lg.padding.x')};
65
76
  }
66
77
 
67
78
  .p-inputtext-fluid {
68
79
  width: 100%;
69
80
  }
70
-
71
- /* For PrimeNG */
72
- .p-inputtext.ng-invalid.ng-dirty {
73
- border-color: ${dt('inputtext.invalid.border.color')};
74
- }
75
81
  `;
76
82
  const classes = {
77
83
  root: ({ instance, props }) => [
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-inputtext.mjs","sources":["../../src/inputtext/style/inputtextstyle.ts","../../src/inputtext/inputtext.ts","../../src/inputtext/primeng-inputtext.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-inputtext {\n font-family: inherit;\n font-feature-settings: inherit;\n font-size: 1rem;\n color: ${dt('inputtext.color')};\n background: ${dt('inputtext.background')};\n padding: ${dt('inputtext.padding.y')} ${dt('inputtext.padding.x')};\n border: 1px solid ${dt('inputtext.border.color')};\n transition: background ${dt('inputtext.transition.duration')}, color ${dt('inputtext.transition.duration')}, border-color ${dt('inputtext.transition.duration')}, outline-color ${dt('inputtext.transition.duration')}, box-shadow ${dt(\n 'inputtext.transition.duration'\n )};\n appearance: none;\n border-radius: ${dt('inputtext.border.radius')};\n outline-color: transparent;\n box-shadow: ${dt('inputtext.shadow')};\n}\n\n.p-inputtext:enabled:hover {\n border-color: ${dt('inputtext.hover.border.color')};\n}\n\n.p-inputtext:enabled:focus {\n border-color: ${dt('inputtext.focus.border.color')};\n box-shadow: ${dt('inputtext.focus.ring.shadow')};\n outline: ${dt('inputtext.focus.ring.width')} ${dt('inputtext.focus.ring.style')} ${dt('inputtext.focus.ring.color')};\n outline-offset: ${dt('inputtext.focus.ring.offset')};\n}\n\n.p-inputtext.p-invalid {\n border-color: ${dt('inputtext.invalid.border.color')};\n}\n\n.p-inputtext.p-variant-filled {\n background: ${dt('inputtext.filled.background')};\n}\n\n.p-inputtext.p-variant-filled:enabled:focus {\n background: ${dt('inputtext.filled.focus.background')};\n}\n\n.p-inputtext:disabled {\n opacity: 1;\n background: ${dt('inputtext.disabled.background')};\n color: ${dt('inputtext.disabled.color')};\n}\n\n.p-inputtext::placeholder {\n color: ${dt('inputtext.placeholder.color')};\n}\n\n.p-inputtext-sm {\n font-size: ${dt('inputtext.sm.font.size')};\n padding: ${dt('inputtext.sm.padding.y')} ${dt('inputtext.sm.padding.x')};\n}\n\n.p-inputtext-lg {\n font-size: ${dt('inputtext.lg.font.size')};\n padding: ${dt('inputtext.lg.padding.y')} ${dt('inputtext.lg.padding.x')};\n}\n\n.p-inputtext-fluid {\n width: 100%;\n}\n\n/* For PrimeNG */\n.p-inputtext.ng-invalid.ng-dirty {\n border-color: ${dt('inputtext.invalid.border.color')};\n}\n`;\n\nconst classes = {\n root: ({ instance, props }) => [\n 'p-inputtext p-component',\n {\n 'p-filled': instance.filled,\n 'p-inputtext-sm': props.size === 'small',\n 'p-inputtext-lg': props.size === 'large',\n 'p-invalid': props.invalid,\n 'p-variant-filled': props.variant === 'filled',\n 'p-inputtext-fluid': props.fluid\n }\n ]\n};\n\n@Injectable()\nexport class InputTextStyle extends BaseStyle {\n name = 'inputtext';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * InputText renders a text field to enter data.\n *\n * [Live Demo](https://www.primeng.org/inputtext/)\n *\n * @module inputtextstyle\n *\n */\nexport enum InputTextClasses {\n /**\n * The class of root element\n */\n root = 'p-inputtext'\n}\n\nexport interface InputTextStyle extends BaseStyle {}\n","import { AfterViewInit, booleanAttribute, Directive, DoCheck, HostListener, inject, Input, NgModule, Optional } from '@angular/core';\nimport { NgModel } from '@angular/forms';\nimport { isEmpty } from '@primeuix/utils';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { InputTextStyle } from './style/inputtextstyle';\n\n/**\n * InputText directive is an extension to standard input element with theming.\n * @group Components\n */\n@Directive({\n selector: '[pInputText]',\n standalone: true,\n host: {\n class: 'p-inputtext p-component',\n '[class.p-filled]': 'filled',\n '[class.p-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\" || config.inputVariant() === \"filled\"',\n '[class.p-inputtext-fluid]': 'hasFluid',\n '[class.p-inputtext-sm]': 'size === \"small\"',\n '[class.p-inputfield-sm]': 'size === \"small\"',\n '[class.p-inputtext-lg]': 'size === \"large\"',\n '[class.p-inputfield-lg]': 'size === \"large\"'\n },\n providers: [InputTextStyle]\n})\nexport class InputText extends BaseComponent implements DoCheck, AfterViewInit {\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Spans 100% width of the container when enabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean | undefined;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() size: 'large' | 'small';\n\n filled: Nullable<boolean>;\n\n _componentStyle = inject(InputTextStyle);\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n\n return isEmpty(this.fluid) ? !!fluidComponent : this.fluid;\n }\n\n constructor(@Optional() public ngModel: NgModel) {\n super();\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n this.updateFilledState();\n this.cd.detectChanges();\n }\n\n ngDoCheck() {\n this.updateFilledState();\n }\n\n @HostListener('input', ['$event'])\n onInput() {\n this.updateFilledState();\n }\n\n updateFilledState() {\n this.filled = (this.el.nativeElement.value && this.el.nativeElement.value.length) || (this.ngModel && this.ngModel.model);\n }\n}\n\n@NgModule({\n imports: [InputText],\n exports: [InputText]\n})\nexport class InputTextModule {}\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-inputtext.mjs","sources":["../../src/inputtext/style/inputtextstyle.ts","../../src/inputtext/inputtext.ts","../../src/inputtext/primeng-inputtext.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-inputtext {\n font-family: inherit;\n font-feature-settings: inherit;\n font-size: 1rem;\n color: ${dt('inputtext.color')};\n background: ${dt('inputtext.background')};\n padding-block: ${dt('inputtext.padding.y')};\n padding-inline: ${dt('inputtext.padding.x')};\n border: 1px solid ${dt('inputtext.border.color')};\n transition: background ${dt('inputtext.transition.duration')}, color ${dt('inputtext.transition.duration')}, border-color ${dt('inputtext.transition.duration')}, outline-color ${dt('inputtext.transition.duration')}, box-shadow ${dt(\n 'inputtext.transition.duration'\n )};\n appearance: none;\n border-radius: ${dt('inputtext.border.radius')};\n outline-color: transparent;\n box-shadow: ${dt('inputtext.shadow')};\n}\n\n.p-inputtext.ng-invalid.ng-dirty {\n border-color: ${dt('inputtext.invalid.border.color')};\n}\n\n.p-inputtext:enabled:hover {\n border-color: ${dt('inputtext.hover.border.color')};\n}\n\n.p-inputtext:enabled:focus {\n border-color: ${dt('inputtext.focus.border.color')};\n box-shadow: ${dt('inputtext.focus.ring.shadow')};\n outline: ${dt('inputtext.focus.ring.width')} ${dt('inputtext.focus.ring.style')} ${dt('inputtext.focus.ring.color')};\n outline-offset: ${dt('inputtext.focus.ring.offset')};\n}\n\n.p-inputtext.p-invalid {\n border-color: ${dt('inputtext.invalid.border.color')};\n}\n\n.p-inputtext.p-variant-filled {\n background: ${dt('inputtext.filled.background')};\n}\n\n.p-inputtext.p-variant-filled:enabled:focus {\n background: ${dt('inputtext.filled.focus.background')};\n}\n\n.p-inputtext:disabled {\n opacity: 1;\n background: ${dt('inputtext.disabled.background')};\n color: ${dt('inputtext.disabled.color')};\n}\n\n.p-inputtext::placeholder {\n color: ${dt('inputtext.placeholder.color')};\n}\n\n.p-inputtext.ng-invalid.ng-dirty::placeholder {\n color: ${dt('inputtext.invalid.placeholder.color')};\n}\n\n.p-inputtext-sm {\n font-size: ${dt('inputtext.sm.font.size')};\n padding-block: ${dt('inputtext.sm.padding.y')};\n padding-inline: ${dt('inputtext.sm.padding.x')};\n}\n\n.p-inputtext-lg {\n font-size: ${dt('inputtext.lg.font.size')};\n padding-block: ${dt('inputtext.lg.padding.y')};\n padding-inline: ${dt('inputtext.lg.padding.x')};\n}\n\n.p-inputtext-fluid {\n width: 100%;\n}\n`;\n\nconst classes = {\n root: ({ instance, props }) => [\n 'p-inputtext p-component',\n {\n 'p-filled': instance.filled,\n 'p-inputtext-sm': props.size === 'small',\n 'p-inputtext-lg': props.size === 'large',\n 'p-invalid': props.invalid,\n 'p-variant-filled': props.variant === 'filled',\n 'p-inputtext-fluid': props.fluid\n }\n ]\n};\n\n@Injectable()\nexport class InputTextStyle extends BaseStyle {\n name = 'inputtext';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * InputText renders a text field to enter data.\n *\n * [Live Demo](https://www.primeng.org/inputtext/)\n *\n * @module inputtextstyle\n *\n */\nexport enum InputTextClasses {\n /**\n * The class of root element\n */\n root = 'p-inputtext'\n}\n\nexport interface InputTextStyle extends BaseStyle {}\n","import { AfterViewInit, booleanAttribute, Directive, DoCheck, HostListener, inject, Input, NgModule, Optional } from '@angular/core';\nimport { NgModel } from '@angular/forms';\nimport { isEmpty } from '@primeuix/utils';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { InputTextStyle } from './style/inputtextstyle';\n\n/**\n * InputText directive is an extension to standard input element with theming.\n * @group Components\n */\n@Directive({\n selector: '[pInputText]',\n standalone: true,\n host: {\n class: 'p-inputtext p-component',\n '[class.p-filled]': 'filled',\n '[class.p-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\" || config.inputVariant() === \"filled\"',\n '[class.p-inputtext-fluid]': 'hasFluid',\n '[class.p-inputtext-sm]': 'size === \"small\"',\n '[class.p-inputfield-sm]': 'size === \"small\"',\n '[class.p-inputtext-lg]': 'size === \"large\"',\n '[class.p-inputfield-lg]': 'size === \"large\"'\n },\n providers: [InputTextStyle]\n})\nexport class InputText extends BaseComponent implements DoCheck, AfterViewInit {\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Spans 100% width of the container when enabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean | undefined;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() size: 'large' | 'small';\n\n filled: Nullable<boolean>;\n\n _componentStyle = inject(InputTextStyle);\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n\n return isEmpty(this.fluid) ? !!fluidComponent : this.fluid;\n }\n\n constructor(@Optional() public ngModel: NgModel) {\n super();\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n this.updateFilledState();\n this.cd.detectChanges();\n }\n\n ngDoCheck() {\n this.updateFilledState();\n }\n\n @HostListener('input', ['$event'])\n onInput() {\n this.updateFilledState();\n }\n\n updateFilledState() {\n this.filled = (this.el.nativeElement.value && this.el.nativeElement.value.length) || (this.ngModel && this.ngModel.model);\n }\n}\n\n@NgModule({\n imports: [InputText],\n exports: [InputText]\n})\nexport class InputTextModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -174,8 +174,9 @@ class KeyFilter {
174
174
  if (!browser.mozilla && (this.isSpecialKey(e) || !cc)) {
175
175
  return;
176
176
  }
177
- let val = this.el.nativeElement.value + cc;
178
- ok = this.regex.test(val);
177
+ let existingValue = this.el.nativeElement.value || '';
178
+ let combinedValue = existingValue + cc;
179
+ ok = this.regex.test(combinedValue);
179
180
  if (!ok) {
180
181
  e.preventDefault();
181
182
  }
@@ -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, ElementRef, EventEmitter, forwardRef, HostListener, Inject, Input, NgModule, Output, PLATFORM_ID, Provider } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\nimport { getBrowser, isAndroid } from '@primeuix/utils';\nimport { KeyFilterPattern } from './keyfilter.interface';\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 * 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})\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 @Input({ transform: booleanAttribute }) pValidateOnly: boolean | undefined;\n /**\n * Sets the pattern for key filtering.\n * @group Props\n */\n\n @Input('pKeyFilter') set pattern(_pattern: RegExp | KeyFilterPattern | null | undefined) {\n this._pattern = _pattern;\n\n if (_pattern instanceof RegExp) {\n this.regex = _pattern;\n } else if (_pattern in DEFAULT_MASKS) {\n this.regex = DEFAULT_MASKS[_pattern];\n } else {\n this.regex = /./;\n }\n }\n get pattern(): RegExp | KeyFilterPattern | null | undefined {\n return this._pattern;\n }\n\n /**\n * Emits a value whenever the ngModel of the component changes.\n * @param {(string | number)} modelValue - Custom model change event.\n * @group Emits\n */\n @Output() ngModelChange: EventEmitter<string | number> = new EventEmitter<string | number>();\n\n regex: RegExp = /./;\n\n _pattern: RegExp | KeyFilterPattern | null | undefined;\n\n isAndroid: boolean;\n\n lastValue: any;\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n @Inject(PLATFORM_ID) private platformId: any,\n public el: ElementRef\n ) {\n if (isPlatformBrowser(this.platformId)) {\n this.isAndroid = isAndroid();\n } else {\n this.isAndroid = false;\n }\n }\n\n isNavKeyPress(e: KeyboardEvent) {\n let k = e.keyCode;\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 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 @HostListener('input', ['$event'])\n onInput(e: KeyboardEvent) {\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 if (this.isValidString(val)) {\n this.lastValue = val;\n }\n }\n }\n\n @HostListener('keypress', ['$event'])\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 let val = this.el.nativeElement.value + cc;\n ok = (<RegExp>this.regex).test(val);\n\n if (!ok) {\n e.preventDefault();\n }\n }\n\n @HostListener('paste', ['$event'])\n onPaste(e: ClipboardEvent) {\n const clipboardData = e.clipboardData || (<any>this.document.defaultView).clipboardData.getData('text');\n if (clipboardData) {\n let pattern = /\\{[0-9]+\\}/;\n const pastedText = clipboardData.getData('text');\n if (pattern.test(this.regex.toString())) {\n if (!this.regex.test(pastedText)) {\n e.preventDefault();\n return;\n }\n } else {\n for (let char of pastedText.toString()) {\n if (!this.regex.test(char)) {\n e.preventDefault();\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 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","sources":["../../src/keyfilter/keyfilter.ts","../../src/keyfilter/primeng-keyfilter.ts"],"sourcesContent":["import { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, Directive, ElementRef, EventEmitter, forwardRef, HostListener, Inject, Input, NgModule, Output, PLATFORM_ID, Provider } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\nimport { getBrowser, isAndroid } from '@primeuix/utils';\nimport { KeyFilterPattern } from './keyfilter.interface';\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 * 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})\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 @Input({ transform: booleanAttribute }) pValidateOnly: boolean | undefined;\n /**\n * Sets the pattern for key filtering.\n * @group Props\n */\n\n @Input('pKeyFilter') set pattern(_pattern: RegExp | KeyFilterPattern | null | undefined) {\n this._pattern = _pattern;\n\n if (_pattern instanceof RegExp) {\n this.regex = _pattern;\n } else if (_pattern in DEFAULT_MASKS) {\n this.regex = DEFAULT_MASKS[_pattern];\n } else {\n this.regex = /./;\n }\n }\n get pattern(): RegExp | KeyFilterPattern | null | undefined {\n return this._pattern;\n }\n\n /**\n * Emits a value whenever the ngModel of the component changes.\n * @param {(string | number)} modelValue - Custom model change event.\n * @group Emits\n */\n @Output() ngModelChange: EventEmitter<string | number> = new EventEmitter<string | number>();\n\n regex: RegExp = /./;\n\n _pattern: RegExp | KeyFilterPattern | null | undefined;\n\n isAndroid: boolean;\n\n lastValue: any;\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n @Inject(PLATFORM_ID) private platformId: any,\n public el: ElementRef\n ) {\n if (isPlatformBrowser(this.platformId)) {\n this.isAndroid = isAndroid();\n } else {\n this.isAndroid = false;\n }\n }\n\n isNavKeyPress(e: KeyboardEvent) {\n let k = e.keyCode;\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 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 @HostListener('input', ['$event'])\n onInput(e: KeyboardEvent) {\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 if (this.isValidString(val)) {\n this.lastValue = val;\n }\n }\n }\n\n @HostListener('keypress', ['$event'])\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 @HostListener('paste', ['$event'])\n onPaste(e: ClipboardEvent) {\n const clipboardData = e.clipboardData || (<any>this.document.defaultView).clipboardData.getData('text');\n if (clipboardData) {\n let pattern = /\\{[0-9]+\\}/;\n const pastedText = clipboardData.getData('text');\n if (pattern.test(this.regex.toString())) {\n if (!this.regex.test(pastedText)) {\n e.preventDefault();\n return;\n }\n } else {\n for (let char of pastedText.toString()) {\n if (!this.regex.test(char)) {\n e.preventDefault();\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 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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"}
@@ -586,7 +586,7 @@ function Listbox_ng_template_9_li_3_Conditional_2_Template(rf, ctx) { if (rf & 1
586
586
  i0.ɵɵtemplate(0, Listbox_ng_template_9_li_3_Conditional_2_ng_container_0_Template, 2, 0, "ng-container", 40);
587
587
  } if (rf & 2) {
588
588
  const ctx_r1 = i0.ɵɵnextContext(3);
589
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.emptyFilterTemplate || ctx_r1.emptyTemplate);
589
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.emptyfilter || ctx_r1.emptyTemplate);
590
590
  } }
591
591
  function Listbox_ng_template_9_li_3_Template(rf, ctx) { if (rf & 1) {
592
592
  i0.ɵɵelementStart(0, "li", 49);
@@ -595,7 +595,7 @@ function Listbox_ng_template_9_li_3_Template(rf, ctx) { if (rf & 1) {
595
595
  } if (rf & 2) {
596
596
  const ctx_r1 = i0.ɵɵnextContext(2);
597
597
  i0.ɵɵadvance();
598
- i0.ɵɵconditional(!ctx_r1.emptyFilterTemplate && !ctx_r1.emptyTemplate ? 1 : 2);
598
+ i0.ɵɵconditional(!ctx_r1.emptyfilter && !ctx_r1.emptyTemplate ? 1 : 2);
599
599
  } }
600
600
  function Listbox_ng_template_9_li_4_Conditional_1_Template(rf, ctx) { if (rf & 1) {
601
601
  i0.ɵɵtext(0);
@@ -1021,7 +1021,7 @@ class Listbox extends BaseComponent {
1021
1021
  * Custom empty filter message template.
1022
1022
  * @group Templates
1023
1023
  */
1024
- emptyFilterTemplate;
1024
+ emptyfilter;
1025
1025
  /**
1026
1026
  * Custom empty message template.
1027
1027
  * @group Templates
@@ -1133,51 +1133,6 @@ class Listbox extends BaseComponent {
1133
1133
  };
1134
1134
  }
1135
1135
  }
1136
- ngAfterContentInit() {
1137
- this.templates.forEach((item) => {
1138
- switch (item.getType()) {
1139
- case 'item':
1140
- this.itemTemplate = item.template;
1141
- break;
1142
- case 'option':
1143
- this.itemTemplate = item.template;
1144
- break;
1145
- case 'group':
1146
- this.groupTemplate = item.template;
1147
- break;
1148
- case 'header':
1149
- this.headerTemplate = item.template;
1150
- break;
1151
- case 'filter':
1152
- this.filterTemplate = item.template;
1153
- break;
1154
- case 'footer':
1155
- this.footerTemplate = item.template;
1156
- break;
1157
- case 'empty':
1158
- this.emptyTemplate = item.template;
1159
- break;
1160
- case 'emptyfilter':
1161
- this.emptyFilterTemplate = item.template;
1162
- break;
1163
- case 'filtericon':
1164
- this.filterIconTemplate = item.template;
1165
- break;
1166
- case 'checkicon':
1167
- this.checkIconTemplate = item.template;
1168
- break;
1169
- case 'checkmark':
1170
- this.checkmarkTemplate = item.template;
1171
- break;
1172
- case 'loader':
1173
- this.loaderTemplate = item.template;
1174
- break;
1175
- default:
1176
- this.itemTemplate = item.template;
1177
- break;
1178
- }
1179
- });
1180
- }
1181
1136
  writeValue(value) {
1182
1137
  this.value = value;
1183
1138
  this.modelValue.set(this.value);
@@ -1780,7 +1735,7 @@ class Listbox extends BaseComponent {
1780
1735
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headerTemplate = _t.first);
1781
1736
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.filterTemplate = _t.first);
1782
1737
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.footerTemplate = _t.first);
1783
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.emptyFilterTemplate = _t.first);
1738
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.emptyfilter = _t.first);
1784
1739
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.emptyTemplate = _t.first);
1785
1740
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.filterIconTemplate = _t.first);
1786
1741
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.checkIconTemplate = _t.first);
@@ -2042,10 +1997,10 @@ class Listbox extends BaseComponent {
2042
1997
  </ng-container>
2043
1998
  </ng-template>
2044
1999
  <li *ngIf="hasFilter() && isEmpty()" class="p-listbox-empty-message" role="option">
2045
- @if (!emptyFilterTemplate && !emptyTemplate) {
2000
+ @if (!emptyfilter && !emptyTemplate) {
2046
2001
  {{ emptyFilterMessageText }}
2047
2002
  } @else {
2048
- <ng-container #emptyFilter *ngTemplateOutlet="emptyFilterTemplate || emptyTemplate"></ng-container>
2003
+ <ng-container #emptyFilter *ngTemplateOutlet="emptyfilter || emptyTemplate"></ng-container>
2049
2004
  }
2050
2005
  </li>
2051
2006
  <li *ngIf="!hasFilter() && isEmpty()" class="p-listbox-empty-message" role="option">
@@ -2257,7 +2212,7 @@ class Listbox extends BaseComponent {
2257
2212
  }], footerTemplate: [{
2258
2213
  type: ContentChild,
2259
2214
  args: ['footer']
2260
- }], emptyFilterTemplate: [{
2215
+ }], emptyfilter: [{
2261
2216
  type: ContentChild,
2262
2217
  args: ['emptyfilter']
2263
2218
  }], emptyTemplate: [{