UNPKG

ng-zorro-antd-mobile

Version:

An enterprise-class mobile UI components based on Ant Design and Angular

178 lines (177 loc) 20.2 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import { Component, Input, HostBinding, TemplateRef } from '@angular/core'; import { trigger, state, style } from '@angular/animations'; /** @typedef {?} */ var TabPanelPositionState; export { TabPanelPositionState }; export class TabPane { constructor() { this.prefixCls = 'am-tabs-pane'; this.tintColor = '#108ee9'; this.unselectedTintColor = '#888'; this.active = true; this.isTitleString = true; this.showTabPanelContent = false; this.paneWrap = true; } /** * @return {?} */ get title() { return this._title; } /** * @param {?} value * @return {?} */ set title(value) { this.isTitleString = !(value instanceof TemplateRef); this._title = value; } /** * @return {?} */ get wrapActive() { return this.active; } /** * @return {?} */ get wrapInactive() { return !this.active; } /** * @param {?} e * @return {?} */ onTranslateTabStarted(e) { if ((e.toState == 'center-with-animation' || e.toState == 'center-without-animation' || e.toState == 'left-with-animation-with-higher-zindex' || e.toState == 'right-with-animation-with-higher-zindex' || e.toState == 'top-with-animation-with-higher-zindex' || e.toState == 'bottom-with-animation-with-higher-zindex') && (this.position == 'center-with-animation' || this.position == 'center-without-animation' || this.position == 'left-with-animation-with-higher-zindex' || this.position == 'right-with-animation-with-higher-zindex' || this.position == 'top-with-animation-with-higher-zindex' || this.position == 'bottom-with-animation-with-higher-zindex')) { this.showTabPanelContent = true; } } /** * @param {?} e * @return {?} */ onTranslateTabComplete(e) { if (e.toState !== 'center-with-animation' && e.toState !== 'center-without-animation' && e.toState !== 'left-with-animation-with-higher-zindex' && e.toState !== 'right-with-animation-with-higher-zindex' && e.toState !== 'top-with-animation-with-higher-zindex' && e.toState !== 'bottom-with-animation-with-higher-zindex' && this.position !== 'center-with-animation' && this.position !== 'center-without-animation' && this.position !== 'left-with-animation-with-higher-zindex' && this.position !== 'right-with-animation-with-higher-zindex' && this.position !== 'top-with-animation-with-higher-zindex' && this.position !== 'bottom-with-animation-with-higher-zindex') { this.showTabPanelContent = false; } } } TabPane.decorators = [ { type: Component, args: [{ selector: 'TabPane, nzm-tab-pane', template: "<ng-content *ngIf=\"showTabPanelContent\"></ng-content>", host: { '[@translateTabPane]': 'position', '(@translateTabPane.start)': 'onTranslateTabStarted($event)', '(@translateTabPane.done)': 'onTranslateTabComplete($event)' }, animations: [ trigger('translateTabPane', [ state('left-with-animation', style({ transform: 'translate3d(-100%, 0, 0)', transition: '.3s cubic-bezier(0.35, 0, 0.25, 1)' })), state('left-with-animation-with-higher-zindex', style({ 'z-index': 100, transform: 'translate3d(-100%, 0, 0)', transition: '.3s cubic-bezier(0.35, 0, 0.25, 1)' })), state('left-without-animation', style({ transform: 'translate3d(-100%, 0, 0)' })), state('right-with-animation', style({ transform: 'translate3d(100%, 0, 0)', transition: '.3s cubic-bezier(0.35, 0, 0.25, 1)' })), state('right-with-animation-with-higher-zindex', style({ 'z-index': 100, transform: 'translate3d(100%, 0, 0)', transition: '.3s cubic-bezier(0.35, 0, 0.25, 1)' })), state('right-without-animation', style({ transform: 'translate3d(100%, 0, 0)' })), state('top-with-animation', style({ transform: 'translate3d(0, -100%, 0)', transition: '.3s cubic-bezier(0.35, 0, 0.25, 1)' })), state('top-with-animation-with-higher-zindex', style({ 'z-index': 100, transform: 'translate3d(0, -100%, 0)', transition: '.3s cubic-bezier(0.35, 0, 0.25, 1)' })), state('top-without-animation', style({ transform: 'translate3d(0, -100%, 0)' })), state('bottom-with-animation', style({ transform: 'translate3d(0, 100%, 0)', transition: '.3s cubic-bezier(0.35, 0, 0.25, 1)' })), state('bottom-with-animation-with-higher-zindex', style({ 'z-index': 100, transform: 'translate3d(0, 100%, 0)', transition: '.3s cubic-bezier(0.35, 0, 0.25, 1)' })), state('bottom-without-animation', style({ transform: 'translate3d(0, 100%, 0)' })), state('center-with-animation', style({ 'z-index': 100, transform: 'translate3d(0, 0, 0)', transition: '.3s cubic-bezier(0.35, 0, 0.25, 1)' })), state('center-without-animation', style({ transform: 'translate3d(0, 0, 0)' })) ]) ], styles: [`:host {touch-action: auto}`] }] } ]; /** @nocollapse */ TabPane.ctorParameters = () => []; TabPane.propDecorators = { title: [{ type: Input }], paneWrap: [{ type: HostBinding, args: ['class.am-tabs-pane-wrap',] }], wrapActive: [{ type: HostBinding, args: ['class.am-tabs-pane-wrap-active',] }], wrapInactive: [{ type: HostBinding, args: ['class.am-tabs-pane-wrap-inactive',] }] }; if (false) { /** @type {?} */ TabPane.prototype.prefixCls; /** @type {?} */ TabPane.prototype.tintColor; /** @type {?} */ TabPane.prototype.unselectedTintColor; /** @type {?} */ TabPane.prototype.active; /** @type {?} */ TabPane.prototype.isTitleString; /** @type {?} */ TabPane.prototype.showTabPanelContent; /** @type {?} */ TabPane.prototype.position; /** @type {?} */ TabPane.prototype._title; /** @type {?} */ TabPane.prototype.paneWrap; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXBhbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctem9ycm8tYW50ZC1tb2JpbGUvIiwic291cmNlcyI6WyJ0YWJzL3RhYi1wYW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7OztBQXlHNUQsTUFBTTtJQStCSjt5QkE5Qm9CLGNBQWM7eUJBQ2QsU0FBUzttQ0FDQyxNQUFNO3NCQUNsQixJQUFJOzZCQUNHLElBQUk7bUNBQ0UsS0FBSzt3QkFlaEIsSUFBSTtLQVVSOzs7O0lBcEJoQixJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7S0FDcEI7Ozs7O0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBaUM7UUFDekMsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUMsS0FBSyxZQUFZLFdBQVcsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0tBQ3JCOzs7O0lBSUQsSUFDSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0tBQ3BCOzs7O0lBQ0QsSUFDSSxZQUFZO1FBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7S0FDckI7Ozs7O0lBSUQscUJBQXFCLENBQUMsQ0FBTTtRQUMxQixJQUNFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSx1QkFBdUI7WUFDbkMsQ0FBQyxDQUFDLE9BQU8sSUFBSSwwQkFBMEI7WUFDdkMsQ0FBQyxDQUFDLE9BQU8sSUFBSSx3Q0FBd0M7WUFDckQsQ0FBQyxDQUFDLE9BQU8sSUFBSSx5Q0FBeUM7WUFDdEQsQ0FBQyxDQUFDLE9BQU8sSUFBSSx1Q0FBdUM7WUFD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QUNqRCxDQUFDLENBQ0g7d0JBQ0QsS0FBSyxDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSwwQkFBMEIsRUFBRSxDQUFDLENBQUM7d0JBQ2hGLEtBQUssQ0FDSCx1QkFBdUIsRUFDdkIsS0FBSyxDQUFDOzRCQUNKLFNBQVMsRUFBRSx5QkFBeUI7NEJBQ3BDLFVBQVUsRUFBRSxvQ0FBb0M7eUJBQ2pELENBQUMsQ0FDSDt3QkFDRCxLQUFLLENBQ0gsMENBQTBDLEVBQzFDLEtBQUssQ0FBQzs0QkFDSixTQUFTLEVBQUUsR0FBRzs0QkFDZCxTQUFTLEVBQUUseUJBQXlCOzRCQUNwQyxVQUFVLEVBQUUsb0NBQW9DO3lCQUNqRCxDQUFDLENBQ0g7d0JBQ0QsS0FBSyxDQUFDLDBCQUEwQixFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSx5QkFBeUIsRUFBRSxDQUFDLENBQUM7d0JBQ2xGLEtBQUssQ0FDSCx1QkFBdUIsRUFDdkIsS0FBSyxDQUFDOzRCQUNKLFNBQVMsRUFBRSxHQUFHOzRCQUNkLFNBQVMsRUFBRSxzQkFBc0I7NEJBQ2pDLFVBQVUsRUFBRSxvQ0FBb0M7eUJBQ2pELENBQUMsQ0FDSDt3QkFDRCxLQUFLLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FBQztxQkFDaEYsQ0FBQztpQkFDSDt5QkFsRlEsNEJBQTRCO2FBbUZ0Qzs7Ozs7b0JBWUUsS0FBSzt1QkFTTCxXQUFXLFNBQUMseUJBQXlCO3lCQUVyQyxXQUFXLFNBQUMsZ0NBQWdDOzJCQUk1QyxXQUFXLFNBQUMsa0NBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgSG9zdEJpbmRpbmcsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0cmlnZ2VyLCBzdGF0ZSwgc3R5bGUgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcblxuZXhwb3J0IHR5cGUgVGFiUGFuZWxQb3NpdGlvblN0YXRlID1cbiAgfCAnY2VudGVyLXdpdGgtYW5pbWF0aW9uJ1xuICB8ICdjZW50ZXItd2l0aG91dC1hbmltYXRpb24nXG4gIHwgJ3RvcC13aXRoLWFuaW1hdGlvbidcbiAgfCAndG9wLXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCdcbiAgfCAndG9wLXdpdGhvdXQtYW5pbWF0aW9uJ1xuICB8ICdsZWZ0LXdpdGgtYW5pbWF0aW9uJ1xuICB8ICdsZWZ0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCdcbiAgfCAnbGVmdC13aXRob3V0LWFuaW1hdGlvbidcbiAgfCAnYm90dG9tLXdpdGgtYW5pbWF0aW9uJ1xuICB8ICdib3R0b20td2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4J1xuICB8ICdib3R0b20td2l0aG91dC1hbmltYXRpb24nXG4gIHwgJ3JpZ2h0LXdpdGgtYW5pbWF0aW9uJ1xuICB8ICdyaWdodC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnXG4gIHwgJ3JpZ2h0LXdpdGhvdXQtYW5pbWF0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnVGFiUGFuZSwgbnptLXRhYi1wYW5lJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYi1wYW5lLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVzOiBbYDpob3N0IHt0b3VjaC1hY3Rpb246IGF1dG99YF0sXG4gIGhvc3Q6IHtcbiAgICAnW0B0cmFuc2xhdGVUYWJQYW5lXSc6ICdwb3NpdGlvbicsXG4gICAgJyhAdHJhbnNsYXRlVGFiUGFuZS5zdGFydCknOiAnb25UcmFuc2xhdGVUYWJTdGFydGVkKCRldmVudCknLFxuICAgICcoQHRyYW5zbGF0ZVRhYlBhbmUuZG9uZSknOiAnb25UcmFuc2xhdGVUYWJDb21wbGV0ZSgkZXZlbnQpJ1xuICB9LFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcigndHJhbnNsYXRlVGFiUGFuZScsIFtcbiAgICAgIHN0YXRlKFxuICAgICAgICAnbGVmdC13aXRoLWFuaW1hdGlvbicsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCknLFxuICAgICAgICAgIHRyYW5zaXRpb246ICcuM3MgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpJ1xuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHN0YXRlKFxuICAgICAgICAnbGVmdC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgJ3otaW5kZXgnOiAxMDAsXG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApJyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnLjNzIGN1YmljLWJlemllcigwLjM1LCAwLCAwLjI1LCAxKSdcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICBzdGF0ZSgnbGVmdC13aXRob3V0LWFuaW1hdGlvbicsIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCknIH0pKSxcbiAgICAgIHN0YXRlKFxuICAgICAgICAncmlnaHQtd2l0aC1hbmltYXRpb24nLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMTAwJSwgMCwgMCknLFxuICAgICAgICAgIHRyYW5zaXRpb246ICcuM3MgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpJ1xuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHN0YXRlKFxuICAgICAgICAncmlnaHQtd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICd6LWluZGV4JzogMTAwLFxuICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDEwMCUsIDAsIDApJyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnLjNzIGN1YmljLWJlemllcigwLjM1LCAwLCAwLjI1LCAxKSdcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICBzdGF0ZSgncmlnaHQtd2l0aG91dC1hbmltYXRpb24nLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMTAwJSwgMCwgMCknIH0pKSxcbiAgICAgIHN0YXRlKFxuICAgICAgICAndG9wLXdpdGgtYW5pbWF0aW9uJyxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKScsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJy4zcyBjdWJpYy1iZXppZXIoMC4zNSwgMCwgMC4yNSwgMSknXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgc3RhdGUoXG4gICAgICAgICd0b3Atd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICd6LWluZGV4JzogMTAwLFxuICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKScsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJy4zcyBjdWJpYy1iZXppZXIoMC4zNSwgMCwgMC4yNSwgMSknXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgc3RhdGUoJ3RvcC13aXRob3V0LWFuaW1hdGlvbicsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApJyB9KSksXG4gICAgICBzdGF0ZShcbiAgICAgICAgJ2JvdHRvbS13aXRoLWFuaW1hdGlvbicsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKScsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJy4zcyBjdWJpYy1iZXppZXIoMC4zNSwgMCwgMC4yNSwgMSknXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgc3RhdGUoXG4gICAgICAgICdib3R0b20td2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICd6LWluZGV4JzogMTAwLFxuICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAsIDEwMCUsIDApJyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnLjNzIGN1YmljLWJlemllcigwLjM1LCAwLCAwLjI1LCAxKSdcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICBzdGF0ZSgnYm90dG9tLXdpdGhvdXQtYW5pbWF0aW9uJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKScgfSkpLFxuICAgICAgc3RhdGUoXG4gICAgICAgICdjZW50ZXItd2l0aC1hbmltYXRpb24nLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgJ3otaW5kZXgnOiAxMDAsXG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCwgMCwgMCknLFxuICAgICAgICAgIHRyYW5zaXRpb246ICcuM3MgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpJ1xuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHN0YXRlKCdjZW50ZXItd2l0aG91dC1hbmltYXRpb24nLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAsIDAsIDApJyB9KSlcbiAgICBdKVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRhYlBhbmUge1xuICBwcmVmaXhDbHM6IHN0cmluZyA9ICdhbS10YWJzLXBhbmUnO1xuICB0aW50Q29sb3I6IHN0cmluZyA9ICcjMTA4ZWU5JztcbiAgdW5zZWxlY3RlZFRpbnRDb2xvcjogc3RyaW5nID0gJyM4ODgnO1xuICBhY3RpdmU6IGJvb2xlYW4gPSB0cnVlO1xuICBpc1RpdGxlU3RyaW5nOiBib29sZWFuID0gdHJ1ZTtcbiAgc2hvd1RhYlBhbmVsQ29udGVudDogYm9vbGVhbiA9IGZhbHNlO1xuICBwb3NpdGlvbjogVGFiUGFuZWxQb3NpdGlvblN0YXRlO1xuXG4gIHByaXZhdGUgX3RpdGxlOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjx2b2lkPjtcblxuICBASW5wdXQoKVxuICBnZXQgdGl0bGUoKTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLl90aXRsZTtcbiAgfVxuICBzZXQgdGl0bGUodmFsdWU6IHN0cmluZyB8IFRlbXBsYXRlUmVmPHZvaWQ+KSB7XG4gICAgdGhpcy5pc1RpdGxlU3RyaW5nID0gISh2YWx1ZSBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKTtcbiAgICB0aGlzLl90aXRsZSA9IHZhbHVlO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS10YWJzLXBhbmUtd3JhcCcpXG4gIHBhbmVXcmFwOiBib29sZWFuID0gdHJ1ZTtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS10YWJzLXBhbmUtd3JhcC1hY3RpdmUnKVxuICBnZXQgd3JhcEFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmU7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS10YWJzLXBhbmUtd3JhcC1pbmFjdGl2ZScpXG4gIGdldCB3cmFwSW5hY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmFjdGl2ZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBvblRyYW5zbGF0ZVRhYlN0YXJ0ZWQoZTogYW55KSB7XG4gICAgaWYgKFxuICAgICAgKGUudG9TdGF0ZSA9PSAnY2VudGVyLXdpdGgtYW5pbWF0aW9uJyB8fFxuICAgICAgICBlLnRvU3RhdGUgPT0gJ2NlbnRlci13aXRob3V0LWFuaW1hdGlvbicgfHxcbiAgICAgICAgZS50b1N0YXRlID09ICdsZWZ0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgfHxcbiAgICAgICAgZS50b1N0YXRlID09ICdyaWdodC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnIHx8XG4gICAgICAgIGUudG9TdGF0ZSA9PSAndG9wLXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgfHxcbiAgICAgICAgZS50b1N0YXRlID09ICdib3R0b20td2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JykgJiZcbiAgICAgICh0aGlzLnBvc2l0aW9uID09ICdjZW50ZXItd2l0aC1hbmltYXRpb24nIHx8XG4gICAgICAgIHRoaXMucG9zaXRpb24gPT0gJ2NlbnRlci13aXRob3V0LWFuaW1hdGlvbicgfHxcbiAgICAgICAgdGhpcy5wb3NpdGlvbiA9PSAnbGVmdC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnIHx8XG4gICAgICAgIHRoaXMucG9zaXRpb24gPT0gJ3JpZ2h0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgfHxcbiAgICAgICAgdGhpcy5wb3NpdGlvbiA9PSAndG9wLXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgfHxcbiAgICAgICAgdGhpcy5wb3NpdGlvbiA9PSAnYm90dG9tLXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcpXG4gICAgKSB7XG4gICAgICB0aGlzLnNob3dUYWJQYW5lbENvbnRlbnQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG9uVHJhbnNsYXRlVGFiQ29tcGxldGUoZTogYW55KSB7XG4gICAgaWYgKFxuICAgICAgZS50b1N0YXRlICE9PSAnY2VudGVyLXdpdGgtYW5pbWF0aW9uJyAmJlxuICAgICAgZS50b1N0YXRlICE9PSAnY2VudGVyLXdpdGhvdXQtYW5pbWF0aW9uJyAmJlxuICAgICAgZS50b1N0YXRlICE9PSAnbGVmdC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnICYmXG4gICAgICBlLnRvU3RhdGUgIT09ICdyaWdodC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnICYmXG4gICAgICBlLnRvU3RhdGUgIT09ICd0b3Atd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyAmJlxuICAgICAgZS50b1N0YXRlICE9PSAnYm90dG9tLXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgJiZcbiAgICAgIHRoaXMucG9zaXRpb24gIT09ICdjZW50ZXItd2l0aC1hbmltYXRpb24nICYmXG4gICAgICB0aGlzLnBvc2l0aW9uICE9PSAnY2VudGVyLXdpdGhvdXQtYW5pbWF0aW9uJyAmJlxuICAgICAgdGhpcy5wb3NpdGlvbiAhPT0gJ2xlZnQtd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyAmJlxuICAgICAgdGhpcy5wb3NpdGlvbiAhPT0gJ3JpZ2h0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgJiZcbiAgICAgIHRoaXMucG9zaXRpb24gIT09ICd0b3Atd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyAmJlxuICAgICAgdGhpcy5wb3NpdGlvbiAhPT0gJ2JvdHRvbS13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnXG4gICAgKSB7XG4gICAgICB0aGlzLnNob3dUYWJQYW5lbENvbnRlbnQgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==