@gravitee/ui-particles-angular 12.21.1 → 12.22.1-improvements-d1166d6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -31,11 +31,11 @@ export class GioBannerComponent {
31
31
  this.collapse = !this.collapse;
32
32
  }
33
33
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerComponent, selector: "gio-banner", inputs: { type: "type", icon: "icon", collapsible: "collapsible" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerComponent, selector: "gio-banner", inputs: { type: "type", icon: "icon", collapsible: "collapsible" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
35
35
  }
36
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerComponent, decorators: [{
37
37
  type: Component,
38
- args: [{ selector: 'gio-banner', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
38
+ args: [{ selector: 'gio-banner', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
39
39
  }], propDecorators: { type: [{
40
40
  type: Input
41
41
  }], icon: [{
@@ -70,11 +70,11 @@ export class GioBannerErrorComponent extends GioBannerComponent {
70
70
  this.icon = 'gio:chat-bubble-error';
71
71
  }
72
72
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerErrorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
73
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerErrorComponent, selector: "gio-banner-error", usesInheritance: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
73
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerErrorComponent, selector: "gio-banner-error", usesInheritance: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
74
74
  }
75
75
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerErrorComponent, decorators: [{
76
76
  type: Component,
77
- args: [{ selector: 'gio-banner-error', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
77
+ args: [{ selector: 'gio-banner-error', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
78
78
  }] });
79
79
  export class GioBannerInfoComponent extends GioBannerComponent {
80
80
  constructor() {
@@ -83,11 +83,11 @@ export class GioBannerInfoComponent extends GioBannerComponent {
83
83
  this.icon = 'gio:chat-lines';
84
84
  }
85
85
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerInfoComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
86
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerInfoComponent, selector: "gio-banner-info", usesInheritance: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
86
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerInfoComponent, selector: "gio-banner-info", usesInheritance: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
87
87
  }
88
88
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerInfoComponent, decorators: [{
89
89
  type: Component,
90
- args: [{ selector: 'gio-banner-info', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
90
+ args: [{ selector: 'gio-banner-info', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
91
91
  }] });
92
92
  export class GioBannerSuccessComponent extends GioBannerComponent {
93
93
  constructor() {
@@ -96,11 +96,11 @@ export class GioBannerSuccessComponent extends GioBannerComponent {
96
96
  this.icon = 'gio:chat-bubble-check';
97
97
  }
98
98
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerSuccessComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
99
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerSuccessComponent, selector: "gio-banner-success", usesInheritance: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
99
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerSuccessComponent, selector: "gio-banner-success", usesInheritance: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
100
100
  }
101
101
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerSuccessComponent, decorators: [{
102
102
  type: Component,
103
- args: [{ selector: 'gio-banner-success', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
103
+ args: [{ selector: 'gio-banner-success', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
104
104
  }] });
105
105
  export class GioBannerWarningComponent extends GioBannerComponent {
106
106
  constructor() {
@@ -109,10 +109,10 @@ export class GioBannerWarningComponent extends GioBannerComponent {
109
109
  this.icon = 'gio:chat-bubble-warning';
110
110
  }
111
111
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerWarningComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
112
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerWarningComponent, selector: "gio-banner-warning", usesInheritance: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
112
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioBannerWarningComponent, selector: "gio-banner-warning", usesInheritance: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }] }); }
113
113
  }
114
114
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioBannerWarningComponent, decorators: [{
115
115
  type: Component,
116
- args: [{ selector: 'gio-banner-warning', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
116
+ args: [{ selector: 'gio-banner-warning', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n class=\"banner\"\n [class.info]=\"type === 'info'\"\n [class.error]=\"type === 'error'\"\n [class.warning]=\"type === 'warning'\"\n [class.success]=\"type === 'success'\"\n>\n <div class=\"banner__wrapper\">\n <div *ngIf=\"icon; else defaultTypeIcon\" class=\"banner__wrapper__icon\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </div>\n <ng-template #defaultTypeIcon>\n <div class=\"banner__wrapper__icon\" [ngSwitch]=\"type\">\n <mat-icon *ngSwitchCase=\"'info'\" svgIcon=\"gio:chat-lines\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'error'\" svgIcon=\"gio:chat-bubble-error\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'warning'\" svgIcon=\"gio:chat-bubble-warning\"></mat-icon>\n <mat-icon *ngSwitchCase=\"'success'\" svgIcon=\"gio:chat-bubble-check\"></mat-icon>\n </div>\n </ng-template>\n <div class=\"banner__wrapper__head\">\n <div class=\"banner__wrapper__title\" [class.collapsible]=\"collapsible\" (click)=\"toggleCollapse()\">\n <ng-content></ng-content>\n <div *ngIf=\"collapsible\" class=\"banner__wrapper__title__collapse\">\n <button type=\"button\" mat-icon-button aria-label=\"Collapse\">\n <mat-icon [class.collapse-open]=\"collapse\" [class.collapse-close]=\"!collapse\" svgIcon=\"gio:nav-arrow-down\"></mat-icon>\n </button>\n </div>\n </div>\n <div #body class=\"banner__wrapper__body\" [class.hide]=\"!body.children.length || (collapsible && !collapse)\">\n <ng-content select=\"[gioBannerBody]\"></ng-content>\n </div>\n </div>\n <div #action class=\"banner__wrapper__action\" [class.hide]=\"!action.children.length\">\n <ng-content select=\"[gioBannerAction]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;margin:8px 0}.banner{display:flex;flex-direction:column;align-items:stretch;padding:12px 16px;border-radius:8px;background-color:#fff}.banner.error{border:3px solid #ec4899;color:#2c0015}.banner.error .banner__wrapper__icon .mat-icon{color:#ec4899}.banner.error ::ng-deep a{color:inherit}.banner.info{border:3px solid #009999;color:#001f1f}.banner.info .banner__wrapper__icon .mat-icon{color:#099}.banner.info ::ng-deep a{color:inherit}.banner.success{border:3px solid #0de598;color:#002c1c}.banner.success .banner__wrapper__icon .mat-icon{color:#0de598}.banner.success ::ng-deep a{color:inherit}.banner.warning{border:3px solid #fe733f;color:#2c0c01}.banner.warning .banner__wrapper__icon .mat-icon{color:#fe733f}.banner.warning ::ng-deep a{color:inherit}.banner__wrapper{position:relative;display:flex;align-items:flex-start;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper__icon{display:flex;align-self:flex-start;margin-right:16px}.banner__wrapper__head{display:flex;flex:1 1 auto;flex-direction:column;line-height:normal;align-items:flex-start}.banner__wrapper__title{display:flex;flex:1;align-items:center;padding:4px 0}.banner__wrapper__title.collapsible{cursor:pointer}.banner__wrapper__title__collapse{display:flex;height:14px;flex:0 0 auto;align-items:center}.banner__wrapper__title__collapse .collapse-open{transform:rotate(180deg);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__title__collapse .collapse-close{transform:rotate(0);transition:transform 225ms cubic-bezier(.4,0,.2,1)}.banner__wrapper__action{align-self:flex-start;padding-left:16px}.banner__wrapper__body{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.banner__wrapper .hide{display:none}\n"] }]
117
117
  }] });
118
118
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWJhbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1iYW5uZXIvZ2lvLWJhbm5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1iYW5uZXIvZ2lvLWJhbm5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTNUQsTUFBTSxPQUFPLGtCQUFrQjtJQUwvQjtRQU9TLFNBQUksR0FBbUIsTUFBTSxDQUFDO1FBTTlCLGdCQUFXLEdBQWEsS0FBSyxDQUFDO1FBRTlCLGFBQVEsR0FBRyxLQUFLLENBQUM7S0FRekI7SUFOUSxjQUFjO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdEIsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUNqQyxDQUFDOzhHQWpCVSxrQkFBa0I7a0dBQWxCLGtCQUFrQixzSEN4Qi9CLGc1RUFzREE7OzJGRDlCYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsWUFBWTs4QkFNZixJQUFJO3NCQURWLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQUlDLFdBQVc7c0JBRGpCLEtBQUs7O0FBZ0JSLE1BQU0sT0FBTyxzQkFBc0I7OEdBQXRCLHNCQUFzQjtrR0FBdEIsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7aUJBQzVCOztBQU1ELE1BQU0sT0FBTyx3QkFBd0I7OEdBQXhCLHdCQUF3QjtrR0FBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQUhwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7aUJBQzlCOztBQVFELE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxrQkFBa0I7SUFML0Q7O1FBTVMsU0FBSSxHQUFHLE9BQXlCLENBQUM7UUFDakMsU0FBSSxHQUFHLHVCQUF1QixDQUFDO0tBQ3ZDOzhHQUhZLHVCQUF1QjtrR0FBdkIsdUJBQXVCLCtFQzNEcEMsZzVFQXNEQTs7MkZES2EsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQjs7QUFjOUIsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGtCQUFrQjtJQUw5RDs7UUFNUyxTQUFJLEdBQUcsTUFBd0IsQ0FBQztRQUNoQyxTQUFJLEdBQUcsZ0JBQWdCLENBQUM7S0FDaEM7OEdBSFksc0JBQXNCO2tHQUF0QixzQkFBc0IsOEVDckVuQyxnNUVBc0RBOzsyRkRlYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsaUJBQWlCOztBQWM3QixNQUFNLE9BQU8seUJBQTBCLFNBQVEsa0JBQWtCO0lBTGpFOztRQU1TLFNBQUksR0FBRyxTQUEyQixDQUFDO1FBQ25DLFNBQUksR0FBRyx1QkFBdUIsQ0FBQztLQUN2Qzs4R0FIWSx5QkFBeUI7a0dBQXpCLHlCQUF5QixpRkMvRXRDLGc1RUFzREE7OzJGRHlCYSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0Usb0JBQW9COztBQWNoQyxNQUFNLE9BQU8seUJBQTBCLFNBQVEsa0JBQWtCO0lBTGpFOztRQU1TLFNBQUksR0FBRyxTQUEyQixDQUFDO1FBQ25DLFNBQUksR0FBRyx5QkFBeUIsQ0FBQztLQUN6Qzs4R0FIWSx5QkFBeUI7a0dBQXpCLHlCQUF5QixpRkN6RnRDLGc1RUFzREE7OzJGRG1DYSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0Usb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IENvbXBvbmVudCwgRGlyZWN0aXZlLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgdHlwZSBHaW9CYW5uZXJUeXBlcyA9ICdlcnJvcicgfCAnaW5mbycgfCAnc3VjY2VzcycgfCAnd2FybmluZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dpby1iYW5uZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2lvLWJhbm5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dpby1iYW5uZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgR2lvQmFubmVyQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgcHVibGljIHR5cGU6IEdpb0Jhbm5lclR5cGVzID0gJ2luZm8nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpY29uPzogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb2xsYXBzaWJsZT86IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgY29sbGFwc2UgPSBmYWxzZTtcblxuICBwdWJsaWMgdG9nZ2xlQ29sbGFwc2UoKSB7XG4gICAgaWYgKCF0aGlzLmNvbGxhcHNpYmxlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY29sbGFwc2UgPSAhdGhpcy5jb2xsYXBzZTtcbiAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZ2lvQmFubmVyQm9keV0nLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9CYW5uZXJCb2R5RGlyZWN0aXZlIHt9XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tnaW9CYW5uZXJBY3Rpb25dJyxcbn0pXG5leHBvcnQgY2xhc3MgR2lvQmFubmVyQWN0aW9uRGlyZWN0aXZlIHt9XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dpby1iYW5uZXItZXJyb3InLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2lvLWJhbm5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dpby1iYW5uZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgR2lvQmFubmVyRXJyb3JDb21wb25lbnQgZXh0ZW5kcyBHaW9CYW5uZXJDb21wb25lbnQge1xuICBwdWJsaWMgdHlwZSA9ICdlcnJvcicgYXMgR2lvQmFubmVyVHlwZXM7XG4gIHB1YmxpYyBpY29uID0gJ2dpbzpjaGF0LWJ1YmJsZS1lcnJvcic7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dpby1iYW5uZXItaW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnLi9naW8tYmFubmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ2lvLWJhbm5lci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9CYW5uZXJJbmZvQ29tcG9uZW50IGV4dGVuZHMgR2lvQmFubmVyQ29tcG9uZW50IHtcbiAgcHVibGljIHR5cGUgPSAnaW5mbycgYXMgR2lvQmFubmVyVHlwZXM7XG4gIHB1YmxpYyBpY29uID0gJ2dpbzpjaGF0LWxpbmVzJztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ2lvLWJhbm5lci1zdWNjZXNzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dpby1iYW5uZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9naW8tYmFubmVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEdpb0Jhbm5lclN1Y2Nlc3NDb21wb25lbnQgZXh0ZW5kcyBHaW9CYW5uZXJDb21wb25lbnQge1xuICBwdWJsaWMgdHlwZSA9ICdzdWNjZXNzJyBhcyBHaW9CYW5uZXJUeXBlcztcbiAgcHVibGljIGljb24gPSAnZ2lvOmNoYXQtYnViYmxlLWNoZWNrJztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ2lvLWJhbm5lci13YXJuaW5nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dpby1iYW5uZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9naW8tYmFubmVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEdpb0Jhbm5lcldhcm5pbmdDb21wb25lbnQgZXh0ZW5kcyBHaW9CYW5uZXJDb21wb25lbnQge1xuICBwdWJsaWMgdHlwZSA9ICd3YXJuaW5nJyBhcyBHaW9CYW5uZXJUeXBlcztcbiAgcHVibGljIGljb24gPSAnZ2lvOmNoYXQtYnViYmxlLXdhcm5pbmcnO1xufVxuIiwiPCEtLVxuXG4gICAgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG5cbiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuLS0+XG48ZGl2XG4gIGNsYXNzPVwiYmFubmVyXCJcbiAgW2NsYXNzLmluZm9dPVwidHlwZSA9PT0gJ2luZm8nXCJcbiAgW2NsYXNzLmVycm9yXT1cInR5cGUgPT09ICdlcnJvcidcIlxuICBbY2xhc3Mud2FybmluZ109XCJ0eXBlID09PSAnd2FybmluZydcIlxuICBbY2xhc3Muc3VjY2Vzc109XCJ0eXBlID09PSAnc3VjY2VzcydcIlxuPlxuICA8ZGl2IGNsYXNzPVwiYmFubmVyX193cmFwcGVyXCI+XG4gICAgPGRpdiAqbmdJZj1cImljb247IGVsc2UgZGVmYXVsdFR5cGVJY29uXCIgY2xhc3M9XCJiYW5uZXJfX3dyYXBwZXJfX2ljb25cIj5cbiAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgICA8L2Rpdj5cbiAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRUeXBlSWNvbj5cbiAgICAgIDxkaXYgY2xhc3M9XCJiYW5uZXJfX3dyYXBwZXJfX2ljb25cIiBbbmdTd2l0Y2hdPVwidHlwZVwiPlxuICAgICAgICA8bWF0LWljb24gKm5nU3dpdGNoQ2FzZT1cIidpbmZvJ1wiIHN2Z0ljb249XCJnaW86Y2hhdC1saW5lc1wiPjwvbWF0LWljb24+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdTd2l0Y2hDYXNlPVwiJ2Vycm9yJ1wiIHN2Z0ljb249XCJnaW86Y2hhdC1idWJibGUtZXJyb3JcIj48L21hdC1pY29uPlxuICAgICAgICA8bWF0LWljb24gKm5nU3dpdGNoQ2FzZT1cIid3YXJuaW5nJ1wiIHN2Z0ljb249XCJnaW86Y2hhdC1idWJibGUtd2FybmluZ1wiPjwvbWF0LWljb24+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdTd2l0Y2hDYXNlPVwiJ3N1Y2Nlc3MnXCIgc3ZnSWNvbj1cImdpbzpjaGF0LWJ1YmJsZS1jaGVja1wiPjwvbWF0LWljb24+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJiYW5uZXJfX3dyYXBwZXJfX2hlYWRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJiYW5uZXJfX3dyYXBwZXJfX3RpdGxlXCIgW2NsYXNzLmNvbGxhcHNpYmxlXT1cImNvbGxhcHNpYmxlXCIgKGNsaWNrKT1cInRvZ2dsZUNvbGxhcHNlKClcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY29sbGFwc2libGVcIiBjbGFzcz1cImJhbm5lcl9fd3JhcHBlcl9fdGl0bGVfX2NvbGxhcHNlXCI+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJDb2xsYXBzZVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uIFtjbGFzcy5jb2xsYXBzZS1vcGVuXT1cImNvbGxhcHNlXCIgW2NsYXNzLmNvbGxhcHNlLWNsb3NlXT1cIiFjb2xsYXBzZVwiIHN2Z0ljb249XCJnaW86bmF2LWFycm93LWRvd25cIj48L21hdC1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAjYm9keSBjbGFzcz1cImJhbm5lcl9fd3JhcHBlcl9fYm9keVwiIFtjbGFzcy5oaWRlXT1cIiFib2R5LmNoaWxkcmVuLmxlbmd0aCB8fCAoY29sbGFwc2libGUgJiYgIWNvbGxhcHNlKVwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZ2lvQmFubmVyQm9keV1cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICNhY3Rpb24gY2xhc3M9XCJiYW5uZXJfX3dyYXBwZXJfX2FjdGlvblwiIFtjbGFzcy5oaWRlXT1cIiFhY3Rpb24uY2hpbGRyZW4ubGVuZ3RoXCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZ2lvQmFubmVyQWN0aW9uXVwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -95,6 +95,7 @@ export class GioFormHeadersComponent {
95
95
  keyName: 'key',
96
96
  valueName: 'value',
97
97
  };
98
+ this.autocompleteDisabled = false;
98
99
  this.headersFormArray = new UntypedFormArray([
99
100
  new UntypedFormGroup({
100
101
  key: new UntypedFormControl('', Validators.pattern('^\\S*$')),
@@ -230,7 +231,7 @@ export class GioFormHeadersComponent {
230
231
  return HEADER_NAMES.filter(option => option.toLowerCase().includes(filterValue));
231
232
  }
232
233
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioFormHeadersComponent, deps: [{ token: i1.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
233
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioFormHeadersComponent, selector: "gio-form-headers", inputs: { headerFieldMapper: "headerFieldMapper" }, host: { properties: { "class.disabled": "this.disabled" } }, providers: [
234
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioFormHeadersComponent, selector: "gio-form-headers", inputs: { headerFieldMapper: "headerFieldMapper", autocompleteDisabled: "autocompleteDisabled" }, host: { properties: { "class.disabled": "this.disabled" } }, providers: [
234
235
  {
235
236
  provide: NG_VALUE_ACCESSOR,
236
237
  useExisting: forwardRef(() => GioFormHeadersComponent),
@@ -241,7 +242,7 @@ export class GioFormHeadersComponent {
241
242
  useExisting: forwardRef(() => GioFormHeadersComponent),
242
243
  multi: true,
243
244
  },
244
- ], ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"label\"><ng-content select=\"gio-form-headers-label\"></ng-content></div>\n<table class=\"gio-form-headers__table gio-table-light\" [class.disabled]=\"disabled\" [formGroup]=\"mainForm\">\n <thead>\n <tr>\n <th>KEY</th>\n <th>VALUE</th>\n </tr>\n </thead>\n <tbody formArrayName=\"headers\">\n <tr\n *ngFor=\"let control of headersFormArray.controls; index as headerIndex\"\n class=\"gio-form-headers__table__header-row\"\n [formGroupName]=\"headerIndex\"\n >\n <td class=\"gio-form-headers__table__header-row__td-key\">\n <div class=\"gio-form-headers__table__header-row__td-key__field\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </div>\n <mat-error *ngIf=\"control.get('key')?.hasError('pattern')\">\n Header name must not contain spaces. (RegExp: {{ control.get('key')?.getError('pattern')?.requiredPattern }})\n </mat-error>\n <mat-autocomplete #headerNamesAutocomplete=\"matAutocomplete\">\n <mat-option *ngFor=\"let headerName of getFilteredHeaderNames(headerIndex, control.value) | async\" [value]=\"headerName\">{{\n headerName\n }}</mat-option>\n </mat-autocomplete>\n </td>\n <td class=\"gio-form-headers__table__header-row__td-value\">\n <div class=\"gio-form-headers__table__header-row__td-value__field\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </div>\n <button\n class=\"gio-form-headers__table__header-row__td-value__button\"\n *ngIf=\"headersFormArray.controls.length - 1 !== headerIndex\"\n mat-icon-button\n aria-label=\"Delete\"\n (click)=\"onDeleteHeader(headerIndex)\"\n >\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </button>\n </td>\n </tr>\n </tbody>\n</table>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;overflow:hidden}.label{font-size:12px;font-weight:400;line-height:16px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;padding-left:10px;color:#7a7b80}.label:empty{display:none}.gio-form-headers__table{width:100%}.gio-form-headers__table__header-row__td-key,.gio-form-headers__table__header-row__td-value{position:relative;width:50%}.gio-form-headers__table__header-row__td-key__field,.gio-form-headers__table__header-row__td-value__field{display:flex;overflow:hidden;width:100%;min-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field textarea,.gio-form-headers__table__header-row__td-value__field textarea{overflow:auto;width:100%;height:16px;padding:0;border:none;background:transparent;box-shadow:none;outline:none;resize:none;font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-form-headers__table__header-row__td-key__field:focus-within,.gio-form-headers__table__header-row__td-value__field:focus-within{z-index:100;height:auto;background-color:#fff}.gio-form-headers__table__header-row__td-key__field:focus-within *,.gio-form-headers__table__header-row__td-value__field:focus-within *{max-height:none}.gio-form-headers__table__header-row__td-key__button,.gio-form-headers__table__header-row__td-value__button{position:absolute;top:3px;right:3px;display:none}.gio-form-headers__table__header-row__td-remove{width:32px;height:32px;padding:0}.gio-form-headers__table__header-row:hover .gio-form-headers__table__header-row__td-value__button{z-index:110;display:block;background-color:#fff;opacity:.9}:host(.disabled) .label{color:#d3d5dc}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i5.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i6.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i9.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i10.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i9.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
245
+ ], ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"label\"><ng-content select=\"gio-form-headers-label\"></ng-content></div>\n<table class=\"gio-form-headers__table gio-table-light\" [class.disabled]=\"disabled\" [formGroup]=\"mainForm\">\n <thead>\n <tr>\n <th>KEY</th>\n <th>VALUE</th>\n </tr>\n </thead>\n <tbody formArrayName=\"headers\">\n <tr\n *ngFor=\"let control of headersFormArray.controls; index as headerIndex\"\n class=\"gio-form-headers__table__header-row\"\n [formGroupName]=\"headerIndex\"\n >\n <td class=\"gio-form-headers__table__header-row__td-key\">\n <div class=\"gio-form-headers__table__header-row__td-key__field\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n [matAutocompleteDisabled]=\"autocompleteDisabled\"\n ></textarea>\n </div>\n <mat-error *ngIf=\"control.get('key')?.hasError('pattern')\">\n Header name must not contain spaces. (RegExp: {{ control.get('key')?.getError('pattern')?.requiredPattern }})\n </mat-error>\n <mat-autocomplete #headerNamesAutocomplete=\"matAutocomplete\">\n <mat-option *ngFor=\"let headerName of getFilteredHeaderNames(headerIndex, control.value) | async\" [value]=\"headerName\">{{\n headerName\n }}</mat-option>\n </mat-autocomplete>\n </td>\n <td class=\"gio-form-headers__table__header-row__td-value\">\n <div class=\"gio-form-headers__table__header-row__td-value__field\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </div>\n <button\n class=\"gio-form-headers__table__header-row__td-value__button\"\n *ngIf=\"headersFormArray.controls.length - 1 !== headerIndex\"\n mat-icon-button\n aria-label=\"Delete\"\n (click)=\"onDeleteHeader(headerIndex)\"\n >\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </button>\n </td>\n </tr>\n </tbody>\n</table>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;overflow:hidden}.label{font-size:12px;font-weight:400;line-height:16px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;padding-left:10px;color:#7a7b80}.label:empty{display:none}.gio-form-headers__table{width:100%}.gio-form-headers__table__header-row__td-key,.gio-form-headers__table__header-row__td-value{position:relative;width:50%}.gio-form-headers__table__header-row__td-key__field,.gio-form-headers__table__header-row__td-value__field{display:flex;overflow:hidden;width:100%;min-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field textarea,.gio-form-headers__table__header-row__td-value__field textarea{overflow:auto;width:100%;height:16px;padding:0;border:none;background:transparent;box-shadow:none;outline:none;resize:none;font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-form-headers__table__header-row__td-key__field:focus-within,.gio-form-headers__table__header-row__td-value__field:focus-within{z-index:100;height:auto;background-color:#fff}.gio-form-headers__table__header-row__td-key__field:focus-within *,.gio-form-headers__table__header-row__td-value__field:focus-within *{max-height:none}.gio-form-headers__table__header-row__td-key__button,.gio-form-headers__table__header-row__td-value__button{position:absolute;top:3px;right:3px;display:none}.gio-form-headers__table__header-row__td-remove{width:32px;height:32px;padding:0}.gio-form-headers__table__header-row:hover .gio-form-headers__table__header-row__td-value__button{z-index:110;display:block;background-color:#fff;opacity:.9}:host(.disabled) .label{color:#d3d5dc}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i5.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i6.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i9.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i10.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i9.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
245
246
  }
246
247
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioFormHeadersComponent, decorators: [{
247
248
  type: Component,
@@ -256,9 +257,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
256
257
  useExisting: forwardRef(() => GioFormHeadersComponent),
257
258
  multi: true,
258
259
  },
259
- ], template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"label\"><ng-content select=\"gio-form-headers-label\"></ng-content></div>\n<table class=\"gio-form-headers__table gio-table-light\" [class.disabled]=\"disabled\" [formGroup]=\"mainForm\">\n <thead>\n <tr>\n <th>KEY</th>\n <th>VALUE</th>\n </tr>\n </thead>\n <tbody formArrayName=\"headers\">\n <tr\n *ngFor=\"let control of headersFormArray.controls; index as headerIndex\"\n class=\"gio-form-headers__table__header-row\"\n [formGroupName]=\"headerIndex\"\n >\n <td class=\"gio-form-headers__table__header-row__td-key\">\n <div class=\"gio-form-headers__table__header-row__td-key__field\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </div>\n <mat-error *ngIf=\"control.get('key')?.hasError('pattern')\">\n Header name must not contain spaces. (RegExp: {{ control.get('key')?.getError('pattern')?.requiredPattern }})\n </mat-error>\n <mat-autocomplete #headerNamesAutocomplete=\"matAutocomplete\">\n <mat-option *ngFor=\"let headerName of getFilteredHeaderNames(headerIndex, control.value) | async\" [value]=\"headerName\">{{\n headerName\n }}</mat-option>\n </mat-autocomplete>\n </td>\n <td class=\"gio-form-headers__table__header-row__td-value\">\n <div class=\"gio-form-headers__table__header-row__td-value__field\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </div>\n <button\n class=\"gio-form-headers__table__header-row__td-value__button\"\n *ngIf=\"headersFormArray.controls.length - 1 !== headerIndex\"\n mat-icon-button\n aria-label=\"Delete\"\n (click)=\"onDeleteHeader(headerIndex)\"\n >\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </button>\n </td>\n </tr>\n </tbody>\n</table>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;overflow:hidden}.label{font-size:12px;font-weight:400;line-height:16px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;padding-left:10px;color:#7a7b80}.label:empty{display:none}.gio-form-headers__table{width:100%}.gio-form-headers__table__header-row__td-key,.gio-form-headers__table__header-row__td-value{position:relative;width:50%}.gio-form-headers__table__header-row__td-key__field,.gio-form-headers__table__header-row__td-value__field{display:flex;overflow:hidden;width:100%;min-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field textarea,.gio-form-headers__table__header-row__td-value__field textarea{overflow:auto;width:100%;height:16px;padding:0;border:none;background:transparent;box-shadow:none;outline:none;resize:none;font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-form-headers__table__header-row__td-key__field:focus-within,.gio-form-headers__table__header-row__td-value__field:focus-within{z-index:100;height:auto;background-color:#fff}.gio-form-headers__table__header-row__td-key__field:focus-within *,.gio-form-headers__table__header-row__td-value__field:focus-within *{max-height:none}.gio-form-headers__table__header-row__td-key__button,.gio-form-headers__table__header-row__td-value__button{position:absolute;top:3px;right:3px;display:none}.gio-form-headers__table__header-row__td-remove{width:32px;height:32px;padding:0}.gio-form-headers__table__header-row:hover .gio-form-headers__table__header-row__td-value__button{z-index:110;display:block;background-color:#fff;opacity:.9}:host(.disabled) .label{color:#d3d5dc}\n"] }]
260
+ ], template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"label\"><ng-content select=\"gio-form-headers-label\"></ng-content></div>\n<table class=\"gio-form-headers__table gio-table-light\" [class.disabled]=\"disabled\" [formGroup]=\"mainForm\">\n <thead>\n <tr>\n <th>KEY</th>\n <th>VALUE</th>\n </tr>\n </thead>\n <tbody formArrayName=\"headers\">\n <tr\n *ngFor=\"let control of headersFormArray.controls; index as headerIndex\"\n class=\"gio-form-headers__table__header-row\"\n [formGroupName]=\"headerIndex\"\n >\n <td class=\"gio-form-headers__table__header-row__td-key\">\n <div class=\"gio-form-headers__table__header-row__td-key__field\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n [matAutocompleteDisabled]=\"autocompleteDisabled\"\n ></textarea>\n </div>\n <mat-error *ngIf=\"control.get('key')?.hasError('pattern')\">\n Header name must not contain spaces. (RegExp: {{ control.get('key')?.getError('pattern')?.requiredPattern }})\n </mat-error>\n <mat-autocomplete #headerNamesAutocomplete=\"matAutocomplete\">\n <mat-option *ngFor=\"let headerName of getFilteredHeaderNames(headerIndex, control.value) | async\" [value]=\"headerName\">{{\n headerName\n }}</mat-option>\n </mat-autocomplete>\n </td>\n <td class=\"gio-form-headers__table__header-row__td-value\">\n <div class=\"gio-form-headers__table__header-row__td-value__field\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </div>\n <button\n class=\"gio-form-headers__table__header-row__td-value__button\"\n *ngIf=\"headersFormArray.controls.length - 1 !== headerIndex\"\n mat-icon-button\n aria-label=\"Delete\"\n (click)=\"onDeleteHeader(headerIndex)\"\n >\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </button>\n </td>\n </tr>\n </tbody>\n</table>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block;overflow:hidden}.label{font-size:12px;font-weight:400;line-height:16px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;padding-left:10px;color:#7a7b80}.label:empty{display:none}.gio-form-headers__table{width:100%}.gio-form-headers__table__header-row__td-key,.gio-form-headers__table__header-row__td-value{position:relative;width:50%}.gio-form-headers__table__header-row__td-key__field,.gio-form-headers__table__header-row__td-value__field{display:flex;overflow:hidden;width:100%;min-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field textarea,.gio-form-headers__table__header-row__td-value__field textarea{overflow:auto;width:100%;height:16px;padding:0;border:none;background:transparent;box-shadow:none;outline:none;resize:none;font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-form-headers__table__header-row__td-key__field:focus-within,.gio-form-headers__table__header-row__td-value__field:focus-within{z-index:100;height:auto;background-color:#fff}.gio-form-headers__table__header-row__td-key__field:focus-within *,.gio-form-headers__table__header-row__td-value__field:focus-within *{max-height:none}.gio-form-headers__table__header-row__td-key__button,.gio-form-headers__table__header-row__td-value__button{position:absolute;top:3px;right:3px;display:none}.gio-form-headers__table__header-row__td-remove{width:32px;height:32px;padding:0}.gio-form-headers__table__header-row:hover .gio-form-headers__table__header-row__td-value__button{z-index:110;display:block;background-color:#fff;opacity:.9}:host(.disabled) .label{color:#d3d5dc}\n"] }]
260
261
  }], ctorParameters: () => [{ type: i1.FocusMonitor }, { type: i0.ElementRef }], propDecorators: { headerFieldMapper: [{
261
262
  type: Input
263
+ }], autocompleteDisabled: [{
264
+ type: Input
262
265
  }], disabled: [{
263
266
  type: HostBinding,
264
267
  args: ['class.disabled']
@@ -270,4 +273,4 @@ const removeLastEmptyHeader = (headers) => {
270
273
  }
271
274
  return headers;
272
275
  };
273
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0taGVhZGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWhlYWRlcnMvZ2lvLWZvcm0taGVhZGVycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWhlYWRlcnMvZ2lvLWZvcm0taGVhZGVycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQkEsT0FBTyxFQUFFLFNBQVMsRUFBYyxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBR0wsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixnQkFBZ0IsRUFDaEIsYUFBYSxFQUNiLGlCQUFpQixFQUdqQixVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7QUFTdEMsTUFBTSxZQUFZLEdBQUc7SUFDbkIsUUFBUTtJQUNSLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLGVBQWU7SUFDZixrQ0FBa0M7SUFDbEMsOEJBQThCO0lBQzlCLDhCQUE4QjtJQUM5Qiw2QkFBNkI7SUFDN0IsK0JBQStCO0lBQy9CLHdCQUF3QjtJQUN4QixnQ0FBZ0M7SUFDaEMsK0JBQStCO0lBQy9CLEtBQUs7SUFDTCxPQUFPO0lBQ1AsZUFBZTtJQUNmLGVBQWU7SUFDZixZQUFZO0lBQ1oscUJBQXFCO0lB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T0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUUvQyxJQUFJLFVBQVUsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN2RSxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgRm9jdXNNb25pdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RDb250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgVW50eXBlZEZvcm1BcnJheSxcbiAgVW50eXBlZEZvcm1Db250cm9sLFxuICBVbnR5cGVkRm9ybUdyb3VwLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yLFxuICBWYWxpZGF0b3JzLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBkcm9wUmlnaHQsIGlzRW1wdHkgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGgsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB0eXBlIEhlYWRlciA9IHsga2V5OiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfTtcblxuZXhwb3J0IHR5cGUgRm9ybUhlYWRlckZpZWxkTWFwcGVyID0ge1xuICBrZXlOYW1lOiBzdHJpbmc7XG4gIHZhbHVlTmFtZTogc3RyaW5nO1xufTtcblxuY29uc3QgSEVBREVSX05BTUVTID0gW1xuICAnQWNjZXB0JyxcbiAgJ0FjY2VwdC1DaGFyc2V0JyxcbiAgJ0FjY2VwdC1FbmNvZGluZycsXG4gICdBY2NlcHQtTGFuZ3VhZ2UnLFxuICAnQWNjZXB0LVJhbmdlcycsXG4gICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1DcmVkZW50aWFscycsXG4gICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU1ldGhvZHMnLFxuICAnQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luJyxcbiAgJ0FjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLU1heC1BZ2UnLFxuICAnQWNjZXNzLUNvbnRyb2wtUmVxdWVzdC1IZWFkZXJzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLVJlcXVlc3QtTWV0aG9kJyxcbiAgJ0FnZScsXG4gICdBbGxvdycsXG4gICdBdXRob3JpemF0aW9uJyxcbiAgJ0NhY2hlLUNvbnRyb2wnLFxuICAnQ29ubmVjdGlvbicsXG4gICdDb250ZW50LURpc3Bvc2l0aW9uJyxcbiAgJ0NvbnRlbnQtRW5jb2RpbmcnLFxuICAnQ29udGVudC1JRCcsXG4gICdDb250ZW50LUxhbmd1YWdlJyxcbiAgJ0NvbnRlbnQtTGVuZ3RoJyxcbiAgJ0NvbnRlbnQtTG9jYXRpb24nLFxuICAnQ29udGVudC1NRDUnLFxuICAnQ29udGVudC1SYW5nZScsXG4gICdDb250ZW50LVR5cGUnLFxuICAnQ29va2llJyxcbiAgJ0RhdGUnLFxuICAnRVRhZycsXG4gICdFeHBpcmVzJyxcbiAgJ0V4cGVjdCcsXG4gICdGb3J3YXJkZWQnLFxuICAnRnJvbScsXG4gICdIb3N0JyxcbiAgJ0lmLU1hdGNoJyxcbiAgJ0lmLU1vZGlmaWVkLVNpbmNlJyxcbiAgJ0lmLU5vbmUtTWF0Y2gnLFxuICAnSWYtVW5tb2RpZmllZC1TaW5jZScsXG4gICdLZWVwLUFsaXZlJyxcbiAgJ0xhc3QtTW9kaWZpZWQnLFxuICAnTG9jYXRpb24nLFxuICAnTGluaycsXG4gICdNYXgtRm9yd2FyZHMnLFxuICAnTUlNRS1WZXJzaW9uJyxcbiAgJ09yaWdpbicsXG4gICdQcmFnbWEnLFxuICAnUHJveHktQXV0aGVudGljYXRlJyxcbiAgJ1Byb3h5LUF1dGhvcml6YXRpb24nLFxuICAnUHJveHktQ29ubmVjdGlvbicsXG4gICdSYW5nZScsXG4gICdSZWZlcmVyJyxcbiAgJ1JldHJ5LUFmdGVyJyxcbiAgJ1NlcnZlcicsXG4gICdTZXQtQ29va2llJyxcbiAgJ1NldC1Db29raWUyJyxcbiAgJ1RFJyxcbiAgJ1RyYWlsZXInLFxuICAnVHJhbnNmZXItRW5jb2RpbmcnLFxuICAnVXBncmFkZScsXG4gICdVc2VyLUFnZW50JyxcbiAgJ1ZhcnknLFxuICAnVmlhJyxcbiAgJ1dhcm5pbmcnLFxuICAnV1dXLUF1dGhlbnRpY2F0ZScsXG4gICdYLUZvcndhcmRlZC1Gb3InLFxuICAnWC1Gb3J3YXJkZWQtUHJvdG8nLFxuICAnWC1Gb3J3YXJkZWQtU2VydmVyJyxcbiAgJ1gtRm9yd2FyZGVkLUhvc3QnLFxuICAnWC1Gb3J3YXJkZWQtUG9ydCcsXG4gICdYLUZvcndhcmRlZC1QcmVmaXgnLFxuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ2lvLWZvcm0taGVhZGVycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9naW8tZm9ybS1oZWFkZXJzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ2lvLWZvcm0taGVhZGVycy5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEdpb0Zvcm1IZWFkZXJzQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEdpb0Zvcm1IZWFkZXJzQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEdpb0Zvcm1IZWFkZXJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcbiAgQElucHV0KClcbiAgcHVibGljIGhlYWRlckZpZWxkTWFwcGVyOiBGb3JtSGVhZGVyRmllbGRNYXBwZXIgPSB7XG4gICAga2V5TmFtZTogJ2tleScsXG4gICAgdmFsdWVOYW1lOiAndmFsdWUnLFxuICB9O1xuXG4gIHB1YmxpYyBtYWluRm9ybTogVW50eXBlZEZvcm1Hcm91cDtcbiAgcHVibGljIGhlYWRlcnNGb3JtQXJyYXkgPSBuZXcgVW50eXBlZEZvcm1BcnJheShbXG4gICAgbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgICAga2V5OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLnBhdHRlcm4oJ15cXFxcUyokJykpLFxuICAgICAgdmFsdWU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpLFxuICAgIH0pLFxuICBdKTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRpc2FibGVkJylcbiAgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBoZWFkZXJzOiBIZWFkZXJbXSA9IFtdO1xuXG4gIHByaXZhdGUgX29uQ2hhbmdlOiAoX2hlYWRlcnM6IEhlYWRlcltdIHwgbnVsbCkgPT4gdm9pZCA9ICgpID0+ICh7fSk7XG5cbiAgcHJpdmF0ZSBfb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4gKHt9KTtcblxuICBwcml2YXRlIGZpbHRlcmVkSGVhZGVyTmFtZXM6IE9ic2VydmFibGU8c3RyaW5nW10+W10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZtOiBGb2N1c01vbml0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbFJlZjogRWxlbWVudFJlZixcbiAgKSB7XG4gICAgdGhpcy5tYWluRm9ybSA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuaGVhZGVyc0Zvcm1BcnJheSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEZyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+W10gfCBudWxsKTogdm9pZCB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaGVhZGVycyA9IFsuLi4odmFsdWUgPz8gW10pXS5tYXAoKGhlYWRlcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPikgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAga2V5OiBoZWFkZXJbdGhpcy5oZWFkZXJGaWVsZE1hcHBlci5rZXlOYW1lXSxcbiAgICAgICAgdmFsdWU6IGhlYWRlclt0aGlzLmhlYWRlckZpZWxkTWFwcGVyLnZhbHVlTmFtZV0sXG4gICAgICB9O1xuICAgIH0pO1xuICAgIHRoaXMuaW5pdEhlYWRlcnNGb3JtKCk7XG4gIH1cblxuICAvLyBGcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKGhlYWRlcnM6IHVua25vd24pID0+IHZvaWQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5oZWFkZXJGaWVsZE1hcHBlcikge1xuICAgICAgdGhpcy5fb25DaGFuZ2UgPSAoaGVhZGVyczogSGVhZGVyW10gfCBudWxsKSA9PiBmbih0aGlzLnRvSGVhZGVycyhoZWFkZXJzKSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX29uQ2hhbmdlID0gZm47XG4gIH1cblxuICBwcml2YXRlIHRvSGVhZGVycyhoZWFkZXJzOiBIZWFkZXJbXSB8IG51bGwpIHtcbiAgICByZXR1cm4gWy4uLihoZWFkZXJzID8/IFtdKV0ubWFwKGhlYWRlciA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBbdGhpcy5oZWFkZXJGaWVsZE1hcHBlci5rZXlOYW1lXTogaGVhZGVyLmtleSxcbiAgICAgICAgW3RoaXMuaGVhZGVyRmllbGRNYXBwZXIudmFsdWVOYW1lXTogaGVhZGVyLnZhbHVlLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEZyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuX29uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgLy8gRnJvbSBDb250cm9sVmFsdWVBY2Nlc3NvciBpbnRlcmZhY2VcbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChpc0Rpc2FibGVkID09PSB0aGlzLmRpc2FibGVkKSB7XG4gICAgICAvLyBkbyBub3RoaW5nIGlmIHRoZSBkaXNhYmxlZCBzdGF0ZSBpcyBub3QgY2hhbmdlZFxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIGlmIChpc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXkuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICB0aGlzLnJlbW92ZUxhc3RIZWFkZXIoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5oZWFkZXJzRm9ybUFycmF5LmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgdGhpcy5hZGRFbXB0eUhlYWRlcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIFdoZW4gdXNlciBzdGFydCB0byBjb21wbGV0ZSBsYXN0IGhlYWRlciBhZGQgbmV3IGVtcHR5IG9uZSBhIHRoZSBlbmRcbiAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXk/LnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcChoZWFkZXJzID0+IGhlYWRlcnMubGVuZ3RoID4gMCAmJiB0aGlzLl9vbkNoYW5nZShyZW1vdmVMYXN0RW1wdHlIZWFkZXIoaGVhZGVycykpKSxcbiAgICAgICAgdGFwKChoZWFkZXJzOiBIZWFkZXJbXSkgPT4ge1xuICAgICAgICAgIGlmIChoZWFkZXJzLmxlbmd0aCA+IDAgJiYgKGhlYWRlcnNbaGVhZGVycy5sZW5ndGggLSAxXS5rZXkgIT09ICcnIHx8IGhlYWRlcnNbaGVhZGVycy5sZW5ndGggLSAxXS52YWx1ZSAhPT0gJycpKSB7XG4gICAgICAgICAgICB0aGlzLmFkZEVtcHR5SGVhZGVyKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIHRoaXMuZm0ubW9uaXRvcih0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsIHRydWUpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLl9vblRvdWNoZWQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0SGVhZGVyc0Zvcm0oKTogdm9pZCB7XG4gICAgLy8gQ2xlYXIgYWxsIHByZXZpb3VzIGhlYWRlcnNcbiAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXkuY2xlYXIoKTtcblxuICAgIC8vIFBvcHVsYXRlIGhlYWRlcnMgYXJyYXkgZnJvbSBoZWFkZXJzXG4gICAgdGhpcy5oZWFkZXJzLmZvckVhY2goKHsga2V5LCB2YWx1ZSB9LCBoZWFkZXJJbmRleCkgPT4ge1xuICAgICAgdGhpcy5oZWFkZXJzRm9ybUFycmF5LnB1c2goXG4gICAgICAgIG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgICAgICBrZXk6IHRoaXMuaW5pdEtleUZvcm1Db250cm9sKGtleSwgaGVhZGVySW5kZXgpLFxuICAgICAgICAgIHZhbHVlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHsgdmFsdWUsIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkIH0pLFxuICAgICAgICB9KSxcbiAgICAgICAge1xuICAgICAgICAgIGVtaXRFdmVudDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgLy8gYWRkIG9uZSBlbXB0eSBoZWFkZXIgYSB0aGUgZW5kXG4gICAgdGhpcy5hZGRFbXB0eUhlYWRlcigpO1xuICB9XG5cbiAgcHVibGljIGdldEZpbHRlcmVkSGVhZGVyTmFtZXMoaGVhZGVySW5kZXg6IG51bWJlciwgaGVhZGVyOiBIZWFkZXIpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgaWYgKCF0aGlzLmZpbHRlcmVkSGVhZGVyTmFtZXNbaGVhZGVySW5kZXhdKSB7XG4gICAgICByZXR1cm4gdGhpcy5maWx0ZXJlZEhlYWRlck5hbWVzW2hlYWRlckluZGV4XTtcbiAgICB9XG4gICAgaWYgKGhlYWRlci5rZXkgIT0gbnVsbCAmJiBoZWFkZXIua2V5ICE9ICcnKSB7XG4gICAgICB0aGlzLmZpbHRlcmVkSGVhZGVyTmFtZXNbaGVhZGVySW5kZXhdID0gb2YoaGVhZGVyLmtleSkucGlwZShtYXAodmFsdWUgPT4gdGhpcy5fZmlsdGVyKHZhbHVlKSkpO1xuICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyZWRIZWFkZXJOYW1lc1toZWFkZXJJbmRleF07XG4gICAgfVxuICAgIHJldHVybiBvZihIRUFERVJfTkFNRVMpO1xuICB9XG5cbiAgLy8gRnJvbSBWYWxpZGF0b3IgaW50ZXJmYWNlXG4gIHB1YmxpYyB2YWxpZGF0ZShfY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGlmICh0aGlzLmhlYWRlcnNGb3JtQXJyYXkuaW52YWxpZCkge1xuICAgICAgcmV0dXJuIHsgaW52YWxpZDogdHJ1ZSB9O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEtleUZvcm1Db250cm9sKGtleTogc3RyaW5nLCBoZWFkZXJJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgY29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woeyB2YWx1ZToga2V5LCBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCB9LCBWYWxpZGF0b3JzLnBhdHRlcm4oJ15cXFxcUyokJykpO1xuICAgIGNvbnN0IGZpbHRlcmVkS2V5cyA9IGNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICBzdGFydFdpdGgoJycpLFxuICAgICAgbWFwKHZhbHVlID0+IHRoaXMuX2ZpbHRlcih2YWx1ZSkpLFxuICAgICk7XG4gICAgdGhpcy5maWx0ZXJlZEhlYWRlck5hbWVzLnNwbGljZShoZWFkZXJJbmRleCwgMCwgZmlsdGVyZWRLZXlzKTtcbiAgICByZXR1cm4gY29udHJvbDtcbiAgfVxuXG4gIHB1YmxpYyBvbkRlbGV0ZUhlYWRlcihoZWFkZXJJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5fb25Ub3VjaGVkKCk7XG4gICAgdGhpcy5oZWFkZXJzRm9ybUFycmF5LnJlbW92ZUF0KGhlYWRlckluZGV4KTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkRW1wdHlIZWFkZXIoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXkucHVzaChcbiAgICAgIG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgICAga2V5OiB0aGlzLmluaXRLZXlGb3JtQ29udHJvbCgnJywgdGhpcy5oZWFkZXJzRm9ybUFycmF5Lmxlbmd0aCksXG4gICAgICAgIHZhbHVlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnKSxcbiAgICAgIH0pLFxuICAgICAgeyBlbWl0RXZlbnQ6IGZhbHNlIH0sXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlTGFzdEhlYWRlcigpIHtcbiAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXkucmVtb3ZlQXQodGhpcy5oZWFkZXJzRm9ybUFycmF5Lmxlbmd0aCAtIDEsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbHRlcih2YWx1ZTogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGZpbHRlclZhbHVlID0gdmFsdWUudG9Mb3dlckNhc2UoKTtcbiAgICByZXR1cm4gSEVBREVSX05BTUVTLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZmlsdGVyVmFsdWUpKTtcbiAgfVxufVxuXG5jb25zdCByZW1vdmVMYXN0RW1wdHlIZWFkZXIgPSAoaGVhZGVyczogSGVhZGVyW10pID0+IHtcbiAgY29uc3QgbGFzdEhlYWRlciA9IGhlYWRlcnNbaGVhZGVycy5sZW5ndGggLSAxXTtcblxuICBpZiAobGFzdEhlYWRlciAmJiBpc0VtcHR5KGxhc3RIZWFkZXIua2V5KSAmJiBpc0VtcHR5KGxhc3RIZWFkZXIudmFsdWUpKSB7XG4gICAgcmV0dXJuIGRyb3BSaWdodChoZWFkZXJzKTtcbiAgfVxuICByZXR1cm4gaGVhZGVycztcbn07XG4iLCI8IS0tXG5cbiAgICBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4tLT5cbjxkaXYgY2xhc3M9XCJsYWJlbFwiPjxuZy1jb250ZW50IHNlbGVjdD1cImdpby1mb3JtLWhlYWRlcnMtbGFiZWxcIj48L25nLWNvbnRlbnQ+PC9kaXY+XG48dGFibGUgY2xhc3M9XCJnaW8tZm9ybS1oZWFkZXJzX190YWJsZSBnaW8tdGFibGUtbGlnaHRcIiBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbZm9ybUdyb3VwXT1cIm1haW5Gb3JtXCI+XG4gIDx0aGVhZD5cbiAgICA8dHI+XG4gICAgICA8dGg+S0VZPC90aD5cbiAgICAgIDx0aD5WQUxVRTwvdGg+XG4gICAgPC90cj5cbiAgPC90aGVhZD5cbiAgPHRib2R5IGZvcm1BcnJheU5hbWU9XCJoZWFkZXJzXCI+XG4gICAgPHRyXG4gICAgICAqbmdGb3I9XCJsZXQgY29udHJvbCBvZiBoZWFkZXJzRm9ybUFycmF5LmNvbnRyb2xzOyBpbmRleCBhcyBoZWFkZXJJbmRleFwiXG4gICAgICBjbGFzcz1cImdpby1mb3JtLWhlYWRlcnNfX3RhYmxlX19oZWFkZXItcm93XCJcbiAgICAgIFtmb3JtR3JvdXBOYW1lXT1cImhlYWRlckluZGV4XCJcbiAgICA+XG4gICAgICA8dGQgY2xhc3M9XCJnaW8tZm9ybS1oZWFkZXJzX190YWJsZV9faGVhZGVyLXJvd19fdGQta2V5XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnaW8tZm9ybS1oZWFkZXJzX190YWJsZV9faGVhZGVyLXJvd19fdGQta2V5X19maWVsZFwiPlxuICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwia2V5XCJcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIk5hbWUuLi5cIlxuICAgICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxuICAgICAgICAgICAgY2RrQXV0b3NpemVNaW5Sb3dzPVwiMVwiXG4gICAgICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImhlYWRlck5hbWVzQXV0b2NvbXBsZXRlXCJcbiAgICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJjb250cm9sLmdldCgna2V5Jyk/Lmhhc0Vycm9yKCdwYXR0ZXJuJylcIj5cbiAgICAgICAgICBIZWFkZXIgbmFtZSBtdXN0IG5vdCBjb250YWluIHNwYWNlcy4gKFJlZ0V4cDoge3sgY29udHJvbC5nZXQoJ2tleScpPy5nZXRFcnJvcigncGF0dGVybicpPy5yZXF1aXJlZFBhdHRlcm4gfX0pXG4gICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICA8bWF0LWF1dG9jb21wbGV0ZSAjaGVhZGVyTmFtZXNBdXRvY29tcGxldGU9XCJtYXRBdXRvY29tcGxldGVcIj5cbiAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgaGVhZGVyTmFtZSBvZiBnZXRGaWx0ZXJlZEhlYWRlck5hbWVzKGhlYWRlckluZGV4LCBjb250cm9sLnZhbHVlKSB8IGFzeW5jXCIgW3ZhbHVlXT1cImhlYWRlck5hbWVcIj57e1xuICAgICAgICAgICAgaGVhZGVyTmFtZVxuICAgICAgICAgIH19PC9tYXQtb3B0aW9uPlxuICAgICAgICA8L21hdC1hdXRvY29tcGxldGU+XG4gICAgICA8L3RkPlxuICAgICAgPHRkIGNsYXNzPVwiZ2lvLWZvcm0taGVhZGVyc19fdGFibGVfX2hlYWRlci1yb3dfX3RkLXZhbHVlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnaW8tZm9ybS1oZWFkZXJzX190YWJsZV9faGVhZGVyLXJvd19fdGQtdmFsdWVfX2ZpZWxkXCI+XG4gICAgICAgICAgPHRleHRhcmVhIGZvcm1Db250cm9sTmFtZT1cInZhbHVlXCIgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJWYWx1ZS4uLlwiIGNka1RleHRhcmVhQXV0b3NpemUgY2RrQXV0b3NpemVNaW5Sb3dzPVwiMVwiPjwvdGV4dGFyZWE+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJnaW8tZm9ybS1oZWFkZXJzX190YWJsZV9faGVhZGVyLXJvd19fdGQtdmFsdWVfX2J1dHRvblwiXG4gICAgICAgICAgKm5nSWY9XCJoZWFkZXJzRm9ybUFycmF5LmNvbnRyb2xzLmxlbmd0aCAtIDEgIT09IGhlYWRlckluZGV4XCJcbiAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICBhcmlhLWxhYmVsPVwiRGVsZXRlXCJcbiAgICAgICAgICAoY2xpY2spPVwib25EZWxldGVIZWFkZXIoaGVhZGVySW5kZXgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwiZ2lvOmNhbmNlbFwiPjwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICA8L3Rib2R5PlxuPC90YWJsZT5cbiJdfQ==
276
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0taGVhZGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWhlYWRlcnMvZ2lvLWZvcm0taGVhZGVycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWhlYWRlcnMvZ2lvLWZvcm0taGVhZGVycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQkEsT0FBTyxFQUFFLFNBQVMsRUFBYyxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBR0wsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixnQkFBZ0IsRUFDaEIsYUFBYSxFQUNiLGlCQUFpQixFQUdqQixVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7QUFTdEMsTUFBTSxZQUFZLEdBQUc7SUFDbkIsUUFBUTtJQUNSLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLGVBQWU7SUFDZixrQ0FBa0M7SUFDbEMsOEJBQThCO0lBQzlCLDhCQUE4QjtJQUM5Qiw2QkFBNkI7SUFDN0IsK0JBQStCO0lBQy9CLHdCQUF3QjtJQUN4QixnQ0FBZ0M7SUFDaEMsK0JBQStCO0lBQy9CLEtBQUs7SUFDTCxPQUFPO0lBQ1AsZUFBZTtJQUNmLGVBQWU7SUFDZixZQUFZO0lBQ1oscUJBQXFCO0lB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LENBQUMsT0FBaUIsRUFBRSxFQUFFO0lBQ2xELE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBRS9DLElBQUksVUFBVSxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3ZFLE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICBVbnR5cGVkRm9ybUFycmF5LFxuICBVbnR5cGVkRm9ybUNvbnRyb2wsXG4gIFVudHlwZWRGb3JtR3JvdXAsXG4gIE5HX1ZBTElEQVRPUlMsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBWYWxpZGF0aW9uRXJyb3JzLFxuICBWYWxpZGF0b3IsXG4gIFZhbGlkYXRvcnMsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGRyb3BSaWdodCwgaXNFbXB0eSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBtYXAsIHN0YXJ0V2l0aCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IHR5cGUgSGVhZGVyID0geyBrZXk6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9O1xuXG5leHBvcnQgdHlwZSBGb3JtSGVhZGVyRmllbGRNYXBwZXIgPSB7XG4gIGtleU5hbWU6IHN0cmluZztcbiAgdmFsdWVOYW1lOiBzdHJpbmc7XG59O1xuXG5jb25zdCBIRUFERVJfTkFNRVMgPSBbXG4gICdBY2NlcHQnLFxuICAnQWNjZXB0LUNoYXJzZXQnLFxuICAnQWNjZXB0LUVuY29kaW5nJyxcbiAgJ0FjY2VwdC1MYW5ndWFnZScsXG4gICdBY2NlcHQtUmFuZ2VzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LUNyZWRlbnRpYWxzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LUhlYWRlcnMnLFxuICAnQWNjZXNzLUNvbnRyb2wtQWxsb3ctTWV0aG9kcycsXG4gICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4nLFxuICAnQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnMnLFxuICAnQWNjZXNzLUNvbnRyb2wtTWF4LUFnZScsXG4gICdBY2Nlc3MtQ29udHJvbC1SZXF1ZXN0LUhlYWRlcnMnLFxuICAnQWNjZXNzLUNvbnRyb2wtUmVxdWVzdC1NZXRob2QnLFxuICAnQWdlJyxcbiAgJ0FsbG93JyxcbiAgJ0F1dGhvcml6YXRpb24nLFxuICAnQ2FjaGUtQ29udHJvbCcsXG4gICdDb25uZWN0aW9uJyxcbiAgJ0NvbnRlbnQtRGlzcG9zaXRpb24nLFxuICAnQ29udGVudC1FbmNvZGluZycsXG4gICdDb250ZW50LUlEJyxcbiAgJ0NvbnRlbnQtTGFuZ3VhZ2UnLFxuICAnQ29udGVudC1MZW5ndGgnLFxuICAnQ29udGVudC1Mb2NhdGlvbicsXG4gICdDb250ZW50LU1ENScsXG4gICdDb250ZW50LVJhbmdlJyxcbiAgJ0NvbnRlbnQtVHlwZScsXG4gICdDb29raWUnLFxuICAnRGF0ZScsXG4gICdFVGFnJyxcbiAgJ0V4cGlyZXMnLFxuICAnRXhwZWN0JyxcbiAgJ0ZvcndhcmRlZCcsXG4gICdGcm9tJyxcbiAgJ0hvc3QnLFxuICAnSWYtTWF0Y2gnLFxuICAnSWYtTW9kaWZpZWQtU2luY2UnLFxuICAnSWYtTm9uZS1NYXRjaCcsXG4gICdJZi1Vbm1vZGlmaWVkLVNpbmNlJyxcbiAgJ0tlZXAtQWxpdmUnLFxuICAnTGFzdC1Nb2RpZmllZCcsXG4gICdMb2NhdGlvbicsXG4gICdMaW5rJyxcbiAgJ01heC1Gb3J3YXJkcycsXG4gICdNSU1FLVZlcnNpb24nLFxuICAnT3JpZ2luJyxcbiAgJ1ByYWdtYScsXG4gICdQcm94eS1BdXRoZW50aWNhdGUnLFxuICAnUHJveHktQXV0aG9yaXphdGlvbicsXG4gICdQcm94eS1Db25uZWN0aW9uJyxcbiAgJ1JhbmdlJyxcbiAgJ1JlZmVyZXInLFxuICAnUmV0cnktQWZ0ZXInLFxuICAnU2VydmVyJyxcbiAgJ1NldC1Db29raWUnLFxuICAnU2V0LUNvb2tpZTInLFxuICAnVEUnLFxuICAnVHJhaWxlcicsXG4gICdUcmFuc2Zlci1FbmNvZGluZycsXG4gICdVcGdyYWRlJyxcbiAgJ1VzZXItQWdlbnQnLFxuICAnVmFyeScsXG4gICdWaWEnLFxuICAnV2FybmluZycsXG4gICdXV1ctQXV0aGVudGljYXRlJyxcbiAgJ1gtRm9yd2FyZGVkLUZvcicsXG4gICdYLUZvcndhcmRlZC1Qcm90bycsXG4gICdYLUZvcndhcmRlZC1TZXJ2ZXInLFxuICAnWC1Gb3J3YXJkZWQtSG9zdCcsXG4gICdYLUZvcndhcmRlZC1Qb3J0JyxcbiAgJ1gtRm9yd2FyZGVkLVByZWZpeCcsXG5dO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnaW8tZm9ybS1oZWFkZXJzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dpby1mb3JtLWhlYWRlcnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9naW8tZm9ybS1oZWFkZXJzLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gR2lvRm9ybUhlYWRlcnNDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gR2lvRm9ybUhlYWRlcnNDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgR2lvRm9ybUhlYWRlcnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3Ige1xuICBASW5wdXQoKVxuICBwdWJsaWMgaGVhZGVyRmllbGRNYXBwZXI6IEZvcm1IZWFkZXJGaWVsZE1hcHBlciA9IHtcbiAgICBrZXlOYW1lOiAna2V5JyxcbiAgICB2YWx1ZU5hbWU6ICd2YWx1ZScsXG4gIH07XG5cbiAgQElucHV0KClcbiAgcHVibGljIGF1dG9jb21wbGV0ZURpc2FibGVkPzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyBtYWluRm9ybTogVW50eXBlZEZvcm1Hcm91cDtcbiAgcHVibGljIGhlYWRlcnNGb3JtQXJyYXkgPSBuZXcgVW50eXBlZEZvcm1BcnJheShbXG4gICAgbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgICAga2V5OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLnBhdHRlcm4oJ15cXFxcUyokJykpLFxuICAgICAgdmFsdWU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpLFxuICAgIH0pLFxuICBdKTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRpc2FibGVkJylcbiAgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBoZWFkZXJzOiBIZWFkZXJbXSA9IFtdO1xuXG4gIHByaXZhdGUgX29uQ2hhbmdlOiAoX2hlYWRlcnM6IEhlYWRlcltdIHwgbnVsbCkgPT4gdm9pZCA9ICgpID0+ICh7fSk7XG5cbiAgcHJpdmF0ZSBfb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4gKHt9KTtcblxuICBwcml2YXRlIGZpbHRlcmVkSGVhZGVyTmFtZXM6IE9ic2VydmFibGU8c3RyaW5nW10+W10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZtOiBGb2N1c01vbml0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbFJlZjogRWxlbWVudFJlZixcbiAgKSB7XG4gICAgdGhpcy5tYWluRm9ybSA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuaGVhZGVyc0Zvcm1BcnJheSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEZyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+W10gfCBudWxsKTogdm9pZCB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaGVhZGVycyA9IFsuLi4odmFsdWUgPz8gW10pXS5tYXAoKGhlYWRlcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPikgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAga2V5OiBoZWFkZXJbdGhpcy5oZWFkZXJGaWVsZE1hcHBlci5rZXlOYW1lXSxcbiAgICAgICAgdmFsdWU6IGhlYWRlclt0aGlzLmhlYWRlckZpZWxkTWFwcGVyLnZhbHVlTmFtZV0sXG4gICAgICB9O1xuICAgIH0pO1xuICAgIHRoaXMuaW5pdEhlYWRlcnNGb3JtKCk7XG4gIH1cblxuICAvLyBGcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKGhlYWRlcnM6IHVua25vd24pID0+IHZvaWQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5oZWFkZXJGaWVsZE1hcHBlcikge1xuICAgICAgdGhpcy5fb25DaGFuZ2UgPSAoaGVhZGVyczogSGVhZGVyW10gfCBudWxsKSA9PiBmbih0aGlzLnRvSGVhZGVycyhoZWFkZXJzKSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX29uQ2hhbmdlID0gZm47XG4gIH1cblxuICBwcml2YXRlIHRvSGVhZGVycyhoZWFkZXJzOiBIZWFkZXJbXSB8IG51bGwpIHtcbiAgICByZXR1cm4gWy4uLihoZWFkZXJzID8/IFtdKV0ubWFwKGhlYWRlciA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBbdGhpcy5oZWFkZXJGaWVsZE1hcHBlci5rZXlOYW1lXTogaGVhZGVyLmtleSxcbiAgICAgICAgW3RoaXMuaGVhZGVyRmllbGRNYXBwZXIudmFsdWVOYW1lXTogaGVhZGVyLnZhbHVlLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEZyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuX29uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgLy8gRnJvbSBDb250cm9sVmFsdWVBY2Nlc3NvciBpbnRlcmZhY2VcbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChpc0Rpc2FibGVkID09PSB0aGlzLmRpc2FibGVkKSB7XG4gICAgICAvLyBkbyBub3RoaW5nIGlmIHRoZSBkaXNhYmxlZCBzdGF0ZSBpcyBub3QgY2hhbmdlZFxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIGlmIChpc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXkuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICB0aGlzLnJlbW92ZUxhc3RIZWFkZXIoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5oZWFkZXJzRm9ybUFycmF5LmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgdGhpcy5hZGRFbXB0eUhlYWRlcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIFdoZW4gdXNlciBzdGFydCB0byBjb21wbGV0ZSBsYXN0IGhlYWRlciBhZGQgbmV3IGVtcHR5IG9uZSBhIHRoZSBlbmRcbiAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXk/LnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcChoZWFkZXJzID0+IGhlYWRlcnMubGVuZ3RoID4gMCAmJiB0aGlzLl9vbkNoYW5nZShyZW1vdmVMYXN0RW1wdHlIZWFkZXIoaGVhZGVycykpKSxcbiAgICAgICAgdGFwKChoZWFkZXJzOiBIZWFkZXJbXSkgPT4ge1xuICAgICAgICAgIGlmIChoZWFkZXJzLmxlbmd0aCA+IDAgJiYgKGhlYWRlcnNbaGVhZGVycy5sZW5ndGggLSAxXS5rZXkgIT09ICcnIHx8IGhlYWRlcnNbaGVhZGVycy5sZW5ndGggLSAxXS52YWx1ZSAhPT0gJycpKSB7XG4gICAgICAgICAgICB0aGlzLmFkZEVtcHR5SGVhZGVyKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIHRoaXMuZm0ubW9uaXRvcih0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsIHRydWUpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLl9vblRvdWNoZWQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0SGVhZGVyc0Zvcm0oKTogdm9pZCB7XG4gICAgLy8gQ2xlYXIgYWxsIHByZXZpb3VzIGhlYWRlcnNcbiAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXkuY2xlYXIoKTtcblxuICAgIC8vIFBvcHVsYXRlIGhlYWRlcnMgYXJyYXkgZnJvbSBoZWFkZXJzXG4gICAgdGhpcy5oZWFkZXJzLmZvckVhY2goKHsga2V5LCB2YWx1ZSB9LCBoZWFkZXJJbmRleCkgPT4ge1xuICAgICAgdGhpcy5oZWFkZXJzRm9ybUFycmF5LnB1c2goXG4gICAgICAgIG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgICAgICBrZXk6IHRoaXMuaW5pdEtleUZvcm1Db250cm9sKGtleSwgaGVhZGVySW5kZXgpLFxuICAgICAgICAgIHZhbHVlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHsgdmFsdWUsIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkIH0pLFxuICAgICAgICB9KSxcbiAgICAgICAge1xuICAgICAgICAgIGVtaXRFdmVudDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgLy8gYWRkIG9uZSBlbXB0eSBoZWFkZXIgYSB0aGUgZW5kXG4gICAgdGhpcy5hZGRFbXB0eUhlYWRlcigpO1xuICB9XG5cbiAgcHVibGljIGdldEZpbHRlcmVkSGVhZGVyTmFtZXMoaGVhZGVySW5kZXg6IG51bWJlciwgaGVhZGVyOiBIZWFkZXIpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgaWYgKCF0aGlzLmZpbHRlcmVkSGVhZGVyTmFtZXNbaGVhZGVySW5kZXhdKSB7XG4gICAgICByZXR1cm4gdGhpcy5maWx0ZXJlZEhlYWRlck5hbWVzW2hlYWRlckluZGV4XTtcbiAgICB9XG4gICAgaWYgKGhlYWRlci5rZXkgIT0gbnVsbCAmJiBoZWFkZXIua2V5ICE9ICcnKSB7XG4gICAgICB0aGlzLmZpbHRlcmVkSGVhZGVyTmFtZXNbaGVhZGVySW5kZXhdID0gb2YoaGVhZGVyLmtleSkucGlwZShtYXAodmFsdWUgPT4gdGhpcy5fZmlsdGVyKHZhbHVlKSkpO1xuICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyZWRIZWFkZXJOYW1lc1toZWFkZXJJbmRleF07XG4gICAgfVxuICAgIHJldHVybiBvZihIRUFERVJfTkFNRVMpO1xuICB9XG5cbiAgLy8gRnJvbSBWYWxpZGF0b3IgaW50ZXJmYWNlXG4gIHB1YmxpYyB2YWxpZGF0ZShfY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGlmICh0aGlzLmhlYWRlcnNGb3JtQXJyYXkuaW52YWxpZCkge1xuICAgICAgcmV0dXJuIHsgaW52YWxpZDogdHJ1ZSB9O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEtleUZvcm1Db250cm9sKGtleTogc3RyaW5nLCBoZWFkZXJJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgY29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woeyB2YWx1ZToga2V5LCBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCB9LCBWYWxpZGF0b3JzLnBhdHRlcm4oJ15cXFxcUyokJykpO1xuICAgIGNvbnN0IGZpbHRlcmVkS2V5cyA9IGNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICBzdGFydFdpdGgoJycpLFxuICAgICAgbWFwKHZhbHVlID0+IHRoaXMuX2ZpbHRlcih2YWx1ZSkpLFxuICAgICk7XG4gICAgdGhpcy5maWx0ZXJlZEhlYWRlck5hbWVzLnNwbGljZShoZWFkZXJJbmRleCwgMCwgZmlsdGVyZWRLZXlzKTtcbiAgICByZXR1cm4gY29udHJvbDtcbiAgfVxuXG4gIHB1YmxpYyBvbkRlbGV0ZUhlYWRlcihoZWFkZXJJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5fb25Ub3VjaGVkKCk7XG4gICAgdGhpcy5oZWFkZXJzRm9ybUFycmF5LnJlbW92ZUF0KGhlYWRlckluZGV4KTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkRW1wdHlIZWFkZXIoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXkucHVzaChcbiAgICAgIG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgICAga2V5OiB0aGlzLmluaXRLZXlGb3JtQ29udHJvbCgnJywgdGhpcy5oZWFkZXJzRm9ybUFycmF5Lmxlbmd0aCksXG4gICAgICAgIHZhbHVlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnKSxcbiAgICAgIH0pLFxuICAgICAgeyBlbWl0RXZlbnQ6IGZhbHNlIH0sXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlTGFzdEhlYWRlcigpIHtcbiAgICB0aGlzLmhlYWRlcnNGb3JtQXJyYXkucmVtb3ZlQXQodGhpcy5oZWFkZXJzRm9ybUFycmF5Lmxlbmd0aCAtIDEsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbHRlcih2YWx1ZTogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGZpbHRlclZhbHVlID0gdmFsdWUudG9Mb3dlckNhc2UoKTtcbiAgICByZXR1cm4gSEVBREVSX05BTUVTLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZmlsdGVyVmFsdWUpKTtcbiAgfVxufVxuXG5jb25zdCByZW1vdmVMYXN0RW1wdHlIZWFkZXIgPSAoaGVhZGVyczogSGVhZGVyW10pID0+IHtcbiAgY29uc3QgbGFzdEhlYWRlciA9IGhlYWRlcnNbaGVhZGVycy5sZW5ndGggLSAxXTtcblxuICBpZiAobGFzdEhlYWRlciAmJiBpc0VtcHR5KGxhc3RIZWFkZXIua2V5KSAmJiBpc0VtcHR5KGxhc3RIZWFkZXIudmFsdWUpKSB7XG4gICAgcmV0dXJuIGRyb3BSaWdodChoZWFkZXJzKTtcbiAgfVxuICByZXR1cm4gaGVhZGVycztcbn07XG4iLCI8IS0tXG5cbiAgICBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4tLT5cbjxkaXYgY2xhc3M9XCJsYWJlbFwiPjxuZy1jb250ZW50IHNlbGVjdD1cImdpby1mb3JtLWhlYWRlcnMtbGFiZWxcIj48L25nLWNvbnRlbnQ+PC9kaXY+XG48dGFibGUgY2xhc3M9XCJnaW8tZm9ybS1oZWFkZXJzX190YWJsZSBnaW8tdGFibGUtbGlnaHRcIiBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbZm9ybUdyb3VwXT1cIm1haW5Gb3JtXCI+XG4gIDx0aGVhZD5cbiAgICA8dHI+XG4gICAgICA8dGg+S0VZPC90aD5cbiAgICAgIDx0aD5WQUxVRTwvdGg+XG4gICAgPC90cj5cbiAgPC90aGVhZD5cbiAgPHRib2R5IGZvcm1BcnJheU5hbWU9XCJoZWFkZXJzXCI+XG4gICAgPHRyXG4gICAgICAqbmdGb3I9XCJsZXQgY29udHJvbCBvZiBoZWFkZXJzRm9ybUFycmF5LmNvbnRyb2xzOyBpbmRleCBhcyBoZWFkZXJJbmRleFwiXG4gICAgICBjbGFzcz1cImdpby1mb3JtLWhlYWRlcnNfX3RhYmxlX19oZWFkZXItcm93XCJcbiAgICAgIFtmb3JtR3JvdXBOYW1lXT1cImhlYWRlckluZGV4XCJcbiAgICA+XG4gICAgICA8dGQgY2xhc3M9XCJnaW8tZm9ybS1oZWFkZXJzX190YWJsZV9faGVhZGVyLXJvd19fdGQta2V5XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnaW8tZm9ybS1oZWFkZXJzX190YWJsZV9faGVhZGVyLXJvd19fdGQta2V5X19maWVsZFwiPlxuICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwia2V5XCJcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIk5hbWUuLi5cIlxuICAgICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxuICAgICAgICAgICAgY2RrQXV0b3NpemVNaW5Sb3dzPVwiMVwiXG4gICAgICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImhlYWRlck5hbWVzQXV0b2NvbXBsZXRlXCJcbiAgICAgICAgICAgIFttYXRBdXRvY29tcGxldGVEaXNhYmxlZF09XCJhdXRvY29tcGxldGVEaXNhYmxlZFwiXG4gICAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiY29udHJvbC5nZXQoJ2tleScpPy5oYXNFcnJvcigncGF0dGVybicpXCI+XG4gICAgICAgICAgSGVhZGVyIG5hbWUgbXVzdCBub3QgY29udGFpbiBzcGFjZXMuIChSZWdFeHA6IHt7IGNvbnRyb2wuZ2V0KCdrZXknKT8uZ2V0RXJyb3IoJ3BhdHRlcm4nKT8ucmVxdWlyZWRQYXR0ZXJuIH19KVxuICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgPG1hdC1hdXRvY29tcGxldGUgI2hlYWRlck5hbWVzQXV0b2NvbXBsZXRlPVwibWF0QXV0b2NvbXBsZXRlXCI+XG4gICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGhlYWRlck5hbWUgb2YgZ2V0RmlsdGVyZWRIZWFkZXJOYW1lcyhoZWFkZXJJbmRleCwgY29udHJvbC52YWx1ZSkgfCBhc3luY1wiIFt2YWx1ZV09XCJoZWFkZXJOYW1lXCI+e3tcbiAgICAgICAgICAgIGhlYWRlck5hbWVcbiAgICAgICAgICB9fTwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxuICAgICAgPC90ZD5cbiAgICAgIDx0ZCBjbGFzcz1cImdpby1mb3JtLWhlYWRlcnNfX3RhYmxlX19oZWFkZXItcm93X190ZC12YWx1ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ2lvLWZvcm0taGVhZGVyc19fdGFibGVfX2hlYWRlci1yb3dfX3RkLXZhbHVlX19maWVsZFwiPlxuICAgICAgICAgIDx0ZXh0YXJlYSBmb3JtQ29udHJvbE5hbWU9XCJ2YWx1ZVwiIG1hdElucHV0IHBsYWNlaG9sZGVyPVwiVmFsdWUuLi5cIiBjZGtUZXh0YXJlYUF1dG9zaXplIGNka0F1dG9zaXplTWluUm93cz1cIjFcIj48L3RleHRhcmVhPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiZ2lvLWZvcm0taGVhZGVyc19fdGFibGVfX2hlYWRlci1yb3dfX3RkLXZhbHVlX19idXR0b25cIlxuICAgICAgICAgICpuZ0lmPVwiaGVhZGVyc0Zvcm1BcnJheS5jb250cm9scy5sZW5ndGggLSAxICE9PSBoZWFkZXJJbmRleFwiXG4gICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgYXJpYS1sYWJlbD1cIkRlbGV0ZVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uRGVsZXRlSGVhZGVyKGhlYWRlckluZGV4KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cImdpbzpjYW5jZWxcIj48L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvdGQ+XG4gICAgPC90cj5cbiAgPC90Ym9keT5cbjwvdGFibGU+XG4iXX0=