primeng 22.1.2 → 22.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (406) hide show
  1. package/fesm2022/primeng-accordion.mjs +23 -24
  2. package/fesm2022/primeng-animateonscroll.mjs +9 -10
  3. package/fesm2022/primeng-api.mjs +31 -32
  4. package/fesm2022/primeng-autocomplete.mjs +17 -18
  5. package/fesm2022/primeng-autofocus.mjs +7 -8
  6. package/fesm2022/primeng-avatar.mjs +10 -11
  7. package/fesm2022/primeng-avatargroup.mjs +10 -11
  8. package/fesm2022/primeng-badge.mjs +10 -11
  9. package/fesm2022/primeng-base.mjs +41 -31
  10. package/fesm2022/primeng-basecomponent.mjs +108 -44
  11. package/fesm2022/primeng-baseeditableholder.mjs +3 -4
  12. package/fesm2022/primeng-baseinput.mjs +3 -4
  13. package/fesm2022/primeng-basemodelholder.mjs +3 -4
  14. package/fesm2022/primeng-bind.mjs +10 -9
  15. package/fesm2022/primeng-blockui.mjs +23 -24
  16. package/fesm2022/primeng-breadcrumb.mjs +10 -11
  17. package/fesm2022/primeng-button.mjs +33 -39
  18. package/fesm2022/primeng-buttongroup.mjs +12 -13
  19. package/fesm2022/primeng-card.mjs +10 -11
  20. package/fesm2022/primeng-carousel.mjs +47 -46
  21. package/fesm2022/primeng-cascadeselect.mjs +23 -24
  22. package/fesm2022/primeng-chart.mjs +10 -11
  23. package/fesm2022/primeng-checkbox.mjs +10 -11
  24. package/fesm2022/primeng-chip.mjs +10 -11
  25. package/fesm2022/primeng-classnames.mjs +7 -8
  26. package/fesm2022/primeng-colorpicker.mjs +10 -11
  27. package/fesm2022/primeng-commandmenu.mjs +12 -13
  28. package/fesm2022/primeng-compare.mjs +19 -20
  29. package/fesm2022/primeng-config.mjs +39 -18
  30. package/fesm2022/primeng-confirmdialog.mjs +29 -21
  31. package/fesm2022/primeng-confirmpopup.mjs +22 -21
  32. package/fesm2022/primeng-contextmenu.mjs +29 -28
  33. package/fesm2022/primeng-dataview.mjs +10 -11
  34. package/fesm2022/primeng-datepicker.mjs +110 -87
  35. package/fesm2022/primeng-dialog.mjs +46 -34
  36. package/fesm2022/primeng-divider.mjs +10 -11
  37. package/fesm2022/primeng-dock.mjs +12 -13
  38. package/fesm2022/primeng-dom.mjs +18 -6
  39. package/fesm2022/primeng-dragdrop.mjs +15 -14
  40. package/fesm2022/primeng-drawer.mjs +20 -22
  41. package/fesm2022/primeng-dynamicdialog.mjs +23 -22
  42. package/fesm2022/primeng-editor.mjs +10 -11
  43. package/fesm2022/primeng-fieldset.mjs +13 -15
  44. package/fesm2022/primeng-fileupload.mjs +24 -25
  45. package/fesm2022/primeng-floatlabel.mjs +10 -11
  46. package/fesm2022/primeng-fluid.mjs +10 -11
  47. package/fesm2022/primeng-focustrap.mjs +11 -12
  48. package/fesm2022/primeng-galleria.mjs +40 -37
  49. package/fesm2022/primeng-gallery.mjs +73 -74
  50. package/fesm2022/primeng-iconfield.mjs +10 -11
  51. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -4
  52. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -4
  53. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -4
  54. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -4
  55. package/fesm2022/primeng-icons-angledown.mjs +3 -4
  56. package/fesm2022/primeng-icons-angleleft.mjs +3 -4
  57. package/fesm2022/primeng-icons-angleright.mjs +3 -4
  58. package/fesm2022/primeng-icons-angleup.mjs +3 -4
  59. package/fesm2022/primeng-icons-arrowdown.mjs +4 -6
  60. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -4
  61. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -4
  62. package/fesm2022/primeng-icons-arrowleft.mjs +4 -6
  63. package/fesm2022/primeng-icons-arrowright.mjs +3 -4
  64. package/fesm2022/primeng-icons-arrowup.mjs +4 -6
  65. package/fesm2022/primeng-icons-ban.mjs +4 -6
  66. package/fesm2022/primeng-icons-bars.mjs +3 -4
  67. package/fesm2022/primeng-icons-baseicon.mjs +6 -7
  68. package/fesm2022/primeng-icons-blank.mjs +3 -4
  69. package/fesm2022/primeng-icons-calendar.mjs +3 -4
  70. package/fesm2022/primeng-icons-caretleft.mjs +3 -4
  71. package/fesm2022/primeng-icons-caretright.mjs +3 -4
  72. package/fesm2022/primeng-icons-check.mjs +3 -4
  73. package/fesm2022/primeng-icons-chevrondown.mjs +3 -4
  74. package/fesm2022/primeng-icons-chevronleft.mjs +3 -4
  75. package/fesm2022/primeng-icons-chevronright.mjs +3 -4
  76. package/fesm2022/primeng-icons-chevronup.mjs +3 -4
  77. package/fesm2022/primeng-icons-exclamationtriangle.mjs +4 -6
  78. package/fesm2022/primeng-icons-eye.mjs +3 -4
  79. package/fesm2022/primeng-icons-eyeslash.mjs +4 -6
  80. package/fesm2022/primeng-icons-filter.mjs +4 -6
  81. package/fesm2022/primeng-icons-filterfill.mjs +3 -4
  82. package/fesm2022/primeng-icons-filterslash.mjs +4 -6
  83. package/fesm2022/primeng-icons-home.mjs +4 -6
  84. package/fesm2022/primeng-icons-infocircle.mjs +4 -6
  85. package/fesm2022/primeng-icons-minus.mjs +3 -4
  86. package/fesm2022/primeng-icons-pencil.mjs +4 -6
  87. package/fesm2022/primeng-icons-plus.mjs +4 -6
  88. package/fesm2022/primeng-icons-refresh.mjs +4 -6
  89. package/fesm2022/primeng-icons-search.mjs +4 -6
  90. package/fesm2022/primeng-icons-searchminus.mjs +4 -6
  91. package/fesm2022/primeng-icons-searchplus.mjs +4 -6
  92. package/fesm2022/primeng-icons-sortalt.mjs +4 -6
  93. package/fesm2022/primeng-icons-sortamountdown.mjs +4 -6
  94. package/fesm2022/primeng-icons-sortamountupalt.mjs +4 -6
  95. package/fesm2022/primeng-icons-spinner.mjs +4 -6
  96. package/fesm2022/primeng-icons-star.mjs +4 -6
  97. package/fesm2022/primeng-icons-starfill.mjs +4 -6
  98. package/fesm2022/primeng-icons-thlarge.mjs +4 -6
  99. package/fesm2022/primeng-icons-times.mjs +3 -4
  100. package/fesm2022/primeng-icons-timescircle.mjs +4 -6
  101. package/fesm2022/primeng-icons-trash.mjs +4 -6
  102. package/fesm2022/primeng-icons-undo.mjs +4 -6
  103. package/fesm2022/primeng-icons-upload.mjs +4 -6
  104. package/fesm2022/primeng-icons-windowmaximize.mjs +4 -6
  105. package/fesm2022/primeng-icons-windowminimize.mjs +4 -6
  106. package/fesm2022/primeng-iftalabel.mjs +10 -11
  107. package/fesm2022/primeng-image.mjs +34 -20
  108. package/fesm2022/primeng-imagecompare.mjs +10 -11
  109. package/fesm2022/primeng-inplace.mjs +16 -17
  110. package/fesm2022/primeng-inputcolor.mjs +46 -51
  111. package/fesm2022/primeng-inputgroup.mjs +10 -11
  112. package/fesm2022/primeng-inputgroupaddon.mjs +10 -11
  113. package/fesm2022/primeng-inputicon.mjs +10 -11
  114. package/fesm2022/primeng-inputmask.mjs +15 -16
  115. package/fesm2022/primeng-inputnumber.mjs +10 -11
  116. package/fesm2022/primeng-inputotp.mjs +10 -11
  117. package/fesm2022/primeng-inputpassword.mjs +10 -11
  118. package/fesm2022/primeng-inputtags.mjs +12 -13
  119. package/fesm2022/primeng-inputtext.mjs +10 -11
  120. package/fesm2022/primeng-isolation.mjs +280 -0
  121. package/fesm2022/primeng-keyfilter.mjs +7 -8
  122. package/fesm2022/primeng-knob.mjs +13 -15
  123. package/fesm2022/primeng-label.mjs +10 -11
  124. package/fesm2022/primeng-license.mjs +0 -1
  125. package/fesm2022/primeng-listbox.mjs +32 -29
  126. package/fesm2022/primeng-megamenu.mjs +30 -34
  127. package/fesm2022/primeng-menu.mjs +36 -43
  128. package/fesm2022/primeng-menubar.mjs +26 -24
  129. package/fesm2022/primeng-message.mjs +16 -19
  130. package/fesm2022/primeng-metergroup.mjs +13 -14
  131. package/fesm2022/primeng-motion.mjs +13 -14
  132. package/fesm2022/primeng-multiselect.mjs +34 -27
  133. package/fesm2022/primeng-orderlist.mjs +31 -23
  134. package/fesm2022/primeng-organizationchart.mjs +13 -14
  135. package/fesm2022/primeng-overlay.mjs +24 -22
  136. package/fesm2022/primeng-overlaybadge.mjs +10 -11
  137. package/fesm2022/primeng-paginator.mjs +13 -11
  138. package/fesm2022/primeng-panel.mjs +13 -15
  139. package/fesm2022/primeng-panelmenu.mjs +22 -23
  140. package/fesm2022/primeng-passthrough.mjs +0 -1
  141. package/fesm2022/primeng-password.mjs +29 -30
  142. package/fesm2022/primeng-picklist.mjs +28 -20
  143. package/fesm2022/primeng-popover.mjs +21 -21
  144. package/fesm2022/primeng-progressbar.mjs +10 -11
  145. package/fesm2022/primeng-progressspinner.mjs +10 -11
  146. package/fesm2022/primeng-radiobutton.mjs +13 -14
  147. package/fesm2022/primeng-rating.mjs +14 -16
  148. package/fesm2022/primeng-ripple.mjs +24 -23
  149. package/fesm2022/primeng-scrollarea.mjs +25 -26
  150. package/fesm2022/primeng-scroller.mjs +16 -14
  151. package/fesm2022/primeng-scrollpanel.mjs +23 -24
  152. package/fesm2022/primeng-scrolltop.mjs +12 -13
  153. package/fesm2022/primeng-select.mjs +243 -146
  154. package/fesm2022/primeng-selectbutton.mjs +10 -11
  155. package/fesm2022/primeng-sidebar.mjs +82 -84
  156. package/fesm2022/primeng-skeleton.mjs +10 -11
  157. package/fesm2022/primeng-slider.mjs +10 -11
  158. package/fesm2022/primeng-speeddial.mjs +20 -19
  159. package/fesm2022/primeng-splitbutton.mjs +11 -13
  160. package/fesm2022/primeng-splitter.mjs +13 -14
  161. package/fesm2022/primeng-stepper.mjs +47 -48
  162. package/fesm2022/primeng-steps.mjs +10 -11
  163. package/fesm2022/primeng-styleclass.mjs +10 -9
  164. package/fesm2022/primeng-table.mjs +183 -162
  165. package/fesm2022/primeng-tabs.mjs +36 -37
  166. package/fesm2022/primeng-tag.mjs +10 -11
  167. package/fesm2022/primeng-terminal.mjs +13 -14
  168. package/fesm2022/primeng-textarea.mjs +10 -11
  169. package/fesm2022/primeng-tieredmenu.mjs +26 -26
  170. package/fesm2022/primeng-timeline.mjs +10 -11
  171. package/fesm2022/primeng-toast.mjs +48 -33
  172. package/fesm2022/primeng-togglebutton.mjs +10 -11
  173. package/fesm2022/primeng-toggleswitch.mjs +10 -11
  174. package/fesm2022/primeng-toolbar.mjs +10 -11
  175. package/fesm2022/primeng-tooltip.mjs +24 -25
  176. package/fesm2022/primeng-tree.mjs +19 -20
  177. package/fesm2022/primeng-treeselect.mjs +18 -19
  178. package/fesm2022/primeng-treetable.mjs +93 -88
  179. package/fesm2022/primeng-useid.mjs +38 -0
  180. package/fesm2022/primeng-usestyle.mjs +265 -44
  181. package/fesm2022/primeng-utils.mjs +33 -2
  182. package/fesm2022/primeng.mjs +0 -1
  183. package/package.json +12 -4
  184. package/types/primeng-accordion.d.ts +0 -9
  185. package/types/primeng-animateonscroll.d.ts +2 -1
  186. package/types/primeng-api.d.ts +3 -1
  187. package/types/primeng-autocomplete.d.ts +1 -3
  188. package/types/primeng-base.d.ts +3 -1
  189. package/types/primeng-basecomponent.d.ts +34 -16
  190. package/types/primeng-button.d.ts +9 -12
  191. package/types/primeng-carousel.d.ts +3 -25
  192. package/types/primeng-compare.d.ts +0 -9
  193. package/types/primeng-config.d.ts +27 -2
  194. package/types/primeng-confirmdialog.d.ts +1 -0
  195. package/types/primeng-confirmpopup.d.ts +1 -3
  196. package/types/primeng-datepicker.d.ts +2 -12
  197. package/types/primeng-dialog.d.ts +1 -0
  198. package/types/primeng-dom.d.ts +6 -11
  199. package/types/primeng-dragdrop.d.ts +1 -0
  200. package/types/primeng-dynamicdialog.d.ts +3 -1
  201. package/types/primeng-focustrap.d.ts +1 -1
  202. package/types/primeng-gallery.d.ts +0 -63
  203. package/types/primeng-inputcolor.d.ts +0 -33
  204. package/types/primeng-isolation.d.ts +21 -0
  205. package/types/primeng-listbox.d.ts +1 -0
  206. package/types/primeng-megamenu.d.ts +5 -1
  207. package/types/primeng-menu.d.ts +6 -7
  208. package/types/primeng-motion.d.ts +2 -7
  209. package/types/primeng-multiselect.d.ts +3 -1
  210. package/types/primeng-orderlist.d.ts +1 -0
  211. package/types/primeng-picklist.d.ts +1 -0
  212. package/types/primeng-scrollarea.d.ts +0 -15
  213. package/types/primeng-scroller.d.ts +2 -1
  214. package/types/primeng-select.d.ts +54 -13
  215. package/types/primeng-sidebar.d.ts +0 -69
  216. package/types/primeng-splitter.d.ts +0 -3
  217. package/types/primeng-stepper.d.ts +2 -19
  218. package/types/primeng-table.d.ts +2 -75
  219. package/types/primeng-tabs.d.ts +2 -16
  220. package/types/primeng-toast.d.ts +4 -2
  221. package/types/primeng-treetable.d.ts +4 -92
  222. package/types/primeng-types-listbox.d.ts +1 -1
  223. package/types/primeng-types-select.d.ts +4 -0
  224. package/types/primeng-useid.d.ts +15 -0
  225. package/types/primeng-usestyle.d.ts +87 -7
  226. package/types/primeng-utils.d.ts +42 -0
  227. package/fesm2022/primeng-accordion.mjs.map +0 -1
  228. package/fesm2022/primeng-animateonscroll.mjs.map +0 -1
  229. package/fesm2022/primeng-api.mjs.map +0 -1
  230. package/fesm2022/primeng-autocomplete.mjs.map +0 -1
  231. package/fesm2022/primeng-autofocus.mjs.map +0 -1
  232. package/fesm2022/primeng-avatar.mjs.map +0 -1
  233. package/fesm2022/primeng-avatargroup.mjs.map +0 -1
  234. package/fesm2022/primeng-badge.mjs.map +0 -1
  235. package/fesm2022/primeng-base.mjs.map +0 -1
  236. package/fesm2022/primeng-basecomponent.mjs.map +0 -1
  237. package/fesm2022/primeng-baseeditableholder.mjs.map +0 -1
  238. package/fesm2022/primeng-baseinput.mjs.map +0 -1
  239. package/fesm2022/primeng-basemodelholder.mjs.map +0 -1
  240. package/fesm2022/primeng-bind.mjs.map +0 -1
  241. package/fesm2022/primeng-blockui.mjs.map +0 -1
  242. package/fesm2022/primeng-breadcrumb.mjs.map +0 -1
  243. package/fesm2022/primeng-button.mjs.map +0 -1
  244. package/fesm2022/primeng-buttongroup.mjs.map +0 -1
  245. package/fesm2022/primeng-card.mjs.map +0 -1
  246. package/fesm2022/primeng-carousel.mjs.map +0 -1
  247. package/fesm2022/primeng-cascadeselect.mjs.map +0 -1
  248. package/fesm2022/primeng-chart.mjs.map +0 -1
  249. package/fesm2022/primeng-checkbox.mjs.map +0 -1
  250. package/fesm2022/primeng-chip.mjs.map +0 -1
  251. package/fesm2022/primeng-classnames.mjs.map +0 -1
  252. package/fesm2022/primeng-colorpicker.mjs.map +0 -1
  253. package/fesm2022/primeng-commandmenu.mjs.map +0 -1
  254. package/fesm2022/primeng-compare.mjs.map +0 -1
  255. package/fesm2022/primeng-config.mjs.map +0 -1
  256. package/fesm2022/primeng-confirmdialog.mjs.map +0 -1
  257. package/fesm2022/primeng-confirmpopup.mjs.map +0 -1
  258. package/fesm2022/primeng-contextmenu.mjs.map +0 -1
  259. package/fesm2022/primeng-dataview.mjs.map +0 -1
  260. package/fesm2022/primeng-datepicker.mjs.map +0 -1
  261. package/fesm2022/primeng-dialog.mjs.map +0 -1
  262. package/fesm2022/primeng-divider.mjs.map +0 -1
  263. package/fesm2022/primeng-dock.mjs.map +0 -1
  264. package/fesm2022/primeng-dom.mjs.map +0 -1
  265. package/fesm2022/primeng-dragdrop.mjs.map +0 -1
  266. package/fesm2022/primeng-drawer.mjs.map +0 -1
  267. package/fesm2022/primeng-dynamicdialog.mjs.map +0 -1
  268. package/fesm2022/primeng-editor.mjs.map +0 -1
  269. package/fesm2022/primeng-fieldset.mjs.map +0 -1
  270. package/fesm2022/primeng-fileupload.mjs.map +0 -1
  271. package/fesm2022/primeng-floatlabel.mjs.map +0 -1
  272. package/fesm2022/primeng-fluid.mjs.map +0 -1
  273. package/fesm2022/primeng-focustrap.mjs.map +0 -1
  274. package/fesm2022/primeng-galleria.mjs.map +0 -1
  275. package/fesm2022/primeng-gallery.mjs.map +0 -1
  276. package/fesm2022/primeng-iconfield.mjs.map +0 -1
  277. package/fesm2022/primeng-icons-angledoubledown.mjs.map +0 -1
  278. package/fesm2022/primeng-icons-angledoubleleft.mjs.map +0 -1
  279. package/fesm2022/primeng-icons-angledoubleright.mjs.map +0 -1
  280. package/fesm2022/primeng-icons-angledoubleup.mjs.map +0 -1
  281. package/fesm2022/primeng-icons-angledown.mjs.map +0 -1
  282. package/fesm2022/primeng-icons-angleleft.mjs.map +0 -1
  283. package/fesm2022/primeng-icons-angleright.mjs.map +0 -1
  284. package/fesm2022/primeng-icons-angleup.mjs.map +0 -1
  285. package/fesm2022/primeng-icons-arrowdown.mjs.map +0 -1
  286. package/fesm2022/primeng-icons-arrowdownleft.mjs.map +0 -1
  287. package/fesm2022/primeng-icons-arrowdownright.mjs.map +0 -1
  288. package/fesm2022/primeng-icons-arrowleft.mjs.map +0 -1
  289. package/fesm2022/primeng-icons-arrowright.mjs.map +0 -1
  290. package/fesm2022/primeng-icons-arrowup.mjs.map +0 -1
  291. package/fesm2022/primeng-icons-ban.mjs.map +0 -1
  292. package/fesm2022/primeng-icons-bars.mjs.map +0 -1
  293. package/fesm2022/primeng-icons-baseicon.mjs.map +0 -1
  294. package/fesm2022/primeng-icons-blank.mjs.map +0 -1
  295. package/fesm2022/primeng-icons-calendar.mjs.map +0 -1
  296. package/fesm2022/primeng-icons-caretleft.mjs.map +0 -1
  297. package/fesm2022/primeng-icons-caretright.mjs.map +0 -1
  298. package/fesm2022/primeng-icons-check.mjs.map +0 -1
  299. package/fesm2022/primeng-icons-chevrondown.mjs.map +0 -1
  300. package/fesm2022/primeng-icons-chevronleft.mjs.map +0 -1
  301. package/fesm2022/primeng-icons-chevronright.mjs.map +0 -1
  302. package/fesm2022/primeng-icons-chevronup.mjs.map +0 -1
  303. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +0 -1
  304. package/fesm2022/primeng-icons-eye.mjs.map +0 -1
  305. package/fesm2022/primeng-icons-eyeslash.mjs.map +0 -1
  306. package/fesm2022/primeng-icons-filter.mjs.map +0 -1
  307. package/fesm2022/primeng-icons-filterfill.mjs.map +0 -1
  308. package/fesm2022/primeng-icons-filterslash.mjs.map +0 -1
  309. package/fesm2022/primeng-icons-home.mjs.map +0 -1
  310. package/fesm2022/primeng-icons-infocircle.mjs.map +0 -1
  311. package/fesm2022/primeng-icons-minus.mjs.map +0 -1
  312. package/fesm2022/primeng-icons-pencil.mjs.map +0 -1
  313. package/fesm2022/primeng-icons-plus.mjs.map +0 -1
  314. package/fesm2022/primeng-icons-refresh.mjs.map +0 -1
  315. package/fesm2022/primeng-icons-search.mjs.map +0 -1
  316. package/fesm2022/primeng-icons-searchminus.mjs.map +0 -1
  317. package/fesm2022/primeng-icons-searchplus.mjs.map +0 -1
  318. package/fesm2022/primeng-icons-sortalt.mjs.map +0 -1
  319. package/fesm2022/primeng-icons-sortamountdown.mjs.map +0 -1
  320. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +0 -1
  321. package/fesm2022/primeng-icons-spinner.mjs.map +0 -1
  322. package/fesm2022/primeng-icons-star.mjs.map +0 -1
  323. package/fesm2022/primeng-icons-starfill.mjs.map +0 -1
  324. package/fesm2022/primeng-icons-thlarge.mjs.map +0 -1
  325. package/fesm2022/primeng-icons-times.mjs.map +0 -1
  326. package/fesm2022/primeng-icons-timescircle.mjs.map +0 -1
  327. package/fesm2022/primeng-icons-trash.mjs.map +0 -1
  328. package/fesm2022/primeng-icons-undo.mjs.map +0 -1
  329. package/fesm2022/primeng-icons-upload.mjs.map +0 -1
  330. package/fesm2022/primeng-icons-windowmaximize.mjs.map +0 -1
  331. package/fesm2022/primeng-icons-windowminimize.mjs.map +0 -1
  332. package/fesm2022/primeng-iftalabel.mjs.map +0 -1
  333. package/fesm2022/primeng-image.mjs.map +0 -1
  334. package/fesm2022/primeng-imagecompare.mjs.map +0 -1
  335. package/fesm2022/primeng-inplace.mjs.map +0 -1
  336. package/fesm2022/primeng-inputcolor.mjs.map +0 -1
  337. package/fesm2022/primeng-inputgroup.mjs.map +0 -1
  338. package/fesm2022/primeng-inputgroupaddon.mjs.map +0 -1
  339. package/fesm2022/primeng-inputicon.mjs.map +0 -1
  340. package/fesm2022/primeng-inputmask.mjs.map +0 -1
  341. package/fesm2022/primeng-inputnumber.mjs.map +0 -1
  342. package/fesm2022/primeng-inputotp.mjs.map +0 -1
  343. package/fesm2022/primeng-inputpassword.mjs.map +0 -1
  344. package/fesm2022/primeng-inputtags.mjs.map +0 -1
  345. package/fesm2022/primeng-inputtext.mjs.map +0 -1
  346. package/fesm2022/primeng-keyfilter.mjs.map +0 -1
  347. package/fesm2022/primeng-knob.mjs.map +0 -1
  348. package/fesm2022/primeng-label.mjs.map +0 -1
  349. package/fesm2022/primeng-license.mjs.map +0 -1
  350. package/fesm2022/primeng-listbox.mjs.map +0 -1
  351. package/fesm2022/primeng-megamenu.mjs.map +0 -1
  352. package/fesm2022/primeng-menu.mjs.map +0 -1
  353. package/fesm2022/primeng-menubar.mjs.map +0 -1
  354. package/fesm2022/primeng-message.mjs.map +0 -1
  355. package/fesm2022/primeng-metergroup.mjs.map +0 -1
  356. package/fesm2022/primeng-motion.mjs.map +0 -1
  357. package/fesm2022/primeng-multiselect.mjs.map +0 -1
  358. package/fesm2022/primeng-orderlist.mjs.map +0 -1
  359. package/fesm2022/primeng-organizationchart.mjs.map +0 -1
  360. package/fesm2022/primeng-overlay.mjs.map +0 -1
  361. package/fesm2022/primeng-overlaybadge.mjs.map +0 -1
  362. package/fesm2022/primeng-paginator.mjs.map +0 -1
  363. package/fesm2022/primeng-panel.mjs.map +0 -1
  364. package/fesm2022/primeng-panelmenu.mjs.map +0 -1
  365. package/fesm2022/primeng-passthrough.mjs.map +0 -1
  366. package/fesm2022/primeng-password.mjs.map +0 -1
  367. package/fesm2022/primeng-picklist.mjs.map +0 -1
  368. package/fesm2022/primeng-popover.mjs.map +0 -1
  369. package/fesm2022/primeng-progressbar.mjs.map +0 -1
  370. package/fesm2022/primeng-progressspinner.mjs.map +0 -1
  371. package/fesm2022/primeng-radiobutton.mjs.map +0 -1
  372. package/fesm2022/primeng-rating.mjs.map +0 -1
  373. package/fesm2022/primeng-ripple.mjs.map +0 -1
  374. package/fesm2022/primeng-scrollarea.mjs.map +0 -1
  375. package/fesm2022/primeng-scroller.mjs.map +0 -1
  376. package/fesm2022/primeng-scrollpanel.mjs.map +0 -1
  377. package/fesm2022/primeng-scrolltop.mjs.map +0 -1
  378. package/fesm2022/primeng-select.mjs.map +0 -1
  379. package/fesm2022/primeng-selectbutton.mjs.map +0 -1
  380. package/fesm2022/primeng-sidebar.mjs.map +0 -1
  381. package/fesm2022/primeng-skeleton.mjs.map +0 -1
  382. package/fesm2022/primeng-slider.mjs.map +0 -1
  383. package/fesm2022/primeng-speeddial.mjs.map +0 -1
  384. package/fesm2022/primeng-splitbutton.mjs.map +0 -1
  385. package/fesm2022/primeng-splitter.mjs.map +0 -1
  386. package/fesm2022/primeng-stepper.mjs.map +0 -1
  387. package/fesm2022/primeng-steps.mjs.map +0 -1
  388. package/fesm2022/primeng-styleclass.mjs.map +0 -1
  389. package/fesm2022/primeng-table.mjs.map +0 -1
  390. package/fesm2022/primeng-tabs.mjs.map +0 -1
  391. package/fesm2022/primeng-tag.mjs.map +0 -1
  392. package/fesm2022/primeng-terminal.mjs.map +0 -1
  393. package/fesm2022/primeng-textarea.mjs.map +0 -1
  394. package/fesm2022/primeng-tieredmenu.mjs.map +0 -1
  395. package/fesm2022/primeng-timeline.mjs.map +0 -1
  396. package/fesm2022/primeng-toast.mjs.map +0 -1
  397. package/fesm2022/primeng-togglebutton.mjs.map +0 -1
  398. package/fesm2022/primeng-toggleswitch.mjs.map +0 -1
  399. package/fesm2022/primeng-toolbar.mjs.map +0 -1
  400. package/fesm2022/primeng-tooltip.mjs.map +0 -1
  401. package/fesm2022/primeng-tree.mjs.map +0 -1
  402. package/fesm2022/primeng-treeselect.mjs.map +0 -1
  403. package/fesm2022/primeng-treetable.mjs.map +0 -1
  404. package/fesm2022/primeng-usestyle.mjs.map +0 -1
  405. package/fesm2022/primeng-utils.mjs.map +0 -1
  406. package/fesm2022/primeng.mjs.map +0 -1
