primeng 20.3.0 → 21.0.0-rc.1

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 (543) hide show
  1. package/fesm2022/primeng-accordion.mjs +103 -114
  2. package/fesm2022/primeng-accordion.mjs.map +1 -1
  3. package/fesm2022/primeng-animateonscroll.mjs +7 -7
  4. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  5. package/fesm2022/primeng-api.mjs +31 -31
  6. package/fesm2022/primeng-api.mjs.map +1 -1
  7. package/fesm2022/primeng-autocomplete.mjs +134 -78
  8. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  9. package/fesm2022/primeng-autofocus.mjs +7 -7
  10. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  11. package/fesm2022/primeng-avatar.mjs +40 -17
  12. package/fesm2022/primeng-avatar.mjs.map +1 -1
  13. package/fesm2022/primeng-avatargroup.mjs +10 -10
  14. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  15. package/fesm2022/primeng-badge.mjs +56 -24
  16. package/fesm2022/primeng-badge.mjs.map +1 -1
  17. package/fesm2022/primeng-base.mjs +3 -3
  18. package/fesm2022/primeng-basecomponent.mjs +23 -20
  19. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  20. package/fesm2022/primeng-baseeditableholder.mjs +10 -10
  21. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  22. package/fesm2022/primeng-baseinput.mjs +15 -15
  23. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  24. package/fesm2022/primeng-basemodelholder.mjs +5 -5
  25. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  26. package/fesm2022/primeng-bind.mjs +13 -13
  27. package/fesm2022/primeng-bind.mjs.map +1 -1
  28. package/fesm2022/primeng-blockui.mjs +44 -24
  29. package/fesm2022/primeng-blockui.mjs.map +1 -1
  30. package/fesm2022/primeng-breadcrumb.mjs +99 -56
  31. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  32. package/fesm2022/primeng-button.mjs +212 -93
  33. package/fesm2022/primeng-button.mjs.map +1 -1
  34. package/fesm2022/primeng-buttongroup.mjs +10 -10
  35. package/fesm2022/primeng-card.mjs +31 -11
  36. package/fesm2022/primeng-card.mjs.map +1 -1
  37. package/fesm2022/primeng-carousel.mjs +23 -17
  38. package/fesm2022/primeng-carousel.mjs.map +1 -1
  39. package/fesm2022/primeng-cascadeselect.mjs +55 -46
  40. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  41. package/fesm2022/primeng-chart.mjs +10 -10
  42. package/fesm2022/primeng-chart.mjs.map +1 -1
  43. package/fesm2022/primeng-checkbox.mjs +37 -27
  44. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  45. package/fesm2022/primeng-chip.mjs +28 -12
  46. package/fesm2022/primeng-chip.mjs.map +1 -1
  47. package/fesm2022/primeng-classnames.mjs +10 -10
  48. package/fesm2022/primeng-classnames.mjs.map +1 -1
  49. package/fesm2022/primeng-colorpicker.mjs +120 -189
  50. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  51. package/fesm2022/primeng-config.mjs +16 -22
  52. package/fesm2022/primeng-config.mjs.map +1 -1
  53. package/fesm2022/primeng-confirmdialog.mjs +60 -56
  54. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  55. package/fesm2022/primeng-confirmpopup.mjs +269 -218
  56. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  57. package/fesm2022/primeng-contextmenu.mjs +556 -445
  58. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  59. package/fesm2022/primeng-dataview.mjs +21 -11
  60. package/fesm2022/primeng-dataview.mjs.map +1 -1
  61. package/fesm2022/primeng-datepicker.mjs +818 -861
  62. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  63. package/fesm2022/primeng-dialog.mjs +393 -313
  64. package/fesm2022/primeng-dialog.mjs.map +1 -1
  65. package/fesm2022/primeng-divider.mjs +19 -11
  66. package/fesm2022/primeng-divider.mjs.map +1 -1
  67. package/fesm2022/primeng-dock.mjs +51 -24
  68. package/fesm2022/primeng-dock.mjs.map +1 -1
  69. package/fesm2022/primeng-dragdrop.mjs +10 -10
  70. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  71. package/fesm2022/primeng-drawer.mjs +277 -261
  72. package/fesm2022/primeng-drawer.mjs.map +1 -1
  73. package/fesm2022/primeng-dynamicdialog.mjs +34 -19
  74. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  75. package/fesm2022/primeng-editor.mjs +12 -12
  76. package/fesm2022/primeng-editor.mjs.map +1 -1
  77. package/fesm2022/primeng-fieldset.mjs +108 -90
  78. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  79. package/fesm2022/primeng-fileupload.mjs +76 -66
  80. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  81. package/fesm2022/primeng-floatlabel.mjs +10 -10
  82. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  83. package/fesm2022/primeng-fluid.mjs +10 -10
  84. package/fesm2022/primeng-focustrap.mjs +7 -7
  85. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  86. package/fesm2022/primeng-galleria.mjs +261 -137
  87. package/fesm2022/primeng-galleria.mjs.map +1 -1
  88. package/fesm2022/primeng-iconfield.mjs +10 -10
  89. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  90. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  91. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  92. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  93. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  94. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  95. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  96. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  97. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  98. package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
  99. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  100. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  101. package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
  102. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  103. package/fesm2022/primeng-icons-arrowup.mjs +3 -3
  104. package/fesm2022/primeng-icons-ban.mjs +3 -3
  105. package/fesm2022/primeng-icons-bars.mjs +3 -3
  106. package/fesm2022/primeng-icons-baseicon.mjs +6 -6
  107. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
  108. package/fesm2022/primeng-icons-blank.mjs +3 -3
  109. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  110. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  111. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  112. package/fesm2022/primeng-icons-check.mjs +3 -3
  113. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  114. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  115. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  116. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  117. package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
  118. package/fesm2022/primeng-icons-eye.mjs +3 -3
  119. package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
  120. package/fesm2022/primeng-icons-filter.mjs +3 -3
  121. package/fesm2022/primeng-icons-filterfill.mjs +3 -3
  122. package/fesm2022/primeng-icons-filterslash.mjs +3 -3
  123. package/fesm2022/primeng-icons-home.mjs +3 -3
  124. package/fesm2022/primeng-icons-infocircle.mjs +3 -3
  125. package/fesm2022/primeng-icons-minus.mjs +3 -3
  126. package/fesm2022/primeng-icons-pencil.mjs +3 -3
  127. package/fesm2022/primeng-icons-plus.mjs +3 -3
  128. package/fesm2022/primeng-icons-refresh.mjs +3 -3
  129. package/fesm2022/primeng-icons-search.mjs +3 -3
  130. package/fesm2022/primeng-icons-searchminus.mjs +3 -3
  131. package/fesm2022/primeng-icons-searchplus.mjs +3 -3
  132. package/fesm2022/primeng-icons-sortalt.mjs +3 -3
  133. package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
  134. package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
  135. package/fesm2022/primeng-icons-spinner.mjs +3 -3
  136. package/fesm2022/primeng-icons-star.mjs +3 -3
  137. package/fesm2022/primeng-icons-starfill.mjs +3 -3
  138. package/fesm2022/primeng-icons-thlarge.mjs +3 -3
  139. package/fesm2022/primeng-icons-times.mjs +3 -3
  140. package/fesm2022/primeng-icons-timescircle.mjs +3 -3
  141. package/fesm2022/primeng-icons-trash.mjs +3 -3
  142. package/fesm2022/primeng-icons-undo.mjs +3 -3
  143. package/fesm2022/primeng-icons-upload.mjs +3 -3
  144. package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
  145. package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
  146. package/fesm2022/primeng-iftalabel.mjs +10 -10
  147. package/fesm2022/primeng-image.mjs +225 -182
  148. package/fesm2022/primeng-image.mjs.map +1 -1
  149. package/fesm2022/primeng-imagecompare.mjs +12 -12
  150. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  151. package/fesm2022/primeng-inplace.mjs +22 -22
  152. package/fesm2022/primeng-inplace.mjs.map +1 -1
  153. package/fesm2022/primeng-inputgroup.mjs +10 -10
  154. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  155. package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
  156. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  157. package/fesm2022/primeng-inputicon.mjs +10 -10
  158. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  159. package/fesm2022/primeng-inputmask.mjs +16 -13
  160. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  161. package/fesm2022/primeng-inputnumber.mjs +42 -17
  162. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  163. package/fesm2022/primeng-inputotp.mjs +25 -17
  164. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  165. package/fesm2022/primeng-inputtext.mjs +51 -20
  166. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  167. package/fesm2022/primeng-keyfilter.mjs +7 -7
  168. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  169. package/fesm2022/primeng-knob.mjs +25 -25
  170. package/fesm2022/primeng-knob.mjs.map +1 -1
  171. package/fesm2022/primeng-listbox.mjs +60 -27
  172. package/fesm2022/primeng-listbox.mjs.map +1 -1
  173. package/fesm2022/primeng-megamenu.mjs +136 -52
  174. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  175. package/fesm2022/primeng-menu.mjs +291 -272
  176. package/fesm2022/primeng-menu.mjs.map +1 -1
  177. package/fesm2022/primeng-menubar.mjs +168 -59
  178. package/fesm2022/primeng-menubar.mjs.map +1 -1
  179. package/fesm2022/primeng-message.mjs +121 -145
  180. package/fesm2022/primeng-message.mjs.map +1 -1
  181. package/fesm2022/primeng-metergroup.mjs +108 -25
  182. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  183. package/fesm2022/primeng-motion.mjs +660 -0
  184. package/fesm2022/primeng-motion.mjs.map +1 -0
  185. package/fesm2022/primeng-multiselect.mjs +196 -77
  186. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  187. package/fesm2022/primeng-orderlist.mjs +69 -19
  188. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  189. package/fesm2022/primeng-organizationchart.mjs +25 -27
  190. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  191. package/fesm2022/primeng-overlay.mjs +207 -114
  192. package/fesm2022/primeng-overlay.mjs.map +1 -1
  193. package/fesm2022/primeng-overlaybadge.mjs +10 -10
  194. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  195. package/fesm2022/primeng-paginator.mjs +28 -20
  196. package/fesm2022/primeng-paginator.mjs.map +1 -1
  197. package/fesm2022/primeng-panel.mjs +71 -128
  198. package/fesm2022/primeng-panel.mjs.map +1 -1
  199. package/fesm2022/primeng-panelmenu.mjs +303 -205
  200. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  201. package/fesm2022/primeng-password.mjs +185 -184
  202. package/fesm2022/primeng-password.mjs.map +1 -1
  203. package/fesm2022/primeng-picklist.mjs +133 -95
  204. package/fesm2022/primeng-picklist.mjs.map +1 -1
  205. package/fesm2022/primeng-popover.mjs +151 -246
  206. package/fesm2022/primeng-popover.mjs.map +1 -1
  207. package/fesm2022/primeng-progressbar.mjs +28 -18
  208. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  209. package/fesm2022/primeng-progressspinner.mjs +10 -10
  210. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  211. package/fesm2022/primeng-radiobutton.mjs +30 -18
  212. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  213. package/fesm2022/primeng-rating.mjs +23 -12
  214. package/fesm2022/primeng-rating.mjs.map +1 -1
  215. package/fesm2022/primeng-ripple.mjs +22 -15
  216. package/fesm2022/primeng-ripple.mjs.map +1 -1
  217. package/fesm2022/primeng-scroller.mjs +19 -11
  218. package/fesm2022/primeng-scroller.mjs.map +1 -1
  219. package/fesm2022/primeng-scrollpanel.mjs +26 -22
  220. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  221. package/fesm2022/primeng-scrolltop.mjs +107 -110
  222. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  223. package/fesm2022/primeng-select.mjs +116 -65
  224. package/fesm2022/primeng-select.mjs.map +1 -1
  225. package/fesm2022/primeng-selectbutton.mjs +25 -15
  226. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  227. package/fesm2022/primeng-skeleton.mjs +23 -15
  228. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  229. package/fesm2022/primeng-slider.mjs +50 -25
  230. package/fesm2022/primeng-slider.mjs.map +1 -1
  231. package/fesm2022/primeng-speeddial.mjs +32 -29
  232. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  233. package/fesm2022/primeng-splitbutton.mjs +55 -31
  234. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  235. package/fesm2022/primeng-splitter.mjs +27 -18
  236. package/fesm2022/primeng-splitter.mjs.map +1 -1
  237. package/fesm2022/primeng-stepper.mjs +134 -154
  238. package/fesm2022/primeng-stepper.mjs.map +1 -1
  239. package/fesm2022/primeng-steps.mjs +13 -11
  240. package/fesm2022/primeng-steps.mjs.map +1 -1
  241. package/fesm2022/primeng-styleclass.mjs +8 -8
  242. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  243. package/fesm2022/primeng-table.mjs +719 -550
  244. package/fesm2022/primeng-table.mjs.map +1 -1
  245. package/fesm2022/primeng-tabs.mjs +134 -133
  246. package/fesm2022/primeng-tabs.mjs.map +1 -1
  247. package/fesm2022/primeng-tag.mjs +22 -11
  248. package/fesm2022/primeng-tag.mjs.map +1 -1
  249. package/fesm2022/primeng-terminal.mjs +14 -15
  250. package/fesm2022/primeng-terminal.mjs.map +1 -1
  251. package/fesm2022/primeng-textarea.mjs +39 -17
  252. package/fesm2022/primeng-textarea.mjs.map +1 -1
  253. package/fesm2022/primeng-tieredmenu.mjs +581 -474
  254. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  255. package/fesm2022/primeng-timeline.mjs +36 -23
  256. package/fesm2022/primeng-timeline.mjs.map +1 -1
  257. package/fesm2022/primeng-toast.mjs +155 -129
  258. package/fesm2022/primeng-toast.mjs.map +1 -1
  259. package/fesm2022/primeng-togglebutton.mjs +28 -14
  260. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  261. package/fesm2022/primeng-toggleswitch.mjs +28 -23
  262. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  263. package/fesm2022/primeng-toolbar.mjs +13 -13
  264. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  265. package/fesm2022/primeng-tooltip.mjs +40 -17
  266. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  267. package/fesm2022/primeng-tree.mjs +185 -108
  268. package/fesm2022/primeng-tree.mjs.map +1 -1
  269. package/fesm2022/primeng-treeselect.mjs +70 -43
  270. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  271. package/fesm2022/primeng-treetable.mjs +169 -127
  272. package/fesm2022/primeng-treetable.mjs.map +1 -1
  273. package/fesm2022/primeng-types-motion.mjs +4 -0
  274. package/fesm2022/primeng-types-motion.mjs.map +1 -0
  275. package/fesm2022/primeng-usestyle.mjs +3 -3
  276. package/package.json +653 -645
  277. package/{accordion/index.d.ts → types/primeng-accordion.d.ts} +37 -26
  278. package/{api/index.d.ts → types/primeng-api.d.ts} +27 -1
  279. package/{autocomplete/index.d.ts → types/primeng-autocomplete.d.ts} +37 -27
  280. package/{avatar/index.d.ts → types/primeng-avatar.d.ts} +18 -1
  281. package/{badge/index.d.ts → types/primeng-badge.d.ts} +36 -17
  282. package/{basecomponent/index.d.ts → types/primeng-basecomponent.d.ts} +6 -5
  283. package/{bind/index.d.ts → types/primeng-bind.d.ts} +2 -2
  284. package/{breadcrumb/index.d.ts → types/primeng-breadcrumb.d.ts} +7 -7
  285. package/{button/index.d.ts → types/primeng-button.d.ts} +89 -40
  286. package/{card/index.d.ts → types/primeng-card.d.ts} +30 -10
  287. package/{carousel/index.d.ts → types/primeng-carousel.d.ts} +16 -16
  288. package/{cascadeselect/index.d.ts → types/primeng-cascadeselect.d.ts} +33 -27
  289. package/{checkbox/index.d.ts → types/primeng-checkbox.d.ts} +5 -4
  290. package/{chip/index.d.ts → types/primeng-chip.d.ts} +14 -2
  291. package/{classnames/index.d.ts → types/primeng-classnames.d.ts} +1 -1
  292. package/{colorpicker/index.d.ts → types/primeng-colorpicker.d.ts} +28 -29
  293. package/{config/index.d.ts → types/primeng-config.d.ts} +0 -6
  294. package/{confirmdialog/index.d.ts → types/primeng-confirmdialog.d.ts} +51 -23
  295. package/{confirmpopup/index.d.ts → types/primeng-confirmpopup.d.ts} +64 -26
  296. package/{contextmenu/index.d.ts → types/primeng-contextmenu.d.ts} +47 -34
  297. package/{dataview/index.d.ts → types/primeng-dataview.d.ts} +19 -13
  298. package/{datepicker/index.d.ts → types/primeng-datepicker.d.ts} +52 -35
  299. package/{dialog/index.d.ts → types/primeng-dialog.d.ts} +92 -47
  300. package/{divider/index.d.ts → types/primeng-divider.d.ts} +1 -0
  301. package/{dock/index.d.ts → types/primeng-dock.d.ts} +8 -3
  302. package/{drawer/index.d.ts → types/primeng-drawer.d.ts} +51 -37
  303. package/{dynamicdialog/index.d.ts → types/primeng-dynamicdialog.d.ts} +22 -9
  304. package/{fieldset/index.d.ts → types/primeng-fieldset.d.ts} +43 -24
  305. package/{fileupload/index.d.ts → types/primeng-fileupload.d.ts} +31 -28
  306. package/{galleria/index.d.ts → types/primeng-galleria.d.ts} +96 -31
  307. package/{image/index.d.ts → types/primeng-image.d.ts} +69 -40
  308. package/{imagecompare/index.d.ts → types/primeng-imagecompare.d.ts} +6 -6
  309. package/{inplace/index.d.ts → types/primeng-inplace.d.ts} +10 -10
  310. package/{inputmask/index.d.ts → types/primeng-inputmask.d.ts} +3 -3
  311. package/{inputnumber/index.d.ts → types/primeng-inputnumber.d.ts} +10 -9
  312. package/{inputotp/index.d.ts → types/primeng-inputotp.d.ts} +6 -43
  313. package/types/primeng-inputtext.d.ts +116 -0
  314. package/{knob/index.d.ts → types/primeng-knob.d.ts} +1 -1
  315. package/{listbox/index.d.ts → types/primeng-listbox.d.ts} +41 -23
  316. package/{megamenu/index.d.ts → types/primeng-megamenu.d.ts} +23 -19
  317. package/{menu/index.d.ts → types/primeng-menu.d.ts} +31 -20
  318. package/{menubar/index.d.ts → types/primeng-menubar.d.ts} +19 -16
  319. package/{message/index.d.ts → types/primeng-message.d.ts} +22 -12
  320. package/{metergroup/index.d.ts → types/primeng-metergroup.d.ts} +44 -12
  321. package/types/primeng-motion.d.ts +396 -0
  322. package/{multiselect/index.d.ts → types/primeng-multiselect.d.ts} +119 -41
  323. package/{orderlist/index.d.ts → types/primeng-orderlist.d.ts} +25 -21
  324. package/{overlay/index.d.ts → types/primeng-overlay.d.ts} +88 -20
  325. package/{paginator/index.d.ts → types/primeng-paginator.d.ts} +25 -25
  326. package/{panel/index.d.ts → types/primeng-panel.d.ts} +30 -17
  327. package/{panelmenu/index.d.ts → types/primeng-panelmenu.d.ts} +25 -28
  328. package/{password/index.d.ts → types/primeng-password.d.ts} +74 -27
  329. package/{picklist/index.d.ts → types/primeng-picklist.d.ts} +59 -67
  330. package/{popover/index.d.ts → types/primeng-popover.d.ts} +32 -14
  331. package/{progressbar/index.d.ts → types/primeng-progressbar.d.ts} +9 -5
  332. package/{radiobutton/index.d.ts → types/primeng-radiobutton.d.ts} +1 -0
  333. package/{rating/index.d.ts → types/primeng-rating.d.ts} +11 -6
  334. package/{scroller/index.d.ts → types/primeng-scroller.d.ts} +17 -9
  335. package/{scrollpanel/index.d.ts → types/primeng-scrollpanel.d.ts} +3 -3
  336. package/{scrolltop/index.d.ts → types/primeng-scrolltop.d.ts} +21 -9
  337. package/{select/index.d.ts → types/primeng-select.d.ts} +46 -36
  338. package/{selectbutton/index.d.ts → types/primeng-selectbutton.d.ts} +7 -4
  339. package/{skeleton/index.d.ts → types/primeng-skeleton.d.ts} +1 -0
  340. package/{slider/index.d.ts → types/primeng-slider.d.ts} +1 -0
  341. package/{speeddial/index.d.ts → types/primeng-speeddial.d.ts} +17 -17
  342. package/{splitbutton/index.d.ts → types/primeng-splitbutton.d.ts} +23 -12
  343. package/{splitter/index.d.ts → types/primeng-splitter.d.ts} +1 -0
  344. package/{stepper/index.d.ts → types/primeng-stepper.d.ts} +12 -7
  345. package/{table/index.d.ts → types/primeng-table.d.ts} +51 -10
  346. package/{tabs/index.d.ts → types/primeng-tabs.d.ts} +57 -56
  347. package/{tag/index.d.ts → types/primeng-tag.d.ts} +7 -2
  348. package/{textarea/index.d.ts → types/primeng-textarea.d.ts} +14 -1
  349. package/{tieredmenu/index.d.ts → types/primeng-tieredmenu.d.ts} +51 -33
  350. package/{timeline/index.d.ts → types/primeng-timeline.d.ts} +14 -7
  351. package/{toast/index.d.ts → types/primeng-toast.d.ts} +40 -13
  352. package/{togglebutton/index.d.ts → types/primeng-togglebutton.d.ts} +10 -5
  353. package/{toggleswitch/index.d.ts → types/primeng-toggleswitch.d.ts} +6 -18
  354. package/{toolbar/index.d.ts → types/primeng-toolbar.d.ts} +9 -9
  355. package/{tooltip/index.d.ts → types/primeng-tooltip.d.ts} +21 -3
  356. package/{tree/index.d.ts → types/primeng-tree.d.ts} +77 -53
  357. package/{treeselect/index.d.ts → types/primeng-treeselect.d.ts} +62 -42
  358. package/{treetable/index.d.ts → types/primeng-treetable.d.ts} +55 -53
  359. package/types/{accordion/index.d.ts → primeng-types-accordion.d.ts} +9 -0
  360. package/types/{autocomplete/index.d.ts → primeng-types-autocomplete.d.ts} +76 -63
  361. package/types/{breadcrumb/index.d.ts → primeng-types-breadcrumb.d.ts} +27 -1
  362. package/types/{button/index.d.ts → primeng-types-button.d.ts} +37 -18
  363. package/types/{card/index.d.ts → primeng-types-card.d.ts} +10 -10
  364. package/types/{carousel/index.d.ts → primeng-types-carousel.d.ts} +22 -19
  365. package/types/{cascadeselect/index.d.ts → primeng-types-cascadeselect.d.ts} +44 -27
  366. package/types/{checkbox/index.d.ts → primeng-types-checkbox.d.ts} +22 -3
  367. package/types/{chip/index.d.ts → primeng-types-chip.d.ts} +4 -4
  368. package/types/{colorpicker/index.d.ts → primeng-types-colorpicker.d.ts} +5 -0
  369. package/types/{confirmdialog/index.d.ts → primeng-types-confirmdialog.d.ts} +46 -20
  370. package/types/{confirmpopup/index.d.ts → primeng-types-confirmpopup.d.ts} +36 -13
  371. package/types/{contextmenu/index.d.ts → primeng-types-contextmenu.d.ts} +31 -18
  372. package/types/{dataview/index.d.ts → primeng-types-dataview.d.ts} +63 -44
  373. package/types/{datepicker/index.d.ts → primeng-types-datepicker.d.ts} +111 -54
  374. package/types/{dialog/index.d.ts → primeng-types-dialog.d.ts} +15 -6
  375. package/types/{dock/index.d.ts → primeng-types-dock.d.ts} +13 -10
  376. package/types/{drawer/index.d.ts → primeng-types-drawer.d.ts} +12 -7
  377. package/types/{fieldset/index.d.ts → primeng-types-fieldset.d.ts} +15 -6
  378. package/types/primeng-types-fileupload.d.ts +360 -0
  379. package/types/{galleria/index.d.ts → primeng-types-galleria.d.ts} +72 -55
  380. package/types/{image/index.d.ts → primeng-types-image.d.ts} +45 -94
  381. package/types/{imagecompare/index.d.ts → primeng-types-imagecompare.d.ts} +16 -1
  382. package/types/{inplace/index.d.ts → primeng-types-inplace.d.ts} +18 -7
  383. package/types/{inputmask/index.d.ts → primeng-types-inputmask.d.ts} +1 -1
  384. package/types/{inputnumber/index.d.ts → primeng-types-inputnumber.d.ts} +3 -3
  385. package/types/primeng-types-inputotp.d.ts +101 -0
  386. package/types/{listbox/index.d.ts → primeng-types-listbox.d.ts} +123 -44
  387. package/types/{megamenu/index.d.ts → primeng-types-megamenu.d.ts} +30 -14
  388. package/types/{menu/index.d.ts → primeng-types-menu.d.ts} +35 -22
  389. package/types/{menubar/index.d.ts → primeng-types-menubar.d.ts} +23 -20
  390. package/types/{message/index.d.ts → primeng-types-message.d.ts} +36 -1
  391. package/types/{metergroup/index.d.ts → primeng-types-metergroup.d.ts} +78 -80
  392. package/types/primeng-types-motion.d.ts +26 -0
  393. package/types/{multiselect/index.d.ts → primeng-types-multiselect.d.ts} +135 -83
  394. package/types/{orderlist/index.d.ts → primeng-types-orderlist.d.ts} +44 -35
  395. package/types/primeng-types-overlay.d.ts +60 -0
  396. package/types/{paginator/index.d.ts → primeng-types-paginator.d.ts} +42 -6
  397. package/types/{panel/index.d.ts → primeng-types-panel.d.ts} +38 -1
  398. package/types/{panelmenu/index.d.ts → primeng-types-panelmenu.d.ts} +27 -10
  399. package/types/{password/index.d.ts → primeng-types-password.d.ts} +30 -7
  400. package/types/{picklist/index.d.ts → primeng-types-picklist.d.ts} +69 -74
  401. package/types/{popover/index.d.ts → primeng-types-popover.d.ts} +19 -12
  402. package/types/{progressbar/index.d.ts → primeng-types-progressbar.d.ts} +13 -9
  403. package/types/{rating/index.d.ts → primeng-types-rating.d.ts} +19 -7
  404. package/types/{scroller/index.d.ts → primeng-types-scroller.d.ts} +60 -50
  405. package/types/{scrollpanel/index.d.ts → primeng-types-scrollpanel.d.ts} +1 -1
  406. package/types/{scrolltop/index.d.ts → primeng-types-scrolltop.d.ts} +19 -10
  407. package/types/{select/index.d.ts → primeng-types-select.d.ts} +80 -49
  408. package/types/{selectbutton/index.d.ts → primeng-types-selectbutton.d.ts} +17 -2
  409. package/types/{speeddial/index.d.ts → primeng-types-speeddial.d.ts} +35 -17
  410. package/types/{splitbutton/index.d.ts → primeng-types-splitbutton.d.ts} +4 -4
  411. package/types/{splitter/index.d.ts → primeng-types-splitter.d.ts} +2 -2
  412. package/types/{stepper/index.d.ts → primeng-types-stepper.d.ts} +9 -0
  413. package/types/{table/index.d.ts → primeng-types-table.d.ts} +20 -11
  414. package/types/{tag/index.d.ts → primeng-types-tag.d.ts} +2 -2
  415. package/types/{tieredmenu/index.d.ts → primeng-types-tieredmenu.d.ts} +25 -17
  416. package/types/{timeline/index.d.ts → primeng-types-timeline.d.ts} +19 -29
  417. package/types/{toast/index.d.ts → primeng-types-toast.d.ts} +39 -22
  418. package/types/{togglebutton/index.d.ts → primeng-types-togglebutton.d.ts} +25 -24
  419. package/types/{toggleswitch/index.d.ts → primeng-types-toggleswitch.d.ts} +23 -1
  420. package/types/{toolbar/index.d.ts → primeng-types-toolbar.d.ts} +6 -6
  421. package/types/{tree/index.d.ts → primeng-types-tree.d.ts} +75 -41
  422. package/types/{treeselect/index.d.ts → primeng-types-treeselect.d.ts} +80 -53
  423. package/types/{treetable/index.d.ts → primeng-types-treetable.d.ts} +145 -156
  424. package/inputtext/index.d.ts +0 -97
  425. package/types/fileupload/index.d.ts +0 -576
  426. package/types/inputotp/index.d.ts +0 -31
  427. package/types/overlay/index.d.ts +0 -28
  428. /package/{animateonscroll/index.d.ts → types/primeng-animateonscroll.d.ts} +0 -0
  429. /package/{autofocus/index.d.ts → types/primeng-autofocus.d.ts} +0 -0
  430. /package/{avatargroup/index.d.ts → types/primeng-avatargroup.d.ts} +0 -0
  431. /package/{base/index.d.ts → types/primeng-base.d.ts} +0 -0
  432. /package/{baseeditableholder/index.d.ts → types/primeng-baseeditableholder.d.ts} +0 -0
  433. /package/{baseinput/index.d.ts → types/primeng-baseinput.d.ts} +0 -0
  434. /package/{basemodelholder/index.d.ts → types/primeng-basemodelholder.d.ts} +0 -0
  435. /package/{blockui/index.d.ts → types/primeng-blockui.d.ts} +0 -0
  436. /package/{buttongroup/index.d.ts → types/primeng-buttongroup.d.ts} +0 -0
  437. /package/{chart/index.d.ts → types/primeng-chart.d.ts} +0 -0
  438. /package/{dom/index.d.ts → types/primeng-dom.d.ts} +0 -0
  439. /package/{dragdrop/index.d.ts → types/primeng-dragdrop.d.ts} +0 -0
  440. /package/{editor/index.d.ts → types/primeng-editor.d.ts} +0 -0
  441. /package/{floatlabel/index.d.ts → types/primeng-floatlabel.d.ts} +0 -0
  442. /package/{fluid/index.d.ts → types/primeng-fluid.d.ts} +0 -0
  443. /package/{focustrap/index.d.ts → types/primeng-focustrap.d.ts} +0 -0
  444. /package/{iconfield/index.d.ts → types/primeng-iconfield.d.ts} +0 -0
  445. /package/{icons/angledoubledown/index.d.ts → types/primeng-icons-angledoubledown.d.ts} +0 -0
  446. /package/{icons/angledoubleleft/index.d.ts → types/primeng-icons-angledoubleleft.d.ts} +0 -0
  447. /package/{icons/angledoubleright/index.d.ts → types/primeng-icons-angledoubleright.d.ts} +0 -0
  448. /package/{icons/angledoubleup/index.d.ts → types/primeng-icons-angledoubleup.d.ts} +0 -0
  449. /package/{icons/angledown/index.d.ts → types/primeng-icons-angledown.d.ts} +0 -0
  450. /package/{icons/angleleft/index.d.ts → types/primeng-icons-angleleft.d.ts} +0 -0
  451. /package/{icons/angleright/index.d.ts → types/primeng-icons-angleright.d.ts} +0 -0
  452. /package/{icons/angleup/index.d.ts → types/primeng-icons-angleup.d.ts} +0 -0
  453. /package/{icons/arrowdown/index.d.ts → types/primeng-icons-arrowdown.d.ts} +0 -0
  454. /package/{icons/arrowdownleft/index.d.ts → types/primeng-icons-arrowdownleft.d.ts} +0 -0
  455. /package/{icons/arrowdownright/index.d.ts → types/primeng-icons-arrowdownright.d.ts} +0 -0
  456. /package/{icons/arrowleft/index.d.ts → types/primeng-icons-arrowleft.d.ts} +0 -0
  457. /package/{icons/arrowright/index.d.ts → types/primeng-icons-arrowright.d.ts} +0 -0
  458. /package/{icons/arrowup/index.d.ts → types/primeng-icons-arrowup.d.ts} +0 -0
  459. /package/{icons/ban/index.d.ts → types/primeng-icons-ban.d.ts} +0 -0
  460. /package/{icons/bars/index.d.ts → types/primeng-icons-bars.d.ts} +0 -0
  461. /package/{icons/baseicon/index.d.ts → types/primeng-icons-baseicon.d.ts} +0 -0
  462. /package/{icons/blank/index.d.ts → types/primeng-icons-blank.d.ts} +0 -0
  463. /package/{icons/calendar/index.d.ts → types/primeng-icons-calendar.d.ts} +0 -0
  464. /package/{icons/caretleft/index.d.ts → types/primeng-icons-caretleft.d.ts} +0 -0
  465. /package/{icons/caretright/index.d.ts → types/primeng-icons-caretright.d.ts} +0 -0
  466. /package/{icons/check/index.d.ts → types/primeng-icons-check.d.ts} +0 -0
  467. /package/{icons/chevrondown/index.d.ts → types/primeng-icons-chevrondown.d.ts} +0 -0
  468. /package/{icons/chevronleft/index.d.ts → types/primeng-icons-chevronleft.d.ts} +0 -0
  469. /package/{icons/chevronright/index.d.ts → types/primeng-icons-chevronright.d.ts} +0 -0
  470. /package/{icons/chevronup/index.d.ts → types/primeng-icons-chevronup.d.ts} +0 -0
  471. /package/{icons/exclamationtriangle/index.d.ts → types/primeng-icons-exclamationtriangle.d.ts} +0 -0
  472. /package/{icons/eye/index.d.ts → types/primeng-icons-eye.d.ts} +0 -0
  473. /package/{icons/eyeslash/index.d.ts → types/primeng-icons-eyeslash.d.ts} +0 -0
  474. /package/{icons/filter/index.d.ts → types/primeng-icons-filter.d.ts} +0 -0
  475. /package/{icons/filterfill/index.d.ts → types/primeng-icons-filterfill.d.ts} +0 -0
  476. /package/{icons/filterslash/index.d.ts → types/primeng-icons-filterslash.d.ts} +0 -0
  477. /package/{icons/home/index.d.ts → types/primeng-icons-home.d.ts} +0 -0
  478. /package/{icons/infocircle/index.d.ts → types/primeng-icons-infocircle.d.ts} +0 -0
  479. /package/{icons/minus/index.d.ts → types/primeng-icons-minus.d.ts} +0 -0
  480. /package/{icons/pencil/index.d.ts → types/primeng-icons-pencil.d.ts} +0 -0
  481. /package/{icons/plus/index.d.ts → types/primeng-icons-plus.d.ts} +0 -0
  482. /package/{icons/refresh/index.d.ts → types/primeng-icons-refresh.d.ts} +0 -0
  483. /package/{icons/search/index.d.ts → types/primeng-icons-search.d.ts} +0 -0
  484. /package/{icons/searchminus/index.d.ts → types/primeng-icons-searchminus.d.ts} +0 -0
  485. /package/{icons/searchplus/index.d.ts → types/primeng-icons-searchplus.d.ts} +0 -0
  486. /package/{icons/sortalt/index.d.ts → types/primeng-icons-sortalt.d.ts} +0 -0
  487. /package/{icons/sortamountdown/index.d.ts → types/primeng-icons-sortamountdown.d.ts} +0 -0
  488. /package/{icons/sortamountupalt/index.d.ts → types/primeng-icons-sortamountupalt.d.ts} +0 -0
  489. /package/{icons/spinner/index.d.ts → types/primeng-icons-spinner.d.ts} +0 -0
  490. /package/{icons/star/index.d.ts → types/primeng-icons-star.d.ts} +0 -0
  491. /package/{icons/starfill/index.d.ts → types/primeng-icons-starfill.d.ts} +0 -0
  492. /package/{icons/thlarge/index.d.ts → types/primeng-icons-thlarge.d.ts} +0 -0
  493. /package/{icons/times/index.d.ts → types/primeng-icons-times.d.ts} +0 -0
  494. /package/{icons/timescircle/index.d.ts → types/primeng-icons-timescircle.d.ts} +0 -0
  495. /package/{icons/trash/index.d.ts → types/primeng-icons-trash.d.ts} +0 -0
  496. /package/{icons/undo/index.d.ts → types/primeng-icons-undo.d.ts} +0 -0
  497. /package/{icons/upload/index.d.ts → types/primeng-icons-upload.d.ts} +0 -0
  498. /package/{icons/windowmaximize/index.d.ts → types/primeng-icons-windowmaximize.d.ts} +0 -0
  499. /package/{icons/windowminimize/index.d.ts → types/primeng-icons-windowminimize.d.ts} +0 -0
  500. /package/{icons/index.d.ts → types/primeng-icons.d.ts} +0 -0
  501. /package/{iftalabel/index.d.ts → types/primeng-iftalabel.d.ts} +0 -0
  502. /package/{inputgroup/index.d.ts → types/primeng-inputgroup.d.ts} +0 -0
  503. /package/{inputgroupaddon/index.d.ts → types/primeng-inputgroupaddon.d.ts} +0 -0
  504. /package/{inputicon/index.d.ts → types/primeng-inputicon.d.ts} +0 -0
  505. /package/{keyfilter/index.d.ts → types/primeng-keyfilter.d.ts} +0 -0
  506. /package/{organizationchart/index.d.ts → types/primeng-organizationchart.d.ts} +0 -0
  507. /package/{overlaybadge/index.d.ts → types/primeng-overlaybadge.d.ts} +0 -0
  508. /package/{passthrough/index.d.ts → types/primeng-passthrough.d.ts} +0 -0
  509. /package/{progressspinner/index.d.ts → types/primeng-progressspinner.d.ts} +0 -0
  510. /package/{ripple/index.d.ts → types/primeng-ripple.d.ts} +0 -0
  511. /package/{steps/index.d.ts → types/primeng-steps.d.ts} +0 -0
  512. /package/{styleclass/index.d.ts → types/primeng-styleclass.d.ts} +0 -0
  513. /package/{terminal/index.d.ts → types/primeng-terminal.d.ts} +0 -0
  514. /package/{ts-helpers/index.d.ts → types/primeng-ts-helpers.d.ts} +0 -0
  515. /package/types/{avatar/index.d.ts → primeng-types-avatar.d.ts} +0 -0
  516. /package/types/{avatargroup/index.d.ts → primeng-types-avatargroup.d.ts} +0 -0
  517. /package/types/{badge/index.d.ts → primeng-types-badge.d.ts} +0 -0
  518. /package/types/{blockui/index.d.ts → primeng-types-blockui.d.ts} +0 -0
  519. /package/types/{chart/index.d.ts → primeng-types-chart.d.ts} +0 -0
  520. /package/types/{divider/index.d.ts → primeng-types-divider.d.ts} +0 -0
  521. /package/types/{editor/index.d.ts → primeng-types-editor.d.ts} +0 -0
  522. /package/types/{floatlabel/index.d.ts → primeng-types-floatlabel.d.ts} +0 -0
  523. /package/types/{fluid/index.d.ts → primeng-types-fluid.d.ts} +0 -0
  524. /package/types/{iconfield/index.d.ts → primeng-types-iconfield.d.ts} +0 -0
  525. /package/types/{iftalabel/index.d.ts → primeng-types-iftalabel.d.ts} +0 -0
  526. /package/types/{inputgroup/index.d.ts → primeng-types-inputgroup.d.ts} +0 -0
  527. /package/types/{inputgroupaddon/index.d.ts → primeng-types-inputgroupaddon.d.ts} +0 -0
  528. /package/types/{inputicon/index.d.ts → primeng-types-inputicon.d.ts} +0 -0
  529. /package/types/{inputtext/index.d.ts → primeng-types-inputtext.d.ts} +0 -0
  530. /package/types/{knob/index.d.ts → primeng-types-knob.d.ts} +0 -0
  531. /package/types/{organizationchart/index.d.ts → primeng-types-organizationchart.d.ts} +0 -0
  532. /package/types/{overlaybadge/index.d.ts → primeng-types-overlaybadge.d.ts} +0 -0
  533. /package/types/{progressspinner/index.d.ts → primeng-types-progressspinner.d.ts} +0 -0
  534. /package/types/{radiobutton/index.d.ts → primeng-types-radiobutton.d.ts} +0 -0
  535. /package/types/{skeleton/index.d.ts → primeng-types-skeleton.d.ts} +0 -0
  536. /package/types/{slider/index.d.ts → primeng-types-slider.d.ts} +0 -0
  537. /package/types/{tabs/index.d.ts → primeng-types-tabs.d.ts} +0 -0
  538. /package/types/{terminal/index.d.ts → primeng-types-terminal.d.ts} +0 -0
  539. /package/types/{textarea/index.d.ts → primeng-types-textarea.d.ts} +0 -0
  540. /package/types/{tooltip/index.d.ts → primeng-types-tooltip.d.ts} +0 -0
  541. /package/{usestyle/index.d.ts → types/primeng-usestyle.d.ts} +0 -0
  542. /package/{utils/index.d.ts → types/primeng-utils.d.ts} +0 -0
  543. /package/{index.d.ts → types/primeng.d.ts} +0 -0
