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 +1 @@
1
- {"version":3,"file":"primeng-dom.mjs","sources":["../../src/dom/domhandler.ts","../../src/dom/connectedoverlayscrollhandler.ts","../../src/dom/primeng-dom.ts"],"sourcesContent":["import { getCSSVariableByRegex } from '@primeuix/utils';\n\n/**\n * @dynamic is for runtime initializing DomHandler.browser\n *\n * If delete below comment, we can see this error message:\n * Metadata collected contains an error that will be reported at runtime:\n * Only initialized variables and constants can be referenced\n * because the value of this variable is needed by the template compiler.\n */\n// @dynamic\nexport class DomHandler {\n public static zindex: number = 1000;\n\n private static calculatedScrollbarWidth: number | null = null;\n\n private static calculatedScrollbarHeight: number | null = null;\n\n private static browser: any;\n\n public static addClass(element: any, className: string): void {\n if (element && className) {\n if (element.classList) element.classList.add(className);\n else element.className += ' ' + className;\n }\n }\n\n public static addMultipleClasses(element: any, className: string): void {\n if (element && className) {\n if (element.classList) {\n let styles: string[] = className.trim().split(' ');\n\n for (let i = 0; i < styles.length; i++) {\n element.classList.add(styles[i]);\n }\n } else {\n let styles: string[] = className.split(' ');\n\n for (let i = 0; i < styles.length; i++) {\n element.className += ' ' + styles[i];\n }\n }\n }\n }\n\n public static removeClass(element: any, className: string): void {\n if (element && className) {\n if (element.classList) element.classList.remove(className);\n else element.className = element.className.replace(new RegExp('(^|\\\\b)' + className.split(' ').join('|') + '(\\\\b|$)', 'gi'), ' ');\n }\n }\n\n public static removeMultipleClasses(element, classNames) {\n if (element && classNames) {\n [classNames]\n .flat()\n .filter(Boolean)\n .forEach((cNames) => cNames.split(' ').forEach((className) => this.removeClass(element, className)));\n }\n }\n\n public static hasClass(element: any, className: string): boolean {\n if (element && className) {\n if (element.classList) return element.classList.contains(className);\n else return new RegExp('(^| )' + className + '( |$)', 'gi').test(element.className);\n }\n\n return false;\n }\n\n public static siblings(element: any): any {\n return Array.prototype.filter.call(element.parentNode.children, function (child) {\n return child !== element;\n });\n }\n\n public static find(element: any, selector: string): any[] {\n return Array.from(element.querySelectorAll(selector));\n }\n\n public static findSingle(element: any, selector: string): any {\n return this.isElement(element) ? element.querySelector(selector) : null;\n }\n\n public static index(element: any): number {\n let children = element.parentNode.childNodes;\n let num = 0;\n\n for (let i = 0; i < children.length; i++) {\n if (children[i] == element) return num;\n\n if (children[i].nodeType == 1) num++;\n }\n\n return -1;\n }\n\n public static indexWithinGroup(element: any, attributeName: string): number {\n let children = element.parentNode ? element.parentNode.childNodes : [];\n let num = 0;\n\n for (let i = 0; i < children.length; i++) {\n if (children[i] == element) return num;\n\n if (children[i].attributes && children[i].attributes[attributeName] && children[i].nodeType == 1) num++;\n }\n\n return -1;\n }\n\n public static appendOverlay(overlay: any, target: any, appendTo: any = 'self') {\n if (appendTo !== 'self' && overlay && target) {\n this.appendChild(overlay, target);\n }\n }\n\n public static alignOverlay(overlay: any, target: any, appendTo: any = 'self', calculateMinWidth: boolean = true) {\n if (overlay && target) {\n if (calculateMinWidth) {\n overlay.style.minWidth = `${DomHandler.getOuterWidth(target)}px`;\n }\n\n if (appendTo === 'self') {\n this.relativePosition(overlay, target);\n } else {\n this.absolutePosition(overlay, target);\n }\n }\n }\n\n public static relativePosition(element: any, target: any, gutter: boolean = true): void {\n const getClosestRelativeElement = (el) => {\n if (!el) return;\n\n return getComputedStyle(el).getPropertyValue('position') === 'relative' ? el : getClosestRelativeElement(el.parentElement);\n };\n\n const elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);\n const targetHeight = target.offsetHeight;\n const targetOffset = target.getBoundingClientRect();\n const windowScrollTop = this.getWindowScrollTop();\n const windowScrollLeft = this.getWindowScrollLeft();\n const viewport = this.getViewport();\n const relativeElement = getClosestRelativeElement(element);\n const relativeElementOffset = relativeElement?.getBoundingClientRect() || {\n top: -1 * windowScrollTop,\n left: -1 * windowScrollLeft\n };\n let top: number,\n left: number,\n origin: string = 'top';\n\n if (targetOffset.top + targetHeight + elementDimensions.height > viewport.height) {\n top = targetOffset.top - relativeElementOffset.top - elementDimensions.height;\n origin = 'bottom';\n\n if (targetOffset.top + top < 0) {\n top = -1 * targetOffset.top;\n }\n } else {\n top = targetHeight + targetOffset.top - relativeElementOffset.top;\n origin = 'top';\n }\n\n const horizontalOverflow = targetOffset.left + elementDimensions.width - viewport.width;\n const targetLeftOffsetInSpaceOfRelativeElement = targetOffset.left - relativeElementOffset.left;\n\n if (elementDimensions.width > viewport.width) {\n // element wider then viewport and cannot fit on screen (align at left side of viewport)\n left = (targetOffset.left - relativeElementOffset.left) * -1;\n } else if (horizontalOverflow > 0) {\n // element wider then viewport but can be fit on screen (align at right side of viewport)\n left = targetLeftOffsetInSpaceOfRelativeElement - horizontalOverflow;\n } else {\n // element fits on screen (align with target)\n left = targetOffset.left - relativeElementOffset.left;\n }\n\n element.style.top = top + 'px';\n element.style.left = left + 'px';\n element.style.transformOrigin = origin;\n\n if (gutter) {\n const gutterValue = getCSSVariableByRegex(/-anchor-gutter$/)?.value;\n\n element.style.marginTop = origin === 'bottom' ? `calc(${gutterValue ?? '2px'} * -1)` : (gutterValue ?? '');\n }\n }\n\n public static absolutePosition(element: any, target: any, gutter: boolean = true): void {\n const elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);\n const elementOuterHeight = elementDimensions.height;\n const elementOuterWidth = elementDimensions.width;\n const targetOuterHeight = target.offsetHeight;\n const targetOuterWidth = target.offsetWidth;\n const targetOffset = target.getBoundingClientRect();\n const windowScrollTop = this.getWindowScrollTop();\n const windowScrollLeft = this.getWindowScrollLeft();\n const viewport = this.getViewport();\n let top: number, left: number;\n\n if (targetOffset.top + targetOuterHeight + elementOuterHeight > viewport.height) {\n top = targetOffset.top + windowScrollTop - elementOuterHeight;\n element.style.transformOrigin = 'bottom';\n\n if (top < 0) {\n top = windowScrollTop;\n }\n } else {\n top = targetOuterHeight + targetOffset.top + windowScrollTop;\n element.style.transformOrigin = 'top';\n }\n\n if (targetOffset.left + elementOuterWidth > viewport.width) left = Math.max(0, targetOffset.left + windowScrollLeft + targetOuterWidth - elementOuterWidth);\n else left = targetOffset.left + windowScrollLeft;\n\n element.style.top = top + 'px';\n element.style.left = left + 'px';\n\n if (gutter) {\n element.style.marginTop = origin === 'bottom' ? 'calc(var(--p-anchor-gutter) * -1)' : 'calc(var(--p-anchor-gutter))';\n }\n }\n\n static getParents(element: any, parents: any = []): any {\n const parent = element['parentNode'] instanceof ShadowRoot ? element['parentNode'].host : element['parentNode'];\n\n return parent == null ? parents : this.getParents(parent, parents.concat([parent]));\n }\n\n static getScrollableParents(element: any) {\n let scrollableParents: any[] = [];\n\n if (element) {\n let parents = this.getParents(element);\n const overflowRegex = /(auto|scroll)/;\n\n const overflowCheck = (node: any) => {\n let styleDeclaration = window['getComputedStyle'](node, null);\n\n return overflowRegex.test(styleDeclaration.getPropertyValue('overflow')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowX')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowY'));\n };\n\n for (let parent of parents) {\n let scrollSelectors = parent.nodeType === 1 && parent.dataset['scrollselectors'];\n\n if (scrollSelectors) {\n let selectors = scrollSelectors.split(',');\n\n for (let selector of selectors) {\n let el = this.findSingle(parent, selector);\n\n if (el && overflowCheck(el)) {\n scrollableParents.push(el);\n }\n }\n }\n\n if (parent.nodeType !== 9 && overflowCheck(parent)) {\n scrollableParents.push(parent);\n }\n }\n }\n\n return scrollableParents;\n }\n\n public static getHiddenElementOuterHeight(element: any): number {\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n let elementHeight = element.offsetHeight;\n\n element.style.display = 'none';\n element.style.visibility = 'visible';\n\n return elementHeight;\n }\n\n public static getHiddenElementOuterWidth(element: any): number {\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n let elementWidth = element.offsetWidth;\n\n element.style.display = 'none';\n element.style.visibility = 'visible';\n\n return elementWidth;\n }\n\n public static getHiddenElementDimensions(element: any): any {\n let dimensions: any = {};\n\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n dimensions.width = element.offsetWidth;\n dimensions.height = element.offsetHeight;\n element.style.display = 'none';\n element.style.visibility = 'visible';\n\n return dimensions;\n }\n\n public static scrollInView(container, item) {\n let borderTopValue: string = getComputedStyle(container).getPropertyValue('borderTopWidth');\n let borderTop: number = borderTopValue ? parseFloat(borderTopValue) : 0;\n let paddingTopValue: string = getComputedStyle(container).getPropertyValue('paddingTop');\n let paddingTop: number = paddingTopValue ? parseFloat(paddingTopValue) : 0;\n let containerRect = container.getBoundingClientRect();\n let itemRect = item.getBoundingClientRect();\n let offset = itemRect.top + document.body.scrollTop - (containerRect.top + document.body.scrollTop) - borderTop - paddingTop;\n let scroll = container.scrollTop;\n let elementHeight = container.clientHeight;\n let itemHeight = this.getOuterHeight(item);\n\n if (offset < 0) {\n container.scrollTop = scroll + offset;\n } else if (offset + itemHeight > elementHeight) {\n container.scrollTop = scroll + offset - elementHeight + itemHeight;\n }\n }\n\n public static fadeIn(element, duration: number): void {\n element.style.opacity = 0;\n\n let last = +new Date();\n let opacity = 0;\n\n let tick = function () {\n opacity = +element.style.opacity.replace(',', '.') + (new Date().getTime() - last) / duration;\n element.style.opacity = opacity;\n last = +new Date();\n\n if (+opacity < 1) {\n if (window.requestAnimationFrame) window.requestAnimationFrame(tick);\n else setTimeout(tick, 16);\n }\n };\n\n tick();\n }\n\n public static fadeOut(element, ms) {\n let opacity = 1,\n interval = 50,\n duration = ms,\n gap = interval / duration;\n\n let fading = setInterval(() => {\n opacity = opacity - gap;\n\n if (opacity <= 0) {\n opacity = 0;\n clearInterval(fading);\n }\n\n element.style.opacity = opacity;\n }, interval);\n }\n\n public static getWindowScrollTop(): number {\n let doc = document.documentElement;\n\n return (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);\n }\n\n public static getWindowScrollLeft(): number {\n let doc = document.documentElement;\n\n return (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);\n }\n\n public static matches(element, selector: string): boolean {\n let p = Element.prototype;\n\n let f =\n p['matches'] ||\n p.webkitMatchesSelector ||\n p['mozMatchesSelector'] ||\n p['msMatchesSelector'] ||\n function (s) {\n return [].indexOf.call(document.querySelectorAll(s), this) !== -1;\n };\n\n return f.call(element, selector);\n }\n\n public static getOuterWidth(el, margin?) {\n let width = el.offsetWidth;\n\n if (margin) {\n let style = getComputedStyle(el);\n\n width += parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n }\n\n return width;\n }\n\n public static getHorizontalPadding(el) {\n let style = getComputedStyle(el);\n\n return parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n }\n\n public static getHorizontalMargin(el) {\n let style = getComputedStyle(el);\n\n return parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n }\n\n public static innerWidth(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n\n width += parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n\n return width;\n }\n\n public static width(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n\n return width;\n }\n\n public static getInnerHeight(el) {\n let height = el.offsetHeight;\n let style = getComputedStyle(el);\n\n height += parseFloat(style.paddingTop) + parseFloat(style.paddingBottom);\n\n return height;\n }\n\n public static getOuterHeight(el, margin?) {\n let height = el.offsetHeight;\n\n if (margin) {\n let style = getComputedStyle(el);\n\n height += parseFloat(style.marginTop) + parseFloat(style.marginBottom);\n }\n\n return height;\n }\n\n public static getHeight(el): number {\n let height = el.offsetHeight;\n let style = getComputedStyle(el);\n\n height -= parseFloat(style.paddingTop) + parseFloat(style.paddingBottom) + parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth);\n\n return height;\n }\n\n public static getWidth(el): number {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight) + parseFloat(style.borderLeftWidth) + parseFloat(style.borderRightWidth);\n\n return width;\n }\n\n public static getViewport(): any {\n let win = window,\n d = document,\n e = d.documentElement,\n g = d.getElementsByTagName('body')[0],\n w = win.innerWidth || e.clientWidth || g.clientWidth,\n h = win.innerHeight || e.clientHeight || g.clientHeight;\n\n return { width: w, height: h };\n }\n\n public static getOffset(el) {\n let rect = el.getBoundingClientRect();\n\n return {\n top: rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0),\n left: rect.left + (window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0)\n };\n }\n\n public static replaceElementWith(element: any, replacementElement: any): any {\n let parentNode = element.parentNode;\n\n if (!parentNode) throw `Can't replace element`;\n\n return parentNode.replaceChild(replacementElement, element);\n }\n\n public static getUserAgent(): string | undefined {\n if (navigator && this.isClient()) {\n return navigator.userAgent;\n }\n }\n\n public static isIE() {\n let ua = window.navigator.userAgent;\n\n let msie = ua.indexOf('MSIE ');\n\n if (msie > 0) {\n // IE 10 or older => return version number\n return true;\n }\n\n let trident = ua.indexOf('Trident/');\n\n if (trident > 0) {\n // IE 11 => return version number\n return true;\n }\n\n let edge = ua.indexOf('Edge/');\n\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return true;\n }\n\n // other browser\n return false;\n }\n\n public static isIOS() {\n return /iPad|iPhone|iPod/.test(navigator.userAgent) && !window['MSStream'];\n }\n\n public static isAndroid() {\n return /(android)/i.test(navigator.userAgent);\n }\n\n public static isTouchDevice() {\n return 'ontouchstart' in window || navigator.maxTouchPoints > 0;\n }\n\n public static appendChild(element: any, target: any) {\n if (this.isElement(target)) target.appendChild(element);\n else if (target && target.el && target.el.nativeElement) target.el.nativeElement.appendChild(element);\n else throw 'Cannot append ' + target + ' to ' + element;\n }\n\n public static removeChild(element: any, target: any) {\n if (this.isElement(target)) target.removeChild(element);\n else if (target.el && target.el.nativeElement) target.el.nativeElement.removeChild(element);\n else throw 'Cannot remove ' + element + ' from ' + target;\n }\n\n public static removeElement(element: Element) {\n if (!('remove' in Element.prototype)) element.parentNode?.removeChild(element);\n else element.remove();\n }\n\n public static isElement(obj: any) {\n return typeof HTMLElement === 'object' ? obj instanceof HTMLElement : obj && typeof obj === 'object' && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === 'string';\n }\n\n public static calculateScrollbarWidth(el?: HTMLElement): number {\n if (el) {\n let style = getComputedStyle(el);\n\n return el.offsetWidth - el.clientWidth - parseFloat(style.borderLeftWidth) - parseFloat(style.borderRightWidth);\n } else {\n if (this.calculatedScrollbarWidth !== null) return this.calculatedScrollbarWidth;\n\n let scrollDiv = document.createElement('div');\n\n scrollDiv.className = 'p-scrollbar-measure';\n document.body.appendChild(scrollDiv);\n\n let scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n\n document.body.removeChild(scrollDiv);\n\n this.calculatedScrollbarWidth = scrollbarWidth;\n\n return scrollbarWidth;\n }\n }\n\n public static calculateScrollbarHeight(): number {\n if (this.calculatedScrollbarHeight !== null) return this.calculatedScrollbarHeight;\n\n let scrollDiv = document.createElement('div');\n\n scrollDiv.className = 'p-scrollbar-measure';\n document.body.appendChild(scrollDiv);\n\n let scrollbarHeight = scrollDiv.offsetHeight - scrollDiv.clientHeight;\n\n document.body.removeChild(scrollDiv);\n\n this.calculatedScrollbarWidth = scrollbarHeight;\n\n return scrollbarHeight;\n }\n\n public static invokeElementMethod(element: any, methodName: string, args?: any[]): void {\n (element as any)[methodName].apply(element, args);\n }\n\n public static clearSelection(): void {\n if (window.getSelection && window.getSelection()) {\n if (window.getSelection()?.empty) {\n window.getSelection()?.empty();\n } else if (window.getSelection()?.removeAllRanges && (window.getSelection()?.rangeCount || 0) > 0 && (window.getSelection()?.getRangeAt(0)?.getClientRects()?.length || 0) > 0) {\n window.getSelection()?.removeAllRanges();\n }\n } else if (document['selection'] && document['selection'].empty) {\n try {\n document['selection'].empty();\n } catch {\n //ignore IE bug\n }\n }\n }\n\n public static getBrowser() {\n if (!this.browser) {\n let matched = this.resolveUserAgent();\n\n this.browser = {};\n\n if (matched.browser) {\n this.browser[matched.browser] = true;\n this.browser['version'] = matched.version;\n }\n\n if (this.browser['chrome']) {\n this.browser['webkit'] = true;\n } else if (this.browser['webkit']) {\n this.browser['safari'] = true;\n }\n }\n\n return this.browser;\n }\n\n public static resolveUserAgent() {\n let ua = navigator.userAgent.toLowerCase();\n let match = /(chrome)[ /]([\\w.]+)/.exec(ua) || /(webkit)[ /]([\\w.]+)/.exec(ua) || /(opera)(?:.*version|)[ /]([\\w.]+)/.exec(ua) || /(msie) ([\\w.]+)/.exec(ua) || (ua.indexOf('compatible') < 0 && /(mozilla)(?:.*? rv:([\\w.]+)|)/.exec(ua)) || [];\n\n return {\n browser: match[1] || '',\n version: match[2] || '0'\n };\n }\n\n public static isInteger(value): boolean {\n if (Number.isInteger) {\n return Number.isInteger(value);\n } else {\n return typeof value === 'number' && isFinite(value) && Math.floor(value) === value;\n }\n }\n\n public static isHidden(element: HTMLElement): boolean {\n return !element || element.offsetParent === null;\n }\n\n public static isVisible(element: HTMLElement) {\n return element && element.offsetParent != null;\n }\n\n public static isExist(element: HTMLElement) {\n return element !== null && typeof element !== 'undefined' && element.nodeName && element.parentNode;\n }\n\n public static focus(element: HTMLElement, options?: FocusOptions): void {\n if (element && document.activeElement !== element) {\n element.focus(options);\n }\n }\n\n public static getFocusableSelectorString(selector = ''): string {\n return `button:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [href][clientHeight][clientWidth]:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n input:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n select:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n textarea:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [tabIndex]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [contenteditable]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n .p-inputtext:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n .p-button:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector}`;\n }\n\n public static getFocusableElements(element, selector = ''): any[] {\n let focusableElements = this.find(element, this.getFocusableSelectorString(selector));\n\n let visibleFocusableElements: any[] = [];\n\n for (let focusableElement of focusableElements) {\n const computedStyle = getComputedStyle(focusableElement);\n\n if (this.isVisible(focusableElement) && computedStyle.display != 'none' && computedStyle.visibility != 'hidden') visibleFocusableElements.push(focusableElement);\n }\n\n return visibleFocusableElements;\n }\n\n public static getFocusableElement(element, selector = ''): any | null {\n let focusableElement = this.findSingle(element, this.getFocusableSelectorString(selector));\n\n if (focusableElement) {\n const computedStyle = getComputedStyle(focusableElement);\n\n if (this.isVisible(focusableElement) && computedStyle.display != 'none' && computedStyle.visibility != 'hidden') return focusableElement;\n }\n\n return null;\n }\n\n public static getFirstFocusableElement(element, selector = '') {\n const focusableElements = this.getFocusableElements(element, selector);\n\n return focusableElements.length > 0 ? focusableElements[0] : null;\n }\n\n public static getLastFocusableElement(element, selector) {\n const focusableElements = this.getFocusableElements(element, selector);\n\n return focusableElements.length > 0 ? focusableElements[focusableElements.length - 1] : null;\n }\n\n public static getNextFocusableElement(element: HTMLElement, reverse = false) {\n const focusableElements = DomHandler.getFocusableElements(element);\n let index = 0;\n\n if (focusableElements && focusableElements.length > 0) {\n const focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n\n if (reverse) {\n if (focusedIndex == -1 || focusedIndex === 0) {\n index = focusableElements.length - 1;\n } else {\n index = focusedIndex - 1;\n }\n } else if (focusedIndex != -1 && focusedIndex !== focusableElements.length - 1) {\n index = focusedIndex + 1;\n }\n }\n\n return focusableElements[index];\n }\n\n static generateZIndex() {\n this.zindex = this.zindex || 999;\n\n return ++this.zindex;\n }\n\n public static getSelection() {\n if (window.getSelection) return window.getSelection()?.toString();\n else if (document.getSelection) return document.getSelection()?.toString();\n else if (document['selection']) return document['selection'].createRange().text;\n\n return null;\n }\n\n public static getTargetElement(target: any, el?: HTMLElement) {\n if (!target) return null;\n\n switch (target) {\n case 'document':\n return document;\n case 'window':\n return window;\n case '@next':\n return el?.nextElementSibling;\n case '@prev':\n return el?.previousElementSibling;\n case '@parent':\n return el?.parentElement;\n case '@grandparent':\n return el?.parentElement?.parentElement;\n\n default: {\n const type = typeof target;\n\n if (type === 'string') {\n return document.querySelector(target);\n } else if (type === 'object' && Object.prototype.hasOwnProperty.call(target, 'nativeElement')) {\n return this.isExist(target.nativeElement) ? target.nativeElement : undefined;\n }\n\n const isFunction = (obj: any) => !!(obj && obj.constructor && obj.call && obj.apply);\n const element = isFunction(target) ? target() : target;\n\n return (element && element.nodeType === 9) || this.isExist(element) ? element : null;\n }\n }\n }\n\n public static isClient() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n }\n\n public static getAttribute(element, name) {\n if (element) {\n const value = element.getAttribute(name);\n\n if (!isNaN(value)) {\n return +value;\n }\n\n if (value === 'true' || value === 'false') {\n return value === 'true';\n }\n\n return value;\n }\n\n return undefined;\n }\n\n public static calculateBodyScrollbarWidth() {\n return window.innerWidth - document.documentElement.offsetWidth;\n }\n\n public static blockBodyScroll(className = 'p-overflow-hidden') {\n document.body.style.setProperty('--px-scrollbar-width', this.calculateBodyScrollbarWidth() + 'px');\n this.addClass(document.body, className);\n }\n\n public static unblockBodyScroll(className = 'p-overflow-hidden') {\n document.body.style.removeProperty('--px-scrollbar-width');\n this.removeClass(document.body, className);\n }\n\n public static createElement(type, attributes = {}, ...children) {\n if (type) {\n const element = document.createElement(type);\n\n this.setAttributes(element, attributes);\n element.append(...children);\n\n return element;\n }\n\n return undefined;\n }\n\n public static setAttribute(element, attribute = '', value) {\n if (this.isElement(element) && value !== null && value !== undefined) {\n element.setAttribute(attribute, value);\n }\n }\n\n public static setAttributes(element, attributes = {}) {\n if (this.isElement(element)) {\n const computedStyles = (rule, value) => {\n const styles = element?.$attrs?.[rule] ? [element?.$attrs?.[rule]] : [];\n\n return [value].flat().reduce((cv, v) => {\n if (v !== null && v !== undefined) {\n const type = typeof v;\n\n if (type === 'string' || type === 'number') {\n cv.push(v);\n } else if (type === 'object') {\n const _cv = Array.isArray(v)\n ? computedStyles(rule, v)\n : Object.entries(v).map(([_k, _v]) => (rule === 'style' && (!!_v || _v === 0) ? `${_k.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()}:${_v}` : _v ? _k : undefined));\n\n cv = _cv.length ? cv.concat(_cv.filter((c) => !!c)) : cv;\n }\n }\n\n return cv;\n }, styles);\n };\n\n Object.entries(attributes).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n const matchedEvent = key.match(/^on(.+)/);\n\n if (matchedEvent) {\n element.addEventListener(matchedEvent[1].toLowerCase(), value);\n } else if (key === 'pBind') {\n this.setAttributes(element, value);\n } else {\n value = key === 'class' ? [...new Set(computedStyles('class', value))].join(' ').trim() : key === 'style' ? computedStyles('style', value).join(';').trim() : value;\n\n if ((element.$attrs = element.$attrs || {})) {\n element.$attrs[key] = value;\n }\n\n element.setAttribute(key, value);\n }\n }\n });\n }\n }\n\n public static isFocusableElement(element, selector = '') {\n return this.isElement(element)\n ? element.matches(`button:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [href][clientHeight][clientWidth]:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n input:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n select:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n textarea:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [tabIndex]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [contenteditable]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector}`)\n : false;\n }\n}\n\nimport { $dt } from '@primeuix/styled';\nimport * as utils from '@primeuix/utils';\n\n// @todo: update this when we remove the old domhandler\nexport function blockBodyScroll() {\n utils.blockBodyScroll({ variableName: $dt('scrollbar.width').name });\n}\n\nexport function unblockBodyScroll() {\n utils.unblockBodyScroll({ variableName: $dt('scrollbar.width').name });\n}\n","import { DomHandler } from './domhandler';\n\nexport class ConnectedOverlayScrollHandler {\n element: any;\n\n listener: any;\n\n scrollableParents: any;\n\n constructor(element: any, listener: any = () => {}) {\n this.element = element;\n this.listener = listener;\n }\n\n bindScrollListener() {\n this.scrollableParents = DomHandler.getScrollableParents(this.element);\n\n for (let i = 0; i < this.scrollableParents.length; i++) {\n this.scrollableParents[i].addEventListener('scroll', this.listener);\n }\n }\n\n unbindScrollListener() {\n if (this.scrollableParents) {\n for (let i = 0; i < this.scrollableParents.length; i++) {\n this.scrollableParents[i].removeEventListener('scroll', this.listener);\n }\n }\n }\n\n destroy() {\n this.unbindScrollListener();\n this.element = null;\n this.listener = null;\n this.scrollableParents = null;\n }\n}\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-dom.mjs","names":["duration"],"sources":["../../src/dom/domhandler.ts","../../src/dom/connectedoverlayscrollhandler.ts"],"sourcesContent":["import { getCSSVariableByRegex } from '@primeuix/utils';\n\n/**\n * @dynamic is for runtime initializing DomHandler.browser\n *\n * If delete below comment, we can see this error message:\n * Metadata collected contains an error that will be reported at runtime:\n * Only initialized variables and constants can be referenced\n * because the value of this variable is needed by the template compiler.\n */\n// @dynamic\nexport class DomHandler {\n public static zindex: number = 1000;\n\n private static calculatedScrollbarWidth: number | null = null;\n\n private static calculatedScrollbarHeight: number | null = null;\n\n private static browser: any;\n\n public static addClass(element: any, className: string): void {\n if (element && className) {\n if (element.classList) element.classList.add(className);\n else element.className += ' ' + className;\n }\n }\n\n public static addMultipleClasses(element: any, className: string): void {\n if (element && className) {\n if (element.classList) {\n let styles: string[] = className.trim().split(' ');\n\n for (let i = 0; i < styles.length; i++) {\n element.classList.add(styles[i]);\n }\n } else {\n let styles: string[] = className.split(' ');\n\n for (let i = 0; i < styles.length; i++) {\n element.className += ' ' + styles[i];\n }\n }\n }\n }\n\n public static removeClass(element: any, className: string): void {\n if (element && className) {\n if (element.classList) element.classList.remove(className);\n else element.className = element.className.replace(new RegExp('(^|\\\\b)' + className.split(' ').join('|') + '(\\\\b|$)', 'gi'), ' ');\n }\n }\n\n public static removeMultipleClasses(element, classNames) {\n if (element && classNames) {\n [classNames]\n .flat()\n .filter(Boolean)\n .forEach((cNames) => cNames.split(' ').forEach((className) => this.removeClass(element, className)));\n }\n }\n\n public static hasClass(element: any, className: string): boolean {\n if (element && className) {\n if (element.classList) return element.classList.contains(className);\n else return new RegExp('(^| )' + className + '( |$)', 'gi').test(element.className);\n }\n\n return false;\n }\n\n public static siblings(element: any): any {\n return Array.prototype.filter.call(element.parentNode.children, function (child) {\n return child !== element;\n });\n }\n\n public static find(element: any, selector: string): any[] {\n return Array.from(element.querySelectorAll(selector));\n }\n\n public static findSingle(element: any, selector: string): any {\n return this.isElement(element) ? element.querySelector(selector) : null;\n }\n\n public static index(element: any): number {\n let children = element.parentNode.childNodes;\n let num = 0;\n\n for (let i = 0; i < children.length; i++) {\n if (children[i] == element) return num;\n\n if (children[i].nodeType == 1) num++;\n }\n\n return -1;\n }\n\n public static indexWithinGroup(element: any, attributeName: string): number {\n let children = element.parentNode ? element.parentNode.childNodes : [];\n let num = 0;\n\n for (let i = 0; i < children.length; i++) {\n if (children[i] == element) return num;\n\n if (children[i].attributes && children[i].attributes[attributeName] && children[i].nodeType == 1) num++;\n }\n\n return -1;\n }\n\n public static appendOverlay(overlay: any, target: any, appendTo: any = 'self') {\n if (appendTo !== 'self' && overlay && target) {\n this.appendChild(overlay, target);\n }\n }\n\n public static alignOverlay(overlay: any, target: any, appendTo: any = 'self', calculateMinWidth: boolean = true) {\n if (overlay && target) {\n if (calculateMinWidth) {\n overlay.style.minWidth = `${DomHandler.getOuterWidth(target)}px`;\n }\n\n if (appendTo === 'self') {\n this.relativePosition(overlay, target);\n } else {\n this.absolutePosition(overlay, target);\n }\n }\n }\n\n public static relativePosition(element: any, target: any, gutter: boolean = true): void {\n const getClosestRelativeElement = (el) => {\n if (!el) return;\n\n return getComputedStyle(el).getPropertyValue('position') === 'relative' ? el : getClosestRelativeElement(el.parentElement);\n };\n\n const elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);\n const targetHeight = target.offsetHeight;\n const targetOffset = target.getBoundingClientRect();\n const windowScrollTop = this.getWindowScrollTop();\n const windowScrollLeft = this.getWindowScrollLeft();\n const viewport = this.getViewport();\n const relativeElement = getClosestRelativeElement(element);\n const relativeElementOffset = relativeElement?.getBoundingClientRect() || {\n top: -1 * windowScrollTop,\n left: -1 * windowScrollLeft\n };\n let top: number,\n left: number,\n origin: string = 'top';\n\n if (targetOffset.top + targetHeight + elementDimensions.height > viewport.height) {\n top = targetOffset.top - relativeElementOffset.top - elementDimensions.height;\n origin = 'bottom';\n\n if (targetOffset.top + top < 0) {\n top = -1 * targetOffset.top;\n }\n } else {\n top = targetHeight + targetOffset.top - relativeElementOffset.top;\n origin = 'top';\n }\n\n const horizontalOverflow = targetOffset.left + elementDimensions.width - viewport.width;\n const targetLeftOffsetInSpaceOfRelativeElement = targetOffset.left - relativeElementOffset.left;\n\n if (elementDimensions.width > viewport.width) {\n // element wider then viewport and cannot fit on screen (align at left side of viewport)\n left = (targetOffset.left - relativeElementOffset.left) * -1;\n } else if (horizontalOverflow > 0) {\n // element wider then viewport but can be fit on screen (align at right side of viewport)\n left = targetLeftOffsetInSpaceOfRelativeElement - horizontalOverflow;\n } else {\n // element fits on screen (align with target)\n left = targetOffset.left - relativeElementOffset.left;\n }\n\n element.style.top = top + 'px';\n element.style.left = left + 'px';\n element.style.transformOrigin = origin;\n\n if (gutter) {\n const gutterValue = getCSSVariableByRegex(/-anchor-gutter$/)?.value;\n\n element.style.marginTop = origin === 'bottom' ? `calc(${gutterValue ?? '2px'} * -1)` : (gutterValue ?? '');\n }\n }\n\n public static absolutePosition(element: any, target: any, gutter: boolean = true): void {\n const elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);\n const elementOuterHeight = elementDimensions.height;\n const elementOuterWidth = elementDimensions.width;\n const targetOuterHeight = target.offsetHeight;\n const targetOuterWidth = target.offsetWidth;\n const targetOffset = target.getBoundingClientRect();\n const windowScrollTop = this.getWindowScrollTop();\n const windowScrollLeft = this.getWindowScrollLeft();\n const viewport = this.getViewport();\n let top: number, left: number;\n\n if (targetOffset.top + targetOuterHeight + elementOuterHeight > viewport.height) {\n top = targetOffset.top + windowScrollTop - elementOuterHeight;\n element.style.transformOrigin = 'bottom';\n\n if (top < 0) {\n top = windowScrollTop;\n }\n } else {\n top = targetOuterHeight + targetOffset.top + windowScrollTop;\n element.style.transformOrigin = 'top';\n }\n\n if (targetOffset.left + elementOuterWidth > viewport.width) left = Math.max(0, targetOffset.left + windowScrollLeft + targetOuterWidth - elementOuterWidth);\n else left = targetOffset.left + windowScrollLeft;\n\n element.style.top = top + 'px';\n element.style.left = left + 'px';\n\n if (gutter) {\n element.style.marginTop = origin === 'bottom' ? 'calc(var(--p-anchor-gutter) * -1)' : 'calc(var(--p-anchor-gutter))';\n }\n }\n\n static getParents(element: any, parents: any = []): any {\n const parent = element['parentNode'] instanceof ShadowRoot ? element['parentNode'].host : element['parentNode'];\n\n return parent == null ? parents : this.getParents(parent, parents.concat([parent]));\n }\n\n static getScrollableParents(element: any) {\n let scrollableParents: any[] = [];\n\n if (element) {\n let parents = this.getParents(element);\n const overflowRegex = /(auto|scroll)/;\n\n const overflowCheck = (node: any) => {\n let styleDeclaration = window['getComputedStyle'](node, null);\n\n return overflowRegex.test(styleDeclaration.getPropertyValue('overflow')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowX')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowY'));\n };\n\n for (let parent of parents) {\n let scrollSelectors = parent.nodeType === 1 && parent.dataset['scrollselectors'];\n\n if (scrollSelectors) {\n let selectors = scrollSelectors.split(',');\n\n for (let selector of selectors) {\n let el = this.findSingle(parent, selector);\n\n if (el && overflowCheck(el)) {\n scrollableParents.push(el);\n }\n }\n }\n\n if (parent.nodeType !== 9 && overflowCheck(parent)) {\n scrollableParents.push(parent);\n }\n }\n }\n\n return scrollableParents;\n }\n\n public static getHiddenElementOuterHeight(element: any): number {\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n let elementHeight = element.offsetHeight;\n\n element.style.display = 'none';\n element.style.visibility = 'visible';\n\n return elementHeight;\n }\n\n public static getHiddenElementOuterWidth(element: any): number {\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n let elementWidth = element.offsetWidth;\n\n element.style.display = 'none';\n element.style.visibility = 'visible';\n\n return elementWidth;\n }\n\n public static getHiddenElementDimensions(element: any): any {\n let dimensions: any = {};\n\n element.style.visibility = 'hidden';\n element.style.display = 'block';\n dimensions.width = element.offsetWidth;\n dimensions.height = element.offsetHeight;\n element.style.display = 'none';\n element.style.visibility = 'visible';\n\n return dimensions;\n }\n\n public static scrollInView(container, item) {\n let borderTopValue: string = getComputedStyle(container).getPropertyValue('borderTopWidth');\n let borderTop: number = borderTopValue ? parseFloat(borderTopValue) : 0;\n let paddingTopValue: string = getComputedStyle(container).getPropertyValue('paddingTop');\n let paddingTop: number = paddingTopValue ? parseFloat(paddingTopValue) : 0;\n let containerRect = container.getBoundingClientRect();\n let itemRect = item.getBoundingClientRect();\n let offset = itemRect.top + document.body.scrollTop - (containerRect.top + document.body.scrollTop) - borderTop - paddingTop;\n let scroll = container.scrollTop;\n let elementHeight = container.clientHeight;\n let itemHeight = this.getOuterHeight(item);\n\n if (offset < 0) {\n container.scrollTop = scroll + offset;\n } else if (offset + itemHeight > elementHeight) {\n container.scrollTop = scroll + offset - elementHeight + itemHeight;\n }\n }\n\n public static fadeIn(element, duration: number): void {\n element.style.opacity = 0;\n\n let last = +new Date();\n let opacity = 0;\n\n let tick = function () {\n opacity = +element.style.opacity.replace(',', '.') + (new Date().getTime() - last) / duration;\n element.style.opacity = opacity;\n last = +new Date();\n\n if (+opacity < 1) {\n if (window.requestAnimationFrame) window.requestAnimationFrame(tick);\n else setTimeout(tick, 16);\n }\n };\n\n tick();\n }\n\n public static fadeOut(element, ms) {\n let opacity = 1,\n interval = 50,\n duration = ms,\n gap = interval / duration;\n\n let fading = setInterval(() => {\n opacity = opacity - gap;\n\n if (opacity <= 0) {\n opacity = 0;\n clearInterval(fading);\n }\n\n element.style.opacity = opacity;\n }, interval);\n }\n\n public static getWindowScrollTop(): number {\n let doc = document.documentElement;\n\n return (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);\n }\n\n public static getWindowScrollLeft(): number {\n let doc = document.documentElement;\n\n return (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);\n }\n\n public static matches(element, selector: string): boolean {\n let p = Element.prototype;\n\n let f =\n p['matches'] ||\n p.webkitMatchesSelector ||\n p['mozMatchesSelector'] ||\n p['msMatchesSelector'] ||\n function (s) {\n return [].indexOf.call(document.querySelectorAll(s), this) !== -1;\n };\n\n return f.call(element, selector);\n }\n\n public static getOuterWidth(el, margin?) {\n let width = el.offsetWidth;\n\n if (margin) {\n let style = getComputedStyle(el);\n\n width += parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n }\n\n return width;\n }\n\n public static getHorizontalPadding(el) {\n let style = getComputedStyle(el);\n\n return parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n }\n\n public static getHorizontalMargin(el) {\n let style = getComputedStyle(el);\n\n return parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n }\n\n public static innerWidth(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n\n width += parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n\n return width;\n }\n\n public static width(el) {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);\n\n return width;\n }\n\n public static getInnerHeight(el) {\n let height = el.offsetHeight;\n let style = getComputedStyle(el);\n\n height += parseFloat(style.paddingTop) + parseFloat(style.paddingBottom);\n\n return height;\n }\n\n public static getOuterHeight(el, margin?) {\n let height = el.offsetHeight;\n\n if (margin) {\n let style = getComputedStyle(el);\n\n height += parseFloat(style.marginTop) + parseFloat(style.marginBottom);\n }\n\n return height;\n }\n\n public static getHeight(el): number {\n let height = el.offsetHeight;\n let style = getComputedStyle(el);\n\n height -= parseFloat(style.paddingTop) + parseFloat(style.paddingBottom) + parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth);\n\n return height;\n }\n\n public static getWidth(el): number {\n let width = el.offsetWidth;\n let style = getComputedStyle(el);\n\n width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight) + parseFloat(style.borderLeftWidth) + parseFloat(style.borderRightWidth);\n\n return width;\n }\n\n public static getViewport(): any {\n let win = window,\n d = document,\n e = d.documentElement,\n g = d.getElementsByTagName('body')[0],\n w = win.innerWidth || e.clientWidth || g.clientWidth,\n h = win.innerHeight || e.clientHeight || g.clientHeight;\n\n return { width: w, height: h };\n }\n\n public static getOffset(el) {\n let rect = el.getBoundingClientRect();\n\n return {\n top: rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0),\n left: rect.left + (window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0)\n };\n }\n\n public static replaceElementWith(element: any, replacementElement: any): any {\n let parentNode = element.parentNode;\n\n if (!parentNode) throw `Can't replace element`;\n\n return parentNode.replaceChild(replacementElement, element);\n }\n\n public static getUserAgent(): string | undefined {\n if (navigator && this.isClient()) {\n return navigator.userAgent;\n }\n }\n\n public static isIE() {\n let ua = window.navigator.userAgent;\n\n let msie = ua.indexOf('MSIE ');\n\n if (msie > 0) {\n // IE 10 or older => return version number\n return true;\n }\n\n let trident = ua.indexOf('Trident/');\n\n if (trident > 0) {\n // IE 11 => return version number\n return true;\n }\n\n let edge = ua.indexOf('Edge/');\n\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return true;\n }\n\n // other browser\n return false;\n }\n\n public static isIOS() {\n return /iPad|iPhone|iPod/.test(navigator.userAgent) && !window['MSStream'];\n }\n\n public static isAndroid() {\n return /(android)/i.test(navigator.userAgent);\n }\n\n public static isTouchDevice() {\n return 'ontouchstart' in window || navigator.maxTouchPoints > 0;\n }\n\n public static appendChild(element: any, target: any) {\n if (this.isElement(target)) target.appendChild(element);\n else if (target && target.el && target.el.nativeElement) target.el.nativeElement.appendChild(element);\n else throw 'Cannot append ' + target + ' to ' + element;\n }\n\n public static removeChild(element: any, target: any) {\n if (this.isElement(target)) target.removeChild(element);\n else if (target.el && target.el.nativeElement) target.el.nativeElement.removeChild(element);\n else throw 'Cannot remove ' + element + ' from ' + target;\n }\n\n public static removeElement(element: Element) {\n if (!('remove' in Element.prototype)) element.parentNode?.removeChild(element);\n else element.remove();\n }\n\n public static isElement(obj: any) {\n return typeof HTMLElement === 'object' ? obj instanceof HTMLElement : obj && typeof obj === 'object' && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === 'string';\n }\n\n public static calculateScrollbarWidth(el?: HTMLElement): number {\n if (el) {\n let style = getComputedStyle(el);\n\n return el.offsetWidth - el.clientWidth - parseFloat(style.borderLeftWidth) - parseFloat(style.borderRightWidth);\n } else {\n if (this.calculatedScrollbarWidth !== null) return this.calculatedScrollbarWidth;\n\n let scrollDiv = document.createElement('div');\n\n scrollDiv.className = 'p-scrollbar-measure';\n document.body.appendChild(scrollDiv);\n\n let scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n\n document.body.removeChild(scrollDiv);\n\n this.calculatedScrollbarWidth = scrollbarWidth;\n\n return scrollbarWidth;\n }\n }\n\n public static calculateScrollbarHeight(): number {\n if (this.calculatedScrollbarHeight !== null) return this.calculatedScrollbarHeight;\n\n let scrollDiv = document.createElement('div');\n\n scrollDiv.className = 'p-scrollbar-measure';\n document.body.appendChild(scrollDiv);\n\n let scrollbarHeight = scrollDiv.offsetHeight - scrollDiv.clientHeight;\n\n document.body.removeChild(scrollDiv);\n\n this.calculatedScrollbarWidth = scrollbarHeight;\n\n return scrollbarHeight;\n }\n\n public static invokeElementMethod(element: any, methodName: string, args?: any[]): void {\n (element as any)[methodName].apply(element, args);\n }\n\n public static clearSelection(): void {\n if (window.getSelection && window.getSelection()) {\n if (window.getSelection()?.empty) {\n window.getSelection()?.empty();\n } else if (window.getSelection()?.removeAllRanges && (window.getSelection()?.rangeCount || 0) > 0 && (window.getSelection()?.getRangeAt(0)?.getClientRects()?.length || 0) > 0) {\n window.getSelection()?.removeAllRanges();\n }\n } else if (document['selection'] && document['selection'].empty) {\n try {\n document['selection'].empty();\n } catch {\n //ignore IE bug\n }\n }\n }\n\n public static getBrowser() {\n if (!this.browser) {\n let matched = this.resolveUserAgent();\n\n this.browser = {};\n\n if (matched.browser) {\n this.browser[matched.browser] = true;\n this.browser['version'] = matched.version;\n }\n\n if (this.browser['chrome']) {\n this.browser['webkit'] = true;\n } else if (this.browser['webkit']) {\n this.browser['safari'] = true;\n }\n }\n\n return this.browser;\n }\n\n public static resolveUserAgent() {\n let ua = navigator.userAgent.toLowerCase();\n let match = /(chrome)[ /]([\\w.]+)/.exec(ua) || /(webkit)[ /]([\\w.]+)/.exec(ua) || /(opera)(?:.*version|)[ /]([\\w.]+)/.exec(ua) || /(msie) ([\\w.]+)/.exec(ua) || (ua.indexOf('compatible') < 0 && /(mozilla)(?:.*? rv:([\\w.]+)|)/.exec(ua)) || [];\n\n return {\n browser: match[1] || '',\n version: match[2] || '0'\n };\n }\n\n public static isInteger(value): boolean {\n if (Number.isInteger) {\n return Number.isInteger(value);\n } else {\n return typeof value === 'number' && isFinite(value) && Math.floor(value) === value;\n }\n }\n\n public static isHidden(element: HTMLElement): boolean {\n return !element || element.offsetParent === null;\n }\n\n public static isVisible(element: HTMLElement) {\n return element && element.offsetParent != null;\n }\n\n public static isExist(element: HTMLElement) {\n return element !== null && typeof element !== 'undefined' && element.nodeName && element.parentNode;\n }\n\n public static focus(element: HTMLElement, options?: FocusOptions): void {\n if (element && document.activeElement !== element) {\n element.focus(options);\n }\n }\n\n public static getFocusableSelectorString(selector = ''): string {\n return `button:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [href][clientHeight][clientWidth]:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n input:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n select:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n textarea:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [tabIndex]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [contenteditable]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n .p-inputtext:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n .p-button:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector}`;\n }\n\n public static getFocusableElements(element, selector = ''): any[] {\n let focusableElements = this.find(element, this.getFocusableSelectorString(selector));\n\n let visibleFocusableElements: any[] = [];\n\n for (let focusableElement of focusableElements) {\n const computedStyle = getComputedStyle(focusableElement);\n\n if (this.isVisible(focusableElement) && computedStyle.display != 'none' && computedStyle.visibility != 'hidden') visibleFocusableElements.push(focusableElement);\n }\n\n return visibleFocusableElements;\n }\n\n public static getFocusableElement(element, selector = ''): any | null {\n let focusableElement = this.findSingle(element, this.getFocusableSelectorString(selector));\n\n if (focusableElement) {\n const computedStyle = getComputedStyle(focusableElement);\n\n if (this.isVisible(focusableElement) && computedStyle.display != 'none' && computedStyle.visibility != 'hidden') return focusableElement;\n }\n\n return null;\n }\n\n public static getFirstFocusableElement(element, selector = '') {\n const focusableElements = this.getFocusableElements(element, selector);\n\n return focusableElements.length > 0 ? focusableElements[0] : null;\n }\n\n public static getLastFocusableElement(element, selector) {\n const focusableElements = this.getFocusableElements(element, selector);\n\n return focusableElements.length > 0 ? focusableElements[focusableElements.length - 1] : null;\n }\n\n public static getNextFocusableElement(element: HTMLElement, reverse = false) {\n const focusableElements = DomHandler.getFocusableElements(element);\n let index = 0;\n\n if (focusableElements && focusableElements.length > 0) {\n const focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n\n if (reverse) {\n if (focusedIndex == -1 || focusedIndex === 0) {\n index = focusableElements.length - 1;\n } else {\n index = focusedIndex - 1;\n }\n } else if (focusedIndex != -1 && focusedIndex !== focusableElements.length - 1) {\n index = focusedIndex + 1;\n }\n }\n\n return focusableElements[index];\n }\n\n static generateZIndex() {\n this.zindex = this.zindex || 999;\n\n return ++this.zindex;\n }\n\n public static getSelection() {\n if (window.getSelection) return window.getSelection()?.toString();\n else if (document.getSelection) return document.getSelection()?.toString();\n else if (document['selection']) return document['selection'].createRange().text;\n\n return null;\n }\n\n public static getTargetElement(target: any, el?: HTMLElement) {\n if (!target) return null;\n\n switch (target) {\n case 'document':\n return document;\n case 'window':\n return window;\n case '@next':\n return el?.nextElementSibling;\n case '@prev':\n return el?.previousElementSibling;\n case '@parent':\n return el?.parentElement;\n case '@grandparent':\n return el?.parentElement?.parentElement;\n\n default: {\n const type = typeof target;\n\n if (type === 'string') {\n return document.querySelector(target);\n } else if (type === 'object' && Object.prototype.hasOwnProperty.call(target, 'nativeElement')) {\n return this.isExist(target.nativeElement) ? target.nativeElement : undefined;\n }\n\n const isFunction = (obj: any) => !!(obj && obj.constructor && obj.call && obj.apply);\n const element = isFunction(target) ? target() : target;\n\n return (element && element.nodeType === 9) || this.isExist(element) ? element : null;\n }\n }\n }\n\n public static isClient() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n }\n\n public static getAttribute(element, name) {\n if (element) {\n const value = element.getAttribute(name);\n\n if (!isNaN(value)) {\n return +value;\n }\n\n if (value === 'true' || value === 'false') {\n return value === 'true';\n }\n\n return value;\n }\n\n return undefined;\n }\n\n public static calculateBodyScrollbarWidth() {\n return window.innerWidth - document.documentElement.offsetWidth;\n }\n\n public static blockBodyScroll(className = 'p-overflow-hidden') {\n document.body.style.setProperty('--px-scrollbar-width', this.calculateBodyScrollbarWidth() + 'px');\n this.addClass(document.body, className);\n }\n\n public static unblockBodyScroll(className = 'p-overflow-hidden') {\n document.body.style.removeProperty('--px-scrollbar-width');\n this.removeClass(document.body, className);\n }\n\n public static createElement(type, attributes = {}, ...children) {\n if (type) {\n const element = document.createElement(type);\n\n this.setAttributes(element, attributes);\n element.append(...children);\n\n return element;\n }\n\n return undefined;\n }\n\n public static setAttribute(element, attribute = '', value) {\n if (this.isElement(element) && value !== null && value !== undefined) {\n element.setAttribute(attribute, value);\n }\n }\n\n public static setAttributes(element, attributes = {}) {\n if (this.isElement(element)) {\n const computedStyles = (rule, value) => {\n const styles = element?.$attrs?.[rule] ? [element?.$attrs?.[rule]] : [];\n\n return [value].flat().reduce((cv, v) => {\n if (v !== null && v !== undefined) {\n const type = typeof v;\n\n if (type === 'string' || type === 'number') {\n cv.push(v);\n } else if (type === 'object') {\n const _cv = Array.isArray(v)\n ? computedStyles(rule, v)\n : Object.entries(v).map(([_k, _v]) => (rule === 'style' && (!!_v || _v === 0) ? `${_k.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()}:${_v}` : _v ? _k : undefined));\n\n cv = _cv.length ? cv.concat(_cv.filter((c) => !!c)) : cv;\n }\n }\n\n return cv;\n }, styles);\n };\n\n Object.entries(attributes).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n const matchedEvent = key.match(/^on(.+)/);\n\n if (matchedEvent) {\n element.addEventListener(matchedEvent[1].toLowerCase(), value);\n } else if (key === 'pBind') {\n this.setAttributes(element, value);\n } else {\n value = key === 'class' ? [...new Set(computedStyles('class', value))].join(' ').trim() : key === 'style' ? computedStyles('style', value).join(';').trim() : value;\n\n if ((element.$attrs = element.$attrs || {})) {\n element.$attrs[key] = value;\n }\n\n element.setAttribute(key, value);\n }\n }\n });\n }\n }\n\n public static isFocusableElement(element, selector = '') {\n return this.isElement(element)\n ? element.matches(`button:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [href][clientHeight][clientWidth]:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n input:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n select:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n textarea:not([tabindex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [tabIndex]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector},\n [contenteditable]:not([tabIndex = \"-1\"]):not([disabled]):not([style*=\"display:none\"]):not([hidden])${selector}`)\n : false;\n }\n}\n\nimport { $dt } from '@primeuix/styled';\nimport * as utils from '@primeuix/utils';\n\n// @todo: update this when we remove the old domhandler\nexport function blockBodyScroll() {\n utils.blockBodyScroll({ variableName: $dt('scrollbar.width').name });\n}\n\nexport function unblockBodyScroll() {\n utils.unblockBodyScroll({ variableName: $dt('scrollbar.width').name });\n}\n","import { DomHandler } from './domhandler';\n\nexport class ConnectedOverlayScrollHandler {\n element: any;\n\n listener: any;\n\n scrollableParents: any;\n\n constructor(element: any, listener: any = () => {}) {\n this.element = element;\n this.listener = listener;\n }\n\n bindScrollListener() {\n this.scrollableParents = DomHandler.getScrollableParents(this.element);\n\n for (let i = 0; i < this.scrollableParents.length; i++) {\n this.scrollableParents[i].addEventListener('scroll', this.listener);\n }\n }\n\n unbindScrollListener() {\n if (this.scrollableParents) {\n for (let i = 0; i < this.scrollableParents.length; i++) {\n this.scrollableParents[i].removeEventListener('scroll', this.listener);\n }\n }\n }\n\n destroy() {\n this.unbindScrollListener();\n this.element = null;\n this.listener = null;\n this.scrollableParents = null;\n }\n}\n"],"mappings":"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"}