primeng 0.0.0-watch
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.
- package/LICENSE.md +77 -0
- package/README.md +11 -0
- package/accordion/index.d.ts +255 -0
- package/animateonscroll/index.d.ts +71 -0
- package/api/index.d.ts +1820 -0
- package/autocomplete/index.d.ts +925 -0
- package/autofocus/index.d.ts +31 -0
- package/avatar/index.d.ts +115 -0
- package/avatargroup/index.d.ts +60 -0
- package/badge/index.d.ts +156 -0
- package/base/index.d.ts +63 -0
- package/basecomponent/index.d.ts +54 -0
- package/baseeditableholder/index.d.ts +45 -0
- package/baseinput/index.d.ts +73 -0
- package/basemodelholder/index.d.ts +12 -0
- package/blockui/index.d.ts +114 -0
- package/breadcrumb/index.d.ts +179 -0
- package/button/index.d.ts +478 -0
- package/buttongroup/index.d.ts +43 -0
- package/card/index.d.ts +154 -0
- package/carousel/index.d.ts +443 -0
- package/cascadeselect/index.d.ts +729 -0
- package/chart/index.d.ts +128 -0
- package/checkbox/index.d.ts +248 -0
- package/chip/index.d.ts +165 -0
- package/colorpicker/index.d.ts +329 -0
- package/config/index.d.ts +89 -0
- package/confirmdialog/index.d.ts +358 -0
- package/confirmpopup/index.d.ts +218 -0
- package/contextmenu/index.d.ts +356 -0
- package/dataview/index.d.ts +539 -0
- package/datepicker/index.d.ts +1191 -0
- package/dialog/index.d.ts +531 -0
- package/divider/index.d.ts +114 -0
- package/dock/index.d.ts +201 -0
- package/dom/index.d.ts +109 -0
- package/dragdrop/index.d.ts +121 -0
- package/drawer/index.d.ts +309 -0
- package/dynamicdialog/index.d.ts +544 -0
- package/editor/index.d.ts +306 -0
- package/fesm2022/primeng-accordion.mjs +593 -0
- package/fesm2022/primeng-accordion.mjs.map +1 -0
- package/fesm2022/primeng-animateonscroll.mjs +178 -0
- package/fesm2022/primeng-animateonscroll.mjs.map +1 -0
- package/fesm2022/primeng-api.mjs +836 -0
- package/fesm2022/primeng-api.mjs.map +1 -0
- package/fesm2022/primeng-autocomplete.mjs +2073 -0
- package/fesm2022/primeng-autocomplete.mjs.map +1 -0
- package/fesm2022/primeng-autofocus.mjs +83 -0
- package/fesm2022/primeng-autofocus.mjs.map +1 -0
- package/fesm2022/primeng-avatar.mjs +181 -0
- package/fesm2022/primeng-avatar.mjs.map +1 -0
- package/fesm2022/primeng-avatargroup.mjs +103 -0
- package/fesm2022/primeng-avatargroup.mjs.map +1 -0
- package/fesm2022/primeng-badge.mjs +366 -0
- package/fesm2022/primeng-badge.mjs.map +1 -0
- package/fesm2022/primeng-base.mjs +127 -0
- package/fesm2022/primeng-base.mjs.map +1 -0
- package/fesm2022/primeng-basecomponent.mjs +173 -0
- package/fesm2022/primeng-basecomponent.mjs.map +1 -0
- package/fesm2022/primeng-baseeditableholder.mjs +67 -0
- package/fesm2022/primeng-baseeditableholder.mjs.map +1 -0
- package/fesm2022/primeng-baseinput.mjs +85 -0
- package/fesm2022/primeng-baseinput.mjs.map +1 -0
- package/fesm2022/primeng-basemodelholder.mjs +25 -0
- package/fesm2022/primeng-basemodelholder.mjs.map +1 -0
- package/fesm2022/primeng-blockui.mjs +237 -0
- package/fesm2022/primeng-blockui.mjs.map +1 -0
- package/fesm2022/primeng-breadcrumb.mjs +457 -0
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -0
- package/fesm2022/primeng-button.mjs +864 -0
- package/fesm2022/primeng-button.mjs.map +1 -0
- package/fesm2022/primeng-buttongroup.mjs +109 -0
- package/fesm2022/primeng-buttongroup.mjs.map +1 -0
- package/fesm2022/primeng-card.mjs +271 -0
- package/fesm2022/primeng-card.mjs.map +1 -0
- package/fesm2022/primeng-carousel.mjs +1101 -0
- package/fesm2022/primeng-carousel.mjs.map +1 -0
- package/fesm2022/primeng-cascadeselect.mjs +1778 -0
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -0
- package/fesm2022/primeng-chart.mjs +246 -0
- package/fesm2022/primeng-chart.mjs.map +1 -0
- package/fesm2022/primeng-checkbox.mjs +441 -0
- package/fesm2022/primeng-checkbox.mjs.map +1 -0
- package/fesm2022/primeng-chip.mjs +323 -0
- package/fesm2022/primeng-chip.mjs.map +1 -0
- package/fesm2022/primeng-colorpicker.mjs +865 -0
- package/fesm2022/primeng-colorpicker.mjs.map +1 -0
- package/fesm2022/primeng-config.mjs +289 -0
- package/fesm2022/primeng-config.mjs.map +1 -0
- package/fesm2022/primeng-confirmdialog.mjs +823 -0
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -0
- package/fesm2022/primeng-confirmpopup.mjs +630 -0
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -0
- package/fesm2022/primeng-contextmenu.mjs +1410 -0
- package/fesm2022/primeng-contextmenu.mjs.map +1 -0
- package/fesm2022/primeng-dataview.mjs +812 -0
- package/fesm2022/primeng-dataview.mjs.map +1 -0
- package/fesm2022/primeng-datepicker.mjs +4373 -0
- package/fesm2022/primeng-datepicker.mjs.map +1 -0
- package/fesm2022/primeng-dialog.mjs +1278 -0
- package/fesm2022/primeng-dialog.mjs.map +1 -0
- package/fesm2022/primeng-divider.mjs +145 -0
- package/fesm2022/primeng-divider.mjs.map +1 -0
- package/fesm2022/primeng-dock.mjs +540 -0
- package/fesm2022/primeng-dock.mjs.map +1 -0
- package/fesm2022/primeng-dom.mjs +775 -0
- package/fesm2022/primeng-dom.mjs.map +1 -0
- package/fesm2022/primeng-dragdrop.mjs +336 -0
- package/fesm2022/primeng-dragdrop.mjs.map +1 -0
- package/fesm2022/primeng-drawer.mjs +738 -0
- package/fesm2022/primeng-drawer.mjs.map +1 -0
- package/fesm2022/primeng-dynamicdialog.mjs +1242 -0
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -0
- package/fesm2022/primeng-editor.mjs +511 -0
- package/fesm2022/primeng-editor.mjs.map +1 -0
- package/fesm2022/primeng-fieldset.mjs +417 -0
- package/fesm2022/primeng-fieldset.mjs.map +1 -0
- package/fesm2022/primeng-fileupload.mjs +1561 -0
- package/fesm2022/primeng-fileupload.mjs.map +1 -0
- package/fesm2022/primeng-floatlabel.mjs +103 -0
- package/fesm2022/primeng-floatlabel.mjs.map +1 -0
- package/fesm2022/primeng-fluid.mjs +80 -0
- package/fesm2022/primeng-fluid.mjs.map +1 -0
- package/fesm2022/primeng-focustrap.mjs +110 -0
- package/fesm2022/primeng-focustrap.mjs.map +1 -0
- package/fesm2022/primeng-galleria.mjs +1874 -0
- package/fesm2022/primeng-galleria.mjs.map +1 -0
- package/fesm2022/primeng-iconfield.mjs +101 -0
- package/fesm2022/primeng-iconfield.mjs.map +1 -0
- package/fesm2022/primeng-icons-angledoubledown.mjs +37 -0
- package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -0
- package/fesm2022/primeng-icons-angledoubleleft.mjs +37 -0
- package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -0
- package/fesm2022/primeng-icons-angledoubleright.mjs +37 -0
- package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -0
- package/fesm2022/primeng-icons-angledoubleup.mjs +37 -0
- package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -0
- package/fesm2022/primeng-icons-angledown.mjs +33 -0
- package/fesm2022/primeng-icons-angledown.mjs.map +1 -0
- package/fesm2022/primeng-icons-angleleft.mjs +33 -0
- package/fesm2022/primeng-icons-angleleft.mjs.map +1 -0
- package/fesm2022/primeng-icons-angleright.mjs +33 -0
- package/fesm2022/primeng-icons-angleright.mjs.map +1 -0
- package/fesm2022/primeng-icons-angleup.mjs +33 -0
- package/fesm2022/primeng-icons-angleup.mjs.map +1 -0
- package/fesm2022/primeng-icons-arrowdown.mjs +57 -0
- package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -0
- package/fesm2022/primeng-icons-arrowdownleft.mjs +33 -0
- package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -0
- package/fesm2022/primeng-icons-arrowdownright.mjs +33 -0
- package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -0
- package/fesm2022/primeng-icons-arrowleft.mjs +57 -0
- package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -0
- package/fesm2022/primeng-icons-arrowright.mjs +37 -0
- package/fesm2022/primeng-icons-arrowright.mjs.map +1 -0
- package/fesm2022/primeng-icons-arrowup.mjs +57 -0
- package/fesm2022/primeng-icons-arrowup.mjs.map +1 -0
- package/fesm2022/primeng-icons-ban.mjs +53 -0
- package/fesm2022/primeng-icons-ban.mjs.map +1 -0
- package/fesm2022/primeng-icons-bars.mjs +37 -0
- package/fesm2022/primeng-icons-bars.mjs.map +1 -0
- package/fesm2022/primeng-icons-baseicon.mjs +102 -0
- package/fesm2022/primeng-icons-baseicon.mjs.map +1 -0
- package/fesm2022/primeng-icons-blank.mjs +23 -0
- package/fesm2022/primeng-icons-blank.mjs.map +1 -0
- package/fesm2022/primeng-icons-calendar.mjs +33 -0
- package/fesm2022/primeng-icons-calendar.mjs.map +1 -0
- package/fesm2022/primeng-icons-caretleft.mjs +33 -0
- package/fesm2022/primeng-icons-caretleft.mjs.map +1 -0
- package/fesm2022/primeng-icons-caretright.mjs +33 -0
- package/fesm2022/primeng-icons-caretright.mjs.map +1 -0
- package/fesm2022/primeng-icons-check.mjs +33 -0
- package/fesm2022/primeng-icons-check.mjs.map +1 -0
- package/fesm2022/primeng-icons-chevrondown.mjs +33 -0
- package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -0
- package/fesm2022/primeng-icons-chevronleft.mjs +33 -0
- package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -0
- package/fesm2022/primeng-icons-chevronright.mjs +33 -0
- package/fesm2022/primeng-icons-chevronright.mjs.map +1 -0
- package/fesm2022/primeng-icons-chevronup.mjs +33 -0
- package/fesm2022/primeng-icons-chevronup.mjs.map +1 -0
- package/fesm2022/primeng-icons-exclamationtriangle.mjs +69 -0
- package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -0
- package/fesm2022/primeng-icons-eye.mjs +37 -0
- package/fesm2022/primeng-icons-eye.mjs.map +1 -0
- package/fesm2022/primeng-icons-eyeslash.mjs +57 -0
- package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -0
- package/fesm2022/primeng-icons-filter.mjs +53 -0
- package/fesm2022/primeng-icons-filter.mjs.map +1 -0
- package/fesm2022/primeng-icons-filterfill.mjs +33 -0
- package/fesm2022/primeng-icons-filterfill.mjs.map +1 -0
- package/fesm2022/primeng-icons-filterslash.mjs +57 -0
- package/fesm2022/primeng-icons-filterslash.mjs.map +1 -0
- package/fesm2022/primeng-icons-home.mjs +57 -0
- package/fesm2022/primeng-icons-home.mjs.map +1 -0
- package/fesm2022/primeng-icons-infocircle.mjs +57 -0
- package/fesm2022/primeng-icons-infocircle.mjs.map +1 -0
- package/fesm2022/primeng-icons-minus.mjs +33 -0
- package/fesm2022/primeng-icons-minus.mjs.map +1 -0
- package/fesm2022/primeng-icons-pencil.mjs +53 -0
- package/fesm2022/primeng-icons-pencil.mjs.map +1 -0
- package/fesm2022/primeng-icons-plus.mjs +53 -0
- package/fesm2022/primeng-icons-plus.mjs.map +1 -0
- package/fesm2022/primeng-icons-refresh.mjs +57 -0
- package/fesm2022/primeng-icons-refresh.mjs.map +1 -0
- package/fesm2022/primeng-icons-search.mjs +57 -0
- package/fesm2022/primeng-icons-search.mjs.map +1 -0
- package/fesm2022/primeng-icons-searchminus.mjs +57 -0
- package/fesm2022/primeng-icons-searchminus.mjs.map +1 -0
- package/fesm2022/primeng-icons-searchplus.mjs +57 -0
- package/fesm2022/primeng-icons-searchplus.mjs.map +1 -0
- package/fesm2022/primeng-icons-sortalt.mjs +65 -0
- package/fesm2022/primeng-icons-sortalt.mjs.map +1 -0
- package/fesm2022/primeng-icons-sortamountdown.mjs +53 -0
- package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -0
- package/fesm2022/primeng-icons-sortamountupalt.mjs +53 -0
- package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -0
- package/fesm2022/primeng-icons-spinner.mjs +53 -0
- package/fesm2022/primeng-icons-spinner.mjs.map +1 -0
- package/fesm2022/primeng-icons-star.mjs +53 -0
- package/fesm2022/primeng-icons-star.mjs.map +1 -0
- package/fesm2022/primeng-icons-starfill.mjs +53 -0
- package/fesm2022/primeng-icons-starfill.mjs.map +1 -0
- package/fesm2022/primeng-icons-thlarge.mjs +57 -0
- package/fesm2022/primeng-icons-thlarge.mjs.map +1 -0
- package/fesm2022/primeng-icons-times.mjs +33 -0
- package/fesm2022/primeng-icons-times.mjs.map +1 -0
- package/fesm2022/primeng-icons-timescircle.mjs +57 -0
- package/fesm2022/primeng-icons-timescircle.mjs.map +1 -0
- package/fesm2022/primeng-icons-trash.mjs +57 -0
- package/fesm2022/primeng-icons-trash.mjs.map +1 -0
- package/fesm2022/primeng-icons-undo.mjs +57 -0
- package/fesm2022/primeng-icons-undo.mjs.map +1 -0
- package/fesm2022/primeng-icons-upload.mjs +57 -0
- package/fesm2022/primeng-icons-upload.mjs.map +1 -0
- package/fesm2022/primeng-icons-windowmaximize.mjs +57 -0
- package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -0
- package/fesm2022/primeng-icons-windowminimize.mjs +57 -0
- package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -0
- package/fesm2022/primeng-icons.mjs +63 -0
- package/fesm2022/primeng-icons.mjs.map +1 -0
- package/fesm2022/primeng-iftalabel.mjs +89 -0
- package/fesm2022/primeng-iftalabel.mjs.map +1 -0
- package/fesm2022/primeng-image.mjs +705 -0
- package/fesm2022/primeng-image.mjs.map +1 -0
- package/fesm2022/primeng-imagecompare.mjs +192 -0
- package/fesm2022/primeng-imagecompare.mjs.map +1 -0
- package/fesm2022/primeng-inplace.mjs +319 -0
- package/fesm2022/primeng-inplace.mjs.map +1 -0
- package/fesm2022/primeng-inputgroup.mjs +128 -0
- package/fesm2022/primeng-inputgroup.mjs.map +1 -0
- package/fesm2022/primeng-inputgroupaddon.mjs +83 -0
- package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -0
- package/fesm2022/primeng-inputicon.mjs +71 -0
- package/fesm2022/primeng-inputicon.mjs.map +1 -0
- package/fesm2022/primeng-inputmask.mjs +926 -0
- package/fesm2022/primeng-inputmask.mjs.map +1 -0
- package/fesm2022/primeng-inputnumber.mjs +1621 -0
- package/fesm2022/primeng-inputnumber.mjs.map +1 -0
- package/fesm2022/primeng-inputotp.mjs +443 -0
- package/fesm2022/primeng-inputotp.mjs.map +1 -0
- package/fesm2022/primeng-inputtext.mjs +145 -0
- package/fesm2022/primeng-inputtext.mjs.map +1 -0
- package/fesm2022/primeng-keyfilter.mjs +267 -0
- package/fesm2022/primeng-keyfilter.mjs.map +1 -0
- package/fesm2022/primeng-knob.mjs +491 -0
- package/fesm2022/primeng-knob.mjs.map +1 -0
- package/fesm2022/primeng-listbox.mjs +1925 -0
- package/fesm2022/primeng-listbox.mjs.map +1 -0
- package/fesm2022/primeng-megamenu.mjs +1493 -0
- package/fesm2022/primeng-megamenu.mjs.map +1 -0
- package/fesm2022/primeng-menu.mjs +1069 -0
- package/fesm2022/primeng-menu.mjs.map +1 -0
- package/fesm2022/primeng-menubar.mjs +1391 -0
- package/fesm2022/primeng-menubar.mjs.map +1 -0
- package/fesm2022/primeng-message.mjs +420 -0
- package/fesm2022/primeng-message.mjs.map +1 -0
- package/fesm2022/primeng-metergroup.mjs +393 -0
- package/fesm2022/primeng-metergroup.mjs.map +1 -0
- package/fesm2022/primeng-multiselect.mjs +2519 -0
- package/fesm2022/primeng-multiselect.mjs.map +1 -0
- package/fesm2022/primeng-orderlist.mjs +890 -0
- package/fesm2022/primeng-orderlist.mjs.map +1 -0
- package/fesm2022/primeng-organizationchart.mjs +520 -0
- package/fesm2022/primeng-organizationchart.mjs.map +1 -0
- package/fesm2022/primeng-overlay.mjs +776 -0
- package/fesm2022/primeng-overlay.mjs.map +1 -0
- package/fesm2022/primeng-overlaybadge.mjs +151 -0
- package/fesm2022/primeng-overlaybadge.mjs.map +1 -0
- package/fesm2022/primeng-paginator.mjs +802 -0
- package/fesm2022/primeng-paginator.mjs.map +1 -0
- package/fesm2022/primeng-panel.mjs +595 -0
- package/fesm2022/primeng-panel.mjs.map +1 -0
- package/fesm2022/primeng-panelmenu.mjs +1442 -0
- package/fesm2022/primeng-panelmenu.mjs.map +1 -0
- package/fesm2022/primeng-password.mjs +1156 -0
- package/fesm2022/primeng-password.mjs.map +1 -0
- package/fesm2022/primeng-picklist.mjs +2057 -0
- package/fesm2022/primeng-picklist.mjs.map +1 -0
- package/fesm2022/primeng-popover.mjs +611 -0
- package/fesm2022/primeng-popover.mjs.map +1 -0
- package/fesm2022/primeng-progressbar.mjs +196 -0
- package/fesm2022/primeng-progressbar.mjs.map +1 -0
- package/fesm2022/primeng-progressspinner.mjs +140 -0
- package/fesm2022/primeng-progressspinner.mjs.map +1 -0
- package/fesm2022/primeng-radiobutton.mjs +358 -0
- package/fesm2022/primeng-radiobutton.mjs.map +1 -0
- package/fesm2022/primeng-rating.mjs +388 -0
- package/fesm2022/primeng-rating.mjs.map +1 -0
- package/fesm2022/primeng-ripple.mjs +190 -0
- package/fesm2022/primeng-ripple.mjs.map +1 -0
- package/fesm2022/primeng-scroller.mjs +1306 -0
- package/fesm2022/primeng-scroller.mjs.map +1 -0
- package/fesm2022/primeng-scrollpanel.mjs +560 -0
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -0
- package/fesm2022/primeng-scrolltop.mjs +339 -0
- package/fesm2022/primeng-scrolltop.mjs.map +1 -0
- package/fesm2022/primeng-select.mjs +2250 -0
- package/fesm2022/primeng-select.mjs.map +1 -0
- package/fesm2022/primeng-selectbutton.mjs +413 -0
- package/fesm2022/primeng-selectbutton.mjs.map +1 -0
- package/fesm2022/primeng-skeleton.mjs +154 -0
- package/fesm2022/primeng-skeleton.mjs.map +1 -0
- package/fesm2022/primeng-slider.mjs +843 -0
- package/fesm2022/primeng-slider.mjs.map +1 -0
- package/fesm2022/primeng-speeddial.mjs +901 -0
- package/fesm2022/primeng-speeddial.mjs.map +1 -0
- package/fesm2022/primeng-splitbutton.mjs +598 -0
- package/fesm2022/primeng-splitbutton.mjs.map +1 -0
- package/fesm2022/primeng-splitter.mjs +587 -0
- package/fesm2022/primeng-splitter.mjs.map +1 -0
- package/fesm2022/primeng-stepper.mjs +683 -0
- package/fesm2022/primeng-stepper.mjs.map +1 -0
- package/fesm2022/primeng-steps.mjs +424 -0
- package/fesm2022/primeng-steps.mjs.map +1 -0
- package/fesm2022/primeng-styleclass.mjs +354 -0
- package/fesm2022/primeng-styleclass.mjs.map +1 -0
- package/fesm2022/primeng-table.mjs +7540 -0
- package/fesm2022/primeng-table.mjs.map +1 -0
- package/fesm2022/primeng-tabs.mjs +794 -0
- package/fesm2022/primeng-tabs.mjs.map +1 -0
- package/fesm2022/primeng-tag.mjs +176 -0
- package/fesm2022/primeng-tag.mjs.map +1 -0
- package/fesm2022/primeng-terminal.mjs +254 -0
- package/fesm2022/primeng-terminal.mjs.map +1 -0
- package/fesm2022/primeng-textarea.mjs +197 -0
- package/fesm2022/primeng-textarea.mjs.map +1 -0
- package/fesm2022/primeng-tieredmenu.mjs +1457 -0
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -0
- package/fesm2022/primeng-timeline.mjs +228 -0
- package/fesm2022/primeng-timeline.mjs.map +1 -0
- package/fesm2022/primeng-toast.mjs +751 -0
- package/fesm2022/primeng-toast.mjs.map +1 -0
- package/fesm2022/primeng-togglebutton.mjs +361 -0
- package/fesm2022/primeng-togglebutton.mjs.map +1 -0
- package/fesm2022/primeng-toggleswitch.mjs +330 -0
- package/fesm2022/primeng-toggleswitch.mjs.map +1 -0
- package/fesm2022/primeng-toolbar.mjs +189 -0
- package/fesm2022/primeng-toolbar.mjs.map +1 -0
- package/fesm2022/primeng-tooltip.mjs +757 -0
- package/fesm2022/primeng-tooltip.mjs.map +1 -0
- package/fesm2022/primeng-tree.mjs +2188 -0
- package/fesm2022/primeng-tree.mjs.map +1 -0
- package/fesm2022/primeng-treeselect.mjs +1328 -0
- package/fesm2022/primeng-treeselect.mjs.map +1 -0
- package/fesm2022/primeng-treetable.mjs +5080 -0
- package/fesm2022/primeng-treetable.mjs.map +1 -0
- package/fesm2022/primeng-ts-helpers.mjs +4 -0
- package/fesm2022/primeng-ts-helpers.mjs.map +1 -0
- package/fesm2022/primeng-usestyle.mjs +52 -0
- package/fesm2022/primeng-usestyle.mjs.map +1 -0
- package/fesm2022/primeng-utils.mjs +332 -0
- package/fesm2022/primeng-utils.mjs.map +1 -0
- package/fesm2022/primeng.mjs +6 -0
- package/fesm2022/primeng.mjs.map +1 -0
- package/fieldset/index.d.ts +217 -0
- package/fileupload/index.d.ts +786 -0
- package/floatlabel/index.d.ts +59 -0
- package/fluid/index.d.ts +48 -0
- package/focustrap/index.d.ts +36 -0
- package/galleria/index.d.ts +710 -0
- package/iconfield/index.d.ts +64 -0
- package/icons/angledoubledown/index.d.ts +9 -0
- package/icons/angledoubleleft/index.d.ts +9 -0
- package/icons/angledoubleright/index.d.ts +9 -0
- package/icons/angledoubleup/index.d.ts +9 -0
- package/icons/angledown/index.d.ts +9 -0
- package/icons/angleleft/index.d.ts +9 -0
- package/icons/angleright/index.d.ts +9 -0
- package/icons/angleup/index.d.ts +9 -0
- package/icons/arrowdown/index.d.ts +12 -0
- package/icons/arrowdownleft/index.d.ts +9 -0
- package/icons/arrowdownright/index.d.ts +9 -0
- package/icons/arrowleft/index.d.ts +11 -0
- package/icons/arrowright/index.d.ts +9 -0
- package/icons/arrowup/index.d.ts +11 -0
- package/icons/ban/index.d.ts +11 -0
- package/icons/bars/index.d.ts +9 -0
- package/icons/baseicon/index.d.ts +33 -0
- package/icons/blank/index.d.ts +9 -0
- package/icons/calendar/index.d.ts +9 -0
- package/icons/caretleft/index.d.ts +9 -0
- package/icons/caretright/index.d.ts +9 -0
- package/icons/check/index.d.ts +9 -0
- package/icons/chevrondown/index.d.ts +9 -0
- package/icons/chevronleft/index.d.ts +9 -0
- package/icons/chevronright/index.d.ts +9 -0
- package/icons/chevronup/index.d.ts +9 -0
- package/icons/exclamationtriangle/index.d.ts +12 -0
- package/icons/eye/index.d.ts +9 -0
- package/icons/eyeslash/index.d.ts +11 -0
- package/icons/filter/index.d.ts +11 -0
- package/icons/filterfill/index.d.ts +9 -0
- package/icons/filterslash/index.d.ts +11 -0
- package/icons/home/index.d.ts +11 -0
- package/icons/index.d.ts +53 -0
- package/icons/infocircle/index.d.ts +11 -0
- package/icons/minus/index.d.ts +9 -0
- package/icons/pencil/index.d.ts +11 -0
- package/icons/plus/index.d.ts +11 -0
- package/icons/refresh/index.d.ts +11 -0
- package/icons/search/index.d.ts +11 -0
- package/icons/searchminus/index.d.ts +11 -0
- package/icons/searchplus/index.d.ts +11 -0
- package/icons/sortalt/index.d.ts +11 -0
- package/icons/sortamountdown/index.d.ts +11 -0
- package/icons/sortamountupalt/index.d.ts +11 -0
- package/icons/spinner/index.d.ts +11 -0
- package/icons/star/index.d.ts +11 -0
- package/icons/starfill/index.d.ts +11 -0
- package/icons/thlarge/index.d.ts +11 -0
- package/icons/times/index.d.ts +9 -0
- package/icons/timescircle/index.d.ts +11 -0
- package/icons/trash/index.d.ts +11 -0
- package/icons/undo/index.d.ts +11 -0
- package/icons/upload/index.d.ts +11 -0
- package/icons/windowmaximize/index.d.ts +11 -0
- package/icons/windowminimize/index.d.ts +11 -0
- package/iftalabel/index.d.ts +50 -0
- package/image/index.d.ts +376 -0
- package/imagecompare/index.d.ts +93 -0
- package/index.d.ts +2 -0
- package/inplace/index.d.ts +183 -0
- package/inputgroup/index.d.ts +58 -0
- package/inputgroupaddon/index.d.ts +45 -0
- package/inputicon/index.d.ts +36 -0
- package/inputmask/index.d.ts +282 -0
- package/inputnumber/index.d.ts +466 -0
- package/inputotp/index.d.ts +209 -0
- package/inputtext/index.d.ts +89 -0
- package/keyfilter/index.d.ts +66 -0
- package/knob/index.d.ts +206 -0
- package/listbox/index.d.ts +802 -0
- package/megamenu/index.d.ts +408 -0
- package/menu/index.d.ts +341 -0
- package/menubar/index.d.ts +418 -0
- package/message/index.d.ts +195 -0
- package/metergroup/index.d.ts +291 -0
- package/multiselect/index.d.ts +1060 -0
- package/orderlist/index.d.ts +464 -0
- package/organizationchart/index.d.ts +285 -0
- package/overlay/index.d.ts +255 -0
- package/overlaybadge/index.d.ts +73 -0
- package/package.json +725 -0
- package/paginator/index.d.ts +393 -0
- package/panel/index.d.ts +266 -0
- package/panelmenu/index.d.ts +380 -0
- package/password/index.d.ts +436 -0
- package/picklist/index.d.ts +906 -0
- package/popover/index.d.ts +176 -0
- package/progressbar/index.d.ts +112 -0
- package/progressspinner/index.d.ts +85 -0
- package/radiobutton/index.d.ts +201 -0
- package/rating/index.d.ts +218 -0
- package/ripple/index.d.ts +62 -0
- package/scroller/index.d.ts +614 -0
- package/scrollpanel/index.d.ts +161 -0
- package/scrolltop/index.d.ts +158 -0
- package/select/index.d.ts +923 -0
- package/selectbutton/index.d.ts +221 -0
- package/skeleton/index.d.ts +96 -0
- package/slider/index.d.ts +255 -0
- package/speeddial/index.d.ts +454 -0
- package/splitbutton/index.d.ts +306 -0
- package/splitter/index.d.ts +239 -0
- package/stepper/index.d.ts +297 -0
- package/steps/index.d.ts +152 -0
- package/styleclass/index.d.ts +115 -0
- package/table/index.d.ts +2700 -0
- package/tabs/index.d.ts +321 -0
- package/tag/index.d.ts +114 -0
- package/terminal/index.d.ts +134 -0
- package/textarea/index.d.ts +108 -0
- package/tieredmenu/index.d.ts +430 -0
- package/timeline/index.d.ts +170 -0
- package/toast/index.d.ts +320 -0
- package/togglebutton/index.d.ts +243 -0
- package/toggleswitch/index.d.ts +188 -0
- package/toolbar/index.d.ts +118 -0
- package/tooltip/index.d.ts +247 -0
- package/tree/index.d.ts +847 -0
- package/treeselect/index.d.ts +655 -0
- package/treetable/index.d.ts +1727 -0
- package/ts-helpers/index.d.ts +6 -0
- package/usestyle/index.d.ts +15 -0
- package/utils/index.d.ts +43 -0
@@ -0,0 +1,388 @@
|
|
1
|
+
import * as i1 from '@angular/common';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
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 { NG_VALUE_ACCESSOR } from '@angular/forms';
|
6
|
+
import { uuid, getFirstFocusableElement, focus } from '@primeuix/utils';
|
7
|
+
import { SharedModule, PrimeTemplate } from 'primeng/api';
|
8
|
+
import { AutoFocus } from 'primeng/autofocus';
|
9
|
+
import { BaseEditableHolder } from 'primeng/baseeditableholder';
|
10
|
+
import { StarFillIcon, StarIcon } from 'primeng/icons';
|
11
|
+
import { style } from '@primeuix/styles/rating';
|
12
|
+
import { BaseStyle } from 'primeng/base';
|
13
|
+
|
14
|
+
const theme = /*css*/ `
|
15
|
+
${style}
|
16
|
+
|
17
|
+
/* For PrimeNG */
|
18
|
+
p-rating.ng-invalid.ng-dirty > .p-rating > .p-rating-icon {
|
19
|
+
stroke: dt('rating.invalid.icon.color');
|
20
|
+
}
|
21
|
+
`;
|
22
|
+
const classes = {
|
23
|
+
root: ({ instance }) => [
|
24
|
+
'p-rating',
|
25
|
+
{
|
26
|
+
'p-readonly': instance.readonly,
|
27
|
+
'p-disabled': instance.$disabled()
|
28
|
+
}
|
29
|
+
],
|
30
|
+
option: ({ instance, star, value }) => [
|
31
|
+
'p-rating-option',
|
32
|
+
{
|
33
|
+
'p-rating-option-active': star + 1 <= value,
|
34
|
+
'p-focus-visible': star + 1 === instance.focusedOptionIndex() && instance.isFocusVisibleItem
|
35
|
+
}
|
36
|
+
],
|
37
|
+
onIcon: ({ instance }) => ['p-rating-icon p-rating-on-icon', { 'p-invalid': instance.invalid() }],
|
38
|
+
offIcon: ({ instance }) => ['p-rating-icon p-rating-off-icon', { 'p-invalid': instance.invalid() }]
|
39
|
+
};
|
40
|
+
class RatingStyle extends BaseStyle {
|
41
|
+
name = 'rating';
|
42
|
+
theme = theme;
|
43
|
+
classes = classes;
|
44
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RatingStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
45
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RatingStyle });
|
46
|
+
}
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RatingStyle, decorators: [{
|
48
|
+
type: Injectable
|
49
|
+
}] });
|
50
|
+
/**
|
51
|
+
*
|
52
|
+
* Rating component is a star based selection input.
|
53
|
+
*
|
54
|
+
* [Live Demo](https://www.primeng.org/rating/)
|
55
|
+
*
|
56
|
+
* @module ratingstyle
|
57
|
+
*
|
58
|
+
*/
|
59
|
+
var RatingClasses;
|
60
|
+
(function (RatingClasses) {
|
61
|
+
/**
|
62
|
+
* Class name of the root element
|
63
|
+
*/
|
64
|
+
RatingClasses["root"] = "p-rating";
|
65
|
+
/**
|
66
|
+
* Class name of the option element
|
67
|
+
*/
|
68
|
+
RatingClasses["option"] = "p-rating-option";
|
69
|
+
/**
|
70
|
+
* Class name of the on icon element
|
71
|
+
*/
|
72
|
+
RatingClasses["onIcon"] = "p-rating-on-icon";
|
73
|
+
/**
|
74
|
+
* Class name of the off icon element
|
75
|
+
*/
|
76
|
+
RatingClasses["offIcon"] = "p-rating-off-icon";
|
77
|
+
})(RatingClasses || (RatingClasses = {}));
|
78
|
+
|
79
|
+
const RATING_VALUE_ACCESSOR = {
|
80
|
+
provide: NG_VALUE_ACCESSOR,
|
81
|
+
useExisting: forwardRef(() => Rating),
|
82
|
+
multi: true
|
83
|
+
};
|
84
|
+
/**
|
85
|
+
* Rating is an extension to standard radio button element with theming.
|
86
|
+
* @group Components
|
87
|
+
*/
|
88
|
+
class Rating extends BaseEditableHolder {
|
89
|
+
/**
|
90
|
+
* When present, changing the value is not possible.
|
91
|
+
* @group Props
|
92
|
+
*/
|
93
|
+
readonly;
|
94
|
+
/**
|
95
|
+
* Number of stars.
|
96
|
+
* @group Props
|
97
|
+
*/
|
98
|
+
stars = 5;
|
99
|
+
/**
|
100
|
+
* Style class of the on icon.
|
101
|
+
* @group Props
|
102
|
+
*/
|
103
|
+
iconOnClass;
|
104
|
+
/**
|
105
|
+
* Inline style of the on icon.
|
106
|
+
* @group Props
|
107
|
+
*/
|
108
|
+
iconOnStyle;
|
109
|
+
/**
|
110
|
+
* Style class of the off icon.
|
111
|
+
* @group Props
|
112
|
+
*/
|
113
|
+
iconOffClass;
|
114
|
+
/**
|
115
|
+
* Inline style of the off icon.
|
116
|
+
* @group Props
|
117
|
+
*/
|
118
|
+
iconOffStyle;
|
119
|
+
/**
|
120
|
+
* When present, it specifies that the component should automatically get focus on load.
|
121
|
+
* @group Props
|
122
|
+
*/
|
123
|
+
autofocus;
|
124
|
+
/**
|
125
|
+
* Emitted on value change.
|
126
|
+
* @param {RatingRateEvent} value - Custom rate event.
|
127
|
+
* @group Emits
|
128
|
+
*/
|
129
|
+
onRate = new EventEmitter();
|
130
|
+
/**
|
131
|
+
* Emitted when the rating receives focus.
|
132
|
+
* @param {Event} value - Browser event.
|
133
|
+
* @group Emits
|
134
|
+
*/
|
135
|
+
onFocus = new EventEmitter();
|
136
|
+
/**
|
137
|
+
* Emitted when the rating loses focus.
|
138
|
+
* @param {Event} value - Browser event.
|
139
|
+
* @group Emits
|
140
|
+
*/
|
141
|
+
onBlur = new EventEmitter();
|
142
|
+
/**
|
143
|
+
* Custom on icon template.
|
144
|
+
* @group Templates
|
145
|
+
*/
|
146
|
+
onIconTemplate;
|
147
|
+
/**
|
148
|
+
* Custom off icon template.
|
149
|
+
* @group Templates
|
150
|
+
*/
|
151
|
+
offIconTemplate;
|
152
|
+
templates;
|
153
|
+
value;
|
154
|
+
starsArray;
|
155
|
+
isFocusVisibleItem = true;
|
156
|
+
focusedOptionIndex = signal(-1, ...(ngDevMode ? [{ debugName: "focusedOptionIndex" }] : []));
|
157
|
+
nameattr;
|
158
|
+
_componentStyle = inject(RatingStyle);
|
159
|
+
_onIconTemplate;
|
160
|
+
_offIconTemplate;
|
161
|
+
ngOnInit() {
|
162
|
+
super.ngOnInit();
|
163
|
+
this.nameattr = this.nameattr || uuid('pn_id_');
|
164
|
+
this.starsArray = [];
|
165
|
+
for (let i = 0; i < this.stars; i++) {
|
166
|
+
this.starsArray[i] = i;
|
167
|
+
}
|
168
|
+
}
|
169
|
+
ngAfterContentInit() {
|
170
|
+
this.templates.forEach((item) => {
|
171
|
+
switch (item.getType()) {
|
172
|
+
case 'onicon':
|
173
|
+
this._onIconTemplate = item.template;
|
174
|
+
break;
|
175
|
+
case 'officon':
|
176
|
+
this._offIconTemplate = item.template;
|
177
|
+
break;
|
178
|
+
}
|
179
|
+
});
|
180
|
+
}
|
181
|
+
onOptionClick(event, value) {
|
182
|
+
if (!this.readonly && !this.$disabled()) {
|
183
|
+
this.onOptionSelect(event, value);
|
184
|
+
this.isFocusVisibleItem = false;
|
185
|
+
const firstFocusableEl = getFirstFocusableElement(event.currentTarget, '');
|
186
|
+
firstFocusableEl && focus(firstFocusableEl);
|
187
|
+
}
|
188
|
+
}
|
189
|
+
onOptionSelect(event, value) {
|
190
|
+
if (!this.readonly && !this.$disabled()) {
|
191
|
+
if (this.focusedOptionIndex() === value || value === this.value) {
|
192
|
+
this.focusedOptionIndex.set(-1);
|
193
|
+
this.updateModel(event, null);
|
194
|
+
}
|
195
|
+
else {
|
196
|
+
this.focusedOptionIndex.set(value);
|
197
|
+
this.updateModel(event, value || null);
|
198
|
+
}
|
199
|
+
}
|
200
|
+
}
|
201
|
+
onChange(event, value) {
|
202
|
+
this.onOptionSelect(event, value);
|
203
|
+
this.isFocusVisibleItem = true;
|
204
|
+
}
|
205
|
+
onInputBlur(event) {
|
206
|
+
this.focusedOptionIndex.set(-1);
|
207
|
+
this.onBlur.emit(event);
|
208
|
+
}
|
209
|
+
onInputFocus(event, value) {
|
210
|
+
if (!this.readonly && !this.$disabled()) {
|
211
|
+
this.focusedOptionIndex.set(value);
|
212
|
+
this.isFocusVisibleItem = event.sourceCapabilities?.firesTouchEvents === false;
|
213
|
+
this.onFocus.emit(event);
|
214
|
+
}
|
215
|
+
}
|
216
|
+
updateModel(event, value) {
|
217
|
+
this.writeValue(value);
|
218
|
+
this.onModelChange(this.value);
|
219
|
+
this.onModelTouched();
|
220
|
+
this.onRate.emit({
|
221
|
+
originalEvent: event,
|
222
|
+
value
|
223
|
+
});
|
224
|
+
}
|
225
|
+
starAriaLabel(value) {
|
226
|
+
return value === 1 ? this.config.translation.aria.star : this.config.translation.aria.stars.replace(/{star}/g, value);
|
227
|
+
}
|
228
|
+
getIconTemplate(i) {
|
229
|
+
return !this.value || i >= this.value ? this.offIconTemplate || this._offIconTemplate : this.onIconTemplate || this.offIconTemplate;
|
230
|
+
}
|
231
|
+
/**
|
232
|
+
* @override
|
233
|
+
*
|
234
|
+
* @see {@link BaseEditableHolder.writeControlValue}
|
235
|
+
* Writes the value to the control.
|
236
|
+
*/
|
237
|
+
writeControlValue(value, setModelValue) {
|
238
|
+
this.value = value;
|
239
|
+
setModelValue(value);
|
240
|
+
}
|
241
|
+
get isCustomIcon() {
|
242
|
+
return !!(this.onIconTemplate || this._onIconTemplate || this.offIconTemplate || this._offIconTemplate);
|
243
|
+
}
|
244
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: Rating, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
245
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.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')", "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: `
|
246
|
+
<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">
|
249
|
+
<input
|
250
|
+
type="radio"
|
251
|
+
[value]="star + 1"
|
252
|
+
[attr.name]="name() || nameattr + '_name'"
|
253
|
+
[attr.value]="modelValue()"
|
254
|
+
[attr.required]="required() ? '' : undefined"
|
255
|
+
[attr.readonly]="readonly ? '' : undefined"
|
256
|
+
[attr.disabled]="$disabled() ? '' : undefined"
|
257
|
+
[checked]="value === star + 1"
|
258
|
+
[attr.aria-label]="starAriaLabel(star + 1)"
|
259
|
+
(focus)="onInputFocus($event, star + 1)"
|
260
|
+
(blur)="onInputBlur($event)"
|
261
|
+
(change)="onChange($event, star + 1)"
|
262
|
+
[pAutoFocus]="autofocus"
|
263
|
+
/>
|
264
|
+
</span>
|
265
|
+
@if (star + 1 <= value) {
|
266
|
+
@if (onIconTemplate || _onIconTemplate) {
|
267
|
+
<ng-container *ngTemplateOutlet="onIconTemplate || _onIconTemplate; context: { $implicit: star + 1, class: cx('onIcon') }"></ng-container>
|
268
|
+
} @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'" />
|
271
|
+
}
|
272
|
+
} @else {
|
273
|
+
@if (offIconTemplate || _offIconTemplate) {
|
274
|
+
<ng-container *ngTemplateOutlet="offIconTemplate || _offIconTemplate; context: { $implicit: star + 1, class: cx('offIcon') }"></ng-container>
|
275
|
+
} @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'" />
|
278
|
+
}
|
279
|
+
}
|
280
|
+
</div>
|
281
|
+
</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 });
|
283
|
+
}
|
284
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: Rating, decorators: [{
|
285
|
+
type: Component,
|
286
|
+
args: [{
|
287
|
+
selector: 'p-rating',
|
288
|
+
imports: [CommonModule, AutoFocus, StarFillIcon, StarIcon, SharedModule],
|
289
|
+
standalone: true,
|
290
|
+
template: `
|
291
|
+
<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">
|
294
|
+
<input
|
295
|
+
type="radio"
|
296
|
+
[value]="star + 1"
|
297
|
+
[attr.name]="name() || nameattr + '_name'"
|
298
|
+
[attr.value]="modelValue()"
|
299
|
+
[attr.required]="required() ? '' : undefined"
|
300
|
+
[attr.readonly]="readonly ? '' : undefined"
|
301
|
+
[attr.disabled]="$disabled() ? '' : undefined"
|
302
|
+
[checked]="value === star + 1"
|
303
|
+
[attr.aria-label]="starAriaLabel(star + 1)"
|
304
|
+
(focus)="onInputFocus($event, star + 1)"
|
305
|
+
(blur)="onInputBlur($event)"
|
306
|
+
(change)="onChange($event, star + 1)"
|
307
|
+
[pAutoFocus]="autofocus"
|
308
|
+
/>
|
309
|
+
</span>
|
310
|
+
@if (star + 1 <= value) {
|
311
|
+
@if (onIconTemplate || _onIconTemplate) {
|
312
|
+
<ng-container *ngTemplateOutlet="onIconTemplate || _onIconTemplate; context: { $implicit: star + 1, class: cx('onIcon') }"></ng-container>
|
313
|
+
} @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'" />
|
316
|
+
}
|
317
|
+
} @else {
|
318
|
+
@if (offIconTemplate || _offIconTemplate) {
|
319
|
+
<ng-container *ngTemplateOutlet="offIconTemplate || _offIconTemplate; context: { $implicit: star + 1, class: cx('offIcon') }"></ng-container>
|
320
|
+
} @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'" />
|
323
|
+
}
|
324
|
+
}
|
325
|
+
</div>
|
326
|
+
</ng-template>
|
327
|
+
`,
|
328
|
+
providers: [RATING_VALUE_ACCESSOR, RatingStyle],
|
329
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
330
|
+
encapsulation: ViewEncapsulation.None,
|
331
|
+
host: {
|
332
|
+
'[class]': "cx('root')",
|
333
|
+
'[attr.data-pc-name]': "'rating'",
|
334
|
+
'[attr.data-pc-section]': "'root'"
|
335
|
+
}
|
336
|
+
}]
|
337
|
+
}], propDecorators: { readonly: [{
|
338
|
+
type: Input,
|
339
|
+
args: [{ transform: booleanAttribute }]
|
340
|
+
}], stars: [{
|
341
|
+
type: Input,
|
342
|
+
args: [{ transform: numberAttribute }]
|
343
|
+
}], iconOnClass: [{
|
344
|
+
type: Input
|
345
|
+
}], iconOnStyle: [{
|
346
|
+
type: Input
|
347
|
+
}], iconOffClass: [{
|
348
|
+
type: Input
|
349
|
+
}], iconOffStyle: [{
|
350
|
+
type: Input
|
351
|
+
}], autofocus: [{
|
352
|
+
type: Input,
|
353
|
+
args: [{ transform: booleanAttribute }]
|
354
|
+
}], onRate: [{
|
355
|
+
type: Output
|
356
|
+
}], onFocus: [{
|
357
|
+
type: Output
|
358
|
+
}], onBlur: [{
|
359
|
+
type: Output
|
360
|
+
}], onIconTemplate: [{
|
361
|
+
type: ContentChild,
|
362
|
+
args: ['onicon', { descendants: false }]
|
363
|
+
}], offIconTemplate: [{
|
364
|
+
type: ContentChild,
|
365
|
+
args: ['officon', { descendants: false }]
|
366
|
+
}], templates: [{
|
367
|
+
type: ContentChildren,
|
368
|
+
args: [PrimeTemplate]
|
369
|
+
}] } });
|
370
|
+
class RatingModule {
|
371
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RatingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
372
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: RatingModule, imports: [Rating, SharedModule], exports: [Rating, SharedModule] });
|
373
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RatingModule, imports: [Rating, SharedModule, SharedModule] });
|
374
|
+
}
|
375
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RatingModule, decorators: [{
|
376
|
+
type: NgModule,
|
377
|
+
args: [{
|
378
|
+
imports: [Rating, SharedModule],
|
379
|
+
exports: [Rating, SharedModule]
|
380
|
+
}]
|
381
|
+
}] });
|
382
|
+
|
383
|
+
/**
|
384
|
+
* Generated bundle index. Do not edit.
|
385
|
+
*/
|
386
|
+
|
387
|
+
export { RATING_VALUE_ACCESSOR, Rating, RatingClasses, RatingModule, RatingStyle };
|
388
|
+
//# sourceMappingURL=primeng-rating.mjs.map
|
@@ -0,0 +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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"}
|
@@ -0,0 +1,190 @@
|
|
1
|
+
import { isPlatformBrowser } from '@angular/common';
|
2
|
+
import * as i0 from '@angular/core';
|
3
|
+
import { Injectable, inject, NgZone, effect, Directive, NgModule } from '@angular/core';
|
4
|
+
import { removeClass, getHeight, getWidth, getOuterWidth, getOuterHeight, getOffset, addClass, remove } from '@primeuix/utils';
|
5
|
+
import { BaseComponent } from 'primeng/basecomponent';
|
6
|
+
import { style } from '@primeuix/styles/ripple';
|
7
|
+
import { BaseStyle } from 'primeng/base';
|
8
|
+
|
9
|
+
const theme = /*css*/ `
|
10
|
+
${style}
|
11
|
+
/* For PrimeNG */
|
12
|
+
.p-ripple {
|
13
|
+
overflow: hidden;
|
14
|
+
position: relative;
|
15
|
+
}
|
16
|
+
|
17
|
+
.p-ripple-disabled .p-ink {
|
18
|
+
display: none !important;
|
19
|
+
}
|
20
|
+
|
21
|
+
@keyframes ripple {
|
22
|
+
100% {
|
23
|
+
opacity: 0;
|
24
|
+
transform: scale(2.5);
|
25
|
+
}
|
26
|
+
}
|
27
|
+
`;
|
28
|
+
const classes = {
|
29
|
+
root: 'p-ink'
|
30
|
+
};
|
31
|
+
class RippleStyle extends BaseStyle {
|
32
|
+
name = 'ripple';
|
33
|
+
theme = theme;
|
34
|
+
classes = classes;
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RippleStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
36
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RippleStyle });
|
37
|
+
}
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RippleStyle, decorators: [{
|
39
|
+
type: Injectable
|
40
|
+
}] });
|
41
|
+
/**
|
42
|
+
*
|
43
|
+
* Ripple directive adds ripple effect to the host element.
|
44
|
+
*
|
45
|
+
* [Live Demo](https://www.primeng.org/ripple)
|
46
|
+
*
|
47
|
+
* @module ripplestyle
|
48
|
+
*
|
49
|
+
*/
|
50
|
+
var RippleClasses;
|
51
|
+
(function (RippleClasses) {
|
52
|
+
/**
|
53
|
+
* Class name of the root element
|
54
|
+
*/
|
55
|
+
RippleClasses["root"] = "p-ink";
|
56
|
+
})(RippleClasses || (RippleClasses = {}));
|
57
|
+
|
58
|
+
/**
|
59
|
+
* Ripple directive adds ripple effect to the host element.
|
60
|
+
* @group Components
|
61
|
+
*/
|
62
|
+
class Ripple extends BaseComponent {
|
63
|
+
zone = inject(NgZone);
|
64
|
+
_componentStyle = inject(RippleStyle);
|
65
|
+
animationListener;
|
66
|
+
mouseDownListener;
|
67
|
+
timeout;
|
68
|
+
constructor() {
|
69
|
+
super();
|
70
|
+
effect(() => {
|
71
|
+
if (isPlatformBrowser(this.platformId)) {
|
72
|
+
if (this.config.ripple()) {
|
73
|
+
this.zone.runOutsideAngular(() => {
|
74
|
+
this.create();
|
75
|
+
this.mouseDownListener = this.renderer.listen(this.el.nativeElement, 'mousedown', this.onMouseDown.bind(this));
|
76
|
+
});
|
77
|
+
}
|
78
|
+
else {
|
79
|
+
this.remove();
|
80
|
+
}
|
81
|
+
}
|
82
|
+
});
|
83
|
+
}
|
84
|
+
ngAfterViewInit() {
|
85
|
+
super.ngAfterViewInit();
|
86
|
+
}
|
87
|
+
onMouseDown(event) {
|
88
|
+
let ink = this.getInk();
|
89
|
+
if (!ink || this.document.defaultView?.getComputedStyle(ink, null).display === 'none') {
|
90
|
+
return;
|
91
|
+
}
|
92
|
+
removeClass(ink, 'p-ink-active');
|
93
|
+
if (!getHeight(ink) && !getWidth(ink)) {
|
94
|
+
let d = Math.max(getOuterWidth(this.el.nativeElement), getOuterHeight(this.el.nativeElement));
|
95
|
+
ink.style.height = d + 'px';
|
96
|
+
ink.style.width = d + 'px';
|
97
|
+
}
|
98
|
+
let offset = getOffset(this.el.nativeElement);
|
99
|
+
let x = event.pageX - offset.left + this.document.body.scrollTop - getWidth(ink) / 2;
|
100
|
+
let y = event.pageY - offset.top + this.document.body.scrollLeft - getHeight(ink) / 2;
|
101
|
+
this.renderer.setStyle(ink, 'top', y + 'px');
|
102
|
+
this.renderer.setStyle(ink, 'left', x + 'px');
|
103
|
+
addClass(ink, 'p-ink-active');
|
104
|
+
this.timeout = setTimeout(() => {
|
105
|
+
let ink = this.getInk();
|
106
|
+
if (ink) {
|
107
|
+
removeClass(ink, 'p-ink-active');
|
108
|
+
}
|
109
|
+
}, 401);
|
110
|
+
}
|
111
|
+
getInk() {
|
112
|
+
const children = this.el.nativeElement.children;
|
113
|
+
for (let i = 0; i < children.length; i++) {
|
114
|
+
if (typeof children[i].className === 'string' && children[i].className.indexOf('p-ink') !== -1) {
|
115
|
+
return children[i];
|
116
|
+
}
|
117
|
+
}
|
118
|
+
return null;
|
119
|
+
}
|
120
|
+
resetInk() {
|
121
|
+
let ink = this.getInk();
|
122
|
+
if (ink) {
|
123
|
+
removeClass(ink, 'p-ink-active');
|
124
|
+
}
|
125
|
+
}
|
126
|
+
onAnimationEnd(event) {
|
127
|
+
if (this.timeout) {
|
128
|
+
clearTimeout(this.timeout);
|
129
|
+
}
|
130
|
+
removeClass(event.currentTarget, 'p-ink-active');
|
131
|
+
}
|
132
|
+
create() {
|
133
|
+
let ink = this.renderer.createElement('span');
|
134
|
+
this.renderer.addClass(ink, 'p-ink');
|
135
|
+
this.renderer.appendChild(this.el.nativeElement, ink);
|
136
|
+
this.renderer.setAttribute(ink, 'aria-hidden', 'true');
|
137
|
+
this.renderer.setAttribute(ink, 'role', 'presentation');
|
138
|
+
if (!this.animationListener) {
|
139
|
+
this.animationListener = this.renderer.listen(ink, 'animationend', this.onAnimationEnd.bind(this));
|
140
|
+
}
|
141
|
+
}
|
142
|
+
remove() {
|
143
|
+
let ink = this.getInk();
|
144
|
+
if (ink) {
|
145
|
+
this.mouseDownListener && this.mouseDownListener();
|
146
|
+
this.animationListener && this.animationListener();
|
147
|
+
this.mouseDownListener = null;
|
148
|
+
this.animationListener = null;
|
149
|
+
remove(ink);
|
150
|
+
}
|
151
|
+
}
|
152
|
+
ngOnDestroy() {
|
153
|
+
if (this.config && this.config.ripple()) {
|
154
|
+
this.remove();
|
155
|
+
}
|
156
|
+
super.ngOnDestroy();
|
157
|
+
}
|
158
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: Ripple, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
159
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.4", type: Ripple, isStandalone: true, selector: "[pRipple]", host: { classAttribute: "p-ripple" }, providers: [RippleStyle], usesInheritance: true, ngImport: i0 });
|
160
|
+
}
|
161
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: Ripple, decorators: [{
|
162
|
+
type: Directive,
|
163
|
+
args: [{
|
164
|
+
selector: '[pRipple]',
|
165
|
+
host: {
|
166
|
+
class: 'p-ripple'
|
167
|
+
},
|
168
|
+
standalone: true,
|
169
|
+
providers: [RippleStyle]
|
170
|
+
}]
|
171
|
+
}], ctorParameters: () => [] });
|
172
|
+
class RippleModule {
|
173
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
174
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: RippleModule, imports: [Ripple], exports: [Ripple] });
|
175
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RippleModule });
|
176
|
+
}
|
177
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: RippleModule, decorators: [{
|
178
|
+
type: NgModule,
|
179
|
+
args: [{
|
180
|
+
imports: [Ripple],
|
181
|
+
exports: [Ripple]
|
182
|
+
}]
|
183
|
+
}] });
|
184
|
+
|
185
|
+
/**
|
186
|
+
* Generated bundle index. Do not edit.
|
187
|
+
*/
|
188
|
+
|
189
|
+
export { Ripple, RippleClasses, RippleModule, RippleStyle };
|
190
|
+
//# sourceMappingURL=primeng-ripple.mjs.map
|
@@ -0,0 +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":"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"}
|