primeng 13.0.0-rc.1 → 13.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (457) hide show
  1. package/README.md +1 -1
  2. package/calendar/calendar.d.ts +31 -6
  3. package/esm2020/accordion/accordion.mjs +18 -16
  4. package/esm2020/api/confirmationservice.mjs +3 -3
  5. package/esm2020/api/contextmenuservice.mjs +3 -3
  6. package/esm2020/api/filterservice.mjs +3 -3
  7. package/esm2020/api/messageservice.mjs +3 -3
  8. package/esm2020/api/overlayservice.mjs +3 -3
  9. package/esm2020/api/primengconfig.mjs +3 -3
  10. package/esm2020/api/shared.mjs +13 -13
  11. package/esm2020/api/treedragdropservice.mjs +3 -3
  12. package/esm2020/autocomplete/autocomplete.mjs +7 -7
  13. package/esm2020/avatar/avatar.mjs +7 -7
  14. package/esm2020/avatargroup/avatargroup.mjs +7 -7
  15. package/esm2020/badge/badge.mjs +10 -10
  16. package/esm2020/blockui/blockui.mjs +7 -7
  17. package/esm2020/breadcrumb/breadcrumb.mjs +11 -11
  18. package/esm2020/button/button.mjs +10 -10
  19. package/esm2020/calendar/calendar.mjs +384 -77
  20. package/esm2020/captcha/captcha.mjs +7 -7
  21. package/esm2020/card/card.mjs +7 -7
  22. package/esm2020/carousel/carousel.mjs +7 -7
  23. package/esm2020/cascadeselect/cascadeselect.mjs +13 -13
  24. package/esm2020/chart/chart.mjs +7 -7
  25. package/esm2020/checkbox/checkbox.mjs +9 -9
  26. package/esm2020/chip/chip.mjs +7 -7
  27. package/esm2020/chips/chips.mjs +9 -8
  28. package/esm2020/codehighlighter/codehighlighter.mjs +7 -7
  29. package/esm2020/colorpicker/colorpicker.mjs +7 -7
  30. package/esm2020/confirmdialog/confirmdialog.mjs +7 -7
  31. package/esm2020/confirmpopup/confirmpopup.mjs +10 -10
  32. package/esm2020/contextmenu/contextmenu.mjs +10 -10
  33. package/esm2020/dataview/dataview.mjs +10 -10
  34. package/esm2020/defer/defer.mjs +7 -7
  35. package/esm2020/dialog/dialog.mjs +9 -9
  36. package/esm2020/divider/divider.mjs +7 -7
  37. package/esm2020/dock/dock.mjs +7 -7
  38. package/esm2020/dom/domhandler.mjs +2 -2
  39. package/esm2020/dragdrop/dragdrop.mjs +10 -10
  40. package/esm2020/dropdown/dropdown.mjs +14 -14
  41. package/esm2020/dynamicdialog/dialogservice.mjs +3 -3
  42. package/esm2020/dynamicdialog/dynamicdialog.mjs +11 -11
  43. package/esm2020/dynamicdialog/dynamicdialogcontent.mjs +3 -3
  44. package/esm2020/editor/editor.mjs +9 -9
  45. package/esm2020/fieldset/fieldset.mjs +10 -10
  46. package/esm2020/fileupload/fileupload.mjs +7 -7
  47. package/esm2020/focustrap/focustrap.mjs +7 -7
  48. package/esm2020/fullcalendar/fullcalendar.mjs +7 -7
  49. package/esm2020/galleria/galleria.mjs +19 -19
  50. package/esm2020/gmap/gmap.mjs +7 -7
  51. package/esm2020/image/image.mjs +7 -7
  52. package/esm2020/inplace/inplace.mjs +13 -13
  53. package/esm2020/inputmask/inputmask.mjs +8 -10
  54. package/esm2020/inputnumber/inputnumber.mjs +21 -10
  55. package/esm2020/inputswitch/inputswitch.mjs +9 -9
  56. package/esm2020/inputtext/inputtext.mjs +7 -7
  57. package/esm2020/inputtextarea/inputtextarea.mjs +7 -7
  58. package/esm2020/keyfilter/keyfilter.mjs +7 -7
  59. package/esm2020/knob/knob.mjs +7 -7
  60. package/esm2020/lightbox/lightbox.mjs +7 -7
  61. package/esm2020/listbox/listbox.mjs +9 -9
  62. package/esm2020/megamenu/megamenu.mjs +9 -9
  63. package/esm2020/menu/menu.mjs +21 -19
  64. package/esm2020/menubar/menubar.mjs +10 -10
  65. package/esm2020/message/message.mjs +7 -7
  66. package/esm2020/messages/messages.mjs +7 -7
  67. package/esm2020/multiselect/multiselect.mjs +13 -13
  68. package/esm2020/orderlist/orderlist.mjs +7 -7
  69. package/esm2020/organizationchart/organizationchart.mjs +13 -13
  70. package/esm2020/overlaypanel/overlaypanel.mjs +16 -12
  71. package/esm2020/paginator/paginator.mjs +9 -9
  72. package/esm2020/panel/panel.mjs +7 -7
  73. package/esm2020/panelmenu/panelmenu.mjs +14 -14
  74. package/esm2020/password/password.mjs +10 -10
  75. package/esm2020/picklist/picklist.mjs +7 -7
  76. package/esm2020/progressbar/progressbar.mjs +16 -14
  77. package/esm2020/progressspinner/progressspinner.mjs +7 -7
  78. package/esm2020/radiobutton/radiobutton.mjs +10 -10
  79. package/esm2020/rating/rating.mjs +7 -7
  80. package/esm2020/ripple/ripple.mjs +7 -7
  81. package/esm2020/scrollpanel/scrollpanel.mjs +9 -9
  82. package/esm2020/scrolltop/scrolltop.mjs +7 -7
  83. package/esm2020/selectbutton/selectbutton.mjs +9 -9
  84. package/esm2020/sidebar/sidebar.mjs +9 -8
  85. package/esm2020/skeleton/skeleton.mjs +7 -7
  86. package/esm2020/slidemenu/slidemenu.mjs +15 -13
  87. package/esm2020/slider/slider.mjs +7 -7
  88. package/esm2020/speeddial/speeddial.mjs +10 -10
  89. package/esm2020/spinner/spinner.mjs +7 -7
  90. package/esm2020/splitbutton/splitbutton.mjs +7 -7
  91. package/esm2020/splitter/splitter.mjs +9 -9
  92. package/esm2020/steps/steps.mjs +7 -7
  93. package/esm2020/styleclass/styleclass.mjs +7 -7
  94. package/esm2020/table/table.mjs +92 -89
  95. package/esm2020/tabmenu/tabmenu.mjs +9 -9
  96. package/esm2020/tabview/tabview.mjs +12 -12
  97. package/esm2020/tag/tag.mjs +7 -7
  98. package/esm2020/terminal/terminal.mjs +7 -7
  99. package/esm2020/terminal/terminalservice.mjs +3 -3
  100. package/esm2020/tieredmenu/tieredmenu.mjs +14 -12
  101. package/esm2020/timeline/timeline.mjs +9 -9
  102. package/esm2020/toast/toast.mjs +10 -10
  103. package/esm2020/togglebutton/togglebutton.mjs +9 -9
  104. package/esm2020/toolbar/toolbar.mjs +7 -7
  105. package/esm2020/tooltip/tooltip.mjs +7 -7
  106. package/esm2020/tree/tree.mjs +13 -13
  107. package/esm2020/treeselect/treeselect.mjs +10 -10
  108. package/esm2020/treetable/treetable.mjs +58 -58
  109. package/esm2020/tristatecheckbox/tristatecheckbox.mjs +7 -7
  110. package/esm2020/virtualscroller/virtualscroller.mjs +7 -7
  111. package/fesm2015/primeng-accordion.mjs +17 -15
  112. package/fesm2015/primeng-accordion.mjs.map +1 -1
  113. package/fesm2015/primeng-api.mjs +34 -34
  114. package/fesm2015/primeng-autocomplete.mjs +7 -7
  115. package/fesm2015/primeng-avatar.mjs +7 -7
  116. package/fesm2015/primeng-avatargroup.mjs +7 -7
  117. package/fesm2015/primeng-badge.mjs +10 -10
  118. package/fesm2015/primeng-blockui.mjs +7 -7
  119. package/fesm2015/primeng-breadcrumb.mjs +10 -10
  120. package/fesm2015/primeng-breadcrumb.mjs.map +1 -1
  121. package/fesm2015/primeng-button.mjs +10 -10
  122. package/fesm2015/primeng-calendar.mjs +383 -76
  123. package/fesm2015/primeng-calendar.mjs.map +1 -1
  124. package/fesm2015/primeng-captcha.mjs +7 -7
  125. package/fesm2015/primeng-card.mjs +7 -7
  126. package/fesm2015/primeng-carousel.mjs +7 -7
  127. package/fesm2015/primeng-cascadeselect.mjs +12 -12
  128. package/fesm2015/primeng-cascadeselect.mjs.map +1 -1
  129. package/fesm2015/primeng-chart.mjs +7 -7
  130. package/fesm2015/primeng-checkbox.mjs +9 -9
  131. package/fesm2015/primeng-chip.mjs +7 -7
  132. package/fesm2015/primeng-chips.mjs +8 -7
  133. package/fesm2015/primeng-chips.mjs.map +1 -1
  134. package/fesm2015/primeng-codehighlighter.mjs +7 -7
  135. package/fesm2015/primeng-colorpicker.mjs +7 -7
  136. package/fesm2015/primeng-confirmdialog.mjs +7 -7
  137. package/fesm2015/primeng-confirmpopup.mjs +9 -9
  138. package/fesm2015/primeng-confirmpopup.mjs.map +1 -1
  139. package/fesm2015/primeng-contextmenu.mjs +10 -10
  140. package/fesm2015/primeng-dataview.mjs +10 -10
  141. package/fesm2015/primeng-defer.mjs +7 -7
  142. package/fesm2015/primeng-dialog.mjs +8 -8
  143. package/fesm2015/primeng-dialog.mjs.map +1 -1
  144. package/fesm2015/primeng-divider.mjs +7 -7
  145. package/fesm2015/primeng-dock.mjs +7 -7
  146. package/fesm2015/primeng-dom.mjs +1 -1
  147. package/fesm2015/primeng-dom.mjs.map +1 -1
  148. package/fesm2015/primeng-dragdrop.mjs +10 -10
  149. package/fesm2015/primeng-dropdown.mjs +13 -13
  150. package/fesm2015/primeng-dropdown.mjs.map +1 -1
  151. package/fesm2015/primeng-dynamicdialog.mjs +16 -16
  152. package/fesm2015/primeng-dynamicdialog.mjs.map +1 -1
  153. package/fesm2015/primeng-editor.mjs +8 -8
  154. package/fesm2015/primeng-editor.mjs.map +1 -1
  155. package/fesm2015/primeng-fieldset.mjs +9 -9
  156. package/fesm2015/primeng-fieldset.mjs.map +1 -1
  157. package/fesm2015/primeng-fileupload.mjs +7 -7
  158. package/fesm2015/primeng-focustrap.mjs +7 -7
  159. package/fesm2015/primeng-fullcalendar.mjs +7 -7
  160. package/fesm2015/primeng-galleria.mjs +19 -19
  161. package/fesm2015/primeng-gmap.mjs +7 -7
  162. package/fesm2015/primeng-image.mjs +7 -7
  163. package/fesm2015/primeng-inplace.mjs +13 -13
  164. package/fesm2015/primeng-inputmask.mjs +7 -9
  165. package/fesm2015/primeng-inputmask.mjs.map +1 -1
  166. package/fesm2015/primeng-inputnumber.mjs +20 -9
  167. package/fesm2015/primeng-inputnumber.mjs.map +1 -1
  168. package/fesm2015/primeng-inputswitch.mjs +9 -9
  169. package/fesm2015/primeng-inputtext.mjs +7 -7
  170. package/fesm2015/primeng-inputtextarea.mjs +7 -7
  171. package/fesm2015/primeng-keyfilter.mjs +7 -7
  172. package/fesm2015/primeng-knob.mjs +7 -7
  173. package/fesm2015/primeng-lightbox.mjs +7 -7
  174. package/fesm2015/primeng-listbox.mjs +9 -9
  175. package/fesm2015/primeng-megamenu.mjs +8 -8
  176. package/fesm2015/primeng-megamenu.mjs.map +1 -1
  177. package/fesm2015/primeng-menu.mjs +20 -18
  178. package/fesm2015/primeng-menu.mjs.map +1 -1
  179. package/fesm2015/primeng-menubar.mjs +10 -10
  180. package/fesm2015/primeng-message.mjs +7 -7
  181. package/fesm2015/primeng-messages.mjs +7 -7
  182. package/fesm2015/primeng-multiselect.mjs +12 -12
  183. package/fesm2015/primeng-multiselect.mjs.map +1 -1
  184. package/fesm2015/primeng-orderlist.mjs +7 -7
  185. package/fesm2015/primeng-organizationchart.mjs +12 -12
  186. package/fesm2015/primeng-organizationchart.mjs.map +1 -1
  187. package/fesm2015/primeng-overlaypanel.mjs +15 -11
  188. package/fesm2015/primeng-overlaypanel.mjs.map +1 -1
  189. package/fesm2015/primeng-paginator.mjs +9 -9
  190. package/fesm2015/primeng-panel.mjs +7 -7
  191. package/fesm2015/primeng-panelmenu.mjs +13 -13
  192. package/fesm2015/primeng-panelmenu.mjs.map +1 -1
  193. package/fesm2015/primeng-password.mjs +10 -10
  194. package/fesm2015/primeng-picklist.mjs +7 -7
  195. package/fesm2015/primeng-progressbar.mjs +15 -13
  196. package/fesm2015/primeng-progressbar.mjs.map +1 -1
  197. package/fesm2015/primeng-progressspinner.mjs +7 -7
  198. package/fesm2015/primeng-radiobutton.mjs +10 -10
  199. package/fesm2015/primeng-rating.mjs +7 -7
  200. package/fesm2015/primeng-ripple.mjs +7 -7
  201. package/fesm2015/primeng-scrollpanel.mjs +9 -9
  202. package/fesm2015/primeng-scrolltop.mjs +7 -7
  203. package/fesm2015/primeng-selectbutton.mjs +9 -9
  204. package/fesm2015/primeng-sidebar.mjs +8 -7
  205. package/fesm2015/primeng-sidebar.mjs.map +1 -1
  206. package/fesm2015/primeng-skeleton.mjs +7 -7
  207. package/fesm2015/primeng-slidemenu.mjs +14 -12
  208. package/fesm2015/primeng-slidemenu.mjs.map +1 -1
  209. package/fesm2015/primeng-slider.mjs +7 -7
  210. package/fesm2015/primeng-speeddial.mjs +9 -9
  211. package/fesm2015/primeng-speeddial.mjs.map +1 -1
  212. package/fesm2015/primeng-spinner.mjs +7 -7
  213. package/fesm2015/primeng-splitbutton.mjs +7 -7
  214. package/fesm2015/primeng-splitter.mjs +9 -9
  215. package/fesm2015/primeng-steps.mjs +7 -7
  216. package/fesm2015/primeng-styleclass.mjs +7 -7
  217. package/fesm2015/primeng-table.mjs +91 -88
  218. package/fesm2015/primeng-table.mjs.map +1 -1
  219. package/fesm2015/primeng-tabmenu.mjs +9 -9
  220. package/fesm2015/primeng-tabview.mjs +12 -12
  221. package/fesm2015/primeng-tag.mjs +7 -7
  222. package/fesm2015/primeng-terminal.mjs +10 -10
  223. package/fesm2015/primeng-tieredmenu.mjs +13 -11
  224. package/fesm2015/primeng-tieredmenu.mjs.map +1 -1
  225. package/fesm2015/primeng-timeline.mjs +9 -9
  226. package/fesm2015/primeng-toast.mjs +10 -10
  227. package/fesm2015/primeng-togglebutton.mjs +9 -9
  228. package/fesm2015/primeng-toolbar.mjs +7 -7
  229. package/fesm2015/primeng-tooltip.mjs +7 -7
  230. package/fesm2015/primeng-tree.mjs +12 -12
  231. package/fesm2015/primeng-tree.mjs.map +1 -1
  232. package/fesm2015/primeng-treeselect.mjs +9 -9
  233. package/fesm2015/primeng-treeselect.mjs.map +1 -1
  234. package/fesm2015/primeng-treetable.mjs +57 -57
  235. package/fesm2015/primeng-treetable.mjs.map +1 -1
  236. package/fesm2015/primeng-tristatecheckbox.mjs +7 -7
  237. package/fesm2015/primeng-virtualscroller.mjs +7 -7
  238. package/fesm2020/primeng-accordion.mjs +17 -15
  239. package/fesm2020/primeng-accordion.mjs.map +1 -1
  240. package/fesm2020/primeng-api.mjs +34 -34
  241. package/fesm2020/primeng-autocomplete.mjs +7 -7
  242. package/fesm2020/primeng-avatar.mjs +7 -7
  243. package/fesm2020/primeng-avatargroup.mjs +7 -7
  244. package/fesm2020/primeng-badge.mjs +10 -10
  245. package/fesm2020/primeng-blockui.mjs +7 -7
  246. package/fesm2020/primeng-breadcrumb.mjs +10 -10
  247. package/fesm2020/primeng-breadcrumb.mjs.map +1 -1
  248. package/fesm2020/primeng-button.mjs +10 -10
  249. package/fesm2020/primeng-calendar.mjs +383 -76
  250. package/fesm2020/primeng-calendar.mjs.map +1 -1
  251. package/fesm2020/primeng-captcha.mjs +7 -7
  252. package/fesm2020/primeng-card.mjs +7 -7
  253. package/fesm2020/primeng-carousel.mjs +7 -7
  254. package/fesm2020/primeng-cascadeselect.mjs +12 -12
  255. package/fesm2020/primeng-cascadeselect.mjs.map +1 -1
  256. package/fesm2020/primeng-chart.mjs +7 -7
  257. package/fesm2020/primeng-checkbox.mjs +9 -9
  258. package/fesm2020/primeng-chip.mjs +7 -7
  259. package/fesm2020/primeng-chips.mjs +8 -7
  260. package/fesm2020/primeng-chips.mjs.map +1 -1
  261. package/fesm2020/primeng-codehighlighter.mjs +7 -7
  262. package/fesm2020/primeng-colorpicker.mjs +7 -7
  263. package/fesm2020/primeng-confirmdialog.mjs +7 -7
  264. package/fesm2020/primeng-confirmpopup.mjs +9 -9
  265. package/fesm2020/primeng-confirmpopup.mjs.map +1 -1
  266. package/fesm2020/primeng-contextmenu.mjs +10 -10
  267. package/fesm2020/primeng-dataview.mjs +10 -10
  268. package/fesm2020/primeng-defer.mjs +7 -7
  269. package/fesm2020/primeng-dialog.mjs +8 -8
  270. package/fesm2020/primeng-dialog.mjs.map +1 -1
  271. package/fesm2020/primeng-divider.mjs +7 -7
  272. package/fesm2020/primeng-dock.mjs +7 -7
  273. package/fesm2020/primeng-dom.mjs +1 -1
  274. package/fesm2020/primeng-dom.mjs.map +1 -1
  275. package/fesm2020/primeng-dragdrop.mjs +10 -10
  276. package/fesm2020/primeng-dropdown.mjs +13 -13
  277. package/fesm2020/primeng-dropdown.mjs.map +1 -1
  278. package/fesm2020/primeng-dynamicdialog.mjs +16 -16
  279. package/fesm2020/primeng-dynamicdialog.mjs.map +1 -1
  280. package/fesm2020/primeng-editor.mjs +8 -8
  281. package/fesm2020/primeng-editor.mjs.map +1 -1
  282. package/fesm2020/primeng-fieldset.mjs +9 -9
  283. package/fesm2020/primeng-fieldset.mjs.map +1 -1
  284. package/fesm2020/primeng-fileupload.mjs +7 -7
  285. package/fesm2020/primeng-focustrap.mjs +7 -7
  286. package/fesm2020/primeng-fullcalendar.mjs +7 -7
  287. package/fesm2020/primeng-galleria.mjs +19 -19
  288. package/fesm2020/primeng-gmap.mjs +7 -7
  289. package/fesm2020/primeng-image.mjs +7 -7
  290. package/fesm2020/primeng-inplace.mjs +13 -13
  291. package/fesm2020/primeng-inputmask.mjs +7 -9
  292. package/fesm2020/primeng-inputmask.mjs.map +1 -1
  293. package/fesm2020/primeng-inputnumber.mjs +20 -9
  294. package/fesm2020/primeng-inputnumber.mjs.map +1 -1
  295. package/fesm2020/primeng-inputswitch.mjs +9 -9
  296. package/fesm2020/primeng-inputtext.mjs +7 -7
  297. package/fesm2020/primeng-inputtextarea.mjs +7 -7
  298. package/fesm2020/primeng-keyfilter.mjs +7 -7
  299. package/fesm2020/primeng-knob.mjs +7 -7
  300. package/fesm2020/primeng-lightbox.mjs +7 -7
  301. package/fesm2020/primeng-listbox.mjs +9 -9
  302. package/fesm2020/primeng-megamenu.mjs +8 -8
  303. package/fesm2020/primeng-megamenu.mjs.map +1 -1
  304. package/fesm2020/primeng-menu.mjs +20 -18
  305. package/fesm2020/primeng-menu.mjs.map +1 -1
  306. package/fesm2020/primeng-menubar.mjs +10 -10
  307. package/fesm2020/primeng-message.mjs +7 -7
  308. package/fesm2020/primeng-messages.mjs +7 -7
  309. package/fesm2020/primeng-multiselect.mjs +12 -12
  310. package/fesm2020/primeng-multiselect.mjs.map +1 -1
  311. package/fesm2020/primeng-orderlist.mjs +7 -7
  312. package/fesm2020/primeng-organizationchart.mjs +12 -12
  313. package/fesm2020/primeng-organizationchart.mjs.map +1 -1
  314. package/fesm2020/primeng-overlaypanel.mjs +15 -11
  315. package/fesm2020/primeng-overlaypanel.mjs.map +1 -1
  316. package/fesm2020/primeng-paginator.mjs +9 -9
  317. package/fesm2020/primeng-panel.mjs +7 -7
  318. package/fesm2020/primeng-panelmenu.mjs +13 -13
  319. package/fesm2020/primeng-panelmenu.mjs.map +1 -1
  320. package/fesm2020/primeng-password.mjs +10 -10
  321. package/fesm2020/primeng-picklist.mjs +7 -7
  322. package/fesm2020/primeng-progressbar.mjs +15 -13
  323. package/fesm2020/primeng-progressbar.mjs.map +1 -1
  324. package/fesm2020/primeng-progressspinner.mjs +7 -7
  325. package/fesm2020/primeng-radiobutton.mjs +10 -10
  326. package/fesm2020/primeng-rating.mjs +7 -7
  327. package/fesm2020/primeng-ripple.mjs +7 -7
  328. package/fesm2020/primeng-scrollpanel.mjs +9 -9
  329. package/fesm2020/primeng-scrolltop.mjs +7 -7
  330. package/fesm2020/primeng-selectbutton.mjs +9 -9
  331. package/fesm2020/primeng-sidebar.mjs +8 -7
  332. package/fesm2020/primeng-sidebar.mjs.map +1 -1
  333. package/fesm2020/primeng-skeleton.mjs +7 -7
  334. package/fesm2020/primeng-slidemenu.mjs +14 -12
  335. package/fesm2020/primeng-slidemenu.mjs.map +1 -1
  336. package/fesm2020/primeng-slider.mjs +7 -7
  337. package/fesm2020/primeng-speeddial.mjs +9 -9
  338. package/fesm2020/primeng-speeddial.mjs.map +1 -1
  339. package/fesm2020/primeng-spinner.mjs +7 -7
  340. package/fesm2020/primeng-splitbutton.mjs +7 -7
  341. package/fesm2020/primeng-splitter.mjs +9 -9
  342. package/fesm2020/primeng-steps.mjs +7 -7
  343. package/fesm2020/primeng-styleclass.mjs +7 -7
  344. package/fesm2020/primeng-table.mjs +91 -88
  345. package/fesm2020/primeng-table.mjs.map +1 -1
  346. package/fesm2020/primeng-tabmenu.mjs +9 -9
  347. package/fesm2020/primeng-tabview.mjs +12 -12
  348. package/fesm2020/primeng-tag.mjs +7 -7
  349. package/fesm2020/primeng-terminal.mjs +10 -10
  350. package/fesm2020/primeng-tieredmenu.mjs +13 -11
  351. package/fesm2020/primeng-tieredmenu.mjs.map +1 -1
  352. package/fesm2020/primeng-timeline.mjs +9 -9
  353. package/fesm2020/primeng-toast.mjs +10 -10
  354. package/fesm2020/primeng-togglebutton.mjs +9 -9
  355. package/fesm2020/primeng-toolbar.mjs +7 -7
  356. package/fesm2020/primeng-tooltip.mjs +7 -7
  357. package/fesm2020/primeng-tree.mjs +12 -12
  358. package/fesm2020/primeng-tree.mjs.map +1 -1
  359. package/fesm2020/primeng-treeselect.mjs +9 -9
  360. package/fesm2020/primeng-treeselect.mjs.map +1 -1
  361. package/fesm2020/primeng-treetable.mjs +57 -57
  362. package/fesm2020/primeng-treetable.mjs.map +1 -1
  363. package/fesm2020/primeng-tristatecheckbox.mjs +7 -7
  364. package/fesm2020/primeng-virtualscroller.mjs +7 -7
  365. package/inputmask/inputmask.d.ts +2 -3
  366. package/megamenu/megamenu.d.ts +1 -1
  367. package/menu/menu.d.ts +1 -1
  368. package/package.json +1 -1
  369. package/resources/components/breadcrumb/breadcrumb.css +1 -0
  370. package/resources/components/calendar/calendar.css +24 -0
  371. package/resources/components/common/common.css +4 -0
  372. package/resources/components/progressbar/progressbar.css +9 -9
  373. package/resources/components/table/table.css +4 -3
  374. package/resources/primeng.css +4 -0
  375. package/resources/primeng.min.css +1 -1
  376. package/resources/themes/arya-blue/theme.css +39 -13
  377. package/resources/themes/arya-green/theme.css +39 -13
  378. package/resources/themes/arya-orange/theme.css +39 -13
  379. package/resources/themes/arya-purple/theme.css +39 -13
  380. package/resources/themes/bootstrap4-dark-blue/theme.css +41 -15
  381. package/resources/themes/bootstrap4-dark-purple/theme.css +41 -15
  382. package/resources/themes/bootstrap4-light-blue/theme.css +39 -13
  383. package/resources/themes/bootstrap4-light-purple/theme.css +39 -13
  384. package/resources/themes/fluent-light/theme.css +39 -13
  385. package/resources/themes/lara-dark-blue/fonts/Inter-Bold.woff +0 -0
  386. package/resources/themes/lara-dark-blue/fonts/Inter-Bold.woff2 +0 -0
  387. package/resources/themes/lara-dark-blue/fonts/Inter-Light.woff +0 -0
  388. package/resources/themes/lara-dark-blue/fonts/Inter-Light.woff2 +0 -0
  389. package/resources/themes/lara-dark-blue/fonts/Inter-Medium.woff +0 -0
  390. package/resources/themes/lara-dark-blue/fonts/Inter-Medium.woff2 +0 -0
  391. package/resources/themes/lara-dark-blue/fonts/Inter-Regular.woff +0 -0
  392. package/resources/themes/lara-dark-blue/fonts/Inter-Regular.woff2 +0 -0
  393. package/resources/themes/lara-dark-blue/fonts/Inter-SemiBold.woff +0 -0
  394. package/resources/themes/lara-dark-blue/fonts/Inter-SemiBold.woff2 +0 -0
  395. package/resources/themes/lara-dark-blue/theme.css +5709 -0
  396. package/resources/themes/lara-dark-indigo/theme.css +67 -35
  397. package/resources/themes/lara-dark-purple/theme.css +143 -111
  398. package/resources/themes/lara-dark-teal/fonts/Inter-Bold.woff +0 -0
  399. package/resources/themes/lara-dark-teal/fonts/Inter-Bold.woff2 +0 -0
  400. package/resources/themes/lara-dark-teal/fonts/Inter-Light.woff +0 -0
  401. package/resources/themes/lara-dark-teal/fonts/Inter-Light.woff2 +0 -0
  402. package/resources/themes/lara-dark-teal/fonts/Inter-Medium.woff +0 -0
  403. package/resources/themes/lara-dark-teal/fonts/Inter-Medium.woff2 +0 -0
  404. package/resources/themes/lara-dark-teal/fonts/Inter-Regular.woff +0 -0
  405. package/resources/themes/lara-dark-teal/fonts/Inter-Regular.woff2 +0 -0
  406. package/resources/themes/lara-dark-teal/fonts/Inter-SemiBold.woff +0 -0
  407. package/resources/themes/lara-dark-teal/fonts/Inter-SemiBold.woff2 +0 -0
  408. package/resources/themes/lara-dark-teal/theme.css +5709 -0
  409. package/resources/themes/lara-light-blue/fonts/Inter-Bold.woff +0 -0
  410. package/resources/themes/lara-light-blue/fonts/Inter-Bold.woff2 +0 -0
  411. package/resources/themes/lara-light-blue/fonts/Inter-Light.woff +0 -0
  412. package/resources/themes/lara-light-blue/fonts/Inter-Light.woff2 +0 -0
  413. package/resources/themes/lara-light-blue/fonts/Inter-Medium.woff +0 -0
  414. package/resources/themes/lara-light-blue/fonts/Inter-Medium.woff2 +0 -0
  415. package/resources/themes/lara-light-blue/fonts/Inter-Regular.woff +0 -0
  416. package/resources/themes/lara-light-blue/fonts/Inter-Regular.woff2 +0 -0
  417. package/resources/themes/lara-light-blue/fonts/Inter-SemiBold.woff +0 -0
  418. package/resources/themes/lara-light-blue/fonts/Inter-SemiBold.woff2 +0 -0
  419. package/resources/themes/lara-light-blue/theme.css +5709 -0
  420. package/resources/themes/lara-light-indigo/theme.css +164 -132
  421. package/resources/themes/lara-light-purple/theme.css +164 -132
  422. package/resources/themes/lara-light-teal/fonts/Inter-Bold.woff +0 -0
  423. package/resources/themes/lara-light-teal/fonts/Inter-Bold.woff2 +0 -0
  424. package/resources/themes/lara-light-teal/fonts/Inter-Light.woff +0 -0
  425. package/resources/themes/lara-light-teal/fonts/Inter-Light.woff2 +0 -0
  426. package/resources/themes/lara-light-teal/fonts/Inter-Medium.woff +0 -0
  427. package/resources/themes/lara-light-teal/fonts/Inter-Medium.woff2 +0 -0
  428. package/resources/themes/lara-light-teal/fonts/Inter-Regular.woff +0 -0
  429. package/resources/themes/lara-light-teal/fonts/Inter-Regular.woff2 +0 -0
  430. package/resources/themes/lara-light-teal/fonts/Inter-SemiBold.woff +0 -0
  431. package/resources/themes/lara-light-teal/fonts/Inter-SemiBold.woff2 +0 -0
  432. package/resources/themes/lara-light-teal/theme.css +5709 -0
  433. package/resources/themes/luna-amber/theme.css +39 -13
  434. package/resources/themes/luna-blue/theme.css +39 -13
  435. package/resources/themes/luna-green/theme.css +39 -13
  436. package/resources/themes/luna-pink/theme.css +39 -13
  437. package/resources/themes/md-dark-deeppurple/theme.css +39 -13
  438. package/resources/themes/md-dark-indigo/theme.css +39 -13
  439. package/resources/themes/md-light-deeppurple/theme.css +39 -13
  440. package/resources/themes/md-light-indigo/theme.css +39 -13
  441. package/resources/themes/mdc-dark-deeppurple/theme.css +39 -13
  442. package/resources/themes/mdc-dark-indigo/theme.css +39 -13
  443. package/resources/themes/mdc-light-deeppurple/theme.css +39 -13
  444. package/resources/themes/mdc-light-indigo/theme.css +39 -13
  445. package/resources/themes/nova/theme.css +39 -13
  446. package/resources/themes/nova-accent/theme.css +39 -13
  447. package/resources/themes/nova-alt/theme.css +39 -13
  448. package/resources/themes/rhea/theme.css +39 -13
  449. package/resources/themes/saga-blue/theme.css +39 -13
  450. package/resources/themes/saga-green/theme.css +39 -13
  451. package/resources/themes/saga-orange/theme.css +39 -13
  452. package/resources/themes/saga-purple/theme.css +39 -13
  453. package/resources/themes/tailwind-light/theme.css +48 -16
  454. package/resources/themes/vela-blue/theme.css +39 -13
  455. package/resources/themes/vela-green/theme.css +39 -13
  456. package/resources/themes/vela-orange/theme.css +39 -13
  457. package/resources/themes/vela-purple/theme.css +39 -13