@@ -1,9 +1,8 @@
1
1
  export * from 'primeng/types/datepicker';
2
- import { trigger, state, transition, style as style$2, animate } from '@angular/animations';
3
2
  import * as i3 from '@angular/common';
4
3
  import { CommonModule } from '@angular/common';
5
4
  import * as i0 from '@angular/core';
6
- import { Injectable, forwardRef, InjectionToken, inject, input, EventEmitter, computed, numberAttribute, booleanAttribute, ContentChildren, ContentChild, ViewChild, Output, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
5
+ import { Injectable, forwardRef, InjectionToken, inject, input, computed, EventEmitter, numberAttribute, booleanAttribute, ContentChildren, ContentChild, ViewChild, Output, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
7
6
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
8
7
  import { uuid, getOuterWidth, isDate, findSingle, getFocusableElements, hasClass, getIndex, find, isNotEmpty, addStyle, appendChild, absolutePosition, relativePosition, addClass, setAttribute, isTouchDevice } from '@primeuix/utils';
9
8
  import * as i1 from 'primeng/api';
@@ -17,18 +16,20 @@ import { Button } from 'primeng/button';
17
16
  import { blockBodyScroll, unblockBodyScroll, ConnectedOverlayScrollHandler } from 'primeng/dom';
18
17
  import { ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronDownIcon, TimesIcon, CalendarIcon } from 'primeng/icons';
19
18
  import { InputText } from 'primeng/inputtext';
19
+ import * as i4 from 'primeng/motion';
20
+ import { MotionModule } from 'primeng/motion';
20
21
  import { Ripple } from 'primeng/ripple';
21
22
  import { ZIndexUtils } from 'primeng/utils';
22
23
  import { style as style$1 } from '@primeuix/styles/datepicker';
23
24
  import { BaseStyle } from 'primeng/base';
24
25
 
25
26
  const style = /*css*/ `
26
- ${style$1}
27
+ ${style$1}
27
28
 
28
- /* For PrimeNG */
29
- .p-datepicker.ng-invalid.ng-dirty .p-inputtext {
30
- border-color: dt('inputtext.invalid.border.color');
31
- }
29
+ /* For PrimeNG */
30
+ .p-datepicker.ng-invalid.ng-dirty .p-inputtext {
31
+ border-color: dt('inputtext.invalid.border.color');
32
+ }
32
33
  `;
33
34
  const inlineStyles = {
34
35
  root: () => ({ position: 'relative' })
@@ -130,10 +131,10 @@ class DatePickerStyle extends BaseStyle {
130
131
  style = style;
131
132
  classes = classes;
132
133
  inlineStyles = inlineStyles;
133
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: DatePickerStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
134
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: DatePickerStyle });
134
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: DatePickerStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
135
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: DatePickerStyle });
135
136
  }
