@gravitee/ui-particles-angular 4.10.3 → 4.10.4

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.
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import { animate, style, transition, trigger } from '@angular/animations';
17
- import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
17
+ import { Component, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';
18
18
  import { timer } from 'rxjs';
19
19
  import * as i0 from "@angular/core";
20
20
  import * as i1 from "@angular/material/card";
@@ -30,6 +30,7 @@ export class GioSaveBarComponent {
30
30
  */
31
31
  this.invalidState = false;
32
32
  this.creationMode = false;
33
+ this.hasSubmitLock = true;
33
34
  this.resetClicked = new EventEmitter();
34
35
  this.submitted = new EventEmitter();
35
36
  this.submittedInvalidState = new EventEmitter();
@@ -53,6 +54,9 @@ export class GioSaveBarComponent {
53
54
  }
54
55
  this.resetClicked.emit();
55
56
  }
57
+ onDisableSubmitLock() {
58
+ this.hasSubmitLock = true;
59
+ }
56
60
  onSubmitClicked() {
57
61
  var _a;
58
62
  if ((this.form && this.form.invalid) || this.invalidState) {
@@ -60,15 +64,18 @@ export class GioSaveBarComponent {
60
64
  this.submittedInvalidState.emit();
61
65
  return;
62
66
  }
63
- if (!this.isSubmitted) {
64
- this.submitted.emit();
67
+ if (this.isSubmitted) {
68
+ return;
69
+ }
70
+ this.submitted.emit();
71
+ if (this.hasSubmitLock) {
65
72
  this.isSubmitted = true;
66
73
  timer(2000).subscribe(() => (this.isSubmitted = false));
67
74
  }
68
75
  }
69
76
  }
70
77
  GioSaveBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: GioSaveBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
71
- GioSaveBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: GioSaveBarComponent, selector: "gio-save-bar", inputs: { opened: "opened", invalidState: "invalidState", creationMode: "creationMode", form: "form", formInitialValues: "formInitialValues" }, outputs: { resetClicked: "resetClicked", submitted: "submitted", submittedInvalidState: "submittedInvalidState" }, host: { properties: { "class.save-bar-sticky": "this.isSticky", "class.is-open": "this.isOpen" } }, 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\n<div *ngIf=\"isOpen\" [@slideUpDown] [@.disabled]=\"creationMode\">\n <mat-card class=\"save-bar__content\" [class.mat-elevation-z3]=\"creationMode\" [class.mat-elevation-z6]=\"!creationMode\">\n <div class=\"save-bar__content__label\">{{ creationMode ? '' : 'You have unsaved changes' }}</div>\n <div>\n <button *ngIf=\"!creationMode\" class=\"save-bar__content__reset-button\" mat-button type=\"button\" (click)=\"onResetClicked()\">\n Discard\n </button>\n <button\n class=\"save-bar__content__submit-button\"\n [class.invalid]=\"(form && form.invalid) || invalidState\"\n mat-flat-button\n color=\"primary\"\n [type]=\"form ? 'submit' : 'button'\"\n (click)=\"onSubmitClicked()\"\n >\n {{ creationMode ? 'Create' : 'Save' }}\n </button>\n </div>\n </mat-card>\n</div>\n", styles: [":host{z-index:1000;display:block;height:68px;margin-top:32px;visibility:hidden}:host.is-open{visibility:visible}:host(.save-bar-sticky){position:sticky;bottom:0;margin-right:-16px;margin-left:-16px}.save-bar__content{display:flex;height:100%;align-items:center;justify-content:space-between;padding:16px 24px}.save-bar__content__label{font:400 14px / 20px \"Golos UI\",Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:.4px}.save-bar__content__reset-button{margin-right:16px}.save-bar__content__submit-button.invalid{background-color:#d6ffff;color:#000}.save-bar__content__submit-button.invalid:hover:enabled{background-color:#099;color:#fff}\n"], components: [{ type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { 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"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
78
+ GioSaveBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: GioSaveBarComponent, selector: "gio-save-bar", inputs: { opened: "opened", invalidState: "invalidState", creationMode: "creationMode", form: "form", formInitialValues: "formInitialValues" }, outputs: { resetClicked: "resetClicked", submitted: "submitted", submittedInvalidState: "submittedInvalidState" }, host: { listeners: { "disable-submit-lock": "onDisableSubmitLock()" }, properties: { "class.save-bar-sticky": "this.isSticky", "class.is-open": "this.isOpen" } }, 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\n<div *ngIf=\"isOpen\" [@slideUpDown] [@.disabled]=\"creationMode\">\n <mat-card class=\"save-bar__content\" [class.mat-elevation-z3]=\"creationMode\" [class.mat-elevation-z6]=\"!creationMode\">\n <div class=\"save-bar__content__label\">{{ creationMode ? '' : 'You have unsaved changes' }}</div>\n <div>\n <button *ngIf=\"!creationMode\" class=\"save-bar__content__reset-button\" mat-button type=\"button\" (click)=\"onResetClicked()\">\n Discard\n </button>\n <button\n class=\"save-bar__content__submit-button\"\n [class.invalid]=\"(form && form.invalid) || invalidState\"\n mat-flat-button\n color=\"primary\"\n [type]=\"form ? 'submit' : 'button'\"\n (click)=\"onSubmitClicked()\"\n >\n {{ creationMode ? 'Create' : 'Save' }}\n </button>\n </div>\n </mat-card>\n</div>\n", styles: [":host{z-index:1000;display:block;height:68px;margin-top:32px;visibility:hidden}:host.is-open{visibility:visible}:host(.save-bar-sticky){position:sticky;bottom:0;margin-right:-16px;margin-left:-16px}.save-bar__content{display:flex;height:100%;align-items:center;justify-content:space-between;padding:16px 24px}.save-bar__content__label{font:400 14px / 20px \"Golos UI\",Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:.4px}.save-bar__content__reset-button{margin-right:16px}.save-bar__content__submit-button.invalid{background-color:#d6ffff;color:#000}.save-bar__content__submit-button.invalid:hover:enabled{background-color:#099;color:#fff}\n"], components: [{ type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { 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"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
72
79
  trigger('slideUpDown', [
73
80
  transition(':enter', [
74
81
  style({ transform: 'translateY(40vh)', opacity: '0' }),
@@ -121,5 +128,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
121
128
  }], isOpen: [{
122
129
  type: HostBinding,
123
130
  args: ['class.is-open']
131
+ }], onDisableSubmitLock: [{
132
+ type: HostListener,
133
+ args: ['disable-submit-lock']
124
134
  }] } });
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXNhdmUtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBhcnRpY2xlcy1hbmd1bGFyL3NyYy9saWIvZ2lvLXNhdmUtYmFyL2dpby1zYXZlLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1zYXZlLWJhci9naW8tc2F2ZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFtQjdCLE1BQU0sT0FBTyxtQkFBbUI7SUFqQmhDO1FBa0JTLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBUXBCLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFFdEI7OztXQUdHO1FBRUksaUJBQVksR0FBYSxLQUFLLENBQUM7UUFHL0IsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFTckIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBR3hDLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBR3JDLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7S0FrQ25EO0lBakVDLElBQ1csUUFBUTtRQUNqQixPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM1QixDQUFDO0lBOEJELElBQ1csTUFBTTtRQUNmLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixPQUFPLElB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LENBQUM7NkJBQ3hHLENBQUM7eUJBQ0gsQ0FBQztxQkFDSDtpQkFDRjs4QkFLWSxRQUFRO3NCQURsQixXQUFXO3VCQUFDLHVCQUF1QjtnQkFNN0IsTUFBTTtzQkFEWixLQUFLO2dCQVFDLFlBQVk7c0JBRGxCLEtBQUs7Z0JBSUMsWUFBWTtzQkFEbEIsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQUlDLFlBQVk7c0JBRGxCLE1BQU07Z0JBSUEsU0FBUztzQkFEZixNQUFNO2dCQUlBLHFCQUFxQjtzQkFEM0IsTUFBTTtnQkFJSSxNQUFNO3NCQURoQixXQUFXO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgdGltZXIgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ2lvLXNhdmUtYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dpby1zYXZlLWJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dpby1zYXZlLWJhci5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignc2xpZGVVcERvd24nLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSg0MHZoKScsIG9wYWNpdHk6ICcwJyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDApJywgb3BhY2l0eTogJzEnIH0pKSxcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCknLCBvcGFjaXR5OiAnMScgfSksXG4gICAgICAgIGFuaW1hdGUoJzMwMG1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKScsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSg0MHZoKScsIG9wYWNpdHk6ICcwJyB9KSksXG4gICAgICBdKSxcbiAgICBdKSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgR2lvU2F2ZUJhckNvbXBvbmVudCB7XG4gIHB1YmxpYyBpc1N1Ym1pdHRlZCA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc2F2ZS1iYXItc3RpY2t5JylcbiAgcHVibGljIGdldCBpc1N0aWNreSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuY3JlYXRpb25Nb2RlO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIG9wZW5lZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaGVuIHRydWUsIHRoZSBzdWJtaXQgYnV0dG9uIGhhdmUgaW52YWxpZGF0ZSBkaXNwbGF5XG4gICAqIEFuZCBvbiBzdWJtaXQgY2xpY2tlZCB0aGUgb3V0cHV0IGV2ZW50IGlzIGVtaXQgb24gc3VibWl0SW52YWxpZFN0YXRlIChhbmQgbm90IG9uIHN1Ym1pdClcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpbnZhbGlkU3RhdGU/OiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNyZWF0aW9uTW9kZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmb3JtPzogRm9ybUdyb3VwO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmb3JtSW5pdGlhbFZhbHVlcz86IHVua25vd247XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZXNldENsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzdWJtaXR0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzdWJtaXR0ZWRJbnZhbGlkU3RhdGUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1vcGVuJylcbiAgcHVibGljIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuY3JlYXRpb25Nb2RlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5mb3JtKSB7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtLmRpcnR5O1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5vcGVuZWQ7XG4gIH1cblxuICBwdWJsaWMgb25SZXNldENsaWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZm9ybSkge1xuICAgICAgdGhpcy5mb3JtLnJlc2V0KHRoaXMuZm9ybUluaXRpYWxWYWx1ZXMpO1xuICAgICAgdGhpcy5mb3JtLm1hcmtBc1ByaXN0aW5lKCk7XG4gICAgfVxuICAgIHRoaXMucmVzZXRDbGlja2VkLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvblN1Ym1pdENsaWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKCh0aGlzLmZvcm0gJiYgdGhpcy5mb3JtLmludmFsaWQpIHx8IHRoaXMuaW52YWxpZFN0YXRlKSB7XG4gICAgICB0aGlzLmZvcm0/Lm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICAgIHRoaXMuc3VibWl0dGVkSW52YWxpZFN0YXRlLmVtaXQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmlzU3VibWl0dGVkKSB7XG4gICAgICB0aGlzLnN1Ym1pdHRlZC5lbWl0KCk7XG4gICAgICB0aGlzLmlzU3VibWl0dGVkID0gdHJ1ZTtcbiAgICAgIHRpbWVyKDIwMDApLnN1YnNjcmliZSgoKSA9PiAodGhpcy5pc1N1Ym1pdHRlZCA9IGZhbHNlKSk7XG4gICAgfVxuICB9XG59XG4iLCI8IS0tXG5cbiAgICBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4tLT5cblxuPGRpdiAqbmdJZj1cImlzT3BlblwiIFtAc2xpZGVVcERvd25dIFtALmRpc2FibGVkXT1cImNyZWF0aW9uTW9kZVwiPlxuICA8bWF0LWNhcmQgY2xhc3M9XCJzYXZlLWJhcl9fY29udGVudFwiIFtjbGFzcy5tYXQtZWxldmF0aW9uLXozXT1cImNyZWF0aW9uTW9kZVwiIFtjbGFzcy5tYXQtZWxldmF0aW9uLXo2XT1cIiFjcmVhdGlvbk1vZGVcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2F2ZS1iYXJfX2NvbnRlbnRfX2xhYmVsXCI+e3sgY3JlYXRpb25Nb2RlID8gJycgOiAnWW91IGhhdmUgdW5zYXZlZCBjaGFuZ2VzJyB9fTwvZGl2PlxuICAgIDxkaXY+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwiIWNyZWF0aW9uTW9kZVwiIGNsYXNzPVwic2F2ZS1iYXJfX2NvbnRlbnRfX3Jlc2V0LWJ1dHRvblwiIG1hdC1idXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvblJlc2V0Q2xpY2tlZCgpXCI+XG4gICAgICAgIERpc2NhcmRcbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cInNhdmUtYmFyX19jb250ZW50X19zdWJtaXQtYnV0dG9uXCJcbiAgICAgICAgW2NsYXNzLmludmFsaWRdPVwiKGZvcm0gJiYgZm9ybS5pbnZhbGlkKSB8fCBpbnZhbGlkU3RhdGVcIlxuICAgICAgICBtYXQtZmxhdC1idXR0b25cbiAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgW3R5cGVdPVwiZm9ybSA/ICdzdWJtaXQnIDogJ2J1dHRvbidcIlxuICAgICAgICAoY2xpY2spPVwib25TdWJtaXRDbGlja2VkKClcIlxuICAgICAgPlxuICAgICAgICB7eyBjcmVhdGlvbk1vZGUgPyAnQ3JlYXRlJyA6ICdTYXZlJyB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvbWF0LWNhcmQ+XG48L2Rpdj5cbiJdfQ==
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXNhdmUtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBhcnRpY2xlcy1hbmd1bGFyL3NyYy9saWIvZ2lvLXNhdmUtYmFyL2dpby1zYXZlLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1zYXZlLWJhci9naW8tc2F2ZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxHLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBbUI3QixNQUFNLE9BQU8sbUJBQW1CO0lBakJoQztRQWtCUyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVFwQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRXRCOzs7V0FHRztRQUVJLGlCQUFZLEdBQWEsS0FBSyxDQUFDO1FBRy9CLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBS3BCLGtCQUFhLEdBQUcsSUFBSSxDQUFDO1FBTXRCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUd4QyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUdyQywwQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBNENuRDtJQTdFQyxJQUNXLFFBQVE7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDNUIsQ0FBQztJQWdDRCxJQUNXLE1BQU07UUFDZixJ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RSxTQUFTLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQztnQ0FDbkQsT0FBTyxDQUFDLHNDQUFzQyxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQzs2QkFDeEcsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIO2lCQUNGOzhCQUtZLFFBQVE7c0JBRGxCLFdBQVc7dUJBQUMsdUJBQXVCO2dCQU03QixNQUFNO3NCQURaLEtBQUs7Z0JBUUMsWUFBWTtzQkFEbEIsS0FBSztnQkFJQyxZQUFZO3NCQURsQixLQUFLO2dCQUlDLElBQUk7c0JBRFYsS0FBSztnQkFNQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBSUMsWUFBWTtzQkFEbEIsTUFBTTtnQkFJQSxTQUFTO3NCQURmLE1BQU07Z0JBSUEscUJBQXFCO3NCQUQzQixNQUFNO2dCQUlJLE1BQU07c0JBRGhCLFdBQVc7dUJBQUMsZUFBZTtnQkFxQnJCLG1CQUFtQjtzQkFEekIsWUFBWTt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyB0aW1lciB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnaW8tc2F2ZS1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2lvLXNhdmUtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ2lvLXNhdmUtYmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdzbGlkZVVwRG93bicsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDQwdmgpJywgb3BhY2l0eTogJzAnIH0pLFxuICAgICAgICBhbmltYXRlKCczMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSknLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCknLCBvcGFjaXR5OiAnMScgfSkpLFxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXG4gICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScsIG9wYWNpdHk6ICcxJyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDQwdmgpJywgb3BhY2l0eTogJzAnIH0pKSxcbiAgICAgIF0pLFxuICAgIF0pLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9TYXZlQmFyQ29tcG9uZW50IHtcbiAgcHVibGljIGlzU3VibWl0dGVkID0gZmFsc2U7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zYXZlLWJhci1zdGlja3knKVxuICBwdWJsaWMgZ2V0IGlzU3RpY2t5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5jcmVhdGlvbk1vZGU7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgb3BlbmVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSwgdGhlIHN1Ym1pdCBidXR0b24gaGF2ZSBpbnZhbGlkYXRlIGRpc3BsYXlcbiAgICogQW5kIG9uIHN1Ym1pdCBjbGlja2VkIHRoZSBvdXRwdXQgZXZlbnQgaXMgZW1pdCBvbiBzdWJtaXRJbnZhbGlkU3RhdGUgKGFuZCBub3Qgb24gc3VibWl0KVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGludmFsaWRTdGF0ZT86IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY3JlYXRpb25Nb2RlID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGZvcm0/OiBGb3JtR3JvdXA7XG5cbiAgcHJpdmF0ZSBoYXNTdWJtaXRMb2NrID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9ybUluaXRpYWxWYWx1ZXM/OiB1bmtub3duO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVzZXRDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc3VibWl0dGVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc3VibWl0dGVkSW52YWxpZFN0YXRlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtb3BlbicpXG4gIHB1YmxpYyBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLmNyZWF0aW9uTW9kZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZm9ybSkge1xuICAgICAgcmV0dXJuIHRoaXMuZm9ybS5kaXJ0eTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMub3BlbmVkO1xuICB9XG5cbiAgcHVibGljIG9uUmVzZXRDbGlja2VkKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZvcm0pIHtcbiAgICAgIHRoaXMuZm9ybS5yZXNldCh0aGlzLmZvcm1Jbml0aWFsVmFsdWVzKTtcbiAgICAgIHRoaXMuZm9ybS5tYXJrQXNQcmlzdGluZSgpO1xuICAgIH1cbiAgICB0aGlzLnJlc2V0Q2xpY2tlZC5lbWl0KCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkaXNhYmxlLXN1Ym1pdC1sb2NrJylcbiAgcHVibGljIG9uRGlzYWJsZVN1Ym1pdExvY2soKTogdm9pZCB7XG4gICAgdGhpcy5oYXNTdWJtaXRMb2NrID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBvblN1Ym1pdENsaWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKCh0aGlzLmZvcm0gJiYgdGhpcy5mb3JtLmludmFsaWQpIHx8IHRoaXMuaW52YWxpZFN0YXRlKSB7XG4gICAgICB0aGlzLmZvcm0/Lm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICAgIHRoaXMuc3VibWl0dGVkSW52YWxpZFN0YXRlLmVtaXQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc1N1Ym1pdHRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc3VibWl0dGVkLmVtaXQoKTtcbiAgICBpZiAodGhpcy5oYXNTdWJtaXRMb2NrKSB7XG4gICAgICB0aGlzLmlzU3VibWl0dGVkID0gdHJ1ZTtcbiAgICAgIHRpbWVyKDIwMDApLnN1YnNjcmliZSgoKSA9PiAodGhpcy5pc1N1Ym1pdHRlZCA9IGZhbHNlKSk7XG4gICAgfVxuICB9XG59XG4iLCI8IS0tXG5cbiAgICBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4tLT5cblxuPGRpdiAqbmdJZj1cImlzT3BlblwiIFtAc2xpZGVVcERvd25dIFtALmRpc2FibGVkXT1cImNyZWF0aW9uTW9kZVwiPlxuICA8bWF0LWNhcmQgY2xhc3M9XCJzYXZlLWJhcl9fY29udGVudFwiIFtjbGFzcy5tYXQtZWxldmF0aW9uLXozXT1cImNyZWF0aW9uTW9kZVwiIFtjbGFzcy5tYXQtZWxldmF0aW9uLXo2XT1cIiFjcmVhdGlvbk1vZGVcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2F2ZS1iYXJfX2NvbnRlbnRfX2xhYmVsXCI+e3sgY3JlYXRpb25Nb2RlID8gJycgOiAnWW91IGhhdmUgdW5zYXZlZCBjaGFuZ2VzJyB9fTwvZGl2PlxuICAgIDxkaXY+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwiIWNyZWF0aW9uTW9kZVwiIGNsYXNzPVwic2F2ZS1iYXJfX2NvbnRlbnRfX3Jlc2V0LWJ1dHRvblwiIG1hdC1idXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvblJlc2V0Q2xpY2tlZCgpXCI+XG4gICAgICAgIERpc2NhcmRcbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cInNhdmUtYmFyX19jb250ZW50X19zdWJtaXQtYnV0dG9uXCJcbiAgICAgICAgW2NsYXNzLmludmFsaWRdPVwiKGZvcm0gJiYgZm9ybS5pbnZhbGlkKSB8fCBpbnZhbGlkU3RhdGVcIlxuICAgICAgICBtYXQtZmxhdC1idXR0b25cbiAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgW3R5cGVdPVwiZm9ybSA/ICdzdWJtaXQnIDogJ2J1dHRvbidcIlxuICAgICAgICAoY2xpY2spPVwib25TdWJtaXRDbGlja2VkKClcIlxuICAgICAgPlxuICAgICAgICB7eyBjcmVhdGlvbk1vZGUgPyAnQ3JlYXRlJyA6ICdTYXZlJyB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvbWF0LWNhcmQ+XG48L2Rpdj5cbiJdfQ==
@@ -31,6 +31,8 @@ export class GioSaveBarHarness extends ComponentHarness {
31
31
  }
32
32
  clickSubmit() {
33
33
  return __awaiter(this, void 0, void 0, function* () {
34
+ const host = yield this.host();
35
+ yield host.dispatchEvent('disable-submit-lock');
34
36
  const submitButton = yield this.getSubmitButton();
35
37
  return submitButton.click();
36
38
  });
@@ -55,4 +57,4 @@ export class GioSaveBarHarness extends ComponentHarness {
55
57
  }
56
58
  }
57
59
  GioSaveBarHarness.hostSelector = 'gio-save-bar';
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXNhdmUtYmFyLmhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1zYXZlLWJhci9naW8tc2F2ZS1iYXIuaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRzs7QUFFSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsZ0JBQWdCO0lBQXZEOztRQUdtQix3QkFBbUIsR0FBRyxrQ0FBa0MsQ0FBQztRQUN6RCx5QkFBb0IsR0FBRyxtQ0FBbUMsQ0FBQztRQUVsRSxvQkFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDN0QsbUJBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBMEJ2RSxDQUFDO0lBeEJjLFNBQVM7O1lBQ3BCLE1BQU0sWUFBWSxHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLENBQUM7WUFDaEYsT0FBTyxZQUFZLEtBQUssSUFBSSxDQUFDO1FBQy9CLENBQUM7S0FBQTtJQUVZLFdBQVc7O1lBQ3RCLE1BQU0sWUFBWSxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ2xELE9BQU8sWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLENBQUM7S0FBQTtJQUVZLHFCQUFxQjs7WUFDaEMsTUFBTSxZQUFZLEdBQUcsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDbEQsT0FBTyxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLENBQUM7S0FBQTtJQUVZLG9CQUFvQjs7WUFDL0IsTUFBTSxZQUFZLEdBQUcsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsQ0FBQztZQUMvRSxPQUFPLFlBQVksS0FBSyxJQUFJLENBQUM7UUFDL0IsQ0FBQztLQUFBO0lBRVksVUFBVTs7WUFDckIsTUFBTSxXQUFXLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDaEQsT0FBTyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0IsQ0FBQztLQUFBOztBQS9CYSw4QkFBWSxHQUFHLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5cbmV4cG9ydCBjbGFzcyBHaW9TYXZlQmFySGFybmVzcyBleHRlbmRzIENvbXBvbmVudEhhcm5lc3Mge1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdnaW8tc2F2ZS1iYXInO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzZXRCdXR0b25TZWxlY3RvciA9ICcuc2F2ZS1iYXJfX2NvbnRlbnRfX3Jlc2V0LWJ1dHRvbic7XG4gIHByaXZhdGUgcmVhZG9ubHkgc3VibWl0QnV0dG9uU2VsZWN0b3IgPSAnLnNhdmUtYmFyX19jb250ZW50X19zdWJtaXQtYnV0dG9uJztcblxuICBwcm90ZWN0ZWQgZ2V0U3VibWl0QnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKHRoaXMuc3VibWl0QnV0dG9uU2VsZWN0b3IpO1xuICBwcm90ZWN0ZWQgZ2V0UmVzZXRCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3IodGhpcy5yZXNldEJ1dHRvblNlbGVjdG9yKTtcblxuICBwdWJsaWMgYXN5bmMgaXNWaXNpYmxlKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHN1Ym1pdEJ1dHRvbiA9IGF3YWl0IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKHRoaXMuc3VibWl0QnV0dG9uU2VsZWN0b3IpKCk7XG4gICAgcmV0dXJuIHN1Ym1pdEJ1dHRvbiAhPT0gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBjbGlja1N1Ym1pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBzdWJtaXRCdXR0b24gPSBhd2FpdCB0aGlzLmdldFN1Ym1pdEJ1dHRvbigpO1xuICAgIHJldHVybiBzdWJtaXRCdXR0b24uY2xpY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBpc1N1Ym1pdEJ1dHRvbkludmFsaWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3Qgc3VibWl0QnV0dG9uID0gYXdhaXQgdGhpcy5nZXRTdWJtaXRCdXR0b24oKTtcbiAgICByZXR1cm4gc3VibWl0QnV0dG9uLmhhc0NsYXNzKCdpbnZhbGlkJyk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgaXNSZXNldEJ1dHRvblZpc2libGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3Qgc3VibWl0QnV0dG9uID0gYXdhaXQgdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwodGhpcy5yZXNldEJ1dHRvblNlbGVjdG9yKSgpO1xuICAgIHJldHVybiBzdWJtaXRCdXR0b24gIT09IG51bGw7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgY2xpY2tSZXNldCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCByZXNldEJ1dHRvbiA9IGF3YWl0IHRoaXMuZ2V0UmVzZXRCdXR0b24oKTtcbiAgICByZXR1cm4gcmVzZXRCdXR0b24uY2xpY2soKTtcbiAgfVxufVxuIl19
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXNhdmUtYmFyLmhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1zYXZlLWJhci9naW8tc2F2ZS1iYXIuaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRzs7QUFFSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsZ0JBQWdCO0lBQXZEOztRQUdtQix3QkFBbUIsR0FBRyxrQ0FBa0MsQ0FBQztRQUN6RCx5QkFBb0IsR0FBRyxtQ0FBbUMsQ0FBQztRQUVsRSxvQkFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDN0QsbUJBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBNEJ2RSxDQUFDO0lBMUJjLFNBQVM7O1lBQ3BCLE1BQU0sWUFBWSxHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLENBQUM7WUFDaEYsT0FBTyxZQUFZLEtBQUssSUFBSSxDQUFDO1FBQy9CLENBQUM7S0FBQTtJQUVZLFdBQVc7O1lBQ3RCLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQ2hELE1BQU0sWUFBWSxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ2xELE9BQU8sWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLENBQUM7S0FBQTtJQUVZLHFCQUFxQjs7WUFDaEMsTUFBTSxZQUFZLEdBQUcsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDbEQsT0FBTyxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLENBQUM7S0FBQTtJQUVZLG9CQUFvQjs7WUFDL0IsTUFBTSxZQUFZLEdBQUcsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsQ0FBQztZQUMvRSxPQUFPLFlBQVksS0FBSyxJQUFJLENBQUM7UUFDL0IsQ0FBQztLQUFBO0lBRVksVUFBVTs7WUFDckIsTUFBTSxXQUFXLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDaEQsT0FBTyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0IsQ0FBQztLQUFBOztBQWpDYSw4QkFBWSxHQUFHLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5cbmV4cG9ydCBjbGFzcyBHaW9TYXZlQmFySGFybmVzcyBleHRlbmRzIENvbXBvbmVudEhhcm5lc3Mge1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdnaW8tc2F2ZS1iYXInO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzZXRCdXR0b25TZWxlY3RvciA9ICcuc2F2ZS1iYXJfX2NvbnRlbnRfX3Jlc2V0LWJ1dHRvbic7XG4gIHByaXZhdGUgcmVhZG9ubHkgc3VibWl0QnV0dG9uU2VsZWN0b3IgPSAnLnNhdmUtYmFyX19jb250ZW50X19zdWJtaXQtYnV0dG9uJztcblxuICBwcm90ZWN0ZWQgZ2V0U3VibWl0QnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKHRoaXMuc3VibWl0QnV0dG9uU2VsZWN0b3IpO1xuICBwcm90ZWN0ZWQgZ2V0UmVzZXRCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3IodGhpcy5yZXNldEJ1dHRvblNlbGVjdG9yKTtcblxuICBwdWJsaWMgYXN5bmMgaXNWaXNpYmxlKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHN1Ym1pdEJ1dHRvbiA9IGF3YWl0IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKHRoaXMuc3VibWl0QnV0dG9uU2VsZWN0b3IpKCk7XG4gICAgcmV0dXJuIHN1Ym1pdEJ1dHRvbiAhPT0gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBjbGlja1N1Ym1pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBob3N0ID0gYXdhaXQgdGhpcy5ob3N0KCk7XG4gICAgYXdhaXQgaG9zdC5kaXNwYXRjaEV2ZW50KCdkaXNhYmxlLXN1Ym1pdC1sb2NrJyk7XG4gICAgY29uc3Qgc3VibWl0QnV0dG9uID0gYXdhaXQgdGhpcy5nZXRTdWJtaXRCdXR0b24oKTtcbiAgICByZXR1cm4gc3VibWl0QnV0dG9uLmNsaWNrKCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgaXNTdWJtaXRCdXR0b25JbnZhbGlkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHN1Ym1pdEJ1dHRvbiA9IGF3YWl0IHRoaXMuZ2V0U3VibWl0QnV0dG9uKCk7XG4gICAgcmV0dXJuIHN1Ym1pdEJ1dHRvbi5oYXNDbGFzcygnaW52YWxpZCcpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGlzUmVzZXRCdXR0b25WaXNpYmxlKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHN1Ym1pdEJ1dHRvbiA9IGF3YWl0IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKHRoaXMucmVzZXRCdXR0b25TZWxlY3RvcikoKTtcbiAgICByZXR1cm4gc3VibWl0QnV0dG9uICE9PSBudWxsO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGNsaWNrUmVzZXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcmVzZXRCdXR0b24gPSBhd2FpdCB0aGlzLmdldFJlc2V0QnV0dG9uKCk7XG4gICAgcmV0dXJuIHJlc2V0QnV0dG9uLmNsaWNrKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { trigger, transition, style, animate } from '@angular/animations';
2
2
  import * as i0 from '@angular/core';
3
- import { EventEmitter, Component, HostBinding, Input, Output, NgModule, Optional, Self, ViewChild, Directive, Inject, forwardRef, ChangeDetectionStrategy, Injectable, HostListener, ViewEncapsulation } from '@angular/core';
3
+ import { EventEmitter, Component, HostBinding, Input, Output, HostListener, NgModule, Optional, Self, ViewChild, Directive, Inject, forwardRef, ChangeDetectionStrategy, Injectable, ViewEncapsulation } from '@angular/core';
4
4
  import { timer, Subject, fromEvent, of, BehaviorSubject, combineLatest } from 'rxjs';
5
5
  import * as i1 from '@angular/material/card';
6
6
  import { MatCardModule } from '@angular/material/card';
@@ -69,6 +69,7 @@ class GioSaveBarComponent {
69
69
  */
70
70
  this.invalidState = false;
71
71
  this.creationMode = false;
72
+ this.hasSubmitLock = true;
72
73
  this.resetClicked = new EventEmitter();
73
74
  this.submitted = new EventEmitter();
74
75
  this.submittedInvalidState = new EventEmitter();
@@ -92,6 +93,9 @@ class GioSaveBarComponent {
92
93
  }
93
94
  this.resetClicked.emit();
94
95
  }
96
+ onDisableSubmitLock() {
97
+ this.hasSubmitLock = true;
98
+ }
95
99
  onSubmitClicked() {
96
100
  var _a;
97
101
  if ((this.form && this.form.invalid) || this.invalidState) {
@@ -99,15 +103,18 @@ class GioSaveBarComponent {
99
103
  this.submittedInvalidState.emit();
100
104
  return;
101
105
  }
102
- if (!this.isSubmitted) {
103
- this.submitted.emit();
106
+ if (this.isSubmitted) {
107
+ return;
108
+ }
109
+ this.submitted.emit();
110
+ if (this.hasSubmitLock) {
104
111
  this.isSubmitted = true;
105
112
  timer(2000).subscribe(() => (this.isSubmitted = false));
106
113
  }
107
114
  }
108
115
  }
109
116
  GioSaveBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: GioSaveBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
110
- GioSaveBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: GioSaveBarComponent, selector: "gio-save-bar", inputs: { opened: "opened", invalidState: "invalidState", creationMode: "creationMode", form: "form", formInitialValues: "formInitialValues" }, outputs: { resetClicked: "resetClicked", submitted: "submitted", submittedInvalidState: "submittedInvalidState" }, host: { properties: { "class.save-bar-sticky": "this.isSticky", "class.is-open": "this.isOpen" } }, 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\n<div *ngIf=\"isOpen\" [@slideUpDown] [@.disabled]=\"creationMode\">\n <mat-card class=\"save-bar__content\" [class.mat-elevation-z3]=\"creationMode\" [class.mat-elevation-z6]=\"!creationMode\">\n <div class=\"save-bar__content__label\">{{ creationMode ? '' : 'You have unsaved changes' }}</div>\n <div>\n <button *ngIf=\"!creationMode\" class=\"save-bar__content__reset-button\" mat-button type=\"button\" (click)=\"onResetClicked()\">\n Discard\n </button>\n <button\n class=\"save-bar__content__submit-button\"\n [class.invalid]=\"(form && form.invalid) || invalidState\"\n mat-flat-button\n color=\"primary\"\n [type]=\"form ? 'submit' : 'button'\"\n (click)=\"onSubmitClicked()\"\n >\n {{ creationMode ? 'Create' : 'Save' }}\n </button>\n </div>\n </mat-card>\n</div>\n", styles: [":host{z-index:1000;display:block;height:68px;margin-top:32px;visibility:hidden}:host.is-open{visibility:visible}:host(.save-bar-sticky){position:sticky;bottom:0;margin-right:-16px;margin-left:-16px}.save-bar__content{display:flex;height:100%;align-items:center;justify-content:space-between;padding:16px 24px}.save-bar__content__label{font:400 14px / 20px \"Golos UI\",Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:.4px}.save-bar__content__reset-button{margin-right:16px}.save-bar__content__submit-button.invalid{background-color:#d6ffff;color:#000}.save-bar__content__submit-button.invalid:hover:enabled{background-color:#099;color:#fff}\n"], components: [{ type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { 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"] }], directives: [{ type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
117
+ GioSaveBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: GioSaveBarComponent, selector: "gio-save-bar", inputs: { opened: "opened", invalidState: "invalidState", creationMode: "creationMode", form: "form", formInitialValues: "formInitialValues" }, outputs: { resetClicked: "resetClicked", submitted: "submitted", submittedInvalidState: "submittedInvalidState" }, host: { listeners: { "disable-submit-lock": "onDisableSubmitLock()" }, properties: { "class.save-bar-sticky": "this.isSticky", "class.is-open": "this.isOpen" } }, 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\n<div *ngIf=\"isOpen\" [@slideUpDown] [@.disabled]=\"creationMode\">\n <mat-card class=\"save-bar__content\" [class.mat-elevation-z3]=\"creationMode\" [class.mat-elevation-z6]=\"!creationMode\">\n <div class=\"save-bar__content__label\">{{ creationMode ? '' : 'You have unsaved changes' }}</div>\n <div>\n <button *ngIf=\"!creationMode\" class=\"save-bar__content__reset-button\" mat-button type=\"button\" (click)=\"onResetClicked()\">\n Discard\n </button>\n <button\n class=\"save-bar__content__submit-button\"\n [class.invalid]=\"(form && form.invalid) || invalidState\"\n mat-flat-button\n color=\"primary\"\n [type]=\"form ? 'submit' : 'button'\"\n (click)=\"onSubmitClicked()\"\n >\n {{ creationMode ? 'Create' : 'Save' }}\n </button>\n </div>\n </mat-card>\n</div>\n", styles: [":host{z-index:1000;display:block;height:68px;margin-top:32px;visibility:hidden}:host.is-open{visibility:visible}:host(.save-bar-sticky){position:sticky;bottom:0;margin-right:-16px;margin-left:-16px}.save-bar__content{display:flex;height:100%;align-items:center;justify-content:space-between;padding:16px 24px}.save-bar__content__label{font:400 14px / 20px \"Golos UI\",Roboto,\"Helvetica Neue\",sans-serif;letter-spacing:.4px}.save-bar__content__reset-button{margin-right:16px}.save-bar__content__submit-button.invalid{background-color:#d6ffff;color:#000}.save-bar__content__submit-button.invalid:hover:enabled{background-color:#099;color:#fff}\n"], components: [{ type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { 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"] }], directives: [{ type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
111
118
  trigger('slideUpDown', [
112
119
  transition(':enter', [
113
120
  style({ transform: 'translateY(40vh)', opacity: '0' }),
@@ -160,6 +167,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
160
167
  }], isOpen: [{
161
168
  type: HostBinding,
162
169
  args: ['class.is-open']
170
+ }], onDisableSubmitLock: [{
171
+ type: HostListener,
172
+ args: ['disable-submit-lock']
163
173
  }] } });
164
174
 
165
175
  /*
@@ -223,6 +233,8 @@ class GioSaveBarHarness extends ComponentHarness {
223
233
  }
224
234
  clickSubmit() {
225
235
  return __awaiter(this, void 0, void 0, function* () {
236
+ const host = yield this.host();
237
+ yield host.dispatchEvent('disable-submit-lock');
226
238
  const submitButton = yield this.getSubmitButton();
227
239
  return submitButton.click();
228
240
  });