@@ -35,7 +35,7 @@ export declare class TreeTableStyle extends BaseStyle {
35
35
  header: string;
36
36
  pcPaginator: ({ instance }: {
37
37
  instance: any;
38
- }) => any[];
38
+ }) => string;
39
39
  tableContainer: string;
40
40
  table: ({ instance }: {
41
41
  instance: any;
@@ -280,9 +280,6 @@ export declare class TreeTableService {
280
280
  static ɵfac: i0.ɵɵFactoryDeclaration<TreeTableService, never>;
281
281
  static ɵprov: i0.ɵɵInjectableDeclaration<any>;
282
282
  }
283
- declare namespace treetable_d_exports {
284
- export { TreeTable };
285
- }
286
283
  /**
287
284
  * TreeTable is used to display hierarchical data in tabular format.
288
285
  * @group Components
@@ -816,6 +813,8 @@ export declare class TreeTable extends BaseComponent<TreeTablePassThrough> imple
816
813
  * @group Templates
817
814
  */
818
815
  togglerIconTemplate: import("@angular/core").Signal<TemplateRef<TreeTableTogglerIconTemplateContext> | undefined>;
816
+ $togglerIconTemplate: import("@angular/core").WritableSignal<TemplateRef<TreeTableTogglerIconTemplateContext> | undefined>;
817
+ $checkboxIconTemplate: import("@angular/core").WritableSignal<TemplateRef<TreeTableCheckboxIconTemplateContext> | undefined>;
819
818
  /**
820
819
  * @group Templates
821
820
  */
@@ -875,6 +874,7 @@ export declare class TreeTable extends BaseComponent<TreeTablePassThrough> imple
875
874
  filterService: FilterService;
876
875
  tableService: TreeTableService;
877
876
  constructor();
877
+ onAfterContentChecked(): void;
878
878
  onAfterViewChecked(): void;
879
879
  onInit(): void;
880
880
  updateSerializedValue(): void;
@@ -1301,9 +1301,6 @@ export declare class TreeTable extends BaseComponent<TreeTablePassThrough> imple
1301
1301
  outputs: {};
1302
1302
  }]>;
