survey-creator-angular 3.0.0-beta.2 → 3.0.0-beta.4

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.
Files changed (77) hide show
  1. package/add-question.component.d.ts +1 -2
  2. package/adorners/image-item-drag-action.component.d.ts +9 -0
  3. package/angular-ui.d.ts +6 -3
  4. package/angular-ui.module.d.ts +55 -52
  5. package/bundles/survey-creator-angular.umd.js +234 -145
  6. package/bundles/survey-creator-angular.umd.js.map +1 -1
  7. package/components/icon-item.component.d.ts +8 -0
  8. package/custom-questions/file-editor-button.component.d.ts +11 -0
  9. package/custom-questions/spin-editor-button.component.d.ts +12 -0
  10. package/esm2015/add-question.component.js +2 -6
  11. package/esm2015/adorners/image-item-drag-action.component.js +23 -0
  12. package/esm2015/adorners/image-item-value.component.js +2 -2
  13. package/esm2015/adorners/item-value.component.js +2 -2
  14. package/esm2015/adorners/matrix-cell.component.js +4 -4
  15. package/esm2015/adorners/question-dropdown.component.js +2 -3
  16. package/esm2015/adorners/question-image.component.js +2 -2
  17. package/esm2015/adorners/question-rating.component.js +2 -2
  18. package/esm2015/angular-ui.js +7 -4
  19. package/esm2015/angular-ui.module.js +20 -15
  20. package/esm2015/components/component-container.component.js +4 -4
  21. package/esm2015/components/icon-item.component.js +21 -0
  22. package/esm2015/custom-questions/boolean-switch.component.js +2 -2
  23. package/esm2015/custom-questions/color.component.js +2 -2
  24. package/esm2015/custom-questions/file-editor-button.component.js +26 -0
  25. package/esm2015/custom-questions/file.component.js +3 -2
  26. package/esm2015/custom-questions/spin-editor-button.component.js +29 -0
  27. package/esm2015/custom-questions/spin-editor.component.js +2 -2
  28. package/esm2015/header/logo-image.component.js +2 -2
  29. package/esm2015/page-navigator/page-navigator.component.js +6 -8
  30. package/esm2015/panel.component.js +8 -2
  31. package/esm2015/question-banner.component.js +2 -2
  32. package/esm2015/question.component.js +1 -1
  33. package/esm2015/side-bar/side-bar-launch-card.component.js +21 -0
  34. package/esm2015/side-bar/side-bar-property-grid-header.component.js +2 -2
  35. package/esm2015/side-bar/tab-button.component.js +4 -4
  36. package/esm2015/side-bar/tabs.component.js +1 -1
  37. package/esm2015/tabbed-menu/tabbed-menu/tabbed-menu-item-wrapper.component.js +2 -2
  38. package/esm2015/tabs/container/container-tab.component.js +23 -0
  39. package/esm2015/tabs/logic/logic.component.js +4 -5
  40. package/esm2015/tabs/preview/simulator.component.js +26 -4
  41. package/esm2015/tabs/preview/test.component.js +2 -2
  42. package/esm2015/tabs/theme/theme.component.js +2 -2
  43. package/esm2015/toolbox/toolbox-tool.component.js +2 -2
  44. package/fesm2015/survey-creator-angular.js +187 -124
  45. package/fesm2015/survey-creator-angular.js.map +1 -1
  46. package/package.json +4 -4
  47. package/panel.component.d.ts +3 -1
  48. package/question.component.d.ts +5 -5
  49. package/side-bar/side-bar-launch-card.component.d.ts +11 -0
  50. package/side-bar/side-bar-property-grid-header.component.d.ts +4 -4
  51. package/side-bar/tab-button.component.d.ts +4 -4
  52. package/side-bar/tabs.component.d.ts +4 -5
  53. package/tabs/container/container-tab.component.d.ts +9 -0
  54. package/tabs/preview/simulator.component.d.ts +12 -1
  55. package/add-question-type-selector.component.d.ts +0 -13
  56. package/bundles/survey-creator-angular-ui-preset-editor.umd.js +0 -688
  57. package/bundles/survey-creator-angular-ui-preset-editor.umd.js.map +0 -1
  58. package/esm2015/add-question-type-selector.component.js +0 -40
  59. package/esm2015/tabs/logic/logic-add-btn.component.js +0 -26
  60. package/esm2015/tabs/preview/test-again.component.js +0 -26
  61. package/esm2015/ui-preset-editor/index.js +0 -7
  62. package/esm2015/ui-preset-editor/presets-icon-item.component.js +0 -21
  63. package/esm2015/ui-preset-editor/presets-property-grid.component.js +0 -33
  64. package/esm2015/ui-preset-editor/presets.component.js +0 -37
  65. package/esm2015/ui-preset-editor/presets.module.js +0 -46
  66. package/esm2015/ui-preset-editor/survey-creator-angular-ui-preset-editor.js +0 -5
  67. package/fesm2015/survey-creator-angular-ui-preset-editor.js +0 -128
  68. package/fesm2015/survey-creator-angular-ui-preset-editor.js.map +0 -1
  69. package/tabs/logic/logic-add-btn.component.d.ts +0 -10
  70. package/tabs/preview/test-again.component.d.ts +0 -12
  71. package/ui-preset-editor/index.d.ts +0 -5
  72. package/ui-preset-editor/package.json +0 -10
  73. package/ui-preset-editor/presets-icon-item.component.d.ts +0 -8
  74. package/ui-preset-editor/presets-property-grid.component.d.ts +0 -12
  75. package/ui-preset-editor/presets.component.d.ts +0 -11
  76. package/ui-preset-editor/presets.module.d.ts +0 -12
  77. package/ui-preset-editor/survey-creator-angular-ui-preset-editor.d.ts +0 -5
@@ -563,7 +563,7 @@
563
563
  return TabbedMenuItemWrapperComponent;
564
564
  }(i1.BaseAngular));
565
565
  TabbedMenuItemWrapperComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TabbedMenuItemWrapperComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
