survey-angular-ui 1.9.72 → 1.9.75
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/README.md +23 -192
- package/angular-ui.d.ts +2 -0
- package/angular-ui.module.d.ts +82 -80
- package/bundles/survey-angular-ui.umd.js +4338 -0
- package/bundles/survey-angular-ui.umd.js.map +1 -0
- package/component-factory.d.ts +2 -2
- package/components/character-counter/character-counter.component.d.ts +10 -0
- package/components/rating/rating-item.component.d.ts +13 -0
- package/esm2015/angular-ui.js +105 -0
- package/esm2015/angular-ui.module.js +188 -0
- package/esm2015/base-angular.js +128 -0
- package/esm2015/comment-other.component.js +35 -0
- package/esm2015/comment.component.js +24 -0
- package/esm2015/component-factory.js +26 -0
- package/esm2015/components/action-bar/action-bar-item-dropdown.component.js +36 -0
- package/esm2015/components/action-bar/action-bar-item.component.js +26 -0
- package/esm2015/components/action-bar/action-bar.component.js +47 -0
- package/esm2015/components/action-bar/action.component.js +31 -0
- package/esm2015/components/brand-info/brand-info.component.js +16 -0
- package/esm2015/components/character-counter/character-counter.component.js +25 -0
- package/esm2015/components/dropdown/dropdown.component.js +76 -0
- package/esm2015/components/element-header/element-header.component.js +35 -0
- package/esm2015/components/element-title/dynamic-head.component.js +24 -0
- package/esm2015/components/element-title/element-title.component.js +21 -0
- package/esm2015/components/element-title/title-actions.component.js +21 -0
- package/esm2015/components/list/list-item.component.js +52 -0
- package/esm2015/components/list/list.component.js +55 -0
- package/esm2015/components/matrix-actions/detail-button/detail-button.component.js +28 -0
- package/esm2015/components/matrix-actions/drag-drop-icon/drag-drop-icon.js +24 -0
- package/esm2015/components/matrix-actions/remove-button/remove-button.component.js +28 -0
- package/esm2015/components/notifier/notifier.component.js +26 -0
- package/esm2015/components/paneldynamic-actions/paneldynamic-add-btn.component.js +38 -0
- package/esm2015/components/paneldynamic-actions/paneldynamic-next-btn.component.js +21 -0
- package/esm2015/components/paneldynamic-actions/paneldynamic-prev-btn.component.js +21 -0
- package/esm2015/components/paneldynamic-actions/paneldynamic-progress-text.component.js +17 -0
- package/esm2015/components/paneldynamic-actions/paneldynamic-remove-btn.component.js +20 -0
- package/esm2015/components/popup/modal-container.component.js +46 -0
- package/esm2015/components/popup/popup-container.component.js +59 -0
- package/esm2015/components/popup/popup-pointer.component.js +25 -0
- package/esm2015/components/popup/popup.component.js +45 -0
- package/esm2015/components/popup/popup.service.js +26 -0
- package/esm2015/components/progress/buttons/progress.component.js +71 -0
- package/esm2015/components/progress/default/progress.component.js +30 -0
- package/esm2015/components/rating/rating-item.component.js +34 -0
- package/esm2015/components/renderAs/boolean-checkbox/boolean-checkbox.component.js +24 -0
- package/esm2015/components/renderAs/boolean-radio/boolean-radio-item.component.js +25 -0
- package/esm2015/components/renderAs/boolean-radio/boolean-radio.component.js +21 -0
- package/esm2015/components/renderAs/dropdown-select/dropdown-option-item.component.js +23 -0
- package/esm2015/components/renderAs/dropdown-select/dropdown-select.component.js +41 -0
- package/esm2015/components/renderAs/rating-dropdown/rating-dropdown.component.js +21 -0
- package/esm2015/components/skeleton/skeleton.component.js +20 -0
- package/esm2015/components/skeleton.component.js +19 -0
- package/esm2015/components/survey-actions/survey-nav-btn.component.js +26 -0
- package/esm2015/components/survey-header/logo-image.component.js +24 -0
- package/esm2015/components/survey-header/survey-header.component.js +33 -0
- package/esm2015/components/svg-icon/svg-icon.component.js +68 -0
- package/esm2015/components/tagbox/tagbox-filter.component.js +26 -0
- package/esm2015/components/tagbox/tagbox-item.component.js +30 -0
- package/esm2015/components/tagbox/tagbox.component.js +52 -0
- package/esm2015/components/timer-panel/timer-panel.component.js +35 -0
- package/esm2015/element.component.js +59 -0
- package/esm2015/embedded-view-content.component.js +25 -0
- package/esm2015/errors.component.js +61 -0
- package/esm2015/page.component.js +40 -0
- package/esm2015/panel.component.js +42 -0
- package/esm2015/popup.survey.component.js +49 -0
- package/esm2015/question.component.js +58 -0
- package/esm2015/question.js +35 -0
- package/esm2015/questions/boolean.component.js +23 -0
- package/esm2015/questions/button-group/button-group-item.component.js +33 -0
- package/esm2015/questions/button-group/button-group.component.js +17 -0
- package/esm2015/questions/checkbox-item.component.js +28 -0
- package/esm2015/questions/checkbox.component.js +20 -0
- package/esm2015/questions/comment.component.js +22 -0
- package/esm2015/questions/composite.component.js +21 -0
- package/esm2015/questions/custom.component.js +27 -0
- package/esm2015/questions/customwidget.component.js +54 -0
- package/esm2015/questions/dropdown.component.js +20 -0
- package/esm2015/questions/expression.component.js +17 -0
- package/esm2015/questions/file.component.js +29 -0
- package/esm2015/questions/html.component.js +29 -0
- package/esm2015/questions/image.component.js +29 -0
- package/esm2015/questions/imagepicker-item.component.js +52 -0
- package/esm2015/questions/imagepicker.component.js +32 -0
- package/esm2015/questions/matrix-row.component.js +31 -0
- package/esm2015/questions/matrix.component.js +40 -0
- package/esm2015/questions/matrixcell.component.js +94 -0
- package/esm2015/questions/matrixdropdown.component.js +19 -0
- package/esm2015/questions/matrixdynamic.component.js +20 -0
- package/esm2015/questions/matrixrequiredheader.component.js +24 -0
- package/esm2015/questions/matrixtable.component.js +34 -0
- package/esm2015/questions/multipletext.component.js +28 -0
- package/esm2015/questions/multipletextitem.component.js +26 -0
- package/esm2015/questions/paneldynamic.component.js +82 -0
- package/esm2015/questions/radiogroup-item.component.js +22 -0
- package/esm2015/questions/radiogroup.component.js +25 -0
- package/esm2015/questions/ranking-item.component.js +27 -0
- package/esm2015/questions/ranking.component.js +34 -0
- package/esm2015/questions/rating.component.js +27 -0
- package/esm2015/questions/selectbase-item.js +37 -0
- package/esm2015/questions/selectbase.component.js +53 -0
- package/esm2015/questions/signature.component.js +20 -0
- package/esm2015/questions/tagbox.component.js +20 -0
- package/esm2015/questions/text.component.js +21 -0
- package/esm2015/row.component.js +63 -0
- package/esm2015/string-editor.component.js +29 -0
- package/esm2015/string-viewer.component.js +41 -0
- package/esm2015/survey-angular-ui.js +5 -0
- package/esm2015/survey-content.component.js +72 -0
- package/esm2015/survey-string.component.js +17 -0
- package/esm2015/survey.component.js +32 -0
- package/esm2015/template-renderer.component.js +27 -0
- package/esm2015/utils/dynamic.directive.js +54 -0
- package/esm2015/utils/ng-key2click.directive.js +69 -0
- package/esm2015/utils/ng-show.directive.js +27 -0
- package/esm2015/utils/safe-html.pipe.js +18 -0
- package/esm2015/utils/safe-url.pipe.js +33 -0
- package/esm2020/angular-ui.mjs +103 -103
- package/esm2020/angular-ui.module.mjs +184 -184
- package/esm2020/base-angular.mjs +128 -128
- package/esm2020/comment-other.component.mjs +32 -32
- package/esm2020/comment.component.mjs +21 -21
- package/esm2020/component-factory.mjs +26 -26
- package/esm2020/components/action-bar/action-bar-item-dropdown.component.mjs +32 -32
- package/esm2020/components/action-bar/action-bar-item.component.mjs +22 -22
- package/esm2020/components/action-bar/action-bar.component.mjs +43 -43
- package/esm2020/components/action-bar/action.component.mjs +27 -27
- package/esm2020/components/brand-info/brand-info.component.mjs +13 -13
- package/esm2020/components/dropdown/dropdown.component.mjs +66 -66
- package/esm2020/components/element-header/element-header.component.mjs +32 -32
- package/esm2020/components/element-title/dynamic-head.component.mjs +20 -20
- package/esm2020/components/element-title/element-title.component.mjs +17 -17
- package/esm2020/components/element-title/title-actions.component.mjs +17 -17
- package/esm2020/components/list/list-item.component.mjs +48 -48
- package/esm2020/components/list/list.component.mjs +50 -50
- package/esm2020/components/matrix-actions/detail-button/detail-button.component.mjs +25 -25
- package/esm2020/components/matrix-actions/drag-drop-icon/drag-drop-icon.mjs +20 -20
- package/esm2020/components/matrix-actions/remove-button/remove-button.component.mjs +25 -25
- package/esm2020/components/notifier/notifier.component.mjs +22 -22
- package/esm2020/components/paneldynamic-actions/paneldynamic-add-btn.component.mjs +35 -35
- package/esm2020/components/paneldynamic-actions/paneldynamic-next-btn.component.mjs +18 -18
- package/esm2020/components/paneldynamic-actions/paneldynamic-prev-btn.component.mjs +18 -18
- package/esm2020/components/paneldynamic-actions/paneldynamic-progress-text.component.mjs +14 -14
- package/esm2020/components/paneldynamic-actions/paneldynamic-remove-btn.component.mjs +17 -17
- package/esm2020/components/popup/modal-container.component.mjs +42 -42
- package/esm2020/components/popup/popup-container.component.mjs +56 -56
- package/esm2020/components/popup/popup-pointer.component.mjs +22 -22
- package/esm2020/components/popup/popup.component.mjs +43 -43
- package/esm2020/components/popup/popup.service.mjs +26 -26
- package/esm2020/components/progress/buttons/progress.component.mjs +67 -67
- package/esm2020/components/progress/default/progress.component.mjs +27 -27
- package/esm2020/components/renderAs/boolean-checkbox/boolean-checkbox.component.mjs +21 -21
- package/esm2020/components/renderAs/boolean-radio/boolean-radio-item.component.mjs +22 -22
- package/esm2020/components/renderAs/boolean-radio/boolean-radio.component.mjs +18 -18
- package/esm2020/components/renderAs/dropdown-select/dropdown-option-item.component.mjs +23 -23
- package/esm2020/components/renderAs/dropdown-select/dropdown-select.component.mjs +38 -38
- package/esm2020/components/renderAs/rating-dropdown/rating-dropdown.component.mjs +18 -18
- package/esm2020/components/skeleton/skeleton.component.mjs +16 -16
- package/esm2020/components/skeleton.component.mjs +15 -15
- package/esm2020/components/survey-actions/survey-nav-btn.component.mjs +22 -22
- package/esm2020/components/survey-header/logo-image.component.mjs +20 -20
- package/esm2020/components/survey-header/survey-header.component.mjs +30 -30
- package/esm2020/components/svg-icon/svg-icon.component.mjs +68 -68
- package/esm2020/components/tagbox/tagbox-filter.component.mjs +22 -22
- package/esm2020/components/tagbox/tagbox-item.component.mjs +27 -27
- package/esm2020/components/tagbox/tagbox.component.mjs +44 -44
- package/esm2020/components/timer-panel/timer-panel.component.mjs +32 -32
- package/esm2020/element.component.mjs +55 -55
- package/esm2020/embedded-view-content.component.mjs +24 -24
- package/esm2020/errors.component.mjs +58 -58
- package/esm2020/page.component.mjs +35 -35
- package/esm2020/panel.component.mjs +38 -38
- package/esm2020/popup.survey.component.mjs +44 -44
- package/esm2020/question.component.mjs +54 -54
- package/esm2020/question.mjs +33 -33
- package/esm2020/questions/boolean.component.mjs +20 -20
- package/esm2020/questions/button-group/button-group-item.component.mjs +29 -29
- package/esm2020/questions/button-group/button-group.component.mjs +14 -14
- package/esm2020/questions/checkbox-item.component.mjs +24 -36
- package/esm2020/questions/checkbox.component.mjs +17 -17
- package/esm2020/questions/comment.component.mjs +18 -18
- package/esm2020/questions/composite.component.mjs +21 -21
- package/esm2020/questions/custom.component.mjs +27 -27
- package/esm2020/questions/customwidget.component.mjs +51 -51
- package/esm2020/questions/dropdown.component.mjs +17 -17
- package/esm2020/questions/expression.component.mjs +17 -17
- package/esm2020/questions/file.component.mjs +25 -25
- package/esm2020/questions/html.component.mjs +25 -25
- package/esm2020/questions/image.component.mjs +26 -26
- package/esm2020/questions/imagepicker-item.component.mjs +48 -48
- package/esm2020/questions/imagepicker.component.mjs +29 -29
- package/esm2020/questions/matrix-row.component.mjs +27 -27
- package/esm2020/questions/matrix.component.mjs +36 -36
- package/esm2020/questions/matrixcell.component.mjs +90 -90
- package/esm2020/questions/matrixdropdown.component.mjs +16 -16
- package/esm2020/questions/matrixdynamic.component.mjs +17 -17
- package/esm2020/questions/matrixrequiredheader.component.mjs +24 -24
- package/esm2020/questions/matrixtable.component.mjs +31 -31
- package/esm2020/questions/multipletext.component.mjs +25 -25
- package/esm2020/questions/multipletextitem.component.mjs +23 -23
- package/esm2020/questions/paneldynamic.component.mjs +79 -79
- package/esm2020/questions/radiogroup-item.component.mjs +18 -18
- package/esm2020/questions/radiogroup.component.mjs +22 -22
- package/esm2020/questions/ranking-item.component.mjs +24 -24
- package/esm2020/questions/ranking.component.mjs +31 -31
- package/esm2020/questions/rating.component.mjs +23 -23
- package/esm2020/questions/selectbase-item.mjs +33 -33
- package/esm2020/questions/selectbase.component.mjs +50 -47
- package/esm2020/questions/signature.component.mjs +17 -17
- package/esm2020/questions/tagbox.component.mjs +17 -17
- package/esm2020/questions/text.component.mjs +16 -16
- package/esm2020/row.component.mjs +58 -58
- package/esm2020/string-editor.component.mjs +26 -26
- package/esm2020/string-viewer.component.mjs +37 -37
- package/esm2020/survey-angular-ui.mjs +5 -5
- package/esm2020/survey-content.component.mjs +69 -69
- package/esm2020/survey-string.component.mjs +17 -17
- package/esm2020/survey.component.mjs +32 -32
- package/esm2020/template-renderer.component.mjs +23 -23
- package/esm2020/utils/dynamic.directive.mjs +52 -52
- package/esm2020/utils/ng-key2click.directive.mjs +69 -69
- package/esm2020/utils/ng-show.directive.mjs +27 -27
- package/esm2020/utils/safe-html.pipe.mjs +18 -18
- package/esm2020/utils/safe-url.pipe.mjs +33 -33
- package/fesm2015/survey-angular-ui.js +3206 -0
- package/fesm2015/survey-angular-ui.js.map +1 -0
- package/fesm2015/survey-angular-ui.mjs +2864 -2873
- package/fesm2015/survey-angular-ui.mjs.map +1 -1
- package/fesm2020/survey-angular-ui.mjs +2839 -2848
- package/fesm2020/survey-angular-ui.mjs.map +1 -1
- package/package.json +6 -19
- package/utils/dynamic.directive.d.ts +3 -2
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Component } from "@angular/core";
|
|
2
|
+
import { QuestionAngular } from "../question";
|
|
3
|
+
import { AngularComponentFactory } from "../component-factory";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../components/tagbox/tagbox.component";
|
|
6
|
+
import * as i2 from "../comment-other.component";
|
|
7
|
+
import * as i3 from "@angular/common";
|
|
8
|
+
export class TagboxQuestionComponent extends QuestionAngular {
|
|
9
|
+
}
|
|
10
|
+
TagboxQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TagboxQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
TagboxQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TagboxQuestionComponent, selector: "sv-ng-tagbox-question", usesInheritance: true, ngImport: i0, template: "<div [class]=\"model.renderCssRoot\" #contentElement>\n <sv-ng-tagbox [model]=\"model\"></sv-ng-tagbox>\n <div *ngIf=\"model.isOtherSelected\" [class]=\"model.getCommentAreaCss(true)\" [question]=\"model\" sv-ng-comment-other></div>\n</div>", components: [{ type: i1.TagboxComponent, selector: "sv-ng-tagbox, '[sv-ng-tagbox]'", inputs: ["model"] }, { type: i2.SurveyCommentOtherComponent, selector: "sv-ng-comment-other, '[sv-ng-comment-other]'", inputs: ["question"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TagboxQuestionComponent, decorators: [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{
|
|
15
|
+
selector: "sv-ng-tagbox-question",
|
|
16
|
+
templateUrl: "./tagbox.component.html"
|
|
17
|
+
}]
|
|
18
|
+
}] });
|
|
19
|
+
AngularComponentFactory.Instance.registerComponent("tagbox-question", TagboxQuestionComponent);
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9xdWVzdGlvbnMvdGFnYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9xdWVzdGlvbnMvdGFnYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFPL0QsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGVBQW9DOztxSEFBcEUsdUJBQXVCO3lHQUF2Qix1QkFBdUIsb0ZDVHBDLG9QQUdNOzRGRE1PLHVCQUF1QjtrQkFKbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUseUJBQXlCO2lCQUN2Qzs7QUFJRCx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBRdWVzdGlvbkFuZ3VsYXIgfSBmcm9tIFwiLi4vcXVlc3Rpb25cIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5pbXBvcnQgeyBRdWVzdGlvblRhZ2JveE1vZGVsIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy10YWdib3gtcXVlc3Rpb25cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi90YWdib3guY29tcG9uZW50Lmh0bWxcIlxufSlcbmV4cG9ydCBjbGFzcyBUYWdib3hRdWVzdGlvbkNvbXBvbmVudCBleHRlbmRzIFF1ZXN0aW9uQW5ndWxhcjxRdWVzdGlvblRhZ2JveE1vZGVsPiB7XG59XG5cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwidGFnYm94LXF1ZXN0aW9uXCIsIFRhZ2JveFF1ZXN0aW9uQ29tcG9uZW50KTsiLCI8ZGl2IFtjbGFzc109XCJtb2RlbC5yZW5kZXJDc3NSb290XCIgI2NvbnRlbnRFbGVtZW50PlxuICA8c3YtbmctdGFnYm94IFttb2RlbF09XCJtb2RlbFwiPjwvc3YtbmctdGFnYm94PlxuICA8ZGl2ICpuZ0lmPVwibW9kZWwuaXNPdGhlclNlbGVjdGVkXCIgW2NsYXNzXT1cIm1vZGVsLmdldENvbW1lbnRBcmVhQ3NzKHRydWUpXCIgW3F1ZXN0aW9uXT1cIm1vZGVsXCIgc3YtbmctY29tbWVudC1vdGhlcj48L2Rpdj5cbjwvZGl2PiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Component } from "@angular/core";
|
|
2
|
+
import { QuestionAngular } from "../question";
|
|
3
|
+
import { AngularComponentFactory } from "../component-factory";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../components/character-counter/character-counter.component";
|
|
6
|
+
import * as i2 from "@angular/common";
|
|
7
|
+
import * as i3 from "@angular/forms";
|
|
8
|
+
export class TextQuestionComponent extends QuestionAngular {
|
|
9
|
+
}
|
|
10
|
+
TextQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TextQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
TextQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TextQuestionComponent, selector: "sv-ng-text-question", usesInheritance: true, ngImport: i0, template: " <ng-container [ngTemplateOutlet]=\"input\" *ngIf=\"!model.dataListId && !model.isReadOnlyRenderDiv()\"></ng-container>\n <div *ngIf=\"model.dataListId && !model.isReadOnlyRenderDiv()\">\n <ng-container [ngTemplateOutlet]=\"input\"></ng-container>\n <datalist [id]=\"model.dataListId\">\n <option *ngFor=\"let dataListItem of model.dataList\" [value]=\"dataListItem\"></option>\n </datalist>\n </div>\n <div *ngIf=\"model.isReadOnlyRenderDiv()\" #contentElement>{{ model.value }}</div>\n <ng-template #input>\n <input [style]=\"model.inputStyle\" [class]=\"model.getControlClass()\" [attr.list]=\"model.dataListId\"\n (change)=\"model.onChange($event)\" [attr.value]=\"model.value\" [disabled]=\"model.isInputReadOnly\" name=\"user\" [type]=\"model.inputType\" [id]=\"model.inputId\" [attr.placeholder]=\"model.renderedPlaceholder || ''\"\n (keyup)=\"model.onKeyUp($event)\" (keydown)=\"model.onKeyDown($event)\" (blur)=\"model.onBlur($event)\" (compositionupdate)=\"model.onCompositionUpdate($event)\" \n [attr.size] = \"model.renderedInputSize\" [attr.maxlength]= \"model.getMaxLength()\" [attr.min]=\"model.renderedMin\"\n [attr.max]=\"model.renderedMax\" [attr.step]=\"model.renderedStep\" [attr.max]=\"model.renderedMax\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.autocomplete]=\"model.autocomplete\"\n [attr.ar] #contentElement/>\n <sv-ng-character-counter *ngIf=\"model.getMaxLength()\" \n [counter]=\"model.characterCounter\"\n [remainingCharacterCounter]=\"model.cssClasses.remainingCharacterCounter\">\n </sv-ng-character-counter>\n </ng-template>", styles: [""], components: [{ type: i1.CharacterCounterComponent, selector: "sv-ng-character-counter", inputs: ["counter", "remainingCharacterCounter"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TextQuestionComponent, decorators: [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{
|
|
15
|
+
selector: "sv-ng-text-question",
|
|
16
|
+
templateUrl: "./text.component.html",
|
|
17
|
+
styleUrls: ["./text.component.scss"]
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
AngularComponentFactory.Instance.registerComponent("text-question", TextQuestionComponent);
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL3RleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy90ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFPL0QsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGVBQWtDOzttSEFBaEUscUJBQXFCO3VHQUFyQixxQkFBcUIsa0ZDVmxDLHN0REFvQmdCOzRGRFZILHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixXQUFXLEVBQUUsdUJBQXVCO29CQUNwQyxTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztpQkFDbkM7O0FBR0gsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCIuLi9xdWVzdGlvblwiO1xuaW1wb3J0IHsgUXVlc3Rpb25UZXh0TW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy10ZXh0LXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vdGV4dC5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vdGV4dC5jb21wb25lbnQuc2Nzc1wiXVxuICB9KVxuZXhwb3J0IGNsYXNzIFRleHRRdWVzdGlvbkNvbXBvbmVudCBleHRlbmRzIFF1ZXN0aW9uQW5ndWxhcjxRdWVzdGlvblRleHRNb2RlbD4ge31cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJ0ZXh0LXF1ZXN0aW9uXCIsIFRleHRRdWVzdGlvbkNvbXBvbmVudCk7IiwiICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImlucHV0XCIgKm5nSWY9XCIhbW9kZWwuZGF0YUxpc3RJZCAmJiAhbW9kZWwuaXNSZWFkT25seVJlbmRlckRpdigpXCI+PC9uZy1jb250YWluZXI+XG4gIDxkaXYgKm5nSWY9XCJtb2RlbC5kYXRhTGlzdElkICYmICFtb2RlbC5pc1JlYWRPbmx5UmVuZGVyRGl2KClcIj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImlucHV0XCI+PC9uZy1jb250YWluZXI+XG4gICAgPGRhdGFsaXN0IFtpZF09XCJtb2RlbC5kYXRhTGlzdElkXCI+XG4gICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBkYXRhTGlzdEl0ZW0gb2YgbW9kZWwuZGF0YUxpc3RcIiBbdmFsdWVdPVwiZGF0YUxpc3RJdGVtXCI+PC9vcHRpb24+XG4gICAgPC9kYXRhbGlzdD5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJtb2RlbC5pc1JlYWRPbmx5UmVuZGVyRGl2KClcIiAjY29udGVudEVsZW1lbnQ+e3sgbW9kZWwudmFsdWUgfX08L2Rpdj5cbiAgPG5nLXRlbXBsYXRlICNpbnB1dD5cbiAgICA8aW5wdXQgW3N0eWxlXT1cIm1vZGVsLmlucHV0U3R5bGVcIiBbY2xhc3NdPVwibW9kZWwuZ2V0Q29udHJvbENsYXNzKClcIiBbYXR0ci5saXN0XT1cIm1vZGVsLmRhdGFMaXN0SWRcIlxuICAgIChjaGFuZ2UpPVwibW9kZWwub25DaGFuZ2UoJGV2ZW50KVwiIFthdHRyLnZhbHVlXT1cIm1vZGVsLnZhbHVlXCIgW2Rpc2FibGVkXT1cIm1vZGVsLmlzSW5wdXRSZWFkT25seVwiIG5hbWU9XCJ1c2VyXCIgW3R5cGVdPVwibW9kZWwuaW5wdXRUeXBlXCIgW2lkXT1cIm1vZGVsLmlucHV0SWRcIiBbYXR0ci5wbGFjZWhvbGRlcl09XCJtb2RlbC5yZW5kZXJlZFBsYWNlaG9sZGVyIHx8ICcnXCJcbiAgICAoa2V5dXApPVwibW9kZWwub25LZXlVcCgkZXZlbnQpXCIgKGtleWRvd24pPVwibW9kZWwub25LZXlEb3duKCRldmVudClcIiAoYmx1cik9XCJtb2RlbC5vbkJsdXIoJGV2ZW50KVwiIChjb21wb3NpdGlvbnVwZGF0ZSk9XCJtb2RlbC5vbkNvbXBvc2l0aW9uVXBkYXRlKCRldmVudClcIiBcbiAgICBbYXR0ci5zaXplXSA9IFwibW9kZWwucmVuZGVyZWRJbnB1dFNpemVcIiBbYXR0ci5tYXhsZW5ndGhdPSBcIm1vZGVsLmdldE1heExlbmd0aCgpXCIgW2F0dHIubWluXT1cIm1vZGVsLnJlbmRlcmVkTWluXCJcbiAgICBbYXR0ci5tYXhdPVwibW9kZWwucmVuZGVyZWRNYXhcIiBbYXR0ci5zdGVwXT1cIm1vZGVsLnJlbmRlcmVkU3RlcFwiIFthdHRyLm1heF09XCJtb2RlbC5yZW5kZXJlZE1heFwiIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwibW9kZWwuYXJpYVJlcXVpcmVkXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIm1vZGVsLmFyaWFMYWJlbFwiIFthdHRyLmFyaWEtaW52YWxpZF09XCJtb2RlbC5hcmlhSW52YWxpZFwiIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwibW9kZWwuYXJpYURlc2NyaWJlZEJ5XCIgW2F0dHIuYXV0b2NvbXBsZXRlXT1cIm1vZGVsLmF1dG9jb21wbGV0ZVwiXG4gICAgW2F0dHIuYXJdICNjb250ZW50RWxlbWVudC8+XG4gICAgPHN2LW5nLWNoYXJhY3Rlci1jb3VudGVyICpuZ0lmPVwibW9kZWwuZ2V0TWF4TGVuZ3RoKClcIiBcbiAgICBbY291bnRlcl09XCJtb2RlbC5jaGFyYWN0ZXJDb3VudGVyXCJcbiAgICBbcmVtYWluaW5nQ2hhcmFjdGVyQ291bnRlcl09XCJtb2RlbC5jc3NDbGFzc2VzLnJlbWFpbmluZ0NoYXJhY3RlckNvdW50ZXJcIj5cbiAgPC9zdi1uZy1jaGFyYWN0ZXItY291bnRlcj5cbiAgPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { Component, ElementRef, Input, ViewChild } from "@angular/core";
|
|
2
|
+
import { BaseAngular } from "./base-angular";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./element.component";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "./utils/dynamic.directive";
|
|
7
|
+
export class RowComponent extends BaseAngular {
|
|
8
|
+
constructor(cdr, vcr, ngZone) {
|
|
9
|
+
super(cdr, vcr);
|
|
10
|
+
this.ngZone = ngZone;
|
|
11
|
+
}
|
|
12
|
+
getModel() {
|
|
13
|
+
return this.row;
|
|
14
|
+
}
|
|
15
|
+
trackElementBy(index, element) {
|
|
16
|
+
return element.name + index;
|
|
17
|
+
}
|
|
18
|
+
ngAfterViewInit() {
|
|
19
|
+
var _a;
|
|
20
|
+
const el = (_a = this.container) === null || _a === void 0 ? void 0 : _a.nativeElement;
|
|
21
|
+
if (!!el && !this.row.isNeedRender) {
|
|
22
|
+
this.ngZone.runOutsideAngular(() => {
|
|
23
|
+
setTimeout(() => {
|
|
24
|
+
this.row.startLazyRendering(el);
|
|
25
|
+
}, 10);
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
onModelChanged() {
|
|
30
|
+
super.onModelChanged();
|
|
31
|
+
if (!this.previousModel) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
this.row.isNeedRender = this.previousModel.isNeedRender;
|
|
36
|
+
this.stopLazyRendering();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
stopLazyRendering() {
|
|
40
|
+
this.row.stopLazyRendering();
|
|
41
|
+
this.row.isNeedRender = !this.row.isLazyRendering();
|
|
42
|
+
}
|
|
43
|
+
ngOnDestroy() {
|
|
44
|
+
super.ngOnDestroy();
|
|
45
|
+
this.stopLazyRendering();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
RowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RowComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
49
|
+
RowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: RowComponent, selector: "sv-ng-row", inputs: { row: "row" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"row.getRowCss()\" *ngIf=\"row.visible\" #container>\n <ng-container *ngFor=\"let element of row.visibleElements; trackBy: trackElementBy\">\n <sv-ng-element [model]=\"$any(element)\" *ngIf=\"row.isNeedRender\"></sv-ng-element>\n <ng-template *ngIf=\"!row.isNeedRender && element.skeletonComponentName\" [component]=\"{ name: element.skeletonComponentName, data: { element: element } }\"></ng-template>\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.ElementComponent, selector: "sv-ng-element", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RowComponent, decorators: [{
|
|
51
|
+
type: Component,
|
|
52
|
+
args: [{
|
|
53
|
+
selector: "sv-ng-row",
|
|
54
|
+
templateUrl: "./row.component.html",
|
|
55
|
+
styleUrls: ["./hide-host.scss"]
|
|
56
|
+
}]
|
|
57
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ViewContainerRef }, { type: i0.NgZone }]; }, propDecorators: { row: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}], container: [{
|
|
60
|
+
type: ViewChild,
|
|
61
|
+
args: ["container", { read: ElementRef }]
|
|
62
|
+
}] } });
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vc3JjL3Jvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFFcEksT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztBQU03QyxNQUFNLE9BQU8sWUFBYSxTQUFRLFdBQTZCO0lBRzdELFlBQVksR0FBc0IsRUFBRSxHQUFxQixFQUFVLE1BQWM7UUFDL0UsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQURpRCxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBRWpGLENBQUM7SUFFUyxRQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNsQixDQUFDO0lBQ0QsY0FBYyxDQUFFLEtBQWEsRUFBRSxPQUFpQjtRQUM5QyxPQUFPLE9BQU8sQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQzlCLENBQUM7SUFDTSxlQUFlOztRQUNwQixNQUFNLEVBQUUsR0FBRyxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLGFBQWEsQ0FBQztRQUN6QyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRTtZQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtnQkFDakMsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDZCxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNsQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDVCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUNrQixjQUFjO1FBQy9CLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixPQUFPO1NBQ1I7YUFBTTtZQUNMLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDO1lBQ3hELElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUNPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFDZSxXQUFXO1FBQ3pCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQixDQUFDOzswR0F2Q1UsWUFBWTs4RkFBWixZQUFZLDRKQUVTLFVBQVUsb0RDVjVDLHlmQU9jOzRGRENELFlBQVk7a0JBTHhCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFdBQVcsRUFBRSxzQkFBc0I7b0JBQ25DLFNBQVMsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUNoQzs0SkFFVSxHQUFHO3NCQUFYLEtBQUs7Z0JBQ3dDLFNBQVM7c0JBQXRELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBOZ1pvbmUsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJRWxlbWVudCwgUXVlc3Rpb25Sb3dNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQmFzZUFuZ3VsYXIgfSBmcm9tIFwiLi9iYXNlLWFuZ3VsYXJcIjtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1yb3dcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9yb3cuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL2hpZGUtaG9zdC5zY3NzXCJdXG59KVxuZXhwb3J0IGNsYXNzIFJvd0NvbXBvbmVudCBleHRlbmRzIEJhc2VBbmd1bGFyPFF1ZXN0aW9uUm93TW9kZWw+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIHJvdyE6IFF1ZXN0aW9uUm93TW9kZWw7XG4gIEBWaWV3Q2hpbGQoXCJjb250YWluZXJcIiwgeyByZWFkOiBFbGVtZW50UmVmIH0pIGNvbnRhaW5lcj86IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBjb25zdHJ1Y3RvcihjZHI6IENoYW5nZURldGVjdG9yUmVmLCB2Y3I6IFZpZXdDb250YWluZXJSZWYsIHByaXZhdGUgbmdab25lOiBOZ1pvbmUpIHtcbiAgICBzdXBlcihjZHIsIHZjcik7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0TW9kZWwoKTogUXVlc3Rpb25Sb3dNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMucm93O1xuICB9XG4gIHRyYWNrRWxlbWVudEJ5IChpbmRleDogbnVtYmVyLCBlbGVtZW50OiBJRWxlbWVudCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGVsZW1lbnQubmFtZSArIGluZGV4O1xuICB9XG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgZWwgPSB0aGlzLmNvbnRhaW5lcj8ubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoISFlbCAmJiAhdGhpcy5yb3cuaXNOZWVkUmVuZGVyKSB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMucm93LnN0YXJ0TGF6eVJlbmRlcmluZyhlbCk7XG4gICAgICAgIH0sIDEwKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25Nb2RlbENoYW5nZWQoKTogdm9pZCB7XG4gICAgc3VwZXIub25Nb2RlbENoYW5nZWQoKTtcbiAgICBpZighdGhpcy5wcmV2aW91c01vZGVsKSB7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucm93LmlzTmVlZFJlbmRlciA9IHRoaXMucHJldmlvdXNNb2RlbC5pc05lZWRSZW5kZXI7XG4gICAgICB0aGlzLnN0b3BMYXp5UmVuZGVyaW5nKCk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgc3RvcExhenlSZW5kZXJpbmcoKSB7XG4gICAgdGhpcy5yb3cuc3RvcExhenlSZW5kZXJpbmcoKTtcbiAgICB0aGlzLnJvdy5pc05lZWRSZW5kZXIgPSAhdGhpcy5yb3cuaXNMYXp5UmVuZGVyaW5nKCk7XG4gIH1cbiAgcHVibGljIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5zdG9wTGF6eVJlbmRlcmluZygpO1xuICB9XG59IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGRpdiBbY2xhc3NdPVwicm93LmdldFJvd0NzcygpXCIgKm5nSWY9XCJyb3cudmlzaWJsZVwiICNjb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZWxlbWVudCBvZiByb3cudmlzaWJsZUVsZW1lbnRzOyB0cmFja0J5OiB0cmFja0VsZW1lbnRCeVwiPlxuICAgICAgPHN2LW5nLWVsZW1lbnQgW21vZGVsXT1cIiRhbnkoZWxlbWVudClcIiAqbmdJZj1cInJvdy5pc05lZWRSZW5kZXJcIj48L3N2LW5nLWVsZW1lbnQ+XG4gICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCIhcm93LmlzTmVlZFJlbmRlciAmJiBlbGVtZW50LnNrZWxldG9uQ29tcG9uZW50TmFtZVwiIFtjb21wb25lbnRdPVwieyBuYW1lOiBlbGVtZW50LnNrZWxldG9uQ29tcG9uZW50TmFtZSwgZGF0YTogeyBlbGVtZW50OiBlbGVtZW50IH0gfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import { LocalizableString } from "survey-core";
|
|
3
|
+
import { AngularComponentFactory } from "./component-factory";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
export class StringEditorComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.onInput = (event) => {
|
|
9
|
+
this.model.text = event.target.innerText;
|
|
10
|
+
};
|
|
11
|
+
this.onClick = (event) => {
|
|
12
|
+
event.preventDefault();
|
|
13
|
+
event.stopPropagation();
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
StringEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
+
StringEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StringEditorComponent, selector: "sv-ng-string-editor", inputs: { model: "model" }, ngImport: i0, template: "<span\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n *ngIf=\"model.hasHtml\"\n [innerHtml]=\"model.renderedHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n></span>\n<span\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n *ngIf=\"!model.hasHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n >{{ model.renderedHtml }}</span\n>\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringEditorComponent, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{
|
|
22
|
+
selector: "sv-ng-string-editor",
|
|
23
|
+
templateUrl: "./string-editor.component.html"
|
|
24
|
+
}]
|
|
25
|
+
}], propDecorators: { model: [{
|
|
26
|
+
type: Input
|
|
27
|
+
}] } });
|
|
28
|
+
AngularComponentFactory.Instance.registerComponent(LocalizableString.editableRenderer, StringEditorComponent);
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyaW5nLWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi9zcmMvc3RyaW5nLWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQU05RCxNQUFNLE9BQU8scUJBQXFCO0lBSmxDO1FBT0UsWUFBTyxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7UUFDM0MsQ0FBQyxDQUFDO1FBQ0YsWUFBTyxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDdkIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUM7S0FDSDs7bUhBVlkscUJBQXFCO3VHQUFyQixxQkFBcUIsdUZDUmxDLDJZQWdCQTs0RkRSYSxxQkFBcUI7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsV0FBVyxFQUFFLGdDQUFnQztpQkFDOUM7OEJBRVUsS0FBSztzQkFBYixLQUFLOztBQVVSLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBMb2NhbGl6YWJsZVN0cmluZyB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3Ytbmctc3RyaW5nLWVkaXRvclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3N0cmluZy1lZGl0b3IuY29tcG9uZW50Lmh0bWxcIlxufSlcbmV4cG9ydCBjbGFzcyBTdHJpbmdFZGl0b3JDb21wb25lbnQge1xuICBASW5wdXQoKSBtb2RlbCE6IExvY2FsaXphYmxlU3RyaW5nO1xuXG4gIG9uSW5wdXQgPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgIHRoaXMubW9kZWwudGV4dCA9IGV2ZW50LnRhcmdldC5pbm5lclRleHQ7XG4gIH07XG4gIG9uQ2xpY2sgPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH07XG59XG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChMb2NhbGl6YWJsZVN0cmluZy5lZGl0YWJsZVJlbmRlcmVyLCBTdHJpbmdFZGl0b3JDb21wb25lbnQpOyIsIjxzcGFuXG4gIGNsYXNzPVwic3Ytc3RyaW5nLWVkaXRvclwiXG4gIGNvbnRlbnRlZGl0YWJsZT1cInRydWVcIlxuICAqbmdJZj1cIm1vZGVsLmhhc0h0bWxcIlxuICBbaW5uZXJIdG1sXT1cIm1vZGVsLnJlbmRlcmVkSHRtbFwiXG4gIChibHVyKT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gIChjbGljayk9XCJvbkNsaWNrKCRldmVudClcIlxuPjwvc3Bhbj5cbjxzcGFuXG4gIGNsYXNzPVwic3Ytc3RyaW5nLWVkaXRvclwiXG4gIGNvbnRlbnRlZGl0YWJsZT1cInRydWVcIlxuICAqbmdJZj1cIiFtb2RlbC5oYXNIdG1sXCJcbiAgKGJsdXIpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2soJGV2ZW50KVwiXG4gID57eyBtb2RlbC5yZW5kZXJlZEh0bWwgfX08L3NwYW5cbj5cbiJdfQ==
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import { LocalizableString } from "survey-core";
|
|
3
|
+
import { AngularComponentFactory } from "./component-factory";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
export class StringViewerComponent {
|
|
7
|
+
constructor(changeDetectorRef) {
|
|
8
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
9
|
+
}
|
|
10
|
+
ngDoCheck() {
|
|
11
|
+
if (this.model !== this.previousModel) {
|
|
12
|
+
if (!!this.previousModel) {
|
|
13
|
+
this.clearOnChanged(this.previousModel);
|
|
14
|
+
}
|
|
15
|
+
if (!!this.model) {
|
|
16
|
+
this.model.onChanged = () => { this.changeDetectorRef.detectChanges(); };
|
|
17
|
+
}
|
|
18
|
+
this.previousModel = this.model;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
clearOnChanged(model) {
|
|
22
|
+
model.onChanged = () => { };
|
|
23
|
+
}
|
|
24
|
+
ngOnDestroy() {
|
|
25
|
+
!!this.model && this.clearOnChanged(this.model);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
StringViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringViewerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
+
StringViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StringViewerComponent, selector: "sv-ng-string-viewer, string-viewer, '[sv-ng-string-viewer]'", inputs: { model: "model" }, ngImport: i0, template: "<span *ngIf=\"!model.hasHtml\" class=\"sv-string-viewer\">{{model.renderedHtml}}</span>\n<span *ngIf=\"model.hasHtml\" class=\"sv-string-viewer\" [innerHtml]=\"model.renderedHtml\"></span>", styles: [""], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringViewerComponent, decorators: [{
|
|
31
|
+
type: Component,
|
|
32
|
+
args: [{
|
|
33
|
+
selector: "sv-ng-string-viewer, string-viewer, '[sv-ng-string-viewer]'",
|
|
34
|
+
templateUrl: "./string-viewer.component.html",
|
|
35
|
+
styleUrls: ["./string-viewer.component.scss"]
|
|
36
|
+
}]
|
|
37
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { model: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}] } });
|
|
40
|
+
AngularComponentFactory.Instance.registerComponent(LocalizableString.defaultRenderer, StringViewerComponent);
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyaW5nLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi9zcmMvc3RyaW5nLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBVyxLQUFLLEVBQXVDLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNoRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBTzlELE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsWUFBb0IsaUJBQW9DO1FBQXBDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFBRyxDQUFDO0lBQzVELFNBQVM7UUFDUCxJQUFHLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNwQyxJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUN6QztZQUNELElBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzFFO1lBQ0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUNELGNBQWMsQ0FBQyxLQUF3QjtRQUNyQyxLQUFLLENBQUMsU0FBUyxHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBQ0QsV0FBVztRQUNULENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7O21IQXBCVSxxQkFBcUI7dUdBQXJCLHFCQUFxQiwrSENUbEMsOExBQzZGOzRGRFFoRixxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZEQUE2RDtvQkFDdkUsV0FBVyxFQUFFLGdDQUFnQztvQkFDN0MsU0FBUyxFQUFFLENBQUMsZ0NBQWdDLENBQUM7aUJBQzlDO3dHQUVVLEtBQUs7c0JBQWIsS0FBSzs7QUFxQlIsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRG9DaGVjaywgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IExvY2FsaXphYmxlU3RyaW5nIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCIuL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1zdHJpbmctdmlld2VyLCBzdHJpbmctdmlld2VyLCAnW3N2LW5nLXN0cmluZy12aWV3ZXJdJ1wiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3N0cmluZy12aWV3ZXIuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3N0cmluZy12aWV3ZXIuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgU3RyaW5nVmlld2VyQ29tcG9uZW50IGltcGxlbWVudHMgRG9DaGVjayB7XG4gIEBJbnB1dCgpIG1vZGVsITogTG9jYWxpemFibGVTdHJpbmc7XG4gIHByaXZhdGUgcHJldmlvdXNNb2RlbDogTG9jYWxpemFibGVTdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgaWYodGhpcy5tb2RlbCAhPT0gdGhpcy5wcmV2aW91c01vZGVsKSB7XG4gICAgICBpZighIXRoaXMucHJldmlvdXNNb2RlbCkge1xuICAgICAgICB0aGlzLmNsZWFyT25DaGFuZ2VkKHRoaXMucHJldmlvdXNNb2RlbCk7XG4gICAgICB9XG4gICAgICBpZighIXRoaXMubW9kZWwpIHtcbiAgICAgICAgdGhpcy5tb2RlbC5vbkNoYW5nZWQgPSAoKSA9PiB7IHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpOyB9O1xuICAgICAgfVxuICAgICAgdGhpcy5wcmV2aW91c01vZGVsID0gdGhpcy5tb2RlbDtcbiAgICB9XG4gIH1cbiAgY2xlYXJPbkNoYW5nZWQobW9kZWw6IExvY2FsaXphYmxlU3RyaW5nKSB7XG4gICAgbW9kZWwub25DaGFuZ2VkID0gKCkgPT4ge307XG4gIH1cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgISF0aGlzLm1vZGVsICYmIHRoaXMuY2xlYXJPbkNoYW5nZWQodGhpcy5tb2RlbCk7XG4gIH1cbn1cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KExvY2FsaXphYmxlU3RyaW5nLmRlZmF1bHRSZW5kZXJlciwgU3RyaW5nVmlld2VyQ29tcG9uZW50KTsiLCI8c3BhbiAqbmdJZj1cIiFtb2RlbC5oYXNIdG1sXCIgY2xhc3M9XCJzdi1zdHJpbmctdmlld2VyXCI+e3ttb2RlbC5yZW5kZXJlZEh0bWx9fTwvc3Bhbj5cbjxzcGFuICpuZ0lmPVwibW9kZWwuaGFzSHRtbFwiIGNsYXNzPVwic3Ytc3RyaW5nLXZpZXdlclwiIFtpbm5lckh0bWxdPVwibW9kZWwucmVuZGVyZWRIdG1sXCI+PC9zcGFuPiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './angular-ui';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LWFuZ3VsYXItdWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3VydmV5LWFuZ3VsYXItdWkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9hbmd1bGFyLXVpJztcbiJdfQ==
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Component, Input, ViewChild } from "@angular/core";
|
|
2
|
+
import { SvgRegistry } from "survey-core";
|
|
3
|
+
import { BaseAngular } from "./base-angular";
|
|
4
|
+
import { AngularComponentFactory } from "./component-factory";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "./components/survey-header/survey-header.component";
|
|
7
|
+
import * as i2 from "./components/timer-panel/timer-panel.component";
|
|
8
|
+
import * as i3 from "./components/action-bar/action-bar.component";
|
|
9
|
+
import * as i4 from "./page.component";
|
|
10
|
+
import * as i5 from "./components/brand-info/brand-info.component";
|
|
11
|
+
import * as i6 from "./components/notifier/notifier.component";
|
|
12
|
+
import * as i7 from "@angular/common";
|
|
13
|
+
import * as i8 from "@angular/forms";
|
|
14
|
+
import * as i9 from "./utils/dynamic.directive";
|
|
15
|
+
export class SurveyContentComponent extends BaseAngular {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
this.isSurveyUpdated = false;
|
|
19
|
+
}
|
|
20
|
+
getModel() {
|
|
21
|
+
return this.model;
|
|
22
|
+
}
|
|
23
|
+
onModelChanged() {
|
|
24
|
+
if (!!this.previousModel) {
|
|
25
|
+
this.previousModel.destroyResizeObserver();
|
|
26
|
+
this.previousModel.renderCallback = undefined;
|
|
27
|
+
}
|
|
28
|
+
if (!!this.model) {
|
|
29
|
+
this.model.renderCallback = () => {
|
|
30
|
+
this.detectChanges();
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
this.isSurveyUpdated = true;
|
|
34
|
+
}
|
|
35
|
+
ngOnInit() {
|
|
36
|
+
super.ngOnInit();
|
|
37
|
+
if (!!this.model && this.model["needRenderIcons"]) {
|
|
38
|
+
SvgRegistry.renderIcons();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
ngOnDestroy() {
|
|
42
|
+
super.ngOnDestroy();
|
|
43
|
+
if (!!this.model) {
|
|
44
|
+
this.model.renderCallback = undefined;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
ngAfterViewInit() {
|
|
48
|
+
this.isSurveyUpdated = true;
|
|
49
|
+
}
|
|
50
|
+
ngAfterViewChecked() {
|
|
51
|
+
if (!!this.model && this.isSurveyUpdated) {
|
|
52
|
+
this.model.afterRenderSurvey(this.rootEl.nativeElement);
|
|
53
|
+
}
|
|
54
|
+
super.ngAfterViewChecked();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
SurveyContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyContentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
+
SurveyContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", 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()\">\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 <ng-container *ngIf=\"model.isTimerPanelShowingOnTop && !model.isShowStartingPage\">\n <sv-timer-panel [model]=\"model.timerModel\"></sv-timer-panel>\n </ng-container>\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 <div *ngIf=\"model.isShowingPage\" [class]=\"model.bodyCss\" [style.maxWidth]=\"model.renderedWidth\" [id]=\"model.activePage ? model.activePage.id : ''\">\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnTop\" [model]=\"model.navigationBar\"></sv-action-bar>\n <!-- ko if: activePage -->\n <ng-container *ngIf=\"model.activePage\">\n <sv-ng-page [model]=\"model.activePage\" [survey]=\"model\"></sv-ng-page>\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 <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 <ng-container *ngIf=\"model.isTimerPanelShowingOnBottom && !model.isShowStartingPage\">\n <sv-timer-panel [model]=\"model.timerModel\"></sv-timer-panel>\n </ng-container>\n <div *ngIf=\"model.state === 'completed' && model.showCompletedPage\" [class]=\"model.completedCss\"\n [innerHtml]=\"model.processedCompletedHtml\"></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 <sv-notifier [notifier]=\"model.notifier\"></sv-notifier>\n </div>\n</ng-template>", components: [{ type: i1.SurveyHeaderComponent, selector: "'[sv-ng-survey-header]'", inputs: ["survey"] }, { type: i2.TimerPanelComponent, selector: "sv-timer-panel", inputs: ["model"] }, { type: i3.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i4.PageComponent, selector: "page, sv-ng-page", inputs: ["model", "survey"] }, { type: i5.BrandInfoComponent, selector: "sv-brand-info" }, { type: i6.NotifierComponent, selector: "sv-notifier", inputs: ["notifier"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyContentComponent, decorators: [{
|
|
60
|
+
type: Component,
|
|
61
|
+
args: [{
|
|
62
|
+
selector: "survey-content",
|
|
63
|
+
templateUrl: "./survey-content.component.html"
|
|
64
|
+
}]
|
|
65
|
+
}], propDecorators: { model: [{
|
|
66
|
+
type: Input
|
|
67
|
+
}], rootEl: [{
|
|
68
|
+
type: ViewChild,
|
|
69
|
+
args: ["surveyContainer", { static: false }]
|
|
70
|
+
}] } });
|
|
71
|
+
AngularComponentFactory.Instance.registerComponent("survey", SurveyContentComponent);
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N1cnZleS1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uL3NyYy9zdXJ2ZXktY29udGVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWlCLFNBQVMsRUFBYyxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9GLE9BQU8sRUFBZSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7OztBQUs5RCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsV0FBd0I7SUFKcEU7O1FBT1Usb0JBQWUsR0FBWSxLQUFLLENBQUM7S0FxQzFDO0lBcENXLFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDa0IsY0FBYztRQUMvQixJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUMzQyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsR0FBUSxTQUFTLENBQUM7U0FDcEQ7UUFDRCxJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsR0FBRyxFQUFFO2dCQUMvQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkIsQ0FBQyxDQUFDO1NBQ0g7UUFDRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztJQUM5QixDQUFDO0lBQ1EsUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsRUFBRTtZQUNoRCxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBQ1EsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNmLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxHQUFRLFNBQVMsQ0FBQztTQUM1QztJQUNILENBQUM7SUFDRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUNRLGtCQUFrQjtRQUN6QixJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ3pEO1FBQ0QsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDN0IsQ0FBQzs7b0hBdkNVLHNCQUFzQjt3R0FBdEIsc0JBQXNCLG9OQ1RuQywrMkZBMENjOzRGRGpDRCxzQkFBc0I7a0JBSmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsV0FBVyxFQUFFLGlDQUFpQztpQkFDN0M7OEJBRVEsS0FBSztzQkFBYixLQUFLO2dCQUMyQyxNQUFNO3NCQUF0RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs7QUF3Q2pELHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsc0JBQXNCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3VydmV5TW9kZWwsIFN2Z1JlZ2lzdHJ5IH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBCYXNlQW5ndWxhciB9IGZyb20gXCIuL2Jhc2UtYW5ndWxhclwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN1cnZleS1jb250ZW50XCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vc3VydmV5LWNvbnRlbnQuY29tcG9uZW50Lmh0bWxcIlxuICB9KVxuZXhwb3J0IGNsYXNzIFN1cnZleUNvbnRlbnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQW5ndWxhcjxTdXJ2ZXlNb2RlbD4gaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBtb2RlbCE6IFN1cnZleU1vZGVsO1xuICBAVmlld0NoaWxkKFwic3VydmV5Q29udGFpbmVyXCIsIHsgc3RhdGljOiBmYWxzZSB9KSByb290RWwhOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgcHJpdmF0ZSBpc1N1cnZleVVwZGF0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IFN1cnZleU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbDtcbiAgfVxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25Nb2RlbENoYW5nZWQoKTogdm9pZCB7XG4gICAgaWYoISF0aGlzLnByZXZpb3VzTW9kZWwpIHtcbiAgICAgIHRoaXMucHJldmlvdXNNb2RlbC5kZXN0cm95UmVzaXplT2JzZXJ2ZXIoKTtcbiAgICAgIHRoaXMucHJldmlvdXNNb2RlbC5yZW5kZXJDYWxsYmFjayA9IDxhbnk+dW5kZWZpbmVkO1xuICAgIH1cbiAgICBpZighIXRoaXMubW9kZWwpIHtcbiAgICAgIHRoaXMubW9kZWwucmVuZGVyQ2FsbGJhY2sgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfTtcbiAgICB9XG4gICAgdGhpcy5pc1N1cnZleVVwZGF0ZWQgPSB0cnVlO1xuICB9XG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgaWYoISF0aGlzLm1vZGVsICYmIHRoaXMubW9kZWxbXCJuZWVkUmVuZGVySWNvbnNcIl0pIHtcbiAgICAgIFN2Z1JlZ2lzdHJ5LnJlbmRlckljb25zKCk7XG4gICAgfVxuICB9XG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgaWYoISF0aGlzLm1vZGVsKSB7XG4gICAgICB0aGlzLm1vZGVsLnJlbmRlckNhbGxiYWNrID0gPGFueT51bmRlZmluZWQ7XG4gICAgfVxuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzU3VydmV5VXBkYXRlZCA9IHRydWU7XG4gIH1cbiAgb3ZlcnJpZGUgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIGlmKCEhdGhpcy5tb2RlbCAmJiB0aGlzLmlzU3VydmV5VXBkYXRlZCkge1xuICAgICAgdGhpcy5tb2RlbC5hZnRlclJlbmRlclN1cnZleSh0aGlzLnJvb3RFbC5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG4gICAgc3VwZXIubmdBZnRlclZpZXdDaGVja2VkKCk7XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJzdXJ2ZXlcIiwgU3VydmV5Q29udGVudENvbXBvbmVudCk7IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGRpdiAjc3VydmV5Q29udGFpbmVyICpuZ0lmPVwiISFtb2RlbFwiIFtjbGFzc109XCJtb2RlbC5nZXRSb290Q3NzKClcIj5cbiAgICA8Zm9ybSBvbnN1Ym1pdD1cInJldHVybiBmYWxzZTtcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdl9jdXN0b21faGVhZGVyXCIgW2hpZGRlbl09XCJtb2RlbC5oYXNMb2dvXCI+PC9kaXY+XG4gICAgICA8ZGl2IFtjbGFzc109XCJtb2RlbC5jc3MuY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJtb2RlbC5yZW5kZXJlZEhhc0hlYWRlclwiIFtjbGFzc109XCJtb2RlbC5jc3MuaGVhZGVyXCIgW3N1cnZleV09XCJtb2RlbFwiIHN2LW5nLXN1cnZleS1oZWFkZXI+PC9kaXY+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlbC5pc1RpbWVyUGFuZWxTaG93aW5nT25Ub3AgJiYgIW1vZGVsLmlzU2hvd1N0YXJ0aW5nUGFnZVwiPlxuICAgICAgICAgIDxzdi10aW1lci1wYW5lbCBbbW9kZWxdPVwibW9kZWwudGltZXJNb2RlbFwiPjwvc3YtdGltZXItcGFuZWw+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZWwuaXNTaG93UHJvZ3Jlc3NCYXJPblRvcCAmJiAhbW9kZWwuaXNTaG93U3RhcnRpbmdQYWdlXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtjb21wb25lbnRdPSd7IG5hbWU6IFwic3YtcHJvZ3Jlc3MtXCIgKyB0aGlzLm1vZGVsLnByb2dyZXNzQmFyVHlwZSwgZGF0YTogeyBtb2RlbCB9IH0nPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwuaXNTaG93aW5nUGFnZVwiIFtjbGFzc109XCJtb2RlbC5ib2R5Q3NzXCIgW3N0eWxlLm1heFdpZHRoXT1cIm1vZGVsLnJlbmRlcmVkV2lkdGhcIiBbaWRdPVwibW9kZWwuYWN0aXZlUGFnZSA/IG1vZGVsLmFjdGl2ZVBhZ2UuaWQgOiAnJ1wiPlxuICAgICAgICAgIDxzdi1hY3Rpb24tYmFyICpuZ0lmPVwibW9kZWwuaXNOYXZpZ2F0aW9uQnV0dG9uc1Nob3dpbmdPblRvcFwiIFttb2RlbF09XCJtb2RlbC5uYXZpZ2F0aW9uQmFyXCI+PC9zdi1hY3Rpb24tYmFyPlxuICAgICAgICAgIDwhLS0ga28gaWY6IGFjdGl2ZVBhZ2UgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZWwuYWN0aXZlUGFnZVwiPlxuICAgICAgICAgICAgICAgIDxzdi1uZy1wYWdlIFttb2RlbF09XCJtb2RlbC5hY3RpdmVQYWdlXCIgW3N1cnZleV09XCJtb2RlbFwiPjwvc3YtbmctcGFnZT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPCEtLSBrbyBpZjogYWN0aXZlUGFnZS5yb3dzLmxlbmd0aCA9PSAwICYmICRkYXRhLmVtcHR5UGFnZVRlbXBsYXRlIC0tPlxuICAgICAgICAgICAgPCEtLSBrbyB0ZW1wbGF0ZTogeyBuYW1lOiBlbXB0eVBhZ2VUZW1wbGF0ZSwgZGF0YTogJGRhdGEuZW1wdHlQYWdlVGVtcGxhdGVEYXRhIHx8ICRkYXRhIH0gLS0+XG4gICAgICAgICAgICA8IS0tIC9rbyAtLT5cbiAgICAgICAgICAgIDwhLS0gL2tvIC0tPlxuICAgICAgICAgIDwhLS0gL2tvIC0tPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlbC5pc1Nob3dQcm9ncmVzc0Jhck9uQm90dG9tICYmICFtb2RlbC5pc1Nob3dTdGFydGluZ1BhZ2VcIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT0neyBuYW1lOiBcInN2LXByb2dyZXNzLVwiICsgdGhpcy5tb2RlbC5wcm9ncmVzc0JhclR5cGUsIGRhdGE6IHsgbW9kZWwgfSB9Jz48L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxzdi1hY3Rpb24tYmFyICpuZ0lmPVwibW9kZWwuaXNOYXZpZ2F0aW9uQnV0dG9uc1Nob3dpbmdPbkJvdHRvbVwiIFttb2RlbF09XCJtb2RlbC5uYXZpZ2F0aW9uQmFyXCI+PC9zdi1hY3Rpb24tYmFyPiAgXG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZWwuaXNUaW1lclBhbmVsU2hvd2luZ09uQm90dG9tICYmICFtb2RlbC5pc1Nob3dTdGFydGluZ1BhZ2VcIj5cbiAgICAgICAgICAgIDxzdi10aW1lci1wYW5lbCBbbW9kZWxdPVwibW9kZWwudGltZXJNb2RlbFwiPjwvc3YtdGltZXItcGFuZWw+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwuc3RhdGUgPT09ICdjb21wbGV0ZWQnICYmIG1vZGVsLnNob3dDb21wbGV0ZWRQYWdlXCIgW2NsYXNzXT1cIm1vZGVsLmNvbXBsZXRlZENzc1wiXG4gICAgICAgICAgW2lubmVySHRtbF09XCJtb2RlbC5wcm9jZXNzZWRDb21wbGV0ZWRIdG1sXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJtb2RlbC5zdGF0ZSA9PT0gJ2NvbXBsZXRlZGJlZm9yZSdcIiBbY2xhc3NdPVwibW9kZWwuY3NzLmJvZHlcIlxuICAgICAgICAgIFtpbm5lckh0bWxdPVwibW9kZWwucHJvY2Vzc2VkQ29tcGxldGVkQmVmb3JlSHRtbFwiPjwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwuc3RhdGUgPT09ICdsb2FkaW5nJ1wiIFtjbGFzc109XCJtb2RlbC5jc3MuYm9keVwiIFtpbm5lckh0bWxdPVwibW9kZWwucHJvY2Vzc2VkTG9hZGluZ0h0bWxcIj48L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm1vZGVsLnN0YXRlID09PSAnZW1wdHknXCIgW2NsYXNzXT1cIm1vZGVsLmNzcy5ib2R5RW1wdHlcIj57e21vZGVsLmVtcHR5U3VydmV5VGV4dH19PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Zvcm0+XG4gICAgPHN2LWJyYW5kLWluZm8gKm5nSWY9XCJtb2RlbC5zaG93QnJhbmRJbmZvXCI+PC9zdi1icmFuZC1pbmZvPlxuICAgIDxzdi1ub3RpZmllciBbbm90aWZpZXJdPVwibW9kZWwubm90aWZpZXJcIj48L3N2LW5vdGlmaWVyPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./utils/dynamic.directive";
|
|
4
|
+
export class SurveyStringComponent {
|
|
5
|
+
}
|
|
6
|
+
SurveyStringComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyStringComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7
|
+
SurveyStringComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: { model: "model" }, ngImport: i0, template: "<ng-template [component]='{ name: model.renderAs, data: { model: model.renderAsData } }'></ng-template>", isInline: true, directives: [{ type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyStringComponent, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{
|
|
11
|
+
selector: "sv-ng-string, '[sv-ng-string]'",
|
|
12
|
+
template: "<ng-template [component]='{ name: model.renderAs, data: { model: model.renderAsData } }'></ng-template>"
|
|
13
|
+
}]
|
|
14
|
+
}], propDecorators: { model: [{
|
|
15
|
+
type: Input
|
|
16
|
+
}] } });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LXN0cmluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3VydmV5LXN0cmluZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVNqRCxNQUFNLE9BQU8scUJBQXFCOzttSEFBckIscUJBQXFCO3VHQUFyQixxQkFBcUIsa0dBSHBCLHlHQUF5Rzs0RkFHMUcscUJBQXFCO2tCQU5qQyxTQUFTO21CQUNSO29CQUNFLFFBQVEsRUFBRSxnQ0FBZ0M7b0JBQzFDLFFBQVEsRUFBRSx5R0FBeUc7aUJBQ3BIOzhCQUdRLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTG9jYWxpemFibGVTdHJpbmcgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcblxuQENvbXBvbmVudChcbiAge1xuICAgIHNlbGVjdG9yOiBcInN2LW5nLXN0cmluZywgJ1tzdi1uZy1zdHJpbmddJ1wiLFxuICAgIHRlbXBsYXRlOiBcIjxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT0neyBuYW1lOiBtb2RlbC5yZW5kZXJBcywgZGF0YTogeyBtb2RlbDogbW9kZWwucmVuZGVyQXNEYXRhIH0gfSc+PC9uZy10ZW1wbGF0ZT5cIlxuICB9XG4pXG5leHBvcnQgY2xhc3MgU3VydmV5U3RyaW5nQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbW9kZWwhOiBMb2NhbGl6YWJsZVN0cmluZztcbn0iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import { BaseAngular } from "./base-angular";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./components/popup/modal-container.component";
|
|
5
|
+
import * as i2 from "./survey-content.component";
|
|
6
|
+
export class SurveyComponent extends BaseAngular {
|
|
7
|
+
constructor(changeDetectorRef) {
|
|
8
|
+
super(changeDetectorRef);
|
|
9
|
+
changeDetectorRef.detach();
|
|
10
|
+
}
|
|
11
|
+
getModel() {
|
|
12
|
+
return this.model;
|
|
13
|
+
}
|
|
14
|
+
getShouldReattachChangeDetector() {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
onModelChanged() {
|
|
18
|
+
this.changeDetectorRef.detectChanges();
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
SurveyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
22
|
+
SurveyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SurveyComponent, selector: "survey", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<sv-ng-modal-container></sv-ng-modal-container><survey-content [model]='model'></survey-content>", isInline: true, components: [{ type: i1.ModalComponent, selector: "sv-ng-modal-container" }, { type: i2.SurveyContentComponent, selector: "survey-content", inputs: ["model"] }] });
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyComponent, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{
|
|
26
|
+
selector: "survey",
|
|
27
|
+
template: "<sv-ng-modal-container></sv-ng-modal-container><survey-content [model]='model'></survey-content>"
|
|
28
|
+
}]
|
|
29
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { model: [{
|
|
30
|
+
type: Input
|
|
31
|
+
}] } });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdXJ2ZXkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFLN0MsTUFBTSxPQUFPLGVBQWdCLFNBQVEsV0FBd0I7SUFLM0QsWUFBWSxpQkFBb0M7UUFDOUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDekIsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQU5TLFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFLa0IsK0JBQStCO1FBQ2hELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUNrQixjQUFjO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDOzs2R0FkVSxlQUFlO2lHQUFmLGVBQWUsaUdBRmhCLGtHQUFrRzs0RkFFakcsZUFBZTtrQkFKM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsUUFBUTtvQkFDbEIsUUFBUSxFQUFFLGtHQUFrRztpQkFDM0c7d0dBRVEsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3VydmV5TW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEJhc2VBbmd1bGFyIH0gZnJvbSBcIi4vYmFzZS1hbmd1bGFyXCI7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3VydmV5XCIsXG4gIHRlbXBsYXRlOiBcIjxzdi1uZy1tb2RhbC1jb250YWluZXI+PC9zdi1uZy1tb2RhbC1jb250YWluZXI+PHN1cnZleS1jb250ZW50IFttb2RlbF09J21vZGVsJz48L3N1cnZleS1jb250ZW50PlwiXG4gIH0pXG5leHBvcnQgY2xhc3MgU3VydmV5Q29tcG9uZW50IGV4dGVuZHMgQmFzZUFuZ3VsYXI8U3VydmV5TW9kZWw+IHtcbiAgQElucHV0KCkgbW9kZWwhOiBTdXJ2ZXlNb2RlbDtcbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IFN1cnZleU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbDtcbiAgfVxuICBjb25zdHJ1Y3RvcihjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcihjaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgY2hhbmdlRGV0ZWN0b3JSZWYuZGV0YWNoKCk7XG4gIH1cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGdldFNob3VsZFJlYXR0YWNoQ2hhbmdlRGV0ZWN0b3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHByb3RlY3RlZCBvdmVycmlkZSBvbk1vZGVsQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufSJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import { SurveyModel } from "survey-core";
|
|
3
|
+
import { AngularComponentFactory } from "./component-factory";
|
|
4
|
+
import { EmbeddedViewContentComponent } from "./embedded-view-content.component";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
import * as i2 from "./utils/dynamic.directive";
|
|
8
|
+
export class TemplateRendererComponent extends EmbeddedViewContentComponent {
|
|
9
|
+
}
|
|
10
|
+
TemplateRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateRendererComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
TemplateRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TemplateRendererComponent, selector: "sv-template-renderer", inputs: { componentName: "componentName", componentData: "componentData", contentTempl: "contentTempl" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <ng-container *ngIf=\"!!componentName\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </ng-container>\n <ng-container *ngIf=\"!componentName && contentTempl\">\n <ng-container *ngTemplateOutlet=\"contentTempl\"></ng-container>\n </ng-container>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateRendererComponent, decorators: [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{
|
|
15
|
+
selector: "sv-template-renderer",
|
|
16
|
+
templateUrl: "./template-renderer.component.html",
|
|
17
|
+
styleUrls: ["./hide-host.scss"]
|
|
18
|
+
}]
|
|
19
|
+
}], propDecorators: { componentName: [{
|
|
20
|
+
type: Input
|
|
21
|
+
}], componentData: [{
|
|
22
|
+
type: Input
|
|
23
|
+
}], contentTempl: [{
|
|
24
|
+
type: Input
|
|
25
|
+
}] } });
|
|
26
|
+
AngularComponentFactory.Instance.registerComponent(SurveyModel.TemplateRendererComponentName, TemplateRendererComponent);
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtcmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RlbXBsYXRlLXJlbmRlcmVyLmNvbXBvbmVudC50cyIsIi4uLy4uL3NyYy90ZW1wbGF0ZS1yZW5kZXJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBOEMsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXRGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzlELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7O0FBT2pGLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSw0QkFBNEI7O3VIQUE5RCx5QkFBeUI7MkdBQXpCLHlCQUF5Qiw2TENYdEMsMFZBT2M7NEZESUQseUJBQXlCO2tCQUxyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFdBQVcsRUFBRSxvQ0FBb0M7b0JBQ2pELFNBQVMsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUNoQzs4QkFFVSxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSzs7QUFFUix1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLDZCQUE2QixFQUFFLHlCQUF5QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXBJdGVtTW9kZWwsIFBhbmVsTW9kZWwsIFF1ZXN0aW9uLCBTdXJ2ZXlNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQmFzZUFuZ3VsYXIgfSBmcm9tIFwiLi9iYXNlLWFuZ3VsYXJcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4vY29tcG9uZW50LWZhY3RvcnlcIjtcbmltcG9ydCB7IEVtYmVkZGVkVmlld0NvbnRlbnRDb21wb25lbnQgfSBmcm9tIFwiLi9lbWJlZGRlZC12aWV3LWNvbnRlbnQuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi10ZW1wbGF0ZS1yZW5kZXJlclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3RlbXBsYXRlLXJlbmRlcmVyLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi9oaWRlLWhvc3Quc2Nzc1wiXVxufSlcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZVJlbmRlcmVyQ29tcG9uZW50IGV4dGVuZHMgRW1iZWRkZWRWaWV3Q29udGVudENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNvbXBvbmVudE5hbWUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvbXBvbmVudERhdGEhOiBhbnk7XG4gIEBJbnB1dCgpIGNvbnRlbnRUZW1wbD86IFRlbXBsYXRlUmVmPHVua25vd24+O1xufVxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoU3VydmV5TW9kZWwuVGVtcGxhdGVSZW5kZXJlckNvbXBvbmVudE5hbWUsIFRlbXBsYXRlUmVuZGVyZXJDb21wb25lbnQpOyIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhIWNvbXBvbmVudE5hbWVcIj5cbiAgICA8bmctdGVtcGxhdGUgW2NvbXBvbmVudF09XCJ7IG5hbWU6IGNvbXBvbmVudE5hbWUsIGRhdGE6IGNvbXBvbmVudERhdGEgfVwiPjwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbXBvbmVudE5hbWUgJiYgY29udGVudFRlbXBsXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUZW1wbFwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Directive, Input } from "@angular/core";
|
|
2
|
+
import { AngularComponentFactory } from "../component-factory";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class DynamicComponentDirective {
|
|
5
|
+
constructor(containerRef, templateRef, resolver) {
|
|
6
|
+
this.containerRef = containerRef;
|
|
7
|
+
this.templateRef = templateRef;
|
|
8
|
+
this.resolver = resolver;
|
|
9
|
+
}
|
|
10
|
+
ngOnChanges(changes) {
|
|
11
|
+
var _a;
|
|
12
|
+
const componentChanges = changes["component"];
|
|
13
|
+
if (componentChanges.currentValue.name !== ((_a = componentChanges.previousValue) === null || _a === void 0 ? void 0 : _a.name) ||
|
|
14
|
+
(componentChanges.currentValue.name === undefined && componentChanges.previousValue === undefined && !this.componentInstance)) {
|
|
15
|
+
this.createComponent();
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
this.updateComponentData();
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
createComponent() {
|
|
22
|
+
this.containerRef.clear();
|
|
23
|
+
if (AngularComponentFactory.Instance.isComponentRegistered(this.component.name)) {
|
|
24
|
+
this.componentInstance = AngularComponentFactory.Instance.create(this.containerRef, this.component.name, this.resolver).instance;
|
|
25
|
+
}
|
|
26
|
+
else if (this.component.default) {
|
|
27
|
+
this.componentInstance = AngularComponentFactory.Instance.create(this.containerRef, this.component.default, this.resolver).instance;
|
|
28
|
+
}
|
|
29
|
+
if (!this.componentInstance) {
|
|
30
|
+
throw new Error(`Can't create component with name: ${this.component.name} and default: ${this.component.default}`);
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
this.componentInstance.contentTempl = this.templateRef;
|
|
34
|
+
}
|
|
35
|
+
this.updateComponentData();
|
|
36
|
+
}
|
|
37
|
+
updateComponentData() {
|
|
38
|
+
const data = this.component.data;
|
|
39
|
+
Object.keys(data).forEach((key) => {
|
|
40
|
+
this.componentInstance[key] = data[key];
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
DynamicComponentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicComponentDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive });
|
|
45
|
+
DynamicComponentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: DynamicComponentDirective, selector: "[component]", inputs: { component: "component" }, usesOnChanges: true, ngImport: i0 });
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicComponentDirective, decorators: [{
|
|
47
|
+
type: Directive,
|
|
48
|
+
args: [{
|
|
49
|
+
selector: "[component]"
|
|
50
|
+
}]
|
|
51
|
+
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: { component: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}] } });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvZHluYW1pYy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QixTQUFTLEVBQWMsS0FBSyxFQUEyRCxNQUFNLGVBQWUsQ0FBQztBQUNoSixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFZL0QsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxZQUFvQixZQUE4QixFQUFVLFdBQWlDLEVBQVUsUUFBa0M7UUFBckgsaUJBQVksR0FBWixZQUFZLENBQWtCO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQXNCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBMEI7SUFBSSxDQUFDO0lBRzlJLFdBQVcsQ0FBQyxPQUFzQjs7UUFDaEMsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUMsSUFBRyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsSUFBSSxNQUFLLE1BQUEsZ0JBQWdCLENBQUMsYUFBYSwwQ0FBRSxJQUFJLENBQUE7WUFDNUUsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsSUFBSSxLQUFLLFNBQVMsSUFBSSxnQkFBZ0IsQ0FBQyxhQUFhLEtBQUssU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUU7WUFDL0gsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQ3hCO2FBQU07WUFDTCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztTQUM1QjtJQUNILENBQUM7SUFDRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMxQixJQUFHLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzlFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQztTQUNsSTthQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUU7WUFDakMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDO1NBQ3JJO1FBQ0QsSUFBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLHFDQUFxQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksaUJBQWlCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztTQUNwSDthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1NBQ3hEO1FBQ0QsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUNELG1CQUFtQjtRQUNqQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztRQUNqQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzt1SEFoQ1UseUJBQXlCOzJHQUF6Qix5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFKckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtpQkFDeEI7d0tBSVUsU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCIuLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuXG5pbnRlcmZhY2UgSUR5bmFtaWNDb21wb25lbnQge1xuICBuYW1lOiBzdHJpbmc7XG4gIGRhdGE/OiBhbnk7XG4gIGRlZmF1bHQ/OiBzdHJpbmc7XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbY29tcG9uZW50XVwiXG59KVxuXG5leHBvcnQgY2xhc3MgRHluYW1pY0NvbXBvbmVudERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwcml2YXRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjx1bmtub3duPiwgcHJpdmF0ZSByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7IH1cbiAgQElucHV0KCkgY29tcG9uZW50ITogSUR5bmFtaWNDb21wb25lbnQ7XG4gIHByaXZhdGUgY29tcG9uZW50SW5zdGFuY2U6IGFueTtcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IGNvbXBvbmVudENoYW5nZXMgPSBjaGFuZ2VzW1wiY29tcG9uZW50XCJdO1xuICAgIGlmKGNvbXBvbmVudENoYW5nZXMuY3VycmVudFZhbHVlLm5hbWUgIT09IGNvbXBvbmVudENoYW5nZXMucHJldmlvdXNWYWx1ZT8ubmFtZSB8fFxuICAgICAgKGNvbXBvbmVudENoYW5nZXMuY3VycmVudFZhbHVlLm5hbWUgPT09IHVuZGVmaW5lZCAmJiBjb21wb25lbnRDaGFuZ2VzLnByZXZpb3VzVmFsdWUgPT09IHVuZGVmaW5lZCAmJiAhdGhpcy5jb21wb25lbnRJbnN0YW5jZSkpIHtcbiAgICAgIHRoaXMuY3JlYXRlQ29tcG9uZW50KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudXBkYXRlQ29tcG9uZW50RGF0YSgpO1xuICAgIH1cbiAgfVxuICBjcmVhdGVDb21wb25lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250YWluZXJSZWYuY2xlYXIoKTtcbiAgICBpZihBbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5pc0NvbXBvbmVudFJlZ2lzdGVyZWQodGhpcy5jb21wb25lbnQubmFtZSkpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UgPSBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5jcmVhdGUodGhpcy5jb250YWluZXJSZWYsIHRoaXMuY29tcG9uZW50Lm5hbWUsIHRoaXMucmVzb2x2ZXIpLmluc3RhbmNlO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jb21wb25lbnQuZGVmYXVsdCkge1xuICAgICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZSA9IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLmNyZWF0ZSh0aGlzLmNvbnRhaW5lclJlZiwgdGhpcy5jb21wb25lbnQuZGVmYXVsdCwgdGhpcy5yZXNvbHZlcikuaW5zdGFuY2U7XG4gICAgfVxuICAgIGlmKCF0aGlzLmNvbXBvbmVudEluc3RhbmNlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbid0IGNyZWF0ZSBjb21wb25lbnQgd2l0aCBuYW1lOiAke3RoaXMuY29tcG9uZW50Lm5hbWV9IGFuZCBkZWZhdWx0OiAke3RoaXMuY29tcG9uZW50LmRlZmF1bHR9YCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuY29udGVudFRlbXBsID0gdGhpcy50ZW1wbGF0ZVJlZjtcbiAgICB9XG4gICAgdGhpcy51cGRhdGVDb21wb25lbnREYXRhKCk7XG4gIH1cbiAgdXBkYXRlQ29tcG9uZW50RGF0YSgpOiB2b2lkIHtcbiAgICBjb25zdCBkYXRhID0gdGhpcy5jb21wb25lbnQuZGF0YTtcbiAgICBPYmplY3Qua2V5cyhkYXRhKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2Vba2V5XSA9IGRhdGFba2V5XTtcbiAgICB9KTtcbiAgfVxufSJdfQ==
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { Directive, Input } from "@angular/core";
|
|
2
|
+
import { doKey2ClickDown, doKey2ClickUp, doKey2ClickBlur } from "survey-core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class Key2ClickDirective {
|
|
5
|
+
constructor(el) {
|
|
6
|
+
this.el = el;
|
|
7
|
+
this.isSubscribed = false;
|
|
8
|
+
this.options = Key2ClickDirective.defaultOptions;
|
|
9
|
+
this.onkeyup = (evt) => {
|
|
10
|
+
evt.preventDefault();
|
|
11
|
+
evt.stopPropagation();
|
|
12
|
+
doKey2ClickUp(evt, this.options);
|
|
13
|
+
return false;
|
|
14
|
+
};
|
|
15
|
+
this.subscribeEventListeners();
|
|
16
|
+
}
|
|
17
|
+
onkeydown(evt) {
|
|
18
|
+
doKey2ClickDown(evt, this.options);
|
|
19
|
+
}
|
|
20
|
+
blur(evt) {
|
|
21
|
+
doKey2ClickBlur(evt);
|
|
22
|
+
}
|
|
23
|
+
get element() {
|
|
24
|
+
return this.el.nativeElement;
|
|
25
|
+
}
|
|
26
|
+
subscribeEventListeners() {
|
|
27
|
+
if (this.isSubscribed)
|
|
28
|
+
return;
|
|
29
|
+
this.element.tabIndex = 0;
|
|
30
|
+
this.element.addEventListener("keyup", this.onkeyup);
|
|
31
|
+
this.element.addEventListener("keydown", this.onkeydown);
|
|
32
|
+
this.element.addEventListener("blur", this.blur);
|
|
33
|
+
this.isSubscribed = true;
|
|
34
|
+
}
|
|
35
|
+
unsubscribeEventListeners() {
|
|
36
|
+
if (!this.isSubscribed)
|
|
37
|
+
return;
|
|
38
|
+
this.element.tabIndex = -1;
|
|
39
|
+
this.element.removeEventListener("keyup", this.onkeyup);
|
|
40
|
+
this.element.removeEventListener("keydown", this.onkeydown);
|
|
41
|
+
this.element.removeEventListener("blur", this.blur);
|
|
42
|
+
this.isSubscribed = false;
|
|
43
|
+
}
|
|
44
|
+
ngOnChanges(changes) {
|
|
45
|
+
const curValue = changes["key2click"].currentValue;
|
|
46
|
+
if (curValue.disableTabStop) {
|
|
47
|
+
this.unsubscribeEventListeners();
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this.subscribeEventListeners();
|
|
51
|
+
}
|
|
52
|
+
this.options = Object.assign({}, Key2ClickDirective.defaultOptions, curValue);
|
|
53
|
+
}
|
|
54
|
+
ngOnDestroy() {
|
|
55
|
+
this.unsubscribeEventListeners();
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
Key2ClickDirective.defaultOptions = { processEsc: true, disableTabStop: false };
|
|
59
|
+
Key2ClickDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Key2ClickDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
60
|
+
Key2ClickDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: Key2ClickDirective, selector: "[key2click]", inputs: { key2click: "key2click" }, usesOnChanges: true, ngImport: i0 });
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Key2ClickDirective, decorators: [{
|
|
62
|
+
type: Directive,
|
|
63
|
+
args: [{
|
|
64
|
+
selector: "[key2click]"
|
|
65
|
+
}]
|
|
66
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { key2click: [{
|
|
67
|
+
type: Input
|
|
68
|
+
}] } });
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmcta2V5MmNsaWNrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9uZy1rZXkyY2xpY2suZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUF1QyxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQTJCLE1BQU0sYUFBYSxDQUFDOztBQUt2RyxNQUFNLE9BQU8sa0JBQWtCO0lBbUI3QixZQUFvQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQWpCMUIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFFN0IsWUFBTyxHQUE2QixrQkFBa0IsQ0FBQyxjQUFjLENBQUM7UUFNOUQsWUFBTyxHQUFHLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDN0IsR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3JCLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN0QixhQUFhLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNqQyxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQTtRQUtDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFkTyxTQUFTLENBQUUsR0FBUTtRQUN6QixlQUFlLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBT08sSUFBSSxDQUFFLEdBQVE7UUFDcEIsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFLRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQy9CLENBQUM7SUFFRCx1QkFBdUI7UUFDckIsSUFBRyxJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU87UUFFN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWpELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFDRCx5QkFBeUI7UUFDdkIsSUFBRyxDQUFDLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUU5QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVwRCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFDbkQsSUFBRyxRQUFRLENBQUMsY0FBYyxFQUFFO1lBQzFCLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1NBQ2xDO2FBQU07WUFDTCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztTQUNoQztRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsa0JBQWtCLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQzs7QUEzRE0saUNBQWMsR0FBNEIsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsQ0FBQztnSEFEbEYsa0JBQWtCO29HQUFsQixrQkFBa0I7NEZBQWxCLGtCQUFrQjtrQkFIOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtpQkFDeEI7aUdBTVUsU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIFNpbXBsZUNoYW5nZXMsIE9uQ2hhbmdlcywgT25EZXN0cm95IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IGRvS2V5MkNsaWNrRG93biwgZG9LZXkyQ2xpY2tVcCwgZG9LZXkyQ2xpY2tCbHVyLCBJQXR0YWNoS2V5MmNsaWNrT3B0aW9ucyB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW2tleTJjbGlja11cIlxufSlcbmV4cG9ydCBjbGFzcyBLZXkyQ2xpY2tEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBkZWZhdWx0T3B0aW9uczogSUF0dGFjaEtleTJjbGlja09wdGlvbnMgPSB7IHByb2Nlc3NFc2M6IHRydWUsIGRpc2FibGVUYWJTdG9wOiBmYWxzZSB9O1xuICBwcml2YXRlIGlzU3Vic2NyaWJlZCA9IGZhbHNlO1xuXG4gIG9wdGlvbnM/OiBJQXR0YWNoS2V5MmNsaWNrT3B0aW9ucyA9IEtleTJDbGlja0RpcmVjdGl2ZS5kZWZhdWx0T3B0aW9ucztcbiAgQElucHV0KCkga2V5MmNsaWNrPzogSUF0dGFjaEtleTJjbGlja09wdGlvbnM7XG5cbiAgcHJpdmF0ZSBvbmtleWRvd24gKGV2dDogYW55KSB7XG4gICAgZG9LZXkyQ2xpY2tEb3duKGV2dCwgdGhpcy5vcHRpb25zKTtcbiAgfVxuICBwcml2YXRlIG9ua2V5dXAgPSAoZXZ0OiBhbnkpID0+IHtcbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgZG9LZXkyQ2xpY2tVcChldnQsIHRoaXMub3B0aW9ucyk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHByaXZhdGUgYmx1ciAoZXZ0OiBhbnkpIHtcbiAgICBkb0tleTJDbGlja0JsdXIoZXZ0KTtcbiAgfVxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7XG4gICAgdGhpcy5zdWJzY3JpYmVFdmVudExpc3RlbmVycygpO1xuICB9XG5cbiAgZ2V0IGVsZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHN1YnNjcmliZUV2ZW50TGlzdGVuZXJzKCkge1xuICAgIGlmKHRoaXMuaXNTdWJzY3JpYmVkKSByZXR1cm47XG5cbiAgICB0aGlzLmVsZW1lbnQudGFiSW5kZXggPSAwO1xuICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKFwia2V5dXBcIiwgdGhpcy5vbmtleXVwKTtcbiAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgdGhpcy5vbmtleWRvd24pO1xuICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKFwiYmx1clwiLCB0aGlzLmJsdXIpO1xuXG4gICAgdGhpcy5pc1N1YnNjcmliZWQgPSB0cnVlO1xuICB9XG4gIHVuc3Vic2NyaWJlRXZlbnRMaXN0ZW5lcnMoKSB7XG4gICAgaWYoIXRoaXMuaXNTdWJzY3JpYmVkKSByZXR1cm47XG5cbiAgICB0aGlzLmVsZW1lbnQudGFiSW5kZXggPSAtMTtcbiAgICB0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImtleXVwXCIsIHRoaXMub25rZXl1cCk7XG4gICAgdGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJrZXlkb3duXCIsIHRoaXMub25rZXlkb3duKTtcbiAgICB0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImJsdXJcIiwgdGhpcy5ibHVyKTtcblxuICAgIHRoaXMuaXNTdWJzY3JpYmVkID0gZmFsc2U7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgY3VyVmFsdWUgPSBjaGFuZ2VzW1wia2V5MmNsaWNrXCJdLmN1cnJlbnRWYWx1ZTtcbiAgICBpZihjdXJWYWx1ZS5kaXNhYmxlVGFiU3RvcCkge1xuICAgICAgdGhpcy51bnN1YnNjcmliZUV2ZW50TGlzdGVuZXJzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3Vic2NyaWJlRXZlbnRMaXN0ZW5lcnMoKTtcbiAgICB9XG4gICAgdGhpcy5vcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgS2V5MkNsaWNrRGlyZWN0aXZlLmRlZmF1bHRPcHRpb25zLCBjdXJWYWx1ZSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlRXZlbnRMaXN0ZW5lcnMoKTtcbiAgfVxufSJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Directive, Input } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class VisibleDirective {
|
|
4
|
+
constructor(el) {
|
|
5
|
+
this.el = el;
|
|
6
|
+
}
|
|
7
|
+
ngOnChanges(changes) {
|
|
8
|
+
changes["visible"].currentValue ? this.show() : this.hide();
|
|
9
|
+
}
|
|
10
|
+
hide() {
|
|
11
|
+
this.el.nativeElement.style.display = "none";
|
|
12
|
+
}
|
|
13
|
+
show() {
|
|
14
|
+
this.el.nativeElement.style.display = "";
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
VisibleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VisibleDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
18
|
+
VisibleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: VisibleDirective, selector: "[visible]", inputs: { visible: "visible" }, usesOnChanges: true, ngImport: i0 });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VisibleDirective, decorators: [{
|
|
20
|
+
type: Directive,
|
|
21
|
+
args: [{
|
|
22
|
+
selector: "[visible]"
|
|
23
|
+
}]
|
|
24
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { visible: [{
|
|
25
|
+
type: Input
|
|
26
|
+
}] } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctc2hvdy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvbmctc2hvdy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDOztBQUt2RixNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQUksQ0FBQztJQUV2QyxXQUFXLENBQUMsT0FBc0I7UUFDaEMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUNPLElBQUk7UUFDVixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztJQUMvQyxDQUFDO0lBQ08sSUFBSTtRQUNWLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQzNDLENBQUM7OzhHQVhVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBSDVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7aUJBQ3RCO2lHQUdVLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbdmlzaWJsZV1cIlxufSlcbmV4cG9ydCBjbGFzcyBWaXNpYmxlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikgeyB9XG4gIEBJbnB1dCgpIHZpc2libGU/OiBib29sZWFuO1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY2hhbmdlc1tcInZpc2libGVcIl0uY3VycmVudFZhbHVlID8gdGhpcy5zaG93KCkgOiB0aGlzLmhpZGUoKTtcbiAgfVxuICBwcml2YXRlIGhpZGUoKSB7XG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcbiAgfVxuICBwcml2YXRlIHNob3coKSB7XG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcIlwiO1xuICB9XG59Il19
|