survey-angular-ui 2.5.23 → 2.5.25

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.
@@ -4,6 +4,7 @@ export declare class PaneldynamicAction {
4
4
  data: any;
5
5
  model: Action;
6
6
  get question(): QuestionPanelDynamicModel;
7
+ get isActionEnabled(): boolean;
7
8
  static ɵfac: i0.ɵɵFactoryDeclaration<PaneldynamicAction, never>;
8
9
  static ɵcmp: i0.ɵɵComponentDeclaration<PaneldynamicAction, "ng-component", never, { "data": "data"; "model": "model"; }, {}, never, never>;
9
10
  }
@@ -2,6 +2,7 @@ import { PaneldynamicAction } from "./paneldynamic-add-btn.component";
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class PaneldynamicRemoveButtonComponent extends PaneldynamicAction {
4
4
  get panel(): any;
5
+ removePanelClick(): void;
5
6
  static ɵfac: i0.ɵɵFactoryDeclaration<PaneldynamicRemoveButtonComponent, never>;
6
7
  static ɵcmp: i0.ɵɵComponentDeclaration<PaneldynamicRemoveButtonComponent, "sv-ng-paneldynamic-remove-btn", never, {}, {}, never, never>;
7
8
  }
@@ -7,6 +7,9 @@ export class PaneldynamicAction {
7
7
  get question() {
8
8
  return (this.model && this.model.data.question) || this.data.question;
9
9
  }
10
+ get isActionEnabled() {
11
+ return !this.model || this.model.enabled !== false;
12
+ }
10
13
  }
11
14
  PaneldynamicAction.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaneldynamicAction, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
15
  PaneldynamicAction.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PaneldynamicAction, selector: "ng-component", inputs: { data: "data", model: "model" }, ngImport: i0, template: "", isInline: true });
@@ -23,11 +26,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
23
26
  }] } });
24
27
  export class PanelDynamicAddBtn extends PaneldynamicAction {
25
28
  addPanelClick() {
29
+ if (!this.isActionEnabled)
30
+ return;
26
31
  this.question.addPanelUI();
27
32
  }
28
33
  }
29
34
  PanelDynamicAddBtn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PanelDynamicAddBtn, deps: null, target: i0.ɵɵFactoryTarget.Component });
