primeng 18.0.0-beta.5 → 18.0.0-rc.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/accordion/accordion.d.ts +2 -4
- package/api/primeicons.d.ts +3 -3
- package/api/scrolleroptions.d.ts +10 -0
- package/api/selectitemgroup.d.ts +2 -2
- package/api/shared.d.ts +2 -2
- package/autocomplete/autocomplete.d.ts +11 -12
- package/badge/badge.d.ts +16 -2
- package/blockui/blockui.d.ts +2 -2
- package/breadcrumb/breadcrumb.d.ts +3 -4
- package/button/button.d.ts +3 -4
- package/calendar/calendar.d.ts +12 -12
- package/card/card.d.ts +2 -2
- package/carousel/carousel.d.ts +3 -3
- package/cascadeselect/cascadeselect.d.ts +31 -15
- package/cascadeselect/style/cascadeselectstyle.d.ts +8 -1
- package/checkbox/checkbox.d.ts +2 -2
- package/chip/chip.d.ts +2 -2
- package/confirmdialog/confirmdialog.d.ts +3 -3
- package/confirmpopup/confirmpopup.d.ts +3 -4
- package/contextmenu/contextmenu.d.ts +2 -2
- package/dataview/dataview.d.ts +9 -10
- package/datepicker/datepicker.d.ts +8 -8
- package/defer/defer.d.ts +2 -0
- package/dialog/dialog.d.ts +4 -4
- package/drawer/drawer.d.ts +2 -2
- package/dropdown/dropdown.d.ts +0 -23
- package/editor/editor.d.ts +2 -2
- package/esm2022/accordion/accordion.mjs +9 -35
- package/esm2022/accordion/style/accordionstyle.mjs +9 -7
- package/esm2022/api/primeicons.mjs +4 -4
- package/esm2022/api/scrolleroptions.mjs +1 -1
- package/esm2022/api/selectitemgroup.mjs +1 -1
- package/esm2022/api/shared.mjs +6 -6
- package/esm2022/autocomplete/autocomplete.mjs +277 -311
- package/esm2022/autocomplete/style/autocompletestyle.mjs +12 -12
- package/esm2022/avatar/avatar.mjs +3 -3
- package/esm2022/avatar/style/avatarstyle.mjs +3 -3
- package/esm2022/badge/badge.mjs +33 -3
- package/esm2022/badge/style/badgestyle.mjs +3 -3
- package/esm2022/base/style/basestyle.mjs +6 -4
- package/esm2022/basecomponent/basecomponent.mjs +8 -2
- package/esm2022/blockui/blockui.mjs +6 -6
- package/esm2022/breadcrumb/breadcrumb.mjs +94 -101
- package/esm2022/breadcrumb/style/breadcrumbstyle.mjs +5 -1
- package/esm2022/button/button.mjs +19 -37
- package/esm2022/button/style/buttonstyle.mjs +17 -7
- package/esm2022/buttongroup/style/buttongroupstyle.mjs +9 -9
- package/esm2022/calendar/calendar.mjs +114 -114
- package/esm2022/calendar/style/calendarstyle.mjs +5 -5
- package/esm2022/card/card.mjs +10 -9
- package/esm2022/carousel/carousel.mjs +20 -19
- package/esm2022/carousel/style/carouselstyle.mjs +10 -1
- package/esm2022/cascadeselect/cascadeselect.mjs +182 -107
- package/esm2022/cascadeselect/style/cascadeselectstyle.mjs +37 -22
- package/esm2022/checkbox/checkbox.mjs +8 -8
- package/esm2022/chip/chip.mjs +10 -10
- package/esm2022/chip/style/chipstyle.mjs +2 -2
- package/esm2022/colorpicker/style/colorpickerstyle.mjs +29 -1
- package/esm2022/confirmdialog/confirmdialog.mjs +17 -14
- package/esm2022/confirmpopup/confirmpopup.mjs +45 -36
- package/esm2022/contextmenu/contextmenu.mjs +12 -12
- package/esm2022/contextmenu/style/contextmenustyle.mjs +11 -1
- package/esm2022/dataview/dataview.mjs +39 -113
- package/esm2022/datepicker/datepicker.mjs +91 -91
- package/esm2022/datepicker/style/datepickerstyle.mjs +23 -16
- package/esm2022/defer/defer.mjs +7 -1
- package/esm2022/dialog/dialog.mjs +29 -28
- package/esm2022/dialog/style/dialogstyle.mjs +22 -1
- package/esm2022/divider/style/dividerstyle.mjs +18 -14
- package/esm2022/dock/style/dockstyle.mjs +11 -1
- package/esm2022/drawer/drawer.mjs +8 -8
- package/esm2022/drawer/style/drawerstyle.mjs +5 -1
- package/esm2022/dropdown/dropdown.mjs +4 -18
- package/esm2022/dropdown/style/dropdownstyle.mjs +4 -4
- package/esm2022/editor/editor.mjs +1 -1
- package/esm2022/editor/style/editorstyle.mjs +52 -158
- package/esm2022/fieldset/fieldset.mjs +20 -21
- package/esm2022/fileupload/fileupload.mjs +108 -68
- package/esm2022/floatlabel/style/floatlabelstyle.mjs +5 -5
- package/esm2022/galleria/galleria.mjs +6 -1
- package/esm2022/galleria/style/galleriastyle.mjs +18 -1
- package/esm2022/iconfield/style/iconfieldstyle.mjs +2 -2
- package/esm2022/iftalabel/iftalabel.mjs +6 -6
- package/esm2022/iftalabel/style/iftalabelstyle.mjs +5 -5
- package/esm2022/image/image.mjs +36 -69
- package/esm2022/image/style/imagestyle.mjs +7 -7
- package/esm2022/imagecompare/imagecompare.mjs +158 -0
- package/esm2022/imagecompare/primeng-imagecompare.mjs +5 -0
- package/esm2022/imagecompare/public_api.mjs +3 -0
- package/esm2022/imagecompare/style/imagecomparestyle.mjs +124 -0
- package/esm2022/inplace/inplace.mjs +8 -8
- package/esm2022/inputmask/inputmask.mjs +10 -10
- package/esm2022/inputmask/style/inputmaskstyle.mjs +14 -7
- package/esm2022/inputnumber/inputnumber.mjs +41 -43
- package/esm2022/inputnumber/style/inputnumberstyle.mjs +27 -19
- package/esm2022/inputotp/inputotp.mjs +1 -13
- package/esm2022/inputtext/style/inputtextstyle.mjs +15 -9
- package/esm2022/keyfilter/keyfilter.mjs +4 -3
- package/esm2022/listbox/listbox.mjs +8 -53
- package/esm2022/megamenu/megamenu.mjs +18 -18
- package/esm2022/megamenu/style/megamenustyle.mjs +17 -1
- package/esm2022/menu/menu.mjs +46 -28
- package/esm2022/menubar/menubar.mjs +25 -25
- package/esm2022/menubar/style/menubarstyle.mjs +22 -2
- package/esm2022/message/message.mjs +12 -12
- package/esm2022/messages/messages.mjs +2 -1
- package/esm2022/metergroup/style/metergroupstyle.mjs +9 -9
- package/esm2022/multiselect/multiselect.mjs +214 -202
- package/esm2022/multiselect/style/multiselectstyle.mjs +13 -15
- package/esm2022/orderlist/orderlist.mjs +38 -80
- package/esm2022/organizationchart/style/organizationchartstyle.mjs +11 -22
- package/esm2022/overlaypanel/overlaypanel.mjs +24 -24
- package/esm2022/paginator/paginator.mjs +48 -48
- package/esm2022/paginator/style/paginatorstyle.mjs +10 -3
- package/esm2022/panel/panel.mjs +17 -37
- package/esm2022/panelmenu/panelmenu.mjs +32 -43
- package/esm2022/panelmenu/style/panelmenustyle.mjs +13 -5
- package/esm2022/password/password.mjs +26 -26
- package/esm2022/password/style/passwordstyle.mjs +14 -6
- package/esm2022/picklist/picklist.mjs +5 -5
- package/esm2022/popover/popover.mjs +21 -25
- package/esm2022/progressbar/style/progressbarstyle.mjs +29 -29
- package/esm2022/radiobutton/style/radiobuttonstyle.mjs +2 -2
- package/esm2022/rating/rating.mjs +12 -12
- package/esm2022/scroller/scroller.mjs +9 -9
- package/esm2022/scrollpanel/scrollpanel.mjs +4 -4
- package/esm2022/scrollpanel/style/scrollpanelstyle.mjs +3 -2
- package/esm2022/scrolltop/style/scrolltopstyle.mjs +7 -2
- package/esm2022/select/select.mjs +66 -113
- package/esm2022/select/style/selectstyle.mjs +14 -20
- package/esm2022/selectbutton/style/selectbuttonstyle.mjs +5 -5
- package/esm2022/skeleton/style/skeletonstyle.mjs +15 -2
- package/esm2022/slider/slider.mjs +18 -11
- package/esm2022/slider/style/sliderstyle.mjs +6 -6
- package/esm2022/speeddial/speeddial.mjs +1 -16
- package/esm2022/speeddial/style/speeddialstyle.mjs +2 -2
- package/esm2022/splitbutton/splitbutton.mjs +8 -8
- package/esm2022/splitbutton/style/splitbuttonstyle.mjs +9 -9
- package/esm2022/splitter/splitter.mjs +58 -18
- package/esm2022/stepper/style/stepperstyle.mjs +6 -1
- package/esm2022/styleclass/styleclass.mjs +2 -2
- package/esm2022/table/style/tablestyle.mjs +14 -7
- package/esm2022/table/table.mjs +411 -278
- package/esm2022/tabmenu/tabmenu.mjs +15 -33
- package/esm2022/tabs/tab.mjs +4 -3
- package/esm2022/tabs/tablist.mjs +9 -6
- package/esm2022/tabview/tabview.mjs +72 -64
- package/esm2022/terminal/style/terminalstyle.mjs +2 -2
- package/esm2022/textarea/style/textareastyle.mjs +9 -7
- package/esm2022/tieredmenu/style/tieredmenustyle.mjs +6 -1
- package/esm2022/tieredmenu/tieredmenu.mjs +12 -12
- package/esm2022/timeline/style/timelinestyle.mjs +2 -1
- package/esm2022/timeline/timeline.mjs +1 -16
- package/esm2022/toast/style/toaststyle.mjs +7 -1
- package/esm2022/togglebutton/style/togglebuttonstyle.mjs +2 -2
- package/esm2022/toggleswitch/toggleswitch.mjs +1 -10
- package/esm2022/tooltip/tooltip.mjs +33 -25
- package/esm2022/tree/style/treestyle.mjs +8 -6
- package/esm2022/tree/tree.mjs +44 -44
- package/esm2022/treeselect/style/treeselectstyle.mjs +15 -12
- package/esm2022/treeselect/treeselect.mjs +49 -49
- package/esm2022/treetable/style/treetablestyle.mjs +4 -4
- package/esm2022/treetable/treetable.mjs +20 -4
- package/esm2022/usestyle/usestyle.mjs +3 -2
- package/fesm2022/primeng-accordion.mjs +16 -40
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-api.mjs +8 -8
- package/fesm2022/primeng-api.mjs.map +1 -1
- package/fesm2022/primeng-autocomplete.mjs +287 -321
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-avatar.mjs +4 -4
- package/fesm2022/primeng-avatar.mjs.map +1 -1
- package/fesm2022/primeng-badge.mjs +34 -4
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-base.mjs +5 -3
- package/fesm2022/primeng-base.mjs.map +1 -1
- package/fesm2022/primeng-basecomponent.mjs +7 -1
- package/fesm2022/primeng-basecomponent.mjs.map +1 -1
- package/fesm2022/primeng-blockui.mjs +5 -5
- package/fesm2022/primeng-blockui.mjs.map +1 -1
- package/fesm2022/primeng-breadcrumb.mjs +97 -100
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs +34 -42
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs +8 -8
- package/fesm2022/primeng-buttongroup.mjs.map +1 -1
- package/fesm2022/primeng-calendar.mjs +117 -117
- package/fesm2022/primeng-calendar.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs +9 -8
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-carousel.mjs +28 -18
- package/fesm2022/primeng-carousel.mjs.map +1 -1
- package/fesm2022/primeng-cascadeselect.mjs +218 -128
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-checkbox.mjs +7 -7
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs +10 -10
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-colorpicker.mjs +28 -0
- package/fesm2022/primeng-colorpicker.mjs.map +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +16 -13
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs +44 -35
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +21 -11
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +38 -112
- package/fesm2022/primeng-dataview.mjs.map +1 -1
- package/fesm2022/primeng-datepicker.mjs +112 -105
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-defer.mjs +6 -0
- package/fesm2022/primeng-defer.mjs.map +1 -1
- package/fesm2022/primeng-dialog.mjs +49 -27
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +17 -13
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dock.mjs +10 -0
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-drawer.mjs +11 -7
- package/fesm2022/primeng-drawer.mjs.map +1 -1
- package/fesm2022/primeng-dropdown.mjs +6 -20
- package/fesm2022/primeng-dropdown.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +51 -157
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs +19 -20
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +107 -67
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs +4 -4
- package/fesm2022/primeng-floatlabel.mjs.map +1 -1
- package/fesm2022/primeng-galleria.mjs +22 -0
- package/fesm2022/primeng-galleria.mjs.map +1 -1
- package/fesm2022/primeng-iconfield.mjs +1 -1
- package/fesm2022/primeng-iconfield.mjs.map +1 -1
- package/fesm2022/primeng-iftalabel.mjs +9 -9
- package/fesm2022/primeng-iftalabel.mjs.map +1 -1
- package/fesm2022/primeng-image.mjs +41 -74
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-imagecompare.mjs +286 -0
- package/fesm2022/primeng-imagecompare.mjs.map +1 -0
- package/fesm2022/primeng-inplace.mjs +7 -7
- package/fesm2022/primeng-inplace.mjs.map +1 -1
- package/fesm2022/primeng-inputmask.mjs +22 -15
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +66 -60
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs +0 -12
- package/fesm2022/primeng-inputotp.mjs.map +1 -1
- package/fesm2022/primeng-inputtext.mjs +14 -8
- package/fesm2022/primeng-inputtext.mjs.map +1 -1
- package/fesm2022/primeng-keyfilter.mjs +3 -2
- package/fesm2022/primeng-keyfilter.mjs.map +1 -1
- package/fesm2022/primeng-listbox.mjs +7 -52
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +33 -17
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +45 -27
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +45 -25
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs +11 -11
- package/fesm2022/primeng-message.mjs.map +1 -1
- package/fesm2022/primeng-messages.mjs +1 -0
- package/fesm2022/primeng-messages.mjs.map +1 -1
- package/fesm2022/primeng-metergroup.mjs +8 -8
- package/fesm2022/primeng-metergroup.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +225 -215
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +37 -79
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs +10 -21
- package/fesm2022/primeng-organizationchart.mjs.map +1 -1
- package/fesm2022/primeng-overlaypanel.mjs +23 -23
- package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
- package/fesm2022/primeng-paginator.mjs +56 -49
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +16 -36
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +43 -46
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-password.mjs +38 -30
- package/fesm2022/primeng-password.mjs.map +1 -1
- package/fesm2022/primeng-picklist.mjs +4 -4
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs +20 -24
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +28 -28
- package/fesm2022/primeng-progressbar.mjs.map +1 -1
- package/fesm2022/primeng-radiobutton.mjs +1 -1
- package/fesm2022/primeng-radiobutton.mjs.map +1 -1
- package/fesm2022/primeng-rating.mjs +11 -11
- package/fesm2022/primeng-rating.mjs.map +1 -1
- package/fesm2022/primeng-scroller.mjs +8 -8
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +5 -4
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs +6 -1
- package/fesm2022/primeng-scrolltop.mjs.map +1 -1
- package/fesm2022/primeng-select.mjs +78 -131
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs +4 -4
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs +14 -1
- package/fesm2022/primeng-skeleton.mjs.map +1 -1
- package/fesm2022/primeng-slider.mjs +22 -15
- package/fesm2022/primeng-slider.mjs.map +1 -1
- package/fesm2022/primeng-speeddial.mjs +1 -16
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +15 -15
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs +59 -19
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs +5 -0
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-styleclass.mjs +1 -1
- package/fesm2022/primeng-styleclass.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +424 -284
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabmenu.mjs +14 -32
- package/fesm2022/primeng-tabmenu.mjs.map +1 -1
- package/fesm2022/primeng-tabs.mjs +11 -7
- package/fesm2022/primeng-tabs.mjs.map +1 -1
- package/fesm2022/primeng-tabview.mjs +71 -63
- package/fesm2022/primeng-tabview.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +1 -1
- package/fesm2022/primeng-terminal.mjs.map +1 -1
- package/fesm2022/primeng-textarea.mjs +8 -6
- package/fesm2022/primeng-textarea.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +16 -11
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-timeline.mjs +1 -15
- package/fesm2022/primeng-timeline.mjs.map +1 -1
- package/fesm2022/primeng-toast.mjs +6 -0
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs +1 -1
- package/fesm2022/primeng-togglebutton.mjs.map +1 -1
- package/fesm2022/primeng-toggleswitch.mjs +0 -9
- package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
- package/fesm2022/primeng-tooltip.mjs +32 -24
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +50 -48
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +62 -59
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +22 -6
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-usestyle.mjs +2 -1
- package/fesm2022/primeng-usestyle.mjs.map +1 -1
- package/fieldset/fieldset.d.ts +3 -3
- package/fileupload/fileupload.d.ts +21 -5
- package/iftalabel/iftalabel.d.ts +2 -2
- package/image/image.d.ts +6 -7
- package/imagecompare/imagecompare.d.ts +52 -0
- package/imagecompare/index.d.ts +5 -0
- package/imagecompare/public_api.d.ts +2 -0
- package/imagecompare/style/imagecomparestyle.d.ts +35 -0
- package/inplace/inplace.d.ts +2 -2
- package/inputmask/inputmask.d.ts +2 -2
- package/inputnumber/inputnumber.d.ts +4 -5
- package/inputotp/inputotp.d.ts +1 -2
- package/listbox/listbox.d.ts +2 -3
- package/megamenu/megamenu.d.ts +4 -4
- package/menu/menu.d.ts +10 -4
- package/menubar/menubar.d.ts +5 -5
- package/message/message.d.ts +2 -2
- package/multiselect/multiselect.d.ts +16 -16
- package/orderlist/orderlist.d.ts +10 -11
- package/overlaypanel/overlaypanel.d.ts +3 -4
- package/package.json +219 -213
- package/paginator/paginator.d.ts +6 -6
- package/panel/panel.d.ts +3 -4
- package/panelmenu/panelmenu.d.ts +2 -3
- package/password/password.d.ts +4 -4
- package/popover/popover.d.ts +7 -5
- package/rating/rating.d.ts +4 -4
- package/scroller/scroller.d.ts +2 -2
- package/select/select.d.ts +12 -13
- package/speeddial/speeddial.d.ts +2 -3
- package/splitbutton/splitbutton.d.ts +2 -2
- package/splitter/splitter.d.ts +9 -2
- package/table/table.d.ts +47 -6
- package/tabmenu/tabmenu.d.ts +5 -6
- package/tabview/tabview.d.ts +4 -5
- package/tieredmenu/tieredmenu.d.ts +2 -2
- package/timeline/timeline.d.ts +0 -1
- package/toggleswitch/toggleswitch.d.ts +0 -1
- package/tooltip/tooltip.d.ts +2 -1
- package/tree/tree.d.ts +6 -6
- package/treeselect/treeselect.d.ts +9 -9
@@ -79,7 +79,7 @@ const theme = ({ dt }) => `
|
|
79
79
|
}
|
80
80
|
|
81
81
|
.p-password-toggle-mask-icon {
|
82
|
-
|
82
|
+
inset-inline-end: ${dt('form.field.padding.x')};
|
83
83
|
color: ${dt('password.icon.color')};
|
84
84
|
position: absolute;
|
85
85
|
top: 50%;
|
@@ -89,12 +89,20 @@ const theme = ({ dt }) => `
|
|
89
89
|
}
|
90
90
|
|
91
91
|
.p-password:has(.p-password-toggle-mask-icon) .p-password-input {
|
92
|
-
padding-
|
92
|
+
padding-inline-end: calc((${dt('form.field.padding.x')} * 2) + ${dt('icon.size')});
|
93
93
|
}
|
94
94
|
|
95
95
|
/* For PrimeNG */
|
96
|
-
p-password.ng-invalid.ng-dirty
|
97
|
-
border-color: ${dt('
|
96
|
+
p-password.ng-invalid.ng-dirty .p-inputtext {
|
97
|
+
border-color: ${dt('inputtext.invalid.border.color')};
|
98
|
+
}
|
99
|
+
|
100
|
+
p-password.ng-invalid.ng-dirty .p-inputtext:enabled:focus {
|
101
|
+
border-color: ${dt('inputtext.focus.border.color')};
|
102
|
+
}
|
103
|
+
|
104
|
+
p-password.ng-invalid.ng-dirty .p-inputtext::placeholder {
|
105
|
+
color: ${dt('inputtext.invalid.placeholder.color')};
|
98
106
|
}
|
99
107
|
|
100
108
|
.p-password-clear-icon {
|
@@ -102,7 +110,7 @@ p-password.ng-invalid.ng-dirty > .p-password.p-inputwrapper > .p-inputtext {
|
|
102
110
|
top: 50%;
|
103
111
|
margin-top: -0.5rem;
|
104
112
|
cursor: pointer;
|
105
|
-
|
113
|
+
inset-inline-end: ${dt('form.field.padding.x')};
|
106
114
|
color: ${dt('form.field.icon.color')};
|
107
115
|
}
|
108
116
|
|
@@ -220,11 +228,11 @@ function Password_ng_container_5_Template(rf, ctx) { if (rf & 1) {
|
|
220
228
|
} if (rf & 2) {
|
221
229
|
const ctx_r3 = i0.ɵɵnextContext();
|
222
230
|
i0.ɵɵadvance();
|
223
|
-
i0.ɵɵproperty("ngIf", !ctx_r3.
|
231
|
+
i0.ɵɵproperty("ngIf", !ctx_r3.cleariconTemplate);
|
224
232
|
i0.ɵɵadvance();
|
225
233
|
i0.ɵɵattribute("data-pc-section", "clearIcon");
|
226
234
|
i0.ɵɵadvance();
|
227
|
-
i0.ɵɵproperty("ngTemplateOutlet", ctx_r3.
|
235
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r3.cleariconTemplate);
|
228
236
|
} }
|
229
237
|
function Password_ng_container_6_ng_container_1_EyeSlashIcon_1_Template(rf, ctx) { if (rf & 1) {
|
230
238
|
const _r5 = i0.ɵɵgetCurrentView();
|
@@ -247,7 +255,7 @@ function Password_ng_container_6_ng_container_1_span_2_Template(rf, ctx) { if (r
|
|
247
255
|
} if (rf & 2) {
|
248
256
|
const ctx_r3 = i0.ɵɵnextContext(3);
|
249
257
|
i0.ɵɵadvance();
|
250
|
-
i0.ɵɵproperty("ngTemplateOutlet", ctx_r3.
|
258
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r3.hideiconTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction0(2, _c7));
|
251
259
|
} }
|
252
260
|
function Password_ng_container_6_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
253
261
|
i0.ɵɵelementContainerStart(0);
|
@@ -256,9 +264,9 @@ function Password_ng_container_6_ng_container_1_Template(rf, ctx) { if (rf & 1)
|
|
256
264
|
} if (rf & 2) {
|
257
265
|
const ctx_r3 = i0.ɵɵnextContext(2);
|
258
266
|
i0.ɵɵadvance();
|
259
|
-
i0.ɵɵproperty("ngIf", !ctx_r3.
|
267
|
+
i0.ɵɵproperty("ngIf", !ctx_r3.hideiconTemplate);
|
260
268
|
i0.ɵɵadvance();
|
261
|
-
i0.ɵɵproperty("ngIf", ctx_r3.
|
269
|
+
i0.ɵɵproperty("ngIf", ctx_r3.hideiconTemplate);
|
262
270
|
} }
|
263
271
|
function Password_ng_container_6_ng_container_2_EyeIcon_1_Template(rf, ctx) { if (rf & 1) {
|
264
272
|
const _r7 = i0.ɵɵgetCurrentView();
|
@@ -281,7 +289,7 @@ function Password_ng_container_6_ng_container_2_span_2_Template(rf, ctx) { if (r
|
|
281
289
|
} if (rf & 2) {
|
282
290
|
const ctx_r3 = i0.ɵɵnextContext(3);
|
283
291
|
i0.ɵɵadvance();
|
284
|
-
i0.ɵɵproperty("ngTemplateOutlet", ctx_r3.
|
292
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r3.showiconTemplate);
|
285
293
|
} }
|
286
294
|
function Password_ng_container_6_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
287
295
|
i0.ɵɵelementContainerStart(0);
|
@@ -290,9 +298,9 @@ function Password_ng_container_6_ng_container_2_Template(rf, ctx) { if (rf & 1)
|
|
290
298
|
} if (rf & 2) {
|
291
299
|
const ctx_r3 = i0.ɵɵnextContext(2);
|
292
300
|
i0.ɵɵadvance();
|
293
|
-
i0.ɵɵproperty("ngIf", !ctx_r3.
|
301
|
+
i0.ɵɵproperty("ngIf", !ctx_r3.showiconTemplate);
|
294
302
|
i0.ɵɵadvance();
|
295
|
-
i0.ɵɵproperty("ngIf", ctx_r3.
|
303
|
+
i0.ɵɵproperty("ngIf", ctx_r3.showiconTemplate);
|
296
304
|
} }
|
297
305
|
function Password_ng_container_6_Template(rf, ctx) { if (rf & 1) {
|
298
306
|
i0.ɵɵelementContainerStart(0);
|
@@ -832,9 +840,9 @@ class Password extends BaseComponent {
|
|
832
840
|
contentTemplate;
|
833
841
|
footerTemplate;
|
834
842
|
headerTemplate;
|
835
|
-
|
836
|
-
|
837
|
-
|
843
|
+
cleariconTemplate;
|
844
|
+
hideiconTemplate;
|
845
|
+
showiconTemplate;
|
838
846
|
overlayVisible = false;
|
839
847
|
meter;
|
840
848
|
infoText;
|
@@ -1120,9 +1128,9 @@ class Password extends BaseComponent {
|
|
1120
1128
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.contentTemplate = _t.first);
|
1121
1129
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.footerTemplate = _t.first);
|
1122
1130
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headerTemplate = _t.first);
|
1123
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.
|
1124
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.
|
1125
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.
|
1131
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.cleariconTemplate = _t.first);
|
1132
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.hideiconTemplate = _t.first);
|
1133
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.showiconTemplate = _t.first);
|
1126
1134
|
} }, viewQuery: function Password_Query(rf, ctx) { if (rf & 1) {
|
1127
1135
|
i0.ɵɵviewQuery(_c6, 5);
|
1128
1136
|
} if (rf & 2) {
|
@@ -1187,23 +1195,23 @@ class Password extends BaseComponent {
|
|
1187
1195
|
[pAutoFocus]="autofocus"
|
1188
1196
|
/>
|
1189
1197
|
<ng-container *ngIf="showClear && value != null">
|
1190
|
-
<TimesIcon *ngIf="!
|
1198
|
+
<TimesIcon *ngIf="!cleariconTemplate" class="p-password-clear-icon" (click)="clear()" [attr.data-pc-section]="'clearIcon'" />
|
1191
1199
|
<span (click)="clear()" class="p-password-clear-icon" [attr.data-pc-section]="'clearIcon'">
|
1192
|
-
<ng-template *ngTemplateOutlet="
|
1200
|
+
<ng-template *ngTemplateOutlet="cleariconTemplate"></ng-template>
|
1193
1201
|
</span>
|
1194
1202
|
</ng-container>
|
1195
1203
|
|
1196
1204
|
<ng-container *ngIf="toggleMask">
|
1197
1205
|
<ng-container *ngIf="unmasked">
|
1198
|
-
<EyeSlashIcon class="p-password-toggle-mask-icon p-password-mask-icon" *ngIf="!
|
1199
|
-
<span *ngIf="
|
1200
|
-
<ng-template *ngTemplateOutlet="
|
1206
|
+
<EyeSlashIcon class="p-password-toggle-mask-icon p-password-mask-icon" *ngIf="!hideiconTemplate" (click)="onMaskToggle()" [attr.data-pc-section]="'hideIcon'" />
|
1207
|
+
<span *ngIf="hideiconTemplate" (click)="onMaskToggle()">
|
1208
|
+
<ng-template *ngTemplateOutlet="hideiconTemplate; context: { class: 'p-password-toggle-mask-icon p-password-mask-icon' }"></ng-template>
|
1201
1209
|
</span>
|
1202
1210
|
</ng-container>
|
1203
1211
|
<ng-container *ngIf="!unmasked">
|
1204
|
-
<EyeIcon *ngIf="!
|
1205
|
-
<span *ngIf="
|
1206
|
-
<ng-template *ngTemplateOutlet="
|
1212
|
+
<EyeIcon *ngIf="!showiconTemplate" class="p-password-toggle-mask-icon p-password-mask-icon" (click)="onMaskToggle()" [attr.data-pc-section]="'showIcon'" />
|
1213
|
+
<span *ngIf="showiconTemplate" (click)="onMaskToggle()">
|
1214
|
+
<ng-template *ngTemplateOutlet="showiconTemplate"></ng-template>
|
1207
1215
|
</span>
|
1208
1216
|
</ng-container>
|
1209
1217
|
</ng-container>
|
@@ -1323,13 +1331,13 @@ class Password extends BaseComponent {
|
|
1323
1331
|
}], headerTemplate: [{
|
1324
1332
|
type: ContentChild,
|
1325
1333
|
args: ['header']
|
1326
|
-
}],
|
1334
|
+
}], cleariconTemplate: [{
|
1327
1335
|
type: ContentChild,
|
1328
1336
|
args: ['clearicon']
|
1329
|
-
}],
|
1337
|
+
}], hideiconTemplate: [{
|
1330
1338
|
type: ContentChild,
|
1331
1339
|
args: ['headericon']
|
1332
|
-
}],
|
1340
|
+
}], showiconTemplate: [{
|
1333
1341
|
type: ContentChild,
|
1334
1342
|
args: ['showicon']
|
1335
1343
|
}] }); })();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-password.mjs","sources":["../../src/password/style/passwordstyle.ts","../../src/password/password.ts","../../src/password/primeng-password.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-password {\n display: inline-flex;\n position: relative;\n}\n\n.p-password .p-password-overlay {\n min-width: 100%;\n}\n\n.p-password-meter {\n height: ${dt('password.meter.height')};\n background: ${dt('password.meter.background')};\n border-radius: ${dt('password.meter.border.radius')};\n}\n\n.p-password-meter-label {\n height: 100%;\n width: 0;\n transition: width 1s ease-in-out;\n border-radius: ${dt('password.meter.border.radius')};\n}\n\n.p-password-meter-weak {\n background: ${dt('password.strength.weak.background')};\n}\n\n.p-password-meter-medium {\n background: ${dt('password.strength.medium.background')};\n}\n\n.p-password-meter-strong {\n background: ${dt('password.strength.strong.background')};\n}\n\n.p-password-fluid {\n display: flex;\n}\n\n.p-password-fluid .p-password-input {\n width: 100%;\n}\n\n.p-password-input::-ms-reveal,\n.p-password-input::-ms-clear {\n display: none;\n}\n\n.p-password-overlay {\n position: absolute;\n padding: ${dt('password.overlay.padding')};\n background: ${dt('password.overlay.background')};\n color: ${dt('password.overlay.color')};\n border: 1px solid ${dt('password.overlay.border.color')};\n box-shadow: ${dt('password.overlay.shadow')};\n border-radius: ${dt('password.overlay.border.radius')};\n}\n\n.p-password-content {\n display: flex;\n flex-direction: column;\n gap: ${dt('password.content.gap')};\n}\n\n.p-password-toggle-mask-icon {\n right: ${dt('form.field.padding.x')};\n color: ${dt('password.icon.color')};\n position: absolute;\n top: 50%;\n margin-top: calc(-1 * calc(${dt('icon.size')} / 2));\n width: ${dt('icon.size')};\n height: ${dt('icon.size')};\n}\n\n.p-password:has(.p-password-toggle-mask-icon) .p-password-input {\n padding-right: calc((${dt('form.field.padding.x')} * 2) + ${dt('icon.size')});\n}\n\n/* For PrimeNG */\np-password.ng-invalid.ng-dirty > .p-password.p-inputwrapper > .p-inputtext {\n border-color: ${dt('form.field.invalid.border.color')};\n}\n\n.p-password-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -0.5rem;\n cursor: pointer;\n right: ${dt('form.field.padding.x')};\n color: ${dt('form.field.icon.color')};\n}\n\n.p-password-fluid-directive {\n width:100%\n}\n`;\n\nconst inlineStyles = {\n root: ({ instance }) => ({ position: instance.appendTo === 'self' ? 'relative' : undefined })\n};\n\nconst classes = {\n root: ({ instance }) => ({\n 'p-password p-component p-inputwrapper': true,\n 'p-inputwrapper-filled': instance.filled(),\n 'p-inputwrapper-focus': instance.focused,\n 'p-password-fluid': instance.hasFluid\n }),\n pcInput: 'p-password-input',\n maskIcon: 'p-password-toggle-mask-icon p-password-mask-icon',\n unmaskIcon: 'p-password-toggle-mask-icon p-password-unmask-icon',\n overlay: 'p-password-overlay p-component',\n content: 'p-password-content',\n meter: 'p-password-meter',\n meterLabel: ({ instance }) => `p-password-meter-label ${instance.meter ? 'p-password-meter-' + instance.meter.strength : ''}`,\n meterText: 'p-password-meter-text'\n};\n\n@Injectable()\nexport class PasswordStyle extends BaseStyle {\n name = 'password';\n\n theme = theme;\n\n classes = classes;\n\n inlineStyles = inlineStyles;\n}\n\n/**\n *\n * Password displays strength indicator for password fields.\n *\n * [Live Demo](https://www.primeng.org/password/)\n *\n * @module passwordstyle\n *\n */\n\nexport enum PasswordClasses {\n /**\n * Class name of the root element\n */\n root = 'p-password',\n /**\n * Class name of the pt input element\n */\n pcInput = 'p-password-input',\n /**\n * Class name of the mask icon element\n */\n maskIcon = 'p-password-mask-icon',\n /**\n * Class name of the unmask icon element\n */\n unmaskIcon = 'p-password-unmask-icon',\n /**\n * Class name of the overlay element\n */\n overlay = 'p-password-overlay',\n /**\n * Class name of the meter element\n */\n meter = 'p-password-meter',\n /**\n * Class name of the meter label element\n */\n meterLabel = 'p-password-meter-label',\n /**\n * Class name of the meter text element\n */\n meterText = 'p-password-meter-text'\n}\n\nexport interface PasswordStyle extends BaseStyle {}\n","import { animate, AnimationEvent, style, transition, trigger } from '@angular/animations';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n Directive,\n DoCheck,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostListener,\n inject,\n Input,\n NgModule,\n NgZone,\n numberAttribute,\n OnDestroy,\n OnInit,\n Output,\n Pipe,\n PipeTransform,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { absolutePosition, addClass, getOuterWidth, hasClass, isTouchDevice, relativePosition, removeClass } from '@primeuix/utils';\nimport { OverlayService, SharedModule, TranslationKeys } from 'primeng/api';\nimport { AutoFocus } from 'primeng/autofocus';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { ConnectedOverlayScrollHandler, DomHandler } from 'primeng/dom';\nimport { EyeIcon, EyeSlashIcon, TimesIcon } from 'primeng/icons';\nimport { InputText } from 'primeng/inputtext';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { Subscription } from 'rxjs';\nimport { PasswordStyle } from './style/passwordstyle';\n\ntype Meter = {\n strength: string;\n width: string;\n};\n/**\n * Password directive.\n * @group Components\n */\n@Directive({\n selector: '[pPassword]',\n standalone: true,\n host: {\n class: 'p-password p-inputtext p-component p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\" || config.inputVariant() === \"filled\"',\n '[class.p-password-fluid-directive]': 'hasFluid'\n },\n providers: [PasswordStyle]\n})\nexport class PasswordDirective extends BaseComponent implements OnDestroy, DoCheck {\n /**\n * Text to prompt password entry. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() promptLabel: string = 'Enter a password';\n /**\n * Text for a weak password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() weakLabel: string = 'Weak';\n /**\n * Text for a medium password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() mediumLabel: string = 'Medium';\n /**\n * Text for a strong password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() strongLabel: string = 'Strong';\n /**\n * Whether to show the strength indicator or not.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) feedback: boolean = true;\n /**\n * Sets the visibility of the password field.\n * @group Props\n */\n @Input() set showPassword(show: boolean) {\n this.el.nativeElement.type = show ? 'text' : 'password';\n }\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Spans 100% width of the container when enabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean = false;\n\n panel: Nullable<HTMLDivElement>;\n\n meter: Nullable<Meter>;\n\n info: Nullable<HTMLDivElement>;\n\n filled: Nullable<boolean>;\n\n content: Nullable<HTMLDivElement>;\n\n label: Nullable<HTMLLabelElement>;\n\n scrollHandler: Nullable<ConnectedOverlayScrollHandler>;\n\n documentResizeListener: VoidListener;\n\n _componentStyle = inject(PasswordStyle);\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n return this.fluid || !!fluidComponent;\n }\n\n constructor(public zone: NgZone) {\n super();\n }\n\n ngDoCheck() {\n this.updateFilledState();\n }\n\n @HostListener('input', ['$event'])\n onInput(e: Event) {\n this.updateFilledState();\n }\n\n updateFilledState() {\n this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;\n }\n\n createPanel() {\n if (isPlatformBrowser(this.platformId)) {\n this.panel = this.renderer.createElement('div');\n this.renderer.addClass(this.panel, 'p-password-overlay');\n this.renderer.addClass(this.panel, 'p-component');\n\n this.content = this.renderer.createElement('div');\n this.renderer.addClass(this.content, 'p-password-content');\n this.renderer.appendChild(this.panel, this.content);\n\n this.meter = this.renderer.createElement('div');\n this.renderer.addClass(this.meter, 'p-password-meter');\n this.renderer.appendChild(this.content, this.meter);\n\n this.label = this.renderer.createElement('div');\n this.renderer.addClass(this.label, 'p-password-meter-label');\n this.renderer.appendChild(this.meter, this.label);\n\n this.info = this.renderer.createElement('div');\n this.renderer.addClass(this.info, 'p-password-meter-text');\n this.renderer.setProperty(this.info, 'textContent', this.promptLabel);\n this.renderer.appendChild(this.content, this.info);\n\n this.renderer.setStyle(this.panel, 'minWidth', `${this.el.nativeElement.offsetWidth}px`);\n this.renderer.appendChild(document.body, this.panel);\n }\n }\n\n showOverlay() {\n if (this.feedback) {\n if (!this.panel) {\n this.createPanel();\n }\n\n this.renderer.setStyle(this.panel, 'zIndex', String(++DomHandler.zindex));\n this.renderer.setStyle(this.panel, 'display', 'block');\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n addClass(this.panel, 'p-connected-overlay-visible');\n this.bindScrollListener();\n this.bindDocumentResizeListener();\n }, 1);\n });\n absolutePosition(this.panel, this.el.nativeElement);\n }\n }\n\n hideOverlay() {\n if (this.feedback && this.panel) {\n addClass(this.panel, 'p-connected-overlay-hidden');\n removeClass(this.panel, 'p-connected-overlay-visible');\n this.unbindScrollListener();\n this.unbindDocumentResizeListener();\n\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n this.ngOnDestroy();\n }, 150);\n });\n }\n }\n\n @HostListener('focus')\n onFocus() {\n this.showOverlay();\n }\n\n @HostListener('blur')\n onBlur() {\n this.hideOverlay();\n }\n\n @HostListener('keyup', ['$event'])\n onKeyup(e: Event) {\n if (this.feedback) {\n let value = (e.target as HTMLInputElement).value,\n label = null,\n meterPos = null;\n\n if (value.length === 0) {\n label = this.promptLabel;\n meterPos = '0px 0px';\n } else {\n var score = this.testStrength(value);\n\n if (score < 30) {\n label = this.weakLabel;\n meterPos = '0px -10px';\n } else if (score >= 30 && score < 80) {\n label = this.mediumLabel;\n meterPos = '0px -20px';\n } else if (score >= 80) {\n label = this.strongLabel;\n meterPos = '0px -30px';\n }\n }\n\n if (!this.panel || !hasClass(this.panel, 'p-connected-overlay-visible')) {\n this.showOverlay();\n }\n\n this.renderer.setStyle(this.meter, 'backgroundPosition', meterPos);\n (this.info as HTMLDivElement).textContent = label;\n }\n }\n\n testStrength(str: string) {\n let grade: number = 0;\n let val: Nullable<RegExpMatchArray>;\n\n val = str.match('[0-9]');\n grade += this.normalize(val ? val.length : 1 / 4, 1) * 25;\n\n val = str.match('[a-zA-Z]');\n grade += this.normalize(val ? val.length : 1 / 2, 3) * 10;\n\n val = str.match('[!@#$%^&*?_~.,;=]');\n grade += this.normalize(val ? val.length : 1 / 6, 1) * 35;\n\n val = str.match('[A-Z]');\n grade += this.normalize(val ? val.length : 1 / 6, 1) * 30;\n\n grade *= str.length / 8;\n\n return grade > 100 ? 100 : grade;\n }\n\n normalize(x: number, y: number) {\n let diff = x - y;\n\n if (diff <= 0) return x / y;\n else return 1 + 0.5 * (x / (x + y / 4));\n }\n\n get disabled(): boolean {\n return this.el.nativeElement.disabled;\n }\n\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.el.nativeElement, () => {\n if (hasClass(this.panel, 'p-connected-overlay-visible')) {\n this.hideOverlay();\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n }\n\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n\n bindDocumentResizeListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.documentResizeListener) {\n const window = this.document.defaultView as Window;\n this.documentResizeListener = this.renderer.listen(window, 'resize', this.onWindowResize.bind(this));\n }\n }\n }\n\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n this.documentResizeListener();\n this.documentResizeListener = null;\n }\n }\n\n onWindowResize() {\n if (!isTouchDevice()) {\n this.hideOverlay();\n }\n }\n\n ngOnDestroy() {\n if (this.panel) {\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n this.unbindDocumentResizeListener();\n\n this.renderer.removeChild(this.document.body, this.panel);\n this.panel = null;\n this.meter = null;\n this.info = null;\n }\n\n super.ngOnDestroy();\n }\n}\n\ntype Mapper<T, G> = (item: T, ...args: any[]) => G;\n\n@Pipe({\n name: 'mapper',\n pure: true,\n standalone: true\n})\nexport class MapperPipe implements PipeTransform {\n public transform<T, G>(value: T, mapper: Mapper<T, G>, ...args: unknown[]): G {\n return mapper(value, ...args);\n }\n}\n\nexport const Password_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Password),\n multi: true\n};\n/**\n * Password displays strength indicator for password fields.\n * @group Components\n */\n@Component({\n selector: 'p-password',\n standalone: true,\n imports: [CommonModule, InputText, AutoFocus, TimesIcon, EyeSlashIcon, EyeIcon, MapperPipe, SharedModule],\n template: `\n <div [ngClass]=\"rootClass\" [ngStyle]=\"style\" [class]=\"styleClass\" [attr.data-pc-name]=\"'password'\" [attr.data-pc-section]=\"'root'\">\n <input\n #input\n [attr.label]=\"label\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledBy]=\"ariaLabelledBy\"\n [attr.id]=\"inputId\"\n pInputText\n [disabled]=\"disabled\"\n [size]=\"size\"\n [ngClass]=\"disabled | mapper: inputFieldClass\"\n [ngStyle]=\"inputStyle\"\n [class]=\"inputStyleClass\"\n [attr.type]=\"unmasked | mapper: inputType\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"autocomplete\"\n [value]=\"value\"\n [variant]=\"variant\"\n (input)=\"onInput($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (keyup)=\"onKeyUp($event)\"\n [attr.maxlength]=\"maxLength\"\n [attr.data-pc-section]=\"'input'\"\n [pAutoFocus]=\"autofocus\"\n />\n <ng-container *ngIf=\"showClear && value != null\">\n <TimesIcon *ngIf=\"!clearIconTemplate\" class=\"p-password-clear-icon\" (click)=\"clear()\" [attr.data-pc-section]=\"'clearIcon'\" />\n <span (click)=\"clear()\" class=\"p-password-clear-icon\" [attr.data-pc-section]=\"'clearIcon'\">\n <ng-template *ngTemplateOutlet=\"clearIconTemplate\"></ng-template>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"toggleMask\">\n <ng-container *ngIf=\"unmasked\">\n <EyeSlashIcon class=\"p-password-toggle-mask-icon p-password-mask-icon\" *ngIf=\"!hideIconTemplate\" (click)=\"onMaskToggle()\" [attr.data-pc-section]=\"'hideIcon'\" />\n <span *ngIf=\"hideIconTemplate\" (click)=\"onMaskToggle()\">\n <ng-template *ngTemplateOutlet=\"hideIconTemplate; context: { class: 'p-password-toggle-mask-icon p-password-mask-icon' }\"></ng-template>\n </span>\n </ng-container>\n <ng-container *ngIf=\"!unmasked\">\n <EyeIcon *ngIf=\"!showIconTemplate\" class=\"p-password-toggle-mask-icon p-password-mask-icon\" (click)=\"onMaskToggle()\" [attr.data-pc-section]=\"'showIcon'\" />\n <span *ngIf=\"showIconTemplate\" (click)=\"onMaskToggle()\">\n <ng-template *ngTemplateOutlet=\"showIconTemplate\"></ng-template>\n </span>\n </ng-container>\n </ng-container>\n\n <div\n #overlay\n *ngIf=\"overlayVisible\"\n class=\"p-password-overlay p-component\"\n (click)=\"onOverlayClick($event)\"\n [@overlayAnimation]=\"{\n value: 'visible',\n params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions }\n }\"\n (@overlayAnimation.start)=\"onAnimationStart($event)\"\n (@overlayAnimation.done)=\"onAnimationEnd($event)\"\n [attr.data-pc-section]=\"'panel'\"\n >\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <ng-container *ngIf=\"contentTemplate; else content\">\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n </ng-container>\n <ng-template #content>\n <div class=\"p-password-content\">\n <div class=\"p-password-meter\" [attr.data-pc-section]=\"'meter'\">\n <div [ngClass]=\"meter | mapper: strengthClass\" [ngStyle]=\"{ width: meter ? meter.width : '' }\" [attr.data-pc-section]=\"'meterLabel'\"></div>\n </div>\n <div class=\"p-password-meter-text\" [attr.data-pc-section]=\"'info'\">{{ infoText }}</div>\n </div>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n `,\n animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])],\n providers: [Password_VALUE_ACCESSOR, PasswordStyle],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class Password extends BaseComponent implements OnInit {\n /**\n * Defines a string that labels the input for accessibility.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Whether the component should span the full width of its parent.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean | undefined;\n /**\n * Specifies one or more IDs in the DOM that labels the input field.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Label of the input for accessibility.\n * @group Props\n */\n @Input() label: string | undefined;\n /**\n * Indicates whether the component is disabled or not.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean | undefined;\n /**\n * Text to prompt password entry. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() promptLabel: string | undefined;\n /**\n * Regex value for medium regex.\n * @group Props\n */\n @Input() mediumRegex: string = '^(((?=.*[a-z])(?=.*[A-Z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[A-Z])(?=.*[0-9])))(?=.{6,})';\n /**\n * Regex value for strong regex.\n * @group Props\n */\n @Input() strongRegex: string = '^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.{8,})';\n /**\n * Text for a weak password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() weakLabel: string | undefined;\n /**\n * Text for a medium password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() mediumLabel: string | undefined;\n /**\n * specifies the maximum number of characters allowed in the input element.\n * @group Props\n */\n @Input({ transform: numberAttribute }) maxLength: number | undefined;\n /**\n * Text for a strong password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() strongLabel: string | undefined;\n /**\n * Identifier of the accessible input element.\n * @group Props\n */\n @Input() inputId: string | undefined;\n /**\n * Whether to show the strength indicator or not.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) feedback: boolean = true;\n /**\n * Id of the element or \"body\" for document where the overlay should be appended to.\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Whether to show an icon to display the password as plain text.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) toggleMask: boolean | undefined;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() size: 'large' | 'small';\n /**\n * Style class of the input field.\n * @group Props\n */\n @Input() inputStyleClass: string | undefined;\n /**\n * Style class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the input field.\n * @group Props\n */\n @Input() inputStyle: { [klass: string]: any } | null | undefined;\n /**\n * Transition options of the show animation.\n * @group Props\n */\n @Input() showTransitionOptions: string = '.12s cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Transition options of the hide animation.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '.1s linear';\n /**\n * Specify automated assistance in filling out password by browser.\n * @group Props\n */\n @Input() autocomplete: string | undefined;\n /**\n * Advisory information to display on input.\n * @group Props\n */\n @Input() placeholder: string | undefined;\n /**\n * When enabled, a clear icon is displayed to clear the value.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showClear: boolean = false;\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 * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Callback to invoke when the component receives focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onFocus: EventEmitter<Event> = new EventEmitter<Event>();\n /**\n * Callback to invoke when the component loses focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onBlur: EventEmitter<Event> = new EventEmitter<Event>();\n /**\n * Callback to invoke when clear button is clicked.\n * @group Emits\n */\n @Output() onClear: EventEmitter<any> = new EventEmitter<any>();\n\n @ViewChild('input') input!: ElementRef;\n\n @ContentChild('content') contentTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('footerT') footerTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('header') headerTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('clearicon') clearIconTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('headericon') hideIconTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('showicon') showIconTemplate: Nullable<TemplateRef<any>>;\n\n overlayVisible: boolean = false;\n\n meter: Nullable<Meter>;\n\n infoText: Nullable<string>;\n\n focused: boolean = false;\n\n unmasked: boolean = false;\n\n mediumCheckRegExp!: RegExp;\n\n strongCheckRegExp!: RegExp;\n\n resizeListener: VoidListener;\n\n scrollHandler: Nullable<ConnectedOverlayScrollHandler>;\n\n overlay: HTMLElement | ElementRef | null | undefined;\n\n value: Nullable<string> = null;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n translationSubscription: Nullable<Subscription>;\n\n _componentStyle = inject(PasswordStyle);\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n return this.fluid || !!fluidComponent;\n }\n\n overlayService = inject(OverlayService);\n\n ngOnInit() {\n super.ngOnInit();\n this.infoText = this.promptText();\n this.mediumCheckRegExp = new RegExp(this.mediumRegex);\n this.strongCheckRegExp = new RegExp(this.strongRegex);\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n this.updateUI(this.value || '');\n });\n }\n\n onAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.overlay = event.element;\n ZIndexUtils.set('overlay', this.overlay, this.config.zIndex.overlay);\n this.appendContainer();\n this.alignOverlay();\n this.bindScrollListener();\n this.bindResizeListener();\n break;\n\n case 'void':\n this.unbindScrollListener();\n this.unbindResizeListener();\n this.overlay = null;\n break;\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body') this.renderer.appendChild(this.document.body, this.overlay);\n else (this.document as any).getElementById(this.appendTo).appendChild(this.overlay as HTMLElement);\n }\n }\n\n alignOverlay() {\n if (this.appendTo) {\n (this.overlay as HTMLElement).style.minWidth = getOuterWidth(this.input.nativeElement) + 'px';\n absolutePosition(this.overlay as any, this.input.nativeElement);\n } else {\n relativePosition(this.overlay as any, this.input.nativeElement);\n }\n }\n\n onInput(event: Event) {\n this.value = (event.target as HTMLInputElement).value;\n this.onModelChange(this.value);\n }\n\n onInputFocus(event: Event) {\n this.focused = true;\n if (this.feedback) {\n this.overlayVisible = true;\n }\n\n this.onFocus.emit(event);\n }\n\n onInputBlur(event: Event) {\n this.focused = false;\n if (this.feedback) {\n this.overlayVisible = false;\n }\n\n this.onModelTouched();\n this.onBlur.emit(event);\n }\n\n onKeyUp(event: KeyboardEvent) {\n if (this.feedback) {\n let value = (event.target as HTMLInputElement).value;\n this.updateUI(value);\n\n if (event.code === 'Escape') {\n this.overlayVisible && (this.overlayVisible = false);\n\n return;\n }\n\n if (!this.overlayVisible) {\n this.overlayVisible = true;\n }\n }\n }\n\n updateUI(value: string) {\n let label = null;\n let meter = null;\n\n switch (this.testStrength(value)) {\n case 1:\n label = this.weakText();\n meter = {\n strength: 'weak',\n width: '33.33%'\n };\n break;\n\n case 2:\n label = this.mediumText();\n meter = {\n strength: 'medium',\n width: '66.66%'\n };\n break;\n\n case 3:\n label = this.strongText();\n meter = {\n strength: 'strong',\n width: '100%'\n };\n break;\n\n default:\n label = this.promptText();\n meter = null;\n break;\n }\n\n this.meter = meter;\n this.infoText = label;\n }\n\n onMaskToggle() {\n this.unmasked = !this.unmasked;\n }\n\n onOverlayClick(event: Event) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n\n testStrength(str: string) {\n let level = 0;\n\n if (this.strongCheckRegExp.test(str)) level = 3;\n else if (this.mediumCheckRegExp.test(str)) level = 2;\n else if (str.length) level = 1;\n\n return level;\n }\n\n writeValue(value: any): void {\n if (value === undefined) this.value = null;\n else this.value = value;\n\n if (this.feedback) this.updateUI(this.value || '');\n\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n bindScrollListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.input.nativeElement, () => {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n }\n }\n\n bindResizeListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.resizeListener) {\n const window = this.document.defaultView as Window;\n this.resizeListener = this.renderer.listen(window, 'resize', () => {\n if (this.overlayVisible && !isTouchDevice()) {\n this.overlayVisible = false;\n }\n });\n }\n }\n }\n\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n\n unbindResizeListener() {\n if (this.resizeListener) {\n this.resizeListener();\n this.resizeListener = null;\n }\n }\n\n containerClass(toggleMask: boolean) {\n return { 'p-password p-component p-inputwrapper': true, 'p-input-icon-right': toggleMask };\n }\n\n get rootClass() {\n return this._componentStyle.classes.root({ instance: this });\n }\n\n inputFieldClass(disabled: boolean) {\n return { 'p-password-input': true, 'p-disabled': disabled };\n }\n\n strengthClass(meter: any) {\n return `p-password-meter-label p-password-meter${meter?.strength ? `-${meter.strength}` : ''}`;\n }\n\n filled() {\n return this.value != null && this.value.toString().length > 0;\n }\n\n promptText() {\n return this.promptLabel || this.getTranslation(TranslationKeys.PASSWORD_PROMPT);\n }\n\n weakText() {\n return this.weakLabel || this.getTranslation(TranslationKeys.WEAK);\n }\n\n mediumText() {\n return this.mediumLabel || this.getTranslation(TranslationKeys.MEDIUM);\n }\n\n strongText() {\n return this.strongLabel || this.getTranslation(TranslationKeys.STRONG);\n }\n\n restoreAppend() {\n if (this.overlay && this.appendTo) {\n if (this.appendTo === 'body') this.renderer.removeChild(this.document.body, this.overlay);\n else (this.document as any).getElementById(this.appendTo).removeChild(this.overlay);\n }\n }\n\n inputType(unmasked: boolean) {\n return unmasked ? 'text' : 'password';\n }\n\n getTranslation(option: string) {\n return this.config.getTranslation(option);\n }\n\n clear() {\n this.value = null;\n this.onModelChange(this.value);\n this.writeValue(this.value);\n this.onClear.emit();\n }\n\n ngOnDestroy() {\n if (this.overlay) {\n ZIndexUtils.clear(this.overlay);\n this.overlay = null;\n }\n\n this.restoreAppend();\n this.unbindResizeListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [Password, PasswordDirective, SharedModule],\n exports: [PasswordDirective, Password, SharedModule]\n})\nexport class PasswordModule {}\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-password.mjs","sources":["../../src/password/style/passwordstyle.ts","../../src/password/password.ts","../../src/password/primeng-password.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-password {\n display: inline-flex;\n position: relative;\n}\n\n.p-password .p-password-overlay {\n min-width: 100%;\n}\n\n.p-password-meter {\n height: ${dt('password.meter.height')};\n background: ${dt('password.meter.background')};\n border-radius: ${dt('password.meter.border.radius')};\n}\n\n.p-password-meter-label {\n height: 100%;\n width: 0;\n transition: width 1s ease-in-out;\n border-radius: ${dt('password.meter.border.radius')};\n}\n\n.p-password-meter-weak {\n background: ${dt('password.strength.weak.background')};\n}\n\n.p-password-meter-medium {\n background: ${dt('password.strength.medium.background')};\n}\n\n.p-password-meter-strong {\n background: ${dt('password.strength.strong.background')};\n}\n\n.p-password-fluid {\n display: flex;\n}\n\n.p-password-fluid .p-password-input {\n width: 100%;\n}\n\n.p-password-input::-ms-reveal,\n.p-password-input::-ms-clear {\n display: none;\n}\n\n.p-password-overlay {\n position: absolute;\n padding: ${dt('password.overlay.padding')};\n background: ${dt('password.overlay.background')};\n color: ${dt('password.overlay.color')};\n border: 1px solid ${dt('password.overlay.border.color')};\n box-shadow: ${dt('password.overlay.shadow')};\n border-radius: ${dt('password.overlay.border.radius')};\n}\n\n.p-password-content {\n display: flex;\n flex-direction: column;\n gap: ${dt('password.content.gap')};\n}\n\n.p-password-toggle-mask-icon {\n inset-inline-end: ${dt('form.field.padding.x')};\n color: ${dt('password.icon.color')};\n position: absolute;\n top: 50%;\n margin-top: calc(-1 * calc(${dt('icon.size')} / 2));\n width: ${dt('icon.size')};\n height: ${dt('icon.size')};\n}\n\n.p-password:has(.p-password-toggle-mask-icon) .p-password-input {\n padding-inline-end: calc((${dt('form.field.padding.x')} * 2) + ${dt('icon.size')});\n}\n\n/* For PrimeNG */\np-password.ng-invalid.ng-dirty .p-inputtext {\n border-color: ${dt('inputtext.invalid.border.color')};\n}\n\np-password.ng-invalid.ng-dirty .p-inputtext:enabled:focus {\n border-color: ${dt('inputtext.focus.border.color')};\n}\n\np-password.ng-invalid.ng-dirty .p-inputtext::placeholder {\n color: ${dt('inputtext.invalid.placeholder.color')};\n}\n\n.p-password-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -0.5rem;\n cursor: pointer;\n inset-inline-end: ${dt('form.field.padding.x')};\n color: ${dt('form.field.icon.color')};\n}\n\n.p-password-fluid-directive {\n width:100%\n}\n`;\n\nconst inlineStyles = {\n root: ({ instance }) => ({ position: instance.appendTo === 'self' ? 'relative' : undefined })\n};\n\nconst classes = {\n root: ({ instance }) => ({\n 'p-password p-component p-inputwrapper': true,\n 'p-inputwrapper-filled': instance.filled(),\n 'p-inputwrapper-focus': instance.focused,\n 'p-password-fluid': instance.hasFluid\n }),\n pcInput: 'p-password-input',\n maskIcon: 'p-password-toggle-mask-icon p-password-mask-icon',\n unmaskIcon: 'p-password-toggle-mask-icon p-password-unmask-icon',\n overlay: 'p-password-overlay p-component',\n content: 'p-password-content',\n meter: 'p-password-meter',\n meterLabel: ({ instance }) => `p-password-meter-label ${instance.meter ? 'p-password-meter-' + instance.meter.strength : ''}`,\n meterText: 'p-password-meter-text'\n};\n\n@Injectable()\nexport class PasswordStyle extends BaseStyle {\n name = 'password';\n\n theme = theme;\n\n classes = classes;\n\n inlineStyles = inlineStyles;\n}\n\n/**\n *\n * Password displays strength indicator for password fields.\n *\n * [Live Demo](https://www.primeng.org/password/)\n *\n * @module passwordstyle\n *\n */\n\nexport enum PasswordClasses {\n /**\n * Class name of the root element\n */\n root = 'p-password',\n /**\n * Class name of the pt input element\n */\n pcInput = 'p-password-input',\n /**\n * Class name of the mask icon element\n */\n maskIcon = 'p-password-mask-icon',\n /**\n * Class name of the unmask icon element\n */\n unmaskIcon = 'p-password-unmask-icon',\n /**\n * Class name of the overlay element\n */\n overlay = 'p-password-overlay',\n /**\n * Class name of the meter element\n */\n meter = 'p-password-meter',\n /**\n * Class name of the meter label element\n */\n meterLabel = 'p-password-meter-label',\n /**\n * Class name of the meter text element\n */\n meterText = 'p-password-meter-text'\n}\n\nexport interface PasswordStyle extends BaseStyle {}\n","import { animate, AnimationEvent, style, transition, trigger } from '@angular/animations';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n Directive,\n DoCheck,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostListener,\n inject,\n Input,\n NgModule,\n NgZone,\n numberAttribute,\n OnDestroy,\n OnInit,\n Output,\n Pipe,\n PipeTransform,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { absolutePosition, addClass, getOuterWidth, hasClass, isTouchDevice, relativePosition, removeClass } from '@primeuix/utils';\nimport { OverlayService, SharedModule, TranslationKeys } from 'primeng/api';\nimport { AutoFocus } from 'primeng/autofocus';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { ConnectedOverlayScrollHandler, DomHandler } from 'primeng/dom';\nimport { EyeIcon, EyeSlashIcon, TimesIcon } from 'primeng/icons';\nimport { InputText } from 'primeng/inputtext';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { Subscription } from 'rxjs';\nimport { PasswordStyle } from './style/passwordstyle';\n\ntype Meter = {\n strength: string;\n width: string;\n};\n/**\n * Password directive.\n * @group Components\n */\n@Directive({\n selector: '[pPassword]',\n standalone: true,\n host: {\n class: 'p-password p-inputtext p-component p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\" || config.inputVariant() === \"filled\"',\n '[class.p-password-fluid-directive]': 'hasFluid'\n },\n providers: [PasswordStyle]\n})\nexport class PasswordDirective extends BaseComponent implements OnDestroy, DoCheck {\n /**\n * Text to prompt password entry. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() promptLabel: string = 'Enter a password';\n /**\n * Text for a weak password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() weakLabel: string = 'Weak';\n /**\n * Text for a medium password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() mediumLabel: string = 'Medium';\n /**\n * Text for a strong password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() strongLabel: string = 'Strong';\n /**\n * Whether to show the strength indicator or not.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) feedback: boolean = true;\n /**\n * Sets the visibility of the password field.\n * @group Props\n */\n @Input() set showPassword(show: boolean) {\n this.el.nativeElement.type = show ? 'text' : 'password';\n }\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Spans 100% width of the container when enabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean = false;\n\n panel: Nullable<HTMLDivElement>;\n\n meter: Nullable<Meter>;\n\n info: Nullable<HTMLDivElement>;\n\n filled: Nullable<boolean>;\n\n content: Nullable<HTMLDivElement>;\n\n label: Nullable<HTMLLabelElement>;\n\n scrollHandler: Nullable<ConnectedOverlayScrollHandler>;\n\n documentResizeListener: VoidListener;\n\n _componentStyle = inject(PasswordStyle);\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n return this.fluid || !!fluidComponent;\n }\n\n constructor(public zone: NgZone) {\n super();\n }\n\n ngDoCheck() {\n this.updateFilledState();\n }\n\n @HostListener('input', ['$event'])\n onInput(e: Event) {\n this.updateFilledState();\n }\n\n updateFilledState() {\n this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;\n }\n\n createPanel() {\n if (isPlatformBrowser(this.platformId)) {\n this.panel = this.renderer.createElement('div');\n this.renderer.addClass(this.panel, 'p-password-overlay');\n this.renderer.addClass(this.panel, 'p-component');\n\n this.content = this.renderer.createElement('div');\n this.renderer.addClass(this.content, 'p-password-content');\n this.renderer.appendChild(this.panel, this.content);\n\n this.meter = this.renderer.createElement('div');\n this.renderer.addClass(this.meter, 'p-password-meter');\n this.renderer.appendChild(this.content, this.meter);\n\n this.label = this.renderer.createElement('div');\n this.renderer.addClass(this.label, 'p-password-meter-label');\n this.renderer.appendChild(this.meter, this.label);\n\n this.info = this.renderer.createElement('div');\n this.renderer.addClass(this.info, 'p-password-meter-text');\n this.renderer.setProperty(this.info, 'textContent', this.promptLabel);\n this.renderer.appendChild(this.content, this.info);\n\n this.renderer.setStyle(this.panel, 'minWidth', `${this.el.nativeElement.offsetWidth}px`);\n this.renderer.appendChild(document.body, this.panel);\n }\n }\n\n showOverlay() {\n if (this.feedback) {\n if (!this.panel) {\n this.createPanel();\n }\n\n this.renderer.setStyle(this.panel, 'zIndex', String(++DomHandler.zindex));\n this.renderer.setStyle(this.panel, 'display', 'block');\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n addClass(this.panel, 'p-connected-overlay-visible');\n this.bindScrollListener();\n this.bindDocumentResizeListener();\n }, 1);\n });\n absolutePosition(this.panel, this.el.nativeElement);\n }\n }\n\n hideOverlay() {\n if (this.feedback && this.panel) {\n addClass(this.panel, 'p-connected-overlay-hidden');\n removeClass(this.panel, 'p-connected-overlay-visible');\n this.unbindScrollListener();\n this.unbindDocumentResizeListener();\n\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n this.ngOnDestroy();\n }, 150);\n });\n }\n }\n\n @HostListener('focus')\n onFocus() {\n this.showOverlay();\n }\n\n @HostListener('blur')\n onBlur() {\n this.hideOverlay();\n }\n\n @HostListener('keyup', ['$event'])\n onKeyup(e: Event) {\n if (this.feedback) {\n let value = (e.target as HTMLInputElement).value,\n label = null,\n meterPos = null;\n\n if (value.length === 0) {\n label = this.promptLabel;\n meterPos = '0px 0px';\n } else {\n var score = this.testStrength(value);\n\n if (score < 30) {\n label = this.weakLabel;\n meterPos = '0px -10px';\n } else if (score >= 30 && score < 80) {\n label = this.mediumLabel;\n meterPos = '0px -20px';\n } else if (score >= 80) {\n label = this.strongLabel;\n meterPos = '0px -30px';\n }\n }\n\n if (!this.panel || !hasClass(this.panel, 'p-connected-overlay-visible')) {\n this.showOverlay();\n }\n\n this.renderer.setStyle(this.meter, 'backgroundPosition', meterPos);\n (this.info as HTMLDivElement).textContent = label;\n }\n }\n\n testStrength(str: string) {\n let grade: number = 0;\n let val: Nullable<RegExpMatchArray>;\n\n val = str.match('[0-9]');\n grade += this.normalize(val ? val.length : 1 / 4, 1) * 25;\n\n val = str.match('[a-zA-Z]');\n grade += this.normalize(val ? val.length : 1 / 2, 3) * 10;\n\n val = str.match('[!@#$%^&*?_~.,;=]');\n grade += this.normalize(val ? val.length : 1 / 6, 1) * 35;\n\n val = str.match('[A-Z]');\n grade += this.normalize(val ? val.length : 1 / 6, 1) * 30;\n\n grade *= str.length / 8;\n\n return grade > 100 ? 100 : grade;\n }\n\n normalize(x: number, y: number) {\n let diff = x - y;\n\n if (diff <= 0) return x / y;\n else return 1 + 0.5 * (x / (x + y / 4));\n }\n\n get disabled(): boolean {\n return this.el.nativeElement.disabled;\n }\n\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.el.nativeElement, () => {\n if (hasClass(this.panel, 'p-connected-overlay-visible')) {\n this.hideOverlay();\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n }\n\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n\n bindDocumentResizeListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.documentResizeListener) {\n const window = this.document.defaultView as Window;\n this.documentResizeListener = this.renderer.listen(window, 'resize', this.onWindowResize.bind(this));\n }\n }\n }\n\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n this.documentResizeListener();\n this.documentResizeListener = null;\n }\n }\n\n onWindowResize() {\n if (!isTouchDevice()) {\n this.hideOverlay();\n }\n }\n\n ngOnDestroy() {\n if (this.panel) {\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n this.unbindDocumentResizeListener();\n\n this.renderer.removeChild(this.document.body, this.panel);\n this.panel = null;\n this.meter = null;\n this.info = null;\n }\n\n super.ngOnDestroy();\n }\n}\n\ntype Mapper<T, G> = (item: T, ...args: any[]) => G;\n\n@Pipe({\n name: 'mapper',\n pure: true,\n standalone: true\n})\nexport class MapperPipe implements PipeTransform {\n public transform<T, G>(value: T, mapper: Mapper<T, G>, ...args: unknown[]): G {\n return mapper(value, ...args);\n }\n}\n\nexport const Password_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Password),\n multi: true\n};\n/**\n * Password displays strength indicator for password fields.\n * @group Components\n */\n@Component({\n selector: 'p-password',\n standalone: true,\n imports: [CommonModule, InputText, AutoFocus, TimesIcon, EyeSlashIcon, EyeIcon, MapperPipe, SharedModule],\n template: `\n <div [ngClass]=\"rootClass\" [ngStyle]=\"style\" [class]=\"styleClass\" [attr.data-pc-name]=\"'password'\" [attr.data-pc-section]=\"'root'\">\n <input\n #input\n [attr.label]=\"label\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledBy]=\"ariaLabelledBy\"\n [attr.id]=\"inputId\"\n pInputText\n [disabled]=\"disabled\"\n [size]=\"size\"\n [ngClass]=\"disabled | mapper: inputFieldClass\"\n [ngStyle]=\"inputStyle\"\n [class]=\"inputStyleClass\"\n [attr.type]=\"unmasked | mapper: inputType\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocomplete]=\"autocomplete\"\n [value]=\"value\"\n [variant]=\"variant\"\n (input)=\"onInput($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (keyup)=\"onKeyUp($event)\"\n [attr.maxlength]=\"maxLength\"\n [attr.data-pc-section]=\"'input'\"\n [pAutoFocus]=\"autofocus\"\n />\n <ng-container *ngIf=\"showClear && value != null\">\n <TimesIcon *ngIf=\"!cleariconTemplate\" class=\"p-password-clear-icon\" (click)=\"clear()\" [attr.data-pc-section]=\"'clearIcon'\" />\n <span (click)=\"clear()\" class=\"p-password-clear-icon\" [attr.data-pc-section]=\"'clearIcon'\">\n <ng-template *ngTemplateOutlet=\"cleariconTemplate\"></ng-template>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"toggleMask\">\n <ng-container *ngIf=\"unmasked\">\n <EyeSlashIcon class=\"p-password-toggle-mask-icon p-password-mask-icon\" *ngIf=\"!hideiconTemplate\" (click)=\"onMaskToggle()\" [attr.data-pc-section]=\"'hideIcon'\" />\n <span *ngIf=\"hideiconTemplate\" (click)=\"onMaskToggle()\">\n <ng-template *ngTemplateOutlet=\"hideiconTemplate; context: { class: 'p-password-toggle-mask-icon p-password-mask-icon' }\"></ng-template>\n </span>\n </ng-container>\n <ng-container *ngIf=\"!unmasked\">\n <EyeIcon *ngIf=\"!showiconTemplate\" class=\"p-password-toggle-mask-icon p-password-mask-icon\" (click)=\"onMaskToggle()\" [attr.data-pc-section]=\"'showIcon'\" />\n <span *ngIf=\"showiconTemplate\" (click)=\"onMaskToggle()\">\n <ng-template *ngTemplateOutlet=\"showiconTemplate\"></ng-template>\n </span>\n </ng-container>\n </ng-container>\n\n <div\n #overlay\n *ngIf=\"overlayVisible\"\n class=\"p-password-overlay p-component\"\n (click)=\"onOverlayClick($event)\"\n [@overlayAnimation]=\"{\n value: 'visible',\n params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions }\n }\"\n (@overlayAnimation.start)=\"onAnimationStart($event)\"\n (@overlayAnimation.done)=\"onAnimationEnd($event)\"\n [attr.data-pc-section]=\"'panel'\"\n >\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <ng-container *ngIf=\"contentTemplate; else content\">\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n </ng-container>\n <ng-template #content>\n <div class=\"p-password-content\">\n <div class=\"p-password-meter\" [attr.data-pc-section]=\"'meter'\">\n <div [ngClass]=\"meter | mapper: strengthClass\" [ngStyle]=\"{ width: meter ? meter.width : '' }\" [attr.data-pc-section]=\"'meterLabel'\"></div>\n </div>\n <div class=\"p-password-meter-text\" [attr.data-pc-section]=\"'info'\">{{ infoText }}</div>\n </div>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n `,\n animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])],\n providers: [Password_VALUE_ACCESSOR, PasswordStyle],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class Password extends BaseComponent implements OnInit {\n /**\n * Defines a string that labels the input for accessibility.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Whether the component should span the full width of its parent.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean | undefined;\n /**\n * Specifies one or more IDs in the DOM that labels the input field.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Label of the input for accessibility.\n * @group Props\n */\n @Input() label: string | undefined;\n /**\n * Indicates whether the component is disabled or not.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean | undefined;\n /**\n * Text to prompt password entry. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() promptLabel: string | undefined;\n /**\n * Regex value for medium regex.\n * @group Props\n */\n @Input() mediumRegex: string = '^(((?=.*[a-z])(?=.*[A-Z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[A-Z])(?=.*[0-9])))(?=.{6,})';\n /**\n * Regex value for strong regex.\n * @group Props\n */\n @Input() strongRegex: string = '^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.{8,})';\n /**\n * Text for a weak password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() weakLabel: string | undefined;\n /**\n * Text for a medium password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() mediumLabel: string | undefined;\n /**\n * specifies the maximum number of characters allowed in the input element.\n * @group Props\n */\n @Input({ transform: numberAttribute }) maxLength: number | undefined;\n /**\n * Text for a strong password. Defaults to PrimeNG I18N API configuration.\n * @group Props\n */\n @Input() strongLabel: string | undefined;\n /**\n * Identifier of the accessible input element.\n * @group Props\n */\n @Input() inputId: string | undefined;\n /**\n * Whether to show the strength indicator or not.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) feedback: boolean = true;\n /**\n * Id of the element or \"body\" for document where the overlay should be appended to.\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Whether to show an icon to display the password as plain text.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) toggleMask: boolean | undefined;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() size: 'large' | 'small';\n /**\n * Style class of the input field.\n * @group Props\n */\n @Input() inputStyleClass: string | undefined;\n /**\n * Style class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the input field.\n * @group Props\n */\n @Input() inputStyle: { [klass: string]: any } | null | undefined;\n /**\n * Transition options of the show animation.\n * @group Props\n */\n @Input() showTransitionOptions: string = '.12s cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Transition options of the hide animation.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '.1s linear';\n /**\n * Specify automated assistance in filling out password by browser.\n * @group Props\n */\n @Input() autocomplete: string | undefined;\n /**\n * Advisory information to display on input.\n * @group Props\n */\n @Input() placeholder: string | undefined;\n /**\n * When enabled, a clear icon is displayed to clear the value.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showClear: boolean = false;\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 * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Callback to invoke when the component receives focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onFocus: EventEmitter<Event> = new EventEmitter<Event>();\n /**\n * Callback to invoke when the component loses focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onBlur: EventEmitter<Event> = new EventEmitter<Event>();\n /**\n * Callback to invoke when clear button is clicked.\n * @group Emits\n */\n @Output() onClear: EventEmitter<any> = new EventEmitter<any>();\n\n @ViewChild('input') input!: ElementRef;\n\n @ContentChild('content') contentTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('footerT') footerTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('header') headerTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('clearicon') cleariconTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('headericon') hideiconTemplate: Nullable<TemplateRef<any>>;\n\n @ContentChild('showicon') showiconTemplate: Nullable<TemplateRef<any>>;\n\n overlayVisible: boolean = false;\n\n meter: Nullable<Meter>;\n\n infoText: Nullable<string>;\n\n focused: boolean = false;\n\n unmasked: boolean = false;\n\n mediumCheckRegExp!: RegExp;\n\n strongCheckRegExp!: RegExp;\n\n resizeListener: VoidListener;\n\n scrollHandler: Nullable<ConnectedOverlayScrollHandler>;\n\n overlay: HTMLElement | ElementRef | null | undefined;\n\n value: Nullable<string> = null;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n translationSubscription: Nullable<Subscription>;\n\n _componentStyle = inject(PasswordStyle);\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n return this.fluid || !!fluidComponent;\n }\n\n overlayService = inject(OverlayService);\n\n ngOnInit() {\n super.ngOnInit();\n this.infoText = this.promptText();\n this.mediumCheckRegExp = new RegExp(this.mediumRegex);\n this.strongCheckRegExp = new RegExp(this.strongRegex);\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n this.updateUI(this.value || '');\n });\n }\n\n onAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.overlay = event.element;\n ZIndexUtils.set('overlay', this.overlay, this.config.zIndex.overlay);\n this.appendContainer();\n this.alignOverlay();\n this.bindScrollListener();\n this.bindResizeListener();\n break;\n\n case 'void':\n this.unbindScrollListener();\n this.unbindResizeListener();\n this.overlay = null;\n break;\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body') this.renderer.appendChild(this.document.body, this.overlay);\n else (this.document as any).getElementById(this.appendTo).appendChild(this.overlay as HTMLElement);\n }\n }\n\n alignOverlay() {\n if (this.appendTo) {\n (this.overlay as HTMLElement).style.minWidth = getOuterWidth(this.input.nativeElement) + 'px';\n absolutePosition(this.overlay as any, this.input.nativeElement);\n } else {\n relativePosition(this.overlay as any, this.input.nativeElement);\n }\n }\n\n onInput(event: Event) {\n this.value = (event.target as HTMLInputElement).value;\n this.onModelChange(this.value);\n }\n\n onInputFocus(event: Event) {\n this.focused = true;\n if (this.feedback) {\n this.overlayVisible = true;\n }\n\n this.onFocus.emit(event);\n }\n\n onInputBlur(event: Event) {\n this.focused = false;\n if (this.feedback) {\n this.overlayVisible = false;\n }\n\n this.onModelTouched();\n this.onBlur.emit(event);\n }\n\n onKeyUp(event: KeyboardEvent) {\n if (this.feedback) {\n let value = (event.target as HTMLInputElement).value;\n this.updateUI(value);\n\n if (event.code === 'Escape') {\n this.overlayVisible && (this.overlayVisible = false);\n\n return;\n }\n\n if (!this.overlayVisible) {\n this.overlayVisible = true;\n }\n }\n }\n\n updateUI(value: string) {\n let label = null;\n let meter = null;\n\n switch (this.testStrength(value)) {\n case 1:\n label = this.weakText();\n meter = {\n strength: 'weak',\n width: '33.33%'\n };\n break;\n\n case 2:\n label = this.mediumText();\n meter = {\n strength: 'medium',\n width: '66.66%'\n };\n break;\n\n case 3:\n label = this.strongText();\n meter = {\n strength: 'strong',\n width: '100%'\n };\n break;\n\n default:\n label = this.promptText();\n meter = null;\n break;\n }\n\n this.meter = meter;\n this.infoText = label;\n }\n\n onMaskToggle() {\n this.unmasked = !this.unmasked;\n }\n\n onOverlayClick(event: Event) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n\n testStrength(str: string) {\n let level = 0;\n\n if (this.strongCheckRegExp.test(str)) level = 3;\n else if (this.mediumCheckRegExp.test(str)) level = 2;\n else if (str.length) level = 1;\n\n return level;\n }\n\n writeValue(value: any): void {\n if (value === undefined) this.value = null;\n else this.value = value;\n\n if (this.feedback) this.updateUI(this.value || '');\n\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n bindScrollListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.input.nativeElement, () => {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n }\n }\n\n bindResizeListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.resizeListener) {\n const window = this.document.defaultView as Window;\n this.resizeListener = this.renderer.listen(window, 'resize', () => {\n if (this.overlayVisible && !isTouchDevice()) {\n this.overlayVisible = false;\n }\n });\n }\n }\n }\n\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n\n unbindResizeListener() {\n if (this.resizeListener) {\n this.resizeListener();\n this.resizeListener = null;\n }\n }\n\n containerClass(toggleMask: boolean) {\n return { 'p-password p-component p-inputwrapper': true, 'p-input-icon-right': toggleMask };\n }\n\n get rootClass() {\n return this._componentStyle.classes.root({ instance: this });\n }\n\n inputFieldClass(disabled: boolean) {\n return { 'p-password-input': true, 'p-disabled': disabled };\n }\n\n strengthClass(meter: any) {\n return `p-password-meter-label p-password-meter${meter?.strength ? `-${meter.strength}` : ''}`;\n }\n\n filled() {\n return this.value != null && this.value.toString().length > 0;\n }\n\n promptText() {\n return this.promptLabel || this.getTranslation(TranslationKeys.PASSWORD_PROMPT);\n }\n\n weakText() {\n return this.weakLabel || this.getTranslation(TranslationKeys.WEAK);\n }\n\n mediumText() {\n return this.mediumLabel || this.getTranslation(TranslationKeys.MEDIUM);\n }\n\n strongText() {\n return this.strongLabel || this.getTranslation(TranslationKeys.STRONG);\n }\n\n restoreAppend() {\n if (this.overlay && this.appendTo) {\n if (this.appendTo === 'body') this.renderer.removeChild(this.document.body, this.overlay);\n else (this.document as any).getElementById(this.appendTo).removeChild(this.overlay);\n }\n }\n\n inputType(unmasked: boolean) {\n return unmasked ? 'text' : 'password';\n }\n\n getTranslation(option: string) {\n return this.config.getTranslation(option);\n }\n\n clear() {\n this.value = null;\n this.onModelChange(this.value);\n this.writeValue(this.value);\n this.onClear.emit();\n }\n\n ngOnDestroy() {\n if (this.overlay) {\n ZIndexUtils.clear(this.overlay);\n this.overlay = null;\n }\n\n this.restoreAppend();\n this.unbindResizeListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [Password, PasswordDirective, SharedModule],\n exports: [PasswordDirective, Password, SharedModule]\n})\nexport class PasswordModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
@@ -209,7 +209,7 @@ function PickList_ng_container_5_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
209
209
|
i0.ɵɵtemplate(0, PickList_ng_container_5_ng_template_1_0_Template, 1, 0, null, 15);
|
210
210
|
} if (rf & 2) {
|
211
211
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
212
|
-
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.
|
212
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.sourceHeaderTemplate);
|
213
213
|
} }
|
214
214
|
function PickList_ng_container_5_Template(rf, ctx) { if (rf & 1) {
|
215
215
|
i0.ɵɵelementContainerStart(0);
|
@@ -341,7 +341,7 @@ function PickList_ng_container_23_ng_template_1_Template(rf, ctx) { if (rf & 1)
|
|
341
341
|
i0.ɵɵtemplate(0, PickList_ng_container_23_ng_template_1_0_Template, 1, 0, null, 15);
|
342
342
|
} if (rf & 2) {
|
343
343
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
344
|
-
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.
|
344
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.targetHeaderTemplate);
|
345
345
|
} }
|
346
346
|
function PickList_ng_container_23_Template(rf, ctx) { if (rf & 1) {
|
347
347
|
i0.ɵɵelementContainerStart(0);
|
@@ -1966,7 +1966,7 @@ class PickList extends BaseComponent {
|
|
1966
1966
|
>
|
1967
1967
|
<ng-container *ngIf="sourceHeaderTemplate">
|
1968
1968
|
<ng-template #header>
|
1969
|
-
<ng-template *ngTemplateOutlet="
|
1969
|
+
<ng-template *ngTemplateOutlet="sourceHeaderTemplate"></ng-template>
|
1970
1970
|
</ng-template>
|
1971
1971
|
</ng-container>
|
1972
1972
|
<ng-container *ngIf="itemTemplate">
|
@@ -2076,7 +2076,7 @@ class PickList extends BaseComponent {
|
|
2076
2076
|
>
|
2077
2077
|
<ng-container *ngIf="targetHeaderTemplate">
|
2078
2078
|
<ng-template #header>
|
2079
|
-
<ng-template *ngTemplateOutlet="
|
2079
|
+
<ng-template *ngTemplateOutlet="targetHeaderTemplate"></ng-template>
|
2080
2080
|
</ng-template>
|
2081
2081
|
</ng-container>
|
2082
2082
|
<ng-container *ngIf="itemTemplate">
|