primeng 14.1.2 → 14.2.0

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 (945) hide show
  1. package/README.md +2 -1
  2. package/accordion/{primeng-accordion.d.ts → index.d.ts} +0 -0
  3. package/animate/animate.d.ts +25 -0
  4. package/animate/index.d.ts +5 -0
  5. package/animate/public_api.d.ts +1 -0
  6. package/api/{primeng-api.d.ts → index.d.ts} +0 -0
  7. package/api/overlayoptions.d.ts +49 -0
  8. package/api/primeicons.d.ts +23 -1
  9. package/api/primengconfig.d.ts +2 -0
  10. package/api/public_api.d.ts +8 -7
  11. package/autocomplete/autocomplete.d.ts +1 -1
  12. package/autocomplete/{primeng-autocomplete.d.ts → index.d.ts} +0 -0
  13. package/autofocus/autofocus.d.ts +1 -1
  14. package/autofocus/{primeng-autofocus.d.ts → index.d.ts} +0 -0
  15. package/avatar/{primeng-avatar.d.ts → index.d.ts} +0 -0
  16. package/avatargroup/{primeng-avatargroup.d.ts → index.d.ts} +0 -0
  17. package/badge/badge.d.ts +3 -1
  18. package/badge/{primeng-badge.d.ts → index.d.ts} +0 -0
  19. package/blockui/{primeng-blockui.d.ts → index.d.ts} +0 -0
  20. package/breadcrumb/{primeng-breadcrumb.d.ts → index.d.ts} +0 -0
  21. package/button/button.d.ts +5 -3
  22. package/button/{primeng-button.d.ts → index.d.ts} +0 -0
  23. package/calendar/calendar.d.ts +2 -2
  24. package/calendar/{primeng-calendar.d.ts → index.d.ts} +0 -0
  25. package/captcha/{primeng-captcha.d.ts → index.d.ts} +0 -0
  26. package/card/{primeng-card.d.ts → index.d.ts} +0 -0
  27. package/carousel/{primeng-carousel.d.ts → index.d.ts} +0 -0
  28. package/cascadeselect/cascadeselect.d.ts +18 -27
  29. package/cascadeselect/{primeng-cascadeselect.d.ts → index.d.ts} +0 -0
  30. package/chart/{primeng-chart.d.ts → index.d.ts} +0 -0
  31. package/checkbox/{primeng-checkbox.d.ts → index.d.ts} +0 -0
  32. package/chip/{primeng-chip.d.ts → index.d.ts} +0 -0
  33. package/chips/chips.d.ts +1 -1
  34. package/chips/{primeng-chips.d.ts → index.d.ts} +0 -0
  35. package/codehighlighter/{primeng-codehighlighter.d.ts → index.d.ts} +0 -0
  36. package/colorpicker/{primeng-colorpicker.d.ts → index.d.ts} +0 -0
  37. package/confirmdialog/{primeng-confirmdialog.d.ts → index.d.ts} +0 -0
  38. package/confirmpopup/{primeng-confirmpopup.d.ts → index.d.ts} +0 -0
  39. package/contextmenu/{primeng-contextmenu.d.ts → index.d.ts} +0 -0
  40. package/dataview/{primeng-dataview.d.ts → index.d.ts} +0 -0
  41. package/defer/{primeng-defer.d.ts → index.d.ts} +0 -0
  42. package/dialog/{primeng-dialog.d.ts → index.d.ts} +0 -0
  43. package/divider/{primeng-divider.d.ts → index.d.ts} +0 -0
  44. package/dock/{primeng-dock.d.ts → index.d.ts} +0 -0
  45. package/dom/domhandler.d.ts +7 -0
  46. package/dom/{primeng-dom.d.ts → index.d.ts} +0 -0
  47. package/dragdrop/{primeng-dragdrop.d.ts → index.d.ts} +0 -0
  48. package/dropdown/dropdown.d.ts +28 -38
  49. package/dropdown/{primeng-dropdown.d.ts → index.d.ts} +0 -0
  50. package/dynamicdialog/{primeng-dynamicdialog.d.ts → index.d.ts} +0 -0
  51. package/editor/{primeng-editor.d.ts → index.d.ts} +0 -0
  52. package/esm2020/accordion/accordion.mjs +29 -19
  53. package/esm2020/accordion/public_api.mjs +1 -1
  54. package/esm2020/animate/animate.mjs +70 -0
  55. package/esm2020/animate/primeng-animate.mjs +5 -0
  56. package/esm2020/animate/public_api.mjs +2 -0
  57. package/esm2020/api/blockableui.mjs +1 -1
  58. package/esm2020/api/confirmaeventtype.mjs +1 -1
  59. package/esm2020/api/confirmationservice.mjs +1 -1
  60. package/esm2020/api/contextmenuservice.mjs +1 -1
  61. package/esm2020/api/filtermatchmode.mjs +1 -1
  62. package/esm2020/api/filtermetadata.mjs +1 -1
  63. package/esm2020/api/filteroperator.mjs +1 -1
  64. package/esm2020/api/filterservice.mjs +1 -1
  65. package/esm2020/api/lazyloadevent.mjs +1 -1
  66. package/esm2020/api/megamenuitem.mjs +1 -1
  67. package/esm2020/api/menuitem.mjs +1 -1
  68. package/esm2020/api/messageservice.mjs +1 -1
  69. package/esm2020/api/overlayoptions.mjs +2 -0
  70. package/esm2020/api/overlayservice.mjs +1 -1
  71. package/esm2020/api/primeicons.mjs +24 -2
  72. package/esm2020/api/primengconfig.mjs +10 -28
  73. package/esm2020/api/public_api.mjs +9 -8
  74. package/esm2020/api/selectitem.mjs +1 -1
  75. package/esm2020/api/selectitemgroup.mjs +1 -1
  76. package/esm2020/api/shared.mjs +1 -1
  77. package/esm2020/api/sortevent.mjs +1 -1
  78. package/esm2020/api/sortmeta.mjs +1 -1
  79. package/esm2020/api/tablestate.mjs +1 -1
  80. package/esm2020/api/treedragdropservice.mjs +1 -1
  81. package/esm2020/api/treenode.mjs +1 -1
  82. package/esm2020/api/treenodedragevent.mjs +1 -1
  83. package/esm2020/autocomplete/autocomplete.mjs +281 -104
  84. package/esm2020/autocomplete/public_api.mjs +1 -1
  85. package/esm2020/autofocus/autofocus.mjs +4 -5
  86. package/esm2020/autofocus/public_api.mjs +1 -1
  87. package/esm2020/avatar/avatar.mjs +8 -8
  88. package/esm2020/avatar/public_api.mjs +1 -1
  89. package/esm2020/avatargroup/avatargroup.mjs +2 -2
  90. package/esm2020/avatargroup/public_api.mjs +1 -1
  91. package/esm2020/badge/badge.mjs +6 -10
  92. package/esm2020/badge/public_api.mjs +1 -1
  93. package/esm2020/blockui/blockui.mjs +4 -4
  94. package/esm2020/blockui/public_api.mjs +1 -1
  95. package/esm2020/breadcrumb/breadcrumb.mjs +140 -40
  96. package/esm2020/breadcrumb/public_api.mjs +1 -1
  97. package/esm2020/button/button.mjs +89 -59
  98. package/esm2020/button/public_api.mjs +1 -1
  99. package/esm2020/calendar/calendar.mjs +456 -232
  100. package/esm2020/calendar/public_api.mjs +1 -1
  101. package/esm2020/captcha/captcha.mjs +15 -11
  102. package/esm2020/captcha/public_api.mjs +1 -1
  103. package/esm2020/card/card.mjs +6 -6
  104. package/esm2020/card/public_api.mjs +1 -1
  105. package/esm2020/carousel/carousel.mjs +138 -119
  106. package/esm2020/carousel/public_api.mjs +1 -1
  107. package/esm2020/cascadeselect/cascadeselect.mjs +200 -209
  108. package/esm2020/cascadeselect/public_api.mjs +1 -1
  109. package/esm2020/chart/chart.mjs +2 -2
  110. package/esm2020/chart/public_api.mjs +1 -1
  111. package/esm2020/checkbox/checkbox.mjs +59 -19
  112. package/esm2020/checkbox/public_api.mjs +1 -1
  113. package/esm2020/chip/chip.mjs +7 -7
  114. package/esm2020/chip/public_api.mjs +1 -1
  115. package/esm2020/chips/chips.mjs +63 -27
  116. package/esm2020/chips/public_api.mjs +1 -1
  117. package/esm2020/codehighlighter/codehighlighter.mjs +2 -2
  118. package/esm2020/codehighlighter/public_api.mjs +1 -1
  119. package/esm2020/colorpicker/colorpicker.mjs +72 -58
  120. package/esm2020/colorpicker/public_api.mjs +1 -1
  121. package/esm2020/confirmdialog/confirmdialog.mjs +92 -58
  122. package/esm2020/confirmdialog/public_api.mjs +1 -1
  123. package/esm2020/confirmpopup/confirmpopup.mjs +73 -24
  124. package/esm2020/confirmpopup/public_api.mjs +1 -1
  125. package/esm2020/contextmenu/contextmenu.mjs +116 -40
  126. package/esm2020/contextmenu/public_api.mjs +1 -1
  127. package/esm2020/dataview/dataview.mjs +107 -39
  128. package/esm2020/dataview/public_api.mjs +1 -1
  129. package/esm2020/defer/defer.mjs +3 -3
  130. package/esm2020/defer/public_api.mjs +1 -1
  131. package/esm2020/dialog/dialog.mjs +97 -71
  132. package/esm2020/dialog/public_api.mjs +1 -1
  133. package/esm2020/divider/divider.mjs +10 -10
  134. package/esm2020/divider/public_api.mjs +1 -1
  135. package/esm2020/dock/dock.mjs +89 -25
  136. package/esm2020/dom/connectedoverlayscrollhandler.mjs +1 -1
  137. package/esm2020/dom/domhandler.mjs +144 -65
  138. package/esm2020/dragdrop/dragdrop.mjs +4 -4
  139. package/esm2020/dragdrop/public_api.mjs +1 -1
  140. package/esm2020/dropdown/dropdown.mjs +469 -392
  141. package/esm2020/dropdown/public_api.mjs +1 -1
  142. package/esm2020/dynamicdialog/dialogservice.mjs +1 -1
  143. package/esm2020/dynamicdialog/dynamicdialog-config.mjs +1 -1
  144. package/esm2020/dynamicdialog/dynamicdialog-injector.mjs +1 -1
  145. package/esm2020/dynamicdialog/dynamicdialog-ref.mjs +1 -1
  146. package/esm2020/dynamicdialog/dynamicdialog.mjs +80 -73
  147. package/esm2020/dynamicdialog/dynamicdialogcontent.mjs +2 -2
  148. package/esm2020/dynamicdialog/public_api.mjs +1 -1
  149. package/esm2020/editor/editor.mjs +14 -14
  150. package/esm2020/editor/public_api.mjs +1 -1
  151. package/esm2020/fieldset/fieldset.mjs +26 -14
  152. package/esm2020/fieldset/public_api.mjs +1 -1
  153. package/esm2020/fileupload/fileupload.mjs +83 -51
  154. package/esm2020/fileupload/public_api.mjs +1 -1
  155. package/esm2020/focustrap/focustrap.mjs +3 -3
  156. package/esm2020/focustrap/public_api.mjs +1 -1
  157. package/esm2020/galleria/galleria.mjs +236 -119
  158. package/esm2020/galleria/public_api.mjs +1 -1
  159. package/esm2020/gmap/gmap.mjs +4 -4
  160. package/esm2020/gmap/public_api.mjs +1 -1
  161. package/esm2020/image/image.mjs +25 -27
  162. package/esm2020/inplace/inplace.mjs +8 -10
  163. package/esm2020/inplace/public_api.mjs +1 -1
  164. package/esm2020/inputmask/inputmask.mjs +71 -18
  165. package/esm2020/inputmask/public_api.mjs +1 -1
  166. package/esm2020/inputnumber/inputnumber.mjs +224 -62
  167. package/esm2020/inputnumber/public_api.mjs +1 -1
  168. package/esm2020/inputswitch/inputswitch.mjs +38 -12
  169. package/esm2020/inputswitch/public_api.mjs +1 -1
  170. package/esm2020/inputtext/inputtext.mjs +3 -4
  171. package/esm2020/inputtext/public_api.mjs +1 -1
  172. package/esm2020/inputtextarea/inputtextarea.mjs +4 -4
  173. package/esm2020/inputtextarea/public_api.mjs +1 -1
  174. package/esm2020/keyfilter/keyfilter.mjs +6 -8
  175. package/esm2020/keyfilter/public_api.mjs +1 -1
  176. package/esm2020/knob/knob.mjs +37 -21
  177. package/esm2020/knob/public_api.mjs +1 -1
  178. package/esm2020/lightbox/lightbox.mjs +66 -52
  179. package/esm2020/lightbox/public_api.mjs +1 -1
  180. package/esm2020/listbox/listbox.mjs +194 -156
  181. package/esm2020/listbox/public_api.mjs +1 -1
  182. package/esm2020/megamenu/megamenu.mjs +186 -64
  183. package/esm2020/megamenu/public_api.mjs +1 -1
  184. package/esm2020/menu/menu.mjs +186 -66
  185. package/esm2020/menu/public_api.mjs +1 -1
  186. package/esm2020/menubar/menubar.mjs +128 -45
  187. package/esm2020/menubar/public_api.mjs +1 -1
  188. package/esm2020/message/message.mjs +32 -16
  189. package/esm2020/message/public_api.mjs +1 -1
  190. package/esm2020/messages/messages.mjs +35 -37
  191. package/esm2020/messages/public_api.mjs +1 -1
  192. package/esm2020/multiselect/multiselect.mjs +462 -400
  193. package/esm2020/multiselect/public_api.mjs +1 -1
  194. package/esm2020/orderlist/orderlist.mjs +76 -28
  195. package/esm2020/orderlist/public_api.mjs +1 -1
  196. package/esm2020/organizationchart/organizationchart.mjs +37 -53
  197. package/esm2020/organizationchart/public_api.mjs +1 -1
  198. package/esm2020/overlay/overlay.mjs +481 -0
  199. package/esm2020/overlay/primeng-overlay.mjs +5 -0
  200. package/esm2020/overlay/public_api.mjs +2 -0
  201. package/esm2020/overlaypanel/overlaypanel.mjs +25 -11
  202. package/esm2020/overlaypanel/public_api.mjs +1 -1
  203. package/esm2020/paginator/paginator.mjs +77 -53
  204. package/esm2020/paginator/public_api.mjs +1 -1
  205. package/esm2020/panel/panel.mjs +62 -18
  206. package/esm2020/panel/public_api.mjs +1 -1
  207. package/esm2020/panelmenu/panelmenu.mjs +201 -63
  208. package/esm2020/panelmenu/public_api.mjs +1 -1
  209. package/esm2020/password/password.mjs +104 -62
  210. package/esm2020/password/public_api.mjs +1 -1
  211. package/esm2020/picklist/picklist.mjs +242 -66
  212. package/esm2020/picklist/public_api.mjs +1 -1
  213. package/esm2020/progressbar/progressbar.mjs +22 -8
  214. package/esm2020/progressbar/public_api.mjs +1 -1
  215. package/esm2020/progressspinner/progressspinner.mjs +11 -11
  216. package/esm2020/progressspinner/public_api.mjs +1 -1
  217. package/esm2020/public_api.mjs +1 -1
  218. package/esm2020/radiobutton/public_api.mjs +1 -1
  219. package/esm2020/radiobutton/radiobutton.mjs +56 -18
  220. package/esm2020/rating/public_api.mjs +1 -1
  221. package/esm2020/rating/rating.mjs +86 -22
  222. package/esm2020/ripple/public_api.mjs +1 -1
  223. package/esm2020/ripple/ripple.mjs +2 -2
  224. package/esm2020/scroller/scroller.mjs +336 -175
  225. package/esm2020/scrollpanel/public_api.mjs +1 -1
  226. package/esm2020/scrollpanel/scrollpanel.mjs +6 -6
  227. package/esm2020/scrolltop/public_api.mjs +1 -1
  228. package/esm2020/scrolltop/scrolltop.mjs +29 -11
  229. package/esm2020/selectbutton/public_api.mjs +1 -1
  230. package/esm2020/selectbutton/selectbutton.mjs +50 -28
  231. package/esm2020/sidebar/public_api.mjs +1 -1
  232. package/esm2020/sidebar/sidebar.mjs +70 -48
  233. package/esm2020/skeleton/public_api.mjs +1 -1
  234. package/esm2020/skeleton/skeleton.mjs +8 -14
  235. package/esm2020/slidemenu/public_api.mjs +1 -1
  236. package/esm2020/slidemenu/slidemenu.mjs +147 -75
  237. package/esm2020/slider/public_api.mjs +1 -1
  238. package/esm2020/slider/slider.mjs +158 -47
  239. package/esm2020/speeddial/speeddial.mjs +78 -22
  240. package/esm2020/spinner/public_api.mjs +1 -1
  241. package/esm2020/spinner/spinner.mjs +97 -21
  242. package/esm2020/splitbutton/public_api.mjs +1 -1
  243. package/esm2020/splitbutton/splitbutton.mjs +4 -6
  244. package/esm2020/splitter/public_api.mjs +1 -1
  245. package/esm2020/splitter/splitter.mjs +27 -29
  246. package/esm2020/steps/public_api.mjs +1 -1
  247. package/esm2020/steps/steps.mjs +98 -26
  248. package/esm2020/styleclass/public_api.mjs +1 -1
  249. package/esm2020/styleclass/styleclass.mjs +4 -5
  250. package/esm2020/table/public_api.mjs +1 -1
  251. package/esm2020/table/table.mjs +849 -507
  252. package/esm2020/tabmenu/public_api.mjs +1 -1
  253. package/esm2020/tabmenu/tabmenu.mjs +106 -30
  254. package/esm2020/tabview/public_api.mjs +1 -1
  255. package/esm2020/tabview/tabview.mjs +47 -24
  256. package/esm2020/tag/public_api.mjs +1 -1
  257. package/esm2020/tag/tag.mjs +4 -4
  258. package/esm2020/terminal/public_api.mjs +1 -1
  259. package/esm2020/terminal/terminal.mjs +15 -15
  260. package/esm2020/terminal/terminalservice.mjs +1 -1
  261. package/esm2020/tieredmenu/public_api.mjs +1 -1
  262. package/esm2020/tieredmenu/tieredmenu.mjs +162 -70
  263. package/esm2020/timeline/public_api.mjs +1 -1
  264. package/esm2020/timeline/timeline.mjs +26 -14
  265. package/esm2020/toast/public_api.mjs +1 -1
  266. package/esm2020/toast/toast.mjs +77 -57
  267. package/esm2020/togglebutton/public_api.mjs +1 -1
  268. package/esm2020/togglebutton/togglebutton.mjs +30 -16
  269. package/esm2020/toolbar/public_api.mjs +1 -1
  270. package/esm2020/toolbar/toolbar.mjs +2 -2
  271. package/esm2020/tooltip/public_api.mjs +1 -1
  272. package/esm2020/tooltip/tooltip.mjs +13 -7
  273. package/esm2020/tree/public_api.mjs +1 -1
  274. package/esm2020/tree/tree.mjs +273 -121
  275. package/esm2020/treeselect/treeselect.mjs +299 -280
  276. package/esm2020/treetable/public_api.mjs +1 -1
  277. package/esm2020/treetable/treetable.mjs +320 -164
  278. package/esm2020/tristatecheckbox/public_api.mjs +1 -1
  279. package/esm2020/tristatecheckbox/tristatecheckbox.mjs +38 -16
  280. package/esm2020/utils/objectutils.mjs +55 -26
  281. package/esm2020/utils/public_api.mjs +1 -1
  282. package/esm2020/utils/uniquecomponentid.mjs +1 -1
  283. package/esm2020/utils/zindexutils.mjs +2 -2
  284. package/esm2020/virtualscroller/public_api.mjs +1 -1
  285. package/esm2020/virtualscroller/virtualscroller.mjs +11 -13
  286. package/fesm2015/primeng-accordion.mjs +28 -18
  287. package/fesm2015/primeng-accordion.mjs.map +1 -1
  288. package/fesm2015/primeng-animate.mjs +77 -0
  289. package/fesm2015/primeng-animate.mjs.map +1 -0
  290. package/fesm2015/primeng-api.mjs +192 -188
  291. package/fesm2015/primeng-api.mjs.map +1 -1
  292. package/fesm2015/primeng-autocomplete.mjs +280 -103
  293. package/fesm2015/primeng-autocomplete.mjs.map +1 -1
  294. package/fesm2015/primeng-autofocus.mjs +3 -4
  295. package/fesm2015/primeng-autofocus.mjs.map +1 -1
  296. package/fesm2015/primeng-avatar.mjs +7 -7
  297. package/fesm2015/primeng-avatar.mjs.map +1 -1
  298. package/fesm2015/primeng-avatargroup.mjs +1 -1
  299. package/fesm2015/primeng-avatargroup.mjs.map +1 -1
  300. package/fesm2015/primeng-badge.mjs +5 -9
  301. package/fesm2015/primeng-badge.mjs.map +1 -1
  302. package/fesm2015/primeng-blockui.mjs +3 -3
  303. package/fesm2015/primeng-blockui.mjs.map +1 -1
  304. package/fesm2015/primeng-breadcrumb.mjs +139 -39
  305. package/fesm2015/primeng-breadcrumb.mjs.map +1 -1
  306. package/fesm2015/primeng-button.mjs +88 -58
  307. package/fesm2015/primeng-button.mjs.map +1 -1
  308. package/fesm2015/primeng-calendar.mjs +456 -231
  309. package/fesm2015/primeng-calendar.mjs.map +1 -1
  310. package/fesm2015/primeng-captcha.mjs +14 -10
  311. package/fesm2015/primeng-captcha.mjs.map +1 -1
  312. package/fesm2015/primeng-card.mjs +5 -5
  313. package/fesm2015/primeng-card.mjs.map +1 -1
  314. package/fesm2015/primeng-carousel.mjs +137 -118
  315. package/fesm2015/primeng-carousel.mjs.map +1 -1
  316. package/fesm2015/primeng-cascadeselect.mjs +201 -208
  317. package/fesm2015/primeng-cascadeselect.mjs.map +1 -1
  318. package/fesm2015/primeng-chart.mjs +1 -1
  319. package/fesm2015/primeng-chart.mjs.map +1 -1
  320. package/fesm2015/primeng-checkbox.mjs +58 -18
  321. package/fesm2015/primeng-checkbox.mjs.map +1 -1
  322. package/fesm2015/primeng-chip.mjs +6 -6
  323. package/fesm2015/primeng-chip.mjs.map +1 -1
  324. package/fesm2015/primeng-chips.mjs +62 -26
  325. package/fesm2015/primeng-chips.mjs.map +1 -1
  326. package/fesm2015/primeng-codehighlighter.mjs +1 -1
  327. package/fesm2015/primeng-codehighlighter.mjs.map +1 -1
  328. package/fesm2015/primeng-colorpicker.mjs +71 -57
  329. package/fesm2015/primeng-colorpicker.mjs.map +1 -1
  330. package/fesm2015/primeng-confirmdialog.mjs +91 -57
  331. package/fesm2015/primeng-confirmdialog.mjs.map +1 -1
  332. package/fesm2015/primeng-confirmpopup.mjs +72 -23
  333. package/fesm2015/primeng-confirmpopup.mjs.map +1 -1
  334. package/fesm2015/primeng-contextmenu.mjs +115 -39
  335. package/fesm2015/primeng-contextmenu.mjs.map +1 -1
  336. package/fesm2015/primeng-dataview.mjs +106 -38
  337. package/fesm2015/primeng-dataview.mjs.map +1 -1
  338. package/fesm2015/primeng-defer.mjs +2 -2
  339. package/fesm2015/primeng-defer.mjs.map +1 -1
  340. package/fesm2015/primeng-dialog.mjs +96 -70
  341. package/fesm2015/primeng-dialog.mjs.map +1 -1
  342. package/fesm2015/primeng-divider.mjs +9 -9
  343. package/fesm2015/primeng-divider.mjs.map +1 -1
  344. package/fesm2015/primeng-dock.mjs +88 -24
  345. package/fesm2015/primeng-dock.mjs.map +1 -1
  346. package/fesm2015/primeng-dom.mjs +143 -64
  347. package/fesm2015/primeng-dom.mjs.map +1 -1
  348. package/fesm2015/primeng-dragdrop.mjs +3 -3
  349. package/fesm2015/primeng-dragdrop.mjs.map +1 -1
  350. package/fesm2015/primeng-dropdown.mjs +469 -391
  351. package/fesm2015/primeng-dropdown.mjs.map +1 -1
  352. package/fesm2015/primeng-dynamicdialog.mjs +80 -73
  353. package/fesm2015/primeng-dynamicdialog.mjs.map +1 -1
  354. package/fesm2015/primeng-editor.mjs +13 -13
  355. package/fesm2015/primeng-editor.mjs.map +1 -1
  356. package/fesm2015/primeng-fieldset.mjs +25 -13
  357. package/fesm2015/primeng-fieldset.mjs.map +1 -1
  358. package/fesm2015/primeng-fileupload.mjs +81 -49
  359. package/fesm2015/primeng-fileupload.mjs.map +1 -1
  360. package/fesm2015/primeng-focustrap.mjs +2 -2
  361. package/fesm2015/primeng-focustrap.mjs.map +1 -1
  362. package/fesm2015/primeng-galleria.mjs +235 -118
  363. package/fesm2015/primeng-galleria.mjs.map +1 -1
  364. package/fesm2015/primeng-gmap.mjs +3 -3
  365. package/fesm2015/primeng-gmap.mjs.map +1 -1
  366. package/fesm2015/primeng-image.mjs +23 -25
  367. package/fesm2015/primeng-image.mjs.map +1 -1
  368. package/fesm2015/primeng-inplace.mjs +7 -9
  369. package/fesm2015/primeng-inplace.mjs.map +1 -1
  370. package/fesm2015/primeng-inputmask.mjs +70 -17
  371. package/fesm2015/primeng-inputmask.mjs.map +1 -1
  372. package/fesm2015/primeng-inputnumber.mjs +225 -63
  373. package/fesm2015/primeng-inputnumber.mjs.map +1 -1
  374. package/fesm2015/primeng-inputswitch.mjs +37 -11
  375. package/fesm2015/primeng-inputswitch.mjs.map +1 -1
  376. package/fesm2015/primeng-inputtext.mjs +2 -3
  377. package/fesm2015/primeng-inputtext.mjs.map +1 -1
  378. package/fesm2015/primeng-inputtextarea.mjs +3 -3
  379. package/fesm2015/primeng-inputtextarea.mjs.map +1 -1
  380. package/fesm2015/primeng-keyfilter.mjs +5 -7
  381. package/fesm2015/primeng-keyfilter.mjs.map +1 -1
  382. package/fesm2015/primeng-knob.mjs +36 -20
  383. package/fesm2015/primeng-knob.mjs.map +1 -1
  384. package/fesm2015/primeng-lightbox.mjs +65 -51
  385. package/fesm2015/primeng-lightbox.mjs.map +1 -1
  386. package/fesm2015/primeng-listbox.mjs +193 -155
  387. package/fesm2015/primeng-listbox.mjs.map +1 -1
  388. package/fesm2015/primeng-megamenu.mjs +185 -63
  389. package/fesm2015/primeng-megamenu.mjs.map +1 -1
  390. package/fesm2015/primeng-menu.mjs +185 -65
  391. package/fesm2015/primeng-menu.mjs.map +1 -1
  392. package/fesm2015/primeng-menubar.mjs +127 -44
  393. package/fesm2015/primeng-menubar.mjs.map +1 -1
  394. package/fesm2015/primeng-message.mjs +31 -15
  395. package/fesm2015/primeng-message.mjs.map +1 -1
  396. package/fesm2015/primeng-messages.mjs +34 -36
  397. package/fesm2015/primeng-messages.mjs.map +1 -1
  398. package/fesm2015/primeng-multiselect.mjs +464 -400
  399. package/fesm2015/primeng-multiselect.mjs.map +1 -1
  400. package/fesm2015/primeng-orderlist.mjs +75 -27
  401. package/fesm2015/primeng-orderlist.mjs.map +1 -1
  402. package/fesm2015/primeng-organizationchart.mjs +36 -52
  403. package/fesm2015/primeng-organizationchart.mjs.map +1 -1
  404. package/fesm2015/primeng-overlay.mjs +514 -0
  405. package/fesm2015/primeng-overlay.mjs.map +1 -0
  406. package/fesm2015/primeng-overlaypanel.mjs +24 -10
  407. package/fesm2015/primeng-overlaypanel.mjs.map +1 -1
  408. package/fesm2015/primeng-paginator.mjs +76 -52
  409. package/fesm2015/primeng-paginator.mjs.map +1 -1
  410. package/fesm2015/primeng-panel.mjs +61 -17
  411. package/fesm2015/primeng-panel.mjs.map +1 -1
  412. package/fesm2015/primeng-panelmenu.mjs +200 -62
  413. package/fesm2015/primeng-panelmenu.mjs.map +1 -1
  414. package/fesm2015/primeng-password.mjs +104 -62
  415. package/fesm2015/primeng-password.mjs.map +1 -1
  416. package/fesm2015/primeng-picklist.mjs +241 -65
  417. package/fesm2015/primeng-picklist.mjs.map +1 -1
  418. package/fesm2015/primeng-progressbar.mjs +21 -7
  419. package/fesm2015/primeng-progressbar.mjs.map +1 -1
  420. package/fesm2015/primeng-progressspinner.mjs +10 -10
  421. package/fesm2015/primeng-progressspinner.mjs.map +1 -1
  422. package/fesm2015/primeng-radiobutton.mjs +55 -17
  423. package/fesm2015/primeng-radiobutton.mjs.map +1 -1
  424. package/fesm2015/primeng-rating.mjs +86 -22
  425. package/fesm2015/primeng-rating.mjs.map +1 -1
  426. package/fesm2015/primeng-ripple.mjs +1 -1
  427. package/fesm2015/primeng-ripple.mjs.map +1 -1
  428. package/fesm2015/primeng-scroller.mjs +339 -175
  429. package/fesm2015/primeng-scroller.mjs.map +1 -1
  430. package/fesm2015/primeng-scrollpanel.mjs +5 -5
  431. package/fesm2015/primeng-scrollpanel.mjs.map +1 -1
  432. package/fesm2015/primeng-scrolltop.mjs +28 -10
  433. package/fesm2015/primeng-scrolltop.mjs.map +1 -1
  434. package/fesm2015/primeng-selectbutton.mjs +49 -27
  435. package/fesm2015/primeng-selectbutton.mjs.map +1 -1
  436. package/fesm2015/primeng-sidebar.mjs +69 -47
  437. package/fesm2015/primeng-sidebar.mjs.map +1 -1
  438. package/fesm2015/primeng-skeleton.mjs +7 -13
  439. package/fesm2015/primeng-skeleton.mjs.map +1 -1
  440. package/fesm2015/primeng-slidemenu.mjs +146 -74
  441. package/fesm2015/primeng-slidemenu.mjs.map +1 -1
  442. package/fesm2015/primeng-slider.mjs +157 -46
  443. package/fesm2015/primeng-slider.mjs.map +1 -1
  444. package/fesm2015/primeng-speeddial.mjs +77 -21
  445. package/fesm2015/primeng-speeddial.mjs.map +1 -1
  446. package/fesm2015/primeng-spinner.mjs +96 -20
  447. package/fesm2015/primeng-spinner.mjs.map +1 -1
  448. package/fesm2015/primeng-splitbutton.mjs +3 -5
  449. package/fesm2015/primeng-splitbutton.mjs.map +1 -1
  450. package/fesm2015/primeng-splitter.mjs +26 -28
  451. package/fesm2015/primeng-splitter.mjs.map +1 -1
  452. package/fesm2015/primeng-steps.mjs +97 -25
  453. package/fesm2015/primeng-steps.mjs.map +1 -1
  454. package/fesm2015/primeng-styleclass.mjs +3 -4
  455. package/fesm2015/primeng-styleclass.mjs.map +1 -1
  456. package/fesm2015/primeng-table.mjs +849 -508
  457. package/fesm2015/primeng-table.mjs.map +1 -1
  458. package/fesm2015/primeng-tabmenu.mjs +105 -29
  459. package/fesm2015/primeng-tabmenu.mjs.map +1 -1
  460. package/fesm2015/primeng-tabview.mjs +46 -23
  461. package/fesm2015/primeng-tabview.mjs.map +1 -1
  462. package/fesm2015/primeng-tag.mjs +3 -3
  463. package/fesm2015/primeng-tag.mjs.map +1 -1
  464. package/fesm2015/primeng-terminal.mjs +14 -14
  465. package/fesm2015/primeng-terminal.mjs.map +1 -1
  466. package/fesm2015/primeng-tieredmenu.mjs +161 -69
  467. package/fesm2015/primeng-tieredmenu.mjs.map +1 -1
  468. package/fesm2015/primeng-timeline.mjs +25 -13
  469. package/fesm2015/primeng-timeline.mjs.map +1 -1
  470. package/fesm2015/primeng-toast.mjs +76 -56
  471. package/fesm2015/primeng-toast.mjs.map +1 -1
  472. package/fesm2015/primeng-togglebutton.mjs +29 -15
  473. package/fesm2015/primeng-togglebutton.mjs.map +1 -1
  474. package/fesm2015/primeng-toolbar.mjs +1 -1
  475. package/fesm2015/primeng-toolbar.mjs.map +1 -1
  476. package/fesm2015/primeng-tooltip.mjs +12 -6
  477. package/fesm2015/primeng-tooltip.mjs.map +1 -1
  478. package/fesm2015/primeng-tree.mjs +272 -120
  479. package/fesm2015/primeng-tree.mjs.map +1 -1
  480. package/fesm2015/primeng-treeselect.mjs +305 -280
  481. package/fesm2015/primeng-treeselect.mjs.map +1 -1
  482. package/fesm2015/primeng-treetable.mjs +321 -165
  483. package/fesm2015/primeng-treetable.mjs.map +1 -1
  484. package/fesm2015/primeng-tristatecheckbox.mjs +37 -15
  485. package/fesm2015/primeng-tristatecheckbox.mjs.map +1 -1
  486. package/fesm2015/primeng-utils.mjs +55 -26
  487. package/fesm2015/primeng-utils.mjs.map +1 -1
  488. package/fesm2015/primeng-virtualscroller.mjs +10 -12
  489. package/fesm2015/primeng-virtualscroller.mjs.map +1 -1
  490. package/fesm2015/primeng.mjs.map +1 -1
  491. package/fesm2020/primeng-accordion.mjs +28 -18
  492. package/fesm2020/primeng-accordion.mjs.map +1 -1
  493. package/fesm2020/primeng-animate.mjs +77 -0
  494. package/fesm2020/primeng-animate.mjs.map +1 -0
  495. package/fesm2020/primeng-api.mjs +192 -188
  496. package/fesm2020/primeng-api.mjs.map +1 -1
  497. package/fesm2020/primeng-autocomplete.mjs +280 -103
  498. package/fesm2020/primeng-autocomplete.mjs.map +1 -1
  499. package/fesm2020/primeng-autofocus.mjs +3 -4
  500. package/fesm2020/primeng-autofocus.mjs.map +1 -1
  501. package/fesm2020/primeng-avatar.mjs +7 -7
  502. package/fesm2020/primeng-avatar.mjs.map +1 -1
  503. package/fesm2020/primeng-avatargroup.mjs +1 -1
  504. package/fesm2020/primeng-avatargroup.mjs.map +1 -1
  505. package/fesm2020/primeng-badge.mjs +5 -9
  506. package/fesm2020/primeng-badge.mjs.map +1 -1
  507. package/fesm2020/primeng-blockui.mjs +3 -3
  508. package/fesm2020/primeng-blockui.mjs.map +1 -1
  509. package/fesm2020/primeng-breadcrumb.mjs +139 -39
  510. package/fesm2020/primeng-breadcrumb.mjs.map +1 -1
  511. package/fesm2020/primeng-button.mjs +88 -58
  512. package/fesm2020/primeng-button.mjs.map +1 -1
  513. package/fesm2020/primeng-calendar.mjs +455 -231
  514. package/fesm2020/primeng-calendar.mjs.map +1 -1
  515. package/fesm2020/primeng-captcha.mjs +14 -10
  516. package/fesm2020/primeng-captcha.mjs.map +1 -1
  517. package/fesm2020/primeng-card.mjs +5 -5
  518. package/fesm2020/primeng-card.mjs.map +1 -1
  519. package/fesm2020/primeng-carousel.mjs +137 -118
  520. package/fesm2020/primeng-carousel.mjs.map +1 -1
  521. package/fesm2020/primeng-cascadeselect.mjs +200 -208
  522. package/fesm2020/primeng-cascadeselect.mjs.map +1 -1
  523. package/fesm2020/primeng-chart.mjs +1 -1
  524. package/fesm2020/primeng-chart.mjs.map +1 -1
  525. package/fesm2020/primeng-checkbox.mjs +58 -18
  526. package/fesm2020/primeng-checkbox.mjs.map +1 -1
  527. package/fesm2020/primeng-chip.mjs +6 -6
  528. package/fesm2020/primeng-chip.mjs.map +1 -1
  529. package/fesm2020/primeng-chips.mjs +62 -26
  530. package/fesm2020/primeng-chips.mjs.map +1 -1
  531. package/fesm2020/primeng-codehighlighter.mjs +1 -1
  532. package/fesm2020/primeng-codehighlighter.mjs.map +1 -1
  533. package/fesm2020/primeng-colorpicker.mjs +71 -57
  534. package/fesm2020/primeng-colorpicker.mjs.map +1 -1
  535. package/fesm2020/primeng-confirmdialog.mjs +91 -57
  536. package/fesm2020/primeng-confirmdialog.mjs.map +1 -1
  537. package/fesm2020/primeng-confirmpopup.mjs +72 -23
  538. package/fesm2020/primeng-confirmpopup.mjs.map +1 -1
  539. package/fesm2020/primeng-contextmenu.mjs +115 -39
  540. package/fesm2020/primeng-contextmenu.mjs.map +1 -1
  541. package/fesm2020/primeng-dataview.mjs +106 -38
  542. package/fesm2020/primeng-dataview.mjs.map +1 -1
  543. package/fesm2020/primeng-defer.mjs +2 -2
  544. package/fesm2020/primeng-defer.mjs.map +1 -1
  545. package/fesm2020/primeng-dialog.mjs +96 -70
  546. package/fesm2020/primeng-dialog.mjs.map +1 -1
  547. package/fesm2020/primeng-divider.mjs +9 -9
  548. package/fesm2020/primeng-divider.mjs.map +1 -1
  549. package/fesm2020/primeng-dock.mjs +88 -24
  550. package/fesm2020/primeng-dock.mjs.map +1 -1
  551. package/fesm2020/primeng-dom.mjs +143 -64
  552. package/fesm2020/primeng-dom.mjs.map +1 -1
  553. package/fesm2020/primeng-dragdrop.mjs +3 -3
  554. package/fesm2020/primeng-dragdrop.mjs.map +1 -1
  555. package/fesm2020/primeng-dropdown.mjs +469 -391
  556. package/fesm2020/primeng-dropdown.mjs.map +1 -1
  557. package/fesm2020/primeng-dynamicdialog.mjs +80 -73
  558. package/fesm2020/primeng-dynamicdialog.mjs.map +1 -1
  559. package/fesm2020/primeng-editor.mjs +13 -13
  560. package/fesm2020/primeng-editor.mjs.map +1 -1
  561. package/fesm2020/primeng-fieldset.mjs +25 -13
  562. package/fesm2020/primeng-fieldset.mjs.map +1 -1
  563. package/fesm2020/primeng-fileupload.mjs +81 -49
  564. package/fesm2020/primeng-fileupload.mjs.map +1 -1
  565. package/fesm2020/primeng-focustrap.mjs +2 -2
  566. package/fesm2020/primeng-focustrap.mjs.map +1 -1
  567. package/fesm2020/primeng-galleria.mjs +235 -118
  568. package/fesm2020/primeng-galleria.mjs.map +1 -1
  569. package/fesm2020/primeng-gmap.mjs +3 -3
  570. package/fesm2020/primeng-gmap.mjs.map +1 -1
  571. package/fesm2020/primeng-image.mjs +23 -25
  572. package/fesm2020/primeng-image.mjs.map +1 -1
  573. package/fesm2020/primeng-inplace.mjs +7 -9
  574. package/fesm2020/primeng-inplace.mjs.map +1 -1
  575. package/fesm2020/primeng-inputmask.mjs +70 -17
  576. package/fesm2020/primeng-inputmask.mjs.map +1 -1
  577. package/fesm2020/primeng-inputnumber.mjs +225 -63
  578. package/fesm2020/primeng-inputnumber.mjs.map +1 -1
  579. package/fesm2020/primeng-inputswitch.mjs +37 -11
  580. package/fesm2020/primeng-inputswitch.mjs.map +1 -1
  581. package/fesm2020/primeng-inputtext.mjs +2 -3
  582. package/fesm2020/primeng-inputtext.mjs.map +1 -1
  583. package/fesm2020/primeng-inputtextarea.mjs +3 -3
  584. package/fesm2020/primeng-inputtextarea.mjs.map +1 -1
  585. package/fesm2020/primeng-keyfilter.mjs +5 -7
  586. package/fesm2020/primeng-keyfilter.mjs.map +1 -1
  587. package/fesm2020/primeng-knob.mjs +36 -20
  588. package/fesm2020/primeng-knob.mjs.map +1 -1
  589. package/fesm2020/primeng-lightbox.mjs +65 -51
  590. package/fesm2020/primeng-lightbox.mjs.map +1 -1
  591. package/fesm2020/primeng-listbox.mjs +193 -155
  592. package/fesm2020/primeng-listbox.mjs.map +1 -1
  593. package/fesm2020/primeng-megamenu.mjs +185 -63
  594. package/fesm2020/primeng-megamenu.mjs.map +1 -1
  595. package/fesm2020/primeng-menu.mjs +185 -65
  596. package/fesm2020/primeng-menu.mjs.map +1 -1
  597. package/fesm2020/primeng-menubar.mjs +127 -44
  598. package/fesm2020/primeng-menubar.mjs.map +1 -1
  599. package/fesm2020/primeng-message.mjs +31 -15
  600. package/fesm2020/primeng-message.mjs.map +1 -1
  601. package/fesm2020/primeng-messages.mjs +34 -36
  602. package/fesm2020/primeng-messages.mjs.map +1 -1
  603. package/fesm2020/primeng-multiselect.mjs +462 -400
  604. package/fesm2020/primeng-multiselect.mjs.map +1 -1
  605. package/fesm2020/primeng-orderlist.mjs +75 -27
  606. package/fesm2020/primeng-orderlist.mjs.map +1 -1
  607. package/fesm2020/primeng-organizationchart.mjs +36 -52
  608. package/fesm2020/primeng-organizationchart.mjs.map +1 -1
  609. package/fesm2020/primeng-overlay.mjs +488 -0
  610. package/fesm2020/primeng-overlay.mjs.map +1 -0
  611. package/fesm2020/primeng-overlaypanel.mjs +24 -10
  612. package/fesm2020/primeng-overlaypanel.mjs.map +1 -1
  613. package/fesm2020/primeng-paginator.mjs +76 -52
  614. package/fesm2020/primeng-paginator.mjs.map +1 -1
  615. package/fesm2020/primeng-panel.mjs +61 -17
  616. package/fesm2020/primeng-panel.mjs.map +1 -1
  617. package/fesm2020/primeng-panelmenu.mjs +200 -62
  618. package/fesm2020/primeng-panelmenu.mjs.map +1 -1
  619. package/fesm2020/primeng-password.mjs +104 -62
  620. package/fesm2020/primeng-password.mjs.map +1 -1
  621. package/fesm2020/primeng-picklist.mjs +241 -65
  622. package/fesm2020/primeng-picklist.mjs.map +1 -1
  623. package/fesm2020/primeng-progressbar.mjs +21 -7
  624. package/fesm2020/primeng-progressbar.mjs.map +1 -1
  625. package/fesm2020/primeng-progressspinner.mjs +10 -10
  626. package/fesm2020/primeng-progressspinner.mjs.map +1 -1
  627. package/fesm2020/primeng-radiobutton.mjs +55 -17
  628. package/fesm2020/primeng-radiobutton.mjs.map +1 -1
  629. package/fesm2020/primeng-rating.mjs +86 -22
  630. package/fesm2020/primeng-rating.mjs.map +1 -1
  631. package/fesm2020/primeng-ripple.mjs +1 -1
  632. package/fesm2020/primeng-ripple.mjs.map +1 -1
  633. package/fesm2020/primeng-scroller.mjs +336 -175
  634. package/fesm2020/primeng-scroller.mjs.map +1 -1
  635. package/fesm2020/primeng-scrollpanel.mjs +5 -5
  636. package/fesm2020/primeng-scrollpanel.mjs.map +1 -1
  637. package/fesm2020/primeng-scrolltop.mjs +28 -10
  638. package/fesm2020/primeng-scrolltop.mjs.map +1 -1
  639. package/fesm2020/primeng-selectbutton.mjs +49 -27
  640. package/fesm2020/primeng-selectbutton.mjs.map +1 -1
  641. package/fesm2020/primeng-sidebar.mjs +69 -47
  642. package/fesm2020/primeng-sidebar.mjs.map +1 -1
  643. package/fesm2020/primeng-skeleton.mjs +7 -13
  644. package/fesm2020/primeng-skeleton.mjs.map +1 -1
  645. package/fesm2020/primeng-slidemenu.mjs +146 -74
  646. package/fesm2020/primeng-slidemenu.mjs.map +1 -1
  647. package/fesm2020/primeng-slider.mjs +157 -46
  648. package/fesm2020/primeng-slider.mjs.map +1 -1
  649. package/fesm2020/primeng-speeddial.mjs +77 -21
  650. package/fesm2020/primeng-speeddial.mjs.map +1 -1
  651. package/fesm2020/primeng-spinner.mjs +96 -20
  652. package/fesm2020/primeng-spinner.mjs.map +1 -1
  653. package/fesm2020/primeng-splitbutton.mjs +3 -5
  654. package/fesm2020/primeng-splitbutton.mjs.map +1 -1
  655. package/fesm2020/primeng-splitter.mjs +26 -28
  656. package/fesm2020/primeng-splitter.mjs.map +1 -1
  657. package/fesm2020/primeng-steps.mjs +97 -25
  658. package/fesm2020/primeng-steps.mjs.map +1 -1
  659. package/fesm2020/primeng-styleclass.mjs +3 -4
  660. package/fesm2020/primeng-styleclass.mjs.map +1 -1
  661. package/fesm2020/primeng-table.mjs +849 -506
  662. package/fesm2020/primeng-table.mjs.map +1 -1
  663. package/fesm2020/primeng-tabmenu.mjs +105 -29
  664. package/fesm2020/primeng-tabmenu.mjs.map +1 -1
  665. package/fesm2020/primeng-tabview.mjs +46 -23
  666. package/fesm2020/primeng-tabview.mjs.map +1 -1
  667. package/fesm2020/primeng-tag.mjs +3 -3
  668. package/fesm2020/primeng-tag.mjs.map +1 -1
  669. package/fesm2020/primeng-terminal.mjs +14 -14
  670. package/fesm2020/primeng-terminal.mjs.map +1 -1
  671. package/fesm2020/primeng-tieredmenu.mjs +161 -69
  672. package/fesm2020/primeng-tieredmenu.mjs.map +1 -1
  673. package/fesm2020/primeng-timeline.mjs +25 -13
  674. package/fesm2020/primeng-timeline.mjs.map +1 -1
  675. package/fesm2020/primeng-toast.mjs +76 -56
  676. package/fesm2020/primeng-toast.mjs.map +1 -1
  677. package/fesm2020/primeng-togglebutton.mjs +29 -15
  678. package/fesm2020/primeng-togglebutton.mjs.map +1 -1
  679. package/fesm2020/primeng-toolbar.mjs +1 -1
  680. package/fesm2020/primeng-toolbar.mjs.map +1 -1
  681. package/fesm2020/primeng-tooltip.mjs +12 -6
  682. package/fesm2020/primeng-tooltip.mjs.map +1 -1
  683. package/fesm2020/primeng-tree.mjs +272 -120
  684. package/fesm2020/primeng-tree.mjs.map +1 -1
  685. package/fesm2020/primeng-treeselect.mjs +299 -280
  686. package/fesm2020/primeng-treeselect.mjs.map +1 -1
  687. package/fesm2020/primeng-treetable.mjs +321 -165
  688. package/fesm2020/primeng-treetable.mjs.map +1 -1
  689. package/fesm2020/primeng-tristatecheckbox.mjs +37 -15
  690. package/fesm2020/primeng-tristatecheckbox.mjs.map +1 -1
  691. package/fesm2020/primeng-utils.mjs +55 -26
  692. package/fesm2020/primeng-utils.mjs.map +1 -1
  693. package/fesm2020/primeng-virtualscroller.mjs +10 -12
  694. package/fesm2020/primeng-virtualscroller.mjs.map +1 -1
  695. package/fesm2020/primeng.mjs.map +1 -1
  696. package/fieldset/{primeng-fieldset.d.ts → index.d.ts} +0 -0
  697. package/fileupload/fileupload.d.ts +1 -1
  698. package/fileupload/{primeng-fileupload.d.ts → index.d.ts} +0 -0
  699. package/focustrap/{primeng-focustrap.d.ts → index.d.ts} +0 -0
  700. package/galleria/{primeng-galleria.d.ts → index.d.ts} +0 -0
  701. package/gmap/{primeng-gmap.d.ts → index.d.ts} +0 -0
  702. package/image/{primeng-image.d.ts → index.d.ts} +0 -0
  703. package/{primeng.d.ts → index.d.ts} +0 -0
  704. package/inplace/{primeng-inplace.d.ts → index.d.ts} +0 -0
  705. package/inputmask/{primeng-inputmask.d.ts → index.d.ts} +0 -0
  706. package/inputnumber/{primeng-inputnumber.d.ts → index.d.ts} +0 -0
  707. package/inputnumber/inputnumber.d.ts +1 -1
  708. package/inputswitch/{primeng-inputswitch.d.ts → index.d.ts} +0 -0
  709. package/inputtext/{primeng-inputtext.d.ts → index.d.ts} +0 -0
  710. package/inputtextarea/{primeng-inputtextarea.d.ts → index.d.ts} +0 -0
  711. package/keyfilter/{primeng-keyfilter.d.ts → index.d.ts} +0 -0
  712. package/knob/{primeng-knob.d.ts → index.d.ts} +0 -0
  713. package/lightbox/{primeng-lightbox.d.ts → index.d.ts} +0 -0
  714. package/listbox/{primeng-listbox.d.ts → index.d.ts} +0 -0
  715. package/megamenu/{primeng-megamenu.d.ts → index.d.ts} +0 -0
  716. package/menu/{primeng-menu.d.ts → index.d.ts} +0 -0
  717. package/menubar/{primeng-menubar.d.ts → index.d.ts} +0 -0
  718. package/message/{primeng-message.d.ts → index.d.ts} +0 -0
  719. package/messages/{primeng-messages.d.ts → index.d.ts} +0 -0
  720. package/multiselect/{primeng-multiselect.d.ts → index.d.ts} +0 -0
  721. package/multiselect/multiselect.d.ts +27 -34
  722. package/orderlist/{primeng-orderlist.d.ts → index.d.ts} +0 -0
  723. package/organizationchart/{primeng-organizationchart.d.ts → index.d.ts} +0 -0
  724. package/overlay/index.d.ts +5 -0
  725. package/overlay/overlay.d.ts +142 -0
  726. package/overlay/public_api.d.ts +1 -0
  727. package/overlaypanel/{primeng-overlaypanel.d.ts → index.d.ts} +0 -0
  728. package/package.json +119 -111
  729. package/paginator/{primeng-paginator.d.ts → index.d.ts} +0 -0
  730. package/panel/{primeng-panel.d.ts → index.d.ts} +0 -0
  731. package/panel/panel.d.ts +3 -1
  732. package/panelmenu/{primeng-panelmenu.d.ts → index.d.ts} +0 -0
  733. package/password/{primeng-password.d.ts → index.d.ts} +0 -0
  734. package/password/password.d.ts +17 -8
  735. package/picklist/{primeng-picklist.d.ts → index.d.ts} +0 -0
  736. package/progressbar/{primeng-progressbar.d.ts → index.d.ts} +0 -0
  737. package/progressspinner/{primeng-progressspinner.d.ts → index.d.ts} +0 -0
  738. package/radiobutton/{primeng-radiobutton.d.ts → index.d.ts} +0 -0
  739. package/rating/{primeng-rating.d.ts → index.d.ts} +0 -0
  740. package/rating/rating.d.ts +13 -3
  741. package/resources/components/button/button.css +4 -3
  742. package/resources/components/cascadeselect/cascadeselect.css +10 -11
  743. package/resources/components/dropdown/dropdown.css +0 -10
  744. package/resources/components/multiselect/multiselect.css +4 -10
  745. package/resources/components/overlay/overlay.css +78 -0
  746. package/resources/components/rating/rating.css +1 -0
  747. package/resources/components/scroller/scroller.css +5 -0
  748. package/resources/components/sidebar/sidebar.css +1 -1
  749. package/resources/components/table/table.css +23 -105
  750. package/resources/components/treeselect/treeselect.css +0 -10
  751. package/resources/primeng.css +4 -2
  752. package/resources/primeng.min.css +1 -1
  753. package/resources/themes/arya-blue/theme.css +55 -5
  754. package/resources/themes/arya-green/theme.css +55 -5
  755. package/resources/themes/arya-orange/theme.css +55 -5
  756. package/resources/themes/arya-purple/theme.css +55 -5
  757. package/resources/themes/bootstrap4-dark-blue/theme.css +55 -5
  758. package/resources/themes/bootstrap4-dark-purple/theme.css +55 -5
  759. package/resources/themes/bootstrap4-light-blue/theme.css +55 -5
  760. package/resources/themes/bootstrap4-light-purple/theme.css +55 -5
  761. package/resources/themes/fluent-light/theme.css +55 -5
  762. package/resources/themes/lara-dark-blue/theme.css +55 -5
  763. package/resources/themes/lara-dark-indigo/theme.css +55 -5
  764. package/resources/themes/lara-dark-purple/theme.css +55 -5
  765. package/resources/themes/lara-dark-teal/theme.css +55 -5
  766. package/resources/themes/lara-light-blue/theme.css +55 -5
  767. package/resources/themes/lara-light-indigo/theme.css +55 -5
  768. package/resources/themes/lara-light-purple/theme.css +55 -5
  769. package/resources/themes/lara-light-teal/theme.css +55 -5
  770. package/resources/themes/luna-amber/theme.css +55 -5
  771. package/resources/themes/luna-blue/theme.css +55 -5
  772. package/resources/themes/luna-green/theme.css +55 -5
  773. package/resources/themes/luna-pink/theme.css +55 -5
  774. package/resources/themes/md-dark-deeppurple/theme.css +55 -5
  775. package/resources/themes/md-dark-indigo/theme.css +55 -5
  776. package/resources/themes/md-light-deeppurple/theme.css +55 -5
  777. package/resources/themes/md-light-indigo/theme.css +55 -5
  778. package/resources/themes/mdc-dark-deeppurple/theme.css +55 -5
  779. package/resources/themes/mdc-dark-indigo/theme.css +55 -5
  780. package/resources/themes/mdc-light-deeppurple/theme.css +55 -5
  781. package/resources/themes/mdc-light-indigo/theme.css +55 -5
  782. package/resources/themes/nova/theme.css +55 -5
  783. package/resources/themes/nova-accent/theme.css +55 -5
  784. package/resources/themes/nova-alt/theme.css +55 -5
  785. package/resources/themes/rhea/theme.css +55 -5
  786. package/resources/themes/saga-blue/theme.css +55 -5
  787. package/resources/themes/saga-green/theme.css +55 -5
  788. package/resources/themes/saga-orange/theme.css +55 -5
  789. package/resources/themes/saga-purple/theme.css +55 -5
  790. package/resources/themes/tailwind-light/theme.css +55 -5
  791. package/resources/themes/vela-blue/theme.css +55 -5
  792. package/resources/themes/vela-green/theme.css +55 -5
  793. package/resources/themes/vela-orange/theme.css +55 -5
  794. package/resources/themes/vela-purple/theme.css +55 -5
  795. package/ripple/{primeng-ripple.d.ts → index.d.ts} +0 -0
  796. package/scroller/{primeng-scroller.d.ts → index.d.ts} +0 -0
  797. package/scroller/scroller.d.ts +22 -2
  798. package/scrollpanel/{primeng-scrollpanel.d.ts → index.d.ts} +0 -0
  799. package/scrolltop/{primeng-scrolltop.d.ts → index.d.ts} +0 -0
  800. package/selectbutton/{primeng-selectbutton.d.ts → index.d.ts} +0 -0
  801. package/sidebar/{primeng-sidebar.d.ts → index.d.ts} +0 -0
  802. package/sidebar/sidebar.d.ts +2 -0
  803. package/skeleton/{primeng-skeleton.d.ts → index.d.ts} +0 -0
  804. package/slidemenu/{primeng-slidemenu.d.ts → index.d.ts} +0 -0
  805. package/slider/{primeng-slider.d.ts → index.d.ts} +0 -0
  806. package/speeddial/{primeng-speeddial.d.ts → index.d.ts} +0 -0
  807. package/spinner/{primeng-spinner.d.ts → index.d.ts} +0 -0
  808. package/splitbutton/{primeng-splitbutton.d.ts → index.d.ts} +0 -0
  809. package/splitbutton/splitbutton.d.ts +3 -1
  810. package/splitter/{primeng-splitter.d.ts → index.d.ts} +0 -0
  811. package/steps/{primeng-steps.d.ts → index.d.ts} +0 -0
  812. package/styleclass/{primeng-styleclass.d.ts → index.d.ts} +0 -0
  813. package/table/{primeng-table.d.ts → index.d.ts} +0 -0
  814. package/table/table.d.ts +34 -37
  815. package/tabmenu/{primeng-tabmenu.d.ts → index.d.ts} +0 -0
  816. package/tabview/{primeng-tabview.d.ts → index.d.ts} +0 -0
  817. package/tag/{primeng-tag.d.ts → index.d.ts} +0 -0
  818. package/terminal/{primeng-terminal.d.ts → index.d.ts} +0 -0
  819. package/tieredmenu/{primeng-tieredmenu.d.ts → index.d.ts} +0 -0
  820. package/timeline/{primeng-timeline.d.ts → index.d.ts} +0 -0
  821. package/toast/{primeng-toast.d.ts → index.d.ts} +0 -0
  822. package/togglebutton/{primeng-togglebutton.d.ts → index.d.ts} +0 -0
  823. package/toolbar/{primeng-toolbar.d.ts → index.d.ts} +0 -0
  824. package/tooltip/{primeng-tooltip.d.ts → index.d.ts} +0 -0
  825. package/tree/{primeng-tree.d.ts → index.d.ts} +0 -0
  826. package/treeselect/{primeng-treeselect.d.ts → index.d.ts} +0 -0
  827. package/treeselect/treeselect.d.ts +26 -28
  828. package/treetable/{primeng-treetable.d.ts → index.d.ts} +0 -0
  829. package/treetable/treetable.d.ts +3 -7
  830. package/tristatecheckbox/{primeng-tristatecheckbox.d.ts → index.d.ts} +0 -0
  831. package/utils/{primeng-utils.d.ts → index.d.ts} +0 -0
  832. package/utils/objectutils.d.ts +3 -0
  833. package/virtualscroller/{primeng-virtualscroller.d.ts → index.d.ts} +0 -0
  834. package/virtualscroller/virtualscroller.d.ts +2 -2
  835. package/accordion/package.json +0 -10
  836. package/api/package.json +0 -10
  837. package/autocomplete/package.json +0 -10
  838. package/autofocus/package.json +0 -10
  839. package/avatar/package.json +0 -10
  840. package/avatargroup/package.json +0 -10
  841. package/badge/package.json +0 -10
  842. package/blockui/package.json +0 -10
  843. package/breadcrumb/package.json +0 -10
  844. package/button/package.json +0 -10
  845. package/calendar/package.json +0 -10
  846. package/captcha/package.json +0 -10
  847. package/card/package.json +0 -10
  848. package/carousel/package.json +0 -10
  849. package/cascadeselect/package.json +0 -10
  850. package/chart/package.json +0 -10
  851. package/checkbox/package.json +0 -10
  852. package/chip/package.json +0 -10
  853. package/chips/package.json +0 -10
  854. package/codehighlighter/package.json +0 -10
  855. package/colorpicker/package.json +0 -10
  856. package/confirmdialog/package.json +0 -10
  857. package/confirmpopup/package.json +0 -10
  858. package/contextmenu/package.json +0 -10
  859. package/dataview/package.json +0 -10
  860. package/defer/package.json +0 -10
  861. package/dialog/package.json +0 -10
  862. package/divider/package.json +0 -10
  863. package/dock/package.json +0 -10
  864. package/dom/package.json +0 -10
  865. package/dragdrop/package.json +0 -10
  866. package/dropdown/package.json +0 -10
  867. package/dynamicdialog/package.json +0 -10
  868. package/editor/package.json +0 -10
  869. package/esm2020/fullcalendar/fullcalendar.mjs +0 -103
  870. package/esm2020/fullcalendar/primeng-fullcalendar.mjs +0 -5
  871. package/esm2020/fullcalendar/public_api.mjs +0 -2
  872. package/fesm2015/primeng-fullcalendar.mjs +0 -110
  873. package/fesm2015/primeng-fullcalendar.mjs.map +0 -1
  874. package/fesm2020/primeng-fullcalendar.mjs +0 -110
  875. package/fesm2020/primeng-fullcalendar.mjs.map +0 -1
  876. package/fieldset/package.json +0 -10
  877. package/fileupload/package.json +0 -10
  878. package/focustrap/package.json +0 -10
  879. package/fullcalendar/fullcalendar.d.ts +0 -30
  880. package/fullcalendar/package.json +0 -10
  881. package/fullcalendar/primeng-fullcalendar.d.ts +0 -5
  882. package/fullcalendar/public_api.d.ts +0 -1
  883. package/galleria/package.json +0 -10
  884. package/gmap/package.json +0 -10
  885. package/image/package.json +0 -10
  886. package/inplace/package.json +0 -10
  887. package/inputmask/package.json +0 -10
  888. package/inputnumber/package.json +0 -10
  889. package/inputswitch/package.json +0 -10
  890. package/inputtext/package.json +0 -10
  891. package/inputtextarea/package.json +0 -10
  892. package/keyfilter/package.json +0 -10
  893. package/knob/package.json +0 -10
  894. package/lightbox/package.json +0 -10
  895. package/listbox/package.json +0 -10
  896. package/megamenu/package.json +0 -10
  897. package/menu/package.json +0 -10
  898. package/menubar/package.json +0 -10
  899. package/message/package.json +0 -10
  900. package/messages/package.json +0 -10
  901. package/multiselect/package.json +0 -10
  902. package/orderlist/package.json +0 -10
  903. package/organizationchart/package.json +0 -10
  904. package/overlaypanel/package.json +0 -10
  905. package/paginator/package.json +0 -10
  906. package/panel/package.json +0 -10
  907. package/panelmenu/package.json +0 -10
  908. package/password/package.json +0 -10
  909. package/picklist/package.json +0 -10
  910. package/progressbar/package.json +0 -10
  911. package/progressspinner/package.json +0 -10
  912. package/radiobutton/package.json +0 -10
  913. package/rating/package.json +0 -10
  914. package/ripple/package.json +0 -10
  915. package/scroller/package.json +0 -10
  916. package/scrollpanel/package.json +0 -10
  917. package/scrolltop/package.json +0 -10
  918. package/selectbutton/package.json +0 -10
  919. package/sidebar/package.json +0 -10
  920. package/skeleton/package.json +0 -10
  921. package/slidemenu/package.json +0 -10
  922. package/slider/package.json +0 -10
  923. package/speeddial/package.json +0 -10
  924. package/spinner/package.json +0 -10
  925. package/splitbutton/package.json +0 -10
  926. package/splitter/package.json +0 -10
  927. package/steps/package.json +0 -10
  928. package/styleclass/package.json +0 -10
  929. package/table/package.json +0 -10
  930. package/tabmenu/package.json +0 -10
  931. package/tabview/package.json +0 -10
  932. package/tag/package.json +0 -10
  933. package/terminal/package.json +0 -10
  934. package/tieredmenu/package.json +0 -10
  935. package/timeline/package.json +0 -10
  936. package/toast/package.json +0 -10
  937. package/togglebutton/package.json +0 -10
  938. package/toolbar/package.json +0 -10
  939. package/tooltip/package.json +0 -10
  940. package/tree/package.json +0 -10
  941. package/treeselect/package.json +0 -10
  942. package/treetable/package.json +0 -10
  943. package/tristatecheckbox/package.json +0 -10
  944. package/utils/package.json +0 -10
  945. package/virtualscroller/package.json +0 -10