30
- PanelDynamicAddBtn.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PanelDynamicAddBtn, selector: "sv-ng-paneldynamic-add-btn", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" [id]=\"question.addButtonId\" *ngIf=\"question.canAddPanel\" [class]=\"question.getAddButtonCss()\" (click)=\"addPanelClick()\">\n<span [class]=\"question.cssClasses.buttonAddText\"><sv-ng-string [model]=\"question.locAddPanelText\"></sv-ng-string></span>\n</button>", components: [{ type: i1.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
35
+ PanelDynamicAddBtn.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PanelDynamicAddBtn, selector: "sv-ng-paneldynamic-add-btn", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" [id]=\"question.addButtonId\" *ngIf=\"question.canAddPanel\" [class]=\"question.getAddButtonCss()\" [disabled]=\"!isActionEnabled\" (click)=\"addPanelClick()\">\n<span [class]=\"question.cssClasses.buttonAddText\"><sv-ng-string [model]=\"question.locAddPanelText\"></sv-ng-string></span>\n</button>", components: [{ type: i1.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
31
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PanelDynamicAddBtn, decorators: [{
32
37
  type: Component,
33
38
  args: [{
@@ -36,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
36
41
  }]
37
42
  }] });
38
43
  AngularComponentFactory.Instance.registerComponent("sv-paneldynamic-add-btn", PanelDynamicAddBtn);
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWxkeW5hbWljLWFkZC1idG4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFuZWxkeW5hbWljLWFjdGlvbnMvcGFuZWxkeW5hbWljLWFkZC1idG4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFuZWxkeW5hbWljLWFjdGlvbnMvcGFuZWxkeW5hbWljLWFkZC1idG4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFNakQsTUFBTSxPQUFPLGtCQUFrQjtJQUc3QixJQUFXLFFBQVE7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDeEUsQ0FBQzs7Z0hBTFUsa0JBQWtCO29HQUFsQixrQkFBa0IsOEZBRm5CLEVBQUU7NEZBRUQsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO29CQUNaLFFBQVEsRUFBRSxFQUFFO2lCQUNiOzhCQUVVLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7O0FBVVIsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUFrQjtJQUN4RCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUM3QixDQUFDOztnSEFIVSxrQkFBa0I7b0dBQWxCLGtCQUFrQix5RkNwQi9CLG9TQUVTOzRGRGtCSSxrQkFBa0I7a0JBSjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsV0FBVyxFQUFFLHVDQUF1QztpQkFDckQ7O0FBTUQsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLHlCQUF5QixFQUFFLGtCQUFrQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb24sIFF1ZXN0aW9uUGFuZWxEeW5hbWljTW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIlwiLFxuICB0ZW1wbGF0ZTogXCJcIlxufSlcbmV4cG9ydCBjbGFzcyBQYW5lbGR5bmFtaWNBY3Rpb24ge1xuICBASW5wdXQoKSBkYXRhOiBhbnk7XG4gIEBJbnB1dCgpIG1vZGVsITogQWN0aW9uO1xuICBwdWJsaWMgZ2V0IHF1ZXN0aW9uKCk6IFF1ZXN0aW9uUGFuZWxEeW5hbWljTW9kZWwge1xuICAgIHJldHVybiAodGhpcy5tb2RlbCAmJiB0aGlzLm1vZGVsLmRhdGEucXVlc3Rpb24pIHx8IHRoaXMuZGF0YS5xdWVzdGlvbjtcbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctcGFuZWxkeW5hbWljLWFkZC1idG5cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9wYW5lbGR5bmFtaWMtYWRkLWJ0bi5jb21wb25lbnQuaHRtbFwiXG59KVxuZXhwb3J0IGNsYXNzIFBhbmVsRHluYW1pY0FkZEJ0biBleHRlbmRzIFBhbmVsZHluYW1pY0FjdGlvbiB7XG4gIGFkZFBhbmVsQ2xpY2soKSB7XG4gICAgdGhpcy5xdWVzdGlvbi5hZGRQYW5lbFVJKCk7XG4gIH1cbn1cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwic3YtcGFuZWxkeW5hbWljLWFkZC1idG5cIiwgUGFuZWxEeW5hbWljQWRkQnRuKTsiLCI8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBbaWRdPVwicXVlc3Rpb24uYWRkQnV0dG9uSWRcIiAqbmdJZj1cInF1ZXN0aW9uLmNhbkFkZFBhbmVsXCIgW2NsYXNzXT1cInF1ZXN0aW9uLmdldEFkZEJ1dHRvbkNzcygpXCIgKGNsaWNrKT1cImFkZFBhbmVsQ2xpY2soKVwiPlxuPHNwYW4gW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuYnV0dG9uQWRkVGV4dFwiPjxzdi1uZy1zdHJpbmcgW21vZGVsXT1cInF1ZXN0aW9uLmxvY0FkZFBhbmVsVGV4dFwiPjwvc3Ytbmctc3RyaW5nPjwvc3Bhbj5cbjwvYnV0dG9uPiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWxkeW5hbWljLWFkZC1idG4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFuZWxkeW5hbWljLWFjdGlvbnMvcGFuZWxkeW5hbWljLWFkZC1idG4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFuZWxkeW5hbWljLWFjdGlvbnMvcGFuZWxkeW5hbWljLWFkZC1idG4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFNakQsTUFBTSxPQUFPLGtCQUFrQjtJQUc3QixJQUFXLFFBQVE7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDeEUsQ0FBQztJQUNELElBQVcsZUFBZTtRQUN4QixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUM7SUFDckQsQ0FBQzs7Z0hBUlUsa0JBQWtCO29HQUFsQixrQkFBa0IsOEZBRm5CLEVBQUU7NEZBRUQsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO29CQUNaLFFBQVEsRUFBRSxFQUFFO2lCQUNiOzhCQUVVLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7O0FBYVIsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUFrQjtJQUN4RCxhQUFhO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlO1lBQUUsT0FBTztRQUNsQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzdCLENBQUM7O2dIQUpVLGtCQUFrQjtvR0FBbEIsa0JBQWtCLHlGQ3ZCL0Isb1VBRVM7NEZEcUJJLGtCQUFrQjtrQkFKOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNEJBQTRCO29CQUN0QyxXQUFXLEVBQUUsdUNBQXVDO2lCQUNyRDs7QUFPRCx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMseUJBQXlCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbiwgUXVlc3Rpb25QYW5lbER5bmFtaWNNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiXCIsXG4gIHRlbXBsYXRlOiBcIlwiXG59KVxuZXhwb3J0IGNsYXNzIFBhbmVsZHluYW1pY0FjdGlvbiB7XG4gIEBJbnB1dCgpIGRhdGE6IGFueTtcbiAgQElucHV0KCkgbW9kZWwhOiBBY3Rpb247XG4gIHB1YmxpYyBnZXQgcXVlc3Rpb24oKTogUXVlc3Rpb25QYW5lbER5bmFtaWNNb2RlbCB7XG4gICAgcmV0dXJuICh0aGlzLm1vZGVsICYmIHRoaXMubW9kZWwuZGF0YS5xdWVzdGlvbikgfHwgdGhpcy5kYXRhLnF1ZXN0aW9uO1xuICB9XG4gIHB1YmxpYyBnZXQgaXNBY3Rpb25FbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5tb2RlbCB8fCB0aGlzLm1vZGVsLmVuYWJsZWQgIT09IGZhbHNlO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1wYW5lbGR5bmFtaWMtYWRkLWJ0blwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3BhbmVsZHluYW1pYy1hZGQtYnRuLmNvbXBvbmVudC5odG1sXCJcbn0pXG5leHBvcnQgY2xhc3MgUGFuZWxEeW5hbWljQWRkQnRuIGV4dGVuZHMgUGFuZWxkeW5hbWljQWN0aW9uIHtcbiAgYWRkUGFuZWxDbGljaygpIHtcbiAgICBpZiAoIXRoaXMuaXNBY3Rpb25FbmFibGVkKSByZXR1cm47XG4gICAgdGhpcy5xdWVzdGlvbi5hZGRQYW5lbFVJKCk7XG4gIH1cbn1cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwic3YtcGFuZWxkeW5hbWljLWFkZC1idG5cIiwgUGFuZWxEeW5hbWljQWRkQnRuKTsiLCI8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBbaWRdPVwicXVlc3Rpb24uYWRkQnV0dG9uSWRcIiAqbmdJZj1cInF1ZXN0aW9uLmNhbkFkZFBhbmVsXCIgW2NsYXNzXT1cInF1ZXN0aW9uLmdldEFkZEJ1dHRvbkNzcygpXCIgW2Rpc2FibGVkXT1cIiFpc0FjdGlvbkVuYWJsZWRcIiAoY2xpY2spPVwiYWRkUGFuZWxDbGljaygpXCI+XG48c3BhbiBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5idXR0b25BZGRUZXh0XCI+PHN2LW5nLXN0cmluZyBbbW9kZWxdPVwicXVlc3Rpb24ubG9jQWRkUGFuZWxUZXh0XCI+PC9zdi1uZy1zdHJpbmc+PC9zcGFuPlxuPC9idXR0b24+Il19
@@ -7,9 +7,14 @@ export class PaneldynamicRemoveButtonComponent extends PaneldynamicAction {
7
7
  get panel() {
8
8
  return (this.data ? this.data : this.model.data).panel;
9
9
  }
10
+ removePanelClick() {
11
+ if (!this.isActionEnabled)
12
+ return;
13
+ this.question.removePanelUI(this.panel);
14
+ }
10
15
  }
11
16
  PaneldynamicRemoveButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaneldynamicRemoveButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
12
- PaneldynamicRemoveButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PaneldynamicRemoveButtonComponent, selector: "sv-ng-paneldynamic-remove-btn", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" [id]=\"question.getPanelRemoveButtonId(panel)\" (click)=\"question.removePanelUI(panel)\" [class]=\"question.getPanelRemoveButtonCss()\"> \n <span [class]=\"question.cssClasses.buttonRemoveText\"><sv-ng-string [model]=\"question.locRemovePanelText\"></sv-ng-string></span>\n <span [class]=\"question.cssClasses.iconRemove\"></span>\n</button>\n", components: [{ type: i1.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }] });
17
+ PaneldynamicRemoveButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PaneldynamicRemoveButtonComponent, selector: "sv-ng-paneldynamic-remove-btn", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" [id]=\"question.getPanelRemoveButtonId(panel)\" (click)=\"removePanelClick()\" [disabled]=\"!isActionEnabled\" [class]=\"question.getPanelRemoveButtonCss()\"> \n <span [class]=\"question.cssClasses.buttonRemoveText\"><sv-ng-string [model]=\"question.locRemovePanelText\"></sv-ng-string></span>\n <span [class]=\"question.cssClasses.iconRemove\"></span>\n</button>\n", components: [{ type: i1.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }] });
13
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaneldynamicRemoveButtonComponent, decorators: [{
14
19
  type: Component,
15
20
  args: [{
@@ -18,4 +23,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
18
23
  }]
19
24
  }] });
