survey-angular-ui 1.9.66 → 1.9.68

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.
@@ -48,7 +48,7 @@ class BaseAngular extends EmbeddedViewContentComponent {
48
48
  this.onModelChanged();
49
49
  this.previousModel = this.getModel();
50
50
  }
51
- this.beforeUpdate();
51
+ this.setIsRendering(true);
52
52
  }
53
53
  onModelChanged() { }
54
54
  setIsRendering(val) {
@@ -118,25 +118,25 @@ class BaseAngular extends EmbeddedViewContentComponent {
118
118
  });
119
119
  }
120
120
  }
121
+ getChangeDetectorRef() {
122
+ return this.embeddedView ? this.embeddedView : this.changeDetectorRef;
123
+ }
121
124
  getPropertiesToUpdateSync() {
122
125
  return [];
123
126
  }
124
127
  detectChanges() {
125
- if (!!this.embeddedView) {
126
- this.embeddedView.detectChanges();
127
- }
128
- else {
129
- this.changeDetectorRef.detectChanges();
130
- }
128
+ this.getChangeDetectorRef().detectChanges();
131
129
  }
132
130
  beforeUpdate() {
131
+ this.getChangeDetectorRef().detach();
133
132
  this.setIsRendering(true);
134
133
  }
135
134
  afterUpdate() {
135
+ this.getChangeDetectorRef().reattach();
136
136
  this.setIsRendering(false);
137
137
  }
138
138
  ngAfterViewChecked() {
139
- this.afterUpdate();
139
+ this.setIsRendering(false);
140
140
  }
141
141
  }
142
142
  BaseAngular.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: BaseAngular, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
