survey-creator-angular 1.9.46
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 +214 -0
- package/adorners/cell-question-dropdown.component.d.ts +9 -0
- package/adorners/cell-question.component.d.ts +11 -0
- package/adorners/image-item-value.component.d.ts +24 -0
- package/adorners/item-value.component.d.ts +17 -0
- package/adorners/matrix-cell.component.d.ts +20 -0
- package/adorners/question-dropdown.component.d.ts +18 -0
- package/adorners/question-image.component.d.ts +19 -0
- package/adorners/question-rating.component.d.ts +19 -0
- package/angular-ui.d.ts +2 -0
- package/angular-ui.module.d.ts +60 -0
- package/components/action-button.component.d.ts +14 -0
- package/creator-model.component.d.ts +14 -0
- package/creator.component.d.ts +16 -0
- package/esm2020/adorners/cell-question-dropdown.component.mjs +30 -0
- package/esm2020/adorners/cell-question.component.mjs +24 -0
- package/esm2020/adorners/image-item-value.component.mjs +60 -0
- package/esm2020/adorners/item-value.component.mjs +41 -0
- package/esm2020/adorners/matrix-cell.component.mjs +46 -0
- package/esm2020/adorners/question-dropdown.component.mjs +54 -0
- package/esm2020/adorners/question-image.component.mjs +45 -0
- package/esm2020/adorners/question-rating.component.mjs +46 -0
- package/esm2020/angular-ui.mjs +3 -0
- package/esm2020/angular-ui.module.mjs +85 -0
- package/esm2020/components/action-button.component.mjs +44 -0
- package/esm2020/creator-model.component.mjs +40 -0
- package/esm2020/creator.component.mjs +47 -0
- package/esm2020/header/logo-image.component.mjs +40 -0
- package/esm2020/notifier.component.mjs +18 -0
- package/esm2020/page-navigator/page-navigator-item.component.mjs +22 -0
- package/esm2020/page-navigator/page-navigator.component.mjs +51 -0
- package/esm2020/page.component.mjs +49 -0
- package/esm2020/panel.component.mjs +16 -0
- package/esm2020/property-panel/object-selector.component.mjs +20 -0
- package/esm2020/property-panel/property-grid.component.mjs +20 -0
- package/esm2020/question-editor.component.mjs +46 -0
- package/esm2020/question-widget.component.mjs +22 -0
- package/esm2020/question.component.mjs +50 -0
- package/esm2020/questions/logic-operator.component.mjs +33 -0
- package/esm2020/questions/question-embedded-survey.component.mjs +26 -0
- package/esm2020/questions/question-link-value.component.mjs +19 -0
- package/esm2020/row.component.mjs +33 -0
- package/esm2020/side-bar/side-bar-tab.component.mjs +19 -0
- package/esm2020/side-bar/side-bar.component.mjs +30 -0
- package/esm2020/string-editor.component.mjs +101 -0
- package/esm2020/survey-creator-angular.mjs +5 -0
- package/esm2020/svg-bundle.component.mjs +22 -0
- package/esm2020/tabbed-menu/tabbed-menu/tabbed-menu-item-wrapper.component.mjs +18 -0
- package/esm2020/tabbed-menu/tabbed-menu/tabbed-menu-item.component.mjs +19 -0
- package/esm2020/tabbed-menu/tabbed-menu/tabbed-menu.component.mjs +31 -0
- package/esm2020/tabs/designer/designer-pages.component.mjs +24 -0
- package/esm2020/tabs/designer/designer-survey.component.mjs +28 -0
- package/esm2020/tabs/designer/designer.component.mjs +29 -0
- package/esm2020/tabs/json/json-editor-ace.component.mjs +25 -0
- package/esm2020/tabs/json/json-editor-textarea.component.mjs +24 -0
- package/esm2020/tabs/logic/logic-add-btn.component.mjs +22 -0
- package/esm2020/tabs/logic/logic.component.mjs +21 -0
- package/esm2020/tabs/preview/simulator.component.mjs +32 -0
- package/esm2020/tabs/preview/survey-results-row.component.mjs +19 -0
- package/esm2020/tabs/preview/survey-results.component.mjs +30 -0
- package/esm2020/tabs/preview/test-again.component.mjs +18 -0
- package/esm2020/tabs/preview/test.component.mjs +23 -0
- package/esm2020/tabs/translation/translation-line-skeleton.component.mjs +13 -0
- package/esm2020/tabs/translation/translation.component.mjs +20 -0
- package/esm2020/toolbox/adaptive-toolbox.component.mjs +35 -0
- package/esm2020/toolbox/toolbox-category.component.mjs +22 -0
- package/esm2020/toolbox/toolbox-item.component.mjs +37 -0
- package/esm2020/toolbox/toolbox-tool.component.mjs +34 -0
- package/esm2020/toolbox/toolbox.component.mjs +24 -0
- package/fesm2015/survey-creator-angular.mjs +1420 -0
- package/fesm2015/survey-creator-angular.mjs.map +1 -0
- package/fesm2020/survey-creator-angular.mjs +1410 -0
- package/fesm2020/survey-creator-angular.mjs.map +1 -0
- package/header/logo-image.component.d.ts +18 -0
- package/notifier.component.d.ts +9 -0
- package/package.json +52 -0
- package/page-navigator/page-navigator-item.component.d.ts +10 -0
- package/page-navigator/page-navigator.component.d.ts +17 -0
- package/page.component.d.ts +19 -0
- package/panel.component.d.ts +6 -0
- package/property-panel/object-selector.component.d.ts +9 -0
- package/property-panel/property-grid.component.d.ts +9 -0
- package/question-editor.component.d.ts +12 -0
- package/question-widget.component.d.ts +7 -0
- package/question.component.d.ts +19 -0
- package/questions/logic-operator.component.d.ts +13 -0
- package/questions/question-embedded-survey.component.d.ts +9 -0
- package/questions/question-link-value.component.d.ts +8 -0
- package/row.component.d.ts +18 -0
- package/side-bar/side-bar-tab.component.d.ts +9 -0
- package/side-bar/side-bar.component.d.ts +13 -0
- package/string-editor.component.d.ts +33 -0
- package/survey-creator-angular.d.ts +5 -0
- package/svg-bundle.component.d.ts +8 -0
- package/tabbed-menu/tabbed-menu/tabbed-menu-item-wrapper.component.d.ts +9 -0
- package/tabbed-menu/tabbed-menu/tabbed-menu-item.component.d.ts +9 -0
- package/tabbed-menu/tabbed-menu/tabbed-menu.component.d.ts +14 -0
- package/tabs/designer/designer-pages.component.d.ts +11 -0
- package/tabs/designer/designer-survey.component.d.ts +12 -0
- package/tabs/designer/designer.component.d.ts +11 -0
- package/tabs/json/json-editor-ace.component.d.ts +12 -0
- package/tabs/json/json-editor-textarea.component.d.ts +11 -0
- package/tabs/logic/logic-add-btn.component.d.ts +10 -0
- package/tabs/logic/logic.component.d.ts +9 -0
- package/tabs/preview/simulator.component.d.ts +12 -0
- package/tabs/preview/survey-results-row.component.d.ts +9 -0
- package/tabs/preview/survey-results.component.d.ts +13 -0
- package/tabs/preview/test-again.component.d.ts +9 -0
- package/tabs/preview/test.component.d.ts +9 -0
- package/tabs/translation/translation-line-skeleton.component.d.ts +5 -0
- package/tabs/translation/translation.component.d.ts +9 -0
- package/toolbox/adaptive-toolbox.component.d.ts +15 -0
- package/toolbox/toolbox-category.component.d.ts +10 -0
- package/toolbox/toolbox-item.component.d.ts +15 -0
- package/toolbox/toolbox-tool.component.d.ts +15 -0
- package/toolbox/toolbox.component.d.ts +10 -0
|
@@ -0,0 +1,1420 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Component, ViewChild, Input, ElementRef, NgModule } from '@angular/core';
|
|
3
|
+
import * as i2 from '@angular/common';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import * as i1$1 from '@angular/forms';
|
|
6
|
+
import { FormsModule } from '@angular/forms';
|
|
7
|
+
import * as i1 from 'survey-angular-ui';
|
|
8
|
+
import { BaseAngular, AngularComponentFactory, SurveyContentComponent, ButtonGroupQuestionComponent, EmbeddedViewContentComponent, QuestionAngular, SurveyAngularModule } from 'survey-angular-ui';
|
|
9
|
+
import { SvgRegistry, ResponsivityManager, VerticalResponsivityManager, DropdownListModel, RendererFactory } from 'survey-core';
|
|
10
|
+
import { ToolboxToolViewModel, PageAdorner, PageNavigatorViewModel, editorLocalization, SurveyResultsModel, QuestionAdornerViewModel, ItemValueWrapperViewModel, ImageItemValueWrapperViewModel, QuestionDropdownAdornerViewModel, QuestionImageAdornerViewModel, StringEditorViewModelBase, editableStringRendererName, MatrixCellWrapperViewModel, RowViewModel, QuestionRatingAdornerViewModel, LogoImageViewModel } from 'survey-creator-core';
|
|
11
|
+
|
|
12
|
+
class SvgBundleComponent {
|
|
13
|
+
ngOnInit() {
|
|
14
|
+
this.svgContainer.nativeElement.innerHTML = SvgRegistry.iconsRenderedHtml();
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
SvgBundleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SvgBundleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
+
SvgBundleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: SvgBundleComponent, selector: "svc-svg-bundle", viewQueries: [{ propertyName: "svgContainer", first: true, predicate: ["svgContainer"], descendants: true, static: true }], ngImport: i0, template: "<svg id='sv-icon-holder-global-container' #svgContainer></svg>", isInline: true, styles: [":host{display:none}\n"] });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SvgBundleComponent, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{
|
|
22
|
+
selector: "svc-svg-bundle",
|
|
23
|
+
template: "<svg id='sv-icon-holder-global-container' #svgContainer></svg>",
|
|
24
|
+
styles: [":host { display: none; }"]
|
|
25
|
+
}]
|
|
26
|
+
}], propDecorators: { svgContainer: [{
|
|
27
|
+
type: ViewChild,
|
|
28
|
+
args: ["svgContainer", { static: true }]
|
|
29
|
+
}] } });
|
|
30
|
+
|
|
31
|
+
class TabbedMenuItemWrapperComponent extends BaseAngular {
|
|
32
|
+
getModel() {
|
|
33
|
+
return this.model;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
TabbedMenuItemWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TabbedMenuItemWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
37
|
+
TabbedMenuItemWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: TabbedMenuItemWrapperComponent, selector: "svc-tabbed-menu-item-wrapper", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <span class=\"svc-tabbed-menu-item-container\" [class.sv-action--hidden]=\"!model.isVisible\" [class]=\"model.css\">\n <div class=\"sv-action__content\">\n <ng-template [component]=\"{ name: model.component || 'svc-tabbed-menu-item', data: { model } }\"></ng-template>\n </div>\n </span>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TabbedMenuItemWrapperComponent, decorators: [{
|
|
39
|
+
type: Component,
|
|
40
|
+
args: [{ selector: "svc-tabbed-menu-item-wrapper", styles: [":host { display: none; }"], template: "<ng-template #template>\n <span class=\"svc-tabbed-menu-item-container\" [class.sv-action--hidden]=\"!model.isVisible\" [class]=\"model.css\">\n <div class=\"sv-action__content\">\n <ng-template [component]=\"{ name: model.component || 'svc-tabbed-menu-item', data: { model } }\"></ng-template>\n </div>\n </span>\n</ng-template>" }]
|
|
41
|
+
}], propDecorators: { model: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}] } });
|
|
44
|
+
|
|
45
|
+
class TabbledMenuComponent extends BaseAngular {
|
|
46
|
+
getModel() {
|
|
47
|
+
return this.model;
|
|
48
|
+
}
|
|
49
|
+
ngAfterViewInit() {
|
|
50
|
+
this.responsivityManager = new ResponsivityManager(this.container.nativeElement, this.model, ".svc-tabbed-menu-item-container:not(.sv-dots)>.sv-action__content");
|
|
51
|
+
}
|
|
52
|
+
ngOnDestroy() {
|
|
53
|
+
super.ngOnDestroy();
|
|
54
|
+
this.responsivityManager.dispose();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
TabbledMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TabbledMenuComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
+
TabbledMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: TabbledMenuComponent, selector: "svc-tabbed-menu", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-tabbed-menu\" #container>\n <ng-container *ngFor=\"let action of model.renderedActions\"> \n <svc-tabbed-menu-item-wrapper [model]=\"action\"></svc-tabbed-menu-item-wrapper>\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: TabbedMenuItemWrapperComponent, selector: "svc-tabbed-menu-item-wrapper", inputs: ["model"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TabbledMenuComponent, decorators: [{
|
|
60
|
+
type: Component,
|
|
61
|
+
args: [{ selector: "svc-tabbed-menu", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-tabbed-menu\" #container>\n <ng-container *ngFor=\"let action of model.renderedActions\"> \n <svc-tabbed-menu-item-wrapper [model]=\"action\"></svc-tabbed-menu-item-wrapper>\n </ng-container>\n </div>\n</ng-template>" }]
|
|
62
|
+
}], propDecorators: { model: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}], container: [{
|
|
65
|
+
type: ViewChild,
|
|
66
|
+
args: ["container"]
|
|
67
|
+
}] } });
|
|
68
|
+
AngularComponentFactory.Instance.registerComponent("svc-tabbed-menu", TabbledMenuComponent);
|
|
69
|
+
|
|
70
|
+
class SidebarTabComponent extends BaseAngular {
|
|
71
|
+
getModel() {
|
|
72
|
+
return this.model;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
SidebarTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SidebarTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
76
|
+
SidebarTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: SidebarTabComponent, selector: "svc-side-bar-tab", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <ng-container *ngIf=\"model.visible\">\n <ng-template [component]=\"{ name: model.componentName, data: { model: model.model } }\"></ng-template>\n </ng-container>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
77
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SidebarTabComponent, decorators: [{
|
|
78
|
+
type: Component,
|
|
79
|
+
args: [{ selector: "svc-side-bar-tab", styles: [":host { display: none; }"], template: "<ng-template #template>\n <ng-container *ngIf=\"model.visible\">\n <ng-template [component]=\"{ name: model.componentName, data: { model: model.model } }\"></ng-template>\n </ng-container>\n</ng-template>" }]
|
|
80
|
+
}], propDecorators: { model: [{
|
|
81
|
+
type: Input
|
|
82
|
+
}] } });
|
|
83
|
+
|
|
84
|
+
class SidebarComponent extends BaseAngular {
|
|
85
|
+
getModel() {
|
|
86
|
+
return this.model;
|
|
87
|
+
}
|
|
88
|
+
ngOnDestroy() {
|
|
89
|
+
this.model.resetResizeManager();
|
|
90
|
+
super.ngOnDestroy();
|
|
91
|
+
}
|
|
92
|
+
ngAfterViewInit() {
|
|
93
|
+
this.model.initResizeManager(this.container.nativeElement);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
SidebarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SidebarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
97
|
+
SidebarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: SidebarComponent, selector: "svc-side-bar", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-side-bar\" [class.svc-flyout-side-bar]=\"model.flyoutPanelMode\" [visible]=\"model.hasVisibleTabs\">\n <div class=\"svc-side-bar__shadow\" (click)=\"model.collapseSidebar()\"></div>\n <div class=\"svc-flex-column svc-side-bar__wrapper\">\n <div class=\"svc-side-bar__container\" [visible]=\"model.visible\" #container>\n <div class=\"svc-side-bar__container-header\">\n <div class=\"svc-side-bar__container-actions\">\n <sv-action-bar [model]=\"model.toolbar\"></sv-action-bar>\n </div>\n <div *ngIf=\"!!model.headerText\" class=\"svc-side-bar__container-title\">{{model.headerText}}</div>\n </div>\n <div class=\"svc-side-bar__container-content\">\n <ng-container *ngFor=\"let tab of model.tabs\">\n <svc-side-bar-tab [model]=\"tab\"></svc-side-bar-tab> \n </ng-container>\n </div>\n <div class=\"svc-side-bar__container-close\">\n <div class=\"sd-btn sd-btn--action svc-side-bar__container-close-button\"\n (click)=\"model.collapseSidebar()\"> {{ model.closeText }}</div>\n </div>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: SidebarTabComponent, selector: "svc-side-bar-tab", inputs: ["model"] }], directives: [{ type: i1.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
98
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SidebarComponent, decorators: [{
|
|
99
|
+
type: Component,
|
|
100
|
+
args: [{ selector: "svc-side-bar", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-side-bar\" [class.svc-flyout-side-bar]=\"model.flyoutPanelMode\" [visible]=\"model.hasVisibleTabs\">\n <div class=\"svc-side-bar__shadow\" (click)=\"model.collapseSidebar()\"></div>\n <div class=\"svc-flex-column svc-side-bar__wrapper\">\n <div class=\"svc-side-bar__container\" [visible]=\"model.visible\" #container>\n <div class=\"svc-side-bar__container-header\">\n <div class=\"svc-side-bar__container-actions\">\n <sv-action-bar [model]=\"model.toolbar\"></sv-action-bar>\n </div>\n <div *ngIf=\"!!model.headerText\" class=\"svc-side-bar__container-title\">{{model.headerText}}</div>\n </div>\n <div class=\"svc-side-bar__container-content\">\n <ng-container *ngFor=\"let tab of model.tabs\">\n <svc-side-bar-tab [model]=\"tab\"></svc-side-bar-tab> \n </ng-container>\n </div>\n <div class=\"svc-side-bar__container-close\">\n <div class=\"sd-btn sd-btn--action svc-side-bar__container-close-button\"\n (click)=\"model.collapseSidebar()\"> {{ model.closeText }}</div>\n </div>\n </div>\n </div>\n </div>\n</ng-template>" }]
|
|
101
|
+
}], propDecorators: { model: [{
|
|
102
|
+
type: Input
|
|
103
|
+
}], container: [{
|
|
104
|
+
type: ViewChild,
|
|
105
|
+
args: ["container"]
|
|
106
|
+
}] } });
|
|
107
|
+
|
|
108
|
+
class NotifierComponent extends BaseAngular {
|
|
109
|
+
getModel() {
|
|
110
|
+
return this.notifier;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
NotifierComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NotifierComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
114
|
+
NotifierComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NotifierComponent, selector: "svc-notifier", inputs: { notifier: "notifier" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [visible]=\"notifier.active\" [class]=\"notifier.css\">\n <span>{{notifier.message}}</span>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.VisibleDirective, selector: "[visible]", inputs: ["visible"] }] });
|
|
115
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NotifierComponent, decorators: [{
|
|
116
|
+
type: Component,
|
|
117
|
+
args: [{ selector: "svc-notifier", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div [visible]=\"notifier.active\" [class]=\"notifier.css\">\n <span>{{notifier.message}}</span>\n </div>\n</ng-template>" }]
|
|
118
|
+
}], propDecorators: { notifier: [{
|
|
119
|
+
type: Input
|
|
120
|
+
}] } });
|
|
121
|
+
|
|
122
|
+
class CreatorComponent extends BaseAngular {
|
|
123
|
+
constructor(changeDetectorRef) {
|
|
124
|
+
super(changeDetectorRef);
|
|
125
|
+
changeDetectorRef.detach();
|
|
126
|
+
}
|
|
127
|
+
getModel() {
|
|
128
|
+
return this.model;
|
|
129
|
+
}
|
|
130
|
+
get creator() {
|
|
131
|
+
return this.model;
|
|
132
|
+
}
|
|
133
|
+
onModelChanged() {
|
|
134
|
+
this.changeDetectorRef.detectChanges();
|
|
135
|
+
}
|
|
136
|
+
ngAfterViewInit() {
|
|
137
|
+
this.creator.initKeyboardShortcuts(this.container.nativeElement);
|
|
138
|
+
this.creator.initResponsivityManager(this.container.nativeElement);
|
|
139
|
+
super.ngOnInit();
|
|
140
|
+
}
|
|
141
|
+
ngOnDestroy() {
|
|
142
|
+
this.creator.removeKeyboardShortcuts(this.container.nativeElement);
|
|
143
|
+
this.creator.resetResponsivityManager();
|
|
144
|
+
super.ngOnDestroy();
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
CreatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CreatorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
148
|
+
CreatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CreatorComponent, selector: "svc-creator", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!creator.isCreatorDisposed\">\n <sv-ng-modal-container></sv-ng-modal-container>\n <div class=\"svc-creator\" [class.svc-creator--mobile]=\"creator.isMobileView\" #container>\n <div>\n <svc-svg-bundle></svc-svg-bundle>\n </div>\n <div class=\"svc-full-container svc-creator__area svc-flex-column\"\n [class.svc-creator__area--with-banner]=\"!creator.haveCommercialLicense\">\n <div class=\"svc-flex-row svc-full-container\"\n [class.svc-creator__side-bar--left]=\"creator.sidebarLocation == 'left'\">\n <div class=\"svc-flex-column svc-flex-row__element svc-flex-row__element--growing\">\n <div class=\"svc-top-bar\">\n <div class=\"svc-tabbed-menu-wrapper\" [visible]=\"creator.showTabs\">\n <svc-tabbed-menu [model]=\"creator.tabbedMenu\"></svc-tabbed-menu>\n </div>\n <div *ngIf=\"creator.showToolbar\" class=\"svc-toolbar-wrapper\" [visible]=\"creator.showToolbar\">\n <sv-action-bar [model]=\"creator.toolbar\"></sv-action-bar>\n </div>\n </div>\n <div class=\"svc-creator__content-wrapper svc-flex-row\"\n [class.svc-creator__content-wrapper--footer-toolbar]=\"creator.isMobileView\">\n <div class=\"svc-creator__content-holder svc-flex-column\">\n <ng-container *ngFor=\"let tab of creator.tabs\">\n <div class=\"svc-creator-tab\" *ngIf=\"creator.viewType == tab.id && tab.visible\"\n [attr.id]=\"'scrollableDiv-' + tab.id\" [class.svc-creator__toolbox--right]=\"creator.toolboxLocation == 'right'\">\n <ng-template [component]=\"{ name: tab.componentContent, data: { model: tab.data.model } }\"></ng-template>\n </div>\n </ng-container>\n </div>\n </div>\n <div *ngIf=\"creator.isMobileView\" class=\"svc-footer-bar\">\n <div class=\"svc-toolbar-wrapper\" [visible]=\"creator.isMobileView\">\n <sv-action-bar [model]=\"creator.footerToolbar\"></sv-action-bar>\n </div>\n </div>\n </div>\n <div *ngIf=\"creator.sidebar\" [class.sv-mobile-side-bar]=\"creator.isMobileView\">\n <svc-side-bar [model]=\"creator.sidebar\"></svc-side-bar>\n </div>\n </div>\n <div class=\"svc-creator__banner\" *ngIf=\"!creator.haveCommercialLicense\">\n <span class=\"svc-creator__non-commercial-text\">\n <a href=\"https://surveyjs.io/buy\">\n {{creator.licenseText}}\n </a>\n </span>\n </div>\n <svc-notifier [notifier]=\"creator.notifier\"></svc-notifier>\n </div>\n </div>\n</ng-container>", components: [{ type: i1.ModalComponent, selector: "sv-ng-modal-container" }, { type: SvgBundleComponent, selector: "svc-svg-bundle" }, { type: TabbledMenuComponent, selector: "svc-tabbed-menu", inputs: ["model"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: SidebarComponent, selector: "svc-side-bar", inputs: ["model"] }, { type: NotifierComponent, selector: "svc-notifier", inputs: ["notifier"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CreatorComponent, decorators: [{
|
|
150
|
+
type: Component,
|
|
151
|
+
args: [{ selector: "svc-creator", template: "<ng-container *ngIf=\"!creator.isCreatorDisposed\">\n <sv-ng-modal-container></sv-ng-modal-container>\n <div class=\"svc-creator\" [class.svc-creator--mobile]=\"creator.isMobileView\" #container>\n <div>\n <svc-svg-bundle></svc-svg-bundle>\n </div>\n <div class=\"svc-full-container svc-creator__area svc-flex-column\"\n [class.svc-creator__area--with-banner]=\"!creator.haveCommercialLicense\">\n <div class=\"svc-flex-row svc-full-container\"\n [class.svc-creator__side-bar--left]=\"creator.sidebarLocation == 'left'\">\n <div class=\"svc-flex-column svc-flex-row__element svc-flex-row__element--growing\">\n <div class=\"svc-top-bar\">\n <div class=\"svc-tabbed-menu-wrapper\" [visible]=\"creator.showTabs\">\n <svc-tabbed-menu [model]=\"creator.tabbedMenu\"></svc-tabbed-menu>\n </div>\n <div *ngIf=\"creator.showToolbar\" class=\"svc-toolbar-wrapper\" [visible]=\"creator.showToolbar\">\n <sv-action-bar [model]=\"creator.toolbar\"></sv-action-bar>\n </div>\n </div>\n <div class=\"svc-creator__content-wrapper svc-flex-row\"\n [class.svc-creator__content-wrapper--footer-toolbar]=\"creator.isMobileView\">\n <div class=\"svc-creator__content-holder svc-flex-column\">\n <ng-container *ngFor=\"let tab of creator.tabs\">\n <div class=\"svc-creator-tab\" *ngIf=\"creator.viewType == tab.id && tab.visible\"\n [attr.id]=\"'scrollableDiv-' + tab.id\" [class.svc-creator__toolbox--right]=\"creator.toolboxLocation == 'right'\">\n <ng-template [component]=\"{ name: tab.componentContent, data: { model: tab.data.model } }\"></ng-template>\n </div>\n </ng-container>\n </div>\n </div>\n <div *ngIf=\"creator.isMobileView\" class=\"svc-footer-bar\">\n <div class=\"svc-toolbar-wrapper\" [visible]=\"creator.isMobileView\">\n <sv-action-bar [model]=\"creator.footerToolbar\"></sv-action-bar>\n </div>\n </div>\n </div>\n <div *ngIf=\"creator.sidebar\" [class.sv-mobile-side-bar]=\"creator.isMobileView\">\n <svc-side-bar [model]=\"creator.sidebar\"></svc-side-bar>\n </div>\n </div>\n <div class=\"svc-creator__banner\" *ngIf=\"!creator.haveCommercialLicense\">\n <span class=\"svc-creator__non-commercial-text\">\n <a href=\"https://surveyjs.io/buy\">\n {{creator.licenseText}}\n </a>\n </span>\n </div>\n <svc-notifier [notifier]=\"creator.notifier\"></svc-notifier>\n </div>\n </div>\n</ng-container>" }]
|
|
152
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { model: [{
|
|
153
|
+
type: Input
|
|
154
|
+
}], container: [{
|
|
155
|
+
type: ViewChild,
|
|
156
|
+
args: ["container", { read: ElementRef }]
|
|
157
|
+
}] } });
|
|
158
|
+
AngularComponentFactory.Instance.registerComponent("survey-widget", SurveyContentComponent);
|
|
159
|
+
|
|
160
|
+
class CreatorModelComponent extends BaseAngular {
|
|
161
|
+
createHash() {
|
|
162
|
+
this.hash = {};
|
|
163
|
+
this.getPropertiesToTrack().forEach((prop) => {
|
|
164
|
+
this.hash[prop] = this[prop];
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
ngOnInit() {
|
|
168
|
+
this.createModel();
|
|
169
|
+
this.createHash();
|
|
170
|
+
super.ngOnInit();
|
|
171
|
+
}
|
|
172
|
+
ngDoCheck() {
|
|
173
|
+
if (this.needUpdateModel())
|
|
174
|
+
this.createModel();
|
|
175
|
+
super.ngDoCheck();
|
|
176
|
+
}
|
|
177
|
+
needUpdateModel() {
|
|
178
|
+
let res = false;
|
|
179
|
+
Object.keys(this.hash).forEach(key => {
|
|
180
|
+
if (this.hash[key] != this[key]) {
|
|
181
|
+
this.hash[key] = this[key];
|
|
182
|
+
res = true;
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
return res;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
CreatorModelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CreatorModelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
189
|
+
CreatorModelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CreatorModelComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "", isInline: true });
|
|
190
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CreatorModelComponent, decorators: [{
|
|
191
|
+
type: Component,
|
|
192
|
+
args: [{
|
|
193
|
+
template: ""
|
|
194
|
+
}]
|
|
195
|
+
}] });
|
|
196
|
+
|
|
197
|
+
class ToolboxToolComponent extends CreatorModelComponent {
|
|
198
|
+
constructor() {
|
|
199
|
+
super(...arguments);
|
|
200
|
+
this.isCompact = false;
|
|
201
|
+
}
|
|
202
|
+
createModel() {
|
|
203
|
+
this.model = new ToolboxToolViewModel(this.item, this.creator);
|
|
204
|
+
}
|
|
205
|
+
getPropertiesToTrack() {
|
|
206
|
+
return ["creator", "item"];
|
|
207
|
+
}
|
|
208
|
+
getModel() {
|
|
209
|
+
return this.item;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
ToolboxToolComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToolboxToolComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
213
|
+
ToolboxToolComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ToolboxToolComponent, selector: "svc-toolbox-tool", inputs: { creator: "creator", item: "item", isCompact: "isCompact" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-toolbox__tool\"\n [class.sv-action--hidden]=\"!item.isVisible\" [class]=\"item.css\" (pointerdown)=\"model.onPointerDown($event)\">\n <div class=\"sv-action__content\">\n <div class=\"svc-toolbox__category-separator\" *ngIf=\"item.needSeparator && !creator.toolbox.showCategoryTitles\"></div>\n <ng-template [component]=\"{ name: item.component || 'svc-toolbox-item', default: 'svc-toolbox-item', data: { model: item, viewModel: model, creator: creator, isCompact: isCompact } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
214
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToolboxToolComponent, decorators: [{
|
|
215
|
+
type: Component,
|
|
216
|
+
args: [{ selector: "svc-toolbox-tool", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-toolbox__tool\"\n [class.sv-action--hidden]=\"!item.isVisible\" [class]=\"item.css\" (pointerdown)=\"model.onPointerDown($event)\">\n <div class=\"sv-action__content\">\n <div class=\"svc-toolbox__category-separator\" *ngIf=\"item.needSeparator && !creator.toolbox.showCategoryTitles\"></div>\n <ng-template [component]=\"{ name: item.component || 'svc-toolbox-item', default: 'svc-toolbox-item', data: { model: item, viewModel: model, creator: creator, isCompact: isCompact } }\"></ng-template>\n </div>\n </div>\n</ng-template>" }]
|
|
217
|
+
}], propDecorators: { creator: [{
|
|
218
|
+
type: Input
|
|
219
|
+
}], item: [{
|
|
220
|
+
type: Input
|
|
221
|
+
}], isCompact: [{
|
|
222
|
+
type: Input
|
|
223
|
+
}] } });
|
|
224
|
+
|
|
225
|
+
class ToolboxCategoryComponent extends BaseAngular {
|
|
226
|
+
getModel() {
|
|
227
|
+
return this.category;
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
ToolboxCategoryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToolboxCategoryComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
231
|
+
ToolboxCategoryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ToolboxCategoryComponent, selector: "svc-toolbox-category ", inputs: { category: "category", toolbox: "toolbox" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-toolbox__category\" [class.svc-toolbox__category--collapsed]=\"category.collapsed\">\n <div class=\"svc-toolbox__category-header\"\n (click)=\"category.toggleState()\" [key2click] [class.svc-toolbox__category-header--collapsed]=\"toolbox.canCollapseCategories\">\n <span class=\"svc-toolbox__category-title\">{{category.name}}</span>\n <div *ngIf=\"toolbox.canCollapseCategories\" class=\"svc-toolbox__category-header__controls\">\n <svg [iconName]=\"'icon-arrow-down'\" class=\"svc-toolbox__category-header__button svc-string-editor__button--expand\" [size]=\"24\" sv-ng-svg-icon [visible]=\"category.collapsed\"></svg>\n <svg [iconName]=\"'icon-arrow-up'\" class=\"svc-toolbox__category-header__button svc-string-editor__button--collapse\" [size]=\"24\" sv-ng-svg-icon [visible]=\"!category.collapsed\"></svg>\n </div>\n </div>\n <ng-container *ngFor=\"let item of category.items\">\n <svc-toolbox-tool [item]=\"item\" [creator]=\"toolbox.creator\" [isCompact]=\"false\" ></svc-toolbox-tool>\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: ToolboxToolComponent, selector: "svc-toolbox-tool", inputs: ["creator", "item", "isCompact"] }], directives: [{ type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
232
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToolboxCategoryComponent, decorators: [{
|
|
233
|
+
type: Component,
|
|
234
|
+
args: [{ selector: "svc-toolbox-category ", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-toolbox__category\" [class.svc-toolbox__category--collapsed]=\"category.collapsed\">\n <div class=\"svc-toolbox__category-header\"\n (click)=\"category.toggleState()\" [key2click] [class.svc-toolbox__category-header--collapsed]=\"toolbox.canCollapseCategories\">\n <span class=\"svc-toolbox__category-title\">{{category.name}}</span>\n <div *ngIf=\"toolbox.canCollapseCategories\" class=\"svc-toolbox__category-header__controls\">\n <svg [iconName]=\"'icon-arrow-down'\" class=\"svc-toolbox__category-header__button svc-string-editor__button--expand\" [size]=\"24\" sv-ng-svg-icon [visible]=\"category.collapsed\"></svg>\n <svg [iconName]=\"'icon-arrow-up'\" class=\"svc-toolbox__category-header__button svc-string-editor__button--collapse\" [size]=\"24\" sv-ng-svg-icon [visible]=\"!category.collapsed\"></svg>\n </div>\n </div>\n <ng-container *ngFor=\"let item of category.items\">\n <svc-toolbox-tool [item]=\"item\" [creator]=\"toolbox.creator\" [isCompact]=\"false\" ></svc-toolbox-tool>\n </ng-container>\n </div>\n</ng-template>" }]
|
|
235
|
+
}], propDecorators: { category: [{
|
|
236
|
+
type: Input
|
|
237
|
+
}], toolbox: [{
|
|
238
|
+
type: Input
|
|
239
|
+
}] } });
|
|
240
|
+
|
|
241
|
+
class AdaptiveToolboxComponent extends BaseAngular {
|
|
242
|
+
get model() {
|
|
243
|
+
return this.creator.toolbox;
|
|
244
|
+
}
|
|
245
|
+
ngAfterViewInit() {
|
|
246
|
+
this.responsivityManager =
|
|
247
|
+
new VerticalResponsivityManager(this.container.nativeElement, this.model, ".svc-toolbox__tool:not(.sv-dots)");
|
|
248
|
+
}
|
|
249
|
+
getModel() {
|
|
250
|
+
return this.model;
|
|
251
|
+
}
|
|
252
|
+
ngOnDestroy() {
|
|
253
|
+
var _a;
|
|
254
|
+
(_a = this.responsivityManager) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
255
|
+
super.ngOnDestroy();
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
AdaptiveToolboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: AdaptiveToolboxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
259
|
+
AdaptiveToolboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: AdaptiveToolboxComponent, selector: "svc-adaptive-toolbox", inputs: { creator: "creator" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-toolbox\" [class.svc-toolbox--compact]=\"model.isCompact\" #container>\n <div class=\"svc-toolbox__container\">\n <ng-container *ngIf=\"!(model.isCompact || model.categories.length == 1 || !model.showCategoryTitles)\">\n <svc-toolbox-category *ngFor=\"let category of model.categories\" [category]=\"category\" [toolbox]=\"model\"></svc-toolbox-category>\n </ng-container>\n <ng-container *ngIf=\"model.isCompact || model.categories.length == 1 || !model.showCategoryTitles\">\n <div class=\"svc-toolbox__category\">\n <svc-toolbox-tool *ngFor=\"let item of model.renderedActions\" [creator]=\"creator\" [item]=\"item\" [isCompact]=\"model.isCompact\"></svc-toolbox-tool>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: ToolboxCategoryComponent, selector: "svc-toolbox-category ", inputs: ["category", "toolbox"] }, { type: ToolboxToolComponent, selector: "svc-toolbox-tool", inputs: ["creator", "item", "isCompact"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
260
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: AdaptiveToolboxComponent, decorators: [{
|
|
261
|
+
type: Component,
|
|
262
|
+
args: [{ selector: "svc-adaptive-toolbox", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-toolbox\" [class.svc-toolbox--compact]=\"model.isCompact\" #container>\n <div class=\"svc-toolbox__container\">\n <ng-container *ngIf=\"!(model.isCompact || model.categories.length == 1 || !model.showCategoryTitles)\">\n <svc-toolbox-category *ngFor=\"let category of model.categories\" [category]=\"category\" [toolbox]=\"model\"></svc-toolbox-category>\n </ng-container>\n <ng-container *ngIf=\"model.isCompact || model.categories.length == 1 || !model.showCategoryTitles\">\n <div class=\"svc-toolbox__category\">\n <svc-toolbox-tool *ngFor=\"let item of model.renderedActions\" [creator]=\"creator\" [item]=\"item\" [isCompact]=\"model.isCompact\"></svc-toolbox-tool>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>" }]
|
|
263
|
+
}], propDecorators: { creator: [{
|
|
264
|
+
type: Input
|
|
265
|
+
}], container: [{
|
|
266
|
+
type: ViewChild,
|
|
267
|
+
args: ["container"]
|
|
268
|
+
}] } });
|
|
269
|
+
|
|
270
|
+
class PageDesignerComponent extends CreatorModelComponent {
|
|
271
|
+
createModel() {
|
|
272
|
+
var _a;
|
|
273
|
+
if (this.model) {
|
|
274
|
+
(_a = this.previousModel) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
275
|
+
this.adorner = new PageAdorner(this.creator, this.model);
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
getModel() {
|
|
279
|
+
return this.adorner;
|
|
280
|
+
}
|
|
281
|
+
getPropertiesToTrack() {
|
|
282
|
+
return ["creator", "model"];
|
|
283
|
+
}
|
|
284
|
+
addNewQuestion(event) {
|
|
285
|
+
event.stopPropagation();
|
|
286
|
+
this.adorner.addNewQuestion(this.adorner, event);
|
|
287
|
+
}
|
|
288
|
+
selectQuestionType(event) {
|
|
289
|
+
event.stopPropagation();
|
|
290
|
+
this.adorner.questionTypeSelectorModel.action();
|
|
291
|
+
}
|
|
292
|
+
ngOnDestroy() {
|
|
293
|
+
super.ngOnDestroy();
|
|
294
|
+
this.adorner.dispose();
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
PageDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PageDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
298
|
+
PageDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: PageDesignerComponent, selector: "svc-page", inputs: { model: "model", survey: "survey", creator: "creator", isGhost: "isGhost" }, usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"model && adorner && (isGhost === undefined || isGhost === adorner.isGhost)\" class=\"svc-page__content\" [class]=\"adorner.css\" [key2click]\n (click)=\"adorner.select(adorner, $event)\" (mouseover)=\"adorner.hover($event, $event.currentTarget)\"\n (mouseleave)=\"adorner.hover($event, $event.target)\" [id]=\"adorner.page.id\" data-bind=\"clickBubble: false\">\n <div class=\"svc-page__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\"></sv-action-bar>\n </div>\n <page [model]=\"model\" [survey]=\"survey\"></page>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-page__add-new-question svc-btn\" [key2click]\n (click)=\"addNewQuestion($event)\" (mouseover)=\"adorner.hoverStopper($event, $event.currentTarget)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [key2click] (click)=\"selectQuestionType($event)\"\n [attr.title]=\"adorner.questionTypeSelectorModel.title\" [attr.aria-label]=\"adorner.questionTypeSelectorModel.title\"\n class=\"svc-page__question-type-selector\">\n <svg class=\"svc-page__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n</div>", components: [{ type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i1.PageComponent, selector: "page", inputs: ["model", "survey"] }, { type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
299
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PageDesignerComponent, decorators: [{
|
|
300
|
+
type: Component,
|
|
301
|
+
args: [{ selector: "svc-page", styles: [], template: "<div *ngIf=\"model && adorner && (isGhost === undefined || isGhost === adorner.isGhost)\" class=\"svc-page__content\" [class]=\"adorner.css\" [key2click]\n (click)=\"adorner.select(adorner, $event)\" (mouseover)=\"adorner.hover($event, $event.currentTarget)\"\n (mouseleave)=\"adorner.hover($event, $event.target)\" [id]=\"adorner.page.id\" data-bind=\"clickBubble: false\">\n <div class=\"svc-page__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\"></sv-action-bar>\n </div>\n <page [model]=\"model\" [survey]=\"survey\"></page>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-page__add-new-question svc-btn\" [key2click]\n (click)=\"addNewQuestion($event)\" (mouseover)=\"adorner.hoverStopper($event, $event.currentTarget)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [key2click] (click)=\"selectQuestionType($event)\"\n [attr.title]=\"adorner.questionTypeSelectorModel.title\" [attr.aria-label]=\"adorner.questionTypeSelectorModel.title\"\n class=\"svc-page__question-type-selector\">\n <svg class=\"svc-page__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n</div>" }]
|
|
302
|
+
}], propDecorators: { model: [{
|
|
303
|
+
type: Input
|
|
304
|
+
}], survey: [{
|
|
305
|
+
type: Input
|
|
306
|
+
}], creator: [{
|
|
307
|
+
type: Input
|
|
308
|
+
}], isGhost: [{
|
|
309
|
+
type: Input
|
|
310
|
+
}] } });
|
|
311
|
+
AngularComponentFactory.Instance.registerComponent("svc-page", PageDesignerComponent);
|
|
312
|
+
|
|
313
|
+
class DesignerPagesComponent extends BaseAngular {
|
|
314
|
+
getModel() {
|
|
315
|
+
return this.model.pagesController;
|
|
316
|
+
}
|
|
317
|
+
get creator() {
|
|
318
|
+
return this.model.creator;
|
|
319
|
+
}
|
|
320
|
+
get survey() {
|
|
321
|
+
return this.creator.survey;
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
DesignerPagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DesignerPagesComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
325
|
+
DesignerPagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: DesignerPagesComponent, selector: "svc-designer-pages", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <svc-page class=\"svc-page\" [attr.data-sv-drop-target-survey-element]=\"'newGhostPage'\" [attr.data-sv-drop-target-page]=\"model.pagesController.page2Display.name\" [model]=\"model.pagesController.page2Display\" [survey]=\"survey\" [creator]=\"creator\"></svc-page>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: PageDesignerComponent, selector: "svc-page", inputs: ["model", "survey", "creator", "isGhost"] }] });
|
|
326
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DesignerPagesComponent, decorators: [{
|
|
327
|
+
type: Component,
|
|
328
|
+
args: [{ selector: "svc-designer-pages", styles: [":host { display: none; }"], template: "<ng-template #template>\n <svc-page class=\"svc-page\" [attr.data-sv-drop-target-survey-element]=\"'newGhostPage'\" [attr.data-sv-drop-target-page]=\"model.pagesController.page2Display.name\" [model]=\"model.pagesController.page2Display\" [survey]=\"survey\" [creator]=\"creator\"></svc-page>\n</ng-template>" }]
|
|
329
|
+
}], propDecorators: { model: [{
|
|
330
|
+
type: Input
|
|
331
|
+
}] } });
|
|
332
|
+
|
|
333
|
+
class PageNavigatorItemComponent extends BaseAngular {
|
|
334
|
+
getModel() {
|
|
335
|
+
return this.model;
|
|
336
|
+
}
|
|
337
|
+
click(event) {
|
|
338
|
+
event.stopPropagation();
|
|
339
|
+
this.model.action();
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
PageNavigatorItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PageNavigatorItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
343
|
+
PageNavigatorItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: PageNavigatorItemComponent, selector: "svc-page-navigator-item", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-page-navigator-item\">\n <div class=\"svc-page-navigator-item-content\"\n (click)=\"click($event)\" [key2click] [class.svc-page-navigator-item--selected]=\"model.active\" [class.svc-page-navigator-item--disabled]=\"model.disabled\">\n <div class=\"svc-page-navigator-item__dot\" [attr.title]=\"model.title\"></div>\n \n <div class=\"svc-page-navigator-item__banner svc-item__banner\">\n <span class=\"svc-text svc-text--small svc-text--bold\">{{model.title}}</span>\n <span class=\"svc-page-navigator-item__dot\"></span>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
344
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PageNavigatorItemComponent, decorators: [{
|
|
345
|
+
type: Component,
|
|
346
|
+
args: [{ selector: "svc-page-navigator-item", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-page-navigator-item\">\n <div class=\"svc-page-navigator-item-content\"\n (click)=\"click($event)\" [key2click] [class.svc-page-navigator-item--selected]=\"model.active\" [class.svc-page-navigator-item--disabled]=\"model.disabled\">\n <div class=\"svc-page-navigator-item__dot\" [attr.title]=\"model.title\"></div>\n \n <div class=\"svc-page-navigator-item__banner svc-item__banner\">\n <span class=\"svc-text svc-text--small svc-text--bold\">{{model.title}}</span>\n <span class=\"svc-page-navigator-item__dot\"></span>\n </div>\n </div>\n </div>\n</ng-template>" }]
|
|
347
|
+
}], propDecorators: { model: [{
|
|
348
|
+
type: Input
|
|
349
|
+
}] } });
|
|
350
|
+
|
|
351
|
+
class PageNavigatorComponent extends CreatorModelComponent {
|
|
352
|
+
createModel() {
|
|
353
|
+
this.model = new PageNavigatorViewModel(this.pagesController, this.pageEditMode);
|
|
354
|
+
}
|
|
355
|
+
getModel() {
|
|
356
|
+
return this.model;
|
|
357
|
+
}
|
|
358
|
+
getPropertiesToTrack() {
|
|
359
|
+
return ["pagesController", "pageEditMode"];
|
|
360
|
+
}
|
|
361
|
+
ngAfterViewInit() {
|
|
362
|
+
var _a, _b;
|
|
363
|
+
if (this.pageEditMode !== "bypage") {
|
|
364
|
+
const el = this.container.nativeElement;
|
|
365
|
+
if (!!el && !!((_b = (_a = el.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement)) {
|
|
366
|
+
const self = this;
|
|
367
|
+
el.parentElement.parentElement.parentElement.onscroll = function (ev) {
|
|
368
|
+
return self.model.onContainerScroll(ev.currentTarget);
|
|
369
|
+
};
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
ngOnDestroy() {
|
|
374
|
+
var _a, _b;
|
|
375
|
+
const el = this.container.nativeElement;
|
|
376
|
+
if (!!el && !!((_b = (_a = el.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement)) {
|
|
377
|
+
el.parentElement.parentElement.parentElement.onscroll = undefined;
|
|
378
|
+
}
|
|
379
|
+
this.model.dispose();
|
|
380
|
+
super.ngOnDestroy();
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
PageNavigatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PageNavigatorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
384
|
+
PageNavigatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: PageNavigatorComponent, selector: "svc-page-navigator", inputs: { pagesController: "pagesController", pageEditMode: "pageEditMode" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-page-navigator\" #container>\n <ng-container *ngIf=\"model.visible\">\n <div class=\"svc-page-navigator__selector\"\n (click)=\"model.togglePageSelector($event)\" [key2click] [attr.title]=\"model.pageSelectorCaption\" [class.svc-page-navigator__selector--opened]=\"model.isPopupOpened\">\n <svg class=\"svc-page-navigator__navigator-icon\" [iconName]=\"model.icon\" [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"model.popupModel\"></sv-ng-popup>\n </div>\n <svc-page-navigator-item *ngFor=\"let item of model.items\" [model]=\"item\"></svc-page-navigator-item>\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }, { type: PageNavigatorItemComponent, selector: "svc-page-navigator-item", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
385
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PageNavigatorComponent, decorators: [{
|
|
386
|
+
type: Component,
|
|
387
|
+
args: [{ selector: "svc-page-navigator", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-page-navigator\" #container>\n <ng-container *ngIf=\"model.visible\">\n <div class=\"svc-page-navigator__selector\"\n (click)=\"model.togglePageSelector($event)\" [key2click] [attr.title]=\"model.pageSelectorCaption\" [class.svc-page-navigator__selector--opened]=\"model.isPopupOpened\">\n <svg class=\"svc-page-navigator__navigator-icon\" [iconName]=\"model.icon\" [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"model.popupModel\"></sv-ng-popup>\n </div>\n <svc-page-navigator-item *ngFor=\"let item of model.items\" [model]=\"item\"></svc-page-navigator-item>\n </ng-container>\n </div>\n</ng-template>" }]
|
|
388
|
+
}], propDecorators: { pagesController: [{
|
|
389
|
+
type: Input
|
|
390
|
+
}], pageEditMode: [{
|
|
391
|
+
type: Input
|
|
392
|
+
}], container: [{
|
|
393
|
+
type: ViewChild,
|
|
394
|
+
args: ["container"]
|
|
395
|
+
}] } });
|
|
396
|
+
|
|
397
|
+
class DesignerSurveyComponent extends BaseAngular {
|
|
398
|
+
getModel() {
|
|
399
|
+
return this.model.survey;
|
|
400
|
+
}
|
|
401
|
+
get creator() {
|
|
402
|
+
return this.model.creator;
|
|
403
|
+
}
|
|
404
|
+
get survey() {
|
|
405
|
+
return this.creator.survey;
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
DesignerSurveyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DesignerSurveyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
409
|
+
DesignerSurveyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: DesignerSurveyComponent, selector: "svc-designer-survey", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"model.getDesignerCss()\" [style.width]=\"survey.renderedWidth\" [style.maxWidth]=\"survey.renderedWidth\">\n <div *ngIf=\"creator.allowEditSurveyTitle\" class=\"svc-designer-header\">\n <div *ngIf=\"survey.renderedHasHeader\" [class]=\"survey.css.header\" [survey]=\"survey\" sv-ng-survey-header></div>\n </div>\n\n <!-- ko if: survey.isShowProgressBarOnTop -->\n <!-- ko component: { name: 'sv-progress-' + survey.progressBarType, params: { model: survey } } -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"creator.pageEditMode !== 'bypage'\">\n <ng-container *ngFor=\"let page of survey.pages\">\n <svc-page class=\"svc-page\" *ngIf=\"!model.showNewPage || page !== model.newPage\"\n [attr.data-sv-drop-target-survey-element]=\"page.name\" [attr.data-sv-drop-target-page]=\"page.name\"\n [model]=\"page\" [survey]=\"survey\" [creator]=\"creator\"></svc-page>\n </ng-container>\n <svc-page *ngIf=\"model.showNewPage && model.newPage\" class=\"svc-page\"\n [attr.data-sv-drop-target-survey-element]=\"'newGhostPage'\" [model]=\"model.newPage\" [survey]=\"survey\"\n [creator]=\"creator\" [isGhost]=\"true\"></svc-page>\n </ng-container>\n <ng-container *ngIf=\"model.pagesController.page2Display && creator.pageEditMode === 'bypage'\">\n <svc-designer-pages [model]=\"model\"></svc-designer-pages>\n </ng-container>\n \n <!-- ko if: survey.isShowProgressBarOnBottom -->\n <!-- ko component: { name: 'sv-progress-' + survey.progressBarType, params: { model: survey } } -->\n <!-- /ko -->\n <!-- /ko -->\n </div>\n\n <div *ngIf=\"creator.showPageNavigator\" class=\"svc-tab-designer__page-navigator\">\n <svc-page-navigator [pagesController]=\"model.pagesController\" [pageEditMode]=\"creator.pageEditMode\">\n </svc-page-navigator>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SurveyHeaderComponent, selector: "'[sv-ng-survey-header]'", inputs: ["survey"] }, { type: PageDesignerComponent, selector: "svc-page", inputs: ["model", "survey", "creator", "isGhost"] }, { type: DesignerPagesComponent, selector: "svc-designer-pages", inputs: ["model"] }, { type: PageNavigatorComponent, selector: "svc-page-navigator", inputs: ["pagesController", "pageEditMode"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
410
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DesignerSurveyComponent, decorators: [{
|
|
411
|
+
type: Component,
|
|
412
|
+
args: [{ selector: "svc-designer-survey", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div [class]=\"model.getDesignerCss()\" [style.width]=\"survey.renderedWidth\" [style.maxWidth]=\"survey.renderedWidth\">\n <div *ngIf=\"creator.allowEditSurveyTitle\" class=\"svc-designer-header\">\n <div *ngIf=\"survey.renderedHasHeader\" [class]=\"survey.css.header\" [survey]=\"survey\" sv-ng-survey-header></div>\n </div>\n\n <!-- ko if: survey.isShowProgressBarOnTop -->\n <!-- ko component: { name: 'sv-progress-' + survey.progressBarType, params: { model: survey } } -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"creator.pageEditMode !== 'bypage'\">\n <ng-container *ngFor=\"let page of survey.pages\">\n <svc-page class=\"svc-page\" *ngIf=\"!model.showNewPage || page !== model.newPage\"\n [attr.data-sv-drop-target-survey-element]=\"page.name\" [attr.data-sv-drop-target-page]=\"page.name\"\n [model]=\"page\" [survey]=\"survey\" [creator]=\"creator\"></svc-page>\n </ng-container>\n <svc-page *ngIf=\"model.showNewPage && model.newPage\" class=\"svc-page\"\n [attr.data-sv-drop-target-survey-element]=\"'newGhostPage'\" [model]=\"model.newPage\" [survey]=\"survey\"\n [creator]=\"creator\" [isGhost]=\"true\"></svc-page>\n </ng-container>\n <ng-container *ngIf=\"model.pagesController.page2Display && creator.pageEditMode === 'bypage'\">\n <svc-designer-pages [model]=\"model\"></svc-designer-pages>\n </ng-container>\n \n <!-- ko if: survey.isShowProgressBarOnBottom -->\n <!-- ko component: { name: 'sv-progress-' + survey.progressBarType, params: { model: survey } } -->\n <!-- /ko -->\n <!-- /ko -->\n </div>\n\n <div *ngIf=\"creator.showPageNavigator\" class=\"svc-tab-designer__page-navigator\">\n <svc-page-navigator [pagesController]=\"model.pagesController\" [pageEditMode]=\"creator.pageEditMode\">\n </svc-page-navigator>\n </div>\n</ng-template>" }]
|
|
413
|
+
}], propDecorators: { model: [{
|
|
414
|
+
type: Input
|
|
415
|
+
}] } });
|
|
416
|
+
|
|
417
|
+
class DesignerTabComponent extends BaseAngular {
|
|
418
|
+
get survey() {
|
|
419
|
+
return this.creator.survey;
|
|
420
|
+
}
|
|
421
|
+
get creator() {
|
|
422
|
+
return this.model.creator;
|
|
423
|
+
}
|
|
424
|
+
getModel() {
|
|
425
|
+
return this.model;
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
DesignerTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DesignerTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
429
|
+
DesignerTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: DesignerTabComponent, selector: "svc-tab-designer", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-flex-column\">\n <svc-adaptive-toolbox *ngIf=\"model.isToolboxVisible\" [creator]=\"creator\"></svc-adaptive-toolbox>\n </div>\n <div class=\"svc-tab-designer\" [class]=\"model.getRootCss()\" (click)=\"model.clickDesigner()\">\n <div class=\"svc-tab-designer_content\">\n <ng-container *ngIf=\"model.showPlaceholder\">\n <div *ngIf=\"creator.showHeaderInEmptySurvey && creator.allowEditSurveyTitle\" class=\"svc-designer-header\">\n <div *ngIf=\"survey.renderedHasHeader\" [class]=\"survey.css.header\" [survey]=\"survey\" sv-ng-survey-header></div>\n </div>\n <div class=\"svc-designer__placeholder-container\" [attr.data-sv-drop-target-survey-element]=\"'newGhostPage'\">\n <span class=\"svc-designer-placeholder-text svc-text svc-text--normal\">\n {{ model.placeholderText }}\n </span>\n <svc-page class=\"svc-designer-placeholder-page\" [model]=\"model.newPage\" [survey]=\"survey\" [creator]=\"creator\"></svc-page>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!model.showPlaceholder\">\n <svc-designer-survey [model]=\"model\"></svc-designer-survey>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: AdaptiveToolboxComponent, selector: "svc-adaptive-toolbox", inputs: ["creator"] }, { type: i1.SurveyHeaderComponent, selector: "'[sv-ng-survey-header]'", inputs: ["survey"] }, { type: PageDesignerComponent, selector: "svc-page", inputs: ["model", "survey", "creator", "isGhost"] }, { type: DesignerSurveyComponent, selector: "svc-designer-survey", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
430
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DesignerTabComponent, decorators: [{
|
|
431
|
+
type: Component,
|
|
432
|
+
args: [{ selector: "svc-tab-designer", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-flex-column\">\n <svc-adaptive-toolbox *ngIf=\"model.isToolboxVisible\" [creator]=\"creator\"></svc-adaptive-toolbox>\n </div>\n <div class=\"svc-tab-designer\" [class]=\"model.getRootCss()\" (click)=\"model.clickDesigner()\">\n <div class=\"svc-tab-designer_content\">\n <ng-container *ngIf=\"model.showPlaceholder\">\n <div *ngIf=\"creator.showHeaderInEmptySurvey && creator.allowEditSurveyTitle\" class=\"svc-designer-header\">\n <div *ngIf=\"survey.renderedHasHeader\" [class]=\"survey.css.header\" [survey]=\"survey\" sv-ng-survey-header></div>\n </div>\n <div class=\"svc-designer__placeholder-container\" [attr.data-sv-drop-target-survey-element]=\"'newGhostPage'\">\n <span class=\"svc-designer-placeholder-text svc-text svc-text--normal\">\n {{ model.placeholderText }}\n </span>\n <svc-page class=\"svc-designer-placeholder-page\" [model]=\"model.newPage\" [survey]=\"survey\" [creator]=\"creator\"></svc-page>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!model.showPlaceholder\">\n <svc-designer-survey [model]=\"model\"></svc-designer-survey>\n </ng-container>\n </div>\n </div>\n</ng-template>" }]
|
|
433
|
+
}], propDecorators: { model: [{
|
|
434
|
+
type: Input
|
|
435
|
+
}] } });
|
|
436
|
+
AngularComponentFactory.Instance.registerComponent("svc-tab-designer", DesignerTabComponent);
|
|
437
|
+
|
|
438
|
+
class TabbedMenuItemComponent extends BaseAngular {
|
|
439
|
+
getModel() {
|
|
440
|
+
return this.model;
|
|
441
|
+
}
|
|
442
|
+
}
|
|
443
|
+
TabbedMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TabbedMenuItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
444
|
+
TabbedMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: TabbedMenuItemComponent, selector: "svc-tabbed-menu-item", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div\n class=\"svc-tabbed-menu-item\"\n [class.svc-tabbed-menu-item--selected]=\"model.active\"\n [class.svc-tabbed-menu-item--disabled]=\"model.disabled\"\n (click)=\"model.action()\" [key2click]\n >\n <span\n class=\"svc-text svc-text--normal svc-tabbed-menu-item__text\"\n [class.svc-text--bold]=\"model.active\"\n >\n {{model.title}}\n </span>\n </div>\n</ng-template>\n", styles: [":host{display:none}\n"], directives: [{ type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
445
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TabbedMenuItemComponent, decorators: [{
|
|
446
|
+
type: Component,
|
|
447
|
+
args: [{ selector: "svc-tabbed-menu-item", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div\n class=\"svc-tabbed-menu-item\"\n [class.svc-tabbed-menu-item--selected]=\"model.active\"\n [class.svc-tabbed-menu-item--disabled]=\"model.disabled\"\n (click)=\"model.action()\" [key2click]\n >\n <span\n class=\"svc-text svc-text--normal svc-tabbed-menu-item__text\"\n [class.svc-text--bold]=\"model.active\"\n >\n {{model.title}}\n </span>\n </div>\n</ng-template>\n" }]
|
|
448
|
+
}], propDecorators: { model: [{
|
|
449
|
+
type: Input
|
|
450
|
+
}] } });
|
|
451
|
+
AngularComponentFactory.Instance.registerComponent("svc-tabbed-menu-item", TabbedMenuItemComponent);
|
|
452
|
+
|
|
453
|
+
class ObjectSelectorComponent extends BaseAngular {
|
|
454
|
+
getModel() {
|
|
455
|
+
return this.model;
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
ObjectSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ObjectSelectorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
459
|
+
ObjectSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ObjectSelectorComponent, selector: "svc-object-selector", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-object-selector\" *ngIf=\"model.isVisible\">\n <sv-ng-list [model]=\"model.list\"></sv-ng-list>\n </div>\n</ng-template>\n", styles: [":host{display:none}\n"], components: [{ type: i1.ListComponent, selector: "sv-ng-list, '[sv-ng-list]'", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
460
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ObjectSelectorComponent, decorators: [{
|
|
461
|
+
type: Component,
|
|
462
|
+
args: [{ selector: "svc-object-selector", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-object-selector\" *ngIf=\"model.isVisible\">\n <sv-ng-list [model]=\"model.list\"></sv-ng-list>\n </div>\n</ng-template>\n" }]
|
|
463
|
+
}], propDecorators: { model: [{
|
|
464
|
+
type: Input
|
|
465
|
+
}] } });
|
|
466
|
+
AngularComponentFactory.Instance.registerComponent("svc-object-selector", ObjectSelectorComponent);
|
|
467
|
+
|
|
468
|
+
class PropertyGridComponent extends BaseAngular {
|
|
469
|
+
getModel() {
|
|
470
|
+
return this.model;
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
PropertyGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PropertyGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
474
|
+
PropertyGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: PropertyGridComponent, selector: "svc-property-grid", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <survey-content [model]=\"model.survey\"></survey-content>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SurveyContentComponent, selector: "survey-content", inputs: ["model"] }] });
|
|
475
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PropertyGridComponent, decorators: [{
|
|
476
|
+
type: Component,
|
|
477
|
+
args: [{ selector: "svc-property-grid", styles: [":host { display: none; }"], template: "<ng-template #template>\n <survey-content [model]=\"model.survey\"></survey-content>\n</ng-template>" }]
|
|
478
|
+
}], propDecorators: { model: [{
|
|
479
|
+
type: Input
|
|
480
|
+
}] } });
|
|
481
|
+
AngularComponentFactory.Instance.registerComponent("buttongroup-question", ButtonGroupQuestionComponent);
|
|
482
|
+
AngularComponentFactory.Instance.registerComponent("svc-property-grid", PropertyGridComponent);
|
|
483
|
+
|
|
484
|
+
class TextareaJsonEditorComponent extends BaseAngular {
|
|
485
|
+
getModel() {
|
|
486
|
+
return this.model;
|
|
487
|
+
}
|
|
488
|
+
ngOnInit() {
|
|
489
|
+
this.model.canShowErrors = false;
|
|
490
|
+
super.ngOnInit();
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
TextareaJsonEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TextareaJsonEditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
494
|
+
TextareaJsonEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: TextareaJsonEditorComponent, selector: "svc-tab-json-editor-textarea", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content\">\n <div class=\"svc-json-editor-tab__content\">\n <textarea class=\"svc-json-editor-tab__content-area\"\n [attr.aria-label]=\"model.ariaLabel\"\n [disabled]=\"model.readOnly\"\n [(ngModel)]=\"model.text\"\n (keydown)=\"model.checkKey(model, $event)\">\n </textarea>\n <button type=\"button\" *ngIf=\"model.userFriendlyErrors.length !== 0\" class=\"svc-json-editor-tab__errros_button\"\n (click)=\"model.toggleErrors()\">{{model.errorButtonText}}</button>\n <ng-container *ngIf=\"model.canShowErrors\">\n <div class=\"svc-json-editor-tab__content-errors\" *ngFor=\"let error of model.userFriendlyErrors\">\n <span><b>Error:</b></span>\n <span>{{error}}</span>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
495
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TextareaJsonEditorComponent, decorators: [{
|
|
496
|
+
type: Component,
|
|
497
|
+
args: [{ selector: "svc-tab-json-editor-textarea", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-creator-tab__content\">\n <div class=\"svc-json-editor-tab__content\">\n <textarea class=\"svc-json-editor-tab__content-area\"\n [attr.aria-label]=\"model.ariaLabel\"\n [disabled]=\"model.readOnly\"\n [(ngModel)]=\"model.text\"\n (keydown)=\"model.checkKey(model, $event)\">\n </textarea>\n <button type=\"button\" *ngIf=\"model.userFriendlyErrors.length !== 0\" class=\"svc-json-editor-tab__errros_button\"\n (click)=\"model.toggleErrors()\">{{model.errorButtonText}}</button>\n <ng-container *ngIf=\"model.canShowErrors\">\n <div class=\"svc-json-editor-tab__content-errors\" *ngFor=\"let error of model.userFriendlyErrors\">\n <span><b>Error:</b></span>\n <span>{{error}}</span>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>" }]
|
|
498
|
+
}], propDecorators: { model: [{
|
|
499
|
+
type: Input
|
|
500
|
+
}] } });
|
|
501
|
+
AngularComponentFactory.Instance.registerComponent("svc-tab-json-editor-textarea", TextareaJsonEditorComponent);
|
|
502
|
+
|
|
503
|
+
class AceJsonEditorComponent extends BaseAngular {
|
|
504
|
+
getModel() {
|
|
505
|
+
return this.model;
|
|
506
|
+
}
|
|
507
|
+
ngAfterViewInit() {
|
|
508
|
+
//todo fix ts
|
|
509
|
+
this.model.init(window.ace.edit(this.inputEl.nativeElement));
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
AceJsonEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: AceJsonEditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
513
|
+
AceJsonEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: AceJsonEditorComponent, selector: "svc-tab-json-editor-ace", inputs: { model: "model" }, viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inputEl"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content\">\n <div class=\"svc-json-editor-tab__content\">\n <div class=\"svc-json-editor-tab__ace-editor\" #inputEl></div>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"] });
|
|
514
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: AceJsonEditorComponent, decorators: [{
|
|
515
|
+
type: Component,
|
|
516
|
+
args: [{ selector: "svc-tab-json-editor-ace", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-creator-tab__content\">\n <div class=\"svc-json-editor-tab__content\">\n <div class=\"svc-json-editor-tab__ace-editor\" #inputEl></div>\n </div>\n </div>\n</ng-template>" }]
|
|
517
|
+
}], propDecorators: { model: [{
|
|
518
|
+
type: Input
|
|
519
|
+
}], inputEl: [{
|
|
520
|
+
type: ViewChild,
|
|
521
|
+
args: ["inputEl"]
|
|
522
|
+
}] } });
|
|
523
|
+
AngularComponentFactory.Instance.registerComponent("svc-tab-json-editor-ace", AceJsonEditorComponent);
|
|
524
|
+
|
|
525
|
+
class LogicAddButtonComponent extends BaseAngular {
|
|
526
|
+
getModel() {
|
|
527
|
+
return this.model;
|
|
528
|
+
}
|
|
529
|
+
onClick(event) {
|
|
530
|
+
event.stopPropagation();
|
|
531
|
+
this.model.action();
|
|
532
|
+
}
|
|
533
|
+
}
|
|
534
|
+
LogicAddButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LogicAddButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
535
|
+
LogicAddButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: LogicAddButtonComponent, selector: "svc-tab-logic-add-btn", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div role=\"button\" class=\"svc-logic-tab__content-action svc-btn\"\n (click)=\"onClick($event)\" [key2click] [class.svc-logic-tab__content-action--disabled]=\"model.enabled !== undefined && !model.enabled\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{model.title}}\n </span>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
536
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LogicAddButtonComponent, decorators: [{
|
|
537
|
+
type: Component,
|
|
538
|
+
args: [{ selector: "svc-tab-logic-add-btn", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div role=\"button\" class=\"svc-logic-tab__content-action svc-btn\"\n (click)=\"onClick($event)\" [key2click] [class.svc-logic-tab__content-action--disabled]=\"model.enabled !== undefined && !model.enabled\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{model.title}}\n </span>\n </div>\n</ng-template>" }]
|
|
539
|
+
}], propDecorators: { model: [{
|
|
540
|
+
type: Input
|
|
541
|
+
}] } });
|
|
542
|
+
|
|
543
|
+
class LogicTabComponent extends BaseAngular {
|
|
544
|
+
getModel() {
|
|
545
|
+
return this.model;
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
LogicTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LogicTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
549
|
+
LogicTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: LogicTabComponent, selector: "svc-tab-logic", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content\">\n <div class=\"svc-plugin-tab__content svc-logic-tab__content\" [class.svc-logic-tab__empty]=\"!model.hasItems\">\n <survey-content [model]=\"model.itemsSurvey\"></survey-content>\n <div *ngIf=\"!model.hasItems\" class=\"svc-logic-tab__content-empty\">\n <span class=\"svc-text\">{{model.emptyTabPlaceHolder}}</span>\n </div>\n <ng-container *ngIf=\"!model.readOnly\">\n <svc-tab-logic-add-btn [model]=\"model.addNewButton\"></svc-tab-logic-add-btn>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SurveyContentComponent, selector: "survey-content", inputs: ["model"] }, { type: LogicAddButtonComponent, selector: "svc-tab-logic-add-btn", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
550
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LogicTabComponent, decorators: [{
|
|
551
|
+
type: Component,
|
|
552
|
+
args: [{ selector: "svc-tab-logic", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-creator-tab__content\">\n <div class=\"svc-plugin-tab__content svc-logic-tab__content\" [class.svc-logic-tab__empty]=\"!model.hasItems\">\n <survey-content [model]=\"model.itemsSurvey\"></survey-content>\n <div *ngIf=\"!model.hasItems\" class=\"svc-logic-tab__content-empty\">\n <span class=\"svc-text\">{{model.emptyTabPlaceHolder}}</span>\n </div>\n <ng-container *ngIf=\"!model.readOnly\">\n <svc-tab-logic-add-btn [model]=\"model.addNewButton\"></svc-tab-logic-add-btn>\n </ng-container>\n </div>\n </div>\n</ng-template>" }]
|
|
553
|
+
}], propDecorators: { model: [{
|
|
554
|
+
type: Input
|
|
555
|
+
}] } });
|
|
556
|
+
AngularComponentFactory.Instance.registerComponent("svc-tab-logic", LogicTabComponent);
|
|
557
|
+
|
|
558
|
+
class ActionButtonComponent extends EmbeddedViewContentComponent {
|
|
559
|
+
constructor() {
|
|
560
|
+
super(...arguments);
|
|
561
|
+
this.classes = "";
|
|
562
|
+
this.selected = false;
|
|
563
|
+
this.disabled = false;
|
|
564
|
+
this.text = "";
|
|
565
|
+
this.title = "";
|
|
566
|
+
this.allowBubble = false;
|
|
567
|
+
}
|
|
568
|
+
onClick(event) {
|
|
569
|
+
this.click();
|
|
570
|
+
if (!this.allowBubble) {
|
|
571
|
+
event.stopPropagation();
|
|
572
|
+
}
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
ActionButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ActionButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
576
|
+
ActionButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ActionButtonComponent, selector: "svc-action-button", inputs: { classes: "classes", click: "click", selected: "selected", disabled: "disabled", text: "text", title: "title", allowBubble: "allowBubble" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <span *ngIf=\"disabled\" class=\"svc-action-button svc-action-button--disabled\"\n [class]=\"classes\" [attr.title]=\"title\">{{text}}</span>\n <span *ngIf=\"!disabled\" role=\"button\" class=\"svc-action-button\"\n (click)=\"onClick($event)\" [key2click] [attr.title]=\"title\" [class.svc-action-button--selected]=\"selected\" [class]=\"classes\">{{text}}</span>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
577
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ActionButtonComponent, decorators: [{
|
|
578
|
+
type: Component,
|
|
579
|
+
args: [{ selector: "svc-action-button", styles: [":host { display: none; }"], template: "<ng-template #template>\n <span *ngIf=\"disabled\" class=\"svc-action-button svc-action-button--disabled\"\n [class]=\"classes\" [attr.title]=\"title\">{{text}}</span>\n <span *ngIf=\"!disabled\" role=\"button\" class=\"svc-action-button\"\n (click)=\"onClick($event)\" [key2click] [attr.title]=\"title\" [class.svc-action-button--selected]=\"selected\" [class]=\"classes\">{{text}}</span>\n</ng-template>" }]
|
|
580
|
+
}], propDecorators: { classes: [{
|
|
581
|
+
type: Input
|
|
582
|
+
}], click: [{
|
|
583
|
+
type: Input
|
|
584
|
+
}], selected: [{
|
|
585
|
+
type: Input
|
|
586
|
+
}], disabled: [{
|
|
587
|
+
type: Input
|
|
588
|
+
}], text: [{
|
|
589
|
+
type: Input
|
|
590
|
+
}], title: [{
|
|
591
|
+
type: Input
|
|
592
|
+
}], allowBubble: [{
|
|
593
|
+
type: Input
|
|
594
|
+
}] } });
|
|
595
|
+
AngularComponentFactory.Instance.registerComponent("svc-action-button", ActionButtonComponent);
|
|
596
|
+
|
|
597
|
+
class LinkValueQuestionComponent extends QuestionAngular {
|
|
598
|
+
get clearCaption() {
|
|
599
|
+
return editorLocalization.getString("pe.clear");
|
|
600
|
+
}
|
|
601
|
+
}
|
|
602
|
+
LinkValueQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LinkValueQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
603
|
+
LinkValueQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: LinkValueQuestionComponent, selector: "svc-link-value", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <svc-action-button [text]=\"model.linkValueText\" [click]=\"model.doLinkClick.bind(model)\" [selected]=\"model.isSelected\" [disabled]=\"model.isReadOnly\" [classes]=\"model.linkSetButtonCssClasses\" [title]=\"model.tooltip\">\n </svc-action-button>\n <ng-container *ngIf=\"!model.isReadOnly && model.showClear\">\n <svc-action-button\n [text]=\"clearCaption\" [click]=\"model.doClearClick.bind(model)\" [selected]=\"model.isSelected\" [disabled]=\"false\" [classes]=\"model.linkClearButtonCssClasses\">\n </svc-action-button>\n </ng-container>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: ActionButtonComponent, selector: "svc-action-button", inputs: ["classes", "click", "selected", "disabled", "text", "title", "allowBubble"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
604
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LinkValueQuestionComponent, decorators: [{
|
|
605
|
+
type: Component,
|
|
606
|
+
args: [{ selector: "svc-link-value", styles: [":host { display: none; }"], template: "<ng-template #template>\n <svc-action-button [text]=\"model.linkValueText\" [click]=\"model.doLinkClick.bind(model)\" [selected]=\"model.isSelected\" [disabled]=\"model.isReadOnly\" [classes]=\"model.linkSetButtonCssClasses\" [title]=\"model.tooltip\">\n </svc-action-button>\n <ng-container *ngIf=\"!model.isReadOnly && model.showClear\">\n <svc-action-button\n [text]=\"clearCaption\" [click]=\"model.doClearClick.bind(model)\" [selected]=\"model.isSelected\" [disabled]=\"false\" [classes]=\"model.linkClearButtonCssClasses\">\n </svc-action-button>\n </ng-container>\n</ng-template>" }]
|
|
607
|
+
}] });
|
|
608
|
+
AngularComponentFactory.Instance.registerComponent("linkvalue-question", LinkValueQuestionComponent);
|
|
609
|
+
|
|
610
|
+
class EmbeddedSurveyQuestionComponent extends QuestionAngular {
|
|
611
|
+
get survey() {
|
|
612
|
+
return this.model.embeddedSurvey;
|
|
613
|
+
}
|
|
614
|
+
onModelChanged() {
|
|
615
|
+
super.onModelChanged();
|
|
616
|
+
if (!!this.model) {
|
|
617
|
+
this.model.onEmbeddedSurveyValueChanged = () => {
|
|
618
|
+
this.detectChanges();
|
|
619
|
+
};
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
}
|
|
623
|
+
EmbeddedSurveyQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: EmbeddedSurveyQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
624
|
+
EmbeddedSurveyQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: EmbeddedSurveyQuestionComponent, selector: "svc-embeddedsurvey-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <ng-container *ngIf=\"!!model && !!survey && survey.currentPage\">\n <page [model]=\"survey.currentPage\" [survey]=\"survey\"></page>\n </ng-container>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.PageComponent, selector: "page", inputs: ["model", "survey"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
625
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: EmbeddedSurveyQuestionComponent, decorators: [{
|
|
626
|
+
type: Component,
|
|
627
|
+
args: [{ selector: "svc-embeddedsurvey-question", styles: [":host { display: none; }"], template: "<ng-template #template>\n <ng-container *ngIf=\"!!model && !!survey && survey.currentPage\">\n <page [model]=\"survey.currentPage\" [survey]=\"survey\"></page>\n </ng-container>\n</ng-template>" }]
|
|
628
|
+
}] });
|
|
629
|
+
AngularComponentFactory.Instance.registerComponent("embeddedsurvey-question", EmbeddedSurveyQuestionComponent);
|
|
630
|
+
|
|
631
|
+
class TranslationTabComponent extends BaseAngular {
|
|
632
|
+
getModel() {
|
|
633
|
+
return this.model;
|
|
634
|
+
}
|
|
635
|
+
}
|
|
636
|
+
TranslationTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TranslationTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
637
|
+
TranslationTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: TranslationTabComponent, selector: "svc-tab-translation", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content svc-translation-tab\">\n <div class=\"st-content\">\n <div *ngIf=\"model.isEmpty\" class=\"st-no-strings\">\n <span>{{model.noStringsText}}</span>\n </div>\n <div *ngIf=\"!model.isEmpty\" class=\"svc-flex-column st-strings-wrapper\">\n <div class=\"svc-flex-row st-strings-header\">\n <survey-content [model]=\"model.stringsHeaderSurvey\"></survey-content>\n </div>\n <div class=\"svc-flex-row svc-plugin-tab__content st-strings\">\n <survey-content [model]=\"model.stringsSurvey\"></survey-content>\n </div>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SurveyContentComponent, selector: "survey-content", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
638
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TranslationTabComponent, decorators: [{
|
|
639
|
+
type: Component,
|
|
640
|
+
args: [{ selector: "svc-tab-translation", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-creator-tab__content svc-translation-tab\">\n <div class=\"st-content\">\n <div *ngIf=\"model.isEmpty\" class=\"st-no-strings\">\n <span>{{model.noStringsText}}</span>\n </div>\n <div *ngIf=\"!model.isEmpty\" class=\"svc-flex-column st-strings-wrapper\">\n <div class=\"svc-flex-row st-strings-header\">\n <survey-content [model]=\"model.stringsHeaderSurvey\"></survey-content>\n </div>\n <div class=\"svc-flex-row svc-plugin-tab__content st-strings\">\n <survey-content [model]=\"model.stringsSurvey\"></survey-content>\n </div>\n </div>\n </div>\n </div>\n</ng-template>" }]
|
|
641
|
+
}], propDecorators: { model: [{
|
|
642
|
+
type: Input
|
|
643
|
+
}] } });
|
|
644
|
+
AngularComponentFactory.Instance.registerComponent("svc-tab-translation", TranslationTabComponent);
|
|
645
|
+
|
|
646
|
+
class TranslationSkeletonComponent {
|
|
647
|
+
}
|
|
648
|
+
TranslationSkeletonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TranslationSkeletonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
649
|
+
TranslationSkeletonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: TranslationSkeletonComponent, selector: "sd-translation-line-skeleton", ngImport: i0, template: "<ng-template #template>\n <div class=\"sd-translation-line-skeleton\"></div>\n</ng-template>", styles: [":host{display:none}\n"] });
|
|
650
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TranslationSkeletonComponent, decorators: [{
|
|
651
|
+
type: Component,
|
|
652
|
+
args: [{ selector: "sd-translation-line-skeleton", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"sd-translation-line-skeleton\"></div>\n</ng-template>" }]
|
|
653
|
+
}] });
|
|
654
|
+
AngularComponentFactory.Instance.registerComponent("sd-translation-line-skeleton", TranslationSkeletonComponent);
|
|
655
|
+
|
|
656
|
+
class SimulatorComponent extends BaseAngular {
|
|
657
|
+
getModel() {
|
|
658
|
+
return this.model;
|
|
659
|
+
}
|
|
660
|
+
get simulatorFrame() {
|
|
661
|
+
return this.model.simulatorFrame;
|
|
662
|
+
}
|
|
663
|
+
activateZoom() {
|
|
664
|
+
if (this.model.device !== "desktop") {
|
|
665
|
+
this.model.activateZoom();
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
deactivateZoom() {
|
|
669
|
+
if (this.model.device !== "desktop") {
|
|
670
|
+
this.model.deactivateZoom();
|
|
671
|
+
}
|
|
672
|
+
}
|
|
673
|
+
}
|
|
674
|
+
SimulatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SimulatorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
675
|
+
SimulatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: SimulatorComponent, selector: "survey-simulator", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"'svd-simulator-main ' + model.simulatorMainCssClass + (model.device === 'desktop' ? ' svd-simulator-main--desktop' : '')\" (keydown)=\"model.tryToZoom($event, $event)\" (mouseover)=\"activateZoom()\" (mouseout)=\"deactivateZoom()\">\n <div *ngIf=\"model.hasFrame\" class=\"svd-simulator-wrapper\" id=\"svd-simulator-wrapper\" [style.width]=\"simulatorFrame.frameWidth + 'px'\" [style.height]=\"simulatorFrame.frameHeight + 'px'\">\n <div class=\"svd-simulator-frame\" [style.width]=\"simulatorFrame.landscapedFrameWidth + 'px'\" [style.height]=\"simulatorFrame.landscapedFrameHeight + 'px'\" [class]=\"simulatorFrame.cssClass\"></div>\n <div class=\"svd-simulator\" [style.width]=\"simulatorFrame.deviceWidth + 'px'\" [style.height]=\"simulatorFrame.deviceHeight + 'px'\" [style.transform]=\"'scale(' + simulatorFrame.scale + ') translate(-50%, -50%)'\">\n <div class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n </div>\n <div *ngIf=\"!model.hasFrame\" class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
676
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SimulatorComponent, decorators: [{
|
|
677
|
+
type: Component,
|
|
678
|
+
args: [{ selector: "survey-simulator", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div [class]=\"'svd-simulator-main ' + model.simulatorMainCssClass + (model.device === 'desktop' ? ' svd-simulator-main--desktop' : '')\" (keydown)=\"model.tryToZoom($event, $event)\" (mouseover)=\"activateZoom()\" (mouseout)=\"deactivateZoom()\">\n <div *ngIf=\"model.hasFrame\" class=\"svd-simulator-wrapper\" id=\"svd-simulator-wrapper\" [style.width]=\"simulatorFrame.frameWidth + 'px'\" [style.height]=\"simulatorFrame.frameHeight + 'px'\">\n <div class=\"svd-simulator-frame\" [style.width]=\"simulatorFrame.landscapedFrameWidth + 'px'\" [style.height]=\"simulatorFrame.landscapedFrameHeight + 'px'\" [class]=\"simulatorFrame.cssClass\"></div>\n <div class=\"svd-simulator\" [style.width]=\"simulatorFrame.deviceWidth + 'px'\" [style.height]=\"simulatorFrame.deviceHeight + 'px'\" [style.transform]=\"'scale(' + simulatorFrame.scale + ') translate(-50%, -50%)'\">\n <div class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n </div>\n <div *ngIf=\"!model.hasFrame\" class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n</ng-template>" }]
|
|
679
|
+
}], propDecorators: { model: [{
|
|
680
|
+
type: Input
|
|
681
|
+
}] } });
|
|
682
|
+
|
|
683
|
+
class TestAgainActionComponent extends BaseAngular {
|
|
684
|
+
getModel() {
|
|
685
|
+
return this.model;
|
|
686
|
+
}
|
|
687
|
+
}
|
|
688
|
+
TestAgainActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TestAgainActionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
689
|
+
TestAgainActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: TestAgainActionComponent, selector: "survey-test-again", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div role=\"button\" class=\"svc-preview__test-again svc-btn\" (click)=\"model.action()\" [key2click]>\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{model.title}}\n </span>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
690
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TestAgainActionComponent, decorators: [{
|
|
691
|
+
type: Component,
|
|
692
|
+
args: [{ selector: "survey-test-again", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div role=\"button\" class=\"svc-preview__test-again svc-btn\" (click)=\"model.action()\" [key2click]>\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{model.title}}\n </span>\n </div>\n</ng-template>" }]
|
|
693
|
+
}], propDecorators: { model: [{
|
|
694
|
+
type: Input
|
|
695
|
+
}] } });
|
|
696
|
+
|
|
697
|
+
class SurveyResultsTableRowComponent extends BaseAngular {
|
|
698
|
+
getModel() {
|
|
699
|
+
return this.model;
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
SurveyResultsTableRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyResultsTableRowComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
703
|
+
SurveyResultsTableRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: SurveyResultsTableRowComponent, selector: "survey-results-table-row", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <tr (click)=\"model.toggle()\" [key2click]>\n <td class=\"svd-dark-border-color\"\n [style.paddingLeft]=\"model.textMargin \">\n <span *ngIf=\"model.isNode\" class=\"svd-test-results__marker\"\n [class.svd-test-results__marker--expanded]=\"!model.collapsed\"\n [style.left]=\"model.markerMargin\">\n <svg [iconName]=\"'icon-expand_16x16'\" [size]=\"16\" sv-ng-svg-icon></svg>\n </span>\n <span >{{model.title}}</span></td>\n <td [class.svd-test-results__node-value]=\"model.isNode\" [class.svd-dark-border-color]=\"!model.isNode\">\n {{model.getString(model.displayValue)}}\n </td>\n </tr>\n <ng-container *ngIf=\"model.isNode && !model.collapsed\">\n <ng-container *ngFor=\"let row of model.data\">\n <survey-results-table-row [model]=\"row\"></survey-results-table-row>\n </ng-container>\n </ng-container>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: SurveyResultsTableRowComponent, selector: "survey-results-table-row", inputs: ["model"] }], directives: [{ type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
704
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyResultsTableRowComponent, decorators: [{
|
|
705
|
+
type: Component,
|
|
706
|
+
args: [{ selector: "survey-results-table-row", styles: [":host { display: none; }"], template: "<ng-template #template>\n <tr (click)=\"model.toggle()\" [key2click]>\n <td class=\"svd-dark-border-color\"\n [style.paddingLeft]=\"model.textMargin \">\n <span *ngIf=\"model.isNode\" class=\"svd-test-results__marker\"\n [class.svd-test-results__marker--expanded]=\"!model.collapsed\"\n [style.left]=\"model.markerMargin\">\n <svg [iconName]=\"'icon-expand_16x16'\" [size]=\"16\" sv-ng-svg-icon></svg>\n </span>\n <span >{{model.title}}</span></td>\n <td [class.svd-test-results__node-value]=\"model.isNode\" [class.svd-dark-border-color]=\"!model.isNode\">\n {{model.getString(model.displayValue)}}\n </td>\n </tr>\n <ng-container *ngIf=\"model.isNode && !model.collapsed\">\n <ng-container *ngFor=\"let row of model.data\">\n <survey-results-table-row [model]=\"row\"></survey-results-table-row>\n </ng-container>\n </ng-container>\n</ng-template>" }]
|
|
707
|
+
}], propDecorators: { model: [{
|
|
708
|
+
type: Input
|
|
709
|
+
}] } });
|
|
710
|
+
|
|
711
|
+
class SurveyResultsComponent extends CreatorModelComponent {
|
|
712
|
+
createModel() {
|
|
713
|
+
if (!!this.survey) {
|
|
714
|
+
this.model = new SurveyResultsModel(this.survey);
|
|
715
|
+
}
|
|
716
|
+
}
|
|
717
|
+
getModel() {
|
|
718
|
+
return this.model;
|
|
719
|
+
}
|
|
720
|
+
getPropertiesToTrack() {
|
|
721
|
+
return ["survey"];
|
|
722
|
+
}
|
|
723
|
+
}
|
|
724
|
+
SurveyResultsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyResultsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
725
|
+
SurveyResultsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: SurveyResultsComponent, selector: "survey-results", inputs: { survey: "survey" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n<div class=\"svd-test-results\">\n <div class=\"svd-test-results__header\">\n <div class=\"svd-test-results__header-text\">{{model.surveyResultsText}}</div>\n <div class=\"svd-test-results__header-types\">\n <svc-action-button [text]=\"model.getLocString('ed.surveyResultsTable')\" [click]=\"model.selectTableClick\" [disabled]=\"false\" [selected]=\"model.isTableSelected\"></svc-action-button>\n <svc-action-button [text]=\"model.getLocString('ed.surveyResultsJson')\" [click]=\"model.selectJsonClick\" [disabled]=\"false\" [selected]=\"model.isJsonSelected\"></svc-action-button>\n </div>\n </div>\n <div class=\"svd-test-results__text svd-light-bg-color\" [visible]=\"model.resultViewType === 'text'\">\n <div>{{model.resultText}}</div>\n </div>\n <div class=\"svd-test-results__table svd-light-bg-color\" [visible]=\"model.resultViewType === 'table'\">\n <table>\n <thead>\n <tr class=\"svd-light-background-color\">\n <th class=\"svd-dark-border-color\">{{model.resultsTitle}}</th>\n <th class=\"svd-dark-border-color\">{{model.resultsDisplayValue}}</th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let row of model.resultData\">\n <survey-results-table-row [model]=\"row\"></survey-results-table-row>\n </ng-container>\n </tbody>\n </table>\n </div>\n</div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: ActionButtonComponent, selector: "svc-action-button", inputs: ["classes", "click", "selected", "disabled", "text", "title", "allowBubble"] }, { type: SurveyResultsTableRowComponent, selector: "survey-results-table-row", inputs: ["model"] }], directives: [{ type: i1.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
726
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyResultsComponent, decorators: [{
|
|
727
|
+
type: Component,
|
|
728
|
+
args: [{ selector: "survey-results", styles: [":host { display: none; }"], template: "<ng-template #template>\n<div class=\"svd-test-results\">\n <div class=\"svd-test-results__header\">\n <div class=\"svd-test-results__header-text\">{{model.surveyResultsText}}</div>\n <div class=\"svd-test-results__header-types\">\n <svc-action-button [text]=\"model.getLocString('ed.surveyResultsTable')\" [click]=\"model.selectTableClick\" [disabled]=\"false\" [selected]=\"model.isTableSelected\"></svc-action-button>\n <svc-action-button [text]=\"model.getLocString('ed.surveyResultsJson')\" [click]=\"model.selectJsonClick\" [disabled]=\"false\" [selected]=\"model.isJsonSelected\"></svc-action-button>\n </div>\n </div>\n <div class=\"svd-test-results__text svd-light-bg-color\" [visible]=\"model.resultViewType === 'text'\">\n <div>{{model.resultText}}</div>\n </div>\n <div class=\"svd-test-results__table svd-light-bg-color\" [visible]=\"model.resultViewType === 'table'\">\n <table>\n <thead>\n <tr class=\"svd-light-background-color\">\n <th class=\"svd-dark-border-color\">{{model.resultsTitle}}</th>\n <th class=\"svd-dark-border-color\">{{model.resultsDisplayValue}}</th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let row of model.resultData\">\n <survey-results-table-row [model]=\"row\"></survey-results-table-row>\n </ng-container>\n </tbody>\n </table>\n </div>\n</div>\n</ng-template>" }]
|
|
729
|
+
}], propDecorators: { survey: [{
|
|
730
|
+
type: Input
|
|
731
|
+
}] } });
|
|
732
|
+
|
|
733
|
+
class TestTabComponent extends BaseAngular {
|
|
734
|
+
getModel() {
|
|
735
|
+
return this.model;
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
TestTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TestTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
739
|
+
TestTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: TestTabComponent, selector: "svc-tab-test", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content svc-test-tab__content\" [class.svc-creator-tab__content--with-toolbar]=\"model.isPageToolbarVisible\">\n <div class=\"svc-plugin-tab__content\">\n <survey-simulator [model]=\"model.simulator\"></survey-simulator>\n <ng-container *ngIf=\"!model.isRunning\">\n <survey-test-again [model]=\"model.testAgainAction\"></survey-test-again>\n <survey-results [survey]=\"model.survey\"></survey-results>\n </ng-container>\n </div>\n <div *ngIf=\"model.isPageToolbarVisible\" class=\"svc-plugin-tab__content-actions svc-test-tab__content-actions\">\n <sv-action-bar [model]=\"model.pages\"></sv-action-bar>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: SimulatorComponent, selector: "survey-simulator", inputs: ["model"] }, { type: TestAgainActionComponent, selector: "survey-test-again", inputs: ["model"] }, { type: SurveyResultsComponent, selector: "survey-results", inputs: ["survey"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
740
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TestTabComponent, decorators: [{
|
|
741
|
+
type: Component,
|
|
742
|
+
args: [{ selector: "svc-tab-test", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-creator-tab__content svc-test-tab__content\" [class.svc-creator-tab__content--with-toolbar]=\"model.isPageToolbarVisible\">\n <div class=\"svc-plugin-tab__content\">\n <survey-simulator [model]=\"model.simulator\"></survey-simulator>\n <ng-container *ngIf=\"!model.isRunning\">\n <survey-test-again [model]=\"model.testAgainAction\"></survey-test-again>\n <survey-results [survey]=\"model.survey\"></survey-results>\n </ng-container>\n </div>\n <div *ngIf=\"model.isPageToolbarVisible\" class=\"svc-plugin-tab__content-actions svc-test-tab__content-actions\">\n <sv-action-bar [model]=\"model.pages\"></sv-action-bar>\n </div>\n </div>\n</ng-template>" }]
|
|
743
|
+
}], propDecorators: { model: [{
|
|
744
|
+
type: Input
|
|
745
|
+
}] } });
|
|
746
|
+
AngularComponentFactory.Instance.registerComponent("svc-tab-test", TestTabComponent);
|
|
747
|
+
|
|
748
|
+
class QuestionDesignerComponent extends CreatorModelComponent {
|
|
749
|
+
constructor() {
|
|
750
|
+
super(...arguments);
|
|
751
|
+
this.adornerComponent = "";
|
|
752
|
+
}
|
|
753
|
+
get creator() {
|
|
754
|
+
return this.componentData.data;
|
|
755
|
+
}
|
|
756
|
+
get model() {
|
|
757
|
+
return this.componentData.model;
|
|
758
|
+
}
|
|
759
|
+
createModel() {
|
|
760
|
+
if (this.componentData) {
|
|
761
|
+
this.adorner = new QuestionAdornerViewModel(this.creator, this.model, null);
|
|
762
|
+
}
|
|
763
|
+
}
|
|
764
|
+
getPropertiesToTrack() {
|
|
765
|
+
return ["model", "creator"];
|
|
766
|
+
}
|
|
767
|
+
getModel() {
|
|
768
|
+
return this.adorner;
|
|
769
|
+
}
|
|
770
|
+
selectQuestionType(event) {
|
|
771
|
+
event.stopPropagation();
|
|
772
|
+
this.adorner.questionTypeSelectorModel.action(this.adorner.questionTypeSelectorModel, event);
|
|
773
|
+
}
|
|
774
|
+
addNewQuestion(event) {
|
|
775
|
+
event.stopPropagation();
|
|
776
|
+
this.adorner.addNewQuestion();
|
|
777
|
+
}
|
|
778
|
+
}
|
|
779
|
+
QuestionDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
780
|
+
QuestionDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QuestionDesignerComponent, selector: "svc-question", inputs: { componentName: "componentName", componentData: "componentData" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
781
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionDesignerComponent, decorators: [{
|
|
782
|
+
type: Component,
|
|
783
|
+
args: [{ selector: "svc-question", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>" }]
|
|
784
|
+
}], propDecorators: { componentName: [{
|
|
785
|
+
type: Input
|
|
786
|
+
}], componentData: [{
|
|
787
|
+
type: Input
|
|
788
|
+
}] } });
|
|
789
|
+
AngularComponentFactory.Instance.registerComponent("svc-question", QuestionDesignerComponent);
|
|
790
|
+
|
|
791
|
+
class ItemValueDesignerComponent extends CreatorModelComponent {
|
|
792
|
+
get creator() {
|
|
793
|
+
return this.componentData.data.creator;
|
|
794
|
+
}
|
|
795
|
+
get question() {
|
|
796
|
+
return this.componentData.question;
|
|
797
|
+
}
|
|
798
|
+
get item() {
|
|
799
|
+
return this.componentData.model;
|
|
800
|
+
}
|
|
801
|
+
createModel() {
|
|
802
|
+
if (this.componentData) {
|
|
803
|
+
this.adorner = new ItemValueWrapperViewModel(this.creator, this.question, this.item);
|
|
804
|
+
}
|
|
805
|
+
}
|
|
806
|
+
getPropertiesToTrack() {
|
|
807
|
+
return ["creator", "question", "item"];
|
|
808
|
+
}
|
|
809
|
+
getModel() {
|
|
810
|
+
return this.adorner;
|
|
811
|
+
}
|
|
812
|
+
}
|
|
813
|
+
ItemValueDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ItemValueDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
814
|
+
ItemValueDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ItemValueDesignerComponent, selector: "svc-item-value", inputs: { componentName: "componentName", componentData: "componentData" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-item-value-wrapper\" (pointerdown)=\"adorner.onPointerDown($event)\"\n [attr.data-sv-drop-target-item-value]=\"adorner.isDraggable ? item.value : null\"\n [ngClass]=\"{'svc-item-value--new': adorner.isNew, 'svc-item-value--dragging': adorner.isDragging, 'svc-item-value--ghost': adorner.isDragDropGhost, 'svc-item-value--movedown': adorner.isDragDropMoveDown, 'svc-item-value--moveup': adorner.isDragDropMoveUp}\">\n <div class=\"svc-item-value__ghost\"></div>\n <div class=\"svc-item-value-controls\">\n <span *ngIf=\"adorner.isDraggable\" class=\"svc-item-value-controls__button svc-item-value-controls__drag\">\n <svg class=\"svc-item-value-controls__drag-icon\" [iconName]=\"'icon-drag-area-indicator'\" [size]=\"24\"\n [attr.title]=\"adorner.dragTooltip\" [attr.aria-label]=\"adorner.dragTooltip\" sv-ng-svg-icon></svg>\n </span>\n <svg *ngIf=\"adorner.allowAdd\" class=\"svc-item-value-controls__button svc-item-value-controls__add\" [key2click]\n (click)=\"adorner.add(adorner)\" [iconName]=\"'icon-add_16x16'\" [size]=\"16\" [attr.title]=\"undefined\"\n [attr.aria-label]=\"undefined\" sv-ng-svg-icon></svg>\n <svg *ngIf=\"adorner.allowRemove\" class=\"svc-item-value-controls__button svc-item-value-controls__remove\"\n [key2click] (click)=\"adorner.remove(adorner)\" [iconName]=\"'icon-remove_16x16'\" [size]=\"16\"\n [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\" sv-ng-svg-icon></svg>\n </div>\n\n <div class=\"svc-item-value__item\" (click)=\"adorner.select(adorner, $event)\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
815
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ItemValueDesignerComponent, decorators: [{
|
|
816
|
+
type: Component,
|
|
817
|
+
args: [{ selector: "svc-item-value", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-item-value-wrapper\" (pointerdown)=\"adorner.onPointerDown($event)\"\n [attr.data-sv-drop-target-item-value]=\"adorner.isDraggable ? item.value : null\"\n [ngClass]=\"{'svc-item-value--new': adorner.isNew, 'svc-item-value--dragging': adorner.isDragging, 'svc-item-value--ghost': adorner.isDragDropGhost, 'svc-item-value--movedown': adorner.isDragDropMoveDown, 'svc-item-value--moveup': adorner.isDragDropMoveUp}\">\n <div class=\"svc-item-value__ghost\"></div>\n <div class=\"svc-item-value-controls\">\n <span *ngIf=\"adorner.isDraggable\" class=\"svc-item-value-controls__button svc-item-value-controls__drag\">\n <svg class=\"svc-item-value-controls__drag-icon\" [iconName]=\"'icon-drag-area-indicator'\" [size]=\"24\"\n [attr.title]=\"adorner.dragTooltip\" [attr.aria-label]=\"adorner.dragTooltip\" sv-ng-svg-icon></svg>\n </span>\n <svg *ngIf=\"adorner.allowAdd\" class=\"svc-item-value-controls__button svc-item-value-controls__add\" [key2click]\n (click)=\"adorner.add(adorner)\" [iconName]=\"'icon-add_16x16'\" [size]=\"16\" [attr.title]=\"undefined\"\n [attr.aria-label]=\"undefined\" sv-ng-svg-icon></svg>\n <svg *ngIf=\"adorner.allowRemove\" class=\"svc-item-value-controls__button svc-item-value-controls__remove\"\n [key2click] (click)=\"adorner.remove(adorner)\" [iconName]=\"'icon-remove_16x16'\" [size]=\"16\"\n [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\" sv-ng-svg-icon></svg>\n </div>\n\n <div class=\"svc-item-value__item\" (click)=\"adorner.select(adorner, $event)\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n </div>\n</ng-template>" }]
|
|
818
|
+
}], propDecorators: { componentName: [{
|
|
819
|
+
type: Input
|
|
820
|
+
}], componentData: [{
|
|
821
|
+
type: Input
|
|
822
|
+
}] } });
|
|
823
|
+
AngularComponentFactory.Instance.registerComponent("svc-item-value", ItemValueDesignerComponent);
|
|
824
|
+
|
|
825
|
+
class ImageItemValueDesignerComponent extends CreatorModelComponent {
|
|
826
|
+
get creator() {
|
|
827
|
+
return this.componentData.data.creator;
|
|
828
|
+
}
|
|
829
|
+
get question() {
|
|
830
|
+
return this.componentData.question;
|
|
831
|
+
}
|
|
832
|
+
get item() {
|
|
833
|
+
return this.componentData.model;
|
|
834
|
+
}
|
|
835
|
+
createModel() {
|
|
836
|
+
if (this.componentData) {
|
|
837
|
+
this.adorner = new ImageItemValueWrapperViewModel(this.creator, this.question, this.item, null, null);
|
|
838
|
+
}
|
|
839
|
+
}
|
|
840
|
+
getPropertiesToTrack() {
|
|
841
|
+
return ["creator", "question", "item"];
|
|
842
|
+
}
|
|
843
|
+
getModel() {
|
|
844
|
+
return this.adorner;
|
|
845
|
+
}
|
|
846
|
+
get showDragDropGhostOnTop() {
|
|
847
|
+
return this.adorner.ghostPosition === "top";
|
|
848
|
+
}
|
|
849
|
+
get showDragDropGhostOnBottom() {
|
|
850
|
+
return this.adorner.ghostPosition === "bottom";
|
|
851
|
+
}
|
|
852
|
+
blockEvent(event) {
|
|
853
|
+
event.stopPropagation();
|
|
854
|
+
}
|
|
855
|
+
getNewItemStyle() {
|
|
856
|
+
const needStyle = !this.adorner.getIsNewItemSingle();
|
|
857
|
+
return { width: needStyle ? this.question.renderedImageWidth : undefined, height: needStyle ? this.question.renderedImageHeight : undefined };
|
|
858
|
+
}
|
|
859
|
+
ngAfterViewInit() {
|
|
860
|
+
this.adorner.itemsRoot = this.container.nativeElement;
|
|
861
|
+
}
|
|
862
|
+
}
|
|
863
|
+
ImageItemValueDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImageItemValueDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
864
|
+
ImageItemValueDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ImageItemValueDesignerComponent, selector: "svc-image-item-value", inputs: { componentName: "componentName", componentData: "componentData" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div (pointerdown)=\"adorner.onPointerDown($event)\" [class]=\"adorner.getRootCss()\" [attr.data-sv-drop-target-item-value]=\"adorner.isDraggable ? this.item.value : null\" #container>\n <div class=\"svc-image-item-value-wrapper__ghost\" [style]=\"getNewItemStyle()\"></div>\n\n <div class=\"svc-image-item-value-wrapper__content\">\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" accept=\"image/*\" class=\"svc-choose-file-input\" />\n\n <ng-container *ngIf=\"!adorner.isNew\">\n <div *ngIf=\"!adorner.isNew\" class=\"svc-image-item-value__item\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n <span class=\"svc-image-item-value-controls__button svc-image-item-value-controls__drag-area-indicator\" (pointerdown)=\"adorner.onPointerDown($event)\" [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-drag-area-indicator'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n <div class=\"svc-image-item-value-controls\" data-bind=\"event: { pointerdown: blockEvent }\">\n <ng-container *ngIf=\"adorner.allowRemove\">\n <span class=\"svc-image-item-value-controls__button svc-image-item-value-controls__choose-file\" (click)=\"adorner.chooseFile(adorner)\" [key2click] [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-file'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n <span class=\"svc-image-item-value-controls__button svc-image-item-value-controls__remove\" (click)=\"adorner.remove(adorner)\" [key2click] [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-delete'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n </ng-container>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"adorner.isNew\">\n <div class=\"svc-image-item-value__item\"\n data-bind=\"event: { dragover: dragover, drop: drop, dragleave: dragleave }\">\n <div class=\"sd-imagepicker__item sd-imagepicker__item--inline\">\n <label class=\"sd-imagepicker__label\">\n <div [style]=\"getNewItemStyle()\" class=\"sd-imagepicker__image\"></div>\n </label>\n </div>\n </div>\n\n <div class=\"svc-image-item-value-controls\" data-bind=\"event: { pointerdown: blockEvent }\">\n <span class=\"svc-image-item-value-controls__button svc-image-item-value-controls__add\" [key2click] (click)=\"adorner.chooseNewFile(adorner)\" [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg *ngIf=\"adorner.allowAdd\" [iconName]=\"'icon-add-lg'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
865
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImageItemValueDesignerComponent, decorators: [{
|
|
866
|
+
type: Component,
|
|
867
|
+
args: [{ selector: "svc-image-item-value", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div (pointerdown)=\"adorner.onPointerDown($event)\" [class]=\"adorner.getRootCss()\" [attr.data-sv-drop-target-item-value]=\"adorner.isDraggable ? this.item.value : null\" #container>\n <div class=\"svc-image-item-value-wrapper__ghost\" [style]=\"getNewItemStyle()\"></div>\n\n <div class=\"svc-image-item-value-wrapper__content\">\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" accept=\"image/*\" class=\"svc-choose-file-input\" />\n\n <ng-container *ngIf=\"!adorner.isNew\">\n <div *ngIf=\"!adorner.isNew\" class=\"svc-image-item-value__item\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n <span class=\"svc-image-item-value-controls__button svc-image-item-value-controls__drag-area-indicator\" (pointerdown)=\"adorner.onPointerDown($event)\" [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-drag-area-indicator'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n <div class=\"svc-image-item-value-controls\" data-bind=\"event: { pointerdown: blockEvent }\">\n <ng-container *ngIf=\"adorner.allowRemove\">\n <span class=\"svc-image-item-value-controls__button svc-image-item-value-controls__choose-file\" (click)=\"adorner.chooseFile(adorner)\" [key2click] [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-file'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n <span class=\"svc-image-item-value-controls__button svc-image-item-value-controls__remove\" (click)=\"adorner.remove(adorner)\" [key2click] [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-delete'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n </ng-container>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"adorner.isNew\">\n <div class=\"svc-image-item-value__item\"\n data-bind=\"event: { dragover: dragover, drop: drop, dragleave: dragleave }\">\n <div class=\"sd-imagepicker__item sd-imagepicker__item--inline\">\n <label class=\"sd-imagepicker__label\">\n <div [style]=\"getNewItemStyle()\" class=\"sd-imagepicker__image\"></div>\n </label>\n </div>\n </div>\n\n <div class=\"svc-image-item-value-controls\" data-bind=\"event: { pointerdown: blockEvent }\">\n <span class=\"svc-image-item-value-controls__button svc-image-item-value-controls__add\" [key2click] (click)=\"adorner.chooseNewFile(adorner)\" [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg *ngIf=\"adorner.allowAdd\" [iconName]=\"'icon-add-lg'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>" }]
|
|
868
|
+
}], propDecorators: { componentName: [{
|
|
869
|
+
type: Input
|
|
870
|
+
}], componentData: [{
|
|
871
|
+
type: Input
|
|
872
|
+
}], container: [{
|
|
873
|
+
type: ViewChild,
|
|
874
|
+
args: ["container", { read: ElementRef }]
|
|
875
|
+
}] } });
|
|
876
|
+
AngularComponentFactory.Instance.registerComponent("svc-image-item-value", ImageItemValueDesignerComponent);
|
|
877
|
+
|
|
878
|
+
class QuestionDropdownDesignerComponent extends QuestionDesignerComponent {
|
|
879
|
+
constructor() {
|
|
880
|
+
super(...arguments);
|
|
881
|
+
this.adornerComponent = "svc-dropdown-question-adorner";
|
|
882
|
+
}
|
|
883
|
+
createModel() {
|
|
884
|
+
if (this.componentData) {
|
|
885
|
+
this.adorner = new QuestionDropdownAdornerViewModel(this.creator, this.model, null);
|
|
886
|
+
}
|
|
887
|
+
}
|
|
888
|
+
}
|
|
889
|
+
QuestionDropdownDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionDropdownDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
890
|
+
QuestionDropdownDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QuestionDropdownDesignerComponent, selector: "svc-dropdown-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
891
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionDropdownDesignerComponent, decorators: [{
|
|
892
|
+
type: Component,
|
|
893
|
+
args: [{ selector: "svc-dropdown-question", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>" }]
|
|
894
|
+
}] });
|
|
895
|
+
AngularComponentFactory.Instance.registerComponent("svc-dropdown-question", QuestionDropdownDesignerComponent);
|
|
896
|
+
class QuestionDropdownAdornerDesignerComponent extends EmbeddedViewContentComponent {
|
|
897
|
+
getItemValueComponentName(item) {
|
|
898
|
+
return this.question.getItemValueWrapperComponentName(item) || "sv-ng-selectbase-item";
|
|
899
|
+
}
|
|
900
|
+
getItemValueComponentData(item) {
|
|
901
|
+
return {
|
|
902
|
+
componentName: "sv-ng-selectbase-item",
|
|
903
|
+
componentData: {
|
|
904
|
+
question: this.question,
|
|
905
|
+
model: item,
|
|
906
|
+
inputType: "radio",
|
|
907
|
+
data: this.question.getItemValueWrapperComponentData(item)
|
|
908
|
+
}
|
|
909
|
+
};
|
|
910
|
+
}
|
|
911
|
+
}
|
|
912
|
+
QuestionDropdownAdornerDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionDropdownAdornerDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
913
|
+
QuestionDropdownAdornerDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QuestionDropdownAdornerDesignerComponent, selector: "svc-dropdown-question-adorner", inputs: { adorner: "adorner", question: "question" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-question__dropdown-choices--wrapper\">\n <div class=\"svc-question__dropdown-choices\">\n <div *ngFor=\"let item of adorner.getRenderedItems()\" [class]=\"adorner.getChoiceCss()\"\n data-bind=\"css: $parent.getChoiceCss()\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\">\n </ng-template>\n </div>\n </div>\n <svc-action-button *ngIf=\"adorner.needToCollapse\" [text]=\"adorner.getButtonText()\"\n [click]=\"adorner.switchCollapse.bind(adorner)\" [allowBubble]=\"true\"> \n </svc-action-button>\n <!-- ko if: needToCollapse -->\n <!-- <svc-action-button params=\"text: getButtonText(), click: switchCollapse, allowBubble: true\">\n </svc-action-button> -->\n <!-- /ko -->\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: ActionButtonComponent, selector: "svc-action-button", inputs: ["classes", "click", "selected", "disabled", "text", "title", "allowBubble"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
914
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionDropdownAdornerDesignerComponent, decorators: [{
|
|
915
|
+
type: Component,
|
|
916
|
+
args: [{ selector: "svc-dropdown-question-adorner", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-question__dropdown-choices--wrapper\">\n <div class=\"svc-question__dropdown-choices\">\n <div *ngFor=\"let item of adorner.getRenderedItems()\" [class]=\"adorner.getChoiceCss()\"\n data-bind=\"css: $parent.getChoiceCss()\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\">\n </ng-template>\n </div>\n </div>\n <svc-action-button *ngIf=\"adorner.needToCollapse\" [text]=\"adorner.getButtonText()\"\n [click]=\"adorner.switchCollapse.bind(adorner)\" [allowBubble]=\"true\"> \n </svc-action-button>\n <!-- ko if: needToCollapse -->\n <!-- <svc-action-button params=\"text: getButtonText(), click: switchCollapse, allowBubble: true\">\n </svc-action-button> -->\n <!-- /ko -->\n </div>\n</ng-template>" }]
|
|
917
|
+
}], propDecorators: { adorner: [{
|
|
918
|
+
type: Input
|
|
919
|
+
}], question: [{
|
|
920
|
+
type: Input
|
|
921
|
+
}] } });
|
|
922
|
+
AngularComponentFactory.Instance.registerComponent("svc-dropdown-question-adorner", QuestionDropdownAdornerDesignerComponent);
|
|
923
|
+
|
|
924
|
+
class QuestionImageDesignerComponent extends QuestionDesignerComponent {
|
|
925
|
+
constructor() {
|
|
926
|
+
super(...arguments);
|
|
927
|
+
this.adornerComponent = "svc-image-question-adorner";
|
|
928
|
+
}
|
|
929
|
+
createModel() {
|
|
930
|
+
var _a;
|
|
931
|
+
if (this.componentData) {
|
|
932
|
+
this.adorner = new QuestionImageAdornerViewModel(this.creator, this.model, null, (_a = this.viewContainerRef) === null || _a === void 0 ? void 0 : _a.element.nativeElement.nextSibling);
|
|
933
|
+
}
|
|
934
|
+
}
|
|
935
|
+
ngAfterViewInit() {
|
|
936
|
+
this.adorner.questionRoot = this.container.nativeElement;
|
|
937
|
+
}
|
|
938
|
+
}
|
|
939
|
+
QuestionImageDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionImageDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
940
|
+
QuestionImageDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QuestionImageDesignerComponent, selector: "svc-image-question", viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
941
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionImageDesignerComponent, decorators: [{
|
|
942
|
+
type: Component,
|
|
943
|
+
args: [{ selector: "svc-image-question", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>" }]
|
|
944
|
+
}], propDecorators: { container: [{
|
|
945
|
+
type: ViewChild,
|
|
946
|
+
args: ["container", { read: ElementRef }]
|
|
947
|
+
}] } });
|
|
948
|
+
AngularComponentFactory.Instance.registerComponent("svc-image-question", QuestionImageDesignerComponent);
|
|
949
|
+
class QuestionImageAdornerDesignerComponent extends EmbeddedViewContentComponent {
|
|
950
|
+
}
|
|
951
|
+
QuestionImageAdornerDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionImageAdornerDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
952
|
+
QuestionImageAdornerDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QuestionImageAdornerDesignerComponent, selector: "svc-image-question-adorner", inputs: { adorner: "adorner", question: "question" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-image-question-controls\">\n <ng-container *ngIf=\"adorner.allowEdit\">\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" accept=\"image/*\" class=\"svc-choose-file-input\" />\n <span class=\"svc-image-question-controls__button\" [key2click] [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-file'\" [size]=\"24\" (click)=\"adorner.chooseFile(adorner)\" sv-ng-svg-icon></svg>\n </span>\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
953
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionImageAdornerDesignerComponent, decorators: [{
|
|
954
|
+
type: Component,
|
|
955
|
+
args: [{ selector: "svc-image-question-adorner", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-image-question-controls\">\n <ng-container *ngIf=\"adorner.allowEdit\">\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" accept=\"image/*\" class=\"svc-choose-file-input\" />\n <span class=\"svc-image-question-controls__button\" [key2click] [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-file'\" [size]=\"24\" (click)=\"adorner.chooseFile(adorner)\" sv-ng-svg-icon></svg>\n </span>\n </ng-container>\n </div>\n</ng-template>" }]
|
|
956
|
+
}], propDecorators: { adorner: [{
|
|
957
|
+
type: Input
|
|
958
|
+
}], question: [{
|
|
959
|
+
type: Input
|
|
960
|
+
}] } });
|
|
961
|
+
AngularComponentFactory.Instance.registerComponent("svc-image-question-adorner", QuestionImageAdornerDesignerComponent);
|
|
962
|
+
|
|
963
|
+
class PanelDesignerComponent extends QuestionDesignerComponent {
|
|
964
|
+
}
|
|
965
|
+
PanelDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PanelDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
966
|
+
PanelDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: PanelDesignerComponent, selector: "svc-panel", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
967
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: PanelDesignerComponent, decorators: [{
|
|
968
|
+
type: Component,
|
|
969
|
+
args: [{ selector: "svc-panel", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>" }]
|
|
970
|
+
}] });
|
|
971
|
+
AngularComponentFactory.Instance.registerComponent("svc-panel", PanelDesignerComponent);
|
|
972
|
+
|
|
973
|
+
class ToolboxItemComponent extends BaseAngular {
|
|
974
|
+
constructor() {
|
|
975
|
+
super(...arguments);
|
|
976
|
+
this.isCompact = false;
|
|
977
|
+
}
|
|
978
|
+
getModel() {
|
|
979
|
+
return this.viewModel;
|
|
980
|
+
}
|
|
981
|
+
get item() {
|
|
982
|
+
return this.model;
|
|
983
|
+
}
|
|
984
|
+
get ariaLabel() {
|
|
985
|
+
return this.item.tooltip + " " + editorLocalization.getString("toolbox") + " item";
|
|
986
|
+
}
|
|
987
|
+
}
|
|
988
|
+
ToolboxItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToolboxItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
989
|
+
ToolboxItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ToolboxItemComponent, selector: "svc-toolbox-item", inputs: { creator: "creator", model: "model", isCompact: "isCompact", viewModel: "viewModel" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-toolbox__item\" role=\"button\" [attr.aria-label]=\"ariaLabel\"\n [class]=\"'svc-toolbox__item--' + item.iconName\" (click)=\"viewModel.click($event)\" [key2click]>\n <span class=\"svc-toolbox__item-container\">\n <svg [iconName]=\"item.iconName\" [size]=\"24\" [title]=\"ariaLabel\" sv-ng-svg-icon></svg>\n </span>\n <span *ngIf=\"isCompact\" class=\"svc-toolbox__item-banner svc-item__banner\">\n <svg [iconName]=\"item.iconName\" [size]=\"24\" [title]=\"ariaLabel\" class=\"svc-toolbox__item-icon\" sv-ng-svg-icon></svg>\n <span class=\"svc-toolbox__item-title\">{{item.title}}</span>\n </span>\n <span *ngIf=\"!isCompact\" class=\"svc-toolbox__item-title\">\n {{item.title}}\n </span>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
990
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToolboxItemComponent, decorators: [{
|
|
991
|
+
type: Component,
|
|
992
|
+
args: [{ selector: "svc-toolbox-item", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-toolbox__item\" role=\"button\" [attr.aria-label]=\"ariaLabel\"\n [class]=\"'svc-toolbox__item--' + item.iconName\" (click)=\"viewModel.click($event)\" [key2click]>\n <span class=\"svc-toolbox__item-container\">\n <svg [iconName]=\"item.iconName\" [size]=\"24\" [title]=\"ariaLabel\" sv-ng-svg-icon></svg>\n </span>\n <span *ngIf=\"isCompact\" class=\"svc-toolbox__item-banner svc-item__banner\">\n <svg [iconName]=\"item.iconName\" [size]=\"24\" [title]=\"ariaLabel\" class=\"svc-toolbox__item-icon\" sv-ng-svg-icon></svg>\n <span class=\"svc-toolbox__item-title\">{{item.title}}</span>\n </span>\n <span *ngIf=\"!isCompact\" class=\"svc-toolbox__item-title\">\n {{item.title}}\n </span>\n </div>\n</ng-template>" }]
|
|
993
|
+
}], propDecorators: { creator: [{
|
|
994
|
+
type: Input
|
|
995
|
+
}], model: [{
|
|
996
|
+
type: Input
|
|
997
|
+
}], isCompact: [{
|
|
998
|
+
type: Input
|
|
999
|
+
}], viewModel: [{
|
|
1000
|
+
type: Input
|
|
1001
|
+
}] } });
|
|
1002
|
+
AngularComponentFactory.Instance.registerComponent("svc-toolbox-item", ToolboxItemComponent);
|
|
1003
|
+
|
|
1004
|
+
class StringEditorComponent extends CreatorModelComponent {
|
|
1005
|
+
constructor(cdr, vcr, ngZone) {
|
|
1006
|
+
super(cdr, vcr);
|
|
1007
|
+
this.ngZone = ngZone;
|
|
1008
|
+
this.justFocused = false;
|
|
1009
|
+
this.onChangeHandler = () => {
|
|
1010
|
+
this.detectChanges();
|
|
1011
|
+
};
|
|
1012
|
+
}
|
|
1013
|
+
createModel() {
|
|
1014
|
+
this.baseModel = new StringEditorViewModelBase(this.locString, this.creator);
|
|
1015
|
+
this.baseModel.blurEditor = () => {
|
|
1016
|
+
this.container.nativeElement.blur();
|
|
1017
|
+
this.container.nativeElement.spellcheck = false;
|
|
1018
|
+
};
|
|
1019
|
+
}
|
|
1020
|
+
get locString() {
|
|
1021
|
+
return this.model.locStr;
|
|
1022
|
+
}
|
|
1023
|
+
get creator() {
|
|
1024
|
+
return this.model.creator;
|
|
1025
|
+
}
|
|
1026
|
+
getModel() {
|
|
1027
|
+
return this.baseModel;
|
|
1028
|
+
}
|
|
1029
|
+
getPropertiesToTrack() {
|
|
1030
|
+
return ["creator", "locString"];
|
|
1031
|
+
}
|
|
1032
|
+
get placeholder() {
|
|
1033
|
+
return this.baseModel.placeholder;
|
|
1034
|
+
}
|
|
1035
|
+
get contentEditable() {
|
|
1036
|
+
return this.baseModel.contentEditable;
|
|
1037
|
+
}
|
|
1038
|
+
get className() {
|
|
1039
|
+
return this.baseModel.className(this.locString.renderedHtml);
|
|
1040
|
+
}
|
|
1041
|
+
get errorText() {
|
|
1042
|
+
return this.baseModel.errorText;
|
|
1043
|
+
}
|
|
1044
|
+
get editValue() {
|
|
1045
|
+
return this.baseModel.focused && this.baseModel.editAsText && this.locString.text || this.locString.renderedHtml;
|
|
1046
|
+
}
|
|
1047
|
+
onBlur(event) {
|
|
1048
|
+
this.container.nativeElement.spellcheck = false;
|
|
1049
|
+
this.locString.__isEditing = false;
|
|
1050
|
+
this.justFocused = false;
|
|
1051
|
+
this.baseModel.onBlur(event);
|
|
1052
|
+
return this.baseModel.errorText;
|
|
1053
|
+
}
|
|
1054
|
+
onFocus(event) {
|
|
1055
|
+
this.baseModel.onFocus(event);
|
|
1056
|
+
this.justFocused = true;
|
|
1057
|
+
}
|
|
1058
|
+
done(event) {
|
|
1059
|
+
this.baseModel.done(event);
|
|
1060
|
+
this.locString.__isEditing = false;
|
|
1061
|
+
}
|
|
1062
|
+
edit(event) {
|
|
1063
|
+
this.container.nativeElement.focus();
|
|
1064
|
+
this.locString.__isEditing = true;
|
|
1065
|
+
this.baseModel.onClick(event);
|
|
1066
|
+
}
|
|
1067
|
+
ngOnInit() {
|
|
1068
|
+
var _a;
|
|
1069
|
+
super.ngOnInit();
|
|
1070
|
+
if (this.locString.__isEditing) {
|
|
1071
|
+
this.container.nativeElement.focus();
|
|
1072
|
+
}
|
|
1073
|
+
(_a = this.locString) === null || _a === void 0 ? void 0 : _a.onStringChanged.add(this.onChangeHandler);
|
|
1074
|
+
}
|
|
1075
|
+
ngOnDestroy() {
|
|
1076
|
+
var _a;
|
|
1077
|
+
(_a = this.locString) === null || _a === void 0 ? void 0 : _a.onStringChanged.remove(this.onChangeHandler);
|
|
1078
|
+
super.ngOnDestroy();
|
|
1079
|
+
}
|
|
1080
|
+
ngAfterViewInit() {
|
|
1081
|
+
this.baseModel.getEditorElement = () => this.container.nativeElement;
|
|
1082
|
+
this.ngZone.runOutsideAngular(() => {
|
|
1083
|
+
setTimeout(() => this.baseModel.afterRender());
|
|
1084
|
+
});
|
|
1085
|
+
}
|
|
1086
|
+
}
|
|
1087
|
+
StringEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: StringEditorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1088
|
+
StringEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: StringEditorComponent, selector: "svc-string-edtior", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <span [class]=\"className\">\n <span class=\"svc-string-editor__content\">\n <div class=\"svc-string-editor__border\">\n <svg [iconName]=\"'icon-arrow-up'\" class=\"svc-string-editor__button svc-string-editor__button--edit\" [size]=\"24\" sv-ng-svg-icon \n (click)=\"edit($event)\" [iconName]=\"'icon-edit'\" [size]=\"16\"></svg>\n </div>\n <span role=\"textbox\" *ngIf=\"!locString.hasHtml\" class=\"sv-string-editor\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (onInput)=\"baseModel.onInput($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\" (click)=\"edit($event)\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" [innerText]=\"editValue\" #container></span>\n <span role=\"textbox\" *ngIf=\"locString.hasHtml\" class=\"sv-string-editor\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\"\n (click)=\"edit($event)\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" [innerHtml]=\"editValue\" #container></span>\n </span>\n <span *ngIf=\"errorText\" class=\"svc-string-editor__error\">{{errorText}}</span>\n </span>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
1089
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: StringEditorComponent, decorators: [{
|
|
1090
|
+
type: Component,
|
|
1091
|
+
args: [{ selector: "svc-string-edtior", styles: [":host { display: none; }"], template: "<ng-template #template>\n <span [class]=\"className\">\n <span class=\"svc-string-editor__content\">\n <div class=\"svc-string-editor__border\">\n <svg [iconName]=\"'icon-arrow-up'\" class=\"svc-string-editor__button svc-string-editor__button--edit\" [size]=\"24\" sv-ng-svg-icon \n (click)=\"edit($event)\" [iconName]=\"'icon-edit'\" [size]=\"16\"></svg>\n </div>\n <span role=\"textbox\" *ngIf=\"!locString.hasHtml\" class=\"sv-string-editor\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (onInput)=\"baseModel.onInput($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\" (click)=\"edit($event)\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" [innerText]=\"editValue\" #container></span>\n <span role=\"textbox\" *ngIf=\"locString.hasHtml\" class=\"sv-string-editor\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\"\n (click)=\"edit($event)\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" [innerHtml]=\"editValue\" #container></span>\n </span>\n <span *ngIf=\"errorText\" class=\"svc-string-editor__error\">{{errorText}}</span>\n </span>\n</ng-template>" }]
|
|
1092
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ViewContainerRef }, { type: i0.NgZone }]; }, propDecorators: { model: [{
|
|
1093
|
+
type: Input
|
|
1094
|
+
}], container: [{
|
|
1095
|
+
type: ViewChild,
|
|
1096
|
+
args: ["container"]
|
|
1097
|
+
}] } });
|
|
1098
|
+
AngularComponentFactory.Instance.registerComponent(editableStringRendererName, StringEditorComponent);
|
|
1099
|
+
|
|
1100
|
+
class LogicOperatorComponent extends QuestionAngular {
|
|
1101
|
+
get dropdownModel() {
|
|
1102
|
+
return this.dropdownListModel;
|
|
1103
|
+
}
|
|
1104
|
+
click(event) {
|
|
1105
|
+
var _a;
|
|
1106
|
+
(_a = this.dropdownListModel) === null || _a === void 0 ? void 0 : _a.onClick(event);
|
|
1107
|
+
}
|
|
1108
|
+
clear(event) {
|
|
1109
|
+
var _a;
|
|
1110
|
+
(_a = this.dropdownListModel) === null || _a === void 0 ? void 0 : _a.onClear(event);
|
|
1111
|
+
}
|
|
1112
|
+
keyup(event) {
|
|
1113
|
+
var _a;
|
|
1114
|
+
(_a = this.dropdownListModel) === null || _a === void 0 ? void 0 : _a.keyHandler(event);
|
|
1115
|
+
}
|
|
1116
|
+
ngOnInit() {
|
|
1117
|
+
super.ngOnInit();
|
|
1118
|
+
this.dropdownListModel = this.model.dropdownListModel || new DropdownListModel(this.model);
|
|
1119
|
+
}
|
|
1120
|
+
}
|
|
1121
|
+
LogicOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LogicOperatorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1122
|
+
LogicOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: LogicOperatorComponent, selector: "svc-logic-operator", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"model.cssClasses.selectWrapper\">\n <ng-container *ngIf=\"!model.isReadOnly\">\n <div [class]=\"model.getControlClass()\" (click)=\"click($event)\" (keyup)=\"keyup($event)\"\n [attr.id]=\"model.inputId\" \n [attr.required]=\"model.isRequired\" \n [attr.tabindex]= \"model.isInputReadOnly ? undefined : 0\"\n [attr.disabled]=\"model.isInputReadOnly\"\n [attr.role]=\"model.ariaRole\"\n [attr.aria-required]=\"model.ariaRequired\" \n [attr.aria-label]=\"model.ariaLabel\" \n [attr.aria-invalid]=\"model.ariaInvalid\" \n [attr.aria-describedby]= \"model.ariaDescribedBy\" \n >\n <div [class]=\"model.cssClasses.controlValue\">\n <sv-ng-string *ngIf=\"model.selectedItemLocText\" [model]=\"model.selectedItemLocText\"></sv-ng-string>\n <div>{{model.readOnlyText}}</div>\n </div>\n <div *ngIf=\"model.allowClear && model.cssClasses.cleanButtonIconId\" [class]=\"model.cssClasses.cleanButton\" (click)=\"clear\" [visible]=\"!model.isEmpty()\">\n <svg [class]=\"model.cssClasses.cleanButtonSvg\" [iconName]=\"model.cssClasses.cleanButtonIconId\" [size]=\"'auto'\" [title]=\"model.cleanCaption\" [size]=\"24\" sv-ng-svg-icon></svg>\n </div>\n </div>\n <sv-ng-popup [popupModel]=\"model.popupModel\"></sv-ng-popup>\n </ng-container>\n <div disabled *ngIf=\"model.isReadOnly\" [class]=\"model.getControlClass()\" [attr.id]=\"model.inputId\">\n <sv-ng-string *ngIf=\"model.selectedItemLocText\" [model]=\"model.selectedItemLocText\"></sv-ng-string>\n <div>{{model.readOnlyText}}</div>\n </div>\n </div>\n</ng-template>\n", styles: [":host{display:none}\n"], components: [{ type: i1.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }, { type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.VisibleDirective, selector: "[visible]", inputs: ["visible"] }] });
|
|
1123
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: LogicOperatorComponent, decorators: [{
|
|
1124
|
+
type: Component,
|
|
1125
|
+
args: [{ selector: "svc-logic-operator", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div [class]=\"model.cssClasses.selectWrapper\">\n <ng-container *ngIf=\"!model.isReadOnly\">\n <div [class]=\"model.getControlClass()\" (click)=\"click($event)\" (keyup)=\"keyup($event)\"\n [attr.id]=\"model.inputId\" \n [attr.required]=\"model.isRequired\" \n [attr.tabindex]= \"model.isInputReadOnly ? undefined : 0\"\n [attr.disabled]=\"model.isInputReadOnly\"\n [attr.role]=\"model.ariaRole\"\n [attr.aria-required]=\"model.ariaRequired\" \n [attr.aria-label]=\"model.ariaLabel\" \n [attr.aria-invalid]=\"model.ariaInvalid\" \n [attr.aria-describedby]= \"model.ariaDescribedBy\" \n >\n <div [class]=\"model.cssClasses.controlValue\">\n <sv-ng-string *ngIf=\"model.selectedItemLocText\" [model]=\"model.selectedItemLocText\"></sv-ng-string>\n <div>{{model.readOnlyText}}</div>\n </div>\n <div *ngIf=\"model.allowClear && model.cssClasses.cleanButtonIconId\" [class]=\"model.cssClasses.cleanButton\" (click)=\"clear\" [visible]=\"!model.isEmpty()\">\n <svg [class]=\"model.cssClasses.cleanButtonSvg\" [iconName]=\"model.cssClasses.cleanButtonIconId\" [size]=\"'auto'\" [title]=\"model.cleanCaption\" [size]=\"24\" sv-ng-svg-icon></svg>\n </div>\n </div>\n <sv-ng-popup [popupModel]=\"model.popupModel\"></sv-ng-popup>\n </ng-container>\n <div disabled *ngIf=\"model.isReadOnly\" [class]=\"model.getControlClass()\" [attr.id]=\"model.inputId\">\n <sv-ng-string *ngIf=\"model.selectedItemLocText\" [model]=\"model.selectedItemLocText\"></sv-ng-string>\n <div>{{model.readOnlyText}}</div>\n </div>\n </div>\n</ng-template>\n" }]
|
|
1126
|
+
}] });
|
|
1127
|
+
AngularComponentFactory.Instance.registerComponent("sv-logic-operator", LogicOperatorComponent);
|
|
1128
|
+
RendererFactory.Instance.registerRenderer("dropdown", "logicoperator", "sv-logic-operator");
|
|
1129
|
+
|
|
1130
|
+
class MatrixCellComponent extends CreatorModelComponent {
|
|
1131
|
+
get creator() {
|
|
1132
|
+
return this.componentData.creator;
|
|
1133
|
+
}
|
|
1134
|
+
get question() {
|
|
1135
|
+
return this.componentData.question;
|
|
1136
|
+
}
|
|
1137
|
+
get column() {
|
|
1138
|
+
return this.componentData.column;
|
|
1139
|
+
}
|
|
1140
|
+
get row() {
|
|
1141
|
+
return this.componentData.row;
|
|
1142
|
+
}
|
|
1143
|
+
createModel() {
|
|
1144
|
+
if (this.componentData) {
|
|
1145
|
+
this.adorner = new MatrixCellWrapperViewModel(this.creator, null, this.question, this.row, this.column);
|
|
1146
|
+
}
|
|
1147
|
+
}
|
|
1148
|
+
getPropertiesToTrack() {
|
|
1149
|
+
return ["creator", "row", "column", "question"];
|
|
1150
|
+
}
|
|
1151
|
+
getModel() {
|
|
1152
|
+
return this.adorner;
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
1155
|
+
MatrixCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1156
|
+
MatrixCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: MatrixCellComponent, selector: "svc-matrix-cell", inputs: { componentName: "componentName", componentData: "componentData", contentTempl: "contentTempl" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-matrix-cell\" (click)=\"adorner.selectContext(adorner, $event)\" (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\">\n <div class=\"svc-matrix-cell--selected\" [class.svc-visible]=\"adorner.isSelected\"></div>\n <ng-container *ngTemplateOutlet=\"contentTempl\"></ng-container>\n <div *ngIf=\"question\" class=\"svc-matrix-cell__question-controls\">\n <span class=\"svc-matrix-cell__question-controls-button\" (click)=\"adorner.editQuestion(adorner)\" [key2click]>\n <svg [iconName]=\"'icon-edit'\" [size]=\"24\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
1157
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, decorators: [{
|
|
1158
|
+
type: Component,
|
|
1159
|
+
args: [{ selector: "svc-matrix-cell", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-matrix-cell\" (click)=\"adorner.selectContext(adorner, $event)\" (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\">\n <div class=\"svc-matrix-cell--selected\" [class.svc-visible]=\"adorner.isSelected\"></div>\n <ng-container *ngTemplateOutlet=\"contentTempl\"></ng-container>\n <div *ngIf=\"question\" class=\"svc-matrix-cell__question-controls\">\n <span class=\"svc-matrix-cell__question-controls-button\" (click)=\"adorner.editQuestion(adorner)\" [key2click]>\n <svg [iconName]=\"'icon-edit'\" [size]=\"24\" [size]=\"24\" sv-ng-svg-icon></svg>\n </span>\n </div>\n </div>\n</ng-template>" }]
|
|
1160
|
+
}], propDecorators: { componentName: [{
|
|
1161
|
+
type: Input
|
|
1162
|
+
}], componentData: [{
|
|
1163
|
+
type: Input
|
|
1164
|
+
}], contentTempl: [{
|
|
1165
|
+
type: Input
|
|
1166
|
+
}] } });
|
|
1167
|
+
AngularComponentFactory.Instance.registerComponent("svc-matrix-cell", MatrixCellComponent);
|
|
1168
|
+
|
|
1169
|
+
class QuestionEditorComponent extends EmbeddedViewContentComponent {
|
|
1170
|
+
get question() {
|
|
1171
|
+
return this.survey.getAllQuestions()[0];
|
|
1172
|
+
}
|
|
1173
|
+
get elementComponentName() {
|
|
1174
|
+
return this.question.isPanel ? "panel" : "question";
|
|
1175
|
+
}
|
|
1176
|
+
get componentName() {
|
|
1177
|
+
const survey = this.survey;
|
|
1178
|
+
if (!!survey) {
|
|
1179
|
+
const name = survey.getElementWrapperComponentName(this.question);
|
|
1180
|
+
if (!!name) {
|
|
1181
|
+
return name;
|
|
1182
|
+
}
|
|
1183
|
+
}
|
|
1184
|
+
return this.elementComponentName;
|
|
1185
|
+
}
|
|
1186
|
+
get componentData() {
|
|
1187
|
+
const survey = this.survey;
|
|
1188
|
+
let data;
|
|
1189
|
+
if (!!survey) {
|
|
1190
|
+
data = survey.getElementWrapperComponentData(this.question);
|
|
1191
|
+
}
|
|
1192
|
+
return {
|
|
1193
|
+
componentName: this.elementComponentName,
|
|
1194
|
+
componentData: {
|
|
1195
|
+
model: this.question,
|
|
1196
|
+
data: data
|
|
1197
|
+
}
|
|
1198
|
+
};
|
|
1199
|
+
}
|
|
1200
|
+
}
|
|
1201
|
+
QuestionEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionEditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1202
|
+
QuestionEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QuestionEditorComponent, selector: "svc-question-editor-content", inputs: { survey: "survey" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n</ng-template>", directives: [{ type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
1203
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionEditorComponent, decorators: [{
|
|
1204
|
+
type: Component,
|
|
1205
|
+
args: [{ selector: "svc-question-editor-content", template: "<ng-template #template>\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n</ng-template>" }]
|
|
1206
|
+
}], propDecorators: { survey: [{
|
|
1207
|
+
type: Input
|
|
1208
|
+
}] } });
|
|
1209
|
+
AngularComponentFactory.Instance.registerComponent("svc-question-editor-content", QuestionEditorComponent);
|
|
1210
|
+
|
|
1211
|
+
class CellQuestionComponent extends BaseAngular {
|
|
1212
|
+
getModel() {
|
|
1213
|
+
return this.model;
|
|
1214
|
+
}
|
|
1215
|
+
get model() {
|
|
1216
|
+
return this.componentData.model;
|
|
1217
|
+
}
|
|
1218
|
+
}
|
|
1219
|
+
CellQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CellQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1220
|
+
CellQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CellQuestionComponent, selector: "svc-cell-question", inputs: { componentName: "componentName", componentData: "componentData" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-question__adorner\">\n <div class=\"svc-question__content svc-question__content--selected-no-border\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
1221
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CellQuestionComponent, decorators: [{
|
|
1222
|
+
type: Component,
|
|
1223
|
+
args: [{ selector: "svc-cell-question", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-question__adorner\">\n <div class=\"svc-question__content svc-question__content--selected-no-border\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n </div>\n</ng-template>" }]
|
|
1224
|
+
}], propDecorators: { componentName: [{
|
|
1225
|
+
type: Input
|
|
1226
|
+
}], componentData: [{
|
|
1227
|
+
type: Input
|
|
1228
|
+
}] } });
|
|
1229
|
+
AngularComponentFactory.Instance.registerComponent("svc-cell-question", CellQuestionComponent);
|
|
1230
|
+
|
|
1231
|
+
class CellQuestionDropdownComponent extends CellQuestionComponent {
|
|
1232
|
+
getItemValueComponentName(item) {
|
|
1233
|
+
return this.model.getItemValueWrapperComponentName(item) || "sv-ng-selectbase-item";
|
|
1234
|
+
}
|
|
1235
|
+
getItemValueComponentData(item) {
|
|
1236
|
+
return {
|
|
1237
|
+
componentName: "sv-ng-selectbase-item",
|
|
1238
|
+
componentData: {
|
|
1239
|
+
question: this.model,
|
|
1240
|
+
model: item,
|
|
1241
|
+
inputType: "radio",
|
|
1242
|
+
data: this.model.getItemValueWrapperComponentData(item)
|
|
1243
|
+
}
|
|
1244
|
+
};
|
|
1245
|
+
}
|
|
1246
|
+
}
|
|
1247
|
+
CellQuestionDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CellQuestionDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1248
|
+
CellQuestionDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CellQuestionDropdownComponent, selector: "svc-cell-dropdown-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-question__adorner\">\n <div class=\"svc-question__content svc-question__content--selected-no-border\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div class=\"svc-question__dropdown-choices\">\n <div *ngFor=\"let item of model.visibleChoices\"class=\"svc-question__dropdown-choice\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </div>\n </div>\n\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
1249
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CellQuestionDropdownComponent, decorators: [{
|
|
1250
|
+
type: Component,
|
|
1251
|
+
args: [{ selector: "svc-cell-dropdown-question", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-question__adorner\">\n <div class=\"svc-question__content svc-question__content--selected-no-border\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div class=\"svc-question__dropdown-choices\">\n <div *ngFor=\"let item of model.visibleChoices\"class=\"svc-question__dropdown-choice\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </div>\n </div>\n\n </div>\n </div>\n</ng-template>" }]
|
|
1252
|
+
}] });
|
|
1253
|
+
AngularComponentFactory.Instance.registerComponent("svc-cell-dropdown-question", CellQuestionDropdownComponent);
|
|
1254
|
+
|
|
1255
|
+
class CreatorRowComponent extends CreatorModelComponent {
|
|
1256
|
+
get row() {
|
|
1257
|
+
return this.componentData.row;
|
|
1258
|
+
}
|
|
1259
|
+
get creator() {
|
|
1260
|
+
return this.componentData.creator;
|
|
1261
|
+
}
|
|
1262
|
+
getModel() {
|
|
1263
|
+
return this.model;
|
|
1264
|
+
}
|
|
1265
|
+
createModel() {
|
|
1266
|
+
this.model = new RowViewModel(this.creator, this.row, undefined);
|
|
1267
|
+
}
|
|
1268
|
+
getPropertiesToTrack() {
|
|
1269
|
+
return ["creator", "row"];
|
|
1270
|
+
}
|
|
1271
|
+
}
|
|
1272
|
+
CreatorRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CreatorRowComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1273
|
+
CreatorRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CreatorRowComponent, selector: "svc-row", inputs: { componentData: "componentData" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"model.cssClasses\">\n <sv-ng-row [row]=\"row\"></sv-ng-row>\n </div>\n</ng-template>", components: [{ type: i1.RowComponent, selector: "sv-ng-row", inputs: ["row"] }] });
|
|
1274
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CreatorRowComponent, decorators: [{
|
|
1275
|
+
type: Component,
|
|
1276
|
+
args: [{ selector: "svc-row", template: "<ng-template #template>\n <div [class]=\"model.cssClasses\">\n <sv-ng-row [row]=\"row\"></sv-ng-row>\n </div>\n</ng-template>" }]
|
|
1277
|
+
}], propDecorators: { componentData: [{
|
|
1278
|
+
type: Input
|
|
1279
|
+
}] } });
|
|
1280
|
+
AngularComponentFactory.Instance.registerComponent("svc-row", CreatorRowComponent);
|
|
1281
|
+
|
|
1282
|
+
class QuestionWidgetDesignerComponent extends QuestionDesignerComponent {
|
|
1283
|
+
createModel() {
|
|
1284
|
+
if (this.componentData) {
|
|
1285
|
+
this.adorner = new QuestionAdornerViewModel(this.creator, this.model, null);
|
|
1286
|
+
}
|
|
1287
|
+
}
|
|
1288
|
+
}
|
|
1289
|
+
QuestionWidgetDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionWidgetDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1290
|
+
QuestionWidgetDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QuestionWidgetDesignerComponent, selector: "svc-widget-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\" (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\" [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\">\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </div>\n <div class=\"svc-widget__content\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n <div class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\" data-bind=\"text: placeholderText\"></div>\n </div>\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
1291
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionWidgetDesignerComponent, decorators: [{
|
|
1292
|
+
type: Component,
|
|
1293
|
+
args: [{ selector: "svc-widget-question", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\" (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\" [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\">\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </div>\n <div class=\"svc-widget__content\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n <div class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\" data-bind=\"text: placeholderText\"></div>\n </div>\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n </ng-container>\n </div>\n</ng-template>" }]
|
|
1294
|
+
}] });
|
|
1295
|
+
AngularComponentFactory.Instance.registerComponent("svc-widget-question", QuestionWidgetDesignerComponent);
|
|
1296
|
+
|
|
1297
|
+
class ToolboxComponent extends BaseAngular {
|
|
1298
|
+
get toolbox() {
|
|
1299
|
+
return this.model.toolbox;
|
|
1300
|
+
}
|
|
1301
|
+
getModel() {
|
|
1302
|
+
return this.toolbox;
|
|
1303
|
+
}
|
|
1304
|
+
}
|
|
1305
|
+
ToolboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToolboxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1306
|
+
ToolboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ToolboxComponent, selector: "svc-toolbox", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-toolbox\">\n <div class=\"svc-toolbox__container\">\n <ng-container *ngIf=\"!(toolbox.categories.length == 1 || !toolbox.showCategoryTitles)\">\n <svc-toolbox-category *ngFor=\"let category of toolbox.categories\" [category]=\"category\" [toolbox]=\"toolbox\"></svc-toolbox-category>\n </ng-container>\n <ng-container *ngIf=\"toolbox.categories.length == 1 || !toolbox.showCategoryTitles\">\n <div class=\"svc-toolbox__category\">\n <svc-toolbox-tool *ngFor=\"let item of toolbox.visibleActions\" [creator]=\"model\" [item]=\"item\" [isCompact]=\"toolbox.isCompact\"></svc-toolbox-tool>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: ToolboxCategoryComponent, selector: "svc-toolbox-category ", inputs: ["category", "toolbox"] }, { type: ToolboxToolComponent, selector: "svc-toolbox-tool", inputs: ["creator", "item", "isCompact"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
1307
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToolboxComponent, decorators: [{
|
|
1308
|
+
type: Component,
|
|
1309
|
+
args: [{ selector: "svc-toolbox", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-toolbox\">\n <div class=\"svc-toolbox__container\">\n <ng-container *ngIf=\"!(toolbox.categories.length == 1 || !toolbox.showCategoryTitles)\">\n <svc-toolbox-category *ngFor=\"let category of toolbox.categories\" [category]=\"category\" [toolbox]=\"toolbox\"></svc-toolbox-category>\n </ng-container>\n <ng-container *ngIf=\"toolbox.categories.length == 1 || !toolbox.showCategoryTitles\">\n <div class=\"svc-toolbox__category\">\n <svc-toolbox-tool *ngFor=\"let item of toolbox.visibleActions\" [creator]=\"model\" [item]=\"item\" [isCompact]=\"toolbox.isCompact\"></svc-toolbox-tool>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>" }]
|
|
1310
|
+
}], propDecorators: { model: [{
|
|
1311
|
+
type: Input
|
|
1312
|
+
}] } });
|
|
1313
|
+
AngularComponentFactory.Instance.registerComponent("svc-toolbox", ToolboxComponent);
|
|
1314
|
+
|
|
1315
|
+
class QuestionRatingDesignerComponent extends QuestionDesignerComponent {
|
|
1316
|
+
constructor() {
|
|
1317
|
+
super(...arguments);
|
|
1318
|
+
this.adornerComponent = "";
|
|
1319
|
+
}
|
|
1320
|
+
}
|
|
1321
|
+
QuestionRatingDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionRatingDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1322
|
+
QuestionRatingDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QuestionRatingDesignerComponent, selector: "svc-rating-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
1323
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionRatingDesignerComponent, decorators: [{
|
|
1324
|
+
type: Component,
|
|
1325
|
+
args: [{ selector: "svc-rating-question", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content\" [class]=\"adorner.css()\"\n [key2click] (click)=\"adorner.select(adorner, $event)\" data-bind=\"clickBubble: false\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.element.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <!-- ko if: adornerComponent -->\n <!-- ko component: { name: adornerComponent, params: { model: $data } } -->\n <!-- /ko -->\n <!-- /ko -->\n\n <div *ngIf=\"!adorner.isEmptyElement && model.isPanel && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n\n <ng-container *ngIf=\"!adorner.element.isInteractiveDesignElement\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <div *ngIf=\"adorner.showAddQuestionButton\" class=\"svc-panel__add-new-question svc-action-button\" [key2click]\n (click)=\"addNewQuestion($event)\" data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n\n <div *ngIf=\"!adorner.isEmptyElement\" class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__add-new-question svc-action-button\" [key2click] (click)=\"addNewQuestion($event)\"\n data-bind=\"clickBubble: false\">\n <span class=\"svc-text svc-text--normal svc-text--bold\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n <!-- ko with: questionTypeSelectorModel -->\n <button type=\"button\" [attr.title]=\"adorner.addNewQuestionText\" [key2click] (click)=\"selectQuestionType($event)\"\n class=\"svc-panel__question-type-selector\">\n <svg class=\"svc-panel__question-type-selector-icon\" [iconName]=\"adorner.questionTypeSelectorModel.iconName\"\n [size]=\"24\" sv-ng-svg-icon></svg>\n <sv-ng-popup [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n <!-- /ko -->\n </div>\n\n </ng-container>\n </div>\n</ng-template>" }]
|
|
1326
|
+
}] });
|
|
1327
|
+
AngularComponentFactory.Instance.registerComponent("svc-rating-question", QuestionRatingDesignerComponent);
|
|
1328
|
+
class QuestionRatingAdornerDesignerComponent extends CreatorModelComponent {
|
|
1329
|
+
createModel() {
|
|
1330
|
+
if (this.componentData) {
|
|
1331
|
+
this.adorner = new QuestionRatingAdornerViewModel(this.componentData.data, this.componentData.model, null);
|
|
1332
|
+
}
|
|
1333
|
+
}
|
|
1334
|
+
getPropertiesToTrack() {
|
|
1335
|
+
return ["model", "creator"];
|
|
1336
|
+
}
|
|
1337
|
+
getModel() {
|
|
1338
|
+
return this.adorner;
|
|
1339
|
+
}
|
|
1340
|
+
}
|
|
1341
|
+
QuestionRatingAdornerDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionRatingAdornerDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1342
|
+
QuestionRatingAdornerDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: QuestionRatingAdornerDesignerComponent, selector: "svc-rating-question-content", inputs: { componentName: "componentName", componentData: "componentData" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-rating-question-content\">\n <div class=\"svc-rating-question-controls svc-item-value-controls\">\n <svg *ngIf=\"adorner.allowRemove\" [iconName]=\"'icon-remove_16x16'\" [size]=\"16\" [key2click] (click)=\"adorner.removeItem(adorner)\"\n class=\"svc-item-value-controls__button svc-item-value-controls__remove\" [attr.title]=\"adorner.removeTooltip\" [attr.aria-label]=\"adorner.removeTooltip\" sv-ng-svg-icon></svg>\n <svg *ngIf=\"adorner.allowAdd\" [iconName]=\"'icon-add_16x16'\" [size]=\"16\" [key2click] (click)=\"adorner.addItem(adorner)\"\n class=\"svc-item-value-controls__button svc-item-value-controls__add\" [attr.title]=\"adorner.addTooltip\" [attr.aria-label]=\"adorner.addTooltip\"sv-ng-svg-icon></svg>\n </div>\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
|
|
1343
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: QuestionRatingAdornerDesignerComponent, decorators: [{
|
|
1344
|
+
type: Component,
|
|
1345
|
+
args: [{ selector: "svc-rating-question-content", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-rating-question-content\">\n <div class=\"svc-rating-question-controls svc-item-value-controls\">\n <svg *ngIf=\"adorner.allowRemove\" [iconName]=\"'icon-remove_16x16'\" [size]=\"16\" [key2click] (click)=\"adorner.removeItem(adorner)\"\n class=\"svc-item-value-controls__button svc-item-value-controls__remove\" [attr.title]=\"adorner.removeTooltip\" [attr.aria-label]=\"adorner.removeTooltip\" sv-ng-svg-icon></svg>\n <svg *ngIf=\"adorner.allowAdd\" [iconName]=\"'icon-add_16x16'\" [size]=\"16\" [key2click] (click)=\"adorner.addItem(adorner)\"\n class=\"svc-item-value-controls__button svc-item-value-controls__add\" [attr.title]=\"adorner.addTooltip\" [attr.aria-label]=\"adorner.addTooltip\"sv-ng-svg-icon></svg>\n </div>\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n</ng-template>" }]
|
|
1346
|
+
}], propDecorators: { componentName: [{
|
|
1347
|
+
type: Input
|
|
1348
|
+
}], componentData: [{
|
|
1349
|
+
type: Input
|
|
1350
|
+
}] } });
|
|
1351
|
+
AngularComponentFactory.Instance.registerComponent("svc-rating-question-content", QuestionRatingAdornerDesignerComponent);
|
|
1352
|
+
|
|
1353
|
+
class CreatorLogoImageComponent extends CreatorModelComponent {
|
|
1354
|
+
createModel() {
|
|
1355
|
+
this.model = new LogoImageViewModel(this.creator, null);
|
|
1356
|
+
}
|
|
1357
|
+
getModel() {
|
|
1358
|
+
return this.model;
|
|
1359
|
+
}
|
|
1360
|
+
getPropertiesToTrack() {
|
|
1361
|
+
return ["data"];
|
|
1362
|
+
}
|
|
1363
|
+
get creator() {
|
|
1364
|
+
return this.data;
|
|
1365
|
+
}
|
|
1366
|
+
get survey() {
|
|
1367
|
+
return this.creator.survey;
|
|
1368
|
+
}
|
|
1369
|
+
ngAfterViewInit() {
|
|
1370
|
+
this.model.root = this.container.nativeElement;
|
|
1371
|
+
}
|
|
1372
|
+
}
|
|
1373
|
+
CreatorLogoImageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CreatorLogoImageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1374
|
+
CreatorLogoImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CreatorLogoImageComponent, selector: "svc-logo-image", inputs: { data: "data" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-logo-image\" #container>\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" accept=\"image/*\" class=\"svc-choose-file-input\" />\n <ng-container *ngIf=\"!survey.locLogo.renderedHtml\">\n <ng-container *ngIf=\"model.allowEdit\">\n <div class=\"svc-logo-image-placeholder\" (click)=\"model.chooseFile(model)\" [key2click]>\n <svg>\n <use xlink:href=\"#icon-logo\"></use>\n </svg>\n </div>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"survey.locLogo.renderedHtml\">\n <div [class]=\"model.containerCss\" (click)=\"model.chooseFile(model)\" [key2click]>\n <sv-logo-image [data]=\"survey\"></sv-logo-image>\n </div>\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.LogoImageComponent, selector: "sv-logo-image", inputs: ["data"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
|
|
1375
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CreatorLogoImageComponent, decorators: [{
|
|
1376
|
+
type: Component,
|
|
1377
|
+
args: [{ selector: "svc-logo-image", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div class=\"svc-logo-image\" #container>\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" accept=\"image/*\" class=\"svc-choose-file-input\" />\n <ng-container *ngIf=\"!survey.locLogo.renderedHtml\">\n <ng-container *ngIf=\"model.allowEdit\">\n <div class=\"svc-logo-image-placeholder\" (click)=\"model.chooseFile(model)\" [key2click]>\n <svg>\n <use xlink:href=\"#icon-logo\"></use>\n </svg>\n </div>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"survey.locLogo.renderedHtml\">\n <div [class]=\"model.containerCss\" (click)=\"model.chooseFile(model)\" [key2click]>\n <sv-logo-image [data]=\"survey\"></sv-logo-image>\n </div>\n </ng-container>\n </div>\n</ng-template>" }]
|
|
1378
|
+
}], propDecorators: { data: [{
|
|
1379
|
+
type: Input
|
|
1380
|
+
}], container: [{
|
|
1381
|
+
type: ViewChild,
|
|
1382
|
+
args: ["container", { read: ElementRef }]
|
|
1383
|
+
}] } });
|
|
1384
|
+
AngularComponentFactory.Instance.registerComponent("svc-logo-image", CreatorLogoImageComponent);
|
|
1385
|
+
|
|
1386
|
+
class SurveyCreatorAngularModule {
|
|
1387
|
+
}
|
|
1388
|
+
SurveyCreatorAngularModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyCreatorAngularModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1389
|
+
SurveyCreatorAngularModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyCreatorAngularModule, declarations: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, SvgBundleComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarTabComponent, ObjectSelectorComponent, PropertyGridComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, LogicAddButtonComponent, ActionButtonComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, TestAgainActionComponent, SurveyResultsComponent, SurveyResultsTableRowComponent,
|
|
1390
|
+
AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
|
|
1391
|
+
QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
|
|
1392
|
+
ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, NotifierComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, ToolboxComponent, CreatorLogoImageComponent,
|
|
1393
|
+
QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent], imports: [CommonModule, FormsModule, SurveyAngularModule], exports: [CreatorComponent] });
|
|
1394
|
+
SurveyCreatorAngularModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyCreatorAngularModule, providers: [], imports: [[
|
|
1395
|
+
CommonModule, FormsModule, SurveyAngularModule
|
|
1396
|
+
]] });
|
|
1397
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SurveyCreatorAngularModule, decorators: [{
|
|
1398
|
+
type: NgModule,
|
|
1399
|
+
args: [{
|
|
1400
|
+
declarations: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, SvgBundleComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarTabComponent, ObjectSelectorComponent, PropertyGridComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, LogicAddButtonComponent, ActionButtonComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, TestAgainActionComponent, SurveyResultsComponent, SurveyResultsTableRowComponent,
|
|
1401
|
+
AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
|
|
1402
|
+
QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
|
|
1403
|
+
ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, NotifierComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, ToolboxComponent, CreatorLogoImageComponent,
|
|
1404
|
+
QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent],
|
|
1405
|
+
imports: [
|
|
1406
|
+
CommonModule, FormsModule, SurveyAngularModule
|
|
1407
|
+
],
|
|
1408
|
+
exports: [
|
|
1409
|
+
CreatorComponent
|
|
1410
|
+
],
|
|
1411
|
+
providers: [],
|
|
1412
|
+
}]
|
|
1413
|
+
}] });
|
|
1414
|
+
|
|
1415
|
+
/**
|
|
1416
|
+
* Generated bundle index. Do not edit.
|
|
1417
|
+
*/
|
|
1418
|
+
|
|
1419
|
+
export { CreatorComponent, SurveyCreatorAngularModule };
|
|
1420
|
+
//# sourceMappingURL=survey-creator-angular.mjs.map
|