primeng 20.0.0-rc.2 → 20.0.0
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/autocomplete/index.d.ts +8 -7
- package/baseeditableholder/index.d.ts +14 -5
- package/basemodelholder/index.d.ts +12 -0
- package/cascadeselect/index.d.ts +7 -5
- package/checkbox/index.d.ts +9 -7
- package/colorpicker/index.d.ts +8 -7
- package/datepicker/index.d.ts +10 -9
- package/editor/index.d.ts +9 -8
- package/fesm2022/primeng-accordion.mjs +33 -33
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-animateonscroll.mjs +7 -7
- package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
- package/fesm2022/primeng-api.mjs +31 -31
- package/fesm2022/primeng-api.mjs.map +1 -1
- package/fesm2022/primeng-autocomplete.mjs +55 -57
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-autofocus.mjs +7 -7
- package/fesm2022/primeng-autofocus.mjs.map +1 -1
- package/fesm2022/primeng-avatar.mjs +10 -10
- package/fesm2022/primeng-avatar.mjs.map +1 -1
- package/fesm2022/primeng-avatargroup.mjs +10 -10
- package/fesm2022/primeng-avatargroup.mjs.map +1 -1
- package/fesm2022/primeng-badge.mjs +19 -19
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-base.mjs +3 -3
- package/fesm2022/primeng-base.mjs.map +1 -1
- package/fesm2022/primeng-basecomponent.mjs +6 -6
- package/fesm2022/primeng-basecomponent.mjs.map +1 -1
- package/fesm2022/primeng-baseeditableholder.mjs +32 -14
- package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
- package/fesm2022/primeng-baseinput.mjs +14 -14
- package/fesm2022/primeng-baseinput.mjs.map +1 -1
- package/fesm2022/primeng-basemodelholder.mjs +25 -0
- package/fesm2022/primeng-basemodelholder.mjs.map +1 -0
- package/fesm2022/primeng-blockui.mjs +10 -10
- package/fesm2022/primeng-blockui.mjs.map +1 -1
- package/fesm2022/primeng-breadcrumb.mjs +10 -10
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs +25 -25
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs +10 -10
- package/fesm2022/primeng-card.mjs +12 -12
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-carousel.mjs +11 -11
- package/fesm2022/primeng-carousel.mjs.map +1 -1
- package/fesm2022/primeng-cascadeselect.mjs +46 -48
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-chart.mjs +10 -10
- package/fesm2022/primeng-chart.mjs.map +1 -1
- package/fesm2022/primeng-checkbox.mjs +26 -28
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs +10 -10
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-colorpicker.mjs +47 -49
- package/fesm2022/primeng-colorpicker.mjs.map +1 -1
- package/fesm2022/primeng-config.mjs +13 -13
- package/fesm2022/primeng-config.mjs.map +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +10 -10
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs +10 -10
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +22 -30
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +11 -11
- package/fesm2022/primeng-dataview.mjs.map +1 -1
- package/fesm2022/primeng-datepicker.mjs +53 -55
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-dialog.mjs +12 -12
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +11 -11
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dock.mjs +12 -12
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dragdrop.mjs +10 -10
- package/fesm2022/primeng-dragdrop.mjs.map +1 -1
- package/fesm2022/primeng-drawer.mjs +10 -10
- package/fesm2022/primeng-drawer.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +17 -17
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +18 -20
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs +10 -10
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +21 -20
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs +10 -10
- package/fesm2022/primeng-fluid.mjs +10 -10
- package/fesm2022/primeng-focustrap.mjs +7 -7
- package/fesm2022/primeng-focustrap.mjs.map +1 -1
- package/fesm2022/primeng-galleria.mjs +22 -22
- package/fesm2022/primeng-galleria.mjs.map +1 -1
- package/fesm2022/primeng-iconfield.mjs +10 -10
- package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
- package/fesm2022/primeng-icons-angledown.mjs +3 -3
- package/fesm2022/primeng-icons-angleleft.mjs +3 -3
- package/fesm2022/primeng-icons-angleright.mjs +3 -3
- package/fesm2022/primeng-icons-angleup.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
- package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
- package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowright.mjs +3 -3
- package/fesm2022/primeng-icons-arrowup.mjs +3 -3
- package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
- package/fesm2022/primeng-icons-ban.mjs +3 -3
- package/fesm2022/primeng-icons-ban.mjs.map +1 -1
- package/fesm2022/primeng-icons-bars.mjs +3 -3
- package/fesm2022/primeng-icons-baseicon.mjs +6 -6
- package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
- package/fesm2022/primeng-icons-blank.mjs +3 -3
- package/fesm2022/primeng-icons-calendar.mjs +3 -3
- package/fesm2022/primeng-icons-caretleft.mjs +3 -3
- package/fesm2022/primeng-icons-caretright.mjs +3 -3
- package/fesm2022/primeng-icons-check.mjs +3 -3
- package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
- package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
- package/fesm2022/primeng-icons-chevronright.mjs +3 -3
- package/fesm2022/primeng-icons-chevronup.mjs +3 -3
- package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
- package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
- package/fesm2022/primeng-icons-eye.mjs +3 -3
- package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
- package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-filter.mjs +3 -3
- package/fesm2022/primeng-icons-filter.mjs.map +1 -1
- package/fesm2022/primeng-icons-filterfill.mjs +3 -3
- package/fesm2022/primeng-icons-filterslash.mjs +3 -3
- package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-home.mjs +3 -3
- package/fesm2022/primeng-icons-home.mjs.map +1 -1
- package/fesm2022/primeng-icons-infocircle.mjs +3 -3
- package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-minus.mjs +3 -3
- package/fesm2022/primeng-icons-pencil.mjs +3 -3
- package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
- package/fesm2022/primeng-icons-plus.mjs +3 -3
- package/fesm2022/primeng-icons-plus.mjs.map +1 -1
- package/fesm2022/primeng-icons-refresh.mjs +3 -3
- package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
- package/fesm2022/primeng-icons-search.mjs +3 -3
- package/fesm2022/primeng-icons-search.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchminus.mjs +3 -3
- package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchplus.mjs +3 -3
- package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortalt.mjs +3 -3
- package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-spinner.mjs +3 -3
- package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
- package/fesm2022/primeng-icons-star.mjs +3 -3
- package/fesm2022/primeng-icons-star.mjs.map +1 -1
- package/fesm2022/primeng-icons-starfill.mjs +3 -3
- package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
- package/fesm2022/primeng-icons-thlarge.mjs +3 -3
- package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
- package/fesm2022/primeng-icons-times.mjs +3 -3
- package/fesm2022/primeng-icons-timescircle.mjs +3 -3
- package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-trash.mjs +3 -3
- package/fesm2022/primeng-icons-trash.mjs.map +1 -1
- package/fesm2022/primeng-icons-undo.mjs +3 -3
- package/fesm2022/primeng-icons-undo.mjs.map +1 -1
- package/fesm2022/primeng-icons-upload.mjs +3 -3
- package/fesm2022/primeng-icons-upload.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
- package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
- package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
- package/fesm2022/primeng-iftalabel.mjs +10 -10
- package/fesm2022/primeng-image.mjs +12 -12
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-imagecompare.mjs +10 -10
- package/fesm2022/primeng-imagecompare.mjs.map +1 -1
- package/fesm2022/primeng-inplace.mjs +16 -16
- package/fesm2022/primeng-inplace.mjs.map +1 -1
- package/fesm2022/primeng-inputgroup.mjs +10 -10
- package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
- package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
- package/fesm2022/primeng-inputicon.mjs +10 -10
- package/fesm2022/primeng-inputmask.mjs +33 -35
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +40 -42
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs +39 -41
- package/fesm2022/primeng-inputotp.mjs.map +1 -1
- package/fesm2022/primeng-inputtext.mjs +23 -17
- package/fesm2022/primeng-inputtext.mjs.map +1 -1
- package/fesm2022/primeng-keyfilter.mjs +7 -7
- package/fesm2022/primeng-keyfilter.mjs.map +1 -1
- package/fesm2022/primeng-knob.mjs +32 -34
- package/fesm2022/primeng-knob.mjs.map +1 -1
- package/fesm2022/primeng-listbox.mjs +52 -54
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +17 -17
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +45 -36
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +38 -43
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs +11 -11
- package/fesm2022/primeng-message.mjs.map +1 -1
- package/fesm2022/primeng-metergroup.mjs +13 -13
- package/fesm2022/primeng-metergroup.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +66 -67
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +10 -10
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs +13 -13
- package/fesm2022/primeng-organizationchart.mjs.map +1 -1
- package/fesm2022/primeng-overlay.mjs +13 -13
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaybadge.mjs +10 -10
- package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
- package/fesm2022/primeng-paginator.mjs +12 -12
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +10 -10
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +23 -23
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-password.mjs +45 -47
- package/fesm2022/primeng-password.mjs.map +1 -1
- package/fesm2022/primeng-picklist.mjs +10 -10
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs +10 -10
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +10 -10
- package/fesm2022/primeng-progressbar.mjs.map +1 -1
- package/fesm2022/primeng-progressspinner.mjs +10 -10
- package/fesm2022/primeng-radiobutton.mjs +32 -34
- package/fesm2022/primeng-radiobutton.mjs.map +1 -1
- package/fesm2022/primeng-rating.mjs +25 -27
- package/fesm2022/primeng-rating.mjs.map +1 -1
- package/fesm2022/primeng-ripple.mjs +10 -10
- package/fesm2022/primeng-ripple.mjs.map +1 -1
- package/fesm2022/primeng-scroller.mjs +10 -10
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +10 -10
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs +10 -10
- package/fesm2022/primeng-scrolltop.mjs.map +1 -1
- package/fesm2022/primeng-select.mjs +54 -56
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs +27 -29
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs +10 -10
- package/fesm2022/primeng-skeleton.mjs.map +1 -1
- package/fesm2022/primeng-slider.mjs +38 -40
- package/fesm2022/primeng-slider.mjs.map +1 -1
- package/fesm2022/primeng-speeddial.mjs +11 -11
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +11 -11
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs +13 -13
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs +104 -79
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs +10 -10
- package/fesm2022/primeng-steps.mjs.map +1 -1
- package/fesm2022/primeng-styleclass.mjs +7 -7
- package/fesm2022/primeng-styleclass.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +108 -116
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabs.mjs +57 -57
- package/fesm2022/primeng-tabs.mjs.map +1 -1
- package/fesm2022/primeng-tag.mjs +10 -10
- package/fesm2022/primeng-tag.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +13 -13
- package/fesm2022/primeng-terminal.mjs.map +1 -1
- package/fesm2022/primeng-textarea.mjs +22 -17
- package/fesm2022/primeng-textarea.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +22 -23
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-timeline.mjs +10 -10
- package/fesm2022/primeng-timeline.mjs.map +1 -1
- package/fesm2022/primeng-toast.mjs +13 -13
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs +26 -27
- package/fesm2022/primeng-togglebutton.mjs.map +1 -1
- package/fesm2022/primeng-toggleswitch.mjs +25 -27
- package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
- package/fesm2022/primeng-toolbar.mjs +10 -10
- package/fesm2022/primeng-toolbar.mjs.map +1 -1
- package/fesm2022/primeng-tooltip.mjs +12 -12
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +14 -14
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +32 -34
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +63 -63
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-usestyle.mjs +8 -8
- package/fesm2022/primeng-usestyle.mjs.map +1 -1
- package/fesm2022/primeng-utils.mjs.map +1 -1
- package/inputmask/index.d.ts +8 -7
- 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/menu/index.d.ts +2 -1
- package/menubar/index.d.ts +1 -3
- package/multiselect/index.d.ts +8 -7
- package/package.json +220 -216
- package/password/index.d.ts +7 -5
- package/radiobutton/index.d.ts +9 -7
- package/rating/index.d.ts +8 -7
- 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 +1 -5
- package/textarea/index.d.ts +9 -4
- package/tieredmenu/index.d.ts +5 -1
- package/togglebutton/index.d.ts +8 -7
- package/toggleswitch/index.d.ts +7 -5
- package/treeselect/index.d.ts +7 -5
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-scrollpanel.mjs","sources":["../../src/scrollpanel/style/scrollpanelstyle.ts","../../src/scrollpanel/scrollpanel.ts","../../src/scrollpanel/primeng-scrollpanel.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/scrollpanel';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = /*css*/ `\n ${style}\n\n .p-scrollpanel {\n display: block;\n }\n`;\n\nconst classes = {\n root: 'p-scrollpanel p-component',\n contentContainer: 'p-scrollpanel-content-container',\n content: 'p-scrollpanel-content',\n barX: 'p-scrollpanel-bar p-scrollpanel-bar-x',\n barY: 'p-scrollpanel-bar p-scrollpanel-bar-y'\n};\n\n@Injectable()\nexport class ScrollPanelStyle extends BaseStyle {\n name = 'scrollpanel';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * ScrollPanel is a cross browser, lightweight and themable alternative to native browser scrollbar.\n *\n * [Live Demo](https://www.primeng.org/scrollpanel/)\n *\n * @module scrollpanelstyle\n *\n */\nexport enum ScrollPanelClasses {\n /**\n * Class name of the root element\n */\n root = 'p-scrollpanel',\n /**\n * Class name of the content container element\n */\n contentContainer = 'p-scrollpanel-content-container',\n /**\n * Class name of the content element\n */\n content = 'p-scrollpanel-content',\n /**\n * Class name of the bar x element\n */\n barX = 'p-scrollpanel-bar-x',\n /**\n * Class name of the bar y element\n */\n barY = 'p-scrollpanel-bar-y'\n}\n\nexport interface ScrollPanelStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n inject,\n Input,\n NgModule,\n NgZone,\n numberAttribute,\n OnDestroy,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { addClass, getHeight, removeClass, uuid } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { ScrollPanelStyle } from './style/scrollpanelstyle';\n\n/**\n * ScrollPanel is a cross browser, lightweight and themable alternative to native browser scrollbar.\n * @group Components\n */\n@Component({\n selector: 'p-scroll-panel, p-scrollPanel, p-scrollpanel',\n standalone: true,\n imports: [CommonModule, SharedModule],\n template: `\n <div [class]=\"cx('contentContainer')\" [attr.data-pc-section]=\"'wrapper'\">\n <div #content [class]=\"cx('content')\" [attr.data-pc-section]=\"'content'\" (mouseenter)=\"moveBar()\" (scroll)=\"onScroll($event)\">\n @if (!contentTemplate && !_contentTemplate) {\n <ng-content></ng-content>\n }\n <ng-container *ngTemplateOutlet=\"contentTemplate || _contentTemplate\"></ng-container>\n </div>\n </div>\n <div\n #xBar\n [class]=\"cx('barX')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n [attr.aria-orientation]=\"'horizontal'\"\n [attr.aria-valuenow]=\"lastScrollLeft\"\n [attr.data-pc-section]=\"'barx'\"\n [attr.aria-controls]=\"contentId\"\n (mousedown)=\"onXBarMouseDown($event)\"\n (keydown)=\"onKeyDown($event)\"\n (keyup)=\"onKeyUp()\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur()\"\n ></div>\n <div\n #yBar\n [class]=\"cx('barY')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n [attr.aria-orientation]=\"'vertical'\"\n [attr.aria-valuenow]=\"lastScrollTop\"\n [attr.data-pc-section]=\"'bary'\"\n [attr.aria-controls]=\"contentId\"\n (mousedown)=\"onYBarMouseDown($event)\"\n (keydown)=\"onKeyDown($event)\"\n (keyup)=\"onKeyUp()\"\n (focus)=\"onFocus($event)\"\n ></div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [ScrollPanelStyle],\n host: {\n '[class]': 'cn(cx(\"root\"), styleClass)',\n 'data-pc-name': 'scrollpanel'\n }\n})\nexport class ScrollPanel extends BaseComponent implements AfterViewInit, AfterContentInit, OnDestroy {\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 * Step factor to scroll the content while pressing the arrow keys.\n * @group Props\n */\n @Input({ transform: numberAttribute }) step: number = 5;\n\n @ViewChild('content') contentViewChild: ElementRef | undefined;\n\n @ViewChild('xBar') xBarViewChild: ElementRef | undefined;\n\n @ViewChild('yBar') yBarViewChild: ElementRef | undefined;\n /**\n * Defines template option for content.\n * @group Templates\n */\n @ContentChild('content', { descendants: false }) contentTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n _contentTemplate: TemplateRef<any> | undefined;\n\n scrollYRatio: number | undefined;\n\n scrollXRatio: number | undefined;\n\n timeoutFrame: any = (fn: VoidFunction) => setTimeout(fn, 0);\n\n initialized: boolean = false;\n\n lastPageY: number | undefined;\n\n lastPageX: number | undefined;\n\n isXBarClicked: boolean = false;\n\n isYBarClicked: boolean = false;\n\n lastScrollLeft: number = 0;\n\n lastScrollTop: number = 0;\n\n orientation: string = 'vertical';\n\n timer: any;\n\n contentId: string | undefined;\n\n windowResizeListener: VoidFunction | null | undefined;\n\n contentScrollListener: VoidFunction | null | undefined;\n\n mouseEnterListener: VoidFunction | null | undefined;\n\n xBarMouseDownListener: VoidFunction | null | undefined;\n\n yBarMouseDownListener: VoidFunction | null | undefined;\n\n documentMouseMoveListener: Nullable<(event?: any) => void>;\n\n documentMouseUpListener: Nullable<(event?: any) => void>;\n\n _componentStyle = inject(ScrollPanelStyle);\n\n zone: NgZone = inject(NgZone);\n\n ngOnInit() {\n super.ngOnInit();\n this.contentId = uuid('pn_id_') + '_content';\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n this.moveBar();\n this.moveBar = this.moveBar.bind(this);\n this.onXBarMouseDown = this.onXBarMouseDown.bind(this);\n this.onYBarMouseDown = this.onYBarMouseDown.bind(this);\n this.onDocumentMouseMove = this.onDocumentMouseMove.bind(this);\n this.onDocumentMouseUp = this.onDocumentMouseUp.bind(this);\n\n this.windowResizeListener = this.renderer.listen(window, 'resize', this.moveBar);\n this.contentScrollListener = this.renderer.listen((this.contentViewChild as ElementRef).nativeElement, 'scroll', this.moveBar);\n this.mouseEnterListener = this.renderer.listen((this.contentViewChild as ElementRef).nativeElement, 'mouseenter', this.moveBar);\n this.xBarMouseDownListener = this.renderer.listen((this.xBarViewChild as ElementRef).nativeElement, 'mousedown', this.onXBarMouseDown);\n this.yBarMouseDownListener = this.renderer.listen((this.yBarViewChild as ElementRef).nativeElement, 'mousedown', this.onYBarMouseDown);\n this.calculateContainerHeight();\n\n this.initialized = true;\n });\n }\n }\n\n ngAfterContentInit() {\n (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this._contentTemplate = item.template;\n break;\n\n default:\n this._contentTemplate = item.template;\n break;\n }\n });\n }\n\n calculateContainerHeight() {\n let container = (this.el as ElementRef).nativeElement;\n let content = (this.contentViewChild as ElementRef).nativeElement;\n let xBar = (this.xBarViewChild as ElementRef).nativeElement;\n const window = this.document.defaultView as Window;\n\n let containerStyles: { [klass: string]: any } = window.getComputedStyle(container),\n xBarStyles = window.getComputedStyle(xBar),\n pureContainerHeight = getHeight(container) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] != 'none' && pureContainerHeight == 0) {\n if (content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n container.style.height = containerStyles['max-height'];\n } else {\n container.style.height = content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n }\n\n moveBar() {\n let container = (this.el as ElementRef).nativeElement;\n let content = (this.contentViewChild as ElementRef).nativeElement;\n\n /* horizontal scroll */\n let xBar = (this.xBarViewChild as ElementRef).nativeElement;\n let totalWidth = content.scrollWidth;\n let ownWidth = content.clientWidth;\n let bottom = (container.clientHeight - xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let yBar = (this.yBarViewChild as ElementRef).nativeElement;\n let totalHeight = content.scrollHeight;\n let ownHeight = content.clientHeight;\n let right = (container.clientWidth - yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.requestAnimationFrame(() => {\n if ((this.scrollXRatio as number) >= 1) {\n xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n addClass(xBar, 'p-scrollpanel-hidden');\n } else {\n xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n removeClass(xBar, 'p-scrollpanel-hidden');\n const xBarWidth = Math.max((this.scrollXRatio as number) * 100, 10);\n const xBarLeft = Math.abs((content.scrollLeft * (100 - xBarWidth)) / (totalWidth - ownWidth));\n xBar.style.cssText = 'width:' + xBarWidth + '%; inset-inline-start:' + xBarLeft + '%;bottom:' + bottom + 'px;';\n }\n\n if ((this.scrollYRatio as number) >= 1) {\n yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n addClass(yBar, 'p-scrollpanel-hidden');\n } else {\n yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n removeClass(yBar, 'p-scrollpanel-hidden');\n const yBarHeight = Math.max((this.scrollYRatio as number) * 100, 10);\n const yBarTop = (content.scrollTop * (100 - yBarHeight)) / (totalHeight - ownHeight);\n yBar.style.cssText = 'height:' + yBarHeight + '%; top: calc(' + yBarTop + '% - ' + xBar.clientHeight + 'px); inset-inline-end:' + right + 'px;';\n }\n });\n this.cd.markForCheck();\n }\n\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n }\n\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n }\n\n onKeyUp() {\n this.clearTimer();\n }\n\n repeat(bar, step) {\n this.contentViewChild.nativeElement[bar] += step;\n this.moveBar();\n }\n\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n }\n\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n }\n\n bindDocumentMouseListeners(): void {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n this.document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n this.document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n }\n\n unbindDocumentMouseListeners(): void {\n if (this.documentMouseMoveListener) {\n this.document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n }\n\n onYBarMouseDown(e: MouseEvent) {\n this.isYBarClicked = true;\n this.yBarViewChild.nativeElement.focus();\n this.lastPageY = e.pageY;\n\n this.yBarViewChild.nativeElement.setAttribute('data-p-scrollpanel-grabbed', 'true');\n addClass((this.yBarViewChild as ElementRef).nativeElement, 'p-scrollpanel-grabbed');\n\n this.document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n addClass(this.document.body, 'p-scrollpanel-grabbed');\n this.bindDocumentMouseListeners();\n e.preventDefault();\n }\n\n onXBarMouseDown(e: MouseEvent) {\n this.isXBarClicked = true;\n this.xBarViewChild.nativeElement.focus();\n this.lastPageX = e.pageX;\n\n this.xBarViewChild.nativeElement.setAttribute('data-p-scrollpanel-grabbed', 'false');\n addClass((this.xBarViewChild as ElementRef).nativeElement, 'p-scrollpanel-grabbed');\n\n this.document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n addClass(this.document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n }\n\n onDocumentMouseMove(e: MouseEvent) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n }\n\n onMouseMoveForXBar(e: MouseEvent) {\n let deltaX = e.pageX - (this.lastPageX as number);\n this.lastPageX = e.pageX;\n\n this.requestAnimationFrame(() => {\n (this.contentViewChild as ElementRef).nativeElement.scrollLeft += deltaX / (this.scrollXRatio as number);\n });\n }\n\n onMouseMoveForYBar(e: MouseEvent) {\n let deltaY = e.pageY - (this.lastPageY as number);\n this.lastPageY = e.pageY;\n\n this.requestAnimationFrame(() => {\n (this.contentViewChild as ElementRef).nativeElement.scrollTop += deltaY / (this.scrollYRatio as number);\n });\n }\n /**\n * Scrolls the top location to the given value.\n * @param scrollTop\n * @group Method\n */\n scrollTop(scrollTop: number) {\n let scrollableHeight = (this.contentViewChild as ElementRef).nativeElement.scrollHeight - (this.contentViewChild as ElementRef).nativeElement.clientHeight;\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n (this.contentViewChild as ElementRef).nativeElement.scrollTop = scrollTop;\n }\n\n onFocus(event) {\n if (this.xBarViewChild.nativeElement.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.yBarViewChild.nativeElement.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n }\n\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n }\n\n onDocumentMouseUp(e: Event) {\n this.yBarViewChild.nativeElement.setAttribute('data-p-scrollpanel-grabbed', 'false');\n removeClass((this.yBarViewChild as ElementRef).nativeElement, 'p-scrollpanel-grabbed');\n this.xBarViewChild.nativeElement.setAttribute('data-p-scrollpanel-grabbed', 'false');\n removeClass((this.xBarViewChild as ElementRef).nativeElement, 'p-scrollpanel-grabbed');\n this.document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n removeClass(this.document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n }\n\n requestAnimationFrame(f: VoidFunction) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n frame(f);\n }\n\n unbindListeners() {\n if (this.windowResizeListener) {\n this.windowResizeListener();\n this.windowResizeListener = null;\n }\n\n if (this.contentScrollListener) {\n this.contentScrollListener();\n this.contentScrollListener = null;\n }\n\n if (this.mouseEnterListener) {\n this.mouseEnterListener();\n this.mouseEnterListener = null;\n }\n\n if (this.xBarMouseDownListener) {\n this.xBarMouseDownListener();\n this.xBarMouseDownListener = null;\n }\n\n if (this.yBarMouseDownListener) {\n this.yBarMouseDownListener();\n this.yBarMouseDownListener = null;\n }\n }\n\n ngOnDestroy() {\n if (this.initialized) {\n this.unbindListeners();\n }\n }\n /**\n * Refreshes the position and size of the scrollbar.\n * @group Method\n */\n refresh() {\n this.moveBar();\n }\n}\n\n@NgModule({\n imports: [ScrollPanel, SharedModule],\n exports: [ScrollPanel, SharedModule]\n})\nexport class ScrollPanelModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;AAIA,MAAM,KAAK,WAAW;MAChB,KAAK;;;;;CAKV;AAED,MAAM,OAAO,GAAG;AACZ,IAAA,IAAI,EAAE,2BAA2B;AACjC,IAAA,gBAAgB,EAAE,iCAAiC;AACnD,IAAA,OAAO,EAAE,uBAAuB;AAChC,IAAA,IAAI,EAAE,uCAAuC;AAC7C,IAAA,IAAI,EAAE;CACT;AAGK,MAAO,gBAAiB,SAAQ,SAAS,CAAA;IAC3C,IAAI,GAAG,aAAa;IAEpB,KAAK,GAAG,KAAK;IAEb,OAAO,GAAG,OAAO;uGALR,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;2GAAhB,gBAAgB,EAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B;;AASD;;;;;;;;AAQG;IACS;AAAZ,CAAA,UAAY,kBAAkB,EAAA;AAC1B;;AAEG;AACH,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,eAAsB;AACtB;;AAEG;AACH,IAAA,kBAAA,CAAA,kBAAA,CAAA,GAAA,iCAAoD;AACpD;;AAEG;AACH,IAAA,kBAAA,CAAA,SAAA,CAAA,GAAA,uBAAiC;AACjC;;AAEG;AACH,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,qBAA4B;AAC5B;;AAEG;AACH,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,qBAA4B;AAChC,CAAC,EArBW,kBAAkB,KAAlB,kBAAkB,GAAA,EAAA,CAAA,CAAA;;ACZ9B;;;AAGG;AAoDG,MAAO,WAAY,SAAQ,aAAa,CAAA;AAC1C;;;;AAIG;AACM,IAAA,UAAU;AACnB;;;AAGG;IACoC,IAAI,GAAW,CAAC;AAEjC,IAAA,gBAAgB;AAEnB,IAAA,aAAa;AAEb,IAAA,aAAa;AAChC;;;AAGG;AAC8C,IAAA,eAAe;AAEhC,IAAA,SAAS;AAEzC,IAAA,gBAAgB;AAEhB,IAAA,YAAY;AAEZ,IAAA,YAAY;AAEZ,IAAA,YAAY,GAAQ,CAAC,EAAgB,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3D,WAAW,GAAY,KAAK;AAE5B,IAAA,SAAS;AAET,IAAA,SAAS;IAET,aAAa,GAAY,KAAK;IAE9B,aAAa,GAAY,KAAK;IAE9B,cAAc,GAAW,CAAC;IAE1B,aAAa,GAAW,CAAC;IAEzB,WAAW,GAAW,UAAU;AAEhC,IAAA,KAAK;AAEL,IAAA,SAAS;AAET,IAAA,oBAAoB;AAEpB,IAAA,qBAAqB;AAErB,IAAA,kBAAkB;AAElB,IAAA,qBAAqB;AAErB,IAAA,qBAAqB;AAErB,IAAA,yBAAyB;AAEzB,IAAA,uBAAuB;AAEvB,IAAA,eAAe,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAE1C,IAAA,IAAI,GAAW,MAAM,CAAC,MAAM,CAAC;IAE7B,QAAQ,GAAA;QACJ,KAAK,CAAC,QAAQ,EAAE;QAChB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,UAAU;;IAGhD,eAAe,GAAA;QACX,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;AACpC,YAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAK;gBAC7B,IAAI,CAAC,OAAO,EAAE;gBACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;gBACtC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;gBACtD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;gBACtD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC9D,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;AAE1D,gBAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC;gBAChF,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAE,IAAI,CAAC,gBAA+B,CAAC,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC;gBAC9H,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAE,IAAI,CAAC,gBAA+B,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC;gBAC/H,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAE,IAAI,CAAC,aAA4B,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;gBACtI,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAE,IAAI,CAAC,aAA4B,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;gBACtI,IAAI,CAAC,wBAAwB,EAAE;AAE/B,gBAAA,IAAI,CAAC,WAAW,GAAG,IAAI;AAC3B,aAAC,CAAC;;;IAIV,kBAAkB,GAAA;QACb,IAAI,CAAC,SAAsC,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC1D,YAAA,QAAQ,IAAI,CAAC,OAAO,EAAE;AAClB,gBAAA,KAAK,SAAS;AACV,oBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ;oBACrC;AAEJ,gBAAA;AACI,oBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ;oBACrC;;AAEZ,SAAC,CAAC;;IAGN,wBAAwB,GAAA;AACpB,QAAA,IAAI,SAAS,GAAI,IAAI,CAAC,EAAiB,CAAC,aAAa;AACrD,QAAA,IAAI,OAAO,GAAI,IAAI,CAAC,gBAA+B,CAAC,aAAa;AACjE,QAAA,IAAI,IAAI,GAAI,IAAI,CAAC,aAA4B,CAAC,aAAa;AAC3D,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAqB;AAElD,QAAA,IAAI,eAAe,GAA6B,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAC9E,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAC1C,mBAAmB,GAAG,SAAS,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QAEnF,IAAI,eAAe,CAAC,YAAY,CAAC,IAAI,MAAM,IAAI,mBAAmB,IAAI,CAAC,EAAE;YACrE,IAAI,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,EAAE;gBACzG,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,eAAe,CAAC,YAAY,CAAC;;iBACnD;AACH,gBAAA,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,eAAe,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC,eAAe,CAAC,cAAc,CAAC,GAAG,UAAU,CAAC,eAAe,CAAC,iBAAiB,CAAC,GAAG,IAAI;;;;IAKlP,OAAO,GAAA;AACH,QAAA,IAAI,SAAS,GAAI,IAAI,CAAC,EAAiB,CAAC,aAAa;AACrD,QAAA,IAAI,OAAO,GAAI,IAAI,CAAC,gBAA+B,CAAC,aAAa;;AAGjE,QAAA,IAAI,IAAI,GAAI,IAAI,CAAC,aAA4B,CAAC,aAAa;AAC3D,QAAA,IAAI,UAAU,GAAG,OAAO,CAAC,WAAW;AACpC,QAAA,IAAI,QAAQ,GAAG,OAAO,CAAC,WAAW;AAClC,QAAA,IAAI,MAAM,GAAG,CAAC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;AAE9D,QAAA,IAAI,CAAC,YAAY,GAAG,QAAQ,GAAG,UAAU;;AAGzC,QAAA,IAAI,IAAI,GAAI,IAAI,CAAC,aAA4B,CAAC,aAAa;AAC3D,QAAA,IAAI,WAAW,GAAG,OAAO,CAAC,YAAY;AACtC,QAAA,IAAI,SAAS,GAAG,OAAO,CAAC,YAAY;AACpC,QAAA,IAAI,KAAK,GAAG,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;AAE3D,QAAA,IAAI,CAAC,YAAY,GAAG,SAAS,GAAG,WAAW;AAE3C,QAAA,IAAI,CAAC,qBAAqB,CAAC,MAAK;AAC5B,YAAA,IAAK,IAAI,CAAC,YAAuB,IAAI,CAAC,EAAE;AACpC,gBAAA,IAAI,CAAC,YAAY,CAAC,2BAA2B,EAAE,MAAM,CAAC;AACtD,gBAAA,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;;iBACnC;AACH,gBAAA,IAAI,CAAC,YAAY,CAAC,2BAA2B,EAAE,OAAO,CAAC;AACvD,gBAAA,WAAW,CAAC,IAAI,EAAE,sBAAsB,CAAC;AACzC,gBAAA,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAE,IAAI,CAAC,YAAuB,GAAG,GAAG,EAAE,EAAE,CAAC;gBACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,GAAG,GAAG,SAAS,CAAC,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC;AAC7F,gBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,wBAAwB,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,GAAG,KAAK;;AAGlH,YAAA,IAAK,IAAI,CAAC,YAAuB,IAAI,CAAC,EAAE;AACpC,gBAAA,IAAI,CAAC,YAAY,CAAC,2BAA2B,EAAE,MAAM,CAAC;AACtD,gBAAA,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;;iBACnC;AACH,gBAAA,IAAI,CAAC,YAAY,CAAC,2BAA2B,EAAE,OAAO,CAAC;AACvD,gBAAA,WAAW,CAAC,IAAI,EAAE,sBAAsB,CAAC;AACzC,gBAAA,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAE,IAAI,CAAC,YAAuB,GAAG,GAAG,EAAE,EAAE,CAAC;AACpE,gBAAA,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,GAAG,GAAG,UAAU,CAAC,KAAK,WAAW,GAAG,SAAS,CAAC;gBACpF,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,YAAY,GAAG,wBAAwB,GAAG,KAAK,GAAG,KAAK;;AAEvJ,SAAC,CAAC;AACF,QAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE;;AAG1B,IAAA,QAAQ,CAAC,KAAK,EAAA;QACV,IAAI,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE;YACjD,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU;AAC7C,YAAA,IAAI,CAAC,WAAW,GAAG,YAAY;;aAC5B,IAAI,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE;YACtD,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS;AAC3C,YAAA,IAAI,CAAC,WAAW,GAAG,UAAU;;QAGjC,IAAI,CAAC,OAAO,EAAE;;AAGlB,IAAA,SAAS,CAAC,KAAK,EAAA;AACX,QAAA,IAAI,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE;AACjC,YAAA,QAAQ,KAAK,CAAC,IAAI;gBACd,KAAK,WAAW,EAAE;oBACd,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC;oBACrC,KAAK,CAAC,cAAc,EAAE;oBACtB;;gBAGJ,KAAK,SAAS,EAAE;AACZ,oBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;oBAC1C,KAAK,CAAC,cAAc,EAAE;oBACtB;;AAGJ,gBAAA,KAAK,WAAW;gBAEhB,KAAK,YAAY,EAAE;oBACf,KAAK,CAAC,cAAc,EAAE;oBACtB;;AAGJ,gBAAA;;oBAEI;;;AAEL,aAAA,IAAI,IAAI,CAAC,WAAW,KAAK,YAAY,EAAE;AAC1C,YAAA,QAAQ,KAAK,CAAC,IAAI;gBACd,KAAK,YAAY,EAAE;oBACf,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC;oBACtC,KAAK,CAAC,cAAc,EAAE;oBACtB;;gBAGJ,KAAK,WAAW,EAAE;AACd,oBAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;oBAC3C,KAAK,CAAC,cAAc,EAAE;oBACtB;;AAGJ,gBAAA,KAAK,WAAW;gBAEhB,KAAK,SAAS,EAAE;oBACZ,KAAK,CAAC,cAAc,EAAE;oBACtB;;AAGJ,gBAAA;;oBAEI;;;;IAKhB,OAAO,GAAA;QACH,IAAI,CAAC,UAAU,EAAE;;IAGrB,MAAM,CAAC,GAAG,EAAE,IAAI,EAAA;QACZ,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,IAAI;QAChD,IAAI,CAAC,OAAO,EAAE;;IAGlB,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAA;QACd,IAAI,CAAC,UAAU,EAAE;AACjB,QAAA,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,MAAK;AACzB,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC;SACzB,EAAE,EAAE,CAAC;;IAGV,UAAU,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;AACZ,YAAA,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;;;IAIhC,0BAA0B,GAAA;AACtB,QAAA,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE;AACjC,YAAA,IAAI,CAAC,yBAAyB,GAAG,CAAC,CAAC,KAAI;AACnC,gBAAA,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC/B,aAAC;YACD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC;;AAG/E,QAAA,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE;AAC/B,YAAA,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC,KAAI;AACjC,gBAAA,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAC7B,aAAC;YACD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC;;;IAI/E,4BAA4B,GAAA;AACxB,QAAA,IAAI,IAAI,CAAC,yBAAyB,EAAE;YAChC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC;AAC9E,YAAA,IAAI,CAAC,yBAAyB,GAAG,IAAI;;AAGzC,QAAA,IAAI,IAAI,CAAC,uBAAuB,EAAE;YAC9B,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC;AACrE,YAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI;;;AAI3C,IAAA,eAAe,CAAC,CAAa,EAAA;AACzB,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI;AACzB,QAAA,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,EAAE;AACxC,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK;QAExB,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,4BAA4B,EAAE,MAAM,CAAC;QACnF,QAAQ,CAAE,IAAI,CAAC,aAA4B,CAAC,aAAa,EAAE,uBAAuB,CAAC;QAEnF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,4BAA4B,EAAE,MAAM,CAAC;QACrE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;QACrD,IAAI,CAAC,0BAA0B,EAAE;QACjC,CAAC,CAAC,cAAc,EAAE;;AAGtB,IAAA,eAAe,CAAC,CAAa,EAAA;AACzB,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI;AACzB,QAAA,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,EAAE;AACxC,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK;QAExB,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,4BAA4B,EAAE,OAAO,CAAC;QACpF,QAAQ,CAAE,IAAI,CAAC,aAA4B,CAAC,aAAa,EAAE,uBAAuB,CAAC;QAEnF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,4BAA4B,EAAE,OAAO,CAAC;QACtE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;QAErD,IAAI,CAAC,0BAA0B,EAAE;QACjC,CAAC,CAAC,cAAc,EAAE;;AAGtB,IAAA,mBAAmB,CAAC,CAAa,EAAA;AAC7B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AACpB,YAAA,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;;AACvB,aAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AAC3B,YAAA,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;;aACvB;AACH,YAAA,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAC1B,YAAA,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;;;AAIlC,IAAA,kBAAkB,CAAC,CAAa,EAAA;QAC5B,IAAI,MAAM,GAAG,CAAC,CAAC,KAAK,GAAI,IAAI,CAAC,SAAoB;AACjD,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK;AAExB,QAAA,IAAI,CAAC,qBAAqB,CAAC,MAAK;AAC3B,YAAA,IAAI,CAAC,gBAA+B,CAAC,aAAa,CAAC,UAAU,IAAI,MAAM,GAAI,IAAI,CAAC,YAAuB;AAC5G,SAAC,CAAC;;AAGN,IAAA,kBAAkB,CAAC,CAAa,EAAA;QAC5B,IAAI,MAAM,GAAG,CAAC,CAAC,KAAK,GAAI,IAAI,CAAC,SAAoB;AACjD,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK;AAExB,QAAA,IAAI,CAAC,qBAAqB,CAAC,MAAK;AAC3B,YAAA,IAAI,CAAC,gBAA+B,CAAC,aAAa,CAAC,SAAS,IAAI,MAAM,GAAI,IAAI,CAAC,YAAuB;AAC3G,SAAC,CAAC;;AAEN;;;;AAIG;AACH,IAAA,SAAS,CAAC,SAAiB,EAAA;AACvB,QAAA,IAAI,gBAAgB,GAAI,IAAI,CAAC,gBAA+B,CAAC,aAAa,CAAC,YAAY,GAAI,IAAI,CAAC,gBAA+B,CAAC,aAAa,CAAC,YAAY;QAC1J,SAAS,GAAG,SAAS,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,SAAS,GAAG,CAAC,GAAG,SAAS,GAAG,CAAC;QAC1F,IAAI,CAAC,gBAA+B,CAAC,aAAa,CAAC,SAAS,GAAG,SAAS;;AAG7E,IAAA,OAAO,CAAC,KAAK,EAAA;AACT,QAAA,IAAI,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AAC3D,YAAA,IAAI,CAAC,WAAW,GAAG,YAAY;;AAC5B,aAAA,IAAI,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AAClE,YAAA,IAAI,CAAC,WAAW,GAAG,UAAU;;;IAIrC,MAAM,GAAA;AACF,QAAA,IAAI,IAAI,CAAC,WAAW,KAAK,YAAY,EAAE;AACnC,YAAA,IAAI,CAAC,WAAW,GAAG,UAAU;;;AAIrC,IAAA,iBAAiB,CAAC,CAAQ,EAAA;QACtB,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,4BAA4B,EAAE,OAAO,CAAC;QACpF,WAAW,CAAE,IAAI,CAAC,aAA4B,CAAC,aAAa,EAAE,uBAAuB,CAAC;QACtF,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,4BAA4B,EAAE,OAAO,CAAC;QACpF,WAAW,CAAE,IAAI,CAAC,aAA4B,CAAC,aAAa,EAAE,uBAAuB,CAAC;QACtF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,4BAA4B,EAAE,OAAO,CAAC;QACtE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;QAExD,IAAI,CAAC,4BAA4B,EAAE;AACnC,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK;AAC1B,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK;;AAG9B,IAAA,qBAAqB,CAAC,CAAe,EAAA;QACjC,IAAI,KAAK,GAAG,MAAM,CAAC,qBAAqB,IAAI,IAAI,CAAC,YAAY;QAC7D,KAAK,CAAC,CAAC,CAAC;;IAGZ,eAAe,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,oBAAoB,EAAE;YAC3B,IAAI,CAAC,oBAAoB,EAAE;AAC3B,YAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;;AAGpC,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC5B,IAAI,CAAC,qBAAqB,EAAE;AAC5B,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI;;AAGrC,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;YACzB,IAAI,CAAC,kBAAkB,EAAE;AACzB,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;;AAGlC,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC5B,IAAI,CAAC,qBAAqB,EAAE;AAC5B,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI;;AAGrC,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC5B,IAAI,CAAC,qBAAqB,EAAE;AAC5B,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI;;;IAIzC,WAAW,GAAA;AACP,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,eAAe,EAAE;;;AAG9B;;;AAGG;IACH,OAAO,GAAA;QACH,IAAI,CAAC,OAAO,EAAE;;uGAhbT,WAAW,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,IAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAWA,eAAe,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,cAAA,EAAA,aAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,8BAAA,EAAA,EAAA,EAAA,SAAA,EAjBxB,CAAC,gBAAgB,CAAC,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EA8BZ,aAAa,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,eAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,MAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,eAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,MAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAvEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsCT,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAvCS,YAAY,qMAAE,YAAY,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAgD3B,WAAW,EAAA,UAAA,EAAA,CAAA;kBAnDvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,8CAA8C;AACxD,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;AACrC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCT,IAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE,CAAC,gBAAgB,CAAC;AAC7B,oBAAA,IAAI,EAAE;AACF,wBAAA,SAAS,EAAE,4BAA4B;AACvC,wBAAA,cAAc,EAAE;AACnB;AACJ,iBAAA;8BAOY,UAAU,EAAA,CAAA;sBAAlB;gBAKsC,IAAI,EAAA,CAAA;sBAA1C,KAAK;uBAAC,EAAE,SAAS,EAAE,eAAe,EAAE;gBAEf,gBAAgB,EAAA,CAAA;sBAArC,SAAS;uBAAC,SAAS;gBAED,aAAa,EAAA,CAAA;sBAA/B,SAAS;uBAAC,MAAM;gBAEE,aAAa,EAAA,CAAA;sBAA/B,SAAS;uBAAC,MAAM;gBAKgC,eAAe,EAAA,CAAA;sBAA/D,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,SAAS,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;gBAEf,SAAS,EAAA,CAAA;sBAAxC,eAAe;uBAAC,aAAa;;MAgarB,iBAAiB,CAAA;uGAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAxbjB,WAAW,EAqbG,YAAY,CAAA,EAAA,OAAA,EAAA,CArb1B,WAAW,EAsbG,YAAY,CAAA,EAAA,CAAA;AAE1B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,OAAA,EAAA,CAHhB,WAAW,EAAE,YAAY,EACZ,YAAY,CAAA,EAAA,CAAA;;2FAE1B,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;AACpC,oBAAA,OAAO,EAAE,CAAC,WAAW,EAAE,YAAY;AACtC,iBAAA;;;ACxgBD;;AAEG;;;;"}
|
1
|
+
{"version":3,"file":"primeng-scrollpanel.mjs","sources":["../../src/scrollpanel/style/scrollpanelstyle.ts","../../src/scrollpanel/scrollpanel.ts","../../src/scrollpanel/primeng-scrollpanel.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/scrollpanel';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = /*css*/ `\n ${style}\n\n .p-scrollpanel {\n display: block;\n }\n`;\n\nconst classes = {\n root: 'p-scrollpanel p-component',\n contentContainer: 'p-scrollpanel-content-container',\n content: 'p-scrollpanel-content',\n barX: 'p-scrollpanel-bar p-scrollpanel-bar-x',\n barY: 'p-scrollpanel-bar p-scrollpanel-bar-y'\n};\n\n@Injectable()\nexport class ScrollPanelStyle extends BaseStyle {\n name = 'scrollpanel';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * ScrollPanel is a cross browser, lightweight and themable alternative to native browser scrollbar.\n *\n * [Live Demo](https://www.primeng.org/scrollpanel/)\n *\n * @module scrollpanelstyle\n *\n */\nexport enum ScrollPanelClasses {\n /**\n * Class name of the root element\n */\n root = 'p-scrollpanel',\n /**\n * Class name of the content container element\n */\n contentContainer = 'p-scrollpanel-content-container',\n /**\n * Class name of the content element\n */\n content = 'p-scrollpanel-content',\n /**\n * Class name of the bar x element\n */\n barX = 'p-scrollpanel-bar-x',\n /**\n * Class name of the bar y element\n */\n barY = 'p-scrollpanel-bar-y'\n}\n\nexport interface ScrollPanelStyle extends BaseStyle {}\n","import { CommonModule, isPlatformBrowser } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n inject,\n Input,\n NgModule,\n NgZone,\n numberAttribute,\n OnDestroy,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { addClass, getHeight, removeClass, uuid } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { ScrollPanelStyle } from './style/scrollpanelstyle';\n\n/**\n * ScrollPanel is a cross browser, lightweight and themable alternative to native browser scrollbar.\n * @group Components\n */\n@Component({\n selector: 'p-scroll-panel, p-scrollPanel, p-scrollpanel',\n standalone: true,\n imports: [CommonModule, SharedModule],\n template: `\n <div [class]=\"cx('contentContainer')\" [attr.data-pc-section]=\"'wrapper'\">\n <div #content [class]=\"cx('content')\" [attr.data-pc-section]=\"'content'\" (mouseenter)=\"moveBar()\" (scroll)=\"onScroll($event)\">\n @if (!contentTemplate && !_contentTemplate) {\n <ng-content></ng-content>\n }\n <ng-container *ngTemplateOutlet=\"contentTemplate || _contentTemplate\"></ng-container>\n </div>\n </div>\n <div\n #xBar\n [class]=\"cx('barX')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n [attr.aria-orientation]=\"'horizontal'\"\n [attr.aria-valuenow]=\"lastScrollLeft\"\n [attr.data-pc-section]=\"'barx'\"\n [attr.aria-controls]=\"contentId\"\n (mousedown)=\"onXBarMouseDown($event)\"\n (keydown)=\"onKeyDown($event)\"\n (keyup)=\"onKeyUp()\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur()\"\n ></div>\n <div\n #yBar\n [class]=\"cx('barY')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n [attr.aria-orientation]=\"'vertical'\"\n [attr.aria-valuenow]=\"lastScrollTop\"\n [attr.data-pc-section]=\"'bary'\"\n [attr.aria-controls]=\"contentId\"\n (mousedown)=\"onYBarMouseDown($event)\"\n (keydown)=\"onKeyDown($event)\"\n (keyup)=\"onKeyUp()\"\n (focus)=\"onFocus($event)\"\n ></div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [ScrollPanelStyle],\n host: {\n '[class]': 'cn(cx(\"root\"), styleClass)',\n 'data-pc-name': 'scrollpanel'\n }\n})\nexport class ScrollPanel extends BaseComponent implements AfterViewInit, AfterContentInit, OnDestroy {\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 * Step factor to scroll the content while pressing the arrow keys.\n * @group Props\n */\n @Input({ transform: numberAttribute }) step: number = 5;\n\n @ViewChild('content') contentViewChild: ElementRef | undefined;\n\n @ViewChild('xBar') xBarViewChild: ElementRef | undefined;\n\n @ViewChild('yBar') yBarViewChild: ElementRef | undefined;\n /**\n * Defines template option for content.\n * @group Templates\n */\n @ContentChild('content', { descendants: false }) contentTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n _contentTemplate: TemplateRef<any> | undefined;\n\n scrollYRatio: number | undefined;\n\n scrollXRatio: number | undefined;\n\n timeoutFrame: any = (fn: VoidFunction) => setTimeout(fn, 0);\n\n initialized: boolean = false;\n\n lastPageY: number | undefined;\n\n lastPageX: number | undefined;\n\n isXBarClicked: boolean = false;\n\n isYBarClicked: boolean = false;\n\n lastScrollLeft: number = 0;\n\n lastScrollTop: number = 0;\n\n orientation: string = 'vertical';\n\n timer: any;\n\n contentId: string | undefined;\n\n windowResizeListener: VoidFunction | null | undefined;\n\n contentScrollListener: VoidFunction | null | undefined;\n\n mouseEnterListener: VoidFunction | null | undefined;\n\n xBarMouseDownListener: VoidFunction | null | undefined;\n\n yBarMouseDownListener: VoidFunction | null | undefined;\n\n documentMouseMoveListener: Nullable<(event?: any) => void>;\n\n documentMouseUpListener: Nullable<(event?: any) => void>;\n\n _componentStyle = inject(ScrollPanelStyle);\n\n zone: NgZone = inject(NgZone);\n\n ngOnInit() {\n super.ngOnInit();\n this.contentId = uuid('pn_id_') + '_content';\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n this.moveBar();\n this.moveBar = this.moveBar.bind(this);\n this.onXBarMouseDown = this.onXBarMouseDown.bind(this);\n this.onYBarMouseDown = this.onYBarMouseDown.bind(this);\n this.onDocumentMouseMove = this.onDocumentMouseMove.bind(this);\n this.onDocumentMouseUp = this.onDocumentMouseUp.bind(this);\n\n this.windowResizeListener = this.renderer.listen(window, 'resize', this.moveBar);\n this.contentScrollListener = this.renderer.listen((this.contentViewChild as ElementRef).nativeElement, 'scroll', this.moveBar);\n this.mouseEnterListener = this.renderer.listen((this.contentViewChild as ElementRef).nativeElement, 'mouseenter', this.moveBar);\n this.xBarMouseDownListener = this.renderer.listen((this.xBarViewChild as ElementRef).nativeElement, 'mousedown', this.onXBarMouseDown);\n this.yBarMouseDownListener = this.renderer.listen((this.yBarViewChild as ElementRef).nativeElement, 'mousedown', this.onYBarMouseDown);\n this.calculateContainerHeight();\n\n this.initialized = true;\n });\n }\n }\n\n ngAfterContentInit() {\n (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this._contentTemplate = item.template;\n break;\n\n default:\n this._contentTemplate = item.template;\n break;\n }\n });\n }\n\n calculateContainerHeight() {\n let container = (this.el as ElementRef).nativeElement;\n let content = (this.contentViewChild as ElementRef).nativeElement;\n let xBar = (this.xBarViewChild as ElementRef).nativeElement;\n const window = this.document.defaultView as Window;\n\n let containerStyles: { [klass: string]: any } = window.getComputedStyle(container),\n xBarStyles = window.getComputedStyle(xBar),\n pureContainerHeight = getHeight(container) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] != 'none' && pureContainerHeight == 0) {\n if (content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n container.style.height = containerStyles['max-height'];\n } else {\n container.style.height = content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n }\n\n moveBar() {\n let container = (this.el as ElementRef).nativeElement;\n let content = (this.contentViewChild as ElementRef).nativeElement;\n\n /* horizontal scroll */\n let xBar = (this.xBarViewChild as ElementRef).nativeElement;\n let totalWidth = content.scrollWidth;\n let ownWidth = content.clientWidth;\n let bottom = (container.clientHeight - xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let yBar = (this.yBarViewChild as ElementRef).nativeElement;\n let totalHeight = content.scrollHeight;\n let ownHeight = content.clientHeight;\n let right = (container.clientWidth - yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.requestAnimationFrame(() => {\n if ((this.scrollXRatio as number) >= 1) {\n xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n addClass(xBar, 'p-scrollpanel-hidden');\n } else {\n xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n removeClass(xBar, 'p-scrollpanel-hidden');\n const xBarWidth = Math.max((this.scrollXRatio as number) * 100, 10);\n const xBarLeft = Math.abs((content.scrollLeft * (100 - xBarWidth)) / (totalWidth - ownWidth));\n xBar.style.cssText = 'width:' + xBarWidth + '%; inset-inline-start:' + xBarLeft + '%;bottom:' + bottom + 'px;';\n }\n\n if ((this.scrollYRatio as number) >= 1) {\n yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n addClass(yBar, 'p-scrollpanel-hidden');\n } else {\n yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n removeClass(yBar, 'p-scrollpanel-hidden');\n const yBarHeight = Math.max((this.scrollYRatio as number) * 100, 10);\n const yBarTop = (content.scrollTop * (100 - yBarHeight)) / (totalHeight - ownHeight);\n yBar.style.cssText = 'height:' + yBarHeight + '%; top: calc(' + yBarTop + '% - ' + xBar.clientHeight + 'px); inset-inline-end:' + right + 'px;';\n }\n });\n this.cd.markForCheck();\n }\n\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n }\n\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n }\n\n onKeyUp() {\n this.clearTimer();\n }\n\n repeat(bar, step) {\n this.contentViewChild.nativeElement[bar] += step;\n this.moveBar();\n }\n\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n }\n\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n }\n\n bindDocumentMouseListeners(): void {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n this.document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n this.document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n }\n\n unbindDocumentMouseListeners(): void {\n if (this.documentMouseMoveListener) {\n this.document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n }\n\n onYBarMouseDown(e: MouseEvent) {\n this.isYBarClicked = true;\n this.yBarViewChild.nativeElement.focus();\n this.lastPageY = e.pageY;\n\n this.yBarViewChild.nativeElement.setAttribute('data-p-scrollpanel-grabbed', 'true');\n addClass((this.yBarViewChild as ElementRef).nativeElement, 'p-scrollpanel-grabbed');\n\n this.document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n addClass(this.document.body, 'p-scrollpanel-grabbed');\n this.bindDocumentMouseListeners();\n e.preventDefault();\n }\n\n onXBarMouseDown(e: MouseEvent) {\n this.isXBarClicked = true;\n this.xBarViewChild.nativeElement.focus();\n this.lastPageX = e.pageX;\n\n this.xBarViewChild.nativeElement.setAttribute('data-p-scrollpanel-grabbed', 'false');\n addClass((this.xBarViewChild as ElementRef).nativeElement, 'p-scrollpanel-grabbed');\n\n this.document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n addClass(this.document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n }\n\n onDocumentMouseMove(e: MouseEvent) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n }\n\n onMouseMoveForXBar(e: MouseEvent) {\n let deltaX = e.pageX - (this.lastPageX as number);\n this.lastPageX = e.pageX;\n\n this.requestAnimationFrame(() => {\n (this.contentViewChild as ElementRef).nativeElement.scrollLeft += deltaX / (this.scrollXRatio as number);\n });\n }\n\n onMouseMoveForYBar(e: MouseEvent) {\n let deltaY = e.pageY - (this.lastPageY as number);\n this.lastPageY = e.pageY;\n\n this.requestAnimationFrame(() => {\n (this.contentViewChild as ElementRef).nativeElement.scrollTop += deltaY / (this.scrollYRatio as number);\n });\n }\n /**\n * Scrolls the top location to the given value.\n * @param scrollTop\n * @group Method\n */\n scrollTop(scrollTop: number) {\n let scrollableHeight = (this.contentViewChild as ElementRef).nativeElement.scrollHeight - (this.contentViewChild as ElementRef).nativeElement.clientHeight;\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n (this.contentViewChild as ElementRef).nativeElement.scrollTop = scrollTop;\n }\n\n onFocus(event) {\n if (this.xBarViewChild.nativeElement.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.yBarViewChild.nativeElement.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n }\n\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n }\n\n onDocumentMouseUp(e: Event) {\n this.yBarViewChild.nativeElement.setAttribute('data-p-scrollpanel-grabbed', 'false');\n removeClass((this.yBarViewChild as ElementRef).nativeElement, 'p-scrollpanel-grabbed');\n this.xBarViewChild.nativeElement.setAttribute('data-p-scrollpanel-grabbed', 'false');\n removeClass((this.xBarViewChild as ElementRef).nativeElement, 'p-scrollpanel-grabbed');\n this.document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n removeClass(this.document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n }\n\n requestAnimationFrame(f: VoidFunction) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n frame(f);\n }\n\n unbindListeners() {\n if (this.windowResizeListener) {\n this.windowResizeListener();\n this.windowResizeListener = null;\n }\n\n if (this.contentScrollListener) {\n this.contentScrollListener();\n this.contentScrollListener = null;\n }\n\n if (this.mouseEnterListener) {\n this.mouseEnterListener();\n this.mouseEnterListener = null;\n }\n\n if (this.xBarMouseDownListener) {\n this.xBarMouseDownListener();\n this.xBarMouseDownListener = null;\n }\n\n if (this.yBarMouseDownListener) {\n this.yBarMouseDownListener();\n this.yBarMouseDownListener = null;\n }\n }\n\n ngOnDestroy() {\n if (this.initialized) {\n this.unbindListeners();\n }\n }\n /**\n * Refreshes the position and size of the scrollbar.\n * @group Method\n */\n refresh() {\n this.moveBar();\n }\n}\n\n@NgModule({\n imports: [ScrollPanel, SharedModule],\n exports: [ScrollPanel, SharedModule]\n})\nexport class ScrollPanelModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
@@ -20,10 +20,10 @@ class ScrollTopStyle extends BaseStyle {
|
|
20
20
|
name = 'scrolltop';
|
21
21
|
theme = style;
|
22
22
|
classes = classes;
|
23
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0
|
24
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: ScrollTopStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
24
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: ScrollTopStyle });
|
25
25
|
}
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: ScrollTopStyle, decorators: [{
|
27
27
|
type: Injectable
|
28
28
|
}] });
|
29
29
|
/**
|
@@ -205,8 +205,8 @@ class ScrollTop extends BaseComponent {
|
|
205
205
|
}
|
206
206
|
super.ngOnDestroy();
|
207
207
|
}
|
208
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0
|
209
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.0
|
208
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: ScrollTop, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
209
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.1.0", type: ScrollTop, isStandalone: true, selector: "p-scrollTop, p-scrolltop, p-scroll-top", inputs: { styleClass: "styleClass", style: "style", target: "target", threshold: ["threshold", "threshold", numberAttribute], icon: "icon", behavior: "behavior", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", buttonAriaLabel: "buttonAriaLabel", buttonProps: "buttonProps" }, providers: [ScrollTopStyle], queries: [{ propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: `
|
210
210
|
<p-button
|
211
211
|
*ngIf="visible"
|
212
212
|
[@animation]="{
|
@@ -243,7 +243,7 @@ class ScrollTop extends BaseComponent {
|
|
243
243
|
])
|
244
244
|
], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
245
245
|
}
|
246
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0
|
246
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: ScrollTop, decorators: [{
|
247
247
|
type: Component,
|
248
248
|
args: [{
|
249
249
|
selector: 'p-scrollTop, p-scrolltop, p-scroll-top',
|
@@ -319,11 +319,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
319
319
|
args: [PrimeTemplate]
|
320
320
|
}] } });
|
321
321
|
class ScrollTopModule {
|
322
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0
|
323
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0
|
324
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0
|
322
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: ScrollTopModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
323
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.0", ngImport: i0, type: ScrollTopModule, imports: [ScrollTop, SharedModule], exports: [ScrollTop, SharedModule] });
|
324
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: ScrollTopModule, imports: [ScrollTop, SharedModule, SharedModule] });
|
325
325
|
}
|
326
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0
|
326
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: ScrollTopModule, decorators: [{
|
327
327
|
type: NgModule,
|
328
328
|
args: [{
|
329
329
|
imports: [ScrollTop, SharedModule],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-scrolltop.mjs","sources":["../../src/scrolltop/style/scrolltopstyle.ts","../../src/scrolltop/scrolltop.ts","../../src/scrolltop/primeng-scrolltop.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/scrolltop';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => ['p-scrolltop', { 'p-scrolltop-sticky': instance.target !== 'window' }],\n icon: 'p-scrolltop-icon'\n};\n\n@Injectable()\nexport class ScrollTopStyle extends BaseStyle {\n name = 'scrolltop';\n\n theme = style;\n\n classes = classes;\n}\n\n/**\n *\n * ScrollTop gets displayed after a certain scroll position and used to navigates to the top of the page quickly.\n *\n * [Live Demo](https://www.primeng.org/scrolltop/)\n *\n * @module scrolltopstyle\n *\n */\nexport enum ScrollTopClasses {\n /**\n * Class name of the root element\n */\n root = 'p-scrolltop',\n /**\n * Class name of the icon element\n */\n icon = 'p-scrolltop-icon'\n}\n\nexport interface ScrollTopStyle extends BaseStyle {}\n","import { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { AfterContentInit, ChangeDetectionStrategy, Component, ContentChild, ContentChildren, inject, Input, NgModule, numberAttribute, OnDestroy, OnInit, QueryList, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { getWindowScrollTop } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Button, ButtonProps } from 'primeng/button';\nimport { ChevronUpIcon } from 'primeng/icons';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { ScrollTopStyle } from './style/scrolltopstyle';\n\n/**\n * ScrollTop gets displayed after a certain scroll position and used to navigates to the top of the page quickly.\n * @group Components\n */\n@Component({\n selector: 'p-scrollTop, p-scrolltop, p-scroll-top',\n standalone: true,\n imports: [CommonModule, ChevronUpIcon, Button, SharedModule],\n template: `\n <p-button\n *ngIf=\"visible\"\n [@animation]=\"{\n value: 'open',\n params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions }\n }\"\n (@animation.start)=\"onEnter($event)\"\n (@animation.done)=\"onLeave($event)\"\n [attr.aria-label]=\"buttonAriaLabel\"\n (click)=\"onClick()\"\n [styleClass]=\"cn(cx('root'), styleClass)\"\n [ngStyle]=\"style\"\n type=\"button\"\n [buttonProps]=\"buttonProps\"\n >\n <ng-template #icon>\n <ng-container *ngIf=\"!iconTemplate && !_iconTemplate\">\n <span *ngIf=\"_icon\" [class]=\"cn(cx('icon'), _icon)\"></span>\n <svg data-p-icon=\"chevron-up\" *ngIf=\"!_icon\" [class]=\"cx('icon')\" />\n </ng-container>\n <ng-template [ngIf]=\"!icon\" *ngTemplateOutlet=\"iconTemplate || _iconTemplate; context: { styleClass: cx('icon') }\"></ng-template>\n </ng-template>\n </p-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n animations: [\n trigger('animation', [\n state(\n 'void',\n style({\n opacity: 0\n })\n ),\n state(\n 'open',\n style({\n opacity: 1\n })\n ),\n transition('void => open', animate('{{showTransitionParams}}')),\n transition('open => void', animate('{{hideTransitionParams}}'))\n ])\n ],\n\n providers: [ScrollTopStyle]\n})\nexport class ScrollTop extends BaseComponent implements OnInit, AfterContentInit, OnDestroy {\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Target of the ScrollTop.\n * @group Props\n */\n @Input() target: 'window' | 'parent' | undefined = 'window';\n /**\n * Defines the threshold value of the vertical scroll position of the target to toggle the visibility.\n * @group Props\n */\n @Input({ transform: numberAttribute }) threshold: number = 400;\n /**\n * Name of the icon or JSX.Element for icon.\n * @group Props\n */\n @Input() get icon(): string | undefined {\n return this._icon;\n }\n /**\n * Defines the scrolling behavior, \"smooth\" adds an animation and \"auto\" scrolls with a jump.\n * @group Props\n */\n @Input() behavior: 'auto' | 'smooth' | undefined = 'smooth';\n /**\n * A string value used to determine the display transition options.\n * @group Props\n */\n @Input() showTransitionOptions: string = '.15s';\n /**\n * A string value used to determine the hiding transition options.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '.15s';\n /**\n * Establishes a string value that labels the scroll-top button.\n * @group Props\n */\n @Input() buttonAriaLabel: string | undefined;\n /**\n * Used to pass all properties of the ButtonProps to the Button component.\n * @group Props\n */\n @Input() buttonProps: ButtonProps = { rounded: true, severity: 'success' };\n /**\n * Template of the icon.\n * @group Templates\n */\n @ContentChild('icon', { descendants: false }) iconTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n _iconTemplate: TemplateRef<any> | undefined;\n\n _icon: string | undefined;\n\n set icon(value: string | undefined) {\n this._icon = value;\n }\n\n documentScrollListener: VoidFunction | null | undefined;\n\n parentScrollListener: VoidFunction | null | undefined;\n\n visible: boolean = false;\n\n overlay: any;\n\n _componentStyle = inject(ScrollTopStyle);\n\n ngOnInit() {\n super.ngOnInit();\n if (this.target === 'window') this.bindDocumentScrollListener();\n else if (this.target === 'parent') this.bindParentScrollListener();\n }\n\n ngAfterContentInit() {\n (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'icon':\n this._iconTemplate = item.template;\n break;\n }\n });\n }\n\n onClick() {\n let scrollElement = this.target === 'window' ? this.document.defaultView : this.el.nativeElement.parentElement;\n scrollElement.scroll({\n top: 0,\n behavior: this.behavior\n });\n }\n\n onEnter(event: AnimationEvent) {\n switch (event.toState) {\n case 'open':\n this.overlay = event.element;\n ZIndexUtils.set('overlay', this.overlay, this.config.zIndex.overlay);\n break;\n case 'void':\n this.overlay = null;\n break;\n }\n }\n\n onLeave(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n\n checkVisibility(scrollY: number) {\n if (scrollY > this.threshold) this.visible = true;\n else this.visible = false;\n\n this.cd.markForCheck();\n }\n\n bindParentScrollListener() {\n if (isPlatformBrowser(this.platformId)) {\n this.parentScrollListener = this.renderer.listen(this.el.nativeElement.parentElement, 'scroll', () => {\n this.checkVisibility(this.el.nativeElement.parentElement.scrollTop);\n });\n }\n }\n\n bindDocumentScrollListener() {\n if (isPlatformBrowser(this.platformId)) {\n this.documentScrollListener = this.renderer.listen(this.document.defaultView, 'scroll', () => {\n this.checkVisibility(getWindowScrollTop());\n });\n }\n }\n\n unbindParentScrollListener() {\n if (this.parentScrollListener) {\n this.parentScrollListener();\n this.parentScrollListener = null;\n }\n }\n\n unbindDocumentScrollListener() {\n if (this.documentScrollListener) {\n this.documentScrollListener();\n this.documentScrollListener = null;\n }\n }\n\n ngOnDestroy() {\n if (this.target === 'window') this.unbindDocumentScrollListener();\n else if (this.target === 'parent') this.unbindParentScrollListener();\n\n if (this.overlay) {\n ZIndexUtils.clear(this.overlay);\n this.overlay = null;\n }\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [ScrollTop, SharedModule],\n exports: [ScrollTop, SharedModule]\n})\nexport class ScrollTopModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["style"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-scrolltop.mjs","sources":["../../src/scrolltop/style/scrolltopstyle.ts","../../src/scrolltop/scrolltop.ts","../../src/scrolltop/primeng-scrolltop.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/scrolltop';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n root: ({ instance }) => ['p-scrolltop', { 'p-scrolltop-sticky': instance.target !== 'window' }],\n icon: 'p-scrolltop-icon'\n};\n\n@Injectable()\nexport class ScrollTopStyle extends BaseStyle {\n name = 'scrolltop';\n\n theme = style;\n\n classes = classes;\n}\n\n/**\n *\n * ScrollTop gets displayed after a certain scroll position and used to navigates to the top of the page quickly.\n *\n * [Live Demo](https://www.primeng.org/scrolltop/)\n *\n * @module scrolltopstyle\n *\n */\nexport enum ScrollTopClasses {\n /**\n * Class name of the root element\n */\n root = 'p-scrolltop',\n /**\n * Class name of the icon element\n */\n icon = 'p-scrolltop-icon'\n}\n\nexport interface ScrollTopStyle extends BaseStyle {}\n","import { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { AfterContentInit, ChangeDetectionStrategy, Component, ContentChild, ContentChildren, inject, Input, NgModule, numberAttribute, OnDestroy, OnInit, QueryList, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { getWindowScrollTop } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Button, ButtonProps } from 'primeng/button';\nimport { ChevronUpIcon } from 'primeng/icons';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { ScrollTopStyle } from './style/scrolltopstyle';\n\n/**\n * ScrollTop gets displayed after a certain scroll position and used to navigates to the top of the page quickly.\n * @group Components\n */\n@Component({\n selector: 'p-scrollTop, p-scrolltop, p-scroll-top',\n standalone: true,\n imports: [CommonModule, ChevronUpIcon, Button, SharedModule],\n template: `\n <p-button\n *ngIf=\"visible\"\n [@animation]=\"{\n value: 'open',\n params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions }\n }\"\n (@animation.start)=\"onEnter($event)\"\n (@animation.done)=\"onLeave($event)\"\n [attr.aria-label]=\"buttonAriaLabel\"\n (click)=\"onClick()\"\n [styleClass]=\"cn(cx('root'), styleClass)\"\n [ngStyle]=\"style\"\n type=\"button\"\n [buttonProps]=\"buttonProps\"\n >\n <ng-template #icon>\n <ng-container *ngIf=\"!iconTemplate && !_iconTemplate\">\n <span *ngIf=\"_icon\" [class]=\"cn(cx('icon'), _icon)\"></span>\n <svg data-p-icon=\"chevron-up\" *ngIf=\"!_icon\" [class]=\"cx('icon')\" />\n </ng-container>\n <ng-template [ngIf]=\"!icon\" *ngTemplateOutlet=\"iconTemplate || _iconTemplate; context: { styleClass: cx('icon') }\"></ng-template>\n </ng-template>\n </p-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n animations: [\n trigger('animation', [\n state(\n 'void',\n style({\n opacity: 0\n })\n ),\n state(\n 'open',\n style({\n opacity: 1\n })\n ),\n transition('void => open', animate('{{showTransitionParams}}')),\n transition('open => void', animate('{{hideTransitionParams}}'))\n ])\n ],\n\n providers: [ScrollTopStyle]\n})\nexport class ScrollTop extends BaseComponent implements OnInit, AfterContentInit, OnDestroy {\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Target of the ScrollTop.\n * @group Props\n */\n @Input() target: 'window' | 'parent' | undefined = 'window';\n /**\n * Defines the threshold value of the vertical scroll position of the target to toggle the visibility.\n * @group Props\n */\n @Input({ transform: numberAttribute }) threshold: number = 400;\n /**\n * Name of the icon or JSX.Element for icon.\n * @group Props\n */\n @Input() get icon(): string | undefined {\n return this._icon;\n }\n /**\n * Defines the scrolling behavior, \"smooth\" adds an animation and \"auto\" scrolls with a jump.\n * @group Props\n */\n @Input() behavior: 'auto' | 'smooth' | undefined = 'smooth';\n /**\n * A string value used to determine the display transition options.\n * @group Props\n */\n @Input() showTransitionOptions: string = '.15s';\n /**\n * A string value used to determine the hiding transition options.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '.15s';\n /**\n * Establishes a string value that labels the scroll-top button.\n * @group Props\n */\n @Input() buttonAriaLabel: string | undefined;\n /**\n * Used to pass all properties of the ButtonProps to the Button component.\n * @group Props\n */\n @Input() buttonProps: ButtonProps = { rounded: true, severity: 'success' };\n /**\n * Template of the icon.\n * @group Templates\n */\n @ContentChild('icon', { descendants: false }) iconTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n _iconTemplate: TemplateRef<any> | undefined;\n\n _icon: string | undefined;\n\n set icon(value: string | undefined) {\n this._icon = value;\n }\n\n documentScrollListener: VoidFunction | null | undefined;\n\n parentScrollListener: VoidFunction | null | undefined;\n\n visible: boolean = false;\n\n overlay: any;\n\n _componentStyle = inject(ScrollTopStyle);\n\n ngOnInit() {\n super.ngOnInit();\n if (this.target === 'window') this.bindDocumentScrollListener();\n else if (this.target === 'parent') this.bindParentScrollListener();\n }\n\n ngAfterContentInit() {\n (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'icon':\n this._iconTemplate = item.template;\n break;\n }\n });\n }\n\n onClick() {\n let scrollElement = this.target === 'window' ? this.document.defaultView : this.el.nativeElement.parentElement;\n scrollElement.scroll({\n top: 0,\n behavior: this.behavior\n });\n }\n\n onEnter(event: AnimationEvent) {\n switch (event.toState) {\n case 'open':\n this.overlay = event.element;\n ZIndexUtils.set('overlay', this.overlay, this.config.zIndex.overlay);\n break;\n case 'void':\n this.overlay = null;\n break;\n }\n }\n\n onLeave(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n\n checkVisibility(scrollY: number) {\n if (scrollY > this.threshold) this.visible = true;\n else this.visible = false;\n\n this.cd.markForCheck();\n }\n\n bindParentScrollListener() {\n if (isPlatformBrowser(this.platformId)) {\n this.parentScrollListener = this.renderer.listen(this.el.nativeElement.parentElement, 'scroll', () => {\n this.checkVisibility(this.el.nativeElement.parentElement.scrollTop);\n });\n }\n }\n\n bindDocumentScrollListener() {\n if (isPlatformBrowser(this.platformId)) {\n this.documentScrollListener = this.renderer.listen(this.document.defaultView, 'scroll', () => {\n this.checkVisibility(getWindowScrollTop());\n });\n }\n }\n\n unbindParentScrollListener() {\n if (this.parentScrollListener) {\n this.parentScrollListener();\n this.parentScrollListener = null;\n }\n }\n\n unbindDocumentScrollListener() {\n if (this.documentScrollListener) {\n this.documentScrollListener();\n this.documentScrollListener = null;\n }\n }\n\n ngOnDestroy() {\n if (this.target === 'window') this.unbindDocumentScrollListener();\n else if (this.target === 'parent') this.unbindParentScrollListener();\n\n if (this.overlay) {\n ZIndexUtils.clear(this.overlay);\n this.overlay = null;\n }\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [ScrollTop, SharedModule],\n exports: [ScrollTop, SharedModule]\n})\nexport class ScrollTopModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["style"],"mappings":";;;;;;;;;;;;;;AAIA,MAAM,OAAO,GAAG;IACZ,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,EAAE,oBAAoB,EAAE,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;AAC/F,IAAA,IAAI,EAAE;CACT;AAGK,MAAO,cAAe,SAAQ,SAAS,CAAA;IACzC,IAAI,GAAG,WAAW;IAElB,KAAK,GAAG,KAAK;IAEb,OAAO,GAAG,OAAO;uGALR,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;2GAAd,cAAc,EAAA,CAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B;;AASD;;;;;;;;AAQG;IACS;AAAZ,CAAA,UAAY,gBAAgB,EAAA;AACxB;;AAEG;AACH,IAAA,gBAAA,CAAA,MAAA,CAAA,GAAA,aAAoB;AACpB;;AAEG;AACH,IAAA,gBAAA,CAAA,MAAA,CAAA,GAAA,kBAAyB;AAC7B,CAAC,EATW,gBAAgB,KAAhB,gBAAgB,GAAA,EAAA,CAAA,CAAA;;AChB5B;;;AAGG;AAqDG,MAAO,SAAU,SAAQ,aAAa,CAAA;AACxC;;;AAGG;AACM,IAAA,UAAU;AACnB;;;AAGG;AACM,IAAA,KAAK;AACd;;;AAGG;IACM,MAAM,GAAoC,QAAQ;AAC3D;;;AAGG;IACoC,SAAS,GAAW,GAAG;AAC9D;;;AAGG;AACH,IAAA,IAAa,IAAI,GAAA;QACb,OAAO,IAAI,CAAC,KAAK;IACrB;AACA;;;AAGG;IACM,QAAQ,GAAkC,QAAQ;AAC3D;;;AAGG;IACM,qBAAqB,GAAW,MAAM;AAC/C;;;AAGG;IACM,qBAAqB,GAAW,MAAM;AAC/C;;;AAGG;AACM,IAAA,eAAe;AACxB;;;AAGG;IACM,WAAW,GAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE;AAC1E;;;AAGG;AAC2C,IAAA,YAAY;AAE1B,IAAA,SAAS;AAEzC,IAAA,aAAa;AAEb,IAAA,KAAK;IAEL,IAAI,IAAI,CAAC,KAAyB,EAAA;AAC9B,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;IACtB;AAEA,IAAA,sBAAsB;AAEtB,IAAA,oBAAoB;IAEpB,OAAO,GAAY,KAAK;AAExB,IAAA,OAAO;AAEP,IAAA,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC;IAExC,QAAQ,GAAA;QACJ,KAAK,CAAC,QAAQ,EAAE;AAChB,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ;YAAE,IAAI,CAAC,0BAA0B,EAAE;AAC1D,aAAA,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ;YAAE,IAAI,CAAC,wBAAwB,EAAE;IACtE;IAEA,kBAAkB,GAAA;QACb,IAAI,CAAC,SAAsC,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC1D,YAAA,QAAQ,IAAI,CAAC,OAAO,EAAE;AAClB,gBAAA,KAAK,MAAM;AACP,oBAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ;oBAClC;;AAEZ,QAAA,CAAC,CAAC;IACN;IAEA,OAAO,GAAA;QACH,IAAI,aAAa,GAAG,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa;QAC9G,aAAa,CAAC,MAAM,CAAC;AACjB,YAAA,GAAG,EAAE,CAAC;YACN,QAAQ,EAAE,IAAI,CAAC;AAClB,SAAA,CAAC;IACN;AAEA,IAAA,OAAO,CAAC,KAAqB,EAAA;AACzB,QAAA,QAAQ,KAAK,CAAC,OAAO;AACjB,YAAA,KAAK,MAAM;AACP,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO;AAC5B,gBAAA,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;gBACpE;AACJ,YAAA,KAAK,MAAM;AACP,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI;gBACnB;;IAEZ;AAEA,IAAA,OAAO,CAAC,KAAqB,EAAA;AACzB,QAAA,QAAQ,KAAK,CAAC,OAAO;AACjB,YAAA,KAAK,MAAM;AACP,gBAAA,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;gBAChC;;IAEZ;AAEA,IAAA,eAAe,CAAC,OAAe,EAAA;AAC3B,QAAA,IAAI,OAAO,GAAG,IAAI,CAAC,SAAS;AAAE,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI;;AAC5C,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AAEzB,QAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE;IAC1B;IAEA,wBAAwB,GAAA;AACpB,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACpC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,QAAQ,EAAE,MAAK;AACjG,gBAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,SAAS,CAAC;AACvE,YAAA,CAAC,CAAC;QACN;IACJ;IAEA,0BAA0B,GAAA;AACtB,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;AACpC,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAK;AACzF,gBAAA,IAAI,CAAC,eAAe,CAAC,kBAAkB,EAAE,CAAC;AAC9C,YAAA,CAAC,CAAC;QACN;IACJ;IAEA,0BAA0B,GAAA;AACtB,QAAA,IAAI,IAAI,CAAC,oBAAoB,EAAE;YAC3B,IAAI,CAAC,oBAAoB,EAAE;AAC3B,YAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;QACpC;IACJ;IAEA,4BAA4B,GAAA;AACxB,QAAA,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,IAAI,CAAC,sBAAsB,EAAE;AAC7B,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI;QACtC;IACJ;IAEA,WAAW,GAAA;AACP,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ;YAAE,IAAI,CAAC,4BAA4B,EAAE;AAC5D,aAAA,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ;YAAE,IAAI,CAAC,0BAA0B,EAAE;AAEpE,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;AAC/B,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI;QACvB;QACA,KAAK,CAAC,WAAW,EAAE;IACvB;uGAzKS,SAAS,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAT,SAAS,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wCAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAoBE,eAAe,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,SAAA,EAtBxB,CAAC,cAAc,CAAC,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EA6DV,aAAa,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA3GpB;;;;;;;;;;;;;;;;;;;;;;;;AAwBT,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAzBS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,yEAAE,MAAM,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,EAAA,MAAA,EAAA,OAAA,EAAA,OAAA,EAAA,UAAA,EAAA,SAAA,EAAA,aAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,SAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,YAAY,EAAA,CAAA,EAAA,UAAA,EA4B/C;YACR,OAAO,CAAC,WAAW,EAAE;AACjB,gBAAA,KAAK,CACD,MAAM,EACNA,OAAK,CAAC;AACF,oBAAA,OAAO,EAAE;AACZ,iBAAA,CAAC,CACL;AACD,gBAAA,KAAK,CACD,MAAM,EACNA,OAAK,CAAC;AACF,oBAAA,OAAO,EAAE;AACZ,iBAAA,CAAC,CACL;AACD,gBAAA,UAAU,CAAC,cAAc,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC;AAC/D,gBAAA,UAAU,CAAC,cAAc,EAAE,OAAO,CAAC,0BAA0B,CAAC;aACjE;AACJ,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAIQ,SAAS,EAAA,UAAA,EAAA,CAAA;kBApDrB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,wCAAwC;AAClD,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC;AAC5D,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;AAwBT,IAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,UAAU,EAAE;wBACR,OAAO,CAAC,WAAW,EAAE;AACjB,4BAAA,KAAK,CACD,MAAM,EACNA,OAAK,CAAC;AACF,gCAAA,OAAO,EAAE;AACZ,6BAAA,CAAC,CACL;AACD,4BAAA,KAAK,CACD,MAAM,EACNA,OAAK,CAAC;AACF,gCAAA,OAAO,EAAE;AACZ,6BAAA,CAAC,CACL;AACD,4BAAA,UAAU,CAAC,cAAc,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC;AAC/D,4BAAA,UAAU,CAAC,cAAc,EAAE,OAAO,CAAC,0BAA0B,CAAC;yBACjE;AACJ,qBAAA;oBAED,SAAS,EAAE,CAAC,cAAc;AAC7B,iBAAA;8BAMY,UAAU,EAAA,CAAA;sBAAlB;gBAKQ,KAAK,EAAA,CAAA;sBAAb;gBAKQ,MAAM,EAAA,CAAA;sBAAd;gBAKsC,SAAS,EAAA,CAAA;sBAA/C,KAAK;uBAAC,EAAE,SAAS,EAAE,eAAe,EAAE;gBAKxB,IAAI,EAAA,CAAA;sBAAhB;gBAOQ,QAAQ,EAAA,CAAA;sBAAhB;gBAKQ,qBAAqB,EAAA,CAAA;sBAA7B;gBAKQ,qBAAqB,EAAA,CAAA;sBAA7B;gBAKQ,eAAe,EAAA,CAAA;sBAAvB;gBAKQ,WAAW,EAAA,CAAA;sBAAnB;gBAK6C,YAAY,EAAA,CAAA;sBAAzD,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,MAAM,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;gBAEZ,SAAS,EAAA,CAAA;sBAAxC,eAAe;uBAAC,aAAa;;MAqHrB,eAAe,CAAA;uGAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YAhLf,SAAS,EA6KG,YAAY,CAAA,EAAA,OAAA,EAAA,CA7KxB,SAAS,EA8KG,YAAY,CAAA,EAAA,CAAA;AAExB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAAA,OAAA,EAAA,CAHd,SAAS,EAAE,YAAY,EACZ,YAAY,CAAA,EAAA,CAAA;;2FAExB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC;AAClC,oBAAA,OAAO,EAAE,CAAC,SAAS,EAAE,YAAY;AACpC,iBAAA;;;AClPD;;AAEG;;;;"}
|