20
25
  AngularComponentFactory.Instance.registerComponent("sv-paneldynamic-remove-btn", PaneldynamicRemoveButtonComponent);
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWxkeW5hbWljLXJlbW92ZS1idG4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFuZWxkeW5hbWljLWFjdGlvbnMvcGFuZWxkeW5hbWljLXJlbW92ZS1idG4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFuZWxkeW5hbWljLWFjdGlvbnMvcGFuZWxkeW5hbWljLXJlbW92ZS1idG4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBTXRFLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSxrQkFBa0I7SUFDdkUsSUFBSSxLQUFLO1FBQ1AsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3pELENBQUM7OytIQUhVLGlDQUFpQzttSEFBakMsaUNBQWlDLDRGQ1I5QyxvWEFJQTs0RkRJYSxpQ0FBaUM7a0JBSjdDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLCtCQUErQjtvQkFDekMsV0FBVyxFQUFFLDBDQUEwQztpQkFDeEQ7O0FBT0QsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLDRCQUE0QixFQUFFLGlDQUFpQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcbmltcG9ydCB7IFBhbmVsZHluYW1pY0FjdGlvbiB9IGZyb20gXCIuL3BhbmVsZHluYW1pYy1hZGQtYnRuLmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctcGFuZWxkeW5hbWljLXJlbW92ZS1idG5cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9wYW5lbGR5bmFtaWMtcmVtb3ZlLWJ0bi5jb21wb25lbnQuaHRtbFwiXG59KVxuZXhwb3J0IGNsYXNzIFBhbmVsZHluYW1pY1JlbW92ZUJ1dHRvbkNvbXBvbmVudCBleHRlbmRzIFBhbmVsZHluYW1pY0FjdGlvbiB7XG4gIGdldCBwYW5lbCgpIHtcbiAgICByZXR1cm4gKHRoaXMuZGF0YSA/IHRoaXMuZGF0YSA6IHRoaXMubW9kZWwuZGF0YSkucGFuZWw7XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJzdi1wYW5lbGR5bmFtaWMtcmVtb3ZlLWJ0blwiLCBQYW5lbGR5bmFtaWNSZW1vdmVCdXR0b25Db21wb25lbnQpO1xuIiwiPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW2lkXT1cInF1ZXN0aW9uLmdldFBhbmVsUmVtb3ZlQnV0dG9uSWQocGFuZWwpXCIgKGNsaWNrKT1cInF1ZXN0aW9uLnJlbW92ZVBhbmVsVUkocGFuZWwpXCIgW2NsYXNzXT1cInF1ZXN0aW9uLmdldFBhbmVsUmVtb3ZlQnV0dG9uQ3NzKClcIj4gXG4gIDxzcGFuIFtjbGFzc109XCJxdWVzdGlvbi5jc3NDbGFzc2VzLmJ1dHRvblJlbW92ZVRleHRcIj48c3Ytbmctc3RyaW5nIFttb2RlbF09XCJxdWVzdGlvbi5sb2NSZW1vdmVQYW5lbFRleHRcIj48L3N2LW5nLXN0cmluZz48L3NwYW4+XG4gIDxzcGFuIFtjbGFzc109XCJxdWVzdGlvbi5jc3NDbGFzc2VzLmljb25SZW1vdmVcIj48L3NwYW4+XG48L2J1dHRvbj5cbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWxkeW5hbWljLXJlbW92ZS1idG4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFuZWxkeW5hbWljLWFjdGlvbnMvcGFuZWxkeW5hbWljLXJlbW92ZS1idG4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFuZWxkeW5hbWljLWFjdGlvbnMvcGFuZWxkeW5hbWljLXJlbW92ZS1idG4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBTXRFLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSxrQkFBa0I7SUFDdkUsSUFBSSxLQUFLO1FBQ1AsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3pELENBQUM7SUFDRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWU7WUFBRSxPQUFPO1FBQ2xDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDOzsrSEFQVSxpQ0FBaUM7bUhBQWpDLGlDQUFpQyw0RkNSOUMseVlBSUE7NEZESWEsaUNBQWlDO2tCQUo3QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwrQkFBK0I7b0JBQ3pDLFdBQVcsRUFBRSwwQ0FBMEM7aUJBQ3hEOztBQVdELHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyw0QkFBNEIsRUFBRSxpQ0FBaUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5pbXBvcnQgeyBQYW5lbGR5bmFtaWNBY3Rpb24gfSBmcm9tIFwiLi9wYW5lbGR5bmFtaWMtYWRkLWJ0bi5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2LW5nLXBhbmVsZHluYW1pYy1yZW1vdmUtYnRuXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vcGFuZWxkeW5hbWljLXJlbW92ZS1idG4uY29tcG9uZW50Lmh0bWxcIlxufSlcbmV4cG9ydCBjbGFzcyBQYW5lbGR5bmFtaWNSZW1vdmVCdXR0b25Db21wb25lbnQgZXh0ZW5kcyBQYW5lbGR5bmFtaWNBY3Rpb24ge1xuICBnZXQgcGFuZWwoKSB7XG4gICAgcmV0dXJuICh0aGlzLmRhdGEgPyB0aGlzLmRhdGEgOiB0aGlzLm1vZGVsLmRhdGEpLnBhbmVsO1xuICB9XG4gIHJlbW92ZVBhbmVsQ2xpY2soKSB7XG4gICAgaWYgKCF0aGlzLmlzQWN0aW9uRW5hYmxlZCkgcmV0dXJuO1xuICAgIHRoaXMucXVlc3Rpb24ucmVtb3ZlUGFuZWxVSSh0aGlzLnBhbmVsKTtcbiAgfVxufVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChcInN2LXBhbmVsZHluYW1pYy1yZW1vdmUtYnRuXCIsIFBhbmVsZHluYW1pY1JlbW92ZUJ1dHRvbkNvbXBvbmVudCk7XG4iLCI8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBbaWRdPVwicXVlc3Rpb24uZ2V0UGFuZWxSZW1vdmVCdXR0b25JZChwYW5lbClcIiAoY2xpY2spPVwicmVtb3ZlUGFuZWxDbGljaygpXCIgW2Rpc2FibGVkXT1cIiFpc0FjdGlvbkVuYWJsZWRcIiBbY2xhc3NdPVwicXVlc3Rpb24uZ2V0UGFuZWxSZW1vdmVCdXR0b25Dc3MoKVwiPiBcbiAgPHNwYW4gW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuYnV0dG9uUmVtb3ZlVGV4dFwiPjxzdi1uZy1zdHJpbmcgW21vZGVsXT1cInF1ZXN0aW9uLmxvY1JlbW92ZVBhbmVsVGV4dFwiPjwvc3Ytbmctc3RyaW5nPjwvc3Bhbj5cbiAgPHNwYW4gW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaWNvblJlbW92ZVwiPjwvc3Bhbj5cbjwvYnV0dG9uPlxuIl19
@@ -3446,6 +3446,9 @@ class PaneldynamicAction {
3446
3446
  get question() {
3447
3447
  return (this.model && this.model.data.question) || this.data.question;
3448
3448
  }
3449
+ get isActionEnabled() {
3450
+ return !this.model || this.model.enabled !== false;
3451
+ }
3449
3452
  }
