survey-creator-angular 1.9.74 → 1.9.76
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 +14 -205
- package/bundles/survey-creator-angular.umd.js +2536 -0
- package/bundles/survey-creator-angular.umd.js.map +1 -0
- package/esm2015/adorners/cell-question-dropdown.component.js +34 -0
- package/esm2015/adorners/cell-question.component.js +28 -0
- package/esm2015/adorners/image-item-value.component.js +64 -0
- package/esm2015/adorners/item-value.component.js +48 -0
- package/esm2015/adorners/matrix-cell.component.js +50 -0
- package/esm2015/adorners/question-dropdown.component.js +62 -0
- package/esm2015/adorners/question-image.component.js +54 -0
- package/esm2015/adorners/question-rating.component.js +54 -0
- package/esm2015/angular-ui.js +53 -0
- package/esm2015/angular-ui.module.js +92 -0
- package/esm2015/components/action-button.component.js +48 -0
- package/esm2015/creator-model.component.js +40 -0
- package/esm2015/creator.component.js +52 -0
- package/esm2015/header/logo-image.component.js +44 -0
- package/esm2015/page-navigator/page-navigator-item.component.js +29 -0
- package/esm2015/page-navigator/page-navigator.component.js +59 -0
- package/esm2015/page.component.js +54 -0
- package/esm2015/panel.component.js +20 -0
- package/esm2015/property-panel/object-selector.component.js +24 -0
- package/esm2015/property-panel/property-grid.component.js +28 -0
- package/esm2015/question-editor.component.js +49 -0
- package/esm2015/question-widget.component.js +26 -0
- package/esm2015/question.component.js +55 -0
- package/esm2015/questions/logic-operator.component.js +40 -0
- package/esm2015/questions/question-embedded-survey.component.js +30 -0
- package/esm2015/questions/question-link-value.component.js +23 -0
- package/esm2015/row.component.js +36 -0
- package/esm2015/side-bar/side-bar-tab.component.js +23 -0
- package/esm2015/side-bar/side-bar.component.js +34 -0
- package/esm2015/string-editor.component.js +105 -0
- package/esm2015/survey-creator-angular.js +5 -0
- package/esm2015/svg-bundle.component.js +22 -0
- package/esm2015/tabbed-menu/tabbed-menu/tabbed-menu-item-wrapper.component.js +22 -0
- package/esm2015/tabbed-menu/tabbed-menu/tabbed-menu-item.component.js +23 -0
- package/esm2015/tabbed-menu/tabbed-menu/tabbed-menu.component.js +35 -0
- package/esm2015/tabs/designer/designer-pages.component.js +28 -0
- package/esm2015/tabs/designer/designer-survey.component.js +32 -0
- package/esm2015/tabs/designer/designer.component.js +33 -0
- package/esm2015/tabs/json/json-editor-ace.component.js +29 -0
- package/esm2015/tabs/json/json-editor-textarea.component.js +28 -0
- package/esm2015/tabs/logic/logic-add-btn.component.js +26 -0
- package/esm2015/tabs/logic/logic.component.js +25 -0
- package/esm2015/tabs/preview/simulator.component.js +36 -0
- package/esm2015/tabs/preview/survey-results-row.component.js +23 -0
- package/esm2015/tabs/preview/survey-results.component.js +34 -0
- package/esm2015/tabs/preview/test-again.component.js +22 -0
- package/esm2015/tabs/preview/test.component.js +27 -0
- package/esm2015/tabs/translation/translation-line-skeleton.component.js +17 -0
- package/esm2015/tabs/translation/translation.component.js +24 -0
- package/esm2015/toolbox/adaptive-toolbox.component.js +40 -0
- package/esm2015/toolbox/toolbox-category.component.js +26 -0
- package/esm2015/toolbox/toolbox-item.component.js +41 -0
- package/esm2015/toolbox/toolbox-tool.component.js +41 -0
- package/esm2015/toolbox/toolbox.component.js +28 -0
- package/esm2020/adorners/cell-question-dropdown.component.mjs +29 -29
- package/esm2020/adorners/cell-question.component.mjs +23 -23
- package/esm2020/adorners/image-item-value.component.mjs +59 -59
- package/esm2020/adorners/item-value.component.mjs +43 -43
- package/esm2020/adorners/matrix-cell.component.mjs +45 -45
- package/esm2020/adorners/question-dropdown.component.mjs +53 -53
- package/esm2020/adorners/question-image.component.mjs +44 -44
- package/esm2020/adorners/question-rating.component.mjs +45 -45
- package/esm2020/angular-ui.mjs +52 -52
- package/esm2020/angular-ui.module.mjs +91 -91
- package/esm2020/components/action-button.component.mjs +43 -43
- package/esm2020/creator-model.component.mjs +39 -39
- package/esm2020/creator.component.mjs +48 -48
- package/esm2020/header/logo-image.component.mjs +39 -39
- package/esm2020/page-navigator/page-navigator-item.component.mjs +24 -24
- package/esm2020/page-navigator/page-navigator.component.mjs +52 -52
- package/esm2020/page.component.mjs +48 -48
- package/esm2020/panel.component.mjs +15 -15
- package/esm2020/property-panel/object-selector.component.mjs +19 -19
- package/esm2020/property-panel/property-grid.component.mjs +23 -23
- package/esm2020/question-editor.component.mjs +45 -45
- package/esm2020/question-widget.component.mjs +21 -21
- package/esm2020/question.component.mjs +49 -49
- package/esm2020/questions/logic-operator.component.mjs +32 -32
- package/esm2020/questions/question-embedded-survey.component.mjs +25 -25
- package/esm2020/questions/question-link-value.component.mjs +18 -18
- package/esm2020/row.component.mjs +32 -32
- package/esm2020/side-bar/side-bar-tab.component.mjs +18 -18
- package/esm2020/side-bar/side-bar.component.mjs +29 -29
- package/esm2020/string-editor.component.mjs +98 -98
- package/esm2020/survey-creator-angular.mjs +4 -4
- package/esm2020/svg-bundle.component.mjs +21 -21
- package/esm2020/tabbed-menu/tabbed-menu/tabbed-menu-item-wrapper.component.mjs +17 -17
- package/esm2020/tabbed-menu/tabbed-menu/tabbed-menu-item.component.mjs +18 -18
- package/esm2020/tabbed-menu/tabbed-menu/tabbed-menu.component.mjs +30 -30
- package/esm2020/tabs/designer/designer-pages.component.mjs +23 -23
- package/esm2020/tabs/designer/designer-survey.component.mjs +27 -27
- package/esm2020/tabs/designer/designer.component.mjs +28 -28
- package/esm2020/tabs/json/json-editor-ace.component.mjs +24 -24
- package/esm2020/tabs/json/json-editor-textarea.component.mjs +23 -23
- package/esm2020/tabs/logic/logic-add-btn.component.mjs +21 -21
- package/esm2020/tabs/logic/logic.component.mjs +20 -20
- package/esm2020/tabs/preview/simulator.component.mjs +31 -31
- package/esm2020/tabs/preview/survey-results-row.component.mjs +18 -18
- package/esm2020/tabs/preview/survey-results.component.mjs +29 -29
- package/esm2020/tabs/preview/test-again.component.mjs +17 -17
- package/esm2020/tabs/preview/test.component.mjs +22 -22
- package/esm2020/tabs/translation/translation-line-skeleton.component.mjs +12 -12
- package/esm2020/tabs/translation/translation.component.mjs +19 -19
- package/esm2020/toolbox/adaptive-toolbox.component.mjs +34 -34
- package/esm2020/toolbox/toolbox-category.component.mjs +21 -21
- package/esm2020/toolbox/toolbox-item.component.mjs +36 -36
- package/esm2020/toolbox/toolbox-tool.component.mjs +36 -36
- package/esm2020/toolbox/toolbox.component.mjs +23 -23
- package/fesm2015/survey-creator-angular.js +1635 -0
- package/fesm2015/survey-creator-angular.js.map +1 -0
- package/fesm2015/survey-creator-angular.mjs +1430 -1430
- package/fesm2020/survey-creator-angular.mjs +1419 -1419
- package/package.json +10 -18
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { Component, Input } from "@angular/core";
|
|
2
|
-
import { AngularComponentFactory, BaseAngular } from "survey-angular-ui";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "survey-angular-ui";
|
|
5
|
-
export class CellQuestionComponent extends BaseAngular {
|
|
6
|
-
getModel() {
|
|
7
|
-
return this.model;
|
|
8
|
-
}
|
|
9
|
-
get model() {
|
|
10
|
-
return this.componentData.model;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
CellQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CellQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
14
|
-
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"] }] });
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CellQuestionComponent, decorators: [{
|
|
16
|
-
type: Component,
|
|
17
|
-
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>" }]
|
|
18
|
-
}], propDecorators: { componentName: [{
|
|
19
|
-
type: Input
|
|
20
|
-
}], componentData: [{
|
|
21
|
-
type: Input
|
|
22
|
-
}] } });
|
|
23
|
-
AngularComponentFactory.Instance.registerComponent("svc-cell-question", CellQuestionComponent);
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import { AngularComponentFactory, BaseAngular } from "survey-angular-ui";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "survey-angular-ui";
|
|
5
|
+
export class CellQuestionComponent extends BaseAngular {
|
|
6
|
+
getModel() {
|
|
7
|
+
return this.model;
|
|
8
|
+
}
|
|
9
|
+
get model() {
|
|
10
|
+
return this.componentData.model;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
CellQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CellQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
14
|
+
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"] }] });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CellQuestionComponent, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
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>" }]
|
|
18
|
+
}], propDecorators: { componentName: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}], componentData: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}] } });
|
|
23
|
+
AngularComponentFactory.Instance.registerComponent("svc-cell-question", CellQuestionComponent);
|
|
24
24
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1xdWVzdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWRvcm5lcnMvY2VsbC1xdWVzdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zcmMvYWRvcm5lcnMvY2VsbC1xdWVzdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQU96RSxNQUFNLE9BQU8scUJBQTBDLFNBQVEsV0FBYztJQUdqRSxRQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDOztrSEFSVSxxQkFBcUI7c0dBQXJCLHFCQUFxQiw0SkNUbEMsNlJBTWM7MkZER0QscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLG1CQUFtQixVQUVyQixDQUFDLDBCQUEwQixDQUFDOzhCQUczQixhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7O0FBUVIsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixFQUFFLHFCQUFxQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSwgQmFzZUFuZ3VsYXIgfSBmcm9tIFwic3VydmV5LWFuZ3VsYXItdWlcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2Yy1jZWxsLXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vY2VsbC1xdWVzdGlvbi5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXVxufSlcbmV4cG9ydCBjbGFzcyBDZWxsUXVlc3Rpb25Db21wb25lbnQ8VCBleHRlbmRzIFF1ZXN0aW9uPiBleHRlbmRzIEJhc2VBbmd1bGFyPFQ+IHtcbiAgQElucHV0KCkgY29tcG9uZW50TmFtZSE6IHN0cmluZztcbiAgQElucHV0KCkgY29tcG9uZW50RGF0YSE6IGFueTtcbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IFQge1xuICAgIHJldHVybiB0aGlzLm1vZGVsO1xuICB9XG4gIHB1YmxpYyBnZXQgbW9kZWwoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50RGF0YS5tb2RlbDtcbiAgfVxufVxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJzdmMtY2VsbC1xdWVzdGlvblwiLCBDZWxsUXVlc3Rpb25Db21wb25lbnQpOyIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJzdmMtcXVlc3Rpb25fX2Fkb3JuZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwic3ZjLXF1ZXN0aW9uX19jb250ZW50IHN2Yy1xdWVzdGlvbl9fY29udGVudC0tc2VsZWN0ZWQtbm8tYm9yZGVyXCI+XG4gICAgICA8bmctdGVtcGxhdGUgW2NvbXBvbmVudF09XCJ7IG5hbWU6IGNvbXBvbmVudE5hbWUsIGRhdGE6IGNvbXBvbmVudERhdGEgfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
import { Component, ElementRef, Input, ViewChild } from "@angular/core";
|
|
2
|
-
import { AngularComponentFactory } from "survey-angular-ui";
|
|
3
|
-
import { ImageItemValueWrapperViewModel } from "survey-creator-core";
|
|
4
|
-
import { CreatorModelComponent } from "../creator-model.component";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "survey-angular-ui";
|
|
7
|
-
import * as i2 from "@angular/common";
|
|
8
|
-
export class ImageItemValueDesignerComponent extends CreatorModelComponent {
|
|
9
|
-
get creator() {
|
|
10
|
-
return this.componentData.data.creator;
|
|
11
|
-
}
|
|
12
|
-
get question() {
|
|
13
|
-
return this.componentData.question;
|
|
14
|
-
}
|
|
15
|
-
get item() {
|
|
16
|
-
return this.componentData.model;
|
|
17
|
-
}
|
|
18
|
-
createModel() {
|
|
19
|
-
if (this.componentData) {
|
|
20
|
-
this.adorner = new ImageItemValueWrapperViewModel(this.creator, this.question, this.item, null, null);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
getPropertiesToTrack() {
|
|
24
|
-
return ["creator", "question", "item"];
|
|
25
|
-
}
|
|
26
|
-
getModel() {
|
|
27
|
-
return this.adorner;
|
|
28
|
-
}
|
|
29
|
-
get showDragDropGhostOnTop() {
|
|
30
|
-
return this.adorner.ghostPosition === "top";
|
|
31
|
-
}
|
|
32
|
-
get showDragDropGhostOnBottom() {
|
|
33
|
-
return this.adorner.ghostPosition === "bottom";
|
|
34
|
-
}
|
|
35
|
-
blockEvent(event) {
|
|
36
|
-
event.stopPropagation();
|
|
37
|
-
}
|
|
38
|
-
getNewItemStyle() {
|
|
39
|
-
const needStyle = !this.adorner.getIsNewItemSingle();
|
|
40
|
-
return { width: needStyle ? this.question.renderedImageWidth : undefined, height: needStyle ? this.question.renderedImageHeight : undefined };
|
|
41
|
-
}
|
|
42
|
-
ngAfterViewInit() {
|
|
43
|
-
this.adorner.itemsRoot = this.container.nativeElement;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
ImageItemValueDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImageItemValueDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
-
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"] }] });
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImageItemValueDesignerComponent, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
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>" }]
|
|
51
|
-
}], propDecorators: { componentName: [{
|
|
52
|
-
type: Input
|
|
53
|
-
}], componentData: [{
|
|
54
|
-
type: Input
|
|
55
|
-
}], container: [{
|
|
56
|
-
type: ViewChild,
|
|
57
|
-
args: ["container", { read: ElementRef }]
|
|
58
|
-
}] } });
|
|
59
|
-
AngularComponentFactory.Instance.registerComponent("svc-image-item-value", ImageItemValueDesignerComponent);
|
|
1
|
+
import { Component, ElementRef, Input, ViewChild } from "@angular/core";
|
|
2
|
+
import { AngularComponentFactory } from "survey-angular-ui";
|
|
3
|
+
import { ImageItemValueWrapperViewModel } from "survey-creator-core";
|
|
4
|
+
import { CreatorModelComponent } from "../creator-model.component";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "survey-angular-ui";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
export class ImageItemValueDesignerComponent extends CreatorModelComponent {
|
|
9
|
+
get creator() {
|
|
10
|
+
return this.componentData.data.creator;
|
|
11
|
+
}
|
|
12
|
+
get question() {
|
|
13
|
+
return this.componentData.question;
|
|
14
|
+
}
|
|
15
|
+
get item() {
|
|
16
|
+
return this.componentData.model;
|
|
17
|
+
}
|
|
18
|
+
createModel() {
|
|
19
|
+
if (this.componentData) {
|
|
20
|
+
this.adorner = new ImageItemValueWrapperViewModel(this.creator, this.question, this.item, null, null);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
getPropertiesToTrack() {
|
|
24
|
+
return ["creator", "question", "item"];
|
|
25
|
+
}
|
|
26
|
+
getModel() {
|
|
27
|
+
return this.adorner;
|
|
28
|
+
}
|
|
29
|
+
get showDragDropGhostOnTop() {
|
|
30
|
+
return this.adorner.ghostPosition === "top";
|
|
31
|
+
}
|
|
32
|
+
get showDragDropGhostOnBottom() {
|
|
33
|
+
return this.adorner.ghostPosition === "bottom";
|
|
34
|
+
}
|
|
35
|
+
blockEvent(event) {
|
|
36
|
+
event.stopPropagation();
|
|
37
|
+
}
|
|
38
|
+
getNewItemStyle() {
|
|
39
|
+
const needStyle = !this.adorner.getIsNewItemSingle();
|
|
40
|
+
return { width: needStyle ? this.question.renderedImageWidth : undefined, height: needStyle ? this.question.renderedImageHeight : undefined };
|
|
41
|
+
}
|
|
42
|
+
ngAfterViewInit() {
|
|
43
|
+
this.adorner.itemsRoot = this.container.nativeElement;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
ImageItemValueDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImageItemValueDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
+
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"] }] });
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImageItemValueDesignerComponent, decorators: [{
|
|
49
|
+
type: Component,
|
|
50
|
+
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>" }]
|
|
51
|
+
}], propDecorators: { componentName: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], componentData: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], container: [{
|
|
56
|
+
type: ViewChild,
|
|
57
|
+
args: ["container", { read: ElementRef }]
|
|
58
|
+
}] } });
|
|
59
|
+
AngularComponentFactory.Instance.registerComponent("svc-image-item-value", ImageItemValueDesignerComponent);
|
|
60
60
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtaXRlbS12YWx1ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWRvcm5lcnMvaW1hZ2UtaXRlbS12YWx1ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zcmMvYWRvcm5lcnMvaW1hZ2UtaXRlbS12YWx1ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTVELE9BQU8sRUFBZSw4QkFBOEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBT25FLE1BQU0sT0FBTywrQkFBZ0MsU0FBUSxxQkFBcUQ7SUFLeEcsSUFBWSxPQUFPO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3pDLENBQUM7SUFDRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQztJQUNyQyxDQUFDO0lBQ0QsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBQ1MsV0FBVztRQUNuQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLDhCQUE4QixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFPLElBQUksRUFBTyxJQUFJLENBQUMsQ0FBQztTQUNqSDtJQUNILENBQUM7SUFDUyxvQkFBb0I7UUFDNUIsT0FBTyxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUNTLFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFJLHNCQUFzQjtRQUN4QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxLQUFLLEtBQUssQ0FBQztJQUM5QyxDQUFDO0lBQ0QsSUFBSSx5QkFBeUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsS0FBSyxRQUFRLENBQUM7SUFDakQsQ0FBQztJQUNNLFVBQVUsQ0FBQyxLQUFpQjtRQUNqQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUNyRCxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2hKLENBQUM7SUFDTSxlQUFlO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO0lBQ3hELENBQUM7OzRIQTFDVSwrQkFBK0I7Z0hBQS9CLCtCQUErQiwyTkFHVixVQUFVLG9EQ2Y1Qyw0MkZBNENjOzJGRGhDRCwrQkFBK0I7a0JBTDNDLFNBQVM7K0JBQ0Usc0JBQXNCLFVBRXhCLENBQUMsMEJBQTBCLENBQUM7OEJBRzNCLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDd0MsU0FBUztzQkFBdEQsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFOztBQTBDOUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLHNCQUFzQixFQUFFLCtCQUErQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCJzdXJ2ZXktYW5ndWxhci11aVwiO1xuaW1wb3J0IHsgSW1hZ2VJdGVtVmFsdWUsIFF1ZXN0aW9uSW1hZ2VQaWNrZXJNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQ3JlYXRvckJhc2UsIEltYWdlSXRlbVZhbHVlV3JhcHBlclZpZXdNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY3JlYXRvci1jb3JlXCI7XG5pbXBvcnQgeyBDcmVhdG9yTW9kZWxDb21wb25lbnQgfSBmcm9tIFwiLi4vY3JlYXRvci1tb2RlbC5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2Yy1pbWFnZS1pdGVtLXZhbHVlXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW1hZ2UtaXRlbS12YWx1ZS5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXVxufSlcbmV4cG9ydCBjbGFzcyBJbWFnZUl0ZW1WYWx1ZURlc2lnbmVyQ29tcG9uZW50IGV4dGVuZHMgQ3JlYXRvck1vZGVsQ29tcG9uZW50PEltYWdlSXRlbVZhbHVlV3JhcHBlclZpZXdNb2RlbD4ge1xuICBASW5wdXQoKSBjb21wb25lbnROYW1lITogc3RyaW5nO1xuICBASW5wdXQoKSBjb21wb25lbnREYXRhITogYW55O1xuICBAVmlld0NoaWxkKFwiY29udGFpbmVyXCIsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBjb250YWluZXIhOiBFbGVtZW50UmVmO1xuICBwdWJsaWMgYWRvcm5lciE6IEltYWdlSXRlbVZhbHVlV3JhcHBlclZpZXdNb2RlbDtcbiAgcHJpdmF0ZSBnZXQgY3JlYXRvcigpOiBDcmVhdG9yQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50RGF0YS5kYXRhLmNyZWF0b3I7XG4gIH1cbiAgcHVibGljIGdldCBxdWVzdGlvbigpOiBRdWVzdGlvbkltYWdlUGlja2VyTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudERhdGEucXVlc3Rpb247XG4gIH1cbiAgcHVibGljIGdldCBpdGVtKCk6IEltYWdlSXRlbVZhbHVlIHtcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnREYXRhLm1vZGVsO1xuICB9XG4gIHByb3RlY3RlZCBjcmVhdGVNb2RlbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jb21wb25lbnREYXRhKSB7XG4gICAgICB0aGlzLmFkb3JuZXIgPSBuZXcgSW1hZ2VJdGVtVmFsdWVXcmFwcGVyVmlld01vZGVsKHRoaXMuY3JlYXRvciwgdGhpcy5xdWVzdGlvbiwgdGhpcy5pdGVtLCA8YW55Pm51bGwsIDxhbnk+bnVsbCk7XG4gICAgfVxuICB9XG4gIHByb3RlY3RlZCBnZXRQcm9wZXJ0aWVzVG9UcmFjaygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFtcImNyZWF0b3JcIiwgXCJxdWVzdGlvblwiLCBcIml0ZW1cIl07XG4gIH1cbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IEltYWdlSXRlbVZhbHVlV3JhcHBlclZpZXdNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuYWRvcm5lcjtcbiAgfVxuXG4gIGdldCBzaG93RHJhZ0Ryb3BHaG9zdE9uVG9wKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFkb3JuZXIuZ2hvc3RQb3NpdGlvbiA9PT0gXCJ0b3BcIjtcbiAgfVxuICBnZXQgc2hvd0RyYWdEcm9wR2hvc3RPbkJvdHRvbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hZG9ybmVyLmdob3N0UG9zaXRpb24gPT09IFwiYm90dG9tXCI7XG4gIH1cbiAgcHVibGljIGJsb2NrRXZlbnQoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIGdldE5ld0l0ZW1TdHlsZSgpOiBhbnkge1xuICAgIGNvbnN0IG5lZWRTdHlsZSA9ICF0aGlzLmFkb3JuZXIuZ2V0SXNOZXdJdGVtU2luZ2xlKCk7XG4gICAgcmV0dXJuIHsgd2lkdGg6IG5lZWRTdHlsZSA/IHRoaXMucXVlc3Rpb24ucmVuZGVyZWRJbWFnZVdpZHRoIDogdW5kZWZpbmVkLCBoZWlnaHQ6IG5lZWRTdHlsZSA/IHRoaXMucXVlc3Rpb24ucmVuZGVyZWRJbWFnZUhlaWdodCA6IHVuZGVmaW5lZCB9O1xuICB9XG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5hZG9ybmVyLml0ZW1zUm9vdCA9IHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJzdmMtaW1hZ2UtaXRlbS12YWx1ZVwiLCBJbWFnZUl0ZW1WYWx1ZURlc2lnbmVyQ29tcG9uZW50KTtcbiIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxkaXYgKHBvaW50ZXJkb3duKT1cImFkb3JuZXIub25Qb2ludGVyRG93bigkZXZlbnQpXCIgW2NsYXNzXT1cImFkb3JuZXIuZ2V0Um9vdENzcygpXCIgW2F0dHIuZGF0YS1zdi1kcm9wLXRhcmdldC1pdGVtLXZhbHVlXT1cImFkb3JuZXIuaXNEcmFnZ2FibGUgPyB0aGlzLml0ZW0udmFsdWUgOiBudWxsXCIgI2NvbnRhaW5lcj5cbiAgICA8ZGl2IGNsYXNzPVwic3ZjLWltYWdlLWl0ZW0tdmFsdWUtd3JhcHBlcl9fZ2hvc3RcIiBbc3R5bGVdPVwiZ2V0TmV3SXRlbVN0eWxlKClcIj48L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJzdmMtaW1hZ2UtaXRlbS12YWx1ZS13cmFwcGVyX19jb250ZW50XCI+XG4gICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB0YWJpbmRleD1cIi0xXCIgYWNjZXB0PVwiaW1hZ2UvKlwiIGNsYXNzPVwic3ZjLWNob29zZS1maWxlLWlucHV0XCIgLz5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhZG9ybmVyLmlzTmV3XCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCIhYWRvcm5lci5pc05ld1wiIGNsYXNzPVwic3ZjLWltYWdlLWl0ZW0tdmFsdWVfX2l0ZW1cIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgW2NvbXBvbmVudF09XCJ7IG5hbWU6IGNvbXBvbmVudE5hbWUsIGRhdGE6IGNvbXBvbmVudERhdGEgfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c3BhbiBjbGFzcz1cInN2Yy1pbWFnZS1pdGVtLXZhbHVlLWNvbnRyb2xzX19idXR0b24gc3ZjLWltYWdlLWl0ZW0tdmFsdWUtY29udHJvbHNfX2RyYWctYXJlYS1pbmRpY2F0b3JcIiAocG9pbnRlcmRvd24pPVwiYWRvcm5lci5vblBvaW50ZXJEb3duKCRldmVudClcIiBbYXR0ci50aXRsZV09XCJ1bmRlZmluZWRcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInVuZGVmaW5lZFwiPlxuICAgICAgICAgIDxzdmcgW2ljb25OYW1lXT1cIidpY29uLWRyYWctYXJlYS1pbmRpY2F0b3InXCIgW3NpemVdPVwiMjRcIiBzdi1uZy1zdmctaWNvbj48L3N2Zz5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic3ZjLWltYWdlLWl0ZW0tdmFsdWUtY29udHJvbHNcIiBkYXRhLWJpbmQ9XCJldmVudDogeyBwb2ludGVyZG93bjogYmxvY2tFdmVudCB9XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFkb3JuZXIuYWxsb3dSZW1vdmVcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZjLWltYWdlLWl0ZW0tdmFsdWUtY29udHJvbHNfX2J1dHRvbiBzdmMtaW1hZ2UtaXRlbS12YWx1ZS1jb250cm9sc19fY2hvb3NlLWZpbGVcIiAoY2xpY2spPVwiYWRvcm5lci5jaG9vc2VGaWxlKGFkb3JuZXIpXCIgW2tleTJjbGlja10gW2F0dHIudGl0bGVdPVwidW5kZWZpbmVkXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJ1bmRlZmluZWRcIj5cbiAgICAgICAgICAgICAgPHN2ZyBbaWNvbk5hbWVdPVwiJ2ljb24tZmlsZSdcIiBbc2l6ZV09XCIyNFwiIHN2LW5nLXN2Zy1pY29uPjwvc3ZnPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmMtaW1hZ2UtaXRlbS12YWx1ZS1jb250cm9sc19fYnV0dG9uIHN2Yy1pbWFnZS1pdGVtLXZhbHVlLWNvbnRyb2xzX19yZW1vdmVcIiAoY2xpY2spPVwiYWRvcm5lci5yZW1vdmUoYWRvcm5lcilcIiBba2V5MmNsaWNrXSBbYXR0ci50aXRsZV09XCJ1bmRlZmluZWRcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInVuZGVmaW5lZFwiPlxuICAgICAgICAgICAgICA8c3ZnIFtpY29uTmFtZV09XCInaWNvbi1kZWxldGUnXCIgW3NpemVdPVwiMjRcIiBzdi1uZy1zdmctaWNvbj48L3N2Zz5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFkb3JuZXIuaXNOZXdcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInN2Yy1pbWFnZS1pdGVtLXZhbHVlX19pdGVtXCJcbiAgICAgICAgICBkYXRhLWJpbmQ9XCJldmVudDogeyBkcmFnb3ZlcjogZHJhZ292ZXIsIGRyb3A6IGRyb3AsIGRyYWdsZWF2ZTogZHJhZ2xlYXZlIH1cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2QtaW1hZ2VwaWNrZXJfX2l0ZW0gc2QtaW1hZ2VwaWNrZXJfX2l0ZW0tLWlubGluZVwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2QtaW1hZ2VwaWNrZXJfX2xhYmVsXCI+XG4gICAgICAgICAgICAgIDxkaXYgW3N0eWxlXT1cImdldE5ld0l0ZW1TdHlsZSgpXCIgY2xhc3M9XCJzZC1pbWFnZXBpY2tlcl9faW1hZ2VcIj48L2Rpdj5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdmMtaW1hZ2UtaXRlbS12YWx1ZS1jb250cm9sc1wiIGRhdGEtYmluZD1cImV2ZW50OiB7IHBvaW50ZXJkb3duOiBibG9ja0V2ZW50IH1cIj5cbiAgICAgICAgICA8c3BhbiAgY2xhc3M9XCJzdmMtaW1hZ2UtaXRlbS12YWx1ZS1jb250cm9sc19fYnV0dG9uIHN2Yy1pbWFnZS1pdGVtLXZhbHVlLWNvbnRyb2xzX19hZGRcIiBba2V5MmNsaWNrXSAoY2xpY2spPVwiYWRvcm5lci5jaG9vc2VOZXdGaWxlKGFkb3JuZXIpXCIgW2F0dHIudGl0bGVdPVwidW5kZWZpbmVkXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJ1bmRlZmluZWRcIj5cbiAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJhZG9ybmVyLmFsbG93QWRkXCIgW2ljb25OYW1lXT1cIidpY29uLWFkZC1sZydcIiBbc2l6ZV09XCIyNFwiIHN2LW5nLXN2Zy1pY29uPjwvc3ZnPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
import { Component, Input } from "@angular/core";
|
|
2
|
-
import { AngularComponentFactory } from "survey-angular-ui";
|
|
3
|
-
import { ItemValueWrapperViewModel } from "survey-creator-core";
|
|
4
|
-
import { CreatorModelComponent } from "../creator-model.component";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "survey-angular-ui";
|
|
7
|
-
import * as i2 from "@angular/common";
|
|
8
|
-
export class ItemValueDesignerComponent extends CreatorModelComponent {
|
|
9
|
-
get creator() {
|
|
10
|
-
return this.componentData.data.creator;
|
|
11
|
-
}
|
|
12
|
-
get question() {
|
|
13
|
-
return this.componentData.question;
|
|
14
|
-
}
|
|
15
|
-
get item() {
|
|
16
|
-
return this.componentData.model;
|
|
17
|
-
}
|
|
18
|
-
onBlur(event) {
|
|
19
|
-
this.adorner.onFocusOut(event);
|
|
20
|
-
}
|
|
21
|
-
createModel() {
|
|
22
|
-
if (this.componentData) {
|
|
23
|
-
this.adorner = new ItemValueWrapperViewModel(this.creator, this.question, this.item);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
getPropertiesToTrack() {
|
|
27
|
-
return ["creator", "question", "item"];
|
|
28
|
-
}
|
|
29
|
-
getModel() {
|
|
30
|
-
return this.adorner;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
ItemValueDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ItemValueDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
-
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\" sv-ng-svg-icon></svg>\n </span>\n <span *ngIf=\"adorner.allowAdd\" class=\"svc-item-value-controls__button svc-item-value-controls__add\" [key2click]\n (click)=\"adorner.add(adorner)\" [attr.aria-label]=\"undefined\"><svg [iconName]=\"'icon-add_16x16'\" [size]=\"16\"\n [attr.title]=\"undefined\" sv-ng-svg-icon></svg></span>\n <span *ngIf=\"adorner.allowRemove\" class=\"svc-item-value-controls__button svc-item-value-controls__remove\"\n [key2click] (click)=\"adorner.remove(adorner)\" (blur)=\"onBlur($event)\" [attr.aria-label]=\"undefined\"><svg\n [iconName]=\"'icon-remove_16x16'\" [size]=\"16\" [attr.title]=\"undefined\" sv-ng-svg-icon></svg></span>\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"] }] });
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ItemValueDesignerComponent, decorators: [{
|
|
36
|
-
type: Component,
|
|
37
|
-
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\" sv-ng-svg-icon></svg>\n </span>\n <span *ngIf=\"adorner.allowAdd\" class=\"svc-item-value-controls__button svc-item-value-controls__add\" [key2click]\n (click)=\"adorner.add(adorner)\" [attr.aria-label]=\"undefined\"><svg [iconName]=\"'icon-add_16x16'\" [size]=\"16\"\n [attr.title]=\"undefined\" sv-ng-svg-icon></svg></span>\n <span *ngIf=\"adorner.allowRemove\" class=\"svc-item-value-controls__button svc-item-value-controls__remove\"\n [key2click] (click)=\"adorner.remove(adorner)\" (blur)=\"onBlur($event)\" [attr.aria-label]=\"undefined\"><svg\n [iconName]=\"'icon-remove_16x16'\" [size]=\"16\" [attr.title]=\"undefined\" sv-ng-svg-icon></svg></span>\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>" }]
|
|
38
|
-
}], propDecorators: { componentName: [{
|
|
39
|
-
type: Input
|
|
40
|
-
}], componentData: [{
|
|
41
|
-
type: Input
|
|
42
|
-
}] } });
|
|
43
|
-
AngularComponentFactory.Instance.registerComponent("svc-item-value", ItemValueDesignerComponent);
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import { AngularComponentFactory } from "survey-angular-ui";
|
|
3
|
+
import { ItemValueWrapperViewModel } from "survey-creator-core";
|
|
4
|
+
import { CreatorModelComponent } from "../creator-model.component";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "survey-angular-ui";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
export class ItemValueDesignerComponent extends CreatorModelComponent {
|
|
9
|
+
get creator() {
|
|
10
|
+
return this.componentData.data.creator;
|
|
11
|
+
}
|
|
12
|
+
get question() {
|
|
13
|
+
return this.componentData.question;
|
|
14
|
+
}
|
|
15
|
+
get item() {
|
|
16
|
+
return this.componentData.model;
|
|
17
|
+
}
|
|
18
|
+
onBlur(event) {
|
|
19
|
+
this.adorner.onFocusOut(event);
|
|
20
|
+
}
|
|
21
|
+
createModel() {
|
|
22
|
+
if (this.componentData) {
|
|
23
|
+
this.adorner = new ItemValueWrapperViewModel(this.creator, this.question, this.item);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
getPropertiesToTrack() {
|
|
27
|
+
return ["creator", "question", "item"];
|
|
28
|
+
}
|
|
29
|
+
getModel() {
|
|
30
|
+
return this.adorner;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
ItemValueDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ItemValueDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
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\" sv-ng-svg-icon></svg>\n </span>\n <span *ngIf=\"adorner.allowAdd\" class=\"svc-item-value-controls__button svc-item-value-controls__add\" [key2click]\n (click)=\"adorner.add(adorner)\" [attr.aria-label]=\"undefined\"><svg [iconName]=\"'icon-add_16x16'\" [size]=\"16\"\n [attr.title]=\"undefined\" sv-ng-svg-icon></svg></span>\n <span *ngIf=\"adorner.allowRemove\" class=\"svc-item-value-controls__button svc-item-value-controls__remove\"\n [key2click] (click)=\"adorner.remove(adorner)\" (blur)=\"onBlur($event)\" [attr.aria-label]=\"undefined\"><svg\n [iconName]=\"'icon-remove_16x16'\" [size]=\"16\" [attr.title]=\"undefined\" sv-ng-svg-icon></svg></span>\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"] }] });
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ItemValueDesignerComponent, decorators: [{
|
|
36
|
+
type: Component,
|
|
37
|
+
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\" sv-ng-svg-icon></svg>\n </span>\n <span *ngIf=\"adorner.allowAdd\" class=\"svc-item-value-controls__button svc-item-value-controls__add\" [key2click]\n (click)=\"adorner.add(adorner)\" [attr.aria-label]=\"undefined\"><svg [iconName]=\"'icon-add_16x16'\" [size]=\"16\"\n [attr.title]=\"undefined\" sv-ng-svg-icon></svg></span>\n <span *ngIf=\"adorner.allowRemove\" class=\"svc-item-value-controls__button svc-item-value-controls__remove\"\n [key2click] (click)=\"adorner.remove(adorner)\" (blur)=\"onBlur($event)\" [attr.aria-label]=\"undefined\"><svg\n [iconName]=\"'icon-remove_16x16'\" [size]=\"16\" [attr.title]=\"undefined\" sv-ng-svg-icon></svg></span>\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>" }]
|
|
38
|
+
}], propDecorators: { componentName: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], componentData: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}] } });
|
|
43
|
+
AngularComponentFactory.Instance.registerComponent("svc-item-value", ItemValueDesignerComponent);
|
|
44
44
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS12YWx1ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWRvcm5lcnMvaXRlbS12YWx1ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zcmMvYWRvcm5lcnMvaXRlbS12YWx1ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx1QkFBdUIsRUFBNkMsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RyxPQUFPLEVBQWUseUJBQXlCLEVBQTRCLE1BQU0scUJBQXFCLENBQUM7QUFDdkcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFPbkUsTUFBTSxPQUFPLDBCQUEyQixTQUFRLHFCQUFnRDtJQUk5RixJQUFZLE9BQU87UUFDakIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDekMsQ0FBQztJQUNELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO0lBQ3JDLENBQUM7SUFDRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQ2xDLENBQUM7SUFDTSxNQUFNLENBQUMsS0FBVTtRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQ1MsV0FBVztRQUNuQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLHlCQUF5QixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEY7SUFDSCxDQUFDO0lBQ1Msb0JBQW9CO1FBQzVCLE9BQU8sQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFDUyxRQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDOzt1SEExQlUsMEJBQTBCOzJHQUExQiwwQkFBMEIseUpDWnZDLGt2REFzQmM7MkZEVkQsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLGdCQUFnQixVQUVsQixDQUFDLDBCQUEwQixDQUFDOzhCQUczQixhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7O0FBMkJSLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRSwwQkFBMEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSwgQmFzZUFuZ3VsYXIsIEVtYmVkZGVkVmlld0NvbnRlbnRDb21wb25lbnQgfSBmcm9tIFwic3VydmV5LWFuZ3VsYXItdWlcIjtcbmltcG9ydCB7IEl0ZW1WYWx1ZSwgUGFnZU1vZGVsLCBQYW5lbE1vZGVsLCBRdWVzdGlvbiwgUXVlc3Rpb25TZWxlY3RCYXNlLCBTdXJ2ZXlNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQ3JlYXRvckJhc2UsIEl0ZW1WYWx1ZVdyYXBwZXJWaWV3TW9kZWwsIFF1ZXN0aW9uQWRvcm5lclZpZXdNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY3JlYXRvci1jb3JlXCI7XG5pbXBvcnQgeyBDcmVhdG9yTW9kZWxDb21wb25lbnQgfSBmcm9tIFwiLi4vY3JlYXRvci1tb2RlbC5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2Yy1pdGVtLXZhbHVlXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vaXRlbS12YWx1ZS5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXVxufSlcbmV4cG9ydCBjbGFzcyBJdGVtVmFsdWVEZXNpZ25lckNvbXBvbmVudCBleHRlbmRzIENyZWF0b3JNb2RlbENvbXBvbmVudDxJdGVtVmFsdWVXcmFwcGVyVmlld01vZGVsPiB7XG4gIEBJbnB1dCgpIGNvbXBvbmVudE5hbWUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvbXBvbmVudERhdGEhOiBhbnk7XG4gIHB1YmxpYyBhZG9ybmVyITogSXRlbVZhbHVlV3JhcHBlclZpZXdNb2RlbDtcbiAgcHJpdmF0ZSBnZXQgY3JlYXRvcigpOiBDcmVhdG9yQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50RGF0YS5kYXRhLmNyZWF0b3I7XG4gIH1cbiAgcHVibGljIGdldCBxdWVzdGlvbigpOiBRdWVzdGlvblNlbGVjdEJhc2Uge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudERhdGEucXVlc3Rpb247XG4gIH1cbiAgcHVibGljIGdldCBpdGVtKCk6IEl0ZW1WYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50RGF0YS5tb2RlbDtcbiAgfVxuICBwdWJsaWMgb25CbHVyKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLmFkb3JuZXIub25Gb2N1c091dChldmVudCk7XG4gIH1cbiAgcHJvdGVjdGVkIGNyZWF0ZU1vZGVsKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNvbXBvbmVudERhdGEpIHtcbiAgICAgIHRoaXMuYWRvcm5lciA9IG5ldyBJdGVtVmFsdWVXcmFwcGVyVmlld01vZGVsKHRoaXMuY3JlYXRvciwgdGhpcy5xdWVzdGlvbiwgdGhpcy5pdGVtKTtcbiAgICB9XG4gIH1cbiAgcHJvdGVjdGVkIGdldFByb3BlcnRpZXNUb1RyYWNrKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gW1wiY3JlYXRvclwiLCBcInF1ZXN0aW9uXCIsIFwiaXRlbVwiXTtcbiAgfVxuICBwcm90ZWN0ZWQgZ2V0TW9kZWwoKTogSXRlbVZhbHVlV3JhcHBlclZpZXdNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuYWRvcm5lcjtcbiAgfVxufVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChcInN2Yy1pdGVtLXZhbHVlXCIsIEl0ZW1WYWx1ZURlc2lnbmVyQ29tcG9uZW50KTtcbiIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJzdmMtaXRlbS12YWx1ZS13cmFwcGVyXCIgKHBvaW50ZXJkb3duKT1cImFkb3JuZXIub25Qb2ludGVyRG93bigkZXZlbnQpXCJcbiAgICBbYXR0ci5kYXRhLXN2LWRyb3AtdGFyZ2V0LWl0ZW0tdmFsdWVdPVwiYWRvcm5lci5pc0RyYWdnYWJsZSA/IGl0ZW0udmFsdWUgOiBudWxsXCJcbiAgICBbbmdDbGFzc109XCJ7J3N2Yy1pdGVtLXZhbHVlLS1uZXcnOiBhZG9ybmVyLmlzTmV3LCAnc3ZjLWl0ZW0tdmFsdWUtLWRyYWdnaW5nJzogYWRvcm5lci5pc0RyYWdnaW5nLCAnc3ZjLWl0ZW0tdmFsdWUtLWdob3N0JzogYWRvcm5lci5pc0RyYWdEcm9wR2hvc3QsICdzdmMtaXRlbS12YWx1ZS0tbW92ZWRvd24nOiBhZG9ybmVyLmlzRHJhZ0Ryb3BNb3ZlRG93biwgJ3N2Yy1pdGVtLXZhbHVlLS1tb3ZldXAnOiBhZG9ybmVyLmlzRHJhZ0Ryb3BNb3ZlVXB9XCI+XG4gICAgPGRpdiBjbGFzcz1cInN2Yy1pdGVtLXZhbHVlX19naG9zdFwiPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJzdmMtaXRlbS12YWx1ZS1jb250cm9sc1wiPlxuICAgICAgPHNwYW4gKm5nSWY9XCJhZG9ybmVyLmlzRHJhZ2dhYmxlXCIgY2xhc3M9XCJzdmMtaXRlbS12YWx1ZS1jb250cm9sc19fYnV0dG9uIHN2Yy1pdGVtLXZhbHVlLWNvbnRyb2xzX19kcmFnXCI+XG4gICAgICAgIDxzdmcgY2xhc3M9XCJzdmMtaXRlbS12YWx1ZS1jb250cm9sc19fZHJhZy1pY29uXCIgW2ljb25OYW1lXT1cIidpY29uLWRyYWctYXJlYS1pbmRpY2F0b3InXCIgW3NpemVdPVwiMjRcIlxuICAgICAgICAgIFthdHRyLnRpdGxlXT1cImFkb3JuZXIuZHJhZ1Rvb2x0aXBcIiBzdi1uZy1zdmctaWNvbj48L3N2Zz5cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuICpuZ0lmPVwiYWRvcm5lci5hbGxvd0FkZFwiIGNsYXNzPVwic3ZjLWl0ZW0tdmFsdWUtY29udHJvbHNfX2J1dHRvbiBzdmMtaXRlbS12YWx1ZS1jb250cm9sc19fYWRkXCIgW2tleTJjbGlja11cbiAgICAgICAgKGNsaWNrKT1cImFkb3JuZXIuYWRkKGFkb3JuZXIpXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJ1bmRlZmluZWRcIj48c3ZnIFtpY29uTmFtZV09XCInaWNvbi1hZGRfMTZ4MTYnXCIgW3NpemVdPVwiMTZcIlxuICAgICAgICAgIFthdHRyLnRpdGxlXT1cInVuZGVmaW5lZFwiIHN2LW5nLXN2Zy1pY29uPjwvc3ZnPjwvc3Bhbj5cbiAgICAgIDxzcGFuICpuZ0lmPVwiYWRvcm5lci5hbGxvd1JlbW92ZVwiIGNsYXNzPVwic3ZjLWl0ZW0tdmFsdWUtY29udHJvbHNfX2J1dHRvbiBzdmMtaXRlbS12YWx1ZS1jb250cm9sc19fcmVtb3ZlXCJcbiAgICAgICAgW2tleTJjbGlja10gKGNsaWNrKT1cImFkb3JuZXIucmVtb3ZlKGFkb3JuZXIpXCIgKGJsdXIpPVwib25CbHVyKCRldmVudClcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInVuZGVmaW5lZFwiPjxzdmdcbiAgICAgICAgICBbaWNvbk5hbWVdPVwiJ2ljb24tcmVtb3ZlXzE2eDE2J1wiIFtzaXplXT1cIjE2XCIgW2F0dHIudGl0bGVdPVwidW5kZWZpbmVkXCIgc3Ytbmctc3ZnLWljb24+PC9zdmc+PC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInN2Yy1pdGVtLXZhbHVlX19pdGVtXCIgKGNsaWNrKT1cImFkb3JuZXIuc2VsZWN0KGFkb3JuZXIsICRldmVudClcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT1cInsgbmFtZTogY29tcG9uZW50TmFtZSwgZGF0YTogY29tcG9uZW50RGF0YSB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
import { Component, Input } from "@angular/core";
|
|
2
|
-
import { AngularComponentFactory } from "survey-angular-ui";
|
|
3
|
-
import { MatrixCellWrapperViewModel } from "survey-creator-core";
|
|
4
|
-
import { CreatorModelComponent } from "../creator-model.component";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "survey-angular-ui";
|
|
7
|
-
import * as i2 from "@angular/common";
|
|
8
|
-
export class MatrixCellComponent extends CreatorModelComponent {
|
|
9
|
-
get creator() {
|
|
10
|
-
return this.componentData.creator;
|
|
11
|
-
}
|
|
12
|
-
get question() {
|
|
13
|
-
return this.componentData.question;
|
|
14
|
-
}
|
|
15
|
-
get column() {
|
|
16
|
-
return this.componentData.column;
|
|
17
|
-
}
|
|
18
|
-
get row() {
|
|
19
|
-
return this.componentData.row;
|
|
20
|
-
}
|
|
21
|
-
createModel() {
|
|
22
|
-
if (this.componentData) {
|
|
23
|
-
this.adorner = new MatrixCellWrapperViewModel(this.creator, null, this.question, this.row, this.column);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
getPropertiesToTrack() {
|
|
27
|
-
return ["creator", "row", "column", "question"];
|
|
28
|
-
}
|
|
29
|
-
getModel() {
|
|
30
|
-
return this.adorner;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
MatrixCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
-
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 tabindex=\"-1\" 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"] }] });
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, decorators: [{
|
|
36
|
-
type: Component,
|
|
37
|
-
args: [{ selector: "svc-matrix-cell", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div tabindex=\"-1\" 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>" }]
|
|
38
|
-
}], propDecorators: { componentName: [{
|
|
39
|
-
type: Input
|
|
40
|
-
}], componentData: [{
|
|
41
|
-
type: Input
|
|
42
|
-
}], contentTempl: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}] } });
|
|
45
|
-
AngularComponentFactory.Instance.registerComponent("svc-matrix-cell", MatrixCellComponent);
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import { AngularComponentFactory } from "survey-angular-ui";
|
|
3
|
+
import { MatrixCellWrapperViewModel } from "survey-creator-core";
|
|
4
|
+
import { CreatorModelComponent } from "../creator-model.component";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "survey-angular-ui";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
export class MatrixCellComponent extends CreatorModelComponent {
|
|
9
|
+
get creator() {
|
|
10
|
+
return this.componentData.creator;
|
|
11
|
+
}
|
|
12
|
+
get question() {
|
|
13
|
+
return this.componentData.question;
|
|
14
|
+
}
|
|
15
|
+
get column() {
|
|
16
|
+
return this.componentData.column;
|
|
17
|
+
}
|
|
18
|
+
get row() {
|
|
19
|
+
return this.componentData.row;
|
|
20
|
+
}
|
|
21
|
+
createModel() {
|
|
22
|
+
if (this.componentData) {
|
|
23
|
+
this.adorner = new MatrixCellWrapperViewModel(this.creator, null, this.question, this.row, this.column);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
getPropertiesToTrack() {
|
|
27
|
+
return ["creator", "row", "column", "question"];
|
|
28
|
+
}
|
|
29
|
+
getModel() {
|
|
30
|
+
return this.adorner;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
MatrixCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
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 tabindex=\"-1\" 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"] }] });
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, decorators: [{
|
|
36
|
+
type: Component,
|
|
37
|
+
args: [{ selector: "svc-matrix-cell", styles: [":host { display: none; }"], template: "<ng-template #template>\n <div tabindex=\"-1\" 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>" }]
|
|
38
|
+
}], propDecorators: { componentName: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], componentData: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], contentTempl: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}] } });
|
|
45
|
+
AngularComponentFactory.Instance.registerComponent("svc-matrix-cell", MatrixCellComponent);
|
|
46
46
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LWNlbGwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Fkb3JuZXJzL21hdHJpeC1jZWxsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9hZG9ybmVycy9tYXRyaXgtY2VsbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBRSx1QkFBdUIsRUFBNkMsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RyxPQUFPLEVBQTBDLDBCQUEwQixFQUE0QixNQUFNLHFCQUFxQixDQUFDO0FBQ25JLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBT25FLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxxQkFBaUQ7SUFLeEYsSUFBWSxPQUFPO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7SUFDcEMsQ0FBQztJQUNELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO0lBQ3JDLENBQUM7SUFDRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFXLEdBQUc7UUFDWixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDO0lBQ2hDLENBQUM7SUFDUyxXQUFXO1FBQ25CLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksMEJBQTBCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN6RztJQUNILENBQUM7SUFDUyxvQkFBb0I7UUFDNUIsT0FBTyxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFDUyxRQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDOztnSEE1QlUsbUJBQW1CO29HQUFuQixtQkFBbUIsd0xDWGhDLGl2QkFVYzsyRkRDRCxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsaUJBQWlCLFVBRW5CLENBQUMsMEJBQTBCLENBQUM7OEJBRzNCLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLOztBQTRCUix1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLEVBQUUsbUJBQW1CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSwgQmFzZUFuZ3VsYXIsIEVtYmVkZGVkVmlld0NvbnRlbnRDb21wb25lbnQgfSBmcm9tIFwic3VydmV5LWFuZ3VsYXItdWlcIjtcbmltcG9ydCB7IEl0ZW1WYWx1ZSwgUGFnZU1vZGVsLCBQYW5lbE1vZGVsLCBRdWVzdGlvbiwgUXVlc3Rpb25TZWxlY3RCYXNlLCBTdXJ2ZXlNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQ3JlYXRvckJhc2UsIEl0ZW1WYWx1ZVdyYXBwZXJWaWV3TW9kZWwsIE1hdHJpeENlbGxXcmFwcGVyVmlld01vZGVsLCBRdWVzdGlvbkFkb3JuZXJWaWV3TW9kZWwgfSBmcm9tIFwic3VydmV5LWNyZWF0b3ItY29yZVwiO1xuaW1wb3J0IHsgQ3JlYXRvck1vZGVsQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NyZWF0b3ItbW9kZWwuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdmMtbWF0cml4LWNlbGxcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9tYXRyaXgtY2VsbC5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXVxufSlcbmV4cG9ydCBjbGFzcyBNYXRyaXhDZWxsQ29tcG9uZW50IGV4dGVuZHMgQ3JlYXRvck1vZGVsQ29tcG9uZW50PE1hdHJpeENlbGxXcmFwcGVyVmlld01vZGVsPiB7XG4gIEBJbnB1dCgpIGNvbXBvbmVudE5hbWUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvbXBvbmVudERhdGEhOiBhbnk7XG4gIEBJbnB1dCgpIGNvbnRlbnRUZW1wbCE6IFRlbXBsYXRlUmVmPGFueT47XG4gIHB1YmxpYyBhZG9ybmVyITogTWF0cml4Q2VsbFdyYXBwZXJWaWV3TW9kZWw7XG4gIHByaXZhdGUgZ2V0IGNyZWF0b3IoKTogQ3JlYXRvckJhc2Uge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudERhdGEuY3JlYXRvcjtcbiAgfVxuICBwdWJsaWMgZ2V0IHF1ZXN0aW9uKCk6IFF1ZXN0aW9uU2VsZWN0QmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50RGF0YS5xdWVzdGlvbjtcbiAgfVxuICBwdWJsaWMgZ2V0IGNvbHVtbigpIHtcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnREYXRhLmNvbHVtbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcm93KCkge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudERhdGEucm93O1xuICB9XG4gIHByb3RlY3RlZCBjcmVhdGVNb2RlbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jb21wb25lbnREYXRhKSB7XG4gICAgICB0aGlzLmFkb3JuZXIgPSBuZXcgTWF0cml4Q2VsbFdyYXBwZXJWaWV3TW9kZWwodGhpcy5jcmVhdG9yLCBudWxsLCB0aGlzLnF1ZXN0aW9uLCB0aGlzLnJvdywgdGhpcy5jb2x1bW4pO1xuICAgIH1cbiAgfVxuICBwcm90ZWN0ZWQgZ2V0UHJvcGVydGllc1RvVHJhY2soKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbXCJjcmVhdG9yXCIsIFwicm93XCIsIFwiY29sdW1uXCIsIFwicXVlc3Rpb25cIl07XG4gIH1cbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IE1hdHJpeENlbGxXcmFwcGVyVmlld01vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5hZG9ybmVyO1xuICB9XG59XG5cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwic3ZjLW1hdHJpeC1jZWxsXCIsIE1hdHJpeENlbGxDb21wb25lbnQpO1xuIiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGRpdiB0YWJpbmRleD1cIi0xXCIgY2xhc3M9XCJzdmMtbWF0cml4LWNlbGxcIiAoY2xpY2spPVwiYWRvcm5lci5zZWxlY3RDb250ZXh0KGFkb3JuZXIsICRldmVudClcIiAobW91c2VvdmVyKT1cImFkb3JuZXIuaG92ZXIoJGV2ZW50LCAkZXZlbnQuY3VycmVudFRhcmdldClcIiAobW91c2VsZWF2ZSk9XCJhZG9ybmVyLmhvdmVyKCRldmVudCwgJGV2ZW50LmN1cnJlbnRUYXJnZXQpXCI+XG4gICAgPGRpdiBjbGFzcz1cInN2Yy1tYXRyaXgtY2VsbC0tc2VsZWN0ZWRcIiBbY2xhc3Muc3ZjLXZpc2libGVdPVwiYWRvcm5lci5pc1NlbGVjdGVkXCI+PC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUZW1wbFwiPjwvbmctY29udGFpbmVyPlxuICAgIDxkaXYgKm5nSWY9XCJxdWVzdGlvblwiIGNsYXNzPVwic3ZjLW1hdHJpeC1jZWxsX19xdWVzdGlvbi1jb250cm9sc1wiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzdmMtbWF0cml4LWNlbGxfX3F1ZXN0aW9uLWNvbnRyb2xzLWJ1dHRvblwiIChjbGljayk9XCJhZG9ybmVyLmVkaXRRdWVzdGlvbihhZG9ybmVyKVwiIFtrZXkyY2xpY2tdPlxuICAgICAgICA8c3ZnIFtpY29uTmFtZV09XCInaWNvbi1lZGl0J1wiIFtzaXplXT1cIjI0XCIgW3NpemVdPVwiMjRcIiBzdi1uZy1zdmctaWNvbj48L3N2Zz5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
|