@gravitee/ui-particles-angular 6.1.0 → 7.0.0

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.
@@ -21,9 +21,9 @@ import * as i3 from "@angular/common";
21
21
  export class GioFormFilePickerAddButtonComponent {
22
22
  }
23
23
  GioFormFilePickerAddButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerAddButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
24
- GioFormFilePickerAddButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button", 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"], components: [{ type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
+ GioFormFilePickerAddButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button", 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"], components: [{ type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
25
25
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerAddButtonComponent, decorators: [{
26
26
  type: Component,
27
- args: [{ selector: 'gio-form-file-picker-add-button', changeDetection: ChangeDetectionStrategy.OnPush, 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"] }]
27
+ args: [{ selector: 'gio-form-file-picker-add-button', changeDetection: ChangeDetectionStrategy.OnPush, 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"] }]
28
28
  }] });
29
29
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0tZmlsZS1waWNrZXItYWRkLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWZpbGUtcGlja2VyL2dpby1mb3JtLWZpbGUtcGlja2VyLWFkZC1idXR0b24vZ2lvLWZvcm0tZmlsZS1waWNrZXItYWRkLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWZpbGUtcGlja2VyL2dpby1mb3JtLWZpbGUtcGlja2VyLWFkZC1idXR0b24vZ2lvLWZvcm0tZmlsZS1waWNrZXItYWRkLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBUW5FLE1BQU0sT0FBTyxtQ0FBbUM7O2lJQUFuQyxtQ0FBbUM7cUhBQW5DLG1DQUFtQyx1RUN2QmhELHE4QkF3QkE7NEZERGEsbUNBQW1DO2tCQU4vQyxTQUFTOytCQUNFLGlDQUFpQyxtQkFHMUIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dpby1mb3JtLWZpbGUtcGlja2VyLWFkZC1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2lvLWZvcm0tZmlsZS1waWNrZXItYWRkLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dpby1mb3JtLWZpbGUtcGlja2VyLWFkZC1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEdpb0Zvcm1GaWxlUGlja2VyQWRkQnV0dG9uQ29tcG9uZW50IHt9XG4iLCI8IS0tXG5cbiAgICBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAgICBcbiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgICBcbiAgICAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICAgIFxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4tLT5cbjxkaXYgY2xhc3M9XCJhZGQtYnV0dG9uXCIgbWF0UmlwcGxlPlxuICA8ZGl2ICNjb250ZW50PjxuZy1jb250ZW50PjwvbmctY29udGVudD48L2Rpdj5cbiAgPHNwYW4gKm5nSWY9XCIhY29udGVudC5jaGlsZHJlbi5sZW5ndGhcIj5cbiAgICA8bWF0LWljb24gY2xhc3M9XCJhZGQtYnV0dG9uX19pbWFnZVwiIHN2Z0ljb249XCJnaW86dXBsb2FkXCI+PC9tYXQtaWNvbj5cbiAgICA8c3BhbiBjbGFzcz1cImFkZC1idXR0b25fX2NvbnRlbnRcIj5EcmFnIHlvdXIgZmlsZTwvc3Bhbj5cbiAgPC9zcGFuPlxuPC9kaXY+XG4iXX0=
@@ -136,10 +136,10 @@ export class GioFormFilePickerComponent {
136
136
  }
137
137
  }
138
138
  GioFormFilePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
139
- GioFormFilePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerComponent, selector: "gio-form-file-picker", inputs: { multiple: "multiple", accept: "accept", disabled: "disabled" }, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"], components: [{ type: i2.GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button" }, { type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i4.GioFormFilePickerEmptyComponent, selector: "gio-form-file-picker-empty" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.FileDropzoneDirective, selector: "[ngxFileDropzone]", outputs: ["fileDrop"], exportAs: ["ngxFileDropzone"] }, { type: i6.FilePickerDirective, selector: "[ngxFilePicker]", inputs: ["accept", "multiple"], outputs: ["filePick"], exportAs: ["ngxFilePicker"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
139
+ GioFormFilePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerComponent, selector: "gio-form-file-picker", inputs: { multiple: "multiple", accept: "accept", disabled: "disabled" }, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"], components: [{ type: i2.GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button" }, { type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i4.GioFormFilePickerEmptyComponent, selector: "gio-form-file-picker-empty" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.FileDropzoneDirective, selector: "[ngxFileDropzone]", outputs: ["fileDrop"], exportAs: ["ngxFileDropzone"] }, { type: i6.FilePickerDirective, selector: "[ngxFilePicker]", inputs: ["accept", "multiple"], outputs: ["filePick"], exportAs: ["ngxFilePicker"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
140
140
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerComponent, decorators: [{
141
141
  type: Component,
142
- args: [{ selector: 'gio-form-file-picker', changeDetection: ChangeDetectionStrategy.OnPush, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"] }]
142
+ args: [{ selector: 'gio-form-file-picker', changeDetection: ChangeDetectionStrategy.OnPush, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"] }]
143
143
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.NgControl, decorators: [{
144
144
  type: Self
145
145
  }, {
@@ -214,7 +214,7 @@ GioFormHeadersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
214
214
  useExisting: forwardRef(() => GioFormHeadersComponent),
215
215
  multi: true,
216
216
  },
217
- ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"], components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i9.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"] }, { type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { type: i3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i8.AsyncPipe } });
217
+ ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}.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;opacity:.9}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"], components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i9.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"] }, { type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { type: i3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i8.AsyncPipe } });
218
218
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormHeadersComponent, decorators: [{
219
219
  type: Component,
220
220
  args: [{ selector: 'gio-form-headers', providers: [
@@ -223,7 +223,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
223
223
  useExisting: forwardRef(() => GioFormHeadersComponent),
224
224
  multi: true,
225
225
  },
226
- ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"] }]
226
+ ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}.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;opacity:.9}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"] }]
227
227
  }], ctorParameters: function () { return [{ type: i1.FocusMonitor }, { type: i0.ElementRef }]; }, propDecorators: { adaptOutputFn: [{
228
228
  type: Input
229
229
  }], disabled: [{
@@ -1159,7 +1159,7 @@ GioFormHeadersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
1159
1159
  useExisting: forwardRef(() => GioFormHeadersComponent),
1160
1160
  multi: true,
1161
1161
  },
1162
- ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"], components: [{ type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6$1.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"] }, { type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2$1.AsyncPipe } });
1162
+ ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}.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;opacity:.9}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"], components: [{ type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6$1.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"] }, { type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2$1.AsyncPipe } });
1163
1163
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormHeadersComponent, decorators: [{
1164
1164
  type: Component,
1165
1165
  args: [{ selector: 'gio-form-headers', providers: [
@@ -1168,7 +1168,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
1168
1168
  useExisting: forwardRef(() => GioFormHeadersComponent),
1169
1169
  multi: true,
1170
1170
  },
1171
- ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"] }]
1171
+ ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}.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;opacity:.9}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"] }]
1172
1172
  }], ctorParameters: function () { return [{ type: i2$2.FocusMonitor }, { type: i0.ElementRef }]; }, propDecorators: { adaptOutputFn: [{
1173
1173
  type: Input
1174
1174
  }], disabled: [{
@@ -1311,10 +1311,10 @@ GioFormHeadersHarness.hostSelector = 'gio-form-headers';
1311
1311
  class GioFormFilePickerAddButtonComponent {
1312
1312
  }
1313
1313
  GioFormFilePickerAddButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerAddButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1314
- GioFormFilePickerAddButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button", 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"], components: [{ type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1314
+ GioFormFilePickerAddButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button", 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"], components: [{ type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1315
1315
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerAddButtonComponent, decorators: [{
1316
1316
  type: Component,
1317
- args: [{ selector: 'gio-form-file-picker-add-button', changeDetection: ChangeDetectionStrategy.OnPush, 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"] }]
1317
+ args: [{ selector: 'gio-form-file-picker-add-button', changeDetection: ChangeDetectionStrategy.OnPush, 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"] }]
1318
1318
  }] });
1319
1319
 
1320
1320
  /*
@@ -1503,10 +1503,10 @@ class GioFormFilePickerComponent {
1503
1503
  }
1504
1504
  }
1505
1505
  GioFormFilePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i7.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
1506
- GioFormFilePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerComponent, selector: "gio-form-file-picker", inputs: { multiple: "multiple", accept: "accept", disabled: "disabled" }, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"], components: [{ type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button" }, { type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: GioFormFilePickerEmptyComponent, selector: "gio-form-file-picker-empty" }], directives: [{ type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$2.FileDropzoneDirective, selector: "[ngxFileDropzone]", outputs: ["fileDrop"], exportAs: ["ngxFileDropzone"] }, { type: i6$2.FilePickerDirective, selector: "[ngxFilePicker]", inputs: ["accept", "multiple"], outputs: ["filePick"], exportAs: ["ngxFilePicker"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1506
+ GioFormFilePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerComponent, selector: "gio-form-file-picker", inputs: { multiple: "multiple", accept: "accept", disabled: "disabled" }, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"], components: [{ type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button" }, { type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: GioFormFilePickerEmptyComponent, selector: "gio-form-file-picker-empty" }], directives: [{ type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$2.FileDropzoneDirective, selector: "[ngxFileDropzone]", outputs: ["fileDrop"], exportAs: ["ngxFileDropzone"] }, { type: i6$2.FilePickerDirective, selector: "[ngxFilePicker]", inputs: ["accept", "multiple"], outputs: ["filePick"], exportAs: ["ngxFilePicker"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1507
1507
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerComponent, decorators: [{
1508
1508
  type: Component,
1509
- args: [{ selector: 'gio-form-file-picker', changeDetection: ChangeDetectionStrategy.OnPush, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"] }]
1509
+ args: [{ selector: 'gio-form-file-picker', changeDetection: ChangeDetectionStrategy.OnPush, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"] }]
1510
1510
  }], ctorParameters: function () {
1511
1511
  return [{ type: i0.ChangeDetectorRef }, { type: i7.NgControl, decorators: [{
1512
1512
  type: Self
@@ -1173,7 +1173,7 @@ GioFormHeadersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
1173
1173
  useExisting: forwardRef(() => GioFormHeadersComponent),
1174
1174
  multi: true,
1175
1175
  },
1176
- ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"], components: [{ type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6$1.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"] }, { type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2$1.AsyncPipe } });
1176
+ ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}.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;opacity:.9}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"], components: [{ type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i5.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6$1.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"] }, { type: i10.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { type: i5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2$1.AsyncPipe } });
1177
1177
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormHeadersComponent, decorators: [{
1178
1178
  type: Component,
1179
1179
  args: [{ selector: 'gio-form-headers', providers: [
@@ -1182,7 +1182,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
1182
1182
  useExisting: forwardRef(() => GioFormHeadersComponent),
1183
1183
  multi: true,
1184
1184
  },
1185
- ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"] }]
1185
+ ], 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<table class=\"gio-form-headers__table gio-table-light\" [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 <mat-form-field class=\"gio-form-headers__table__header-row__td-key__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea\n formControlName=\"key\"\n matInput\n placeholder=\"Name...\"\n cdkTextareaAutosize\n cdkAutosizeMinRows=\"1\"\n [matAutocomplete]=\"headerNamesAutocomplete\"\n ></textarea>\n </mat-form-field>\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 <mat-form-field class=\"gio-form-headers__table__header-row__td-value__field\" [floatLabel]=\"'never'\" appearance=\"standard\">\n <textarea formControlName=\"value\" matInput placeholder=\"Value...\" cdkTextareaAutosize cdkAutosizeMinRows=\"1\"></textarea>\n </mat-form-field>\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: [":host{display:block;overflow:hidden}.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%;max-height:32px;flex-direction:column;justify-content:center;padding-bottom:0}.gio-form-headers__table__header-row__td-key__field *,.gio-form-headers__table__header-row__td-value__field *{top:0;overflow:hidden;max-height:32px}.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}.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;opacity:.9}::ng-deep gio-form-headers .gio-form-headers__table__header-row .mat-form-field-infix{width:inherit}\n"] }]
1186
1186
  }], ctorParameters: function () { return [{ type: i2$2.FocusMonitor }, { type: i0.ElementRef }]; }, propDecorators: { adaptOutputFn: [{
1187
1187
  type: Input
1188
1188
  }], disabled: [{
@@ -1330,10 +1330,10 @@ GioFormHeadersHarness.hostSelector = 'gio-form-headers';
1330
1330
  class GioFormFilePickerAddButtonComponent {
1331
1331
  }
1332
1332
  GioFormFilePickerAddButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerAddButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1333
- GioFormFilePickerAddButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button", 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"], components: [{ type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1333
+ GioFormFilePickerAddButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button", 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"], components: [{ type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1334
1334
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerAddButtonComponent, decorators: [{
1335
1335
  type: Component,
1336
- args: [{ selector: 'gio-form-file-picker-add-button', changeDetection: ChangeDetectionStrategy.OnPush, 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"] }]
1336
+ args: [{ selector: 'gio-form-file-picker-add-button', changeDetection: ChangeDetectionStrategy.OnPush, 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=\"add-button\" matRipple>\n <div #content><ng-content></ng-content></div>\n <span *ngIf=\"!content.children.length\">\n <mat-icon class=\"add-button__image\" svgIcon=\"gio:upload\"></mat-icon>\n <span class=\"add-button__content\">Drag your file</span>\n </span>\n</div>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}:host{display:block;width:130px;height:130px}.add-button{height:100%;padding:6px;text-align:center}.add-button__image{width:100%;height:54px}.add-button__content{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}\n"] }]
1337
1337
  }] });
1338
1338
 
1339
1339
  /*
@@ -1533,10 +1533,10 @@ class GioFormFilePickerComponent {
1533
1533
  }
1534
1534
  }
1535
1535
  GioFormFilePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i7.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
1536
- GioFormFilePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerComponent, selector: "gio-form-file-picker", inputs: { multiple: "multiple", accept: "accept", disabled: "disabled" }, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"], components: [{ type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button" }, { type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: GioFormFilePickerEmptyComponent, selector: "gio-form-file-picker-empty" }], directives: [{ type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$2.FileDropzoneDirective, selector: "[ngxFileDropzone]", outputs: ["fileDrop"], exportAs: ["ngxFileDropzone"] }, { type: i6$2.FilePickerDirective, selector: "[ngxFilePicker]", inputs: ["accept", "multiple"], outputs: ["filePick"], exportAs: ["ngxFilePicker"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1536
+ GioFormFilePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioFormFilePickerComponent, selector: "gio-form-file-picker", inputs: { multiple: "multiple", accept: "accept", disabled: "disabled" }, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"], components: [{ type: GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button" }, { type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: GioFormFilePickerEmptyComponent, selector: "gio-form-file-picker-empty" }], directives: [{ type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$2.FileDropzoneDirective, selector: "[ngxFileDropzone]", outputs: ["fileDrop"], exportAs: ["ngxFileDropzone"] }, { type: i6$2.FilePickerDirective, selector: "[ngxFilePicker]", inputs: ["accept", "multiple"], outputs: ["filePick"], exportAs: ["ngxFilePicker"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1537
1537
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioFormFilePickerComponent, decorators: [{
1538
1538
  type: Component,
1539
- args: [{ selector: 'gio-form-file-picker', changeDetection: ChangeDetectionStrategy.OnPush, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid #e0e0e0}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"] }]
1539
+ args: [{ selector: 'gio-form-file-picker', changeDetection: ChangeDetectionStrategy.OnPush, 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<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span #previewEmpty class=\"file-picker__preview-empty disabled\">\n <ng-content select=\"gio-form-file-picker-empty\"></ng-content>\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: this.fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <p>{{ fileValue.name }}</p>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column}.file-picker{display:flex;flex:1 1 auto;flex-flow:row wrap;padding:4px}.file-picker__add-button{border:2px dashed #606274;border-radius:6px;margin:4px;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #876fec;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px;border:none}.file-picker__add-button.error{border:2px dashed #ec4899}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px;border:2px solid #606274;border-radius:6px;margin:4px;inline-size:-moz-fit-content;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-content:center;align-items:center;justify-content:center;text-align:center;font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #ec4899}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f8fdb3;color:#100c27;cursor:pointer}.file-picker__preview__delete:hover{color:#fe733f}.file-picker__preview-empty__default{text-align:center}\n"] }]
1540
1540
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i7.NgControl, decorators: [{
1541
1541
  type: Self
1542
1542
  }, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravitee/ui-particles-angular",
3
- "version": "6.1.0",
3
+ "version": "7.0.0",
4
4
  "description": "Gravitee.io - UI Particles Angular",
5
5
  "repository": {
6
6
  "type": "git",
@@ -79,8 +79,8 @@
79
79
  .gio-badge-neutral {
80
80
  @extend %gio-badge-base;
81
81
 
82
- background-color: mat.get-color-from-palette(palettes.$mat-neutral-palette, default);
83
- color: mat.get-color-from-palette(palettes.$mat-neutral-palette, default-contrast);
82
+ background-color: mat.get-color-from-palette(palettes.$mat-dove-palette, darker10);
83
+ color: mat.get-color-from-palette(palettes.$mat-dove-palette, darker10-contrast);
84
84
  }
85
85
 
86
86
  .gio-badge-success {
@@ -38,7 +38,7 @@ $typography: map.get(theme.$mat-theme, typography);
38
38
  thead {
39
39
  @include mat.typography-level($typography, 'body-2');
40
40
 
41
- background-color: mat.get-color-from-palette(palettes.$mat-decorative-palette, lighter-background);
41
+ background-color: mat.get-color-from-palette(palettes.$mat-dove-palette, default);
42
42
  text-align: left;
43
43
  text-transform: uppercase;
44
44
  }
@@ -46,7 +46,7 @@ $typography: map.get(theme.$mat-theme, typography);
46
46
  tbody {
47
47
  @include mat.typography-level($typography, 'body-1');
48
48
 
49
- background-color: mat.get-color-from-palette(palettes.$mat-content-palette, lighter);
49
+ background-color: mat.get-color-from-palette(palettes.$mat-basic-palette, white);
50
50
  }
51
51
  }
52
52
  }
@@ -165,10 +165,15 @@ $mat-basic-palette: mat.define-palette(
165
165
  (
166
166
  black: #000,
167
167
  white: #fff,
168
- contrast: (
169
- black: #fff,
170
- white: #000,
171
- ),
168
+ disabled: rgb(0 0 0 / 12%),
169
+ // Same color as the disabled color of material
170
+ contrast:
171
+ (
172
+ black: #fff,
173
+ white: #000,
174
+ disabled: rgb(0 0 0 / 26%),
175
+ // Same color as the disabled color of material
176
+ ),
172
177
  ),
173
178
  black,
174
179
  white,
@@ -275,71 +280,12 @@ $mat-blue-palette: mat.define-palette(
275
280
  default
276
281
  );
277
282
 
278
- /////////////////
279
- // DEPRECATED //
280
- /////////////////
281
-
282
- // DEPRECATED - Neutral color
283
- $mat-neutral-palette: mat.define-palette(
284
- (
285
- darker: mat.get-color-from-palette($mat-dove-palette, darker70),
286
- default: mat.get-color-from-palette($mat-dove-palette, darker10),
287
- lighter: mat.get-color-from-palette($mat-dove-palette, default),
288
- contrast: (
289
- darker: mat.get-color-from-palette($mat-basic-palette, white),
290
- default: mat.get-color-from-palette($mat-space-palette, default),
291
- lighter: mat.get-color-from-palette($mat-space-palette, default),
292
- ),
293
- ),
294
- default,
295
- lighter,
296
- darker
297
- );
298
-
299
- // DEPRECATED - Content color
300
- $mat-content-palette: mat.define-palette(
301
- (
302
- darker: mat.get-color-from-palette($mat-space-palette, default),
303
- default: mat.get-color-from-palette($mat-space-palette, lighter40),
304
- disabled: #e0e0e0,
305
- lighter: mat.get-color-from-palette($mat-basic-palette, white),
306
- contrast: (
307
- darker: mat.get-color-from-palette($mat-basic-palette, white),
308
- default: mat.get-color-from-palette($mat-basic-palette, white),
309
- disabled: #a6a6a6,
310
- lighter: mat.get-color-from-palette($mat-basic-palette, black),
311
- ),
312
- ),
313
- default,
314
- lighter,
315
- darker
316
- );
317
-
318
- // DEPRECATED - Decorative color
319
- $mat-decorative-palette: mat.define-palette(
320
- (
321
- background: mat.get-color-from-palette($mat-dove-palette, default),
322
- lighter-background: mat.get-color-from-palette($mat-dove-palette, default),
323
- surface: mat.get-color-from-palette($mat-basic-palette, white),
324
- divider: mat.get-color-from-palette($mat-dove-palette, darker10),
325
- contrast: (
326
- background: mat.get-color-from-palette($mat-basic-palette, black),
327
- lighter-background: mat.get-color-from-palette($mat-basic-palette, black),
328
- surface: mat.get-color-from-palette($mat-basic-palette, black),
329
- divider: mat.get-color-from-palette($mat-basic-palette, black),
330
- ),
331
- ),
332
- surface,
333
- surface,
334
- surface
335
- );
336
-
337
- // DEPRECATED - Method color
283
+ // Method color
338
284
  $mat-method-palette: mat.define-palette(
339
285
  (
340
286
  patch: mat.get-color-from-palette($mat-accent-palette, lighter80),
341
287
  post: mat.get-color-from-palette($mat-warning-palette, lighter80),
342
- put: mat.get-color-from-palette($mat-neutral-palette, default),
288
+ put: mat.get-color-from-palette($mat-dove-palette, darker10),
343
289
  get: mat.get-color-from-palette($mat-primary-palette, lighter80),
344
290
  delete: mat.get-color-from-palette($mat-error-palette, lighter80),
345
291
  option: mat.get-color-from-palette($mat-success-palette, lighter80),
@@ -348,7 +294,7 @@ $mat-method-palette: mat.define-palette(
348
294
  contrast: (
349
295
  patch: mat.get-color-from-palette($mat-accent-palette, darker40),
350
296
  post: mat.get-color-from-palette($mat-warning-palette, darker20),
351
- put: mat.get-color-from-palette($mat-neutral-palette, lighter70),
297
+ put: mat.get-color-from-palette($mat-dove-palette, lighter70),
352
298
  get: mat.get-color-from-palette($mat-primary-palette, darker60),
353
299
  delete: mat.get-color-from-palette($mat-error-palette, darker20),
354
300
  option: mat.get-color-from-palette($mat-success-palette, darker60),
@@ -68,7 +68,7 @@ $mat-foreground: map.get($mat-theme-default, foreground);
68
68
  $gio-background: map.merge(
69
69
  $mat-background,
70
70
  (
71
- background: mat.get-color-from-palette(palettes.$mat-decorative-palette, lighter-background),
71
+ background: mat.get-color-from-palette(palettes.$mat-dove-palette, default),
72
72
  tooltip: mat.get-color-from-palette(palettes.$mat-space-palette, default),
73
73
  )
74
74
  );
@@ -77,8 +77,8 @@ $gio-background: map.merge(
77
77
  $gio-foreground: map.merge(
78
78
  $mat-foreground,
79
79
  (
80
- text: mat.get-color-from-palette(palettes.$mat-content-palette, darker),
81
- slider-min: mat.get-color-from-palette(palettes.$mat-content-palette, darker),
80
+ text: mat.get-color-from-palette(palettes.$mat-space-palette, default),
81
+ slider-min: mat.get-color-from-palette(palettes.$mat-space-palette, default),
82
82
  )
83
83
  );
84
84
  $gio-background-foreground: (
@@ -14,9 +14,8 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- @forward './gio-mat-palettes' show $mat-primary-palette, $mat-accent-palette, $mat-content-palette, $mat-neutral-palette,
18
- $mat-success-palette, $mat-warning-palette, $mat-error-palette, $mat-decorative-palette, $mat-method-palette, $mat-basic-palette,
19
- $mat-blue-palette, $mat-cyan-palette, $mat-space-palette, $mat-dove-palette;
17
+ @forward './gio-mat-palettes' show $mat-primary-palette, $mat-accent-palette, $mat-success-palette, $mat-warning-palette, $mat-error-palette,
18
+ $mat-method-palette, $mat-basic-palette, $mat-blue-palette, $mat-cyan-palette, $mat-space-palette, $mat-dove-palette;
20
19
 
21
20
  @forward './theme/typography/gio-typography' show subtitle-typography, code-typography, link-typography;
22
21
 
@@ -21,7 +21,6 @@ $colorNames: lighter, lighter60, lighter40, lighter20, default, darker20, darker
21
21
  $palettes: (
22
22
  primary: gio.$mat-primary-palette,
23
23
  accent: gio.$mat-accent-palette,
24
- neutral: gio.$mat-neutral-palette,
25
24
  success: gio.$mat-success-palette,
26
25
  warning: gio.$mat-warning-palette,
27
26
  error: gio.$mat-error-palette,
@@ -40,22 +39,12 @@ $palettes: (
40
39
 
41
40
  // Special palettes
42
41
 
43
- @each $colorName in (darker, default, disabled, lighter) {
44
- content__#{$colorName}: mat.get-color-from-palette(gio.$mat-content-palette, $colorName);
45
- content__#{$colorName}-contrast: mat.get-color-from-palette(gio.$mat-content-palette, #{$colorName}-contrast);
46
- }
47
-
48
- @each $colorName in (background, lighter-background, surface, divider) {
49
- decorative__#{$colorName}: mat.get-color-from-palette(gio.$mat-decorative-palette, $colorName);
50
- decorative__#{$colorName}-contrast: mat.get-color-from-palette(gio.$mat-decorative-palette, #{$colorName}-contrast);
51
- }
52
-
53
42
  @each $colorName in (patch, post, put, get, delete, option, trace, head) {
54
43
  method__#{$colorName}: mat.get-color-from-palette(gio.$mat-method-palette, $colorName);
55
44
  method__#{$colorName}-contrast: mat.get-color-from-palette(gio.$mat-method-palette, #{$colorName}-contrast);
56
45
  }
57
46
 
58
- @each $colorName in (white, black) {
47
+ @each $colorName in (white, black, disabled) {
59
48
  basic__#{$colorName}: mat.get-color-from-palette(gio.$mat-basic-palette, $colorName);
60
49
  basic__#{$colorName}-contrast: mat.get-color-from-palette(gio.$mat-basic-palette, #{$colorName}-contrast);
61
50
  }
@@ -20,7 +20,7 @@
20
20
 
21
21
  .title {
22
22
  flex: 1 1 30%;
23
- color: mat.get-color-from-palette(gio.$mat-neutral-palette, default-contrast);
23
+ color: mat.get-color-from-palette(gio.$mat-dove-palette, darker10-contrast);
24
24
  }
25
25
 
26
26
  .row {