1303
1303
  }
1304
- declare namespace treetable_body_d_exports {
1305
- export { TTBody };
1306
- }
1307
1304
  export declare class TTBody extends BaseComponent {
1308
1305
  columns: import("@angular/core").InputSignal<any[] | undefined>;
1309
1306
  template: import("@angular/core").InputSignal<Nullable<TemplateRef<any>>>;
@@ -1354,9 +1351,6 @@ export declare class TTBody extends BaseComponent {
1354
1351
  };
1355
1352
  }, {}, never, never, true, never>;
1356
1353
  }
1357
- declare namespace treetable_scrollable_view_d_exports {
1358
- export { TTScrollableView };
1359
- }
1360
1354
  export declare class TTScrollableView extends BaseComponent {
1361
1355
  hostName: string;
1362
1356
  columns: import("@angular/core").InputSignal<any[] | undefined>;
@@ -1421,9 +1415,6 @@ export declare class TTScrollableView extends BaseComponent {
1421
1415
  };
1422
1416
  }, {}, never, never, true, never>;
1423
1417
  }
1424
- declare namespace sortable_column_d_exports {
1425
- export { TTSortableColumn };
1426
- }
1427
1418
  export declare class TTSortableColumn extends BaseComponent {
1428
1419
  hostName: string;
1429
1420
  bindDirectiveInstance: Bind;
@@ -1459,9 +1450,6 @@ export declare class TTSortableColumn extends BaseComponent {
1459
1450
  outputs: {};
1460
1451
  }]>;
