primeng 22.1.0 → 22.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/primeng-accordion.mjs +998 -578
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-animateonscroll.mjs +266 -165
- package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
- package/fesm2022/primeng-api.mjs +888 -847
- package/fesm2022/primeng-api.mjs.map +1 -1
- package/fesm2022/primeng-autocomplete.mjs +2534 -1592
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-autofocus.mjs +114 -77
- package/fesm2022/primeng-autofocus.mjs.map +1 -1
- package/fesm2022/primeng-avatar.mjs +330 -189
- package/fesm2022/primeng-avatar.mjs.map +1 -1
- package/fesm2022/primeng-avatargroup.mjs +178 -95
- package/fesm2022/primeng-avatargroup.mjs.map +1 -1
- package/fesm2022/primeng-badge.mjs +290 -156
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-base.mjs +95 -101
- package/fesm2022/primeng-base.mjs.map +1 -1
- package/fesm2022/primeng-basecomponent.mjs +528 -489
- package/fesm2022/primeng-basecomponent.mjs.map +1 -1
- package/fesm2022/primeng-baseeditableholder.mjs +131 -69
- package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
- package/fesm2022/primeng-baseinput.mjs +214 -99
- package/fesm2022/primeng-baseinput.mjs.map +1 -1
- package/fesm2022/primeng-basemodelholder.mjs +39 -26
- package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
- package/fesm2022/primeng-bind.mjs +156 -96
- package/fesm2022/primeng-bind.mjs.map +1 -1
- package/fesm2022/primeng-blockui.mjs +360 -228
- package/fesm2022/primeng-blockui.mjs.map +1 -1
- package/fesm2022/primeng-breadcrumb.mjs +458 -220
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs +1568 -703
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs +125 -73
- package/fesm2022/primeng-buttongroup.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs +389 -178
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-carousel.mjs +2393 -1773
- package/fesm2022/primeng-carousel.mjs.map +1 -1
- package/fesm2022/primeng-cascadeselect.mjs +2373 -1364
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-chart.mjs +402 -231
- package/fesm2022/primeng-chart.mjs.map +1 -1
- package/fesm2022/primeng-checkbox.mjs +650 -353
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs +411 -224
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-classnames.mjs +95 -48
- package/fesm2022/primeng-classnames.mjs.map +1 -1
- package/fesm2022/primeng-colorpicker.mjs +890 -635
- package/fesm2022/primeng-colorpicker.mjs.map +1 -1
- package/fesm2022/primeng-commandmenu.mjs +568 -315
- package/fesm2022/primeng-commandmenu.mjs.map +1 -1
- package/fesm2022/primeng-compare.mjs +843 -480
- package/fesm2022/primeng-compare.mjs.map +1 -1
- package/fesm2022/primeng-config.mjs +415 -321
- package/fesm2022/primeng-config.mjs.map +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +1188 -540
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs +810 -531
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +1862 -1051
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +1130 -549
- package/fesm2022/primeng-dataview.mjs.map +1 -1
- package/fesm2022/primeng-datepicker.mjs +3750 -3354
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-dialog.mjs +1635 -968
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +272 -148
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dock.mjs +609 -385
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs +599 -761
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dragdrop.mjs +323 -311
- package/fesm2022/primeng-dragdrop.mjs.map +1 -1
- package/fesm2022/primeng-drawer.mjs +913 -482
- package/fesm2022/primeng-drawer.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +828 -928
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +547 -390
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs +559 -274
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +1836 -1047
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs +187 -102
- package/fesm2022/primeng-floatlabel.mjs.map +1 -1
- package/fesm2022/primeng-fluid.mjs +156 -85
- package/fesm2022/primeng-fluid.mjs.map +1 -1
- package/fesm2022/primeng-focustrap.mjs +150 -112
- package/fesm2022/primeng-focustrap.mjs.map +1 -1
- package/fesm2022/primeng-galleria.mjs +2589 -1406
- package/fesm2022/primeng-galleria.mjs.map +1 -1
- package/fesm2022/primeng-gallery.mjs +2768 -1798
- package/fesm2022/primeng-gallery.mjs.map +1 -1
- package/fesm2022/primeng-iconfield.mjs +192 -93
- package/fesm2022/primeng-iconfield.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubledown.mjs +41 -23
- package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleleft.mjs +41 -23
- package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleright.mjs +41 -23
- package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleup.mjs +41 -23
- package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledown.mjs +41 -23
- package/fesm2022/primeng-icons-angledown.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleleft.mjs +41 -23
- package/fesm2022/primeng-icons-angleleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleright.mjs +41 -23
- package/fesm2022/primeng-icons-angleright.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleup.mjs +41 -23
- package/fesm2022/primeng-icons-angleup.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdown.mjs +46 -28
- package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdownleft.mjs +41 -23
- package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdownright.mjs +41 -23
- package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowleft.mjs +46 -28
- package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowright.mjs +41 -23
- package/fesm2022/primeng-icons-arrowright.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowup.mjs +46 -28
- package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
- package/fesm2022/primeng-icons-ban.mjs +46 -28
- package/fesm2022/primeng-icons-ban.mjs.map +1 -1
- package/fesm2022/primeng-icons-bars.mjs +41 -23
- package/fesm2022/primeng-icons-bars.mjs.map +1 -1
- package/fesm2022/primeng-icons-baseicon.mjs +111 -67
- package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
- package/fesm2022/primeng-icons-blank.mjs +40 -22
- package/fesm2022/primeng-icons-blank.mjs.map +1 -1
- package/fesm2022/primeng-icons-calendar.mjs +41 -23
- package/fesm2022/primeng-icons-calendar.mjs.map +1 -1
- package/fesm2022/primeng-icons-caretleft.mjs +41 -23
- package/fesm2022/primeng-icons-caretleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-caretright.mjs +41 -23
- package/fesm2022/primeng-icons-caretright.mjs.map +1 -1
- package/fesm2022/primeng-icons-check.mjs +41 -23
- package/fesm2022/primeng-icons-check.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevrondown.mjs +41 -23
- package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronleft.mjs +41 -23
- package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronright.mjs +41 -23
- package/fesm2022/primeng-icons-chevronright.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronup.mjs +41 -23
- package/fesm2022/primeng-icons-chevronup.mjs.map +1 -1
- package/fesm2022/primeng-icons-exclamationtriangle.mjs +46 -28
- package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
- package/fesm2022/primeng-icons-eye.mjs +41 -23
- package/fesm2022/primeng-icons-eye.mjs.map +1 -1
- package/fesm2022/primeng-icons-eyeslash.mjs +46 -28
- package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-filter.mjs +46 -28
- package/fesm2022/primeng-icons-filter.mjs.map +1 -1
- package/fesm2022/primeng-icons-filterfill.mjs +41 -23
- package/fesm2022/primeng-icons-filterfill.mjs.map +1 -1
- package/fesm2022/primeng-icons-filterslash.mjs +46 -28
- package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-home.mjs +46 -28
- package/fesm2022/primeng-icons-home.mjs.map +1 -1
- package/fesm2022/primeng-icons-infocircle.mjs +46 -28
- package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-minus.mjs +41 -23
- package/fesm2022/primeng-icons-minus.mjs.map +1 -1
- package/fesm2022/primeng-icons-pencil.mjs +46 -28
- package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
- package/fesm2022/primeng-icons-plus.mjs +46 -28
- package/fesm2022/primeng-icons-plus.mjs.map +1 -1
- package/fesm2022/primeng-icons-refresh.mjs +46 -28
- package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
- package/fesm2022/primeng-icons-search.mjs +46 -28
- package/fesm2022/primeng-icons-search.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchminus.mjs +46 -28
- package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchplus.mjs +46 -28
- package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortalt.mjs +46 -28
- package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountdown.mjs +46 -28
- package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountupalt.mjs +46 -28
- package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-spinner.mjs +46 -28
- package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
- package/fesm2022/primeng-icons-star.mjs +46 -28
- package/fesm2022/primeng-icons-star.mjs.map +1 -1
- package/fesm2022/primeng-icons-starfill.mjs +46 -28
- package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
- package/fesm2022/primeng-icons-thlarge.mjs +46 -28
- package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
- package/fesm2022/primeng-icons-times.mjs +41 -23
- package/fesm2022/primeng-icons-times.mjs.map +1 -1
- package/fesm2022/primeng-icons-timescircle.mjs +46 -28
- package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-trash.mjs +46 -28
- package/fesm2022/primeng-icons-trash.mjs.map +1 -1
- package/fesm2022/primeng-icons-undo.mjs +46 -28
- package/fesm2022/primeng-icons-undo.mjs.map +1 -1
- package/fesm2022/primeng-icons-upload.mjs +46 -28
- package/fesm2022/primeng-icons-upload.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowmaximize.mjs +46 -28
- package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowminimize.mjs +46 -28
- package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
- package/fesm2022/primeng-icons.mjs +53 -63
- package/fesm2022/primeng-iftalabel.mjs +153 -86
- package/fesm2022/primeng-iftalabel.mjs.map +1 -1
- package/fesm2022/primeng-image.mjs +1006 -534
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-imagecompare.mjs +325 -165
- package/fesm2022/primeng-imagecompare.mjs.map +1 -1
- package/fesm2022/primeng-inplace.mjs +401 -199
- package/fesm2022/primeng-inplace.mjs.map +1 -1
- package/fesm2022/primeng-inputcolor.mjs +2631 -2180
- package/fesm2022/primeng-inputcolor.mjs.map +1 -1
- package/fesm2022/primeng-inputgroup.mjs +159 -91
- package/fesm2022/primeng-inputgroup.mjs.map +1 -1
- package/fesm2022/primeng-inputgroupaddon.mjs +153 -68
- package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
- package/fesm2022/primeng-inputicon.mjs +173 -72
- package/fesm2022/primeng-inputicon.mjs.map +1 -1
- package/fesm2022/primeng-inputmask.mjs +1607 -1379
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +1646 -1305
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs +571 -375
- package/fesm2022/primeng-inputotp.mjs.map +1 -1
- package/fesm2022/primeng-inputpassword.mjs +179 -98
- package/fesm2022/primeng-inputpassword.mjs.map +1 -1
- package/fesm2022/primeng-inputtags.mjs +1212 -588
- package/fesm2022/primeng-inputtags.mjs.map +1 -1
- package/fesm2022/primeng-inputtext.mjs +325 -170
- package/fesm2022/primeng-inputtext.mjs.map +1 -1
- package/fesm2022/primeng-keyfilter.mjs +268 -243
- package/fesm2022/primeng-keyfilter.mjs.map +1 -1
- package/fesm2022/primeng-knob.mjs +627 -403
- package/fesm2022/primeng-knob.mjs.map +1 -1
- package/fesm2022/primeng-label.mjs +143 -81
- package/fesm2022/primeng-label.mjs.map +1 -1
- package/fesm2022/primeng-license.mjs +10 -36
- package/fesm2022/primeng-license.mjs.map +1 -1
- package/fesm2022/primeng-listbox.mjs +2409 -1593
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +2006 -1117
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +1437 -845
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +1832 -972
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs +474 -243
- package/fesm2022/primeng-message.mjs.map +1 -1
- package/fesm2022/primeng-metergroup.mjs +663 -331
- package/fesm2022/primeng-metergroup.mjs.map +1 -1
- package/fesm2022/primeng-motion.mjs +1179 -690
- package/fesm2022/primeng-motion.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +3406 -1898
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +1308 -678
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs +912 -597
- package/fesm2022/primeng-organizationchart.mjs.map +1 -1
- package/fesm2022/primeng-overlay.mjs +929 -610
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaybadge.mjs +291 -107
- package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
- package/fesm2022/primeng-paginator.mjs +961 -505
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +668 -347
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +1842 -966
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-passthrough.mjs +10 -20
- package/fesm2022/primeng-passthrough.mjs.map +1 -1
- package/fesm2022/primeng-password.mjs +1518 -858
- package/fesm2022/primeng-password.mjs.map +1 -1
- package/fesm2022/primeng-picklist.mjs +2270 -1253
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs +656 -434
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +346 -168
- package/fesm2022/primeng-progressbar.mjs.map +1 -1
- package/fesm2022/primeng-progressspinner.mjs +338 -188
- package/fesm2022/primeng-progressspinner.mjs.map +1 -1
- package/fesm2022/primeng-radiobutton.mjs +499 -294
- package/fesm2022/primeng-radiobutton.mjs.map +1 -1
- package/fesm2022/primeng-rating.mjs +583 -352
- package/fesm2022/primeng-rating.mjs.map +1 -1
- package/fesm2022/primeng-ripple.mjs +194 -170
- package/fesm2022/primeng-ripple.mjs.map +1 -1
- package/fesm2022/primeng-scrollarea.mjs +1018 -721
- package/fesm2022/primeng-scrollarea.mjs.map +1 -1
- package/fesm2022/primeng-scroller.mjs +1386 -1047
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +568 -454
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs +509 -261
- package/fesm2022/primeng-scrolltop.mjs.map +1 -1
- package/fesm2022/primeng-select.mjs +2948 -1714
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs +629 -339
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-sidebar.mjs +2561 -1413
- package/fesm2022/primeng-sidebar.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs +300 -157
- package/fesm2022/primeng-skeleton.mjs.map +1 -1
- package/fesm2022/primeng-slider.mjs +841 -604
- package/fesm2022/primeng-slider.mjs.map +1 -1
- package/fesm2022/primeng-speeddial.mjs +1115 -704
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +889 -340
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs +997 -762
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs +1355 -645
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs +523 -407
- package/fesm2022/primeng-steps.mjs.map +1 -1
- package/fesm2022/primeng-styleclass.mjs +446 -330
- package/fesm2022/primeng-styleclass.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +9765 -5849
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabs.mjs +1357 -815
- package/fesm2022/primeng-tabs.mjs.map +1 -1
- package/fesm2022/primeng-tag.mjs +305 -151
- package/fesm2022/primeng-tag.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +368 -216
- package/fesm2022/primeng-terminal.mjs.map +1 -1
- package/fesm2022/primeng-textarea.mjs +345 -204
- package/fesm2022/primeng-textarea.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +1917 -1094
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-timeline.mjs +304 -165
- package/fesm2022/primeng-timeline.mjs.map +1 -1
- package/fesm2022/primeng-toast.mjs +1369 -928
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs +563 -309
- package/fesm2022/primeng-togglebutton.mjs.map +1 -1
- package/fesm2022/primeng-toggleswitch.mjs +464 -237
- package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
- package/fesm2022/primeng-toolbar.mjs +299 -129
- package/fesm2022/primeng-toolbar.mjs.map +1 -1
- package/fesm2022/primeng-tooltip.mjs +1018 -765
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +2681 -1888
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +1678 -927
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +5849 -3742
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-ts-helpers.mjs +0 -4
- package/fesm2022/primeng-types-accordion.mjs +0 -4
- package/fesm2022/primeng-types-autocomplete.mjs +0 -4
- package/fesm2022/primeng-types-avatar.mjs +0 -4
- package/fesm2022/primeng-types-avatargroup.mjs +0 -4
- package/fesm2022/primeng-types-badge.mjs +0 -4
- package/fesm2022/primeng-types-blockui.mjs +0 -4
- package/fesm2022/primeng-types-breadcrumb.mjs +0 -4
- package/fesm2022/primeng-types-button.mjs +0 -4
- package/fesm2022/primeng-types-card.mjs +0 -4
- package/fesm2022/primeng-types-carousel.mjs +0 -4
- package/fesm2022/primeng-types-cascadeselect.mjs +0 -4
- package/fesm2022/primeng-types-chart.mjs +0 -4
- package/fesm2022/primeng-types-checkbox.mjs +0 -4
- package/fesm2022/primeng-types-chip.mjs +0 -4
- package/fesm2022/primeng-types-colorpicker.mjs +0 -4
- package/fesm2022/primeng-types-commandmenu.mjs +0 -4
- package/fesm2022/primeng-types-compare.mjs +0 -4
- package/fesm2022/primeng-types-confirmdialog.mjs +0 -4
- package/fesm2022/primeng-types-confirmpopup.mjs +0 -4
- package/fesm2022/primeng-types-contextmenu.mjs +0 -4
- package/fesm2022/primeng-types-dataview.mjs +0 -4
- package/fesm2022/primeng-types-datepicker.mjs +0 -4
- package/fesm2022/primeng-types-dialog.mjs +0 -4
- package/fesm2022/primeng-types-divider.mjs +0 -4
- package/fesm2022/primeng-types-dock.mjs +0 -4
- package/fesm2022/primeng-types-drawer.mjs +0 -4
- package/fesm2022/primeng-types-editor.mjs +0 -4
- package/fesm2022/primeng-types-fieldset.mjs +0 -4
- package/fesm2022/primeng-types-fileupload.mjs +0 -4
- package/fesm2022/primeng-types-floatlabel.mjs +0 -4
- package/fesm2022/primeng-types-fluid.mjs +0 -4
- package/fesm2022/primeng-types-galleria.mjs +0 -4
- package/fesm2022/primeng-types-gallery.mjs +0 -4
- package/fesm2022/primeng-types-iconfield.mjs +0 -4
- package/fesm2022/primeng-types-iftalabel.mjs +0 -4
- package/fesm2022/primeng-types-image.mjs +0 -4
- package/fesm2022/primeng-types-imagecompare.mjs +0 -4
- package/fesm2022/primeng-types-inplace.mjs +0 -4
- package/fesm2022/primeng-types-inputcolor.mjs +0 -4
- package/fesm2022/primeng-types-inputgroup.mjs +0 -4
- package/fesm2022/primeng-types-inputgroupaddon.mjs +0 -4
- package/fesm2022/primeng-types-inputicon.mjs +0 -4
- package/fesm2022/primeng-types-inputmask.mjs +0 -4
- package/fesm2022/primeng-types-inputnumber.mjs +0 -4
- package/fesm2022/primeng-types-inputotp.mjs +0 -4
- package/fesm2022/primeng-types-inputpassword.mjs +0 -4
- package/fesm2022/primeng-types-inputtags.mjs +0 -4
- package/fesm2022/primeng-types-inputtext.mjs +0 -4
- package/fesm2022/primeng-types-knob.mjs +0 -4
- package/fesm2022/primeng-types-label.mjs +0 -4
- package/fesm2022/primeng-types-listbox.mjs +0 -4
- package/fesm2022/primeng-types-megamenu.mjs +0 -4
- package/fesm2022/primeng-types-menu.mjs +0 -4
- package/fesm2022/primeng-types-menubar.mjs +0 -4
- package/fesm2022/primeng-types-message.mjs +0 -4
- package/fesm2022/primeng-types-metergroup.mjs +0 -4
- package/fesm2022/primeng-types-motion.mjs +0 -4
- package/fesm2022/primeng-types-multiselect.mjs +0 -4
- package/fesm2022/primeng-types-orderlist.mjs +0 -4
- package/fesm2022/primeng-types-organizationchart.mjs +0 -4
- package/fesm2022/primeng-types-overlay.mjs +0 -4
- package/fesm2022/primeng-types-overlaybadge.mjs +0 -4
- package/fesm2022/primeng-types-paginator.mjs +0 -4
- package/fesm2022/primeng-types-panel.mjs +0 -4
- package/fesm2022/primeng-types-panelmenu.mjs +0 -4
- package/fesm2022/primeng-types-password.mjs +0 -4
- package/fesm2022/primeng-types-picklist.mjs +0 -4
- package/fesm2022/primeng-types-popover.mjs +0 -4
- package/fesm2022/primeng-types-progressbar.mjs +0 -4
- package/fesm2022/primeng-types-progressspinner.mjs +0 -4
- package/fesm2022/primeng-types-radiobutton.mjs +0 -4
- package/fesm2022/primeng-types-rating.mjs +0 -4
- package/fesm2022/primeng-types-scrollarea.mjs +0 -4
- package/fesm2022/primeng-types-scroller.mjs +0 -4
- package/fesm2022/primeng-types-scrollpanel.mjs +0 -4
- package/fesm2022/primeng-types-scrolltop.mjs +0 -4
- package/fesm2022/primeng-types-select.mjs +0 -4
- package/fesm2022/primeng-types-selectbutton.mjs +0 -4
- package/fesm2022/primeng-types-shared.mjs +0 -4
- package/fesm2022/primeng-types-sidebar.mjs +0 -4
- package/fesm2022/primeng-types-skeleton.mjs +0 -4
- package/fesm2022/primeng-types-slider.mjs +0 -4
- package/fesm2022/primeng-types-speeddial.mjs +0 -4
- package/fesm2022/primeng-types-splitbutton.mjs +0 -4
- package/fesm2022/primeng-types-splitter.mjs +0 -4
- package/fesm2022/primeng-types-stepper.mjs +0 -4
- package/fesm2022/primeng-types-table.mjs +0 -4
- package/fesm2022/primeng-types-tabs.mjs +0 -4
- package/fesm2022/primeng-types-tag.mjs +0 -4
- package/fesm2022/primeng-types-terminal.mjs +0 -4
- package/fesm2022/primeng-types-textarea.mjs +0 -4
- package/fesm2022/primeng-types-tieredmenu.mjs +0 -4
- package/fesm2022/primeng-types-timeline.mjs +0 -4
- package/fesm2022/primeng-types-toast.mjs +0 -4
- package/fesm2022/primeng-types-togglebutton.mjs +0 -4
- package/fesm2022/primeng-types-toggleswitch.mjs +0 -4
- package/fesm2022/primeng-types-toolbar.mjs +0 -4
- package/fesm2022/primeng-types-tooltip.mjs +0 -4
- package/fesm2022/primeng-types-tree.mjs +0 -4
- package/fesm2022/primeng-types-treeselect.mjs +0 -4
- package/fesm2022/primeng-types-treetable.mjs +0 -4
- package/fesm2022/primeng-usestyle.mjs +105 -109
- package/fesm2022/primeng-usestyle.mjs.map +1 -1
- package/fesm2022/primeng-utils.mjs +238 -328
- package/fesm2022/primeng-utils.mjs.map +1 -1
- package/fesm2022/primeng.mjs +1 -5
- package/fesm2022/primeng.mjs.map +1 -1
- package/package.json +7 -2
- package/types/primeng-accordion.d.ts +289 -221
- package/types/primeng-animateonscroll.d.ts +89 -61
- package/types/primeng-api.d.ts +1760 -1790
- package/types/primeng-autocomplete.d.ts +1054 -757
- package/types/primeng-autofocus.d.ts +27 -24
- package/types/primeng-avatar.d.ts +153 -117
- package/types/primeng-avatargroup.d.ts +46 -43
- package/types/primeng-badge.d.ts +105 -81
- package/types/primeng-base.d.ts +49 -52
- package/types/primeng-basecomponent.d.ts +191 -174
- package/types/primeng-baseeditableholder.d.ts +63 -45
- package/types/primeng-baseinput.d.ts +122 -74
- package/types/primeng-basemodelholder.d.ts +9 -12
- package/types/primeng-bind.d.ts +36 -32
- package/types/primeng-blockui.d.ts +99 -80
- package/types/primeng-breadcrumb.d.ts +159 -133
- package/types/primeng-button.d.ts +690 -427
- package/types/primeng-buttongroup.d.ts +27 -33
- package/types/primeng-card.d.ts +131 -122
- package/types/primeng-carousel.d.ts +800 -632
- package/types/primeng-cascadeselect.d.ts +754 -565
- package/types/primeng-chart.d.ts +160 -116
- package/types/primeng-checkbox.d.ts +299 -211
- package/types/primeng-chip.d.ts +189 -147
- package/types/primeng-classnames.d.ts +23 -21
- package/types/primeng-colorpicker.d.ts +325 -272
- package/types/primeng-commandmenu.d.ts +213 -165
- package/types/primeng-compare.d.ts +267 -191
- package/types/primeng-config.d.ts +294 -304
- package/types/primeng-confirmdialog.d.ts +505 -328
- package/types/primeng-confirmpopup.d.ts +254 -214
- package/types/primeng-contextmenu.d.ts +522 -368
- package/types/primeng-dataview.d.ts +498 -345
- package/types/primeng-datepicker.d.ts +1269 -972
- package/types/primeng-dialog.d.ts +668 -465
- package/types/primeng-divider.d.ts +114 -100
- package/types/primeng-dock.d.ts +207 -175
- package/types/primeng-dom.d.ts +97 -100
- package/types/primeng-dragdrop.d.ts +142 -107
- package/types/primeng-drawer.d.ts +355 -257
- package/types/primeng-dynamicdialog.d.ts +528 -540
- package/types/primeng-editor.d.ts +211 -165
- package/types/primeng-fieldset.d.ts +199 -166
- package/types/primeng-fileupload.d.ts +727 -526
- package/types/primeng-floatlabel.d.ts +55 -51
- package/types/primeng-fluid.d.ts +37 -39
- package/types/primeng-focustrap.d.ts +30 -27
- package/types/primeng-galleria.d.ts +570 -433
- package/types/primeng-gallery.d.ts +754 -552
- package/types/primeng-iconfield.d.ts +54 -45
- package/types/primeng-icons-angledoubledown.d.ts +6 -9
- package/types/primeng-icons-angledoubleleft.d.ts +6 -9
- package/types/primeng-icons-angledoubleright.d.ts +6 -9
- package/types/primeng-icons-angledoubleup.d.ts +6 -9
- package/types/primeng-icons-angledown.d.ts +6 -9
- package/types/primeng-icons-angleleft.d.ts +6 -9
- package/types/primeng-icons-angleright.d.ts +6 -9
- package/types/primeng-icons-angleup.d.ts +6 -9
- package/types/primeng-icons-arrowdown.d.ts +8 -11
- package/types/primeng-icons-arrowdownleft.d.ts +6 -9
- package/types/primeng-icons-arrowdownright.d.ts +6 -9
- package/types/primeng-icons-arrowleft.d.ts +8 -11
- package/types/primeng-icons-arrowright.d.ts +6 -9
- package/types/primeng-icons-arrowup.d.ts +8 -11
- package/types/primeng-icons-ban.d.ts +8 -11
- package/types/primeng-icons-bars.d.ts +6 -9
- package/types/primeng-icons-baseicon.d.ts +24 -25
- package/types/primeng-icons-blank.d.ts +6 -9
- package/types/primeng-icons-calendar.d.ts +6 -9
- package/types/primeng-icons-caretleft.d.ts +6 -9
- package/types/primeng-icons-caretright.d.ts +6 -9
- package/types/primeng-icons-check.d.ts +6 -9
- package/types/primeng-icons-chevrondown.d.ts +6 -9
- package/types/primeng-icons-chevronleft.d.ts +6 -9
- package/types/primeng-icons-chevronright.d.ts +6 -9
- package/types/primeng-icons-chevronup.d.ts +6 -9
- package/types/primeng-icons-exclamationtriangle.d.ts +8 -11
- package/types/primeng-icons-eye.d.ts +6 -9
- package/types/primeng-icons-eyeslash.d.ts +8 -11
- package/types/primeng-icons-filter.d.ts +8 -11
- package/types/primeng-icons-filterfill.d.ts +6 -9
- package/types/primeng-icons-filterslash.d.ts +8 -11
- package/types/primeng-icons-home.d.ts +8 -11
- package/types/primeng-icons-infocircle.d.ts +8 -11
- package/types/primeng-icons-minus.d.ts +6 -9
- package/types/primeng-icons-pencil.d.ts +8 -11
- package/types/primeng-icons-plus.d.ts +8 -11
- package/types/primeng-icons-refresh.d.ts +8 -11
- package/types/primeng-icons-search.d.ts +8 -11
- package/types/primeng-icons-searchminus.d.ts +8 -11
- package/types/primeng-icons-searchplus.d.ts +8 -11
- package/types/primeng-icons-sortalt.d.ts +8 -11
- package/types/primeng-icons-sortamountdown.d.ts +8 -11
- package/types/primeng-icons-sortamountupalt.d.ts +8 -11
- package/types/primeng-icons-spinner.d.ts +8 -11
- package/types/primeng-icons-star.d.ts +8 -11
- package/types/primeng-icons-starfill.d.ts +8 -11
- package/types/primeng-icons-thlarge.d.ts +8 -11
- package/types/primeng-icons-times.d.ts +6 -9
- package/types/primeng-icons-timescircle.d.ts +8 -11
- package/types/primeng-icons-trash.d.ts +8 -11
- package/types/primeng-icons-undo.d.ts +8 -11
- package/types/primeng-icons-upload.d.ts +8 -11
- package/types/primeng-icons-windowmaximize.d.ts +8 -11
- package/types/primeng-icons-windowminimize.d.ts +8 -11
- package/types/primeng-icons.d.ts +53 -53
- package/types/primeng-iftalabel.d.ts +38 -40
- package/types/primeng-image.d.ts +404 -311
- package/types/primeng-imagecompare.d.ts +94 -80
- package/types/primeng-inplace.d.ts +126 -114
- package/types/primeng-inputcolor.d.ts +645 -508
- package/types/primeng-inputgroup.d.ts +42 -44
- package/types/primeng-inputgroupaddon.d.ts +31 -31
- package/types/primeng-inputicon.d.ts +38 -32
- package/types/primeng-inputmask.d.ts +520 -365
- package/types/primeng-inputnumber.d.ts +573 -408
- package/types/primeng-inputotp.d.ts +206 -159
- package/types/primeng-inputpassword.d.ts +60 -47
- package/types/primeng-inputtags.d.ts +453 -301
- package/types/primeng-inputtext.d.ts +130 -96
- package/types/primeng-keyfilter.d.ts +62 -53
- package/types/primeng-knob.d.ts +257 -186
- package/types/primeng-label.d.ts +37 -39
- package/types/primeng-license.d.ts +1 -3
- package/types/primeng-listbox.d.ts +1040 -786
- package/types/primeng-megamenu.d.ts +536 -386
- package/types/primeng-menu.d.ts +478 -363
- package/types/primeng-menubar.d.ts +495 -354
- package/types/primeng-message.d.ts +192 -151
- package/types/primeng-metergroup.d.ts +249 -189
- package/types/primeng-motion.d.ts +601 -385
- package/types/primeng-multiselect.d.ts +1193 -861
- package/types/primeng-orderlist.d.ts +539 -393
- package/types/primeng-organizationchart.d.ts +236 -195
- package/types/primeng-overlay.d.ts +394 -294
- package/types/primeng-overlaybadge.d.ts +95 -64
- package/types/primeng-paginator.d.ts +410 -314
- package/types/primeng-panel.d.ts +267 -217
- package/types/primeng-panelmenu.d.ts +255 -231
- package/types/primeng-passthrough.d.ts +5 -7
- package/types/primeng-password.d.ts +606 -433
- package/types/primeng-picklist.d.ts +1042 -759
- package/types/primeng-popover.d.ts +235 -176
- package/types/primeng-progressbar.d.ts +131 -102
- package/types/primeng-progressspinner.d.ts +145 -111
- package/types/primeng-radiobutton.d.ts +219 -171
- package/types/primeng-rating.d.ts +240 -192
- package/types/primeng-ripple.d.ts +39 -45
- package/types/primeng-scrollarea.d.ts +292 -243
- package/types/primeng-scroller.d.ts +523 -390
- package/types/primeng-scrollpanel.d.ts +135 -131
- package/types/primeng-scrolltop.d.ts +170 -126
- package/types/primeng-select.d.ts +1014 -741
- package/types/primeng-selectbutton.d.ts +239 -167
- package/types/primeng-sidebar.d.ts +793 -562
- package/types/primeng-skeleton.d.ts +116 -87
- package/types/primeng-slider.d.ts +378 -311
- package/types/primeng-speeddial.d.ts +495 -375
- package/types/primeng-splitbutton.d.ts +382 -243
- package/types/primeng-splitter.d.ts +392 -301
- package/types/primeng-stepper.d.ts +417 -257
- package/types/primeng-steps.d.ts +158 -137
- package/types/primeng-styleclass.d.ts +163 -105
- package/types/primeng-table.d.ts +2898 -1912
- package/types/primeng-tabs.d.ts +463 -307
- package/types/primeng-tag.d.ts +107 -88
- package/types/primeng-terminal.d.ts +132 -120
- package/types/primeng-textarea.d.ts +146 -110
- package/types/primeng-tieredmenu.d.ts +573 -401
- package/types/primeng-timeline.d.ts +126 -112
- package/types/primeng-toast.d.ts +313 -252
- package/types/primeng-togglebutton.d.ts +255 -185
- package/types/primeng-toggleswitch.d.ts +190 -144
- package/types/primeng-toolbar.d.ts +83 -79
- package/types/primeng-tooltip.d.ts +335 -235
- package/types/primeng-tree.d.ts +763 -562
- package/types/primeng-treeselect.d.ts +750 -544
- package/types/primeng-treetable.d.ts +1839 -1315
- package/types/primeng-ts-helpers.d.ts +4 -6
- package/types/primeng-types-accordion.d.ts +58 -62
- package/types/primeng-types-autocomplete.d.ts +230 -233
- package/types/primeng-types-avatar.d.ts +25 -28
- package/types/primeng-types-avatargroup.d.ts +11 -14
- package/types/primeng-types-badge.d.ts +13 -16
- package/types/primeng-types-blockui.d.ts +18 -21
- package/types/primeng-types-breadcrumb.d.ts +65 -68
- package/types/primeng-types-button.d.ts +106 -109
- package/types/primeng-types-card.d.ts +54 -57
- package/types/primeng-types-carousel.d.ts +143 -146
- package/types/primeng-types-cascadeselect.d.ts +186 -192
- package/types/primeng-types-chart.d.ts +34 -39
- package/types/primeng-types-checkbox.d.ts +52 -55
- package/types/primeng-types-chip.d.ts +48 -51
- package/types/primeng-types-colorpicker.d.ts +59 -62
- package/types/primeng-types-commandmenu.d.ts +98 -101
- package/types/primeng-types-compare.d.ts +33 -36
- package/types/primeng-types-confirmdialog.d.ts +124 -127
- package/types/primeng-types-confirmpopup.d.ts +75 -78
- package/types/primeng-types-contextmenu.d.ts +100 -103
- package/types/primeng-types-dataview.d.ts +180 -183
- package/types/primeng-types-datepicker.d.ts +442 -445
- package/types/primeng-types-dialog.d.ts +93 -96
- package/types/primeng-types-divider.d.ts +14 -17
- package/types/primeng-types-dock.d.ts +45 -48
- package/types/primeng-types-drawer.d.ts +62 -65
- package/types/primeng-types-editor.d.ts +143 -146
- package/types/primeng-types-fieldset.d.ts +83 -87
- package/types/primeng-types-fileupload.d.ts +296 -301
- package/types/primeng-types-floatlabel.d.ts +12 -15
- package/types/primeng-types-fluid.d.ts +11 -14
- package/types/primeng-types-galleria.d.ts +209 -212
- package/types/primeng-types-gallery.d.ts +195 -198
- package/types/primeng-types-iconfield.d.ts +12 -15
- package/types/primeng-types-iftalabel.d.ts +11 -14
- package/types/primeng-types-image.d.ts +118 -121
- package/types/primeng-types-imagecompare.d.ts +22 -25
- package/types/primeng-types-inplace.d.ts +46 -49
- package/types/primeng-types-inputcolor.d.ts +86 -89
- package/types/primeng-types-inputgroup.d.ts +11 -14
- package/types/primeng-types-inputgroupaddon.d.ts +11 -14
- package/types/primeng-types-inputicon.d.ts +11 -14
- package/types/primeng-types-inputmask.d.ts +30 -33
- package/types/primeng-types-inputnumber.d.ts +72 -75
- package/types/primeng-types-inputotp.d.ts +67 -70
- package/types/primeng-types-inputpassword.d.ts +7 -10
- package/types/primeng-types-inputtags.d.ts +122 -125
- package/types/primeng-types-inputtext.d.ts +7 -10
- package/types/primeng-types-knob.d.ts +23 -26
- package/types/primeng-types-label.d.ts +7 -10
- package/types/primeng-types-listbox.d.ts +262 -266
- package/types/primeng-types-megamenu.d.ts +135 -138
- package/types/primeng-types-menu.d.ts +98 -101
- package/types/primeng-types-menubar.d.ts +122 -125
- package/types/primeng-types-message.d.ts +69 -72
- package/types/primeng-types-metergroup.d.ts +137 -140
- package/types/primeng-types-motion.d.ts +11 -14
- package/types/primeng-types-multiselect.d.ts +329 -333
- package/types/primeng-types-orderlist.d.ts +126 -129
- package/types/primeng-types-organizationchart.d.ts +147 -153
- package/types/primeng-types-overlay.d.ts +31 -34
- package/types/primeng-types-overlaybadge.d.ts +17 -20
- package/types/primeng-types-paginator.d.ts +131 -134
- package/types/primeng-types-panel.d.ts +91 -95
- package/types/primeng-types-panelmenu.d.ts +150 -153
- package/types/primeng-types-password.d.ts +94 -97
- package/types/primeng-types-picklist.d.ts +250 -260
- package/types/primeng-types-popover.d.ts +33 -36
- package/types/primeng-types-progressbar.d.ts +33 -36
- package/types/primeng-types-progressspinner.d.ts +27 -30
- package/types/primeng-types-radiobutton.d.ts +29 -32
- package/types/primeng-types-rating.d.ts +62 -65
- package/types/primeng-types-scrollarea.d.ts +35 -38
- package/types/primeng-types-scroller.d.ts +142 -146
- package/types/primeng-types-scrollpanel.d.ts +31 -34
- package/types/primeng-types-scrolltop.d.ts +37 -40
- package/types/primeng-types-select.d.ts +251 -254
- package/types/primeng-types-selectbutton.d.ts +56 -59
- package/types/primeng-types-shared.d.ts +6 -9
- package/types/primeng-types-sidebar.d.ts +105 -108
- package/types/primeng-types-skeleton.d.ts +11 -14
- package/types/primeng-types-slider.d.ts +59 -62
- package/types/primeng-types-speeddial.d.ts +71 -74
- package/types/primeng-types-splitbutton.d.ts +35 -38
- package/types/primeng-types-splitter.d.ts +58 -63
- package/types/primeng-types-stepper.d.ts +77 -80
- package/types/primeng-types-table.d.ts +743 -749
- package/types/primeng-types-tabs.d.ts +48 -51
- package/types/primeng-types-tag.d.ts +27 -30
- package/types/primeng-types-terminal.d.ts +43 -46
- package/types/primeng-types-textarea.d.ts +11 -14
- package/types/primeng-types-tieredmenu.d.ts +154 -157
- package/types/primeng-types-timeline.d.ts +60 -63
- package/types/primeng-types-toast.d.ts +92 -95
- package/types/primeng-types-togglebutton.d.ts +52 -55
- package/types/primeng-types-toggleswitch.d.ts +41 -44
- package/types/primeng-types-toolbar.d.ts +34 -37
- package/types/primeng-types-tooltip.d.ts +17 -20
- package/types/primeng-types-tree.d.ts +237 -246
- package/types/primeng-types-treeselect.d.ts +198 -202
- package/types/primeng-types-treetable.d.ts +492 -497
- package/types/primeng-usestyle.d.ts +28 -31
- package/types/primeng-utils.d.ts +37 -40
- package/types/primeng.d.ts +2 -2
- package/fesm2022/primeng-icons.mjs.map +0 -1
- package/fesm2022/primeng-ts-helpers.mjs.map +0 -1
- package/fesm2022/primeng-types-accordion.mjs.map +0 -1
- package/fesm2022/primeng-types-autocomplete.mjs.map +0 -1
- package/fesm2022/primeng-types-avatar.mjs.map +0 -1
- package/fesm2022/primeng-types-avatargroup.mjs.map +0 -1
- package/fesm2022/primeng-types-badge.mjs.map +0 -1
- package/fesm2022/primeng-types-blockui.mjs.map +0 -1
- package/fesm2022/primeng-types-breadcrumb.mjs.map +0 -1
- package/fesm2022/primeng-types-button.mjs.map +0 -1
- package/fesm2022/primeng-types-card.mjs.map +0 -1
- package/fesm2022/primeng-types-carousel.mjs.map +0 -1
- package/fesm2022/primeng-types-cascadeselect.mjs.map +0 -1
- package/fesm2022/primeng-types-chart.mjs.map +0 -1
- package/fesm2022/primeng-types-checkbox.mjs.map +0 -1
- package/fesm2022/primeng-types-chip.mjs.map +0 -1
- package/fesm2022/primeng-types-colorpicker.mjs.map +0 -1
- package/fesm2022/primeng-types-commandmenu.mjs.map +0 -1
- package/fesm2022/primeng-types-compare.mjs.map +0 -1
- package/fesm2022/primeng-types-confirmdialog.mjs.map +0 -1
- package/fesm2022/primeng-types-confirmpopup.mjs.map +0 -1
- package/fesm2022/primeng-types-contextmenu.mjs.map +0 -1
- package/fesm2022/primeng-types-dataview.mjs.map +0 -1
- package/fesm2022/primeng-types-datepicker.mjs.map +0 -1
- package/fesm2022/primeng-types-dialog.mjs.map +0 -1
- package/fesm2022/primeng-types-divider.mjs.map +0 -1
- package/fesm2022/primeng-types-dock.mjs.map +0 -1
- package/fesm2022/primeng-types-drawer.mjs.map +0 -1
- package/fesm2022/primeng-types-editor.mjs.map +0 -1
- package/fesm2022/primeng-types-fieldset.mjs.map +0 -1
- package/fesm2022/primeng-types-fileupload.mjs.map +0 -1
- package/fesm2022/primeng-types-floatlabel.mjs.map +0 -1
- package/fesm2022/primeng-types-fluid.mjs.map +0 -1
- package/fesm2022/primeng-types-galleria.mjs.map +0 -1
- package/fesm2022/primeng-types-gallery.mjs.map +0 -1
- package/fesm2022/primeng-types-iconfield.mjs.map +0 -1
- package/fesm2022/primeng-types-iftalabel.mjs.map +0 -1
- package/fesm2022/primeng-types-image.mjs.map +0 -1
- package/fesm2022/primeng-types-imagecompare.mjs.map +0 -1
- package/fesm2022/primeng-types-inplace.mjs.map +0 -1
- package/fesm2022/primeng-types-inputcolor.mjs.map +0 -1
- package/fesm2022/primeng-types-inputgroup.mjs.map +0 -1
- package/fesm2022/primeng-types-inputgroupaddon.mjs.map +0 -1
- package/fesm2022/primeng-types-inputicon.mjs.map +0 -1
- package/fesm2022/primeng-types-inputmask.mjs.map +0 -1
- package/fesm2022/primeng-types-inputnumber.mjs.map +0 -1
- package/fesm2022/primeng-types-inputotp.mjs.map +0 -1
- package/fesm2022/primeng-types-inputpassword.mjs.map +0 -1
- package/fesm2022/primeng-types-inputtags.mjs.map +0 -1
- package/fesm2022/primeng-types-inputtext.mjs.map +0 -1
- package/fesm2022/primeng-types-knob.mjs.map +0 -1
- package/fesm2022/primeng-types-label.mjs.map +0 -1
- package/fesm2022/primeng-types-listbox.mjs.map +0 -1
- package/fesm2022/primeng-types-megamenu.mjs.map +0 -1
- package/fesm2022/primeng-types-menu.mjs.map +0 -1
- package/fesm2022/primeng-types-menubar.mjs.map +0 -1
- package/fesm2022/primeng-types-message.mjs.map +0 -1
- package/fesm2022/primeng-types-metergroup.mjs.map +0 -1
- package/fesm2022/primeng-types-motion.mjs.map +0 -1
- package/fesm2022/primeng-types-multiselect.mjs.map +0 -1
- package/fesm2022/primeng-types-orderlist.mjs.map +0 -1
- package/fesm2022/primeng-types-organizationchart.mjs.map +0 -1
- package/fesm2022/primeng-types-overlay.mjs.map +0 -1
- package/fesm2022/primeng-types-overlaybadge.mjs.map +0 -1
- package/fesm2022/primeng-types-paginator.mjs.map +0 -1
- package/fesm2022/primeng-types-panel.mjs.map +0 -1
- package/fesm2022/primeng-types-panelmenu.mjs.map +0 -1
- package/fesm2022/primeng-types-password.mjs.map +0 -1
- package/fesm2022/primeng-types-picklist.mjs.map +0 -1
- package/fesm2022/primeng-types-popover.mjs.map +0 -1
- package/fesm2022/primeng-types-progressbar.mjs.map +0 -1
- package/fesm2022/primeng-types-progressspinner.mjs.map +0 -1
- package/fesm2022/primeng-types-radiobutton.mjs.map +0 -1
- package/fesm2022/primeng-types-rating.mjs.map +0 -1
- package/fesm2022/primeng-types-scrollarea.mjs.map +0 -1
- package/fesm2022/primeng-types-scroller.mjs.map +0 -1
- package/fesm2022/primeng-types-scrollpanel.mjs.map +0 -1
- package/fesm2022/primeng-types-scrolltop.mjs.map +0 -1
- package/fesm2022/primeng-types-select.mjs.map +0 -1
- package/fesm2022/primeng-types-selectbutton.mjs.map +0 -1
- package/fesm2022/primeng-types-shared.mjs.map +0 -1
- package/fesm2022/primeng-types-sidebar.mjs.map +0 -1
- package/fesm2022/primeng-types-skeleton.mjs.map +0 -1
- package/fesm2022/primeng-types-slider.mjs.map +0 -1
- package/fesm2022/primeng-types-speeddial.mjs.map +0 -1
- package/fesm2022/primeng-types-splitbutton.mjs.map +0 -1
- package/fesm2022/primeng-types-splitter.mjs.map +0 -1
- package/fesm2022/primeng-types-stepper.mjs.map +0 -1
- package/fesm2022/primeng-types-table.mjs.map +0 -1
- package/fesm2022/primeng-types-tabs.mjs.map +0 -1
- package/fesm2022/primeng-types-tag.mjs.map +0 -1
- package/fesm2022/primeng-types-terminal.mjs.map +0 -1
- package/fesm2022/primeng-types-textarea.mjs.map +0 -1
- package/fesm2022/primeng-types-tieredmenu.mjs.map +0 -1
- package/fesm2022/primeng-types-timeline.mjs.map +0 -1
- package/fesm2022/primeng-types-toast.mjs.map +0 -1
- package/fesm2022/primeng-types-togglebutton.mjs.map +0 -1
- package/fesm2022/primeng-types-toggleswitch.mjs.map +0 -1
- package/fesm2022/primeng-types-toolbar.mjs.map +0 -1
- package/fesm2022/primeng-types-tooltip.mjs.map +0 -1
- package/fesm2022/primeng-types-tree.mjs.map +0 -1
- package/fesm2022/primeng-types-treeselect.mjs.map +0 -1
- package/fesm2022/primeng-types-treetable.mjs.map +0 -1
|
@@ -1,252 +1,277 @@
|
|
|
1
|
-
import { DOCUMENT, isPlatformBrowser } from
|
|
2
|
-
import * as i0 from
|
|
3
|
-
import {
|
|
4
|
-
import { NG_VALIDATORS } from
|
|
5
|
-
import {
|
|
6
|
-
|
|
1
|
+
import { DOCUMENT, isPlatformBrowser } from "@angular/common";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import { Directive, ElementRef, NgModule, PLATFORM_ID, booleanAttribute, effect, forwardRef, inject, input, output } from "@angular/core";
|
|
4
|
+
import { NG_VALIDATORS } from "@angular/forms";
|
|
5
|
+
import { getBrowser, isAndroid } from "@primeuix/utils";
|
|
7
6
|
const KEYFILTER_VALIDATOR = {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
provide: NG_VALIDATORS,
|
|
8
|
+
useExisting: forwardRef(() => KeyFilter),
|
|
9
|
+
multi: true
|
|
11
10
|
};
|
|
12
11
|
const DEFAULT_MASKS = {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
12
|
+
pint: /^[\d]*$/,
|
|
13
|
+
int: /^[-]?[\d]*$/,
|
|
14
|
+
pnum: /^[\d.]*$/,
|
|
15
|
+
money: /^[\d.\s,]*$/,
|
|
16
|
+
num: /^[-]?[\d.]*$/,
|
|
17
|
+
hex: /^[0-9a-f]*$/i,
|
|
18
|
+
email: /^[a-z0-9_.\-@]*$/i,
|
|
19
|
+
alpha: /^[a-z_]*$/i,
|
|
20
|
+
alphanum: /^[a-z0-9_]*$/i
|
|
22
21
|
};
|
|
23
22
|
const KEYS = {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
TAB: 9,
|
|
24
|
+
RETURN: 13,
|
|
25
|
+
ESC: 27,
|
|
26
|
+
BACKSPACE: 8,
|
|
27
|
+
DELETE: 46
|
|
29
28
|
};
|
|
30
29
|
const SAFARI_KEYS = {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
30
|
+
63234: 37,
|
|
31
|
+
63235: 39,
|
|
32
|
+
63232: 38,
|
|
33
|
+
63233: 40,
|
|
34
|
+
63276: 33,
|
|
35
|
+
63277: 34,
|
|
36
|
+
63272: 46,
|
|
37
|
+
63273: 36,
|
|
38
|
+
63275: 35
|
|
40
39
|
};
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
40
|
+
var KeyFilter = class KeyFilter {
|
|
41
|
+
pValidateOnly = input(false, {
|
|
42
|
+
...ngDevMode ? { debugName: "pValidateOnly" } : /* istanbul ignore next */ {},
|
|
43
|
+
transform: booleanAttribute
|
|
44
|
+
});
|
|
45
|
+
pattern = input(void 0, {
|
|
46
|
+
...ngDevMode ? { debugName: "pattern" } : /* istanbul ignore next */ {},
|
|
47
|
+
alias: "pKeyFilter"
|
|
48
|
+
});
|
|
49
|
+
ngModelChange = output();
|
|
50
|
+
regex = /./;
|
|
51
|
+
isAndroid;
|
|
52
|
+
lastValue;
|
|
53
|
+
document = inject(DOCUMENT);
|
|
54
|
+
platformId = inject(PLATFORM_ID);
|
|
55
|
+
el = inject(ElementRef);
|
|
56
|
+
constructor() {
|
|
57
|
+
if (isPlatformBrowser(this.platformId)) this.isAndroid = isAndroid();
|
|
58
|
+
else this.isAndroid = false;
|
|
59
|
+
effect(() => {
|
|
60
|
+
const _pattern = this.pattern();
|
|
61
|
+
if (_pattern instanceof RegExp) this.regex = _pattern;
|
|
62
|
+
else if (_pattern && _pattern in DEFAULT_MASKS) this.regex = DEFAULT_MASKS[_pattern];
|
|
63
|
+
else this.regex = /./;
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
isNavKeyPress(e) {
|
|
67
|
+
let k = e.keyCode;
|
|
68
|
+
k = getBrowser().safari ? SAFARI_KEYS[k] || k : k;
|
|
69
|
+
return k >= 33 && k <= 40 || k == KEYS.RETURN || k == KEYS.TAB || k == KEYS.ESC;
|
|
70
|
+
}
|
|
71
|
+
isSpecialKey(e) {
|
|
72
|
+
let k = e.keyCode || e.charCode;
|
|
73
|
+
return k == 9 || k == 13 || k == 27 || k == 16 || k == 17 || k >= 18 && k <= 20 || getBrowser().opera && !e.shiftKey && (k == 8 || k >= 33 && k <= 35 || k >= 36 && k <= 39 || k >= 44 && k <= 45);
|
|
74
|
+
}
|
|
75
|
+
getKey(e) {
|
|
76
|
+
let k = e.keyCode || e.charCode;
|
|
77
|
+
return getBrowser().safari ? SAFARI_KEYS[k] || k : k;
|
|
78
|
+
}
|
|
79
|
+
getCharCode(e) {
|
|
80
|
+
return e.charCode || e.keyCode || e.which;
|
|
81
|
+
}
|
|
82
|
+
findDelta(value, prevValue) {
|
|
83
|
+
let delta = "";
|
|
84
|
+
for (let i = 0; i < value.length; i++) if (value.substr(0, i) + value.substr(i + value.length - prevValue.length) === prevValue) delta = value.substr(i, value.length - prevValue.length);
|
|
85
|
+
return delta;
|
|
86
|
+
}
|
|
87
|
+
isValidChar(c) {
|
|
88
|
+
return this.regex.test(c);
|
|
89
|
+
}
|
|
90
|
+
isValidString(str) {
|
|
91
|
+
for (let i = 0; i < str.length; i++) if (!this.isValidChar(str.substr(i, 1))) return false;
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
onInput(e) {
|
|
95
|
+
if (this.isAndroid && !this.pValidateOnly()) {
|
|
96
|
+
let val = this.el.nativeElement.value;
|
|
97
|
+
let lastVal = this.lastValue || "";
|
|
98
|
+
let inserted = this.findDelta(val, lastVal);
|
|
99
|
+
let removed = this.findDelta(lastVal, val);
|
|
100
|
+
if (inserted.length > 1 || !inserted && !removed) {
|
|
101
|
+
if (!this.isValidString(val)) {
|
|
102
|
+
this.el.nativeElement.value = lastVal;
|
|
103
|
+
this.ngModelChange.emit(lastVal);
|
|
104
|
+
}
|
|
105
|
+
} else if (!removed) {
|
|
106
|
+
if (!this.isValidChar(inserted)) {
|
|
107
|
+
this.el.nativeElement.value = lastVal;
|
|
108
|
+
this.ngModelChange.emit(lastVal);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
val = this.el.nativeElement.value;
|
|
112
|
+
if (this.isValidString(val)) this.lastValue = val;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
onKeyPress(e) {
|
|
116
|
+
if (this.isAndroid || this.pValidateOnly()) return;
|
|
117
|
+
let browser = getBrowser();
|
|
118
|
+
let k = this.getKey(e);
|
|
119
|
+
if (browser.mozilla && (e.ctrlKey || e.altKey)) return;
|
|
120
|
+
else if (k == 17 || k == 18) return;
|
|
121
|
+
if (k == 13) return;
|
|
122
|
+
let c = this.getCharCode(e);
|
|
123
|
+
let cc = String.fromCharCode(c);
|
|
124
|
+
let ok = true;
|
|
125
|
+
if (!browser.mozilla && (this.isSpecialKey(e) || !cc)) return;
|
|
126
|
+
let combinedValue = (this.el.nativeElement.value || "") + cc;
|
|
127
|
+
ok = this.regex.test(combinedValue);
|
|
128
|
+
if (!ok) e.preventDefault();
|
|
129
|
+
}
|
|
130
|
+
onPaste(e) {
|
|
131
|
+
let clipboardData = e.clipboardData;
|
|
132
|
+
if (!clipboardData && this.document.defaultView) {
|
|
133
|
+
const windowClipboard = this.document.defaultView.clipboardData;
|
|
134
|
+
if (windowClipboard) clipboardData = { getData: () => windowClipboard.getData("text") };
|
|
135
|
+
}
|
|
136
|
+
if (clipboardData) {
|
|
137
|
+
let pattern = /\{[0-9]+\}/;
|
|
138
|
+
const pastedText = clipboardData.getData("text");
|
|
139
|
+
if (pattern.test(this.regex.toString())) {
|
|
140
|
+
if (!this.regex.test(pastedText)) {
|
|
141
|
+
e.preventDefault();
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
} else for (let char of pastedText.toString()) if (!this.regex.test(char)) {
|
|
145
|
+
e.preventDefault();
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
validate(_c) {
|
|
151
|
+
if (this.pValidateOnly()) {
|
|
152
|
+
let value = this.el.nativeElement.value;
|
|
153
|
+
if (value && !this.regex.test(value)) return { validatePattern: false };
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
157
|
+
minVersion: "12.0.0",
|
|
158
|
+
version: "22.2.0",
|
|
159
|
+
ngImport: i0,
|
|
160
|
+
type: KeyFilter,
|
|
161
|
+
deps: [],
|
|
162
|
+
target: i0.ɵɵFactoryTarget.Directive
|
|
163
|
+
});
|
|
164
|
+
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
165
|
+
minVersion: "17.1.0",
|
|
166
|
+
version: "22.2.0",
|
|
167
|
+
type: KeyFilter,
|
|
168
|
+
isStandalone: true,
|
|
169
|
+
selector: "[pKeyFilter]",
|
|
170
|
+
inputs: {
|
|
171
|
+
pValidateOnly: {
|
|
172
|
+
classPropertyName: "pValidateOnly",
|
|
173
|
+
publicName: "pValidateOnly",
|
|
174
|
+
isSignal: true,
|
|
175
|
+
isRequired: false,
|
|
176
|
+
transformFunction: null
|
|
177
|
+
},
|
|
178
|
+
pattern: {
|
|
179
|
+
classPropertyName: "pattern",
|
|
180
|
+
publicName: "pKeyFilter",
|
|
181
|
+
isSignal: true,
|
|
182
|
+
isRequired: false,
|
|
183
|
+
transformFunction: null
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
outputs: { ngModelChange: "ngModelChange" },
|
|
187
|
+
host: { listeners: {
|
|
188
|
+
"input": "onInput($event)",
|
|
189
|
+
"keypress": "onKeyPress($event)",
|
|
190
|
+
"paste": "onPaste($event)"
|
|
191
|
+
} },
|
|
192
|
+
providers: [KEYFILTER_VALIDATOR],
|
|
193
|
+
ngImport: i0
|
|
194
|
+
});
|
|
195
|
+
};
|
|
196
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
197
|
+
minVersion: "12.0.0",
|
|
198
|
+
version: "22.2.0",
|
|
199
|
+
ngImport: i0,
|
|
200
|
+
type: KeyFilter,
|
|
201
|
+
decorators: [{
|
|
202
|
+
type: Directive,
|
|
203
|
+
args: [{
|
|
204
|
+
selector: "[pKeyFilter]",
|
|
205
|
+
standalone: true,
|
|
206
|
+
providers: [KEYFILTER_VALIDATOR],
|
|
207
|
+
host: {
|
|
208
|
+
"(input)": "onInput($event)",
|
|
209
|
+
"(keypress)": "onKeyPress($event)",
|
|
210
|
+
"(paste)": "onPaste($event)"
|
|
211
|
+
}
|
|
212
|
+
}]
|
|
213
|
+
}],
|
|
214
|
+
ctorParameters: () => [],
|
|
215
|
+
propDecorators: {
|
|
216
|
+
pValidateOnly: [{
|
|
217
|
+
type: i0.Input,
|
|
218
|
+
args: [{
|
|
219
|
+
isSignal: true,
|
|
220
|
+
alias: "pValidateOnly",
|
|
221
|
+
required: false
|
|
222
|
+
}]
|
|
223
|
+
}],
|
|
224
|
+
pattern: [{
|
|
225
|
+
type: i0.Input,
|
|
226
|
+
args: [{
|
|
227
|
+
isSignal: true,
|
|
228
|
+
alias: "pKeyFilter",
|
|
229
|
+
required: false
|
|
230
|
+
}]
|
|
231
|
+
}],
|
|
232
|
+
ngModelChange: [{
|
|
233
|
+
type: i0.Output,
|
|
234
|
+
args: ["ngModelChange"]
|
|
235
|
+
}]
|
|
236
|
+
}
|
|
237
|
+
});
|
|
238
|
+
var KeyFilterModule = class KeyFilterModule {
|
|
239
|
+
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
240
|
+
minVersion: "12.0.0",
|
|
241
|
+
version: "22.2.0",
|
|
242
|
+
ngImport: i0,
|
|
243
|
+
type: KeyFilterModule,
|
|
244
|
+
deps: [],
|
|
245
|
+
target: i0.ɵɵFactoryTarget.NgModule
|
|
246
|
+
});
|
|
247
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
248
|
+
minVersion: "14.0.0",
|
|
249
|
+
version: "22.2.0",
|
|
250
|
+
ngImport: i0,
|
|
251
|
+
type: KeyFilterModule,
|
|
252
|
+
imports: [KeyFilter],
|
|
253
|
+
exports: [KeyFilter]
|
|
254
|
+
});
|
|
255
|
+
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
256
|
+
minVersion: "12.0.0",
|
|
257
|
+
version: "22.2.0",
|
|
258
|
+
ngImport: i0,
|
|
259
|
+
type: KeyFilterModule
|
|
260
|
+
});
|
|
261
|
+
};
|
|
262
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
263
|
+
minVersion: "12.0.0",
|
|
264
|
+
version: "22.2.0",
|
|
265
|
+
ngImport: i0,
|
|
266
|
+
type: KeyFilterModule,
|
|
267
|
+
decorators: [{
|
|
268
|
+
type: NgModule,
|
|
269
|
+
args: [{
|
|
270
|
+
imports: [KeyFilter],
|
|
271
|
+
exports: [KeyFilter]
|
|
272
|
+
}]
|
|
273
|
+
}]
|
|
274
|
+
});
|
|
251
275
|
export { KEYFILTER_VALIDATOR, KeyFilter, KeyFilterModule };
|
|
252
|
-
|
|
276
|
+
|
|
277
|
+
//# sourceMappingURL=primeng-keyfilter.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primeng-keyfilter.mjs","sources":["../../src/keyfilter/keyfilter.ts","../../src/keyfilter/primeng-keyfilter.ts"],"sourcesContent":["import { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, Directive, effect, ElementRef, forwardRef, inject, input, NgModule, output, PLATFORM_ID, Provider } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\nimport { getBrowser, isAndroid } from '@primeuix/utils';\n\nexport type KeyFilterPattern = 'pint' | 'int' | 'pnum' | 'money' | 'num' | 'hex' | 'email' | 'alpha' | 'alphanum';\n\nexport const KEYFILTER_VALIDATOR: Provider = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => KeyFilter),\n multi: true\n};\n\ntype SafariKeys = {\n 63234: number;\n 63235: number;\n 63232: number;\n 63233: number;\n 63276: number;\n 63277: number;\n 63272: number;\n 63273: number;\n 63275: number;\n};\n\ntype Keys = {\n TAB: number;\n RETURN: number;\n ESC: number;\n BACKSPACE: number;\n DELETE: number;\n};\n\nconst DEFAULT_MASKS: Record<KeyFilterPattern, RegExp> = {\n pint: /^[\\d]*$/,\n int: /^[-]?[\\d]*$/,\n pnum: /^[\\d\\.]*$/,\n money: /^[\\d\\.\\s,]*$/,\n num: /^[-]?[\\d\\.]*$/,\n hex: /^[0-9a-f]*$/i,\n email: /^[a-z0-9_\\.\\-@]*$/i,\n alpha: /^[a-z_]*$/i,\n alphanum: /^[a-z0-9_]*$/i\n};\n\nconst KEYS: Keys = {\n TAB: 9,\n RETURN: 13,\n ESC: 27,\n BACKSPACE: 8,\n DELETE: 46\n};\n\nconst SAFARI_KEYS: SafariKeys = {\n 63234: 37, // left\n 63235: 39, // right\n 63232: 38, // up\n 63233: 40, // down\n 63276: 33, // page up\n 63277: 34, // page down\n 63272: 46, // delete\n 63273: 36, // home\n 63275: 35 // end\n};\n/**\n * KeyFilter Directive is a built-in feature of InputText to restrict user input based on a regular expression.\n * @group Components\n */\n@Directive({\n selector: '[pKeyFilter]',\n standalone: true,\n providers: [KEYFILTER_VALIDATOR],\n host: {\n '(input)': 'onInput($event)',\n '(keypress)': 'onKeyPress($event)',\n '(paste)': 'onPaste($event)'\n }\n})\nexport class KeyFilter implements Validator {\n /**\n * When enabled, instead of blocking keys, input is validated internally to test against the regular expression.\n * @group Props\n */\n pValidateOnly = input(false, { transform: booleanAttribute });\n /**\n * Sets the pattern for key filtering.\n * @group Props\n */\n pattern = input<RegExp | KeyFilterPattern | null | undefined>(undefined, { alias: 'pKeyFilter' });\n\n /**\n * Emits a value whenever the ngModel of the component changes.\n * @param {string} modelValue - Custom model change event.\n * @group Emits\n */\n ngModelChange = output<string>();\n\n regex: RegExp = /./;\n\n isAndroid: boolean;\n\n lastValue: any;\n\n private document = inject(DOCUMENT);\n\n private platformId = inject(PLATFORM_ID);\n\n el = inject(ElementRef);\n\n constructor() {\n if (isPlatformBrowser(this.platformId)) {\n this.isAndroid = isAndroid();\n } else {\n this.isAndroid = false;\n }\n\n effect(() => {\n const _pattern = this.pattern();\n if (_pattern instanceof RegExp) {\n this.regex = _pattern;\n } else if (_pattern && _pattern in DEFAULT_MASKS) {\n this.regex = DEFAULT_MASKS[_pattern as keyof typeof DEFAULT_MASKS];\n } else {\n this.regex = /./;\n }\n });\n }\n\n isNavKeyPress(e: KeyboardEvent) {\n let k = e.keyCode;\n k = getBrowser().safari ? (SAFARI_KEYS as any)[k] || k : k;\n\n return (k >= 33 && k <= 40) || k == KEYS.RETURN || k == KEYS.TAB || k == KEYS.ESC;\n }\n\n isSpecialKey(e: KeyboardEvent) {\n let k = e.keyCode || e.charCode;\n\n return k == 9 || k == 13 || k == 27 || k == 16 || k == 17 || (k >= 18 && k <= 20) || (getBrowser().opera && !e.shiftKey && (k == 8 || (k >= 33 && k <= 35) || (k >= 36 && k <= 39) || (k >= 44 && k <= 45)));\n }\n\n getKey(e: KeyboardEvent) {\n let k = e.keyCode || e.charCode;\n return getBrowser().safari ? (SAFARI_KEYS as any)[k] || k : k;\n }\n\n getCharCode(e: KeyboardEvent) {\n return e.charCode || e.keyCode || e.which;\n }\n\n findDelta(value: string, prevValue: string) {\n let delta = '';\n\n for (let i = 0; i < value.length; i++) {\n let str = value.substr(0, i) + value.substr(i + value.length - prevValue.length);\n\n if (str === prevValue) delta = value.substr(i, value.length - prevValue.length);\n }\n\n return delta;\n }\n\n isValidChar(c: string) {\n return (<RegExp>this.regex).test(c);\n }\n\n isValidString(str: string) {\n for (let i = 0; i < str.length; i++) {\n if (!this.isValidChar(str.substr(i, 1))) {\n return false;\n }\n }\n\n return true;\n }\n\n onInput(e: Event) {\n if (this.isAndroid && !this.pValidateOnly()) {\n let val = this.el.nativeElement.value;\n let lastVal = this.lastValue || '';\n\n let inserted = this.findDelta(val, lastVal);\n let removed = this.findDelta(lastVal, val);\n let pasted = inserted.length > 1 || (!inserted && !removed);\n\n if (pasted) {\n if (!this.isValidString(val)) {\n this.el.nativeElement.value = lastVal;\n this.ngModelChange.emit(lastVal);\n }\n } else if (!removed) {\n if (!this.isValidChar(inserted)) {\n this.el.nativeElement.value = lastVal;\n this.ngModelChange.emit(lastVal);\n }\n }\n\n val = this.el.nativeElement.value;\n if (this.isValidString(val)) {\n this.lastValue = val;\n }\n }\n }\n\n onKeyPress(e: KeyboardEvent) {\n if (this.isAndroid || this.pValidateOnly()) {\n return;\n }\n\n let browser = getBrowser();\n let k = this.getKey(e);\n\n if (browser.mozilla && (e.ctrlKey || e.altKey)) {\n return;\n } else if (k == 17 || k == 18) {\n return;\n }\n\n // Enter key\n if (k == 13) {\n return;\n }\n\n let c = this.getCharCode(e);\n let cc = String.fromCharCode(c);\n let ok = true;\n\n if (!browser.mozilla && (this.isSpecialKey(e) || !cc)) {\n return;\n }\n\n let existingValue = this.el.nativeElement.value || '';\n let combinedValue = existingValue + cc;\n\n ok = (<RegExp>this.regex).test(combinedValue);\n\n if (!ok) {\n e.preventDefault();\n }\n }\n\n onPaste(e: ClipboardEvent) {\n let clipboardData = e.clipboardData;\n\n // Fallback for older browsers\n if (!clipboardData && this.document.defaultView) {\n const windowClipboard = (<any>this.document.defaultView).clipboardData;\n if (windowClipboard) {\n clipboardData = {\n getData: (_format: string) => windowClipboard.getData('text')\n } as DataTransfer;\n }\n }\n\n if (clipboardData) {\n let pattern = /\\{[0-9]+\\}/;\n const pastedText = clipboardData.getData('text');\n if (pattern.test(this.regex.toString())) {\n if (!this.regex.test(pastedText)) {\n e.preventDefault();\n return;\n }\n } else {\n for (let char of pastedText.toString()) {\n if (!this.regex.test(char)) {\n e.preventDefault();\n return;\n }\n }\n }\n }\n }\n\n validate(_c: AbstractControl): { [key: string]: any } | any {\n if (this.pValidateOnly()) {\n let value = this.el.nativeElement.value;\n if (value && !this.regex.test(value)) {\n return {\n validatePattern: false\n };\n }\n }\n }\n}\n\n@NgModule({\n imports: [KeyFilter],\n exports: [KeyFilter]\n})\nexport class KeyFilterModule {}\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-keyfilter.mjs","names":[],"sources":["../../src/keyfilter/keyfilter.ts"],"sourcesContent":["import { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, Directive, effect, ElementRef, forwardRef, inject, input, NgModule, output, PLATFORM_ID, Provider } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, Validator } from '@angular/forms';\nimport { getBrowser, isAndroid } from '@primeuix/utils';\n\nexport type KeyFilterPattern = 'pint' | 'int' | 'pnum' | 'money' | 'num' | 'hex' | 'email' | 'alpha' | 'alphanum';\n\nexport const KEYFILTER_VALIDATOR: Provider = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => KeyFilter),\n multi: true\n};\n\ntype SafariKeys = {\n 63234: number;\n 63235: number;\n 63232: number;\n 63233: number;\n 63276: number;\n 63277: number;\n 63272: number;\n 63273: number;\n 63275: number;\n};\n\ntype Keys = {\n TAB: number;\n RETURN: number;\n ESC: number;\n BACKSPACE: number;\n DELETE: number;\n};\n\nconst DEFAULT_MASKS: Record<KeyFilterPattern, RegExp> = {\n pint: /^[\\d]*$/,\n int: /^[-]?[\\d]*$/,\n pnum: /^[\\d.]*$/,\n money: /^[\\d.\\s,]*$/,\n num: /^[-]?[\\d.]*$/,\n hex: /^[0-9a-f]*$/i,\n email: /^[a-z0-9_.\\-@]*$/i,\n alpha: /^[a-z_]*$/i,\n alphanum: /^[a-z0-9_]*$/i\n};\n\nconst KEYS: Keys = {\n TAB: 9,\n RETURN: 13,\n ESC: 27,\n BACKSPACE: 8,\n DELETE: 46\n};\n\nconst SAFARI_KEYS: SafariKeys = {\n 63234: 37, // left\n 63235: 39, // right\n 63232: 38, // up\n 63233: 40, // down\n 63276: 33, // page up\n 63277: 34, // page down\n 63272: 46, // delete\n 63273: 36, // home\n 63275: 35 // end\n};\n\n/**\n * KeyFilter Directive is a built-in feature of InputText to restrict user input based on a regular expression.\n * @group Components\n */\n@Directive({\n selector: '[pKeyFilter]',\n standalone: true,\n providers: [KEYFILTER_VALIDATOR],\n host: {\n '(input)': 'onInput($event)',\n '(keypress)': 'onKeyPress($event)',\n '(paste)': 'onPaste($event)'\n }\n})\nexport class KeyFilter implements Validator {\n /**\n * When enabled, instead of blocking keys, input is validated internally to test against the regular expression.\n * @group Props\n */\n pValidateOnly = input(false, { transform: booleanAttribute });\n /**\n * Sets the pattern for key filtering.\n * @group Props\n */\n pattern = input<RegExp | KeyFilterPattern | null | undefined>(undefined, { alias: 'pKeyFilter' });\n\n /**\n * Emits a value whenever the ngModel of the component changes.\n * @param {string} modelValue - Custom model change event.\n * @group Emits\n */\n ngModelChange = output<string>();\n\n regex: RegExp = /./;\n\n isAndroid: boolean;\n\n lastValue: any;\n\n private document = inject(DOCUMENT);\n\n private platformId = inject(PLATFORM_ID);\n\n el = inject(ElementRef);\n\n constructor() {\n if (isPlatformBrowser(this.platformId)) {\n this.isAndroid = isAndroid();\n } else {\n this.isAndroid = false;\n }\n\n effect(() => {\n const _pattern = this.pattern();\n\n if (_pattern instanceof RegExp) {\n this.regex = _pattern;\n } else if (_pattern && _pattern in DEFAULT_MASKS) {\n this.regex = DEFAULT_MASKS[_pattern as keyof typeof DEFAULT_MASKS];\n } else {\n this.regex = /./;\n }\n });\n }\n\n isNavKeyPress(e: KeyboardEvent) {\n let k = e.keyCode;\n\n k = getBrowser().safari ? (SAFARI_KEYS as any)[k] || k : k;\n\n return (k >= 33 && k <= 40) || k == KEYS.RETURN || k == KEYS.TAB || k == KEYS.ESC;\n }\n\n isSpecialKey(e: KeyboardEvent) {\n let k = e.keyCode || e.charCode;\n\n return k == 9 || k == 13 || k == 27 || k == 16 || k == 17 || (k >= 18 && k <= 20) || (getBrowser().opera && !e.shiftKey && (k == 8 || (k >= 33 && k <= 35) || (k >= 36 && k <= 39) || (k >= 44 && k <= 45)));\n }\n\n getKey(e: KeyboardEvent) {\n let k = e.keyCode || e.charCode;\n\n return getBrowser().safari ? (SAFARI_KEYS as any)[k] || k : k;\n }\n\n getCharCode(e: KeyboardEvent) {\n return e.charCode || e.keyCode || e.which;\n }\n\n findDelta(value: string, prevValue: string) {\n let delta = '';\n\n for (let i = 0; i < value.length; i++) {\n let str = value.substr(0, i) + value.substr(i + value.length - prevValue.length);\n\n if (str === prevValue) delta = value.substr(i, value.length - prevValue.length);\n }\n\n return delta;\n }\n\n isValidChar(c: string) {\n return (<RegExp>this.regex).test(c);\n }\n\n isValidString(str: string) {\n for (let i = 0; i < str.length; i++) {\n if (!this.isValidChar(str.substr(i, 1))) {\n return false;\n }\n }\n\n return true;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onInput(e: Event) {\n if (this.isAndroid && !this.pValidateOnly()) {\n let val = this.el.nativeElement.value;\n let lastVal = this.lastValue || '';\n\n let inserted = this.findDelta(val, lastVal);\n let removed = this.findDelta(lastVal, val);\n let pasted = inserted.length > 1 || (!inserted && !removed);\n\n if (pasted) {\n if (!this.isValidString(val)) {\n this.el.nativeElement.value = lastVal;\n this.ngModelChange.emit(lastVal);\n }\n } else if (!removed) {\n if (!this.isValidChar(inserted)) {\n this.el.nativeElement.value = lastVal;\n this.ngModelChange.emit(lastVal);\n }\n }\n\n val = this.el.nativeElement.value;\n\n if (this.isValidString(val)) {\n this.lastValue = val;\n }\n }\n }\n\n onKeyPress(e: KeyboardEvent) {\n if (this.isAndroid || this.pValidateOnly()) {\n return;\n }\n\n let browser = getBrowser();\n let k = this.getKey(e);\n\n if (browser.mozilla && (e.ctrlKey || e.altKey)) {\n return;\n } else if (k == 17 || k == 18) {\n return;\n }\n\n // Enter key\n if (k == 13) {\n return;\n }\n\n let c = this.getCharCode(e);\n let cc = String.fromCharCode(c);\n let ok = true;\n\n if (!browser.mozilla && (this.isSpecialKey(e) || !cc)) {\n return;\n }\n\n let existingValue = this.el.nativeElement.value || '';\n let combinedValue = existingValue + cc;\n\n ok = (<RegExp>this.regex).test(combinedValue);\n\n if (!ok) {\n e.preventDefault();\n }\n }\n\n onPaste(e: ClipboardEvent) {\n let clipboardData = e.clipboardData;\n\n // Fallback for older browsers\n if (!clipboardData && this.document.defaultView) {\n const windowClipboard = (<any>this.document.defaultView).clipboardData;\n\n if (windowClipboard) {\n clipboardData = {\n getData: () => windowClipboard.getData('text')\n } as unknown as DataTransfer;\n }\n }\n\n if (clipboardData) {\n let pattern = /\\{[0-9]+\\}/;\n const pastedText = clipboardData.getData('text');\n\n if (pattern.test(this.regex.toString())) {\n if (!this.regex.test(pastedText)) {\n e.preventDefault();\n\n return;\n }\n } else {\n for (let char of pastedText.toString()) {\n if (!this.regex.test(char)) {\n e.preventDefault();\n\n return;\n }\n }\n }\n }\n }\n\n validate(_c: AbstractControl): { [key: string]: any } | any {\n if (this.pValidateOnly()) {\n let value = this.el.nativeElement.value;\n\n if (value && !this.regex.test(value)) {\n return {\n validatePattern: false\n };\n }\n }\n }\n}\n\n@NgModule({\n imports: [KeyFilter],\n exports: [KeyFilter]\n})\nexport class KeyFilterModule {}\n"],"mappings":"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"}
|