primeng 20.2.0 → 20.3.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 (711) hide show
  1. package/accordion/index.d.ts +31 -12
  2. package/animateonscroll/index.d.ts +5 -6
  3. package/api/index.d.ts +128 -2
  4. package/autocomplete/index.d.ts +18 -208
  5. package/autofocus/index.d.ts +2 -2
  6. package/avatar/index.d.ts +12 -5
  7. package/avatargroup/index.d.ts +10 -5
  8. package/badge/index.d.ts +18 -10
  9. package/base/index.d.ts +4 -9
  10. package/basecomponent/index.d.ts +147 -29
  11. package/baseeditableholder/index.d.ts +3 -3
  12. package/baseinput/index.d.ts +3 -3
  13. package/basemodelholder/index.d.ts +3 -3
  14. package/bind/index.d.ts +38 -0
  15. package/blockui/index.d.ts +17 -21
  16. package/breadcrumb/index.d.ts +15 -45
  17. package/button/index.d.ts +113 -153
  18. package/buttongroup/index.d.ts +1 -1
  19. package/card/index.d.ts +18 -36
  20. package/carousel/index.d.ts +18 -74
  21. package/cascadeselect/index.d.ts +23 -131
  22. package/chart/index.d.ts +13 -7
  23. package/checkbox/index.d.ts +16 -35
  24. package/chip/index.d.ts +15 -36
  25. package/classnames/index.d.ts +3 -9
  26. package/colorpicker/index.d.ts +15 -27
  27. package/config/index.d.ts +203 -24
  28. package/confirmdialog/index.d.ts +22 -49
  29. package/confirmpopup/index.d.ts +15 -36
  30. package/contextmenu/index.d.ts +19 -8
  31. package/dataview/index.d.ts +17 -184
  32. package/datepicker/index.d.ts +23 -215
  33. package/dialog/index.d.ts +16 -40
  34. package/divider/index.d.ts +10 -4
  35. package/dock/index.d.ts +17 -29
  36. package/drawer/index.d.ts +16 -37
  37. package/dynamicdialog/index.d.ts +67 -75
  38. package/editor/index.d.ts +16 -132
  39. package/fesm2022/primeng-accordion.mjs +93 -57
  40. package/fesm2022/primeng-accordion.mjs.map +1 -1
  41. package/fesm2022/primeng-animateonscroll.mjs +10 -13
  42. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  43. package/fesm2022/primeng-api.mjs +31 -31
  44. package/fesm2022/primeng-autocomplete.mjs +91 -61
  45. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  46. package/fesm2022/primeng-autofocus.mjs +9 -9
  47. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  48. package/fesm2022/primeng-avatar.mjs +33 -24
  49. package/fesm2022/primeng-avatar.mjs.map +1 -1
  50. package/fesm2022/primeng-avatargroup.mjs +24 -22
  51. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  52. package/fesm2022/primeng-badge.mjs +65 -47
  53. package/fesm2022/primeng-badge.mjs.map +1 -1
  54. package/fesm2022/primeng-base.mjs +10 -13
  55. package/fesm2022/primeng-base.mjs.map +1 -1
  56. package/fesm2022/primeng-basecomponent.mjs +345 -94
  57. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  58. package/fesm2022/primeng-baseeditableholder.mjs +3 -3
  59. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  60. package/fesm2022/primeng-baseinput.mjs +3 -3
  61. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  62. package/fesm2022/primeng-basemodelholder.mjs +3 -3
  63. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  64. package/fesm2022/primeng-bind.mjs +94 -0
  65. package/fesm2022/primeng-bind.mjs.map +1 -0
  66. package/fesm2022/primeng-blockui.mjs +30 -24
  67. package/fesm2022/primeng-blockui.mjs.map +1 -1
  68. package/fesm2022/primeng-breadcrumb.mjs +91 -66
  69. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  70. package/fesm2022/primeng-button.mjs +247 -207
  71. package/fesm2022/primeng-button.mjs.map +1 -1
  72. package/fesm2022/primeng-buttongroup.mjs +14 -14
  73. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  74. package/fesm2022/primeng-card.mjs +58 -38
  75. package/fesm2022/primeng-card.mjs.map +1 -1
  76. package/fesm2022/primeng-carousel.mjs +142 -45
  77. package/fesm2022/primeng-carousel.mjs.map +1 -1
  78. package/fesm2022/primeng-cascadeselect.mjs +221 -193
  79. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  80. package/fesm2022/primeng-chart.mjs +43 -20
  81. package/fesm2022/primeng-chart.mjs.map +1 -1
  82. package/fesm2022/primeng-checkbox.mjs +47 -33
  83. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  84. package/fesm2022/primeng-chip.mjs +43 -36
  85. package/fesm2022/primeng-chip.mjs.map +1 -1
  86. package/fesm2022/primeng-classnames.mjs +15 -40
  87. package/fesm2022/primeng-classnames.mjs.map +1 -1
  88. package/fesm2022/primeng-colorpicker.mjs +49 -41
  89. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  90. package/fesm2022/primeng-config.mjs +23 -8
  91. package/fesm2022/primeng-config.mjs.map +1 -1
  92. package/fesm2022/primeng-confirmdialog.mjs +57 -33
  93. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  94. package/fesm2022/primeng-confirmpopup.mjs +45 -29
  95. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  96. package/fesm2022/primeng-contextmenu.mjs +131 -83
  97. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  98. package/fesm2022/primeng-dataview.mjs +51 -42
  99. package/fesm2022/primeng-dataview.mjs.map +1 -1
  100. package/fesm2022/primeng-datepicker.mjs +292 -186
  101. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  102. package/fesm2022/primeng-dialog.mjs +73 -40
  103. package/fesm2022/primeng-dialog.mjs.map +1 -1
  104. package/fesm2022/primeng-divider.mjs +29 -21
  105. package/fesm2022/primeng-divider.mjs.map +1 -1
  106. package/fesm2022/primeng-dock.mjs +63 -43
  107. package/fesm2022/primeng-dock.mjs.map +1 -1
  108. package/fesm2022/primeng-dragdrop.mjs +10 -10
  109. package/fesm2022/primeng-drawer.mjs +54 -43
  110. package/fesm2022/primeng-drawer.mjs.map +1 -1
  111. package/fesm2022/primeng-dynamicdialog.mjs +361 -564
  112. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  113. package/fesm2022/primeng-editor.mjs +101 -89
  114. package/fesm2022/primeng-editor.mjs.map +1 -1
  115. package/fesm2022/primeng-fieldset.mjs +64 -47
  116. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  117. package/fesm2022/primeng-fileupload.mjs +125 -120
  118. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  119. package/fesm2022/primeng-floatlabel.mjs +28 -19
  120. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  121. package/fesm2022/primeng-fluid.mjs +24 -14
  122. package/fesm2022/primeng-fluid.mjs.map +1 -1
  123. package/fesm2022/primeng-focustrap.mjs +9 -11
  124. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  125. package/fesm2022/primeng-galleria.mjs +346 -214
  126. package/fesm2022/primeng-galleria.mjs.map +1 -1
  127. package/fesm2022/primeng-iconfield.mjs +30 -18
  128. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  129. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  130. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  131. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  132. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  133. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  134. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  135. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  136. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  137. package/fesm2022/primeng-icons-arrowdown.mjs +4 -5
  138. package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
  139. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  140. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  141. package/fesm2022/primeng-icons-arrowleft.mjs +4 -5
  142. package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
  143. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  144. package/fesm2022/primeng-icons-arrowup.mjs +4 -5
  145. package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
  146. package/fesm2022/primeng-icons-ban.mjs +4 -5
  147. package/fesm2022/primeng-icons-ban.mjs.map +1 -1
  148. package/fesm2022/primeng-icons-bars.mjs +3 -3
  149. package/fesm2022/primeng-icons-baseicon.mjs +7 -6
  150. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
  151. package/fesm2022/primeng-icons-blank.mjs +3 -3
  152. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  153. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  154. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  155. package/fesm2022/primeng-icons-check.mjs +3 -3
  156. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  157. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  158. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  159. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  160. package/fesm2022/primeng-icons-exclamationtriangle.mjs +4 -5
  161. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
  162. package/fesm2022/primeng-icons-eye.mjs +3 -3
  163. package/fesm2022/primeng-icons-eyeslash.mjs +4 -5
  164. package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
  165. package/fesm2022/primeng-icons-filter.mjs +4 -5
  166. package/fesm2022/primeng-icons-filter.mjs.map +1 -1
  167. package/fesm2022/primeng-icons-filterfill.mjs +3 -3
  168. package/fesm2022/primeng-icons-filterslash.mjs +4 -5
  169. package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
  170. package/fesm2022/primeng-icons-home.mjs +4 -5
  171. package/fesm2022/primeng-icons-home.mjs.map +1 -1
  172. package/fesm2022/primeng-icons-infocircle.mjs +4 -5
  173. package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
  174. package/fesm2022/primeng-icons-minus.mjs +3 -3
  175. package/fesm2022/primeng-icons-pencil.mjs +4 -5
  176. package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
  177. package/fesm2022/primeng-icons-plus.mjs +4 -5
  178. package/fesm2022/primeng-icons-plus.mjs.map +1 -1
  179. package/fesm2022/primeng-icons-refresh.mjs +4 -5
  180. package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
  181. package/fesm2022/primeng-icons-search.mjs +4 -5
  182. package/fesm2022/primeng-icons-search.mjs.map +1 -1
  183. package/fesm2022/primeng-icons-searchminus.mjs +4 -5
  184. package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
  185. package/fesm2022/primeng-icons-searchplus.mjs +4 -5
  186. package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
  187. package/fesm2022/primeng-icons-sortalt.mjs +4 -5
  188. package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
  189. package/fesm2022/primeng-icons-sortamountdown.mjs +4 -5
  190. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
  191. package/fesm2022/primeng-icons-sortamountupalt.mjs +4 -5
  192. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
  193. package/fesm2022/primeng-icons-spinner.mjs +4 -5
  194. package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
  195. package/fesm2022/primeng-icons-star.mjs +4 -5
  196. package/fesm2022/primeng-icons-star.mjs.map +1 -1
  197. package/fesm2022/primeng-icons-starfill.mjs +4 -5
  198. package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
  199. package/fesm2022/primeng-icons-thlarge.mjs +4 -5
  200. package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
  201. package/fesm2022/primeng-icons-times.mjs +3 -3
  202. package/fesm2022/primeng-icons-timescircle.mjs +4 -5
  203. package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
  204. package/fesm2022/primeng-icons-trash.mjs +4 -5
  205. package/fesm2022/primeng-icons-trash.mjs.map +1 -1
  206. package/fesm2022/primeng-icons-undo.mjs +4 -5
  207. package/fesm2022/primeng-icons-undo.mjs.map +1 -1
  208. package/fesm2022/primeng-icons-upload.mjs +4 -5
  209. package/fesm2022/primeng-icons-upload.mjs.map +1 -1
  210. package/fesm2022/primeng-icons-windowmaximize.mjs +4 -5
  211. package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
  212. package/fesm2022/primeng-icons-windowminimize.mjs +4 -5
  213. package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
  214. package/fesm2022/primeng-iftalabel.mjs +27 -17
  215. package/fesm2022/primeng-iftalabel.mjs.map +1 -1
  216. package/fesm2022/primeng-image.mjs +92 -42
  217. package/fesm2022/primeng-image.mjs.map +1 -1
  218. package/fesm2022/primeng-imagecompare.mjs +31 -24
  219. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  220. package/fesm2022/primeng-inplace.mjs +46 -36
  221. package/fesm2022/primeng-inplace.mjs.map +1 -1
  222. package/fesm2022/primeng-inputgroup.mjs +28 -21
  223. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  224. package/fesm2022/primeng-inputgroupaddon.mjs +25 -19
  225. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  226. package/fesm2022/primeng-inputicon.mjs +27 -15
  227. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  228. package/fesm2022/primeng-inputmask.mjs +38 -29
  229. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  230. package/fesm2022/primeng-inputnumber.mjs +67 -60
  231. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  232. package/fesm2022/primeng-inputotp.mjs +31 -19
  233. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  234. package/fesm2022/primeng-inputtext.mjs +39 -20
  235. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  236. package/fesm2022/primeng-keyfilter.mjs +7 -7
  237. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  238. package/fesm2022/primeng-knob.mjs +35 -27
  239. package/fesm2022/primeng-knob.mjs.map +1 -1
  240. package/fesm2022/primeng-listbox.mjs +146 -61
  241. package/fesm2022/primeng-listbox.mjs.map +1 -1
  242. package/fesm2022/primeng-megamenu.mjs +363 -345
  243. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  244. package/fesm2022/primeng-menu.mjs +116 -60
  245. package/fesm2022/primeng-menu.mjs.map +1 -1
  246. package/fesm2022/primeng-menubar.mjs +122 -86
  247. package/fesm2022/primeng-menubar.mjs.map +1 -1
  248. package/fesm2022/primeng-message.mjs +47 -39
  249. package/fesm2022/primeng-message.mjs.map +1 -1
  250. package/fesm2022/primeng-metergroup.mjs +53 -43
  251. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  252. package/fesm2022/primeng-multiselect.mjs +196 -147
  253. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  254. package/fesm2022/primeng-orderlist.mjs +80 -49
  255. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  256. package/fesm2022/primeng-organizationchart.mjs +93 -67
  257. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  258. package/fesm2022/primeng-overlay.mjs +67 -80
  259. package/fesm2022/primeng-overlay.mjs.map +1 -1
  260. package/fesm2022/primeng-overlaybadge.mjs +31 -22
  261. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  262. package/fesm2022/primeng-paginator.mjs +65 -53
  263. package/fesm2022/primeng-paginator.mjs.map +1 -1
  264. package/fesm2022/primeng-panel.mjs +108 -79
  265. package/fesm2022/primeng-panel.mjs.map +1 -1
  266. package/fesm2022/primeng-panelmenu.mjs +385 -308
  267. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  268. package/fesm2022/primeng-passthrough.mjs +21 -0
  269. package/fesm2022/primeng-passthrough.mjs.map +1 -0
  270. package/fesm2022/primeng-password.mjs +80 -67
  271. package/fesm2022/primeng-password.mjs.map +1 -1
  272. package/fesm2022/primeng-picklist.mjs +153 -95
  273. package/fesm2022/primeng-picklist.mjs.map +1 -1
  274. package/fesm2022/primeng-popover.mjs +44 -33
  275. package/fesm2022/primeng-popover.mjs.map +1 -1
  276. package/fesm2022/primeng-progressbar.mjs +37 -29
  277. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  278. package/fesm2022/primeng-progressspinner.mjs +30 -23
  279. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  280. package/fesm2022/primeng-radiobutton.mjs +41 -32
  281. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  282. package/fesm2022/primeng-rating.mjs +48 -38
  283. package/fesm2022/primeng-rating.mjs.map +1 -1
  284. package/fesm2022/primeng-ripple.mjs +17 -19
  285. package/fesm2022/primeng-ripple.mjs.map +1 -1
  286. package/fesm2022/primeng-scroller.mjs +50 -42
  287. package/fesm2022/primeng-scroller.mjs.map +1 -1
  288. package/fesm2022/primeng-scrollpanel.mjs +46 -39
  289. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  290. package/fesm2022/primeng-scrolltop.mjs +31 -21
  291. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  292. package/fesm2022/primeng-select.mjs +161 -82
  293. package/fesm2022/primeng-select.mjs.map +1 -1
  294. package/fesm2022/primeng-selectbutton.mjs +36 -25
  295. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  296. package/fesm2022/primeng-skeleton.mjs +24 -17
  297. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  298. package/fesm2022/primeng-slider.mjs +43 -23
  299. package/fesm2022/primeng-slider.mjs.map +1 -1
  300. package/fesm2022/primeng-speeddial.mjs +70 -46
  301. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  302. package/fesm2022/primeng-splitbutton.mjs +38 -21
  303. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  304. package/fesm2022/primeng-splitter.mjs +38 -34
  305. package/fesm2022/primeng-splitter.mjs.map +1 -1
  306. package/fesm2022/primeng-stepper.mjs +163 -88
  307. package/fesm2022/primeng-stepper.mjs.map +1 -1
  308. package/fesm2022/primeng-steps.mjs +14 -16
  309. package/fesm2022/primeng-steps.mjs.map +1 -1
  310. package/fesm2022/primeng-styleclass.mjs +7 -7
  311. package/fesm2022/primeng-table.mjs +714 -643
  312. package/fesm2022/primeng-table.mjs.map +1 -1
  313. package/fesm2022/primeng-tabs.mjs +183 -116
  314. package/fesm2022/primeng-tabs.mjs.map +1 -1
  315. package/fesm2022/primeng-tag.mjs +35 -25
  316. package/fesm2022/primeng-tag.mjs.map +1 -1
  317. package/fesm2022/primeng-terminal.mjs +51 -45
  318. package/fesm2022/primeng-terminal.mjs.map +1 -1
  319. package/fesm2022/primeng-textarea.mjs +28 -23
  320. package/fesm2022/primeng-textarea.mjs.map +1 -1
  321. package/fesm2022/primeng-tieredmenu.mjs +136 -73
  322. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  323. package/fesm2022/primeng-timeline.mjs +42 -34
  324. package/fesm2022/primeng-timeline.mjs.map +1 -1
  325. package/fesm2022/primeng-toast.mjs +66 -61
  326. package/fesm2022/primeng-toast.mjs.map +1 -1
  327. package/fesm2022/primeng-togglebutton.mjs +39 -29
  328. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  329. package/fesm2022/primeng-toggleswitch.mjs +39 -29
  330. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  331. package/fesm2022/primeng-toolbar.mjs +37 -29
  332. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  333. package/fesm2022/primeng-tooltip.mjs +32 -33
  334. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  335. package/fesm2022/primeng-tree.mjs +185 -114
  336. package/fesm2022/primeng-tree.mjs.map +1 -1
  337. package/fesm2022/primeng-treeselect.mjs +95 -49
  338. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  339. package/fesm2022/primeng-treetable.mjs +283 -249
  340. package/fesm2022/primeng-treetable.mjs.map +1 -1
  341. package/fesm2022/primeng-types-accordion.mjs +4 -0
  342. package/fesm2022/primeng-types-accordion.mjs.map +1 -0
  343. package/fesm2022/primeng-types-autocomplete.mjs +4 -0
  344. package/fesm2022/primeng-types-autocomplete.mjs.map +1 -0
  345. package/fesm2022/primeng-types-avatar.mjs +4 -0
  346. package/fesm2022/primeng-types-avatar.mjs.map +1 -0
  347. package/fesm2022/primeng-types-avatargroup.mjs +4 -0
  348. package/fesm2022/primeng-types-avatargroup.mjs.map +1 -0
  349. package/fesm2022/primeng-types-badge.mjs +4 -0
  350. package/fesm2022/primeng-types-badge.mjs.map +1 -0
  351. package/fesm2022/primeng-types-blockui.mjs +4 -0
  352. package/fesm2022/primeng-types-blockui.mjs.map +1 -0
  353. package/fesm2022/primeng-types-breadcrumb.mjs +4 -0
  354. package/fesm2022/primeng-types-breadcrumb.mjs.map +1 -0
  355. package/fesm2022/primeng-types-button.mjs +4 -0
  356. package/fesm2022/primeng-types-button.mjs.map +1 -0
  357. package/fesm2022/primeng-types-card.mjs +4 -0
  358. package/fesm2022/primeng-types-card.mjs.map +1 -0
  359. package/fesm2022/primeng-types-carousel.mjs +4 -0
  360. package/fesm2022/primeng-types-carousel.mjs.map +1 -0
  361. package/fesm2022/primeng-types-cascadeselect.mjs +4 -0
  362. package/fesm2022/primeng-types-cascadeselect.mjs.map +1 -0
  363. package/fesm2022/primeng-types-chart.mjs +4 -0
  364. package/fesm2022/primeng-types-chart.mjs.map +1 -0
  365. package/fesm2022/primeng-types-checkbox.mjs +4 -0
  366. package/fesm2022/primeng-types-checkbox.mjs.map +1 -0
  367. package/fesm2022/primeng-types-chip.mjs +4 -0
  368. package/fesm2022/primeng-types-chip.mjs.map +1 -0
  369. package/fesm2022/primeng-types-colorpicker.mjs +4 -0
  370. package/fesm2022/primeng-types-colorpicker.mjs.map +1 -0
  371. package/fesm2022/primeng-types-confirmdialog.mjs +4 -0
  372. package/fesm2022/primeng-types-confirmdialog.mjs.map +1 -0
  373. package/fesm2022/primeng-types-confirmpopup.mjs +4 -0
  374. package/fesm2022/primeng-types-confirmpopup.mjs.map +1 -0
  375. package/fesm2022/primeng-types-contextmenu.mjs +4 -0
  376. package/fesm2022/primeng-types-contextmenu.mjs.map +1 -0
  377. package/fesm2022/primeng-types-dataview.mjs +4 -0
  378. package/fesm2022/primeng-types-dataview.mjs.map +1 -0
  379. package/fesm2022/primeng-types-datepicker.mjs +4 -0
  380. package/fesm2022/primeng-types-datepicker.mjs.map +1 -0
  381. package/fesm2022/primeng-types-dialog.mjs +4 -0
  382. package/fesm2022/primeng-types-dialog.mjs.map +1 -0
  383. package/fesm2022/primeng-types-divider.mjs +4 -0
  384. package/fesm2022/primeng-types-divider.mjs.map +1 -0
  385. package/fesm2022/primeng-types-dock.mjs +4 -0
  386. package/fesm2022/primeng-types-dock.mjs.map +1 -0
  387. package/fesm2022/primeng-types-drawer.mjs +4 -0
  388. package/fesm2022/primeng-types-drawer.mjs.map +1 -0
  389. package/fesm2022/primeng-types-editor.mjs +4 -0
  390. package/fesm2022/primeng-types-editor.mjs.map +1 -0
  391. package/fesm2022/primeng-types-fieldset.mjs +4 -0
  392. package/fesm2022/primeng-types-fieldset.mjs.map +1 -0
  393. package/fesm2022/primeng-types-fileupload.mjs +4 -0
  394. package/fesm2022/primeng-types-fileupload.mjs.map +1 -0
  395. package/fesm2022/primeng-types-floatlabel.mjs +4 -0
  396. package/fesm2022/primeng-types-floatlabel.mjs.map +1 -0
  397. package/fesm2022/primeng-types-fluid.mjs +4 -0
  398. package/fesm2022/primeng-types-fluid.mjs.map +1 -0
  399. package/fesm2022/primeng-types-galleria.mjs +4 -0
  400. package/fesm2022/primeng-types-galleria.mjs.map +1 -0
  401. package/fesm2022/primeng-types-iconfield.mjs +4 -0
  402. package/fesm2022/primeng-types-iconfield.mjs.map +1 -0
  403. package/fesm2022/primeng-types-iftalabel.mjs +4 -0
  404. package/fesm2022/primeng-types-iftalabel.mjs.map +1 -0
  405. package/fesm2022/primeng-types-image.mjs +4 -0
  406. package/fesm2022/primeng-types-image.mjs.map +1 -0
  407. package/fesm2022/primeng-types-imagecompare.mjs +4 -0
  408. package/fesm2022/primeng-types-imagecompare.mjs.map +1 -0
  409. package/fesm2022/primeng-types-inplace.mjs +4 -0
  410. package/fesm2022/primeng-types-inplace.mjs.map +1 -0
  411. package/fesm2022/primeng-types-inputgroup.mjs +4 -0
  412. package/fesm2022/primeng-types-inputgroup.mjs.map +1 -0
  413. package/fesm2022/primeng-types-inputgroupaddon.mjs +4 -0
  414. package/fesm2022/primeng-types-inputgroupaddon.mjs.map +1 -0
  415. package/fesm2022/primeng-types-inputicon.mjs +4 -0
  416. package/fesm2022/primeng-types-inputicon.mjs.map +1 -0
  417. package/fesm2022/primeng-types-inputmask.mjs +4 -0
  418. package/fesm2022/primeng-types-inputmask.mjs.map +1 -0
  419. package/fesm2022/primeng-types-inputnumber.mjs +4 -0
  420. package/fesm2022/primeng-types-inputnumber.mjs.map +1 -0
  421. package/fesm2022/primeng-types-inputotp.mjs +4 -0
  422. package/fesm2022/primeng-types-inputotp.mjs.map +1 -0
  423. package/fesm2022/primeng-types-inputtext.mjs +4 -0
  424. package/fesm2022/primeng-types-inputtext.mjs.map +1 -0
  425. package/fesm2022/primeng-types-knob.mjs +4 -0
  426. package/fesm2022/primeng-types-knob.mjs.map +1 -0
  427. package/fesm2022/primeng-types-listbox.mjs +4 -0
  428. package/fesm2022/primeng-types-listbox.mjs.map +1 -0
  429. package/fesm2022/primeng-types-megamenu.mjs +4 -0
  430. package/fesm2022/primeng-types-megamenu.mjs.map +1 -0
  431. package/fesm2022/primeng-types-menu.mjs +4 -0
  432. package/fesm2022/primeng-types-menu.mjs.map +1 -0
  433. package/fesm2022/primeng-types-menubar.mjs +4 -0
  434. package/fesm2022/primeng-types-menubar.mjs.map +1 -0
  435. package/fesm2022/primeng-types-message.mjs +4 -0
  436. package/fesm2022/primeng-types-message.mjs.map +1 -0
  437. package/fesm2022/primeng-types-metergroup.mjs +4 -0
  438. package/fesm2022/primeng-types-metergroup.mjs.map +1 -0
  439. package/fesm2022/primeng-types-multiselect.mjs +4 -0
  440. package/fesm2022/primeng-types-multiselect.mjs.map +1 -0
  441. package/fesm2022/primeng-types-orderlist.mjs +4 -0
  442. package/fesm2022/primeng-types-orderlist.mjs.map +1 -0
  443. package/fesm2022/primeng-types-organizationchart.mjs +4 -0
  444. package/fesm2022/primeng-types-organizationchart.mjs.map +1 -0
  445. package/fesm2022/primeng-types-overlay.mjs +4 -0
  446. package/fesm2022/primeng-types-overlay.mjs.map +1 -0
  447. package/fesm2022/primeng-types-overlaybadge.mjs +4 -0
  448. package/fesm2022/primeng-types-overlaybadge.mjs.map +1 -0
  449. package/fesm2022/primeng-types-paginator.mjs +4 -0
  450. package/fesm2022/primeng-types-paginator.mjs.map +1 -0
  451. package/fesm2022/primeng-types-panel.mjs +4 -0
  452. package/fesm2022/primeng-types-panel.mjs.map +1 -0
  453. package/fesm2022/primeng-types-panelmenu.mjs +4 -0
  454. package/fesm2022/primeng-types-panelmenu.mjs.map +1 -0
  455. package/fesm2022/primeng-types-password.mjs +4 -0
  456. package/fesm2022/primeng-types-password.mjs.map +1 -0
  457. package/fesm2022/primeng-types-picklist.mjs +4 -0
  458. package/fesm2022/primeng-types-picklist.mjs.map +1 -0
  459. package/fesm2022/primeng-types-popover.mjs +4 -0
  460. package/fesm2022/primeng-types-popover.mjs.map +1 -0
  461. package/fesm2022/primeng-types-progressbar.mjs +4 -0
  462. package/fesm2022/primeng-types-progressbar.mjs.map +1 -0
  463. package/fesm2022/primeng-types-progressspinner.mjs +4 -0
  464. package/fesm2022/primeng-types-progressspinner.mjs.map +1 -0
  465. package/fesm2022/primeng-types-radiobutton.mjs +4 -0
  466. package/fesm2022/primeng-types-radiobutton.mjs.map +1 -0
  467. package/fesm2022/primeng-types-rating.mjs +4 -0
  468. package/fesm2022/primeng-types-rating.mjs.map +1 -0
  469. package/fesm2022/primeng-types-scroller.mjs +4 -0
  470. package/fesm2022/primeng-types-scroller.mjs.map +1 -0
  471. package/fesm2022/primeng-types-scrollpanel.mjs +4 -0
  472. package/fesm2022/primeng-types-scrollpanel.mjs.map +1 -0
  473. package/fesm2022/primeng-types-scrolltop.mjs +4 -0
  474. package/fesm2022/primeng-types-scrolltop.mjs.map +1 -0
  475. package/fesm2022/primeng-types-select.mjs +4 -0
  476. package/fesm2022/primeng-types-select.mjs.map +1 -0
  477. package/fesm2022/primeng-types-selectbutton.mjs +4 -0
  478. package/fesm2022/primeng-types-selectbutton.mjs.map +1 -0
  479. package/fesm2022/primeng-types-skeleton.mjs +4 -0
  480. package/fesm2022/primeng-types-skeleton.mjs.map +1 -0
  481. package/fesm2022/primeng-types-slider.mjs +4 -0
  482. package/fesm2022/primeng-types-slider.mjs.map +1 -0
  483. package/fesm2022/primeng-types-speeddial.mjs +4 -0
  484. package/fesm2022/primeng-types-speeddial.mjs.map +1 -0
  485. package/fesm2022/primeng-types-splitbutton.mjs +4 -0
  486. package/fesm2022/primeng-types-splitbutton.mjs.map +1 -0
  487. package/fesm2022/primeng-types-splitter.mjs +4 -0
  488. package/fesm2022/primeng-types-splitter.mjs.map +1 -0
  489. package/fesm2022/primeng-types-stepper.mjs +4 -0
  490. package/fesm2022/primeng-types-stepper.mjs.map +1 -0
  491. package/fesm2022/primeng-types-table.mjs +4 -0
  492. package/fesm2022/primeng-types-table.mjs.map +1 -0
  493. package/fesm2022/primeng-types-tabs.mjs +4 -0
  494. package/fesm2022/primeng-types-tabs.mjs.map +1 -0
  495. package/fesm2022/primeng-types-tag.mjs +4 -0
  496. package/fesm2022/primeng-types-tag.mjs.map +1 -0
  497. package/fesm2022/primeng-types-terminal.mjs +4 -0
  498. package/fesm2022/primeng-types-terminal.mjs.map +1 -0
  499. package/fesm2022/primeng-types-textarea.mjs +4 -0
  500. package/fesm2022/primeng-types-textarea.mjs.map +1 -0
  501. package/fesm2022/primeng-types-tieredmenu.mjs +4 -0
  502. package/fesm2022/primeng-types-tieredmenu.mjs.map +1 -0
  503. package/fesm2022/primeng-types-timeline.mjs +4 -0
  504. package/fesm2022/primeng-types-timeline.mjs.map +1 -0
  505. package/fesm2022/primeng-types-toast.mjs +4 -0
  506. package/fesm2022/primeng-types-toast.mjs.map +1 -0
  507. package/fesm2022/primeng-types-togglebutton.mjs +4 -0
  508. package/fesm2022/primeng-types-togglebutton.mjs.map +1 -0
  509. package/fesm2022/primeng-types-toggleswitch.mjs +4 -0
  510. package/fesm2022/primeng-types-toggleswitch.mjs.map +1 -0
  511. package/fesm2022/primeng-types-toolbar.mjs +4 -0
  512. package/fesm2022/primeng-types-toolbar.mjs.map +1 -0
  513. package/fesm2022/primeng-types-tooltip.mjs +4 -0
  514. package/fesm2022/primeng-types-tooltip.mjs.map +1 -0
  515. package/fesm2022/primeng-types-tree.mjs +4 -0
  516. package/fesm2022/primeng-types-tree.mjs.map +1 -0
  517. package/fesm2022/primeng-types-treeselect.mjs +4 -0
  518. package/fesm2022/primeng-types-treeselect.mjs.map +1 -0
  519. package/fesm2022/primeng-types-treetable.mjs +4 -0
  520. package/fesm2022/primeng-types-treetable.mjs.map +1 -0
  521. package/fesm2022/primeng-usestyle.mjs +3 -3
  522. package/fieldset/index.d.ts +16 -55
  523. package/fileupload/index.d.ts +18 -246
  524. package/floatlabel/index.d.ts +13 -6
  525. package/fluid/index.d.ts +9 -2
  526. package/focustrap/index.d.ts +2 -2
  527. package/galleria/index.d.ts +50 -132
  528. package/iconfield/index.d.ts +13 -5
  529. package/icons/arrowdown/index.d.ts +3 -4
  530. package/icons/arrowleft/index.d.ts +1 -1
  531. package/icons/arrowup/index.d.ts +1 -1
  532. package/icons/ban/index.d.ts +1 -1
  533. package/icons/exclamationtriangle/index.d.ts +3 -4
  534. package/icons/eyeslash/index.d.ts +1 -1
  535. package/icons/filter/index.d.ts +1 -1
  536. package/icons/filterslash/index.d.ts +1 -1
  537. package/icons/home/index.d.ts +1 -1
  538. package/icons/infocircle/index.d.ts +1 -1
  539. package/icons/pencil/index.d.ts +1 -1
  540. package/icons/plus/index.d.ts +1 -1
  541. package/icons/refresh/index.d.ts +1 -1
  542. package/icons/search/index.d.ts +1 -1
  543. package/icons/searchminus/index.d.ts +1 -1
  544. package/icons/searchplus/index.d.ts +1 -1
  545. package/icons/sortalt/index.d.ts +1 -1
  546. package/icons/sortamountdown/index.d.ts +1 -1
  547. package/icons/sortamountupalt/index.d.ts +1 -1
  548. package/icons/spinner/index.d.ts +1 -1
  549. package/icons/star/index.d.ts +1 -1
  550. package/icons/starfill/index.d.ts +1 -1
  551. package/icons/thlarge/index.d.ts +1 -1
  552. package/icons/timescircle/index.d.ts +1 -1
  553. package/icons/trash/index.d.ts +1 -1
  554. package/icons/undo/index.d.ts +1 -1
  555. package/icons/upload/index.d.ts +1 -1
  556. package/icons/windowmaximize/index.d.ts +1 -1
  557. package/icons/windowminimize/index.d.ts +1 -1
  558. package/iftalabel/index.d.ts +15 -8
  559. package/image/index.d.ts +14 -71
  560. package/imagecompare/index.d.ts +15 -9
  561. package/inplace/index.d.ts +16 -29
  562. package/inputgroup/index.d.ts +12 -6
  563. package/inputgroupaddon/index.d.ts +11 -5
  564. package/inputicon/index.d.ts +11 -4
  565. package/inputmask/index.d.ts +21 -29
  566. package/inputnumber/index.d.ts +17 -49
  567. package/inputotp/index.d.ts +14 -8
  568. package/inputtext/index.d.ts +14 -6
  569. package/keyfilter/index.d.ts +0 -5
  570. package/knob/index.d.ts +11 -5
  571. package/listbox/index.d.ts +19 -177
  572. package/megamenu/index.d.ts +23 -44
  573. package/menu/index.d.ts +22 -10
  574. package/menubar/index.d.ts +22 -52
  575. package/message/index.d.ts +15 -9
  576. package/metergroup/index.d.ts +17 -132
  577. package/multiselect/index.d.ts +23 -259
  578. package/orderlist/index.d.ts +16 -120
  579. package/organizationchart/index.d.ts +18 -68
  580. package/overlay/index.d.ts +36 -8
  581. package/overlaybadge/index.d.ts +11 -5
  582. package/package.json +582 -214
  583. package/paginator/index.d.ts +16 -47
  584. package/panel/index.d.ts +32 -55
  585. package/panelmenu/index.d.ts +24 -35
  586. package/passthrough/index.d.ts +14 -0
  587. package/password/index.d.ts +22 -12
  588. package/picklist/index.d.ts +17 -252
  589. package/popover/index.d.ts +15 -8
  590. package/progressbar/index.d.ts +14 -7
  591. package/progressspinner/index.d.ts +11 -5
  592. package/radiobutton/index.d.ts +15 -25
  593. package/rating/index.d.ts +15 -43
  594. package/ripple/index.d.ts +5 -5
  595. package/scroller/index.d.ts +20 -190
  596. package/scrollpanel/index.d.ts +17 -22
  597. package/scrolltop/index.d.ts +16 -28
  598. package/select/index.d.ts +24 -166
  599. package/selectbutton/index.d.ts +14 -53
  600. package/skeleton/index.d.ts +11 -5
  601. package/slider/index.d.ts +14 -47
  602. package/speeddial/index.d.ts +19 -54
  603. package/splitbutton/index.d.ts +15 -39
  604. package/splitter/index.d.ts +15 -44
  605. package/stepper/index.d.ts +50 -22
  606. package/steps/index.d.ts +5 -5
  607. package/table/index.d.ts +167 -829
  608. package/tabs/index.d.ts +37 -19
  609. package/tag/index.d.ts +13 -18
  610. package/terminal/index.d.ts +14 -8
  611. package/textarea/index.d.ts +13 -8
  612. package/tieredmenu/index.d.ts +25 -41
  613. package/timeline/index.d.ts +14 -51
  614. package/toast/index.d.ts +20 -65
  615. package/togglebutton/index.d.ts +15 -60
  616. package/toggleswitch/index.d.ts +15 -24
  617. package/toolbar/index.d.ts +14 -27
  618. package/tooltip/index.d.ts +13 -8
  619. package/tree/index.d.ts +24 -213
  620. package/treeselect/index.d.ts +17 -118
  621. package/treetable/index.d.ts +96 -548
  622. package/types/accordion/index.d.ts +88 -0
  623. package/types/autocomplete/index.d.ts +299 -0
  624. package/types/avatar/index.d.ts +40 -0
  625. package/types/avatargroup/index.d.ts +28 -0
  626. package/types/badge/index.d.ts +26 -0
  627. package/types/blockui/index.d.ts +39 -0
  628. package/types/breadcrumb/index.d.ts +70 -0
  629. package/types/button/index.d.ts +105 -0
  630. package/types/card/index.d.ts +75 -0
  631. package/types/carousel/index.d.ts +140 -0
  632. package/types/cascadeselect/index.d.ts +198 -0
  633. package/types/chart/index.d.ts +32 -0
  634. package/types/checkbox/index.d.ts +62 -0
  635. package/types/chip/index.d.ts +71 -0
  636. package/types/colorpicker/index.d.ts +73 -0
  637. package/types/confirmdialog/index.d.ts +121 -0
  638. package/types/confirmpopup/index.d.ts +82 -0
  639. package/types/contextmenu/index.d.ts +89 -0
  640. package/types/dataview/index.d.ts +234 -0
  641. package/types/datepicker/index.d.ts +464 -0
  642. package/types/dialog/index.d.ts +98 -0
  643. package/types/divider/index.d.ts +28 -0
  644. package/types/dock/index.d.ts +67 -0
  645. package/types/drawer/index.d.ts +77 -0
  646. package/types/editor/index.d.ts +210 -0
  647. package/types/fieldset/index.d.ts +92 -0
  648. package/types/fileupload/index.d.ts +576 -0
  649. package/types/floatlabel/index.d.ts +26 -0
  650. package/types/fluid/index.d.ts +28 -0
  651. package/types/galleria/index.d.ts +233 -0
  652. package/types/iconfield/index.d.ts +26 -0
  653. package/types/iftalabel/index.d.ts +26 -0
  654. package/types/image/index.d.ts +193 -0
  655. package/types/imagecompare/index.d.ts +28 -0
  656. package/types/inplace/index.d.ts +61 -0
  657. package/types/inputgroup/index.d.ts +28 -0
  658. package/types/inputgroupaddon/index.d.ts +28 -0
  659. package/types/inputicon/index.d.ts +26 -0
  660. package/types/inputmask/index.d.ts +56 -0
  661. package/types/inputnumber/index.d.ts +95 -0
  662. package/types/inputotp/index.d.ts +31 -0
  663. package/types/inputtext/index.d.ts +24 -0
  664. package/types/knob/index.d.ts +40 -0
  665. package/types/listbox/index.d.ts +280 -0
  666. package/types/megamenu/index.d.ts +122 -0
  667. package/types/menu/index.d.ts +101 -0
  668. package/types/menubar/index.d.ts +121 -0
  669. package/types/message/index.d.ts +48 -0
  670. package/types/metergroup/index.d.ts +178 -0
  671. package/types/multiselect/index.d.ts +362 -0
  672. package/types/orderlist/index.d.ts +164 -0
  673. package/types/organizationchart/index.d.ts +138 -0
  674. package/types/overlay/index.d.ts +28 -0
  675. package/types/overlaybadge/index.d.ts +34 -0
  676. package/types/paginator/index.d.ts +131 -0
  677. package/types/panel/index.d.ts +92 -0
  678. package/types/panelmenu/index.d.ts +114 -0
  679. package/types/password/index.d.ts +97 -0
  680. package/types/picklist/index.d.ts +353 -0
  681. package/types/popover/index.d.ts +52 -0
  682. package/types/progressbar/index.d.ts +54 -0
  683. package/types/progressspinner/index.d.ts +36 -0
  684. package/types/radiobutton/index.d.ts +51 -0
  685. package/types/rating/index.d.ts +82 -0
  686. package/types/scroller/index.d.ts +221 -0
  687. package/types/scrollpanel/index.d.ts +51 -0
  688. package/types/scrolltop/index.d.ts +52 -0
  689. package/types/select/index.d.ts +288 -0
  690. package/types/selectbutton/index.d.ts +77 -0
  691. package/types/skeleton/index.d.ts +28 -0
  692. package/types/slider/index.d.ts +78 -0
  693. package/types/speeddial/index.d.ts +82 -0
  694. package/types/splitbutton/index.d.ts +70 -0
  695. package/types/splitter/index.d.ts +70 -0
  696. package/types/stepper/index.d.ts +153 -0
  697. package/types/table/index.d.ts +884 -0
  698. package/types/tabs/index.d.ts +119 -0
  699. package/types/tag/index.d.ts +47 -0
  700. package/types/terminal/index.d.ts +60 -0
  701. package/types/textarea/index.d.ts +28 -0
  702. package/types/tieredmenu/index.d.ts +87 -0
  703. package/types/timeline/index.d.ts +95 -0
  704. package/types/toast/index.d.ts +114 -0
  705. package/types/togglebutton/index.d.ts +85 -0
  706. package/types/toggleswitch/index.d.ts +51 -0
  707. package/types/toolbar/index.d.ts +55 -0
  708. package/types/tooltip/index.d.ts +32 -0
  709. package/types/tree/index.d.ts +308 -0
  710. package/types/treeselect/index.d.ts +224 -0
  711. package/types/treetable/index.d.ts +640 -0