@@ -310,7 +310,6 @@ class PopupBaseContainerComponent extends BaseAngular {
310
310
  constructor(changeDetectorRef) {
311
311
  super(changeDetectorRef);
312
312
  this.prevIsVisible = false;
313
- this.isShow = false;
314
313
  this.changeDetectorRef.detach();
315
314
  }
316
315
  getModel() {
@@ -331,31 +330,21 @@ class PopupBaseContainerComponent extends BaseAngular {
331
330
  onModelChanged() {
332
331
  this.changeDetectorRef.detectChanges();
333
332
  }
334
- beforeUpdate() {
335
- super.beforeUpdate();
336
- if (!this.prevIsVisible && this.model.isVisible) {
337
- this.isShow = false;
338
- }
339
- }
340
333
  afterUpdate() {
334
+ super.afterUpdate();
341
335
  if (!this.prevIsVisible && this.model.isVisible) {
342
- setTimeout(() => {
343
- this.model.updateOnShowing();
344
- this.isShow = true;
345
- this.changeDetectorRef.detectChanges();
346
- });
336
+ this.model.updateOnShowing();
347
337
  }
348
338
  if (this.prevIsVisible !== this.model.isVisible) {
349
339
  this.prevIsVisible = this.model.isVisible;
350
340
  }
351
- super.afterUpdate();
352
341
  }
353
342
  }
354
343
  PopupBaseContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PopupBaseContainerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
355
- PopupBaseContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: PopupBaseContainerComponent, selector: "sv-ng-popup-container, '[sv-ng-popup-container]'", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<div class=\"sv-popup\" tabindex=\"-1\" [class]=\"model.styleClass\" [style.visibility]=\"isShow ? 'visible' : 'hidden'\" [visible]=\"model.isVisible\" (click)=\"model.clickOutside()\" (keydown)=\"model.onKeyDown($event)\">\n <div class=\"sv-popup__container\" [style]=\"{ left: model.left, top: model.top, height: model.height, minWidth: model.minWidth, width: model.width }\">\n <div class=\"sv-popup__shadow\">\n <ng-container *ngIf=\"model.showHeader\">\n <ng-template [component]=\"{ name: model.popupHeaderTemplate, data: { model: model } }\"></ng-template>\n </ng-container>\n <div class=\"sv-popup__body-content\">\n <div *ngIf=\"model.title\" class=\"sv-popup__body-header\">{{ model.title }}</div>\n <div class=\"sv-popup__scrolling-content\">\n <div class=\"sv-popup__content\">\n <ng-template [component]=\"{ name: model.contentComponentName, data: model.contentComponentData }\"></ng-template>\n </div>\n </div>\n <div *ngIf=\"model.showFooter\" class=\"sv-popup__body-footer\">\n <sv-ng-action-bar [model]=\"model.footerToolbar\"></sv-ng-action-bar>\n </div>\n </div>\n </div>\n </div>\n</div>", components: [{ type: ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
344
+ PopupBaseContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: PopupBaseContainerComponent, selector: "sv-ng-popup-container, '[sv-ng-popup-container]'", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<div class=\"sv-popup\" tabindex=\"-1\" [class]=\"model.styleClass\" [visible]=\"model.isVisible\" (click)=\"model.clickOutside()\" (keydown)=\"model.onKeyDown($event)\">\n <div class=\"sv-popup__container\" [style]=\"{ left: model.left, top: model.top, height: model.height, minWidth: model.minWidth, width: model.width }\">\n <div class=\"sv-popup__shadow\">\n <ng-container *ngIf=\"model.showHeader\">\n <ng-template [component]=\"{ name: model.popupHeaderTemplate, data: { model: model } }\"></ng-template>\n </ng-container>\n <div class=\"sv-popup__body-content\">\n <div *ngIf=\"model.title\" class=\"sv-popup__body-header\">{{ model.title }}</div>\n <div class=\"sv-popup__scrolling-content\">\n <div class=\"sv-popup__content\">\n <ng-template [component]=\"{ name: model.contentComponentName, data: model.contentComponentData }\"></ng-template>\n </div>\n </div>\n <div *ngIf=\"model.showFooter\" class=\"sv-popup__body-footer\">\n <sv-ng-action-bar [model]=\"model.footerToolbar\"></sv-ng-action-bar>\n </div>\n </div>\n </div>\n </div>\n</div>", components: [{ type: ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
356
345
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PopupBaseContainerComponent, decorators: [{
357
346
  type: Component,
358
- args: [{ selector: "sv-ng-popup-container, '[sv-ng-popup-container]'", template: "<div class=\"sv-popup\" tabindex=\"-1\" [class]=\"model.styleClass\" [style.visibility]=\"isShow ? 'visible' : 'hidden'\" [visible]=\"model.isVisible\" (click)=\"model.clickOutside()\" (keydown)=\"model.onKeyDown($event)\">\n <div class=\"sv-popup__container\" [style]=\"{ left: model.left, top: model.top, height: model.height, minWidth: model.minWidth, width: model.width }\">\n <div class=\"sv-popup__shadow\">\n <ng-container *ngIf=\"model.showHeader\">\n <ng-template [component]=\"{ name: model.popupHeaderTemplate, data: { model: model } }\"></ng-template>\n </ng-container>\n <div class=\"sv-popup__body-content\">\n <div *ngIf=\"model.title\" class=\"sv-popup__body-header\">{{ model.title }}</div>\n <div class=\"sv-popup__scrolling-content\">\n <div class=\"sv-popup__content\">\n <ng-template [component]=\"{ name: model.contentComponentName, data: model.contentComponentData }\"></ng-template>\n </div>\n </div>\n <div *ngIf=\"model.showFooter\" class=\"sv-popup__body-footer\">\n <sv-ng-action-bar [model]=\"model.footerToolbar\"></sv-ng-action-bar>\n </div>\n </div>\n </div>\n </div>\n</div>" }]
347
+ args: [{ selector: "sv-ng-popup-container, '[sv-ng-popup-container]'", template: "<div class=\"sv-popup\" tabindex=\"-1\" [class]=\"model.styleClass\" [visible]=\"model.isVisible\" (click)=\"model.clickOutside()\" (keydown)=\"model.onKeyDown($event)\">\n <div class=\"sv-popup__container\" [style]=\"{ left: model.left, top: model.top, height: model.height, minWidth: model.minWidth, width: model.width }\">\n <div class=\"sv-popup__shadow\">\n <ng-container *ngIf=\"model.showHeader\">\n <ng-template [component]=\"{ name: model.popupHeaderTemplate, data: { model: model } }\"></ng-template>\n </ng-container>\n <div class=\"sv-popup__body-content\">\n <div *ngIf=\"model.title\" class=\"sv-popup__body-header\">{{ model.title }}</div>\n <div class=\"sv-popup__scrolling-content\">\n <div class=\"sv-popup__content\">\n <ng-template [component]=\"{ name: model.contentComponentName, data: model.contentComponentData }\"></ng-template>\n </div>\n </div>\n <div *ngIf=\"model.showFooter\" class=\"sv-popup__body-footer\">\n <sv-ng-action-bar [model]=\"model.footerToolbar\"></sv-ng-action-bar>\n </div>\n </div>\n </div>\n </div>\n</div>" }]
359
348
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { model: [{
360
349
  type: Input
361
350
  }] } });
@@ -728,13 +717,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
728
717
  AngularComponentFactory.Instance.registerComponent("sv-brand-info", BrandInfoComponent);
729
718
 
730
719
  class SurveyContentComponent extends BaseAngular {
720
+ constructor() {
721
+ super(...arguments);
722
+ this.isSurveyUpdated = false;
723
+ }
731
724
  getModel() {
732
725
  return this.model;
733
726
  }
734
727
  onModelChanged() {
728
+ this.previousModel?.destroyResizeObserver();
735
729
  this.model.renderCallback = () => {
736
730
  this.detectChanges();
737
731
  };
732
+ this.isSurveyUpdated = true;
738
733
  }
739
734
  ngOnInit() {
740
735
  super.ngOnInit();
@@ -747,7 +742,13 @@ class SurveyContentComponent extends BaseAngular {
747
742
  this.model.renderCallback = undefined;
748
743
  }
749
744
  ngAfterViewInit() {
750
- this.model.afterRenderSurvey(this.rootEl.nativeElement);
745
+ this.isSurveyUpdated = true;
746
+ }
747
+ ngAfterViewChecked() {
748
+ if (this.isSurveyUpdated) {
749
+ this.model.afterRenderSurvey(this.rootEl.nativeElement);
750
+ }
751
+ super.ngAfterViewChecked();
751
752
  }
752
753
  }
753
754
  SurveyContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyContentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
@@ -1928,10 +1929,10 @@ class ProgressDefaultComponent extends EmbeddedViewContentComponent {
1928
1929
  }
1929
1930
  }
1930
1931
  ProgressDefaultComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ProgressDefaultComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1931
- ProgressDefaultComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ProgressDefaultComponent, selector: "sv-ng-progress-default", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"model.css.progress\">\n <div [class]=\"model.css.progressBar\" [style.width]=\"model.progressValue + '%'\"\n role=\"progressbar\" aria-valuemin=\"0\" aria-valuemax=\"100\">\n <span [class]=\"getProgressTextInBarCss(model.css)\">\n {{ model.progressText }}\n </span>\n </div>\n <span [class]=\"getProgressTextUnderBarCss(model.css)\"> {{ model.progressText }} </span>\n </div>\n</ng-template>" });
1932
+ ProgressDefaultComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ProgressDefaultComponent, selector: "sv-ng-progress-default", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"model.getProgressCssClasses()\">\n <div [class]=\"model.css.progressBar\" [style.width]=\"model.progressValue + '%'\"\n role=\"progressbar\" aria-valuemin=\"0\" aria-valuemax=\"100\">\n <span [class]=\"getProgressTextInBarCss(model.css)\">\n {{ model.progressText }}\n </span>\n </div>\n <span [class]=\"getProgressTextUnderBarCss(model.css)\"> {{ model.progressText }} </span>\n </div>\n</ng-template>" });
1932
1933
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ProgressDefaultComponent, decorators: [{
1933
1934
  type: Component,
1934
- args: [{ selector: "sv-ng-progress-default", template: "<ng-template #template>\n <div [class]=\"model.css.progress\">\n <div [class]=\"model.css.progressBar\" [style.width]=\"model.progressValue + '%'\"\n role=\"progressbar\" aria-valuemin=\"0\" aria-valuemax=\"100\">\n <span [class]=\"getProgressTextInBarCss(model.css)\">\n {{ model.progressText }}\n </span>\n </div>\n <span [class]=\"getProgressTextUnderBarCss(model.css)\"> {{ model.progressText }} </span>\n </div>\n</ng-template>" }]
1935
+ args: [{ selector: "sv-ng-progress-default", template: "<ng-template #template>\n <div [class]=\"model.getProgressCssClasses()\">\n <div [class]=\"model.css.progressBar\" [style.width]=\"model.progressValue + '%'\"\n role=\"progressbar\" aria-valuemin=\"0\" aria-valuemax=\"100\">\n <span [class]=\"getProgressTextInBarCss(model.css)\">\n {{ model.progressText }}\n </span>\n </div>\n <span [class]=\"getProgressTextUnderBarCss(model.css)\"> {{ model.progressText }} </span>\n </div>\n</ng-template>" }]
1935
1936
  }], propDecorators: { model: [{
1936
1937
  type: Input
1937
1938
  }] } });