UNPKG

@angular-mdl/core

Version:

Angular components, directives and styles based on material design lite https://getmdl.io.

195 lines 21.7 kB
import { Component, Directive, HostBinding, Optional, ViewEncapsulation, } from "@angular/core"; import { MdlStructureError } from "../common/mdl-error"; import * as i0 from "@angular/core"; export class MdlCardComponent { constructor() { this.isCard = true; } } MdlCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); MdlCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardComponent, selector: "mdl-card", host: { properties: { "class.mdl-card": "this.isCard" } }, ngImport: i0, template: "<ng-content></ng-content>", isInline: true, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardComponent, decorators: [{ type: Component, args: [{ selector: "mdl-card", template: "<ng-content></ng-content>", encapsulation: ViewEncapsulation.None, }] }], propDecorators: { isCard: [{ type: HostBinding, args: ["class.mdl-card"] }] } }); // eslint-disable-next-line @angular-eslint/directive-class-suffix export class MdlCardChildStructure { constructor(mdlCardComponent, childComponentName) { this.mdlCardComponent = mdlCardComponent; this.childComponentName = childComponentName; } ngOnInit() { if (this.mdlCardComponent === null) { throw new MdlStructureError(this.childComponentName, "mdl-card"); } } } MdlCardChildStructure.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardChildStructure, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); MdlCardChildStructure.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardChildStructure, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardChildStructure, decorators: [{ type: Directive }], ctorParameters: function () { return [{ type: MdlCardComponent }, { type: undefined }]; } }); export class MdlCardTitleComponent extends MdlCardChildStructure { constructor(mdlCardComponent) { super(mdlCardComponent, "mdl-card-title"); this.isCardTitle = true; } } MdlCardTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardTitleComponent, deps: [{ token: MdlCardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); MdlCardTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardTitleComponent, selector: "mdl-card-title", host: { properties: { "class.mdl-card__title": "this.isCardTitle" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>", isInline: true, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardTitleComponent, decorators: [{ type: Component, args: [{ selector: "mdl-card-title", template: "<ng-content></ng-content>", encapsulation: ViewEncapsulation.None, }] }], ctorParameters: function () { return [{ type: MdlCardComponent, decorators: [{ type: Optional }] }]; }, propDecorators: { isCardTitle: [{ type: HostBinding, args: ["class.mdl-card__title"] }] } }); export class MdlCardSupportingTextComponent extends MdlCardChildStructure { constructor(mdlCardComponent) { super(mdlCardComponent, "mdl-card-supporting-text"); this.isSupportingText = true; } } MdlCardSupportingTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardSupportingTextComponent, deps: [{ token: MdlCardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); MdlCardSupportingTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardSupportingTextComponent, selector: "mdl-card-supporting-text", host: { properties: { "class.mdl-card__supporting-text": "this.isSupportingText" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>", isInline: true, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardSupportingTextComponent, decorators: [{ type: Component, args: [{ selector: "mdl-card-supporting-text", template: "<ng-content></ng-content>", encapsulation: ViewEncapsulation.None, }] }], ctorParameters: function () { return [{ type: MdlCardComponent, decorators: [{ type: Optional }] }]; }, propDecorators: { isSupportingText: [{ type: HostBinding, args: ["class.mdl-card__supporting-text"] }] } }); export class MdlCardMediaComponent extends MdlCardChildStructure { constructor(mdlCardComponent) { super(mdlCardComponent, "mdl-card-media"); this.isCardMedia = true; } } MdlCardMediaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardMediaComponent, deps: [{ token: MdlCardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); MdlCardMediaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardMediaComponent, selector: "mdl-card-media", host: { properties: { "class.mdl-card__media": "this.isCardMedia" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>", isInline: true, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardMediaComponent, decorators: [{ type: Component, args: [{ selector: "mdl-card-media", template: "<ng-content></ng-content>", encapsulation: ViewEncapsulation.None, }] }], ctorParameters: function () { return [{ type: MdlCardComponent, decorators: [{ type: Optional }] }]; }, propDecorators: { isCardMedia: [{ type: HostBinding, args: ["class.mdl-card__media"] }] } }); export class MdlCardActionsComponent extends MdlCardChildStructure { constructor(mdlCardComponent) { super(mdlCardComponent, "mdl-card-actions"); this.isCardAction = true; } } MdlCardActionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardActionsComponent, deps: [{ token: MdlCardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); MdlCardActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardActionsComponent, selector: "mdl-card-actions", host: { properties: { "class.mdl-card__actions": "this.isCardAction" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>", isInline: true, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardActionsComponent, decorators: [{ type: Component, args: [{ selector: "mdl-card-actions", template: "<ng-content></ng-content>", encapsulation: ViewEncapsulation.None, }] }], ctorParameters: function () { return [{ type: MdlCardComponent, decorators: [{ type: Optional }] }]; }, propDecorators: { isCardAction: [{ type: HostBinding, args: ["class.mdl-card__actions"] }] } }); export class MdlCardMenuComponent extends MdlCardChildStructure { constructor(mdlCardComponent) { super(mdlCardComponent, "mdl-card-menu"); this.isCardMenu = true; } } MdlCardMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardMenuComponent, deps: [{ token: MdlCardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); MdlCardMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardMenuComponent, selector: "mdl-card-menu", host: { properties: { "class.mdl-card__menu": "this.isCardMenu" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>", isInline: true, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardMenuComponent, decorators: [{ type: Component, args: [{ selector: "mdl-card-menu", template: "<ng-content></ng-content>", encapsulation: ViewEncapsulation.None, }] }], ctorParameters: function () { return [{ type: MdlCardComponent, decorators: [{ type: Optional }] }]; }, propDecorators: { isCardMenu: [{ type: HostBinding, args: ["class.mdl-card__menu"] }] } }); export class MdlCardTitleTextDirective { constructor() { this.isCardTitleText = true; } } MdlCardTitleTextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardTitleTextDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); MdlCardTitleTextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardTitleTextDirective, selector: "[mdl-card-title-text]", host: { properties: { "class.mdl-card__title-text": "this.isCardTitleText" } }, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardTitleTextDirective, decorators: [{ type: Directive, args: [{ // eslint-disable-next-line selector: '[mdl-card-title-text]' }] }], propDecorators: { isCardTitleText: [{ type: HostBinding, args: ["class.mdl-card__title-text"] }] } }); export class MdlCardBorderDirective { constructor() { this.isCardBorder = true; } } MdlCardBorderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardBorderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); MdlCardBorderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardBorderDirective, selector: "[mdl-card-border]", host: { properties: { "class.mdl-card--border": "this.isCardBorder" } }, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardBorderDirective, decorators: [{ type: Directive, args: [{ // eslint-disable-next-line selector: '[mdl-card-border]' }] }], propDecorators: { isCardBorder: [{ type: HostBinding, args: ["class.mdl-card--border"] }] } }); export class MdlCardExpandDirective { constructor() { this.isCardExpand = true; } } MdlCardExpandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardExpandDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); MdlCardExpandDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: MdlCardExpandDirective, selector: "[mdl-card-expand]", host: { properties: { "class.mdl-card--expand": "this.isCardExpand" } }, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlCardExpandDirective, decorators: [{ type: Directive, args: [{ // eslint-disable-next-line selector: '[mdl-card-expand]' }] }], propDecorators: { isCardExpand: [{ type: HostBinding, args: ["class.mdl-card--expand"] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWRsLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL2NhcmQvbWRsLWNhcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsU0FBUyxFQUNULFdBQVcsRUFFWCxRQUFRLEVBQ1IsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU94RCxNQUFNLE9BQU8sZ0JBQWdCO0lBTDdCO1FBTWlDLFdBQU0sR0FBRyxJQUFJLENBQUM7S0FDOUM7OzZHQUZZLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLDJHQUhqQiwyQkFBMkI7MkZBRzFCLGdCQUFnQjtrQkFMNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsVUFBVTtvQkFDcEIsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOzhCQUVnQyxNQUFNO3NCQUFwQyxXQUFXO3VCQUFDLGdCQUFnQjs7QUFJL0Isa0VBQWtFO0FBQ2xFLE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsWUFDVSxnQkFBa0MsRUFDbEMsa0JBQTBCO1FBRDFCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFRO0lBQ2pDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssSUFBSSxFQUFFO1lBQ2xDLE1BQU0sSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDbEU7SUFDSCxDQUFDOztrSEFWVSxxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUZqQyxTQUFTOztBQW9CVixNQUFNLE9BQU8scUJB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LHlCQUF5QjsyRkFBekIseUJBQXlCO2tCQUpyQyxTQUFTO21CQUFDO29CQUNULDJCQUEyQjtvQkFDM0IsUUFBUSxFQUFFLHVCQUF1QjtpQkFDbEM7OEJBR0MsZUFBZTtzQkFEZCxXQUFXO3VCQUFDLDRCQUE0Qjs7QUFRM0MsTUFBTSxPQUFPLHNCQUFzQjtJQUpuQztRQU1FLGlCQUFZLEdBQUcsSUFBSSxDQUFDO0tBQ3JCOzttSEFIWSxzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUpsQyxTQUFTO21CQUFDO29CQUNULDJCQUEyQjtvQkFDM0IsUUFBUSxFQUFFLG1CQUFtQjtpQkFDOUI7OEJBR0MsWUFBWTtzQkFEWCxXQUFXO3VCQUFDLHdCQUF3Qjs7QUFRdkMsTUFBTSxPQUFPLHNCQUFzQjtJQUpuQztRQU1FLGlCQUFZLEdBQUcsSUFBSSxDQUFDO0tBQ3JCOzttSEFIWSxzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUpsQyxTQUFTO21CQUFDO29CQUNULDJCQUEyQjtvQkFDM0IsUUFBUSxFQUFFLG1CQUFtQjtpQkFDOUI7OEJBR0MsWUFBWTtzQkFEWCxXQUFXO3VCQUFDLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRGlyZWN0aXZlLFxuICBIb3N0QmluZGluZyxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBNZGxTdHJ1Y3R1cmVFcnJvciB9IGZyb20gXCIuLi9jb21tb24vbWRsLWVycm9yXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJtZGwtY2FyZFwiLFxuICB0ZW1wbGF0ZTogXCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XCIsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE1kbENhcmRDb21wb25lbnQge1xuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5tZGwtY2FyZFwiKSBpc0NhcmQgPSB0cnVlO1xufVxuXG5ARGlyZWN0aXZlKClcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLWNsYXNzLXN1ZmZpeFxuZXhwb3J0IGNsYXNzIE1kbENhcmRDaGlsZFN0cnVjdHVyZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbWRsQ2FyZENvbXBvbmVudDogTWRsQ2FyZENvbXBvbmVudCxcbiAgICBwcml2YXRlIGNoaWxkQ29tcG9uZW50TmFtZTogc3RyaW5nXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tZGxDYXJkQ29tcG9uZW50ID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgTWRsU3RydWN0dXJlRXJyb3IodGhpcy5jaGlsZENvbXBvbmVudE5hbWUsIFwibWRsLWNhcmRcIik7XG4gICAgfVxuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJtZGwtY2FyZC10aXRsZVwiLFxuICB0ZW1wbGF0ZTogXCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XCIsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE1kbENhcmRUaXRsZUNvbXBvbmVudCBleHRlbmRzIE1kbENhcmRDaGlsZFN0cnVjdHVyZSB7XG4gIEBIb3N0QmluZGluZyhcImNsYXNzLm1kbC1jYXJkX190aXRsZVwiKVxuICBpc0NhcmRUaXRsZSA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgbWRsQ2FyZENvbXBvbmVudDogTWRsQ2FyZENvbXBvbmVudCkge1xuICAgIHN1cGVyKG1kbENhcmRDb21wb25lbnQsIFwibWRsLWNhcmQtdGl0bGVcIik7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm1kbC1jYXJkLXN1cHBvcnRpbmctdGV4dFwiLFxuICB0ZW1wbGF0ZTogXCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XCIsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE1kbENhcmRTdXBwb3J0aW5nVGV4dENvbXBvbmVudCBleHRlbmRzIE1kbENhcmRDaGlsZFN0cnVjdHVyZSB7XG4gIEBIb3N0QmluZGluZyhcImNsYXNzLm1kbC1jYXJkX19zdXBwb3J0aW5nLXRleHRcIilcbiAgaXNTdXBwb3J0aW5nVGV4dCA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgbWRsQ2FyZENvbXBvbmVudDogTWRsQ2FyZENvbXBvbmVudCkge1xuICAgIHN1cGVyKG1kbENhcmRDb21wb25lbnQsIFwibWRsLWNhcmQtc3VwcG9ydGluZy10ZXh0XCIpO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJtZGwtY2FyZC1tZWRpYVwiLFxuICB0ZW1wbGF0ZTogXCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XCIsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE1kbENhcmRNZWRpYUNvbXBvbmVudCBleHRlbmRzIE1kbENhcmRDaGlsZFN0cnVjdHVyZSB7XG4gIEBIb3N0QmluZGluZyhcImNsYXNzLm1kbC1jYXJkX19tZWRpYVwiKVxuICBpc0NhcmRNZWRpYSA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgbWRsQ2FyZENvbXBvbmVudDogTWRsQ2FyZENvbXBvbmVudCkge1xuICAgIHN1cGVyKG1kbENhcmRDb21wb25lbnQsIFwibWRsLWNhcmQtbWVkaWFcIik7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm1kbC1jYXJkLWFjdGlvbnNcIixcbiAgdGVtcGxhdGU6IFwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlwiLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBNZGxDYXJkQWN0aW9uc0NvbXBvbmVudCBleHRlbmRzIE1kbENhcmRDaGlsZFN0cnVjdHVyZSB7XG4gIEBIb3N0QmluZGluZyhcImNsYXNzLm1kbC1jYXJkX19hY3Rpb25zXCIpXG4gIGlzQ2FyZEFjdGlvbiA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgbWRsQ2FyZENvbXBvbmVudDogTWRsQ2FyZENvbXBvbmVudCkge1xuICAgIHN1cGVyKG1kbENhcmRDb21wb25lbnQsIFwibWRsLWNhcmQtYWN0aW9uc1wiKTtcbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwibWRsLWNhcmQtbWVudVwiLFxuICB0ZW1wbGF0ZTogXCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XCIsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE1kbENhcmRNZW51Q29tcG9uZW50IGV4dGVuZHMgTWRsQ2FyZENoaWxkU3RydWN0dXJlIHtcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MubWRsLWNhcmRfX21lbnVcIilcbiAgaXNDYXJkTWVudSA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgbWRsQ2FyZENvbXBvbmVudDogTWRsQ2FyZENvbXBvbmVudCkge1xuICAgIHN1cGVyKG1kbENhcmRDb21wb25lbnQsIFwibWRsLWNhcmQtbWVudVwiKTtcbiAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIHNlbGVjdG9yOiAnW21kbC1jYXJkLXRpdGxlLXRleHRdJ1xufSlcbmV4cG9ydCBjbGFzcyBNZGxDYXJkVGl0bGVUZXh0RGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MubWRsLWNhcmRfX3RpdGxlLXRleHRcIilcbiAgaXNDYXJkVGl0bGVUZXh0ID0gdHJ1ZTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBzZWxlY3RvcjogJ1ttZGwtY2FyZC1ib3JkZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBNZGxDYXJkQm9yZGVyRGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MubWRsLWNhcmQtLWJvcmRlclwiKVxuICBpc0NhcmRCb3JkZXIgPSB0cnVlO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIHNlbGVjdG9yOiAnW21kbC1jYXJkLWV4cGFuZF0nXG59KVxuZXhwb3J0IGNsYXNzIE1kbENhcmRFeHBhbmREaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5tZGwtY2FyZC0tZXhwYW5kXCIpXG4gIGlzQ2FyZEV4cGFuZCA9IHRydWU7XG59XG4iXX0=