@@ -1,16 +1,19 @@
1
- import * as i1 from '@angular/common';
1
+ export * from 'primeng/types/speeddial';
2
+ import * as i2 from '@angular/common';
2
3
  import { isPlatformBrowser, CommonModule } from '@angular/common';
3
4
  import * as i0 from '@angular/core';
4
- import { Injectable, EventEmitter, signal, inject, booleanAttribute, numberAttribute, ContentChildren, ContentChild, ViewChild, Output, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
5
+ import { Injectable, InjectionToken, inject, EventEmitter, signal, booleanAttribute, numberAttribute, ContentChildren, ContentChild, ViewChild, Output, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
5
6
  import { RouterModule } from '@angular/router';
6
7
  import { uuid, findSingle, find, focus, hasClass } from '@primeuix/utils';
7
8
  import { SharedModule, PrimeTemplate } from 'primeng/api';
8
- import { BaseComponent } from 'primeng/basecomponent';
9
- import * as i2 from 'primeng/button';
9
+ import { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';
10
+ import * as i1 from 'primeng/bind';
11
+ import { Bind } from 'primeng/bind';
12
+ import * as i3 from 'primeng/button';
10
13
  import { ButtonModule } from 'primeng/button';
11
14
  import { PlusIcon } from 'primeng/icons';
12
15
  import { Ripple } from 'primeng/ripple';
13
- import * as i3 from 'primeng/tooltip';
16
+ import * as i4 from 'primeng/tooltip';
14
17
  import { TooltipModule } from 'primeng/tooltip';
15
18
  import { asapScheduler } from 'rxjs';
16
19
  import { style } from '@primeuix/styles/speeddial';
@@ -55,13 +58,13 @@ const classes = {
55
58
  };
56
59
  class SpeedDialStyle extends BaseStyle {
57
60
  name = 'speeddial';
58
- theme = style;
61
+ style = style;
59
62
  classes = classes;
60
63
  inlineStyles = inlineStyles;
61
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: SpeedDialStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
62
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: SpeedDialStyle });
64
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: SpeedDialStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
65
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: SpeedDialStyle });
63
66
  }
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: SpeedDialStyle, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: SpeedDialStyle, decorators: [{
65
68
  type: Injectable
66
69
  }] });