1461
1452
  }
1462
- declare namespace sort_icon_d_exports {
1463
- export { TTSortIcon };
1464
- }
1465
1453
  export declare class TTSortIcon extends BaseComponent {
1466
1454
  hostName: string;
1467
1455
  field: import("@angular/core").InputSignal<string | undefined>;
@@ -1496,9 +1484,6 @@ export declare class TTSortIcon extends BaseComponent {
1496
1484
  };
1497
1485
  }, {}, never, never, true, never>;
1498
1486
  }
1499
- declare namespace resizable_column_d_exports {
1500
- export { TTResizableColumn };
1501
- }
1502
1487
  export declare class TTResizableColumn extends BaseComponent {
1503
1488
  hostName: string;
1504
1489
  ttResizableColumnDisabled: import("@angular/core").InputSignalWithTransform<boolean | undefined, unknown>;
@@ -1524,9 +1509,6 @@ export declare class TTResizableColumn extends BaseComponent {
1524
1509
  };
1525
1510
  }, {}, never, never, true, never>;
1526
1511
  }
1527
- declare namespace reorderable_column_d_exports {
1528
- export { TTReorderableColumn };
1529
- }
1530
1512
  export declare class TTReorderableColumn extends BaseComponent {
1531
1513
  hostName: string;
1532
1514
  ttReorderableColumnDisabled: import("@angular/core").InputSignalWithTransform<boolean | undefined, unknown>;
@@ -1556,9 +1538,6 @@ export declare class TTReorderableColumn extends BaseComponent {
1556
1538
  };
1557
1539
  }, {}, never, never, true, never>;
1558
1540
  }
1559
- declare namespace selectable_row_d_exports {
1560
- export { TTSelectableRow };
1561
- }
1562
1541
  export declare class TTSelectableRow extends BaseComponent {
1563
1542
  rowNode: import("@angular/core").InputSignal<any>;
1564
1543
  ttSelectableRowDisabled: import("@angular/core").InputSignalWithTransform<boolean | undefined, unknown>;
@@ -1568,19 +1547,8 @@ export declare class TTSelectableRow extends BaseComponent {
1568
1547
  constructor();
1569
1548
  onInit(): void;
1570
1549
  onClick(event: Event): void;
1571
- /**
1572
- * Selectable rows are tab stops: Tab reaches the row (Enter/Space selects),
1573
- * then continues to the focusables inside it — toggler, checkbox, editors.
1574
- */
1575
1550
  get hostTabindex(): 0 | null;
1576
1551
  onKeyDown(event: KeyboardEvent): void;
1577
- /**
1578
- * Backwards navigation treats rows as the stops: Shift+Tab from a row lands
1579
- * on the previous row, not on the last focusable inside it (the browser's
1580
- * reverse order would visit checkbox/toggler first). Forward Tab stays
1581
- * native — row, then into the row's focusables, then the next row. On the
1582
- * first row nothing is intercepted, so focus exits the table backwards.
1583
- */
1584
1552
  private onShiftTabKey;
1585
1553
  onTouchEnd(event: Event): void;
1586
1554
  onEnterKey(event: any): void;
@@ -1599,9 +1567,6 @@ export declare class TTSelectableRow extends BaseComponent {
1599
1567
  };
1600
1568
  }, {}, never, never, true, never>;
1601
1569
  }
1602
- declare namespace selectable_row_dbl_click_d_exports {
1603
- export { TTSelectableRowDblClick };
1604
- }
1605
1570
  export declare class TTSelectableRowDblClick extends BaseComponent {
1606
1571
  rowNode: import("@angular/core").InputSignal<any>;
1607
1572
  ttSelectableRowDisabled: import("@angular/core").InputSignalWithTransform<boolean | undefined, unknown>;
@@ -1626,9 +1591,6 @@ export declare class TTSelectableRowDblClick extends BaseComponent {
1626
1591
  };
1627
1592
  }, {}, never, never, true, never>;
1628
1593
  }
1629
- declare namespace context_menu_row_d_exports {
1630
- export { TTContextMenuRow };
1631
- }
1632
1594
  export declare class TTContextMenuRow extends BaseComponent {
1633
1595
  rowNode: import("@angular/core").InputSignal<any>;
1634
1596
  ttContextMenuRowDisabled: import("@angular/core").InputSignalWithTransform<boolean | undefined, unknown>;
@@ -1653,9 +1615,6 @@ export declare class TTContextMenuRow extends BaseComponent {
1653
1615
  };
1654
1616
  }, {}, never, never, true, never>;
1655
1617
  }
1656
- declare namespace treetable_checkbox_d_exports {
1657
- export { TTCheckbox };
1658
- }
1659
1618
  export declare class TTCheckbox extends BaseComponent {
1660
1619
  hostName: string;
1661
1620
  disabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
@@ -1681,9 +1640,6 @@ export declare class TTCheckbox extends BaseComponent {
1681
1640
  };
1682
1641
  }, {}, never, never, true, never>;
1683
1642
  }