136
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: DatePickerStyle, decorators: [{
137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: DatePickerStyle, decorators: [{
137
138
  type: Injectable
138
139
  }] });
139
140
  /**
@@ -561,11 +562,13 @@ class DatePicker extends BaseInput {
561
562
  /**
562
563
  * Transition options of the show animation.
563
564
  * @group Props
565
+ * @deprecated since v21.0.0, use `motionOptions` instead.
564
566
  */
565
567
  showTransitionOptions = '.12s cubic-bezier(0, 0, 0.2, 1)';
566
568
  /**
567
569
  * Transition options of the hide animation.
568
570
  * @group Props
571
+ * @deprecated since v21.0.0, use `motionOptions` instead.
569
572
  */
570
573
  hideTransitionOptions = '.1s linear';
571
574
  /**
@@ -707,7 +710,18 @@ class DatePicker extends BaseInput {
707
710
  * @defaultValue 'self'
708
711
  * @group Props
709
712
  */
710
- appendTo = input(undefined, ...(ngDevMode ? [{ debugName: "appendTo" }] : []));
713
+ appendTo = input(undefined, { ...(ngDevMode ? { debugName: "appendTo" } : {}) });
714
+ /**
715
+ * The motion options.
716
+ * @group Props
717
+ */
718
+ motionOptions = input(undefined, { ...(ngDevMode ? { debugName: "motionOptions" } : {}) });
719
+ computedMotionOptions = computed(() => {
720
+ return {
721
+ ...this.ptm('motion'),
722
+ ...this.motionOptions()
723
+ };
724
+ }, { ...(ngDevMode ? { debugName: "computedMotionOptions" } : {}) });
711
725
  /**
712
726
  * Callback to invoke on focus of input field.
713
727
  * @param {Event} event - browser event.
@@ -722,7 +736,7 @@ class DatePicker extends BaseInput {
722
736
  onBlur = new EventEmitter();
723
737
  /**
724
738
  * Callback to invoke when date panel closed.
725
- * @param {Event} event - Mouse event
739
+ * @param {HTMLDivElement} element - The element being transitioned/animated.
726
740
  * @group Emits
727
741
  */
728
742
  onClose = new EventEmitter();