@@ -11,7 +11,7 @@ import { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';
11
11
  import * as i1 from 'primeng/api';
12
12
  import { TranslationKeys, PrimeTemplate, SharedModule } from 'primeng/api';
13
13
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
14
- import { ZIndexUtils } from 'primeng/utils';
14
+ import { UniqueComponentId, ZIndexUtils } from 'primeng/utils';
15
15
 
16
16
  const CALENDAR_VALUE_ACCESSOR = {
17
17
  provide: NG_VALUE_ACCESSOR,
@@ -47,8 +47,6 @@ class Calendar {
47
47
  this.baseZIndex = 0;
48
48
  this.keepInvalid = false;
49
49
  this.hideOnDateTimeSelect = true;
50
- this.numberOfMonths = 1;
51
- this.view = 'date';
52
50
  this.timeSeparator = ":";
53
51
  this.focusTrap = true;
54
52
  this.firstDayOfWeek = 0;
@@ -69,6 +67,8 @@ class Calendar {
69
67
  this.onModelTouched = () => { };
70
68
  this.inputFieldValue = null;
71
69
  this.navigationState = null;
70
+ this._numberOfMonths = 1;
71
+ this._view = 'date';
72
72
  this.convertTo24Hour = function (hours, pm) {
73
73
  if (this.hourFormat == '12') {
74
74
  if (hours === 12) {
@@ -89,11 +89,21 @@ class Calendar {
89
89
  this.isMonthNavigate = false;
90
90
  }
91
91
  else {
92
- this.initFocusableCell();
92
+ if (!this.focus) {
93
+ this.initFocusableCell();
94
+ }
93
95
  }
94
96
  }
95
97
  }
96
98
  ;
99
+ get view() {
100
+ return this._view;
101
+ }
102
+ ;
103
+ set view(view) {
104
+ this._view = view;
105
+ this.currentView = this._view;
106
+ }
97
107
  get defaultDate() {
98
108
  return this._defaultDate;
99
109
  }
@@ -169,22 +179,39 @@ class Calendar {
169
179
  get locale() {
170
180
  return this._locale;
171
181
  }
182
+ get responsiveOptions() {
183
+ return this._responsiveOptions;
184
+ }
185
+ ;
186
+ set responsiveOptions(responsiveOptions) {
187
+ this._responsiveOptions = responsiveOptions;
188
+ this.destroyResponsiveStyleElement();
189
+ this.createResponsiveStyle();
190
+ }
191
+ get numberOfMonths() {
192
+ return this._numberOfMonths;
193
+ }
194
+ set numberOfMonths(numberOfMonths) {
195
+ this._numberOfMonths = numberOfMonths;
196
+ this.destroyResponsiveStyleElement();
197
+ this.createResponsiveStyle();
198
+ }
172
199
  set locale(newLocale) {
173
200
  console.warn("Locale property has no effect, use new i18n API instead.");
174
201
  }
175
202
  ngOnInit() {
203
+ this.attributeSelector = UniqueComponentId();
176
204
  const date = this.defaultDate || new Date();
205
+ this.createResponsiveStyle();
177
206
  this.currentMonth = date.getMonth();
178
207
  this.currentYear = date.getFullYear();
208
+ this.currentView = this.view;
179
209
  if (this.view === 'date') {
180
210
  this.createWeekDays();
181
211
  this.initTime(date);
182
212
  this.createMonths(this.currentMonth, this.currentYear);
183
213
  this.ticksTo1970 = (((1970 - 1) * 365 + Math.floor(1970 / 4) - Math.floor(1970 / 100) + Math.floor(1970 / 400)) * 24 * 60 * 60 * 10000000);
184
214
  }
185
- else if (this.view === 'month') {
186
- this.createMonthPickerValues();
187
- }
188
215
  this.translationSubscription = this.config.translationObserver.subscribe(() => {
189
216
  this.createWeekDays();
190
217
  });
@@ -196,6 +223,9 @@ class Calendar {
196
223
  case 'date':
197
224
  this.dateTemplate = item.template;
198
225
  break;
226
+ case 'decade':
227
+ this.decadeTemplate = item.template;
228
+ break;
199
229
  case 'disabledDate':
200
230
  this.disabledDateTemplate = item.template;
201
231
  break;
@@ -211,6 +241,17 @@ class Calendar {
211
241
  }
212
242
  });
213
243
  }
244
+ ngAfterViewInit() {
245
+ if (this.inline) {
246
+ this.contentViewChild && this.contentViewChild.nativeElement.setAttribute(this.attributeSelector, '');
247
+ if (!this.disabled) {
248
+ this.initFocusableCell();
249
+ if (this.numberOfMonths === 1) {
250
+ this.contentViewChild.nativeElement.style.width = DomHandler.getOuterWidth(this.containerViewChild.nativeElement) + 'px';
251
+ }
252
+ }
253
+ }
254
+ }
214
255
  getTranslation(option) {
215
256
  return this.config.getTranslation(option);
216
257
  }
@@ -229,12 +270,20 @@ class Calendar {
229
270
  dayIndex = (dayIndex == 6) ? 0 : ++dayIndex;
230
271
  }
231
272
  }
232
- createMonthPickerValues() {
233
- this.monthPickerValues = [];
234
- let monthLabels = this.getTranslation(TranslationKeys.MONTH_NAMES_SHORT);
273
+ monthPickerValues() {
274
+ let monthPickerValues = [];
235
275
  for (let i = 0; i <= 11; i++) {
236
- this.monthPickerValues.push(monthLabels[i]);
276
+ monthPickerValues.push(this.config.getTranslation('monthNamesShort')[i]);
237
277
  }
278
+ return monthPickerValues;
279
+ }
280
+ yearPickerValues() {
281
+ let yearPickerValues = [];
282
+ let base = this.currentYear - (this.currentYear % 10);
283
+ for (let i = 0; i < 10; i++) {
284
+ yearPickerValues.push(base + i);
285
+ }
286
+ return yearPickerValues;
238
287
  }
239
288
  createMonths(month, year) {
240
289
  this.months = this.months = [];
@@ -321,18 +370,23 @@ class Calendar {
321
370
  }
322
371
  }
323
372
  navBackward(event) {
324
- event.stopPropagation();
325
373
  if (this.disabled) {
326
374
  event.preventDefault();
327
375
  return;
328
376
  }
329
377
  this.isMonthNavigate = true;
330
- if (this.view === 'month') {
378
+ if (this.currentView === 'month') {
331
379
  this.decrementYear();
332
380
  setTimeout(() => {
333
381
  this.updateFocus();
334
382
  }, 1);
335
383
  }
384
+ else if (this.currentView === 'year') {
385
+ this.decrementDecade();
386
+ setTimeout(() => {
387
+ this.updateFocus();
388
+ }, 1);
389
+ }
336
390
  else {
337
391
  if (this.currentMonth === 0) {
338
392
  this.currentMonth = 11;
@@ -346,18 +400,23 @@ class Calendar {
346
400
  }
347
401
  }
348
402
  navForward(event) {
349
- event.stopPropagation();
350
403
  if (this.disabled) {
351
404
  event.preventDefault();
352
405
  return;
353
406
  }
354
407
  this.isMonthNavigate = true;
355
- if (this.view === 'month') {
408
+ if (this.currentView === 'month') {
356
409
  this.incrementYear();
357
410
  setTimeout(() => {
358
411
  this.updateFocus();
359
412
  }, 1);
360
413
  }
414
+ else if (this.currentView === 'year') {
415
+ this.incrementDecade();
416
+ setTimeout(() => {
417
+ this.updateFocus();
418
+ }, 1);
419
+ }
361
420
  else {
362
421
  if (this.currentMonth === 11) {
363
422
  this.currentMonth = 0;
@@ -377,6 +436,12 @@ class Calendar {
377
436
  this.populateYearOptions(this.yearOptions[0] - difference, this.yearOptions[this.yearOptions.length - 1] - difference);
378
437
  }
379
438
  }
439
+ decrementDecade() {
440
+ this.currentYear = this.currentYear - 10;
441
+ }
442
+ incrementDecade() {
443
+ this.currentYear = this.currentYear + 10;
444
+ }
380
445
  incrementYear() {
381
446
  this.currentYear++;
382
447
  if (this.yearNavigator && this.currentYear > this.yearOptions[this.yearOptions.length - 1]) {
@@ -384,6 +449,14 @@ class Calendar {
384
449
  this.populateYearOptions(this.yearOptions[0] + difference, this.yearOptions[this.yearOptions.length - 1] + difference);
385
450
  }
386
451
  }
452
+ switchToMonthView(event) {
453
+ this.currentView = 'month';
454
+ event.preventDefault();
455
+ }
456
+ switchToYearView(event) {
457
+ this.currentView = 'year';
458
+ event.preventDefault();
459
+ }
387
460
  onDateSelect(event, dateMeta) {
388
461
  if (this.disabled || !dateMeta.selectable) {
389
462
  event.preventDefault();
@@ -423,9 +496,26 @@ class Calendar {
423
496
  return true;
424
497
  }
425
498
  onMonthSelect(event, index) {
426
- if (!DomHandler.hasClass(event.target, 'p-disabled')) {
499
+ if (this.view === 'month') {
427
500
  this.onDateSelect(event, { year: this.currentYear, month: index, day: 1, selectable: true });
428
501
  }
502
+ else {
503
+ this.currentMonth = index;
504
+ this.currentView = 'date';
505
+ this.createMonths(this.currentMonth, this.currentYear);
506
+ this.cd.markForCheck();
507
+ this.onMonthChange.emit({ month: this.currentMonth + 1, year: this.currentYear });
508
+ }
509
+ }
510
+ onYearSelect(event, year) {
511
+ if (this.view === 'year') {
512
+ this.onDateSelect(event, { year: year, month: 0, day: 1, selectable: true });
513
+ }
514
+ else {
515
+ this.currentYear = year;
516
+ this.currentView = 'month';
517
+ this.onYearChange.emit({ month: this.currentMonth + 1, year: this.currentYear });
518
+ }
429
519
  }
430
520
  updateInputfield() {
431
521
  let formattedValue = '';
@@ -626,9 +716,22 @@ class Calendar {
626
716
  return false;
627
717
  }
628
718
  }
719
+ isComparable() {
720
+ return this.value != null && typeof this.value !== 'string';
721
+ }
629
722
  isMonthSelected(month) {
630
- let day = this.value ? (Array.isArray(this.value) ? this.value[0].getDate() : this.value.getDate()) : 1;
631
- return this.isSelected({ year: this.currentYear, month: month, day: day, selectable: true });
723
+ if (this.isComparable()) {
724
+ let value = this.isRangeSelection() ? this.value[0] : this.value;
725
+ return !this.isMultipleSelection() ? (value.getMonth() === month && value.getFullYear() === this.currentYear) : false;
726
+ }
727
+ return false;
728
+ }
729
+ isYearSelected(year) {
730
+ if (this.isComparable()) {
731
+ let value = this.isRangeSelection() ? this.value[0] : this.value;
732
+ return !this.isMultipleSelection() ? (value.getFullYear() === year) : false;
733
+ }
734
+ return false;
632
735
  }
633
736
  isDateEquals(value, dateMeta) {
634
737
  if (value)
@@ -755,6 +858,12 @@ class Calendar {
755
858
  target: this.el.nativeElement
756
859
  });
757
860
  }
861
+ getMonthName(index) {
862
+ return this.config.getTranslation('monthNames')[index];
863
+ }
864
+ switchViewButtonDisabled() {
865
+ return this.numberOfMonths > 1 || this.disabled;
866
+ }
758
867
  onPrevButtonClick(event) {
759
868
  this.navigationState = { backward: true, button: true };
760
869
  this.navBackward(event);
@@ -896,7 +1005,9 @@ class Calendar {
896
1005
  break;
897
1006
  }
898
1007
  //enter
899
- case 13: {
1008
+ //space
1009
+ case 13:
1010
+ case 32: {
900
1011
  this.onDateSelect(event, date);
901
1012
  event.preventDefault();
902
1013
  break;
@@ -944,6 +1055,10 @@ class Calendar {
944
1055
  prevCell.tabIndex = '0';
945
1056
  prevCell.focus();
946
1057
  }
1058
+ else {
1059
+ this.navigationState = { backward: true };
1060
+ this.navBackward(event);
1061
+ }
947
1062
  event.preventDefault();
948
1063
  break;
949
1064
  }
@@ -955,6 +1070,10 @@ class Calendar {
955
1070
  nextCell.tabIndex = '0';
956
1071
  nextCell.focus();
957
1072
  }
1073
+ else {
1074
+ this.navigationState = { backward: false };
1075
+ this.navForward(event);
1076
+ }
958
1077
  event.preventDefault();
959
1078
  break;
960
1079
  }
@@ -964,6 +1083,14 @@ class Calendar {
964
1083
  event.preventDefault();
965
1084
  break;
966
1085
  }
1086
+ //enter
1087
+ //space
1088
+ case 13:
1089
+ case 32: {
1090
+ this.overlayVisible = false;
1091
+ event.preventDefault();
1092
+ break;
1093
+ }
967
1094
  //escape
968
1095
  case 27: {
969
1096
  this.overlayVisible = false;
@@ -982,6 +1109,77 @@ class Calendar {
982
1109
  break;
983
1110
  }
984
1111
  }
1112
+ onYearCellKeydown(event, index) {
1113
+ const cell = event.currentTarget;
1114
+ switch (event.which) {
1115
+ //arrows
1116
+ case 38:
1117
+ case 40: {
1118
+ cell.tabIndex = '-1';
1119
+ var cells = cell.parentElement.children;
1120
+ var cellIndex = DomHandler.index(cell);
1121
+ let nextCell = cells[event.which === 40 ? cellIndex + 2 : cellIndex - 2];
1122
+ if (nextCell) {
1123
+ nextCell.tabIndex = '0';
1124
+ nextCell.focus();
1125
+ }
1126
+ event.preventDefault();
1127
+ break;
1128
+ }
1129
+ //left arrow
1130
+ case 37: {
1131
+ cell.tabIndex = '-1';
1132
+ let prevCell = cell.previousElementSibling;
1133
+ if (prevCell) {
1134
+ prevCell.tabIndex = '0';
1135
+ prevCell.focus();
1136
+ }
1137
+ else {
1138
+ this.navigationState = { backward: true };
1139
+ this.navBackward(event);
1140
+ }
1141
+ event.preventDefault();
1142
+ break;
1143
+ }
1144
+ //right arrow
1145
+ case 39: {
1146
+ cell.tabIndex = '-1';
1147
+ let nextCell = cell.nextElementSibling;
1148
+ if (nextCell) {
1149
+ nextCell.tabIndex = '0';
1150
+ nextCell.focus();
1151
+ }
1152
+ else {
1153
+ this.navigationState = { backward: false };
1154
+ this.navForward(event);
1155
+ }
1156
+ event.preventDefault();
1157
+ break;
1158
+ }
1159
+ //enter
1160
+ //space
1161
+ case 13:
1162
+ case 32: {
1163
+ this.onYearSelect(event, index);
1164
+ event.preventDefault();
1165
+ break;
1166
+ }
1167
+ //escape
1168
+ case 27: {
1169
+ this.overlayVisible = false;
1170
+ event.preventDefault();
1171
+ break;
1172
+ }
1173
+ //tab
1174
+ case 9: {
1175
+ this.trapFocus(event);
1176
+ break;
1177
+ }
1178
+ default:
1179
+ //no op
1180
+ break;
1181
+ }
1182
+ }
985
1183
  navigateToMonth(prev, groupIndex) {
986
1184
  if (prev) {
987
1185
  if (this.numberOfMonths === 1 || (groupIndex === 0)) {
@@ -1021,11 +1219,30 @@ class Calendar {
1021
1219
  }
1022
1220
  else {
1023
1221
  if (this.navigationState.backward) {
1024
- let cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');
1025
- cell = cells[cells.length - 1];
1222
+ let cells;
1223
+ if (this.currentView === 'month') {
1224
+ cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month:not(.p-disabled)');
1225
+ }
1226
+ else if (this.currentView === 'year') {
1227
+ cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year:not(.p-disabled)');
1228
+ }
1229
+ else {
1230
+ cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');
1231
+ }
1232
+ if (cells && cells.length > 0) {
1233
+ cell = cells[cells.length - 1];
1234
+ }
1026
1235
  }
1027
1236
  else {
1028
- cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');
1237
+ if (this.currentView === 'month') {
1238
+ cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month:not(.p-disabled)');
1239
+ }
1240
+ else if (this.currentView === 'year') {
1241
+ cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year:not(.p-disabled)');
1242
+ }
1243
+ else {
1244
+ cell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-datepicker-calendar td span:not(.p-disabled):not(.p-ink)');
1245
+ }
1029
1246
  }
1030
1247
  if (cell) {
1031
1248
  cell.tabIndex = '0';
@@ -1040,7 +1257,7 @@ class Calendar {
1040
1257
  }
1041
1258
  initFocusableCell() {
1042
1259
  let cell;
1043
- if (this.view === 'month') {
1260
+ if (this.currentView === 'month') {
1044
1261
  let cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month:not(.p-disabled)');
1045
1262
  let selectedCell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-monthpicker .p-monthpicker-month.p-highlight');
1046
1263
  cells.forEach(cell => cell.tabIndex = -1);
@@ -1050,6 +1267,16 @@ class Calendar {
1050
1267
  disabledCells.forEach(cell => cell.tabIndex = -1);
1051
1268
  }
1052
1269
  }
1270
+ else if (this.currentView === 'year') {
1271
+ let cells = DomHandler.find(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year:not(.p-disabled)');
1272
+ let selectedCell = DomHandler.findSingle(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year.p-highlight');
1273
+ cells.forEach(cell => cell.tabIndex = -1);
1274
+ cell = selectedCell || cells[0];
1275
+ if (cells.length === 0) {
1276
+ let disabledCells = DomHandler.find(this.contentViewChild.nativeElement, '.p-yearpicker .p-yearpicker-year.p-disabled[tabindex = "0"]');
1277
+ disabledCells.forEach(cell => cell.tabIndex = -1);
1278
+ }
1279
+ }
1053
1280
  else {
1054
1281
  cell = DomHandler.findSingle(this.contentViewChild.nativeElement, 'span.p-highlight');
1055
1282
  if (!cell) {
@@ -1062,6 +1289,12 @@ class Calendar {
1062
1289
  }
1063
1290
  if (cell) {
1064
1291
  cell.tabIndex = '0';
1292
+ if (!this.preventFocus && (!this.navigationState || !this.navigationState.button)) {
1293
+ setTimeout(() => {
1294
+ cell.focus();
1295
+ }, 1);
1296
+ }
1297
+ this.preventFocus = false;
1065
1298
  }
1066
1299
  }
1067
1300
  trapFocus(event) {
@@ -1425,6 +1658,9 @@ class Calendar {
1425
1658
  showOverlay() {
1426
1659
  if (!this.overlayVisible) {
1427
1660
  this.updateUI();
1661
+ if (!this.touchUI) {
1662
+ this.preventFocus = true;
1663
+ }
1428
1664
  this.overlayVisible = true;
1429
1665
  }
1430
1666
  }
@@ -1453,7 +1689,9 @@ class Calendar {
1453
1689
  case 'visibleTouchUI':
1454
1690
  if (!this.inline) {
1455
1691
  this.overlay = event.element;
1692
+ this.overlay.setAttribute(this.attributeSelector, '');
1456
1693
  this.appendOverlay();
1694
+ this.updateFocus();
1457
1695
  if (this.autoZIndex) {
1458
1696
  if (this.touchUI)
1459
1697
  ZIndexUtils.set('modal', this.overlay, this.baseZIndex || this.config.zIndex.modal);
@@ -1504,11 +1742,20 @@ class Calendar {
1504
1742
  if (this.touchUI) {
1505
1743
  this.enableModality(this.overlay);
1506
1744
  }
1507
- else {
1508
- if (this.appendTo)
1745
+ else if (this.overlay) {
1746
+ if (this.appendTo) {
1747
+ if (this.view === 'date') {
1748
+ this.overlay.style.width = DomHandler.getOuterWidth(this.overlay) + 'px';
1749
+ this.overlay.style.minWidth = DomHandler.getOuterWidth(this.inputfieldViewChild.nativeElement) + 'px';
1750
+ }
1751
+ else {
1752
+ this.overlay.style.width = DomHandler.getOuterWidth(this.inputfieldViewChild.nativeElement) + 'px';
1753
+ }
1509
1754
  DomHandler.absolutePosition(this.overlay, this.inputfieldViewChild.nativeElement);
1510
- else
1755
+ }
1756
+ else {
1511
1757
  DomHandler.relativePosition(this.overlay, this.inputfieldViewChild.nativeElement);
1758
+ }
1512
1759
  }
1513
1760
  }
1514
1761
  enableModality(element) {
@@ -1876,11 +2123,53 @@ class Calendar {
1876
2123
  this.hideOverlay();
1877
2124
  this.onClearClick.emit(event);
1878
2125
  }
2126
+ createResponsiveStyle() {
2127
+ if (this.numberOfMonths > 1 && this.responsiveOptions) {
2128
+ if (!this.responsiveStyleElement) {
2129
+ this.responsiveStyleElement = document.createElement('style');
2130
+ this.responsiveStyleElement.type = 'text/css';
2131
+ document.body.appendChild(this.responsiveStyleElement);
2132
+ }
2133
+ let innerHTML = '';
2134
+ if (this.responsiveOptions) {
2135
+ let responsiveOptions = [...this.responsiveOptions]
2136
+ .filter(o => !!(o.breakpoint && o.numMonths))
2137
+ .sort((o1, o2) => -1 * o1.breakpoint.localeCompare(o2.breakpoint, undefined, { numeric: true }));
2138
+ for (let i = 0; i < responsiveOptions.length; i++) {
2139
+ let { breakpoint, numMonths } = responsiveOptions[i];
2140
+ let styles = `
2141
+ .p-datepicker[${this.attributeSelector}] .p-datepicker-group:nth-child(${numMonths}) .p-datepicker-next {
2142
+ display: inline-flex !important;
2143
+ }
2144
+ `;
2145
+ for (let j = numMonths; j < this.numberOfMonths; j++) {
2146
+ styles += `
2147
+ .p-datepicker[${this.attributeSelector}] .p-datepicker-group:nth-child(${j + 1}) {
2148
+ display: none !important;
2149
+ }
2150
+ `;
2151
+ }
2152
+ innerHTML += `
2153
+ @media screen and (max-width: ${breakpoint}) {
2154
+ ${styles}
2155
+ }
2156
+ `;
2157
+ }
2158
+ }
2159
+ this.responsiveStyleElement.innerHTML = innerHTML;
2160
+ }
2161
+ }
2162
+ destroyResponsiveStyleElement() {
2163
+ if (this.responsiveStyleElement) {
2164
+ this.responsiveStyleElement.remove();
2165
+ this.responsiveStyleElement = null;
2166
+ }
2167
+ }
1879
2168
  bindDocumentClickListener() {
1880
2169
  if (!this.documentClickListener) {
1881
2170
  this.zone.runOutsideAngular(() => {
1882
2171
  const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';
1883
- this.documentClickListener = this.renderer.listen(documentTarget, 'click', (event) => {
2172
+ this.documentClickListener = this.renderer.listen(documentTarget, 'mousedown', (event) => {
1884
2173
  if (this.isOutsideClicked(event) && this.overlayVisible) {
1885
2174
  this.zone.run(() => {
1886
2175
  this.hideOverlay();
@@ -1939,6 +2228,7 @@ class Calendar {
1939
2228
  }
1940
2229
  }
1941
2230
  onOverlayHide() {
2231
+ this.currentView = this.view;
1942
2232
  if (this.mask) {
1943
2233
  this.destroyMask();
1944
2234
  }
@@ -1958,13 +2248,14 @@ class Calendar {
1958
2248
  if (this.overlay && this.autoZIndex) {
1959
2249
  ZIndexUtils.clear(this.overlay);
1960
2250
  }
2251
+ this.destroyResponsiveStyleElement();
1961
2252
  this.clearTimePickerTimer();
1962
2253
  this.restoreOverlayAppend();
1963
2254
  this.onOverlayHide();
1964
2255
  }
1965
2256
  }
1966
- Calendar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: Calendar, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.PrimeNGConfig }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
1967
- Calendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: Calendar, selector: "p-calendar", inputs: { style: "style", styleClass: "styleClass", inputStyle: "inputStyle", inputId: "inputId", name: "name", inputStyleClass: "inputStyleClass", placeholder: "placeholder", ariaLabelledBy: "ariaLabelledBy", iconAriaLabel: "iconAriaLabel", disabled: "disabled", dateFormat: "dateFormat", multipleSeparator: "multipleSeparator", rangeSeparator: "rangeSeparator", inline: "inline", showOtherMonths: "showOtherMonths", selectOtherMonths: "selectOtherMonths", showIcon: "showIcon", icon: "icon", appendTo: "appendTo", readonlyInput: "readonlyInput", shortYearCutoff: "shortYearCutoff", monthNavigator: "monthNavigator", yearNavigator: "yearNavigator", hourFormat: "hourFormat", timeOnly: "timeOnly", stepHour: "stepHour", stepMinute: "stepMinute", stepSecond: "stepSecond", showSeconds: "showSeconds", required: "required", showOnFocus: "showOnFocus", showWeek: "showWeek", dataType: "dataType", selectionMode: "selectionMode", maxDateCount: "maxDateCount", showButtonBar: "showButtonBar", todayButtonStyleClass: "todayButtonStyleClass", clearButtonStyleClass: "clearButtonStyleClass", autoZIndex: "autoZIndex", baseZIndex: "baseZIndex", panelStyleClass: "panelStyleClass", panelStyle: "panelStyle", keepInvalid: "keepInvalid", hideOnDateTimeSelect: "hideOnDateTimeSelect", numberOfMonths: "numberOfMonths", view: "view", touchUI: "touchUI", timeSeparator: "timeSeparator", focusTrap: "focusTrap", firstDayOfWeek: "firstDayOfWeek", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", tabindex: "tabindex", defaultDate: "defaultDate", minDate: "minDate", maxDate: "maxDate", disabledDates: "disabledDates", disabledDays: "disabledDays", yearRange: "yearRange", showTime: "showTime", locale: "locale" }, outputs: { onFocus: "onFocus", onBlur: "onBlur", onClose: "onClose", onSelect: "onSelect", onInput: "onInput", onTodayClick: "onTodayClick", onClearClick: "onClearClick", onMonthChange: "onMonthChange", onYearChange: "onYearChange", onClickOutside: "onClickOutside", onShow: "onShow" }, host: { properties: { "class.p-inputwrapper-filled": "filled", "class.p-inputwrapper-focus": "focus" }, classAttribute: "p-element p-inputwrapper" }, providers: [CALENDAR_VALUE_ACCESSOR], queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }, { propertyName: "inputfieldViewChild", first: true, predicate: ["inputfield"], descendants: true }, { propertyName: "content", first: true, predicate: ["contentWrapper"], descendants: true }], ngImport: i0, template: `
2257
+ Calendar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Calendar, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.PrimeNGConfig }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
2258
+ Calendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: Calendar, selector: "p-calendar", inputs: { style: "style", styleClass: "styleClass", inputStyle: "inputStyle", inputId: "inputId", name: "name", inputStyleClass: "inputStyleClass", placeholder: "placeholder", ariaLabelledBy: "ariaLabelledBy", iconAriaLabel: "iconAriaLabel", disabled: "disabled", dateFormat: "dateFormat", multipleSeparator: "multipleSeparator", rangeSeparator: "rangeSeparator", inline: "inline", showOtherMonths: "showOtherMonths", selectOtherMonths: "selectOtherMonths", showIcon: "showIcon", icon: "icon", appendTo: "appendTo", readonlyInput: "readonlyInput", shortYearCutoff: "shortYearCutoff", monthNavigator: "monthNavigator", yearNavigator: "yearNavigator", hourFormat: "hourFormat", timeOnly: "timeOnly", stepHour: "stepHour", stepMinute: "stepMinute", stepSecond: "stepSecond", showSeconds: "showSeconds", required: "required", showOnFocus: "showOnFocus", showWeek: "showWeek", dataType: "dataType", selectionMode: "selectionMode", maxDateCount: "maxDateCount", showButtonBar: "showButtonBar", todayButtonStyleClass: "todayButtonStyleClass", clearButtonStyleClass: "clearButtonStyleClass", autoZIndex: "autoZIndex", baseZIndex: "baseZIndex", panelStyleClass: "panelStyleClass", panelStyle: "panelStyle", keepInvalid: "keepInvalid", hideOnDateTimeSelect: "hideOnDateTimeSelect", touchUI: "touchUI", timeSeparator: "timeSeparator", focusTrap: "focusTrap", firstDayOfWeek: "firstDayOfWeek", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", tabindex: "tabindex", view: "view", defaultDate: "defaultDate", minDate: "minDate", maxDate: "maxDate", disabledDates: "disabledDates", disabledDays: "disabledDays", yearRange: "yearRange", showTime: "showTime", responsiveOptions: "responsiveOptions", numberOfMonths: "numberOfMonths", locale: "locale" }, outputs: { onFocus: "onFocus", onBlur: "onBlur", onClose: "onClose", onSelect: "onSelect", onInput: "onInput", onTodayClick: "onTodayClick", onClearClick: "onClearClick", onMonthChange: "onMonthChange", onYearChange: "onYearChange", onClickOutside: "onClickOutside", onShow: "onShow" }, host: { properties: { "class.p-inputwrapper-filled": "filled", "class.p-inputwrapper-focus": "focus" }, classAttribute: "p-element p-inputwrapper" }, providers: [CALENDAR_VALUE_ACCESSOR], queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }, { propertyName: "inputfieldViewChild", first: true, predicate: ["inputfield"], descendants: true }, { propertyName: "content", first: true, predicate: ["contentWrapper"], descendants: true }], ngImport: i0, template: `
1968
2259
  <span #container [ngClass]="{'p-calendar':true, 'p-calendar-w-btn': showIcon, 'p-calendar-timeonly': timeOnly, 'p-calendar-disabled':disabled, 'p-focus': focus}" [ngStyle]="style" [class]="styleClass">
1969
2260
  <ng-template [ngIf]="!inline">
1970
2261
  <input #inputfield type="text" [attr.id]="inputId" [attr.name]="name" [attr.required]="required" [attr.aria-required]="required" [value]="inputFieldValue" (focus)="onInputFocus($event)" (keydown)="onInputKeydown($event)" (click)="onInputClick()" (blur)="onInputBlur($event)"
@@ -1988,20 +2279,22 @@ Calendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.
1988
2279
  <span class="p-datepicker-prev-icon pi pi-chevron-left"></span>
1989
2280
  </button>
1990
2281
  <div class="p-datepicker-title">
1991
- <span class="p-datepicker-month" *ngIf="!monthNavigator && (view !== 'month')">{{getTranslation('monthNames')[month.month]}}</span>
1992
- <select tabindex="0" class="p-datepicker-month" *ngIf="monthNavigator && (view !== 'month') && numberOfMonths === 1" (change)="onMonthDropdownChange($event.target.value)">
1993
- <option [value]="i" *ngFor="let monthName of getTranslation('monthNames');let i = index" [selected]="i === month.month">{{monthName}}</option>
1994
- </select>
1995
- <select tabindex="0" class="p-datepicker-year" *ngIf="yearNavigator && numberOfMonths === 1" (change)="onYearDropdownChange($event.target.value)">
1996
- <option [value]="year" *ngFor="let year of yearOptions" [selected]="year === currentYear">{{year}}</option>
1997
- </select>
1998
- <span class="p-datepicker-year" *ngIf="!yearNavigator">{{view === 'month' ? currentYear : month.year}}</span>
2282
+ <button type="button" (click)="switchToMonthView($event)" (keydown)="onContainerButtonKeydown($event)" *ngIf="currentView === 'date'" class="p-datepicker-month p-link" [disabled]="switchViewButtonDisabled()">
2283
+ {{getMonthName(month.month)}}
2284
+ </button>
2285
+ <button type="button" (click)="switchToYearView($event)" (keydown)="onContainerButtonKeydown($event)" *ngIf="currentView !== 'year'" class="p-datepicker-year p-link" [disabled]="switchViewButtonDisabled()">
2286
+ {{currentYear}}
2287
+ </button>
2288
+ <span class="p-datepicker-decade" *ngIf="currentView === 'year'">
2289
+ <ng-container *ngIf="!decadeTemplate">{{yearPickerValues()[0]}} - {{yearPickerValues()[yearPickerValues().length - 1]}}</ng-container>
2290
+ <ng-container *ngTemplateOutlet="decadeTemplate; context: {$implicit: yearPickerValues}"></ng-container>
2291
+ </span>
1999
2292
  </div>
2000
- <button (keydown)="onContainerButtonKeydown($event)" class="p-datepicker-next p-link" (click)="onNextButtonClick($event)" *ngIf="numberOfMonths === 1 ? true : (i === numberOfMonths -1)" type="button" pRipple>
2293
+ <button (keydown)="onContainerButtonKeydown($event)" class="p-datepicker-next p-link" (click)="onNextButtonClick($event)" [style.display]="numberOfMonths === 1 ? 'inline-flex' : (i === numberOfMonths -1) ? 'inline-flex' : 'none'" type="button" pRipple>
2001
2294
  <span class="p-datepicker-next-icon pi pi-chevron-right"></span>
2002
2295
  </button>
2003
2296
  </div>
2004
- <div class="p-datepicker-calendar-container" *ngIf="view ==='date'">
2297
+ <div class="p-datepicker-calendar-container" *ngIf="currentView ==='date'">
2005
2298
  <table class="p-datepicker-calendar">
2006
2299
  <thead>
2007
2300
  <tr>
@@ -2035,19 +2328,24 @@ Calendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.
2035
2328
  </div>
2036
2329
  </div>
2037
2330
  </div>
2038
- <div class="p-monthpicker" *ngIf="view === 'month'">
2039
- <span *ngFor="let m of monthPickerValues; let i = index" (click)="onMonthSelect($event, i)" (keydown)="onMonthCellKeydown($event,i)" class="p-monthpicker-month" [ngClass]="{'p-highlight': isMonthSelected(i), 'p-disabled':!isSelectable(1, i, this.currentYear, false)}" pRipple>
2331
+ <div class="p-monthpicker" *ngIf="currentView === 'month'">
2332
+ <span *ngFor="let m of monthPickerValues(); let i = index" (click)="onMonthSelect($event, i)" (keydown)="onMonthCellKeydown($event,i)" class="p-monthpicker-month" [ngClass]="{'p-highlight': isMonthSelected(i), 'p-disabled':!isSelectable(1, i, this.currentYear, false)}" pRipple>
2040
2333
  {{m}}
2041
2334
  </span>
2042
2335
  </div>
2336
+ <div class="p-yearpicker" *ngIf="currentView === 'year'">
2337
+ <span *ngFor="let y of yearPickerValues()" (click)="onYearSelect($event, y)" (keydown)="onYearCellKeydown($event,y)" class="p-yearpicker-year" [ngClass]="{'p-highlight': isYearSelected(y)}" pRipple>
2338
+ {{y}}
2339
+ </span>
2340
+ </div>
2043
2341
  </ng-container>
2044
2342
  <div class="p-timepicker" *ngIf="showTime||timeOnly">
2045
2343
  <div class="p-hour-picker">
2046
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementHour($event)" (mousedown)="onTimePickerElementMouseDown($event, 0, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2344
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementHour($event)" (keydown.space)="incrementHour($event)" (mousedown)="onTimePickerElementMouseDown($event, 0, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2047
2345
  <span class="pi pi-chevron-up"></span>
2048
2346
  </button>
2049
2347
  <span><ng-container *ngIf="currentHour < 10">0</ng-container>{{currentHour}}</span>
2050
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementHour($event)" (mousedown)="onTimePickerElementMouseDown($event, 0, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2348
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementHour($event)" (keydown.space)="decrementHour($event)" (mousedown)="onTimePickerElementMouseDown($event, 0, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2051
2349
  <span class="pi pi-chevron-down"></span>
2052
2350
  </button>
2053
2351
  </div>
@@ -2055,11 +2353,11 @@ Calendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.
2055
2353
  <span>{{timeSeparator}}</span>
2056
2354
  </div>
2057
2355
  <div class="p-minute-picker">
2058
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementMinute($event)" (mousedown)="onTimePickerElementMouseDown($event, 1, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2356
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementMinute($event)" (keydown.space)="incrementMinute($event)" (mousedown)="onTimePickerElementMouseDown($event, 1, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2059
2357
  <span class="pi pi-chevron-up"></span>
2060
2358
  </button>
2061
2359
  <span><ng-container *ngIf="currentMinute < 10">0</ng-container>{{currentMinute}}</span>
2062
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementMinute($event)" (mousedown)="onTimePickerElementMouseDown($event, 1, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2360
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementMinute($event)" (keydown.space)="decrementMinute($event)" (mousedown)="onTimePickerElementMouseDown($event, 1, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2063
2361
  <span class="pi pi-chevron-down"></span>
2064
2362
  </button>
2065
2363
  </div>
@@ -2067,11 +2365,11 @@ Calendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.
2067
2365
  <span>{{timeSeparator}}</span>
2068
2366
  </div>
2069
2367
  <div class="p-second-picker" *ngIf="showSeconds">
2070
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementSecond($event)" (mousedown)="onTimePickerElementMouseDown($event, 2, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2368
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementSecond($event)" (keydown.space)="incrementSecond($event)" (mousedown)="onTimePickerElementMouseDown($event, 2, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2071
2369
  <span class="pi pi-chevron-up"></span>
2072
2370
  </button>
2073
2371
  <span><ng-container *ngIf="currentSecond < 10">0</ng-container>{{currentSecond}}</span>
2074
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementSecond($event)" (mousedown)="onTimePickerElementMouseDown($event, 2, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2372
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementSecond($event)" (keydown.space)="decrementSecond($event)" (mousedown)="onTimePickerElementMouseDown($event, 2, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2075
2373
  <span class="pi pi-chevron-down"></span>
2076
2374
  </button>
2077
2375
  </div>
@@ -2093,7 +2391,7 @@ Calendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.
2093
2391
  <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
2094
2392
  </div>
2095
2393
  </span>
2096
- `, isInline: true, styles: [".p-calendar{position:relative;display:inline-flex}.p-calendar .p-inputtext{flex:1 1 auto;width:1%}.p-calendar-w-btn .p-inputtext{border-top-right-radius:0;border-bottom-right-radius:0}.p-calendar-w-btn .p-datepicker-trigger{border-top-left-radius:0;border-bottom-left-radius:0}.p-fluid .p-calendar{display:flex}.p-fluid .p-calendar .p-inputtext{width:1%}.p-calendar .p-datepicker{min-width:100%}.p-datepicker{width:auto;position:absolute;top:0;left:0}.p-datepicker-inline{position:static}.p-datepicker-header{display:flex;align-items:center;justify-content:space-between}.p-datepicker-header .p-datepicker-title{margin:0 auto}.p-datepicker-prev,.p-datepicker-next{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-datepicker-multiple-month .p-datepicker-group-container{display:flex}.p-datepicker table{width:100%;border-collapse:collapse}.p-datepicker td>span{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}\n"], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { type: i4.Ripple, selector: "[pRipple]" }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], animations: [
2394
+ `, isInline: true, styles: [".p-calendar{position:relative;display:inline-flex;max-width:100%}.p-calendar .p-inputtext{flex:1 1 auto;width:1%}.p-calendar-w-btn .p-inputtext{border-top-right-radius:0;border-bottom-right-radius:0}.p-calendar-w-btn .p-datepicker-trigger{border-top-left-radius:0;border-bottom-left-radius:0}.p-fluid .p-calendar{display:flex}.p-fluid .p-calendar .p-inputtext{width:1%}.p-calendar .p-datepicker{min-width:100%}.p-datepicker{width:auto;position:absolute;top:0;left:0}.p-datepicker-inline{display:inline-block;position:static;overflow-x:auto}.p-datepicker-header{display:flex;align-items:center;justify-content:space-between}.p-datepicker-header .p-datepicker-title{margin:0 auto}.p-datepicker-prev,.p-datepicker-next{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-datepicker-multiple-month .p-datepicker-group-container .p-datepicker-group{flex:1 1 auto}.p-datepicker-multiple-month .p-datepicker-group-container{display:flex}.p-datepicker table{width:100%;border-collapse:collapse}.p-datepicker td>span{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}.p-yearpicker-year{width:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}\n"], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { type: i4.Ripple, selector: "[pRipple]" }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], animations: [
2097
2395
  trigger('overlayAnimation', [
2098
2396
  state('visibleTouchUI', style({
2099
2397
  transform: 'translate(-50%,-50%)',
@@ -2118,7 +2416,7 @@ Calendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.
2118
2416
  ])
2119
2417
  ])
2120
2418
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2121
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: Calendar, decorators: [{
2419
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Calendar, decorators: [{
2122
2420
  type: Component,
2123
2421
  args: [{ selector: 'p-calendar', template: `
2124
2422
  <span #container [ngClass]="{'p-calendar':true, 'p-calendar-w-btn': showIcon, 'p-calendar-timeonly': timeOnly, 'p-calendar-disabled':disabled, 'p-focus': focus}" [ngStyle]="style" [class]="styleClass">
@@ -2144,20 +2442,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
2144
2442
  <span class="p-datepicker-prev-icon pi pi-chevron-left"></span>
2145
2443
  </button>
2146
2444
  <div class="p-datepicker-title">
2147
- <span class="p-datepicker-month" *ngIf="!monthNavigator && (view !== 'month')">{{getTranslation('monthNames')[month.month]}}</span>
2148
- <select tabindex="0" class="p-datepicker-month" *ngIf="monthNavigator && (view !== 'month') && numberOfMonths === 1" (change)="onMonthDropdownChange($event.target.value)">
2149
- <option [value]="i" *ngFor="let monthName of getTranslation('monthNames');let i = index" [selected]="i === month.month">{{monthName}}</option>
2150
- </select>
2151
- <select tabindex="0" class="p-datepicker-year" *ngIf="yearNavigator && numberOfMonths === 1" (change)="onYearDropdownChange($event.target.value)">
2152
- <option [value]="year" *ngFor="let year of yearOptions" [selected]="year === currentYear">{{year}}</option>
2153
- </select>
2154
- <span class="p-datepicker-year" *ngIf="!yearNavigator">{{view === 'month' ? currentYear : month.year}}</span>
2445
+ <button type="button" (click)="switchToMonthView($event)" (keydown)="onContainerButtonKeydown($event)" *ngIf="currentView === 'date'" class="p-datepicker-month p-link" [disabled]="switchViewButtonDisabled()">
2446
+ {{getMonthName(month.month)}}
2447
+ </button>
2448
+ <button type="button" (click)="switchToYearView($event)" (keydown)="onContainerButtonKeydown($event)" *ngIf="currentView !== 'year'" class="p-datepicker-year p-link" [disabled]="switchViewButtonDisabled()">
2449
+ {{currentYear}}
2450
+ </button>
2451
+ <span class="p-datepicker-decade" *ngIf="currentView === 'year'">
2452
+ <ng-container *ngIf="!decadeTemplate">{{yearPickerValues()[0]}} - {{yearPickerValues()[yearPickerValues().length - 1]}}</ng-container>
2453
+ <ng-container *ngTemplateOutlet="decadeTemplate; context: {$implicit: yearPickerValues}"></ng-container>
2454
+ </span>
2155
2455
  </div>
2156
- <button (keydown)="onContainerButtonKeydown($event)" class="p-datepicker-next p-link" (click)="onNextButtonClick($event)" *ngIf="numberOfMonths === 1 ? true : (i === numberOfMonths -1)" type="button" pRipple>
2456
+ <button (keydown)="onContainerButtonKeydown($event)" class="p-datepicker-next p-link" (click)="onNextButtonClick($event)" [style.display]="numberOfMonths === 1 ? 'inline-flex' : (i === numberOfMonths -1) ? 'inline-flex' : 'none'" type="button" pRipple>
2157
2457
  <span class="p-datepicker-next-icon pi pi-chevron-right"></span>
2158
2458
  </button>
2159
2459
  </div>
2160
- <div class="p-datepicker-calendar-container" *ngIf="view ==='date'">
2460
+ <div class="p-datepicker-calendar-container" *ngIf="currentView ==='date'">
2161
2461
  <table class="p-datepicker-calendar">
2162
2462
  <thead>
2163
2463
  <tr>
@@ -2191,19 +2491,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
2191
2491
  </div>
2192
2492
  </div>
2193
2493
  </div>
2194
- <div class="p-monthpicker" *ngIf="view === 'month'">
2195
- <span *ngFor="let m of monthPickerValues; let i = index" (click)="onMonthSelect($event, i)" (keydown)="onMonthCellKeydown($event,i)" class="p-monthpicker-month" [ngClass]="{'p-highlight': isMonthSelected(i), 'p-disabled':!isSelectable(1, i, this.currentYear, false)}" pRipple>
2494
+ <div class="p-monthpicker" *ngIf="currentView === 'month'">
2495
+ <span *ngFor="let m of monthPickerValues(); let i = index" (click)="onMonthSelect($event, i)" (keydown)="onMonthCellKeydown($event,i)" class="p-monthpicker-month" [ngClass]="{'p-highlight': isMonthSelected(i), 'p-disabled':!isSelectable(1, i, this.currentYear, false)}" pRipple>
2196
2496
  {{m}}
2197
2497
  </span>
2198
2498
  </div>
2499
+ <div class="p-yearpicker" *ngIf="currentView === 'year'">
2500
+ <span *ngFor="let y of yearPickerValues()" (click)="onYearSelect($event, y)" (keydown)="onYearCellKeydown($event,y)" class="p-yearpicker-year" [ngClass]="{'p-highlight': isYearSelected(y)}" pRipple>
2501
+ {{y}}
2502
+ </span>
2503
+ </div>
2199
2504
  </ng-container>
2200
2505
  <div class="p-timepicker" *ngIf="showTime||timeOnly">
2201
2506
  <div class="p-hour-picker">
2202
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementHour($event)" (mousedown)="onTimePickerElementMouseDown($event, 0, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2507
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementHour($event)" (keydown.space)="incrementHour($event)" (mousedown)="onTimePickerElementMouseDown($event, 0, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2203
2508
  <span class="pi pi-chevron-up"></span>
2204
2509
  </button>
2205
2510
  <span><ng-container *ngIf="currentHour < 10">0</ng-container>{{currentHour}}</span>
2206
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementHour($event)" (mousedown)="onTimePickerElementMouseDown($event, 0, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2511
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementHour($event)" (keydown.space)="decrementHour($event)" (mousedown)="onTimePickerElementMouseDown($event, 0, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2207
2512
  <span class="pi pi-chevron-down"></span>
2208
2513
  </button>
2209
2514
  </div>
@@ -2211,11 +2516,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
2211
2516
  <span>{{timeSeparator}}</span>
2212
2517
  </div>
2213
2518
  <div class="p-minute-picker">
2214
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementMinute($event)" (mousedown)="onTimePickerElementMouseDown($event, 1, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2519
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementMinute($event)" (keydown.space)="incrementMinute($event)" (mousedown)="onTimePickerElementMouseDown($event, 1, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2215
2520
  <span class="pi pi-chevron-up"></span>
2216
2521
  </button>
2217
2522
  <span><ng-container *ngIf="currentMinute < 10">0</ng-container>{{currentMinute}}</span>
2218
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementMinute($event)" (mousedown)="onTimePickerElementMouseDown($event, 1, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2523
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementMinute($event)" (keydown.space)="decrementMinute($event)" (mousedown)="onTimePickerElementMouseDown($event, 1, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2219
2524
  <span class="pi pi-chevron-down"></span>
2220
2525
  </button>
2221
2526
  </div>
@@ -2223,11 +2528,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
2223
2528
  <span>{{timeSeparator}}</span>
2224
2529
  </div>
2225
2530
  <div class="p-second-picker" *ngIf="showSeconds">
2226
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementSecond($event)" (mousedown)="onTimePickerElementMouseDown($event, 2, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2531
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="incrementSecond($event)" (keydown.space)="incrementSecond($event)" (mousedown)="onTimePickerElementMouseDown($event, 2, 1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2227
2532
  <span class="pi pi-chevron-up"></span>
2228
2533
  </button>
2229
2534
  <span><ng-container *ngIf="currentSecond < 10">0</ng-container>{{currentSecond}}</span>
2230
- <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementSecond($event)" (mousedown)="onTimePickerElementMouseDown($event, 2, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2535
+ <button class="p-link" type="button" (keydown)="onContainerButtonKeydown($event)" (keydown.enter)="decrementSecond($event)" (keydown.space)="decrementSecond($event)" (mousedown)="onTimePickerElementMouseDown($event, 2, -1)" (mouseup)="onTimePickerElementMouseUp($event)" (mouseleave)="onTimePickerElementMouseLeave()" pRipple>
2231
2536
  <span class="pi pi-chevron-down"></span>
2232
2537
  </button>
2233
2538
  </div>
@@ -2277,7 +2582,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
2277
2582
  'class': 'p-element p-inputwrapper',
2278
2583
  '[class.p-inputwrapper-filled]': 'filled',
2279
2584
  '[class.p-inputwrapper-focus]': 'focus'
2280
- }, providers: [CALENDAR_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".p-calendar{position:relative;display:inline-flex}.p-calendar .p-inputtext{flex:1 1 auto;width:1%}.p-calendar-w-btn .p-inputtext{border-top-right-radius:0;border-bottom-right-radius:0}.p-calendar-w-btn .p-datepicker-trigger{border-top-left-radius:0;border-bottom-left-radius:0}.p-fluid .p-calendar{display:flex}.p-fluid .p-calendar .p-inputtext{width:1%}.p-calendar .p-datepicker{min-width:100%}.p-datepicker{width:auto;position:absolute;top:0;left:0}.p-datepicker-inline{position:static}.p-datepicker-header{display:flex;align-items:center;justify-content:space-between}.p-datepicker-header .p-datepicker-title{margin:0 auto}.p-datepicker-prev,.p-datepicker-next{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-datepicker-multiple-month .p-datepicker-group-container{display:flex}.p-datepicker table{width:100%;border-collapse:collapse}.p-datepicker td>span{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}\n"] }]
2585
+ }, providers: [CALENDAR_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".p-calendar{position:relative;display:inline-flex;max-width:100%}.p-calendar .p-inputtext{flex:1 1 auto;width:1%}.p-calendar-w-btn .p-inputtext{border-top-right-radius:0;border-bottom-right-radius:0}.p-calendar-w-btn .p-datepicker-trigger{border-top-left-radius:0;border-bottom-left-radius:0}.p-fluid .p-calendar{display:flex}.p-fluid .p-calendar .p-inputtext{width:1%}.p-calendar .p-datepicker{min-width:100%}.p-datepicker{width:auto;position:absolute;top:0;left:0}.p-datepicker-inline{display:inline-block;position:static;overflow-x:auto}.p-datepicker-header{display:flex;align-items:center;justify-content:space-between}.p-datepicker-header .p-datepicker-title{margin:0 auto}.p-datepicker-prev,.p-datepicker-next{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-datepicker-multiple-month .p-datepicker-group-container .p-datepicker-group{flex:1 1 auto}.p-datepicker-multiple-month .p-datepicker-group-container{display:flex}.p-datepicker table{width:100%;border-collapse:collapse}.p-datepicker td>span{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:0 auto;overflow:hidden;position:relative}.p-monthpicker-month{width:33.3%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-datepicker-buttonbar{display:flex;justify-content:space-between;align-items:center}.p-timepicker{display:flex;justify-content:center;align-items:center}.p-timepicker button{display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}.p-timepicker>div{display:flex;align-items:center;flex-direction:column}.p-datepicker-touch-ui,.p-calendar .p-datepicker-touch-ui{position:fixed;top:50%;left:50%;min-width:80vw;transform:translate(-50%,-50%)}.p-yearpicker-year{width:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}\n"] }]
2281
2586
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i1.PrimeNGConfig }, { type: i1.OverlayService }]; }, propDecorators: { style: [{
2282
2587
  type: Input
2283
2588
  }], styleClass: [{
@@ -2366,10 +2671,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
2366
2671
  type: Input
2367
2672
  }], hideOnDateTimeSelect: [{
2368
2673
  type: Input
2369
- }], numberOfMonths: [{
2370
- type: Input
2371
- }], view: [{
2372
- type: Input
2373
2674
  }], touchUI: [{
2374
2675
  type: Input
2375
2676
  }], timeSeparator: [{
@@ -2418,6 +2719,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
2418
2719
  }], content: [{
2419
2720
  type: ViewChild,
2420
2721
  args: ['contentWrapper', { static: false }]
2722
+ }], view: [{
2723
+ type: Input
2421
2724
  }], defaultDate: [{
2422
2725
  type: Input
2423
2726
  }], minDate: [{
@@ -2432,15 +2735,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
2432
2735
  type: Input
2433
2736
  }], showTime: [{
2434
2737
  type: Input
2738
+ }], responsiveOptions: [{
2739
+ type: Input
2740
+ }], numberOfMonths: [{
2741
+ type: Input
2435
2742
  }], locale: [{
2436
2743
  type: Input
2437
2744
  }] } });
2438
2745
  class CalendarModule {
2439
2746
  }
2440
- CalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2441
- CalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CalendarModule, declarations: [Calendar], imports: [CommonModule, ButtonModule, SharedModule, RippleModule], exports: [Calendar, ButtonModule, SharedModule] });
2442
- CalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CalendarModule, imports: [[CommonModule, ButtonModule, SharedModule, RippleModule], ButtonModule, SharedModule] });
2443
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CalendarModule, decorators: [{
2747
+ CalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2748
+ CalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CalendarModule, declarations: [Calendar], imports: [CommonModule, ButtonModule, SharedModule, RippleModule], exports: [Calendar, ButtonModule, SharedModule] });
2749
+ CalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CalendarModule, imports: [[CommonModule, ButtonModule, SharedModule, RippleModule], ButtonModule, SharedModule] });
2750
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CalendarModule, decorators: [{
2444
2751
  type: NgModule,
2445
2752
  args: [{
2446
2753
  imports: [CommonModule, ButtonModule, SharedModule, RippleModule],