ng-zorro-antd-mobile
Version:
An enterprise-class mobile UI components based on Ant Design and Angular
387 lines (386 loc) • 23.2 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { Component, Input, ViewEncapsulation, HostBinding } from '@angular/core';
var FlexComponent = /** @class */ (function () {
function FlexComponent() {
this.defaultProps = {
prefixCls: 'am-flexbox',
align: 'center'
};
this._direction = '';
this._justify = '';
this._alignContent = '';
this.amFlexbox = true;
}
Object.defineProperty(FlexComponent.prototype, "direction", {
set: /**
* @param {?} value
* @return {?}
*/
function (value) {
this._direction = value;
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "wrap", {
set: /**
* @param {?} value
* @return {?}
*/
function (value) {
this._wrap = value;
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "justify", {
set: /**
* @param {?} value
* @return {?}
*/
function (value) {
this._justify = value;
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "align", {
set: /**
* @param {?} value
* @return {?}
*/
function (value) {
this.defaultProps.align = value;
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "alignContent", {
set: /**
* @param {?} value
* @return {?}
*/
function (value) {
this._alignContent = value;
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxDirRow", {
get: /**
* @return {?}
*/
function () {
return this._direction === 'row';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxDirRowReverse", {
get: /**
* @return {?}
*/
function () {
return this._direction === 'row-reverse';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxDirColumn", {
get: /**
* @return {?}
*/
function () {
return this._direction === 'column';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxDirColumnReverse", {
get: /**
* @return {?}
*/
function () {
return this._direction === 'column-reverse';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxNowrap", {
get: /**
* @return {?}
*/
function () {
return this._wrap === 'nowrap';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxWrap", {
get: /**
* @return {?}
*/
function () {
return this._wrap === 'wrap';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxWrapReverse", {
get: /**
* @return {?}
*/
function () {
return this._wrap === 'wrap-reverse';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxJustifyStart", {
get: /**
* @return {?}
*/
function () {
return this._justify === 'start';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxJustifyCenter", {
get: /**
* @return {?}
*/
function () {
return this._justify === 'center';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxJustifyEnd", {
get: /**
* @return {?}
*/
function () {
return this._justify === 'end';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxJustifyBetween", {
get: /**
* @return {?}
*/
function () {
return this._justify === 'between';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignAround", {
get: /**
* @return {?}
*/
function () {
return this._justify === 'around';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignStart", {
get: /**
* @return {?}
*/
function () {
return this.defaultProps.align === 'start';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignCenter", {
get: /**
* @return {?}
*/
function () {
return this.defaultProps.align === 'center';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignEnd", {
get: /**
* @return {?}
*/
function () {
return this.defaultProps.align === 'end';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignBaseline", {
get: /**
* @return {?}
*/
function () {
return this.defaultProps.align === 'baseline';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignStretch", {
get: /**
* @return {?}
*/
function () {
return this.defaultProps.align === 'stretch';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignContentStart", {
get: /**
* @return {?}
*/
function () {
return this._alignContent === 'start';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignCotentCenter", {
get: /**
* @return {?}
*/
function () {
return this._alignContent === 'center';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignContentEnd", {
get: /**
* @return {?}
*/
function () {
return this._alignContent === 'end';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignContentBetween", {
get: /**
* @return {?}
*/
function () {
return this._alignContent === 'between';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignContentAround", {
get: /**
* @return {?}
*/
function () {
return this._alignContent === 'around';
},
enumerable: true,
configurable: true
});
Object.defineProperty(FlexComponent.prototype, "amFlexboxAlignContentStretch", {
get: /**
* @return {?}
*/
function () {
return this._alignContent === 'stretch';
},
enumerable: true,
configurable: true
});
FlexComponent.decorators = [
{ type: Component, args: [{
selector: 'Flex, nzm-flex',
template: "<ng-content></ng-content>\n",
encapsulation: ViewEncapsulation.None
}] }
];
/** @nocollapse */
FlexComponent.ctorParameters = function () { return []; };
FlexComponent.propDecorators = {
direction: [{ type: Input }],
wrap: [{ type: Input }],
justify: [{ type: Input }],
align: [{ type: Input }],
alignContent: [{ type: Input }],
amFlexbox: [{ type: HostBinding, args: ['class.am-flexbox',] }],
amFlexboxDirRow: [{ type: HostBinding, args: ['class.am-flexbox-dir-row',] }],
amFlexboxDirRowReverse: [{ type: HostBinding, args: ['class.am-flexbox-dir-row-reverse',] }],
amFlexboxDirColumn: [{ type: HostBinding, args: ['class.am-flexbox-dir-column',] }],
amFlexboxDirColumnReverse: [{ type: HostBinding, args: ['class.am-flexbox-dir-column-reverse',] }],
amFlexboxNowrap: [{ type: HostBinding, args: ['class.am-flexbox-nowrap',] }],
amFlexboxWrap: [{ type: HostBinding, args: ['class.am-flexbox-wrap',] }],
amFlexboxWrapReverse: [{ type: HostBinding, args: ['class.am-flexbox-wrap-reverse',] }],
amFlexboxJustifyStart: [{ type: HostBinding, args: ['class.am-flexbox-justify-start',] }],
amFlexboxJustifyCenter: [{ type: HostBinding, args: ['class.am-flexbox-justify-center',] }],
amFlexboxJustifyEnd: [{ type: HostBinding, args: ['class.am-flexbox-justify-end',] }],
amFlexboxJustifyBetween: [{ type: HostBinding, args: ['class.am-flexbox-justify-between',] }],
amFlexboxAlignAround: [{ type: HostBinding, args: ['class.am-flexbox-justify-around',] }],
amFlexboxAlignStart: [{ type: HostBinding, args: ['class.am-flexbox-align-start',] }],
amFlexboxAlignCenter: [{ type: HostBinding, args: ['class.am-flexbox-align-center',] }],
amFlexboxAlignEnd: [{ type: HostBinding, args: ['class.am-flexbox-align-end',] }],
amFlexboxAlignBaseline: [{ type: HostBinding, args: ['class.am-flexbox-align-baseline',] }],
amFlexboxAlignStretch: [{ type: HostBinding, args: ['class.am-flexbox-align-stretch',] }],
amFlexboxAlignContentStart: [{ type: HostBinding, args: ['class.am-flexbox-align-content-start',] }],
amFlexboxAlignCotentCenter: [{ type: HostBinding, args: ['class.am-flexbox-align-content-center',] }],
amFlexboxAlignContentEnd: [{ type: HostBinding, args: ['class.am-flexbox-align-content-end',] }],
amFlexboxAlignContentBetween: [{ type: HostBinding, args: ['class.am-flexbox-align-content-between',] }],
amFlexboxAlignContentAround: [{ type: HostBinding, args: ['class.am-flexbox-align-content-around',] }],
amFlexboxAlignContentStretch: [{ type: HostBinding, args: ['class.am-flexbox-align-content-stretch',] }]
};
return FlexComponent;
}());
export { FlexComponent };
if (false) {
/** @type {?} */
FlexComponent.prototype.defaultProps;
/** @type {?} */
FlexComponent.prototype._direction;
/** @type {?} */
FlexComponent.prototype._wrap;
/** @type {?} */
FlexComponent.prototype._justify;
/** @type {?} */
FlexComponent.prototype._alignContent;
/** @type {?} */
FlexComponent.prototype.amFlexbox;
}
var FlexItemComponent = /** @class */ (function () {
function FlexItemComponent() {
this.defaultProps = {
prefixCls: 'am-flexbox',
align: 'center'
};
this.flexboxItem = true;
}
FlexItemComponent.decorators = [
{ type: Component, args: [{
selector: 'FlexItem, nzm-flex-item',
template: "\n <ng-content></ng-content>\n ",
encapsulation: ViewEncapsulation.None
}] }
];
FlexItemComponent.propDecorators = {
flexboxItem: [{ type: HostBinding, args: ['class.am-flexbox-item',] }]
};
return FlexItemComponent;
}());
export { FlexItemComponent };
if (false) {
/** @type {?} */
FlexItemComponent.prototype.defaultProps;
/** @type {?} */
FlexItemComponent.prototype.flexboxItem;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxleC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy16b3Jyby1hbnRkLW1vYmlsZS8iLCJzb3VyY2VzIjpbImZsZXgvZmxleC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7SUF1SS9FOzRCQS9IZTtZQUNiLFNBQVMsRUFBRSxZQUFZO1lBQ3ZCLEtBQUssRUFBRSxRQUFRO1NBQ2hCOzBCQUc0QixFQUFFO3dCQUVKLEVBQUU7NkJBQ0csRUFBRTt5QkF3QmIsSUFBSTtLQThGVDtJQXBIaEIsc0JBQ0ksb0NBQVM7Ozs7O1FBRGIsVUFDYyxLQUFLO1lBQ2pCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1NBQ3pCOzs7T0FBQTtJQUNELHNCQUNJLCtCQUFJOzs7OztRQURSLFVBQ1MsS0FBSztZQUNaLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1NBQ3BCOzs7T0FBQTtJQUNELHNCQUNJLGtDQUFPOzs7OztRQURYLFVBQ1ksS0FBSztZQUNmLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1NBQ3ZCOzs7T0FBQTtJQUNELHNCQUNJLGdDQUFLOzs7OztRQURULFVBQ1UsS0FBSztZQUNiLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztTQUNqQzs7O09BQUE7SUFDRCxzQkFDSSx1Q0FBWTs7Ozs7UUFEaEIsVUFDaUIsS0FBSztZQUNwQixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztTQUM1Qjs7O09BQUE7SUFJRCxzQkFDSSwwQ0FBZTs7OztRQURuQjtZQUVFLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxLQUFLLENBQUM7U0FDbEM7OztPQUFBO0lBQ0Qsc0JBQ0ksaURBQXNCOzs7O1FBRDFCO1lBRUUsT0FBTyxJQUFJLENBQUMsVUFBVSxL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RSxXQUFXLFNBQUMsdUJBQXVCOzs0QkF2SnRDOztTQWlKYSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnRmxleCwgbnptLWZsZXgnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmxleC5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRmxleENvbXBvbmVudCB7XG4gIGRlZmF1bHRQcm9wcyA9IHtcbiAgICBwcmVmaXhDbHM6ICdhbS1mbGV4Ym94JyxcbiAgICBhbGlnbjogJ2NlbnRlcidcbiAgfTtcblxuICAvLyBfd3JhcENscyA9IHt9O1xuICBwcml2YXRlIF9kaXJlY3Rpb246IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIF93cmFwOiBzdHJpbmc7XG4gIHByaXZhdGUgX2p1c3RpZnk6IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIF9hbGlnbkNvbnRlbnQ6IHN0cmluZyA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBkaXJlY3Rpb24odmFsdWUpIHtcbiAgICB0aGlzLl9kaXJlY3Rpb24gPSB2YWx1ZTtcbiAgfVxuICBASW5wdXQoKVxuICBzZXQgd3JhcCh2YWx1ZSkge1xuICAgIHRoaXMuX3dyYXAgPSB2YWx1ZTtcbiAgfVxuICBASW5wdXQoKVxuICBzZXQganVzdGlmeSh2YWx1ZSkge1xuICAgIHRoaXMuX2p1c3RpZnkgPSB2YWx1ZTtcbiAgfVxuICBASW5wdXQoKVxuICBzZXQgYWxpZ24odmFsdWUpIHtcbiAgICB0aGlzLmRlZmF1bHRQcm9wcy5hbGlnbiA9IHZhbHVlO1xuICB9XG4gIEBJbnB1dCgpXG4gIHNldCBhbGlnbkNvbnRlbnQodmFsdWUpIHtcbiAgICB0aGlzLl9hbGlnbkNvbnRlbnQgPSB2YWx1ZTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYW0tZmxleGJveCcpXG4gIGFtRmxleGJveDogYm9vbGVhbiA9IHRydWU7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYW0tZmxleGJveC1kaXItcm93JylcbiAgZ2V0IGFtRmxleGJveERpclJvdygpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlyZWN0aW9uID09PSAncm93JztcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLWZsZXhib3gtZGlyLXJvdy1yZXZlcnNlJylcbiAgZ2V0IGFtRmxleGJveERpclJvd1JldmVyc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RpcmVjdGlvbiA9PT0gJ3Jvdy1yZXZlcnNlJztcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLWZsZXhib3gtZGlyLWNvbHVtbicpXG4gIGdldCBhbUZsZXhib3hEaXJDb2x1bW4oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RpcmVjdGlvbiA9PT0gJ2NvbHVtbic7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1mbGV4Ym94LWRpci1jb2x1bW4tcmV2ZXJzZScpXG4gIGdldCBhbUZsZXhib3hEaXJDb2x1bW5SZXZlcnNlKCkge1xuICAgIHJldHVybiB0aGlzLl9kaXJlY3Rpb24gPT09ICdjb2x1bW4tcmV2ZXJzZSc7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1mbGV4Ym94LW5vd3JhcCcpXG4gIGdldCBhbUZsZXhib3hOb3dyYXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3dyYXAgPT09ICdub3dyYXAnO1xuICB9XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYW0tZmxleGJveC13cmFwJylcbiAgZ2V0IGFtRmxleGJveFdyYXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3dyYXAgPT09ICd3cmFwJztcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLWZsZXhib3gtd3JhcC1yZXZlcnNlJylcbiAgZ2V0IGFtRmxleGJveFdyYXBSZXZlcnNlKCkge1xuICAgIHJldHVybiB0aGlzLl93cmFwID09PSAnd3JhcC1yZXZlcnNlJztcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLWZsZXhib3gtanVzdGlmeS1zdGFydCcpXG4gIGdldCBhbUZsZXhib3hKdXN0aWZ5U3RhcnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2p1c3RpZnkgPT09ICdzdGFydCc7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1mbGV4Ym94LWp1c3RpZnktY2VudGVyJylcbiAgZ2V0IGFtRmxleGJveEp1c3RpZnlDZW50ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2p1c3RpZnkgPT09ICdjZW50ZXInO1xuICB9XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYW0tZmxleGJveC1qdXN0aWZ5LWVuZCcpXG4gIGdldCBhbUZsZXhib3hKdXN0aWZ5RW5kKCkge1xuICAgIHJldHVybiB0aGlzLl9qdXN0aWZ5ID09PSAnZW5kJztcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLWZsZXhib3gtanVzdGlmeS1iZXR3ZWVuJylcbiAgZ2V0IGFtRmxleGJveEp1c3RpZnlCZXR3ZWVuKCkge1xuICAgIHJldHVybiB0aGlzLl9qdXN0aWZ5ID09PSAnYmV0d2Vlbic7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1mbGV4Ym94LWp1c3RpZnktYXJvdW5kJylcbiAgZ2V0IGFtRmxleGJveEFsaWduQXJvdW5kKCkge1xuICAgIHJldHVybiB0aGlzLl9qdXN0aWZ5ID09PSAnYXJvdW5kJztcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLWZsZXhib3gtYWxpZ24tc3RhcnQnKVxuICBnZXQgYW1GbGV4Ym94QWxpZ25TdGFydCgpIHtcbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0UHJvcHMuYWxpZ24gPT09ICdzdGFydCc7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1mbGV4Ym94LWFsaWduLWNlbnRlcicpXG4gIGdldCBhbUZsZXhib3hBbGlnbkNlbnRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0UHJvcHMuYWxpZ24gPT09ICdjZW50ZXInO1xuICB9XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYW0tZmxleGJveC1hbGlnbi1lbmQnKVxuICBnZXQgYW1GbGV4Ym94QWxpZ25FbmQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGVmYXVsdFByb3BzLmFsaWduID09PSAnZW5kJztcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLWZsZXhib3gtYWxpZ24tYmFzZWxpbmUnKVxuICBnZXQgYW1GbGV4Ym94QWxpZ25CYXNlbGluZSgpIHtcbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0UHJvcHMuYWxpZ24gPT09ICdiYXNlbGluZSc7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1mbGV4Ym94LWFsaWduLXN0cmV0Y2gnKVxuICBnZXQgYW1GbGV4Ym94QWxpZ25TdHJldGNoKCkge1xuICAgIHJldHVybiB0aGlzLmRlZmF1bHRQcm9wcy5hbGlnbiA9PT0gJ3N0cmV0Y2gnO1xuICB9XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYW0tZmxleGJveC1hbGlnbi1jb250ZW50LXN0YXJ0JylcbiAgZ2V0IGFtRmxleGJveEFsaWduQ29udGVudFN0YXJ0KCkge1xuICAgIHJldHVybiB0aGlzLl9hbGlnbkNvbnRlbnQgPT09ICdzdGFydCc7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1mbGV4Ym94LWFsaWduLWNvbnRlbnQtY2VudGVyJylcbiAgZ2V0IGFtRmxleGJveEFsaWduQ290ZW50Q2VudGVyKCkge1xuICAgIHJldHVybiB0aGlzLl9hbGlnbkNvbnRlbnQgPT09ICdjZW50ZXInO1xuICB9XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYW0tZmxleGJveC1hbGlnbi1jb250ZW50LWVuZCcpXG4gIGdldCBhbUZsZXhib3hBbGlnbkNvbnRlbnRFbmQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FsaWduQ29udGVudCA9PT0gJ2VuZCc7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1mbGV4Ym94LWFsaWduLWNvbnRlbnQtYmV0d2VlbicpXG4gIGdldCBhbUZsZXhib3hBbGlnbkNvbnRlbnRCZXR3ZWVuKCkge1xuICAgIHJldHVybiB0aGlzLl9hbGlnbkNvbnRlbnQgPT09ICdiZXR3ZWVuJztcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLWZsZXhib3gtYWxpZ24tY29udGVudC1hcm91bmQnKVxuICBnZXQgYW1GbGV4Ym94QWxpZ25Db250ZW50QXJvdW5kKCkge1xuICAgIHJldHVybiB0aGlzLl9hbGlnbkNvbnRlbnQgPT09ICdhcm91bmQnO1xuICB9XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYW0tZmxleGJveC1hbGlnbi1jb250ZW50LXN0cmV0Y2gnKVxuICBnZXQgYW1GbGV4Ym94QWxpZ25Db250ZW50U3RyZXRjaCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYWxpZ25Db250ZW50ID09PSAnc3RyZXRjaCc7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHt9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ0ZsZXhJdGVtLCBuem0tZmxleC1pdGVtJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIGAsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRmxleEl0ZW1Db21wb25lbnQge1xuICBkZWZhdWx0UHJvcHMgPSB7XG4gICAgcHJlZml4Q2xzOiAnYW0tZmxleGJveCcsXG4gICAgYWxpZ246ICdjZW50ZXInXG4gIH07XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1mbGV4Ym94LWl0ZW0nKVxuICBmbGV4Ym94SXRlbTogYm9vbGVhbiA9IHRydWU7XG59XG4iXX0=