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,18 +1,22 @@
1
- import * as i1 from '@angular/common';
1
+ export * from 'primeng/types/rating';
2
+ import * as i2 from '@angular/common';
2
3
  import { CommonModule } from '@angular/common';
3
4
  import * as i0 from '@angular/core';
4
- import { Injectable, forwardRef, EventEmitter, signal, inject, booleanAttribute, numberAttribute, ContentChildren, ContentChild, Output, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
5
+ import { Injectable, InjectionToken, forwardRef, inject, EventEmitter, signal, booleanAttribute, numberAttribute, ContentChildren, ContentChild, Output, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
5
6
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
6
7
  import { uuid, getFirstFocusableElement, focus } from '@primeuix/utils';
7
8
  import { SharedModule, PrimeTemplate } from 'primeng/api';
8
9
  import { AutoFocus } from 'primeng/autofocus';
10
+ import { PARENT_INSTANCE } from 'primeng/basecomponent';
9
11
  import { BaseEditableHolder } from 'primeng/baseeditableholder';
12
+ import * as i1 from 'primeng/bind';
13
+ import { Bind, BindModule } from 'primeng/bind';
10
14
  import { StarFillIcon, StarIcon } from 'primeng/icons';
11
- import { style } from '@primeuix/styles/rating';
15
+ import { style as style$1 } from '@primeuix/styles/rating';
12
16
  import { BaseStyle } from 'primeng/base';
13
17
 
14
- const theme = /*css*/ `
15
- ${style}
18
+ const style = /*css*/ `
19
+ ${style$1}
16
20
 
17
21
  /* For PrimeNG */
18
22
  p-rating.ng-invalid.ng-dirty > .p-rating > .p-rating-icon {
@@ -39,12 +43,12 @@ const classes = {
39
43
  };
40
44
  class RatingStyle extends BaseStyle {
41
45
  name = 'rating';
42
- theme = theme;
46
+ style = style;
43
47
  classes = classes;
44
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RatingStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
45
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RatingStyle });
48
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RatingStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
49
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RatingStyle });
46
50
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RatingStyle, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RatingStyle, decorators: [{
48
52
  type: Injectable
49
53
  }] });
50
54
  /**
@@ -76,6 +80,7 @@ var RatingClasses;
76
80
  RatingClasses["offIcon"] = "p-rating-off-icon";
77
81
  })(RatingClasses || (RatingClasses = {}));
78
82
 
83
+ const RATING_INSTANCE = new InjectionToken('RATING_INSTANCE');
79
84
  const RATING_VALUE_ACCESSOR = {
80
85
  provide: NG_VALUE_ACCESSOR,
81
86
  useExisting: forwardRef(() => Rating),
@@ -86,6 +91,11 @@ const RATING_VALUE_ACCESSOR = {
86
91
  * @group Components
87
92
  */
