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) {
@@ -246,28 +253,24 @@ class Table {
246
253
  });
247
254
  }
248
255
  ngAfterViewInit() {
249
- var _a;
250
256
  if (this.isStateful() && this.resizableColumns) {
251
257
  this.restoreColumnWidths();
252
258
  }
253
- if (this.virtualScroll && ((_a = this.scroller) === null || _a === void 0 ? void 0 : _a.vertical)) {
254
- this.updateScrollerPosition();
255
- }
256
259
  }
257
260
  ngOnChanges(simpleChange) {
258
- var _a;
259
261
  if (simpleChange.value) {
260
262
  if (this.isStateful() && !this.stateRestored) {
261
263
  this.restoreState();
262
264
  }
263
265
  this._value = simpleChange.value.currentValue;
264
266
  if (!this.lazy) {
265
- this.totalRecords = (this._value ? this._value.length : 0);
267
+ this.totalRecords = this._value ? this._value.length : 0;
266
268
  if (this.sortMode == 'single' && (this.sortField || this.groupRowsBy))
267
269
  this.sortSingle();
268
270
  else if (this.sortMode == 'multiple' && (this.multiSortMeta || this.groupRowsBy))
269
271
  this.sortMultiple();
270
- else if (this.hasFilter()) //sort already filters
272
+ else if (this.hasFilter())
273
+ //sort already filters
271
274
  this._filter();
272
275
  }
273
276
  this.tableService.onValueChange(simpleChange.value.currentValue);
@@ -338,12 +341,6 @@ class Table {
338
341
  }
339
342
  this.preventSelectionSetterPropagation = false;
340
343
  }
341
- if (simpleChange.virtualScrollOptions) {
342
- const { previousValue, currentValue } = simpleChange.virtualScrollOptions;
343
- if (this.virtualScroll && ((_a = this.scroller) === null || _a === void 0 ? void 0 : _a.vertical) && previousValue.itemSize !== currentValue.itemSize) {
344
- this.updateScrollerPosition();
345
- }
346
- }
347
344
  }
348
345
  get value() {
349
346
  return this._value;
@@ -430,15 +427,6 @@ class Table {
430
427
  }
431
428
  }
432
429
  }
