primeng 22.1.0 → 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 -578
  2. package/fesm2022/primeng-accordion.mjs.map +1 -1
  3. package/fesm2022/primeng-animateonscroll.mjs +266 -165
  4. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  5. package/fesm2022/primeng-api.mjs +888 -847
  6. package/fesm2022/primeng-api.mjs.map +1 -1
  7. package/fesm2022/primeng-autocomplete.mjs +2534 -1592
  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 -101
  18. package/fesm2022/primeng-base.mjs.map +1 -1
  19. package/fesm2022/primeng-basecomponent.mjs +528 -489
  20. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  21. package/fesm2022/primeng-baseeditableholder.mjs +131 -69
  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 -96
  28. package/fesm2022/primeng-bind.mjs.map +1 -1
  29. package/fesm2022/primeng-blockui.mjs +360 -228
  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 -703
  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 -1773
  40. package/fesm2022/primeng-carousel.mjs.map +1 -1
  41. package/fesm2022/primeng-cascadeselect.mjs +2373 -1364
  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 -353
  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 -315
  54. package/fesm2022/primeng-commandmenu.mjs.map +1 -1
  55. package/fesm2022/primeng-compare.mjs +843 -480
  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 -540
  60. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  61. package/fesm2022/primeng-confirmpopup.mjs +810 -531
  62. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  63. package/fesm2022/primeng-contextmenu.mjs +1862 -1051
  64. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  65. package/fesm2022/primeng-dataview.mjs +1130 -549
  66. package/fesm2022/primeng-dataview.mjs.map +1 -1
  67. package/fesm2022/primeng-datepicker.mjs +3750 -3354
  68. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  69. package/fesm2022/primeng-dialog.mjs +1635 -968
  70. package/fesm2022/primeng-dialog.mjs.map +1 -1
  71. package/fesm2022/primeng-divider.mjs +272 -148
  72. package/fesm2022/primeng-divider.mjs.map +1 -1
  73. package/fesm2022/primeng-dock.mjs +609 -385
  74. package/fesm2022/primeng-dock.mjs.map +1 -1
  75. package/fesm2022/primeng-dom.mjs +599 -761
  76. package/fesm2022/primeng-dom.mjs.map +1 -1
  77. package/fesm2022/primeng-dragdrop.mjs +323 -311
  78. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  79. package/fesm2022/primeng-drawer.mjs +913 -482
  80. package/fesm2022/primeng-drawer.mjs.map +1 -1
  81. package/fesm2022/primeng-dynamicdialog.mjs +828 -928
  82. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  83. package/fesm2022/primeng-editor.mjs +547 -390
  84. package/fesm2022/primeng-editor.mjs.map +1 -1
  85. package/fesm2022/primeng-fieldset.mjs +559 -274
  86. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  87. package/fesm2022/primeng-fileupload.mjs +1836 -1047
  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 -1406
  96. package/fesm2022/primeng-galleria.mjs.map +1 -1
  97. package/fesm2022/primeng-gallery.mjs +2768 -1798
  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 -534
  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 -2180
  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 -1379
  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 -375
  233. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  234. package/fesm2022/primeng-inputpassword.mjs +179 -98
  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 -170
  239. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  240. package/fesm2022/primeng-keyfilter.mjs +268 -243
  241. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  242. package/fesm2022/primeng-knob.mjs +627 -403
  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 -1593
  249. package/fesm2022/primeng-listbox.mjs.map +1 -1
  250. package/fesm2022/primeng-megamenu.mjs +2006 -1117
  251. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  252. package/fesm2022/primeng-menu.mjs +1437 -845
  253. package/fesm2022/primeng-menu.mjs.map +1 -1
  254. package/fesm2022/primeng-menubar.mjs +1832 -972
  255. package/fesm2022/primeng-menubar.mjs.map +1 -1
  256. package/fesm2022/primeng-message.mjs +474 -243
  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 -1898
  263. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  264. package/fesm2022/primeng-orderlist.mjs +1308 -678
  265. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  266. package/fesm2022/primeng-organizationchart.mjs +912 -597
  267. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  268. package/fesm2022/primeng-overlay.mjs +929 -610
  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 +961 -505
  273. package/fesm2022/primeng-paginator.mjs.map +1 -1
  274. package/fesm2022/primeng-panel.mjs +668 -347
  275. package/fesm2022/primeng-panel.mjs.map +1 -1
  276. package/fesm2022/primeng-panelmenu.mjs +1842 -966
  277. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  278. package/fesm2022/primeng-passthrough.mjs +10 -20
  279. package/fesm2022/primeng-passthrough.mjs.map +1 -1
  280. package/fesm2022/primeng-password.mjs +1518 -858
  281. package/fesm2022/primeng-password.mjs.map +1 -1
  282. package/fesm2022/primeng-picklist.mjs +2270 -1253
  283. package/fesm2022/primeng-picklist.mjs.map +1 -1
  284. package/fesm2022/primeng-popover.mjs +656 -434
  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 -294
  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 -170
  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 -1047
  299. package/fesm2022/primeng-scroller.mjs.map +1 -1
  300. package/fesm2022/primeng-scrollpanel.mjs +568 -454
  301. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  302. package/fesm2022/primeng-scrolltop.mjs +509 -261
  303. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  304. package/fesm2022/primeng-select.mjs +2948 -1714
  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 -1413
  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 -704
  315. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  316. package/fesm2022/primeng-splitbutton.mjs +889 -340
  317. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  318. package/fesm2022/primeng-splitter.mjs +997 -762
  319. package/fesm2022/primeng-splitter.mjs.map +1 -1
  320. package/fesm2022/primeng-stepper.mjs +1355 -645
  321. package/fesm2022/primeng-stepper.mjs.map +1 -1
  322. package/fesm2022/primeng-steps.mjs +523 -407
  323. package/fesm2022/primeng-steps.mjs.map +1 -1
  324. package/fesm2022/primeng-styleclass.mjs +446 -330
  325. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  326. package/fesm2022/primeng-table.mjs +9765 -5849
  327. package/fesm2022/primeng-table.mjs.map +1 -1
  328. package/fesm2022/primeng-tabs.mjs +1357 -815
  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 -204
  335. package/fesm2022/primeng-textarea.mjs.map +1 -1
  336. package/fesm2022/primeng-tieredmenu.mjs +1917 -1094
  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 -928
  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 -765
  349. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  350. package/fesm2022/primeng-tree.mjs +2681 -1888
  351. package/fesm2022/primeng-tree.mjs.map +1 -1
  352. package/fesm2022/primeng-treeselect.mjs +1678 -927
  353. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  354. package/fesm2022/primeng-treetable.mjs +5849 -3742
  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 -109
  459. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  460. package/fesm2022/primeng-utils.mjs +238 -328
  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 +7 -2
  465. package/types/primeng-accordion.d.ts +289 -221
  466. package/types/primeng-animateonscroll.d.ts +89 -61
  467. package/types/primeng-api.d.ts +1760 -1790
  468. package/types/primeng-autocomplete.d.ts +1054 -757
  469. package/types/primeng-autofocus.d.ts +27 -24
  470. package/types/primeng-avatar.d.ts +153 -117
  471. package/types/primeng-avatargroup.d.ts +46 -43
  472. package/types/primeng-badge.d.ts +105 -81
  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 -427
  482. package/types/primeng-buttongroup.d.ts +27 -33
  483. package/types/primeng-card.d.ts +131 -122
  484. package/types/primeng-carousel.d.ts +800 -632
  485. package/types/primeng-cascadeselect.d.ts +754 -565
  486. package/types/primeng-chart.d.ts +160 -116
  487. package/types/primeng-checkbox.d.ts +299 -211
  488. package/types/primeng-chip.d.ts +189 -147
  489. package/types/primeng-classnames.d.ts +23 -21
  490. package/types/primeng-colorpicker.d.ts +325 -272
  491. package/types/primeng-commandmenu.d.ts +213 -165
  492. package/types/primeng-compare.d.ts +267 -191
  493. package/types/primeng-config.d.ts +294 -304
  494. package/types/primeng-confirmdialog.d.ts +505 -328
  495. package/types/primeng-confirmpopup.d.ts +254 -214
  496. package/types/primeng-contextmenu.d.ts +522 -368
  497. package/types/primeng-dataview.d.ts +498 -345
  498. package/types/primeng-datepicker.d.ts +1269 -972
  499. package/types/primeng-dialog.d.ts +668 -465
  500. package/types/primeng-divider.d.ts +114 -100
  501. package/types/primeng-dock.d.ts +207 -175
  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 +355 -257
  505. package/types/primeng-dynamicdialog.d.ts +528 -540
  506. package/types/primeng-editor.d.ts +211 -165
  507. package/types/primeng-fieldset.d.ts +199 -166
  508. package/types/primeng-fileupload.d.ts +727 -526
  509. package/types/primeng-floatlabel.d.ts +55 -51
  510. package/types/primeng-fluid.d.ts +37 -39
  511. package/types/primeng-focustrap.d.ts +30 -27
  512. package/types/primeng-galleria.d.ts +570 -433
  513. package/types/primeng-gallery.d.ts +754 -552
  514. package/types/primeng-iconfield.d.ts +54 -45
  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 +24 -25
  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 +38 -40
  572. package/types/primeng-image.d.ts +404 -311
  573. package/types/primeng-imagecompare.d.ts +94 -80
  574. package/types/primeng-inplace.d.ts +126 -114
  575. package/types/primeng-inputcolor.d.ts +645 -508
  576. package/types/primeng-inputgroup.d.ts +42 -44
  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 +520 -365
  580. package/types/primeng-inputnumber.d.ts +573 -408
  581. package/types/primeng-inputotp.d.ts +206 -159
  582. package/types/primeng-inputpassword.d.ts +60 -47
  583. package/types/primeng-inputtags.d.ts +453 -301
  584. package/types/primeng-inputtext.d.ts +130 -96
  585. package/types/primeng-keyfilter.d.ts +62 -53
  586. package/types/primeng-knob.d.ts +257 -186
  587. package/types/primeng-label.d.ts +37 -39
  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 +536 -386
  591. package/types/primeng-menu.d.ts +478 -363
  592. package/types/primeng-menubar.d.ts +495 -354
  593. package/types/primeng-message.d.ts +192 -151
  594. package/types/primeng-metergroup.d.ts +249 -189
  595. package/types/primeng-motion.d.ts +601 -385
  596. package/types/primeng-multiselect.d.ts +1193 -861
  597. package/types/primeng-orderlist.d.ts +539 -393
  598. package/types/primeng-organizationchart.d.ts +236 -195
  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 +410 -314
  602. package/types/primeng-panel.d.ts +267 -217
  603. package/types/primeng-panelmenu.d.ts +255 -231
  604. package/types/primeng-passthrough.d.ts +5 -7
  605. package/types/primeng-password.d.ts +606 -433
  606. package/types/primeng-picklist.d.ts +1042 -759
  607. package/types/primeng-popover.d.ts +235 -176
  608. package/types/primeng-progressbar.d.ts +131 -102
  609. package/types/primeng-progressspinner.d.ts +145 -111
  610. package/types/primeng-radiobutton.d.ts +219 -171
  611. package/types/primeng-rating.d.ts +240 -192
  612. package/types/primeng-ripple.d.ts +39 -45
  613. package/types/primeng-scrollarea.d.ts +292 -243
  614. package/types/primeng-scroller.d.ts +523 -390
  615. package/types/primeng-scrollpanel.d.ts +135 -131
  616. package/types/primeng-scrolltop.d.ts +170 -126
  617. package/types/primeng-select.d.ts +1014 -741
  618. package/types/primeng-selectbutton.d.ts +239 -167
  619. package/types/primeng-sidebar.d.ts +793 -562
  620. package/types/primeng-skeleton.d.ts +116 -87
  621. package/types/primeng-slider.d.ts +378 -311
  622. package/types/primeng-speeddial.d.ts +495 -375
  623. package/types/primeng-splitbutton.d.ts +382 -243
  624. package/types/primeng-splitter.d.ts +392 -301
  625. package/types/primeng-stepper.d.ts +417 -257
  626. package/types/primeng-steps.d.ts +158 -137
  627. package/types/primeng-styleclass.d.ts +163 -105
  628. package/types/primeng-table.d.ts +2898 -1912
  629. package/types/primeng-tabs.d.ts +463 -307
  630. package/types/primeng-tag.d.ts +107 -88
  631. package/types/primeng-terminal.d.ts +132 -120
  632. package/types/primeng-textarea.d.ts +146 -110
  633. package/types/primeng-tieredmenu.d.ts +573 -401
  634. package/types/primeng-timeline.d.ts +126 -112
  635. package/types/primeng-toast.d.ts +313 -252
  636. package/types/primeng-togglebutton.d.ts +255 -185
  637. package/types/primeng-toggleswitch.d.ts +190 -144
  638. package/types/primeng-toolbar.d.ts +83 -79
  639. package/types/primeng-tooltip.d.ts +335 -235
  640. package/types/primeng-tree.d.ts +763 -562
  641. package/types/primeng-treeselect.d.ts +750 -544
  642. package/types/primeng-treetable.d.ts +1839 -1315
  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-splitter.mjs","sources":["../../src/splitter/style/splitterstyle.ts","../../src/splitter/splitterpanel.ts","../../src/splitter/splitter.ts","../../src/splitter/primeng-splitter.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/splitter';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => ['p-splitter p-component', 'p-splitter-' + instance.layout()],\n panel: 'p-splitter-panel',\n gutter: 'p-splitter-gutter',\n gutterHandle: 'p-splitter-gutter-handle'\n};\n\n@Injectable()\nexport class SplitterStyle extends BaseStyle {\n name = 'splitter';\n\n style = style;\n\n classes = classes;\n}\n\n/**\n *\n * Splitter is utilized to separate and resize panels.\n *\n * [Live Demo](https://www.primeng.org/splitter/)\n *\n * @module splitterstyle\n *\n */\nexport enum SplitterClasses {\n /**\n * Class name of the root element\n */\n root = 'p-splitter',\n /**\n * Class name of the panel element\n */\n panel = 'p-splitter-panel',\n /**\n * Class name of the gutter element\n */\n gutter = 'p-splitter-gutter',\n /**\n * Class name of the handle element\n */\n gutterHandle = 'p-splitter-gutter-handle'\n}\n\nexport interface SplitterStyle extends BaseStyle {}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, numberAttribute, TemplateRef, viewChild, ViewEncapsulation } from '@angular/core';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind } from 'primeng/bind';\nimport type { SplitterPanelPassThrough } from 'primeng/types/splitter';\nimport { SplitterStyle } from './style/splitterstyle';\n\n/**\n * SplitterPanel is a helper component for Splitter, used to define a single resizable panel\n * together with its size constraints (min/max size, collapsible behavior).\n * @group Components\n */\n@Component({\n selector: 'p-splitterpanel, p-splitter-panel',\n standalone: true,\n template: `\n <ng-template #content>\n <ng-content></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [Bind],\n providers: [SplitterStyle, { provide: PARENT_INSTANCE, useExisting: SplitterPanel }]\n})\nexport class SplitterPanel extends BaseComponent<SplitterPanelPassThrough> {\n componentName = 'SplitterPanel';\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n /**\n * Initial size of the panel relative to 100%.\n * @group Props\n */\n size = input<number | undefined>(undefined, { transform: (value: unknown) => (value == null ? undefined : numberAttribute(value)) });\n\n /**\n * Minimum size of the panel relative to 100%.\n * @defaultValue 0\n * @group Props\n */\n minSize = input(0, { transform: numberAttribute });\n\n /**\n * Maximum size of the panel relative to 100%.\n * @defaultValue 100\n * @group Props\n */\n maxSize = input(100, { transform: numberAttribute });\n\n /**\n * When enabled, the panel can collapse below its `minSize` down to `collapsedSize`.\n * @defaultValue false\n * @group Props\n */\n collapsible = input(false, { transform: booleanAttribute });\n\n /**\n * Size of the panel when collapsed, relative to 100%.\n * @defaultValue 0\n * @group Props\n */\n collapsedSize = input(0, { transform: numberAttribute });\n\n /**\n * @ignore\n * Content of the panel, stamped by the parent Splitter into the panel wrapper.\n */\n contentTemplate = viewChild<TemplateRef<any>>('content');\n\n /**\n * @ignore\n * `class`/`style` set directly on the `<p-splitterpanel>` element are forwarded by the parent\n * Splitter onto the panel it renders, so authors can style the panel inline as expected.\n */\n get hostClass(): string {\n return this.el.nativeElement.className;\n }\n\n get hostStyle(): string | null {\n return this.el.nativeElement.getAttribute('style');\n }\n\n _componentStyle = inject(SplitterStyle);\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptm('root'));\n }\n}\n","import { isPlatformBrowser, NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, contentChildren, effect, ElementRef, inject, input, NgModule, numberAttribute, output, signal, TemplateRef, untracked, ViewEncapsulation } from '@angular/core';\nimport { isRTL } from '@primeuix/utils';\nimport { SharedModule } from 'primeng/api';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind, BindModule } from 'primeng/bind';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport type { CSSProperties } from 'primeng/types/shared';\nimport type { SplitterCollapseEvent, SplitterLayout, SplitterPassThrough, SplitterResizeEndEvent, SplitterResizeEvent, SplitterResizeStartEvent, SplitterStateStorage } from 'primeng/types/splitter';\nimport { SplitterPanel } from './splitterpanel';\nimport { SplitterStyle } from './style/splitterstyle';\n\n/**\n * Runtime configuration of a panel, resolved either from a SplitterPanel component or from the\n * array-based inputs (minSizes/panelSizes) for backward compatibility.\n */\ninterface SplitterPanelMeta {\n minSize: number;\n maxSize: number;\n collapsible: boolean;\n collapsedSize: number;\n size: number | undefined;\n}\n\ninterface SplitterPanelInfo extends SplitterPanelMeta {\n index: number;\n collapsed: boolean;\n}\n\n/**\n * Splitter is utilized to separate and resize panels.\n * @group Components\n */\n@Component({\n selector: 'p-splitter',\n standalone: true,\n imports: [NgTemplateOutlet, SharedModule, BindModule],\n template: `\n @for (panel of panels(); track $index; let i = $index) {\n <div\n [pBind]=\"ptm('panel')\"\n [class]=\"panelClass()[i]\"\n [style]=\"panelInlineStyle()[i]\"\n [style.flex]=\"panelFlex()[i]\"\n [style.overflow]=\"'hidden'\"\n [style.min-width]=\"layout() === 'horizontal' ? '0' : null\"\n [style.min-height]=\"layout() === 'vertical' ? '0' : null\"\n tabindex=\"-1\"\n [attr.data-index]=\"i\"\n [attr.data-collapsed]=\"collapsed()[i] ? '' : null\"\n [attr.data-resizing]=\"isResizing() && resizingIndex() === i ? '' : null\"\n >\n <ng-container *ngTemplateOutlet=\"panel\"></ng-container>\n </div>\n @if (i !== panels().length - 1) {\n <div\n [pBind]=\"ptm('gutter')\"\n [class]=\"cx('gutter')\"\n role=\"separator\"\n [attr.tabindex]=\"disabled() ? -1 : 0\"\n [attr.aria-orientation]=\"layout()\"\n [attr.aria-valuenow]=\"prevSize\"\n [attr.aria-valuemin]=\"round(panelMetas()[i]?.minSize)\"\n [attr.aria-valuemax]=\"round(100 - (panelMetas()[i + 1]?.minSize ?? 0))\"\n [attr.aria-disabled]=\"disabled() || null\"\n [attr.data-orientation]=\"layout()\"\n [attr.data-resizing]=\"isResizing() && resizingIndex() === i ? '' : null\"\n [attr.data-disabled]=\"disabled() ? '' : null\"\n [style]=\"gutterInlineStyle()\"\n (pointerdown)=\"onGutterPointerDown($event, i)\"\n (keyup)=\"onGutterKeyUp($event)\"\n (keydown)=\"onGutterKeyDown($event, i)\"\n >\n <div [pBind]=\"ptm('gutterHandle')\" [class]=\"cx('gutterHandle')\" [attr.data-orientation]=\"layout()\" [attr.data-resizing]=\"isResizing() && resizingIndex() === i ? '' : null\"></div>\n </div>\n }\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class]': 'rootClass()',\n '[attr.data-orientation]': 'layout()',\n '[attr.data-resizing]': 'dataResizing()',\n '[attr.data-disabled]': \"disabled() ? '' : null\",\n '[attr.data-p]': 'dataP()'\n },\n providers: [SplitterStyle, { provide: PARENT_INSTANCE, useExisting: Splitter }],\n hostDirectives: [Bind]\n})\nexport class Splitter extends BaseComponent<SplitterPassThrough> {\n componentName = 'Splitter';\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n /**\n * Style class of the component.\n * @group Props\n */\n styleClass = input<string>();\n\n /**\n * Style class of the panel.\n * @group Props\n */\n panelStyleClass = input<string>();\n\n /**\n * Inline style of the panel.\n * @group Props\n */\n panelStyle = input<CSSProperties>();\n\n /**\n * Defines where a stateful splitter keeps its state, valid values are 'session' for sessionStorage and 'local' for localStorage.\n * @group Props\n */\n stateStorage = input<SplitterStateStorage>('session');\n\n /**\n * Storage identifier of a stateful Splitter.\n * @group Props\n */\n stateKey = input<string | null>(null);\n\n /**\n * Orientation of the panels. Valid values are 'horizontal' and 'vertical'.\n * @group Props\n */\n layout = input<SplitterLayout>('horizontal');\n\n /**\n * Size of the divider in pixels.\n * @group Props\n */\n gutterSize = input(1, { transform: numberAttribute });\n\n /**\n * Step factor to increment/decrement the size of the panels while pressing the arrow keys.\n * @group Props\n */\n step = input(5, { transform: numberAttribute });\n\n /**\n * Minimum size of the elements relative to 100%. Used when panels are defined via `#panel` templates;\n * when SplitterPanel components are used, the per-panel `minSize` input takes precedence.\n * @group Props\n */\n minSizes = input<number[]>([]);\n\n /**\n * Size of the elements relative to 100%. Used when panels are defined via `#panel` templates;\n * when SplitterPanel components are used, the per-panel `size` input takes precedence.\n * @group Props\n */\n panelSizes = input<number[]>([]);\n\n /**\n * When present, it disables the component and prevents resizing.\n * @defaultValue false\n * @group Props\n */\n disabled = input(false, { transform: booleanAttribute });\n\n /**\n * Callback to invoke when resize ends.\n * @param {SplitterResizeEndEvent} event - Custom panel resize end event\n * @group Emits\n */\n onResizeEnd = output<SplitterResizeEndEvent>();\n\n /**\n * Callback to invoke when resize starts.\n * @param {SplitterResizeStartEvent} event - Custom panel resize start event\n * @group Emits\n */\n onResizeStart = output<SplitterResizeStartEvent>();\n\n /**\n * Callback to invoke continuously while a gutter is being dragged.\n * @param {SplitterResizeEvent} event - Custom panel resize event\n * @group Emits\n */\n onResize = output<SplitterResizeEvent>();\n\n /**\n * Callback to invoke when a collapsible panel collapses or expands.\n * @param {SplitterCollapseEvent} event - Custom collapse event\n * @group Emits\n */\n onCollapse = output<SplitterCollapseEvent>();\n\n /**\n * Panels declared via SplitterPanel components.\n * @ignore\n */\n panelComponents = contentChildren(SplitterPanel);\n\n /**\n * Panels declared via `<ng-template #panel>` (backward compatible API).\n * @ignore\n */\n panelChildren = contentChildren<TemplateRef<void>>('panel');\n\n /**\n * Resolved panel content templates, sourced from SplitterPanel components when present,\n * otherwise from `#panel` templates.\n */\n panels = computed<TemplateRef<any>[]>(() => {\n const components = this.panelComponents();\n\n if (components && components.length) {\n const templates = components.map((panel) => panel.contentTemplate());\n return templates.every((template): template is TemplateRef<any> => !!template) ? (templates as TemplateRef<any>[]) : [];\n }\n\n return [...this.panelChildren()];\n });\n\n /**\n * Resolved per-panel configuration (min/max/collapsible/collapsedSize/size).\n */\n panelMetas = computed<SplitterPanelMeta[]>(() => {\n const components = this.panelComponents();\n\n if (components && components.length) {\n return components.map((panel) => ({\n minSize: panel.minSize() ?? 0,\n maxSize: panel.maxSize() ?? 100,\n collapsible: panel.collapsible() ?? false,\n collapsedSize: panel.collapsedSize() ?? 0,\n size: panel.size()\n }));\n }\n\n const count = this.panelChildren().length;\n const minSizes = this.minSizes();\n const panelSizes = this.panelSizes();\n\n return Array.from({ length: count }, (_, i) => ({\n minSize: minSizes[i] ?? 0,\n maxSize: 100,\n collapsible: false,\n collapsedSize: 0,\n size: panelSizes[i]\n }));\n });\n\n /**\n * Value-based signature of the panel configuration. Lets the (re)initialization effect ignore\n * array-literal input bindings that change identity but not value on every parent change detection.\n */\n panelSignature = computed(() => {\n const metaSig = this.panelMetas()\n .map((meta) => `${meta.size ?? ''}:${meta.minSize}:${meta.maxSize}:${meta.collapsible}:${meta.collapsedSize}`)\n .join(',');\n\n return `${metaSig}#${this.panelSizes().join(',')}`;\n });\n\n /**\n * Class for each panel wrapper: the base panel class plus the splitter-level `panelStyleClass`\n * and the `class` set directly on the matching SplitterPanel.\n */\n panelClass = computed(() => {\n const components = this.panelComponents();\n const base = this.cn(this.cx('panel'), this.panelStyleClass());\n\n return this.panels().map((_, i) => this.cn(base, components[i]?.hostClass));\n });\n\n /**\n * Inline style for each panel wrapper: the `style` set directly on the matching SplitterPanel,\n * falling back to the splitter-level `panelStyle`.\n */\n panelInlineStyle = computed(() => {\n const components = this.panelComponents();\n const fallback = this.panelStyle();\n\n return this.panels().map((_, i) => components[i]?.hostStyle ?? fallback);\n });\n\n dragging: boolean = false;\n\n isResizing = signal(false);\n\n resizingIndex = signal<number | null>(null);\n\n collapsed = signal<boolean[]>([]);\n\n /**\n * Flex values applied to each panel wrapper, e.g. `35 1 0px`. Bound declaratively so panel sizing\n * never depends on imperative DOM timing.\n */\n panelFlex = signal<string[]>([]);\n\n dataResizing = computed(() => (this.isResizing() ? '' : null));\n\n pointerMoveListener: VoidListener;\n\n pointerUpListener: VoidListener;\n\n size: Nullable<number>;\n\n gutterElement: Nullable<ElementRef | HTMLElement>;\n\n startPos: Nullable<number>;\n\n _panelSizes: number[] = [];\n\n panelRegistry: SplitterPanelInfo[] = [];\n\n initialSizes: number[] = [];\n\n initialCollapsed: boolean[] = [];\n\n reportedCollapsed: boolean[] = [];\n\n initialTotal: number = 100;\n\n prevPanelIndex: Nullable<number>;\n\n timer: ReturnType<typeof setTimeout> | undefined;\n\n prevSize: string | undefined;\n\n _componentStyle = inject(SplitterStyle);\n\n rootClass = computed(() => this.cn(this.cx('root'), this.styleClass()));\n\n constructor() {\n super();\n effect(() => {\n // Re-initialize whenever the set of panels or their (value-based) size configuration changes.\n const panels = this.panels();\n this.panelSignature();\n\n if (!isPlatformBrowser(this.platformId) || panels.length === 0) {\n return;\n }\n\n // Never clobber sizes mid-drag; the resizing flag is read untracked so ending a drag\n // does not by itself re-trigger initialization.\n if (untracked(() => this.isResizing())) {\n return;\n }\n\n this.initializePanels();\n });\n }\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));\n }\n\n buildPanelRegistry() {\n const metas = this.panelMetas();\n const prev = this.panelRegistry ?? [];\n\n this.panelRegistry = metas.map((meta, i) => ({\n index: i,\n minSize: meta.minSize ?? 0,\n maxSize: meta.maxSize ?? 100,\n collapsible: meta.collapsible ?? false,\n collapsedSize: meta.collapsedSize ?? 0,\n size: meta.size,\n collapsed: prev[i]?.collapsed ?? false\n }));\n }\n\n initializePanels() {\n const panels = this.panels();\n\n if (!panels.length) {\n return;\n }\n\n this.buildPanelRegistry();\n\n let initialized = false;\n\n if (this.isStateful()) {\n initialized = this.restoreState();\n }\n\n if (!initialized) {\n const _panelSizes: number[] = [];\n const inputPanelSizes = this.panelSizes();\n\n panels.forEach((_, i) => {\n const meta = this.panelRegistry[i];\n // Splitter-level `panelSizes` takes precedence, then the panel's own `size`, then an equal split.\n _panelSizes[i] = inputPanelSizes[i] ?? meta?.size ?? 100 / panels.length;\n });\n\n this.panelRegistry.forEach((info, i) => {\n if (info?.collapsible) {\n info.collapsed = _panelSizes[i] <= (info.collapsedSize ?? 0);\n }\n });\n\n this._panelSizes = _panelSizes;\n this.prevSize = parseFloat(String(_panelSizes[0])).toFixed(4);\n }\n\n this.syncCollapsedState();\n this.updateFlex();\n }\n\n updateFlex() {\n this.panelFlex.set(this._panelSizes.map((panelSize) => panelSize + ' 1 0px'));\n }\n\n syncCollapsedState() {\n this.collapsed.set(this.panelRegistry.map((info) => info.collapsed));\n }\n\n getPanelMinSize(index: number): number {\n return this.panelRegistry?.[index]?.minSize ?? 0;\n }\n\n getPanelMaxSize(index: number): number {\n return this.panelRegistry?.[index]?.maxSize ?? 100;\n }\n\n resizeStart(event: PointerEvent | KeyboardEvent, index: number, isKeyDown?: boolean) {\n const currentTarget = (event.currentTarget as HTMLElement) || (event.target as HTMLElement);\n\n if (currentTarget) {\n this.gutterElement = currentTarget;\n }\n\n const panelElements = (this.el as ElementRef).nativeElement.querySelectorAll(':scope > [data-index]');\n let totalPanelPx = 0;\n\n for (const el of panelElements) {\n const rect = el.getBoundingClientRect();\n totalPanelPx += this.horizontal() ? rect.width : rect.height;\n }\n\n this.size = totalPanelPx;\n\n if (!isKeyDown) {\n const pointerEvent = event as PointerEvent;\n\n this.dragging = true;\n this.startPos = this.horizontal() ? pointerEvent.pageX : pointerEvent.pageY;\n this.isResizing.set(true);\n this.resizingIndex.set(index);\n }\n\n this.initialSizes = [...this._panelSizes];\n this.initialCollapsed = this.panelRegistry.map((info) => info.collapsed);\n this.reportedCollapsed = this.panelRegistry.map((info) => info.collapsed);\n this.initialTotal = this.initialSizes.reduce((a, b) => a + b, 0) || 100;\n this.prevPanelIndex = index;\n\n if (!isKeyDown) {\n this.onResizeStart.emit({ originalEvent: event, sizes: [...this._panelSizes] });\n }\n }\n\n onResizeMove(event: PointerEvent | KeyboardEvent, step?: number, isKeyDown?: boolean) {\n if (this.size === null || this.prevPanelIndex === null || this.initialSizes.length === 0) {\n return;\n }\n\n const gutterIdx = this.prevPanelIndex!;\n const total = this.initialTotal;\n let delta: number;\n\n if (isKeyDown) {\n delta = (total * (step ?? 0)) / this.size!;\n } else {\n const pointerEvent = event as PointerEvent;\n const pos = this.horizontal() ? pointerEvent.pageX : pointerEvent.pageY;\n\n if (this.horizontal() && isRTL(this.el.nativeElement)) {\n delta = (((this.startPos ?? 0) - pos) * total) / this.size!;\n } else {\n delta = ((pos - (this.startPos ?? 0)) * total) / this.size!;\n }\n }\n\n const newSizes = [...this.initialSizes];\n\n this.panelRegistry.forEach((info, i) => {\n if (this.initialCollapsed[i] !== undefined) {\n info.collapsed = this.initialCollapsed[i];\n }\n });\n\n if (delta > 0) {\n this.distribute(newSizes, gutterIdx, delta, isKeyDown, 'forward');\n } else if (delta < 0) {\n this.distribute(newSizes, gutterIdx + 1, -delta, isKeyDown, 'backward');\n }\n\n this.panelRegistry.forEach((info, i) => {\n if (info.collapsed !== this.reportedCollapsed[i]) {\n this.reportedCollapsed[i] = info.collapsed;\n this.onCollapse.emit({ index: i, collapsed: info.collapsed, sizes: [...newSizes] });\n }\n });\n\n this._panelSizes = newSizes;\n this.prevSize = newSizes[gutterIdx].toFixed(4);\n\n this.updateFlex();\n this.syncCollapsedState();\n this.onResize.emit({ originalEvent: event, sizes: [...newSizes] });\n }\n\n distribute(newSizes: number[], growIdx: number, requested: number, isKeyDown: boolean | undefined, direction: 'forward' | 'backward') {\n const growInfo = this.panelRegistry[growIdx];\n const max = this.getPanelMaxSize(growIdx);\n let toGrow = Math.min(requested, Math.max(0, max - newSizes[growIdx]));\n\n if (growInfo?.collapsible && growInfo.collapsed) {\n // Re-open symmetrically: any outward drag/step pops a collapsed panel back to (at least) its minimum size.\n const gapSize = this.getPanelMinSize(growIdx) - growInfo.collapsedSize;\n\n toGrow = Math.max(toGrow, gapSize);\n toGrow = Math.min(toGrow, Math.max(0, max - newSizes[growIdx]));\n }\n\n let shrunk = 0;\n const range = direction === 'forward' ? this.range(growIdx + 1, newSizes.length, 1) : this.range(growIdx - 1, -1, -1);\n\n for (const i of range) {\n if (shrunk >= toGrow) break;\n\n const info = this.panelRegistry[i];\n const min = this.getPanelMinSize(i);\n\n if (info?.collapsed) continue;\n\n const effectiveMin = info?.collapsible ? (info.collapsedSize ?? 0) : min;\n const available = Math.max(0, newSizes[i] - effectiveMin);\n const amount = Math.min(toGrow - shrunk, available);\n const rawSize = newSizes[i] - amount;\n\n const validated = this.validatePanelSize(rawSize, info, min, isKeyDown);\n const actualShrunk = newSizes[i] - validated.size;\n\n newSizes[i] = validated.size;\n shrunk += actualShrunk;\n\n if (info) info.collapsed = validated.collapsed;\n }\n\n newSizes[growIdx] += shrunk;\n\n if (growInfo?.collapsible && growInfo.collapsed && newSizes[growIdx] >= this.getPanelMinSize(growIdx)) {\n growInfo.collapsed = false;\n }\n }\n\n validatePanelSize(rawSize: number, info: SplitterPanelInfo | undefined, min: number, isKeyDown: boolean | undefined): { size: number; collapsed: boolean } {\n if (!info?.collapsible) {\n return { size: Math.max(rawSize, min), collapsed: false };\n }\n\n const collapsedSize = info.collapsedSize ?? 0;\n\n if (rawSize >= min) {\n return { size: rawSize, collapsed: false };\n }\n\n // The panel stops shrinking at its minimum size; the moment the user keeps dragging (or\n // stepping) past that minimum, a collapsible panel snaps to its collapsed state.\n return { size: collapsedSize, collapsed: true };\n }\n\n range(start: number, end: number, step: number): number[] {\n const out: number[] = [];\n\n for (let i = start; step > 0 ? i < end : i > end; i += step) out.push(i);\n\n return out;\n }\n\n resizeEnd(event: PointerEvent | KeyboardEvent) {\n if (this.isStateful()) {\n this.saveState();\n }\n\n this.onResizeEnd.emit({ originalEvent: event, sizes: [...this._panelSizes] });\n this.isResizing.set(false);\n this.resizingIndex.set(null);\n this.updateFlex();\n this.clear();\n }\n\n onGutterPointerDown(event: PointerEvent, index: number) {\n if (this.disabled()) {\n return;\n }\n\n this.resizeStart(event, index);\n this.bindPointerListeners();\n }\n\n repeat(event: KeyboardEvent, index: number, step: number) {\n this.resizeStart(event, index, true);\n this.onResizeMove(event, step, true);\n }\n\n setTimer(event: KeyboardEvent, index: number, step: number) {\n if (!this.timer) {\n this.onResizeStart.emit({ originalEvent: event, sizes: [...this._panelSizes] });\n this.repeat(event, index, step);\n this.timer = setInterval(() => {\n this.repeat(event, index, step);\n }, 40);\n }\n }\n\n clearTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = undefined;\n }\n }\n\n onGutterKeyUp(event: KeyboardEvent) {\n if (!this.timer) return;\n this.clearTimer();\n this.resizeEnd(event);\n }\n\n onGutterKeyDown(event: KeyboardEvent, index: number) {\n if (this.disabled()) {\n return;\n }\n\n switch (event.code) {\n case 'ArrowLeft': {\n if (this.layout() === 'horizontal') {\n this.setTimer(event, index, this.step() * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.layout() === 'horizontal') {\n this.setTimer(event, index, this.step());\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown': {\n if (this.layout() === 'vertical') {\n this.setTimer(event, index, this.step());\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.layout() === 'vertical') {\n this.setTimer(event, index, this.step() * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n\n bindPointerListeners() {\n if (!this.pointerMoveListener) {\n this.pointerMoveListener = this.renderer.listen(this.document, 'pointermove', (event: PointerEvent) => {\n this.onResizeMove(event);\n });\n }\n\n if (!this.pointerUpListener) {\n this.pointerUpListener = this.renderer.listen(this.document, 'pointerup', (event: PointerEvent) => {\n this.resizeEnd(event);\n this.unbindPointerListeners();\n });\n }\n }\n\n unbindPointerListeners() {\n if (this.pointerMoveListener) {\n this.pointerMoveListener();\n this.pointerMoveListener = null;\n }\n\n if (this.pointerUpListener) {\n this.pointerUpListener();\n this.pointerUpListener = null;\n }\n }\n\n clear() {\n this.dragging = false;\n this.size = null;\n this.startPos = null;\n this.initialSizes = [];\n this.initialCollapsed = [];\n this.reportedCollapsed = [];\n this.initialTotal = 100;\n this.gutterElement = null;\n this.prevPanelIndex = null;\n }\n\n isStateful() {\n return this.stateKey() != null;\n }\n\n getStorage() {\n if (isPlatformBrowser(this.platformId)) {\n switch (this.stateStorage()) {\n case 'local':\n return this.document.defaultView?.localStorage;\n\n case 'session':\n return this.document.defaultView?.sessionStorage;\n\n default:\n throw new Error(this.stateStorage() + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n } else {\n throw new Error('Storage is not a available by default on the server.');\n }\n }\n\n saveState() {\n this.getStorage()?.setItem(this.stateKey()!, JSON.stringify(this._panelSizes));\n }\n\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage?.getItem(this.stateKey()!);\n\n if (stateString) {\n this._panelSizes = JSON.parse(stateString);\n\n this.panelRegistry.forEach((info, i) => {\n if (info?.collapsible) {\n info.collapsed = this._panelSizes[i] <= (info.collapsedSize ?? 0);\n }\n });\n\n this.prevSize = parseFloat(String(this._panelSizes[0])).toFixed(4);\n\n return true;\n }\n\n return false;\n }\n\n /**\n * Resets the panel sizes using the stored state (for a stateful Splitter), the configured\n * sizes, or the default equal distribution.\n */\n resetState() {\n this.initializePanels();\n }\n\n gutterInlineStyle() {\n return {\n 'touch-action': 'none',\n 'user-select': 'none',\n ...(this.horizontal() ? { width: this.gutterSize() + 'px' } : { height: this.gutterSize() + 'px' })\n };\n }\n\n horizontal() {\n return this.layout() === 'horizontal';\n }\n\n round(value: number | undefined): number {\n return Math.round(value ?? 0);\n }\n\n onDestroy() {\n this.unbindPointerListeners();\n this.clearTimer();\n }\n\n dataP = computed(() => {\n return this.cn({\n [this.layout()!]: this.layout(),\n resizing: this.isResizing(),\n disabled: this.disabled()\n });\n });\n}\n\n@NgModule({\n imports: [Splitter, SplitterPanel, SharedModule, BindModule],\n exports: [Splitter, SplitterPanel, SharedModule, BindModule]\n})\nexport class SplitterModule {}\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-splitter.mjs","names":[],"sources":["../../src/splitter/style/splitterstyle.ts","../../src/splitter/splitterpanel.ts","../../src/splitter/splitter.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/splitter';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => ['p-splitter p-component', 'p-splitter-' + instance.layout()],\n panel: 'p-splitter-panel',\n gutter: 'p-splitter-gutter',\n gutterHandle: 'p-splitter-gutter-handle'\n};\n\n@Injectable()\nexport class SplitterStyle extends BaseStyle {\n name = 'splitter';\n\n style = style;\n\n classes = classes;\n}\n\n/**\n *\n * Splitter is utilized to separate and resize panels.\n *\n * [Live Demo](https://www.primeng.org/splitter/)\n *\n * @module splitterstyle\n *\n */\nexport enum SplitterClasses {\n /**\n * Class name of the root element\n */\n root = 'p-splitter',\n /**\n * Class name of the panel element\n */\n panel = 'p-splitter-panel',\n /**\n * Class name of the gutter element\n */\n gutter = 'p-splitter-gutter',\n /**\n * Class name of the handle element\n */\n gutterHandle = 'p-splitter-gutter-handle'\n}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, numberAttribute, TemplateRef, viewChild, ViewEncapsulation } from '@angular/core';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind } from 'primeng/bind';\nimport type { SplitterPanelPassThrough } from 'primeng/types/splitter';\nimport { SplitterStyle } from './style/splitterstyle';\n\n/**\n * SplitterPanel is a helper component for Splitter, used to define a single resizable panel\n * together with its size constraints (min/max size, collapsible behavior).\n * @group Components\n */\n@Component({\n selector: 'p-splitterpanel, p-splitter-panel',\n standalone: true,\n template: `\n <ng-template #content>\n <ng-content></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [Bind],\n providers: [SplitterStyle, { provide: PARENT_INSTANCE, useExisting: SplitterPanel }]\n})\nexport class SplitterPanel extends BaseComponent<SplitterPanelPassThrough> {\n componentName = 'SplitterPanel';\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n /**\n * Initial size of the panel relative to 100%.\n * @group Props\n */\n size = input<number | undefined>(undefined, { transform: (value: unknown) => (value == null ? undefined : numberAttribute(value)) });\n\n /**\n * Minimum size of the panel relative to 100%.\n * @defaultValue 0\n * @group Props\n */\n minSize = input(0, { transform: numberAttribute });\n\n /**\n * Maximum size of the panel relative to 100%.\n * @defaultValue 100\n * @group Props\n */\n maxSize = input(100, { transform: numberAttribute });\n\n /**\n * When enabled, the panel can collapse below its `minSize` down to `collapsedSize`.\n * @defaultValue false\n * @group Props\n */\n collapsible = input(false, { transform: booleanAttribute });\n\n /**\n * Size of the panel when collapsed, relative to 100%.\n * @defaultValue 0\n * @group Props\n */\n collapsedSize = input(0, { transform: numberAttribute });\n\n /**\n * @ignore\n * Content of the panel, stamped by the parent Splitter into the panel wrapper.\n */\n contentTemplate = viewChild<TemplateRef<any>>('content');\n\n /**\n * @ignore\n * `class`/`style` set directly on the `<p-splitterpanel>` element are forwarded by the parent\n * Splitter onto the panel it renders, so authors can style the panel inline as expected.\n */\n get hostClass(): string {\n return this.el.nativeElement.className;\n }\n\n get hostStyle(): string | null {\n return this.el.nativeElement.getAttribute('style');\n }\n\n _componentStyle = inject(SplitterStyle);\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptm('root'));\n }\n}\n","import { isPlatformBrowser, NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, contentChildren, effect, ElementRef, inject, input, NgModule, numberAttribute, output, signal, TemplateRef, untracked, ViewEncapsulation } from '@angular/core';\nimport { isRTL } from '@primeuix/utils';\nimport { SharedModule } from 'primeng/api';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind, BindModule } from 'primeng/bind';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport type { CSSProperties } from 'primeng/types/shared';\nimport type { SplitterCollapseEvent, SplitterLayout, SplitterPassThrough, SplitterResizeEndEvent, SplitterResizeEvent, SplitterResizeStartEvent, SplitterStateStorage } from 'primeng/types/splitter';\nimport { SplitterPanel } from './splitterpanel';\nimport { SplitterStyle } from './style/splitterstyle';\n\n/**\n * Runtime configuration of a panel, resolved either from a SplitterPanel component or from the\n * array-based inputs (minSizes/panelSizes) for backward compatibility.\n */\ninterface SplitterPanelMeta {\n minSize: number;\n maxSize: number;\n collapsible: boolean;\n collapsedSize: number;\n size: number | undefined;\n}\n\ninterface SplitterPanelInfo extends SplitterPanelMeta {\n index: number;\n collapsed: boolean;\n}\n\n/**\n * Splitter is utilized to separate and resize panels.\n * @group Components\n */\n@Component({\n selector: 'p-splitter',\n standalone: true,\n imports: [NgTemplateOutlet, SharedModule, BindModule],\n template: `\n @for (panel of panels(); track $index; let i = $index) {\n <div\n [pBind]=\"ptm('panel')\"\n [class]=\"panelClass()[i]\"\n [style]=\"panelInlineStyle()[i]\"\n [style.flex]=\"panelFlex()[i]\"\n [style.overflow]=\"'hidden'\"\n [style.min-width]=\"layout() === 'horizontal' ? '0' : null\"\n [style.min-height]=\"layout() === 'vertical' ? '0' : null\"\n tabindex=\"-1\"\n [attr.data-index]=\"i\"\n [attr.data-collapsed]=\"collapsed()[i] ? '' : null\"\n [attr.data-resizing]=\"isResizing() && resizingIndex() === i ? '' : null\"\n >\n <ng-container *ngTemplateOutlet=\"panel\"></ng-container>\n </div>\n @if (i !== panels().length - 1) {\n <div\n [pBind]=\"ptm('gutter')\"\n [class]=\"cx('gutter')\"\n role=\"separator\"\n [attr.tabindex]=\"disabled() ? -1 : 0\"\n [attr.aria-orientation]=\"layout()\"\n [attr.aria-valuenow]=\"prevSize\"\n [attr.aria-valuemin]=\"round(panelMetas()[i]?.minSize)\"\n [attr.aria-valuemax]=\"round(100 - (panelMetas()[i + 1]?.minSize ?? 0))\"\n [attr.aria-disabled]=\"disabled() || null\"\n [attr.data-orientation]=\"layout()\"\n [attr.data-resizing]=\"isResizing() && resizingIndex() === i ? '' : null\"\n [attr.data-disabled]=\"disabled() ? '' : null\"\n [style]=\"gutterInlineStyle()\"\n (pointerdown)=\"onGutterPointerDown($event, i)\"\n (keyup)=\"onGutterKeyUp($event)\"\n (keydown)=\"onGutterKeyDown($event, i)\"\n >\n <div [pBind]=\"ptm('gutterHandle')\" [class]=\"cx('gutterHandle')\" [attr.data-orientation]=\"layout()\" [attr.data-resizing]=\"isResizing() && resizingIndex() === i ? '' : null\"></div>\n </div>\n }\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class]': 'rootClass()',\n '[attr.data-orientation]': 'layout()',\n '[attr.data-resizing]': 'dataResizing()',\n '[attr.data-disabled]': \"disabled() ? '' : null\",\n '[attr.data-p]': 'dataP()'\n },\n providers: [SplitterStyle, { provide: PARENT_INSTANCE, useExisting: Splitter }],\n hostDirectives: [Bind]\n})\nexport class Splitter extends BaseComponent<SplitterPassThrough> {\n componentName = 'Splitter';\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n /**\n * Style class of the component.\n * @group Props\n */\n styleClass = input<string>();\n\n /**\n * Style class of the panel.\n * @group Props\n */\n panelStyleClass = input<string>();\n\n /**\n * Inline style of the panel.\n * @group Props\n */\n panelStyle = input<CSSProperties>();\n\n /**\n * Defines where a stateful splitter keeps its state, valid values are 'session' for sessionStorage and 'local' for localStorage.\n * @group Props\n */\n stateStorage = input<SplitterStateStorage>('session');\n\n /**\n * Storage identifier of a stateful Splitter.\n * @group Props\n */\n stateKey = input<string | null>(null);\n\n /**\n * Orientation of the panels. Valid values are 'horizontal' and 'vertical'.\n * @group Props\n */\n layout = input<SplitterLayout>('horizontal');\n\n /**\n * Size of the divider in pixels.\n * @group Props\n */\n gutterSize = input(1, { transform: numberAttribute });\n\n /**\n * Step factor to increment/decrement the size of the panels while pressing the arrow keys.\n * @group Props\n */\n step = input(5, { transform: numberAttribute });\n\n /**\n * Minimum size of the elements relative to 100%. Used when panels are defined via `#panel` templates;\n * when SplitterPanel components are used, the per-panel `minSize` input takes precedence.\n * @group Props\n */\n minSizes = input<number[]>([]);\n\n /**\n * Size of the elements relative to 100%. Used when panels are defined via `#panel` templates;\n * when SplitterPanel components are used, the per-panel `size` input takes precedence.\n * @group Props\n */\n panelSizes = input<number[]>([]);\n\n /**\n * When present, it disables the component and prevents resizing.\n * @defaultValue false\n * @group Props\n */\n disabled = input(false, { transform: booleanAttribute });\n\n /**\n * Callback to invoke when resize ends.\n * @param {SplitterResizeEndEvent} event - Custom panel resize end event\n * @group Emits\n */\n onResizeEnd = output<SplitterResizeEndEvent>();\n\n /**\n * Callback to invoke when resize starts.\n * @param {SplitterResizeStartEvent} event - Custom panel resize start event\n * @group Emits\n */\n onResizeStart = output<SplitterResizeStartEvent>();\n\n /**\n * Callback to invoke continuously while a gutter is being dragged.\n * @param {SplitterResizeEvent} event - Custom panel resize event\n * @group Emits\n */\n onResize = output<SplitterResizeEvent>();\n\n /**\n * Callback to invoke when a collapsible panel collapses or expands.\n * @param {SplitterCollapseEvent} event - Custom collapse event\n * @group Emits\n */\n onCollapse = output<SplitterCollapseEvent>();\n\n /**\n * Panels declared via SplitterPanel components.\n * @ignore\n */\n panelComponents = contentChildren(SplitterPanel);\n\n /**\n * Panels declared via `<ng-template #panel>` (backward compatible API).\n * @ignore\n */\n panelChildren = contentChildren<TemplateRef<void>>('panel');\n\n /**\n * Resolved panel content templates, sourced from SplitterPanel components when present,\n * otherwise from `#panel` templates.\n */\n panels = computed<TemplateRef<any>[]>(() => {\n const components = this.panelComponents();\n\n if (components && components.length) {\n const templates = components.map((panel) => panel.contentTemplate());\n\n return templates.every((template): template is TemplateRef<any> => !!template) ? (templates as TemplateRef<any>[]) : [];\n }\n\n return [...this.panelChildren()];\n });\n\n /**\n * Resolved per-panel configuration (min/max/collapsible/collapsedSize/size).\n */\n panelMetas = computed<SplitterPanelMeta[]>(() => {\n const components = this.panelComponents();\n\n if (components && components.length) {\n return components.map((panel) => ({\n minSize: panel.minSize() ?? 0,\n maxSize: panel.maxSize() ?? 100,\n collapsible: panel.collapsible() ?? false,\n collapsedSize: panel.collapsedSize() ?? 0,\n size: panel.size()\n }));\n }\n\n const count = this.panelChildren().length;\n const minSizes = this.minSizes();\n const panelSizes = this.panelSizes();\n\n return Array.from({ length: count }, (_, i) => ({\n minSize: minSizes[i] ?? 0,\n maxSize: 100,\n collapsible: false,\n collapsedSize: 0,\n size: panelSizes[i]\n }));\n });\n\n /**\n * Value-based signature of the panel configuration. Lets the (re)initialization effect ignore\n * array-literal input bindings that change identity but not value on every parent change detection.\n */\n panelSignature = computed(() => {\n const metaSig = this.panelMetas()\n .map((meta) => `${meta.size ?? ''}:${meta.minSize}:${meta.maxSize}:${meta.collapsible}:${meta.collapsedSize}`)\n .join(',');\n\n return `${metaSig}#${this.panelSizes().join(',')}`;\n });\n\n /**\n * Class for each panel wrapper: the base panel class plus the splitter-level `panelStyleClass`\n * and the `class` set directly on the matching SplitterPanel.\n */\n panelClass = computed(() => {\n const components = this.panelComponents();\n const base = this.cn(this.cx('panel'), this.panelStyleClass());\n\n return this.panels().map((_, i) => this.cn(base, components[i]?.hostClass));\n });\n\n /**\n * Inline style for each panel wrapper: the `style` set directly on the matching SplitterPanel,\n * falling back to the splitter-level `panelStyle`.\n */\n panelInlineStyle = computed(() => {\n const components = this.panelComponents();\n const fallback = this.panelStyle();\n\n return this.panels().map((_, i) => components[i]?.hostStyle ?? fallback);\n });\n\n dragging: boolean = false;\n\n isResizing = signal(false);\n\n resizingIndex = signal<number | null>(null);\n\n collapsed = signal<boolean[]>([]);\n\n /**\n * Flex values applied to each panel wrapper, e.g. `35 1 0px`. Bound declaratively so panel sizing\n * never depends on imperative DOM timing.\n */\n panelFlex = signal<string[]>([]);\n\n dataResizing = computed(() => (this.isResizing() ? '' : null));\n\n pointerMoveListener: VoidListener;\n\n pointerUpListener: VoidListener;\n\n size: Nullable<number>;\n\n gutterElement: Nullable<ElementRef | HTMLElement>;\n\n startPos: Nullable<number>;\n\n _panelSizes: number[] = [];\n\n panelRegistry: SplitterPanelInfo[] = [];\n\n initialSizes: number[] = [];\n\n initialCollapsed: boolean[] = [];\n\n reportedCollapsed: boolean[] = [];\n\n initialTotal: number = 100;\n\n prevPanelIndex: Nullable<number>;\n\n timer: ReturnType<typeof setTimeout> | undefined;\n\n prevSize: string | undefined;\n\n _componentStyle = inject(SplitterStyle);\n\n rootClass = computed(() => this.cn(this.cx('root'), this.styleClass()));\n\n constructor() {\n super();\n effect(() => {\n const panels = this.panels();\n\n this.panelSignature();\n\n if (!isPlatformBrowser(this.platformId) || panels.length === 0) {\n return;\n }\n\n if (untracked(() => this.isResizing())) {\n return;\n }\n\n this.initializePanels();\n });\n }\n\n dataP = computed(() =>\n this.cn({\n [this.layout()!]: this.layout(),\n resizing: this.isResizing(),\n disabled: this.disabled()\n })\n );\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));\n }\n\n buildPanelRegistry() {\n const metas = this.panelMetas();\n const prev = this.panelRegistry ?? [];\n\n this.panelRegistry = metas.map((meta, i) => ({\n index: i,\n minSize: meta.minSize ?? 0,\n maxSize: meta.maxSize ?? 100,\n collapsible: meta.collapsible ?? false,\n collapsedSize: meta.collapsedSize ?? 0,\n size: meta.size,\n collapsed: prev[i]?.collapsed ?? false\n }));\n }\n\n initializePanels() {\n const panels = this.panels();\n\n if (!panels.length) {\n return;\n }\n\n this.buildPanelRegistry();\n\n let initialized = false;\n\n if (this.isStateful()) {\n initialized = this.restoreState();\n }\n\n if (!initialized) {\n const _panelSizes: number[] = [];\n const inputPanelSizes = this.panelSizes();\n\n panels.forEach((_, i) => {\n const meta = this.panelRegistry[i];\n\n _panelSizes[i] = inputPanelSizes[i] ?? meta?.size ?? 100 / panels.length;\n });\n\n this.panelRegistry.forEach((info, i) => {\n if (info?.collapsible) {\n info.collapsed = _panelSizes[i] <= (info.collapsedSize ?? 0);\n }\n });\n\n this._panelSizes = _panelSizes;\n this.prevSize = parseFloat(String(_panelSizes[0])).toFixed(4);\n }\n\n this.syncCollapsedState();\n this.updateFlex();\n }\n\n updateFlex() {\n this.panelFlex.set(this._panelSizes.map((panelSize) => panelSize + ' 1 0px'));\n }\n\n syncCollapsedState() {\n this.collapsed.set(this.panelRegistry.map((info) => info.collapsed));\n }\n\n getPanelMinSize(index: number): number {\n return this.panelRegistry?.[index]?.minSize ?? 0;\n }\n\n getPanelMaxSize(index: number): number {\n return this.panelRegistry?.[index]?.maxSize ?? 100;\n }\n\n resizeStart(event: PointerEvent | KeyboardEvent, index: number, isKeyDown?: boolean) {\n const currentTarget = (event.currentTarget as HTMLElement) || (event.target as HTMLElement);\n\n if (currentTarget) {\n this.gutterElement = currentTarget;\n }\n\n const panelElements = (this.el as ElementRef).nativeElement.querySelectorAll(':scope > [data-index]');\n let totalPanelPx = 0;\n\n for (const el of panelElements) {\n const rect = el.getBoundingClientRect();\n\n totalPanelPx += this.horizontal() ? rect.width : rect.height;\n }\n\n this.size = totalPanelPx;\n\n if (!isKeyDown) {\n const pointerEvent = event as PointerEvent;\n\n this.dragging = true;\n this.startPos = this.horizontal() ? pointerEvent.pageX : pointerEvent.pageY;\n this.isResizing.set(true);\n this.resizingIndex.set(index);\n }\n\n this.initialSizes = [...this._panelSizes];\n this.initialCollapsed = this.panelRegistry.map((info) => info.collapsed);\n this.reportedCollapsed = this.panelRegistry.map((info) => info.collapsed);\n this.initialTotal = this.initialSizes.reduce((a, b) => a + b, 0) || 100;\n this.prevPanelIndex = index;\n\n if (!isKeyDown) {\n this.onResizeStart.emit({ originalEvent: event, sizes: [...this._panelSizes] });\n }\n }\n\n onResizeMove(event: PointerEvent | KeyboardEvent, step?: number, isKeyDown?: boolean) {\n if (this.size === null || this.prevPanelIndex === null || this.initialSizes.length === 0) {\n return;\n }\n\n const gutterIdx = this.prevPanelIndex!;\n const total = this.initialTotal;\n let delta: number;\n\n if (isKeyDown) {\n delta = (total * (step ?? 0)) / this.size!;\n } else {\n const pointerEvent = event as PointerEvent;\n const pos = this.horizontal() ? pointerEvent.pageX : pointerEvent.pageY;\n\n if (this.horizontal() && isRTL(this.el.nativeElement)) {\n delta = (((this.startPos ?? 0) - pos) * total) / this.size!;\n } else {\n delta = ((pos - (this.startPos ?? 0)) * total) / this.size!;\n }\n }\n\n const newSizes = [...this.initialSizes];\n\n this.panelRegistry.forEach((info, i) => {\n if (this.initialCollapsed[i] !== undefined) {\n info.collapsed = this.initialCollapsed[i];\n }\n });\n\n if (delta > 0) {\n this.distribute(newSizes, gutterIdx, delta, isKeyDown, 'forward');\n } else if (delta < 0) {\n this.distribute(newSizes, gutterIdx + 1, -delta, isKeyDown, 'backward');\n }\n\n this.panelRegistry.forEach((info, i) => {\n if (info.collapsed !== this.reportedCollapsed[i]) {\n this.reportedCollapsed[i] = info.collapsed;\n this.onCollapse.emit({ index: i, collapsed: info.collapsed, sizes: [...newSizes] });\n }\n });\n\n this._panelSizes = newSizes;\n this.prevSize = newSizes[gutterIdx].toFixed(4);\n\n this.updateFlex();\n this.syncCollapsedState();\n this.onResize.emit({ originalEvent: event, sizes: [...newSizes] });\n }\n\n distribute(newSizes: number[], growIdx: number, requested: number, isKeyDown: boolean | undefined, direction: 'forward' | 'backward') {\n const growInfo = this.panelRegistry[growIdx];\n const max = this.getPanelMaxSize(growIdx);\n let toGrow = Math.min(requested, Math.max(0, max - newSizes[growIdx]));\n\n if (growInfo?.collapsible && growInfo.collapsed) {\n const gapSize = this.getPanelMinSize(growIdx) - growInfo.collapsedSize;\n\n toGrow = Math.max(toGrow, gapSize);\n toGrow = Math.min(toGrow, Math.max(0, max - newSizes[growIdx]));\n }\n\n let shrunk = 0;\n const range = direction === 'forward' ? this.range(growIdx + 1, newSizes.length, 1) : this.range(growIdx - 1, -1, -1);\n\n for (const i of range) {\n if (shrunk >= toGrow) break;\n\n const info = this.panelRegistry[i];\n const min = this.getPanelMinSize(i);\n\n if (info?.collapsed) continue;\n\n const effectiveMin = info?.collapsible ? (info.collapsedSize ?? 0) : min;\n const available = Math.max(0, newSizes[i] - effectiveMin);\n const amount = Math.min(toGrow - shrunk, available);\n const rawSize = newSizes[i] - amount;\n\n const validated = this.validatePanelSize(rawSize, info, min, isKeyDown);\n const actualShrunk = newSizes[i] - validated.size;\n\n newSizes[i] = validated.size;\n shrunk += actualShrunk;\n\n if (info) info.collapsed = validated.collapsed;\n }\n\n newSizes[growIdx] += shrunk;\n\n if (growInfo?.collapsible && growInfo.collapsed && newSizes[growIdx] >= this.getPanelMinSize(growIdx)) {\n growInfo.collapsed = false;\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n validatePanelSize(rawSize: number, info: SplitterPanelInfo | undefined, min: number, isKeyDown: boolean | undefined): { size: number; collapsed: boolean } {\n if (!info?.collapsible) {\n return { size: Math.max(rawSize, min), collapsed: false };\n }\n\n const collapsedSize = info.collapsedSize ?? 0;\n\n if (rawSize >= min) {\n return { size: rawSize, collapsed: false };\n }\n\n return { size: collapsedSize, collapsed: true };\n }\n\n range(start: number, end: number, step: number): number[] {\n const out: number[] = [];\n\n for (let i = start; step > 0 ? i < end : i > end; i += step) out.push(i);\n\n return out;\n }\n\n resizeEnd(event: PointerEvent | KeyboardEvent) {\n if (this.isStateful()) {\n this.saveState();\n }\n\n this.onResizeEnd.emit({ originalEvent: event, sizes: [...this._panelSizes] });\n this.isResizing.set(false);\n this.resizingIndex.set(null);\n this.updateFlex();\n this.clear();\n }\n\n onGutterPointerDown(event: PointerEvent, index: number) {\n if (this.disabled()) {\n return;\n }\n\n this.resizeStart(event, index);\n this.bindPointerListeners();\n }\n\n repeat(event: KeyboardEvent, index: number, step: number) {\n this.resizeStart(event, index, true);\n this.onResizeMove(event, step, true);\n }\n\n setTimer(event: KeyboardEvent, index: number, step: number) {\n if (!this.timer) {\n this.onResizeStart.emit({ originalEvent: event, sizes: [...this._panelSizes] });\n this.repeat(event, index, step);\n this.timer = setInterval(() => {\n this.repeat(event, index, step);\n }, 40);\n }\n }\n\n clearTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = undefined;\n }\n }\n\n onGutterKeyUp(event: KeyboardEvent) {\n if (!this.timer) return;\n\n this.clearTimer();\n this.resizeEnd(event);\n }\n\n onGutterKeyDown(event: KeyboardEvent, index: number) {\n if (this.disabled()) {\n return;\n }\n\n switch (event.code) {\n case 'ArrowLeft': {\n if (this.layout() === 'horizontal') {\n this.setTimer(event, index, this.step() * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.layout() === 'horizontal') {\n this.setTimer(event, index, this.step());\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown': {\n if (this.layout() === 'vertical') {\n this.setTimer(event, index, this.step());\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.layout() === 'vertical') {\n this.setTimer(event, index, this.step() * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n\n bindPointerListeners() {\n if (!this.pointerMoveListener) {\n this.pointerMoveListener = this.renderer.listen(this.document, 'pointermove', (event: PointerEvent) => {\n this.onResizeMove(event);\n });\n }\n\n if (!this.pointerUpListener) {\n this.pointerUpListener = this.renderer.listen(this.document, 'pointerup', (event: PointerEvent) => {\n this.resizeEnd(event);\n this.unbindPointerListeners();\n });\n }\n }\n\n unbindPointerListeners() {\n if (this.pointerMoveListener) {\n this.pointerMoveListener();\n this.pointerMoveListener = null;\n }\n\n if (this.pointerUpListener) {\n this.pointerUpListener();\n this.pointerUpListener = null;\n }\n }\n\n clear() {\n this.dragging = false;\n this.size = null;\n this.startPos = null;\n this.initialSizes = [];\n this.initialCollapsed = [];\n this.reportedCollapsed = [];\n this.initialTotal = 100;\n this.gutterElement = null;\n this.prevPanelIndex = null;\n }\n\n isStateful() {\n return this.stateKey() != null;\n }\n\n getStorage() {\n if (isPlatformBrowser(this.platformId)) {\n switch (this.stateStorage()) {\n case 'local':\n return this.document.defaultView?.localStorage;\n\n case 'session':\n return this.document.defaultView?.sessionStorage;\n\n default:\n throw new Error(this.stateStorage() + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n } else {\n throw new Error('Storage is not a available by default on the server.');\n }\n }\n\n saveState() {\n this.getStorage()?.setItem(this.stateKey()!, JSON.stringify(this._panelSizes));\n }\n\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage?.getItem(this.stateKey()!);\n\n if (stateString) {\n this._panelSizes = JSON.parse(stateString);\n\n this.panelRegistry.forEach((info, i) => {\n if (info?.collapsible) {\n info.collapsed = this._panelSizes[i] <= (info.collapsedSize ?? 0);\n }\n });\n\n this.prevSize = parseFloat(String(this._panelSizes[0])).toFixed(4);\n\n return true;\n }\n\n return false;\n }\n\n /**\n * Resets the panel sizes using the stored state (for a stateful Splitter), the configured\n * sizes, or the default equal distribution.\n */\n resetState() {\n this.initializePanels();\n }\n\n gutterInlineStyle() {\n return {\n 'touch-action': 'none',\n 'user-select': 'none',\n ...(this.horizontal() ? { width: this.gutterSize() + 'px' } : { height: this.gutterSize() + 'px' })\n };\n }\n\n horizontal() {\n return this.layout() === 'horizontal';\n }\n\n round(value: number | undefined): number {\n return Math.round(value ?? 0);\n }\n\n onDestroy() {\n this.unbindPointerListeners();\n this.clearTimer();\n }\n}\n\n@NgModule({\n imports: [Splitter, SplitterPanel, SharedModule, BindModule],\n exports: [Splitter, SplitterPanel, SharedModule, BindModule]\n})\nexport class SplitterModule {}\n"],"mappings":"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"}