primeng 20.0.0-rc.1 → 20.0.0-rc.3
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/index.d.ts +1 -3
- package/autocomplete/index.d.ts +8 -7
- package/baseeditableholder/index.d.ts +14 -5
- package/basemodelholder/index.d.ts +12 -0
- package/button/index.d.ts +10 -13
- package/cascadeselect/index.d.ts +7 -5
- package/chart/index.d.ts +1 -0
- package/checkbox/index.d.ts +9 -7
- package/colorpicker/index.d.ts +8 -7
- package/datepicker/index.d.ts +8 -7
- package/editor/index.d.ts +9 -8
- package/fesm2022/primeng-accordion.mjs +15 -17
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-autocomplete.mjs +49 -52
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-badge.mjs +1 -2
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-base.mjs +5 -170
- package/fesm2022/primeng-base.mjs.map +1 -1
- package/fesm2022/primeng-basecomponent.mjs +2 -1
- package/fesm2022/primeng-basecomponent.mjs.map +1 -1
- package/fesm2022/primeng-baseeditableholder.mjs +25 -7
- package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
- package/fesm2022/primeng-basemodelholder.mjs +25 -0
- package/fesm2022/primeng-basemodelholder.mjs.map +1 -0
- package/fesm2022/primeng-breadcrumb.mjs +9 -9
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs +45 -72
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs +1 -2
- package/fesm2022/primeng-buttongroup.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs +3 -4
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-carousel.mjs +13 -13
- package/fesm2022/primeng-carousel.mjs.map +1 -1
- package/fesm2022/primeng-cascadeselect.mjs +33 -36
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-chart.mjs +1 -1
- package/fesm2022/primeng-chart.mjs.map +1 -1
- package/fesm2022/primeng-checkbox.mjs +20 -23
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs +23 -3
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-colorpicker.mjs +35 -37
- package/fesm2022/primeng-colorpicker.mjs.map +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +25 -17
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs +17 -9
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +7 -15
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +3 -3
- package/fesm2022/primeng-dataview.mjs.map +1 -1
- package/fesm2022/primeng-datepicker.mjs +191 -142
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-dialog.mjs +13 -13
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +2 -2
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs +10 -5
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-drawer.mjs +5 -6
- package/fesm2022/primeng-drawer.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +27 -31
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +8 -10
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs +7 -9
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +67 -55
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs +2 -3
- package/fesm2022/primeng-floatlabel.mjs.map +1 -1
- package/fesm2022/primeng-galleria.mjs +21 -21
- package/fesm2022/primeng-galleria.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubledown.mjs +14 -18
- package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleleft.mjs +14 -18
- package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleright.mjs +14 -18
- package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleup.mjs +14 -18
- package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledown.mjs +10 -14
- package/fesm2022/primeng-icons-angledown.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleleft.mjs +10 -14
- package/fesm2022/primeng-icons-angleleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleright.mjs +10 -14
- package/fesm2022/primeng-icons-angleright.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleup.mjs +10 -14
- package/fesm2022/primeng-icons-angleup.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdown.mjs +29 -32
- package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdownleft.mjs +10 -14
- package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdownright.mjs +10 -14
- package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowleft.mjs +29 -32
- package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowright.mjs +14 -18
- package/fesm2022/primeng-icons-arrowright.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowup.mjs +29 -32
- package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
- package/fesm2022/primeng-icons-ban.mjs +25 -28
- package/fesm2022/primeng-icons-ban.mjs.map +1 -1
- package/fesm2022/primeng-icons-bars.mjs +14 -18
- package/fesm2022/primeng-icons-bars.mjs.map +1 -1
- package/fesm2022/primeng-icons-baseicon.mjs +21 -29
- package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
- package/fesm2022/primeng-icons-blank.mjs +3 -11
- package/fesm2022/primeng-icons-blank.mjs.map +1 -1
- package/fesm2022/primeng-icons-calendar.mjs +10 -14
- package/fesm2022/primeng-icons-calendar.mjs.map +1 -1
- package/fesm2022/primeng-icons-caretleft.mjs +10 -14
- package/fesm2022/primeng-icons-caretleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-caretright.mjs +10 -14
- package/fesm2022/primeng-icons-caretright.mjs.map +1 -1
- package/fesm2022/primeng-icons-check.mjs +10 -14
- package/fesm2022/primeng-icons-check.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevrondown.mjs +10 -14
- package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronleft.mjs +10 -14
- package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronright.mjs +10 -14
- package/fesm2022/primeng-icons-chevronright.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronup.mjs +10 -14
- package/fesm2022/primeng-icons-chevronup.mjs.map +1 -1
- package/fesm2022/primeng-icons-exclamationtriangle.mjs +41 -44
- package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
- package/fesm2022/primeng-icons-eye.mjs +14 -18
- package/fesm2022/primeng-icons-eye.mjs.map +1 -1
- package/fesm2022/primeng-icons-eyeslash.mjs +29 -32
- package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-filter.mjs +25 -28
- package/fesm2022/primeng-icons-filter.mjs.map +1 -1
- package/fesm2022/primeng-icons-filterfill.mjs +10 -14
- package/fesm2022/primeng-icons-filterfill.mjs.map +1 -1
- package/fesm2022/primeng-icons-filterslash.mjs +29 -32
- package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-home.mjs +29 -32
- package/fesm2022/primeng-icons-home.mjs.map +1 -1
- package/fesm2022/primeng-icons-infocircle.mjs +29 -32
- package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-minus.mjs +10 -14
- package/fesm2022/primeng-icons-minus.mjs.map +1 -1
- package/fesm2022/primeng-icons-pencil.mjs +25 -28
- package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
- package/fesm2022/primeng-icons-plus.mjs +25 -28
- package/fesm2022/primeng-icons-plus.mjs.map +1 -1
- package/fesm2022/primeng-icons-refresh.mjs +29 -32
- package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
- package/fesm2022/primeng-icons-search.mjs +29 -32
- package/fesm2022/primeng-icons-search.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchminus.mjs +29 -32
- package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchplus.mjs +29 -32
- package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortalt.mjs +37 -40
- package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountdown.mjs +25 -28
- package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountupalt.mjs +25 -28
- package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-spinner.mjs +25 -28
- package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
- package/fesm2022/primeng-icons-star.mjs +25 -28
- package/fesm2022/primeng-icons-star.mjs.map +1 -1
- package/fesm2022/primeng-icons-starfill.mjs +25 -28
- package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
- package/fesm2022/primeng-icons-thlarge.mjs +29 -32
- package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
- package/fesm2022/primeng-icons-times.mjs +10 -14
- package/fesm2022/primeng-icons-times.mjs.map +1 -1
- package/fesm2022/primeng-icons-timescircle.mjs +29 -32
- package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-trash.mjs +29 -32
- package/fesm2022/primeng-icons-trash.mjs.map +1 -1
- package/fesm2022/primeng-icons-undo.mjs +29 -32
- package/fesm2022/primeng-icons-undo.mjs.map +1 -1
- package/fesm2022/primeng-icons-upload.mjs +29 -32
- package/fesm2022/primeng-icons-upload.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowmaximize.mjs +29 -32
- package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowminimize.mjs +29 -32
- package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
- package/fesm2022/primeng-iftalabel.mjs +2 -3
- package/fesm2022/primeng-iftalabel.mjs.map +1 -1
- package/fesm2022/primeng-image.mjs +13 -13
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-inplace.mjs +15 -10
- package/fesm2022/primeng-inplace.mjs.map +1 -1
- package/fesm2022/primeng-inputgroup.mjs +6 -7
- package/fesm2022/primeng-inputgroup.mjs.map +1 -1
- package/fesm2022/primeng-inputmask.mjs +31 -34
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +45 -48
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs +26 -28
- package/fesm2022/primeng-inputotp.mjs.map +1 -1
- package/fesm2022/primeng-inputtext.mjs +14 -9
- package/fesm2022/primeng-inputtext.mjs.map +1 -1
- package/fesm2022/primeng-knob.mjs +22 -24
- package/fesm2022/primeng-knob.mjs.map +1 -1
- package/fesm2022/primeng-listbox.mjs +44 -47
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +12 -12
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +14 -14
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs +3 -3
- package/fesm2022/primeng-message.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +50 -52
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +13 -12
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs +5 -5
- package/fesm2022/primeng-organizationchart.mjs.map +1 -1
- package/fesm2022/primeng-overlay.mjs +6 -1
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaybadge.mjs +3 -3
- package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
- package/fesm2022/primeng-paginator.mjs +9 -9
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +6 -7
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +19 -20
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-password.mjs +29 -32
- package/fesm2022/primeng-password.mjs.map +1 -1
- package/fesm2022/primeng-picklist.mjs +38 -37
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs +19 -19
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +2 -2
- package/fesm2022/primeng-progressbar.mjs.map +1 -1
- package/fesm2022/primeng-radiobutton.mjs +21 -24
- package/fesm2022/primeng-radiobutton.mjs.map +1 -1
- package/fesm2022/primeng-rating.mjs +21 -24
- package/fesm2022/primeng-rating.mjs.map +1 -1
- package/fesm2022/primeng-ripple.mjs +2 -3
- package/fesm2022/primeng-ripple.mjs.map +1 -1
- package/fesm2022/primeng-scroller.mjs +9 -9
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +1 -2
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs +4 -4
- package/fesm2022/primeng-scrolltop.mjs.map +1 -1
- package/fesm2022/primeng-select.mjs +48 -51
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs +17 -20
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-slider.mjs +28 -30
- package/fesm2022/primeng-slider.mjs.map +1 -1
- package/fesm2022/primeng-speeddial.mjs +3 -3
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +3 -3
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs +33 -9
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +83 -88
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabs.mjs +5 -5
- package/fesm2022/primeng-tabs.mjs.map +1 -1
- package/fesm2022/primeng-textarea.mjs +13 -9
- package/fesm2022/primeng-textarea.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +5 -5
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-toast.mjs +21 -19
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs +15 -18
- package/fesm2022/primeng-togglebutton.mjs.map +1 -1
- package/fesm2022/primeng-toggleswitch.mjs +16 -19
- package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +12 -12
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +32 -29
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +118 -117
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/galleria/index.d.ts +1 -1
- package/icons/angledoubledown/index.d.ts +1 -1
- package/icons/angledoubleleft/index.d.ts +1 -1
- package/icons/angledoubleright/index.d.ts +1 -1
- package/icons/angledoubleup/index.d.ts +1 -1
- package/icons/angledown/index.d.ts +1 -1
- package/icons/angleleft/index.d.ts +1 -1
- package/icons/angleright/index.d.ts +1 -1
- package/icons/angleup/index.d.ts +1 -1
- package/icons/arrowdown/index.d.ts +1 -1
- package/icons/arrowdownleft/index.d.ts +1 -1
- package/icons/arrowdownright/index.d.ts +1 -1
- package/icons/arrowleft/index.d.ts +1 -1
- package/icons/arrowright/index.d.ts +1 -1
- package/icons/arrowup/index.d.ts +1 -1
- package/icons/ban/index.d.ts +1 -1
- package/icons/bars/index.d.ts +1 -1
- package/icons/baseicon/index.d.ts +11 -18
- package/icons/blank/index.d.ts +1 -1
- package/icons/calendar/index.d.ts +1 -1
- package/icons/caretleft/index.d.ts +1 -1
- package/icons/caretright/index.d.ts +1 -1
- package/icons/check/index.d.ts +1 -1
- package/icons/chevrondown/index.d.ts +1 -1
- package/icons/chevronleft/index.d.ts +1 -1
- package/icons/chevronright/index.d.ts +1 -1
- package/icons/chevronup/index.d.ts +1 -1
- package/icons/exclamationtriangle/index.d.ts +1 -1
- package/icons/eye/index.d.ts +1 -1
- package/icons/eyeslash/index.d.ts +1 -1
- package/icons/filter/index.d.ts +1 -1
- package/icons/filterfill/index.d.ts +1 -1
- package/icons/filterslash/index.d.ts +1 -1
- package/icons/home/index.d.ts +1 -1
- package/icons/infocircle/index.d.ts +1 -1
- package/icons/minus/index.d.ts +1 -1
- package/icons/pencil/index.d.ts +1 -1
- package/icons/plus/index.d.ts +1 -1
- package/icons/refresh/index.d.ts +1 -1
- package/icons/search/index.d.ts +1 -1
- package/icons/searchminus/index.d.ts +1 -1
- package/icons/searchplus/index.d.ts +1 -1
- package/icons/sortalt/index.d.ts +1 -1
- package/icons/sortamountdown/index.d.ts +1 -1
- package/icons/sortamountupalt/index.d.ts +1 -1
- package/icons/spinner/index.d.ts +1 -1
- package/icons/star/index.d.ts +1 -1
- package/icons/starfill/index.d.ts +1 -1
- package/icons/thlarge/index.d.ts +1 -1
- package/icons/times/index.d.ts +1 -1
- package/icons/timescircle/index.d.ts +1 -1
- package/icons/trash/index.d.ts +1 -1
- package/icons/undo/index.d.ts +1 -1
- package/icons/upload/index.d.ts +1 -1
- package/icons/windowmaximize/index.d.ts +1 -1
- package/icons/windowminimize/index.d.ts +1 -1
- package/inplace/index.d.ts +1 -0
- package/inputmask/index.d.ts +9 -10
- package/inputnumber/index.d.ts +8 -7
- package/inputotp/index.d.ts +7 -5
- package/inputtext/index.d.ts +10 -4
- package/knob/index.d.ts +7 -5
- package/listbox/index.d.ts +8 -7
- package/multiselect/index.d.ts +8 -7
- package/overlay/index.d.ts +1 -3
- package/overlaybadge/index.d.ts +1 -3
- package/package.json +201 -197
- package/password/index.d.ts +7 -5
- package/popover/index.d.ts +1 -3
- package/radiobutton/index.d.ts +9 -7
- package/rating/index.d.ts +8 -7
- package/ripple/index.d.ts +1 -3
- package/scroller/index.d.ts +1 -3
- package/select/index.d.ts +8 -7
- package/selectbutton/index.d.ts +9 -8
- package/slider/index.d.ts +9 -8
- package/stepper/index.d.ts +4 -0
- package/table/index.d.ts +9 -14
- package/textarea/index.d.ts +9 -4
- package/togglebutton/index.d.ts +8 -7
- package/toggleswitch/index.d.ts +7 -5
- package/treeselect/index.d.ts +7 -5
- package/treetable/index.d.ts +2 -4
@@ -6,18 +6,17 @@ import * as i1 from '@angular/forms';
|
|
6
6
|
import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
|
7
7
|
import { resolveFieldData, equals } from '@primeuix/utils';
|
8
8
|
import { SharedModule, PrimeTemplate } from 'primeng/api';
|
9
|
+
import { BaseEditableHolder } from 'primeng/baseeditableholder';
|
9
10
|
import { ToggleButton } from 'primeng/togglebutton';
|
10
11
|
import { style } from '@primeuix/styles/selectbutton';
|
11
|
-
import { css, dt } from '@primeuix/styled';
|
12
12
|
import { BaseStyle } from 'primeng/base';
|
13
|
-
import { BaseEditableHolder } from 'primeng/baseeditableholder';
|
14
13
|
|
15
|
-
const theme = css `
|
14
|
+
const theme = /*css*/ `
|
16
15
|
${style}
|
17
16
|
|
18
17
|
/* For PrimeNG */
|
19
18
|
.p-selectbutton.ng-invalid.ng-dirty {
|
20
|
-
outline: 1px solid
|
19
|
+
outline: 1px solid dt('selectbutton.invalid.border.color');
|
21
20
|
outline-offset: 0;
|
22
21
|
}
|
23
22
|
`;
|
@@ -168,8 +167,6 @@ class SelectButton extends BaseEditableHolder {
|
|
168
167
|
return this.optionValue ? null : this.dataKey;
|
169
168
|
}
|
170
169
|
value;
|
171
|
-
onModelChange = () => { };
|
172
|
-
onModelTouched = () => { };
|
173
170
|
focusedIndex = 0;
|
174
171
|
_componentStyle = inject(SelectButtonStyle);
|
175
172
|
getAllowEmpty() {
|
@@ -187,19 +184,8 @@ class SelectButton extends BaseEditableHolder {
|
|
187
184
|
isOptionDisabled(option) {
|
188
185
|
return this.optionDisabled ? resolveFieldData(option, this.optionDisabled) : option.disabled !== undefined ? option.disabled : false;
|
189
186
|
}
|
190
|
-
writeValue(value) {
|
191
|
-
this.value = value;
|
192
|
-
this.writeModelValue(this.value);
|
193
|
-
this.cd.markForCheck();
|
194
|
-
}
|
195
|
-
registerOnChange(fn) {
|
196
|
-
this.onModelChange = fn;
|
197
|
-
}
|
198
|
-
registerOnTouched(fn) {
|
199
|
-
this.onModelTouched = fn;
|
200
|
-
}
|
201
187
|
onOptionSelect(event, option, index) {
|
202
|
-
if (this
|
188
|
+
if (this.$disabled() || this.isOptionDisabled(option)) {
|
203
189
|
return;
|
204
190
|
}
|
205
191
|
let selected = this.isSelected(option);
|
@@ -292,6 +278,17 @@ class SelectButton extends BaseEditableHolder {
|
|
292
278
|
}
|
293
279
|
});
|
294
280
|
}
|
281
|
+
/**
|
282
|
+
* @override
|
283
|
+
*
|
284
|
+
* @see {@link BaseEditableHolder.writeControlValue}
|
285
|
+
* Writes the value to the control.
|
286
|
+
*/
|
287
|
+
writeControlValue(value, setModelValue) {
|
288
|
+
this.value = value;
|
289
|
+
setModelValue(this.value);
|
290
|
+
this.cd.markForCheck();
|
291
|
+
}
|
295
292
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SelectButton, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
296
293
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: SelectButton, isStandalone: true, selector: "p-selectButton, p-selectbutton, p-select-button", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: false, isRequired: false, transformFunction: null }, optionLabel: { classPropertyName: "optionLabel", publicName: "optionLabel", isSignal: false, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: false, isRequired: false, transformFunction: null }, optionDisabled: { classPropertyName: "optionDisabled", publicName: "optionDisabled", isSignal: false, isRequired: false, transformFunction: null }, unselectable: { classPropertyName: "unselectable", publicName: "unselectable", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, allowEmpty: { classPropertyName: "allowEmpty", publicName: "allowEmpty", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: false, isRequired: false, transformFunction: null }, dataKey: { classPropertyName: "dataKey", publicName: "dataKey", isSignal: false, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, fluid: { classPropertyName: "fluid", publicName: "fluid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onOptionClick: "onOptionClick", onChange: "onChange" }, host: { properties: { "class": "cx('root')", "attr.role": "\"group\"", "attr.aria-labelledby": "ariaLabelledBy", "attr.data-pc-section": "\"root\"", "attr.data-pc-name": "\"selectbutton\"" } }, providers: [SELECTBUTTON_VALUE_ACCESSOR, SelectButtonStyle], queries: [{ propertyName: "itemTemplate", first: true, predicate: ["item"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: `
|
297
294
|
@for (option of options; track getOptionLabel(option); let i = $index) {
|
@@ -301,7 +298,7 @@ class SelectButton extends BaseEditableHolder {
|
|
301
298
|
[ngModel]="isSelected(option)"
|
302
299
|
[onLabel]="this.getOptionLabel(option)"
|
303
300
|
[offLabel]="this.getOptionLabel(option)"
|
304
|
-
[disabled]="disabled() || isOptionDisabled(option)"
|
301
|
+
[disabled]="$disabled() || isOptionDisabled(option)"
|
305
302
|
(onChange)="onOptionSelect($event, option, i)"
|
306
303
|
[allowEmpty]="getAllowEmpty()"
|
307
304
|
[size]="size()"
|
@@ -330,7 +327,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
330
327
|
[ngModel]="isSelected(option)"
|
331
328
|
[onLabel]="this.getOptionLabel(option)"
|
332
329
|
[offLabel]="this.getOptionLabel(option)"
|
333
|
-
[disabled]="disabled() || isOptionDisabled(option)"
|
330
|
+
[disabled]="$disabled() || isOptionDisabled(option)"
|
334
331
|
(onChange)="onOptionSelect($event, option, i)"
|
335
332
|
[allowEmpty]="getAllowEmpty()"
|
336
333
|
[size]="size()"
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-selectbutton.mjs","sources":["../../src/selectbutton/style/selectbuttonstyle.ts","../../src/selectbutton/selectbutton.ts","../../src/selectbutton/primeng-selectbutton.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/selectbutton';\nimport { css, dt } from '@primeuix/styled';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = css`\n ${style}\n\n /* For PrimeNG */\n .p-selectbutton.ng-invalid.ng-dirty {\n outline: 1px solid ${dt('selectbutton.invalid.border.color')};\n outline-offset: 0;\n }\n`;\n\nconst classes = {\n root: ({ instance }) => [\n 'p-selectbutton p-component',\n {\n 'p-invalid': instance.invalid(),\n 'p-selectbutton-fluid': instance.fluid()\n }\n ]\n};\n\n@Injectable()\nexport class SelectButtonStyle extends BaseStyle {\n name = 'selectbutton';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * SelectButton is used to choose single or multiple items from a list using buttons.\n *\n * [Live Demo](https://www.primeng.org/selectbutton/)\n *\n * @module selectbuttonstyle\n *\n */\nexport enum SelectButtonClasses {\n /**\n * Class name of the root element\n */\n root = 'p-selectbutton'\n}\n\nexport interface SelectButtonStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n EventEmitter,\n forwardRef,\n inject,\n input,\n Input,\n NgModule,\n numberAttribute,\n Output,\n QueryList,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { equals, resolveFieldData } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { ToggleButton } from 'primeng/togglebutton';\nimport { SelectButtonChangeEvent, SelectButtonOptionClickEvent } from './selectbutton.interface';\nimport { SelectButtonStyle } from './style/selectbuttonstyle';\nimport { BaseEditableHolder } from 'primeng/baseeditableholder';\n\nexport const SELECTBUTTON_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SelectButton),\n multi: true\n};\n/**\n * SelectButton is used to choose single or multiple items from a list using buttons.\n * @group Components\n */\n@Component({\n selector: 'p-selectButton, p-selectbutton, p-select-button',\n standalone: true,\n imports: [ToggleButton, FormsModule, CommonModule, SharedModule],\n template: `\n @for (option of options; track getOptionLabel(option); let i = $index) {\n <p-togglebutton\n [autofocus]=\"autofocus\"\n [styleClass]=\"styleClass\"\n [ngModel]=\"isSelected(option)\"\n [onLabel]=\"this.getOptionLabel(option)\"\n [offLabel]=\"this.getOptionLabel(option)\"\n [disabled]=\"disabled() || isOptionDisabled(option)\"\n (onChange)=\"onOptionSelect($event, option, i)\"\n [allowEmpty]=\"getAllowEmpty()\"\n [size]=\"size()\"\n [fluid]=\"fluid()\"\n >\n @if (itemTemplate || _itemTemplate) {\n <ng-template #content>\n <ng-container *ngTemplateOutlet=\"itemTemplate || _itemTemplate; context: { $implicit: option, index: i }\"></ng-container>\n </ng-template>\n }\n </p-togglebutton>\n }\n `,\n providers: [SELECTBUTTON_VALUE_ACCESSOR, SelectButtonStyle],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': \"cx('root')\",\n '[attr.role]': '\"group\"',\n '[attr.aria-labelledby]': 'ariaLabelledBy',\n '[attr.data-pc-section]': '\"root\"',\n '[attr.data-pc-name]': '\"selectbutton\"'\n }\n})\nexport class SelectButton extends BaseEditableHolder implements AfterContentInit, ControlValueAccessor {\n /**\n * An array of selectitems to display as the available options.\n * @group Props\n */\n @Input() options: any[] | undefined;\n /**\n * Name of the label field of an option.\n * @group Props\n */\n @Input() optionLabel: string | undefined;\n /**\n * Name of the value field of an option.\n * @group Props\n */\n @Input() optionValue: string | undefined;\n /**\n * Name of the disabled field of an option.\n * @group Props\n */\n @Input() optionDisabled: string | undefined;\n /**\n * Whether selection can be cleared.\n * @group Props\n */\n get unselectable(): boolean {\n return this._unselectable;\n }\n private _unselectable: boolean = false;\n\n @Input({ transform: booleanAttribute })\n set unselectable(value: boolean) {\n this._unselectable = value;\n this.allowEmpty = !value;\n }\n\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number = 0;\n /**\n * When specified, allows selecting multiple values.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) multiple: boolean | undefined;\n /**\n * Whether selection can not be cleared.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) allowEmpty: boolean = true;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * A property to uniquely identify a value in options.\n * @group Props\n */\n @Input() dataKey: string | undefined;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Specifies the size of the component.\n * @defaultValue undefined\n * @group Props\n */\n size = input<'large' | 'small' | undefined>();\n /**\n * Spans 100% width of the container when enabled.\n * @defaultValue undefined\n * @group Props\n */\n fluid = input(undefined, { transform: booleanAttribute });\n /**\n * Callback to invoke on input click.\n * @param {SelectButtonOptionClickEvent} event - Custom click event.\n * @group Emits\n */\n @Output() onOptionClick: EventEmitter<SelectButtonOptionClickEvent> = new EventEmitter<SelectButtonOptionClickEvent>();\n /**\n * Callback to invoke on selection change.\n * @param {SelectButtonChangeEvent} event - Custom change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<SelectButtonChangeEvent> = new EventEmitter<SelectButtonChangeEvent>();\n /**\n * Template of an item in the list.\n * @group Templates\n */\n @ContentChild('item', { descendants: false }) itemTemplate: TemplateRef<any>;\n\n _itemTemplate: TemplateRef<any> | undefined;\n\n get equalityKey() {\n return this.optionValue ? null : this.dataKey;\n }\n\n value: any;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n focusedIndex: number = 0;\n\n _componentStyle = inject(SelectButtonStyle);\n\n getAllowEmpty() {\n if (this.multiple) {\n return this.allowEmpty || this.value?.length !== 1;\n }\n return this.allowEmpty;\n }\n\n getOptionLabel(option: any) {\n return this.optionLabel ? resolveFieldData(option, this.optionLabel) : option.label != undefined ? option.label : option;\n }\n\n getOptionValue(option: any) {\n return this.optionValue ? resolveFieldData(option, this.optionValue) : this.optionLabel || option.value === undefined ? option : option.value;\n }\n\n isOptionDisabled(option: any) {\n return this.optionDisabled ? resolveFieldData(option, this.optionDisabled) : option.disabled !== undefined ? option.disabled : false;\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.writeModelValue(this.value);\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 onOptionSelect(event, option, index) {\n if (this.disabled() || this.isOptionDisabled(option)) {\n return;\n }\n\n let selected = this.isSelected(option);\n\n if (selected && this.unselectable) {\n return;\n }\n\n let optionValue = this.getOptionValue(option);\n let newValue;\n\n if (this.multiple) {\n if (selected) newValue = this.value.filter((val) => !equals(val, optionValue, this.equalityKey));\n else newValue = this.value ? [...this.value, optionValue] : [optionValue];\n } else {\n if (selected && !this.allowEmpty) {\n return;\n }\n newValue = selected ? null : optionValue;\n }\n\n this.focusedIndex = index;\n this.value = newValue;\n this.writeModelValue(this.value);\n this.onModelChange(this.value);\n\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n\n this.onOptionClick.emit({\n originalEvent: event,\n option: option,\n index: index\n });\n }\n\n changeTabIndexes(event, direction) {\n let firstTabableChild, index;\n\n for (let i = 0; i <= this.el.nativeElement.children.length - 1; i++) {\n if (this.el.nativeElement.children[i].getAttribute('tabindex') === '0') firstTabableChild = { elem: this.el.nativeElement.children[i], index: i };\n }\n\n if (direction === 'prev') {\n if (firstTabableChild.index === 0) index = this.el.nativeElement.children.length - 1;\n else index = firstTabableChild.index - 1;\n } else {\n if (firstTabableChild.index === this.el.nativeElement.children.length - 1) index = 0;\n else index = firstTabableChild.index + 1;\n }\n\n this.focusedIndex = index;\n this.el.nativeElement.children[index].focus();\n }\n\n onFocus(event: Event, index: number) {\n this.focusedIndex = index;\n }\n\n onBlur() {\n this.onModelTouched();\n }\n\n removeOption(option: any): void {\n this.value = this.value.filter((val: any) => !equals(val, this.getOptionValue(option), this.dataKey));\n }\n\n isSelected(option: any) {\n let selected = false;\n const optionValue = this.getOptionValue(option);\n\n if (this.multiple) {\n if (this.value && Array.isArray(this.value)) {\n for (let val of this.value) {\n if (equals(val, optionValue, this.dataKey)) {\n selected = true;\n break;\n }\n }\n }\n } else {\n selected = equals(this.getOptionValue(option), this.value, this.equalityKey);\n }\n\n return selected;\n }\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n ngAfterContentInit() {\n (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this._itemTemplate = item.template;\n break;\n }\n });\n }\n}\n\n@NgModule({\n imports: [SelectButton, SharedModule],\n exports: [SelectButton, SharedModule]\n})\nexport class SelectButtonModule {}\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-selectbutton.mjs","sources":["../../src/selectbutton/style/selectbuttonstyle.ts","../../src/selectbutton/selectbutton.ts","../../src/selectbutton/primeng-selectbutton.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/selectbutton';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = /*css*/ `\n ${style}\n\n /* For PrimeNG */\n .p-selectbutton.ng-invalid.ng-dirty {\n outline: 1px solid dt('selectbutton.invalid.border.color');\n outline-offset: 0;\n }\n`;\n\nconst classes = {\n root: ({ instance }) => [\n 'p-selectbutton p-component',\n {\n 'p-invalid': instance.invalid(),\n 'p-selectbutton-fluid': instance.fluid()\n }\n ]\n};\n\n@Injectable()\nexport class SelectButtonStyle extends BaseStyle {\n name = 'selectbutton';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * SelectButton is used to choose single or multiple items from a list using buttons.\n *\n * [Live Demo](https://www.primeng.org/selectbutton/)\n *\n * @module selectbuttonstyle\n *\n */\nexport enum SelectButtonClasses {\n /**\n * Class name of the root element\n */\n root = 'p-selectbutton'\n}\n\nexport interface SelectButtonStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n EventEmitter,\n forwardRef,\n inject,\n input,\n Input,\n NgModule,\n numberAttribute,\n Output,\n QueryList,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { equals, resolveFieldData } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseEditableHolder } from 'primeng/baseeditableholder';\nimport { ToggleButton } from 'primeng/togglebutton';\nimport { SelectButtonChangeEvent, SelectButtonOptionClickEvent } from './selectbutton.interface';\nimport { SelectButtonStyle } from './style/selectbuttonstyle';\n\nexport const SELECTBUTTON_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SelectButton),\n multi: true\n};\n/**\n * SelectButton is used to choose single or multiple items from a list using buttons.\n * @group Components\n */\n@Component({\n selector: 'p-selectButton, p-selectbutton, p-select-button',\n standalone: true,\n imports: [ToggleButton, FormsModule, CommonModule, SharedModule],\n template: `\n @for (option of options; track getOptionLabel(option); let i = $index) {\n <p-togglebutton\n [autofocus]=\"autofocus\"\n [styleClass]=\"styleClass\"\n [ngModel]=\"isSelected(option)\"\n [onLabel]=\"this.getOptionLabel(option)\"\n [offLabel]=\"this.getOptionLabel(option)\"\n [disabled]=\"$disabled() || isOptionDisabled(option)\"\n (onChange)=\"onOptionSelect($event, option, i)\"\n [allowEmpty]=\"getAllowEmpty()\"\n [size]=\"size()\"\n [fluid]=\"fluid()\"\n >\n @if (itemTemplate || _itemTemplate) {\n <ng-template #content>\n <ng-container *ngTemplateOutlet=\"itemTemplate || _itemTemplate; context: { $implicit: option, index: i }\"></ng-container>\n </ng-template>\n }\n </p-togglebutton>\n }\n `,\n providers: [SELECTBUTTON_VALUE_ACCESSOR, SelectButtonStyle],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': \"cx('root')\",\n '[attr.role]': '\"group\"',\n '[attr.aria-labelledby]': 'ariaLabelledBy',\n '[attr.data-pc-section]': '\"root\"',\n '[attr.data-pc-name]': '\"selectbutton\"'\n }\n})\nexport class SelectButton extends BaseEditableHolder implements AfterContentInit {\n /**\n * An array of selectitems to display as the available options.\n * @group Props\n */\n @Input() options: any[] | undefined;\n /**\n * Name of the label field of an option.\n * @group Props\n */\n @Input() optionLabel: string | undefined;\n /**\n * Name of the value field of an option.\n * @group Props\n */\n @Input() optionValue: string | undefined;\n /**\n * Name of the disabled field of an option.\n * @group Props\n */\n @Input() optionDisabled: string | undefined;\n /**\n * Whether selection can be cleared.\n * @group Props\n */\n get unselectable(): boolean {\n return this._unselectable;\n }\n private _unselectable: boolean = false;\n\n @Input({ transform: booleanAttribute })\n set unselectable(value: boolean) {\n this._unselectable = value;\n this.allowEmpty = !value;\n }\n\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number = 0;\n /**\n * When specified, allows selecting multiple values.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) multiple: boolean | undefined;\n /**\n * Whether selection can not be cleared.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) allowEmpty: boolean = true;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * A property to uniquely identify a value in options.\n * @group Props\n */\n @Input() dataKey: string | undefined;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Specifies the size of the component.\n * @defaultValue undefined\n * @group Props\n */\n size = input<'large' | 'small' | undefined>();\n /**\n * Spans 100% width of the container when enabled.\n * @defaultValue undefined\n * @group Props\n */\n fluid = input(undefined, { transform: booleanAttribute });\n /**\n * Callback to invoke on input click.\n * @param {SelectButtonOptionClickEvent} event - Custom click event.\n * @group Emits\n */\n @Output() onOptionClick: EventEmitter<SelectButtonOptionClickEvent> = new EventEmitter<SelectButtonOptionClickEvent>();\n /**\n * Callback to invoke on selection change.\n * @param {SelectButtonChangeEvent} event - Custom change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<SelectButtonChangeEvent> = new EventEmitter<SelectButtonChangeEvent>();\n /**\n * Template of an item in the list.\n * @group Templates\n */\n @ContentChild('item', { descendants: false }) itemTemplate: TemplateRef<any>;\n\n _itemTemplate: TemplateRef<any> | undefined;\n\n get equalityKey() {\n return this.optionValue ? null : this.dataKey;\n }\n\n value: any;\n\n focusedIndex: number = 0;\n\n _componentStyle = inject(SelectButtonStyle);\n\n getAllowEmpty() {\n if (this.multiple) {\n return this.allowEmpty || this.value?.length !== 1;\n }\n return this.allowEmpty;\n }\n\n getOptionLabel(option: any) {\n return this.optionLabel ? resolveFieldData(option, this.optionLabel) : option.label != undefined ? option.label : option;\n }\n\n getOptionValue(option: any) {\n return this.optionValue ? resolveFieldData(option, this.optionValue) : this.optionLabel || option.value === undefined ? option : option.value;\n }\n\n isOptionDisabled(option: any) {\n return this.optionDisabled ? resolveFieldData(option, this.optionDisabled) : option.disabled !== undefined ? option.disabled : false;\n }\n\n onOptionSelect(event, option, index) {\n if (this.$disabled() || this.isOptionDisabled(option)) {\n return;\n }\n\n let selected = this.isSelected(option);\n\n if (selected && this.unselectable) {\n return;\n }\n\n let optionValue = this.getOptionValue(option);\n let newValue;\n\n if (this.multiple) {\n if (selected) newValue = this.value.filter((val) => !equals(val, optionValue, this.equalityKey));\n else newValue = this.value ? [...this.value, optionValue] : [optionValue];\n } else {\n if (selected && !this.allowEmpty) {\n return;\n }\n newValue = selected ? null : optionValue;\n }\n\n this.focusedIndex = index;\n this.value = newValue;\n this.writeModelValue(this.value);\n this.onModelChange(this.value);\n\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n\n this.onOptionClick.emit({\n originalEvent: event,\n option: option,\n index: index\n });\n }\n\n changeTabIndexes(event, direction) {\n let firstTabableChild, index;\n\n for (let i = 0; i <= this.el.nativeElement.children.length - 1; i++) {\n if (this.el.nativeElement.children[i].getAttribute('tabindex') === '0') firstTabableChild = { elem: this.el.nativeElement.children[i], index: i };\n }\n\n if (direction === 'prev') {\n if (firstTabableChild.index === 0) index = this.el.nativeElement.children.length - 1;\n else index = firstTabableChild.index - 1;\n } else {\n if (firstTabableChild.index === this.el.nativeElement.children.length - 1) index = 0;\n else index = firstTabableChild.index + 1;\n }\n\n this.focusedIndex = index;\n this.el.nativeElement.children[index].focus();\n }\n\n onFocus(event: Event, index: number) {\n this.focusedIndex = index;\n }\n\n onBlur() {\n this.onModelTouched();\n }\n\n removeOption(option: any): void {\n this.value = this.value.filter((val: any) => !equals(val, this.getOptionValue(option), this.dataKey));\n }\n\n isSelected(option: any) {\n let selected = false;\n const optionValue = this.getOptionValue(option);\n\n if (this.multiple) {\n if (this.value && Array.isArray(this.value)) {\n for (let val of this.value) {\n if (equals(val, optionValue, this.dataKey)) {\n selected = true;\n break;\n }\n }\n }\n } else {\n selected = equals(this.getOptionValue(option), this.value, this.equalityKey);\n }\n\n return selected;\n }\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n ngAfterContentInit() {\n (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this._itemTemplate = item.template;\n break;\n }\n });\n }\n\n /**\n * @override\n *\n * @see {@link BaseEditableHolder.writeControlValue}\n * Writes the value to the control.\n */\n writeControlValue(value: any, setModelValue: (value: any) => void): void {\n this.value = value;\n setModelValue(this.value);\n this.cd.markForCheck();\n }\n}\n\n@NgModule({\n imports: [SelectButton, SharedModule],\n exports: [SelectButton, SharedModule]\n})\nexport class SelectButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
@@ -6,9 +6,9 @@ import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
6
6
|
import { removeClass, addClass, getWindowScrollLeft, getWindowScrollTop, isRTL } from '@primeuix/utils';
|
7
7
|
import { SharedModule } from 'primeng/api';
|
8
8
|
import { AutoFocus } from 'primeng/autofocus';
|
9
|
+
import { BaseEditableHolder } from 'primeng/baseeditableholder';
|
9
10
|
import { style } from '@primeuix/styles/slider';
|
10
11
|
import { BaseStyle } from 'primeng/base';
|
11
|
-
import { BaseEditableHolder } from 'primeng/baseeditableholder';
|
12
12
|
|
13
13
|
const inlineStyles = {
|
14
14
|
handle: { position: 'absolute' },
|
@@ -18,7 +18,7 @@ const classes = {
|
|
18
18
|
root: ({ instance }) => [
|
19
19
|
'p-slider p-component',
|
20
20
|
{
|
21
|
-
'p-disabled': instance
|
21
|
+
'p-disabled': instance.$disabled(),
|
22
22
|
'p-invalid': instance.invalid(),
|
23
23
|
'p-slider-horizontal': instance.orientation === 'horizontal',
|
24
24
|
'p-slider-vertical': instance.orientation === 'vertical',
|
@@ -153,8 +153,6 @@ class Slider extends BaseEditableHolder {
|
|
153
153
|
diff;
|
154
154
|
offset;
|
155
155
|
bottom;
|
156
|
-
onModelChange = () => { };
|
157
|
-
onModelTouched = () => { };
|
158
156
|
dragging;
|
159
157
|
dragListener;
|
160
158
|
mouseupListener;
|
@@ -172,7 +170,7 @@ class Slider extends BaseEditableHolder {
|
|
172
170
|
this.onBarClick(event);
|
173
171
|
}
|
174
172
|
onMouseDown(event, index) {
|
175
|
-
if (this
|
173
|
+
if (this.$disabled()) {
|
176
174
|
return;
|
177
175
|
}
|
178
176
|
this.dragging = true;
|
@@ -192,7 +190,7 @@ class Slider extends BaseEditableHolder {
|
|
192
190
|
}
|
193
191
|
}
|
194
192
|
onDragStart(event, index) {
|
195
|
-
if (this
|
193
|
+
if (this.$disabled()) {
|
196
194
|
return;
|
197
195
|
}
|
198
196
|
var touchobj = event.changedTouches[0];
|
@@ -218,7 +216,7 @@ class Slider extends BaseEditableHolder {
|
|
218
216
|
event.preventDefault();
|
219
217
|
}
|
220
218
|
onDrag(event) {
|
221
|
-
if (this
|
219
|
+
if (this.$disabled()) {
|
222
220
|
return;
|
223
221
|
}
|
224
222
|
var touchobj = event.changedTouches[0], handleValue = 0;
|
@@ -232,7 +230,7 @@ class Slider extends BaseEditableHolder {
|
|
232
230
|
event.preventDefault();
|
233
231
|
}
|
234
232
|
onDragEnd(event) {
|
235
|
-
if (this
|
233
|
+
if (this.$disabled()) {
|
236
234
|
return;
|
237
235
|
}
|
238
236
|
this.dragging = false;
|
@@ -246,7 +244,7 @@ class Slider extends BaseEditableHolder {
|
|
246
244
|
event.preventDefault();
|
247
245
|
}
|
248
246
|
onBarClick(event) {
|
249
|
-
if (this
|
247
|
+
if (this.$disabled()) {
|
250
248
|
return;
|
251
249
|
}
|
252
250
|
if (!this.sliderHandleClick) {
|
@@ -411,21 +409,6 @@ class Slider extends BaseEditableHolder {
|
|
411
409
|
this.updateValue(val);
|
412
410
|
this.updateHandleValue();
|
413
411
|
}
|
414
|
-
writeValue(value) {
|
415
|
-
if (this.range)
|
416
|
-
this.values = value || [0, 0];
|
417
|
-
else
|
418
|
-
this.value = value || 0;
|
419
|
-
this.updateHandleValue();
|
420
|
-
this.updateDiffAndOffset();
|
421
|
-
this.cd.markForCheck();
|
422
|
-
}
|
423
|
-
registerOnChange(fn) {
|
424
|
-
this.onModelChange = fn;
|
425
|
-
}
|
426
|
-
registerOnTouched(fn) {
|
427
|
-
this.onModelTouched = fn;
|
428
|
-
}
|
429
412
|
get rangeStartLeft() {
|
430
413
|
if (!this.isVertical())
|
431
414
|
return this.handleValues[0] > 100 ? 100 + '%' : this.handleValues[0] + '%';
|
@@ -575,6 +558,21 @@ class Slider extends BaseEditableHolder {
|
|
575
558
|
get maxVal() {
|
576
559
|
return Math.max(this.values[1], this.values[0]);
|
577
560
|
}
|
561
|
+
/**
|
562
|
+
* @override
|
563
|
+
*
|
564
|
+
* @see {@link BaseEditableHolder.writeControlValue}
|
565
|
+
* Writes the value to the control.
|
566
|
+
*/
|
567
|
+
writeControlValue(value) {
|
568
|
+
if (this.range)
|
569
|
+
this.values = value || [0, 0];
|
570
|
+
else
|
571
|
+
this.value = value || 0;
|
572
|
+
this.updateHandleValue();
|
573
|
+
this.updateDiffAndOffset();
|
574
|
+
this.cd.markForCheck();
|
575
|
+
}
|
578
576
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: Slider, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
579
577
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.0.6", type: Slider, isStandalone: true, selector: "p-slider", inputs: { animate: ["animate", "animate", booleanAttribute], min: ["min", "min", numberAttribute], max: ["max", "max", numberAttribute], orientation: "orientation", step: ["step", "step", numberAttribute], range: ["range", "range", booleanAttribute], styleClass: "styleClass", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", tabindex: ["tabindex", "tabindex", numberAttribute], autofocus: ["autofocus", "autofocus", booleanAttribute] }, outputs: { onChange: "onChange", onSlideEnd: "onSlideEnd" }, host: { listeners: { "click": "onHostClick($event)" }, properties: { "attr.data-pc-name": "'slider'", "attr.data-pc-section": "'root'", "class": "cn(cx('root'), styleClass)" } }, providers: [SLIDER_VALUE_ACCESSOR, SliderStyle], viewQueries: [{ propertyName: "sliderHandle", first: true, predicate: ["sliderHandle"], descendants: true }, { propertyName: "sliderHandleStart", first: true, predicate: ["sliderHandleStart"], descendants: true }, { propertyName: "sliderHandleEnd", first: true, predicate: ["sliderHandleEnd"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
580
578
|
<span
|
@@ -614,7 +612,7 @@ class Slider extends BaseEditableHolder {
|
|
614
612
|
(touchend)="onDragEnd($event)"
|
615
613
|
(mousedown)="onMouseDown($event)"
|
616
614
|
(keydown)="onKeyDown($event)"
|
617
|
-
[attr.tabindex]="disabled() ? null : tabindex"
|
615
|
+
[attr.tabindex]="$disabled() ? null : tabindex"
|
618
616
|
role="slider"
|
619
617
|
[attr.aria-valuemin]="min"
|
620
618
|
[attr.aria-valuenow]="value"
|
@@ -636,7 +634,7 @@ class Slider extends BaseEditableHolder {
|
|
636
634
|
(touchstart)="onDragStart($event, 0)"
|
637
635
|
(touchmove)="onDrag($event)"
|
638
636
|
(touchend)="onDragEnd($event)"
|
639
|
-
[attr.tabindex]="disabled() ? null : tabindex"
|
637
|
+
[attr.tabindex]="$disabled() ? null : tabindex"
|
640
638
|
role="slider"
|
641
639
|
[attr.aria-valuemin]="min"
|
642
640
|
[attr.aria-valuenow]="value ? value[0] : null"
|
@@ -658,7 +656,7 @@ class Slider extends BaseEditableHolder {
|
|
658
656
|
(touchstart)="onDragStart($event, 1)"
|
659
657
|
(touchmove)="onDrag($event)"
|
660
658
|
(touchend)="onDragEnd($event)"
|
661
|
-
[attr.tabindex]="disabled() ? null : tabindex"
|
659
|
+
[attr.tabindex]="$disabled() ? null : tabindex"
|
662
660
|
role="slider"
|
663
661
|
[attr.aria-valuemin]="min"
|
664
662
|
[attr.aria-valuenow]="value ? value[1] : null"
|
@@ -714,7 +712,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
714
712
|
(touchend)="onDragEnd($event)"
|
715
713
|
(mousedown)="onMouseDown($event)"
|
716
714
|
(keydown)="onKeyDown($event)"
|
717
|
-
[attr.tabindex]="disabled() ? null : tabindex"
|
715
|
+
[attr.tabindex]="$disabled() ? null : tabindex"
|
718
716
|
role="slider"
|
719
717
|
[attr.aria-valuemin]="min"
|
720
718
|
[attr.aria-valuenow]="value"
|
@@ -736,7 +734,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
736
734
|
(touchstart)="onDragStart($event, 0)"
|
737
735
|
(touchmove)="onDrag($event)"
|
738
736
|
(touchend)="onDragEnd($event)"
|
739
|
-
[attr.tabindex]="disabled() ? null : tabindex"
|
737
|
+
[attr.tabindex]="$disabled() ? null : tabindex"
|
740
738
|
role="slider"
|
741
739
|
[attr.aria-valuemin]="min"
|
742
740
|
[attr.aria-valuenow]="value ? value[0] : null"
|
@@ -758,7 +756,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
758
756
|
(touchstart)="onDragStart($event, 1)"
|
759
757
|
(touchmove)="onDrag($event)"
|
760
758
|
(touchend)="onDragEnd($event)"
|
761
|
-
[attr.tabindex]="disabled() ? null : tabindex"
|
759
|
+
[attr.tabindex]="$disabled() ? null : tabindex"
|
762
760
|
role="slider"
|
763
761
|
[attr.aria-valuemin]="min"
|
764
762
|
[attr.aria-valuenow]="value ? value[1] : null"
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-slider.mjs","sources":["../../src/slider/style/sliderstyle.ts","../../src/slider/slider.ts","../../src/slider/primeng-slider.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/slider';\nimport { BaseStyle } from 'primeng/base';\n\nconst inlineStyles = {\n handle: { position: 'absolute' },\n range: { position: 'absolute' }\n};\n\nconst classes = {\n root: ({ instance }) => [\n 'p-slider p-component',\n {\n 'p-disabled': instance.disabled(),\n 'p-invalid': instance.invalid(),\n 'p-slider-horizontal': instance.orientation === 'horizontal',\n 'p-slider-vertical': instance.orientation === 'vertical',\n 'p-slider-animate': instance.animate\n }\n ],\n range: 'p-slider-range',\n handle: 'p-slider-handle'\n};\n\n@Injectable()\nexport class SliderStyle extends BaseStyle {\n name = 'slider';\n\n theme = style;\n\n classes = classes;\n\n inlineStyles = inlineStyles;\n}\n\n/**\n *\n * Slider is a component to provide input with a drag handle.\n *\n * [Live Demo](https://www.primeng.org/slider/)\n *\n * @module sliderstyle\n *\n */\nexport enum SliderClasses {\n /**\n * Class name of the root element\n */\n root = 'p-slider',\n /**\n * Class name of the range element\n */\n range = 'p-slider-range',\n /**\n * Class name of the handle element\n */\n handle = 'p-slider-handle'\n}\n\nexport interface SliderStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, ElementRef, EventEmitter, forwardRef, HostListener, inject, input, Input, NgModule, NgZone, numberAttribute, OnDestroy, Output, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { addClass, getWindowScrollLeft, getWindowScrollTop, isRTL, removeClass } from '@primeuix/utils';\nimport { SharedModule } from 'primeng/api';\nimport { AutoFocus } from 'primeng/autofocus';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { SliderChangeEvent, SliderSlideEndEvent } from './slider.interface';\nimport { SliderStyle } from './style/sliderstyle';\nimport { BaseEditableHolder } from 'primeng/baseeditableholder';\n\nexport const SLIDER_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Slider),\n multi: true\n};\n/**\n * Slider is a component to provide input with a drag handle.\n * @group Components\n */\n@Component({\n selector: 'p-slider',\n standalone: true,\n imports: [CommonModule, AutoFocus, SharedModule],\n template: `\n <span\n *ngIf=\"range && orientation == 'horizontal'\"\n [class]=\"cx('range')\"\n [ngStyle]=\"{\n position: 'absolute',\n 'inset-inline-start': offset !== null && offset !== undefined ? offset + '%' : handleValues[0] + '%',\n width: diff ? diff + '%' : handleValues[1] - handleValues[0] + '%'\n }\"\n [attr.data-pc-section]=\"'range'\"\n ></span>\n <span\n *ngIf=\"range && orientation == 'vertical'\"\n [class]=\"cx('range')\"\n [ngStyle]=\"{\n position: 'absolute',\n bottom: offset !== null && offset !== undefined ? offset + '%' : handleValues[0] + '%',\n height: diff ? diff + '%' : handleValues[1] - handleValues[0] + '%'\n }\"\n [attr.data-pc-section]=\"'range'\"\n ></span>\n <span *ngIf=\"!range && orientation == 'vertical'\" [class]=\"cx('range')\" [attr.data-pc-section]=\"'range'\" [ngStyle]=\"{ position: 'absolute', height: handleValue + '%' }\"></span>\n <span *ngIf=\"!range && orientation == 'horizontal'\" [class]=\"cx('range')\" [attr.data-pc-section]=\"'range'\" [ngStyle]=\"{ position: 'absolute', width: handleValue + '%' }\"></span>\n <span\n *ngIf=\"!range\"\n #sliderHandle\n [class]=\"cx('handle')\"\n [style.transition]=\"dragging ? 'none' : null\"\n [ngStyle]=\"{\n position: 'absolute',\n 'inset-inline-start': orientation == 'horizontal' ? handleValue + '%' : null,\n bottom: orientation == 'vertical' ? handleValue + '%' : null\n }\"\n (touchstart)=\"onDragStart($event)\"\n (touchmove)=\"onDrag($event)\"\n (touchend)=\"onDragEnd($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (keydown)=\"onKeyDown($event)\"\n [attr.tabindex]=\"disabled() ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'handle'\"\n [pAutoFocus]=\"autofocus\"\n ></span>\n <span\n *ngIf=\"range\"\n #sliderHandleStart\n [style.transition]=\"dragging ? 'none' : null\"\n [class]=\"cn(cx('handle'), handleIndex == 0 && 'p-slider-handle-active')\"\n [ngStyle]=\"{ position: 'absolute', 'inset-inline-start': rangeStartLeft, bottom: rangeStartBottom }\"\n (keydown)=\"onKeyDown($event, 0)\"\n (mousedown)=\"onMouseDown($event, 0)\"\n (touchstart)=\"onDragStart($event, 0)\"\n (touchmove)=\"onDrag($event)\"\n (touchend)=\"onDragEnd($event)\"\n [attr.tabindex]=\"disabled() ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value ? value[0] : null\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'startHandler'\"\n [pAutoFocus]=\"autofocus\"\n ></span>\n <span\n *ngIf=\"range\"\n #sliderHandleEnd\n [style.transition]=\"dragging ? 'none' : null\"\n [class]=\"cn(cx('handle'), handleIndex == 1 && 'p-slider-handle-active')\"\n [ngStyle]=\"{ position: 'absolute', 'inset-inline-start': rangeEndLeft, bottom: rangeEndBottom }\"\n (keydown)=\"onKeyDown($event, 1)\"\n (mousedown)=\"onMouseDown($event, 1)\"\n (touchstart)=\"onDragStart($event, 1)\"\n (touchmove)=\"onDrag($event)\"\n (touchend)=\"onDragEnd($event)\"\n [attr.tabindex]=\"disabled() ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value ? value[1] : null\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'endHandler'\"\n ></span>\n `,\n providers: [SLIDER_VALUE_ACCESSOR, SliderStyle],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[attr.data-pc-name]': \"'slider'\",\n '[attr.data-pc-section]': \"'root'\",\n '[class]': \"cn(cx('root'), styleClass)\"\n }\n})\nexport class Slider extends BaseEditableHolder implements OnDestroy, ControlValueAccessor {\n /**\n * When enabled, displays an animation on click of the slider bar.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) animate: boolean | undefined;\n /**\n * Mininum boundary value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) min: number = 0;\n /**\n * Maximum boundary value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) max: number = 100;\n /**\n * Orientation of the slider.\n * @group Props\n */\n @Input() orientation: 'horizontal' | 'vertical' = 'horizontal';\n /**\n * Step factor to increment/decrement the value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) step: number | undefined;\n /**\n * When specified, allows two boundary values to be picked.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) range: boolean | undefined;\n /**\n * Style class of the component.\n * @deprecated since v20.0.0, use `class` instead.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Defines a string that labels the input for accessibility.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number = 0;\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 * Callback to invoke on value change.\n * @param {SliderChangeEvent} event - Custom value change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<SliderChangeEvent> = new EventEmitter<SliderChangeEvent>();\n /**\n * Callback to invoke when slide ended.\n * @param {SliderSlideEndEvent} event - Custom slide end event.\n * @group Emits\n */\n @Output() onSlideEnd: EventEmitter<SliderSlideEndEvent> = new EventEmitter<SliderSlideEndEvent>();\n\n @ViewChild('sliderHandle') sliderHandle: Nullable<ElementRef>;\n\n @ViewChild('sliderHandleStart') sliderHandleStart: Nullable<ElementRef>;\n\n @ViewChild('sliderHandleEnd') sliderHandleEnd: Nullable<ElementRef>;\n\n _componentStyle = inject(SliderStyle);\n\n public value: Nullable<number>;\n\n public values: Nullable<number[]>;\n\n public handleValue: Nullable<number>;\n\n public handleValues: number[] = [];\n\n diff: Nullable<number>;\n\n offset: Nullable<number>;\n\n bottom: Nullable<number>;\n\n public onModelChange: Function = () => {};\n\n public onModelTouched: Function = () => {};\n\n public dragging: Nullable<boolean>;\n\n public dragListener: VoidListener;\n\n public mouseupListener: VoidListener;\n\n public initX: Nullable<number>;\n\n public initY: Nullable<number>;\n\n public barWidth: Nullable<number>;\n\n public barHeight: Nullable<number>;\n\n public sliderHandleClick: Nullable<boolean>;\n\n public handleIndex: number = 0;\n\n public startHandleValue: any;\n\n public startx: Nullable<number>;\n\n public starty: Nullable<number>;\n\n private ngZone = inject(NgZone);\n\n @HostListener('click', ['$event'])\n onHostClick(event: MouseEvent) {\n this.onBarClick(event);\n }\n\n onMouseDown(event: Event, index?: number) {\n if (this.disabled()) {\n return;\n }\n\n this.dragging = true;\n this.updateDomData();\n this.sliderHandleClick = true;\n if (this.range && this.handleValues && this.handleValues[0] === this.max) {\n this.handleIndex = 0;\n } else {\n (this.handleIndex as any) = index;\n }\n\n this.bindDragListeners();\n (event.target as HTMLInputElement).focus();\n event.preventDefault();\n\n if (this.animate) {\n removeClass(this.el.nativeElement, 'p-slider-animate');\n }\n }\n\n onDragStart(event: TouchEvent, index?: number) {\n if (this.disabled()) {\n return;\n }\n\n var touchobj = event.changedTouches[0];\n this.startHandleValue = this.range ? this.handleValues[index as number] : this.handleValue;\n this.dragging = true;\n if (this.range && this.handleValues && this.handleValues[0] === this.max) {\n this.handleIndex = 0;\n } else {\n this.handleIndex = index as number;\n }\n\n if (this.orientation === 'horizontal') {\n this.startx = parseInt((touchobj as any).clientX, 10);\n this.barWidth = this.el.nativeElement.offsetWidth;\n } else {\n this.starty = parseInt((touchobj as any).clientY, 10);\n this.barHeight = this.el.nativeElement.offsetHeight;\n }\n\n if (this.animate) {\n removeClass(this.el.nativeElement, 'p-slider-animate');\n }\n\n event.preventDefault();\n }\n\n onDrag(event: TouchEvent) {\n if (this.disabled()) {\n return;\n }\n\n var touchobj = event.changedTouches[0],\n handleValue = 0;\n\n if (this.orientation === 'horizontal') {\n handleValue = Math.floor(((parseInt((touchobj as any).clientX, 10) - (this.startx as number)) * 100) / (this.barWidth as number)) + this.startHandleValue;\n } else {\n handleValue = Math.floor((((this.starty as number) - parseInt((touchobj as any).clientY, 10)) * 100) / (this.barHeight as number)) + this.startHandleValue;\n }\n\n this.setValueFromHandle(event, handleValue);\n\n event.preventDefault();\n }\n\n onDragEnd(event: TouchEvent) {\n if (this.disabled()) {\n return;\n }\n\n this.dragging = false;\n\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n\n if (this.animate) {\n addClass(this.el.nativeElement, 'p-slider-animate');\n }\n\n event.preventDefault();\n }\n\n onBarClick(event: Event) {\n if (this.disabled()) {\n return;\n }\n\n if (!this.sliderHandleClick) {\n this.updateDomData();\n this.handleChange(event);\n\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n }\n\n this.sliderHandleClick = false;\n }\n\n onKeyDown(event: any, index?) {\n this.handleIndex = index;\n\n switch (event.code) {\n case 'ArrowDown':\n case 'ArrowLeft':\n this.decrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'ArrowUp':\n case 'ArrowRight':\n this.incrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'PageDown':\n this.decrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'PageUp':\n this.incrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'Home':\n this.updateValue(this.min, event);\n event.preventDefault();\n break;\n\n case 'End':\n this.updateValue(this.max, event);\n event.preventDefault();\n break;\n\n default:\n break;\n }\n }\n\n decrementValue(event, index, pageKey = false) {\n let newValue;\n\n if (this.range) {\n if (this.step) newValue = this.values[index] - this.step;\n else newValue = this.values[index] - 1;\n } else {\n if (this.step) newValue = this.value - this.step;\n else if (!this.step && pageKey) newValue = this.value - 10;\n else newValue = this.value - 1;\n }\n\n this.updateValue(newValue, event);\n event.preventDefault();\n }\n\n incrementValue(event, index, pageKey = false) {\n let newValue;\n\n if (this.range) {\n if (this.step) newValue = this.values[index] + this.step;\n else newValue = this.values[index] + 1;\n } else {\n if (this.step) newValue = this.value + this.step;\n else if (!this.step && pageKey) newValue = this.value + 10;\n else newValue = this.value + 1;\n }\n\n this.updateValue(newValue, event);\n event.preventDefault();\n }\n\n handleChange(event: Event) {\n let handleValue = this.calculateHandleValue(event);\n this.setValueFromHandle(event, handleValue);\n }\n\n bindDragListeners() {\n if (isPlatformBrowser(this.platformId)) {\n this.ngZone.runOutsideAngular(() => {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : this.document;\n\n if (!this.dragListener) {\n this.dragListener = this.renderer.listen(documentTarget, 'mousemove', (event) => {\n if (this.dragging) {\n this.ngZone.run(() => {\n this.handleChange(event);\n });\n }\n });\n }\n\n if (!this.mouseupListener) {\n this.mouseupListener = this.renderer.listen(documentTarget, 'mouseup', (event) => {\n if (this.dragging) {\n this.dragging = false;\n this.ngZone.run(() => {\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n\n if (this.animate) {\n addClass(this.el.nativeElement, 'p-slider-animate');\n }\n });\n }\n });\n }\n });\n }\n }\n\n unbindDragListeners() {\n if (this.dragListener) {\n this.dragListener();\n this.dragListener = null;\n }\n\n if (this.mouseupListener) {\n this.mouseupListener();\n this.mouseupListener = null;\n }\n }\n\n setValueFromHandle(event: Event, handleValue: any) {\n let newValue = this.getValueFromHandle(handleValue);\n\n if (this.range) {\n if (this.step) {\n this.handleStepChange(newValue, (this.values as any)[this.handleIndex]);\n } else {\n this.handleValues[this.handleIndex] = handleValue;\n this.updateValue(newValue, event);\n }\n } else {\n if (this.step) {\n this.handleStepChange(newValue, this.value as any);\n } else {\n this.handleValue = handleValue;\n this.updateValue(newValue, event);\n }\n }\n\n this.cd.markForCheck();\n }\n\n handleStepChange(newValue: number, oldValue: number) {\n let diff = newValue - oldValue;\n let val = oldValue;\n let _step = this.step as number;\n\n if (diff < 0) {\n val = oldValue + Math.ceil(newValue / _step - oldValue / _step) * _step;\n } else if (diff > 0) {\n val = oldValue + Math.floor(newValue / _step - oldValue / _step) * _step;\n }\n\n this.updateValue(val);\n this.updateHandleValue();\n }\n\n writeValue(value: any): void {\n if (this.range) this.values = value || [0, 0];\n else this.value = value || 0;\n\n this.updateHandleValue();\n this.updateDiffAndOffset();\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 get rangeStartLeft() {\n if (!this.isVertical()) return this.handleValues[0] > 100 ? 100 + '%' : this.handleValues[0] + '%';\n return null;\n }\n\n get rangeStartBottom() {\n return this.isVertical() ? this.handleValues[0] + '%' : 'auto';\n }\n\n get rangeEndLeft() {\n return this.isVertical() ? null : this.handleValues[1] + '%';\n }\n\n get rangeEndBottom() {\n return this.isVertical() ? this.handleValues[1] + '%' : 'auto';\n }\n\n isVertical(): boolean {\n return this.orientation === 'vertical';\n }\n\n updateDomData(): void {\n let rect = this.el.nativeElement.getBoundingClientRect();\n this.initX = rect.left + getWindowScrollLeft();\n this.initY = rect.top + getWindowScrollTop();\n this.barWidth = this.el.nativeElement.offsetWidth;\n this.barHeight = this.el.nativeElement.offsetHeight;\n }\n\n calculateHandleValue(event: Event): number {\n if (this.orientation === 'horizontal') {\n if (isRTL(this.el.nativeElement)) {\n return (((this.initX as number) + (this.barWidth as number) - (event as MouseEvent).pageX) * 100) / (this.barWidth as number);\n } else {\n return (((event as MouseEvent).pageX - (this.initX as number)) * 100) / (this.barWidth as number);\n }\n } else {\n return (((this.initY as number) + (this.barHeight as number) - (event as MouseEvent).pageY) * 100) / (this.barHeight as number);\n }\n }\n\n updateHandleValue(): void {\n if (this.range) {\n this.handleValues[0] = (((this.values as number[])[0] < this.min ? 0 : (this.values as number[])[0] - this.min) * 100) / (this.max - this.min);\n this.handleValues[1] = (((this.values as number[])[1] > this.max ? 100 : (this.values as number[])[1] - this.min) * 100) / (this.max - this.min);\n } else {\n if ((this.value as number) < this.min) this.handleValue = 0;\n else if ((this.value as number) > this.max) this.handleValue = 100;\n else this.handleValue = (((this.value as number) - this.min) * 100) / (this.max - this.min);\n }\n\n if (this.step) {\n this.updateDiffAndOffset();\n }\n }\n\n updateDiffAndOffset(): void {\n this.diff = this.getDiff();\n this.offset = this.getOffset();\n }\n\n getDiff(): number {\n return Math.abs(this.handleValues[0] - this.handleValues[1]);\n }\n\n getOffset(): number {\n return Math.min(this.handleValues[0], this.handleValues[1]);\n }\n\n updateValue(val: number, event?: Event): void {\n if (this.range) {\n let value = val;\n\n if (this.handleIndex == 0) {\n if (value < this.min) {\n value = this.min;\n this.handleValues[0] = 0;\n } else if (value > (this.values as number[])[1]) {\n if (value > this.max) {\n value = this.max;\n this.handleValues[0] = 100;\n }\n }\n this.sliderHandleStart?.nativeElement.focus();\n } else {\n if (value > this.max) {\n value = this.max;\n this.handleValues[1] = 100;\n this.offset = this.handleValues[1];\n } else if (value < this.min) {\n value = this.min;\n this.handleValues[1] = 0;\n } else if (value < (this.values as number[])[0]) {\n this.offset = this.handleValues[1];\n }\n this.sliderHandleEnd?.nativeElement.focus();\n }\n\n if (this.step) {\n this.updateHandleValue();\n } else {\n this.updateDiffAndOffset();\n }\n\n (this.values as number[])[this.handleIndex] = this.getNormalizedValue(value);\n let newValues = [this.minVal, this.maxVal];\n this.onModelChange(newValues);\n this.onChange.emit({ event: event as Event, values: this.values as number[] });\n } else {\n if (val < this.min) {\n val = this.min;\n this.handleValue = 0;\n } else if (val > this.max) {\n val = this.max;\n this.handleValue = 100;\n }\n\n this.value = this.getNormalizedValue(val);\n\n this.onModelChange(this.value);\n this.onChange.emit({ event: event as Event, value: this.value });\n this.sliderHandle?.nativeElement.focus();\n }\n this.updateHandleValue();\n }\n\n getValueFromHandle(handleValue: number): number {\n return (this.max - this.min) * (handleValue / 100) + this.min;\n }\n\n getDecimalsCount(value: number): number {\n if (value && Math.floor(value) !== value) return value.toString().split('.')[1].length || 0;\n return 0;\n }\n\n getNormalizedValue(val: number): number {\n let decimalsCount = this.getDecimalsCount(this.step as number);\n if (decimalsCount > 0) {\n return +parseFloat(val.toString()).toFixed(decimalsCount);\n } else {\n return Math.floor(val);\n }\n }\n\n ngOnDestroy() {\n this.unbindDragListeners();\n super.ngOnDestroy();\n }\n\n get minVal() {\n return Math.min((this.values as number[])[1], (this.values as number[])[0]);\n }\n get maxVal() {\n return Math.max((this.values as number[])[1], (this.values as number[])[0]);\n }\n}\n\n@NgModule({\n imports: [Slider, SharedModule],\n exports: [Slider, SharedModule]\n})\nexport class SliderModule {}\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-slider.mjs","sources":["../../src/slider/style/sliderstyle.ts","../../src/slider/slider.ts","../../src/slider/primeng-slider.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/slider';\nimport { BaseStyle } from 'primeng/base';\n\nconst inlineStyles = {\n handle: { position: 'absolute' },\n range: { position: 'absolute' }\n};\n\nconst classes = {\n root: ({ instance }) => [\n 'p-slider p-component',\n {\n 'p-disabled': instance.$disabled(),\n 'p-invalid': instance.invalid(),\n 'p-slider-horizontal': instance.orientation === 'horizontal',\n 'p-slider-vertical': instance.orientation === 'vertical',\n 'p-slider-animate': instance.animate\n }\n ],\n range: 'p-slider-range',\n handle: 'p-slider-handle'\n};\n\n@Injectable()\nexport class SliderStyle extends BaseStyle {\n name = 'slider';\n\n theme = style;\n\n classes = classes;\n\n inlineStyles = inlineStyles;\n}\n\n/**\n *\n * Slider is a component to provide input with a drag handle.\n *\n * [Live Demo](https://www.primeng.org/slider/)\n *\n * @module sliderstyle\n *\n */\nexport enum SliderClasses {\n /**\n * Class name of the root element\n */\n root = 'p-slider',\n /**\n * Class name of the range element\n */\n range = 'p-slider-range',\n /**\n * Class name of the handle element\n */\n handle = 'p-slider-handle'\n}\n\nexport interface SliderStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, ElementRef, EventEmitter, forwardRef, HostListener, inject, Input, NgModule, NgZone, numberAttribute, OnDestroy, Output, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { addClass, getWindowScrollLeft, getWindowScrollTop, isRTL, removeClass } from '@primeuix/utils';\nimport { SharedModule } from 'primeng/api';\nimport { AutoFocus } from 'primeng/autofocus';\nimport { BaseEditableHolder } from 'primeng/baseeditableholder';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { SliderChangeEvent, SliderSlideEndEvent } from './slider.interface';\nimport { SliderStyle } from './style/sliderstyle';\n\nexport const SLIDER_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Slider),\n multi: true\n};\n/**\n * Slider is a component to provide input with a drag handle.\n * @group Components\n */\n@Component({\n selector: 'p-slider',\n standalone: true,\n imports: [CommonModule, AutoFocus, SharedModule],\n template: `\n <span\n *ngIf=\"range && orientation == 'horizontal'\"\n [class]=\"cx('range')\"\n [ngStyle]=\"{\n position: 'absolute',\n 'inset-inline-start': offset !== null && offset !== undefined ? offset + '%' : handleValues[0] + '%',\n width: diff ? diff + '%' : handleValues[1] - handleValues[0] + '%'\n }\"\n [attr.data-pc-section]=\"'range'\"\n ></span>\n <span\n *ngIf=\"range && orientation == 'vertical'\"\n [class]=\"cx('range')\"\n [ngStyle]=\"{\n position: 'absolute',\n bottom: offset !== null && offset !== undefined ? offset + '%' : handleValues[0] + '%',\n height: diff ? diff + '%' : handleValues[1] - handleValues[0] + '%'\n }\"\n [attr.data-pc-section]=\"'range'\"\n ></span>\n <span *ngIf=\"!range && orientation == 'vertical'\" [class]=\"cx('range')\" [attr.data-pc-section]=\"'range'\" [ngStyle]=\"{ position: 'absolute', height: handleValue + '%' }\"></span>\n <span *ngIf=\"!range && orientation == 'horizontal'\" [class]=\"cx('range')\" [attr.data-pc-section]=\"'range'\" [ngStyle]=\"{ position: 'absolute', width: handleValue + '%' }\"></span>\n <span\n *ngIf=\"!range\"\n #sliderHandle\n [class]=\"cx('handle')\"\n [style.transition]=\"dragging ? 'none' : null\"\n [ngStyle]=\"{\n position: 'absolute',\n 'inset-inline-start': orientation == 'horizontal' ? handleValue + '%' : null,\n bottom: orientation == 'vertical' ? handleValue + '%' : null\n }\"\n (touchstart)=\"onDragStart($event)\"\n (touchmove)=\"onDrag($event)\"\n (touchend)=\"onDragEnd($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (keydown)=\"onKeyDown($event)\"\n [attr.tabindex]=\"$disabled() ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'handle'\"\n [pAutoFocus]=\"autofocus\"\n ></span>\n <span\n *ngIf=\"range\"\n #sliderHandleStart\n [style.transition]=\"dragging ? 'none' : null\"\n [class]=\"cn(cx('handle'), handleIndex == 0 && 'p-slider-handle-active')\"\n [ngStyle]=\"{ position: 'absolute', 'inset-inline-start': rangeStartLeft, bottom: rangeStartBottom }\"\n (keydown)=\"onKeyDown($event, 0)\"\n (mousedown)=\"onMouseDown($event, 0)\"\n (touchstart)=\"onDragStart($event, 0)\"\n (touchmove)=\"onDrag($event)\"\n (touchend)=\"onDragEnd($event)\"\n [attr.tabindex]=\"$disabled() ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value ? value[0] : null\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'startHandler'\"\n [pAutoFocus]=\"autofocus\"\n ></span>\n <span\n *ngIf=\"range\"\n #sliderHandleEnd\n [style.transition]=\"dragging ? 'none' : null\"\n [class]=\"cn(cx('handle'), handleIndex == 1 && 'p-slider-handle-active')\"\n [ngStyle]=\"{ position: 'absolute', 'inset-inline-start': rangeEndLeft, bottom: rangeEndBottom }\"\n (keydown)=\"onKeyDown($event, 1)\"\n (mousedown)=\"onMouseDown($event, 1)\"\n (touchstart)=\"onDragStart($event, 1)\"\n (touchmove)=\"onDrag($event)\"\n (touchend)=\"onDragEnd($event)\"\n [attr.tabindex]=\"$disabled() ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value ? value[1] : null\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'endHandler'\"\n ></span>\n `,\n providers: [SLIDER_VALUE_ACCESSOR, SliderStyle],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[attr.data-pc-name]': \"'slider'\",\n '[attr.data-pc-section]': \"'root'\",\n '[class]': \"cn(cx('root'), styleClass)\"\n }\n})\nexport class Slider extends BaseEditableHolder implements OnDestroy {\n /**\n * When enabled, displays an animation on click of the slider bar.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) animate: boolean | undefined;\n /**\n * Mininum boundary value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) min: number = 0;\n /**\n * Maximum boundary value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) max: number = 100;\n /**\n * Orientation of the slider.\n * @group Props\n */\n @Input() orientation: 'horizontal' | 'vertical' = 'horizontal';\n /**\n * Step factor to increment/decrement the value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) step: number | undefined;\n /**\n * When specified, allows two boundary values to be picked.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) range: boolean | undefined;\n /**\n * Style class of the component.\n * @deprecated since v20.0.0, use `class` instead.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Defines a string that labels the input for accessibility.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number = 0;\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 * Callback to invoke on value change.\n * @param {SliderChangeEvent} event - Custom value change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<SliderChangeEvent> = new EventEmitter<SliderChangeEvent>();\n /**\n * Callback to invoke when slide ended.\n * @param {SliderSlideEndEvent} event - Custom slide end event.\n * @group Emits\n */\n @Output() onSlideEnd: EventEmitter<SliderSlideEndEvent> = new EventEmitter<SliderSlideEndEvent>();\n\n @ViewChild('sliderHandle') sliderHandle: Nullable<ElementRef>;\n\n @ViewChild('sliderHandleStart') sliderHandleStart: Nullable<ElementRef>;\n\n @ViewChild('sliderHandleEnd') sliderHandleEnd: Nullable<ElementRef>;\n\n _componentStyle = inject(SliderStyle);\n\n public value: Nullable<number>;\n\n public values: Nullable<number[]>;\n\n public handleValue: Nullable<number>;\n\n public handleValues: number[] = [];\n\n diff: Nullable<number>;\n\n offset: Nullable<number>;\n\n bottom: Nullable<number>;\n\n public dragging: Nullable<boolean>;\n\n public dragListener: VoidListener;\n\n public mouseupListener: VoidListener;\n\n public initX: Nullable<number>;\n\n public initY: Nullable<number>;\n\n public barWidth: Nullable<number>;\n\n public barHeight: Nullable<number>;\n\n public sliderHandleClick: Nullable<boolean>;\n\n public handleIndex: number = 0;\n\n public startHandleValue: any;\n\n public startx: Nullable<number>;\n\n public starty: Nullable<number>;\n\n private ngZone = inject(NgZone);\n\n @HostListener('click', ['$event'])\n onHostClick(event: MouseEvent) {\n this.onBarClick(event);\n }\n\n onMouseDown(event: Event, index?: number) {\n if (this.$disabled()) {\n return;\n }\n\n this.dragging = true;\n this.updateDomData();\n this.sliderHandleClick = true;\n if (this.range && this.handleValues && this.handleValues[0] === this.max) {\n this.handleIndex = 0;\n } else {\n (this.handleIndex as any) = index;\n }\n\n this.bindDragListeners();\n (event.target as HTMLInputElement).focus();\n event.preventDefault();\n\n if (this.animate) {\n removeClass(this.el.nativeElement, 'p-slider-animate');\n }\n }\n\n onDragStart(event: TouchEvent, index?: number) {\n if (this.$disabled()) {\n return;\n }\n\n var touchobj = event.changedTouches[0];\n this.startHandleValue = this.range ? this.handleValues[index as number] : this.handleValue;\n this.dragging = true;\n if (this.range && this.handleValues && this.handleValues[0] === this.max) {\n this.handleIndex = 0;\n } else {\n this.handleIndex = index as number;\n }\n\n if (this.orientation === 'horizontal') {\n this.startx = parseInt((touchobj as any).clientX, 10);\n this.barWidth = this.el.nativeElement.offsetWidth;\n } else {\n this.starty = parseInt((touchobj as any).clientY, 10);\n this.barHeight = this.el.nativeElement.offsetHeight;\n }\n\n if (this.animate) {\n removeClass(this.el.nativeElement, 'p-slider-animate');\n }\n\n event.preventDefault();\n }\n\n onDrag(event: TouchEvent) {\n if (this.$disabled()) {\n return;\n }\n\n var touchobj = event.changedTouches[0],\n handleValue = 0;\n\n if (this.orientation === 'horizontal') {\n handleValue = Math.floor(((parseInt((touchobj as any).clientX, 10) - (this.startx as number)) * 100) / (this.barWidth as number)) + this.startHandleValue;\n } else {\n handleValue = Math.floor((((this.starty as number) - parseInt((touchobj as any).clientY, 10)) * 100) / (this.barHeight as number)) + this.startHandleValue;\n }\n\n this.setValueFromHandle(event, handleValue);\n\n event.preventDefault();\n }\n\n onDragEnd(event: TouchEvent) {\n if (this.$disabled()) {\n return;\n }\n\n this.dragging = false;\n\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n\n if (this.animate) {\n addClass(this.el.nativeElement, 'p-slider-animate');\n }\n\n event.preventDefault();\n }\n\n onBarClick(event: Event) {\n if (this.$disabled()) {\n return;\n }\n\n if (!this.sliderHandleClick) {\n this.updateDomData();\n this.handleChange(event);\n\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n }\n\n this.sliderHandleClick = false;\n }\n\n onKeyDown(event: any, index?) {\n this.handleIndex = index;\n\n switch (event.code) {\n case 'ArrowDown':\n case 'ArrowLeft':\n this.decrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'ArrowUp':\n case 'ArrowRight':\n this.incrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'PageDown':\n this.decrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'PageUp':\n this.incrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'Home':\n this.updateValue(this.min, event);\n event.preventDefault();\n break;\n\n case 'End':\n this.updateValue(this.max, event);\n event.preventDefault();\n break;\n\n default:\n break;\n }\n }\n\n decrementValue(event, index, pageKey = false) {\n let newValue;\n\n if (this.range) {\n if (this.step) newValue = this.values[index] - this.step;\n else newValue = this.values[index] - 1;\n } else {\n if (this.step) newValue = this.value - this.step;\n else if (!this.step && pageKey) newValue = this.value - 10;\n else newValue = this.value - 1;\n }\n\n this.updateValue(newValue, event);\n event.preventDefault();\n }\n\n incrementValue(event, index, pageKey = false) {\n let newValue;\n\n if (this.range) {\n if (this.step) newValue = this.values[index] + this.step;\n else newValue = this.values[index] + 1;\n } else {\n if (this.step) newValue = this.value + this.step;\n else if (!this.step && pageKey) newValue = this.value + 10;\n else newValue = this.value + 1;\n }\n\n this.updateValue(newValue, event);\n event.preventDefault();\n }\n\n handleChange(event: Event) {\n let handleValue = this.calculateHandleValue(event);\n this.setValueFromHandle(event, handleValue);\n }\n\n bindDragListeners() {\n if (isPlatformBrowser(this.platformId)) {\n this.ngZone.runOutsideAngular(() => {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : this.document;\n\n if (!this.dragListener) {\n this.dragListener = this.renderer.listen(documentTarget, 'mousemove', (event) => {\n if (this.dragging) {\n this.ngZone.run(() => {\n this.handleChange(event);\n });\n }\n });\n }\n\n if (!this.mouseupListener) {\n this.mouseupListener = this.renderer.listen(documentTarget, 'mouseup', (event) => {\n if (this.dragging) {\n this.dragging = false;\n this.ngZone.run(() => {\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n\n if (this.animate) {\n addClass(this.el.nativeElement, 'p-slider-animate');\n }\n });\n }\n });\n }\n });\n }\n }\n\n unbindDragListeners() {\n if (this.dragListener) {\n this.dragListener();\n this.dragListener = null;\n }\n\n if (this.mouseupListener) {\n this.mouseupListener();\n this.mouseupListener = null;\n }\n }\n\n setValueFromHandle(event: Event, handleValue: any) {\n let newValue = this.getValueFromHandle(handleValue);\n\n if (this.range) {\n if (this.step) {\n this.handleStepChange(newValue, (this.values as any)[this.handleIndex]);\n } else {\n this.handleValues[this.handleIndex] = handleValue;\n this.updateValue(newValue, event);\n }\n } else {\n if (this.step) {\n this.handleStepChange(newValue, this.value as any);\n } else {\n this.handleValue = handleValue;\n this.updateValue(newValue, event);\n }\n }\n\n this.cd.markForCheck();\n }\n\n handleStepChange(newValue: number, oldValue: number) {\n let diff = newValue - oldValue;\n let val = oldValue;\n let _step = this.step as number;\n\n if (diff < 0) {\n val = oldValue + Math.ceil(newValue / _step - oldValue / _step) * _step;\n } else if (diff > 0) {\n val = oldValue + Math.floor(newValue / _step - oldValue / _step) * _step;\n }\n\n this.updateValue(val);\n this.updateHandleValue();\n }\n\n get rangeStartLeft() {\n if (!this.isVertical()) return this.handleValues[0] > 100 ? 100 + '%' : this.handleValues[0] + '%';\n return null;\n }\n\n get rangeStartBottom() {\n return this.isVertical() ? this.handleValues[0] + '%' : 'auto';\n }\n\n get rangeEndLeft() {\n return this.isVertical() ? null : this.handleValues[1] + '%';\n }\n\n get rangeEndBottom() {\n return this.isVertical() ? this.handleValues[1] + '%' : 'auto';\n }\n\n isVertical(): boolean {\n return this.orientation === 'vertical';\n }\n\n updateDomData(): void {\n let rect = this.el.nativeElement.getBoundingClientRect();\n this.initX = rect.left + getWindowScrollLeft();\n this.initY = rect.top + getWindowScrollTop();\n this.barWidth = this.el.nativeElement.offsetWidth;\n this.barHeight = this.el.nativeElement.offsetHeight;\n }\n\n calculateHandleValue(event: Event): number {\n if (this.orientation === 'horizontal') {\n if (isRTL(this.el.nativeElement)) {\n return (((this.initX as number) + (this.barWidth as number) - (event as MouseEvent).pageX) * 100) / (this.barWidth as number);\n } else {\n return (((event as MouseEvent).pageX - (this.initX as number)) * 100) / (this.barWidth as number);\n }\n } else {\n return (((this.initY as number) + (this.barHeight as number) - (event as MouseEvent).pageY) * 100) / (this.barHeight as number);\n }\n }\n\n updateHandleValue(): void {\n if (this.range) {\n this.handleValues[0] = (((this.values as number[])[0] < this.min ? 0 : (this.values as number[])[0] - this.min) * 100) / (this.max - this.min);\n this.handleValues[1] = (((this.values as number[])[1] > this.max ? 100 : (this.values as number[])[1] - this.min) * 100) / (this.max - this.min);\n } else {\n if ((this.value as number) < this.min) this.handleValue = 0;\n else if ((this.value as number) > this.max) this.handleValue = 100;\n else this.handleValue = (((this.value as number) - this.min) * 100) / (this.max - this.min);\n }\n\n if (this.step) {\n this.updateDiffAndOffset();\n }\n }\n\n updateDiffAndOffset(): void {\n this.diff = this.getDiff();\n this.offset = this.getOffset();\n }\n\n getDiff(): number {\n return Math.abs(this.handleValues[0] - this.handleValues[1]);\n }\n\n getOffset(): number {\n return Math.min(this.handleValues[0], this.handleValues[1]);\n }\n\n updateValue(val: number, event?: Event): void {\n if (this.range) {\n let value = val;\n\n if (this.handleIndex == 0) {\n if (value < this.min) {\n value = this.min;\n this.handleValues[0] = 0;\n } else if (value > (this.values as number[])[1]) {\n if (value > this.max) {\n value = this.max;\n this.handleValues[0] = 100;\n }\n }\n this.sliderHandleStart?.nativeElement.focus();\n } else {\n if (value > this.max) {\n value = this.max;\n this.handleValues[1] = 100;\n this.offset = this.handleValues[1];\n } else if (value < this.min) {\n value = this.min;\n this.handleValues[1] = 0;\n } else if (value < (this.values as number[])[0]) {\n this.offset = this.handleValues[1];\n }\n this.sliderHandleEnd?.nativeElement.focus();\n }\n\n if (this.step) {\n this.updateHandleValue();\n } else {\n this.updateDiffAndOffset();\n }\n\n (this.values as number[])[this.handleIndex] = this.getNormalizedValue(value);\n let newValues = [this.minVal, this.maxVal];\n this.onModelChange(newValues);\n this.onChange.emit({ event: event as Event, values: this.values as number[] });\n } else {\n if (val < this.min) {\n val = this.min;\n this.handleValue = 0;\n } else if (val > this.max) {\n val = this.max;\n this.handleValue = 100;\n }\n\n this.value = this.getNormalizedValue(val);\n\n this.onModelChange(this.value);\n this.onChange.emit({ event: event as Event, value: this.value });\n this.sliderHandle?.nativeElement.focus();\n }\n this.updateHandleValue();\n }\n\n getValueFromHandle(handleValue: number): number {\n return (this.max - this.min) * (handleValue / 100) + this.min;\n }\n\n getDecimalsCount(value: number): number {\n if (value && Math.floor(value) !== value) return value.toString().split('.')[1].length || 0;\n return 0;\n }\n\n getNormalizedValue(val: number): number {\n let decimalsCount = this.getDecimalsCount(this.step as number);\n if (decimalsCount > 0) {\n return +parseFloat(val.toString()).toFixed(decimalsCount);\n } else {\n return Math.floor(val);\n }\n }\n\n ngOnDestroy() {\n this.unbindDragListeners();\n super.ngOnDestroy();\n }\n\n get minVal() {\n return Math.min((this.values as number[])[1], (this.values as number[])[0]);\n }\n get maxVal() {\n return Math.max((this.values as number[])[1], (this.values as number[])[0]);\n }\n\n /**\n * @override\n *\n * @see {@link BaseEditableHolder.writeControlValue}\n * Writes the value to the control.\n */\n writeControlValue(value: any): void {\n if (this.range) this.values = value || [0, 0];\n else this.value = value || 0;\n\n this.updateHandleValue();\n this.updateDiffAndOffset();\n this.cd.markForCheck();\n }\n}\n\n@NgModule({\n imports: [Slider, SharedModule],\n exports: [Slider, SharedModule]\n})\nexport class SliderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|