@@ -774,13 +788,14 @@ class DatePicker extends BaseInput {
774
788
  onClickOutside = new EventEmitter();
775
789
  /**
776
790
  * Callback to invoke when datepicker panel is shown.
791
+ * @param {HTMLDivElement} element - The element being transitioned/animated.
777
792
  * @group Emits
778
793
  */
779
794
  onShow = new EventEmitter();
780
795
  inputfieldViewChild;
781
796
  set content(content) {
782
797
  this.contentViewChild = content;
783
- if (this.contentViewChild) {
798
+ if (this.contentViewChild && this.overlay) {
784
799
  if (this.isMonthNavigate) {
785
800
  Promise.resolve(null).then(() => this.updateFocus());
786
801
  this.isMonthNavigate = false;
@@ -810,7 +825,8 @@ class DatePicker extends BaseInput {
810
825
  overlay;
811
826
  responsiveStyleElement;
812
827
  overlayVisible;
813
- $appendTo = computed(() => this.appendTo() || this.config.overlayAppendTo(), ...(ngDevMode ? [{ debugName: "$appendTo" }] : []));
828
+ overlayMinWidth;
829
+ $appendTo = computed(() => this.appendTo() || this.config.overlayAppendTo(), { ...(ngDevMode ? { debugName: "$appendTo" } : {}) });
814
830
  calendarElement;
815
831
  timePickerTimer;
816
832
  documentClickListener;
@@ -831,6 +847,7 @@ class DatePicker extends BaseInput {
831
847
  }
832
848
  /**
833
849
  * Custom template for date cells.
850
+ * @param {DatePickerDateTemplateContext} context - date template context.
834
851
  * @group Templates
835
852
  */
836
853
  dateTemplate;
@@ -846,11 +863,13 @@ class DatePicker extends BaseInput {
846
863
  footerTemplate;
847
864
  /**
848
865
  * Custom template for disabled date cells.
866
+ * @param {DatePickerDisabledDateTemplateContext} context - disabled date template context.
849
867
  * @group Templates
850
868
  */
851
869
  disabledDateTemplate;
852
870
  /**
853
871
  * Custom template for decade view.
872
+ * @param {DatePickerDecadeTemplateContext} context - decade template context.
854
873
  * @group Templates
855
874
  */
856
875
  decadeTemplate;
@@ -886,11 +905,13 @@ class DatePicker extends BaseInput {
886
905
  incrementIconTemplate;
887
906
  /**
888
907
  * Custom template for input icon.
908
+ * @param {DatePickerInputIconTemplateContext} context - input icon template context.
889
909
  * @group Templates
890
910
  */
891
911
  inputIconTemplate;
892
912
  /**
893
913
  * Custom template for button bar.
914
+ * @param {DatePickerButtonBarTemplateContext} context - button bar template context.
894
915
  * @group Templates
895
916
  */
896
917
  buttonBarTemplate;
@@ -972,7 +993,9 @@ class DatePicker extends BaseInput {
972
993
  onAfterViewInit() {
973
994
  if (this.inline) {
974
995
  this.contentViewChild && this.contentViewChild.nativeElement.setAttribute(this.attributeSelector, '');
975
- if (!this.$disabled() && !this.inline) {
996
+ }
997
+ else {
998
+ if (!this.$disabled() && this.overlay) {
976
999
  this.initFocusableCell();
977
1000
  if (this.numberOfMonths === 1) {
978
1001
  if (this.contentViewChild && this.contentViewChild.nativeElement) {
@@ -2655,6 +2678,7 @@ class DatePicker extends BaseInput {
2655
2678
  if (!this.touchUI) {
2656
2679
  this.preventFocus = true;
2657
2680
  }
2681
+ this.overlayMinWidth = this.el.nativeElement.offsetWidth;
2658
2682
  this.overlayVisible = true;
2659
2683
  }
2660
2684
  }
@@ -2678,49 +2702,25 @@ class DatePicker extends BaseInput {
2678
2702
  }
2679
2703
  }
2680
2704
  }
2681
- onOverlayAnimationStart(event) {
2682
- switch (event.toState) {
2683
- case 'visible':
2684
- case 'visibleTouchUI':
2685
- if (!this.inline) {
2686
- this.overlay = event.element;
2687
- this.$attrSelector && this.overlay.setAttribute(this.$attrSelector, '');
2688
- const styles = !this.inline ? { position: 'absolute', top: '0' } : undefined;
2689
- addStyle(this.overlay, styles || {});
2690
- this.appendOverlay();
2691
- this.updateFocus();
2692
- if (this.autoZIndex) {
2693
- if (this.touchUI)
2694
- ZIndexUtils.set('modal', this.overlay, this.baseZIndex || this.config.zIndex.modal);
2695
- else
2696
- ZIndexUtils.set('overlay', this.overlay, this.baseZIndex || this.config.zIndex.overlay);
2697
- }
2698
- this.alignOverlay();
2699
- this.onShow.emit(event);
2700
- }
2701
- break;
2702
- case 'void':
2703
- this.onOverlayHide();
2704
- this.onClose.emit(event);
2705
- break;
2706
- }
2705
+ onOverlayBeforeEnter(event) {
2706
+ this.overlay = event.element;
2707
+ this.$attrSelector && this.overlay.setAttribute(this.$attrSelector, '');
2708
+ const styles = !this.inline ? { position: 'absolute', top: '0', minWidth: `${this.overlayMinWidth}px` } : undefined;
2709
+ addStyle(this.overlay, styles || {});
2710
+ this.appendOverlay();
2711
+ this.alignOverlay();
2712
+ this.setZIndex();
2713
+ this.updateFocus();
2714
+ this.bindListeners();
2715
+ this.onShow.emit(event.element);
2707
2716
  }
2708
- onOverlayAnimationDone(event) {
2709
- switch (event.toState) {
2710
- case 'visible':
2711
- case 'visibleTouchUI':
2712
- if (!this.inline) {
2713
- this.bindDocumentClickListener();
2714
- this.bindDocumentResizeListener();
2715
- this.bindScrollListener();
2716
- }
2717
- break;
2718
- case 'void':
2719
- if (this.autoZIndex) {
2720
- ZIndexUtils.clear(event.element);
2721
- }
2722
- break;
2717
+ onOverlayAfterLeave(event) {
2718
+ if (this.autoZIndex) {
2719
+ ZIndexUtils.clear(event.element);
2723
2720
  }
2721
+ this.restoreOverlayAppend();
2722
+ this.onOverlayHide();
2723
+ this.onClose.emit(event.element);
2724
2724
  }
2725
2725
  appendOverlay() {
2726
2726
  if (this.$appendTo() && this.$appendTo() !== 'self') {
@@ -2740,19 +2740,6 @@ class DatePicker extends BaseInput {
2740
2740
  this.enableModality(this.overlay);
2741
2741
  }
2742
2742
  else if (this.overlay) {
2743
- if (this.view === 'date') {
2744
- if (!this.overlay.style.width) {
2745
- this.overlay.style.width = getOuterWidth(this.overlay) + 'px';
2746
- }
2747
- if (!this.overlay.style.minWidth) {
2748
- this.overlay.style.minWidth = getOuterWidth(this.inputfieldViewChild?.nativeElement) + 'px';
2749
- }
2750
- }
2751
- else {
2752
- if (!this.overlay.style.width) {
2753
- this.overlay.style.width = getOuterWidth(this.inputfieldViewChild?.nativeElement) + 'px';
2754
- }
2755
- }
2756
2743
  if (this.$appendTo() && this.$appendTo() !== 'self') {
2757
2744
  absolutePosition(this.overlay, this.inputfieldViewChild?.nativeElement);
2758
2745
  }
@@ -2761,11 +2748,24 @@ class DatePicker extends BaseInput {
2761
2748
  }
2762
2749
  }
2763
2750
  }
2751
+ bindListeners() {
2752
+ this.bindDocumentClickListener();
2753
+ this.bindDocumentResizeListener();
2754
+ this.bindScrollListener();
2755
+ }
2756
+ setZIndex() {
2757
+ if (this.autoZIndex) {
2758
+ if (this.touchUI)
2759
+ ZIndexUtils.set('modal', this.overlay, this.baseZIndex || this.config.zIndex.modal);
2760
+ else
2761
+ ZIndexUtils.set('overlay', this.overlay, this.baseZIndex || this.config.zIndex.overlay);
2762
+ }
2763
+ }
2764
2764
  enableModality(element) {
2765
2765
  if (!this.mask && this.touchUI) {
2766
2766
  this.mask = this.renderer.createElement('div');
2767
2767
  this.renderer.setStyle(this.mask, 'zIndex', String(parseInt(element.style.zIndex) - 1));
2768
- let maskStyleClass = 'p-overlay-mask p-datepicker-mask p-datepicker-mask-scrollblocker p-overlay-mask p-overlay-mask-enter';
2768
+ let maskStyleClass = 'p-overlay-mask p-datepicker-mask p-datepicker-mask-scrollblocker p-overlay-mask p-overlay-mask-enter-active';
2769
2769
  addClass(this.mask, maskStyleClass);
2770
2770
  this.maskClickListener = this.renderer.listen(this.mask, 'click', (event) => {
2771
2771
  this.disableModality();
@@ -3276,8 +3276,8 @@ class DatePicker extends BaseInput {
3276
3276
  this.restoreOverlayAppend();
3277
3277
  this.onOverlayHide();
3278
3278
  }
3279
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: DatePicker, deps: [{ token: i0.NgZone }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
3280
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: DatePicker, isStandalone: true, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: { iconDisplay: { classPropertyName: "iconDisplay", publicName: "iconDisplay", isSignal: false, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, inputStyle: { classPropertyName: "inputStyle", publicName: "inputStyle", isSignal: false, isRequired: false, transformFunction: null }, inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: false, isRequired: false, transformFunction: null }, inputStyleClass: { classPropertyName: "inputStyleClass", publicName: "inputStyleClass", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: false, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, iconAriaLabel: { classPropertyName: "iconAriaLabel", publicName: "iconAriaLabel", isSignal: false, isRequired: false, transformFunction: null }, dateFormat: { classPropertyName: "dateFormat", publicName: "dateFormat", isSignal: false, isRequired: false, transformFunction: null }, multipleSeparator: { classPropertyName: "multipleSeparator", publicName: "multipleSeparator", isSignal: false, isRequired: false, transformFunction: null }, rangeSeparator: { classPropertyName: "rangeSeparator", publicName: "rangeSeparator", isSignal: false, isRequired: false, transformFunction: null }, inline: { classPropertyName: "inline", publicName: "inline", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showOtherMonths: { classPropertyName: "showOtherMonths", publicName: "showOtherMonths", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, selectOtherMonths: { classPropertyName: "selectOtherMonths", publicName: "selectOtherMonths", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showIcon: { classPropertyName: "showIcon", publicName: "showIcon", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, readonlyInput: { classPropertyName: "readonlyInput", publicName: "readonlyInput", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, shortYearCutoff: { classPropertyName: "shortYearCutoff", publicName: "shortYearCutoff", isSignal: false, isRequired: false, transformFunction: null }, hourFormat: { classPropertyName: "hourFormat", publicName: "hourFormat", isSignal: false, isRequired: false, transformFunction: null }, timeOnly: { classPropertyName: "timeOnly", publicName: "timeOnly", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, stepHour: { classPropertyName: "stepHour", publicName: "stepHour", isSignal: false, isRequired: false, transformFunction: numberAttribute }, stepMinute: { classPropertyName: "stepMinute", publicName: "stepMinute", isSignal: false, isRequired: false, transformFunction: numberAttribute }, stepSecond: { classPropertyName: "stepSecond", publicName: "stepSecond", isSignal: false, isRequired: false, transformFunction: numberAttribute }, showSeconds: { classPropertyName: "showSeconds", publicName: "showSeconds", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showOnFocus: { classPropertyName: "showOnFocus", publicName: "showOnFocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showWeek: { classPropertyName: "showWeek", publicName: "showWeek", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, startWeekFromFirstDayOfYear: { classPropertyName: "startWeekFromFirstDayOfYear", publicName: "startWeekFromFirstDayOfYear", isSignal: false, isRequired: false, transformFunction: null }, showClear: { classPropertyName: "showClear", publicName: "showClear", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, dataType: { classPropertyName: "dataType", publicName: "dataType", isSignal: false, isRequired: false, transformFunction: null }, selectionMode: { classPropertyName: "selectionMode", publicName: "selectionMode", isSignal: false, isRequired: false, transformFunction: null }, maxDateCount: { classPropertyName: "maxDateCount", publicName: "maxDateCount", isSignal: false, isRequired: false, transformFunction: numberAttribute }, showButtonBar: { classPropertyName: "showButtonBar", publicName: "showButtonBar", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, todayButtonStyleClass: { classPropertyName: "todayButtonStyleClass", publicName: "todayButtonStyleClass", isSignal: false, isRequired: false, transformFunction: null }, clearButtonStyleClass: { classPropertyName: "clearButtonStyleClass", publicName: "clearButtonStyleClass", isSignal: false, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, autoZIndex: { classPropertyName: "autoZIndex", publicName: "autoZIndex", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, baseZIndex: { classPropertyName: "baseZIndex", publicName: "baseZIndex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, panelStyleClass: { classPropertyName: "panelStyleClass", publicName: "panelStyleClass", isSignal: false, isRequired: false, transformFunction: null }, panelStyle: { classPropertyName: "panelStyle", publicName: "panelStyle", isSignal: false, isRequired: false, transformFunction: null }, keepInvalid: { classPropertyName: "keepInvalid", publicName: "keepInvalid", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, hideOnDateTimeSelect: { classPropertyName: "hideOnDateTimeSelect", publicName: "hideOnDateTimeSelect", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, touchUI: { classPropertyName: "touchUI", publicName: "touchUI", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, timeSeparator: { classPropertyName: "timeSeparator", publicName: "timeSeparator", isSignal: false, isRequired: false, transformFunction: null }, focusTrap: { classPropertyName: "focusTrap", publicName: "focusTrap", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showTransitionOptions: { classPropertyName: "showTransitionOptions", publicName: "showTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, hideTransitionOptions: { classPropertyName: "hideTransitionOptions", publicName: "hideTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, disabledDates: { classPropertyName: "disabledDates", publicName: "disabledDates", isSignal: false, isRequired: false, transformFunction: null }, disabledDays: { classPropertyName: "disabledDays", publicName: "disabledDays", isSignal: false, isRequired: false, transformFunction: null }, showTime: { classPropertyName: "showTime", publicName: "showTime", isSignal: false, isRequired: false, transformFunction: null }, responsiveOptions: { classPropertyName: "responsiveOptions", publicName: "responsiveOptions", isSignal: false, isRequired: false, transformFunction: null }, numberOfMonths: { classPropertyName: "numberOfMonths", publicName: "numberOfMonths", isSignal: false, isRequired: false, transformFunction: null }, firstDayOfWeek: { classPropertyName: "firstDayOfWeek", publicName: "firstDayOfWeek", isSignal: false, isRequired: false, transformFunction: null }, view: { classPropertyName: "view", publicName: "view", isSignal: false, isRequired: false, transformFunction: null }, defaultDate: { classPropertyName: "defaultDate", publicName: "defaultDate", isSignal: false, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onFocus: "onFocus", onBlur: "onBlur", onClose: "onClose", onSelect: "onSelect", onClear: "onClear", onInput: "onInput", onTodayClick: "onTodayClick", onClearClick: "onClearClick", onMonthChange: "onMonthChange", onYearChange: "onYearChange", onClickOutside: "onClickOutside", onShow: "onShow" }, host: { properties: { "class": "cn(cx('root'), styleClass)", "style": "sx('root')" } }, providers: [DATEPICKER_VALUE_ACCESSOR, DatePickerStyle, { provide: DATEPICKER_INSTANCE, useExisting: DatePicker }, { provide: PARENT_INSTANCE, useExisting: DatePicker }], queries: [{ propertyName: "dateTemplate", first: true, predicate: ["date"] }, { propertyName: "headerTemplate", first: true, predicate: ["header"] }, { propertyName: "footerTemplate", first: true, predicate: ["footer"] }, { propertyName: "disabledDateTemplate", first: true, predicate: ["disabledDate"] }, { propertyName: "decadeTemplate", first: true, predicate: ["decade"] }, { propertyName: "previousIconTemplate", first: true, predicate: ["previousicon"] }, { propertyName: "nextIconTemplate", first: true, predicate: ["nexticon"] }, { propertyName: "triggerIconTemplate", first: true, predicate: ["triggericon"] }, { propertyName: "clearIconTemplate", first: true, predicate: ["clearicon"] }, { propertyName: "decrementIconTemplate", first: true, predicate: ["decrementicon"] }, { propertyName: "incrementIconTemplate", first: true, predicate: ["incrementicon"] }, { propertyName: "inputIconTemplate", first: true, predicate: ["inputicon"] }, { propertyName: "buttonBarTemplate", first: true, predicate: ["buttonbar"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "inputfieldViewChild", first: true, predicate: ["inputfield"], descendants: true }, { propertyName: "content", first: true, predicate: ["contentWrapper"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i2.Bind }], ngImport: i0, template: `
3279
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: DatePicker, deps: [{ token: i0.NgZone }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
3280
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.1", type: DatePicker, isStandalone: true, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: { iconDisplay: { classPropertyName: "iconDisplay", publicName: "iconDisplay", isSignal: false, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, inputStyle: { classPropertyName: "inputStyle", publicName: "inputStyle", isSignal: false, isRequired: false, transformFunction: null }, inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: false, isRequired: false, transformFunction: null }, inputStyleClass: { classPropertyName: "inputStyleClass", publicName: "inputStyleClass", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: false, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, iconAriaLabel: { classPropertyName: "iconAriaLabel", publicName: "iconAriaLabel", isSignal: false, isRequired: false, transformFunction: null }, dateFormat: { classPropertyName: "dateFormat", publicName: "dateFormat", isSignal: false, isRequired: false, transformFunction: null }, multipleSeparator: { classPropertyName: "multipleSeparator", publicName: "multipleSeparator", isSignal: false, isRequired: false, transformFunction: null }, rangeSeparator: { classPropertyName: "rangeSeparator", publicName: "rangeSeparator", isSignal: false, isRequired: false, transformFunction: null }, inline: { classPropertyName: "inline", publicName: "inline", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showOtherMonths: { classPropertyName: "showOtherMonths", publicName: "showOtherMonths", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, selectOtherMonths: { classPropertyName: "selectOtherMonths", publicName: "selectOtherMonths", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showIcon: { classPropertyName: "showIcon", publicName: "showIcon", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, readonlyInput: { classPropertyName: "readonlyInput", publicName: "readonlyInput", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, shortYearCutoff: { classPropertyName: "shortYearCutoff", publicName: "shortYearCutoff", isSignal: false, isRequired: false, transformFunction: null }, hourFormat: { classPropertyName: "hourFormat", publicName: "hourFormat", isSignal: false, isRequired: false, transformFunction: null }, timeOnly: { classPropertyName: "timeOnly", publicName: "timeOnly", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, stepHour: { classPropertyName: "stepHour", publicName: "stepHour", isSignal: false, isRequired: false, transformFunction: numberAttribute }, stepMinute: { classPropertyName: "stepMinute", publicName: "stepMinute", isSignal: false, isRequired: false, transformFunction: numberAttribute }, stepSecond: { classPropertyName: "stepSecond", publicName: "stepSecond", isSignal: false, isRequired: false, transformFunction: numberAttribute }, showSeconds: { classPropertyName: "showSeconds", publicName: "showSeconds", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showOnFocus: { classPropertyName: "showOnFocus", publicName: "showOnFocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showWeek: { classPropertyName: "showWeek", publicName: "showWeek", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, startWeekFromFirstDayOfYear: { classPropertyName: "startWeekFromFirstDayOfYear", publicName: "startWeekFromFirstDayOfYear", isSignal: false, isRequired: false, transformFunction: null }, showClear: { classPropertyName: "showClear", publicName: "showClear", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, dataType: { classPropertyName: "dataType", publicName: "dataType", isSignal: false, isRequired: false, transformFunction: null }, selectionMode: { classPropertyName: "selectionMode", publicName: "selectionMode", isSignal: false, isRequired: false, transformFunction: null }, maxDateCount: { classPropertyName: "maxDateCount", publicName: "maxDateCount", isSignal: false, isRequired: false, transformFunction: numberAttribute }, showButtonBar: { classPropertyName: "showButtonBar", publicName: "showButtonBar", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, todayButtonStyleClass: { classPropertyName: "todayButtonStyleClass", publicName: "todayButtonStyleClass", isSignal: false, isRequired: false, transformFunction: null }, clearButtonStyleClass: { classPropertyName: "clearButtonStyleClass", publicName: "clearButtonStyleClass", isSignal: false, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, autoZIndex: { classPropertyName: "autoZIndex", publicName: "autoZIndex", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, baseZIndex: { classPropertyName: "baseZIndex", publicName: "baseZIndex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, panelStyleClass: { classPropertyName: "panelStyleClass", publicName: "panelStyleClass", isSignal: false, isRequired: false, transformFunction: null }, panelStyle: { classPropertyName: "panelStyle", publicName: "panelStyle", isSignal: false, isRequired: false, transformFunction: null }, keepInvalid: { classPropertyName: "keepInvalid", publicName: "keepInvalid", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, hideOnDateTimeSelect: { classPropertyName: "hideOnDateTimeSelect", publicName: "hideOnDateTimeSelect", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, touchUI: { classPropertyName: "touchUI", publicName: "touchUI", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, timeSeparator: { classPropertyName: "timeSeparator", publicName: "timeSeparator", isSignal: false, isRequired: false, transformFunction: null }, focusTrap: { classPropertyName: "focusTrap", publicName: "focusTrap", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showTransitionOptions: { classPropertyName: "showTransitionOptions", publicName: "showTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, hideTransitionOptions: { classPropertyName: "hideTransitionOptions", publicName: "hideTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, minDate: { classPropertyName: "minDate", publicName: "minDate", isSignal: false, isRequired: false, transformFunction: null }, maxDate: { classPropertyName: "maxDate", publicName: "maxDate", isSignal: false, isRequired: false, transformFunction: null }, disabledDates: { classPropertyName: "disabledDates", publicName: "disabledDates", isSignal: false, isRequired: false, transformFunction: null }, disabledDays: { classPropertyName: "disabledDays", publicName: "disabledDays", isSignal: false, isRequired: false, transformFunction: null }, showTime: { classPropertyName: "showTime", publicName: "showTime", isSignal: false, isRequired: false, transformFunction: null }, responsiveOptions: { classPropertyName: "responsiveOptions", publicName: "responsiveOptions", isSignal: false, isRequired: false, transformFunction: null }, numberOfMonths: { classPropertyName: "numberOfMonths", publicName: "numberOfMonths", isSignal: false, isRequired: false, transformFunction: null }, firstDayOfWeek: { classPropertyName: "firstDayOfWeek", publicName: "firstDayOfWeek", isSignal: false, isRequired: false, transformFunction: null }, view: { classPropertyName: "view", publicName: "view", isSignal: false, isRequired: false, transformFunction: null }, defaultDate: { classPropertyName: "defaultDate", publicName: "defaultDate", isSignal: false, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onFocus: "onFocus", onBlur: "onBlur", onClose: "onClose", onSelect: "onSelect", onClear: "onClear", onInput: "onInput", onTodayClick: "onTodayClick", onClearClick: "onClearClick", onMonthChange: "onMonthChange", onYearChange: "onYearChange", onClickOutside: "onClickOutside", onShow: "onShow" }, host: { properties: { "class": "cn(cx('root'), styleClass)", "style": "sx('root')" } }, providers: [DATEPICKER_VALUE_ACCESSOR, DatePickerStyle, { provide: DATEPICKER_INSTANCE, useExisting: DatePicker }, { provide: PARENT_INSTANCE, useExisting: DatePicker }], queries: [{ propertyName: "dateTemplate", first: true, predicate: ["date"] }, { propertyName: "headerTemplate", first: true, predicate: ["header"] }, { propertyName: "footerTemplate", first: true, predicate: ["footer"] }, { propertyName: "disabledDateTemplate", first: true, predicate: ["disabledDate"] }, { propertyName: "decadeTemplate", first: true, predicate: ["decade"] }, { propertyName: "previousIconTemplate", first: true, predicate: ["previousicon"] }, { propertyName: "nextIconTemplate", first: true, predicate: ["nexticon"] }, { propertyName: "triggerIconTemplate", first: true, predicate: ["triggericon"] }, { propertyName: "clearIconTemplate", first: true, predicate: ["clearicon"] }, { propertyName: "decrementIconTemplate", first: true, predicate: ["decrementicon"] }, { propertyName: "incrementIconTemplate", first: true, predicate: ["incrementicon"] }, { propertyName: "inputIconTemplate", first: true, predicate: ["inputicon"] }, { propertyName: "buttonBarTemplate", first: true, predicate: ["buttonbar"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "inputfieldViewChild", first: true, predicate: ["inputfield"], descendants: true }, { propertyName: "content", first: true, predicate: ["contentWrapper"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i2.Bind }], ngImport: i0, template: `
3281
3281
  <ng-template [ngIf]="!inline">
3282
3282
  <input
3283
3283
  #inputfield
@@ -3315,6 +3315,7 @@ class DatePicker extends BaseInput {
3315
3315
  [fluid]="hasFluid"
3316
3316
  [invalid]="invalid()"
3317
3317
  [pt]="ptm('pcInputText')"
3318
+ [unstyled]="unstyled()"
3318
3319
  />
3319
3320
  <ng-container *ngIf="showClear && !$disabled() && inputfieldViewChild?.nativeElement?.value">
3320
3321
  <svg data-p-icon="times" *ngIf="!clearIconTemplate && !_clearIconTemplate" [class]="cx('clearIcon')" [pBind]="ptm('inputIcon')" (click)="clear()" />
@@ -3342,424 +3343,402 @@ class DatePicker extends BaseInput {
3342
3343
  </ng-container>
3343
3344
  </button>
3344
3345
  <ng-container *ngIf="iconDisplay === 'input' && showIcon">
3345
- <span [class]="cx('inputIconContainer')" [pBind]="ptm('inputIconContainer')">
3346
+ <span [class]="cx('inputIconContainer')" [pBind]="ptm('inputIconContainer')" [attr.data-p]="inputIconDataP">
3346
3347
  <svg data-p-icon="calendar" (click)="onButtonClick($event)" *ngIf="!inputIconTemplate && !_inputIconTemplate" [class]="cx('inputIcon')" [pBind]="ptm('inputIcon')" />
3347
3348
 
3348
3349
  <ng-container *ngTemplateOutlet="inputIconTemplate || _inputIconTemplate; context: { clickCallBack: onButtonClick.bind(this) }"></ng-container>
3349
3350
  </span>
3350
3351
  </ng-container>
3351
3352
  </ng-template>
3352
- <div
3353
- #contentWrapper
3354
- [attr.id]="panelId"
3355
- [ngStyle]="panelStyle"
3356
- [class]="cn(cx('panel'), panelStyleClass)"
3357
- [@overlayAnimation]="{
3358
- value: 'visible',
3359
- params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions }
3360
- }"
3361
- [attr.aria-label]="getTranslation('chooseDate')"
3362
- [attr.role]="inline ? null : 'dialog'"
3363
- [attr.aria-modal]="inline ? null : 'true'"
3364
- [@.disabled]="inline === true"
3365
- (@overlayAnimation.start)="onOverlayAnimationStart($event)"
3366
- (@overlayAnimation.done)="onOverlayAnimationDone($event)"
3367
- (click)="onOverlayClick($event)"
3368
- *ngIf="inline || overlayVisible"
3369
- [pBind]="ptm('panel')"
3370
- >
3371
- <ng-content select="p-header"></ng-content>
3372
- <ng-container *ngTemplateOutlet="headerTemplate || _headerTemplate"></ng-container>
3373
- <ng-container *ngIf="!timeOnly">
3374
- <div [class]="cx('calendarContainer')" [pBind]="ptm('calendarContainer')">
3375
- <div [class]="cx('calendar')" *ngFor="let month of months; let i = index" [pBind]="ptm('calendar')">
3376
- <div [class]="cx('header')" [pBind]="ptm('header')">
3377
- <p-button
3378
- rounded
3379
- variant="text"
3380
- severity="secondary"
3381
- (keydown)="onContainerButtonKeydown($event)"
3382
- [styleClass]="cx('pcPrevButton')"
3383
- (onClick)="onPrevButtonClick($event)"
3384
- [ngStyle]="{ visibility: i === 0 ? 'visible' : 'hidden' }"
3385
- type="button"
3386
- [ariaLabel]="prevIconAriaLabel"
3387
- [pt]="ptm('pcPrevButton')"
3388
- [attr.data-pc-group-section]="'navigator'"
3389
- >
3390
- <ng-template #icon>
3391
- <svg data-p-icon="chevron-left" *ngIf="!previousIconTemplate && !_previousIconTemplate" />
3392
- <span *ngIf="previousIconTemplate || _previousIconTemplate">
3393
- <ng-template *ngTemplateOutlet="previousIconTemplate || _previousIconTemplate"></ng-template>
3394
- </span>
3395
- </ng-template>
3396
- </p-button>
3397
- <div [class]="cx('title')" [pBind]="ptm('title')">
3398
- <button
3399
- *ngIf="currentView === 'date'"
3400
- type="button"
3401
- (click)="switchToMonthView($event)"
3353
+ <p-motion [visible]="inline || overlayVisible" name="p-anchored-overlay" [appear]="!inline" [options]="computedMotionOptions()" (onBeforeEnter)="onOverlayBeforeEnter($event)" (onAfterLeave)="onOverlayAfterLeave($event)">
3354
+ <div
3355
+ #contentWrapper
3356
+ [attr.id]="panelId"
3357
+ [ngStyle]="panelStyle"
3358
+ [class]="cn(cx('panel'), panelStyleClass)"
3359
+ [attr.aria-label]="getTranslation('chooseDate')"
3360
+ [attr.role]="inline ? null : 'dialog'"
3361
+ [attr.aria-modal]="inline ? null : 'true'"
3362
+ (click)="onOverlayClick($event)"
3363
+ [pBind]="ptm('panel')"
3364
+ >
3365
+ <ng-content select="p-header"></ng-content>
3366
+ <ng-container *ngTemplateOutlet="headerTemplate || _headerTemplate"></ng-container>
3367
+ <ng-container *ngIf="!timeOnly">
3368
+ <div [class]="cx('calendarContainer')" [pBind]="ptm('calendarContainer')">
3369
+ <div [class]="cx('calendar')" *ngFor="let month of months; let i = index" [pBind]="ptm('calendar')">
3370
+ <div [class]="cx('header')" [pBind]="ptm('header')">
3371
+ <p-button
3372
+ rounded
3373
+ variant="text"
3374
+ severity="secondary"
3402
3375
  (keydown)="onContainerButtonKeydown($event)"
3403
- [class]="cx('selectMonth')"
3404
- [attr.disabled]="switchViewButtonDisabled() ? '' : undefined"
3405
- [attr.aria-label]="this.getTranslation('chooseMonth')"
3406
- pRipple
3407
- [pBind]="ptm('selectMonth')"
3376
+ [styleClass]="cx('pcPrevButton')"
3377
+ (onClick)="onPrevButtonClick($event)"
3378
+ [ngStyle]="{ visibility: i === 0 ? 'visible' : 'hidden' }"
3379
+ type="button"
3380
+ [ariaLabel]="prevIconAriaLabel"
3381
+ [pt]="ptm('pcPrevButton')"
3408
3382
  [attr.data-pc-group-section]="'navigator'"
3409
3383
  >
3410
- {{ getMonthName(month.month) }}
3411
- </button>
3412
- <button
3413
- *ngIf="currentView !== 'year'"
3414
- type="button"
3415
- (click)="switchToYearView($event)"
3384
+ <ng-template #icon>
3385
+ <svg data-p-icon="chevron-left" *ngIf="!previousIconTemplate && !_previousIconTemplate" />
3386
+ <span *ngIf="previousIconTemplate || _previousIconTemplate">
3387
+ <ng-template *ngTemplateOutlet="previousIconTemplate || _previousIconTemplate"></ng-template>
3388
+ </span>
3389
+ </ng-template>
3390
+ </p-button>
3391
+ <div [class]="cx('title')" [pBind]="ptm('title')">
3392
+ <button
3393
+ *ngIf="currentView === 'date'"
3394
+ type="button"
3395
+ (click)="switchToMonthView($event)"
3396
+ (keydown)="onContainerButtonKeydown($event)"
3397
+ [class]="cx('selectMonth')"
3398
+ [attr.disabled]="switchViewButtonDisabled() ? '' : undefined"
3399
+ [attr.aria-label]="this.getTranslation('chooseMonth')"
3400
+ pRipple
3401
+ [pBind]="ptm('selectMonth')"
3402
+ [attr.data-pc-group-section]="'navigator'"
3403
+ >
3404
+ {{ getMonthName(month.month) }}
3405
+ </button>
3406
+ <button
3407
+ *ngIf="currentView !== 'year'"
3408
+ type="button"
3409
+ (click)="switchToYearView($event)"
3410
+ (keydown)="onContainerButtonKeydown($event)"
3411
+ [class]="cx('selectYear')"
3412
+ [attr.disabled]="switchViewButtonDisabled() ? '' : undefined"
3413
+ [attr.aria-label]="getTranslation('chooseYear')"
3414
+ pRipple
3415
+ [pBind]="ptm('selectYear')"
3416
+ [attr.data-pc-group-section]="'navigator'"
3417
+ >
3418
+ {{ getYear(month) }}
3419
+ </button>
3420
+ <span [class]="cx('decade')" *ngIf="currentView === 'year'" [pBind]="ptm('decade')">
3421
+ <ng-container *ngIf="!decadeTemplate && !_decadeTemplate">{{ yearPickerValues()[0] }} - {{ yearPickerValues()[yearPickerValues().length - 1] }}</ng-container>
3422
+ <ng-container *ngTemplateOutlet="decadeTemplate || _decadeTemplate; context: { $implicit: yearPickerValues }"></ng-container>
3423
+ </span>
3424
+ </div>
3425
+ <p-button
3426
+ rounded
3427
+ variant="text"
3428
+ severity="secondary"
3416
3429
  (keydown)="onContainerButtonKeydown($event)"
3417
- [class]="cx('selectYear')"
3418
- [attr.disabled]="switchViewButtonDisabled() ? '' : undefined"
3419
- [attr.aria-label]="getTranslation('chooseYear')"
3420
- pRipple
3421
- [pBind]="ptm('selectYear')"
3430
+ [styleClass]="cx('pcNextButton')"
3431
+ (onClick)="onNextButtonClick($event)"
3432
+ [ngStyle]="{ visibility: i === months.length - 1 ? 'visible' : 'hidden' }"
3433
+ [ariaLabel]="nextIconAriaLabel"
3434
+ [pt]="ptm('pcNextButton')"
3422
3435
  [attr.data-pc-group-section]="'navigator'"
3423
3436
  >
3424
- {{ getYear(month) }}
3425
- </button>
3426
- <span [class]="cx('decade')" *ngIf="currentView === 'year'" [pBind]="ptm('decade')">
3427
- <ng-container *ngIf="!decadeTemplate && !_decadeTemplate">{{ yearPickerValues()[0] }} - {{ yearPickerValues()[yearPickerValues().length - 1] }}</ng-container>
3428
- <ng-container *ngTemplateOutlet="decadeTemplate || _decadeTemplate; context: { $implicit: yearPickerValues }"></ng-container>
3429
- </span>
3437
+ <ng-template #icon>
3438
+ <svg data-p-icon="chevron-right" *ngIf="!nextIconTemplate && !_nextIconTemplate" />
3439
+ <ng-container *ngIf="nextIconTemplate || _nextIconTemplate">
3440
+ <ng-template *ngTemplateOutlet="nextIconTemplate || _nextIconTemplate"></ng-template>
3441
+ </ng-container>
3442
+ </ng-template>
3443
+ </p-button>
3430
3444
  </div>
3431
- <p-button
3432
- rounded
3433
- variant="text"
3434
- severity="secondary"
3435
- (keydown)="onContainerButtonKeydown($event)"
3436
- [styleClass]="cx('pcNextButton')"
3437
- (onClick)="onNextButtonClick($event)"
3438
- [ngStyle]="{ visibility: i === months.length - 1 ? 'visible' : 'hidden' }"
3439
- [ariaLabel]="nextIconAriaLabel"
3440
- [pt]="ptm('pcNextButton')"
3441
- [attr.data-pc-group-section]="'navigator'"
3442
- >
3443
- <ng-template #icon>
3444
- <svg data-p-icon="chevron-right" *ngIf="!nextIconTemplate && !_nextIconTemplate" />
3445
- <ng-container *ngIf="nextIconTemplate || _nextIconTemplate">
3446
- <ng-template *ngTemplateOutlet="nextIconTemplate || _nextIconTemplate"></ng-template>
3447
- </ng-container>
3448
- </ng-template>
3449
- </p-button>
3450
- </div>
3451
- <table [class]="cx('dayView')" role="grid" *ngIf="currentView === 'date'" [pBind]="ptm('table')">
3452
- <thead [pBind]="ptm('tableHeader')">
3453
- <tr [pBind]="ptm('tableHeaderRow')">
3454
- <th *ngIf="showWeek" [class]="cx('weekHeader')" [pBind]="ptm('weekHeader')">
3455
- <span [pBind]="ptm('weekHeaderLabel')">{{ getTranslation('weekHeader') }}</span>
3456
- </th>
3457
- <th [class]="cx('weekDayCell')" scope="col" *ngFor="let weekDay of weekDays; let begin = first; let end = last" [pBind]="ptm('weekDayCell')">
3458
- <span [class]="cx('weekDay')" [pBind]="ptm('weekDay')">{{ weekDay }}</span>
3459
- </th>
3460
- </tr>
3461
- </thead>
3462
- <tbody [pBind]="ptm('tableBody')">
3463
- <tr *ngFor="let week of month.dates; let j = index" [pBind]="ptm('tableBodyRow')">
3464
- <td *ngIf="showWeek" [class]="cx('weekNumber')" [pBind]="ptm('weekNumber')">
3465
- <span [class]="cx('weekLabelContainer')" [pBind]="ptm('weekLabelContainer')">
3466
- {{ month.weekNumbers[j] }}
3467
- </span>
3468
- </td>
3469
- <td *ngFor="let date of week" [attr.aria-label]="date.day" [class]="cx('dayCell', { date })" [pBind]="ptm('dayCell')">
3470
- <ng-container *ngIf="date.otherMonth ? showOtherMonths : true">
3471
- <span
3472
- [ngClass]="dayClass(date)"
3473
- (click)="onDateSelect($event, date)"
3474
- draggable="false"
3475
- [attr.data-date]="formatDateKey(formatDateMetaToDate(date))"
3476
- (keydown)="onDateCellKeydown($event, date, i)"
3477
- pRipple
3478
- [pBind]="ptm('day')"
3479
- >
3480
- <ng-container *ngIf="!dateTemplate && !_dateTemplate && (date.selectable || (!disabledDateTemplate && !_disabledDateTemplate))">{{ date.day }}</ng-container>
3481
- <ng-container *ngIf="date.selectable || (!disabledDateTemplate && !_disabledDateTemplate)">
3482
- <ng-container *ngTemplateOutlet="dateTemplate || _dateTemplate; context: { $implicit: date }"></ng-container>
3483
- </ng-container>
3484
- <ng-container *ngIf="!date.selectable">
3485
- <ng-container *ngTemplateOutlet="disabledDateTemplate || _disabledDateTemplate; context: { $implicit: date }"></ng-container>
3486
- </ng-container>
3445
+ <table [class]="cx('dayView')" role="grid" *ngIf="currentView === 'date'" [pBind]="ptm('table')">
3446
+ <thead [pBind]="ptm('tableHeader')">
3447
+ <tr [pBind]="ptm('tableHeaderRow')">
3448
+ <th *ngIf="showWeek" [class]="cx('weekHeader')" [pBind]="ptm('weekHeader')">
3449
+ <span [pBind]="ptm('weekHeaderLabel')">{{ getTranslation('weekHeader') }}</span>
3450
+ </th>
3451
+ <th [class]="cx('weekDayCell')" scope="col" *ngFor="let weekDay of weekDays; let begin = first; let end = last" [pBind]="ptm('weekDayCell')">
3452
+ <span [class]="cx('weekDay')" [pBind]="ptm('weekDay')">{{ weekDay }}</span>
3453
+ </th>
3454
+ </tr>
3455
+ </thead>
3456
+ <tbody [pBind]="ptm('tableBody')">
3457
+ <tr *ngFor="let week of month.dates; let j = index" [pBind]="ptm('tableBodyRow')">
3458
+ <td *ngIf="showWeek" [class]="cx('weekNumber')" [pBind]="ptm('weekNumber')">
3459
+ <span [class]="cx('weekLabelContainer')" [pBind]="ptm('weekLabelContainer')">
3460
+ {{ month.weekNumbers[j] }}
3487
3461
  </span>
3488
- <div *ngIf="isSelected(date)" class="p-hidden-accessible" aria-live="polite">
3489
- {{ date.day }}
3490
- </div>
3491
- </ng-container>
3492
- </td>
3493
- </tr>
3494
- </tbody>
3495
- </table>
3462
+ </td>
3463
+ <td *ngFor="let date of week" [attr.aria-label]="date.day" [class]="cx('dayCell', { date })" [pBind]="ptm('dayCell')">
3464
+ <ng-container *ngIf="date.otherMonth ? showOtherMonths : true">
3465
+ <span
3466
+ [ngClass]="dayClass(date)"
3467
+ (click)="onDateSelect($event, date)"
3468
+ draggable="false"
3469
+ [attr.data-date]="formatDateKey(formatDateMetaToDate(date))"
3470
+ (keydown)="onDateCellKeydown($event, date, i)"
3471
+ pRipple
3472
+ [pBind]="ptm('day')"
3473
+ >
3474
+ <ng-container *ngIf="!dateTemplate && !_dateTemplate && (date.selectable || (!disabledDateTemplate && !_disabledDateTemplate))">{{ date.day }}</ng-container>
3475
+ <ng-container *ngIf="date.selectable || (!disabledDateTemplate && !_disabledDateTemplate)">
3476
+ <ng-container *ngTemplateOutlet="dateTemplate || _dateTemplate; context: { $implicit: date }"></ng-container>
3477
+ </ng-container>
3478
+ <ng-container *ngIf="!date.selectable">
3479
+ <ng-container *ngTemplateOutlet="disabledDateTemplate || _disabledDateTemplate; context: { $implicit: date }"></ng-container>
3480
+ </ng-container>
3481
+ </span>
3482
+ <div *ngIf="isSelected(date)" class="p-hidden-accessible" aria-live="polite">
3483
+ {{ date.day }}
3484
+ </div>
3485
+ </ng-container>
3486
+ </td>
3487
+ </tr>
3488
+ </tbody>
3489
+ </table>
3490
+ </div>
3496
3491
  </div>
3497
- </div>
3498
- <div [class]="cx('monthView')" *ngIf="currentView === 'month'" [pBind]="ptm('monthView')">
3499
- <span *ngFor="let m of monthPickerValues(); let i = index" (click)="onMonthSelect($event, i)" (keydown)="onMonthCellKeydown($event, i)" [class]="cx('month', { month: m, index: i })" pRipple [pBind]="ptm('month')">
3500
- {{ m }}
3501
- <div *ngIf="isMonthSelected(i)" class="p-hidden-accessible" aria-live="polite">
3492
+ <div [class]="cx('monthView')" *ngIf="currentView === 'month'" [pBind]="ptm('monthView')">
3493
+ <span *ngFor="let m of monthPickerValues(); let i = index" (click)="onMonthSelect($event, i)" (keydown)="onMonthCellKeydown($event, i)" [class]="cx('month', { month: m, index: i })" pRipple [pBind]="ptm('month')">
3502
3494
  {{ m }}
3503
- </div>
3504
- </span>
3505
- </div>
3506
- <div [class]="cx('yearView')" *ngIf="currentView === 'year'" [pBind]="ptm('yearView')">
3507
- <span *ngFor="let y of yearPickerValues()" (click)="onYearSelect($event, y)" (keydown)="onYearCellKeydown($event, y)" [class]="cx('year', { year: y })" pRipple [pBind]="ptm('year')">
3508
- {{ y }}
3509
- <div *ngIf="isYearSelected(y)" class="p-hidden-accessible" aria-live="polite">
3495
+ <div *ngIf="isMonthSelected(i)" class="p-hidden-accessible" aria-live="polite">
3496
+ {{ m }}
3497
+ </div>
3498
+ </span>
3499
+ </div>
3500
+ <div [class]="cx('yearView')" *ngIf="currentView === 'year'" [pBind]="ptm('yearView')">
3501
+ <span *ngFor="let y of yearPickerValues()" (click)="onYearSelect($event, y)" (keydown)="onYearCellKeydown($event, y)" [class]="cx('year', { year: y })" pRipple [pBind]="ptm('year')">
3510
3502
  {{ y }}
3511
- </div>
3512
- </span>
3513
- </div>
3514
- </ng-container>
3515
- <div [class]="cx('timePicker')" *ngIf="(showTime || timeOnly) && currentView === 'date'" [pBind]="ptm('timePicker')">
3516
- <div [class]="cx('hourPicker')" [pBind]="ptm('hourPicker')">
3517
- <p-button
3518
- rounded
3519
- variant="text"
3520
- severity="secondary"
3521
- [styleClass]="cx('pcIncrementButton')"
3522
- (keydown)="onContainerButtonKeydown($event)"
3523
- (keydown.enter)="incrementHour($event)"
3524
- (keydown.space)="incrementHour($event)"
3525
- (mousedown)="onTimePickerElementMouseDown($event, 0, 1)"
3526
- (mouseup)="onTimePickerElementMouseUp($event)"
3527
- (keyup.enter)="onTimePickerElementMouseUp($event)"
3528
- (keyup.space)="onTimePickerElementMouseUp($event)"
3529
- (mouseleave)="onTimePickerElementMouseLeave()"
3530
- [attr.aria-label]="getTranslation('nextHour')"
3531
- [pt]="ptm('pcIncrementButton')"
3532
- [attr.data-pc-group-section]="'timepickerbutton'"
3533
- >
3534
- <ng-template #icon>
3535
- <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
3536
- <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
3537
- </ng-template>
3538
- </p-button>
3539
- <span [pBind]="ptm('hour')"><ng-container *ngIf="currentHour < 10">0</ng-container>{{ currentHour }}</span>
3540
- <p-button
3541
- rounded
3542
- variant="text"
3543
- severity="secondary"
3544
- [styleClass]="cx('pcDecrementButton')"
3545
- (keydown)="onContainerButtonKeydown($event)"
3546
- (keydown.enter)="decrementHour($event)"
3547
- (keydown.space)="decrementHour($event)"
3548
- (mousedown)="onTimePickerElementMouseDown($event, 0, -1)"
3549
- (mouseup)="onTimePickerElementMouseUp($event)"
3550
- (keyup.enter)="onTimePickerElementMouseUp($event)"
3551
- (keyup.space)="onTimePickerElementMouseUp($event)"
3552
- (mouseleave)="onTimePickerElementMouseLeave()"
3553
- [attr.aria-label]="getTranslation('prevHour')"
3554
- [pt]="ptm('pcDecrementButton')"
3555
- [attr.data-pc-group-section]="'timepickerbutton'"
3556
- >
3557
- <ng-template #icon>
3558
- <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
3559
- <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
3560
- </ng-template>
3561
- </p-button>
3562
- </div>
3563
- <div class="p-datepicker-separator" [pBind]="ptm('separatorContainer')">
3564
- <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
3565
- </div>
3566
- <div [class]="cx('minutePicker')" [pBind]="ptm('minutePicker')">
3567
- <p-button
3568
- rounded
3569
- variant="text"
3570
- severity="secondary"
3571
- [styleClass]="cx('pcIncrementButton')"
3572
- (keydown)="onContainerButtonKeydown($event)"
3573
- (keydown.enter)="incrementMinute($event)"
3574
- (keydown.space)="incrementMinute($event)"
3575
- (mousedown)="onTimePickerElementMouseDown($event, 1, 1)"
3576
- (mouseup)="onTimePickerElementMouseUp($event)"
3577
- (keyup.enter)="onTimePickerElementMouseUp($event)"
3578
- (keyup.space)="onTimePickerElementMouseUp($event)"
3579
- (mouseleave)="onTimePickerElementMouseLeave()"
3580
- [attr.aria-label]="getTranslation('nextMinute')"
3581
- [pt]="ptm('pcIncrementButton')"
3582
- [attr.data-pc-group-section]="'timepickerbutton'"
3583
- >
3584
- <ng-template #icon>
3585
- <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
3586
- <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
3587
- </ng-template>
3588
- </p-button>
3589
- <span [pBind]="ptm('minute')"><ng-container *ngIf="currentMinute < 10">0</ng-container>{{ currentMinute }}</span>
3590
- <p-button
3591
- rounded
3592
- variant="text"
3593
- severity="secondary"
3594
- [styleClass]="cx('pcDecrementButton')"
3595
- (keydown)="onContainerButtonKeydown($event)"
3596
- (keydown.enter)="decrementMinute($event)"
3597
- (keydown.space)="decrementMinute($event)"
3598
- (mousedown)="onTimePickerElementMouseDown($event, 1, -1)"
3599
- (mouseup)="onTimePickerElementMouseUp($event)"
3600
- (keyup.enter)="onTimePickerElementMouseUp($event)"
3601
- (keyup.space)="onTimePickerElementMouseUp($event)"
3602
- (mouseleave)="onTimePickerElementMouseLeave()"
3603
- [attr.aria-label]="getTranslation('prevMinute')"
3604
- [pt]="ptm('pcDecrementButton')"
3605
- [attr.data-pc-group-section]="'timepickerbutton'"
3606
- >
3607
- <ng-template #icon>
3608
- <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
3609
- <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
3610
- </ng-template>
3611
- </p-button>
3612
- </div>
3613
- <div [class]="cx('separator')" *ngIf="showSeconds" [pBind]="ptm('separatorContainer')">
3614
- <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
3615
- </div>
3616
- <div [class]="cx('secondPicker')" *ngIf="showSeconds" [pBind]="ptm('secondPicker')">
3617
- <p-button
3618
- rounded
3619
- variant="text"
3620
- severity="secondary"
3621
- [styleClass]="cx('pcIncrementButton')"
3622
- (keydown)="onContainerButtonKeydown($event)"
3623
- (keydown.enter)="incrementSecond($event)"
3624
- (keydown.space)="incrementSecond($event)"
3625
- (mousedown)="onTimePickerElementMouseDown($event, 2, 1)"
3626
- (mouseup)="onTimePickerElementMouseUp($event)"
3627
- (keyup.enter)="onTimePickerElementMouseUp($event)"
3628
- (keyup.space)="onTimePickerElementMouseUp($event)"
3629
- (mouseleave)="onTimePickerElementMouseLeave()"
3630
- [attr.aria-label]="getTranslation('nextSecond')"
3631
- [pt]="ptm('pcIncrementButton')"
3632
- [attr.data-pc-group-section]="'timepickerbutton'"
3633
- >
3634
- <ng-template #icon>
3635
- <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
3636
- <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
3637
- </ng-template>
3638
- </p-button>
3639
- <span [pBind]="ptm('second')"><ng-container *ngIf="currentSecond < 10">0</ng-container>{{ currentSecond }}</span>
3640
- <p-button
3641
- rounded
3642
- variant="text"
3643
- severity="secondary"
3644
- [styleClass]="cx('pcDecrementButton')"
3645
- (keydown)="onContainerButtonKeydown($event)"
3646
- (keydown.enter)="decrementSecond($event)"
3647
- (keydown.space)="decrementSecond($event)"
3648
- (mousedown)="onTimePickerElementMouseDown($event, 2, -1)"
3649
- (mouseup)="onTimePickerElementMouseUp($event)"
3650
- (keyup.enter)="onTimePickerElementMouseUp($event)"
3651
- (keyup.space)="onTimePickerElementMouseUp($event)"
3652
- (mouseleave)="onTimePickerElementMouseLeave()"
3653
- [attr.aria-label]="getTranslation('prevSecond')"
3654
- [pt]="ptm('pcDecrementButton')"
3655
- [attr.data-pc-group-section]="'timepickerbutton'"
3656
- >
3657
- <ng-template #icon>
3658
- <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
3659
- <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
3660
- </ng-template>
3661
- </p-button>
3662
- </div>
3663
- <div [class]="cx('separator')" *ngIf="hourFormat == '12'" [pBind]="ptm('separatorContainer')">
3664
- <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
3503
+ <div *ngIf="isYearSelected(y)" class="p-hidden-accessible" aria-live="polite">
3504
+ {{ y }}
3505
+ </div>
3506
+ </span>
3507
+ </div>
3508
+ </ng-container>
3509
+ <div [class]="cx('timePicker')" *ngIf="(showTime || timeOnly) && currentView === 'date'" [pBind]="ptm('timePicker')">
3510
+ <div [class]="cx('hourPicker')" [pBind]="ptm('hourPicker')">
3511
+ <p-button
3512
+ rounded
3513
+ variant="text"
3514
+ severity="secondary"
3515
+ [styleClass]="cx('pcIncrementButton')"
3516
+ (keydown)="onContainerButtonKeydown($event)"
3517
+ (keydown.enter)="incrementHour($event)"
3518
+ (keydown.space)="incrementHour($event)"
3519
+ (mousedown)="onTimePickerElementMouseDown($event, 0, 1)"
3520
+ (mouseup)="onTimePickerElementMouseUp($event)"
3521
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
3522
+ (keyup.space)="onTimePickerElementMouseUp($event)"
3523
+ (mouseleave)="onTimePickerElementMouseLeave()"
3524
+ [attr.aria-label]="getTranslation('nextHour')"
3525
+ [pt]="ptm('pcIncrementButton')"
3526
+ [attr.data-pc-group-section]="'timepickerbutton'"
3527
+ >
3528
+ <ng-template #icon>
3529
+ <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
3530
+ <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
3531
+ </ng-template>
3532
+ </p-button>
3533
+ <span [pBind]="ptm('hour')"><ng-container *ngIf="currentHour < 10">0</ng-container>{{ currentHour }}</span>
3534
+ <p-button
3535
+ rounded
3536
+ variant="text"
3537
+ severity="secondary"
3538
+ [styleClass]="cx('pcDecrementButton')"
3539
+ (keydown)="onContainerButtonKeydown($event)"
3540
+ (keydown.enter)="decrementHour($event)"
3541
+ (keydown.space)="decrementHour($event)"
3542
+ (mousedown)="onTimePickerElementMouseDown($event, 0, -1)"
3543
+ (mouseup)="onTimePickerElementMouseUp($event)"
3544
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
3545
+ (keyup.space)="onTimePickerElementMouseUp($event)"
3546
+ (mouseleave)="onTimePickerElementMouseLeave()"
3547
+ [attr.aria-label]="getTranslation('prevHour')"
3548
+ [pt]="ptm('pcDecrementButton')"
3549
+ [attr.data-pc-group-section]="'timepickerbutton'"
3550
+ >
3551
+ <ng-template #icon>
3552
+ <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
3553
+ <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
3554
+ </ng-template>
3555
+ </p-button>
3556
+ </div>
3557
+ <div class="p-datepicker-separator" [pBind]="ptm('separatorContainer')">
3558
+ <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
3559
+ </div>
3560
+ <div [class]="cx('minutePicker')" [pBind]="ptm('minutePicker')">
3561
+ <p-button
3562
+ rounded
3563
+ variant="text"
3564
+ severity="secondary"
3565
+ [styleClass]="cx('pcIncrementButton')"
3566
+ (keydown)="onContainerButtonKeydown($event)"
3567
+ (keydown.enter)="incrementMinute($event)"
3568
+ (keydown.space)="incrementMinute($event)"
3569
+ (mousedown)="onTimePickerElementMouseDown($event, 1, 1)"
3570
+ (mouseup)="onTimePickerElementMouseUp($event)"
3571
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
3572
+ (keyup.space)="onTimePickerElementMouseUp($event)"
3573
+ (mouseleave)="onTimePickerElementMouseLeave()"
3574
+ [attr.aria-label]="getTranslation('nextMinute')"
3575
+ [pt]="ptm('pcIncrementButton')"
3576
+ [attr.data-pc-group-section]="'timepickerbutton'"
3577
+ >
3578
+ <ng-template #icon>
3579
+ <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
3580
+ <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
3581
+ </ng-template>
3582
+ </p-button>
3583
+ <span [pBind]="ptm('minute')"><ng-container *ngIf="currentMinute < 10">0</ng-container>{{ currentMinute }}</span>
3584
+ <p-button
3585
+ rounded
3586
+ variant="text"
3587
+ severity="secondary"
3588
+ [styleClass]="cx('pcDecrementButton')"
3589
+ (keydown)="onContainerButtonKeydown($event)"
3590
+ (keydown.enter)="decrementMinute($event)"
3591
+ (keydown.space)="decrementMinute($event)"
3592
+ (mousedown)="onTimePickerElementMouseDown($event, 1, -1)"
3593
+ (mouseup)="onTimePickerElementMouseUp($event)"
3594
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
3595
+ (keyup.space)="onTimePickerElementMouseUp($event)"
3596
+ (mouseleave)="onTimePickerElementMouseLeave()"
3597
+ [attr.aria-label]="getTranslation('prevMinute')"
3598
+ [pt]="ptm('pcDecrementButton')"
3599
+ [attr.data-pc-group-section]="'timepickerbutton'"
3600
+ >
3601
+ <ng-template #icon>
3602
+ <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
3603
+ <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
3604
+ </ng-template>
3605
+ </p-button>
3606
+ </div>
3607
+ <div [class]="cx('separator')" *ngIf="showSeconds" [pBind]="ptm('separatorContainer')">
3608
+ <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
3609
+ </div>
3610
+ <div [class]="cx('secondPicker')" *ngIf="showSeconds" [pBind]="ptm('secondPicker')">
3611
+ <p-button
3612
+ rounded
3613
+ variant="text"
3614
+ severity="secondary"
3615
+ [styleClass]="cx('pcIncrementButton')"
3616
+ (keydown)="onContainerButtonKeydown($event)"
3617
+ (keydown.enter)="incrementSecond($event)"
3618
+ (keydown.space)="incrementSecond($event)"
3619
+ (mousedown)="onTimePickerElementMouseDown($event, 2, 1)"
3620
+ (mouseup)="onTimePickerElementMouseUp($event)"
3621
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
3622
+ (keyup.space)="onTimePickerElementMouseUp($event)"
3623
+ (mouseleave)="onTimePickerElementMouseLeave()"
3624
+ [attr.aria-label]="getTranslation('nextSecond')"
3625
+ [pt]="ptm('pcIncrementButton')"
3626
+ [attr.data-pc-group-section]="'timepickerbutton'"
3627
+ >
3628
+ <ng-template #icon>
3629
+ <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
3630
+ <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
3631
+ </ng-template>
3632
+ </p-button>
3633
+ <span [pBind]="ptm('second')"><ng-container *ngIf="currentSecond < 10">0</ng-container>{{ currentSecond }}</span>
3634
+ <p-button
3635
+ rounded
3636
+ variant="text"
3637
+ severity="secondary"
3638
+ [styleClass]="cx('pcDecrementButton')"
3639
+ (keydown)="onContainerButtonKeydown($event)"
3640
+ (keydown.enter)="decrementSecond($event)"
3641
+ (keydown.space)="decrementSecond($event)"
3642
+ (mousedown)="onTimePickerElementMouseDown($event, 2, -1)"
3643
+ (mouseup)="onTimePickerElementMouseUp($event)"
3644
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
3645
+ (keyup.space)="onTimePickerElementMouseUp($event)"
3646
+ (mouseleave)="onTimePickerElementMouseLeave()"
3647
+ [attr.aria-label]="getTranslation('prevSecond')"
3648
+ [pt]="ptm('pcDecrementButton')"
3649
+ [attr.data-pc-group-section]="'timepickerbutton'"
3650
+ >
3651
+ <ng-template #icon>
3652
+ <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
3653
+ <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
3654
+ </ng-template>
3655
+ </p-button>
3656
+ </div>
3657
+ <div [class]="cx('separator')" *ngIf="hourFormat == '12'" [pBind]="ptm('separatorContainer')">
3658
+ <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
3659
+ </div>
3660
+ <div [class]="cx('ampmPicker')" *ngIf="hourFormat == '12'" [pBind]="ptm('ampmPicker')">
3661
+ <p-button
3662
+ text
3663
+ rounded
3664
+ severity="secondary"
3665
+ [styleClass]="cx('pcIncrementButton')"
3666
+ (keydown)="onContainerButtonKeydown($event)"
3667
+ (onClick)="toggleAMPM($event)"
3668
+ (keydown.enter)="toggleAMPM($event)"
3669
+ [attr.aria-label]="getTranslation('am')"
3670
+ [pt]="ptm('pcIncrementButton')"
3671
+ [attr.data-pc-group-section]="'timepickerbutton'"
3672
+ >
3673
+ <ng-template #icon>
3674
+ <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
3675
+ <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
3676
+ </ng-template>
3677
+ </p-button>
3678
+ <span [pBind]="ptm('ampm')">{{ pm ? 'PM' : 'AM' }}</span>
3679
+ <p-button
3680
+ text
3681
+ rounded
3682
+ severity="secondary"
3683
+ [styleClass]="cx('pcDecrementButton')"
3684
+ (keydown)="onContainerButtonKeydown($event)"
3685
+ (click)="toggleAMPM($event)"
3686
+ (keydown.enter)="toggleAMPM($event)"
3687
+ [attr.aria-label]="getTranslation('pm')"
3688
+ [pt]="ptm('pcDecrementButton')"
3689
+ [attr.data-pc-group-section]="'timepickerbutton'"
3690
+ >
3691
+ <ng-template #icon>
3692
+ <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
3693
+ <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
3694
+ </ng-template>
3695
+ </p-button>
3696
+ </div>
3665
3697
  </div>
3666
- <div [class]="cx('ampmPicker')" *ngIf="hourFormat == '12'" [pBind]="ptm('ampmPicker')">
3667
- <p-button
3668
- text
3669
- rounded
3670
- severity="secondary"
3671
- [styleClass]="cx('pcIncrementButton')"
3672
- (keydown)="onContainerButtonKeydown($event)"
3673
- (onClick)="toggleAMPM($event)"
3674
- (keydown.enter)="toggleAMPM($event)"
3675
- [attr.aria-label]="getTranslation('am')"
3676
- [pt]="ptm('pcIncrementButton')"
3677
- [attr.data-pc-group-section]="'timepickerbutton'"
3678
- >
3679
- <ng-template #icon>
3680
- <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
3681
- <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
3682
- </ng-template>
3683
- </p-button>
3684
- <span [pBind]="ptm('ampm')">{{ pm ? 'PM' : 'AM' }}</span>
3685
- <p-button
3686
- text
3687
- rounded
3688
- severity="secondary"
3689
- [styleClass]="cx('pcDecrementButton')"
3690
- (keydown)="onContainerButtonKeydown($event)"
3691
- (click)="toggleAMPM($event)"
3692
- (keydown.enter)="toggleAMPM($event)"
3693
- [attr.aria-label]="getTranslation('pm')"
3694
- [pt]="ptm('pcDecrementButton')"
3695
- [attr.data-pc-group-section]="'timepickerbutton'"
3696
- >
3697
- <ng-template #icon>
3698
- <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
3699
- <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
3700
- </ng-template>
3701
- </p-button>
3698
+ <div [class]="cx('buttonbar')" *ngIf="showButtonBar" [pBind]="ptm('buttonbar')">
3699
+ @if (buttonBarTemplate || _buttonBarTemplate) {
3700
+ <ng-container *ngTemplateOutlet="buttonBarTemplate || _buttonBarTemplate; context: { todayCallback: onTodayButtonClick.bind(this), clearCallback: onClearButtonClick.bind(this) }"></ng-container>
3701
+ } @else {
3702
+ <p-button
3703
+ size="small"
3704
+ [styleClass]="cx('pcTodayButton')"
3705
+ [label]="getTranslation('today')"
3706
+ (keydown)="onContainerButtonKeydown($event)"
3707
+ (onClick)="onTodayButtonClick($event)"
3708
+ [ngClass]="todayButtonStyleClass"
3709
+ severity="secondary"
3710
+ variant="text"
3711
+ size="small"
3712
+ [pt]="ptm('pcTodayButton')"
3713
+ [attr.data-pc-group-section]="'button'"
3714
+ />
3715
+ <p-button
3716
+ size="small"
3717
+ [styleClass]="cx('pcClearButton')"
3718
+ [label]="getTranslation('clear')"
3719
+ (keydown)="onContainerButtonKeydown($event)"
3720
+ (onClick)="onClearButtonClick($event)"
3721
+ [ngClass]="clearButtonStyleClass"
3722
+ severity="secondary"
3723
+ variant="text"
3724
+ size="small"
3725
+ [pt]="ptm('pcClearButton')"
3726
+ [attr.data-pc-group-section]="'button'"
3727
+ />
3728
+ }
3702
3729
  </div>
3730
+ <ng-content select="p-footer"></ng-content>
3731
+ <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate"></ng-container>
3703
3732
  </div>
3704
- <div [class]="cx('buttonbar')" *ngIf="showButtonBar" [pBind]="ptm('buttonbar')">
3705
- @if (buttonBarTemplate || _buttonBarTemplate) {
3706
- <ng-container *ngTemplateOutlet="buttonBarTemplate || _buttonBarTemplate; context: { todayCallback: onTodayButtonClick.bind(this), clearCallback: onClearButtonClick.bind(this) }"></ng-container>
3707
- } @else {
3708
- <p-button
3709
- size="small"
3710
- [styleClass]="cx('pcTodayButton')"
3711
- [label]="getTranslation('today')"
3712
- (keydown)="onContainerButtonKeydown($event)"
3713
- (onClick)="onTodayButtonClick($event)"
3714
- [ngClass]="todayButtonStyleClass"
3715
- severity="secondary"
3716
- variant="text"
3717
- size="small"
3718
- [pt]="ptm('pcTodayButton')"
3719
- [attr.data-pc-group-section]="'button'"
3720
- />
3721
- <p-button
3722
- size="small"
3723
- [styleClass]="cx('pcClearButton')"
3724
- [label]="getTranslation('clear')"
3725
- (keydown)="onContainerButtonKeydown($event)"
3726
- (onClick)="onClearButtonClick($event)"
3727
- [ngClass]="clearButtonStyleClass"
3728
- severity="secondary"
3729
- variant="text"
3730
- size="small"
3731
- [pt]="ptm('pcClearButton')"
3732
- [attr.data-pc-group-section]="'button'"
3733
- />
3734
- }
3735
- </div>
3736
- <ng-content select="p-footer"></ng-content>
3737
- <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate"></ng-container>
3738
- </div>
3739
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "component", type: ChevronLeftIcon, selector: "[data-p-icon=\"chevron-left\"]" }, { kind: "component", type: ChevronRightIcon, selector: "[data-p-icon=\"chevron-right\"]" }, { kind: "component", type: ChevronUpIcon, selector: "[data-p-icon=\"chevron-up\"]" }, { kind: "component", type: ChevronDownIcon, selector: "[data-p-icon=\"chevron-down\"]" }, { kind: "component", type: TimesIcon, selector: "[data-p-icon=\"times\"]" }, { kind: "component", type: CalendarIcon, selector: "[data-p-icon=\"calendar\"]" }, { kind: "directive", type: AutoFocus, selector: "[pAutoFocus]", inputs: ["pAutoFocus"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: BindModule }, { kind: "directive", type: i2.Bind, selector: "[pBind]", inputs: ["pBind"] }], animations: [
3740
- trigger('overlayAnimation', [
3741
- state('visibleTouchUI', style$2({
3742
- transform: 'translate(-50%,-50%)',
3743
- opacity: 1
3744
- })),
3745
- transition('void => visible', [style$2({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}', style$2({ opacity: 1, transform: '*' }))]),
3746
- transition('visible => void', [animate('{{hideTransitionParams}}', style$2({ opacity: 0 }))]),
3747
- transition('void => visibleTouchUI', [style$2({ opacity: 0, transform: 'translate3d(-50%, -40%, 0) scale(0.9)' }), animate('{{showTransitionParams}}')]),
3748
- transition('visibleTouchUI => void', [
3749
- animate('{{hideTransitionParams}}', style$2({
3750
- opacity: 0,
3751
- transform: 'translate3d(-50%, -40%, 0) scale(0.9)'
3752
- }))
3753
- ])
3754
- ])
3755
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3733
+ </p-motion>
3734
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "component", type: ChevronLeftIcon, selector: "[data-p-icon=\"chevron-left\"]" }, { kind: "component", type: ChevronRightIcon, selector: "[data-p-icon=\"chevron-right\"]" }, { kind: "component", type: ChevronUpIcon, selector: "[data-p-icon=\"chevron-up\"]" }, { kind: "component", type: ChevronDownIcon, selector: "[data-p-icon=\"chevron-down\"]" }, { kind: "component", type: TimesIcon, selector: "[data-p-icon=\"times\"]" }, { kind: "component", type: CalendarIcon, selector: "[data-p-icon=\"calendar\"]" }, { kind: "directive", type: AutoFocus, selector: "[pAutoFocus]", inputs: ["pAutoFocus"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pInputTextPT", "pInputTextUnstyled", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: BindModule }, { kind: "directive", type: i2.Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "ngmodule", type: MotionModule }, { kind: "component", type: i4.Motion, selector: "p-motion", inputs: ["visible", "mountOnEnter", "unmountOnLeave", "name", "type", "safe", "disabled", "appear", "enter", "leave", "duration", "hideStrategy", "enterFromClass", "enterToClass", "enterActiveClass", "leaveFromClass", "leaveToClass", "leaveActiveClass", "options"], outputs: ["onBeforeEnter", "onEnter", "onAfterEnter", "onEnterCancelled", "onBeforeLeave", "onLeave", "onAfterLeave", "onLeaveCancelled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3756
3735
  }
3757
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: DatePicker, decorators: [{
3736
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: DatePicker, decorators: [{
3758
3737
  type: Component,
3759
3738
  args: [{
3760
3739
  selector: 'p-datePicker, p-datepicker, p-date-picker',
3761
3740
  standalone: true,
3762
- imports: [CommonModule, Button, Ripple, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronDownIcon, TimesIcon, CalendarIcon, AutoFocus, InputText, SharedModule, BindModule],
3741
+ imports: [CommonModule, Button, Ripple, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronDownIcon, TimesIcon, CalendarIcon, AutoFocus, InputText, SharedModule, BindModule, MotionModule],
3763
3742
  hostDirectives: [Bind],
3764
3743
  template: `
3765
3744
  <ng-template [ngIf]="!inline">
@@ -3799,6 +3778,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
3799
3778
  [fluid]="hasFluid"
3800
3779
  [invalid]="invalid()"
3801
3780
  [pt]="ptm('pcInputText')"
3781
+ [unstyled]="unstyled()"
3802
3782
  />
3803
3783
  <ng-container *ngIf="showClear && !$disabled() && inputfieldViewChild?.nativeElement?.value">
3804
3784
  <svg data-p-icon="times" *ngIf="!clearIconTemplate && !_clearIconTemplate" [class]="cx('clearIcon')" [pBind]="ptm('inputIcon')" (click)="clear()" />
@@ -3826,418 +3806,395 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
3826
3806
  </ng-container>
3827
3807
  </button>
3828
3808
  <ng-container *ngIf="iconDisplay === 'input' && showIcon">
3829
- <span [class]="cx('inputIconContainer')" [pBind]="ptm('inputIconContainer')">
3809
+ <span [class]="cx('inputIconContainer')" [pBind]="ptm('inputIconContainer')" [attr.data-p]="inputIconDataP">
3830
3810
  <svg data-p-icon="calendar" (click)="onButtonClick($event)" *ngIf="!inputIconTemplate && !_inputIconTemplate" [class]="cx('inputIcon')" [pBind]="ptm('inputIcon')" />
3831
3811
 
3832
3812
  <ng-container *ngTemplateOutlet="inputIconTemplate || _inputIconTemplate; context: { clickCallBack: onButtonClick.bind(this) }"></ng-container>
3833
3813
  </span>
3834
3814
  </ng-container>
3835
3815
  </ng-template>
3836
- <div
3837
- #contentWrapper
3838
- [attr.id]="panelId"
3839
- [ngStyle]="panelStyle"
3840
- [class]="cn(cx('panel'), panelStyleClass)"
3841
- [@overlayAnimation]="{
3842
- value: 'visible',
3843
- params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions }
3844
- }"
3845
- [attr.aria-label]="getTranslation('chooseDate')"
3846
- [attr.role]="inline ? null : 'dialog'"
3847
- [attr.aria-modal]="inline ? null : 'true'"
3848
- [@.disabled]="inline === true"
3849
- (@overlayAnimation.start)="onOverlayAnimationStart($event)"
3850
- (@overlayAnimation.done)="onOverlayAnimationDone($event)"
3851
- (click)="onOverlayClick($event)"
3852
- *ngIf="inline || overlayVisible"
3853
- [pBind]="ptm('panel')"
3854
- >
3855
- <ng-content select="p-header"></ng-content>
3856
- <ng-container *ngTemplateOutlet="headerTemplate || _headerTemplate"></ng-container>
3857
- <ng-container *ngIf="!timeOnly">
3858
- <div [class]="cx('calendarContainer')" [pBind]="ptm('calendarContainer')">
3859
- <div [class]="cx('calendar')" *ngFor="let month of months; let i = index" [pBind]="ptm('calendar')">
3860
- <div [class]="cx('header')" [pBind]="ptm('header')">
3861
- <p-button
3862
- rounded
3863
- variant="text"
3864
- severity="secondary"
3865
- (keydown)="onContainerButtonKeydown($event)"
3866
- [styleClass]="cx('pcPrevButton')"
3867
- (onClick)="onPrevButtonClick($event)"
3868
- [ngStyle]="{ visibility: i === 0 ? 'visible' : 'hidden' }"
3869
- type="button"
3870
- [ariaLabel]="prevIconAriaLabel"
3871
- [pt]="ptm('pcPrevButton')"
3872
- [attr.data-pc-group-section]="'navigator'"
3873
- >
3874
- <ng-template #icon>
3875
- <svg data-p-icon="chevron-left" *ngIf="!previousIconTemplate && !_previousIconTemplate" />
3876
- <span *ngIf="previousIconTemplate || _previousIconTemplate">
3877
- <ng-template *ngTemplateOutlet="previousIconTemplate || _previousIconTemplate"></ng-template>
3878
- </span>
3879
- </ng-template>
3880
- </p-button>
3881
- <div [class]="cx('title')" [pBind]="ptm('title')">
3882
- <button
3883
- *ngIf="currentView === 'date'"
3884
- type="button"
3885
- (click)="switchToMonthView($event)"
3816
+ <p-motion [visible]="inline || overlayVisible" name="p-anchored-overlay" [appear]="!inline" [options]="computedMotionOptions()" (onBeforeEnter)="onOverlayBeforeEnter($event)" (onAfterLeave)="onOverlayAfterLeave($event)">
3817
+ <div
3818
+ #contentWrapper
3819
+ [attr.id]="panelId"
3820
+ [ngStyle]="panelStyle"
3821
+ [class]="cn(cx('panel'), panelStyleClass)"
3822
+ [attr.aria-label]="getTranslation('chooseDate')"
3823
+ [attr.role]="inline ? null : 'dialog'"
3824
+ [attr.aria-modal]="inline ? null : 'true'"
3825
+ (click)="onOverlayClick($event)"
3826
+ [pBind]="ptm('panel')"
3827
+ >
3828
+ <ng-content select="p-header"></ng-content>
3829
+ <ng-container *ngTemplateOutlet="headerTemplate || _headerTemplate"></ng-container>
3830
+ <ng-container *ngIf="!timeOnly">
3831
+ <div [class]="cx('calendarContainer')" [pBind]="ptm('calendarContainer')">
3832
+ <div [class]="cx('calendar')" *ngFor="let month of months; let i = index" [pBind]="ptm('calendar')">
3833
+ <div [class]="cx('header')" [pBind]="ptm('header')">
3834
+ <p-button
3835
+ rounded
3836
+ variant="text"
3837
+ severity="secondary"
3886
3838
  (keydown)="onContainerButtonKeydown($event)"
3887
- [class]="cx('selectMonth')"
3888
- [attr.disabled]="switchViewButtonDisabled() ? '' : undefined"
3889
- [attr.aria-label]="this.getTranslation('chooseMonth')"
3890
- pRipple
3891
- [pBind]="ptm('selectMonth')"
3839
+ [styleClass]="cx('pcPrevButton')"
3840
+ (onClick)="onPrevButtonClick($event)"
3841
+ [ngStyle]="{ visibility: i === 0 ? 'visible' : 'hidden' }"
3842
+ type="button"
3843
+ [ariaLabel]="prevIconAriaLabel"
3844
+ [pt]="ptm('pcPrevButton')"
3892
3845
  [attr.data-pc-group-section]="'navigator'"
3893
3846
  >
3894
- {{ getMonthName(month.month) }}
3895
- </button>
3896
- <button
3897
- *ngIf="currentView !== 'year'"
3898
- type="button"
3899
- (click)="switchToYearView($event)"
3847
+ <ng-template #icon>
3848
+ <svg data-p-icon="chevron-left" *ngIf="!previousIconTemplate && !_previousIconTemplate" />
3849
+ <span *ngIf="previousIconTemplate || _previousIconTemplate">
3850
+ <ng-template *ngTemplateOutlet="previousIconTemplate || _previousIconTemplate"></ng-template>
3851
+ </span>
3852
+ </ng-template>
3853
+ </p-button>
3854
+ <div [class]="cx('title')" [pBind]="ptm('title')">
3855
+ <button
3856
+ *ngIf="currentView === 'date'"
3857
+ type="button"
3858
+ (click)="switchToMonthView($event)"
3859
+ (keydown)="onContainerButtonKeydown($event)"
3860
+ [class]="cx('selectMonth')"
3861
+ [attr.disabled]="switchViewButtonDisabled() ? '' : undefined"
3862
+ [attr.aria-label]="this.getTranslation('chooseMonth')"
3863
+ pRipple
3864
+ [pBind]="ptm('selectMonth')"
3865
+ [attr.data-pc-group-section]="'navigator'"
3866
+ >
3867
+ {{ getMonthName(month.month) }}
3868
+ </button>
3869
+ <button
3870
+ *ngIf="currentView !== 'year'"
3871
+ type="button"
3872
+ (click)="switchToYearView($event)"
3873
+ (keydown)="onContainerButtonKeydown($event)"
3874
+ [class]="cx('selectYear')"
3875
+ [attr.disabled]="switchViewButtonDisabled() ? '' : undefined"
3876
+ [attr.aria-label]="getTranslation('chooseYear')"
3877
+ pRipple
3878
+ [pBind]="ptm('selectYear')"
3879
+ [attr.data-pc-group-section]="'navigator'"
3880
+ >
3881
+ {{ getYear(month) }}
3882
+ </button>
3883
+ <span [class]="cx('decade')" *ngIf="currentView === 'year'" [pBind]="ptm('decade')">
3884
+ <ng-container *ngIf="!decadeTemplate && !_decadeTemplate">{{ yearPickerValues()[0] }} - {{ yearPickerValues()[yearPickerValues().length - 1] }}</ng-container>
3885
+ <ng-container *ngTemplateOutlet="decadeTemplate || _decadeTemplate; context: { $implicit: yearPickerValues }"></ng-container>
3886
+ </span>
3887
+ </div>
3888
+ <p-button
3889
+ rounded
3890
+ variant="text"
3891
+ severity="secondary"
3900
3892
  (keydown)="onContainerButtonKeydown($event)"
3901
- [class]="cx('selectYear')"
3902
- [attr.disabled]="switchViewButtonDisabled() ? '' : undefined"
3903
- [attr.aria-label]="getTranslation('chooseYear')"
3904
- pRipple
3905
- [pBind]="ptm('selectYear')"
3893
+ [styleClass]="cx('pcNextButton')"
3894
+ (onClick)="onNextButtonClick($event)"
3895
+ [ngStyle]="{ visibility: i === months.length - 1 ? 'visible' : 'hidden' }"
3896
+ [ariaLabel]="nextIconAriaLabel"
3897
+ [pt]="ptm('pcNextButton')"
3906
3898
  [attr.data-pc-group-section]="'navigator'"
3907
3899
  >
3908
- {{ getYear(month) }}
3909
- </button>
3910
- <span [class]="cx('decade')" *ngIf="currentView === 'year'" [pBind]="ptm('decade')">
3911
- <ng-container *ngIf="!decadeTemplate && !_decadeTemplate">{{ yearPickerValues()[0] }} - {{ yearPickerValues()[yearPickerValues().length - 1] }}</ng-container>
3912
- <ng-container *ngTemplateOutlet="decadeTemplate || _decadeTemplate; context: { $implicit: yearPickerValues }"></ng-container>
3913
- </span>
3900
+ <ng-template #icon>
3901
+ <svg data-p-icon="chevron-right" *ngIf="!nextIconTemplate && !_nextIconTemplate" />
3902
+ <ng-container *ngIf="nextIconTemplate || _nextIconTemplate">
3903
+ <ng-template *ngTemplateOutlet="nextIconTemplate || _nextIconTemplate"></ng-template>
3904
+ </ng-container>
3905
+ </ng-template>
3906
+ </p-button>
3914
3907
  </div>
3915
- <p-button
3916
- rounded
3917
- variant="text"
3918
- severity="secondary"
3919
- (keydown)="onContainerButtonKeydown($event)"
3920
- [styleClass]="cx('pcNextButton')"
3921
- (onClick)="onNextButtonClick($event)"
3922
- [ngStyle]="{ visibility: i === months.length - 1 ? 'visible' : 'hidden' }"
3923
- [ariaLabel]="nextIconAriaLabel"
3924
- [pt]="ptm('pcNextButton')"
3925
- [attr.data-pc-group-section]="'navigator'"
3926
- >
3927
- <ng-template #icon>
3928
- <svg data-p-icon="chevron-right" *ngIf="!nextIconTemplate && !_nextIconTemplate" />
3929
- <ng-container *ngIf="nextIconTemplate || _nextIconTemplate">
3930
- <ng-template *ngTemplateOutlet="nextIconTemplate || _nextIconTemplate"></ng-template>
3931
- </ng-container>
3932
- </ng-template>
3933
- </p-button>
3934
- </div>
3935
- <table [class]="cx('dayView')" role="grid" *ngIf="currentView === 'date'" [pBind]="ptm('table')">
3936
- <thead [pBind]="ptm('tableHeader')">
3937
- <tr [pBind]="ptm('tableHeaderRow')">
3938
- <th *ngIf="showWeek" [class]="cx('weekHeader')" [pBind]="ptm('weekHeader')">
3939
- <span [pBind]="ptm('weekHeaderLabel')">{{ getTranslation('weekHeader') }}</span>
3940
- </th>
3941
- <th [class]="cx('weekDayCell')" scope="col" *ngFor="let weekDay of weekDays; let begin = first; let end = last" [pBind]="ptm('weekDayCell')">
3942
- <span [class]="cx('weekDay')" [pBind]="ptm('weekDay')">{{ weekDay }}</span>
3943
- </th>
3944
- </tr>
3945
- </thead>
3946
- <tbody [pBind]="ptm('tableBody')">
3947
- <tr *ngFor="let week of month.dates; let j = index" [pBind]="ptm('tableBodyRow')">
3948
- <td *ngIf="showWeek" [class]="cx('weekNumber')" [pBind]="ptm('weekNumber')">
3949
- <span [class]="cx('weekLabelContainer')" [pBind]="ptm('weekLabelContainer')">
3950
- {{ month.weekNumbers[j] }}
3951
- </span>
3952
- </td>
3953
- <td *ngFor="let date of week" [attr.aria-label]="date.day" [class]="cx('dayCell', { date })" [pBind]="ptm('dayCell')">
3954
- <ng-container *ngIf="date.otherMonth ? showOtherMonths : true">
3955
- <span
3956
- [ngClass]="dayClass(date)"
3957
- (click)="onDateSelect($event, date)"
3958
- draggable="false"
3959
- [attr.data-date]="formatDateKey(formatDateMetaToDate(date))"
3960
- (keydown)="onDateCellKeydown($event, date, i)"
3961
- pRipple
3962
- [pBind]="ptm('day')"
3963
- >
3964
- <ng-container *ngIf="!dateTemplate && !_dateTemplate && (date.selectable || (!disabledDateTemplate && !_disabledDateTemplate))">{{ date.day }}</ng-container>
3965
- <ng-container *ngIf="date.selectable || (!disabledDateTemplate && !_disabledDateTemplate)">
3966
- <ng-container *ngTemplateOutlet="dateTemplate || _dateTemplate; context: { $implicit: date }"></ng-container>
3967
- </ng-container>
3968
- <ng-container *ngIf="!date.selectable">
3969
- <ng-container *ngTemplateOutlet="disabledDateTemplate || _disabledDateTemplate; context: { $implicit: date }"></ng-container>
3970
- </ng-container>
3908
+ <table [class]="cx('dayView')" role="grid" *ngIf="currentView === 'date'" [pBind]="ptm('table')">
3909
+ <thead [pBind]="ptm('tableHeader')">
3910
+ <tr [pBind]="ptm('tableHeaderRow')">
3911
+ <th *ngIf="showWeek" [class]="cx('weekHeader')" [pBind]="ptm('weekHeader')">
3912
+ <span [pBind]="ptm('weekHeaderLabel')">{{ getTranslation('weekHeader') }}</span>
3913
+ </th>
3914
+ <th [class]="cx('weekDayCell')" scope="col" *ngFor="let weekDay of weekDays; let begin = first; let end = last" [pBind]="ptm('weekDayCell')">
3915
+ <span [class]="cx('weekDay')" [pBind]="ptm('weekDay')">{{ weekDay }}</span>
3916
+ </th>
3917
+ </tr>
3918
+ </thead>
3919
+ <tbody [pBind]="ptm('tableBody')">
3920
+ <tr *ngFor="let week of month.dates; let j = index" [pBind]="ptm('tableBodyRow')">
3921
+ <td *ngIf="showWeek" [class]="cx('weekNumber')" [pBind]="ptm('weekNumber')">
3922
+ <span [class]="cx('weekLabelContainer')" [pBind]="ptm('weekLabelContainer')">
3923
+ {{ month.weekNumbers[j] }}
3971
3924
  </span>
3972
- <div *ngIf="isSelected(date)" class="p-hidden-accessible" aria-live="polite">
3973
- {{ date.day }}
3974
- </div>
3975
- </ng-container>
3976
- </td>
3977
- </tr>
3978
- </tbody>
3979
- </table>
3925
+ </td>
3926
+ <td *ngFor="let date of week" [attr.aria-label]="date.day" [class]="cx('dayCell', { date })" [pBind]="ptm('dayCell')">
3927
+ <ng-container *ngIf="date.otherMonth ? showOtherMonths : true">
3928
+ <span
3929
+ [ngClass]="dayClass(date)"
3930
+ (click)="onDateSelect($event, date)"
3931
+ draggable="false"
3932
+ [attr.data-date]="formatDateKey(formatDateMetaToDate(date))"
3933
+ (keydown)="onDateCellKeydown($event, date, i)"
3934
+ pRipple
3935
+ [pBind]="ptm('day')"
3936
+ >
3937
+ <ng-container *ngIf="!dateTemplate && !_dateTemplate && (date.selectable || (!disabledDateTemplate && !_disabledDateTemplate))">{{ date.day }}</ng-container>
3938
+ <ng-container *ngIf="date.selectable || (!disabledDateTemplate && !_disabledDateTemplate)">
3939
+ <ng-container *ngTemplateOutlet="dateTemplate || _dateTemplate; context: { $implicit: date }"></ng-container>
3940
+ </ng-container>
3941
+ <ng-container *ngIf="!date.selectable">
3942
+ <ng-container *ngTemplateOutlet="disabledDateTemplate || _disabledDateTemplate; context: { $implicit: date }"></ng-container>
3943
+ </ng-container>
3944
+ </span>
3945
+ <div *ngIf="isSelected(date)" class="p-hidden-accessible" aria-live="polite">
3946
+ {{ date.day }}
3947
+ </div>
3948
+ </ng-container>
3949
+ </td>
3950
+ </tr>
3951
+ </tbody>
3952
+ </table>
3953
+ </div>
3980
3954
  </div>
3981
- </div>
3982
- <div [class]="cx('monthView')" *ngIf="currentView === 'month'" [pBind]="ptm('monthView')">
3983
- <span *ngFor="let m of monthPickerValues(); let i = index" (click)="onMonthSelect($event, i)" (keydown)="onMonthCellKeydown($event, i)" [class]="cx('month', { month: m, index: i })" pRipple [pBind]="ptm('month')">
3984
- {{ m }}
3985
- <div *ngIf="isMonthSelected(i)" class="p-hidden-accessible" aria-live="polite">
3955
+ <div [class]="cx('monthView')" *ngIf="currentView === 'month'" [pBind]="ptm('monthView')">
3956
+ <span *ngFor="let m of monthPickerValues(); let i = index" (click)="onMonthSelect($event, i)" (keydown)="onMonthCellKeydown($event, i)" [class]="cx('month', { month: m, index: i })" pRipple [pBind]="ptm('month')">
3986
3957
  {{ m }}
3987
- </div>
3988
- </span>
3989
- </div>
3990
- <div [class]="cx('yearView')" *ngIf="currentView === 'year'" [pBind]="ptm('yearView')">
3991
- <span *ngFor="let y of yearPickerValues()" (click)="onYearSelect($event, y)" (keydown)="onYearCellKeydown($event, y)" [class]="cx('year', { year: y })" pRipple [pBind]="ptm('year')">
3992
- {{ y }}
3993
- <div *ngIf="isYearSelected(y)" class="p-hidden-accessible" aria-live="polite">
3958
+ <div *ngIf="isMonthSelected(i)" class="p-hidden-accessible" aria-live="polite">
3959
+ {{ m }}
3960
+ </div>
3961
+ </span>
3962
+ </div>
3963
+ <div [class]="cx('yearView')" *ngIf="currentView === 'year'" [pBind]="ptm('yearView')">
3964
+ <span *ngFor="let y of yearPickerValues()" (click)="onYearSelect($event, y)" (keydown)="onYearCellKeydown($event, y)" [class]="cx('year', { year: y })" pRipple [pBind]="ptm('year')">
3994
3965
  {{ y }}
3995
- </div>
3996
- </span>
3997
- </div>
3998
- </ng-container>
3999
- <div [class]="cx('timePicker')" *ngIf="(showTime || timeOnly) && currentView === 'date'" [pBind]="ptm('timePicker')">
4000
- <div [class]="cx('hourPicker')" [pBind]="ptm('hourPicker')">
4001
- <p-button
4002
- rounded
4003
- variant="text"
4004
- severity="secondary"
4005
- [styleClass]="cx('pcIncrementButton')"
4006
- (keydown)="onContainerButtonKeydown($event)"
4007
- (keydown.enter)="incrementHour($event)"
4008
- (keydown.space)="incrementHour($event)"
4009
- (mousedown)="onTimePickerElementMouseDown($event, 0, 1)"
4010
- (mouseup)="onTimePickerElementMouseUp($event)"
4011
- (keyup.enter)="onTimePickerElementMouseUp($event)"
4012
- (keyup.space)="onTimePickerElementMouseUp($event)"
4013
- (mouseleave)="onTimePickerElementMouseLeave()"
4014
- [attr.aria-label]="getTranslation('nextHour')"
4015
- [pt]="ptm('pcIncrementButton')"
4016
- [attr.data-pc-group-section]="'timepickerbutton'"
4017
- >
4018
- <ng-template #icon>
4019
- <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
4020
- <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
4021
- </ng-template>
4022
- </p-button>
4023
- <span [pBind]="ptm('hour')"><ng-container *ngIf="currentHour < 10">0</ng-container>{{ currentHour }}</span>
4024
- <p-button
4025
- rounded
4026
- variant="text"
4027
- severity="secondary"
4028
- [styleClass]="cx('pcDecrementButton')"
4029
- (keydown)="onContainerButtonKeydown($event)"
4030
- (keydown.enter)="decrementHour($event)"
4031
- (keydown.space)="decrementHour($event)"
4032
- (mousedown)="onTimePickerElementMouseDown($event, 0, -1)"
4033
- (mouseup)="onTimePickerElementMouseUp($event)"
4034
- (keyup.enter)="onTimePickerElementMouseUp($event)"
4035
- (keyup.space)="onTimePickerElementMouseUp($event)"
4036
- (mouseleave)="onTimePickerElementMouseLeave()"
4037
- [attr.aria-label]="getTranslation('prevHour')"
4038
- [pt]="ptm('pcDecrementButton')"
4039
- [attr.data-pc-group-section]="'timepickerbutton'"
4040
- >
4041
- <ng-template #icon>
4042
- <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
4043
- <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
4044
- </ng-template>
4045
- </p-button>
4046
- </div>
4047
- <div class="p-datepicker-separator" [pBind]="ptm('separatorContainer')">
4048
- <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
4049
- </div>
4050
- <div [class]="cx('minutePicker')" [pBind]="ptm('minutePicker')">
4051
- <p-button
4052
- rounded
4053
- variant="text"
4054
- severity="secondary"
4055
- [styleClass]="cx('pcIncrementButton')"
4056
- (keydown)="onContainerButtonKeydown($event)"
4057
- (keydown.enter)="incrementMinute($event)"
4058
- (keydown.space)="incrementMinute($event)"
4059
- (mousedown)="onTimePickerElementMouseDown($event, 1, 1)"
4060
- (mouseup)="onTimePickerElementMouseUp($event)"
4061
- (keyup.enter)="onTimePickerElementMouseUp($event)"
4062
- (keyup.space)="onTimePickerElementMouseUp($event)"
4063
- (mouseleave)="onTimePickerElementMouseLeave()"
4064
- [attr.aria-label]="getTranslation('nextMinute')"
4065
- [pt]="ptm('pcIncrementButton')"
4066
- [attr.data-pc-group-section]="'timepickerbutton'"
4067
- >
4068
- <ng-template #icon>
4069
- <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
4070
- <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
4071
- </ng-template>
4072
- </p-button>
4073
- <span [pBind]="ptm('minute')"><ng-container *ngIf="currentMinute < 10">0</ng-container>{{ currentMinute }}</span>
4074
- <p-button
4075
- rounded
4076
- variant="text"
4077
- severity="secondary"
4078
- [styleClass]="cx('pcDecrementButton')"
4079
- (keydown)="onContainerButtonKeydown($event)"
4080
- (keydown.enter)="decrementMinute($event)"
4081
- (keydown.space)="decrementMinute($event)"
4082
- (mousedown)="onTimePickerElementMouseDown($event, 1, -1)"
4083
- (mouseup)="onTimePickerElementMouseUp($event)"
4084
- (keyup.enter)="onTimePickerElementMouseUp($event)"
4085
- (keyup.space)="onTimePickerElementMouseUp($event)"
4086
- (mouseleave)="onTimePickerElementMouseLeave()"
4087
- [attr.aria-label]="getTranslation('prevMinute')"
4088
- [pt]="ptm('pcDecrementButton')"
4089
- [attr.data-pc-group-section]="'timepickerbutton'"
4090
- >
4091
- <ng-template #icon>
4092
- <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
4093
- <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
4094
- </ng-template>
4095
- </p-button>
4096
- </div>
4097
- <div [class]="cx('separator')" *ngIf="showSeconds" [pBind]="ptm('separatorContainer')">
4098
- <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
4099
- </div>
4100
- <div [class]="cx('secondPicker')" *ngIf="showSeconds" [pBind]="ptm('secondPicker')">
4101
- <p-button
4102
- rounded
4103
- variant="text"
4104
- severity="secondary"
4105
- [styleClass]="cx('pcIncrementButton')"
4106
- (keydown)="onContainerButtonKeydown($event)"
4107
- (keydown.enter)="incrementSecond($event)"
4108
- (keydown.space)="incrementSecond($event)"
4109
- (mousedown)="onTimePickerElementMouseDown($event, 2, 1)"
4110
- (mouseup)="onTimePickerElementMouseUp($event)"
4111
- (keyup.enter)="onTimePickerElementMouseUp($event)"
4112
- (keyup.space)="onTimePickerElementMouseUp($event)"
4113
- (mouseleave)="onTimePickerElementMouseLeave()"
4114
- [attr.aria-label]="getTranslation('nextSecond')"
4115
- [pt]="ptm('pcIncrementButton')"
4116
- [attr.data-pc-group-section]="'timepickerbutton'"
4117
- >
4118
- <ng-template #icon>
4119
- <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
4120
- <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
4121
- </ng-template>
4122
- </p-button>
4123
- <span [pBind]="ptm('second')"><ng-container *ngIf="currentSecond < 10">0</ng-container>{{ currentSecond }}</span>
4124
- <p-button
4125
- rounded
4126
- variant="text"
4127
- severity="secondary"
4128
- [styleClass]="cx('pcDecrementButton')"
4129
- (keydown)="onContainerButtonKeydown($event)"
4130
- (keydown.enter)="decrementSecond($event)"
4131
- (keydown.space)="decrementSecond($event)"
4132
- (mousedown)="onTimePickerElementMouseDown($event, 2, -1)"
4133
- (mouseup)="onTimePickerElementMouseUp($event)"
4134
- (keyup.enter)="onTimePickerElementMouseUp($event)"
4135
- (keyup.space)="onTimePickerElementMouseUp($event)"
4136
- (mouseleave)="onTimePickerElementMouseLeave()"
4137
- [attr.aria-label]="getTranslation('prevSecond')"
4138
- [pt]="ptm('pcDecrementButton')"
4139
- [attr.data-pc-group-section]="'timepickerbutton'"
4140
- >
4141
- <ng-template #icon>
4142
- <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
4143
- <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
4144
- </ng-template>
4145
- </p-button>
4146
- </div>
4147
- <div [class]="cx('separator')" *ngIf="hourFormat == '12'" [pBind]="ptm('separatorContainer')">
4148
- <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
3966
+ <div *ngIf="isYearSelected(y)" class="p-hidden-accessible" aria-live="polite">
3967
+ {{ y }}
3968
+ </div>
3969
+ </span>
3970
+ </div>
3971
+ </ng-container>
3972
+ <div [class]="cx('timePicker')" *ngIf="(showTime || timeOnly) && currentView === 'date'" [pBind]="ptm('timePicker')">
3973
+ <div [class]="cx('hourPicker')" [pBind]="ptm('hourPicker')">
3974
+ <p-button
3975
+ rounded
3976
+ variant="text"
3977
+ severity="secondary"
3978
+ [styleClass]="cx('pcIncrementButton')"
3979
+ (keydown)="onContainerButtonKeydown($event)"
3980
+ (keydown.enter)="incrementHour($event)"
3981
+ (keydown.space)="incrementHour($event)"
3982
+ (mousedown)="onTimePickerElementMouseDown($event, 0, 1)"
3983
+ (mouseup)="onTimePickerElementMouseUp($event)"
3984
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
3985
+ (keyup.space)="onTimePickerElementMouseUp($event)"
3986
+ (mouseleave)="onTimePickerElementMouseLeave()"
3987
+ [attr.aria-label]="getTranslation('nextHour')"
3988
+ [pt]="ptm('pcIncrementButton')"
3989
+ [attr.data-pc-group-section]="'timepickerbutton'"
3990
+ >
3991
+ <ng-template #icon>
3992
+ <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
3993
+ <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
3994
+ </ng-template>
3995
+ </p-button>
3996
+ <span [pBind]="ptm('hour')"><ng-container *ngIf="currentHour < 10">0</ng-container>{{ currentHour }}</span>
3997
+ <p-button
3998
+ rounded
3999
+ variant="text"
4000
+ severity="secondary"
4001
+ [styleClass]="cx('pcDecrementButton')"
4002
+ (keydown)="onContainerButtonKeydown($event)"
4003
+ (keydown.enter)="decrementHour($event)"
4004
+ (keydown.space)="decrementHour($event)"
4005
+ (mousedown)="onTimePickerElementMouseDown($event, 0, -1)"
4006
+ (mouseup)="onTimePickerElementMouseUp($event)"
4007
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
4008
+ (keyup.space)="onTimePickerElementMouseUp($event)"
4009
+ (mouseleave)="onTimePickerElementMouseLeave()"
4010
+ [attr.aria-label]="getTranslation('prevHour')"
4011
+ [pt]="ptm('pcDecrementButton')"
4012
+ [attr.data-pc-group-section]="'timepickerbutton'"
4013
+ >
4014
+ <ng-template #icon>
4015
+ <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
4016
+ <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
4017
+ </ng-template>
4018
+ </p-button>
4019
+ </div>
4020
+ <div class="p-datepicker-separator" [pBind]="ptm('separatorContainer')">
4021
+ <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
4022
+ </div>
4023
+ <div [class]="cx('minutePicker')" [pBind]="ptm('minutePicker')">
4024
+ <p-button
4025
+ rounded
4026
+ variant="text"
4027
+ severity="secondary"
4028
+ [styleClass]="cx('pcIncrementButton')"
4029
+ (keydown)="onContainerButtonKeydown($event)"
4030
+ (keydown.enter)="incrementMinute($event)"
4031
+ (keydown.space)="incrementMinute($event)"
4032
+ (mousedown)="onTimePickerElementMouseDown($event, 1, 1)"
4033
+ (mouseup)="onTimePickerElementMouseUp($event)"
4034
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
4035
+ (keyup.space)="onTimePickerElementMouseUp($event)"
4036
+ (mouseleave)="onTimePickerElementMouseLeave()"
4037
+ [attr.aria-label]="getTranslation('nextMinute')"
4038
+ [pt]="ptm('pcIncrementButton')"
4039
+ [attr.data-pc-group-section]="'timepickerbutton'"
4040
+ >
4041
+ <ng-template #icon>
4042
+ <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
4043
+ <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
4044
+ </ng-template>
4045
+ </p-button>
4046
+ <span [pBind]="ptm('minute')"><ng-container *ngIf="currentMinute < 10">0</ng-container>{{ currentMinute }}</span>
4047
+ <p-button
4048
+ rounded
4049
+ variant="text"
4050
+ severity="secondary"
4051
+ [styleClass]="cx('pcDecrementButton')"
4052
+ (keydown)="onContainerButtonKeydown($event)"
4053
+ (keydown.enter)="decrementMinute($event)"
4054
+ (keydown.space)="decrementMinute($event)"
4055
+ (mousedown)="onTimePickerElementMouseDown($event, 1, -1)"
4056
+ (mouseup)="onTimePickerElementMouseUp($event)"
4057
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
4058
+ (keyup.space)="onTimePickerElementMouseUp($event)"
4059
+ (mouseleave)="onTimePickerElementMouseLeave()"
4060
+ [attr.aria-label]="getTranslation('prevMinute')"
4061
+ [pt]="ptm('pcDecrementButton')"
4062
+ [attr.data-pc-group-section]="'timepickerbutton'"
4063
+ >
4064
+ <ng-template #icon>
4065
+ <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
4066
+ <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
4067
+ </ng-template>
4068
+ </p-button>
4069
+ </div>
4070
+ <div [class]="cx('separator')" *ngIf="showSeconds" [pBind]="ptm('separatorContainer')">
4071
+ <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
4072
+ </div>
4073
+ <div [class]="cx('secondPicker')" *ngIf="showSeconds" [pBind]="ptm('secondPicker')">
4074
+ <p-button
4075
+ rounded
4076
+ variant="text"
4077
+ severity="secondary"
4078
+ [styleClass]="cx('pcIncrementButton')"
4079
+ (keydown)="onContainerButtonKeydown($event)"
4080
+ (keydown.enter)="incrementSecond($event)"
4081
+ (keydown.space)="incrementSecond($event)"
4082
+ (mousedown)="onTimePickerElementMouseDown($event, 2, 1)"
4083
+ (mouseup)="onTimePickerElementMouseUp($event)"
4084
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
4085
+ (keyup.space)="onTimePickerElementMouseUp($event)"
4086
+ (mouseleave)="onTimePickerElementMouseLeave()"
4087
+ [attr.aria-label]="getTranslation('nextSecond')"
4088
+ [pt]="ptm('pcIncrementButton')"
4089
+ [attr.data-pc-group-section]="'timepickerbutton'"
4090
+ >
4091
+ <ng-template #icon>
4092
+ <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
4093
+ <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
4094
+ </ng-template>
4095
+ </p-button>
4096
+ <span [pBind]="ptm('second')"><ng-container *ngIf="currentSecond < 10">0</ng-container>{{ currentSecond }}</span>
4097
+ <p-button
4098
+ rounded
4099
+ variant="text"
4100
+ severity="secondary"
4101
+ [styleClass]="cx('pcDecrementButton')"
4102
+ (keydown)="onContainerButtonKeydown($event)"
4103
+ (keydown.enter)="decrementSecond($event)"
4104
+ (keydown.space)="decrementSecond($event)"
4105
+ (mousedown)="onTimePickerElementMouseDown($event, 2, -1)"
4106
+ (mouseup)="onTimePickerElementMouseUp($event)"
4107
+ (keyup.enter)="onTimePickerElementMouseUp($event)"
4108
+ (keyup.space)="onTimePickerElementMouseUp($event)"
4109
+ (mouseleave)="onTimePickerElementMouseLeave()"
4110
+ [attr.aria-label]="getTranslation('prevSecond')"
4111
+ [pt]="ptm('pcDecrementButton')"
4112
+ [attr.data-pc-group-section]="'timepickerbutton'"
4113
+ >
4114
+ <ng-template #icon>
4115
+ <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
4116
+ <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
4117
+ </ng-template>
4118
+ </p-button>
4119
+ </div>
4120
+ <div [class]="cx('separator')" *ngIf="hourFormat == '12'" [pBind]="ptm('separatorContainer')">
4121
+ <span [pBind]="ptm('separator')">{{ timeSeparator }}</span>
4122
+ </div>
4123
+ <div [class]="cx('ampmPicker')" *ngIf="hourFormat == '12'" [pBind]="ptm('ampmPicker')">
4124
+ <p-button
4125
+ text
4126
+ rounded
4127
+ severity="secondary"
4128
+ [styleClass]="cx('pcIncrementButton')"
4129
+ (keydown)="onContainerButtonKeydown($event)"
4130
+ (onClick)="toggleAMPM($event)"
4131
+ (keydown.enter)="toggleAMPM($event)"
4132
+ [attr.aria-label]="getTranslation('am')"
4133
+ [pt]="ptm('pcIncrementButton')"
4134
+ [attr.data-pc-group-section]="'timepickerbutton'"
4135
+ >
4136
+ <ng-template #icon>
4137
+ <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
4138
+ <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
4139
+ </ng-template>
4140
+ </p-button>
4141
+ <span [pBind]="ptm('ampm')">{{ pm ? 'PM' : 'AM' }}</span>
4142
+ <p-button
4143
+ text
4144
+ rounded
4145
+ severity="secondary"
4146
+ [styleClass]="cx('pcDecrementButton')"
4147
+ (keydown)="onContainerButtonKeydown($event)"
4148
+ (click)="toggleAMPM($event)"
4149
+ (keydown.enter)="toggleAMPM($event)"
4150
+ [attr.aria-label]="getTranslation('pm')"
4151
+ [pt]="ptm('pcDecrementButton')"
4152
+ [attr.data-pc-group-section]="'timepickerbutton'"
4153
+ >
4154
+ <ng-template #icon>
4155
+ <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
4156
+ <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
4157
+ </ng-template>
4158
+ </p-button>
4159
+ </div>
4149
4160
  </div>
4150
- <div [class]="cx('ampmPicker')" *ngIf="hourFormat == '12'" [pBind]="ptm('ampmPicker')">
4151
- <p-button
4152
- text
4153
- rounded
4154
- severity="secondary"
4155
- [styleClass]="cx('pcIncrementButton')"
4156
- (keydown)="onContainerButtonKeydown($event)"
4157
- (onClick)="toggleAMPM($event)"
4158
- (keydown.enter)="toggleAMPM($event)"
4159
- [attr.aria-label]="getTranslation('am')"
4160
- [pt]="ptm('pcIncrementButton')"
4161
- [attr.data-pc-group-section]="'timepickerbutton'"
4162
- >
4163
- <ng-template #icon>
4164
- <svg data-p-icon="chevron-up" *ngIf="!incrementIconTemplate && !_incrementIconTemplate" [pBind]="ptm('pcIncrementButton')['icon']" />
4165
- <ng-template *ngTemplateOutlet="incrementIconTemplate || _incrementIconTemplate"></ng-template>
4166
- </ng-template>
4167
- </p-button>
4168
- <span [pBind]="ptm('ampm')">{{ pm ? 'PM' : 'AM' }}</span>
4169
- <p-button
4170
- text
4171
- rounded
4172
- severity="secondary"
4173
- [styleClass]="cx('pcDecrementButton')"
4174
- (keydown)="onContainerButtonKeydown($event)"
4175
- (click)="toggleAMPM($event)"
4176
- (keydown.enter)="toggleAMPM($event)"
4177
- [attr.aria-label]="getTranslation('pm')"
4178
- [pt]="ptm('pcDecrementButton')"
4179
- [attr.data-pc-group-section]="'timepickerbutton'"
4180
- >
4181
- <ng-template #icon>
4182
- <svg data-p-icon="chevron-down" *ngIf="!decrementIconTemplate && !_decrementIconTemplate" [pBind]="ptm('pcDecrementButton')['icon']" />
4183
- <ng-template *ngTemplateOutlet="decrementIconTemplate || _decrementIconTemplate"></ng-template>
4184
- </ng-template>
4185
- </p-button>
4161
+ <div [class]="cx('buttonbar')" *ngIf="showButtonBar" [pBind]="ptm('buttonbar')">
4162
+ @if (buttonBarTemplate || _buttonBarTemplate) {
4163
+ <ng-container *ngTemplateOutlet="buttonBarTemplate || _buttonBarTemplate; context: { todayCallback: onTodayButtonClick.bind(this), clearCallback: onClearButtonClick.bind(this) }"></ng-container>
4164
+ } @else {
4165
+ <p-button
4166
+ size="small"
4167
+ [styleClass]="cx('pcTodayButton')"
4168
+ [label]="getTranslation('today')"
4169
+ (keydown)="onContainerButtonKeydown($event)"
4170
+ (onClick)="onTodayButtonClick($event)"
4171
+ [ngClass]="todayButtonStyleClass"
4172
+ severity="secondary"
4173
+ variant="text"
4174
+ size="small"
4175
+ [pt]="ptm('pcTodayButton')"
4176
+ [attr.data-pc-group-section]="'button'"
4177
+ />
4178
+ <p-button
4179
+ size="small"
4180
+ [styleClass]="cx('pcClearButton')"
4181
+ [label]="getTranslation('clear')"
4182
+ (keydown)="onContainerButtonKeydown($event)"
4183
+ (onClick)="onClearButtonClick($event)"
4184
+ [ngClass]="clearButtonStyleClass"
4185
+ severity="secondary"
4186
+ variant="text"
4187
+ size="small"
4188
+ [pt]="ptm('pcClearButton')"
4189
+ [attr.data-pc-group-section]="'button'"
4190
+ />
4191
+ }
4186
4192
  </div>
4193
+ <ng-content select="p-footer"></ng-content>
4194
+ <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate"></ng-container>
4187
4195
  </div>
4188
- <div [class]="cx('buttonbar')" *ngIf="showButtonBar" [pBind]="ptm('buttonbar')">
4189
- @if (buttonBarTemplate || _buttonBarTemplate) {
4190
- <ng-container *ngTemplateOutlet="buttonBarTemplate || _buttonBarTemplate; context: { todayCallback: onTodayButtonClick.bind(this), clearCallback: onClearButtonClick.bind(this) }"></ng-container>
4191
- } @else {
4192
- <p-button
4193
- size="small"
4194
- [styleClass]="cx('pcTodayButton')"
4195
- [label]="getTranslation('today')"
4196
- (keydown)="onContainerButtonKeydown($event)"
4197
- (onClick)="onTodayButtonClick($event)"
4198
- [ngClass]="todayButtonStyleClass"
4199
- severity="secondary"
4200
- variant="text"
4201
- size="small"
4202
- [pt]="ptm('pcTodayButton')"
4203
- [attr.data-pc-group-section]="'button'"
4204
- />
4205
- <p-button
4206
- size="small"
4207
- [styleClass]="cx('pcClearButton')"
4208
- [label]="getTranslation('clear')"
4209
- (keydown)="onContainerButtonKeydown($event)"
4210
- (onClick)="onClearButtonClick($event)"
4211
- [ngClass]="clearButtonStyleClass"
4212
- severity="secondary"
4213
- variant="text"
4214
- size="small"
4215
- [pt]="ptm('pcClearButton')"
4216
- [attr.data-pc-group-section]="'button'"
4217
- />
4218
- }
4219
- </div>
4220
- <ng-content select="p-footer"></ng-content>
4221
- <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate"></ng-container>
4222
- </div>
4196
+ </p-motion>
4223
4197
  `,
4224
- animations: [
4225
- trigger('overlayAnimation', [
4226
- state('visibleTouchUI', style$2({
4227
- transform: 'translate(-50%,-50%)',
4228
- opacity: 1
4229
- })),
4230
- transition('void => visible', [style$2({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}', style$2({ opacity: 1, transform: '*' }))]),
4231
- transition('visible => void', [animate('{{hideTransitionParams}}', style$2({ opacity: 0 }))]),
4232
- transition('void => visibleTouchUI', [style$2({ opacity: 0, transform: 'translate3d(-50%, -40%, 0) scale(0.9)' }), animate('{{showTransitionParams}}')]),
4233
- transition('visibleTouchUI => void', [
4234
- animate('{{hideTransitionParams}}', style$2({
4235
- opacity: 0,
4236
- transform: 'translate3d(-50%, -40%, 0) scale(0.9)'
4237
- }))
4238
- ])
4239
- ])
4240
- ],
4241
4198
  providers: [DATEPICKER_VALUE_ACCESSOR, DatePickerStyle, { provide: DATEPICKER_INSTANCE, useExisting: DatePicker }, { provide: PARENT_INSTANCE, useExisting: DatePicker }],
4242
4199
  changeDetection: ChangeDetectionStrategy.OnPush,
4243
4200
  encapsulation: ViewEncapsulation.None,
@@ -4385,7 +4342,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
4385
4342
  type: Input
4386
4343
  }], defaultDate: [{
4387
4344
  type: Input
4388
- }], onFocus: [{
4345
+ }], appendTo: [{ type: i0.Input, args: [{ isSignal: true, alias: "appendTo", required: false }] }], motionOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "motionOptions", required: false }] }], onFocus: [{
4389
4346
  type: Output
4390
4347
  }], onBlur: [{
4391
4348
  type: Output
@@ -4459,11 +4416,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
4459
4416
  args: [PrimeTemplate]
4460
4417
  }] } });
4461
4418
  class DatePickerModule {
4462
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: DatePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4463
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: DatePickerModule, imports: [DatePicker, SharedModule], exports: [DatePicker, SharedModule] });
4464
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: DatePickerModule, imports: [DatePicker, SharedModule, SharedModule] });
4419
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: DatePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4420
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.1", ngImport: i0, type: DatePickerModule, imports: [DatePicker, SharedModule], exports: [DatePicker, SharedModule] });
4421
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: DatePickerModule, imports: [DatePicker, SharedModule, SharedModule] });
4465
4422
  }
4466
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: DatePickerModule, decorators: [{
4423
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: DatePickerModule, decorators: [{
4467
4424
  type: NgModule,
4468
4425
  args: [{
4469
4426
  imports: [DatePicker, SharedModule],