88
93
  class Rating extends BaseEditableHolder {
94
+ $pcRating = inject(RATING_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
95
+ bindDirectiveInstance = inject(Bind, { self: true });
96
+ onAfterViewChecked() {
97
+ this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
98
+ }
89
99
  /**
90
100
  * When present, changing the value is not possible.
91
101
  * @group Props
@@ -158,15 +168,14 @@ class Rating extends BaseEditableHolder {
158
168
  _componentStyle = inject(RatingStyle);
159
169
  _onIconTemplate;
160
170
  _offIconTemplate;
161
- ngOnInit() {
162
- super.ngOnInit();
171
+ onInit() {
163
172
  this.nameattr = this.nameattr || uuid('pn_id_');
164
173
  this.starsArray = [];
165
174
  for (let i = 0; i < this.stars; i++) {
166
175
  this.starsArray[i] = i;
167
176
  }
168
177
  }
169
- ngAfterContentInit() {
178
+ onAfterContentInit() {
170
179
  this.templates.forEach((item) => {
171
180
  switch (item.getType()) {
172
181
  case 'onicon':
@@ -241,11 +250,11 @@ class Rating extends BaseEditableHolder {
241
250
  get isCustomIcon() {
242
251
  return !!(this.onIconTemplate || this._onIconTemplate || this.offIconTemplate || this._offIconTemplate);
243
252
  }
244
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Rating, deps: null, target: i0.ɵɵFactoryTarget.Component });
245
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.2", type: Rating, isStandalone: true, selector: "p-rating", inputs: { readonly: ["readonly", "readonly", booleanAttribute], stars: ["stars", "stars", numberAttribute], iconOnClass: "iconOnClass", iconOnStyle: "iconOnStyle", iconOffClass: "iconOffClass", iconOffStyle: "iconOffStyle", autofocus: ["autofocus", "autofocus", booleanAttribute] }, outputs: { onRate: "onRate", onFocus: "onFocus", onBlur: "onBlur" }, host: { properties: { "class": "cx('root')", "attr.data-pc-name": "'rating'", "attr.data-pc-section": "'root'" } }, providers: [RATING_VALUE_ACCESSOR, RatingStyle], queries: [{ propertyName: "onIconTemplate", first: true, predicate: ["onicon"] }, { propertyName: "offIconTemplate", first: true, predicate: ["officon"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: `
253
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Rating, deps: null, target: i0.ɵɵFactoryTarget.Component });
254
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: Rating, isStandalone: true, selector: "p-rating", inputs: { readonly: ["readonly", "readonly", booleanAttribute], stars: ["stars", "stars", numberAttribute], iconOnClass: "iconOnClass", iconOnStyle: "iconOnStyle", iconOffClass: "iconOffClass", iconOffStyle: "iconOffStyle", autofocus: ["autofocus", "autofocus", booleanAttribute] }, outputs: { onRate: "onRate", onFocus: "onFocus", onBlur: "onBlur" }, host: { properties: { "class": "cx('root')" } }, providers: [RATING_VALUE_ACCESSOR, RatingStyle, { provide: RATING_INSTANCE, useExisting: Rating }, { provide: PARENT_INSTANCE, useExisting: Rating }], queries: [{ propertyName: "onIconTemplate", first: true, predicate: ["onicon"] }, { propertyName: "offIconTemplate", first: true, predicate: ["officon"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
246
255
  <ng-template ngFor [ngForOf]="starsArray" let-star let-i="index">
247
- <div [class]="cx('option', { star, value })" (click)="onOptionClick($event, star + 1)">
248
- <span class="p-hidden-accessible" [attr.data-p-hidden-accessible]="true">
256
+ <div [class]="cx('option', { star, value })" (click)="onOptionClick($event, star + 1)" [pBind]="ptm('option')">
257
+ <span class="p-hidden-accessible" [attr.data-p-hidden-accessible]="true" [pBind]="ptm('hiddenOptionInputContainer')">
249
258
  <input
250
259
  type="radio"
251
260
  [value]="star + 1"
@@ -260,37 +269,38 @@ class Rating extends BaseEditableHolder {
260
269
  (blur)="onInputBlur($event)"
261
270
  (change)="onChange($event, star + 1)"
262
271
  [pAutoFocus]="autofocus"
272
+ [pBind]="ptm('hiddenOptionInput')"
263
273
  />
264
274
  </span>
265
275
  @if (star + 1 <= value) {
266
276
  @if (onIconTemplate || _onIconTemplate) {
267
277
  <ng-container *ngTemplateOutlet="onIconTemplate || _onIconTemplate; context: { $implicit: star + 1, class: cx('onIcon') }"></ng-container>
268
278
  } @else {
269
- <span [class]="cx('onIcon')" *ngIf="iconOnClass" [ngStyle]="iconOnStyle" [ngClass]="iconOnClass" [attr.data-pc-section]="'onIcon'"></span>
270
- <svg data-p-icon="star-fill" *ngIf="!iconOnClass" [ngStyle]="iconOnStyle" [class]="cx('onIcon')" [attr.data-pc-section]="'onIcon'" />
279
+ <span [class]="cx('onIcon')" *ngIf="iconOnClass" [ngStyle]="iconOnStyle" [ngClass]="iconOnClass" [pBind]="ptm('onIcon')"></span>
280
+ <svg data-p-icon="star-fill" *ngIf="!iconOnClass" [ngStyle]="iconOnStyle" [class]="cx('onIcon')" [pBind]="ptm('onIcon')" />
271
281
  }
272
282
  } @else {
273
283
  @if (offIconTemplate || _offIconTemplate) {
274
284
  <ng-container *ngTemplateOutlet="offIconTemplate || _offIconTemplate; context: { $implicit: star + 1, class: cx('offIcon') }"></ng-container>
275
285
  } @else {
276
- <span [class]="cx('offIcon')" *ngIf="iconOffClass" [ngStyle]="iconOffStyle" [ngClass]="iconOffClass" [attr.data-pc-section]="'offIcon'"></span>
277
- <svg data-p-icon="star" *ngIf="!iconOffClass" [ngStyle]="iconOffStyle" [class]="cx('offIcon')" [attr.data-pc-section]="'offIcon'" />
286
+ <span [class]="cx('offIcon')" *ngIf="iconOffClass" [ngStyle]="iconOffStyle" [ngClass]="iconOffClass" [pBind]="ptm('offIcon')"></span>
287
+ <svg data-p-icon="star" *ngIf="!iconOffClass" [ngStyle]="iconOffStyle" [class]="cx('offIcon')" [pBind]="ptm('offIcon')" />
278
288
  }
279
289
  }
280
290
  </div>
281
291
  </ng-template>
282
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: "directive", type: AutoFocus, selector: "[pAutoFocus]", inputs: ["pAutoFocus"] }, { kind: "component", type: StarFillIcon, selector: "[data-p-icon=\"star-fill\"]" }, { kind: "component", type: StarIcon, selector: "[data-p-icon=\"star\"]" }, { kind: "ngmodule", type: SharedModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
292
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: AutoFocus, selector: "[pAutoFocus]", inputs: ["pAutoFocus"] }, { kind: "component", type: StarFillIcon, selector: "[data-p-icon=\"star-fill\"]" }, { kind: "component", type: StarIcon, selector: "[data-p-icon=\"star\"]" }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: BindModule }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
283
293
  }
284
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Rating, decorators: [{
294
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Rating, decorators: [{
285
295
  type: Component,
286
296
  args: [{
287
297
  selector: 'p-rating',
288
- imports: [CommonModule, AutoFocus, StarFillIcon, StarIcon, SharedModule],
298
+ imports: [CommonModule, AutoFocus, StarFillIcon, StarIcon, SharedModule, BindModule],
289
299
  standalone: true,
290
300
  template: `
291
301
  <ng-template ngFor [ngForOf]="starsArray" let-star let-i="index">
292
- <div [class]="cx('option', { star, value })" (click)="onOptionClick($event, star + 1)">
293
- <span class="p-hidden-accessible" [attr.data-p-hidden-accessible]="true">
302
+ <div [class]="cx('option', { star, value })" (click)="onOptionClick($event, star + 1)" [pBind]="ptm('option')">
303
+ <span class="p-hidden-accessible" [attr.data-p-hidden-accessible]="true" [pBind]="ptm('hiddenOptionInputContainer')">
294
304
  <input
295
305
  type="radio"
296
306
  [value]="star + 1"
@@ -305,34 +315,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
305
315
  (blur)="onInputBlur($event)"
306
316
  (change)="onChange($event, star + 1)"
307
317
  [pAutoFocus]="autofocus"
318
+ [pBind]="ptm('hiddenOptionInput')"
308
319
  />
309
320
  </span>
310
321
  @if (star + 1 <= value) {
311
322
  @if (onIconTemplate || _onIconTemplate) {
312
323
  <ng-container *ngTemplateOutlet="onIconTemplate || _onIconTemplate; context: { $implicit: star + 1, class: cx('onIcon') }"></ng-container>
313
324
  } @else {
314
- <span [class]="cx('onIcon')" *ngIf="iconOnClass" [ngStyle]="iconOnStyle" [ngClass]="iconOnClass" [attr.data-pc-section]="'onIcon'"></span>
315
- <svg data-p-icon="star-fill" *ngIf="!iconOnClass" [ngStyle]="iconOnStyle" [class]="cx('onIcon')" [attr.data-pc-section]="'onIcon'" />
325
+ <span [class]="cx('onIcon')" *ngIf="iconOnClass" [ngStyle]="iconOnStyle" [ngClass]="iconOnClass" [pBind]="ptm('onIcon')"></span>
326
+ <svg data-p-icon="star-fill" *ngIf="!iconOnClass" [ngStyle]="iconOnStyle" [class]="cx('onIcon')" [pBind]="ptm('onIcon')" />
316
327
  }
317
328
  } @else {
318
329
  @if (offIconTemplate || _offIconTemplate) {
319
330
  <ng-container *ngTemplateOutlet="offIconTemplate || _offIconTemplate; context: { $implicit: star + 1, class: cx('offIcon') }"></ng-container>
320
331
  } @else {
321
- <span [class]="cx('offIcon')" *ngIf="iconOffClass" [ngStyle]="iconOffStyle" [ngClass]="iconOffClass" [attr.data-pc-section]="'offIcon'"></span>
322
- <svg data-p-icon="star" *ngIf="!iconOffClass" [ngStyle]="iconOffStyle" [class]="cx('offIcon')" [attr.data-pc-section]="'offIcon'" />
332
+ <span [class]="cx('offIcon')" *ngIf="iconOffClass" [ngStyle]="iconOffStyle" [ngClass]="iconOffClass" [pBind]="ptm('offIcon')"></span>
333
+ <svg data-p-icon="star" *ngIf="!iconOffClass" [ngStyle]="iconOffStyle" [class]="cx('offIcon')" [pBind]="ptm('offIcon')" />
323
334
  }
324
335
  }
325
336
  </div>
326
337
  </ng-template>
327
338
  `,
328
- providers: [RATING_VALUE_ACCESSOR, RatingStyle],
339
+ providers: [RATING_VALUE_ACCESSOR, RatingStyle, { provide: RATING_INSTANCE, useExisting: Rating }, { provide: PARENT_INSTANCE, useExisting: Rating }],
329
340
  changeDetection: ChangeDetectionStrategy.OnPush,
330
341
  encapsulation: ViewEncapsulation.None,
331
342
  host: {
332
- '[class]': "cx('root')",
333
- '[attr.data-pc-name]': "'rating'",
334
- '[attr.data-pc-section]': "'root'"
335
- }
343
+ '[class]': "cx('root')"
344
+ },
345
+ hostDirectives: [Bind]
336
346
  }]
337
347
  }], propDecorators: { readonly: [{
338
348
  type: Input,
@@ -368,11 +378,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
368
378
  args: [PrimeTemplate]
369
379
  }] } });
370
380
  class RatingModule {
371
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RatingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
372
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.2", ngImport: i0, type: RatingModule, imports: [Rating, SharedModule], exports: [Rating, SharedModule] });
373
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RatingModule, imports: [Rating, SharedModule, SharedModule] });
381
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RatingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
382
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: RatingModule, imports: [Rating, SharedModule], exports: [Rating, SharedModule] });
383
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RatingModule, imports: [Rating, SharedModule, SharedModule] });
374
384
  }
375
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RatingModule, decorators: [{
385
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RatingModule, decorators: [{
376
386
  type: NgModule,
377
387
  args: [{
378
388
  imports: [Rating, SharedModule],
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-rating.mjs","sources":["../../src/rating/style/ratingstyle.ts","../../src/rating/rating.ts","../../src/rating/primeng-rating.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/rating';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = /*css*/ `\n ${style}\n\n /* For PrimeNG */\n p-rating.ng-invalid.ng-dirty > .p-rating > .p-rating-icon {\n stroke: dt('rating.invalid.icon.color');\n }\n`;\n\nconst classes = {\n root: ({ instance }) => [\n 'p-rating',\n {\n 'p-readonly': instance.readonly,\n 'p-disabled': instance.$disabled()\n }\n ],\n option: ({ instance, star, value }) => [\n 'p-rating-option',\n\n {\n 'p-rating-option-active': star + 1 <= value,\n 'p-focus-visible': star + 1 === instance.focusedOptionIndex() && instance.isFocusVisibleItem\n }\n ],\n onIcon: ({ instance }) => ['p-rating-icon p-rating-on-icon', { 'p-invalid': instance.invalid() }],\n offIcon: ({ instance }) => ['p-rating-icon p-rating-off-icon', { 'p-invalid': instance.invalid() }]\n};\n\n@Injectable()\nexport class RatingStyle extends BaseStyle {\n name = 'rating';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Rating component is a star based selection input.\n *\n * [Live Demo](https://www.primeng.org/rating/)\n *\n * @module ratingstyle\n *\n */\nexport enum RatingClasses {\n /**\n * Class name of the root element\n */\n root = 'p-rating',\n /**\n * Class name of the option element\n */\n option = 'p-rating-option',\n /**\n * Class name of the on icon element\n */\n onIcon = 'p-rating-on-icon',\n /**\n * Class name of the off icon element\n */\n offIcon = 'p-rating-off-icon'\n}\n\nexport interface RatingStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n EventEmitter,\n forwardRef,\n inject,\n Input,\n NgModule,\n numberAttribute,\n OnInit,\n Output,\n QueryList,\n signal,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { focus, getFirstFocusableElement, uuid } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { AutoFocus } from 'primeng/autofocus';\nimport { BaseEditableHolder } from 'primeng/baseeditableholder';\nimport { StarFillIcon, StarIcon } from 'primeng/icons';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { RatingRateEvent } from './rating.interface';\nimport { RatingStyle } from './style/ratingstyle';\n\nexport const RATING_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Rating),\n multi: true\n};\n/**\n * Rating is an extension to standard radio button element with theming.\n * @group Components\n */\n@Component({\n selector: 'p-rating',\n imports: [CommonModule, AutoFocus, StarFillIcon, StarIcon, SharedModule],\n standalone: true,\n template: `\n <ng-template ngFor [ngForOf]=\"starsArray\" let-star let-i=\"index\">\n <div [class]=\"cx('option', { star, value })\" (click)=\"onOptionClick($event, star + 1)\">\n <span class=\"p-hidden-accessible\" [attr.data-p-hidden-accessible]=\"true\">\n <input\n type=\"radio\"\n [value]=\"star + 1\"\n [attr.name]=\"name() || nameattr + '_name'\"\n [attr.value]=\"modelValue()\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [checked]=\"value === star + 1\"\n [attr.aria-label]=\"starAriaLabel(star + 1)\"\n (focus)=\"onInputFocus($event, star + 1)\"\n (blur)=\"onInputBlur($event)\"\n (change)=\"onChange($event, star + 1)\"\n [pAutoFocus]=\"autofocus\"\n />\n </span>\n @if (star + 1 <= value) {\n @if (onIconTemplate || _onIconTemplate) {\n <ng-container *ngTemplateOutlet=\"onIconTemplate || _onIconTemplate; context: { $implicit: star + 1, class: cx('onIcon') }\"></ng-container>\n } @else {\n <span [class]=\"cx('onIcon')\" *ngIf=\"iconOnClass\" [ngStyle]=\"iconOnStyle\" [ngClass]=\"iconOnClass\" [attr.data-pc-section]=\"'onIcon'\"></span>\n <svg data-p-icon=\"star-fill\" *ngIf=\"!iconOnClass\" [ngStyle]=\"iconOnStyle\" [class]=\"cx('onIcon')\" [attr.data-pc-section]=\"'onIcon'\" />\n }\n } @else {\n @if (offIconTemplate || _offIconTemplate) {\n <ng-container *ngTemplateOutlet=\"offIconTemplate || _offIconTemplate; context: { $implicit: star + 1, class: cx('offIcon') }\"></ng-container>\n } @else {\n <span [class]=\"cx('offIcon')\" *ngIf=\"iconOffClass\" [ngStyle]=\"iconOffStyle\" [ngClass]=\"iconOffClass\" [attr.data-pc-section]=\"'offIcon'\"></span>\n <svg data-p-icon=\"star\" *ngIf=\"!iconOffClass\" [ngStyle]=\"iconOffStyle\" [class]=\"cx('offIcon')\" [attr.data-pc-section]=\"'offIcon'\" />\n }\n }\n </div>\n </ng-template>\n `,\n providers: [RATING_VALUE_ACCESSOR, RatingStyle],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': \"cx('root')\",\n '[attr.data-pc-name]': \"'rating'\",\n '[attr.data-pc-section]': \"'root'\"\n }\n})\nexport class Rating extends BaseEditableHolder implements OnInit {\n /**\n * When present, changing the value is not possible.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) readonly: boolean | undefined;\n /**\n * Number of stars.\n * @group Props\n */\n @Input({ transform: numberAttribute }) stars: number = 5;\n /**\n * Style class of the on icon.\n * @group Props\n */\n @Input() iconOnClass: string | undefined;\n /**\n * Inline style of the on icon.\n * @group Props\n */\n @Input() iconOnStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the off icon.\n * @group Props\n */\n @Input() iconOffClass: string | undefined;\n /**\n * Inline style of the off icon.\n * @group Props\n */\n @Input() iconOffStyle: { [klass: string]: any } | null | undefined;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Emitted on value change.\n * @param {RatingRateEvent} value - Custom rate event.\n * @group Emits\n */\n @Output() onRate: EventEmitter<RatingRateEvent> = new EventEmitter<RatingRateEvent>();\n /**\n * Emitted when the rating receives focus.\n * @param {Event} value - Browser event.\n * @group Emits\n */\n @Output() onFocus: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n /**\n * Emitted when the rating loses focus.\n * @param {Event} value - Browser event.\n * @group Emits\n */\n @Output() onBlur: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n /**\n * Custom on icon template.\n * @group Templates\n */\n @ContentChild('onicon', { descendants: false }) onIconTemplate: Nullable<TemplateRef<any>>;\n /**\n * Custom off icon template.\n * @group Templates\n */\n @ContentChild('officon', { descendants: false }) offIconTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChildren(PrimeTemplate) templates!: QueryList<PrimeTemplate>;\n\n value: Nullable<number>;\n\n public starsArray: Nullable<number[]>;\n\n isFocusVisibleItem: boolean = true;\n\n focusedOptionIndex = signal<number>(-1);\n\n nameattr: string | undefined;\n\n _componentStyle = inject(RatingStyle);\n\n _onIconTemplate: TemplateRef<any> | undefined;\n\n _offIconTemplate: TemplateRef<any> | undefined;\n\n ngOnInit() {\n super.ngOnInit();\n this.nameattr = this.nameattr || uuid('pn_id_');\n this.starsArray = [];\n for (let i = 0; i < this.stars; i++) {\n this.starsArray[i] = i;\n }\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'onicon':\n this._onIconTemplate = item.template;\n break;\n\n case 'officon':\n this._offIconTemplate = item.template;\n break;\n }\n });\n }\n\n onOptionClick(event, value) {\n if (!this.readonly && !this.$disabled()) {\n this.onOptionSelect(event, value);\n this.isFocusVisibleItem = false;\n const firstFocusableEl = <any>getFirstFocusableElement(event.currentTarget, '');\n\n firstFocusableEl && focus(firstFocusableEl);\n }\n }\n\n onOptionSelect(event, value) {\n if (!this.readonly && !this.$disabled()) {\n if (this.focusedOptionIndex() === value || value === this.value) {\n this.focusedOptionIndex.set(-1);\n this.updateModel(event, null);\n } else {\n this.focusedOptionIndex.set(value);\n this.updateModel(event, value || null);\n }\n }\n }\n\n onChange(event, value) {\n this.onOptionSelect(event, value);\n this.isFocusVisibleItem = true;\n }\n\n onInputBlur(event) {\n this.focusedOptionIndex.set(-1);\n this.onBlur.emit(event);\n }\n\n onInputFocus(event, value) {\n if (!this.readonly && !this.$disabled()) {\n this.focusedOptionIndex.set(value);\n this.isFocusVisibleItem = event.sourceCapabilities?.firesTouchEvents === false;\n\n this.onFocus.emit(event);\n }\n }\n\n updateModel(event, value) {\n this.writeValue(value);\n this.onModelChange(this.value);\n this.onModelTouched();\n\n this.onRate.emit({\n originalEvent: event,\n value\n });\n }\n\n starAriaLabel(value) {\n return value === 1 ? this.config.translation.aria?.star : this.config.translation.aria?.stars?.replace(/{star}/g, value);\n }\n\n getIconTemplate(i: number): Nullable<TemplateRef<any>> {\n return !this.value || i >= this.value ? this.offIconTemplate || this._offIconTemplate : this.onIconTemplate || this.offIconTemplate;\n }\n\n /**\n * @override\n *\n * @see {@link BaseEditableHolder.writeControlValue}\n * Writes the value to the control.\n */\n writeControlValue(value: any, setModelValue: (value: any) => void): void {\n this.value = value;\n setModelValue(value);\n }\n\n get isCustomIcon(): boolean {\n return !!(this.onIconTemplate || this._onIconTemplate || this.offIconTemplate || this._offIconTemplate);\n }\n}\n\n@NgModule({\n imports: [Rating, SharedModule],\n exports: [Rating, SharedModule]\n})\nexport class RatingModule {}\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-rating.mjs","sources":["../../src/rating/style/ratingstyle.ts","../../src/rating/rating.ts","../../src/rating/primeng-rating.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style as rating_style } from '@primeuix/styles/rating';\nimport { BaseStyle } from 'primeng/base';\n\nconst style = /*css*/ `\n ${rating_style}\n\n /* For PrimeNG */\n p-rating.ng-invalid.ng-dirty > .p-rating > .p-rating-icon {\n stroke: dt('rating.invalid.icon.color');\n }\n`;\n\nconst classes = {\n root: ({ instance }) => [\n 'p-rating',\n {\n 'p-readonly': instance.readonly,\n 'p-disabled': instance.$disabled()\n }\n ],\n option: ({ instance, star, value }) => [\n 'p-rating-option',\n\n {\n 'p-rating-option-active': star + 1 <= value,\n 'p-focus-visible': star + 1 === instance.focusedOptionIndex() && instance.isFocusVisibleItem\n }\n ],\n onIcon: ({ instance }) => ['p-rating-icon p-rating-on-icon', { 'p-invalid': instance.invalid() }],\n offIcon: ({ instance }) => ['p-rating-icon p-rating-off-icon', { 'p-invalid': instance.invalid() }]\n};\n\n@Injectable()\nexport class RatingStyle extends BaseStyle {\n name = 'rating';\n\n style = style;\n\n classes = classes;\n}\n\n/**\n *\n * Rating component is a star based selection input.\n *\n * [Live Demo](https://www.primeng.org/rating/)\n *\n * @module ratingstyle\n *\n */\nexport enum RatingClasses {\n /**\n * Class name of the root element\n */\n root = 'p-rating',\n /**\n * Class name of the option element\n */\n option = 'p-rating-option',\n /**\n * Class name of the on icon element\n */\n onIcon = 'p-rating-on-icon',\n /**\n * Class name of the off icon element\n */\n offIcon = 'p-rating-off-icon'\n}\n\nexport interface RatingStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n EventEmitter,\n forwardRef,\n inject,\n InjectionToken,\n Input,\n NgModule,\n numberAttribute,\n OnInit,\n Output,\n QueryList,\n signal,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { focus, getFirstFocusableElement, uuid } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { AutoFocus } from 'primeng/autofocus';\nimport { PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { BaseEditableHolder } from 'primeng/baseeditableholder';\nimport { Bind } from 'primeng/bind';\nimport { BindModule } from 'primeng/bind';\nimport { StarFillIcon, StarIcon } from 'primeng/icons';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { RatingPassThrough } from 'primeng/types/rating';\nimport type { RatingRateEvent } from 'primeng/types/rating';\nimport { RatingStyle } from './style/ratingstyle';\n\nconst RATING_INSTANCE = new InjectionToken<Rating>('RATING_INSTANCE');\n\nexport const RATING_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Rating),\n multi: true\n};\n/**\n * Rating is an extension to standard radio button element with theming.\n * @group Components\n */\n@Component({\n selector: 'p-rating',\n imports: [CommonModule, AutoFocus, StarFillIcon, StarIcon, SharedModule, BindModule],\n standalone: true,\n template: `\n <ng-template ngFor [ngForOf]=\"starsArray\" let-star let-i=\"index\">\n <div [class]=\"cx('option', { star, value })\" (click)=\"onOptionClick($event, star + 1)\" [pBind]=\"ptm('option')\">\n <span class=\"p-hidden-accessible\" [attr.data-p-hidden-accessible]=\"true\" [pBind]=\"ptm('hiddenOptionInputContainer')\">\n <input\n type=\"radio\"\n [value]=\"star + 1\"\n [attr.name]=\"name() || nameattr + '_name'\"\n [attr.value]=\"modelValue()\"\n [attr.required]=\"required() ? '' : undefined\"\n [attr.readonly]=\"readonly ? '' : undefined\"\n [attr.disabled]=\"$disabled() ? '' : undefined\"\n [checked]=\"value === star + 1\"\n [attr.aria-label]=\"starAriaLabel(star + 1)\"\n (focus)=\"onInputFocus($event, star + 1)\"\n (blur)=\"onInputBlur($event)\"\n (change)=\"onChange($event, star + 1)\"\n [pAutoFocus]=\"autofocus\"\n [pBind]=\"ptm('hiddenOptionInput')\"\n />\n </span>\n @if (star + 1 <= value) {\n @if (onIconTemplate || _onIconTemplate) {\n <ng-container *ngTemplateOutlet=\"onIconTemplate || _onIconTemplate; context: { $implicit: star + 1, class: cx('onIcon') }\"></ng-container>\n } @else {\n <span [class]=\"cx('onIcon')\" *ngIf=\"iconOnClass\" [ngStyle]=\"iconOnStyle\" [ngClass]=\"iconOnClass\" [pBind]=\"ptm('onIcon')\"></span>\n <svg data-p-icon=\"star-fill\" *ngIf=\"!iconOnClass\" [ngStyle]=\"iconOnStyle\" [class]=\"cx('onIcon')\" [pBind]=\"ptm('onIcon')\" />\n }\n } @else {\n @if (offIconTemplate || _offIconTemplate) {\n <ng-container *ngTemplateOutlet=\"offIconTemplate || _offIconTemplate; context: { $implicit: star + 1, class: cx('offIcon') }\"></ng-container>\n } @else {\n <span [class]=\"cx('offIcon')\" *ngIf=\"iconOffClass\" [ngStyle]=\"iconOffStyle\" [ngClass]=\"iconOffClass\" [pBind]=\"ptm('offIcon')\"></span>\n <svg data-p-icon=\"star\" *ngIf=\"!iconOffClass\" [ngStyle]=\"iconOffStyle\" [class]=\"cx('offIcon')\" [pBind]=\"ptm('offIcon')\" />\n }\n }\n </div>\n </ng-template>\n `,\n providers: [RATING_VALUE_ACCESSOR, RatingStyle, { provide: RATING_INSTANCE, useExisting: Rating }, { provide: PARENT_INSTANCE, useExisting: Rating }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': \"cx('root')\"\n },\n hostDirectives: [Bind]\n})\nexport class Rating extends BaseEditableHolder<RatingPassThrough> {\n $pcRating: Rating | undefined = inject(RATING_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n bindDirectiveInstance = inject(Bind, { self: true });\n\n onAfterViewChecked(): void {\n this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));\n }\n\n /**\n * When present, changing the value is not possible.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) readonly: boolean | undefined;\n /**\n * Number of stars.\n * @group Props\n */\n @Input({ transform: numberAttribute }) stars: number = 5;\n /**\n * Style class of the on icon.\n * @group Props\n */\n @Input() iconOnClass: string | undefined;\n /**\n * Inline style of the on icon.\n * @group Props\n */\n @Input() iconOnStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the off icon.\n * @group Props\n */\n @Input() iconOffClass: string | undefined;\n /**\n * Inline style of the off icon.\n * @group Props\n */\n @Input() iconOffStyle: { [klass: string]: any } | null | undefined;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Emitted on value change.\n * @param {RatingRateEvent} value - Custom rate event.\n * @group Emits\n */\n @Output() onRate: EventEmitter<RatingRateEvent> = new EventEmitter<RatingRateEvent>();\n /**\n * Emitted when the rating receives focus.\n * @param {Event} value - Browser event.\n * @group Emits\n */\n @Output() onFocus: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n /**\n * Emitted when the rating loses focus.\n * @param {Event} value - Browser event.\n * @group Emits\n */\n @Output() onBlur: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n /**\n * Custom on icon template.\n * @group Templates\n */\n @ContentChild('onicon', { descendants: false }) onIconTemplate: Nullable<TemplateRef<any>>;\n /**\n * Custom off icon template.\n * @group Templates\n */\n @ContentChild('officon', { descendants: false }) offIconTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChildren(PrimeTemplate) templates!: QueryList<PrimeTemplate>;\n\n value: Nullable<number>;\n\n public starsArray: Nullable<number[]>;\n\n isFocusVisibleItem: boolean = true;\n\n focusedOptionIndex = signal<number>(-1);\n\n nameattr: string | undefined;\n\n _componentStyle = inject(RatingStyle);\n\n _onIconTemplate: TemplateRef<any> | undefined;\n\n _offIconTemplate: TemplateRef<any> | undefined;\n\n onInit() {\n this.nameattr = this.nameattr || uuid('pn_id_');\n this.starsArray = [];\n for (let i = 0; i < this.stars; i++) {\n this.starsArray[i] = i;\n }\n }\n\n onAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'onicon':\n this._onIconTemplate = item.template;\n break;\n\n case 'officon':\n this._offIconTemplate = item.template;\n break;\n }\n });\n }\n\n onOptionClick(event, value) {\n if (!this.readonly && !this.$disabled()) {\n this.onOptionSelect(event, value);\n this.isFocusVisibleItem = false;\n const firstFocusableEl = <any>getFirstFocusableElement(event.currentTarget, '');\n\n firstFocusableEl && focus(firstFocusableEl);\n }\n }\n\n onOptionSelect(event, value) {\n if (!this.readonly && !this.$disabled()) {\n if (this.focusedOptionIndex() === value || value === this.value) {\n this.focusedOptionIndex.set(-1);\n this.updateModel(event, null);\n } else {\n this.focusedOptionIndex.set(value);\n this.updateModel(event, value || null);\n }\n }\n }\n\n onChange(event, value) {\n this.onOptionSelect(event, value);\n this.isFocusVisibleItem = true;\n }\n\n onInputBlur(event) {\n this.focusedOptionIndex.set(-1);\n this.onBlur.emit(event);\n }\n\n onInputFocus(event, value) {\n if (!this.readonly && !this.$disabled()) {\n this.focusedOptionIndex.set(value);\n this.isFocusVisibleItem = event.sourceCapabilities?.firesTouchEvents === false;\n\n this.onFocus.emit(event);\n }\n }\n\n updateModel(event, value) {\n this.writeValue(value);\n this.onModelChange(this.value);\n this.onModelTouched();\n\n this.onRate.emit({\n originalEvent: event,\n value\n });\n }\n\n starAriaLabel(value) {\n return value === 1 ? this.config.translation.aria?.star : this.config.translation.aria?.stars?.replace(/{star}/g, value);\n }\n\n getIconTemplate(i: number): Nullable<TemplateRef<any>> {\n return !this.value || i >= this.value ? this.offIconTemplate || this._offIconTemplate : this.onIconTemplate || this.offIconTemplate;\n }\n\n /**\n * @override\n *\n * @see {@link BaseEditableHolder.writeControlValue}\n * Writes the value to the control.\n */\n writeControlValue(value: any, setModelValue: (value: any) => void): void {\n this.value = value;\n setModelValue(value);\n }\n\n get isCustomIcon(): boolean {\n return !!(this.onIconTemplate || this._onIconTemplate || this.offIconTemplate || this._offIconTemplate);\n }\n}\n\n@NgModule({\n imports: [Rating, SharedModule],\n exports: [Rating, SharedModule]\n})\nexport class RatingModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["rating_style"],"mappings":"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"}
@@ -3,11 +3,12 @@ import * as i0 from '@angular/core';
3
3
  import { Injectable, inject, NgZone, effect, Directive, NgModule } from '@angular/core';
4
4
  import { removeClass, getHeight, getWidth, getOuterWidth, getOuterHeight, getOffset, addClass, remove } from '@primeuix/utils';
5
5
  import { BaseComponent } from 'primeng/basecomponent';
6
- import { style } from '@primeuix/styles/ripple';
6
+ import { style as style$1 } from '@primeuix/styles/ripple';
7
7
  import { BaseStyle } from 'primeng/base';
8
8
 
9
- const theme = /*css*/ `
10
- ${style}
9
+ const style = /*css*/ `
10
+ ${style$1}
11
+
11
12
  /* For PrimeNG */
12
13
  .p-ripple {
13
14
  overflow: hidden;
@@ -30,12 +31,12 @@ const classes = {
30
31
  };
31
32
  class RippleStyle extends BaseStyle {
32
33
  name = 'ripple';
33
- theme = theme;
34
+ style = style;
34
35
  classes = classes;
35
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RippleStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
36
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RippleStyle });
36
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RippleStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
37
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RippleStyle });
37
38
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RippleStyle, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RippleStyle, decorators: [{
39
40
  type: Injectable
40
41
  }] });