3450
3453
  PaneldynamicAction.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaneldynamicAction, deps: [], target: i0.ɵɵFactoryTarget.Component });
3451
3454
  PaneldynamicAction.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PaneldynamicAction, selector: "ng-component", inputs: { data: "data", model: "model" }, ngImport: i0, template: "", isInline: true });
@@ -3462,11 +3465,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
3462
3465
  }] } });
3463
3466
  class PanelDynamicAddBtn extends PaneldynamicAction {
3464
3467
  addPanelClick() {
3468
+ if (!this.isActionEnabled)
3469
+ return;
3465
3470
  this.question.addPanelUI();
3466
3471
  }
3467
3472
  }
3468
3473
  PanelDynamicAddBtn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PanelDynamicAddBtn, deps: null, target: i0.ɵɵFactoryTarget.Component });
3469
- PanelDynamicAddBtn.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PanelDynamicAddBtn, selector: "sv-ng-paneldynamic-add-btn", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" [id]=\"question.addButtonId\" *ngIf=\"question.canAddPanel\" [class]=\"question.getAddButtonCss()\" (click)=\"addPanelClick()\">\n<span [class]=\"question.cssClasses.buttonAddText\"><sv-ng-string [model]=\"question.locAddPanelText\"></sv-ng-string></span>\n</button>", components: [{ type: SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3474
+ PanelDynamicAddBtn.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PanelDynamicAddBtn, selector: "sv-ng-paneldynamic-add-btn", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" [id]=\"question.addButtonId\" *ngIf=\"question.canAddPanel\" [class]=\"question.getAddButtonCss()\" [disabled]=\"!isActionEnabled\" (click)=\"addPanelClick()\">\n<span [class]=\"question.cssClasses.buttonAddText\"><sv-ng-string [model]=\"question.locAddPanelText\"></sv-ng-string></span>\n</button>", components: [{ type: SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3470
3475
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PanelDynamicAddBtn, decorators: [{
3471
3476
  type: Component,
3472
3477
  args: [{
@@ -3512,9 +3517,14 @@ class PaneldynamicRemoveButtonComponent extends PaneldynamicAction {
3512
3517
  get panel() {
3513
3518
  return (this.data ? this.data : this.model.data).panel;
3514
3519
  }
3520
+ removePanelClick() {
3521
+ if (!this.isActionEnabled)
3522
+ return;
3523
+ this.question.removePanelUI(this.panel);
3524
+ }
3515
3525
  }
3516
3526
  PaneldynamicRemoveButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaneldynamicRemoveButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
3517
- PaneldynamicRemoveButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PaneldynamicRemoveButtonComponent, selector: "sv-ng-paneldynamic-remove-btn", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" [id]=\"question.getPanelRemoveButtonId(panel)\" (click)=\"question.removePanelUI(panel)\" [class]=\"question.getPanelRemoveButtonCss()\"> \n <span [class]=\"question.cssClasses.buttonRemoveText\"><sv-ng-string [model]=\"question.locRemovePanelText\"></sv-ng-string></span>\n <span [class]=\"question.cssClasses.iconRemove\"></span>\n</button>\n", components: [{ type: SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }] });
3527
+ PaneldynamicRemoveButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PaneldynamicRemoveButtonComponent, selector: "sv-ng-paneldynamic-remove-btn", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" [id]=\"question.getPanelRemoveButtonId(panel)\" (click)=\"removePanelClick()\" [disabled]=\"!isActionEnabled\" [class]=\"question.getPanelRemoveButtonCss()\"> \n <span [class]=\"question.cssClasses.buttonRemoveText\"><sv-ng-string [model]=\"question.locRemovePanelText\"></sv-ng-string></span>\n <span [class]=\"question.cssClasses.iconRemove\"></span>\n</button>\n", components: [{ type: SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }] });
3518
3528
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaneldynamicRemoveButtonComponent, decorators: [{
3519
3529
  type: Component,
3520
3530
  args: [{