cmat 0.0.15 → 0.0.17
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/README.md +2 -2
- package/components/custom-formly/public-api.d.ts +1 -0
- package/components/custom-formly/types/button/button.component.d.ts +19 -3
- package/components/custom-formly/types/cascade/cascade.component.d.ts +3 -2
- package/components/custom-formly/types/checklist/checklist.component.d.ts +3 -2
- package/components/custom-formly/types/chips/chips.component.d.ts +3 -2
- package/components/custom-formly/types/date-range/date-range.component.d.ts +3 -2
- package/components/custom-formly/types/datepicker/datepicker.component.d.ts +3 -2
- package/components/custom-formly/types/multicheckbox/multicheckbox.component.d.ts +3 -2
- package/components/custom-formly/types/number/number.component.d.ts +3 -2
- package/components/custom-formly/types/quill/quill.component.d.ts +3 -2
- package/components/custom-formly/types/radio/radio.component.d.ts +3 -2
- package/components/custom-formly/types/rating/rating.component.d.ts +3 -2
- package/components/custom-formly/types/repeat/repeat.component.d.ts +3 -2
- package/components/custom-formly/types/select/select.component.d.ts +3 -2
- package/components/custom-formly/types/select-tree/select-tree.component.d.ts +2 -2
- package/components/custom-formly/types/stepper/stepper.type.d.ts +2 -2
- package/components/custom-formly/types/table/table.component.d.ts +11 -5
- package/components/custom-formly/types/tags/tags.component.d.ts +3 -2
- package/components/custom-formly/types/upload/upload.component.d.ts +3 -2
- package/components/custom-formly/wrappers/form-field/form-field.component.d.ts +25 -0
- package/components/material-datetimepicker/datetimepicker.d.ts +4 -3
- package/components/select-search/select-search.component.d.ts +2 -1
- package/components/upload/upload-queue/upload-queue.component.d.ts +3 -2
- package/esm2022/animations/dropdown.mjs +1 -1
- package/esm2022/components/adapter/dayjs-date-adapter.mjs +4 -4
- package/esm2022/components/adapter/dayjs-datetime-adapter.mjs +4 -4
- package/esm2022/components/adapter/native-datetime-adapter.mjs +4 -4
- package/esm2022/components/breadcrumb/breadcrumb-item.directive.mjs +4 -4
- package/esm2022/components/breadcrumb/breadcrumb.component.mjs +4 -4
- package/esm2022/components/breadcrumb/breadcrumb.service.mjs +5 -5
- package/esm2022/components/card/card.component.mjs +5 -5
- package/esm2022/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.mjs +5 -5
- package/esm2022/components/cascade/cascade-list/cascade-list.component.mjs +6 -6
- package/esm2022/components/cascade/cascade-menu/cascade-menu.component.mjs +5 -5
- package/esm2022/components/cascade/options.interface.mjs +1 -1
- package/esm2022/components/chip-input/chip-input.component.mjs +6 -7
- package/esm2022/components/custom-formly/extension/addons.extension.mjs +2 -2
- package/esm2022/components/custom-formly/public-api.mjs +2 -1
- package/esm2022/components/custom-formly/types/button/button.component.mjs +57 -15
- package/esm2022/components/custom-formly/types/cascade/cascade.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/checklist/checklist.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/chips/chips.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/color-picker/color-picker.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/date-range/date-range.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/datepicker/datepicker.component.mjs +5 -5
- package/esm2022/components/custom-formly/types/multicheckbox/multicheckbox.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/number/number.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/quill/quill.component.mjs +6 -6
- package/esm2022/components/custom-formly/types/radio/radio.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/rating/rating.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/repeat/repeat.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/select/select.component.mjs +16 -15
- package/esm2022/components/custom-formly/types/select-tree/select-tree.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/stepper/horizontal/stepper.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/stepper/stepper.type.mjs +1 -1
- package/esm2022/components/custom-formly/types/stepper/vertical/stepper.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/table/table.component.mjs +28 -14
- package/esm2022/components/custom-formly/types/tabs/tab.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/tags/tags.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/textarea/textarea.component.mjs +4 -4
- package/esm2022/components/custom-formly/types/upload/upload.component.mjs +4 -4
- package/esm2022/components/custom-formly/wrappers/addons/addons.component.mjs +4 -4
- package/esm2022/components/custom-formly/wrappers/card/card.component.mjs +4 -4
- package/esm2022/components/custom-formly/wrappers/expansion/expansion.component.mjs +4 -4
- package/esm2022/components/custom-formly/wrappers/form-field/form-field.component.mjs +47 -0
- package/esm2022/components/custom-formly/wrappers/panel/panel.component.mjs +4 -4
- package/esm2022/components/date-range/date-range.component.mjs +6 -6
- package/esm2022/components/drawer/drawer.component.mjs +4 -4
- package/esm2022/components/drawer/drawer.service.mjs +4 -4
- package/esm2022/components/fullscreen/fullscreen.component.mjs +4 -4
- package/esm2022/components/highlight/highlight.component.mjs +4 -4
- package/esm2022/components/highlight/highlight.service.mjs +4 -4
- package/esm2022/components/json-editor/json-editor.component.mjs +6 -6
- package/esm2022/components/masonry/masonry.component.mjs +4 -4
- package/esm2022/components/material-color-picker/material-color-picker.component.mjs +5 -5
- package/esm2022/components/material-datetimepicker/calendar-body.mjs +5 -5
- package/esm2022/components/material-datetimepicker/calendar.mjs +5 -5
- package/esm2022/components/material-datetimepicker/clock.mjs +5 -5
- package/esm2022/components/material-datetimepicker/datetimepicker-input.mjs +4 -4
- package/esm2022/components/material-datetimepicker/datetimepicker-intl.mjs +4 -4
- package/esm2022/components/material-datetimepicker/datetimepicker-toggle.mjs +8 -8
- package/esm2022/components/material-datetimepicker/datetimepicker.mjs +14 -11
- package/esm2022/components/material-datetimepicker/month-view.mjs +5 -5
- package/esm2022/components/material-datetimepicker/multi-year-view.mjs +4 -4
- package/esm2022/components/material-datetimepicker/time.mjs +8 -8
- package/esm2022/components/material-datetimepicker/year-view.mjs +4 -4
- package/esm2022/components/navigation/horizontal/components/basic/basic.component.mjs +5 -5
- package/esm2022/components/navigation/horizontal/components/branch/branch.component.mjs +4 -4
- package/esm2022/components/navigation/horizontal/components/divider/divider.component.mjs +4 -4
- package/esm2022/components/navigation/horizontal/components/spacer/spacer.component.mjs +4 -4
- package/esm2022/components/navigation/horizontal/horizontal.component.mjs +4 -4
- package/esm2022/components/navigation/navigation.service.mjs +4 -4
- package/esm2022/components/navigation/vertical/components/aside/aside.component.mjs +4 -4
- package/esm2022/components/navigation/vertical/components/basic/basic.component.mjs +5 -5
- package/esm2022/components/navigation/vertical/components/collapsable/collapsable.component.mjs +5 -5
- package/esm2022/components/navigation/vertical/components/divider/divider.component.mjs +4 -4
- package/esm2022/components/navigation/vertical/components/group/group.component.mjs +4 -4
- package/esm2022/components/navigation/vertical/components/spacer/spacer.component.mjs +4 -4
- package/esm2022/components/navigation/vertical/vertical.component.mjs +4 -4
- package/esm2022/components/pagination/pagination.component.mjs +5 -5
- package/esm2022/components/pagination/pagination.directive.mjs +4 -4
- package/esm2022/components/pagination/pagination.pipe.mjs +4 -4
- package/esm2022/components/pagination/pagination.service.mjs +4 -4
- package/esm2022/components/password-strength/mat-pass-toggle-visibility/mat-pass-toggle-visibility.component.mjs +5 -5
- package/esm2022/components/password-strength/mat-password-strength/mat-password-strength.component.mjs +4 -4
- package/esm2022/components/password-strength/mat-password-strength-info/mat-password-strength-info.component.mjs +5 -5
- package/esm2022/components/popover/popover-trigger.mjs +4 -4
- package/esm2022/components/popover/popover.component.mjs +4 -4
- package/esm2022/components/popover/popover.target.mjs +4 -4
- package/esm2022/components/progress-bar/progress-bar.component.mjs +5 -5
- package/esm2022/components/rating/rating.component.mjs +5 -5
- package/esm2022/components/select-search/select-no-entries-found.directive.mjs +4 -4
- package/esm2022/components/select-search/select-search-clear.directive.mjs +4 -4
- package/esm2022/components/select-search/select-search.component.mjs +6 -6
- package/esm2022/components/select-tree/select-tree.component.mjs +6 -6
- package/esm2022/components/timeline/timeline-item/timeline-item.component.mjs +11 -11
- package/esm2022/components/timeline/timeline.component.mjs +4 -4
- package/esm2022/components/toast/toast-modal.component.mjs +5 -5
- package/esm2022/components/toast/toast.component.mjs +4 -4
- package/esm2022/components/toast/toast.service.mjs +4 -4
- package/esm2022/components/transfer-picker/filter/filter.component.mjs +5 -5
- package/esm2022/components/transfer-picker/search/search.component.mjs +5 -5
- package/esm2022/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.mjs +5 -5
- package/esm2022/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.mjs +5 -5
- package/esm2022/components/transfer-picker/transfer-picker.component.mjs +5 -5
- package/esm2022/components/transfer-picker/transfer-picker.service.mjs +4 -4
- package/esm2022/components/upload/files.util.service.mjs +4 -4
- package/esm2022/components/upload/upload-queue/upload-queue.component.mjs +13 -12
- package/esm2022/components/upload/upload.component.mjs +4 -4
- package/esm2022/directives/animate-on-scroll/animate-on-scroll.directive.mjs +4 -4
- package/esm2022/directives/animate-on-scroll/scroll.service.mjs +4 -4
- package/esm2022/directives/autofocus/autofocus.directive.mjs +4 -4
- package/esm2022/directives/debounce/abstract-debounce.directive.mjs +4 -4
- package/esm2022/directives/debounce/debounce-click.directive.mjs +4 -4
- package/esm2022/directives/debounce/debounce-keyup.directive.mjs +4 -4
- package/esm2022/directives/digit-only/digit-only.directive.mjs +10 -10
- package/esm2022/directives/digit-only/mask.directive.mjs +5 -5
- package/esm2022/directives/equal-validator/equal-validator.directive.mjs +4 -4
- package/esm2022/lib/mock-api/mock-api.interceptor.mjs +4 -4
- package/esm2022/lib/mock-api/mock-api.service.mjs +4 -4
- package/esm2022/pipes/bytes/bytes.pipe.mjs +4 -4
- package/esm2022/pipes/date-format/date-format.pipe.mjs +7 -5
- package/esm2022/pipes/find-by-key/find-by-key.pipe.mjs +4 -4
- package/esm2022/pipes/group-by/group-by.pipe.mjs +4 -4
- package/esm2022/pipes/keys/keys.pipe.mjs +4 -4
- package/esm2022/pipes/secure/secure-pipe.mjs +4 -4
- package/esm2022/pipes/uppercase/uppercase.pipe.mjs +4 -4
- package/esm2022/services/alert/alert.service.mjs +4 -4
- package/esm2022/services/config/config.service.mjs +4 -4
- package/esm2022/services/config/urlStateConfig.service.mjs +4 -4
- package/esm2022/services/confirmation/confirmation.service.mjs +4 -4
- package/esm2022/services/confirmation/dialog/dialog.component.mjs +5 -5
- package/esm2022/services/data/data.service.mjs +6 -6
- package/esm2022/services/loading/loading.interceptor.mjs +5 -5
- package/esm2022/services/loading/loading.service.mjs +4 -4
- package/esm2022/services/local-storage/local-storage.service.mjs +4 -4
- package/esm2022/services/media-watcher/media-watcher.service.mjs +4 -4
- package/esm2022/services/platform/platform.service.mjs +4 -4
- package/esm2022/services/splash-screen/splash-screen.service.mjs +4 -4
- package/esm2022/services/title/title.service.mjs +4 -4
- package/esm2022/services/translation/translation.service.mjs +5 -5
- package/esm2022/services/utils/utils.service.mjs +40 -7
- package/fesm2022/cmat-animations.mjs.map +1 -1
- package/fesm2022/cmat-components-adapter.mjs +9 -9
- package/fesm2022/cmat-components-adapter.mjs.map +1 -1
- package/fesm2022/cmat-components-breadcrumb.mjs +10 -10
- package/fesm2022/cmat-components-breadcrumb.mjs.map +1 -1
- package/fesm2022/cmat-components-card.mjs +4 -4
- package/fesm2022/cmat-components-card.mjs.map +1 -1
- package/fesm2022/cmat-components-cascade.mjs +13 -13
- package/fesm2022/cmat-components-cascade.mjs.map +1 -1
- package/fesm2022/cmat-components-chip-input.mjs +5 -6
- package/fesm2022/cmat-components-chip-input.mjs.map +1 -1
- package/fesm2022/cmat-components-custom-formly.mjs +235 -142
- package/fesm2022/cmat-components-custom-formly.mjs.map +1 -1
- package/fesm2022/cmat-components-date-range.mjs +5 -5
- package/fesm2022/cmat-components-date-range.mjs.map +1 -1
- package/fesm2022/cmat-components-drawer.mjs +6 -6
- package/fesm2022/cmat-components-drawer.mjs.map +1 -1
- package/fesm2022/cmat-components-fullscreen.mjs +3 -3
- package/fesm2022/cmat-components-fullscreen.mjs.map +1 -1
- package/fesm2022/cmat-components-highlight.mjs +6 -6
- package/fesm2022/cmat-components-highlight.mjs.map +1 -1
- package/fesm2022/cmat-components-json-editor.mjs +5 -5
- package/fesm2022/cmat-components-json-editor.mjs.map +1 -1
- package/fesm2022/cmat-components-masonry.mjs +3 -3
- package/fesm2022/cmat-components-masonry.mjs.map +1 -1
- package/fesm2022/cmat-components-material-color-picker.mjs +4 -4
- package/fesm2022/cmat-components-material-color-picker.mjs.map +1 -1
- package/fesm2022/cmat-components-material-datetimepicker.mjs +55 -52
- package/fesm2022/cmat-components-material-datetimepicker.mjs.map +1 -1
- package/fesm2022/cmat-components-navigation.mjs +42 -42
- package/fesm2022/cmat-components-navigation.mjs.map +1 -1
- package/fesm2022/cmat-components-pagination.mjs +13 -13
- package/fesm2022/cmat-components-pagination.mjs.map +1 -1
- package/fesm2022/cmat-components-password-strength.mjs +11 -11
- package/fesm2022/cmat-components-password-strength.mjs.map +1 -1
- package/fesm2022/cmat-components-popover.mjs +9 -9
- package/fesm2022/cmat-components-popover.mjs.map +1 -1
- package/fesm2022/cmat-components-progress-bar.mjs +4 -4
- package/fesm2022/cmat-components-progress-bar.mjs.map +1 -1
- package/fesm2022/cmat-components-rating.mjs +4 -4
- package/fesm2022/cmat-components-rating.mjs.map +1 -1
- package/fesm2022/cmat-components-select-search.mjs +11 -11
- package/fesm2022/cmat-components-select-search.mjs.map +1 -1
- package/fesm2022/cmat-components-select-tree.mjs +5 -5
- package/fesm2022/cmat-components-select-tree.mjs.map +1 -1
- package/fesm2022/cmat-components-timeline.mjs +13 -13
- package/fesm2022/cmat-components-timeline.mjs.map +1 -1
- package/fesm2022/cmat-components-toast.mjs +10 -10
- package/fesm2022/cmat-components-toast.mjs.map +1 -1
- package/fesm2022/cmat-components-transfer-picker.mjs +23 -23
- package/fesm2022/cmat-components-transfer-picker.mjs.map +1 -1
- package/fesm2022/cmat-components-upload.mjs +18 -17
- package/fesm2022/cmat-components-upload.mjs.map +1 -1
- package/fesm2022/cmat-directives-animate-on-scroll.mjs +6 -6
- package/fesm2022/cmat-directives-animate-on-scroll.mjs.map +1 -1
- package/fesm2022/cmat-directives-autofocus.mjs +3 -3
- package/fesm2022/cmat-directives-autofocus.mjs.map +1 -1
- package/fesm2022/cmat-directives-debounce.mjs +9 -9
- package/fesm2022/cmat-directives-debounce.mjs.map +1 -1
- package/fesm2022/cmat-directives-digit-only.mjs +13 -13
- package/fesm2022/cmat-directives-digit-only.mjs.map +1 -1
- package/fesm2022/cmat-directives-equal-validator.mjs +3 -3
- package/fesm2022/cmat-directives-equal-validator.mjs.map +1 -1
- package/fesm2022/cmat-lib-mock-api.mjs +6 -6
- package/fesm2022/cmat-lib-mock-api.mjs.map +1 -1
- package/fesm2022/cmat-pipes-bytes.mjs +3 -3
- package/fesm2022/cmat-pipes-bytes.mjs.map +1 -1
- package/fesm2022/cmat-pipes-date-format.mjs +6 -4
- package/fesm2022/cmat-pipes-date-format.mjs.map +1 -1
- package/fesm2022/cmat-pipes-find-by-key.mjs +3 -3
- package/fesm2022/cmat-pipes-find-by-key.mjs.map +1 -1
- package/fesm2022/cmat-pipes-group-by.mjs +3 -3
- package/fesm2022/cmat-pipes-group-by.mjs.map +1 -1
- package/fesm2022/cmat-pipes-keys.mjs +3 -3
- package/fesm2022/cmat-pipes-keys.mjs.map +1 -1
- package/fesm2022/cmat-pipes-secure.mjs +3 -3
- package/fesm2022/cmat-pipes-secure.mjs.map +1 -1
- package/fesm2022/cmat-pipes-uppercase.mjs +3 -3
- package/fesm2022/cmat-pipes-uppercase.mjs.map +1 -1
- package/fesm2022/cmat-services-alert.mjs +3 -3
- package/fesm2022/cmat-services-alert.mjs.map +1 -1
- package/fesm2022/cmat-services-config.mjs +6 -6
- package/fesm2022/cmat-services-config.mjs.map +1 -1
- package/fesm2022/cmat-services-confirmation.mjs +7 -7
- package/fesm2022/cmat-services-confirmation.mjs.map +1 -1
- package/fesm2022/cmat-services-data.mjs +5 -5
- package/fesm2022/cmat-services-data.mjs.map +1 -1
- package/fesm2022/cmat-services-loading.mjs +7 -7
- package/fesm2022/cmat-services-loading.mjs.map +1 -1
- package/fesm2022/cmat-services-local-storage.mjs +3 -3
- package/fesm2022/cmat-services-local-storage.mjs.map +1 -1
- package/fesm2022/cmat-services-media-watcher.mjs +3 -3
- package/fesm2022/cmat-services-media-watcher.mjs.map +1 -1
- package/fesm2022/cmat-services-platform.mjs +3 -3
- package/fesm2022/cmat-services-platform.mjs.map +1 -1
- package/fesm2022/cmat-services-splash-screen.mjs +3 -3
- package/fesm2022/cmat-services-splash-screen.mjs.map +1 -1
- package/fesm2022/cmat-services-title.mjs +3 -3
- package/fesm2022/cmat-services-title.mjs.map +1 -1
- package/fesm2022/cmat-services-translation.mjs +4 -4
- package/fesm2022/cmat-services-translation.mjs.map +1 -1
- package/fesm2022/cmat-services-utils.mjs +39 -6
- package/fesm2022/cmat-services-utils.mjs.map +1 -1
- package/icons/material-icons/material-solid.svg +3585 -3585
- package/package.json +67 -67
- package/pipes/date-format/date-format.pipe.d.ts +1 -1
- package/services/data/data.service.d.ts +1 -1
- package/services/utils/utils.service.d.ts +4 -0
- package/styles/overrides/angular-material.scss +6 -0
|
@@ -136,10 +136,10 @@ export class CmatVerticalNavigationAsideItemComponent {
|
|
|
136
136
|
// Mark for check
|
|
137
137
|
this._changeDetectorRef.markForCheck();
|
|
138
138
|
}
|
|
139
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
140
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
139
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatVerticalNavigationAsideItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Router }, { token: i2.CmatNavigationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
140
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.10", type: CmatVerticalNavigationAsideItemComponent, isStandalone: true, selector: "cmat-vertical-navigation-aside-item", inputs: { activeItemId: "activeItemId", autoCollapse: "autoCollapse", item: "item", name: "name", skipChildren: "skipChildren", editState: "editState" }, outputs: { editSelectedItemChanged: "editSelectedItemChanged" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cmat-vertical-navigation-item-wrapper\" role=\"presentation\"\r\n [class.cmat-vertical-navigation-item-has-subtitle]=\"!!item.subTitle\" [ngClass]=\"item.classes?.wrapper\" (click)=\"selectItem(item);\">\r\n\r\n <div class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active': active,\r\n 'cmat-vertical-navigation-item-disabled': item.disabled,\r\n 'cmat-vertical-navigation-item-active-forced': item.active}\" [matTooltip]=\"item.tooltip || ''\">\r\n\r\n <!-- Icon -->\r\n @if (item.icon) {\r\n <mat-icon class=\"cmat-vertical-navigation-item-icon\" [ngClass]=\"item.classes?.icon\" [svgIcon]=\"item.icon\">\r\n </mat-icon>\r\n }\r\n\r\n <!-- Title & Subtitle -->\r\n <div class=\"cmat-vertical-navigation-item-title-wrapper\">\r\n <div class=\"cmat-vertical-navigation-item-title\">\r\n <span [ngClass]=\"item.classes?.title\">\r\n {{item.title}}\r\n </span>\r\n </div>\r\n @if (item.subTitle) {\r\n <div class=\"cmat-vertical-navigation-item-subtitle\">\r\n <span [ngClass]=\"item.classes?.subtitle\">\r\n {{item.subTitle}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n\r\n <!-- Badge -->\r\n @if (item.badge) {\r\n <div class=\"cmat-vertical-navigation-item-badge\">\r\n <div class=\"cmat-vertical-navigation-item-badge-content\" [ngClass]=\"item.badge.classes\">\r\n {{item.badge.title}}\r\n </div>\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n</div>\r\n\r\n@if (!skipChildren) {\r\n <div class=\"cmat-vertical-navigation-item-children\">\r\n @for (item of item.children; track trackByFn($index, item)) {\r\n <!-- Skip the hidden items -->\r\n @if ((item.hidden && !item.hidden(item)) || !item.hidden) {\r\n <!-- Basic -->\r\n @if (item.type === 'basic') {\r\n <cmat-vertical-navigation-basic-item [item]=\"item\" [name]=\"name\" [editState]=\"editState\" (editSelectedItemChanged)=\"selectItem($event)\">\r\n </cmat-vertical-navigation-basic-item>\r\n }\r\n <!-- Collapsable -->\r\n @if (item.type === 'collapsable') {\r\n <cmat-vertical-navigation-collapsable-item [item]=\"item\" [name]=\"name\" [editState]=\"editState\" [autoCollapse]=\"autoCollapse\"\r\n (editSelectedItemChanged)=\"selectItem($event)\"></cmat-vertical-navigation-collapsable-item>\r\n }\r\n <!-- Divider -->\r\n @if (item.type === 'divider') {\r\n <cmat-vertical-navigation-divider-item [item]=\"item\" [name]=\"name\" [editState]=\"editState\" (editSelectedItemChanged)=\"selectItem($event)\">\r\n </cmat-vertical-navigation-divider-item>\r\n }\r\n <!-- Group -->\r\n @if (item.type === 'group') {\r\n <cmat-vertical-navigation-group-item [item]=\"item\" [name]=\"name\" [editState]=\"editState\" (editSelectedItemChanged)=\"selectItem($event)\">\r\n </cmat-vertical-navigation-group-item>\r\n }\r\n <!-- Spacer -->\r\n @if (item.type === 'spacer') {\r\n <cmat-vertical-navigation-spacer-item [item]=\"item\" [name]=\"name\" [editState]=\"editState\" (editSelectedItemChanged)=\"selectItem($event)\">\r\n </cmat-vertical-navigation-spacer-item>\r\n }\r\n }\r\n }\r\n </div>\r\n}", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: CmatVerticalNavigationBasicItemComponent, selector: "cmat-vertical-navigation-basic-item", inputs: ["item", "name", "editState"], outputs: ["editSelectedItemChanged"] }, { kind: "component", type: CmatVerticalNavigationCollapsableItemComponent, selector: "cmat-vertical-navigation-collapsable-item", inputs: ["autoCollapse", "item", "name", "editState"], outputs: ["editSelectedItemChanged"] }, { kind: "component", type: CmatVerticalNavigationDividerItemComponent, selector: "cmat-vertical-navigation-divider-item", inputs: ["item", "name", "editState"], outputs: ["editSelectedItemChanged"] }, { kind: "component", type: CmatVerticalNavigationGroupItemComponent, selector: "cmat-vertical-navigation-group-item", inputs: ["autoCollapse", "item", "name", "editState"], outputs: ["editSelectedItemChanged"] }, { kind: "component", type: CmatVerticalNavigationSpacerItemComponent, selector: "cmat-vertical-navigation-spacer-item", inputs: ["item", "name", "editState"], outputs: ["editSelectedItemChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
141
141
|
}
|
|
142
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
142
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatVerticalNavigationAsideItemComponent, decorators: [{
|
|
143
143
|
type: Component,
|
|
144
144
|
args: [{ selector: 'cmat-vertical-navigation-aside-item', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgClass, MatTooltipModule, MatIconModule, CmatVerticalNavigationBasicItemComponent,
|
|
145
145
|
CmatVerticalNavigationCollapsableItemComponent, CmatVerticalNavigationDividerItemComponent,
|
|
@@ -159,4 +159,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImpor
|
|
|
159
159
|
}], editSelectedItemChanged: [{
|
|
160
160
|
type: Output
|
|
161
161
|
}] } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNpZGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL25hdmlnYXRpb24vdmVydGljYWwvY29tcG9uZW50cy9hc2lkZS9hc2lkZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbmF2aWdhdGlvbi92ZXJ0aWNhbC9jb21wb25lbnRzL2FzaWRlL2FzaWRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2hLLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSW5ELE9BQU8sRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSw4Q0FBOEMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3RHLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzFGLE9BQU8sRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFZdkYsTUFB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QUFFLENBQUM7SUFDM0MsQ0FBQzs4R0FoS1Esd0NBQXdDO2tHQUF4Qyx3Q0FBd0MsK1VDM0JyRCx3MUdBMkVDLDRDRHBEYSxPQUFPLG1GQUFFLGdCQUFnQiw0VEFBRSxhQUFhLG9MQUFFLHdDQUF3Qyw2SkFDdkYsOENBQThDLG1MQUFFLDBDQUEwQywrSkFDMUYsd0NBQXdDLDZLQUFFLHlDQUF5Qzs7MkZBRS9FLHdDQUF3QztrQkFWcEQsU0FBUzsrQkFDSSxxQ0FBcUMsbUJBRzlCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSx3Q0FBd0M7d0JBQ3ZGLDhDQUE4QyxFQUFFLDBDQUEwQzt3QkFDMUYsd0NBQXdDLEVBQUUseUNBQXlDLENBQUM7K0lBUWhGLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDYSx1QkFBdUI7c0JBQXpDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xyXG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ21hdE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vbmF2aWdhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ21hdE5hdmlnYXRpb25JdGVtIH0gZnJvbSAnLi4vLi4vLi4vbmF2aWdhdGlvbi50eXBlcyc7XHJcbmltcG9ydCB7IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi92ZXJ0aWNhbC92ZXJ0aWNhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQmFzaWNJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzaWMvYmFzaWMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbGxhcHNhYmxlSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2NvbGxhcHNhYmxlL2NvbGxhcHNhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25EaXZpZGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uR3JvdXBJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JvdXAvZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ21hdFZlcnRpY2FsTmF2aWdhdGlvblNwYWNlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9zcGFjZXIvc3BhY2VyLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWFzaWRlLWl0ZW0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FzaWRlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlczogW10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbTmdDbGFzcywgTWF0VG9vbHRpcE1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkJhc2ljSXRlbUNvbXBvbmVudCxcclxuICAgICAgICAgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbGxhcHNhYmxlSXRlbUNvbXBvbmVudCwgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkRpdmlkZXJJdGVtQ29tcG9uZW50LCBcclxuICAgICAgICAgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkdyb3VwSXRlbUNvbXBvbmVudCwgQ21hdFZlcnRpY2FsTmF2aWdhdGlvblNwYWNlckl0ZW1Db21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQXNpZGVJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICAvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cclxuICAgIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9hdXRvQ29sbGFwc2U6IEJvb2xlYW5JbnB1dDtcclxuICAgIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9za2lwQ2hpbGRyZW46IEJvb2xlYW5JbnB1dDtcclxuICAgIC8qIGVzbGludC1lbmFibGUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uICovXHJcblxyXG4gICAgQElucHV0KCkgYWN0aXZlSXRlbUlkOiBzdHJpbmcgfCBudWxsO1xyXG4gICAgQElucHV0KCkgYXV0b0NvbGxhcHNlOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtO1xyXG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgc2tpcENoaWxkcmVuOiBib29sZWFuOyAgIFxyXG4gICAgQElucHV0KCkgZWRpdFN0YXRlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDbWF0TmF2aWdhdGlvbkl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxDbWF0TmF2aWdhdGlvbkl0ZW0+KCk7XHJcbiAgICBcclxuICAgIGFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBfY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDogQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDtcclxuICAgIHByaXZhdGUgX3Vuc3Vic2NyaWJlQWxsOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBfY21hdE5hdmlnYXRpb25TZXJ2aWNlOiBDbWF0TmF2aWdhdGlvblNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBAIExpZmVjeWNsZSBob29rc1xyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE9uIGNoYW5nZXNcclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gY2hhbmdlc1xyXG4gICAgICovXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgLy8gQWN0aXZlIGl0ZW0gaWRcclxuICAgICAgICBpZiAoJ2FjdGl2ZUl0ZW1JZCcgaW4gY2hhbmdlcykge1xyXG4gICAgICAgICAgICAvLyBNYXJrIGlmIGFjdGl2ZVxyXG4gICAgICAgICAgICB0aGlzLl9tYXJrSWZBY3RpdmUodGhpcy5fcm91dGVyLnVybCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT24gaW5pdFxyXG4gICAgICovXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICAvLyBNYXJrIGlmIGFjdGl2ZVxyXG4gICAgICAgIHRoaXMuX21hcmtJZkFjdGl2ZSh0aGlzLl9yb3V0ZXIudXJsKTtcclxuXHJcbiAgICAgICAgLy8gQXR0YWNoIGEgbGlzdGVuZXIgdG8gdGhlIE5hdmlnYXRpb25FbmQgZXZlbnRcclxuICAgICAgICB0aGlzLl9yb3V0ZXIuZXZlbnRzXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCk6IGV2ZW50IGlzIE5hdmlnYXRpb25FbmQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcclxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl91bnN1YnNjcmliZUFsbClcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudDogTmF2aWdhdGlvbkVuZCkgPT4ge1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIE1hcmsgaWYgYWN0aXZlXHJcbiAgICAgICAgICAgICAgICB0aGlzLl9tYXJrSWZBY3RpdmUoZXZlbnQudXJsQWZ0ZXJSZWRpcmVjdHMpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gR2V0IHRoZSBwYXJlbnQgbmF2aWdhdGlvbiBjb21wb25lbnRcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50ID0gdGhpcy5fY21hdE5hdmlnYXRpb25TZXJ2aWNlLmdldENvbXBvbmVudCh0aGlzLm5hbWUpO1xyXG5cclxuICAgICAgICAvLyBTdWJzY3JpYmUgdG8gb25SZWZyZXNoZWQgb24gdGhlIG5hdmlnYXRpb24gY29tcG9uZW50XHJcbiAgICAgICAgdGhpcy5fY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudC5vblJlZnJlc2hlZC5waXBlKFxyXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmVBbGwpXHJcbiAgICAgICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG5cclxuICAgICAgICAgICAgLy8gTWFyayBmb3IgY2hlY2tcclxuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBPbiBkZXN0cm95XHJcbiAgICAgKi9cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFVuc3Vic2NyaWJlIGZyb20gYWxsIHN1YnNjcmlwdGlvbnNcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KHZvaWQgMCk7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQCBQdWJsaWMgbWV0aG9kc1xyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFRyYWNrIGJ5IGZ1bmN0aW9uIGZvciBuZ0ZvciBsb29wc1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpbmRleFxyXG4gICAgICogQHBhcmFtIGl0ZW1cclxuICAgICAqL1xyXG4gICAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0uaWQgfHwgaW5kZXg7XHJcbiAgICB9XHJcblxyXG4gICAgc2VsZWN0SXRlbShpdGVtOiBDbWF0TmF2aWdhdGlvbkl0ZW0pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkLm5leHQoaXRlbSk7XHJcbiAgICB9XHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQCBQcml2YXRlIG1ldGhvZHNcclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiB0aGUgZ2l2ZW4gaXRlbSBoYXMgdGhlIGdpdmVuIHVybFxyXG4gICAgICogaW4gb25lIG9mIGl0cyBjaGlsZHJlblxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpdGVtXHJcbiAgICAgKiBAcGFyYW0gY3VycmVudFVybFxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBfaGFzQWN0aXZlQ2hpbGQoaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtLCBjdXJyZW50VXJsOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGl0ZW0uY2hpbGRyZW47XHJcblxyXG4gICAgICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbikge1xyXG4gICAgICAgICAgICBpZiAoY2hpbGQuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9oYXNBY3RpdmVDaGlsZChjaGlsZCwgY3VycmVudFVybCkpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gU2tpcCBpdGVtcyBvdGhlciB0aGFuICdiYXNpYydcclxuICAgICAgICAgICAgaWYgKGNoaWxkLnR5cGUgIT09ICdiYXNpYycpIHtcclxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBDaGVjayBpZiB0aGUgY2hpbGQgaGFzIGEgbGluayBhbmQgaXMgYWN0aXZlXHJcbiAgICAgICAgICAgIGlmIChjaGlsZC5saW5rICYmIHRoaXMuX3JvdXRlci5pc0FjdGl2ZShjaGlsZC5saW5rLCB7XHJcbiAgICAgICAgICAgICAgICBwYXRoczogY2hpbGQuZXhhY3RNYXRjaCB8fCBmYWxzZSA/ICdleGFjdCcgOiAnc3Vic2V0JyxcclxuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiBjaGlsZC5leGFjdE1hdGNoIHx8IGZhbHNlID8gJ2V4YWN0JyA6ICdzdWJzZXQnLCBmcmFnbWVudDogJ2lnbm9yZWQnLCBtYXRyaXhQYXJhbXM6ICdpZ25vcmVkJ1xyXG4gICAgICAgICAgICB9KSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIERlY2lkZSBhbmQgbWFyayBpZiB0aGUgaXRlbSBpcyBhY3RpdmVcclxuICAgICAqXHJcbiAgICAgKiBAcHJpdmF0ZVxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIF9tYXJrSWZBY3RpdmUoY3VycmVudFVybDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGFjdGl2ZUl0ZW1JZCBpcyBlcXVhbHMgdG8gdGhpcyBpdGVtIGlkXHJcbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0aGlzLmFjdGl2ZUl0ZW1JZCA9PT0gdGhpcy5pdGVtLmlkO1xyXG5cclxuICAgICAgICAvLyBJZiB0aGUgYXNpZGUgaGFzIGEgY2hpbGRyZW4gdGhhdCBpcyBhY3RpdmUsXHJcbiAgICAgICAgLy8gYWx3YXlzIG1hcmsgaXQgYXMgYWN0aXZlXHJcbiAgICAgICAgaWYgKHRoaXMuX2hhc0FjdGl2ZUNoaWxkKHRoaXMuaXRlbSwgY3VycmVudFVybCkpIHtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gTWFyayBmb3IgY2hlY2tcclxuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0td3JhcHBlclwiIHJvbGU9XCJwcmVzZW50YXRpb25cIlxyXG4gIFtjbGFzcy5jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1oYXMtc3VidGl0bGVdPVwiISFpdGVtLnN1YlRpdGxlXCIgW25nQ2xhc3NdPVwiaXRlbS5jbGFzc2VzPy53cmFwcGVyXCIgKGNsaWNrKT1cInNlbGVjdEl0ZW0oaXRlbSk7XCI+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtXCIgW25nQ2xhc3NdPVwieydjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1hY3RpdmUnOiBhY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWRpc2FibGVkJzogaXRlbS5kaXNhYmxlZCxcclxuICAgICAgICAgICAgICAgICAgICAnY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYWN0aXZlLWZvcmNlZCc6IGl0ZW0uYWN0aXZlfVwiIFttYXRUb29sdGlwXT1cIml0ZW0udG9vbHRpcCB8fCAnJ1wiPlxyXG5cclxuICAgIDwhLS0gSWNvbiAtLT5cclxuICAgIEBpZiAoaXRlbS5pY29uKSB7XHJcbiAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWljb25cIiBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/Lmljb25cIiBbc3ZnSWNvbl09XCJpdGVtLmljb25cIj5cclxuICAgICAgPC9tYXQtaWNvbj5cclxuICAgIH1cclxuXHJcbiAgICA8IS0tIFRpdGxlICYgU3VidGl0bGUgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tdGl0bGUtd3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tdGl0bGVcIj5cclxuICAgICAgICA8c3BhbiBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/LnRpdGxlXCI+XHJcbiAgICAgICAgICB7e2l0ZW0udGl0bGV9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIEBpZiAoaXRlbS5zdWJUaXRsZSkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1zdWJ0aXRsZVwiPlxyXG4gICAgICAgICAgPHNwYW4gW25nQ2xhc3NdPVwiaXRlbS5jbGFzc2VzPy5zdWJ0aXRsZVwiPlxyXG4gICAgICAgICAgICB7e2l0ZW0uc3ViVGl0bGV9fVxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8IS0tIEJhZGdlIC0tPlxyXG4gICAgQGlmIChpdGVtLmJhZGdlKSB7XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1iYWRnZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1iYWRnZS1jb250ZW50XCIgW25nQ2xhc3NdPVwiaXRlbS5iYWRnZS5jbGFzc2VzXCI+XHJcbiAgICAgICAgICB7e2l0ZW0uYmFkZ2UudGl0bGV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIH1cclxuXHJcbiAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuXHJcbkBpZiAoIXNraXBDaGlsZHJlbikge1xyXG4gIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1jaGlsZHJlblwiPlxyXG4gICAgQGZvciAoaXRlbSBvZiBpdGVtLmNoaWxkcmVuOyB0cmFjayB0cmFja0J5Rm4oJGluZGV4LCBpdGVtKSkge1xyXG4gICAgICA8IS0tIFNraXAgdGhlIGhpZGRlbiBpdGVtcyAtLT5cclxuICAgICAgQGlmICgoaXRlbS5oaWRkZW4gJiYgIWl0ZW0uaGlkZGVuKGl0ZW0pKSB8fCAhaXRlbS5oaWRkZW4pIHtcclxuICAgICAgICA8IS0tIEJhc2ljIC0tPlxyXG4gICAgICAgIEBpZiAoaXRlbS50eXBlID09PSAnYmFzaWMnKSB7XHJcbiAgICAgICAgICA8Y21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWJhc2ljLWl0ZW0gW2l0ZW1dPVwiaXRlbVwiIFtuYW1lXT1cIm5hbWVcIiBbZWRpdFN0YXRlXT1cImVkaXRTdGF0ZVwiIChlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZCk9XCJzZWxlY3RJdGVtKCRldmVudClcIj5cclxuICAgICAgICAgIDwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWJhc2ljLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDwhLS0gQ29sbGFwc2FibGUgLS0+XHJcbiAgICAgICAgQGlmIChpdGVtLnR5cGUgPT09ICdjb2xsYXBzYWJsZScpIHtcclxuICAgICAgICAgIDxjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tY29sbGFwc2FibGUtaXRlbSBbaXRlbV09XCJpdGVtXCIgW25hbWVdPVwibmFtZVwiIFtlZGl0U3RhdGVdPVwiZWRpdFN0YXRlXCIgW2F1dG9Db2xsYXBzZV09XCJhdXRvQ29sbGFwc2VcIlxyXG4gICAgICAgICAgKGVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkKT1cInNlbGVjdEl0ZW0oJGV2ZW50KVwiPjwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWNvbGxhcHNhYmxlLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDwhLS0gRGl2aWRlciAtLT5cclxuICAgICAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ2RpdmlkZXInKSB7XHJcbiAgICAgICAgICA8Y21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWRpdmlkZXItaXRlbSBbaXRlbV09XCJpdGVtXCIgW25hbWVdPVwibmFtZVwiIFtlZGl0U3RhdGVdPVwiZWRpdFN0YXRlXCIgKGVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkKT1cInNlbGVjdEl0ZW0oJGV2ZW50KVwiPlxyXG4gICAgICAgICAgPC9jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tZGl2aWRlci1pdGVtPlxyXG4gICAgICAgIH1cclxuICAgICAgICA8IS0tIEdyb3VwIC0tPlxyXG4gICAgICAgIEBpZiAoaXRlbS50eXBlID09PSAnZ3JvdXAnKSB7XHJcbiAgICAgICAgICA8Y21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWdyb3VwLWl0ZW0gW2l0ZW1dPVwiaXRlbVwiIFtuYW1lXT1cIm5hbWVcIiBbZWRpdFN0YXRlXT1cImVkaXRTdGF0ZVwiIChlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZCk9XCJzZWxlY3RJdGVtKCRldmVudClcIj5cclxuICAgICAgICAgIDwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWdyb3VwLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDwhLS0gU3BhY2VyIC0tPlxyXG4gICAgICAgIEBpZiAoaXRlbS50eXBlID09PSAnc3BhY2VyJykge1xyXG4gICAgICAgICAgPGNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1zcGFjZXItaXRlbSBbaXRlbV09XCJpdGVtXCIgW25hbWVdPVwibmFtZVwiIFtlZGl0U3RhdGVdPVwiZWRpdFN0YXRlXCIgKGVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkKT1cInNlbGVjdEl0ZW0oJGV2ZW50KVwiPlxyXG4gICAgICAgICAgPC9jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tc3BhY2VyLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbn0iXX0=
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNpZGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL25hdmlnYXRpb24vdmVydGljYWwvY29tcG9uZW50cy9hc2lkZS9hc2lkZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbmF2aWdhdGlvbi92ZXJ0aWNhbC9jb21wb25lbnRzL2FzaWRlL2FzaWRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2hLLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSW5ELE9BQU8sRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSw4Q0FBOEMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3RHLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzFGLE9BQU8sRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFZdkYsTUFBTSxPQUFPLHdDQUF3QztJQWtCakQsWUFDWSxrQkFBcUMsRUFDckMsT0FBZSxFQUNmLHNCQUE2QztRQUY3Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBQ3JDLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXVCO1FBVmhELGNBQVMsR0FBWSxLQUFLLENBQUM7UUFDakIsNEJBQXVCLEdBQXFDLElBQUksWUFBWSxFQUFzQixDQUFDO1FBRXRILFdBQU0sR0FBWSxLQUFLLENBQUM7UUFFaEIsb0JBQWUsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQU83RCxDQUFDO0lBRUQsd0dBQXdHO0lBQ3hHLG9CQUFvQjtJQUNwQix3R0FBd0c7SUFFeEc7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixpQkFBaUI7UUFDakIsSUFBSSxjQUFjLElBQUksT0FBTyxFQUFFLENBQUM7WUFDNUIsaUJBQWlCO1lBQ2pCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsUUFBUTtRQUNKLGlCQUFpQjtRQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFckMsK0NBQStDO1FBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTthQUNkLElBQUksQ0FDRCxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQTBCLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxDQUFDLEVBQ3pFLFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQ2xDO2FBQ0EsU0FBUyxDQUFDLENBQUMsS0FBb0IsRUFBRSxFQUFFO1lBRWhDLGlCQUFpQjtZQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUFDO1FBRVAsc0NBQXNDO1FBQ3RDLElBQUksQ0FBQyxnQ0FBZ0MsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU1Rix1REFBdUQ7UUFDdkQsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQ2xELFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQ2xDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUViLGlCQUFpQjtZQUNqQixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDM0MsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1AscUNBQXFDO1FBQ3JDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsd0dBQXdHO0lBQ3hHLG1CQUFtQjtJQUNuQix3R0FBd0c7SUFFeEc7Ozs7O09BS0c7SUFDSCxTQUFTLENBQUMsS0FBYSxFQUFFLElBQVM7UUFDOUIsT0FBTyxJQUFJLENBQUMsRUFBRSxJQUFJLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsVUFBVSxDQUFDLElBQXdCO1FBQy9CLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUNELHdHQUF3RztJQUN4RyxvQkFBb0I7SUFDcEIsd0dBQXdHO0lBRXhHOzs7Ozs7O09BT0c7SUFDSyxlQUFlLENBQUMsSUFBd0IsRUFBRSxVQUFrQjtRQUNoRSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBRS9CLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNaLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFFRCxLQUFLLE1BQU0sS0FBSyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzNCLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNqQixJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxFQUFFLENBQUM7b0JBQzFDLE9BQU8sSUFBSSxDQUFDO2dCQUNoQixDQUFDO1lBQ0wsQ0FBQztZQUVELGdDQUFnQztZQUNoQyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssT0FBTyxFQUFFLENBQUM7Z0JBQ3pCLFNBQVM7WUFDYixDQUFDO1lBRUQsOENBQThDO1lBQzlDLElBQUksS0FBSyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFO2dCQUNoRCxLQUFLLEVBQUUsS0FBSyxDQUFDLFVBQVUsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUTtnQkFDckQsV0FBVyxFQUFFLEtBQUssQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxTQUFTO2FBQzVHLENBQUMsRUFBRSxDQUFDO2dCQUNELE9BQU8sSUFBSSxDQUFDO1lBQ2hCLENBQUM7UUFDTCxDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxhQUFhLENBQUMsVUFBa0I7UUFDcEMsc0RBQXNEO1FBQ3RELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUVqRCw4Q0FBOEM7UUFDOUMsMkJBQTJCO1FBQzNCLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDOUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDdkIsQ0FBQztRQUVELGlCQUFpQjtRQUNqQixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0MsQ0FBQzsrR0FoS1Esd0NBQXdDO21HQUF4Qyx3Q0FBd0MsK1VDM0JyRCx3MUdBMkVDLDRDRHBEYSxPQUFPLG1GQUFFLGdCQUFnQiw0VEFBRSxhQUFhLG9MQUFFLHdDQUF3Qyw2SkFDdkYsOENBQThDLG1MQUFFLDBDQUEwQywrSkFDMUYsd0NBQXdDLDZLQUFFLHlDQUF5Qzs7NEZBRS9FLHdDQUF3QztrQkFWcEQsU0FBUzsrQkFDSSxxQ0FBcUMsbUJBRzlCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSx3Q0FBd0M7d0JBQ3ZGLDhDQUE4QyxFQUFFLDBDQUEwQzt3QkFDMUYsd0NBQXdDLEVBQUUseUNBQXlDLENBQUM7K0lBUWhGLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDYSx1QkFBdUI7c0JBQXpDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xyXG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ21hdE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vbmF2aWdhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ21hdE5hdmlnYXRpb25JdGVtIH0gZnJvbSAnLi4vLi4vLi4vbmF2aWdhdGlvbi50eXBlcyc7XHJcbmltcG9ydCB7IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi92ZXJ0aWNhbC92ZXJ0aWNhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQmFzaWNJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzaWMvYmFzaWMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbGxhcHNhYmxlSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2NvbGxhcHNhYmxlL2NvbGxhcHNhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25EaXZpZGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uR3JvdXBJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JvdXAvZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ21hdFZlcnRpY2FsTmF2aWdhdGlvblNwYWNlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9zcGFjZXIvc3BhY2VyLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWFzaWRlLWl0ZW0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FzaWRlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlczogW10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbTmdDbGFzcywgTWF0VG9vbHRpcE1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkJhc2ljSXRlbUNvbXBvbmVudCxcclxuICAgICAgICAgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbGxhcHNhYmxlSXRlbUNvbXBvbmVudCwgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkRpdmlkZXJJdGVtQ29tcG9uZW50LCBcclxuICAgICAgICAgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkdyb3VwSXRlbUNvbXBvbmVudCwgQ21hdFZlcnRpY2FsTmF2aWdhdGlvblNwYWNlckl0ZW1Db21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQXNpZGVJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICAvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cclxuICAgIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9hdXRvQ29sbGFwc2U6IEJvb2xlYW5JbnB1dDtcclxuICAgIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9za2lwQ2hpbGRyZW46IEJvb2xlYW5JbnB1dDtcclxuICAgIC8qIGVzbGludC1lbmFibGUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uICovXHJcblxyXG4gICAgQElucHV0KCkgYWN0aXZlSXRlbUlkOiBzdHJpbmcgfCBudWxsO1xyXG4gICAgQElucHV0KCkgYXV0b0NvbGxhcHNlOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtO1xyXG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgc2tpcENoaWxkcmVuOiBib29sZWFuOyAgIFxyXG4gICAgQElucHV0KCkgZWRpdFN0YXRlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDbWF0TmF2aWdhdGlvbkl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxDbWF0TmF2aWdhdGlvbkl0ZW0+KCk7XHJcbiAgICBcclxuICAgIGFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBfY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDogQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDtcclxuICAgIHByaXZhdGUgX3Vuc3Vic2NyaWJlQWxsOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBfY21hdE5hdmlnYXRpb25TZXJ2aWNlOiBDbWF0TmF2aWdhdGlvblNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBAIExpZmVjeWNsZSBob29rc1xyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE9uIGNoYW5nZXNcclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gY2hhbmdlc1xyXG4gICAgICovXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgLy8gQWN0aXZlIGl0ZW0gaWRcclxuICAgICAgICBpZiAoJ2FjdGl2ZUl0ZW1JZCcgaW4gY2hhbmdlcykge1xyXG4gICAgICAgICAgICAvLyBNYXJrIGlmIGFjdGl2ZVxyXG4gICAgICAgICAgICB0aGlzLl9tYXJrSWZBY3RpdmUodGhpcy5fcm91dGVyLnVybCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT24gaW5pdFxyXG4gICAgICovXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICAvLyBNYXJrIGlmIGFjdGl2ZVxyXG4gICAgICAgIHRoaXMuX21hcmtJZkFjdGl2ZSh0aGlzLl9yb3V0ZXIudXJsKTtcclxuXHJcbiAgICAgICAgLy8gQXR0YWNoIGEgbGlzdGVuZXIgdG8gdGhlIE5hdmlnYXRpb25FbmQgZXZlbnRcclxuICAgICAgICB0aGlzLl9yb3V0ZXIuZXZlbnRzXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCk6IGV2ZW50IGlzIE5hdmlnYXRpb25FbmQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcclxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl91bnN1YnNjcmliZUFsbClcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudDogTmF2aWdhdGlvbkVuZCkgPT4ge1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIE1hcmsgaWYgYWN0aXZlXHJcbiAgICAgICAgICAgICAgICB0aGlzLl9tYXJrSWZBY3RpdmUoZXZlbnQudXJsQWZ0ZXJSZWRpcmVjdHMpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gR2V0IHRoZSBwYXJlbnQgbmF2aWdhdGlvbiBjb21wb25lbnRcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50ID0gdGhpcy5fY21hdE5hdmlnYXRpb25TZXJ2aWNlLmdldENvbXBvbmVudCh0aGlzLm5hbWUpO1xyXG5cclxuICAgICAgICAvLyBTdWJzY3JpYmUgdG8gb25SZWZyZXNoZWQgb24gdGhlIG5hdmlnYXRpb24gY29tcG9uZW50XHJcbiAgICAgICAgdGhpcy5fY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudC5vblJlZnJlc2hlZC5waXBlKFxyXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmVBbGwpXHJcbiAgICAgICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG5cclxuICAgICAgICAgICAgLy8gTWFyayBmb3IgY2hlY2tcclxuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBPbiBkZXN0cm95XHJcbiAgICAgKi9cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFVuc3Vic2NyaWJlIGZyb20gYWxsIHN1YnNjcmlwdGlvbnNcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KHZvaWQgMCk7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQCBQdWJsaWMgbWV0aG9kc1xyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFRyYWNrIGJ5IGZ1bmN0aW9uIGZvciBuZ0ZvciBsb29wc1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpbmRleFxyXG4gICAgICogQHBhcmFtIGl0ZW1cclxuICAgICAqL1xyXG4gICAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0uaWQgfHwgaW5kZXg7XHJcbiAgICB9XHJcblxyXG4gICAgc2VsZWN0SXRlbShpdGVtOiBDbWF0TmF2aWdhdGlvbkl0ZW0pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkLm5leHQoaXRlbSk7XHJcbiAgICB9XHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQCBQcml2YXRlIG1ldGhvZHNcclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiB0aGUgZ2l2ZW4gaXRlbSBoYXMgdGhlIGdpdmVuIHVybFxyXG4gICAgICogaW4gb25lIG9mIGl0cyBjaGlsZHJlblxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpdGVtXHJcbiAgICAgKiBAcGFyYW0gY3VycmVudFVybFxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBfaGFzQWN0aXZlQ2hpbGQoaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtLCBjdXJyZW50VXJsOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGl0ZW0uY2hpbGRyZW47XHJcblxyXG4gICAgICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbikge1xyXG4gICAgICAgICAgICBpZiAoY2hpbGQuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9oYXNBY3RpdmVDaGlsZChjaGlsZCwgY3VycmVudFVybCkpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gU2tpcCBpdGVtcyBvdGhlciB0aGFuICdiYXNpYydcclxuICAgICAgICAgICAgaWYgKGNoaWxkLnR5cGUgIT09ICdiYXNpYycpIHtcclxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBDaGVjayBpZiB0aGUgY2hpbGQgaGFzIGEgbGluayBhbmQgaXMgYWN0aXZlXHJcbiAgICAgICAgICAgIGlmIChjaGlsZC5saW5rICYmIHRoaXMuX3JvdXRlci5pc0FjdGl2ZShjaGlsZC5saW5rLCB7XHJcbiAgICAgICAgICAgICAgICBwYXRoczogY2hpbGQuZXhhY3RNYXRjaCB8fCBmYWxzZSA/ICdleGFjdCcgOiAnc3Vic2V0JyxcclxuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiBjaGlsZC5leGFjdE1hdGNoIHx8IGZhbHNlID8gJ2V4YWN0JyA6ICdzdWJzZXQnLCBmcmFnbWVudDogJ2lnbm9yZWQnLCBtYXRyaXhQYXJhbXM6ICdpZ25vcmVkJ1xyXG4gICAgICAgICAgICB9KSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIERlY2lkZSBhbmQgbWFyayBpZiB0aGUgaXRlbSBpcyBhY3RpdmVcclxuICAgICAqXHJcbiAgICAgKiBAcHJpdmF0ZVxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIF9tYXJrSWZBY3RpdmUoY3VycmVudFVybDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGFjdGl2ZUl0ZW1JZCBpcyBlcXVhbHMgdG8gdGhpcyBpdGVtIGlkXHJcbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0aGlzLmFjdGl2ZUl0ZW1JZCA9PT0gdGhpcy5pdGVtLmlkO1xyXG5cclxuICAgICAgICAvLyBJZiB0aGUgYXNpZGUgaGFzIGEgY2hpbGRyZW4gdGhhdCBpcyBhY3RpdmUsXHJcbiAgICAgICAgLy8gYWx3YXlzIG1hcmsgaXQgYXMgYWN0aXZlXHJcbiAgICAgICAgaWYgKHRoaXMuX2hhc0FjdGl2ZUNoaWxkKHRoaXMuaXRlbSwgY3VycmVudFVybCkpIHtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gTWFyayBmb3IgY2hlY2tcclxuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0td3JhcHBlclwiIHJvbGU9XCJwcmVzZW50YXRpb25cIlxyXG4gIFtjbGFzcy5jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1oYXMtc3VidGl0bGVdPVwiISFpdGVtLnN1YlRpdGxlXCIgW25nQ2xhc3NdPVwiaXRlbS5jbGFzc2VzPy53cmFwcGVyXCIgKGNsaWNrKT1cInNlbGVjdEl0ZW0oaXRlbSk7XCI+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtXCIgW25nQ2xhc3NdPVwieydjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1hY3RpdmUnOiBhY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWRpc2FibGVkJzogaXRlbS5kaXNhYmxlZCxcclxuICAgICAgICAgICAgICAgICAgICAnY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYWN0aXZlLWZvcmNlZCc6IGl0ZW0uYWN0aXZlfVwiIFttYXRUb29sdGlwXT1cIml0ZW0udG9vbHRpcCB8fCAnJ1wiPlxyXG5cclxuICAgIDwhLS0gSWNvbiAtLT5cclxuICAgIEBpZiAoaXRlbS5pY29uKSB7XHJcbiAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWljb25cIiBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/Lmljb25cIiBbc3ZnSWNvbl09XCJpdGVtLmljb25cIj5cclxuICAgICAgPC9tYXQtaWNvbj5cclxuICAgIH1cclxuXHJcbiAgICA8IS0tIFRpdGxlICYgU3VidGl0bGUgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tdGl0bGUtd3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tdGl0bGVcIj5cclxuICAgICAgICA8c3BhbiBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/LnRpdGxlXCI+XHJcbiAgICAgICAgICB7e2l0ZW0udGl0bGV9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIEBpZiAoaXRlbS5zdWJUaXRsZSkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1zdWJ0aXRsZVwiPlxyXG4gICAgICAgICAgPHNwYW4gW25nQ2xhc3NdPVwiaXRlbS5jbGFzc2VzPy5zdWJ0aXRsZVwiPlxyXG4gICAgICAgICAgICB7e2l0ZW0uc3ViVGl0bGV9fVxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8IS0tIEJhZGdlIC0tPlxyXG4gICAgQGlmIChpdGVtLmJhZGdlKSB7XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1iYWRnZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1iYWRnZS1jb250ZW50XCIgW25nQ2xhc3NdPVwiaXRlbS5iYWRnZS5jbGFzc2VzXCI+XHJcbiAgICAgICAgICB7e2l0ZW0uYmFkZ2UudGl0bGV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIH1cclxuXHJcbiAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuXHJcbkBpZiAoIXNraXBDaGlsZHJlbikge1xyXG4gIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1jaGlsZHJlblwiPlxyXG4gICAgQGZvciAoaXRlbSBvZiBpdGVtLmNoaWxkcmVuOyB0cmFjayB0cmFja0J5Rm4oJGluZGV4LCBpdGVtKSkge1xyXG4gICAgICA8IS0tIFNraXAgdGhlIGhpZGRlbiBpdGVtcyAtLT5cclxuICAgICAgQGlmICgoaXRlbS5oaWRkZW4gJiYgIWl0ZW0uaGlkZGVuKGl0ZW0pKSB8fCAhaXRlbS5oaWRkZW4pIHtcclxuICAgICAgICA8IS0tIEJhc2ljIC0tPlxyXG4gICAgICAgIEBpZiAoaXRlbS50eXBlID09PSAnYmFzaWMnKSB7XHJcbiAgICAgICAgICA8Y21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWJhc2ljLWl0ZW0gW2l0ZW1dPVwiaXRlbVwiIFtuYW1lXT1cIm5hbWVcIiBbZWRpdFN0YXRlXT1cImVkaXRTdGF0ZVwiIChlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZCk9XCJzZWxlY3RJdGVtKCRldmVudClcIj5cclxuICAgICAgICAgIDwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWJhc2ljLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDwhLS0gQ29sbGFwc2FibGUgLS0+XHJcbiAgICAgICAgQGlmIChpdGVtLnR5cGUgPT09ICdjb2xsYXBzYWJsZScpIHtcclxuICAgICAgICAgIDxjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tY29sbGFwc2FibGUtaXRlbSBbaXRlbV09XCJpdGVtXCIgW25hbWVdPVwibmFtZVwiIFtlZGl0U3RhdGVdPVwiZWRpdFN0YXRlXCIgW2F1dG9Db2xsYXBzZV09XCJhdXRvQ29sbGFwc2VcIlxyXG4gICAgICAgICAgKGVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkKT1cInNlbGVjdEl0ZW0oJGV2ZW50KVwiPjwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWNvbGxhcHNhYmxlLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDwhLS0gRGl2aWRlciAtLT5cclxuICAgICAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ2RpdmlkZXInKSB7XHJcbiAgICAgICAgICA8Y21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWRpdmlkZXItaXRlbSBbaXRlbV09XCJpdGVtXCIgW25hbWVdPVwibmFtZVwiIFtlZGl0U3RhdGVdPVwiZWRpdFN0YXRlXCIgKGVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkKT1cInNlbGVjdEl0ZW0oJGV2ZW50KVwiPlxyXG4gICAgICAgICAgPC9jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tZGl2aWRlci1pdGVtPlxyXG4gICAgICAgIH1cclxuICAgICAgICA8IS0tIEdyb3VwIC0tPlxyXG4gICAgICAgIEBpZiAoaXRlbS50eXBlID09PSAnZ3JvdXAnKSB7XHJcbiAgICAgICAgICA8Y21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWdyb3VwLWl0ZW0gW2l0ZW1dPVwiaXRlbVwiIFtuYW1lXT1cIm5hbWVcIiBbZWRpdFN0YXRlXT1cImVkaXRTdGF0ZVwiIChlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZCk9XCJzZWxlY3RJdGVtKCRldmVudClcIj5cclxuICAgICAgICAgIDwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWdyb3VwLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDwhLS0gU3BhY2VyIC0tPlxyXG4gICAgICAgIEBpZiAoaXRlbS50eXBlID09PSAnc3BhY2VyJykge1xyXG4gICAgICAgICAgPGNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1zcGFjZXItaXRlbSBbaXRlbV09XCJpdGVtXCIgW25hbWVdPVwibmFtZVwiIFtlZGl0U3RhdGVdPVwiZWRpdFN0YXRlXCIgKGVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkKT1cInNlbGVjdEl0ZW0oJGV2ZW50KVwiPlxyXG4gICAgICAgICAgPC9jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tc3BhY2VyLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbn0iXX0=
|
|
@@ -42,12 +42,12 @@ export class CmatVerticalNavigationBasicItemComponent {
|
|
|
42
42
|
selectItem() {
|
|
43
43
|
this.editSelectedItemChanged.next(this.item);
|
|
44
44
|
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
46
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatVerticalNavigationBasicItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.CmatNavigationService }, { token: i2.CmatUtilsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.10", type: CmatVerticalNavigationBasicItemComponent, isStandalone: true, selector: "cmat-vertical-navigation-basic-item", inputs: { item: "item", name: "name", editState: "editState" }, outputs: { editSelectedItemChanged: "editSelectedItemChanged" }, ngImport: i0, template: "<!-- Item wrapper -->\r\n<div class=\"cmat-vertical-navigation-item-wrapper\" [class.cmat-vertical-navigation-item-has-subtitle]=\"!!item.subTitle\"\r\n [ngClass]=\"item.classes?.wrapper\">\r\n\r\n @if(editState){\r\n <div class=\"cmat-vertical-navigation-item\" role=\"presentation\"\r\n [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\" [matTooltip]=\"item.tooltip || ''\"\r\n (click)=\"selectItem()\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </div>\r\n }@else{\r\n <!-- Item with an internal link -->\r\n @if (item.link && !item.externalLink && !item.function && !item.disabled) {\r\n <a class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\"\r\n [routerLink]=\"[item.link]\" [routerLinkActive]=\"'cmat-vertical-navigation-item-active'\"\r\n [routerLinkActiveOptions]=\"isActiveMatchOptions\" [matTooltip]=\"item.tooltip || ''\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </a>\r\n }\r\n\r\n <!-- Item with an external link -->\r\n @if (item.link && item.externalLink && !item.function && !item.disabled) {\r\n <a class=\"cmat-vertical-navigation-item\" [href]=\"item.link\" [target]=\"item.target || '_blank'\"\r\n [matTooltip]=\"item.tooltip || ''\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </a>\r\n }\r\n\r\n <!-- Item with a function -->\r\n @if (!item.link && item.function && !item.disabled) {\r\n <div class=\"cmat-vertical-navigation-item\" role=\"presentation\"\r\n [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\" [matTooltip]=\"item.tooltip || ''\"\r\n (click)=\"item.function(item)\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </div>\r\n }\r\n\r\n <!-- Item with an internal link and function -->\r\n @if (item.link && !item.externalLink && item.function && !item.disabled) {\r\n <a class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\"\r\n [routerLink]=\"[item.link]\" [routerLinkActive]=\"'cmat-vertical-navigation-item-active'\"\r\n [routerLinkActiveOptions]=\"isActiveMatchOptions\" [matTooltip]=\"item.tooltip || ''\" (click)=\"item.function(item)\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </a>\r\n }\r\n\r\n <!-- Item with an external link and function -->\r\n @if (item.link && item.externalLink && item.function && !item.disabled) {\r\n <a class=\"cmat-vertical-navigation-item\" [href]=\"item.link\" [target]=\"item.target || '_blank'\"\r\n [matTooltip]=\"item.tooltip || ''\" (click)=\"item.function(item)\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </a>\r\n }\r\n\r\n <!-- Item with a no link and no function -->\r\n @if (!item.link && !item.function && !item.disabled) {\r\n <div class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\"\r\n [matTooltip]=\"item.tooltip || ''\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </div>\r\n }\r\n\r\n <!-- Item is disabled -->\r\n @if (item.disabled) {\r\n <div class=\"cmat-vertical-navigation-item cmat-vertical-navigation-item-disabled\" [matTooltip]=\"item.tooltip || ''\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </div>\r\n }\r\n }\r\n</div>\r\n\r\n<!-- Item template -->\r\n<ng-template #itemTemplate>\r\n\r\n <!-- Icon -->\r\n @if (item.icon) {\r\n <mat-icon class=\"cmat-vertical-navigation-item-icon\" [ngClass]=\"item.classes?.icon\" [svgIcon]=\"item.icon\">\r\n </mat-icon>\r\n }\r\n\r\n <!-- Title & Subtitle -->\r\n <div class=\"cmat-vertical-navigation-item-title-wrapper\">\r\n <div class=\"cmat-vertical-navigation-item-title\">\r\n <span [ngClass]=\"item.classes?.title\">\r\n {{item.title}}\r\n </span>\r\n </div>\r\n @if (item.subTitle) {\r\n <div class=\"cmat-vertical-navigation-item-subtitle\">\r\n <span [ngClass]=\"item.classes?.subtitle\">\r\n {{item.subTitle}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n\r\n <!-- Badge -->\r\n @if (item.badge) {\r\n <div class=\"cmat-vertical-navigation-item-badge\">\r\n <div class=\"cmat-vertical-navigation-item-badge-content\" [ngClass]=\"item.badge.classes\">\r\n {{item.badge.title}}\r\n </div>\r\n </div>\r\n }\r\n</ng-template>", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
47
47
|
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatVerticalNavigationBasicItemComponent, decorators: [{
|
|
49
49
|
type: Component,
|
|
50
|
-
args: [{ selector: 'cmat-vertical-navigation-basic-item', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgClass, RouterLink, RouterLinkActive, MatTooltipModule, NgTemplateOutlet, MatIconModule], template: "<!-- Item wrapper -->\n<div class=\"cmat-vertical-navigation-item-wrapper\" [class.cmat-vertical-navigation-item-has-subtitle]=\"!!item.subTitle\"\n [ngClass]=\"item.classes?.wrapper\">\n\n @if(editState){\n <div class=\"cmat-vertical-navigation-item\" role=\"presentation\"\n [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\" [matTooltip]=\"item.tooltip || ''\"\n (click)=\"selectItem()\">\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n </div>\n }@else{\n <!-- Item with an internal link -->\n @if (item.link && !item.externalLink && !item.function && !item.disabled) {\n <a class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\"\n [routerLink]=\"[item.link]\" [routerLinkActive]=\"'cmat-vertical-navigation-item-active'\"\n [routerLinkActiveOptions]=\"isActiveMatchOptions\" [matTooltip]=\"item.tooltip || ''\">\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n </a>\n }\n\n <!-- Item with an external link -->\n @if (item.link && item.externalLink && !item.function && !item.disabled) {\n <a class=\"cmat-vertical-navigation-item\" [href]=\"item.link\" [target]=\"item.target || '_blank'\"\n [matTooltip]=\"item.tooltip || ''\">\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n </a>\n }\n\n <!-- Item with a function -->\n @if (!item.link && item.function && !item.disabled) {\n <div class=\"cmat-vertical-navigation-item\" role=\"presentation\"\n [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\" [matTooltip]=\"item.tooltip || ''\"\n (click)=\"item.function(item)\">\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n </div>\n }\n\n <!-- Item with an internal link and function -->\n @if (item.link && !item.externalLink && item.function && !item.disabled) {\n <a class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\"\n [routerLink]=\"[item.link]\" [routerLinkActive]=\"'cmat-vertical-navigation-item-active'\"\n [routerLinkActiveOptions]=\"isActiveMatchOptions\" [matTooltip]=\"item.tooltip || ''\" (click)=\"item.function(item)\">\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n </a>\n }\n\n <!-- Item with an external link and function -->\n @if (item.link && item.externalLink && item.function && !item.disabled) {\n <a class=\"cmat-vertical-navigation-item\" [href]=\"item.link\" [target]=\"item.target || '_blank'\"\n [matTooltip]=\"item.tooltip || ''\" (click)=\"item.function(item)\">\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n </a>\n }\n\n <!-- Item with a no link and no function -->\n @if (!item.link && !item.function && !item.disabled) {\n <div class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\"\n [matTooltip]=\"item.tooltip || ''\">\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n </div>\n }\n\n <!-- Item is disabled -->\n @if (item.disabled) {\n <div class=\"cmat-vertical-navigation-item cmat-vertical-navigation-item-disabled\" [matTooltip]=\"item.tooltip || ''\">\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n </div>\n }\n }\n</div>\n\n<!-- Item template -->\n<ng-template #itemTemplate>\n\n <!-- Icon -->\n @if (item.icon) {\n <mat-icon class=\"cmat-vertical-navigation-item-icon\" [ngClass]=\"item.classes?.icon\" [svgIcon]=\"item.icon\">\n </mat-icon>\n }\n\n <!-- Title & Subtitle -->\n <div class=\"cmat-vertical-navigation-item-title-wrapper\">\n <div class=\"cmat-vertical-navigation-item-title\">\n <span [ngClass]=\"item.classes?.title\">\n {{item.title}}\n </span>\n </div>\n @if (item.subTitle) {\n <div class=\"cmat-vertical-navigation-item-subtitle\">\n <span [ngClass]=\"item.classes?.subtitle\">\n {{item.subTitle}}\n </span>\n </div>\n }\n </div>\n\n <!-- Badge -->\n @if (item.badge) {\n <div class=\"cmat-vertical-navigation-item-badge\">\n <div class=\"cmat-vertical-navigation-item-badge-content\" [ngClass]=\"item.badge.classes\">\n {{item.badge.title}}\n </div>\n </div>\n }\n</ng-template>" }]
|
|
50
|
+
args: [{ selector: 'cmat-vertical-navigation-basic-item', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgClass, RouterLink, RouterLinkActive, MatTooltipModule, NgTemplateOutlet, MatIconModule], template: "<!-- Item wrapper -->\r\n<div class=\"cmat-vertical-navigation-item-wrapper\" [class.cmat-vertical-navigation-item-has-subtitle]=\"!!item.subTitle\"\r\n [ngClass]=\"item.classes?.wrapper\">\r\n\r\n @if(editState){\r\n <div class=\"cmat-vertical-navigation-item\" role=\"presentation\"\r\n [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\" [matTooltip]=\"item.tooltip || ''\"\r\n (click)=\"selectItem()\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </div>\r\n }@else{\r\n <!-- Item with an internal link -->\r\n @if (item.link && !item.externalLink && !item.function && !item.disabled) {\r\n <a class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\"\r\n [routerLink]=\"[item.link]\" [routerLinkActive]=\"'cmat-vertical-navigation-item-active'\"\r\n [routerLinkActiveOptions]=\"isActiveMatchOptions\" [matTooltip]=\"item.tooltip || ''\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </a>\r\n }\r\n\r\n <!-- Item with an external link -->\r\n @if (item.link && item.externalLink && !item.function && !item.disabled) {\r\n <a class=\"cmat-vertical-navigation-item\" [href]=\"item.link\" [target]=\"item.target || '_blank'\"\r\n [matTooltip]=\"item.tooltip || ''\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </a>\r\n }\r\n\r\n <!-- Item with a function -->\r\n @if (!item.link && item.function && !item.disabled) {\r\n <div class=\"cmat-vertical-navigation-item\" role=\"presentation\"\r\n [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\" [matTooltip]=\"item.tooltip || ''\"\r\n (click)=\"item.function(item)\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </div>\r\n }\r\n\r\n <!-- Item with an internal link and function -->\r\n @if (item.link && !item.externalLink && item.function && !item.disabled) {\r\n <a class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\"\r\n [routerLink]=\"[item.link]\" [routerLinkActive]=\"'cmat-vertical-navigation-item-active'\"\r\n [routerLinkActiveOptions]=\"isActiveMatchOptions\" [matTooltip]=\"item.tooltip || ''\" (click)=\"item.function(item)\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </a>\r\n }\r\n\r\n <!-- Item with an external link and function -->\r\n @if (item.link && item.externalLink && item.function && !item.disabled) {\r\n <a class=\"cmat-vertical-navigation-item\" [href]=\"item.link\" [target]=\"item.target || '_blank'\"\r\n [matTooltip]=\"item.tooltip || ''\" (click)=\"item.function(item)\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </a>\r\n }\r\n\r\n <!-- Item with a no link and no function -->\r\n @if (!item.link && !item.function && !item.disabled) {\r\n <div class=\"cmat-vertical-navigation-item\" [ngClass]=\"{'cmat-vertical-navigation-item-active-forced': item.active}\"\r\n [matTooltip]=\"item.tooltip || ''\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </div>\r\n }\r\n\r\n <!-- Item is disabled -->\r\n @if (item.disabled) {\r\n <div class=\"cmat-vertical-navigation-item cmat-vertical-navigation-item-disabled\" [matTooltip]=\"item.tooltip || ''\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\r\n </div>\r\n }\r\n }\r\n</div>\r\n\r\n<!-- Item template -->\r\n<ng-template #itemTemplate>\r\n\r\n <!-- Icon -->\r\n @if (item.icon) {\r\n <mat-icon class=\"cmat-vertical-navigation-item-icon\" [ngClass]=\"item.classes?.icon\" [svgIcon]=\"item.icon\">\r\n </mat-icon>\r\n }\r\n\r\n <!-- Title & Subtitle -->\r\n <div class=\"cmat-vertical-navigation-item-title-wrapper\">\r\n <div class=\"cmat-vertical-navigation-item-title\">\r\n <span [ngClass]=\"item.classes?.title\">\r\n {{item.title}}\r\n </span>\r\n </div>\r\n @if (item.subTitle) {\r\n <div class=\"cmat-vertical-navigation-item-subtitle\">\r\n <span [ngClass]=\"item.classes?.subtitle\">\r\n {{item.subTitle}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n\r\n <!-- Badge -->\r\n @if (item.badge) {\r\n <div class=\"cmat-vertical-navigation-item-badge\">\r\n <div class=\"cmat-vertical-navigation-item-badge-content\" [ngClass]=\"item.badge.classes\">\r\n {{item.badge.title}}\r\n </div>\r\n </div>\r\n }\r\n</ng-template>" }]
|
|
51
51
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.CmatNavigationService }, { type: i2.CmatUtilsService }], propDecorators: { item: [{
|
|
52
52
|
type: Input
|
|
53
53
|
}], name: [{
|
|
@@ -57,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImpor
|
|
|
57
57
|
}], editSelectedItemChanged: [{
|
|
58
58
|
type: Output
|
|
59
59
|
}] } });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL25hdmlnYXRpb24vdmVydGljYWwvY29tcG9uZW50cy9iYXNpYy9iYXNpYy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbmF2aWdhdGlvbi92ZXJ0aWNhbC9jb21wb25lbnRzL2Jhc2ljL2Jhc2ljLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEksT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBd0IsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQWMzQyxNQUFNLE9BQU8sd0NBQXdDO0lBVWpELFlBQ1ksa0JBQXFDLEVBQ3JDLHNCQUE2QyxFQUM3QyxpQkFBbUM7UUFGbkMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXVCO1FBQzdDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFWdEMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUNqQiw0QkFBdUIsR0FBcUMsSUFBSSxZQUFZLEVBQXNCLENBQUM7UUFJOUcsb0JBQWUsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVF6RCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDO0lBQzFFLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLG9CQUFvQjtZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVTtnQkFDbEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUI7Z0JBQzFDLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLENBQUM7UUFFcEQsc0NBQXNDO1FBQ3RDLElBQUksQ0FBQyxnQ0FBZ0MsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU1RixpQkFBaUI7UUFDakIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXZDLHVEQUF1RDtRQUN2RCxJQUFJLENBQUMsZ0NBQWdDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDbEQsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FDbEMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBRWIsaUJBQWlCO1lBQ2pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxVQUFVO1FBQ04sSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakQsQ0FBQzs4R0FoRFEsd0NBQXdDO2tHQUF4Qyx3Q0FBd0MsZ09DcEJyRCw4dElBd0djLDRDRHRGQSxPQUFPLG9GQUFFLFVBQVUsb09BQUUsZ0JBQWdCLDZNQUFFLGdCQUFnQiw2VEFBRSxnQkFBZ0IsbUpBQUUsYUFBYTs7MkZBRXpGLHdDQUF3QztrQkFScEQsU0FBUzsrQkFDSSxxQ0FBcUMsbUJBRzlCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLENBQUM7eUpBRzFGLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDYSx1QkFBdUI7c0JBQXpDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IElzQWN0aXZlTWF0Y2hPcHRpb25zLCBSb3V0ZXJMaW5rLCBSb3V0ZXJMaW5rQWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENtYXRVdGlsc1NlcnZpY2UgfSBmcm9tICdjbWF0L3NlcnZpY2VzL3V0aWxzJztcclxuaW1wb3J0IHsgQ21hdE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vbmF2aWdhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ21hdE5hdmlnYXRpb25JdGVtIH0gZnJvbSAnLi4vLi4vLi4vbmF2aWdhdGlvbi50eXBlcyc7XHJcbmltcG9ydCB7IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi92ZXJ0aWNhbC92ZXJ0aWNhbC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1iYXNpYy1pdGVtJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXNpYy5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZXM6IFtdLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW05nQ2xhc3MsIFJvdXRlckxpbmssIFJvdXRlckxpbmtBY3RpdmUsIE1hdFRvb2x0aXBNb2R1bGUsIE5nVGVtcGxhdGVPdXRsZXQsIE1hdEljb25Nb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQmFzaWNJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtO1xyXG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgZWRpdFN0YXRlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDbWF0TmF2aWdhdGlvbkl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxDbWF0TmF2aWdhdGlvbkl0ZW0+KCk7XHJcbiAgICBcclxuICAgIGlzQWN0aXZlTWF0Y2hPcHRpb25zOiBJc0FjdGl2ZU1hdGNoT3B0aW9ucztcclxuICAgIHByaXZhdGUgX2NtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQ6IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQ7XHJcbiAgICBwcml2YXRlIF91bnN1YnNjcmliZUFsbDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgIHByaXZhdGUgX2NtYXROYXZpZ2F0aW9uU2VydmljZTogQ21hdE5hdmlnYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX2NtYXRVdGlsc1NlcnZpY2U6IENtYXRVdGlsc1NlcnZpY2VcclxuICAgICkge1xyXG5cclxuICAgICAgICB0aGlzLmlzQWN0aXZlTWF0Y2hPcHRpb25zID0gdGhpcy5fY21hdFV0aWxzU2VydmljZS5zdWJzZXRNYXRjaE9wdGlvbnM7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pc0FjdGl2ZU1hdGNoT3B0aW9ucyA9XHJcbiAgICAgICAgICAgIHRoaXMuaXRlbS5pc0FjdGl2ZU1hdGNoT3B0aW9ucyA/PyB0aGlzLml0ZW0uZXhhY3RNYXRjaFxyXG4gICAgICAgICAgICAgICAgPyB0aGlzLl9jbWF0VXRpbHNTZXJ2aWNlLmV4YWN0TWF0Y2hPcHRpb25zXHJcbiAgICAgICAgICAgICAgICA6IHRoaXMuX2NtYXRVdGlsc1NlcnZpY2Uuc3Vic2V0TWF0Y2hPcHRpb25zO1xyXG5cclxuICAgICAgICAvLyBHZXQgdGhlIHBhcmVudCBuYXZpZ2F0aW9uIGNvbXBvbmVudFxyXG4gICAgICAgIHRoaXMuX2NtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQgPSB0aGlzLl9jbWF0TmF2aWdhdGlvblNlcnZpY2UuZ2V0Q29tcG9uZW50KHRoaXMubmFtZSk7XHJcblxyXG4gICAgICAgIC8vIE1hcmsgZm9yIGNoZWNrXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcblxyXG4gICAgICAgIC8vIFN1YnNjcmliZSB0byBvblJlZnJlc2hlZCBvbiB0aGUgbmF2aWdhdGlvbiBjb21wb25lbnRcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50Lm9uUmVmcmVzaGVkLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl91bnN1YnNjcmliZUFsbClcclxuICAgICAgICApLnN1YnNjcmliZSgoKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAvLyBNYXJrIGZvciBjaGVja1xyXG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KHZvaWQgMCk7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RJdGVtKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQubmV4dCh0aGlzLml0ZW0pO1xyXG4gICAgfVxyXG59XHJcbiIsIjwhLS0gSXRlbSB3cmFwcGVyIC0tPlxuPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLXdyYXBwZXJcIiBbY2xhc3MuY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0taGFzLXN1YnRpdGxlXT1cIiEhaXRlbS5zdWJUaXRsZVwiXG4gIFtuZ0NsYXNzXT1cIml0ZW0uY2xhc3Nlcz8ud3JhcHBlclwiPlxuXG4gIEBpZihlZGl0U3RhdGUpe1xuICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW1cIiByb2xlPVwicHJlc2VudGF0aW9uXCJcbiAgICBbbmdDbGFzc109XCJ7J2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWFjdGl2ZS1mb3JjZWQnOiBpdGVtLmFjdGl2ZX1cIiBbbWF0VG9vbHRpcF09XCJpdGVtLnRvb2x0aXAgfHwgJydcIlxuICAgIChjbGljayk9XCJzZWxlY3RJdGVtKClcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICB9QGVsc2V7XG4gIDwhLS0gSXRlbSB3aXRoIGFuIGludGVybmFsIGxpbmsgLS0+XG4gIEBpZiAoaXRlbS5saW5rICYmICFpdGVtLmV4dGVybmFsTGluayAmJiAhaXRlbS5mdW5jdGlvbiAmJiAhaXRlbS5kaXNhYmxlZCkge1xuICA8YSBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtXCIgW25nQ2xhc3NdPVwieydjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1hY3RpdmUtZm9yY2VkJzogaXRlbS5hY3RpdmV9XCJcbiAgICBbcm91dGVyTGlua109XCJbaXRlbS5saW5rXVwiIFtyb3V0ZXJMaW5rQWN0aXZlXT1cIidjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1hY3RpdmUnXCJcbiAgICBbcm91dGVyTGlua0FjdGl2ZU9wdGlvbnNdPVwiaXNBY3RpdmVNYXRjaE9wdGlvbnNcIiBbbWF0VG9vbHRpcF09XCJpdGVtLnRvb2x0aXAgfHwgJydcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvYT5cbiAgfVxuXG4gIDwhLS0gSXRlbSB3aXRoIGFuIGV4dGVybmFsIGxpbmsgLS0+XG4gIEBpZiAoaXRlbS5saW5rICYmIGl0ZW0uZXh0ZXJuYWxMaW5rICYmICFpdGVtLmZ1bmN0aW9uICYmICFpdGVtLmRpc2FibGVkKSB7XG4gIDxhIGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW1cIiBbaHJlZl09XCJpdGVtLmxpbmtcIiBbdGFyZ2V0XT1cIml0ZW0udGFyZ2V0IHx8ICdfYmxhbmsnXCJcbiAgICBbbWF0VG9vbHRpcF09XCJpdGVtLnRvb2x0aXAgfHwgJydcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvYT5cbiAgfVxuXG4gIDwhLS0gSXRlbSB3aXRoIGEgZnVuY3Rpb24gLS0+XG4gIEBpZiAoIWl0ZW0ubGluayAmJiBpdGVtLmZ1bmN0aW9uICYmICFpdGVtLmRpc2FibGVkKSB7XG4gIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbVwiIHJvbGU9XCJwcmVzZW50YXRpb25cIlxuICAgIFtuZ0NsYXNzXT1cInsnY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYWN0aXZlLWZvcmNlZCc6IGl0ZW0uYWN0aXZlfVwiIFttYXRUb29sdGlwXT1cIml0ZW0udG9vbHRpcCB8fCAnJ1wiXG4gICAgKGNsaWNrKT1cIml0ZW0uZnVuY3Rpb24oaXRlbSlcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICB9XG5cbiAgPCEtLSBJdGVtIHdpdGggYW4gaW50ZXJuYWwgbGluayBhbmQgZnVuY3Rpb24gLS0+XG4gIEBpZiAoaXRlbS5saW5rICYmICFpdGVtLmV4dGVybmFsTGluayAmJiBpdGVtLmZ1bmN0aW9uICYmICFpdGVtLmRpc2FibGVkKSB7XG4gIDxhIGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW1cIiBbbmdDbGFzc109XCJ7J2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWFjdGl2ZS1mb3JjZWQnOiBpdGVtLmFjdGl2ZX1cIlxuICAgIFtyb3V0ZXJMaW5rXT1cIltpdGVtLmxpbmtdXCIgW3JvdXRlckxpbmtBY3RpdmVdPVwiJ2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWFjdGl2ZSdcIlxuICAgIFtyb3V0ZXJMaW5rQWN0aXZlT3B0aW9uc109XCJpc0FjdGl2ZU1hdGNoT3B0aW9uc1wiIFttYXRUb29sdGlwXT1cIml0ZW0udG9vbHRpcCB8fCAnJ1wiIChjbGljayk9XCJpdGVtLmZ1bmN0aW9uKGl0ZW0pXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8L2E+XG4gIH1cblxuICA8IS0tIEl0ZW0gd2l0aCBhbiBleHRlcm5hbCBsaW5rIGFuZCBmdW5jdGlvbiAtLT5cbiAgQGlmIChpdGVtLmxpbmsgJiYgaXRlbS5leHRlcm5hbExpbmsgJiYgaXRlbS5mdW5jdGlvbiAmJiAhaXRlbS5kaXNhYmxlZCkge1xuICA8YSBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtXCIgW2hyZWZdPVwiaXRlbS5saW5rXCIgW3RhcmdldF09XCJpdGVtLnRhcmdldCB8fCAnX2JsYW5rJ1wiXG4gICAgW21hdFRvb2x0aXBdPVwiaXRlbS50b29sdGlwIHx8ICcnXCIgKGNsaWNrKT1cIml0ZW0uZnVuY3Rpb24oaXRlbSlcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvYT5cbiAgfVxuXG4gIDwhLS0gSXRlbSB3aXRoIGEgbm8gbGluayBhbmQgbm8gZnVuY3Rpb24gLS0+XG4gIEBpZiAoIWl0ZW0ubGluayAmJiAhaXRlbS5mdW5jdGlvbiAmJiAhaXRlbS5kaXNhYmxlZCkge1xuICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW1cIiBbbmdDbGFzc109XCJ7J2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWFjdGl2ZS1mb3JjZWQnOiBpdGVtLmFjdGl2ZX1cIlxuICAgIFttYXRUb29sdGlwXT1cIml0ZW0udG9vbHRpcCB8fCAnJ1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIH1cblxuICA8IS0tIEl0ZW0gaXMgZGlzYWJsZWQgLS0+XG4gIEBpZiAoaXRlbS5kaXNhYmxlZCkge1xuICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0gY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tZGlzYWJsZWRcIiBbbWF0VG9vbHRpcF09XCJpdGVtLnRvb2x0aXAgfHwgJydcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICB9XG4gIH1cbjwvZGl2PlxuXG48IS0tIEl0ZW0gdGVtcGxhdGUgLS0+XG48bmctdGVtcGxhdGUgI2l0ZW1UZW1wbGF0ZT5cblxuICA8IS0tIEljb24gLS0+XG4gIEBpZiAoaXRlbS5pY29uKSB7XG4gIDxtYXQtaWNvbiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWljb25cIiBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/Lmljb25cIiBbc3ZnSWNvbl09XCJpdGVtLmljb25cIj5cbiAgPC9tYXQtaWNvbj5cbiAgfVxuXG4gIDwhLS0gVGl0bGUgJiBTdWJ0aXRsZSAtLT5cbiAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLXRpdGxlLXdyYXBwZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tdGl0bGVcIj5cbiAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cIml0ZW0uY2xhc3Nlcz8udGl0bGVcIj5cbiAgICAgICAge3tpdGVtLnRpdGxlfX1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICBAaWYgKGl0ZW0uc3ViVGl0bGUpIHtcbiAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tc3VidGl0bGVcIj5cbiAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cIml0ZW0uY2xhc3Nlcz8uc3VidGl0bGVcIj5cbiAgICAgICAge3tpdGVtLnN1YlRpdGxlfX1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuXG4gIDwhLS0gQmFkZ2UgLS0+XG4gIEBpZiAoaXRlbS5iYWRnZSkge1xuICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYmFkZ2VcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYmFkZ2UtY29udGVudFwiIFtuZ0NsYXNzXT1cIml0ZW0uYmFkZ2UuY2xhc3Nlc1wiPlxuICAgICAge3tpdGVtLmJhZGdlLnRpdGxlfX1cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIH1cbjwvbmctdGVtcGxhdGU+Il19
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL25hdmlnYXRpb24vdmVydGljYWwvY29tcG9uZW50cy9iYXNpYy9iYXNpYy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbmF2aWdhdGlvbi92ZXJ0aWNhbC9jb21wb25lbnRzL2Jhc2ljL2Jhc2ljLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEksT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBd0IsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQWMzQyxNQUFNLE9BQU8sd0NBQXdDO0lBVWpELFlBQ1ksa0JBQXFDLEVBQ3JDLHNCQUE2QyxFQUM3QyxpQkFBbUM7UUFGbkMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXVCO1FBQzdDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFWdEMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUNqQiw0QkFBdUIsR0FBcUMsSUFBSSxZQUFZLEVBQXNCLENBQUM7UUFJOUcsb0JBQWUsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVF6RCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDO0lBQzFFLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLG9CQUFvQjtZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVTtnQkFDbEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUI7Z0JBQzFDLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLENBQUM7UUFFcEQsc0NBQXNDO1FBQ3RDLElBQUksQ0FBQyxnQ0FBZ0MsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU1RixpQkFBaUI7UUFDakIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXZDLHVEQUF1RDtRQUN2RCxJQUFJLENBQUMsZ0NBQWdDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDbEQsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FDbEMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBRWIsaUJBQWlCO1lBQ2pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxVQUFVO1FBQ04sSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakQsQ0FBQzsrR0FoRFEsd0NBQXdDO21HQUF4Qyx3Q0FBd0MsZ09DcEJyRCw4NklBd0djLDRDRHRGQSxPQUFPLG9GQUFFLFVBQVUsb09BQUUsZ0JBQWdCLDZNQUFFLGdCQUFnQiw2VEFBRSxnQkFBZ0IsbUpBQUUsYUFBYTs7NEZBRXpGLHdDQUF3QztrQkFScEQsU0FBUzsrQkFDSSxxQ0FBcUMsbUJBRzlCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLENBQUM7eUpBRzFGLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDYSx1QkFBdUI7c0JBQXpDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IElzQWN0aXZlTWF0Y2hPcHRpb25zLCBSb3V0ZXJMaW5rLCBSb3V0ZXJMaW5rQWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENtYXRVdGlsc1NlcnZpY2UgfSBmcm9tICdjbWF0L3NlcnZpY2VzL3V0aWxzJztcclxuaW1wb3J0IHsgQ21hdE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vbmF2aWdhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ21hdE5hdmlnYXRpb25JdGVtIH0gZnJvbSAnLi4vLi4vLi4vbmF2aWdhdGlvbi50eXBlcyc7XHJcbmltcG9ydCB7IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi92ZXJ0aWNhbC92ZXJ0aWNhbC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1iYXNpYy1pdGVtJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXNpYy5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZXM6IFtdLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW05nQ2xhc3MsIFJvdXRlckxpbmssIFJvdXRlckxpbmtBY3RpdmUsIE1hdFRvb2x0aXBNb2R1bGUsIE5nVGVtcGxhdGVPdXRsZXQsIE1hdEljb25Nb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQmFzaWNJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtO1xyXG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgZWRpdFN0YXRlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDbWF0TmF2aWdhdGlvbkl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxDbWF0TmF2aWdhdGlvbkl0ZW0+KCk7XHJcbiAgICBcclxuICAgIGlzQWN0aXZlTWF0Y2hPcHRpb25zOiBJc0FjdGl2ZU1hdGNoT3B0aW9ucztcclxuICAgIHByaXZhdGUgX2NtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQ6IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQ7XHJcbiAgICBwcml2YXRlIF91bnN1YnNjcmliZUFsbDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgIHByaXZhdGUgX2NtYXROYXZpZ2F0aW9uU2VydmljZTogQ21hdE5hdmlnYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX2NtYXRVdGlsc1NlcnZpY2U6IENtYXRVdGlsc1NlcnZpY2VcclxuICAgICkge1xyXG5cclxuICAgICAgICB0aGlzLmlzQWN0aXZlTWF0Y2hPcHRpb25zID0gdGhpcy5fY21hdFV0aWxzU2VydmljZS5zdWJzZXRNYXRjaE9wdGlvbnM7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pc0FjdGl2ZU1hdGNoT3B0aW9ucyA9XHJcbiAgICAgICAgICAgIHRoaXMuaXRlbS5pc0FjdGl2ZU1hdGNoT3B0aW9ucyA/PyB0aGlzLml0ZW0uZXhhY3RNYXRjaFxyXG4gICAgICAgICAgICAgICAgPyB0aGlzLl9jbWF0VXRpbHNTZXJ2aWNlLmV4YWN0TWF0Y2hPcHRpb25zXHJcbiAgICAgICAgICAgICAgICA6IHRoaXMuX2NtYXRVdGlsc1NlcnZpY2Uuc3Vic2V0TWF0Y2hPcHRpb25zO1xyXG5cclxuICAgICAgICAvLyBHZXQgdGhlIHBhcmVudCBuYXZpZ2F0aW9uIGNvbXBvbmVudFxyXG4gICAgICAgIHRoaXMuX2NtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQgPSB0aGlzLl9jbWF0TmF2aWdhdGlvblNlcnZpY2UuZ2V0Q29tcG9uZW50KHRoaXMubmFtZSk7XHJcblxyXG4gICAgICAgIC8vIE1hcmsgZm9yIGNoZWNrXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcblxyXG4gICAgICAgIC8vIFN1YnNjcmliZSB0byBvblJlZnJlc2hlZCBvbiB0aGUgbmF2aWdhdGlvbiBjb21wb25lbnRcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50Lm9uUmVmcmVzaGVkLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl91bnN1YnNjcmliZUFsbClcclxuICAgICAgICApLnN1YnNjcmliZSgoKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAvLyBNYXJrIGZvciBjaGVja1xyXG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KHZvaWQgMCk7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RJdGVtKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQubmV4dCh0aGlzLml0ZW0pO1xyXG4gICAgfVxyXG59XHJcbiIsIjwhLS0gSXRlbSB3cmFwcGVyIC0tPlxyXG48ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0td3JhcHBlclwiIFtjbGFzcy5jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1oYXMtc3VidGl0bGVdPVwiISFpdGVtLnN1YlRpdGxlXCJcclxuICBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/LndyYXBwZXJcIj5cclxuXHJcbiAgQGlmKGVkaXRTdGF0ZSl7XHJcbiAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtXCIgcm9sZT1cInByZXNlbnRhdGlvblwiXHJcbiAgICBbbmdDbGFzc109XCJ7J2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWFjdGl2ZS1mb3JjZWQnOiBpdGVtLmFjdGl2ZX1cIiBbbWF0VG9vbHRpcF09XCJpdGVtLnRvb2x0aXAgfHwgJydcIlxyXG4gICAgKGNsaWNrKT1cInNlbGVjdEl0ZW0oKVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG4gIH1AZWxzZXtcclxuICA8IS0tIEl0ZW0gd2l0aCBhbiBpbnRlcm5hbCBsaW5rIC0tPlxyXG4gIEBpZiAoaXRlbS5saW5rICYmICFpdGVtLmV4dGVybmFsTGluayAmJiAhaXRlbS5mdW5jdGlvbiAmJiAhaXRlbS5kaXNhYmxlZCkge1xyXG4gIDxhIGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW1cIiBbbmdDbGFzc109XCJ7J2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWFjdGl2ZS1mb3JjZWQnOiBpdGVtLmFjdGl2ZX1cIlxyXG4gICAgW3JvdXRlckxpbmtdPVwiW2l0ZW0ubGlua11cIiBbcm91dGVyTGlua0FjdGl2ZV09XCInY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYWN0aXZlJ1wiXHJcbiAgICBbcm91dGVyTGlua0FjdGl2ZU9wdGlvbnNdPVwiaXNBY3RpdmVNYXRjaE9wdGlvbnNcIiBbbWF0VG9vbHRpcF09XCJpdGVtLnRvb2x0aXAgfHwgJydcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L2E+XHJcbiAgfVxyXG5cclxuICA8IS0tIEl0ZW0gd2l0aCBhbiBleHRlcm5hbCBsaW5rIC0tPlxyXG4gIEBpZiAoaXRlbS5saW5rICYmIGl0ZW0uZXh0ZXJuYWxMaW5rICYmICFpdGVtLmZ1bmN0aW9uICYmICFpdGVtLmRpc2FibGVkKSB7XHJcbiAgPGEgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbVwiIFtocmVmXT1cIml0ZW0ubGlua1wiIFt0YXJnZXRdPVwiaXRlbS50YXJnZXQgfHwgJ19ibGFuaydcIlxyXG4gICAgW21hdFRvb2x0aXBdPVwiaXRlbS50b29sdGlwIHx8ICcnXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgPC9hPlxyXG4gIH1cclxuXHJcbiAgPCEtLSBJdGVtIHdpdGggYSBmdW5jdGlvbiAtLT5cclxuICBAaWYgKCFpdGVtLmxpbmsgJiYgaXRlbS5mdW5jdGlvbiAmJiAhaXRlbS5kaXNhYmxlZCkge1xyXG4gIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbVwiIHJvbGU9XCJwcmVzZW50YXRpb25cIlxyXG4gICAgW25nQ2xhc3NdPVwieydjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1hY3RpdmUtZm9yY2VkJzogaXRlbS5hY3RpdmV9XCIgW21hdFRvb2x0aXBdPVwiaXRlbS50b29sdGlwIHx8ICcnXCJcclxuICAgIChjbGljayk9XCJpdGVtLmZ1bmN0aW9uKGl0ZW0pXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgfVxyXG5cclxuICA8IS0tIEl0ZW0gd2l0aCBhbiBpbnRlcm5hbCBsaW5rIGFuZCBmdW5jdGlvbiAtLT5cclxuICBAaWYgKGl0ZW0ubGluayAmJiAhaXRlbS5leHRlcm5hbExpbmsgJiYgaXRlbS5mdW5jdGlvbiAmJiAhaXRlbS5kaXNhYmxlZCkge1xyXG4gIDxhIGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW1cIiBbbmdDbGFzc109XCJ7J2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWFjdGl2ZS1mb3JjZWQnOiBpdGVtLmFjdGl2ZX1cIlxyXG4gICAgW3JvdXRlckxpbmtdPVwiW2l0ZW0ubGlua11cIiBbcm91dGVyTGlua0FjdGl2ZV09XCInY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYWN0aXZlJ1wiXHJcbiAgICBbcm91dGVyTGlua0FjdGl2ZU9wdGlvbnNdPVwiaXNBY3RpdmVNYXRjaE9wdGlvbnNcIiBbbWF0VG9vbHRpcF09XCJpdGVtLnRvb2x0aXAgfHwgJydcIiAoY2xpY2spPVwiaXRlbS5mdW5jdGlvbihpdGVtKVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvYT5cclxuICB9XHJcblxyXG4gIDwhLS0gSXRlbSB3aXRoIGFuIGV4dGVybmFsIGxpbmsgYW5kIGZ1bmN0aW9uIC0tPlxyXG4gIEBpZiAoaXRlbS5saW5rICYmIGl0ZW0uZXh0ZXJuYWxMaW5rICYmIGl0ZW0uZnVuY3Rpb24gJiYgIWl0ZW0uZGlzYWJsZWQpIHtcclxuICA8YSBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtXCIgW2hyZWZdPVwiaXRlbS5saW5rXCIgW3RhcmdldF09XCJpdGVtLnRhcmdldCB8fCAnX2JsYW5rJ1wiXHJcbiAgICBbbWF0VG9vbHRpcF09XCJpdGVtLnRvb2x0aXAgfHwgJydcIiAoY2xpY2spPVwiaXRlbS5mdW5jdGlvbihpdGVtKVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvYT5cclxuICB9XHJcblxyXG4gIDwhLS0gSXRlbSB3aXRoIGEgbm8gbGluayBhbmQgbm8gZnVuY3Rpb24gLS0+XHJcbiAgQGlmICghaXRlbS5saW5rICYmICFpdGVtLmZ1bmN0aW9uICYmICFpdGVtLmRpc2FibGVkKSB7XHJcbiAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtXCIgW25nQ2xhc3NdPVwieydjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1hY3RpdmUtZm9yY2VkJzogaXRlbS5hY3RpdmV9XCJcclxuICAgIFttYXRUb29sdGlwXT1cIml0ZW0udG9vbHRpcCB8fCAnJ1wiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG4gIH1cclxuXHJcbiAgPCEtLSBJdGVtIGlzIGRpc2FibGVkIC0tPlxyXG4gIEBpZiAoaXRlbS5kaXNhYmxlZCkge1xyXG4gIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbSBjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1kaXNhYmxlZFwiIFttYXRUb29sdGlwXT1cIml0ZW0udG9vbHRpcCB8fCAnJ1wiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG4gIH1cclxuICB9XHJcbjwvZGl2PlxyXG5cclxuPCEtLSBJdGVtIHRlbXBsYXRlIC0tPlxyXG48bmctdGVtcGxhdGUgI2l0ZW1UZW1wbGF0ZT5cclxuXHJcbiAgPCEtLSBJY29uIC0tPlxyXG4gIEBpZiAoaXRlbS5pY29uKSB7XHJcbiAgPG1hdC1pY29uIGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0taWNvblwiIFtuZ0NsYXNzXT1cIml0ZW0uY2xhc3Nlcz8uaWNvblwiIFtzdmdJY29uXT1cIml0ZW0uaWNvblwiPlxyXG4gIDwvbWF0LWljb24+XHJcbiAgfVxyXG5cclxuICA8IS0tIFRpdGxlICYgU3VidGl0bGUgLS0+XHJcbiAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLXRpdGxlLXdyYXBwZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS10aXRsZVwiPlxyXG4gICAgICA8c3BhbiBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/LnRpdGxlXCI+XHJcbiAgICAgICAge3tpdGVtLnRpdGxlfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICBAaWYgKGl0ZW0uc3ViVGl0bGUpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1zdWJ0aXRsZVwiPlxyXG4gICAgICA8c3BhbiBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/LnN1YnRpdGxlXCI+XHJcbiAgICAgICAge3tpdGVtLnN1YlRpdGxlfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcblxyXG4gIDwhLS0gQmFkZ2UgLS0+XHJcbiAgQGlmIChpdGVtLmJhZGdlKSB7XHJcbiAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWJhZGdlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYmFkZ2UtY29udGVudFwiIFtuZ0NsYXNzXT1cIml0ZW0uYmFkZ2UuY2xhc3Nlc1wiPlxyXG4gICAgICB7e2l0ZW0uYmFkZ2UudGl0bGV9fVxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgfVxyXG48L25nLXRlbXBsYXRlPiJdfQ==
|
package/esm2022/components/navigation/vertical/components/collapsable/collapsable.component.mjs
CHANGED
|
@@ -240,7 +240,7 @@ export class CmatVerticalNavigationCollapsableItemComponent {
|
|
|
240
240
|
if (!children) {
|
|
241
241
|
return false;
|
|
242
242
|
}
|
|
243
|
-
if (children.
|
|
243
|
+
if (children.includes(item)) {
|
|
244
244
|
return true;
|
|
245
245
|
}
|
|
246
246
|
for (const child of children) {
|
|
@@ -252,10 +252,10 @@ export class CmatVerticalNavigationCollapsableItemComponent {
|
|
|
252
252
|
}
|
|
253
253
|
return false;
|
|
254
254
|
}
|
|
255
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
256
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
255
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatVerticalNavigationCollapsableItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Router }, { token: i2.CmatNavigationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
256
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.10", type: CmatVerticalNavigationCollapsableItemComponent, isStandalone: true, selector: "cmat-vertical-navigation-collapsable-item", inputs: { autoCollapse: "autoCollapse", item: "item", name: "name", editState: "editState" }, outputs: { editSelectedItemChanged: "editSelectedItemChanged" }, host: { properties: { "class": "this.classList" } }, ngImport: i0, template: "<div class=\"cmat-vertical-navigation-item-wrapper\" [class.cmat-vertical-navigation-item-has-subtitle]=\"!!item.subTitle\"\r\n [ngClass]=\"item.classes?.wrapper\">\r\n\r\n <div class=\"cmat-vertical-navigation-item\" role=\"presentation\" [ngClass]=\"{'cmat-vertical-navigation-item-disabled': item.disabled}\"\r\n [matTooltip]=\"item.tooltip || ''\" (click)=\"toggleCollapsable();selectItem(item);\">\r\n\r\n <!-- Icon -->\r\n @if (item.icon) {\r\n <mat-icon class=\"cmat-vertical-navigation-item-icon\" [ngClass]=\"item.classes?.icon\" [svgIcon]=\"item.icon\">\r\n </mat-icon>\r\n }\r\n\r\n <!-- Title & Subtitle -->\r\n <div class=\"cmat-vertical-navigation-item-title-wrapper\">\r\n <div class=\"cmat-vertical-navigation-item-title\">\r\n <span [ngClass]=\"item.classes?.title\">\r\n {{item.title}}\r\n </span>\r\n </div>\r\n @if (item.subTitle) {\r\n <div class=\"cmat-vertical-navigation-item-subtitle\">\r\n <span [ngClass]=\"item.classes?.subtitle\">\r\n {{item.subTitle}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n\r\n <!-- Badge -->\r\n @if (item.badge) {\r\n <div class=\"cmat-vertical-navigation-item-badge\">\r\n <div class=\"cmat-vertical-navigation-item-badge-content\" [ngClass]=\"item.badge.classes\">\r\n {{item.badge.title}}\r\n </div>\r\n </div>\r\n }\r\n\r\n <!-- Arrow -->\r\n <mat-icon class=\"cmat-vertical-navigation-item-arrow icon-size-4\" [svgIcon]=\"'heroicons_outline:chevron-right'\">\r\n </mat-icon>\r\n\r\n </div>\r\n\r\n</div>\r\n\r\n@if (!isCollapsed) {\r\n <div class=\"cmat-vertical-navigation-item-children\" @expandCollapse>\r\n @for (item of item.children; track trackByFn($index, item)) {\r\n <!-- Skip the hidden items -->\r\n @if ((item.hidden && !item.hidden(item)) || !item.hidden) {\r\n <!-- Basic -->\r\n @if (item.type === 'basic') {\r\n <cmat-vertical-navigation-basic-item [item]=\"item\" [name]=\"name\" [editState]=\"editState\" (editSelectedItemChanged)=\"selectItem($event)\"></cmat-vertical-navigation-basic-item>\r\n }\r\n <!-- Collapsable -->\r\n @if (item.type === 'collapsable') {\r\n <cmat-vertical-navigation-collapsable-item [item]=\"item\" [name]=\"name\" [autoCollapse]=\"autoCollapse\" [editState]=\"editState\" (editSelectedItemChanged)=\"selectItem($event)\">\r\n </cmat-vertical-navigation-collapsable-item>\r\n }\r\n <!-- Divider -->\r\n @if (item.type === 'divider') {\r\n <cmat-vertical-navigation-divider-item [item]=\"item\" [name]=\"name\" [editState]=\"editState\" (editSelectedItemChanged)=\"selectItem($event)\">\r\n </cmat-vertical-navigation-divider-item>\r\n }\r\n <!-- Group -->\r\n @if (item.type === 'group') {\r\n <cmat-vertical-navigation-group-item [item]=\"item\" [name]=\"name\" [editState]=\"editState\" (editSelectedItemChanged)=\"selectItem($event)\"></cmat-vertical-navigation-group-item>\r\n }\r\n <!-- Spacer -->\r\n @if (item.type === 'spacer') {\r\n <cmat-vertical-navigation-spacer-item [item]=\"item\" [name]=\"name\" [editState]=\"editState\" (editSelectedItemChanged)=\"selectItem($event)\">\r\n </cmat-vertical-navigation-spacer-item>\r\n }\r\n }\r\n }\r\n </div>\r\n}", dependencies: [{ kind: "component", type: i0.forwardRef(() => CmatVerticalNavigationCollapsableItemComponent), selector: "cmat-vertical-navigation-collapsable-item", inputs: ["autoCollapse", "item", "name", "editState"], outputs: ["editSelectedItemChanged"] }, { kind: "directive", type: i0.forwardRef(() => NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatTooltipModule) }, { kind: "directive", type: i0.forwardRef(() => i3.MatTooltip), selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatIconModule) }, { kind: "component", type: i0.forwardRef(() => i4.MatIcon), selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i0.forwardRef(() => CmatVerticalNavigationBasicItemComponent), selector: "cmat-vertical-navigation-basic-item", inputs: ["item", "name", "editState"], outputs: ["editSelectedItemChanged"] }, { kind: "component", type: i0.forwardRef(() => CmatVerticalNavigationGroupItemComponent), selector: "cmat-vertical-navigation-group-item", inputs: ["autoCollapse", "item", "name", "editState"], outputs: ["editSelectedItemChanged"] }, { kind: "component", type: i0.forwardRef(() => CmatVerticalNavigationDividerItemComponent), selector: "cmat-vertical-navigation-divider-item", inputs: ["item", "name", "editState"], outputs: ["editSelectedItemChanged"] }, { kind: "component", type: i0.forwardRef(() => CmatVerticalNavigationSpacerItemComponent), selector: "cmat-vertical-navigation-spacer-item", inputs: ["item", "name", "editState"], outputs: ["editSelectedItemChanged"] }], animations: cmatAnimations, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
257
257
|
}
|
|
258
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
258
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatVerticalNavigationCollapsableItemComponent, decorators: [{
|
|
259
259
|
type: Component,
|
|
260
260
|
args: [{ selector: 'cmat-vertical-navigation-collapsable-item', animations: cmatAnimations, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgClass, MatTooltipModule, MatIconModule, CmatVerticalNavigationBasicItemComponent,
|
|
261
261
|
forwardRef(() => CmatVerticalNavigationCollapsableItemComponent),
|
|
@@ -274,4 +274,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImpor
|
|
|
274
274
|
type: HostBinding,
|
|
275
275
|
args: ['class']
|
|
276
276
|
}] } });
|
|
277
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2FibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL25hdmlnYXRpb24vdmVydGljYWwvY29tcG9uZW50cy9jb2xsYXBzYWJsZS9jb2xsYXBzYWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbmF2aWdhdGlvbi92ZXJ0aWNhbC9jb21wb25lbnRzL2NvbGxhcHNhYmxlL2NvbGxhcHNhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvSixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFJakQsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEYsT0FBTyxFQUFFLDBDQUEwQyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUYsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEYsT0FBTyxF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eUNBQXlDLGlKQUx6SSxjQUFjOzsyRkFPakIsOENBQThDO2tCQVgxRCxTQUFTOytCQUNJLDJDQUEyQyxjQUd6QyxjQUFjLG1CQUNULHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSx3Q0FBd0M7d0JBQ3hGLFVBQVUsQ0FBQyxHQUFHLEVBQUUsK0NBQStDLENBQUM7d0JBQ2hFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3Q0FBd0MsQ0FBQyxFQUFFLDBDQUEwQyxFQUFFLHlDQUF5QyxDQUFDOytJQU83SSxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDYSx1QkFBdUI7c0JBQXpDLE1BQU07Z0JBcUJtQixTQUFTO3NCQUFsQyxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xyXG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBjbWF0QW5pbWF0aW9ucyB9IGZyb20gJ2NtYXQvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IENtYXROYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL25hdmlnYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IENtYXROYXZpZ2F0aW9uSXRlbSB9IGZyb20gJy4uLy4uLy4uL25hdmlnYXRpb24udHlwZXMnO1xyXG5pbXBvcnQgeyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vdmVydGljYWwvdmVydGljYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkJhc2ljSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2ljL2Jhc2ljLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25EaXZpZGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uR3JvdXBJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JvdXAvZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ21hdFZlcnRpY2FsTmF2aWdhdGlvblNwYWNlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9zcGFjZXIvc3BhY2VyLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWNvbGxhcHNhYmxlLWl0ZW0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbGxhcHNhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlczogW10sXHJcbiAgICBhbmltYXRpb25zOiBjbWF0QW5pbWF0aW9ucyxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtOZ0NsYXNzLCBNYXRUb29sdGlwTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQmFzaWNJdGVtQ29tcG9uZW50LCBcclxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db2xsYXBzYWJsZUl0ZW1Db21wb25lbnQpLCBcclxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Hcm91cEl0ZW1Db21wb25lbnQpLCBDbWF0VmVydGljYWxOYXZpZ2F0aW9uRGl2aWRlckl0ZW1Db21wb25lbnQsIENtYXRWZXJ0aWNhbE5hdmlnYXRpb25TcGFjZXJJdGVtQ29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbGxhcHNhYmxlSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIC8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvbiAqL1xyXG4gICAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2F1dG9Db2xsYXBzZTogQm9vbGVhbklucHV0O1xyXG4gICAgLyogZXNsaW50LWVuYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cclxuXHJcbiAgICBASW5wdXQoKSBhdXRvQ29sbGFwc2U6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBpdGVtOiBDbWF0TmF2aWdhdGlvbkl0ZW07XHJcbiAgICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBlZGl0U3RhdGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBPdXRwdXQoKSByZWFkb25seSBlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZDogRXZlbnRFbWl0dGVyPENtYXROYXZpZ2F0aW9uSXRlbT4gPSBuZXcgRXZlbnRFbWl0dGVyPENtYXROYXZpZ2F0aW9uSXRlbT4oKTtcclxuICAgIFxyXG4gICAgaXNDb2xsYXBzZWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgaXNFeHBhbmRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBfY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDogQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDtcclxuICAgIHByaXZhdGUgX3Vuc3Vic2NyaWJlQWxsOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBfY21hdE5hdmlnYXRpb25TZXJ2aWNlOiBDbWF0TmF2aWdhdGlvblNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBAIEFjY2Vzc29yc1xyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEhvc3QgYmluZGluZyBmb3IgY29tcG9uZW50IGNsYXNzZXNcclxuICAgICAqL1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGdldCBjbGFzc0xpc3QoKTogYW55IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXHJcbiAgICAgICAgICAgICdjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1jb2xsYXBzZWQnOiB0aGlzLmlzQ29sbGFwc2VkLFxyXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXHJcbiAgICAgICAgICAgICdjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1leHBhbmRlZCc6IHRoaXMuaXNFeHBhbmRlZFxyXG4gICAgICAgIH07XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEAgTGlmZWN5Y2xlIGhvb2tzXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT24gaW5pdFxyXG4gICAgICovXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICAvLyBHZXQgdGhlIHBhcmVudCBuYXZpZ2F0aW9uIGNvbXBvbmVudFxyXG4gICAgICAgIHRoaXMuX2NtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQgPSB0aGlzLl9jbWF0TmF2aWdhdGlvblNlcnZpY2UuZ2V0Q29tcG9uZW50KHRoaXMubmFtZSk7XHJcblxyXG4gICAgICAgIC8vIElmIHRoZSBpdGVtIGhhcyBhIGNoaWxkcmVuIHRoYXQgaGFzIGEgbWF0Y2hpbmcgdXJsIHdpdGggdGhlIGN1cnJlbnQgdXJsLCBleHBhbmQuLi5cclxuICAgICAgICBpZiAodGhpcy5faGFzQWN0aXZlQ2hpbGQodGhpcy5pdGVtLCB0aGlzLl9yb3V0ZXIudXJsKSkge1xyXG4gICAgICAgICAgICB0aGlzLmV4cGFuZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBPdGhlcndpc2UuLi5cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgLy8gSWYgdGhlIGF1dG9Db2xsYXBzZSBpcyBvbiwgY29sbGFwc2UuLi5cclxuICAgICAgICAgICAgaWYgKHRoaXMuYXV0b0NvbGxhcHNlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNvbGxhcHNlKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIExpc3RlbiBmb3IgdGhlIG9uQ29sbGFwc2FibGVJdGVtQ29sbGFwc2VkIGZyb20gdGhlIHNlcnZpY2VcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50Lm9uQ29sbGFwc2FibGVJdGVtQ29sbGFwc2VkXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl91bnN1YnNjcmliZUFsbCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbGxhcHNlZEl0ZW0pID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiB0aGUgY29sbGFwc2VkIGl0ZW0gaXMgbnVsbFxyXG4gICAgICAgICAgICAgICAgaWYgKGNvbGxhcHNlZEl0ZW0gPT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gQ29sbGFwc2UgaWYgdGhpcyBpcyBhIGNoaWxkcmVuIG9mIHRoZSBjb2xsYXBzZWQgaXRlbVxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX2lzQ2hpbGRyZW5PZihjb2xsYXBzZWRJdGVtLCB0aGlzLml0ZW0pKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2xsYXBzZSgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gTGlzdGVuIGZvciB0aGUgb25Db2xsYXBzYWJsZUl0ZW1FeHBhbmRlZCBmcm9tIHRoZSBzZXJ2aWNlIGlmIHRoZSBhdXRvQ29sbGFwc2UgaXMgb25cclxuICAgICAgICBpZiAodGhpcy5hdXRvQ29sbGFwc2UpIHtcclxuICAgICAgICAgICAgdGhpcy5fY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudC5vbkNvbGxhcHNhYmxlSXRlbUV4cGFuZGVkXHJcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmVBbGwpKVxyXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoZXhwYW5kZWRJdGVtKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIENoZWNrIGlmIHRoZSBleHBhbmRlZCBpdGVtIGlzIG51bGxcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZXhwYW5kZWRJdGVtID09PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIENoZWNrIGlmIHRoaXMgaXMgYSBwYXJlbnQgb2YgdGhlIGV4cGFuZGVkIGl0ZW1cclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5faXNDaGlsZHJlbk9mKHRoaXMuaXRlbSwgZXhwYW5kZWRJdGVtKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiB0aGlzIGhhcyBhIGNoaWxkcmVuIHdpdGggYSBtYXRjaGluZyB1cmwgd2l0aCB0aGUgY3VycmVudCBhY3RpdmUgdXJsXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX2hhc0FjdGl2ZUNoaWxkKHRoaXMuaXRlbSwgdGhpcy5fcm91dGVyLnVybCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYgdGhpcyBpcyB0aGUgZXhwYW5kZWQgaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLml0ZW0gPT09IGV4cGFuZGVkSXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBJZiBub25lIG9mIHRoZSBhYm92ZSBjb25kaXRpb25zIGFyZSBtYXRjaGVkLCBjb2xsYXBzZSB0aGlzIGl0ZW1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbGxhcHNlKCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEF0dGFjaCBhIGxpc3RlbmVyIHRvIHRoZSBOYXZpZ2F0aW9uRW5kIGV2ZW50XHJcbiAgICAgICAgdGhpcy5fcm91dGVyLmV2ZW50c1xyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIGZpbHRlcigoZXZlbnQpOiBldmVudCBpcyBOYXZpZ2F0aW9uRW5kID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXHJcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmVBbGwpXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQ6IE5hdmlnYXRpb25FbmQpID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBJZiB0aGUgaXRlbSBoYXMgYSBjaGlsZHJlbiB0aGF0IGhhcyBhIG1hdGNoaW5nIHVybCB3aXRoIHRoZSBjdXJyZW50IHVybCwgZXhwYW5kLi4uXHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5faGFzQWN0aXZlQ2hpbGQodGhpcy5pdGVtLCBldmVudC51cmxBZnRlclJlZGlyZWN0cykpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmV4cGFuZCgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy8gT3RoZXJ3aXNlLi4uXHJcbiAgICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGUgYXV0b0NvbGxhcHNlIGlzIG9uLCBjb2xsYXBzZS4uLlxyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmF1dG9Db2xsYXBzZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbGxhcHNlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gU3Vic2NyaWJlIHRvIG9uUmVmcmVzaGVkIG9uIHRoZSBuYXZpZ2F0aW9uIGNvbXBvbmVudFxyXG4gICAgICAgIHRoaXMuX2NtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQub25SZWZyZXNoZWQucGlwZShcclxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKVxyXG4gICAgICAgICkuc3Vic2NyaWJlKCgpID0+IHtcclxuXHJcbiAgICAgICAgICAgIC8vIE1hcmsgZm9yIGNoZWNrXHJcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT24gZGVzdHJveVxyXG4gICAgICovXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICAvLyBVbnN1YnNjcmliZSBmcm9tIGFsbCBzdWJzY3JpcHRpb25zXHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwubmV4dCh2b2lkIDApO1xyXG4gICAgICAgIHRoaXMuX3Vuc3Vic2NyaWJlQWxsLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEAgUHVibGljIG1ldGhvZHNcclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb2xsYXBzZVxyXG4gICAgICovXHJcbiAgICBjb2xsYXBzZSgpOiB2b2lkIHtcclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGl0ZW0gaXMgZGlzYWJsZWRcclxuICAgICAgICBpZiAodGhpcy5pdGVtLmRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFJldHVybiBpZiB0aGUgaXRlbSBpcyBhbHJlYWR5IGNvbGxhcHNlZFxyXG4gICAgICAgIGlmICh0aGlzLmlzQ29sbGFwc2VkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIENvbGxhcHNlIGl0XHJcbiAgICAgICAgdGhpcy5pc0NvbGxhcHNlZCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5pc0V4cGFuZGVkID0gIXRoaXMuaXNDb2xsYXBzZWQ7XHJcblxyXG4gICAgICAgIC8vIE1hcmsgZm9yIGNoZWNrXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcblxyXG4gICAgICAgIC8vIEV4ZWN1dGUgdGhlIG9ic2VydmFibGVcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50Lm9uQ29sbGFwc2FibGVJdGVtQ29sbGFwc2VkLm5leHQodGhpcy5pdGVtKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEV4cGFuZFxyXG4gICAgICovXHJcbiAgICBleHBhbmQoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gUmV0dXJuIGlmIHRoZSBpdGVtIGlzIGRpc2FibGVkXHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbS5kaXNhYmxlZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGl0ZW0gaXMgYWxyZWFkeSBleHBhbmRlZFxyXG4gICAgICAgIGlmICghdGhpcy5pc0NvbGxhcHNlZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBFeHBhbmQgaXRcclxuICAgICAgICB0aGlzLmlzQ29sbGFwc2VkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pc0V4cGFuZGVkID0gIXRoaXMuaXNDb2xsYXBzZWQ7XHJcblxyXG4gICAgICAgIC8vIE1hcmsgZm9yIGNoZWNrXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcblxyXG4gICAgICAgIC8vIEV4ZWN1dGUgdGhlIG9ic2VydmFibGVcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50Lm9uQ29sbGFwc2FibGVJdGVtRXhwYW5kZWQubmV4dCh0aGlzLml0ZW0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVG9nZ2xlIGNvbGxhcHNhYmxlXHJcbiAgICAgKi9cclxuICAgIHRvZ2dsZUNvbGxhcHNhYmxlKCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFRvZ2dsZSBjb2xsYXBzZS9leHBhbmRcclxuICAgICAgICBpZiAodGhpcy5pc0NvbGxhcHNlZCkge1xyXG4gICAgICAgICAgICB0aGlzLmV4cGFuZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jb2xsYXBzZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFRyYWNrIGJ5IGZ1bmN0aW9uIGZvciBuZ0ZvciBsb29wc1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpbmRleFxyXG4gICAgICogQHBhcmFtIGl0ZW1cclxuICAgICAqL1xyXG4gICAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0uaWQgfHwgaW5kZXg7XHJcbiAgICB9XHJcblxyXG4gICAgc2VsZWN0SXRlbShpdGVtOiBDbWF0TmF2aWdhdGlvbkl0ZW0pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkLm5leHQoaXRlbSk7XHJcbiAgICB9XHJcblxyXG4gICAgXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQCBQcml2YXRlIG1ldGhvZHNcclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiB0aGUgZ2l2ZW4gaXRlbSBoYXMgdGhlIGdpdmVuIHVybFxyXG4gICAgICogaW4gb25lIG9mIGl0cyBjaGlsZHJlblxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpdGVtXHJcbiAgICAgKiBAcGFyYW0gY3VycmVudFVybFxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBfaGFzQWN0aXZlQ2hpbGQoaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtLCBjdXJyZW50VXJsOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGl0ZW0uY2hpbGRyZW47XHJcblxyXG4gICAgICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbikge1xyXG4gICAgICAgICAgICBpZiAoY2hpbGQuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9oYXNBY3RpdmVDaGlsZChjaGlsZCwgY3VycmVudFVybCkpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGNoaWxkIGhhcyBhIGxpbmsgYW5kIGlzIGFjdGl2ZVxyXG4gICAgICAgICAgICBpZiAoY2hpbGQubGluayAmJiB0aGlzLl9yb3V0ZXIuaXNBY3RpdmUoY2hpbGQubGluaywge1xyXG4gICAgICAgICAgICAgICAgcGF0aHM6IGNoaWxkLmV4YWN0TWF0Y2ggfHwgZmFsc2UgPyAnZXhhY3QnIDogJ3N1YnNldCcsXHJcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogY2hpbGQuZXhhY3RNYXRjaCB8fCBmYWxzZSA/ICdleGFjdCcgOiAnc3Vic2V0JywgbWF0cml4UGFyYW1zOiAnaWdub3JlZCcsIGZyYWdtZW50OiAnaWdub3JlZCdcclxuICAgICAgICAgICAgfSkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiB0aGlzIGlzIGEgY2hpbGRyZW5cclxuICAgICAqIG9mIHRoZSBnaXZlbiBpdGVtXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHBhcmVudFxyXG4gICAgICogQHBhcmFtIGl0ZW1cclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgX2lzQ2hpbGRyZW5PZihwYXJlbnQ6IENtYXROYXZpZ2F0aW9uSXRlbSwgaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtKTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3QgY2hpbGRyZW4gPSBwYXJlbnQuY2hpbGRyZW47XHJcblxyXG4gICAgICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGNoaWxkcmVuLmluZGV4T2YoaXRlbSkgPiAtMSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvciAoY29uc3QgY2hpbGQgb2YgY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgaWYgKGNoaWxkLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5faXNDaGlsZHJlbk9mKGNoaWxkLCBpdGVtKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLXdyYXBwZXJcIiBbY2xhc3MuY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0taGFzLXN1YnRpdGxlXT1cIiEhaXRlbS5zdWJUaXRsZVwiXHJcbiAgW25nQ2xhc3NdPVwiaXRlbS5jbGFzc2VzPy53cmFwcGVyXCI+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbVwiIHJvbGU9XCJwcmVzZW50YXRpb25cIiBbbmdDbGFzc109XCJ7J2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWRpc2FibGVkJzogaXRlbS5kaXNhYmxlZH1cIlxyXG4gICAgW21hdFRvb2x0aXBdPVwiaXRlbS50b29sdGlwIHx8ICcnXCIgKGNsaWNrKT1cInRvZ2dsZUNvbGxhcHNhYmxlKCk7c2VsZWN0SXRlbShpdGVtKTtcIj5cclxuXHJcbiAgICA8IS0tIEljb24gLS0+XHJcbiAgICBAaWYgKGl0ZW0uaWNvbikge1xyXG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1pY29uXCIgW25nQ2xhc3NdPVwiaXRlbS5jbGFzc2VzPy5pY29uXCIgW3N2Z0ljb25dPVwiaXRlbS5pY29uXCI+XHJcbiAgICAgIDwvbWF0LWljb24+XHJcbiAgICB9XHJcblxyXG4gICAgPCEtLSBUaXRsZSAmIFN1YnRpdGxlIC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLXRpdGxlLXdyYXBwZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLXRpdGxlXCI+XHJcbiAgICAgICAgPHNwYW4gW25nQ2xhc3NdPVwiaXRlbS5jbGFzc2VzPy50aXRsZVwiPlxyXG4gICAgICAgICAge3tpdGVtLnRpdGxlfX1cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICBAaWYgKGl0ZW0uc3ViVGl0bGUpIHtcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tc3VidGl0bGVcIj5cclxuICAgICAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cIml0ZW0uY2xhc3Nlcz8uc3VidGl0bGVcIj5cclxuICAgICAgICAgICAge3tpdGVtLnN1YlRpdGxlfX1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPCEtLSBCYWRnZSAtLT5cclxuICAgIEBpZiAoaXRlbS5iYWRnZSkge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYmFkZ2VcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYmFkZ2UtY29udGVudFwiIFtuZ0NsYXNzXT1cIml0ZW0uYmFkZ2UuY2xhc3Nlc1wiPlxyXG4gICAgICAgICAge3tpdGVtLmJhZGdlLnRpdGxlfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICB9XHJcblxyXG4gICAgPCEtLSBBcnJvdyAtLT5cclxuICAgIDxtYXQtaWNvbiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWFycm93IGljb24tc2l6ZS00XCIgW3N2Z0ljb25dPVwiJ2hlcm9pY29uc19vdXRsaW5lOmNoZXZyb24tcmlnaHQnXCI+XHJcbiAgICA8L21hdC1pY29uPlxyXG5cclxuICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG5cclxuQGlmICghaXNDb2xsYXBzZWQpIHtcclxuICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tY2hpbGRyZW5cIiBAZXhwYW5kQ29sbGFwc2U+XHJcbiAgICBAZm9yIChpdGVtIG9mIGl0ZW0uY2hpbGRyZW47IHRyYWNrIHRyYWNrQnlGbigkaW5kZXgsIGl0ZW0pKSB7XHJcbiAgICAgIDwhLS0gU2tpcCB0aGUgaGlkZGVuIGl0ZW1zIC0tPlxyXG4gICAgICBAaWYgKChpdGVtLmhpZGRlbiAmJiAhaXRlbS5oaWRkZW4oaXRlbSkpIHx8ICFpdGVtLmhpZGRlbikge1xyXG4gICAgICAgIDwhLS0gQmFzaWMgLS0+XHJcbiAgICAgICAgQGlmIChpdGVtLnR5cGUgPT09ICdiYXNpYycpIHtcclxuICAgICAgICAgIDxjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tYmFzaWMtaXRlbSBbaXRlbV09XCJpdGVtXCIgW25hbWVdPVwibmFtZVwiIFtlZGl0U3RhdGVdPVwiZWRpdFN0YXRlXCIgKGVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkKT1cInNlbGVjdEl0ZW0oJGV2ZW50KVwiPjwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWJhc2ljLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDwhLS0gQ29sbGFwc2FibGUgLS0+XHJcbiAgICAgICAgQGlmIChpdGVtLnR5cGUgPT09ICdjb2xsYXBzYWJsZScpIHtcclxuICAgICAgICAgIDxjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tY29sbGFwc2FibGUtaXRlbSBbaXRlbV09XCJpdGVtXCIgW25hbWVdPVwibmFtZVwiIFthdXRvQ29sbGFwc2VdPVwiYXV0b0NvbGxhcHNlXCIgW2VkaXRTdGF0ZV09XCJlZGl0U3RhdGVcIiAoZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQpPVwic2VsZWN0SXRlbSgkZXZlbnQpXCI+XHJcbiAgICAgICAgICA8L2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1jb2xsYXBzYWJsZS1pdGVtPlxyXG4gICAgICAgIH1cclxuICAgICAgICA8IS0tIERpdmlkZXIgLS0+XHJcbiAgICAgICAgQGlmIChpdGVtLnR5cGUgPT09ICdkaXZpZGVyJykge1xyXG4gICAgICAgICAgPGNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1kaXZpZGVyLWl0ZW0gW2l0ZW1dPVwiaXRlbVwiIFtuYW1lXT1cIm5hbWVcIiBbZWRpdFN0YXRlXT1cImVkaXRTdGF0ZVwiIChlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZCk9XCJzZWxlY3RJdGVtKCRldmVudClcIj5cclxuICAgICAgICAgIDwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWRpdmlkZXItaXRlbT5cclxuICAgICAgICB9XHJcbiAgICAgICAgPCEtLSBHcm91cCAtLT5cclxuICAgICAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ2dyb3VwJykge1xyXG4gICAgICAgICAgPGNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1ncm91cC1pdGVtIFtpdGVtXT1cIml0ZW1cIiBbbmFtZV09XCJuYW1lXCIgW2VkaXRTdGF0ZV09XCJlZGl0U3RhdGVcIiAoZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQpPVwic2VsZWN0SXRlbSgkZXZlbnQpXCI+PC9jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tZ3JvdXAtaXRlbT5cclxuICAgICAgICB9XHJcbiAgICAgICAgPCEtLSBTcGFjZXIgLS0+XHJcbiAgICAgICAgQGlmIChpdGVtLnR5cGUgPT09ICdzcGFjZXInKSB7XHJcbiAgICAgICAgICA8Y21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLXNwYWNlci1pdGVtIFtpdGVtXT1cIml0ZW1cIiBbbmFtZV09XCJuYW1lXCIgW2VkaXRTdGF0ZV09XCJlZGl0U3RhdGVcIiAoZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQpPVwic2VsZWN0SXRlbSgkZXZlbnQpXCI+XHJcbiAgICAgICAgICA8L2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1zcGFjZXItaXRlbT5cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICA8L2Rpdj5cclxufSJdfQ==
|
|
277
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2FibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL25hdmlnYXRpb24vdmVydGljYWwvY29tcG9uZW50cy9jb2xsYXBzYWJsZS9jb2xsYXBzYWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbmF2aWdhdGlvbi92ZXJ0aWNhbC9jb21wb25lbnRzL2NvbGxhcHNhYmxlL2NvbGxhcHNhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvSixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFJakQsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEYsT0FBTyxFQUFFLDBDQUEwQyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUYsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEYsT0FBTyxF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QUFjOzs0RkFPakIsOENBQThDO2tCQVgxRCxTQUFTOytCQUNJLDJDQUEyQyxjQUd6QyxjQUFjLG1CQUNULHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSx3Q0FBd0M7d0JBQ3hGLFVBQVUsQ0FBQyxHQUFHLEVBQUUsK0NBQStDLENBQUM7d0JBQ2hFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3Q0FBd0MsQ0FBQyxFQUFFLDBDQUEwQyxFQUFFLHlDQUF5QyxDQUFDOytJQU83SSxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDYSx1QkFBdUI7c0JBQXpDLE1BQU07Z0JBcUJtQixTQUFTO3NCQUFsQyxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xyXG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBjbWF0QW5pbWF0aW9ucyB9IGZyb20gJ2NtYXQvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IENtYXROYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL25hdmlnYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IENtYXROYXZpZ2F0aW9uSXRlbSB9IGZyb20gJy4uLy4uLy4uL25hdmlnYXRpb24udHlwZXMnO1xyXG5pbXBvcnQgeyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vdmVydGljYWwvdmVydGljYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkJhc2ljSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2ljL2Jhc2ljLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25EaXZpZGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uR3JvdXBJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JvdXAvZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ21hdFZlcnRpY2FsTmF2aWdhdGlvblNwYWNlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9zcGFjZXIvc3BhY2VyLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWNvbGxhcHNhYmxlLWl0ZW0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbGxhcHNhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlczogW10sXHJcbiAgICBhbmltYXRpb25zOiBjbWF0QW5pbWF0aW9ucyxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtOZ0NsYXNzLCBNYXRUb29sdGlwTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBDbWF0VmVydGljYWxOYXZpZ2F0aW9uQmFzaWNJdGVtQ29tcG9uZW50LCBcclxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db2xsYXBzYWJsZUl0ZW1Db21wb25lbnQpLCBcclxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IENtYXRWZXJ0aWNhbE5hdmlnYXRpb25Hcm91cEl0ZW1Db21wb25lbnQpLCBDbWF0VmVydGljYWxOYXZpZ2F0aW9uRGl2aWRlckl0ZW1Db21wb25lbnQsIENtYXRWZXJ0aWNhbE5hdmlnYXRpb25TcGFjZXJJdGVtQ29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbGxhcHNhYmxlSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIC8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvbiAqL1xyXG4gICAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2F1dG9Db2xsYXBzZTogQm9vbGVhbklucHV0O1xyXG4gICAgLyogZXNsaW50LWVuYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cclxuXHJcbiAgICBASW5wdXQoKSBhdXRvQ29sbGFwc2U6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBpdGVtOiBDbWF0TmF2aWdhdGlvbkl0ZW07XHJcbiAgICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBlZGl0U3RhdGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBPdXRwdXQoKSByZWFkb25seSBlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZDogRXZlbnRFbWl0dGVyPENtYXROYXZpZ2F0aW9uSXRlbT4gPSBuZXcgRXZlbnRFbWl0dGVyPENtYXROYXZpZ2F0aW9uSXRlbT4oKTtcclxuICAgIFxyXG4gICAgaXNDb2xsYXBzZWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgaXNFeHBhbmRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBfY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDogQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDtcclxuICAgIHByaXZhdGUgX3Vuc3Vic2NyaWJlQWxsOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBfY21hdE5hdmlnYXRpb25TZXJ2aWNlOiBDbWF0TmF2aWdhdGlvblNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBAIEFjY2Vzc29yc1xyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEhvc3QgYmluZGluZyBmb3IgY29tcG9uZW50IGNsYXNzZXNcclxuICAgICAqL1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGdldCBjbGFzc0xpc3QoKTogYW55IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXHJcbiAgICAgICAgICAgICdjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1jb2xsYXBzZWQnOiB0aGlzLmlzQ29sbGFwc2VkLFxyXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXHJcbiAgICAgICAgICAgICdjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1leHBhbmRlZCc6IHRoaXMuaXNFeHBhbmRlZFxyXG4gICAgICAgIH07XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEAgTGlmZWN5Y2xlIGhvb2tzXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT24gaW5pdFxyXG4gICAgICovXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICAvLyBHZXQgdGhlIHBhcmVudCBuYXZpZ2F0aW9uIGNvbXBvbmVudFxyXG4gICAgICAgIHRoaXMuX2NtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQgPSB0aGlzLl9jbWF0TmF2aWdhdGlvblNlcnZpY2UuZ2V0Q29tcG9uZW50KHRoaXMubmFtZSk7XHJcblxyXG4gICAgICAgIC8vIElmIHRoZSBpdGVtIGhhcyBhIGNoaWxkcmVuIHRoYXQgaGFzIGEgbWF0Y2hpbmcgdXJsIHdpdGggdGhlIGN1cnJlbnQgdXJsLCBleHBhbmQuLi5cclxuICAgICAgICBpZiAodGhpcy5faGFzQWN0aXZlQ2hpbGQodGhpcy5pdGVtLCB0aGlzLl9yb3V0ZXIudXJsKSkge1xyXG4gICAgICAgICAgICB0aGlzLmV4cGFuZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBPdGhlcndpc2UuLi5cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgLy8gSWYgdGhlIGF1dG9Db2xsYXBzZSBpcyBvbiwgY29sbGFwc2UuLi5cclxuICAgICAgICAgICAgaWYgKHRoaXMuYXV0b0NvbGxhcHNlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNvbGxhcHNlKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIExpc3RlbiBmb3IgdGhlIG9uQ29sbGFwc2FibGVJdGVtQ29sbGFwc2VkIGZyb20gdGhlIHNlcnZpY2VcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50Lm9uQ29sbGFwc2FibGVJdGVtQ29sbGFwc2VkXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl91bnN1YnNjcmliZUFsbCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbGxhcHNlZEl0ZW0pID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiB0aGUgY29sbGFwc2VkIGl0ZW0gaXMgbnVsbFxyXG4gICAgICAgICAgICAgICAgaWYgKGNvbGxhcHNlZEl0ZW0gPT09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gQ29sbGFwc2UgaWYgdGhpcyBpcyBhIGNoaWxkcmVuIG9mIHRoZSBjb2xsYXBzZWQgaXRlbVxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX2lzQ2hpbGRyZW5PZihjb2xsYXBzZWRJdGVtLCB0aGlzLml0ZW0pKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2xsYXBzZSgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gTGlzdGVuIGZvciB0aGUgb25Db2xsYXBzYWJsZUl0ZW1FeHBhbmRlZCBmcm9tIHRoZSBzZXJ2aWNlIGlmIHRoZSBhdXRvQ29sbGFwc2UgaXMgb25cclxuICAgICAgICBpZiAodGhpcy5hdXRvQ29sbGFwc2UpIHtcclxuICAgICAgICAgICAgdGhpcy5fY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudC5vbkNvbGxhcHNhYmxlSXRlbUV4cGFuZGVkXHJcbiAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmVBbGwpKVxyXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoZXhwYW5kZWRJdGVtKSA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIENoZWNrIGlmIHRoZSBleHBhbmRlZCBpdGVtIGlzIG51bGxcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZXhwYW5kZWRJdGVtID09PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIENoZWNrIGlmIHRoaXMgaXMgYSBwYXJlbnQgb2YgdGhlIGV4cGFuZGVkIGl0ZW1cclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5faXNDaGlsZHJlbk9mKHRoaXMuaXRlbSwgZXhwYW5kZWRJdGVtKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiB0aGlzIGhhcyBhIGNoaWxkcmVuIHdpdGggYSBtYXRjaGluZyB1cmwgd2l0aCB0aGUgY3VycmVudCBhY3RpdmUgdXJsXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX2hhc0FjdGl2ZUNoaWxkKHRoaXMuaXRlbSwgdGhpcy5fcm91dGVyLnVybCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYgdGhpcyBpcyB0aGUgZXhwYW5kZWQgaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLml0ZW0gPT09IGV4cGFuZGVkSXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBJZiBub25lIG9mIHRoZSBhYm92ZSBjb25kaXRpb25zIGFyZSBtYXRjaGVkLCBjb2xsYXBzZSB0aGlzIGl0ZW1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbGxhcHNlKCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEF0dGFjaCBhIGxpc3RlbmVyIHRvIHRoZSBOYXZpZ2F0aW9uRW5kIGV2ZW50XHJcbiAgICAgICAgdGhpcy5fcm91dGVyLmV2ZW50c1xyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIGZpbHRlcigoZXZlbnQpOiBldmVudCBpcyBOYXZpZ2F0aW9uRW5kID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXHJcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmVBbGwpXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQ6IE5hdmlnYXRpb25FbmQpID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBJZiB0aGUgaXRlbSBoYXMgYSBjaGlsZHJlbiB0aGF0IGhhcyBhIG1hdGNoaW5nIHVybCB3aXRoIHRoZSBjdXJyZW50IHVybCwgZXhwYW5kLi4uXHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5faGFzQWN0aXZlQ2hpbGQodGhpcy5pdGVtLCBldmVudC51cmxBZnRlclJlZGlyZWN0cykpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmV4cGFuZCgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy8gT3RoZXJ3aXNlLi4uXHJcbiAgICAgICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGUgYXV0b0NvbGxhcHNlIGlzIG9uLCBjb2xsYXBzZS4uLlxyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmF1dG9Db2xsYXBzZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbGxhcHNlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gU3Vic2NyaWJlIHRvIG9uUmVmcmVzaGVkIG9uIHRoZSBuYXZpZ2F0aW9uIGNvbXBvbmVudFxyXG4gICAgICAgIHRoaXMuX2NtYXRWZXJ0aWNhbE5hdmlnYXRpb25Db21wb25lbnQub25SZWZyZXNoZWQucGlwZShcclxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKVxyXG4gICAgICAgICkuc3Vic2NyaWJlKCgpID0+IHtcclxuXHJcbiAgICAgICAgICAgIC8vIE1hcmsgZm9yIGNoZWNrXHJcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT24gZGVzdHJveVxyXG4gICAgICovXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICAvLyBVbnN1YnNjcmliZSBmcm9tIGFsbCBzdWJzY3JpcHRpb25zXHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwubmV4dCh2b2lkIDApO1xyXG4gICAgICAgIHRoaXMuX3Vuc3Vic2NyaWJlQWxsLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEAgUHVibGljIG1ldGhvZHNcclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb2xsYXBzZVxyXG4gICAgICovXHJcbiAgICBjb2xsYXBzZSgpOiB2b2lkIHtcclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGl0ZW0gaXMgZGlzYWJsZWRcclxuICAgICAgICBpZiAodGhpcy5pdGVtLmRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFJldHVybiBpZiB0aGUgaXRlbSBpcyBhbHJlYWR5IGNvbGxhcHNlZFxyXG4gICAgICAgIGlmICh0aGlzLmlzQ29sbGFwc2VkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIENvbGxhcHNlIGl0XHJcbiAgICAgICAgdGhpcy5pc0NvbGxhcHNlZCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5pc0V4cGFuZGVkID0gIXRoaXMuaXNDb2xsYXBzZWQ7XHJcblxyXG4gICAgICAgIC8vIE1hcmsgZm9yIGNoZWNrXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcblxyXG4gICAgICAgIC8vIEV4ZWN1dGUgdGhlIG9ic2VydmFibGVcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50Lm9uQ29sbGFwc2FibGVJdGVtQ29sbGFwc2VkLm5leHQodGhpcy5pdGVtKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEV4cGFuZFxyXG4gICAgICovXHJcbiAgICBleHBhbmQoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gUmV0dXJuIGlmIHRoZSBpdGVtIGlzIGRpc2FibGVkXHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbS5kaXNhYmxlZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGl0ZW0gaXMgYWxyZWFkeSBleHBhbmRlZFxyXG4gICAgICAgIGlmICghdGhpcy5pc0NvbGxhcHNlZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBFeHBhbmQgaXRcclxuICAgICAgICB0aGlzLmlzQ29sbGFwc2VkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pc0V4cGFuZGVkID0gIXRoaXMuaXNDb2xsYXBzZWQ7XHJcblxyXG4gICAgICAgIC8vIE1hcmsgZm9yIGNoZWNrXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcblxyXG4gICAgICAgIC8vIEV4ZWN1dGUgdGhlIG9ic2VydmFibGVcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50Lm9uQ29sbGFwc2FibGVJdGVtRXhwYW5kZWQubmV4dCh0aGlzLml0ZW0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVG9nZ2xlIGNvbGxhcHNhYmxlXHJcbiAgICAgKi9cclxuICAgIHRvZ2dsZUNvbGxhcHNhYmxlKCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFRvZ2dsZSBjb2xsYXBzZS9leHBhbmRcclxuICAgICAgICBpZiAodGhpcy5pc0NvbGxhcHNlZCkge1xyXG4gICAgICAgICAgICB0aGlzLmV4cGFuZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jb2xsYXBzZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFRyYWNrIGJ5IGZ1bmN0aW9uIGZvciBuZ0ZvciBsb29wc1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpbmRleFxyXG4gICAgICogQHBhcmFtIGl0ZW1cclxuICAgICAqL1xyXG4gICAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0uaWQgfHwgaW5kZXg7XHJcbiAgICB9XHJcblxyXG4gICAgc2VsZWN0SXRlbShpdGVtOiBDbWF0TmF2aWdhdGlvbkl0ZW0pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkLm5leHQoaXRlbSk7XHJcbiAgICB9XHJcblxyXG4gICAgXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQCBQcml2YXRlIG1ldGhvZHNcclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiB0aGUgZ2l2ZW4gaXRlbSBoYXMgdGhlIGdpdmVuIHVybFxyXG4gICAgICogaW4gb25lIG9mIGl0cyBjaGlsZHJlblxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpdGVtXHJcbiAgICAgKiBAcGFyYW0gY3VycmVudFVybFxyXG4gICAgICogQHByaXZhdGVcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBfaGFzQWN0aXZlQ2hpbGQoaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtLCBjdXJyZW50VXJsOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGl0ZW0uY2hpbGRyZW47XHJcblxyXG4gICAgICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbikge1xyXG4gICAgICAgICAgICBpZiAoY2hpbGQuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9oYXNBY3RpdmVDaGlsZChjaGlsZCwgY3VycmVudFVybCkpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGNoaWxkIGhhcyBhIGxpbmsgYW5kIGlzIGFjdGl2ZVxyXG4gICAgICAgICAgICBpZiAoY2hpbGQubGluayAmJiB0aGlzLl9yb3V0ZXIuaXNBY3RpdmUoY2hpbGQubGluaywge1xyXG4gICAgICAgICAgICAgICAgcGF0aHM6IGNoaWxkLmV4YWN0TWF0Y2ggfHwgZmFsc2UgPyAnZXhhY3QnIDogJ3N1YnNldCcsXHJcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogY2hpbGQuZXhhY3RNYXRjaCB8fCBmYWxzZSA/ICdleGFjdCcgOiAnc3Vic2V0JywgbWF0cml4UGFyYW1zOiAnaWdub3JlZCcsIGZyYWdtZW50OiAnaWdub3JlZCdcclxuICAgICAgICAgICAgfSkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiB0aGlzIGlzIGEgY2hpbGRyZW5cclxuICAgICAqIG9mIHRoZSBnaXZlbiBpdGVtXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHBhcmVudFxyXG4gICAgICogQHBhcmFtIGl0ZW1cclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgX2lzQ2hpbGRyZW5PZihwYXJlbnQ6IENtYXROYXZpZ2F0aW9uSXRlbSwgaXRlbTogQ21hdE5hdmlnYXRpb25JdGVtKTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3QgY2hpbGRyZW4gPSBwYXJlbnQuY2hpbGRyZW47XHJcblxyXG4gICAgICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGNoaWxkcmVuLmluY2x1ZGVzKGl0ZW0pKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbikge1xyXG4gICAgICAgICAgICBpZiAoY2hpbGQuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9pc0NoaWxkcmVuT2YoY2hpbGQsIGl0ZW0pKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0td3JhcHBlclwiIFtjbGFzcy5jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1oYXMtc3VidGl0bGVdPVwiISFpdGVtLnN1YlRpdGxlXCJcclxuICBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/LndyYXBwZXJcIj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtXCIgcm9sZT1cInByZXNlbnRhdGlvblwiIFtuZ0NsYXNzXT1cInsnY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tZGlzYWJsZWQnOiBpdGVtLmRpc2FibGVkfVwiXHJcbiAgICBbbWF0VG9vbHRpcF09XCJpdGVtLnRvb2x0aXAgfHwgJydcIiAoY2xpY2spPVwidG9nZ2xlQ29sbGFwc2FibGUoKTtzZWxlY3RJdGVtKGl0ZW0pO1wiPlxyXG5cclxuICAgIDwhLS0gSWNvbiAtLT5cclxuICAgIEBpZiAoaXRlbS5pY29uKSB7XHJcbiAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1pdGVtLWljb25cIiBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/Lmljb25cIiBbc3ZnSWNvbl09XCJpdGVtLmljb25cIj5cclxuICAgICAgPC9tYXQtaWNvbj5cclxuICAgIH1cclxuXHJcbiAgICA8IS0tIFRpdGxlICYgU3VidGl0bGUgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tdGl0bGUtd3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tdGl0bGVcIj5cclxuICAgICAgICA8c3BhbiBbbmdDbGFzc109XCJpdGVtLmNsYXNzZXM/LnRpdGxlXCI+XHJcbiAgICAgICAgICB7e2l0ZW0udGl0bGV9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIEBpZiAoaXRlbS5zdWJUaXRsZSkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1zdWJ0aXRsZVwiPlxyXG4gICAgICAgICAgPHNwYW4gW25nQ2xhc3NdPVwiaXRlbS5jbGFzc2VzPy5zdWJ0aXRsZVwiPlxyXG4gICAgICAgICAgICB7e2l0ZW0uc3ViVGl0bGV9fVxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8IS0tIEJhZGdlIC0tPlxyXG4gICAgQGlmIChpdGVtLmJhZGdlKSB7XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1iYWRnZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1iYWRnZS1jb250ZW50XCIgW25nQ2xhc3NdPVwiaXRlbS5iYWRnZS5jbGFzc2VzXCI+XHJcbiAgICAgICAgICB7e2l0ZW0uYmFkZ2UudGl0bGV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIH1cclxuXHJcbiAgICA8IS0tIEFycm93IC0tPlxyXG4gICAgPG1hdC1pY29uIGNsYXNzPVwiY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWl0ZW0tYXJyb3cgaWNvbi1zaXplLTRcIiBbc3ZnSWNvbl09XCInaGVyb2ljb25zX291dGxpbmU6Y2hldnJvbi1yaWdodCdcIj5cclxuICAgIDwvbWF0LWljb24+XHJcblxyXG4gIDwvZGl2PlxyXG5cclxuPC9kaXY+XHJcblxyXG5AaWYgKCFpc0NvbGxhcHNlZCkge1xyXG4gIDxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS1jaGlsZHJlblwiIEBleHBhbmRDb2xsYXBzZT5cclxuICAgIEBmb3IgKGl0ZW0gb2YgaXRlbS5jaGlsZHJlbjsgdHJhY2sgdHJhY2tCeUZuKCRpbmRleCwgaXRlbSkpIHtcclxuICAgICAgPCEtLSBTa2lwIHRoZSBoaWRkZW4gaXRlbXMgLS0+XHJcbiAgICAgIEBpZiAoKGl0ZW0uaGlkZGVuICYmICFpdGVtLmhpZGRlbihpdGVtKSkgfHwgIWl0ZW0uaGlkZGVuKSB7XHJcbiAgICAgICAgPCEtLSBCYXNpYyAtLT5cclxuICAgICAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ2Jhc2ljJykge1xyXG4gICAgICAgICAgPGNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1iYXNpYy1pdGVtIFtpdGVtXT1cIml0ZW1cIiBbbmFtZV09XCJuYW1lXCIgW2VkaXRTdGF0ZV09XCJlZGl0U3RhdGVcIiAoZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQpPVwic2VsZWN0SXRlbSgkZXZlbnQpXCI+PC9jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tYmFzaWMtaXRlbT5cclxuICAgICAgICB9XHJcbiAgICAgICAgPCEtLSBDb2xsYXBzYWJsZSAtLT5cclxuICAgICAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ2NvbGxhcHNhYmxlJykge1xyXG4gICAgICAgICAgPGNtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1jb2xsYXBzYWJsZS1pdGVtIFtpdGVtXT1cIml0ZW1cIiBbbmFtZV09XCJuYW1lXCIgW2F1dG9Db2xsYXBzZV09XCJhdXRvQ29sbGFwc2VcIiBbZWRpdFN0YXRlXT1cImVkaXRTdGF0ZVwiIChlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZCk9XCJzZWxlY3RJdGVtKCRldmVudClcIj5cclxuICAgICAgICAgIDwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWNvbGxhcHNhYmxlLWl0ZW0+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDwhLS0gRGl2aWRlciAtLT5cclxuICAgICAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ2RpdmlkZXInKSB7XHJcbiAgICAgICAgICA8Y21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWRpdmlkZXItaXRlbSBbaXRlbV09XCJpdGVtXCIgW25hbWVdPVwibmFtZVwiIFtlZGl0U3RhdGVdPVwiZWRpdFN0YXRlXCIgKGVkaXRTZWxlY3RlZEl0ZW1DaGFuZ2VkKT1cInNlbGVjdEl0ZW0oJGV2ZW50KVwiPlxyXG4gICAgICAgICAgPC9jbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tZGl2aWRlci1pdGVtPlxyXG4gICAgICAgIH1cclxuICAgICAgICA8IS0tIEdyb3VwIC0tPlxyXG4gICAgICAgIEBpZiAoaXRlbS50eXBlID09PSAnZ3JvdXAnKSB7XHJcbiAgICAgICAgICA8Y21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWdyb3VwLWl0ZW0gW2l0ZW1dPVwiaXRlbVwiIFtuYW1lXT1cIm5hbWVcIiBbZWRpdFN0YXRlXT1cImVkaXRTdGF0ZVwiIChlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZCk9XCJzZWxlY3RJdGVtKCRldmVudClcIj48L2NtYXQtdmVydGljYWwtbmF2aWdhdGlvbi1ncm91cC1pdGVtPlxyXG4gICAgICAgIH1cclxuICAgICAgICA8IS0tIFNwYWNlciAtLT5cclxuICAgICAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ3NwYWNlcicpIHtcclxuICAgICAgICAgIDxjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24tc3BhY2VyLWl0ZW0gW2l0ZW1dPVwiaXRlbVwiIFtuYW1lXT1cIm5hbWVcIiBbZWRpdFN0YXRlXT1cImVkaXRTdGF0ZVwiIChlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZCk9XCJzZWxlY3RJdGVtKCRldmVudClcIj5cclxuICAgICAgICAgIDwvY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLXNwYWNlci1pdGVtPlxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIDwvZGl2PlxyXG59Il19
|
|
@@ -38,10 +38,10 @@ export class CmatVerticalNavigationDividerItemComponent {
|
|
|
38
38
|
selectItem(item) {
|
|
39
39
|
this.editSelectedItemChanged.next(item);
|
|
40
40
|
}
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
42
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatVerticalNavigationDividerItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.CmatNavigationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.10", type: CmatVerticalNavigationDividerItemComponent, isStandalone: true, selector: "cmat-vertical-navigation-divider-item", inputs: { item: "item", name: "name", editState: "editState" }, outputs: { editSelectedItemChanged: "editSelectedItemChanged" }, ngImport: i0, template: "<!-- Divider -->\r\n<div class=\"cmat-vertical-navigation-item-wrapper divider\" role=\"presentation\" [ngClass]=\"item.classes?.wrapper\" (click)=\"selectItem(item);\"></div>", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
43
43
|
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatVerticalNavigationDividerItemComponent, decorators: [{
|
|
45
45
|
type: Component,
|
|
46
46
|
args: [{ selector: 'cmat-vertical-navigation-divider-item', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgClass], template: "<!-- Divider -->\r\n<div class=\"cmat-vertical-navigation-item-wrapper divider\" role=\"presentation\" [ngClass]=\"item.classes?.wrapper\" (click)=\"selectItem(item);\"></div>" }]
|
|
47
47
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.CmatNavigationService }], propDecorators: { item: [{
|
|
@@ -53,4 +53,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImpor
|
|
|
53
53
|
}], editSelectedItemChanged: [{
|
|
54
54
|
type: Output
|
|
55
55
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGl2aWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbmF2aWdhdGlvbi92ZXJ0aWNhbC9jb21wb25lbnRzL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbmF2aWdhdGlvbi92ZXJ0aWNhbC9jb21wb25lbnRzL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RJLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFhM0MsTUFBTSxPQUFPLDBDQUEwQztJQVNuRCxZQUNZLGtCQUFxQyxFQUNyQyxzQkFBNkM7UUFEN0MsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXVCO1FBUmhELGNBQVMsR0FBWSxLQUFLLENBQUM7UUFDakIsNEJBQXVCLEdBQXFDLElBQUksWUFBWSxFQUFzQixDQUFDO1FBRzlHLG9CQUFlLEdBQWtCLElBQUksT0FBTyxFQUFRLENBQUM7SUFNN0QsQ0FBQztJQUVELHdHQUF3RztJQUN4RyxvQkFBb0I7SUFDcEIsd0dBQXdHO0lBRXhHOztPQUVHO0lBQ0gsUUFBUTtRQUNKLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsZ0NBQWdDLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFNUYsdURBQXVEO1FBQ3ZELElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUNsRCxTQUFTLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUNsQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFFYixpQkFBaUI7WUFDakIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNQLHFDQUFxQztRQUNyQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUF3QjtRQUMvQixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7K0dBL0NRLDBDQUEwQzttR0FBMUMsMENBQTBDLGtPQ2hCdkQsaUxBQ21KLDRDRGFySSxPQUFPOzs0RkFFUiwwQ0FBMEM7a0JBUnRELFNBQVM7K0JBQ0ksdUNBQXVDLG1CQUdoQyx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLE9BQU8sQ0FBQzswSEFHVCxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ2EsdUJBQXVCO3NCQUF6QyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBDbWF0TmF2aWdhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9uYXZpZ2F0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDbWF0TmF2aWdhdGlvbkl0ZW0gfSBmcm9tICcuLi8uLi8uLi9uYXZpZ2F0aW9uLnR5cGVzJztcclxuaW1wb3J0IHsgQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3ZlcnRpY2FsL3ZlcnRpY2FsLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC12ZXJ0aWNhbC1uYXZpZ2F0aW9uLWRpdmlkZXItaXRlbScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGl2aWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZXM6IFtdLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW05nQ2xhc3NdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0VmVydGljYWxOYXZpZ2F0aW9uRGl2aWRlckl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBpdGVtOiBDbWF0TmF2aWdhdGlvbkl0ZW07XHJcbiAgICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBlZGl0U3RhdGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBPdXRwdXQoKSByZWFkb25seSBlZGl0U2VsZWN0ZWRJdGVtQ2hhbmdlZDogRXZlbnRFbWl0dGVyPENtYXROYXZpZ2F0aW9uSXRlbT4gPSBuZXcgRXZlbnRFbWl0dGVyPENtYXROYXZpZ2F0aW9uSXRlbT4oKTtcclxuICAgIFxyXG4gICAgcHJpdmF0ZSBfY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDogQ21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudDtcclxuICAgIHByaXZhdGUgX3Vuc3Vic2NyaWJlQWxsOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBfY21hdE5hdmlnYXRpb25TZXJ2aWNlOiBDbWF0TmF2aWdhdGlvblNlcnZpY2VcclxuICAgICkge1xyXG4gICAgfVxyXG5cclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBAIExpZmVjeWNsZSBob29rc1xyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE9uIGluaXRcclxuICAgICAqL1xyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gR2V0IHRoZSBwYXJlbnQgbmF2aWdhdGlvbiBjb21wb25lbnRcclxuICAgICAgICB0aGlzLl9jbWF0VmVydGljYWxOYXZpZ2F0aW9uQ29tcG9uZW50ID0gdGhpcy5fY21hdE5hdmlnYXRpb25TZXJ2aWNlLmdldENvbXBvbmVudCh0aGlzLm5hbWUpO1xyXG5cclxuICAgICAgICAvLyBTdWJzY3JpYmUgdG8gb25SZWZyZXNoZWQgb24gdGhlIG5hdmlnYXRpb24gY29tcG9uZW50XHJcbiAgICAgICAgdGhpcy5fY21hdFZlcnRpY2FsTmF2aWdhdGlvbkNvbXBvbmVudC5vblJlZnJlc2hlZC5waXBlKFxyXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fdW5zdWJzY3JpYmVBbGwpXHJcbiAgICAgICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG5cclxuICAgICAgICAgICAgLy8gTWFyayBmb3IgY2hlY2tcclxuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBPbiBkZXN0cm95XHJcbiAgICAgKi9cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFVuc3Vic2NyaWJlIGZyb20gYWxsIHN1YnNjcmlwdGlvbnNcclxuICAgICAgICB0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KHZvaWQgMCk7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RJdGVtKGl0ZW06IENtYXROYXZpZ2F0aW9uSXRlbSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZWRpdFNlbGVjdGVkSXRlbUNoYW5nZWQubmV4dChpdGVtKTtcclxuICAgIH1cclxufVxyXG4iLCI8IS0tIERpdmlkZXIgLS0+XHJcbjxkaXYgY2xhc3M9XCJjbWF0LXZlcnRpY2FsLW5hdmlnYXRpb24taXRlbS13cmFwcGVyIGRpdmlkZXJcIiByb2xlPVwicHJlc2VudGF0aW9uXCIgW25nQ2xhc3NdPVwiaXRlbS5jbGFzc2VzPy53cmFwcGVyXCIgKGNsaWNrKT1cInNlbGVjdEl0ZW0oaXRlbSk7XCI+PC9kaXY+Il19
|