41
42
  /**
@@ -81,9 +82,7 @@ class Ripple extends BaseComponent {
81
82
  }
82
83
  });
83
84
  }
84
- ngAfterViewInit() {
85
- super.ngAfterViewInit();
86
- }
85
+ onAfterViewInit() { }
87
86
  onMouseDown(event) {
88
87
  let ink = this.getInk();
89
88
  if (!ink || this.document.defaultView?.getComputedStyle(ink, null).display === 'none') {
@@ -149,16 +148,15 @@ class Ripple extends BaseComponent {
149
148
  remove(ink);
150
149
  }
151
150
  }
152
- ngOnDestroy() {
151
+ onDestroy() {
153
152
  if (this.config && this.config.ripple()) {
154
153
  this.remove();
155
154
  }
156
- super.ngOnDestroy();
157
155
  }
158
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Ripple, deps: [], target: i0.ɵɵFactoryTarget.Directive });
159
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.2", type: Ripple, isStandalone: true, selector: "[pRipple]", host: { classAttribute: "p-ripple" }, providers: [RippleStyle], usesInheritance: true, ngImport: i0 });
156
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Ripple, deps: [], target: i0.ɵɵFactoryTarget.Directive });
157
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: Ripple, isStandalone: true, selector: "[pRipple]", host: { classAttribute: "p-ripple" }, providers: [RippleStyle], usesInheritance: true, ngImport: i0 });
160
158
  }
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Ripple, decorators: [{
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Ripple, decorators: [{
162
160
  type: Directive,
163
161
  args: [{
164
162
  selector: '[pRipple]',
@@ -170,11 +168,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
170
168
  }]
171
169
  }], ctorParameters: () => [] });
172
170
  class RippleModule {
173
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
174
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.2", ngImport: i0, type: RippleModule, imports: [Ripple], exports: [Ripple] });
175
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RippleModule });
171
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
172
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: RippleModule, imports: [Ripple], exports: [Ripple] });
173
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RippleModule });
176
174
  }
177
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: RippleModule, decorators: [{
175
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: RippleModule, decorators: [{
178
176
  type: NgModule,
179
177
  args: [{
180
178
  imports: [Ripple],
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-ripple.mjs","sources":["../../src/ripple/style/ripplestyle.ts","../../src/ripple/ripple.ts","../../src/ripple/primeng-ripple.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/ripple';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = /*css*/ `\n ${style}\n /* For PrimeNG */\n .p-ripple {\n overflow: hidden;\n position: relative;\n }\n\n .p-ripple-disabled .p-ink {\n display: none !important;\n }\n\n @keyframes ripple {\n 100% {\n opacity: 0;\n transform: scale(2.5);\n }\n }\n`;\n\nconst classes = {\n root: 'p-ink'\n};\n\n@Injectable()\nexport class RippleStyle extends BaseStyle {\n name = 'ripple';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Ripple directive adds ripple effect to the host element.\n *\n * [Live Demo](https://www.primeng.org/ripple)\n *\n * @module ripplestyle\n *\n */\n\nexport enum RippleClasses {\n /**\n * Class name of the root element\n */\n root = 'p-ink'\n}\n\nexport interface RippleStyle extends BaseStyle {}\n","import { isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Directive, effect, inject, NgModule, NgZone, OnDestroy } from '@angular/core';\nimport { addClass, getHeight, getOffset, getOuterHeight, getOuterWidth, getWidth, removeClass, remove as utils_remove } from '@primeuix/utils';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { VoidListener } from 'primeng/ts-helpers';\nimport { RippleStyle } from './style/ripplestyle';\n\n/**\n * Ripple directive adds ripple effect to the host element.\n * @group Components\n */\n@Directive({\n selector: '[pRipple]',\n host: {\n class: 'p-ripple'\n },\n standalone: true,\n providers: [RippleStyle]\n})\nexport class Ripple extends BaseComponent implements AfterViewInit, OnDestroy {\n zone: NgZone = inject(NgZone);\n\n _componentStyle = inject(RippleStyle);\n\n animationListener: VoidListener;\n\n mouseDownListener: VoidListener;\n\n timeout: any;\n\n constructor() {\n super();\n effect(() => {\n if (isPlatformBrowser(this.platformId)) {\n if (this.config.ripple()) {\n this.zone.runOutsideAngular(() => {\n this.create();\n this.mouseDownListener = this.renderer.listen(this.el.nativeElement, 'mousedown', this.onMouseDown.bind(this));\n });\n } else {\n this.remove();\n }\n }\n });\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n }\n\n onMouseDown(event: MouseEvent) {\n let ink = this.getInk();\n if (!ink || this.document.defaultView?.getComputedStyle(ink, null).display === 'none') {\n return;\n }\n\n removeClass(ink, 'p-ink-active');\n if (!getHeight(ink) && !getWidth(ink)) {\n let d = Math.max(getOuterWidth(this.el.nativeElement), getOuterHeight(this.el.nativeElement));\n ink.style.height = d + 'px';\n ink.style.width = d + 'px';\n }\n\n let offset = <any>getOffset(this.el.nativeElement);\n let x = event.pageX - offset.left + this.document.body.scrollTop - getWidth(ink) / 2;\n let y = event.pageY - offset.top + this.document.body.scrollLeft - getHeight(ink) / 2;\n\n this.renderer.setStyle(ink, 'top', y + 'px');\n this.renderer.setStyle(ink, 'left', x + 'px');\n addClass(ink, 'p-ink-active');\n\n this.timeout = setTimeout(() => {\n let ink = this.getInk();\n if (ink) {\n removeClass(ink, 'p-ink-active');\n }\n }, 401);\n }\n\n getInk() {\n const children = this.el.nativeElement.children;\n for (let i = 0; i < children.length; i++) {\n if (typeof children[i].className === 'string' && children[i].className.indexOf('p-ink') !== -1) {\n return children[i];\n }\n }\n return null;\n }\n\n resetInk() {\n let ink = this.getInk();\n if (ink) {\n removeClass(ink, 'p-ink-active');\n }\n }\n\n onAnimationEnd(event: Event) {\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n removeClass(event.currentTarget as any, 'p-ink-active');\n }\n\n create() {\n let ink = this.renderer.createElement('span');\n this.renderer.addClass(ink, 'p-ink');\n this.renderer.appendChild(this.el.nativeElement, ink);\n this.renderer.setAttribute(ink, 'aria-hidden', 'true');\n this.renderer.setAttribute(ink, 'role', 'presentation');\n\n if (!this.animationListener) {\n this.animationListener = this.renderer.listen(ink, 'animationend', this.onAnimationEnd.bind(this));\n }\n }\n\n remove() {\n let ink = this.getInk();\n if (ink) {\n this.mouseDownListener && this.mouseDownListener();\n this.animationListener && this.animationListener();\n this.mouseDownListener = null;\n this.animationListener = null;\n\n utils_remove(ink);\n }\n }\n\n ngOnDestroy() {\n if (this.config && this.config.ripple()) {\n this.remove();\n }\n\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [Ripple],\n exports: [Ripple]\n})\nexport class RippleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["utils_remove"],"mappings":";;;;;;;;AAIA,MAAM,KAAK,WAAW;MAChB,KAAK;;;;;;;;;;;;;;;;;CAiBV;AAED,MAAM,OAAO,GAAG;AACZ,IAAA,IAAI,EAAE;CACT;AAGK,MAAO,WAAY,SAAQ,SAAS,CAAA;IACtC,IAAI,GAAG,QAAQ;IAEf,KAAK,GAAG,KAAK;IAEb,OAAO,GAAG,OAAO;uGALR,WAAW,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;2GAAX,WAAW,EAAA,CAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBADvB;;AASD;;;;;;;;AAQG;IAES;AAAZ,CAAA,UAAY,aAAa,EAAA;AACrB;;AAEG;AACH,IAAA,aAAA,CAAA,MAAA,CAAA,GAAA,OAAc;AAClB,CAAC,EALW,aAAa,KAAb,aAAa,GAAA,EAAA,CAAA,CAAA;;ACxCzB;;;AAGG;AASG,MAAO,MAAO,SAAQ,aAAa,CAAA;AACrC,IAAA,IAAI,GAAW,MAAM,CAAC,MAAM,CAAC;AAE7B,IAAA,eAAe,GAAG,MAAM,CAAC,WAAW,CAAC;AAErC,IAAA,iBAAiB;AAEjB,IAAA,iBAAiB;AAEjB,IAAA,OAAO;AAEP,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,EAAE;QACP,MAAM,CAAC,MAAK;AACR,YAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;AACpC,gBAAA,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;AACtB,oBAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAK;wBAC7B,IAAI,CAAC,MAAM,EAAE;wBACb,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClH,oBAAA,CAAC,CAAC;gBACN;qBAAO;oBACH,IAAI,CAAC,MAAM,EAAE;gBACjB;YACJ;AACJ,QAAA,CAAC,CAAC;IACN;IAEA,eAAe,GAAA;QACX,KAAK,CAAC,eAAe,EAAE;IAC3B;AAEA,IAAA,WAAW,CAAC,KAAiB,EAAA;AACzB,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;QACvB,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,EAAE;YACnF;QACJ;AAEA,QAAA,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC;AAChC,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACnC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;YAC7F,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI;YAC3B,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI;QAC9B;QAEA,IAAI,MAAM,GAAQ,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;QAClD,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;QACpF,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;AAErF,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;AAC5C,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC;AAC7C,QAAA,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC;AAE7B,QAAA,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,MAAK;AAC3B,YAAA,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;YACvB,IAAI,GAAG,EAAE;AACL,gBAAA,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC;YACpC;QACJ,CAAC,EAAE,GAAG,CAAC;IACX;IAEA,MAAM,GAAA;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ;AAC/C,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;AAC5F,gBAAA,OAAO,QAAQ,CAAC,CAAC,CAAC;YACtB;QACJ;AACA,QAAA,OAAO,IAAI;IACf;IAEA,QAAQ,GAAA;AACJ,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;QACvB,IAAI,GAAG,EAAE;AACL,YAAA,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC;QACpC;IACJ;AAEA,IAAA,cAAc,CAAC,KAAY,EAAA;AACvB,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;QAC9B;AACA,QAAA,WAAW,CAAC,KAAK,CAAC,aAAoB,EAAE,cAAc,CAAC;IAC3D;IAEA,MAAM,GAAA;QACF,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;AACpC,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC;QACrD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC;AAEvD,QAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YACzB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtG;IACJ;IAEA,MAAM,GAAA;AACF,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;QACvB,IAAI,GAAG,EAAE;AACL,YAAA,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAClD,YAAA,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAClD,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;AAC7B,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;YAE7BA,MAAY,CAAC,GAAG,CAAC;QACrB;IACJ;IAEA,WAAW,GAAA;QACP,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,MAAM,EAAE;QACjB;QAEA,KAAK,CAAC,WAAW,EAAE;IACvB;uGAlHS,MAAM,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAN,MAAM,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAFJ,CAAC,WAAW,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEf,MAAM,EAAA,UAAA,EAAA,CAAA;kBARlB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE;AACV,qBAAA;AACD,oBAAA,UAAU,EAAE,IAAI;oBAChB,SAAS,EAAE,CAAC,WAAW;AAC1B,iBAAA;;MA0HY,YAAY,CAAA;uGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAZ,YAAY,EAAA,OAAA,EAAA,CAzHZ,MAAM,CAAA,EAAA,OAAA,EAAA,CAAN,MAAM,CAAA,EAAA,CAAA;wGAyHN,YAAY,EAAA,CAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,MAAM,CAAC;oBACjB,OAAO,EAAE,CAAC,MAAM;AACnB,iBAAA;;;AC3ID;;AAEG;;;;"}
1
+ {"version":3,"file":"primeng-ripple.mjs","sources":["../../src/ripple/style/ripplestyle.ts","../../src/ripple/ripple.ts","../../src/ripple/primeng-ripple.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style as ripple_style } from '@primeuix/styles/ripple';\nimport { BaseStyle } from 'primeng/base';\n\nconst style = /*css*/ `\n ${ripple_style}\n\n /* For PrimeNG */\n .p-ripple {\n overflow: hidden;\n position: relative;\n }\n\n .p-ripple-disabled .p-ink {\n display: none !important;\n }\n\n @keyframes ripple {\n 100% {\n opacity: 0;\n transform: scale(2.5);\n }\n }\n`;\n\nconst classes = {\n root: 'p-ink'\n};\n\n@Injectable()\nexport class RippleStyle extends BaseStyle {\n name = 'ripple';\n\n style = style;\n\n classes = classes;\n}\n\n/**\n *\n * Ripple directive adds ripple effect to the host element.\n *\n * [Live Demo](https://www.primeng.org/ripple)\n *\n * @module ripplestyle\n *\n */\n\nexport enum RippleClasses {\n /**\n * Class name of the root element\n */\n root = 'p-ink'\n}\n\nexport interface RippleStyle extends BaseStyle {}\n","import { isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Directive, effect, inject, NgModule, NgZone, OnDestroy } from '@angular/core';\nimport { addClass, getHeight, getOffset, getOuterHeight, getOuterWidth, getWidth, removeClass, remove as utils_remove } from '@primeuix/utils';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { VoidListener } from 'primeng/ts-helpers';\nimport { RippleStyle } from './style/ripplestyle';\n\n/**\n * Ripple directive adds ripple effect to the host element.\n * @group Components\n */\n@Directive({\n selector: '[pRipple]',\n host: {\n class: 'p-ripple'\n },\n standalone: true,\n providers: [RippleStyle]\n})\nexport class Ripple extends BaseComponent {\n zone: NgZone = inject(NgZone);\n\n _componentStyle = inject(RippleStyle);\n\n animationListener: VoidListener;\n\n mouseDownListener: VoidListener;\n\n timeout: any;\n\n constructor() {\n super();\n effect(() => {\n if (isPlatformBrowser(this.platformId)) {\n if (this.config.ripple()) {\n this.zone.runOutsideAngular(() => {\n this.create();\n this.mouseDownListener = this.renderer.listen(this.el.nativeElement, 'mousedown', this.onMouseDown.bind(this));\n });\n } else {\n this.remove();\n }\n }\n });\n }\n\n onAfterViewInit() {}\n\n onMouseDown(event: MouseEvent) {\n let ink = this.getInk();\n if (!ink || this.document.defaultView?.getComputedStyle(ink, null).display === 'none') {\n return;\n }\n\n removeClass(ink, 'p-ink-active');\n if (!getHeight(ink) && !getWidth(ink)) {\n let d = Math.max(getOuterWidth(this.el.nativeElement), getOuterHeight(this.el.nativeElement));\n ink.style.height = d + 'px';\n ink.style.width = d + 'px';\n }\n\n let offset = <any>getOffset(this.el.nativeElement);\n let x = event.pageX - offset.left + this.document.body.scrollTop - getWidth(ink) / 2;\n let y = event.pageY - offset.top + this.document.body.scrollLeft - getHeight(ink) / 2;\n\n this.renderer.setStyle(ink, 'top', y + 'px');\n this.renderer.setStyle(ink, 'left', x + 'px');\n addClass(ink, 'p-ink-active');\n\n this.timeout = setTimeout(() => {\n let ink = this.getInk();\n if (ink) {\n removeClass(ink, 'p-ink-active');\n }\n }, 401);\n }\n\n getInk() {\n const children = this.el.nativeElement.children;\n for (let i = 0; i < children.length; i++) {\n if (typeof children[i].className === 'string' && children[i].className.indexOf('p-ink') !== -1) {\n return children[i];\n }\n }\n return null;\n }\n\n resetInk() {\n let ink = this.getInk();\n if (ink) {\n removeClass(ink, 'p-ink-active');\n }\n }\n\n onAnimationEnd(event: Event) {\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n removeClass(event.currentTarget as any, 'p-ink-active');\n }\n\n create() {\n let ink = this.renderer.createElement('span');\n this.renderer.addClass(ink, 'p-ink');\n this.renderer.appendChild(this.el.nativeElement, ink);\n this.renderer.setAttribute(ink, 'aria-hidden', 'true');\n this.renderer.setAttribute(ink, 'role', 'presentation');\n\n if (!this.animationListener) {\n this.animationListener = this.renderer.listen(ink, 'animationend', this.onAnimationEnd.bind(this));\n }\n }\n\n remove() {\n let ink = this.getInk();\n if (ink) {\n this.mouseDownListener && this.mouseDownListener();\n this.animationListener && this.animationListener();\n this.mouseDownListener = null;\n this.animationListener = null;\n\n utils_remove(ink);\n }\n }\n\n onDestroy() {\n if (this.config && this.config.ripple()) {\n this.remove();\n }\n }\n}\n\n@NgModule({\n imports: [Ripple],\n exports: [Ripple]\n})\nexport class RippleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["ripple_style","utils_remove"],"mappings":";;;;;;;;AAIA,MAAM,KAAK,WAAW;MAChBA,OAAY;;;;;;;;;;;;;;;;;;CAkBjB;AAED,MAAM,OAAO,GAAG;AACZ,IAAA,IAAI,EAAE;CACT;AAGK,MAAO,WAAY,SAAQ,SAAS,CAAA;IACtC,IAAI,GAAG,QAAQ;IAEf,KAAK,GAAG,KAAK;IAEb,OAAO,GAAG,OAAO;uGALR,WAAW,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;2GAAX,WAAW,EAAA,CAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBADvB;;AASD;;;;;;;;AAQG;IAES;AAAZ,CAAA,UAAY,aAAa,EAAA;AACrB;;AAEG;AACH,IAAA,aAAA,CAAA,MAAA,CAAA,GAAA,OAAc;AAClB,CAAC,EALW,aAAa,KAAb,aAAa,GAAA,EAAA,CAAA,CAAA;;ACzCzB;;;AAGG;AASG,MAAO,MAAO,SAAQ,aAAa,CAAA;AACrC,IAAA,IAAI,GAAW,MAAM,CAAC,MAAM,CAAC;AAE7B,IAAA,eAAe,GAAG,MAAM,CAAC,WAAW,CAAC;AAErC,IAAA,iBAAiB;AAEjB,IAAA,iBAAiB;AAEjB,IAAA,OAAO;AAEP,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,EAAE;QACP,MAAM,CAAC,MAAK;AACR,YAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;AACpC,gBAAA,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;AACtB,oBAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAK;wBAC7B,IAAI,CAAC,MAAM,EAAE;wBACb,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClH,oBAAA,CAAC,CAAC;gBACN;qBAAO;oBACH,IAAI,CAAC,MAAM,EAAE;gBACjB;YACJ;AACJ,QAAA,CAAC,CAAC;IACN;AAEA,IAAA,eAAe,KAAI;AAEnB,IAAA,WAAW,CAAC,KAAiB,EAAA;AACzB,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;QACvB,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,EAAE;YACnF;QACJ;AAEA,QAAA,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC;AAChC,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACnC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;YAC7F,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI;YAC3B,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI;QAC9B;QAEA,IAAI,MAAM,GAAQ,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;QAClD,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;QACpF,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;AAErF,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;AAC5C,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC;AAC7C,QAAA,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC;AAE7B,QAAA,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,MAAK;AAC3B,YAAA,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;YACvB,IAAI,GAAG,EAAE;AACL,gBAAA,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC;YACpC;QACJ,CAAC,EAAE,GAAG,CAAC;IACX;IAEA,MAAM,GAAA;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ;AAC/C,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;AAC5F,gBAAA,OAAO,QAAQ,CAAC,CAAC,CAAC;YACtB;QACJ;AACA,QAAA,OAAO,IAAI;IACf;IAEA,QAAQ,GAAA;AACJ,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;QACvB,IAAI,GAAG,EAAE;AACL,YAAA,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC;QACpC;IACJ;AAEA,IAAA,cAAc,CAAC,KAAY,EAAA;AACvB,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;QAC9B;AACA,QAAA,WAAW,CAAC,KAAK,CAAC,aAAoB,EAAE,cAAc,CAAC;IAC3D;IAEA,MAAM,GAAA;QACF,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;AACpC,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC;QACrD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC;AAEvD,QAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YACzB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtG;IACJ;IAEA,MAAM,GAAA;AACF,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;QACvB,IAAI,GAAG,EAAE;AACL,YAAA,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAClD,YAAA,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAClD,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;AAC7B,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;YAE7BC,MAAY,CAAC,GAAG,CAAC;QACrB;IACJ;IAEA,SAAS,GAAA;QACL,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,MAAM,EAAE;QACjB;IACJ;uGA9GS,MAAM,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAN,MAAM,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAFJ,CAAC,WAAW,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEf,MAAM,EAAA,UAAA,EAAA,CAAA;kBARlB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE;AACV,qBAAA;AACD,oBAAA,UAAU,EAAE,IAAI;oBAChB,SAAS,EAAE,CAAC,WAAW;AAC1B,iBAAA;;MAsHY,YAAY,CAAA;uGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAZ,YAAY,EAAA,OAAA,EAAA,CArHZ,MAAM,CAAA,EAAA,OAAA,EAAA,CAAN,MAAM,CAAA,EAAA,CAAA;wGAqHN,YAAY,EAAA,CAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,MAAM,CAAC;oBACjB,OAAO,EAAE,CAAC,MAAM;AACnB,iBAAA;;;ACvID;;AAEG;;;;"}