@@ -1,32 +1,32 @@
1
- import * as i0 from '@angular/core';
2
- import { Injectable, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ViewChild, ContentChildren, Directive, HostListener, Optional, NgModule } from '@angular/core';
1
+ import { trigger, transition, style, animate } from '@angular/animations';
3
2
  import * as i2 from '@angular/common';
4
3
  import { CommonModule } from '@angular/common';
4
+ import * as i0 from '@angular/core';
5
+ import { Injectable, EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ViewChild, ContentChildren, Directive, HostListener, Optional, NgModule } from '@angular/core';
5
6
  import * as i6 from '@angular/forms';
6
7
  import { FormsModule } from '@angular/forms';
7
8
  import * as i1 from 'primeng/api';
8
9
  import { FilterOperator, FilterMatchMode, PrimeTemplate, TranslationKeys, SharedModule } from 'primeng/api';
10
+ import * as i7 from 'primeng/button';
11
+ import { ButtonModule } from 'primeng/button';
12
+ import * as i10 from 'primeng/calendar';
13
+ import { CalendarModule } from 'primeng/calendar';
14
+ import { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';
15
+ import * as i5 from 'primeng/dropdown';
16
+ import { DropdownModule } from 'primeng/dropdown';
17
+ import * as i8 from 'primeng/inputnumber';
18
+ import { InputNumberModule } from 'primeng/inputnumber';
19
+ import * as i9 from 'primeng/inputtext';
20
+ import { InputTextModule } from 'primeng/inputtext';
9
21
  import * as i3 from 'primeng/paginator';
10
22
  import { PaginatorModule } from 'primeng/paginator';
11
- import * as i7 from 'primeng/inputtext';
12
- import { InputTextModule } from 'primeng/inputtext';
13
- import * as i11 from 'primeng/button';
14
- import { ButtonModule } from 'primeng/button';
23
+ import * as i4 from 'primeng/scroller';
24
+ import { ScrollerModule } from 'primeng/scroller';
15
25
  import { SelectButtonModule } from 'primeng/selectbutton';
16
- import * as i9 from 'primeng/tristatecheckbox';
26
+ import * as i11 from 'primeng/tristatecheckbox';
17
27
  import { TriStateCheckboxModule } from 'primeng/tristatecheckbox';
18
- import * as i8 from 'primeng/calendar';
19
- import { CalendarModule } from 'primeng/calendar';
20
- import * as i5 from 'primeng/inputnumber';
21
- import { InputNumberModule } from 'primeng/inputnumber';
22
- import * as i10 from 'primeng/dropdown';
23
- import { DropdownModule } from 'primeng/dropdown';
24
- import { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';
25
28
  import { UniqueComponentId, ObjectUtils, ZIndexUtils } from 'primeng/utils';
26
29
  import { Subject } from 'rxjs';
27
- import { trigger, transition, style, animate } from '@angular/animations';
28
- import * as i4 from 'primeng/scroller';
29
- import { ScrollerModule } from 'primeng/scroller';
30
30
 
31
31
  class TableService {
32
32
  constructor() {
@@ -93,7 +93,7 @@ class Table {
93
93
  this.selectAllChange = new EventEmitter();
94
94
  this.selectionChange = new EventEmitter();
95
95
  this.contextMenuSelectionChange = new EventEmitter();
96
- this.contextMenuSelectionMode = "separate";
96
+ this.contextMenuSelectionMode = 'separate';
97
97
  this.rowTrackBy = (index, item) => item;
98
98
  this.lazy = false;
99
99
  this.lazyLoadOnInit = true;
@@ -105,7 +105,7 @@ class Table {
105
105
  this.expandedRowKeys = {};
106
106
  this.editingRowKeys = {};
107
107
  this.rowExpandMode = 'multiple';
108
- this.scrollDirection = "vertical";
108
+ this.scrollDirection = 'vertical';
109
109
  this.virtualScrollDelay = 250;
110
110
  this.columnResizeMode = 'fit';
111
111
  this.loadingIcon = 'pi pi-spinner';
@@ -114,7 +114,7 @@ class Table {
114
114
  this.stateStorage = 'session';
115
115
  this.editMode = 'cell';
116
116
  this.groupRowsByOrder = 1;
117
- this.responsiveLayout = 'stack';
117
+ this.responsiveLayout = 'scroll';
118
118
  this.breakpoint = '960px';
119
119
  this.onRowSelect = new EventEmitter();
120
120
  this.onRowUnselect = new EventEmitter();
@@ -149,12 +149,19 @@ class Table {
149
149
  this.rowGroupHeaderStyleObject = {};
150
150
  this.id = UniqueComponentId();
151
151
  }
152
+ get responsive() {
153
+ return this._responsive;
154
+ }
155
+ set responsive(val) {
156
+ this._responsive = val;
157
+ console.warn('responsive propery is deprecated as table is always responsive with scrollable behavior.');
158
+ }
152
159
  get virtualRowHeight() {
153
160
  return this._virtualRowHeight;
154
161
  }
155
162
  set virtualRowHeight(val) {
156
163
  this._virtualRowHeight = val;
157
- console.warn("The virtualRowHeight property is deprecated, use virtualScrollItemSize property instead.");
164
+ console.warn('The virtualRowHeight property is deprecated, use virtualScrollItemSize property instead.');
158
165
  }
159
166
  ngOnInit() {
160
167
  if (this.lazy && this.lazyLoadOnInit) {
@@ -249,9 +256,6 @@ class Table {
249
256
  if (this.isStateful() && this.resizableColumns) {
250
257
  this.restoreColumnWidths();
251
258
  }
252
- if (this.virtualScroll && this.scroller?.vertical) {
253
- this.updateScrollerPosition();
254
- }
255
259
  }
256
260
  ngOnChanges(simpleChange) {
257
261
  if (simpleChange.value) {
@@ -260,12 +264,13 @@ class Table {
260
264
  }
261
265
  this._value = simpleChange.value.currentValue;
262
266
  if (!this.lazy) {
263
- this.totalRecords = (this._value ? this._value.length : 0);
267
+ this.totalRecords = this._value ? this._value.length : 0;
264
268
  if (this.sortMode == 'single' && (this.sortField || this.groupRowsBy))
265
269
  this.sortSingle();
266
270
  else if (this.sortMode == 'multiple' && (this.multiSortMeta || this.groupRowsBy))
267
271
  this.sortMultiple();
268
- else if (this.hasFilter()) //sort already filters
272
+ else if (this.hasFilter())
273
+ //sort already filters
269
274
  this._filter();
270
275
  }
271
276
  this.tableService.onValueChange(simpleChange.value.currentValue);
@@ -336,12 +341,6 @@ class Table {
336
341
  }
337
342
  this.preventSelectionSetterPropagation = false;
338
343
  }
339
- if (simpleChange.virtualScrollOptions) {
340
- const { previousValue, currentValue } = simpleChange.virtualScrollOptions;
341
- if (this.virtualScroll && this.scroller?.vertical && previousValue.itemSize !== currentValue.itemSize) {
342
- this.updateScrollerPosition();
343
- }
344
- }
345
344
  }
346
345
  get value() {
347
346
  return this._value;
@@ -428,15 +427,6 @@ class Table {
428
427
  }
429
428
  }
430
429
  }
431
- updateScrollerPosition() {
432
- if (this.tableFooterViewChild) {
433
- const getClientHeight = (el) => el ? parseFloat(getComputedStyle(el).height) || DomHandler.getOuterHeight(el) : 0;
434
- const tableHeight = getClientHeight(this.tableViewChild.nativeElement);
435
- const tableFooterHeight = getClientHeight(this.tableFooterViewChild.nativeElement);
436
- this.tableViewChild.nativeElement.style.height = tableHeight + tableFooterHeight + 'px';
437
- this.tableFooterViewChild.nativeElement.style.top = `calc(100% - ${tableFooterHeight}px)`;
438
- }
439
- }
440
430
  onPageChange(event) {
441
431
  this.first = event.first;
442
432
  this.rows = event.rows;
@@ -461,7 +451,7 @@ class Table {
461
451
  sort(event) {
462
452
  let originalEvent = event.originalEvent;
463
453
  if (this.sortMode === 'single') {
464
- this._sortOrder = (this.sortField === event.field) ? this.sortOrder * -1 : this.defaultSortOrder;
454
+ this._sortOrder = this.sortField === event.field ? this.sortOrder * -1 : this.defaultSortOrder;
465
455
  this._sortField = event.field;
466
456
  if (this.resetPageOnSort) {
467
457
  this._first = 0;
@@ -545,8 +535,8 @@ class Table {
545
535
  else if (typeof value1 === 'string' && typeof value2 === 'string')
546
536
  result = value1.localeCompare(value2);
547
537
  else
548
- result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;
549
- return (order * result);
538
+ result = value1 < value2 ? -1 : value1 > value2 ? 1 : 0;
539
+ return order * result;
550
540
  });
551
541
  this._value = [...this.value];
552
542
  }
@@ -598,30 +588,15 @@ class Table {
598
588
  }
599
589
  }
600
590
  multisortField(data1, data2, multiSortMeta, index) {
601
- if (ObjectUtils.isEmpty(this.multiSortMeta) || ObjectUtils.isEmpty(multiSortMeta[index])) {
602
- return 0;
603
- }
604
- let value1 = ObjectUtils.resolveFieldData(data1, multiSortMeta[index].field);
605
- let value2 = ObjectUtils.resolveFieldData(data2, multiSortMeta[index].field);
606
- let result = null;
607
- if (value1 == null && value2 != null)
608
- result = -1;
609
- else if (value1 != null && value2 == null)
610
- result = 1;
611
- else if (value1 == null && value2 == null)
612
- result = 0;
613
- else if (typeof value1 == 'string' || value1 instanceof String) {
614
- if (value1.localeCompare && (value1 != value2)) {
615
- return (multiSortMeta[index].order * value1.localeCompare(value2));
616
- }
617
- }
618
- else {
619
- result = (value1 < value2) ? -1 : 1;
620
- }
621
- if (value1 == value2) {
622
- return (multiSortMeta.length - 1) > (index) ? (this.multisortField(data1, data2, multiSortMeta, index + 1)) : 0;
591
+ const value1 = ObjectUtils.resolveFieldData(data1, multiSortMeta[index].field);
592
+ const value2 = ObjectUtils.resolveFieldData(data2, multiSortMeta[index].field);
593
+ if (ObjectUtils.compare(value1, value2, this.filterLocale) === 0) {
594
+ return multiSortMeta.length - 1 > index ? this.multisortField(data1, data2, multiSortMeta, index + 1) : 0;
623
595
  }
624
- return (multiSortMeta[index].order * result);
596
+ return this.compareValuesOnSort(value1, value2, multiSortMeta[index].order);
597
+ }
598
+ compareValuesOnSort(value1, value2, order) {
599
+ return ObjectUtils.sort(value1, value2, order, this.filterLocale, this.sortOrder);
625
600
  }
626
601
  getSortMeta(field) {
627
602
  if (this.multiSortMeta && this.multiSortMeta.length) {
@@ -635,7 +610,7 @@ class Table {
635
610
  }
636
611
  isSorted(field) {
637
612
  if (this.sortMode === 'single') {
638
- return (this.sortField && this.sortField === field);
613
+ return this.sortField && this.sortField === field;
639
614
  }
640
615
  else if (this.sortMode === 'multiple') {
641
616
  let sorted = false;
@@ -654,9 +629,7 @@ class Table {
654
629
  let target = event.originalEvent.target;
655
630
  let targetNode = target.nodeName;
656
631
  let parentNode = target.parentElement && target.parentElement.nodeName;
657
- if (targetNode == 'INPUT' || targetNode == 'BUTTON' || targetNode == 'A' ||
658
- parentNode == 'INPUT' || parentNode == 'BUTTON' || parentNode == 'A' ||
659
- (DomHandler.hasClass(event.originalEvent.target, 'p-clickable'))) {
632
+ if (targetNode == 'INPUT' || targetNode == 'BUTTON' || targetNode == 'A' || parentNode == 'INPUT' || parentNode == 'BUTTON' || parentNode == 'A' || DomHandler.hasClass(event.originalEvent.target, 'p-clickable')) {
660
633
  return;
661
634
  }
662
635
  if (this.selectionMode) {
@@ -967,7 +940,7 @@ class Table {
967
940
  }
968
941
  else {
969
942
  const data = this.selectionPageOnly ? this.dataToRender(this.processedData) : this.processedData;
970
- let selection = this.selectionPageOnly && this._selection ? this._selection.filter(s => !data.some(d => this.equals(s, d))) : [];
943
+ let selection = this.selectionPageOnly && this._selection ? this._selection.filter((s) => !data.some((d) => this.equals(s, d))) : [];
971
944
  if (check) {
972
945
  selection = this.frozenValue ? [...selection, ...this.frozenValue, ...data] : [...selection, ...data];
973
946
  selection = this.rowSelectable ? selection.filter((data, index) => this.rowSelectable({ data, index })) : selection;
@@ -984,7 +957,7 @@ class Table {
984
957
  }
985
958
  }
986
959
  equals(data1, data2) {
987
- return this.compareSelectionBy === 'equals' ? (data1 === data2) : ObjectUtils.equals(data1, data2, this.dataKey);
960
+ return this.compareSelectionBy === 'equals' ? data1 === data2 : ObjectUtils.equals(data1, data2, this.dataKey);
988
961
  }
989
962
  /* Legacy Filtering for custom elements */
990
963
  filter(value, field, matchMode) {
@@ -1078,7 +1051,7 @@ class Table {
1078
1051
  }
1079
1052
  let matches;
1080
1053
  if (this.filters['global']) {
1081
- matches = localFiltered ? (localFiltered && localMatch && globalMatch) : globalMatch;
1054
+ matches = localFiltered ? localFiltered && localMatch && globalMatch : globalMatch;
1082
1055
  }
1083
1056
  else {
1084
1057
  matches = localFiltered && localMatch;
@@ -1156,7 +1129,7 @@ class Table {
1156
1129
  this.onLazyLoad.emit(this.createLazyLoadMetadata());
1157
1130
  }
1158
1131
  else {
1159
- this.totalRecords = (this._value ? this._value.length : 0);
1132
+ this.totalRecords = this._value ? this._value.length : 0;
1160
1133
  }
1161
1134
  }
1162
1135
  reset() {
@@ -1183,7 +1156,7 @@ class Table {
1183
1156
  let column = columns[i];
1184
1157
  if (column.exportable !== false && column.field) {
1185
1158
  csv += '"' + this.getExportHeader(column) + '"';
1186
- if (i < (columns.length - 1)) {
1159
+ if (i < columns.length - 1) {
1187
1160
  csv += this.csvSeparator;
1188
1161
  }
1189
1162
  }
@@ -1208,7 +1181,7 @@ class Table {
1208
1181
  else
1209
1182
  cellData = '';
1210
1183
  csv += '"' + cellData + '"';
1211
- if (i < (columns.length - 1)) {
1184
+ if (i < columns.length - 1) {
1212
1185
  csv += this.csvSeparator;
1213
1186
  }
1214
1187
  }
@@ -1217,7 +1190,7 @@ class Table {
1217
1190
  let blob = new Blob([csv], {
1218
1191
  type: 'text/csv;charset=utf-8;'
1219
1192
  });
1220
- let link = document.createElement("a");
1193
+ let link = document.createElement('a');
1221
1194
  link.style.display = 'none';
1222
1195
  document.body.appendChild(link);
1223
1196
  if (link.download !== undefined) {
@@ -1269,7 +1242,7 @@ class Table {
1269
1242
  this.bindDocumentEditListener();
1270
1243
  }
1271
1244
  isEditingCellValid() {
1272
- return (this.editingCell && DomHandler.find(this.editingCell, '.ng-invalid.ng-dirty').length === 0);
1245
+ return this.editingCell && DomHandler.find(this.editingCell, '.ng-invalid.ng-dirty').length === 0;
1273
1246
  }
1274
1247
  bindDocumentEditListener() {
1275
1248
  if (!this.documentEditListener) {
@@ -1357,7 +1330,7 @@ class Table {
1357
1330
  let containerLeft = DomHandler.getOffset(this.containerViewChild.nativeElement).left;
1358
1331
  this.resizeColumnElement = event.target.parentElement;
1359
1332
  this.columnResizing = true;
1360
- this.lastResizerHelperX = (event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft);
1333
+ this.lastResizerHelperX = event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft;
1361
1334
  this.onColumnResize(event);
1362
1335
  event.preventDefault();
1363
1336
  }
@@ -1366,7 +1339,7 @@ class Table {
1366
1339
  DomHandler.addClass(this.containerViewChild.nativeElement, 'p-unselectable-text');
1367
1340
  this.resizeHelperViewChild.nativeElement.style.height = this.containerViewChild.nativeElement.offsetHeight + 'px';
1368
1341
  this.resizeHelperViewChild.nativeElement.style.top = 0 + 'px';
1369
- this.resizeHelperViewChild.nativeElement.style.left = (event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft) + 'px';
1342
+ this.resizeHelperViewChild.nativeElement.style.left = event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft + 'px';
1370
1343
  this.resizeHelperViewChild.nativeElement.style.display = 'block';
1371
1344
  }
1372
1345
  onColumnResizeEnd() {
@@ -1403,17 +1376,17 @@ class Table {
1403
1376
  let widths = [];
1404
1377
  const tableHead = DomHandler.findSingle(this.containerViewChild.nativeElement, '.p-datatable-thead');
1405
1378
  let headers = DomHandler.find(tableHead, 'tr > th');
1406
- headers.forEach(header => widths.push(DomHandler.getOuterWidth(header)));
1379
+ headers.forEach((header) => widths.push(DomHandler.getOuterWidth(header)));
1407
1380
  this.destroyStyleElement();
1408
1381
  this.createStyleElement();
1409
1382
  let innerHTML = '';
1410
1383
  widths.forEach((width, index) => {
1411
- let colWidth = index === colIndex ? newColumnWidth : (nextColumnWidth && index === colIndex + 1) ? nextColumnWidth : width;
1412
- let style = this.scrollable ? `flex: 1 1 ${colWidth}px !important` : `width: ${colWidth}px !important`;
1384
+ let colWidth = index === colIndex ? newColumnWidth : nextColumnWidth && index === colIndex + 1 ? nextColumnWidth : width;
1385
+ let style = `width: ${colWidth}px !important; max-width: ${colWidth}px !important`;
1413
1386
  innerHTML += `
1414
- #${this.id} .p-datatable-thead > tr > th:nth-child(${index + 1}),
1415
- #${this.id} .p-datatable-tbody > tr > td:nth-child(${index + 1}),
1416
- #${this.id} .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {
1387
+ #${this.id}-table > .p-datatable-thead > tr > th:nth-child(${index + 1}),
1388
+ #${this.id}-table > .p-datatable-tbody > tr > td:nth-child(${index + 1}),
1389
+ #${this.id}-table > .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {
1417
1390
  ${style}
1418
1391
  }
1419
1392
  `;
@@ -1440,13 +1413,13 @@ class Table {
1440
1413
  this.reorderIndicatorUpViewChild.nativeElement.style.top = dropHeaderOffset.top - containerOffset.top - (this.reorderIconHeight - 1) + 'px';
1441
1414
  this.reorderIndicatorDownViewChild.nativeElement.style.top = dropHeaderOffset.top - containerOffset.top + dropHeader.offsetHeight + 'px';
1442
1415
  if (event.pageX > columnCenter) {
1443
- this.reorderIndicatorUpViewChild.nativeElement.style.left = (targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2)) + 'px';
1444
- this.reorderIndicatorDownViewChild.nativeElement.style.left = (targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2)) + 'px';
1416
+ this.reorderIndicatorUpViewChild.nativeElement.style.left = targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2) + 'px';
1417
+ this.reorderIndicatorDownViewChild.nativeElement.style.left = targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2) + 'px';
1445
1418
  this.dropPosition = 1;
1446
1419
  }
1447
1420
  else {
1448
- this.reorderIndicatorUpViewChild.nativeElement.style.left = (targetLeft - Math.ceil(this.reorderIconWidth / 2)) + 'px';
1449
- this.reorderIndicatorDownViewChild.nativeElement.style.left = (targetLeft - Math.ceil(this.reorderIconWidth / 2)) + 'px';
1421
+ this.reorderIndicatorUpViewChild.nativeElement.style.left = targetLeft - Math.ceil(this.reorderIconWidth / 2) + 'px';
1422
+ this.reorderIndicatorDownViewChild.nativeElement.style.left = targetLeft - Math.ceil(this.reorderIconWidth / 2) + 'px';
1450
1423
  this.dropPosition = -1;
1451
1424
  }
1452
1425
  if ((dropIndex - dragIndex === 1 && this.dropPosition === -1) || (dropIndex - dragIndex === -1 && this.dropPosition === 1)) {
@@ -1475,14 +1448,14 @@ class Table {
1475
1448
  if (this.draggedColumn) {
1476
1449
  let dragIndex = DomHandler.indexWithinGroup(this.draggedColumn, 'preorderablecolumn');
1477
1450
  let dropIndex = DomHandler.indexWithinGroup(dropColumn, 'preorderablecolumn');
1478
- let allowDrop = (dragIndex != dropIndex);
1451
+ let allowDrop = dragIndex != dropIndex;
1479
1452
  if (allowDrop && ((dropIndex - dragIndex == 1 && this.dropPosition === -1) || (dragIndex - dropIndex == 1 && this.dropPosition === 1))) {
1480
1453
  allowDrop = false;
1481
1454
  }
1482
- if (allowDrop && ((dropIndex < dragIndex && this.dropPosition === 1))) {
1455
+ if (allowDrop && dropIndex < dragIndex && this.dropPosition === 1) {
1483
1456
  dropIndex = dropIndex + 1;
1484
1457
  }
1485
- if (allowDrop && ((dropIndex > dragIndex && this.dropPosition === -1))) {
1458
+ if (allowDrop && dropIndex > dragIndex && this.dropPosition === -1) {
1486
1459
  dropIndex = dropIndex - 1;
1487
1460
  }
1488
1461
  if (allowDrop) {
@@ -1551,9 +1524,10 @@ class Table {
1551
1524
  }
1552
1525
  onRowDrop(event, rowElement) {
1553
1526
  if (this.droppedRowIndex != null) {
1554
- let dropIndex = (this.draggedRowIndex > this.droppedRowIndex) ? this.droppedRowIndex : (this.droppedRowIndex === 0) ? 0 : this.droppedRowIndex - 1;
1527
+ let dropIndex = this.draggedRowIndex > this.droppedRowIndex ? this.droppedRowIndex : this.droppedRowIndex === 0 ? 0 : this.droppedRowIndex - 1;
1555
1528
  ObjectUtils.reorderArray(this.value, this.draggedRowIndex, dropIndex);
1556
1529
  if (this.virtualScroll) {
1530
+ // TODO: Check
1557
1531
  this._value = [...this._value];
1558
1532
  }
1559
1533
  this.onRowReorder.emit({
@@ -1628,7 +1602,7 @@ class Table {
1628
1602
  const stateString = storage.getItem(this.stateKey);
1629
1603
  const dateFormat = /\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/;
1630
1604
  const reviver = function (key, value) {
1631
- if (typeof value === "string" && dateFormat.test(value)) {
1605
+ if (typeof value === 'string' && dateFormat.test(value)) {
1632
1606
  return new Date(value);
1633
1607
  }
1634
1608
  return value;
@@ -1675,18 +1649,13 @@ class Table {
1675
1649
  saveColumnWidths(state) {
1676
1650
  let widths = [];
1677
1651
  let headers = DomHandler.find(this.containerViewChild.nativeElement, '.p-datatable-thead > tr > th');
1678
- headers.forEach(header => widths.push(DomHandler.getOuterWidth(header)));
1652
+ headers.forEach((header) => widths.push(DomHandler.getOuterWidth(header)));
1679
1653
  state.columnWidths = widths.join(',');
1680
1654
  if (this.columnResizeMode === 'expand') {
1681
1655
  state.tableWidth = DomHandler.getOuterWidth(this.tableViewChild.nativeElement) + 'px';
1682
1656
  }
1683
1657
  }
1684
1658
  setResizeTableWidth(width) {
1685
- if (this.virtualScroll) {
1686
- const bodyEl = DomHandler.findSingle(this.containerViewChild.nativeElement, '.p-scroller > table > tbody');
1687
- bodyEl.style.width = width;
1688
- bodyEl.style.minWidth = width;
1689
- }
1690
1659
  this.tableViewChild.nativeElement.style.width = width;
1691
1660
  this.tableViewChild.nativeElement.style.minWidth = width;
1692
1661
  }
@@ -1700,11 +1669,11 @@ class Table {
1700
1669
  this.createStyleElement();
1701
1670
  let innerHTML = '';
1702
1671
  widths.forEach((width, index) => {
1703
- let style = this.scrollable ? `flex: 1 1 ${width}px !important` : `width: ${width}px !important`;
1672
+ let style = `width: ${width}px !important; max-width: ${width}px !important`;
1704
1673
  innerHTML += `
1705
- #${this.id} .p-datatable-thead > tr > th:nth-child(${index + 1}),
1706
- #${this.id} .p-datatable-tbody > tr > td:nth-child(${index + 1}),
1707
- #${this.id} .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {
1674
+ #${this.id}-table > .p-datatable-thead > tr > th:nth-child(${index + 1}),
1675
+ #${this.id}-table > .p-datatable-tbody > tr > td:nth-child(${index + 1}),
1676
+ #${this.id}-table > .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {
1708
1677
  ${style}
1709
1678
  }
1710
1679
  `;
@@ -1716,7 +1685,7 @@ class Table {
1716
1685
  saveColumnOrder(state) {
1717
1686
  if (this.columns) {
1718
1687
  let columnOrder = [];
1719
- this.columns.map(column => {
1688
+ this.columns.map((column) => {
1720
1689
  columnOrder.push(column.field || column.key);
1721
1690
  });
1722
1691
  state.columnOrder = columnOrder;
@@ -1730,7 +1699,7 @@ class Table {
1730
1699
  let columnOrder = state.columnOrder;
1731
1700
  if (columnOrder) {
1732
1701
  let reorderedColumns = [];
1733
- columnOrder.map(key => {
1702
+ columnOrder.map((key) => {
1734
1703
  let col = this.findColumnByKey(key);
1735
1704
  if (col) {
1736
1705
  reorderedColumns.push(col);
@@ -1769,29 +1738,29 @@ class Table {
1769
1738
  document.head.appendChild(this.responsiveStyleElement);
1770
1739
  let innerHTML = `
1771
1740
  @media screen and (max-width: ${this.breakpoint}) {
1772
- #${this.id} .p-datatable-thead > tr > th,
1773
- #${this.id} .p-datatable-tfoot > tr > td {
1741
+ #${this.id}-table > .p-datatable-thead > tr > th,
1742
+ #${this.id}-table > .p-datatable-tfoot > tr > td {
1774
1743
  display: none !important;
1775
1744
  }
1776
1745
 
1777
- #${this.id} .p-datatable-tbody > tr > td {
1746
+ #${this.id}-table > .p-datatable-tbody > tr > td {
1778
1747
  display: flex;
1779
1748
  width: 100% !important;
1780
1749
  align-items: center;
1781
1750
  justify-content: space-between;
1782
1751
  }
1783
1752
 
1784
- #${this.id} .p-datatable-tbody > tr > td:not(:last-child) {
1753
+ #${this.id}-table > .p-datatable-tbody > tr > td:not(:last-child) {
1785
1754
  border: 0 none;
1786
1755
  }
1787
1756
 
1788
- #${this.id}.p-datatable-gridlines .p-datatable-tbody > tr > td:last-child {
1757
+ #${this.id}.p-datatable-gridlines > .p-datatable-wrapper > .p-datatable-table > .p-datatable-tbody > tr > td:last-child {
1789
1758
  border-top: 0;
1790
1759
  border-right: 0;
1791
1760
  border-left: 0;
1792
1761
  }
1793
1762
 
1794
- #${this.id} .p-datatable-tbody > tr > td > .p-column-title {
1763
+ #${this.id}-table > .p-datatable-tbody > tr > td > .p-column-title {
1795
1764
  display: block;
1796
1765
  }
1797
1766
  }
@@ -1821,63 +1790,130 @@ class Table {
1821
1790
  }
1822
1791
  Table.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: Table, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: TableService }, { token: i0.ChangeDetectorRef }, { token: i1.FilterService }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
1823
1792
  Table.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: Table, selector: "p-table", inputs: { frozenColumns: "frozenColumns", frozenValue: "frozenValue", style: "style", styleClass: "styleClass", tableStyle: "tableStyle", tableStyleClass: "tableStyleClass", paginator: "paginator", pageLinks: "pageLinks", rowsPerPageOptions: "rowsPerPageOptions", alwaysShowPaginator: "alwaysShowPaginator", paginatorPosition: "paginatorPosition", paginatorDropdownAppendTo: "paginatorDropdownAppendTo", paginatorDropdownScrollHeight: "paginatorDropdownScrollHeight", currentPageReportTemplate: "currentPageReportTemplate", showCurrentPageReport: "showCurrentPageReport", showJumpToPageDropdown: "showJumpToPageDropdown", showJumpToPageInput: "showJumpToPageInput", showFirstLastIcon: "showFirstLastIcon", showPageLinks: "showPageLinks", defaultSortOrder: "defaultSortOrder", sortMode: "sortMode", resetPageOnSort: "resetPageOnSort", selectionMode: "selectionMode", selectionPageOnly: "selectionPageOnly", contextMenuSelection: "contextMenuSelection", contextMenuSelectionMode: "contextMenuSelectionMode", dataKey: "dataKey", metaKeySelection: "metaKeySelection", rowSelectable: "rowSelectable", rowTrackBy: "rowTrackBy", lazy: "lazy", lazyLoadOnInit: "lazyLoadOnInit", compareSelectionBy: "compareSelectionBy", csvSeparator: "csvSeparator", exportFilename: "exportFilename", filters: "filters", globalFilterFields: "globalFilterFields", filterDelay: "filterDelay", filterLocale: "filterLocale", expandedRowKeys: "expandedRowKeys", editingRowKeys: "editingRowKeys", rowExpandMode: "rowExpandMode", scrollable: "scrollable", scrollDirection: "scrollDirection", rowGroupMode: "rowGroupMode", scrollHeight: "scrollHeight", virtualScroll: "virtualScroll", virtualScrollItemSize: "virtualScrollItemSize", virtualScrollOptions: "virtualScrollOptions", virtualScrollDelay: "virtualScrollDelay", frozenWidth: "frozenWidth", responsive: "responsive", contextMenu: "contextMenu", resizableColumns: "resizableColumns", columnResizeMode: "columnResizeMode", reorderableColumns: "reorderableColumns", loading: "loading", loadingIcon: "loadingIcon", showLoader: "showLoader", rowHover: "rowHover", customSort: "customSort", showInitialSortBadge: "showInitialSortBadge", autoLayout: "autoLayout", exportFunction: "exportFunction", exportHeader: "exportHeader", stateKey: "stateKey", stateStorage: "stateStorage", editMode: "editMode", groupRowsBy: "groupRowsBy", groupRowsByOrder: "groupRowsByOrder", responsiveLayout: "responsiveLayout", breakpoint: "breakpoint", virtualRowHeight: "virtualRowHeight", value: "value", columns: "columns", first: "first", rows: "rows", totalRecords: "totalRecords", sortField: "sortField", sortOrder: "sortOrder", multiSortMeta: "multiSortMeta", selection: "selection", selectAll: "selectAll" }, outputs: { selectAllChange: "selectAllChange", selectionChange: "selectionChange", contextMenuSelectionChange: "contextMenuSelectionChange", onRowSelect: "onRowSelect", onRowUnselect: "onRowUnselect", onPage: "onPage", onSort: "onSort", onFilter: "onFilter", onLazyLoad: "onLazyLoad", onRowExpand: "onRowExpand", onRowCollapse: "onRowCollapse", onContextMenuSelect: "onContextMenuSelect", onColResize: "onColResize", onColReorder: "onColReorder", onRowReorder: "onRowReorder", onEditInit: "onEditInit", onEditComplete: "onEditComplete", onEditCancel: "onEditCancel", onHeaderCheckboxToggle: "onHeaderCheckboxToggle", sortFunction: "sortFunction", firstChange: "firstChange", rowsChange: "rowsChange", onStateSave: "onStateSave", onStateRestore: "onStateRestore" }, host: { classAttribute: "p-element" }, providers: [TableService], queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }, { propertyName: "resizeHelperViewChild", first: true, predicate: ["resizeHelper"], descendants: true }, { propertyName: "reorderIndicatorUpViewChild", first: true, predicate: ["reorderIndicatorUp"], descendants: true }, { propertyName: "reorderIndicatorDownViewChild", first: true, predicate: ["reorderIndicatorDown"], descendants: true }, { propertyName: "wrapperViewChild", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "tableViewChild", first: true, predicate: ["table"], descendants: true }, { propertyName: "tableHeaderViewChild", first: true, predicate: ["thead"], descendants: true }, { propertyName: "tableFooterViewChild", first: true, predicate: ["tfoot"], descendants: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
1824
- <div #container [ngStyle]="style" [class]="styleClass"
1825
- [ngClass]="{'p-datatable p-component': true,
1826
- 'p-datatable-hoverable-rows': (rowHover||selectionMode),
1827
- 'p-datatable-auto-layout': autoLayout,
1828
- 'p-datatable-resizable': resizableColumns,
1829
- 'p-datatable-resizable-fit': (resizableColumns && columnResizeMode === 'fit'),
1830
- 'p-datatable-scrollable': scrollable,
1831
- 'p-datatable-scrollable-vertical': scrollable && scrollDirection === 'vertical',
1832
- 'p-datatable-scrollable-horizontal': scrollable && scrollDirection === 'horizontal',
1833
- 'p-datatable-scrollable-both': scrollable && scrollDirection === 'both',
1834
- 'p-datatable-flex-scrollable': (scrollable && scrollHeight === 'flex'),
1835
- 'p-datatable-responsive-stack': responsiveLayout === 'stack',
1836
- 'p-datatable-responsive-scroll': responsiveLayout === 'scroll',
1837
- 'p-datatable-responsive': responsive,
1838
- 'p-datatable-grouped-header': headerGroupedTemplate != null,
1839
- 'p-datatable-grouped-footer': footerGroupedTemplate != null}" [attr.id]="id">
1793
+ <div
1794
+ #container
1795
+ [ngStyle]="style"
1796
+ [class]="styleClass"
1797
+ [ngClass]="{ 'p-datatable p-component': true, 'p-datatable-hoverable-rows': rowHover || selectionMode, 'p-datatable-scrollable': scrollable, 'p-datatable-flex-scrollable': scrollable && scrollHeight === 'flex' }"
1798
+ [attr.id]="id"
1799
+ >
1840
1800
  <div class="p-datatable-loading-overlay p-component-overlay" *ngIf="loading && showLoader">
1841
1801
  <i [class]="'p-datatable-loading-icon pi-spin ' + loadingIcon"></i>
1842
1802
  </div>
1843
1803
  <div *ngIf="captionTemplate" class="p-datatable-header">
1844
1804
  <ng-container *ngTemplateOutlet="captionTemplate"></ng-container>
1845
1805
  </div>
1846
- <p-paginator [rows]="rows" [first]="first" [totalRecords]="totalRecords" [pageLinkSize]="pageLinks" styleClass="p-paginator-top" [alwaysShow]="alwaysShowPaginator"
1847
- (onPageChange)="onPageChange($event)" [rowsPerPageOptions]="rowsPerPageOptions" *ngIf="paginator && (paginatorPosition === 'top' || paginatorPosition =='both')"
1848
- [templateLeft]="paginatorLeftTemplate" [templateRight]="paginatorRightTemplate" [dropdownAppendTo]="paginatorDropdownAppendTo" [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1849
- [currentPageReportTemplate]="currentPageReportTemplate" [showFirstLastIcon]="showFirstLastIcon" [dropdownItemTemplate]="paginatorDropdownItemTemplate" [showCurrentPageReport]="showCurrentPageReport" [showJumpToPageDropdown]="showJumpToPageDropdown" [showJumpToPageInput]="showJumpToPageInput" [showPageLinks]="showPageLinks"></p-paginator>
1806
+ <p-paginator
1807
+ [rows]="rows"
1808
+ [first]="first"
1809
+ [totalRecords]="totalRecords"
1810
+ [pageLinkSize]="pageLinks"
1811
+ styleClass="p-paginator-top"
1812
+ [alwaysShow]="alwaysShowPaginator"
1813
+ (onPageChange)="onPageChange($event)"
1814
+ [rowsPerPageOptions]="rowsPerPageOptions"
1815
+ *ngIf="paginator && (paginatorPosition === 'top' || paginatorPosition == 'both')"
1816
+ [templateLeft]="paginatorLeftTemplate"
1817
+ [templateRight]="paginatorRightTemplate"
1818
+ [dropdownAppendTo]="paginatorDropdownAppendTo"
1819
+ [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1820
+ [currentPageReportTemplate]="currentPageReportTemplate"
1821
+ [showFirstLastIcon]="showFirstLastIcon"
1822
+ [dropdownItemTemplate]="paginatorDropdownItemTemplate"
1823
+ [showCurrentPageReport]="showCurrentPageReport"
1824
+ [showJumpToPageDropdown]="showJumpToPageDropdown"
1825
+ [showJumpToPageInput]="showJumpToPageInput"
1826
+ [showPageLinks]="showPageLinks"
1827
+ ></p-paginator>
1850
1828
 
1851
- <div #wrapper class="p-datatable-wrapper" [ngStyle]="{maxHeight: virtualScroll ? '' : scrollHeight}">
1852
- <p-scroller #scroller *ngIf="virtualScroll" [items]="processedData" [columns]="columns" [style]="{'height': scrollHeight !== 'flex' ? scrollHeight : undefined}" [scrollHeight]="scrollHeight !== 'flex' ? undefined : '100%'" [itemSize]="virtualScrollItemSize||_virtualRowHeight" [delay]="lazy ? virtualScrollDelay : 0"
1853
- [lazy]="lazy" (onLazyLoad)="onLazyItemLoad($event)" [loaderDisabled]="true" [showSpacer]="false" [showLoader]="loadingBodyTemplate" [options]="virtualScrollOptions">
1829
+ <div #wrapper class="p-datatable-wrapper" [ngStyle]="{ maxHeight: virtualScroll ? '' : scrollHeight }">
1830
+ <p-scroller
1831
+ #scroller
1832
+ *ngIf="virtualScroll"
1833
+ [items]="processedData"
1834
+ [columns]="columns"
1835
+ [style]="{ height: scrollHeight !== 'flex' ? scrollHeight : undefined }"
1836
+ [scrollHeight]="scrollHeight !== 'flex' ? undefined : '100%'"
1837
+ [itemSize]="virtualScrollItemSize || _virtualRowHeight"
1838
+ [step]="rows"
1839
+ [delay]="lazy ? virtualScrollDelay : 0"
1840
+ [inline]="true"
1841
+ [lazy]="lazy"
1842
+ (onLazyLoad)="onLazyItemLoad($event)"
1843
+ [loaderDisabled]="true"
1844
+ [showSpacer]="false"
1845
+ [showLoader]="loadingBodyTemplate"
1846
+ [options]="virtualScrollOptions"
1847
+ >
1854
1848
  <ng-template pTemplate="content" let-items let-scrollerOptions="options">
1855
- <ng-container *ngTemplateOutlet="buildInTable; context: {$implicit: items, options: scrollerOptions}"></ng-container>
1849
+ <ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: items, options: scrollerOptions }"></ng-container>
1856
1850
  </ng-template>
1857
1851
  </p-scroller>
1858
1852
  <ng-container *ngIf="!virtualScroll">
1859
- <ng-container *ngTemplateOutlet="buildInTable; context: {$implicit: processedData, options: { columns }}"></ng-container>
1853
+ <ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: processedData, options: { columns } }"></ng-container>
1860
1854
  </ng-container>
1861
1855
 
1862
1856
  <ng-template #buildInTable let-items let-scrollerOptions="options">
1863
- <table #table role="table" class="p-datatable-table" [ngClass]="tableStyleClass" [ngStyle]="tableStyle" [style]="scrollerOptions.spacerStyle" [attr.id]="id+'-table'">
1864
- <ng-container *ngTemplateOutlet="colGroupTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
1857
+ <table
1858
+ #table
1859
+ role="table"
1860
+ [ngClass]="{ 'p-datatable-table': true, 'p-datatable-scrollable-table': scrollable, 'p-datatable-resizable-table': resizableColumns, 'p-datatable-resizable-table-fit': resizableColumns && columnResizeMode === 'fit' }"
1861
+ [class]="tableStyleClass"
1862
+ [style]="tableStyle"
1863
+ [attr.id]="id + '-table'"
1864
+ >
1865
+ <ng-container *ngTemplateOutlet="colGroupTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1865
1866
  <thead #thead class="p-datatable-thead">
1866
- <ng-container *ngTemplateOutlet="headerGroupedTemplate||headerTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
1867
+ <ng-container *ngTemplateOutlet="headerGroupedTemplate || headerTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1867
1868
  </thead>
1868
- <tbody class="p-datatable-tbody p-datatable-frozen-tbody" *ngIf="frozenValue||frozenBodyTemplate" [value]="frozenValue" [frozenRows]="true" [pTableBody]="scrollerOptions.columns" [pTableBodyTemplate]="frozenBodyTemplate" [frozen]="true"></tbody>
1869
- <tbody class="p-datatable-tbody" [ngClass]="scrollerOptions.contentStyleClass" [style]="scrollerOptions.contentStyle" [value]="dataToRender(scrollerOptions.rows)" [pTableBody]="scrollerOptions.columns" [pTableBodyTemplate]="bodyTemplate" [scrollerOptions]="scrollerOptions"></tbody>
1870
- <tfoot *ngIf="footerGroupedTemplate||footerTemplate" #tfoot class="p-datatable-tfoot">
1871
- <ng-container *ngTemplateOutlet="footerGroupedTemplate||footerTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
1869
+ <tbody
1870
+ class="p-datatable-tbody p-datatable-frozen-tbody"
1871
+ *ngIf="frozenValue || frozenBodyTemplate"
1872
+ [value]="frozenValue"
1873
+ [frozenRows]="true"
1874
+ [pTableBody]="scrollerOptions.columns"
1875
+ [pTableBodyTemplate]="frozenBodyTemplate"
1876
+ [frozen]="true"
1877
+ ></tbody>
1878
+ <tbody
1879
+ class="p-datatable-tbody"
1880
+ [ngClass]="scrollerOptions.contentStyleClass"
1881
+ [style]="scrollerOptions.contentStyle"
1882
+ [value]="dataToRender(scrollerOptions.rows)"
1883
+ [pTableBody]="scrollerOptions.columns"
1884
+ [pTableBodyTemplate]="bodyTemplate"
1885
+ [scrollerOptions]="scrollerOptions"
1886
+ ></tbody>
1887
+ <tbody *ngIf="scrollerOptions.spacerStyle" [style]="'height: calc(' + scrollerOptions.spacerStyle.height + ' - ' + scrollerOptions.rows.length * scrollerOptions.itemSize + 'px);'" class="p-datatable-scroller-spacer"></tbody>
1888
+ <tfoot *ngIf="footerGroupedTemplate || footerTemplate" #tfoot class="p-datatable-tfoot">
1889
+ <ng-container *ngTemplateOutlet="footerGroupedTemplate || footerTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1872
1890
  </tfoot>
1873
1891
  </table>
1874
1892
  </ng-template>
1875
1893
  </div>
1876
1894
 
1877
- <p-paginator [rows]="rows" [first]="first" [totalRecords]="totalRecords" [pageLinkSize]="pageLinks" styleClass="p-paginator-bottom" [alwaysShow]="alwaysShowPaginator"
1878
- (onPageChange)="onPageChange($event)" [rowsPerPageOptions]="rowsPerPageOptions" *ngIf="paginator && (paginatorPosition === 'bottom' || paginatorPosition =='both')"
1879
- [templateLeft]="paginatorLeftTemplate" [templateRight]="paginatorRightTemplate" [dropdownAppendTo]="paginatorDropdownAppendTo" [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1880
- [currentPageReportTemplate]="currentPageReportTemplate" [showFirstLastIcon]="showFirstLastIcon" [dropdownItemTemplate]="paginatorDropdownItemTemplate" [showCurrentPageReport]="showCurrentPageReport" [showJumpToPageDropdown]="showJumpToPageDropdown" [showJumpToPageInput]="showJumpToPageInput" [showPageLinks]="showPageLinks"></p-paginator>
1895
+ <p-paginator
1896
+ [rows]="rows"
1897
+ [first]="first"
1898
+ [totalRecords]="totalRecords"
1899
+ [pageLinkSize]="pageLinks"
1900
+ styleClass="p-paginator-bottom"
1901
+ [alwaysShow]="alwaysShowPaginator"
1902
+ (onPageChange)="onPageChange($event)"
1903
+ [rowsPerPageOptions]="rowsPerPageOptions"
1904
+ *ngIf="paginator && (paginatorPosition === 'bottom' || paginatorPosition == 'both')"
1905
+ [templateLeft]="paginatorLeftTemplate"
1906
+ [templateRight]="paginatorRightTemplate"
1907
+ [dropdownAppendTo]="paginatorDropdownAppendTo"
1908
+ [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1909
+ [currentPageReportTemplate]="currentPageReportTemplate"
1910
+ [showFirstLastIcon]="showFirstLastIcon"
1911
+ [dropdownItemTemplate]="paginatorDropdownItemTemplate"
1912
+ [showCurrentPageReport]="showCurrentPageReport"
1913
+ [showJumpToPageDropdown]="showJumpToPageDropdown"
1914
+ [showJumpToPageInput]="showJumpToPageInput"
1915
+ [showPageLinks]="showPageLinks"
1916
+ ></p-paginator>
1881
1917
 
1882
1918
  <div *ngIf="summaryTemplate" class="p-datatable-footer">
1883
1919
  <ng-container *ngTemplateOutlet="summaryTemplate"></ng-container>
@@ -1887,67 +1923,134 @@ Table.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7
1887
1923
  <span #reorderIndicatorUp class="pi pi-arrow-down p-datatable-reorder-indicator-up" style="display:none" *ngIf="reorderableColumns"></span>
1888
1924
  <span #reorderIndicatorDown class="pi pi-arrow-up p-datatable-reorder-indicator-down" style="display:none" *ngIf="reorderableColumns"></span>
1889
1925
  </div>
1890
- `, isInline: true, styles: [".p-datatable{position:relative}.p-datatable table{border-collapse:collapse;min-width:100%;table-layout:fixed}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-auto-layout>.p-datatable-wrapper{overflow-x:auto}.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper{overflow-x:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper>table,.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable .p-datatable-wrapper{position:relative;overflow:auto}.p-datatable-scrollable .p-datatable-thead,.p-datatable-scrollable .p-datatable-tbody,.p-datatable-scrollable .p-datatable-tfoot{display:block}.p-datatable-scrollable .p-datatable-thead>tr,.p-datatable-scrollable .p-datatable-tbody>tr,.p-datatable-scrollable .p-datatable-tfoot>tr{display:flex;flex-wrap:nowrap;width:100%}.p-datatable-scrollable .p-datatable-thead>tr>th,.p-datatable-scrollable .p-datatable-tbody>tr>td,.p-datatable-scrollable .p-datatable-tfoot>tr>td{display:flex;flex:1 1 0;align-items:center}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-thead,.p-datatable-scrollable>.p-datatable-wrapper>.p-scroller-viewport>.p-scroller>.p-datatable-table>.p-datatable-thead{position:sticky;top:0;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-tfoot,.p-datatable-scrollable>.p-datatable-wrapper>.p-scroller-viewport>.p-scroller>.p-datatable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-scrollable-both .p-datatable-thead>tr>th,.p-datatable-scrollable-both .p-datatable-tbody>tr>td,.p-datatable-scrollable-both .p-datatable-tfoot>tr>td,.p-datatable-scrollable-horizontal .p-datatable-thead>tr>th .p-datatable-scrollable-horizontal .p-datatable-tbody>tr>td,.p-datatable-scrollable-horizontal .p-datatable-tfoot>tr>td{flex:0 0 auto}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable .p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable .p-rowgroup-header{position:sticky;z-index:1}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot{display:table;border-collapse:collapse;width:100%;table-layout:fixed}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr{display:table-row}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr>th,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr>td{display:table-cell}.p-datatable-scrollable .p-scroller>.p-datatable-table{display:inline-block}.p-datatable-flex-scrollable{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-flex-scrollable .p-datatable-virtual-scrollable-body{flex:1}.p-datatable-resizable>.p-datatable-wrapper{overflow-x:auto}.p-datatable-resizable .p-datatable-thead>tr>th,.p-datatable-resizable .p-datatable-tfoot>tr>td,.p-datatable-resizable .p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable .p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-fit .p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute;display:none}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable .p-datatable-tbody>tr>td>.p-column-title{display:none}.p-datatable .p-scroller .p-scroller-loading{transform:none!important;min-height:0;position:sticky;top:0;left:0}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i2.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i0.forwardRef(function () { return i3.Paginator; }), selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "templateLeft", "templateRight", "dropdownAppendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "showPageLinks", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.PrimeTemplate; }), selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i0.forwardRef(function () { return i4.Scroller; }), selector: "p-scroller", inputs: ["id", "style", "styleClass", "tabindex", "items", "itemSize", "scrollHeight", "scrollWidth", "orientation", "delay", "resizeDelay", "lazy", "disabled", "loaderDisabled", "columns", "showSpacer", "showLoader", "numToleratedItems", "loading", "autoSize", "trackBy", "options"], outputs: ["onLazyLoad", "onScroll", "onScrollIndexChange"] }, { kind: "component", type: i0.forwardRef(function () { return TableBody; }), selector: "[pTableBody]", inputs: ["pTableBody", "pTableBodyTemplate", "value", "frozen", "frozenRows", "scrollerOptions"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1926
+ `, isInline: true, styles: [".p-datatable{position:relative}.p-datatable>.p-datatable-wrapper{overflow:auto}.p-datatable-table{border-spacing:0px;width:100%}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable>.p-datatable-wrapper{position:relative}.p-datatable-scrollable-table>.p-datatable-thead{position:sticky;top:0;z-index:1}.p-datatable-scrollable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable>.p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable-table>.p-datatable-tbody>.p-rowgroup-header{position:sticky;z-index:1}.p-datatable-resizable-table>.p-datatable-thead>tr>th,.p-datatable-resizable-table>.p-datatable-tfoot>tr>td,.p-datatable-resizable-table>.p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable-table>.p-datatable-thead>tr>th.p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-table-fit>.p-datatable-thead>tr>th.p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute;display:none}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable-tbody>tr>td>.p-column-title{display:none}.p-datatable-scroller-spacer{display:flex}.p-datatable .p-scroller .p-scroller-loading{transform:none!important;min-height:0;position:sticky;top:0;left:0}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i2.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i0.forwardRef(function () { return i3.Paginator; }), selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "templateLeft", "templateRight", "dropdownAppendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "showPageLinks", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.PrimeTemplate; }), selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i0.forwardRef(function () { return i4.Scroller; }), selector: "p-scroller", inputs: ["id", "style", "styleClass", "tabindex", "items", "itemSize", "scrollHeight", "scrollWidth", "orientation", "step", "delay", "resizeDelay", "appendOnly", "inline", "lazy", "disabled", "loaderDisabled", "columns", "showSpacer", "showLoader", "numToleratedItems", "loading", "autoSize", "trackBy", "options"], outputs: ["onLazyLoad", "onScroll", "onScrollIndexChange"] }, { kind: "component", type: i0.forwardRef(function () { return TableBody; }), selector: "[pTableBody]", inputs: ["pTableBody", "pTableBodyTemplate", "value", "frozen", "frozenRows", "scrollerOptions"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1891
1927
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: Table, decorators: [{
1892
1928
  type: Component,
1893
1929
  args: [{ selector: 'p-table', template: `
1894
- <div #container [ngStyle]="style" [class]="styleClass"
1895
- [ngClass]="{'p-datatable p-component': true,
1896
- 'p-datatable-hoverable-rows': (rowHover||selectionMode),
1897
- 'p-datatable-auto-layout': autoLayout,
1898
- 'p-datatable-resizable': resizableColumns,
1899
- 'p-datatable-resizable-fit': (resizableColumns && columnResizeMode === 'fit'),
1900
- 'p-datatable-scrollable': scrollable,
1901
- 'p-datatable-scrollable-vertical': scrollable && scrollDirection === 'vertical',
1902
- 'p-datatable-scrollable-horizontal': scrollable && scrollDirection === 'horizontal',
1903
- 'p-datatable-scrollable-both': scrollable && scrollDirection === 'both',
1904
- 'p-datatable-flex-scrollable': (scrollable && scrollHeight === 'flex'),
1905
- 'p-datatable-responsive-stack': responsiveLayout === 'stack',
1906
- 'p-datatable-responsive-scroll': responsiveLayout === 'scroll',
1907
- 'p-datatable-responsive': responsive,
1908
- 'p-datatable-grouped-header': headerGroupedTemplate != null,
1909
- 'p-datatable-grouped-footer': footerGroupedTemplate != null}" [attr.id]="id">
1930
+ <div
1931
+ #container
1932
+ [ngStyle]="style"
1933
+ [class]="styleClass"
1934
+ [ngClass]="{ 'p-datatable p-component': true, 'p-datatable-hoverable-rows': rowHover || selectionMode, 'p-datatable-scrollable': scrollable, 'p-datatable-flex-scrollable': scrollable && scrollHeight === 'flex' }"
1935
+ [attr.id]="id"
1936
+ >
1910
1937
  <div class="p-datatable-loading-overlay p-component-overlay" *ngIf="loading && showLoader">
1911
1938
  <i [class]="'p-datatable-loading-icon pi-spin ' + loadingIcon"></i>
1912
1939
  </div>
1913
1940
  <div *ngIf="captionTemplate" class="p-datatable-header">
1914
1941
  <ng-container *ngTemplateOutlet="captionTemplate"></ng-container>
1915
1942
  </div>
1916
- <p-paginator [rows]="rows" [first]="first" [totalRecords]="totalRecords" [pageLinkSize]="pageLinks" styleClass="p-paginator-top" [alwaysShow]="alwaysShowPaginator"
1917
- (onPageChange)="onPageChange($event)" [rowsPerPageOptions]="rowsPerPageOptions" *ngIf="paginator && (paginatorPosition === 'top' || paginatorPosition =='both')"
1918
- [templateLeft]="paginatorLeftTemplate" [templateRight]="paginatorRightTemplate" [dropdownAppendTo]="paginatorDropdownAppendTo" [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1919
- [currentPageReportTemplate]="currentPageReportTemplate" [showFirstLastIcon]="showFirstLastIcon" [dropdownItemTemplate]="paginatorDropdownItemTemplate" [showCurrentPageReport]="showCurrentPageReport" [showJumpToPageDropdown]="showJumpToPageDropdown" [showJumpToPageInput]="showJumpToPageInput" [showPageLinks]="showPageLinks"></p-paginator>
1943
+ <p-paginator
1944
+ [rows]="rows"
1945
+ [first]="first"
1946
+ [totalRecords]="totalRecords"
1947
+ [pageLinkSize]="pageLinks"
1948
+ styleClass="p-paginator-top"
1949
+ [alwaysShow]="alwaysShowPaginator"
1950
+ (onPageChange)="onPageChange($event)"
1951
+ [rowsPerPageOptions]="rowsPerPageOptions"
1952
+ *ngIf="paginator && (paginatorPosition === 'top' || paginatorPosition == 'both')"
1953
+ [templateLeft]="paginatorLeftTemplate"
1954
+ [templateRight]="paginatorRightTemplate"
1955
+ [dropdownAppendTo]="paginatorDropdownAppendTo"
1956
+ [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1957
+ [currentPageReportTemplate]="currentPageReportTemplate"
1958
+ [showFirstLastIcon]="showFirstLastIcon"
1959
+ [dropdownItemTemplate]="paginatorDropdownItemTemplate"
1960
+ [showCurrentPageReport]="showCurrentPageReport"
1961
+ [showJumpToPageDropdown]="showJumpToPageDropdown"
1962
+ [showJumpToPageInput]="showJumpToPageInput"
1963
+ [showPageLinks]="showPageLinks"
1964
+ ></p-paginator>
1920
1965
 
1921
- <div #wrapper class="p-datatable-wrapper" [ngStyle]="{maxHeight: virtualScroll ? '' : scrollHeight}">
1922
- <p-scroller #scroller *ngIf="virtualScroll" [items]="processedData" [columns]="columns" [style]="{'height': scrollHeight !== 'flex' ? scrollHeight : undefined}" [scrollHeight]="scrollHeight !== 'flex' ? undefined : '100%'" [itemSize]="virtualScrollItemSize||_virtualRowHeight" [delay]="lazy ? virtualScrollDelay : 0"
1923
- [lazy]="lazy" (onLazyLoad)="onLazyItemLoad($event)" [loaderDisabled]="true" [showSpacer]="false" [showLoader]="loadingBodyTemplate" [options]="virtualScrollOptions">
1966
+ <div #wrapper class="p-datatable-wrapper" [ngStyle]="{ maxHeight: virtualScroll ? '' : scrollHeight }">
1967
+ <p-scroller
1968
+ #scroller
1969
+ *ngIf="virtualScroll"
1970
+ [items]="processedData"
1971
+ [columns]="columns"
1972
+ [style]="{ height: scrollHeight !== 'flex' ? scrollHeight : undefined }"
1973
+ [scrollHeight]="scrollHeight !== 'flex' ? undefined : '100%'"
1974
+ [itemSize]="virtualScrollItemSize || _virtualRowHeight"
1975
+ [step]="rows"
1976
+ [delay]="lazy ? virtualScrollDelay : 0"
1977
+ [inline]="true"
1978
+ [lazy]="lazy"
1979
+ (onLazyLoad)="onLazyItemLoad($event)"
1980
+ [loaderDisabled]="true"
1981
+ [showSpacer]="false"
1982
+ [showLoader]="loadingBodyTemplate"
1983
+ [options]="virtualScrollOptions"
1984
+ >
1924
1985
  <ng-template pTemplate="content" let-items let-scrollerOptions="options">
1925
- <ng-container *ngTemplateOutlet="buildInTable; context: {$implicit: items, options: scrollerOptions}"></ng-container>
1986
+ <ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: items, options: scrollerOptions }"></ng-container>
1926
1987
  </ng-template>
1927
1988
  </p-scroller>
1928
1989
  <ng-container *ngIf="!virtualScroll">
1929
- <ng-container *ngTemplateOutlet="buildInTable; context: {$implicit: processedData, options: { columns }}"></ng-container>
1990
+ <ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: processedData, options: { columns } }"></ng-container>
1930
1991
  </ng-container>
1931
1992
 
1932
1993
  <ng-template #buildInTable let-items let-scrollerOptions="options">
1933
- <table #table role="table" class="p-datatable-table" [ngClass]="tableStyleClass" [ngStyle]="tableStyle" [style]="scrollerOptions.spacerStyle" [attr.id]="id+'-table'">
1934
- <ng-container *ngTemplateOutlet="colGroupTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
1994
+ <table
1995
+ #table
1996
+ role="table"
1997
+ [ngClass]="{ 'p-datatable-table': true, 'p-datatable-scrollable-table': scrollable, 'p-datatable-resizable-table': resizableColumns, 'p-datatable-resizable-table-fit': resizableColumns && columnResizeMode === 'fit' }"
1998
+ [class]="tableStyleClass"
1999
+ [style]="tableStyle"
2000
+ [attr.id]="id + '-table'"
2001
+ >
2002
+ <ng-container *ngTemplateOutlet="colGroupTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1935
2003
  <thead #thead class="p-datatable-thead">
1936
- <ng-container *ngTemplateOutlet="headerGroupedTemplate||headerTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
2004
+ <ng-container *ngTemplateOutlet="headerGroupedTemplate || headerTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1937
2005
  </thead>
1938
- <tbody class="p-datatable-tbody p-datatable-frozen-tbody" *ngIf="frozenValue||frozenBodyTemplate" [value]="frozenValue" [frozenRows]="true" [pTableBody]="scrollerOptions.columns" [pTableBodyTemplate]="frozenBodyTemplate" [frozen]="true"></tbody>
1939
- <tbody class="p-datatable-tbody" [ngClass]="scrollerOptions.contentStyleClass" [style]="scrollerOptions.contentStyle" [value]="dataToRender(scrollerOptions.rows)" [pTableBody]="scrollerOptions.columns" [pTableBodyTemplate]="bodyTemplate" [scrollerOptions]="scrollerOptions"></tbody>
1940
- <tfoot *ngIf="footerGroupedTemplate||footerTemplate" #tfoot class="p-datatable-tfoot">
1941
- <ng-container *ngTemplateOutlet="footerGroupedTemplate||footerTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
2006
+ <tbody
2007
+ class="p-datatable-tbody p-datatable-frozen-tbody"
2008
+ *ngIf="frozenValue || frozenBodyTemplate"
2009
+ [value]="frozenValue"
2010
+ [frozenRows]="true"
2011
+ [pTableBody]="scrollerOptions.columns"
2012
+ [pTableBodyTemplate]="frozenBodyTemplate"
2013
+ [frozen]="true"
2014
+ ></tbody>
2015
+ <tbody
2016
+ class="p-datatable-tbody"
2017
+ [ngClass]="scrollerOptions.contentStyleClass"
2018
+ [style]="scrollerOptions.contentStyle"
2019
+ [value]="dataToRender(scrollerOptions.rows)"
2020
+ [pTableBody]="scrollerOptions.columns"
2021
+ [pTableBodyTemplate]="bodyTemplate"
2022
+ [scrollerOptions]="scrollerOptions"
2023
+ ></tbody>
2024
+ <tbody *ngIf="scrollerOptions.spacerStyle" [style]="'height: calc(' + scrollerOptions.spacerStyle.height + ' - ' + scrollerOptions.rows.length * scrollerOptions.itemSize + 'px);'" class="p-datatable-scroller-spacer"></tbody>
2025
+ <tfoot *ngIf="footerGroupedTemplate || footerTemplate" #tfoot class="p-datatable-tfoot">
2026
+ <ng-container *ngTemplateOutlet="footerGroupedTemplate || footerTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1942
2027
  </tfoot>
1943
2028
  </table>
1944
2029
  </ng-template>
1945
2030
  </div>
1946
2031
 
1947
- <p-paginator [rows]="rows" [first]="first" [totalRecords]="totalRecords" [pageLinkSize]="pageLinks" styleClass="p-paginator-bottom" [alwaysShow]="alwaysShowPaginator"
1948
- (onPageChange)="onPageChange($event)" [rowsPerPageOptions]="rowsPerPageOptions" *ngIf="paginator && (paginatorPosition === 'bottom' || paginatorPosition =='both')"
1949
- [templateLeft]="paginatorLeftTemplate" [templateRight]="paginatorRightTemplate" [dropdownAppendTo]="paginatorDropdownAppendTo" [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1950
- [currentPageReportTemplate]="currentPageReportTemplate" [showFirstLastIcon]="showFirstLastIcon" [dropdownItemTemplate]="paginatorDropdownItemTemplate" [showCurrentPageReport]="showCurrentPageReport" [showJumpToPageDropdown]="showJumpToPageDropdown" [showJumpToPageInput]="showJumpToPageInput" [showPageLinks]="showPageLinks"></p-paginator>
2032
+ <p-paginator
2033
+ [rows]="rows"
2034
+ [first]="first"
2035
+ [totalRecords]="totalRecords"
2036
+ [pageLinkSize]="pageLinks"
2037
+ styleClass="p-paginator-bottom"
2038
+ [alwaysShow]="alwaysShowPaginator"
2039
+ (onPageChange)="onPageChange($event)"
2040
+ [rowsPerPageOptions]="rowsPerPageOptions"
2041
+ *ngIf="paginator && (paginatorPosition === 'bottom' || paginatorPosition == 'both')"
2042
+ [templateLeft]="paginatorLeftTemplate"
2043
+ [templateRight]="paginatorRightTemplate"
2044
+ [dropdownAppendTo]="paginatorDropdownAppendTo"
2045
+ [dropdownScrollHeight]="paginatorDropdownScrollHeight"
2046
+ [currentPageReportTemplate]="currentPageReportTemplate"
2047
+ [showFirstLastIcon]="showFirstLastIcon"
2048
+ [dropdownItemTemplate]="paginatorDropdownItemTemplate"
2049
+ [showCurrentPageReport]="showCurrentPageReport"
2050
+ [showJumpToPageDropdown]="showJumpToPageDropdown"
2051
+ [showJumpToPageInput]="showJumpToPageInput"
2052
+ [showPageLinks]="showPageLinks"
2053
+ ></p-paginator>
1951
2054
 
1952
2055
  <div *ngIf="summaryTemplate" class="p-datatable-footer">
1953
2056
  <ng-container *ngTemplateOutlet="summaryTemplate"></ng-container>
@@ -1958,8 +2061,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
1958
2061
  <span #reorderIndicatorDown class="pi pi-arrow-up p-datatable-reorder-indicator-down" style="display:none" *ngIf="reorderableColumns"></span>
1959
2062
  </div>
1960
2063
  `, providers: [TableService], changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, host: {
1961
- 'class': 'p-element'
1962
- }, styles: [".p-datatable{position:relative}.p-datatable table{border-collapse:collapse;min-width:100%;table-layout:fixed}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-auto-layout>.p-datatable-wrapper{overflow-x:auto}.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper{overflow-x:auto}.p-datatable-responsive-scroll>.p-datatable-wrapper>table,.p-datatable-auto-layout>.p-datatable-wrapper>table{table-layout:auto}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable .p-datatable-wrapper{position:relative;overflow:auto}.p-datatable-scrollable .p-datatable-thead,.p-datatable-scrollable .p-datatable-tbody,.p-datatable-scrollable .p-datatable-tfoot{display:block}.p-datatable-scrollable .p-datatable-thead>tr,.p-datatable-scrollable .p-datatable-tbody>tr,.p-datatable-scrollable .p-datatable-tfoot>tr{display:flex;flex-wrap:nowrap;width:100%}.p-datatable-scrollable .p-datatable-thead>tr>th,.p-datatable-scrollable .p-datatable-tbody>tr>td,.p-datatable-scrollable .p-datatable-tfoot>tr>td{display:flex;flex:1 1 0;align-items:center}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-thead,.p-datatable-scrollable>.p-datatable-wrapper>.p-scroller-viewport>.p-scroller>.p-datatable-table>.p-datatable-thead{position:sticky;top:0;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable>.p-datatable-wrapper>.p-datatable-table>.p-datatable-tfoot,.p-datatable-scrollable>.p-datatable-wrapper>.p-scroller-viewport>.p-scroller>.p-datatable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-scrollable-both .p-datatable-thead>tr>th,.p-datatable-scrollable-both .p-datatable-tbody>tr>td,.p-datatable-scrollable-both .p-datatable-tfoot>tr>td,.p-datatable-scrollable-horizontal .p-datatable-thead>tr>th .p-datatable-scrollable-horizontal .p-datatable-tbody>tr>td,.p-datatable-scrollable-horizontal .p-datatable-tfoot>tr>td{flex:0 0 auto}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable .p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable .p-rowgroup-header{position:sticky;z-index:1}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot{display:table;border-collapse:collapse;width:100%;table-layout:fixed}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr{display:table-row}.p-datatable-scrollable.p-datatable-grouped-header .p-datatable-thead>tr>th,.p-datatable-scrollable.p-datatable-grouped-footer .p-datatable-tfoot>tr>td{display:table-cell}.p-datatable-scrollable .p-scroller>.p-datatable-table{display:inline-block}.p-datatable-flex-scrollable{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-flex-scrollable .p-datatable-virtual-scrollable-body{flex:1}.p-datatable-resizable>.p-datatable-wrapper{overflow-x:auto}.p-datatable-resizable .p-datatable-thead>tr>th,.p-datatable-resizable .p-datatable-tfoot>tr>td,.p-datatable-resizable .p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable .p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-fit .p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute;display:none}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable .p-datatable-tbody>tr>td>.p-column-title{display:none}.p-datatable .p-scroller .p-scroller-loading{transform:none!important;min-height:0;position:sticky;top:0;left:0}\n"] }]
2064
+ class: 'p-element'
2065
+ }, styles: [".p-datatable{position:relative}.p-datatable>.p-datatable-wrapper{overflow:auto}.p-datatable-table{border-spacing:0px;width:100%}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable>.p-datatable-wrapper{position:relative}.p-datatable-scrollable-table>.p-datatable-thead{position:sticky;top:0;z-index:1}.p-datatable-scrollable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable>.p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable-table>.p-datatable-tbody>.p-rowgroup-header{position:sticky;z-index:1}.p-datatable-resizable-table>.p-datatable-thead>tr>th,.p-datatable-resizable-table>.p-datatable-tfoot>tr>td,.p-datatable-resizable-table>.p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable-table>.p-datatable-thead>tr>th.p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-table-fit>.p-datatable-thead>tr>th.p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute;display:none}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable-tbody>tr>td>.p-column-title{display:none}.p-datatable-scroller-spacer{display:flex}.p-datatable .p-scroller .p-scroller-loading{transform:none!important;min-height:0;position:sticky;top:0;left:0}\n"] }]
1963
2066
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i1.FilterService }, { type: i1.OverlayService }]; }, propDecorators: { frozenColumns: [{
1964
2067
  type: Input
1965
2068
  }], frozenValue: [{
@@ -2236,17 +2339,6 @@ class TableBody {
2236
2339
  if (this.dt.scrollable && this.dt.rowGroupMode === 'subheader') {
2237
2340
  this.updateFrozenRowGroupHeaderStickyPosition();
2238
2341
  }
2239
- if (this.dt.virtualScroll && this.getScrollerOption('vertical')) {
2240
- this.updateScrollerPosition();
2241
- }
2242
- }
2243
- ngOnChanges(simpleChanges) {
2244
- if (simpleChanges.scrollerOptions) {
2245
- const { previousValue, currentValue } = simpleChanges.scrollerOptions;
2246
- if (this.dt.virtualScroll && this.getScrollerOption('vertical') && this.getScrollerOption('itemSize', previousValue) !== this.getScrollerOption('itemSize', currentValue)) {
2247
- this.updateScrollerPosition();
2248
- }
2249
- }
2250
2342
  }
2251
2343
  shouldRenderRowGroupHeader(value, rowData, i) {
2252
2344
  let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);
@@ -2311,10 +2403,6 @@ class TableBody {
2311
2403
  this.dt.rowGroupHeaderStyleObject.top = tableHeaderHeight + 'px';
2312
2404
  }
2313
2405
  }
2314
- updateScrollerPosition() {
2315
- const tableHeaderHeight = DomHandler.getOuterHeight(this.el.nativeElement.previousElementSibling);
2316
- this.el.nativeElement.style.top = (this.el.nativeElement.style.top || 0) + tableHeaderHeight + 'px';
2317
- }
2318
2406
  getScrollerOption(option, options) {
2319
2407
  if (this.dt.virtualScroll) {
2320
2408
  options = options || this.scrollerOptions;
@@ -2323,63 +2411,91 @@ class TableBody {
2323
2411
  return null;
2324
2412
  }
2325
2413
  getRowIndex(rowIndex) {
2326
- const index = this.dt.paginator ? (this.dt.first + rowIndex) : rowIndex;
2414
+ const index = this.dt.paginator ? this.dt.first + rowIndex : rowIndex;
2327
2415
  const getItemOptions = this.getScrollerOption('getItemOptions');
2328
2416
  return getItemOptions ? getItemOptions(index).index : index;
2329
2417
  }
2330
2418
  }
2331
2419
  TableBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableBody, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
2332
- TableBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TableBody, selector: "[pTableBody]", inputs: { columns: ["pTableBody", "columns"], template: ["pTableBodyTemplate", "template"], value: "value", frozen: "frozen", frozenRows: "frozenRows", scrollerOptions: "scrollerOptions" }, host: { classAttribute: "p-element" }, usesOnChanges: true, ngImport: i0, template: `
2333
- <ng-container *ngIf="!dt.expandedRowTemplate && !dt.virtualScroll">
2420
+ TableBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TableBody, selector: "[pTableBody]", inputs: { columns: ["pTableBody", "columns"], template: ["pTableBodyTemplate", "template"], value: "value", frozen: "frozen", frozenRows: "frozenRows", scrollerOptions: "scrollerOptions" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
2421
+ <ng-container *ngIf="!dt.expandedRowTemplate">
2334
2422
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2335
- <ng-container *ngIf="dt.groupHeaderTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, getRowIndex(rowIndex))" role="row">
2336
- <ng-container *ngTemplateOutlet="dt.groupHeaderTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2423
+ <ng-container *ngIf="dt.groupHeaderTemplate && !dt.virtualScroll && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, rowIndex)" role="row">
2424
+ <ng-container
2425
+ *ngTemplateOutlet="dt.groupHeaderTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2426
+ ></ng-container>
2337
2427
  </ng-container>
2338
2428
  <ng-container *ngIf="dt.rowGroupMode !== 'rowspan'">
2339
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2429
+ <ng-container
2430
+ *ngTemplateOutlet="rowData ? template : dt.loadingBodyTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2431
+ ></ng-container>
2340
2432
  </ng-container>
2341
2433
  <ng-container *ngIf="dt.rowGroupMode === 'rowspan'">
2342
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen, rowgroup: shouldRenderRowspan(value, rowData, getRowIndex(rowIndex)), rowspan: calculateRowGroupSize(value, rowData, getRowIndex(rowIndex))}"></ng-container>
2434
+ <ng-container
2435
+ *ngTemplateOutlet="
2436
+ rowData ? template : dt.loadingBodyTemplate;
2437
+ context: {
2438
+ $implicit: rowData,
2439
+ rowIndex: getRowIndex(rowIndex),
2440
+ columns: columns,
2441
+ editing: dt.editMode === 'row' && dt.isRowEditing(rowData),
2442
+ frozen: frozen,
2443
+ rowgroup: shouldRenderRowspan(value, rowData, rowIndex),
2444
+ rowspan: calculateRowGroupSize(value, rowData, rowIndex)
2445
+ }
2446
+ "
2447
+ ></ng-container>
2343
2448
  </ng-container>
2344
- <ng-container *ngIf="dt.groupFooterTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, getRowIndex(rowIndex))" role="row">
2345
- <ng-container *ngTemplateOutlet="dt.groupFooterTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2449
+ <ng-container *ngIf="dt.groupFooterTemplate && !dt.virtualScroll && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, rowIndex)" role="row">
2450
+ <ng-container
2451
+ *ngTemplateOutlet="dt.groupFooterTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2452
+ ></ng-container>
2346
2453
  </ng-container>
2347
2454
  </ng-template>
2348
2455
  </ng-container>
2349
- <ng-container *ngIf="!dt.expandedRowTemplate && dt.virtualScroll">
2350
- <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2351
- <ng-container *ngTemplateOutlet="rowData ? template: dt.loadingBodyTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2352
- </ng-template>
2353
- </ng-container>
2354
2456
  <ng-container *ngIf="dt.expandedRowTemplate && !(frozen && dt.frozenExpandedRowTemplate)">
2355
2457
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2356
2458
  <ng-container *ngIf="!dt.groupHeaderTemplate">
2357
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2459
+ <ng-container
2460
+ *ngTemplateOutlet="template; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2461
+ ></ng-container>
2358
2462
  </ng-container>
2359
2463
  <ng-container *ngIf="dt.groupHeaderTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, getRowIndex(rowIndex))" role="row">
2360
- <ng-container *ngTemplateOutlet="dt.groupHeaderTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2464
+ <ng-container
2465
+ *ngTemplateOutlet="
2466
+ dt.groupHeaderTemplate;
2467
+ context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }
2468
+ "
2469
+ ></ng-container>
2361
2470
  </ng-container>
2362
2471
  <ng-container *ngIf="dt.isRowExpanded(rowData)">
2363
- <ng-container *ngTemplateOutlet="dt.expandedRowTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen}"></ng-container>
2472
+ <ng-container *ngTemplateOutlet="dt.expandedRowTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen }"></ng-container>
2364
2473
  <ng-container *ngIf="dt.groupFooterTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, getRowIndex(rowIndex))" role="row">
2365
- <ng-container *ngTemplateOutlet="dt.groupFooterTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2474
+ <ng-container
2475
+ *ngTemplateOutlet="
2476
+ dt.groupFooterTemplate;
2477
+ context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }
2478
+ "
2479
+ ></ng-container>
2366
2480
  </ng-container>
2367
2481
  </ng-container>
2368
2482
  </ng-template>
2369
2483
  </ng-container>
2370
2484
  <ng-container *ngIf="dt.frozenExpandedRowTemplate && frozen">
2371
2485
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2372
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2486
+ <ng-container
2487
+ *ngTemplateOutlet="template; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2488
+ ></ng-container>
2373
2489
  <ng-container *ngIf="dt.isRowExpanded(rowData)">
2374
- <ng-container *ngTemplateOutlet="dt.frozenExpandedRowTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen}"></ng-container>
2490
+ <ng-container *ngTemplateOutlet="dt.frozenExpandedRowTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen }"></ng-container>
2375
2491
  </ng-container>
2376
2492
  </ng-template>
2377
2493
  </ng-container>
2378
2494
  <ng-container *ngIf="dt.loading">
2379
- <ng-container *ngTemplateOutlet="dt.loadingBodyTemplate; context: {$implicit: columns, frozen: frozen}"></ng-container>
2495
+ <ng-container *ngTemplateOutlet="dt.loadingBodyTemplate; context: { $implicit: columns, frozen: frozen }"></ng-container>
2380
2496
  </ng-container>
2381
2497
  <ng-container *ngIf="dt.isEmpty() && !dt.loading">
2382
- <ng-container *ngTemplateOutlet="dt.emptyMessageTemplate; context: {$implicit: columns, frozen: frozen}"></ng-container>
2498
+ <ng-container *ngTemplateOutlet="dt.emptyMessageTemplate; context: { $implicit: columns, frozen: frozen }"></ng-container>
2383
2499
  </ng-container>
2384
2500
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
2385
2501
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableBody, decorators: [{
@@ -2387,70 +2503,98 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2387
2503
  args: [{
2388
2504
  selector: '[pTableBody]',
2389
2505
  template: `
2390
- <ng-container *ngIf="!dt.expandedRowTemplate && !dt.virtualScroll">
2506
+ <ng-container *ngIf="!dt.expandedRowTemplate">
2391
2507
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2392
- <ng-container *ngIf="dt.groupHeaderTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, getRowIndex(rowIndex))" role="row">
2393
- <ng-container *ngTemplateOutlet="dt.groupHeaderTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2508
+ <ng-container *ngIf="dt.groupHeaderTemplate && !dt.virtualScroll && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, rowIndex)" role="row">
2509
+ <ng-container
2510
+ *ngTemplateOutlet="dt.groupHeaderTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2511
+ ></ng-container>
2394
2512
  </ng-container>
2395
2513
  <ng-container *ngIf="dt.rowGroupMode !== 'rowspan'">
2396
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2514
+ <ng-container
2515
+ *ngTemplateOutlet="rowData ? template : dt.loadingBodyTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2516
+ ></ng-container>
2397
2517
  </ng-container>
2398
2518
  <ng-container *ngIf="dt.rowGroupMode === 'rowspan'">
2399
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen, rowgroup: shouldRenderRowspan(value, rowData, getRowIndex(rowIndex)), rowspan: calculateRowGroupSize(value, rowData, getRowIndex(rowIndex))}"></ng-container>
2519
+ <ng-container
2520
+ *ngTemplateOutlet="
2521
+ rowData ? template : dt.loadingBodyTemplate;
2522
+ context: {
2523
+ $implicit: rowData,
2524
+ rowIndex: getRowIndex(rowIndex),
2525
+ columns: columns,
2526
+ editing: dt.editMode === 'row' && dt.isRowEditing(rowData),
2527
+ frozen: frozen,
2528
+ rowgroup: shouldRenderRowspan(value, rowData, rowIndex),
2529
+ rowspan: calculateRowGroupSize(value, rowData, rowIndex)
2530
+ }
2531
+ "
2532
+ ></ng-container>
2400
2533
  </ng-container>
2401
- <ng-container *ngIf="dt.groupFooterTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, getRowIndex(rowIndex))" role="row">
2402
- <ng-container *ngTemplateOutlet="dt.groupFooterTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2534
+ <ng-container *ngIf="dt.groupFooterTemplate && !dt.virtualScroll && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, rowIndex)" role="row">
2535
+ <ng-container
2536
+ *ngTemplateOutlet="dt.groupFooterTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2537
+ ></ng-container>
2403
2538
  </ng-container>
2404
2539
  </ng-template>
2405
2540
  </ng-container>
2406
- <ng-container *ngIf="!dt.expandedRowTemplate && dt.virtualScroll">
2407
- <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2408
- <ng-container *ngTemplateOutlet="rowData ? template: dt.loadingBodyTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2409
- </ng-template>
2410
- </ng-container>
2411
2541
  <ng-container *ngIf="dt.expandedRowTemplate && !(frozen && dt.frozenExpandedRowTemplate)">
2412
2542
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2413
2543
  <ng-container *ngIf="!dt.groupHeaderTemplate">
2414
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2544
+ <ng-container
2545
+ *ngTemplateOutlet="template; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2546
+ ></ng-container>
2415
2547
  </ng-container>
2416
2548
  <ng-container *ngIf="dt.groupHeaderTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, getRowIndex(rowIndex))" role="row">
2417
- <ng-container *ngTemplateOutlet="dt.groupHeaderTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2549
+ <ng-container
2550
+ *ngTemplateOutlet="
2551
+ dt.groupHeaderTemplate;
2552
+ context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }
2553
+ "
2554
+ ></ng-container>
2418
2555
  </ng-container>
2419
2556
  <ng-container *ngIf="dt.isRowExpanded(rowData)">
2420
- <ng-container *ngTemplateOutlet="dt.expandedRowTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen}"></ng-container>
2557
+ <ng-container *ngTemplateOutlet="dt.expandedRowTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen }"></ng-container>
2421
2558
  <ng-container *ngIf="dt.groupFooterTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, getRowIndex(rowIndex))" role="row">
2422
- <ng-container *ngTemplateOutlet="dt.groupFooterTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2559
+ <ng-container
2560
+ *ngTemplateOutlet="
2561
+ dt.groupFooterTemplate;
2562
+ context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }
2563
+ "
2564
+ ></ng-container>
2423
2565
  </ng-container>
2424
2566
  </ng-container>
2425
2567
  </ng-template>
2426
2568
  </ng-container>
2427
2569
  <ng-container *ngIf="dt.frozenExpandedRowTemplate && frozen">
2428
2570
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2429
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2571
+ <ng-container
2572
+ *ngTemplateOutlet="template; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2573
+ ></ng-container>
2430
2574
  <ng-container *ngIf="dt.isRowExpanded(rowData)">
2431
- <ng-container *ngTemplateOutlet="dt.frozenExpandedRowTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen}"></ng-container>
2575
+ <ng-container *ngTemplateOutlet="dt.frozenExpandedRowTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen }"></ng-container>
2432
2576
  </ng-container>
2433
2577
  </ng-template>
2434
2578
  </ng-container>
2435
2579
  <ng-container *ngIf="dt.loading">
2436
- <ng-container *ngTemplateOutlet="dt.loadingBodyTemplate; context: {$implicit: columns, frozen: frozen}"></ng-container>
2580
+ <ng-container *ngTemplateOutlet="dt.loadingBodyTemplate; context: { $implicit: columns, frozen: frozen }"></ng-container>
2437
2581
  </ng-container>
2438
2582
  <ng-container *ngIf="dt.isEmpty() && !dt.loading">
2439
- <ng-container *ngTemplateOutlet="dt.emptyMessageTemplate; context: {$implicit: columns, frozen: frozen}"></ng-container>
2583
+ <ng-container *ngTemplateOutlet="dt.emptyMessageTemplate; context: { $implicit: columns, frozen: frozen }"></ng-container>
2440
2584
  </ng-container>
2441
2585
  `,
2442
2586
  changeDetection: ChangeDetectionStrategy.Default,
2443
2587
  encapsulation: ViewEncapsulation.None,
2444
2588
  host: {
2445
- 'class': 'p-element'
2589
+ class: 'p-element'
2446
2590
  }
2447
2591
  }]
2448
2592
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { columns: [{
2449
2593
  type: Input,
2450
- args: ["pTableBody"]
2594
+ args: ['pTableBody']
2451
2595
  }], template: [{
2452
2596
  type: Input,
2453
- args: ["pTableBodyTemplate"]
2597
+ args: ['pTableBodyTemplate']
2454
2598
  }], value: [{
2455
2599
  type: Input
2456
2600
  }], frozen: [{
@@ -2475,15 +2619,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2475
2619
  args: [{
2476
2620
  selector: '[pRowGroupHeader]',
2477
2621
  host: {
2478
- 'class': 'p-rowgroup-header p-element',
2479
- '[style.top]': "getFrozenRowGroupHeaderStickyPosition"
2622
+ class: 'p-rowgroup-header p-element',
2623
+ '[style.top]': 'getFrozenRowGroupHeaderStickyPosition'
2480
2624
  }
2481
2625
  }]
2482
2626
  }], ctorParameters: function () { return [{ type: Table }]; } });
2483
2627
  class FrozenColumn {
2484
2628
  constructor(el) {
2485
2629
  this.el = el;
2486
- this.alignFrozen = "left";
2630
+ this.alignFrozen = 'left';
2487
2631
  this._frozen = true;
2488
2632
  }
2489
2633
  get frozen() {
@@ -2532,7 +2676,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2532
2676
  args: [{
2533
2677
  selector: '[pFrozenColumn]',
2534
2678
  host: {
2535
- 'class': 'p-element',
2679
+ class: 'p-element',
2536
2680
  '[class.p-frozen-column]': 'frozen'
2537
2681
  }
2538
2682
  }]
@@ -2545,7 +2689,7 @@ class SortableColumn {
2545
2689
  constructor(dt) {
2546
2690
  this.dt = dt;
2547
2691
  if (this.isEnabled()) {
2548
- this.subscription = this.dt.tableService.sortSource$.subscribe(sortMeta => {
2692
+ this.subscription = this.dt.tableService.sortSource$.subscribe((sortMeta) => {
2549
2693
  this.updateSortState();
2550
2694
  });
2551
2695
  }
@@ -2591,7 +2735,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2591
2735
  args: [{
2592
2736
  selector: '[pSortableColumn]',
2593
2737
  host: {
2594
- 'class': 'p-element',
2738
+ class: 'p-element',
2595
2739
  '[class.p-sortable-column]': 'isEnabled()',
2596
2740
  '[class.p-highlight]': 'sorted',
2597
2741
  '[attr.tabindex]': 'isEnabled() ? "0" : null',
@@ -2601,7 +2745,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2601
2745
  }]
2602
2746
  }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { field: [{
2603
2747
  type: Input,
2604
- args: ["pSortableColumn"]
2748
+ args: ['pSortableColumn']
2605
2749
  }], pSortableColumnDisabled: [{
2606
2750
  type: Input
2607
2751
  }], onClick: [{
@@ -2615,7 +2759,7 @@ class SortIcon {
2615
2759
  constructor(dt, cd) {
2616
2760
  this.dt = dt;
2617
2761
  this.cd = cd;
2618
- this.subscription = this.dt.tableService.sortSource$.subscribe(sortMeta => {
2762
+ this.subscription = this.dt.tableService.sortSource$.subscribe((sortMeta) => {
2619
2763
  this.updateSortState();
2620
2764
  });
2621
2765
  }
@@ -2664,21 +2808,21 @@ class SortIcon {
2664
2808
  }
2665
2809
  SortIcon.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SortIcon, deps: [{ token: Table }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2666
2810
  SortIcon.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: SortIcon, selector: "p-sortIcon", inputs: { field: "field" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
2667
- <i class="p-sortable-column-icon pi pi-fw" [ngClass]="{'pi-sort-amount-up-alt': sortOrder === 1, 'pi-sort-amount-down': sortOrder === -1, 'pi-sort-alt': sortOrder === 0}"></i>
2668
- <span *ngIf="isMultiSorted()" class="p-sortable-column-badge">{{getBadgeValue()}}</span>
2811
+ <i class="p-sortable-column-icon pi pi-fw" [ngClass]="{ 'pi-sort-amount-up-alt': sortOrder === 1, 'pi-sort-amount-down': sortOrder === -1, 'pi-sort-alt': sortOrder === 0 }"></i>
2812
+ <span *ngIf="isMultiSorted()" class="p-sortable-column-badge">{{ getBadgeValue() }}</span>
2669
2813
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2670
2814
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SortIcon, decorators: [{
2671
2815
  type: Component,
2672
2816
  args: [{
2673
2817
  selector: 'p-sortIcon',
2674
2818
  template: `
2675
- <i class="p-sortable-column-icon pi pi-fw" [ngClass]="{'pi-sort-amount-up-alt': sortOrder === 1, 'pi-sort-amount-down': sortOrder === -1, 'pi-sort-alt': sortOrder === 0}"></i>
2676
- <span *ngIf="isMultiSorted()" class="p-sortable-column-badge">{{getBadgeValue()}}</span>
2819
+ <i class="p-sortable-column-icon pi pi-fw" [ngClass]="{ 'pi-sort-amount-up-alt': sortOrder === 1, 'pi-sort-amount-down': sortOrder === -1, 'pi-sort-alt': sortOrder === 0 }"></i>
2820
+ <span *ngIf="isMultiSorted()" class="p-sortable-column-badge">{{ getBadgeValue() }}</span>
2677
2821
  `,
2678
2822
  changeDetection: ChangeDetectionStrategy.OnPush,
2679
2823
  encapsulation: ViewEncapsulation.None,
2680
2824
  host: {
2681
- 'class': 'p-element'
2825
+ class: 'p-element'
2682
2826
  }
2683
2827
  }]
2684
2828
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { field: [{
@@ -2795,7 +2939,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2795
2939
  args: [{
2796
2940
  selector: '[pSelectableRow]',
2797
2941
  host: {
2798
- 'class': 'p-element',
2942
+ class: 'p-element',
2799
2943
  '[class.p-selectable-row]': 'isEnabled()',
2800
2944
  '[class.p-highlight]': 'selected',
2801
2945
  '[attr.tabindex]': 'isEnabled() ? 0 : undefined'
@@ -2803,10 +2947,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2803
2947
  }]
2804
2948
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }]; }, propDecorators: { data: [{
2805
2949
  type: Input,
2806
- args: ["pSelectableRow"]
2950
+ args: ['pSelectableRow']
2807
2951
  }], index: [{
2808
2952
  type: Input,
2809
- args: ["pSelectableRowIndex"]
2953
+ args: ['pSelectableRowIndex']
2810
2954
  }], pSelectableRowDisabled: [{
2811
2955
  type: Input
2812
2956
  }], onClick: [{
@@ -2886,17 +3030,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2886
3030
  args: [{
2887
3031
  selector: '[pSelectableRowDblClick]',
2888
3032
  host: {
2889
- 'class': 'p-element',
3033
+ class: 'p-element',
2890
3034
  '[class.p-selectable-row]': 'isEnabled()',
2891
3035
  '[class.p-highlight]': 'selected'
2892
3036
  }
2893
3037
  }]
2894
3038
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }]; }, propDecorators: { data: [{
2895
3039
  type: Input,
2896
- args: ["pSelectableRowDblClick"]
3040
+ args: ['pSelectableRowDblClick']
2897
3041
  }], index: [{
2898
3042
  type: Input,
2899
- args: ["pSelectableRowIndex"]
3043
+ args: ['pSelectableRowIndex']
2900
3044
  }], pSelectableRowDisabled: [{
2901
3045
  type: Input
2902
3046
  }], onClick: [{
@@ -2941,17 +3085,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2941
3085
  args: [{
2942
3086
  selector: '[pContextMenuRow]',
2943
3087
  host: {
2944
- 'class': 'p-element',
3088
+ class: 'p-element',
2945
3089
  '[class.p-highlight-contextmenu]': 'selected',
2946
3090
  '[attr.tabindex]': 'isEnabled() ? 0 : undefined'
2947
3091
  }
2948
3092
  }]
2949
3093
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ElementRef }]; }, propDecorators: { data: [{
2950
3094
  type: Input,
2951
- args: ["pContextMenuRow"]
3095
+ args: ['pContextMenuRow']
2952
3096
  }], index: [{
2953
3097
  type: Input,
2954
- args: ["pContextMenuRowIndex"]
3098
+ args: ['pContextMenuRowIndex']
2955
3099
  }], pContextMenuRowDisabled: [{
2956
3100
  type: Input
2957
3101
  }], onContextMenu: [{
@@ -2979,7 +3123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2979
3123
  args: [{
2980
3124
  selector: '[pRowToggler]',
2981
3125
  host: {
2982
- 'class': 'p-element'
3126
+ class: 'p-element'
2983
3127
  }
2984
3128
  }]
2985
3129
  }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { data: [{
@@ -3057,7 +3201,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3057
3201
  args: [{
3058
3202
  selector: '[pResizableColumn]',
3059
3203
  host: {
3060
- 'class': 'p-element'
3204
+ class: 'p-element'
3061
3205
  }
3062
3206
  }]
3063
3207
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { pResizableColumnDisabled: [{
@@ -3147,7 +3291,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3147
3291
  args: [{
3148
3292
  selector: '[pReorderableColumn]',
3149
3293
  host: {
3150
- 'class': 'p-element'
3294
+ class: 'p-element'
3151
3295
  }
3152
3296
  }]
3153
3297
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { pReorderableColumnDisabled: [{
@@ -3405,18 +3549,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3405
3549
  args: [{
3406
3550
  selector: '[pEditableColumn]',
3407
3551
  host: {
3408
- 'class': 'p-element'
3552
+ class: 'p-element'
3409
3553
  }
3410
3554
  }]
3411
3555
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { data: [{
3412
3556
  type: Input,
3413
- args: ["pEditableColumn"]
3557
+ args: ['pEditableColumn']
3414
3558
  }], field: [{
3415
3559
  type: Input,
3416
- args: ["pEditableColumnField"]
3560
+ args: ['pEditableColumnField']
3417
3561
  }], rowIndex: [{
3418
3562
  type: Input,
3419
- args: ["pEditableColumnRowIndex"]
3563
+ args: ['pEditableColumnRowIndex']
3420
3564
  }], pEditableColumnDisabled: [{
3421
3565
  type: Input
3422
3566
  }], pFocusCellSelector: [{
@@ -3467,12 +3611,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3467
3611
  args: [{
3468
3612
  selector: '[pEditableRow]',
3469
3613
  host: {
3470
- 'class': 'p-element'
3614
+ class: 'p-element'
3471
3615
  }
3472
3616
  }]
3473
3617
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { data: [{
3474
3618
  type: Input,
3475
- args: ["pEditableRow"]
3619
+ args: ['pEditableRow']
3476
3620
  }], pEditableRowDisabled: [{
3477
3621
  type: Input
3478
3622
  }] } });
@@ -3493,7 +3637,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3493
3637
  args: [{
3494
3638
  selector: '[pInitEditableRow]',
3495
3639
  host: {
3496
- 'class': 'p-element'
3640
+ class: 'p-element'
3497
3641
  }
3498
3642
  }]
3499
3643
  }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{
@@ -3517,7 +3661,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3517
3661
  args: [{
3518
3662
  selector: '[pSaveEditableRow]',
3519
3663
  host: {
3520
- 'class': 'p-element'
3664
+ class: 'p-element'
3521
3665
  }
3522
3666
  }]
3523
3667
  }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{
@@ -3541,7 +3685,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3541
3685
  args: [{
3542
3686
  selector: '[pCancelEditableRow]',
3543
3687
  host: {
3544
- 'class': 'p-element'
3688
+ class: 'p-element'
3545
3689
  }
3546
3690
  }]
3547
3691
  }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{
@@ -3567,8 +3711,7 @@ class CellEditor {
3567
3711
  });
3568
3712
  }
3569
3713
  get editing() {
3570
- return (this.dt.editingCell && this.editableColumn && this.dt.editingCell === this.editableColumn.el.nativeElement) ||
3571
- (this.editableRow && this.dt.editMode === 'row' && this.dt.isRowEditing(this.editableRow.data));
3714
+ return (this.dt.editingCell && this.editableColumn && this.dt.editingCell === this.editableColumn.el.nativeElement) || (this.editableRow && this.dt.editMode === 'row' && this.dt.isRowEditing(this.editableRow.data));
3572
3715
  }
3573
3716
  }
3574
3717
  CellEditor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CellEditor, deps: [{ token: Table }, { token: EditableColumn, optional: true }, { token: EditableRow, optional: true }], target: i0.ɵɵFactoryTarget.Component });
@@ -3594,7 +3737,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3594
3737
  `,
3595
3738
  encapsulation: ViewEncapsulation.None,
3596
3739
  host: {
3597
- 'class': 'p-element'
3740
+ class: 'p-element'
3598
3741
  }
3599
3742
  }]
3600
3743
  }], ctorParameters: function () { return [{ type: Table }, { type: EditableColumn, decorators: [{
@@ -3641,12 +3784,11 @@ class TableRadioButton {
3641
3784
  }
3642
3785
  TableRadioButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableRadioButton, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
3643
3786
  TableRadioButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TableRadioButton, selector: "p-tableRadioButton", inputs: { disabled: "disabled", value: "value", index: "index", inputId: "inputId", name: "name", ariaLabel: "ariaLabel" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
3644
- <div class="p-radiobutton p-component" [ngClass]="{'p-radiobutton-focused':focused, 'p-radiobutton-disabled': disabled}" (click)="onClick($event)">
3787
+ <div class="p-radiobutton p-component" [ngClass]="{ 'p-radiobutton-focused': focused, 'p-radiobutton-disabled': disabled }" (click)="onClick($event)">
3645
3788
  <div class="p-hidden-accessible">
3646
- <input type="radio" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()"
3647
- [disabled]="disabled" [attr.aria-label]="ariaLabel">
3789
+ <input type="radio" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="disabled" [attr.aria-label]="ariaLabel" />
3648
3790
  </div>
3649
- <div #box [ngClass]="{'p-radiobutton-box p-component':true, 'p-highlight':checked, 'p-focus':focused, 'p-disabled':disabled}" role="radio" [attr.aria-checked]="checked">
3791
+ <div #box [ngClass]="{ 'p-radiobutton-box p-component': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': disabled }" role="radio" [attr.aria-checked]="checked">
3650
3792
  <div class="p-radiobutton-icon"></div>
3651
3793
  </div>
3652
3794
  </div>
@@ -3656,12 +3798,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3656
3798
  args: [{
3657
3799
  selector: 'p-tableRadioButton',
3658
3800
  template: `
3659
- <div class="p-radiobutton p-component" [ngClass]="{'p-radiobutton-focused':focused, 'p-radiobutton-disabled': disabled}" (click)="onClick($event)">
3801
+ <div class="p-radiobutton p-component" [ngClass]="{ 'p-radiobutton-focused': focused, 'p-radiobutton-disabled': disabled }" (click)="onClick($event)">
3660
3802
  <div class="p-hidden-accessible">
3661
- <input type="radio" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()"
3662
- [disabled]="disabled" [attr.aria-label]="ariaLabel">
3803
+ <input type="radio" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="disabled" [attr.aria-label]="ariaLabel" />
3663
3804
  </div>
3664
- <div #box [ngClass]="{'p-radiobutton-box p-component':true, 'p-highlight':checked, 'p-focus':focused, 'p-disabled':disabled}" role="radio" [attr.aria-checked]="checked">
3805
+ <div #box [ngClass]="{ 'p-radiobutton-box p-component': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': disabled }" role="radio" [attr.aria-checked]="checked">
3665
3806
  <div class="p-radiobutton-icon"></div>
3666
3807
  </div>
3667
3808
  </div>
@@ -3669,7 +3810,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3669
3810
  changeDetection: ChangeDetectionStrategy.OnPush,
3670
3811
  encapsulation: ViewEncapsulation.None,
3671
3812
  host: {
3672
- 'class': 'p-element'
3813
+ class: 'p-element'
3673
3814
  }
3674
3815
  }]
3675
3816
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{
@@ -3721,14 +3862,12 @@ class TableCheckbox {
3721
3862
  }
3722
3863
  TableCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableCheckbox, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
3723
3864
  TableCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TableCheckbox, selector: "p-tableCheckbox", inputs: { disabled: "disabled", value: "value", index: "index", inputId: "inputId", name: "name", required: "required", ariaLabel: "ariaLabel" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
3724
- <div class="p-checkbox p-component" [ngClass]="{'p-checkbox-focused':focused, 'p-checkbox-disabled': disabled}" (click)="onClick($event)">
3865
+ <div class="p-checkbox p-component" [ngClass]="{ 'p-checkbox-focused': focused, 'p-checkbox-disabled': disabled }" (click)="onClick($event)">
3725
3866
  <div class="p-hidden-accessible">
3726
- <input type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="disabled"
3727
- [attr.required]="required" [attr.aria-label]="ariaLabel">
3867
+ <input type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="disabled" [attr.required]="required" [attr.aria-label]="ariaLabel" />
3728
3868
  </div>
3729
- <div #box [ngClass]="{'p-checkbox-box p-component':true,
3730
- 'p-highlight':checked, 'p-focus':focused, 'p-disabled':disabled}" role="checkbox" [attr.aria-checked]="checked">
3731
- <span class="p-checkbox-icon" [ngClass]="{'pi pi-check':checked}"></span>
3869
+ <div #box [ngClass]="{ 'p-checkbox-box p-component': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': disabled }" role="checkbox" [attr.aria-checked]="checked">
3870
+ <span class="p-checkbox-icon" [ngClass]="{ 'pi pi-check': checked }"></span>
3732
3871
  </div>
3733
3872
  </div>
3734
3873
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
@@ -3737,21 +3876,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3737
3876
  args: [{
3738
3877
  selector: 'p-tableCheckbox',
3739
3878
  template: `
3740
- <div class="p-checkbox p-component" [ngClass]="{'p-checkbox-focused':focused, 'p-checkbox-disabled': disabled}" (click)="onClick($event)">
3879
+ <div class="p-checkbox p-component" [ngClass]="{ 'p-checkbox-focused': focused, 'p-checkbox-disabled': disabled }" (click)="onClick($event)">
3741
3880
  <div class="p-hidden-accessible">
3742
- <input type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="disabled"
3743
- [attr.required]="required" [attr.aria-label]="ariaLabel">
3881
+ <input type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="disabled" [attr.required]="required" [attr.aria-label]="ariaLabel" />
3744
3882
  </div>
3745
- <div #box [ngClass]="{'p-checkbox-box p-component':true,
3746
- 'p-highlight':checked, 'p-focus':focused, 'p-disabled':disabled}" role="checkbox" [attr.aria-checked]="checked">
3747
- <span class="p-checkbox-icon" [ngClass]="{'pi pi-check':checked}"></span>
3883
+ <div #box [ngClass]="{ 'p-checkbox-box p-component': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': disabled }" role="checkbox" [attr.aria-checked]="checked">
3884
+ <span class="p-checkbox-icon" [ngClass]="{ 'pi pi-check': checked }"></span>
3748
3885
  </div>
3749
3886
  </div>
3750
3887
  `,
3751
3888
  changeDetection: ChangeDetectionStrategy.OnPush,
3752
3889
  encapsulation: ViewEncapsulation.None,
3753
3890
  host: {
3754
- 'class': 'p-element'
3891
+ class: 'p-element'
3755
3892
  }
3756
3893
  }]
3757
3894
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{
@@ -3818,20 +3955,18 @@ class TableHeaderCheckbox {
3818
3955
  const data = this.dt.selectionPageOnly ? this.dt.dataToRender(this.dt.processedData) : this.dt.processedData;
3819
3956
  const val = this.dt.frozenValue ? [...this.dt.frozenValue, ...data] : data;
3820
3957
  const selectableVal = this.dt.rowSelectable ? val.filter((data, index) => this.dt.rowSelectable({ data, index })) : val;
3821
- return ObjectUtils.isNotEmpty(selectableVal) && ObjectUtils.isNotEmpty(this.dt.selection) && selectableVal.every(v => this.dt.selection.some(s => this.dt.equals(v, s)));
3958
+ return ObjectUtils.isNotEmpty(selectableVal) && ObjectUtils.isNotEmpty(this.dt.selection) && selectableVal.every((v) => this.dt.selection.some((s) => this.dt.equals(v, s)));
3822
3959
  }
3823
3960
  }
3824
3961
  }
3825
3962
  TableHeaderCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableHeaderCheckbox, deps: [{ token: Table }, { token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
3826
3963
  TableHeaderCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: { disabled: "disabled", inputId: "inputId", name: "name", ariaLabel: "ariaLabel" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
3827
- <div class="p-checkbox p-component" [ngClass]="{'p-checkbox-focused':focused, 'p-checkbox-disabled': isDisabled()}" (click)="onClick($event)">
3964
+ <div class="p-checkbox p-component" [ngClass]="{ 'p-checkbox-focused': focused, 'p-checkbox-disabled': isDisabled() }" (click)="onClick($event)">
3828
3965
  <div class="p-hidden-accessible">
3829
- <input #cb type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()"
3830
- [disabled]="isDisabled()" [attr.aria-label]="ariaLabel">
3966
+ <input #cb type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="isDisabled()" [attr.aria-label]="ariaLabel" />
3831
3967
  </div>
3832
- <div #box [ngClass]="{'p-checkbox-box':true,
3833
- 'p-highlight':checked, 'p-focus':focused, 'p-disabled': isDisabled()}" role="checkbox" [attr.aria-checked]="checked">
3834
- <span class="p-checkbox-icon" [ngClass]="{'pi pi-check':checked}"></span>
3968
+ <div #box [ngClass]="{ 'p-checkbox-box': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': isDisabled() }" role="checkbox" [attr.aria-checked]="checked">
3969
+ <span class="p-checkbox-icon" [ngClass]="{ 'pi pi-check': checked }"></span>
3835
3970
  </div>
3836
3971
  </div>
3837
3972
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
@@ -3840,21 +3975,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3840
3975
  args: [{
3841
3976
  selector: 'p-tableHeaderCheckbox',
3842
3977
  template: `
3843
- <div class="p-checkbox p-component" [ngClass]="{'p-checkbox-focused':focused, 'p-checkbox-disabled': isDisabled()}" (click)="onClick($event)">
3978
+ <div class="p-checkbox p-component" [ngClass]="{ 'p-checkbox-focused': focused, 'p-checkbox-disabled': isDisabled() }" (click)="onClick($event)">
3844
3979
  <div class="p-hidden-accessible">
3845
- <input #cb type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()"
3846
- [disabled]="isDisabled()" [attr.aria-label]="ariaLabel">
3980
+ <input #cb type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="isDisabled()" [attr.aria-label]="ariaLabel" />
3847
3981
  </div>
3848
- <div #box [ngClass]="{'p-checkbox-box':true,
3849
- 'p-highlight':checked, 'p-focus':focused, 'p-disabled': isDisabled()}" role="checkbox" [attr.aria-checked]="checked">
3850
- <span class="p-checkbox-icon" [ngClass]="{'pi pi-check':checked}"></span>
3982
+ <div #box [ngClass]="{ 'p-checkbox-box': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': isDisabled() }" role="checkbox" [attr.aria-checked]="checked">
3983
+ <span class="p-checkbox-icon" [ngClass]="{ 'pi pi-check': checked }"></span>
3851
3984
  </div>
3852
3985
  </div>
3853
3986
  `,
3854
3987
  changeDetection: ChangeDetectionStrategy.OnPush,
3855
3988
  encapsulation: ViewEncapsulation.None,
3856
3989
  host: {
3857
- 'class': 'p-element'
3990
+ class: 'p-element'
3858
3991
  }
3859
3992
  }]
3860
3993
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{
@@ -3881,12 +4014,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3881
4014
  args: [{
3882
4015
  selector: '[pReorderableRowHandle]',
3883
4016
  host: {
3884
- 'class': 'p-element'
4017
+ class: 'p-element'
3885
4018
  }
3886
4019
  }]
3887
4020
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { index: [{
3888
4021
  type: Input,
3889
- args: ["pReorderableRowHandle"]
4022
+ args: ['pReorderableRowHandle']
3890
4023
  }] } });
3891
4024
  class ReorderableRow {
3892
4025
  constructor(dt, el, zone) {
@@ -3976,121 +4109,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3976
4109
  args: [{
3977
4110
  selector: '[pReorderableRow]',
3978
4111
  host: {
3979
- 'class': 'p-element'
4112
+ class: 'p-element'
3980
4113
  }
3981
4114
  }]
3982
4115
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { index: [{
3983
4116
  type: Input,
3984
- args: ["pReorderableRow"]
4117
+ args: ['pReorderableRow']
3985
4118
  }], pReorderableRowDisabled: [{
3986
4119
  type: Input
3987
4120
  }], onDrop: [{
3988
4121
  type: HostListener,
3989
4122
  args: ['drop', ['$event']]
3990
4123
  }] } });
3991
- class ColumnFilterFormElement {
3992
- constructor(dt, colFilter) {
3993
- this.dt = dt;
3994
- this.colFilter = colFilter;
3995
- this.useGrouping = true;
3996
- }
3997
- get showButtons() {
3998
- return this.colFilter.showButtons;
3999
- }
4000
- ngOnInit() {
4001
- this.filterCallback = value => {
4002
- this.filterConstraint.value = value;
4003
- this.dt._filter();
4004
- };
4005
- }
4006
- onModelChange(value) {
4007
- this.filterConstraint.value = value;
4008
- if (this.type === 'boolean' || value === '') {
4009
- this.dt._filter();
4010
- }
4011
- }
4012
- onTextInputEnterKeyDown(event) {
4013
- this.dt._filter();
4014
- event.preventDefault();
4015
- }
4016
- onNumericInputKeyDown(event) {
4017
- if (event.key === 'Enter') {
4018
- this.dt._filter();
4019
- event.preventDefault();
4020
- }
4021
- }
4022
- }
4023
- ColumnFilterFormElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ColumnFilterFormElement, deps: [{ token: Table }, { token: ColumnFilter }], target: i0.ɵɵFactoryTarget.Component });
4024
- ColumnFilterFormElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: ColumnFilterFormElement, selector: "p-columnFilterFormElement", inputs: { field: "field", type: "type", filterConstraint: "filterConstraint", filterTemplate: "filterTemplate", placeholder: "placeholder", minFractionDigits: "minFractionDigits", maxFractionDigits: "maxFractionDigits", prefix: "prefix", suffix: "suffix", locale: "locale", localeMatcher: "localeMatcher", currency: "currency", currencyDisplay: "currencyDisplay", useGrouping: "useGrouping" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
4025
- <ng-container *ngIf="filterTemplate; else builtInElement">
4026
- <ng-container *ngTemplateOutlet="filterTemplate; context: {$implicit: filterConstraint.value, filterCallback: filterCallback}"></ng-container>
4027
- </ng-container>
4028
- <ng-template #builtInElement>
4029
- <ng-container [ngSwitch]="type">
4030
- <input *ngSwitchCase="'text'" type="text" pInputText [value]="filterConstraint?.value" (input)="onModelChange($event.target.value)"
4031
- (keydown.enter)="onTextInputEnterKeyDown($event)" [attr.placeholder]="placeholder">
4032
- <p-inputNumber *ngSwitchCase="'numeric'" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)" (onKeyDown)="onNumericInputKeyDown($event)" [showButtons]="showButtons"
4033
- [minFractionDigits]="minFractionDigits" [maxFractionDigits]="maxFractionDigits" [prefix]="prefix" [suffix]="suffix" [placeholder]="placeholder"
4034
- [mode]="currency ? 'currency' : 'decimal'" [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping"></p-inputNumber>
4035
- <p-triStateCheckbox *ngSwitchCase="'boolean'" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-triStateCheckbox>
4036
- <p-calendar *ngSwitchCase="'date'" [placeholder]="placeholder" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-calendar>
4037
- </ng-container>
4038
- </ng-template>
4039
- `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i5.InputNumber, selector: "p-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i7.InputText, selector: "[pInputText]" }, { kind: "component", type: i8.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "view", "defaultDate", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i9.TriStateCheckbox, selector: "p-triStateCheckbox", inputs: ["disabled", "name", "ariaLabelledBy", "tabindex", "inputId", "style", "styleClass", "label", "readonly", "checkboxTrueIcon", "checkboxFalseIcon"], outputs: ["onChange"] }], encapsulation: i0.ViewEncapsulation.None });
4040
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ColumnFilterFormElement, decorators: [{
4041
- type: Component,
4042
- args: [{
4043
- selector: 'p-columnFilterFormElement',
4044
- template: `
4045
- <ng-container *ngIf="filterTemplate; else builtInElement">
4046
- <ng-container *ngTemplateOutlet="filterTemplate; context: {$implicit: filterConstraint.value, filterCallback: filterCallback}"></ng-container>
4047
- </ng-container>
4048
- <ng-template #builtInElement>
4049
- <ng-container [ngSwitch]="type">
4050
- <input *ngSwitchCase="'text'" type="text" pInputText [value]="filterConstraint?.value" (input)="onModelChange($event.target.value)"
4051
- (keydown.enter)="onTextInputEnterKeyDown($event)" [attr.placeholder]="placeholder">
4052
- <p-inputNumber *ngSwitchCase="'numeric'" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)" (onKeyDown)="onNumericInputKeyDown($event)" [showButtons]="showButtons"
4053
- [minFractionDigits]="minFractionDigits" [maxFractionDigits]="maxFractionDigits" [prefix]="prefix" [suffix]="suffix" [placeholder]="placeholder"
4054
- [mode]="currency ? 'currency' : 'decimal'" [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping"></p-inputNumber>
4055
- <p-triStateCheckbox *ngSwitchCase="'boolean'" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-triStateCheckbox>
4056
- <p-calendar *ngSwitchCase="'date'" [placeholder]="placeholder" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-calendar>
4057
- </ng-container>
4058
- </ng-template>
4059
- `,
4060
- encapsulation: ViewEncapsulation.None,
4061
- host: {
4062
- 'class': 'p-element'
4063
- }
4064
- }]
4065
- }], ctorParameters: function () { return [{ type: Table }, { type: ColumnFilter }]; }, propDecorators: { field: [{
4066
- type: Input
4067
- }], type: [{
4068
- type: Input
4069
- }], filterConstraint: [{
4070
- type: Input
4071
- }], filterTemplate: [{
4072
- type: Input
4073
- }], placeholder: [{
4074
- type: Input
4075
- }], minFractionDigits: [{
4076
- type: Input
4077
- }], maxFractionDigits: [{
4078
- type: Input
4079
- }], prefix: [{
4080
- type: Input
4081
- }], suffix: [{
4082
- type: Input
4083
- }], locale: [{
4084
- type: Input
4085
- }], localeMatcher: [{
4086
- type: Input
4087
- }], currency: [{
4088
- type: Input
4089
- }], currencyDisplay: [{
4090
- type: Input
4091
- }], useGrouping: [{
4092
- type: Input
4093
- }] } });
4094
4124
  class ColumnFilter {
4095
4125
  constructor(el, dt, renderer, config, overlayService) {
4096
4126
  this.el = el;
@@ -4127,10 +4157,11 @@ class ColumnFilter {
4127
4157
  this.generateOperatorOptions();
4128
4158
  }
4129
4159
  generateMatchModeOptions() {
4130
- this.matchModes = this.matchModeOptions ||
4131
- this.config.filterMatchModeOptions[this.type]?.map(key => {
4132
- return { label: this.config.getTranslation(key), value: key };
4133
- });
4160
+ this.matchModes =
4161
+ this.matchModeOptions ||
4162
+ this.config.filterMatchModeOptions[this.type]?.map((key) => {
4163
+ return { label: this.config.getTranslation(key), value: key };
4164
+ });
4134
4165
  }
4135
4166
  generateOperatorOptions() {
4136
4167
  this.operatorOptions = [
@@ -4205,11 +4236,11 @@ class ColumnFilter {
4205
4236
  this.dt.filters[this.field].push({ value: null, matchMode: this.getDefaultMatchMode(), operator: this.getDefaultOperator() });
4206
4237
  }
4207
4238
  removeConstraint(filterMeta) {
4208
- this.dt.filters[this.field] = this.dt.filters[this.field].filter(meta => meta !== filterMeta);
4239
+ this.dt.filters[this.field] = this.dt.filters[this.field].filter((meta) => meta !== filterMeta);
4209
4240
  this.dt._filter();
4210
4241
  }
4211
4242
  onOperatorChange(value) {
4212
- this.dt.filters[this.field].forEach(filterMeta => {
4243
+ this.dt.filters[this.field].forEach((filterMeta) => {
4213
4244
  filterMeta.operator = value;
4214
4245
  this.operator = value;
4215
4246
  });
@@ -4328,7 +4359,7 @@ class ColumnFilter {
4328
4359
  return this.showOperator && this.type !== 'boolean';
4329
4360
  }
4330
4361
  get isShowAddConstraint() {
4331
- return this.showAddButton && this.type !== 'boolean' && (this.fieldConstraints && this.fieldConstraints.length < this.maxConstraints);
4362
+ return this.showAddButton && this.type !== 'boolean' && this.fieldConstraints && this.fieldConstraints.length < this.maxConstraints;
4332
4363
  }
4333
4364
  get applyButtonLabel() {
4334
4365
  return this.config.getTranslation(TranslationKeys.APPLY);
@@ -4356,15 +4387,19 @@ class ColumnFilter {
4356
4387
  return false;
4357
4388
  }
4358
4389
  isOutsideClicked(event) {
4359
- return !(this.overlay.isSameNode(event.target) || this.overlay.contains(event.target)
4360
- || this.icon.nativeElement.isSameNode(event.target) || this.icon.nativeElement.contains(event.target)
4361
- || DomHandler.hasClass(event.target, 'p-column-filter-add-button') || DomHandler.hasClass(event.target.parentElement, 'p-column-filter-add-button')
4362
- || DomHandler.hasClass(event.target, 'p-column-filter-remove-button') || DomHandler.hasClass(event.target.parentElement, 'p-column-filter-remove-button'));
4390
+ return !(this.overlay.isSameNode(event.target) ||
4391
+ this.overlay.contains(event.target) ||
4392
+ this.icon.nativeElement.isSameNode(event.target) ||
4393
+ this.icon.nativeElement.contains(event.target) ||
4394
+ DomHandler.hasClass(event.target, 'p-column-filter-add-button') ||
4395
+ DomHandler.hasClass(event.target.parentElement, 'p-column-filter-add-button') ||
4396
+ DomHandler.hasClass(event.target, 'p-column-filter-remove-button') ||
4397
+ DomHandler.hasClass(event.target.parentElement, 'p-column-filter-remove-button'));
4363
4398
  }
4364
4399
  bindDocumentClickListener() {
4365
4400
  if (!this.documentClickListener) {
4366
4401
  const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';
4367
- this.documentClickListener = this.renderer.listen(documentTarget, 'click', event => {
4402
+ this.documentClickListener = this.renderer.listen(documentTarget, 'click', (event) => {
4368
4403
  if (this.overlayVisible && !this.selfClick && this.isOutsideClicked(event)) {
4369
4404
  this.hide();
4370
4405
  }
@@ -4446,21 +4481,66 @@ class ColumnFilter {
4446
4481
  }
4447
4482
  ColumnFilter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ColumnFilter, deps: [{ token: i0.ElementRef }, { token: Table }, { token: i0.Renderer2 }, { token: i1.PrimeNGConfig }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
4448
4483
  ColumnFilter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: ColumnFilter, selector: "p-columnFilter", inputs: { field: "field", type: "type", display: "display", showMenu: "showMenu", matchMode: "matchMode", operator: "operator", showOperator: "showOperator", showClearButton: "showClearButton", showApplyButton: "showApplyButton", showMatchModes: "showMatchModes", showAddButton: "showAddButton", hideOnClear: "hideOnClear", placeholder: "placeholder", matchModeOptions: "matchModeOptions", maxConstraints: "maxConstraints", minFractionDigits: "minFractionDigits", maxFractionDigits: "maxFractionDigits", prefix: "prefix", suffix: "suffix", locale: "locale", localeMatcher: "localeMatcher", currency: "currency", currencyDisplay: "currencyDisplay", useGrouping: "useGrouping", showButtons: "showButtons" }, host: { classAttribute: "p-element" }, queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "icon", first: true, predicate: ["icon"], descendants: true }], ngImport: i0, template: `
4449
- <div class="p-column-filter" [ngClass]="{'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu'}">
4450
- <p-columnFilterFormElement *ngIf="display === 'row'" class="p-fluid" [type]="type" [field]="field" [filterConstraint]="dt.filters[field]" [filterTemplate]="filterTemplate" [placeholder]="placeholder" [minFractionDigits]="minFractionDigits" [maxFractionDigits]="maxFractionDigits" [prefix]="prefix" [suffix]="suffix"
4451
- [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping" [showButtons]="showButtons"></p-columnFilterFormElement>
4452
- <button #icon *ngIf="showMenuButton" type="button" class="p-column-filter-menu-button p-link" aria-haspopup="true" [attr.aria-expanded]="overlayVisible"
4453
- [ngClass]="{'p-column-filter-menu-button-open': overlayVisible, 'p-column-filter-menu-button-active': hasFilter()}"
4454
- (click)="toggleMenu()" (keydown)="onToggleButtonKeyDown($event)"><span class="pi pi-filter-icon pi-filter"></span></button>
4455
- <button #icon *ngIf="showClearButton && display === 'row'" [ngClass]="{'p-hidden-space': !hasRowFilter()}" type="button" class="p-column-filter-clear-button p-link" (click)="clearFilter()"><span class="pi pi-filter-slash"></span></button>
4456
- <div *ngIf="showMenu && overlayVisible" [ngClass]="{'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu'}" (click)="onContentClick()"
4457
- [@overlayAnimation]="'visible'" (@overlayAnimation.start)="onOverlayAnimationStart($event)" (@overlayAnimation.done)="onOverlayAnimationEnd($event)" (keydown.escape)="onEscape()">
4458
- <ng-container *ngTemplateOutlet="headerTemplate; context: {$implicit: field}"></ng-container>
4484
+ <div class="p-column-filter" [ngClass]="{ 'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu' }">
4485
+ <p-columnFilterFormElement
4486
+ *ngIf="display === 'row'"
4487
+ class="p-fluid"
4488
+ [type]="type"
4489
+ [field]="field"
4490
+ [filterConstraint]="dt.filters[field]"
4491
+ [filterTemplate]="filterTemplate"
4492
+ [placeholder]="placeholder"
4493
+ [minFractionDigits]="minFractionDigits"
4494
+ [maxFractionDigits]="maxFractionDigits"
4495
+ [prefix]="prefix"
4496
+ [suffix]="suffix"
4497
+ [locale]="locale"
4498
+ [localeMatcher]="localeMatcher"
4499
+ [currency]="currency"
4500
+ [currencyDisplay]="currencyDisplay"
4501
+ [useGrouping]="useGrouping"
4502
+ [showButtons]="showButtons"
4503
+ ></p-columnFilterFormElement>
4504
+ <button
4505
+ #icon
4506
+ *ngIf="showMenuButton"
4507
+ type="button"
4508
+ class="p-column-filter-menu-button p-link"
4509
+ aria-haspopup="true"
4510
+ [attr.aria-expanded]="overlayVisible"
4511
+ [ngClass]="{ 'p-column-filter-menu-button-open': overlayVisible, 'p-column-filter-menu-button-active': hasFilter() }"
4512
+ (click)="toggleMenu()"
4513
+ (keydown)="onToggleButtonKeyDown($event)"
4514
+ >
4515
+ <span class="pi pi-filter-icon pi-filter"></span>
4516
+ </button>
4517
+ <button #icon *ngIf="showClearButton && display === 'row'" [ngClass]="{ 'p-hidden-space': !hasRowFilter() }" type="button" class="p-column-filter-clear-button p-link" (click)="clearFilter()">
4518
+ <span class="pi pi-filter-slash"></span>
4519
+ </button>
4520
+ <div
4521
+ *ngIf="showMenu && overlayVisible"
4522
+ [ngClass]="{ 'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu' }"
4523
+ (click)="onContentClick()"
4524
+ [@overlayAnimation]="'visible'"
4525
+ (@overlayAnimation.start)="onOverlayAnimationStart($event)"
4526
+ (@overlayAnimation.done)="onOverlayAnimationEnd($event)"
4527
+ (keydown.escape)="onEscape()"
4528
+ >
4529
+ <ng-container *ngTemplateOutlet="headerTemplate; context: { $implicit: field }"></ng-container>
4459
4530
  <ul *ngIf="display === 'row'; else menu" class="p-column-filter-row-items">
4460
- <li class="p-column-filter-row-item" *ngFor="let matchMode of matchModes; let i = index;" (click)="onRowMatchModeChange(matchMode.value)" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="this.onRowMatchModeChange(matchMode.value)"
4461
- [ngClass]="{'p-highlight': isRowMatchModeSelected(matchMode.value)}" [attr.tabindex]="i === 0 ? '0' : null">{{matchMode.label}}</li>
4531
+ <li
4532
+ class="p-column-filter-row-item"
4533
+ *ngFor="let matchMode of matchModes; let i = index"
4534
+ (click)="onRowMatchModeChange(matchMode.value)"
4535
+ (keydown)="onRowMatchModeKeyDown($event)"
4536
+ (keydown.enter)="this.onRowMatchModeChange(matchMode.value)"
4537
+ [ngClass]="{ 'p-highlight': isRowMatchModeSelected(matchMode.value) }"
4538
+ [attr.tabindex]="i === 0 ? '0' : null"
4539
+ >
4540
+ {{ matchMode.label }}
4541
+ </li>
4462
4542
  <li class="p-column-filter-separator"></li>
4463
- <li class="p-column-filter-row-item" (click)="onRowClearItemClick()" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="onRowClearItemClick()">{{noFilterLabel}}</li>
4543
+ <li class="p-column-filter-row-item" (click)="onRowClearItemClick()" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="onRowClearItemClick()">{{ noFilterLabel }}</li>
4464
4544
  </ul>
4465
4545
  <ng-template #menu>
4466
4546
  <div class="p-column-filter-operator" *ngIf="isShowOperator">
@@ -4468,12 +4548,40 @@ ColumnFilter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
4468
4548
  </div>
4469
4549
  <div class="p-column-filter-constraints">
4470
4550
  <div *ngFor="let fieldConstraint of fieldConstraints; let i = index" class="p-column-filter-constraint">
4471
- <p-dropdown *ngIf="showMatchModes && matchModes" [options]="matchModes" [ngModel]="fieldConstraint.matchMode" (ngModelChange)="onMenuMatchModeChange($event, fieldConstraint)" styleClass="p-column-filter-matchmode-dropdown"></p-dropdown>
4472
- <p-columnFilterFormElement [type]="type" [field]="field" [filterConstraint]="fieldConstraint" [filterTemplate]="filterTemplate" [placeholder]="placeholder"
4473
- [minFractionDigits]="minFractionDigits" [maxFractionDigits]="maxFractionDigits" [prefix]="prefix" [suffix]="suffix"
4474
- [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping"></p-columnFilterFormElement>
4551
+ <p-dropdown
4552
+ *ngIf="showMatchModes && matchModes"
4553
+ [options]="matchModes"
4554
+ [ngModel]="fieldConstraint.matchMode"
4555
+ (ngModelChange)="onMenuMatchModeChange($event, fieldConstraint)"
4556
+ styleClass="p-column-filter-matchmode-dropdown"
4557
+ ></p-dropdown>
4558
+ <p-columnFilterFormElement
4559
+ [type]="type"
4560
+ [field]="field"
4561
+ [filterConstraint]="fieldConstraint"
4562
+ [filterTemplate]="filterTemplate"
4563
+ [placeholder]="placeholder"
4564
+ [minFractionDigits]="minFractionDigits"
4565
+ [maxFractionDigits]="maxFractionDigits"
4566
+ [prefix]="prefix"
4567
+ [suffix]="suffix"
4568
+ [locale]="locale"
4569
+ [localeMatcher]="localeMatcher"
4570
+ [currency]="currency"
4571
+ [currencyDisplay]="currencyDisplay"
4572
+ [useGrouping]="useGrouping"
4573
+ ></p-columnFilterFormElement>
4475
4574
  <div>
4476
- <button *ngIf="showRemoveIcon" type="button" pButton icon="pi pi-trash" class="p-column-filter-remove-button p-button-text p-button-danger p-button-sm" (click)="removeConstraint(fieldConstraint)" pRipple [label]="removeRuleButtonLabel"></button>
4575
+ <button
4576
+ *ngIf="showRemoveIcon"
4577
+ type="button"
4578
+ pButton
4579
+ icon="pi pi-trash"
4580
+ class="p-column-filter-remove-button p-button-text p-button-danger p-button-sm"
4581
+ (click)="removeConstraint(fieldConstraint)"
4582
+ pRipple
4583
+ [label]="removeRuleButtonLabel"
4584
+ ></button>
4477
4585
  </div>
4478
4586
  </div>
4479
4587
  </div>
@@ -4485,40 +4593,75 @@ ColumnFilter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
4485
4593
  <button *ngIf="showApplyButton" type="button" pButton (click)="applyFilter()" class="p-button-sm" [label]="applyButtonLabel" pRipple></button>
4486
4594
  </div>
4487
4595
  </ng-template>
4488
- <ng-container *ngTemplateOutlet="footerTemplate; context: {$implicit: field}"></ng-container>
4596
+ <ng-container *ngTemplateOutlet="footerTemplate; context: { $implicit: field }"></ng-container>
4489
4597
  </div>
4490
4598
  </div>
4491
- `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i10.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "disabled", "itemSize", "options", "filterValue"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i11.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: ColumnFilterFormElement, selector: "p-columnFilterFormElement", inputs: ["field", "type", "filterConstraint", "filterTemplate", "placeholder", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "locale", "localeMatcher", "currency", "currencyDisplay", "useGrouping"] }], animations: [
4492
- trigger('overlayAnimation', [
4493
- transition(':enter', [
4494
- style({ opacity: 0, transform: 'scaleY(0.8)' }),
4495
- animate('.12s cubic-bezier(0, 0, 0.2, 1)')
4496
- ]),
4497
- transition(':leave', [
4498
- animate('.1s linear', style({ opacity: 0 }))
4499
- ])
4500
- ])
4501
- ], encapsulation: i0.ViewEncapsulation.None });
4599
+ `, isInline: true, dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i2.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i0.forwardRef(function () { return i5.Dropdown; }), selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "overlayDirection", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "options", "filterValue"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i0.forwardRef(function () { return i6.NgControlStatus; }), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(function () { return i6.NgModel; }), selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i0.forwardRef(function () { return i7.ButtonDirective; }), selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i0.forwardRef(function () { return ColumnFilterFormElement; }), selector: "p-columnFilterFormElement", inputs: ["field", "type", "filterConstraint", "filterTemplate", "placeholder", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "locale", "localeMatcher", "currency", "currencyDisplay", "useGrouping"] }], animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('.12s cubic-bezier(0, 0, 0.2, 1)')]), transition(':leave', [animate('.1s linear', style({ opacity: 0 }))])])], encapsulation: i0.ViewEncapsulation.None });
4502
4600
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ColumnFilter, decorators: [{
4503
4601
  type: Component,
4504
4602
  args: [{
4505
4603
  selector: 'p-columnFilter',
4506
4604
  template: `
4507
- <div class="p-column-filter" [ngClass]="{'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu'}">
4508
- <p-columnFilterFormElement *ngIf="display === 'row'" class="p-fluid" [type]="type" [field]="field" [filterConstraint]="dt.filters[field]" [filterTemplate]="filterTemplate" [placeholder]="placeholder" [minFractionDigits]="minFractionDigits" [maxFractionDigits]="maxFractionDigits" [prefix]="prefix" [suffix]="suffix"
4509
- [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping" [showButtons]="showButtons"></p-columnFilterFormElement>
4510
- <button #icon *ngIf="showMenuButton" type="button" class="p-column-filter-menu-button p-link" aria-haspopup="true" [attr.aria-expanded]="overlayVisible"
4511
- [ngClass]="{'p-column-filter-menu-button-open': overlayVisible, 'p-column-filter-menu-button-active': hasFilter()}"
4512
- (click)="toggleMenu()" (keydown)="onToggleButtonKeyDown($event)"><span class="pi pi-filter-icon pi-filter"></span></button>
4513
- <button #icon *ngIf="showClearButton && display === 'row'" [ngClass]="{'p-hidden-space': !hasRowFilter()}" type="button" class="p-column-filter-clear-button p-link" (click)="clearFilter()"><span class="pi pi-filter-slash"></span></button>
4514
- <div *ngIf="showMenu && overlayVisible" [ngClass]="{'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu'}" (click)="onContentClick()"
4515
- [@overlayAnimation]="'visible'" (@overlayAnimation.start)="onOverlayAnimationStart($event)" (@overlayAnimation.done)="onOverlayAnimationEnd($event)" (keydown.escape)="onEscape()">
4516
- <ng-container *ngTemplateOutlet="headerTemplate; context: {$implicit: field}"></ng-container>
4605
+ <div class="p-column-filter" [ngClass]="{ 'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu' }">
4606
+ <p-columnFilterFormElement
4607
+ *ngIf="display === 'row'"
4608
+ class="p-fluid"
4609
+ [type]="type"
4610
+ [field]="field"
4611
+ [filterConstraint]="dt.filters[field]"
4612
+ [filterTemplate]="filterTemplate"
4613
+ [placeholder]="placeholder"
4614
+ [minFractionDigits]="minFractionDigits"
4615
+ [maxFractionDigits]="maxFractionDigits"
4616
+ [prefix]="prefix"
4617
+ [suffix]="suffix"
4618
+ [locale]="locale"
4619
+ [localeMatcher]="localeMatcher"
4620
+ [currency]="currency"
4621
+ [currencyDisplay]="currencyDisplay"
4622
+ [useGrouping]="useGrouping"
4623
+ [showButtons]="showButtons"
4624
+ ></p-columnFilterFormElement>
4625
+ <button
4626
+ #icon
4627
+ *ngIf="showMenuButton"
4628
+ type="button"
4629
+ class="p-column-filter-menu-button p-link"
4630
+ aria-haspopup="true"
4631
+ [attr.aria-expanded]="overlayVisible"
4632
+ [ngClass]="{ 'p-column-filter-menu-button-open': overlayVisible, 'p-column-filter-menu-button-active': hasFilter() }"
4633
+ (click)="toggleMenu()"
4634
+ (keydown)="onToggleButtonKeyDown($event)"
4635
+ >
4636
+ <span class="pi pi-filter-icon pi-filter"></span>
4637
+ </button>
4638
+ <button #icon *ngIf="showClearButton && display === 'row'" [ngClass]="{ 'p-hidden-space': !hasRowFilter() }" type="button" class="p-column-filter-clear-button p-link" (click)="clearFilter()">
4639
+ <span class="pi pi-filter-slash"></span>
4640
+ </button>
4641
+ <div
4642
+ *ngIf="showMenu && overlayVisible"
4643
+ [ngClass]="{ 'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu' }"
4644
+ (click)="onContentClick()"
4645
+ [@overlayAnimation]="'visible'"
4646
+ (@overlayAnimation.start)="onOverlayAnimationStart($event)"
4647
+ (@overlayAnimation.done)="onOverlayAnimationEnd($event)"
4648
+ (keydown.escape)="onEscape()"
4649
+ >
4650
+ <ng-container *ngTemplateOutlet="headerTemplate; context: { $implicit: field }"></ng-container>
4517
4651
  <ul *ngIf="display === 'row'; else menu" class="p-column-filter-row-items">
4518
- <li class="p-column-filter-row-item" *ngFor="let matchMode of matchModes; let i = index;" (click)="onRowMatchModeChange(matchMode.value)" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="this.onRowMatchModeChange(matchMode.value)"
4519
- [ngClass]="{'p-highlight': isRowMatchModeSelected(matchMode.value)}" [attr.tabindex]="i === 0 ? '0' : null">{{matchMode.label}}</li>
4652
+ <li
4653
+ class="p-column-filter-row-item"
4654
+ *ngFor="let matchMode of matchModes; let i = index"
4655
+ (click)="onRowMatchModeChange(matchMode.value)"
4656
+ (keydown)="onRowMatchModeKeyDown($event)"
4657
+ (keydown.enter)="this.onRowMatchModeChange(matchMode.value)"
4658
+ [ngClass]="{ 'p-highlight': isRowMatchModeSelected(matchMode.value) }"
4659
+ [attr.tabindex]="i === 0 ? '0' : null"
4660
+ >
4661
+ {{ matchMode.label }}
4662
+ </li>
4520
4663
  <li class="p-column-filter-separator"></li>
4521
- <li class="p-column-filter-row-item" (click)="onRowClearItemClick()" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="onRowClearItemClick()">{{noFilterLabel}}</li>
4664
+ <li class="p-column-filter-row-item" (click)="onRowClearItemClick()" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="onRowClearItemClick()">{{ noFilterLabel }}</li>
4522
4665
  </ul>
4523
4666
  <ng-template #menu>
4524
4667
  <div class="p-column-filter-operator" *ngIf="isShowOperator">
@@ -4526,12 +4669,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
4526
4669
  </div>
4527
4670
  <div class="p-column-filter-constraints">
4528
4671
  <div *ngFor="let fieldConstraint of fieldConstraints; let i = index" class="p-column-filter-constraint">
4529
- <p-dropdown *ngIf="showMatchModes && matchModes" [options]="matchModes" [ngModel]="fieldConstraint.matchMode" (ngModelChange)="onMenuMatchModeChange($event, fieldConstraint)" styleClass="p-column-filter-matchmode-dropdown"></p-dropdown>
4530
- <p-columnFilterFormElement [type]="type" [field]="field" [filterConstraint]="fieldConstraint" [filterTemplate]="filterTemplate" [placeholder]="placeholder"
4531
- [minFractionDigits]="minFractionDigits" [maxFractionDigits]="maxFractionDigits" [prefix]="prefix" [suffix]="suffix"
4532
- [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping"></p-columnFilterFormElement>
4672
+ <p-dropdown
4673
+ *ngIf="showMatchModes && matchModes"
4674
+ [options]="matchModes"
4675
+ [ngModel]="fieldConstraint.matchMode"
4676
+ (ngModelChange)="onMenuMatchModeChange($event, fieldConstraint)"
4677
+ styleClass="p-column-filter-matchmode-dropdown"
4678
+ ></p-dropdown>
4679
+ <p-columnFilterFormElement
4680
+ [type]="type"
4681
+ [field]="field"
4682
+ [filterConstraint]="fieldConstraint"
4683
+ [filterTemplate]="filterTemplate"
4684
+ [placeholder]="placeholder"
4685
+ [minFractionDigits]="minFractionDigits"
4686
+ [maxFractionDigits]="maxFractionDigits"
4687
+ [prefix]="prefix"
4688
+ [suffix]="suffix"
4689
+ [locale]="locale"
4690
+ [localeMatcher]="localeMatcher"
4691
+ [currency]="currency"
4692
+ [currencyDisplay]="currencyDisplay"
4693
+ [useGrouping]="useGrouping"
4694
+ ></p-columnFilterFormElement>
4533
4695
  <div>
4534
- <button *ngIf="showRemoveIcon" type="button" pButton icon="pi pi-trash" class="p-column-filter-remove-button p-button-text p-button-danger p-button-sm" (click)="removeConstraint(fieldConstraint)" pRipple [label]="removeRuleButtonLabel"></button>
4696
+ <button
4697
+ *ngIf="showRemoveIcon"
4698
+ type="button"
4699
+ pButton
4700
+ icon="pi pi-trash"
4701
+ class="p-column-filter-remove-button p-button-text p-button-danger p-button-sm"
4702
+ (click)="removeConstraint(fieldConstraint)"
4703
+ pRipple
4704
+ [label]="removeRuleButtonLabel"
4705
+ ></button>
4535
4706
  </div>
4536
4707
  </div>
4537
4708
  </div>
@@ -4543,24 +4714,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
4543
4714
  <button *ngIf="showApplyButton" type="button" pButton (click)="applyFilter()" class="p-button-sm" [label]="applyButtonLabel" pRipple></button>
4544
4715
  </div>
4545
4716
  </ng-template>
4546
- <ng-container *ngTemplateOutlet="footerTemplate; context: {$implicit: field}"></ng-container>
4717
+ <ng-container *ngTemplateOutlet="footerTemplate; context: { $implicit: field }"></ng-container>
4547
4718
  </div>
4548
4719
  </div>
4549
4720
  `,
4550
- animations: [
4551
- trigger('overlayAnimation', [
4552
- transition(':enter', [
4553
- style({ opacity: 0, transform: 'scaleY(0.8)' }),
4554
- animate('.12s cubic-bezier(0, 0, 0.2, 1)')
4555
- ]),
4556
- transition(':leave', [
4557
- animate('.1s linear', style({ opacity: 0 }))
4558
- ])
4559
- ])
4560
- ],
4721
+ animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('.12s cubic-bezier(0, 0, 0.2, 1)')]), transition(':leave', [animate('.1s linear', style({ opacity: 0 }))])])],
4561
4722
  encapsulation: ViewEncapsulation.None,
4562
4723
  host: {
4563
- 'class': 'p-element'
4724
+ class: 'p-element'
4564
4725
  }
4565
4726
  }]
4566
4727
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: Table }, { type: i0.Renderer2 }, { type: i1.PrimeNGConfig }, { type: i1.OverlayService }]; }, propDecorators: { field: [{
@@ -4620,6 +4781,137 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
4620
4781
  type: ContentChildren,
4621
4782
  args: [PrimeTemplate]
4622
4783
  }] } });
4784
+ class ColumnFilterFormElement {
4785
+ constructor(dt, colFilter) {
4786
+ this.dt = dt;
4787
+ this.colFilter = colFilter;
4788
+ this.useGrouping = true;
4789
+ }
4790
+ get showButtons() {
4791
+ return this.colFilter.showButtons;
4792
+ }
4793
+ ngOnInit() {
4794
+ this.filterCallback = (value) => {
4795
+ this.filterConstraint.value = value;
4796
+ this.dt._filter();
4797
+ };
4798
+ }
4799
+ onModelChange(value) {
4800
+ this.filterConstraint.value = value;
4801
+ if (this.type === 'boolean' || value === '') {
4802
+ this.dt._filter();
4803
+ }
4804
+ }
4805
+ onTextInputEnterKeyDown(event) {
4806
+ this.dt._filter();
4807
+ event.preventDefault();
4808
+ }
4809
+ onNumericInputKeyDown(event) {
4810
+ if (event.key === 'Enter') {
4811
+ this.dt._filter();
4812
+ event.preventDefault();
4813
+ }
4814
+ }
4815
+ }
4816
+ ColumnFilterFormElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ColumnFilterFormElement, deps: [{ token: Table }, { token: ColumnFilter }], target: i0.ɵɵFactoryTarget.Component });
4817
+ ColumnFilterFormElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: ColumnFilterFormElement, selector: "p-columnFilterFormElement", inputs: { field: "field", type: "type", filterConstraint: "filterConstraint", filterTemplate: "filterTemplate", placeholder: "placeholder", minFractionDigits: "minFractionDigits", maxFractionDigits: "maxFractionDigits", prefix: "prefix", suffix: "suffix", locale: "locale", localeMatcher: "localeMatcher", currency: "currency", currencyDisplay: "currencyDisplay", useGrouping: "useGrouping" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
4818
+ <ng-container *ngIf="filterTemplate; else builtInElement">
4819
+ <ng-container *ngTemplateOutlet="filterTemplate; context: { $implicit: filterConstraint.value, filterCallback: filterCallback }"></ng-container>
4820
+ </ng-container>
4821
+ <ng-template #builtInElement>
4822
+ <ng-container [ngSwitch]="type">
4823
+ <input *ngSwitchCase="'text'" type="text" pInputText [value]="filterConstraint?.value" (input)="onModelChange($event.target.value)" (keydown.enter)="onTextInputEnterKeyDown($event)" [attr.placeholder]="placeholder" />
4824
+ <p-inputNumber
4825
+ *ngSwitchCase="'numeric'"
4826
+ [ngModel]="filterConstraint?.value"
4827
+ (ngModelChange)="onModelChange($event)"
4828
+ (onKeyDown)="onNumericInputKeyDown($event)"
4829
+ [showButtons]="showButtons"
4830
+ [minFractionDigits]="minFractionDigits"
4831
+ [maxFractionDigits]="maxFractionDigits"
4832
+ [prefix]="prefix"
4833
+ [suffix]="suffix"
4834
+ [placeholder]="placeholder"
4835
+ [mode]="currency ? 'currency' : 'decimal'"
4836
+ [locale]="locale"
4837
+ [localeMatcher]="localeMatcher"
4838
+ [currency]="currency"
4839
+ [currencyDisplay]="currencyDisplay"
4840
+ [useGrouping]="useGrouping"
4841
+ ></p-inputNumber>
4842
+ <p-triStateCheckbox *ngSwitchCase="'boolean'" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-triStateCheckbox>
4843
+ <p-calendar *ngSwitchCase="'date'" [placeholder]="placeholder" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-calendar>
4844
+ </ng-container>
4845
+ </ng-template>
4846
+ `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i8.InputNumber, selector: "p-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i9.InputText, selector: "[pInputText]" }, { kind: "component", type: i10.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "view", "defaultDate", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i11.TriStateCheckbox, selector: "p-triStateCheckbox", inputs: ["disabled", "name", "ariaLabelledBy", "tabindex", "inputId", "style", "styleClass", "label", "readonly", "checkboxTrueIcon", "checkboxFalseIcon"], outputs: ["onChange"] }], encapsulation: i0.ViewEncapsulation.None });
4847
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ColumnFilterFormElement, decorators: [{
4848
+ type: Component,
4849
+ args: [{
4850
+ selector: 'p-columnFilterFormElement',
4851
+ template: `
4852
+ <ng-container *ngIf="filterTemplate; else builtInElement">
4853
+ <ng-container *ngTemplateOutlet="filterTemplate; context: { $implicit: filterConstraint.value, filterCallback: filterCallback }"></ng-container>
4854
+ </ng-container>
4855
+ <ng-template #builtInElement>
4856
+ <ng-container [ngSwitch]="type">
4857
+ <input *ngSwitchCase="'text'" type="text" pInputText [value]="filterConstraint?.value" (input)="onModelChange($event.target.value)" (keydown.enter)="onTextInputEnterKeyDown($event)" [attr.placeholder]="placeholder" />
4858
+ <p-inputNumber
4859
+ *ngSwitchCase="'numeric'"
4860
+ [ngModel]="filterConstraint?.value"
4861
+ (ngModelChange)="onModelChange($event)"
4862
+ (onKeyDown)="onNumericInputKeyDown($event)"
4863
+ [showButtons]="showButtons"
4864
+ [minFractionDigits]="minFractionDigits"
4865
+ [maxFractionDigits]="maxFractionDigits"
4866
+ [prefix]="prefix"
4867
+ [suffix]="suffix"
4868
+ [placeholder]="placeholder"
4869
+ [mode]="currency ? 'currency' : 'decimal'"
4870
+ [locale]="locale"
4871
+ [localeMatcher]="localeMatcher"
4872
+ [currency]="currency"
4873
+ [currencyDisplay]="currencyDisplay"
4874
+ [useGrouping]="useGrouping"
4875
+ ></p-inputNumber>
4876
+ <p-triStateCheckbox *ngSwitchCase="'boolean'" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-triStateCheckbox>
4877
+ <p-calendar *ngSwitchCase="'date'" [placeholder]="placeholder" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-calendar>
4878
+ </ng-container>
4879
+ </ng-template>
4880
+ `,
4881
+ encapsulation: ViewEncapsulation.None,
4882
+ host: {
4883
+ class: 'p-element'
4884
+ }
4885
+ }]
4886
+ }], ctorParameters: function () { return [{ type: Table }, { type: ColumnFilter }]; }, propDecorators: { field: [{
4887
+ type: Input
4888
+ }], type: [{
4889
+ type: Input
4890
+ }], filterConstraint: [{
4891
+ type: Input
4892
+ }], filterTemplate: [{
4893
+ type: Input
4894
+ }], placeholder: [{
4895
+ type: Input
4896
+ }], minFractionDigits: [{
4897
+ type: Input
4898
+ }], maxFractionDigits: [{
4899
+ type: Input
4900
+ }], prefix: [{
4901
+ type: Input
4902
+ }], suffix: [{
4903
+ type: Input
4904
+ }], locale: [{
4905
+ type: Input
4906
+ }], localeMatcher: [{
4907
+ type: Input
4908
+ }], currency: [{
4909
+ type: Input
4910
+ }], currencyDisplay: [{
4911
+ type: Input
4912
+ }], useGrouping: [{
4913
+ type: Input
4914
+ }] } });
4623
4915
  class TableModule {
4624
4916
  }
4625
4917
  TableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -4630,10 +4922,61 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
4630
4922
  type: NgModule,
4631
4923
  args: [{
4632
4924
  imports: [CommonModule, PaginatorModule, InputTextModule, DropdownModule, FormsModule, ButtonModule, SelectButtonModule, CalendarModule, InputNumberModule, TriStateCheckboxModule, ScrollerModule],
4633
- exports: [Table, SharedModule, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, SortIcon,
4634
- TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ColumnFilter, ColumnFilterFormElement, ScrollerModule],
4635
- declarations: [Table, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, TableBody, SortIcon,
4636
- TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ColumnFilter, ColumnFilterFormElement]
4925
+ exports: [
4926
+ Table,
4927
+ SharedModule,
4928
+ SortableColumn,
4929
+ FrozenColumn,
4930
+ RowGroupHeader,
4931
+ SelectableRow,
4932
+ RowToggler,
4933
+ ContextMenuRow,
4934
+ ResizableColumn,
4935
+ ReorderableColumn,
4936
+ EditableColumn,
4937
+ CellEditor,
4938
+ SortIcon,
4939
+ TableRadioButton,
4940
+ TableCheckbox,
4941
+ TableHeaderCheckbox,
4942
+ ReorderableRowHandle,
4943
+ ReorderableRow,
4944
+ SelectableRowDblClick,
4945
+ EditableRow,
4946
+ InitEditableRow,
4947
+ SaveEditableRow,
4948
+ CancelEditableRow,
4949
+ ColumnFilter,
4950
+ ColumnFilterFormElement,
4951
+ ScrollerModule
4952
+ ],
4953
+ declarations: [
4954
+ Table,
4955
+ SortableColumn,
4956
+ FrozenColumn,
4957
+ RowGroupHeader,
4958
+ SelectableRow,
4959
+ RowToggler,
4960
+ ContextMenuRow,
4961
+ ResizableColumn,
4962
+ ReorderableColumn,
4963
+ EditableColumn,
4964
+ CellEditor,
4965
+ TableBody,
4966
+ SortIcon,
4967
+ TableRadioButton,
4968
+ TableCheckbox,
4969
+ TableHeaderCheckbox,
4970
+ ReorderableRowHandle,
4971
+ ReorderableRow,
4972
+ SelectableRowDblClick,
4973
+ EditableRow,
4974
+ InitEditableRow,
4975
+ SaveEditableRow,
4976
+ CancelEditableRow,
4977
+ ColumnFilter,
4978
+ ColumnFilterFormElement
4979
+ ]
4637
4980
  }]
4638
4981
  }] });
4639
4982