com.phloxui
Version:
PhloxUI Ng2+ Framework
189 lines (188 loc) • 13.9 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
import { Component, HostListener } from '@angular/core';
import { PhloxAppService } from '../../../service/PhloxAppService.service';
import { NeedFocusService } from '../../../service/NeedFocusService.service';
import { AppDrawerPopover } from './switcher.internal/AppDrawerPopover.component';
import { AbstractRippleButton } from '../../AbstractRippleButton';
import { PhloxAppInfo } from '../../../component/model/PhloxAppInfo';
const /** @type {?} */ TYPE_NAME = "phx-app-switcher";
const /** @type {?} */ SUB_TOPIC_NAME = 'app-switcher';
export class PhloxAppSwitcher extends AbstractRippleButton {
/**
* @param {?} appSvc
* @param {?} needFocusService
*/
constructor(appSvc, needFocusService) {
super(appSvc, needFocusService);
this.delay = PhloxAppInfo.DEFAULT_APP_SWITCHER_POPOVER_DELAY;
if (this.getApplication() !== null && typeof this.getApplication() !== 'undefined' &&
this.getApplication().getAppInfo() !== null && typeof this.getApplication().getAppInfo() !== 'undefined') {
this.delay = this.getApplication().getAppInfo().settings.APP_SWITCHER_POPOVER_DELAY;
}
}
/**
* @return {?}
*/
ngOnInit() {
//super.ngOnInit();
this.contentText = '<div class="anchor"></div>';
this.appPopoverType = AppDrawerPopover;
this.subTopicName = PhloxAppSwitcher.SUB_TOPIC_NAME;
}
/**
* @param {?} $event
* @return {?}
*/
doFocus($event) {
}
/**
* @param {?} $event
* @return {?}
*/
doLostFocus($event) {
}
/**
* @param {?} $event
* @return {?}
*/
onPopoverBtnClicked($event) {
$event.stopPropagation();
}
/**
* @param {?} $event
* @return {?}
*/
onPopoverActived($event) {
this.source = $event.source;
this.needFocusService.setFocusingComponent(this);
}
/**
* @param {?} $event
* @return {?}
*/
onPopoverInactived($event) {
this.source = null;
this.needFocusService.resetFocusingComponent();
}
/**
* @param {?} event
* @return {?}
*/
onClick(event) {
super.onClick(event);
}
/**
* @param {?} event
* @return {?}
*/
onFocus(event) {
}
/**
* @param {?} event
* @return {?}
*/
onLostFocus(event) {
if (this.source != null) {
this.source.hide();
}
}
/**
* @param {?} $event
* @return {?}
*/
_onDocumentClick($event) {
$event.stopPropagation();
if (this.source != null) {
this.source.hide();
}
}
/**
* @return {?}
*/
getContentText() {
return this.contentText;
}
/**
* @return {?}
*/
getSubTopicName() {
return this.subTopicName;
}
/**
* @return {?}
*/
getAppPopoverType() {
return this.appPopoverType;
}
/**
* @return {?}
*/
getDelay() {
return this.delay;
}
}
PhloxAppSwitcher.TYPE_NAME = TYPE_NAME;
PhloxAppSwitcher.SUB_TOPIC_NAME = SUB_TOPIC_NAME;
PhloxAppSwitcher.decorators = [
{ type: Component, args: [{
moduleId: module.id,
selector: TYPE_NAME,
template: `<div class="phx-app-switcher" [phxPopover]="getContentText()" [component-type]="getAppPopoverType()" [delay]="getDelay()" [topicName]="getSubTopicName()"
(phxClick)="onPopoverBtnClicked($event)" (phxActive)="onPopoverActived($event)" (phxInactive)="onPopoverInactived($event)">
<div class="box-container">
<div class="inline-boxes">
<div class="square"></div>
<div class="square"></div>
</div>
<div class="inline-boxes">
<div class="square"></div>
<div class="square"></div>
</div>
</div>
</div>
`,
entryComponents: [AppDrawerPopover],
// add to resolve factory
host: {
'(document:click)': '_onDocumentClick($event)'
}
},] },
];
/** @nocollapse */
PhloxAppSwitcher.ctorParameters = () => [
{ type: PhloxAppService, },
{ type: NeedFocusService, },
];
PhloxAppSwitcher.propDecorators = {
"onClick": [{ type: HostListener, args: ['click', ['$event'],] },],
};
function PhloxAppSwitcher_tsickle_Closure_declarations() {
/** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
PhloxAppSwitcher.decorators;
/**
* @nocollapse
* @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}
*/
PhloxAppSwitcher.ctorParameters;
/** @type {!Object<string,!Array<{type: !Function, args: (undefined|!Array<?>)}>>} */
PhloxAppSwitcher.propDecorators;
/** @type {?} */
PhloxAppSwitcher.TYPE_NAME;
/** @type {?} */
PhloxAppSwitcher.SUB_TOPIC_NAME;
/** @type {?} */
PhloxAppSwitcher.prototype.contentText;
/** @type {?} */
PhloxAppSwitcher.prototype.subTopicName;
/** @type {?} */
PhloxAppSwitcher.prototype.appPopoverType;
/** @type {?} */
PhloxAppSwitcher.prototype.delay;
/** @type {?} */
PhloxAppSwitcher.prototype.source;
}
export { AppDrawerPopover } from './switcher.internal/AppDrawerPopover.component';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGhsb3hBcHBTd2l0Y2hlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9jb20ucGhsb3h1aS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnQvcGFnZS9tYWluL1BobG94QXBwU3dpdGNoZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFpQixZQUFZLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBR3pGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNsRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFJckUsdUJBQU0sU0FBUyxHQUFXLGtCQUFrQixDQUFDO0FBRTdDLHVCQUFNLGNBQWMsR0FBVyxjQUFjLENBQUM7QUF3QjlDLE1BQU0sdUJBQXdCLFNBQVEsb0JBQW9COzs7OztJQWF4RCxZQUFZLE1BQXVCLEVBQUUsZ0JBQWtDO1FBQ3JFLEtBQUssQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUVoQyxJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQyxrQ0FBa0MsQ0FBQztRQUU3RCxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxLQUFLLFdBQVc7WUFDaEYsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLFVBQVUsRUFBRSxLQUFLLElBQUksSUFBSSxPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxVQUFVLEVBQUUsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQzNHLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQztTQUNyRjtLQUNGOzs7O0lBRU0sUUFBUTs7UUFFYixJQUFJLENBQUMsV0FBVyxHQUFHLDRCQUE0QixDQUFDO1FBQ2hELElBQUksQ0FBQyxjQUFjLEdBQUcsZ0JBQWdCLENBQUM7UUFDdkMsSUFBSSxDQUFDLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUM7Ozs7OztJQUc1QyxPQUFPLENBQUMsTUFBYTtLQUU5Qjs7Ozs7SUFFUyxXQUFXLENBQUMsTUFBYTtLQUVsQzs7Ozs7SUFFTSxtQkFBbUIsQ0FBQyxNQUFrQjtRQUMzQyxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7Ozs7OztJQUdwQixnQkFBZ0IsQ0FBQyxNQUFXO1FBQ2pDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUM7Ozs7OztJQUc1QyxrQkFBa0IsQ0FBQyxNQUFXO1FBQ25DLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDOzs7Ozs7SUFJMUMsT0FBTyxDQUFDLEtBQWlCO1FBQzlCLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Ozs7OztJQUdoQixPQUFPLENBQUMsS0FBVTs7Ozs7O0lBSWxCLFdBQVcsQ0FBQyxLQUFVO1FBQzNCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQztZQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3BCOzs7Ozs7SUFHSSxnQkFBZ0IsQ0FBQyxNQUFXO1FBQ2pDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV6QixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNwQjs7Ozs7SUFHSSxjQUFjO1FBQ25CLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDOzs7OztJQUduQixlQUFlO1FBQ3BCLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDOzs7OztJQUdwQixpQkFBaUI7UUFDdEIsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUM7Ozs7O0lBR3RCLFFBQVE7UUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzs7OzZCQXZGdUIsU0FBUztrQ0FFSixjQUFjOztZQTFCL0QsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxNQUFNLENBQUMsRUFBRTtnQkFDbkIsUUFBUSxFQUFFLFNBQVM7Z0JBQ25CLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7OztDQWFYO2dCQUNDLGVBQWUsRUFBRSxDQUFDLGdCQUFnQixDQUFDOztnQkFDbkMsSUFBSSxFQUFFO29CQUNKLGtCQUFrQixFQUFFLDBCQUEwQjtpQkFDL0M7YUFDRjs7OztZQWpDUSxlQUFlO1lBQ2YsZ0JBQWdCOzs7d0JBc0Z0QixZQUFZLFNBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF3Q25DLGlDQUFjLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBIb3N0TGlzdGVuZXIsIEVsZW1lbnRSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBobG94QXBwIH0gZnJvbSAnLi4vLi4vUGhsb3hBcHAuY29tcG9uZW50JztcbmltcG9ydCB7IElOZWVkRm9jdXMgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBQaGxveEFwcFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL1BobG94QXBwU2VydmljZS5zZXJ2aWNlJztcbmltcG9ydCB7IE5lZWRGb2N1c1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL05lZWRGb2N1c1NlcnZpY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBEcmF3ZXJQb3BvdmVyIH0gZnJvbSAnLi9zd2l0Y2hlci5pbnRlcm5hbC9BcHBEcmF3ZXJQb3BvdmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBYnN0cmFjdFJpcHBsZUJ1dHRvbiB9IGZyb20gJy4uLy4uL0Fic3RyYWN0UmlwcGxlQnV0dG9uJztcbmltcG9ydCB7IFBobG94QXBwSW5mbyB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudC9tb2RlbC9QaGxveEFwcEluZm8nO1xuXG5kZWNsYXJlIHZhciAkOiBhbnk7XG5cbmNvbnN0IFRZUEVfTkFNRTogc3RyaW5nID0gXCJwaHgtYXBwLXN3aXRjaGVyXCI7XG5cbmNvbnN0IFNVQl9UT1BJQ19OQU1FOiBzdHJpbmcgPSAnYXBwLXN3aXRjaGVyJztcblxuQENvbXBvbmVudCh7XG4gIG1vZHVsZUlkOiBtb2R1bGUuaWQsXG4gIHNlbGVjdG9yOiBUWVBFX05BTUUsXG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cInBoeC1hcHAtc3dpdGNoZXJcIiBbcGh4UG9wb3Zlcl09XCJnZXRDb250ZW50VGV4dCgpXCIgW2NvbXBvbmVudC10eXBlXT1cImdldEFwcFBvcG92ZXJUeXBlKClcIiBbZGVsYXldPVwiZ2V0RGVsYXkoKVwiIFt0b3BpY05hbWVdPVwiZ2V0U3ViVG9waWNOYW1lKClcIlxuXHQocGh4Q2xpY2spPVwib25Qb3BvdmVyQnRuQ2xpY2tlZCgkZXZlbnQpXCIgKHBoeEFjdGl2ZSk9XCJvblBvcG92ZXJBY3RpdmVkKCRldmVudClcIiAocGh4SW5hY3RpdmUpPVwib25Qb3BvdmVySW5hY3RpdmVkKCRldmVudClcIj5cblx0PGRpdiBjbGFzcz1cImJveC1jb250YWluZXJcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiaW5saW5lLWJveGVzXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwic3F1YXJlXCI+PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwic3F1YXJlXCI+PC9kaXY+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cImlubGluZS1ib3hlc1wiPlxuXHRcdFx0PGRpdiBjbGFzcz1cInNxdWFyZVwiPjwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cInNxdWFyZVwiPjwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYCxcbiAgZW50cnlDb21wb25lbnRzOiBbQXBwRHJhd2VyUG9wb3Zlcl0sIC8vIGFkZCB0byByZXNvbHZlIGZhY3RvcnlcbiAgaG9zdDoge1xuICAgICcoZG9jdW1lbnQ6Y2xpY2spJzogJ19vbkRvY3VtZW50Q2xpY2soJGV2ZW50KSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBQaGxveEFwcFN3aXRjaGVyIGV4dGVuZHMgQWJzdHJhY3RSaXBwbGVCdXR0b24gaW1wbGVtZW50cyBPbkluaXQsIElOZWVkRm9jdXMge1xuXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVFlQRV9OQU1FOiBzdHJpbmcgPSBUWVBFX05BTUU7XG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTVUJfVE9QSUNfTkFNRTogc3RyaW5nID0gU1VCX1RPUElDX05BTUU7XG5cbiAgLy8gdXNlIGZvciBhcHAgZHJhd2VyXG4gIHByaXZhdGUgY29udGVudFRleHQ6IHN0cmluZztcbiAgcHJpdmF0ZSBzdWJUb3BpY05hbWU6IHN0cmluZztcbiAgcHJpdmF0ZSBhcHBQb3BvdmVyVHlwZTogVHlwZTxhbnk+O1xuICBwcml2YXRlIGRlbGF5OiBudW1iZXI7XG4gIHByaXZhdGUgc291cmNlOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoYXBwU3ZjOiBQaGxveEFwcFNlcnZpY2UsIG5lZWRGb2N1c1NlcnZpY2U6IE5lZWRGb2N1c1NlcnZpY2UpIHtcbiAgICBzdXBlcihhcHBTdmMsIG5lZWRGb2N1c1NlcnZpY2UpO1xuXG4gICAgdGhpcy5kZWxheSA9IFBobG94QXBwSW5mby5ERUZBVUxUX0FQUF9TV0lUQ0hFUl9QT1BPVkVSX0RFTEFZO1xuICAgIFxuICAgIGlmICh0aGlzLmdldEFwcGxpY2F0aW9uKCkgIT09IG51bGwgJiYgdHlwZW9mIHRoaXMuZ2V0QXBwbGljYXRpb24oKSAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgIHRoaXMuZ2V0QXBwbGljYXRpb24oKS5nZXRBcHBJbmZvKCkgIT09IG51bGwgJiYgdHlwZW9mIHRoaXMuZ2V0QXBwbGljYXRpb24oKS5nZXRBcHBJbmZvKCkgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzLmRlbGF5ID0gdGhpcy5nZXRBcHBsaWNhdGlvbigpLmdldEFwcEluZm8oKS5zZXR0aW5ncy5BUFBfU1dJVENIRVJfUE9QT1ZFUl9ERUxBWTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy9zdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuY29udGVudFRleHQgPSAnPGRpdiBjbGFzcz1cImFuY2hvclwiPjwvZGl2Pic7XG4gICAgdGhpcy5hcHBQb3BvdmVyVHlwZSA9IEFwcERyYXdlclBvcG92ZXI7XG4gICAgdGhpcy5zdWJUb3BpY05hbWUgPSBQaGxveEFwcFN3aXRjaGVyLlNVQl9UT1BJQ19OQU1FO1xuICB9XG5cbiAgcHJvdGVjdGVkIGRvRm9jdXMoJGV2ZW50OiBFdmVudCk6IHZvaWQge1xuXG4gIH1cblxuICBwcm90ZWN0ZWQgZG9Mb3N0Rm9jdXMoJGV2ZW50OiBFdmVudCk6IHZvaWQge1xuXG4gIH1cblxuICBwdWJsaWMgb25Qb3BvdmVyQnRuQ2xpY2tlZCgkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgb25Qb3BvdmVyQWN0aXZlZCgkZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuc291cmNlID0gJGV2ZW50LnNvdXJjZTtcbiAgICB0aGlzLm5lZWRGb2N1c1NlcnZpY2Uuc2V0Rm9jdXNpbmdDb21wb25lbnQodGhpcyk7XG4gIH1cblxuICBwdWJsaWMgb25Qb3BvdmVySW5hY3RpdmVkKCRldmVudDogYW55KSB7XG4gICAgdGhpcy5zb3VyY2UgPSBudWxsO1xuICAgIHRoaXMubmVlZEZvY3VzU2VydmljZS5yZXNldEZvY3VzaW5nQ29tcG9uZW50KCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgc3VwZXIub25DbGljayhldmVudCk7XG4gIH1cblxuICBwdWJsaWMgb25Gb2N1cyhldmVudDogYW55KTogdm9pZCB7XG5cbiAgfVxuXG4gIHB1YmxpYyBvbkxvc3RGb2N1cyhldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc291cmNlICE9IG51bGwpIHtcbiAgICAgIHRoaXMuc291cmNlLmhpZGUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgX29uRG9jdW1lbnRDbGljaygkZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIGlmICh0aGlzLnNvdXJjZSAhPSBudWxsKSB7XG4gICAgICB0aGlzLnNvdXJjZS5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldENvbnRlbnRUZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29udGVudFRleHQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0U3ViVG9waWNOYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuc3ViVG9waWNOYW1lO1xuICB9XG5cbiAgcHVibGljIGdldEFwcFBvcG92ZXJUeXBlKCk6IFR5cGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuYXBwUG9wb3ZlclR5cGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0RGVsYXkoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5kZWxheTtcbiAgfVxufVxuXG5leHBvcnQgKiBmcm9tICcuL3N3aXRjaGVyLmludGVybmFsL0FwcERyYXdlclBvcG92ZXIuY29tcG9uZW50JztcbiJdfQ==