survey-angular-ui 1.9.45 → 1.9.48
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/angular-ui.d.ts +69 -5
- package/angular-ui.module.d.ts +81 -79
- package/esm2020/angular-ui.mjs +70 -6
- package/esm2020/angular-ui.module.mjs +33 -5
- package/esm2020/components/dropdown/dropdown.component.mjs +3 -3
- package/esm2020/components/element-title/dynamic-head.component.mjs +2 -2
- package/esm2020/components/list/list-item.component.mjs +8 -7
- package/esm2020/components/list/list.component.mjs +3 -3
- package/esm2020/components/tagbox/tagbox.component.mjs +3 -3
- package/esm2020/popup.survey.component.mjs +30 -0
- package/esm2020/questions/matrixcell.component.mjs +8 -7
- package/esm2020/survey-content.component.mjs +46 -0
- package/esm2020/survey.component.mjs +8 -30
- package/esm2020/utils/dynamic.directive.mjs +3 -1
- package/fesm2015/survey-angular-ui.mjs +149 -76
- package/fesm2015/survey-angular-ui.mjs.map +1 -1
- package/fesm2020/survey-angular-ui.mjs +149 -76
- package/fesm2020/survey-angular-ui.mjs.map +1 -1
- package/package.json +6 -2
- package/popup.survey.component.d.ts +13 -0
- package/survey-content.component.d.ts +15 -0
- package/survey.component.d.ts +2 -6
|
@@ -5,10 +5,11 @@ import * as i1 from "../components/action-bar/action-bar.component";
|
|
|
5
5
|
import * as i2 from "../panel.component";
|
|
6
6
|
import * as i3 from "../errors.component";
|
|
7
7
|
import * as i4 from "./selectbase-item";
|
|
8
|
-
import * as i5 from "../
|
|
9
|
-
import * as i6 from "
|
|
10
|
-
import * as i7 from "
|
|
11
|
-
import * as i8 from "../utils/
|
|
8
|
+
import * as i5 from "../comment.component";
|
|
9
|
+
import * as i6 from "../survey-string.component";
|
|
10
|
+
import * as i7 from "@angular/common";
|
|
11
|
+
import * as i8 from "../utils/ng-show.directive";
|
|
12
|
+
import * as i9 from "../utils/dynamic.directive";
|
|
12
13
|
export class MatrixCellComponent extends BaseAngular {
|
|
13
14
|
constructor() {
|
|
14
15
|
super(...arguments);
|
|
@@ -45,10 +46,10 @@ export class MatrixCellComponent extends BaseAngular {
|
|
|
45
46
|
}
|
|
46
47
|
}
|
|
47
48
|
MatrixCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
48
|
-
MatrixCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: MatrixCellComponent, selector: "sv-ng-matrix-cell", inputs: { question: "question", cell: "cell" }, viewQueries: [{ propertyName: "cellContainer", first: true, predicate: ["cellContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <td [class]=\"cell.className\" [attr.data-responsive-title]=\"getHeaders()\" [title]=\"cell.getTitle()\" [style]=\"getCellStyle()\" [attr.colspan]=\"cell.colSpans\" #cellContainer>\n <sv-action-bar *ngIf=\"cell.isActionsCell\" [model]=\"cell.item.getData()\" [handleClick]=\"false\"></sv-action-bar>\n <sv-ng-panel *ngIf=\"cell.hasPanel\" [model]=\"cell.panel\"></sv-ng-panel>\n <div *ngIf=\"cell.hasQuestion\" [class]=\"question.cssClasses.cellQuestionWrapper\" [visible]=\"cell.question.isVisible\">\n <div *ngIf=\"cell.showErrorOnTop && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <ng-template *ngIf=\"!cell.isChoice && cell.question.isDefaultRendering()\" [component]=\"{ name: getComponentName(cell.question), data: { model: cell.question } }\"></ng-template>\n <ng-template *ngIf=\"!cell.isChoice && !cell.question.isDefaultRendering()\" [component]=\"{ name: cell.question.getComponentName(), data: { model: cell.question } }\">\n </ng-template>\n <sv-ng-selebase-item\n *ngIf=\"cell.
|
|
49
|
+
MatrixCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: MatrixCellComponent, selector: "sv-ng-matrix-cell", inputs: { question: "question", cell: "cell" }, viewQueries: [{ propertyName: "cellContainer", first: true, predicate: ["cellContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <td [class]=\"cell.className\" [attr.data-responsive-title]=\"getHeaders()\" [title]=\"cell.getTitle()\" [style]=\"getCellStyle()\" [attr.colspan]=\"cell.colSpans\" #cellContainer>\n <sv-action-bar *ngIf=\"cell.isActionsCell\" [model]=\"cell.item.getData()\" [handleClick]=\"false\"></sv-action-bar>\n <sv-ng-panel *ngIf=\"cell.hasPanel\" [model]=\"cell.panel\"></sv-ng-panel>\n <div *ngIf=\"cell.hasQuestion\" [class]=\"question.cssClasses.cellQuestionWrapper\" [visible]=\"cell.question.isVisible\">\n <div *ngIf=\"cell.showErrorOnTop && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <ng-template *ngIf=\"!cell.isChoice && cell.question.isDefaultRendering()\" [component]=\"{ name: getComponentName(cell.question), data: { model: cell.question } }\"></ng-template>\n <ng-template *ngIf=\"!cell.isChoice && !cell.question.isDefaultRendering()\" [component]=\"{ name: cell.question.getComponentName(), data: { model: cell.question } }\">\n </ng-template>\n <sv-ng-selebase-item\n *ngIf=\"cell.isItemChoice\"\n [showLabel]=\"false\"\n [inputType]=\"cell.isCheckbox ? 'checkbox': 'radio'\"\n [question]=\"cell.question\"\n [model]=\"cell.item\"\n ></sv-ng-selebase-item>\n <div *ngIf=\"cell.isOtherChoice\" class=\"form-group\" [question]=\"cell.question\" sv-ng-comment></div>\n <div *ngIf=\"cell.showErrorOnBottom && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <div *ngIf=\"cell.question.isErrorsModeTooltip && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'tooltip'\" sv-ng-errors></div>\n </div>\n <sv-ng-string *ngIf=\"cell.hasTitle\" [model]=\"cell.locTitle\"></sv-ng-string>\n <span *ngIf=\"!!cell.requiredText\" [class]=\"question.cssClasses.cellRequiredText\">{{ cell.requiredText }}</span>\n</td>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i2.PanelComponent, selector: "sv-ng-panel, '[sv-ng-panel]'", inputs: ["model"] }, { type: i3.ErrorsComponent, selector: "'[sv-ng-errors]'", inputs: ["element", "location"] }, { type: i4.SelectBaseItemComponent, selector: "['sv-ng-selectbase-item'], sv-ng-selebase-item", inputs: ["question", "model", "inputType", "showLabel"] }, { type: i5.SurveyCommentComponent, selector: "sv-ng-comment, '[sv-ng-comment]'", inputs: ["question"] }, { type: i6.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i9.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
49
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, decorators: [{
|
|
50
51
|
type: Component,
|
|
51
|
-
args: [{ selector: "sv-ng-matrix-cell", styles: [":host { display: none; }"], template: "<ng-template #template>\n <td [class]=\"cell.className\" [attr.data-responsive-title]=\"getHeaders()\" [title]=\"cell.getTitle()\" [style]=\"getCellStyle()\" [attr.colspan]=\"cell.colSpans\" #cellContainer>\n <sv-action-bar *ngIf=\"cell.isActionsCell\" [model]=\"cell.item.getData()\" [handleClick]=\"false\"></sv-action-bar>\n <sv-ng-panel *ngIf=\"cell.hasPanel\" [model]=\"cell.panel\"></sv-ng-panel>\n <div *ngIf=\"cell.hasQuestion\" [class]=\"question.cssClasses.cellQuestionWrapper\" [visible]=\"cell.question.isVisible\">\n <div *ngIf=\"cell.showErrorOnTop && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <ng-template *ngIf=\"!cell.isChoice && cell.question.isDefaultRendering()\" [component]=\"{ name: getComponentName(cell.question), data: { model: cell.question } }\"></ng-template>\n <ng-template *ngIf=\"!cell.isChoice && !cell.question.isDefaultRendering()\" [component]=\"{ name: cell.question.getComponentName(), data: { model: cell.question } }\">\n </ng-template>\n <sv-ng-selebase-item\n *ngIf=\"cell.
|
|
52
|
+
args: [{ selector: "sv-ng-matrix-cell", styles: [":host { display: none; }"], template: "<ng-template #template>\n <td [class]=\"cell.className\" [attr.data-responsive-title]=\"getHeaders()\" [title]=\"cell.getTitle()\" [style]=\"getCellStyle()\" [attr.colspan]=\"cell.colSpans\" #cellContainer>\n <sv-action-bar *ngIf=\"cell.isActionsCell\" [model]=\"cell.item.getData()\" [handleClick]=\"false\"></sv-action-bar>\n <sv-ng-panel *ngIf=\"cell.hasPanel\" [model]=\"cell.panel\"></sv-ng-panel>\n <div *ngIf=\"cell.hasQuestion\" [class]=\"question.cssClasses.cellQuestionWrapper\" [visible]=\"cell.question.isVisible\">\n <div *ngIf=\"cell.showErrorOnTop && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <ng-template *ngIf=\"!cell.isChoice && cell.question.isDefaultRendering()\" [component]=\"{ name: getComponentName(cell.question), data: { model: cell.question } }\"></ng-template>\n <ng-template *ngIf=\"!cell.isChoice && !cell.question.isDefaultRendering()\" [component]=\"{ name: cell.question.getComponentName(), data: { model: cell.question } }\">\n </ng-template>\n <sv-ng-selebase-item\n *ngIf=\"cell.isItemChoice\"\n [showLabel]=\"false\"\n [inputType]=\"cell.isCheckbox ? 'checkbox': 'radio'\"\n [question]=\"cell.question\"\n [model]=\"cell.item\"\n ></sv-ng-selebase-item>\n <div *ngIf=\"cell.isOtherChoice\" class=\"form-group\" [question]=\"cell.question\" sv-ng-comment></div>\n <div *ngIf=\"cell.showErrorOnBottom && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <div *ngIf=\"cell.question.isErrorsModeTooltip && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'tooltip'\" sv-ng-errors></div>\n </div>\n <sv-ng-string *ngIf=\"cell.hasTitle\" [model]=\"cell.locTitle\"></sv-ng-string>\n <span *ngIf=\"!!cell.requiredText\" [class]=\"question.cssClasses.cellRequiredText\">{{ cell.requiredText }}</span>\n</td>\n</ng-template>" }]
|
|
52
53
|
}], propDecorators: { question: [{
|
|
53
54
|
type: Input
|
|
54
55
|
}], cell: [{
|
|
@@ -57,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
|
57
58
|
type: ViewChild,
|
|
58
59
|
args: ["cellContainer"]
|
|
59
60
|
}] } });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4Y2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL21hdHJpeGNlbGwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9tYXRyaXhjZWxsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7Ozs7O0FBVzlDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxXQUFxQjtJQUw5RDs7UUFXRSxjQUFTLEdBQVksS0FBSyxDQUFDO0tBK0I1QjtJQTdCQyxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUM1QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBaUI7UUFDaEMsSUFBSSxPQUFPLENBQUMsWUFBWSxFQUFFO1lBQ3hCLE9BQU8scUJBQXFCLENBQUM7U0FDOUI7UUFDRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBQyxXQUFXLENBQUM7SUFDdkMsQ0FBQztJQUNELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQzNCLENBQUM7SUFDRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xFLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNO1lBQUUsT0FBTztRQUM5RSxJQUFJLE9BQU8sR0FBRztZQUNaLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUk7WUFDcEIsWUFBWSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUNoQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhO1lBQzdDLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7WUFDbEIsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07U0FDOUIsQ0FBQztRQUNGLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDckUsQ0FBQzs7Z0hBcENVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLGdQQ1poQyx5OERBdUJjOzJGRFhELG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxtQkFBbUIsVUFFckIsQ0FBQywwQkFBMEIsQ0FBQzs4QkFHM0IsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRXNCLGFBQWE7c0JBQXhDLFNBQVM7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCYXNlQW5ndWxhciB9IGZyb20gXCIuLi9iYXNlLWFuZ3VsYXJcIjtcbmltcG9ydCB7XG4gIFF1ZXN0aW9uLFxuICBRdWVzdGlvbk1hdHJpeERyb3Bkb3duUmVuZGVyZWRDZWxsXG59IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctbWF0cml4LWNlbGxcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9tYXRyaXhjZWxsLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlczogW1wiOmhvc3QgeyBkaXNwbGF5OiBub25lOyB9XCJdXG59KVxuZXhwb3J0IGNsYXNzIE1hdHJpeENlbGxDb21wb25lbnQgZXh0ZW5kcyBCYXNlQW5ndWxhcjxRdWVzdGlvbj4ge1xuICBASW5wdXQoKSBxdWVzdGlvbiE6IFF1ZXN0aW9uO1xuICBASW5wdXQoKSBjZWxsITogUXVlc3Rpb25NYXRyaXhEcm9wZG93blJlbmRlcmVkQ2VsbDtcblxuICBAVmlld0NoaWxkKFwiY2VsbENvbnRhaW5lclwiKSBjZWxsQ29udGFpbmVyITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgaXNWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgZ2V0TW9kZWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2VsbC5xdWVzdGlvbjtcbiAgfVxuXG4gIGdldENvbXBvbmVudE5hbWUoZWxlbWVudDogUXVlc3Rpb24pIHtcbiAgICBpZiAoZWxlbWVudC5jdXN0b21XaWRnZXQpIHtcbiAgICAgIHJldHVybiBcInN1cnZleS1jdXN0b213aWRnZXRcIjtcbiAgICB9XG4gICAgcmV0dXJuIGVsZW1lbnQuZ2V0VHlwZSgpK1wiLXF1ZXN0aW9uXCI7XG4gIH1cbiAgZ2V0SGVhZGVycygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNlbGwuaGVhZGVycztcbiAgfVxuICBnZXRDZWxsU3R5bGUoKSB7XG4gICAgaWYgKCEhdGhpcy5jZWxsLndpZHRoIHx8ICEhdGhpcy5jZWxsLm1pbldpZHRoKVxuICAgICAgcmV0dXJuIHsgd2lkdGg6IHRoaXMuY2VsbC53aWR0aCwgbWluV2lkdGg6IHRoaXMuY2VsbC5taW5XaWR0aCB9O1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuY2VsbC5oYXNRdWVzdGlvbiB8fCAhdGhpcy5xdWVzdGlvbiB8fCAhdGhpcy5xdWVzdGlvbi5zdXJ2ZXkpIHJldHVybjtcbiAgICB2YXIgb3B0aW9ucyA9IHtcbiAgICAgIGNlbGw6IHRoaXMuY2VsbC5jZWxsLFxuICAgICAgY2VsbFF1ZXN0aW9uOiB0aGlzLmNlbGwucXVlc3Rpb24sXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5jZWxsQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICByb3c6IHRoaXMuY2VsbC5yb3csXG4gICAgICBjb2x1bW46IHRoaXMuY2VsbC5jZWxsLmNvbHVtbixcbiAgICB9O1xuICAgIHRoaXMucXVlc3Rpb24uc3VydmV5Lm1hdHJpeEFmdGVyQ2VsbFJlbmRlcih0aGlzLnF1ZXN0aW9uLCBvcHRpb25zKTtcbiAgfVxufSIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDx0ZCBbY2xhc3NdPVwiY2VsbC5jbGFzc05hbWVcIiBbYXR0ci5kYXRhLXJlc3BvbnNpdmUtdGl0bGVdPVwiZ2V0SGVhZGVycygpXCIgW3RpdGxlXT1cImNlbGwuZ2V0VGl0bGUoKVwiIFtzdHlsZV09XCJnZXRDZWxsU3R5bGUoKVwiIFthdHRyLmNvbHNwYW5dPVwiY2VsbC5jb2xTcGFuc1wiICNjZWxsQ29udGFpbmVyPlxuICAgIDxzdi1hY3Rpb24tYmFyICpuZ0lmPVwiY2VsbC5pc0FjdGlvbnNDZWxsXCIgW21vZGVsXT1cImNlbGwuaXRlbS5nZXREYXRhKClcIiBbaGFuZGxlQ2xpY2tdPVwiZmFsc2VcIj48L3N2LWFjdGlvbi1iYXI+XG4gICAgPHN2LW5nLXBhbmVsICpuZ0lmPVwiY2VsbC5oYXNQYW5lbFwiIFttb2RlbF09XCJjZWxsLnBhbmVsXCI+PC9zdi1uZy1wYW5lbD5cbiAgICA8ZGl2ICpuZ0lmPVwiY2VsbC5oYXNRdWVzdGlvblwiIFtjbGFzc109XCJxdWVzdGlvbi5jc3NDbGFzc2VzLmNlbGxRdWVzdGlvbldyYXBwZXJcIiBbdmlzaWJsZV09XCJjZWxsLnF1ZXN0aW9uLmlzVmlzaWJsZVwiPlxuICAgICAgPGRpdiAqbmdJZj1cImNlbGwuc2hvd0Vycm9yT25Ub3AgJiYgY2VsbC5xdWVzdGlvbi5oYXNWaXNpYmxlRXJyb3JzXCIgW2VsZW1lbnRdPVwiY2VsbC5xdWVzdGlvblwiIFtsb2NhdGlvbl09XCIndG9wJ1wiIHN2LW5nLWVycm9ycz48L2Rpdj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cIiFjZWxsLmlzQ2hvaWNlICYmIGNlbGwucXVlc3Rpb24uaXNEZWZhdWx0UmVuZGVyaW5nKClcIiBbY29tcG9uZW50XT1cInsgbmFtZTogZ2V0Q29tcG9uZW50TmFtZShjZWxsLnF1ZXN0aW9uKSwgZGF0YTogeyBtb2RlbDogY2VsbC5xdWVzdGlvbiB9IH1cIj48L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiIWNlbGwuaXNDaG9pY2UgJiYgIWNlbGwucXVlc3Rpb24uaXNEZWZhdWx0UmVuZGVyaW5nKClcIiBbY29tcG9uZW50XT1cInsgbmFtZTogY2VsbC5xdWVzdGlvbi5nZXRDb21wb25lbnROYW1lKCksIGRhdGE6IHsgbW9kZWw6IGNlbGwucXVlc3Rpb24gfSB9XCI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPHN2LW5nLXNlbGViYXNlLWl0ZW1cbiAgICAgICAgKm5nSWY9XCJjZWxsLmlzSXRlbUNob2ljZVwiXG4gICAgICAgIFtzaG93TGFiZWxdPVwiZmFsc2VcIlxuICAgICAgICBbaW5wdXRUeXBlXT1cImNlbGwuaXNDaGVja2JveCA/ICdjaGVja2JveCc6ICdyYWRpbydcIlxuICAgICAgICBbcXVlc3Rpb25dPVwiY2VsbC5xdWVzdGlvblwiXG4gICAgICAgIFttb2RlbF09XCJjZWxsLml0ZW1cIlxuICAgICAgPjwvc3Ytbmctc2VsZWJhc2UtaXRlbT5cbiAgICAgIDxkaXYgKm5nSWY9XCJjZWxsLmlzT3RoZXJDaG9pY2VcIiBjbGFzcz1cImZvcm0tZ3JvdXBcIiBbcXVlc3Rpb25dPVwiY2VsbC5xdWVzdGlvblwiIHN2LW5nLWNvbW1lbnQ+PC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY2VsbC5zaG93RXJyb3JPbkJvdHRvbSAmJiBjZWxsLnF1ZXN0aW9uLmhhc1Zpc2libGVFcnJvcnNcIiBbZWxlbWVudF09XCJjZWxsLnF1ZXN0aW9uXCIgW2xvY2F0aW9uXT1cIid0b3AnXCIgc3YtbmctZXJyb3JzPjwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNlbGwucXVlc3Rpb24uaXNFcnJvcnNNb2RlVG9vbHRpcCAmJiBjZWxsLnF1ZXN0aW9uLmhhc1Zpc2libGVFcnJvcnNcIiBbZWxlbWVudF09XCJjZWxsLnF1ZXN0aW9uXCIgW2xvY2F0aW9uXT1cIid0b29sdGlwJ1wiIHN2LW5nLWVycm9ycz48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8c3Ytbmctc3RyaW5nICpuZ0lmPVwiY2VsbC5oYXNUaXRsZVwiIFttb2RlbF09XCJjZWxsLmxvY1RpdGxlXCI+PC9zdi1uZy1zdHJpbmc+XG4gICAgPHNwYW4gKm5nSWY9XCIhIWNlbGwucmVxdWlyZWRUZXh0XCIgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuY2VsbFJlcXVpcmVkVGV4dFwiPnt7IGNlbGwucmVxdWlyZWRUZXh0IH19PC9zcGFuPlxuPC90ZD5cbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Component, Input, ViewChild } from "@angular/core";
|
|
2
|
+
import { SvgRegistry } from "survey-core";
|
|
3
|
+
import { BaseAngular } from "./base-angular";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "./components/survey-header/survey-header.component";
|
|
6
|
+
import * as i2 from "./components/action-bar/action-bar.component";
|
|
7
|
+
import * as i3 from "./page.component";
|
|
8
|
+
import * as i4 from "./components/brand-info/brand-info.component";
|
|
9
|
+
import * as i5 from "@angular/common";
|
|
10
|
+
import * as i6 from "@angular/forms";
|
|
11
|
+
import * as i7 from "./utils/dynamic.directive";
|
|
12
|
+
export class SurveyContentComponent extends BaseAngular {
|
|
13
|
+
getModel() {
|
|
14
|
+
return this.model;
|
|
15
|
+
}
|
|
16
|
+
onModelChanged() {
|
|
17
|
+
this.model.renderCallback = () => {
|
|
18
|
+
this.detectChanges();
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
ngOnInit() {
|
|
22
|
+
super.ngOnInit();
|
|
23
|
+
if (this.model["needRenderIcons"]) {
|
|
24
|
+
SvgRegistry.renderIcons();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
ngOnDestroy() {
|
|
28
|
+
super.ngOnDestroy();
|
|
29
|
+
this.model.renderCallback = undefined;
|
|
30
|
+
}
|
|
31
|
+
ngAfterViewInit() {
|
|
32
|
+
this.model.afterRenderSurvey(this.rootEl.nativeElement);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
SurveyContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyContentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
+
SurveyContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: SurveyContentComponent, selector: "survey-content", inputs: { model: "model" }, viewQueries: [{ propertyName: "rootEl", first: true, predicate: ["surveyContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div #surveyContainer *ngIf=\"!!model\" [class]=\"model.getRootCss()\" [style.width]=\"model.width\">\n <form onsubmit=\"return false;\">\n <div class=\"sv_custom_header\" [hidden]=\"model.hasLogo\"></div>\n <div [class]=\"model.css.container\">\n <div *ngIf=\"model.renderedHasHeader\" [class]=\"model.css.header\" [survey]=\"model\" sv-ng-survey-header></div>\n <div *ngIf=\"model.isShowingPage\" [class]=\"model.bodyCss\">\n <!-- ko if: isTimerPanelShowingOnTop && !isShowStartingPage -->\n <!-- ko template: { name: 'survey-timerpanel' } -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"model.isShowProgressBarOnTop && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnTop\" [model]=\"model.navigationBar\"></sv-action-bar>\n <!-- ko if: activePage -->\n <ng-container *ngIf=\"model.activePage\">\n <div [id]=\"model.activePage.id\">\n <page [model]=\"model.activePage\" [survey]=\"model\"></page>\n </div>\n </ng-container>\n <!-- ko if: activePage.rows.length == 0 && $data.emptyPageTemplate -->\n <!-- ko template: { name: emptyPageTemplate, data: $data.emptyPageTemplateData || $data } -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- ko if: isTimerPanelShowingOnBottom && !isShowStartingPage -->\n <!-- ko template: { name: 'survey-timerpanel' } -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"model.isShowProgressBarOnBottom && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnBottom\" [model]=\"model.navigationBar\"></sv-action-bar>\n </div>\n <div *ngIf=\"model.state === 'completed' && model.showCompletedPage\" [class]=\"model.completedCss\"\n [innerHtml]=\"model.processedCompletedHtml\"></div>\n <div [hidden]=\"model.completedState === ''\" [class]=\"model.css.saveData.root\">\n <div [class]=\"model.completedStateCss\">\n <span>{{model.completedStateText}}</span>\n <input type=\"button\" [hidden]=\"model.completedState != 'error'\"\n [value]=\"model.getLocString('saveAgainButton')\" (click)=\"model.doComplete()\"\n [class]=\"model.css.saveData.saveAgainButton\">\n </div>\n </div>\n <div *ngIf=\"model.state === 'completedbefore'\" [class]=\"model.css.body\"\n [innerHtml]=\"model.processedCompletedBeforeHtml\"></div>\n <div *ngIf=\"model.state === 'loading'\" [class]=\"model.css.body\" [innerHtml]=\"model.processedLoadingHtml\"></div>\n <div *ngIf=\"model.state === 'empty'\" [class]=\"model.css.bodyEmpty\">{{model.emptySurveyText}}</div>\n </div>\n </form>\n <sv-brand-info *ngIf=\"model.showBrandInfo\"></sv-brand-info>\n </div>\n</ng-template>", components: [{ type: i1.SurveyHeaderComponent, selector: "'[sv-ng-survey-header]'", inputs: ["survey"] }, { type: i2.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i3.PageComponent, selector: "page", inputs: ["model", "survey"] }, { type: i4.BrandInfoComponent, selector: "sv-brand-info" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyContentComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: "survey-content", template: "<ng-template #template>\n <div #surveyContainer *ngIf=\"!!model\" [class]=\"model.getRootCss()\" [style.width]=\"model.width\">\n <form onsubmit=\"return false;\">\n <div class=\"sv_custom_header\" [hidden]=\"model.hasLogo\"></div>\n <div [class]=\"model.css.container\">\n <div *ngIf=\"model.renderedHasHeader\" [class]=\"model.css.header\" [survey]=\"model\" sv-ng-survey-header></div>\n <div *ngIf=\"model.isShowingPage\" [class]=\"model.bodyCss\">\n <!-- ko if: isTimerPanelShowingOnTop && !isShowStartingPage -->\n <!-- ko template: { name: 'survey-timerpanel' } -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"model.isShowProgressBarOnTop && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnTop\" [model]=\"model.navigationBar\"></sv-action-bar>\n <!-- ko if: activePage -->\n <ng-container *ngIf=\"model.activePage\">\n <div [id]=\"model.activePage.id\">\n <page [model]=\"model.activePage\" [survey]=\"model\"></page>\n </div>\n </ng-container>\n <!-- ko if: activePage.rows.length == 0 && $data.emptyPageTemplate -->\n <!-- ko template: { name: emptyPageTemplate, data: $data.emptyPageTemplateData || $data } -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- ko if: isTimerPanelShowingOnBottom && !isShowStartingPage -->\n <!-- ko template: { name: 'survey-timerpanel' } -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"model.isShowProgressBarOnBottom && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnBottom\" [model]=\"model.navigationBar\"></sv-action-bar>\n </div>\n <div *ngIf=\"model.state === 'completed' && model.showCompletedPage\" [class]=\"model.completedCss\"\n [innerHtml]=\"model.processedCompletedHtml\"></div>\n <div [hidden]=\"model.completedState === ''\" [class]=\"model.css.saveData.root\">\n <div [class]=\"model.completedStateCss\">\n <span>{{model.completedStateText}}</span>\n <input type=\"button\" [hidden]=\"model.completedState != 'error'\"\n [value]=\"model.getLocString('saveAgainButton')\" (click)=\"model.doComplete()\"\n [class]=\"model.css.saveData.saveAgainButton\">\n </div>\n </div>\n <div *ngIf=\"model.state === 'completedbefore'\" [class]=\"model.css.body\"\n [innerHtml]=\"model.processedCompletedBeforeHtml\"></div>\n <div *ngIf=\"model.state === 'loading'\" [class]=\"model.css.body\" [innerHtml]=\"model.processedLoadingHtml\"></div>\n <div *ngIf=\"model.state === 'empty'\" [class]=\"model.css.bodyEmpty\">{{model.emptySurveyText}}</div>\n </div>\n </form>\n <sv-brand-info *ngIf=\"model.showBrandInfo\"></sv-brand-info>\n </div>\n</ng-template>" }]
|
|
40
|
+
}], propDecorators: { model: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], rootEl: [{
|
|
43
|
+
type: ViewChild,
|
|
44
|
+
args: ["surveyContainer", { static: false }]
|
|
45
|
+
}] } });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3N1cnZleS1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3BhY2thZ2VzL3N1cnZleS1hbmd1bGFyLXVpL3NyYy9zdXJ2ZXktY29udGVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWlCLFNBQVMsRUFBYyxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9GLE9BQU8sRUFBZSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7QUFLN0MsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFdBQXdCO0lBR3hELFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDa0IsY0FBYztRQUMvQixJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsR0FBRyxHQUFHLEVBQUU7WUFDL0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDUSxRQUFRO1FBQ2YsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFO1lBQ2hDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFDUSxXQUFXO1FBQ2xCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsR0FBUSxTQUFTLENBQUM7SUFDN0MsQ0FBQztJQUNELGVBQWU7UUFDYixJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDMUQsQ0FBQzs7bUhBdkJVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLG9OQ1JuQywwdkdBcURjOzJGRDdDRCxzQkFBc0I7a0JBSmxDLFNBQVM7K0JBQ0UsZ0JBQWdCOzhCQUlqQixLQUFLO3NCQUFiLEtBQUs7Z0JBQzJDLE1BQU07c0JBQXRELFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBTdXJ2ZXlNb2RlbCwgU3ZnUmVnaXN0cnkgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEJhc2VBbmd1bGFyIH0gZnJvbSBcIi4vYmFzZS1hbmd1bGFyXCI7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3VydmV5LWNvbnRlbnRcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9zdXJ2ZXktY29udGVudC5jb21wb25lbnQuaHRtbFwiXG59KVxuZXhwb3J0IGNsYXNzIFN1cnZleUNvbnRlbnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQW5ndWxhcjxTdXJ2ZXlNb2RlbD4gaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBtb2RlbCE6IFN1cnZleU1vZGVsO1xuICBAVmlld0NoaWxkKFwic3VydmV5Q29udGFpbmVyXCIsIHsgc3RhdGljOiBmYWxzZSB9KSByb290RWwhOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IFN1cnZleU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbDtcbiAgfVxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25Nb2RlbENoYW5nZWQoKTogdm9pZCB7XG4gICAgdGhpcy5tb2RlbC5yZW5kZXJDYWxsYmFjayA9ICgpID0+IHtcbiAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH07XG4gIH1cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICBpZih0aGlzLm1vZGVsW1wibmVlZFJlbmRlckljb25zXCJdKSB7XG4gICAgICBTdmdSZWdpc3RyeS5yZW5kZXJJY29ucygpO1xuICAgIH1cbiAgfVxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMubW9kZWwucmVuZGVyQ2FsbGJhY2sgPSA8YW55PnVuZGVmaW5lZDtcbiAgfVxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tb2RlbC5hZnRlclJlbmRlclN1cnZleSh0aGlzLnJvb3RFbC5uYXRpdmVFbGVtZW50KTtcbiAgfVxufSIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxkaXYgI3N1cnZleUNvbnRhaW5lciAqbmdJZj1cIiEhbW9kZWxcIiBbY2xhc3NdPVwibW9kZWwuZ2V0Um9vdENzcygpXCIgW3N0eWxlLndpZHRoXT1cIm1vZGVsLndpZHRoXCI+XG4gICAgPGZvcm0gb25zdWJtaXQ9XCJyZXR1cm4gZmFsc2U7XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwic3ZfY3VzdG9tX2hlYWRlclwiIFtoaWRkZW5dPVwibW9kZWwuaGFzTG9nb1wiPjwvZGl2PlxuICAgICAgPGRpdiBbY2xhc3NdPVwibW9kZWwuY3NzLmNvbnRhaW5lclwiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwucmVuZGVyZWRIYXNIZWFkZXJcIiBbY2xhc3NdPVwibW9kZWwuY3NzLmhlYWRlclwiIFtzdXJ2ZXldPVwibW9kZWxcIiBzdi1uZy1zdXJ2ZXktaGVhZGVyPjwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwuaXNTaG93aW5nUGFnZVwiIFtjbGFzc109XCJtb2RlbC5ib2R5Q3NzXCI+XG4gICAgICAgICAgPCEtLSBrbyBpZjogaXNUaW1lclBhbmVsU2hvd2luZ09uVG9wICYmICFpc1Nob3dTdGFydGluZ1BhZ2UgLS0+XG4gICAgICAgICAgPCEtLSBrbyB0ZW1wbGF0ZTogeyBuYW1lOiAnc3VydmV5LXRpbWVycGFuZWwnIH0gLS0+XG4gICAgICAgICAgPCEtLSAva28gLS0+XG4gICAgICAgICAgPCEtLSAva28gLS0+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGVsLmlzU2hvd1Byb2dyZXNzQmFyT25Ub3AgJiYgIW1vZGVsLmlzU2hvd1N0YXJ0aW5nUGFnZVwiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtjb21wb25lbnRdPSd7IG5hbWU6IFwic3YtcHJvZ3Jlc3MtXCIgKyB0aGlzLm1vZGVsLnByb2dyZXNzQmFyVHlwZSwgZGF0YTogeyBtb2RlbCB9IH0nPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPHN2LWFjdGlvbi1iYXIgKm5nSWY9XCJtb2RlbC5pc05hdmlnYXRpb25CdXR0b25zU2hvd2luZ09uVG9wXCIgW21vZGVsXT1cIm1vZGVsLm5hdmlnYXRpb25CYXJcIj48L3N2LWFjdGlvbi1iYXI+XG4gICAgICAgICAgPCEtLSBrbyBpZjogYWN0aXZlUGFnZSAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlbC5hY3RpdmVQYWdlXCI+XG4gICAgICAgICAgICAgIDxkaXYgW2lkXT1cIm1vZGVsLmFjdGl2ZVBhZ2UuaWRcIj5cbiAgICAgICAgICAgICAgICA8cGFnZSBbbW9kZWxdPVwibW9kZWwuYWN0aXZlUGFnZVwiIFtzdXJ2ZXldPVwibW9kZWxcIj48L3BhZ2U+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8IS0tIGtvIGlmOiBhY3RpdmVQYWdlLnJvd3MubGVuZ3RoID09IDAgJiYgJGRhdGEuZW1wdHlQYWdlVGVtcGxhdGUgLS0+XG4gICAgICAgICAgICA8IS0tIGtvIHRlbXBsYXRlOiB7IG5hbWU6IGVtcHR5UGFnZVRlbXBsYXRlLCBkYXRhOiAkZGF0YS5lbXB0eVBhZ2VUZW1wbGF0ZURhdGEgfHwgJGRhdGEgfSAtLT5cbiAgICAgICAgICAgIDwhLS0gL2tvIC0tPlxuICAgICAgICAgICAgPCEtLSAva28gLS0+XG4gICAgICAgICAgPCEtLSAva28gLS0+XG4gICAgICAgICAgPCEtLSBrbyBpZjogaXNUaW1lclBhbmVsU2hvd2luZ09uQm90dG9tICYmICFpc1Nob3dTdGFydGluZ1BhZ2UgLS0+XG4gICAgICAgICAgPCEtLSBrbyB0ZW1wbGF0ZTogeyBuYW1lOiAnc3VydmV5LXRpbWVycGFuZWwnIH0gLS0+XG4gICAgICAgICAgPCEtLSAva28gLS0+XG4gICAgICAgICAgPCEtLSAva28gLS0+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGVsLmlzU2hvd1Byb2dyZXNzQmFyT25Cb3R0b20gJiYgIW1vZGVsLmlzU2hvd1N0YXJ0aW5nUGFnZVwiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtjb21wb25lbnRdPSd7IG5hbWU6IFwic3YtcHJvZ3Jlc3MtXCIgKyB0aGlzLm1vZGVsLnByb2dyZXNzQmFyVHlwZSwgZGF0YTogeyBtb2RlbCB9IH0nPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPHN2LWFjdGlvbi1iYXIgKm5nSWY9XCJtb2RlbC5pc05hdmlnYXRpb25CdXR0b25zU2hvd2luZ09uQm90dG9tXCIgW21vZGVsXT1cIm1vZGVsLm5hdmlnYXRpb25CYXJcIj48L3N2LWFjdGlvbi1iYXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwuc3RhdGUgPT09ICdjb21wbGV0ZWQnICYmIG1vZGVsLnNob3dDb21wbGV0ZWRQYWdlXCIgW2NsYXNzXT1cIm1vZGVsLmNvbXBsZXRlZENzc1wiXG4gICAgICAgICAgW2lubmVySHRtbF09XCJtb2RlbC5wcm9jZXNzZWRDb21wbGV0ZWRIdG1sXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgW2hpZGRlbl09XCJtb2RlbC5jb21wbGV0ZWRTdGF0ZSA9PT0gJydcIiBbY2xhc3NdPVwibW9kZWwuY3NzLnNhdmVEYXRhLnJvb3RcIj5cbiAgICAgICAgICA8ZGl2IFtjbGFzc109XCJtb2RlbC5jb21wbGV0ZWRTdGF0ZUNzc1wiPlxuICAgICAgICAgICAgPHNwYW4+e3ttb2RlbC5jb21wbGV0ZWRTdGF0ZVRleHR9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiYnV0dG9uXCIgW2hpZGRlbl09XCJtb2RlbC5jb21wbGV0ZWRTdGF0ZSAhPSAnZXJyb3InXCJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cIm1vZGVsLmdldExvY1N0cmluZygnc2F2ZUFnYWluQnV0dG9uJylcIiAoY2xpY2spPVwibW9kZWwuZG9Db21wbGV0ZSgpXCJcbiAgICAgICAgICAgICAgW2NsYXNzXT1cIm1vZGVsLmNzcy5zYXZlRGF0YS5zYXZlQWdhaW5CdXR0b25cIj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJtb2RlbC5zdGF0ZSA9PT0gJ2NvbXBsZXRlZGJlZm9yZSdcIiBbY2xhc3NdPVwibW9kZWwuY3NzLmJvZHlcIlxuICAgICAgICAgIFtpbm5lckh0bWxdPVwibW9kZWwucHJvY2Vzc2VkQ29tcGxldGVkQmVmb3JlSHRtbFwiPjwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwuc3RhdGUgPT09ICdsb2FkaW5nJ1wiIFtjbGFzc109XCJtb2RlbC5jc3MuYm9keVwiIFtpbm5lckh0bWxdPVwibW9kZWwucHJvY2Vzc2VkTG9hZGluZ0h0bWxcIj48L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm1vZGVsLnN0YXRlID09PSAnZW1wdHknXCIgW2NsYXNzXT1cIm1vZGVsLmNzcy5ib2R5RW1wdHlcIj57e21vZGVsLmVtcHR5U3VydmV5VGV4dH19PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Zvcm0+XG4gICAgPHN2LWJyYW5kLWluZm8gKm5nSWY9XCJtb2RlbC5zaG93QnJhbmRJbmZvXCI+PC9zdi1icmFuZC1pbmZvPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -1,14 +1,7 @@
|
|
|
1
|
-
import { Component, Input
|
|
2
|
-
import { SvgRegistry } from "survey-core";
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
3
2
|
import { BaseAngular } from "./base-angular";
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "./
|
|
6
|
-
import * as i2 from "./components/action-bar/action-bar.component";
|
|
7
|
-
import * as i3 from "./page.component";
|
|
8
|
-
import * as i4 from "./components/brand-info/brand-info.component";
|
|
9
|
-
import * as i5 from "@angular/common";
|
|
10
|
-
import * as i6 from "@angular/forms";
|
|
11
|
-
import * as i7 from "./utils/dynamic.directive";
|
|
4
|
+
import * as i1 from "./survey-content.component";
|
|
12
5
|
export class SurveyComponent extends BaseAngular {
|
|
13
6
|
constructor(changeDetectorRef) {
|
|
14
7
|
super(changeDetectorRef);
|
|
@@ -19,32 +12,17 @@ export class SurveyComponent extends BaseAngular {
|
|
|
19
12
|
}
|
|
20
13
|
onModelChanged() {
|
|
21
14
|
this.changeDetectorRef.detectChanges();
|
|
22
|
-
this.model.renderCallback = () => {
|
|
23
|
-
this.changeDetectorRef.detectChanges();
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
ngOnInit() {
|
|
27
|
-
if (this.model["needRenderIcons"]) {
|
|
28
|
-
SvgRegistry.renderIcons();
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
ngOnDestroy() {
|
|
32
|
-
super.ngOnDestroy();
|
|
33
|
-
this.model.renderCallback = undefined;
|
|
34
|
-
}
|
|
35
|
-
ngAfterViewInit() {
|
|
36
|
-
this.model.afterRenderSurvey(this.rootEl.nativeElement);
|
|
37
15
|
}
|
|
38
16
|
}
|
|
39
17
|
SurveyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
40
|
-
SurveyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: SurveyComponent, selector: "survey", inputs: { model: "model" },
|
|
18
|
+
SurveyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: SurveyComponent, selector: "survey", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<survey-content [model]='model'></survey-content>", isInline: true, components: [{ type: i1.SurveyContentComponent, selector: "survey-content", inputs: ["model"] }] });
|
|
41
19
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyComponent, decorators: [{
|
|
42
20
|
type: Component,
|
|
43
|
-
args: [{
|
|
21
|
+
args: [{
|
|
22
|
+
selector: "survey",
|
|
23
|
+
template: "<survey-content [model]='model'></survey-content>"
|
|
24
|
+
}]
|
|
44
25
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { model: [{
|
|
45
26
|
type: Input
|
|
46
|
-
}], rootEl: [{
|
|
47
|
-
type: ViewChild,
|
|
48
|
-
args: ["surveyContainer", { static: false }]
|
|
49
27
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL3N1cnZleS1hbmd1bGFyLXVpL3NyYy9zdXJ2ZXkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUs3QyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxXQUF3QjtJQUszRCxZQUFZLGlCQUFvQztRQUM5QyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN6QixpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBTlMsUUFBUTtRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUtrQixjQUFjO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDOzs0R0FYVSxlQUFlO2dHQUFmLGVBQWUsaUdBRmhCLG1EQUFtRDsyRkFFbEQsZUFBZTtrQkFKM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsUUFBUTtvQkFDbEIsUUFBUSxFQUFFLG1EQUFtRDtpQkFDOUQ7d0dBRVUsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3VydmV5TW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEJhc2VBbmd1bGFyIH0gZnJvbSBcIi4vYmFzZS1hbmd1bGFyXCI7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3VydmV5XCIsXG4gIHRlbXBsYXRlOiBcIjxzdXJ2ZXktY29udGVudCBbbW9kZWxdPSdtb2RlbCc+PC9zdXJ2ZXktY29udGVudD5cIlxufSlcbmV4cG9ydCBjbGFzcyBTdXJ2ZXlDb21wb25lbnQgZXh0ZW5kcyBCYXNlQW5ndWxhcjxTdXJ2ZXlNb2RlbD4ge1xuICBASW5wdXQoKSBtb2RlbCE6IFN1cnZleU1vZGVsO1xuICBwcm90ZWN0ZWQgZ2V0TW9kZWwoKTogU3VydmV5TW9kZWwge1xuICAgIHJldHVybiB0aGlzLm1vZGVsO1xuICB9XG4gIGNvbnN0cnVjdG9yKGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICBjaGFuZ2VEZXRlY3RvclJlZi5kZXRhY2goKTtcbiAgfVxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25Nb2RlbENoYW5nZWQoKTogdm9pZCB7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbn0iXX0=
|
|
@@ -25,6 +25,8 @@ export class DynamicComponentDirective {
|
|
|
25
25
|
this.updateComponentData();
|
|
26
26
|
}
|
|
27
27
|
updateComponentData() {
|
|
28
|
+
if (!this.componentInstance)
|
|
29
|
+
return;
|
|
28
30
|
const data = this.component.data;
|
|
29
31
|
Object.keys(data).forEach((key) => {
|
|
30
32
|
this.componentInstance[key] = data[key];
|
|
@@ -41,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
|
41
43
|
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { component: [{
|
|
42
44
|
type: Input
|
|
43
45
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvdXRpbHMvZHluYW1pYy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQThDLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQVkvRCxNQUFNLE9BQU8seUJBQXlCO0lBQ3BDLFlBQW9CLFlBQThCO1FBQTlCLGlCQUFZLEdBQVosWUFBWSxDQUFrQjtJQUFJLENBQUM7SUFHdkQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzlDLElBQUcsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLElBQUksS0FBSyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsSUFBSSxFQUFFO1lBQzlFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztTQUN4QjthQUFNO1lBQ0wsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBQ0QsZUFBZTtRQUNiLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDMUIsSUFBRyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM5RSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsdUJBQXVCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDO1NBQ25IO2FBQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRTtZQUNqQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsdUJBQXVCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDO1NBQ3RIO1FBQ0QsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUNELG1CQUFtQjtRQUNqQixJQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUFFLE9BQU87UUFDbkMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7UUFDakMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNoQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7c0hBM0JVLHlCQUF5QjswR0FBekIseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBSnJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7aUJBQ3hCO3VHQUlVLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcblxuaW50ZXJmYWNlIElEeW5hbWljQ29tcG9uZW50IHtcbiAgbmFtZTogc3RyaW5nO1xuICBkYXRhPzogYW55O1xuICBkZWZhdWx0Pzogc3RyaW5nO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW2NvbXBvbmVudF1cIlxufSlcblxuZXhwb3J0IGNsYXNzIER5bmFtaWNDb21wb25lbnREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZikgeyB9XG4gIEBJbnB1dCgpIGNvbXBvbmVudCE6IElEeW5hbWljQ29tcG9uZW50O1xuICBwcml2YXRlIGNvbXBvbmVudEluc3RhbmNlOiBhbnk7XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCBjb21wb25lbnRDaGFuZ2VzID0gY2hhbmdlc1tcImNvbXBvbmVudFwiXTtcbiAgICBpZihjb21wb25lbnRDaGFuZ2VzLmN1cnJlbnRWYWx1ZS5uYW1lICE9PSBjb21wb25lbnRDaGFuZ2VzLnByZXZpb3VzVmFsdWU/Lm5hbWUpIHtcbiAgICAgIHRoaXMuY3JlYXRlQ29tcG9uZW50KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudXBkYXRlQ29tcG9uZW50RGF0YSgpO1xuICAgIH1cbiAgfVxuICBjcmVhdGVDb21wb25lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250YWluZXJSZWYuY2xlYXIoKTtcbiAgICBpZihBbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5pc0NvbXBvbmVudFJlZ2lzdGVyZWQodGhpcy5jb21wb25lbnQubmFtZSkpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UgPSBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5jcmVhdGUodGhpcy5jb250YWluZXJSZWYsIHRoaXMuY29tcG9uZW50Lm5hbWUpLmluc3RhbmNlO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jb21wb25lbnQuZGVmYXVsdCkge1xuICAgICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZSA9IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLmNyZWF0ZSh0aGlzLmNvbnRhaW5lclJlZiwgdGhpcy5jb21wb25lbnQuZGVmYXVsdCkuaW5zdGFuY2U7XG4gICAgfVxuICAgIHRoaXMudXBkYXRlQ29tcG9uZW50RGF0YSgpO1xuICB9XG4gIHVwZGF0ZUNvbXBvbmVudERhdGEoKTogdm9pZCB7XG4gICAgaWYoIXRoaXMuY29tcG9uZW50SW5zdGFuY2UpIHJldHVybjtcbiAgICBjb25zdCBkYXRhID0gdGhpcy5jb21wb25lbnQuZGF0YTtcbiAgICBPYmplY3Qua2V5cyhkYXRhKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2Vba2V5XSA9IGRhdGFba2V5XTtcbiAgICB9KTtcbiAgfVxufSJdfQ==
|