@netgrif/components 6.4.0-rc.5 → 6.4.0-rc.7
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.
- package/esm2020/lib/view/case-view/components/create-case-button/create-case-button.component.mjs +6 -4
- package/fesm2015/netgrif-components.mjs +6 -4
- package/fesm2015/netgrif-components.mjs.map +1 -1
- package/fesm2020/netgrif-components.mjs +5 -4
- package/fesm2020/netgrif-components.mjs.map +1 -1
- package/lib/view/case-view/components/create-case-button/create-case-button.component.d.ts +1 -1
- package/package.json +2 -2
package/esm2020/lib/view/case-view/components/create-case-button/create-case-button.component.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import { LoadingEmitter } from '@netgrif/components-core';
|
|
3
|
+
import { map } from "rxjs/operators";
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
import * as i1 from "@netgrif/components-core";
|
|
5
6
|
import * as i2 from "@angular/material/button";
|
|
@@ -28,7 +29,8 @@ export class CreateCaseButtonComponent {
|
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
31
|
shouldShowCreateButton() {
|
|
31
|
-
|
|
32
|
+
const blockNets = this.newCaseCreationConfig?.blockNets || [];
|
|
33
|
+
return this._caseViewService.getNewCaseAllowedNets(blockNets).pipe(map(allowedNets => allowedNets.length > 0));
|
|
32
34
|
}
|
|
33
35
|
createNewCase() {
|
|
34
36
|
let myCase;
|
|
@@ -48,10 +50,10 @@ export class CreateCaseButtonComponent {
|
|
|
48
50
|
}
|
|
49
51
|
}
|
|
50
52
|
CreateCaseButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CreateCaseButtonComponent, deps: [{ token: i1.CaseViewService }], target: i0.ɵɵFactoryTarget.Component });
|
|
51
|
-
CreateCaseButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: CreateCaseButtonComponent, selector: "nc-create-case-button", inputs: { newCaseCreationConfig: "newCaseCreationConfig", disabled: "disabled" }, outputs: { caseCreatedEvent: "caseCreatedEvent" }, ngImport: i0, template: "<!-- Button without title -->\n<button *ngIf=\"!resolvedCaseButtonTitle && shouldShowCreateButton(); else titleButton\"
|
|
53
|
+
CreateCaseButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: CreateCaseButtonComponent, selector: "nc-create-case-button", inputs: { newCaseCreationConfig: "newCaseCreationConfig", disabled: "disabled" }, outputs: { caseCreatedEvent: "caseCreatedEvent" }, ngImport: i0, template: "<!-- Button without title -->\n<button *ngIf=\"(!resolvedCaseButtonTitle && (shouldShowCreateButton() | async)); else titleButton\"\n class=\"create-case-mat-mini-fab\"\n mat-mini-fab color=\"primary\" (click)=\"createNewCase()\"\n [class.spinner]=\"loading$ | async\" [disabled]=\"(loading$ | async) || disabled\">\n <mat-icon *ngIf=\"(loading$ | async) === false\" class=\"net-upload\" aria-hidden=\"false\">\n {{ !!resolvedCaseButtonIcon ? resolvedCaseButtonIcon : 'add' }}\n </mat-icon>\n</button>\n\n<!-- Button with title -->\n<ng-template #titleButton>\n <button *ngIf=\"shouldShowCreateButton() | async\" mat-flat-button class=\"height-44\" color=\"primary\"\n (click)=\"createNewCase()\" [class.spinner]=\"loading$ | async\"\n [disabled]=\"(loading$ | async) || disabled\">\n <mat-icon *ngIf=\"!!resolvedCaseButtonIcon && (loading$ | async) === false\" class=\"button-icon\"\n aria-hidden=\"false\">\n {{ resolvedCaseButtonIcon }}\n </mat-icon>\n <span *ngIf=\"(loading$ | async) === false\">{{ resolvedCaseButtonTitle }}</span>\n </button>\n</ng-template>\n", styles: [".button-icon{padding-right:4px;padding-bottom:2px}.height-44{height:44px}.create-case-mat-mini-fab{border-radius:6px;box-shadow:none;height:44px!important;min-width:44px;margin-right:8px;margin-top:2px}@keyframes spinner{to{transform:rotate(360deg)}}.spinner:before{content:\"\";box-sizing:border-box;position:absolute;top:50%;left:50%;width:20px;height:20px;margin-top:-10px;margin-left:-10px;border-radius:50%;border:2px solid #ffffff;border-top-color:#000;animation:spinner .8s linear infinite}\n"], components: [{ 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: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4.AsyncPipe } });
|
|
52
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CreateCaseButtonComponent, decorators: [{
|
|
53
55
|
type: Component,
|
|
54
|
-
args: [{ selector: 'nc-create-case-button', template: "<!-- Button without title -->\n<button *ngIf=\"!resolvedCaseButtonTitle && shouldShowCreateButton(); else titleButton\"
|
|
56
|
+
args: [{ selector: 'nc-create-case-button', template: "<!-- Button without title -->\n<button *ngIf=\"(!resolvedCaseButtonTitle && (shouldShowCreateButton() | async)); else titleButton\"\n class=\"create-case-mat-mini-fab\"\n mat-mini-fab color=\"primary\" (click)=\"createNewCase()\"\n [class.spinner]=\"loading$ | async\" [disabled]=\"(loading$ | async) || disabled\">\n <mat-icon *ngIf=\"(loading$ | async) === false\" class=\"net-upload\" aria-hidden=\"false\">\n {{ !!resolvedCaseButtonIcon ? resolvedCaseButtonIcon : 'add' }}\n </mat-icon>\n</button>\n\n<!-- Button with title -->\n<ng-template #titleButton>\n <button *ngIf=\"shouldShowCreateButton() | async\" mat-flat-button class=\"height-44\" color=\"primary\"\n (click)=\"createNewCase()\" [class.spinner]=\"loading$ | async\"\n [disabled]=\"(loading$ | async) || disabled\">\n <mat-icon *ngIf=\"!!resolvedCaseButtonIcon && (loading$ | async) === false\" class=\"button-icon\"\n aria-hidden=\"false\">\n {{ resolvedCaseButtonIcon }}\n </mat-icon>\n <span *ngIf=\"(loading$ | async) === false\">{{ resolvedCaseButtonTitle }}</span>\n </button>\n</ng-template>\n", styles: [".button-icon{padding-right:4px;padding-bottom:2px}.height-44{height:44px}.create-case-mat-mini-fab{border-radius:6px;box-shadow:none;height:44px!important;min-width:44px;margin-right:8px;margin-top:2px}@keyframes spinner{to{transform:rotate(360deg)}}.spinner:before{content:\"\";box-sizing:border-box;position:absolute;top:50%;left:50%;width:20px;height:20px;margin-top:-10px;margin-left:-10px;border-radius:50%;border:2px solid #ffffff;border-top-color:#000;animation:spinner .8s linear infinite}\n"] }]
|
|
55
57
|
}], ctorParameters: function () { return [{ type: i1.CaseViewService }]; }, propDecorators: { caseCreatedEvent: [{
|
|
56
58
|
type: Output
|
|
57
59
|
}], newCaseCreationConfig: [{
|
|
@@ -59,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
59
61
|
}], disabled: [{
|
|
60
62
|
type: Input
|
|
61
63
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNhc2UtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL3ZpZXcvY2FzZS12aWV3L2NvbXBvbmVudHMvY3JlYXRlLWNhc2UtYnV0dG9uL2NyZWF0ZS1jYXNlLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMvc3JjL2xpYi92aWV3L2Nhc2Utdmlldy9jb21wb25lbnRzL2NyZWF0ZS1jYXNlLWJ1dHRvbi9jcmVhdGUtY2FzZS1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU3RSxPQUFPLEVBS0gsY0FBYyxFQUNqQixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBT25DLE1BQU0sT0FBTyx5QkFBeUI7SUFVbEMsWUFBc0IsZ0JBQWlDO1FBQWpDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFSdEMscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQVN6RCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLHNCQUFzQjtRQUN0QixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxRQUFRO1FBQ0osTUFBTSxNQUFNLEdBQStCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzdGLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUM7WUFDM0QsSUFBSSxDQUFDLHdCQUF3QixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQztTQUNoRTtJQUNMLENBQUM7SUFFTSxzQkFBc0I7UUFDekIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixFQUFFLFNBQVMsSUFBSSxFQUFFLENBQUM7UUFDOUQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUM5RCxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUM3QyxDQUFDO0lBQ04sQ0FBQztJQUVNLGFBQWE7UUFDaEIsSUFBSSxNQUF3QixDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDbkIsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsZUFBZSxLQUFLLEtBQUssSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDM0csTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztTQUNuRjthQUFNO1lBQ0gsTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7U0FDNUU7UUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3BCLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDekMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNwQztRQUNMLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxHQUFFLENBQUMsRUFBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFFMUMsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzs7dUhBeERRLHlCQUF5QjsyR0FBekIseUJBQXlCLGtNQ2hCdEMsNHBDQXNCQTs0RkROYSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0ksdUJBQXVCO3NHQU1oQixnQkFBZ0I7c0JBQWhDLE1BQU07Z0JBQ1MscUJBQXFCO3NCQUFwQyxLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgQ2FzZSxcbiAgICBDYXNlVmlld1NlcnZpY2UsXG4gICAgTmV3Q2FzZUNyZWF0aW9uQ29uZmlndXJhdGlvbkRhdGEsXG4gICAgTmV3Q2FzZUJ1dHRvbkNvbmZpZ3VyYXRpb24sXG4gICAgTG9hZGluZ0VtaXR0ZXJcbn0gZnJvbSAnQG5ldGdyaWYvY29tcG9uZW50cy1jb3JlJztcbmltcG9ydCB7bWFwfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYy1jcmVhdGUtY2FzZS1idXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jcmVhdGUtY2FzZS1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NyZWF0ZS1jYXNlLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENyZWF0ZUNhc2VCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgQE91dHB1dCgpIHB1YmxpYyBjYXNlQ3JlYXRlZEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxDYXNlPigpO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBuZXdDYXNlQ3JlYXRpb25Db25maWc6IE5ld0Nhc2VDcmVhdGlvbkNvbmZpZ3VyYXRpb25EYXRhO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIHByb3RlY3RlZCBfcmVzb2x2ZWRDYXNlQnV0dG9uVGl0bGU6IHN0cmluZztcbiAgICBwcm90ZWN0ZWQgX3Jlc29sdmVkQ2FzZUJ1dHRvbkljb246IHN0cmluZztcbiAgICBwcm90ZWN0ZWQgX2xvYWRpbmc6IExvYWRpbmdFbWl0dGVyO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9jYXNlVmlld1NlcnZpY2U6IENhc2VWaWV3U2VydmljZSkge1xuICAgICAgICB0aGlzLl9sb2FkaW5nID0gbmV3IExvYWRpbmdFbWl0dGVyKCk7XG4gICAgfVxuXG4gICAgZ2V0IHJlc29sdmVkQ2FzZUJ1dHRvblRpdGxlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNvbHZlZENhc2VCdXR0b25UaXRsZTtcbiAgICB9XG5cbiAgICBnZXQgcmVzb2x2ZWRDYXNlQnV0dG9uSWNvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzb2x2ZWRDYXNlQnV0dG9uSWNvbjtcbiAgICB9XG5cbiAgICBnZXQgbG9hZGluZyQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sb2FkaW5nO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb25maWc6IE5ld0Nhc2VCdXR0b25Db25maWd1cmF0aW9uID0gdGhpcy5uZXdDYXNlQ3JlYXRpb25Db25maWdbJ25ld0Nhc2VCdXR0b25Db25maWcnXTtcbiAgICAgICAgaWYgKCEhY29uZmlnKSB7XG4gICAgICAgICAgICB0aGlzLl9yZXNvbHZlZENhc2VCdXR0b25JY29uID0gY29uZmlnLmNyZWF0ZUNhc2VCdXR0b25JY29uO1xuICAgICAgICAgICAgdGhpcy5fcmVzb2x2ZWRDYXNlQnV0dG9uVGl0bGUgPSBjb25maWcuY3JlYXRlQ2FzZUJ1dHRvblRpdGxlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNob3VsZFNob3dDcmVhdGVCdXR0b24oKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIGNvbnN0IGJsb2NrTmV0cyA9IHRoaXMubmV3Q2FzZUNyZWF0aW9uQ29uZmlnPy5ibG9ja05ldHMgfHwgW107XG4gICAgICAgIHJldHVybiB0aGlzLl9jYXNlVmlld1NlcnZpY2UuZ2V0TmV3Q2FzZUFsbG93ZWROZXRzKGJsb2NrTmV0cykucGlwZShcbiAgICAgICAgICAgIG1hcChhbGxvd2VkTmV0cyA9PiBhbGxvd2VkTmV0cy5sZW5ndGggPiAwKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBjcmVhdGVOZXdDYXNlKCk6IE9ic2VydmFibGU8Q2FzZT4ge1xuICAgICAgICBsZXQgbXlDYXNlOiBPYnNlcnZhYmxlPENhc2U+O1xuICAgICAgICB0aGlzLl9sb2FkaW5nLm9uKCk7XG4gICAgICAgIGlmICh0aGlzLm5ld0Nhc2VDcmVhdGlvbkNvbmZpZy5lbmFibGVDYXNlVGl0bGUgPT09IGZhbHNlICYmIHRoaXMuX2Nhc2VWaWV3U2VydmljZS5nZXRBbGxvd2VkTmV0c0NvdW50KCkgPT09IDEpIHtcbiAgICAgICAgICAgIG15Q2FzZSA9IHRoaXMuX2Nhc2VWaWV3U2VydmljZS5jcmVhdGVEZWZhdWx0TmV3Q2FzZSh0aGlzLm5ld0Nhc2VDcmVhdGlvbkNvbmZpZyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBteUNhc2UgPSB0aGlzLl9jYXNlVmlld1NlcnZpY2UuY3JlYXRlTmV3Q2FzZSh0aGlzLm5ld0Nhc2VDcmVhdGlvbkNvbmZpZyk7XG4gICAgICAgIH1cbiAgICAgICAgbXlDYXNlLnN1YnNjcmliZShrYXplID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9jYXNlVmlld1NlcnZpY2Uudmlld0VuYWJsZWQoa2F6ZSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhc2VDcmVhdGVkRXZlbnQubmV4dChrYXplKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgZXJyb3IgPT4ge30sKCkgPT4gdGhpcy5fbG9hZGluZy5vZmYoKSk7XG5cbiAgICAgICAgcmV0dXJuIG15Q2FzZTtcbiAgICB9XG5cbn1cbiIsIjwhLS0gQnV0dG9uIHdpdGhvdXQgdGl0bGUgLS0+XG48YnV0dG9uICpuZ0lmPVwiKCFyZXNvbHZlZENhc2VCdXR0b25UaXRsZSAmJiAoc2hvdWxkU2hvd0NyZWF0ZUJ1dHRvbigpIHwgYXN5bmMpKTsgZWxzZSB0aXRsZUJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiY3JlYXRlLWNhc2UtbWF0LW1pbmktZmFiXCJcbiAgICAgICAgbWF0LW1pbmktZmFiIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJjcmVhdGVOZXdDYXNlKClcIlxuICAgICAgICBbY2xhc3Muc3Bpbm5lcl09XCJsb2FkaW5nJCB8IGFzeW5jXCIgW2Rpc2FibGVkXT1cIihsb2FkaW5nJCB8IGFzeW5jKSB8fCBkaXNhYmxlZFwiPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cIihsb2FkaW5nJCB8IGFzeW5jKSA9PT0gZmFsc2VcIiBjbGFzcz1cIm5ldC11cGxvYWRcIiBhcmlhLWhpZGRlbj1cImZhbHNlXCI+XG4gICAgICAgIHt7ICEhcmVzb2x2ZWRDYXNlQnV0dG9uSWNvbiA/IHJlc29sdmVkQ2FzZUJ1dHRvbkljb24gOiAnYWRkJyB9fVxuICAgIDwvbWF0LWljb24+XG48L2J1dHRvbj5cblxuPCEtLSBCdXR0b24gd2l0aCB0aXRsZSAtLT5cbjxuZy10ZW1wbGF0ZSAjdGl0bGVCdXR0b24+XG4gICAgPGJ1dHRvbiAqbmdJZj1cInNob3VsZFNob3dDcmVhdGVCdXR0b24oKSB8IGFzeW5jXCIgbWF0LWZsYXQtYnV0dG9uIGNsYXNzPVwiaGVpZ2h0LTQ0XCIgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIChjbGljayk9XCJjcmVhdGVOZXdDYXNlKClcIiBbY2xhc3Muc3Bpbm5lcl09XCJsb2FkaW5nJCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCIobG9hZGluZyQgfCBhc3luYykgfHwgZGlzYWJsZWRcIj5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiISFyZXNvbHZlZENhc2VCdXR0b25JY29uICYmIChsb2FkaW5nJCB8IGFzeW5jKSA9PT0gZmFsc2VcIiBjbGFzcz1cImJ1dHRvbi1pY29uXCJcbiAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwiZmFsc2VcIj5cbiAgICAgICAgICAgIHt7IHJlc29sdmVkQ2FzZUJ1dHRvbkljb24gfX1cbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIobG9hZGluZyQgfCBhc3luYykgPT09IGZhbHNlXCI+e3sgcmVzb2x2ZWRDYXNlQnV0dG9uVGl0bGUgfX08L3NwYW4+XG4gICAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -32,7 +32,7 @@ import * as i2$2 from '@angular/router';
|
|
|
32
32
|
import { RouterModule, ActivatedRoute } from '@angular/router';
|
|
33
33
|
import * as i1$3 from '@angular/material/dialog';
|
|
34
34
|
import { MatDialogModule, MAT_DIALOG_DATA, MatDialog } from '@angular/material/dialog';
|
|
35
|
-
import { take,
|
|
35
|
+
import { take, map, filter, tap, startWith } from 'rxjs/operators';
|
|
36
36
|
import { FlexModule, FlexLayoutModule } from '@angular/flex-layout';
|
|
37
37
|
import * as i3$3 from '@angular/platform-browser';
|
|
38
38
|
import { BrowserModule } from '@angular/platform-browser';
|
|
@@ -3131,7 +3131,9 @@ class CreateCaseButtonComponent {
|
|
|
3131
3131
|
}
|
|
3132
3132
|
}
|
|
3133
3133
|
shouldShowCreateButton() {
|
|
3134
|
-
|
|
3134
|
+
var _a;
|
|
3135
|
+
const blockNets = ((_a = this.newCaseCreationConfig) === null || _a === void 0 ? void 0 : _a.blockNets) || [];
|
|
3136
|
+
return this._caseViewService.getNewCaseAllowedNets(blockNets).pipe(map(allowedNets => allowedNets.length > 0));
|
|
3135
3137
|
}
|
|
3136
3138
|
createNewCase() {
|
|
3137
3139
|
let myCase;
|
|
@@ -3151,10 +3153,10 @@ class CreateCaseButtonComponent {
|
|
|
3151
3153
|
}
|
|
3152
3154
|
}
|
|
3153
3155
|
CreateCaseButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CreateCaseButtonComponent, deps: [{ token: i1.CaseViewService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3154
|
-
CreateCaseButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: CreateCaseButtonComponent, selector: "nc-create-case-button", inputs: { newCaseCreationConfig: "newCaseCreationConfig", disabled: "disabled" }, outputs: { caseCreatedEvent: "caseCreatedEvent" }, ngImport: i0, template: "<!-- Button without title -->\n<button *ngIf=\"!resolvedCaseButtonTitle && shouldShowCreateButton(); else titleButton\"
|
|
3156
|
+
CreateCaseButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: CreateCaseButtonComponent, selector: "nc-create-case-button", inputs: { newCaseCreationConfig: "newCaseCreationConfig", disabled: "disabled" }, outputs: { caseCreatedEvent: "caseCreatedEvent" }, ngImport: i0, template: "<!-- Button without title -->\n<button *ngIf=\"(!resolvedCaseButtonTitle && (shouldShowCreateButton() | async)); else titleButton\"\n class=\"create-case-mat-mini-fab\"\n mat-mini-fab color=\"primary\" (click)=\"createNewCase()\"\n [class.spinner]=\"loading$ | async\" [disabled]=\"(loading$ | async) || disabled\">\n <mat-icon *ngIf=\"(loading$ | async) === false\" class=\"net-upload\" aria-hidden=\"false\">\n {{ !!resolvedCaseButtonIcon ? resolvedCaseButtonIcon : 'add' }}\n </mat-icon>\n</button>\n\n<!-- Button with title -->\n<ng-template #titleButton>\n <button *ngIf=\"shouldShowCreateButton() | async\" mat-flat-button class=\"height-44\" color=\"primary\"\n (click)=\"createNewCase()\" [class.spinner]=\"loading$ | async\"\n [disabled]=\"(loading$ | async) || disabled\">\n <mat-icon *ngIf=\"!!resolvedCaseButtonIcon && (loading$ | async) === false\" class=\"button-icon\"\n aria-hidden=\"false\">\n {{ resolvedCaseButtonIcon }}\n </mat-icon>\n <span *ngIf=\"(loading$ | async) === false\">{{ resolvedCaseButtonTitle }}</span>\n </button>\n</ng-template>\n", styles: [".button-icon{padding-right:4px;padding-bottom:2px}.height-44{height:44px}.create-case-mat-mini-fab{border-radius:6px;box-shadow:none;height:44px!important;min-width:44px;margin-right:8px;margin-top:2px}@keyframes spinner{to{transform:rotate(360deg)}}.spinner:before{content:\"\";box-sizing:border-box;position:absolute;top:50%;left:50%;width:20px;height:20px;margin-top:-10px;margin-left:-10px;border-radius:50%;border:2px solid #ffffff;border-top-color:#000;animation:spinner .8s linear infinite}\n"], components: [{ type: i4.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: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe } });
|
|
3155
3157
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CreateCaseButtonComponent, decorators: [{
|
|
3156
3158
|
type: Component,
|
|
3157
|
-
args: [{ selector: 'nc-create-case-button', template: "<!-- Button without title -->\n<button *ngIf=\"!resolvedCaseButtonTitle && shouldShowCreateButton(); else titleButton\"
|
|
3159
|
+
args: [{ selector: 'nc-create-case-button', template: "<!-- Button without title -->\n<button *ngIf=\"(!resolvedCaseButtonTitle && (shouldShowCreateButton() | async)); else titleButton\"\n class=\"create-case-mat-mini-fab\"\n mat-mini-fab color=\"primary\" (click)=\"createNewCase()\"\n [class.spinner]=\"loading$ | async\" [disabled]=\"(loading$ | async) || disabled\">\n <mat-icon *ngIf=\"(loading$ | async) === false\" class=\"net-upload\" aria-hidden=\"false\">\n {{ !!resolvedCaseButtonIcon ? resolvedCaseButtonIcon : 'add' }}\n </mat-icon>\n</button>\n\n<!-- Button with title -->\n<ng-template #titleButton>\n <button *ngIf=\"shouldShowCreateButton() | async\" mat-flat-button class=\"height-44\" color=\"primary\"\n (click)=\"createNewCase()\" [class.spinner]=\"loading$ | async\"\n [disabled]=\"(loading$ | async) || disabled\">\n <mat-icon *ngIf=\"!!resolvedCaseButtonIcon && (loading$ | async) === false\" class=\"button-icon\"\n aria-hidden=\"false\">\n {{ resolvedCaseButtonIcon }}\n </mat-icon>\n <span *ngIf=\"(loading$ | async) === false\">{{ resolvedCaseButtonTitle }}</span>\n </button>\n</ng-template>\n", styles: [".button-icon{padding-right:4px;padding-bottom:2px}.height-44{height:44px}.create-case-mat-mini-fab{border-radius:6px;box-shadow:none;height:44px!important;min-width:44px;margin-right:8px;margin-top:2px}@keyframes spinner{to{transform:rotate(360deg)}}.spinner:before{content:\"\";box-sizing:border-box;position:absolute;top:50%;left:50%;width:20px;height:20px;margin-top:-10px;margin-left:-10px;border-radius:50%;border:2px solid #ffffff;border-top-color:#000;animation:spinner .8s linear infinite}\n"] }]
|
|
3158
3160
|
}], ctorParameters: function () { return [{ type: i1.CaseViewService }]; }, propDecorators: { caseCreatedEvent: [{
|
|
3159
3161
|
type: Output
|
|
3160
3162
|
}], newCaseCreationConfig: [{
|