433
- updateScrollerPosition() {
434
- if (this.tableFooterViewChild) {
435
- const getClientHeight = (el) => el ? parseFloat(getComputedStyle(el).height) || DomHandler.getOuterHeight(el) : 0;
436
- const tableHeight = getClientHeight(this.tableViewChild.nativeElement);
437
- const tableFooterHeight = getClientHeight(this.tableFooterViewChild.nativeElement);
438
- this.tableViewChild.nativeElement.style.height = tableHeight + tableFooterHeight + 'px';
439
- this.tableFooterViewChild.nativeElement.style.top = `calc(100% - ${tableFooterHeight}px)`;
440
- }
441
- }
442
430
  onPageChange(event) {
443
431
  this.first = event.first;
444
432
  this.rows = event.rows;
@@ -463,7 +451,7 @@ class Table {
463
451
  sort(event) {
464
452
  let originalEvent = event.originalEvent;
465
453
  if (this.sortMode === 'single') {
466
- this._sortOrder = (this.sortField === event.field) ? this.sortOrder * -1 : this.defaultSortOrder;
454
+ this._sortOrder = this.sortField === event.field ? this.sortOrder * -1 : this.defaultSortOrder;
467
455
  this._sortField = event.field;
468
456
  if (this.resetPageOnSort) {
469
457
  this._first = 0;
@@ -547,8 +535,8 @@ class Table {
547
535
  else if (typeof value1 === 'string' && typeof value2 === 'string')
548
536
  result = value1.localeCompare(value2);
549
537
  else
550
- result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;
551
- return (order * result);
538
+ result = value1 < value2 ? -1 : value1 > value2 ? 1 : 0;
539
+ return order * result;
552
540
  });
553
541
  this._value = [...this.value];
554
542
  }
@@ -600,30 +588,15 @@ class Table {
600
588
  }
601
589
  }
602
590
  multisortField(data1, data2, multiSortMeta, index) {
603
- if (ObjectUtils.isEmpty(this.multiSortMeta) || ObjectUtils.isEmpty(multiSortMeta[index])) {
604
- return 0;
605
- }
606
- let value1 = ObjectUtils.resolveFieldData(data1, multiSortMeta[index].field);
607
- let value2 = ObjectUtils.resolveFieldData(data2, multiSortMeta[index].field);
608
- let result = null;
609
- if (value1 == null && value2 != null)
610
- result = -1;
611
- else if (value1 != null && value2 == null)
612
- result = 1;
613
- else if (value1 == null && value2 == null)
614
- result = 0;
615
- else if (typeof value1 == 'string' || value1 instanceof String) {
616
- if (value1.localeCompare && (value1 != value2)) {
617
- return (multiSortMeta[index].order * value1.localeCompare(value2));
618
- }
619
- }
620
- else {
621
- result = (value1 < value2) ? -1 : 1;
622
- }
623
- if (value1 == value2) {
624
- 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;
625
595
  }
626
- 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);
627
600
  }
628
601
  getSortMeta(field) {
629
602
  if (this.multiSortMeta && this.multiSortMeta.length) {
@@ -637,7 +610,7 @@ class Table {
637
610
  }
638
611
  isSorted(field) {
639
612
  if (this.sortMode === 'single') {
640
- return (this.sortField && this.sortField === field);
613
+ return this.sortField && this.sortField === field;
641
614
  }
642
615
  else if (this.sortMode === 'multiple') {
643
616
  let sorted = false;
@@ -656,9 +629,7 @@ class Table {
656
629
  let target = event.originalEvent.target;
657
630
  let targetNode = target.nodeName;
658
631
  let parentNode = target.parentElement && target.parentElement.nodeName;
659
- if (targetNode == 'INPUT' || targetNode == 'BUTTON' || targetNode == 'A' ||
660
- parentNode == 'INPUT' || parentNode == 'BUTTON' || parentNode == 'A' ||
661
- (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')) {
662
633
  return;
663
634
  }
664
635
  if (this.selectionMode) {
@@ -969,7 +940,7 @@ class Table {
969
940
  }
970
941
  else {
971
942
  const data = this.selectionPageOnly ? this.dataToRender(this.processedData) : this.processedData;
972
- 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))) : [];
973
944
  if (check) {
974
945
  selection = this.frozenValue ? [...selection, ...this.frozenValue, ...data] : [...selection, ...data];
975
946
  selection = this.rowSelectable ? selection.filter((data, index) => this.rowSelectable({ data, index })) : selection;
@@ -986,7 +957,7 @@ class Table {
986
957
  }
987
958
  }
988
959
  equals(data1, data2) {
989
- 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);
990
961
  }
991
962
  /* Legacy Filtering for custom elements */
992
963
  filter(value, field, matchMode) {
@@ -1080,7 +1051,7 @@ class Table {
1080
1051
  }
1081
1052
  let matches;
1082
1053
  if (this.filters['global']) {
1083
- matches = localFiltered ? (localFiltered && localMatch && globalMatch) : globalMatch;
1054
+ matches = localFiltered ? localFiltered && localMatch && globalMatch : globalMatch;
1084
1055
  }
1085
1056
  else {
1086
1057
  matches = localFiltered && localMatch;
@@ -1158,7 +1129,7 @@ class Table {
1158
1129
  this.onLazyLoad.emit(this.createLazyLoadMetadata());
1159
1130
  }
1160
1131
  else {
1161
- this.totalRecords = (this._value ? this._value.length : 0);
1132
+ this.totalRecords = this._value ? this._value.length : 0;
1162
1133
  }
1163
1134
  }
1164
1135
  reset() {
@@ -1185,7 +1156,7 @@ class Table {
1185
1156
  let column = columns[i];
1186
1157
  if (column.exportable !== false && column.field) {
1187
1158
  csv += '"' + this.getExportHeader(column) + '"';
1188
- if (i < (columns.length - 1)) {
1159
+ if (i < columns.length - 1) {
1189
1160
  csv += this.csvSeparator;
1190
1161
  }
1191
1162
  }
@@ -1210,7 +1181,7 @@ class Table {
1210
1181
  else
1211
1182
  cellData = '';
1212
1183
  csv += '"' + cellData + '"';
1213
- if (i < (columns.length - 1)) {
1184
+ if (i < columns.length - 1) {
1214
1185
  csv += this.csvSeparator;
1215
1186
  }
1216
1187
  }
@@ -1219,7 +1190,7 @@ class Table {
1219
1190
  let blob = new Blob([csv], {
1220
1191
  type: 'text/csv;charset=utf-8;'
1221
1192
  });
1222
- let link = document.createElement("a");
1193
+ let link = document.createElement('a');
1223
1194
  link.style.display = 'none';
1224
1195
  document.body.appendChild(link);
1225
1196
  if (link.download !== undefined) {
@@ -1267,7 +1238,7 @@ class Table {
1267
1238
  this.bindDocumentEditListener();
1268
1239
  }
1269
1240
  isEditingCellValid() {
1270
- return (this.editingCell && DomHandler.find(this.editingCell, '.ng-invalid.ng-dirty').length === 0);
1241
+ return this.editingCell && DomHandler.find(this.editingCell, '.ng-invalid.ng-dirty').length === 0;
1271
1242
  }
1272
1243
  bindDocumentEditListener() {
1273
1244
  if (!this.documentEditListener) {
@@ -1355,7 +1326,7 @@ class Table {
1355
1326
  let containerLeft = DomHandler.getOffset(this.containerViewChild.nativeElement).left;
1356
1327
  this.resizeColumnElement = event.target.parentElement;
1357
1328
  this.columnResizing = true;
1358
- this.lastResizerHelperX = (event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft);
1329
+ this.lastResizerHelperX = event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft;
1359
1330
  this.onColumnResize(event);
1360
1331
  event.preventDefault();
1361
1332
  }
@@ -1364,7 +1335,7 @@ class Table {
1364
1335
  DomHandler.addClass(this.containerViewChild.nativeElement, 'p-unselectable-text');
1365
1336
  this.resizeHelperViewChild.nativeElement.style.height = this.containerViewChild.nativeElement.offsetHeight + 'px';
1366
1337
  this.resizeHelperViewChild.nativeElement.style.top = 0 + 'px';
1367
- this.resizeHelperViewChild.nativeElement.style.left = (event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft) + 'px';
1338
+ this.resizeHelperViewChild.nativeElement.style.left = event.pageX - containerLeft + this.containerViewChild.nativeElement.scrollLeft + 'px';
1368
1339
  this.resizeHelperViewChild.nativeElement.style.display = 'block';
1369
1340
  }
1370
1341
  onColumnResizeEnd() {
@@ -1401,17 +1372,17 @@ class Table {
1401
1372
  let widths = [];
1402
1373
  const tableHead = DomHandler.findSingle(this.containerViewChild.nativeElement, '.p-datatable-thead');
1403
1374
  let headers = DomHandler.find(tableHead, 'tr > th');
1404
- headers.forEach(header => widths.push(DomHandler.getOuterWidth(header)));
1375
+ headers.forEach((header) => widths.push(DomHandler.getOuterWidth(header)));
1405
1376
  this.destroyStyleElement();
1406
1377
  this.createStyleElement();
1407
1378
  let innerHTML = '';
1408
1379
  widths.forEach((width, index) => {
1409
- let colWidth = index === colIndex ? newColumnWidth : (nextColumnWidth && index === colIndex + 1) ? nextColumnWidth : width;
1410
- let style = this.scrollable ? `flex: 1 1 ${colWidth}px !important` : `width: ${colWidth}px !important`;
1380
+ let colWidth = index === colIndex ? newColumnWidth : nextColumnWidth && index === colIndex + 1 ? nextColumnWidth : width;
1381
+ let style = `width: ${colWidth}px !important; max-width: ${colWidth}px !important`;
1411
1382
  innerHTML += `
1412
- #${this.id} .p-datatable-thead > tr > th:nth-child(${index + 1}),
1413
- #${this.id} .p-datatable-tbody > tr > td:nth-child(${index + 1}),
1414
- #${this.id} .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {
1383
+ #${this.id}-table > .p-datatable-thead > tr > th:nth-child(${index + 1}),
1384
+ #${this.id}-table > .p-datatable-tbody > tr > td:nth-child(${index + 1}),
1385
+ #${this.id}-table > .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {
1415
1386
  ${style}
1416
1387
  }
1417
1388
  `;
@@ -1438,13 +1409,13 @@ class Table {
1438
1409
  this.reorderIndicatorUpViewChild.nativeElement.style.top = dropHeaderOffset.top - containerOffset.top - (this.reorderIconHeight - 1) + 'px';
1439
1410
  this.reorderIndicatorDownViewChild.nativeElement.style.top = dropHeaderOffset.top - containerOffset.top + dropHeader.offsetHeight + 'px';
1440
1411
  if (event.pageX > columnCenter) {
1441
- this.reorderIndicatorUpViewChild.nativeElement.style.left = (targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2)) + 'px';
1442
- this.reorderIndicatorDownViewChild.nativeElement.style.left = (targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2)) + 'px';
1412
+ this.reorderIndicatorUpViewChild.nativeElement.style.left = targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2) + 'px';
1413
+ this.reorderIndicatorDownViewChild.nativeElement.style.left = targetLeft + dropHeader.offsetWidth - Math.ceil(this.reorderIconWidth / 2) + 'px';
1443
1414
  this.dropPosition = 1;
1444
1415
  }
1445
1416
  else {
1446
- this.reorderIndicatorUpViewChild.nativeElement.style.left = (targetLeft - Math.ceil(this.reorderIconWidth / 2)) + 'px';
1447
- this.reorderIndicatorDownViewChild.nativeElement.style.left = (targetLeft - Math.ceil(this.reorderIconWidth / 2)) + 'px';
1417
+ this.reorderIndicatorUpViewChild.nativeElement.style.left = targetLeft - Math.ceil(this.reorderIconWidth / 2) + 'px';
1418
+ this.reorderIndicatorDownViewChild.nativeElement.style.left = targetLeft - Math.ceil(this.reorderIconWidth / 2) + 'px';
1448
1419
  this.dropPosition = -1;
1449
1420
  }
1450
1421
  if ((dropIndex - dragIndex === 1 && this.dropPosition === -1) || (dropIndex - dragIndex === -1 && this.dropPosition === 1)) {
@@ -1473,14 +1444,14 @@ class Table {
1473
1444
  if (this.draggedColumn) {
1474
1445
  let dragIndex = DomHandler.indexWithinGroup(this.draggedColumn, 'preorderablecolumn');
1475
1446
  let dropIndex = DomHandler.indexWithinGroup(dropColumn, 'preorderablecolumn');
1476
- let allowDrop = (dragIndex != dropIndex);
1447
+ let allowDrop = dragIndex != dropIndex;
1477
1448
  if (allowDrop && ((dropIndex - dragIndex == 1 && this.dropPosition === -1) || (dragIndex - dropIndex == 1 && this.dropPosition === 1))) {
1478
1449
  allowDrop = false;
1479
1450
  }
1480
- if (allowDrop && ((dropIndex < dragIndex && this.dropPosition === 1))) {
1451
+ if (allowDrop && dropIndex < dragIndex && this.dropPosition === 1) {
1481
1452
  dropIndex = dropIndex + 1;
1482
1453
  }
1483
- if (allowDrop && ((dropIndex > dragIndex && this.dropPosition === -1))) {
1454
+ if (allowDrop && dropIndex > dragIndex && this.dropPosition === -1) {
1484
1455
  dropIndex = dropIndex - 1;
1485
1456
  }
1486
1457
  if (allowDrop) {
@@ -1549,9 +1520,10 @@ class Table {
1549
1520
  }
1550
1521
  onRowDrop(event, rowElement) {
1551
1522
  if (this.droppedRowIndex != null) {
1552
- let dropIndex = (this.draggedRowIndex > this.droppedRowIndex) ? this.droppedRowIndex : (this.droppedRowIndex === 0) ? 0 : this.droppedRowIndex - 1;
1523
+ let dropIndex = this.draggedRowIndex > this.droppedRowIndex ? this.droppedRowIndex : this.droppedRowIndex === 0 ? 0 : this.droppedRowIndex - 1;
1553
1524
  ObjectUtils.reorderArray(this.value, this.draggedRowIndex, dropIndex);
1554
1525
  if (this.virtualScroll) {
1526
+ // TODO: Check
1555
1527
  this._value = [...this._value];
1556
1528
  }
1557
1529
  this.onRowReorder.emit({
@@ -1626,7 +1598,7 @@ class Table {
1626
1598
  const stateString = storage.getItem(this.stateKey);
1627
1599
  const dateFormat = /\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/;
1628
1600
  const reviver = function (key, value) {
1629
- if (typeof value === "string" && dateFormat.test(value)) {
1601
+ if (typeof value === 'string' && dateFormat.test(value)) {
1630
1602
  return new Date(value);
1631
1603
  }
1632
1604
  return value;
@@ -1673,18 +1645,13 @@ class Table {
1673
1645
  saveColumnWidths(state) {
1674
1646
  let widths = [];
1675
1647
  let headers = DomHandler.find(this.containerViewChild.nativeElement, '.p-datatable-thead > tr > th');
1676
- headers.forEach(header => widths.push(DomHandler.getOuterWidth(header)));
1648
+ headers.forEach((header) => widths.push(DomHandler.getOuterWidth(header)));
1677
1649
  state.columnWidths = widths.join(',');
1678
1650
  if (this.columnResizeMode === 'expand') {
1679
1651
  state.tableWidth = DomHandler.getOuterWidth(this.tableViewChild.nativeElement) + 'px';
1680
1652
  }
1681
1653
  }
1682
1654
  setResizeTableWidth(width) {
1683
- if (this.virtualScroll) {
1684
- const bodyEl = DomHandler.findSingle(this.containerViewChild.nativeElement, '.p-scroller > table > tbody');
1685
- bodyEl.style.width = width;
1686
- bodyEl.style.minWidth = width;
1687
- }
1688
1655
  this.tableViewChild.nativeElement.style.width = width;
1689
1656
  this.tableViewChild.nativeElement.style.minWidth = width;
1690
1657
  }
@@ -1698,11 +1665,11 @@ class Table {
1698
1665
  this.createStyleElement();
1699
1666
  let innerHTML = '';
1700
1667
  widths.forEach((width, index) => {
1701
- let style = this.scrollable ? `flex: 1 1 ${width}px !important` : `width: ${width}px !important`;
1668
+ let style = `width: ${width}px !important; max-width: ${width}px !important`;
1702
1669
  innerHTML += `
1703
- #${this.id} .p-datatable-thead > tr > th:nth-child(${index + 1}),
1704
- #${this.id} .p-datatable-tbody > tr > td:nth-child(${index + 1}),
1705
- #${this.id} .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {
1670
+ #${this.id}-table > .p-datatable-thead > tr > th:nth-child(${index + 1}),
1671
+ #${this.id}-table > .p-datatable-tbody > tr > td:nth-child(${index + 1}),
1672
+ #${this.id}-table > .p-datatable-tfoot > tr > td:nth-child(${index + 1}) {
1706
1673
  ${style}
1707
1674
  }
1708
1675
  `;
@@ -1714,7 +1681,7 @@ class Table {
1714
1681
  saveColumnOrder(state) {
1715
1682
  if (this.columns) {
1716
1683
  let columnOrder = [];
1717
- this.columns.map(column => {
1684
+ this.columns.map((column) => {
1718
1685
  columnOrder.push(column.field || column.key);
1719
1686
  });
1720
1687
  state.columnOrder = columnOrder;
@@ -1728,7 +1695,7 @@ class Table {
1728
1695
  let columnOrder = state.columnOrder;
1729
1696
  if (columnOrder) {
1730
1697
  let reorderedColumns = [];
1731
- columnOrder.map(key => {
1698
+ columnOrder.map((key) => {
1732
1699
  let col = this.findColumnByKey(key);
1733
1700
  if (col) {
1734
1701
  reorderedColumns.push(col);
@@ -1767,29 +1734,29 @@ class Table {
1767
1734
  document.head.appendChild(this.responsiveStyleElement);
1768
1735
  let innerHTML = `
1769
1736
  @media screen and (max-width: ${this.breakpoint}) {
1770
- #${this.id} .p-datatable-thead > tr > th,
1771
- #${this.id} .p-datatable-tfoot > tr > td {
1737
+ #${this.id}-table > .p-datatable-thead > tr > th,
1738
+ #${this.id}-table > .p-datatable-tfoot > tr > td {
1772
1739
  display: none !important;
1773
1740
  }
1774
1741
 
1775
- #${this.id} .p-datatable-tbody > tr > td {
1742
+ #${this.id}-table > .p-datatable-tbody > tr > td {
1776
1743
  display: flex;
1777
1744
  width: 100% !important;
1778
1745
  align-items: center;
1779
1746
  justify-content: space-between;
1780
1747
  }
1781
1748
 
1782
- #${this.id} .p-datatable-tbody > tr > td:not(:last-child) {
1749
+ #${this.id}-table > .p-datatable-tbody > tr > td:not(:last-child) {
1783
1750
  border: 0 none;
1784
1751
  }
1785
1752
 
1786
- #${this.id}.p-datatable-gridlines .p-datatable-tbody > tr > td:last-child {
1753
+ #${this.id}.p-datatable-gridlines > .p-datatable-wrapper > .p-datatable-table > .p-datatable-tbody > tr > td:last-child {
1787
1754
  border-top: 0;
1788
1755
  border-right: 0;
1789
1756
  border-left: 0;
1790
1757
  }
1791
1758
 
1792
- #${this.id} .p-datatable-tbody > tr > td > .p-column-title {
1759
+ #${this.id}-table > .p-datatable-tbody > tr > td > .p-column-title {
1793
1760
  display: block;
1794
1761
  }
1795
1762
  }
@@ -1819,63 +1786,130 @@ class Table {
1819
1786
  }
1820
1787
  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 });
1821
1788
  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: `
1822
- <div #container [ngStyle]="style" [class]="styleClass"
1823
- [ngClass]="{'p-datatable p-component': true,
1824
- 'p-datatable-hoverable-rows': (rowHover||selectionMode),
1825
- 'p-datatable-auto-layout': autoLayout,
1826
- 'p-datatable-resizable': resizableColumns,
1827
- 'p-datatable-resizable-fit': (resizableColumns && columnResizeMode === 'fit'),
1828
- 'p-datatable-scrollable': scrollable,
1829
- 'p-datatable-scrollable-vertical': scrollable && scrollDirection === 'vertical',
1830
- 'p-datatable-scrollable-horizontal': scrollable && scrollDirection === 'horizontal',
1831
- 'p-datatable-scrollable-both': scrollable && scrollDirection === 'both',
1832
- 'p-datatable-flex-scrollable': (scrollable && scrollHeight === 'flex'),
1833
- 'p-datatable-responsive-stack': responsiveLayout === 'stack',
1834
- 'p-datatable-responsive-scroll': responsiveLayout === 'scroll',
1835
- 'p-datatable-responsive': responsive,
1836
- 'p-datatable-grouped-header': headerGroupedTemplate != null,
1837
- 'p-datatable-grouped-footer': footerGroupedTemplate != null}" [attr.id]="id">
1789
+ <div
1790
+ #container
1791
+ [ngStyle]="style"
1792
+ [class]="styleClass"
1793
+ [ngClass]="{ 'p-datatable p-component': true, 'p-datatable-hoverable-rows': rowHover || selectionMode, 'p-datatable-scrollable': scrollable, 'p-datatable-flex-scrollable': scrollable && scrollHeight === 'flex' }"
1794
+ [attr.id]="id"
1795
+ >
1838
1796
  <div class="p-datatable-loading-overlay p-component-overlay" *ngIf="loading && showLoader">
1839
1797
  <i [class]="'p-datatable-loading-icon pi-spin ' + loadingIcon"></i>
1840
1798
  </div>
1841
1799
  <div *ngIf="captionTemplate" class="p-datatable-header">
1842
1800
  <ng-container *ngTemplateOutlet="captionTemplate"></ng-container>
1843
1801
  </div>
1844
- <p-paginator [rows]="rows" [first]="first" [totalRecords]="totalRecords" [pageLinkSize]="pageLinks" styleClass="p-paginator-top" [alwaysShow]="alwaysShowPaginator"
1845
- (onPageChange)="onPageChange($event)" [rowsPerPageOptions]="rowsPerPageOptions" *ngIf="paginator && (paginatorPosition === 'top' || paginatorPosition =='both')"
1846
- [templateLeft]="paginatorLeftTemplate" [templateRight]="paginatorRightTemplate" [dropdownAppendTo]="paginatorDropdownAppendTo" [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1847
- [currentPageReportTemplate]="currentPageReportTemplate" [showFirstLastIcon]="showFirstLastIcon" [dropdownItemTemplate]="paginatorDropdownItemTemplate" [showCurrentPageReport]="showCurrentPageReport" [showJumpToPageDropdown]="showJumpToPageDropdown" [showJumpToPageInput]="showJumpToPageInput" [showPageLinks]="showPageLinks"></p-paginator>
1802
+ <p-paginator
1803
+ [rows]="rows"
1804
+ [first]="first"
1805
+ [totalRecords]="totalRecords"
1806
+ [pageLinkSize]="pageLinks"
1807
+ styleClass="p-paginator-top"
1808
+ [alwaysShow]="alwaysShowPaginator"
1809
+ (onPageChange)="onPageChange($event)"
1810
+ [rowsPerPageOptions]="rowsPerPageOptions"
1811
+ *ngIf="paginator && (paginatorPosition === 'top' || paginatorPosition == 'both')"
1812
+ [templateLeft]="paginatorLeftTemplate"
1813
+ [templateRight]="paginatorRightTemplate"
1814
+ [dropdownAppendTo]="paginatorDropdownAppendTo"
1815
+ [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1816
+ [currentPageReportTemplate]="currentPageReportTemplate"
1817
+ [showFirstLastIcon]="showFirstLastIcon"
1818
+ [dropdownItemTemplate]="paginatorDropdownItemTemplate"
1819
+ [showCurrentPageReport]="showCurrentPageReport"
1820
+ [showJumpToPageDropdown]="showJumpToPageDropdown"
1821
+ [showJumpToPageInput]="showJumpToPageInput"
1822
+ [showPageLinks]="showPageLinks"
1823
+ ></p-paginator>
1848
1824
 
1849
- <div #wrapper class="p-datatable-wrapper" [ngStyle]="{maxHeight: virtualScroll ? '' : scrollHeight}">
1850
- <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"
1851
- [lazy]="lazy" (onLazyLoad)="onLazyItemLoad($event)" [loaderDisabled]="true" [showSpacer]="false" [showLoader]="loadingBodyTemplate" [options]="virtualScrollOptions">
1825
+ <div #wrapper class="p-datatable-wrapper" [ngStyle]="{ maxHeight: virtualScroll ? '' : scrollHeight }">
1826
+ <p-scroller
1827
+ #scroller
1828
+ *ngIf="virtualScroll"
1829
+ [items]="processedData"
1830
+ [columns]="columns"
1831
+ [style]="{ height: scrollHeight !== 'flex' ? scrollHeight : undefined }"
1832
+ [scrollHeight]="scrollHeight !== 'flex' ? undefined : '100%'"
1833
+ [itemSize]="virtualScrollItemSize || _virtualRowHeight"
1834
+ [step]="rows"
1835
+ [delay]="lazy ? virtualScrollDelay : 0"
1836
+ [inline]="true"
1837
+ [lazy]="lazy"
1838
+ (onLazyLoad)="onLazyItemLoad($event)"
1839
+ [loaderDisabled]="true"
1840
+ [showSpacer]="false"
1841
+ [showLoader]="loadingBodyTemplate"
1842
+ [options]="virtualScrollOptions"
1843
+ >
1852
1844
  <ng-template pTemplate="content" let-items let-scrollerOptions="options">
1853
- <ng-container *ngTemplateOutlet="buildInTable; context: {$implicit: items, options: scrollerOptions}"></ng-container>
1845
+ <ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: items, options: scrollerOptions }"></ng-container>
1854
1846
  </ng-template>
1855
1847
  </p-scroller>
1856
1848
  <ng-container *ngIf="!virtualScroll">
1857
- <ng-container *ngTemplateOutlet="buildInTable; context: {$implicit: processedData, options: { columns }}"></ng-container>
1849
+ <ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: processedData, options: { columns } }"></ng-container>
1858
1850
  </ng-container>
1859
1851
 
1860
1852
  <ng-template #buildInTable let-items let-scrollerOptions="options">
1861
- <table #table role="table" class="p-datatable-table" [ngClass]="tableStyleClass" [ngStyle]="tableStyle" [style]="scrollerOptions.spacerStyle" [attr.id]="id+'-table'">
1862
- <ng-container *ngTemplateOutlet="colGroupTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
1853
+ <table
1854
+ #table
1855
+ role="table"
1856
+ [ngClass]="{ 'p-datatable-table': true, 'p-datatable-scrollable-table': scrollable, 'p-datatable-resizable-table': resizableColumns, 'p-datatable-resizable-table-fit': resizableColumns && columnResizeMode === 'fit' }"
1857
+ [class]="tableStyleClass"
1858
+ [style]="tableStyle"
1859
+ [attr.id]="id + '-table'"
1860
+ >
1861
+ <ng-container *ngTemplateOutlet="colGroupTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1863
1862
  <thead #thead class="p-datatable-thead">
1864
- <ng-container *ngTemplateOutlet="headerGroupedTemplate||headerTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
1863
+ <ng-container *ngTemplateOutlet="headerGroupedTemplate || headerTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1865
1864
  </thead>
1866
- <tbody class="p-datatable-tbody p-datatable-frozen-tbody" *ngIf="frozenValue||frozenBodyTemplate" [value]="frozenValue" [frozenRows]="true" [pTableBody]="scrollerOptions.columns" [pTableBodyTemplate]="frozenBodyTemplate" [frozen]="true"></tbody>
1867
- <tbody class="p-datatable-tbody" [ngClass]="scrollerOptions.contentStyleClass" [style]="scrollerOptions.contentStyle" [value]="dataToRender(scrollerOptions.rows)" [pTableBody]="scrollerOptions.columns" [pTableBodyTemplate]="bodyTemplate" [scrollerOptions]="scrollerOptions"></tbody>
1868
- <tfoot *ngIf="footerGroupedTemplate||footerTemplate" #tfoot class="p-datatable-tfoot">
1869
- <ng-container *ngTemplateOutlet="footerGroupedTemplate||footerTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
1865
+ <tbody
1866
+ class="p-datatable-tbody p-datatable-frozen-tbody"
1867
+ *ngIf="frozenValue || frozenBodyTemplate"
1868
+ [value]="frozenValue"
1869
+ [frozenRows]="true"
1870
+ [pTableBody]="scrollerOptions.columns"
1871
+ [pTableBodyTemplate]="frozenBodyTemplate"
1872
+ [frozen]="true"
1873
+ ></tbody>
1874
+ <tbody
1875
+ class="p-datatable-tbody"
1876
+ [ngClass]="scrollerOptions.contentStyleClass"
1877
+ [style]="scrollerOptions.contentStyle"
1878
+ [value]="dataToRender(scrollerOptions.rows)"
1879
+ [pTableBody]="scrollerOptions.columns"
1880
+ [pTableBodyTemplate]="bodyTemplate"
1881
+ [scrollerOptions]="scrollerOptions"
1882
+ ></tbody>
1883
+ <tbody *ngIf="scrollerOptions.spacerStyle" [style]="'height: calc(' + scrollerOptions.spacerStyle.height + ' - ' + scrollerOptions.rows.length * scrollerOptions.itemSize + 'px);'" class="p-datatable-scroller-spacer"></tbody>
1884
+ <tfoot *ngIf="footerGroupedTemplate || footerTemplate" #tfoot class="p-datatable-tfoot">
1885
+ <ng-container *ngTemplateOutlet="footerGroupedTemplate || footerTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1870
1886
  </tfoot>
1871
1887
  </table>
1872
1888
  </ng-template>
1873
1889
  </div>
1874
1890
 
1875
- <p-paginator [rows]="rows" [first]="first" [totalRecords]="totalRecords" [pageLinkSize]="pageLinks" styleClass="p-paginator-bottom" [alwaysShow]="alwaysShowPaginator"
1876
- (onPageChange)="onPageChange($event)" [rowsPerPageOptions]="rowsPerPageOptions" *ngIf="paginator && (paginatorPosition === 'bottom' || paginatorPosition =='both')"
1877
- [templateLeft]="paginatorLeftTemplate" [templateRight]="paginatorRightTemplate" [dropdownAppendTo]="paginatorDropdownAppendTo" [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1878
- [currentPageReportTemplate]="currentPageReportTemplate" [showFirstLastIcon]="showFirstLastIcon" [dropdownItemTemplate]="paginatorDropdownItemTemplate" [showCurrentPageReport]="showCurrentPageReport" [showJumpToPageDropdown]="showJumpToPageDropdown" [showJumpToPageInput]="showJumpToPageInput" [showPageLinks]="showPageLinks"></p-paginator>
1891
+ <p-paginator
1892
+ [rows]="rows"
1893
+ [first]="first"
1894
+ [totalRecords]="totalRecords"
1895
+ [pageLinkSize]="pageLinks"
1896
+ styleClass="p-paginator-bottom"
1897
+ [alwaysShow]="alwaysShowPaginator"
1898
+ (onPageChange)="onPageChange($event)"
1899
+ [rowsPerPageOptions]="rowsPerPageOptions"
1900
+ *ngIf="paginator && (paginatorPosition === 'bottom' || paginatorPosition == 'both')"
1901
+ [templateLeft]="paginatorLeftTemplate"
1902
+ [templateRight]="paginatorRightTemplate"
1903
+ [dropdownAppendTo]="paginatorDropdownAppendTo"
1904
+ [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1905
+ [currentPageReportTemplate]="currentPageReportTemplate"
1906
+ [showFirstLastIcon]="showFirstLastIcon"
1907
+ [dropdownItemTemplate]="paginatorDropdownItemTemplate"
1908
+ [showCurrentPageReport]="showCurrentPageReport"
1909
+ [showJumpToPageDropdown]="showJumpToPageDropdown"
1910
+ [showJumpToPageInput]="showJumpToPageInput"
1911
+ [showPageLinks]="showPageLinks"
1912
+ ></p-paginator>
1879
1913
 
1880
1914
  <div *ngIf="summaryTemplate" class="p-datatable-footer">
1881
1915
  <ng-container *ngTemplateOutlet="summaryTemplate"></ng-container>
@@ -1885,67 +1919,134 @@ Table.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7
1885
1919
  <span #reorderIndicatorUp class="pi pi-arrow-down p-datatable-reorder-indicator-up" style="display:none" *ngIf="reorderableColumns"></span>
1886
1920
  <span #reorderIndicatorDown class="pi pi-arrow-up p-datatable-reorder-indicator-down" style="display:none" *ngIf="reorderableColumns"></span>
1887
1921
  </div>
1888
- `, 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 });
1922
+ `, 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 });
1889
1923
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: Table, decorators: [{
1890
1924
  type: Component,
1891
1925
  args: [{ selector: 'p-table', template: `
1892
- <div #container [ngStyle]="style" [class]="styleClass"
1893
- [ngClass]="{'p-datatable p-component': true,
1894
- 'p-datatable-hoverable-rows': (rowHover||selectionMode),
1895
- 'p-datatable-auto-layout': autoLayout,
1896
- 'p-datatable-resizable': resizableColumns,
1897
- 'p-datatable-resizable-fit': (resizableColumns && columnResizeMode === 'fit'),
1898
- 'p-datatable-scrollable': scrollable,
1899
- 'p-datatable-scrollable-vertical': scrollable && scrollDirection === 'vertical',
1900
- 'p-datatable-scrollable-horizontal': scrollable && scrollDirection === 'horizontal',
1901
- 'p-datatable-scrollable-both': scrollable && scrollDirection === 'both',
1902
- 'p-datatable-flex-scrollable': (scrollable && scrollHeight === 'flex'),
1903
- 'p-datatable-responsive-stack': responsiveLayout === 'stack',
1904
- 'p-datatable-responsive-scroll': responsiveLayout === 'scroll',
1905
- 'p-datatable-responsive': responsive,
1906
- 'p-datatable-grouped-header': headerGroupedTemplate != null,
1907
- 'p-datatable-grouped-footer': footerGroupedTemplate != null}" [attr.id]="id">
1926
+ <div
1927
+ #container
1928
+ [ngStyle]="style"
1929
+ [class]="styleClass"
1930
+ [ngClass]="{ 'p-datatable p-component': true, 'p-datatable-hoverable-rows': rowHover || selectionMode, 'p-datatable-scrollable': scrollable, 'p-datatable-flex-scrollable': scrollable && scrollHeight === 'flex' }"
1931
+ [attr.id]="id"
1932
+ >
1908
1933
  <div class="p-datatable-loading-overlay p-component-overlay" *ngIf="loading && showLoader">
1909
1934
  <i [class]="'p-datatable-loading-icon pi-spin ' + loadingIcon"></i>
1910
1935
  </div>
1911
1936
  <div *ngIf="captionTemplate" class="p-datatable-header">
1912
1937
  <ng-container *ngTemplateOutlet="captionTemplate"></ng-container>
1913
1938
  </div>
1914
- <p-paginator [rows]="rows" [first]="first" [totalRecords]="totalRecords" [pageLinkSize]="pageLinks" styleClass="p-paginator-top" [alwaysShow]="alwaysShowPaginator"
1915
- (onPageChange)="onPageChange($event)" [rowsPerPageOptions]="rowsPerPageOptions" *ngIf="paginator && (paginatorPosition === 'top' || paginatorPosition =='both')"
1916
- [templateLeft]="paginatorLeftTemplate" [templateRight]="paginatorRightTemplate" [dropdownAppendTo]="paginatorDropdownAppendTo" [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1917
- [currentPageReportTemplate]="currentPageReportTemplate" [showFirstLastIcon]="showFirstLastIcon" [dropdownItemTemplate]="paginatorDropdownItemTemplate" [showCurrentPageReport]="showCurrentPageReport" [showJumpToPageDropdown]="showJumpToPageDropdown" [showJumpToPageInput]="showJumpToPageInput" [showPageLinks]="showPageLinks"></p-paginator>
1939
+ <p-paginator
1940
+ [rows]="rows"
1941
+ [first]="first"
1942
+ [totalRecords]="totalRecords"
1943
+ [pageLinkSize]="pageLinks"
1944
+ styleClass="p-paginator-top"
1945
+ [alwaysShow]="alwaysShowPaginator"
1946
+ (onPageChange)="onPageChange($event)"
1947
+ [rowsPerPageOptions]="rowsPerPageOptions"
1948
+ *ngIf="paginator && (paginatorPosition === 'top' || paginatorPosition == 'both')"
1949
+ [templateLeft]="paginatorLeftTemplate"
1950
+ [templateRight]="paginatorRightTemplate"
1951
+ [dropdownAppendTo]="paginatorDropdownAppendTo"
1952
+ [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1953
+ [currentPageReportTemplate]="currentPageReportTemplate"
1954
+ [showFirstLastIcon]="showFirstLastIcon"
1955
+ [dropdownItemTemplate]="paginatorDropdownItemTemplate"
1956
+ [showCurrentPageReport]="showCurrentPageReport"
1957
+ [showJumpToPageDropdown]="showJumpToPageDropdown"
1958
+ [showJumpToPageInput]="showJumpToPageInput"
1959
+ [showPageLinks]="showPageLinks"
1960
+ ></p-paginator>
1918
1961
 
1919
- <div #wrapper class="p-datatable-wrapper" [ngStyle]="{maxHeight: virtualScroll ? '' : scrollHeight}">
1920
- <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"
1921
- [lazy]="lazy" (onLazyLoad)="onLazyItemLoad($event)" [loaderDisabled]="true" [showSpacer]="false" [showLoader]="loadingBodyTemplate" [options]="virtualScrollOptions">
1962
+ <div #wrapper class="p-datatable-wrapper" [ngStyle]="{ maxHeight: virtualScroll ? '' : scrollHeight }">
1963
+ <p-scroller
1964
+ #scroller
1965
+ *ngIf="virtualScroll"
1966
+ [items]="processedData"
1967
+ [columns]="columns"
1968
+ [style]="{ height: scrollHeight !== 'flex' ? scrollHeight : undefined }"
1969
+ [scrollHeight]="scrollHeight !== 'flex' ? undefined : '100%'"
1970
+ [itemSize]="virtualScrollItemSize || _virtualRowHeight"
1971
+ [step]="rows"
1972
+ [delay]="lazy ? virtualScrollDelay : 0"
1973
+ [inline]="true"
1974
+ [lazy]="lazy"
1975
+ (onLazyLoad)="onLazyItemLoad($event)"
1976
+ [loaderDisabled]="true"
1977
+ [showSpacer]="false"
1978
+ [showLoader]="loadingBodyTemplate"
1979
+ [options]="virtualScrollOptions"
1980
+ >
1922
1981
  <ng-template pTemplate="content" let-items let-scrollerOptions="options">
1923
- <ng-container *ngTemplateOutlet="buildInTable; context: {$implicit: items, options: scrollerOptions}"></ng-container>
1982
+ <ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: items, options: scrollerOptions }"></ng-container>
1924
1983
  </ng-template>
1925
1984
  </p-scroller>
1926
1985
  <ng-container *ngIf="!virtualScroll">
1927
- <ng-container *ngTemplateOutlet="buildInTable; context: {$implicit: processedData, options: { columns }}"></ng-container>
1986
+ <ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: processedData, options: { columns } }"></ng-container>
1928
1987
  </ng-container>
1929
1988
 
1930
1989
  <ng-template #buildInTable let-items let-scrollerOptions="options">
1931
- <table #table role="table" class="p-datatable-table" [ngClass]="tableStyleClass" [ngStyle]="tableStyle" [style]="scrollerOptions.spacerStyle" [attr.id]="id+'-table'">
1932
- <ng-container *ngTemplateOutlet="colGroupTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
1990
+ <table
1991
+ #table
1992
+ role="table"
1993
+ [ngClass]="{ 'p-datatable-table': true, 'p-datatable-scrollable-table': scrollable, 'p-datatable-resizable-table': resizableColumns, 'p-datatable-resizable-table-fit': resizableColumns && columnResizeMode === 'fit' }"
1994
+ [class]="tableStyleClass"
1995
+ [style]="tableStyle"
1996
+ [attr.id]="id + '-table'"
1997
+ >
1998
+ <ng-container *ngTemplateOutlet="colGroupTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1933
1999
  <thead #thead class="p-datatable-thead">
1934
- <ng-container *ngTemplateOutlet="headerGroupedTemplate||headerTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
2000
+ <ng-container *ngTemplateOutlet="headerGroupedTemplate || headerTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1935
2001
  </thead>
1936
- <tbody class="p-datatable-tbody p-datatable-frozen-tbody" *ngIf="frozenValue||frozenBodyTemplate" [value]="frozenValue" [frozenRows]="true" [pTableBody]="scrollerOptions.columns" [pTableBodyTemplate]="frozenBodyTemplate" [frozen]="true"></tbody>
1937
- <tbody class="p-datatable-tbody" [ngClass]="scrollerOptions.contentStyleClass" [style]="scrollerOptions.contentStyle" [value]="dataToRender(scrollerOptions.rows)" [pTableBody]="scrollerOptions.columns" [pTableBodyTemplate]="bodyTemplate" [scrollerOptions]="scrollerOptions"></tbody>
1938
- <tfoot *ngIf="footerGroupedTemplate||footerTemplate" #tfoot class="p-datatable-tfoot">
1939
- <ng-container *ngTemplateOutlet="footerGroupedTemplate||footerTemplate; context: {$implicit: scrollerOptions.columns}"></ng-container>
2002
+ <tbody
2003
+ class="p-datatable-tbody p-datatable-frozen-tbody"
2004
+ *ngIf="frozenValue || frozenBodyTemplate"
2005
+ [value]="frozenValue"
2006
+ [frozenRows]="true"
2007
+ [pTableBody]="scrollerOptions.columns"
2008
+ [pTableBodyTemplate]="frozenBodyTemplate"
2009
+ [frozen]="true"
2010
+ ></tbody>
2011
+ <tbody
2012
+ class="p-datatable-tbody"
2013
+ [ngClass]="scrollerOptions.contentStyleClass"
2014
+ [style]="scrollerOptions.contentStyle"
2015
+ [value]="dataToRender(scrollerOptions.rows)"
2016
+ [pTableBody]="scrollerOptions.columns"
2017
+ [pTableBodyTemplate]="bodyTemplate"
2018
+ [scrollerOptions]="scrollerOptions"
2019
+ ></tbody>
2020
+ <tbody *ngIf="scrollerOptions.spacerStyle" [style]="'height: calc(' + scrollerOptions.spacerStyle.height + ' - ' + scrollerOptions.rows.length * scrollerOptions.itemSize + 'px);'" class="p-datatable-scroller-spacer"></tbody>
2021
+ <tfoot *ngIf="footerGroupedTemplate || footerTemplate" #tfoot class="p-datatable-tfoot">
2022
+ <ng-container *ngTemplateOutlet="footerGroupedTemplate || footerTemplate; context: { $implicit: scrollerOptions.columns }"></ng-container>
1940
2023
  </tfoot>
1941
2024
  </table>
1942
2025
  </ng-template>
1943
2026
  </div>
1944
2027
 
1945
- <p-paginator [rows]="rows" [first]="first" [totalRecords]="totalRecords" [pageLinkSize]="pageLinks" styleClass="p-paginator-bottom" [alwaysShow]="alwaysShowPaginator"
1946
- (onPageChange)="onPageChange($event)" [rowsPerPageOptions]="rowsPerPageOptions" *ngIf="paginator && (paginatorPosition === 'bottom' || paginatorPosition =='both')"
1947
- [templateLeft]="paginatorLeftTemplate" [templateRight]="paginatorRightTemplate" [dropdownAppendTo]="paginatorDropdownAppendTo" [dropdownScrollHeight]="paginatorDropdownScrollHeight"
1948
- [currentPageReportTemplate]="currentPageReportTemplate" [showFirstLastIcon]="showFirstLastIcon" [dropdownItemTemplate]="paginatorDropdownItemTemplate" [showCurrentPageReport]="showCurrentPageReport" [showJumpToPageDropdown]="showJumpToPageDropdown" [showJumpToPageInput]="showJumpToPageInput" [showPageLinks]="showPageLinks"></p-paginator>
2028
+ <p-paginator
2029
+ [rows]="rows"
2030
+ [first]="first"
2031
+ [totalRecords]="totalRecords"
2032
+ [pageLinkSize]="pageLinks"
2033
+ styleClass="p-paginator-bottom"
2034
+ [alwaysShow]="alwaysShowPaginator"
2035
+ (onPageChange)="onPageChange($event)"
2036
+ [rowsPerPageOptions]="rowsPerPageOptions"
2037
+ *ngIf="paginator && (paginatorPosition === 'bottom' || paginatorPosition == 'both')"
2038
+ [templateLeft]="paginatorLeftTemplate"
2039
+ [templateRight]="paginatorRightTemplate"
2040
+ [dropdownAppendTo]="paginatorDropdownAppendTo"
2041
+ [dropdownScrollHeight]="paginatorDropdownScrollHeight"
2042
+ [currentPageReportTemplate]="currentPageReportTemplate"
2043
+ [showFirstLastIcon]="showFirstLastIcon"
2044
+ [dropdownItemTemplate]="paginatorDropdownItemTemplate"
2045
+ [showCurrentPageReport]="showCurrentPageReport"
2046
+ [showJumpToPageDropdown]="showJumpToPageDropdown"
2047
+ [showJumpToPageInput]="showJumpToPageInput"
2048
+ [showPageLinks]="showPageLinks"
2049
+ ></p-paginator>
1949
2050
 
1950
2051
  <div *ngIf="summaryTemplate" class="p-datatable-footer">
1951
2052
  <ng-container *ngTemplateOutlet="summaryTemplate"></ng-container>
@@ -1956,8 +2057,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
1956
2057
  <span #reorderIndicatorDown class="pi pi-arrow-up p-datatable-reorder-indicator-down" style="display:none" *ngIf="reorderableColumns"></span>
1957
2058
  </div>
1958
2059
  `, providers: [TableService], changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, host: {
1959
- 'class': 'p-element'
1960
- }, 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"] }]
2060
+ class: 'p-element'
2061
+ }, 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"] }]
1961
2062
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i1.FilterService }, { type: i1.OverlayService }]; }, propDecorators: { frozenColumns: [{
1962
2063
  type: Input
1963
2064
  }], frozenValue: [{
@@ -2234,17 +2335,6 @@ class TableBody {
2234
2335
  if (this.dt.scrollable && this.dt.rowGroupMode === 'subheader') {
2235
2336
  this.updateFrozenRowGroupHeaderStickyPosition();
2236
2337
  }
2237
- if (this.dt.virtualScroll && this.getScrollerOption('vertical')) {
2238
- this.updateScrollerPosition();
2239
- }
2240
- }
2241
- ngOnChanges(simpleChanges) {
2242
- if (simpleChanges.scrollerOptions) {
2243
- const { previousValue, currentValue } = simpleChanges.scrollerOptions;
2244
- if (this.dt.virtualScroll && this.getScrollerOption('vertical') && this.getScrollerOption('itemSize', previousValue) !== this.getScrollerOption('itemSize', currentValue)) {
2245
- this.updateScrollerPosition();
2246
- }
2247
- }
2248
2338
  }
2249
2339
  shouldRenderRowGroupHeader(value, rowData, i) {
2250
2340
  let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.dt.groupRowsBy);
@@ -2309,10 +2399,6 @@ class TableBody {
2309
2399
  this.dt.rowGroupHeaderStyleObject.top = tableHeaderHeight + 'px';
2310
2400
  }
2311
2401
  }
2312
- updateScrollerPosition() {
2313
- const tableHeaderHeight = DomHandler.getOuterHeight(this.el.nativeElement.previousElementSibling);
2314
- this.el.nativeElement.style.top = (this.el.nativeElement.style.top || 0) + tableHeaderHeight + 'px';
2315
- }
2316
2402
  getScrollerOption(option, options) {
2317
2403
  if (this.dt.virtualScroll) {
2318
2404
  options = options || this.scrollerOptions;
@@ -2321,63 +2407,91 @@ class TableBody {
2321
2407
  return null;
2322
2408
  }
2323
2409
  getRowIndex(rowIndex) {
2324
- const index = this.dt.paginator ? (this.dt.first + rowIndex) : rowIndex;
2410
+ const index = this.dt.paginator ? this.dt.first + rowIndex : rowIndex;
2325
2411
  const getItemOptions = this.getScrollerOption('getItemOptions');
2326
2412
  return getItemOptions ? getItemOptions(index).index : index;
2327
2413
  }
2328
2414
  }
2329
2415
  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 });
2330
- 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: `
2331
- <ng-container *ngIf="!dt.expandedRowTemplate && !dt.virtualScroll">
2416
+ 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: `
2417
+ <ng-container *ngIf="!dt.expandedRowTemplate">
2332
2418
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2333
- <ng-container *ngIf="dt.groupHeaderTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, getRowIndex(rowIndex))" role="row">
2334
- <ng-container *ngTemplateOutlet="dt.groupHeaderTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2419
+ <ng-container *ngIf="dt.groupHeaderTemplate && !dt.virtualScroll && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, rowIndex)" role="row">
2420
+ <ng-container
2421
+ *ngTemplateOutlet="dt.groupHeaderTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2422
+ ></ng-container>
2335
2423
  </ng-container>
2336
2424
  <ng-container *ngIf="dt.rowGroupMode !== 'rowspan'">
2337
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2425
+ <ng-container
2426
+ *ngTemplateOutlet="rowData ? template : dt.loadingBodyTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2427
+ ></ng-container>
2338
2428
  </ng-container>
2339
2429
  <ng-container *ngIf="dt.rowGroupMode === 'rowspan'">
2340
- <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>
2430
+ <ng-container
2431
+ *ngTemplateOutlet="
2432
+ rowData ? template : dt.loadingBodyTemplate;
2433
+ context: {
2434
+ $implicit: rowData,
2435
+ rowIndex: getRowIndex(rowIndex),
2436
+ columns: columns,
2437
+ editing: dt.editMode === 'row' && dt.isRowEditing(rowData),
2438
+ frozen: frozen,
2439
+ rowgroup: shouldRenderRowspan(value, rowData, rowIndex),
2440
+ rowspan: calculateRowGroupSize(value, rowData, rowIndex)
2441
+ }
2442
+ "
2443
+ ></ng-container>
2341
2444
  </ng-container>
2342
- <ng-container *ngIf="dt.groupFooterTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, getRowIndex(rowIndex))" role="row">
2343
- <ng-container *ngTemplateOutlet="dt.groupFooterTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2445
+ <ng-container *ngIf="dt.groupFooterTemplate && !dt.virtualScroll && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, rowIndex)" role="row">
2446
+ <ng-container
2447
+ *ngTemplateOutlet="dt.groupFooterTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2448
+ ></ng-container>
2344
2449
  </ng-container>
2345
2450
  </ng-template>
2346
2451
  </ng-container>
2347
- <ng-container *ngIf="!dt.expandedRowTemplate && dt.virtualScroll">
2348
- <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2349
- <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>
2350
- </ng-template>
2351
- </ng-container>
2352
2452
  <ng-container *ngIf="dt.expandedRowTemplate && !(frozen && dt.frozenExpandedRowTemplate)">
2353
2453
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2354
2454
  <ng-container *ngIf="!dt.groupHeaderTemplate">
2355
- <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>
2455
+ <ng-container
2456
+ *ngTemplateOutlet="template; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2457
+ ></ng-container>
2356
2458
  </ng-container>
2357
2459
  <ng-container *ngIf="dt.groupHeaderTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, getRowIndex(rowIndex))" role="row">
2358
- <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>
2460
+ <ng-container
2461
+ *ngTemplateOutlet="
2462
+ dt.groupHeaderTemplate;
2463
+ context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }
2464
+ "
2465
+ ></ng-container>
2359
2466
  </ng-container>
2360
2467
  <ng-container *ngIf="dt.isRowExpanded(rowData)">
2361
- <ng-container *ngTemplateOutlet="dt.expandedRowTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen}"></ng-container>
2468
+ <ng-container *ngTemplateOutlet="dt.expandedRowTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen }"></ng-container>
2362
2469
  <ng-container *ngIf="dt.groupFooterTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, getRowIndex(rowIndex))" role="row">
2363
- <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>
2470
+ <ng-container
2471
+ *ngTemplateOutlet="
2472
+ dt.groupFooterTemplate;
2473
+ context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }
2474
+ "
2475
+ ></ng-container>
2364
2476
  </ng-container>
2365
2477
  </ng-container>
2366
2478
  </ng-template>
2367
2479
  </ng-container>
2368
2480
  <ng-container *ngIf="dt.frozenExpandedRowTemplate && frozen">
2369
2481
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2370
- <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>
2482
+ <ng-container
2483
+ *ngTemplateOutlet="template; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2484
+ ></ng-container>
2371
2485
  <ng-container *ngIf="dt.isRowExpanded(rowData)">
2372
- <ng-container *ngTemplateOutlet="dt.frozenExpandedRowTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen}"></ng-container>
2486
+ <ng-container *ngTemplateOutlet="dt.frozenExpandedRowTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen }"></ng-container>
2373
2487
  </ng-container>
2374
2488
  </ng-template>
2375
2489
  </ng-container>
2376
2490
  <ng-container *ngIf="dt.loading">
2377
- <ng-container *ngTemplateOutlet="dt.loadingBodyTemplate; context: {$implicit: columns, frozen: frozen}"></ng-container>
2491
+ <ng-container *ngTemplateOutlet="dt.loadingBodyTemplate; context: { $implicit: columns, frozen: frozen }"></ng-container>
2378
2492
  </ng-container>
2379
2493
  <ng-container *ngIf="dt.isEmpty() && !dt.loading">
2380
- <ng-container *ngTemplateOutlet="dt.emptyMessageTemplate; context: {$implicit: columns, frozen: frozen}"></ng-container>
2494
+ <ng-container *ngTemplateOutlet="dt.emptyMessageTemplate; context: { $implicit: columns, frozen: frozen }"></ng-container>
2381
2495
  </ng-container>
2382
2496
  `, 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 });
2383
2497
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableBody, decorators: [{
@@ -2385,70 +2499,98 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2385
2499
  args: [{
2386
2500
  selector: '[pTableBody]',
2387
2501
  template: `
2388
- <ng-container *ngIf="!dt.expandedRowTemplate && !dt.virtualScroll">
2502
+ <ng-container *ngIf="!dt.expandedRowTemplate">
2389
2503
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2390
- <ng-container *ngIf="dt.groupHeaderTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, getRowIndex(rowIndex))" role="row">
2391
- <ng-container *ngTemplateOutlet="dt.groupHeaderTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2504
+ <ng-container *ngIf="dt.groupHeaderTemplate && !dt.virtualScroll && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, rowIndex)" role="row">
2505
+ <ng-container
2506
+ *ngTemplateOutlet="dt.groupHeaderTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2507
+ ></ng-container>
2392
2508
  </ng-container>
2393
2509
  <ng-container *ngIf="dt.rowGroupMode !== 'rowspan'">
2394
- <ng-container *ngTemplateOutlet="template; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2510
+ <ng-container
2511
+ *ngTemplateOutlet="rowData ? template : dt.loadingBodyTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2512
+ ></ng-container>
2395
2513
  </ng-container>
2396
2514
  <ng-container *ngIf="dt.rowGroupMode === 'rowspan'">
2397
- <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>
2515
+ <ng-container
2516
+ *ngTemplateOutlet="
2517
+ rowData ? template : dt.loadingBodyTemplate;
2518
+ context: {
2519
+ $implicit: rowData,
2520
+ rowIndex: getRowIndex(rowIndex),
2521
+ columns: columns,
2522
+ editing: dt.editMode === 'row' && dt.isRowEditing(rowData),
2523
+ frozen: frozen,
2524
+ rowgroup: shouldRenderRowspan(value, rowData, rowIndex),
2525
+ rowspan: calculateRowGroupSize(value, rowData, rowIndex)
2526
+ }
2527
+ "
2528
+ ></ng-container>
2398
2529
  </ng-container>
2399
- <ng-container *ngIf="dt.groupFooterTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, getRowIndex(rowIndex))" role="row">
2400
- <ng-container *ngTemplateOutlet="dt.groupFooterTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: (dt.editMode === 'row' && dt.isRowEditing(rowData)), frozen: frozen}"></ng-container>
2530
+ <ng-container *ngIf="dt.groupFooterTemplate && !dt.virtualScroll && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, rowIndex)" role="row">
2531
+ <ng-container
2532
+ *ngTemplateOutlet="dt.groupFooterTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2533
+ ></ng-container>
2401
2534
  </ng-container>
2402
2535
  </ng-template>
2403
2536
  </ng-container>
2404
- <ng-container *ngIf="!dt.expandedRowTemplate && dt.virtualScroll">
2405
- <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2406
- <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>
2407
- </ng-template>
2408
- </ng-container>
2409
2537
  <ng-container *ngIf="dt.expandedRowTemplate && !(frozen && dt.frozenExpandedRowTemplate)">
2410
2538
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2411
2539
  <ng-container *ngIf="!dt.groupHeaderTemplate">
2412
- <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>
2540
+ <ng-container
2541
+ *ngTemplateOutlet="template; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2542
+ ></ng-container>
2413
2543
  </ng-container>
2414
2544
  <ng-container *ngIf="dt.groupHeaderTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupHeader(value, rowData, getRowIndex(rowIndex))" role="row">
2415
- <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>
2545
+ <ng-container
2546
+ *ngTemplateOutlet="
2547
+ dt.groupHeaderTemplate;
2548
+ context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }
2549
+ "
2550
+ ></ng-container>
2416
2551
  </ng-container>
2417
2552
  <ng-container *ngIf="dt.isRowExpanded(rowData)">
2418
- <ng-container *ngTemplateOutlet="dt.expandedRowTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen}"></ng-container>
2553
+ <ng-container *ngTemplateOutlet="dt.expandedRowTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen }"></ng-container>
2419
2554
  <ng-container *ngIf="dt.groupFooterTemplate && dt.rowGroupMode === 'subheader' && shouldRenderRowGroupFooter(value, rowData, getRowIndex(rowIndex))" role="row">
2420
- <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>
2555
+ <ng-container
2556
+ *ngTemplateOutlet="
2557
+ dt.groupFooterTemplate;
2558
+ context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }
2559
+ "
2560
+ ></ng-container>
2421
2561
  </ng-container>
2422
2562
  </ng-container>
2423
2563
  </ng-template>
2424
2564
  </ng-container>
2425
2565
  <ng-container *ngIf="dt.frozenExpandedRowTemplate && frozen">
2426
2566
  <ng-template ngFor let-rowData let-rowIndex="index" [ngForOf]="value" [ngForTrackBy]="dt.rowTrackBy">
2427
- <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>
2567
+ <ng-container
2568
+ *ngTemplateOutlet="template; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, expanded: dt.isRowExpanded(rowData), editing: dt.editMode === 'row' && dt.isRowEditing(rowData), frozen: frozen }"
2569
+ ></ng-container>
2428
2570
  <ng-container *ngIf="dt.isRowExpanded(rowData)">
2429
- <ng-container *ngTemplateOutlet="dt.frozenExpandedRowTemplate; context: {$implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen}"></ng-container>
2571
+ <ng-container *ngTemplateOutlet="dt.frozenExpandedRowTemplate; context: { $implicit: rowData, rowIndex: getRowIndex(rowIndex), columns: columns, frozen: frozen }"></ng-container>
2430
2572
  </ng-container>
2431
2573
  </ng-template>
2432
2574
  </ng-container>
2433
2575
  <ng-container *ngIf="dt.loading">
2434
- <ng-container *ngTemplateOutlet="dt.loadingBodyTemplate; context: {$implicit: columns, frozen: frozen}"></ng-container>
2576
+ <ng-container *ngTemplateOutlet="dt.loadingBodyTemplate; context: { $implicit: columns, frozen: frozen }"></ng-container>
2435
2577
  </ng-container>
2436
2578
  <ng-container *ngIf="dt.isEmpty() && !dt.loading">
2437
- <ng-container *ngTemplateOutlet="dt.emptyMessageTemplate; context: {$implicit: columns, frozen: frozen}"></ng-container>
2579
+ <ng-container *ngTemplateOutlet="dt.emptyMessageTemplate; context: { $implicit: columns, frozen: frozen }"></ng-container>
2438
2580
  </ng-container>
2439
2581
  `,
2440
2582
  changeDetection: ChangeDetectionStrategy.Default,
2441
2583
  encapsulation: ViewEncapsulation.None,
2442
2584
  host: {
2443
- 'class': 'p-element'
2585
+ class: 'p-element'
2444
2586
  }
2445
2587
  }]
2446
2588
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { columns: [{
2447
2589
  type: Input,
2448
- args: ["pTableBody"]
2590
+ args: ['pTableBody']
2449
2591
  }], template: [{
2450
2592
  type: Input,
2451
- args: ["pTableBodyTemplate"]
2593
+ args: ['pTableBodyTemplate']
2452
2594
  }], value: [{
2453
2595
  type: Input
2454
2596
  }], frozen: [{
@@ -2473,15 +2615,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2473
2615
  args: [{
2474
2616
  selector: '[pRowGroupHeader]',
2475
2617
  host: {
2476
- 'class': 'p-rowgroup-header p-element',
2477
- '[style.top]': "getFrozenRowGroupHeaderStickyPosition"
2618
+ class: 'p-rowgroup-header p-element',
2619
+ '[style.top]': 'getFrozenRowGroupHeaderStickyPosition'
2478
2620
  }
2479
2621
  }]
2480
2622
  }], ctorParameters: function () { return [{ type: Table }]; } });
2481
2623
  class FrozenColumn {
2482
2624
  constructor(el) {
2483
2625
  this.el = el;
2484
- this.alignFrozen = "left";
2626
+ this.alignFrozen = 'left';
2485
2627
  this._frozen = true;
2486
2628
  }
2487
2629
  get frozen() {
@@ -2530,7 +2672,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2530
2672
  args: [{
2531
2673
  selector: '[pFrozenColumn]',
2532
2674
  host: {
2533
- 'class': 'p-element',
2675
+ class: 'p-element',
2534
2676
  '[class.p-frozen-column]': 'frozen'
2535
2677
  }
2536
2678
  }]
@@ -2543,7 +2685,7 @@ class SortableColumn {
2543
2685
  constructor(dt) {
2544
2686
  this.dt = dt;
2545
2687
  if (this.isEnabled()) {
2546
- this.subscription = this.dt.tableService.sortSource$.subscribe(sortMeta => {
2688
+ this.subscription = this.dt.tableService.sortSource$.subscribe((sortMeta) => {
2547
2689
  this.updateSortState();
2548
2690
  });
2549
2691
  }
@@ -2589,7 +2731,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2589
2731
  args: [{
2590
2732
  selector: '[pSortableColumn]',
2591
2733
  host: {
2592
- 'class': 'p-element',
2734
+ class: 'p-element',
2593
2735
  '[class.p-sortable-column]': 'isEnabled()',
2594
2736
  '[class.p-highlight]': 'sorted',
2595
2737
  '[attr.tabindex]': 'isEnabled() ? "0" : null',
@@ -2599,7 +2741,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2599
2741
  }]
2600
2742
  }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { field: [{
2601
2743
  type: Input,
2602
- args: ["pSortableColumn"]
2744
+ args: ['pSortableColumn']
2603
2745
  }], pSortableColumnDisabled: [{
2604
2746
  type: Input
2605
2747
  }], onClick: [{
@@ -2613,7 +2755,7 @@ class SortIcon {
2613
2755
  constructor(dt, cd) {
2614
2756
  this.dt = dt;
2615
2757
  this.cd = cd;
2616
- this.subscription = this.dt.tableService.sortSource$.subscribe(sortMeta => {
2758
+ this.subscription = this.dt.tableService.sortSource$.subscribe((sortMeta) => {
2617
2759
  this.updateSortState();
2618
2760
  });
2619
2761
  }
@@ -2662,21 +2804,21 @@ class SortIcon {
2662
2804
  }
2663
2805
  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 });
2664
2806
  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: `
2665
- <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>
2666
- <span *ngIf="isMultiSorted()" class="p-sortable-column-badge">{{getBadgeValue()}}</span>
2807
+ <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>
2808
+ <span *ngIf="isMultiSorted()" class="p-sortable-column-badge">{{ getBadgeValue() }}</span>
2667
2809
  `, 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 });
2668
2810
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: SortIcon, decorators: [{
2669
2811
  type: Component,
2670
2812
  args: [{
2671
2813
  selector: 'p-sortIcon',
2672
2814
  template: `
2673
- <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>
2674
- <span *ngIf="isMultiSorted()" class="p-sortable-column-badge">{{getBadgeValue()}}</span>
2815
+ <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>
2816
+ <span *ngIf="isMultiSorted()" class="p-sortable-column-badge">{{ getBadgeValue() }}</span>
2675
2817
  `,
2676
2818
  changeDetection: ChangeDetectionStrategy.OnPush,
2677
2819
  encapsulation: ViewEncapsulation.None,
2678
2820
  host: {
2679
- 'class': 'p-element'
2821
+ class: 'p-element'
2680
2822
  }
2681
2823
  }]
2682
2824
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { field: [{
@@ -2793,7 +2935,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2793
2935
  args: [{
2794
2936
  selector: '[pSelectableRow]',
2795
2937
  host: {
2796
- 'class': 'p-element',
2938
+ class: 'p-element',
2797
2939
  '[class.p-selectable-row]': 'isEnabled()',
2798
2940
  '[class.p-highlight]': 'selected',
2799
2941
  '[attr.tabindex]': 'isEnabled() ? 0 : undefined'
@@ -2801,10 +2943,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2801
2943
  }]
2802
2944
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }]; }, propDecorators: { data: [{
2803
2945
  type: Input,
2804
- args: ["pSelectableRow"]
2946
+ args: ['pSelectableRow']
2805
2947
  }], index: [{
2806
2948
  type: Input,
2807
- args: ["pSelectableRowIndex"]
2949
+ args: ['pSelectableRowIndex']
2808
2950
  }], pSelectableRowDisabled: [{
2809
2951
  type: Input
2810
2952
  }], onClick: [{
@@ -2884,17 +3026,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2884
3026
  args: [{
2885
3027
  selector: '[pSelectableRowDblClick]',
2886
3028
  host: {
2887
- 'class': 'p-element',
3029
+ class: 'p-element',
2888
3030
  '[class.p-selectable-row]': 'isEnabled()',
2889
3031
  '[class.p-highlight]': 'selected'
2890
3032
  }
2891
3033
  }]
2892
3034
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }]; }, propDecorators: { data: [{
2893
3035
  type: Input,
2894
- args: ["pSelectableRowDblClick"]
3036
+ args: ['pSelectableRowDblClick']
2895
3037
  }], index: [{
2896
3038
  type: Input,
2897
- args: ["pSelectableRowIndex"]
3039
+ args: ['pSelectableRowIndex']
2898
3040
  }], pSelectableRowDisabled: [{
2899
3041
  type: Input
2900
3042
  }], onClick: [{
@@ -2939,17 +3081,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2939
3081
  args: [{
2940
3082
  selector: '[pContextMenuRow]',
2941
3083
  host: {
2942
- 'class': 'p-element',
3084
+ class: 'p-element',
2943
3085
  '[class.p-highlight-contextmenu]': 'selected',
2944
3086
  '[attr.tabindex]': 'isEnabled() ? 0 : undefined'
2945
3087
  }
2946
3088
  }]
2947
3089
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ElementRef }]; }, propDecorators: { data: [{
2948
3090
  type: Input,
2949
- args: ["pContextMenuRow"]
3091
+ args: ['pContextMenuRow']
2950
3092
  }], index: [{
2951
3093
  type: Input,
2952
- args: ["pContextMenuRowIndex"]
3094
+ args: ['pContextMenuRowIndex']
2953
3095
  }], pContextMenuRowDisabled: [{
2954
3096
  type: Input
2955
3097
  }], onContextMenu: [{
@@ -2977,7 +3119,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2977
3119
  args: [{
2978
3120
  selector: '[pRowToggler]',
2979
3121
  host: {
2980
- 'class': 'p-element'
3122
+ class: 'p-element'
2981
3123
  }
2982
3124
  }]
2983
3125
  }], ctorParameters: function () { return [{ type: Table }]; }, propDecorators: { data: [{
@@ -3055,7 +3197,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3055
3197
  args: [{
3056
3198
  selector: '[pResizableColumn]',
3057
3199
  host: {
3058
- 'class': 'p-element'
3200
+ class: 'p-element'
3059
3201
  }
3060
3202
  }]
3061
3203
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { pResizableColumnDisabled: [{
@@ -3145,7 +3287,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3145
3287
  args: [{
3146
3288
  selector: '[pReorderableColumn]',
3147
3289
  host: {
3148
- 'class': 'p-element'
3290
+ class: 'p-element'
3149
3291
  }
3150
3292
  }]
3151
3293
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { pReorderableColumnDisabled: [{
@@ -3403,18 +3545,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3403
3545
  args: [{
3404
3546
  selector: '[pEditableColumn]',
3405
3547
  host: {
3406
- 'class': 'p-element'
3548
+ class: 'p-element'
3407
3549
  }
3408
3550
  }]
3409
3551
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { data: [{
3410
3552
  type: Input,
3411
- args: ["pEditableColumn"]
3553
+ args: ['pEditableColumn']
3412
3554
  }], field: [{
3413
3555
  type: Input,
3414
- args: ["pEditableColumnField"]
3556
+ args: ['pEditableColumnField']
3415
3557
  }], rowIndex: [{
3416
3558
  type: Input,
3417
- args: ["pEditableColumnRowIndex"]
3559
+ args: ['pEditableColumnRowIndex']
3418
3560
  }], pEditableColumnDisabled: [{
3419
3561
  type: Input
3420
3562
  }], pFocusCellSelector: [{
@@ -3465,12 +3607,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3465
3607
  args: [{
3466
3608
  selector: '[pEditableRow]',
3467
3609
  host: {
3468
- 'class': 'p-element'
3610
+ class: 'p-element'
3469
3611
  }
3470
3612
  }]
3471
3613
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { data: [{
3472
3614
  type: Input,
3473
- args: ["pEditableRow"]
3615
+ args: ['pEditableRow']
3474
3616
  }], pEditableRowDisabled: [{
3475
3617
  type: Input
3476
3618
  }] } });
@@ -3491,7 +3633,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3491
3633
  args: [{
3492
3634
  selector: '[pInitEditableRow]',
3493
3635
  host: {
3494
- 'class': 'p-element'
3636
+ class: 'p-element'
3495
3637
  }
3496
3638
  }]
3497
3639
  }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{
@@ -3515,7 +3657,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3515
3657
  args: [{
3516
3658
  selector: '[pSaveEditableRow]',
3517
3659
  host: {
3518
- 'class': 'p-element'
3660
+ class: 'p-element'
3519
3661
  }
3520
3662
  }]
3521
3663
  }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{
@@ -3539,7 +3681,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3539
3681
  args: [{
3540
3682
  selector: '[pCancelEditableRow]',
3541
3683
  host: {
3542
- 'class': 'p-element'
3684
+ class: 'p-element'
3543
3685
  }
3544
3686
  }]
3545
3687
  }], ctorParameters: function () { return [{ type: Table }, { type: EditableRow }]; }, propDecorators: { onClick: [{
@@ -3565,8 +3707,7 @@ class CellEditor {
3565
3707
  });
3566
3708
  }
3567
3709
  get editing() {
3568
- return (this.dt.editingCell && this.editableColumn && this.dt.editingCell === this.editableColumn.el.nativeElement) ||
3569
- (this.editableRow && this.dt.editMode === 'row' && this.dt.isRowEditing(this.editableRow.data));
3710
+ 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));
3570
3711
  }
3571
3712
  }
3572
3713
  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 });
@@ -3592,7 +3733,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3592
3733
  `,
3593
3734
  encapsulation: ViewEncapsulation.None,
3594
3735
  host: {
3595
- 'class': 'p-element'
3736
+ class: 'p-element'
3596
3737
  }
3597
3738
  }]
3598
3739
  }], ctorParameters: function () {
@@ -3641,12 +3782,11 @@ class TableRadioButton {
3641
3782
  }
3642
3783
  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
3784
  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)">
3785
+ <div class="p-radiobutton p-component" [ngClass]="{ 'p-radiobutton-focused': focused, 'p-radiobutton-disabled': disabled }" (click)="onClick($event)">
3645
3786
  <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">
3787
+ <input type="radio" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="disabled" [attr.aria-label]="ariaLabel" />
3648
3788
  </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">
3789
+ <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
3790
  <div class="p-radiobutton-icon"></div>
3651
3791
  </div>
3652
3792
  </div>
@@ -3656,12 +3796,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3656
3796
  args: [{
3657
3797
  selector: 'p-tableRadioButton',
3658
3798
  template: `
3659
- <div class="p-radiobutton p-component" [ngClass]="{'p-radiobutton-focused':focused, 'p-radiobutton-disabled': disabled}" (click)="onClick($event)">
3799
+ <div class="p-radiobutton p-component" [ngClass]="{ 'p-radiobutton-focused': focused, 'p-radiobutton-disabled': disabled }" (click)="onClick($event)">
3660
3800
  <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">
3801
+ <input type="radio" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="disabled" [attr.aria-label]="ariaLabel" />
3663
3802
  </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">
3803
+ <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
3804
  <div class="p-radiobutton-icon"></div>
3666
3805
  </div>
3667
3806
  </div>
@@ -3669,7 +3808,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3669
3808
  changeDetection: ChangeDetectionStrategy.OnPush,
3670
3809
  encapsulation: ViewEncapsulation.None,
3671
3810
  host: {
3672
- 'class': 'p-element'
3811
+ class: 'p-element'
3673
3812
  }
3674
3813
  }]
3675
3814
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{
@@ -3721,14 +3860,12 @@ class TableCheckbox {
3721
3860
  }
3722
3861
  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
3862
  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)">
3863
+ <div class="p-checkbox p-component" [ngClass]="{ 'p-checkbox-focused': focused, 'p-checkbox-disabled': disabled }" (click)="onClick($event)">
3725
3864
  <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">
3865
+ <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
3866
  </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>
3867
+ <div #box [ngClass]="{ 'p-checkbox-box p-component': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': disabled }" role="checkbox" [attr.aria-checked]="checked">
3868
+ <span class="p-checkbox-icon" [ngClass]="{ 'pi pi-check': checked }"></span>
3732
3869
  </div>
3733
3870
  </div>
3734
3871
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
@@ -3737,21 +3874,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3737
3874
  args: [{
3738
3875
  selector: 'p-tableCheckbox',
3739
3876
  template: `
3740
- <div class="p-checkbox p-component" [ngClass]="{'p-checkbox-focused':focused, 'p-checkbox-disabled': disabled}" (click)="onClick($event)">
3877
+ <div class="p-checkbox p-component" [ngClass]="{ 'p-checkbox-focused': focused, 'p-checkbox-disabled': disabled }" (click)="onClick($event)">
3741
3878
  <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">
3879
+ <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
3880
  </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>
3881
+ <div #box [ngClass]="{ 'p-checkbox-box p-component': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': disabled }" role="checkbox" [attr.aria-checked]="checked">
3882
+ <span class="p-checkbox-icon" [ngClass]="{ 'pi pi-check': checked }"></span>
3748
3883
  </div>
3749
3884
  </div>
3750
3885
  `,
3751
3886
  changeDetection: ChangeDetectionStrategy.OnPush,
3752
3887
  encapsulation: ViewEncapsulation.None,
3753
3888
  host: {
3754
- 'class': 'p-element'
3889
+ class: 'p-element'
3755
3890
  }
3756
3891
  }]
3757
3892
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{
@@ -3818,20 +3953,18 @@ class TableHeaderCheckbox {
3818
3953
  const data = this.dt.selectionPageOnly ? this.dt.dataToRender(this.dt.processedData) : this.dt.processedData;
3819
3954
  const val = this.dt.frozenValue ? [...this.dt.frozenValue, ...data] : data;
3820
3955
  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)));
3956
+ return ObjectUtils.isNotEmpty(selectableVal) && ObjectUtils.isNotEmpty(this.dt.selection) && selectableVal.every((v) => this.dt.selection.some((s) => this.dt.equals(v, s)));
3822
3957
  }
3823
3958
  }
3824
3959
  }
3825
3960
  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
3961
  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)">
3962
+ <div class="p-checkbox p-component" [ngClass]="{ 'p-checkbox-focused': focused, 'p-checkbox-disabled': isDisabled() }" (click)="onClick($event)">
3828
3963
  <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">
3964
+ <input #cb type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="isDisabled()" [attr.aria-label]="ariaLabel" />
3831
3965
  </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>
3966
+ <div #box [ngClass]="{ 'p-checkbox-box': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': isDisabled() }" role="checkbox" [attr.aria-checked]="checked">
3967
+ <span class="p-checkbox-icon" [ngClass]="{ 'pi pi-check': checked }"></span>
3835
3968
  </div>
3836
3969
  </div>
3837
3970
  `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
@@ -3840,21 +3973,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3840
3973
  args: [{
3841
3974
  selector: 'p-tableHeaderCheckbox',
3842
3975
  template: `
3843
- <div class="p-checkbox p-component" [ngClass]="{'p-checkbox-focused':focused, 'p-checkbox-disabled': isDisabled()}" (click)="onClick($event)">
3976
+ <div class="p-checkbox p-component" [ngClass]="{ 'p-checkbox-focused': focused, 'p-checkbox-disabled': isDisabled() }" (click)="onClick($event)">
3844
3977
  <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">
3978
+ <input #cb type="checkbox" [attr.id]="inputId" [attr.name]="name" [checked]="checked" (focus)="onFocus()" (blur)="onBlur()" [disabled]="isDisabled()" [attr.aria-label]="ariaLabel" />
3847
3979
  </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>
3980
+ <div #box [ngClass]="{ 'p-checkbox-box': true, 'p-highlight': checked, 'p-focus': focused, 'p-disabled': isDisabled() }" role="checkbox" [attr.aria-checked]="checked">
3981
+ <span class="p-checkbox-icon" [ngClass]="{ 'pi pi-check': checked }"></span>
3851
3982
  </div>
3852
3983
  </div>
3853
3984
  `,
3854
3985
  changeDetection: ChangeDetectionStrategy.OnPush,
3855
3986
  encapsulation: ViewEncapsulation.None,
3856
3987
  host: {
3857
- 'class': 'p-element'
3988
+ class: 'p-element'
3858
3989
  }
3859
3990
  }]
3860
3991
  }], ctorParameters: function () { return [{ type: Table }, { type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{
@@ -3881,12 +4012,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3881
4012
  args: [{
3882
4013
  selector: '[pReorderableRowHandle]',
3883
4014
  host: {
3884
- 'class': 'p-element'
4015
+ class: 'p-element'
3885
4016
  }
3886
4017
  }]
3887
4018
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { index: [{
3888
4019
  type: Input,
3889
- args: ["pReorderableRowHandle"]
4020
+ args: ['pReorderableRowHandle']
3890
4021
  }] } });
3891
4022
  class ReorderableRow {
3892
4023
  constructor(dt, el, zone) {
@@ -3976,121 +4107,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
3976
4107
  args: [{
3977
4108
  selector: '[pReorderableRow]',
3978
4109
  host: {
3979
- 'class': 'p-element'
4110
+ class: 'p-element'
3980
4111
  }
3981
4112
  }]
3982
4113
  }], ctorParameters: function () { return [{ type: Table }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { index: [{
3983
4114
  type: Input,
3984
- args: ["pReorderableRow"]
4115
+ args: ['pReorderableRow']
3985
4116
  }], pReorderableRowDisabled: [{
3986
4117
  type: Input
3987
4118
  }], onDrop: [{
3988
4119
  type: HostListener,
3989
4120
  args: ['drop', ['$event']]
3990
4121
  }] } });
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
4122
  class ColumnFilter {
4095
4123
  constructor(el, dt, renderer, config, overlayService) {
4096
4124
  this.el = el;
@@ -4128,10 +4156,11 @@ class ColumnFilter {
4128
4156
  }
4129
4157
  generateMatchModeOptions() {
4130
4158
  var _a;
4131
- this.matchModes = this.matchModeOptions ||
4132
- ((_a = this.config.filterMatchModeOptions[this.type]) === null || _a === void 0 ? void 0 : _a.map(key => {
4133
- return { label: this.config.getTranslation(key), value: key };
4134
- }));
4159
+ this.matchModes =
4160
+ this.matchModeOptions ||
4161
+ ((_a = this.config.filterMatchModeOptions[this.type]) === null || _a === void 0 ? void 0 : _a.map((key) => {
4162
+ return { label: this.config.getTranslation(key), value: key };
4163
+ }));
4135
4164
  }
4136
4165
  generateOperatorOptions() {
4137
4166
  this.operatorOptions = [
@@ -4206,11 +4235,11 @@ class ColumnFilter {
4206
4235
  this.dt.filters[this.field].push({ value: null, matchMode: this.getDefaultMatchMode(), operator: this.getDefaultOperator() });
4207
4236
  }
4208
4237
  removeConstraint(filterMeta) {
4209
- this.dt.filters[this.field] = this.dt.filters[this.field].filter(meta => meta !== filterMeta);
4238
+ this.dt.filters[this.field] = this.dt.filters[this.field].filter((meta) => meta !== filterMeta);
4210
4239
  this.dt._filter();
4211
4240
  }
4212
4241
  onOperatorChange(value) {
4213
- this.dt.filters[this.field].forEach(filterMeta => {
4242
+ this.dt.filters[this.field].forEach((filterMeta) => {
4214
4243
  filterMeta.operator = value;
4215
4244
  this.operator = value;
4216
4245
  });
@@ -4329,7 +4358,7 @@ class ColumnFilter {
4329
4358
  return this.showOperator && this.type !== 'boolean';
4330
4359
  }
4331
4360
  get isShowAddConstraint() {
4332
- return this.showAddButton && this.type !== 'boolean' && (this.fieldConstraints && this.fieldConstraints.length < this.maxConstraints);
4361
+ return this.showAddButton && this.type !== 'boolean' && this.fieldConstraints && this.fieldConstraints.length < this.maxConstraints;
4333
4362
  }
4334
4363
  get applyButtonLabel() {
4335
4364
  return this.config.getTranslation(TranslationKeys.APPLY);
@@ -4357,15 +4386,19 @@ class ColumnFilter {
4357
4386
  return false;
4358
4387
  }
4359
4388
  isOutsideClicked(event) {
4360
- return !(this.overlay.isSameNode(event.target) || this.overlay.contains(event.target)
4361
- || this.icon.nativeElement.isSameNode(event.target) || this.icon.nativeElement.contains(event.target)
4362
- || DomHandler.hasClass(event.target, 'p-column-filter-add-button') || DomHandler.hasClass(event.target.parentElement, 'p-column-filter-add-button')
4363
- || DomHandler.hasClass(event.target, 'p-column-filter-remove-button') || DomHandler.hasClass(event.target.parentElement, 'p-column-filter-remove-button'));
4389
+ return !(this.overlay.isSameNode(event.target) ||
4390
+ this.overlay.contains(event.target) ||
4391
+ this.icon.nativeElement.isSameNode(event.target) ||
4392
+ this.icon.nativeElement.contains(event.target) ||
4393
+ DomHandler.hasClass(event.target, 'p-column-filter-add-button') ||
4394
+ DomHandler.hasClass(event.target.parentElement, 'p-column-filter-add-button') ||
4395
+ DomHandler.hasClass(event.target, 'p-column-filter-remove-button') ||
4396
+ DomHandler.hasClass(event.target.parentElement, 'p-column-filter-remove-button'));
4364
4397
  }
4365
4398
  bindDocumentClickListener() {
4366
4399
  if (!this.documentClickListener) {
4367
4400
  const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';
4368
- this.documentClickListener = this.renderer.listen(documentTarget, 'click', event => {
4401
+ this.documentClickListener = this.renderer.listen(documentTarget, 'click', (event) => {
4369
4402
  if (this.overlayVisible && !this.selfClick && this.isOutsideClicked(event)) {
4370
4403
  this.hide();
4371
4404
  }
@@ -4447,21 +4480,66 @@ class ColumnFilter {
4447
4480
  }
4448
4481
  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 });
4449
4482
  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: `
4450
- <div class="p-column-filter" [ngClass]="{'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu'}">
4451
- <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"
4452
- [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping" [showButtons]="showButtons"></p-columnFilterFormElement>
4453
- <button #icon *ngIf="showMenuButton" type="button" class="p-column-filter-menu-button p-link" aria-haspopup="true" [attr.aria-expanded]="overlayVisible"
4454
- [ngClass]="{'p-column-filter-menu-button-open': overlayVisible, 'p-column-filter-menu-button-active': hasFilter()}"
4455
- (click)="toggleMenu()" (keydown)="onToggleButtonKeyDown($event)"><span class="pi pi-filter-icon pi-filter"></span></button>
4456
- <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>
4457
- <div *ngIf="showMenu && overlayVisible" [ngClass]="{'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu'}" (click)="onContentClick()"
4458
- [@overlayAnimation]="'visible'" (@overlayAnimation.start)="onOverlayAnimationStart($event)" (@overlayAnimation.done)="onOverlayAnimationEnd($event)" (keydown.escape)="onEscape()">
4459
- <ng-container *ngTemplateOutlet="headerTemplate; context: {$implicit: field}"></ng-container>
4483
+ <div class="p-column-filter" [ngClass]="{ 'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu' }">
4484
+ <p-columnFilterFormElement
4485
+ *ngIf="display === 'row'"
4486
+ class="p-fluid"
4487
+ [type]="type"
4488
+ [field]="field"
4489
+ [filterConstraint]="dt.filters[field]"
4490
+ [filterTemplate]="filterTemplate"
4491
+ [placeholder]="placeholder"
4492
+ [minFractionDigits]="minFractionDigits"
4493
+ [maxFractionDigits]="maxFractionDigits"
4494
+ [prefix]="prefix"
4495
+ [suffix]="suffix"
4496
+ [locale]="locale"
4497
+ [localeMatcher]="localeMatcher"
4498
+ [currency]="currency"
4499
+ [currencyDisplay]="currencyDisplay"
4500
+ [useGrouping]="useGrouping"
4501
+ [showButtons]="showButtons"
4502
+ ></p-columnFilterFormElement>
4503
+ <button
4504
+ #icon
4505
+ *ngIf="showMenuButton"
4506
+ type="button"
4507
+ class="p-column-filter-menu-button p-link"
4508
+ aria-haspopup="true"
4509
+ [attr.aria-expanded]="overlayVisible"
4510
+ [ngClass]="{ 'p-column-filter-menu-button-open': overlayVisible, 'p-column-filter-menu-button-active': hasFilter() }"
4511
+ (click)="toggleMenu()"
4512
+ (keydown)="onToggleButtonKeyDown($event)"
4513
+ >
4514
+ <span class="pi pi-filter-icon pi-filter"></span>
4515
+ </button>
4516
+ <button #icon *ngIf="showClearButton && display === 'row'" [ngClass]="{ 'p-hidden-space': !hasRowFilter() }" type="button" class="p-column-filter-clear-button p-link" (click)="clearFilter()">
4517
+ <span class="pi pi-filter-slash"></span>
4518
+ </button>
4519
+ <div
4520
+ *ngIf="showMenu && overlayVisible"
4521
+ [ngClass]="{ 'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu' }"
4522
+ (click)="onContentClick()"
4523
+ [@overlayAnimation]="'visible'"
4524
+ (@overlayAnimation.start)="onOverlayAnimationStart($event)"
4525
+ (@overlayAnimation.done)="onOverlayAnimationEnd($event)"
4526
+ (keydown.escape)="onEscape()"
4527
+ >
4528
+ <ng-container *ngTemplateOutlet="headerTemplate; context: { $implicit: field }"></ng-container>
4460
4529
  <ul *ngIf="display === 'row'; else menu" class="p-column-filter-row-items">
4461
- <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)"
4462
- [ngClass]="{'p-highlight': isRowMatchModeSelected(matchMode.value)}" [attr.tabindex]="i === 0 ? '0' : null">{{matchMode.label}}</li>
4530
+ <li
4531
+ class="p-column-filter-row-item"
4532
+ *ngFor="let matchMode of matchModes; let i = index"
4533
+ (click)="onRowMatchModeChange(matchMode.value)"
4534
+ (keydown)="onRowMatchModeKeyDown($event)"
4535
+ (keydown.enter)="this.onRowMatchModeChange(matchMode.value)"
4536
+ [ngClass]="{ 'p-highlight': isRowMatchModeSelected(matchMode.value) }"
4537
+ [attr.tabindex]="i === 0 ? '0' : null"
4538
+ >
4539
+ {{ matchMode.label }}
4540
+ </li>
4463
4541
  <li class="p-column-filter-separator"></li>
4464
- <li class="p-column-filter-row-item" (click)="onRowClearItemClick()" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="onRowClearItemClick()">{{noFilterLabel}}</li>
4542
+ <li class="p-column-filter-row-item" (click)="onRowClearItemClick()" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="onRowClearItemClick()">{{ noFilterLabel }}</li>
4465
4543
  </ul>
4466
4544
  <ng-template #menu>
4467
4545
  <div class="p-column-filter-operator" *ngIf="isShowOperator">
@@ -4469,12 +4547,40 @@ ColumnFilter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
4469
4547
  </div>
4470
4548
  <div class="p-column-filter-constraints">
4471
4549
  <div *ngFor="let fieldConstraint of fieldConstraints; let i = index" class="p-column-filter-constraint">
4472
- <p-dropdown *ngIf="showMatchModes && matchModes" [options]="matchModes" [ngModel]="fieldConstraint.matchMode" (ngModelChange)="onMenuMatchModeChange($event, fieldConstraint)" styleClass="p-column-filter-matchmode-dropdown"></p-dropdown>
4473
- <p-columnFilterFormElement [type]="type" [field]="field" [filterConstraint]="fieldConstraint" [filterTemplate]="filterTemplate" [placeholder]="placeholder"
4474
- [minFractionDigits]="minFractionDigits" [maxFractionDigits]="maxFractionDigits" [prefix]="prefix" [suffix]="suffix"
4475
- [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping"></p-columnFilterFormElement>
4550
+ <p-dropdown
4551
+ *ngIf="showMatchModes && matchModes"
4552
+ [options]="matchModes"
4553
+ [ngModel]="fieldConstraint.matchMode"
4554
+ (ngModelChange)="onMenuMatchModeChange($event, fieldConstraint)"
4555
+ styleClass="p-column-filter-matchmode-dropdown"
4556
+ ></p-dropdown>
4557
+ <p-columnFilterFormElement
4558
+ [type]="type"
4559
+ [field]="field"
4560
+ [filterConstraint]="fieldConstraint"
4561
+ [filterTemplate]="filterTemplate"
4562
+ [placeholder]="placeholder"
4563
+ [minFractionDigits]="minFractionDigits"
4564
+ [maxFractionDigits]="maxFractionDigits"
4565
+ [prefix]="prefix"
4566
+ [suffix]="suffix"
4567
+ [locale]="locale"
4568
+ [localeMatcher]="localeMatcher"
4569
+ [currency]="currency"
4570
+ [currencyDisplay]="currencyDisplay"
4571
+ [useGrouping]="useGrouping"
4572
+ ></p-columnFilterFormElement>
4476
4573
  <div>
4477
- <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>
4574
+ <button
4575
+ *ngIf="showRemoveIcon"
4576
+ type="button"
4577
+ pButton
4578
+ icon="pi pi-trash"
4579
+ class="p-column-filter-remove-button p-button-text p-button-danger p-button-sm"
4580
+ (click)="removeConstraint(fieldConstraint)"
4581
+ pRipple
4582
+ [label]="removeRuleButtonLabel"
4583
+ ></button>
4478
4584
  </div>
4479
4585
  </div>
4480
4586
  </div>
@@ -4486,40 +4592,75 @@ ColumnFilter.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
4486
4592
  <button *ngIf="showApplyButton" type="button" pButton (click)="applyFilter()" class="p-button-sm" [label]="applyButtonLabel" pRipple></button>
4487
4593
  </div>
4488
4594
  </ng-template>
4489
- <ng-container *ngTemplateOutlet="footerTemplate; context: {$implicit: field}"></ng-container>
4595
+ <ng-container *ngTemplateOutlet="footerTemplate; context: { $implicit: field }"></ng-container>
4490
4596
  </div>
4491
4597
  </div>
4492
- `, 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: [
4493
- trigger('overlayAnimation', [
4494
- transition(':enter', [
4495
- style({ opacity: 0, transform: 'scaleY(0.8)' }),
4496
- animate('.12s cubic-bezier(0, 0, 0.2, 1)')
4497
- ]),
4498
- transition(':leave', [
4499
- animate('.1s linear', style({ opacity: 0 }))
4500
- ])
4501
- ])
4502
- ], encapsulation: i0.ViewEncapsulation.None });
4598
+ `, 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 });
4503
4599
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ColumnFilter, decorators: [{
4504
4600
  type: Component,
4505
4601
  args: [{
4506
4602
  selector: 'p-columnFilter',
4507
4603
  template: `
4508
- <div class="p-column-filter" [ngClass]="{'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu'}">
4509
- <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"
4510
- [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping" [showButtons]="showButtons"></p-columnFilterFormElement>
4511
- <button #icon *ngIf="showMenuButton" type="button" class="p-column-filter-menu-button p-link" aria-haspopup="true" [attr.aria-expanded]="overlayVisible"
4512
- [ngClass]="{'p-column-filter-menu-button-open': overlayVisible, 'p-column-filter-menu-button-active': hasFilter()}"
4513
- (click)="toggleMenu()" (keydown)="onToggleButtonKeyDown($event)"><span class="pi pi-filter-icon pi-filter"></span></button>
4514
- <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>
4515
- <div *ngIf="showMenu && overlayVisible" [ngClass]="{'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu'}" (click)="onContentClick()"
4516
- [@overlayAnimation]="'visible'" (@overlayAnimation.start)="onOverlayAnimationStart($event)" (@overlayAnimation.done)="onOverlayAnimationEnd($event)" (keydown.escape)="onEscape()">
4517
- <ng-container *ngTemplateOutlet="headerTemplate; context: {$implicit: field}"></ng-container>
4604
+ <div class="p-column-filter" [ngClass]="{ 'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu' }">
4605
+ <p-columnFilterFormElement
4606
+ *ngIf="display === 'row'"
4607
+ class="p-fluid"
4608
+ [type]="type"
4609
+ [field]="field"
4610
+ [filterConstraint]="dt.filters[field]"
4611
+ [filterTemplate]="filterTemplate"
4612
+ [placeholder]="placeholder"
4613
+ [minFractionDigits]="minFractionDigits"
4614
+ [maxFractionDigits]="maxFractionDigits"
4615
+ [prefix]="prefix"
4616
+ [suffix]="suffix"
4617
+ [locale]="locale"
4618
+ [localeMatcher]="localeMatcher"
4619
+ [currency]="currency"
4620
+ [currencyDisplay]="currencyDisplay"
4621
+ [useGrouping]="useGrouping"
4622
+ [showButtons]="showButtons"
4623
+ ></p-columnFilterFormElement>
4624
+ <button
4625
+ #icon
4626
+ *ngIf="showMenuButton"
4627
+ type="button"
4628
+ class="p-column-filter-menu-button p-link"
4629
+ aria-haspopup="true"
4630
+ [attr.aria-expanded]="overlayVisible"
4631
+ [ngClass]="{ 'p-column-filter-menu-button-open': overlayVisible, 'p-column-filter-menu-button-active': hasFilter() }"
4632
+ (click)="toggleMenu()"
4633
+ (keydown)="onToggleButtonKeyDown($event)"
4634
+ >
4635
+ <span class="pi pi-filter-icon pi-filter"></span>
4636
+ </button>
4637
+ <button #icon *ngIf="showClearButton && display === 'row'" [ngClass]="{ 'p-hidden-space': !hasRowFilter() }" type="button" class="p-column-filter-clear-button p-link" (click)="clearFilter()">
4638
+ <span class="pi pi-filter-slash"></span>
4639
+ </button>
4640
+ <div
4641
+ *ngIf="showMenu && overlayVisible"
4642
+ [ngClass]="{ 'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu' }"
4643
+ (click)="onContentClick()"
4644
+ [@overlayAnimation]="'visible'"
4645
+ (@overlayAnimation.start)="onOverlayAnimationStart($event)"
4646
+ (@overlayAnimation.done)="onOverlayAnimationEnd($event)"
4647
+ (keydown.escape)="onEscape()"
4648
+ >
4649
+ <ng-container *ngTemplateOutlet="headerTemplate; context: { $implicit: field }"></ng-container>
4518
4650
  <ul *ngIf="display === 'row'; else menu" class="p-column-filter-row-items">
4519
- <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)"
4520
- [ngClass]="{'p-highlight': isRowMatchModeSelected(matchMode.value)}" [attr.tabindex]="i === 0 ? '0' : null">{{matchMode.label}}</li>
4651
+ <li
4652
+ class="p-column-filter-row-item"
4653
+ *ngFor="let matchMode of matchModes; let i = index"
4654
+ (click)="onRowMatchModeChange(matchMode.value)"
4655
+ (keydown)="onRowMatchModeKeyDown($event)"
4656
+ (keydown.enter)="this.onRowMatchModeChange(matchMode.value)"
4657
+ [ngClass]="{ 'p-highlight': isRowMatchModeSelected(matchMode.value) }"
4658
+ [attr.tabindex]="i === 0 ? '0' : null"
4659
+ >
4660
+ {{ matchMode.label }}
4661
+ </li>
4521
4662
  <li class="p-column-filter-separator"></li>
4522
- <li class="p-column-filter-row-item" (click)="onRowClearItemClick()" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="onRowClearItemClick()">{{noFilterLabel}}</li>
4663
+ <li class="p-column-filter-row-item" (click)="onRowClearItemClick()" (keydown)="onRowMatchModeKeyDown($event)" (keydown.enter)="onRowClearItemClick()">{{ noFilterLabel }}</li>
4523
4664
  </ul>
4524
4665
  <ng-template #menu>
4525
4666
  <div class="p-column-filter-operator" *ngIf="isShowOperator">
@@ -4527,12 +4668,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
4527
4668
  </div>
4528
4669
  <div class="p-column-filter-constraints">
4529
4670
  <div *ngFor="let fieldConstraint of fieldConstraints; let i = index" class="p-column-filter-constraint">
4530
- <p-dropdown *ngIf="showMatchModes && matchModes" [options]="matchModes" [ngModel]="fieldConstraint.matchMode" (ngModelChange)="onMenuMatchModeChange($event, fieldConstraint)" styleClass="p-column-filter-matchmode-dropdown"></p-dropdown>
4531
- <p-columnFilterFormElement [type]="type" [field]="field" [filterConstraint]="fieldConstraint" [filterTemplate]="filterTemplate" [placeholder]="placeholder"
4532
- [minFractionDigits]="minFractionDigits" [maxFractionDigits]="maxFractionDigits" [prefix]="prefix" [suffix]="suffix"
4533
- [locale]="locale" [localeMatcher]="localeMatcher" [currency]="currency" [currencyDisplay]="currencyDisplay" [useGrouping]="useGrouping"></p-columnFilterFormElement>
4671
+ <p-dropdown
4672
+ *ngIf="showMatchModes && matchModes"
4673
+ [options]="matchModes"
4674
+ [ngModel]="fieldConstraint.matchMode"
4675
+ (ngModelChange)="onMenuMatchModeChange($event, fieldConstraint)"
4676
+ styleClass="p-column-filter-matchmode-dropdown"
4677
+ ></p-dropdown>
4678
+ <p-columnFilterFormElement
4679
+ [type]="type"
4680
+ [field]="field"
4681
+ [filterConstraint]="fieldConstraint"
4682
+ [filterTemplate]="filterTemplate"
4683
+ [placeholder]="placeholder"
4684
+ [minFractionDigits]="minFractionDigits"
4685
+ [maxFractionDigits]="maxFractionDigits"
4686
+ [prefix]="prefix"
4687
+ [suffix]="suffix"
4688
+ [locale]="locale"
4689
+ [localeMatcher]="localeMatcher"
4690
+ [currency]="currency"
4691
+ [currencyDisplay]="currencyDisplay"
4692
+ [useGrouping]="useGrouping"
4693
+ ></p-columnFilterFormElement>
4534
4694
  <div>
4535
- <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>
4695
+ <button
4696
+ *ngIf="showRemoveIcon"
4697
+ type="button"
4698
+ pButton
4699
+ icon="pi pi-trash"
4700
+ class="p-column-filter-remove-button p-button-text p-button-danger p-button-sm"
4701
+ (click)="removeConstraint(fieldConstraint)"
4702
+ pRipple
4703
+ [label]="removeRuleButtonLabel"
4704
+ ></button>
4536
4705
  </div>
4537
4706
  </div>
4538
4707
  </div>
@@ -4544,24 +4713,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
4544
4713
  <button *ngIf="showApplyButton" type="button" pButton (click)="applyFilter()" class="p-button-sm" [label]="applyButtonLabel" pRipple></button>
4545
4714
  </div>
4546
4715
  </ng-template>
4547
- <ng-container *ngTemplateOutlet="footerTemplate; context: {$implicit: field}"></ng-container>
4716
+ <ng-container *ngTemplateOutlet="footerTemplate; context: { $implicit: field }"></ng-container>
4548
4717
  </div>
4549
4718
  </div>
4550
4719
  `,
4551
- animations: [
4552
- trigger('overlayAnimation', [
4553
- transition(':enter', [
4554
- style({ opacity: 0, transform: 'scaleY(0.8)' }),
4555
- animate('.12s cubic-bezier(0, 0, 0.2, 1)')
4556
- ]),
4557
- transition(':leave', [
4558
- animate('.1s linear', style({ opacity: 0 }))
4559
- ])
4560
- ])
4561
- ],
4720
+ 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 }))])])],
4562
4721
  encapsulation: ViewEncapsulation.None,
4563
4722
  host: {
4564
- 'class': 'p-element'
4723
+ class: 'p-element'
4565
4724
  }
4566
4725
  }]
4567
4726
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: Table }, { type: i0.Renderer2 }, { type: i1.PrimeNGConfig }, { type: i1.OverlayService }]; }, propDecorators: { field: [{
@@ -4621,6 +4780,137 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
4621
4780
  type: ContentChildren,
4622
4781
  args: [PrimeTemplate]
4623
4782
  }] } });
4783
+ class ColumnFilterFormElement {
4784
+ constructor(dt, colFilter) {
4785
+ this.dt = dt;
4786
+ this.colFilter = colFilter;
4787
+ this.useGrouping = true;
4788
+ }
4789
+ get showButtons() {
4790
+ return this.colFilter.showButtons;
4791
+ }
4792
+ ngOnInit() {
4793
+ this.filterCallback = (value) => {
4794
+ this.filterConstraint.value = value;
4795
+ this.dt._filter();
4796
+ };
4797
+ }
4798
+ onModelChange(value) {
4799
+ this.filterConstraint.value = value;
4800
+ if (this.type === 'boolean' || value === '') {
4801
+ this.dt._filter();
4802
+ }
4803
+ }
4804
+ onTextInputEnterKeyDown(event) {
4805
+ this.dt._filter();
4806
+ event.preventDefault();
4807
+ }
4808
+ onNumericInputKeyDown(event) {
4809
+ if (event.key === 'Enter') {
4810
+ this.dt._filter();
4811
+ event.preventDefault();
4812
+ }
4813
+ }
4814
+ }
4815
+ 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 });
4816
+ 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: `
4817
+ <ng-container *ngIf="filterTemplate; else builtInElement">
4818
+ <ng-container *ngTemplateOutlet="filterTemplate; context: { $implicit: filterConstraint.value, filterCallback: filterCallback }"></ng-container>
4819
+ </ng-container>
4820
+ <ng-template #builtInElement>
4821
+ <ng-container [ngSwitch]="type">
4822
+ <input *ngSwitchCase="'text'" type="text" pInputText [value]="filterConstraint?.value" (input)="onModelChange($event.target.value)" (keydown.enter)="onTextInputEnterKeyDown($event)" [attr.placeholder]="placeholder" />
4823
+ <p-inputNumber
4824
+ *ngSwitchCase="'numeric'"
4825
+ [ngModel]="filterConstraint?.value"
4826
+ (ngModelChange)="onModelChange($event)"
4827
+ (onKeyDown)="onNumericInputKeyDown($event)"
4828
+ [showButtons]="showButtons"
4829
+ [minFractionDigits]="minFractionDigits"
4830
+ [maxFractionDigits]="maxFractionDigits"
4831
+ [prefix]="prefix"
4832
+ [suffix]="suffix"
4833
+ [placeholder]="placeholder"
4834
+ [mode]="currency ? 'currency' : 'decimal'"
4835
+ [locale]="locale"
4836
+ [localeMatcher]="localeMatcher"
4837
+ [currency]="currency"
4838
+ [currencyDisplay]="currencyDisplay"
4839
+ [useGrouping]="useGrouping"
4840
+ ></p-inputNumber>
4841
+ <p-triStateCheckbox *ngSwitchCase="'boolean'" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-triStateCheckbox>
4842
+ <p-calendar *ngSwitchCase="'date'" [placeholder]="placeholder" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-calendar>
4843
+ </ng-container>
4844
+ </ng-template>
4845
+ `, 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 });
4846
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ColumnFilterFormElement, decorators: [{
4847
+ type: Component,
4848
+ args: [{
4849
+ selector: 'p-columnFilterFormElement',
4850
+ template: `
4851
+ <ng-container *ngIf="filterTemplate; else builtInElement">
4852
+ <ng-container *ngTemplateOutlet="filterTemplate; context: { $implicit: filterConstraint.value, filterCallback: filterCallback }"></ng-container>
4853
+ </ng-container>
4854
+ <ng-template #builtInElement>
4855
+ <ng-container [ngSwitch]="type">
4856
+ <input *ngSwitchCase="'text'" type="text" pInputText [value]="filterConstraint?.value" (input)="onModelChange($event.target.value)" (keydown.enter)="onTextInputEnterKeyDown($event)" [attr.placeholder]="placeholder" />
4857
+ <p-inputNumber
4858
+ *ngSwitchCase="'numeric'"
4859
+ [ngModel]="filterConstraint?.value"
4860
+ (ngModelChange)="onModelChange($event)"
4861
+ (onKeyDown)="onNumericInputKeyDown($event)"
4862
+ [showButtons]="showButtons"
4863
+ [minFractionDigits]="minFractionDigits"
4864
+ [maxFractionDigits]="maxFractionDigits"
4865
+ [prefix]="prefix"
4866
+ [suffix]="suffix"
4867
+ [placeholder]="placeholder"
4868
+ [mode]="currency ? 'currency' : 'decimal'"
4869
+ [locale]="locale"
4870
+ [localeMatcher]="localeMatcher"
4871
+ [currency]="currency"
4872
+ [currencyDisplay]="currencyDisplay"
4873
+ [useGrouping]="useGrouping"
4874
+ ></p-inputNumber>
4875
+ <p-triStateCheckbox *ngSwitchCase="'boolean'" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-triStateCheckbox>
4876
+ <p-calendar *ngSwitchCase="'date'" [placeholder]="placeholder" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)"></p-calendar>
4877
+ </ng-container>
4878
+ </ng-template>
4879
+ `,
4880
+ encapsulation: ViewEncapsulation.None,
4881
+ host: {
4882
+ class: 'p-element'
4883
+ }
4884
+ }]
4885
+ }], ctorParameters: function () { return [{ type: Table }, { type: ColumnFilter }]; }, propDecorators: { field: [{
4886
+ type: Input
4887
+ }], type: [{
4888
+ type: Input
4889
+ }], filterConstraint: [{
4890
+ type: Input
4891
+ }], filterTemplate: [{
4892
+ type: Input
4893
+ }], placeholder: [{
4894
+ type: Input
4895
+ }], minFractionDigits: [{
4896
+ type: Input
4897
+ }], maxFractionDigits: [{
4898
+ type: Input
4899
+ }], prefix: [{
4900
+ type: Input
4901
+ }], suffix: [{
4902
+ type: Input
4903
+ }], locale: [{
4904
+ type: Input
4905
+ }], localeMatcher: [{
4906
+ type: Input
4907
+ }], currency: [{
4908
+ type: Input
4909
+ }], currencyDisplay: [{
4910
+ type: Input
4911
+ }], useGrouping: [{
4912
+ type: Input
4913
+ }] } });
4624
4914
  class TableModule {
4625
4915
  }
4626
4916
  TableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -4631,10 +4921,61 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
4631
4921
  type: NgModule,
4632
4922
  args: [{
4633
4923
  imports: [CommonModule, PaginatorModule, InputTextModule, DropdownModule, FormsModule, ButtonModule, SelectButtonModule, CalendarModule, InputNumberModule, TriStateCheckboxModule, ScrollerModule],
4634
- exports: [Table, SharedModule, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, SortIcon,
4635
- TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ColumnFilter, ColumnFilterFormElement, ScrollerModule],
4636
- declarations: [Table, SortableColumn, FrozenColumn, RowGroupHeader, SelectableRow, RowToggler, ContextMenuRow, ResizableColumn, ReorderableColumn, EditableColumn, CellEditor, TableBody, SortIcon,
4637
- TableRadioButton, TableCheckbox, TableHeaderCheckbox, ReorderableRowHandle, ReorderableRow, SelectableRowDblClick, EditableRow, InitEditableRow, SaveEditableRow, CancelEditableRow, ColumnFilter, ColumnFilterFormElement]
4924
+ exports: [
4925
+ Table,
4926
+ SharedModule,
4927
+ SortableColumn,
4928
+ FrozenColumn,
4929
+ RowGroupHeader,
4930
+ SelectableRow,
4931
+ RowToggler,
4932
+ ContextMenuRow,
4933
+ ResizableColumn,
4934
+ ReorderableColumn,
4935
+ EditableColumn,
4936
+ CellEditor,
4937
+ SortIcon,
4938
+ TableRadioButton,
4939
+ TableCheckbox,
4940
+ TableHeaderCheckbox,
4941
+ ReorderableRowHandle,
4942
+ ReorderableRow,
4943
+ SelectableRowDblClick,
4944
+ EditableRow,
4945
+ InitEditableRow,
4946
+ SaveEditableRow,
4947
+ CancelEditableRow,
4948
+ ColumnFilter,
4949
+ ColumnFilterFormElement,
4950
+ ScrollerModule
4951
+ ],
4952
+ declarations: [
4953
+ Table,
4954
+ SortableColumn,
4955
+ FrozenColumn,
4956
+ RowGroupHeader,
4957
+ SelectableRow,
4958
+ RowToggler,
4959
+ ContextMenuRow,
4960
+ ResizableColumn,
4961
+ ReorderableColumn,
4962
+ EditableColumn,
4963
+ CellEditor,
4964
+ TableBody,
4965
+ SortIcon,
4966
+ TableRadioButton,
4967
+ TableCheckbox,
4968
+ TableHeaderCheckbox,
4969
+ ReorderableRowHandle,
4970
+ ReorderableRow,
4971
+ SelectableRowDblClick,
4972
+ EditableRow,
4973
+ InitEditableRow,
4974
+ SaveEditableRow,
4975
+ CancelEditableRow,
4976
+ ColumnFilter,
4977
+ ColumnFilterFormElement
4978
+ ]
4638
4979
  }]
4639
4980
  }] });
4640
4981