67
70
  /**
@@ -105,11 +108,17 @@ var SpeedDialClasses;
105
108
  SpeedDialClasses["mask"] = "p-speeddial-mask";
106
109
  })(SpeedDialClasses || (SpeedDialClasses = {}));
107
110
 
111
+ const SPEED_DIAL_INSTANCE = new InjectionToken('SPEED_DIAL_INSTANCE');
108
112
  /**
109
113
  * When pressed, a floating action button can display multiple primary actions that can be performed on a page.
110
114
  * @group Components
111
115
  */
112
116
  class SpeedDial extends BaseComponent {
117
+ $pcSpeedDial = inject(SPEED_DIAL_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
118
+ bindDirectiveInstance = inject(Bind, { self: true });
119
+ onAfterViewChecked() {
120
+ this.bindDirectiveInstance.setAttrs(this.ptm('host'));
121
+ }
113
122
  /**
114
123
  * List of items id.
115
124
  * @group Props
@@ -300,12 +309,21 @@ class SpeedDial extends BaseComponent {
300
309
  getTooltipOptions(item) {
301
310
  return { ...this.tooltipOptions, tooltipLabel: item.label, disabled: !this.tooltipOptions };
302
311
  }
303
- ngOnInit() {
304
- super.ngOnInit();
312
+ getPTOptions(id, key) {
313
+ return this.ptm(key, {
314
+ context: {
315
+ active: this.isItemActive(id),
316
+ hidden: !this.visible
317
+ }
318
+ });
319
+ }
320
+ isItemActive(id) {
321
+ return id === this.focusedOptionId;
322
+ }
323
+ onInit() {
305
324
  this.id = this.id || uuid('pn_id_');
306
325
  }
307
- ngAfterViewInit() {
308
- super.ngAfterViewInit();
326
+ onAfterViewInit() {
309
327
  if (isPlatformBrowser(this.platformId)) {
310
328
  if (this.type !== 'linear') {
311
329
  const button = findSingle(this.container?.nativeElement, '.p-speeddial-button');
@@ -319,7 +337,7 @@ class SpeedDial extends BaseComponent {
319
337
  }
320
338
  }
321
339
  }
322
- ngAfterContentInit() {
340
+ onAfterContentInit() {
323
341
  this.templates?.forEach((item) => {
324
342
  switch (item.getType()) {
325
343
  case 'button':
@@ -459,7 +477,7 @@ class SpeedDial extends BaseComponent {
459
477
  this.navigateNextItem(event);
460
478
  }
461
479
  onEnterKey(event) {
462
- const items = find(this.container?.nativeElement, '[data-pc-section="menuitem"]');
480
+ const items = find(this.container?.nativeElement, '[data-pc-section="item"]');
463
481
  const itemIndex = [...items].findIndex((item) => item.id === this.focusedOptionIndex());
464
482
  if (itemIndex !== -1 && this.model && this.model[itemIndex]) {
465
483
  this.onItemClick(event, this.model[itemIndex]);
@@ -515,7 +533,7 @@ class SpeedDial extends BaseComponent {
515
533
  event.preventDefault();
516
534
  }
517
535
  findPrevOptionIndex(index) {
518
- const items = find(this.container?.nativeElement, '[data-pc-section="menuitem"]');
536
+ const items = find(this.container?.nativeElement, '[data-pc-section="item"]');
519
537
  const filteredItems = [...items].filter((item) => !hasClass(findSingle(item, 'a'), 'p-disabled'));
520
538
  const newIndex = index === -1 ? filteredItems[filteredItems.length - 1].id : index;
521
539
  let matchedOptionIndex = filteredItems.findIndex((link) => link.getAttribute('id') === newIndex);
@@ -523,7 +541,7 @@ class SpeedDial extends BaseComponent {
523
541
  return matchedOptionIndex;
524
542
  }
525
543
  findNextOptionIndex(index) {
526
- const items = find(this.container?.nativeElement, '[data-pc-section="menuitem"]');
544
+ const items = find(this.container?.nativeElement, '[data-pc-section="item"]');
527
545
  const filteredItems = [...items].filter((item) => !hasClass(findSingle(item, 'a'), 'p-disabled'));
528
546
  const newIndex = index === -1 ? filteredItems[0].id : index;
529
547
  let matchedOptionIndex = filteredItems.findIndex((link) => link.getAttribute('id') === newIndex);
@@ -531,7 +549,7 @@ class SpeedDial extends BaseComponent {
531
549
  return matchedOptionIndex;
532
550
  }
533
551
  changeFocusedOptionIndex(index) {
534
- const items = find(this.container?.nativeElement, '[data-pc-section="menuitem"]');
552
+ const items = find(this.container?.nativeElement, '[data-pc-section="item"]');
535
553
  const filteredItems = [...items].filter((item) => !hasClass(findSingle(item, 'a'), 'p-disabled'));
536
554
  if (filteredItems[index]) {
537
555
  this.focusedOptionIndex.set(filteredItems[index].getAttribute('id'));
@@ -633,13 +651,12 @@ class SpeedDial extends BaseComponent {
633
651
  this.documentClickListener = null;
634
652
  }
635
653
  }
636
- ngOnDestroy() {
654
+ onDestroy() {
637
655
  this.unbindDocumentClickListener();
638
- super.ngOnDestroy();
639
656
  }
640
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: SpeedDial, deps: null, target: i0.ɵɵFactoryTarget.Component });
641
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.3.2", type: SpeedDial, isStandalone: true, selector: "p-speeddial, p-speedDial, p-speed-dial", inputs: { id: "id", model: "model", visible: "visible", style: "style", className: "className", direction: "direction", transitionDelay: ["transitionDelay", "transitionDelay", numberAttribute], type: "type", radius: ["radius", "radius", numberAttribute], mask: ["mask", "mask", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], hideOnClickOutside: ["hideOnClickOutside", "hideOnClickOutside", booleanAttribute], buttonStyle: "buttonStyle", buttonClassName: "buttonClassName", maskStyle: "maskStyle", maskClassName: "maskClassName", showIcon: "showIcon", hideIcon: "hideIcon", rotateAnimation: ["rotateAnimation", "rotateAnimation", booleanAttribute], ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", tooltipOptions: "tooltipOptions", buttonProps: "buttonProps" }, outputs: { onVisibleChange: "onVisibleChange", visibleChange: "visibleChange", onClick: "onClick", onShow: "onShow", onHide: "onHide" }, providers: [SpeedDialStyle], queries: [{ propertyName: "buttonTemplate", first: true, predicate: ["button"] }, { propertyName: "itemTemplate", first: true, predicate: ["item"] }, { propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
642
- <div #container [class]="cn(cx('root'), className)" [style]="style" [ngStyle]="sx('root')" [attr.data-pc-name]="'speeddial'" [attr.data-pc-section]="'root'">
657
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: SpeedDial, deps: null, target: i0.ɵɵFactoryTarget.Component });
658
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.3.4", type: SpeedDial, isStandalone: true, selector: "p-speeddial, p-speedDial, p-speed-dial", inputs: { id: "id", model: "model", visible: "visible", style: "style", className: "className", direction: "direction", transitionDelay: ["transitionDelay", "transitionDelay", numberAttribute], type: "type", radius: ["radius", "radius", numberAttribute], mask: ["mask", "mask", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], hideOnClickOutside: ["hideOnClickOutside", "hideOnClickOutside", booleanAttribute], buttonStyle: "buttonStyle", buttonClassName: "buttonClassName", maskStyle: "maskStyle", maskClassName: "maskClassName", showIcon: "showIcon", hideIcon: "hideIcon", rotateAnimation: ["rotateAnimation", "rotateAnimation", booleanAttribute], ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", tooltipOptions: "tooltipOptions", buttonProps: "buttonProps" }, outputs: { onVisibleChange: "onVisibleChange", visibleChange: "visibleChange", onClick: "onClick", onShow: "onShow", onHide: "onHide" }, providers: [SpeedDialStyle, { provide: SPEED_DIAL_INSTANCE, useExisting: SpeedDial }, { provide: PARENT_INSTANCE, useExisting: SpeedDial }], queries: [{ propertyName: "buttonTemplate", first: true, predicate: ["button"] }, { propertyName: "itemTemplate", first: true, predicate: ["item"] }, { propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
659
+ <div #container [pBind]="ptm('root')" [class]="cn(cx('root'), className)" [style]="style" [ngStyle]="sx('root')">
643
660
  <ng-container *ngIf="!buttonTemplate && !_buttonTemplate">
644
661
  <button
645
662
  type="button"
@@ -656,10 +673,10 @@ class SpeedDial extends BaseComponent {
656
673
  [attr.aria-labelledby]="ariaLabelledBy"
657
674
  (click)="onButtonClick($event)"
658
675
  (keydown)="onTogglerKeydown($event)"
659
- [attr.data-pc-name]="'button'"
660
676
  [buttonProps]="buttonProps"
677
+ [pt]="ptm('pcButton')"
661
678
  >
662
- <svg data-p-icon="plus" pButtonIcon *ngIf="!buttonIconClass && !iconTemplate && !_iconTemplate" />
679
+ <svg data-p-icon="plus" pButtonIcon [pt]="ptm('pcButton')['icon']" *ngIf="!buttonIconClass && !iconTemplate && !_iconTemplate" />
663
680
  <ng-container *ngTemplateOutlet="iconTemplate || _iconTemplate"></ng-container>
664
681
  </button>
665
682
  </ng-container>
@@ -668,6 +685,7 @@ class SpeedDial extends BaseComponent {
668
685
  </ng-container>
669
686
  <ul
670
687
  #list
688
+ [pBind]="ptm('list')"
671
689
  [class]="cx('list')"
672
690
  role="menu"
673
691
  [id]="id + '_list'"
@@ -676,11 +694,11 @@ class SpeedDial extends BaseComponent {
676
694
  (keydown)="onKeyDown($event)"
677
695
  [attr.aria-activedescendant]="focused ? focusedOptionId : undefined"
678
696
  [tabindex]="-1"
679
- [attr.data-pc-section]="'menu'"
680
697
  [ngStyle]="sx('list')"
681
698
  >
682
699
  <li
683
700
  *ngFor="let item of model; let i = index"
701
+ [pBind]="getPTOptions(id + '_' + i, 'item')"
684
702
  [ngStyle]="getItemStyle(i)"
685
703
  [class]="cx('item', { item, i })"
686
704
  pTooltip
@@ -688,7 +706,7 @@ class SpeedDial extends BaseComponent {
688
706
  [id]="id + '_' + i"
689
707
  [attr.aria-controls]="id + '_item'"
690
708
  role="menuitem"
691
- [attr.data-pc-section]="'menuitem'"
709
+ [attr.data-p-active]="isItemActive(id + '_' + i)"
692
710
  >
693
711
  <ng-container *ngIf="itemTemplate || _itemTemplate">
694
712
  <ng-container *ngTemplateOutlet="itemTemplate || _itemTemplate; context: { $implicit: item, index: i, toggleCallback: onItemClick.bind(this) }"></ng-container>
@@ -707,25 +725,27 @@ class SpeedDial extends BaseComponent {
707
725
  (click)="onItemClick($event, item)"
708
726
  [disabled]="item?.disabled"
709
727
  (keydown.enter)="onItemClick($event, item)"
710
- [attr.data-pc-section]="'action'"
711
728
  [attr.aria-label]="item.label"
712
729
  [attr.tabindex]="item.disabled || !visible ? null : item.tabindex ? item.tabindex : '0'"
713
- ></button>
730
+ [pt]="getPTOptions(id + '_' + i, 'pcAction')"
731
+ >
732
+ <span *ngIf="item.icon" pButtonIcon [pt]="getPTOptions(id + '_' + i, 'actionIcon')" [class]="item.icon"></span>
733
+ </button>
714
734
  </ng-container>
715
735
  </li>
716
736
  </ul>
717
737
  </div>
718
- <div *ngIf="mask && visible" [class]="cn(cx('mask'), maskClassName)" [ngStyle]="maskStyle"></div>
719
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain", "fluid", "label", "icon", "buttonProps"] }, { kind: "directive", type: i2.ButtonIcon, selector: "[pButtonIcon]" }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: RouterModule }, { kind: "component", type: PlusIcon, selector: "[data-p-icon=\"plus\"]" }, { kind: "ngmodule", type: SharedModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
738
+ <div *ngIf="mask && visible" [pBind]="ptm('mask')" [class]="cn(cx('mask'), maskClassName)" [ngStyle]="maskStyle"></div>
739
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["ptButtonDirective", "hostName", "text", "plain", "raised", "size", "outlined", "rounded", "iconPos", "loadingIcon", "fluid", "label", "icon", "loading", "buttonProps", "severity"] }, { kind: "directive", type: i3.ButtonIcon, selector: "[pButtonIcon]", inputs: ["ptButtonIcon"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "ngmodule", type: RouterModule }, { kind: "component", type: PlusIcon, selector: "[data-p-icon=\"plus\"]" }, { kind: "ngmodule", type: SharedModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
720
740
  }
721
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: SpeedDial, decorators: [{
741
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: SpeedDial, decorators: [{
722
742
  type: Component,
723
743
  args: [{
724
744
  selector: 'p-speeddial, p-speedDial, p-speed-dial',
725
745
  standalone: true,
726
- imports: [CommonModule, ButtonModule, Ripple, TooltipModule, RouterModule, PlusIcon, SharedModule],
746
+ imports: [CommonModule, ButtonModule, Ripple, TooltipModule, RouterModule, PlusIcon, SharedModule, Bind],
727
747
  template: `
728
- <div #container [class]="cn(cx('root'), className)" [style]="style" [ngStyle]="sx('root')" [attr.data-pc-name]="'speeddial'" [attr.data-pc-section]="'root'">
748
+ <div #container [pBind]="ptm('root')" [class]="cn(cx('root'), className)" [style]="style" [ngStyle]="sx('root')">
729
749
  <ng-container *ngIf="!buttonTemplate && !_buttonTemplate">
730
750
  <button
731
751
  type="button"
@@ -742,10 +762,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
742
762
  [attr.aria-labelledby]="ariaLabelledBy"
743
763
  (click)="onButtonClick($event)"
744
764
  (keydown)="onTogglerKeydown($event)"
745
- [attr.data-pc-name]="'button'"
746
765
  [buttonProps]="buttonProps"
766
+ [pt]="ptm('pcButton')"
747
767
  >
748
- <svg data-p-icon="plus" pButtonIcon *ngIf="!buttonIconClass && !iconTemplate && !_iconTemplate" />
768
+ <svg data-p-icon="plus" pButtonIcon [pt]="ptm('pcButton')['icon']" *ngIf="!buttonIconClass && !iconTemplate && !_iconTemplate" />
749
769
  <ng-container *ngTemplateOutlet="iconTemplate || _iconTemplate"></ng-container>
750
770
  </button>
751
771
  </ng-container>
@@ -754,6 +774,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
754
774
  </ng-container>
755
775
  <ul
756
776
  #list
777
+ [pBind]="ptm('list')"
757
778
  [class]="cx('list')"
758
779
  role="menu"
759
780
  [id]="id + '_list'"
@@ -762,11 +783,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
762
783
  (keydown)="onKeyDown($event)"
763
784
  [attr.aria-activedescendant]="focused ? focusedOptionId : undefined"
764
785
  [tabindex]="-1"
765
- [attr.data-pc-section]="'menu'"
766
786
  [ngStyle]="sx('list')"
767
787
  >
768
788
  <li
769
789
  *ngFor="let item of model; let i = index"
790
+ [pBind]="getPTOptions(id + '_' + i, 'item')"
770
791
  [ngStyle]="getItemStyle(i)"
771
792
  [class]="cx('item', { item, i })"
772
793
  pTooltip
@@ -774,7 +795,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
774
795
  [id]="id + '_' + i"
775
796
  [attr.aria-controls]="id + '_item'"
776
797
  role="menuitem"
777
- [attr.data-pc-section]="'menuitem'"
798
+ [attr.data-p-active]="isItemActive(id + '_' + i)"
778
799
  >
779
800
  <ng-container *ngIf="itemTemplate || _itemTemplate">
780
801
  <ng-container *ngTemplateOutlet="itemTemplate || _itemTemplate; context: { $implicit: item, index: i, toggleCallback: onItemClick.bind(this) }"></ng-container>
@@ -793,19 +814,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
793
814
  (click)="onItemClick($event, item)"
794
815
  [disabled]="item?.disabled"
795
816
  (keydown.enter)="onItemClick($event, item)"
796
- [attr.data-pc-section]="'action'"
797
817
  [attr.aria-label]="item.label"
798
818
  [attr.tabindex]="item.disabled || !visible ? null : item.tabindex ? item.tabindex : '0'"
799
- ></button>
819
+ [pt]="getPTOptions(id + '_' + i, 'pcAction')"
820
+ >
821
+ <span *ngIf="item.icon" pButtonIcon [pt]="getPTOptions(id + '_' + i, 'actionIcon')" [class]="item.icon"></span>
822
+ </button>
800
823
  </ng-container>
801
824
  </li>
802
825
  </ul>
803
826
  </div>
804
- <div *ngIf="mask && visible" [class]="cn(cx('mask'), maskClassName)" [ngStyle]="maskStyle"></div>
827
+ <div *ngIf="mask && visible" [pBind]="ptm('mask')" [class]="cn(cx('mask'), maskClassName)" [ngStyle]="maskStyle"></div>
805
828
  `,
806
829
  changeDetection: ChangeDetectionStrategy.OnPush,
807
830
  encapsulation: ViewEncapsulation.None,
808
- providers: [SpeedDialStyle]
831
+ providers: [SpeedDialStyle, { provide: SPEED_DIAL_INSTANCE, useExisting: SpeedDial }, { provide: PARENT_INSTANCE, useExisting: SpeedDial }],
832
+ hostDirectives: [Bind]
809
833
  }]
810
834
  }], propDecorators: { id: [{
811
835
  type: Input
@@ -889,11 +913,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
889
913
  args: [PrimeTemplate]
890
914
  }] } });
891
915
  class SpeedDialModule {
892
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: SpeedDialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
893
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.2", ngImport: i0, type: SpeedDialModule, imports: [SpeedDial, SharedModule], exports: [SpeedDial, SharedModule] });
894
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: SpeedDialModule, imports: [SpeedDial, SharedModule, SharedModule] });
916
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: SpeedDialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
917
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: SpeedDialModule, imports: [SpeedDial, SharedModule], exports: [SpeedDial, SharedModule] });
918
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: SpeedDialModule, imports: [SpeedDial, SharedModule, SharedModule] });
895
919
  }
896
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: SpeedDialModule, decorators: [{
920
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: SpeedDialModule, decorators: [{
897
921
  type: NgModule,
898
922
  args: [{
899
923
  imports: [SpeedDial, SharedModule],
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-speeddial.mjs","sources":["../../src/speeddial/style/speeddialstyle.ts","../../src/speeddial/speeddial.ts","../../src/speeddial/primeng-speeddial.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/speeddial';\nimport { BaseStyle } from 'primeng/base';\n\n/* Direction */\nconst inlineStyles = {\n root: ({ instance }) => ({\n alignItems: (instance.direction === 'up' || instance.direction === 'down') && 'center',\n justifyContent: (instance.direction === 'left' || instance.direction === 'right') && 'center',\n flexDirection: instance.direction === 'up' ? 'column-reverse' : instance.direction === 'down' ? 'column' : instance.direction === 'left' ? 'row-reverse' : instance.direction === 'right' ? 'row' : null\n }),\n list: ({ instance }) => ({\n flexDirection: instance.direction === 'up' ? 'column-reverse' : instance.direction === 'down' ? 'column' : instance.direction === 'left' ? 'row-reverse' : instance.direction === 'right' ? 'row' : null\n })\n};\n\nconst classes = {\n root: ({ instance }) => [\n `p-speeddial p-component p-speeddial-${instance.type}`,\n {\n [`p-speeddial-direction-${instance.direction}`]: instance.type !== 'circle',\n 'p-speeddial-open': instance.visible,\n 'p-disabled': instance.disabled\n }\n ],\n pcButton: ({ instance }) => [\n 'p-button-icon-only p-speeddial-button p-button-rounded',\n {\n 'p-speeddial-rotate': instance.rotateAnimation && !instance.hideIcon\n }\n ],\n list: 'p-speeddial-list',\n item: ({ instance, item, i }) => ['p-speeddial-item', { 'p-hidden': item.visible === false, 'p-focus': instance.focusedOptionId == instance.id + '_' + i }],\n action: 'p-speeddial-action',\n actionIcon: 'p-speeddial-action-icon',\n mask: ({ instance }) => [\n 'p-speeddial-mask',\n {\n 'p-speeddial-mask-visible': instance.visible\n }\n ]\n};\n\n@Injectable()\nexport class SpeedDialStyle extends BaseStyle {\n name = 'speeddial';\n\n theme = style;\n\n classes = classes;\n\n inlineStyles = inlineStyles;\n}\n\n/**\n *\n * When pressed, a floating action button can display multiple primary actions that can be performed on a page.\n *\n * [Live Demo](https://www.primeng.org/speeddial/)\n *\n * @module speeddialstyle\n *\n */\nexport enum SpeedDialClasses {\n /**\n * Class name of the root element\n */\n root = 'p-speeddial',\n /**\n * Class name of the button element\n */\n pcButton = 'p-speeddial-button',\n /**\n * Class name of the list element\n */\n list = 'p-speeddial-list',\n /**\n * Class name of the item element\n */\n item = 'p-speeddial-item',\n /**\n * Class name of the action element\n */\n action = 'p-speeddial-action',\n /**\n * Class name of the action icon element\n */\n actionIcon = 'p-speeddial-action-icon',\n /**\n * Class name of the mask element\n */\n mask = 'p-speeddial-mask'\n}\n\nexport interface SpeedDialStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n NgModule,\n numberAttribute,\n OnDestroy,\n Output,\n QueryList,\n signal,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { find, findSingle, focus, hasClass, uuid } from '@primeuix/utils';\nimport { MenuItem, PrimeTemplate, SharedModule, TooltipOptions } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { ButtonModule, ButtonProps } from 'primeng/button';\nimport { PlusIcon } from 'primeng/icons';\nimport { Ripple } from 'primeng/ripple';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { asapScheduler } from 'rxjs';\nimport { SpeedDialStyle } from './style/speeddialstyle';\n\n/**\n * When pressed, a floating action button can display multiple primary actions that can be performed on a page.\n * @group Components\n */\n@Component({\n selector: 'p-speeddial, p-speedDial, p-speed-dial',\n standalone: true,\n imports: [CommonModule, ButtonModule, Ripple, TooltipModule, RouterModule, PlusIcon, SharedModule],\n template: `\n <div #container [class]=\"cn(cx('root'), className)\" [style]=\"style\" [ngStyle]=\"sx('root')\" [attr.data-pc-name]=\"'speeddial'\" [attr.data-pc-section]=\"'root'\">\n <ng-container *ngIf=\"!buttonTemplate && !_buttonTemplate\">\n <button\n type=\"button\"\n pButton\n pRipple\n [style]=\"buttonStyle\"\n [icon]=\"buttonIconClass\"\n [class]=\"cn(cx('pcButton'), buttonClassName)\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"visible\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-controls]=\"id + '_list'\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n (click)=\"onButtonClick($event)\"\n (keydown)=\"onTogglerKeydown($event)\"\n [attr.data-pc-name]=\"'button'\"\n [buttonProps]=\"buttonProps\"\n >\n <svg data-p-icon=\"plus\" pButtonIcon *ngIf=\"!buttonIconClass && !iconTemplate && !_iconTemplate\" />\n <ng-container *ngTemplateOutlet=\"iconTemplate || _iconTemplate\"></ng-container>\n </button>\n </ng-container>\n <ng-container *ngIf=\"buttonTemplate || _buttonTemplate\">\n <ng-container *ngTemplateOutlet=\"buttonTemplate || _buttonTemplate; context: { toggleCallback: onButtonClick.bind(this) }\"></ng-container>\n </ng-container>\n <ul\n #list\n [class]=\"cx('list')\"\n role=\"menu\"\n [id]=\"id + '_list'\"\n (focus)=\"onFocus($event)\"\n (focusout)=\"onBlur($event)\"\n (keydown)=\"onKeyDown($event)\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n [tabindex]=\"-1\"\n [attr.data-pc-section]=\"'menu'\"\n [ngStyle]=\"sx('list')\"\n >\n <li\n *ngFor=\"let item of model; let i = index\"\n [ngStyle]=\"getItemStyle(i)\"\n [class]=\"cx('item', { item, i })\"\n pTooltip\n [tooltipOptions]=\"item.tooltipOptions || getTooltipOptions(item)\"\n [id]=\"id + '_' + i\"\n [attr.aria-controls]=\"id + '_item'\"\n role=\"menuitem\"\n [attr.data-pc-section]=\"'menuitem'\"\n >\n <ng-container *ngIf=\"itemTemplate || _itemTemplate\">\n <ng-container *ngTemplateOutlet=\"itemTemplate || _itemTemplate; context: { $implicit: item, index: i, toggleCallback: onItemClick.bind(this) }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!itemTemplate && !_itemTemplate\">\n <button\n type=\"button\"\n pButton\n pRipple\n [class]=\"cx('pcAction')\"\n severity=\"secondary\"\n [rounded]=\"true\"\n size=\"small\"\n role=\"menuitem\"\n [icon]=\"item.icon\"\n (click)=\"onItemClick($event, item)\"\n [disabled]=\"item?.disabled\"\n (keydown.enter)=\"onItemClick($event, item)\"\n [attr.data-pc-section]=\"'action'\"\n [attr.aria-label]=\"item.label\"\n [attr.tabindex]=\"item.disabled || !visible ? null : item.tabindex ? item.tabindex : '0'\"\n ></button>\n </ng-container>\n </li>\n </ul>\n </div>\n <div *ngIf=\"mask && visible\" [class]=\"cn(cx('mask'), maskClassName)\" [ngStyle]=\"maskStyle\"></div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [SpeedDialStyle]\n})\nexport class SpeedDial extends BaseComponent implements AfterViewInit, AfterContentInit, OnDestroy {\n /**\n * List of items id.\n * @group Props\n */\n @Input() id: string | undefined;\n /**\n * MenuModel instance to define the action items.\n * @group Props\n */\n @Input() model: MenuItem[] | null = null;\n /**\n * Specifies the visibility of the overlay.\n * @defaultValue false\n * @group Props\n */\n @Input() get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n this._visible = value;\n\n if (this._visible) {\n this.bindDocumentClickListener();\n } else {\n this.unbindDocumentClickListener();\n }\n }\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the element.\n * @group Props\n */\n @Input() className: string | undefined;\n /**\n * Specifies the opening direction of actions.\n * @gruop Props\n */\n @Input() direction: 'up' | 'down' | 'left' | 'right' | 'up-left' | 'up-right' | 'down-left' | 'down-right' | undefined = 'up';\n /**\n * Transition delay step for each action item.\n * @group Props\n */\n @Input({ transform: numberAttribute }) transitionDelay: number = 30;\n /**\n * Specifies the opening type of actions.\n * @group Props\n */\n @Input() type: 'linear' | 'circle' | 'semi-circle' | 'quarter-circle' | undefined = 'linear';\n /**\n * Radius for *circle types.\n * @group Props\n */\n @Input({ transform: numberAttribute }) radius: number = 0;\n /**\n * Whether to show a mask element behind the speeddial.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) mask: boolean = false;\n /**\n * Whether the component is disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean = false;\n /**\n * Whether the actions close when clicked outside.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) hideOnClickOutside: boolean = true;\n /**\n * Inline style of the button element.\n * @group Props\n */\n @Input() buttonStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the button element.\n * @group Props\n */\n @Input() buttonClassName: string | undefined;\n /**\n * Inline style of the mask element.\n * @group Props\n */\n @Input() maskStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the mask element.\n * @group Props\n */\n @Input() maskClassName: string | undefined;\n /**\n * Show icon of the button element.\n * @group Props\n */\n @Input() showIcon: string | undefined;\n /**\n * Hide icon of the button element.\n * @group Props\n */\n @Input() hideIcon: string | undefined;\n /**\n * Defined to rotate showIcon when hideIcon is not present.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) rotateAnimation: boolean = true;\n /**\n * Defines a string value that labels an interactive element.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Identifier of the underlying input element.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Whether to display the tooltip on items. The modifiers of Tooltip can be used like an object in it. Valid keys are 'event' and 'position'.\n * @group Props\n */\n @Input() tooltipOptions: TooltipOptions;\n /**\n * Used to pass all properties of the ButtonProps to the Button component.\n * @group Props\n */\n @Input() buttonProps: ButtonProps;\n /**\n * Fired when the visibility of element changed.\n * @param {boolean} boolean - Visibility value.\n * @group Emits\n */\n @Output() onVisibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n /**\n * Fired when the visibility of element changed.\n * @param {boolean} boolean - Visibility value.\n * @group Emits\n */\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n /**\n * Fired when the button element clicked.\n * @param {MouseEvent} event - Mouse event.\n * @group Emits\n */\n @Output() onClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\n /**\n * Fired when the actions are visible.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onShow: EventEmitter<Event> = new EventEmitter<Event>();\n /**\n * Fired when the actions are hidden.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onHide: EventEmitter<Event> = new EventEmitter<Event>();\n\n @ViewChild('container') container: ElementRef | undefined;\n\n @ViewChild('list') list: ElementRef | undefined;\n /**\n * Template of the button.\n * @group Templates\n */\n @ContentChild('button', { descendants: false }) buttonTemplate: TemplateRef<any> | undefined;\n /**\n * Template of the item.\n * @group Templates\n */\n @ContentChild('item', { descendants: false }) itemTemplate: TemplateRef<any> | undefined;\n\n /**\n * Template of the item.\n * @group Templates\n */\n @ContentChild('icon', { descendants: false }) iconTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n _buttonTemplate: TemplateRef<any> | undefined;\n\n _itemTemplate: TemplateRef<any> | undefined;\n\n _iconTemplate: TemplateRef<any> | undefined;\n\n isItemClicked: boolean = false;\n\n _visible: boolean = false;\n\n documentClickListener: any;\n\n focusedOptionIndex = signal<any>(null);\n\n focused: boolean = false;\n\n _componentStyle = inject(SpeedDialStyle);\n\n get focusedOptionId() {\n return this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : null;\n }\n\n getTooltipOptions(item: MenuItem) {\n return { ...this.tooltipOptions, tooltipLabel: item.label, disabled: !this.tooltipOptions };\n }\n\n ngOnInit() {\n super.ngOnInit();\n this.id = this.id || uuid('pn_id_');\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (isPlatformBrowser(this.platformId)) {\n if (this.type !== 'linear') {\n const button = <any>findSingle(this.container?.nativeElement, '.p-speeddial-button');\n const firstItem = <any>findSingle(this.list?.nativeElement, '.p-speeddial-item');\n\n if (button && firstItem) {\n const wDiff = Math.abs(button.offsetWidth - firstItem.offsetWidth);\n const hDiff = Math.abs(button.offsetHeight - firstItem.offsetHeight);\n this.list?.nativeElement.style.setProperty('--item-diff-x', `${wDiff / 2}px`);\n this.list?.nativeElement.style.setProperty('--item-diff-y', `${hDiff / 2}px`);\n }\n }\n }\n }\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'button':\n this._buttonTemplate = item.template;\n break;\n case 'item':\n this._itemTemplate = item.template;\n break;\n case 'icon':\n this._iconTemplate = item.template;\n break;\n }\n });\n }\n\n show() {\n this.onVisibleChange.emit(true);\n this.visibleChange.emit(true);\n this._visible = true;\n this.onShow.emit();\n this.bindDocumentClickListener();\n this.cd.markForCheck();\n }\n\n hide() {\n this.onVisibleChange.emit(false);\n this.visibleChange.emit(false);\n this._visible = false;\n this.onHide.emit();\n this.unbindDocumentClickListener();\n this.cd.markForCheck();\n }\n\n onButtonClick(event: MouseEvent) {\n this.visible ? this.hide() : this.show();\n this.onClick.emit(event);\n this.isItemClicked = true;\n }\n\n onItemClick(e: Event, item: MenuItem) {\n if (item.command) {\n item.command({ originalEvent: e, item });\n }\n\n this.hide();\n\n this.isItemClicked = true;\n }\n\n onKeyDown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowDown':\n this.onArrowDown(event);\n break;\n\n case 'ArrowUp':\n this.onArrowUp(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeft(event);\n break;\n\n case 'ArrowRight':\n this.onArrowRight(event);\n break;\n\n case 'Enter':\n case 'Space':\n this.onEnterKey(event);\n break;\n\n case 'Escape':\n this.onEscapeKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n default:\n break;\n }\n }\n\n onFocus(event) {\n this.focused = true;\n }\n\n onBlur(event) {\n this.focused = false;\n asapScheduler.schedule(() => this.focusedOptionIndex.set(-1));\n }\n\n onArrowUp(event) {\n if (this.direction === 'up') {\n this.navigateNextItem(event);\n } else if (this.direction === 'down') {\n this.navigatePrevItem(event);\n } else {\n this.navigateNextItem(event);\n }\n }\n\n onArrowDown(event) {\n if (this.direction === 'up') {\n this.navigatePrevItem(event);\n } else if (this.direction === 'down') {\n this.navigateNextItem(event);\n } else {\n this.navigatePrevItem(event);\n }\n }\n\n onArrowLeft(event) {\n const leftValidDirections = ['left', 'up-right', 'down-left'];\n const rightValidDirections = ['right', 'up-left', 'down-right'];\n\n if (leftValidDirections.includes(this.direction || '')) {\n this.navigateNextItem(event);\n } else if (rightValidDirections.includes(this.direction || '')) {\n this.navigatePrevItem(event);\n } else {\n this.navigatePrevItem(event);\n }\n }\n\n onArrowRight(event) {\n const leftValidDirections = ['left', 'up-right', 'down-left'];\n const rightValidDirections = ['right', 'up-left', 'down-right'];\n\n if (leftValidDirections.includes(this.direction || '')) {\n this.navigatePrevItem(event);\n } else if (rightValidDirections.includes(this.direction || '')) {\n this.navigateNextItem(event);\n } else {\n this.navigateNextItem(event);\n }\n }\n\n onEndKey(event: any) {\n event.preventDefault();\n\n this.focusedOptionIndex.set(-1);\n this.navigatePrevItem(event);\n }\n\n onHomeKey(event: any) {\n event.preventDefault();\n\n this.focusedOptionIndex.set(-1);\n this.navigateNextItem(event);\n }\n\n onEnterKey(event: any) {\n const items = find(this.container?.nativeElement, '[data-pc-section=\"menuitem\"]');\n const itemIndex = [...items].findIndex((item) => item.id === this.focusedOptionIndex());\n\n if (itemIndex !== -1 && this.model && this.model[itemIndex]) {\n this.onItemClick(event, this.model[itemIndex]);\n }\n this.onBlur(event);\n\n const buttonEl = <any>findSingle(this.container?.nativeElement, 'button');\n\n buttonEl && focus(buttonEl);\n }\n\n onEscapeKey(event: KeyboardEvent) {\n this.hide();\n\n const buttonEl = <any>findSingle(this.container?.nativeElement, 'button');\n\n buttonEl && focus(buttonEl);\n }\n\n onTogglerKeydown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowDown':\n case 'ArrowLeft':\n this.onTogglerArrowDown(event);\n\n break;\n\n case 'ArrowUp':\n case 'ArrowRight':\n this.onTogglerArrowUp(event);\n\n break;\n\n case 'Escape':\n this.onEscapeKey(event);\n\n break;\n\n default:\n break;\n }\n }\n\n onTogglerArrowUp(event) {\n this.focused = true;\n focus(this.list?.nativeElement);\n\n this.show();\n this.navigatePrevItem(event);\n\n event.preventDefault();\n }\n\n onTogglerArrowDown(event) {\n this.focused = true;\n focus(this.list?.nativeElement);\n\n this.show();\n this.navigateNextItem(event);\n\n event.preventDefault();\n }\n\n navigateNextItem(event) {\n const optionIndex = this.findNextOptionIndex(this.focusedOptionIndex());\n\n this.changeFocusedOptionIndex(optionIndex);\n\n event.preventDefault();\n }\n\n navigatePrevItem(event) {\n const optionIndex = this.findPrevOptionIndex(this.focusedOptionIndex());\n\n this.changeFocusedOptionIndex(optionIndex);\n\n event.preventDefault();\n }\n\n findPrevOptionIndex(index) {\n const items = find(this.container?.nativeElement, '[data-pc-section=\"menuitem\"]');\n\n const filteredItems = [...items].filter((item) => !hasClass(findSingle(item, 'a')!, 'p-disabled'));\n const newIndex = index === -1 ? filteredItems[filteredItems.length - 1].id : index;\n let matchedOptionIndex = filteredItems.findIndex((link) => link.getAttribute('id') === newIndex);\n\n matchedOptionIndex = index === -1 ? filteredItems.length - 1 : matchedOptionIndex - 1;\n\n return matchedOptionIndex;\n }\n\n findNextOptionIndex(index) {\n const items = find(this.container?.nativeElement, '[data-pc-section=\"menuitem\"]');\n const filteredItems = [...items].filter((item) => !hasClass(findSingle(item, 'a')!, 'p-disabled'));\n const newIndex = index === -1 ? filteredItems[0].id : index;\n let matchedOptionIndex = filteredItems.findIndex((link) => link.getAttribute('id') === newIndex);\n\n matchedOptionIndex = index === -1 ? 0 : matchedOptionIndex + 1;\n\n return matchedOptionIndex;\n }\n\n changeFocusedOptionIndex(index) {\n const items = find(this.container?.nativeElement, '[data-pc-section=\"menuitem\"]');\n const filteredItems = [...items].filter((item) => !hasClass(findSingle(item, 'a')!, 'p-disabled'));\n\n if (filteredItems[index]) {\n this.focusedOptionIndex.set(filteredItems[index].getAttribute('id'));\n }\n }\n\n calculatePointStyle(index: number) {\n const type = this.type;\n\n if (type !== 'linear') {\n const length = (this.model as MenuItem[]).length;\n const radius = this.radius || length * 20;\n\n if (type === 'circle') {\n const step = (2 * Math.PI) / length;\n\n return {\n left: `calc(${radius * Math.cos(step * index)}px + var(--item-diff-x, 0px))`,\n top: `calc(${radius * Math.sin(step * index)}px + var(--item-diff-y, 0px))`\n };\n } else if (type === 'semi-circle') {\n const direction = this.direction;\n const step = Math.PI / (length - 1);\n const x = `calc(${radius * Math.cos(step * index)}px + var(--item-diff-x, 0px))`;\n const y = `calc(${radius * Math.sin(step * index)}px + var(--item-diff-y, 0px))`;\n if (direction === 'up') {\n return { left: x, bottom: y };\n } else if (direction === 'down') {\n return { left: x, top: y };\n } else if (direction === 'left') {\n return { right: y, top: x };\n } else if (direction === 'right') {\n return { left: y, top: x };\n }\n } else if (type === 'quarter-circle') {\n const direction = this.direction;\n const step = Math.PI / (2 * (length - 1));\n const x = `calc(${radius * Math.cos(step * index)}px + var(--item-diff-x, 0px))`;\n const y = `calc(${radius * Math.sin(step * index)}px + var(--item-diff-y, 0px))`;\n if (direction === 'up-left') {\n return { right: x, bottom: y };\n } else if (direction === 'up-right') {\n return { left: x, bottom: y };\n } else if (direction === 'down-left') {\n return { right: y, top: x };\n } else if (direction === 'down-right') {\n return { left: y, top: x };\n }\n }\n }\n\n return {};\n }\n\n calculateTransitionDelay(index: number) {\n const length = (this.model as MenuItem[]).length;\n\n return (this.visible ? index : length - index - 1) * this.transitionDelay;\n }\n\n get buttonIconClass() {\n if (!this.visible && this.showIcon) {\n return this.showIcon;\n }\n if (this.visible && this.hideIcon) {\n return this.hideIcon;\n }\n return this.showIcon;\n }\n\n getItemStyle(index: number) {\n const transitionDelay = this.calculateTransitionDelay(index);\n const pointStyle = this.calculatePointStyle(index);\n return {\n transitionDelay: `${transitionDelay}ms`,\n ...pointStyle\n };\n }\n\n isClickableRouterLink(item: MenuItem) {\n return item.routerLink && !this.disabled && !item.disabled;\n }\n\n isOutsideClicked(event: Event) {\n return this.container && !(this.container.nativeElement.isSameNode(event.target) || this.container.nativeElement.contains(event.target) || this.isItemClicked);\n }\n\n bindDocumentClickListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.documentClickListener && this.hideOnClickOutside) {\n this.documentClickListener = this.renderer.listen(this.document, 'click', (event) => {\n if (this.visible && this.isOutsideClicked(event)) {\n this.hide();\n }\n\n this.isItemClicked = false;\n });\n }\n }\n }\n\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n\n ngOnDestroy() {\n this.unbindDocumentClickListener();\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [SpeedDial, SharedModule],\n exports: [SpeedDial, SharedModule]\n})\nexport class SpeedDialModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primeng-speeddial.mjs","sources":["../../src/speeddial/style/speeddialstyle.ts","../../src/speeddial/speeddial.ts","../../src/speeddial/primeng-speeddial.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/speeddial';\nimport { BaseStyle } from 'primeng/base';\n\n/* Direction */\nconst inlineStyles = {\n root: ({ instance }) => ({\n alignItems: (instance.direction === 'up' || instance.direction === 'down') && 'center',\n justifyContent: (instance.direction === 'left' || instance.direction === 'right') && 'center',\n flexDirection: instance.direction === 'up' ? 'column-reverse' : instance.direction === 'down' ? 'column' : instance.direction === 'left' ? 'row-reverse' : instance.direction === 'right' ? 'row' : null\n }),\n list: ({ instance }) => ({\n flexDirection: instance.direction === 'up' ? 'column-reverse' : instance.direction === 'down' ? 'column' : instance.direction === 'left' ? 'row-reverse' : instance.direction === 'right' ? 'row' : null\n })\n};\n\nconst classes = {\n root: ({ instance }) => [\n `p-speeddial p-component p-speeddial-${instance.type}`,\n {\n [`p-speeddial-direction-${instance.direction}`]: instance.type !== 'circle',\n 'p-speeddial-open': instance.visible,\n 'p-disabled': instance.disabled\n }\n ],\n pcButton: ({ instance }) => [\n 'p-button-icon-only p-speeddial-button p-button-rounded',\n {\n 'p-speeddial-rotate': instance.rotateAnimation && !instance.hideIcon\n }\n ],\n list: 'p-speeddial-list',\n item: ({ instance, item, i }) => ['p-speeddial-item', { 'p-hidden': item.visible === false, 'p-focus': instance.focusedOptionId == instance.id + '_' + i }],\n action: 'p-speeddial-action',\n actionIcon: 'p-speeddial-action-icon',\n mask: ({ instance }) => [\n 'p-speeddial-mask',\n {\n 'p-speeddial-mask-visible': instance.visible\n }\n ]\n};\n\n@Injectable()\nexport class SpeedDialStyle extends BaseStyle {\n name = 'speeddial';\n\n style = style;\n\n classes = classes;\n\n inlineStyles = inlineStyles;\n}\n\n/**\n *\n * When pressed, a floating action button can display multiple primary actions that can be performed on a page.\n *\n * [Live Demo](https://www.primeng.org/speeddial/)\n *\n * @module speeddialstyle\n *\n */\nexport enum SpeedDialClasses {\n /**\n * Class name of the root element\n */\n root = 'p-speeddial',\n /**\n * Class name of the button element\n */\n pcButton = 'p-speeddial-button',\n /**\n * Class name of the list element\n */\n list = 'p-speeddial-list',\n /**\n * Class name of the item element\n */\n item = 'p-speeddial-item',\n /**\n * Class name of the action element\n */\n action = 'p-speeddial-action',\n /**\n * Class name of the action icon element\n */\n actionIcon = 'p-speeddial-action-icon',\n /**\n * Class name of the mask element\n */\n mask = 'p-speeddial-mask'\n}\n\nexport interface SpeedDialStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n inject,\n InjectionToken,\n Input,\n NgModule,\n numberAttribute,\n Output,\n QueryList,\n signal,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { find, findSingle, focus, hasClass, uuid } from '@primeuix/utils';\nimport { MenuItem, PrimeTemplate, SharedModule, TooltipOptions } from 'primeng/api';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind } from 'primeng/bind';\nimport { ButtonModule, ButtonProps } from 'primeng/button';\nimport { PlusIcon } from 'primeng/icons';\nimport { Ripple } from 'primeng/ripple';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { SpeedDialPassThrough } from 'primeng/types/speeddial';\nimport { asapScheduler } from 'rxjs';\nimport { SpeedDialStyle } from './style/speeddialstyle';\n\nconst SPEED_DIAL_INSTANCE = new InjectionToken<SpeedDial>('SPEED_DIAL_INSTANCE');\n\n/**\n * When pressed, a floating action button can display multiple primary actions that can be performed on a page.\n * @group Components\n */\n@Component({\n selector: 'p-speeddial, p-speedDial, p-speed-dial',\n standalone: true,\n imports: [CommonModule, ButtonModule, Ripple, TooltipModule, RouterModule, PlusIcon, SharedModule, Bind],\n template: `\n <div #container [pBind]=\"ptm('root')\" [class]=\"cn(cx('root'), className)\" [style]=\"style\" [ngStyle]=\"sx('root')\">\n <ng-container *ngIf=\"!buttonTemplate && !_buttonTemplate\">\n <button\n type=\"button\"\n pButton\n pRipple\n [style]=\"buttonStyle\"\n [icon]=\"buttonIconClass\"\n [class]=\"cn(cx('pcButton'), buttonClassName)\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"visible\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-controls]=\"id + '_list'\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n (click)=\"onButtonClick($event)\"\n (keydown)=\"onTogglerKeydown($event)\"\n [buttonProps]=\"buttonProps\"\n [pt]=\"ptm('pcButton')\"\n >\n <svg data-p-icon=\"plus\" pButtonIcon [pt]=\"ptm('pcButton')['icon']\" *ngIf=\"!buttonIconClass && !iconTemplate && !_iconTemplate\" />\n <ng-container *ngTemplateOutlet=\"iconTemplate || _iconTemplate\"></ng-container>\n </button>\n </ng-container>\n <ng-container *ngIf=\"buttonTemplate || _buttonTemplate\">\n <ng-container *ngTemplateOutlet=\"buttonTemplate || _buttonTemplate; context: { toggleCallback: onButtonClick.bind(this) }\"></ng-container>\n </ng-container>\n <ul\n #list\n [pBind]=\"ptm('list')\"\n [class]=\"cx('list')\"\n role=\"menu\"\n [id]=\"id + '_list'\"\n (focus)=\"onFocus($event)\"\n (focusout)=\"onBlur($event)\"\n (keydown)=\"onKeyDown($event)\"\n [attr.aria-activedescendant]=\"focused ? focusedOptionId : undefined\"\n [tabindex]=\"-1\"\n [ngStyle]=\"sx('list')\"\n >\n <li\n *ngFor=\"let item of model; let i = index\"\n [pBind]=\"getPTOptions(id + '_' + i, 'item')\"\n [ngStyle]=\"getItemStyle(i)\"\n [class]=\"cx('item', { item, i })\"\n pTooltip\n [tooltipOptions]=\"item.tooltipOptions || getTooltipOptions(item)\"\n [id]=\"id + '_' + i\"\n [attr.aria-controls]=\"id + '_item'\"\n role=\"menuitem\"\n [attr.data-p-active]=\"isItemActive(id + '_' + i)\"\n >\n <ng-container *ngIf=\"itemTemplate || _itemTemplate\">\n <ng-container *ngTemplateOutlet=\"itemTemplate || _itemTemplate; context: { $implicit: item, index: i, toggleCallback: onItemClick.bind(this) }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!itemTemplate && !_itemTemplate\">\n <button\n type=\"button\"\n pButton\n pRipple\n [class]=\"cx('pcAction')\"\n severity=\"secondary\"\n [rounded]=\"true\"\n size=\"small\"\n role=\"menuitem\"\n [icon]=\"item.icon\"\n (click)=\"onItemClick($event, item)\"\n [disabled]=\"item?.disabled\"\n (keydown.enter)=\"onItemClick($event, item)\"\n [attr.aria-label]=\"item.label\"\n [attr.tabindex]=\"item.disabled || !visible ? null : item.tabindex ? item.tabindex : '0'\"\n [pt]=\"getPTOptions(id + '_' + i, 'pcAction')\"\n >\n <span *ngIf=\"item.icon\" pButtonIcon [pt]=\"getPTOptions(id + '_' + i, 'actionIcon')\" [class]=\"item.icon\"></span>\n </button>\n </ng-container>\n </li>\n </ul>\n </div>\n <div *ngIf=\"mask && visible\" [pBind]=\"ptm('mask')\" [class]=\"cn(cx('mask'), maskClassName)\" [ngStyle]=\"maskStyle\"></div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [SpeedDialStyle, { provide: SPEED_DIAL_INSTANCE, useExisting: SpeedDial }, { provide: PARENT_INSTANCE, useExisting: SpeedDial }],\n hostDirectives: [Bind]\n})\nexport class SpeedDial extends BaseComponent<SpeedDialPassThrough> {\n $pcSpeedDial: SpeedDial | undefined = inject(SPEED_DIAL_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptm('host'));\n }\n\n /**\n * List of items id.\n * @group Props\n */\n @Input() id: string | undefined;\n /**\n * MenuModel instance to define the action items.\n * @group Props\n */\n @Input() model: MenuItem[] | null = null;\n /**\n * Specifies the visibility of the overlay.\n * @defaultValue false\n * @group Props\n */\n @Input() get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n this._visible = value;\n\n if (this._visible) {\n this.bindDocumentClickListener();\n } else {\n this.unbindDocumentClickListener();\n }\n }\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the element.\n * @group Props\n */\n @Input() className: string | undefined;\n /**\n * Specifies the opening direction of actions.\n * @gruop Props\n */\n @Input() direction: 'up' | 'down' | 'left' | 'right' | 'up-left' | 'up-right' | 'down-left' | 'down-right' | undefined = 'up';\n /**\n * Transition delay step for each action item.\n * @group Props\n */\n @Input({ transform: numberAttribute }) transitionDelay: number = 30;\n /**\n * Specifies the opening type of actions.\n * @group Props\n */\n @Input() type: 'linear' | 'circle' | 'semi-circle' | 'quarter-circle' | undefined = 'linear';\n /**\n * Radius for *circle types.\n * @group Props\n */\n @Input({ transform: numberAttribute }) radius: number = 0;\n /**\n * Whether to show a mask element behind the speeddial.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) mask: boolean = false;\n /**\n * Whether the component is disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean = false;\n /**\n * Whether the actions close when clicked outside.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) hideOnClickOutside: boolean = true;\n /**\n * Inline style of the button element.\n * @group Props\n */\n @Input() buttonStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the button element.\n * @group Props\n */\n @Input() buttonClassName: string | undefined;\n /**\n * Inline style of the mask element.\n * @group Props\n */\n @Input() maskStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the mask element.\n * @group Props\n */\n @Input() maskClassName: string | undefined;\n /**\n * Show icon of the button element.\n * @group Props\n */\n @Input() showIcon: string | undefined;\n /**\n * Hide icon of the button element.\n * @group Props\n */\n @Input() hideIcon: string | undefined;\n /**\n * Defined to rotate showIcon when hideIcon is not present.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) rotateAnimation: boolean = true;\n /**\n * Defines a string value that labels an interactive element.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Identifier of the underlying input element.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Whether to display the tooltip on items. The modifiers of Tooltip can be used like an object in it. Valid keys are 'event' and 'position'.\n * @group Props\n */\n @Input() tooltipOptions: TooltipOptions;\n /**\n * Used to pass all properties of the ButtonProps to the Button component.\n * @group Props\n */\n @Input() buttonProps: ButtonProps;\n /**\n * Fired when the visibility of element changed.\n * @param {boolean} boolean - Visibility value.\n * @group Emits\n */\n @Output() onVisibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n /**\n * Fired when the visibility of element changed.\n * @param {boolean} boolean - Visibility value.\n * @group Emits\n */\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n /**\n * Fired when the button element clicked.\n * @param {MouseEvent} event - Mouse event.\n * @group Emits\n */\n @Output() onClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\n /**\n * Fired when the actions are visible.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onShow: EventEmitter<Event> = new EventEmitter<Event>();\n /**\n * Fired when the actions are hidden.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onHide: EventEmitter<Event> = new EventEmitter<Event>();\n\n @ViewChild('container') container: ElementRef | undefined;\n\n @ViewChild('list') list: ElementRef | undefined;\n /**\n * Template of the button.\n * @group Templates\n */\n @ContentChild('button', { descendants: false }) buttonTemplate: TemplateRef<any> | undefined;\n /**\n * Template of the item.\n * @group Templates\n */\n @ContentChild('item', { descendants: false }) itemTemplate: TemplateRef<any> | undefined;\n\n /**\n * Template of the item.\n * @group Templates\n */\n @ContentChild('icon', { descendants: false }) iconTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n _buttonTemplate: TemplateRef<any> | undefined;\n\n _itemTemplate: TemplateRef<any> | undefined;\n\n _iconTemplate: TemplateRef<any> | undefined;\n\n isItemClicked: boolean = false;\n\n _visible: boolean = false;\n\n documentClickListener: any;\n\n focusedOptionIndex = signal<any>(null);\n\n focused: boolean = false;\n\n _componentStyle = inject(SpeedDialStyle);\n\n get focusedOptionId() {\n return this.focusedOptionIndex() !== -1 ? this.focusedOptionIndex() : null;\n }\n\n getTooltipOptions(item: MenuItem) {\n return { ...this.tooltipOptions, tooltipLabel: item.label, disabled: !this.tooltipOptions };\n }\n\n getPTOptions(id: string, key: string) {\n return this.ptm(key, {\n context: {\n active: this.isItemActive(id),\n hidden: !this.visible\n }\n });\n }\n\n isItemActive(id: string) {\n return id === this.focusedOptionId;\n }\n\n onInit() {\n this.id = this.id || uuid('pn_id_');\n }\n\n onAfterViewInit() {\n if (isPlatformBrowser(this.platformId)) {\n if (this.type !== 'linear') {\n const button = <any>findSingle(this.container?.nativeElement, '.p-speeddial-button');\n const firstItem = <any>findSingle(this.list?.nativeElement, '.p-speeddial-item');\n\n if (button && firstItem) {\n const wDiff = Math.abs(button.offsetWidth - firstItem.offsetWidth);\n const hDiff = Math.abs(button.offsetHeight - firstItem.offsetHeight);\n this.list?.nativeElement.style.setProperty('--item-diff-x', `${wDiff / 2}px`);\n this.list?.nativeElement.style.setProperty('--item-diff-y', `${hDiff / 2}px`);\n }\n }\n }\n }\n\n onAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'button':\n this._buttonTemplate = item.template;\n break;\n case 'item':\n this._itemTemplate = item.template;\n break;\n case 'icon':\n this._iconTemplate = item.template;\n break;\n }\n });\n }\n\n show() {\n this.onVisibleChange.emit(true);\n this.visibleChange.emit(true);\n this._visible = true;\n this.onShow.emit();\n this.bindDocumentClickListener();\n this.cd.markForCheck();\n }\n\n hide() {\n this.onVisibleChange.emit(false);\n this.visibleChange.emit(false);\n this._visible = false;\n this.onHide.emit();\n this.unbindDocumentClickListener();\n this.cd.markForCheck();\n }\n\n onButtonClick(event: MouseEvent) {\n this.visible ? this.hide() : this.show();\n this.onClick.emit(event);\n this.isItemClicked = true;\n }\n\n onItemClick(e: Event, item: MenuItem) {\n if (item.command) {\n item.command({ originalEvent: e, item });\n }\n\n this.hide();\n\n this.isItemClicked = true;\n }\n\n onKeyDown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowDown':\n this.onArrowDown(event);\n break;\n\n case 'ArrowUp':\n this.onArrowUp(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeft(event);\n break;\n\n case 'ArrowRight':\n this.onArrowRight(event);\n break;\n\n case 'Enter':\n case 'Space':\n this.onEnterKey(event);\n break;\n\n case 'Escape':\n this.onEscapeKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n default:\n break;\n }\n }\n\n onFocus(event) {\n this.focused = true;\n }\n\n onBlur(event) {\n this.focused = false;\n asapScheduler.schedule(() => this.focusedOptionIndex.set(-1));\n }\n\n onArrowUp(event) {\n if (this.direction === 'up') {\n this.navigateNextItem(event);\n } else if (this.direction === 'down') {\n this.navigatePrevItem(event);\n } else {\n this.navigateNextItem(event);\n }\n }\n\n onArrowDown(event) {\n if (this.direction === 'up') {\n this.navigatePrevItem(event);\n } else if (this.direction === 'down') {\n this.navigateNextItem(event);\n } else {\n this.navigatePrevItem(event);\n }\n }\n\n onArrowLeft(event) {\n const leftValidDirections = ['left', 'up-right', 'down-left'];\n const rightValidDirections = ['right', 'up-left', 'down-right'];\n\n if (leftValidDirections.includes(this.direction || '')) {\n this.navigateNextItem(event);\n } else if (rightValidDirections.includes(this.direction || '')) {\n this.navigatePrevItem(event);\n } else {\n this.navigatePrevItem(event);\n }\n }\n\n onArrowRight(event) {\n const leftValidDirections = ['left', 'up-right', 'down-left'];\n const rightValidDirections = ['right', 'up-left', 'down-right'];\n\n if (leftValidDirections.includes(this.direction || '')) {\n this.navigatePrevItem(event);\n } else if (rightValidDirections.includes(this.direction || '')) {\n this.navigateNextItem(event);\n } else {\n this.navigateNextItem(event);\n }\n }\n\n onEndKey(event: any) {\n event.preventDefault();\n\n this.focusedOptionIndex.set(-1);\n this.navigatePrevItem(event);\n }\n\n onHomeKey(event: any) {\n event.preventDefault();\n\n this.focusedOptionIndex.set(-1);\n this.navigateNextItem(event);\n }\n\n onEnterKey(event: any) {\n const items = find(this.container?.nativeElement, '[data-pc-section=\"item\"]');\n const itemIndex = [...items].findIndex((item) => item.id === this.focusedOptionIndex());\n\n if (itemIndex !== -1 && this.model && this.model[itemIndex]) {\n this.onItemClick(event, this.model[itemIndex]);\n }\n this.onBlur(event);\n\n const buttonEl = <any>findSingle(this.container?.nativeElement, 'button');\n\n buttonEl && focus(buttonEl);\n }\n\n onEscapeKey(event: KeyboardEvent) {\n this.hide();\n\n const buttonEl = <any>findSingle(this.container?.nativeElement, 'button');\n\n buttonEl && focus(buttonEl);\n }\n\n onTogglerKeydown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowDown':\n case 'ArrowLeft':\n this.onTogglerArrowDown(event);\n\n break;\n\n case 'ArrowUp':\n case 'ArrowRight':\n this.onTogglerArrowUp(event);\n\n break;\n\n case 'Escape':\n this.onEscapeKey(event);\n\n break;\n\n default:\n break;\n }\n }\n\n onTogglerArrowUp(event) {\n this.focused = true;\n focus(this.list?.nativeElement);\n\n this.show();\n this.navigatePrevItem(event);\n\n event.preventDefault();\n }\n\n onTogglerArrowDown(event) {\n this.focused = true;\n focus(this.list?.nativeElement);\n\n this.show();\n this.navigateNextItem(event);\n\n event.preventDefault();\n }\n\n navigateNextItem(event) {\n const optionIndex = this.findNextOptionIndex(this.focusedOptionIndex());\n\n this.changeFocusedOptionIndex(optionIndex);\n\n event.preventDefault();\n }\n\n navigatePrevItem(event) {\n const optionIndex = this.findPrevOptionIndex(this.focusedOptionIndex());\n\n this.changeFocusedOptionIndex(optionIndex);\n\n event.preventDefault();\n }\n\n findPrevOptionIndex(index) {\n const items = find(this.container?.nativeElement, '[data-pc-section=\"item\"]');\n\n const filteredItems = [...items].filter((item) => !hasClass(findSingle(item, 'a')!, 'p-disabled'));\n const newIndex = index === -1 ? filteredItems[filteredItems.length - 1].id : index;\n let matchedOptionIndex = filteredItems.findIndex((link) => link.getAttribute('id') === newIndex);\n\n matchedOptionIndex = index === -1 ? filteredItems.length - 1 : matchedOptionIndex - 1;\n\n return matchedOptionIndex;\n }\n\n findNextOptionIndex(index) {\n const items = find(this.container?.nativeElement, '[data-pc-section=\"item\"]');\n const filteredItems = [...items].filter((item) => !hasClass(findSingle(item, 'a')!, 'p-disabled'));\n const newIndex = index === -1 ? filteredItems[0].id : index;\n let matchedOptionIndex = filteredItems.findIndex((link) => link.getAttribute('id') === newIndex);\n\n matchedOptionIndex = index === -1 ? 0 : matchedOptionIndex + 1;\n\n return matchedOptionIndex;\n }\n\n changeFocusedOptionIndex(index) {\n const items = find(this.container?.nativeElement, '[data-pc-section=\"item\"]');\n const filteredItems = [...items].filter((item) => !hasClass(findSingle(item, 'a')!, 'p-disabled'));\n\n if (filteredItems[index]) {\n this.focusedOptionIndex.set(filteredItems[index].getAttribute('id'));\n }\n }\n\n calculatePointStyle(index: number) {\n const type = this.type;\n\n if (type !== 'linear') {\n const length = (this.model as MenuItem[]).length;\n const radius = this.radius || length * 20;\n\n if (type === 'circle') {\n const step = (2 * Math.PI) / length;\n\n return {\n left: `calc(${radius * Math.cos(step * index)}px + var(--item-diff-x, 0px))`,\n top: `calc(${radius * Math.sin(step * index)}px + var(--item-diff-y, 0px))`\n };\n } else if (type === 'semi-circle') {\n const direction = this.direction;\n const step = Math.PI / (length - 1);\n const x = `calc(${radius * Math.cos(step * index)}px + var(--item-diff-x, 0px))`;\n const y = `calc(${radius * Math.sin(step * index)}px + var(--item-diff-y, 0px))`;\n if (direction === 'up') {\n return { left: x, bottom: y };\n } else if (direction === 'down') {\n return { left: x, top: y };\n } else if (direction === 'left') {\n return { right: y, top: x };\n } else if (direction === 'right') {\n return { left: y, top: x };\n }\n } else if (type === 'quarter-circle') {\n const direction = this.direction;\n const step = Math.PI / (2 * (length - 1));\n const x = `calc(${radius * Math.cos(step * index)}px + var(--item-diff-x, 0px))`;\n const y = `calc(${radius * Math.sin(step * index)}px + var(--item-diff-y, 0px))`;\n if (direction === 'up-left') {\n return { right: x, bottom: y };\n } else if (direction === 'up-right') {\n return { left: x, bottom: y };\n } else if (direction === 'down-left') {\n return { right: y, top: x };\n } else if (direction === 'down-right') {\n return { left: y, top: x };\n }\n }\n }\n\n return {};\n }\n\n calculateTransitionDelay(index: number) {\n const length = (this.model as MenuItem[]).length;\n\n return (this.visible ? index : length - index - 1) * this.transitionDelay;\n }\n\n get buttonIconClass() {\n if (!this.visible && this.showIcon) {\n return this.showIcon;\n }\n if (this.visible && this.hideIcon) {\n return this.hideIcon;\n }\n return this.showIcon;\n }\n\n getItemStyle(index: number) {\n const transitionDelay = this.calculateTransitionDelay(index);\n const pointStyle = this.calculatePointStyle(index);\n return {\n transitionDelay: `${transitionDelay}ms`,\n ...pointStyle\n };\n }\n\n isClickableRouterLink(item: MenuItem) {\n return item.routerLink && !this.disabled && !item.disabled;\n }\n\n isOutsideClicked(event: Event) {\n return this.container && !(this.container.nativeElement.isSameNode(event.target) || this.container.nativeElement.contains(event.target) || this.isItemClicked);\n }\n\n bindDocumentClickListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.documentClickListener && this.hideOnClickOutside) {\n this.documentClickListener = this.renderer.listen(this.document, 'click', (event) => {\n if (this.visible && this.isOutsideClicked(event)) {\n this.hide();\n }\n\n this.isItemClicked = false;\n });\n }\n }\n }\n\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n\n onDestroy() {\n this.unbindDocumentClickListener();\n }\n}\n\n@NgModule({\n imports: [SpeedDial, SharedModule],\n exports: [SpeedDial, SharedModule]\n})\nexport class SpeedDialModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}