1684
- declare namespace treetable_header_checkbox_d_exports {
1685
- export { TTHeaderCheckbox };
1686
- }
1687
1643
  export declare class TTHeaderCheckbox extends BaseComponent {
1688
1644
  checked: import("@angular/core").WritableSignal<boolean | undefined>;
1689
1645
  tt: TreeTable;
@@ -1695,31 +1651,14 @@ export declare class TTHeaderCheckbox extends BaseComponent {
1695
1651
  static ɵfac: i0.ɵɵFactoryDeclaration<TTHeaderCheckbox, never>;
1696
1652
  static ɵcmp: i0.ɵɵComponentDeclaration<TTHeaderCheckbox, "p-treetableheadercheckbox, p-treetable-header-checkbox", never, {}, {}, never, never, true, never>;
1697
1653
  }
1698
- declare namespace editable_column_d_exports {
1699
- export { TTEditableColumn };
1700
- }
1701
1654
  export declare class TTEditableColumn extends BaseComponent {
1702
1655
  data: import("@angular/core").InputSignal<any>;
1703
1656
  field: import("@angular/core").InputSignal<any>;
1704
1657
  ttEditableColumnDisabled: import("@angular/core").InputSignalWithTransform<boolean | undefined, unknown>;
1705
1658
  tt: TreeTable;
1706
- /**
1707
- * Keyboard closes (Enter/Escape) must hand focus back somewhere — the editor
1708
- * input unmounts, and without this the focus falls to <body>. The cell
1709
- * editor host is a tab stop, so focus returns to it (Tab then continues to
1710
- * the next focusable from the same position). The suppress flag keeps that
1711
- * programmatic focus from immediately reopening the editor it just closed.
1712
- */
1713
1659
  private suppressFocusOpen;
1714
1660
  onAfterViewInit(): void;
1715
1661
  onClick(event: MouseEvent): void;
1716
- /**
1717
- * Keyboard entry point: the cell editor host is in the tab order and opens
1718
- * its editor on focus, so Tab lands on the cell and starts editing without
1719
- * a mouse. `editingCellClick` is normally consumed by the document click
1720
- * that follows a mouse open — a keyboard open has no such click, so it is
1721
- * reset on the next tick to keep the first outside click closing the cell.
1722
- */
1723
1662
  openCellFromFocus(): void;
1724
1663
  private requestEdit;
1725
1664
  openCell(): void;
@@ -1727,13 +1666,6 @@ export declare class TTEditableColumn extends BaseComponent {
1727
1666
  consumeSuppressedFocusOpen(): boolean;
1728
1667
  private focusEditorHost;
1729
1668
  onKeyDown(event: KeyboardEvent): void;
1730
- /**
1731
- * Closes the editor when focus leaves the cell (native Tab/Shift+Tab or a
1732
- * programmatic focus move). The edit is committed — with template-driven
1733
- * bindings the value is already applied, closing only swaps the input back
1734
- * to output. Focus changes within the cell (input ↔ toggler ↔ host) and
1735
- * non-focus targets (relatedTarget null, e.g. window blur) are ignored.
1736
- */
1737
1669
  onFocusOut(event: FocusEvent): void;
1738
1670
  isEnabled(): boolean;
1739
1671
  static ɵfac: i0.ɵɵFactoryDeclaration<TTEditableColumn, never>;
@@ -1755,9 +1687,6 @@ export declare class TTEditableColumn extends BaseComponent {
1755
1687
  };
1756
1688
  }, {}, never, never, true, never>;
1757
1689
  }
1758
- declare namespace cell_editor_d_exports {
1759
- export { TreeTableCellEditor };
1760
- }
1761
1690
  export declare class TreeTableCellEditor extends BaseComponent {
1762
1691
  hostName: string;
1763
1692
  bindDirectiveInstance: Bind;
@@ -1767,12 +1696,6 @@ export declare class TreeTableCellEditor extends BaseComponent {
1767
1696
  editableColumn: TTEditableColumn;
1768
1697
  get editing(): boolean;
1769
1698
  onAfterViewChecked(): void;
1770
- /**
1771
- * Closed editors render plain output text, which is not focusable — without
1772
- * a tabindex the browser's sequential focus (Tab) would skip editable cells
1773
- * entirely. The host joins the tab order so Tab reaches the cell, and focus
1774
- * opens the editor (which then moves focus into the input).
1775
- */
1776
1699
  get hostTabindex(): 0 | null;
1777
1700
  onHostFocus(): void;
1778
1701
  static ɵfac: i0.ɵɵFactoryDeclaration<TreeTableCellEditor, never>;
@@ -1782,9 +1705,6 @@ export declare class TreeTableCellEditor extends BaseComponent {
1782
1705
  outputs: {};
1783
1706
  }]>;
1784
1707
  }
1785
- declare namespace treetable_row_d_exports {
1786
- export { TTRow };
1787
- }
1788
1708
  export declare class TTRow extends BaseComponent {
1789
1709
  hostName: string;
1790
1710
  bindDirectiveInstance: Bind;
@@ -1805,11 +1725,6 @@ export declare class TTRow extends BaseComponent {
1805
1725
  onEndKey(event: KeyboardEvent): void;
1806
1726
  expand(event: Event): void;
1807
1727
  collapse(event: Event): void;
1808
- /**
1809
- * Focus model: rows are not focusable — the row's toggler button carries
1810
- * keyboard focus (Tab reaches it, Enter/Space toggles, arrows move between
1811
- * visible togglers). Rows never show a focus outline.
1812
- */
1813
1728
  private togglerButton;
1814
1729
  private focusSiblingToggler;
1815
1730
  /** Re-focus the toggled row's toggler after the tbody re-renders. */
@@ -1835,9 +1750,6 @@ export declare class TTRow extends BaseComponent {
1835
1750
  outputs: {};
1836
1751
  }]>;
1837
1752
  }
1838
- declare namespace treetable_toggler_d_exports {
1839
- export { TreeTableToggler };
1840
- }
1841
1753
  export declare class TreeTableToggler extends BaseComponent {
1842
1754
  hostName: string;
1843
1755
  bindDirectiveInstance: Bind;
@@ -258,7 +258,7 @@ export interface ListboxCheckIconTemplateContext {
258
258
  }
259
259
  /**
260
260
  * Custom checkmark template context.
261
- * Note: Uses 'implicit' property instead of '$implicit'.
261
+ * Uses 'implicit' property instead of '$implicit'.
262
262
  * @group Interface
263
263
  */
264
264
  export interface ListboxCheckmarkTemplateContext {
@@ -42,6 +42,10 @@ export interface SelectPassThroughOptions<I = unknown> {
42
42
  * @see {@link OverlayPassThrough}
43
43
  */
44
44
  pcOverlay?: OverlayPassThrough;
45
+ /**
46
+ * Used to pass attributes to the overlay panel's DOM element.
47
+ */
48
+ overlay?: PassThroughOption<HTMLDivElement, I>;
45
49
  /**
46
50
  * Used to pass attributes to the header's DOM element.
47
51
  */
@@ -0,0 +1,15 @@
1
+ import * as i0 from "@angular/core";
2
+ /**
3
+ * Generates sequential ids for the components of one application.
4
+ *
5
+ * Provided in the root injector, so a server that renders several requests in one process
6
+ * starts the sequence over for every request and the ids match the ones produced on the client during hydration.
7
+ * A non-default `APP_ID` is added to every id, so two applications on one page do not share ids or scoped styles.
8
+ */
9
+ export declare class UseId {
10
+ private readonly counters;
11
+ private readonly scope;
12
+ next(prefix?: string): string;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<UseId, never>;
14
+ static ɵprov: i0.ɵɵInjectableDeclaration<any>;
15
+ }
@@ -1,28 +1,108 @@
1
1
  import * as i0 from "@angular/core";
2
+ import { Injector, OnDestroy } from "@angular/core";
3
+ import { $dt, Theme, ThemeService, css, dt } from "@primeuix/styled";
4
+ import { Isolation } from "@primeuix/styled/isolation";
5
+ export type StyleRoot = Document | ShadowRoot;
6
+ /**
7
+ * The attribute that names every `<style>` element PrimeNG adds, such as
8
+ * `<style data-primeng-style-id="button-style">`.
9
+ */
10
+ export declare const STYLE_ID_ATTRIBUTE = "data-primeng-style-id";
2
11
  export declare class UseStyle {
3
12
  document: Document;
4
- private styleSheets;
13
+ private readonly zone;
14
+ private sharedStyles;
5
15
  private shadowRoots;
16
+ private owned;
17
+ private keyed;
18
+ private dark;
19
+ private readonly onThemeChange;
6
20
  /**
7
- * Applies the injected styles inside the given shadow root.
21
+ * Applies the injected styles inside the given shadow root. The returned callback releases one registration.
8
22
  */
9
23
  addShadowRoot(shadowRoot: ShadowRoot): () => void;
10
24
  /**
11
- * Stops applying the injected styles inside the given shadow root.
25
+ * Stops applying the injected styles inside the given shadow root, whatever registrations it holds.
12
26
  */
13
27
  removeShadowRoot(shadowRoot: ShadowRoot): void;
14
28
  /**
15
- * Removes an injected style from the document and from the shadow roots that adopted it.
29
+ * Removes an injected style from the document and from the shadow roots it was applied to.
30
+ * Pass the element returned by `use` to skip searching the document for it.
16
31
  */
17
- remove(name: string): void;
32
+ remove(name: string, el?: Element | null): void;
18
33
  use(css: any, options?: any): {
19
34
  id: any;
20
35
  name: any;
21
36
  el: HTMLStyleElement;
22
37
  css: any;
23
38
  } | undefined;
24
- private adoptStyleSheet;
25
- private isAdoptionSupported;
39
+ private dropStale;
40
+ private register;
41
+ private apply;
42
+ private clear;
43
+ private toHost;
44
+ private share;
45
+ private update;
46
+ private copy;
26
47
  static ɵfac: i0.ɵɵFactoryDeclaration<UseStyle, never>;
27
48
  static ɵprov: i0.ɵɵInjectableDeclaration<any>;
49
+ }
50
+ export interface StyleNameRegistry {
51
+ isStyleNameLoaded(name: string): boolean;
52
+ setLoadedStyleName(name: string): void;
53
+ deleteLoadedStyleName(name: string): void;
54
+ clearLoadedStyleNames(): void;
55
+ }
56
+ export interface StyleResolvers {
57
+ dt: typeof dt;
58
+ $dt: typeof $dt;
59
+ css: typeof css;
60
+ }
61
+ /**
62
+ * The theming state one application renders with: theme runtime, style ids and class prefix.
63
+ * `withIsolation()` from `primeng/isolation` replaces it with an isolated scope.
64
+ * @group Service
65
+ */
66
+ export declare class StyleScope implements OnDestroy {
67
+ readonly isolated: boolean;
68
+ protected readonly document: Document;
69
+ protected readonly platformId: object;
70
+ protected readonly useStyle: UseStyle;
71
+ readonly theme: typeof Theme;
72
+ readonly resolvers: StyleResolvers;
73
+ readonly service: typeof ThemeService;
74
+ readonly coreStyleNames: StyleNameRegistry | undefined;
75
+ /**
76
+ * The isolation of the application, or `undefined` when it does not use isolated mode.
77
+ */
78
+ readonly isolation: Isolation | undefined;
79
+ private readonly _classPrefix;
80
+ readonly classPrefix: import("@angular/core").Signal<string>;
81
+ private readonly onThemeChange;
82
+ private bodyLock;
83
+ constructor();
84
+ get key(): string | undefined;
85
+ styleName(name: string): string;
86
+ prime(_theme: unknown): void;
87
+ pcn(...classes: unknown[]): string;
88
+ psel<T extends string | null | undefined>(selector: T): T;
89
+ batch<T>(fn: () => T): T;
90
+ connect(el: Element | undefined, injector: Injector): void;
91
+ scopeCSS(css: string): string;
92
+ keyedId(id: string): string;
93
+ setInstanceStyle(_name: string, _css: string, _nonce?: string): void;
94
+ removeInstanceStyle(_name: string): void;
95
+ overlayParent<T>(target: T, _overlay?: Element | null): T;
96
+ lockBodyScroll(options: {
97
+ className: string;
98
+ variableName: string;
99
+ } | undefined): void;
100
+ unlockBodyScroll(): void;
101
+ ngOnDestroy(): void;
102
+ protected createTheme(): typeof Theme;
103
+ protected createResolvers(): StyleResolvers;
104
+ protected themeChanged(): void;
105
+ protected readClassPrefix(): string;
106
+ static ɵfac: i0.ɵɵFactoryDeclaration<StyleScope, never>;
107
+ static ɵprov: i0.ɵɵInjectableDeclaration<any>;
28
108
  }
@@ -26,6 +26,9 @@ export declare class ObjectUtils {
26
26
  static isString(value: any, empty?: boolean): boolean;
27
27
  }
28
28
  declare let lastId: number;
29
+ /**
30
+ * @deprecated since v22, use `UseId` from `primeng/useid` instead. This counter is shared by the whole process, so server-rendered ids drift between requests.
31
+ */
29
32
  export declare function UniqueComponentId(prefix?: string): string;
30
33
  declare const _default: {
31
34
  get: (el: any) => number;
@@ -37,4 +40,43 @@ declare const _default: {
37
40
  };
38
41
  export declare const transformToBoolean: (value: any) => boolean;
39
42
  export declare const transformToNumber: (value: string | number) => number;
43
+ /**
44
+ * Returns the `classPrefix` option of a theme.
45
+ *
46
+ * Returns `undefined` when the option is not set, or when the installed `@primeuix/styled` cannot
47
+ * prefix its CSS. In development the second case logs a warning once.
48
+ *
49
+ * @param theme The theme, shared or isolated.
50
+ * @returns The prefix, or `undefined`.
51
+ */
52
+ export declare function getClassPrefix(theme: {
53
+ getOptions?(): {
54
+ classPrefix?: string;
55
+ } | undefined;
56
+ styleName?(name: string): string;
57
+ } | null | undefined): string | undefined;
58
+ /**
59
+ * Applies a `classPrefix` to a class value: a string, an array or an object of classes.
60
+ *
61
+ * @param value The class value.
62
+ * @param prefix The `classPrefix`. Without one, or with `p`, the classes are only joined.
63
+ * @returns The class list with `p-` classes renamed.
64
+ */
65
+ export declare function prefixClasses(value: unknown, prefix?: string): string;
66
+ /**
67
+ * Applies a `classPrefix` to the `.p-` classes in a selector or a piece of CSS.
68
+ *
69
+ * @param selector The selector or CSS.
70
+ * @param prefix The `classPrefix`. Without one, or with `p`, `selector` is returned as is.
71
+ * @returns The selector with `.p-` classes renamed.
72
+ */
73
+ export declare function prefixSelector<T extends string | null | undefined>(selector: T, prefix?: string): T;
74
+ /**
75
+ * Adds a component instance id to the `data-pc-id` list of an element, keeping the ids other instances on
76
+ * the same element wrote, so `[data-pc-id~="<id>"]` matches every one of them.
77
+ *
78
+ * @param el The element.
79
+ * @param ids One or more ids, separated by spaces.
80
+ */
81
+ export declare function markInstance(el: Element | null | undefined, ids: string | null | undefined): void;
40
82
  export { _default as ZIndexUtils };
@@ -1 +0,0 @@
1
- {"version":3,"file":"primeng-accordion.mjs","names":["style","accordion_style","i1","i2","ChevronDownIcon","ChevronUpIcon","i1","i1"],"sources":["../../src/accordion/accordion-token.ts","../../src/accordion/style/accordionstyle.ts","../../src/accordion/accordion-content.ts","../../src/accordion/accordion-header.ts","../../src/accordion/accordion-panel.ts","../../src/accordion/accordion.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const ACCORDION_INSTANCE = new InjectionToken<any>('ACCORDION_INSTANCE');\nexport const ACCORDION_PANEL_INSTANCE = new InjectionToken<any>('ACCORDION_PANEL_INSTANCE');\nexport const ACCORDION_HEADER_INSTANCE = new InjectionToken<any>('ACCORDION_HEADER_INSTANCE');\nexport const ACCORDION_CONTENT_INSTANCE = new InjectionToken<any>('ACCORDION_CONTENT_INSTANCE');\n","import { Injectable } from '@angular/core';\nimport { style as accordion_style } from '@primeuix/styles/accordion';\nimport { BaseStyle } from 'primeng/base';\n\nconst style = /*css*/ `\n${accordion_style}\n\n/* For PrimeNG */\n.p-accordionheader-toggle-icon.icon-start {\n order: -1;\n}\n\n.p-accordionheader:has(.p-accordionheader-toggle-icon.icon-start) {\n justify-content: flex-start;\n gap: dt('accordion.header.padding');\n}\n\n.p-accordionheader.p-ripple {\n overflow: hidden;\n position: relative;\n}\n\n.p-accordioncontent .p-motion {\n display: grid;\n grid-template-rows: 1fr;\n}\n`;\n\nconst classes = {\n root: 'p-accordion p-component',\n panel: ({ instance }) => [\n 'p-accordionpanel',\n {\n 'p-accordionpanel-active': instance.active(),\n 'p-disabled': instance.disabled()\n }\n ],\n header: 'p-accordionheader',\n toggleicon: 'p-accordionheader-toggle-icon',\n contentContainer: 'p-accordioncontent',\n contentWrapper: 'p-accordioncontent-wrapper',\n content: 'p-accordioncontent-content'\n};\n\n@Injectable()\nexport class AccordionStyle extends BaseStyle {\n name = 'accordion';\n\n style = style;\n\n classes = classes;\n}\n\n/**\n *\n * Accordion groups a collection of contents in tabs.\n *\n * [Live Demo](https://www.primeng.org/accordion/)\n *\n * @module accordionstyle\n *\n */\nexport enum AccordionClasses {\n /**\n * Class name of the root element\n */\n root = 'p-accordion',\n /**\n * Class name of the content wrapper\n */\n contentwrapper = 'p-accordioncontent',\n /**\n * Class name of the content\n */\n content = 'p-accordioncontent-content',\n /**\n * Class name of the header\n */\n header = 'p-accordionheader',\n /**\n * Class name of the toggle icon\n */\n toggleicon = 'p-accordionheader-toggle-icon',\n /**\n * Class name of the panel\n */\n panel = 'p-accordionpanel'\n}\n","import { ChangeDetectionStrategy, Component, computed, inject, ViewEncapsulation } from '@angular/core';\nimport { MotionOptions } from '@primeuix/motion';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind, BindModule } from 'primeng/bind';\nimport { MotionModule } from 'primeng/motion';\nimport { AccordionContentPassThrough } from 'primeng/types/accordion';\nimport type { Accordion } from './accordion';\nimport { AccordionPanel } from './accordion-panel';\nimport { ACCORDION_INSTANCE, ACCORDION_CONTENT_INSTANCE, ACCORDION_PANEL_INSTANCE } from './accordion-token';\nimport { AccordionStyle } from './style/accordionstyle';\n\n/**\n * AccordionContent is a helper component for Accordion component.\n * @group Components\n */\n@Component({\n selector: 'p-accordion-content, p-accordioncontent',\n imports: [BindModule, MotionModule],\n standalone: true,\n template: `\n <p-motion [visible]=\"active()\" name=\"p-collapsible\" hideStrategy=\"visibility\" [mountOnEnter]=\"false\" [unmountOnLeave]=\"false\" [options]=\"computedMotionOptions()\">\n <div [pBind]=\"ptm('contentWrapper', ptParams())\" [class]=\"cx('contentWrapper')\">\n <div [pBind]=\"ptm('content', ptParams())\" [class]=\"cx('content')\">\n <ng-content />\n </div>\n </div>\n </p-motion>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'cx(\"contentContainer\")',\n '[attr.id]': 'id()',\n '[attr.role]': '\"region\"',\n '[attr.data-p-active]': 'active()',\n '[attr.aria-labelledby]': 'ariaLabelledby()'\n },\n hostDirectives: [Bind],\n providers: [AccordionStyle, { provide: ACCORDION_CONTENT_INSTANCE, useExisting: AccordionContent }, { provide: PARENT_INSTANCE, useExisting: AccordionContent }]\n})\nexport class AccordionContent extends BaseComponent<AccordionContentPassThrough> {\n $pcAccordionContent: AccordionContent | undefined = inject(ACCORDION_CONTENT_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n componentName = 'AccordionContent';\n\n pcAccordion = inject<Accordion>(ACCORDION_INSTANCE);\n\n pcAccordionPanel = inject<AccordionPanel>(ACCORDION_PANEL_INSTANCE);\n\n active = computed(() => this.pcAccordionPanel.active());\n\n ariaLabelledby = computed(() => `${this.pcAccordion.id()}_accordionheader_${this.pcAccordionPanel.value()}`);\n\n id = computed(() => `${this.pcAccordion.id()}_accordioncontent_${this.pcAccordionPanel.value()}`);\n\n _componentStyle = inject(AccordionStyle);\n\n ptParams = computed(() => ({ context: this.active() }));\n\n computedMotionOptions = computed<MotionOptions>(() => ({\n ...this.ptm('motion', this.ptParams()),\n ...this.pcAccordion.computedMotionOptions()\n }));\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptm('root'));\n }\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, contentChild, HostListener, inject, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { findSingle, focus, getAttribute } from '@primeuix/utils';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind, BindModule } from 'primeng/bind';\nimport { ChevronDown as ChevronDownIcon } from '@primeicons/angular/chevron-down';\nimport { ChevronUp as ChevronUpIcon } from '@primeicons/angular/chevron-up';\nimport { Ripple } from 'primeng/ripple';\nimport { AccordionHeaderPassThrough, AccordionToggleIconTemplateContext } from 'primeng/types/accordion';\nimport type { Accordion } from './accordion';\nimport { AccordionPanel } from './accordion-panel';\nimport { ACCORDION_INSTANCE, ACCORDION_HEADER_INSTANCE, ACCORDION_PANEL_INSTANCE } from './accordion-token';\nimport { AccordionStyle } from './style/accordionstyle';\n\n/**\n * AccordionHeader is a helper component for Accordion component.\n * @group Components\n */\n@Component({\n selector: 'p-accordion-header, p-accordionheader',\n imports: [NgTemplateOutlet, ChevronDownIcon, ChevronUpIcon, BindModule],\n standalone: true,\n template: `\n <ng-content />\n @if (toggleicon()) {\n <ng-container *ngTemplateOutlet=\"toggleicon(); context: toggleIconContext()\"></ng-container>\n } @else {\n @if (active()) {\n @if (pcAccordion.collapseIcon()) {\n <span [class]=\"cn(cx('toggleicon'), pcAccordion.collapseIcon())\" [attr.aria-hidden]=\"true\" [pBind]=\"ptm('toggleicon')\"></span>\n } @else {\n <svg data-p-icon=\"chevron-up\" [class]=\"cx('toggleicon')\" [pBind]=\"ptm('toggleicon')\" [attr.aria-hidden]=\"true\" />\n }\n } @else {\n @if (pcAccordion.expandIcon()) {\n <span [class]=\"cn(cx('toggleicon'), pcAccordion.expandIcon())\" [attr.aria-hidden]=\"true\" [pBind]=\"ptm('toggleicon')\"></span>\n } @else {\n <svg data-p-icon=\"chevron-down\" [attr.aria-hidden]=\"true\" [pBind]=\"ptm('toggleicon')\" />\n }\n }\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': \"cx('header')\",\n '[attr.id]': 'id()',\n '[attr.aria-expanded]': 'active()',\n '[attr.aria-controls]': 'ariaControls()',\n '[attr.aria-disabled]': 'disabled()',\n '[attr.role]': '\"button\"',\n '[attr.tabindex]': 'hostTabindex()',\n '[attr.data-p-active]': 'active()',\n '[attr.data-p-disabled]': 'disabled()',\n '[style.user-select]': '\"none\"',\n '[attr.data-p]': 'dataP()'\n },\n hostDirectives: [Ripple, Bind],\n providers: [AccordionStyle, { provide: ACCORDION_HEADER_INSTANCE, useExisting: AccordionHeader }, { provide: PARENT_INSTANCE, useExisting: AccordionHeader }]\n})\nexport class AccordionHeader extends BaseComponent<AccordionHeaderPassThrough> {\n $pcAccordionHeader: AccordionHeader | undefined = inject(ACCORDION_HEADER_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n componentName = 'AccordionHeader';\n\n pcAccordion = inject<Accordion>(ACCORDION_INSTANCE);\n\n pcAccordionPanel = inject<AccordionPanel>(ACCORDION_PANEL_INSTANCE);\n\n id = computed(() => `${this.pcAccordion.id()}_accordionheader_${this.pcAccordionPanel.value()}`);\n\n active = computed(() => this.pcAccordionPanel.active());\n\n disabled = computed(() => this.pcAccordionPanel.disabled());\n\n ariaControls = computed(() => `${this.pcAccordion.id()}_accordioncontent_${this.pcAccordionPanel.value()}`);\n\n hostTabindex = computed(() => (this.disabled() ? '-1' : '0'));\n\n /**\n * Toggle icon template.\n * @type {TemplateRef<AccordionToggleIconTemplateContext>} context - Context of the template\n * @example\n * ```html\n * <ng-template #toggleicon let-active=\"active\"> </ng-template>\n * ```\n * @see {@link AccordionToggleIconTemplateContext}\n * @group Templates\n */\n toggleicon = contentChild<TemplateRef<AccordionToggleIconTemplateContext>>('toggleicon', { descendants: false });\n toggleIconContext = computed<AccordionToggleIconTemplateContext>(() => ({ active: this.active() }));\n\n _componentStyle = inject(AccordionStyle);\n\n dataP = computed(() =>\n this.cn({\n active: this.active()\n })\n );\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptm('root'));\n }\n\n @HostListener('click', ['$event']) onClick(event?: MouseEvent | KeyboardEvent) {\n if (this.disabled()) {\n return;\n }\n\n const wasActive = this.active();\n\n this.changeActiveValue();\n\n const isActive = this.active();\n const index = this.pcAccordionPanel.value() as number;\n\n if (!wasActive && isActive) {\n this.pcAccordion.onOpen.emit({ originalEvent: event!, index });\n } else if (wasActive && !isActive) {\n this.pcAccordion.onClose.emit({ originalEvent: event!, index });\n }\n }\n\n @HostListener('focus') onFocus() {\n if (!this.disabled() && this.pcAccordion.selectOnFocus()) {\n this.changeActiveValue();\n }\n }\n\n @HostListener('keydown', ['$event']) onKeydown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowDown':\n this.arrowDownKey(event);\n break;\n case 'ArrowUp':\n this.arrowUpKey(event);\n break;\n case 'Home':\n this.onHomeKey(event);\n break;\n case 'End':\n this.onEndKey(event);\n break;\n case 'Enter':\n case 'Space':\n case 'NumpadEnter':\n this.onEnterKey(event);\n break;\n default:\n break;\n }\n }\n\n changeActiveValue() {\n this.pcAccordion.updateValue(this.pcAccordionPanel.value() as string | number);\n }\n\n private findPanel(headerElement: EventTarget | null) {\n return (headerElement as HTMLElement | null)?.closest('[data-pc-name=\"accordionpanel\"]') as HTMLElement | null;\n }\n\n private findHeader(panelElement: HTMLElement | null) {\n return panelElement ? (findSingle(panelElement, '[data-pc-name=\"accordionheader\"]') as HTMLElement | null) : null;\n }\n\n private findNextPanel(panelElement: HTMLElement | null, selfCheck = false) {\n const element = selfCheck ? panelElement : (panelElement?.nextElementSibling as HTMLElement | null);\n\n return element ? (getAttribute(element, 'data-p-disabled') ? this.findNextPanel(element) : this.findHeader(element)) : null;\n }\n\n private findPrevPanel(panelElement: HTMLElement | null, selfCheck = false) {\n const element = selfCheck ? panelElement : (panelElement?.previousElementSibling as HTMLElement | null);\n\n return element ? (getAttribute(element, 'data-p-disabled') ? this.findPrevPanel(element) : this.findHeader(element)) : null;\n }\n\n private findFirstPanel() {\n return this.findNextPanel(this.pcAccordion.el.nativeElement.firstElementChild as HTMLElement | null, true);\n }\n\n private findLastPanel() {\n return this.findPrevPanel(this.pcAccordion.el.nativeElement.lastElementChild as HTMLElement | null, true);\n }\n\n private changeFocusedPanel(_event: KeyboardEvent, element: HTMLElement | null) {\n if (element) focus(element);\n }\n\n private arrowDownKey(event: KeyboardEvent) {\n const nextPanel = this.findNextPanel(this.findPanel(event.currentTarget));\n\n if (nextPanel) {\n this.changeFocusedPanel(event, nextPanel);\n } else {\n this.onHomeKey(event);\n }\n\n event.preventDefault();\n }\n\n private arrowUpKey(event: KeyboardEvent) {\n const prevPanel = this.findPrevPanel(this.findPanel(event.currentTarget));\n\n if (prevPanel) {\n this.changeFocusedPanel(event, prevPanel);\n } else {\n this.onEndKey(event);\n }\n\n event.preventDefault();\n }\n\n private onHomeKey(event: KeyboardEvent) {\n const firstPanel = this.findFirstPanel();\n\n this.changeFocusedPanel(event, firstPanel);\n event.preventDefault();\n }\n\n private onEndKey(event: KeyboardEvent) {\n const lastPanel = this.findLastPanel();\n\n this.changeFocusedPanel(event, lastPanel);\n event.preventDefault();\n }\n\n private onEnterKey(event: KeyboardEvent) {\n if (!this.disabled()) {\n this.changeActiveValue();\n }\n\n event.preventDefault();\n }\n}\n","import { ChangeDetectionStrategy, Component, computed, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind, BindModule } from 'primeng/bind';\nimport { AccordionPanelPassThrough, AccordionValue } from 'primeng/types/accordion';\nimport { transformToBoolean } from 'primeng/utils';\nimport type { Accordion } from './accordion';\nimport { ACCORDION_INSTANCE, ACCORDION_PANEL_INSTANCE } from './accordion-token';\nimport { AccordionStyle } from './style/accordionstyle';\n\n/**\n * AccordionPanel is a helper component for Accordion component.\n * @group Components\n */\n@Component({\n selector: 'p-accordion-panel, p-accordionpanel',\n imports: [BindModule],\n standalone: true,\n template: `<ng-content />`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': 'cx(\"panel\")',\n '[attr.data-p-disabled]': 'disabled()',\n '[attr.data-p-active]': 'active()'\n },\n hostDirectives: [Bind],\n providers: [AccordionStyle, { provide: ACCORDION_PANEL_INSTANCE, useExisting: AccordionPanel }, { provide: PARENT_INSTANCE, useExisting: AccordionPanel }]\n})\nexport class AccordionPanel extends BaseComponent<AccordionPanelPassThrough> {\n $pcAccordionPanel: AccordionPanel | undefined = inject(ACCORDION_PANEL_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n componentName = 'AccordionPanel';\n\n pcAccordion = inject<Accordion>(ACCORDION_INSTANCE);\n\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<AccordionValue>(undefined);\n /**\n * Disables the tab when enabled.\n * @defaultValue false\n * @group Props\n */\n disabled = input(false, { transform: (v: unknown) => transformToBoolean(v) });\n active = computed(() => (this.pcAccordion.multiple() ? this.valueEquals(this.pcAccordion.value(), this.value()) : this.pcAccordion.value() === this.value()));\n\n _componentStyle = inject(AccordionStyle);\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptm('root'));\n }\n\n valueEquals(currentValue: AccordionValue, value: AccordionValue): boolean {\n if (Array.isArray(currentValue) && (typeof value === 'string' || typeof value === 'number')) {\n return currentValue.includes(value);\n }\n\n return currentValue === value;\n }\n}\n","import { ChangeDetectionStrategy, Component, computed, HostListener, inject, input, model, NgModule, output, signal } from '@angular/core';\nimport { MotionOptions } from '@primeuix/motion';\nimport { findSingle, focus, getAttribute, uuid } from '@primeuix/utils';\nimport { BlockableUI, SharedModule } from 'primeng/api';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind, BindModule } from 'primeng/bind';\nimport { AccordionPassThrough, AccordionTabCloseEvent, AccordionTabOpenEvent, AccordionValue } from 'primeng/types/accordion';\nimport { transformToBoolean } from 'primeng/utils';\nimport { AccordionContent } from './accordion-content';\nimport { AccordionHeader } from './accordion-header';\nimport { AccordionPanel } from './accordion-panel';\nimport { ACCORDION_INSTANCE } from './accordion-token';\nimport { AccordionStyle } from './style/accordionstyle';\n\n/**\n * Accordion groups a collection of contents in tabs.\n * @group Components\n */\n@Component({\n selector: 'p-accordion',\n standalone: true,\n imports: [SharedModule, BindModule],\n template: ` <ng-content />`,\n host: {\n '[class]': \"cx('root')\"\n },\n hostDirectives: [Bind],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AccordionStyle, { provide: ACCORDION_INSTANCE, useExisting: Accordion }, { provide: PARENT_INSTANCE, useExisting: Accordion }]\n})\nexport class Accordion extends BaseComponent<AccordionPassThrough> implements BlockableUI {\n componentName = 'Accordion';\n\n $pcAccordion: Accordion | undefined = inject(ACCORDION_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<AccordionValue>(undefined);\n\n /**\n * When enabled, multiple tabs can be activated at the same time.\n * @defaultValue false\n * @group Props\n */\n multiple = input(false, { transform: (v: unknown) => transformToBoolean(v) });\n /**\n * Icon of a collapsed tab.\n * @group Props\n */\n expandIcon = input<string>();\n /**\n * Icon of an expanded tab.\n * @group Props\n */\n collapseIcon = input<string>();\n /**\n * When enabled, the focused tab is activated.\n * @defaultValue false\n * @group Props\n */\n selectOnFocus = input(false, { transform: (v: unknown) => transformToBoolean(v) });\n /**\n * The motion options.\n * @group Props\n */\n motionOptions = input<MotionOptions | undefined>(undefined);\n computedMotionOptions = computed<MotionOptions>(() => ({\n ...this.ptm('motion'),\n ...this.motionOptions()\n }));\n\n /**\n * Callback to invoke when an active tab is collapsed by clicking on the header.\n * @param {AccordionTabCloseEvent} event - Custom tab close event.\n * @group Emits\n */\n onClose = output<AccordionTabCloseEvent>();\n\n /**\n * Callback to invoke when a tab gets expanded.\n * @param {AccordionTabOpenEvent} event - Custom tab open event.\n * @group Emits\n */\n onOpen = output<AccordionTabOpenEvent>();\n id = signal(uuid('pn_id_'));\n\n _componentStyle = inject(AccordionStyle);\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptm('root'));\n }\n\n @HostListener('keydown', ['$event'])\n onKeydown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowDown':\n this.onTabArrowDownKey(event);\n break;\n\n case 'ArrowUp':\n this.onTabArrowUpKey(event);\n break;\n\n case 'Home':\n if (!event.shiftKey) {\n this.onTabHomeKey(event);\n }\n\n break;\n\n case 'End':\n if (!event.shiftKey) {\n this.onTabEndKey(event);\n }\n\n break;\n }\n }\n\n onTabArrowDownKey(event: KeyboardEvent) {\n const nextHeaderAction = this.findNextHeaderAction((event.target as HTMLElement | null)?.parentElement ?? null);\n\n if (nextHeaderAction) {\n this.changeFocusedTab(nextHeaderAction);\n } else {\n this.onTabHomeKey(event);\n }\n\n event.preventDefault();\n }\n\n onTabArrowUpKey(event: KeyboardEvent) {\n const prevHeaderAction = this.findPrevHeaderAction((event.target as HTMLElement | null)?.parentElement ?? null);\n\n if (prevHeaderAction) {\n this.changeFocusedTab(prevHeaderAction);\n } else {\n this.onTabEndKey(event);\n }\n\n event.preventDefault();\n }\n\n onTabHomeKey(event: KeyboardEvent) {\n const firstHeaderAction = this.findFirstHeaderAction();\n\n this.changeFocusedTab(firstHeaderAction);\n event.preventDefault();\n }\n\n changeFocusedTab(element: HTMLElement | null) {\n if (element) {\n focus(element);\n }\n }\n\n findNextHeaderAction(tabElement: HTMLElement | null, selfCheck = false) {\n const nextTabElement = selfCheck ? tabElement : (tabElement?.nextElementSibling as HTMLElement | null);\n const headerElement = nextTabElement ? (findSingle(nextTabElement, '[data-pc-section=\"accordionheader\"]') as HTMLElement | null) : null;\n\n if (!headerElement) return null;\n\n if (getAttribute(headerElement, 'data-p-disabled')) {\n return this.findNextHeaderAction(headerElement.parentElement);\n }\n\n return findSingle(headerElement.parentElement!, '[data-pc-section=\"accordionheader\"]') as HTMLElement | null;\n }\n\n findPrevHeaderAction(tabElement: HTMLElement | null, selfCheck = false) {\n const prevTabElement = selfCheck ? tabElement : (tabElement?.previousElementSibling as HTMLElement | null);\n const headerElement = prevTabElement ? (findSingle(prevTabElement, '[data-pc-section=\"accordionheader\"]') as HTMLElement | null) : null;\n\n if (!headerElement) return null;\n\n if (getAttribute(headerElement, 'data-p-disabled')) {\n return this.findPrevHeaderAction(headerElement.parentElement);\n }\n\n return findSingle(headerElement.parentElement!, '[data-pc-section=\"accordionheader\"]') as HTMLElement | null;\n }\n\n findFirstHeaderAction() {\n const firstEl = this.el.nativeElement.firstElementChild as HTMLElement | null;\n\n return this.findNextHeaderAction(firstEl, true);\n }\n\n findLastHeaderAction() {\n const lastEl = this.el.nativeElement.lastElementChild as HTMLElement | null;\n\n return this.findPrevHeaderAction(lastEl, true);\n }\n\n onTabEndKey(event: KeyboardEvent) {\n const lastHeaderAction = this.findLastHeaderAction();\n\n this.changeFocusedTab(lastHeaderAction);\n event.preventDefault();\n }\n\n getBlockableElement(): HTMLElement {\n return this.el.nativeElement.children[0];\n }\n\n updateValue(value: string | number) {\n const currentValue = this.value();\n\n if (this.multiple()) {\n const newValue = Array.isArray(currentValue) ? [...currentValue] : [];\n const index = newValue.indexOf(value);\n\n if (index !== -1) {\n newValue.splice(index, 1);\n } else {\n newValue.push(value);\n }\n\n this.value.set(newValue);\n } else {\n if (currentValue === value) {\n this.value.set(undefined);\n } else {\n this.value.set(value);\n }\n }\n }\n}\n\n@NgModule({\n imports: [Accordion, SharedModule, AccordionPanel, AccordionHeader, AccordionContent, BindModule],\n exports: [Accordion, SharedModule, AccordionPanel, AccordionHeader, AccordionContent, BindModule]\n})\nexport class AccordionModule {}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"primeng-animateonscroll.mjs","names":[],"sources":["../../src/animateonscroll/animateonscroll.ts"],"sourcesContent":["import { isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, computed, Directive, input, NgModule, numberAttribute } from '@angular/core';\nimport { addClass, removeClass } from '@primeuix/utils';\nimport { BaseComponent } from 'primeng/basecomponent';\n\ninterface AnimateOnScrollOptions {\n root?: HTMLElement | null;\n rootMargin?: string;\n threshold?: number;\n}\n\n/**\n * AnimateOnScroll is used to apply animations to elements when entering or leaving the viewport during scrolling.\n * @group Components\n */\n@Directive({\n selector: '[pAnimateOnScroll]',\n standalone: true,\n host: {\n '[class.p-animateonscroll]': 'true'\n }\n})\nexport class AnimateOnScroll extends BaseComponent {\n /**\n * Selector to define the CSS class for enter animation.\n * @group Props\n */\n enterClass = input<string>();\n\n /**\n * Selector to define the CSS class for leave animation.\n * @group Props\n */\n leaveClass = input<string>();\n\n /**\n * Specifies the root option of the IntersectionObserver API.\n * @group Props\n */\n root = input<HTMLElement | null>();\n\n /**\n * Specifies the rootMargin option of the IntersectionObserver API.\n * @group Props\n */\n rootMargin = input<string>();\n\n /**\n * Specifies the threshold option of the IntersectionObserver API\n * @group Props\n */\n threshold = input(0.5, { transform: numberAttribute });\n\n /**\n * Whether the scroll event listener should be removed after initial run.\n * @group Props\n */\n once = input(false, { transform: booleanAttribute });\n\n observer: IntersectionObserver | undefined;\n\n resetObserver: IntersectionObserver | undefined;\n\n isObserverActive: boolean = false;\n\n animationState: 'enter' | 'leave' | undefined;\n\n animationEndListener: VoidFunction | null | undefined;\n\n options = computed<AnimateOnScrollOptions>(() => ({\n root: this.root(),\n rootMargin: this.rootMargin(),\n threshold: this.threshold() || 0.5\n }));\n\n onInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.renderer.setStyle(this.el.nativeElement, 'opacity', this.enterClass() ? '0' : '');\n }\n }\n\n onAfterViewInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.bindIntersectionObserver();\n }\n }\n\n bindIntersectionObserver() {\n this.observer = new IntersectionObserver(([entry]) => {\n if (this.isObserverActive) {\n if (entry.boundingClientRect.top > 0) {\n if (entry.isIntersecting) {\n this.enter();\n } else {\n this.leave();\n }\n }\n } else if (entry.isIntersecting) {\n this.enter();\n }\n\n this.isObserverActive = true;\n }, this.options());\n\n setTimeout(() => this.observer?.observe(this.el.nativeElement), 0);\n\n // Reset\n\n this.resetObserver = new IntersectionObserver(\n ([entry]) => {\n if (entry.boundingClientRect.top > 0 && !entry.isIntersecting) {\n this.el.nativeElement.style.opacity = this.enterClass() ? '0' : '';\n removeClass(this.el.nativeElement, [this.enterClass(), this.leaveClass()]);\n\n this.resetObserver?.unobserve(this.el.nativeElement);\n }\n\n this.animationState = undefined;\n },\n { ...this.options(), threshold: 0 }\n );\n }\n\n enter() {\n const enterClass = this.enterClass();\n\n if (this.animationState !== 'enter' && enterClass) {\n this.el.nativeElement.style.opacity = '';\n removeClass(this.el.nativeElement, this.leaveClass());\n addClass(this.el.nativeElement, enterClass);\n\n if (this.once()) {\n this.unbindIntersectionObserver();\n }\n\n this.bindAnimationEvents();\n this.animationState = 'enter';\n }\n }\n\n leave() {\n const leaveClass = this.leaveClass();\n\n if (this.animationState !== 'leave' && leaveClass) {\n this.el.nativeElement.style.opacity = this.enterClass() ? '0' : '';\n removeClass(this.el.nativeElement, this.enterClass());\n addClass(this.el.nativeElement, leaveClass);\n\n this.bindAnimationEvents();\n this.animationState = 'leave';\n }\n }\n\n bindAnimationEvents() {\n if (!this.animationEndListener) {\n this.animationEndListener = this.renderer.listen(this.el.nativeElement, 'animationend', () => {\n removeClass(this.el.nativeElement, [this.enterClass(), this.leaveClass()]);\n\n if (!this.once()) {\n this.resetObserver?.observe(this.el.nativeElement);\n }\n\n this.unbindAnimationEvents();\n });\n }\n }\n\n unbindAnimationEvents() {\n if (this.animationEndListener) {\n this.animationEndListener();\n this.animationEndListener = null;\n }\n }\n\n unbindIntersectionObserver() {\n this.observer?.unobserve(this.el.nativeElement);\n this.resetObserver?.unobserve(this.el.nativeElement);\n this.isObserverActive = false;\n }\n\n onDestroy() {\n this.unbindAnimationEvents();\n this.unbindIntersectionObserver();\n }\n}\n\n@NgModule({\n imports: [AnimateOnScroll],\n exports: [AnimateOnScroll]\n})\nexport class AnimateOnScrollModule {}\n"],"mappings":"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"}