ng-zorro-antd-mobile
Version:
An enterprise-class mobile UI components based on Ant Design and Angular
200 lines (199 loc) • 21.3 kB
JavaScript
/**
* @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 };
var TabPane = /** @class */ (function () {
function TabPane() {
this.prefixCls = 'am-tabs-pane';
this.tintColor = '#108ee9';
this.unselectedTintColor = '#888';
this.active = true;
this.isTitleString = true;
this.showTabPanelContent = false;
this.paneWrap = true;
}
Object.defineProperty(TabPane.prototype, "title", {
get: /**
* @return {?}
*/
function () {
return this._title;
},
set: /**
* @param {?} value
* @return {?}
*/
function (value) {
this.isTitleString = !(value instanceof TemplateRef);
this._title = value;
},
enumerable: true,
configurable: true
});
Object.defineProperty(TabPane.prototype, "wrapActive", {
get: /**
* @return {?}
*/
function () {
return this.active;
},
enumerable: true,
configurable: true
});
Object.defineProperty(TabPane.prototype, "wrapInactive", {
get: /**
* @return {?}
*/
function () {
return !this.active;
},
enumerable: true,
configurable: true
});
/**
* @param {?} e
* @return {?}
*/
TabPane.prototype.onTranslateTabStarted = /**
* @param {?} e
* @return {?}
*/
function (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 {?}
*/
TabPane.prototype.onTranslateTabComplete = /**
* @param {?} e
* @return {?}
*/
function (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 = function () { return []; };
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',] }]
};
return TabPane;
}());
export { TabPane };
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXBhbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctem9ycm8tYW50ZC1tb2JpbGUvIiwic291cmNlcyI6WyJ0YWJzL3RhYi1wYW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7SUF3STFEO3lCQTlCb0IsY0FBYzt5QkFDZCxTQUFTO21DQUNDLE1BQU07c0JBQ2xCLElBQUk7NkJBQ0csSUFBSTttQ0FDRSxLQUFLO3dCQWVoQixJQUFJO0tBVVI7SUFwQmhCLHNCQUNJLDBCQUFLOzs7O1FBRFQ7WUFFRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7U0FDcEI7Ozs7O1FBQ0QsVUFBVSxLQUFpQztZQUN6QyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQyxLQUFLLFlBQVksV0FBVyxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7U0FDckI7OztPQUpBO0lBUUQsc0JBQ0ksK0JBQVU7Ozs7UUFEZDtZQUVFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztTQUNwQjs7O09BQUE7SUFDRCxzQkFDSSxpQ0FBWTs7OztRQURoQjtZQUVFLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQ3JCOzs7T0FBQTs7Ozs7SUFJRCx1Q0FBcUI7Ozs7SUFBckIsVUFBc0IsQ0FBTTtRQUMxQixJQUNFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSx1QkFBdUI7WUFDbkMsQ0FBQyxDQUFDLE9BQU8sSUFBSSwwQkFBMEI7WUFDdkMsQ0FBQyxDQUFDLE9BQU8sSUFBSSx3Q0FBd0M7WUFDckQsQ0FBQyxDQUFDLE9BQU8sSUFBSSx5Q0FBeUM7WUFD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U0FBUyxFQUFFLDBCQUEwQjtnQ0FDckMsVUFBVSxFQUFFLG9DQUFvQzs2QkFDakQsQ0FBQyxDQUNIOzRCQUNELEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQyxDQUFDOzRCQUNoRixLQUFLLENBQ0gsdUJBQXVCLEVBQ3ZCLEtBQUssQ0FBQztnQ0FDSixTQUFTLEVBQUUseUJBQXlCO2dDQUNwQyxVQUFVLEVBQUUsb0NBQW9DOzZCQUNqRCxDQUFDLENBQ0g7NEJBQ0QsS0FBSyxDQUNILDBDQUEwQyxFQUMxQyxLQUFLLENBQUM7Z0NBQ0osU0FBUyxFQUFFLEdBQUc7Z0NBQ2QsU0FBUyxFQUFFLHlCQUF5QjtnQ0FDcEMsVUFBVSxFQUFFLG9DQUFvQzs2QkFDakQsQ0FBQyxDQUNIOzRCQUNELEtBQUssQ0FBQywwQkFBMEIsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUseUJBQXlCLEVBQUUsQ0FBQyxDQUFDOzRCQUNsRixLQUFLLENBQ0gsdUJBQXVCLEVBQ3ZCLEtBQUssQ0FBQztnQ0FDSixTQUFTLEVBQUUsR0FBRztnQ0FDZCxTQUFTLEVBQUUsc0JBQXNCO2dDQUNqQyxVQUFVLEVBQUUsb0NBQW9DOzZCQUNqRCxDQUFDLENBQ0g7NEJBQ0QsS0FBSyxDQUFDLDBCQUEwQixFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxDQUFDLENBQUM7eUJBQ2hGLENBQUM7cUJBQ0g7NkJBbEZRLDRCQUE0QjtpQkFtRnRDOzs7Ozt3QkFZRSxLQUFLOzJCQVNMLFdBQVcsU0FBQyx5QkFBeUI7NkJBRXJDLFdBQVcsU0FBQyxnQ0FBZ0M7K0JBSTVDLFdBQVcsU0FBQyxrQ0FBa0M7O2tCQXBJakQ7O1NBMEdhLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBIb3N0QmluZGluZywgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRyaWdnZXIsIHN0YXRlLCBzdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuXG5leHBvcnQgdHlwZSBUYWJQYW5lbFBvc2l0aW9uU3RhdGUgPVxuICB8ICdjZW50ZXItd2l0aC1hbmltYXRpb24nXG4gIHwgJ2NlbnRlci13aXRob3V0LWFuaW1hdGlvbidcbiAgfCAndG9wLXdpdGgtYW5pbWF0aW9uJ1xuICB8ICd0b3Atd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4J1xuICB8ICd0b3Atd2l0aG91dC1hbmltYXRpb24nXG4gIHwgJ2xlZnQtd2l0aC1hbmltYXRpb24nXG4gIHwgJ2xlZnQtd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4J1xuICB8ICdsZWZ0LXdpdGhvdXQtYW5pbWF0aW9uJ1xuICB8ICdib3R0b20td2l0aC1hbmltYXRpb24nXG4gIHwgJ2JvdHRvbS13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnXG4gIHwgJ2JvdHRvbS13aXRob3V0LWFuaW1hdGlvbidcbiAgfCAncmlnaHQtd2l0aC1hbmltYXRpb24nXG4gIHwgJ3JpZ2h0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCdcbiAgfCAncmlnaHQtd2l0aG91dC1hbmltYXRpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdUYWJQYW5lLCBuem0tdGFiLXBhbmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFiLXBhbmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZXM6IFtgOmhvc3Qge3RvdWNoLWFjdGlvbjogYXV0b31gXSxcbiAgaG9zdDoge1xuICAgICdbQHRyYW5zbGF0ZVRhYlBhbmVdJzogJ3Bvc2l0aW9uJyxcbiAgICAnKEB0cmFuc2xhdGVUYWJQYW5lLnN0YXJ0KSc6ICdvblRyYW5zbGF0ZVRhYlN0YXJ0ZWQoJGV2ZW50KScsXG4gICAgJyhAdHJhbnNsYXRlVGFiUGFuZS5kb25lKSc6ICdvblRyYW5zbGF0ZVRhYkNvbXBsZXRlKCRldmVudCknXG4gIH0sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCd0cmFuc2xhdGVUYWJQYW5lJywgW1xuICAgICAgc3RhdGUoXG4gICAgICAgICdsZWZ0LXdpdGgtYW5pbWF0aW9uJyxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKScsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJy4zcyBjdWJpYy1iZXppZXIoMC4zNSwgMCwgMC4yNSwgMSknXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgc3RhdGUoXG4gICAgICAgICdsZWZ0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAnei1pbmRleCc6IDEwMCxcbiAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCknLFxuICAgICAgICAgIHRyYW5zaXRpb246ICcuM3MgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpJ1xuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHN0YXRlKCdsZWZ0LXdpdGhvdXQtYW5pbWF0aW9uJywgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKScgfSkpLFxuICAgICAgc3RhdGUoXG4gICAgICAgICdyaWdodC13aXRoLWFuaW1hdGlvbicsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKScsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJy4zcyBjdWJpYy1iZXppZXIoMC4zNSwgMCwgMC4yNSwgMSknXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgc3RhdGUoXG4gICAgICAgICdyaWdodC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgJ3otaW5kZXgnOiAxMDAsXG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMTAwJSwgMCwgMCknLFxuICAgICAgICAgIHRyYW5zaXRpb246ICcuM3MgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpJ1xuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHN0YXRlKCdyaWdodC13aXRob3V0LWFuaW1hdGlvbicsIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKScgfSkpLFxuICAgICAgc3RhdGUoXG4gICAgICAgICd0b3Atd2l0aC1hbmltYXRpb24nLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApJyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnLjNzIGN1YmljLWJlemllcigwLjM1LCAwLCAwLjI1LCAxKSdcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICBzdGF0ZShcbiAgICAgICAgJ3RvcC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgJ3otaW5kZXgnOiAxMDAsXG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApJyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnLjNzIGN1YmljLWJlemllcigwLjM1LCAwLCAwLjI1LCAxKSdcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICBzdGF0ZSgndG9wLXdpdGhvdXQtYW5pbWF0aW9uJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCknIH0pKSxcbiAgICAgIHN0YXRlKFxuICAgICAgICAnYm90dG9tLXdpdGgtYW5pbWF0aW9uJyxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAsIDEwMCUsIDApJyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnLjNzIGN1YmljLWJlemllcigwLjM1LCAwLCAwLjI1LCAxKSdcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICBzdGF0ZShcbiAgICAgICAgJ2JvdHRvbS13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgJ3otaW5kZXgnOiAxMDAsXG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCwgMTAwJSwgMCknLFxuICAgICAgICAgIHRyYW5zaXRpb246ICcuM3MgY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpJ1xuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHN0YXRlKCdib3R0b20td2l0aG91dC1hbmltYXRpb24nLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAsIDEwMCUsIDApJyB9KSksXG4gICAgICBzdGF0ZShcbiAgICAgICAgJ2NlbnRlci13aXRoLWFuaW1hdGlvbicsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAnei1pbmRleCc6IDEwMCxcbiAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLCAwLCAwKScsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJy4zcyBjdWJpYy1iZXppZXIoMC4zNSwgMCwgMC4yNSwgMSknXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgc3RhdGUoJ2NlbnRlci13aXRob3V0LWFuaW1hdGlvbicsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlM2QoMCwgMCwgMCknIH0pKVxuICAgIF0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVGFiUGFuZSB7XG4gIHByZWZpeENsczogc3RyaW5nID0gJ2FtLXRhYnMtcGFuZSc7XG4gIHRpbnRDb2xvcjogc3RyaW5nID0gJyMxMDhlZTknO1xuICB1bnNlbGVjdGVkVGludENvbG9yOiBzdHJpbmcgPSAnIzg4OCc7XG4gIGFjdGl2ZTogYm9vbGVhbiA9IHRydWU7XG4gIGlzVGl0bGVTdHJpbmc6IGJvb2xlYW4gPSB0cnVlO1xuICBzaG93VGFiUGFuZWxDb250ZW50OiBib29sZWFuID0gZmFsc2U7XG4gIHBvc2l0aW9uOiBUYWJQYW5lbFBvc2l0aW9uU3RhdGU7XG5cbiAgcHJpdmF0ZSBfdGl0bGU6IHN0cmluZyB8IFRlbXBsYXRlUmVmPHZvaWQ+O1xuXG4gIEBJbnB1dCgpXG4gIGdldCB0aXRsZSgpOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX3RpdGxlO1xuICB9XG4gIHNldCB0aXRsZSh2YWx1ZTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8dm9pZD4pIHtcbiAgICB0aGlzLmlzVGl0bGVTdHJpbmcgPSAhKHZhbHVlIGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpO1xuICAgIHRoaXMuX3RpdGxlID0gdmFsdWU7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLXRhYnMtcGFuZS13cmFwJylcbiAgcGFuZVdyYXA6IGJvb2xlYW4gPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLXRhYnMtcGFuZS13cmFwLWFjdGl2ZScpXG4gIGdldCB3cmFwQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZTtcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLXRhYnMtcGFuZS13cmFwLWluYWN0aXZlJylcbiAgZ2V0IHdyYXBJbmFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuYWN0aXZlO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG9uVHJhbnNsYXRlVGFiU3RhcnRlZChlOiBhbnkpIHtcbiAgICBpZiAoXG4gICAgICAoZS50b1N0YXRlID09ICdjZW50ZXItd2l0aC1hbmltYXRpb24nIHx8XG4gICAgICAgIGUudG9TdGF0ZSA9PSAnY2VudGVyLXdpdGhvdXQtYW5pbWF0aW9uJyB8fFxuICAgICAgICBlLnRvU3RhdGUgPT0gJ2xlZnQtd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyB8fFxuICAgICAgICBlLnRvU3RhdGUgPT0gJ3JpZ2h0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgfHxcbiAgICAgICAgZS50b1N0YXRlID09ICd0b3Atd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyB8fFxuICAgICAgICBlLnRvU3RhdGUgPT0gJ2JvdHRvbS13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnKSAmJlxuICAgICAgKHRoaXMucG9zaXRpb24gPT0gJ2NlbnRlci13aXRoLWFuaW1hdGlvbicgfHxcbiAgICAgICAgdGhpcy5wb3NpdGlvbiA9PSAnY2VudGVyLXdpdGhvdXQtYW5pbWF0aW9uJyB8fFxuICAgICAgICB0aGlzLnBvc2l0aW9uID09ICdsZWZ0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgfHxcbiAgICAgICAgdGhpcy5wb3NpdGlvbiA9PSAncmlnaHQtd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyB8fFxuICAgICAgICB0aGlzLnBvc2l0aW9uID09ICd0b3Atd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyB8fFxuICAgICAgICB0aGlzLnBvc2l0aW9uID09ICdib3R0b20td2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JylcbiAgICApIHtcbiAgICAgIHRoaXMuc2hvd1RhYlBhbmVsQ29udGVudCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgb25UcmFuc2xhdGVUYWJDb21wbGV0ZShlOiBhbnkpIHtcbiAgICBpZiAoXG4gICAgICBlLnRvU3RhdGUgIT09ICdjZW50ZXItd2l0aC1hbmltYXRpb24nICYmXG4gICAgICBlLnRvU3RhdGUgIT09ICdjZW50ZXItd2l0aG91dC1hbmltYXRpb24nICYmXG4gICAgICBlLnRvU3RhdGUgIT09ICdsZWZ0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgJiZcbiAgICAgIGUudG9TdGF0ZSAhPT0gJ3JpZ2h0LXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCcgJiZcbiAgICAgIGUudG9TdGF0ZSAhPT0gJ3RvcC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnICYmXG4gICAgICBlLnRvU3RhdGUgIT09ICdib3R0b20td2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyAmJlxuICAgICAgdGhpcy5wb3NpdGlvbiAhPT0gJ2NlbnRlci13aXRoLWFuaW1hdGlvbicgJiZcbiAgICAgIHRoaXMucG9zaXRpb24gIT09ICdjZW50ZXItd2l0aG91dC1hbmltYXRpb24nICYmXG4gICAgICB0aGlzLnBvc2l0aW9uICE9PSAnbGVmdC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnICYmXG4gICAgICB0aGlzLnBvc2l0aW9uICE9PSAncmlnaHQtd2l0aC1hbmltYXRpb24td2l0aC1oaWdoZXItemluZGV4JyAmJlxuICAgICAgdGhpcy5wb3NpdGlvbiAhPT0gJ3RvcC13aXRoLWFuaW1hdGlvbi13aXRoLWhpZ2hlci16aW5kZXgnICYmXG4gICAgICB0aGlzLnBvc2l0aW9uICE9PSAnYm90dG9tLXdpdGgtYW5pbWF0aW9uLXdpdGgtaGlnaGVyLXppbmRleCdcbiAgICApIHtcbiAgICAgIHRoaXMuc2hvd1RhYlBhbmVsQ29udGVudCA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIl19