primeng 18.0.0 → 18.0.2-patch.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/accordion.d.ts +7 -7
- package/autocomplete/autocomplete.d.ts +21 -8
- package/badge/badge.d.ts +1 -3
- package/basecomponent/basecomponent.d.ts +2 -5
- package/blockui/blockui.d.ts +10 -5
- package/breadcrumb/breadcrumb.d.ts +9 -6
- package/button/button.d.ts +10 -4
- package/calendar/calendar.d.ts +29 -15
- package/card/card.d.ts +12 -5
- package/carousel/carousel.d.ts +10 -4
- package/cascadeselect/cascadeselect.d.ts +18 -8
- package/checkbox/checkbox.d.ts +8 -4
- package/chip/chip.d.ts +9 -7
- package/chips/chips.d.ts +237 -0
- package/chips/chips.interface.d.ts +66 -0
- package/chips/index.d.ts +5 -0
- package/chips/public_api.d.ts +2 -0
- package/chips/style/chipsstyle.d.ts +69 -0
- package/confirmdialog/confirmdialog.d.ts +14 -5
- package/confirmpopup/confirmpopup.d.ts +11 -5
- package/contextmenu/contextmenu.d.ts +10 -6
- package/datepicker/datepicker.d.ts +113 -33
- package/dialog/dialog.d.ts +15 -4
- package/divider/divider.d.ts +1 -1
- package/dock/dock.d.ts +7 -4
- package/drawer/drawer.d.ts +18 -10
- package/dropdown/dropdown.d.ts +4 -3
- package/dynamicdialog/dynamicdialog.d.ts +1 -0
- package/editor/editor.d.ts +7 -3
- package/esm2022/accordion/accordion.mjs +58 -43
- package/esm2022/autocomplete/autocomplete.mjs +153 -92
- package/esm2022/badge/badge.mjs +39 -32
- package/esm2022/basecomponent/basecomponent.mjs +3 -26
- package/esm2022/blockui/blockui.mjs +38 -18
- package/esm2022/breadcrumb/breadcrumb.mjs +50 -32
- package/esm2022/button/button.mjs +55 -28
- package/esm2022/calendar/calendar.mjs +207 -143
- package/esm2022/card/card.mjs +96 -46
- package/esm2022/carousel/carousel.mjs +74 -42
- package/esm2022/cascadeselect/cascadeselect.mjs +100 -62
- package/esm2022/checkbox/checkbox.mjs +32 -14
- package/esm2022/chip/chip.mjs +117 -96
- package/esm2022/chips/chips.interface.mjs +2 -0
- package/esm2022/chips/chips.mjs +827 -0
- package/esm2022/chips/primeng-chips.mjs +5 -0
- package/esm2022/chips/public_api.mjs +3 -0
- package/esm2022/chips/style/chipsstyle.mjs +175 -0
- package/esm2022/confirmdialog/confirmdialog.mjs +96 -57
- package/esm2022/confirmpopup/confirmpopup.mjs +57 -29
- package/esm2022/contextmenu/contextmenu.mjs +51 -20
- package/esm2022/datepicker/datepicker.mjs +198 -156
- package/esm2022/dialog/dialog.mjs +98 -52
- package/esm2022/divider/divider.mjs +2 -4
- package/esm2022/dock/dock.mjs +31 -13
- package/esm2022/drawer/drawer.mjs +112 -70
- package/esm2022/dropdown/dropdown.mjs +13 -5
- package/esm2022/dynamicdialog/dynamicdialog-config.mjs +13 -13
- package/esm2022/dynamicdialog/dynamicdialog.mjs +9 -5
- package/esm2022/editor/editor.mjs +27 -11
- package/esm2022/fieldset/fieldset.mjs +61 -33
- package/esm2022/fileupload/fileupload.mjs +139 -89
- package/esm2022/galleria/galleria.mjs +18 -9
- package/esm2022/image/image.mjs +113 -66
- package/esm2022/imagecompare/imagecompare.mjs +31 -11
- package/esm2022/inplace/inplace.mjs +49 -24
- package/esm2022/inputmask/inputmask.mjs +30 -14
- package/esm2022/inputmask/style/inputmaskstyle.mjs +2 -2
- package/esm2022/inputnumber/inputnumber.mjs +55 -47
- package/esm2022/inputotp/inputotp.mjs +30 -11
- package/esm2022/listbox/listbox.mjs +137 -78
- package/esm2022/megamenu/megamenu.mjs +105 -59
- package/esm2022/menu/menu.mjs +26 -26
- package/esm2022/menubar/menubar.mjs +70 -35
- package/esm2022/message/message.mjs +50 -26
- package/esm2022/messages/messages.mjs +13 -4
- package/esm2022/metergroup/metergroup.mjs +63 -31
- package/esm2022/multiselect/multiselect.mjs +247 -156
- package/esm2022/orderlist/orderlist.mjs +125 -70
- package/esm2022/organizationchart/organizationchart.mjs +30 -14
- package/esm2022/overlay/overlay.mjs +27 -7
- package/esm2022/overlaypanel/overlaypanel.mjs +33 -10
- package/esm2022/paginator/paginator.mjs +92 -60
- package/esm2022/panel/panel.mjs +160 -100
- package/esm2022/panelmenu/panelmenu.mjs +55 -32
- package/esm2022/password/password.mjs +88 -49
- package/esm2022/picklist/picklist.mjs +363 -259
- package/esm2022/popover/popover.mjs +29 -12
- package/esm2022/progressbar/progressbar.mjs +27 -9
- package/esm2022/rating/rating.mjs +46 -22
- package/esm2022/scroller/scroller.mjs +47 -37
- package/esm2022/scrollpanel/scrollpanel.mjs +28 -9
- package/esm2022/scrolltop/scrolltop.mjs +17 -10
- package/esm2022/select/select.mjs +198 -119
- package/esm2022/selectbutton/selectbutton.mjs +26 -11
- package/esm2022/sidebar/sidebar.mjs +82 -60
- package/esm2022/speeddial/speeddial.mjs +54 -29
- package/esm2022/splitbutton/splitbutton.mjs +41 -18
- package/esm2022/splitter/splitter.mjs +5 -5
- package/esm2022/stepper/stepper.mjs +27 -13
- package/esm2022/table/table.mjs +107 -96
- package/esm2022/tabmenu/tabmenu.mjs +54 -27
- package/esm2022/tabs/tablist.mjs +28 -20
- package/esm2022/tabview/tabview.mjs +106 -54
- package/esm2022/tag/tag.mjs +68 -44
- package/esm2022/tieredmenu/tieredmenu.mjs +44 -21
- package/esm2022/timeline/timeline.mjs +41 -17
- package/esm2022/toast/toast.mjs +31 -9
- package/esm2022/togglebutton/togglebutton.mjs +45 -30
- package/esm2022/toggleswitch/toggleswitch.mjs +28 -9
- package/esm2022/toolbar/toolbar.mjs +47 -21
- package/esm2022/tooltip/tooltip.mjs +35 -70
- package/esm2022/tree/tree.mjs +114 -97
- package/esm2022/treeselect/treeselect.mjs +156 -89
- package/esm2022/treetable/treetable.mjs +31 -12
- package/esm2022/usestyle/usestyle.mjs +2 -2
- package/fesm2022/primeng-accordion.mjs +59 -44
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-animateonscroll.mjs +1 -1
- package/fesm2022/primeng-api.mjs +1 -1
- package/fesm2022/primeng-autocomplete.mjs +152 -91
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-avatar.mjs +1 -1
- package/fesm2022/primeng-avatargroup.mjs +1 -1
- package/fesm2022/primeng-badge.mjs +40 -33
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-basecomponent.mjs +2 -25
- package/fesm2022/primeng-basecomponent.mjs.map +1 -1
- package/fesm2022/primeng-blockui.mjs +37 -17
- package/fesm2022/primeng-blockui.mjs.map +1 -1
- package/fesm2022/primeng-breadcrumb.mjs +49 -31
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs +54 -27
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs +1 -1
- package/fesm2022/primeng-calendar.mjs +207 -143
- package/fesm2022/primeng-calendar.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs +95 -45
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-carousel.mjs +73 -41
- package/fesm2022/primeng-carousel.mjs.map +1 -1
- package/fesm2022/primeng-cascadeselect.mjs +99 -61
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-chart.mjs +1 -1
- package/fesm2022/primeng-checkbox.mjs +31 -13
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs +116 -95
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-chips.mjs +1006 -0
- package/fesm2022/primeng-chips.mjs.map +1 -0
- package/fesm2022/primeng-colorpicker.mjs +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +95 -56
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs +57 -29
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +50 -19
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +2 -2
- package/fesm2022/primeng-datepicker.mjs +198 -156
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-defer.mjs +1 -1
- package/fesm2022/primeng-dialog.mjs +97 -51
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +2 -4
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dock.mjs +30 -12
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-dragdrop.mjs +1 -1
- package/fesm2022/primeng-drawer.mjs +111 -69
- package/fesm2022/primeng-drawer.mjs.map +1 -1
- package/fesm2022/primeng-dropdown.mjs +12 -4
- package/fesm2022/primeng-dropdown.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +21 -17
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +26 -10
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs +61 -33
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +138 -88
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs +1 -1
- package/fesm2022/primeng-fluid.mjs +1 -1
- package/fesm2022/primeng-galleria.mjs +17 -8
- package/fesm2022/primeng-galleria.mjs.map +1 -1
- package/fesm2022/primeng-iconfield.mjs +1 -1
- package/fesm2022/primeng-icons-baseicon.mjs +1 -1
- package/fesm2022/primeng-iftalabel.mjs +1 -1
- package/fesm2022/primeng-image.mjs +112 -65
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-imagecompare.mjs +30 -10
- package/fesm2022/primeng-imagecompare.mjs.map +1 -1
- package/fesm2022/primeng-inplace.mjs +48 -23
- package/fesm2022/primeng-inplace.mjs.map +1 -1
- package/fesm2022/primeng-inputgroupaddon.mjs +1 -1
- package/fesm2022/primeng-inputicon.mjs +1 -1
- package/fesm2022/primeng-inputmask.mjs +30 -14
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +54 -46
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs +29 -10
- package/fesm2022/primeng-inputotp.mjs.map +1 -1
- package/fesm2022/primeng-inputswitch.mjs +1 -1
- package/fesm2022/primeng-inputtext.mjs +1 -1
- package/fesm2022/primeng-inputtextarea.mjs +1 -1
- package/fesm2022/primeng-keyfilter.mjs +1 -1
- package/fesm2022/primeng-knob.mjs +1 -1
- package/fesm2022/primeng-listbox.mjs +136 -77
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +104 -58
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +26 -26
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +69 -34
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs +49 -25
- package/fesm2022/primeng-message.mjs.map +1 -1
- package/fesm2022/primeng-messages.mjs +12 -3
- package/fesm2022/primeng-messages.mjs.map +1 -1
- package/fesm2022/primeng-metergroup.mjs +62 -30
- package/fesm2022/primeng-metergroup.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +246 -155
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +124 -69
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs +30 -14
- package/fesm2022/primeng-organizationchart.mjs.map +1 -1
- package/fesm2022/primeng-overlay.mjs +26 -6
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaybadge.mjs +1 -1
- package/fesm2022/primeng-overlaypanel.mjs +33 -10
- package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
- package/fesm2022/primeng-paginator.mjs +91 -59
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +160 -100
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +55 -32
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-password.mjs +87 -48
- package/fesm2022/primeng-password.mjs.map +1 -1
- package/fesm2022/primeng-picklist.mjs +362 -258
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs +29 -12
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +26 -8
- package/fesm2022/primeng-progressbar.mjs.map +1 -1
- package/fesm2022/primeng-progressspinner.mjs +1 -1
- package/fesm2022/primeng-radiobutton.mjs +1 -1
- package/fesm2022/primeng-rating.mjs +45 -21
- package/fesm2022/primeng-rating.mjs.map +1 -1
- package/fesm2022/primeng-scroller.mjs +46 -36
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +27 -8
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs +17 -10
- package/fesm2022/primeng-scrolltop.mjs.map +1 -1
- package/fesm2022/primeng-select.mjs +197 -118
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs +25 -10
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-sidebar.mjs +81 -59
- package/fesm2022/primeng-sidebar.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs +1 -1
- package/fesm2022/primeng-slider.mjs +1 -1
- package/fesm2022/primeng-speeddial.mjs +53 -28
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +40 -17
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs +6 -6
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs +27 -13
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs +1 -1
- package/fesm2022/primeng-styleclass.mjs +1 -1
- package/fesm2022/primeng-table.mjs +107 -96
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabmenu.mjs +53 -26
- package/fesm2022/primeng-tabmenu.mjs.map +1 -1
- package/fesm2022/primeng-tabs.mjs +27 -19
- package/fesm2022/primeng-tabs.mjs.map +1 -1
- package/fesm2022/primeng-tabview.mjs +106 -54
- package/fesm2022/primeng-tabview.mjs.map +1 -1
- package/fesm2022/primeng-tag.mjs +67 -43
- package/fesm2022/primeng-tag.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +1 -1
- package/fesm2022/primeng-textarea.mjs +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +43 -20
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-timeline.mjs +40 -16
- package/fesm2022/primeng-timeline.mjs.map +1 -1
- package/fesm2022/primeng-toast.mjs +31 -9
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs +44 -29
- package/fesm2022/primeng-togglebutton.mjs.map +1 -1
- package/fesm2022/primeng-toggleswitch.mjs +27 -8
- package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
- package/fesm2022/primeng-toolbar.mjs +46 -20
- package/fesm2022/primeng-toolbar.mjs.map +1 -1
- package/fesm2022/primeng-tooltip.mjs +35 -70
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +114 -97
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +155 -88
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +30 -11
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-usestyle.mjs +1 -1
- package/fesm2022/primeng-usestyle.mjs.map +1 -1
- package/fieldset/fieldset.d.ts +12 -6
- package/fileupload/fileupload.d.ts +19 -8
- package/galleria/galleria.d.ts +3 -2
- package/image/image.d.ts +18 -7
- package/imagecompare/imagecompare.d.ts +7 -2
- package/inplace/inplace.d.ts +12 -6
- package/inputmask/inputmask.d.ts +8 -4
- package/inputnumber/inputnumber.d.ts +11 -6
- package/inputotp/inputotp.d.ts +7 -2
- package/listbox/listbox.d.ts +17 -4
- package/megamenu/megamenu.d.ts +16 -7
- package/menu/menu.d.ts +6 -6
- package/menubar/menubar.d.ts +13 -6
- package/message/message.d.ts +10 -4
- package/messages/messages.d.ts +4 -3
- package/metergroup/metergroup.d.ts +11 -3
- package/multiselect/multiselect.d.ts +36 -17
- package/orderlist/orderlist.d.ts +23 -11
- package/organizationchart/organizationchart.d.ts +6 -4
- package/overlay/overlay.d.ts +6 -3
- package/overlaypanel/overlaypanel.d.ts +6 -3
- package/package.json +171 -165
- package/paginator/paginator.d.ts +15 -8
- package/panel/panel.d.ts +14 -5
- package/panelmenu/panelmenu.d.ts +8 -4
- package/password/password.d.ts +15 -7
- package/picklist/picklist.d.ts +23 -3
- package/popover/popover.d.ts +8 -5
- package/progressbar/progressbar.d.ts +7 -3
- package/rating/rating.d.ts +11 -5
- package/scroller/scroller.d.ts +9 -4
- package/scrollpanel/scrollpanel.d.ts +7 -3
- package/scrolltop/scrolltop.d.ts +7 -4
- package/select/select.d.ts +31 -13
- package/selectbutton/selectbutton.d.ts +7 -3
- package/sidebar/sidebar.d.ts +9 -2
- package/speeddial/speeddial.d.ts +9 -4
- package/splitbutton/splitbutton.d.ts +9 -5
- package/splitter/splitter.d.ts +4 -4
- package/stepper/stepper.d.ts +8 -3
- package/table/table.d.ts +2 -2
- package/tabmenu/tabmenu.d.ts +12 -7
- package/tabs/tablist.d.ts +6 -2
- package/tabview/tabview.d.ts +16 -7
- package/tag/tag.d.ts +8 -9
- package/tieredmenu/tieredmenu.d.ts +10 -6
- package/timeline/timeline.d.ts +7 -2
- package/toast/toast.d.ts +7 -3
- package/togglebutton/togglebutton.d.ts +8 -3
- package/toggleswitch/toggleswitch.d.ts +6 -2
- package/toolbar/toolbar.d.ts +9 -4
- package/tooltip/tooltip.d.ts +2 -1
- package/tree/tree.d.ts +23 -10
- package/treeselect/treeselect.d.ts +26 -12
- package/treetable/treetable.d.ts +7 -5
package/esm2022/panel/panel.mjs
CHANGED
@@ -1,12 +1,11 @@
|
|
1
1
|
import { animate, state, style, transition, trigger } from '@angular/animations';
|
2
2
|
import { CommonModule } from '@angular/common';
|
3
|
-
import { booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, EventEmitter, inject, Input, NgModule, Output, ViewEncapsulation } from '@angular/core';
|
3
|
+
import { ViewChild, booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, ContentChildren, EventEmitter, inject, Input, NgModule, Output, ViewEncapsulation } from '@angular/core';
|
4
4
|
import { uuid } from '@primeuix/utils';
|
5
|
-
import { Footer, SharedModule } from 'primeng/api';
|
5
|
+
import { Footer, PrimeTemplate, SharedModule } from 'primeng/api';
|
6
6
|
import { BaseComponent } from 'primeng/basecomponent';
|
7
7
|
import { ButtonModule } from 'primeng/button';
|
8
8
|
import { MinusIcon, PlusIcon } from 'primeng/icons';
|
9
|
-
import { Ripple } from 'primeng/ripple';
|
10
9
|
import { PanelStyle } from './style/panelstyle';
|
11
10
|
import * as i0 from "@angular/core";
|
12
11
|
import * as i1 from "@angular/common";
|
@@ -16,24 +15,25 @@ const _c1 = ["icon"];
|
|
16
15
|
const _c2 = ["content"];
|
17
16
|
const _c3 = ["footer"];
|
18
17
|
const _c4 = ["headericons"];
|
19
|
-
const _c5 = ["
|
20
|
-
const _c6 = ["*", "p-header", "p-footer"];
|
21
|
-
const _c7 =
|
22
|
-
const _c8 = a0 => ({
|
23
|
-
const _c9 = a0 => ({
|
24
|
-
const _c10 = a0 => ({
|
25
|
-
const _c11 = a0 => ({
|
26
|
-
const _c12 =
|
27
|
-
const _c13 = a0 => ({
|
18
|
+
const _c5 = ["contentWrapper"];
|
19
|
+
const _c6 = ["*", [["p-header"]], [["p-footer"]]];
|
20
|
+
const _c7 = ["*", "p-header", "p-footer"];
|
21
|
+
const _c8 = (a0, a1) => ({ "p-panel p-component": true, "p-panel-toggleable": a0, "p-panel-expanded": a1 });
|
22
|
+
const _c9 = a0 => ({ transitionParams: a0, height: "0", opacity: "0" });
|
23
|
+
const _c10 = a0 => ({ value: "hidden", params: a0 });
|
24
|
+
const _c11 = a0 => ({ transitionParams: a0, height: "*", opacity: "1" });
|
25
|
+
const _c12 = a0 => ({ value: "visible", params: a0 });
|
26
|
+
const _c13 = (a0, a1, a2) => ({ "p-panel-icons-start": a0, "p-panel-icons-end": a1, "p-panel-icons-center": a2 });
|
27
|
+
const _c14 = a0 => ({ $implicit: a0 });
|
28
28
|
function Panel_div_1_span_1_Template(rf, ctx) { if (rf & 1) {
|
29
|
-
i0.ɵɵelementStart(0, "span",
|
29
|
+
i0.ɵɵelementStart(0, "span", 11);
|
30
30
|
i0.ɵɵtext(1);
|
31
31
|
i0.ɵɵelementEnd();
|
32
32
|
} if (rf & 2) {
|
33
|
-
const
|
34
|
-
i0.ɵɵattribute("id",
|
33
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
34
|
+
i0.ɵɵattribute("id", ctx_r2.id + "_header");
|
35
35
|
i0.ɵɵadvance();
|
36
|
-
i0.ɵɵtextInterpolate(
|
36
|
+
i0.ɵɵtextInterpolate(ctx_r2._header);
|
37
37
|
} }
|
38
38
|
function Panel_div_1_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
39
39
|
i0.ɵɵelementContainer(0);
|
@@ -45,112 +45,112 @@ function Panel_div_1_5_Template(rf, ctx) { if (rf & 1) {
|
|
45
45
|
function Panel_div_1_p_button_6_ng_container_1_ng_container_1_span_1_Template(rf, ctx) { if (rf & 1) {
|
46
46
|
i0.ɵɵelement(0, "span");
|
47
47
|
} if (rf & 2) {
|
48
|
-
const
|
49
|
-
i0.ɵɵclassMap(
|
48
|
+
const ctx_r2 = i0.ɵɵnextContext(5);
|
49
|
+
i0.ɵɵclassMap(ctx_r2.expandIcon);
|
50
50
|
} }
|
51
51
|
function Panel_div_1_p_button_6_ng_container_1_ng_container_1_MinusIcon_2_Template(rf, ctx) { if (rf & 1) {
|
52
52
|
i0.ɵɵelement(0, "MinusIcon");
|
53
53
|
} }
|
54
54
|
function Panel_div_1_p_button_6_ng_container_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
55
55
|
i0.ɵɵelementContainerStart(0);
|
56
|
-
i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_1_span_1_Template, 1, 2, "span",
|
56
|
+
i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_1_span_1_Template, 1, 2, "span", 15)(2, Panel_div_1_p_button_6_ng_container_1_ng_container_1_MinusIcon_2_Template, 1, 0, "MinusIcon", 13);
|
57
57
|
i0.ɵɵelementContainerEnd();
|
58
58
|
} if (rf & 2) {
|
59
|
-
const
|
59
|
+
const ctx_r2 = i0.ɵɵnextContext(4);
|
60
60
|
i0.ɵɵadvance();
|
61
|
-
i0.ɵɵproperty("ngIf",
|
61
|
+
i0.ɵɵproperty("ngIf", ctx_r2.expandIcon);
|
62
62
|
i0.ɵɵadvance();
|
63
|
-
i0.ɵɵproperty("ngIf", !
|
63
|
+
i0.ɵɵproperty("ngIf", !ctx_r2.expandIcon);
|
64
64
|
} }
|
65
65
|
function Panel_div_1_p_button_6_ng_container_1_ng_container_2_span_1_Template(rf, ctx) { if (rf & 1) {
|
66
66
|
i0.ɵɵelement(0, "span");
|
67
67
|
} if (rf & 2) {
|
68
|
-
const
|
69
|
-
i0.ɵɵclassMap(
|
68
|
+
const ctx_r2 = i0.ɵɵnextContext(5);
|
69
|
+
i0.ɵɵclassMap(ctx_r2.collapseIcon);
|
70
70
|
} }
|
71
71
|
function Panel_div_1_p_button_6_ng_container_1_ng_container_2_PlusIcon_2_Template(rf, ctx) { if (rf & 1) {
|
72
72
|
i0.ɵɵelement(0, "PlusIcon");
|
73
73
|
} }
|
74
74
|
function Panel_div_1_p_button_6_ng_container_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
75
75
|
i0.ɵɵelementContainerStart(0);
|
76
|
-
i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_2_span_1_Template, 1, 2, "span",
|
76
|
+
i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_2_span_1_Template, 1, 2, "span", 15)(2, Panel_div_1_p_button_6_ng_container_1_ng_container_2_PlusIcon_2_Template, 1, 0, "PlusIcon", 13);
|
77
77
|
i0.ɵɵelementContainerEnd();
|
78
78
|
} if (rf & 2) {
|
79
|
-
const
|
79
|
+
const ctx_r2 = i0.ɵɵnextContext(4);
|
80
80
|
i0.ɵɵadvance();
|
81
|
-
i0.ɵɵproperty("ngIf",
|
81
|
+
i0.ɵɵproperty("ngIf", ctx_r2.collapseIcon);
|
82
82
|
i0.ɵɵadvance();
|
83
|
-
i0.ɵɵproperty("ngIf", !
|
83
|
+
i0.ɵɵproperty("ngIf", !ctx_r2.collapseIcon);
|
84
84
|
} }
|
85
85
|
function Panel_div_1_p_button_6_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
86
86
|
i0.ɵɵelementContainerStart(0);
|
87
|
-
i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_1_Template, 3, 2, "ng-container",
|
87
|
+
i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_1_Template, 3, 2, "ng-container", 13)(2, Panel_div_1_p_button_6_ng_container_1_ng_container_2_Template, 3, 2, "ng-container", 13);
|
88
88
|
i0.ɵɵelementContainerEnd();
|
89
89
|
} if (rf & 2) {
|
90
|
-
const
|
90
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
91
91
|
i0.ɵɵadvance();
|
92
|
-
i0.ɵɵproperty("ngIf", !
|
92
|
+
i0.ɵɵproperty("ngIf", !ctx_r2.collapsed);
|
93
93
|
i0.ɵɵadvance();
|
94
|
-
i0.ɵɵproperty("ngIf",
|
94
|
+
i0.ɵɵproperty("ngIf", ctx_r2.collapsed);
|
95
95
|
} }
|
96
96
|
function Panel_div_1_p_button_6_2_ng_template_0_Template(rf, ctx) { }
|
97
97
|
function Panel_div_1_p_button_6_2_Template(rf, ctx) { if (rf & 1) {
|
98
98
|
i0.ɵɵtemplate(0, Panel_div_1_p_button_6_2_ng_template_0_Template, 0, 0, "ng-template");
|
99
99
|
} }
|
100
100
|
function Panel_div_1_p_button_6_Template(rf, ctx) { if (rf & 1) {
|
101
|
-
const
|
102
|
-
i0.ɵɵelementStart(0, "p-button",
|
103
|
-
i0.ɵɵlistener("click", function Panel_div_1_p_button_6_Template_p_button_click_0_listener($event) { i0.ɵɵrestoreView(
|
104
|
-
i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_Template, 3, 2, "ng-container",
|
101
|
+
const _r4 = i0.ɵɵgetCurrentView();
|
102
|
+
i0.ɵɵelementStart(0, "p-button", 12);
|
103
|
+
i0.ɵɵlistener("click", function Panel_div_1_p_button_6_Template_p_button_click_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onIconClick($event)); })("keydown", function Panel_div_1_p_button_6_Template_p_button_keydown_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onKeyDown($event)); });
|
104
|
+
i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_Template, 3, 2, "ng-container", 13)(2, Panel_div_1_p_button_6_2_Template, 1, 0, null, 14);
|
105
105
|
i0.ɵɵelementEnd();
|
106
106
|
} if (rf & 2) {
|
107
|
-
const
|
108
|
-
i0.ɵɵproperty("text", true)("rounded", true)("buttonProps",
|
109
|
-
i0.ɵɵattribute("id",
|
107
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
108
|
+
i0.ɵɵproperty("text", true)("rounded", true)("buttonProps", ctx_r2.toggleButtonProps);
|
109
|
+
i0.ɵɵattribute("id", ctx_r2.id + "_header")("aria-label", ctx_r2.buttonAriaLabel)("aria-controls", ctx_r2.id + "_content")("aria-expanded", !ctx_r2.collapsed);
|
110
110
|
i0.ɵɵadvance();
|
111
|
-
i0.ɵɵproperty("ngIf", !
|
111
|
+
i0.ɵɵproperty("ngIf", !ctx_r2.headerIconsTemplate && !ctx_r2._headerIconsTemplate && !(ctx_r2.toggleButtonProps == null ? null : ctx_r2.toggleButtonProps.icon));
|
112
112
|
i0.ɵɵadvance();
|
113
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
113
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.headerIconsTemplate || ctx_r2._headerIconsTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(10, _c14, ctx_r2.collapsed));
|
114
114
|
} }
|
115
115
|
function Panel_div_1_Template(rf, ctx) { if (rf & 1) {
|
116
|
-
const
|
117
|
-
i0.ɵɵelementStart(0, "div",
|
118
|
-
i0.ɵɵlistener("click", function Panel_div_1_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(
|
119
|
-
i0.ɵɵtemplate(1, Panel_div_1_span_1_Template, 2, 2, "span",
|
116
|
+
const _r2 = i0.ɵɵgetCurrentView();
|
117
|
+
i0.ɵɵelementStart(0, "div", 7);
|
118
|
+
i0.ɵɵlistener("click", function Panel_div_1_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onHeaderClick($event)); });
|
119
|
+
i0.ɵɵtemplate(1, Panel_div_1_span_1_Template, 2, 2, "span", 8);
|
120
120
|
i0.ɵɵprojection(2, 1);
|
121
|
-
i0.ɵɵtemplate(3, Panel_div_1_ng_container_3_Template, 1, 0, "ng-container",
|
122
|
-
i0.ɵɵelementStart(4, "div",
|
123
|
-
i0.ɵɵtemplate(5, Panel_div_1_5_Template, 1, 0, null,
|
121
|
+
i0.ɵɵtemplate(3, Panel_div_1_ng_container_3_Template, 1, 0, "ng-container", 5);
|
122
|
+
i0.ɵɵelementStart(4, "div", 9);
|
123
|
+
i0.ɵɵtemplate(5, Panel_div_1_5_Template, 1, 0, null, 5)(6, Panel_div_1_p_button_6_Template, 3, 12, "p-button", 10);
|
124
124
|
i0.ɵɵelementEnd()();
|
125
125
|
} if (rf & 2) {
|
126
|
-
const
|
127
|
-
i0.ɵɵattribute("id",
|
126
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
127
|
+
i0.ɵɵattribute("id", ctx_r2.id + "-titlebar");
|
128
128
|
i0.ɵɵadvance();
|
129
|
-
i0.ɵɵproperty("ngIf",
|
129
|
+
i0.ɵɵproperty("ngIf", ctx_r2._header);
|
130
130
|
i0.ɵɵadvance(2);
|
131
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
131
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.headerTemplate || ctx_r2._headerTemplate);
|
132
132
|
i0.ɵɵadvance();
|
133
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction3(6,
|
133
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction3(6, _c13, ctx_r2.iconPos === "start", ctx_r2.iconPos === "end", ctx_r2.iconPos === "center"));
|
134
134
|
i0.ɵɵadvance();
|
135
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
135
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.iconTemplate || ctx_r2._iconTemplate);
|
136
136
|
i0.ɵɵadvance();
|
137
|
-
i0.ɵɵproperty("ngIf",
|
137
|
+
i0.ɵɵproperty("ngIf", ctx_r2.toggleable);
|
138
138
|
} }
|
139
|
-
function
|
139
|
+
function Panel_ng_container_6_Template(rf, ctx) { if (rf & 1) {
|
140
140
|
i0.ɵɵelementContainer(0);
|
141
141
|
} }
|
142
|
-
function
|
142
|
+
function Panel_div_7_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
143
143
|
i0.ɵɵelementContainer(0);
|
144
144
|
} }
|
145
|
-
function
|
146
|
-
i0.ɵɵelementStart(0, "div",
|
145
|
+
function Panel_div_7_Template(rf, ctx) { if (rf & 1) {
|
146
|
+
i0.ɵɵelementStart(0, "div", 16);
|
147
147
|
i0.ɵɵprojection(1, 2);
|
148
|
-
i0.ɵɵtemplate(2,
|
148
|
+
i0.ɵɵtemplate(2, Panel_div_7_ng_container_2_Template, 1, 0, "ng-container", 5);
|
149
149
|
i0.ɵɵelementEnd();
|
150
150
|
} if (rf & 2) {
|
151
|
-
const
|
151
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
152
152
|
i0.ɵɵadvance(2);
|
153
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
153
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.footerTemplate || ctx_r2._footerTemplate);
|
154
154
|
} }
|
155
155
|
/**
|
156
156
|
* Panel is a container with the optional content toggle feature.
|
@@ -282,7 +282,13 @@ export class Panel extends BaseComponent {
|
|
282
282
|
* @see {@link PanelHeaderIconsTemplateContext}
|
283
283
|
* @group Templates
|
284
284
|
*/
|
285
|
-
|
285
|
+
headerIconsTemplate;
|
286
|
+
_headerTemplate;
|
287
|
+
_iconTemplate;
|
288
|
+
_contentTemplate;
|
289
|
+
_footerTemplate;
|
290
|
+
_headerIconsTemplate;
|
291
|
+
contentWrapperViewChild;
|
286
292
|
id = uuid('pn_id_');
|
287
293
|
get buttonAriaLabel() {
|
288
294
|
return this._header;
|
@@ -316,14 +322,29 @@ export class Panel extends BaseComponent {
|
|
316
322
|
expand() {
|
317
323
|
this.collapsed = false;
|
318
324
|
this.collapsedChange.emit(this.collapsed);
|
325
|
+
this.updateTabIndex();
|
319
326
|
}
|
320
327
|
collapse() {
|
321
328
|
this.collapsed = true;
|
322
329
|
this.collapsedChange.emit(this.collapsed);
|
330
|
+
this.updateTabIndex();
|
323
331
|
}
|
324
332
|
getBlockableElement() {
|
325
333
|
return this.el.nativeElement.children[0];
|
326
334
|
}
|
335
|
+
updateTabIndex() {
|
336
|
+
if (this.contentWrapperViewChild) {
|
337
|
+
const focusableElements = this.contentWrapperViewChild.nativeElement.querySelectorAll('input, button, select, a, textarea, [tabindex]:not([tabindex="-1"])');
|
338
|
+
focusableElements.forEach((element) => {
|
339
|
+
if (this.collapsed) {
|
340
|
+
element.setAttribute('tabindex', '-1');
|
341
|
+
}
|
342
|
+
else {
|
343
|
+
element.removeAttribute('tabindex');
|
344
|
+
}
|
345
|
+
});
|
346
|
+
}
|
347
|
+
}
|
327
348
|
onKeyDown(event) {
|
328
349
|
if (event.code === 'Enter' || event.code === 'Space') {
|
329
350
|
this.toggle(event);
|
@@ -334,14 +355,40 @@ export class Panel extends BaseComponent {
|
|
334
355
|
this.animating = false;
|
335
356
|
this.onAfterToggle.emit({ originalEvent: event, collapsed: this.collapsed });
|
336
357
|
}
|
358
|
+
templates;
|
359
|
+
ngAfterContentInit() {
|
360
|
+
this.templates.forEach((item) => {
|
361
|
+
switch (item.getType()) {
|
362
|
+
case 'header':
|
363
|
+
this._headerTemplate = item.template;
|
364
|
+
break;
|
365
|
+
case 'content':
|
366
|
+
this._contentTemplate = item.template;
|
367
|
+
break;
|
368
|
+
case 'footer':
|
369
|
+
this._footerTemplate = item.template;
|
370
|
+
break;
|
371
|
+
case 'icons':
|
372
|
+
this._iconTemplate = item.template;
|
373
|
+
break;
|
374
|
+
case 'headericons':
|
375
|
+
this._headerIconsTemplate = item.template;
|
376
|
+
break;
|
377
|
+
default:
|
378
|
+
this._contentTemplate = item.template;
|
379
|
+
break;
|
380
|
+
}
|
381
|
+
});
|
382
|
+
}
|
337
383
|
static ɵfac = /*@__PURE__*/ (() => { let ɵPanel_BaseFactory; return function Panel_Factory(__ngFactoryType__) { return (ɵPanel_BaseFactory || (ɵPanel_BaseFactory = i0.ɵɵgetInheritedFactory(Panel)))(__ngFactoryType__ || Panel); }; })();
|
338
384
|
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Panel, selectors: [["p-panel"]], contentQueries: function Panel_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
|
339
385
|
i0.ɵɵcontentQuery(dirIndex, Footer, 5);
|
340
|
-
i0.ɵɵcontentQuery(dirIndex, _c0,
|
341
|
-
i0.ɵɵcontentQuery(dirIndex, _c1,
|
342
|
-
i0.ɵɵcontentQuery(dirIndex, _c2,
|
343
|
-
i0.ɵɵcontentQuery(dirIndex, _c3,
|
344
|
-
i0.ɵɵcontentQuery(dirIndex, _c4,
|
386
|
+
i0.ɵɵcontentQuery(dirIndex, _c0, 4);
|
387
|
+
i0.ɵɵcontentQuery(dirIndex, _c1, 4);
|
388
|
+
i0.ɵɵcontentQuery(dirIndex, _c2, 4);
|
389
|
+
i0.ɵɵcontentQuery(dirIndex, _c3, 4);
|
390
|
+
i0.ɵɵcontentQuery(dirIndex, _c4, 4);
|
391
|
+
i0.ɵɵcontentQuery(dirIndex, PrimeTemplate, 4);
|
345
392
|
} if (rf & 2) {
|
346
393
|
let _t;
|
347
394
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.footerFacet = _t.first);
|
@@ -349,32 +396,39 @@ export class Panel extends BaseComponent {
|
|
349
396
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.iconTemplate = _t.first);
|
350
397
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.contentTemplate = _t.first);
|
351
398
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.footerTemplate = _t.first);
|
352
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.
|
353
|
-
|
354
|
-
|
355
|
-
i0.ɵɵ
|
356
|
-
|
357
|
-
|
358
|
-
i0.ɵɵ
|
359
|
-
|
360
|
-
i0.ɵɵ
|
361
|
-
i0.ɵɵ
|
399
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headerIconsTemplate = _t.first);
|
400
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.templates = _t);
|
401
|
+
} }, viewQuery: function Panel_Query(rf, ctx) { if (rf & 1) {
|
402
|
+
i0.ɵɵviewQuery(_c5, 5);
|
403
|
+
} if (rf & 2) {
|
404
|
+
let _t;
|
405
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.contentWrapperViewChild = _t.first);
|
406
|
+
} }, inputs: { toggleable: [2, "toggleable", "toggleable", booleanAttribute], _header: [0, "header", "_header"], collapsed: [2, "collapsed", "collapsed", booleanAttribute], style: "style", styleClass: "styleClass", iconPos: "iconPos", expandIcon: "expandIcon", collapseIcon: "collapseIcon", showHeader: [2, "showHeader", "showHeader", booleanAttribute], toggler: "toggler", transitionOptions: "transitionOptions", toggleButtonProps: "toggleButtonProps" }, outputs: { collapsedChange: "collapsedChange", onBeforeToggle: "onBeforeToggle", onAfterToggle: "onAfterToggle" }, standalone: true, features: [i0.ɵɵProvidersFeature([PanelStyle]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], ngContentSelectors: _c7, decls: 8, vars: 25, consts: [["contentWrapper", ""], [3, "ngClass", "ngStyle"], ["class", "p-panel-header", 3, "click", 4, "ngIf"], ["role", "region", 1, "p-panel-content-container", 3, "id"], [1, "p-panel-content"], [4, "ngTemplateOutlet"], ["class", "p-panel-footer", 4, "ngIf"], [1, "p-panel-header", 3, "click"], ["class", "p-panel-title", 4, "ngIf"], [1, "p-panel-icons", 3, "ngClass"], ["severity", "secondary", "type", "button", "role", "button", "styleClass", "p-panel-header-icon p-panel-toggler p-link", 3, "text", "rounded", "buttonProps", "click", "keydown", 4, "ngIf"], [1, "p-panel-title"], ["severity", "secondary", "type", "button", "role", "button", "styleClass", "p-panel-header-icon p-panel-toggler p-link", 3, "click", "keydown", "text", "rounded", "buttonProps"], [4, "ngIf"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [3, "class", 4, "ngIf"], [1, "p-panel-footer"]], template: function Panel_Template(rf, ctx) { if (rf & 1) {
|
407
|
+
const _r1 = i0.ɵɵgetCurrentView();
|
408
|
+
i0.ɵɵprojectionDef(_c6);
|
409
|
+
i0.ɵɵelementStart(0, "div", 1);
|
410
|
+
i0.ɵɵtemplate(1, Panel_div_1_Template, 7, 10, "div", 2);
|
411
|
+
i0.ɵɵelementStart(2, "div", 3);
|
412
|
+
i0.ɵɵlistener("@panelContent.done", function Panel_Template_div_animation_panelContent_done_2_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onToggleDone($event)); });
|
413
|
+
i0.ɵɵelementStart(3, "div", 4, 0);
|
414
|
+
i0.ɵɵprojection(5);
|
415
|
+
i0.ɵɵtemplate(6, Panel_ng_container_6_Template, 1, 0, "ng-container", 5);
|
362
416
|
i0.ɵɵelementEnd();
|
363
|
-
i0.ɵɵtemplate(
|
417
|
+
i0.ɵɵtemplate(7, Panel_div_7_Template, 3, 1, "div", 6);
|
364
418
|
i0.ɵɵelementEnd()();
|
365
419
|
} if (rf & 2) {
|
366
420
|
i0.ɵɵclassMap(ctx.styleClass);
|
367
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(14,
|
421
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(14, _c8, ctx.toggleable, !ctx.collapsed && ctx.toggleable))("ngStyle", ctx.style);
|
368
422
|
i0.ɵɵattribute("id", ctx.id)("data-pc-name", "panel");
|
369
423
|
i0.ɵɵadvance();
|
370
424
|
i0.ɵɵproperty("ngIf", ctx.showHeader);
|
371
425
|
i0.ɵɵadvance();
|
372
|
-
i0.ɵɵproperty("id", ctx.id + "_content")("@panelContent", ctx.collapsed ? i0.ɵɵpureFunction1(19,
|
426
|
+
i0.ɵɵproperty("id", ctx.id + "_content")("@panelContent", ctx.collapsed ? i0.ɵɵpureFunction1(19, _c10, i0.ɵɵpureFunction1(17, _c9, ctx.animating ? ctx.transitionOptions : "0ms")) : i0.ɵɵpureFunction1(23, _c12, i0.ɵɵpureFunction1(21, _c11, ctx.animating ? ctx.transitionOptions : "0ms")));
|
373
427
|
i0.ɵɵattribute("aria-labelledby", ctx.id + "_header")("aria-hidden", ctx.collapsed)("tabindex", ctx.collapsed ? "-1" : undefined);
|
374
|
-
i0.ɵɵadvance(
|
375
|
-
i0.ɵɵproperty("ngTemplateOutlet", ctx.contentTemplate);
|
428
|
+
i0.ɵɵadvance(4);
|
429
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx.contentTemplate || ctx._contentTemplate);
|
376
430
|
i0.ɵɵadvance();
|
377
|
-
i0.ɵɵproperty("ngIf", ctx.footerFacet || ctx.footerTemplate);
|
431
|
+
i0.ɵɵproperty("ngIf", ctx.footerFacet || ctx.footerTemplate || ctx._footerTemplate);
|
378
432
|
} }, dependencies: [CommonModule, i1.NgClass, i1.NgIf, i1.NgTemplateOutlet, i1.NgStyle, PlusIcon, MinusIcon, ButtonModule, i2.Button, SharedModule], encapsulation: 2, data: { animation: [
|
379
433
|
trigger('panelContent', [
|
380
434
|
state('hidden', style({
|
@@ -397,7 +451,7 @@ export class Panel extends BaseComponent {
|
|
397
451
|
args: [{
|
398
452
|
selector: 'p-panel',
|
399
453
|
standalone: true,
|
400
|
-
imports: [CommonModule,
|
454
|
+
imports: [CommonModule, PlusIcon, MinusIcon, ButtonModule, SharedModule],
|
401
455
|
template: `
|
402
456
|
<div
|
403
457
|
[attr.id]="id"
|
@@ -413,7 +467,7 @@ export class Panel extends BaseComponent {
|
|
413
467
|
<div class="p-panel-header" *ngIf="showHeader" (click)="onHeaderClick($event)" [attr.id]="id + '-titlebar'">
|
414
468
|
<span class="p-panel-title" *ngIf="_header" [attr.id]="id + '_header'">{{ _header }}</span>
|
415
469
|
<ng-content select="p-header"></ng-content>
|
416
|
-
<ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
|
470
|
+
<ng-container *ngTemplateOutlet="headerTemplate || _headerTemplate"></ng-container>
|
417
471
|
<div
|
418
472
|
class="p-panel-icons"
|
419
473
|
[ngClass]="{
|
@@ -422,7 +476,7 @@ export class Panel extends BaseComponent {
|
|
422
476
|
'p-panel-icons-center': iconPos === 'center'
|
423
477
|
}"
|
424
478
|
>
|
425
|
-
<ng-template *ngTemplateOutlet="iconTemplate"></ng-template>
|
479
|
+
<ng-template *ngTemplateOutlet="iconTemplate || _iconTemplate"></ng-template>
|
426
480
|
<p-button
|
427
481
|
*ngIf="toggleable"
|
428
482
|
[attr.id]="id + '_header'"
|
@@ -439,7 +493,7 @@ export class Panel extends BaseComponent {
|
|
439
493
|
(keydown)="onKeyDown($event)"
|
440
494
|
[buttonProps]="toggleButtonProps"
|
441
495
|
>
|
442
|
-
<ng-container *ngIf="!
|
496
|
+
<ng-container *ngIf="!headerIconsTemplate && !_headerIconsTemplate && !toggleButtonProps?.icon">
|
443
497
|
<ng-container *ngIf="!collapsed">
|
444
498
|
<span *ngIf="expandIcon" [class]="expandIcon"></span>
|
445
499
|
<MinusIcon *ngIf="!expandIcon" />
|
@@ -451,7 +505,7 @@ export class Panel extends BaseComponent {
|
|
451
505
|
</ng-container>
|
452
506
|
</ng-container>
|
453
507
|
|
454
|
-
<ng-template *ngTemplateOutlet="
|
508
|
+
<ng-template *ngTemplateOutlet="headerIconsTemplate || _headerIconsTemplate; context: { $implicit: collapsed }"></ng-template>
|
455
509
|
</p-button>
|
456
510
|
</div>
|
457
511
|
</div>
|
@@ -483,14 +537,14 @@ export class Panel extends BaseComponent {
|
|
483
537
|
"
|
484
538
|
(@panelContent.done)="onToggleDone($event)"
|
485
539
|
>
|
486
|
-
<div class="p-panel-content">
|
540
|
+
<div class="p-panel-content" #contentWrapper>
|
487
541
|
<ng-content></ng-content>
|
488
|
-
<ng-container *ngTemplateOutlet="contentTemplate"></ng-container>
|
542
|
+
<ng-container *ngTemplateOutlet="contentTemplate || _contentTemplate"></ng-container>
|
489
543
|
</div>
|
490
544
|
|
491
|
-
<div class="p-panel-footer" *ngIf="footerFacet || footerTemplate">
|
545
|
+
<div class="p-panel-footer" *ngIf="footerFacet || footerTemplate || _footerTemplate">
|
492
546
|
<ng-content select="p-footer"></ng-content>
|
493
|
-
<ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
|
547
|
+
<ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate"></ng-container>
|
494
548
|
</div>
|
495
549
|
</div>
|
496
550
|
</div>
|
@@ -554,19 +608,25 @@ export class Panel extends BaseComponent {
|
|
554
608
|
args: [Footer]
|
555
609
|
}], headerTemplate: [{
|
556
610
|
type: ContentChild,
|
557
|
-
args: ['header']
|
611
|
+
args: ['header', { descendants: false }]
|
558
612
|
}], iconTemplate: [{
|
559
613
|
type: ContentChild,
|
560
|
-
args: ['icon']
|
614
|
+
args: ['icon', { descendants: false }]
|
561
615
|
}], contentTemplate: [{
|
562
616
|
type: ContentChild,
|
563
|
-
args: ['content']
|
617
|
+
args: ['content', { descendants: false }]
|
564
618
|
}], footerTemplate: [{
|
565
619
|
type: ContentChild,
|
566
|
-
args: ['footer']
|
567
|
-
}],
|
620
|
+
args: ['footer', { descendants: false }]
|
621
|
+
}], headerIconsTemplate: [{
|
568
622
|
type: ContentChild,
|
569
|
-
args: ['headericons']
|
623
|
+
args: ['headericons', { descendants: false }]
|
624
|
+
}], contentWrapperViewChild: [{
|
625
|
+
type: ViewChild,
|
626
|
+
args: ['contentWrapper']
|
627
|
+
}], templates: [{
|
628
|
+
type: ContentChildren,
|
629
|
+
args: [PrimeTemplate]
|
570
630
|
}] }); })();
|
571
631
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(Panel, { className: "Panel" }); })();
|
572
632
|
export class PanelModule {
|
@@ -582,4 +642,4 @@ export class PanelModule {
|
|
582
642
|
}]
|
583
643
|
}], null, null); })();
|
584
644
|
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(PanelModule, { imports: [Panel, SharedModule], exports: [Panel, SharedModule] }); })();
|
585
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFuZWwvcGFuZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBZSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsTCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFlLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBMkRoQyxnQ0FBdUU7SUFBQSxZQUFhO0lBQUEsaUJBQU87Ozs7SUFBcEIsY0FBYTtJQUFiLG9DQUFhOzs7SUFFcEYsd0JBQWdFOzs7O0lBUzVELDJFQUE4Qzs7O0lBbUJsQyx1QkFBcUQ7OztJQUE1QixnQ0FBb0I7OztJQUM3Qyw0QkFBaUM7OztJQUZyQyw2QkFBaUM7SUFFN0IsQUFEQSx3R0FBOEMscUdBQ2I7Ozs7SUFEMUIsY0FBZ0I7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aUI7a0JBQXpCLEtBQUs7WUFNSSxlQUFlO2tCQUF4QixNQUFNO1lBTUcsY0FBYztrQkFBdkIsTUFBTTtZQU1HLGFBQWE7a0JBQXRCLE1BQU07WUFFZSxXQUFXO2tCQUFoQyxZQUFZO21CQUFDLE1BQU07WUFPSSxjQUFjO2tCQUFyQyxZQUFZO21CQUFDLFFBQVE7WUFVQSxZQUFZO2tCQUFqQyxZQUFZO21CQUFDLE1BQU07WUFVSyxlQUFlO2tCQUF2QyxZQUFZO21CQUFDLFNBQVM7WUFVQyxjQUFjO2tCQUFyQyxZQUFZO21CQUFDLFFBQVE7WUFZTyxtQkFBbUI7a0JBQS9DLFlBQVk7bUJBQUMsYUFBYTs7a0ZBcElsQixLQUFLO0FBME1sQixNQUFNLE9BQU8sV0FBVztxR0FBWCxXQUFXOzREQUFYLFdBQVc7Z0VBSFYsS0FBSyxFQUFFLFlBQVksRUFDWixZQUFZOztpRkFFcEIsV0FBVztjQUp2QixRQUFRO2VBQUM7Z0JBQ04sT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQztnQkFDOUIsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQzthQUNqQzs7d0ZBQ1ksV0FBVyxjQTFNWCxLQUFLLEVBdU1HLFlBQVksYUF2TXBCLEtBQUssRUF3TUcsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIElucHV0LCBOZ01vZHVsZSwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHV1aWQgfSBmcm9tICdAcHJpbWV1aXgvdXRpbHMnO1xuaW1wb3J0IHsgQmxvY2thYmxlVUksIEZvb3RlciwgU2hhcmVkTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJ3ByaW1lbmcvYmFzZWNvbXBvbmVudCc7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XG5pbXBvcnQgeyBNaW51c0ljb24sIFBsdXNJY29uIH0gZnJvbSAncHJpbWVuZy9pY29ucyc7XG5pbXBvcnQgeyBSaXBwbGUgfSBmcm9tICdwcmltZW5nL3JpcHBsZSc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ3ByaW1lbmcvdHMtaGVscGVycyc7XG5pbXBvcnQgeyBQYW5lbFN0eWxlIH0gZnJvbSAnLi9zdHlsZS9wYW5lbHN0eWxlJztcblxuLyoqXG4gKiBDdXN0b20gcGFuZWwgdG9nZ2xlIGV2ZW50LCBlbWl0cyBiZWZvcmUgcGFuZWwgdG9nZ2xlLlxuICogQHNlZSB7QGxpbmsgb25CZWZvcmVUb2dnbGV9XG4gKiBAZ3JvdXAgSW50ZXJmYWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGFuZWxCZWZvcmVUb2dnbGVFdmVudCB7XG4gICAgLyoqXG4gICAgICogQnJvd3NlciBldmVudC5cbiAgICAgKi9cbiAgICBvcmlnaW5hbEV2ZW50OiBFdmVudDtcbiAgICAvKipcbiAgICAgKiBDb2xsYXBzZWQgc3RhdGUgb2YgdGhlIHBhbmVsLlxuICAgICAqL1xuICAgIGNvbGxhcHNlZDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBDdXN0b20gcGFuZWwgdG9nZ2xlIGV2ZW50LCBlbWl0cyBhZnRlciBwYW5lbCB0b2dnbGUuXG4gKiBAc2VlIHtAbGluayBvbkFmdGVyVG9nZ2xlfVxuICogQGV4dGVuZHMge1BhbmVsQmVmb3JlVG9nZ2xlRXZlbnR9XG4gKiBAZ3JvdXAgSW50ZXJmYWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGFuZWxBZnRlclRvZ2dsZUV2ZW50IGV4dGVuZHMgUGFuZWxCZWZvcmVUb2dnbGVFdmVudCB7fVxuXG4vKipcbiAqIFRvZ2dsZSBpY29uIHRlbXBsYXRlIGNvbnRleHQuXG4gKiBAcGFyYW0ge2Jvb2xlYW59ICRpbXBsaWNpdCAtIENvbGxhcHNlZCBzdGF0ZSBhcyBhIGJvb2xlYW4sIGltcGxpY2l0IHZhbHVlLlxuICogQGdyb3VwIEludGVyZmFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhbmVsSGVhZGVySWNvbnNUZW1wbGF0ZUNvbnRleHQge1xuICAgIC8qKlxuICAgICAqIENvbGxhcHNlZCBzdGF0ZSBhcyBhIGJvb2xlYW4sIGltcGxpY2l0IHZhbHVlLlxuICAgICAqL1xuICAgICRpbXBsaWNpdDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBQYW5lbCBpcyBhIGNvbnRhaW5lciB3aXRoIHRoZSBvcHRpb25hbCBjb250ZW50IHRvZ2dsZSBmZWF0dXJlLlxuICogQGdyb3VwIENvbXBvbmVudHNcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwLXBhbmVsJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJpcHBsZSwgUGx1c0ljb24sIE1pbnVzSWNvbiwgQnV0dG9uTW9kdWxlLCBTaGFyZWRNb2R1bGVdLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIFthdHRyLmlkXT1cImlkXCJcbiAgICAgICAgICAgIFthdHRyLmRhdGEtcGMtbmFtZV09XCIncGFuZWwnXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAncC1wYW5lbCBwLWNvbXBvbmVudCc6IHRydWUsXG4gICAgICAgICAgICAgICAgJ3AtcGFuZWwtdG9nZ2xlYWJsZSc6IHRvZ2dsZWFibGUsXG4gICAgICAgICAgICAgICAgJ3AtcGFuZWwtZXhwYW5kZWQnOiAhY29sbGFwc2VkICYmIHRvZ2dsZWFibGVcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwic3R5bGVcIlxuICAgICAgICAgICAgW2NsYXNzXT1cInN0eWxlQ2xhc3NcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1wYW5lbC1oZWFkZXJcIiAqbmdJZj1cInNob3dIZWFkZXJcIiAoY2xpY2spPVwib25IZWFkZXJDbGljaygkZXZlbnQpXCIgW2F0dHIuaWRdPVwiaWQgKyAnLXRpdGxlYmFyJ1wiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC1wYW5lbC10aXRsZVwiICpuZ0lmPVwiX2hlYWRlclwiIFthdHRyLmlkXT1cImlkICsgJ19oZWFkZXInXCI+e3sgX2hlYWRlciB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJwLWhlYWRlclwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaGVhZGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicC1wYW5lbC1pY29uc1wiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICdwLXBhbmVsLWljb25zLXN0YXJ0JzogaWNvblBvcyA9PT0gJ3N0YXJ0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdwLXBhbmVsLWljb25zLWVuZCc6IGljb25Qb3MgPT09ICdlbmQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3AtcGFuZWwtaWNvbnMtY2VudGVyJzogaWNvblBvcyA9PT0gJ2NlbnRlcidcbiAgICAgICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpY29uVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8cC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidG9nZ2xlYWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJpZCArICdfaGVhZGVyJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXZlcml0eT1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbdGV4dF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb3VuZGVkXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlQ2xhc3M9XCJwLXBhbmVsLWhlYWRlci1pY29uIHAtcGFuZWwtdG9nZ2xlciBwLWxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJidXR0b25BcmlhTGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJpZCArICdfY29udGVudCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCIhY29sbGFwc2VkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkljb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtidXR0b25Qcm9wc109XCJ0b2dnbGVCdXR0b25Qcm9wc1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaGVhZGVyaWNvbnNUZW1wbGF0ZSAmJiAhdG9nZ2xlQnV0dG9uUHJvcHM/Lmljb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbGxhcHNlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImV4cGFuZEljb25cIiBbY2xhc3NdPVwiZXhwYW5kSWNvblwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1pbnVzSWNvbiAqbmdJZj1cIiFleHBhbmRJY29uXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2xsYXBzZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb2xsYXBzZUljb25cIiBbY2xhc3NdPVwiY29sbGFwc2VJY29uXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UGx1c0ljb24gKm5nSWY9XCIhY29sbGFwc2VJY29uXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXJpY29uc1RlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sbGFwc2VkIH1cIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8L3AtYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJwLXBhbmVsLWNvbnRlbnQtY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICBbaWRdPVwiaWQgKyAnX2NvbnRlbnQnXCJcbiAgICAgICAgICAgICAgICByb2xlPVwicmVnaW9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiaWQgKyAnX2hlYWRlcidcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cImNvbGxhcHNlZFwiXG4gICAgICAgICAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiY29sbGFwc2VkID8gJy0xJyA6IHVuZGVmaW5lZFwiXG4gICAgICAgICAgICAgICAgW0BwYW5lbENvbnRlbnRdPVwiXG4gICAgICAgICAgICAgICAgICAgIGNvbGxhcHNlZFxuICAgICAgICAgICAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJ2hpZGRlbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uUGFyYW1zOiBhbmltYXRpbmcgPyB0cmFuc2l0aW9uT3B0aW9ucyA6ICcwbXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogJzAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICcwJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAndmlzaWJsZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uUGFyYW1zOiBhbmltYXRpbmcgPyB0cmFuc2l0aW9uT3B0aW9ucyA6ICcwbXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogJyonLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICcxJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAoQHBhbmVsQ29udGVudC5kb25lKT1cIm9uVG9nZ2xlRG9uZSgkZXZlbnQpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1wYW5lbC1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtcGFuZWwtZm9vdGVyXCIgKm5nSWY9XCJmb290ZXJGYWNldCB8fCBmb290ZXJUZW1wbGF0ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJwLWZvb3RlclwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvb3RlclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgYCxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ3BhbmVsQ29udGVudCcsIFtcbiAgICAgICAgICAgIHN0YXRlKFxuICAgICAgICAgICAgICAgICdoaWRkZW4nLFxuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAnMCdcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHN0YXRlKFxuICAgICAgICAgICAgICAgICd2b2lkJyxcbiAgICAgICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogJ3t7aGVpZ2h0fX0nXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgeyBwYXJhbXM6IHsgaGVpZ2h0OiAnMCcgfSB9XG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ3Zpc2libGUnLFxuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAnKidcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ3Zpc2libGUgPD0+IGhpZGRlbicsIFthbmltYXRlKCd7e3RyYW5zaXRpb25QYXJhbXN9fScpXSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IGhpZGRlbicsIGFuaW1hdGUoJ3t7dHJhbnNpdGlvblBhcmFtc319JykpLFxuICAgICAgICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiB2aXNpYmxlJywgYW5pbWF0ZSgne3t0cmFuc2l0aW9uUGFyYW1zfX0nKSlcbiAgICAgICAgXSlcbiAgICBdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbUGFuZWxTdHlsZV1cbn0pXG5leHBvcnQgY2xhc3MgUGFuZWwgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgQmxvY2thYmxlVUkge1xuICAgIC8qKlxuICAgICAqIERlZmluZXMgaWYgY29udGVudCBvZiBwYW5lbCBjYW4gYmUgZXhwYW5kZWQgYW5kIGNvbGxhcHNlZC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgdG9nZ2xlYWJsZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBIZWFkZXIgdGV4dCBvZiB0aGUgcGFuZWwuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCdoZWFkZXInKSBfaGVhZGVyOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0aGUgaW5pdGlhbCBzdGF0ZSBvZiBwYW5lbCBjb250ZW50LCBzdXBwb3J0cyBvbmUgb3IgdHdvLXdheSBiaW5kaW5nIGFzIHdlbGwuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGNvbGxhcHNlZDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBJbmxpbmUgc3R5bGUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBzdHlsZTogeyBba2xhc3M6IHN0cmluZ106IGFueSB9IHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBTdHlsZSBjbGFzcyBvZiB0aGUgY29tcG9uZW50LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHN0eWxlQ2xhc3M6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBQb3NpdGlvbiBvZiB0aGUgaWNvbnMuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgaWNvblBvczogJ3N0YXJ0JyB8ICdlbmQnIHwgJ2NlbnRlcicgPSAnZW5kJztcbiAgICAvKipcbiAgICAgKiBFeHBhbmQgaWNvbiBvZiB0aGUgdG9nZ2xlIGJ1dHRvbi5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKiBAZGVwcmVjYXRlZCBzaW5jZSB2MTUuNC4yLCB1c2UgYGhlYWRlcmljb25zYCB0ZW1wbGF0ZSBpbnN0ZWFkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIGV4cGFuZEljb246IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBDb2xsYXBzZSBpY29uIG9mIHRoZSB0b2dnbGUgYnV0dG9uLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqIEBkZXByZWNhdGVkIHNpbmNlIHYxNS40LjIsIHVzZSBgaGVhZGVyaWNvbnNgIHRlbXBsYXRlIGluc3RlYWQuXG4gICAgICovXG4gICAgQElucHV0KCkgY29sbGFwc2VJY29uOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogU3BlY2lmaWVzIGlmIGhlYWRlciBvZiBwYW5lbCBjYW5ub3QgYmUgZGlzcGxheWVkLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqIEBkZXByZWNhdGVkIHNpbmNlIHYxNS40LjIsIHVzZSBgaGVhZGVyaWNvbnNgIHRlbXBsYXRlIGluc3RlYWQuXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIHNob3dIZWFkZXI6IGJvb2xlYW4gPSB0cnVlO1xuICAgIC8qKlxuICAgICAqIFNwZWNpZmllcyB0aGUgdG9nZ2xlciBlbGVtZW50IHRvIHRvZ2dsZSB0aGUgcGFuZWwgY29udGVudC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0b2dnbGVyOiAnaWNvbicgfCAnaGVhZGVyJyA9ICdpY29uJztcbiAgICAvKipcbiAgICAgKiBUcmFuc2l0aW9uIG9wdGlvbnMgb2YgdGhlIGFuaW1hdGlvbi5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0cmFuc2l0aW9uT3B0aW9uczogc3RyaW5nID0gJzQwMG1zIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKSc7XG4gICAgLyoqXG4gICAgICogVXNlZCB0byBwYXNzIGFsbCBwcm9wZXJ0aWVzIG9mIHRoZSBCdXR0b25Qcm9wcyB0byB0aGUgQnV0dG9uIGNvbXBvbmVudC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0b2dnbGVCdXR0b25Qcm9wczogYW55O1xuICAgIC8qKlxuICAgICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29sbGFwc2VkIGNoYW5nZXMuXG4gICAgICogQHBhcmFtIHtib29sZWFufSB2YWx1ZSAtIE5ldyBWYWx1ZS5cbiAgICAgKiBAZ3JvdXAgRW1pdHNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgY29sbGFwc2VkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgdG8gaW52b2tlIGJlZm9yZSBwYW5lbCB0b2dnbGUuXG4gICAgICogQHBhcmFtIHtQYW5lbEJlZm9yZVRvZ2dsZUV2ZW50fSBldmVudCAtIEN1c3RvbSBwYW5lbCB0b2dnbGUgZXZlbnRcbiAgICAgKiBAZ3JvdXAgRW1pdHNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgb25CZWZvcmVUb2dnbGU6IEV2ZW50RW1pdHRlcjxQYW5lbEJlZm9yZVRvZ2dsZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8UGFuZWxCZWZvcmVUb2dnbGVFdmVudD4oKTtcbiAgICAvKipcbiAgICAgKiBDYWxsYmFjayB0byBpbnZva2UgYWZ0ZXIgcGFuZWwgdG9nZ2xlLlxuICAgICAqIEBwYXJhbSB7UGFuZWxBZnRlclRvZ2dsZUV2ZW50fSBldmVudCAtIEN1c3RvbSBwYW5lbCB0b2dnbGUgZXZlbnRcbiAgICAgKiBAZ3JvdXAgRW1pdHNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgb25BZnRlclRvZ2dsZTogRXZlbnRFbWl0dGVyPFBhbmVsQWZ0ZXJUb2dnbGVFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPFBhbmVsQWZ0ZXJUb2dnbGVFdmVudD4oKTtcblxuICAgIEBDb250ZW50Q2hpbGQoRm9vdGVyKSBmb290ZXJGYWNldDogTnVsbGFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG5cbiAgICBhbmltYXRpbmc6IE51bGxhYmxlPGJvb2xlYW4+O1xuICAgIC8qKlxuICAgICAqIERlZmluZXMgdGVtcGxhdGUgb3B0aW9uIGZvciBoZWFkZXIuXG4gICAgICogQGdyb3VwIFRlbXBsYXRlc1xuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoJ2hlYWRlcicpIGhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0ZW1wbGF0ZSBvcHRpb24gZm9yIGljb24uXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPG5nLXRlbXBsYXRlICNpY29uPiA8L25nLXRlbXBsYXRlPlxuICAgICAqIGBgYFxuICAgICAqIEBncm91cCBUZW1wbGF0ZXNcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKCdpY29uJykgaWNvblRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0ZW1wbGF0ZSBvcHRpb24gZm9yIGNvbnRlbnQuXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPG5nLXRlbXBsYXRlICNjb250ZW50PiA8L25nLXRlbXBsYXRlPlxuICAgICAqIGBgYFxuICAgICAqIEBncm91cCBUZW1wbGF0ZXNcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKCdjb250ZW50JykgY29udGVudFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0ZW1wbGF0ZSBvcHRpb24gZm9yIGZvb3Rlci5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8bmctdGVtcGxhdGUgI2Zvb3Rlcj4gPC9uZy10ZW1wbGF0ZT5cbiAgICAgKiBgYGBcbiAgICAgKiBAZ3JvdXAgVGVtcGxhdGVzXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnZm9vdGVyJykgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmVzIHRlbXBsYXRlIG9wdGlvbiBmb3IgaGVhZGVySWNvbi5cbiAgICAgKiBAdHlwZSB7VGVtcGxhdGVSZWY8UGFuZWxIZWFkZXJJY29uc1RlbXBsYXRlQ29udGV4dD59IGNvbnRleHQgLSBjb250ZXh0IG9mIHRoZSB0ZW1wbGF0ZS5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8bmctdGVtcGxhdGUgI2hlYWRlcmljb25zIGxldC1jb2xsYXBzZWQ+IDwvbmctdGVtcGxhdGU+XG4gICAgICogYGBgXG4gICAgICogQHNlZSB7QGxpbmsgUGFuZWxIZWFkZXJJY29uc1RlbXBsYXRlQ29udGV4dH1cbiAgICAgKiBAZ3JvdXAgVGVtcGxhdGVzXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnaGVhZGVyaWNvbnMnKSBoZWFkZXJpY29uc1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxQYW5lbEhlYWRlckljb25zVGVtcGxhdGVDb250ZXh0PiB8IHVuZGVmaW5lZDtcblxuICAgIHJlYWRvbmx5IGlkID0gdXVpZCgncG5faWRfJyk7XG5cbiAgICBnZXQgYnV0dG9uQXJpYUxhYmVsKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faGVhZGVyO1xuICAgIH1cblxuICAgIF9jb21wb25lbnRTdHlsZSA9IGluamVjdChQYW5lbFN0eWxlKTtcblxuICAgIG9uSGVhZGVyQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgaWYgKHRoaXMudG9nZ2xlciA9PT0gJ2hlYWRlcicpIHtcbiAgICAgICAgICAgIHRoaXMudG9nZ2xlKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uSWNvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLnRvZ2dsZXIgPT09ICdpY29uJykge1xuICAgICAgICAgICAgdGhpcy50b2dnbGUoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdG9nZ2xlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmFuaW1hdGluZykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hbmltYXRpbmcgPSB0cnVlO1xuICAgICAgICB0aGlzLm9uQmVmb3JlVG9nZ2xlLmVtaXQoeyBvcmlnaW5hbEV2ZW50OiBldmVudCwgY29sbGFwc2VkOiB0aGlzLmNvbGxhcHNlZCB9KTtcblxuICAgICAgICBpZiAodGhpcy50b2dnbGVhYmxlKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5jb2xsYXBzZWQpIHRoaXMuZXhwYW5kKCk7XG4gICAgICAgICAgICBlbHNlIHRoaXMuY29sbGFwc2UoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgZXhwYW5kKCkge1xuICAgICAgICB0aGlzLmNvbGxhcHNlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvbGxhcHNlZENoYW5nZS5lbWl0KHRoaXMuY29sbGFwc2VkKTtcbiAgICB9XG5cbiAgICBjb2xsYXBzZSgpIHtcbiAgICAgICAgdGhpcy5jb2xsYXBzZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmNvbGxhcHNlZENoYW5nZS5lbWl0KHRoaXMuY29sbGFwc2VkKTtcbiAgICB9XG5cbiAgICBnZXRCbG9ja2FibGVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWwubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXTtcbiAgICB9XG5cbiAgICBvbktleURvd24oZXZlbnQpIHtcbiAgICAgICAgaWYgKGV2ZW50LmNvZGUgPT09ICdFbnRlcicgfHwgZXZlbnQuY29kZSA9PT0gJ1NwYWNlJykge1xuICAgICAgICAgICAgdGhpcy50b2dnbGUoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uVG9nZ2xlRG9uZShldmVudDogYW55KSB7XG4gICAgICAgIHRoaXMuYW5pbWF0aW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMub25BZnRlclRvZ2dsZS5lbWl0KHsgb3JpZ2luYWxFdmVudDogZXZlbnQsIGNvbGxhcHNlZDogdGhpcy5jb2xsYXBzZWQgfSk7XG4gICAgfVxufVxuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtQYW5lbCwgU2hhcmVkTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbUGFuZWwsIFNoYXJlZE1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgUGFuZWxNb2R1bGUge31cbiJdfQ==
|
645
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFuZWwvcGFuZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFvQixTQUFTLEVBQWMsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBMEIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdlAsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBZSxNQUFNLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMvRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUEyRGhDLGdDQUF1RTtJQUFBLFlBQWE7SUFBQSxpQkFBTzs7OztJQUFwQixjQUFhO0lBQWIsb0NBQWE7OztJQUVwRix3QkFBbUY7Ozs7SUFTL0UsMkVBQStEOzs7SUFtQm5ELHVCQUFxRDs7O0lBQTVCLGdDQUFvQjs7O0lBQzdDLDRCQUFpQzs7O0lBRnJDLDZCQUFpQztJQUU3QixBQURBLHdHQUE4QyxxR0FDYjs7OztJQUQxQixjQUFnQjtJQUFoQix3Q0FB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QUFDLEtBQUssRUFBRSxZQUFZLENBQUM7Z0JBQzlCLE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUM7YUFDakM7O3dGQUNZLFdBQVcsY0FwUVgsS0FBSyxFQWlRRyxZQUFZLGFBalFwQixLQUFLLEVBa1FHLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYsIGJvb2xlYW5BdHRyaWJ1dGUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgQ29udGVudENoaWxkcmVuLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE5nTW9kdWxlLCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVGVtcGxhdGVSZWYsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB1dWlkIH0gZnJvbSAnQHByaW1ldWl4L3V0aWxzJztcbmltcG9ydCB7IEJsb2NrYWJsZVVJLCBGb290ZXIsIFByaW1lVGVtcGxhdGUsIFNoYXJlZE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICdwcmltZW5nL2Jhc2Vjb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9idXR0b24nO1xuaW1wb3J0IHsgTWludXNJY29uLCBQbHVzSWNvbiB9IGZyb20gJ3ByaW1lbmcvaWNvbnMnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdwcmltZW5nL3RzLWhlbHBlcnMnO1xuaW1wb3J0IHsgUGFuZWxTdHlsZSB9IGZyb20gJy4vc3R5bGUvcGFuZWxzdHlsZSc7XG5cbi8qKlxuICogQ3VzdG9tIHBhbmVsIHRvZ2dsZSBldmVudCwgZW1pdHMgYmVmb3JlIHBhbmVsIHRvZ2dsZS5cbiAqIEBzZWUge0BsaW5rIG9uQmVmb3JlVG9nZ2xlfVxuICogQGdyb3VwIEludGVyZmFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhbmVsQmVmb3JlVG9nZ2xlRXZlbnQge1xuICAgIC8qKlxuICAgICAqIEJyb3dzZXIgZXZlbnQuXG4gICAgICovXG4gICAgb3JpZ2luYWxFdmVudDogRXZlbnQ7XG4gICAgLyoqXG4gICAgICogQ29sbGFwc2VkIHN0YXRlIG9mIHRoZSBwYW5lbC5cbiAgICAgKi9cbiAgICBjb2xsYXBzZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQ3VzdG9tIHBhbmVsIHRvZ2dsZSBldmVudCwgZW1pdHMgYWZ0ZXIgcGFuZWwgdG9nZ2xlLlxuICogQHNlZSB7QGxpbmsgb25BZnRlclRvZ2dsZX1cbiAqIEBleHRlbmRzIHtQYW5lbEJlZm9yZVRvZ2dsZUV2ZW50fVxuICogQGdyb3VwIEludGVyZmFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhbmVsQWZ0ZXJUb2dnbGVFdmVudCBleHRlbmRzIFBhbmVsQmVmb3JlVG9nZ2xlRXZlbnQge31cblxuLyoqXG4gKiBUb2dnbGUgaWNvbiB0ZW1wbGF0ZSBjb250ZXh0LlxuICogQHBhcmFtIHtib29sZWFufSAkaW1wbGljaXQgLSBDb2xsYXBzZWQgc3RhdGUgYXMgYSBib29sZWFuLCBpbXBsaWNpdCB2YWx1ZS5cbiAqIEBncm91cCBJbnRlcmZhY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQYW5lbEhlYWRlckljb25zVGVtcGxhdGVDb250ZXh0IHtcbiAgICAvKipcbiAgICAgKiBDb2xsYXBzZWQgc3RhdGUgYXMgYSBib29sZWFuLCBpbXBsaWNpdCB2YWx1ZS5cbiAgICAgKi9cbiAgICAkaW1wbGljaXQ6IGJvb2xlYW47XG59XG5cbi8qKlxuICogUGFuZWwgaXMgYSBjb250YWluZXIgd2l0aCB0aGUgb3B0aW9uYWwgY29udGVudCB0b2dnbGUgZmVhdHVyZS5cbiAqIEBncm91cCBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncC1wYW5lbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBQbHVzSWNvbiwgTWludXNJY29uLCBCdXR0b25Nb2R1bGUsIFNoYXJlZE1vZHVsZV0sXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgW2F0dHIuaWRdPVwiaWRcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS1wYy1uYW1lXT1cIidwYW5lbCdcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICdwLXBhbmVsIHAtY29tcG9uZW50JzogdHJ1ZSxcbiAgICAgICAgICAgICAgICAncC1wYW5lbC10b2dnbGVhYmxlJzogdG9nZ2xlYWJsZSxcbiAgICAgICAgICAgICAgICAncC1wYW5lbC1leHBhbmRlZCc6ICFjb2xsYXBzZWQgJiYgdG9nZ2xlYWJsZVxuICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJzdHlsZVwiXG4gICAgICAgICAgICBbY2xhc3NdPVwic3R5bGVDbGFzc1wiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLXBhbmVsLWhlYWRlclwiICpuZ0lmPVwic2hvd0hlYWRlclwiIChjbGljayk9XCJvbkhlYWRlckNsaWNrKCRldmVudClcIiBbYXR0ci5pZF09XCJpZCArICctdGl0bGViYXInXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwLXBhbmVsLXRpdGxlXCIgKm5nSWY9XCJfaGVhZGVyXCIgW2F0dHIuaWRdPVwiaWQgKyAnX2hlYWRlcidcIj57eyBfaGVhZGVyIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInAtaGVhZGVyXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXJUZW1wbGF0ZSB8fCBfaGVhZGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicC1wYW5lbC1pY29uc1wiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICdwLXBhbmVsLWljb25zLXN0YXJ0JzogaWNvblBvcyA9PT0gJ3N0YXJ0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdwLXBhbmVsLWljb25zLWVuZCc6IGljb25Qb3MgPT09ICdlbmQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3AtcGFuZWwtaWNvbnMtY2VudGVyJzogaWNvblBvcyA9PT0gJ2NlbnRlcidcbiAgICAgICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpY29uVGVtcGxhdGUgfHwgX2ljb25UZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDxwLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0b2dnbGVhYmxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cImlkICsgJ19oZWFkZXInXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldmVyaXR5PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0ZXh0XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3JvdW5kZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGVDbGFzcz1cInAtcGFuZWwtaGVhZGVyLWljb24gcC1wYW5lbC10b2dnbGVyIHAtbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ1dHRvbkFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImlkICsgJ19jb250ZW50J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIiFjb2xsYXBzZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uSWNvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2J1dHRvblByb3BzXT1cInRvZ2dsZUJ1dHRvblByb3BzXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFoZWFkZXJJY29uc1RlbXBsYXRlICYmICFfaGVhZGVySWNvbnNUZW1wbGF0ZSAmJiAhdG9nZ2xlQnV0dG9uUHJvcHM/Lmljb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbGxhcHNlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImV4cGFuZEljb25cIiBbY2xhc3NdPVwiZXhwYW5kSWNvblwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1pbnVzSWNvbiAqbmdJZj1cIiFleHBhbmRJY29uXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2xsYXBzZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb2xsYXBzZUljb25cIiBbY2xhc3NdPVwiY29sbGFwc2VJY29uXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UGx1c0ljb24gKm5nSWY9XCIhY29sbGFwc2VJY29uXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXJJY29uc1RlbXBsYXRlIHx8IF9oZWFkZXJJY29uc1RlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29sbGFwc2VkIH1cIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8L3AtYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJwLXBhbmVsLWNvbnRlbnQtY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICBbaWRdPVwiaWQgKyAnX2NvbnRlbnQnXCJcbiAgICAgICAgICAgICAgICByb2xlPVwicmVnaW9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiaWQgKyAnX2hlYWRlcidcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cImNvbGxhcHNlZFwiXG4gICAgICAgICAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiY29sbGFwc2VkID8gJy0xJyA6IHVuZGVmaW5lZFwiXG4gICAgICAgICAgICAgICAgW0BwYW5lbENvbnRlbnRdPVwiXG4gICAgICAgICAgICAgICAgICAgIGNvbGxhcHNlZFxuICAgICAgICAgICAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJ2hpZGRlbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uUGFyYW1zOiBhbmltYXRpbmcgPyB0cmFuc2l0aW9uT3B0aW9ucyA6ICcwbXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogJzAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICcwJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiAndmlzaWJsZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uUGFyYW1zOiBhbmltYXRpbmcgPyB0cmFuc2l0aW9uT3B0aW9ucyA6ICcwbXMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogJyonLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICcxJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAoQHBhbmVsQ29udGVudC5kb25lKT1cIm9uVG9nZ2xlRG9uZSgkZXZlbnQpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1wYW5lbC1jb250ZW50XCIgI2NvbnRlbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50VGVtcGxhdGUgfHwgX2NvbnRlbnRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtcGFuZWwtZm9vdGVyXCIgKm5nSWY9XCJmb290ZXJGYWNldCB8fCBmb290ZXJUZW1wbGF0ZSB8fCBfZm9vdGVyVGVtcGxhdGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwicC1mb290ZXJcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb290ZXJUZW1wbGF0ZSB8fCBfZm9vdGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICBgLFxuICAgIGFuaW1hdGlvbnM6IFtcbiAgICAgICAgdHJpZ2dlcigncGFuZWxDb250ZW50JywgW1xuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ2hpZGRlbicsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICcwJ1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ3ZvaWQnLFxuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAne3toZWlnaHR9fSdcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB7IHBhcmFtczogeyBoZWlnaHQ6ICcwJyB9IH1cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICAgICAndmlzaWJsZScsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICcqJ1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdHJhbnNpdGlvbigndmlzaWJsZSA8PT4gaGlkZGVuJywgW2FuaW1hdGUoJ3t7dHJhbnNpdGlvblBhcmFtc319JyldKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gaGlkZGVuJywgYW5pbWF0ZSgne3t0cmFuc2l0aW9uUGFyYW1zfX0nKSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IHZpc2libGUnLCBhbmltYXRlKCd7e3RyYW5zaXRpb25QYXJhbXN9fScpKVxuICAgICAgICBdKVxuICAgIF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtQYW5lbFN0eWxlXVxufSlcbmV4cG9ydCBjbGFzcyBQYW5lbCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBCbG9ja2FibGVVSSB7XG4gICAgLyoqXG4gICAgICogRGVmaW5lcyBpZiBjb250ZW50IG9mIHBhbmVsIGNhbiBiZSBleHBhbmRlZCBhbmQgY29sbGFwc2VkLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSB0b2dnbGVhYmxlOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIEhlYWRlciB0ZXh0IG9mIHRoZSBwYW5lbC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoJ2hlYWRlcicpIF9oZWFkZXI6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBEZWZpbmVzIHRoZSBpbml0aWFsIHN0YXRlIG9mIHBhbmVsIGNvbnRlbnQsIHN1cHBvcnRzIG9uZSBvciB0d28td2F5IGJpbmRpbmcgYXMgd2VsbC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgY29sbGFwc2VkOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIElubGluZSBzdHlsZSBvZiB0aGUgY29tcG9uZW50LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHN0eWxlOiB7IFtrbGFzczogc3RyaW5nXTogYW55IH0gfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIFN0eWxlIGNsYXNzIG9mIHRoZSBjb21wb25lbnQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgc3R5bGVDbGFzczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIFBvc2l0aW9uIG9mIHRoZSBpY29ucy5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBpY29uUG9zOiAnc3RhcnQnIHwgJ2VuZCcgfCAnY2VudGVyJyA9ICdlbmQnO1xuICAgIC8qKlxuICAgICAqIEV4cGFuZCBpY29uIG9mIHRoZSB0b2dnbGUgYnV0dG9uLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqIEBkZXByZWNhdGVkIHNpbmNlIHYxNS40LjIsIHVzZSBgaGVhZGVyaWNvbnNgIHRlbXBsYXRlIGluc3RlYWQuXG4gICAgICovXG4gICAgQElucHV0KCkgZXhwYW5kSWNvbjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIENvbGxhcHNlIGljb24gb2YgdGhlIHRvZ2dsZSBidXR0b24uXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICogQGRlcHJlY2F0ZWQgc2luY2UgdjE1LjQuMiwgdXNlIGBoZWFkZXJpY29uc2AgdGVtcGxhdGUgaW5zdGVhZC5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBjb2xsYXBzZUljb246IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBTcGVjaWZpZXMgaWYgaGVhZGVyIG9mIHBhbmVsIGNhbm5vdCBiZSBkaXNwbGF5ZWQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICogQGRlcHJlY2F0ZWQgc2luY2UgdjE1LjQuMiwgdXNlIGBoZWFkZXJpY29uc2AgdGVtcGxhdGUgaW5zdGVhZC5cbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgc2hvd0hlYWRlcjogYm9vbGVhbiA9IHRydWU7XG4gICAgLyoqXG4gICAgICogU3BlY2lmaWVzIHRoZSB0b2dnbGVyIGVsZW1lbnQgdG8gdG9nZ2xlIHRoZSBwYW5lbCBjb250ZW50LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRvZ2dsZXI6ICdpY29uJyB8ICdoZWFkZXInID0gJ2ljb24nO1xuICAgIC8qKlxuICAgICAqIFRyYW5zaXRpb24gb3B0aW9ucyBvZiB0aGUgYW5pbWF0aW9uLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRyYW5zaXRpb25PcHRpb25zOiBzdHJpbmcgPSAnNDAwbXMgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpJztcbiAgICAvKipcbiAgICAgKiBVc2VkIHRvIHBhc3MgYWxsIHByb3BlcnRpZXMgb2YgdGhlIEJ1dHRvblByb3BzIHRvIHRoZSBCdXR0b24gY29tcG9uZW50LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRvZ2dsZUJ1dHRvblByb3BzOiBhbnk7XG4gICAgLyoqXG4gICAgICogRW1pdHRlZCB3aGVuIHRoZSBjb2xsYXBzZWQgY2hhbmdlcy5cbiAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IHZhbHVlIC0gTmV3IFZhbHVlLlxuICAgICAqIEBncm91cCBFbWl0c1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSBjb2xsYXBzZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgICAvKipcbiAgICAgKiBDYWxsYmFjayB0byBpbnZva2UgYmVmb3JlIHBhbmVsIHRvZ2dsZS5cbiAgICAgKiBAcGFyYW0ge1BhbmVsQmVmb3JlVG9nZ2xlRXZlbnR9IGV2ZW50IC0gQ3VzdG9tIHBhbmVsIHRvZ2dsZSBldmVudFxuICAgICAqIEBncm91cCBFbWl0c1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSBvbkJlZm9yZVRvZ2dsZTogRXZlbnRFbWl0dGVyPFBhbmVsQmVmb3JlVG9nZ2xlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxQYW5lbEJlZm9yZVRvZ2dsZUV2ZW50PigpO1xuICAgIC8qKlxuICAgICAqIENhbGxiYWNrIHRvIGludm9rZSBhZnRlciBwYW5lbCB0b2dnbGUuXG4gICAgICogQHBhcmFtIHtQYW5lbEFmdGVyVG9nZ2xlRXZlbnR9IGV2ZW50IC0gQ3VzdG9tIHBhbmVsIHRvZ2dsZSBldmVudFxuICAgICAqIEBncm91cCBFbWl0c1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSBvbkFmdGVyVG9nZ2xlOiBFdmVudEVtaXR0ZXI8UGFuZWxBZnRlclRvZ2dsZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8UGFuZWxBZnRlclRvZ2dsZUV2ZW50PigpO1xuXG4gICAgQENvbnRlbnRDaGlsZChGb290ZXIpIGZvb3RlckZhY2V0OiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIGFuaW1hdGluZzogTnVsbGFibGU8Ym9vbGVhbj47XG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0ZW1wbGF0ZSBvcHRpb24gZm9yIGhlYWRlci5cbiAgICAgKiBAZ3JvdXAgVGVtcGxhdGVzXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnaGVhZGVyJywgeyBkZXNjZW5kYW50czogZmFsc2UgfSkgaGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0ZW1wbGF0ZSBvcHRpb24gZm9yIGljb24uXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPG5nLXRlbXBsYXRlICNpY29uPiA8L25nLXRlbXBsYXRlPlxuICAgICAqIGBgYFxuICAgICAqIEBncm91cCBUZW1wbGF0ZXNcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKCdpY29uJywgeyBkZXNjZW5kYW50czogZmFsc2UgfSkgaWNvblRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0ZW1wbGF0ZSBvcHRpb24gZm9yIGNvbnRlbnQuXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPG5nLXRlbXBsYXRlICNjb250ZW50PiA8L25nLXRlbXBsYXRlPlxuICAgICAqIGBgYFxuICAgICAqIEBncm91cCBUZW1wbGF0ZXNcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKCdjb250ZW50JywgeyBkZXNjZW5kYW50czogZmFsc2UgfSkgY29udGVudFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0ZW1wbGF0ZSBvcHRpb24gZm9yIGZvb3Rlci5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8bmctdGVtcGxhdGUgI2Zvb3Rlcj4gPC9uZy10ZW1wbGF0ZT5cbiAgICAgKiBgYGBcbiAgICAgKiBAZ3JvdXAgVGVtcGxhdGVzXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnZm9vdGVyJywgeyBkZXNjZW5kYW50czogZmFsc2UgfSkgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmVzIHRlbXBsYXRlIG9wdGlvbiBmb3IgaGVhZGVySWNvbi5cbiAgICAgKiBAdHlwZSB7VGVtcGxhdGVSZWY8UGFuZWxIZWFkZXJJY29uc1RlbXBsYXRlQ29udGV4dD59IGNvbnRleHQgLSBjb250ZXh0IG9mIHRoZSB0ZW1wbGF0ZS5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8bmctdGVtcGxhdGUgI2hlYWRlcmljb25zIGxldC1jb2xsYXBzZWQ+IDwvbmctdGVtcGxhdGU+XG4gICAgICogYGBgXG4gICAgICogQHNlZSB7QGxpbmsgUGFuZWxIZWFkZXJJY29uc1RlbXBsYXRlQ29udGV4dH1cbiAgICAgKiBAZ3JvdXAgVGVtcGxhdGVzXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnaGVhZGVyaWNvbnMnLCB7IGRlc2NlbmRhbnRzOiBmYWxzZSB9KSBoZWFkZXJJY29uc1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxQYW5lbEhlYWRlckljb25zVGVtcGxhdGVDb250ZXh0PiB8IHVuZGVmaW5lZDtcblxuICAgIF9oZWFkZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZDtcblxuICAgIF9pY29uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cbiAgICBfY29udGVudFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgX2Zvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgX2hlYWRlckljb25zVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cbiAgICBAVmlld0NoaWxkKCdjb250ZW50V3JhcHBlcicpIGNvbnRlbnRXcmFwcGVyVmlld0NoaWxkOiBFbGVtZW50UmVmO1xuXG4gICAgcmVhZG9ubHkgaWQgPSB1dWlkKCdwbl9pZF8nKTtcblxuICAgIGdldCBidXR0b25BcmlhTGFiZWwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oZWFkZXI7XG4gICAgfVxuXG4gICAgX2NvbXBvbmVudFN0eWxlID0gaW5qZWN0KFBhbmVsU3R5bGUpO1xuXG4gICAgb25IZWFkZXJDbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAodGhpcy50b2dnbGVyID09PSAnaGVhZGVyJykge1xuICAgICAgICAgICAgdGhpcy50b2dnbGUoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25JY29uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgaWYgKHRoaXMudG9nZ2xlciA9PT0gJ2ljb24nKSB7XG4gICAgICAgICAgICB0aGlzLnRvZ2dsZShldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0b2dnbGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgaWYgKHRoaXMuYW5pbWF0aW5nKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFuaW1hdGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMub25CZWZvcmVUb2dnbGUuZW1pdCh7IG9yaWdpbmFsRXZlbnQ6IGV2ZW50LCBjb2xsYXBzZWQ6IHRoaXMuY29sbGFwc2VkIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLnRvZ2dsZWFibGUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbGxhcHNlZCkgdGhpcy5leHBhbmQoKTtcbiAgICAgICAgICAgIGVsc2UgdGhpcy5jb2xsYXBzZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBleHBhbmQoKSB7XG4gICAgICAgIHRoaXMuY29sbGFwc2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY29sbGFwc2VkQ2hhbmdlLmVtaXQodGhpcy5jb2xsYXBzZWQpO1xuICAgICAgICB0aGlzLnVwZGF0ZVRhYkluZGV4KCk7XG4gICAgfVxuXG4gICAgY29sbGFwc2UoKSB7XG4gICAgICAgIHRoaXMuY29sbGFwc2VkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5jb2xsYXBzZWRDaGFuZ2UuZW1pdCh0aGlzLmNvbGxhcHNlZCk7XG4gICAgICAgIHRoaXMudXBkYXRlVGFiSW5kZXgoKTtcbiAgICB9XG5cbiAgICBnZXRCbG9ja2FibGVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWwubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXTtcbiAgICB9XG5cbiAgICB1cGRhdGVUYWJJbmRleCgpIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGVudFdyYXBwZXJWaWV3Q2hpbGQpIHtcbiAgICAgICAgICAgIGNvbnN0IGZvY3VzYWJsZUVsZW1lbnRzID0gdGhpcy5jb250ZW50V3JhcHBlclZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2lucHV0LCBidXR0b24sIHNlbGVjdCwgYSwgdGV4dGFyZWEsIFt0YWJpbmRleF06bm90KFt0YWJpbmRleD1cIi0xXCJdKScpO1xuICAgICAgICAgICAgZm9jdXNhYmxlRWxlbWVudHMuZm9yRWFjaCgoZWxlbWVudDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb2xsYXBzZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgJy0xJyk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ3RhYmluZGV4Jyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbktleURvd24oZXZlbnQpIHtcbiAgICAgICAgaWYgKGV2ZW50LmNvZGUgPT09ICdFbnRlcicgfHwgZXZlbnQuY29kZSA9PT0gJ1NwYWNlJykge1xuICAgICAgICAgICAgdGhpcy50b2dnbGUoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uVG9nZ2xlRG9uZShldmVudDogYW55KSB7XG4gICAgICAgIHRoaXMuYW5pbWF0aW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMub25BZnRlclRvZ2dsZS5lbWl0KHsgb3JpZ2luYWxFdmVudDogZXZlbnQsIGNvbGxhcHNlZDogdGhpcy5jb2xsYXBzZWQgfSk7XG4gICAgfVxuXG4gICAgQENvbnRlbnRDaGlsZHJlbihQcmltZVRlbXBsYXRlKSB0ZW1wbGF0ZXM6IFF1ZXJ5TGlzdDxQcmltZVRlbXBsYXRlPiB8IHVuZGVmaW5lZDtcblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgKHRoaXMudGVtcGxhdGVzIGFzIFF1ZXJ5TGlzdDxQcmltZVRlbXBsYXRlPikuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgc3dpdGNoIChpdGVtLmdldFR5cGUoKSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2hlYWRlcic6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2hlYWRlclRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlICdjb250ZW50JzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY29udGVudFRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlICdmb290ZXInOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9mb290ZXJUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAnaWNvbnMnOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9pY29uVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgJ2hlYWRlcmljb25zJzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5faGVhZGVySWNvbnNUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY29udGVudFRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbUGFuZWwsIFNoYXJlZE1vZHVsZV0sXG4gICAgZXhwb3J0czogW1BhbmVsLCBTaGFyZWRNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIFBhbmVsTW9kdWxlIHt9XG4iXX0=
|