566
- TabbedMenuItemWrapperComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TabbedMenuItemWrapperComponent, selector: "svc-tabbed-menu-item-wrapper", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <span class=\"svc-tabbed-menu-item-container\" [class.sv-action--hidden]=\"!model.isVisible\" [class]=\"model.css\"\n #container>\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; }"], directives: [{ type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
566
+ TabbedMenuItemWrapperComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TabbedMenuItemWrapperComponent, selector: "svc-tabbed-menu-item-wrapper", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <span class=\"svc-tabbed-menu-item-container\" [class.svc-tabbed-menu-item-container--hidden]=\"!model.isVisible\" [class]=\"model.css\"\n #container>\n <div class=\"svc-tabbed-menu-item-container__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; }"], directives: [{ type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
567
567
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TabbedMenuItemWrapperComponent, decorators: [{
568
568
  type: i0.Component,
569
569
  args: [{
@@ -965,10 +965,8 @@
965
965
  return ["pagesController", "pageEditMode"];
966
966
  };
967
967
  PageNavigatorComponent.prototype.ngAfterViewInit = function () {
968
- if (this.pageEditMode !== "bypage") {
969
- var el = this.container.nativeElement;
970
- this.model.attachToUI(el);
971
- }
968
+ var el = this.container.nativeElement;
969
+ this.model.attachToUI(el);
972
970
  };
973
971
  PageNavigatorComponent.prototype.ngOnDestroy = function () {
974
972
  _super.prototype.ngOnDestroy.call(this);
@@ -979,7 +977,7 @@
979
977
  return PageNavigatorComponent;
980
978
  }(CreatorModelComponent));
981
979
  PageNavigatorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: PageNavigatorComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
982
- PageNavigatorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PageNavigatorComponent, selector: "svc-page-navigator", inputs: { pagesController: "pagesController", pageEditMode: "pageEditMode" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-page-navigator\" #container [visible]=\"model.visible\">\n <div>\n <div role=\"button\" class=\"svc-page-navigator__selector svc-page-navigator__button\"\n (click)=\"model.togglePageSelector($event)\" [key2click] [attr.title]=\"model.pageSelectorCaption\" [class.svc-page-navigator__button--pressed]=\"model.isPopupOpened\">\n <svg class=\"svc-page-navigator__button-icon\" [iconName]=\"model.icon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </div>\n <sv-ng-popup [popupModel]=\"model.popupModel\"></sv-ng-popup>\n </div>\n <div>\n <svc-page-navigator-item *ngFor=\"let item of model.visibleItems\" [model]=\"item\"></svc-page-navigator-item>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1__namespace.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }, { type: PageNavigatorItemComponent, selector: "svc-page-navigator-item", inputs: ["model"] }], directives: [{ type: i1__namespace.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i2__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
980
+ PageNavigatorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PageNavigatorComponent, selector: "svc-page-navigator", inputs: { pagesController: "pagesController", pageEditMode: "pageEditMode" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-page-navigator\" #container [visible]=\"model.visible\">\n <div>\n <ng-template [component]=\"{ name: 'sv-action-bar-item-dropdown', data: { model: model.selectorAction } }\"></ng-template>\n </div>\n <div>\n <svc-page-navigator-item *ngFor=\"let item of model.visibleItems\" [model]=\"item\"></svc-page-navigator-item>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: PageNavigatorItemComponent, selector: "svc-page-navigator-item", inputs: ["model"] }], directives: [{ type: i1__namespace.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i2__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
983
981
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: PageNavigatorComponent, decorators: [{
984
982
  type: i0.Component,
985
983
  args: [{
@@ -1142,7 +1140,7 @@
1142
1140
  return TabButtonComponent;
1143
1141
  }(i1.BaseAngular));
1144
1142
  TabButtonComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TabButtonComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1145
- TabButtonComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TabButtonComponent, selector: "svc-tab-button", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div *ngIf=\"model.visible\" class=\"svc-menu-action\">\n <div [class]=\"model.buttonClassName\" [key2click]=\"{ processEsc: false, disableTabStop: model.disableTabStop }\"\n [attr.title]=\"model.tooltip\" (click)=\"model.action()\">\n <div class=\"svc-menu-action__icon\">\n <div class=\"svc-menu-action__icon-container\">\n <svg [iconName]=\"model.iconName\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </div>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
1143
+ TabButtonComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TabButtonComponent, selector: "svc-tab-button", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div *ngIf=\"model.visible\" class=\"svc-sidebar-tabs__item\">\n <ng-template [component]=\"{ name: model.component, data: { model }, default: 'sv-action-bar-item'}\"></ng-template>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1146
1144
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TabButtonComponent, decorators: [{
1147
1145
  type: i0.Component,
1148
1146
  args: [{
@@ -1215,7 +1213,7 @@
1215
1213
  return SidebarPropertyGridHeaderComponent;
1216
1214
  }(i1.BaseAngular));
1217
1215
  SidebarPropertyGridHeaderComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SidebarPropertyGridHeaderComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1218
- SidebarPropertyGridHeaderComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SidebarPropertyGridHeaderComponent, selector: "svc-side-bar-property-grid-header", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-sidebar__header svc-sidebar__header--tabbed\">\n <div class=\"svc-sidebar__header-container svc-sidebar__header-container--with-subtitle\">\n <div class=\"svc-sidebar__header-content\">\n <div [class]=\"model.buttonClassName\" (click)=\"model.action()\" [key2click]=\"{ processEsc: false }\">\n <div class=\"svc-sidebar__header-caption\">\n <span class=\"svc-sidebar__header-title\">{{model.title}}</span>\n <span class=\"svc-sidebar__header-subtitle\">{{model.tooltip}}</span>\n </div>\n </div>\n <sv-ng-popup [popupModel]=\"model.popupModel\"></sv-ng-popup>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
1216
+ SidebarPropertyGridHeaderComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SidebarPropertyGridHeaderComponent, selector: "svc-side-bar-property-grid-header", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-sidebar__header svc-sidebar__header--tabbed\">\n <div class=\"svc-sidebar__header-container svc-sidebar__header-container--with-subtitle\">\n <div class=\"svc-sidebar__header-content\">\n <div [class]=\"model.getActionBarItemCss() + ' svc-sidebar__header-object-selector'\" (click)=\"model.action()\" [key2click]=\"{ processEsc: false }\">\n <div class=\"svc-sidebar__header-caption\">\n <span class=\"svc-sidebar__header-title\">{{model.title}}</span>\n <span class=\"svc-sidebar__header-subtitle\">{{model.tooltip}}</span>\n </div>\n </div>\n <sv-ng-popup [popupModel]=\"model.popupModel\"></sv-ng-popup>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
1219
1217
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SidebarPropertyGridHeaderComponent, decorators: [{
1220
1218
  type: i0.Component,
1221
1219
  args: [{
@@ -1281,7 +1279,7 @@
1281
1279
  return ComponentContainerComponent;
1282
1280
  }(i1.EmbeddedViewContentComponent));
1283
1281
  ComponentContainerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ComponentContainerComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1284
- ComponentContainerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ComponentContainerComponent, selector: "svc-component-container", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div [class]=\"model.cssClass\" >\n <ng-template *ngFor=\"let element of model.elements\" [component]=\"{ name: element.componentName, data: element.componentData }\"></ng-template>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i2__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1282
+ ComponentContainerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ComponentContainerComponent, selector: "svc-component-container", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <ng-template #elementsTemplate>\n <ng-template *ngFor=\"let element of model.elements\"\n [component]=\"{ name: element.componentName, data: element.componentData }\"></ng-template>\n </ng-template>\n\n <ng-container *ngIf=\"model.wrapped; else unwrappedTemplate\">\n <div [class]=\"model.cssClass\">\n <sv-scroll *ngIf=\"model.scrollable; else wrappedPlainTemplate\">\n <ng-container *ngTemplateOutlet=\"elementsTemplate\"></ng-container>\n </sv-scroll>\n <ng-template #wrappedPlainTemplate>\n <ng-container *ngTemplateOutlet=\"elementsTemplate\"></ng-container>\n </ng-template>\n </div>\n </ng-container>\n\n <ng-template #unwrappedTemplate>\n <sv-scroll *ngIf=\"model.scrollable; else unwrappedPlainTemplate\">\n <ng-container *ngTemplateOutlet=\"elementsTemplate\"></ng-container>\n </sv-scroll>\n <ng-template #unwrappedPlainTemplate>\n <ng-container *ngTemplateOutlet=\"elementsTemplate\"></ng-container>\n </ng-template>\n </ng-template>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.ScrollComponent, selector: "sv-scroll", inputs: ["disabled", "onInnerHeightChanged"] }], directives: [{ type: i2__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
1285
1283
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ComponentContainerComponent, decorators: [{
1286
1284
  type: i0.Component,
1287
1285
  args: [{
@@ -1294,6 +1292,48 @@
1294
1292
  }] } });
1295
1293
  i1.AngularComponentFactory.Instance.registerComponent("svc-component-container", ComponentContainerComponent);
1296
1294
 
1295
+ var IconItemComponent = /** @class */ (function (_super) {
1296
+ __extends(IconItemComponent, _super);
1297
+ function IconItemComponent() {
1298
+ return _super !== null && _super.apply(this, arguments) || this;
1299
+ }
1300
+ return IconItemComponent;
1301
+ }(i1.EmbeddedViewContentComponent));
1302
+ IconItemComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: IconItemComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1303
+ IconItemComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: IconItemComponent, selector: "svc-icon-item", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n<div *ngIf=\"model\" class=\"svc-icon-item\">\n <svg [iconName]=\"model.value\" class=\"svc-icon-item__icon\" size=\"auto\" sv-ng-svg-icon></svg>\n <span class=\"svc-icon-item__text\">{{ model.title }}</span>\n</div>\n</ng-template>\n", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1304
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: IconItemComponent, decorators: [{
1305
+ type: i0.Component,
1306
+ args: [{
1307
+ selector: "svc-icon-item",
1308
+ templateUrl: "./icon-item.component.html",
1309
+ styles: [":host { display: none; }"]
1310
+ }]
1311
+ }], propDecorators: { model: [{
1312
+ type: i0.Input
1313
+ }] } });
1314
+ i1.AngularComponentFactory.Instance.registerComponent("svc-presets-icon-item", IconItemComponent);
1315
+
1316
+ var SideBarLaunchCardComponent = /** @class */ (function (_super) {
1317
+ __extends(SideBarLaunchCardComponent, _super);
1318
+ function SideBarLaunchCardComponent() {
1319
+ return _super !== null && _super.apply(this, arguments) || this;
1320
+ }
1321
+ return SideBarLaunchCardComponent;
1322
+ }(i1.EmbeddedViewContentComponent));
1323
+ SideBarLaunchCardComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SideBarLaunchCardComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1324
+ SideBarLaunchCardComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SideBarLaunchCardComponent, selector: "svc-side-bar-launch-card", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n<div *ngIf=\"model\" class=\"spg-launch\">\n <button class=\"spg-launch__card\" (click)=\"model.onClick()\">\n <div class=\"spg-launch__container\">\n <div class=\"spg-launch__text\">{{model.title}}</div>\n <div class=\"spg-launch__text2\">{{model.description}}</div>\n </div>\n <div class=\"spg-launch__icon\">\n <div class=\"spg-launch__chevron-right-16-x-16\">\n <div class=\"spg-launch__icon2\">\n <svg size=\"auto\" iconName=\"chevrondown-24x24\" sv-ng-svg-icon></svg>\n </div>\n </div>\n </div>\n </button>\n</div>\n</ng-template>\n", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1325
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SideBarLaunchCardComponent, decorators: [{
1326
+ type: i0.Component,
1327
+ args: [{
1328
+ selector: "svc-side-bar-launch-card",
1329
+ templateUrl: "./side-bar-launch-card.component.html",
1330
+ styles: [":host { display: none; }"]
1331
+ }]
1332
+ }], propDecorators: { model: [{
1333
+ type: i0.Input
1334
+ }] } });
1335
+ i1.AngularComponentFactory.Instance.registerComponent("svc-side-bar-launch-card", SideBarLaunchCardComponent);
1336
+
1297
1337
  var ObjectSelectorComponent = /** @class */ (function (_super) {
1298
1338
  __extends(ObjectSelectorComponent, _super);
1299
1339
  function ObjectSelectorComponent() {
@@ -1435,33 +1475,6 @@
1435
1475
  }] } });
1436
1476
  i1.AngularComponentFactory.Instance.registerComponent("svc-tab-json-editor-ace", AceJsonEditorComponent);
1437
1477
 
1438
- var LogicAddButtonComponent = /** @class */ (function (_super) {
1439
- __extends(LogicAddButtonComponent, _super);
1440
- function LogicAddButtonComponent() {
1441
- return _super !== null && _super.apply(this, arguments) || this;
1442
- }
1443
- LogicAddButtonComponent.prototype.getModel = function () {
1444
- return this.model;
1445
- };
1446
- LogicAddButtonComponent.prototype.onClick = function (event) {
1447
- event.stopPropagation();
1448
- this.model.action();
1449
- };
1450
- return LogicAddButtonComponent;
1451
- }(i1.BaseAngular));
1452
- LogicAddButtonComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: LogicAddButtonComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1453
- LogicAddButtonComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: LogicAddButtonComponent, selector: "svc-tab-logic-add-btn", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, 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-btn__text\">\n {{model.title}}\n </span>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
1454
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: LogicAddButtonComponent, decorators: [{
1455
- type: i0.Component,
1456
- args: [{
1457
- selector: "svc-tab-logic-add-btn",
1458
- templateUrl: "./logic-add-btn.component.html",
1459
- styles: [":host { display: none; }"]
1460
- }]
1461
- }], propDecorators: { model: [{
1462
- type: i0.Input
1463
- }] } });
1464
-
1465
1478
  var LogicTabComponent = /** @class */ (function (_super) {
1466
1479
  __extends(LogicTabComponent, _super);
1467
1480
  function LogicTabComponent() {
@@ -1473,7 +1486,7 @@
1473
1486
  return LogicTabComponent;
1474
1487
  }(i1.BaseAngular));
1475
1488
  LogicTabComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: LogicTabComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1476
- LogicTabComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: LogicTabComponent, selector: "svc-tab-logic", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, 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 <ng-container *ngIf=\"model.hasItems\">\n <survey-content [model]=\"model.itemsSurvey\"></survey-content>\n <ng-container *ngIf=\"!model.readOnly\">\n <svc-tab-logic-add-btn [model]=\"model.addNewButton\"></svc-tab-logic-add-btn>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!model.hasItems\">\n <div class=\"svc-logic-tab__content-empty\">\n <svc-surface-placeholder [name]=\"'logic'\" [placeholderTitleText]=\"model.placeholderTitleText\"\n [placeholderDescriptionText]=\"model.placeholderDescriptionText\">\n </svc-surface-placeholder>\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 </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SurveyContentComponent, selector: "survey-content", inputs: ["model"] }, { type: LogicAddButtonComponent, selector: "svc-tab-logic-add-btn", inputs: ["model"] }, { type: SurfacePlaceholderComponent, selector: "svc-surface-placeholder", inputs: ["name", "placeholderTitleText", "placeholderDescriptionText"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1489
+ LogicTabComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: LogicTabComponent, selector: "svc-tab-logic", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content svc-logic-tab\">\n <div class=\"svc-plugin-tab__content svc-logic-tab svc-logic-tab__content\" [class.svc-logic-tab--empty]=\"!model.hasItems\">\n <ng-container *ngIf=\"model.hasItems\">\n <survey-content [model]=\"model.itemsSurvey\"></survey-content>\n <sv-action-bar *ngIf=\"!model.readOnly\" [model]=\"model.contentActionsContainer\"></sv-action-bar>\n </ng-container>\n <ng-container *ngIf=\"!model.hasItems\">\n <div class=\"svc-logic-tab__content-empty\">\n <svc-surface-placeholder [name]=\"'logic'\" [placeholderTitleText]=\"model.placeholderTitleText\"\n [placeholderDescriptionText]=\"model.placeholderDescriptionText\">\n </svc-surface-placeholder>\n <sv-action-bar *ngIf=\"!model.readOnly\" [model]=\"model.contentActionsContainer\"></sv-action-bar>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SurveyContentComponent, selector: "survey-content", inputs: ["model"] }, { type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: SurfacePlaceholderComponent, selector: "svc-surface-placeholder", inputs: ["name", "placeholderTitleText", "placeholderDescriptionText"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1477
1490
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: LogicTabComponent, decorators: [{
1478
1491
  type: i0.Component,
1479
1492
  args: [{
@@ -1694,9 +1707,29 @@
1694
1707
 
1695
1708
  var SimulatorComponent = /** @class */ (function (_super) {
1696
1709
  __extends(SimulatorComponent, _super);
1697
- function SimulatorComponent() {
1698
- return _super !== null && _super.apply(this, arguments) || this;
1699
- }
1710
+ function SimulatorComponent(changeDetectorRef, viewContainerRef) {
1711
+ return _super.call(this, changeDetectorRef, viewContainerRef) || this;
1712
+ }
1713
+ /**
1714
+ * `BaseAngular` defers updates while `model.isRendering` is true during `ngDoCheck`, so
1715
+ * `popupOverlayHeight` (and frame-driving props) would not refresh the embedded template in time.
1716
+ * These properties must run synchronous `detectChanges` so `[style.--sv-popup-overlay-height]` applies.
1717
+ */
1718
+ SimulatorComponent.prototype.getPropertiesToUpdateSync = function () {
1719
+ return ["popupOverlayHeight", "landscape", "device", "survey"];
1720
+ };
1721
+ SimulatorComponent.prototype.ngAfterViewInit = function () {
1722
+ this.model.queueSurveyLayoutRefresh();
1723
+ };
1724
+ SimulatorComponent.prototype.ngOnDestroy = function () {
1725
+ this.model.cancelSurveyLayoutRefresh();
1726
+ _super.prototype.ngOnDestroy.call(this);
1727
+ };
1728
+ SimulatorComponent.prototype.afterUpdate = function (isSync) {
1729
+ if (isSync === void 0) { isSync = false; }
1730
+ _super.prototype.afterUpdate.call(this, isSync);
1731
+ this.model.queueSurveyLayoutRefresh();
1732
+ };
1700
1733
  SimulatorComponent.prototype.getModel = function () {
1701
1734
  return this.model;
1702
1735
  };
@@ -1719,8 +1752,8 @@
1719
1752
  };
1720
1753
  return SimulatorComponent;
1721
1754
  }(i1.BaseAngular));
1722
- SimulatorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SimulatorComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1723
- SimulatorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SimulatorComponent, selector: "survey-simulator", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div [class]=\"model.getRootCss()\" (keydown)=\"model.tryToZoom($event, $event)\" (mouseover)=\"activateZoom()\"\n (mouseout)=\"deactivateZoom()\">\n <div *ngIf=\"model.hasFrame\" class=\"svd-simulator-wrapper\" id=\"svd-simulator-wrapper\"\n [style.width]=\"simulatorFrame.frameWidth + 'px'\" [style.height]=\"simulatorFrame.frameHeight + 'px'\">\n <div class=\"svd-simulator\" [style.width]=\"simulatorFrame.deviceWidth + 'px'\"\n [style.height]=\"simulatorFrame.deviceHeight + 'px'\"\n [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; }"], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1755
+ SimulatorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SimulatorComponent, deps: [{ token: i0__namespace.ChangeDetectorRef }, { token: i0__namespace.ViewContainerRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
1756
+ SimulatorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SimulatorComponent, selector: "survey-simulator", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div [class]=\"model.getRootCss()\" (keydown)=\"model.tryToZoom($event, $event)\" (mouseover)=\"activateZoom()\"\n (mouseout)=\"deactivateZoom()\">\n <div *ngIf=\"model.hasFrame\" class=\"svd-simulator-wrapper\" id=\"svd-simulator-wrapper\"\n [style.width]=\"simulatorFrame.frameWidth + 'px'\" [style.height]=\"simulatorFrame.frameHeight + 'px'\">\n <div class=\"svd-simulator\" [style.width]=\"simulatorFrame.deviceWidth + 'px'\"\n [style.height]=\"simulatorFrame.deviceHeight + 'px'\"\n [style.transform]=\"'scale(' + simulatorFrame.scale + ') translate(-50%, -50%)'\">\n <div class=\"svd-simulator-content\"\n [style.--sv-popup-overlay-height]=\"model.popupOverlayHeight || null\">\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 [style.--sv-popup-overlay-height]=\"model.popupOverlayHeight || null\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1724
1757
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SimulatorComponent, decorators: [{
1725
1758
  type: i0.Component,
1726
1759
  args: [{
@@ -1728,40 +1761,9 @@
1728
1761
  templateUrl: "./simulator.component.html",
1729
1762
  styles: [":host { display: none; }"]
1730
1763
  }]
1731
- }], propDecorators: { model: [{
1732
- type: i0.Input
1733
- }] } });
1734
-
1735
- var TestAgainActionComponent = /** @class */ (function (_super) {
1736
- __extends(TestAgainActionComponent, _super);
1737
- function TestAgainActionComponent() {
1738
- return _super !== null && _super.apply(this, arguments) || this;
1739
- }
1740
- TestAgainActionComponent.prototype.getModel = function () {
1741
- return this.model.testAgainAction;
1742
- };
1743
- Object.defineProperty(TestAgainActionComponent.prototype, "action", {
1744
- get: function () {
1745
- return this.getModel();
1746
- },
1747
- enumerable: false,
1748
- configurable: true
1749
- });
1750
- return TestAgainActionComponent;
1751
- }(i1.BaseAngular));
1752
- TestAgainActionComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TestAgainActionComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1753
- TestAgainActionComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TestAgainActionComponent, selector: "survey-test-again", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div role=\"button\" class=\"svc-preview__test-again svc-btn\" (click)=\"action.action()\" [key2click]>\n <span class=\"svc-btn__text\">\n {{action.title}}\n </span>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
1754
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TestAgainActionComponent, decorators: [{
1755
- type: i0.Component,
1756
- args: [{
1757
- selector: "survey-test-again",
1758
- templateUrl: "./test-again.component.html",
1759
- styles: [":host { display: none; }"]
1760
- }]
1761
- }], propDecorators: { model: [{
1764
+ }], ctorParameters: function () { return [{ type: i0__namespace.ChangeDetectorRef }, { type: i0__namespace.ViewContainerRef }]; }, propDecorators: { model: [{
1762
1765
  type: i0.Input
1763
1766
  }] } });
1764
- i1.AngularComponentFactory.Instance.registerComponent("svc-complete-page", TestAgainActionComponent);
1765
1767
 
1766
1768
  var SurveyResultsTableRowComponent = /** @class */ (function (_super) {
1767
1769
  __extends(SurveyResultsTableRowComponent, _super);
@@ -1828,7 +1830,7 @@
1828
1830
  return TestTabComponent;
1829
1831
  }(i1.BaseAngular));
1830
1832
  TestTabComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TestTabComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1831
- TestTabComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TestTabComponent, selector: "svc-tab-preview", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content svc-test-tab__content\"\n [class.svc-creator-tab__content--with-toolbar]=\"model.isPageToolbarVisible\">\n <svc-surface-placeholder *ngIf=\"model.survey.isEmpty\" [name]=\"'preview'\" [placeholderTitleText]=\"model.placeholderTitleText\"\n [placeholderDescriptionText]=\"model.placeholderDescriptionText\">\n </svc-surface-placeholder>\n <div *ngIf=\"!model.survey.isEmpty\" class=\"svc-plugin-tab__content\">\n <survey-simulator [model]=\"model.simulator\"></survey-simulator>\n <ng-container *ngIf=\"model.showResults\">\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; }"], components: [{ type: SurfacePlaceholderComponent, selector: "svc-surface-placeholder", inputs: ["name", "placeholderTitleText", "placeholderDescriptionText"] }, { type: SimulatorComponent, selector: "survey-simulator", inputs: ["model"] }, { type: SurveyResultsComponent, selector: "survey-results", inputs: ["survey"] }, { type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1833
+ TestTabComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TestTabComponent, selector: "svc-tab-preview", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content svc-test-tab__content\" [ngClass]=\"model.tabContentAdditionalCss\">\n <svc-surface-placeholder *ngIf=\"model.survey.isEmpty\" [name]=\"'preview'\" [placeholderTitleText]=\"model.placeholderTitleText\"\n [placeholderDescriptionText]=\"model.placeholderDescriptionText\">\n </svc-surface-placeholder>\n <div *ngIf=\"!model.survey.isEmpty\" class=\"svc-plugin-tab__content\">\n <survey-simulator [model]=\"model.simulator\"></survey-simulator>\n <ng-container *ngIf=\"model.showResults\">\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; }"], components: [{ type: SurfacePlaceholderComponent, selector: "svc-surface-placeholder", inputs: ["name", "placeholderTitleText", "placeholderDescriptionText"] }, { type: SimulatorComponent, selector: "survey-simulator", inputs: ["model"] }, { type: SurveyResultsComponent, selector: "survey-results", inputs: ["survey"] }, { type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1832
1834
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: TestTabComponent, decorators: [{
1833
1835
  type: i0.Component,
1834
1836
  args: [{
@@ -1852,7 +1854,7 @@
1852
1854
  return ThemeTabComponent;
1853
1855
  }(i1.BaseAngular));
1854
1856
  ThemeTabComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ThemeTabComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1855
- ThemeTabComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ThemeTabComponent, selector: "svc-tab-theme", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content svc-test-tab__content\"\n [class.svc-creator-tab__content--with-toolbar]=\"model.isPageToolbarVisible\">\n <svc-surface-placeholder *ngIf=\"model.survey.isEmpty\" [name]=\"'theme'\" [placeholderTitleText]=\"model.placeholderTitleText\"\n [placeholderDescriptionText]=\"model.placeholderDescriptionText\">\n </svc-surface-placeholder>\n <div *ngIf=\"!model.survey.isEmpty\" class=\"svc-plugin-tab__content\">\n <survey-simulator [model]=\"model.simulator\"></survey-simulator>\n <ng-container *ngIf=\"model.showResults\">\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; }"], components: [{ type: SurfacePlaceholderComponent, selector: "svc-surface-placeholder", inputs: ["name", "placeholderTitleText", "placeholderDescriptionText"] }, { type: SimulatorComponent, selector: "survey-simulator", inputs: ["model"] }, { type: SurveyResultsComponent, selector: "survey-results", inputs: ["survey"] }, { type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1857
+ ThemeTabComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ThemeTabComponent, selector: "svc-tab-theme", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-creator-tab__content svc-test-tab__content\" [ngClass]=\"model.tabContentAdditionalCss\">\n <svc-surface-placeholder *ngIf=\"model.survey.isEmpty\" [name]=\"'theme'\" [placeholderTitleText]=\"model.placeholderTitleText\"\n [placeholderDescriptionText]=\"model.placeholderDescriptionText\">\n </svc-surface-placeholder>\n <div *ngIf=\"!model.survey.isEmpty\" class=\"svc-plugin-tab__content\">\n <survey-simulator [model]=\"model.simulator\"></survey-simulator>\n <ng-container *ngIf=\"model.showResults\">\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; }"], components: [{ type: SurfacePlaceholderComponent, selector: "svc-surface-placeholder", inputs: ["name", "placeholderTitleText", "placeholderDescriptionText"] }, { type: SimulatorComponent, selector: "survey-simulator", inputs: ["model"] }, { type: SurveyResultsComponent, selector: "survey-results", inputs: ["survey"] }, { type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1856
1858
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ThemeTabComponent, decorators: [{
1857
1859
  type: i0.Component,
1858
1860
  args: [{
@@ -1958,7 +1960,6 @@
1958
1960
  __extends(AddQuestionButtonComponent, _super);
1959
1961
  function AddQuestionButtonComponent() {
1960
1962
  var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
1961
- _this.buttonClass = "svc-btn";
1962
1963
  _this.renderPopup = true;
1963
1964
  return _this;
1964
1965
  }
@@ -1984,7 +1985,7 @@
1984
1985
  return AddQuestionButtonComponent;
1985
1986
  }(CreatorModelComponent));
1986
1987
  AddQuestionButtonComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: AddQuestionButtonComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
1987
- AddQuestionButtonComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AddQuestionButtonComponent, selector: "svc-add-new-question-btn", inputs: { model: "model", buttonClass: "buttonClass", renderPopup: "renderPopup" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div [class]=\"'svc-element__add-new-question ' + buttonClass\" [key2click]\n (click)=\"addNewQuestion($event)\"\n (mouseover)=\"adorner.hoverStopper && adorner.hoverStopper($event, $event.currentTarget)\">\n <svg class=\"svc-panel__add-new-question-icon\" [iconName]=\"('icon-add_24x24')\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <span class=\"svc-add-new-item-button__text\">\n {{ adorner.addNewQuestionText }}\n </span>\n <ng-template *ngIf=\"renderPopup\"\n [component]=\"{ name: 'svc-add-question-type-selector', data: { questionTypeSelectorModel: adorner.questionTypeSelectorModel, renderPopup: renderPopup } }\">\n </ng-template>\n </div>\n <ng-template *ngIf=\"!renderPopup\"\n [component]=\"{ name: 'svc-add-question-type-selector', data: { questionTypeSelectorModel: adorner.questionTypeSelectorModel, renderPopup: renderPopup } }\">\n </ng-template>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1988
+ AddQuestionButtonComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AddQuestionButtonComponent, selector: "svc-add-new-question-btn", inputs: { model: "model", renderPopup: "renderPopup" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div [class]=\"model.getActionBarItemCss()\" [key2click] (click)=\"addNewQuestion($event)\"\n (mouseover)=\"adorner.hoverStopper && adorner.hoverStopper($event, $event.currentTarget)\">\n <span [class]=\"model.getActionBarItemTitleCss()\">\n {{ adorner.addNewQuestionText }}\n </span>\n <div [class]=\"model.cssClasses.itemTypeSelector\">\n <ng-template [component]=\"{ name: 'sv-action-bar-item-dropdown', data: { model: model.data.questionTypeSelectorModel } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1988
1989
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: AddQuestionButtonComponent, decorators: [{
1989
1990
  type: i0.Component,
1990
1991
  args: [{
@@ -1994,50 +1995,11 @@
1994
1995
  }]
1995
1996
  }], propDecorators: { model: [{
1996
1997
  type: i0.Input
1997
- }], buttonClass: [{
1998
- type: i0.Input
1999
1998
  }], renderPopup: [{
2000
1999
  type: i0.Input
2001
2000
  }] } });
2002
2001
  i1.AngularComponentFactory.Instance.registerComponent("svc-add-new-question-btn", AddQuestionButtonComponent);
2003
2002
 
2004
- var AddQuestionTypeSelectorComponent = /** @class */ (function (_super) {
2005
- __extends(AddQuestionTypeSelectorComponent, _super);
2006
- function AddQuestionTypeSelectorComponent() {
2007
- var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
2008
- _this.renderPopup = true;
2009
- return _this;
2010
- }
2011
- AddQuestionTypeSelectorComponent.prototype.getPropertiesToTrack = function () {
2012
- return [];
2013
- };
2014
- AddQuestionTypeSelectorComponent.prototype.createModel = function () {
2015
- };
2016
- AddQuestionTypeSelectorComponent.prototype.getModel = function () {
2017
- return this.questionTypeSelectorModel;
2018
- };
2019
- AddQuestionTypeSelectorComponent.prototype.selectQuestionType = function (event) {
2020
- event.stopPropagation();
2021
- this.questionTypeSelectorModel.action();
2022
- };
2023
- return AddQuestionTypeSelectorComponent;
2024
- }(CreatorModelComponent));
2025
- AddQuestionTypeSelectorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: AddQuestionTypeSelectorComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
2026
- AddQuestionTypeSelectorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AddQuestionTypeSelectorComponent, selector: "svc-add-question-type-selector", inputs: { questionTypeSelectorModel: "questionTypeSelectorModel", renderPopup: "renderPopup" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <button type=\"button\" [key2click] (click)=\"selectQuestionType($event)\" [attr.title]=\"questionTypeSelectorModel.title\"\n [attr.aria-label]=\"questionTypeSelectorModel.title\" class=\"svc-element__question-type-selector\">\n <svg class=\"svc-element__question-type-selector-icon\" [iconName]=\"questionTypeSelectorModel.iconName\"\n [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <sv-ng-popup *ngIf=\"renderPopup\" [popupModel]=\"questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </button>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1__namespace.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2027
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: AddQuestionTypeSelectorComponent, decorators: [{
2028
- type: i0.Component,
2029
- args: [{
2030
- selector: "svc-add-question-type-selector",
2031
- templateUrl: "./add-question-type-selector.component.html",
2032
- styles: [":host { display: none; }"]
2033
- }]
2034
- }], propDecorators: { questionTypeSelectorModel: [{
2035
- type: i0.Input
2036
- }], renderPopup: [{
2037
- type: i0.Input
2038
- }] } });
2039
- i1.AngularComponentFactory.Instance.registerComponent("svc-add-question-type-selector", AddQuestionTypeSelectorComponent);
2040
-
2041
2003
  var QuestionElementContentComponent = /** @class */ (function (_super) {
2042
2004
  __extends(QuestionElementContentComponent, _super);
2043
2005
  function QuestionElementContentComponent() {
@@ -2073,7 +2035,7 @@
2073
2035
  return QuestionBannerComponent;
2074
2036
  }(i1.EmbeddedViewContentComponent));
2075
2037
  QuestionBannerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionBannerComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
2076
- QuestionBannerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionBannerComponent, selector: "svc-question-banner", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-carry-forward-panel-wrapper\">\n <div class=\"svc-carry-forward-panel\">\n <span>{{model.text}} </span>\n <span class=\"svc-carry-forward-panel__link\">\n <svc-action-button [text]=\"model.actionText\" [click]=\"model.onClick.bind(model)\">\n </svc-action-button>\n </span>\n </div>\n </div>\n <ng-template>", styles: [":host { display: none }"], components: [{ type: ActionButtonComponent, selector: "svc-action-button", inputs: ["classes", "click", "selected", "disabled", "text", "title", "iconName", "allowBubble"] }] });
2038
+ QuestionBannerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionBannerComponent, selector: "svc-question-banner", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-carry-forward-panel-wrapper\">\n <div class=\"svc-carry-forward-panel\">\n <span>{{model.text}} </span>\n <span class=\"svc-carry-forward-panel__link\">\n <svc-action-button [text]=\"model.actionText\" [click]=\"model.onClick.bind(model)\">\n </svc-action-button>\n </span>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none }"], components: [{ type: ActionButtonComponent, selector: "svc-action-button", inputs: ["classes", "click", "selected", "disabled", "text", "title", "iconName", "allowBubble"] }] });
2077
2039
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionBannerComponent, decorators: [{
2078
2040
  type: i0.Component,
2079
2041
  args: [{
@@ -2271,7 +2233,7 @@
2271
2233
  return ItemValueDesignerComponent;
2272
2234
  }(CreatorModelComponent));
2273
2235
  ItemValueDesignerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ItemValueDesignerComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
2274
- ItemValueDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ItemValueDesignerComponent, selector: "svc-item-value", inputs: { componentName: "componentName", componentData: "componentData" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: i0.ElementRef }], usesInheritance: true, ngImport: i0__namespace, 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 #container>\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-24x24'\" [size]=\"'auto'\"\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)\" role=\"button\" [attr.aria-label]=\"adorner.tooltip\"><svg [iconName]=\"'icon-add_16x16'\" [size]=\"'auto'\"\n [attr.title]=\"adorner.tooltip\" 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)\" role=\"button\" [attr.aria-label]=\"adorner.tooltip\"><svg\n [iconName]=\"'icon-remove_16x16'\" [size]=\"'auto'\" [attr.title]=\"adorner.tooltip\" 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\n <div *ngIf=\"adorner.canShowPanel()\" class=\"svc-item-value-controls svc-choice-elements-button-container\">\n <span\n role=\"button\"\n class=\"svc-item-value-controls__button svc-item-value-controls__add svc-choice-elements-button\"\n (click)=\"adorner.togglePanel()\"\n [key2click]\n >\n <svg\n [iconName]=\"adorner.showPanel ? 'icon-collapsepanel-16x16' : 'icon-expandpanel-16x16'\" \n [size]=\"'auto'\" \n sv-ng-svg-icon>\n </svg>\n </span>\n </div>\n </div>\n <ng-template *ngIf=\"adorner.showPanel\"\n [component]=\"{ name: getPanelComponentName(item.panel), data: getPanelComponentData(item.panel) }\"></ng-template>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
2236
+ ItemValueDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ItemValueDesignerComponent, selector: "svc-item-value", inputs: { componentName: "componentName", componentData: "componentData" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: i0.ElementRef }], usesInheritance: true, ngImport: i0__namespace, 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 #container>\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-24x24'\" [size]=\"'auto'\"\n [attr.title]=\"adorner.dragTooltip\" sv-ng-svg-icon></svg>\n </span>\n <ng-container *ngIf=\"adorner.allowAdd\">\n <ng-template [component]=\"{name: 'sv-action-bar-item', data: { model: adorner.addAction }}\"></ng-template>\n </ng-container>\n <ng-container *ngIf=\"adorner.allowRemove\">\n <ng-template [component]=\"{name: 'sv-action-bar-item', data: { model: adorner.removeAction }}\"></ng-template>\n </ng-container>\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\n <div *ngIf=\"adorner.canShowPanel()\" class=\"svc-item-value-controls svc-choice-elements-button-container\">\n <ng-template [component]=\"{name: 'sv-action-bar-item', data: { model: adorner.expandPanelAction } }\"></ng-template>\n </div>\n </div>\n <ng-template *ngIf=\"adorner.renderedShowPanel\"\n [component]=\"{ name: getPanelComponentName(item.panel), data: getPanelComponentData(item.panel) }\"></ng-template>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
2275
2237
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ItemValueDesignerComponent, decorators: [{
2276
2238
  type: i0.Component,
2277
2239
  args: [{
@@ -2356,7 +2318,7 @@
2356
2318
  return ImageItemValueDesignerComponent;
2357
2319
  }(CreatorModelComponent));
2358
2320
  ImageItemValueDesignerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ImageItemValueDesignerComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
2359
- ImageItemValueDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ImageItemValueDesignerComponent, selector: "svc-image-item-value", inputs: { componentName: "componentName", componentData: "componentData" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: i0.ElementRef }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div (pointerdown)=\"adorner.onPointerDown($event)\" [class]=\"adorner.getRootCss()\"\n [attr.data-sv-drop-target-item-value]=\"adorner.isDraggable ? this.item.value : null\" #container\n (dragstart)=\"preventDragHandler($event)\" (dragenter)=\"adorner.onDragEnter($event)\"\n (dragover)=\"adorner.onDragOver($event)\" (dragleave)=\"adorner.onDragLeave($event)\" (drop)=\"adorner.onDrop($event)\">\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]=\"adorner.acceptedTypes\"\n class=\"svc-choose-file-input\" />\n\n <ng-container *ngIf=\"!adorner.isNew && !adorner.isUploading\">\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 *ngIf=\"adorner.isDraggable && adorner.canRenderControls\"\n class=\"svc-context-button svc-image-item-value-controls__drag-area-indicator\"\n (pointerdown)=\"adorner.onPointerDown($event)\" [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-drag-24x24'\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </span>\n <div *ngIf=\"adorner.canRenderControls\" class=\"svc-context-container svc-image-item-value-controls\">\n <ng-container *ngIf=\"adorner.allowRemove && !adorner.isUploading\">\n <span class=\"svc-context-button\" (click)=\"adorner.chooseFile(adorner)\" [key2click] [attr.title]=\"undefined\"\n [attr.aria-label]=\"undefined\">\n <svg role=\"button\" [iconName]=\"'icon-choosefile'\" [size]=\"'auto'\" [title]=\"adorner.selectFileTitle\"\n sv-ng-svg-icon></svg>\n </span>\n <span class=\"svc-context-button svc-context-button--danger\" (click)=\"adorner.remove(adorner)\" [key2click]\n [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg role=\"button\" [iconName]=\"'icon-delete'\" [size]=\"'auto'\" [title]=\"adorner.removeFileTitle\"\n sv-ng-svg-icon></svg>\n </span>\n </ng-container>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"adorner.isNew || adorner.isUploading\">\n <div class=\"svc-image-item-value__item\">\n <div class=\"sd-imagepicker__item sd-imagepicker__item--inline\">\n <label class=\"sd-imagepicker__label\">\n <div [style]=\"getNewItemStyle()\" class=\"sd-imagepicker__image\">\n <div class=\"svc-image-item-value__loading\" *ngIf=\"adorner.isUploading\">\n <sv-ng-loading-indicator></sv-ng-loading-indicator>\n </div>\n </div>\n </label>\n </div>\n </div>\n <div class=\"svc-image-item-value-controls\" *ngIf=\"adorner.allowAdd && !adorner.isUploading\">\n <span class=\"svc-image-item-value__placeholder\"\n *ngIf=\"adorner.showPlaceholder\">{{adorner.placeholderText}}</span>\n <span [class]=\"adorner.addButtonCss\" (click)=\"adorner.chooseNewFile(adorner)\" [key2click]=\"{}\">\n <svg [iconName]=\"'icon-add-lg'\" [size]=\"'auto'\" [title]=\"adorner.addFileTitle\"\n *ngIf=\"adorner.showChooseButtonAsIcon\" sv-ng-svg-icon></svg>\n <span *ngIf=\"!adorner.showChooseButtonAsIcon\">{{adorner.chooseImageText}}</span>\n </span>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1__namespace.LoadingIndicatorComponent, selector: "sv-ng-loading-indicator" }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
2321
+ ImageItemValueDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ImageItemValueDesignerComponent, selector: "svc-image-item-value", inputs: { componentName: "componentName", componentData: "componentData" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: i0.ElementRef }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div (pointerdown)=\"adorner.onPointerDown($event)\" [class]=\"adorner.getRootCss()\"\n [attr.data-sv-drop-target-item-value]=\"adorner.isDraggable ? this.item.value : null\" #container\n (dragstart)=\"preventDragHandler($event)\" (dragenter)=\"adorner.onDragEnter($event)\"\n (dragover)=\"adorner.onDragOver($event)\" (dragleave)=\"adorner.onDragLeave($event)\" (drop)=\"adorner.onDrop($event)\">\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]=\"adorner.acceptedTypes\"\n class=\"svc-choose-file-input\" />\n\n <ng-container *ngIf=\"!adorner.isNew && !adorner.isUploading\">\n <div *ngIf=\"!adorner.isNew\" class=\"svc-image-item-value__item\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n <sv-ng-action-bar [model]=\"adorner.topActionsContainer\" *ngIf=\"adorner.canRenderControls\"></sv-ng-action-bar>\n </ng-container>\n\n <ng-container *ngIf=\"adorner.isNew || adorner.isUploading\">\n <div class=\"svc-image-item-value__item\">\n <div class=\"sd-imagepicker__item sd-imagepicker__item--inline\">\n <label class=\"sd-imagepicker__label\">\n <div [style]=\"getNewItemStyle()\" class=\"sd-imagepicker__image\">\n <div class=\"svc-image-item-value__loading\" *ngIf=\"adorner.isUploading\">\n <sv-ng-loading-indicator></sv-ng-loading-indicator>\n </div>\n </div>\n </label>\n </div>\n </div>\n <div class=\"svc-image-item-value-controls\" *ngIf=\"adorner.allowAdd && !adorner.isUploading\">\n <span class=\"svc-image-item-value__placeholder\"\n *ngIf=\"adorner.showPlaceholder\">{{adorner.placeholderText}}</span>\n <sv-ng-action-bar [model]=\"adorner.actionsContainer\"></sv-ng-action-bar>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i1__namespace.LoadingIndicatorComponent, selector: "sv-ng-loading-indicator" }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
2360
2322
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ImageItemValueDesignerComponent, decorators: [{
2361
2323
  type: i0.Component,
2362
2324
  args: [{
@@ -2421,7 +2383,7 @@
2421
2383
  return QuestionDropdownAdornerDesignerComponent;
2422
2384
  }(i1.EmbeddedViewContentComponent));
2423
2385
  QuestionDropdownAdornerDesignerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionDropdownAdornerDesignerComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
2424
- QuestionDropdownAdornerDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionDropdownAdornerDesignerComponent, selector: "svc-dropdown-question-adorner", inputs: { adorner: "adorner", question: "question" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-question__dropdown-choices--wrapper\">\n <div>\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 </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: ActionButtonComponent, selector: "svc-action-button", inputs: ["classes", "click", "selected", "disabled", "text", "title", "iconName", "allowBubble"] }], directives: [{ type: i2__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2386
+ QuestionDropdownAdornerDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionDropdownAdornerDesignerComponent, selector: "svc-dropdown-question-adorner", inputs: { adorner: "adorner", question: "question" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-question__dropdown-choices--wrapper\">\n <div>\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 <ng-container *ngIf=\"adorner.needToCollapse\">\n <ng-template [component]=\"{ name: 'sv-action-bar-item', data: { model: adorner.collapseAction } }\"></ng-template>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i2__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2425
2387
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionDropdownAdornerDesignerComponent, decorators: [{
2426
2388
  type: i0.Component,
2427
2389
  args: [{
@@ -2490,7 +2452,7 @@
2490
2452
  return QuestionImageAdornerDesignerComponent;
2491
2453
  }(i1.EmbeddedViewContentComponent));
2492
2454
  QuestionImageAdornerDesignerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionImageAdornerDesignerComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
2493
- QuestionImageAdornerDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionImageAdornerDesignerComponent, selector: "svc-image-question-adorner", inputs: { adorner: "adorner", question: "question" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-image-question-controls\" *ngIf=\"!adorner.isUploading && !adorner.isEmptyElement\">\n <ng-container *ngIf=\"adorner.allowEdit\">\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" [accept]=\"adorner.acceptedTypes\"\n class=\"svc-choose-file-input\" />\n <span class=\"svc-context-button\" [key2click] [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-choosefile'\" [size]=\"'auto'\" (click)=\"adorner.chooseFile(adorner)\" sv-ng-svg-icon></svg>\n </span>\n </ng-container>\n </div>\n <div class=\"svc-image-question__loading-placeholder\" *ngIf=\"adorner.isUploading && !adorner.isEmptyElement\">\n <div class=\"svc-image-question__loading\">\n <sv-ng-loading-indicator></sv-ng-loading-indicator>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1__namespace.LoadingIndicatorComponent, selector: "sv-ng-loading-indicator" }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
2455
+ QuestionImageAdornerDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionImageAdornerDesignerComponent, selector: "svc-image-question-adorner", inputs: { adorner: "adorner", question: "question" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" [accept]=\"adorner.acceptedTypes\" class=\"svc-choose-file-input\" />\n <sv-ng-action-bar *ngIf=\"!adorner.isUploading && !adorner.isEmptyElement\" [model]=\"adorner.imageActionsContainer\"></sv-ng-action-bar>\n <div class=\"svc-image-question__loading-placeholder\" *ngIf=\"adorner.isUploading && !adorner.isEmptyElement\">\n <div class=\"svc-image-question__loading\">\n <sv-ng-loading-indicator></sv-ng-loading-indicator>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i1__namespace.LoadingIndicatorComponent, selector: "sv-ng-loading-indicator" }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2494
2456
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionImageAdornerDesignerComponent, decorators: [{
2495
2457
  type: i0.Component,
2496
2458
  args: [{
@@ -2510,10 +2472,15 @@
2510
2472
  function PanelDesignerComponent() {
2511
2473
  return _super !== null && _super.apply(this, arguments) || this;
2512
2474
  }
2475
+ PanelDesignerComponent.prototype.createModel = function () {
2476
+ if (this.componentData) {
2477
+ this.adorner = new surveyCreatorCore.PanelAdornerViewModel(this.creator, this.model, null);
2478
+ }
2479
+ };
2513
2480
  return PanelDesignerComponent;
2514
2481
  }(QuestionDesignerComponent));
2515
2482
  PanelDesignerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: PanelDesignerComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
2516
- PanelDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PanelDesignerComponent, selector: "svc-panel", usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\" (dblclick)=\"adorner.dblclick($event)\"\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 <div *ngIf=\"adorner.showHiddenTitle\" [class]=\"adorner.cssCollapsedHiddenHeader\">\n <sv-ng-element-title *ngIf=\"!!model.hasTitle\" [element]=\"model\" [renderActions]=\"false\"></sv-ng-element-title>\n <div *ngIf=\"!model.hasTitle\" [class]=\"adorner.cssCollapsedHiddenTitle\">\n <span class=\"svc-fake-title\">{{model.name}}</span>\n </div>\n </div>\n <div [class]=\"adorner.css()\" [key2click]=\"{ disableTabStop: true }\"\n (click)=\"adorner.element.isInteractiveDesignElement ? adorner.select(adorner, $event) : null\">\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--left\"></div>\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--right\"></div>\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--top\"></div>\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--bottom\"></div>\n <div *ngIf=\"adorner.allowDragging && adorner.element.isInteractiveDesignElement\" class=\"svc-question__drag-area\"\n (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"'auto'\"\n sv-ng-svg-icon></svg>\n <div class=\"svc-question__top-actions\">\n <sv-action-bar [model]=\"adorner.topActionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n <ng-container *ngIf=\"adorner.needToRenderContent\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame-wrapper\">\n <div 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)\">\n <svg class=\"svc-panel__add-new-question-icon\" [iconName]=\"('icon-add_24x24')\" [size]=\"'auto'\"\n sv-ng-svg-icon></svg>\n <span class=\"svc-add-new-item-button__text\">\n {{ adorner.addNewQuestionText }}\n </span>\n </div>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent && adorner.element.isInteractiveDesignElement\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div *ngIf=\"!adorner.isEmptyElement && adorner.showAddQuestionButton\"\n class=\"svc-panel__add-new-question-container\">\n <div class=\"svc-panel__question-type-selector-popup\"> <sv-ng-popup\n [popupModel]=\"adorner.questionTypeSelectorModel.popupModel\"></sv-ng-popup>\n </div>\n\n <div class=\"svc-panel__add-new-question-wrapper\">\n <ng-template\n [component]=\"{ name: 'svc-add-new-question-btn', data: { model: { data: adorner }, buttonClass: 'svc-action-button', renderPopup: false } }\">\n </ng-template>\n </div>\n </div>\n\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content-actions\"\n (focusin)=\"adorner.select(adorner, $event)\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.ElementTitleComponent, selector: "sv-ng-element-title", inputs: ["element", "renderActions"] }, { type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i1__namespace.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
2483
+ PanelDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PanelDesignerComponent, selector: "svc-panel", usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\" (dblclick)=\"adorner.dblclick($event)\"\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 <div *ngIf=\"adorner.showHiddenTitle\" [class]=\"adorner.cssCollapsedHiddenHeader\">\n <sv-ng-element-title *ngIf=\"!!model.hasTitle\" [element]=\"model\" [renderActions]=\"false\"></sv-ng-element-title>\n <div *ngIf=\"!model.hasTitle\" [class]=\"adorner.cssCollapsedHiddenTitle\">\n <span class=\"svc-fake-title\">{{model.name}}</span>\n </div>\n </div>\n <div [class]=\"adorner.css()\" [key2click]=\"{ disableTabStop: true }\"\n (click)=\"adorner.element.isInteractiveDesignElement ? adorner.select(adorner, $event) : null\">\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--left\"></div>\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--right\"></div>\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--top\"></div>\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--bottom\"></div>\n <div *ngIf=\"adorner.allowDragging && adorner.element.isInteractiveDesignElement\" class=\"svc-question__drag-area\"\n (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"'auto'\"\n sv-ng-svg-icon></svg>\n <div class=\"svc-question__top-actions\">\n <sv-action-bar [model]=\"adorner.topActionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n <ng-container *ngIf=\"adorner.needToRenderContent\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement\" class=\"svc-panel__placeholder_frame-wrapper\">\n <div class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n <sv-action-bar *ngIf=\"adorner.showAddQuestionButton\" [model]=\"adorner.addQuestionActionsContainer\"></sv-action-bar>\n </div>\n </div>\n\n <ng-template *ngIf=\"adornerComponent && adorner.element.isInteractiveDesignElement\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n <sv-action-bar *ngIf=\"!adorner.isEmptyElement &&adorner.showAddQuestionButton\" [model]=\"adorner.addQuestionActionsContainer\"></sv-action-bar>\n <div *ngIf=\"adorner.element.isInteractiveDesignElement\" class=\"svc-question__content-actions\"\n (focusin)=\"adorner.select(adorner, $event)\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </ng-container>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.ElementTitleComponent, selector: "sv-ng-element-title", inputs: ["element", "renderActions"] }, { type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
2517
2484
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: PanelDesignerComponent, decorators: [{
2518
2485
  type: i0.Component,
2519
2486
  args: [{
@@ -2568,7 +2535,7 @@
2568
2535
  return ToolboxToolComponent;
2569
2536
  }(CreatorModelComponent));
2570
2537
  ToolboxToolComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ToolboxToolComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
2571
- ToolboxToolComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ToolboxToolComponent, selector: "svc-toolbox-tool", inputs: { creator: "creator", item: "item", parentModel: "parentModel", isCompact: "isCompact" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div [class]=\"itemCssClasses\" #container>\n <div class=\"svc-toolbox__category-separator\" *ngIf=\"item.needSeparator && !creator.toolbox.showCategoryTitles\">\n </div>\n <div class=\"svc-toolbox__tool-content sv-action__content\" (pointerdown)=\"model.onPointerDown($event)\">\n <ng-template [component]=\"{ name: model.itemComponent, default: 'svc-toolbox-item', \n data: { model: item, viewModel: model, creator: creator, isCompact: isCompact } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
2538
+ ToolboxToolComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ToolboxToolComponent, selector: "svc-toolbox-tool", inputs: { creator: "creator", item: "item", parentModel: "parentModel", isCompact: "isCompact" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div [class]=\"itemCssClasses\" #container>\n <div class=\"svc-toolbox__category-separator\" *ngIf=\"item.needSeparator && !creator.toolbox.showCategoryTitles\">\n </div>\n <div class=\"svc-toolbox__tool-content\" (pointerdown)=\"model.onPointerDown($event)\">\n <ng-template [component]=\"{ name: model.itemComponent, default: 'svc-toolbox-item', \n data: { model: item, viewModel: model, creator: creator, isCompact: isCompact } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
2572
2539
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ToolboxToolComponent, decorators: [{
2573
2540
  type: i0.Component,
2574
2541
  args: [{
@@ -3066,7 +3033,7 @@
3066
3033
  return MatrixCellComponent;
3067
3034
  }(CreatorModelComponent));
3068
3035
  MatrixCellComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: MatrixCellComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3069
- MatrixCellComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MatrixCellComponent, selector: "svc-matrix-cell", inputs: { componentName: "componentName", componentData: "componentData", contentTempl: "contentTempl" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div tabindex=\"-1\" class=\"svc-matrix-cell\" (click)=\"selectContext($event)\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\"\n (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=\"isSupportCellEditor\" class=\"svc-matrix-cell__question-controls\">\n <span class=\"svc-matrix-cell__question-controls-button svc-context-button\"\n (click)=\"adorner.editQuestion(adorner, $event)\" [key2click]>\n <svg [iconName]=\"'icon-edit'\" [size]=\"'auto'\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </span>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
3036
+ MatrixCellComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MatrixCellComponent, selector: "svc-matrix-cell", inputs: { componentName: "componentName", componentData: "componentData", contentTempl: "contentTempl" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div tabindex=\"-1\" class=\"svc-matrix-cell\" (click)=\"selectContext($event)\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\"\n (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=\"isSupportCellEditor\" class=\"svc-matrix-cell__question-controls\">\n <ng-template [component]=\"{name: 'sv-action-bar-item', data: { model: adorner.editAction } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i2__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
3070
3037
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: MatrixCellComponent, decorators: [{
3071
3038
  type: i0.Component,
3072
3039
  args: [{
@@ -3332,7 +3299,7 @@
3332
3299
  return QuestionRatingAdornerDesignerComponent;
3333
3300
  }(CreatorModelComponent));
3334
3301
  QuestionRatingAdornerDesignerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionRatingAdornerDesignerComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3335
- QuestionRatingAdornerDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionRatingAdornerDesignerComponent, selector: "svc-rating-question-content", inputs: { componentName: "componentName", componentData: "componentData", contentTempl: "contentTempl" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-rating-question-content\">\n <div [class]=\"adorner.controlsClassNames\">\n <span *ngIf=\"adorner.allowRemove\" [class]=\"adorner.removeClassNames\" [key2click] \n (click)=\"adorner.removeItem(adorner)\" role=\"button\" [attr.aria-label]=\"adorner.removeTooltip\">\n <svg [iconName]=\"'icon-remove_16x16'\" [size]=\"'auto'\" [attr.title]=\"adorner.removeTooltip\" sv-ng-svg-icon></svg>\n </span>\n <span *ngIf=\"adorner.allowAdd\" [class]=\"adorner.addClassNames\" [key2click]\n (click)=\"adorner.addItem(adorner)\" role=\"button\" [attr.aria-label]=\"adorner.addTooltip\">\n <svg [iconName]=\"'icon-add_16x16'\" [size]=\"'auto'\" [attr.title]=\"adorner.addTooltip\" sv-ng-svg-icon></svg>\n </span>\n </div>\n <ng-container *ngTemplateOutlet=\"contentTempl\"></ng-container>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i2__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
3302
+ QuestionRatingAdornerDesignerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionRatingAdornerDesignerComponent, selector: "svc-rating-question-content", inputs: { componentName: "componentName", componentData: "componentData", contentTempl: "contentTempl" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-rating-question-content\">\n <sv-action-bar [model]=\"adorner.rateActionsContainer\"></sv-action-bar>\n <ng-container *ngTemplateOutlet=\"contentTempl\"></ng-container>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
3336
3303
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionRatingAdornerDesignerComponent, decorators: [{
3337
3304
  type: i0.Component,
3338
3305
  args: [{
@@ -3383,7 +3350,7 @@
3383
3350
  return CreatorLogoImageComponent;
3384
3351
  }(CreatorModelComponent));
3385
3352
  CreatorLogoImageComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: CreatorLogoImageComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3386
- CreatorLogoImageComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CreatorLogoImageComponent, selector: "svc-logo-image", inputs: { data: "data" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: i0.ElementRef }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-logo-image\" #container>\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" [accept]=\"model.acceptedTypes\" class=\"svc-choose-file-input\" />\n <ng-container *ngIf=\"!survey.locLogo.renderedHtml\">\n <ng-container *ngIf=\"model.allowEdit && !model.isUploading\">\n <div class=\"svc-logo-image-placeholder\" (click)=\"model.chooseFile(model)\" [key2click]>\n <svg>\n <use xlink:href=\"#icon-image-48x48\"></use>\n </svg>\n </div>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"survey.locLogo.renderedHtml && !model.isUploading\">\n <div [class]=\"model.containerCss\">\n <div class=\"svc-context-container svc-logo-image-controls\">\n <span class=\"svc-context-button\" (click)=\"model.chooseFile(model)\" [key2click] [attr.title]=\"undefined\"\n [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-choosefile'\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </span>\n <span class=\"svc-context-button svc-context-button--danger\" (click)=\"model.remove(model)\" [key2click]\n [attr.title]=\"undefined\" [attr.aria-label]=\"undefined\">\n <svg [iconName]=\"'icon-clear'\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </span>\n </div>\n <sv-logo-image [data]=\"survey\"></sv-logo-image>\n </div>\n </ng-container>\n <div class=\"svc-logo-image__loading\" *ngIf=\"model.isUploading\">\n <sv-ng-loading-indicator></sv-ng-loading-indicator>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1__namespace.LogoImageComponent, selector: "sv-logo-image", inputs: ["data"] }, { type: i1__namespace.LoadingIndicatorComponent, selector: "sv-ng-loading-indicator" }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
3353
+ CreatorLogoImageComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CreatorLogoImageComponent, selector: "svc-logo-image", inputs: { data: "data" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: i0.ElementRef }], usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div class=\"svc-logo-image\" #container>\n <input type=\"file\" aria-hidden=\"true\" tabindex=\"-1\" [accept]=\"model.acceptedTypes\" class=\"svc-choose-file-input\" />\n <ng-container *ngIf=\"!survey.locLogo.renderedHtml\">\n <ng-container *ngIf=\"model.allowEdit && !model.isUploading\">\n <div class=\"svc-logo-image-placeholder\" (click)=\"model.chooseFile(model)\" [key2click]>\n <svg>\n <use xlink:href=\"#icon-image-48x48\"></use>\n </svg>\n </div>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"survey.locLogo.renderedHtml && !model.isUploading\">\n <div [class]=\"model.containerCss\">\n <sv-ng-action-bar [model]=\"model.actionsContainer\"></sv-ng-action-bar>\n <sv-logo-image [data]=\"survey\"></sv-logo-image>\n </div>\n </ng-container>\n <div class=\"svc-logo-image__loading\" *ngIf=\"model.isUploading\">\n <sv-ng-loading-indicator></sv-ng-loading-indicator>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i1__namespace.LogoImageComponent, selector: "sv-logo-image", inputs: ["data"] }, { type: i1__namespace.LoadingIndicatorComponent, selector: "sv-ng-loading-indicator" }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
3387
3354
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: CreatorLogoImageComponent, decorators: [{
3388
3355
  type: i0.Component,
3389
3356
  args: [{
@@ -3407,7 +3374,7 @@
3407
3374
  return QuestionSpinEditorComponent;
3408
3375
  }(i1.QuestionAngular));
3409
3376
  QuestionSpinEditorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionSpinEditorComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3410
- QuestionSpinEditorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionSpinEditorComponent, selector: "ng-component", usesInheritance: true, ngImport: i0__namespace, template: "<div [class]=\"model.cssClasses.root\" (keydown)=\"model.onKeyDown($event)\">\n <input autocomplete=\"off\" role=\"spinbutton\" [disabled]=\"model.isInputReadOnly\" [attr.id]=\"model.inputId\"\n [attr.aria-required]=\"model.a11y_input_ariaRequired\" [attr.aria-label]=\"model.a11y_input_ariaLabel\"\n [attr.aria-labelledby]=\"model.a11y_input_ariaLabelledBy\" [attr.aria-describedby]=\"model.a11y_input_ariaDescribedBy\"\n [attr.aria-invalid]=\"model.a11y_input_ariaInvalid\" [attr.aria-errormessage]=\"model.a11y_input_ariaErrormessage\"\n (change)=\"model.onChange($event)\" (keydown)=\"model.onInputKeyDown($event)\" (keyup)=\"model.onKeyUp($event)\"\n (blur)=\"model.onBlur($event)\" (focus)=\"model.onFocus($event)\" (beforeinput)=\"model.onBeforeInput($event)\"\n [value]=\"model.renderedValue\" [class]=\"model.cssClasses.control\" />\n <span [class]=\"model.cssClasses.buttonsContainer\">\n <button [disabled]=\"model.isInputReadOnly\" [attr.aria-hidden]=\"'true'\" [class]=\"model.cssClasses.arrowButton\"\n (click)=\"model.onDownButtonClick()\" (mousedown)=\"model.onDownButtonMouseDown()\"\n (mouseup)=\"model.onButtonMouseUp()\" (mouseleave)=\"model.onButtonMouseLeave()\" (blur)=\"model.onBlur($event)\"\n (focus)=\"model.onFocus($event)\" tabindex=\"-1\">\n <svg [iconName]=\"model.cssClasses.decreaseButtonIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <button [disabled]=\"model.isInputReadOnly\" [attr.aria-hidden]=\"'true'\" [class]=\"model.cssClasses.arrowButton\"\n (click)=\"model.onUpButtonClick()\" (mousedown)=\"model.onUpButtonMouseDown()\" (mouseup)=\"model.onButtonMouseUp()\"\n (mouseleave)=\"model.onButtonMouseLeave()\" (blur)=\"model.onBlur($event)\" (focus)=\"model.onFocus($event)\"\n tabindex=\"-1\">\n <svg [iconName]=\"model.cssClasses.increaseButtonIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n </span>\n</div>", components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }] });
3377
+ QuestionSpinEditorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionSpinEditorComponent, selector: "ng-component", usesInheritance: true, ngImport: i0__namespace, template: "<div [class]=\"model.cssClasses.root\" (keydown)=\"model.onKeyDown($event)\">\n <input autocomplete=\"off\" role=\"spinbutton\" [disabled]=\"model.isInputReadOnly\" [attr.id]=\"model.inputId\"\n [attr.aria-required]=\"model.a11y_input_ariaRequired\" [attr.aria-label]=\"model.a11y_input_ariaLabel\"\n [attr.aria-labelledby]=\"model.a11y_input_ariaLabelledBy\" [attr.aria-describedby]=\"model.a11y_input_ariaDescribedBy\"\n [attr.aria-invalid]=\"model.a11y_input_ariaInvalid\" [attr.aria-errormessage]=\"model.a11y_input_ariaErrormessage\"\n (change)=\"model.onChange($event)\" (keydown)=\"model.onInputKeyDown($event)\" (keyup)=\"model.onKeyUp($event)\"\n (blur)=\"model.onBlur($event)\" (focus)=\"model.onFocus($event)\" (beforeinput)=\"model.onBeforeInput($event)\"\n [value]=\"model.renderedValue\" [class]=\"model.cssClasses.control\" />\n <sv-ng-action-bar [model]=\"model.inputActionsContainer\"></sv-ng-action-bar>\n</div>", components: [{ type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }] });
3411
3378
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionSpinEditorComponent, decorators: [{
3412
3379
  type: i0.Component,
3413
3380
  args: [{
@@ -3416,6 +3383,44 @@
3416
3383
  }] });
3417
3384
  i1.AngularComponentFactory.Instance.registerComponent("spinedit-question", QuestionSpinEditorComponent);
3418
3385
 
3386
+ var SpinEditorButtonComponent = /** @class */ (function (_super) {
3387
+ __extends(SpinEditorButtonComponent, _super);
3388
+ function SpinEditorButtonComponent() {
3389
+ return _super !== null && _super.apply(this, arguments) || this;
3390
+ }
3391
+ Object.defineProperty(SpinEditorButtonComponent.prototype, "modelAction", {
3392
+ get: function () {
3393
+ return this.model;
3394
+ },
3395
+ enumerable: false,
3396
+ configurable: true
3397
+ });
3398
+ Object.defineProperty(SpinEditorButtonComponent.prototype, "question", {
3399
+ get: function () {
3400
+ return this.model.data.question;
3401
+ },
3402
+ enumerable: false,
3403
+ configurable: true
3404
+ });
3405
+ SpinEditorButtonComponent.prototype.getModel = function () {
3406
+ return this.modelAction;
3407
+ };
3408
+ return SpinEditorButtonComponent;
3409
+ }(i1.BaseAngular));
3410
+ SpinEditorButtonComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SpinEditorButtonComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3411
+ SpinEditorButtonComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SpinEditorButtonComponent, selector: "sv-ng-spin-edit-button", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <button [disabled]=\"modelAction.disabled\" [attr.aria-hidden]=\"'true'\" [class]=\"modelAction.getActionBarItemCss()\"\n (click)=\"question.onDownButtonClick()\" (mousedown)=\"model.data.onMouseDown()\"\n (mouseup)=\"question.onButtonMouseUp()\" (mouseleave)=\"question.onButtonMouseLeave()\" (blur)=\"question.onBlur($event)\"\n (focus)=\"question.onFocus($event)\" tabindex=\"-1\">\n <svg [class]=\"modelAction.cssClasses.itemIcon\" [iconName]=\"modelAction.iconName\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n</ng-template>\n", styles: ["{ :host { display: none; } }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }] });
3412
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SpinEditorButtonComponent, decorators: [{
3413
+ type: i0.Component,
3414
+ args: [{
3415
+ selector: "sv-ng-spin-edit-button",
3416
+ templateUrl: "./spin-editor-button.component.html",
3417
+ styles: ["{ :host { display: none; } }"]
3418
+ }]
3419
+ }], propDecorators: { model: [{
3420
+ type: i0.Input
3421
+ }] } });
3422
+ i1.AngularComponentFactory.Instance.registerComponent("sv-spinedit-button", SpinEditorButtonComponent);
3423
+
3419
3424
  var ColorItemComponent = /** @class */ (function (_super) {
3420
3425
  __extends(ColorItemComponent, _super);
3421
3426
  function ColorItemComponent() {
@@ -3451,7 +3456,7 @@
3451
3456
  return QuestionColorComponent;
3452
3457
  }(i1.QuestionAngular));
3453
3458
  QuestionColorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionColorComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3454
- QuestionColorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionColorComponent, selector: "svc-color", usesInheritance: true, ngImport: i0__namespace, template: "<div [class]=\"model.cssClasses.root\" (keydown)=\"model.onKeyDown($event)\">\n <label [class]=\"model.getSwatchCss()\" [style]=\"model.getSwatchStyle()\">\n <svg [iconName]=\"model.cssClasses.swatchIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <input type=\"color\" [disabled]=\"model.isInputReadOnly\" [class]=\"model.cssClasses.colorInput\"\n [value]=\"model.renderedColorValue\" (change)=\"model.onColorInputChange($event)\" tabindex=\"-1\"\n [attr.aria-required]=\"model.a11y_input_ariaRequired\" [attr.aria-labelledby]=\"model.a11y_input_ariaLabelledBy\"\n [attr.aria-label]=\"model.a11y_input_ariaLabel\" [attr.aria-invalid]=\"model.a11y_input_ariaInvalid\"\n [attr.aria-describedby]=\"model.a11y_input_ariaDescribedBy\" />\n </label>\n <input autocomplete=\"off\" [disabled]=\"model.isInputReadOnly\" [attr.id]=\"model.inputId\"\n [attr.aria-required]=\"model.a11y_input_ariaRequired\" [attr.aria-labelledby]=\"model.a11y_input_ariaLabelledBy\"\n [attr.aria-label]=\"model.a11y_input_ariaLabel\" [attr.aria-invalid]=\"model.a11y_input_ariaInvalid\"\n [attr.aria-describedby]=\"model.a11y_input_ariaDescribedBy\" (change)=\"model.onChange($event)\"\n (keyup)=\"model.onKeyUp($event)\" (blur)=\"model.onBlur($event)\" (beforeinput)=\"model.onBeforeInput($event)\"\n [value]=\"model.renderedValue\" [class]=\"model.cssClasses.control\" />\n <ng-container *ngIf=\"model.showDropdownAction\">\n <div aria-hidden=\"true\" [class]=\"model.cssClasses.choicesButtonWrapper\">\n <sv-action-bar-item [model]=\"model.dropdownAction\"></sv-action-bar-item>\n </div>\n <sv-ng-popup [popupModel]=\"model.dropdownAction.popupModel\"></sv-ng-popup>\n </ng-container>\n</div>", components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1__namespace.ActionBarItemComponent, selector: "sv-action-bar-item", inputs: ["model"] }, { type: i1__namespace.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3459
+ QuestionColorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionColorComponent, selector: "svc-color", usesInheritance: true, ngImport: i0__namespace, template: "<div [class]=\"model.cssClasses.root\" (keydown)=\"model.onKeyDown($event)\" #contentElement>\n <label [class]=\"model.getSwatchCss()\" [style]=\"model.getSwatchStyle()\">\n <svg [iconName]=\"model.cssClasses.swatchIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <input type=\"color\" [disabled]=\"model.isInputReadOnly\" [class]=\"model.cssClasses.colorInput\"\n [value]=\"model.renderedColorValue\" (change)=\"model.onColorInputChange($event)\" tabindex=\"-1\"\n [attr.aria-required]=\"model.a11y_input_ariaRequired\" [attr.aria-labelledby]=\"model.a11y_input_ariaLabelledBy\"\n [attr.aria-label]=\"model.a11y_input_ariaLabel\" [attr.aria-invalid]=\"model.a11y_input_ariaInvalid\"\n [attr.aria-describedby]=\"model.a11y_input_ariaDescribedBy\" />\n </label>\n <input autocomplete=\"off\" [disabled]=\"model.isInputReadOnly\" [attr.id]=\"model.inputId\"\n [attr.aria-required]=\"model.a11y_input_ariaRequired\" [attr.aria-labelledby]=\"model.a11y_input_ariaLabelledBy\"\n [attr.aria-label]=\"model.a11y_input_ariaLabel\" [attr.aria-invalid]=\"model.a11y_input_ariaInvalid\"\n [attr.aria-describedby]=\"model.a11y_input_ariaDescribedBy\" (change)=\"model.onChange($event)\"\n (keyup)=\"model.onKeyUp($event)\" (blur)=\"model.onBlur($event)\" (beforeinput)=\"model.onBeforeInput($event)\"\n [value]=\"model.renderedValue\" [class]=\"model.cssClasses.control\" />\n <sv-ng-action-bar *ngIf=\"model.hasVisibleInputActions\" [model]=\"model.inputActionsContainer\"></sv-ng-action-bar>\n</div>", components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3455
3460
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionColorComponent, decorators: [{
3456
3461
  type: i0.Component,
3457
3462
  args: [{
@@ -3469,7 +3474,7 @@
3469
3474
  return QuestionFileEditorComponent;
3470
3475
  }(i1.QuestionAngular));
3471
3476
  QuestionFileEditorComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionFileEditorComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3472
- QuestionFileEditorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionFileEditorComponent, selector: "svc-file-editor", usesInheritance: true, ngImport: i0__namespace, template: "<div [class]=\"model.cssClasses.root\" (dragenter)=\"model.onDragEnter($event)\" (dragover)=\"model.onDragOver($event)\"\n (drop)=\"model.onDrop($event)\" (dragleave)=\"model.onDragLeave($event)\" (keydown)=\"model.onKeyDown($event)\"\n #contentElement>\n <input type=\"text\" [disabled]=\"model.isTextInputReadOnly\" [class]=\"model.cssClasses.control\"\n [value]=\"model.renderedValue ||''\" (change)=\"model.onInputChange($event)\" (blur)=\"model.onInputBlur($event)\"\n [attr.placeholder]=\"model.renderedPlaceholder\" />\n <input type=\"file\" [disabled]=\"model.isInputReadOnly\" [class]=\"model.cssClasses.fileInput\" [attr.id]=\"model.inputId\"\n [attr.aria-required]=\"model.ariaRequired\" [attr.aria-label]=\"model.ariaLabel\"\n [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.multiple]=\"false\"\n [title]=\"model.inputTitle\" [accept]=\"model.acceptedTypes\" (change)=\"model.onFileInputChange($event)\" tabindex=\"-1\">\n <div [class]=\"model.cssClasses.buttonsContainer\">\n <button type=\"button\" [class]=\"model.cssClasses.clearButton\" [disabled]=\"model.getIsClearButtonDisabled()\"\n (click)=\"model.doClean()\" [key2click] [title]=\"model.clearButtonCaption\">\n <svg [iconName]=\"model.cssClasses.clearButtonIcon\" size=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <label [class]=\"model.getChooseButtonCss()\" [attr.for]=\"model.inputId\" [attr.aria-label]=\"model.chooseButtonCaption\"\n (click)=\"model.chooseFiles($event)\" [key2click]>\n <svg [iconName]=\"model.cssClasses.chooseButtonIcon\" size=\"'auto'\" [title]=\"model.chooseButtonCaption\"\n sv-ng-svg-icon></svg>\n </label>\n </div>\n</div>", components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
3477
+ QuestionFileEditorComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionFileEditorComponent, selector: "svc-file-editor", usesInheritance: true, ngImport: i0__namespace, template: "<div [class]=\"model.cssClasses.root\" (dragenter)=\"model.onDragEnter($event)\" (dragover)=\"model.onDragOver($event)\"\n (drop)=\"model.onDrop($event)\" (dragleave)=\"model.onDragLeave($event)\" (keydown)=\"model.onKeyDown($event)\"\n #contentElement>\n <input type=\"text\" [disabled]=\"model.isTextInputReadOnly\" [class]=\"model.cssClasses.control\"\n [value]=\"model.renderedValue ||''\" (change)=\"model.onInputChange($event)\" (blur)=\"model.onInputBlur($event)\"\n [attr.placeholder]=\"model.renderedPlaceholder\" />\n <sv-ng-action-bar [model]=\"model.inputActionsContainer\" *ngIf=\"model.hasVisibleInputActions\"></sv-ng-action-bar>\n</div>", components: [{ type: i1__namespace.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3473
3478
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: QuestionFileEditorComponent, decorators: [{
3474
3479
  type: i0.Component,
3475
3480
  args: [{
@@ -3479,6 +3484,37 @@
3479
3484
  }] });
3480
3485
  i1.AngularComponentFactory.Instance.registerComponent("fileedit-question", QuestionFileEditorComponent);
3481
3486
 
3487
+ var FileEditorButtonComponent = /** @class */ (function (_super) {
3488
+ __extends(FileEditorButtonComponent, _super);
3489
+ function FileEditorButtonComponent() {
3490
+ return _super !== null && _super.apply(this, arguments) || this;
3491
+ }
3492
+ Object.defineProperty(FileEditorButtonComponent.prototype, "question", {
3493
+ get: function () {
3494
+ return this.model.data.question;
3495
+ },
3496
+ enumerable: false,
3497
+ configurable: true
3498
+ });
3499
+ FileEditorButtonComponent.prototype.getModel = function () {
3500
+ return this.model;
3501
+ };
3502
+ return FileEditorButtonComponent;
3503
+ }(i1.BaseAngular));
3504
+ FileEditorButtonComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: FileEditorButtonComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3505
+ FileEditorButtonComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FileEditorButtonComponent, selector: "sv-ng-file-editor-button", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <div>\n <label [class]=\"model.getActionBarItemCss()\" [attr.for]=\"question.inputId\" [attr.aria-label]=\"question.chooseButtonCaption\"\n (click)=\"question.chooseFiles($event)\" [key2click]>\n <svg [iconName]=\"model.iconName\" size=\"'auto'\" [title]=\"model.title\" [class]=\"model.cssClasses.itemIcon\" sv-ng-svg-icon></svg>\n </label>\n <input type=\"file\" [disabled]=\"model.disabled\" [class]=\"question.cssClasses.fileInput\" [attr.id]=\"question.inputId\"\n [attr.aria-required]=\"question.ariaRequired\" [attr.aria-label]=\"question.ariaLabel\"\n [attr.aria-invalid]=\"question.ariaInvalid\" [attr.aria-describedby]=\"question.ariaDescribedBy\" [attr.multiple]=\"false\"\n [title]=\"question.inputTitle\" [accept]=\"question.acceptedTypes\" (change)=\"question.onFileInputChange($event)\" tabindex=\"-1\">\n </div>\n</ng-template>\n", styles: ["{ :host { display: none; } }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
3506
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: FileEditorButtonComponent, decorators: [{
3507
+ type: i0.Component,
3508
+ args: [{
3509
+ selector: "sv-ng-file-editor-button",
3510
+ templateUrl: "./file-editor-button.component.html",
3511
+ styles: ["{ :host { display: none; } }"]
3512
+ }]
3513
+ }], propDecorators: { model: [{
3514
+ type: i0.Input
3515
+ }] } });
3516
+ i1.AngularComponentFactory.Instance.registerComponent("sv-fileedit-button", FileEditorButtonComponent);
3517
+
3482
3518
  var BooleanSwitchComponent = /** @class */ (function (_super) {
3483
3519
  __extends(BooleanSwitchComponent, _super);
3484
3520
  function BooleanSwitchComponent() {
@@ -3487,7 +3523,7 @@
3487
3523
  return BooleanSwitchComponent;
3488
3524
  }(i1.QuestionAngular));
3489
3525
  BooleanSwitchComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: BooleanSwitchComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3490
- BooleanSwitchComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: BooleanSwitchComponent, selector: "sv-ng-boolean-switch", usesInheritance: true, ngImport: i0__namespace, template: "<div class=\"spg-boolean-switch\" role=\"checkbox\" [attr.aria-checked]=\"model.booleanValue || false\"\n [attr.aria-required]=\"model.a11y_input_ariaRequired\" [attr.aria-label]=\"model.a11y_input_ariaLabel\"\n [attr.aria-labelledby]=\"model.a11y_input_ariaLabelledBy\" [attr.aria-invalid]=\"model.a11y_input_ariaInvalid\"\n [attr.aria-errormessage]=\"model.a11y_input_ariaErrormessage\" (click)=\"model.value = !model.value\">\n <div class=\"spg-boolean-switch__button\" tabindex=\"0\" [key2click]=\"{ disableTabStop: true }\"\n [class]=\"model.value ? 'spg-boolean-switch__button--checked' : ''\">\n <div class=\"spg-boolean-switch__thumb\">\n <div class=\"spg-boolean-switch__thumb-circle spg-boolean-switch__thumb--left\"></div>\n </div>\n <div class=\"spg-boolean-switch__thumb\">\n <div class=\"spg-boolean-switch__thumb-circle spg-boolean-switch__thumb--right\"></div>\n </div>\n </div>\n <div class=\"spg-boolean-switch__caption\">\n <div class=\"spg-boolean-switch__title\" [id]=\"model.labelRenderedAriaID\">\n <span [model]=\"model.locTitle\" sv-ng-string></span>\n </div>\n </div>\n</div>", components: [{ type: i1__namespace.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
3526
+ BooleanSwitchComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: BooleanSwitchComponent, selector: "sv-ng-boolean-switch", usesInheritance: true, ngImport: i0__namespace, template: "<div class=\"spg-boolean-switch\" role=\"checkbox\" [attr.aria-checked]=\"model.booleanValue || false\"\n [attr.aria-required]=\"model.a11y_input_ariaRequired\" [attr.aria-label]=\"model.a11y_input_ariaLabel\"\n [attr.aria-labelledby]=\"model.a11y_input_ariaLabelledBy\" [attr.aria-invalid]=\"model.a11y_input_ariaInvalid\"\n [attr.aria-errormessage]=\"model.a11y_input_ariaErrormessage\" (click)=\"model.value = !model.value\">\n <div class=\"spg-boolean-switch__button\" tabindex=\"0\" [key2click]\n [class]=\"model.value ? 'spg-boolean-switch__button--checked' : ''\">\n <div class=\"spg-boolean-switch__thumb\">\n <div class=\"spg-boolean-switch__thumb-circle spg-boolean-switch__thumb--left\"></div>\n </div>\n <div class=\"spg-boolean-switch__thumb\">\n <div class=\"spg-boolean-switch__thumb-circle spg-boolean-switch__thumb--right\"></div>\n </div>\n </div>\n <div class=\"spg-boolean-switch__caption\">\n <div class=\"spg-boolean-switch__title\" [id]=\"model.labelRenderedAriaID\">\n <span [model]=\"model.locTitle\" sv-ng-string></span>\n </div>\n </div>\n</div>", components: [{ type: i1__namespace.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i1__namespace.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }] });
3491
3527
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: BooleanSwitchComponent, decorators: [{
3492
3528
  type: i0.Component,
3493
3529
  args: [{
@@ -3550,45 +3586,95 @@
3550
3586
  }] } });
3551
3587
  i1.AngularComponentFactory.Instance.registerComponent("svc-translate-from-action", TranslateFromAction);
3552
3588
 
3589
+ var ContainerTabComponent = /** @class */ (function (_super) {
3590
+ __extends(ContainerTabComponent, _super);
3591
+ function ContainerTabComponent() {
3592
+ return _super !== null && _super.apply(this, arguments) || this;
3593
+ }
3594
+ ContainerTabComponent.prototype.getModel = function () {
3595
+ return this.model;
3596
+ };
3597
+ return ContainerTabComponent;
3598
+ }(i1.BaseAngular));
3599
+ ContainerTabComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ContainerTabComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3600
+ ContainerTabComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ContainerTabComponent, selector: "svc-tab-container", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <svc-component-container [model]=\"model.containerModel\"></svc-component-container>\n</ng-template>\n\n", styles: [":host { display: none; }"], components: [{ type: ComponentContainerComponent, selector: "svc-component-container", inputs: ["model"] }] });
3601
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ContainerTabComponent, decorators: [{
3602
+ type: i0.Component,
3603
+ args: [{
3604
+ selector: "svc-tab-container",
3605
+ templateUrl: "./container-tab.component.html",
3606
+ styles: [":host { display: none; }"]
3607
+ }]
3608
+ }], propDecorators: { model: [{
3609
+ type: i0.Input
3610
+ }] } });
3611
+ i1.AngularComponentFactory.Instance.registerComponent("svc-tab-container", ContainerTabComponent);
3612
+
3613
+ var ImageItemDragActionComponent = /** @class */ (function (_super) {
3614
+ __extends(ImageItemDragActionComponent, _super);
3615
+ function ImageItemDragActionComponent() {
3616
+ return _super !== null && _super.apply(this, arguments) || this;
3617
+ }
3618
+ ImageItemDragActionComponent.prototype.getModel = function () {
3619
+ return this.model;
3620
+ };
3621
+ return ImageItemDragActionComponent;
3622
+ }(i1.BaseAngular));
3623
+ ImageItemDragActionComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ImageItemDragActionComponent, deps: null, target: i0__namespace.ɵɵFactoryTarget.Component });
3624
+ ImageItemDragActionComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ImageItemDragActionComponent, selector: "svc-image-item-drag-action", inputs: { model: "model" }, usesInheritance: true, ngImport: i0__namespace, template: "<ng-template #template>\n <span [class]=\"model.getActionBarItemCss()\"\n (pointerdown)=\"model.data.model.onPointerDown($event)\">\n <svg [iconName]=\"model.iconName\" [size]=\"'auto'\" [class]=\"model.cssClasses.itemIcon\" sv-ng-svg-icon></svg>\n </span>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1__namespace.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }] });
3625
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: ImageItemDragActionComponent, decorators: [{
3626
+ type: i0.Component,
3627
+ args: [{
3628
+ selector: "svc-image-item-drag-action",
3629
+ templateUrl: "./image-item-drag-action.component.html",
3630
+ styles: [":host { display: none; }"]
3631
+ }]
3632
+ }], propDecorators: { model: [{
3633
+ type: i0.Input
3634
+ }] } });
3635
+ i1.AngularComponentFactory.Instance.registerComponent("svc-image-item-drag-action", ImageItemDragActionComponent);
3636
+
3553
3637
  var SurveyCreatorModule = /** @class */ (function () {
3554
3638
  function SurveyCreatorModule() {
3555
3639
  }
3556
3640
  return SurveyCreatorModule;
3557
3641
  }());
3558
3642
  SurveyCreatorModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SurveyCreatorModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
3559
- SurveyCreatorModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SurveyCreatorModule, declarations: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarPageComponent, SidebarDefaultHeaderComponent, ObjectSelectorComponent, SidebarPropertyGridHeaderComponent, PropertyGridPlaceholderComponent, SidebarHeaderComponent, TabControlComponent, TabsComponent, TabButtonComponent, PropertyGridComponent, SearchComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, LogicAddButtonComponent, ActionButtonComponent, QuestionPgErrorComponent, SurfacePlaceholderComponent, SwitcherComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, TestAgainActionComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
3643
+ SurveyCreatorModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SurveyCreatorModule, declarations: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarPageComponent, SidebarDefaultHeaderComponent, ObjectSelectorComponent, SidebarPropertyGridHeaderComponent, PropertyGridPlaceholderComponent, SidebarHeaderComponent, TabControlComponent, TabsComponent, TabButtonComponent, PropertyGridComponent, SearchComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, ActionButtonComponent, QuestionPgErrorComponent, SurfacePlaceholderComponent, SwitcherComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
3560
3644
  AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxItemGroupComponent, ToolboxListComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
3561
3645
  QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
3562
3646
  ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, CreatorLogoImageComponent,
3563
- QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent, QuestionBannerComponent, JsonErrorItemComponent,
3564
- BooleanSwitchComponent, TranslateFromAction, AddQuestionTypeSelectorComponent, QuestionElementContentComponent, PageElementContentComponent, PageWrapperComponent, ComponentContainerComponent], imports: [i2.CommonModule, i3.FormsModule, i1.SurveyModule], exports: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarPageComponent, SidebarDefaultHeaderComponent, SidebarPropertyGridHeaderComponent, PropertyGridPlaceholderComponent, SidebarHeaderComponent, TabControlComponent, TabsComponent, TabButtonComponent, ObjectSelectorComponent, PropertyGridComponent, SearchComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, LogicAddButtonComponent, ActionButtonComponent, QuestionPgErrorComponent, SurfacePlaceholderComponent, SwitcherComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, TestAgainActionComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
3647
+ QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, SpinEditorButtonComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, FileEditorButtonComponent, AddQuestionButtonComponent, QuestionBannerComponent, JsonErrorItemComponent,
3648
+ BooleanSwitchComponent, TranslateFromAction, QuestionElementContentComponent, PageElementContentComponent, PageWrapperComponent, ComponentContainerComponent,
3649
+ IconItemComponent, SideBarLaunchCardComponent, ContainerTabComponent, ImageItemDragActionComponent], imports: [i2.CommonModule, i3.FormsModule, i1.SurveyModule], exports: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarPageComponent, SidebarDefaultHeaderComponent, SidebarPropertyGridHeaderComponent, PropertyGridPlaceholderComponent, SidebarHeaderComponent, TabControlComponent, TabsComponent, TabButtonComponent, ObjectSelectorComponent, PropertyGridComponent, SearchComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, ActionButtonComponent, QuestionPgErrorComponent, SurfacePlaceholderComponent, SwitcherComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
3565
3650
  AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxItemGroupComponent, ToolboxListComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
3566
3651
  QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
3567
3652
  ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, CreatorLogoImageComponent,
3568
- QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent, QuestionBannerComponent, JsonErrorItemComponent, BooleanSwitchComponent, TranslateFromAction,
3569
- AddQuestionTypeSelectorComponent, QuestionElementContentComponent, PageElementContentComponent, ComponentContainerComponent] });
3653
+ QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, SpinEditorButtonComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, FileEditorButtonComponent, AddQuestionButtonComponent, QuestionBannerComponent, JsonErrorItemComponent, BooleanSwitchComponent, TranslateFromAction, QuestionElementContentComponent, PageElementContentComponent, ComponentContainerComponent,
3654
+ IconItemComponent, SideBarLaunchCardComponent, ContainerTabComponent, ImageItemDragActionComponent] });
3570
3655
  SurveyCreatorModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SurveyCreatorModule, providers: [], imports: [[
3571
3656
  i2.CommonModule, i3.FormsModule, i1.SurveyModule
3572
3657
  ]] });
3573
3658
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SurveyCreatorModule, decorators: [{
3574
3659
  type: i0.NgModule,
3575
3660
  args: [{
3576
- declarations: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarPageComponent, SidebarDefaultHeaderComponent, ObjectSelectorComponent, SidebarPropertyGridHeaderComponent, PropertyGridPlaceholderComponent, SidebarHeaderComponent, TabControlComponent, TabsComponent, TabButtonComponent, PropertyGridComponent, SearchComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, LogicAddButtonComponent, ActionButtonComponent, QuestionPgErrorComponent, SurfacePlaceholderComponent, SwitcherComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, TestAgainActionComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
3661
+ declarations: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarPageComponent, SidebarDefaultHeaderComponent, ObjectSelectorComponent, SidebarPropertyGridHeaderComponent, PropertyGridPlaceholderComponent, SidebarHeaderComponent, TabControlComponent, TabsComponent, TabButtonComponent, PropertyGridComponent, SearchComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, ActionButtonComponent, QuestionPgErrorComponent, SurfacePlaceholderComponent, SwitcherComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
3577
3662
  AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxItemGroupComponent, ToolboxListComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
3578
3663
  QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
3579
3664
  ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, CreatorLogoImageComponent,
3580
- QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent, QuestionBannerComponent, JsonErrorItemComponent,
3581
- BooleanSwitchComponent, TranslateFromAction, AddQuestionTypeSelectorComponent, QuestionElementContentComponent, PageElementContentComponent, PageWrapperComponent, ComponentContainerComponent],
3665
+ QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, SpinEditorButtonComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, FileEditorButtonComponent, AddQuestionButtonComponent, QuestionBannerComponent, JsonErrorItemComponent,
3666
+ BooleanSwitchComponent, TranslateFromAction, QuestionElementContentComponent, PageElementContentComponent, PageWrapperComponent, ComponentContainerComponent,
3667
+ IconItemComponent, SideBarLaunchCardComponent, ContainerTabComponent, ImageItemDragActionComponent],
3582
3668
  imports: [
3583
3669
  i2.CommonModule, i3.FormsModule, i1.SurveyModule
3584
3670
  ],
3585
3671
  exports: [
3586
- CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarPageComponent, SidebarDefaultHeaderComponent, SidebarPropertyGridHeaderComponent, PropertyGridPlaceholderComponent, SidebarHeaderComponent, TabControlComponent, TabsComponent, TabButtonComponent, ObjectSelectorComponent, PropertyGridComponent, SearchComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, LogicAddButtonComponent, ActionButtonComponent, QuestionPgErrorComponent, SurfacePlaceholderComponent, SwitcherComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, TestAgainActionComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
3672
+ CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarPageComponent, SidebarDefaultHeaderComponent, SidebarPropertyGridHeaderComponent, PropertyGridPlaceholderComponent, SidebarHeaderComponent, TabControlComponent, TabsComponent, TabButtonComponent, ObjectSelectorComponent, PropertyGridComponent, SearchComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, ActionButtonComponent, QuestionPgErrorComponent, SurfacePlaceholderComponent, SwitcherComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
3587
3673
  AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxItemGroupComponent, ToolboxListComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
3588
3674
  QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
3589
3675
  ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, CreatorLogoImageComponent,
3590
- QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent, QuestionBannerComponent, JsonErrorItemComponent, BooleanSwitchComponent, TranslateFromAction,
3591
- AddQuestionTypeSelectorComponent, QuestionElementContentComponent, PageElementContentComponent, ComponentContainerComponent
3676
+ QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, SpinEditorButtonComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, FileEditorButtonComponent, AddQuestionButtonComponent, QuestionBannerComponent, JsonErrorItemComponent, BooleanSwitchComponent, TranslateFromAction, QuestionElementContentComponent, PageElementContentComponent, ComponentContainerComponent,
3677
+ IconItemComponent, SideBarLaunchCardComponent, ContainerTabComponent, ImageItemDragActionComponent
3592
3678
  ],
3593
3679
  providers: [],
3594
3680
  }]
@@ -3602,12 +3688,12 @@
3602
3688
  exports.ActionButtonComponent = ActionButtonComponent;
3603
3689
  exports.AdaptiveToolboxComponent = AdaptiveToolboxComponent;
3604
3690
  exports.AddQuestionButtonComponent = AddQuestionButtonComponent;
3605
- exports.AddQuestionTypeSelectorComponent = AddQuestionTypeSelectorComponent;
3606
3691
  exports.BooleanSwitchComponent = BooleanSwitchComponent;
3607
3692
  exports.CellQuestionComponent = CellQuestionComponent;
3608
3693
  exports.CellQuestionDropdownComponent = CellQuestionDropdownComponent;
3609
3694
  exports.ColorItemComponent = ColorItemComponent;
3610
3695
  exports.ComponentContainerComponent = ComponentContainerComponent;
3696
+ exports.ContainerTabComponent = ContainerTabComponent;
3611
3697
  exports.CreatorComponent = CreatorComponent;
3612
3698
  exports.CreatorLogoImageComponent = CreatorLogoImageComponent;
3613
3699
  exports.CreatorRowComponent = CreatorRowComponent;
@@ -3615,11 +3701,13 @@
3615
3701
  exports.DesignerSurveyComponent = DesignerSurveyComponent;
3616
3702
  exports.DesignerTabComponent = DesignerTabComponent;
3617
3703
  exports.EmbeddedSurveyQuestionComponent = EmbeddedSurveyQuestionComponent;
3704
+ exports.FileEditorButtonComponent = FileEditorButtonComponent;
3705
+ exports.IconItemComponent = IconItemComponent;
3706
+ exports.ImageItemDragActionComponent = ImageItemDragActionComponent;
3618
3707
  exports.ImageItemValueDesignerComponent = ImageItemValueDesignerComponent;
3619
3708
  exports.ItemValueDesignerComponent = ItemValueDesignerComponent;
3620
3709
  exports.JsonErrorItemComponent = JsonErrorItemComponent;
3621
3710
  exports.LinkValueQuestionComponent = LinkValueQuestionComponent;
3622
- exports.LogicAddButtonComponent = LogicAddButtonComponent;
3623
3711
  exports.LogicOperatorComponent = LogicOperatorComponent;
3624
3712
  exports.LogicTabComponent = LogicTabComponent;
3625
3713
  exports.MatrixCellComponent = MatrixCellComponent;
@@ -3647,12 +3735,14 @@
3647
3735
  exports.QuestionSpinEditorComponent = QuestionSpinEditorComponent;
3648
3736
  exports.QuestionWidgetDesignerComponent = QuestionWidgetDesignerComponent;
3649
3737
  exports.SearchComponent = SearchComponent;
3738
+ exports.SideBarLaunchCardComponent = SideBarLaunchCardComponent;
3650
3739
  exports.SidebarComponent = SidebarComponent;
3651
3740
  exports.SidebarDefaultHeaderComponent = SidebarDefaultHeaderComponent;
3652
3741
  exports.SidebarHeaderComponent = SidebarHeaderComponent;
3653
3742
  exports.SidebarPageComponent = SidebarPageComponent;
3654
3743
  exports.SidebarPropertyGridHeaderComponent = SidebarPropertyGridHeaderComponent;
3655
3744
  exports.SimulatorComponent = SimulatorComponent;
3745
+ exports.SpinEditorButtonComponent = SpinEditorButtonComponent;
3656
3746
  exports.StringEditorComponent = StringEditorComponent;
3657
3747
  exports.SurfacePlaceholderComponent = SurfacePlaceholderComponent;
3658
3748
  exports.SurveyCreatorModule = SurveyCreatorModule;
@@ -3665,7 +3755,6 @@
3665
3755
  exports.TabbedMenuItemWrapperComponent = TabbedMenuItemWrapperComponent;
3666
3756
  exports.TabbledMenuComponent = TabbledMenuComponent;
3667
3757
  exports.TabsComponent = TabsComponent;
3668
- exports.TestAgainActionComponent = TestAgainActionComponent;
3669
3758
  exports.TestTabComponent = TestTabComponent;
3670
3759
  exports.TextareaJsonEditorComponent = TextareaJsonEditorComponent;
3671
3760
  exports.ThemeTabComponent = ThemeTabComponent;